From b59db5580e079c6de0a1ff76b8ff59dd71e885db Mon Sep 17 00:00:00 2001
From: Adam Fekete <adam@fekete.co.uk>
Date: Thu, 10 Nov 2022 21:56:39 +0100
Subject: [PATCH] refactoring

---
 .gitlab-ci.yml                                |    34 +-
 atomicfeaturespackage/CHANGELOG => CHANGELOG  |     0
 .../CONTRIBUTING.md => CONTRIBUTING.md        |     0
 .../LICENSE.txt => LICENSE.txt                |     0
 MANIFEST.in                                   |    18 +-
 __pycache__/setup.cpython-36.pyc              |   Bin 1176 -> 0 bytes
 atomicfeaturespackage/MANIFEST.in             |    23 -
 atomicfeaturespackage/README.md               |   109 -
 .../__pycache__/__init__.cpython-36.pyc       |   Bin 176 -> 0 bytes
 .../atomic_properties_dft.cpython-36.pyc      |   Bin 9896 -> 0 bytes
 .../atomic_properties_lda2015.cpython-36.pyc  |   Bin 2824 -> 0 bytes
 .../atomic_properties_magpie.cpython-36.pyc   |   Bin 11421 -> 0 bytes
 .../atomic_properties_pymat.cpython-36.pyc    |   Bin 8411 -> 0 bytes
 .../__pycache__/periodictable.cpython-36.pyc  |   Bin 49396 -> 0 bytes
 atomicfeaturespackage/data/lda2015/.gitkeep   |     0
 atomicfeaturespackage/data/matminer/.gitkeep  |     0
 .../docs/_build/doctrees/CONTRIBUTING.doctree |   Bin 2889 -> 0 bytes
 .../docs/_build/doctrees/LICENSE.doctree      |   Bin 7046 -> 0 bytes
 .../docs/_build/doctrees/README.doctree       |   Bin 29903 -> 0 bytes
 ...icfeaturespackage.atomicproperties.doctree |   Bin 95302 -> 0 bytes
 .../doctrees/atomicfeaturespackage.doctree    |   Bin 3593 -> 0 bytes
 .../atomicfeaturespackage.metainfo.doctree    |   Bin 315259 -> 0 bytes
 .../docs/_build/doctrees/environment.pickle   |   Bin 76815 -> 0 bytes
 .../docs/_build/doctrees/index.doctree        |   Bin 5065 -> 0 bytes
 .../docs/_build/doctrees/modules.doctree      |   Bin 2710 -> 0 bytes
 .../docs/_build/html/.buildinfo               |     4 -
 .../docs/_build/html/CONTRIBUTING.html        |   104 -
 .../docs/_build/html/LICENSE.html             |   128 -
 .../docs/_build/html/README.html              |   188 -
 .../_build/html/_sources/CONTRIBUTING.md.txt  |     6 -
 .../docs/_build/html/_sources/LICENSE.md.txt  |    23 -
 .../docs/_build/html/_sources/README.md.txt   |   109 -
 ...icfeaturespackage.atomicproperties.rst.txt |    43 -
 .../atomicfeaturespackage.metainfo.rst.txt    |    10 -
 .../_sources/atomicfeaturespackage.rst.txt    |    12 -
 .../docs/_build/html/_sources/index.rst.txt   |    26 -
 .../docs/_build/html/_sources/modules.rst.txt |     7 -
 .../_build/html/_static/background_b01.png    |   Bin 78 -> 0 bytes
 .../docs/_build/html/_static/basic.css        |   768 --
 .../docs/_build/html/_static/bizstyle.css     |   499 -
 .../docs/_build/html/_static/bizstyle.js      |    41 -
 .../_build/html/_static/css3-mediaqueries.js  |     1 -
 .../html/_static/css3-mediaqueries_src.js     |  1104 --
 .../docs/_build/html/_static/doctools.js      |   315 -
 .../html/_static/documentation_options.js     |    11 -
 .../docs/_build/html/_static/file.png         |   Bin 286 -> 0 bytes
 .../docs/_build/html/_static/jquery-3.4.1.js  | 10598 ----------------
 .../docs/_build/html/_static/jquery.js        |     2 -
 .../docs/_build/html/_static/language_data.js |   297 -
 .../docs/_build/html/_static/minus.png        |   Bin 90 -> 0 bytes
 .../docs/_build/html/_static/plus.png         |   Bin 90 -> 0 bytes
 .../docs/_build/html/_static/pygments.css     |    69 -
 .../docs/_build/html/_static/searchtools.js   |   512 -
 .../_build/html/_static/underscore-1.3.1.js   |   999 --
 .../docs/_build/html/_static/underscore.js    |    31 -
 ...tomicfeaturespackage.atomicproperties.html |   430 -
 .../_build/html/atomicfeaturespackage.html    |   138 -
 .../html/atomicfeaturespackage.metainfo.html  |  1468 ---
 .../docs/_build/html/genindex.html            |   851 --
 .../docs/_build/html/index.html               |   129 -
 .../docs/_build/html/modules.html             |   113 -
 .../docs/_build/html/objects.inv              |   Bin 1983 -> 0 bytes
 .../docs/_build/html/py-modindex.html         |   132 -
 .../docs/_build/html/search.html              |    98 -
 .../docs/_build/html/searchindex.js           |     1 -
 .../docs/_build/latex/LICRcyr2utf8.xdy        |   101 -
 .../docs/_build/latex/LICRlatin2utf8.xdy      |   239 -
 .../docs/_build/latex/LatinRules.xdy          |   607 -
 .../docs/_build/latex/Makefile                |    68 -
 .../_build/latex/atomic-features-package.aux  |   332 -
 .../latex/atomic-features-package.fdb_latexmk |   169 -
 .../_build/latex/atomic-features-package.fls  |   297 -
 .../_build/latex/atomic-features-package.idx  |   259 -
 .../_build/latex/atomic-features-package.log  |  1891 ---
 .../_build/latex/atomic-features-package.out  |     9 -
 .../_build/latex/atomic-features-package.pdf  |   Bin 195343 -> 0 bytes
 .../_build/latex/atomic-features-package.tex  |  2494 ----
 .../_build/latex/atomic-features-package.toc  |    18 -
 .../_build/latex/footnotehyper-sphinx.sty     |   269 -
 .../docs/_build/latex/latexmkjarc             |    22 -
 .../docs/_build/latex/latexmkrc               |     9 -
 .../docs/_build/latex/make.bat                |    31 -
 .../docs/_build/latex/python.ist              |    16 -
 .../docs/_build/latex/sphinx.sty              |  1946 ---
 .../docs/_build/latex/sphinx.xdy              |   230 -
 .../docs/_build/latex/sphinxcyrillic.sty      |    55 -
 .../docs/_build/latex/sphinxhighlight.sty     |   105 -
 .../docs/_build/latex/sphinxhowto.cls         |   102 -
 .../docs/_build/latex/sphinxmanual.cls        |   128 -
 .../docs/_build/latex/sphinxmessages.sty      |    21 -
 .../docs/_build/latex/sphinxmulticell.sty     |   317 -
 .../__pycache__/__init__.cpython-36.pyc       |   Bin 191 -> 0 bytes
 .../__pycache__/metainfo.cpython-36.pyc       |   Bin 22456 -> 0 bytes
 atomicfeaturespackage/requirements.txt        |     8 -
 .../docs => docs}/CONTRIBUTING.md             |     0
 .../docs => docs}/LICENSE.md                  |     0
 {atomicfeaturespackage/docs => docs}/Makefile |     0
 .../docs => docs}/README.md                   |     0
 ...atomicfeaturespackage.atomicproperties.rst |     0
 .../atomicfeaturespackage.metainfo.rst        |     0
 .../docs => docs}/atomicfeaturespackage.rst   |     0
 {atomicfeaturespackage/docs => docs}/conf.py  |     0
 .../docs => docs}/index.rst                   |     0
 {atomicfeaturespackage/docs => docs}/make.bat |     0
 .../docs => docs}/modules.rst                 |     0
 requirements.txt                              |   146 +
 setup.py                                      |    12 +-
 .../atomic_features_package}/__init__.py      |     0
 .../atomic_properties}/__init__.py            |     0
 .../atomic_properties_dft.py                  |    37 +-
 .../atomic_properties_lda2015.py              |    12 +-
 .../atomic_properties_matminer.py             |    23 +-
 .../atomic_properties_pymat.py                |    31 +-
 .../atomic_properties_webele.py               |    65 +-
 .../atomic_properties}/periodictable.py       |  1480 +--
 .../data/dft/no_spin_hse06_really_tight.csv   |     0
 .../data/dft/no_spin_pbe0_really_tight.csv    |     0
 .../data/dft/no_spin_pbe_really_tight.csv     |     0
 .../data/dft/no_spin_pbesol_really_tight.csv  |     0
 .../data/dft/no_spin_pw-lda_really_tight.csv  |     0
 .../data/dft/no_spin_revpbe_really_tight.csv  |     0
 .../data/dft/spin_hse06_really_tight.csv      |     0
 .../data/dft/spin_pbe0_really_tight.csv       |     0
 .../data/dft/spin_pbe_really_tight.csv        |     0
 .../data/dft/spin_pbesol_really_tight.csv     |     0
 .../data/dft/spin_pw-lda_really_tight.csv     |     0
 .../data/dft/spin_revpbe_really_tight.csv     |     0
 .../data/lda2015/Atomic_features.csv          |     0
 .../matminer/AllenElectronegativity.table     |     0
 .../data/matminer/AtomicRadius.table          |     0
 .../data/matminer/AtomicVolume.table          |     0
 .../data/matminer/AtomicWeight.table          |     0
 .../data/matminer/BoilingT.table              |     0
 .../data/matminer/BulkModulus.table           |     0
 .../data/matminer/Column.table                |     0
 .../data/matminer/CovalentRadius.table        |     0
 .../data/matminer/Density.table               |     0
 .../data/matminer/DipolePolarizability.table  |     0
 .../data/matminer/ElectronAffinity.table      |     0
 .../data/matminer/Electronegativity.table     |     0
 .../data/matminer/FirstIonizationEnergy.table |     0
 .../data/matminer/GSbandgap.table             |     0
 .../data/matminer/GSenergy_pa.table           |     0
 .../data/matminer/GSestBCClatcnt.table        |     0
 .../data/matminer/GSestFCClatcnt.table        |     0
 .../data/matminer/GSmagmom.table              |     0
 .../data/matminer/GSvolume_pa.table           |     0
 .../data/matminer/HHIp.table                  |     0
 .../data/matminer/HHIr.table                  |     0
 .../data/matminer/HeatCapacityMass.table      |     0
 .../data/matminer/HeatCapacityMolar.table     |     0
 .../data/matminer/HeatFusion.table            |     0
 .../data/matminer/HeatVaporization.table      |     0
 .../data/matminer/ICSDVolume.table            |     0
 .../data/matminer/IonizationEnergies.table    |     0
 .../data/matminer/IsAlkali.table              |     0
 .../data/matminer/IsDBlock.table              |     0
 .../data/matminer/IsFBlock.table              |     0
 .../data/matminer/IsMetal.table               |     0
 .../data/matminer/IsMetalloid.table           |     0
 .../data/matminer/IsNonmetal.table            |     0
 .../matminer/LogThermalConductivity.table     |     0
 .../data/matminer/MeltingT.table              |     0
 .../data/matminer/MendeleevNumber.table       |     0
 .../data/matminer/MiracleRadius.table         |     0
 .../data/matminer/MolarVolume.table           |     0
 .../data/matminer/NUnfilled.table             |     0
 .../data/matminer/NValence.table              |     0
 .../data/matminer/NdUnfilled.table            |     0
 .../data/matminer/NdValence.table             |     0
 .../data/matminer/NfUnfilled.table            |     0
 .../data/matminer/NfValence.table             |     0
 .../data/matminer/NpUnfilled.table            |     0
 .../data/matminer/NpValence.table             |     0
 .../data/matminer/NsUnfilled.table            |     0
 .../data/matminer/NsValence.table             |     0
 .../data/matminer/Number.table                |     0
 .../data/matminer/OxidationStates.table       |     0
 .../data/matminer/Polarizability.table        |     0
 .../data/matminer/Row.table                   |     0
 .../matminer/SecondIonizationEnergy.table     |     0
 .../data/matminer/ShearModulus.table          |     0
 .../data/matminer/SpaceGroupNumber.table      |     0
 .../data/matminer/ThermalConductivity.table   |     0
 .../data/matminer/VdWRadius.table             |     0
 .../data/matminer/ZungerPP-r_d.table          |     0
 .../data/matminer/ZungerPP-r_p.table          |     0
 .../data/matminer/ZungerPP-r_pi.table         |     0
 .../data/matminer/ZungerPP-r_s.table          |     0
 .../data/matminer/ZungerPP-r_sigma.table      |     0
 .../data/matminer/n_ws^third.table            |     0
 .../data/matminer/phi.table                   |     0
 .../data/pymat/periodic_table.json            |     0
 .../data/webele/Webele.csv                    |     0
 .../data/webele/atomic_sizes.csv              |     0
 .../data/webele/cryst_struct.csv              |     0
 .../data/webele/electronegativity.csv         |     0
 .../data/webele/isotopes.csv                  |     0
 .../data/webele/thermo_chem.csv               |     0
 .../metainfo/__init__.py                      |     0
 .../metainfo/metainfo.py                      |   134 +-
 201 files changed, 1067 insertions(+), 30067 deletions(-)
 rename atomicfeaturespackage/CHANGELOG => CHANGELOG (100%)
 rename atomicfeaturespackage/CONTRIBUTING.md => CONTRIBUTING.md (100%)
 rename atomicfeaturespackage/LICENSE.txt => LICENSE.txt (100%)
 delete mode 100644 __pycache__/setup.cpython-36.pyc
 delete mode 100644 atomicfeaturespackage/MANIFEST.in
 delete mode 100644 atomicfeaturespackage/README.md
 delete mode 100644 atomicfeaturespackage/atomicproperties/__pycache__/__init__.cpython-36.pyc
 delete mode 100644 atomicfeaturespackage/atomicproperties/__pycache__/atomic_properties_dft.cpython-36.pyc
 delete mode 100644 atomicfeaturespackage/atomicproperties/__pycache__/atomic_properties_lda2015.cpython-36.pyc
 delete mode 100644 atomicfeaturespackage/atomicproperties/__pycache__/atomic_properties_magpie.cpython-36.pyc
 delete mode 100644 atomicfeaturespackage/atomicproperties/__pycache__/atomic_properties_pymat.cpython-36.pyc
 delete mode 100644 atomicfeaturespackage/atomicproperties/__pycache__/periodictable.cpython-36.pyc
 delete mode 100644 atomicfeaturespackage/data/lda2015/.gitkeep
 delete mode 100644 atomicfeaturespackage/data/matminer/.gitkeep
 delete mode 100644 atomicfeaturespackage/docs/_build/doctrees/CONTRIBUTING.doctree
 delete mode 100644 atomicfeaturespackage/docs/_build/doctrees/LICENSE.doctree
 delete mode 100644 atomicfeaturespackage/docs/_build/doctrees/README.doctree
 delete mode 100644 atomicfeaturespackage/docs/_build/doctrees/atomicfeaturespackage.atomicproperties.doctree
 delete mode 100644 atomicfeaturespackage/docs/_build/doctrees/atomicfeaturespackage.doctree
 delete mode 100644 atomicfeaturespackage/docs/_build/doctrees/atomicfeaturespackage.metainfo.doctree
 delete mode 100644 atomicfeaturespackage/docs/_build/doctrees/environment.pickle
 delete mode 100644 atomicfeaturespackage/docs/_build/doctrees/index.doctree
 delete mode 100644 atomicfeaturespackage/docs/_build/doctrees/modules.doctree
 delete mode 100644 atomicfeaturespackage/docs/_build/html/.buildinfo
 delete mode 100644 atomicfeaturespackage/docs/_build/html/CONTRIBUTING.html
 delete mode 100644 atomicfeaturespackage/docs/_build/html/LICENSE.html
 delete mode 100644 atomicfeaturespackage/docs/_build/html/README.html
 delete mode 100644 atomicfeaturespackage/docs/_build/html/_sources/CONTRIBUTING.md.txt
 delete mode 100644 atomicfeaturespackage/docs/_build/html/_sources/LICENSE.md.txt
 delete mode 100644 atomicfeaturespackage/docs/_build/html/_sources/README.md.txt
 delete mode 100644 atomicfeaturespackage/docs/_build/html/_sources/atomicfeaturespackage.atomicproperties.rst.txt
 delete mode 100644 atomicfeaturespackage/docs/_build/html/_sources/atomicfeaturespackage.metainfo.rst.txt
 delete mode 100644 atomicfeaturespackage/docs/_build/html/_sources/atomicfeaturespackage.rst.txt
 delete mode 100644 atomicfeaturespackage/docs/_build/html/_sources/index.rst.txt
 delete mode 100644 atomicfeaturespackage/docs/_build/html/_sources/modules.rst.txt
 delete mode 100644 atomicfeaturespackage/docs/_build/html/_static/background_b01.png
 delete mode 100644 atomicfeaturespackage/docs/_build/html/_static/basic.css
 delete mode 100644 atomicfeaturespackage/docs/_build/html/_static/bizstyle.css
 delete mode 100644 atomicfeaturespackage/docs/_build/html/_static/bizstyle.js
 delete mode 100644 atomicfeaturespackage/docs/_build/html/_static/css3-mediaqueries.js
 delete mode 100644 atomicfeaturespackage/docs/_build/html/_static/css3-mediaqueries_src.js
 delete mode 100644 atomicfeaturespackage/docs/_build/html/_static/doctools.js
 delete mode 100644 atomicfeaturespackage/docs/_build/html/_static/documentation_options.js
 delete mode 100644 atomicfeaturespackage/docs/_build/html/_static/file.png
 delete mode 100644 atomicfeaturespackage/docs/_build/html/_static/jquery-3.4.1.js
 delete mode 100644 atomicfeaturespackage/docs/_build/html/_static/jquery.js
 delete mode 100644 atomicfeaturespackage/docs/_build/html/_static/language_data.js
 delete mode 100644 atomicfeaturespackage/docs/_build/html/_static/minus.png
 delete mode 100644 atomicfeaturespackage/docs/_build/html/_static/plus.png
 delete mode 100644 atomicfeaturespackage/docs/_build/html/_static/pygments.css
 delete mode 100644 atomicfeaturespackage/docs/_build/html/_static/searchtools.js
 delete mode 100644 atomicfeaturespackage/docs/_build/html/_static/underscore-1.3.1.js
 delete mode 100644 atomicfeaturespackage/docs/_build/html/_static/underscore.js
 delete mode 100644 atomicfeaturespackage/docs/_build/html/atomicfeaturespackage.atomicproperties.html
 delete mode 100644 atomicfeaturespackage/docs/_build/html/atomicfeaturespackage.html
 delete mode 100644 atomicfeaturespackage/docs/_build/html/atomicfeaturespackage.metainfo.html
 delete mode 100644 atomicfeaturespackage/docs/_build/html/genindex.html
 delete mode 100644 atomicfeaturespackage/docs/_build/html/index.html
 delete mode 100644 atomicfeaturespackage/docs/_build/html/modules.html
 delete mode 100644 atomicfeaturespackage/docs/_build/html/objects.inv
 delete mode 100644 atomicfeaturespackage/docs/_build/html/py-modindex.html
 delete mode 100644 atomicfeaturespackage/docs/_build/html/search.html
 delete mode 100644 atomicfeaturespackage/docs/_build/html/searchindex.js
 delete mode 100644 atomicfeaturespackage/docs/_build/latex/LICRcyr2utf8.xdy
 delete mode 100644 atomicfeaturespackage/docs/_build/latex/LICRlatin2utf8.xdy
 delete mode 100644 atomicfeaturespackage/docs/_build/latex/LatinRules.xdy
 delete mode 100644 atomicfeaturespackage/docs/_build/latex/Makefile
 delete mode 100644 atomicfeaturespackage/docs/_build/latex/atomic-features-package.aux
 delete mode 100644 atomicfeaturespackage/docs/_build/latex/atomic-features-package.fdb_latexmk
 delete mode 100644 atomicfeaturespackage/docs/_build/latex/atomic-features-package.fls
 delete mode 100644 atomicfeaturespackage/docs/_build/latex/atomic-features-package.idx
 delete mode 100644 atomicfeaturespackage/docs/_build/latex/atomic-features-package.log
 delete mode 100644 atomicfeaturespackage/docs/_build/latex/atomic-features-package.out
 delete mode 100644 atomicfeaturespackage/docs/_build/latex/atomic-features-package.pdf
 delete mode 100644 atomicfeaturespackage/docs/_build/latex/atomic-features-package.tex
 delete mode 100644 atomicfeaturespackage/docs/_build/latex/atomic-features-package.toc
 delete mode 100644 atomicfeaturespackage/docs/_build/latex/footnotehyper-sphinx.sty
 delete mode 100644 atomicfeaturespackage/docs/_build/latex/latexmkjarc
 delete mode 100644 atomicfeaturespackage/docs/_build/latex/latexmkrc
 delete mode 100644 atomicfeaturespackage/docs/_build/latex/make.bat
 delete mode 100644 atomicfeaturespackage/docs/_build/latex/python.ist
 delete mode 100644 atomicfeaturespackage/docs/_build/latex/sphinx.sty
 delete mode 100644 atomicfeaturespackage/docs/_build/latex/sphinx.xdy
 delete mode 100644 atomicfeaturespackage/docs/_build/latex/sphinxcyrillic.sty
 delete mode 100644 atomicfeaturespackage/docs/_build/latex/sphinxhighlight.sty
 delete mode 100644 atomicfeaturespackage/docs/_build/latex/sphinxhowto.cls
 delete mode 100644 atomicfeaturespackage/docs/_build/latex/sphinxmanual.cls
 delete mode 100644 atomicfeaturespackage/docs/_build/latex/sphinxmessages.sty
 delete mode 100644 atomicfeaturespackage/docs/_build/latex/sphinxmulticell.sty
 delete mode 100644 atomicfeaturespackage/metainfo/__pycache__/__init__.cpython-36.pyc
 delete mode 100644 atomicfeaturespackage/metainfo/__pycache__/metainfo.cpython-36.pyc
 delete mode 100644 atomicfeaturespackage/requirements.txt
 rename {atomicfeaturespackage/docs => docs}/CONTRIBUTING.md (100%)
 rename {atomicfeaturespackage/docs => docs}/LICENSE.md (100%)
 rename {atomicfeaturespackage/docs => docs}/Makefile (100%)
 rename {atomicfeaturespackage/docs => docs}/README.md (100%)
 rename {atomicfeaturespackage/docs => docs}/atomicfeaturespackage.atomicproperties.rst (100%)
 rename {atomicfeaturespackage/docs => docs}/atomicfeaturespackage.metainfo.rst (100%)
 rename {atomicfeaturespackage/docs => docs}/atomicfeaturespackage.rst (100%)
 rename {atomicfeaturespackage/docs => docs}/conf.py (100%)
 rename {atomicfeaturespackage/docs => docs}/index.rst (100%)
 rename {atomicfeaturespackage/docs => docs}/make.bat (100%)
 rename {atomicfeaturespackage/docs => docs}/modules.rst (100%)
 create mode 100644 requirements.txt
 rename {atomicfeaturespackage => src/atomic_features_package}/__init__.py (100%)
 rename {atomicfeaturespackage/atomicproperties => src/atomic_features_package/atomic_properties}/__init__.py (100%)
 rename {atomicfeaturespackage/atomicproperties => src/atomic_features_package/atomic_properties}/atomic_properties_dft.py (97%)
 rename {atomicfeaturespackage/atomicproperties => src/atomic_features_package/atomic_properties}/atomic_properties_lda2015.py (95%)
 rename {atomicfeaturespackage/atomicproperties => src/atomic_features_package/atomic_properties}/atomic_properties_matminer.py (98%)
 rename {atomicfeaturespackage/atomicproperties => src/atomic_features_package/atomic_properties}/atomic_properties_pymat.py (97%)
 rename {atomicfeaturespackage/atomicproperties => src/atomic_features_package/atomic_properties}/atomic_properties_webele.py (98%)
 rename {atomicfeaturespackage/atomicproperties => src/atomic_features_package/atomic_properties}/periodictable.py (92%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/dft/no_spin_hse06_really_tight.csv (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/dft/no_spin_pbe0_really_tight.csv (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/dft/no_spin_pbe_really_tight.csv (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/dft/no_spin_pbesol_really_tight.csv (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/dft/no_spin_pw-lda_really_tight.csv (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/dft/no_spin_revpbe_really_tight.csv (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/dft/spin_hse06_really_tight.csv (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/dft/spin_pbe0_really_tight.csv (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/dft/spin_pbe_really_tight.csv (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/dft/spin_pbesol_really_tight.csv (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/dft/spin_pw-lda_really_tight.csv (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/dft/spin_revpbe_really_tight.csv (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/lda2015/Atomic_features.csv (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/AllenElectronegativity.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/AtomicRadius.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/AtomicVolume.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/AtomicWeight.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/BoilingT.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/BulkModulus.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/Column.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/CovalentRadius.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/Density.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/DipolePolarizability.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/ElectronAffinity.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/Electronegativity.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/FirstIonizationEnergy.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/GSbandgap.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/GSenergy_pa.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/GSestBCClatcnt.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/GSestFCClatcnt.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/GSmagmom.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/GSvolume_pa.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/HHIp.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/HHIr.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/HeatCapacityMass.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/HeatCapacityMolar.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/HeatFusion.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/HeatVaporization.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/ICSDVolume.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/IonizationEnergies.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/IsAlkali.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/IsDBlock.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/IsFBlock.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/IsMetal.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/IsMetalloid.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/IsNonmetal.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/LogThermalConductivity.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/MeltingT.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/MendeleevNumber.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/MiracleRadius.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/MolarVolume.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/NUnfilled.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/NValence.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/NdUnfilled.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/NdValence.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/NfUnfilled.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/NfValence.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/NpUnfilled.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/NpValence.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/NsUnfilled.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/NsValence.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/Number.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/OxidationStates.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/Polarizability.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/Row.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/SecondIonizationEnergy.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/ShearModulus.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/SpaceGroupNumber.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/ThermalConductivity.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/VdWRadius.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/ZungerPP-r_d.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/ZungerPP-r_p.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/ZungerPP-r_pi.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/ZungerPP-r_s.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/ZungerPP-r_sigma.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/n_ws^third.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/matminer/phi.table (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/pymat/periodic_table.json (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/webele/Webele.csv (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/webele/atomic_sizes.csv (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/webele/cryst_struct.csv (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/webele/electronegativity.csv (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/webele/isotopes.csv (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/data/webele/thermo_chem.csv (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/metainfo/__init__.py (100%)
 rename {atomicfeaturespackage => src/atomic_features_package}/metainfo/metainfo.py (93%)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 01d1847..e711b07 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,17 +1,17 @@
-image: gitlab-registry.mpcdf.mpg.de/nomad-lab/atomic-features-package
-stages:
-  - doc_builds
-pages:
-  stage: doc_builds
-  script:
-    - cd atomic-features-package/docs/
-    - make html
-    - mv _build/html/ ../../public/
-    - cd ../../
-  artifacts:
-    paths:
-      - public
-  only:
-  - master
-  - docs
-  - joss
+# image: gitlab-registry.mpcdf.mpg.de/nomad-lab/atomic-features-package
+# stages:
+#   - doc_builds
+# pages:
+#   stage: doc_builds
+#   script:
+#     - cd docs/
+#     - make html
+#     - mv _build/html/ ../../public/
+#     - cd ../../
+#   artifacts:
+#     paths:
+#       - public
+#   only:
+#   - master
+#   - docs
+#   - joss
diff --git a/atomicfeaturespackage/CHANGELOG b/CHANGELOG
similarity index 100%
rename from atomicfeaturespackage/CHANGELOG
rename to CHANGELOG
diff --git a/atomicfeaturespackage/CONTRIBUTING.md b/CONTRIBUTING.md
similarity index 100%
rename from atomicfeaturespackage/CONTRIBUTING.md
rename to CONTRIBUTING.md
diff --git a/atomicfeaturespackage/LICENSE.txt b/LICENSE.txt
similarity index 100%
rename from atomicfeaturespackage/LICENSE.txt
rename to LICENSE.txt
diff --git a/MANIFEST.in b/MANIFEST.in
index 75fe4d4..850ac25 100644
--- a/MANIFEST.in
+++ b/MANIFEST.in
@@ -1,4 +1,4 @@
-include atomicfeaturespackage/LICENSE.txt 
+include atomicfeaturespackage/LICENSE.txt
 include atomicfeaturespackage/README.md
 include atomicfeaturespackage/requirements.txt
 include atomicfeaturespackage/data/dft/*.csv
@@ -6,18 +6,4 @@ include atomicfeaturespackage/data/pymat/*.json
 include atomicfeaturespackage/data/matminer/*.table
 include atomicfeaturespackage/data/lda2015/*.csv
 include atomicfeaturespackage/data/webele/*.csv
-include atomicfeaturespackage/docs/*
-include atomicfeaturespackage/docs/_build/*
-include atomicfeaturespackage/docs/_build/doctrees/*
-include atomicfeaturespackage/docs/_build/html/*
-include atomicfeaturespackage/docs/_build/html/_static/*
-include atomicfeaturespackage/docs/_build/html/_static/css/*
-include atomicfeaturespackage/docs/_build/html/_static/css/fonts/*
-include atomicfeaturespackage/docs/_build/html/_static/fonts/*
-include atomicfeaturespackage/docs/_build/html/_static/fonts/RobotoSlab/*
-include atomicfeaturespackage/docs/_build/html/_static/fonts/Lato/*
-include atomicfeaturespackage/docs/_build/html/_static/js/*
-include atomicfeaturespackage/docs/_build/html/_sources/*
-include atomicfeaturespackage/docs/_build/latex/*
-include atomicfeaturespackage/docs/_static/*
-include atomicfeaturespackage/docs/_templates/*
+
diff --git a/__pycache__/setup.cpython-36.pyc b/__pycache__/setup.cpython-36.pyc
deleted file mode 100644
index c76e2c3d73e1181e57be3b3b3d2651dca6d5451a..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 1176
zcmXr!<>h)6nwwC;!ocvD0SQPkFfceUFfbH1FfcHrFr+Z%Fhnt=GNv%4FsHDju=X<d
z^F=YGGG#G0Geoh3Go&yEG6XS1Fr+eMv8J%4u%~dOaHepjvZQdQ@T4+iu{ATK@TTyk
z@TW7U2&4$62&D+8h@^<7h^2_9bEHV5NTx`oGp0zVGp5L-Gp5L<Gp5MRVM&qi<zr+>
zVGL%_RCoz;nqL)XkgKDMud7~e$}PsCD%R4HG+hf###<bzdCB=HnR)3|;)x~sxtYnj
zX{m`NrA4X5x&?{J*@@|?RjdYj26`q{f{uyViNzTTj>Q@I*$RG%nb}ohd5M|X4rv*g
zx=E=;IhlESxdrKZDXCTFp?R5UnW-rXP$Lvd@)Z)3lT(X}6(E)<6cptbq!wkCq!ugW
zrzxc7q~@mPl@wR;mZVmc=;tODWvAqq=T+Hel#~<{Tj}ekXO`q7Ch6rCB&Vc7Ez!@*
z&rM9x%}GqshnR`!aOHra{Pd#4+}zB(bOoQpy!6t<^i%~aD}{i{l8pR35X-nq%_lQC
zHLn;f?jP)_;8;*llwX#b0+RLh3{ikeS1I`yq!uNXfQ$;REG|jS1u5_kR`ASANi9gt
zOG(Wusp5pY=@x5VX>LK~Ew+Nhyp+V^Tb#KdB{`|7Ww%(9^0QMjZgFK6RF-F^q^Fh?
z-(oANEXd4Dzr|i!l#`R0WL(8+XKSoy7E;BRl30?cpORLhucen<TvjCr<`-1vCW1t=
ziu3cTgup^MDTzh~hNe(uqF}My#FE_1ywoCnExnS&q?}Yu7Tj@+GxAB6(B!+tl9!m9
zdW*d*wWv5VKkpV>VrfZ6e$g!+2pylAo0yq%i#sK?IJqdZpai5uASXXBJswFUN)}xt
zJ~=<HBsH%jzNE4s^%iq!QO+$6X!0t)#hsj!SX>NBb4A5b0-1TmC5bsX@kObHrI|&k
z#ZmkP;0Q+uh-Bs^=ai<T#zRer2L;$I9%P;-`z@~G)RNMIlKlLf;#(~F1*v(rn9?$C
zu@t2yrW6S<FfiO=1uKZ+P0P$nff-f2lA#Dx0)UBM#`+ogxvBbz;H;zX=kM$2f-AY|
zgALOwsJz8tlbfGXnv-hB2r5N%7#J8hm;@Mwm{=H@&>$NVNQ8w+2qezL!U%!@!E=K#

diff --git a/atomicfeaturespackage/MANIFEST.in b/atomicfeaturespackage/MANIFEST.in
deleted file mode 100644
index 75fe4d4..0000000
--- a/atomicfeaturespackage/MANIFEST.in
+++ /dev/null
@@ -1,23 +0,0 @@
-include atomicfeaturespackage/LICENSE.txt 
-include atomicfeaturespackage/README.md
-include atomicfeaturespackage/requirements.txt
-include atomicfeaturespackage/data/dft/*.csv
-include atomicfeaturespackage/data/pymat/*.json
-include atomicfeaturespackage/data/matminer/*.table
-include atomicfeaturespackage/data/lda2015/*.csv
-include atomicfeaturespackage/data/webele/*.csv
-include atomicfeaturespackage/docs/*
-include atomicfeaturespackage/docs/_build/*
-include atomicfeaturespackage/docs/_build/doctrees/*
-include atomicfeaturespackage/docs/_build/html/*
-include atomicfeaturespackage/docs/_build/html/_static/*
-include atomicfeaturespackage/docs/_build/html/_static/css/*
-include atomicfeaturespackage/docs/_build/html/_static/css/fonts/*
-include atomicfeaturespackage/docs/_build/html/_static/fonts/*
-include atomicfeaturespackage/docs/_build/html/_static/fonts/RobotoSlab/*
-include atomicfeaturespackage/docs/_build/html/_static/fonts/Lato/*
-include atomicfeaturespackage/docs/_build/html/_static/js/*
-include atomicfeaturespackage/docs/_build/html/_sources/*
-include atomicfeaturespackage/docs/_build/latex/*
-include atomicfeaturespackage/docs/_static/*
-include atomicfeaturespackage/docs/_templates/*
diff --git a/atomicfeaturespackage/README.md b/atomicfeaturespackage/README.md
deleted file mode 100644
index e4a7807..0000000
--- a/atomicfeaturespackage/README.md
+++ /dev/null
@@ -1,109 +0,0 @@
-# atomic-features-package
-
-Unified package that contains atomic-features from various sources like PYMATGEN,MAGPIE,LDA2015,WEBELEMENTS and FHI_dft can be imported into Jupyter-notebook for performing various machine learning studies
-
-**-------------------------------------------------------------------------------------------------------------------------------------------------------**
-# Getting Started
-
-To install this package download it as tar.gz archive. Then use the following command
-
-```pip install ./<name-of-tar-package>.tar.gz```
-
-**-------------------------------------------------------------------------------------------------------------------------------------------------------**
-# Importing this package modules in Jupyter notebook
-
-```from atomicfeaturespackage.atomicproperties import periodictable```
-
-This module is a visualization tool that allows us to visualize atomic properites of all elements accross periodic table as a heatmap. Currently, this tool is able to visualize atomic properties acessible from atomic_properties_dft,atomic_properties_magpie,atomic_properties_pymat and atomic_properties_lda2015 module. 
-
-Below is an example line of code you need to run to visualize data calculated via the HSE06 functional and spinless settings.
-
-```periodictable.heatmap(Spin = 'False', method = 'hse06')```
-
-In method arg in heatmap function one can specify what functional one wants visualize atomic properties for. 
-Currently data evaluated are available from following functionals 'HSE06', 'REVPBE', 'PW-LDA', 'PBE' , 'PBESOL', 'PBE0', 'LDA2015' .<br/>
-Spin Setting can be set to 'TRUE' or 'FALSE'.
-
-After running the above line of code one gets a plot of complete periodic table of elements. From the dropdown menu, one can select which property one is interested to check and the table is updated automatically to show the corresponding heatmap.
-
-**-------------------------------------------------------------------------------------------------------------------------------------------------------**
-
-```from atomicfeaturespackage.atomicproperties import atomic_properties_dft as dft```
-
-This module contains several atomic features accessible from FHI-AIMS dft calculations
-
-To access atomic properties calculated from different DFT functionals and spin setting one first need to instantiate Specific functional and spin setting one is interested to access using the method function of this module. This can be done as follows :
-
-```dft.method(method = 'pbe', Spin = 'False')```
-
-Currently data evaluated are available from following functionals 'HSE06', 'REVPBE', 'PW-LDA', 'PBE' , 'PBESOL', 'PBE0'.
-
-Spin Setting can be set to 'TRUE' or 'FALSE'.
-
-One can now acess individually different properties using element symbol as following
-
-```
-    dft.C.atomic_ea
-    dft.C.atomic_r_p
-    dft.C.atomic_ip_by_half_charged_homo
-```    
-
-To get a list of properties accessible one can just press Tab after typing in `dft.C.`
-
-Use symbol method from atomic_properties_dft module to acess property of interest of elements at once say for example we have a python list ls = ['Sc','Ti', 'V', 'Cr'] and we wish to get atomic number of these elements we can do the following
-
-```
-    atomic_number = []
-    for i in ls:
-        atomic_number.append(dft.symbol(i).atomic_number)
-
-```
-**-------------------------------------------------------------------------------------------------------------------------------------------------------**
-
-
-```from atomicfeaturespackage.atomicproperties import atomic_properties_pymat as pymat```
-
-This module contains several atomic features accessible from pymatgen
-
-One can now acess individually different properties using element symbol as following
-
-```
-    pymat.C.atomic_ea
-    pymat.C.atomic_r_p
-    pymat.C.atomic_ip_by_half_charged_homo 
-```  
-To get a list of properties accessible one can just press Tab after typing in `pymat.C.`
-
-Use symbol method from atomic_properties_pymat module to acess property of interest of elements at once in similar manner as described for atomic_properties_dft module above.
-
-**-------------------------------------------------------------------------------------------------------------------------------------------------------**
-
-```from atomicfeaturespackage.atomicproperties import atomic_properties_lda2015 as lda```
-
-This module contains several atomic features accessible from lda2015 paper
-
-One can acess individually different properties using element symbol as following
-
-```
-    lda.C.atomic_ea
-    lda.C.atomic_r_p
-```
-To get a list of properties accessible one can just press Tab after typing in `lda.C.`
-
-Use symbol method from atomic_properties_lda2015 module to acess property of interest of elements at once in similar manner as described for atomic_properties_dft module above.
-
-**-------------------------------------------------------------------------------------------------------------------------------------------------------**
-
-```from atomicfeaturespackage.atomicproperties import atomic_properties_webele as webele```
-
-This module contains several atomic features accessible from Webelements website
-
-One can acess individually different properties using element symbol as following
-
-```
-    webele.C.atomic_radius
-    webele.C.melting_point
-```
-To get a list of properties accessible one can just press Tab after typing in `webele.C.`
-
-Use symbol method from atomic_properties_webele module to acess property of interest of elements at once in similar manner as described for atomic_properties_dft module above.
diff --git a/atomicfeaturespackage/atomicproperties/__pycache__/__init__.cpython-36.pyc b/atomicfeaturespackage/atomicproperties/__pycache__/__init__.cpython-36.pyc
deleted file mode 100644
index c04c66616cae265e95f9cc78a5c3400f1d8154ec..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 176
zcmXr!<>h)6nw!ADz`*brM8Gg30|SEt0|P@b3j+f~3PUi1CZpd<h9ZzKg7_7ypOK%N
zs-KvcomiZq@8|F9=%SxklAoKItecjaSW;S)TC7`;n4F!Mo(dI*38RV@6y+DB7L{bC
h7VF2yXXa&=#K-FuRNmsS$<0qG%}KQbSz8Qp8UO&9Fk%1z

diff --git a/atomicfeaturespackage/atomicproperties/__pycache__/atomic_properties_dft.cpython-36.pyc b/atomicfeaturespackage/atomicproperties/__pycache__/atomic_properties_dft.cpython-36.pyc
deleted file mode 100644
index 31cd1d7c4f46719ed365e36a634ee625c07c2730..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 9896
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

diff --git a/atomicfeaturespackage/atomicproperties/__pycache__/atomic_properties_lda2015.cpython-36.pyc b/atomicfeaturespackage/atomicproperties/__pycache__/atomic_properties_lda2015.cpython-36.pyc
deleted file mode 100644
index 64add953a03c523888dc56b69ee8c15b1a3fcb74..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 2824
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
VLr{)^uwWz)6BnZpqX-L!0syDE5SRb}

diff --git a/atomicfeaturespackage/atomicproperties/__pycache__/atomic_properties_magpie.cpython-36.pyc b/atomicfeaturespackage/atomicproperties/__pycache__/atomic_properties_magpie.cpython-36.pyc
deleted file mode 100644
index b9c44a510679d6b07b8e61b2f679d54f46d93d54..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 11421
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

diff --git a/atomicfeaturespackage/atomicproperties/__pycache__/atomic_properties_pymat.cpython-36.pyc b/atomicfeaturespackage/atomicproperties/__pycache__/atomic_properties_pymat.cpython-36.pyc
deleted file mode 100644
index f02cf5b0dcbfd6c2ad18f646d9d52636b62f0147..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 8411
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

diff --git a/atomicfeaturespackage/atomicproperties/__pycache__/periodictable.cpython-36.pyc b/atomicfeaturespackage/atomicproperties/__pycache__/periodictable.cpython-36.pyc
deleted file mode 100644
index ff4db03f4c99f77ff1cc866ff29786188255e32a..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 49396
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
O9I70a9Bv#2a!defRpa6S

diff --git a/atomicfeaturespackage/data/lda2015/.gitkeep b/atomicfeaturespackage/data/lda2015/.gitkeep
deleted file mode 100644
index e69de29..0000000
diff --git a/atomicfeaturespackage/data/matminer/.gitkeep b/atomicfeaturespackage/data/matminer/.gitkeep
deleted file mode 100644
index e69de29..0000000
diff --git a/atomicfeaturespackage/docs/_build/doctrees/CONTRIBUTING.doctree b/atomicfeaturespackage/docs/_build/doctrees/CONTRIBUTING.doctree
deleted file mode 100644
index 62e20348d34a8cb384c86dcf37c9a01a0b60ddbf..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 2889
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

diff --git a/atomicfeaturespackage/docs/_build/doctrees/LICENSE.doctree b/atomicfeaturespackage/docs/_build/doctrees/LICENSE.doctree
deleted file mode 100644
index d81933d4e282ca15506b333e30e448f8a2c618f6..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 7046
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
XVQ#oEIQqC!Kt&QX_kwE4(j+|qP*<$2

diff --git a/atomicfeaturespackage/docs/_build/doctrees/README.doctree b/atomicfeaturespackage/docs/_build/doctrees/README.doctree
deleted file mode 100644
index a806ffa3fa2883df8e31f38271375c46cfc1f1b4..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 29903
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
V$17I~sH_49&J;h;s<YB0Jpcg6XO;i}

diff --git a/atomicfeaturespackage/docs/_build/doctrees/atomicfeaturespackage.atomicproperties.doctree b/atomicfeaturespackage/docs/_build/doctrees/atomicfeaturespackage.atomicproperties.doctree
deleted file mode 100644
index c464f6a0e44c3fb5c38ede2918dc43a49c078888..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 95302
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
NIH&l50=hIw4*=BDKn4H+

diff --git a/atomicfeaturespackage/docs/_build/doctrees/atomicfeaturespackage.doctree b/atomicfeaturespackage/docs/_build/doctrees/atomicfeaturespackage.doctree
deleted file mode 100644
index 034c904a6ff7578febc4122a6ea83dc983549b64..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 3593
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
bfYT&5To|00xl%wC6gZ<y@dGuQN|W>e%aU`S

diff --git a/atomicfeaturespackage/docs/_build/doctrees/atomicfeaturespackage.metainfo.doctree b/atomicfeaturespackage/docs/_build/doctrees/atomicfeaturespackage.metainfo.doctree
deleted file mode 100644
index f30d0a75c78fb6b4d3bb58a852459ed430bc9bdc..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 315259
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

diff --git a/atomicfeaturespackage/docs/_build/doctrees/environment.pickle b/atomicfeaturespackage/docs/_build/doctrees/environment.pickle
deleted file mode 100644
index d046a541d5e6f68f7107806f058017cde0a307c5..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 76815
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

diff --git a/atomicfeaturespackage/docs/_build/doctrees/index.doctree b/atomicfeaturespackage/docs/_build/doctrees/index.doctree
deleted file mode 100644
index 800135c6bc8dd260df5a19e9810911af4eb20c5c..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 5065
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

diff --git a/atomicfeaturespackage/docs/_build/doctrees/modules.doctree b/atomicfeaturespackage/docs/_build/doctrees/modules.doctree
deleted file mode 100644
index f3bdbaaaa08b53061c8a592d63ee1d43d4ac6f50..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 2710
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
F2LOPsHTnPm

diff --git a/atomicfeaturespackage/docs/_build/html/.buildinfo b/atomicfeaturespackage/docs/_build/html/.buildinfo
deleted file mode 100644
index 5482c36..0000000
--- a/atomicfeaturespackage/docs/_build/html/.buildinfo
+++ /dev/null
@@ -1,4 +0,0 @@
-# Sphinx build info version 1
-# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
-config: f8ed7ea845cd2024175925e361c549ae
-tags: 645f666f9bcd5a90fca523b33c5a78b7
diff --git a/atomicfeaturespackage/docs/_build/html/CONTRIBUTING.html b/atomicfeaturespackage/docs/_build/html/CONTRIBUTING.html
deleted file mode 100644
index 9660014..0000000
--- a/atomicfeaturespackage/docs/_build/html/CONTRIBUTING.html
+++ /dev/null
@@ -1,104 +0,0 @@
-
-
-<!doctype html>
-
-<html xmlns="http://www.w3.org/1999/xhtml">
-  <head>
-    <meta charset="utf-8" />
-    <title>CONTRIBUTING &#8212; atomic-features-package  documentation</title>
-    <link rel="stylesheet" href="_static/bizstyle.css" type="text/css" />
-    <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
-    
-    <script id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
-    <script src="_static/jquery.js"></script>
-    <script src="_static/underscore.js"></script>
-    <script src="_static/doctools.js"></script>
-    <script src="_static/language_data.js"></script>
-    <script src="_static/bizstyle.js"></script>
-    <link rel="index" title="Index" href="genindex.html" />
-    <link rel="search" title="Search" href="search.html" />
-    <link rel="prev" title="LICENSE" href="LICENSE.html" />
-    <meta name="viewport" content="width=device-width,initial-scale=1.0">
-    <!--[if lt IE 9]>
-    <script src="_static/css3-mediaqueries.js"></script>
-    <![endif]-->
-  </head><body>
-    <div class="related" role="navigation" aria-label="related navigation">
-      <h3>Navigation</h3>
-      <ul>
-        <li class="right" style="margin-right: 10px">
-          <a href="genindex.html" title="General Index"
-             accesskey="I">index</a></li>
-        <li class="right" >
-          <a href="py-modindex.html" title="Python Module Index"
-             >modules</a> |</li>
-        <li class="right" >
-          <a href="LICENSE.html" title="LICENSE"
-             accesskey="P">previous</a> |</li>
-        <li class="nav-item nav-item-0"><a href="index.html">atomic-features-package  documentation</a> &#187;</li> 
-      </ul>
-    </div>
-      <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
-        <div class="sphinxsidebarwrapper">
-  <h4>Previous topic</h4>
-  <p class="topless"><a href="LICENSE.html"
-                        title="previous chapter">LICENSE</a></p>
-  <div role="note" aria-label="source link">
-    <h3>This Page</h3>
-    <ul class="this-page-menu">
-      <li><a href="_sources/CONTRIBUTING.md.txt"
-            rel="nofollow">Show Source</a></li>
-    </ul>
-   </div>
-<div id="searchbox" style="display: none" role="search">
-  <h3 id="searchlabel">Quick search</h3>
-    <div class="searchformwrapper">
-    <form class="search" action="search.html" method="get">
-      <input type="text" name="q" aria-labelledby="searchlabel" />
-      <input type="submit" value="Go" />
-    </form>
-    </div>
-</div>
-<script>$('#searchbox').show(0);</script>
-        </div>
-      </div>
-
-    <div class="document">
-      <div class="documentwrapper">
-        <div class="bodywrapper">
-          <div class="body" role="main">
-            
-  <div class="section" id="contributing">
-<h1>CONTRIBUTING<a class="headerlink" href="#contributing" title="Permalink to this headline">¶</a></h1>
-<p>Aakash Ashok Naik</p>
-<p>For questions queries and suggestions</p>
-<p>Contact : naik&#64;fhi-berlin.mpg.de</p>
-</div>
-
-
-          </div>
-        </div>
-      </div>
-      <div class="clearer"></div>
-    </div>
-    <div class="related" role="navigation" aria-label="related navigation">
-      <h3>Navigation</h3>
-      <ul>
-        <li class="right" style="margin-right: 10px">
-          <a href="genindex.html" title="General Index"
-             >index</a></li>
-        <li class="right" >
-          <a href="py-modindex.html" title="Python Module Index"
-             >modules</a> |</li>
-        <li class="right" >
-          <a href="LICENSE.html" title="LICENSE"
-             >previous</a> |</li>
-        <li class="nav-item nav-item-0"><a href="index.html">atomic-features-package  documentation</a> &#187;</li> 
-      </ul>
-    </div>
-    <div class="footer" role="contentinfo">
-        &#169; Copyright 2021, Aakash Naik.
-      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.4.4.
-    </div>
-  </body>
-</html>
\ No newline at end of file
diff --git a/atomicfeaturespackage/docs/_build/html/LICENSE.html b/atomicfeaturespackage/docs/_build/html/LICENSE.html
deleted file mode 100644
index c0766bf..0000000
--- a/atomicfeaturespackage/docs/_build/html/LICENSE.html
+++ /dev/null
@@ -1,128 +0,0 @@
-
-
-<!doctype html>
-
-<html xmlns="http://www.w3.org/1999/xhtml">
-  <head>
-    <meta charset="utf-8" />
-    <title>LICENSE &#8212; atomic-features-package  documentation</title>
-    <link rel="stylesheet" href="_static/bizstyle.css" type="text/css" />
-    <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
-    
-    <script id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
-    <script src="_static/jquery.js"></script>
-    <script src="_static/underscore.js"></script>
-    <script src="_static/doctools.js"></script>
-    <script src="_static/language_data.js"></script>
-    <script src="_static/bizstyle.js"></script>
-    <link rel="index" title="Index" href="genindex.html" />
-    <link rel="search" title="Search" href="search.html" />
-    <link rel="next" title="CONTRIBUTING" href="CONTRIBUTING.html" />
-    <link rel="prev" title="atomicfeaturespackage.metainfo package" href="atomicfeaturespackage.metainfo.html" />
-    <meta name="viewport" content="width=device-width,initial-scale=1.0">
-    <!--[if lt IE 9]>
-    <script src="_static/css3-mediaqueries.js"></script>
-    <![endif]-->
-  </head><body>
-    <div class="related" role="navigation" aria-label="related navigation">
-      <h3>Navigation</h3>
-      <ul>
-        <li class="right" style="margin-right: 10px">
-          <a href="genindex.html" title="General Index"
-             accesskey="I">index</a></li>
-        <li class="right" >
-          <a href="py-modindex.html" title="Python Module Index"
-             >modules</a> |</li>
-        <li class="right" >
-          <a href="CONTRIBUTING.html" title="CONTRIBUTING"
-             accesskey="N">next</a> |</li>
-        <li class="right" >
-          <a href="atomicfeaturespackage.metainfo.html" title="atomicfeaturespackage.metainfo package"
-             accesskey="P">previous</a> |</li>
-        <li class="nav-item nav-item-0"><a href="index.html">atomic-features-package  documentation</a> &#187;</li> 
-      </ul>
-    </div>
-      <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
-        <div class="sphinxsidebarwrapper">
-  <h4>Previous topic</h4>
-  <p class="topless"><a href="atomicfeaturespackage.metainfo.html"
-                        title="previous chapter">atomicfeaturespackage.metainfo package</a></p>
-  <h4>Next topic</h4>
-  <p class="topless"><a href="CONTRIBUTING.html"
-                        title="next chapter">CONTRIBUTING</a></p>
-  <div role="note" aria-label="source link">
-    <h3>This Page</h3>
-    <ul class="this-page-menu">
-      <li><a href="_sources/LICENSE.md.txt"
-            rel="nofollow">Show Source</a></li>
-    </ul>
-   </div>
-<div id="searchbox" style="display: none" role="search">
-  <h3 id="searchlabel">Quick search</h3>
-    <div class="searchformwrapper">
-    <form class="search" action="search.html" method="get">
-      <input type="text" name="q" aria-labelledby="searchlabel" />
-      <input type="submit" value="Go" />
-    </form>
-    </div>
-</div>
-<script>$('#searchbox').show(0);</script>
-        </div>
-      </div>
-
-    <div class="document">
-      <div class="documentwrapper">
-        <div class="bodywrapper">
-          <div class="body" role="main">
-            
-  <div class="section" id="license">
-<h1>LICENSE<a class="headerlink" href="#license" title="Permalink to this headline">¶</a></h1>
-<p>MIT License</p>
-<p>Copyright (c) 2021 nomad-lab</p>
-<p>Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the “Software”), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:</p>
-<p>The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.</p>
-<p>THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.</p>
-</div>
-
-
-          </div>
-        </div>
-      </div>
-      <div class="clearer"></div>
-    </div>
-    <div class="related" role="navigation" aria-label="related navigation">
-      <h3>Navigation</h3>
-      <ul>
-        <li class="right" style="margin-right: 10px">
-          <a href="genindex.html" title="General Index"
-             >index</a></li>
-        <li class="right" >
-          <a href="py-modindex.html" title="Python Module Index"
-             >modules</a> |</li>
-        <li class="right" >
-          <a href="CONTRIBUTING.html" title="CONTRIBUTING"
-             >next</a> |</li>
-        <li class="right" >
-          <a href="atomicfeaturespackage.metainfo.html" title="atomicfeaturespackage.metainfo package"
-             >previous</a> |</li>
-        <li class="nav-item nav-item-0"><a href="index.html">atomic-features-package  documentation</a> &#187;</li> 
-      </ul>
-    </div>
-    <div class="footer" role="contentinfo">
-        &#169; Copyright 2021, Aakash Naik.
-      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.4.4.
-    </div>
-  </body>
-</html>
\ No newline at end of file
diff --git a/atomicfeaturespackage/docs/_build/html/README.html b/atomicfeaturespackage/docs/_build/html/README.html
deleted file mode 100644
index 9f18dac..0000000
--- a/atomicfeaturespackage/docs/_build/html/README.html
+++ /dev/null
@@ -1,188 +0,0 @@
-
-
-<!doctype html>
-
-<html xmlns="http://www.w3.org/1999/xhtml">
-  <head>
-    <meta charset="utf-8" />
-    <title>Description &#8212; atomic-features-package  documentation</title>
-    <link rel="stylesheet" href="_static/bizstyle.css" type="text/css" />
-    <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
-    
-    <script id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
-    <script src="_static/jquery.js"></script>
-    <script src="_static/underscore.js"></script>
-    <script src="_static/doctools.js"></script>
-    <script src="_static/language_data.js"></script>
-    <script src="_static/bizstyle.js"></script>
-    <link rel="index" title="Index" href="genindex.html" />
-    <link rel="search" title="Search" href="search.html" />
-    <link rel="next" title="atomic-features-package package" href="atomicfeaturespackage.html" />
-    <link rel="prev" title="Welcome to atomic-features-package’s documentation!" href="index.html" />
-    <meta name="viewport" content="width=device-width,initial-scale=1.0">
-    <!--[if lt IE 9]>
-    <script src="_static/css3-mediaqueries.js"></script>
-    <![endif]-->
-  </head><body>
-    <div class="related" role="navigation" aria-label="related navigation">
-      <h3>Navigation</h3>
-      <ul>
-        <li class="right" style="margin-right: 10px">
-          <a href="genindex.html" title="General Index"
-             accesskey="I">index</a></li>
-        <li class="right" >
-          <a href="py-modindex.html" title="Python Module Index"
-             >modules</a> |</li>
-        <li class="right" >
-          <a href="atomicfeaturespackage.html" title="atomic-features-package package"
-             accesskey="N">next</a> |</li>
-        <li class="right" >
-          <a href="index.html" title="Welcome to atomic-features-package’s documentation!"
-             accesskey="P">previous</a> |</li>
-        <li class="nav-item nav-item-0"><a href="index.html">atomic-features-package  documentation</a> &#187;</li> 
-      </ul>
-    </div>
-      <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
-        <div class="sphinxsidebarwrapper">
-  <h3><a href="index.html">Table of Contents</a></h3>
-  <ul>
-<li><a class="reference internal" href="#">Description</a></li>
-<li><a class="reference internal" href="#getting-started">Getting Started</a></li>
-<li><a class="reference internal" href="#importing-this-package-modules-in-jupyter-notebook">Importing this package modules in Jupyter notebook</a></li>
-</ul>
-
-  <h4>Previous topic</h4>
-  <p class="topless"><a href="index.html"
-                        title="previous chapter">Welcome to atomic-features-package’s documentation!</a></p>
-  <h4>Next topic</h4>
-  <p class="topless"><a href="atomicfeaturespackage.html"
-                        title="next chapter">atomic-features-package package</a></p>
-  <div role="note" aria-label="source link">
-    <h3>This Page</h3>
-    <ul class="this-page-menu">
-      <li><a href="_sources/README.md.txt"
-            rel="nofollow">Show Source</a></li>
-    </ul>
-   </div>
-<div id="searchbox" style="display: none" role="search">
-  <h3 id="searchlabel">Quick search</h3>
-    <div class="searchformwrapper">
-    <form class="search" action="search.html" method="get">
-      <input type="text" name="q" aria-labelledby="searchlabel" />
-      <input type="submit" value="Go" />
-    </form>
-    </div>
-</div>
-<script>$('#searchbox').show(0);</script>
-        </div>
-      </div>
-
-    <div class="document">
-      <div class="documentwrapper">
-        <div class="bodywrapper">
-          <div class="body" role="main">
-            
-  <div class="section" id="description">
-<h1>Description<a class="headerlink" href="#description" title="Permalink to this headline">¶</a></h1>
-<p>Unified package that contains atomic-features from various sources like PYMATGEN,MAGPIE,LDA2015,WEBELEMENTS amd FHI_dft can be imported into Jupyter-notebook for performing various machine learning studies</p>
-<p><strong>——————————————————————————————————————————————————-</strong></p>
-</div>
-<div class="section" id="getting-started">
-<h1>Getting Started<a class="headerlink" href="#getting-started" title="Permalink to this headline">¶</a></h1>
-<p>To install this package download it as tar.gz archive. Then use the following command</p>
-<p><code class="docutils literal notranslate"><span class="pre">pip</span> <span class="pre">install</span> <span class="pre">./&lt;name-of-tar-package&gt;.tar.gz</span></code></p>
-<p><strong>——————————————————————————————————————————————————-</strong></p>
-</div>
-<div class="section" id="importing-this-package-modules-in-jupyter-notebook">
-<h1>Importing this package modules in Jupyter notebook<a class="headerlink" href="#importing-this-package-modules-in-jupyter-notebook" title="Permalink to this headline">¶</a></h1>
-<p><code class="docutils literal notranslate"><span class="pre">from</span> <span class="pre">atomicfeaturespackage.atomicproperties</span> <span class="pre">import</span> <span class="pre">periodictable</span></code></p>
-<p>This module is a visualization tool that allows us to visualize atomic properites of all elements accross periodic table as a heatmap. Currently, this tool is able to visualize atomic properties acessible from atomic_properties_dft and atomic_properties_lda2015 module.</p>
-<p>Below is an example line of code you need to run to visualize data calculated via the HSE06 functional and spinless settings.</p>
-<p><code class="docutils literal notranslate"><span class="pre">periodictable.heatmap(Spin</span> <span class="pre">=</span> <span class="pre">'False',</span> <span class="pre">method</span> <span class="pre">=</span> <span class="pre">'hse06')</span></code></p>
-<p>In method arg in heatmap function one can specify what functional one wants visualize atomic properties for.
-Currently data evaluated are available from following functionals ‘HSE06’, ‘REVPBE’, ‘PW-LDA’, ‘PBE’ , ‘PBESOL’, ‘PBE0’, ‘LDA2015’ .<br/>
-Spin Setting can be set to ‘TRUE’ or ‘FALSE’.</p>
-<p>After running the above line of code one gets a plot of complete periodic table of elements. From the dropdown menu, one can select which property one is interested to check and the table is updated automatically to show the corresponding heatmap.</p>
-<p><strong>——————————————————————————————————————————————————-</strong></p>
-<p><code class="docutils literal notranslate"><span class="pre">from</span> <span class="pre">atomicfeaturespackage.atomicproperties</span> <span class="pre">import</span> <span class="pre">atomic_properties_dft</span> <span class="pre">as</span> <span class="pre">dft</span></code></p>
-<p>This module contains several atomic features accessible from FHI-AIMS dft calculations</p>
-<p>To access atomic properties calculated from different DFT functionals and spin setting one first need to instantiate Specific functional and spin setting one is interested to access using the method function of this module. This can be done as follows :</p>
-<p><code class="docutils literal notranslate"><span class="pre">dft.method(method</span> <span class="pre">=</span> <span class="pre">'pbe',</span> <span class="pre">Spin</span> <span class="pre">=</span> <span class="pre">'False')</span></code></p>
-<p>Currently data evaluated are available from following functionals ‘HSE06’, ‘REVPBE’, ‘PW-LDA’, ‘PBE’ , ‘PBESOL’, ‘PBE0’.</p>
-<p>Spin Setting can be set to ‘TRUE’ or ‘FALSE’.</p>
-<p>One can now acess individually different properties using element symbol as following</p>
-<div class="highlight-default notranslate"><div class="highlight"><pre><span></span>    <span class="n">dft</span><span class="o">.</span><span class="n">C</span><span class="o">.</span><span class="n">atomic_ea</span>
-    <span class="n">dft</span><span class="o">.</span><span class="n">C</span><span class="o">.</span><span class="n">atomic_r_p</span>
-    <span class="n">dft</span><span class="o">.</span><span class="n">C</span><span class="o">.</span><span class="n">atomic_ip_by_half_charged_homo</span>
-</pre></div>
-</div>
-<p>To get a list of properties accessible one can just press Tab after typing in <code class="docutils literal notranslate"><span class="pre">dft.C.</span></code></p>
-<p>Use symbol method from atomic_properties_dft module to acess property of interest of elements at once say for example we have a python list ls = [‘Sc’,’Ti’, ‘V’, ‘Cr’] and we wish to get atomic number of these elements we can do the following</p>
-<div class="highlight-default notranslate"><div class="highlight"><pre><span></span>    <span class="n">atomic_number</span> <span class="o">=</span> <span class="p">[]</span>
-    <span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="n">ls</span><span class="p">:</span>
-        <span class="n">atomic_number</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">dft</span><span class="o">.</span><span class="n">symbol</span><span class="p">(</span><span class="n">i</span><span class="p">)</span><span class="o">.</span><span class="n">atomic_number</span><span class="p">)</span>
-</pre></div>
-</div>
-<p><strong>——————————————————————————————————————————————————-</strong></p>
-<p><code class="docutils literal notranslate"><span class="pre">from</span> <span class="pre">atomicfeaturespackage.atomicproperties</span> <span class="pre">import</span> <span class="pre">atomic_properties_pymat</span> <span class="pre">as</span> <span class="pre">pymat</span></code></p>
-<p>This module contains several atomic features accessible from pymatgen</p>
-<p>One can now acess individually different properties using element symbol as following</p>
-<div class="highlight-default notranslate"><div class="highlight"><pre><span></span>    <span class="n">pymat</span><span class="o">.</span><span class="n">C</span><span class="o">.</span><span class="n">atomic_ea</span>
-    <span class="n">pymat</span><span class="o">.</span><span class="n">C</span><span class="o">.</span><span class="n">atomic_r_p</span>
-    <span class="n">pymat</span><span class="o">.</span><span class="n">C</span><span class="o">.</span><span class="n">atomic_ip_by_half_charged_homo</span> 
-</pre></div>
-</div>
-<p>To get a list of properties accessible one can just press Tab after typing in <code class="docutils literal notranslate"><span class="pre">pymat.C.</span></code></p>
-<p>Use symbol method from atomic_properties_pymat module to acess property of interest of elements at once in similar manner as described for atomic_properties_dft module above.</p>
-<p><strong>——————————————————————————————————————————————————-</strong></p>
-<p><code class="docutils literal notranslate"><span class="pre">from</span> <span class="pre">atomicfeaturespackage.atomicproperties</span> <span class="pre">import</span> <span class="pre">atomic_properties_lda2015</span> <span class="pre">as</span> <span class="pre">lda</span></code></p>
-<p>This module contains several atomic features accessible from lda2015 paper</p>
-<p>One can acess individually different properties using element symbol as following</p>
-<div class="highlight-default notranslate"><div class="highlight"><pre><span></span>    <span class="n">lda</span><span class="o">.</span><span class="n">C</span><span class="o">.</span><span class="n">atomic_ea</span>
-    <span class="n">lda</span><span class="o">.</span><span class="n">C</span><span class="o">.</span><span class="n">atomic_r_p</span>
-</pre></div>
-</div>
-<p>To get a list of properties accessible one can just press Tab after typing in <code class="docutils literal notranslate"><span class="pre">lda.C.</span></code></p>
-<p>Use symbol method from atomic_properties_lda2015 module to acess property of interest of elements at once in similar manner as described for atomic_properties_dft module above.</p>
-<p><strong>——————————————————————————————————————————————————-</strong></p>
-<p><code class="docutils literal notranslate"><span class="pre">from</span> <span class="pre">atomicfeaturespackage.atomicproperties</span> <span class="pre">import</span> <span class="pre">atomic_properties_webele</span> <span class="pre">as</span> <span class="pre">webele</span></code></p>
-<p>This module contains several atomic features accessible from Webelements source</p>
-<p>One can acess individually different properties using element symbol as following</p>
-<div class="highlight-default notranslate"><div class="highlight"><pre><span></span>    <span class="n">webele</span><span class="o">.</span><span class="n">C</span><span class="o">.</span><span class="n">atomic_radius_calculated</span>
-    <span class="n">webele</span><span class="o">.</span><span class="n">C</span><span class="o">.</span><span class="n">critical_temperature</span>
-</pre></div>
-</div>
-<p>To get a list of properties accessible one can just press Tab after typing in <code class="docutils literal notranslate"><span class="pre">webele.C.</span></code></p>
-<p>Use symbol method from atomic_properties_webele module to acess property of interest of elements at once in similar manner as described for atomic_properties_dft module above.</p>
-</div>
-
-
-          </div>
-        </div>
-      </div>
-      <div class="clearer"></div>
-    </div>
-    <div class="related" role="navigation" aria-label="related navigation">
-      <h3>Navigation</h3>
-      <ul>
-        <li class="right" style="margin-right: 10px">
-          <a href="genindex.html" title="General Index"
-             >index</a></li>
-        <li class="right" >
-          <a href="py-modindex.html" title="Python Module Index"
-             >modules</a> |</li>
-        <li class="right" >
-          <a href="atomicfeaturespackage.html" title="atomic-features-package package"
-             >next</a> |</li>
-        <li class="right" >
-          <a href="index.html" title="Welcome to atomic-features-package’s documentation!"
-             >previous</a> |</li>
-        <li class="nav-item nav-item-0"><a href="index.html">atomic-features-package  documentation</a> &#187;</li> 
-      </ul>
-    </div>
-    <div class="footer" role="contentinfo">
-        &#169; Copyright 2021, Aakash Naik.
-      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.4.4.
-    </div>
-  </body>
-</html>
\ No newline at end of file
diff --git a/atomicfeaturespackage/docs/_build/html/_sources/CONTRIBUTING.md.txt b/atomicfeaturespackage/docs/_build/html/_sources/CONTRIBUTING.md.txt
deleted file mode 100644
index 4e9278c..0000000
--- a/atomicfeaturespackage/docs/_build/html/_sources/CONTRIBUTING.md.txt
+++ /dev/null
@@ -1,6 +0,0 @@
-# CONTRIBUTING
-Aakash Ashok Naik
-
-For questions queries and suggestions
- 
-Contact : naik@fhi-berlin.mpg.de
diff --git a/atomicfeaturespackage/docs/_build/html/_sources/LICENSE.md.txt b/atomicfeaturespackage/docs/_build/html/_sources/LICENSE.md.txt
deleted file mode 100644
index d5633e5..0000000
--- a/atomicfeaturespackage/docs/_build/html/_sources/LICENSE.md.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-# LICENSE
-
-MIT License
-
-Copyright (c) 2021 nomad-lab
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
diff --git a/atomicfeaturespackage/docs/_build/html/_sources/README.md.txt b/atomicfeaturespackage/docs/_build/html/_sources/README.md.txt
deleted file mode 100644
index a30385a..0000000
--- a/atomicfeaturespackage/docs/_build/html/_sources/README.md.txt
+++ /dev/null
@@ -1,109 +0,0 @@
-# Description
-
-Unified package that contains atomic-features from various sources like PYMATGEN,MAGPIE,LDA2015,WEBELEMENTS amd FHI_dft can be imported into Jupyter-notebook for performing various machine learning studies
-
-**-------------------------------------------------------------------------------------------------------------------------------------------------------**
-# Getting Started
-
-To install this package download it as tar.gz archive. Then use the following command
-
-```pip install ./<name-of-tar-package>.tar.gz```
-
-**-------------------------------------------------------------------------------------------------------------------------------------------------------**
-# Importing this package modules in Jupyter notebook
-
-```from atomicfeaturespackage.atomicproperties import periodictable```
-
-This module is a visualization tool that allows us to visualize atomic properites of all elements accross periodic table as a heatmap. Currently, this tool is able to visualize atomic properties acessible from atomic_properties_dft and atomic_properties_lda2015 module. 
-
-Below is an example line of code you need to run to visualize data calculated via the HSE06 functional and spinless settings.
-
-```periodictable.heatmap(Spin = 'False', method = 'hse06')```
-
-In method arg in heatmap function one can specify what functional one wants visualize atomic properties for. 
-Currently data evaluated are available from following functionals 'HSE06', 'REVPBE', 'PW-LDA', 'PBE' , 'PBESOL', 'PBE0', 'LDA2015' .<br/>
-Spin Setting can be set to 'TRUE' or 'FALSE'.
-
-After running the above line of code one gets a plot of complete periodic table of elements. From the dropdown menu, one can select which property one is interested to check and the table is updated automatically to show the corresponding heatmap.
-
-**-------------------------------------------------------------------------------------------------------------------------------------------------------**
-
-```from atomicfeaturespackage.atomicproperties import atomic_properties_dft as dft```
-
-This module contains several atomic features accessible from FHI-AIMS dft calculations
-
-To access atomic properties calculated from different DFT functionals and spin setting one first need to instantiate Specific functional and spin setting one is interested to access using the method function of this module. This can be done as follows :
-
-```dft.method(method = 'pbe', Spin = 'False')```
-
-Currently data evaluated are available from following functionals 'HSE06', 'REVPBE', 'PW-LDA', 'PBE' , 'PBESOL', 'PBE0'.
-
-Spin Setting can be set to 'TRUE' or 'FALSE'.
-
-One can now acess individually different properties using element symbol as following
-
-```
-    dft.C.atomic_ea
-    dft.C.atomic_r_p
-    dft.C.atomic_ip_by_half_charged_homo
-```
-
-To get a list of properties accessible one can just press Tab after typing in `dft.C.`
-
-Use symbol method from atomic_properties_dft module to acess property of interest of elements at once say for example we have a python list ls = ['Sc','Ti', 'V', 'Cr'] and we wish to get atomic number of these elements we can do the following
-
-```
-    atomic_number = []
-    for i in ls:
-        atomic_number.append(dft.symbol(i).atomic_number)
-
-```
-**-------------------------------------------------------------------------------------------------------------------------------------------------------**
-
-
-```from atomicfeaturespackage.atomicproperties import atomic_properties_pymat as pymat```
-
-This module contains several atomic features accessible from pymatgen
-
-One can now acess individually different properties using element symbol as following
-
-```
-    pymat.C.atomic_ea
-    pymat.C.atomic_r_p
-    pymat.C.atomic_ip_by_half_charged_homo 
-```
-To get a list of properties accessible one can just press Tab after typing in `pymat.C.`
-
-Use symbol method from atomic_properties_pymat module to acess property of interest of elements at once in similar manner as described for atomic_properties_dft module above.
-
-**-------------------------------------------------------------------------------------------------------------------------------------------------------**
-
-```from atomicfeaturespackage.atomicproperties import atomic_properties_lda2015 as lda```
-
-This module contains several atomic features accessible from lda2015 paper
-
-One can acess individually different properties using element symbol as following
-
-```
-    lda.C.atomic_ea
-    lda.C.atomic_r_p
-```
-To get a list of properties accessible one can just press Tab after typing in `lda.C.`
-
-Use symbol method from atomic_properties_lda2015 module to acess property of interest of elements at once in similar manner as described for atomic_properties_dft module above.
-
-**-------------------------------------------------------------------------------------------------------------------------------------------------------**
-
-```from atomicfeaturespackage.atomicproperties import atomic_properties_webele as webele```
-
-This module contains several atomic features accessible from Webelements source
-
-One can acess individually different properties using element symbol as following
-
-```
-    webele.C.atomic_radius_calculated
-    webele.C.critical_temperature
-```
-To get a list of properties accessible one can just press Tab after typing in `webele.C.`
-
-Use symbol method from atomic_properties_webele module to acess property of interest of elements at once in similar manner as described for atomic_properties_dft module above.
diff --git a/atomicfeaturespackage/docs/_build/html/_sources/atomicfeaturespackage.atomicproperties.rst.txt b/atomicfeaturespackage/docs/_build/html/_sources/atomicfeaturespackage.atomicproperties.rst.txt
deleted file mode 100644
index b8bfaa0..0000000
--- a/atomicfeaturespackage/docs/_build/html/_sources/atomicfeaturespackage.atomicproperties.rst.txt
+++ /dev/null
@@ -1,43 +0,0 @@
-atomicfeaturespackage.atomicproperties package
-==============================================
-
-atomicfeaturespackage.atomicproperties.atomic\_properties\_dft module
----------------------------------------------------------------------
-
-.. automodule:: atomicfeaturespackage.atomicproperties.atomic_properties_dft
-   :members:
-   :undoc-members:
-   :show-inheritance:
-
-atomicfeaturespackage.atomicproperties.atomic\_properties\_lda2015 module
--------------------------------------------------------------------------
-
-.. automodule:: atomicfeaturespackage.atomicproperties.atomic_properties_lda2015
-   :members:
-   :undoc-members:
-   :show-inheritance:
-
-atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer module
-------------------------------------------------------------------------
-
-.. automodule:: atomicfeaturespackage.atomicproperties.atomic_properties_matminer
-   :members:
-   :undoc-members:
-   :show-inheritance:
-
-atomicfeaturespackage.atomicproperties.atomic\_properties\_pymat module
------------------------------------------------------------------------
-
-.. automodule:: atomicfeaturespackage.atomicproperties.atomic_properties_pymat
-   :members:
-   :undoc-members:
-   :show-inheritance:
-
-atomicfeaturespackage.atomicproperties.periodictable module
------------------------------------------------------------
-
-.. automodule:: atomicfeaturespackage.atomicproperties.periodictable
-   :members:
-   :undoc-members:
-   :show-inheritance:
-
diff --git a/atomicfeaturespackage/docs/_build/html/_sources/atomicfeaturespackage.metainfo.rst.txt b/atomicfeaturespackage/docs/_build/html/_sources/atomicfeaturespackage.metainfo.rst.txt
deleted file mode 100644
index 379205a..0000000
--- a/atomicfeaturespackage/docs/_build/html/_sources/atomicfeaturespackage.metainfo.rst.txt
+++ /dev/null
@@ -1,10 +0,0 @@
-atomicfeaturespackage.metainfo package
-======================================
-
-
-atomicfeaturespackage.metainfo.metainfo module
-----------------------------------------------
-
-.. automodule:: atomicfeaturespackage.metainfo.metainfo
-   :members:
-
diff --git a/atomicfeaturespackage/docs/_build/html/_sources/atomicfeaturespackage.rst.txt b/atomicfeaturespackage/docs/_build/html/_sources/atomicfeaturespackage.rst.txt
deleted file mode 100644
index 8ac6af5..0000000
--- a/atomicfeaturespackage/docs/_build/html/_sources/atomicfeaturespackage.rst.txt
+++ /dev/null
@@ -1,12 +0,0 @@
-atomic-features-package package
-=============================
-
-Subpackages
------------
-
-.. toctree::
-
-   atomicfeaturespackage.atomicproperties
-   atomicfeaturespackage.metainfo
-
-
diff --git a/atomicfeaturespackage/docs/_build/html/_sources/index.rst.txt b/atomicfeaturespackage/docs/_build/html/_sources/index.rst.txt
deleted file mode 100644
index 7d8c727..0000000
--- a/atomicfeaturespackage/docs/_build/html/_sources/index.rst.txt
+++ /dev/null
@@ -1,26 +0,0 @@
-.. atomic-features-package documentation master file, created by
-   sphinx-quickstart on Wed Apr  7 09:39:02 2021.
-   You can adapt this file completely to your liking, but it should at least
-   contain the root `toctree` directive.
-
-Welcome to atomic-features-package's documentation!
-===================================================
-
-.. toctree::
-   :maxdepth: 2
-   :caption: Contents:
-   
-   ../README.md
-   atomicfeaturespackage.rst
-   ../LICENSE.md
-   ../CONTRIBUTING.md
-   
-
-
-
-Indices and tables
-==================
-
-* :ref:`genindex`
-* :ref:`modindex`
-* :ref:`search`
diff --git a/atomicfeaturespackage/docs/_build/html/_sources/modules.rst.txt b/atomicfeaturespackage/docs/_build/html/_sources/modules.rst.txt
deleted file mode 100644
index 8d31a35..0000000
--- a/atomicfeaturespackage/docs/_build/html/_sources/modules.rst.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-atomicfeaturespackage
-=====================
-
-.. toctree::
-   :maxdepth: 4
-
-   atomicfeaturespackage
diff --git a/atomicfeaturespackage/docs/_build/html/_static/background_b01.png b/atomicfeaturespackage/docs/_build/html/_static/background_b01.png
deleted file mode 100644
index 353f26dde0803aa172c23e21ef6ac068e1253bc8..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 78
zcmeAS@N?(olHy`uVBq!ia0y~yU|<Ge4h9AWhGOSe$qWn(qMj~}Ar*|tKkA>^AD;RD
ezvRFF_RI`M4jl1aPPZR}6neV)xvX<aXaWGMd=;et

diff --git a/atomicfeaturespackage/docs/_build/html/_static/basic.css b/atomicfeaturespackage/docs/_build/html/_static/basic.css
deleted file mode 100644
index 0119285..0000000
--- a/atomicfeaturespackage/docs/_build/html/_static/basic.css
+++ /dev/null
@@ -1,768 +0,0 @@
-/*
- * basic.css
- * ~~~~~~~~~
- *
- * Sphinx stylesheet -- basic theme.
- *
- * :copyright: Copyright 2007-2020 by the Sphinx team, see AUTHORS.
- * :license: BSD, see LICENSE for details.
- *
- */
-
-/* -- main layout ----------------------------------------------------------- */
-
-div.clearer {
-    clear: both;
-}
-
-/* -- relbar ---------------------------------------------------------------- */
-
-div.related {
-    width: 100%;
-    font-size: 90%;
-}
-
-div.related h3 {
-    display: none;
-}
-
-div.related ul {
-    margin: 0;
-    padding: 0 0 0 10px;
-    list-style: none;
-}
-
-div.related li {
-    display: inline;
-}
-
-div.related li.right {
-    float: right;
-    margin-right: 5px;
-}
-
-/* -- sidebar --------------------------------------------------------------- */
-
-div.sphinxsidebarwrapper {
-    padding: 10px 5px 0 10px;
-}
-
-div.sphinxsidebar {
-    float: left;
-    width: 230px;
-    margin-left: -100%;
-    font-size: 90%;
-    word-wrap: break-word;
-    overflow-wrap : break-word;
-}
-
-div.sphinxsidebar ul {
-    list-style: none;
-}
-
-div.sphinxsidebar ul ul,
-div.sphinxsidebar ul.want-points {
-    margin-left: 20px;
-    list-style: square;
-}
-
-div.sphinxsidebar ul ul {
-    margin-top: 0;
-    margin-bottom: 0;
-}
-
-div.sphinxsidebar form {
-    margin-top: 10px;
-}
-
-div.sphinxsidebar input {
-    border: 1px solid #98dbcc;
-    font-family: sans-serif;
-    font-size: 1em;
-}
-
-div.sphinxsidebar #searchbox form.search {
-    overflow: hidden;
-}
-
-div.sphinxsidebar #searchbox input[type="text"] {
-    float: left;
-    width: 80%;
-    padding: 0.25em;
-    box-sizing: border-box;
-}
-
-div.sphinxsidebar #searchbox input[type="submit"] {
-    float: left;
-    width: 20%;
-    border-left: none;
-    padding: 0.25em;
-    box-sizing: border-box;
-}
-
-
-img {
-    border: 0;
-    max-width: 100%;
-}
-
-/* -- search page ----------------------------------------------------------- */
-
-ul.search {
-    margin: 10px 0 0 20px;
-    padding: 0;
-}
-
-ul.search li {
-    padding: 5px 0 5px 20px;
-    background-image: url(file.png);
-    background-repeat: no-repeat;
-    background-position: 0 7px;
-}
-
-ul.search li a {
-    font-weight: bold;
-}
-
-ul.search li div.context {
-    color: #888;
-    margin: 2px 0 0 30px;
-    text-align: left;
-}
-
-ul.keywordmatches li.goodmatch a {
-    font-weight: bold;
-}
-
-/* -- index page ------------------------------------------------------------ */
-
-table.contentstable {
-    width: 90%;
-    margin-left: auto;
-    margin-right: auto;
-}
-
-table.contentstable p.biglink {
-    line-height: 150%;
-}
-
-a.biglink {
-    font-size: 1.3em;
-}
-
-span.linkdescr {
-    font-style: italic;
-    padding-top: 5px;
-    font-size: 90%;
-}
-
-/* -- general index --------------------------------------------------------- */
-
-table.indextable {
-    width: 100%;
-}
-
-table.indextable td {
-    text-align: left;
-    vertical-align: top;
-}
-
-table.indextable ul {
-    margin-top: 0;
-    margin-bottom: 0;
-    list-style-type: none;
-}
-
-table.indextable > tbody > tr > td > ul {
-    padding-left: 0em;
-}
-
-table.indextable tr.pcap {
-    height: 10px;
-}
-
-table.indextable tr.cap {
-    margin-top: 10px;
-    background-color: #f2f2f2;
-}
-
-img.toggler {
-    margin-right: 3px;
-    margin-top: 3px;
-    cursor: pointer;
-}
-
-div.modindex-jumpbox {
-    border-top: 1px solid #ddd;
-    border-bottom: 1px solid #ddd;
-    margin: 1em 0 1em 0;
-    padding: 0.4em;
-}
-
-div.genindex-jumpbox {
-    border-top: 1px solid #ddd;
-    border-bottom: 1px solid #ddd;
-    margin: 1em 0 1em 0;
-    padding: 0.4em;
-}
-
-/* -- domain module index --------------------------------------------------- */
-
-table.modindextable td {
-    padding: 2px;
-    border-collapse: collapse;
-}
-
-/* -- general body styles --------------------------------------------------- */
-
-div.body {
-    min-width: 450px;
-    max-width: 800px;
-}
-
-div.body p, div.body dd, div.body li, div.body blockquote {
-    -moz-hyphens: auto;
-    -ms-hyphens: auto;
-    -webkit-hyphens: auto;
-    hyphens: auto;
-}
-
-a.headerlink {
-    visibility: hidden;
-}
-
-a.brackets:before,
-span.brackets > a:before{
-    content: "[";
-}
-
-a.brackets:after,
-span.brackets > a:after {
-    content: "]";
-}
-
-h1:hover > a.headerlink,
-h2:hover > a.headerlink,
-h3:hover > a.headerlink,
-h4:hover > a.headerlink,
-h5:hover > a.headerlink,
-h6:hover > a.headerlink,
-dt:hover > a.headerlink,
-caption:hover > a.headerlink,
-p.caption:hover > a.headerlink,
-div.code-block-caption:hover > a.headerlink {
-    visibility: visible;
-}
-
-div.body p.caption {
-    text-align: inherit;
-}
-
-div.body td {
-    text-align: left;
-}
-
-.first {
-    margin-top: 0 !important;
-}
-
-p.rubric {
-    margin-top: 30px;
-    font-weight: bold;
-}
-
-img.align-left, .figure.align-left, object.align-left {
-    clear: left;
-    float: left;
-    margin-right: 1em;
-}
-
-img.align-right, .figure.align-right, object.align-right {
-    clear: right;
-    float: right;
-    margin-left: 1em;
-}
-
-img.align-center, .figure.align-center, object.align-center {
-  display: block;
-  margin-left: auto;
-  margin-right: auto;
-}
-
-img.align-default, .figure.align-default {
-  display: block;
-  margin-left: auto;
-  margin-right: auto;
-}
-
-.align-left {
-    text-align: left;
-}
-
-.align-center {
-    text-align: center;
-}
-
-.align-default {
-    text-align: center;
-}
-
-.align-right {
-    text-align: right;
-}
-
-/* -- sidebars -------------------------------------------------------------- */
-
-div.sidebar {
-    margin: 0 0 0.5em 1em;
-    border: 1px solid #ddb;
-    padding: 7px 7px 0 7px;
-    background-color: #ffe;
-    width: 40%;
-    float: right;
-}
-
-p.sidebar-title {
-    font-weight: bold;
-}
-
-/* -- topics ---------------------------------------------------------------- */
-
-div.topic {
-    border: 1px solid #ccc;
-    padding: 7px 7px 0 7px;
-    margin: 10px 0 10px 0;
-}
-
-p.topic-title {
-    font-size: 1.1em;
-    font-weight: bold;
-    margin-top: 10px;
-}
-
-/* -- admonitions ----------------------------------------------------------- */
-
-div.admonition {
-    margin-top: 10px;
-    margin-bottom: 10px;
-    padding: 7px;
-}
-
-div.admonition dt {
-    font-weight: bold;
-}
-
-div.admonition dl {
-    margin-bottom: 0;
-}
-
-p.admonition-title {
-    margin: 0px 10px 5px 0px;
-    font-weight: bold;
-}
-
-div.body p.centered {
-    text-align: center;
-    margin-top: 25px;
-}
-
-/* -- tables ---------------------------------------------------------------- */
-
-table.docutils {
-    border: 0;
-    border-collapse: collapse;
-}
-
-table.align-center {
-    margin-left: auto;
-    margin-right: auto;
-}
-
-table.align-default {
-    margin-left: auto;
-    margin-right: auto;
-}
-
-table caption span.caption-number {
-    font-style: italic;
-}
-
-table caption span.caption-text {
-}
-
-table.docutils td, table.docutils th {
-    padding: 1px 8px 1px 5px;
-    border-top: 0;
-    border-left: 0;
-    border-right: 0;
-    border-bottom: 1px solid #aaa;
-}
-
-table.footnote td, table.footnote th {
-    border: 0 !important;
-}
-
-th {
-    text-align: left;
-    padding-right: 5px;
-}
-
-table.citation {
-    border-left: solid 1px gray;
-    margin-left: 1px;
-}
-
-table.citation td {
-    border-bottom: none;
-}
-
-th > p:first-child,
-td > p:first-child {
-    margin-top: 0px;
-}
-
-th > p:last-child,
-td > p:last-child {
-    margin-bottom: 0px;
-}
-
-/* -- figures --------------------------------------------------------------- */
-
-div.figure {
-    margin: 0.5em;
-    padding: 0.5em;
-}
-
-div.figure p.caption {
-    padding: 0.3em;
-}
-
-div.figure p.caption span.caption-number {
-    font-style: italic;
-}
-
-div.figure p.caption span.caption-text {
-}
-
-/* -- field list styles ----------------------------------------------------- */
-
-table.field-list td, table.field-list th {
-    border: 0 !important;
-}
-
-.field-list ul {
-    margin: 0;
-    padding-left: 1em;
-}
-
-.field-list p {
-    margin: 0;
-}
-
-.field-name {
-    -moz-hyphens: manual;
-    -ms-hyphens: manual;
-    -webkit-hyphens: manual;
-    hyphens: manual;
-}
-
-/* -- hlist styles ---------------------------------------------------------- */
-
-table.hlist td {
-    vertical-align: top;
-}
-
-
-/* -- other body styles ----------------------------------------------------- */
-
-ol.arabic {
-    list-style: decimal;
-}
-
-ol.loweralpha {
-    list-style: lower-alpha;
-}
-
-ol.upperalpha {
-    list-style: upper-alpha;
-}
-
-ol.lowerroman {
-    list-style: lower-roman;
-}
-
-ol.upperroman {
-    list-style: upper-roman;
-}
-
-li > p:first-child {
-    margin-top: 0px;
-}
-
-li > p:last-child {
-    margin-bottom: 0px;
-}
-
-dl.footnote > dt,
-dl.citation > dt {
-    float: left;
-}
-
-dl.footnote > dd,
-dl.citation > dd {
-    margin-bottom: 0em;
-}
-
-dl.footnote > dd:after,
-dl.citation > dd:after {
-    content: "";
-    clear: both;
-}
-
-dl.field-list {
-    display: grid;
-    grid-template-columns: fit-content(30%) auto;
-}
-
-dl.field-list > dt {
-    font-weight: bold;
-    word-break: break-word;
-    padding-left: 0.5em;
-    padding-right: 5px;
-}
-
-dl.field-list > dt:after {
-    content: ":";
-}
-
-dl.field-list > dd {
-    padding-left: 0.5em;
-    margin-top: 0em;
-    margin-left: 0em;
-    margin-bottom: 0em;
-}
-
-dl {
-    margin-bottom: 15px;
-}
-
-dd > p:first-child {
-    margin-top: 0px;
-}
-
-dd ul, dd table {
-    margin-bottom: 10px;
-}
-
-dd {
-    margin-top: 3px;
-    margin-bottom: 10px;
-    margin-left: 30px;
-}
-
-dt:target, span.highlighted {
-    background-color: #fbe54e;
-}
-
-rect.highlighted {
-    fill: #fbe54e;
-}
-
-dl.glossary dt {
-    font-weight: bold;
-    font-size: 1.1em;
-}
-
-.optional {
-    font-size: 1.3em;
-}
-
-.sig-paren {
-    font-size: larger;
-}
-
-.versionmodified {
-    font-style: italic;
-}
-
-.system-message {
-    background-color: #fda;
-    padding: 5px;
-    border: 3px solid red;
-}
-
-.footnote:target  {
-    background-color: #ffa;
-}
-
-.line-block {
-    display: block;
-    margin-top: 1em;
-    margin-bottom: 1em;
-}
-
-.line-block .line-block {
-    margin-top: 0;
-    margin-bottom: 0;
-    margin-left: 1.5em;
-}
-
-.guilabel, .menuselection {
-    font-family: sans-serif;
-}
-
-.accelerator {
-    text-decoration: underline;
-}
-
-.classifier {
-    font-style: oblique;
-}
-
-.classifier:before {
-    font-style: normal;
-    margin: 0.5em;
-    content: ":";
-}
-
-abbr, acronym {
-    border-bottom: dotted 1px;
-    cursor: help;
-}
-
-/* -- code displays --------------------------------------------------------- */
-
-pre {
-    overflow: auto;
-    overflow-y: hidden;  /* fixes display issues on Chrome browsers */
-}
-
-span.pre {
-    -moz-hyphens: none;
-    -ms-hyphens: none;
-    -webkit-hyphens: none;
-    hyphens: none;
-}
-
-td.linenos pre {
-    padding: 5px 0px;
-    border: 0;
-    background-color: transparent;
-    color: #aaa;
-}
-
-table.highlighttable {
-    margin-left: 0.5em;
-}
-
-table.highlighttable td {
-    padding: 0 0.5em 0 0.5em;
-}
-
-div.code-block-caption {
-    padding: 2px 5px;
-    font-size: small;
-}
-
-div.code-block-caption code {
-    background-color: transparent;
-}
-
-div.code-block-caption + div > div.highlight > pre {
-    margin-top: 0;
-}
-
-div.doctest > div.highlight span.gp {  /* gp: Generic.Prompt */
-    user-select: none;
-}
-
-div.code-block-caption span.caption-number {
-    padding: 0.1em 0.3em;
-    font-style: italic;
-}
-
-div.code-block-caption span.caption-text {
-}
-
-div.literal-block-wrapper {
-    padding: 1em 1em 0;
-}
-
-div.literal-block-wrapper div.highlight {
-    margin: 0;
-}
-
-code.descname {
-    background-color: transparent;
-    font-weight: bold;
-    font-size: 1.2em;
-}
-
-code.descclassname {
-    background-color: transparent;
-}
-
-code.xref, a code {
-    background-color: transparent;
-    font-weight: bold;
-}
-
-h1 code, h2 code, h3 code, h4 code, h5 code, h6 code {
-    background-color: transparent;
-}
-
-.viewcode-link {
-    float: right;
-}
-
-.viewcode-back {
-    float: right;
-    font-family: sans-serif;
-}
-
-div.viewcode-block:target {
-    margin: -1px -10px;
-    padding: 0 10px;
-}
-
-/* -- math display ---------------------------------------------------------- */
-
-img.math {
-    vertical-align: middle;
-}
-
-div.body div.math p {
-    text-align: center;
-}
-
-span.eqno {
-    float: right;
-}
-
-span.eqno a.headerlink {
-    position: relative;
-    left: 0px;
-    z-index: 1;
-}
-
-div.math:hover a.headerlink {
-    visibility: visible;
-}
-
-/* -- printout stylesheet --------------------------------------------------- */
-
-@media print {
-    div.document,
-    div.documentwrapper,
-    div.bodywrapper {
-        margin: 0 !important;
-        width: 100%;
-    }
-
-    div.sphinxsidebar,
-    div.related,
-    div.footer,
-    #top-link {
-        display: none;
-    }
-}
\ No newline at end of file
diff --git a/atomicfeaturespackage/docs/_build/html/_static/bizstyle.css b/atomicfeaturespackage/docs/_build/html/_static/bizstyle.css
deleted file mode 100644
index 5a7b3a5..0000000
--- a/atomicfeaturespackage/docs/_build/html/_static/bizstyle.css
+++ /dev/null
@@ -1,499 +0,0 @@
-/*
- * bizstyle.css_t
- * ~~~~~~~~~~~~~~
- *
- * Sphinx stylesheet -- business style theme.
- *
- * :copyright: Copyright 2011-2014 by Sphinx team, see AUTHORS.
- * :license: BSD, see LICENSE for details.
- *
- */
-
-@import url("basic.css");
-
-/* -- page layout ----------------------------------------------------------- */
-
-body {
-    font-family: 'Lucida Grande', 'Lucida Sans Unicode', 'Geneva',
-                 'Verdana', sans-serif;
-    font-size: 14px;
-    letter-spacing: -0.01em;
-    line-height: 150%;
-    text-align: center;
-    background-color: white;
-    background-image: url(background_b01.png);
-    color: black;
-    padding: 0;
-    border-right: 1px solid #336699;
-    border-left: 1px solid #336699;
-
-    margin: 0px 40px 0px 40px;
-}
-
-div.document {
-    background-color: white;
-    text-align: left;
-    background-repeat: repeat-x;
-
-    -moz-box-shadow: 2px 2px 5px #000;
-    -webkit-box-shadow: 2px 2px 5px #000;
-}
-
-div.bodywrapper {
-    margin: 0 0 0 240px;
-    border-left: 1px solid #ccc;
-}
-
-div.body {
-    margin: 0;
-    padding: 0.5em 20px 20px 20px;
-}
-
-div.related {
-    font-size: 1em;
-
-    -moz-box-shadow: 2px 2px 5px #000;
-    -webkit-box-shadow: 2px 2px 5px #000;
-}
-
-div.related ul {
-    background-color: #336699;
-    height: 100%;
-    overflow: hidden;
-    border-top: 1px solid #ddd;
-    border-bottom: 1px solid #ddd;
-}
-
-div.related ul li {
-    color: white;
-    margin: 0;
-    padding: 0;
-    height: 2em;
-    float: left;
-}
-
-div.related ul li.right {
-    float: right;
-    margin-right: 5px;
-}
-
-div.related ul li a {
-    margin: 0;
-    padding: 0 5px 0 5px;
-    line-height: 1.75em;
-    color: #fff;
-}
-
-div.related ul li a:hover {
-    color: #fff;
-    text-decoration: underline;
-}
-
-div.sphinxsidebarwrapper {
-    padding: 0;
-}
-
-div.sphinxsidebar {
-    margin: 0;
-    padding: 0.5em 12px 12px 12px;
-    width: 210px;
-    font-size: 1em;
-    text-align: left;
-}
-
-div.sphinxsidebar h3, div.sphinxsidebar h4 {
-    margin: 1em 0 0.5em 0;
-    font-size: 1em;
-    padding: 0.1em 0 0.1em 0.5em;
-    color: white;
-    border: 1px solid #336699;
-    background-color: #336699;
-}
-
-div.sphinxsidebar h3 a {
-    color: white;
-}
-
-div.sphinxsidebar ul {
-    padding-left: 1.5em;
-    margin-top: 7px;
-    padding: 0;
-    line-height: 130%;
-}
-
-div.sphinxsidebar ul ul {
-    margin-left: 20px;
-}
-
-div.sphinxsidebar input {
-    border: 1px solid #336699;
-}
-
-div.footer {
-    background-color: white;
-    color: #336699;
-    padding: 3px 8px 3px 0;
-    clear: both;
-    font-size: 0.8em;
-    text-align: right;
-    border-bottom: 1px solid #336699;
-
-    -moz-box-shadow: 2px 2px 5px #000;
-    -webkit-box-shadow: 2px 2px 5px #000;
-}
-
-div.footer a {
-    color: #336699;
-    text-decoration: underline;
-}
-
-/* -- body styles ----------------------------------------------------------- */
-
-p {
-    margin: 0.8em 0 0.5em 0;
-}
-
-a {
-    color: #336699;
-    text-decoration: none;
-}
-
-a:hover {
-    color: #336699;
-    text-decoration: underline;
-}
-
-div.body a {
-    text-decoration: underline;
-}
-
-h1, h2, h3 {
-    color: #336699;
-}
-
-h1 {
-    margin: 0;
-    padding: 0.7em 0 0.3em 0;
-    font-size: 1.5em;
-}
-
-h2 {
-    margin: 1.3em 0 0.2em 0;
-    font-size: 1.35em;
-    padding-bottom: .5em;
-    border-bottom: 1px solid #336699;
-}
-
-h3 {
-    margin: 1em 0 -0.3em 0;
-    font-size: 1.2em;
-    padding-bottom: .3em;
-    border-bottom: 1px solid #CCCCCC;
-}
-
-div.body h1 a, div.body h2 a, div.body h3 a,
-div.body h4 a, div.body h5 a, div.body h6 a {
-    color: black!important;
-}
-
-h1 a.anchor, h2 a.anchor, h3 a.anchor,
-h4 a.anchor, h5 a.anchor, h6 a.anchor {
-    display: none;
-    margin: 0 0 0 0.3em;
-    padding: 0 0.2em 0 0.2em;
-    color: #aaa!important;
-}
-
-h1:hover a.anchor, h2:hover a.anchor, h3:hover a.anchor, h4:hover a.anchor,
-h5:hover a.anchor, h6:hover a.anchor {
-    display: inline;
-}
-
-h1 a.anchor:hover, h2 a.anchor:hover, h3 a.anchor:hover, h4 a.anchor:hover,
-h5 a.anchor:hover, h6 a.anchor:hover {
-    color: #777;
-    background-color: #eee;
-}
-
-a.headerlink {
-    color: #c60f0f!important;
-    font-size: 1em;
-    margin-left: 6px;
-    padding: 0 4px 0 4px;
-    text-decoration: none!important;
-}
-
-a.headerlink:hover {
-    background-color: #ccc;
-    color: white!important;
-}
-
-cite, code, tt {
-    font-family: 'Consolas', 'Deja Vu Sans Mono',
-                 'Bitstream Vera Sans Mono', monospace;
-    font-size: 0.95em;
-    letter-spacing: 0.01em;
-}
-
-code {
-    background-color: #F2F2F2;
-    border-bottom: 1px solid #ddd;
-    color: #333;
-}
-
-code.descname, code.descclassname, code.xref {
-    border: 0;
-}
-
-hr {
-    border: 1px solid #abc;
-    margin: 2em;
-}
-
-a code {
-    border: 0;
-    color: #CA7900;
-}
-
-a code:hover {
-    color: #2491CF;
-}
-
-pre {
-    background-color: transparent !important;
-    font-family: 'Consolas', 'Deja Vu Sans Mono',
-                 'Bitstream Vera Sans Mono', monospace;
-    font-size: 0.95em;
-    letter-spacing: 0.015em;
-    line-height: 120%;
-    padding: 0.5em;
-    border-right: 5px solid #ccc;
-    border-left: 5px solid #ccc;
-}
-
-pre a {
-    color: inherit;
-    text-decoration: underline;
-}
-
-td.linenos pre {
-    padding: 0.5em 0;
-}
-
-div.quotebar {
-    background-color: #f8f8f8;
-    max-width: 250px;
-    float: right;
-    padding: 2px 7px;
-    border: 1px solid #ccc;
-}
-
-div.topic {
-    background-color: #f8f8f8;
-}
-
-table {
-    border-collapse: collapse;
-    margin: 0 -0.5em 0 -0.5em;
-}
-
-table td, table th {
-    padding: 0.2em 0.5em 0.2em 0.5em;
-}
-
-div.admonition {
-    font-size: 0.9em;
-    margin: 1em 0 1em 0;
-    border: 3px solid #cccccc;
-    background-color: #f7f7f7;
-    padding: 0;
-}
-
-div.admonition p {
-    margin: 0.5em 1em 0.5em 1em;
-    padding: 0;
-}
-
-div.admonition li p {
-    margin-left: 0;
-}
-
-div.admonition pre, div.warning pre {
-    margin: 0;
-}
-
-div.highlight {
-    margin: 0.4em 1em;
-}
-
-div.admonition p.admonition-title {
-    margin: 0;
-    padding: 0.1em 0 0.1em 0.5em;
-    color: white;
-    border-bottom: 3px solid #cccccc;
-    font-weight: bold;
-    background-color: #165e83;
-}
-
-div.danger    { border: 3px solid #f0908d; background-color: #f0cfa0; }
-div.error     { border: 3px solid #f0908d; background-color: #ede4cd; }
-div.warning   { border: 3px solid #f8b862; background-color: #f0cfa0; }
-div.caution   { border: 3px solid #f8b862; background-color: #ede4cd; }
-div.attention { border: 3px solid #f8b862; background-color: #f3f3f3; }
-div.important { border: 3px solid #f0cfa0; background-color: #ede4cd; }
-div.note      { border: 3px solid #f0cfa0; background-color: #f3f3f3; }
-div.hint      { border: 3px solid #bed2c3; background-color: #f3f3f3; }
-div.tip       { border: 3px solid #bed2c3; background-color: #f3f3f3; }
-
-div.danger p.admonition-title, div.error p.admonition-title {
-    background-color: #b7282e;
-    border-bottom: 3px solid #f0908d;
-}
-
-div.caution p.admonition-title,
-div.warning p.admonition-title,
-div.attention p.admonition-title {
-    background-color: #f19072;
-    border-bottom: 3px solid #f8b862;
-}
-
-div.note p.admonition-title, div.important p.admonition-title {
-    background-color: #f8b862;
-    border-bottom: 3px solid #f0cfa0;
-}
-
-div.hint p.admonition-title, div.tip p.admonition-title {
-    background-color: #7ebea5;
-    border-bottom: 3px solid #bed2c3;
-}
-
-div.admonition ul, div.admonition ol,
-div.warning ul, div.warning ol {
-    margin: 0.1em 0.5em 0.5em 3em;
-    padding: 0;
-}
-
-div.versioninfo {
-    margin: 1em 0 0 0;
-    border: 1px solid #ccc;
-    background-color: #DDEAF0;
-    padding: 8px;
-    line-height: 1.3em;
-    font-size: 0.9em;
-}
-
-.viewcode-back {
-    font-family: 'Lucida Grande', 'Lucida Sans Unicode', 'Geneva',
-                 'Verdana', sans-serif;
-}
-
-div.viewcode-block:target {
-    background-color: #f4debf;
-    border-top: 1px solid #ac9;
-    border-bottom: 1px solid #ac9;
-}
-
-p.versionchanged span.versionmodified {
-    font-size: 0.9em;
-    margin-right: 0.2em;
-    padding: 0.1em;
-    background-color: #DCE6A0;
-}
-
-dl.field-list > dt {
-    color: white;
-    background-color: #82A0BE;
-}
-
-dl.field-list > dd {
-    background-color: #f7f7f7;
-}
-
-/* -- table styles ---------------------------------------------------------- */
-
-table.docutils {
-    margin: 1em 0;
-    padding: 0;
-    border: 1px solid white;
-    background-color: #f7f7f7;
-}
-
-table.docutils td, table.docutils th {
-    padding: 1px 8px 1px 5px;
-    border-top: 0;
-    border-left: 0;
-    border-right: 1px solid white;
-    border-bottom: 1px solid white;
-}
-
-table.docutils td p {
-    margin-top: 0;
-    margin-bottom: 0.3em;
-}
-
-table.field-list td, table.field-list th {
-    border: 0 !important;
-    word-break: break-word;
-}
-
-table.footnote td, table.footnote th {
-    border: 0 !important;
-}
-
-th {
-    color: white;
-    text-align: left;
-    padding-right: 5px;
-    background-color: #82A0BE;
-}
-
-div.literal-block-wrapper div.code-block-caption {
-    background-color: #EEE;
-    border-style: solid;
-    border-color: #CCC;
-    border-width: 1px 5px;
-}
-
-/* WIDE DESKTOP STYLE */
-@media only screen and (min-width: 1176px) {
-body {
-    margin: 0 40px 0 40px;
-}
-}
-
-/* TABLET STYLE */
-@media only screen and (min-width: 768px) and (max-width: 991px) {
-body {
-    margin: 0 40px 0 40px;
-}
-}
-
-/* MOBILE LAYOUT (PORTRAIT/320px) */
-@media only screen and (max-width: 767px) {
-body {
-    margin: 0;
-}
-div.bodywrapper {
-    margin: 0;
-    width: 100%;
-    border: none;
-}
-div.sphinxsidebar {
-    display: none;
-}
-}
-
-/* MOBILE LAYOUT (LANDSCAPE/480px) */
-@media only screen and (min-width: 480px) and (max-width: 767px) {
-body {
-    margin: 0 20px 0 20px;
-}
-}
-
-/* RETINA OVERRIDES */
-@media
-only screen and (-webkit-min-device-pixel-ratio: 2),
-only screen and (min-device-pixel-ratio: 2) {
-}
-
-/* -- end ------------------------------------------------------------------- */
\ No newline at end of file
diff --git a/atomicfeaturespackage/docs/_build/html/_static/bizstyle.js b/atomicfeaturespackage/docs/_build/html/_static/bizstyle.js
deleted file mode 100644
index d969d70..0000000
--- a/atomicfeaturespackage/docs/_build/html/_static/bizstyle.js
+++ /dev/null
@@ -1,41 +0,0 @@
-//
-// bizstyle.js
-// ~~~~~~~~~~~
-//
-// Sphinx javascript -- for bizstyle theme.
-//
-// This theme was created by referring to 'sphinxdoc'
-//
-// :copyright: Copyright 2012-2014 by Sphinx team, see AUTHORS.
-// :license: BSD, see LICENSE for details.
-//
-$(document).ready(function(){
-    if (navigator.userAgent.indexOf('iPhone') > 0 ||
-        navigator.userAgent.indexOf('Android') > 0) {
-        $("li.nav-item-0 a").text("Top");
-    }
-
-    $("div.related:first ul li:not(.right) a").slice(1).each(function(i, item){
-        if (item.text.length > 20) {
-            var tmpstr = item.text
-            $(item).attr("title", tmpstr);
-            $(item).text(tmpstr.substr(0, 17) + "...");
-        }
-    });
-    $("div.related:last ul li:not(.right) a").slice(1).each(function(i, item){
-        if (item.text.length > 20) {
-            var tmpstr = item.text
-            $(item).attr("title", tmpstr);
-            $(item).text(tmpstr.substr(0, 17) + "...");
-        }
-    });
-});
-
-$(window).resize(function(){
-    if ($(window).width() <= 776) {
-        $("li.nav-item-0 a").text("Top");
-    }
-    else {
-        $("li.nav-item-0 a").text("atomic-features-package  documentation");
-    }
-});
\ No newline at end of file
diff --git a/atomicfeaturespackage/docs/_build/html/_static/css3-mediaqueries.js b/atomicfeaturespackage/docs/_build/html/_static/css3-mediaqueries.js
deleted file mode 100644
index 59735f5..0000000
--- a/atomicfeaturespackage/docs/_build/html/_static/css3-mediaqueries.js
+++ /dev/null
@@ -1 +0,0 @@
-if(typeof Object.create!=="function"){Object.create=function(e){function t(){}t.prototype=e;return new t}}var ua={toString:function(){return navigator.userAgent},test:function(e){return this.toString().toLowerCase().indexOf(e.toLowerCase())>-1}};ua.version=(ua.toString().toLowerCase().match(/[\s\S]+(?:rv|it|ra|ie)[\/: ]([\d.]+)/)||[])[1];ua.webkit=ua.test("webkit");ua.gecko=ua.test("gecko")&&!ua.webkit;ua.opera=ua.test("opera");ua.ie=ua.test("msie")&&!ua.opera;ua.ie6=ua.ie&&document.compatMode&&typeof document.documentElement.style.maxHeight==="undefined";ua.ie7=ua.ie&&document.documentElement&&typeof document.documentElement.style.maxHeight!=="undefined"&&typeof XDomainRequest==="undefined";ua.ie8=ua.ie&&typeof XDomainRequest!=="undefined";var domReady=function(){var e=[];var t=function(){if(!arguments.callee.done){arguments.callee.done=true;for(var t=0;t<e.length;t++){e[t]()}}};if(document.addEventListener){document.addEventListener("DOMContentLoaded",t,false)}if(ua.ie){(function(){try{document.documentElement.doScroll("left")}catch(e){setTimeout(arguments.callee,50);return}t()})();document.onreadystatechange=function(){if(document.readyState==="complete"){document.onreadystatechange=null;t()}}}if(ua.webkit&&document.readyState){(function(){if(document.readyState!=="loading"){t()}else{setTimeout(arguments.callee,10)}})()}window.onload=t;return function(t){if(typeof t==="function"){e[e.length]=t}return t}}();var cssHelper=function(){var e={BLOCKS:/[^\s{;][^{;]*\{(?:[^{}]*\{[^{}]*\}[^{}]*|[^{}]*)*\}/g,BLOCKS_INSIDE:/[^\s{][^{]*\{[^{}]*\}/g,DECLARATIONS:/[a-zA-Z\-]+[^;]*:[^;]+;/g,RELATIVE_URLS:/url\(['"]?([^\/\)'"][^:\)'"]+)['"]?\)/g,REDUNDANT_COMPONENTS:/(?:\/\*([^*\\\\]|\*(?!\/))+\*\/|@import[^;]+;)/g,REDUNDANT_WHITESPACE:/\s*(,|:|;|\{|\})\s*/g,WHITESPACE_IN_PARENTHESES:/\(\s*(\S*)\s*\)/g,MORE_WHITESPACE:/\s{2,}/g,FINAL_SEMICOLONS:/;\}/g,NOT_WHITESPACE:/\S+/g};var t,n=false;var r=[];var s=function(e){if(typeof e==="function"){r[r.length]=e}};var o=function(){for(var e=0;e<r.length;e++){r[e](t)}};var u={};var a=function(e,t){if(u[e]){var n=u[e].listeners;if(n){for(var r=0;r<n.length;r++){n[r](t)}}}};var f=function(e,t,n){if(ua.ie&&!window.XMLHttpRequest){window.XMLHttpRequest=function(){return new ActiveXObject("Microsoft.XMLHTTP")}}if(!XMLHttpRequest){return""}var r=new XMLHttpRequest;try{r.open("get",e,true);r.setRequestHeader("X_REQUESTED_WITH","XMLHttpRequest")}catch(i){n();return}var s=false;setTimeout(function(){s=true},5e3);document.documentElement.style.cursor="progress";r.onreadystatechange=function(){if(r.readyState===4&&!s){if(!r.status&&location.protocol==="file:"||r.status>=200&&r.status<300||r.status===304||navigator.userAgent.indexOf("Safari")>-1&&typeof r.status==="undefined"){t(r.responseText)}else{n()}document.documentElement.style.cursor="";r=null}};r.send("")};var l=function(t){t=t.replace(e.REDUNDANT_COMPONENTS,"");t=t.replace(e.REDUNDANT_WHITESPACE,"$1");t=t.replace(e.WHITESPACE_IN_PARENTHESES,"($1)");t=t.replace(e.MORE_WHITESPACE," ");t=t.replace(e.FINAL_SEMICOLONS,"}");return t};var c={stylesheet:function(t){var n={};var r=[],i=[],s=[],o=[];var u=t.cssHelperText;var a=t.getAttribute("media");if(a){var f=a.toLowerCase().split(",")}else{var f=["all"]}for(var l=0;l<f.length;l++){r[r.length]=c.mediaQuery(f[l],n)}var h=u.match(e.BLOCKS);if(h!==null){for(var l=0;l<h.length;l++){if(h[l].substring(0,7)==="@media "){var p=c.mediaQueryList(h[l],n);s=s.concat(p.getRules());i[i.length]=p}else{s[s.length]=o[o.length]=c.rule(h[l],n,null)}}}n.element=t;n.getCssText=function(){return u};n.getAttrMediaQueries=function(){return r};n.getMediaQueryLists=function(){return i};n.getRules=function(){return s};n.getRulesWithoutMQ=function(){return o};return n},mediaQueryList:function(t,n){var r={};var i=t.indexOf("{");var s=t.substring(0,i);t=t.substring(i+1,t.length-1);var o=[],u=[];var a=s.toLowerCase().substring(7).split(",");for(var f=0;f<a.length;f++){o[o.length]=c.mediaQuery(a[f],r)}var l=t.match(e.BLOCKS_INSIDE);if(l!==null){for(f=0;f<l.length;f++){u[u.length]=c.rule(l[f],n,r)}}r.type="mediaQueryList";r.getMediaQueries=function(){return o};r.getRules=function(){return u};r.getListText=function(){return s};r.getCssText=function(){return t};return r},mediaQuery:function(t,n){t=t||"";var r,i;if(n.type==="mediaQueryList"){r=n}else{i=n}var s=false,o;var u=[];var a=true;var f=t.match(e.NOT_WHITESPACE);for(var l=0;l<f.length;l++){var c=f[l];if(!o&&(c==="not"||c==="only")){if(c==="not"){s=true}}else if(!o){o=c}else if(c.charAt(0)==="("){var h=c.substring(1,c.length-1).split(":");u[u.length]={mediaFeature:h[0],value:h[1]||null}}}return{getQueryText:function(){return t},getAttrStyleSheet:function(){return i||null},getList:function(){return r||null},getValid:function(){return a},getNot:function(){return s},getMediaType:function(){return o},getExpressions:function(){return u}}},rule:function(e,t,n){var r={};var i=e.indexOf("{");var s=e.substring(0,i);var o=s.split(",");var u=[];var a=e.substring(i+1,e.length-1).split(";");for(var f=0;f<a.length;f++){u[u.length]=c.declaration(a[f],r)}r.getStylesheet=function(){return t||null};r.getMediaQueryList=function(){return n||null};r.getSelectors=function(){return o};r.getSelectorText=function(){return s};r.getDeclarations=function(){return u};r.getPropertyValue=function(e){for(var t=0;t<u.length;t++){if(u[t].getProperty()===e){return u[t].getValue()}}return null};return r},declaration:function(e,t){var n=e.indexOf(":");var r=e.substring(0,n);var i=e.substring(n+1);return{getRule:function(){return t||null},getProperty:function(){return r},getValue:function(){return i}}}};var h=function(e){if(typeof e.cssHelperText!=="string"){return}var n={stylesheet:null,mediaQueryLists:[],rules:[],selectors:{},declarations:[],properties:{}};var r=n.stylesheet=c.stylesheet(e);var s=n.mediaQueryLists=r.getMediaQueryLists();var o=n.rules=r.getRules();var u=n.selectors;var a=function(e){var t=e.getSelectors();for(var n=0;n<t.length;n++){var r=t[n];if(!u[r]){u[r]=[]}u[r][u[r].length]=e}};for(i=0;i<o.length;i++){a(o[i])}var f=n.declarations;for(i=0;i<o.length;i++){f=n.declarations=f.concat(o[i].getDeclarations())}var l=n.properties;for(i=0;i<f.length;i++){var h=f[i].getProperty();if(!l[h]){l[h]=[]}l[h][l[h].length]=f[i]}e.cssHelperParsed=n;t[t.length]=e;return n};var p=function(e,t){return;e.cssHelperText=l(t||e.innerHTML);return h(e)};var d=function(){n=true;t=[];var r=[];var i=function(){for(var e=0;e<r.length;e++){h(r[e])}var t=document.getElementsByTagName("style");for(e=0;e<t.length;e++){p(t[e])}n=false;o()};var s=document.getElementsByTagName("link");for(var u=0;u<s.length;u++){var a=s[u];if(a.getAttribute("rel").indexOf("style")>-1&&a.href&&a.href.length!==0&&!a.disabled){r[r.length]=a}}if(r.length>0){var c=0;var d=function(){c++;if(c===r.length){i()}};var v=function(t){var n=t.href;f(n,function(r){r=l(r).replace(e.RELATIVE_URLS,"url("+n.substring(0,n.lastIndexOf("/"))+"/$1)");t.cssHelperText=r;d()},d)};for(u=0;u<r.length;u++){v(r[u])}}else{i()}};var v={stylesheets:"array",mediaQueryLists:"array",rules:"array",selectors:"object",declarations:"array",properties:"object"};var m={stylesheets:null,mediaQueryLists:null,rules:null,selectors:null,declarations:null,properties:null};var g=function(e,t){if(m[e]!==null){if(v[e]==="array"){return m[e]=m[e].concat(t)}else{var n=m[e];for(var r in t){if(t.hasOwnProperty(r)){if(!n[r]){n[r]=t[r]}else{n[r]=n[r].concat(t[r])}}}return n}}};var y=function(e){m[e]=v[e]==="array"?[]:{};for(var n=0;n<t.length;n++){var r=e==="stylesheets"?"stylesheet":e;g(e,t[n].cssHelperParsed[r])}return m[e]};var b=function(e){if(typeof window.innerWidth!="undefined"){return window["inner"+e]}else if(typeof document.documentElement!=="undefined"&&typeof document.documentElement.clientWidth!=="undefined"&&document.documentElement.clientWidth!=0){return document.documentElement["client"+e]}};return{addStyle:function(e,t,n){var r=document.createElement("style");r.setAttribute("type","text/css");if(t&&t.length>0){r.setAttribute("media",t.join(","))}document.getElementsByTagName("head")[0].appendChild(r);if(r.styleSheet){r.styleSheet.cssText=e}else{r.appendChild(document.createTextNode(e))}r.addedWithCssHelper=true;if(typeof n==="undefined"||n===true){cssHelper.parsed(function(t){var n=p(r,e);for(var i in n){if(n.hasOwnProperty(i)){g(i,n[i])}}a("newStyleParsed",r)})}else{r.parsingDisallowed=true}return r},removeStyle:function(e){return e.parentNode.removeChild(e)},parsed:function(e){if(n){s(e)}else{if(typeof t!=="undefined"){if(typeof e==="function"){e(t)}}else{s(e);d()}}},stylesheets:function(e){cssHelper.parsed(function(t){e(m.stylesheets||y("stylesheets"))})},mediaQueryLists:function(e){cssHelper.parsed(function(t){e(m.mediaQueryLists||y("mediaQueryLists"))})},rules:function(e){cssHelper.parsed(function(t){e(m.rules||y("rules"))})},selectors:function(e){cssHelper.parsed(function(t){e(m.selectors||y("selectors"))})},declarations:function(e){cssHelper.parsed(function(t){e(m.declarations||y("declarations"))})},properties:function(e){cssHelper.parsed(function(t){e(m.properties||y("properties"))})},broadcast:a,addListener:function(e,t){if(typeof t==="function"){if(!u[e]){u[e]={listeners:[]}}u[e].listeners[u[e].listeners.length]=t}},removeListener:function(e,t){if(typeof t==="function"&&u[e]){var n=u[e].listeners;for(var r=0;r<n.length;r++){if(n[r]===t){n.splice(r,1);r-=1}}}},getViewportWidth:function(){return b("Width")},getViewportHeight:function(){return b("Height")}}}();domReady(function(){var t;var n={LENGTH_UNIT:/[0-9]+(em|ex|px|in|cm|mm|pt|pc)$/,RESOLUTION_UNIT:/[0-9]+(dpi|dpcm)$/,ASPECT_RATIO:/^[0-9]+\/[0-9]+$/,ABSOLUTE_VALUE:/^[0-9]*(\.[0-9]+)*$/};var r=[];var i=function(){var e="css3-mediaqueries-test";var t=document.createElement("div");t.id=e;var n=cssHelper.addStyle("@media all and (width) { #"+e+" { width: 1px !important; } }",[],false);document.body.appendChild(t);var r=t.offsetWidth===1;n.parentNode.removeChild(n);t.parentNode.removeChild(t);i=function(){return r};return r};var s=function(){t=document.createElement("div");t.style.cssText="position:absolute;top:-9999em;left:-9999em;"+"margin:0;border:none;padding:0;width:1em;font-size:1em;";document.body.appendChild(t);if(t.offsetWidth!==16){t.style.fontSize=16/t.offsetWidth+"em"}t.style.width=""};var o=function(e){t.style.width=e;var n=t.offsetWidth;t.style.width="";return n};var u=function(e,t){var r=e.length;var i=e.substring(0,4)==="min-";var s=!i&&e.substring(0,4)==="max-";if(t!==null){var u;var a;if(n.LENGTH_UNIT.exec(t)){u="length";a=o(t)}else if(n.RESOLUTION_UNIT.exec(t)){u="resolution";a=parseInt(t,10);var f=t.substring((a+"").length)}else if(n.ASPECT_RATIO.exec(t)){u="aspect-ratio";a=t.split("/")}else if(n.ABSOLUTE_VALUE){u="absolute";a=t}else{u="unknown"}}var l,c;if("device-width"===e.substring(r-12,r)){l=screen.width;if(t!==null){if(u==="length"){return i&&l>=a||s&&l<a||!i&&!s&&l===a}else{return false}}else{return l>0}}else if("device-height"===e.substring(r-13,r)){c=screen.height;if(t!==null){if(u==="length"){return i&&c>=a||s&&c<a||!i&&!s&&c===a}else{return false}}else{return c>0}}else if("width"===e.substring(r-5,r)){l=document.documentElement.clientWidth||document.body.clientWidth;if(t!==null){if(u==="length"){return i&&l>=a||s&&l<a||!i&&!s&&l===a}else{return false}}else{return l>0}}else if("height"===e.substring(r-6,r)){c=document.documentElement.clientHeight||document.body.clientHeight;if(t!==null){if(u==="length"){return i&&c>=a||s&&c<a||!i&&!s&&c===a}else{return false}}else{return c>0}}else if("device-aspect-ratio"===e.substring(r-19,r)){return u==="aspect-ratio"&&screen.width*a[1]===screen.height*a[0]}else if("color-index"===e.substring(r-11,r)){var h=Math.pow(2,screen.colorDepth);if(t!==null){if(u==="absolute"){return i&&h>=a||s&&h<a||!i&&!s&&h===a}else{return false}}else{return h>0}}else if("color"===e.substring(r-5,r)){var p=screen.colorDepth;if(t!==null){if(u==="absolute"){return i&&p>=a||s&&p<a||!i&&!s&&p===a}else{return false}}else{return p>0}}else if("resolution"===e.substring(r-10,r)){var d;if(f==="dpcm"){d=o("1cm")}else{d=o("1in")}if(t!==null){if(u==="resolution"){return i&&d>=a||s&&d<a||!i&&!s&&d===a}else{return false}}else{return d>0}}else{return false}};var a=function(e){var t=e.getValid();var n=e.getExpressions();var r=n.length;if(r>0){for(var i=0;i<r&&t;i++){t=u(n[i].mediaFeature,n[i].value)}var s=e.getNot();return t&&!s||s&&!t}return t};var f=function(e,t){var n=e.getMediaQueries();var i={};for(var s=0;s<n.length;s++){var o=n[s].getMediaType();if(n[s].getExpressions().length===0){continue}var u=true;if(o!=="all"&&t&&t.length>0){u=false;for(var f=0;f<t.length;f++){if(t[f]===o){u=true}}}if(u&&a(n[s])){i[o]=true}}var l=[],c=0;for(var h in i){if(i.hasOwnProperty(h)){if(c>0){l[c++]=","}l[c++]=h}}if(l.length>0){r[r.length]=cssHelper.addStyle("@media "+l.join("")+"{"+e.getCssText()+"}",t,false)}};var l=function(e,t){for(var n=0;n<e.length;n++){f(e[n],t)}};var c=function(e){var t=e.getAttrMediaQueries();var n=false;var i={};for(var s=0;s<t.length;s++){if(a(t[s])){i[t[s].getMediaType()]=t[s].getExpressions().length>0}}var o=[],u=[];for(var f in i){if(i.hasOwnProperty(f)){o[o.length]=f;if(i[f]){u[u.length]=f}if(f==="all"){n=true}}}if(u.length>0){r[r.length]=cssHelper.addStyle(e.getCssText(),u,false)}var c=e.getMediaQueryLists();if(n){l(c)}else{l(c,o)}};var h=function(e){for(var t=0;t<e.length;t++){c(e[t])}if(ua.ie){document.documentElement.style.display="block";setTimeout(function(){document.documentElement.style.display=""},0);setTimeout(function(){cssHelper.broadcast("cssMediaQueriesTested")},100)}else{cssHelper.broadcast("cssMediaQueriesTested")}};var p=function(){for(var e=0;e<r.length;e++){cssHelper.removeStyle(r[e])}r=[];cssHelper.stylesheets(h)};var d=0;var v=function(){var e=cssHelper.getViewportWidth();var t=cssHelper.getViewportHeight();if(ua.ie){var n=document.createElement("div");n.style.position="absolute";n.style.top="-9999em";n.style.overflow="scroll";document.body.appendChild(n);d=n.offsetWidth-n.clientWidth;document.body.removeChild(n)}var r;var s=function(){var n=cssHelper.getViewportWidth();var s=cssHelper.getViewportHeight();if(Math.abs(n-e)>d||Math.abs(s-t)>d){e=n;t=s;clearTimeout(r);r=setTimeout(function(){if(!i()){p()}else{cssHelper.broadcast("cssMediaQueriesTested")}},500)}};window.onresize=function(){var e=window.onresize||function(){};return function(){e();s()}}()};var m=document.documentElement;m.style.marginLeft="-32767px";setTimeout(function(){m.style.marginLeft=""},5e3);return function(){if(!i()){cssHelper.addListener("newStyleParsed",function(e){c(e.cssHelperParsed.stylesheet)});cssHelper.addListener("cssMediaQueriesTested",function(){if(ua.ie){m.style.width="1px"}setTimeout(function(){m.style.width="";m.style.marginLeft=""},0);cssHelper.removeListener("cssMediaQueriesTested",arguments.callee)});s();p()}else{m.style.marginLeft=""}v()}}());try{document.execCommand("BackgroundImageCache",false,true)}catch(e){}
diff --git a/atomicfeaturespackage/docs/_build/html/_static/css3-mediaqueries_src.js b/atomicfeaturespackage/docs/_build/html/_static/css3-mediaqueries_src.js
deleted file mode 100644
index f21dd49..0000000
--- a/atomicfeaturespackage/docs/_build/html/_static/css3-mediaqueries_src.js
+++ /dev/null
@@ -1,1104 +0,0 @@
-/*
-css3-mediaqueries.js - CSS Helper and CSS3 Media Queries Enabler
-
-author: Wouter van der Graaf <wouter at dynora nl>
-version: 1.0 (20110330)
-license: MIT
-website: http://code.google.com/p/css3-mediaqueries-js/
-
-W3C spec: http://www.w3.org/TR/css3-mediaqueries/
-
-Note: use of embedded <style> is not recommended when using media queries, because IE  has no way of returning the raw literal css text from a <style> element.
-*/
-
-
-// true prototypal inheritance (http://javascript.crockford.com/prototypal.html)
-if (typeof Object.create !== 'function') {
-	Object.create = function (o) {
-		function F() {}
-		F.prototype = o;
-		return new F();
-	};
-}
-
-
-// user agent sniffing shortcuts
-var ua = {
-	toString: function () {
-		return navigator.userAgent;
-	},
-	test: function (s) {
-		return this.toString().toLowerCase().indexOf(s.toLowerCase()) > -1;
-	}
-};
-ua.version = (ua.toString().toLowerCase().match(/[\s\S]+(?:rv|it|ra|ie)[\/: ]([\d.]+)/) || [])[1];
-ua.webkit = ua.test('webkit');
-ua.gecko = ua.test('gecko') && !ua.webkit;
-ua.opera = ua.test('opera');
-ua.ie = ua.test('msie') && !ua.opera;
-ua.ie6 = ua.ie && document.compatMode && typeof document.documentElement.style.maxHeight === 'undefined';
-ua.ie7 = ua.ie && document.documentElement && typeof document.documentElement.style.maxHeight !== 'undefined' && typeof XDomainRequest === 'undefined';
-ua.ie8 = ua.ie && typeof XDomainRequest !== 'undefined';
-
-
-
-// initialize when DOM content is loaded
-var domReady = function () {
-	var fns = [];
-	var init = function () {
-		if (!arguments.callee.done) { // run init functions once
-			arguments.callee.done = true;
-			for (var i = 0; i < fns.length; i++) {
-				fns[i]();
-			}
-		}
-	};
-
-	// listeners for different browsers
-	if (document.addEventListener) {
-		document.addEventListener('DOMContentLoaded', init, false);
-	}
-	if (ua.ie) {
-		(function () {
-			try {
-				// throws errors until after ondocumentready
-				document.documentElement.doScroll('left');
-			}
-			catch (e) {
-				setTimeout(arguments.callee, 50);
-				return;
-			}
-			// no errors, fire
-			init();
-		})();
-		// trying to always fire before onload
-		document.onreadystatechange = function () {
-			if (document.readyState === 'complete') {
-				document.onreadystatechange = null;
-				init();
-			}
-		};
-	}
-	if (ua.webkit && document.readyState) {
-		(function () {
-			if (document.readyState !== 'loading') {
-				init();
-			}
-			else {
-				setTimeout(arguments.callee, 10);
-			}
-		})();
-	}
-	window.onload = init; // fallback
-
-	return function (fn) { // add fn to init functions
-		if (typeof fn === 'function') {
-			fns[fns.length] = fn;
-		}
-		return fn;
-	};
-}();
-
-
-
-// helper library for parsing css to objects
-var cssHelper = function () {
-
-	var regExp = {
-		BLOCKS: /[^\s{;][^{;]*\{(?:[^{}]*\{[^{}]*\}[^{}]*|[^{}]*)*\}/g,
-		BLOCKS_INSIDE: /[^\s{][^{]*\{[^{}]*\}/g,
-		DECLARATIONS: /[a-zA-Z\-]+[^;]*:[^;]+;/g,
-		RELATIVE_URLS: /url\(['"]?([^\/\)'"][^:\)'"]+)['"]?\)/g,
-		// strip whitespace and comments, @import is evil
-		REDUNDANT_COMPONENTS: /(?:\/\*([^*\\\\]|\*(?!\/))+\*\/|@import[^;]+;)/g,
-		REDUNDANT_WHITESPACE: /\s*(,|:|;|\{|\})\s*/g,
-        WHITESPACE_IN_PARENTHESES: /\(\s*(\S*)\s*\)/g,
-		MORE_WHITESPACE: /\s{2,}/g,
-		FINAL_SEMICOLONS: /;\}/g,
-		NOT_WHITESPACE: /\S+/g
-	};
-
-	var parsed, parsing = false;
-
-	var waiting = [];
-	var wait = function (fn) {
-		if (typeof fn === 'function') {
-			waiting[waiting.length] = fn;
-		}
-	};
-	var ready = function () {
-		for (var i = 0; i < waiting.length; i++) {
-			waiting[i](parsed);
-		}
-	};
-	var events = {};
-	var broadcast = function (n, v) {
-		if (events[n]) {
-			var listeners = events[n].listeners;
-			if (listeners) {
-				for (var i = 0; i < listeners.length; i++) {
-					listeners[i](v);
-				}
-			}
-		}
-	};
-
-	var requestText = function (url, fnSuccess, fnFailure) {
-		if (ua.ie && !window.XMLHttpRequest) {
-			window.XMLHttpRequest = function () {
-				return new ActiveXObject('Microsoft.XMLHTTP');
-			};
-		}
-		if (!XMLHttpRequest) {
-			return '';
-		}
-		var r = new XMLHttpRequest();
-		try {
-			r.open('get', url, true);
-			r.setRequestHeader('X_REQUESTED_WITH', 'XMLHttpRequest');
-		}
-		catch (e) {
-			fnFailure();
-			return;
-		}
-		var done = false;
-		setTimeout(function () {
-			done = true;
-		}, 5000);
-		document.documentElement.style.cursor = 'progress';
-		r.onreadystatechange = function () {
-			if (r.readyState === 4 && !done) {
-				if (!r.status && location.protocol === 'file:' ||
-						(r.status >= 200 && r.status < 300) ||
-						r.status === 304 ||
-						navigator.userAgent.indexOf('Safari') > -1 && typeof r.status === 'undefined') {
-					fnSuccess(r.responseText);
-				}
-				else {
-					fnFailure();
-				}
-				document.documentElement.style.cursor = '';
-				r = null; // avoid memory leaks
-			}
-		};
-		r.send('');
-	};
-
-	var sanitize = function (text) {
-		text = text.replace(regExp.REDUNDANT_COMPONENTS, '');
-		text = text.replace(regExp.REDUNDANT_WHITESPACE, '$1');
-        text = text.replace(regExp.WHITESPACE_IN_PARENTHESES, '($1)');
-		text = text.replace(regExp.MORE_WHITESPACE, ' ');
-		text = text.replace(regExp.FINAL_SEMICOLONS, '}'); // optional final semicolons
-		return text;
-	};
-
-	var objects = {
-	    stylesheet: function (el) {
-	        var o = {};
-	        var amqs = [], mqls = [], rs = [], rsw = [];
-	        var s = el.cssHelperText;
-
-	        // add attribute media queries
-	        var attr = el.getAttribute('media');
-	        if (attr) {
-	            var qts = attr.toLowerCase().split(',')
-	        }
-	        else {
-	            var qts = ['all'] // imply 'all'
-            }
-	        for (var i = 0; i < qts.length; i++) {
-	            amqs[amqs.length] = objects.mediaQuery(qts[i], o);
-	        }
-
-	        // add media query lists and rules (top down order)
-		    var blocks = s.match(regExp.BLOCKS); // @charset is not a block
-		    if (blocks !== null) {
-			    for (var i = 0; i < blocks.length; i++) {
-				    if (blocks[i].substring(0, 7) === '@media ') { // media query (list)
-					    var mql = objects.mediaQueryList(blocks[i], o);
-					    rs = rs.concat(mql.getRules());
-					    mqls[mqls.length] = mql;
-				    }
-				    else { // regular rule set, page context (@page) or font description (@font-face)
-					    rs[rs.length] = rsw[rsw.length] = objects.rule(blocks[i], o, null);
-				    }
-			    }
-		    }
-
-	        o.element = el;
-	        o.getCssText = function () {
-	            return s;
-	        };
-	        o.getAttrMediaQueries = function () {
-	            return amqs;
-	        };
-	        o.getMediaQueryLists = function () {
-	            return mqls;
-	        };
-	        o.getRules = function () {
-	            return rs;
-	        };
-	        o.getRulesWithoutMQ = function () {
-	            return rsw;
-	        };
-	        return o;
-	    },
-
-		mediaQueryList: function (s, stsh) {
-			var o = {};
-			var idx = s.indexOf('{');
-			var lt = s.substring(0, idx);
-			s = s.substring(idx + 1, s.length - 1);
-			var mqs = [], rs = [];
-
-			// add media queries
-			var qts = lt.toLowerCase().substring(7).split(',');
-			for (var i = 0; i < qts.length; i++) { // parse each media query
-				mqs[mqs.length] = objects.mediaQuery(qts[i], o);
-			}
-
-			// add rule sets
-			var rts = s.match(regExp.BLOCKS_INSIDE);
-			if (rts !== null) {
-				for (i = 0; i < rts.length; i++) {
-					rs[rs.length] = objects.rule(rts[i], stsh, o);
-				}
-			}
-
-			o.type = 'mediaQueryList';
-			o.getMediaQueries = function () {
-				return mqs;
-			};
-			o.getRules = function () {
-				return rs;
-			};
-			o.getListText = function () {
-				return lt;
-			};
-			o.getCssText = function () {
-				return s;
-			};
-			return o;
-		},
-
-		mediaQuery: function (s, listOrSheet) {
-			s = s || '';
-			var mql, stsh;
-			if (listOrSheet.type === 'mediaQueryList') {
-			    mql = listOrSheet;
-		    }
-		    else {
-		        stsh = listOrSheet;
-		    }
-			var not = false, type;
-			var expr = [];
-			var valid = true;
-			var tokens = s.match(regExp.NOT_WHITESPACE);
-
-
-
-			for (var i = 0; i < tokens.length; i++) {
-				var token = tokens[i];
-				if (!type && (token === 'not' || token === 'only')) { // 'not' and 'only' keywords
-					// keyword 'only' does nothing, as if it was not present
-					if (token === 'not') {
-						not = true;
-					}
-				}
-				else if (!type) { // media type
-					type = token;
-				}
-				else if (token.charAt(0) === '(') { // media feature expression
-					var pair = token.substring(1, token.length - 1).split(':');
-					expr[expr.length] = {
-						mediaFeature: pair[0],
-						value: pair[1] || null
-					};
-				}
-			}
-
-			return {
-			    getQueryText: function () {
-			        return s;
-			    },
-			    getAttrStyleSheet: function () {
-			        return stsh || null;
-			    },
-				getList: function () {
-					return mql || null;
-				},
-				getValid: function () {
-					return valid;
-				},
-				getNot: function () {
-					return not;
-				},
-				getMediaType: function () {
-					return type;
-				},
-				getExpressions: function () {
-					return expr;
-				}
-			};
-		},
-
-		rule: function (s, stsh, mql) {
-			var o = {};
-			var idx = s.indexOf('{');
-			var st = s.substring(0, idx);
-			var ss = st.split(',');
-			var ds = [];
-			var dts = s.substring(idx + 1, s.length - 1).split(';');
-			for (var i = 0; i < dts.length; i++) {
-				ds[ds.length] = objects.declaration(dts[i], o);
-			}
-
-			o.getStylesheet = function () {
-			    return stsh || null;
-			};
-			o.getMediaQueryList = function () {
-				return mql || null;
-			};
-			o.getSelectors = function () {
-				return ss;
-			};
-			o.getSelectorText = function () {
-				return st;
-			};
-			o.getDeclarations = function () {
-				return ds;
-			};
-			o.getPropertyValue = function (n) {
-				for (var i = 0; i < ds.length; i++) {
-					if (ds[i].getProperty() === n) {
-						return ds[i].getValue();
-					}
-				}
-				return null;
-			};
-			return o;
-		},
-
-		declaration: function (s, r) {
-			var idx = s.indexOf(':');
-			var p = s.substring(0, idx);
-			var v = s.substring(idx + 1);
-			return {
-				getRule: function () {
-					return r || null;
-				},
-				getProperty: function () {
-					return p;
-				},
-				getValue: function () {
-					return v;
-				}
-			};
-		}
-	};
-
-	var parseText = function (el) {
-		if (typeof el.cssHelperText !== 'string') {
-			return;
-		}
-		var o = {
-		    stylesheet: null,
-			mediaQueryLists: [],
-			rules: [],
-			selectors: {},
-			declarations: [],
-			properties: {}
-		};
-
-		// build stylesheet object
-		var stsh = o.stylesheet = objects.stylesheet(el);
-
-		// collect media query lists
-		var mqls = o.mediaQueryLists = stsh.getMediaQueryLists();
-
-		// collect all rules
-		var ors = o.rules = stsh.getRules();
-
-		// collect all selectors
-		var oss = o.selectors;
-		var collectSelectors = function (r) {
-			var ss = r.getSelectors();
-			for (var i = 0; i < ss.length; i++) {
-				var n = ss[i];
-				if (!oss[n]) {
-					oss[n] = [];
-				}
-				oss[n][oss[n].length] = r;
-			}
-		};
-		for (var i = 0; i < ors.length; i++) {
-			collectSelectors(ors[i]);
-		}
-
-		// collect all declarations
-		var ods = o.declarations;
-		for (i = 0; i < ors.length; i++) {
-			ods = o.declarations = ods.concat(ors[i].getDeclarations());
-		}
-
-		// collect all properties
-		var ops = o.properties;
-		for (i = 0; i < ods.length; i++) {
-			var n = ods[i].getProperty();
-			if (!ops[n]) {
-				ops[n] = [];
-			}
-			ops[n][ops[n].length] = ods[i];
-		}
-
-		el.cssHelperParsed = o;
-		parsed[parsed.length] = el;
-		return o;
-	};
-
-	var parseEmbedded = function (el, s) {
-	    return;
-	    // This function doesn't work because of a bug in IE, where innerHTML gives us parsed css instead of raw literal.
-		el.cssHelperText = sanitize(s || el.innerHTML);
-		return parseText(el);
-	};
-
-	var parse = function () {
-		parsing = true;
-		parsed = [];
-		var linked = [];
-		var finish = function () {
-			for (var i = 0; i < linked.length; i++) {
-				parseText(linked[i]);
-			}
-			var styles = document.getElementsByTagName('style');
-			for (i = 0; i < styles.length; i++) {
-				parseEmbedded(styles[i]);
-			}
-			parsing = false;
-			ready();
-		};
-		var links = document.getElementsByTagName('link');
-		for (var i = 0; i < links.length; i++) {
-			var link = links[i];
-			if (link.getAttribute('rel').indexOf('style') > -1 && link.href && link.href.length !== 0 && !link.disabled) {
-				linked[linked.length] = link;
-			}
-		}
-		if (linked.length > 0) {
-			var c = 0;
-			var checkForFinish = function () {
-				c++;
-				if (c === linked.length) { // parse in right order, so after last link is read
-					finish();
-				}
-			};
-			var processLink = function (link) {
-				var href = link.href;
-				requestText(href, function (text) {
-					// fix url's
-					text = sanitize(text).replace(regExp.RELATIVE_URLS, 'url(' + href.substring(0, href.lastIndexOf('/')) + '/$1)');
-					link.cssHelperText = text;
-					checkForFinish();
-				}, checkForFinish);
-			};
-			for (i = 0; i < linked.length; i++) {
-				processLink(linked[i]);
-			}
-		}
-		else {
-			finish();
-		}
-	};
-
-	var types = {
-	    stylesheets: 'array',
-		mediaQueryLists: 'array',
-		rules: 'array',
-		selectors: 'object',
-		declarations: 'array',
-		properties: 'object'
-	};
-
-	var collections = {
-	    stylesheets: null,
-		mediaQueryLists: null,
-		rules: null,
-		selectors: null,
-		declarations: null,
-		properties: null
-	};
-
-	var addToCollection = function (name, v) {
-		if (collections[name] !== null) {
-			if (types[name] === 'array') {
-				return (collections[name] = collections[name].concat(v));
-			}
-			else {
-				var c = collections[name];
-				for (var n in v) {
-					if (v.hasOwnProperty(n)) {
-						if (!c[n]) {
-							c[n] = v[n];
-						}
-						else {
-							c[n] = c[n].concat(v[n]);
-						}
-					}
-				}
-				return c;
-			}
-		}
-	};
-
-	var collect = function (name) {
-		collections[name] = (types[name] === 'array') ? [] : {};
-		for (var i = 0; i < parsed.length; i++) {
-		    var pname = name === 'stylesheets' ? 'stylesheet' : name; // the exception
-			addToCollection(name, parsed[i].cssHelperParsed[pname]);
-		}
-		return collections[name];
-	};
-
-	// viewport size
-	var getViewportSize = function (d) {
-		if (typeof window.innerWidth != 'undefined') {
-			return window['inner' + d];
-		}
-		else if (typeof document.documentElement !== 'undefined'
-				&& typeof document.documentElement.clientWidth !== 'undefined'
-				&& document.documentElement.clientWidth != 0) {
-			return document.documentElement['client' + d];
-		}
-	};
-
-	// public static functions
-	return {
-		addStyle: function (s, mediaTypes, process) {
-			var el = document.createElement('style');
-			el.setAttribute('type', 'text/css');
-			if (mediaTypes && mediaTypes.length > 0) {
-			    el.setAttribute('media', mediaTypes.join(','));
-			}
-			document.getElementsByTagName('head')[0].appendChild(el);
-			if (el.styleSheet) { // IE
-				el.styleSheet.cssText = s;
-			}
-			else {
-				el.appendChild(document.createTextNode(s));
-			}
-			el.addedWithCssHelper = true;
-			if (typeof process === 'undefined' || process === true) {
-				cssHelper.parsed(function (parsed) {
-					var o = parseEmbedded(el, s);
-					for (var n in o) {
-						if (o.hasOwnProperty(n)) {
-							addToCollection(n, o[n]);
-						}
-					}
-					broadcast('newStyleParsed', el);
-				});
-			}
-			else {
-				el.parsingDisallowed = true;
-			}
-			return el;
-		},
-
-		removeStyle: function (el) {
-			return el.parentNode.removeChild(el);
-		},
-
-		parsed: function (fn) {
-			if (parsing) {
-				wait(fn);
-			}
-			else {
-				if (typeof parsed !== 'undefined') {
-					if (typeof fn === 'function') {
-						fn(parsed);
-					}
-				}
-				else {
-					wait(fn);
-					parse();
-				}
-			}
-		},
-
-		stylesheets: function (fn) {
-		    cssHelper.parsed(function (parsed) {
-		        fn(collections.stylesheets || collect('stylesheets'));
-		    });
-		},
-
-		mediaQueryLists: function (fn) {
-			cssHelper.parsed(function (parsed) {
-				fn(collections.mediaQueryLists || collect('mediaQueryLists'));
-			});
-		},
-
-		rules: function (fn) {
-			cssHelper.parsed(function (parsed) {
-				fn(collections.rules || collect('rules'));
-			});
-		},
-
-		selectors: function (fn) {
-			cssHelper.parsed(function (parsed) {
-				fn(collections.selectors || collect('selectors'));
-			});
-		},
-
-		declarations: function (fn) {
-			cssHelper.parsed(function (parsed) {
-				fn(collections.declarations || collect('declarations'));
-			});
-		},
-
-		properties: function (fn) {
-			cssHelper.parsed(function (parsed) {
-				fn(collections.properties || collect('properties'));
-			});
-		},
-
-		broadcast: broadcast,
-
-		addListener: function (n, fn) { // in case n is 'styleadd': added function is called everytime style is added and parsed
-			if (typeof fn === 'function') {
-				if (!events[n]) {
-					events[n] = {
-						listeners: []
-					};
-				}
-				events[n].listeners[events[n].listeners.length] = fn;
-			}
-		},
-
-		removeListener: function (n, fn) {
-			if (typeof fn === 'function' && events[n]) {
-				var ls = events[n].listeners;
-				for (var i = 0; i < ls.length; i++) {
-					if (ls[i] === fn) {
-						ls.splice(i, 1);
-						i -= 1;
-					}
-				}
-			}
-		},
-
-		getViewportWidth: function () {
-			return getViewportSize('Width');
-		},
-
-		getViewportHeight: function () {
-			return getViewportSize('Height');
-		}
-	};
-}();
-
-
-
-// function to test and apply parsed media queries against browser capabilities
-domReady(function enableCssMediaQueries() {
-	var meter;
-
-	var regExp = {
-		LENGTH_UNIT: /[0-9]+(em|ex|px|in|cm|mm|pt|pc)$/,
-		RESOLUTION_UNIT: /[0-9]+(dpi|dpcm)$/,
-		ASPECT_RATIO: /^[0-9]+\/[0-9]+$/,
-		ABSOLUTE_VALUE: /^[0-9]*(\.[0-9]+)*$/
-	};
-
-	var styles = [];
-
-	var nativeSupport = function () {
-		// check support for media queries
-		var id = 'css3-mediaqueries-test';
-		var el = document.createElement('div');
-		el.id = id;
-		var style = cssHelper.addStyle('@media all and (width) { #' + id +
-			' { width: 1px !important; } }', [], false); // false means don't parse this temp style
-		document.body.appendChild(el);
-		var ret = el.offsetWidth === 1;
-		style.parentNode.removeChild(style);
-		el.parentNode.removeChild(el);
-		nativeSupport = function () {
-			return ret;
-		};
-		return ret;
-	};
-
-	var createMeter = function () { // create measuring element
-		meter = document.createElement('div');
-		meter.style.cssText = 'position:absolute;top:-9999em;left:-9999em;' +
-			'margin:0;border:none;padding:0;width:1em;font-size:1em;'; // cssText is needed for IE, works for the others
-		document.body.appendChild(meter);
-		// meter must have browser default font size of 16px
-		if (meter.offsetWidth !== 16) {
-			meter.style.fontSize = 16 / meter.offsetWidth + 'em';
-		}
-		meter.style.width = '';
-	};
-
-	var measure = function (value) {
-		meter.style.width = value;
-		var amount = meter.offsetWidth;
-		meter.style.width = '';
-		return amount;
-	};
-
-	var testMediaFeature = function (feature, value) {
-		// non-testable features: monochrome|min-monochrome|max-monochrome|scan|grid
-		var l = feature.length;
-		var min = (feature.substring(0, 4) === 'min-');
-		var max = (!min && feature.substring(0, 4) === 'max-');
-
-		if (value !== null) { // determine value type and parse to usable amount
-			var valueType;
-			var amount;
-			if (regExp.LENGTH_UNIT.exec(value)) {
-				valueType = 'length';
-				amount = measure(value);
-			}
-			else if (regExp.RESOLUTION_UNIT.exec(value)) {
-				valueType = 'resolution';
-				amount = parseInt(value, 10);
-				var unit = value.substring((amount + '').length);
-			}
-			else if (regExp.ASPECT_RATIO.exec(value)) {
-				valueType = 'aspect-ratio';
-				amount = value.split('/');
-			}
-			else if (regExp.ABSOLUTE_VALUE) {
-				valueType = 'absolute';
-				amount = value;
-			}
-			else {
-				valueType = 'unknown';
-			}
-		}
-
-		var width, height;
-		if ('device-width' === feature.substring(l - 12, l)) { // screen width
-			width = screen.width;
-			if (value !== null) {
-				if (valueType === 'length') {
-					return ((min && width >= amount) || (max && width < amount) || (!min && !max && width === amount));
-				}
-				else {
-					return false;
-				}
-			}
-			else { // test width without value
-				return width > 0;
-			}
-		}
-		else if ('device-height' === feature.substring(l - 13, l)) { // screen height
-			height = screen.height;
-			if (value !== null) {
-				if (valueType === 'length') {
-					return ((min && height >= amount) || (max && height < amount) || (!min && !max && height === amount));
-				}
-				else {
-					return false;
-				}
-			}
-			else { // test height without value
-				return height > 0;
-			}
-		}
-		else if ('width' === feature.substring(l - 5, l)) { // viewport width
-			width = document.documentElement.clientWidth || document.body.clientWidth; // the latter for IE quirks mode
-			if (value !== null) {
-				if (valueType === 'length') {
-					return ((min && width >= amount) || (max && width < amount) || (!min && !max && width === amount));
-				}
-				else {
-					return false;
-				}
-			}
-			else { // test width without value
-				return width > 0;
-			}
-		}
-		else if ('height' === feature.substring(l - 6, l)) { // viewport height
-			height = document.documentElement.clientHeight || document.body.clientHeight; // the latter for IE quirks mode
-			if (value !== null) {
-				if (valueType === 'length') {
-					return ((min && height >= amount) || (max && height < amount) || (!min && !max && height === amount));
-				}
-				else {
-					return false;
-				}
-			}
-			else { // test height without value
-				return height > 0;
-			}
-		}
-		else if ('device-aspect-ratio' === feature.substring(l - 19, l)) { // screen aspect ratio
-			return valueType === 'aspect-ratio' && screen.width * amount[1] === screen.height * amount[0];
-		}
-		else if ('color-index' === feature.substring(l - 11, l)) { // number of colors
-			var colors = Math.pow(2, screen.colorDepth);
-			if (value !== null) {
-				if (valueType === 'absolute') {
-					return ((min && colors >= amount) || (max && colors < amount) || (!min && !max && colors === amount));
-				}
-				else {
-					return false;
-				}
-			}
-			else { // test height without value
-				return colors > 0;
-			}
-		}
-		else if ('color' === feature.substring(l - 5, l)) { // bits per color component
-			var color = screen.colorDepth;
-			if (value !== null) {
-				if (valueType === 'absolute') {
-					return ((min && color >= amount) || (max && color < amount) || (!min && !max && color === amount));
-				}
-				else {
-					return false;
-				}
-			}
-			else { // test height without value
-				return color > 0;
-			}
-		}
-		else if ('resolution' === feature.substring(l - 10, l)) {
-			var res;
-			if (unit === 'dpcm') {
-				res = measure('1cm');
-			}
-			else {
-				res = measure('1in');
-			}
-			if (value !== null) {
-				if (valueType === 'resolution') {
-					return ((min && res >= amount) || (max && res < amount) || (!min && !max && res === amount));
-				}
-				else {
-					return false;
-				}
-			}
-			else { // test height without value
-				return res > 0;
-			}
-		}
-		else {
-			return false;
-		}
-	};
-
-	var testMediaQuery = function (mq) {
-		var test = mq.getValid();
-		var expressions = mq.getExpressions();
-		var l = expressions.length;
-		if (l > 0) {
-			for (var i = 0; i < l && test; i++) {
-				test = testMediaFeature(expressions[i].mediaFeature, expressions[i].value);
-			}
-			var not = mq.getNot();
-			return (test && !not || not && !test);
-		}
-		return test;
-	};
-
-	var testMediaQueryList = function (mql, ts) {
-	    // ts is null or an array with any media type but 'all'.
-		var mqs = mql.getMediaQueries();
-		var t = {};
-		for (var i = 0; i < mqs.length; i++) {
-		    var type = mqs[i].getMediaType();
-		    if (mqs[i].getExpressions().length === 0) {
-		        continue;
-		        // TODO: Browser check! Assuming old browsers do apply the bare media types, even in a list with media queries.
-		    }
-		    var typeAllowed = true;
-		    if (type !== 'all' && ts && ts.length > 0) {
-		        typeAllowed = false;
-		        for (var j = 0; j < ts.length; j++) {
-		            if (ts[j] === type) {
-		                typeAllowed = true;
-                    }
-		        }
-		    }
-			if (typeAllowed && testMediaQuery(mqs[i])) {
-				t[type] = true;
-			}
-		}
-		var s = [], c = 0;
-		for (var n in t) {
-			if (t.hasOwnProperty(n)) {
-				if (c > 0) {
-					s[c++] = ',';
-				}
-				s[c++] = n;
-			}
-		}
-		if (s.length > 0) {
-			styles[styles.length] = cssHelper.addStyle('@media ' + s.join('') + '{' + mql.getCssText() + '}', ts, false);
-		}
-	};
-
-	var testMediaQueryLists = function (mqls, ts) {
-		for (var i = 0; i < mqls.length; i++) {
-			testMediaQueryList(mqls[i], ts);
-		}
-	};
-
-	var testStylesheet = function (stsh) {
-	    var amqs = stsh.getAttrMediaQueries();
-	    var allPassed = false;
-	    var t = {};
-		for (var i = 0; i < amqs.length; i++) {
-			if (testMediaQuery(amqs[i])) {
-				t[amqs[i].getMediaType()] = amqs[i].getExpressions().length > 0;
-			}
-		}
-		var ts = [], tswe = [];
-		for (var n in t) {
-			if (t.hasOwnProperty(n)) {
-				ts[ts.length] = n;
-				if (t[n]) {
-				    tswe[tswe.length] = n
-				}
-			    if (n === 'all') {
-			        allPassed = true;
-                }
-			}
-		}
-		if (tswe.length > 0) { // types with query expressions that passed the test
-		    styles[styles.length] = cssHelper.addStyle(stsh.getCssText(), tswe, false);
-		}
-		var mqls = stsh.getMediaQueryLists();
-		if (allPassed) {
-		    // If 'all' in media attribute passed the test, then test all @media types in linked CSS and create style with those types.
-		    testMediaQueryLists(mqls);
-		}
-		else {
-		    // Or else, test only media attribute types that passed the test and also 'all'.
-		    // For positive '@media all', create style with attribute types that passed their test.
-		    testMediaQueryLists(mqls, ts);
-	    }
-    };
-
-	var testStylesheets = function (stshs) {
-	    for (var i = 0; i < stshs.length; i++) {
-	        testStylesheet(stshs[i]);
-	    }
-	    if (ua.ie) {
-			// force repaint in IE
-			document.documentElement.style.display = 'block';
-			setTimeout(function () {
-				document.documentElement.style.display = '';
-			}, 0);
-			// delay broadcast somewhat for IE
-			setTimeout(function () {
-				cssHelper.broadcast('cssMediaQueriesTested');
-			}, 100);
-		}
-		else {
-			cssHelper.broadcast('cssMediaQueriesTested');
-		}
-	};
-
-	var test = function () {
-		for (var i = 0; i < styles.length; i++) {
-			cssHelper.removeStyle(styles[i]);
-		}
-		styles = [];
-		cssHelper.stylesheets(testStylesheets);
-	};
-
-	var scrollbarWidth = 0;
-	var checkForResize = function () {
-		var cvpw = cssHelper.getViewportWidth();
-		var cvph = cssHelper.getViewportHeight();
-
-		// determine scrollbar width in IE, see resizeHandler
-		if (ua.ie) {
-			var el = document.createElement('div');
-			el.style.position = 'absolute';
-			el.style.top = '-9999em';
-			el.style.overflow = 'scroll';
-			document.body.appendChild(el);
-			scrollbarWidth = el.offsetWidth - el.clientWidth;
-			document.body.removeChild(el);
-		}
-
-		var timer;
-		var resizeHandler = function () {
-			var vpw = cssHelper.getViewportWidth();
-			var vph = cssHelper.getViewportHeight();
-			// check whether vp size has really changed, because IE also triggers resize event when body size changes
-			// 20px allowance to accomodate short appearance of scrollbars in IE in some cases
-			if (Math.abs(vpw - cvpw) > scrollbarWidth || Math.abs(vph - cvph) > scrollbarWidth) {
-				cvpw = vpw;
-				cvph = vph;
-				clearTimeout(timer);
-				timer = setTimeout(function () {
-					if (!nativeSupport()) {
-						test();
-					}
-					else {
-						cssHelper.broadcast('cssMediaQueriesTested');
-					}
-				}, 500);
-			}
-		};
-
-		window.onresize = function () {
-			var x = window.onresize || function () {}; // save original
-			return function () {
-				x();
-				resizeHandler();
-			};
-		}();
-	};
-
-	// prevent jumping of layout by hiding everything before painting <body>
-    var docEl = document.documentElement;
-	docEl.style.marginLeft = '-32767px';
-
-	// make sure it comes back after a while
-	setTimeout(function () {
-		docEl.style.marginLeft = '';
-	}, 5000);
-
-	return function () {
-		if (!nativeSupport()) { // if browser doesn't support media queries
-			cssHelper.addListener('newStyleParsed', function (el) {
-				testStylesheet(el.cssHelperParsed.stylesheet);
-			});
-			// return visibility after media queries are tested
-			cssHelper.addListener('cssMediaQueriesTested', function () {
-				// force repaint in IE by changing width
-				if (ua.ie) {
-					docEl.style.width = '1px';
-				}
-				setTimeout(function () {
-					docEl.style.width = ''; // undo width
-					docEl.style.marginLeft = ''; // undo hide
-				}, 0);
-				// remove this listener to prevent following execution
-				cssHelper.removeListener('cssMediaQueriesTested', arguments.callee);
-			});
-			createMeter();
-			test();
-		}
-		else {
-			docEl.style.marginLeft = ''; // undo visibility hidden
-		}
-		checkForResize();
-	};
-}());
-
-
-// bonus: hotfix for IE6 SP1 (bug KB823727)
-try {
-	document.execCommand('BackgroundImageCache', false, true);
-} catch (e) {}
diff --git a/atomicfeaturespackage/docs/_build/html/_static/doctools.js b/atomicfeaturespackage/docs/_build/html/_static/doctools.js
deleted file mode 100644
index daccd20..0000000
--- a/atomicfeaturespackage/docs/_build/html/_static/doctools.js
+++ /dev/null
@@ -1,315 +0,0 @@
-/*
- * doctools.js
- * ~~~~~~~~~~~
- *
- * Sphinx JavaScript utilities for all documentation.
- *
- * :copyright: Copyright 2007-2020 by the Sphinx team, see AUTHORS.
- * :license: BSD, see LICENSE for details.
- *
- */
-
-/**
- * select a different prefix for underscore
- */
-$u = _.noConflict();
-
-/**
- * make the code below compatible with browsers without
- * an installed firebug like debugger
-if (!window.console || !console.firebug) {
-  var names = ["log", "debug", "info", "warn", "error", "assert", "dir",
-    "dirxml", "group", "groupEnd", "time", "timeEnd", "count", "trace",
-    "profile", "profileEnd"];
-  window.console = {};
-  for (var i = 0; i < names.length; ++i)
-    window.console[names[i]] = function() {};
-}
- */
-
-/**
- * small helper function to urldecode strings
- */
-jQuery.urldecode = function(x) {
-  return decodeURIComponent(x).replace(/\+/g, ' ');
-};
-
-/**
- * small helper function to urlencode strings
- */
-jQuery.urlencode = encodeURIComponent;
-
-/**
- * This function returns the parsed url parameters of the
- * current request. Multiple values per key are supported,
- * it will always return arrays of strings for the value parts.
- */
-jQuery.getQueryParameters = function(s) {
-  if (typeof s === 'undefined')
-    s = document.location.search;
-  var parts = s.substr(s.indexOf('?') + 1).split('&');
-  var result = {};
-  for (var i = 0; i < parts.length; i++) {
-    var tmp = parts[i].split('=', 2);
-    var key = jQuery.urldecode(tmp[0]);
-    var value = jQuery.urldecode(tmp[1]);
-    if (key in result)
-      result[key].push(value);
-    else
-      result[key] = [value];
-  }
-  return result;
-};
-
-/**
- * highlight a given string on a jquery object by wrapping it in
- * span elements with the given class name.
- */
-jQuery.fn.highlightText = function(text, className) {
-  function highlight(node, addItems) {
-    if (node.nodeType === 3) {
-      var val = node.nodeValue;
-      var pos = val.toLowerCase().indexOf(text);
-      if (pos >= 0 &&
-          !jQuery(node.parentNode).hasClass(className) &&
-          !jQuery(node.parentNode).hasClass("nohighlight")) {
-        var span;
-        var isInSVG = jQuery(node).closest("body, svg, foreignObject").is("svg");
-        if (isInSVG) {
-          span = document.createElementNS("http://www.w3.org/2000/svg", "tspan");
-        } else {
-          span = document.createElement("span");
-          span.className = className;
-        }
-        span.appendChild(document.createTextNode(val.substr(pos, text.length)));
-        node.parentNode.insertBefore(span, node.parentNode.insertBefore(
-          document.createTextNode(val.substr(pos + text.length)),
-          node.nextSibling));
-        node.nodeValue = val.substr(0, pos);
-        if (isInSVG) {
-          var rect = document.createElementNS("http://www.w3.org/2000/svg", "rect");
-          var bbox = node.parentElement.getBBox();
-          rect.x.baseVal.value = bbox.x;
-          rect.y.baseVal.value = bbox.y;
-          rect.width.baseVal.value = bbox.width;
-          rect.height.baseVal.value = bbox.height;
-          rect.setAttribute('class', className);
-          addItems.push({
-              "parent": node.parentNode,
-              "target": rect});
-        }
-      }
-    }
-    else if (!jQuery(node).is("button, select, textarea")) {
-      jQuery.each(node.childNodes, function() {
-        highlight(this, addItems);
-      });
-    }
-  }
-  var addItems = [];
-  var result = this.each(function() {
-    highlight(this, addItems);
-  });
-  for (var i = 0; i < addItems.length; ++i) {
-    jQuery(addItems[i].parent).before(addItems[i].target);
-  }
-  return result;
-};
-
-/*
- * backward compatibility for jQuery.browser
- * This will be supported until firefox bug is fixed.
- */
-if (!jQuery.browser) {
-  jQuery.uaMatch = function(ua) {
-    ua = ua.toLowerCase();
-
-    var match = /(chrome)[ \/]([\w.]+)/.exec(ua) ||
-      /(webkit)[ \/]([\w.]+)/.exec(ua) ||
-      /(opera)(?:.*version|)[ \/]([\w.]+)/.exec(ua) ||
-      /(msie) ([\w.]+)/.exec(ua) ||
-      ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec(ua) ||
-      [];
-
-    return {
-      browser: match[ 1 ] || "",
-      version: match[ 2 ] || "0"
-    };
-  };
-  jQuery.browser = {};
-  jQuery.browser[jQuery.uaMatch(navigator.userAgent).browser] = true;
-}
-
-/**
- * Small JavaScript module for the documentation.
- */
-var Documentation = {
-
-  init : function() {
-    this.fixFirefoxAnchorBug();
-    this.highlightSearchWords();
-    this.initIndexTable();
-    if (DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS) {
-      this.initOnKeyListeners();
-    }
-  },
-
-  /**
-   * i18n support
-   */
-  TRANSLATIONS : {},
-  PLURAL_EXPR : function(n) { return n === 1 ? 0 : 1; },
-  LOCALE : 'unknown',
-
-  // gettext and ngettext don't access this so that the functions
-  // can safely bound to a different name (_ = Documentation.gettext)
-  gettext : function(string) {
-    var translated = Documentation.TRANSLATIONS[string];
-    if (typeof translated === 'undefined')
-      return string;
-    return (typeof translated === 'string') ? translated : translated[0];
-  },
-
-  ngettext : function(singular, plural, n) {
-    var translated = Documentation.TRANSLATIONS[singular];
-    if (typeof translated === 'undefined')
-      return (n == 1) ? singular : plural;
-    return translated[Documentation.PLURALEXPR(n)];
-  },
-
-  addTranslations : function(catalog) {
-    for (var key in catalog.messages)
-      this.TRANSLATIONS[key] = catalog.messages[key];
-    this.PLURAL_EXPR = new Function('n', 'return +(' + catalog.plural_expr + ')');
-    this.LOCALE = catalog.locale;
-  },
-
-  /**
-   * add context elements like header anchor links
-   */
-  addContextElements : function() {
-    $('div[id] > :header:first').each(function() {
-      $('<a class="headerlink">\u00B6</a>').
-      attr('href', '#' + this.id).
-      attr('title', _('Permalink to this headline')).
-      appendTo(this);
-    });
-    $('dt[id]').each(function() {
-      $('<a class="headerlink">\u00B6</a>').
-      attr('href', '#' + this.id).
-      attr('title', _('Permalink to this definition')).
-      appendTo(this);
-    });
-  },
-
-  /**
-   * workaround a firefox stupidity
-   * see: https://bugzilla.mozilla.org/show_bug.cgi?id=645075
-   */
-  fixFirefoxAnchorBug : function() {
-    if (document.location.hash && $.browser.mozilla)
-      window.setTimeout(function() {
-        document.location.href += '';
-      }, 10);
-  },
-
-  /**
-   * highlight the search words provided in the url in the text
-   */
-  highlightSearchWords : function() {
-    var params = $.getQueryParameters();
-    var terms = (params.highlight) ? params.highlight[0].split(/\s+/) : [];
-    if (terms.length) {
-      var body = $('div.body');
-      if (!body.length) {
-        body = $('body');
-      }
-      window.setTimeout(function() {
-        $.each(terms, function() {
-          body.highlightText(this.toLowerCase(), 'highlighted');
-        });
-      }, 10);
-      $('<p class="highlight-link"><a href="javascript:Documentation.' +
-        'hideSearchWords()">' + _('Hide Search Matches') + '</a></p>')
-          .appendTo($('#searchbox'));
-    }
-  },
-
-  /**
-   * init the domain index toggle buttons
-   */
-  initIndexTable : function() {
-    var togglers = $('img.toggler').click(function() {
-      var src = $(this).attr('src');
-      var idnum = $(this).attr('id').substr(7);
-      $('tr.cg-' + idnum).toggle();
-      if (src.substr(-9) === 'minus.png')
-        $(this).attr('src', src.substr(0, src.length-9) + 'plus.png');
-      else
-        $(this).attr('src', src.substr(0, src.length-8) + 'minus.png');
-    }).css('display', '');
-    if (DOCUMENTATION_OPTIONS.COLLAPSE_INDEX) {
-        togglers.click();
-    }
-  },
-
-  /**
-   * helper function to hide the search marks again
-   */
-  hideSearchWords : function() {
-    $('#searchbox .highlight-link').fadeOut(300);
-    $('span.highlighted').removeClass('highlighted');
-  },
-
-  /**
-   * make the url absolute
-   */
-  makeURL : function(relativeURL) {
-    return DOCUMENTATION_OPTIONS.URL_ROOT + '/' + relativeURL;
-  },
-
-  /**
-   * get the current relative url
-   */
-  getCurrentURL : function() {
-    var path = document.location.pathname;
-    var parts = path.split(/\//);
-    $.each(DOCUMENTATION_OPTIONS.URL_ROOT.split(/\//), function() {
-      if (this === '..')
-        parts.pop();
-    });
-    var url = parts.join('/');
-    return path.substring(url.lastIndexOf('/') + 1, path.length - 1);
-  },
-
-  initOnKeyListeners: function() {
-    $(document).keydown(function(event) {
-      var activeElementType = document.activeElement.tagName;
-      // don't navigate when in search box or textarea
-      if (activeElementType !== 'TEXTAREA' && activeElementType !== 'INPUT' && activeElementType !== 'SELECT'
-          && !event.altKey && !event.ctrlKey && !event.metaKey && !event.shiftKey) {
-        switch (event.keyCode) {
-          case 37: // left
-            var prevHref = $('link[rel="prev"]').prop('href');
-            if (prevHref) {
-              window.location.href = prevHref;
-              return false;
-            }
-          case 39: // right
-            var nextHref = $('link[rel="next"]').prop('href');
-            if (nextHref) {
-              window.location.href = nextHref;
-              return false;
-            }
-        }
-      }
-    });
-  }
-};
-
-// quick alias for translations
-_ = Documentation.gettext;
-
-$(document).ready(function() {
-  Documentation.init();
-});
diff --git a/atomicfeaturespackage/docs/_build/html/_static/documentation_options.js b/atomicfeaturespackage/docs/_build/html/_static/documentation_options.js
deleted file mode 100644
index 4790c4d..0000000
--- a/atomicfeaturespackage/docs/_build/html/_static/documentation_options.js
+++ /dev/null
@@ -1,11 +0,0 @@
-var DOCUMENTATION_OPTIONS = {
-    URL_ROOT: document.getElementById("documentation_options").getAttribute('data-url_root'),
-    VERSION: '',
-    LANGUAGE: 'None',
-    COLLAPSE_INDEX: false,
-    BUILDER: 'html',
-    FILE_SUFFIX: '.html',
-    HAS_SOURCE: true,
-    SOURCELINK_SUFFIX: '.txt',
-    NAVIGATION_WITH_KEYS: false
-};
\ No newline at end of file
diff --git a/atomicfeaturespackage/docs/_build/html/_static/file.png b/atomicfeaturespackage/docs/_build/html/_static/file.png
deleted file mode 100644
index a858a410e4faa62ce324d814e4b816fff83a6fb3..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 286
zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s7o_e}ChEy=Fo!lJ6#wgPI
zU9-A1=eok}ZEQDX(r(*2tb58m$7=u1ea82H)jeO=^6%fjou57xMW{G_5a*B3{pP}1
zS6~0}?_b_epFayX9PiZV3J_7<*U-z(&Te62!(wS=#r62dj~f93Q(yV3O;UNueM4ey
zPF+*P_cxDwe?L<@A-VUOYxn_?IFqgAjDfX>&K+iC+ZOj{hWM55XBY3QXXIt>UXl5V
zY32J_2KpZQFCE-8U%FHkYESx{HDO9L>%8Dl(|ry6XI@BV%vz@ZVSj$)G){LlpS0qd
r#>Mpuckiw~`|AFW`^Ks}LhH4IH@r-6bi2gBz`)??>gTe~DWM4fp;vuF

diff --git a/atomicfeaturespackage/docs/_build/html/_static/jquery-3.4.1.js b/atomicfeaturespackage/docs/_build/html/_static/jquery-3.4.1.js
deleted file mode 100644
index 773ad95..0000000
--- a/atomicfeaturespackage/docs/_build/html/_static/jquery-3.4.1.js
+++ /dev/null
@@ -1,10598 +0,0 @@
-/*!
- * jQuery JavaScript Library v3.4.1
- * https://jquery.com/
- *
- * Includes Sizzle.js
- * https://sizzlejs.com/
- *
- * Copyright JS Foundation and other contributors
- * Released under the MIT license
- * https://jquery.org/license
- *
- * Date: 2019-05-01T21:04Z
- */
-( function( global, factory ) {
-
-	"use strict";
-
-	if ( typeof module === "object" && typeof module.exports === "object" ) {
-
-		// For CommonJS and CommonJS-like environments where a proper `window`
-		// is present, execute the factory and get jQuery.
-		// For environments that do not have a `window` with a `document`
-		// (such as Node.js), expose a factory as module.exports.
-		// This accentuates the need for the creation of a real `window`.
-		// e.g. var jQuery = require("jquery")(window);
-		// See ticket #14549 for more info.
-		module.exports = global.document ?
-			factory( global, true ) :
-			function( w ) {
-				if ( !w.document ) {
-					throw new Error( "jQuery requires a window with a document" );
-				}
-				return factory( w );
-			};
-	} else {
-		factory( global );
-	}
-
-// Pass this if window is not defined yet
-} )( typeof window !== "undefined" ? window : this, function( window, noGlobal ) {
-
-// Edge <= 12 - 13+, Firefox <=18 - 45+, IE 10 - 11, Safari 5.1 - 9+, iOS 6 - 9.1
-// throw exceptions when non-strict code (e.g., ASP.NET 4.5) accesses strict mode
-// arguments.callee.caller (trac-13335). But as of jQuery 3.0 (2016), strict mode should be common
-// enough that all such attempts are guarded in a try block.
-"use strict";
-
-var arr = [];
-
-var document = window.document;
-
-var getProto = Object.getPrototypeOf;
-
-var slice = arr.slice;
-
-var concat = arr.concat;
-
-var push = arr.push;
-
-var indexOf = arr.indexOf;
-
-var class2type = {};
-
-var toString = class2type.toString;
-
-var hasOwn = class2type.hasOwnProperty;
-
-var fnToString = hasOwn.toString;
-
-var ObjectFunctionString = fnToString.call( Object );
-
-var support = {};
-
-var isFunction = function isFunction( obj ) {
-
-      // Support: Chrome <=57, Firefox <=52
-      // In some browsers, typeof returns "function" for HTML <object> elements
-      // (i.e., `typeof document.createElement( "object" ) === "function"`).
-      // We don't want to classify *any* DOM node as a function.
-      return typeof obj === "function" && typeof obj.nodeType !== "number";
-  };
-
-
-var isWindow = function isWindow( obj ) {
-		return obj != null && obj === obj.window;
-	};
-
-
-
-
-	var preservedScriptAttributes = {
-		type: true,
-		src: true,
-		nonce: true,
-		noModule: true
-	};
-
-	function DOMEval( code, node, doc ) {
-		doc = doc || document;
-
-		var i, val,
-			script = doc.createElement( "script" );
-
-		script.text = code;
-		if ( node ) {
-			for ( i in preservedScriptAttributes ) {
-
-				// Support: Firefox 64+, Edge 18+
-				// Some browsers don't support the "nonce" property on scripts.
-				// On the other hand, just using `getAttribute` is not enough as
-				// the `nonce` attribute is reset to an empty string whenever it
-				// becomes browsing-context connected.
-				// See https://github.com/whatwg/html/issues/2369
-				// See https://html.spec.whatwg.org/#nonce-attributes
-				// The `node.getAttribute` check was added for the sake of
-				// `jQuery.globalEval` so that it can fake a nonce-containing node
-				// via an object.
-				val = node[ i ] || node.getAttribute && node.getAttribute( i );
-				if ( val ) {
-					script.setAttribute( i, val );
-				}
-			}
-		}
-		doc.head.appendChild( script ).parentNode.removeChild( script );
-	}
-
-
-function toType( obj ) {
-	if ( obj == null ) {
-		return obj + "";
-	}
-
-	// Support: Android <=2.3 only (functionish RegExp)
-	return typeof obj === "object" || typeof obj === "function" ?
-		class2type[ toString.call( obj ) ] || "object" :
-		typeof obj;
-}
-/* global Symbol */
-// Defining this global in .eslintrc.json would create a danger of using the global
-// unguarded in another place, it seems safer to define global only for this module
-
-
-
-var
-	version = "3.4.1",
-
-	// Define a local copy of jQuery
-	jQuery = function( selector, context ) {
-
-		// The jQuery object is actually just the init constructor 'enhanced'
-		// Need init if jQuery is called (just allow error to be thrown if not included)
-		return new jQuery.fn.init( selector, context );
-	},
-
-	// Support: Android <=4.0 only
-	// Make sure we trim BOM and NBSP
-	rtrim = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;
-
-jQuery.fn = jQuery.prototype = {
-
-	// The current version of jQuery being used
-	jquery: version,
-
-	constructor: jQuery,
-
-	// The default length of a jQuery object is 0
-	length: 0,
-
-	toArray: function() {
-		return slice.call( this );
-	},
-
-	// Get the Nth element in the matched element set OR
-	// Get the whole matched element set as a clean array
-	get: function( num ) {
-
-		// Return all the elements in a clean array
-		if ( num == null ) {
-			return slice.call( this );
-		}
-
-		// Return just the one element from the set
-		return num < 0 ? this[ num + this.length ] : this[ num ];
-	},
-
-	// Take an array of elements and push it onto the stack
-	// (returning the new matched element set)
-	pushStack: function( elems ) {
-
-		// Build a new jQuery matched element set
-		var ret = jQuery.merge( this.constructor(), elems );
-
-		// Add the old object onto the stack (as a reference)
-		ret.prevObject = this;
-
-		// Return the newly-formed element set
-		return ret;
-	},
-
-	// Execute a callback for every element in the matched set.
-	each: function( callback ) {
-		return jQuery.each( this, callback );
-	},
-
-	map: function( callback ) {
-		return this.pushStack( jQuery.map( this, function( elem, i ) {
-			return callback.call( elem, i, elem );
-		} ) );
-	},
-
-	slice: function() {
-		return this.pushStack( slice.apply( this, arguments ) );
-	},
-
-	first: function() {
-		return this.eq( 0 );
-	},
-
-	last: function() {
-		return this.eq( -1 );
-	},
-
-	eq: function( i ) {
-		var len = this.length,
-			j = +i + ( i < 0 ? len : 0 );
-		return this.pushStack( j >= 0 && j < len ? [ this[ j ] ] : [] );
-	},
-
-	end: function() {
-		return this.prevObject || this.constructor();
-	},
-
-	// For internal use only.
-	// Behaves like an Array's method, not like a jQuery method.
-	push: push,
-	sort: arr.sort,
-	splice: arr.splice
-};
-
-jQuery.extend = jQuery.fn.extend = function() {
-	var options, name, src, copy, copyIsArray, clone,
-		target = arguments[ 0 ] || {},
-		i = 1,
-		length = arguments.length,
-		deep = false;
-
-	// Handle a deep copy situation
-	if ( typeof target === "boolean" ) {
-		deep = target;
-
-		// Skip the boolean and the target
-		target = arguments[ i ] || {};
-		i++;
-	}
-
-	// Handle case when target is a string or something (possible in deep copy)
-	if ( typeof target !== "object" && !isFunction( target ) ) {
-		target = {};
-	}
-
-	// Extend jQuery itself if only one argument is passed
-	if ( i === length ) {
-		target = this;
-		i--;
-	}
-
-	for ( ; i < length; i++ ) {
-
-		// Only deal with non-null/undefined values
-		if ( ( options = arguments[ i ] ) != null ) {
-
-			// Extend the base object
-			for ( name in options ) {
-				copy = options[ name ];
-
-				// Prevent Object.prototype pollution
-				// Prevent never-ending loop
-				if ( name === "__proto__" || target === copy ) {
-					continue;
-				}
-
-				// Recurse if we're merging plain objects or arrays
-				if ( deep && copy && ( jQuery.isPlainObject( copy ) ||
-					( copyIsArray = Array.isArray( copy ) ) ) ) {
-					src = target[ name ];
-
-					// Ensure proper type for the source value
-					if ( copyIsArray && !Array.isArray( src ) ) {
-						clone = [];
-					} else if ( !copyIsArray && !jQuery.isPlainObject( src ) ) {
-						clone = {};
-					} else {
-						clone = src;
-					}
-					copyIsArray = false;
-
-					// Never move original objects, clone them
-					target[ name ] = jQuery.extend( deep, clone, copy );
-
-				// Don't bring in undefined values
-				} else if ( copy !== undefined ) {
-					target[ name ] = copy;
-				}
-			}
-		}
-	}
-
-	// Return the modified object
-	return target;
-};
-
-jQuery.extend( {
-
-	// Unique for each copy of jQuery on the page
-	expando: "jQuery" + ( version + Math.random() ).replace( /\D/g, "" ),
-
-	// Assume jQuery is ready without the ready module
-	isReady: true,
-
-	error: function( msg ) {
-		throw new Error( msg );
-	},
-
-	noop: function() {},
-
-	isPlainObject: function( obj ) {
-		var proto, Ctor;
-
-		// Detect obvious negatives
-		// Use toString instead of jQuery.type to catch host objects
-		if ( !obj || toString.call( obj ) !== "[object Object]" ) {
-			return false;
-		}
-
-		proto = getProto( obj );
-
-		// Objects with no prototype (e.g., `Object.create( null )`) are plain
-		if ( !proto ) {
-			return true;
-		}
-
-		// Objects with prototype are plain iff they were constructed by a global Object function
-		Ctor = hasOwn.call( proto, "constructor" ) && proto.constructor;
-		return typeof Ctor === "function" && fnToString.call( Ctor ) === ObjectFunctionString;
-	},
-
-	isEmptyObject: function( obj ) {
-		var name;
-
-		for ( name in obj ) {
-			return false;
-		}
-		return true;
-	},
-
-	// Evaluates a script in a global context
-	globalEval: function( code, options ) {
-		DOMEval( code, { nonce: options && options.nonce } );
-	},
-
-	each: function( obj, callback ) {
-		var length, i = 0;
-
-		if ( isArrayLike( obj ) ) {
-			length = obj.length;
-			for ( ; i < length; i++ ) {
-				if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) {
-					break;
-				}
-			}
-		} else {
-			for ( i in obj ) {
-				if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) {
-					break;
-				}
-			}
-		}
-
-		return obj;
-	},
-
-	// Support: Android <=4.0 only
-	trim: function( text ) {
-		return text == null ?
-			"" :
-			( text + "" ).replace( rtrim, "" );
-	},
-
-	// results is for internal usage only
-	makeArray: function( arr, results ) {
-		var ret = results || [];
-
-		if ( arr != null ) {
-			if ( isArrayLike( Object( arr ) ) ) {
-				jQuery.merge( ret,
-					typeof arr === "string" ?
-					[ arr ] : arr
-				);
-			} else {
-				push.call( ret, arr );
-			}
-		}
-
-		return ret;
-	},
-
-	inArray: function( elem, arr, i ) {
-		return arr == null ? -1 : indexOf.call( arr, elem, i );
-	},
-
-	// Support: Android <=4.0 only, PhantomJS 1 only
-	// push.apply(_, arraylike) throws on ancient WebKit
-	merge: function( first, second ) {
-		var len = +second.length,
-			j = 0,
-			i = first.length;
-
-		for ( ; j < len; j++ ) {
-			first[ i++ ] = second[ j ];
-		}
-
-		first.length = i;
-
-		return first;
-	},
-
-	grep: function( elems, callback, invert ) {
-		var callbackInverse,
-			matches = [],
-			i = 0,
-			length = elems.length,
-			callbackExpect = !invert;
-
-		// Go through the array, only saving the items
-		// that pass the validator function
-		for ( ; i < length; i++ ) {
-			callbackInverse = !callback( elems[ i ], i );
-			if ( callbackInverse !== callbackExpect ) {
-				matches.push( elems[ i ] );
-			}
-		}
-
-		return matches;
-	},
-
-	// arg is for internal usage only
-	map: function( elems, callback, arg ) {
-		var length, value,
-			i = 0,
-			ret = [];
-
-		// Go through the array, translating each of the items to their new values
-		if ( isArrayLike( elems ) ) {
-			length = elems.length;
-			for ( ; i < length; i++ ) {
-				value = callback( elems[ i ], i, arg );
-
-				if ( value != null ) {
-					ret.push( value );
-				}
-			}
-
-		// Go through every key on the object,
-		} else {
-			for ( i in elems ) {
-				value = callback( elems[ i ], i, arg );
-
-				if ( value != null ) {
-					ret.push( value );
-				}
-			}
-		}
-
-		// Flatten any nested arrays
-		return concat.apply( [], ret );
-	},
-
-	// A global GUID counter for objects
-	guid: 1,
-
-	// jQuery.support is not used in Core but other projects attach their
-	// properties to it so it needs to exist.
-	support: support
-} );
-
-if ( typeof Symbol === "function" ) {
-	jQuery.fn[ Symbol.iterator ] = arr[ Symbol.iterator ];
-}
-
-// Populate the class2type map
-jQuery.each( "Boolean Number String Function Array Date RegExp Object Error Symbol".split( " " ),
-function( i, name ) {
-	class2type[ "[object " + name + "]" ] = name.toLowerCase();
-} );
-
-function isArrayLike( obj ) {
-
-	// Support: real iOS 8.2 only (not reproducible in simulator)
-	// `in` check used to prevent JIT error (gh-2145)
-	// hasOwn isn't used here due to false negatives
-	// regarding Nodelist length in IE
-	var length = !!obj && "length" in obj && obj.length,
-		type = toType( obj );
-
-	if ( isFunction( obj ) || isWindow( obj ) ) {
-		return false;
-	}
-
-	return type === "array" || length === 0 ||
-		typeof length === "number" && length > 0 && ( length - 1 ) in obj;
-}
-var Sizzle =
-/*!
- * Sizzle CSS Selector Engine v2.3.4
- * https://sizzlejs.com/
- *
- * Copyright JS Foundation and other contributors
- * Released under the MIT license
- * https://js.foundation/
- *
- * Date: 2019-04-08
- */
-(function( window ) {
-
-var i,
-	support,
-	Expr,
-	getText,
-	isXML,
-	tokenize,
-	compile,
-	select,
-	outermostContext,
-	sortInput,
-	hasDuplicate,
-
-	// Local document vars
-	setDocument,
-	document,
-	docElem,
-	documentIsHTML,
-	rbuggyQSA,
-	rbuggyMatches,
-	matches,
-	contains,
-
-	// Instance-specific data
-	expando = "sizzle" + 1 * new Date(),
-	preferredDoc = window.document,
-	dirruns = 0,
-	done = 0,
-	classCache = createCache(),
-	tokenCache = createCache(),
-	compilerCache = createCache(),
-	nonnativeSelectorCache = createCache(),
-	sortOrder = function( a, b ) {
-		if ( a === b ) {
-			hasDuplicate = true;
-		}
-		return 0;
-	},
-
-	// Instance methods
-	hasOwn = ({}).hasOwnProperty,
-	arr = [],
-	pop = arr.pop,
-	push_native = arr.push,
-	push = arr.push,
-	slice = arr.slice,
-	// Use a stripped-down indexOf as it's faster than native
-	// https://jsperf.com/thor-indexof-vs-for/5
-	indexOf = function( list, elem ) {
-		var i = 0,
-			len = list.length;
-		for ( ; i < len; i++ ) {
-			if ( list[i] === elem ) {
-				return i;
-			}
-		}
-		return -1;
-	},
-
-	booleans = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",
-
-	// Regular expressions
-
-	// http://www.w3.org/TR/css3-selectors/#whitespace
-	whitespace = "[\\x20\\t\\r\\n\\f]",
-
-	// http://www.w3.org/TR/CSS21/syndata.html#value-def-identifier
-	identifier = "(?:\\\\.|[\\w-]|[^\0-\\xa0])+",
-
-	// Attribute selectors: http://www.w3.org/TR/selectors/#attribute-selectors
-	attributes = "\\[" + whitespace + "*(" + identifier + ")(?:" + whitespace +
-		// Operator (capture 2)
-		"*([*^$|!~]?=)" + whitespace +
-		// "Attribute values must be CSS identifiers [capture 5] or strings [capture 3 or capture 4]"
-		"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + identifier + "))|)" + whitespace +
-		"*\\]",
-
-	pseudos = ":(" + identifier + ")(?:\\((" +
-		// To reduce the number of selectors needing tokenize in the preFilter, prefer arguments:
-		// 1. quoted (capture 3; capture 4 or capture 5)
-		"('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|" +
-		// 2. simple (capture 6)
-		"((?:\\\\.|[^\\\\()[\\]]|" + attributes + ")*)|" +
-		// 3. anything else (capture 2)
-		".*" +
-		")\\)|)",
-
-	// Leading and non-escaped trailing whitespace, capturing some non-whitespace characters preceding the latter
-	rwhitespace = new RegExp( whitespace + "+", "g" ),
-	rtrim = new RegExp( "^" + whitespace + "+|((?:^|[^\\\\])(?:\\\\.)*)" + whitespace + "+$", "g" ),
-
-	rcomma = new RegExp( "^" + whitespace + "*," + whitespace + "*" ),
-	rcombinators = new RegExp( "^" + whitespace + "*([>+~]|" + whitespace + ")" + whitespace + "*" ),
-	rdescend = new RegExp( whitespace + "|>" ),
-
-	rpseudo = new RegExp( pseudos ),
-	ridentifier = new RegExp( "^" + identifier + "$" ),
-
-	matchExpr = {
-		"ID": new RegExp( "^#(" + identifier + ")" ),
-		"CLASS": new RegExp( "^\\.(" + identifier + ")" ),
-		"TAG": new RegExp( "^(" + identifier + "|[*])" ),
-		"ATTR": new RegExp( "^" + attributes ),
-		"PSEUDO": new RegExp( "^" + pseudos ),
-		"CHILD": new RegExp( "^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + whitespace +
-			"*(even|odd|(([+-]|)(\\d*)n|)" + whitespace + "*(?:([+-]|)" + whitespace +
-			"*(\\d+)|))" + whitespace + "*\\)|)", "i" ),
-		"bool": new RegExp( "^(?:" + booleans + ")$", "i" ),
-		// For use in libraries implementing .is()
-		// We use this for POS matching in `select`
-		"needsContext": new RegExp( "^" + whitespace + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" +
-			whitespace + "*((?:-\\d)?\\d*)" + whitespace + "*\\)|)(?=[^-]|$)", "i" )
-	},
-
-	rhtml = /HTML$/i,
-	rinputs = /^(?:input|select|textarea|button)$/i,
-	rheader = /^h\d$/i,
-
-	rnative = /^[^{]+\{\s*\[native \w/,
-
-	// Easily-parseable/retrievable ID or TAG or CLASS selectors
-	rquickExpr = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,
-
-	rsibling = /[+~]/,
-
-	// CSS escapes
-	// http://www.w3.org/TR/CSS21/syndata.html#escaped-characters
-	runescape = new RegExp( "\\\\([\\da-f]{1,6}" + whitespace + "?|(" + whitespace + ")|.)", "ig" ),
-	funescape = function( _, escaped, escapedWhitespace ) {
-		var high = "0x" + escaped - 0x10000;
-		// NaN means non-codepoint
-		// Support: Firefox<24
-		// Workaround erroneous numeric interpretation of +"0x"
-		return high !== high || escapedWhitespace ?
-			escaped :
-			high < 0 ?
-				// BMP codepoint
-				String.fromCharCode( high + 0x10000 ) :
-				// Supplemental Plane codepoint (surrogate pair)
-				String.fromCharCode( high >> 10 | 0xD800, high & 0x3FF | 0xDC00 );
-	},
-
-	// CSS string/identifier serialization
-	// https://drafts.csswg.org/cssom/#common-serializing-idioms
-	rcssescape = /([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,
-	fcssescape = function( ch, asCodePoint ) {
-		if ( asCodePoint ) {
-
-			// U+0000 NULL becomes U+FFFD REPLACEMENT CHARACTER
-			if ( ch === "\0" ) {
-				return "\uFFFD";
-			}
-
-			// Control characters and (dependent upon position) numbers get escaped as code points
-			return ch.slice( 0, -1 ) + "\\" + ch.charCodeAt( ch.length - 1 ).toString( 16 ) + " ";
-		}
-
-		// Other potentially-special ASCII characters get backslash-escaped
-		return "\\" + ch;
-	},
-
-	// Used for iframes
-	// See setDocument()
-	// Removing the function wrapper causes a "Permission Denied"
-	// error in IE
-	unloadHandler = function() {
-		setDocument();
-	},
-
-	inDisabledFieldset = addCombinator(
-		function( elem ) {
-			return elem.disabled === true && elem.nodeName.toLowerCase() === "fieldset";
-		},
-		{ dir: "parentNode", next: "legend" }
-	);
-
-// Optimize for push.apply( _, NodeList )
-try {
-	push.apply(
-		(arr = slice.call( preferredDoc.childNodes )),
-		preferredDoc.childNodes
-	);
-	// Support: Android<4.0
-	// Detect silently failing push.apply
-	arr[ preferredDoc.childNodes.length ].nodeType;
-} catch ( e ) {
-	push = { apply: arr.length ?
-
-		// Leverage slice if possible
-		function( target, els ) {
-			push_native.apply( target, slice.call(els) );
-		} :
-
-		// Support: IE<9
-		// Otherwise append directly
-		function( target, els ) {
-			var j = target.length,
-				i = 0;
-			// Can't trust NodeList.length
-			while ( (target[j++] = els[i++]) ) {}
-			target.length = j - 1;
-		}
-	};
-}
-
-function Sizzle( selector, context, results, seed ) {
-	var m, i, elem, nid, match, groups, newSelector,
-		newContext = context && context.ownerDocument,
-
-		// nodeType defaults to 9, since context defaults to document
-		nodeType = context ? context.nodeType : 9;
-
-	results = results || [];
-
-	// Return early from calls with invalid selector or context
-	if ( typeof selector !== "string" || !selector ||
-		nodeType !== 1 && nodeType !== 9 && nodeType !== 11 ) {
-
-		return results;
-	}
-
-	// Try to shortcut find operations (as opposed to filters) in HTML documents
-	if ( !seed ) {
-
-		if ( ( context ? context.ownerDocument || context : preferredDoc ) !== document ) {
-			setDocument( context );
-		}
-		context = context || document;
-
-		if ( documentIsHTML ) {
-
-			// If the selector is sufficiently simple, try using a "get*By*" DOM method
-			// (excepting DocumentFragment context, where the methods don't exist)
-			if ( nodeType !== 11 && (match = rquickExpr.exec( selector )) ) {
-
-				// ID selector
-				if ( (m = match[1]) ) {
-
-					// Document context
-					if ( nodeType === 9 ) {
-						if ( (elem = context.getElementById( m )) ) {
-
-							// Support: IE, Opera, Webkit
-							// TODO: identify versions
-							// getElementById can match elements by name instead of ID
-							if ( elem.id === m ) {
-								results.push( elem );
-								return results;
-							}
-						} else {
-							return results;
-						}
-
-					// Element context
-					} else {
-
-						// Support: IE, Opera, Webkit
-						// TODO: identify versions
-						// getElementById can match elements by name instead of ID
-						if ( newContext && (elem = newContext.getElementById( m )) &&
-							contains( context, elem ) &&
-							elem.id === m ) {
-
-							results.push( elem );
-							return results;
-						}
-					}
-
-				// Type selector
-				} else if ( match[2] ) {
-					push.apply( results, context.getElementsByTagName( selector ) );
-					return results;
-
-				// Class selector
-				} else if ( (m = match[3]) && support.getElementsByClassName &&
-					context.getElementsByClassName ) {
-
-					push.apply( results, context.getElementsByClassName( m ) );
-					return results;
-				}
-			}
-
-			// Take advantage of querySelectorAll
-			if ( support.qsa &&
-				!nonnativeSelectorCache[ selector + " " ] &&
-				(!rbuggyQSA || !rbuggyQSA.test( selector )) &&
-
-				// Support: IE 8 only
-				// Exclude object elements
-				(nodeType !== 1 || context.nodeName.toLowerCase() !== "object") ) {
-
-				newSelector = selector;
-				newContext = context;
-
-				// qSA considers elements outside a scoping root when evaluating child or
-				// descendant combinators, which is not what we want.
-				// In such cases, we work around the behavior by prefixing every selector in the
-				// list with an ID selector referencing the scope context.
-				// Thanks to Andrew Dupont for this technique.
-				if ( nodeType === 1 && rdescend.test( selector ) ) {
-
-					// Capture the context ID, setting it first if necessary
-					if ( (nid = context.getAttribute( "id" )) ) {
-						nid = nid.replace( rcssescape, fcssescape );
-					} else {
-						context.setAttribute( "id", (nid = expando) );
-					}
-
-					// Prefix every selector in the list
-					groups = tokenize( selector );
-					i = groups.length;
-					while ( i-- ) {
-						groups[i] = "#" + nid + " " + toSelector( groups[i] );
-					}
-					newSelector = groups.join( "," );
-
-					// Expand context for sibling selectors
-					newContext = rsibling.test( selector ) && testContext( context.parentNode ) ||
-						context;
-				}
-
-				try {
-					push.apply( results,
-						newContext.querySelectorAll( newSelector )
-					);
-					return results;
-				} catch ( qsaError ) {
-					nonnativeSelectorCache( selector, true );
-				} finally {
-					if ( nid === expando ) {
-						context.removeAttribute( "id" );
-					}
-				}
-			}
-		}
-	}
-
-	// All others
-	return select( selector.replace( rtrim, "$1" ), context, results, seed );
-}
-
-/**
- * Create key-value caches of limited size
- * @returns {function(string, object)} Returns the Object data after storing it on itself with
- *	property name the (space-suffixed) string and (if the cache is larger than Expr.cacheLength)
- *	deleting the oldest entry
- */
-function createCache() {
-	var keys = [];
-
-	function cache( key, value ) {
-		// Use (key + " ") to avoid collision with native prototype properties (see Issue #157)
-		if ( keys.push( key + " " ) > Expr.cacheLength ) {
-			// Only keep the most recent entries
-			delete cache[ keys.shift() ];
-		}
-		return (cache[ key + " " ] = value);
-	}
-	return cache;
-}
-
-/**
- * Mark a function for special use by Sizzle
- * @param {Function} fn The function to mark
- */
-function markFunction( fn ) {
-	fn[ expando ] = true;
-	return fn;
-}
-
-/**
- * Support testing using an element
- * @param {Function} fn Passed the created element and returns a boolean result
- */
-function assert( fn ) {
-	var el = document.createElement("fieldset");
-
-	try {
-		return !!fn( el );
-	} catch (e) {
-		return false;
-	} finally {
-		// Remove from its parent by default
-		if ( el.parentNode ) {
-			el.parentNode.removeChild( el );
-		}
-		// release memory in IE
-		el = null;
-	}
-}
-
-/**
- * Adds the same handler for all of the specified attrs
- * @param {String} attrs Pipe-separated list of attributes
- * @param {Function} handler The method that will be applied
- */
-function addHandle( attrs, handler ) {
-	var arr = attrs.split("|"),
-		i = arr.length;
-
-	while ( i-- ) {
-		Expr.attrHandle[ arr[i] ] = handler;
-	}
-}
-
-/**
- * Checks document order of two siblings
- * @param {Element} a
- * @param {Element} b
- * @returns {Number} Returns less than 0 if a precedes b, greater than 0 if a follows b
- */
-function siblingCheck( a, b ) {
-	var cur = b && a,
-		diff = cur && a.nodeType === 1 && b.nodeType === 1 &&
-			a.sourceIndex - b.sourceIndex;
-
-	// Use IE sourceIndex if available on both nodes
-	if ( diff ) {
-		return diff;
-	}
-
-	// Check if b follows a
-	if ( cur ) {
-		while ( (cur = cur.nextSibling) ) {
-			if ( cur === b ) {
-				return -1;
-			}
-		}
-	}
-
-	return a ? 1 : -1;
-}
-
-/**
- * Returns a function to use in pseudos for input types
- * @param {String} type
- */
-function createInputPseudo( type ) {
-	return function( elem ) {
-		var name = elem.nodeName.toLowerCase();
-		return name === "input" && elem.type === type;
-	};
-}
-
-/**
- * Returns a function to use in pseudos for buttons
- * @param {String} type
- */
-function createButtonPseudo( type ) {
-	return function( elem ) {
-		var name = elem.nodeName.toLowerCase();
-		return (name === "input" || name === "button") && elem.type === type;
-	};
-}
-
-/**
- * Returns a function to use in pseudos for :enabled/:disabled
- * @param {Boolean} disabled true for :disabled; false for :enabled
- */
-function createDisabledPseudo( disabled ) {
-
-	// Known :disabled false positives: fieldset[disabled] > legend:nth-of-type(n+2) :can-disable
-	return function( elem ) {
-
-		// Only certain elements can match :enabled or :disabled
-		// https://html.spec.whatwg.org/multipage/scripting.html#selector-enabled
-		// https://html.spec.whatwg.org/multipage/scripting.html#selector-disabled
-		if ( "form" in elem ) {
-
-			// Check for inherited disabledness on relevant non-disabled elements:
-			// * listed form-associated elements in a disabled fieldset
-			//   https://html.spec.whatwg.org/multipage/forms.html#category-listed
-			//   https://html.spec.whatwg.org/multipage/forms.html#concept-fe-disabled
-			// * option elements in a disabled optgroup
-			//   https://html.spec.whatwg.org/multipage/forms.html#concept-option-disabled
-			// All such elements have a "form" property.
-			if ( elem.parentNode && elem.disabled === false ) {
-
-				// Option elements defer to a parent optgroup if present
-				if ( "label" in elem ) {
-					if ( "label" in elem.parentNode ) {
-						return elem.parentNode.disabled === disabled;
-					} else {
-						return elem.disabled === disabled;
-					}
-				}
-
-				// Support: IE 6 - 11
-				// Use the isDisabled shortcut property to check for disabled fieldset ancestors
-				return elem.isDisabled === disabled ||
-
-					// Where there is no isDisabled, check manually
-					/* jshint -W018 */
-					elem.isDisabled !== !disabled &&
-						inDisabledFieldset( elem ) === disabled;
-			}
-
-			return elem.disabled === disabled;
-
-		// Try to winnow out elements that can't be disabled before trusting the disabled property.
-		// Some victims get caught in our net (label, legend, menu, track), but it shouldn't
-		// even exist on them, let alone have a boolean value.
-		} else if ( "label" in elem ) {
-			return elem.disabled === disabled;
-		}
-
-		// Remaining elements are neither :enabled nor :disabled
-		return false;
-	};
-}
-
-/**
- * Returns a function to use in pseudos for positionals
- * @param {Function} fn
- */
-function createPositionalPseudo( fn ) {
-	return markFunction(function( argument ) {
-		argument = +argument;
-		return markFunction(function( seed, matches ) {
-			var j,
-				matchIndexes = fn( [], seed.length, argument ),
-				i = matchIndexes.length;
-
-			// Match elements found at the specified indexes
-			while ( i-- ) {
-				if ( seed[ (j = matchIndexes[i]) ] ) {
-					seed[j] = !(matches[j] = seed[j]);
-				}
-			}
-		});
-	});
-}
-
-/**
- * Checks a node for validity as a Sizzle context
- * @param {Element|Object=} context
- * @returns {Element|Object|Boolean} The input node if acceptable, otherwise a falsy value
- */
-function testContext( context ) {
-	return context && typeof context.getElementsByTagName !== "undefined" && context;
-}
-
-// Expose support vars for convenience
-support = Sizzle.support = {};
-
-/**
- * Detects XML nodes
- * @param {Element|Object} elem An element or a document
- * @returns {Boolean} True iff elem is a non-HTML XML node
- */
-isXML = Sizzle.isXML = function( elem ) {
-	var namespace = elem.namespaceURI,
-		docElem = (elem.ownerDocument || elem).documentElement;
-
-	// Support: IE <=8
-	// Assume HTML when documentElement doesn't yet exist, such as inside loading iframes
-	// https://bugs.jquery.com/ticket/4833
-	return !rhtml.test( namespace || docElem && docElem.nodeName || "HTML" );
-};
-
-/**
- * Sets document-related variables once based on the current document
- * @param {Element|Object} [doc] An element or document object to use to set the document
- * @returns {Object} Returns the current document
- */
-setDocument = Sizzle.setDocument = function( node ) {
-	var hasCompare, subWindow,
-		doc = node ? node.ownerDocument || node : preferredDoc;
-
-	// Return early if doc is invalid or already selected
-	if ( doc === document || doc.nodeType !== 9 || !doc.documentElement ) {
-		return document;
-	}
-
-	// Update global variables
-	document = doc;
-	docElem = document.documentElement;
-	documentIsHTML = !isXML( document );
-
-	// Support: IE 9-11, Edge
-	// Accessing iframe documents after unload throws "permission denied" errors (jQuery #13936)
-	if ( preferredDoc !== document &&
-		(subWindow = document.defaultView) && subWindow.top !== subWindow ) {
-
-		// Support: IE 11, Edge
-		if ( subWindow.addEventListener ) {
-			subWindow.addEventListener( "unload", unloadHandler, false );
-
-		// Support: IE 9 - 10 only
-		} else if ( subWindow.attachEvent ) {
-			subWindow.attachEvent( "onunload", unloadHandler );
-		}
-	}
-
-	/* Attributes
-	---------------------------------------------------------------------- */
-
-	// Support: IE<8
-	// Verify that getAttribute really returns attributes and not properties
-	// (excepting IE8 booleans)
-	support.attributes = assert(function( el ) {
-		el.className = "i";
-		return !el.getAttribute("className");
-	});
-
-	/* getElement(s)By*
-	---------------------------------------------------------------------- */
-
-	// Check if getElementsByTagName("*") returns only elements
-	support.getElementsByTagName = assert(function( el ) {
-		el.appendChild( document.createComment("") );
-		return !el.getElementsByTagName("*").length;
-	});
-
-	// Support: IE<9
-	support.getElementsByClassName = rnative.test( document.getElementsByClassName );
-
-	// Support: IE<10
-	// Check if getElementById returns elements by name
-	// The broken getElementById methods don't pick up programmatically-set names,
-	// so use a roundabout getElementsByName test
-	support.getById = assert(function( el ) {
-		docElem.appendChild( el ).id = expando;
-		return !document.getElementsByName || !document.getElementsByName( expando ).length;
-	});
-
-	// ID filter and find
-	if ( support.getById ) {
-		Expr.filter["ID"] = function( id ) {
-			var attrId = id.replace( runescape, funescape );
-			return function( elem ) {
-				return elem.getAttribute("id") === attrId;
-			};
-		};
-		Expr.find["ID"] = function( id, context ) {
-			if ( typeof context.getElementById !== "undefined" && documentIsHTML ) {
-				var elem = context.getElementById( id );
-				return elem ? [ elem ] : [];
-			}
-		};
-	} else {
-		Expr.filter["ID"] =  function( id ) {
-			var attrId = id.replace( runescape, funescape );
-			return function( elem ) {
-				var node = typeof elem.getAttributeNode !== "undefined" &&
-					elem.getAttributeNode("id");
-				return node && node.value === attrId;
-			};
-		};
-
-		// Support: IE 6 - 7 only
-		// getElementById is not reliable as a find shortcut
-		Expr.find["ID"] = function( id, context ) {
-			if ( typeof context.getElementById !== "undefined" && documentIsHTML ) {
-				var node, i, elems,
-					elem = context.getElementById( id );
-
-				if ( elem ) {
-
-					// Verify the id attribute
-					node = elem.getAttributeNode("id");
-					if ( node && node.value === id ) {
-						return [ elem ];
-					}
-
-					// Fall back on getElementsByName
-					elems = context.getElementsByName( id );
-					i = 0;
-					while ( (elem = elems[i++]) ) {
-						node = elem.getAttributeNode("id");
-						if ( node && node.value === id ) {
-							return [ elem ];
-						}
-					}
-				}
-
-				return [];
-			}
-		};
-	}
-
-	// Tag
-	Expr.find["TAG"] = support.getElementsByTagName ?
-		function( tag, context ) {
-			if ( typeof context.getElementsByTagName !== "undefined" ) {
-				return context.getElementsByTagName( tag );
-
-			// DocumentFragment nodes don't have gEBTN
-			} else if ( support.qsa ) {
-				return context.querySelectorAll( tag );
-			}
-		} :
-
-		function( tag, context ) {
-			var elem,
-				tmp = [],
-				i = 0,
-				// By happy coincidence, a (broken) gEBTN appears on DocumentFragment nodes too
-				results = context.getElementsByTagName( tag );
-
-			// Filter out possible comments
-			if ( tag === "*" ) {
-				while ( (elem = results[i++]) ) {
-					if ( elem.nodeType === 1 ) {
-						tmp.push( elem );
-					}
-				}
-
-				return tmp;
-			}
-			return results;
-		};
-
-	// Class
-	Expr.find["CLASS"] = support.getElementsByClassName && function( className, context ) {
-		if ( typeof context.getElementsByClassName !== "undefined" && documentIsHTML ) {
-			return context.getElementsByClassName( className );
-		}
-	};
-
-	/* QSA/matchesSelector
-	---------------------------------------------------------------------- */
-
-	// QSA and matchesSelector support
-
-	// matchesSelector(:active) reports false when true (IE9/Opera 11.5)
-	rbuggyMatches = [];
-
-	// qSa(:focus) reports false when true (Chrome 21)
-	// We allow this because of a bug in IE8/9 that throws an error
-	// whenever `document.activeElement` is accessed on an iframe
-	// So, we allow :focus to pass through QSA all the time to avoid the IE error
-	// See https://bugs.jquery.com/ticket/13378
-	rbuggyQSA = [];
-
-	if ( (support.qsa = rnative.test( document.querySelectorAll )) ) {
-		// Build QSA regex
-		// Regex strategy adopted from Diego Perini
-		assert(function( el ) {
-			// Select is set to empty string on purpose
-			// This is to test IE's treatment of not explicitly
-			// setting a boolean content attribute,
-			// since its presence should be enough
-			// https://bugs.jquery.com/ticket/12359
-			docElem.appendChild( el ).innerHTML = "<a id='" + expando + "'></a>" +
-				"<select id='" + expando + "-\r\\' msallowcapture=''>" +
-				"<option selected=''></option></select>";
-
-			// Support: IE8, Opera 11-12.16
-			// Nothing should be selected when empty strings follow ^= or $= or *=
-			// The test attribute must be unknown in Opera but "safe" for WinRT
-			// https://msdn.microsoft.com/en-us/library/ie/hh465388.aspx#attribute_section
-			if ( el.querySelectorAll("[msallowcapture^='']").length ) {
-				rbuggyQSA.push( "[*^$]=" + whitespace + "*(?:''|\"\")" );
-			}
-
-			// Support: IE8
-			// Boolean attributes and "value" are not treated correctly
-			if ( !el.querySelectorAll("[selected]").length ) {
-				rbuggyQSA.push( "\\[" + whitespace + "*(?:value|" + booleans + ")" );
-			}
-
-			// Support: Chrome<29, Android<4.4, Safari<7.0+, iOS<7.0+, PhantomJS<1.9.8+
-			if ( !el.querySelectorAll( "[id~=" + expando + "-]" ).length ) {
-				rbuggyQSA.push("~=");
-			}
-
-			// Webkit/Opera - :checked should return selected option elements
-			// http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked
-			// IE8 throws error here and will not see later tests
-			if ( !el.querySelectorAll(":checked").length ) {
-				rbuggyQSA.push(":checked");
-			}
-
-			// Support: Safari 8+, iOS 8+
-			// https://bugs.webkit.org/show_bug.cgi?id=136851
-			// In-page `selector#id sibling-combinator selector` fails
-			if ( !el.querySelectorAll( "a#" + expando + "+*" ).length ) {
-				rbuggyQSA.push(".#.+[+~]");
-			}
-		});
-
-		assert(function( el ) {
-			el.innerHTML = "<a href='' disabled='disabled'></a>" +
-				"<select disabled='disabled'><option/></select>";
-
-			// Support: Windows 8 Native Apps
-			// The type and name attributes are restricted during .innerHTML assignment
-			var input = document.createElement("input");
-			input.setAttribute( "type", "hidden" );
-			el.appendChild( input ).setAttribute( "name", "D" );
-
-			// Support: IE8
-			// Enforce case-sensitivity of name attribute
-			if ( el.querySelectorAll("[name=d]").length ) {
-				rbuggyQSA.push( "name" + whitespace + "*[*^$|!~]?=" );
-			}
-
-			// FF 3.5 - :enabled/:disabled and hidden elements (hidden elements are still enabled)
-			// IE8 throws error here and will not see later tests
-			if ( el.querySelectorAll(":enabled").length !== 2 ) {
-				rbuggyQSA.push( ":enabled", ":disabled" );
-			}
-
-			// Support: IE9-11+
-			// IE's :disabled selector does not pick up the children of disabled fieldsets
-			docElem.appendChild( el ).disabled = true;
-			if ( el.querySelectorAll(":disabled").length !== 2 ) {
-				rbuggyQSA.push( ":enabled", ":disabled" );
-			}
-
-			// Opera 10-11 does not throw on post-comma invalid pseudos
-			el.querySelectorAll("*,:x");
-			rbuggyQSA.push(",.*:");
-		});
-	}
-
-	if ( (support.matchesSelector = rnative.test( (matches = docElem.matches ||
-		docElem.webkitMatchesSelector ||
-		docElem.mozMatchesSelector ||
-		docElem.oMatchesSelector ||
-		docElem.msMatchesSelector) )) ) {
-
-		assert(function( el ) {
-			// Check to see if it's possible to do matchesSelector
-			// on a disconnected node (IE 9)
-			support.disconnectedMatch = matches.call( el, "*" );
-
-			// This should fail with an exception
-			// Gecko does not error, returns false instead
-			matches.call( el, "[s!='']:x" );
-			rbuggyMatches.push( "!=", pseudos );
-		});
-	}
-
-	rbuggyQSA = rbuggyQSA.length && new RegExp( rbuggyQSA.join("|") );
-	rbuggyMatches = rbuggyMatches.length && new RegExp( rbuggyMatches.join("|") );
-
-	/* Contains
-	---------------------------------------------------------------------- */
-	hasCompare = rnative.test( docElem.compareDocumentPosition );
-
-	// Element contains another
-	// Purposefully self-exclusive
-	// As in, an element does not contain itself
-	contains = hasCompare || rnative.test( docElem.contains ) ?
-		function( a, b ) {
-			var adown = a.nodeType === 9 ? a.documentElement : a,
-				bup = b && b.parentNode;
-			return a === bup || !!( bup && bup.nodeType === 1 && (
-				adown.contains ?
-					adown.contains( bup ) :
-					a.compareDocumentPosition && a.compareDocumentPosition( bup ) & 16
-			));
-		} :
-		function( a, b ) {
-			if ( b ) {
-				while ( (b = b.parentNode) ) {
-					if ( b === a ) {
-						return true;
-					}
-				}
-			}
-			return false;
-		};
-
-	/* Sorting
-	---------------------------------------------------------------------- */
-
-	// Document order sorting
-	sortOrder = hasCompare ?
-	function( a, b ) {
-
-		// Flag for duplicate removal
-		if ( a === b ) {
-			hasDuplicate = true;
-			return 0;
-		}
-
-		// Sort on method existence if only one input has compareDocumentPosition
-		var compare = !a.compareDocumentPosition - !b.compareDocumentPosition;
-		if ( compare ) {
-			return compare;
-		}
-
-		// Calculate position if both inputs belong to the same document
-		compare = ( a.ownerDocument || a ) === ( b.ownerDocument || b ) ?
-			a.compareDocumentPosition( b ) :
-
-			// Otherwise we know they are disconnected
-			1;
-
-		// Disconnected nodes
-		if ( compare & 1 ||
-			(!support.sortDetached && b.compareDocumentPosition( a ) === compare) ) {
-
-			// Choose the first element that is related to our preferred document
-			if ( a === document || a.ownerDocument === preferredDoc && contains(preferredDoc, a) ) {
-				return -1;
-			}
-			if ( b === document || b.ownerDocument === preferredDoc && contains(preferredDoc, b) ) {
-				return 1;
-			}
-
-			// Maintain original order
-			return sortInput ?
-				( indexOf( sortInput, a ) - indexOf( sortInput, b ) ) :
-				0;
-		}
-
-		return compare & 4 ? -1 : 1;
-	} :
-	function( a, b ) {
-		// Exit early if the nodes are identical
-		if ( a === b ) {
-			hasDuplicate = true;
-			return 0;
-		}
-
-		var cur,
-			i = 0,
-			aup = a.parentNode,
-			bup = b.parentNode,
-			ap = [ a ],
-			bp = [ b ];
-
-		// Parentless nodes are either documents or disconnected
-		if ( !aup || !bup ) {
-			return a === document ? -1 :
-				b === document ? 1 :
-				aup ? -1 :
-				bup ? 1 :
-				sortInput ?
-				( indexOf( sortInput, a ) - indexOf( sortInput, b ) ) :
-				0;
-
-		// If the nodes are siblings, we can do a quick check
-		} else if ( aup === bup ) {
-			return siblingCheck( a, b );
-		}
-
-		// Otherwise we need full lists of their ancestors for comparison
-		cur = a;
-		while ( (cur = cur.parentNode) ) {
-			ap.unshift( cur );
-		}
-		cur = b;
-		while ( (cur = cur.parentNode) ) {
-			bp.unshift( cur );
-		}
-
-		// Walk down the tree looking for a discrepancy
-		while ( ap[i] === bp[i] ) {
-			i++;
-		}
-
-		return i ?
-			// Do a sibling check if the nodes have a common ancestor
-			siblingCheck( ap[i], bp[i] ) :
-
-			// Otherwise nodes in our document sort first
-			ap[i] === preferredDoc ? -1 :
-			bp[i] === preferredDoc ? 1 :
-			0;
-	};
-
-	return document;
-};
-
-Sizzle.matches = function( expr, elements ) {
-	return Sizzle( expr, null, null, elements );
-};
-
-Sizzle.matchesSelector = function( elem, expr ) {
-	// Set document vars if needed
-	if ( ( elem.ownerDocument || elem ) !== document ) {
-		setDocument( elem );
-	}
-
-	if ( support.matchesSelector && documentIsHTML &&
-		!nonnativeSelectorCache[ expr + " " ] &&
-		( !rbuggyMatches || !rbuggyMatches.test( expr ) ) &&
-		( !rbuggyQSA     || !rbuggyQSA.test( expr ) ) ) {
-
-		try {
-			var ret = matches.call( elem, expr );
-
-			// IE 9's matchesSelector returns false on disconnected nodes
-			if ( ret || support.disconnectedMatch ||
-					// As well, disconnected nodes are said to be in a document
-					// fragment in IE 9
-					elem.document && elem.document.nodeType !== 11 ) {
-				return ret;
-			}
-		} catch (e) {
-			nonnativeSelectorCache( expr, true );
-		}
-	}
-
-	return Sizzle( expr, document, null, [ elem ] ).length > 0;
-};
-
-Sizzle.contains = function( context, elem ) {
-	// Set document vars if needed
-	if ( ( context.ownerDocument || context ) !== document ) {
-		setDocument( context );
-	}
-	return contains( context, elem );
-};
-
-Sizzle.attr = function( elem, name ) {
-	// Set document vars if needed
-	if ( ( elem.ownerDocument || elem ) !== document ) {
-		setDocument( elem );
-	}
-
-	var fn = Expr.attrHandle[ name.toLowerCase() ],
-		// Don't get fooled by Object.prototype properties (jQuery #13807)
-		val = fn && hasOwn.call( Expr.attrHandle, name.toLowerCase() ) ?
-			fn( elem, name, !documentIsHTML ) :
-			undefined;
-
-	return val !== undefined ?
-		val :
-		support.attributes || !documentIsHTML ?
-			elem.getAttribute( name ) :
-			(val = elem.getAttributeNode(name)) && val.specified ?
-				val.value :
-				null;
-};
-
-Sizzle.escape = function( sel ) {
-	return (sel + "").replace( rcssescape, fcssescape );
-};
-
-Sizzle.error = function( msg ) {
-	throw new Error( "Syntax error, unrecognized expression: " + msg );
-};
-
-/**
- * Document sorting and removing duplicates
- * @param {ArrayLike} results
- */
-Sizzle.uniqueSort = function( results ) {
-	var elem,
-		duplicates = [],
-		j = 0,
-		i = 0;
-
-	// Unless we *know* we can detect duplicates, assume their presence
-	hasDuplicate = !support.detectDuplicates;
-	sortInput = !support.sortStable && results.slice( 0 );
-	results.sort( sortOrder );
-
-	if ( hasDuplicate ) {
-		while ( (elem = results[i++]) ) {
-			if ( elem === results[ i ] ) {
-				j = duplicates.push( i );
-			}
-		}
-		while ( j-- ) {
-			results.splice( duplicates[ j ], 1 );
-		}
-	}
-
-	// Clear input after sorting to release objects
-	// See https://github.com/jquery/sizzle/pull/225
-	sortInput = null;
-
-	return results;
-};
-
-/**
- * Utility function for retrieving the text value of an array of DOM nodes
- * @param {Array|Element} elem
- */
-getText = Sizzle.getText = function( elem ) {
-	var node,
-		ret = "",
-		i = 0,
-		nodeType = elem.nodeType;
-
-	if ( !nodeType ) {
-		// If no nodeType, this is expected to be an array
-		while ( (node = elem[i++]) ) {
-			// Do not traverse comment nodes
-			ret += getText( node );
-		}
-	} else if ( nodeType === 1 || nodeType === 9 || nodeType === 11 ) {
-		// Use textContent for elements
-		// innerText usage removed for consistency of new lines (jQuery #11153)
-		if ( typeof elem.textContent === "string" ) {
-			return elem.textContent;
-		} else {
-			// Traverse its children
-			for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) {
-				ret += getText( elem );
-			}
-		}
-	} else if ( nodeType === 3 || nodeType === 4 ) {
-		return elem.nodeValue;
-	}
-	// Do not include comment or processing instruction nodes
-
-	return ret;
-};
-
-Expr = Sizzle.selectors = {
-
-	// Can be adjusted by the user
-	cacheLength: 50,
-
-	createPseudo: markFunction,
-
-	match: matchExpr,
-
-	attrHandle: {},
-
-	find: {},
-
-	relative: {
-		">": { dir: "parentNode", first: true },
-		" ": { dir: "parentNode" },
-		"+": { dir: "previousSibling", first: true },
-		"~": { dir: "previousSibling" }
-	},
-
-	preFilter: {
-		"ATTR": function( match ) {
-			match[1] = match[1].replace( runescape, funescape );
-
-			// Move the given value to match[3] whether quoted or unquoted
-			match[3] = ( match[3] || match[4] || match[5] || "" ).replace( runescape, funescape );
-
-			if ( match[2] === "~=" ) {
-				match[3] = " " + match[3] + " ";
-			}
-
-			return match.slice( 0, 4 );
-		},
-
-		"CHILD": function( match ) {
-			/* matches from matchExpr["CHILD"]
-				1 type (only|nth|...)
-				2 what (child|of-type)
-				3 argument (even|odd|\d*|\d*n([+-]\d+)?|...)
-				4 xn-component of xn+y argument ([+-]?\d*n|)
-				5 sign of xn-component
-				6 x of xn-component
-				7 sign of y-component
-				8 y of y-component
-			*/
-			match[1] = match[1].toLowerCase();
-
-			if ( match[1].slice( 0, 3 ) === "nth" ) {
-				// nth-* requires argument
-				if ( !match[3] ) {
-					Sizzle.error( match[0] );
-				}
-
-				// numeric x and y parameters for Expr.filter.CHILD
-				// remember that false/true cast respectively to 0/1
-				match[4] = +( match[4] ? match[5] + (match[6] || 1) : 2 * ( match[3] === "even" || match[3] === "odd" ) );
-				match[5] = +( ( match[7] + match[8] ) || match[3] === "odd" );
-
-			// other types prohibit arguments
-			} else if ( match[3] ) {
-				Sizzle.error( match[0] );
-			}
-
-			return match;
-		},
-
-		"PSEUDO": function( match ) {
-			var excess,
-				unquoted = !match[6] && match[2];
-
-			if ( matchExpr["CHILD"].test( match[0] ) ) {
-				return null;
-			}
-
-			// Accept quoted arguments as-is
-			if ( match[3] ) {
-				match[2] = match[4] || match[5] || "";
-
-			// Strip excess characters from unquoted arguments
-			} else if ( unquoted && rpseudo.test( unquoted ) &&
-				// Get excess from tokenize (recursively)
-				(excess = tokenize( unquoted, true )) &&
-				// advance to the next closing parenthesis
-				(excess = unquoted.indexOf( ")", unquoted.length - excess ) - unquoted.length) ) {
-
-				// excess is a negative index
-				match[0] = match[0].slice( 0, excess );
-				match[2] = unquoted.slice( 0, excess );
-			}
-
-			// Return only captures needed by the pseudo filter method (type and argument)
-			return match.slice( 0, 3 );
-		}
-	},
-
-	filter: {
-
-		"TAG": function( nodeNameSelector ) {
-			var nodeName = nodeNameSelector.replace( runescape, funescape ).toLowerCase();
-			return nodeNameSelector === "*" ?
-				function() { return true; } :
-				function( elem ) {
-					return elem.nodeName && elem.nodeName.toLowerCase() === nodeName;
-				};
-		},
-
-		"CLASS": function( className ) {
-			var pattern = classCache[ className + " " ];
-
-			return pattern ||
-				(pattern = new RegExp( "(^|" + whitespace + ")" + className + "(" + whitespace + "|$)" )) &&
-				classCache( className, function( elem ) {
-					return pattern.test( typeof elem.className === "string" && elem.className || typeof elem.getAttribute !== "undefined" && elem.getAttribute("class") || "" );
-				});
-		},
-
-		"ATTR": function( name, operator, check ) {
-			return function( elem ) {
-				var result = Sizzle.attr( elem, name );
-
-				if ( result == null ) {
-					return operator === "!=";
-				}
-				if ( !operator ) {
-					return true;
-				}
-
-				result += "";
-
-				return operator === "=" ? result === check :
-					operator === "!=" ? result !== check :
-					operator === "^=" ? check && result.indexOf( check ) === 0 :
-					operator === "*=" ? check && result.indexOf( check ) > -1 :
-					operator === "$=" ? check && result.slice( -check.length ) === check :
-					operator === "~=" ? ( " " + result.replace( rwhitespace, " " ) + " " ).indexOf( check ) > -1 :
-					operator === "|=" ? result === check || result.slice( 0, check.length + 1 ) === check + "-" :
-					false;
-			};
-		},
-
-		"CHILD": function( type, what, argument, first, last ) {
-			var simple = type.slice( 0, 3 ) !== "nth",
-				forward = type.slice( -4 ) !== "last",
-				ofType = what === "of-type";
-
-			return first === 1 && last === 0 ?
-
-				// Shortcut for :nth-*(n)
-				function( elem ) {
-					return !!elem.parentNode;
-				} :
-
-				function( elem, context, xml ) {
-					var cache, uniqueCache, outerCache, node, nodeIndex, start,
-						dir = simple !== forward ? "nextSibling" : "previousSibling",
-						parent = elem.parentNode,
-						name = ofType && elem.nodeName.toLowerCase(),
-						useCache = !xml && !ofType,
-						diff = false;
-
-					if ( parent ) {
-
-						// :(first|last|only)-(child|of-type)
-						if ( simple ) {
-							while ( dir ) {
-								node = elem;
-								while ( (node = node[ dir ]) ) {
-									if ( ofType ?
-										node.nodeName.toLowerCase() === name :
-										node.nodeType === 1 ) {
-
-										return false;
-									}
-								}
-								// Reverse direction for :only-* (if we haven't yet done so)
-								start = dir = type === "only" && !start && "nextSibling";
-							}
-							return true;
-						}
-
-						start = [ forward ? parent.firstChild : parent.lastChild ];
-
-						// non-xml :nth-child(...) stores cache data on `parent`
-						if ( forward && useCache ) {
-
-							// Seek `elem` from a previously-cached index
-
-							// ...in a gzip-friendly way
-							node = parent;
-							outerCache = node[ expando ] || (node[ expando ] = {});
-
-							// Support: IE <9 only
-							// Defend against cloned attroperties (jQuery gh-1709)
-							uniqueCache = outerCache[ node.uniqueID ] ||
-								(outerCache[ node.uniqueID ] = {});
-
-							cache = uniqueCache[ type ] || [];
-							nodeIndex = cache[ 0 ] === dirruns && cache[ 1 ];
-							diff = nodeIndex && cache[ 2 ];
-							node = nodeIndex && parent.childNodes[ nodeIndex ];
-
-							while ( (node = ++nodeIndex && node && node[ dir ] ||
-
-								// Fallback to seeking `elem` from the start
-								(diff = nodeIndex = 0) || start.pop()) ) {
-
-								// When found, cache indexes on `parent` and break
-								if ( node.nodeType === 1 && ++diff && node === elem ) {
-									uniqueCache[ type ] = [ dirruns, nodeIndex, diff ];
-									break;
-								}
-							}
-
-						} else {
-							// Use previously-cached element index if available
-							if ( useCache ) {
-								// ...in a gzip-friendly way
-								node = elem;
-								outerCache = node[ expando ] || (node[ expando ] = {});
-
-								// Support: IE <9 only
-								// Defend against cloned attroperties (jQuery gh-1709)
-								uniqueCache = outerCache[ node.uniqueID ] ||
-									(outerCache[ node.uniqueID ] = {});
-
-								cache = uniqueCache[ type ] || [];
-								nodeIndex = cache[ 0 ] === dirruns && cache[ 1 ];
-								diff = nodeIndex;
-							}
-
-							// xml :nth-child(...)
-							// or :nth-last-child(...) or :nth(-last)?-of-type(...)
-							if ( diff === false ) {
-								// Use the same loop as above to seek `elem` from the start
-								while ( (node = ++nodeIndex && node && node[ dir ] ||
-									(diff = nodeIndex = 0) || start.pop()) ) {
-
-									if ( ( ofType ?
-										node.nodeName.toLowerCase() === name :
-										node.nodeType === 1 ) &&
-										++diff ) {
-
-										// Cache the index of each encountered element
-										if ( useCache ) {
-											outerCache = node[ expando ] || (node[ expando ] = {});
-
-											// Support: IE <9 only
-											// Defend against cloned attroperties (jQuery gh-1709)
-											uniqueCache = outerCache[ node.uniqueID ] ||
-												(outerCache[ node.uniqueID ] = {});
-
-											uniqueCache[ type ] = [ dirruns, diff ];
-										}
-
-										if ( node === elem ) {
-											break;
-										}
-									}
-								}
-							}
-						}
-
-						// Incorporate the offset, then check against cycle size
-						diff -= last;
-						return diff === first || ( diff % first === 0 && diff / first >= 0 );
-					}
-				};
-		},
-
-		"PSEUDO": function( pseudo, argument ) {
-			// pseudo-class names are case-insensitive
-			// http://www.w3.org/TR/selectors/#pseudo-classes
-			// Prioritize by case sensitivity in case custom pseudos are added with uppercase letters
-			// Remember that setFilters inherits from pseudos
-			var args,
-				fn = Expr.pseudos[ pseudo ] || Expr.setFilters[ pseudo.toLowerCase() ] ||
-					Sizzle.error( "unsupported pseudo: " + pseudo );
-
-			// The user may use createPseudo to indicate that
-			// arguments are needed to create the filter function
-			// just as Sizzle does
-			if ( fn[ expando ] ) {
-				return fn( argument );
-			}
-
-			// But maintain support for old signatures
-			if ( fn.length > 1 ) {
-				args = [ pseudo, pseudo, "", argument ];
-				return Expr.setFilters.hasOwnProperty( pseudo.toLowerCase() ) ?
-					markFunction(function( seed, matches ) {
-						var idx,
-							matched = fn( seed, argument ),
-							i = matched.length;
-						while ( i-- ) {
-							idx = indexOf( seed, matched[i] );
-							seed[ idx ] = !( matches[ idx ] = matched[i] );
-						}
-					}) :
-					function( elem ) {
-						return fn( elem, 0, args );
-					};
-			}
-
-			return fn;
-		}
-	},
-
-	pseudos: {
-		// Potentially complex pseudos
-		"not": markFunction(function( selector ) {
-			// Trim the selector passed to compile
-			// to avoid treating leading and trailing
-			// spaces as combinators
-			var input = [],
-				results = [],
-				matcher = compile( selector.replace( rtrim, "$1" ) );
-
-			return matcher[ expando ] ?
-				markFunction(function( seed, matches, context, xml ) {
-					var elem,
-						unmatched = matcher( seed, null, xml, [] ),
-						i = seed.length;
-
-					// Match elements unmatched by `matcher`
-					while ( i-- ) {
-						if ( (elem = unmatched[i]) ) {
-							seed[i] = !(matches[i] = elem);
-						}
-					}
-				}) :
-				function( elem, context, xml ) {
-					input[0] = elem;
-					matcher( input, null, xml, results );
-					// Don't keep the element (issue #299)
-					input[0] = null;
-					return !results.pop();
-				};
-		}),
-
-		"has": markFunction(function( selector ) {
-			return function( elem ) {
-				return Sizzle( selector, elem ).length > 0;
-			};
-		}),
-
-		"contains": markFunction(function( text ) {
-			text = text.replace( runescape, funescape );
-			return function( elem ) {
-				return ( elem.textContent || getText( elem ) ).indexOf( text ) > -1;
-			};
-		}),
-
-		// "Whether an element is represented by a :lang() selector
-		// is based solely on the element's language value
-		// being equal to the identifier C,
-		// or beginning with the identifier C immediately followed by "-".
-		// The matching of C against the element's language value is performed case-insensitively.
-		// The identifier C does not have to be a valid language name."
-		// http://www.w3.org/TR/selectors/#lang-pseudo
-		"lang": markFunction( function( lang ) {
-			// lang value must be a valid identifier
-			if ( !ridentifier.test(lang || "") ) {
-				Sizzle.error( "unsupported lang: " + lang );
-			}
-			lang = lang.replace( runescape, funescape ).toLowerCase();
-			return function( elem ) {
-				var elemLang;
-				do {
-					if ( (elemLang = documentIsHTML ?
-						elem.lang :
-						elem.getAttribute("xml:lang") || elem.getAttribute("lang")) ) {
-
-						elemLang = elemLang.toLowerCase();
-						return elemLang === lang || elemLang.indexOf( lang + "-" ) === 0;
-					}
-				} while ( (elem = elem.parentNode) && elem.nodeType === 1 );
-				return false;
-			};
-		}),
-
-		// Miscellaneous
-		"target": function( elem ) {
-			var hash = window.location && window.location.hash;
-			return hash && hash.slice( 1 ) === elem.id;
-		},
-
-		"root": function( elem ) {
-			return elem === docElem;
-		},
-
-		"focus": function( elem ) {
-			return elem === document.activeElement && (!document.hasFocus || document.hasFocus()) && !!(elem.type || elem.href || ~elem.tabIndex);
-		},
-
-		// Boolean properties
-		"enabled": createDisabledPseudo( false ),
-		"disabled": createDisabledPseudo( true ),
-
-		"checked": function( elem ) {
-			// In CSS3, :checked should return both checked and selected elements
-			// http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked
-			var nodeName = elem.nodeName.toLowerCase();
-			return (nodeName === "input" && !!elem.checked) || (nodeName === "option" && !!elem.selected);
-		},
-
-		"selected": function( elem ) {
-			// Accessing this property makes selected-by-default
-			// options in Safari work properly
-			if ( elem.parentNode ) {
-				elem.parentNode.selectedIndex;
-			}
-
-			return elem.selected === true;
-		},
-
-		// Contents
-		"empty": function( elem ) {
-			// http://www.w3.org/TR/selectors/#empty-pseudo
-			// :empty is negated by element (1) or content nodes (text: 3; cdata: 4; entity ref: 5),
-			//   but not by others (comment: 8; processing instruction: 7; etc.)
-			// nodeType < 6 works because attributes (2) do not appear as children
-			for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) {
-				if ( elem.nodeType < 6 ) {
-					return false;
-				}
-			}
-			return true;
-		},
-
-		"parent": function( elem ) {
-			return !Expr.pseudos["empty"]( elem );
-		},
-
-		// Element/input types
-		"header": function( elem ) {
-			return rheader.test( elem.nodeName );
-		},
-
-		"input": function( elem ) {
-			return rinputs.test( elem.nodeName );
-		},
-
-		"button": function( elem ) {
-			var name = elem.nodeName.toLowerCase();
-			return name === "input" && elem.type === "button" || name === "button";
-		},
-
-		"text": function( elem ) {
-			var attr;
-			return elem.nodeName.toLowerCase() === "input" &&
-				elem.type === "text" &&
-
-				// Support: IE<8
-				// New HTML5 attribute values (e.g., "search") appear with elem.type === "text"
-				( (attr = elem.getAttribute("type")) == null || attr.toLowerCase() === "text" );
-		},
-
-		// Position-in-collection
-		"first": createPositionalPseudo(function() {
-			return [ 0 ];
-		}),
-
-		"last": createPositionalPseudo(function( matchIndexes, length ) {
-			return [ length - 1 ];
-		}),
-
-		"eq": createPositionalPseudo(function( matchIndexes, length, argument ) {
-			return [ argument < 0 ? argument + length : argument ];
-		}),
-
-		"even": createPositionalPseudo(function( matchIndexes, length ) {
-			var i = 0;
-			for ( ; i < length; i += 2 ) {
-				matchIndexes.push( i );
-			}
-			return matchIndexes;
-		}),
-
-		"odd": createPositionalPseudo(function( matchIndexes, length ) {
-			var i = 1;
-			for ( ; i < length; i += 2 ) {
-				matchIndexes.push( i );
-			}
-			return matchIndexes;
-		}),
-
-		"lt": createPositionalPseudo(function( matchIndexes, length, argument ) {
-			var i = argument < 0 ?
-				argument + length :
-				argument > length ?
-					length :
-					argument;
-			for ( ; --i >= 0; ) {
-				matchIndexes.push( i );
-			}
-			return matchIndexes;
-		}),
-
-		"gt": createPositionalPseudo(function( matchIndexes, length, argument ) {
-			var i = argument < 0 ? argument + length : argument;
-			for ( ; ++i < length; ) {
-				matchIndexes.push( i );
-			}
-			return matchIndexes;
-		})
-	}
-};
-
-Expr.pseudos["nth"] = Expr.pseudos["eq"];
-
-// Add button/input type pseudos
-for ( i in { radio: true, checkbox: true, file: true, password: true, image: true } ) {
-	Expr.pseudos[ i ] = createInputPseudo( i );
-}
-for ( i in { submit: true, reset: true } ) {
-	Expr.pseudos[ i ] = createButtonPseudo( i );
-}
-
-// Easy API for creating new setFilters
-function setFilters() {}
-setFilters.prototype = Expr.filters = Expr.pseudos;
-Expr.setFilters = new setFilters();
-
-tokenize = Sizzle.tokenize = function( selector, parseOnly ) {
-	var matched, match, tokens, type,
-		soFar, groups, preFilters,
-		cached = tokenCache[ selector + " " ];
-
-	if ( cached ) {
-		return parseOnly ? 0 : cached.slice( 0 );
-	}
-
-	soFar = selector;
-	groups = [];
-	preFilters = Expr.preFilter;
-
-	while ( soFar ) {
-
-		// Comma and first run
-		if ( !matched || (match = rcomma.exec( soFar )) ) {
-			if ( match ) {
-				// Don't consume trailing commas as valid
-				soFar = soFar.slice( match[0].length ) || soFar;
-			}
-			groups.push( (tokens = []) );
-		}
-
-		matched = false;
-
-		// Combinators
-		if ( (match = rcombinators.exec( soFar )) ) {
-			matched = match.shift();
-			tokens.push({
-				value: matched,
-				// Cast descendant combinators to space
-				type: match[0].replace( rtrim, " " )
-			});
-			soFar = soFar.slice( matched.length );
-		}
-
-		// Filters
-		for ( type in Expr.filter ) {
-			if ( (match = matchExpr[ type ].exec( soFar )) && (!preFilters[ type ] ||
-				(match = preFilters[ type ]( match ))) ) {
-				matched = match.shift();
-				tokens.push({
-					value: matched,
-					type: type,
-					matches: match
-				});
-				soFar = soFar.slice( matched.length );
-			}
-		}
-
-		if ( !matched ) {
-			break;
-		}
-	}
-
-	// Return the length of the invalid excess
-	// if we're just parsing
-	// Otherwise, throw an error or return tokens
-	return parseOnly ?
-		soFar.length :
-		soFar ?
-			Sizzle.error( selector ) :
-			// Cache the tokens
-			tokenCache( selector, groups ).slice( 0 );
-};
-
-function toSelector( tokens ) {
-	var i = 0,
-		len = tokens.length,
-		selector = "";
-	for ( ; i < len; i++ ) {
-		selector += tokens[i].value;
-	}
-	return selector;
-}
-
-function addCombinator( matcher, combinator, base ) {
-	var dir = combinator.dir,
-		skip = combinator.next,
-		key = skip || dir,
-		checkNonElements = base && key === "parentNode",
-		doneName = done++;
-
-	return combinator.first ?
-		// Check against closest ancestor/preceding element
-		function( elem, context, xml ) {
-			while ( (elem = elem[ dir ]) ) {
-				if ( elem.nodeType === 1 || checkNonElements ) {
-					return matcher( elem, context, xml );
-				}
-			}
-			return false;
-		} :
-
-		// Check against all ancestor/preceding elements
-		function( elem, context, xml ) {
-			var oldCache, uniqueCache, outerCache,
-				newCache = [ dirruns, doneName ];
-
-			// We can't set arbitrary data on XML nodes, so they don't benefit from combinator caching
-			if ( xml ) {
-				while ( (elem = elem[ dir ]) ) {
-					if ( elem.nodeType === 1 || checkNonElements ) {
-						if ( matcher( elem, context, xml ) ) {
-							return true;
-						}
-					}
-				}
-			} else {
-				while ( (elem = elem[ dir ]) ) {
-					if ( elem.nodeType === 1 || checkNonElements ) {
-						outerCache = elem[ expando ] || (elem[ expando ] = {});
-
-						// Support: IE <9 only
-						// Defend against cloned attroperties (jQuery gh-1709)
-						uniqueCache = outerCache[ elem.uniqueID ] || (outerCache[ elem.uniqueID ] = {});
-
-						if ( skip && skip === elem.nodeName.toLowerCase() ) {
-							elem = elem[ dir ] || elem;
-						} else if ( (oldCache = uniqueCache[ key ]) &&
-							oldCache[ 0 ] === dirruns && oldCache[ 1 ] === doneName ) {
-
-							// Assign to newCache so results back-propagate to previous elements
-							return (newCache[ 2 ] = oldCache[ 2 ]);
-						} else {
-							// Reuse newcache so results back-propagate to previous elements
-							uniqueCache[ key ] = newCache;
-
-							// A match means we're done; a fail means we have to keep checking
-							if ( (newCache[ 2 ] = matcher( elem, context, xml )) ) {
-								return true;
-							}
-						}
-					}
-				}
-			}
-			return false;
-		};
-}
-
-function elementMatcher( matchers ) {
-	return matchers.length > 1 ?
-		function( elem, context, xml ) {
-			var i = matchers.length;
-			while ( i-- ) {
-				if ( !matchers[i]( elem, context, xml ) ) {
-					return false;
-				}
-			}
-			return true;
-		} :
-		matchers[0];
-}
-
-function multipleContexts( selector, contexts, results ) {
-	var i = 0,
-		len = contexts.length;
-	for ( ; i < len; i++ ) {
-		Sizzle( selector, contexts[i], results );
-	}
-	return results;
-}
-
-function condense( unmatched, map, filter, context, xml ) {
-	var elem,
-		newUnmatched = [],
-		i = 0,
-		len = unmatched.length,
-		mapped = map != null;
-
-	for ( ; i < len; i++ ) {
-		if ( (elem = unmatched[i]) ) {
-			if ( !filter || filter( elem, context, xml ) ) {
-				newUnmatched.push( elem );
-				if ( mapped ) {
-					map.push( i );
-				}
-			}
-		}
-	}
-
-	return newUnmatched;
-}
-
-function setMatcher( preFilter, selector, matcher, postFilter, postFinder, postSelector ) {
-	if ( postFilter && !postFilter[ expando ] ) {
-		postFilter = setMatcher( postFilter );
-	}
-	if ( postFinder && !postFinder[ expando ] ) {
-		postFinder = setMatcher( postFinder, postSelector );
-	}
-	return markFunction(function( seed, results, context, xml ) {
-		var temp, i, elem,
-			preMap = [],
-			postMap = [],
-			preexisting = results.length,
-
-			// Get initial elements from seed or context
-			elems = seed || multipleContexts( selector || "*", context.nodeType ? [ context ] : context, [] ),
-
-			// Prefilter to get matcher input, preserving a map for seed-results synchronization
-			matcherIn = preFilter && ( seed || !selector ) ?
-				condense( elems, preMap, preFilter, context, xml ) :
-				elems,
-
-			matcherOut = matcher ?
-				// If we have a postFinder, or filtered seed, or non-seed postFilter or preexisting results,
-				postFinder || ( seed ? preFilter : preexisting || postFilter ) ?
-
-					// ...intermediate processing is necessary
-					[] :
-
-					// ...otherwise use results directly
-					results :
-				matcherIn;
-
-		// Find primary matches
-		if ( matcher ) {
-			matcher( matcherIn, matcherOut, context, xml );
-		}
-
-		// Apply postFilter
-		if ( postFilter ) {
-			temp = condense( matcherOut, postMap );
-			postFilter( temp, [], context, xml );
-
-			// Un-match failing elements by moving them back to matcherIn
-			i = temp.length;
-			while ( i-- ) {
-				if ( (elem = temp[i]) ) {
-					matcherOut[ postMap[i] ] = !(matcherIn[ postMap[i] ] = elem);
-				}
-			}
-		}
-
-		if ( seed ) {
-			if ( postFinder || preFilter ) {
-				if ( postFinder ) {
-					// Get the final matcherOut by condensing this intermediate into postFinder contexts
-					temp = [];
-					i = matcherOut.length;
-					while ( i-- ) {
-						if ( (elem = matcherOut[i]) ) {
-							// Restore matcherIn since elem is not yet a final match
-							temp.push( (matcherIn[i] = elem) );
-						}
-					}
-					postFinder( null, (matcherOut = []), temp, xml );
-				}
-
-				// Move matched elements from seed to results to keep them synchronized
-				i = matcherOut.length;
-				while ( i-- ) {
-					if ( (elem = matcherOut[i]) &&
-						(temp = postFinder ? indexOf( seed, elem ) : preMap[i]) > -1 ) {
-
-						seed[temp] = !(results[temp] = elem);
-					}
-				}
-			}
-
-		// Add elements to results, through postFinder if defined
-		} else {
-			matcherOut = condense(
-				matcherOut === results ?
-					matcherOut.splice( preexisting, matcherOut.length ) :
-					matcherOut
-			);
-			if ( postFinder ) {
-				postFinder( null, results, matcherOut, xml );
-			} else {
-				push.apply( results, matcherOut );
-			}
-		}
-	});
-}
-
-function matcherFromTokens( tokens ) {
-	var checkContext, matcher, j,
-		len = tokens.length,
-		leadingRelative = Expr.relative[ tokens[0].type ],
-		implicitRelative = leadingRelative || Expr.relative[" "],
-		i = leadingRelative ? 1 : 0,
-
-		// The foundational matcher ensures that elements are reachable from top-level context(s)
-		matchContext = addCombinator( function( elem ) {
-			return elem === checkContext;
-		}, implicitRelative, true ),
-		matchAnyContext = addCombinator( function( elem ) {
-			return indexOf( checkContext, elem ) > -1;
-		}, implicitRelative, true ),
-		matchers = [ function( elem, context, xml ) {
-			var ret = ( !leadingRelative && ( xml || context !== outermostContext ) ) || (
-				(checkContext = context).nodeType ?
-					matchContext( elem, context, xml ) :
-					matchAnyContext( elem, context, xml ) );
-			// Avoid hanging onto element (issue #299)
-			checkContext = null;
-			return ret;
-		} ];
-
-	for ( ; i < len; i++ ) {
-		if ( (matcher = Expr.relative[ tokens[i].type ]) ) {
-			matchers = [ addCombinator(elementMatcher( matchers ), matcher) ];
-		} else {
-			matcher = Expr.filter[ tokens[i].type ].apply( null, tokens[i].matches );
-
-			// Return special upon seeing a positional matcher
-			if ( matcher[ expando ] ) {
-				// Find the next relative operator (if any) for proper handling
-				j = ++i;
-				for ( ; j < len; j++ ) {
-					if ( Expr.relative[ tokens[j].type ] ) {
-						break;
-					}
-				}
-				return setMatcher(
-					i > 1 && elementMatcher( matchers ),
-					i > 1 && toSelector(
-						// If the preceding token was a descendant combinator, insert an implicit any-element `*`
-						tokens.slice( 0, i - 1 ).concat({ value: tokens[ i - 2 ].type === " " ? "*" : "" })
-					).replace( rtrim, "$1" ),
-					matcher,
-					i < j && matcherFromTokens( tokens.slice( i, j ) ),
-					j < len && matcherFromTokens( (tokens = tokens.slice( j )) ),
-					j < len && toSelector( tokens )
-				);
-			}
-			matchers.push( matcher );
-		}
-	}
-
-	return elementMatcher( matchers );
-}
-
-function matcherFromGroupMatchers( elementMatchers, setMatchers ) {
-	var bySet = setMatchers.length > 0,
-		byElement = elementMatchers.length > 0,
-		superMatcher = function( seed, context, xml, results, outermost ) {
-			var elem, j, matcher,
-				matchedCount = 0,
-				i = "0",
-				unmatched = seed && [],
-				setMatched = [],
-				contextBackup = outermostContext,
-				// We must always have either seed elements or outermost context
-				elems = seed || byElement && Expr.find["TAG"]( "*", outermost ),
-				// Use integer dirruns iff this is the outermost matcher
-				dirrunsUnique = (dirruns += contextBackup == null ? 1 : Math.random() || 0.1),
-				len = elems.length;
-
-			if ( outermost ) {
-				outermostContext = context === document || context || outermost;
-			}
-
-			// Add elements passing elementMatchers directly to results
-			// Support: IE<9, Safari
-			// Tolerate NodeList properties (IE: "length"; Safari: <number>) matching elements by id
-			for ( ; i !== len && (elem = elems[i]) != null; i++ ) {
-				if ( byElement && elem ) {
-					j = 0;
-					if ( !context && elem.ownerDocument !== document ) {
-						setDocument( elem );
-						xml = !documentIsHTML;
-					}
-					while ( (matcher = elementMatchers[j++]) ) {
-						if ( matcher( elem, context || document, xml) ) {
-							results.push( elem );
-							break;
-						}
-					}
-					if ( outermost ) {
-						dirruns = dirrunsUnique;
-					}
-				}
-
-				// Track unmatched elements for set filters
-				if ( bySet ) {
-					// They will have gone through all possible matchers
-					if ( (elem = !matcher && elem) ) {
-						matchedCount--;
-					}
-
-					// Lengthen the array for every element, matched or not
-					if ( seed ) {
-						unmatched.push( elem );
-					}
-				}
-			}
-
-			// `i` is now the count of elements visited above, and adding it to `matchedCount`
-			// makes the latter nonnegative.
-			matchedCount += i;
-
-			// Apply set filters to unmatched elements
-			// NOTE: This can be skipped if there are no unmatched elements (i.e., `matchedCount`
-			// equals `i`), unless we didn't visit _any_ elements in the above loop because we have
-			// no element matchers and no seed.
-			// Incrementing an initially-string "0" `i` allows `i` to remain a string only in that
-			// case, which will result in a "00" `matchedCount` that differs from `i` but is also
-			// numerically zero.
-			if ( bySet && i !== matchedCount ) {
-				j = 0;
-				while ( (matcher = setMatchers[j++]) ) {
-					matcher( unmatched, setMatched, context, xml );
-				}
-
-				if ( seed ) {
-					// Reintegrate element matches to eliminate the need for sorting
-					if ( matchedCount > 0 ) {
-						while ( i-- ) {
-							if ( !(unmatched[i] || setMatched[i]) ) {
-								setMatched[i] = pop.call( results );
-							}
-						}
-					}
-
-					// Discard index placeholder values to get only actual matches
-					setMatched = condense( setMatched );
-				}
-
-				// Add matches to results
-				push.apply( results, setMatched );
-
-				// Seedless set matches succeeding multiple successful matchers stipulate sorting
-				if ( outermost && !seed && setMatched.length > 0 &&
-					( matchedCount + setMatchers.length ) > 1 ) {
-
-					Sizzle.uniqueSort( results );
-				}
-			}
-
-			// Override manipulation of globals by nested matchers
-			if ( outermost ) {
-				dirruns = dirrunsUnique;
-				outermostContext = contextBackup;
-			}
-
-			return unmatched;
-		};
-
-	return bySet ?
-		markFunction( superMatcher ) :
-		superMatcher;
-}
-
-compile = Sizzle.compile = function( selector, match /* Internal Use Only */ ) {
-	var i,
-		setMatchers = [],
-		elementMatchers = [],
-		cached = compilerCache[ selector + " " ];
-
-	if ( !cached ) {
-		// Generate a function of recursive functions that can be used to check each element
-		if ( !match ) {
-			match = tokenize( selector );
-		}
-		i = match.length;
-		while ( i-- ) {
-			cached = matcherFromTokens( match[i] );
-			if ( cached[ expando ] ) {
-				setMatchers.push( cached );
-			} else {
-				elementMatchers.push( cached );
-			}
-		}
-
-		// Cache the compiled function
-		cached = compilerCache( selector, matcherFromGroupMatchers( elementMatchers, setMatchers ) );
-
-		// Save selector and tokenization
-		cached.selector = selector;
-	}
-	return cached;
-};
-
-/**
- * A low-level selection function that works with Sizzle's compiled
- *  selector functions
- * @param {String|Function} selector A selector or a pre-compiled
- *  selector function built with Sizzle.compile
- * @param {Element} context
- * @param {Array} [results]
- * @param {Array} [seed] A set of elements to match against
- */
-select = Sizzle.select = function( selector, context, results, seed ) {
-	var i, tokens, token, type, find,
-		compiled = typeof selector === "function" && selector,
-		match = !seed && tokenize( (selector = compiled.selector || selector) );
-
-	results = results || [];
-
-	// Try to minimize operations if there is only one selector in the list and no seed
-	// (the latter of which guarantees us context)
-	if ( match.length === 1 ) {
-
-		// Reduce context if the leading compound selector is an ID
-		tokens = match[0] = match[0].slice( 0 );
-		if ( tokens.length > 2 && (token = tokens[0]).type === "ID" &&
-				context.nodeType === 9 && documentIsHTML && Expr.relative[ tokens[1].type ] ) {
-
-			context = ( Expr.find["ID"]( token.matches[0].replace(runescape, funescape), context ) || [] )[0];
-			if ( !context ) {
-				return results;
-
-			// Precompiled matchers will still verify ancestry, so step up a level
-			} else if ( compiled ) {
-				context = context.parentNode;
-			}
-
-			selector = selector.slice( tokens.shift().value.length );
-		}
-
-		// Fetch a seed set for right-to-left matching
-		i = matchExpr["needsContext"].test( selector ) ? 0 : tokens.length;
-		while ( i-- ) {
-			token = tokens[i];
-
-			// Abort if we hit a combinator
-			if ( Expr.relative[ (type = token.type) ] ) {
-				break;
-			}
-			if ( (find = Expr.find[ type ]) ) {
-				// Search, expanding context for leading sibling combinators
-				if ( (seed = find(
-					token.matches[0].replace( runescape, funescape ),
-					rsibling.test( tokens[0].type ) && testContext( context.parentNode ) || context
-				)) ) {
-
-					// If seed is empty or no tokens remain, we can return early
-					tokens.splice( i, 1 );
-					selector = seed.length && toSelector( tokens );
-					if ( !selector ) {
-						push.apply( results, seed );
-						return results;
-					}
-
-					break;
-				}
-			}
-		}
-	}
-
-	// Compile and execute a filtering function if one is not provided
-	// Provide `match` to avoid retokenization if we modified the selector above
-	( compiled || compile( selector, match ) )(
-		seed,
-		context,
-		!documentIsHTML,
-		results,
-		!context || rsibling.test( selector ) && testContext( context.parentNode ) || context
-	);
-	return results;
-};
-
-// One-time assignments
-
-// Sort stability
-support.sortStable = expando.split("").sort( sortOrder ).join("") === expando;
-
-// Support: Chrome 14-35+
-// Always assume duplicates if they aren't passed to the comparison function
-support.detectDuplicates = !!hasDuplicate;
-
-// Initialize against the default document
-setDocument();
-
-// Support: Webkit<537.32 - Safari 6.0.3/Chrome 25 (fixed in Chrome 27)
-// Detached nodes confoundingly follow *each other*
-support.sortDetached = assert(function( el ) {
-	// Should return 1, but returns 4 (following)
-	return el.compareDocumentPosition( document.createElement("fieldset") ) & 1;
-});
-
-// Support: IE<8
-// Prevent attribute/property "interpolation"
-// https://msdn.microsoft.com/en-us/library/ms536429%28VS.85%29.aspx
-if ( !assert(function( el ) {
-	el.innerHTML = "<a href='#'></a>";
-	return el.firstChild.getAttribute("href") === "#" ;
-}) ) {
-	addHandle( "type|href|height|width", function( elem, name, isXML ) {
-		if ( !isXML ) {
-			return elem.getAttribute( name, name.toLowerCase() === "type" ? 1 : 2 );
-		}
-	});
-}
-
-// Support: IE<9
-// Use defaultValue in place of getAttribute("value")
-if ( !support.attributes || !assert(function( el ) {
-	el.innerHTML = "<input/>";
-	el.firstChild.setAttribute( "value", "" );
-	return el.firstChild.getAttribute( "value" ) === "";
-}) ) {
-	addHandle( "value", function( elem, name, isXML ) {
-		if ( !isXML && elem.nodeName.toLowerCase() === "input" ) {
-			return elem.defaultValue;
-		}
-	});
-}
-
-// Support: IE<9
-// Use getAttributeNode to fetch booleans when getAttribute lies
-if ( !assert(function( el ) {
-	return el.getAttribute("disabled") == null;
-}) ) {
-	addHandle( booleans, function( elem, name, isXML ) {
-		var val;
-		if ( !isXML ) {
-			return elem[ name ] === true ? name.toLowerCase() :
-					(val = elem.getAttributeNode( name )) && val.specified ?
-					val.value :
-				null;
-		}
-	});
-}
-
-return Sizzle;
-
-})( window );
-
-
-
-jQuery.find = Sizzle;
-jQuery.expr = Sizzle.selectors;
-
-// Deprecated
-jQuery.expr[ ":" ] = jQuery.expr.pseudos;
-jQuery.uniqueSort = jQuery.unique = Sizzle.uniqueSort;
-jQuery.text = Sizzle.getText;
-jQuery.isXMLDoc = Sizzle.isXML;
-jQuery.contains = Sizzle.contains;
-jQuery.escapeSelector = Sizzle.escape;
-
-
-
-
-var dir = function( elem, dir, until ) {
-	var matched = [],
-		truncate = until !== undefined;
-
-	while ( ( elem = elem[ dir ] ) && elem.nodeType !== 9 ) {
-		if ( elem.nodeType === 1 ) {
-			if ( truncate && jQuery( elem ).is( until ) ) {
-				break;
-			}
-			matched.push( elem );
-		}
-	}
-	return matched;
-};
-
-
-var siblings = function( n, elem ) {
-	var matched = [];
-
-	for ( ; n; n = n.nextSibling ) {
-		if ( n.nodeType === 1 && n !== elem ) {
-			matched.push( n );
-		}
-	}
-
-	return matched;
-};
-
-
-var rneedsContext = jQuery.expr.match.needsContext;
-
-
-
-function nodeName( elem, name ) {
-
-  return elem.nodeName && elem.nodeName.toLowerCase() === name.toLowerCase();
-
-};
-var rsingleTag = ( /^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i );
-
-
-
-// Implement the identical functionality for filter and not
-function winnow( elements, qualifier, not ) {
-	if ( isFunction( qualifier ) ) {
-		return jQuery.grep( elements, function( elem, i ) {
-			return !!qualifier.call( elem, i, elem ) !== not;
-		} );
-	}
-
-	// Single element
-	if ( qualifier.nodeType ) {
-		return jQuery.grep( elements, function( elem ) {
-			return ( elem === qualifier ) !== not;
-		} );
-	}
-
-	// Arraylike of elements (jQuery, arguments, Array)
-	if ( typeof qualifier !== "string" ) {
-		return jQuery.grep( elements, function( elem ) {
-			return ( indexOf.call( qualifier, elem ) > -1 ) !== not;
-		} );
-	}
-
-	// Filtered directly for both simple and complex selectors
-	return jQuery.filter( qualifier, elements, not );
-}
-
-jQuery.filter = function( expr, elems, not ) {
-	var elem = elems[ 0 ];
-
-	if ( not ) {
-		expr = ":not(" + expr + ")";
-	}
-
-	if ( elems.length === 1 && elem.nodeType === 1 ) {
-		return jQuery.find.matchesSelector( elem, expr ) ? [ elem ] : [];
-	}
-
-	return jQuery.find.matches( expr, jQuery.grep( elems, function( elem ) {
-		return elem.nodeType === 1;
-	} ) );
-};
-
-jQuery.fn.extend( {
-	find: function( selector ) {
-		var i, ret,
-			len = this.length,
-			self = this;
-
-		if ( typeof selector !== "string" ) {
-			return this.pushStack( jQuery( selector ).filter( function() {
-				for ( i = 0; i < len; i++ ) {
-					if ( jQuery.contains( self[ i ], this ) ) {
-						return true;
-					}
-				}
-			} ) );
-		}
-
-		ret = this.pushStack( [] );
-
-		for ( i = 0; i < len; i++ ) {
-			jQuery.find( selector, self[ i ], ret );
-		}
-
-		return len > 1 ? jQuery.uniqueSort( ret ) : ret;
-	},
-	filter: function( selector ) {
-		return this.pushStack( winnow( this, selector || [], false ) );
-	},
-	not: function( selector ) {
-		return this.pushStack( winnow( this, selector || [], true ) );
-	},
-	is: function( selector ) {
-		return !!winnow(
-			this,
-
-			// If this is a positional/relative selector, check membership in the returned set
-			// so $("p:first").is("p:last") won't return true for a doc with two "p".
-			typeof selector === "string" && rneedsContext.test( selector ) ?
-				jQuery( selector ) :
-				selector || [],
-			false
-		).length;
-	}
-} );
-
-
-// Initialize a jQuery object
-
-
-// A central reference to the root jQuery(document)
-var rootjQuery,
-
-	// A simple way to check for HTML strings
-	// Prioritize #id over <tag> to avoid XSS via location.hash (#9521)
-	// Strict HTML recognition (#11290: must start with <)
-	// Shortcut simple #id case for speed
-	rquickExpr = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/,
-
-	init = jQuery.fn.init = function( selector, context, root ) {
-		var match, elem;
-
-		// HANDLE: $(""), $(null), $(undefined), $(false)
-		if ( !selector ) {
-			return this;
-		}
-
-		// Method init() accepts an alternate rootjQuery
-		// so migrate can support jQuery.sub (gh-2101)
-		root = root || rootjQuery;
-
-		// Handle HTML strings
-		if ( typeof selector === "string" ) {
-			if ( selector[ 0 ] === "<" &&
-				selector[ selector.length - 1 ] === ">" &&
-				selector.length >= 3 ) {
-
-				// Assume that strings that start and end with <> are HTML and skip the regex check
-				match = [ null, selector, null ];
-
-			} else {
-				match = rquickExpr.exec( selector );
-			}
-
-			// Match html or make sure no context is specified for #id
-			if ( match && ( match[ 1 ] || !context ) ) {
-
-				// HANDLE: $(html) -> $(array)
-				if ( match[ 1 ] ) {
-					context = context instanceof jQuery ? context[ 0 ] : context;
-
-					// Option to run scripts is true for back-compat
-					// Intentionally let the error be thrown if parseHTML is not present
-					jQuery.merge( this, jQuery.parseHTML(
-						match[ 1 ],
-						context && context.nodeType ? context.ownerDocument || context : document,
-						true
-					) );
-
-					// HANDLE: $(html, props)
-					if ( rsingleTag.test( match[ 1 ] ) && jQuery.isPlainObject( context ) ) {
-						for ( match in context ) {
-
-							// Properties of context are called as methods if possible
-							if ( isFunction( this[ match ] ) ) {
-								this[ match ]( context[ match ] );
-
-							// ...and otherwise set as attributes
-							} else {
-								this.attr( match, context[ match ] );
-							}
-						}
-					}
-
-					return this;
-
-				// HANDLE: $(#id)
-				} else {
-					elem = document.getElementById( match[ 2 ] );
-
-					if ( elem ) {
-
-						// Inject the element directly into the jQuery object
-						this[ 0 ] = elem;
-						this.length = 1;
-					}
-					return this;
-				}
-
-			// HANDLE: $(expr, $(...))
-			} else if ( !context || context.jquery ) {
-				return ( context || root ).find( selector );
-
-			// HANDLE: $(expr, context)
-			// (which is just equivalent to: $(context).find(expr)
-			} else {
-				return this.constructor( context ).find( selector );
-			}
-
-		// HANDLE: $(DOMElement)
-		} else if ( selector.nodeType ) {
-			this[ 0 ] = selector;
-			this.length = 1;
-			return this;
-
-		// HANDLE: $(function)
-		// Shortcut for document ready
-		} else if ( isFunction( selector ) ) {
-			return root.ready !== undefined ?
-				root.ready( selector ) :
-
-				// Execute immediately if ready is not present
-				selector( jQuery );
-		}
-
-		return jQuery.makeArray( selector, this );
-	};
-
-// Give the init function the jQuery prototype for later instantiation
-init.prototype = jQuery.fn;
-
-// Initialize central reference
-rootjQuery = jQuery( document );
-
-
-var rparentsprev = /^(?:parents|prev(?:Until|All))/,
-
-	// Methods guaranteed to produce a unique set when starting from a unique set
-	guaranteedUnique = {
-		children: true,
-		contents: true,
-		next: true,
-		prev: true
-	};
-
-jQuery.fn.extend( {
-	has: function( target ) {
-		var targets = jQuery( target, this ),
-			l = targets.length;
-
-		return this.filter( function() {
-			var i = 0;
-			for ( ; i < l; i++ ) {
-				if ( jQuery.contains( this, targets[ i ] ) ) {
-					return true;
-				}
-			}
-		} );
-	},
-
-	closest: function( selectors, context ) {
-		var cur,
-			i = 0,
-			l = this.length,
-			matched = [],
-			targets = typeof selectors !== "string" && jQuery( selectors );
-
-		// Positional selectors never match, since there's no _selection_ context
-		if ( !rneedsContext.test( selectors ) ) {
-			for ( ; i < l; i++ ) {
-				for ( cur = this[ i ]; cur && cur !== context; cur = cur.parentNode ) {
-
-					// Always skip document fragments
-					if ( cur.nodeType < 11 && ( targets ?
-						targets.index( cur ) > -1 :
-
-						// Don't pass non-elements to Sizzle
-						cur.nodeType === 1 &&
-							jQuery.find.matchesSelector( cur, selectors ) ) ) {
-
-						matched.push( cur );
-						break;
-					}
-				}
-			}
-		}
-
-		return this.pushStack( matched.length > 1 ? jQuery.uniqueSort( matched ) : matched );
-	},
-
-	// Determine the position of an element within the set
-	index: function( elem ) {
-
-		// No argument, return index in parent
-		if ( !elem ) {
-			return ( this[ 0 ] && this[ 0 ].parentNode ) ? this.first().prevAll().length : -1;
-		}
-
-		// Index in selector
-		if ( typeof elem === "string" ) {
-			return indexOf.call( jQuery( elem ), this[ 0 ] );
-		}
-
-		// Locate the position of the desired element
-		return indexOf.call( this,
-
-			// If it receives a jQuery object, the first element is used
-			elem.jquery ? elem[ 0 ] : elem
-		);
-	},
-
-	add: function( selector, context ) {
-		return this.pushStack(
-			jQuery.uniqueSort(
-				jQuery.merge( this.get(), jQuery( selector, context ) )
-			)
-		);
-	},
-
-	addBack: function( selector ) {
-		return this.add( selector == null ?
-			this.prevObject : this.prevObject.filter( selector )
-		);
-	}
-} );
-
-function sibling( cur, dir ) {
-	while ( ( cur = cur[ dir ] ) && cur.nodeType !== 1 ) {}
-	return cur;
-}
-
-jQuery.each( {
-	parent: function( elem ) {
-		var parent = elem.parentNode;
-		return parent && parent.nodeType !== 11 ? parent : null;
-	},
-	parents: function( elem ) {
-		return dir( elem, "parentNode" );
-	},
-	parentsUntil: function( elem, i, until ) {
-		return dir( elem, "parentNode", until );
-	},
-	next: function( elem ) {
-		return sibling( elem, "nextSibling" );
-	},
-	prev: function( elem ) {
-		return sibling( elem, "previousSibling" );
-	},
-	nextAll: function( elem ) {
-		return dir( elem, "nextSibling" );
-	},
-	prevAll: function( elem ) {
-		return dir( elem, "previousSibling" );
-	},
-	nextUntil: function( elem, i, until ) {
-		return dir( elem, "nextSibling", until );
-	},
-	prevUntil: function( elem, i, until ) {
-		return dir( elem, "previousSibling", until );
-	},
-	siblings: function( elem ) {
-		return siblings( ( elem.parentNode || {} ).firstChild, elem );
-	},
-	children: function( elem ) {
-		return siblings( elem.firstChild );
-	},
-	contents: function( elem ) {
-		if ( typeof elem.contentDocument !== "undefined" ) {
-			return elem.contentDocument;
-		}
-
-		// Support: IE 9 - 11 only, iOS 7 only, Android Browser <=4.3 only
-		// Treat the template element as a regular one in browsers that
-		// don't support it.
-		if ( nodeName( elem, "template" ) ) {
-			elem = elem.content || elem;
-		}
-
-		return jQuery.merge( [], elem.childNodes );
-	}
-}, function( name, fn ) {
-	jQuery.fn[ name ] = function( until, selector ) {
-		var matched = jQuery.map( this, fn, until );
-
-		if ( name.slice( -5 ) !== "Until" ) {
-			selector = until;
-		}
-
-		if ( selector && typeof selector === "string" ) {
-			matched = jQuery.filter( selector, matched );
-		}
-
-		if ( this.length > 1 ) {
-
-			// Remove duplicates
-			if ( !guaranteedUnique[ name ] ) {
-				jQuery.uniqueSort( matched );
-			}
-
-			// Reverse order for parents* and prev-derivatives
-			if ( rparentsprev.test( name ) ) {
-				matched.reverse();
-			}
-		}
-
-		return this.pushStack( matched );
-	};
-} );
-var rnothtmlwhite = ( /[^\x20\t\r\n\f]+/g );
-
-
-
-// Convert String-formatted options into Object-formatted ones
-function createOptions( options ) {
-	var object = {};
-	jQuery.each( options.match( rnothtmlwhite ) || [], function( _, flag ) {
-		object[ flag ] = true;
-	} );
-	return object;
-}
-
-/*
- * Create a callback list using the following parameters:
- *
- *	options: an optional list of space-separated options that will change how
- *			the callback list behaves or a more traditional option object
- *
- * By default a callback list will act like an event callback list and can be
- * "fired" multiple times.
- *
- * Possible options:
- *
- *	once:			will ensure the callback list can only be fired once (like a Deferred)
- *
- *	memory:			will keep track of previous values and will call any callback added
- *					after the list has been fired right away with the latest "memorized"
- *					values (like a Deferred)
- *
- *	unique:			will ensure a callback can only be added once (no duplicate in the list)
- *
- *	stopOnFalse:	interrupt callings when a callback returns false
- *
- */
-jQuery.Callbacks = function( options ) {
-
-	// Convert options from String-formatted to Object-formatted if needed
-	// (we check in cache first)
-	options = typeof options === "string" ?
-		createOptions( options ) :
-		jQuery.extend( {}, options );
-
-	var // Flag to know if list is currently firing
-		firing,
-
-		// Last fire value for non-forgettable lists
-		memory,
-
-		// Flag to know if list was already fired
-		fired,
-
-		// Flag to prevent firing
-		locked,
-
-		// Actual callback list
-		list = [],
-
-		// Queue of execution data for repeatable lists
-		queue = [],
-
-		// Index of currently firing callback (modified by add/remove as needed)
-		firingIndex = -1,
-
-		// Fire callbacks
-		fire = function() {
-
-			// Enforce single-firing
-			locked = locked || options.once;
-
-			// Execute callbacks for all pending executions,
-			// respecting firingIndex overrides and runtime changes
-			fired = firing = true;
-			for ( ; queue.length; firingIndex = -1 ) {
-				memory = queue.shift();
-				while ( ++firingIndex < list.length ) {
-
-					// Run callback and check for early termination
-					if ( list[ firingIndex ].apply( memory[ 0 ], memory[ 1 ] ) === false &&
-						options.stopOnFalse ) {
-
-						// Jump to end and forget the data so .add doesn't re-fire
-						firingIndex = list.length;
-						memory = false;
-					}
-				}
-			}
-
-			// Forget the data if we're done with it
-			if ( !options.memory ) {
-				memory = false;
-			}
-
-			firing = false;
-
-			// Clean up if we're done firing for good
-			if ( locked ) {
-
-				// Keep an empty list if we have data for future add calls
-				if ( memory ) {
-					list = [];
-
-				// Otherwise, this object is spent
-				} else {
-					list = "";
-				}
-			}
-		},
-
-		// Actual Callbacks object
-		self = {
-
-			// Add a callback or a collection of callbacks to the list
-			add: function() {
-				if ( list ) {
-
-					// If we have memory from a past run, we should fire after adding
-					if ( memory && !firing ) {
-						firingIndex = list.length - 1;
-						queue.push( memory );
-					}
-
-					( function add( args ) {
-						jQuery.each( args, function( _, arg ) {
-							if ( isFunction( arg ) ) {
-								if ( !options.unique || !self.has( arg ) ) {
-									list.push( arg );
-								}
-							} else if ( arg && arg.length && toType( arg ) !== "string" ) {
-
-								// Inspect recursively
-								add( arg );
-							}
-						} );
-					} )( arguments );
-
-					if ( memory && !firing ) {
-						fire();
-					}
-				}
-				return this;
-			},
-
-			// Remove a callback from the list
-			remove: function() {
-				jQuery.each( arguments, function( _, arg ) {
-					var index;
-					while ( ( index = jQuery.inArray( arg, list, index ) ) > -1 ) {
-						list.splice( index, 1 );
-
-						// Handle firing indexes
-						if ( index <= firingIndex ) {
-							firingIndex--;
-						}
-					}
-				} );
-				return this;
-			},
-
-			// Check if a given callback is in the list.
-			// If no argument is given, return whether or not list has callbacks attached.
-			has: function( fn ) {
-				return fn ?
-					jQuery.inArray( fn, list ) > -1 :
-					list.length > 0;
-			},
-
-			// Remove all callbacks from the list
-			empty: function() {
-				if ( list ) {
-					list = [];
-				}
-				return this;
-			},
-
-			// Disable .fire and .add
-			// Abort any current/pending executions
-			// Clear all callbacks and values
-			disable: function() {
-				locked = queue = [];
-				list = memory = "";
-				return this;
-			},
-			disabled: function() {
-				return !list;
-			},
-
-			// Disable .fire
-			// Also disable .add unless we have memory (since it would have no effect)
-			// Abort any pending executions
-			lock: function() {
-				locked = queue = [];
-				if ( !memory && !firing ) {
-					list = memory = "";
-				}
-				return this;
-			},
-			locked: function() {
-				return !!locked;
-			},
-
-			// Call all callbacks with the given context and arguments
-			fireWith: function( context, args ) {
-				if ( !locked ) {
-					args = args || [];
-					args = [ context, args.slice ? args.slice() : args ];
-					queue.push( args );
-					if ( !firing ) {
-						fire();
-					}
-				}
-				return this;
-			},
-
-			// Call all the callbacks with the given arguments
-			fire: function() {
-				self.fireWith( this, arguments );
-				return this;
-			},
-
-			// To know if the callbacks have already been called at least once
-			fired: function() {
-				return !!fired;
-			}
-		};
-
-	return self;
-};
-
-
-function Identity( v ) {
-	return v;
-}
-function Thrower( ex ) {
-	throw ex;
-}
-
-function adoptValue( value, resolve, reject, noValue ) {
-	var method;
-
-	try {
-
-		// Check for promise aspect first to privilege synchronous behavior
-		if ( value && isFunction( ( method = value.promise ) ) ) {
-			method.call( value ).done( resolve ).fail( reject );
-
-		// Other thenables
-		} else if ( value && isFunction( ( method = value.then ) ) ) {
-			method.call( value, resolve, reject );
-
-		// Other non-thenables
-		} else {
-
-			// Control `resolve` arguments by letting Array#slice cast boolean `noValue` to integer:
-			// * false: [ value ].slice( 0 ) => resolve( value )
-			// * true: [ value ].slice( 1 ) => resolve()
-			resolve.apply( undefined, [ value ].slice( noValue ) );
-		}
-
-	// For Promises/A+, convert exceptions into rejections
-	// Since jQuery.when doesn't unwrap thenables, we can skip the extra checks appearing in
-	// Deferred#then to conditionally suppress rejection.
-	} catch ( value ) {
-
-		// Support: Android 4.0 only
-		// Strict mode functions invoked without .call/.apply get global-object context
-		reject.apply( undefined, [ value ] );
-	}
-}
-
-jQuery.extend( {
-
-	Deferred: function( func ) {
-		var tuples = [
-
-				// action, add listener, callbacks,
-				// ... .then handlers, argument index, [final state]
-				[ "notify", "progress", jQuery.Callbacks( "memory" ),
-					jQuery.Callbacks( "memory" ), 2 ],
-				[ "resolve", "done", jQuery.Callbacks( "once memory" ),
-					jQuery.Callbacks( "once memory" ), 0, "resolved" ],
-				[ "reject", "fail", jQuery.Callbacks( "once memory" ),
-					jQuery.Callbacks( "once memory" ), 1, "rejected" ]
-			],
-			state = "pending",
-			promise = {
-				state: function() {
-					return state;
-				},
-				always: function() {
-					deferred.done( arguments ).fail( arguments );
-					return this;
-				},
-				"catch": function( fn ) {
-					return promise.then( null, fn );
-				},
-
-				// Keep pipe for back-compat
-				pipe: function( /* fnDone, fnFail, fnProgress */ ) {
-					var fns = arguments;
-
-					return jQuery.Deferred( function( newDefer ) {
-						jQuery.each( tuples, function( i, tuple ) {
-
-							// Map tuples (progress, done, fail) to arguments (done, fail, progress)
-							var fn = isFunction( fns[ tuple[ 4 ] ] ) && fns[ tuple[ 4 ] ];
-
-							// deferred.progress(function() { bind to newDefer or newDefer.notify })
-							// deferred.done(function() { bind to newDefer or newDefer.resolve })
-							// deferred.fail(function() { bind to newDefer or newDefer.reject })
-							deferred[ tuple[ 1 ] ]( function() {
-								var returned = fn && fn.apply( this, arguments );
-								if ( returned && isFunction( returned.promise ) ) {
-									returned.promise()
-										.progress( newDefer.notify )
-										.done( newDefer.resolve )
-										.fail( newDefer.reject );
-								} else {
-									newDefer[ tuple[ 0 ] + "With" ](
-										this,
-										fn ? [ returned ] : arguments
-									);
-								}
-							} );
-						} );
-						fns = null;
-					} ).promise();
-				},
-				then: function( onFulfilled, onRejected, onProgress ) {
-					var maxDepth = 0;
-					function resolve( depth, deferred, handler, special ) {
-						return function() {
-							var that = this,
-								args = arguments,
-								mightThrow = function() {
-									var returned, then;
-
-									// Support: Promises/A+ section 2.3.3.3.3
-									// https://promisesaplus.com/#point-59
-									// Ignore double-resolution attempts
-									if ( depth < maxDepth ) {
-										return;
-									}
-
-									returned = handler.apply( that, args );
-
-									// Support: Promises/A+ section 2.3.1
-									// https://promisesaplus.com/#point-48
-									if ( returned === deferred.promise() ) {
-										throw new TypeError( "Thenable self-resolution" );
-									}
-
-									// Support: Promises/A+ sections 2.3.3.1, 3.5
-									// https://promisesaplus.com/#point-54
-									// https://promisesaplus.com/#point-75
-									// Retrieve `then` only once
-									then = returned &&
-
-										// Support: Promises/A+ section 2.3.4
-										// https://promisesaplus.com/#point-64
-										// Only check objects and functions for thenability
-										( typeof returned === "object" ||
-											typeof returned === "function" ) &&
-										returned.then;
-
-									// Handle a returned thenable
-									if ( isFunction( then ) ) {
-
-										// Special processors (notify) just wait for resolution
-										if ( special ) {
-											then.call(
-												returned,
-												resolve( maxDepth, deferred, Identity, special ),
-												resolve( maxDepth, deferred, Thrower, special )
-											);
-
-										// Normal processors (resolve) also hook into progress
-										} else {
-
-											// ...and disregard older resolution values
-											maxDepth++;
-
-											then.call(
-												returned,
-												resolve( maxDepth, deferred, Identity, special ),
-												resolve( maxDepth, deferred, Thrower, special ),
-												resolve( maxDepth, deferred, Identity,
-													deferred.notifyWith )
-											);
-										}
-
-									// Handle all other returned values
-									} else {
-
-										// Only substitute handlers pass on context
-										// and multiple values (non-spec behavior)
-										if ( handler !== Identity ) {
-											that = undefined;
-											args = [ returned ];
-										}
-
-										// Process the value(s)
-										// Default process is resolve
-										( special || deferred.resolveWith )( that, args );
-									}
-								},
-
-								// Only normal processors (resolve) catch and reject exceptions
-								process = special ?
-									mightThrow :
-									function() {
-										try {
-											mightThrow();
-										} catch ( e ) {
-
-											if ( jQuery.Deferred.exceptionHook ) {
-												jQuery.Deferred.exceptionHook( e,
-													process.stackTrace );
-											}
-
-											// Support: Promises/A+ section 2.3.3.3.4.1
-											// https://promisesaplus.com/#point-61
-											// Ignore post-resolution exceptions
-											if ( depth + 1 >= maxDepth ) {
-
-												// Only substitute handlers pass on context
-												// and multiple values (non-spec behavior)
-												if ( handler !== Thrower ) {
-													that = undefined;
-													args = [ e ];
-												}
-
-												deferred.rejectWith( that, args );
-											}
-										}
-									};
-
-							// Support: Promises/A+ section 2.3.3.3.1
-							// https://promisesaplus.com/#point-57
-							// Re-resolve promises immediately to dodge false rejection from
-							// subsequent errors
-							if ( depth ) {
-								process();
-							} else {
-
-								// Call an optional hook to record the stack, in case of exception
-								// since it's otherwise lost when execution goes async
-								if ( jQuery.Deferred.getStackHook ) {
-									process.stackTrace = jQuery.Deferred.getStackHook();
-								}
-								window.setTimeout( process );
-							}
-						};
-					}
-
-					return jQuery.Deferred( function( newDefer ) {
-
-						// progress_handlers.add( ... )
-						tuples[ 0 ][ 3 ].add(
-							resolve(
-								0,
-								newDefer,
-								isFunction( onProgress ) ?
-									onProgress :
-									Identity,
-								newDefer.notifyWith
-							)
-						);
-
-						// fulfilled_handlers.add( ... )
-						tuples[ 1 ][ 3 ].add(
-							resolve(
-								0,
-								newDefer,
-								isFunction( onFulfilled ) ?
-									onFulfilled :
-									Identity
-							)
-						);
-
-						// rejected_handlers.add( ... )
-						tuples[ 2 ][ 3 ].add(
-							resolve(
-								0,
-								newDefer,
-								isFunction( onRejected ) ?
-									onRejected :
-									Thrower
-							)
-						);
-					} ).promise();
-				},
-
-				// Get a promise for this deferred
-				// If obj is provided, the promise aspect is added to the object
-				promise: function( obj ) {
-					return obj != null ? jQuery.extend( obj, promise ) : promise;
-				}
-			},
-			deferred = {};
-
-		// Add list-specific methods
-		jQuery.each( tuples, function( i, tuple ) {
-			var list = tuple[ 2 ],
-				stateString = tuple[ 5 ];
-
-			// promise.progress = list.add
-			// promise.done = list.add
-			// promise.fail = list.add
-			promise[ tuple[ 1 ] ] = list.add;
-
-			// Handle state
-			if ( stateString ) {
-				list.add(
-					function() {
-
-						// state = "resolved" (i.e., fulfilled)
-						// state = "rejected"
-						state = stateString;
-					},
-
-					// rejected_callbacks.disable
-					// fulfilled_callbacks.disable
-					tuples[ 3 - i ][ 2 ].disable,
-
-					// rejected_handlers.disable
-					// fulfilled_handlers.disable
-					tuples[ 3 - i ][ 3 ].disable,
-
-					// progress_callbacks.lock
-					tuples[ 0 ][ 2 ].lock,
-
-					// progress_handlers.lock
-					tuples[ 0 ][ 3 ].lock
-				);
-			}
-
-			// progress_handlers.fire
-			// fulfilled_handlers.fire
-			// rejected_handlers.fire
-			list.add( tuple[ 3 ].fire );
-
-			// deferred.notify = function() { deferred.notifyWith(...) }
-			// deferred.resolve = function() { deferred.resolveWith(...) }
-			// deferred.reject = function() { deferred.rejectWith(...) }
-			deferred[ tuple[ 0 ] ] = function() {
-				deferred[ tuple[ 0 ] + "With" ]( this === deferred ? undefined : this, arguments );
-				return this;
-			};
-
-			// deferred.notifyWith = list.fireWith
-			// deferred.resolveWith = list.fireWith
-			// deferred.rejectWith = list.fireWith
-			deferred[ tuple[ 0 ] + "With" ] = list.fireWith;
-		} );
-
-		// Make the deferred a promise
-		promise.promise( deferred );
-
-		// Call given func if any
-		if ( func ) {
-			func.call( deferred, deferred );
-		}
-
-		// All done!
-		return deferred;
-	},
-
-	// Deferred helper
-	when: function( singleValue ) {
-		var
-
-			// count of uncompleted subordinates
-			remaining = arguments.length,
-
-			// count of unprocessed arguments
-			i = remaining,
-
-			// subordinate fulfillment data
-			resolveContexts = Array( i ),
-			resolveValues = slice.call( arguments ),
-
-			// the master Deferred
-			master = jQuery.Deferred(),
-
-			// subordinate callback factory
-			updateFunc = function( i ) {
-				return function( value ) {
-					resolveContexts[ i ] = this;
-					resolveValues[ i ] = arguments.length > 1 ? slice.call( arguments ) : value;
-					if ( !( --remaining ) ) {
-						master.resolveWith( resolveContexts, resolveValues );
-					}
-				};
-			};
-
-		// Single- and empty arguments are adopted like Promise.resolve
-		if ( remaining <= 1 ) {
-			adoptValue( singleValue, master.done( updateFunc( i ) ).resolve, master.reject,
-				!remaining );
-
-			// Use .then() to unwrap secondary thenables (cf. gh-3000)
-			if ( master.state() === "pending" ||
-				isFunction( resolveValues[ i ] && resolveValues[ i ].then ) ) {
-
-				return master.then();
-			}
-		}
-
-		// Multiple arguments are aggregated like Promise.all array elements
-		while ( i-- ) {
-			adoptValue( resolveValues[ i ], updateFunc( i ), master.reject );
-		}
-
-		return master.promise();
-	}
-} );
-
-
-// These usually indicate a programmer mistake during development,
-// warn about them ASAP rather than swallowing them by default.
-var rerrorNames = /^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;
-
-jQuery.Deferred.exceptionHook = function( error, stack ) {
-
-	// Support: IE 8 - 9 only
-	// Console exists when dev tools are open, which can happen at any time
-	if ( window.console && window.console.warn && error && rerrorNames.test( error.name ) ) {
-		window.console.warn( "jQuery.Deferred exception: " + error.message, error.stack, stack );
-	}
-};
-
-
-
-
-jQuery.readyException = function( error ) {
-	window.setTimeout( function() {
-		throw error;
-	} );
-};
-
-
-
-
-// The deferred used on DOM ready
-var readyList = jQuery.Deferred();
-
-jQuery.fn.ready = function( fn ) {
-
-	readyList
-		.then( fn )
-
-		// Wrap jQuery.readyException in a function so that the lookup
-		// happens at the time of error handling instead of callback
-		// registration.
-		.catch( function( error ) {
-			jQuery.readyException( error );
-		} );
-
-	return this;
-};
-
-jQuery.extend( {
-
-	// Is the DOM ready to be used? Set to true once it occurs.
-	isReady: false,
-
-	// A counter to track how many items to wait for before
-	// the ready event fires. See #6781
-	readyWait: 1,
-
-	// Handle when the DOM is ready
-	ready: function( wait ) {
-
-		// Abort if there are pending holds or we're already ready
-		if ( wait === true ? --jQuery.readyWait : jQuery.isReady ) {
-			return;
-		}
-
-		// Remember that the DOM is ready
-		jQuery.isReady = true;
-
-		// If a normal DOM Ready event fired, decrement, and wait if need be
-		if ( wait !== true && --jQuery.readyWait > 0 ) {
-			return;
-		}
-
-		// If there are functions bound, to execute
-		readyList.resolveWith( document, [ jQuery ] );
-	}
-} );
-
-jQuery.ready.then = readyList.then;
-
-// The ready event handler and self cleanup method
-function completed() {
-	document.removeEventListener( "DOMContentLoaded", completed );
-	window.removeEventListener( "load", completed );
-	jQuery.ready();
-}
-
-// Catch cases where $(document).ready() is called
-// after the browser event has already occurred.
-// Support: IE <=9 - 10 only
-// Older IE sometimes signals "interactive" too soon
-if ( document.readyState === "complete" ||
-	( document.readyState !== "loading" && !document.documentElement.doScroll ) ) {
-
-	// Handle it asynchronously to allow scripts the opportunity to delay ready
-	window.setTimeout( jQuery.ready );
-
-} else {
-
-	// Use the handy event callback
-	document.addEventListener( "DOMContentLoaded", completed );
-
-	// A fallback to window.onload, that will always work
-	window.addEventListener( "load", completed );
-}
-
-
-
-
-// Multifunctional method to get and set values of a collection
-// The value/s can optionally be executed if it's a function
-var access = function( elems, fn, key, value, chainable, emptyGet, raw ) {
-	var i = 0,
-		len = elems.length,
-		bulk = key == null;
-
-	// Sets many values
-	if ( toType( key ) === "object" ) {
-		chainable = true;
-		for ( i in key ) {
-			access( elems, fn, i, key[ i ], true, emptyGet, raw );
-		}
-
-	// Sets one value
-	} else if ( value !== undefined ) {
-		chainable = true;
-
-		if ( !isFunction( value ) ) {
-			raw = true;
-		}
-
-		if ( bulk ) {
-
-			// Bulk operations run against the entire set
-			if ( raw ) {
-				fn.call( elems, value );
-				fn = null;
-
-			// ...except when executing function values
-			} else {
-				bulk = fn;
-				fn = function( elem, key, value ) {
-					return bulk.call( jQuery( elem ), value );
-				};
-			}
-		}
-
-		if ( fn ) {
-			for ( ; i < len; i++ ) {
-				fn(
-					elems[ i ], key, raw ?
-					value :
-					value.call( elems[ i ], i, fn( elems[ i ], key ) )
-				);
-			}
-		}
-	}
-
-	if ( chainable ) {
-		return elems;
-	}
-
-	// Gets
-	if ( bulk ) {
-		return fn.call( elems );
-	}
-
-	return len ? fn( elems[ 0 ], key ) : emptyGet;
-};
-
-
-// Matches dashed string for camelizing
-var rmsPrefix = /^-ms-/,
-	rdashAlpha = /-([a-z])/g;
-
-// Used by camelCase as callback to replace()
-function fcamelCase( all, letter ) {
-	return letter.toUpperCase();
-}
-
-// Convert dashed to camelCase; used by the css and data modules
-// Support: IE <=9 - 11, Edge 12 - 15
-// Microsoft forgot to hump their vendor prefix (#9572)
-function camelCase( string ) {
-	return string.replace( rmsPrefix, "ms-" ).replace( rdashAlpha, fcamelCase );
-}
-var acceptData = function( owner ) {
-
-	// Accepts only:
-	//  - Node
-	//    - Node.ELEMENT_NODE
-	//    - Node.DOCUMENT_NODE
-	//  - Object
-	//    - Any
-	return owner.nodeType === 1 || owner.nodeType === 9 || !( +owner.nodeType );
-};
-
-
-
-
-function Data() {
-	this.expando = jQuery.expando + Data.uid++;
-}
-
-Data.uid = 1;
-
-Data.prototype = {
-
-	cache: function( owner ) {
-
-		// Check if the owner object already has a cache
-		var value = owner[ this.expando ];
-
-		// If not, create one
-		if ( !value ) {
-			value = {};
-
-			// We can accept data for non-element nodes in modern browsers,
-			// but we should not, see #8335.
-			// Always return an empty object.
-			if ( acceptData( owner ) ) {
-
-				// If it is a node unlikely to be stringify-ed or looped over
-				// use plain assignment
-				if ( owner.nodeType ) {
-					owner[ this.expando ] = value;
-
-				// Otherwise secure it in a non-enumerable property
-				// configurable must be true to allow the property to be
-				// deleted when data is removed
-				} else {
-					Object.defineProperty( owner, this.expando, {
-						value: value,
-						configurable: true
-					} );
-				}
-			}
-		}
-
-		return value;
-	},
-	set: function( owner, data, value ) {
-		var prop,
-			cache = this.cache( owner );
-
-		// Handle: [ owner, key, value ] args
-		// Always use camelCase key (gh-2257)
-		if ( typeof data === "string" ) {
-			cache[ camelCase( data ) ] = value;
-
-		// Handle: [ owner, { properties } ] args
-		} else {
-
-			// Copy the properties one-by-one to the cache object
-			for ( prop in data ) {
-				cache[ camelCase( prop ) ] = data[ prop ];
-			}
-		}
-		return cache;
-	},
-	get: function( owner, key ) {
-		return key === undefined ?
-			this.cache( owner ) :
-
-			// Always use camelCase key (gh-2257)
-			owner[ this.expando ] && owner[ this.expando ][ camelCase( key ) ];
-	},
-	access: function( owner, key, value ) {
-
-		// In cases where either:
-		//
-		//   1. No key was specified
-		//   2. A string key was specified, but no value provided
-		//
-		// Take the "read" path and allow the get method to determine
-		// which value to return, respectively either:
-		//
-		//   1. The entire cache object
-		//   2. The data stored at the key
-		//
-		if ( key === undefined ||
-				( ( key && typeof key === "string" ) && value === undefined ) ) {
-
-			return this.get( owner, key );
-		}
-
-		// When the key is not a string, or both a key and value
-		// are specified, set or extend (existing objects) with either:
-		//
-		//   1. An object of properties
-		//   2. A key and value
-		//
-		this.set( owner, key, value );
-
-		// Since the "set" path can have two possible entry points
-		// return the expected data based on which path was taken[*]
-		return value !== undefined ? value : key;
-	},
-	remove: function( owner, key ) {
-		var i,
-			cache = owner[ this.expando ];
-
-		if ( cache === undefined ) {
-			return;
-		}
-
-		if ( key !== undefined ) {
-
-			// Support array or space separated string of keys
-			if ( Array.isArray( key ) ) {
-
-				// If key is an array of keys...
-				// We always set camelCase keys, so remove that.
-				key = key.map( camelCase );
-			} else {
-				key = camelCase( key );
-
-				// If a key with the spaces exists, use it.
-				// Otherwise, create an array by matching non-whitespace
-				key = key in cache ?
-					[ key ] :
-					( key.match( rnothtmlwhite ) || [] );
-			}
-
-			i = key.length;
-
-			while ( i-- ) {
-				delete cache[ key[ i ] ];
-			}
-		}
-
-		// Remove the expando if there's no more data
-		if ( key === undefined || jQuery.isEmptyObject( cache ) ) {
-
-			// Support: Chrome <=35 - 45
-			// Webkit & Blink performance suffers when deleting properties
-			// from DOM nodes, so set to undefined instead
-			// https://bugs.chromium.org/p/chromium/issues/detail?id=378607 (bug restricted)
-			if ( owner.nodeType ) {
-				owner[ this.expando ] = undefined;
-			} else {
-				delete owner[ this.expando ];
-			}
-		}
-	},
-	hasData: function( owner ) {
-		var cache = owner[ this.expando ];
-		return cache !== undefined && !jQuery.isEmptyObject( cache );
-	}
-};
-var dataPriv = new Data();
-
-var dataUser = new Data();
-
-
-
-//	Implementation Summary
-//
-//	1. Enforce API surface and semantic compatibility with 1.9.x branch
-//	2. Improve the module's maintainability by reducing the storage
-//		paths to a single mechanism.
-//	3. Use the same single mechanism to support "private" and "user" data.
-//	4. _Never_ expose "private" data to user code (TODO: Drop _data, _removeData)
-//	5. Avoid exposing implementation details on user objects (eg. expando properties)
-//	6. Provide a clear path for implementation upgrade to WeakMap in 2014
-
-var rbrace = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,
-	rmultiDash = /[A-Z]/g;
-
-function getData( data ) {
-	if ( data === "true" ) {
-		return true;
-	}
-
-	if ( data === "false" ) {
-		return false;
-	}
-
-	if ( data === "null" ) {
-		return null;
-	}
-
-	// Only convert to a number if it doesn't change the string
-	if ( data === +data + "" ) {
-		return +data;
-	}
-
-	if ( rbrace.test( data ) ) {
-		return JSON.parse( data );
-	}
-
-	return data;
-}
-
-function dataAttr( elem, key, data ) {
-	var name;
-
-	// If nothing was found internally, try to fetch any
-	// data from the HTML5 data-* attribute
-	if ( data === undefined && elem.nodeType === 1 ) {
-		name = "data-" + key.replace( rmultiDash, "-$&" ).toLowerCase();
-		data = elem.getAttribute( name );
-
-		if ( typeof data === "string" ) {
-			try {
-				data = getData( data );
-			} catch ( e ) {}
-
-			// Make sure we set the data so it isn't changed later
-			dataUser.set( elem, key, data );
-		} else {
-			data = undefined;
-		}
-	}
-	return data;
-}
-
-jQuery.extend( {
-	hasData: function( elem ) {
-		return dataUser.hasData( elem ) || dataPriv.hasData( elem );
-	},
-
-	data: function( elem, name, data ) {
-		return dataUser.access( elem, name, data );
-	},
-
-	removeData: function( elem, name ) {
-		dataUser.remove( elem, name );
-	},
-
-	// TODO: Now that all calls to _data and _removeData have been replaced
-	// with direct calls to dataPriv methods, these can be deprecated.
-	_data: function( elem, name, data ) {
-		return dataPriv.access( elem, name, data );
-	},
-
-	_removeData: function( elem, name ) {
-		dataPriv.remove( elem, name );
-	}
-} );
-
-jQuery.fn.extend( {
-	data: function( key, value ) {
-		var i, name, data,
-			elem = this[ 0 ],
-			attrs = elem && elem.attributes;
-
-		// Gets all values
-		if ( key === undefined ) {
-			if ( this.length ) {
-				data = dataUser.get( elem );
-
-				if ( elem.nodeType === 1 && !dataPriv.get( elem, "hasDataAttrs" ) ) {
-					i = attrs.length;
-					while ( i-- ) {
-
-						// Support: IE 11 only
-						// The attrs elements can be null (#14894)
-						if ( attrs[ i ] ) {
-							name = attrs[ i ].name;
-							if ( name.indexOf( "data-" ) === 0 ) {
-								name = camelCase( name.slice( 5 ) );
-								dataAttr( elem, name, data[ name ] );
-							}
-						}
-					}
-					dataPriv.set( elem, "hasDataAttrs", true );
-				}
-			}
-
-			return data;
-		}
-
-		// Sets multiple values
-		if ( typeof key === "object" ) {
-			return this.each( function() {
-				dataUser.set( this, key );
-			} );
-		}
-
-		return access( this, function( value ) {
-			var data;
-
-			// The calling jQuery object (element matches) is not empty
-			// (and therefore has an element appears at this[ 0 ]) and the
-			// `value` parameter was not undefined. An empty jQuery object
-			// will result in `undefined` for elem = this[ 0 ] which will
-			// throw an exception if an attempt to read a data cache is made.
-			if ( elem && value === undefined ) {
-
-				// Attempt to get data from the cache
-				// The key will always be camelCased in Data
-				data = dataUser.get( elem, key );
-				if ( data !== undefined ) {
-					return data;
-				}
-
-				// Attempt to "discover" the data in
-				// HTML5 custom data-* attrs
-				data = dataAttr( elem, key );
-				if ( data !== undefined ) {
-					return data;
-				}
-
-				// We tried really hard, but the data doesn't exist.
-				return;
-			}
-
-			// Set the data...
-			this.each( function() {
-
-				// We always store the camelCased key
-				dataUser.set( this, key, value );
-			} );
-		}, null, value, arguments.length > 1, null, true );
-	},
-
-	removeData: function( key ) {
-		return this.each( function() {
-			dataUser.remove( this, key );
-		} );
-	}
-} );
-
-
-jQuery.extend( {
-	queue: function( elem, type, data ) {
-		var queue;
-
-		if ( elem ) {
-			type = ( type || "fx" ) + "queue";
-			queue = dataPriv.get( elem, type );
-
-			// Speed up dequeue by getting out quickly if this is just a lookup
-			if ( data ) {
-				if ( !queue || Array.isArray( data ) ) {
-					queue = dataPriv.access( elem, type, jQuery.makeArray( data ) );
-				} else {
-					queue.push( data );
-				}
-			}
-			return queue || [];
-		}
-	},
-
-	dequeue: function( elem, type ) {
-		type = type || "fx";
-
-		var queue = jQuery.queue( elem, type ),
-			startLength = queue.length,
-			fn = queue.shift(),
-			hooks = jQuery._queueHooks( elem, type ),
-			next = function() {
-				jQuery.dequeue( elem, type );
-			};
-
-		// If the fx queue is dequeued, always remove the progress sentinel
-		if ( fn === "inprogress" ) {
-			fn = queue.shift();
-			startLength--;
-		}
-
-		if ( fn ) {
-
-			// Add a progress sentinel to prevent the fx queue from being
-			// automatically dequeued
-			if ( type === "fx" ) {
-				queue.unshift( "inprogress" );
-			}
-
-			// Clear up the last queue stop function
-			delete hooks.stop;
-			fn.call( elem, next, hooks );
-		}
-
-		if ( !startLength && hooks ) {
-			hooks.empty.fire();
-		}
-	},
-
-	// Not public - generate a queueHooks object, or return the current one
-	_queueHooks: function( elem, type ) {
-		var key = type + "queueHooks";
-		return dataPriv.get( elem, key ) || dataPriv.access( elem, key, {
-			empty: jQuery.Callbacks( "once memory" ).add( function() {
-				dataPriv.remove( elem, [ type + "queue", key ] );
-			} )
-		} );
-	}
-} );
-
-jQuery.fn.extend( {
-	queue: function( type, data ) {
-		var setter = 2;
-
-		if ( typeof type !== "string" ) {
-			data = type;
-			type = "fx";
-			setter--;
-		}
-
-		if ( arguments.length < setter ) {
-			return jQuery.queue( this[ 0 ], type );
-		}
-
-		return data === undefined ?
-			this :
-			this.each( function() {
-				var queue = jQuery.queue( this, type, data );
-
-				// Ensure a hooks for this queue
-				jQuery._queueHooks( this, type );
-
-				if ( type === "fx" && queue[ 0 ] !== "inprogress" ) {
-					jQuery.dequeue( this, type );
-				}
-			} );
-	},
-	dequeue: function( type ) {
-		return this.each( function() {
-			jQuery.dequeue( this, type );
-		} );
-	},
-	clearQueue: function( type ) {
-		return this.queue( type || "fx", [] );
-	},
-
-	// Get a promise resolved when queues of a certain type
-	// are emptied (fx is the type by default)
-	promise: function( type, obj ) {
-		var tmp,
-			count = 1,
-			defer = jQuery.Deferred(),
-			elements = this,
-			i = this.length,
-			resolve = function() {
-				if ( !( --count ) ) {
-					defer.resolveWith( elements, [ elements ] );
-				}
-			};
-
-		if ( typeof type !== "string" ) {
-			obj = type;
-			type = undefined;
-		}
-		type = type || "fx";
-
-		while ( i-- ) {
-			tmp = dataPriv.get( elements[ i ], type + "queueHooks" );
-			if ( tmp && tmp.empty ) {
-				count++;
-				tmp.empty.add( resolve );
-			}
-		}
-		resolve();
-		return defer.promise( obj );
-	}
-} );
-var pnum = ( /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/ ).source;
-
-var rcssNum = new RegExp( "^(?:([+-])=|)(" + pnum + ")([a-z%]*)$", "i" );
-
-
-var cssExpand = [ "Top", "Right", "Bottom", "Left" ];
-
-var documentElement = document.documentElement;
-
-
-
-	var isAttached = function( elem ) {
-			return jQuery.contains( elem.ownerDocument, elem );
-		},
-		composed = { composed: true };
-
-	// Support: IE 9 - 11+, Edge 12 - 18+, iOS 10.0 - 10.2 only
-	// Check attachment across shadow DOM boundaries when possible (gh-3504)
-	// Support: iOS 10.0-10.2 only
-	// Early iOS 10 versions support `attachShadow` but not `getRootNode`,
-	// leading to errors. We need to check for `getRootNode`.
-	if ( documentElement.getRootNode ) {
-		isAttached = function( elem ) {
-			return jQuery.contains( elem.ownerDocument, elem ) ||
-				elem.getRootNode( composed ) === elem.ownerDocument;
-		};
-	}
-var isHiddenWithinTree = function( elem, el ) {
-
-		// isHiddenWithinTree might be called from jQuery#filter function;
-		// in that case, element will be second argument
-		elem = el || elem;
-
-		// Inline style trumps all
-		return elem.style.display === "none" ||
-			elem.style.display === "" &&
-
-			// Otherwise, check computed style
-			// Support: Firefox <=43 - 45
-			// Disconnected elements can have computed display: none, so first confirm that elem is
-			// in the document.
-			isAttached( elem ) &&
-
-			jQuery.css( elem, "display" ) === "none";
-	};
-
-var swap = function( elem, options, callback, args ) {
-	var ret, name,
-		old = {};
-
-	// Remember the old values, and insert the new ones
-	for ( name in options ) {
-		old[ name ] = elem.style[ name ];
-		elem.style[ name ] = options[ name ];
-	}
-
-	ret = callback.apply( elem, args || [] );
-
-	// Revert the old values
-	for ( name in options ) {
-		elem.style[ name ] = old[ name ];
-	}
-
-	return ret;
-};
-
-
-
-
-function adjustCSS( elem, prop, valueParts, tween ) {
-	var adjusted, scale,
-		maxIterations = 20,
-		currentValue = tween ?
-			function() {
-				return tween.cur();
-			} :
-			function() {
-				return jQuery.css( elem, prop, "" );
-			},
-		initial = currentValue(),
-		unit = valueParts && valueParts[ 3 ] || ( jQuery.cssNumber[ prop ] ? "" : "px" ),
-
-		// Starting value computation is required for potential unit mismatches
-		initialInUnit = elem.nodeType &&
-			( jQuery.cssNumber[ prop ] || unit !== "px" && +initial ) &&
-			rcssNum.exec( jQuery.css( elem, prop ) );
-
-	if ( initialInUnit && initialInUnit[ 3 ] !== unit ) {
-
-		// Support: Firefox <=54
-		// Halve the iteration target value to prevent interference from CSS upper bounds (gh-2144)
-		initial = initial / 2;
-
-		// Trust units reported by jQuery.css
-		unit = unit || initialInUnit[ 3 ];
-
-		// Iteratively approximate from a nonzero starting point
-		initialInUnit = +initial || 1;
-
-		while ( maxIterations-- ) {
-
-			// Evaluate and update our best guess (doubling guesses that zero out).
-			// Finish if the scale equals or crosses 1 (making the old*new product non-positive).
-			jQuery.style( elem, prop, initialInUnit + unit );
-			if ( ( 1 - scale ) * ( 1 - ( scale = currentValue() / initial || 0.5 ) ) <= 0 ) {
-				maxIterations = 0;
-			}
-			initialInUnit = initialInUnit / scale;
-
-		}
-
-		initialInUnit = initialInUnit * 2;
-		jQuery.style( elem, prop, initialInUnit + unit );
-
-		// Make sure we update the tween properties later on
-		valueParts = valueParts || [];
-	}
-
-	if ( valueParts ) {
-		initialInUnit = +initialInUnit || +initial || 0;
-
-		// Apply relative offset (+=/-=) if specified
-		adjusted = valueParts[ 1 ] ?
-			initialInUnit + ( valueParts[ 1 ] + 1 ) * valueParts[ 2 ] :
-			+valueParts[ 2 ];
-		if ( tween ) {
-			tween.unit = unit;
-			tween.start = initialInUnit;
-			tween.end = adjusted;
-		}
-	}
-	return adjusted;
-}
-
-
-var defaultDisplayMap = {};
-
-function getDefaultDisplay( elem ) {
-	var temp,
-		doc = elem.ownerDocument,
-		nodeName = elem.nodeName,
-		display = defaultDisplayMap[ nodeName ];
-
-	if ( display ) {
-		return display;
-	}
-
-	temp = doc.body.appendChild( doc.createElement( nodeName ) );
-	display = jQuery.css( temp, "display" );
-
-	temp.parentNode.removeChild( temp );
-
-	if ( display === "none" ) {
-		display = "block";
-	}
-	defaultDisplayMap[ nodeName ] = display;
-
-	return display;
-}
-
-function showHide( elements, show ) {
-	var display, elem,
-		values = [],
-		index = 0,
-		length = elements.length;
-
-	// Determine new display value for elements that need to change
-	for ( ; index < length; index++ ) {
-		elem = elements[ index ];
-		if ( !elem.style ) {
-			continue;
-		}
-
-		display = elem.style.display;
-		if ( show ) {
-
-			// Since we force visibility upon cascade-hidden elements, an immediate (and slow)
-			// check is required in this first loop unless we have a nonempty display value (either
-			// inline or about-to-be-restored)
-			if ( display === "none" ) {
-				values[ index ] = dataPriv.get( elem, "display" ) || null;
-				if ( !values[ index ] ) {
-					elem.style.display = "";
-				}
-			}
-			if ( elem.style.display === "" && isHiddenWithinTree( elem ) ) {
-				values[ index ] = getDefaultDisplay( elem );
-			}
-		} else {
-			if ( display !== "none" ) {
-				values[ index ] = "none";
-
-				// Remember what we're overwriting
-				dataPriv.set( elem, "display", display );
-			}
-		}
-	}
-
-	// Set the display of the elements in a second loop to avoid constant reflow
-	for ( index = 0; index < length; index++ ) {
-		if ( values[ index ] != null ) {
-			elements[ index ].style.display = values[ index ];
-		}
-	}
-
-	return elements;
-}
-
-jQuery.fn.extend( {
-	show: function() {
-		return showHide( this, true );
-	},
-	hide: function() {
-		return showHide( this );
-	},
-	toggle: function( state ) {
-		if ( typeof state === "boolean" ) {
-			return state ? this.show() : this.hide();
-		}
-
-		return this.each( function() {
-			if ( isHiddenWithinTree( this ) ) {
-				jQuery( this ).show();
-			} else {
-				jQuery( this ).hide();
-			}
-		} );
-	}
-} );
-var rcheckableType = ( /^(?:checkbox|radio)$/i );
-
-var rtagName = ( /<([a-z][^\/\0>\x20\t\r\n\f]*)/i );
-
-var rscriptType = ( /^$|^module$|\/(?:java|ecma)script/i );
-
-
-
-// We have to close these tags to support XHTML (#13200)
-var wrapMap = {
-
-	// Support: IE <=9 only
-	option: [ 1, "<select multiple='multiple'>", "</select>" ],
-
-	// XHTML parsers do not magically insert elements in the
-	// same way that tag soup parsers do. So we cannot shorten
-	// this by omitting <tbody> or other required elements.
-	thead: [ 1, "<table>", "</table>" ],
-	col: [ 2, "<table><colgroup>", "</colgroup></table>" ],
-	tr: [ 2, "<table><tbody>", "</tbody></table>" ],
-	td: [ 3, "<table><tbody><tr>", "</tr></tbody></table>" ],
-
-	_default: [ 0, "", "" ]
-};
-
-// Support: IE <=9 only
-wrapMap.optgroup = wrapMap.option;
-
-wrapMap.tbody = wrapMap.tfoot = wrapMap.colgroup = wrapMap.caption = wrapMap.thead;
-wrapMap.th = wrapMap.td;
-
-
-function getAll( context, tag ) {
-
-	// Support: IE <=9 - 11 only
-	// Use typeof to avoid zero-argument method invocation on host objects (#15151)
-	var ret;
-
-	if ( typeof context.getElementsByTagName !== "undefined" ) {
-		ret = context.getElementsByTagName( tag || "*" );
-
-	} else if ( typeof context.querySelectorAll !== "undefined" ) {
-		ret = context.querySelectorAll( tag || "*" );
-
-	} else {
-		ret = [];
-	}
-
-	if ( tag === undefined || tag && nodeName( context, tag ) ) {
-		return jQuery.merge( [ context ], ret );
-	}
-
-	return ret;
-}
-
-
-// Mark scripts as having already been evaluated
-function setGlobalEval( elems, refElements ) {
-	var i = 0,
-		l = elems.length;
-
-	for ( ; i < l; i++ ) {
-		dataPriv.set(
-			elems[ i ],
-			"globalEval",
-			!refElements || dataPriv.get( refElements[ i ], "globalEval" )
-		);
-	}
-}
-
-
-var rhtml = /<|&#?\w+;/;
-
-function buildFragment( elems, context, scripts, selection, ignored ) {
-	var elem, tmp, tag, wrap, attached, j,
-		fragment = context.createDocumentFragment(),
-		nodes = [],
-		i = 0,
-		l = elems.length;
-
-	for ( ; i < l; i++ ) {
-		elem = elems[ i ];
-
-		if ( elem || elem === 0 ) {
-
-			// Add nodes directly
-			if ( toType( elem ) === "object" ) {
-
-				// Support: Android <=4.0 only, PhantomJS 1 only
-				// push.apply(_, arraylike) throws on ancient WebKit
-				jQuery.merge( nodes, elem.nodeType ? [ elem ] : elem );
-
-			// Convert non-html into a text node
-			} else if ( !rhtml.test( elem ) ) {
-				nodes.push( context.createTextNode( elem ) );
-
-			// Convert html into DOM nodes
-			} else {
-				tmp = tmp || fragment.appendChild( context.createElement( "div" ) );
-
-				// Deserialize a standard representation
-				tag = ( rtagName.exec( elem ) || [ "", "" ] )[ 1 ].toLowerCase();
-				wrap = wrapMap[ tag ] || wrapMap._default;
-				tmp.innerHTML = wrap[ 1 ] + jQuery.htmlPrefilter( elem ) + wrap[ 2 ];
-
-				// Descend through wrappers to the right content
-				j = wrap[ 0 ];
-				while ( j-- ) {
-					tmp = tmp.lastChild;
-				}
-
-				// Support: Android <=4.0 only, PhantomJS 1 only
-				// push.apply(_, arraylike) throws on ancient WebKit
-				jQuery.merge( nodes, tmp.childNodes );
-
-				// Remember the top-level container
-				tmp = fragment.firstChild;
-
-				// Ensure the created nodes are orphaned (#12392)
-				tmp.textContent = "";
-			}
-		}
-	}
-
-	// Remove wrapper from fragment
-	fragment.textContent = "";
-
-	i = 0;
-	while ( ( elem = nodes[ i++ ] ) ) {
-
-		// Skip elements already in the context collection (trac-4087)
-		if ( selection && jQuery.inArray( elem, selection ) > -1 ) {
-			if ( ignored ) {
-				ignored.push( elem );
-			}
-			continue;
-		}
-
-		attached = isAttached( elem );
-
-		// Append to fragment
-		tmp = getAll( fragment.appendChild( elem ), "script" );
-
-		// Preserve script evaluation history
-		if ( attached ) {
-			setGlobalEval( tmp );
-		}
-
-		// Capture executables
-		if ( scripts ) {
-			j = 0;
-			while ( ( elem = tmp[ j++ ] ) ) {
-				if ( rscriptType.test( elem.type || "" ) ) {
-					scripts.push( elem );
-				}
-			}
-		}
-	}
-
-	return fragment;
-}
-
-
-( function() {
-	var fragment = document.createDocumentFragment(),
-		div = fragment.appendChild( document.createElement( "div" ) ),
-		input = document.createElement( "input" );
-
-	// Support: Android 4.0 - 4.3 only
-	// Check state lost if the name is set (#11217)
-	// Support: Windows Web Apps (WWA)
-	// `name` and `type` must use .setAttribute for WWA (#14901)
-	input.setAttribute( "type", "radio" );
-	input.setAttribute( "checked", "checked" );
-	input.setAttribute( "name", "t" );
-
-	div.appendChild( input );
-
-	// Support: Android <=4.1 only
-	// Older WebKit doesn't clone checked state correctly in fragments
-	support.checkClone = div.cloneNode( true ).cloneNode( true ).lastChild.checked;
-
-	// Support: IE <=11 only
-	// Make sure textarea (and checkbox) defaultValue is properly cloned
-	div.innerHTML = "<textarea>x</textarea>";
-	support.noCloneChecked = !!div.cloneNode( true ).lastChild.defaultValue;
-} )();
-
-
-var
-	rkeyEvent = /^key/,
-	rmouseEvent = /^(?:mouse|pointer|contextmenu|drag|drop)|click/,
-	rtypenamespace = /^([^.]*)(?:\.(.+)|)/;
-
-function returnTrue() {
-	return true;
-}
-
-function returnFalse() {
-	return false;
-}
-
-// Support: IE <=9 - 11+
-// focus() and blur() are asynchronous, except when they are no-op.
-// So expect focus to be synchronous when the element is already active,
-// and blur to be synchronous when the element is not already active.
-// (focus and blur are always synchronous in other supported browsers,
-// this just defines when we can count on it).
-function expectSync( elem, type ) {
-	return ( elem === safeActiveElement() ) === ( type === "focus" );
-}
-
-// Support: IE <=9 only
-// Accessing document.activeElement can throw unexpectedly
-// https://bugs.jquery.com/ticket/13393
-function safeActiveElement() {
-	try {
-		return document.activeElement;
-	} catch ( err ) { }
-}
-
-function on( elem, types, selector, data, fn, one ) {
-	var origFn, type;
-
-	// Types can be a map of types/handlers
-	if ( typeof types === "object" ) {
-
-		// ( types-Object, selector, data )
-		if ( typeof selector !== "string" ) {
-
-			// ( types-Object, data )
-			data = data || selector;
-			selector = undefined;
-		}
-		for ( type in types ) {
-			on( elem, type, selector, data, types[ type ], one );
-		}
-		return elem;
-	}
-
-	if ( data == null && fn == null ) {
-
-		// ( types, fn )
-		fn = selector;
-		data = selector = undefined;
-	} else if ( fn == null ) {
-		if ( typeof selector === "string" ) {
-
-			// ( types, selector, fn )
-			fn = data;
-			data = undefined;
-		} else {
-
-			// ( types, data, fn )
-			fn = data;
-			data = selector;
-			selector = undefined;
-		}
-	}
-	if ( fn === false ) {
-		fn = returnFalse;
-	} else if ( !fn ) {
-		return elem;
-	}
-
-	if ( one === 1 ) {
-		origFn = fn;
-		fn = function( event ) {
-
-			// Can use an empty set, since event contains the info
-			jQuery().off( event );
-			return origFn.apply( this, arguments );
-		};
-
-		// Use same guid so caller can remove using origFn
-		fn.guid = origFn.guid || ( origFn.guid = jQuery.guid++ );
-	}
-	return elem.each( function() {
-		jQuery.event.add( this, types, fn, data, selector );
-	} );
-}
-
-/*
- * Helper functions for managing events -- not part of the public interface.
- * Props to Dean Edwards' addEvent library for many of the ideas.
- */
-jQuery.event = {
-
-	global: {},
-
-	add: function( elem, types, handler, data, selector ) {
-
-		var handleObjIn, eventHandle, tmp,
-			events, t, handleObj,
-			special, handlers, type, namespaces, origType,
-			elemData = dataPriv.get( elem );
-
-		// Don't attach events to noData or text/comment nodes (but allow plain objects)
-		if ( !elemData ) {
-			return;
-		}
-
-		// Caller can pass in an object of custom data in lieu of the handler
-		if ( handler.handler ) {
-			handleObjIn = handler;
-			handler = handleObjIn.handler;
-			selector = handleObjIn.selector;
-		}
-
-		// Ensure that invalid selectors throw exceptions at attach time
-		// Evaluate against documentElement in case elem is a non-element node (e.g., document)
-		if ( selector ) {
-			jQuery.find.matchesSelector( documentElement, selector );
-		}
-
-		// Make sure that the handler has a unique ID, used to find/remove it later
-		if ( !handler.guid ) {
-			handler.guid = jQuery.guid++;
-		}
-
-		// Init the element's event structure and main handler, if this is the first
-		if ( !( events = elemData.events ) ) {
-			events = elemData.events = {};
-		}
-		if ( !( eventHandle = elemData.handle ) ) {
-			eventHandle = elemData.handle = function( e ) {
-
-				// Discard the second event of a jQuery.event.trigger() and
-				// when an event is called after a page has unloaded
-				return typeof jQuery !== "undefined" && jQuery.event.triggered !== e.type ?
-					jQuery.event.dispatch.apply( elem, arguments ) : undefined;
-			};
-		}
-
-		// Handle multiple events separated by a space
-		types = ( types || "" ).match( rnothtmlwhite ) || [ "" ];
-		t = types.length;
-		while ( t-- ) {
-			tmp = rtypenamespace.exec( types[ t ] ) || [];
-			type = origType = tmp[ 1 ];
-			namespaces = ( tmp[ 2 ] || "" ).split( "." ).sort();
-
-			// There *must* be a type, no attaching namespace-only handlers
-			if ( !type ) {
-				continue;
-			}
-
-			// If event changes its type, use the special event handlers for the changed type
-			special = jQuery.event.special[ type ] || {};
-
-			// If selector defined, determine special event api type, otherwise given type
-			type = ( selector ? special.delegateType : special.bindType ) || type;
-
-			// Update special based on newly reset type
-			special = jQuery.event.special[ type ] || {};
-
-			// handleObj is passed to all event handlers
-			handleObj = jQuery.extend( {
-				type: type,
-				origType: origType,
-				data: data,
-				handler: handler,
-				guid: handler.guid,
-				selector: selector,
-				needsContext: selector && jQuery.expr.match.needsContext.test( selector ),
-				namespace: namespaces.join( "." )
-			}, handleObjIn );
-
-			// Init the event handler queue if we're the first
-			if ( !( handlers = events[ type ] ) ) {
-				handlers = events[ type ] = [];
-				handlers.delegateCount = 0;
-
-				// Only use addEventListener if the special events handler returns false
-				if ( !special.setup ||
-					special.setup.call( elem, data, namespaces, eventHandle ) === false ) {
-
-					if ( elem.addEventListener ) {
-						elem.addEventListener( type, eventHandle );
-					}
-				}
-			}
-
-			if ( special.add ) {
-				special.add.call( elem, handleObj );
-
-				if ( !handleObj.handler.guid ) {
-					handleObj.handler.guid = handler.guid;
-				}
-			}
-
-			// Add to the element's handler list, delegates in front
-			if ( selector ) {
-				handlers.splice( handlers.delegateCount++, 0, handleObj );
-			} else {
-				handlers.push( handleObj );
-			}
-
-			// Keep track of which events have ever been used, for event optimization
-			jQuery.event.global[ type ] = true;
-		}
-
-	},
-
-	// Detach an event or set of events from an element
-	remove: function( elem, types, handler, selector, mappedTypes ) {
-
-		var j, origCount, tmp,
-			events, t, handleObj,
-			special, handlers, type, namespaces, origType,
-			elemData = dataPriv.hasData( elem ) && dataPriv.get( elem );
-
-		if ( !elemData || !( events = elemData.events ) ) {
-			return;
-		}
-
-		// Once for each type.namespace in types; type may be omitted
-		types = ( types || "" ).match( rnothtmlwhite ) || [ "" ];
-		t = types.length;
-		while ( t-- ) {
-			tmp = rtypenamespace.exec( types[ t ] ) || [];
-			type = origType = tmp[ 1 ];
-			namespaces = ( tmp[ 2 ] || "" ).split( "." ).sort();
-
-			// Unbind all events (on this namespace, if provided) for the element
-			if ( !type ) {
-				for ( type in events ) {
-					jQuery.event.remove( elem, type + types[ t ], handler, selector, true );
-				}
-				continue;
-			}
-
-			special = jQuery.event.special[ type ] || {};
-			type = ( selector ? special.delegateType : special.bindType ) || type;
-			handlers = events[ type ] || [];
-			tmp = tmp[ 2 ] &&
-				new RegExp( "(^|\\.)" + namespaces.join( "\\.(?:.*\\.|)" ) + "(\\.|$)" );
-
-			// Remove matching events
-			origCount = j = handlers.length;
-			while ( j-- ) {
-				handleObj = handlers[ j ];
-
-				if ( ( mappedTypes || origType === handleObj.origType ) &&
-					( !handler || handler.guid === handleObj.guid ) &&
-					( !tmp || tmp.test( handleObj.namespace ) ) &&
-					( !selector || selector === handleObj.selector ||
-						selector === "**" && handleObj.selector ) ) {
-					handlers.splice( j, 1 );
-
-					if ( handleObj.selector ) {
-						handlers.delegateCount--;
-					}
-					if ( special.remove ) {
-						special.remove.call( elem, handleObj );
-					}
-				}
-			}
-
-			// Remove generic event handler if we removed something and no more handlers exist
-			// (avoids potential for endless recursion during removal of special event handlers)
-			if ( origCount && !handlers.length ) {
-				if ( !special.teardown ||
-					special.teardown.call( elem, namespaces, elemData.handle ) === false ) {
-
-					jQuery.removeEvent( elem, type, elemData.handle );
-				}
-
-				delete events[ type ];
-			}
-		}
-
-		// Remove data and the expando if it's no longer used
-		if ( jQuery.isEmptyObject( events ) ) {
-			dataPriv.remove( elem, "handle events" );
-		}
-	},
-
-	dispatch: function( nativeEvent ) {
-
-		// Make a writable jQuery.Event from the native event object
-		var event = jQuery.event.fix( nativeEvent );
-
-		var i, j, ret, matched, handleObj, handlerQueue,
-			args = new Array( arguments.length ),
-			handlers = ( dataPriv.get( this, "events" ) || {} )[ event.type ] || [],
-			special = jQuery.event.special[ event.type ] || {};
-
-		// Use the fix-ed jQuery.Event rather than the (read-only) native event
-		args[ 0 ] = event;
-
-		for ( i = 1; i < arguments.length; i++ ) {
-			args[ i ] = arguments[ i ];
-		}
-
-		event.delegateTarget = this;
-
-		// Call the preDispatch hook for the mapped type, and let it bail if desired
-		if ( special.preDispatch && special.preDispatch.call( this, event ) === false ) {
-			return;
-		}
-
-		// Determine handlers
-		handlerQueue = jQuery.event.handlers.call( this, event, handlers );
-
-		// Run delegates first; they may want to stop propagation beneath us
-		i = 0;
-		while ( ( matched = handlerQueue[ i++ ] ) && !event.isPropagationStopped() ) {
-			event.currentTarget = matched.elem;
-
-			j = 0;
-			while ( ( handleObj = matched.handlers[ j++ ] ) &&
-				!event.isImmediatePropagationStopped() ) {
-
-				// If the event is namespaced, then each handler is only invoked if it is
-				// specially universal or its namespaces are a superset of the event's.
-				if ( !event.rnamespace || handleObj.namespace === false ||
-					event.rnamespace.test( handleObj.namespace ) ) {
-
-					event.handleObj = handleObj;
-					event.data = handleObj.data;
-
-					ret = ( ( jQuery.event.special[ handleObj.origType ] || {} ).handle ||
-						handleObj.handler ).apply( matched.elem, args );
-
-					if ( ret !== undefined ) {
-						if ( ( event.result = ret ) === false ) {
-							event.preventDefault();
-							event.stopPropagation();
-						}
-					}
-				}
-			}
-		}
-
-		// Call the postDispatch hook for the mapped type
-		if ( special.postDispatch ) {
-			special.postDispatch.call( this, event );
-		}
-
-		return event.result;
-	},
-
-	handlers: function( event, handlers ) {
-		var i, handleObj, sel, matchedHandlers, matchedSelectors,
-			handlerQueue = [],
-			delegateCount = handlers.delegateCount,
-			cur = event.target;
-
-		// Find delegate handlers
-		if ( delegateCount &&
-
-			// Support: IE <=9
-			// Black-hole SVG <use> instance trees (trac-13180)
-			cur.nodeType &&
-
-			// Support: Firefox <=42
-			// Suppress spec-violating clicks indicating a non-primary pointer button (trac-3861)
-			// https://www.w3.org/TR/DOM-Level-3-Events/#event-type-click
-			// Support: IE 11 only
-			// ...but not arrow key "clicks" of radio inputs, which can have `button` -1 (gh-2343)
-			!( event.type === "click" && event.button >= 1 ) ) {
-
-			for ( ; cur !== this; cur = cur.parentNode || this ) {
-
-				// Don't check non-elements (#13208)
-				// Don't process clicks on disabled elements (#6911, #8165, #11382, #11764)
-				if ( cur.nodeType === 1 && !( event.type === "click" && cur.disabled === true ) ) {
-					matchedHandlers = [];
-					matchedSelectors = {};
-					for ( i = 0; i < delegateCount; i++ ) {
-						handleObj = handlers[ i ];
-
-						// Don't conflict with Object.prototype properties (#13203)
-						sel = handleObj.selector + " ";
-
-						if ( matchedSelectors[ sel ] === undefined ) {
-							matchedSelectors[ sel ] = handleObj.needsContext ?
-								jQuery( sel, this ).index( cur ) > -1 :
-								jQuery.find( sel, this, null, [ cur ] ).length;
-						}
-						if ( matchedSelectors[ sel ] ) {
-							matchedHandlers.push( handleObj );
-						}
-					}
-					if ( matchedHandlers.length ) {
-						handlerQueue.push( { elem: cur, handlers: matchedHandlers } );
-					}
-				}
-			}
-		}
-
-		// Add the remaining (directly-bound) handlers
-		cur = this;
-		if ( delegateCount < handlers.length ) {
-			handlerQueue.push( { elem: cur, handlers: handlers.slice( delegateCount ) } );
-		}
-
-		return handlerQueue;
-	},
-
-	addProp: function( name, hook ) {
-		Object.defineProperty( jQuery.Event.prototype, name, {
-			enumerable: true,
-			configurable: true,
-
-			get: isFunction( hook ) ?
-				function() {
-					if ( this.originalEvent ) {
-							return hook( this.originalEvent );
-					}
-				} :
-				function() {
-					if ( this.originalEvent ) {
-							return this.originalEvent[ name ];
-					}
-				},
-
-			set: function( value ) {
-				Object.defineProperty( this, name, {
-					enumerable: true,
-					configurable: true,
-					writable: true,
-					value: value
-				} );
-			}
-		} );
-	},
-
-	fix: function( originalEvent ) {
-		return originalEvent[ jQuery.expando ] ?
-			originalEvent :
-			new jQuery.Event( originalEvent );
-	},
-
-	special: {
-		load: {
-
-			// Prevent triggered image.load events from bubbling to window.load
-			noBubble: true
-		},
-		click: {
-
-			// Utilize native event to ensure correct state for checkable inputs
-			setup: function( data ) {
-
-				// For mutual compressibility with _default, replace `this` access with a local var.
-				// `|| data` is dead code meant only to preserve the variable through minification.
-				var el = this || data;
-
-				// Claim the first handler
-				if ( rcheckableType.test( el.type ) &&
-					el.click && nodeName( el, "input" ) ) {
-
-					// dataPriv.set( el, "click", ... )
-					leverageNative( el, "click", returnTrue );
-				}
-
-				// Return false to allow normal processing in the caller
-				return false;
-			},
-			trigger: function( data ) {
-
-				// For mutual compressibility with _default, replace `this` access with a local var.
-				// `|| data` is dead code meant only to preserve the variable through minification.
-				var el = this || data;
-
-				// Force setup before triggering a click
-				if ( rcheckableType.test( el.type ) &&
-					el.click && nodeName( el, "input" ) ) {
-
-					leverageNative( el, "click" );
-				}
-
-				// Return non-false to allow normal event-path propagation
-				return true;
-			},
-
-			// For cross-browser consistency, suppress native .click() on links
-			// Also prevent it if we're currently inside a leveraged native-event stack
-			_default: function( event ) {
-				var target = event.target;
-				return rcheckableType.test( target.type ) &&
-					target.click && nodeName( target, "input" ) &&
-					dataPriv.get( target, "click" ) ||
-					nodeName( target, "a" );
-			}
-		},
-
-		beforeunload: {
-			postDispatch: function( event ) {
-
-				// Support: Firefox 20+
-				// Firefox doesn't alert if the returnValue field is not set.
-				if ( event.result !== undefined && event.originalEvent ) {
-					event.originalEvent.returnValue = event.result;
-				}
-			}
-		}
-	}
-};
-
-// Ensure the presence of an event listener that handles manually-triggered
-// synthetic events by interrupting progress until reinvoked in response to
-// *native* events that it fires directly, ensuring that state changes have
-// already occurred before other listeners are invoked.
-function leverageNative( el, type, expectSync ) {
-
-	// Missing expectSync indicates a trigger call, which must force setup through jQuery.event.add
-	if ( !expectSync ) {
-		if ( dataPriv.get( el, type ) === undefined ) {
-			jQuery.event.add( el, type, returnTrue );
-		}
-		return;
-	}
-
-	// Register the controller as a special universal handler for all event namespaces
-	dataPriv.set( el, type, false );
-	jQuery.event.add( el, type, {
-		namespace: false,
-		handler: function( event ) {
-			var notAsync, result,
-				saved = dataPriv.get( this, type );
-
-			if ( ( event.isTrigger & 1 ) && this[ type ] ) {
-
-				// Interrupt processing of the outer synthetic .trigger()ed event
-				// Saved data should be false in such cases, but might be a leftover capture object
-				// from an async native handler (gh-4350)
-				if ( !saved.length ) {
-
-					// Store arguments for use when handling the inner native event
-					// There will always be at least one argument (an event object), so this array
-					// will not be confused with a leftover capture object.
-					saved = slice.call( arguments );
-					dataPriv.set( this, type, saved );
-
-					// Trigger the native event and capture its result
-					// Support: IE <=9 - 11+
-					// focus() and blur() are asynchronous
-					notAsync = expectSync( this, type );
-					this[ type ]();
-					result = dataPriv.get( this, type );
-					if ( saved !== result || notAsync ) {
-						dataPriv.set( this, type, false );
-					} else {
-						result = {};
-					}
-					if ( saved !== result ) {
-
-						// Cancel the outer synthetic event
-						event.stopImmediatePropagation();
-						event.preventDefault();
-						return result.value;
-					}
-
-				// If this is an inner synthetic event for an event with a bubbling surrogate
-				// (focus or blur), assume that the surrogate already propagated from triggering the
-				// native event and prevent that from happening again here.
-				// This technically gets the ordering wrong w.r.t. to `.trigger()` (in which the
-				// bubbling surrogate propagates *after* the non-bubbling base), but that seems
-				// less bad than duplication.
-				} else if ( ( jQuery.event.special[ type ] || {} ).delegateType ) {
-					event.stopPropagation();
-				}
-
-			// If this is a native event triggered above, everything is now in order
-			// Fire an inner synthetic event with the original arguments
-			} else if ( saved.length ) {
-
-				// ...and capture the result
-				dataPriv.set( this, type, {
-					value: jQuery.event.trigger(
-
-						// Support: IE <=9 - 11+
-						// Extend with the prototype to reset the above stopImmediatePropagation()
-						jQuery.extend( saved[ 0 ], jQuery.Event.prototype ),
-						saved.slice( 1 ),
-						this
-					)
-				} );
-
-				// Abort handling of the native event
-				event.stopImmediatePropagation();
-			}
-		}
-	} );
-}
-
-jQuery.removeEvent = function( elem, type, handle ) {
-
-	// This "if" is needed for plain objects
-	if ( elem.removeEventListener ) {
-		elem.removeEventListener( type, handle );
-	}
-};
-
-jQuery.Event = function( src, props ) {
-
-	// Allow instantiation without the 'new' keyword
-	if ( !( this instanceof jQuery.Event ) ) {
-		return new jQuery.Event( src, props );
-	}
-
-	// Event object
-	if ( src && src.type ) {
-		this.originalEvent = src;
-		this.type = src.type;
-
-		// Events bubbling up the document may have been marked as prevented
-		// by a handler lower down the tree; reflect the correct value.
-		this.isDefaultPrevented = src.defaultPrevented ||
-				src.defaultPrevented === undefined &&
-
-				// Support: Android <=2.3 only
-				src.returnValue === false ?
-			returnTrue :
-			returnFalse;
-
-		// Create target properties
-		// Support: Safari <=6 - 7 only
-		// Target should not be a text node (#504, #13143)
-		this.target = ( src.target && src.target.nodeType === 3 ) ?
-			src.target.parentNode :
-			src.target;
-
-		this.currentTarget = src.currentTarget;
-		this.relatedTarget = src.relatedTarget;
-
-	// Event type
-	} else {
-		this.type = src;
-	}
-
-	// Put explicitly provided properties onto the event object
-	if ( props ) {
-		jQuery.extend( this, props );
-	}
-
-	// Create a timestamp if incoming event doesn't have one
-	this.timeStamp = src && src.timeStamp || Date.now();
-
-	// Mark it as fixed
-	this[ jQuery.expando ] = true;
-};
-
-// jQuery.Event is based on DOM3 Events as specified by the ECMAScript Language Binding
-// https://www.w3.org/TR/2003/WD-DOM-Level-3-Events-20030331/ecma-script-binding.html
-jQuery.Event.prototype = {
-	constructor: jQuery.Event,
-	isDefaultPrevented: returnFalse,
-	isPropagationStopped: returnFalse,
-	isImmediatePropagationStopped: returnFalse,
-	isSimulated: false,
-
-	preventDefault: function() {
-		var e = this.originalEvent;
-
-		this.isDefaultPrevented = returnTrue;
-
-		if ( e && !this.isSimulated ) {
-			e.preventDefault();
-		}
-	},
-	stopPropagation: function() {
-		var e = this.originalEvent;
-
-		this.isPropagationStopped = returnTrue;
-
-		if ( e && !this.isSimulated ) {
-			e.stopPropagation();
-		}
-	},
-	stopImmediatePropagation: function() {
-		var e = this.originalEvent;
-
-		this.isImmediatePropagationStopped = returnTrue;
-
-		if ( e && !this.isSimulated ) {
-			e.stopImmediatePropagation();
-		}
-
-		this.stopPropagation();
-	}
-};
-
-// Includes all common event props including KeyEvent and MouseEvent specific props
-jQuery.each( {
-	altKey: true,
-	bubbles: true,
-	cancelable: true,
-	changedTouches: true,
-	ctrlKey: true,
-	detail: true,
-	eventPhase: true,
-	metaKey: true,
-	pageX: true,
-	pageY: true,
-	shiftKey: true,
-	view: true,
-	"char": true,
-	code: true,
-	charCode: true,
-	key: true,
-	keyCode: true,
-	button: true,
-	buttons: true,
-	clientX: true,
-	clientY: true,
-	offsetX: true,
-	offsetY: true,
-	pointerId: true,
-	pointerType: true,
-	screenX: true,
-	screenY: true,
-	targetTouches: true,
-	toElement: true,
-	touches: true,
-
-	which: function( event ) {
-		var button = event.button;
-
-		// Add which for key events
-		if ( event.which == null && rkeyEvent.test( event.type ) ) {
-			return event.charCode != null ? event.charCode : event.keyCode;
-		}
-
-		// Add which for click: 1 === left; 2 === middle; 3 === right
-		if ( !event.which && button !== undefined && rmouseEvent.test( event.type ) ) {
-			if ( button & 1 ) {
-				return 1;
-			}
-
-			if ( button & 2 ) {
-				return 3;
-			}
-
-			if ( button & 4 ) {
-				return 2;
-			}
-
-			return 0;
-		}
-
-		return event.which;
-	}
-}, jQuery.event.addProp );
-
-jQuery.each( { focus: "focusin", blur: "focusout" }, function( type, delegateType ) {
-	jQuery.event.special[ type ] = {
-
-		// Utilize native event if possible so blur/focus sequence is correct
-		setup: function() {
-
-			// Claim the first handler
-			// dataPriv.set( this, "focus", ... )
-			// dataPriv.set( this, "blur", ... )
-			leverageNative( this, type, expectSync );
-
-			// Return false to allow normal processing in the caller
-			return false;
-		},
-		trigger: function() {
-
-			// Force setup before trigger
-			leverageNative( this, type );
-
-			// Return non-false to allow normal event-path propagation
-			return true;
-		},
-
-		delegateType: delegateType
-	};
-} );
-
-// Create mouseenter/leave events using mouseover/out and event-time checks
-// so that event delegation works in jQuery.
-// Do the same for pointerenter/pointerleave and pointerover/pointerout
-//
-// Support: Safari 7 only
-// Safari sends mouseenter too often; see:
-// https://bugs.chromium.org/p/chromium/issues/detail?id=470258
-// for the description of the bug (it existed in older Chrome versions as well).
-jQuery.each( {
-	mouseenter: "mouseover",
-	mouseleave: "mouseout",
-	pointerenter: "pointerover",
-	pointerleave: "pointerout"
-}, function( orig, fix ) {
-	jQuery.event.special[ orig ] = {
-		delegateType: fix,
-		bindType: fix,
-
-		handle: function( event ) {
-			var ret,
-				target = this,
-				related = event.relatedTarget,
-				handleObj = event.handleObj;
-
-			// For mouseenter/leave call the handler if related is outside the target.
-			// NB: No relatedTarget if the mouse left/entered the browser window
-			if ( !related || ( related !== target && !jQuery.contains( target, related ) ) ) {
-				event.type = handleObj.origType;
-				ret = handleObj.handler.apply( this, arguments );
-				event.type = fix;
-			}
-			return ret;
-		}
-	};
-} );
-
-jQuery.fn.extend( {
-
-	on: function( types, selector, data, fn ) {
-		return on( this, types, selector, data, fn );
-	},
-	one: function( types, selector, data, fn ) {
-		return on( this, types, selector, data, fn, 1 );
-	},
-	off: function( types, selector, fn ) {
-		var handleObj, type;
-		if ( types && types.preventDefault && types.handleObj ) {
-
-			// ( event )  dispatched jQuery.Event
-			handleObj = types.handleObj;
-			jQuery( types.delegateTarget ).off(
-				handleObj.namespace ?
-					handleObj.origType + "." + handleObj.namespace :
-					handleObj.origType,
-				handleObj.selector,
-				handleObj.handler
-			);
-			return this;
-		}
-		if ( typeof types === "object" ) {
-
-			// ( types-object [, selector] )
-			for ( type in types ) {
-				this.off( type, selector, types[ type ] );
-			}
-			return this;
-		}
-		if ( selector === false || typeof selector === "function" ) {
-
-			// ( types [, fn] )
-			fn = selector;
-			selector = undefined;
-		}
-		if ( fn === false ) {
-			fn = returnFalse;
-		}
-		return this.each( function() {
-			jQuery.event.remove( this, types, fn, selector );
-		} );
-	}
-} );
-
-
-var
-
-	/* eslint-disable max-len */
-
-	// See https://github.com/eslint/eslint/issues/3229
-	rxhtmlTag = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\/\0>\x20\t\r\n\f]*)[^>]*)\/>/gi,
-
-	/* eslint-enable */
-
-	// Support: IE <=10 - 11, Edge 12 - 13 only
-	// In IE/Edge using regex groups here causes severe slowdowns.
-	// See https://connect.microsoft.com/IE/feedback/details/1736512/
-	rnoInnerhtml = /<script|<style|<link/i,
-
-	// checked="checked" or checked
-	rchecked = /checked\s*(?:[^=]|=\s*.checked.)/i,
-	rcleanScript = /^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;
-
-// Prefer a tbody over its parent table for containing new rows
-function manipulationTarget( elem, content ) {
-	if ( nodeName( elem, "table" ) &&
-		nodeName( content.nodeType !== 11 ? content : content.firstChild, "tr" ) ) {
-
-		return jQuery( elem ).children( "tbody" )[ 0 ] || elem;
-	}
-
-	return elem;
-}
-
-// Replace/restore the type attribute of script elements for safe DOM manipulation
-function disableScript( elem ) {
-	elem.type = ( elem.getAttribute( "type" ) !== null ) + "/" + elem.type;
-	return elem;
-}
-function restoreScript( elem ) {
-	if ( ( elem.type || "" ).slice( 0, 5 ) === "true/" ) {
-		elem.type = elem.type.slice( 5 );
-	} else {
-		elem.removeAttribute( "type" );
-	}
-
-	return elem;
-}
-
-function cloneCopyEvent( src, dest ) {
-	var i, l, type, pdataOld, pdataCur, udataOld, udataCur, events;
-
-	if ( dest.nodeType !== 1 ) {
-		return;
-	}
-
-	// 1. Copy private data: events, handlers, etc.
-	if ( dataPriv.hasData( src ) ) {
-		pdataOld = dataPriv.access( src );
-		pdataCur = dataPriv.set( dest, pdataOld );
-		events = pdataOld.events;
-
-		if ( events ) {
-			delete pdataCur.handle;
-			pdataCur.events = {};
-
-			for ( type in events ) {
-				for ( i = 0, l = events[ type ].length; i < l; i++ ) {
-					jQuery.event.add( dest, type, events[ type ][ i ] );
-				}
-			}
-		}
-	}
-
-	// 2. Copy user data
-	if ( dataUser.hasData( src ) ) {
-		udataOld = dataUser.access( src );
-		udataCur = jQuery.extend( {}, udataOld );
-
-		dataUser.set( dest, udataCur );
-	}
-}
-
-// Fix IE bugs, see support tests
-function fixInput( src, dest ) {
-	var nodeName = dest.nodeName.toLowerCase();
-
-	// Fails to persist the checked state of a cloned checkbox or radio button.
-	if ( nodeName === "input" && rcheckableType.test( src.type ) ) {
-		dest.checked = src.checked;
-
-	// Fails to return the selected option to the default selected state when cloning options
-	} else if ( nodeName === "input" || nodeName === "textarea" ) {
-		dest.defaultValue = src.defaultValue;
-	}
-}
-
-function domManip( collection, args, callback, ignored ) {
-
-	// Flatten any nested arrays
-	args = concat.apply( [], args );
-
-	var fragment, first, scripts, hasScripts, node, doc,
-		i = 0,
-		l = collection.length,
-		iNoClone = l - 1,
-		value = args[ 0 ],
-		valueIsFunction = isFunction( value );
-
-	// We can't cloneNode fragments that contain checked, in WebKit
-	if ( valueIsFunction ||
-			( l > 1 && typeof value === "string" &&
-				!support.checkClone && rchecked.test( value ) ) ) {
-		return collection.each( function( index ) {
-			var self = collection.eq( index );
-			if ( valueIsFunction ) {
-				args[ 0 ] = value.call( this, index, self.html() );
-			}
-			domManip( self, args, callback, ignored );
-		} );
-	}
-
-	if ( l ) {
-		fragment = buildFragment( args, collection[ 0 ].ownerDocument, false, collection, ignored );
-		first = fragment.firstChild;
-
-		if ( fragment.childNodes.length === 1 ) {
-			fragment = first;
-		}
-
-		// Require either new content or an interest in ignored elements to invoke the callback
-		if ( first || ignored ) {
-			scripts = jQuery.map( getAll( fragment, "script" ), disableScript );
-			hasScripts = scripts.length;
-
-			// Use the original fragment for the last item
-			// instead of the first because it can end up
-			// being emptied incorrectly in certain situations (#8070).
-			for ( ; i < l; i++ ) {
-				node = fragment;
-
-				if ( i !== iNoClone ) {
-					node = jQuery.clone( node, true, true );
-
-					// Keep references to cloned scripts for later restoration
-					if ( hasScripts ) {
-
-						// Support: Android <=4.0 only, PhantomJS 1 only
-						// push.apply(_, arraylike) throws on ancient WebKit
-						jQuery.merge( scripts, getAll( node, "script" ) );
-					}
-				}
-
-				callback.call( collection[ i ], node, i );
-			}
-
-			if ( hasScripts ) {
-				doc = scripts[ scripts.length - 1 ].ownerDocument;
-
-				// Reenable scripts
-				jQuery.map( scripts, restoreScript );
-
-				// Evaluate executable scripts on first document insertion
-				for ( i = 0; i < hasScripts; i++ ) {
-					node = scripts[ i ];
-					if ( rscriptType.test( node.type || "" ) &&
-						!dataPriv.access( node, "globalEval" ) &&
-						jQuery.contains( doc, node ) ) {
-
-						if ( node.src && ( node.type || "" ).toLowerCase()  !== "module" ) {
-
-							// Optional AJAX dependency, but won't run scripts if not present
-							if ( jQuery._evalUrl && !node.noModule ) {
-								jQuery._evalUrl( node.src, {
-									nonce: node.nonce || node.getAttribute( "nonce" )
-								} );
-							}
-						} else {
-							DOMEval( node.textContent.replace( rcleanScript, "" ), node, doc );
-						}
-					}
-				}
-			}
-		}
-	}
-
-	return collection;
-}
-
-function remove( elem, selector, keepData ) {
-	var node,
-		nodes = selector ? jQuery.filter( selector, elem ) : elem,
-		i = 0;
-
-	for ( ; ( node = nodes[ i ] ) != null; i++ ) {
-		if ( !keepData && node.nodeType === 1 ) {
-			jQuery.cleanData( getAll( node ) );
-		}
-
-		if ( node.parentNode ) {
-			if ( keepData && isAttached( node ) ) {
-				setGlobalEval( getAll( node, "script" ) );
-			}
-			node.parentNode.removeChild( node );
-		}
-	}
-
-	return elem;
-}
-
-jQuery.extend( {
-	htmlPrefilter: function( html ) {
-		return html.replace( rxhtmlTag, "<$1></$2>" );
-	},
-
-	clone: function( elem, dataAndEvents, deepDataAndEvents ) {
-		var i, l, srcElements, destElements,
-			clone = elem.cloneNode( true ),
-			inPage = isAttached( elem );
-
-		// Fix IE cloning issues
-		if ( !support.noCloneChecked && ( elem.nodeType === 1 || elem.nodeType === 11 ) &&
-				!jQuery.isXMLDoc( elem ) ) {
-
-			// We eschew Sizzle here for performance reasons: https://jsperf.com/getall-vs-sizzle/2
-			destElements = getAll( clone );
-			srcElements = getAll( elem );
-
-			for ( i = 0, l = srcElements.length; i < l; i++ ) {
-				fixInput( srcElements[ i ], destElements[ i ] );
-			}
-		}
-
-		// Copy the events from the original to the clone
-		if ( dataAndEvents ) {
-			if ( deepDataAndEvents ) {
-				srcElements = srcElements || getAll( elem );
-				destElements = destElements || getAll( clone );
-
-				for ( i = 0, l = srcElements.length; i < l; i++ ) {
-					cloneCopyEvent( srcElements[ i ], destElements[ i ] );
-				}
-			} else {
-				cloneCopyEvent( elem, clone );
-			}
-		}
-
-		// Preserve script evaluation history
-		destElements = getAll( clone, "script" );
-		if ( destElements.length > 0 ) {
-			setGlobalEval( destElements, !inPage && getAll( elem, "script" ) );
-		}
-
-		// Return the cloned set
-		return clone;
-	},
-
-	cleanData: function( elems ) {
-		var data, elem, type,
-			special = jQuery.event.special,
-			i = 0;
-
-		for ( ; ( elem = elems[ i ] ) !== undefined; i++ ) {
-			if ( acceptData( elem ) ) {
-				if ( ( data = elem[ dataPriv.expando ] ) ) {
-					if ( data.events ) {
-						for ( type in data.events ) {
-							if ( special[ type ] ) {
-								jQuery.event.remove( elem, type );
-
-							// This is a shortcut to avoid jQuery.event.remove's overhead
-							} else {
-								jQuery.removeEvent( elem, type, data.handle );
-							}
-						}
-					}
-
-					// Support: Chrome <=35 - 45+
-					// Assign undefined instead of using delete, see Data#remove
-					elem[ dataPriv.expando ] = undefined;
-				}
-				if ( elem[ dataUser.expando ] ) {
-
-					// Support: Chrome <=35 - 45+
-					// Assign undefined instead of using delete, see Data#remove
-					elem[ dataUser.expando ] = undefined;
-				}
-			}
-		}
-	}
-} );
-
-jQuery.fn.extend( {
-	detach: function( selector ) {
-		return remove( this, selector, true );
-	},
-
-	remove: function( selector ) {
-		return remove( this, selector );
-	},
-
-	text: function( value ) {
-		return access( this, function( value ) {
-			return value === undefined ?
-				jQuery.text( this ) :
-				this.empty().each( function() {
-					if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) {
-						this.textContent = value;
-					}
-				} );
-		}, null, value, arguments.length );
-	},
-
-	append: function() {
-		return domManip( this, arguments, function( elem ) {
-			if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) {
-				var target = manipulationTarget( this, elem );
-				target.appendChild( elem );
-			}
-		} );
-	},
-
-	prepend: function() {
-		return domManip( this, arguments, function( elem ) {
-			if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) {
-				var target = manipulationTarget( this, elem );
-				target.insertBefore( elem, target.firstChild );
-			}
-		} );
-	},
-
-	before: function() {
-		return domManip( this, arguments, function( elem ) {
-			if ( this.parentNode ) {
-				this.parentNode.insertBefore( elem, this );
-			}
-		} );
-	},
-
-	after: function() {
-		return domManip( this, arguments, function( elem ) {
-			if ( this.parentNode ) {
-				this.parentNode.insertBefore( elem, this.nextSibling );
-			}
-		} );
-	},
-
-	empty: function() {
-		var elem,
-			i = 0;
-
-		for ( ; ( elem = this[ i ] ) != null; i++ ) {
-			if ( elem.nodeType === 1 ) {
-
-				// Prevent memory leaks
-				jQuery.cleanData( getAll( elem, false ) );
-
-				// Remove any remaining nodes
-				elem.textContent = "";
-			}
-		}
-
-		return this;
-	},
-
-	clone: function( dataAndEvents, deepDataAndEvents ) {
-		dataAndEvents = dataAndEvents == null ? false : dataAndEvents;
-		deepDataAndEvents = deepDataAndEvents == null ? dataAndEvents : deepDataAndEvents;
-
-		return this.map( function() {
-			return jQuery.clone( this, dataAndEvents, deepDataAndEvents );
-		} );
-	},
-
-	html: function( value ) {
-		return access( this, function( value ) {
-			var elem = this[ 0 ] || {},
-				i = 0,
-				l = this.length;
-
-			if ( value === undefined && elem.nodeType === 1 ) {
-				return elem.innerHTML;
-			}
-
-			// See if we can take a shortcut and just use innerHTML
-			if ( typeof value === "string" && !rnoInnerhtml.test( value ) &&
-				!wrapMap[ ( rtagName.exec( value ) || [ "", "" ] )[ 1 ].toLowerCase() ] ) {
-
-				value = jQuery.htmlPrefilter( value );
-
-				try {
-					for ( ; i < l; i++ ) {
-						elem = this[ i ] || {};
-
-						// Remove element nodes and prevent memory leaks
-						if ( elem.nodeType === 1 ) {
-							jQuery.cleanData( getAll( elem, false ) );
-							elem.innerHTML = value;
-						}
-					}
-
-					elem = 0;
-
-				// If using innerHTML throws an exception, use the fallback method
-				} catch ( e ) {}
-			}
-
-			if ( elem ) {
-				this.empty().append( value );
-			}
-		}, null, value, arguments.length );
-	},
-
-	replaceWith: function() {
-		var ignored = [];
-
-		// Make the changes, replacing each non-ignored context element with the new content
-		return domManip( this, arguments, function( elem ) {
-			var parent = this.parentNode;
-
-			if ( jQuery.inArray( this, ignored ) < 0 ) {
-				jQuery.cleanData( getAll( this ) );
-				if ( parent ) {
-					parent.replaceChild( elem, this );
-				}
-			}
-
-		// Force callback invocation
-		}, ignored );
-	}
-} );
-
-jQuery.each( {
-	appendTo: "append",
-	prependTo: "prepend",
-	insertBefore: "before",
-	insertAfter: "after",
-	replaceAll: "replaceWith"
-}, function( name, original ) {
-	jQuery.fn[ name ] = function( selector ) {
-		var elems,
-			ret = [],
-			insert = jQuery( selector ),
-			last = insert.length - 1,
-			i = 0;
-
-		for ( ; i <= last; i++ ) {
-			elems = i === last ? this : this.clone( true );
-			jQuery( insert[ i ] )[ original ]( elems );
-
-			// Support: Android <=4.0 only, PhantomJS 1 only
-			// .get() because push.apply(_, arraylike) throws on ancient WebKit
-			push.apply( ret, elems.get() );
-		}
-
-		return this.pushStack( ret );
-	};
-} );
-var rnumnonpx = new RegExp( "^(" + pnum + ")(?!px)[a-z%]+$", "i" );
-
-var getStyles = function( elem ) {
-
-		// Support: IE <=11 only, Firefox <=30 (#15098, #14150)
-		// IE throws on elements created in popups
-		// FF meanwhile throws on frame elements through "defaultView.getComputedStyle"
-		var view = elem.ownerDocument.defaultView;
-
-		if ( !view || !view.opener ) {
-			view = window;
-		}
-
-		return view.getComputedStyle( elem );
-	};
-
-var rboxStyle = new RegExp( cssExpand.join( "|" ), "i" );
-
-
-
-( function() {
-
-	// Executing both pixelPosition & boxSizingReliable tests require only one layout
-	// so they're executed at the same time to save the second computation.
-	function computeStyleTests() {
-
-		// This is a singleton, we need to execute it only once
-		if ( !div ) {
-			return;
-		}
-
-		container.style.cssText = "position:absolute;left:-11111px;width:60px;" +
-			"margin-top:1px;padding:0;border:0";
-		div.style.cssText =
-			"position:relative;display:block;box-sizing:border-box;overflow:scroll;" +
-			"margin:auto;border:1px;padding:1px;" +
-			"width:60%;top:1%";
-		documentElement.appendChild( container ).appendChild( div );
-
-		var divStyle = window.getComputedStyle( div );
-		pixelPositionVal = divStyle.top !== "1%";
-
-		// Support: Android 4.0 - 4.3 only, Firefox <=3 - 44
-		reliableMarginLeftVal = roundPixelMeasures( divStyle.marginLeft ) === 12;
-
-		// Support: Android 4.0 - 4.3 only, Safari <=9.1 - 10.1, iOS <=7.0 - 9.3
-		// Some styles come back with percentage values, even though they shouldn't
-		div.style.right = "60%";
-		pixelBoxStylesVal = roundPixelMeasures( divStyle.right ) === 36;
-
-		// Support: IE 9 - 11 only
-		// Detect misreporting of content dimensions for box-sizing:border-box elements
-		boxSizingReliableVal = roundPixelMeasures( divStyle.width ) === 36;
-
-		// Support: IE 9 only
-		// Detect overflow:scroll screwiness (gh-3699)
-		// Support: Chrome <=64
-		// Don't get tricked when zoom affects offsetWidth (gh-4029)
-		div.style.position = "absolute";
-		scrollboxSizeVal = roundPixelMeasures( div.offsetWidth / 3 ) === 12;
-
-		documentElement.removeChild( container );
-
-		// Nullify the div so it wouldn't be stored in the memory and
-		// it will also be a sign that checks already performed
-		div = null;
-	}
-
-	function roundPixelMeasures( measure ) {
-		return Math.round( parseFloat( measure ) );
-	}
-
-	var pixelPositionVal, boxSizingReliableVal, scrollboxSizeVal, pixelBoxStylesVal,
-		reliableMarginLeftVal,
-		container = document.createElement( "div" ),
-		div = document.createElement( "div" );
-
-	// Finish early in limited (non-browser) environments
-	if ( !div.style ) {
-		return;
-	}
-
-	// Support: IE <=9 - 11 only
-	// Style of cloned element affects source element cloned (#8908)
-	div.style.backgroundClip = "content-box";
-	div.cloneNode( true ).style.backgroundClip = "";
-	support.clearCloneStyle = div.style.backgroundClip === "content-box";
-
-	jQuery.extend( support, {
-		boxSizingReliable: function() {
-			computeStyleTests();
-			return boxSizingReliableVal;
-		},
-		pixelBoxStyles: function() {
-			computeStyleTests();
-			return pixelBoxStylesVal;
-		},
-		pixelPosition: function() {
-			computeStyleTests();
-			return pixelPositionVal;
-		},
-		reliableMarginLeft: function() {
-			computeStyleTests();
-			return reliableMarginLeftVal;
-		},
-		scrollboxSize: function() {
-			computeStyleTests();
-			return scrollboxSizeVal;
-		}
-	} );
-} )();
-
-
-function curCSS( elem, name, computed ) {
-	var width, minWidth, maxWidth, ret,
-
-		// Support: Firefox 51+
-		// Retrieving style before computed somehow
-		// fixes an issue with getting wrong values
-		// on detached elements
-		style = elem.style;
-
-	computed = computed || getStyles( elem );
-
-	// getPropertyValue is needed for:
-	//   .css('filter') (IE 9 only, #12537)
-	//   .css('--customProperty) (#3144)
-	if ( computed ) {
-		ret = computed.getPropertyValue( name ) || computed[ name ];
-
-		if ( ret === "" && !isAttached( elem ) ) {
-			ret = jQuery.style( elem, name );
-		}
-
-		// A tribute to the "awesome hack by Dean Edwards"
-		// Android Browser returns percentage for some values,
-		// but width seems to be reliably pixels.
-		// This is against the CSSOM draft spec:
-		// https://drafts.csswg.org/cssom/#resolved-values
-		if ( !support.pixelBoxStyles() && rnumnonpx.test( ret ) && rboxStyle.test( name ) ) {
-
-			// Remember the original values
-			width = style.width;
-			minWidth = style.minWidth;
-			maxWidth = style.maxWidth;
-
-			// Put in the new values to get a computed value out
-			style.minWidth = style.maxWidth = style.width = ret;
-			ret = computed.width;
-
-			// Revert the changed values
-			style.width = width;
-			style.minWidth = minWidth;
-			style.maxWidth = maxWidth;
-		}
-	}
-
-	return ret !== undefined ?
-
-		// Support: IE <=9 - 11 only
-		// IE returns zIndex value as an integer.
-		ret + "" :
-		ret;
-}
-
-
-function addGetHookIf( conditionFn, hookFn ) {
-
-	// Define the hook, we'll check on the first run if it's really needed.
-	return {
-		get: function() {
-			if ( conditionFn() ) {
-
-				// Hook not needed (or it's not possible to use it due
-				// to missing dependency), remove it.
-				delete this.get;
-				return;
-			}
-
-			// Hook needed; redefine it so that the support test is not executed again.
-			return ( this.get = hookFn ).apply( this, arguments );
-		}
-	};
-}
-
-
-var cssPrefixes = [ "Webkit", "Moz", "ms" ],
-	emptyStyle = document.createElement( "div" ).style,
-	vendorProps = {};
-
-// Return a vendor-prefixed property or undefined
-function vendorPropName( name ) {
-
-	// Check for vendor prefixed names
-	var capName = name[ 0 ].toUpperCase() + name.slice( 1 ),
-		i = cssPrefixes.length;
-
-	while ( i-- ) {
-		name = cssPrefixes[ i ] + capName;
-		if ( name in emptyStyle ) {
-			return name;
-		}
-	}
-}
-
-// Return a potentially-mapped jQuery.cssProps or vendor prefixed property
-function finalPropName( name ) {
-	var final = jQuery.cssProps[ name ] || vendorProps[ name ];
-
-	if ( final ) {
-		return final;
-	}
-	if ( name in emptyStyle ) {
-		return name;
-	}
-	return vendorProps[ name ] = vendorPropName( name ) || name;
-}
-
-
-var
-
-	// Swappable if display is none or starts with table
-	// except "table", "table-cell", or "table-caption"
-	// See here for display values: https://developer.mozilla.org/en-US/docs/CSS/display
-	rdisplayswap = /^(none|table(?!-c[ea]).+)/,
-	rcustomProp = /^--/,
-	cssShow = { position: "absolute", visibility: "hidden", display: "block" },
-	cssNormalTransform = {
-		letterSpacing: "0",
-		fontWeight: "400"
-	};
-
-function setPositiveNumber( elem, value, subtract ) {
-
-	// Any relative (+/-) values have already been
-	// normalized at this point
-	var matches = rcssNum.exec( value );
-	return matches ?
-
-		// Guard against undefined "subtract", e.g., when used as in cssHooks
-		Math.max( 0, matches[ 2 ] - ( subtract || 0 ) ) + ( matches[ 3 ] || "px" ) :
-		value;
-}
-
-function boxModelAdjustment( elem, dimension, box, isBorderBox, styles, computedVal ) {
-	var i = dimension === "width" ? 1 : 0,
-		extra = 0,
-		delta = 0;
-
-	// Adjustment may not be necessary
-	if ( box === ( isBorderBox ? "border" : "content" ) ) {
-		return 0;
-	}
-
-	for ( ; i < 4; i += 2 ) {
-
-		// Both box models exclude margin
-		if ( box === "margin" ) {
-			delta += jQuery.css( elem, box + cssExpand[ i ], true, styles );
-		}
-
-		// If we get here with a content-box, we're seeking "padding" or "border" or "margin"
-		if ( !isBorderBox ) {
-
-			// Add padding
-			delta += jQuery.css( elem, "padding" + cssExpand[ i ], true, styles );
-
-			// For "border" or "margin", add border
-			if ( box !== "padding" ) {
-				delta += jQuery.css( elem, "border" + cssExpand[ i ] + "Width", true, styles );
-
-			// But still keep track of it otherwise
-			} else {
-				extra += jQuery.css( elem, "border" + cssExpand[ i ] + "Width", true, styles );
-			}
-
-		// If we get here with a border-box (content + padding + border), we're seeking "content" or
-		// "padding" or "margin"
-		} else {
-
-			// For "content", subtract padding
-			if ( box === "content" ) {
-				delta -= jQuery.css( elem, "padding" + cssExpand[ i ], true, styles );
-			}
-
-			// For "content" or "padding", subtract border
-			if ( box !== "margin" ) {
-				delta -= jQuery.css( elem, "border" + cssExpand[ i ] + "Width", true, styles );
-			}
-		}
-	}
-
-	// Account for positive content-box scroll gutter when requested by providing computedVal
-	if ( !isBorderBox && computedVal >= 0 ) {
-
-		// offsetWidth/offsetHeight is a rounded sum of content, padding, scroll gutter, and border
-		// Assuming integer scroll gutter, subtract the rest and round down
-		delta += Math.max( 0, Math.ceil(
-			elem[ "offset" + dimension[ 0 ].toUpperCase() + dimension.slice( 1 ) ] -
-			computedVal -
-			delta -
-			extra -
-			0.5
-
-		// If offsetWidth/offsetHeight is unknown, then we can't determine content-box scroll gutter
-		// Use an explicit zero to avoid NaN (gh-3964)
-		) ) || 0;
-	}
-
-	return delta;
-}
-
-function getWidthOrHeight( elem, dimension, extra ) {
-
-	// Start with computed style
-	var styles = getStyles( elem ),
-
-		// To avoid forcing a reflow, only fetch boxSizing if we need it (gh-4322).
-		// Fake content-box until we know it's needed to know the true value.
-		boxSizingNeeded = !support.boxSizingReliable() || extra,
-		isBorderBox = boxSizingNeeded &&
-			jQuery.css( elem, "boxSizing", false, styles ) === "border-box",
-		valueIsBorderBox = isBorderBox,
-
-		val = curCSS( elem, dimension, styles ),
-		offsetProp = "offset" + dimension[ 0 ].toUpperCase() + dimension.slice( 1 );
-
-	// Support: Firefox <=54
-	// Return a confounding non-pixel value or feign ignorance, as appropriate.
-	if ( rnumnonpx.test( val ) ) {
-		if ( !extra ) {
-			return val;
-		}
-		val = "auto";
-	}
-
-
-	// Fall back to offsetWidth/offsetHeight when value is "auto"
-	// This happens for inline elements with no explicit setting (gh-3571)
-	// Support: Android <=4.1 - 4.3 only
-	// Also use offsetWidth/offsetHeight for misreported inline dimensions (gh-3602)
-	// Support: IE 9-11 only
-	// Also use offsetWidth/offsetHeight for when box sizing is unreliable
-	// We use getClientRects() to check for hidden/disconnected.
-	// In those cases, the computed value can be trusted to be border-box
-	if ( ( !support.boxSizingReliable() && isBorderBox ||
-		val === "auto" ||
-		!parseFloat( val ) && jQuery.css( elem, "display", false, styles ) === "inline" ) &&
-		elem.getClientRects().length ) {
-
-		isBorderBox = jQuery.css( elem, "boxSizing", false, styles ) === "border-box";
-
-		// Where available, offsetWidth/offsetHeight approximate border box dimensions.
-		// Where not available (e.g., SVG), assume unreliable box-sizing and interpret the
-		// retrieved value as a content box dimension.
-		valueIsBorderBox = offsetProp in elem;
-		if ( valueIsBorderBox ) {
-			val = elem[ offsetProp ];
-		}
-	}
-
-	// Normalize "" and auto
-	val = parseFloat( val ) || 0;
-
-	// Adjust for the element's box model
-	return ( val +
-		boxModelAdjustment(
-			elem,
-			dimension,
-			extra || ( isBorderBox ? "border" : "content" ),
-			valueIsBorderBox,
-			styles,
-
-			// Provide the current computed size to request scroll gutter calculation (gh-3589)
-			val
-		)
-	) + "px";
-}
-
-jQuery.extend( {
-
-	// Add in style property hooks for overriding the default
-	// behavior of getting and setting a style property
-	cssHooks: {
-		opacity: {
-			get: function( elem, computed ) {
-				if ( computed ) {
-
-					// We should always get a number back from opacity
-					var ret = curCSS( elem, "opacity" );
-					return ret === "" ? "1" : ret;
-				}
-			}
-		}
-	},
-
-	// Don't automatically add "px" to these possibly-unitless properties
-	cssNumber: {
-		"animationIterationCount": true,
-		"columnCount": true,
-		"fillOpacity": true,
-		"flexGrow": true,
-		"flexShrink": true,
-		"fontWeight": true,
-		"gridArea": true,
-		"gridColumn": true,
-		"gridColumnEnd": true,
-		"gridColumnStart": true,
-		"gridRow": true,
-		"gridRowEnd": true,
-		"gridRowStart": true,
-		"lineHeight": true,
-		"opacity": true,
-		"order": true,
-		"orphans": true,
-		"widows": true,
-		"zIndex": true,
-		"zoom": true
-	},
-
-	// Add in properties whose names you wish to fix before
-	// setting or getting the value
-	cssProps: {},
-
-	// Get and set the style property on a DOM Node
-	style: function( elem, name, value, extra ) {
-
-		// Don't set styles on text and comment nodes
-		if ( !elem || elem.nodeType === 3 || elem.nodeType === 8 || !elem.style ) {
-			return;
-		}
-
-		// Make sure that we're working with the right name
-		var ret, type, hooks,
-			origName = camelCase( name ),
-			isCustomProp = rcustomProp.test( name ),
-			style = elem.style;
-
-		// Make sure that we're working with the right name. We don't
-		// want to query the value if it is a CSS custom property
-		// since they are user-defined.
-		if ( !isCustomProp ) {
-			name = finalPropName( origName );
-		}
-
-		// Gets hook for the prefixed version, then unprefixed version
-		hooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ];
-
-		// Check if we're setting a value
-		if ( value !== undefined ) {
-			type = typeof value;
-
-			// Convert "+=" or "-=" to relative numbers (#7345)
-			if ( type === "string" && ( ret = rcssNum.exec( value ) ) && ret[ 1 ] ) {
-				value = adjustCSS( elem, name, ret );
-
-				// Fixes bug #9237
-				type = "number";
-			}
-
-			// Make sure that null and NaN values aren't set (#7116)
-			if ( value == null || value !== value ) {
-				return;
-			}
-
-			// If a number was passed in, add the unit (except for certain CSS properties)
-			// The isCustomProp check can be removed in jQuery 4.0 when we only auto-append
-			// "px" to a few hardcoded values.
-			if ( type === "number" && !isCustomProp ) {
-				value += ret && ret[ 3 ] || ( jQuery.cssNumber[ origName ] ? "" : "px" );
-			}
-
-			// background-* props affect original clone's values
-			if ( !support.clearCloneStyle && value === "" && name.indexOf( "background" ) === 0 ) {
-				style[ name ] = "inherit";
-			}
-
-			// If a hook was provided, use that value, otherwise just set the specified value
-			if ( !hooks || !( "set" in hooks ) ||
-				( value = hooks.set( elem, value, extra ) ) !== undefined ) {
-
-				if ( isCustomProp ) {
-					style.setProperty( name, value );
-				} else {
-					style[ name ] = value;
-				}
-			}
-
-		} else {
-
-			// If a hook was provided get the non-computed value from there
-			if ( hooks && "get" in hooks &&
-				( ret = hooks.get( elem, false, extra ) ) !== undefined ) {
-
-				return ret;
-			}
-
-			// Otherwise just get the value from the style object
-			return style[ name ];
-		}
-	},
-
-	css: function( elem, name, extra, styles ) {
-		var val, num, hooks,
-			origName = camelCase( name ),
-			isCustomProp = rcustomProp.test( name );
-
-		// Make sure that we're working with the right name. We don't
-		// want to modify the value if it is a CSS custom property
-		// since they are user-defined.
-		if ( !isCustomProp ) {
-			name = finalPropName( origName );
-		}
-
-		// Try prefixed name followed by the unprefixed name
-		hooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ];
-
-		// If a hook was provided get the computed value from there
-		if ( hooks && "get" in hooks ) {
-			val = hooks.get( elem, true, extra );
-		}
-
-		// Otherwise, if a way to get the computed value exists, use that
-		if ( val === undefined ) {
-			val = curCSS( elem, name, styles );
-		}
-
-		// Convert "normal" to computed value
-		if ( val === "normal" && name in cssNormalTransform ) {
-			val = cssNormalTransform[ name ];
-		}
-
-		// Make numeric if forced or a qualifier was provided and val looks numeric
-		if ( extra === "" || extra ) {
-			num = parseFloat( val );
-			return extra === true || isFinite( num ) ? num || 0 : val;
-		}
-
-		return val;
-	}
-} );
-
-jQuery.each( [ "height", "width" ], function( i, dimension ) {
-	jQuery.cssHooks[ dimension ] = {
-		get: function( elem, computed, extra ) {
-			if ( computed ) {
-
-				// Certain elements can have dimension info if we invisibly show them
-				// but it must have a current display style that would benefit
-				return rdisplayswap.test( jQuery.css( elem, "display" ) ) &&
-
-					// Support: Safari 8+
-					// Table columns in Safari have non-zero offsetWidth & zero
-					// getBoundingClientRect().width unless display is changed.
-					// Support: IE <=11 only
-					// Running getBoundingClientRect on a disconnected node
-					// in IE throws an error.
-					( !elem.getClientRects().length || !elem.getBoundingClientRect().width ) ?
-						swap( elem, cssShow, function() {
-							return getWidthOrHeight( elem, dimension, extra );
-						} ) :
-						getWidthOrHeight( elem, dimension, extra );
-			}
-		},
-
-		set: function( elem, value, extra ) {
-			var matches,
-				styles = getStyles( elem ),
-
-				// Only read styles.position if the test has a chance to fail
-				// to avoid forcing a reflow.
-				scrollboxSizeBuggy = !support.scrollboxSize() &&
-					styles.position === "absolute",
-
-				// To avoid forcing a reflow, only fetch boxSizing if we need it (gh-3991)
-				boxSizingNeeded = scrollboxSizeBuggy || extra,
-				isBorderBox = boxSizingNeeded &&
-					jQuery.css( elem, "boxSizing", false, styles ) === "border-box",
-				subtract = extra ?
-					boxModelAdjustment(
-						elem,
-						dimension,
-						extra,
-						isBorderBox,
-						styles
-					) :
-					0;
-
-			// Account for unreliable border-box dimensions by comparing offset* to computed and
-			// faking a content-box to get border and padding (gh-3699)
-			if ( isBorderBox && scrollboxSizeBuggy ) {
-				subtract -= Math.ceil(
-					elem[ "offset" + dimension[ 0 ].toUpperCase() + dimension.slice( 1 ) ] -
-					parseFloat( styles[ dimension ] ) -
-					boxModelAdjustment( elem, dimension, "border", false, styles ) -
-					0.5
-				);
-			}
-
-			// Convert to pixels if value adjustment is needed
-			if ( subtract && ( matches = rcssNum.exec( value ) ) &&
-				( matches[ 3 ] || "px" ) !== "px" ) {
-
-				elem.style[ dimension ] = value;
-				value = jQuery.css( elem, dimension );
-			}
-
-			return setPositiveNumber( elem, value, subtract );
-		}
-	};
-} );
-
-jQuery.cssHooks.marginLeft = addGetHookIf( support.reliableMarginLeft,
-	function( elem, computed ) {
-		if ( computed ) {
-			return ( parseFloat( curCSS( elem, "marginLeft" ) ) ||
-				elem.getBoundingClientRect().left -
-					swap( elem, { marginLeft: 0 }, function() {
-						return elem.getBoundingClientRect().left;
-					} )
-				) + "px";
-		}
-	}
-);
-
-// These hooks are used by animate to expand properties
-jQuery.each( {
-	margin: "",
-	padding: "",
-	border: "Width"
-}, function( prefix, suffix ) {
-	jQuery.cssHooks[ prefix + suffix ] = {
-		expand: function( value ) {
-			var i = 0,
-				expanded = {},
-
-				// Assumes a single number if not a string
-				parts = typeof value === "string" ? value.split( " " ) : [ value ];
-
-			for ( ; i < 4; i++ ) {
-				expanded[ prefix + cssExpand[ i ] + suffix ] =
-					parts[ i ] || parts[ i - 2 ] || parts[ 0 ];
-			}
-
-			return expanded;
-		}
-	};
-
-	if ( prefix !== "margin" ) {
-		jQuery.cssHooks[ prefix + suffix ].set = setPositiveNumber;
-	}
-} );
-
-jQuery.fn.extend( {
-	css: function( name, value ) {
-		return access( this, function( elem, name, value ) {
-			var styles, len,
-				map = {},
-				i = 0;
-
-			if ( Array.isArray( name ) ) {
-				styles = getStyles( elem );
-				len = name.length;
-
-				for ( ; i < len; i++ ) {
-					map[ name[ i ] ] = jQuery.css( elem, name[ i ], false, styles );
-				}
-
-				return map;
-			}
-
-			return value !== undefined ?
-				jQuery.style( elem, name, value ) :
-				jQuery.css( elem, name );
-		}, name, value, arguments.length > 1 );
-	}
-} );
-
-
-function Tween( elem, options, prop, end, easing ) {
-	return new Tween.prototype.init( elem, options, prop, end, easing );
-}
-jQuery.Tween = Tween;
-
-Tween.prototype = {
-	constructor: Tween,
-	init: function( elem, options, prop, end, easing, unit ) {
-		this.elem = elem;
-		this.prop = prop;
-		this.easing = easing || jQuery.easing._default;
-		this.options = options;
-		this.start = this.now = this.cur();
-		this.end = end;
-		this.unit = unit || ( jQuery.cssNumber[ prop ] ? "" : "px" );
-	},
-	cur: function() {
-		var hooks = Tween.propHooks[ this.prop ];
-
-		return hooks && hooks.get ?
-			hooks.get( this ) :
-			Tween.propHooks._default.get( this );
-	},
-	run: function( percent ) {
-		var eased,
-			hooks = Tween.propHooks[ this.prop ];
-
-		if ( this.options.duration ) {
-			this.pos = eased = jQuery.easing[ this.easing ](
-				percent, this.options.duration * percent, 0, 1, this.options.duration
-			);
-		} else {
-			this.pos = eased = percent;
-		}
-		this.now = ( this.end - this.start ) * eased + this.start;
-
-		if ( this.options.step ) {
-			this.options.step.call( this.elem, this.now, this );
-		}
-
-		if ( hooks && hooks.set ) {
-			hooks.set( this );
-		} else {
-			Tween.propHooks._default.set( this );
-		}
-		return this;
-	}
-};
-
-Tween.prototype.init.prototype = Tween.prototype;
-
-Tween.propHooks = {
-	_default: {
-		get: function( tween ) {
-			var result;
-
-			// Use a property on the element directly when it is not a DOM element,
-			// or when there is no matching style property that exists.
-			if ( tween.elem.nodeType !== 1 ||
-				tween.elem[ tween.prop ] != null && tween.elem.style[ tween.prop ] == null ) {
-				return tween.elem[ tween.prop ];
-			}
-
-			// Passing an empty string as a 3rd parameter to .css will automatically
-			// attempt a parseFloat and fallback to a string if the parse fails.
-			// Simple values such as "10px" are parsed to Float;
-			// complex values such as "rotate(1rad)" are returned as-is.
-			result = jQuery.css( tween.elem, tween.prop, "" );
-
-			// Empty strings, null, undefined and "auto" are converted to 0.
-			return !result || result === "auto" ? 0 : result;
-		},
-		set: function( tween ) {
-
-			// Use step hook for back compat.
-			// Use cssHook if its there.
-			// Use .style if available and use plain properties where available.
-			if ( jQuery.fx.step[ tween.prop ] ) {
-				jQuery.fx.step[ tween.prop ]( tween );
-			} else if ( tween.elem.nodeType === 1 && (
-					jQuery.cssHooks[ tween.prop ] ||
-					tween.elem.style[ finalPropName( tween.prop ) ] != null ) ) {
-				jQuery.style( tween.elem, tween.prop, tween.now + tween.unit );
-			} else {
-				tween.elem[ tween.prop ] = tween.now;
-			}
-		}
-	}
-};
-
-// Support: IE <=9 only
-// Panic based approach to setting things on disconnected nodes
-Tween.propHooks.scrollTop = Tween.propHooks.scrollLeft = {
-	set: function( tween ) {
-		if ( tween.elem.nodeType && tween.elem.parentNode ) {
-			tween.elem[ tween.prop ] = tween.now;
-		}
-	}
-};
-
-jQuery.easing = {
-	linear: function( p ) {
-		return p;
-	},
-	swing: function( p ) {
-		return 0.5 - Math.cos( p * Math.PI ) / 2;
-	},
-	_default: "swing"
-};
-
-jQuery.fx = Tween.prototype.init;
-
-// Back compat <1.8 extension point
-jQuery.fx.step = {};
-
-
-
-
-var
-	fxNow, inProgress,
-	rfxtypes = /^(?:toggle|show|hide)$/,
-	rrun = /queueHooks$/;
-
-function schedule() {
-	if ( inProgress ) {
-		if ( document.hidden === false && window.requestAnimationFrame ) {
-			window.requestAnimationFrame( schedule );
-		} else {
-			window.setTimeout( schedule, jQuery.fx.interval );
-		}
-
-		jQuery.fx.tick();
-	}
-}
-
-// Animations created synchronously will run synchronously
-function createFxNow() {
-	window.setTimeout( function() {
-		fxNow = undefined;
-	} );
-	return ( fxNow = Date.now() );
-}
-
-// Generate parameters to create a standard animation
-function genFx( type, includeWidth ) {
-	var which,
-		i = 0,
-		attrs = { height: type };
-
-	// If we include width, step value is 1 to do all cssExpand values,
-	// otherwise step value is 2 to skip over Left and Right
-	includeWidth = includeWidth ? 1 : 0;
-	for ( ; i < 4; i += 2 - includeWidth ) {
-		which = cssExpand[ i ];
-		attrs[ "margin" + which ] = attrs[ "padding" + which ] = type;
-	}
-
-	if ( includeWidth ) {
-		attrs.opacity = attrs.width = type;
-	}
-
-	return attrs;
-}
-
-function createTween( value, prop, animation ) {
-	var tween,
-		collection = ( Animation.tweeners[ prop ] || [] ).concat( Animation.tweeners[ "*" ] ),
-		index = 0,
-		length = collection.length;
-	for ( ; index < length; index++ ) {
-		if ( ( tween = collection[ index ].call( animation, prop, value ) ) ) {
-
-			// We're done with this property
-			return tween;
-		}
-	}
-}
-
-function defaultPrefilter( elem, props, opts ) {
-	var prop, value, toggle, hooks, oldfire, propTween, restoreDisplay, display,
-		isBox = "width" in props || "height" in props,
-		anim = this,
-		orig = {},
-		style = elem.style,
-		hidden = elem.nodeType && isHiddenWithinTree( elem ),
-		dataShow = dataPriv.get( elem, "fxshow" );
-
-	// Queue-skipping animations hijack the fx hooks
-	if ( !opts.queue ) {
-		hooks = jQuery._queueHooks( elem, "fx" );
-		if ( hooks.unqueued == null ) {
-			hooks.unqueued = 0;
-			oldfire = hooks.empty.fire;
-			hooks.empty.fire = function() {
-				if ( !hooks.unqueued ) {
-					oldfire();
-				}
-			};
-		}
-		hooks.unqueued++;
-
-		anim.always( function() {
-
-			// Ensure the complete handler is called before this completes
-			anim.always( function() {
-				hooks.unqueued--;
-				if ( !jQuery.queue( elem, "fx" ).length ) {
-					hooks.empty.fire();
-				}
-			} );
-		} );
-	}
-
-	// Detect show/hide animations
-	for ( prop in props ) {
-		value = props[ prop ];
-		if ( rfxtypes.test( value ) ) {
-			delete props[ prop ];
-			toggle = toggle || value === "toggle";
-			if ( value === ( hidden ? "hide" : "show" ) ) {
-
-				// Pretend to be hidden if this is a "show" and
-				// there is still data from a stopped show/hide
-				if ( value === "show" && dataShow && dataShow[ prop ] !== undefined ) {
-					hidden = true;
-
-				// Ignore all other no-op show/hide data
-				} else {
-					continue;
-				}
-			}
-			orig[ prop ] = dataShow && dataShow[ prop ] || jQuery.style( elem, prop );
-		}
-	}
-
-	// Bail out if this is a no-op like .hide().hide()
-	propTween = !jQuery.isEmptyObject( props );
-	if ( !propTween && jQuery.isEmptyObject( orig ) ) {
-		return;
-	}
-
-	// Restrict "overflow" and "display" styles during box animations
-	if ( isBox && elem.nodeType === 1 ) {
-
-		// Support: IE <=9 - 11, Edge 12 - 15
-		// Record all 3 overflow attributes because IE does not infer the shorthand
-		// from identically-valued overflowX and overflowY and Edge just mirrors
-		// the overflowX value there.
-		opts.overflow = [ style.overflow, style.overflowX, style.overflowY ];
-
-		// Identify a display type, preferring old show/hide data over the CSS cascade
-		restoreDisplay = dataShow && dataShow.display;
-		if ( restoreDisplay == null ) {
-			restoreDisplay = dataPriv.get( elem, "display" );
-		}
-		display = jQuery.css( elem, "display" );
-		if ( display === "none" ) {
-			if ( restoreDisplay ) {
-				display = restoreDisplay;
-			} else {
-
-				// Get nonempty value(s) by temporarily forcing visibility
-				showHide( [ elem ], true );
-				restoreDisplay = elem.style.display || restoreDisplay;
-				display = jQuery.css( elem, "display" );
-				showHide( [ elem ] );
-			}
-		}
-
-		// Animate inline elements as inline-block
-		if ( display === "inline" || display === "inline-block" && restoreDisplay != null ) {
-			if ( jQuery.css( elem, "float" ) === "none" ) {
-
-				// Restore the original display value at the end of pure show/hide animations
-				if ( !propTween ) {
-					anim.done( function() {
-						style.display = restoreDisplay;
-					} );
-					if ( restoreDisplay == null ) {
-						display = style.display;
-						restoreDisplay = display === "none" ? "" : display;
-					}
-				}
-				style.display = "inline-block";
-			}
-		}
-	}
-
-	if ( opts.overflow ) {
-		style.overflow = "hidden";
-		anim.always( function() {
-			style.overflow = opts.overflow[ 0 ];
-			style.overflowX = opts.overflow[ 1 ];
-			style.overflowY = opts.overflow[ 2 ];
-		} );
-	}
-
-	// Implement show/hide animations
-	propTween = false;
-	for ( prop in orig ) {
-
-		// General show/hide setup for this element animation
-		if ( !propTween ) {
-			if ( dataShow ) {
-				if ( "hidden" in dataShow ) {
-					hidden = dataShow.hidden;
-				}
-			} else {
-				dataShow = dataPriv.access( elem, "fxshow", { display: restoreDisplay } );
-			}
-
-			// Store hidden/visible for toggle so `.stop().toggle()` "reverses"
-			if ( toggle ) {
-				dataShow.hidden = !hidden;
-			}
-
-			// Show elements before animating them
-			if ( hidden ) {
-				showHide( [ elem ], true );
-			}
-
-			/* eslint-disable no-loop-func */
-
-			anim.done( function() {
-
-			/* eslint-enable no-loop-func */
-
-				// The final step of a "hide" animation is actually hiding the element
-				if ( !hidden ) {
-					showHide( [ elem ] );
-				}
-				dataPriv.remove( elem, "fxshow" );
-				for ( prop in orig ) {
-					jQuery.style( elem, prop, orig[ prop ] );
-				}
-			} );
-		}
-
-		// Per-property setup
-		propTween = createTween( hidden ? dataShow[ prop ] : 0, prop, anim );
-		if ( !( prop in dataShow ) ) {
-			dataShow[ prop ] = propTween.start;
-			if ( hidden ) {
-				propTween.end = propTween.start;
-				propTween.start = 0;
-			}
-		}
-	}
-}
-
-function propFilter( props, specialEasing ) {
-	var index, name, easing, value, hooks;
-
-	// camelCase, specialEasing and expand cssHook pass
-	for ( index in props ) {
-		name = camelCase( index );
-		easing = specialEasing[ name ];
-		value = props[ index ];
-		if ( Array.isArray( value ) ) {
-			easing = value[ 1 ];
-			value = props[ index ] = value[ 0 ];
-		}
-
-		if ( index !== name ) {
-			props[ name ] = value;
-			delete props[ index ];
-		}
-
-		hooks = jQuery.cssHooks[ name ];
-		if ( hooks && "expand" in hooks ) {
-			value = hooks.expand( value );
-			delete props[ name ];
-
-			// Not quite $.extend, this won't overwrite existing keys.
-			// Reusing 'index' because we have the correct "name"
-			for ( index in value ) {
-				if ( !( index in props ) ) {
-					props[ index ] = value[ index ];
-					specialEasing[ index ] = easing;
-				}
-			}
-		} else {
-			specialEasing[ name ] = easing;
-		}
-	}
-}
-
-function Animation( elem, properties, options ) {
-	var result,
-		stopped,
-		index = 0,
-		length = Animation.prefilters.length,
-		deferred = jQuery.Deferred().always( function() {
-
-			// Don't match elem in the :animated selector
-			delete tick.elem;
-		} ),
-		tick = function() {
-			if ( stopped ) {
-				return false;
-			}
-			var currentTime = fxNow || createFxNow(),
-				remaining = Math.max( 0, animation.startTime + animation.duration - currentTime ),
-
-				// Support: Android 2.3 only
-				// Archaic crash bug won't allow us to use `1 - ( 0.5 || 0 )` (#12497)
-				temp = remaining / animation.duration || 0,
-				percent = 1 - temp,
-				index = 0,
-				length = animation.tweens.length;
-
-			for ( ; index < length; index++ ) {
-				animation.tweens[ index ].run( percent );
-			}
-
-			deferred.notifyWith( elem, [ animation, percent, remaining ] );
-
-			// If there's more to do, yield
-			if ( percent < 1 && length ) {
-				return remaining;
-			}
-
-			// If this was an empty animation, synthesize a final progress notification
-			if ( !length ) {
-				deferred.notifyWith( elem, [ animation, 1, 0 ] );
-			}
-
-			// Resolve the animation and report its conclusion
-			deferred.resolveWith( elem, [ animation ] );
-			return false;
-		},
-		animation = deferred.promise( {
-			elem: elem,
-			props: jQuery.extend( {}, properties ),
-			opts: jQuery.extend( true, {
-				specialEasing: {},
-				easing: jQuery.easing._default
-			}, options ),
-			originalProperties: properties,
-			originalOptions: options,
-			startTime: fxNow || createFxNow(),
-			duration: options.duration,
-			tweens: [],
-			createTween: function( prop, end ) {
-				var tween = jQuery.Tween( elem, animation.opts, prop, end,
-						animation.opts.specialEasing[ prop ] || animation.opts.easing );
-				animation.tweens.push( tween );
-				return tween;
-			},
-			stop: function( gotoEnd ) {
-				var index = 0,
-
-					// If we are going to the end, we want to run all the tweens
-					// otherwise we skip this part
-					length = gotoEnd ? animation.tweens.length : 0;
-				if ( stopped ) {
-					return this;
-				}
-				stopped = true;
-				for ( ; index < length; index++ ) {
-					animation.tweens[ index ].run( 1 );
-				}
-
-				// Resolve when we played the last frame; otherwise, reject
-				if ( gotoEnd ) {
-					deferred.notifyWith( elem, [ animation, 1, 0 ] );
-					deferred.resolveWith( elem, [ animation, gotoEnd ] );
-				} else {
-					deferred.rejectWith( elem, [ animation, gotoEnd ] );
-				}
-				return this;
-			}
-		} ),
-		props = animation.props;
-
-	propFilter( props, animation.opts.specialEasing );
-
-	for ( ; index < length; index++ ) {
-		result = Animation.prefilters[ index ].call( animation, elem, props, animation.opts );
-		if ( result ) {
-			if ( isFunction( result.stop ) ) {
-				jQuery._queueHooks( animation.elem, animation.opts.queue ).stop =
-					result.stop.bind( result );
-			}
-			return result;
-		}
-	}
-
-	jQuery.map( props, createTween, animation );
-
-	if ( isFunction( animation.opts.start ) ) {
-		animation.opts.start.call( elem, animation );
-	}
-
-	// Attach callbacks from options
-	animation
-		.progress( animation.opts.progress )
-		.done( animation.opts.done, animation.opts.complete )
-		.fail( animation.opts.fail )
-		.always( animation.opts.always );
-
-	jQuery.fx.timer(
-		jQuery.extend( tick, {
-			elem: elem,
-			anim: animation,
-			queue: animation.opts.queue
-		} )
-	);
-
-	return animation;
-}
-
-jQuery.Animation = jQuery.extend( Animation, {
-
-	tweeners: {
-		"*": [ function( prop, value ) {
-			var tween = this.createTween( prop, value );
-			adjustCSS( tween.elem, prop, rcssNum.exec( value ), tween );
-			return tween;
-		} ]
-	},
-
-	tweener: function( props, callback ) {
-		if ( isFunction( props ) ) {
-			callback = props;
-			props = [ "*" ];
-		} else {
-			props = props.match( rnothtmlwhite );
-		}
-
-		var prop,
-			index = 0,
-			length = props.length;
-
-		for ( ; index < length; index++ ) {
-			prop = props[ index ];
-			Animation.tweeners[ prop ] = Animation.tweeners[ prop ] || [];
-			Animation.tweeners[ prop ].unshift( callback );
-		}
-	},
-
-	prefilters: [ defaultPrefilter ],
-
-	prefilter: function( callback, prepend ) {
-		if ( prepend ) {
-			Animation.prefilters.unshift( callback );
-		} else {
-			Animation.prefilters.push( callback );
-		}
-	}
-} );
-
-jQuery.speed = function( speed, easing, fn ) {
-	var opt = speed && typeof speed === "object" ? jQuery.extend( {}, speed ) : {
-		complete: fn || !fn && easing ||
-			isFunction( speed ) && speed,
-		duration: speed,
-		easing: fn && easing || easing && !isFunction( easing ) && easing
-	};
-
-	// Go to the end state if fx are off
-	if ( jQuery.fx.off ) {
-		opt.duration = 0;
-
-	} else {
-		if ( typeof opt.duration !== "number" ) {
-			if ( opt.duration in jQuery.fx.speeds ) {
-				opt.duration = jQuery.fx.speeds[ opt.duration ];
-
-			} else {
-				opt.duration = jQuery.fx.speeds._default;
-			}
-		}
-	}
-
-	// Normalize opt.queue - true/undefined/null -> "fx"
-	if ( opt.queue == null || opt.queue === true ) {
-		opt.queue = "fx";
-	}
-
-	// Queueing
-	opt.old = opt.complete;
-
-	opt.complete = function() {
-		if ( isFunction( opt.old ) ) {
-			opt.old.call( this );
-		}
-
-		if ( opt.queue ) {
-			jQuery.dequeue( this, opt.queue );
-		}
-	};
-
-	return opt;
-};
-
-jQuery.fn.extend( {
-	fadeTo: function( speed, to, easing, callback ) {
-
-		// Show any hidden elements after setting opacity to 0
-		return this.filter( isHiddenWithinTree ).css( "opacity", 0 ).show()
-
-			// Animate to the value specified
-			.end().animate( { opacity: to }, speed, easing, callback );
-	},
-	animate: function( prop, speed, easing, callback ) {
-		var empty = jQuery.isEmptyObject( prop ),
-			optall = jQuery.speed( speed, easing, callback ),
-			doAnimation = function() {
-
-				// Operate on a copy of prop so per-property easing won't be lost
-				var anim = Animation( this, jQuery.extend( {}, prop ), optall );
-
-				// Empty animations, or finishing resolves immediately
-				if ( empty || dataPriv.get( this, "finish" ) ) {
-					anim.stop( true );
-				}
-			};
-			doAnimation.finish = doAnimation;
-
-		return empty || optall.queue === false ?
-			this.each( doAnimation ) :
-			this.queue( optall.queue, doAnimation );
-	},
-	stop: function( type, clearQueue, gotoEnd ) {
-		var stopQueue = function( hooks ) {
-			var stop = hooks.stop;
-			delete hooks.stop;
-			stop( gotoEnd );
-		};
-
-		if ( typeof type !== "string" ) {
-			gotoEnd = clearQueue;
-			clearQueue = type;
-			type = undefined;
-		}
-		if ( clearQueue && type !== false ) {
-			this.queue( type || "fx", [] );
-		}
-
-		return this.each( function() {
-			var dequeue = true,
-				index = type != null && type + "queueHooks",
-				timers = jQuery.timers,
-				data = dataPriv.get( this );
-
-			if ( index ) {
-				if ( data[ index ] && data[ index ].stop ) {
-					stopQueue( data[ index ] );
-				}
-			} else {
-				for ( index in data ) {
-					if ( data[ index ] && data[ index ].stop && rrun.test( index ) ) {
-						stopQueue( data[ index ] );
-					}
-				}
-			}
-
-			for ( index = timers.length; index--; ) {
-				if ( timers[ index ].elem === this &&
-					( type == null || timers[ index ].queue === type ) ) {
-
-					timers[ index ].anim.stop( gotoEnd );
-					dequeue = false;
-					timers.splice( index, 1 );
-				}
-			}
-
-			// Start the next in the queue if the last step wasn't forced.
-			// Timers currently will call their complete callbacks, which
-			// will dequeue but only if they were gotoEnd.
-			if ( dequeue || !gotoEnd ) {
-				jQuery.dequeue( this, type );
-			}
-		} );
-	},
-	finish: function( type ) {
-		if ( type !== false ) {
-			type = type || "fx";
-		}
-		return this.each( function() {
-			var index,
-				data = dataPriv.get( this ),
-				queue = data[ type + "queue" ],
-				hooks = data[ type + "queueHooks" ],
-				timers = jQuery.timers,
-				length = queue ? queue.length : 0;
-
-			// Enable finishing flag on private data
-			data.finish = true;
-
-			// Empty the queue first
-			jQuery.queue( this, type, [] );
-
-			if ( hooks && hooks.stop ) {
-				hooks.stop.call( this, true );
-			}
-
-			// Look for any active animations, and finish them
-			for ( index = timers.length; index--; ) {
-				if ( timers[ index ].elem === this && timers[ index ].queue === type ) {
-					timers[ index ].anim.stop( true );
-					timers.splice( index, 1 );
-				}
-			}
-
-			// Look for any animations in the old queue and finish them
-			for ( index = 0; index < length; index++ ) {
-				if ( queue[ index ] && queue[ index ].finish ) {
-					queue[ index ].finish.call( this );
-				}
-			}
-
-			// Turn off finishing flag
-			delete data.finish;
-		} );
-	}
-} );
-
-jQuery.each( [ "toggle", "show", "hide" ], function( i, name ) {
-	var cssFn = jQuery.fn[ name ];
-	jQuery.fn[ name ] = function( speed, easing, callback ) {
-		return speed == null || typeof speed === "boolean" ?
-			cssFn.apply( this, arguments ) :
-			this.animate( genFx( name, true ), speed, easing, callback );
-	};
-} );
-
-// Generate shortcuts for custom animations
-jQuery.each( {
-	slideDown: genFx( "show" ),
-	slideUp: genFx( "hide" ),
-	slideToggle: genFx( "toggle" ),
-	fadeIn: { opacity: "show" },
-	fadeOut: { opacity: "hide" },
-	fadeToggle: { opacity: "toggle" }
-}, function( name, props ) {
-	jQuery.fn[ name ] = function( speed, easing, callback ) {
-		return this.animate( props, speed, easing, callback );
-	};
-} );
-
-jQuery.timers = [];
-jQuery.fx.tick = function() {
-	var timer,
-		i = 0,
-		timers = jQuery.timers;
-
-	fxNow = Date.now();
-
-	for ( ; i < timers.length; i++ ) {
-		timer = timers[ i ];
-
-		// Run the timer and safely remove it when done (allowing for external removal)
-		if ( !timer() && timers[ i ] === timer ) {
-			timers.splice( i--, 1 );
-		}
-	}
-
-	if ( !timers.length ) {
-		jQuery.fx.stop();
-	}
-	fxNow = undefined;
-};
-
-jQuery.fx.timer = function( timer ) {
-	jQuery.timers.push( timer );
-	jQuery.fx.start();
-};
-
-jQuery.fx.interval = 13;
-jQuery.fx.start = function() {
-	if ( inProgress ) {
-		return;
-	}
-
-	inProgress = true;
-	schedule();
-};
-
-jQuery.fx.stop = function() {
-	inProgress = null;
-};
-
-jQuery.fx.speeds = {
-	slow: 600,
-	fast: 200,
-
-	// Default speed
-	_default: 400
-};
-
-
-// Based off of the plugin by Clint Helfers, with permission.
-// https://web.archive.org/web/20100324014747/http://blindsignals.com/index.php/2009/07/jquery-delay/
-jQuery.fn.delay = function( time, type ) {
-	time = jQuery.fx ? jQuery.fx.speeds[ time ] || time : time;
-	type = type || "fx";
-
-	return this.queue( type, function( next, hooks ) {
-		var timeout = window.setTimeout( next, time );
-		hooks.stop = function() {
-			window.clearTimeout( timeout );
-		};
-	} );
-};
-
-
-( function() {
-	var input = document.createElement( "input" ),
-		select = document.createElement( "select" ),
-		opt = select.appendChild( document.createElement( "option" ) );
-
-	input.type = "checkbox";
-
-	// Support: Android <=4.3 only
-	// Default value for a checkbox should be "on"
-	support.checkOn = input.value !== "";
-
-	// Support: IE <=11 only
-	// Must access selectedIndex to make default options select
-	support.optSelected = opt.selected;
-
-	// Support: IE <=11 only
-	// An input loses its value after becoming a radio
-	input = document.createElement( "input" );
-	input.value = "t";
-	input.type = "radio";
-	support.radioValue = input.value === "t";
-} )();
-
-
-var boolHook,
-	attrHandle = jQuery.expr.attrHandle;
-
-jQuery.fn.extend( {
-	attr: function( name, value ) {
-		return access( this, jQuery.attr, name, value, arguments.length > 1 );
-	},
-
-	removeAttr: function( name ) {
-		return this.each( function() {
-			jQuery.removeAttr( this, name );
-		} );
-	}
-} );
-
-jQuery.extend( {
-	attr: function( elem, name, value ) {
-		var ret, hooks,
-			nType = elem.nodeType;
-
-		// Don't get/set attributes on text, comment and attribute nodes
-		if ( nType === 3 || nType === 8 || nType === 2 ) {
-			return;
-		}
-
-		// Fallback to prop when attributes are not supported
-		if ( typeof elem.getAttribute === "undefined" ) {
-			return jQuery.prop( elem, name, value );
-		}
-
-		// Attribute hooks are determined by the lowercase version
-		// Grab necessary hook if one is defined
-		if ( nType !== 1 || !jQuery.isXMLDoc( elem ) ) {
-			hooks = jQuery.attrHooks[ name.toLowerCase() ] ||
-				( jQuery.expr.match.bool.test( name ) ? boolHook : undefined );
-		}
-
-		if ( value !== undefined ) {
-			if ( value === null ) {
-				jQuery.removeAttr( elem, name );
-				return;
-			}
-
-			if ( hooks && "set" in hooks &&
-				( ret = hooks.set( elem, value, name ) ) !== undefined ) {
-				return ret;
-			}
-
-			elem.setAttribute( name, value + "" );
-			return value;
-		}
-
-		if ( hooks && "get" in hooks && ( ret = hooks.get( elem, name ) ) !== null ) {
-			return ret;
-		}
-
-		ret = jQuery.find.attr( elem, name );
-
-		// Non-existent attributes return null, we normalize to undefined
-		return ret == null ? undefined : ret;
-	},
-
-	attrHooks: {
-		type: {
-			set: function( elem, value ) {
-				if ( !support.radioValue && value === "radio" &&
-					nodeName( elem, "input" ) ) {
-					var val = elem.value;
-					elem.setAttribute( "type", value );
-					if ( val ) {
-						elem.value = val;
-					}
-					return value;
-				}
-			}
-		}
-	},
-
-	removeAttr: function( elem, value ) {
-		var name,
-			i = 0,
-
-			// Attribute names can contain non-HTML whitespace characters
-			// https://html.spec.whatwg.org/multipage/syntax.html#attributes-2
-			attrNames = value && value.match( rnothtmlwhite );
-
-		if ( attrNames && elem.nodeType === 1 ) {
-			while ( ( name = attrNames[ i++ ] ) ) {
-				elem.removeAttribute( name );
-			}
-		}
-	}
-} );
-
-// Hooks for boolean attributes
-boolHook = {
-	set: function( elem, value, name ) {
-		if ( value === false ) {
-
-			// Remove boolean attributes when set to false
-			jQuery.removeAttr( elem, name );
-		} else {
-			elem.setAttribute( name, name );
-		}
-		return name;
-	}
-};
-
-jQuery.each( jQuery.expr.match.bool.source.match( /\w+/g ), function( i, name ) {
-	var getter = attrHandle[ name ] || jQuery.find.attr;
-
-	attrHandle[ name ] = function( elem, name, isXML ) {
-		var ret, handle,
-			lowercaseName = name.toLowerCase();
-
-		if ( !isXML ) {
-
-			// Avoid an infinite loop by temporarily removing this function from the getter
-			handle = attrHandle[ lowercaseName ];
-			attrHandle[ lowercaseName ] = ret;
-			ret = getter( elem, name, isXML ) != null ?
-				lowercaseName :
-				null;
-			attrHandle[ lowercaseName ] = handle;
-		}
-		return ret;
-	};
-} );
-
-
-
-
-var rfocusable = /^(?:input|select|textarea|button)$/i,
-	rclickable = /^(?:a|area)$/i;
-
-jQuery.fn.extend( {
-	prop: function( name, value ) {
-		return access( this, jQuery.prop, name, value, arguments.length > 1 );
-	},
-
-	removeProp: function( name ) {
-		return this.each( function() {
-			delete this[ jQuery.propFix[ name ] || name ];
-		} );
-	}
-} );
-
-jQuery.extend( {
-	prop: function( elem, name, value ) {
-		var ret, hooks,
-			nType = elem.nodeType;
-
-		// Don't get/set properties on text, comment and attribute nodes
-		if ( nType === 3 || nType === 8 || nType === 2 ) {
-			return;
-		}
-
-		if ( nType !== 1 || !jQuery.isXMLDoc( elem ) ) {
-
-			// Fix name and attach hooks
-			name = jQuery.propFix[ name ] || name;
-			hooks = jQuery.propHooks[ name ];
-		}
-
-		if ( value !== undefined ) {
-			if ( hooks && "set" in hooks &&
-				( ret = hooks.set( elem, value, name ) ) !== undefined ) {
-				return ret;
-			}
-
-			return ( elem[ name ] = value );
-		}
-
-		if ( hooks && "get" in hooks && ( ret = hooks.get( elem, name ) ) !== null ) {
-			return ret;
-		}
-
-		return elem[ name ];
-	},
-
-	propHooks: {
-		tabIndex: {
-			get: function( elem ) {
-
-				// Support: IE <=9 - 11 only
-				// elem.tabIndex doesn't always return the
-				// correct value when it hasn't been explicitly set
-				// https://web.archive.org/web/20141116233347/http://fluidproject.org/blog/2008/01/09/getting-setting-and-removing-tabindex-values-with-javascript/
-				// Use proper attribute retrieval(#12072)
-				var tabindex = jQuery.find.attr( elem, "tabindex" );
-
-				if ( tabindex ) {
-					return parseInt( tabindex, 10 );
-				}
-
-				if (
-					rfocusable.test( elem.nodeName ) ||
-					rclickable.test( elem.nodeName ) &&
-					elem.href
-				) {
-					return 0;
-				}
-
-				return -1;
-			}
-		}
-	},
-
-	propFix: {
-		"for": "htmlFor",
-		"class": "className"
-	}
-} );
-
-// Support: IE <=11 only
-// Accessing the selectedIndex property
-// forces the browser to respect setting selected
-// on the option
-// The getter ensures a default option is selected
-// when in an optgroup
-// eslint rule "no-unused-expressions" is disabled for this code
-// since it considers such accessions noop
-if ( !support.optSelected ) {
-	jQuery.propHooks.selected = {
-		get: function( elem ) {
-
-			/* eslint no-unused-expressions: "off" */
-
-			var parent = elem.parentNode;
-			if ( parent && parent.parentNode ) {
-				parent.parentNode.selectedIndex;
-			}
-			return null;
-		},
-		set: function( elem ) {
-
-			/* eslint no-unused-expressions: "off" */
-
-			var parent = elem.parentNode;
-			if ( parent ) {
-				parent.selectedIndex;
-
-				if ( parent.parentNode ) {
-					parent.parentNode.selectedIndex;
-				}
-			}
-		}
-	};
-}
-
-jQuery.each( [
-	"tabIndex",
-	"readOnly",
-	"maxLength",
-	"cellSpacing",
-	"cellPadding",
-	"rowSpan",
-	"colSpan",
-	"useMap",
-	"frameBorder",
-	"contentEditable"
-], function() {
-	jQuery.propFix[ this.toLowerCase() ] = this;
-} );
-
-
-
-
-	// Strip and collapse whitespace according to HTML spec
-	// https://infra.spec.whatwg.org/#strip-and-collapse-ascii-whitespace
-	function stripAndCollapse( value ) {
-		var tokens = value.match( rnothtmlwhite ) || [];
-		return tokens.join( " " );
-	}
-
-
-function getClass( elem ) {
-	return elem.getAttribute && elem.getAttribute( "class" ) || "";
-}
-
-function classesToArray( value ) {
-	if ( Array.isArray( value ) ) {
-		return value;
-	}
-	if ( typeof value === "string" ) {
-		return value.match( rnothtmlwhite ) || [];
-	}
-	return [];
-}
-
-jQuery.fn.extend( {
-	addClass: function( value ) {
-		var classes, elem, cur, curValue, clazz, j, finalValue,
-			i = 0;
-
-		if ( isFunction( value ) ) {
-			return this.each( function( j ) {
-				jQuery( this ).addClass( value.call( this, j, getClass( this ) ) );
-			} );
-		}
-
-		classes = classesToArray( value );
-
-		if ( classes.length ) {
-			while ( ( elem = this[ i++ ] ) ) {
-				curValue = getClass( elem );
-				cur = elem.nodeType === 1 && ( " " + stripAndCollapse( curValue ) + " " );
-
-				if ( cur ) {
-					j = 0;
-					while ( ( clazz = classes[ j++ ] ) ) {
-						if ( cur.indexOf( " " + clazz + " " ) < 0 ) {
-							cur += clazz + " ";
-						}
-					}
-
-					// Only assign if different to avoid unneeded rendering.
-					finalValue = stripAndCollapse( cur );
-					if ( curValue !== finalValue ) {
-						elem.setAttribute( "class", finalValue );
-					}
-				}
-			}
-		}
-
-		return this;
-	},
-
-	removeClass: function( value ) {
-		var classes, elem, cur, curValue, clazz, j, finalValue,
-			i = 0;
-
-		if ( isFunction( value ) ) {
-			return this.each( function( j ) {
-				jQuery( this ).removeClass( value.call( this, j, getClass( this ) ) );
-			} );
-		}
-
-		if ( !arguments.length ) {
-			return this.attr( "class", "" );
-		}
-
-		classes = classesToArray( value );
-
-		if ( classes.length ) {
-			while ( ( elem = this[ i++ ] ) ) {
-				curValue = getClass( elem );
-
-				// This expression is here for better compressibility (see addClass)
-				cur = elem.nodeType === 1 && ( " " + stripAndCollapse( curValue ) + " " );
-
-				if ( cur ) {
-					j = 0;
-					while ( ( clazz = classes[ j++ ] ) ) {
-
-						// Remove *all* instances
-						while ( cur.indexOf( " " + clazz + " " ) > -1 ) {
-							cur = cur.replace( " " + clazz + " ", " " );
-						}
-					}
-
-					// Only assign if different to avoid unneeded rendering.
-					finalValue = stripAndCollapse( cur );
-					if ( curValue !== finalValue ) {
-						elem.setAttribute( "class", finalValue );
-					}
-				}
-			}
-		}
-
-		return this;
-	},
-
-	toggleClass: function( value, stateVal ) {
-		var type = typeof value,
-			isValidValue = type === "string" || Array.isArray( value );
-
-		if ( typeof stateVal === "boolean" && isValidValue ) {
-			return stateVal ? this.addClass( value ) : this.removeClass( value );
-		}
-
-		if ( isFunction( value ) ) {
-			return this.each( function( i ) {
-				jQuery( this ).toggleClass(
-					value.call( this, i, getClass( this ), stateVal ),
-					stateVal
-				);
-			} );
-		}
-
-		return this.each( function() {
-			var className, i, self, classNames;
-
-			if ( isValidValue ) {
-
-				// Toggle individual class names
-				i = 0;
-				self = jQuery( this );
-				classNames = classesToArray( value );
-
-				while ( ( className = classNames[ i++ ] ) ) {
-
-					// Check each className given, space separated list
-					if ( self.hasClass( className ) ) {
-						self.removeClass( className );
-					} else {
-						self.addClass( className );
-					}
-				}
-
-			// Toggle whole class name
-			} else if ( value === undefined || type === "boolean" ) {
-				className = getClass( this );
-				if ( className ) {
-
-					// Store className if set
-					dataPriv.set( this, "__className__", className );
-				}
-
-				// If the element has a class name or if we're passed `false`,
-				// then remove the whole classname (if there was one, the above saved it).
-				// Otherwise bring back whatever was previously saved (if anything),
-				// falling back to the empty string if nothing was stored.
-				if ( this.setAttribute ) {
-					this.setAttribute( "class",
-						className || value === false ?
-						"" :
-						dataPriv.get( this, "__className__" ) || ""
-					);
-				}
-			}
-		} );
-	},
-
-	hasClass: function( selector ) {
-		var className, elem,
-			i = 0;
-
-		className = " " + selector + " ";
-		while ( ( elem = this[ i++ ] ) ) {
-			if ( elem.nodeType === 1 &&
-				( " " + stripAndCollapse( getClass( elem ) ) + " " ).indexOf( className ) > -1 ) {
-					return true;
-			}
-		}
-
-		return false;
-	}
-} );
-
-
-
-
-var rreturn = /\r/g;
-
-jQuery.fn.extend( {
-	val: function( value ) {
-		var hooks, ret, valueIsFunction,
-			elem = this[ 0 ];
-
-		if ( !arguments.length ) {
-			if ( elem ) {
-				hooks = jQuery.valHooks[ elem.type ] ||
-					jQuery.valHooks[ elem.nodeName.toLowerCase() ];
-
-				if ( hooks &&
-					"get" in hooks &&
-					( ret = hooks.get( elem, "value" ) ) !== undefined
-				) {
-					return ret;
-				}
-
-				ret = elem.value;
-
-				// Handle most common string cases
-				if ( typeof ret === "string" ) {
-					return ret.replace( rreturn, "" );
-				}
-
-				// Handle cases where value is null/undef or number
-				return ret == null ? "" : ret;
-			}
-
-			return;
-		}
-
-		valueIsFunction = isFunction( value );
-
-		return this.each( function( i ) {
-			var val;
-
-			if ( this.nodeType !== 1 ) {
-				return;
-			}
-
-			if ( valueIsFunction ) {
-				val = value.call( this, i, jQuery( this ).val() );
-			} else {
-				val = value;
-			}
-
-			// Treat null/undefined as ""; convert numbers to string
-			if ( val == null ) {
-				val = "";
-
-			} else if ( typeof val === "number" ) {
-				val += "";
-
-			} else if ( Array.isArray( val ) ) {
-				val = jQuery.map( val, function( value ) {
-					return value == null ? "" : value + "";
-				} );
-			}
-
-			hooks = jQuery.valHooks[ this.type ] || jQuery.valHooks[ this.nodeName.toLowerCase() ];
-
-			// If set returns undefined, fall back to normal setting
-			if ( !hooks || !( "set" in hooks ) || hooks.set( this, val, "value" ) === undefined ) {
-				this.value = val;
-			}
-		} );
-	}
-} );
-
-jQuery.extend( {
-	valHooks: {
-		option: {
-			get: function( elem ) {
-
-				var val = jQuery.find.attr( elem, "value" );
-				return val != null ?
-					val :
-
-					// Support: IE <=10 - 11 only
-					// option.text throws exceptions (#14686, #14858)
-					// Strip and collapse whitespace
-					// https://html.spec.whatwg.org/#strip-and-collapse-whitespace
-					stripAndCollapse( jQuery.text( elem ) );
-			}
-		},
-		select: {
-			get: function( elem ) {
-				var value, option, i,
-					options = elem.options,
-					index = elem.selectedIndex,
-					one = elem.type === "select-one",
-					values = one ? null : [],
-					max = one ? index + 1 : options.length;
-
-				if ( index < 0 ) {
-					i = max;
-
-				} else {
-					i = one ? index : 0;
-				}
-
-				// Loop through all the selected options
-				for ( ; i < max; i++ ) {
-					option = options[ i ];
-
-					// Support: IE <=9 only
-					// IE8-9 doesn't update selected after form reset (#2551)
-					if ( ( option.selected || i === index ) &&
-
-							// Don't return options that are disabled or in a disabled optgroup
-							!option.disabled &&
-							( !option.parentNode.disabled ||
-								!nodeName( option.parentNode, "optgroup" ) ) ) {
-
-						// Get the specific value for the option
-						value = jQuery( option ).val();
-
-						// We don't need an array for one selects
-						if ( one ) {
-							return value;
-						}
-
-						// Multi-Selects return an array
-						values.push( value );
-					}
-				}
-
-				return values;
-			},
-
-			set: function( elem, value ) {
-				var optionSet, option,
-					options = elem.options,
-					values = jQuery.makeArray( value ),
-					i = options.length;
-
-				while ( i-- ) {
-					option = options[ i ];
-
-					/* eslint-disable no-cond-assign */
-
-					if ( option.selected =
-						jQuery.inArray( jQuery.valHooks.option.get( option ), values ) > -1
-					) {
-						optionSet = true;
-					}
-
-					/* eslint-enable no-cond-assign */
-				}
-
-				// Force browsers to behave consistently when non-matching value is set
-				if ( !optionSet ) {
-					elem.selectedIndex = -1;
-				}
-				return values;
-			}
-		}
-	}
-} );
-
-// Radios and checkboxes getter/setter
-jQuery.each( [ "radio", "checkbox" ], function() {
-	jQuery.valHooks[ this ] = {
-		set: function( elem, value ) {
-			if ( Array.isArray( value ) ) {
-				return ( elem.checked = jQuery.inArray( jQuery( elem ).val(), value ) > -1 );
-			}
-		}
-	};
-	if ( !support.checkOn ) {
-		jQuery.valHooks[ this ].get = function( elem ) {
-			return elem.getAttribute( "value" ) === null ? "on" : elem.value;
-		};
-	}
-} );
-
-
-
-
-// Return jQuery for attributes-only inclusion
-
-
-support.focusin = "onfocusin" in window;
-
-
-var rfocusMorph = /^(?:focusinfocus|focusoutblur)$/,
-	stopPropagationCallback = function( e ) {
-		e.stopPropagation();
-	};
-
-jQuery.extend( jQuery.event, {
-
-	trigger: function( event, data, elem, onlyHandlers ) {
-
-		var i, cur, tmp, bubbleType, ontype, handle, special, lastElement,
-			eventPath = [ elem || document ],
-			type = hasOwn.call( event, "type" ) ? event.type : event,
-			namespaces = hasOwn.call( event, "namespace" ) ? event.namespace.split( "." ) : [];
-
-		cur = lastElement = tmp = elem = elem || document;
-
-		// Don't do events on text and comment nodes
-		if ( elem.nodeType === 3 || elem.nodeType === 8 ) {
-			return;
-		}
-
-		// focus/blur morphs to focusin/out; ensure we're not firing them right now
-		if ( rfocusMorph.test( type + jQuery.event.triggered ) ) {
-			return;
-		}
-
-		if ( type.indexOf( "." ) > -1 ) {
-
-			// Namespaced trigger; create a regexp to match event type in handle()
-			namespaces = type.split( "." );
-			type = namespaces.shift();
-			namespaces.sort();
-		}
-		ontype = type.indexOf( ":" ) < 0 && "on" + type;
-
-		// Caller can pass in a jQuery.Event object, Object, or just an event type string
-		event = event[ jQuery.expando ] ?
-			event :
-			new jQuery.Event( type, typeof event === "object" && event );
-
-		// Trigger bitmask: & 1 for native handlers; & 2 for jQuery (always true)
-		event.isTrigger = onlyHandlers ? 2 : 3;
-		event.namespace = namespaces.join( "." );
-		event.rnamespace = event.namespace ?
-			new RegExp( "(^|\\.)" + namespaces.join( "\\.(?:.*\\.|)" ) + "(\\.|$)" ) :
-			null;
-
-		// Clean up the event in case it is being reused
-		event.result = undefined;
-		if ( !event.target ) {
-			event.target = elem;
-		}
-
-		// Clone any incoming data and prepend the event, creating the handler arg list
-		data = data == null ?
-			[ event ] :
-			jQuery.makeArray( data, [ event ] );
-
-		// Allow special events to draw outside the lines
-		special = jQuery.event.special[ type ] || {};
-		if ( !onlyHandlers && special.trigger && special.trigger.apply( elem, data ) === false ) {
-			return;
-		}
-
-		// Determine event propagation path in advance, per W3C events spec (#9951)
-		// Bubble up to document, then to window; watch for a global ownerDocument var (#9724)
-		if ( !onlyHandlers && !special.noBubble && !isWindow( elem ) ) {
-
-			bubbleType = special.delegateType || type;
-			if ( !rfocusMorph.test( bubbleType + type ) ) {
-				cur = cur.parentNode;
-			}
-			for ( ; cur; cur = cur.parentNode ) {
-				eventPath.push( cur );
-				tmp = cur;
-			}
-
-			// Only add window if we got to document (e.g., not plain obj or detached DOM)
-			if ( tmp === ( elem.ownerDocument || document ) ) {
-				eventPath.push( tmp.defaultView || tmp.parentWindow || window );
-			}
-		}
-
-		// Fire handlers on the event path
-		i = 0;
-		while ( ( cur = eventPath[ i++ ] ) && !event.isPropagationStopped() ) {
-			lastElement = cur;
-			event.type = i > 1 ?
-				bubbleType :
-				special.bindType || type;
-
-			// jQuery handler
-			handle = ( dataPriv.get( cur, "events" ) || {} )[ event.type ] &&
-				dataPriv.get( cur, "handle" );
-			if ( handle ) {
-				handle.apply( cur, data );
-			}
-
-			// Native handler
-			handle = ontype && cur[ ontype ];
-			if ( handle && handle.apply && acceptData( cur ) ) {
-				event.result = handle.apply( cur, data );
-				if ( event.result === false ) {
-					event.preventDefault();
-				}
-			}
-		}
-		event.type = type;
-
-		// If nobody prevented the default action, do it now
-		if ( !onlyHandlers && !event.isDefaultPrevented() ) {
-
-			if ( ( !special._default ||
-				special._default.apply( eventPath.pop(), data ) === false ) &&
-				acceptData( elem ) ) {
-
-				// Call a native DOM method on the target with the same name as the event.
-				// Don't do default actions on window, that's where global variables be (#6170)
-				if ( ontype && isFunction( elem[ type ] ) && !isWindow( elem ) ) {
-
-					// Don't re-trigger an onFOO event when we call its FOO() method
-					tmp = elem[ ontype ];
-
-					if ( tmp ) {
-						elem[ ontype ] = null;
-					}
-
-					// Prevent re-triggering of the same event, since we already bubbled it above
-					jQuery.event.triggered = type;
-
-					if ( event.isPropagationStopped() ) {
-						lastElement.addEventListener( type, stopPropagationCallback );
-					}
-
-					elem[ type ]();
-
-					if ( event.isPropagationStopped() ) {
-						lastElement.removeEventListener( type, stopPropagationCallback );
-					}
-
-					jQuery.event.triggered = undefined;
-
-					if ( tmp ) {
-						elem[ ontype ] = tmp;
-					}
-				}
-			}
-		}
-
-		return event.result;
-	},
-
-	// Piggyback on a donor event to simulate a different one
-	// Used only for `focus(in | out)` events
-	simulate: function( type, elem, event ) {
-		var e = jQuery.extend(
-			new jQuery.Event(),
-			event,
-			{
-				type: type,
-				isSimulated: true
-			}
-		);
-
-		jQuery.event.trigger( e, null, elem );
-	}
-
-} );
-
-jQuery.fn.extend( {
-
-	trigger: function( type, data ) {
-		return this.each( function() {
-			jQuery.event.trigger( type, data, this );
-		} );
-	},
-	triggerHandler: function( type, data ) {
-		var elem = this[ 0 ];
-		if ( elem ) {
-			return jQuery.event.trigger( type, data, elem, true );
-		}
-	}
-} );
-
-
-// Support: Firefox <=44
-// Firefox doesn't have focus(in | out) events
-// Related ticket - https://bugzilla.mozilla.org/show_bug.cgi?id=687787
-//
-// Support: Chrome <=48 - 49, Safari <=9.0 - 9.1
-// focus(in | out) events fire after focus & blur events,
-// which is spec violation - http://www.w3.org/TR/DOM-Level-3-Events/#events-focusevent-event-order
-// Related ticket - https://bugs.chromium.org/p/chromium/issues/detail?id=449857
-if ( !support.focusin ) {
-	jQuery.each( { focus: "focusin", blur: "focusout" }, function( orig, fix ) {
-
-		// Attach a single capturing handler on the document while someone wants focusin/focusout
-		var handler = function( event ) {
-			jQuery.event.simulate( fix, event.target, jQuery.event.fix( event ) );
-		};
-
-		jQuery.event.special[ fix ] = {
-			setup: function() {
-				var doc = this.ownerDocument || this,
-					attaches = dataPriv.access( doc, fix );
-
-				if ( !attaches ) {
-					doc.addEventListener( orig, handler, true );
-				}
-				dataPriv.access( doc, fix, ( attaches || 0 ) + 1 );
-			},
-			teardown: function() {
-				var doc = this.ownerDocument || this,
-					attaches = dataPriv.access( doc, fix ) - 1;
-
-				if ( !attaches ) {
-					doc.removeEventListener( orig, handler, true );
-					dataPriv.remove( doc, fix );
-
-				} else {
-					dataPriv.access( doc, fix, attaches );
-				}
-			}
-		};
-	} );
-}
-var location = window.location;
-
-var nonce = Date.now();
-
-var rquery = ( /\?/ );
-
-
-
-// Cross-browser xml parsing
-jQuery.parseXML = function( data ) {
-	var xml;
-	if ( !data || typeof data !== "string" ) {
-		return null;
-	}
-
-	// Support: IE 9 - 11 only
-	// IE throws on parseFromString with invalid input.
-	try {
-		xml = ( new window.DOMParser() ).parseFromString( data, "text/xml" );
-	} catch ( e ) {
-		xml = undefined;
-	}
-
-	if ( !xml || xml.getElementsByTagName( "parsererror" ).length ) {
-		jQuery.error( "Invalid XML: " + data );
-	}
-	return xml;
-};
-
-
-var
-	rbracket = /\[\]$/,
-	rCRLF = /\r?\n/g,
-	rsubmitterTypes = /^(?:submit|button|image|reset|file)$/i,
-	rsubmittable = /^(?:input|select|textarea|keygen)/i;
-
-function buildParams( prefix, obj, traditional, add ) {
-	var name;
-
-	if ( Array.isArray( obj ) ) {
-
-		// Serialize array item.
-		jQuery.each( obj, function( i, v ) {
-			if ( traditional || rbracket.test( prefix ) ) {
-
-				// Treat each array item as a scalar.
-				add( prefix, v );
-
-			} else {
-
-				// Item is non-scalar (array or object), encode its numeric index.
-				buildParams(
-					prefix + "[" + ( typeof v === "object" && v != null ? i : "" ) + "]",
-					v,
-					traditional,
-					add
-				);
-			}
-		} );
-
-	} else if ( !traditional && toType( obj ) === "object" ) {
-
-		// Serialize object item.
-		for ( name in obj ) {
-			buildParams( prefix + "[" + name + "]", obj[ name ], traditional, add );
-		}
-
-	} else {
-
-		// Serialize scalar item.
-		add( prefix, obj );
-	}
-}
-
-// Serialize an array of form elements or a set of
-// key/values into a query string
-jQuery.param = function( a, traditional ) {
-	var prefix,
-		s = [],
-		add = function( key, valueOrFunction ) {
-
-			// If value is a function, invoke it and use its return value
-			var value = isFunction( valueOrFunction ) ?
-				valueOrFunction() :
-				valueOrFunction;
-
-			s[ s.length ] = encodeURIComponent( key ) + "=" +
-				encodeURIComponent( value == null ? "" : value );
-		};
-
-	if ( a == null ) {
-		return "";
-	}
-
-	// If an array was passed in, assume that it is an array of form elements.
-	if ( Array.isArray( a ) || ( a.jquery && !jQuery.isPlainObject( a ) ) ) {
-
-		// Serialize the form elements
-		jQuery.each( a, function() {
-			add( this.name, this.value );
-		} );
-
-	} else {
-
-		// If traditional, encode the "old" way (the way 1.3.2 or older
-		// did it), otherwise encode params recursively.
-		for ( prefix in a ) {
-			buildParams( prefix, a[ prefix ], traditional, add );
-		}
-	}
-
-	// Return the resulting serialization
-	return s.join( "&" );
-};
-
-jQuery.fn.extend( {
-	serialize: function() {
-		return jQuery.param( this.serializeArray() );
-	},
-	serializeArray: function() {
-		return this.map( function() {
-
-			// Can add propHook for "elements" to filter or add form elements
-			var elements = jQuery.prop( this, "elements" );
-			return elements ? jQuery.makeArray( elements ) : this;
-		} )
-		.filter( function() {
-			var type = this.type;
-
-			// Use .is( ":disabled" ) so that fieldset[disabled] works
-			return this.name && !jQuery( this ).is( ":disabled" ) &&
-				rsubmittable.test( this.nodeName ) && !rsubmitterTypes.test( type ) &&
-				( this.checked || !rcheckableType.test( type ) );
-		} )
-		.map( function( i, elem ) {
-			var val = jQuery( this ).val();
-
-			if ( val == null ) {
-				return null;
-			}
-
-			if ( Array.isArray( val ) ) {
-				return jQuery.map( val, function( val ) {
-					return { name: elem.name, value: val.replace( rCRLF, "\r\n" ) };
-				} );
-			}
-
-			return { name: elem.name, value: val.replace( rCRLF, "\r\n" ) };
-		} ).get();
-	}
-} );
-
-
-var
-	r20 = /%20/g,
-	rhash = /#.*$/,
-	rantiCache = /([?&])_=[^&]*/,
-	rheaders = /^(.*?):[ \t]*([^\r\n]*)$/mg,
-
-	// #7653, #8125, #8152: local protocol detection
-	rlocalProtocol = /^(?:about|app|app-storage|.+-extension|file|res|widget):$/,
-	rnoContent = /^(?:GET|HEAD)$/,
-	rprotocol = /^\/\//,
-
-	/* Prefilters
-	 * 1) They are useful to introduce custom dataTypes (see ajax/jsonp.js for an example)
-	 * 2) These are called:
-	 *    - BEFORE asking for a transport
-	 *    - AFTER param serialization (s.data is a string if s.processData is true)
-	 * 3) key is the dataType
-	 * 4) the catchall symbol "*" can be used
-	 * 5) execution will start with transport dataType and THEN continue down to "*" if needed
-	 */
-	prefilters = {},
-
-	/* Transports bindings
-	 * 1) key is the dataType
-	 * 2) the catchall symbol "*" can be used
-	 * 3) selection will start with transport dataType and THEN go to "*" if needed
-	 */
-	transports = {},
-
-	// Avoid comment-prolog char sequence (#10098); must appease lint and evade compression
-	allTypes = "*/".concat( "*" ),
-
-	// Anchor tag for parsing the document origin
-	originAnchor = document.createElement( "a" );
-	originAnchor.href = location.href;
-
-// Base "constructor" for jQuery.ajaxPrefilter and jQuery.ajaxTransport
-function addToPrefiltersOrTransports( structure ) {
-
-	// dataTypeExpression is optional and defaults to "*"
-	return function( dataTypeExpression, func ) {
-
-		if ( typeof dataTypeExpression !== "string" ) {
-			func = dataTypeExpression;
-			dataTypeExpression = "*";
-		}
-
-		var dataType,
-			i = 0,
-			dataTypes = dataTypeExpression.toLowerCase().match( rnothtmlwhite ) || [];
-
-		if ( isFunction( func ) ) {
-
-			// For each dataType in the dataTypeExpression
-			while ( ( dataType = dataTypes[ i++ ] ) ) {
-
-				// Prepend if requested
-				if ( dataType[ 0 ] === "+" ) {
-					dataType = dataType.slice( 1 ) || "*";
-					( structure[ dataType ] = structure[ dataType ] || [] ).unshift( func );
-
-				// Otherwise append
-				} else {
-					( structure[ dataType ] = structure[ dataType ] || [] ).push( func );
-				}
-			}
-		}
-	};
-}
-
-// Base inspection function for prefilters and transports
-function inspectPrefiltersOrTransports( structure, options, originalOptions, jqXHR ) {
-
-	var inspected = {},
-		seekingTransport = ( structure === transports );
-
-	function inspect( dataType ) {
-		var selected;
-		inspected[ dataType ] = true;
-		jQuery.each( structure[ dataType ] || [], function( _, prefilterOrFactory ) {
-			var dataTypeOrTransport = prefilterOrFactory( options, originalOptions, jqXHR );
-			if ( typeof dataTypeOrTransport === "string" &&
-				!seekingTransport && !inspected[ dataTypeOrTransport ] ) {
-
-				options.dataTypes.unshift( dataTypeOrTransport );
-				inspect( dataTypeOrTransport );
-				return false;
-			} else if ( seekingTransport ) {
-				return !( selected = dataTypeOrTransport );
-			}
-		} );
-		return selected;
-	}
-
-	return inspect( options.dataTypes[ 0 ] ) || !inspected[ "*" ] && inspect( "*" );
-}
-
-// A special extend for ajax options
-// that takes "flat" options (not to be deep extended)
-// Fixes #9887
-function ajaxExtend( target, src ) {
-	var key, deep,
-		flatOptions = jQuery.ajaxSettings.flatOptions || {};
-
-	for ( key in src ) {
-		if ( src[ key ] !== undefined ) {
-			( flatOptions[ key ] ? target : ( deep || ( deep = {} ) ) )[ key ] = src[ key ];
-		}
-	}
-	if ( deep ) {
-		jQuery.extend( true, target, deep );
-	}
-
-	return target;
-}
-
-/* Handles responses to an ajax request:
- * - finds the right dataType (mediates between content-type and expected dataType)
- * - returns the corresponding response
- */
-function ajaxHandleResponses( s, jqXHR, responses ) {
-
-	var ct, type, finalDataType, firstDataType,
-		contents = s.contents,
-		dataTypes = s.dataTypes;
-
-	// Remove auto dataType and get content-type in the process
-	while ( dataTypes[ 0 ] === "*" ) {
-		dataTypes.shift();
-		if ( ct === undefined ) {
-			ct = s.mimeType || jqXHR.getResponseHeader( "Content-Type" );
-		}
-	}
-
-	// Check if we're dealing with a known content-type
-	if ( ct ) {
-		for ( type in contents ) {
-			if ( contents[ type ] && contents[ type ].test( ct ) ) {
-				dataTypes.unshift( type );
-				break;
-			}
-		}
-	}
-
-	// Check to see if we have a response for the expected dataType
-	if ( dataTypes[ 0 ] in responses ) {
-		finalDataType = dataTypes[ 0 ];
-	} else {
-
-		// Try convertible dataTypes
-		for ( type in responses ) {
-			if ( !dataTypes[ 0 ] || s.converters[ type + " " + dataTypes[ 0 ] ] ) {
-				finalDataType = type;
-				break;
-			}
-			if ( !firstDataType ) {
-				firstDataType = type;
-			}
-		}
-
-		// Or just use first one
-		finalDataType = finalDataType || firstDataType;
-	}
-
-	// If we found a dataType
-	// We add the dataType to the list if needed
-	// and return the corresponding response
-	if ( finalDataType ) {
-		if ( finalDataType !== dataTypes[ 0 ] ) {
-			dataTypes.unshift( finalDataType );
-		}
-		return responses[ finalDataType ];
-	}
-}
-
-/* Chain conversions given the request and the original response
- * Also sets the responseXXX fields on the jqXHR instance
- */
-function ajaxConvert( s, response, jqXHR, isSuccess ) {
-	var conv2, current, conv, tmp, prev,
-		converters = {},
-
-		// Work with a copy of dataTypes in case we need to modify it for conversion
-		dataTypes = s.dataTypes.slice();
-
-	// Create converters map with lowercased keys
-	if ( dataTypes[ 1 ] ) {
-		for ( conv in s.converters ) {
-			converters[ conv.toLowerCase() ] = s.converters[ conv ];
-		}
-	}
-
-	current = dataTypes.shift();
-
-	// Convert to each sequential dataType
-	while ( current ) {
-
-		if ( s.responseFields[ current ] ) {
-			jqXHR[ s.responseFields[ current ] ] = response;
-		}
-
-		// Apply the dataFilter if provided
-		if ( !prev && isSuccess && s.dataFilter ) {
-			response = s.dataFilter( response, s.dataType );
-		}
-
-		prev = current;
-		current = dataTypes.shift();
-
-		if ( current ) {
-
-			// There's only work to do if current dataType is non-auto
-			if ( current === "*" ) {
-
-				current = prev;
-
-			// Convert response if prev dataType is non-auto and differs from current
-			} else if ( prev !== "*" && prev !== current ) {
-
-				// Seek a direct converter
-				conv = converters[ prev + " " + current ] || converters[ "* " + current ];
-
-				// If none found, seek a pair
-				if ( !conv ) {
-					for ( conv2 in converters ) {
-
-						// If conv2 outputs current
-						tmp = conv2.split( " " );
-						if ( tmp[ 1 ] === current ) {
-
-							// If prev can be converted to accepted input
-							conv = converters[ prev + " " + tmp[ 0 ] ] ||
-								converters[ "* " + tmp[ 0 ] ];
-							if ( conv ) {
-
-								// Condense equivalence converters
-								if ( conv === true ) {
-									conv = converters[ conv2 ];
-
-								// Otherwise, insert the intermediate dataType
-								} else if ( converters[ conv2 ] !== true ) {
-									current = tmp[ 0 ];
-									dataTypes.unshift( tmp[ 1 ] );
-								}
-								break;
-							}
-						}
-					}
-				}
-
-				// Apply converter (if not an equivalence)
-				if ( conv !== true ) {
-
-					// Unless errors are allowed to bubble, catch and return them
-					if ( conv && s.throws ) {
-						response = conv( response );
-					} else {
-						try {
-							response = conv( response );
-						} catch ( e ) {
-							return {
-								state: "parsererror",
-								error: conv ? e : "No conversion from " + prev + " to " + current
-							};
-						}
-					}
-				}
-			}
-		}
-	}
-
-	return { state: "success", data: response };
-}
-
-jQuery.extend( {
-
-	// Counter for holding the number of active queries
-	active: 0,
-
-	// Last-Modified header cache for next request
-	lastModified: {},
-	etag: {},
-
-	ajaxSettings: {
-		url: location.href,
-		type: "GET",
-		isLocal: rlocalProtocol.test( location.protocol ),
-		global: true,
-		processData: true,
-		async: true,
-		contentType: "application/x-www-form-urlencoded; charset=UTF-8",
-
-		/*
-		timeout: 0,
-		data: null,
-		dataType: null,
-		username: null,
-		password: null,
-		cache: null,
-		throws: false,
-		traditional: false,
-		headers: {},
-		*/
-
-		accepts: {
-			"*": allTypes,
-			text: "text/plain",
-			html: "text/html",
-			xml: "application/xml, text/xml",
-			json: "application/json, text/javascript"
-		},
-
-		contents: {
-			xml: /\bxml\b/,
-			html: /\bhtml/,
-			json: /\bjson\b/
-		},
-
-		responseFields: {
-			xml: "responseXML",
-			text: "responseText",
-			json: "responseJSON"
-		},
-
-		// Data converters
-		// Keys separate source (or catchall "*") and destination types with a single space
-		converters: {
-
-			// Convert anything to text
-			"* text": String,
-
-			// Text to html (true = no transformation)
-			"text html": true,
-
-			// Evaluate text as a json expression
-			"text json": JSON.parse,
-
-			// Parse text as xml
-			"text xml": jQuery.parseXML
-		},
-
-		// For options that shouldn't be deep extended:
-		// you can add your own custom options here if
-		// and when you create one that shouldn't be
-		// deep extended (see ajaxExtend)
-		flatOptions: {
-			url: true,
-			context: true
-		}
-	},
-
-	// Creates a full fledged settings object into target
-	// with both ajaxSettings and settings fields.
-	// If target is omitted, writes into ajaxSettings.
-	ajaxSetup: function( target, settings ) {
-		return settings ?
-
-			// Building a settings object
-			ajaxExtend( ajaxExtend( target, jQuery.ajaxSettings ), settings ) :
-
-			// Extending ajaxSettings
-			ajaxExtend( jQuery.ajaxSettings, target );
-	},
-
-	ajaxPrefilter: addToPrefiltersOrTransports( prefilters ),
-	ajaxTransport: addToPrefiltersOrTransports( transports ),
-
-	// Main method
-	ajax: function( url, options ) {
-
-		// If url is an object, simulate pre-1.5 signature
-		if ( typeof url === "object" ) {
-			options = url;
-			url = undefined;
-		}
-
-		// Force options to be an object
-		options = options || {};
-
-		var transport,
-
-			// URL without anti-cache param
-			cacheURL,
-
-			// Response headers
-			responseHeadersString,
-			responseHeaders,
-
-			// timeout handle
-			timeoutTimer,
-
-			// Url cleanup var
-			urlAnchor,
-
-			// Request state (becomes false upon send and true upon completion)
-			completed,
-
-			// To know if global events are to be dispatched
-			fireGlobals,
-
-			// Loop variable
-			i,
-
-			// uncached part of the url
-			uncached,
-
-			// Create the final options object
-			s = jQuery.ajaxSetup( {}, options ),
-
-			// Callbacks context
-			callbackContext = s.context || s,
-
-			// Context for global events is callbackContext if it is a DOM node or jQuery collection
-			globalEventContext = s.context &&
-				( callbackContext.nodeType || callbackContext.jquery ) ?
-					jQuery( callbackContext ) :
-					jQuery.event,
-
-			// Deferreds
-			deferred = jQuery.Deferred(),
-			completeDeferred = jQuery.Callbacks( "once memory" ),
-
-			// Status-dependent callbacks
-			statusCode = s.statusCode || {},
-
-			// Headers (they are sent all at once)
-			requestHeaders = {},
-			requestHeadersNames = {},
-
-			// Default abort message
-			strAbort = "canceled",
-
-			// Fake xhr
-			jqXHR = {
-				readyState: 0,
-
-				// Builds headers hashtable if needed
-				getResponseHeader: function( key ) {
-					var match;
-					if ( completed ) {
-						if ( !responseHeaders ) {
-							responseHeaders = {};
-							while ( ( match = rheaders.exec( responseHeadersString ) ) ) {
-								responseHeaders[ match[ 1 ].toLowerCase() + " " ] =
-									( responseHeaders[ match[ 1 ].toLowerCase() + " " ] || [] )
-										.concat( match[ 2 ] );
-							}
-						}
-						match = responseHeaders[ key.toLowerCase() + " " ];
-					}
-					return match == null ? null : match.join( ", " );
-				},
-
-				// Raw string
-				getAllResponseHeaders: function() {
-					return completed ? responseHeadersString : null;
-				},
-
-				// Caches the header
-				setRequestHeader: function( name, value ) {
-					if ( completed == null ) {
-						name = requestHeadersNames[ name.toLowerCase() ] =
-							requestHeadersNames[ name.toLowerCase() ] || name;
-						requestHeaders[ name ] = value;
-					}
-					return this;
-				},
-
-				// Overrides response content-type header
-				overrideMimeType: function( type ) {
-					if ( completed == null ) {
-						s.mimeType = type;
-					}
-					return this;
-				},
-
-				// Status-dependent callbacks
-				statusCode: function( map ) {
-					var code;
-					if ( map ) {
-						if ( completed ) {
-
-							// Execute the appropriate callbacks
-							jqXHR.always( map[ jqXHR.status ] );
-						} else {
-
-							// Lazy-add the new callbacks in a way that preserves old ones
-							for ( code in map ) {
-								statusCode[ code ] = [ statusCode[ code ], map[ code ] ];
-							}
-						}
-					}
-					return this;
-				},
-
-				// Cancel the request
-				abort: function( statusText ) {
-					var finalText = statusText || strAbort;
-					if ( transport ) {
-						transport.abort( finalText );
-					}
-					done( 0, finalText );
-					return this;
-				}
-			};
-
-		// Attach deferreds
-		deferred.promise( jqXHR );
-
-		// Add protocol if not provided (prefilters might expect it)
-		// Handle falsy url in the settings object (#10093: consistency with old signature)
-		// We also use the url parameter if available
-		s.url = ( ( url || s.url || location.href ) + "" )
-			.replace( rprotocol, location.protocol + "//" );
-
-		// Alias method option to type as per ticket #12004
-		s.type = options.method || options.type || s.method || s.type;
-
-		// Extract dataTypes list
-		s.dataTypes = ( s.dataType || "*" ).toLowerCase().match( rnothtmlwhite ) || [ "" ];
-
-		// A cross-domain request is in order when the origin doesn't match the current origin.
-		if ( s.crossDomain == null ) {
-			urlAnchor = document.createElement( "a" );
-
-			// Support: IE <=8 - 11, Edge 12 - 15
-			// IE throws exception on accessing the href property if url is malformed,
-			// e.g. http://example.com:80x/
-			try {
-				urlAnchor.href = s.url;
-
-				// Support: IE <=8 - 11 only
-				// Anchor's host property isn't correctly set when s.url is relative
-				urlAnchor.href = urlAnchor.href;
-				s.crossDomain = originAnchor.protocol + "//" + originAnchor.host !==
-					urlAnchor.protocol + "//" + urlAnchor.host;
-			} catch ( e ) {
-
-				// If there is an error parsing the URL, assume it is crossDomain,
-				// it can be rejected by the transport if it is invalid
-				s.crossDomain = true;
-			}
-		}
-
-		// Convert data if not already a string
-		if ( s.data && s.processData && typeof s.data !== "string" ) {
-			s.data = jQuery.param( s.data, s.traditional );
-		}
-
-		// Apply prefilters
-		inspectPrefiltersOrTransports( prefilters, s, options, jqXHR );
-
-		// If request was aborted inside a prefilter, stop there
-		if ( completed ) {
-			return jqXHR;
-		}
-
-		// We can fire global events as of now if asked to
-		// Don't fire events if jQuery.event is undefined in an AMD-usage scenario (#15118)
-		fireGlobals = jQuery.event && s.global;
-
-		// Watch for a new set of requests
-		if ( fireGlobals && jQuery.active++ === 0 ) {
-			jQuery.event.trigger( "ajaxStart" );
-		}
-
-		// Uppercase the type
-		s.type = s.type.toUpperCase();
-
-		// Determine if request has content
-		s.hasContent = !rnoContent.test( s.type );
-
-		// Save the URL in case we're toying with the If-Modified-Since
-		// and/or If-None-Match header later on
-		// Remove hash to simplify url manipulation
-		cacheURL = s.url.replace( rhash, "" );
-
-		// More options handling for requests with no content
-		if ( !s.hasContent ) {
-
-			// Remember the hash so we can put it back
-			uncached = s.url.slice( cacheURL.length );
-
-			// If data is available and should be processed, append data to url
-			if ( s.data && ( s.processData || typeof s.data === "string" ) ) {
-				cacheURL += ( rquery.test( cacheURL ) ? "&" : "?" ) + s.data;
-
-				// #9682: remove data so that it's not used in an eventual retry
-				delete s.data;
-			}
-
-			// Add or update anti-cache param if needed
-			if ( s.cache === false ) {
-				cacheURL = cacheURL.replace( rantiCache, "$1" );
-				uncached = ( rquery.test( cacheURL ) ? "&" : "?" ) + "_=" + ( nonce++ ) + uncached;
-			}
-
-			// Put hash and anti-cache on the URL that will be requested (gh-1732)
-			s.url = cacheURL + uncached;
-
-		// Change '%20' to '+' if this is encoded form body content (gh-2658)
-		} else if ( s.data && s.processData &&
-			( s.contentType || "" ).indexOf( "application/x-www-form-urlencoded" ) === 0 ) {
-			s.data = s.data.replace( r20, "+" );
-		}
-
-		// Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode.
-		if ( s.ifModified ) {
-			if ( jQuery.lastModified[ cacheURL ] ) {
-				jqXHR.setRequestHeader( "If-Modified-Since", jQuery.lastModified[ cacheURL ] );
-			}
-			if ( jQuery.etag[ cacheURL ] ) {
-				jqXHR.setRequestHeader( "If-None-Match", jQuery.etag[ cacheURL ] );
-			}
-		}
-
-		// Set the correct header, if data is being sent
-		if ( s.data && s.hasContent && s.contentType !== false || options.contentType ) {
-			jqXHR.setRequestHeader( "Content-Type", s.contentType );
-		}
-
-		// Set the Accepts header for the server, depending on the dataType
-		jqXHR.setRequestHeader(
-			"Accept",
-			s.dataTypes[ 0 ] && s.accepts[ s.dataTypes[ 0 ] ] ?
-				s.accepts[ s.dataTypes[ 0 ] ] +
-					( s.dataTypes[ 0 ] !== "*" ? ", " + allTypes + "; q=0.01" : "" ) :
-				s.accepts[ "*" ]
-		);
-
-		// Check for headers option
-		for ( i in s.headers ) {
-			jqXHR.setRequestHeader( i, s.headers[ i ] );
-		}
-
-		// Allow custom headers/mimetypes and early abort
-		if ( s.beforeSend &&
-			( s.beforeSend.call( callbackContext, jqXHR, s ) === false || completed ) ) {
-
-			// Abort if not done already and return
-			return jqXHR.abort();
-		}
-
-		// Aborting is no longer a cancellation
-		strAbort = "abort";
-
-		// Install callbacks on deferreds
-		completeDeferred.add( s.complete );
-		jqXHR.done( s.success );
-		jqXHR.fail( s.error );
-
-		// Get transport
-		transport = inspectPrefiltersOrTransports( transports, s, options, jqXHR );
-
-		// If no transport, we auto-abort
-		if ( !transport ) {
-			done( -1, "No Transport" );
-		} else {
-			jqXHR.readyState = 1;
-
-			// Send global event
-			if ( fireGlobals ) {
-				globalEventContext.trigger( "ajaxSend", [ jqXHR, s ] );
-			}
-
-			// If request was aborted inside ajaxSend, stop there
-			if ( completed ) {
-				return jqXHR;
-			}
-
-			// Timeout
-			if ( s.async && s.timeout > 0 ) {
-				timeoutTimer = window.setTimeout( function() {
-					jqXHR.abort( "timeout" );
-				}, s.timeout );
-			}
-
-			try {
-				completed = false;
-				transport.send( requestHeaders, done );
-			} catch ( e ) {
-
-				// Rethrow post-completion exceptions
-				if ( completed ) {
-					throw e;
-				}
-
-				// Propagate others as results
-				done( -1, e );
-			}
-		}
-
-		// Callback for when everything is done
-		function done( status, nativeStatusText, responses, headers ) {
-			var isSuccess, success, error, response, modified,
-				statusText = nativeStatusText;
-
-			// Ignore repeat invocations
-			if ( completed ) {
-				return;
-			}
-
-			completed = true;
-
-			// Clear timeout if it exists
-			if ( timeoutTimer ) {
-				window.clearTimeout( timeoutTimer );
-			}
-
-			// Dereference transport for early garbage collection
-			// (no matter how long the jqXHR object will be used)
-			transport = undefined;
-
-			// Cache response headers
-			responseHeadersString = headers || "";
-
-			// Set readyState
-			jqXHR.readyState = status > 0 ? 4 : 0;
-
-			// Determine if successful
-			isSuccess = status >= 200 && status < 300 || status === 304;
-
-			// Get response data
-			if ( responses ) {
-				response = ajaxHandleResponses( s, jqXHR, responses );
-			}
-
-			// Convert no matter what (that way responseXXX fields are always set)
-			response = ajaxConvert( s, response, jqXHR, isSuccess );
-
-			// If successful, handle type chaining
-			if ( isSuccess ) {
-
-				// Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode.
-				if ( s.ifModified ) {
-					modified = jqXHR.getResponseHeader( "Last-Modified" );
-					if ( modified ) {
-						jQuery.lastModified[ cacheURL ] = modified;
-					}
-					modified = jqXHR.getResponseHeader( "etag" );
-					if ( modified ) {
-						jQuery.etag[ cacheURL ] = modified;
-					}
-				}
-
-				// if no content
-				if ( status === 204 || s.type === "HEAD" ) {
-					statusText = "nocontent";
-
-				// if not modified
-				} else if ( status === 304 ) {
-					statusText = "notmodified";
-
-				// If we have data, let's convert it
-				} else {
-					statusText = response.state;
-					success = response.data;
-					error = response.error;
-					isSuccess = !error;
-				}
-			} else {
-
-				// Extract error from statusText and normalize for non-aborts
-				error = statusText;
-				if ( status || !statusText ) {
-					statusText = "error";
-					if ( status < 0 ) {
-						status = 0;
-					}
-				}
-			}
-
-			// Set data for the fake xhr object
-			jqXHR.status = status;
-			jqXHR.statusText = ( nativeStatusText || statusText ) + "";
-
-			// Success/Error
-			if ( isSuccess ) {
-				deferred.resolveWith( callbackContext, [ success, statusText, jqXHR ] );
-			} else {
-				deferred.rejectWith( callbackContext, [ jqXHR, statusText, error ] );
-			}
-
-			// Status-dependent callbacks
-			jqXHR.statusCode( statusCode );
-			statusCode = undefined;
-
-			if ( fireGlobals ) {
-				globalEventContext.trigger( isSuccess ? "ajaxSuccess" : "ajaxError",
-					[ jqXHR, s, isSuccess ? success : error ] );
-			}
-
-			// Complete
-			completeDeferred.fireWith( callbackContext, [ jqXHR, statusText ] );
-
-			if ( fireGlobals ) {
-				globalEventContext.trigger( "ajaxComplete", [ jqXHR, s ] );
-
-				// Handle the global AJAX counter
-				if ( !( --jQuery.active ) ) {
-					jQuery.event.trigger( "ajaxStop" );
-				}
-			}
-		}
-
-		return jqXHR;
-	},
-
-	getJSON: function( url, data, callback ) {
-		return jQuery.get( url, data, callback, "json" );
-	},
-
-	getScript: function( url, callback ) {
-		return jQuery.get( url, undefined, callback, "script" );
-	}
-} );
-
-jQuery.each( [ "get", "post" ], function( i, method ) {
-	jQuery[ method ] = function( url, data, callback, type ) {
-
-		// Shift arguments if data argument was omitted
-		if ( isFunction( data ) ) {
-			type = type || callback;
-			callback = data;
-			data = undefined;
-		}
-
-		// The url can be an options object (which then must have .url)
-		return jQuery.ajax( jQuery.extend( {
-			url: url,
-			type: method,
-			dataType: type,
-			data: data,
-			success: callback
-		}, jQuery.isPlainObject( url ) && url ) );
-	};
-} );
-
-
-jQuery._evalUrl = function( url, options ) {
-	return jQuery.ajax( {
-		url: url,
-
-		// Make this explicit, since user can override this through ajaxSetup (#11264)
-		type: "GET",
-		dataType: "script",
-		cache: true,
-		async: false,
-		global: false,
-
-		// Only evaluate the response if it is successful (gh-4126)
-		// dataFilter is not invoked for failure responses, so using it instead
-		// of the default converter is kludgy but it works.
-		converters: {
-			"text script": function() {}
-		},
-		dataFilter: function( response ) {
-			jQuery.globalEval( response, options );
-		}
-	} );
-};
-
-
-jQuery.fn.extend( {
-	wrapAll: function( html ) {
-		var wrap;
-
-		if ( this[ 0 ] ) {
-			if ( isFunction( html ) ) {
-				html = html.call( this[ 0 ] );
-			}
-
-			// The elements to wrap the target around
-			wrap = jQuery( html, this[ 0 ].ownerDocument ).eq( 0 ).clone( true );
-
-			if ( this[ 0 ].parentNode ) {
-				wrap.insertBefore( this[ 0 ] );
-			}
-
-			wrap.map( function() {
-				var elem = this;
-
-				while ( elem.firstElementChild ) {
-					elem = elem.firstElementChild;
-				}
-
-				return elem;
-			} ).append( this );
-		}
-
-		return this;
-	},
-
-	wrapInner: function( html ) {
-		if ( isFunction( html ) ) {
-			return this.each( function( i ) {
-				jQuery( this ).wrapInner( html.call( this, i ) );
-			} );
-		}
-
-		return this.each( function() {
-			var self = jQuery( this ),
-				contents = self.contents();
-
-			if ( contents.length ) {
-				contents.wrapAll( html );
-
-			} else {
-				self.append( html );
-			}
-		} );
-	},
-
-	wrap: function( html ) {
-		var htmlIsFunction = isFunction( html );
-
-		return this.each( function( i ) {
-			jQuery( this ).wrapAll( htmlIsFunction ? html.call( this, i ) : html );
-		} );
-	},
-
-	unwrap: function( selector ) {
-		this.parent( selector ).not( "body" ).each( function() {
-			jQuery( this ).replaceWith( this.childNodes );
-		} );
-		return this;
-	}
-} );
-
-
-jQuery.expr.pseudos.hidden = function( elem ) {
-	return !jQuery.expr.pseudos.visible( elem );
-};
-jQuery.expr.pseudos.visible = function( elem ) {
-	return !!( elem.offsetWidth || elem.offsetHeight || elem.getClientRects().length );
-};
-
-
-
-
-jQuery.ajaxSettings.xhr = function() {
-	try {
-		return new window.XMLHttpRequest();
-	} catch ( e ) {}
-};
-
-var xhrSuccessStatus = {
-
-		// File protocol always yields status code 0, assume 200
-		0: 200,
-
-		// Support: IE <=9 only
-		// #1450: sometimes IE returns 1223 when it should be 204
-		1223: 204
-	},
-	xhrSupported = jQuery.ajaxSettings.xhr();
-
-support.cors = !!xhrSupported && ( "withCredentials" in xhrSupported );
-support.ajax = xhrSupported = !!xhrSupported;
-
-jQuery.ajaxTransport( function( options ) {
-	var callback, errorCallback;
-
-	// Cross domain only allowed if supported through XMLHttpRequest
-	if ( support.cors || xhrSupported && !options.crossDomain ) {
-		return {
-			send: function( headers, complete ) {
-				var i,
-					xhr = options.xhr();
-
-				xhr.open(
-					options.type,
-					options.url,
-					options.async,
-					options.username,
-					options.password
-				);
-
-				// Apply custom fields if provided
-				if ( options.xhrFields ) {
-					for ( i in options.xhrFields ) {
-						xhr[ i ] = options.xhrFields[ i ];
-					}
-				}
-
-				// Override mime type if needed
-				if ( options.mimeType && xhr.overrideMimeType ) {
-					xhr.overrideMimeType( options.mimeType );
-				}
-
-				// X-Requested-With header
-				// For cross-domain requests, seeing as conditions for a preflight are
-				// akin to a jigsaw puzzle, we simply never set it to be sure.
-				// (it can always be set on a per-request basis or even using ajaxSetup)
-				// For same-domain requests, won't change header if already provided.
-				if ( !options.crossDomain && !headers[ "X-Requested-With" ] ) {
-					headers[ "X-Requested-With" ] = "XMLHttpRequest";
-				}
-
-				// Set headers
-				for ( i in headers ) {
-					xhr.setRequestHeader( i, headers[ i ] );
-				}
-
-				// Callback
-				callback = function( type ) {
-					return function() {
-						if ( callback ) {
-							callback = errorCallback = xhr.onload =
-								xhr.onerror = xhr.onabort = xhr.ontimeout =
-									xhr.onreadystatechange = null;
-
-							if ( type === "abort" ) {
-								xhr.abort();
-							} else if ( type === "error" ) {
-
-								// Support: IE <=9 only
-								// On a manual native abort, IE9 throws
-								// errors on any property access that is not readyState
-								if ( typeof xhr.status !== "number" ) {
-									complete( 0, "error" );
-								} else {
-									complete(
-
-										// File: protocol always yields status 0; see #8605, #14207
-										xhr.status,
-										xhr.statusText
-									);
-								}
-							} else {
-								complete(
-									xhrSuccessStatus[ xhr.status ] || xhr.status,
-									xhr.statusText,
-
-									// Support: IE <=9 only
-									// IE9 has no XHR2 but throws on binary (trac-11426)
-									// For XHR2 non-text, let the caller handle it (gh-2498)
-									( xhr.responseType || "text" ) !== "text"  ||
-									typeof xhr.responseText !== "string" ?
-										{ binary: xhr.response } :
-										{ text: xhr.responseText },
-									xhr.getAllResponseHeaders()
-								);
-							}
-						}
-					};
-				};
-
-				// Listen to events
-				xhr.onload = callback();
-				errorCallback = xhr.onerror = xhr.ontimeout = callback( "error" );
-
-				// Support: IE 9 only
-				// Use onreadystatechange to replace onabort
-				// to handle uncaught aborts
-				if ( xhr.onabort !== undefined ) {
-					xhr.onabort = errorCallback;
-				} else {
-					xhr.onreadystatechange = function() {
-
-						// Check readyState before timeout as it changes
-						if ( xhr.readyState === 4 ) {
-
-							// Allow onerror to be called first,
-							// but that will not handle a native abort
-							// Also, save errorCallback to a variable
-							// as xhr.onerror cannot be accessed
-							window.setTimeout( function() {
-								if ( callback ) {
-									errorCallback();
-								}
-							} );
-						}
-					};
-				}
-
-				// Create the abort callback
-				callback = callback( "abort" );
-
-				try {
-
-					// Do send the request (this may raise an exception)
-					xhr.send( options.hasContent && options.data || null );
-				} catch ( e ) {
-
-					// #14683: Only rethrow if this hasn't been notified as an error yet
-					if ( callback ) {
-						throw e;
-					}
-				}
-			},
-
-			abort: function() {
-				if ( callback ) {
-					callback();
-				}
-			}
-		};
-	}
-} );
-
-
-
-
-// Prevent auto-execution of scripts when no explicit dataType was provided (See gh-2432)
-jQuery.ajaxPrefilter( function( s ) {
-	if ( s.crossDomain ) {
-		s.contents.script = false;
-	}
-} );
-
-// Install script dataType
-jQuery.ajaxSetup( {
-	accepts: {
-		script: "text/javascript, application/javascript, " +
-			"application/ecmascript, application/x-ecmascript"
-	},
-	contents: {
-		script: /\b(?:java|ecma)script\b/
-	},
-	converters: {
-		"text script": function( text ) {
-			jQuery.globalEval( text );
-			return text;
-		}
-	}
-} );
-
-// Handle cache's special case and crossDomain
-jQuery.ajaxPrefilter( "script", function( s ) {
-	if ( s.cache === undefined ) {
-		s.cache = false;
-	}
-	if ( s.crossDomain ) {
-		s.type = "GET";
-	}
-} );
-
-// Bind script tag hack transport
-jQuery.ajaxTransport( "script", function( s ) {
-
-	// This transport only deals with cross domain or forced-by-attrs requests
-	if ( s.crossDomain || s.scriptAttrs ) {
-		var script, callback;
-		return {
-			send: function( _, complete ) {
-				script = jQuery( "<script>" )
-					.attr( s.scriptAttrs || {} )
-					.prop( { charset: s.scriptCharset, src: s.url } )
-					.on( "load error", callback = function( evt ) {
-						script.remove();
-						callback = null;
-						if ( evt ) {
-							complete( evt.type === "error" ? 404 : 200, evt.type );
-						}
-					} );
-
-				// Use native DOM manipulation to avoid our domManip AJAX trickery
-				document.head.appendChild( script[ 0 ] );
-			},
-			abort: function() {
-				if ( callback ) {
-					callback();
-				}
-			}
-		};
-	}
-} );
-
-
-
-
-var oldCallbacks = [],
-	rjsonp = /(=)\?(?=&|$)|\?\?/;
-
-// Default jsonp settings
-jQuery.ajaxSetup( {
-	jsonp: "callback",
-	jsonpCallback: function() {
-		var callback = oldCallbacks.pop() || ( jQuery.expando + "_" + ( nonce++ ) );
-		this[ callback ] = true;
-		return callback;
-	}
-} );
-
-// Detect, normalize options and install callbacks for jsonp requests
-jQuery.ajaxPrefilter( "json jsonp", function( s, originalSettings, jqXHR ) {
-
-	var callbackName, overwritten, responseContainer,
-		jsonProp = s.jsonp !== false && ( rjsonp.test( s.url ) ?
-			"url" :
-			typeof s.data === "string" &&
-				( s.contentType || "" )
-					.indexOf( "application/x-www-form-urlencoded" ) === 0 &&
-				rjsonp.test( s.data ) && "data"
-		);
-
-	// Handle iff the expected data type is "jsonp" or we have a parameter to set
-	if ( jsonProp || s.dataTypes[ 0 ] === "jsonp" ) {
-
-		// Get callback name, remembering preexisting value associated with it
-		callbackName = s.jsonpCallback = isFunction( s.jsonpCallback ) ?
-			s.jsonpCallback() :
-			s.jsonpCallback;
-
-		// Insert callback into url or form data
-		if ( jsonProp ) {
-			s[ jsonProp ] = s[ jsonProp ].replace( rjsonp, "$1" + callbackName );
-		} else if ( s.jsonp !== false ) {
-			s.url += ( rquery.test( s.url ) ? "&" : "?" ) + s.jsonp + "=" + callbackName;
-		}
-
-		// Use data converter to retrieve json after script execution
-		s.converters[ "script json" ] = function() {
-			if ( !responseContainer ) {
-				jQuery.error( callbackName + " was not called" );
-			}
-			return responseContainer[ 0 ];
-		};
-
-		// Force json dataType
-		s.dataTypes[ 0 ] = "json";
-
-		// Install callback
-		overwritten = window[ callbackName ];
-		window[ callbackName ] = function() {
-			responseContainer = arguments;
-		};
-
-		// Clean-up function (fires after converters)
-		jqXHR.always( function() {
-
-			// If previous value didn't exist - remove it
-			if ( overwritten === undefined ) {
-				jQuery( window ).removeProp( callbackName );
-
-			// Otherwise restore preexisting value
-			} else {
-				window[ callbackName ] = overwritten;
-			}
-
-			// Save back as free
-			if ( s[ callbackName ] ) {
-
-				// Make sure that re-using the options doesn't screw things around
-				s.jsonpCallback = originalSettings.jsonpCallback;
-
-				// Save the callback name for future use
-				oldCallbacks.push( callbackName );
-			}
-
-			// Call if it was a function and we have a response
-			if ( responseContainer && isFunction( overwritten ) ) {
-				overwritten( responseContainer[ 0 ] );
-			}
-
-			responseContainer = overwritten = undefined;
-		} );
-
-		// Delegate to script
-		return "script";
-	}
-} );
-
-
-
-
-// Support: Safari 8 only
-// In Safari 8 documents created via document.implementation.createHTMLDocument
-// collapse sibling forms: the second one becomes a child of the first one.
-// Because of that, this security measure has to be disabled in Safari 8.
-// https://bugs.webkit.org/show_bug.cgi?id=137337
-support.createHTMLDocument = ( function() {
-	var body = document.implementation.createHTMLDocument( "" ).body;
-	body.innerHTML = "<form></form><form></form>";
-	return body.childNodes.length === 2;
-} )();
-
-
-// Argument "data" should be string of html
-// context (optional): If specified, the fragment will be created in this context,
-// defaults to document
-// keepScripts (optional): If true, will include scripts passed in the html string
-jQuery.parseHTML = function( data, context, keepScripts ) {
-	if ( typeof data !== "string" ) {
-		return [];
-	}
-	if ( typeof context === "boolean" ) {
-		keepScripts = context;
-		context = false;
-	}
-
-	var base, parsed, scripts;
-
-	if ( !context ) {
-
-		// Stop scripts or inline event handlers from being executed immediately
-		// by using document.implementation
-		if ( support.createHTMLDocument ) {
-			context = document.implementation.createHTMLDocument( "" );
-
-			// Set the base href for the created document
-			// so any parsed elements with URLs
-			// are based on the document's URL (gh-2965)
-			base = context.createElement( "base" );
-			base.href = document.location.href;
-			context.head.appendChild( base );
-		} else {
-			context = document;
-		}
-	}
-
-	parsed = rsingleTag.exec( data );
-	scripts = !keepScripts && [];
-
-	// Single tag
-	if ( parsed ) {
-		return [ context.createElement( parsed[ 1 ] ) ];
-	}
-
-	parsed = buildFragment( [ data ], context, scripts );
-
-	if ( scripts && scripts.length ) {
-		jQuery( scripts ).remove();
-	}
-
-	return jQuery.merge( [], parsed.childNodes );
-};
-
-
-/**
- * Load a url into a page
- */
-jQuery.fn.load = function( url, params, callback ) {
-	var selector, type, response,
-		self = this,
-		off = url.indexOf( " " );
-
-	if ( off > -1 ) {
-		selector = stripAndCollapse( url.slice( off ) );
-		url = url.slice( 0, off );
-	}
-
-	// If it's a function
-	if ( isFunction( params ) ) {
-
-		// We assume that it's the callback
-		callback = params;
-		params = undefined;
-
-	// Otherwise, build a param string
-	} else if ( params && typeof params === "object" ) {
-		type = "POST";
-	}
-
-	// If we have elements to modify, make the request
-	if ( self.length > 0 ) {
-		jQuery.ajax( {
-			url: url,
-
-			// If "type" variable is undefined, then "GET" method will be used.
-			// Make value of this field explicit since
-			// user can override it through ajaxSetup method
-			type: type || "GET",
-			dataType: "html",
-			data: params
-		} ).done( function( responseText ) {
-
-			// Save response for use in complete callback
-			response = arguments;
-
-			self.html( selector ?
-
-				// If a selector was specified, locate the right elements in a dummy div
-				// Exclude scripts to avoid IE 'Permission Denied' errors
-				jQuery( "<div>" ).append( jQuery.parseHTML( responseText ) ).find( selector ) :
-
-				// Otherwise use the full result
-				responseText );
-
-		// If the request succeeds, this function gets "data", "status", "jqXHR"
-		// but they are ignored because response was set above.
-		// If it fails, this function gets "jqXHR", "status", "error"
-		} ).always( callback && function( jqXHR, status ) {
-			self.each( function() {
-				callback.apply( this, response || [ jqXHR.responseText, status, jqXHR ] );
-			} );
-		} );
-	}
-
-	return this;
-};
-
-
-
-
-// Attach a bunch of functions for handling common AJAX events
-jQuery.each( [
-	"ajaxStart",
-	"ajaxStop",
-	"ajaxComplete",
-	"ajaxError",
-	"ajaxSuccess",
-	"ajaxSend"
-], function( i, type ) {
-	jQuery.fn[ type ] = function( fn ) {
-		return this.on( type, fn );
-	};
-} );
-
-
-
-
-jQuery.expr.pseudos.animated = function( elem ) {
-	return jQuery.grep( jQuery.timers, function( fn ) {
-		return elem === fn.elem;
-	} ).length;
-};
-
-
-
-
-jQuery.offset = {
-	setOffset: function( elem, options, i ) {
-		var curPosition, curLeft, curCSSTop, curTop, curOffset, curCSSLeft, calculatePosition,
-			position = jQuery.css( elem, "position" ),
-			curElem = jQuery( elem ),
-			props = {};
-
-		// Set position first, in-case top/left are set even on static elem
-		if ( position === "static" ) {
-			elem.style.position = "relative";
-		}
-
-		curOffset = curElem.offset();
-		curCSSTop = jQuery.css( elem, "top" );
-		curCSSLeft = jQuery.css( elem, "left" );
-		calculatePosition = ( position === "absolute" || position === "fixed" ) &&
-			( curCSSTop + curCSSLeft ).indexOf( "auto" ) > -1;
-
-		// Need to be able to calculate position if either
-		// top or left is auto and position is either absolute or fixed
-		if ( calculatePosition ) {
-			curPosition = curElem.position();
-			curTop = curPosition.top;
-			curLeft = curPosition.left;
-
-		} else {
-			curTop = parseFloat( curCSSTop ) || 0;
-			curLeft = parseFloat( curCSSLeft ) || 0;
-		}
-
-		if ( isFunction( options ) ) {
-
-			// Use jQuery.extend here to allow modification of coordinates argument (gh-1848)
-			options = options.call( elem, i, jQuery.extend( {}, curOffset ) );
-		}
-
-		if ( options.top != null ) {
-			props.top = ( options.top - curOffset.top ) + curTop;
-		}
-		if ( options.left != null ) {
-			props.left = ( options.left - curOffset.left ) + curLeft;
-		}
-
-		if ( "using" in options ) {
-			options.using.call( elem, props );
-
-		} else {
-			curElem.css( props );
-		}
-	}
-};
-
-jQuery.fn.extend( {
-
-	// offset() relates an element's border box to the document origin
-	offset: function( options ) {
-
-		// Preserve chaining for setter
-		if ( arguments.length ) {
-			return options === undefined ?
-				this :
-				this.each( function( i ) {
-					jQuery.offset.setOffset( this, options, i );
-				} );
-		}
-
-		var rect, win,
-			elem = this[ 0 ];
-
-		if ( !elem ) {
-			return;
-		}
-
-		// Return zeros for disconnected and hidden (display: none) elements (gh-2310)
-		// Support: IE <=11 only
-		// Running getBoundingClientRect on a
-		// disconnected node in IE throws an error
-		if ( !elem.getClientRects().length ) {
-			return { top: 0, left: 0 };
-		}
-
-		// Get document-relative position by adding viewport scroll to viewport-relative gBCR
-		rect = elem.getBoundingClientRect();
-		win = elem.ownerDocument.defaultView;
-		return {
-			top: rect.top + win.pageYOffset,
-			left: rect.left + win.pageXOffset
-		};
-	},
-
-	// position() relates an element's margin box to its offset parent's padding box
-	// This corresponds to the behavior of CSS absolute positioning
-	position: function() {
-		if ( !this[ 0 ] ) {
-			return;
-		}
-
-		var offsetParent, offset, doc,
-			elem = this[ 0 ],
-			parentOffset = { top: 0, left: 0 };
-
-		// position:fixed elements are offset from the viewport, which itself always has zero offset
-		if ( jQuery.css( elem, "position" ) === "fixed" ) {
-
-			// Assume position:fixed implies availability of getBoundingClientRect
-			offset = elem.getBoundingClientRect();
-
-		} else {
-			offset = this.offset();
-
-			// Account for the *real* offset parent, which can be the document or its root element
-			// when a statically positioned element is identified
-			doc = elem.ownerDocument;
-			offsetParent = elem.offsetParent || doc.documentElement;
-			while ( offsetParent &&
-				( offsetParent === doc.body || offsetParent === doc.documentElement ) &&
-				jQuery.css( offsetParent, "position" ) === "static" ) {
-
-				offsetParent = offsetParent.parentNode;
-			}
-			if ( offsetParent && offsetParent !== elem && offsetParent.nodeType === 1 ) {
-
-				// Incorporate borders into its offset, since they are outside its content origin
-				parentOffset = jQuery( offsetParent ).offset();
-				parentOffset.top += jQuery.css( offsetParent, "borderTopWidth", true );
-				parentOffset.left += jQuery.css( offsetParent, "borderLeftWidth", true );
-			}
-		}
-
-		// Subtract parent offsets and element margins
-		return {
-			top: offset.top - parentOffset.top - jQuery.css( elem, "marginTop", true ),
-			left: offset.left - parentOffset.left - jQuery.css( elem, "marginLeft", true )
-		};
-	},
-
-	// This method will return documentElement in the following cases:
-	// 1) For the element inside the iframe without offsetParent, this method will return
-	//    documentElement of the parent window
-	// 2) For the hidden or detached element
-	// 3) For body or html element, i.e. in case of the html node - it will return itself
-	//
-	// but those exceptions were never presented as a real life use-cases
-	// and might be considered as more preferable results.
-	//
-	// This logic, however, is not guaranteed and can change at any point in the future
-	offsetParent: function() {
-		return this.map( function() {
-			var offsetParent = this.offsetParent;
-
-			while ( offsetParent && jQuery.css( offsetParent, "position" ) === "static" ) {
-				offsetParent = offsetParent.offsetParent;
-			}
-
-			return offsetParent || documentElement;
-		} );
-	}
-} );
-
-// Create scrollLeft and scrollTop methods
-jQuery.each( { scrollLeft: "pageXOffset", scrollTop: "pageYOffset" }, function( method, prop ) {
-	var top = "pageYOffset" === prop;
-
-	jQuery.fn[ method ] = function( val ) {
-		return access( this, function( elem, method, val ) {
-
-			// Coalesce documents and windows
-			var win;
-			if ( isWindow( elem ) ) {
-				win = elem;
-			} else if ( elem.nodeType === 9 ) {
-				win = elem.defaultView;
-			}
-
-			if ( val === undefined ) {
-				return win ? win[ prop ] : elem[ method ];
-			}
-
-			if ( win ) {
-				win.scrollTo(
-					!top ? val : win.pageXOffset,
-					top ? val : win.pageYOffset
-				);
-
-			} else {
-				elem[ method ] = val;
-			}
-		}, method, val, arguments.length );
-	};
-} );
-
-// Support: Safari <=7 - 9.1, Chrome <=37 - 49
-// Add the top/left cssHooks using jQuery.fn.position
-// Webkit bug: https://bugs.webkit.org/show_bug.cgi?id=29084
-// Blink bug: https://bugs.chromium.org/p/chromium/issues/detail?id=589347
-// getComputedStyle returns percent when specified for top/left/bottom/right;
-// rather than make the css module depend on the offset module, just check for it here
-jQuery.each( [ "top", "left" ], function( i, prop ) {
-	jQuery.cssHooks[ prop ] = addGetHookIf( support.pixelPosition,
-		function( elem, computed ) {
-			if ( computed ) {
-				computed = curCSS( elem, prop );
-
-				// If curCSS returns percentage, fallback to offset
-				return rnumnonpx.test( computed ) ?
-					jQuery( elem ).position()[ prop ] + "px" :
-					computed;
-			}
-		}
-	);
-} );
-
-
-// Create innerHeight, innerWidth, height, width, outerHeight and outerWidth methods
-jQuery.each( { Height: "height", Width: "width" }, function( name, type ) {
-	jQuery.each( { padding: "inner" + name, content: type, "": "outer" + name },
-		function( defaultExtra, funcName ) {
-
-		// Margin is only for outerHeight, outerWidth
-		jQuery.fn[ funcName ] = function( margin, value ) {
-			var chainable = arguments.length && ( defaultExtra || typeof margin !== "boolean" ),
-				extra = defaultExtra || ( margin === true || value === true ? "margin" : "border" );
-
-			return access( this, function( elem, type, value ) {
-				var doc;
-
-				if ( isWindow( elem ) ) {
-
-					// $( window ).outerWidth/Height return w/h including scrollbars (gh-1729)
-					return funcName.indexOf( "outer" ) === 0 ?
-						elem[ "inner" + name ] :
-						elem.document.documentElement[ "client" + name ];
-				}
-
-				// Get document width or height
-				if ( elem.nodeType === 9 ) {
-					doc = elem.documentElement;
-
-					// Either scroll[Width/Height] or offset[Width/Height] or client[Width/Height],
-					// whichever is greatest
-					return Math.max(
-						elem.body[ "scroll" + name ], doc[ "scroll" + name ],
-						elem.body[ "offset" + name ], doc[ "offset" + name ],
-						doc[ "client" + name ]
-					);
-				}
-
-				return value === undefined ?
-
-					// Get width or height on the element, requesting but not forcing parseFloat
-					jQuery.css( elem, type, extra ) :
-
-					// Set width or height on the element
-					jQuery.style( elem, type, value, extra );
-			}, type, chainable ? margin : undefined, chainable );
-		};
-	} );
-} );
-
-
-jQuery.each( ( "blur focus focusin focusout resize scroll click dblclick " +
-	"mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave " +
-	"change select submit keydown keypress keyup contextmenu" ).split( " " ),
-	function( i, name ) {
-
-	// Handle event binding
-	jQuery.fn[ name ] = function( data, fn ) {
-		return arguments.length > 0 ?
-			this.on( name, null, data, fn ) :
-			this.trigger( name );
-	};
-} );
-
-jQuery.fn.extend( {
-	hover: function( fnOver, fnOut ) {
-		return this.mouseenter( fnOver ).mouseleave( fnOut || fnOver );
-	}
-} );
-
-
-
-
-jQuery.fn.extend( {
-
-	bind: function( types, data, fn ) {
-		return this.on( types, null, data, fn );
-	},
-	unbind: function( types, fn ) {
-		return this.off( types, null, fn );
-	},
-
-	delegate: function( selector, types, data, fn ) {
-		return this.on( types, selector, data, fn );
-	},
-	undelegate: function( selector, types, fn ) {
-
-		// ( namespace ) or ( selector, types [, fn] )
-		return arguments.length === 1 ?
-			this.off( selector, "**" ) :
-			this.off( types, selector || "**", fn );
-	}
-} );
-
-// Bind a function to a context, optionally partially applying any
-// arguments.
-// jQuery.proxy is deprecated to promote standards (specifically Function#bind)
-// However, it is not slated for removal any time soon
-jQuery.proxy = function( fn, context ) {
-	var tmp, args, proxy;
-
-	if ( typeof context === "string" ) {
-		tmp = fn[ context ];
-		context = fn;
-		fn = tmp;
-	}
-
-	// Quick check to determine if target is callable, in the spec
-	// this throws a TypeError, but we will just return undefined.
-	if ( !isFunction( fn ) ) {
-		return undefined;
-	}
-
-	// Simulated bind
-	args = slice.call( arguments, 2 );
-	proxy = function() {
-		return fn.apply( context || this, args.concat( slice.call( arguments ) ) );
-	};
-
-	// Set the guid of unique handler to the same of original handler, so it can be removed
-	proxy.guid = fn.guid = fn.guid || jQuery.guid++;
-
-	return proxy;
-};
-
-jQuery.holdReady = function( hold ) {
-	if ( hold ) {
-		jQuery.readyWait++;
-	} else {
-		jQuery.ready( true );
-	}
-};
-jQuery.isArray = Array.isArray;
-jQuery.parseJSON = JSON.parse;
-jQuery.nodeName = nodeName;
-jQuery.isFunction = isFunction;
-jQuery.isWindow = isWindow;
-jQuery.camelCase = camelCase;
-jQuery.type = toType;
-
-jQuery.now = Date.now;
-
-jQuery.isNumeric = function( obj ) {
-
-	// As of jQuery 3.0, isNumeric is limited to
-	// strings and numbers (primitives or objects)
-	// that can be coerced to finite numbers (gh-2662)
-	var type = jQuery.type( obj );
-	return ( type === "number" || type === "string" ) &&
-
-		// parseFloat NaNs numeric-cast false positives ("")
-		// ...but misinterprets leading-number strings, particularly hex literals ("0x...")
-		// subtraction forces infinities to NaN
-		!isNaN( obj - parseFloat( obj ) );
-};
-
-
-
-
-// Register as a named AMD module, since jQuery can be concatenated with other
-// files that may use define, but not via a proper concatenation script that
-// understands anonymous AMD modules. A named AMD is safest and most robust
-// way to register. Lowercase jquery is used because AMD module names are
-// derived from file names, and jQuery is normally delivered in a lowercase
-// file name. Do this after creating the global so that if an AMD module wants
-// to call noConflict to hide this version of jQuery, it will work.
-
-// Note that for maximum portability, libraries that are not jQuery should
-// declare themselves as anonymous modules, and avoid setting a global if an
-// AMD loader is present. jQuery is a special case. For more information, see
-// https://github.com/jrburke/requirejs/wiki/Updating-existing-libraries#wiki-anon
-
-if ( typeof define === "function" && define.amd ) {
-	define( "jquery", [], function() {
-		return jQuery;
-	} );
-}
-
-
-
-
-var
-
-	// Map over jQuery in case of overwrite
-	_jQuery = window.jQuery,
-
-	// Map over the $ in case of overwrite
-	_$ = window.$;
-
-jQuery.noConflict = function( deep ) {
-	if ( window.$ === jQuery ) {
-		window.$ = _$;
-	}
-
-	if ( deep && window.jQuery === jQuery ) {
-		window.jQuery = _jQuery;
-	}
-
-	return jQuery;
-};
-
-// Expose jQuery and $ identifiers, even in AMD
-// (#7102#comment:10, https://github.com/jquery/jquery/pull/557)
-// and CommonJS for browser emulators (#13566)
-if ( !noGlobal ) {
-	window.jQuery = window.$ = jQuery;
-}
-
-
-
-
-return jQuery;
-} );
diff --git a/atomicfeaturespackage/docs/_build/html/_static/jquery.js b/atomicfeaturespackage/docs/_build/html/_static/jquery.js
deleted file mode 100644
index a1c07fd..0000000
--- a/atomicfeaturespackage/docs/_build/html/_static/jquery.js
+++ /dev/null
@@ -1,2 +0,0 @@
-/*! jQuery v3.4.1 | (c) JS Foundation and other contributors | jquery.org/license */
-!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],E=C.document,r=Object.getPrototypeOf,s=t.slice,g=t.concat,u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},x=function(e){return null!=e&&e===e.window},c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.4.1",k=function(e,t){return new k.fn.init(e,t)},p=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;function d(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0<t&&t-1 in e)}k.fn=k.prototype={jquery:f,constructor:k,length:0,toArray:function(){return s.call(this)},get:function(e){return null==e?s.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=k.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return k.each(this,e)},map:function(n){return this.pushStack(k.map(this,function(e,t){return n.call(e,t,e)}))},slice:function(){return this.pushStack(s.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(0<=n&&n<t?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:u,sort:t.sort,splice:t.splice},k.extend=k.fn.extend=function(){var e,t,n,r,i,o,a=arguments[0]||{},s=1,u=arguments.length,l=!1;for("boolean"==typeof a&&(l=a,a=arguments[s]||{},s++),"object"==typeof a||m(a)||(a={}),s===u&&(a=this,s--);s<u;s++)if(null!=(e=arguments[s]))for(t in e)r=e[t],"__proto__"!==t&&a!==r&&(l&&r&&(k.isPlainObject(r)||(i=Array.isArray(r)))?(n=a[t],o=i&&!Array.isArray(n)?[]:i||k.isPlainObject(n)?n:{},i=!1,a[t]=k.extend(l,o,r)):void 0!==r&&(a[t]=r));return a},k.extend({expando:"jQuery"+(f+Math.random()).replace(/\D/g,""),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isPlainObject:function(e){var t,n;return!(!e||"[object Object]"!==o.call(e))&&(!(t=r(e))||"function"==typeof(n=v.call(t,"constructor")&&t.constructor)&&a.call(n)===l)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},globalEval:function(e,t){b(e,{nonce:t&&t.nonce})},each:function(e,t){var n,r=0;if(d(e)){for(n=e.length;r<n;r++)if(!1===t.call(e[r],r,e[r]))break}else for(r in e)if(!1===t.call(e[r],r,e[r]))break;return e},trim:function(e){return null==e?"":(e+"").replace(p,"")},makeArray:function(e,t){var n=t||[];return null!=e&&(d(Object(e))?k.merge(n,"string"==typeof e?[e]:e):u.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:i.call(t,e,n)},merge:function(e,t){for(var n=+t.length,r=0,i=e.length;r<n;r++)e[i++]=t[r];return e.length=i,e},grep:function(e,t,n){for(var r=[],i=0,o=e.length,a=!n;i<o;i++)!t(e[i],i)!==a&&r.push(e[i]);return r},map:function(e,t,n){var r,i,o=0,a=[];if(d(e))for(r=e.length;o<r;o++)null!=(i=t(e[o],o,n))&&a.push(i);else for(o in e)null!=(i=t(e[o],o,n))&&a.push(i);return g.apply([],a)},guid:1,support:y}),"function"==typeof Symbol&&(k.fn[Symbol.iterator]=t[Symbol.iterator]),k.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(e,t){n["[object "+t+"]"]=t.toLowerCase()});var h=function(n){var e,d,b,o,i,h,f,g,w,u,l,T,C,a,E,v,s,c,y,k="sizzle"+1*new Date,m=n.document,S=0,r=0,p=ue(),x=ue(),N=ue(),A=ue(),D=function(e,t){return e===t&&(l=!0),0},j={}.hasOwnProperty,t=[],q=t.pop,L=t.push,H=t.push,O=t.slice,P=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},R="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",M="[\\x20\\t\\r\\n\\f]",I="(?:\\\\.|[\\w-]|[^\0-\\xa0])+",W="\\["+M+"*("+I+")(?:"+M+"*([*^$|!~]?=)"+M+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+I+"))|)"+M+"*\\]",$=":("+I+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+W+")*)|.*)\\)|)",F=new RegExp(M+"+","g"),B=new RegExp("^"+M+"+|((?:^|[^\\\\])(?:\\\\.)*)"+M+"+$","g"),_=new RegExp("^"+M+"*,"+M+"*"),z=new RegExp("^"+M+"*([>+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp($),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+$),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\([\\da-f]{1,6}"+M+"?|("+M+")|.)","ig"),ne=function(e,t,n){var r="0x"+t-65536;return r!=r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(m.childNodes),m.childNodes),t[m.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&((e?e.ownerDocument||e:m)!==C&&T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!A[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&U.test(t)){(s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=k),o=(l=h(t)).length;while(o--)l[o]="#"+s+" "+xe(l[o]);c=l.join(","),f=ee.test(t)&&ye(e.parentNode)||e}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){A(t,!0)}finally{s===k&&e.removeAttribute("id")}}}return g(t.replace(B,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[k]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:m;return r!==C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),m!==C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=k,!C.getElementsByName||!C.getElementsByName(k).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){a.appendChild(e).innerHTML="<a id='"+k+"'></a><select id='"+k+"-\r\\' msallowcapture=''><option selected=''></option></select>",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+k+"-]").length||v.push("~="),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+k+"+*").length||v.push(".#.+[+~]")}),ce(function(e){e.innerHTML="<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",$)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},D=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e===C||e.ownerDocument===m&&y(m,e)?-1:t===C||t.ownerDocument===m&&y(m,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e===C?-1:t===C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]===m?-1:s[r]===m?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if((e.ownerDocument||e)!==C&&T(e),d.matchesSelector&&E&&!A[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){A(t,!0)}return 0<se(t,C,null,[e]).length},se.contains=function(e,t){return(e.ownerDocument||e)!==C&&T(e),y(e,t)},se.attr=function(e,t){(e.ownerDocument||e)!==C&&T(e);var n=b.attrHandle[t.toLowerCase()],r=n&&j.call(b.attrHandle,t.toLowerCase())?n(e,t,!E):void 0;return void 0!==r?r:d.attributes||!E?e.getAttribute(t):(r=e.getAttributeNode(t))&&r.specified?r.value:null},se.escape=function(e){return(e+"").replace(re,ie)},se.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},se.uniqueSort=function(e){var t,n=[],r=0,i=0;if(l=!d.detectDuplicates,u=!d.sortStable&&e.slice(0),e.sort(D),l){while(t=e[i++])t===e[i]&&(r=n.push(i));while(r--)e.splice(n[r],1)}return u=null,e},o=se.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(1===i||9===i||11===i){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=o(e)}else if(3===i||4===i)return e.nodeValue}else while(t=e[r++])n+=o(t);return n},(b=se.selectors={cacheLength:50,createPseudo:le,match:G,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=p[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&p(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1<t.indexOf(i):"$="===r?i&&t.slice(-i.length)===i:"~="===r?-1<(" "+t.replace(F," ")+" ").indexOf(i):"|="===r&&(t===i||t.slice(0,i.length+1)===i+"-"))}},CHILD:function(h,e,t,g,v){var y="nth"!==h.slice(0,3),m="last"!==h.slice(-4),x="of-type"===e;return 1===g&&0===v?function(e){return!!e.parentNode}:function(e,t,n){var r,i,o,a,s,u,l=y!==m?"nextSibling":"previousSibling",c=e.parentNode,f=x&&e.nodeName.toLowerCase(),p=!n&&!x,d=!1;if(c){if(y){while(l){a=e;while(a=a[l])if(x?a.nodeName.toLowerCase()===f:1===a.nodeType)return!1;u=l="only"===h&&!u&&"nextSibling"}return!0}if(u=[m?c.firstChild:c.lastChild],m&&p){d=(s=(r=(i=(o=(a=c)[k]||(a[k]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]||[])[0]===S&&r[1])&&r[2],a=s&&c.childNodes[s];while(a=++s&&a&&a[l]||(d=s=0)||u.pop())if(1===a.nodeType&&++d&&a===e){i[h]=[S,s,d];break}}else if(p&&(d=s=(r=(i=(o=(a=e)[k]||(a[k]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]||[])[0]===S&&r[1]),!1===d)while(a=++s&&a&&a[l]||(d=s=0)||u.pop())if((x?a.nodeName.toLowerCase()===f:1===a.nodeType)&&++d&&(p&&((i=(o=a[k]||(a[k]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]=[S,d]),a===e))break;return(d-=v)===g||d%g==0&&0<=d/g}}},PSEUDO:function(e,o){var t,a=b.pseudos[e]||b.setFilters[e.toLowerCase()]||se.error("unsupported pseudo: "+e);return a[k]?a(o):1<a.length?(t=[e,e,"",o],b.setFilters.hasOwnProperty(e.toLowerCase())?le(function(e,t){var n,r=a(e,o),i=r.length;while(i--)e[n=P(e,r[i])]=!(t[n]=r[i])}):function(e){return a(e,0,t)}):a}},pseudos:{not:le(function(e){var r=[],i=[],s=f(e.replace(B,"$1"));return s[k]?le(function(e,t,n,r){var i,o=s(e,null,r,[]),a=e.length;while(a--)(i=o[a])&&(e[a]=!(t[a]=i))}):function(e,t,n){return r[0]=e,s(r,null,n,i),r[0]=null,!i.pop()}}),has:le(function(t){return function(e){return 0<se(t,e).length}}),contains:le(function(t){return t=t.replace(te,ne),function(e){return-1<(e.textContent||o(e)).indexOf(t)}}),lang:le(function(n){return V.test(n||"")||se.error("unsupported lang: "+n),n=n.replace(te,ne).toLowerCase(),function(e){var t;do{if(t=E?e.lang:e.getAttribute("xml:lang")||e.getAttribute("lang"))return(t=t.toLowerCase())===n||0===t.indexOf(n+"-")}while((e=e.parentNode)&&1===e.nodeType);return!1}}),target:function(e){var t=n.location&&n.location.hash;return t&&t.slice(1)===e.id},root:function(e){return e===a},focus:function(e){return e===C.activeElement&&(!C.hasFocus||C.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:ge(!1),disabled:ge(!0),checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!b.pseudos.empty(e)},header:function(e){return J.test(e.nodeName)},input:function(e){return Q.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:ve(function(){return[0]}),last:ve(function(e,t){return[t-1]}),eq:ve(function(e,t,n){return[n<0?n+t:n]}),even:ve(function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e}),odd:ve(function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e}),lt:ve(function(e,t,n){for(var r=n<0?n+t:t<n?t:n;0<=--r;)e.push(r);return e}),gt:ve(function(e,t,n){for(var r=n<0?n+t:n;++r<t;)e.push(r);return e})}}).pseudos.nth=b.pseudos.eq,{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})b.pseudos[e]=de(e);for(e in{submit:!0,reset:!0})b.pseudos[e]=he(e);function me(){}function xe(e){for(var t=0,n=e.length,r="";t<n;t++)r+=e[t].value;return r}function be(s,e,t){var u=e.dir,l=e.next,c=l||u,f=t&&"parentNode"===c,p=r++;return e.first?function(e,t,n){while(e=e[u])if(1===e.nodeType||f)return s(e,t,n);return!1}:function(e,t,n){var r,i,o,a=[S,p];if(n){while(e=e[u])if((1===e.nodeType||f)&&s(e,t,n))return!0}else while(e=e[u])if(1===e.nodeType||f)if(i=(o=e[k]||(e[k]={}))[e.uniqueID]||(o[e.uniqueID]={}),l&&l===e.nodeName.toLowerCase())e=e[u]||e;else{if((r=i[c])&&r[0]===S&&r[1]===p)return a[2]=r[2];if((i[c]=a)[2]=s(e,t,n))return!0}return!1}}function we(i){return 1<i.length?function(e,t,n){var r=i.length;while(r--)if(!i[r](e,t,n))return!1;return!0}:i[0]}function Te(e,t,n,r,i){for(var o,a=[],s=0,u=e.length,l=null!=t;s<u;s++)(o=e[s])&&(n&&!n(o,r,i)||(a.push(o),l&&t.push(s)));return a}function Ce(d,h,g,v,y,e){return v&&!v[k]&&(v=Ce(v)),y&&!y[k]&&(y=Ce(y,e)),le(function(e,t,n,r){var i,o,a,s=[],u=[],l=t.length,c=e||function(e,t,n){for(var r=0,i=t.length;r<i;r++)se(e,t[r],n);return n}(h||"*",n.nodeType?[n]:n,[]),f=!d||!e&&h?c:Te(c,s,d,n,r),p=g?y||(e?d:l||v)?[]:t:f;if(g&&g(f,p,n,r),v){i=Te(p,u),v(i,[],n,r),o=i.length;while(o--)(a=i[o])&&(p[u[o]]=!(f[u[o]]=a))}if(e){if(y||d){if(y){i=[],o=p.length;while(o--)(a=p[o])&&i.push(f[o]=a);y(null,p=[],i,r)}o=p.length;while(o--)(a=p[o])&&-1<(i=y?P(e,a):s[o])&&(e[i]=!(t[i]=a))}}else p=Te(p===t?p.splice(l,p.length):p),y?y(null,t,p,r):H.apply(t,p)})}function Ee(e){for(var i,t,n,r=e.length,o=b.relative[e[0].type],a=o||b.relative[" "],s=o?1:0,u=be(function(e){return e===i},a,!0),l=be(function(e){return-1<P(i,e)},a,!0),c=[function(e,t,n){var r=!o&&(n||t!==w)||((i=t).nodeType?u(e,t,n):l(e,t,n));return i=null,r}];s<r;s++)if(t=b.relative[e[s].type])c=[be(we(c),t)];else{if((t=b.filter[e[s].type].apply(null,e[s].matches))[k]){for(n=++s;n<r;n++)if(b.relative[e[n].type])break;return Ce(1<s&&we(c),1<s&&xe(e.slice(0,s-1).concat({value:" "===e[s-2].type?"*":""})).replace(B,"$1"),t,s<n&&Ee(e.slice(s,n)),n<r&&Ee(e=e.slice(n)),n<r&&xe(e))}c.push(t)}return we(c)}return me.prototype=b.filters=b.pseudos,b.setFilters=new me,h=se.tokenize=function(e,t){var n,r,i,o,a,s,u,l=x[e+" "];if(l)return t?0:l.slice(0);a=e,s=[],u=b.preFilter;while(a){for(o in n&&!(r=_.exec(a))||(r&&(a=a.slice(r[0].length)||a),s.push(i=[])),n=!1,(r=z.exec(a))&&(n=r.shift(),i.push({value:n,type:r[0].replace(B," ")}),a=a.slice(n.length)),b.filter)!(r=G[o].exec(a))||u[o]&&!(r=u[o](r))||(n=r.shift(),i.push({value:n,type:o,matches:r}),a=a.slice(n.length));if(!n)break}return t?a.length:a?se.error(e):x(e,s).slice(0)},f=se.compile=function(e,t){var n,v,y,m,x,r,i=[],o=[],a=N[e+" "];if(!a){t||(t=h(e)),n=t.length;while(n--)(a=Ee(t[n]))[k]?i.push(a):o.push(a);(a=N(e,(v=o,m=0<(y=i).length,x=0<v.length,r=function(e,t,n,r,i){var o,a,s,u=0,l="0",c=e&&[],f=[],p=w,d=e||x&&b.find.TAG("*",i),h=S+=null==p?1:Math.random()||.1,g=d.length;for(i&&(w=t===C||t||i);l!==g&&null!=(o=d[l]);l++){if(x&&o){a=0,t||o.ownerDocument===C||(T(o),n=!E);while(s=v[a++])if(s(o,t||C,n)){r.push(o);break}i&&(S=h)}m&&((o=!s&&o)&&u--,e&&c.push(o))}if(u+=l,m&&l!==u){a=0;while(s=y[a++])s(c,f,t,n);if(e){if(0<u)while(l--)c[l]||f[l]||(f[l]=q.call(r));f=Te(f)}H.apply(r,f),i&&!e&&0<f.length&&1<u+y.length&&se.uniqueSort(r)}return i&&(S=h,w=p),c},m?le(r):r))).selector=e}return a},g=se.select=function(e,t,n,r){var i,o,a,s,u,l="function"==typeof e&&e,c=!r&&h(e=l.selector||e);if(n=n||[],1===c.length){if(2<(o=c[0]=c[0].slice(0)).length&&"ID"===(a=o[0]).type&&9===t.nodeType&&E&&b.relative[o[1].type]){if(!(t=(b.find.ID(a.matches[0].replace(te,ne),t)||[])[0]))return n;l&&(t=t.parentNode),e=e.slice(o.shift().value.length)}i=G.needsContext.test(e)?0:o.length;while(i--){if(a=o[i],b.relative[s=a.type])break;if((u=b.find[s])&&(r=u(a.matches[0].replace(te,ne),ee.test(o[0].type)&&ye(t.parentNode)||t))){if(o.splice(i,1),!(e=r.length&&xe(o)))return H.apply(n,r),n;break}}}return(l||f(e,c))(r,t,!E,n,!t||ee.test(e)&&ye(t.parentNode)||t),n},d.sortStable=k.split("").sort(D).join("")===k,d.detectDuplicates=!!l,T(),d.sortDetached=ce(function(e){return 1&e.compareDocumentPosition(C.createElement("fieldset"))}),ce(function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")})||fe("type|href|height|width",function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),d.attributes&&ce(function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||fe("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),ce(function(e){return null==e.getAttribute("disabled")})||fe(R,function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),se}(C);k.find=h,k.expr=h.selectors,k.expr[":"]=k.expr.pseudos,k.uniqueSort=k.unique=h.uniqueSort,k.text=h.getText,k.isXMLDoc=h.isXML,k.contains=h.contains,k.escapeSelector=h.escape;var T=function(e,t,n){var r=[],i=void 0!==n;while((e=e[t])&&9!==e.nodeType)if(1===e.nodeType){if(i&&k(e).is(n))break;r.push(e)}return r},S=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},N=k.expr.match.needsContext;function A(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var D=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function j(e,n,r){return m(n)?k.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?k.grep(e,function(e){return e===n!==r}):"string"!=typeof n?k.grep(e,function(e){return-1<i.call(n,e)!==r}):k.filter(n,e,r)}k.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?k.find.matchesSelector(r,e)?[r]:[]:k.find.matches(e,k.grep(t,function(e){return 1===e.nodeType}))},k.fn.extend({find:function(e){var t,n,r=this.length,i=this;if("string"!=typeof e)return this.pushStack(k(e).filter(function(){for(t=0;t<r;t++)if(k.contains(i[t],this))return!0}));for(n=this.pushStack([]),t=0;t<r;t++)k.find(e,i[t],n);return 1<r?k.uniqueSort(n):n},filter:function(e){return this.pushStack(j(this,e||[],!1))},not:function(e){return this.pushStack(j(this,e||[],!0))},is:function(e){return!!j(this,"string"==typeof e&&N.test(e)?k(e):e||[],!1).length}});var q,L=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(k.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||q,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:L.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof k?t[0]:t,k.merge(this,k.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),D.test(r[1])&&k.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(k):k.makeArray(e,this)}).prototype=k.fn,q=k(E);var H=/^(?:parents|prev(?:Until|All))/,O={children:!0,contents:!0,next:!0,prev:!0};function P(e,t){while((e=e[t])&&1!==e.nodeType);return e}k.fn.extend({has:function(e){var t=k(e,this),n=t.length;return this.filter(function(){for(var e=0;e<n;e++)if(k.contains(this,t[e]))return!0})},closest:function(e,t){var n,r=0,i=this.length,o=[],a="string"!=typeof e&&k(e);if(!N.test(e))for(;r<i;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(a?-1<a.index(n):1===n.nodeType&&k.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(1<o.length?k.uniqueSort(o):o)},index:function(e){return e?"string"==typeof e?i.call(k(e),this[0]):i.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(k.uniqueSort(k.merge(this.get(),k(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),k.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return T(e,"parentNode")},parentsUntil:function(e,t,n){return T(e,"parentNode",n)},next:function(e){return P(e,"nextSibling")},prev:function(e){return P(e,"previousSibling")},nextAll:function(e){return T(e,"nextSibling")},prevAll:function(e){return T(e,"previousSibling")},nextUntil:function(e,t,n){return T(e,"nextSibling",n)},prevUntil:function(e,t,n){return T(e,"previousSibling",n)},siblings:function(e){return S((e.parentNode||{}).firstChild,e)},children:function(e){return S(e.firstChild)},contents:function(e){return"undefined"!=typeof e.contentDocument?e.contentDocument:(A(e,"template")&&(e=e.content||e),k.merge([],e.childNodes))}},function(r,i){k.fn[r]=function(e,t){var n=k.map(this,i,e);return"Until"!==r.slice(-5)&&(t=e),t&&"string"==typeof t&&(n=k.filter(t,n)),1<this.length&&(O[r]||k.uniqueSort(n),H.test(r)&&n.reverse()),this.pushStack(n)}});var R=/[^\x20\t\r\n\f]+/g;function M(e){return e}function I(e){throw e}function W(e,t,n,r){var i;try{e&&m(i=e.promise)?i.call(e).done(t).fail(n):e&&m(i=e.then)?i.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}k.Callbacks=function(r){var e,n;r="string"==typeof r?(e=r,n={},k.each(e.match(R)||[],function(e,t){n[t]=!0}),n):k.extend({},r);var i,t,o,a,s=[],u=[],l=-1,c=function(){for(a=a||r.once,o=i=!0;u.length;l=-1){t=u.shift();while(++l<s.length)!1===s[l].apply(t[0],t[1])&&r.stopOnFalse&&(l=s.length,t=!1)}r.memory||(t=!1),i=!1,a&&(s=t?[]:"")},f={add:function(){return s&&(t&&!i&&(l=s.length-1,u.push(t)),function n(e){k.each(e,function(e,t){m(t)?r.unique&&f.has(t)||s.push(t):t&&t.length&&"string"!==w(t)&&n(t)})}(arguments),t&&!i&&c()),this},remove:function(){return k.each(arguments,function(e,t){var n;while(-1<(n=k.inArray(t,s,n)))s.splice(n,1),n<=l&&l--}),this},has:function(e){return e?-1<k.inArray(e,s):0<s.length},empty:function(){return s&&(s=[]),this},disable:function(){return a=u=[],s=t="",this},disabled:function(){return!s},lock:function(){return a=u=[],t||i||(s=t=""),this},locked:function(){return!!a},fireWith:function(e,t){return a||(t=[e,(t=t||[]).slice?t.slice():t],u.push(t),i||c()),this},fire:function(){return f.fireWith(this,arguments),this},fired:function(){return!!o}};return f},k.extend({Deferred:function(e){var o=[["notify","progress",k.Callbacks("memory"),k.Callbacks("memory"),2],["resolve","done",k.Callbacks("once memory"),k.Callbacks("once memory"),0,"resolved"],["reject","fail",k.Callbacks("once memory"),k.Callbacks("once memory"),1,"rejected"]],i="pending",a={state:function(){return i},always:function(){return s.done(arguments).fail(arguments),this},"catch":function(e){return a.then(null,e)},pipe:function(){var i=arguments;return k.Deferred(function(r){k.each(o,function(e,t){var n=m(i[t[4]])&&i[t[4]];s[t[1]](function(){var e=n&&n.apply(this,arguments);e&&m(e.promise)?e.promise().progress(r.notify).done(r.resolve).fail(r.reject):r[t[0]+"With"](this,n?[e]:arguments)})}),i=null}).promise()},then:function(t,n,r){var u=0;function l(i,o,a,s){return function(){var n=this,r=arguments,e=function(){var e,t;if(!(i<u)){if((e=a.apply(n,r))===o.promise())throw new TypeError("Thenable self-resolution");t=e&&("object"==typeof e||"function"==typeof e)&&e.then,m(t)?s?t.call(e,l(u,o,M,s),l(u,o,I,s)):(u++,t.call(e,l(u,o,M,s),l(u,o,I,s),l(u,o,M,o.notifyWith))):(a!==M&&(n=void 0,r=[e]),(s||o.resolveWith)(n,r))}},t=s?e:function(){try{e()}catch(e){k.Deferred.exceptionHook&&k.Deferred.exceptionHook(e,t.stackTrace),u<=i+1&&(a!==I&&(n=void 0,r=[e]),o.rejectWith(n,r))}};i?t():(k.Deferred.getStackHook&&(t.stackTrace=k.Deferred.getStackHook()),C.setTimeout(t))}}return k.Deferred(function(e){o[0][3].add(l(0,e,m(r)?r:M,e.notifyWith)),o[1][3].add(l(0,e,m(t)?t:M)),o[2][3].add(l(0,e,m(n)?n:I))}).promise()},promise:function(e){return null!=e?k.extend(e,a):a}},s={};return k.each(o,function(e,t){var n=t[2],r=t[5];a[t[1]]=n.add,r&&n.add(function(){i=r},o[3-e][2].disable,o[3-e][3].disable,o[0][2].lock,o[0][3].lock),n.add(t[3].fire),s[t[0]]=function(){return s[t[0]+"With"](this===s?void 0:this,arguments),this},s[t[0]+"With"]=n.fireWith}),a.promise(s),e&&e.call(s,s),s},when:function(e){var n=arguments.length,t=n,r=Array(t),i=s.call(arguments),o=k.Deferred(),a=function(t){return function(e){r[t]=this,i[t]=1<arguments.length?s.call(arguments):e,--n||o.resolveWith(r,i)}};if(n<=1&&(W(e,o.done(a(t)).resolve,o.reject,!n),"pending"===o.state()||m(i[t]&&i[t].then)))return o.then();while(t--)W(i[t],a(t),o.reject);return o.promise()}});var $=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;k.Deferred.exceptionHook=function(e,t){C.console&&C.console.warn&&e&&$.test(e.name)&&C.console.warn("jQuery.Deferred exception: "+e.message,e.stack,t)},k.readyException=function(e){C.setTimeout(function(){throw e})};var F=k.Deferred();function B(){E.removeEventListener("DOMContentLoaded",B),C.removeEventListener("load",B),k.ready()}k.fn.ready=function(e){return F.then(e)["catch"](function(e){k.readyException(e)}),this},k.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--k.readyWait:k.isReady)||(k.isReady=!0)!==e&&0<--k.readyWait||F.resolveWith(E,[k])}}),k.ready.then=F.then,"complete"===E.readyState||"loading"!==E.readyState&&!E.documentElement.doScroll?C.setTimeout(k.ready):(E.addEventListener("DOMContentLoaded",B),C.addEventListener("load",B));var _=function(e,t,n,r,i,o,a){var s=0,u=e.length,l=null==n;if("object"===w(n))for(s in i=!0,n)_(e,t,s,n[s],!0,o,a);else if(void 0!==r&&(i=!0,m(r)||(a=!0),l&&(a?(t.call(e,r),t=null):(l=t,t=function(e,t,n){return l.call(k(e),n)})),t))for(;s<u;s++)t(e[s],n,a?r:r.call(e[s],s,t(e[s],n)));return i?e:l?t.call(e):u?t(e[0],n):o},z=/^-ms-/,U=/-([a-z])/g;function X(e,t){return t.toUpperCase()}function V(e){return e.replace(z,"ms-").replace(U,X)}var G=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType};function Y(){this.expando=k.expando+Y.uid++}Y.uid=1,Y.prototype={cache:function(e){var t=e[this.expando];return t||(t={},G(e)&&(e.nodeType?e[this.expando]=t:Object.defineProperty(e,this.expando,{value:t,configurable:!0}))),t},set:function(e,t,n){var r,i=this.cache(e);if("string"==typeof t)i[V(t)]=n;else for(r in t)i[V(r)]=t[r];return i},get:function(e,t){return void 0===t?this.cache(e):e[this.expando]&&e[this.expando][V(t)]},access:function(e,t,n){return void 0===t||t&&"string"==typeof t&&void 0===n?this.get(e,t):(this.set(e,t,n),void 0!==n?n:t)},remove:function(e,t){var n,r=e[this.expando];if(void 0!==r){if(void 0!==t){n=(t=Array.isArray(t)?t.map(V):(t=V(t))in r?[t]:t.match(R)||[]).length;while(n--)delete r[t[n]]}(void 0===t||k.isEmptyObject(r))&&(e.nodeType?e[this.expando]=void 0:delete e[this.expando])}},hasData:function(e){var t=e[this.expando];return void 0!==t&&!k.isEmptyObject(t)}};var Q=new Y,J=new Y,K=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,Z=/[A-Z]/g;function ee(e,t,n){var r,i;if(void 0===n&&1===e.nodeType)if(r="data-"+t.replace(Z,"-$&").toLowerCase(),"string"==typeof(n=e.getAttribute(r))){try{n="true"===(i=n)||"false"!==i&&("null"===i?null:i===+i+""?+i:K.test(i)?JSON.parse(i):i)}catch(e){}J.set(e,t,n)}else n=void 0;return n}k.extend({hasData:function(e){return J.hasData(e)||Q.hasData(e)},data:function(e,t,n){return J.access(e,t,n)},removeData:function(e,t){J.remove(e,t)},_data:function(e,t,n){return Q.access(e,t,n)},_removeData:function(e,t){Q.remove(e,t)}}),k.fn.extend({data:function(n,e){var t,r,i,o=this[0],a=o&&o.attributes;if(void 0===n){if(this.length&&(i=J.get(o),1===o.nodeType&&!Q.get(o,"hasDataAttrs"))){t=a.length;while(t--)a[t]&&0===(r=a[t].name).indexOf("data-")&&(r=V(r.slice(5)),ee(o,r,i[r]));Q.set(o,"hasDataAttrs",!0)}return i}return"object"==typeof n?this.each(function(){J.set(this,n)}):_(this,function(e){var t;if(o&&void 0===e)return void 0!==(t=J.get(o,n))?t:void 0!==(t=ee(o,n))?t:void 0;this.each(function(){J.set(this,n,e)})},null,e,1<arguments.length,null,!0)},removeData:function(e){return this.each(function(){J.remove(this,e)})}}),k.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=Q.get(e,t),n&&(!r||Array.isArray(n)?r=Q.access(e,t,k.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=k.queue(e,t),r=n.length,i=n.shift(),o=k._queueHooks(e,t);"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,function(){k.dequeue(e,t)},o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return Q.get(e,n)||Q.access(e,n,{empty:k.Callbacks("once memory").add(function(){Q.remove(e,[t+"queue",n])})})}}),k.fn.extend({queue:function(t,n){var e=2;return"string"!=typeof t&&(n=t,t="fx",e--),arguments.length<e?k.queue(this[0],t):void 0===n?this:this.each(function(){var e=k.queue(this,t,n);k._queueHooks(this,t),"fx"===t&&"inprogress"!==e[0]&&k.dequeue(this,t)})},dequeue:function(e){return this.each(function(){k.dequeue(this,e)})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,t){var n,r=1,i=k.Deferred(),o=this,a=this.length,s=function(){--r||i.resolveWith(o,[o])};"string"!=typeof e&&(t=e,e=void 0),e=e||"fx";while(a--)(n=Q.get(o[a],e+"queueHooks"))&&n.empty&&(r++,n.empty.add(s));return s(),i.promise(t)}});var te=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,ne=new RegExp("^(?:([+-])=|)("+te+")([a-z%]*)$","i"),re=["Top","Right","Bottom","Left"],ie=E.documentElement,oe=function(e){return k.contains(e.ownerDocument,e)},ae={composed:!0};ie.getRootNode&&(oe=function(e){return k.contains(e.ownerDocument,e)||e.getRootNode(ae)===e.ownerDocument});var se=function(e,t){return"none"===(e=t||e).style.display||""===e.style.display&&oe(e)&&"none"===k.css(e,"display")},ue=function(e,t,n,r){var i,o,a={};for(o in t)a[o]=e.style[o],e.style[o]=t[o];for(o in i=n.apply(e,r||[]),t)e.style[o]=a[o];return i};function le(e,t,n,r){var i,o,a=20,s=r?function(){return r.cur()}:function(){return k.css(e,t,"")},u=s(),l=n&&n[3]||(k.cssNumber[t]?"":"px"),c=e.nodeType&&(k.cssNumber[t]||"px"!==l&&+u)&&ne.exec(k.css(e,t));if(c&&c[3]!==l){u/=2,l=l||c[3],c=+u||1;while(a--)k.style(e,t,c+l),(1-o)*(1-(o=s()/u||.5))<=0&&(a=0),c/=o;c*=2,k.style(e,t,c+l),n=n||[]}return n&&(c=+c||+u||0,i=n[1]?c+(n[1]+1)*n[2]:+n[2],r&&(r.unit=l,r.start=c,r.end=i)),i}var ce={};function fe(e,t){for(var n,r,i,o,a,s,u,l=[],c=0,f=e.length;c<f;c++)(r=e[c]).style&&(n=r.style.display,t?("none"===n&&(l[c]=Q.get(r,"display")||null,l[c]||(r.style.display="")),""===r.style.display&&se(r)&&(l[c]=(u=a=o=void 0,a=(i=r).ownerDocument,s=i.nodeName,(u=ce[s])||(o=a.body.appendChild(a.createElement(s)),u=k.css(o,"display"),o.parentNode.removeChild(o),"none"===u&&(u="block"),ce[s]=u)))):"none"!==n&&(l[c]="none",Q.set(r,"display",n)));for(c=0;c<f;c++)null!=l[c]&&(e[c].style.display=l[c]);return e}k.fn.extend({show:function(){return fe(this,!0)},hide:function(){return fe(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){se(this)?k(this).show():k(this).hide()})}});var pe=/^(?:checkbox|radio)$/i,de=/<([a-z][^\/\0>\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i,ge={option:[1,"<select multiple='multiple'>","</select>"],thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?k.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;n<r;n++)Q.set(e[n],"globalEval",!t||Q.get(t[n],"globalEval"))}ge.optgroup=ge.option,ge.tbody=ge.tfoot=ge.colgroup=ge.caption=ge.thead,ge.th=ge.td;var me,xe,be=/<|&#?\w+;/;function we(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d<h;d++)if((o=e[d])||0===o)if("object"===w(o))k.merge(p,o.nodeType?[o]:o);else if(be.test(o)){a=a||f.appendChild(t.createElement("div")),s=(de.exec(o)||["",""])[1].toLowerCase(),u=ge[s]||ge._default,a.innerHTML=u[1]+k.htmlPrefilter(o)+u[2],c=u[0];while(c--)a=a.lastChild;k.merge(p,a.childNodes),(a=f.firstChild).textContent=""}else p.push(t.createTextNode(o));f.textContent="",d=0;while(o=p[d++])if(r&&-1<k.inArray(o,r))i&&i.push(o);else if(l=oe(o),a=ve(f.appendChild(o),"script"),l&&ye(a),n){c=0;while(o=a[c++])he.test(o.type||"")&&n.push(o)}return f}me=E.createDocumentFragment().appendChild(E.createElement("div")),(xe=E.createElement("input")).setAttribute("type","radio"),xe.setAttribute("checked","checked"),xe.setAttribute("name","t"),me.appendChild(xe),y.checkClone=me.cloneNode(!0).cloneNode(!0).lastChild.checked,me.innerHTML="<textarea>x</textarea>",y.noCloneChecked=!!me.cloneNode(!0).lastChild.defaultValue;var Te=/^key/,Ce=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Ee=/^([^.]*)(?:\.(.+)|)/;function ke(){return!0}function Se(){return!1}function Ne(e,t){return e===function(){try{return E.activeElement}catch(e){}}()==("focus"===t)}function Ae(e,t,n,r,i,o){var a,s;if("object"==typeof t){for(s in"string"!=typeof n&&(r=r||n,n=void 0),t)Ae(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Se;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return k().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=k.guid++)),e.each(function(){k.event.add(this,t,i,r,n)})}function De(e,i,o){o?(Q.set(e,i,!1),k.event.add(e,i,{namespace:!1,handler:function(e){var t,n,r=Q.get(this,i);if(1&e.isTrigger&&this[i]){if(r.length)(k.event.special[i]||{}).delegateType&&e.stopPropagation();else if(r=s.call(arguments),Q.set(this,i,r),t=o(this,i),this[i](),r!==(n=Q.get(this,i))||t?Q.set(this,i,!1):n={},r!==n)return e.stopImmediatePropagation(),e.preventDefault(),n.value}else r.length&&(Q.set(this,i,{value:k.event.trigger(k.extend(r[0],k.Event.prototype),r.slice(1),this)}),e.stopImmediatePropagation())}})):void 0===Q.get(e,i)&&k.event.add(e,i,ke)}k.event={global:{},add:function(t,e,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Q.get(t);if(v){n.handler&&(n=(o=n).handler,i=o.selector),i&&k.find.matchesSelector(ie,i),n.guid||(n.guid=k.guid++),(u=v.events)||(u=v.events={}),(a=v.handle)||(a=v.handle=function(e){return"undefined"!=typeof k&&k.event.triggered!==e.type?k.event.dispatch.apply(t,arguments):void 0}),l=(e=(e||"").match(R)||[""]).length;while(l--)d=g=(s=Ee.exec(e[l])||[])[1],h=(s[2]||"").split(".").sort(),d&&(f=k.event.special[d]||{},d=(i?f.delegateType:f.bindType)||d,f=k.event.special[d]||{},c=k.extend({type:d,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&k.expr.match.needsContext.test(i),namespace:h.join(".")},o),(p=u[d])||((p=u[d]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(t,r,h,a)||t.addEventListener&&t.addEventListener(d,a)),f.add&&(f.add.call(t,c),c.handler.guid||(c.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,c):p.push(c),k.event.global[d]=!0)}},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Q.hasData(e)&&Q.get(e);if(v&&(u=v.events)){l=(t=(t||"").match(R)||[""]).length;while(l--)if(d=g=(s=Ee.exec(t[l])||[])[1],h=(s[2]||"").split(".").sort(),d){f=k.event.special[d]||{},p=u[d=(r?f.delegateType:f.bindType)||d]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=p.length;while(o--)c=p[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(p.splice(o,1),c.selector&&p.delegateCount--,f.remove&&f.remove.call(e,c));a&&!p.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||k.removeEvent(e,d,v.handle),delete u[d])}else for(d in u)k.event.remove(e,d+t[l],n,r,!0);k.isEmptyObject(u)&&Q.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,a,s=k.event.fix(e),u=new Array(arguments.length),l=(Q.get(this,"events")||{})[s.type]||[],c=k.event.special[s.type]||{};for(u[0]=s,t=1;t<arguments.length;t++)u[t]=arguments[t];if(s.delegateTarget=this,!c.preDispatch||!1!==c.preDispatch.call(this,s)){a=k.event.handlers.call(this,s,l),t=0;while((i=a[t++])&&!s.isPropagationStopped()){s.currentTarget=i.elem,n=0;while((o=i.handlers[n++])&&!s.isImmediatePropagationStopped())s.rnamespace&&!1!==o.namespace&&!s.rnamespace.test(o.namespace)||(s.handleObj=o,s.data=o.data,void 0!==(r=((k.event.special[o.origType]||{}).handle||o.handler).apply(i.elem,u))&&!1===(s.result=r)&&(s.preventDefault(),s.stopPropagation()))}return c.postDispatch&&c.postDispatch.call(this,s),s.result}},handlers:function(e,t){var n,r,i,o,a,s=[],u=t.delegateCount,l=e.target;if(u&&l.nodeType&&!("click"===e.type&&1<=e.button))for(;l!==this;l=l.parentNode||this)if(1===l.nodeType&&("click"!==e.type||!0!==l.disabled)){for(o=[],a={},n=0;n<u;n++)void 0===a[i=(r=t[n]).selector+" "]&&(a[i]=r.needsContext?-1<k(i,this).index(l):k.find(i,this,null,[l]).length),a[i]&&o.push(r);o.length&&s.push({elem:l,handlers:o})}return l=this,u<t.length&&s.push({elem:l,handlers:t.slice(u)}),s},addProp:function(t,e){Object.defineProperty(k.Event.prototype,t,{enumerable:!0,configurable:!0,get:m(e)?function(){if(this.originalEvent)return e(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[t]},set:function(e){Object.defineProperty(this,t,{enumerable:!0,configurable:!0,writable:!0,value:e})}})},fix:function(e){return e[k.expando]?e:new k.Event(e)},special:{load:{noBubble:!0},click:{setup:function(e){var t=this||e;return pe.test(t.type)&&t.click&&A(t,"input")&&De(t,"click",ke),!1},trigger:function(e){var t=this||e;return pe.test(t.type)&&t.click&&A(t,"input")&&De(t,"click"),!0},_default:function(e){var t=e.target;return pe.test(t.type)&&t.click&&A(t,"input")&&Q.get(t,"click")||A(t,"a")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}}},k.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n)},k.Event=function(e,t){if(!(this instanceof k.Event))return new k.Event(e,t);e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&!1===e.returnValue?ke:Se,this.target=e.target&&3===e.target.nodeType?e.target.parentNode:e.target,this.currentTarget=e.currentTarget,this.relatedTarget=e.relatedTarget):this.type=e,t&&k.extend(this,t),this.timeStamp=e&&e.timeStamp||Date.now(),this[k.expando]=!0},k.Event.prototype={constructor:k.Event,isDefaultPrevented:Se,isPropagationStopped:Se,isImmediatePropagationStopped:Se,isSimulated:!1,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=ke,e&&!this.isSimulated&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=ke,e&&!this.isSimulated&&e.stopPropagation()},stopImmediatePropagation:function(){var e=this.originalEvent;this.isImmediatePropagationStopped=ke,e&&!this.isSimulated&&e.stopImmediatePropagation(),this.stopPropagation()}},k.each({altKey:!0,bubbles:!0,cancelable:!0,changedTouches:!0,ctrlKey:!0,detail:!0,eventPhase:!0,metaKey:!0,pageX:!0,pageY:!0,shiftKey:!0,view:!0,"char":!0,code:!0,charCode:!0,key:!0,keyCode:!0,button:!0,buttons:!0,clientX:!0,clientY:!0,offsetX:!0,offsetY:!0,pointerId:!0,pointerType:!0,screenX:!0,screenY:!0,targetTouches:!0,toElement:!0,touches:!0,which:function(e){var t=e.button;return null==e.which&&Te.test(e.type)?null!=e.charCode?e.charCode:e.keyCode:!e.which&&void 0!==t&&Ce.test(e.type)?1&t?1:2&t?3:4&t?2:0:e.which}},k.event.addProp),k.each({focus:"focusin",blur:"focusout"},function(e,t){k.event.special[e]={setup:function(){return De(this,e,Ne),!1},trigger:function(){return De(this,e),!0},delegateType:t}}),k.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(e,i){k.event.special[e]={delegateType:i,bindType:i,handle:function(e){var t,n=e.relatedTarget,r=e.handleObj;return n&&(n===this||k.contains(this,n))||(e.type=r.origType,t=r.handler.apply(this,arguments),e.type=i),t}}}),k.fn.extend({on:function(e,t,n,r){return Ae(this,e,t,n,r)},one:function(e,t,n,r){return Ae(this,e,t,n,r,1)},off:function(e,t,n){var r,i;if(e&&e.preventDefault&&e.handleObj)return r=e.handleObj,k(e.delegateTarget).off(r.namespace?r.origType+"."+r.namespace:r.origType,r.selector,r.handler),this;if("object"==typeof e){for(i in e)this.off(i,t,e[i]);return this}return!1!==t&&"function"!=typeof t||(n=t,t=void 0),!1===n&&(n=Se),this.each(function(){k.event.remove(this,e,n,t)})}});var je=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\/\0>\x20\t\r\n\f]*)[^>]*)\/>/gi,qe=/<script|<style|<link/i,Le=/checked\s*(?:[^=]|=\s*.checked.)/i,He=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;function Oe(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&k(e).children("tbody")[0]||e}function Pe(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function Re(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Me(e,t){var n,r,i,o,a,s,u,l;if(1===t.nodeType){if(Q.hasData(e)&&(o=Q.access(e),a=Q.set(t,o),l=o.events))for(i in delete a.handle,a.events={},l)for(n=0,r=l[i].length;n<r;n++)k.event.add(t,i,l[i][n]);J.hasData(e)&&(s=J.access(e),u=k.extend({},s),J.set(t,u))}}function Ie(n,r,i,o){r=g.apply([],r);var e,t,a,s,u,l,c=0,f=n.length,p=f-1,d=r[0],h=m(d);if(h||1<f&&"string"==typeof d&&!y.checkClone&&Le.test(d))return n.each(function(e){var t=n.eq(e);h&&(r[0]=d.call(this,e,t.html())),Ie(t,r,i,o)});if(f&&(t=(e=we(r,n[0].ownerDocument,!1,n,o)).firstChild,1===e.childNodes.length&&(e=t),t||o)){for(s=(a=k.map(ve(e,"script"),Pe)).length;c<f;c++)u=e,c!==p&&(u=k.clone(u,!0,!0),s&&k.merge(a,ve(u,"script"))),i.call(n[c],u,c);if(s)for(l=a[a.length-1].ownerDocument,k.map(a,Re),c=0;c<s;c++)u=a[c],he.test(u.type||"")&&!Q.access(u,"globalEval")&&k.contains(l,u)&&(u.src&&"module"!==(u.type||"").toLowerCase()?k._evalUrl&&!u.noModule&&k._evalUrl(u.src,{nonce:u.nonce||u.getAttribute("nonce")}):b(u.textContent.replace(He,""),u,l))}return n}function We(e,t,n){for(var r,i=t?k.filter(t,e):e,o=0;null!=(r=i[o]);o++)n||1!==r.nodeType||k.cleanData(ve(r)),r.parentNode&&(n&&oe(r)&&ye(ve(r,"script")),r.parentNode.removeChild(r));return e}k.extend({htmlPrefilter:function(e){return e.replace(je,"<$1></$2>")},clone:function(e,t,n){var r,i,o,a,s,u,l,c=e.cloneNode(!0),f=oe(e);if(!(y.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||k.isXMLDoc(e)))for(a=ve(c),r=0,i=(o=ve(e)).length;r<i;r++)s=o[r],u=a[r],void 0,"input"===(l=u.nodeName.toLowerCase())&&pe.test(s.type)?u.checked=s.checked:"input"!==l&&"textarea"!==l||(u.defaultValue=s.defaultValue);if(t)if(n)for(o=o||ve(e),a=a||ve(c),r=0,i=o.length;r<i;r++)Me(o[r],a[r]);else Me(e,c);return 0<(a=ve(c,"script")).length&&ye(a,!f&&ve(e,"script")),c},cleanData:function(e){for(var t,n,r,i=k.event.special,o=0;void 0!==(n=e[o]);o++)if(G(n)){if(t=n[Q.expando]){if(t.events)for(r in t.events)i[r]?k.event.remove(n,r):k.removeEvent(n,r,t.handle);n[Q.expando]=void 0}n[J.expando]&&(n[J.expando]=void 0)}}}),k.fn.extend({detach:function(e){return We(this,e,!0)},remove:function(e){return We(this,e)},text:function(e){return _(this,function(e){return void 0===e?k.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)})},null,e,arguments.length)},append:function(){return Ie(this,arguments,function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||Oe(this,e).appendChild(e)})},prepend:function(){return Ie(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Oe(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return Ie(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return Ie(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(k.cleanData(ve(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return k.clone(this,e,t)})},html:function(e){return _(this,function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!qe.test(e)&&!ge[(de.exec(e)||["",""])[1].toLowerCase()]){e=k.htmlPrefilter(e);try{for(;n<r;n++)1===(t=this[n]||{}).nodeType&&(k.cleanData(ve(t,!1)),t.innerHTML=e);t=0}catch(e){}}t&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var n=[];return Ie(this,arguments,function(e){var t=this.parentNode;k.inArray(this,n)<0&&(k.cleanData(ve(this)),t&&t.replaceChild(e,this))},n)}}),k.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,a){k.fn[e]=function(e){for(var t,n=[],r=k(e),i=r.length-1,o=0;o<=i;o++)t=o===i?this:this.clone(!0),k(r[o])[a](t),u.apply(n,t.get());return this.pushStack(n)}});var $e=new RegExp("^("+te+")(?!px)[a-z%]+$","i"),Fe=function(e){var t=e.ownerDocument.defaultView;return t&&t.opener||(t=C),t.getComputedStyle(e)},Be=new RegExp(re.join("|"),"i");function _e(e,t,n){var r,i,o,a,s=e.style;return(n=n||Fe(e))&&(""!==(a=n.getPropertyValue(t)||n[t])||oe(e)||(a=k.style(e,t)),!y.pixelBoxStyles()&&$e.test(a)&&Be.test(t)&&(r=s.width,i=s.minWidth,o=s.maxWidth,s.minWidth=s.maxWidth=s.width=a,a=n.width,s.width=r,s.minWidth=i,s.maxWidth=o)),void 0!==a?a+"":a}function ze(e,t){return{get:function(){if(!e())return(this.get=t).apply(this,arguments);delete this.get}}}!function(){function e(){if(u){s.style.cssText="position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0",u.style.cssText="position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%",ie.appendChild(s).appendChild(u);var e=C.getComputedStyle(u);n="1%"!==e.top,a=12===t(e.marginLeft),u.style.right="60%",o=36===t(e.right),r=36===t(e.width),u.style.position="absolute",i=12===t(u.offsetWidth/3),ie.removeChild(s),u=null}}function t(e){return Math.round(parseFloat(e))}var n,r,i,o,a,s=E.createElement("div"),u=E.createElement("div");u.style&&(u.style.backgroundClip="content-box",u.cloneNode(!0).style.backgroundClip="",y.clearCloneStyle="content-box"===u.style.backgroundClip,k.extend(y,{boxSizingReliable:function(){return e(),r},pixelBoxStyles:function(){return e(),o},pixelPosition:function(){return e(),n},reliableMarginLeft:function(){return e(),a},scrollboxSize:function(){return e(),i}}))}();var Ue=["Webkit","Moz","ms"],Xe=E.createElement("div").style,Ve={};function Ge(e){var t=k.cssProps[e]||Ve[e];return t||(e in Xe?e:Ve[e]=function(e){var t=e[0].toUpperCase()+e.slice(1),n=Ue.length;while(n--)if((e=Ue[n]+t)in Xe)return e}(e)||e)}var Ye=/^(none|table(?!-c[ea]).+)/,Qe=/^--/,Je={position:"absolute",visibility:"hidden",display:"block"},Ke={letterSpacing:"0",fontWeight:"400"};function Ze(e,t,n){var r=ne.exec(t);return r?Math.max(0,r[2]-(n||0))+(r[3]||"px"):t}function et(e,t,n,r,i,o){var a="width"===t?1:0,s=0,u=0;if(n===(r?"border":"content"))return 0;for(;a<4;a+=2)"margin"===n&&(u+=k.css(e,n+re[a],!0,i)),r?("content"===n&&(u-=k.css(e,"padding"+re[a],!0,i)),"margin"!==n&&(u-=k.css(e,"border"+re[a]+"Width",!0,i))):(u+=k.css(e,"padding"+re[a],!0,i),"padding"!==n?u+=k.css(e,"border"+re[a]+"Width",!0,i):s+=k.css(e,"border"+re[a]+"Width",!0,i));return!r&&0<=o&&(u+=Math.max(0,Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-o-u-s-.5))||0),u}function tt(e,t,n){var r=Fe(e),i=(!y.boxSizingReliable()||n)&&"border-box"===k.css(e,"boxSizing",!1,r),o=i,a=_e(e,t,r),s="offset"+t[0].toUpperCase()+t.slice(1);if($e.test(a)){if(!n)return a;a="auto"}return(!y.boxSizingReliable()&&i||"auto"===a||!parseFloat(a)&&"inline"===k.css(e,"display",!1,r))&&e.getClientRects().length&&(i="border-box"===k.css(e,"boxSizing",!1,r),(o=s in e)&&(a=e[s])),(a=parseFloat(a)||0)+et(e,t,n||(i?"border":"content"),o,r,a)+"px"}function nt(e,t,n,r,i){return new nt.prototype.init(e,t,n,r,i)}k.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=_e(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,a,s=V(t),u=Qe.test(t),l=e.style;if(u||(t=Ge(s)),a=k.cssHooks[t]||k.cssHooks[s],void 0===n)return a&&"get"in a&&void 0!==(i=a.get(e,!1,r))?i:l[t];"string"===(o=typeof n)&&(i=ne.exec(n))&&i[1]&&(n=le(e,t,i),o="number"),null!=n&&n==n&&("number"!==o||u||(n+=i&&i[3]||(k.cssNumber[s]?"":"px")),y.clearCloneStyle||""!==n||0!==t.indexOf("background")||(l[t]="inherit"),a&&"set"in a&&void 0===(n=a.set(e,n,r))||(u?l.setProperty(t,n):l[t]=n))}},css:function(e,t,n,r){var i,o,a,s=V(t);return Qe.test(t)||(t=Ge(s)),(a=k.cssHooks[t]||k.cssHooks[s])&&"get"in a&&(i=a.get(e,!0,n)),void 0===i&&(i=_e(e,t,r)),"normal"===i&&t in Ke&&(i=Ke[t]),""===n||n?(o=parseFloat(i),!0===n||isFinite(o)?o||0:i):i}}),k.each(["height","width"],function(e,u){k.cssHooks[u]={get:function(e,t,n){if(t)return!Ye.test(k.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?tt(e,u,n):ue(e,Je,function(){return tt(e,u,n)})},set:function(e,t,n){var r,i=Fe(e),o=!y.scrollboxSize()&&"absolute"===i.position,a=(o||n)&&"border-box"===k.css(e,"boxSizing",!1,i),s=n?et(e,u,n,a,i):0;return a&&o&&(s-=Math.ceil(e["offset"+u[0].toUpperCase()+u.slice(1)]-parseFloat(i[u])-et(e,u,"border",!1,i)-.5)),s&&(r=ne.exec(t))&&"px"!==(r[3]||"px")&&(e.style[u]=t,t=k.css(e,u)),Ze(0,t,s)}}}),k.cssHooks.marginLeft=ze(y.reliableMarginLeft,function(e,t){if(t)return(parseFloat(_e(e,"marginLeft"))||e.getBoundingClientRect().left-ue(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+"px"}),k.each({margin:"",padding:"",border:"Width"},function(i,o){k.cssHooks[i+o]={expand:function(e){for(var t=0,n={},r="string"==typeof e?e.split(" "):[e];t<4;t++)n[i+re[t]+o]=r[t]||r[t-2]||r[0];return n}},"margin"!==i&&(k.cssHooks[i+o].set=Ze)}),k.fn.extend({css:function(e,t){return _(this,function(e,t,n){var r,i,o={},a=0;if(Array.isArray(t)){for(r=Fe(e),i=t.length;a<i;a++)o[t[a]]=k.css(e,t[a],!1,r);return o}return void 0!==n?k.style(e,t,n):k.css(e,t)},e,t,1<arguments.length)}}),((k.Tween=nt).prototype={constructor:nt,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||k.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(k.cssNumber[n]?"":"px")},cur:function(){var e=nt.propHooks[this.prop];return e&&e.get?e.get(this):nt.propHooks._default.get(this)},run:function(e){var t,n=nt.propHooks[this.prop];return this.options.duration?this.pos=t=k.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):nt.propHooks._default.set(this),this}}).init.prototype=nt.prototype,(nt.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=k.css(e.elem,e.prop,""))&&"auto"!==t?t:0},set:function(e){k.fx.step[e.prop]?k.fx.step[e.prop](e):1!==e.elem.nodeType||!k.cssHooks[e.prop]&&null==e.elem.style[Ge(e.prop)]?e.elem[e.prop]=e.now:k.style(e.elem,e.prop,e.now+e.unit)}}}).scrollTop=nt.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},k.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},k.fx=nt.prototype.init,k.fx.step={};var rt,it,ot,at,st=/^(?:toggle|show|hide)$/,ut=/queueHooks$/;function lt(){it&&(!1===E.hidden&&C.requestAnimationFrame?C.requestAnimationFrame(lt):C.setTimeout(lt,k.fx.interval),k.fx.tick())}function ct(){return C.setTimeout(function(){rt=void 0}),rt=Date.now()}function ft(e,t){var n,r=0,i={height:e};for(t=t?1:0;r<4;r+=2-t)i["margin"+(n=re[r])]=i["padding"+n]=e;return t&&(i.opacity=i.width=e),i}function pt(e,t,n){for(var r,i=(dt.tweeners[t]||[]).concat(dt.tweeners["*"]),o=0,a=i.length;o<a;o++)if(r=i[o].call(n,t,e))return r}function dt(o,e,t){var n,a,r=0,i=dt.prefilters.length,s=k.Deferred().always(function(){delete u.elem}),u=function(){if(a)return!1;for(var e=rt||ct(),t=Math.max(0,l.startTime+l.duration-e),n=1-(t/l.duration||0),r=0,i=l.tweens.length;r<i;r++)l.tweens[r].run(n);return s.notifyWith(o,[l,n,t]),n<1&&i?t:(i||s.notifyWith(o,[l,1,0]),s.resolveWith(o,[l]),!1)},l=s.promise({elem:o,props:k.extend({},e),opts:k.extend(!0,{specialEasing:{},easing:k.easing._default},t),originalProperties:e,originalOptions:t,startTime:rt||ct(),duration:t.duration,tweens:[],createTween:function(e,t){var n=k.Tween(o,l.opts,e,t,l.opts.specialEasing[e]||l.opts.easing);return l.tweens.push(n),n},stop:function(e){var t=0,n=e?l.tweens.length:0;if(a)return this;for(a=!0;t<n;t++)l.tweens[t].run(1);return e?(s.notifyWith(o,[l,1,0]),s.resolveWith(o,[l,e])):s.rejectWith(o,[l,e]),this}}),c=l.props;for(!function(e,t){var n,r,i,o,a;for(n in e)if(i=t[r=V(n)],o=e[n],Array.isArray(o)&&(i=o[1],o=e[n]=o[0]),n!==r&&(e[r]=o,delete e[n]),(a=k.cssHooks[r])&&"expand"in a)for(n in o=a.expand(o),delete e[r],o)n in e||(e[n]=o[n],t[n]=i);else t[r]=i}(c,l.opts.specialEasing);r<i;r++)if(n=dt.prefilters[r].call(l,o,c,l.opts))return m(n.stop)&&(k._queueHooks(l.elem,l.opts.queue).stop=n.stop.bind(n)),n;return k.map(c,pt,l),m(l.opts.start)&&l.opts.start.call(o,l),l.progress(l.opts.progress).done(l.opts.done,l.opts.complete).fail(l.opts.fail).always(l.opts.always),k.fx.timer(k.extend(u,{elem:o,anim:l,queue:l.opts.queue})),l}k.Animation=k.extend(dt,{tweeners:{"*":[function(e,t){var n=this.createTween(e,t);return le(n.elem,e,ne.exec(t),n),n}]},tweener:function(e,t){m(e)?(t=e,e=["*"]):e=e.match(R);for(var n,r=0,i=e.length;r<i;r++)n=e[r],dt.tweeners[n]=dt.tweeners[n]||[],dt.tweeners[n].unshift(t)},prefilters:[function(e,t,n){var r,i,o,a,s,u,l,c,f="width"in t||"height"in t,p=this,d={},h=e.style,g=e.nodeType&&se(e),v=Q.get(e,"fxshow");for(r in n.queue||(null==(a=k._queueHooks(e,"fx")).unqueued&&(a.unqueued=0,s=a.empty.fire,a.empty.fire=function(){a.unqueued||s()}),a.unqueued++,p.always(function(){p.always(function(){a.unqueued--,k.queue(e,"fx").length||a.empty.fire()})})),t)if(i=t[r],st.test(i)){if(delete t[r],o=o||"toggle"===i,i===(g?"hide":"show")){if("show"!==i||!v||void 0===v[r])continue;g=!0}d[r]=v&&v[r]||k.style(e,r)}if((u=!k.isEmptyObject(t))||!k.isEmptyObject(d))for(r in f&&1===e.nodeType&&(n.overflow=[h.overflow,h.overflowX,h.overflowY],null==(l=v&&v.display)&&(l=Q.get(e,"display")),"none"===(c=k.css(e,"display"))&&(l?c=l:(fe([e],!0),l=e.style.display||l,c=k.css(e,"display"),fe([e]))),("inline"===c||"inline-block"===c&&null!=l)&&"none"===k.css(e,"float")&&(u||(p.done(function(){h.display=l}),null==l&&(c=h.display,l="none"===c?"":c)),h.display="inline-block")),n.overflow&&(h.overflow="hidden",p.always(function(){h.overflow=n.overflow[0],h.overflowX=n.overflow[1],h.overflowY=n.overflow[2]})),u=!1,d)u||(v?"hidden"in v&&(g=v.hidden):v=Q.access(e,"fxshow",{display:l}),o&&(v.hidden=!g),g&&fe([e],!0),p.done(function(){for(r in g||fe([e]),Q.remove(e,"fxshow"),d)k.style(e,r,d[r])})),u=pt(g?v[r]:0,r,p),r in v||(v[r]=u.start,g&&(u.end=u.start,u.start=0))}],prefilter:function(e,t){t?dt.prefilters.unshift(e):dt.prefilters.push(e)}}),k.speed=function(e,t,n){var r=e&&"object"==typeof e?k.extend({},e):{complete:n||!n&&t||m(e)&&e,duration:e,easing:n&&t||t&&!m(t)&&t};return k.fx.off?r.duration=0:"number"!=typeof r.duration&&(r.duration in k.fx.speeds?r.duration=k.fx.speeds[r.duration]:r.duration=k.fx.speeds._default),null!=r.queue&&!0!==r.queue||(r.queue="fx"),r.old=r.complete,r.complete=function(){m(r.old)&&r.old.call(this),r.queue&&k.dequeue(this,r.queue)},r},k.fn.extend({fadeTo:function(e,t,n,r){return this.filter(se).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(t,e,n,r){var i=k.isEmptyObject(t),o=k.speed(e,n,r),a=function(){var e=dt(this,k.extend({},t),o);(i||Q.get(this,"finish"))&&e.stop(!0)};return a.finish=a,i||!1===o.queue?this.each(a):this.queue(o.queue,a)},stop:function(i,e,o){var a=function(e){var t=e.stop;delete e.stop,t(o)};return"string"!=typeof i&&(o=e,e=i,i=void 0),e&&!1!==i&&this.queue(i||"fx",[]),this.each(function(){var e=!0,t=null!=i&&i+"queueHooks",n=k.timers,r=Q.get(this);if(t)r[t]&&r[t].stop&&a(r[t]);else for(t in r)r[t]&&r[t].stop&&ut.test(t)&&a(r[t]);for(t=n.length;t--;)n[t].elem!==this||null!=i&&n[t].queue!==i||(n[t].anim.stop(o),e=!1,n.splice(t,1));!e&&o||k.dequeue(this,i)})},finish:function(a){return!1!==a&&(a=a||"fx"),this.each(function(){var e,t=Q.get(this),n=t[a+"queue"],r=t[a+"queueHooks"],i=k.timers,o=n?n.length:0;for(t.finish=!0,k.queue(this,a,[]),r&&r.stop&&r.stop.call(this,!0),e=i.length;e--;)i[e].elem===this&&i[e].queue===a&&(i[e].anim.stop(!0),i.splice(e,1));for(e=0;e<o;e++)n[e]&&n[e].finish&&n[e].finish.call(this);delete t.finish})}}),k.each(["toggle","show","hide"],function(e,r){var i=k.fn[r];k.fn[r]=function(e,t,n){return null==e||"boolean"==typeof e?i.apply(this,arguments):this.animate(ft(r,!0),e,t,n)}}),k.each({slideDown:ft("show"),slideUp:ft("hide"),slideToggle:ft("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,r){k.fn[e]=function(e,t,n){return this.animate(r,e,t,n)}}),k.timers=[],k.fx.tick=function(){var e,t=0,n=k.timers;for(rt=Date.now();t<n.length;t++)(e=n[t])()||n[t]!==e||n.splice(t--,1);n.length||k.fx.stop(),rt=void 0},k.fx.timer=function(e){k.timers.push(e),k.fx.start()},k.fx.interval=13,k.fx.start=function(){it||(it=!0,lt())},k.fx.stop=function(){it=null},k.fx.speeds={slow:600,fast:200,_default:400},k.fn.delay=function(r,e){return r=k.fx&&k.fx.speeds[r]||r,e=e||"fx",this.queue(e,function(e,t){var n=C.setTimeout(e,r);t.stop=function(){C.clearTimeout(n)}})},ot=E.createElement("input"),at=E.createElement("select").appendChild(E.createElement("option")),ot.type="checkbox",y.checkOn=""!==ot.value,y.optSelected=at.selected,(ot=E.createElement("input")).value="t",ot.type="radio",y.radioValue="t"===ot.value;var ht,gt=k.expr.attrHandle;k.fn.extend({attr:function(e,t){return _(this,k.attr,e,t,1<arguments.length)},removeAttr:function(e){return this.each(function(){k.removeAttr(this,e)})}}),k.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return"undefined"==typeof e.getAttribute?k.prop(e,t,n):(1===o&&k.isXMLDoc(e)||(i=k.attrHooks[t.toLowerCase()]||(k.expr.match.bool.test(t)?ht:void 0)),void 0!==n?null===n?void k.removeAttr(e,t):i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+""),n):i&&"get"in i&&null!==(r=i.get(e,t))?r:null==(r=k.find.attr(e,t))?void 0:r)},attrHooks:{type:{set:function(e,t){if(!y.radioValue&&"radio"===t&&A(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,i=t&&t.match(R);if(i&&1===e.nodeType)while(n=i[r++])e.removeAttribute(n)}}),ht={set:function(e,t,n){return!1===t?k.removeAttr(e,n):e.setAttribute(n,n),n}},k.each(k.expr.match.bool.source.match(/\w+/g),function(e,t){var a=gt[t]||k.find.attr;gt[t]=function(e,t,n){var r,i,o=t.toLowerCase();return n||(i=gt[o],gt[o]=r,r=null!=a(e,t,n)?o:null,gt[o]=i),r}});var vt=/^(?:input|select|textarea|button)$/i,yt=/^(?:a|area)$/i;function mt(e){return(e.match(R)||[]).join(" ")}function xt(e){return e.getAttribute&&e.getAttribute("class")||""}function bt(e){return Array.isArray(e)?e:"string"==typeof e&&e.match(R)||[]}k.fn.extend({prop:function(e,t){return _(this,k.prop,e,t,1<arguments.length)},removeProp:function(e){return this.each(function(){delete this[k.propFix[e]||e]})}}),k.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&k.isXMLDoc(e)||(t=k.propFix[t]||t,i=k.propHooks[t]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=k.find.attr(e,"tabindex");return t?parseInt(t,10):vt.test(e.nodeName)||yt.test(e.nodeName)&&e.href?0:-1}}},propFix:{"for":"htmlFor","class":"className"}}),y.optSelected||(k.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),k.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){k.propFix[this.toLowerCase()]=this}),k.fn.extend({addClass:function(t){var e,n,r,i,o,a,s,u=0;if(m(t))return this.each(function(e){k(this).addClass(t.call(this,e,xt(this)))});if((e=bt(t)).length)while(n=this[u++])if(i=xt(n),r=1===n.nodeType&&" "+mt(i)+" "){a=0;while(o=e[a++])r.indexOf(" "+o+" ")<0&&(r+=o+" ");i!==(s=mt(r))&&n.setAttribute("class",s)}return this},removeClass:function(t){var e,n,r,i,o,a,s,u=0;if(m(t))return this.each(function(e){k(this).removeClass(t.call(this,e,xt(this)))});if(!arguments.length)return this.attr("class","");if((e=bt(t)).length)while(n=this[u++])if(i=xt(n),r=1===n.nodeType&&" "+mt(i)+" "){a=0;while(o=e[a++])while(-1<r.indexOf(" "+o+" "))r=r.replace(" "+o+" "," ");i!==(s=mt(r))&&n.setAttribute("class",s)}return this},toggleClass:function(i,t){var o=typeof i,a="string"===o||Array.isArray(i);return"boolean"==typeof t&&a?t?this.addClass(i):this.removeClass(i):m(i)?this.each(function(e){k(this).toggleClass(i.call(this,e,xt(this),t),t)}):this.each(function(){var e,t,n,r;if(a){t=0,n=k(this),r=bt(i);while(e=r[t++])n.hasClass(e)?n.removeClass(e):n.addClass(e)}else void 0!==i&&"boolean"!==o||((e=xt(this))&&Q.set(this,"__className__",e),this.setAttribute&&this.setAttribute("class",e||!1===i?"":Q.get(this,"__className__")||""))})},hasClass:function(e){var t,n,r=0;t=" "+e+" ";while(n=this[r++])if(1===n.nodeType&&-1<(" "+mt(xt(n))+" ").indexOf(t))return!0;return!1}});var wt=/\r/g;k.fn.extend({val:function(n){var r,e,i,t=this[0];return arguments.length?(i=m(n),this.each(function(e){var t;1===this.nodeType&&(null==(t=i?n.call(this,e,k(this).val()):n)?t="":"number"==typeof t?t+="":Array.isArray(t)&&(t=k.map(t,function(e){return null==e?"":e+""})),(r=k.valHooks[this.type]||k.valHooks[this.nodeName.toLowerCase()])&&"set"in r&&void 0!==r.set(this,t,"value")||(this.value=t))})):t?(r=k.valHooks[t.type]||k.valHooks[t.nodeName.toLowerCase()])&&"get"in r&&void 0!==(e=r.get(t,"value"))?e:"string"==typeof(e=t.value)?e.replace(wt,""):null==e?"":e:void 0}}),k.extend({valHooks:{option:{get:function(e){var t=k.find.attr(e,"value");return null!=t?t:mt(k.text(e))}},select:{get:function(e){var t,n,r,i=e.options,o=e.selectedIndex,a="select-one"===e.type,s=a?null:[],u=a?o+1:i.length;for(r=o<0?u:a?o:0;r<u;r++)if(((n=i[r]).selected||r===o)&&!n.disabled&&(!n.parentNode.disabled||!A(n.parentNode,"optgroup"))){if(t=k(n).val(),a)return t;s.push(t)}return s},set:function(e,t){var n,r,i=e.options,o=k.makeArray(t),a=i.length;while(a--)((r=i[a]).selected=-1<k.inArray(k.valHooks.option.get(r),o))&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),k.each(["radio","checkbox"],function(){k.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=-1<k.inArray(k(e).val(),t)}},y.checkOn||(k.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})}),y.focusin="onfocusin"in C;var Tt=/^(?:focusinfocus|focusoutblur)$/,Ct=function(e){e.stopPropagation()};k.extend(k.event,{trigger:function(e,t,n,r){var i,o,a,s,u,l,c,f,p=[n||E],d=v.call(e,"type")?e.type:e,h=v.call(e,"namespace")?e.namespace.split("."):[];if(o=f=a=n=n||E,3!==n.nodeType&&8!==n.nodeType&&!Tt.test(d+k.event.triggered)&&(-1<d.indexOf(".")&&(d=(h=d.split(".")).shift(),h.sort()),u=d.indexOf(":")<0&&"on"+d,(e=e[k.expando]?e:new k.Event(d,"object"==typeof e&&e)).isTrigger=r?2:3,e.namespace=h.join("."),e.rnamespace=e.namespace?new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,e.result=void 0,e.target||(e.target=n),t=null==t?[e]:k.makeArray(t,[e]),c=k.event.special[d]||{},r||!c.trigger||!1!==c.trigger.apply(n,t))){if(!r&&!c.noBubble&&!x(n)){for(s=c.delegateType||d,Tt.test(s+d)||(o=o.parentNode);o;o=o.parentNode)p.push(o),a=o;a===(n.ownerDocument||E)&&p.push(a.defaultView||a.parentWindow||C)}i=0;while((o=p[i++])&&!e.isPropagationStopped())f=o,e.type=1<i?s:c.bindType||d,(l=(Q.get(o,"events")||{})[e.type]&&Q.get(o,"handle"))&&l.apply(o,t),(l=u&&o[u])&&l.apply&&G(o)&&(e.result=l.apply(o,t),!1===e.result&&e.preventDefault());return e.type=d,r||e.isDefaultPrevented()||c._default&&!1!==c._default.apply(p.pop(),t)||!G(n)||u&&m(n[d])&&!x(n)&&((a=n[u])&&(n[u]=null),k.event.triggered=d,e.isPropagationStopped()&&f.addEventListener(d,Ct),n[d](),e.isPropagationStopped()&&f.removeEventListener(d,Ct),k.event.triggered=void 0,a&&(n[u]=a)),e.result}},simulate:function(e,t,n){var r=k.extend(new k.Event,n,{type:e,isSimulated:!0});k.event.trigger(r,null,t)}}),k.fn.extend({trigger:function(e,t){return this.each(function(){k.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return k.event.trigger(e,t,n,!0)}}),y.focusin||k.each({focus:"focusin",blur:"focusout"},function(n,r){var i=function(e){k.event.simulate(r,e.target,k.event.fix(e))};k.event.special[r]={setup:function(){var e=this.ownerDocument||this,t=Q.access(e,r);t||e.addEventListener(n,i,!0),Q.access(e,r,(t||0)+1)},teardown:function(){var e=this.ownerDocument||this,t=Q.access(e,r)-1;t?Q.access(e,r,t):(e.removeEventListener(n,i,!0),Q.remove(e,r))}}});var Et=C.location,kt=Date.now(),St=/\?/;k.parseXML=function(e){var t;if(!e||"string"!=typeof e)return null;try{t=(new C.DOMParser).parseFromString(e,"text/xml")}catch(e){t=void 0}return t&&!t.getElementsByTagName("parsererror").length||k.error("Invalid XML: "+e),t};var Nt=/\[\]$/,At=/\r?\n/g,Dt=/^(?:submit|button|image|reset|file)$/i,jt=/^(?:input|select|textarea|keygen)/i;function qt(n,e,r,i){var t;if(Array.isArray(e))k.each(e,function(e,t){r||Nt.test(n)?i(n,t):qt(n+"["+("object"==typeof t&&null!=t?e:"")+"]",t,r,i)});else if(r||"object"!==w(e))i(n,e);else for(t in e)qt(n+"["+t+"]",e[t],r,i)}k.param=function(e,t){var n,r=[],i=function(e,t){var n=m(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(null==e)return"";if(Array.isArray(e)||e.jquery&&!k.isPlainObject(e))k.each(e,function(){i(this.name,this.value)});else for(n in e)qt(n,e[n],t,i);return r.join("&")},k.fn.extend({serialize:function(){return k.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=k.prop(this,"elements");return e?k.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!k(this).is(":disabled")&&jt.test(this.nodeName)&&!Dt.test(e)&&(this.checked||!pe.test(e))}).map(function(e,t){var n=k(this).val();return null==n?null:Array.isArray(n)?k.map(n,function(e){return{name:t.name,value:e.replace(At,"\r\n")}}):{name:t.name,value:n.replace(At,"\r\n")}}).get()}});var Lt=/%20/g,Ht=/#.*$/,Ot=/([?&])_=[^&]*/,Pt=/^(.*?):[ \t]*([^\r\n]*)$/gm,Rt=/^(?:GET|HEAD)$/,Mt=/^\/\//,It={},Wt={},$t="*/".concat("*"),Ft=E.createElement("a");function Bt(o){return function(e,t){"string"!=typeof e&&(t=e,e="*");var n,r=0,i=e.toLowerCase().match(R)||[];if(m(t))while(n=i[r++])"+"===n[0]?(n=n.slice(1)||"*",(o[n]=o[n]||[]).unshift(t)):(o[n]=o[n]||[]).push(t)}}function _t(t,i,o,a){var s={},u=t===Wt;function l(e){var r;return s[e]=!0,k.each(t[e]||[],function(e,t){var n=t(i,o,a);return"string"!=typeof n||u||s[n]?u?!(r=n):void 0:(i.dataTypes.unshift(n),l(n),!1)}),r}return l(i.dataTypes[0])||!s["*"]&&l("*")}function zt(e,t){var n,r,i=k.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((i[n]?e:r||(r={}))[n]=t[n]);return r&&k.extend(!0,e,r),e}Ft.href=Et.href,k.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:Et.href,type:"GET",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(Et.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":$t,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":k.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?zt(zt(e,k.ajaxSettings),t):zt(k.ajaxSettings,e)},ajaxPrefilter:Bt(It),ajaxTransport:Bt(Wt),ajax:function(e,t){"object"==typeof e&&(t=e,e=void 0),t=t||{};var c,f,p,n,d,r,h,g,i,o,v=k.ajaxSetup({},t),y=v.context||v,m=v.context&&(y.nodeType||y.jquery)?k(y):k.event,x=k.Deferred(),b=k.Callbacks("once memory"),w=v.statusCode||{},a={},s={},u="canceled",T={readyState:0,getResponseHeader:function(e){var t;if(h){if(!n){n={};while(t=Pt.exec(p))n[t[1].toLowerCase()+" "]=(n[t[1].toLowerCase()+" "]||[]).concat(t[2])}t=n[e.toLowerCase()+" "]}return null==t?null:t.join(", ")},getAllResponseHeaders:function(){return h?p:null},setRequestHeader:function(e,t){return null==h&&(e=s[e.toLowerCase()]=s[e.toLowerCase()]||e,a[e]=t),this},overrideMimeType:function(e){return null==h&&(v.mimeType=e),this},statusCode:function(e){var t;if(e)if(h)T.always(e[T.status]);else for(t in e)w[t]=[w[t],e[t]];return this},abort:function(e){var t=e||u;return c&&c.abort(t),l(0,t),this}};if(x.promise(T),v.url=((e||v.url||Et.href)+"").replace(Mt,Et.protocol+"//"),v.type=t.method||t.type||v.method||v.type,v.dataTypes=(v.dataType||"*").toLowerCase().match(R)||[""],null==v.crossDomain){r=E.createElement("a");try{r.href=v.url,r.href=r.href,v.crossDomain=Ft.protocol+"//"+Ft.host!=r.protocol+"//"+r.host}catch(e){v.crossDomain=!0}}if(v.data&&v.processData&&"string"!=typeof v.data&&(v.data=k.param(v.data,v.traditional)),_t(It,v,t,T),h)return T;for(i in(g=k.event&&v.global)&&0==k.active++&&k.event.trigger("ajaxStart"),v.type=v.type.toUpperCase(),v.hasContent=!Rt.test(v.type),f=v.url.replace(Ht,""),v.hasContent?v.data&&v.processData&&0===(v.contentType||"").indexOf("application/x-www-form-urlencoded")&&(v.data=v.data.replace(Lt,"+")):(o=v.url.slice(f.length),v.data&&(v.processData||"string"==typeof v.data)&&(f+=(St.test(f)?"&":"?")+v.data,delete v.data),!1===v.cache&&(f=f.replace(Ot,"$1"),o=(St.test(f)?"&":"?")+"_="+kt+++o),v.url=f+o),v.ifModified&&(k.lastModified[f]&&T.setRequestHeader("If-Modified-Since",k.lastModified[f]),k.etag[f]&&T.setRequestHeader("If-None-Match",k.etag[f])),(v.data&&v.hasContent&&!1!==v.contentType||t.contentType)&&T.setRequestHeader("Content-Type",v.contentType),T.setRequestHeader("Accept",v.dataTypes[0]&&v.accepts[v.dataTypes[0]]?v.accepts[v.dataTypes[0]]+("*"!==v.dataTypes[0]?", "+$t+"; q=0.01":""):v.accepts["*"]),v.headers)T.setRequestHeader(i,v.headers[i]);if(v.beforeSend&&(!1===v.beforeSend.call(y,T,v)||h))return T.abort();if(u="abort",b.add(v.complete),T.done(v.success),T.fail(v.error),c=_t(Wt,v,t,T)){if(T.readyState=1,g&&m.trigger("ajaxSend",[T,v]),h)return T;v.async&&0<v.timeout&&(d=C.setTimeout(function(){T.abort("timeout")},v.timeout));try{h=!1,c.send(a,l)}catch(e){if(h)throw e;l(-1,e)}}else l(-1,"No Transport");function l(e,t,n,r){var i,o,a,s,u,l=t;h||(h=!0,d&&C.clearTimeout(d),c=void 0,p=r||"",T.readyState=0<e?4:0,i=200<=e&&e<300||304===e,n&&(s=function(e,t,n){var r,i,o,a,s=e.contents,u=e.dataTypes;while("*"===u[0])u.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader("Content-Type"));if(r)for(i in s)if(s[i]&&s[i].test(r)){u.unshift(i);break}if(u[0]in n)o=u[0];else{for(i in n){if(!u[0]||e.converters[i+" "+u[0]]){o=i;break}a||(a=i)}o=o||a}if(o)return o!==u[0]&&u.unshift(o),n[o]}(v,T,n)),s=function(e,t,n,r){var i,o,a,s,u,l={},c=e.dataTypes.slice();if(c[1])for(a in e.converters)l[a.toLowerCase()]=e.converters[a];o=c.shift();while(o)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!u&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),u=o,o=c.shift())if("*"===o)o=u;else if("*"!==u&&u!==o){if(!(a=l[u+" "+o]||l["* "+o]))for(i in l)if((s=i.split(" "))[1]===o&&(a=l[u+" "+s[0]]||l["* "+s[0]])){!0===a?a=l[i]:!0!==l[i]&&(o=s[0],c.unshift(s[1]));break}if(!0!==a)if(a&&e["throws"])t=a(t);else try{t=a(t)}catch(e){return{state:"parsererror",error:a?e:"No conversion from "+u+" to "+o}}}return{state:"success",data:t}}(v,s,T,i),i?(v.ifModified&&((u=T.getResponseHeader("Last-Modified"))&&(k.lastModified[f]=u),(u=T.getResponseHeader("etag"))&&(k.etag[f]=u)),204===e||"HEAD"===v.type?l="nocontent":304===e?l="notmodified":(l=s.state,o=s.data,i=!(a=s.error))):(a=l,!e&&l||(l="error",e<0&&(e=0))),T.status=e,T.statusText=(t||l)+"",i?x.resolveWith(y,[o,l,T]):x.rejectWith(y,[T,l,a]),T.statusCode(w),w=void 0,g&&m.trigger(i?"ajaxSuccess":"ajaxError",[T,v,i?o:a]),b.fireWith(y,[T,l]),g&&(m.trigger("ajaxComplete",[T,v]),--k.active||k.event.trigger("ajaxStop")))}return T},getJSON:function(e,t,n){return k.get(e,t,n,"json")},getScript:function(e,t){return k.get(e,void 0,t,"script")}}),k.each(["get","post"],function(e,i){k[i]=function(e,t,n,r){return m(t)&&(r=r||n,n=t,t=void 0),k.ajax(k.extend({url:e,type:i,dataType:r,data:t,success:n},k.isPlainObject(e)&&e))}}),k._evalUrl=function(e,t){return k.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,converters:{"text script":function(){}},dataFilter:function(e){k.globalEval(e,t)}})},k.fn.extend({wrapAll:function(e){var t;return this[0]&&(m(e)&&(e=e.call(this[0])),t=k(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstElementChild)e=e.firstElementChild;return e}).append(this)),this},wrapInner:function(n){return m(n)?this.each(function(e){k(this).wrapInner(n.call(this,e))}):this.each(function(){var e=k(this),t=e.contents();t.length?t.wrapAll(n):e.append(n)})},wrap:function(t){var n=m(t);return this.each(function(e){k(this).wrapAll(n?t.call(this,e):t)})},unwrap:function(e){return this.parent(e).not("body").each(function(){k(this).replaceWith(this.childNodes)}),this}}),k.expr.pseudos.hidden=function(e){return!k.expr.pseudos.visible(e)},k.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},k.ajaxSettings.xhr=function(){try{return new C.XMLHttpRequest}catch(e){}};var Ut={0:200,1223:204},Xt=k.ajaxSettings.xhr();y.cors=!!Xt&&"withCredentials"in Xt,y.ajax=Xt=!!Xt,k.ajaxTransport(function(i){var o,a;if(y.cors||Xt&&!i.crossDomain)return{send:function(e,t){var n,r=i.xhr();if(r.open(i.type,i.url,i.async,i.username,i.password),i.xhrFields)for(n in i.xhrFields)r[n]=i.xhrFields[n];for(n in i.mimeType&&r.overrideMimeType&&r.overrideMimeType(i.mimeType),i.crossDomain||e["X-Requested-With"]||(e["X-Requested-With"]="XMLHttpRequest"),e)r.setRequestHeader(n,e[n]);o=function(e){return function(){o&&(o=a=r.onload=r.onerror=r.onabort=r.ontimeout=r.onreadystatechange=null,"abort"===e?r.abort():"error"===e?"number"!=typeof r.status?t(0,"error"):t(r.status,r.statusText):t(Ut[r.status]||r.status,r.statusText,"text"!==(r.responseType||"text")||"string"!=typeof r.responseText?{binary:r.response}:{text:r.responseText},r.getAllResponseHeaders()))}},r.onload=o(),a=r.onerror=r.ontimeout=o("error"),void 0!==r.onabort?r.onabort=a:r.onreadystatechange=function(){4===r.readyState&&C.setTimeout(function(){o&&a()})},o=o("abort");try{r.send(i.hasContent&&i.data||null)}catch(e){if(o)throw e}},abort:function(){o&&o()}}}),k.ajaxPrefilter(function(e){e.crossDomain&&(e.contents.script=!1)}),k.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(e){return k.globalEval(e),e}}}),k.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),k.ajaxTransport("script",function(n){var r,i;if(n.crossDomain||n.scriptAttrs)return{send:function(e,t){r=k("<script>").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var Vt,Gt=[],Yt=/(=)\?(?=&|$)|\?\?/;k.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Gt.pop()||k.expando+"_"+kt++;return this[e]=!0,e}}),k.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Yt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Yt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Yt,"$1"+r):!1!==e.jsonp&&(e.url+=(St.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||k.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?k(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Gt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((Vt=E.implementation.createHTMLDocument("").body).innerHTML="<form></form><form></form>",2===Vt.childNodes.length),k.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=D.exec(e))?[t.createElement(i[1])]:(i=we([e],t,o),o&&o.length&&k(o).remove(),k.merge([],i.childNodes)));var r,i,o},k.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1<s&&(r=mt(e.slice(s)),e=e.slice(0,s)),m(t)?(n=t,t=void 0):t&&"object"==typeof t&&(i="POST"),0<a.length&&k.ajax({url:e,type:i||"GET",dataType:"html",data:t}).done(function(e){o=arguments,a.html(r?k("<div>").append(k.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},k.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){k.fn[t]=function(e){return this.on(t,e)}}),k.expr.pseudos.animated=function(t){return k.grep(k.timers,function(e){return t===e.elem}).length},k.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=k.css(e,"position"),c=k(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=k.css(e,"top"),u=k.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,k.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):c.css(f)}},k.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){k.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===k.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===k.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=k(e).offset()).top+=k.css(e,"borderTopWidth",!0),i.left+=k.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-k.css(r,"marginTop",!0),left:t.left-i.left-k.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===k.css(e,"position"))e=e.offsetParent;return e||ie})}}),k.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;k.fn[t]=function(e){return _(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),k.each(["top","left"],function(e,n){k.cssHooks[n]=ze(y.pixelPosition,function(e,t){if(t)return t=_e(e,n),$e.test(t)?k(e).position()[n]+"px":t})}),k.each({Height:"height",Width:"width"},function(a,s){k.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){k.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return _(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?k.css(e,t,i):k.style(e,t,n,i)},s,n?e:void 0,n)}})}),k.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){k.fn[n]=function(e,t){return 0<arguments.length?this.on(n,null,e,t):this.trigger(n)}}),k.fn.extend({hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),k.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)}}),k.proxy=function(e,t){var n,r,i;if("string"==typeof t&&(n=e[t],t=e,e=n),m(e))return r=s.call(arguments,2),(i=function(){return e.apply(t||this,r.concat(s.call(arguments)))}).guid=e.guid=e.guid||k.guid++,i},k.holdReady=function(e){e?k.readyWait++:k.ready(!0)},k.isArray=Array.isArray,k.parseJSON=JSON.parse,k.nodeName=A,k.isFunction=m,k.isWindow=x,k.camelCase=V,k.type=w,k.now=Date.now,k.isNumeric=function(e){var t=k.type(e);return("number"===t||"string"===t)&&!isNaN(e-parseFloat(e))},"function"==typeof define&&define.amd&&define("jquery",[],function(){return k});var Qt=C.jQuery,Jt=C.$;return k.noConflict=function(e){return C.$===k&&(C.$=Jt),e&&C.jQuery===k&&(C.jQuery=Qt),k},e||(C.jQuery=C.$=k),k});
diff --git a/atomicfeaturespackage/docs/_build/html/_static/language_data.js b/atomicfeaturespackage/docs/_build/html/_static/language_data.js
deleted file mode 100644
index d2b4ee9..0000000
--- a/atomicfeaturespackage/docs/_build/html/_static/language_data.js
+++ /dev/null
@@ -1,297 +0,0 @@
-/*
- * language_data.js
- * ~~~~~~~~~~~~~~~~
- *
- * This script contains the language-specific data used by searchtools.js,
- * namely the list of stopwords, stemmer, scorer and splitter.
- *
- * :copyright: Copyright 2007-2020 by the Sphinx team, see AUTHORS.
- * :license: BSD, see LICENSE for details.
- *
- */
-
-var stopwords = ["a","and","are","as","at","be","but","by","for","if","in","into","is","it","near","no","not","of","on","or","such","that","the","their","then","there","these","they","this","to","was","will","with"];
-
-
-/* Non-minified version JS is _stemmer.js if file is provided */ 
-/**
- * Porter Stemmer
- */
-var Stemmer = function() {
-
-  var step2list = {
-    ational: 'ate',
-    tional: 'tion',
-    enci: 'ence',
-    anci: 'ance',
-    izer: 'ize',
-    bli: 'ble',
-    alli: 'al',
-    entli: 'ent',
-    eli: 'e',
-    ousli: 'ous',
-    ization: 'ize',
-    ation: 'ate',
-    ator: 'ate',
-    alism: 'al',
-    iveness: 'ive',
-    fulness: 'ful',
-    ousness: 'ous',
-    aliti: 'al',
-    iviti: 'ive',
-    biliti: 'ble',
-    logi: 'log'
-  };
-
-  var step3list = {
-    icate: 'ic',
-    ative: '',
-    alize: 'al',
-    iciti: 'ic',
-    ical: 'ic',
-    ful: '',
-    ness: ''
-  };
-
-  var c = "[^aeiou]";          // consonant
-  var v = "[aeiouy]";          // vowel
-  var C = c + "[^aeiouy]*";    // consonant sequence
-  var V = v + "[aeiou]*";      // vowel sequence
-
-  var mgr0 = "^(" + C + ")?" + V + C;                      // [C]VC... is m>0
-  var meq1 = "^(" + C + ")?" + V + C + "(" + V + ")?$";    // [C]VC[V] is m=1
-  var mgr1 = "^(" + C + ")?" + V + C + V + C;              // [C]VCVC... is m>1
-  var s_v   = "^(" + C + ")?" + v;                         // vowel in stem
-
-  this.stemWord = function (w) {
-    var stem;
-    var suffix;
-    var firstch;
-    var origword = w;
-
-    if (w.length < 3)
-      return w;
-
-    var re;
-    var re2;
-    var re3;
-    var re4;
-
-    firstch = w.substr(0,1);
-    if (firstch == "y")
-      w = firstch.toUpperCase() + w.substr(1);
-
-    // Step 1a
-    re = /^(.+?)(ss|i)es$/;
-    re2 = /^(.+?)([^s])s$/;
-
-    if (re.test(w))
-      w = w.replace(re,"$1$2");
-    else if (re2.test(w))
-      w = w.replace(re2,"$1$2");
-
-    // Step 1b
-    re = /^(.+?)eed$/;
-    re2 = /^(.+?)(ed|ing)$/;
-    if (re.test(w)) {
-      var fp = re.exec(w);
-      re = new RegExp(mgr0);
-      if (re.test(fp[1])) {
-        re = /.$/;
-        w = w.replace(re,"");
-      }
-    }
-    else if (re2.test(w)) {
-      var fp = re2.exec(w);
-      stem = fp[1];
-      re2 = new RegExp(s_v);
-      if (re2.test(stem)) {
-        w = stem;
-        re2 = /(at|bl|iz)$/;
-        re3 = new RegExp("([^aeiouylsz])\\1$");
-        re4 = new RegExp("^" + C + v + "[^aeiouwxy]$");
-        if (re2.test(w))
-          w = w + "e";
-        else if (re3.test(w)) {
-          re = /.$/;
-          w = w.replace(re,"");
-        }
-        else if (re4.test(w))
-          w = w + "e";
-      }
-    }
-
-    // Step 1c
-    re = /^(.+?)y$/;
-    if (re.test(w)) {
-      var fp = re.exec(w);
-      stem = fp[1];
-      re = new RegExp(s_v);
-      if (re.test(stem))
-        w = stem + "i";
-    }
-
-    // Step 2
-    re = /^(.+?)(ational|tional|enci|anci|izer|bli|alli|entli|eli|ousli|ization|ation|ator|alism|iveness|fulness|ousness|aliti|iviti|biliti|logi)$/;
-    if (re.test(w)) {
-      var fp = re.exec(w);
-      stem = fp[1];
-      suffix = fp[2];
-      re = new RegExp(mgr0);
-      if (re.test(stem))
-        w = stem + step2list[suffix];
-    }
-
-    // Step 3
-    re = /^(.+?)(icate|ative|alize|iciti|ical|ful|ness)$/;
-    if (re.test(w)) {
-      var fp = re.exec(w);
-      stem = fp[1];
-      suffix = fp[2];
-      re = new RegExp(mgr0);
-      if (re.test(stem))
-        w = stem + step3list[suffix];
-    }
-
-    // Step 4
-    re = /^(.+?)(al|ance|ence|er|ic|able|ible|ant|ement|ment|ent|ou|ism|ate|iti|ous|ive|ize)$/;
-    re2 = /^(.+?)(s|t)(ion)$/;
-    if (re.test(w)) {
-      var fp = re.exec(w);
-      stem = fp[1];
-      re = new RegExp(mgr1);
-      if (re.test(stem))
-        w = stem;
-    }
-    else if (re2.test(w)) {
-      var fp = re2.exec(w);
-      stem = fp[1] + fp[2];
-      re2 = new RegExp(mgr1);
-      if (re2.test(stem))
-        w = stem;
-    }
-
-    // Step 5
-    re = /^(.+?)e$/;
-    if (re.test(w)) {
-      var fp = re.exec(w);
-      stem = fp[1];
-      re = new RegExp(mgr1);
-      re2 = new RegExp(meq1);
-      re3 = new RegExp("^" + C + v + "[^aeiouwxy]$");
-      if (re.test(stem) || (re2.test(stem) && !(re3.test(stem))))
-        w = stem;
-    }
-    re = /ll$/;
-    re2 = new RegExp(mgr1);
-    if (re.test(w) && re2.test(w)) {
-      re = /.$/;
-      w = w.replace(re,"");
-    }
-
-    // and turn initial Y back to y
-    if (firstch == "y")
-      w = firstch.toLowerCase() + w.substr(1);
-    return w;
-  }
-}
-
-
-
-
-
-var splitChars = (function() {
-    var result = {};
-    var singles = [96, 180, 187, 191, 215, 247, 749, 885, 903, 907, 909, 930, 1014, 1648,
-         1748, 1809, 2416, 2473, 2481, 2526, 2601, 2609, 2612, 2615, 2653, 2702,
-         2706, 2729, 2737, 2740, 2857, 2865, 2868, 2910, 2928, 2948, 2961, 2971,
-         2973, 3085, 3089, 3113, 3124, 3213, 3217, 3241, 3252, 3295, 3341, 3345,
-         3369, 3506, 3516, 3633, 3715, 3721, 3736, 3744, 3748, 3750, 3756, 3761,
-         3781, 3912, 4239, 4347, 4681, 4695, 4697, 4745, 4785, 4799, 4801, 4823,
-         4881, 5760, 5901, 5997, 6313, 7405, 8024, 8026, 8028, 8030, 8117, 8125,
-         8133, 8181, 8468, 8485, 8487, 8489, 8494, 8527, 11311, 11359, 11687, 11695,
-         11703, 11711, 11719, 11727, 11735, 12448, 12539, 43010, 43014, 43019, 43587,
-         43696, 43713, 64286, 64297, 64311, 64317, 64319, 64322, 64325, 65141];
-    var i, j, start, end;
-    for (i = 0; i < singles.length; i++) {
-        result[singles[i]] = true;
-    }
-    var ranges = [[0, 47], [58, 64], [91, 94], [123, 169], [171, 177], [182, 184], [706, 709],
-         [722, 735], [741, 747], [751, 879], [888, 889], [894, 901], [1154, 1161],
-         [1318, 1328], [1367, 1368], [1370, 1376], [1416, 1487], [1515, 1519], [1523, 1568],
-         [1611, 1631], [1642, 1645], [1750, 1764], [1767, 1773], [1789, 1790], [1792, 1807],
-         [1840, 1868], [1958, 1968], [1970, 1983], [2027, 2035], [2038, 2041], [2043, 2047],
-         [2070, 2073], [2075, 2083], [2085, 2087], [2089, 2307], [2362, 2364], [2366, 2383],
-         [2385, 2391], [2402, 2405], [2419, 2424], [2432, 2436], [2445, 2446], [2449, 2450],
-         [2483, 2485], [2490, 2492], [2494, 2509], [2511, 2523], [2530, 2533], [2546, 2547],
-         [2554, 2564], [2571, 2574], [2577, 2578], [2618, 2648], [2655, 2661], [2672, 2673],
-         [2677, 2692], [2746, 2748], [2750, 2767], [2769, 2783], [2786, 2789], [2800, 2820],
-         [2829, 2830], [2833, 2834], [2874, 2876], [2878, 2907], [2914, 2917], [2930, 2946],
-         [2955, 2957], [2966, 2968], [2976, 2978], [2981, 2983], [2987, 2989], [3002, 3023],
-         [3025, 3045], [3059, 3076], [3130, 3132], [3134, 3159], [3162, 3167], [3170, 3173],
-         [3184, 3191], [3199, 3204], [3258, 3260], [3262, 3293], [3298, 3301], [3312, 3332],
-         [3386, 3388], [3390, 3423], [3426, 3429], [3446, 3449], [3456, 3460], [3479, 3481],
-         [3518, 3519], [3527, 3584], [3636, 3647], [3655, 3663], [3674, 3712], [3717, 3718],
-         [3723, 3724], [3726, 3731], [3752, 3753], [3764, 3772], [3774, 3775], [3783, 3791],
-         [3802, 3803], [3806, 3839], [3841, 3871], [3892, 3903], [3949, 3975], [3980, 4095],
-         [4139, 4158], [4170, 4175], [4182, 4185], [4190, 4192], [4194, 4196], [4199, 4205],
-         [4209, 4212], [4226, 4237], [4250, 4255], [4294, 4303], [4349, 4351], [4686, 4687],
-         [4702, 4703], [4750, 4751], [4790, 4791], [4806, 4807], [4886, 4887], [4955, 4968],
-         [4989, 4991], [5008, 5023], [5109, 5120], [5741, 5742], [5787, 5791], [5867, 5869],
-         [5873, 5887], [5906, 5919], [5938, 5951], [5970, 5983], [6001, 6015], [6068, 6102],
-         [6104, 6107], [6109, 6111], [6122, 6127], [6138, 6159], [6170, 6175], [6264, 6271],
-         [6315, 6319], [6390, 6399], [6429, 6469], [6510, 6511], [6517, 6527], [6572, 6592],
-         [6600, 6607], [6619, 6655], [6679, 6687], [6741, 6783], [6794, 6799], [6810, 6822],
-         [6824, 6916], [6964, 6980], [6988, 6991], [7002, 7042], [7073, 7085], [7098, 7167],
-         [7204, 7231], [7242, 7244], [7294, 7400], [7410, 7423], [7616, 7679], [7958, 7959],
-         [7966, 7967], [8006, 8007], [8014, 8015], [8062, 8063], [8127, 8129], [8141, 8143],
-         [8148, 8149], [8156, 8159], [8173, 8177], [8189, 8303], [8306, 8307], [8314, 8318],
-         [8330, 8335], [8341, 8449], [8451, 8454], [8456, 8457], [8470, 8472], [8478, 8483],
-         [8506, 8507], [8512, 8516], [8522, 8525], [8586, 9311], [9372, 9449], [9472, 10101],
-         [10132, 11263], [11493, 11498], [11503, 11516], [11518, 11519], [11558, 11567],
-         [11622, 11630], [11632, 11647], [11671, 11679], [11743, 11822], [11824, 12292],
-         [12296, 12320], [12330, 12336], [12342, 12343], [12349, 12352], [12439, 12444],
-         [12544, 12548], [12590, 12592], [12687, 12689], [12694, 12703], [12728, 12783],
-         [12800, 12831], [12842, 12880], [12896, 12927], [12938, 12976], [12992, 13311],
-         [19894, 19967], [40908, 40959], [42125, 42191], [42238, 42239], [42509, 42511],
-         [42540, 42559], [42592, 42593], [42607, 42622], [42648, 42655], [42736, 42774],
-         [42784, 42785], [42889, 42890], [42893, 43002], [43043, 43055], [43062, 43071],
-         [43124, 43137], [43188, 43215], [43226, 43249], [43256, 43258], [43260, 43263],
-         [43302, 43311], [43335, 43359], [43389, 43395], [43443, 43470], [43482, 43519],
-         [43561, 43583], [43596, 43599], [43610, 43615], [43639, 43641], [43643, 43647],
-         [43698, 43700], [43703, 43704], [43710, 43711], [43715, 43738], [43742, 43967],
-         [44003, 44015], [44026, 44031], [55204, 55215], [55239, 55242], [55292, 55295],
-         [57344, 63743], [64046, 64047], [64110, 64111], [64218, 64255], [64263, 64274],
-         [64280, 64284], [64434, 64466], [64830, 64847], [64912, 64913], [64968, 65007],
-         [65020, 65135], [65277, 65295], [65306, 65312], [65339, 65344], [65371, 65381],
-         [65471, 65473], [65480, 65481], [65488, 65489], [65496, 65497]];
-    for (i = 0; i < ranges.length; i++) {
-        start = ranges[i][0];
-        end = ranges[i][1];
-        for (j = start; j <= end; j++) {
-            result[j] = true;
-        }
-    }
-    return result;
-})();
-
-function splitQuery(query) {
-    var result = [];
-    var start = -1;
-    for (var i = 0; i < query.length; i++) {
-        if (splitChars[query.charCodeAt(i)]) {
-            if (start !== -1) {
-                result.push(query.slice(start, i));
-                start = -1;
-            }
-        } else if (start === -1) {
-            start = i;
-        }
-    }
-    if (start !== -1) {
-        result.push(query.slice(start));
-    }
-    return result;
-}
-
-
diff --git a/atomicfeaturespackage/docs/_build/html/_static/minus.png b/atomicfeaturespackage/docs/_build/html/_static/minus.png
deleted file mode 100644
index d96755fdaf8bb2214971e0db9c1fd3077d7c419d..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 90
zcmeAS@N?(olHy`uVBq!ia0y~yVBiK}4h9AWhMwaZzZe)86g^!WLn;`PEt(m4((N1$
qT5J54Rote=BCz_OtVqKR4hDwUH)%$B(trFwnmk?oT-G@yGywom%@%0@

diff --git a/atomicfeaturespackage/docs/_build/html/_static/plus.png b/atomicfeaturespackage/docs/_build/html/_static/plus.png
deleted file mode 100644
index 7107cec93a979b9a5f64843235a16651d563ce2d..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 90
zcmeAS@N?(olHy`uVBq!ia0y~yVBiK}4h9AWhMwaZzZe)86g^!WLn;`PEt(m4((N1$
pT5Cj47Kj#R>InVM$K{a2!oZ-bm^kJ02L~3ACQnyCmvv4FO#meY6wUwu

diff --git a/atomicfeaturespackage/docs/_build/html/_static/pygments.css b/atomicfeaturespackage/docs/_build/html/_static/pygments.css
deleted file mode 100644
index 21d9178..0000000
--- a/atomicfeaturespackage/docs/_build/html/_static/pygments.css
+++ /dev/null
@@ -1,69 +0,0 @@
-.highlight .hll { background-color: #ffffcc }
-.highlight  { background: #f0f0f0; }
-.highlight .c { color: #60a0b0; font-style: italic } /* Comment */
-.highlight .err { border: 1px solid #FF0000 } /* Error */
-.highlight .k { color: #007020; font-weight: bold } /* Keyword */
-.highlight .o { color: #666666 } /* Operator */
-.highlight .ch { color: #60a0b0; font-style: italic } /* Comment.Hashbang */
-.highlight .cm { color: #60a0b0; font-style: italic } /* Comment.Multiline */
-.highlight .cp { color: #007020 } /* Comment.Preproc */
-.highlight .cpf { color: #60a0b0; font-style: italic } /* Comment.PreprocFile */
-.highlight .c1 { color: #60a0b0; font-style: italic } /* Comment.Single */
-.highlight .cs { color: #60a0b0; background-color: #fff0f0 } /* Comment.Special */
-.highlight .gd { color: #A00000 } /* Generic.Deleted */
-.highlight .ge { font-style: italic } /* Generic.Emph */
-.highlight .gr { color: #FF0000 } /* Generic.Error */
-.highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */
-.highlight .gi { color: #00A000 } /* Generic.Inserted */
-.highlight .go { color: #888888 } /* Generic.Output */
-.highlight .gp { color: #c65d09; font-weight: bold } /* Generic.Prompt */
-.highlight .gs { font-weight: bold } /* Generic.Strong */
-.highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
-.highlight .gt { color: #0044DD } /* Generic.Traceback */
-.highlight .kc { color: #007020; font-weight: bold } /* Keyword.Constant */
-.highlight .kd { color: #007020; font-weight: bold } /* Keyword.Declaration */
-.highlight .kn { color: #007020; font-weight: bold } /* Keyword.Namespace */
-.highlight .kp { color: #007020 } /* Keyword.Pseudo */
-.highlight .kr { color: #007020; font-weight: bold } /* Keyword.Reserved */
-.highlight .kt { color: #902000 } /* Keyword.Type */
-.highlight .m { color: #40a070 } /* Literal.Number */
-.highlight .s { color: #4070a0 } /* Literal.String */
-.highlight .na { color: #4070a0 } /* Name.Attribute */
-.highlight .nb { color: #007020 } /* Name.Builtin */
-.highlight .nc { color: #0e84b5; font-weight: bold } /* Name.Class */
-.highlight .no { color: #60add5 } /* Name.Constant */
-.highlight .nd { color: #555555; font-weight: bold } /* Name.Decorator */
-.highlight .ni { color: #d55537; font-weight: bold } /* Name.Entity */
-.highlight .ne { color: #007020 } /* Name.Exception */
-.highlight .nf { color: #06287e } /* Name.Function */
-.highlight .nl { color: #002070; font-weight: bold } /* Name.Label */
-.highlight .nn { color: #0e84b5; font-weight: bold } /* Name.Namespace */
-.highlight .nt { color: #062873; font-weight: bold } /* Name.Tag */
-.highlight .nv { color: #bb60d5 } /* Name.Variable */
-.highlight .ow { color: #007020; font-weight: bold } /* Operator.Word */
-.highlight .w { color: #bbbbbb } /* Text.Whitespace */
-.highlight .mb { color: #40a070 } /* Literal.Number.Bin */
-.highlight .mf { color: #40a070 } /* Literal.Number.Float */
-.highlight .mh { color: #40a070 } /* Literal.Number.Hex */
-.highlight .mi { color: #40a070 } /* Literal.Number.Integer */
-.highlight .mo { color: #40a070 } /* Literal.Number.Oct */
-.highlight .sa { color: #4070a0 } /* Literal.String.Affix */
-.highlight .sb { color: #4070a0 } /* Literal.String.Backtick */
-.highlight .sc { color: #4070a0 } /* Literal.String.Char */
-.highlight .dl { color: #4070a0 } /* Literal.String.Delimiter */
-.highlight .sd { color: #4070a0; font-style: italic } /* Literal.String.Doc */
-.highlight .s2 { color: #4070a0 } /* Literal.String.Double */
-.highlight .se { color: #4070a0; font-weight: bold } /* Literal.String.Escape */
-.highlight .sh { color: #4070a0 } /* Literal.String.Heredoc */
-.highlight .si { color: #70a0d0; font-style: italic } /* Literal.String.Interpol */
-.highlight .sx { color: #c65d09 } /* Literal.String.Other */
-.highlight .sr { color: #235388 } /* Literal.String.Regex */
-.highlight .s1 { color: #4070a0 } /* Literal.String.Single */
-.highlight .ss { color: #517918 } /* Literal.String.Symbol */
-.highlight .bp { color: #007020 } /* Name.Builtin.Pseudo */
-.highlight .fm { color: #06287e } /* Name.Function.Magic */
-.highlight .vc { color: #bb60d5 } /* Name.Variable.Class */
-.highlight .vg { color: #bb60d5 } /* Name.Variable.Global */
-.highlight .vi { color: #bb60d5 } /* Name.Variable.Instance */
-.highlight .vm { color: #bb60d5 } /* Name.Variable.Magic */
-.highlight .il { color: #40a070 } /* Literal.Number.Integer.Long */
\ No newline at end of file
diff --git a/atomicfeaturespackage/docs/_build/html/_static/searchtools.js b/atomicfeaturespackage/docs/_build/html/_static/searchtools.js
deleted file mode 100644
index d11b33a..0000000
--- a/atomicfeaturespackage/docs/_build/html/_static/searchtools.js
+++ /dev/null
@@ -1,512 +0,0 @@
-/*
- * searchtools.js
- * ~~~~~~~~~~~~~~~~
- *
- * Sphinx JavaScript utilities for the full-text search.
- *
- * :copyright: Copyright 2007-2020 by the Sphinx team, see AUTHORS.
- * :license: BSD, see LICENSE for details.
- *
- */
-
-if (!Scorer) {
-  /**
-   * Simple result scoring code.
-   */
-  var Scorer = {
-    // Implement the following function to further tweak the score for each result
-    // The function takes a result array [filename, title, anchor, descr, score]
-    // and returns the new score.
-    /*
-    score: function(result) {
-      return result[4];
-    },
-    */
-
-    // query matches the full name of an object
-    objNameMatch: 11,
-    // or matches in the last dotted part of the object name
-    objPartialMatch: 6,
-    // Additive scores depending on the priority of the object
-    objPrio: {0:  15,   // used to be importantResults
-              1:  5,   // used to be objectResults
-              2: -5},  // used to be unimportantResults
-    //  Used when the priority is not in the mapping.
-    objPrioDefault: 0,
-
-    // query found in title
-    title: 15,
-    partialTitle: 7,
-    // query found in terms
-    term: 5,
-    partialTerm: 2
-  };
-}
-
-if (!splitQuery) {
-  function splitQuery(query) {
-    return query.split(/\s+/);
-  }
-}
-
-/**
- * Search Module
- */
-var Search = {
-
-  _index : null,
-  _queued_query : null,
-  _pulse_status : -1,
-
-  htmlToText : function(htmlString) {
-      var htmlElement = document.createElement('span');
-      htmlElement.innerHTML = htmlString;
-      $(htmlElement).find('.headerlink').remove();
-      docContent = $(htmlElement).find('[role=main]')[0];
-      if(docContent === undefined) {
-          console.warn("Content block not found. Sphinx search tries to obtain it " +
-                       "via '[role=main]'. Could you check your theme or template.");
-          return "";
-      }
-      return docContent.textContent || docContent.innerText;
-  },
-
-  init : function() {
-      var params = $.getQueryParameters();
-      if (params.q) {
-          var query = params.q[0];
-          $('input[name="q"]')[0].value = query;
-          this.performSearch(query);
-      }
-  },
-
-  loadIndex : function(url) {
-    $.ajax({type: "GET", url: url, data: null,
-            dataType: "script", cache: true,
-            complete: function(jqxhr, textstatus) {
-              if (textstatus != "success") {
-                document.getElementById("searchindexloader").src = url;
-              }
-            }});
-  },
-
-  setIndex : function(index) {
-    var q;
-    this._index = index;
-    if ((q = this._queued_query) !== null) {
-      this._queued_query = null;
-      Search.query(q);
-    }
-  },
-
-  hasIndex : function() {
-      return this._index !== null;
-  },
-
-  deferQuery : function(query) {
-      this._queued_query = query;
-  },
-
-  stopPulse : function() {
-      this._pulse_status = 0;
-  },
-
-  startPulse : function() {
-    if (this._pulse_status >= 0)
-        return;
-    function pulse() {
-      var i;
-      Search._pulse_status = (Search._pulse_status + 1) % 4;
-      var dotString = '';
-      for (i = 0; i < Search._pulse_status; i++)
-        dotString += '.';
-      Search.dots.text(dotString);
-      if (Search._pulse_status > -1)
-        window.setTimeout(pulse, 500);
-    }
-    pulse();
-  },
-
-  /**
-   * perform a search for something (or wait until index is loaded)
-   */
-  performSearch : function(query) {
-    // create the required interface elements
-    this.out = $('#search-results');
-    this.title = $('<h2>' + _('Searching') + '</h2>').appendTo(this.out);
-    this.dots = $('<span></span>').appendTo(this.title);
-    this.status = $('<p class="search-summary">&nbsp;</p>').appendTo(this.out);
-    this.output = $('<ul class="search"/>').appendTo(this.out);
-
-    $('#search-progress').text(_('Preparing search...'));
-    this.startPulse();
-
-    // index already loaded, the browser was quick!
-    if (this.hasIndex())
-      this.query(query);
-    else
-      this.deferQuery(query);
-  },
-
-  /**
-   * execute search (requires search index to be loaded)
-   */
-  query : function(query) {
-    var i;
-
-    // stem the searchterms and add them to the correct list
-    var stemmer = new Stemmer();
-    var searchterms = [];
-    var excluded = [];
-    var hlterms = [];
-    var tmp = splitQuery(query);
-    var objectterms = [];
-    for (i = 0; i < tmp.length; i++) {
-      if (tmp[i] !== "") {
-          objectterms.push(tmp[i].toLowerCase());
-      }
-
-      if ($u.indexOf(stopwords, tmp[i].toLowerCase()) != -1 || tmp[i].match(/^\d+$/) ||
-          tmp[i] === "") {
-        // skip this "word"
-        continue;
-      }
-      // stem the word
-      var word = stemmer.stemWord(tmp[i].toLowerCase());
-      // prevent stemmer from cutting word smaller than two chars
-      if(word.length < 3 && tmp[i].length >= 3) {
-        word = tmp[i];
-      }
-      var toAppend;
-      // select the correct list
-      if (word[0] == '-') {
-        toAppend = excluded;
-        word = word.substr(1);
-      }
-      else {
-        toAppend = searchterms;
-        hlterms.push(tmp[i].toLowerCase());
-      }
-      // only add if not already in the list
-      if (!$u.contains(toAppend, word))
-        toAppend.push(word);
-    }
-    var highlightstring = '?highlight=' + $.urlencode(hlterms.join(" "));
-
-    // console.debug('SEARCH: searching for:');
-    // console.info('required: ', searchterms);
-    // console.info('excluded: ', excluded);
-
-    // prepare search
-    var terms = this._index.terms;
-    var titleterms = this._index.titleterms;
-
-    // array of [filename, title, anchor, descr, score]
-    var results = [];
-    $('#search-progress').empty();
-
-    // lookup as object
-    for (i = 0; i < objectterms.length; i++) {
-      var others = [].concat(objectterms.slice(0, i),
-                             objectterms.slice(i+1, objectterms.length));
-      results = results.concat(this.performObjectSearch(objectterms[i], others));
-    }
-
-    // lookup as search terms in fulltext
-    results = results.concat(this.performTermsSearch(searchterms, excluded, terms, titleterms));
-
-    // let the scorer override scores with a custom scoring function
-    if (Scorer.score) {
-      for (i = 0; i < results.length; i++)
-        results[i][4] = Scorer.score(results[i]);
-    }
-
-    // now sort the results by score (in opposite order of appearance, since the
-    // display function below uses pop() to retrieve items) and then
-    // alphabetically
-    results.sort(function(a, b) {
-      var left = a[4];
-      var right = b[4];
-      if (left > right) {
-        return 1;
-      } else if (left < right) {
-        return -1;
-      } else {
-        // same score: sort alphabetically
-        left = a[1].toLowerCase();
-        right = b[1].toLowerCase();
-        return (left > right) ? -1 : ((left < right) ? 1 : 0);
-      }
-    });
-
-    // for debugging
-    //Search.lastresults = results.slice();  // a copy
-    //console.info('search results:', Search.lastresults);
-
-    // print the results
-    var resultCount = results.length;
-    function displayNextItem() {
-      // results left, load the summary and display it
-      if (results.length) {
-        var item = results.pop();
-        var listItem = $('<li style="display:none"></li>');
-        var requestUrl = "";
-        if (DOCUMENTATION_OPTIONS.BUILDER === 'dirhtml') {
-          // dirhtml builder
-          var dirname = item[0] + '/';
-          if (dirname.match(/\/index\/$/)) {
-            dirname = dirname.substring(0, dirname.length-6);
-          } else if (dirname == 'index/') {
-            dirname = '';
-          }
-          requestUrl = DOCUMENTATION_OPTIONS.URL_ROOT + dirname;
-
-        } else {
-          // normal html builders
-          requestUrl = DOCUMENTATION_OPTIONS.URL_ROOT + item[0] + DOCUMENTATION_OPTIONS.FILE_SUFFIX;
-        }
-        listItem.append($('<a/>').attr('href',
-            requestUrl +
-            highlightstring + item[2]).html(item[1]));
-        if (item[3]) {
-          listItem.append($('<span> (' + item[3] + ')</span>'));
-          Search.output.append(listItem);
-          listItem.slideDown(5, function() {
-            displayNextItem();
-          });
-        } else if (DOCUMENTATION_OPTIONS.HAS_SOURCE) {
-          $.ajax({url: requestUrl,
-                  dataType: "text",
-                  complete: function(jqxhr, textstatus) {
-                    var data = jqxhr.responseText;
-                    if (data !== '' && data !== undefined) {
-                      listItem.append(Search.makeSearchSummary(data, searchterms, hlterms));
-                    }
-                    Search.output.append(listItem);
-                    listItem.slideDown(5, function() {
-                      displayNextItem();
-                    });
-                  }});
-        } else {
-          // no source available, just display title
-          Search.output.append(listItem);
-          listItem.slideDown(5, function() {
-            displayNextItem();
-          });
-        }
-      }
-      // search finished, update title and status message
-      else {
-        Search.stopPulse();
-        Search.title.text(_('Search Results'));
-        if (!resultCount)
-          Search.status.text(_('Your search did not match any documents. Please make sure that all words are spelled correctly and that you\'ve selected enough categories.'));
-        else
-            Search.status.text(_('Search finished, found %s page(s) matching the search query.').replace('%s', resultCount));
-        Search.status.fadeIn(500);
-      }
-    }
-    displayNextItem();
-  },
-
-  /**
-   * search for object names
-   */
-  performObjectSearch : function(object, otherterms) {
-    var filenames = this._index.filenames;
-    var docnames = this._index.docnames;
-    var objects = this._index.objects;
-    var objnames = this._index.objnames;
-    var titles = this._index.titles;
-
-    var i;
-    var results = [];
-
-    for (var prefix in objects) {
-      for (var name in objects[prefix]) {
-        var fullname = (prefix ? prefix + '.' : '') + name;
-        var fullnameLower = fullname.toLowerCase()
-        if (fullnameLower.indexOf(object) > -1) {
-          var score = 0;
-          var parts = fullnameLower.split('.');
-          // check for different match types: exact matches of full name or
-          // "last name" (i.e. last dotted part)
-          if (fullnameLower == object || parts[parts.length - 1] == object) {
-            score += Scorer.objNameMatch;
-          // matches in last name
-          } else if (parts[parts.length - 1].indexOf(object) > -1) {
-            score += Scorer.objPartialMatch;
-          }
-          var match = objects[prefix][name];
-          var objname = objnames[match[1]][2];
-          var title = titles[match[0]];
-          // If more than one term searched for, we require other words to be
-          // found in the name/title/description
-          if (otherterms.length > 0) {
-            var haystack = (prefix + ' ' + name + ' ' +
-                            objname + ' ' + title).toLowerCase();
-            var allfound = true;
-            for (i = 0; i < otherterms.length; i++) {
-              if (haystack.indexOf(otherterms[i]) == -1) {
-                allfound = false;
-                break;
-              }
-            }
-            if (!allfound) {
-              continue;
-            }
-          }
-          var descr = objname + _(', in ') + title;
-
-          var anchor = match[3];
-          if (anchor === '')
-            anchor = fullname;
-          else if (anchor == '-')
-            anchor = objnames[match[1]][1] + '-' + fullname;
-          // add custom score for some objects according to scorer
-          if (Scorer.objPrio.hasOwnProperty(match[2])) {
-            score += Scorer.objPrio[match[2]];
-          } else {
-            score += Scorer.objPrioDefault;
-          }
-          results.push([docnames[match[0]], fullname, '#'+anchor, descr, score, filenames[match[0]]]);
-        }
-      }
-    }
-
-    return results;
-  },
-
-  /**
-   * search for full-text terms in the index
-   */
-  performTermsSearch : function(searchterms, excluded, terms, titleterms) {
-    var docnames = this._index.docnames;
-    var filenames = this._index.filenames;
-    var titles = this._index.titles;
-
-    var i, j, file;
-    var fileMap = {};
-    var scoreMap = {};
-    var results = [];
-
-    // perform the search on the required terms
-    for (i = 0; i < searchterms.length; i++) {
-      var word = searchterms[i];
-      var files = [];
-      var _o = [
-        {files: terms[word], score: Scorer.term},
-        {files: titleterms[word], score: Scorer.title}
-      ];
-      // add support for partial matches
-      if (word.length > 2) {
-        for (var w in terms) {
-          if (w.match(word) && !terms[word]) {
-            _o.push({files: terms[w], score: Scorer.partialTerm})
-          }
-        }
-        for (var w in titleterms) {
-          if (w.match(word) && !titleterms[word]) {
-              _o.push({files: titleterms[w], score: Scorer.partialTitle})
-          }
-        }
-      }
-
-      // no match but word was a required one
-      if ($u.every(_o, function(o){return o.files === undefined;})) {
-        break;
-      }
-      // found search word in contents
-      $u.each(_o, function(o) {
-        var _files = o.files;
-        if (_files === undefined)
-          return
-
-        if (_files.length === undefined)
-          _files = [_files];
-        files = files.concat(_files);
-
-        // set score for the word in each file to Scorer.term
-        for (j = 0; j < _files.length; j++) {
-          file = _files[j];
-          if (!(file in scoreMap))
-            scoreMap[file] = {};
-          scoreMap[file][word] = o.score;
-        }
-      });
-
-      // create the mapping
-      for (j = 0; j < files.length; j++) {
-        file = files[j];
-        if (file in fileMap && fileMap[file].indexOf(word) === -1)
-          fileMap[file].push(word);
-        else
-          fileMap[file] = [word];
-      }
-    }
-
-    // now check if the files don't contain excluded terms
-    for (file in fileMap) {
-      var valid = true;
-
-      // check if all requirements are matched
-      var filteredTermCount = // as search terms with length < 3 are discarded: ignore
-        searchterms.filter(function(term){return term.length > 2}).length
-      if (
-        fileMap[file].length != searchterms.length &&
-        fileMap[file].length != filteredTermCount
-      ) continue;
-
-      // ensure that none of the excluded terms is in the search result
-      for (i = 0; i < excluded.length; i++) {
-        if (terms[excluded[i]] == file ||
-            titleterms[excluded[i]] == file ||
-            $u.contains(terms[excluded[i]] || [], file) ||
-            $u.contains(titleterms[excluded[i]] || [], file)) {
-          valid = false;
-          break;
-        }
-      }
-
-      // if we have still a valid result we can add it to the result list
-      if (valid) {
-        // select one (max) score for the file.
-        // for better ranking, we should calculate ranking by using words statistics like basic tf-idf...
-        var score = $u.max($u.map(fileMap[file], function(w){return scoreMap[file][w]}));
-        results.push([docnames[file], titles[file], '', null, score, filenames[file]]);
-      }
-    }
-    return results;
-  },
-
-  /**
-   * helper function to return a node containing the
-   * search summary for a given text. keywords is a list
-   * of stemmed words, hlwords is the list of normal, unstemmed
-   * words. the first one is used to find the occurrence, the
-   * latter for highlighting it.
-   */
-  makeSearchSummary : function(htmlText, keywords, hlwords) {
-    var text = Search.htmlToText(htmlText);
-    var textLower = text.toLowerCase();
-    var start = 0;
-    $.each(keywords, function() {
-      var i = textLower.indexOf(this.toLowerCase());
-      if (i > -1)
-        start = i;
-    });
-    start = Math.max(start - 120, 0);
-    var excerpt = ((start > 0) ? '...' : '') +
-      $.trim(text.substr(start, 240)) +
-      ((start + 240 - text.length) ? '...' : '');
-    var rv = $('<div class="context"></div>').text(excerpt);
-    $.each(hlwords, function() {
-      rv = rv.highlightText(this, 'highlighted');
-    });
-    return rv;
-  }
-};
-
-$(document).ready(function() {
-  Search.init();
-});
diff --git a/atomicfeaturespackage/docs/_build/html/_static/underscore-1.3.1.js b/atomicfeaturespackage/docs/_build/html/_static/underscore-1.3.1.js
deleted file mode 100644
index 208d4cd..0000000
--- a/atomicfeaturespackage/docs/_build/html/_static/underscore-1.3.1.js
+++ /dev/null
@@ -1,999 +0,0 @@
-//     Underscore.js 1.3.1
-//     (c) 2009-2012 Jeremy Ashkenas, DocumentCloud Inc.
-//     Underscore is freely distributable under the MIT license.
-//     Portions of Underscore are inspired or borrowed from Prototype,
-//     Oliver Steele's Functional, and John Resig's Micro-Templating.
-//     For all details and documentation:
-//     http://documentcloud.github.com/underscore
-
-(function() {
-
-  // Baseline setup
-  // --------------
-
-  // Establish the root object, `window` in the browser, or `global` on the server.
-  var root = this;
-
-  // Save the previous value of the `_` variable.
-  var previousUnderscore = root._;
-
-  // Establish the object that gets returned to break out of a loop iteration.
-  var breaker = {};
-
-  // Save bytes in the minified (but not gzipped) version:
-  var ArrayProto = Array.prototype, ObjProto = Object.prototype, FuncProto = Function.prototype;
-
-  // Create quick reference variables for speed access to core prototypes.
-  var slice            = ArrayProto.slice,
-      unshift          = ArrayProto.unshift,
-      toString         = ObjProto.toString,
-      hasOwnProperty   = ObjProto.hasOwnProperty;
-
-  // All **ECMAScript 5** native function implementations that we hope to use
-  // are declared here.
-  var
-    nativeForEach      = ArrayProto.forEach,
-    nativeMap          = ArrayProto.map,
-    nativeReduce       = ArrayProto.reduce,
-    nativeReduceRight  = ArrayProto.reduceRight,
-    nativeFilter       = ArrayProto.filter,
-    nativeEvery        = ArrayProto.every,
-    nativeSome         = ArrayProto.some,
-    nativeIndexOf      = ArrayProto.indexOf,
-    nativeLastIndexOf  = ArrayProto.lastIndexOf,
-    nativeIsArray      = Array.isArray,
-    nativeKeys         = Object.keys,
-    nativeBind         = FuncProto.bind;
-
-  // Create a safe reference to the Underscore object for use below.
-  var _ = function(obj) { return new wrapper(obj); };
-
-  // Export the Underscore object for **Node.js**, with
-  // backwards-compatibility for the old `require()` API. If we're in
-  // the browser, add `_` as a global object via a string identifier,
-  // for Closure Compiler "advanced" mode.
-  if (typeof exports !== 'undefined') {
-    if (typeof module !== 'undefined' && module.exports) {
-      exports = module.exports = _;
-    }
-    exports._ = _;
-  } else {
-    root['_'] = _;
-  }
-
-  // Current version.
-  _.VERSION = '1.3.1';
-
-  // Collection Functions
-  // --------------------
-
-  // The cornerstone, an `each` implementation, aka `forEach`.
-  // Handles objects with the built-in `forEach`, arrays, and raw objects.
-  // Delegates to **ECMAScript 5**'s native `forEach` if available.
-  var each = _.each = _.forEach = function(obj, iterator, context) {
-    if (obj == null) return;
-    if (nativeForEach && obj.forEach === nativeForEach) {
-      obj.forEach(iterator, context);
-    } else if (obj.length === +obj.length) {
-      for (var i = 0, l = obj.length; i < l; i++) {
-        if (i in obj && iterator.call(context, obj[i], i, obj) === breaker) return;
-      }
-    } else {
-      for (var key in obj) {
-        if (_.has(obj, key)) {
-          if (iterator.call(context, obj[key], key, obj) === breaker) return;
-        }
-      }
-    }
-  };
-
-  // Return the results of applying the iterator to each element.
-  // Delegates to **ECMAScript 5**'s native `map` if available.
-  _.map = _.collect = function(obj, iterator, context) {
-    var results = [];
-    if (obj == null) return results;
-    if (nativeMap && obj.map === nativeMap) return obj.map(iterator, context);
-    each(obj, function(value, index, list) {
-      results[results.length] = iterator.call(context, value, index, list);
-    });
-    if (obj.length === +obj.length) results.length = obj.length;
-    return results;
-  };
-
-  // **Reduce** builds up a single result from a list of values, aka `inject`,
-  // or `foldl`. Delegates to **ECMAScript 5**'s native `reduce` if available.
-  _.reduce = _.foldl = _.inject = function(obj, iterator, memo, context) {
-    var initial = arguments.length > 2;
-    if (obj == null) obj = [];
-    if (nativeReduce && obj.reduce === nativeReduce) {
-      if (context) iterator = _.bind(iterator, context);
-      return initial ? obj.reduce(iterator, memo) : obj.reduce(iterator);
-    }
-    each(obj, function(value, index, list) {
-      if (!initial) {
-        memo = value;
-        initial = true;
-      } else {
-        memo = iterator.call(context, memo, value, index, list);
-      }
-    });
-    if (!initial) throw new TypeError('Reduce of empty array with no initial value');
-    return memo;
-  };
-
-  // The right-associative version of reduce, also known as `foldr`.
-  // Delegates to **ECMAScript 5**'s native `reduceRight` if available.
-  _.reduceRight = _.foldr = function(obj, iterator, memo, context) {
-    var initial = arguments.length > 2;
-    if (obj == null) obj = [];
-    if (nativeReduceRight && obj.reduceRight === nativeReduceRight) {
-      if (context) iterator = _.bind(iterator, context);
-      return initial ? obj.reduceRight(iterator, memo) : obj.reduceRight(iterator);
-    }
-    var reversed = _.toArray(obj).reverse();
-    if (context && !initial) iterator = _.bind(iterator, context);
-    return initial ? _.reduce(reversed, iterator, memo, context) : _.reduce(reversed, iterator);
-  };
-
-  // Return the first value which passes a truth test. Aliased as `detect`.
-  _.find = _.detect = function(obj, iterator, context) {
-    var result;
-    any(obj, function(value, index, list) {
-      if (iterator.call(context, value, index, list)) {
-        result = value;
-        return true;
-      }
-    });
-    return result;
-  };
-
-  // Return all the elements that pass a truth test.
-  // Delegates to **ECMAScript 5**'s native `filter` if available.
-  // Aliased as `select`.
-  _.filter = _.select = function(obj, iterator, context) {
-    var results = [];
-    if (obj == null) return results;
-    if (nativeFilter && obj.filter === nativeFilter) return obj.filter(iterator, context);
-    each(obj, function(value, index, list) {
-      if (iterator.call(context, value, index, list)) results[results.length] = value;
-    });
-    return results;
-  };
-
-  // Return all the elements for which a truth test fails.
-  _.reject = function(obj, iterator, context) {
-    var results = [];
-    if (obj == null) return results;
-    each(obj, function(value, index, list) {
-      if (!iterator.call(context, value, index, list)) results[results.length] = value;
-    });
-    return results;
-  };
-
-  // Determine whether all of the elements match a truth test.
-  // Delegates to **ECMAScript 5**'s native `every` if available.
-  // Aliased as `all`.
-  _.every = _.all = function(obj, iterator, context) {
-    var result = true;
-    if (obj == null) return result;
-    if (nativeEvery && obj.every === nativeEvery) return obj.every(iterator, context);
-    each(obj, function(value, index, list) {
-      if (!(result = result && iterator.call(context, value, index, list))) return breaker;
-    });
-    return result;
-  };
-
-  // Determine if at least one element in the object matches a truth test.
-  // Delegates to **ECMAScript 5**'s native `some` if available.
-  // Aliased as `any`.
-  var any = _.some = _.any = function(obj, iterator, context) {
-    iterator || (iterator = _.identity);
-    var result = false;
-    if (obj == null) return result;
-    if (nativeSome && obj.some === nativeSome) return obj.some(iterator, context);
-    each(obj, function(value, index, list) {
-      if (result || (result = iterator.call(context, value, index, list))) return breaker;
-    });
-    return !!result;
-  };
-
-  // Determine if a given value is included in the array or object using `===`.
-  // Aliased as `contains`.
-  _.include = _.contains = function(obj, target) {
-    var found = false;
-    if (obj == null) return found;
-    if (nativeIndexOf && obj.indexOf === nativeIndexOf) return obj.indexOf(target) != -1;
-    found = any(obj, function(value) {
-      return value === target;
-    });
-    return found;
-  };
-
-  // Invoke a method (with arguments) on every item in a collection.
-  _.invoke = function(obj, method) {
-    var args = slice.call(arguments, 2);
-    return _.map(obj, function(value) {
-      return (_.isFunction(method) ? method || value : value[method]).apply(value, args);
-    });
-  };
-
-  // Convenience version of a common use case of `map`: fetching a property.
-  _.pluck = function(obj, key) {
-    return _.map(obj, function(value){ return value[key]; });
-  };
-
-  // Return the maximum element or (element-based computation).
-  _.max = function(obj, iterator, context) {
-    if (!iterator && _.isArray(obj)) return Math.max.apply(Math, obj);
-    if (!iterator && _.isEmpty(obj)) return -Infinity;
-    var result = {computed : -Infinity};
-    each(obj, function(value, index, list) {
-      var computed = iterator ? iterator.call(context, value, index, list) : value;
-      computed >= result.computed && (result = {value : value, computed : computed});
-    });
-    return result.value;
-  };
-
-  // Return the minimum element (or element-based computation).
-  _.min = function(obj, iterator, context) {
-    if (!iterator && _.isArray(obj)) return Math.min.apply(Math, obj);
-    if (!iterator && _.isEmpty(obj)) return Infinity;
-    var result = {computed : Infinity};
-    each(obj, function(value, index, list) {
-      var computed = iterator ? iterator.call(context, value, index, list) : value;
-      computed < result.computed && (result = {value : value, computed : computed});
-    });
-    return result.value;
-  };
-
-  // Shuffle an array.
-  _.shuffle = function(obj) {
-    var shuffled = [], rand;
-    each(obj, function(value, index, list) {
-      if (index == 0) {
-        shuffled[0] = value;
-      } else {
-        rand = Math.floor(Math.random() * (index + 1));
-        shuffled[index] = shuffled[rand];
-        shuffled[rand] = value;
-      }
-    });
-    return shuffled;
-  };
-
-  // Sort the object's values by a criterion produced by an iterator.
-  _.sortBy = function(obj, iterator, context) {
-    return _.pluck(_.map(obj, function(value, index, list) {
-      return {
-        value : value,
-        criteria : iterator.call(context, value, index, list)
-      };
-    }).sort(function(left, right) {
-      var a = left.criteria, b = right.criteria;
-      return a < b ? -1 : a > b ? 1 : 0;
-    }), 'value');
-  };
-
-  // Groups the object's values by a criterion. Pass either a string attribute
-  // to group by, or a function that returns the criterion.
-  _.groupBy = function(obj, val) {
-    var result = {};
-    var iterator = _.isFunction(val) ? val : function(obj) { return obj[val]; };
-    each(obj, function(value, index) {
-      var key = iterator(value, index);
-      (result[key] || (result[key] = [])).push(value);
-    });
-    return result;
-  };
-
-  // Use a comparator function to figure out at what index an object should
-  // be inserted so as to maintain order. Uses binary search.
-  _.sortedIndex = function(array, obj, iterator) {
-    iterator || (iterator = _.identity);
-    var low = 0, high = array.length;
-    while (low < high) {
-      var mid = (low + high) >> 1;
-      iterator(array[mid]) < iterator(obj) ? low = mid + 1 : high = mid;
-    }
-    return low;
-  };
-
-  // Safely convert anything iterable into a real, live array.
-  _.toArray = function(iterable) {
-    if (!iterable)                return [];
-    if (iterable.toArray)         return iterable.toArray();
-    if (_.isArray(iterable))      return slice.call(iterable);
-    if (_.isArguments(iterable))  return slice.call(iterable);
-    return _.values(iterable);
-  };
-
-  // Return the number of elements in an object.
-  _.size = function(obj) {
-    return _.toArray(obj).length;
-  };
-
-  // Array Functions
-  // ---------------
-
-  // Get the first element of an array. Passing **n** will return the first N
-  // values in the array. Aliased as `head`. The **guard** check allows it to work
-  // with `_.map`.
-  _.first = _.head = function(array, n, guard) {
-    return (n != null) && !guard ? slice.call(array, 0, n) : array[0];
-  };
-
-  // Returns everything but the last entry of the array. Especcialy useful on
-  // the arguments object. Passing **n** will return all the values in
-  // the array, excluding the last N. The **guard** check allows it to work with
-  // `_.map`.
-  _.initial = function(array, n, guard) {
-    return slice.call(array, 0, array.length - ((n == null) || guard ? 1 : n));
-  };
-
-  // Get the last element of an array. Passing **n** will return the last N
-  // values in the array. The **guard** check allows it to work with `_.map`.
-  _.last = function(array, n, guard) {
-    if ((n != null) && !guard) {
-      return slice.call(array, Math.max(array.length - n, 0));
-    } else {
-      return array[array.length - 1];
-    }
-  };
-
-  // Returns everything but the first entry of the array. Aliased as `tail`.
-  // Especially useful on the arguments object. Passing an **index** will return
-  // the rest of the values in the array from that index onward. The **guard**
-  // check allows it to work with `_.map`.
-  _.rest = _.tail = function(array, index, guard) {
-    return slice.call(array, (index == null) || guard ? 1 : index);
-  };
-
-  // Trim out all falsy values from an array.
-  _.compact = function(array) {
-    return _.filter(array, function(value){ return !!value; });
-  };
-
-  // Return a completely flattened version of an array.
-  _.flatten = function(array, shallow) {
-    return _.reduce(array, function(memo, value) {
-      if (_.isArray(value)) return memo.concat(shallow ? value : _.flatten(value));
-      memo[memo.length] = value;
-      return memo;
-    }, []);
-  };
-
-  // Return a version of the array that does not contain the specified value(s).
-  _.without = function(array) {
-    return _.difference(array, slice.call(arguments, 1));
-  };
-
-  // Produce a duplicate-free version of the array. If the array has already
-  // been sorted, you have the option of using a faster algorithm.
-  // Aliased as `unique`.
-  _.uniq = _.unique = function(array, isSorted, iterator) {
-    var initial = iterator ? _.map(array, iterator) : array;
-    var result = [];
-    _.reduce(initial, function(memo, el, i) {
-      if (0 == i || (isSorted === true ? _.last(memo) != el : !_.include(memo, el))) {
-        memo[memo.length] = el;
-        result[result.length] = array[i];
-      }
-      return memo;
-    }, []);
-    return result;
-  };
-
-  // Produce an array that contains the union: each distinct element from all of
-  // the passed-in arrays.
-  _.union = function() {
-    return _.uniq(_.flatten(arguments, true));
-  };
-
-  // Produce an array that contains every item shared between all the
-  // passed-in arrays. (Aliased as "intersect" for back-compat.)
-  _.intersection = _.intersect = function(array) {
-    var rest = slice.call(arguments, 1);
-    return _.filter(_.uniq(array), function(item) {
-      return _.every(rest, function(other) {
-        return _.indexOf(other, item) >= 0;
-      });
-    });
-  };
-
-  // Take the difference between one array and a number of other arrays.
-  // Only the elements present in just the first array will remain.
-  _.difference = function(array) {
-    var rest = _.flatten(slice.call(arguments, 1));
-    return _.filter(array, function(value){ return !_.include(rest, value); });
-  };
-
-  // Zip together multiple lists into a single array -- elements that share
-  // an index go together.
-  _.zip = function() {
-    var args = slice.call(arguments);
-    var length = _.max(_.pluck(args, 'length'));
-    var results = new Array(length);
-    for (var i = 0; i < length; i++) results[i] = _.pluck(args, "" + i);
-    return results;
-  };
-
-  // If the browser doesn't supply us with indexOf (I'm looking at you, **MSIE**),
-  // we need this function. Return the position of the first occurrence of an
-  // item in an array, or -1 if the item is not included in the array.
-  // Delegates to **ECMAScript 5**'s native `indexOf` if available.
-  // If the array is large and already in sort order, pass `true`
-  // for **isSorted** to use binary search.
-  _.indexOf = function(array, item, isSorted) {
-    if (array == null) return -1;
-    var i, l;
-    if (isSorted) {
-      i = _.sortedIndex(array, item);
-      return array[i] === item ? i : -1;
-    }
-    if (nativeIndexOf && array.indexOf === nativeIndexOf) return array.indexOf(item);
-    for (i = 0, l = array.length; i < l; i++) if (i in array && array[i] === item) return i;
-    return -1;
-  };
-
-  // Delegates to **ECMAScript 5**'s native `lastIndexOf` if available.
-  _.lastIndexOf = function(array, item) {
-    if (array == null) return -1;
-    if (nativeLastIndexOf && array.lastIndexOf === nativeLastIndexOf) return array.lastIndexOf(item);
-    var i = array.length;
-    while (i--) if (i in array && array[i] === item) return i;
-    return -1;
-  };
-
-  // Generate an integer Array containing an arithmetic progression. A port of
-  // the native Python `range()` function. See
-  // [the Python documentation](http://docs.python.org/library/functions.html#range).
-  _.range = function(start, stop, step) {
-    if (arguments.length <= 1) {
-      stop = start || 0;
-      start = 0;
-    }
-    step = arguments[2] || 1;
-
-    var len = Math.max(Math.ceil((stop - start) / step), 0);
-    var idx = 0;
-    var range = new Array(len);
-
-    while(idx < len) {
-      range[idx++] = start;
-      start += step;
-    }
-
-    return range;
-  };
-
-  // Function (ahem) Functions
-  // ------------------
-
-  // Reusable constructor function for prototype setting.
-  var ctor = function(){};
-
-  // Create a function bound to a given object (assigning `this`, and arguments,
-  // optionally). Binding with arguments is also known as `curry`.
-  // Delegates to **ECMAScript 5**'s native `Function.bind` if available.
-  // We check for `func.bind` first, to fail fast when `func` is undefined.
-  _.bind = function bind(func, context) {
-    var bound, args;
-    if (func.bind === nativeBind && nativeBind) return nativeBind.apply(func, slice.call(arguments, 1));
-    if (!_.isFunction(func)) throw new TypeError;
-    args = slice.call(arguments, 2);
-    return bound = function() {
-      if (!(this instanceof bound)) return func.apply(context, args.concat(slice.call(arguments)));
-      ctor.prototype = func.prototype;
-      var self = new ctor;
-      var result = func.apply(self, args.concat(slice.call(arguments)));
-      if (Object(result) === result) return result;
-      return self;
-    };
-  };
-
-  // Bind all of an object's methods to that object. Useful for ensuring that
-  // all callbacks defined on an object belong to it.
-  _.bindAll = function(obj) {
-    var funcs = slice.call(arguments, 1);
-    if (funcs.length == 0) funcs = _.functions(obj);
-    each(funcs, function(f) { obj[f] = _.bind(obj[f], obj); });
-    return obj;
-  };
-
-  // Memoize an expensive function by storing its results.
-  _.memoize = function(func, hasher) {
-    var memo = {};
-    hasher || (hasher = _.identity);
-    return function() {
-      var key = hasher.apply(this, arguments);
-      return _.has(memo, key) ? memo[key] : (memo[key] = func.apply(this, arguments));
-    };
-  };
-
-  // Delays a function for the given number of milliseconds, and then calls
-  // it with the arguments supplied.
-  _.delay = function(func, wait) {
-    var args = slice.call(arguments, 2);
-    return setTimeout(function(){ return func.apply(func, args); }, wait);
-  };
-
-  // Defers a function, scheduling it to run after the current call stack has
-  // cleared.
-  _.defer = function(func) {
-    return _.delay.apply(_, [func, 1].concat(slice.call(arguments, 1)));
-  };
-
-  // Returns a function, that, when invoked, will only be triggered at most once
-  // during a given window of time.
-  _.throttle = function(func, wait) {
-    var context, args, timeout, throttling, more;
-    var whenDone = _.debounce(function(){ more = throttling = false; }, wait);
-    return function() {
-      context = this; args = arguments;
-      var later = function() {
-        timeout = null;
-        if (more) func.apply(context, args);
-        whenDone();
-      };
-      if (!timeout) timeout = setTimeout(later, wait);
-      if (throttling) {
-        more = true;
-      } else {
-        func.apply(context, args);
-      }
-      whenDone();
-      throttling = true;
-    };
-  };
-
-  // Returns a function, that, as long as it continues to be invoked, will not
-  // be triggered. The function will be called after it stops being called for
-  // N milliseconds.
-  _.debounce = function(func, wait) {
-    var timeout;
-    return function() {
-      var context = this, args = arguments;
-      var later = function() {
-        timeout = null;
-        func.apply(context, args);
-      };
-      clearTimeout(timeout);
-      timeout = setTimeout(later, wait);
-    };
-  };
-
-  // Returns a function that will be executed at most one time, no matter how
-  // often you call it. Useful for lazy initialization.
-  _.once = function(func) {
-    var ran = false, memo;
-    return function() {
-      if (ran) return memo;
-      ran = true;
-      return memo = func.apply(this, arguments);
-    };
-  };
-
-  // Returns the first function passed as an argument to the second,
-  // allowing you to adjust arguments, run code before and after, and
-  // conditionally execute the original function.
-  _.wrap = function(func, wrapper) {
-    return function() {
-      var args = [func].concat(slice.call(arguments, 0));
-      return wrapper.apply(this, args);
-    };
-  };
-
-  // Returns a function that is the composition of a list of functions, each
-  // consuming the return value of the function that follows.
-  _.compose = function() {
-    var funcs = arguments;
-    return function() {
-      var args = arguments;
-      for (var i = funcs.length - 1; i >= 0; i--) {
-        args = [funcs[i].apply(this, args)];
-      }
-      return args[0];
-    };
-  };
-
-  // Returns a function that will only be executed after being called N times.
-  _.after = function(times, func) {
-    if (times <= 0) return func();
-    return function() {
-      if (--times < 1) { return func.apply(this, arguments); }
-    };
-  };
-
-  // Object Functions
-  // ----------------
-
-  // Retrieve the names of an object's properties.
-  // Delegates to **ECMAScript 5**'s native `Object.keys`
-  _.keys = nativeKeys || function(obj) {
-    if (obj !== Object(obj)) throw new TypeError('Invalid object');
-    var keys = [];
-    for (var key in obj) if (_.has(obj, key)) keys[keys.length] = key;
-    return keys;
-  };
-
-  // Retrieve the values of an object's properties.
-  _.values = function(obj) {
-    return _.map(obj, _.identity);
-  };
-
-  // Return a sorted list of the function names available on the object.
-  // Aliased as `methods`
-  _.functions = _.methods = function(obj) {
-    var names = [];
-    for (var key in obj) {
-      if (_.isFunction(obj[key])) names.push(key);
-    }
-    return names.sort();
-  };
-
-  // Extend a given object with all the properties in passed-in object(s).
-  _.extend = function(obj) {
-    each(slice.call(arguments, 1), function(source) {
-      for (var prop in source) {
-        obj[prop] = source[prop];
-      }
-    });
-    return obj;
-  };
-
-  // Fill in a given object with default properties.
-  _.defaults = function(obj) {
-    each(slice.call(arguments, 1), function(source) {
-      for (var prop in source) {
-        if (obj[prop] == null) obj[prop] = source[prop];
-      }
-    });
-    return obj;
-  };
-
-  // Create a (shallow-cloned) duplicate of an object.
-  _.clone = function(obj) {
-    if (!_.isObject(obj)) return obj;
-    return _.isArray(obj) ? obj.slice() : _.extend({}, obj);
-  };
-
-  // Invokes interceptor with the obj, and then returns obj.
-  // The primary purpose of this method is to "tap into" a method chain, in
-  // order to perform operations on intermediate results within the chain.
-  _.tap = function(obj, interceptor) {
-    interceptor(obj);
-    return obj;
-  };
-
-  // Internal recursive comparison function.
-  function eq(a, b, stack) {
-    // Identical objects are equal. `0 === -0`, but they aren't identical.
-    // See the Harmony `egal` proposal: http://wiki.ecmascript.org/doku.php?id=harmony:egal.
-    if (a === b) return a !== 0 || 1 / a == 1 / b;
-    // A strict comparison is necessary because `null == undefined`.
-    if (a == null || b == null) return a === b;
-    // Unwrap any wrapped objects.
-    if (a._chain) a = a._wrapped;
-    if (b._chain) b = b._wrapped;
-    // Invoke a custom `isEqual` method if one is provided.
-    if (a.isEqual && _.isFunction(a.isEqual)) return a.isEqual(b);
-    if (b.isEqual && _.isFunction(b.isEqual)) return b.isEqual(a);
-    // Compare `[[Class]]` names.
-    var className = toString.call(a);
-    if (className != toString.call(b)) return false;
-    switch (className) {
-      // Strings, numbers, dates, and booleans are compared by value.
-      case '[object String]':
-        // Primitives and their corresponding object wrappers are equivalent; thus, `"5"` is
-        // equivalent to `new String("5")`.
-        return a == String(b);
-      case '[object Number]':
-        // `NaN`s are equivalent, but non-reflexive. An `egal` comparison is performed for
-        // other numeric values.
-        return a != +a ? b != +b : (a == 0 ? 1 / a == 1 / b : a == +b);
-      case '[object Date]':
-      case '[object Boolean]':
-        // Coerce dates and booleans to numeric primitive values. Dates are compared by their
-        // millisecond representations. Note that invalid dates with millisecond representations
-        // of `NaN` are not equivalent.
-        return +a == +b;
-      // RegExps are compared by their source patterns and flags.
-      case '[object RegExp]':
-        return a.source == b.source &&
-               a.global == b.global &&
-               a.multiline == b.multiline &&
-               a.ignoreCase == b.ignoreCase;
-    }
-    if (typeof a != 'object' || typeof b != 'object') return false;
-    // Assume equality for cyclic structures. The algorithm for detecting cyclic
-    // structures is adapted from ES 5.1 section 15.12.3, abstract operation `JO`.
-    var length = stack.length;
-    while (length--) {
-      // Linear search. Performance is inversely proportional to the number of
-      // unique nested structures.
-      if (stack[length] == a) return true;
-    }
-    // Add the first object to the stack of traversed objects.
-    stack.push(a);
-    var size = 0, result = true;
-    // Recursively compare objects and arrays.
-    if (className == '[object Array]') {
-      // Compare array lengths to determine if a deep comparison is necessary.
-      size = a.length;
-      result = size == b.length;
-      if (result) {
-        // Deep compare the contents, ignoring non-numeric properties.
-        while (size--) {
-          // Ensure commutative equality for sparse arrays.
-          if (!(result = size in a == size in b && eq(a[size], b[size], stack))) break;
-        }
-      }
-    } else {
-      // Objects with different constructors are not equivalent.
-      if ('constructor' in a != 'constructor' in b || a.constructor != b.constructor) return false;
-      // Deep compare objects.
-      for (var key in a) {
-        if (_.has(a, key)) {
-          // Count the expected number of properties.
-          size++;
-          // Deep compare each member.
-          if (!(result = _.has(b, key) && eq(a[key], b[key], stack))) break;
-        }
-      }
-      // Ensure that both objects contain the same number of properties.
-      if (result) {
-        for (key in b) {
-          if (_.has(b, key) && !(size--)) break;
-        }
-        result = !size;
-      }
-    }
-    // Remove the first object from the stack of traversed objects.
-    stack.pop();
-    return result;
-  }
-
-  // Perform a deep comparison to check if two objects are equal.
-  _.isEqual = function(a, b) {
-    return eq(a, b, []);
-  };
-
-  // Is a given array, string, or object empty?
-  // An "empty" object has no enumerable own-properties.
-  _.isEmpty = function(obj) {
-    if (_.isArray(obj) || _.isString(obj)) return obj.length === 0;
-    for (var key in obj) if (_.has(obj, key)) return false;
-    return true;
-  };
-
-  // Is a given value a DOM element?
-  _.isElement = function(obj) {
-    return !!(obj && obj.nodeType == 1);
-  };
-
-  // Is a given value an array?
-  // Delegates to ECMA5's native Array.isArray
-  _.isArray = nativeIsArray || function(obj) {
-    return toString.call(obj) == '[object Array]';
-  };
-
-  // Is a given variable an object?
-  _.isObject = function(obj) {
-    return obj === Object(obj);
-  };
-
-  // Is a given variable an arguments object?
-  _.isArguments = function(obj) {
-    return toString.call(obj) == '[object Arguments]';
-  };
-  if (!_.isArguments(arguments)) {
-    _.isArguments = function(obj) {
-      return !!(obj && _.has(obj, 'callee'));
-    };
-  }
-
-  // Is a given value a function?
-  _.isFunction = function(obj) {
-    return toString.call(obj) == '[object Function]';
-  };
-
-  // Is a given value a string?
-  _.isString = function(obj) {
-    return toString.call(obj) == '[object String]';
-  };
-
-  // Is a given value a number?
-  _.isNumber = function(obj) {
-    return toString.call(obj) == '[object Number]';
-  };
-
-  // Is the given value `NaN`?
-  _.isNaN = function(obj) {
-    // `NaN` is the only value for which `===` is not reflexive.
-    return obj !== obj;
-  };
-
-  // Is a given value a boolean?
-  _.isBoolean = function(obj) {
-    return obj === true || obj === false || toString.call(obj) == '[object Boolean]';
-  };
-
-  // Is a given value a date?
-  _.isDate = function(obj) {
-    return toString.call(obj) == '[object Date]';
-  };
-
-  // Is the given value a regular expression?
-  _.isRegExp = function(obj) {
-    return toString.call(obj) == '[object RegExp]';
-  };
-
-  // Is a given value equal to null?
-  _.isNull = function(obj) {
-    return obj === null;
-  };
-
-  // Is a given variable undefined?
-  _.isUndefined = function(obj) {
-    return obj === void 0;
-  };
-
-  // Has own property?
-  _.has = function(obj, key) {
-    return hasOwnProperty.call(obj, key);
-  };
-
-  // Utility Functions
-  // -----------------
-
-  // Run Underscore.js in *noConflict* mode, returning the `_` variable to its
-  // previous owner. Returns a reference to the Underscore object.
-  _.noConflict = function() {
-    root._ = previousUnderscore;
-    return this;
-  };
-
-  // Keep the identity function around for default iterators.
-  _.identity = function(value) {
-    return value;
-  };
-
-  // Run a function **n** times.
-  _.times = function (n, iterator, context) {
-    for (var i = 0; i < n; i++) iterator.call(context, i);
-  };
-
-  // Escape a string for HTML interpolation.
-  _.escape = function(string) {
-    return (''+string).replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;').replace(/"/g, '&quot;').replace(/'/g, '&#x27;').replace(/\//g,'&#x2F;');
-  };
-
-  // Add your own custom functions to the Underscore object, ensuring that
-  // they're correctly added to the OOP wrapper as well.
-  _.mixin = function(obj) {
-    each(_.functions(obj), function(name){
-      addToWrapper(name, _[name] = obj[name]);
-    });
-  };
-
-  // Generate a unique integer id (unique within the entire client session).
-  // Useful for temporary DOM ids.
-  var idCounter = 0;
-  _.uniqueId = function(prefix) {
-    var id = idCounter++;
-    return prefix ? prefix + id : id;
-  };
-
-  // By default, Underscore uses ERB-style template delimiters, change the
-  // following template settings to use alternative delimiters.
-  _.templateSettings = {
-    evaluate    : /<%([\s\S]+?)%>/g,
-    interpolate : /<%=([\s\S]+?)%>/g,
-    escape      : /<%-([\s\S]+?)%>/g
-  };
-
-  // When customizing `templateSettings`, if you don't want to define an
-  // interpolation, evaluation or escaping regex, we need one that is
-  // guaranteed not to match.
-  var noMatch = /.^/;
-
-  // Within an interpolation, evaluation, or escaping, remove HTML escaping
-  // that had been previously added.
-  var unescape = function(code) {
-    return code.replace(/\\\\/g, '\\').replace(/\\'/g, "'");
-  };
-
-  // JavaScript micro-templating, similar to John Resig's implementation.
-  // Underscore templating handles arbitrary delimiters, preserves whitespace,
-  // and correctly escapes quotes within interpolated code.
-  _.template = function(str, data) {
-    var c  = _.templateSettings;
-    var tmpl = 'var __p=[],print=function(){__p.push.apply(__p,arguments);};' +
-      'with(obj||{}){__p.push(\'' +
-      str.replace(/\\/g, '\\\\')
-         .replace(/'/g, "\\'")
-         .replace(c.escape || noMatch, function(match, code) {
-           return "',_.escape(" + unescape(code) + "),'";
-         })
-         .replace(c.interpolate || noMatch, function(match, code) {
-           return "'," + unescape(code) + ",'";
-         })
-         .replace(c.evaluate || noMatch, function(match, code) {
-           return "');" + unescape(code).replace(/[\r\n\t]/g, ' ') + ";__p.push('";
-         })
-         .replace(/\r/g, '\\r')
-         .replace(/\n/g, '\\n')
-         .replace(/\t/g, '\\t')
-         + "');}return __p.join('');";
-    var func = new Function('obj', '_', tmpl);
-    if (data) return func(data, _);
-    return function(data) {
-      return func.call(this, data, _);
-    };
-  };
-
-  // Add a "chain" function, which will delegate to the wrapper.
-  _.chain = function(obj) {
-    return _(obj).chain();
-  };
-
-  // The OOP Wrapper
-  // ---------------
-
-  // If Underscore is called as a function, it returns a wrapped object that
-  // can be used OO-style. This wrapper holds altered versions of all the
-  // underscore functions. Wrapped objects may be chained.
-  var wrapper = function(obj) { this._wrapped = obj; };
-
-  // Expose `wrapper.prototype` as `_.prototype`
-  _.prototype = wrapper.prototype;
-
-  // Helper function to continue chaining intermediate results.
-  var result = function(obj, chain) {
-    return chain ? _(obj).chain() : obj;
-  };
-
-  // A method to easily add functions to the OOP wrapper.
-  var addToWrapper = function(name, func) {
-    wrapper.prototype[name] = function() {
-      var args = slice.call(arguments);
-      unshift.call(args, this._wrapped);
-      return result(func.apply(_, args), this._chain);
-    };
-  };
-
-  // Add all of the Underscore functions to the wrapper object.
-  _.mixin(_);
-
-  // Add all mutator Array functions to the wrapper.
-  each(['pop', 'push', 'reverse', 'shift', 'sort', 'splice', 'unshift'], function(name) {
-    var method = ArrayProto[name];
-    wrapper.prototype[name] = function() {
-      var wrapped = this._wrapped;
-      method.apply(wrapped, arguments);
-      var length = wrapped.length;
-      if ((name == 'shift' || name == 'splice') && length === 0) delete wrapped[0];
-      return result(wrapped, this._chain);
-    };
-  });
-
-  // Add all accessor Array functions to the wrapper.
-  each(['concat', 'join', 'slice'], function(name) {
-    var method = ArrayProto[name];
-    wrapper.prototype[name] = function() {
-      return result(method.apply(this._wrapped, arguments), this._chain);
-    };
-  });
-
-  // Start chaining a wrapped Underscore object.
-  wrapper.prototype.chain = function() {
-    this._chain = true;
-    return this;
-  };
-
-  // Extracts the result from a wrapped and chained object.
-  wrapper.prototype.value = function() {
-    return this._wrapped;
-  };
-
-}).call(this);
diff --git a/atomicfeaturespackage/docs/_build/html/_static/underscore.js b/atomicfeaturespackage/docs/_build/html/_static/underscore.js
deleted file mode 100644
index 5b55f32..0000000
--- a/atomicfeaturespackage/docs/_build/html/_static/underscore.js
+++ /dev/null
@@ -1,31 +0,0 @@
-// Underscore.js 1.3.1
-// (c) 2009-2012 Jeremy Ashkenas, DocumentCloud Inc.
-// Underscore is freely distributable under the MIT license.
-// Portions of Underscore are inspired or borrowed from Prototype,
-// Oliver Steele's Functional, and John Resig's Micro-Templating.
-// For all details and documentation:
-// http://documentcloud.github.com/underscore
-(function(){function q(a,c,d){if(a===c)return a!==0||1/a==1/c;if(a==null||c==null)return a===c;if(a._chain)a=a._wrapped;if(c._chain)c=c._wrapped;if(a.isEqual&&b.isFunction(a.isEqual))return a.isEqual(c);if(c.isEqual&&b.isFunction(c.isEqual))return c.isEqual(a);var e=l.call(a);if(e!=l.call(c))return false;switch(e){case "[object String]":return a==String(c);case "[object Number]":return a!=+a?c!=+c:a==0?1/a==1/c:a==+c;case "[object Date]":case "[object Boolean]":return+a==+c;case "[object RegExp]":return a.source==
-c.source&&a.global==c.global&&a.multiline==c.multiline&&a.ignoreCase==c.ignoreCase}if(typeof a!="object"||typeof c!="object")return false;for(var f=d.length;f--;)if(d[f]==a)return true;d.push(a);var f=0,g=true;if(e=="[object Array]"){if(f=a.length,g=f==c.length)for(;f--;)if(!(g=f in a==f in c&&q(a[f],c[f],d)))break}else{if("constructor"in a!="constructor"in c||a.constructor!=c.constructor)return false;for(var h in a)if(b.has(a,h)&&(f++,!(g=b.has(c,h)&&q(a[h],c[h],d))))break;if(g){for(h in c)if(b.has(c,
-h)&&!f--)break;g=!f}}d.pop();return g}var r=this,G=r._,n={},k=Array.prototype,o=Object.prototype,i=k.slice,H=k.unshift,l=o.toString,I=o.hasOwnProperty,w=k.forEach,x=k.map,y=k.reduce,z=k.reduceRight,A=k.filter,B=k.every,C=k.some,p=k.indexOf,D=k.lastIndexOf,o=Array.isArray,J=Object.keys,s=Function.prototype.bind,b=function(a){return new m(a)};if(typeof exports!=="undefined"){if(typeof module!=="undefined"&&module.exports)exports=module.exports=b;exports._=b}else r._=b;b.VERSION="1.3.1";var j=b.each=
-b.forEach=function(a,c,d){if(a!=null)if(w&&a.forEach===w)a.forEach(c,d);else if(a.length===+a.length)for(var e=0,f=a.length;e<f;e++){if(e in a&&c.call(d,a[e],e,a)===n)break}else for(e in a)if(b.has(a,e)&&c.call(d,a[e],e,a)===n)break};b.map=b.collect=function(a,c,b){var e=[];if(a==null)return e;if(x&&a.map===x)return a.map(c,b);j(a,function(a,g,h){e[e.length]=c.call(b,a,g,h)});if(a.length===+a.length)e.length=a.length;return e};b.reduce=b.foldl=b.inject=function(a,c,d,e){var f=arguments.length>2;a==
-null&&(a=[]);if(y&&a.reduce===y)return e&&(c=b.bind(c,e)),f?a.reduce(c,d):a.reduce(c);j(a,function(a,b,i){f?d=c.call(e,d,a,b,i):(d=a,f=true)});if(!f)throw new TypeError("Reduce of empty array with no initial value");return d};b.reduceRight=b.foldr=function(a,c,d,e){var f=arguments.length>2;a==null&&(a=[]);if(z&&a.reduceRight===z)return e&&(c=b.bind(c,e)),f?a.reduceRight(c,d):a.reduceRight(c);var g=b.toArray(a).reverse();e&&!f&&(c=b.bind(c,e));return f?b.reduce(g,c,d,e):b.reduce(g,c)};b.find=b.detect=
-function(a,c,b){var e;E(a,function(a,g,h){if(c.call(b,a,g,h))return e=a,true});return e};b.filter=b.select=function(a,c,b){var e=[];if(a==null)return e;if(A&&a.filter===A)return a.filter(c,b);j(a,function(a,g,h){c.call(b,a,g,h)&&(e[e.length]=a)});return e};b.reject=function(a,c,b){var e=[];if(a==null)return e;j(a,function(a,g,h){c.call(b,a,g,h)||(e[e.length]=a)});return e};b.every=b.all=function(a,c,b){var e=true;if(a==null)return e;if(B&&a.every===B)return a.every(c,b);j(a,function(a,g,h){if(!(e=
-e&&c.call(b,a,g,h)))return n});return e};var E=b.some=b.any=function(a,c,d){c||(c=b.identity);var e=false;if(a==null)return e;if(C&&a.some===C)return a.some(c,d);j(a,function(a,b,h){if(e||(e=c.call(d,a,b,h)))return n});return!!e};b.include=b.contains=function(a,c){var b=false;if(a==null)return b;return p&&a.indexOf===p?a.indexOf(c)!=-1:b=E(a,function(a){return a===c})};b.invoke=function(a,c){var d=i.call(arguments,2);return b.map(a,function(a){return(b.isFunction(c)?c||a:a[c]).apply(a,d)})};b.pluck=
-function(a,c){return b.map(a,function(a){return a[c]})};b.max=function(a,c,d){if(!c&&b.isArray(a))return Math.max.apply(Math,a);if(!c&&b.isEmpty(a))return-Infinity;var e={computed:-Infinity};j(a,function(a,b,h){b=c?c.call(d,a,b,h):a;b>=e.computed&&(e={value:a,computed:b})});return e.value};b.min=function(a,c,d){if(!c&&b.isArray(a))return Math.min.apply(Math,a);if(!c&&b.isEmpty(a))return Infinity;var e={computed:Infinity};j(a,function(a,b,h){b=c?c.call(d,a,b,h):a;b<e.computed&&(e={value:a,computed:b})});
-return e.value};b.shuffle=function(a){var b=[],d;j(a,function(a,f){f==0?b[0]=a:(d=Math.floor(Math.random()*(f+1)),b[f]=b[d],b[d]=a)});return b};b.sortBy=function(a,c,d){return b.pluck(b.map(a,function(a,b,g){return{value:a,criteria:c.call(d,a,b,g)}}).sort(function(a,b){var c=a.criteria,d=b.criteria;return c<d?-1:c>d?1:0}),"value")};b.groupBy=function(a,c){var d={},e=b.isFunction(c)?c:function(a){return a[c]};j(a,function(a,b){var c=e(a,b);(d[c]||(d[c]=[])).push(a)});return d};b.sortedIndex=function(a,
-c,d){d||(d=b.identity);for(var e=0,f=a.length;e<f;){var g=e+f>>1;d(a[g])<d(c)?e=g+1:f=g}return e};b.toArray=function(a){return!a?[]:a.toArray?a.toArray():b.isArray(a)?i.call(a):b.isArguments(a)?i.call(a):b.values(a)};b.size=function(a){return b.toArray(a).length};b.first=b.head=function(a,b,d){return b!=null&&!d?i.call(a,0,b):a[0]};b.initial=function(a,b,d){return i.call(a,0,a.length-(b==null||d?1:b))};b.last=function(a,b,d){return b!=null&&!d?i.call(a,Math.max(a.length-b,0)):a[a.length-1]};b.rest=
-b.tail=function(a,b,d){return i.call(a,b==null||d?1:b)};b.compact=function(a){return b.filter(a,function(a){return!!a})};b.flatten=function(a,c){return b.reduce(a,function(a,e){if(b.isArray(e))return a.concat(c?e:b.flatten(e));a[a.length]=e;return a},[])};b.without=function(a){return b.difference(a,i.call(arguments,1))};b.uniq=b.unique=function(a,c,d){var d=d?b.map(a,d):a,e=[];b.reduce(d,function(d,g,h){if(0==h||(c===true?b.last(d)!=g:!b.include(d,g)))d[d.length]=g,e[e.length]=a[h];return d},[]);
-return e};b.union=function(){return b.uniq(b.flatten(arguments,true))};b.intersection=b.intersect=function(a){var c=i.call(arguments,1);return b.filter(b.uniq(a),function(a){return b.every(c,function(c){return b.indexOf(c,a)>=0})})};b.difference=function(a){var c=b.flatten(i.call(arguments,1));return b.filter(a,function(a){return!b.include(c,a)})};b.zip=function(){for(var a=i.call(arguments),c=b.max(b.pluck(a,"length")),d=Array(c),e=0;e<c;e++)d[e]=b.pluck(a,""+e);return d};b.indexOf=function(a,c,
-d){if(a==null)return-1;var e;if(d)return d=b.sortedIndex(a,c),a[d]===c?d:-1;if(p&&a.indexOf===p)return a.indexOf(c);for(d=0,e=a.length;d<e;d++)if(d in a&&a[d]===c)return d;return-1};b.lastIndexOf=function(a,b){if(a==null)return-1;if(D&&a.lastIndexOf===D)return a.lastIndexOf(b);for(var d=a.length;d--;)if(d in a&&a[d]===b)return d;return-1};b.range=function(a,b,d){arguments.length<=1&&(b=a||0,a=0);for(var d=arguments[2]||1,e=Math.max(Math.ceil((b-a)/d),0),f=0,g=Array(e);f<e;)g[f++]=a,a+=d;return g};
-var F=function(){};b.bind=function(a,c){var d,e;if(a.bind===s&&s)return s.apply(a,i.call(arguments,1));if(!b.isFunction(a))throw new TypeError;e=i.call(arguments,2);return d=function(){if(!(this instanceof d))return a.apply(c,e.concat(i.call(arguments)));F.prototype=a.prototype;var b=new F,g=a.apply(b,e.concat(i.call(arguments)));return Object(g)===g?g:b}};b.bindAll=function(a){var c=i.call(arguments,1);c.length==0&&(c=b.functions(a));j(c,function(c){a[c]=b.bind(a[c],a)});return a};b.memoize=function(a,
-c){var d={};c||(c=b.identity);return function(){var e=c.apply(this,arguments);return b.has(d,e)?d[e]:d[e]=a.apply(this,arguments)}};b.delay=function(a,b){var d=i.call(arguments,2);return setTimeout(function(){return a.apply(a,d)},b)};b.defer=function(a){return b.delay.apply(b,[a,1].concat(i.call(arguments,1)))};b.throttle=function(a,c){var d,e,f,g,h,i=b.debounce(function(){h=g=false},c);return function(){d=this;e=arguments;var b;f||(f=setTimeout(function(){f=null;h&&a.apply(d,e);i()},c));g?h=true:
-a.apply(d,e);i();g=true}};b.debounce=function(a,b){var d;return function(){var e=this,f=arguments;clearTimeout(d);d=setTimeout(function(){d=null;a.apply(e,f)},b)}};b.once=function(a){var b=false,d;return function(){if(b)return d;b=true;return d=a.apply(this,arguments)}};b.wrap=function(a,b){return function(){var d=[a].concat(i.call(arguments,0));return b.apply(this,d)}};b.compose=function(){var a=arguments;return function(){for(var b=arguments,d=a.length-1;d>=0;d--)b=[a[d].apply(this,b)];return b[0]}};
-b.after=function(a,b){return a<=0?b():function(){if(--a<1)return b.apply(this,arguments)}};b.keys=J||function(a){if(a!==Object(a))throw new TypeError("Invalid object");var c=[],d;for(d in a)b.has(a,d)&&(c[c.length]=d);return c};b.values=function(a){return b.map(a,b.identity)};b.functions=b.methods=function(a){var c=[],d;for(d in a)b.isFunction(a[d])&&c.push(d);return c.sort()};b.extend=function(a){j(i.call(arguments,1),function(b){for(var d in b)a[d]=b[d]});return a};b.defaults=function(a){j(i.call(arguments,
-1),function(b){for(var d in b)a[d]==null&&(a[d]=b[d])});return a};b.clone=function(a){return!b.isObject(a)?a:b.isArray(a)?a.slice():b.extend({},a)};b.tap=function(a,b){b(a);return a};b.isEqual=function(a,b){return q(a,b,[])};b.isEmpty=function(a){if(b.isArray(a)||b.isString(a))return a.length===0;for(var c in a)if(b.has(a,c))return false;return true};b.isElement=function(a){return!!(a&&a.nodeType==1)};b.isArray=o||function(a){return l.call(a)=="[object Array]"};b.isObject=function(a){return a===Object(a)};
-b.isArguments=function(a){return l.call(a)=="[object Arguments]"};if(!b.isArguments(arguments))b.isArguments=function(a){return!(!a||!b.has(a,"callee"))};b.isFunction=function(a){return l.call(a)=="[object Function]"};b.isString=function(a){return l.call(a)=="[object String]"};b.isNumber=function(a){return l.call(a)=="[object Number]"};b.isNaN=function(a){return a!==a};b.isBoolean=function(a){return a===true||a===false||l.call(a)=="[object Boolean]"};b.isDate=function(a){return l.call(a)=="[object Date]"};
-b.isRegExp=function(a){return l.call(a)=="[object RegExp]"};b.isNull=function(a){return a===null};b.isUndefined=function(a){return a===void 0};b.has=function(a,b){return I.call(a,b)};b.noConflict=function(){r._=G;return this};b.identity=function(a){return a};b.times=function(a,b,d){for(var e=0;e<a;e++)b.call(d,e)};b.escape=function(a){return(""+a).replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#x27;").replace(/\//g,"&#x2F;")};b.mixin=function(a){j(b.functions(a),
-function(c){K(c,b[c]=a[c])})};var L=0;b.uniqueId=function(a){var b=L++;return a?a+b:b};b.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var t=/.^/,u=function(a){return a.replace(/\\\\/g,"\\").replace(/\\'/g,"'")};b.template=function(a,c){var d=b.templateSettings,d="var __p=[],print=function(){__p.push.apply(__p,arguments);};with(obj||{}){__p.push('"+a.replace(/\\/g,"\\\\").replace(/'/g,"\\'").replace(d.escape||t,function(a,b){return"',_.escape("+
-u(b)+"),'"}).replace(d.interpolate||t,function(a,b){return"',"+u(b)+",'"}).replace(d.evaluate||t,function(a,b){return"');"+u(b).replace(/[\r\n\t]/g," ")+";__p.push('"}).replace(/\r/g,"\\r").replace(/\n/g,"\\n").replace(/\t/g,"\\t")+"');}return __p.join('');",e=new Function("obj","_",d);return c?e(c,b):function(a){return e.call(this,a,b)}};b.chain=function(a){return b(a).chain()};var m=function(a){this._wrapped=a};b.prototype=m.prototype;var v=function(a,c){return c?b(a).chain():a},K=function(a,c){m.prototype[a]=
-function(){var a=i.call(arguments);H.call(a,this._wrapped);return v(c.apply(b,a),this._chain)}};b.mixin(b);j("pop,push,reverse,shift,sort,splice,unshift".split(","),function(a){var b=k[a];m.prototype[a]=function(){var d=this._wrapped;b.apply(d,arguments);var e=d.length;(a=="shift"||a=="splice")&&e===0&&delete d[0];return v(d,this._chain)}});j(["concat","join","slice"],function(a){var b=k[a];m.prototype[a]=function(){return v(b.apply(this._wrapped,arguments),this._chain)}});m.prototype.chain=function(){this._chain=
-true;return this};m.prototype.value=function(){return this._wrapped}}).call(this);
diff --git a/atomicfeaturespackage/docs/_build/html/atomicfeaturespackage.atomicproperties.html b/atomicfeaturespackage/docs/_build/html/atomicfeaturespackage.atomicproperties.html
deleted file mode 100644
index edb0f39..0000000
--- a/atomicfeaturespackage/docs/_build/html/atomicfeaturespackage.atomicproperties.html
+++ /dev/null
@@ -1,430 +0,0 @@
-
-
-<!doctype html>
-
-<html xmlns="http://www.w3.org/1999/xhtml">
-  <head>
-    <meta charset="utf-8" />
-    <title>atomicfeaturespackage.atomicproperties package &#8212; atomic-features-package  documentation</title>
-    <link rel="stylesheet" href="_static/bizstyle.css" type="text/css" />
-    <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
-    
-    <script id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
-    <script src="_static/jquery.js"></script>
-    <script src="_static/underscore.js"></script>
-    <script src="_static/doctools.js"></script>
-    <script src="_static/language_data.js"></script>
-    <script src="_static/bizstyle.js"></script>
-    <link rel="index" title="Index" href="genindex.html" />
-    <link rel="search" title="Search" href="search.html" />
-    <link rel="next" title="atomicfeaturespackage.metainfo package" href="atomicfeaturespackage.metainfo.html" />
-    <link rel="prev" title="atomic-features-package package" href="atomicfeaturespackage.html" />
-    <meta name="viewport" content="width=device-width,initial-scale=1.0">
-    <!--[if lt IE 9]>
-    <script src="_static/css3-mediaqueries.js"></script>
-    <![endif]-->
-  </head><body>
-    <div class="related" role="navigation" aria-label="related navigation">
-      <h3>Navigation</h3>
-      <ul>
-        <li class="right" style="margin-right: 10px">
-          <a href="genindex.html" title="General Index"
-             accesskey="I">index</a></li>
-        <li class="right" >
-          <a href="py-modindex.html" title="Python Module Index"
-             >modules</a> |</li>
-        <li class="right" >
-          <a href="atomicfeaturespackage.metainfo.html" title="atomicfeaturespackage.metainfo package"
-             accesskey="N">next</a> |</li>
-        <li class="right" >
-          <a href="atomicfeaturespackage.html" title="atomic-features-package package"
-             accesskey="P">previous</a> |</li>
-        <li class="nav-item nav-item-0"><a href="index.html">atomic-features-package  documentation</a> &#187;</li>
-          <li class="nav-item nav-item-1"><a href="atomicfeaturespackage.html" accesskey="U">atomic-features-package package</a> &#187;</li> 
-      </ul>
-    </div>
-      <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
-        <div class="sphinxsidebarwrapper">
-  <h3><a href="index.html">Table of Contents</a></h3>
-  <ul>
-<li><a class="reference internal" href="#">atomicfeaturespackage.atomicproperties package</a><ul>
-<li><a class="reference internal" href="#module-atomicfeaturespackage.atomicproperties.atomic_properties_dft">atomicfeaturespackage.atomicproperties.atomic_properties_dft module</a></li>
-<li><a class="reference internal" href="#module-atomicfeaturespackage.atomicproperties.atomic_properties_lda2015">atomicfeaturespackage.atomicproperties.atomic_properties_lda2015 module</a></li>
-<li><a class="reference internal" href="#atomicfeaturespackage-atomicproperties-atomic-properties-matminer-module">atomicfeaturespackage.atomicproperties.atomic_properties_matminer module</a></li>
-<li><a class="reference internal" href="#module-atomicfeaturespackage.atomicproperties.atomic_properties_pymat">atomicfeaturespackage.atomicproperties.atomic_properties_pymat module</a></li>
-<li><a class="reference internal" href="#module-atomicfeaturespackage.atomicproperties.periodictable">atomicfeaturespackage.atomicproperties.periodictable module</a></li>
-</ul>
-</li>
-</ul>
-
-  <h4>Previous topic</h4>
-  <p class="topless"><a href="atomicfeaturespackage.html"
-                        title="previous chapter">atomic-features-package package</a></p>
-  <h4>Next topic</h4>
-  <p class="topless"><a href="atomicfeaturespackage.metainfo.html"
-                        title="next chapter">atomicfeaturespackage.metainfo package</a></p>
-  <div role="note" aria-label="source link">
-    <h3>This Page</h3>
-    <ul class="this-page-menu">
-      <li><a href="_sources/atomicfeaturespackage.atomicproperties.rst.txt"
-            rel="nofollow">Show Source</a></li>
-    </ul>
-   </div>
-<div id="searchbox" style="display: none" role="search">
-  <h3 id="searchlabel">Quick search</h3>
-    <div class="searchformwrapper">
-    <form class="search" action="search.html" method="get">
-      <input type="text" name="q" aria-labelledby="searchlabel" />
-      <input type="submit" value="Go" />
-    </form>
-    </div>
-</div>
-<script>$('#searchbox').show(0);</script>
-        </div>
-      </div>
-
-    <div class="document">
-      <div class="documentwrapper">
-        <div class="bodywrapper">
-          <div class="body" role="main">
-            
-  <div class="section" id="atomicfeaturespackage-atomicproperties-package">
-<h1>atomicfeaturespackage.atomicproperties package<a class="headerlink" href="#atomicfeaturespackage-atomicproperties-package" title="Permalink to this headline">¶</a></h1>
-<div class="section" id="module-atomicfeaturespackage.atomicproperties.atomic_properties_dft">
-<span id="atomicfeaturespackage-atomicproperties-atomic-properties-dft-module"></span><h2>atomicfeaturespackage.atomicproperties.atomic_properties_dft module<a class="headerlink" href="#module-atomicfeaturespackage.atomicproperties.atomic_properties_dft" title="Permalink to this headline">¶</a></h2>
-<p>Module : atomic_properties_dft</p>
-<p>This module with help of  atomic_properties_fhi class from metainfo module instantiates objects with atomic element symbol as identifier to access atomic features available</p>
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.atomic_properties_dft.definition">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.atomic_properties_dft.</code><code class="sig-name descname">definition</code><span class="sig-paren">(</span><em class="sig-param">abc</em><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.atomic_properties_dft.definition" title="Permalink to this definition">¶</a></dt>
-<dd><p>This function can be used to access quantity definitions for each element features accessible</p>
-</dd></dl>
-
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.atomic_properties_dft.f">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.atomic_properties_dft.</code><code class="sig-name descname">f</code><span class="sig-paren">(</span><em class="sig-param">df1</em>, <em class="sig-param">objs</em><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.atomic_properties_dft.f" title="Permalink to this definition">¶</a></dt>
-<dd><p>This method instantiates objects of class atomic_properties_fhi when spin arg is set to “FALSE”.</p>
-</dd></dl>
-
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.atomic_properties_dft.method">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.atomic_properties_dft.</code><code class="sig-name descname">method</code><span class="sig-paren">(</span><em class="sig-param">Spin=''</em>, <em class="sig-param">method=''</em><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.atomic_properties_dft.method" title="Permalink to this definition">¶</a></dt>
-<dd><p>After importing atomic_properties_dft module one must call this method function to instantiate element objects. One must supply Spin and method   appropirate keywords agruments as per one’s interest.</p>
-<p>Spin arg value could be :</p>
-<ul class="simple">
-<li><p>“True”</p></li>
-<li><p>“False”</p></li>
-</ul>
-<p>method arg value could be :</p>
-<ul class="simple">
-<li><p>“hse06”</p></li>
-<li><p>“pbe”</p></li>
-<li><p>“pbe0”</p></li>
-<li><p>“pbesol”</p></li>
-<li><p>“pw-lda”</p></li>
-<li><p>“revpbe”</p></li>
-</ul>
-<p>As per different combinations specific datafiles will be read and element features could be accessed</p>
-</dd></dl>
-
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.atomic_properties_dft.symbol">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.atomic_properties_dft.</code><code class="sig-name descname">symbol</code><span class="sig-paren">(</span><em class="sig-param">abc</em><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.atomic_properties_dft.symbol" title="Permalink to this definition">¶</a></dt>
-<dd><p>This function utilty is, it can be called to access element properties based on its symbol in periodic table. Can be usefull if want to acess particular property of multiple elements at once</p>
-</dd></dl>
-
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.atomic_properties_dft.t">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.atomic_properties_dft.</code><code class="sig-name descname">t</code><span class="sig-paren">(</span><em class="sig-param">df1</em>, <em class="sig-param">objs</em><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.atomic_properties_dft.t" title="Permalink to this definition">¶</a></dt>
-<dd><p>This method instantiates objects of class atomic_properties_fhi when spin arg is set to “TRUE”.</p>
-</dd></dl>
-
-</div>
-<div class="section" id="module-atomicfeaturespackage.atomicproperties.atomic_properties_lda2015">
-<span id="atomicfeaturespackage-atomicproperties-atomic-properties-lda2015-module"></span><h2>atomicfeaturespackage.atomicproperties.atomic_properties_lda2015 module<a class="headerlink" href="#module-atomicfeaturespackage.atomicproperties.atomic_properties_lda2015" title="Permalink to this headline">¶</a></h2>
-<p>Module : atomic_properties_lda2015</p>
-<p>This module with help of  atomic_properties_lda2015 class from metainfo module instantiates objects with atomic element symbol as identifier to access atomic features available</p>
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.atomic_properties_lda2015.definition">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.atomic_properties_lda2015.</code><code class="sig-name descname">definition</code><span class="sig-paren">(</span><em class="sig-param">abc</em><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.atomic_properties_lda2015.definition" title="Permalink to this definition">¶</a></dt>
-<dd><p>This function can be used to access quantity definitions for each element features accessible</p>
-</dd></dl>
-
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.atomic_properties_lda2015.symbol">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.atomic_properties_lda2015.</code><code class="sig-name descname">symbol</code><span class="sig-paren">(</span><em class="sig-param">abc</em><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.atomic_properties_lda2015.symbol" title="Permalink to this definition">¶</a></dt>
-<dd><p>This function utilty is, it can be called to access element properties based on its symbol in periodic table. Can be usefull if one wants to acess particular property of multiple elements at once</p>
-</dd></dl>
-
-</div>
-<div class="section" id="atomicfeaturespackage-atomicproperties-atomic-properties-matminer-module">
-<h2>atomicfeaturespackage.atomicproperties.atomic_properties_matminer module<a class="headerlink" href="#atomicfeaturespackage-atomicproperties-atomic-properties-matminer-module" title="Permalink to this headline">¶</a></h2>
-<span class="target" id="module-atomicfeaturespackage.atomicproperties.atomic_properties_matminer"></span><p>Module : atomic_properties_matminer</p>
-<p>This module with help of  atomic_properties_matminer class from metainfo module instantiates objects with atomic element symbol as identifier to access atomic features available</p>
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.atomic_properties_matminer.atomicsymbol">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.atomic_properties_matminer.</code><code class="sig-name descname">atomicsymbol</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.atomic_properties_matminer.atomicsymbol" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.atomic_properties_matminer.definition">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.atomic_properties_matminer.</code><code class="sig-name descname">definition</code><span class="sig-paren">(</span><em class="sig-param">abc</em><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.atomic_properties_matminer.definition" title="Permalink to this definition">¶</a></dt>
-<dd><p>This function can be used to access quantity definitions for each element features accessible</p>
-</dd></dl>
-
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.atomic_properties_matminer.ionizationen">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.atomic_properties_matminer.</code><code class="sig-name descname">ionizationen</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.atomic_properties_matminer.ionizationen" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.atomic_properties_matminer.oxistates">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.atomic_properties_matminer.</code><code class="sig-name descname">oxistates</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.atomic_properties_matminer.oxistates" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.atomic_properties_matminer.symbol">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.atomic_properties_matminer.</code><code class="sig-name descname">symbol</code><span class="sig-paren">(</span><em class="sig-param">abc</em><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.atomic_properties_matminer.symbol" title="Permalink to this definition">¶</a></dt>
-<dd><p>This function utilty is, it can be called to access element properties based on its symbol in periodic table. Can be usefull if one wants to acess particular property of multiple elements at once</p>
-</dd></dl>
-
-</div>
-<div class="section" id="module-atomicfeaturespackage.atomicproperties.atomic_properties_pymat">
-<span id="atomicfeaturespackage-atomicproperties-atomic-properties-pymat-module"></span><h2>atomicfeaturespackage.atomicproperties.atomic_properties_pymat module<a class="headerlink" href="#module-atomicfeaturespackage.atomicproperties.atomic_properties_pymat" title="Permalink to this headline">¶</a></h2>
-<p>Module : atomic_properties_pymat</p>
-<p>This module with help of  atomic_properties_pymat class from metainfo module instantiates objects with atomic element symbol as identifier to access atomic features available</p>
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.atomic_properties_pymat.definition">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.atomic_properties_pymat.</code><code class="sig-name descname">definition</code><span class="sig-paren">(</span><em class="sig-param">abc</em><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.atomic_properties_pymat.definition" title="Permalink to this definition">¶</a></dt>
-<dd><p>This function can be used to access quantity definitions for each element features accessible</p>
-</dd></dl>
-
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.atomic_properties_pymat.rename_keys">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.atomic_properties_pymat.</code><code class="sig-name descname">rename_keys</code><span class="sig-paren">(</span><em class="sig-param">d</em>, <em class="sig-param">keys</em><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.atomic_properties_pymat.rename_keys" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.atomic_properties_pymat.symbol">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.atomic_properties_pymat.</code><code class="sig-name descname">symbol</code><span class="sig-paren">(</span><em class="sig-param">abc</em><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.atomic_properties_pymat.symbol" title="Permalink to this definition">¶</a></dt>
-<dd><p>This function utilty is, it can be called to access element properties based on its symbol in periodic table. Can be usefull if want to acess   particular property of multiple elements at once</p>
-</dd></dl>
-
-</div>
-<div class="section" id="module-atomicfeaturespackage.atomicproperties.periodictable">
-<span id="atomicfeaturespackage-atomicproperties-periodictable-module"></span><h2>atomicfeaturespackage.atomicproperties.periodictable module<a class="headerlink" href="#module-atomicfeaturespackage.atomicproperties.periodictable" title="Permalink to this headline">¶</a></h2>
-<p>Module : periodictable</p>
-<p>This module with help to visualize atomic properties available from dft, lda2015, matminer,webele and pymat module via the periodic table in the form of heatmaps</p>
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.periodictable.clean">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.periodictable.</code><code class="sig-name descname">clean</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.periodictable.clean" title="Permalink to this definition">¶</a></dt>
-<dd><p>Cleaning and renaming of pandas dataframe imported from bokeh package</p>
-</dd></dl>
-
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.periodictable.f">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.periodictable.</code><code class="sig-name descname">f</code><span class="sig-paren">(</span><em class="sig-param">df3</em>, <em class="sig-param">df4</em><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.periodictable.f" title="Permalink to this definition">¶</a></dt>
-<dd><p>Adds atomic_properites_dft module atomic features(Spin= “False”) to previously cleaned pandas dataframe imported from bokeh</p>
-</dd></dl>
-
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.periodictable.featuref">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.periodictable.</code><code class="sig-name descname">featuref</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.periodictable.featuref" title="Permalink to this definition">¶</a></dt>
-<dd><p>Generates the python list of features needed for interactive dropdown menu in heatmap plot. This functions gives features list for element properties from atomic_properties_dft module and spin set to “False”.</p>
-</dd></dl>
-
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.periodictable.featurelda">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.periodictable.</code><code class="sig-name descname">featurelda</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.periodictable.featurelda" title="Permalink to this definition">¶</a></dt>
-<dd><p>Generates the python list of features needed for interactive dropdown menu in heatmap plot. This functions gives features list for element properties from atomic_properties_lda2015 module.</p>
-</dd></dl>
-
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.periodictable.featurematmin">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.periodictable.</code><code class="sig-name descname">featurematmin</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.periodictable.featurematmin" title="Permalink to this definition">¶</a></dt>
-<dd><p>Generates the python list of features needed for interactive dropdown menu in heatmap plot. This functions gives features list for element properties from atomic_properties_magpie module.</p>
-</dd></dl>
-
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.periodictable.featurepymat">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.periodictable.</code><code class="sig-name descname">featurepymat</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.periodictable.featurepymat" title="Permalink to this definition">¶</a></dt>
-<dd><p>Generates the python list of features needed for interactive dropdown menu in heatmap plot. This functions gives features list for element properties from atomic_properties_pymat module.</p>
-</dd></dl>
-
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.periodictable.featuret">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.periodictable.</code><code class="sig-name descname">featuret</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.periodictable.featuret" title="Permalink to this definition">¶</a></dt>
-<dd><p>Generates the python list of features needed for interactive dropdown menu in heatmap plot. This functions gives features list for element properties from atomic_properties_dft module and spin set to “True”.</p>
-</dd></dl>
-
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.periodictable.featurewebele">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.periodictable.</code><code class="sig-name descname">featurewebele</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.periodictable.featurewebele" title="Permalink to this definition">¶</a></dt>
-<dd><p>Generates the python list of features needed for interactive dropdown menu in heatmap plot. This functions gives features list for element properties from atomic_properties_webele module.</p>
-</dd></dl>
-
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.periodictable.heatmap">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.periodictable.</code><code class="sig-name descname">heatmap</code><span class="sig-paren">(</span><em class="sig-param">Spin=''</em>, <em class="sig-param">method=''</em><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.periodictable.heatmap" title="Permalink to this definition">¶</a></dt>
-<dd><p>After importing periodictable module one must call this heatmap method to get interactive heatmaps. One must supply Spin and method appropirate keywords agruments as per one’s interest.</p>
-<p>Spin arg value could be :</p>
-<ul class="simple">
-<li><p>“True”</p></li>
-<li><p>“False”</p></li>
-</ul>
-<p>method arg value could be :</p>
-<ul class="simple">
-<li><p>“hse06”</p></li>
-<li><p>“pbe”</p></li>
-<li><p>“pbe0”</p></li>
-<li><p>“pbesol”</p></li>
-<li><p>“pw-lda”</p></li>
-<li><p>“revpbe”</p></li>
-<li><p>“matmin”</p></li>
-<li><p>“lda2015”</p></li>
-<li><p>“pymat”</p></li>
-<li><p>“webele”</p></li>
-</ul>
-<div class="admonition note">
-<p class="admonition-title">Note</p>
-<p>Note : for method “matmin”/“lda2015”/“pymat”/”webele” spin arg value has to “False”</p>
-</div>
-<p>As per different combinations specific element features will be loaded in heatmap plots.</p>
-</dd></dl>
-
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.periodictable.lda">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.periodictable.</code><code class="sig-name descname">lda</code><span class="sig-paren">(</span><em class="sig-param">df3</em>, <em class="sig-param">df4</em><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.periodictable.lda" title="Permalink to this definition">¶</a></dt>
-<dd><p>Adds atomic_properites_lda2015 module atomic features to previously cleaned pandas dataframe imported from bokeh</p>
-</dd></dl>
-
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.periodictable.matmin">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.periodictable.</code><code class="sig-name descname">matmin</code><span class="sig-paren">(</span><em class="sig-param">df3</em>, <em class="sig-param">df4</em><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.periodictable.matmin" title="Permalink to this definition">¶</a></dt>
-<dd><p>Adds atomic_properties_matminer module atomic features to previously cleaned pandas dataframe imported from bokeh</p>
-</dd></dl>
-
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.periodictable.ptableplotgenf">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.periodictable.</code><code class="sig-name descname">ptableplotgenf</code><span class="sig-paren">(</span><em class="sig-param">Feature</em><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.periodictable.ptableplotgenf" title="Permalink to this definition">¶</a></dt>
-<dd><p>Sets all the heatmap plot properties like text, colour mappers ,tittle, axis, legend etc for atomic_properties_dft module(Spin=”False”).</p>
-</dd></dl>
-
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.periodictable.ptableplotgenlda">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.periodictable.</code><code class="sig-name descname">ptableplotgenlda</code><span class="sig-paren">(</span><em class="sig-param">Feature</em><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.periodictable.ptableplotgenlda" title="Permalink to this definition">¶</a></dt>
-<dd><p>Sets all the heatmap plot properties like text, colour mappers ,tittle, axis, legend etc for atomic_properties_lda2015 module.</p>
-</dd></dl>
-
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.periodictable.ptableplotgenmatmin">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.periodictable.</code><code class="sig-name descname">ptableplotgenmatmin</code><span class="sig-paren">(</span><em class="sig-param">Feature</em><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.periodictable.ptableplotgenmatmin" title="Permalink to this definition">¶</a></dt>
-<dd><p>Sets all the heatmap plot properties like text, colour mappers ,tittle, axis, legend etc for atomic_properties_magpie module.</p>
-</dd></dl>
-
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.periodictable.ptableplotgenpymat">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.periodictable.</code><code class="sig-name descname">ptableplotgenpymat</code><span class="sig-paren">(</span><em class="sig-param">Feature</em><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.periodictable.ptableplotgenpymat" title="Permalink to this definition">¶</a></dt>
-<dd><p>Sets all the heatmap plot properties like text, colour mappers ,tittle, axis, legend etc for atomic_properties_pymat module.</p>
-</dd></dl>
-
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.periodictable.ptableplotgent">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.periodictable.</code><code class="sig-name descname">ptableplotgent</code><span class="sig-paren">(</span><em class="sig-param">Feature</em><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.periodictable.ptableplotgent" title="Permalink to this definition">¶</a></dt>
-<dd><p>Sets all the heatmap plot properties like text, colour mappers ,tittle, axis, legend etc for atomic_properties_dft module(Spin=”True”).</p>
-</dd></dl>
-
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.periodictable.ptableplotgenwebele">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.periodictable.</code><code class="sig-name descname">ptableplotgenwebele</code><span class="sig-paren">(</span><em class="sig-param">Feature</em><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.periodictable.ptableplotgenwebele" title="Permalink to this definition">¶</a></dt>
-<dd><p>Sets all the heatmap plot properties like text, colour mappers ,tittle, axis, legend etc for atomic_properties_webele module.</p>
-</dd></dl>
-
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.periodictable.pymat">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.periodictable.</code><code class="sig-name descname">pymat</code><span class="sig-paren">(</span><em class="sig-param">df3</em>, <em class="sig-param">df4</em><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.periodictable.pymat" title="Permalink to this definition">¶</a></dt>
-<dd><p>Adds atomic_properites_pymat module atomic features to previously cleaned pandas dataframe imported from bokeh</p>
-</dd></dl>
-
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.periodictable.showfigf">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.periodictable.</code><code class="sig-name descname">showfigf</code><span class="sig-paren">(</span><em class="sig-param">Feature</em><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.periodictable.showfigf" title="Permalink to this definition">¶</a></dt>
-<dd><p>Generates an interactive heatmap with dropdown menu for  atomic_properites_dft module atomic features(Spin= “False”)</p>
-</dd></dl>
-
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.periodictable.showfiglda">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.periodictable.</code><code class="sig-name descname">showfiglda</code><span class="sig-paren">(</span><em class="sig-param">Feature</em><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.periodictable.showfiglda" title="Permalink to this definition">¶</a></dt>
-<dd><p>Generates an interactive heatmap with dropdown menu for  atomic_properites_lda2015 module atomic features.</p>
-</dd></dl>
-
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.periodictable.showfigmatmin">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.periodictable.</code><code class="sig-name descname">showfigmatmin</code><span class="sig-paren">(</span><em class="sig-param">Feature</em><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.periodictable.showfigmatmin" title="Permalink to this definition">¶</a></dt>
-<dd><p>Generates an interactive heatmap with dropdown menu for  atomic_properites_magpie module atomic features.</p>
-</dd></dl>
-
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.periodictable.showfigpymat">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.periodictable.</code><code class="sig-name descname">showfigpymat</code><span class="sig-paren">(</span><em class="sig-param">Feature</em><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.periodictable.showfigpymat" title="Permalink to this definition">¶</a></dt>
-<dd><p>Generates an interactive heatmap with dropdown menu for  atomic_properites_pymat module atomic features.</p>
-</dd></dl>
-
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.periodictable.showfigt">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.periodictable.</code><code class="sig-name descname">showfigt</code><span class="sig-paren">(</span><em class="sig-param">Feature</em><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.periodictable.showfigt" title="Permalink to this definition">¶</a></dt>
-<dd><p>Generates an interactive heatmap with dropdown menu for  atomic_properites_dft module atomic features(Spin= “True”)</p>
-</dd></dl>
-
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.periodictable.showfigwebele">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.periodictable.</code><code class="sig-name descname">showfigwebele</code><span class="sig-paren">(</span><em class="sig-param">Feature</em><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.periodictable.showfigwebele" title="Permalink to this definition">¶</a></dt>
-<dd><p>Generates an interactive heatmap with dropdown menu for  atomic_properites_webele module atomic features.</p>
-</dd></dl>
-
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.periodictable.t">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.periodictable.</code><code class="sig-name descname">t</code><span class="sig-paren">(</span><em class="sig-param">df3</em>, <em class="sig-param">df4</em><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.periodictable.t" title="Permalink to this definition">¶</a></dt>
-<dd><p>Adds atomic_properites_dft module atomic features(Spin= “True”) to previously cleaned pandas dataframe imported from bokeh</p>
-</dd></dl>
-
-<dl class="function">
-<dt id="atomicfeaturespackage.atomicproperties.periodictable.webele">
-<code class="sig-prename descclassname">atomicfeaturespackage.atomicproperties.periodictable.</code><code class="sig-name descname">webele</code><span class="sig-paren">(</span><em class="sig-param">df3</em>, <em class="sig-param">df4</em><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.atomicproperties.periodictable.webele" title="Permalink to this definition">¶</a></dt>
-<dd><p>Adds atomic_properites_webele module atomic features to previously cleaned pandas dataframe imported from bokeh</p>
-</dd></dl>
-
-</div>
-</div>
-
-
-          </div>
-        </div>
-      </div>
-      <div class="clearer"></div>
-    </div>
-    <div class="related" role="navigation" aria-label="related navigation">
-      <h3>Navigation</h3>
-      <ul>
-        <li class="right" style="margin-right: 10px">
-          <a href="genindex.html" title="General Index"
-             >index</a></li>
-        <li class="right" >
-          <a href="py-modindex.html" title="Python Module Index"
-             >modules</a> |</li>
-        <li class="right" >
-          <a href="atomicfeaturespackage.metainfo.html" title="atomicfeaturespackage.metainfo package"
-             >next</a> |</li>
-        <li class="right" >
-          <a href="atomicfeaturespackage.html" title="atomic-features-package package"
-             >previous</a> |</li>
-        <li class="nav-item nav-item-0"><a href="index.html">atomic-features-package  documentation</a> &#187;</li>
-          <li class="nav-item nav-item-1"><a href="atomicfeaturespackage.html" >atomic-features-package package</a> &#187;</li> 
-      </ul>
-    </div>
-    <div class="footer" role="contentinfo">
-        &#169; Copyright 2021, Aakash Naik.
-      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.4.4.
-    </div>
-  </body>
-</html>
\ No newline at end of file
diff --git a/atomicfeaturespackage/docs/_build/html/atomicfeaturespackage.html b/atomicfeaturespackage/docs/_build/html/atomicfeaturespackage.html
deleted file mode 100644
index 1e4f61d..0000000
--- a/atomicfeaturespackage/docs/_build/html/atomicfeaturespackage.html
+++ /dev/null
@@ -1,138 +0,0 @@
-
-
-<!doctype html>
-
-<html xmlns="http://www.w3.org/1999/xhtml">
-  <head>
-    <meta charset="utf-8" />
-    <title>atomic-features-package package &#8212; atomic-features-package  documentation</title>
-    <link rel="stylesheet" href="_static/bizstyle.css" type="text/css" />
-    <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
-    
-    <script id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
-    <script src="_static/jquery.js"></script>
-    <script src="_static/underscore.js"></script>
-    <script src="_static/doctools.js"></script>
-    <script src="_static/language_data.js"></script>
-    <script src="_static/bizstyle.js"></script>
-    <link rel="index" title="Index" href="genindex.html" />
-    <link rel="search" title="Search" href="search.html" />
-    <link rel="next" title="atomicfeaturespackage.atomicproperties package" href="atomicfeaturespackage.atomicproperties.html" />
-    <link rel="prev" title="Description" href="README.html" />
-    <meta name="viewport" content="width=device-width,initial-scale=1.0">
-    <!--[if lt IE 9]>
-    <script src="_static/css3-mediaqueries.js"></script>
-    <![endif]-->
-  </head><body>
-    <div class="related" role="navigation" aria-label="related navigation">
-      <h3>Navigation</h3>
-      <ul>
-        <li class="right" style="margin-right: 10px">
-          <a href="genindex.html" title="General Index"
-             accesskey="I">index</a></li>
-        <li class="right" >
-          <a href="py-modindex.html" title="Python Module Index"
-             >modules</a> |</li>
-        <li class="right" >
-          <a href="atomicfeaturespackage.atomicproperties.html" title="atomicfeaturespackage.atomicproperties package"
-             accesskey="N">next</a> |</li>
-        <li class="right" >
-          <a href="README.html" title="Description"
-             accesskey="P">previous</a> |</li>
-        <li class="nav-item nav-item-0"><a href="index.html">atomic-features-package  documentation</a> &#187;</li> 
-      </ul>
-    </div>
-      <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
-        <div class="sphinxsidebarwrapper">
-  <h3><a href="index.html">Table of Contents</a></h3>
-  <ul>
-<li><a class="reference internal" href="#">atomic-features-package package</a><ul>
-<li><a class="reference internal" href="#subpackages">Subpackages</a></li>
-</ul>
-</li>
-</ul>
-
-  <h4>Previous topic</h4>
-  <p class="topless"><a href="README.html"
-                        title="previous chapter">Description</a></p>
-  <h4>Next topic</h4>
-  <p class="topless"><a href="atomicfeaturespackage.atomicproperties.html"
-                        title="next chapter">atomicfeaturespackage.atomicproperties package</a></p>
-  <div role="note" aria-label="source link">
-    <h3>This Page</h3>
-    <ul class="this-page-menu">
-      <li><a href="_sources/atomicfeaturespackage.rst.txt"
-            rel="nofollow">Show Source</a></li>
-    </ul>
-   </div>
-<div id="searchbox" style="display: none" role="search">
-  <h3 id="searchlabel">Quick search</h3>
-    <div class="searchformwrapper">
-    <form class="search" action="search.html" method="get">
-      <input type="text" name="q" aria-labelledby="searchlabel" />
-      <input type="submit" value="Go" />
-    </form>
-    </div>
-</div>
-<script>$('#searchbox').show(0);</script>
-        </div>
-      </div>
-
-    <div class="document">
-      <div class="documentwrapper">
-        <div class="bodywrapper">
-          <div class="body" role="main">
-            
-  <div class="section" id="atomic-features-package-package">
-<h1>atomic-features-package package<a class="headerlink" href="#atomic-features-package-package" title="Permalink to this headline">¶</a></h1>
-<div class="section" id="subpackages">
-<h2>Subpackages<a class="headerlink" href="#subpackages" title="Permalink to this headline">¶</a></h2>
-<div class="toctree-wrapper compound">
-<ul>
-<li class="toctree-l1"><a class="reference internal" href="atomicfeaturespackage.atomicproperties.html">atomicfeaturespackage.atomicproperties package</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="atomicfeaturespackage.atomicproperties.html#module-atomicfeaturespackage.atomicproperties.atomic_properties_dft">atomicfeaturespackage.atomicproperties.atomic_properties_dft module</a></li>
-<li class="toctree-l2"><a class="reference internal" href="atomicfeaturespackage.atomicproperties.html#module-atomicfeaturespackage.atomicproperties.atomic_properties_lda2015">atomicfeaturespackage.atomicproperties.atomic_properties_lda2015 module</a></li>
-<li class="toctree-l2"><a class="reference internal" href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage-atomicproperties-atomic-properties-matminer-module">atomicfeaturespackage.atomicproperties.atomic_properties_matminer module</a></li>
-<li class="toctree-l2"><a class="reference internal" href="atomicfeaturespackage.atomicproperties.html#module-atomicfeaturespackage.atomicproperties.atomic_properties_pymat">atomicfeaturespackage.atomicproperties.atomic_properties_pymat module</a></li>
-<li class="toctree-l2"><a class="reference internal" href="atomicfeaturespackage.atomicproperties.html#module-atomicfeaturespackage.atomicproperties.periodictable">atomicfeaturespackage.atomicproperties.periodictable module</a></li>
-</ul>
-</li>
-<li class="toctree-l1"><a class="reference internal" href="atomicfeaturespackage.metainfo.html">atomicfeaturespackage.metainfo package</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="atomicfeaturespackage.metainfo.html#module-atomicfeaturespackage.metainfo.metainfo">atomicfeaturespackage.metainfo.metainfo module</a></li>
-</ul>
-</li>
-</ul>
-</div>
-</div>
-</div>
-
-
-          </div>
-        </div>
-      </div>
-      <div class="clearer"></div>
-    </div>
-    <div class="related" role="navigation" aria-label="related navigation">
-      <h3>Navigation</h3>
-      <ul>
-        <li class="right" style="margin-right: 10px">
-          <a href="genindex.html" title="General Index"
-             >index</a></li>
-        <li class="right" >
-          <a href="py-modindex.html" title="Python Module Index"
-             >modules</a> |</li>
-        <li class="right" >
-          <a href="atomicfeaturespackage.atomicproperties.html" title="atomicfeaturespackage.atomicproperties package"
-             >next</a> |</li>
-        <li class="right" >
-          <a href="README.html" title="Description"
-             >previous</a> |</li>
-        <li class="nav-item nav-item-0"><a href="index.html">atomic-features-package  documentation</a> &#187;</li> 
-      </ul>
-    </div>
-    <div class="footer" role="contentinfo">
-        &#169; Copyright 2021, Aakash Naik.
-      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.4.4.
-    </div>
-  </body>
-</html>
\ No newline at end of file
diff --git a/atomicfeaturespackage/docs/_build/html/atomicfeaturespackage.metainfo.html b/atomicfeaturespackage/docs/_build/html/atomicfeaturespackage.metainfo.html
deleted file mode 100644
index a9b18db..0000000
--- a/atomicfeaturespackage/docs/_build/html/atomicfeaturespackage.metainfo.html
+++ /dev/null
@@ -1,1468 +0,0 @@
-
-
-<!doctype html>
-
-<html xmlns="http://www.w3.org/1999/xhtml">
-  <head>
-    <meta charset="utf-8" />
-    <title>atomicfeaturespackage.metainfo package &#8212; atomic-features-package  documentation</title>
-    <link rel="stylesheet" href="_static/bizstyle.css" type="text/css" />
-    <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
-    
-    <script id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
-    <script src="_static/jquery.js"></script>
-    <script src="_static/underscore.js"></script>
-    <script src="_static/doctools.js"></script>
-    <script src="_static/language_data.js"></script>
-    <script src="_static/bizstyle.js"></script>
-    <link rel="index" title="Index" href="genindex.html" />
-    <link rel="search" title="Search" href="search.html" />
-    <link rel="next" title="LICENSE" href="LICENSE.html" />
-    <link rel="prev" title="atomicfeaturespackage.atomicproperties package" href="atomicfeaturespackage.atomicproperties.html" />
-    <meta name="viewport" content="width=device-width,initial-scale=1.0">
-    <!--[if lt IE 9]>
-    <script src="_static/css3-mediaqueries.js"></script>
-    <![endif]-->
-  </head><body>
-    <div class="related" role="navigation" aria-label="related navigation">
-      <h3>Navigation</h3>
-      <ul>
-        <li class="right" style="margin-right: 10px">
-          <a href="genindex.html" title="General Index"
-             accesskey="I">index</a></li>
-        <li class="right" >
-          <a href="py-modindex.html" title="Python Module Index"
-             >modules</a> |</li>
-        <li class="right" >
-          <a href="LICENSE.html" title="LICENSE"
-             accesskey="N">next</a> |</li>
-        <li class="right" >
-          <a href="atomicfeaturespackage.atomicproperties.html" title="atomicfeaturespackage.atomicproperties package"
-             accesskey="P">previous</a> |</li>
-        <li class="nav-item nav-item-0"><a href="index.html">atomic-features-package  documentation</a> &#187;</li>
-          <li class="nav-item nav-item-1"><a href="atomicfeaturespackage.html" accesskey="U">atomic-features-package package</a> &#187;</li> 
-      </ul>
-    </div>
-      <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
-        <div class="sphinxsidebarwrapper">
-  <h3><a href="index.html">Table of Contents</a></h3>
-  <ul>
-<li><a class="reference internal" href="#">atomicfeaturespackage.metainfo package</a><ul>
-<li><a class="reference internal" href="#module-atomicfeaturespackage.metainfo.metainfo">atomicfeaturespackage.metainfo.metainfo module</a></li>
-</ul>
-</li>
-</ul>
-
-  <h4>Previous topic</h4>
-  <p class="topless"><a href="atomicfeaturespackage.atomicproperties.html"
-                        title="previous chapter">atomicfeaturespackage.atomicproperties package</a></p>
-  <h4>Next topic</h4>
-  <p class="topless"><a href="LICENSE.html"
-                        title="next chapter">LICENSE</a></p>
-  <div role="note" aria-label="source link">
-    <h3>This Page</h3>
-    <ul class="this-page-menu">
-      <li><a href="_sources/atomicfeaturespackage.metainfo.rst.txt"
-            rel="nofollow">Show Source</a></li>
-    </ul>
-   </div>
-<div id="searchbox" style="display: none" role="search">
-  <h3 id="searchlabel">Quick search</h3>
-    <div class="searchformwrapper">
-    <form class="search" action="search.html" method="get">
-      <input type="text" name="q" aria-labelledby="searchlabel" />
-      <input type="submit" value="Go" />
-    </form>
-    </div>
-</div>
-<script>$('#searchbox').show(0);</script>
-        </div>
-      </div>
-
-    <div class="document">
-      <div class="documentwrapper">
-        <div class="bodywrapper">
-          <div class="body" role="main">
-            
-  <div class="section" id="atomicfeaturespackage-metainfo-package">
-<h1>atomicfeaturespackage.metainfo package<a class="headerlink" href="#atomicfeaturespackage-metainfo-package" title="Permalink to this headline">¶</a></h1>
-<div class="section" id="module-atomicfeaturespackage.metainfo.metainfo">
-<span id="atomicfeaturespackage-metainfo-metainfo-module"></span><h2>atomicfeaturespackage.metainfo.metainfo module<a class="headerlink" href="#module-atomicfeaturespackage.metainfo.metainfo" title="Permalink to this headline">¶</a></h2>
-<dl class="class">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi">
-<em class="property">class </em><code class="sig-prename descclassname">atomicfeaturespackage.metainfo.metainfo.</code><code class="sig-name descname">atomic_properties_fhi</code><span class="sig-paren">(</span><em class="sig-param">m_def: Optional[nomad.metainfo.metainfo.Section] = None</em>, <em class="sig-param">m_resource: nomad.metainfo.metainfo.MResource = None</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi" title="Permalink to this definition">¶</a></dt>
-<dd><dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_ea">
-<code class="sig-name descname">atomic_ea</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_ea" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the atomic electron affinity calculated 
-from energy difference</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_ea_by_half_charged_homo">
-<code class="sig-name descname">atomic_ea_by_half_charged_homo</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_ea_by_half_charged_homo" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the half charged atomic electron affinity 
-of HOMO</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_element_symbol">
-<code class="sig-name descname">atomic_element_symbol</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_element_symbol" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the symbol of element as per periodic table</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_hfomo">
-<code class="sig-name descname">atomic_hfomo</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_hfomo" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the energy of highest of fully filled molecular orbital</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_hpomo">
-<code class="sig-name descname">atomic_hpomo</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_hpomo" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the energy of highest partially filled molecular orbital</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_ip">
-<code class="sig-name descname">atomic_ip</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_ip" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the atomic ionization potential calculated  from energy difference</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_ip_by_half_charged_homo">
-<code class="sig-name descname">atomic_ip_by_half_charged_homo</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_ip_by_half_charged_homo" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the half charged atomic ionization potential 
-of HOMO</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_lfumo">
-<code class="sig-name descname">atomic_lfumo</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_lfumo" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the energy of lowest fully filled molecular orbital</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_lpumo">
-<code class="sig-name descname">atomic_lpumo</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_lpumo" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the energy lowest partially filled molecular orbital</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_number">
-<code class="sig-name descname">atomic_number</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_number" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the number of protons found in nucleus</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_d">
-<code class="sig-name descname">atomic_r_d</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_d" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the d orbital atomic radii</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_d_05">
-<code class="sig-name descname">atomic_r_d_05</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_d_05" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the d orbital atomic radii of +0.5 charged</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_d_1">
-<code class="sig-name descname">atomic_r_d_1</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_d_1" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the d orbital atomic radii of +1 charged</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_d_neg_05">
-<code class="sig-name descname">atomic_r_d_neg_05</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_d_neg_05" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the d orbital atomic radii of -0.5 charged</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_d_neg_1">
-<code class="sig-name descname">atomic_r_d_neg_1</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_d_neg_1" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the d orbital atomic radii of -1 charged</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_p">
-<code class="sig-name descname">atomic_r_p</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_p" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the p orbital atomic radii</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_p_05">
-<code class="sig-name descname">atomic_r_p_05</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_p_05" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the p orbital atomic radii of +0.5 charged</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_p_1">
-<code class="sig-name descname">atomic_r_p_1</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_p_1" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the p orbital atomic radii of +1 charged</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_p_neg_05">
-<code class="sig-name descname">atomic_r_p_neg_05</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_p_neg_05" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the p orbital atomic radii of -0.5 charged</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_p_neg_1">
-<code class="sig-name descname">atomic_r_p_neg_1</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_p_neg_1" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the p orbital atomic radii of -1 charged</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_s">
-<code class="sig-name descname">atomic_r_s</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_s" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the s orbital atomic radii</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_s_05">
-<code class="sig-name descname">atomic_r_s_05</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_s_05" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the s orbital atomic radii of +0.5 charged</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_s_1">
-<code class="sig-name descname">atomic_r_s_1</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_s_1" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the s orbital atomic radii of +1 charged</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_s_neg_05">
-<code class="sig-name descname">atomic_r_s_neg_05</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_s_neg_05" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the s orbital atomic radii of -0.5 charged</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_s_neg_1">
-<code class="sig-name descname">atomic_r_s_neg_1</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_s_neg_1" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the s orbital atomic radii of -1 charged</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_val">
-<code class="sig-name descname">atomic_r_val</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_val" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the atomic radii of element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_val_05">
-<code class="sig-name descname">atomic_r_val_05</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_val_05" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the atomic radii of +0.5 charged</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_val_1">
-<code class="sig-name descname">atomic_r_val_1</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_val_1" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the atomic radii of +1 charged</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_val_neg_05">
-<code class="sig-name descname">atomic_r_val_neg_05</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_val_neg_05" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the atomic radii of -0.5 charged</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_val_neg_1">
-<code class="sig-name descname">atomic_r_val_neg_1</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_val_neg_1" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the atomic radii of -1 charged</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.section_fhi_metadata">
-<code class="sig-name descname">section_fhi_metadata</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.section_fhi_metadata" title="Permalink to this definition">¶</a></dt>
-<dd><p>This section contains metadata information of several atomic features accessible from FHI as source
-<a class="reference external" href="https://gitlab.mpcdf.mpg.de/nomad-lab/atomic_features_fhi_aims_really_tight/-/tree/master/csv">https://gitlab.mpcdf.mpg.de/nomad-lab/atomic_features_fhi_aims_really_tight/-/tree/master/csv</a></p>
-<p>Note : If spin settings are set to “TRUE”, then first element of of any atomic property for eg: atomic_r_s[0] corresponds to spin up configuration and atomic_r_s[1] corresponds to spin down configuration. This is consistent for all the atomic properties defined in this class.</p>
-</dd></dl>
-
-</dd></dl>
-
-<dl class="class">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015">
-<em class="property">class </em><code class="sig-prename descclassname">atomicfeaturespackage.metainfo.metainfo.</code><code class="sig-name descname">atomic_properties_lda2015</code><span class="sig-paren">(</span><em class="sig-param">m_def: Optional[nomad.metainfo.metainfo.Section] = None</em>, <em class="sig-param">m_resource: nomad.metainfo.metainfo.MResource = None</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015" title="Permalink to this definition">¶</a></dt>
-<dd><dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_ea">
-<code class="sig-name descname">atomic_ea</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_ea" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the atomic electron affinity calculated 
-from energy difference</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_element_symbol">
-<code class="sig-name descname">atomic_element_symbol</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_element_symbol" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the symbol of element as per periodic table</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_homo">
-<code class="sig-name descname">atomic_homo</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_homo" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the energy of highest fully filled molecular orbital</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_ip">
-<code class="sig-name descname">atomic_ip</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_ip" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the atomic ionization potential calculated  from energy difference</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_lumo">
-<code class="sig-name descname">atomic_lumo</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_lumo" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the energy of lowest fully filled molecular orbital</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_number">
-<code class="sig-name descname">atomic_number</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_number" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the number of protons found in nucleus</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_period">
-<code class="sig-name descname">atomic_period</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_period" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the period number to which the element belongs in periodic table</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_r_d">
-<code class="sig-name descname">atomic_r_d</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_r_d" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the d orbital atomic radii</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_r_p">
-<code class="sig-name descname">atomic_r_p</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_r_p" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the p orbital atomic radii</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_r_s">
-<code class="sig-name descname">atomic_r_s</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_r_s" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the s orbital atomic radii</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.section_lda2015_metadata">
-<code class="sig-name descname">section_lda2015_metadata</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.section_lda2015_metadata" title="Permalink to this definition">¶</a></dt>
-<dd><p>This section contains metadata schema definition of several atomic features accessible from lda2015 paper as source</p>
-</dd></dl>
-
-</dd></dl>
-
-<dl class="class">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer">
-<em class="property">class </em><code class="sig-prename descclassname">atomicfeaturespackage.metainfo.metainfo.</code><code class="sig-name descname">atomic_properties_matminer</code><span class="sig-paren">(</span><em class="sig-param">m_def: Optional[nomad.metainfo.metainfo.Section] = None</em>, <em class="sig-param">m_resource: nomad.metainfo.metainfo.MResource = None</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer" title="Permalink to this definition">¶</a></dt>
-<dd><dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ICSD_vol">
-<code class="sig-name descname">atomic_ICSD_vol</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ICSD_vol" title="Permalink to this definition">¶</a></dt>
-<dd><p>Volume per atom of ICSD phae at STP</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_cpmass">
-<code class="sig-name descname">atomic_cpmass</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_cpmass" title="Permalink to this definition">¶</a></dt>
-<dd><p>Specific heat capacity at STP</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_cpmolar">
-<code class="sig-name descname">atomic_cpmolar</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_cpmolar" title="Permalink to this definition">¶</a></dt>
-<dd><p>Molar heat capacity at STP</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_density">
-<code class="sig-name descname">atomic_density</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_density" title="Permalink to this definition">¶</a></dt>
-<dd><p>Density of element at STP : g/L</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ea">
-<code class="sig-name descname">atomic_ea</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ea" title="Permalink to this definition">¶</a></dt>
-<dd><p>Electron affinitiy</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_element_symbol">
-<code class="sig-name descname">atomic_element_symbol</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_element_symbol" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the symbol of element as per periodic table</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_en">
-<code class="sig-name descname">atomic_en</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_en" title="Permalink to this definition">¶</a></dt>
-<dd><p>Pauling electronegativity</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_en_allen">
-<code class="sig-name descname">atomic_en_allen</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_en_allen" title="Permalink to this definition">¶</a></dt>
-<dd><p>Allen electronegativity</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_hfu">
-<code class="sig-name descname">atomic_hfu</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_hfu" title="Permalink to this definition">¶</a></dt>
-<dd><p>Enthalpy of fusion for elements at their melting temperatures</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_hhip">
-<code class="sig-name descname">atomic_hhip</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_hhip" title="Permalink to this definition">¶</a></dt>
-<dd><p>Herfindahl-Hirschman Index (HHI) production values</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_hhir">
-<code class="sig-name descname">atomic_hhir</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_hhir" title="Permalink to this definition">¶</a></dt>
-<dd><p>Herfindahl-Hirschman Index (HHI) reserves values</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_hvap">
-<code class="sig-name descname">atomic_hvap</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_hvap" title="Permalink to this definition">¶</a></dt>
-<dd><p>Enthalpy of vaporization for elements at their boiling temperatures</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ie">
-<code class="sig-name descname">atomic_ie</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ie" title="Permalink to this definition">¶</a></dt>
-<dd><p>Energy to remove the 1st,2nd,3rd..  electron from an element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ie_1">
-<code class="sig-name descname">atomic_ie_1</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ie_1" title="Permalink to this definition">¶</a></dt>
-<dd><p>Energy to remove the first electron from an element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ie_2">
-<code class="sig-name descname">atomic_ie_2</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ie_2" title="Permalink to this definition">¶</a></dt>
-<dd><p>Energy to remove the second electron from an element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_isalkali">
-<code class="sig-name descname">atomic_isalkali</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_isalkali" title="Permalink to this definition">¶</a></dt>
-<dd><p>Boolean value of whether an element is an alkali or alkali earth metal</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_isdblock">
-<code class="sig-name descname">atomic_isdblock</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_isdblock" title="Permalink to this definition">¶</a></dt>
-<dd><p>Boolean value of whether an element is a d-block metal</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_isfblock">
-<code class="sig-name descname">atomic_isfblock</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_isfblock" title="Permalink to this definition">¶</a></dt>
-<dd><p>Boolean value of whether an element is an f-block metal</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ismetal">
-<code class="sig-name descname">atomic_ismetal</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ismetal" title="Permalink to this definition">¶</a></dt>
-<dd><p>Boolean value of whether an element is a metal</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ismetalloid">
-<code class="sig-name descname">atomic_ismetalloid</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ismetalloid" title="Permalink to this definition">¶</a></dt>
-<dd><p>Boolean value of whether an element is a metalloid</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_isnonmetal">
-<code class="sig-name descname">atomic_isnonmetal</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_isnonmetal" title="Permalink to this definition">¶</a></dt>
-<dd><p>Boolean value of whether an element is a nonmetal</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ndunf">
-<code class="sig-name descname">atomic_ndunf</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ndunf" title="Permalink to this definition">¶</a></dt>
-<dd><p>Property: Number of unfilled d valence orbitals
-Notes: Number of unoccupied orbitals = 0 if shell unoccupied, Maximum-Filled if occupied</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ndval">
-<code class="sig-name descname">atomic_ndval</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ndval" title="Permalink to this definition">¶</a></dt>
-<dd><p>Number of filled d valence orbitals</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_nfunf">
-<code class="sig-name descname">atomic_nfunf</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_nfunf" title="Permalink to this definition">¶</a></dt>
-<dd><p>Property: Number of unfilled f valence orbitals
-Notes: Number of unoccupied orbitals = 0 if shell unoccupied, Maximum-Filled if occupied</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_nfval">
-<code class="sig-name descname">atomic_nfval</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_nfval" title="Permalink to this definition">¶</a></dt>
-<dd><p>Number of filled f valence orbitals</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_npunf">
-<code class="sig-name descname">atomic_npunf</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_npunf" title="Permalink to this definition">¶</a></dt>
-<dd><p>Number of unfilled p valence orbitals
-Notes: Number of unoccupied orbitals = 0 if shell unoccupied, Maximum-Filled if occupied</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_npval">
-<code class="sig-name descname">atomic_npval</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_npval" title="Permalink to this definition">¶</a></dt>
-<dd><p>Number of filled p valence orbitals</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_nsunf">
-<code class="sig-name descname">atomic_nsunf</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_nsunf" title="Permalink to this definition">¶</a></dt>
-<dd><p>Number of unfilled s valence orbitals
-Notes: Number of unoccupied orbitals = 0 if shell unoccupied, Maximum-Filled if occupied</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_nsval">
-<code class="sig-name descname">atomic_nsval</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_nsval" title="Permalink to this definition">¶</a></dt>
-<dd><p>Number of filled s valence orbitals</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_number">
-<code class="sig-name descname">atomic_number</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_number" title="Permalink to this definition">¶</a></dt>
-<dd><p>Atomic number</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_nunf">
-<code class="sig-name descname">atomic_nunf</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_nunf" title="Permalink to this definition">¶</a></dt>
-<dd><p>Number of unfilled valence orbitals 
-Notes: Number of unoccupied orbitals = 0 if shell unoccupied, Maximum-Filled if occupied</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_nval">
-<code class="sig-name descname">atomic_nval</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_nval" title="Permalink to this definition">¶</a></dt>
-<dd><p>Number of valence electrons</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_oxstates">
-<code class="sig-name descname">atomic_oxstates</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_oxstates" title="Permalink to this definition">¶</a></dt>
-<dd><p>Observed oxidation states for each element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_phi">
-<code class="sig-name descname">atomic_phi</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_phi" title="Permalink to this definition">¶</a></dt>
-<dd><p>Adjusted work function (used in the Miedema’s model)</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_pol">
-<code class="sig-name descname">atomic_pol</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_pol" title="Permalink to this definition">¶</a></dt>
-<dd><p>Static average electric dipole polarizability : 10^-24</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_pp_r_d">
-<code class="sig-name descname">atomic_pp_r_d</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_pp_r_d" title="Permalink to this definition">¶</a></dt>
-<dd><p>Psuedopotential radius of d orbital : a.u</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_pp_r_p">
-<code class="sig-name descname">atomic_pp_r_p</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_pp_r_p" title="Permalink to this definition">¶</a></dt>
-<dd><p>Psuedopotential radius of p orbital : a.u</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_pp_r_pi">
-<code class="sig-name descname">atomic_pp_r_pi</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_pp_r_pi" title="Permalink to this definition">¶</a></dt>
-<dd><p>Absolute value of the different between the radii of s and 
-p orbitals : a.u</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_pp_r_s">
-<code class="sig-name descname">atomic_pp_r_s</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_pp_r_s" title="Permalink to this definition">¶</a></dt>
-<dd><p>Psuedopotential radius of s orbital : a.u</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_pp_r_sig">
-<code class="sig-name descname">atomic_pp_r_sig</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_pp_r_sig" title="Permalink to this definition">¶</a></dt>
-<dd><p>Sum of the radii of s and p orbitals : a.u</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_radius">
-<code class="sig-name descname">atomic_radius</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_radius" title="Permalink to this definition">¶</a></dt>
-<dd><p>Atomic radius</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_sgn">
-<code class="sig-name descname">atomic_sgn</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_sgn" title="Permalink to this definition">¶</a></dt>
-<dd><p>Space group of T=0K ground state structure 
-Source: Only structures from the ICSD were evaluated  Pm used OQMD groundstate in Spacegroup 194,
-which is only 4 meV/atom below 166. No ICSD structure</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_vdw_radius">
-<code class="sig-name descname">atomic_vdw_radius</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_vdw_radius" title="Permalink to this definition">¶</a></dt>
-<dd><p>Van der Waals radius</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_volume">
-<code class="sig-name descname">atomic_volume</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_volume" title="Permalink to this definition">¶</a></dt>
-<dd><p>Volume of an atom of each element : A^3 / atom</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_weight">
-<code class="sig-name descname">atomic_weight</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_weight" title="Permalink to this definition">¶</a></dt>
-<dd><p>Atomic weight</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ws3">
-<code class="sig-name descname">atomic_ws3</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ws3" title="Permalink to this definition">¶</a></dt>
-<dd><p>Electron density at surface of Wigner-Sietz cell. Used in Miedema’s model</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.boiling_temp">
-<code class="sig-name descname">boiling_temp</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.boiling_temp" title="Permalink to this definition">¶</a></dt>
-<dd><p>Boiling temperature</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.bulk_modulus">
-<code class="sig-name descname">bulk_modulus</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.bulk_modulus" title="Permalink to this definition">¶</a></dt>
-<dd><p>Bulk modulus</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.covalent_radius">
-<code class="sig-name descname">covalent_radius</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.covalent_radius" title="Permalink to this definition">¶</a></dt>
-<dd><p>Covalent radius of each element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.gs_bandgap">
-<code class="sig-name descname">gs_bandgap</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.gs_bandgap" title="Permalink to this definition">¶</a></dt>
-<dd><p>DFT bandgap energy of T=0K ground state</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.gs_bcclatparam">
-<code class="sig-name descname">gs_bcclatparam</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.gs_bcclatparam" title="Permalink to this definition">¶</a></dt>
-<dd><p>Estimated BCC lattice parameter based on the DFT volume of the 
-OQMD ground state for each element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.gs_energy_pa">
-<code class="sig-name descname">gs_energy_pa</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.gs_energy_pa" title="Permalink to this definition">¶</a></dt>
-<dd><p>DFT energy per atom (raw VASP value) of T=0K ground state : eV/atom</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.gs_fcclatparam">
-<code class="sig-name descname">gs_fcclatparam</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.gs_fcclatparam" title="Permalink to this definition">¶</a></dt>
-<dd><p>Estimated FCC lattice parameter based on the DFT volume of the 
-OQMD ground state for each element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.gs_mag_mom">
-<code class="sig-name descname">gs_mag_mom</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.gs_mag_mom" title="Permalink to this definition">¶</a></dt>
-<dd><p>DFT magnetic momenet of T=0K ground state</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.gs_volume_pa">
-<code class="sig-name descname">gs_volume_pa</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.gs_volume_pa" title="Permalink to this definition">¶</a></dt>
-<dd><p>DFT volume per atom of T=0K ground state : Angs^3/atom</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.melting_point">
-<code class="sig-name descname">melting_point</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.melting_point" title="Permalink to this definition">¶</a></dt>
-<dd><p>Melting temperature of element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.mendeleev_no">
-<code class="sig-name descname">mendeleev_no</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.mendeleev_no" title="Permalink to this definition">¶</a></dt>
-<dd><p>Mendeleev Number(position on the periodic table, counting columnwise 
-from H)</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.micracle_radius">
-<code class="sig-name descname">micracle_radius</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.micracle_radius" title="Permalink to this definition">¶</a></dt>
-<dd><p>Assessed radii of elements in metallic glass structures</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.molar_volume">
-<code class="sig-name descname">molar_volume</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.molar_volume" title="Permalink to this definition">¶</a></dt>
-<dd><p>Molar Volume</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.periodict_column">
-<code class="sig-name descname">periodict_column</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.periodict_column" title="Permalink to this definition">¶</a></dt>
-<dd><p>Column on periodic table 
-Notes: Column of all RE elements is listed as 3</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.periodict_row">
-<code class="sig-name descname">periodict_row</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.periodict_row" title="Permalink to this definition">¶</a></dt>
-<dd><p>Row on periodic table</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.section_matmin_metadata">
-<code class="sig-name descname">section_matmin_metadata</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.section_matmin_metadata" title="Permalink to this definition">¶</a></dt>
-<dd><p>This section contains metadata schema definition of several atomic features accessible from Magpie as source
-<a class="reference external" href="https://github.com/hackingmaterials/matminer/tree/master/matminer/utils/data_files/magpie_elementdata">https://github.com/hackingmaterials/matminer/tree/master/matminer/utils/data_files/magpie_elementdata</a></p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.shear_mod">
-<code class="sig-name descname">shear_mod</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.shear_mod" title="Permalink to this definition">¶</a></dt>
-<dd><p>Shear modulus</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.thermal_cond">
-<code class="sig-name descname">thermal_cond</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.thermal_cond" title="Permalink to this definition">¶</a></dt>
-<dd><p>Thermal conductivity</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.thermal_cond_log">
-<code class="sig-name descname">thermal_cond_log</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.thermal_cond_log" title="Permalink to this definition">¶</a></dt>
-<dd><p>Logarithmic Thermal conductivity</p>
-</dd></dl>
-
-</dd></dl>
-
-<dl class="class">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat">
-<em class="property">class </em><code class="sig-prename descclassname">atomicfeaturespackage.metainfo.metainfo.</code><code class="sig-name descname">atomic_properties_pymat</code><span class="sig-paren">(</span><em class="sig-param">m_def: Optional[nomad.metainfo.metainfo.Section] = None</em>, <em class="sig-param">m_resource: nomad.metainfo.metainfo.MResource = None</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat" title="Permalink to this definition">¶</a></dt>
-<dd><dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_element_name">
-<code class="sig-name descname">atomic_element_name</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_element_name" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides name of the full long name of the element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_element_symbol">
-<code class="sig-name descname">atomic_element_symbol</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_element_symbol" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the symbol of element as per periodic table</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_mass">
-<code class="sig-name descname">atomic_mass</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_mass" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides atomic mass for the element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_number">
-<code class="sig-name descname">atomic_number</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_number" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the number of protons found in nucleus</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_orbitals">
-<code class="sig-name descname">atomic_orbitals</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_orbitals" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides energy of the atomic orbitals as a dict</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_radius">
-<code class="sig-name descname">atomic_radius</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_radius" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides atomic radius for the element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_radius_calculated">
-<code class="sig-name descname">atomic_radius_calculated</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_radius_calculated" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides Calculated atomic radius for the element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_refelctivity">
-<code class="sig-name descname">atomic_refelctivity</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_refelctivity" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the Reflectivity of the element : % Unit</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_refractive_index">
-<code class="sig-name descname">atomic_refractive_index</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_refractive_index" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the Refractice index of the element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.boiling_point">
-<code class="sig-name descname">boiling_point</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.boiling_point" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides Boiling point to selected element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.brinell_hardness">
-<code class="sig-name descname">brinell_hardness</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.brinell_hardness" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides Brinell Hardness of selected element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.bulk_modulus">
-<code class="sig-name descname">bulk_modulus</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.bulk_modulus" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides Bulk modulus of selected element : GPa Unit</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.coeff_olte">
-<code class="sig-name descname">coeff_olte</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.coeff_olte" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides Coefficient of linear thermal expansion (10e-6)</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.common_ox_states">
-<code class="sig-name descname">common_ox_states</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.common_ox_states" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the list of common oxidation states in which the 
-element is found</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.critical_temperature">
-<code class="sig-name descname">critical_temperature</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.critical_temperature" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the Critical temperature of element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.density_of_solid">
-<code class="sig-name descname">density_of_solid</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.density_of_solid" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the density of solid phase</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.electrical_resistivity">
-<code class="sig-name descname">electrical_resistivity</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.electrical_resistivity" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the electrical resistivity of element(x10e-8)</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.electronic_structure">
-<code class="sig-name descname">electronic_structure</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.electronic_structure" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the Electronic structure as string, with only valence electrons</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.icsd_oxd_states">
-<code class="sig-name descname">icsd_oxd_states</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.icsd_oxd_states" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides list(python) of all oxidation states with 
-at least 10 instances in ICSD database AND at least 1% of entries for that element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.ionic_radii">
-<code class="sig-name descname">ionic_radii</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.ionic_radii" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides All ionic radii of the element as a dict of {oxidation state: ionic radii}</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.ionic_radii_hs">
-<code class="sig-name descname">ionic_radii_hs</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.ionic_radii_hs" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the Ionic radius of specie</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.ionic_radii_ls">
-<code class="sig-name descname">ionic_radii_ls</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.ionic_radii_ls" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the Ionic radius of specie</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.iupac_ordering">
-<code class="sig-name descname">iupac_ordering</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.iupac_ordering" title="Permalink to this definition">¶</a></dt>
-<dd><p>Ordering according to Table VI of “Nomenclature of Inorganic Chemistry
-(IUPAC Recommendations 2005)”. This ordering effectively follows the groups and rows of the periodic table, except the 
-Lanthanides, Actanides and hydrogen</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.liquid_range">
-<code class="sig-name descname">liquid_range</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.liquid_range" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the liquid range temp. of the element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.max_oxd_state">
-<code class="sig-name descname">max_oxd_state</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.max_oxd_state" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the Maximum oxidation state for element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.melting_point">
-<code class="sig-name descname">melting_point</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.melting_point" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the Melting point of the element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.mendeleev_no">
-<code class="sig-name descname">mendeleev_no</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.mendeleev_no" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the Mendeleev number from definition given by 
-Pettifor, D. G. (1984). A chemical scale for crystal-structure maps. Solid State Communications, 51 (1), 31-34</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.metallic_radius">
-<code class="sig-name descname">metallic_radius</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.metallic_radius" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the Metallic radius of the element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.min_oxd_state">
-<code class="sig-name descname">min_oxd_state</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.min_oxd_state" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the Minimum oxidation state for element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.mineral_hardness">
-<code class="sig-name descname">mineral_hardness</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.mineral_hardness" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the Mineral Hardness of the element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.molar_volume">
-<code class="sig-name descname">molar_volume</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.molar_volume" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the Molar volume of the element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.nmr_quadrapole_mom">
-<code class="sig-name descname">nmr_quadrapole_mom</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.nmr_quadrapole_mom" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides a dictionary of the nuclear electric 
-quadrupole moment in units of e*millibarns for various isotopes</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.oxidation_states">
-<code class="sig-name descname">oxidation_states</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.oxidation_states" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the python list of all known oxidation states</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.poisson_ratio">
-<code class="sig-name descname">poisson_ratio</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.poisson_ratio" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the Poisson’s ratio of the element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.rigidity_modulus">
-<code class="sig-name descname">rigidity_modulus</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.rigidity_modulus" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the  Rigidity modulus of the element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.section_pymat_metadata">
-<code class="sig-name descname">section_pymat_metadata</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.section_pymat_metadata" title="Permalink to this definition">¶</a></dt>
-<dd><p>This section contains metadata schema definition of several atomic features accessible from pymatgen as source 
-<a class="reference external" href="https://github.com/materialsproject/pymatgen/blob/master/pymatgen/core/periodic_table.json">https://github.com/materialsproject/pymatgen/blob/master/pymatgen/core/periodic_table.json</a></p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.shannon_radii">
-<code class="sig-name descname">shannon_radii</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.shannon_radii" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the (python) dictionary (key-value pairs) Shannon radius for specie in the different environments
-Oxdiation_no : -4…6
-cn: Coordination using roman letters. Values are I-IX, as well as IIIPY, IVPY and IVSQ.
-spin: Some species have different radii for different spins. One can get specific values using “High Spin” or”Low Spin”. 
-If no spin data is available a blank-space is used “”. If only one spin data is available, it is returned and this spin parameter is ignored.
-radius_type: Either “crystal” or “ionic”
-typical dict would have key in specific format “Oxdiation_no.cn.spin.crystal_radius”</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.supercond_temp">
-<code class="sig-name descname">supercond_temp</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.supercond_temp" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the  Superconduction temperature of the element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.thermal_cond">
-<code class="sig-name descname">thermal_cond</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.thermal_cond" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the Thermal conductivity of the element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.van_der_waals_rad">
-<code class="sig-name descname">van_der_waals_rad</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.van_der_waals_rad" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the Van der Waals radius for the element. This is the 
-empirical value(<a class="reference external" href="http://en.wikipedia.org/wiki/Atomic_radii_of_the_elements_(data_page">http://en.wikipedia.org/wiki/Atomic_radii_of_the_elements_(data_page</a>))</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.velocity_of_sound">
-<code class="sig-name descname">velocity_of_sound</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.velocity_of_sound" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the Velocity of sound in the element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.vickers_hardness">
-<code class="sig-name descname">vickers_hardness</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.vickers_hardness" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the Vicker’s hardness of the element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.x">
-<code class="sig-name descname">x</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.x" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the Pauling electronegativity. Elements without an electronegativity
-number are assigned a value of zero by default</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.youngs_modulus">
-<code class="sig-name descname">youngs_modulus</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.youngs_modulus" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the Young’s modulus of the element</p>
-</dd></dl>
-
-</dd></dl>
-
-<dl class="class">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele">
-<em class="property">class </em><code class="sig-prename descclassname">atomicfeaturespackage.metainfo.metainfo.</code><code class="sig-name descname">atomic_properties_webele</code><span class="sig-paren">(</span><em class="sig-param">m_def: Optional[nomad.metainfo.metainfo.Section] = None</em>, <em class="sig-param">m_resource: nomad.metainfo.metainfo.MResource = None</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele" title="Permalink to this definition">¶</a></dt>
-<dd><dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_cellparam">
-<code class="sig-name descname">atomic_cellparam</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_cellparam" title="Permalink to this definition">¶</a></dt>
-<dd><p>Returns dict of cell parameters of 
-elemental solid</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_ea">
-<code class="sig-name descname">atomic_ea</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_ea" title="Permalink to this definition">¶</a></dt>
-<dd><p>Electron affinitiy</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_ebe">
-<code class="sig-name descname">atomic_ebe</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_ebe" title="Permalink to this definition">¶</a></dt>
-<dd><p>Returns electron binding energies for atom as a dict</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_element_symbol">
-<code class="sig-name descname">atomic_element_symbol</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_element_symbol" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the symbol of element as per periodic 
-table</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_en">
-<code class="sig-name descname">atomic_en</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_en" title="Permalink to this definition">¶</a></dt>
-<dd><p>All values are quoted on the Pauling scale.
-Returns types of electronegativity with its values as a dict.</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_en_allen">
-<code class="sig-name descname">atomic_en_allen</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_en_allen" title="Permalink to this definition">¶</a></dt>
-<dd><p>All values are quoted on the Pauling scale.
-Returns Allen electronegativity</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_en_allredroch">
-<code class="sig-name descname">atomic_en_allredroch</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_en_allredroch" title="Permalink to this definition">¶</a></dt>
-<dd><p>Values are quoted on the Pauling scale.
-Returns Allred Rochow electronegativity</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_en_paul">
-<code class="sig-name descname">atomic_en_paul</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_en_paul" title="Permalink to this definition">¶</a></dt>
-<dd><p>Values are quoted on the Pauling scale.
-Returns Pauling electronegativity</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_en_sanderson">
-<code class="sig-name descname">atomic_en_sanderson</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_en_sanderson" title="Permalink to this definition">¶</a></dt>
-<dd><p>Values are quoted on the Pauling scale.
-Returns Sanderson electronegativity</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_enc">
-<code class="sig-name descname">atomic_enc</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_enc" title="Permalink to this definition">¶</a></dt>
-<dd><p>Returns “Clementi-Raimondi” effective nuclear charges of 
-atoms as dict, Zeff</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_hatm">
-<code class="sig-name descname">atomic_hatm</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_hatm" title="Permalink to this definition">¶</a></dt>
-<dd><p>The enthalpy change that accompanies the total 
-separation of all atoms in a chemical substance</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_hfu">
-<code class="sig-name descname">atomic_hfu</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_hfu" title="Permalink to this definition">¶</a></dt>
-<dd><p>Enthalpy of fusion for elements at their 
-melting temperatures</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_hvap">
-<code class="sig-name descname">atomic_hvap</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_hvap" title="Permalink to this definition">¶</a></dt>
-<dd><p>Enthalpy of vaporization for elements at 
-their boiling temperatures</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_ie">
-<code class="sig-name descname">atomic_ie</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_ie" title="Permalink to this definition">¶</a></dt>
-<dd><p>Returns ionization energies of the atoms as a dict, 
-Units : Enthalpy / kJ mol‑1</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_ionic_radii">
-<code class="sig-name descname">atomic_ionic_radii</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_ionic_radii" title="Permalink to this definition">¶</a></dt>
-<dd><p>Returns Shannon ionic radii with ion as key 
-and cordination number,radii in pm as dict</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_nat_iso">
-<code class="sig-name descname">atomic_nat_iso</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_nat_iso" title="Permalink to this definition">¶</a></dt>
-<dd><p>Returns naturally occurring isotopes data as dict</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_nmr">
-<code class="sig-name descname">atomic_nmr</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_nmr" title="Permalink to this definition">¶</a></dt>
-<dd><p>Returns NMR properties data as dict</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_orbital_radii">
-<code class="sig-name descname">atomic_orbital_radii</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_orbital_radii" title="Permalink to this definition">¶</a></dt>
-<dd><p>Returns calculated values of valence shell 
-orbital radii (Rmax) as dict, Units : Atomic unit lengths</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_rad_iso">
-<code class="sig-name descname">atomic_rad_iso</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_rad_iso" title="Permalink to this definition">¶</a></dt>
-<dd><p>Returns radio isotope data as dict</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_radius">
-<code class="sig-name descname">atomic_radius</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_radius" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides atomic radius for the element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_radius_calculated">
-<code class="sig-name descname">atomic_radius_calculated</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_radius_calculated" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides Calculated atomic radius for the 
-element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_spacegroup">
-<code class="sig-name descname">atomic_spacegroup</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_spacegroup" title="Permalink to this definition">¶</a></dt>
-<dd><p>Returns Space group of elemental solid</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_spacegroupnum">
-<code class="sig-name descname">atomic_spacegroupnum</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_spacegroupnum" title="Permalink to this definition">¶</a></dt>
-<dd><p>Returns Space group number of elemental solid</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_structure">
-<code class="sig-name descname">atomic_structure</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_structure" title="Permalink to this definition">¶</a></dt>
-<dd><p>Returns structure type of elemental solid</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_thermdata">
-<code class="sig-name descname">atomic_thermdata</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_thermdata" title="Permalink to this definition">¶</a></dt>
-<dd><p>Returns a dictionary of few thermodynamic data with keys as its elemental state.
-Units of the properties are as follows:
-ΔfH°: kJ mol‑1</p>
-<p>ΔfG°: kJ mol‑1</p>
-<p>S°: J K‑1 mol‑1</p>
-<p>CpH: J K‑1 mol‑1</p>
-<p>H°298.15‑H°0: kJ mol‑1</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.boiling_point">
-<code class="sig-name descname">boiling_point</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.boiling_point" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides Boiling point to 
-selected element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.brinell_hardness">
-<code class="sig-name descname">brinell_hardness</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.brinell_hardness" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides Brinell Hardness of the element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.bulk_mod">
-<code class="sig-name descname">bulk_mod</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.bulk_mod" title="Permalink to this definition">¶</a></dt>
-<dd><p>The bulk modulus refers to the ratio of pressure to the decrease in volume. 
-This is the inverse of compressibility</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.coeff_of_lte">
-<code class="sig-name descname">coeff_of_lte</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.coeff_of_lte" title="Permalink to this definition">¶</a></dt>
-<dd><p>The coefficient of linear thermal expansion is the ratio of
-the change in length per degree K to the length at 273 K(10e6)</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.covalent_rad">
-<code class="sig-name descname">covalent_rad</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.covalent_rad" title="Permalink to this definition">¶</a></dt>
-<dd><p>Covalent radius of atom (2008)</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.covalent_rad_emp">
-<code class="sig-name descname">covalent_rad_emp</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.covalent_rad_emp" title="Permalink to this definition">¶</a></dt>
-<dd><p>Covalent radius of atom</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.covalent_radius_mol">
-<code class="sig-name descname">covalent_radius_mol</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.covalent_radius_mol" title="Permalink to this definition">¶</a></dt>
-<dd><p>Returns single/double/triple bond covalent radii using specific group 
-valencies and oxidation numbers of element as dict</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.critical_temperature">
-<code class="sig-name descname">critical_temperature</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.critical_temperature" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the Critical temperature of 
-element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.density_of_solid">
-<code class="sig-name descname">density_of_solid</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.density_of_solid" title="Permalink to this definition">¶</a></dt>
-<dd><p>Density refers to the mass contained within a unit 
-volume under specified conditions. Data given here refer to the solid</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.electrical_resist">
-<code class="sig-name descname">electrical_resist</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.electrical_resist" title="Permalink to this definition">¶</a></dt>
-<dd><p>The electrical resistivity, or specific resistance, ρ, 
-is the resistance between the opposite faces of a metre cube of a material(10e-8)</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.liquid_range">
-<code class="sig-name descname">liquid_range</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.liquid_range" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the liquid range temp. 
-of the element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.melting_point">
-<code class="sig-name descname">melting_point</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.melting_point" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the Melting point of 
-the element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.mineral_hardness">
-<code class="sig-name descname">mineral_hardness</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.mineral_hardness" title="Permalink to this definition">¶</a></dt>
-<dd><p>Hardness ranges on scale from 1 to 10 and mineralogical hardness depends upon the 
-ability of a material to scratch another</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.molar_vol">
-<code class="sig-name descname">molar_vol</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.molar_vol" title="Permalink to this definition">¶</a></dt>
-<dd><p>The molar volume is equal to the atomic weight divided 
-by the density</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.paul_ionic_radii">
-<code class="sig-name descname">paul_ionic_radii</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.paul_ionic_radii" title="Permalink to this definition">¶</a></dt>
-<dd><p>Returns pauling ionic radii with ion as key 
-and pauling ionic radii in pm as dict</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.poissons_ratio">
-<code class="sig-name descname">poissons_ratio</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.poissons_ratio" title="Permalink to this definition">¶</a></dt>
-<dd><p>Poisson’s ratio is the lateral contraction per unit breadth divided by the 
-longitudinal extension per unit length</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.reflectivity">
-<code class="sig-name descname">reflectivity</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.reflectivity" title="Permalink to this definition">¶</a></dt>
-<dd><p>The reflectivity is the percentage light reflected from a 
-surface at a given wavelength: % Unit</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.refract_index">
-<code class="sig-name descname">refract_index</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.refract_index" title="Permalink to this definition">¶</a></dt>
-<dd><p>The refractive index is quoted for the gas or vapour state
-at 273 K/760 mm Hg for the sodium yellow d-line at 589.3 nm</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.rigidity_mod">
-<code class="sig-name descname">rigidity_mod</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.rigidity_mod" title="Permalink to this definition">¶</a></dt>
-<dd><p>The rigidity modulus refers to the change of shape produced 
-by a tangential stress</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.section_webele_metadata">
-<code class="sig-name descname">section_webele_metadata</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.section_webele_metadata" title="Permalink to this definition">¶</a></dt>
-<dd><p>This section contains metadata information of several atomic features accessible from Webelements as source</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.supercond_temp">
-<code class="sig-name descname">supercond_temp</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.supercond_temp" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the  Superconduction temperature of 
-the element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.thermal_conduct">
-<code class="sig-name descname">thermal_conduct</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.thermal_conduct" title="Permalink to this definition">¶</a></dt>
-<dd><p>The thermal conductivity, λ, is the quantity of heat 
-transmitted, due to unit temperature gradient, in unit time under steady conditions in a direction normal to 
-a surface of unit area, when the heat transfer is dependent only on the temperature gradient</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.van_der_waals_rad">
-<code class="sig-name descname">van_der_waals_rad</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.van_der_waals_rad" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the Van der Waals radius for the element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.vel_of_sound">
-<code class="sig-name descname">vel_of_sound</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.vel_of_sound" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the Velocity of sound in the element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.vickers_hardness">
-<code class="sig-name descname">vickers_hardness</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.vickers_hardness" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the Vicker’s hardness of the element</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.youngs_mod">
-<code class="sig-name descname">youngs_mod</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.youngs_mod" title="Permalink to this definition">¶</a></dt>
-<dd><p>Young’s modulus refers to longitudinal 
-strain</p>
-</dd></dl>
-
-</dd></dl>
-
-<dl class="class">
-<dt id="atomicfeaturespackage.metainfo.metainfo.metadata">
-<em class="property">class </em><code class="sig-prename descclassname">atomicfeaturespackage.metainfo.metainfo.</code><code class="sig-name descname">metadata</code><span class="sig-paren">(</span><em class="sig-param">m_def: Optional[nomad.metainfo.metainfo.Section] = None</em>, <em class="sig-param">m_resource: nomad.metainfo.metainfo.MResource = None</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.metadata" title="Permalink to this definition">¶</a></dt>
-<dd><p>This section contains metadata information of source,method and functional used for atomic features.</p>
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.metadata.atomic_basis_set">
-<code class="sig-name descname">atomic_basis_set</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.metadata.atomic_basis_set" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the unique name of basis set applied for computation</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.metadata.atomic_method">
-<code class="sig-name descname">atomic_method</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.metadata.atomic_method" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the name of functional used for calculation 
-of particular atomic feature</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.metadata.atomic_spin_setting">
-<code class="sig-name descname">atomic_spin_setting</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.metadata.atomic_spin_setting" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides information whether spin settings are turned on or off</p>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="atomicfeaturespackage.metainfo.metainfo.metadata.source">
-<code class="sig-name descname">source</code><a class="headerlink" href="#atomicfeaturespackage.metainfo.metainfo.metadata.source" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides the name of source 
-of particular atomic feature</p>
-</dd></dl>
-
-</dd></dl>
-
-</div>
-</div>
-
-
-          </div>
-        </div>
-      </div>
-      <div class="clearer"></div>
-    </div>
-    <div class="related" role="navigation" aria-label="related navigation">
-      <h3>Navigation</h3>
-      <ul>
-        <li class="right" style="margin-right: 10px">
-          <a href="genindex.html" title="General Index"
-             >index</a></li>
-        <li class="right" >
-          <a href="py-modindex.html" title="Python Module Index"
-             >modules</a> |</li>
-        <li class="right" >
-          <a href="LICENSE.html" title="LICENSE"
-             >next</a> |</li>
-        <li class="right" >
-          <a href="atomicfeaturespackage.atomicproperties.html" title="atomicfeaturespackage.atomicproperties package"
-             >previous</a> |</li>
-        <li class="nav-item nav-item-0"><a href="index.html">atomic-features-package  documentation</a> &#187;</li>
-          <li class="nav-item nav-item-1"><a href="atomicfeaturespackage.html" >atomic-features-package package</a> &#187;</li> 
-      </ul>
-    </div>
-    <div class="footer" role="contentinfo">
-        &#169; Copyright 2021, Aakash Naik.
-      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.4.4.
-    </div>
-  </body>
-</html>
\ No newline at end of file
diff --git a/atomicfeaturespackage/docs/_build/html/genindex.html b/atomicfeaturespackage/docs/_build/html/genindex.html
deleted file mode 100644
index 6622323..0000000
--- a/atomicfeaturespackage/docs/_build/html/genindex.html
+++ /dev/null
@@ -1,851 +0,0 @@
-
-
-
-<!doctype html>
-
-<html xmlns="http://www.w3.org/1999/xhtml">
-  <head>
-    <meta charset="utf-8" />
-    <title>Index &#8212; atomic-features-package  documentation</title>
-    <link rel="stylesheet" href="_static/bizstyle.css" type="text/css" />
-    <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
-    
-    <script id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
-    <script src="_static/jquery.js"></script>
-    <script src="_static/underscore.js"></script>
-    <script src="_static/doctools.js"></script>
-    <script src="_static/language_data.js"></script>
-    <script src="_static/bizstyle.js"></script>
-    <link rel="index" title="Index" href="#" />
-    <link rel="search" title="Search" href="search.html" />
-    <meta name="viewport" content="width=device-width,initial-scale=1.0">
-    <!--[if lt IE 9]>
-    <script src="_static/css3-mediaqueries.js"></script>
-    <![endif]-->
-  </head><body>
-    <div class="related" role="navigation" aria-label="related navigation">
-      <h3>Navigation</h3>
-      <ul>
-        <li class="right" style="margin-right: 10px">
-          <a href="#" title="General Index"
-             accesskey="I">index</a></li>
-        <li class="right" >
-          <a href="py-modindex.html" title="Python Module Index"
-             >modules</a> |</li>
-        <li class="nav-item nav-item-0"><a href="index.html">atomic-features-package  documentation</a> &#187;</li> 
-      </ul>
-    </div>
-      <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
-        <div class="sphinxsidebarwrapper">
-<div id="searchbox" style="display: none" role="search">
-  <h3 id="searchlabel">Quick search</h3>
-    <div class="searchformwrapper">
-    <form class="search" action="search.html" method="get">
-      <input type="text" name="q" aria-labelledby="searchlabel" />
-      <input type="submit" value="Go" />
-    </form>
-    </div>
-</div>
-<script>$('#searchbox').show(0);</script>
-        </div>
-      </div>
-
-    <div class="document">
-      <div class="documentwrapper">
-        <div class="bodywrapper">
-          <div class="body" role="main">
-            
-
-<h1 id="index">Index</h1>
-
-<div class="genindex-jumpbox">
- <a href="#A"><strong>A</strong></a>
- | <a href="#B"><strong>B</strong></a>
- | <a href="#C"><strong>C</strong></a>
- | <a href="#D"><strong>D</strong></a>
- | <a href="#E"><strong>E</strong></a>
- | <a href="#F"><strong>F</strong></a>
- | <a href="#G"><strong>G</strong></a>
- | <a href="#H"><strong>H</strong></a>
- | <a href="#I"><strong>I</strong></a>
- | <a href="#L"><strong>L</strong></a>
- | <a href="#M"><strong>M</strong></a>
- | <a href="#N"><strong>N</strong></a>
- | <a href="#O"><strong>O</strong></a>
- | <a href="#P"><strong>P</strong></a>
- | <a href="#R"><strong>R</strong></a>
- | <a href="#S"><strong>S</strong></a>
- | <a href="#T"><strong>T</strong></a>
- | <a href="#V"><strong>V</strong></a>
- | <a href="#W"><strong>W</strong></a>
- | <a href="#X"><strong>X</strong></a>
- | <a href="#Y"><strong>Y</strong></a>
- 
-</div>
-<h2 id="A">A</h2>
-<table style="width: 100%" class="indextable genindextable"><tr>
-  <td style="width: 33%; vertical-align: top;"><ul>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.metadata.atomic_basis_set">atomic_basis_set (atomicfeaturespackage.metainfo.metainfo.metadata attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_cellparam">atomic_cellparam (atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_cpmass">atomic_cpmass (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_cpmolar">atomic_cpmolar (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_density">atomic_density (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_ea">atomic_ea (atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi attribute)</a>
-
-      <ul>
-        <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_ea">(atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015 attribute)</a>
-</li>
-        <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ea">(atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-        <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_ea">(atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      </ul></li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_ea_by_half_charged_homo">atomic_ea_by_half_charged_homo (atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_ebe">atomic_ebe (atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_element_name">atomic_element_name (atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_element_symbol">atomic_element_symbol (atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi attribute)</a>
-
-      <ul>
-        <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_element_symbol">(atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015 attribute)</a>
-</li>
-        <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_element_symbol">(atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-        <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_element_symbol">(atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-</li>
-        <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_element_symbol">(atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      </ul></li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_en">atomic_en (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-
-      <ul>
-        <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_en">(atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      </ul></li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_en_allen">atomic_en_allen (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-
-      <ul>
-        <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_en_allen">(atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      </ul></li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_en_allredroch">atomic_en_allredroch (atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_en_paul">atomic_en_paul (atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_en_sanderson">atomic_en_sanderson (atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_enc">atomic_enc (atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_hatm">atomic_hatm (atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_hfomo">atomic_hfomo (atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_hfu">atomic_hfu (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-
-      <ul>
-        <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_hfu">(atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      </ul></li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_hhip">atomic_hhip (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_hhir">atomic_hhir (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_homo">atomic_homo (atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015 attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_hpomo">atomic_hpomo (atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_hvap">atomic_hvap (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-
-      <ul>
-        <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_hvap">(atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      </ul></li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ICSD_vol">atomic_ICSD_vol (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ie">atomic_ie (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-
-      <ul>
-        <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_ie">(atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      </ul></li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ie_1">atomic_ie_1 (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ie_2">atomic_ie_2 (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_ionic_radii">atomic_ionic_radii (atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_ip">atomic_ip (atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi attribute)</a>
-
-      <ul>
-        <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_ip">(atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015 attribute)</a>
-</li>
-      </ul></li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_ip_by_half_charged_homo">atomic_ip_by_half_charged_homo (atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_isalkali">atomic_isalkali (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_isdblock">atomic_isdblock (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_isfblock">atomic_isfblock (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ismetal">atomic_ismetal (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ismetalloid">atomic_ismetalloid (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_isnonmetal">atomic_isnonmetal (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_lfumo">atomic_lfumo (atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_lpumo">atomic_lpumo (atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_lumo">atomic_lumo (atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015 attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_mass">atomic_mass (atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.metadata.atomic_method">atomic_method (atomicfeaturespackage.metainfo.metainfo.metadata attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_nat_iso">atomic_nat_iso (atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ndunf">atomic_ndunf (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ndval">atomic_ndval (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_nfunf">atomic_nfunf (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_nfval">atomic_nfval (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_nmr">atomic_nmr (atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_npunf">atomic_npunf (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_npval">atomic_npval (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_nsunf">atomic_nsunf (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_nsval">atomic_nsval (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_number">atomic_number (atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi attribute)</a>
-
-      <ul>
-        <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_number">(atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015 attribute)</a>
-</li>
-        <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_number">(atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-        <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_number">(atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-</li>
-      </ul></li>
-  </ul></td>
-  <td style="width: 33%; vertical-align: top;"><ul>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_nunf">atomic_nunf (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_nval">atomic_nval (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_orbital_radii">atomic_orbital_radii (atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_orbitals">atomic_orbitals (atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_oxstates">atomic_oxstates (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_period">atomic_period (atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015 attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_phi">atomic_phi (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_pol">atomic_pol (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_pp_r_d">atomic_pp_r_d (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_pp_r_p">atomic_pp_r_p (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_pp_r_pi">atomic_pp_r_pi (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_pp_r_s">atomic_pp_r_s (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_pp_r_sig">atomic_pp_r_sig (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi">atomic_properties_fhi (class in atomicfeaturespackage.metainfo.metainfo)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015">atomic_properties_lda2015 (class in atomicfeaturespackage.metainfo.metainfo)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer">atomic_properties_matminer (class in atomicfeaturespackage.metainfo.metainfo)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat">atomic_properties_pymat (class in atomicfeaturespackage.metainfo.metainfo)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele">atomic_properties_webele (class in atomicfeaturespackage.metainfo.metainfo)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_d">atomic_r_d (atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi attribute)</a>
-
-      <ul>
-        <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_r_d">(atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015 attribute)</a>
-</li>
-      </ul></li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_d_05">atomic_r_d_05 (atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_d_1">atomic_r_d_1 (atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_d_neg_05">atomic_r_d_neg_05 (atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_d_neg_1">atomic_r_d_neg_1 (atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_p">atomic_r_p (atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi attribute)</a>
-
-      <ul>
-        <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_r_p">(atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015 attribute)</a>
-</li>
-      </ul></li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_p_05">atomic_r_p_05 (atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_p_1">atomic_r_p_1 (atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_p_neg_05">atomic_r_p_neg_05 (atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_p_neg_1">atomic_r_p_neg_1 (atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_s">atomic_r_s (atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi attribute)</a>
-
-      <ul>
-        <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_r_s">(atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015 attribute)</a>
-</li>
-      </ul></li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_s_05">atomic_r_s_05 (atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_s_1">atomic_r_s_1 (atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_s_neg_05">atomic_r_s_neg_05 (atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_s_neg_1">atomic_r_s_neg_1 (atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_val">atomic_r_val (atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_val_05">atomic_r_val_05 (atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_val_1">atomic_r_val_1 (atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_val_neg_05">atomic_r_val_neg_05 (atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_val_neg_1">atomic_r_val_neg_1 (atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_rad_iso">atomic_rad_iso (atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_radius">atomic_radius (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-
-      <ul>
-        <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_radius">(atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-</li>
-        <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_radius">(atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      </ul></li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_radius_calculated">atomic_radius_calculated (atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-
-      <ul>
-        <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_radius_calculated">(atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      </ul></li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_refelctivity">atomic_refelctivity (atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_refractive_index">atomic_refractive_index (atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_sgn">atomic_sgn (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_spacegroup">atomic_spacegroup (atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_spacegroupnum">atomic_spacegroupnum (atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.metadata.atomic_spin_setting">atomic_spin_setting (atomicfeaturespackage.metainfo.metainfo.metadata attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_structure">atomic_structure (atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_thermdata">atomic_thermdata (atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_vdw_radius">atomic_vdw_radius (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_volume">atomic_volume (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_weight">atomic_weight (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ws3">atomic_ws3 (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.atomicproperties.html#module-atomicfeaturespackage.atomicproperties.atomic_properties_dft">atomicfeaturespackage.atomicproperties.atomic_properties_dft (module)</a>
-</li>
-      <li><a href="atomicfeaturespackage.atomicproperties.html#module-atomicfeaturespackage.atomicproperties.atomic_properties_lda2015">atomicfeaturespackage.atomicproperties.atomic_properties_lda2015 (module)</a>
-</li>
-      <li><a href="atomicfeaturespackage.atomicproperties.html#module-atomicfeaturespackage.atomicproperties.atomic_properties_matminer">atomicfeaturespackage.atomicproperties.atomic_properties_matminer (module)</a>
-</li>
-      <li><a href="atomicfeaturespackage.atomicproperties.html#module-atomicfeaturespackage.atomicproperties.atomic_properties_pymat">atomicfeaturespackage.atomicproperties.atomic_properties_pymat (module)</a>
-</li>
-      <li><a href="atomicfeaturespackage.atomicproperties.html#module-atomicfeaturespackage.atomicproperties.periodictable">atomicfeaturespackage.atomicproperties.periodictable (module)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#module-atomicfeaturespackage.metainfo.metainfo">atomicfeaturespackage.metainfo.metainfo (module)</a>
-</li>
-      <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.atomic_properties_matminer.atomicsymbol">atomicsymbol() (in module atomicfeaturespackage.atomicproperties.atomic_properties_matminer)</a>
-</li>
-  </ul></td>
-</tr></table>
-
-<h2 id="B">B</h2>
-<table style="width: 100%" class="indextable genindextable"><tr>
-  <td style="width: 33%; vertical-align: top;"><ul>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.boiling_point">boiling_point (atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-
-      <ul>
-        <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.boiling_point">(atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      </ul></li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.boiling_temp">boiling_temp (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.brinell_hardness">brinell_hardness (atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-
-      <ul>
-        <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.brinell_hardness">(atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      </ul></li>
-  </ul></td>
-  <td style="width: 33%; vertical-align: top;"><ul>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.bulk_mod">bulk_mod (atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.bulk_modulus">bulk_modulus (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-
-      <ul>
-        <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.bulk_modulus">(atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-</li>
-      </ul></li>
-  </ul></td>
-</tr></table>
-
-<h2 id="C">C</h2>
-<table style="width: 100%" class="indextable genindextable"><tr>
-  <td style="width: 33%; vertical-align: top;"><ul>
-      <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.periodictable.clean">clean() (in module atomicfeaturespackage.atomicproperties.periodictable)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.coeff_of_lte">coeff_of_lte (atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.coeff_olte">coeff_olte (atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.common_ox_states">common_ox_states (atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.covalent_rad">covalent_rad (atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-  </ul></td>
-  <td style="width: 33%; vertical-align: top;"><ul>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.covalent_rad_emp">covalent_rad_emp (atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.covalent_radius">covalent_radius (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.covalent_radius_mol">covalent_radius_mol (atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.critical_temperature">critical_temperature (atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-
-      <ul>
-        <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.critical_temperature">(atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      </ul></li>
-  </ul></td>
-</tr></table>
-
-<h2 id="D">D</h2>
-<table style="width: 100%" class="indextable genindextable"><tr>
-  <td style="width: 33%; vertical-align: top;"><ul>
-      <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.atomic_properties_dft.definition">definition() (in module atomicfeaturespackage.atomicproperties.atomic_properties_dft)</a>
-
-      <ul>
-        <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.atomic_properties_lda2015.definition">(in module atomicfeaturespackage.atomicproperties.atomic_properties_lda2015)</a>
-</li>
-        <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.atomic_properties_matminer.definition">(in module atomicfeaturespackage.atomicproperties.atomic_properties_matminer)</a>
-</li>
-        <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.atomic_properties_pymat.definition">(in module atomicfeaturespackage.atomicproperties.atomic_properties_pymat)</a>
-</li>
-      </ul></li>
-  </ul></td>
-  <td style="width: 33%; vertical-align: top;"><ul>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.density_of_solid">density_of_solid (atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-
-      <ul>
-        <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.density_of_solid">(atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      </ul></li>
-  </ul></td>
-</tr></table>
-
-<h2 id="E">E</h2>
-<table style="width: 100%" class="indextable genindextable"><tr>
-  <td style="width: 33%; vertical-align: top;"><ul>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.electrical_resist">electrical_resist (atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-  </ul></td>
-  <td style="width: 33%; vertical-align: top;"><ul>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.electrical_resistivity">electrical_resistivity (atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.electronic_structure">electronic_structure (atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-</li>
-  </ul></td>
-</tr></table>
-
-<h2 id="F">F</h2>
-<table style="width: 100%" class="indextable genindextable"><tr>
-  <td style="width: 33%; vertical-align: top;"><ul>
-      <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.atomic_properties_dft.f">f() (in module atomicfeaturespackage.atomicproperties.atomic_properties_dft)</a>
-
-      <ul>
-        <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.periodictable.f">(in module atomicfeaturespackage.atomicproperties.periodictable)</a>
-</li>
-      </ul></li>
-      <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.periodictable.featuref">featuref() (in module atomicfeaturespackage.atomicproperties.periodictable)</a>
-</li>
-      <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.periodictable.featurelda">featurelda() (in module atomicfeaturespackage.atomicproperties.periodictable)</a>
-</li>
-  </ul></td>
-  <td style="width: 33%; vertical-align: top;"><ul>
-      <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.periodictable.featurematmin">featurematmin() (in module atomicfeaturespackage.atomicproperties.periodictable)</a>
-</li>
-      <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.periodictable.featurepymat">featurepymat() (in module atomicfeaturespackage.atomicproperties.periodictable)</a>
-</li>
-      <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.periodictable.featuret">featuret() (in module atomicfeaturespackage.atomicproperties.periodictable)</a>
-</li>
-      <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.periodictable.featurewebele">featurewebele() (in module atomicfeaturespackage.atomicproperties.periodictable)</a>
-</li>
-  </ul></td>
-</tr></table>
-
-<h2 id="G">G</h2>
-<table style="width: 100%" class="indextable genindextable"><tr>
-  <td style="width: 33%; vertical-align: top;"><ul>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.gs_bandgap">gs_bandgap (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.gs_bcclatparam">gs_bcclatparam (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.gs_energy_pa">gs_energy_pa (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-  </ul></td>
-  <td style="width: 33%; vertical-align: top;"><ul>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.gs_fcclatparam">gs_fcclatparam (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.gs_mag_mom">gs_mag_mom (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.gs_volume_pa">gs_volume_pa (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-  </ul></td>
-</tr></table>
-
-<h2 id="H">H</h2>
-<table style="width: 100%" class="indextable genindextable"><tr>
-  <td style="width: 33%; vertical-align: top;"><ul>
-      <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.periodictable.heatmap">heatmap() (in module atomicfeaturespackage.atomicproperties.periodictable)</a>
-</li>
-  </ul></td>
-</tr></table>
-
-<h2 id="I">I</h2>
-<table style="width: 100%" class="indextable genindextable"><tr>
-  <td style="width: 33%; vertical-align: top;"><ul>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.icsd_oxd_states">icsd_oxd_states (atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.ionic_radii">ionic_radii (atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.ionic_radii_hs">ionic_radii_hs (atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-</li>
-  </ul></td>
-  <td style="width: 33%; vertical-align: top;"><ul>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.ionic_radii_ls">ionic_radii_ls (atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.atomic_properties_matminer.ionizationen">ionizationen() (in module atomicfeaturespackage.atomicproperties.atomic_properties_matminer)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.iupac_ordering">iupac_ordering (atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-</li>
-  </ul></td>
-</tr></table>
-
-<h2 id="L">L</h2>
-<table style="width: 100%" class="indextable genindextable"><tr>
-  <td style="width: 33%; vertical-align: top;"><ul>
-      <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.periodictable.lda">lda() (in module atomicfeaturespackage.atomicproperties.periodictable)</a>
-</li>
-  </ul></td>
-  <td style="width: 33%; vertical-align: top;"><ul>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.liquid_range">liquid_range (atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-
-      <ul>
-        <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.liquid_range">(atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      </ul></li>
-  </ul></td>
-</tr></table>
-
-<h2 id="M">M</h2>
-<table style="width: 100%" class="indextable genindextable"><tr>
-  <td style="width: 33%; vertical-align: top;"><ul>
-      <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.periodictable.matmin">matmin() (in module atomicfeaturespackage.atomicproperties.periodictable)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.max_oxd_state">max_oxd_state (atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.melting_point">melting_point (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-
-      <ul>
-        <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.melting_point">(atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-</li>
-        <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.melting_point">(atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      </ul></li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.mendeleev_no">mendeleev_no (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-
-      <ul>
-        <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.mendeleev_no">(atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-</li>
-      </ul></li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.metadata">metadata (class in atomicfeaturespackage.metainfo.metainfo)</a>
-</li>
-  </ul></td>
-  <td style="width: 33%; vertical-align: top;"><ul>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.metallic_radius">metallic_radius (atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.atomic_properties_dft.method">method() (in module atomicfeaturespackage.atomicproperties.atomic_properties_dft)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.micracle_radius">micracle_radius (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.min_oxd_state">min_oxd_state (atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.mineral_hardness">mineral_hardness (atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-
-      <ul>
-        <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.mineral_hardness">(atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      </ul></li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.molar_vol">molar_vol (atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.molar_volume">molar_volume (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-
-      <ul>
-        <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.molar_volume">(atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-</li>
-      </ul></li>
-  </ul></td>
-</tr></table>
-
-<h2 id="N">N</h2>
-<table style="width: 100%" class="indextable genindextable"><tr>
-  <td style="width: 33%; vertical-align: top;"><ul>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.nmr_quadrapole_mom">nmr_quadrapole_mom (atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-</li>
-  </ul></td>
-</tr></table>
-
-<h2 id="O">O</h2>
-<table style="width: 100%" class="indextable genindextable"><tr>
-  <td style="width: 33%; vertical-align: top;"><ul>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.oxidation_states">oxidation_states (atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-</li>
-  </ul></td>
-  <td style="width: 33%; vertical-align: top;"><ul>
-      <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.atomic_properties_matminer.oxistates">oxistates() (in module atomicfeaturespackage.atomicproperties.atomic_properties_matminer)</a>
-</li>
-  </ul></td>
-</tr></table>
-
-<h2 id="P">P</h2>
-<table style="width: 100%" class="indextable genindextable"><tr>
-  <td style="width: 33%; vertical-align: top;"><ul>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.paul_ionic_radii">paul_ionic_radii (atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.periodict_column">periodict_column (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.periodict_row">periodict_row (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.poisson_ratio">poisson_ratio (atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.poissons_ratio">poissons_ratio (atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.periodictable.ptableplotgenf">ptableplotgenf() (in module atomicfeaturespackage.atomicproperties.periodictable)</a>
-</li>
-  </ul></td>
-  <td style="width: 33%; vertical-align: top;"><ul>
-      <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.periodictable.ptableplotgenlda">ptableplotgenlda() (in module atomicfeaturespackage.atomicproperties.periodictable)</a>
-</li>
-      <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.periodictable.ptableplotgenmatmin">ptableplotgenmatmin() (in module atomicfeaturespackage.atomicproperties.periodictable)</a>
-</li>
-      <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.periodictable.ptableplotgenpymat">ptableplotgenpymat() (in module atomicfeaturespackage.atomicproperties.periodictable)</a>
-</li>
-      <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.periodictable.ptableplotgent">ptableplotgent() (in module atomicfeaturespackage.atomicproperties.periodictable)</a>
-</li>
-      <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.periodictable.ptableplotgenwebele">ptableplotgenwebele() (in module atomicfeaturespackage.atomicproperties.periodictable)</a>
-</li>
-      <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.periodictable.pymat">pymat() (in module atomicfeaturespackage.atomicproperties.periodictable)</a>
-</li>
-  </ul></td>
-</tr></table>
-
-<h2 id="R">R</h2>
-<table style="width: 100%" class="indextable genindextable"><tr>
-  <td style="width: 33%; vertical-align: top;"><ul>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.reflectivity">reflectivity (atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.refract_index">refract_index (atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-  </ul></td>
-  <td style="width: 33%; vertical-align: top;"><ul>
-      <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.atomic_properties_pymat.rename_keys">rename_keys() (in module atomicfeaturespackage.atomicproperties.atomic_properties_pymat)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.rigidity_mod">rigidity_mod (atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.rigidity_modulus">rigidity_modulus (atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-</li>
-  </ul></td>
-</tr></table>
-
-<h2 id="S">S</h2>
-<table style="width: 100%" class="indextable genindextable"><tr>
-  <td style="width: 33%; vertical-align: top;"><ul>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.section_fhi_metadata">section_fhi_metadata (atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.section_lda2015_metadata">section_lda2015_metadata (atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015 attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.section_matmin_metadata">section_matmin_metadata (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.section_pymat_metadata">section_pymat_metadata (atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.section_webele_metadata">section_webele_metadata (atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.shannon_radii">shannon_radii (atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.shear_mod">shear_mod (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.periodictable.showfigf">showfigf() (in module atomicfeaturespackage.atomicproperties.periodictable)</a>
-</li>
-      <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.periodictable.showfiglda">showfiglda() (in module atomicfeaturespackage.atomicproperties.periodictable)</a>
-</li>
-      <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.periodictable.showfigmatmin">showfigmatmin() (in module atomicfeaturespackage.atomicproperties.periodictable)</a>
-</li>
-  </ul></td>
-  <td style="width: 33%; vertical-align: top;"><ul>
-      <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.periodictable.showfigpymat">showfigpymat() (in module atomicfeaturespackage.atomicproperties.periodictable)</a>
-</li>
-      <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.periodictable.showfigt">showfigt() (in module atomicfeaturespackage.atomicproperties.periodictable)</a>
-</li>
-      <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.periodictable.showfigwebele">showfigwebele() (in module atomicfeaturespackage.atomicproperties.periodictable)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.metadata.source">source (atomicfeaturespackage.metainfo.metainfo.metadata attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.supercond_temp">supercond_temp (atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-
-      <ul>
-        <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.supercond_temp">(atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      </ul></li>
-      <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.atomic_properties_dft.symbol">symbol() (in module atomicfeaturespackage.atomicproperties.atomic_properties_dft)</a>
-
-      <ul>
-        <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.atomic_properties_lda2015.symbol">(in module atomicfeaturespackage.atomicproperties.atomic_properties_lda2015)</a>
-</li>
-        <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.atomic_properties_matminer.symbol">(in module atomicfeaturespackage.atomicproperties.atomic_properties_matminer)</a>
-</li>
-        <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.atomic_properties_pymat.symbol">(in module atomicfeaturespackage.atomicproperties.atomic_properties_pymat)</a>
-</li>
-      </ul></li>
-  </ul></td>
-</tr></table>
-
-<h2 id="T">T</h2>
-<table style="width: 100%" class="indextable genindextable"><tr>
-  <td style="width: 33%; vertical-align: top;"><ul>
-      <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.atomic_properties_dft.t">t() (in module atomicfeaturespackage.atomicproperties.atomic_properties_dft)</a>
-
-      <ul>
-        <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.periodictable.t">(in module atomicfeaturespackage.atomicproperties.periodictable)</a>
-</li>
-      </ul></li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.thermal_cond">thermal_cond (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-
-      <ul>
-        <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.thermal_cond">(atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-</li>
-      </ul></li>
-  </ul></td>
-  <td style="width: 33%; vertical-align: top;"><ul>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.thermal_cond_log">thermal_cond_log (atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.thermal_conduct">thermal_conduct (atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-  </ul></td>
-</tr></table>
-
-<h2 id="V">V</h2>
-<table style="width: 100%" class="indextable genindextable"><tr>
-  <td style="width: 33%; vertical-align: top;"><ul>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.van_der_waals_rad">van_der_waals_rad (atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-
-      <ul>
-        <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.van_der_waals_rad">(atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      </ul></li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.vel_of_sound">vel_of_sound (atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-  </ul></td>
-  <td style="width: 33%; vertical-align: top;"><ul>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.velocity_of_sound">velocity_of_sound (atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-</li>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.vickers_hardness">vickers_hardness (atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-
-      <ul>
-        <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.vickers_hardness">(atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-      </ul></li>
-  </ul></td>
-</tr></table>
-
-<h2 id="W">W</h2>
-<table style="width: 100%" class="indextable genindextable"><tr>
-  <td style="width: 33%; vertical-align: top;"><ul>
-      <li><a href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage.atomicproperties.periodictable.webele">webele() (in module atomicfeaturespackage.atomicproperties.periodictable)</a>
-</li>
-  </ul></td>
-</tr></table>
-
-<h2 id="X">X</h2>
-<table style="width: 100%" class="indextable genindextable"><tr>
-  <td style="width: 33%; vertical-align: top;"><ul>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.x">x (atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-</li>
-  </ul></td>
-</tr></table>
-
-<h2 id="Y">Y</h2>
-<table style="width: 100%" class="indextable genindextable"><tr>
-  <td style="width: 33%; vertical-align: top;"><ul>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.youngs_mod">youngs_mod (atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele attribute)</a>
-</li>
-  </ul></td>
-  <td style="width: 33%; vertical-align: top;"><ul>
-      <li><a href="atomicfeaturespackage.metainfo.html#atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.youngs_modulus">youngs_modulus (atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat attribute)</a>
-</li>
-  </ul></td>
-</tr></table>
-
-
-
-          </div>
-        </div>
-      </div>
-      <div class="clearer"></div>
-    </div>
-    <div class="related" role="navigation" aria-label="related navigation">
-      <h3>Navigation</h3>
-      <ul>
-        <li class="right" style="margin-right: 10px">
-          <a href="#" title="General Index"
-             >index</a></li>
-        <li class="right" >
-          <a href="py-modindex.html" title="Python Module Index"
-             >modules</a> |</li>
-        <li class="nav-item nav-item-0"><a href="index.html">atomic-features-package  documentation</a> &#187;</li> 
-      </ul>
-    </div>
-    <div class="footer" role="contentinfo">
-        &#169; Copyright 2021, Aakash Naik.
-      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.4.4.
-    </div>
-  </body>
-</html>
\ No newline at end of file
diff --git a/atomicfeaturespackage/docs/_build/html/index.html b/atomicfeaturespackage/docs/_build/html/index.html
deleted file mode 100644
index bbe1fb7..0000000
--- a/atomicfeaturespackage/docs/_build/html/index.html
+++ /dev/null
@@ -1,129 +0,0 @@
-
-
-<!doctype html>
-
-<html xmlns="http://www.w3.org/1999/xhtml">
-  <head>
-    <meta charset="utf-8" />
-    <title>Welcome to atomic-features-package’s documentation! &#8212; atomic-features-package  documentation</title>
-    <link rel="stylesheet" href="_static/bizstyle.css" type="text/css" />
-    <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
-    
-    <script id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
-    <script src="_static/jquery.js"></script>
-    <script src="_static/underscore.js"></script>
-    <script src="_static/doctools.js"></script>
-    <script src="_static/language_data.js"></script>
-    <script src="_static/bizstyle.js"></script>
-    <link rel="index" title="Index" href="genindex.html" />
-    <link rel="search" title="Search" href="search.html" />
-    <link rel="next" title="Description" href="README.html" />
-    <meta name="viewport" content="width=device-width,initial-scale=1.0">
-    <!--[if lt IE 9]>
-    <script src="_static/css3-mediaqueries.js"></script>
-    <![endif]-->
-  </head><body>
-    <div class="related" role="navigation" aria-label="related navigation">
-      <h3>Navigation</h3>
-      <ul>
-        <li class="right" style="margin-right: 10px">
-          <a href="genindex.html" title="General Index"
-             accesskey="I">index</a></li>
-        <li class="right" >
-          <a href="py-modindex.html" title="Python Module Index"
-             >modules</a> |</li>
-        <li class="right" >
-          <a href="README.html" title="Description"
-             accesskey="N">next</a> |</li>
-        <li class="nav-item nav-item-0"><a href="#">atomic-features-package  documentation</a> &#187;</li> 
-      </ul>
-    </div>
-      <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
-        <div class="sphinxsidebarwrapper">
-  <h3><a href="#">Table of Contents</a></h3>
-  <ul>
-<li><a class="reference internal" href="#">Welcome to atomic-features-package’s documentation!</a></li>
-<li><a class="reference internal" href="#indices-and-tables">Indices and tables</a></li>
-</ul>
-
-  <h4>Next topic</h4>
-  <p class="topless"><a href="README.html"
-                        title="next chapter">Description</a></p>
-  <div role="note" aria-label="source link">
-    <h3>This Page</h3>
-    <ul class="this-page-menu">
-      <li><a href="_sources/index.rst.txt"
-            rel="nofollow">Show Source</a></li>
-    </ul>
-   </div>
-<div id="searchbox" style="display: none" role="search">
-  <h3 id="searchlabel">Quick search</h3>
-    <div class="searchformwrapper">
-    <form class="search" action="search.html" method="get">
-      <input type="text" name="q" aria-labelledby="searchlabel" />
-      <input type="submit" value="Go" />
-    </form>
-    </div>
-</div>
-<script>$('#searchbox').show(0);</script>
-        </div>
-      </div>
-
-    <div class="document">
-      <div class="documentwrapper">
-        <div class="bodywrapper">
-          <div class="body" role="main">
-            
-  <div class="section" id="welcome-to-atomic-features-package-s-documentation">
-<h1>Welcome to atomic-features-package’s documentation!<a class="headerlink" href="#welcome-to-atomic-features-package-s-documentation" title="Permalink to this headline">¶</a></h1>
-<div class="toctree-wrapper compound">
-<p class="caption"><span class="caption-text">Contents:</span></p>
-<ul>
-<li class="toctree-l1"><a class="reference internal" href="README.html">Description</a></li>
-<li class="toctree-l1"><a class="reference internal" href="README.html#getting-started">Getting Started</a></li>
-<li class="toctree-l1"><a class="reference internal" href="README.html#importing-this-package-modules-in-jupyter-notebook">Importing this package modules in Jupyter notebook</a></li>
-<li class="toctree-l1"><a class="reference internal" href="atomicfeaturespackage.html">atomic-features-package package</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="atomicfeaturespackage.html#subpackages">Subpackages</a></li>
-</ul>
-</li>
-<li class="toctree-l1"><a class="reference internal" href="LICENSE.html">LICENSE</a></li>
-<li class="toctree-l1"><a class="reference internal" href="CONTRIBUTING.html">CONTRIBUTING</a></li>
-</ul>
-</div>
-</div>
-<div class="section" id="indices-and-tables">
-<h1>Indices and tables<a class="headerlink" href="#indices-and-tables" title="Permalink to this headline">¶</a></h1>
-<ul class="simple">
-<li><p><a class="reference internal" href="genindex.html"><span class="std std-ref">Index</span></a></p></li>
-<li><p><a class="reference internal" href="py-modindex.html"><span class="std std-ref">Module Index</span></a></p></li>
-<li><p><a class="reference internal" href="search.html"><span class="std std-ref">Search Page</span></a></p></li>
-</ul>
-</div>
-
-
-          </div>
-        </div>
-      </div>
-      <div class="clearer"></div>
-    </div>
-    <div class="related" role="navigation" aria-label="related navigation">
-      <h3>Navigation</h3>
-      <ul>
-        <li class="right" style="margin-right: 10px">
-          <a href="genindex.html" title="General Index"
-             >index</a></li>
-        <li class="right" >
-          <a href="py-modindex.html" title="Python Module Index"
-             >modules</a> |</li>
-        <li class="right" >
-          <a href="README.html" title="Description"
-             >next</a> |</li>
-        <li class="nav-item nav-item-0"><a href="#">atomic-features-package  documentation</a> &#187;</li> 
-      </ul>
-    </div>
-    <div class="footer" role="contentinfo">
-        &#169; Copyright 2021, Aakash Naik.
-      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.4.4.
-    </div>
-  </body>
-</html>
\ No newline at end of file
diff --git a/atomicfeaturespackage/docs/_build/html/modules.html b/atomicfeaturespackage/docs/_build/html/modules.html
deleted file mode 100644
index 767d056..0000000
--- a/atomicfeaturespackage/docs/_build/html/modules.html
+++ /dev/null
@@ -1,113 +0,0 @@
-
-
-<!doctype html>
-
-<html xmlns="http://www.w3.org/1999/xhtml">
-  <head>
-    <meta charset="utf-8" />
-    <title>atomicfeaturespackage &#8212; atomic-features-package  documentation</title>
-    <link rel="stylesheet" href="_static/bizstyle.css" type="text/css" />
-    <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
-    
-    <script id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
-    <script src="_static/jquery.js"></script>
-    <script src="_static/underscore.js"></script>
-    <script src="_static/doctools.js"></script>
-    <script src="_static/language_data.js"></script>
-    <script src="_static/bizstyle.js"></script>
-    <link rel="index" title="Index" href="genindex.html" />
-    <link rel="search" title="Search" href="search.html" />
-    <meta name="viewport" content="width=device-width,initial-scale=1.0">
-    <!--[if lt IE 9]>
-    <script src="_static/css3-mediaqueries.js"></script>
-    <![endif]-->
-  </head><body>
-    <div class="related" role="navigation" aria-label="related navigation">
-      <h3>Navigation</h3>
-      <ul>
-        <li class="right" style="margin-right: 10px">
-          <a href="genindex.html" title="General Index"
-             accesskey="I">index</a></li>
-        <li class="right" >
-          <a href="py-modindex.html" title="Python Module Index"
-             >modules</a> |</li>
-        <li class="nav-item nav-item-0"><a href="index.html">atomic-features-package  documentation</a> &#187;</li> 
-      </ul>
-    </div>
-      <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
-        <div class="sphinxsidebarwrapper">
-  <div role="note" aria-label="source link">
-    <h3>This Page</h3>
-    <ul class="this-page-menu">
-      <li><a href="_sources/modules.rst.txt"
-            rel="nofollow">Show Source</a></li>
-    </ul>
-   </div>
-<div id="searchbox" style="display: none" role="search">
-  <h3 id="searchlabel">Quick search</h3>
-    <div class="searchformwrapper">
-    <form class="search" action="search.html" method="get">
-      <input type="text" name="q" aria-labelledby="searchlabel" />
-      <input type="submit" value="Go" />
-    </form>
-    </div>
-</div>
-<script>$('#searchbox').show(0);</script>
-        </div>
-      </div>
-
-    <div class="document">
-      <div class="documentwrapper">
-        <div class="bodywrapper">
-          <div class="body" role="main">
-            
-  <div class="section" id="atomicfeaturespackage">
-<h1>atomicfeaturespackage<a class="headerlink" href="#atomicfeaturespackage" title="Permalink to this headline">¶</a></h1>
-<div class="toctree-wrapper compound">
-<ul>
-<li class="toctree-l1"><a class="reference internal" href="atomicfeaturespackage.html">atomic-features-package package</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="atomicfeaturespackage.html#subpackages">Subpackages</a><ul>
-<li class="toctree-l3"><a class="reference internal" href="atomicfeaturespackage.atomicproperties.html">atomicfeaturespackage.atomicproperties package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="atomicfeaturespackage.atomicproperties.html#module-atomicfeaturespackage.atomicproperties.atomic_properties_dft">atomicfeaturespackage.atomicproperties.atomic_properties_dft module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="atomicfeaturespackage.atomicproperties.html#module-atomicfeaturespackage.atomicproperties.atomic_properties_lda2015">atomicfeaturespackage.atomicproperties.atomic_properties_lda2015 module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="atomicfeaturespackage.atomicproperties.html#atomicfeaturespackage-atomicproperties-atomic-properties-matminer-module">atomicfeaturespackage.atomicproperties.atomic_properties_matminer module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="atomicfeaturespackage.atomicproperties.html#module-atomicfeaturespackage.atomicproperties.atomic_properties_pymat">atomicfeaturespackage.atomicproperties.atomic_properties_pymat module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="atomicfeaturespackage.atomicproperties.html#module-atomicfeaturespackage.atomicproperties.periodictable">atomicfeaturespackage.atomicproperties.periodictable module</a></li>
-</ul>
-</li>
-<li class="toctree-l3"><a class="reference internal" href="atomicfeaturespackage.metainfo.html">atomicfeaturespackage.metainfo package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="atomicfeaturespackage.metainfo.html#module-atomicfeaturespackage.metainfo.metainfo">atomicfeaturespackage.metainfo.metainfo module</a></li>
-</ul>
-</li>
-</ul>
-</li>
-</ul>
-</li>
-</ul>
-</div>
-</div>
-
-
-          </div>
-        </div>
-      </div>
-      <div class="clearer"></div>
-    </div>
-    <div class="related" role="navigation" aria-label="related navigation">
-      <h3>Navigation</h3>
-      <ul>
-        <li class="right" style="margin-right: 10px">
-          <a href="genindex.html" title="General Index"
-             >index</a></li>
-        <li class="right" >
-          <a href="py-modindex.html" title="Python Module Index"
-             >modules</a> |</li>
-        <li class="nav-item nav-item-0"><a href="index.html">atomic-features-package  documentation</a> &#187;</li> 
-      </ul>
-    </div>
-    <div class="footer" role="contentinfo">
-        &#169; Copyright 2021, Aakash Naik.
-      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.4.4.
-    </div>
-  </body>
-</html>
\ No newline at end of file
diff --git a/atomicfeaturespackage/docs/_build/html/objects.inv b/atomicfeaturespackage/docs/_build/html/objects.inv
deleted file mode 100644
index 9d05795df975c471c02c9bcccdc3a46a0b305f8e..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 1983
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
Bp<4g|

diff --git a/atomicfeaturespackage/docs/_build/html/py-modindex.html b/atomicfeaturespackage/docs/_build/html/py-modindex.html
deleted file mode 100644
index a58a808..0000000
--- a/atomicfeaturespackage/docs/_build/html/py-modindex.html
+++ /dev/null
@@ -1,132 +0,0 @@
-
-
-<!doctype html>
-
-<html xmlns="http://www.w3.org/1999/xhtml">
-  <head>
-    <meta charset="utf-8" />
-    <title>Python Module Index &#8212; atomic-features-package  documentation</title>
-    <link rel="stylesheet" href="_static/bizstyle.css" type="text/css" />
-    <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
-    
-    <script id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
-    <script src="_static/jquery.js"></script>
-    <script src="_static/underscore.js"></script>
-    <script src="_static/doctools.js"></script>
-    <script src="_static/language_data.js"></script>
-    <script src="_static/bizstyle.js"></script>
-    <link rel="index" title="Index" href="genindex.html" />
-    <link rel="search" title="Search" href="search.html" />
-
-    <meta name="viewport" content="width=device-width,initial-scale=1.0">
-    <!--[if lt IE 9]>
-    <script src="_static/css3-mediaqueries.js"></script>
-    <![endif]-->
-
-
-  </head><body>
-    <div class="related" role="navigation" aria-label="related navigation">
-      <h3>Navigation</h3>
-      <ul>
-        <li class="right" style="margin-right: 10px">
-          <a href="genindex.html" title="General Index"
-             accesskey="I">index</a></li>
-        <li class="right" >
-          <a href="#" title="Python Module Index"
-             >modules</a> |</li>
-        <li class="nav-item nav-item-0"><a href="index.html">atomic-features-package  documentation</a> &#187;</li> 
-      </ul>
-    </div>
-      <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
-        <div class="sphinxsidebarwrapper">
-<div id="searchbox" style="display: none" role="search">
-  <h3 id="searchlabel">Quick search</h3>
-    <div class="searchformwrapper">
-    <form class="search" action="search.html" method="get">
-      <input type="text" name="q" aria-labelledby="searchlabel" />
-      <input type="submit" value="Go" />
-    </form>
-    </div>
-</div>
-<script>$('#searchbox').show(0);</script>
-        </div>
-      </div>
-
-    <div class="document">
-      <div class="documentwrapper">
-        <div class="bodywrapper">
-          <div class="body" role="main">
-            
-
-   <h1>Python Module Index</h1>
-
-   <div class="modindex-jumpbox">
-   <a href="#cap-a"><strong>a</strong></a>
-   </div>
-
-   <table class="indextable modindextable">
-     <tr class="pcap"><td></td><td>&#160;</td><td></td></tr>
-     <tr class="cap" id="cap-a"><td></td><td>
-       <strong>a</strong></td><td></td></tr>
-     <tr>
-       <td><img src="_static/minus.png" class="toggler"
-              id="toggle-1" style="display: none" alt="-" /></td>
-       <td>
-       <code class="xref">atomicfeaturespackage</code></td><td>
-       <em></em></td></tr>
-     <tr class="cg-1">
-       <td></td>
-       <td>&#160;&#160;&#160;
-       <a href="atomicfeaturespackage.atomicproperties.html#module-atomicfeaturespackage.atomicproperties.atomic_properties_dft"><code class="xref">atomicfeaturespackage.atomicproperties.atomic_properties_dft</code></a></td><td>
-       <em></em></td></tr>
-     <tr class="cg-1">
-       <td></td>
-       <td>&#160;&#160;&#160;
-       <a href="atomicfeaturespackage.atomicproperties.html#module-atomicfeaturespackage.atomicproperties.atomic_properties_lda2015"><code class="xref">atomicfeaturespackage.atomicproperties.atomic_properties_lda2015</code></a></td><td>
-       <em></em></td></tr>
-     <tr class="cg-1">
-       <td></td>
-       <td>&#160;&#160;&#160;
-       <a href="atomicfeaturespackage.atomicproperties.html#module-atomicfeaturespackage.atomicproperties.atomic_properties_matminer"><code class="xref">atomicfeaturespackage.atomicproperties.atomic_properties_matminer</code></a></td><td>
-       <em></em></td></tr>
-     <tr class="cg-1">
-       <td></td>
-       <td>&#160;&#160;&#160;
-       <a href="atomicfeaturespackage.atomicproperties.html#module-atomicfeaturespackage.atomicproperties.atomic_properties_pymat"><code class="xref">atomicfeaturespackage.atomicproperties.atomic_properties_pymat</code></a></td><td>
-       <em></em></td></tr>
-     <tr class="cg-1">
-       <td></td>
-       <td>&#160;&#160;&#160;
-       <a href="atomicfeaturespackage.atomicproperties.html#module-atomicfeaturespackage.atomicproperties.periodictable"><code class="xref">atomicfeaturespackage.atomicproperties.periodictable</code></a></td><td>
-       <em></em></td></tr>
-     <tr class="cg-1">
-       <td></td>
-       <td>&#160;&#160;&#160;
-       <a href="atomicfeaturespackage.metainfo.html#module-atomicfeaturespackage.metainfo.metainfo"><code class="xref">atomicfeaturespackage.metainfo.metainfo</code></a></td><td>
-       <em></em></td></tr>
-   </table>
-
-
-          </div>
-        </div>
-      </div>
-      <div class="clearer"></div>
-    </div>
-    <div class="related" role="navigation" aria-label="related navigation">
-      <h3>Navigation</h3>
-      <ul>
-        <li class="right" style="margin-right: 10px">
-          <a href="genindex.html" title="General Index"
-             >index</a></li>
-        <li class="right" >
-          <a href="#" title="Python Module Index"
-             >modules</a> |</li>
-        <li class="nav-item nav-item-0"><a href="index.html">atomic-features-package  documentation</a> &#187;</li> 
-      </ul>
-    </div>
-    <div class="footer" role="contentinfo">
-        &#169; Copyright 2021, Aakash Naik.
-      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.4.4.
-    </div>
-  </body>
-</html>
\ No newline at end of file
diff --git a/atomicfeaturespackage/docs/_build/html/search.html b/atomicfeaturespackage/docs/_build/html/search.html
deleted file mode 100644
index 7bfa56f..0000000
--- a/atomicfeaturespackage/docs/_build/html/search.html
+++ /dev/null
@@ -1,98 +0,0 @@
-
-
-<!doctype html>
-
-<html xmlns="http://www.w3.org/1999/xhtml">
-  <head>
-    <meta charset="utf-8" />
-    <title>Search &#8212; atomic-features-package  documentation</title>
-    <link rel="stylesheet" href="_static/bizstyle.css" type="text/css" />
-    <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
-    
-    
-    <script id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
-    <script src="_static/jquery.js"></script>
-    <script src="_static/underscore.js"></script>
-    <script src="_static/doctools.js"></script>
-    <script src="_static/language_data.js"></script>
-    <script src="_static/bizstyle.js"></script>
-    <script src="_static/searchtools.js"></script>
-    <link rel="index" title="Index" href="genindex.html" />
-    <link rel="search" title="Search" href="#" />
-  <script src="searchindex.js" defer></script>
-  
-    <meta name="viewport" content="width=device-width,initial-scale=1.0">
-    <!--[if lt IE 9]>
-    <script src="_static/css3-mediaqueries.js"></script>
-    <![endif]-->
-
-  </head><body>
-    <div class="related" role="navigation" aria-label="related navigation">
-      <h3>Navigation</h3>
-      <ul>
-        <li class="right" style="margin-right: 10px">
-          <a href="genindex.html" title="General Index"
-             accesskey="I">index</a></li>
-        <li class="right" >
-          <a href="py-modindex.html" title="Python Module Index"
-             >modules</a> |</li>
-        <li class="nav-item nav-item-0"><a href="index.html">atomic-features-package  documentation</a> &#187;</li> 
-      </ul>
-    </div>
-      <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
-        <div class="sphinxsidebarwrapper">
-        </div>
-      </div>
-
-    <div class="document">
-      <div class="documentwrapper">
-        <div class="bodywrapper">
-          <div class="body" role="main">
-            
-  <h1 id="search-documentation">Search</h1>
-  <div id="fallback" class="admonition warning">
-  <script>$('#fallback').hide();</script>
-  <p>
-    Please activate JavaScript to enable the search
-    functionality.
-  </p>
-  </div>
-  <p>
-    From here you can search these documents. Enter your search
-    words into the box below and click "search". Note that the search
-    function will automatically search for all of the words. Pages
-    containing fewer words won't appear in the result list.
-  </p>
-  <form action="" method="get">
-    <input type="text" name="q" aria-labelledby="search-documentation" value="" />
-    <input type="submit" value="search" />
-    <span id="search-progress" style="padding-left: 10px"></span>
-  </form>
-  
-  <div id="search-results">
-  
-  </div>
-
-          </div>
-        </div>
-      </div>
-      <div class="clearer"></div>
-    </div>
-    <div class="related" role="navigation" aria-label="related navigation">
-      <h3>Navigation</h3>
-      <ul>
-        <li class="right" style="margin-right: 10px">
-          <a href="genindex.html" title="General Index"
-             >index</a></li>
-        <li class="right" >
-          <a href="py-modindex.html" title="Python Module Index"
-             >modules</a> |</li>
-        <li class="nav-item nav-item-0"><a href="index.html">atomic-features-package  documentation</a> &#187;</li> 
-      </ul>
-    </div>
-    <div class="footer" role="contentinfo">
-        &#169; Copyright 2021, Aakash Naik.
-      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 2.4.4.
-    </div>
-  </body>
-</html>
\ No newline at end of file
diff --git a/atomicfeaturespackage/docs/_build/html/searchindex.js b/atomicfeaturespackage/docs/_build/html/searchindex.js
deleted file mode 100644
index 11c1ba0..0000000
--- a/atomicfeaturespackage/docs/_build/html/searchindex.js
+++ /dev/null
@@ -1 +0,0 @@
-Search.setIndex({docnames:["CONTRIBUTING","LICENSE","README","atomicfeaturespackage","atomicfeaturespackage.atomicproperties","atomicfeaturespackage.metainfo","index","modules"],envversion:{"sphinx.domains.c":1,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":1,"sphinx.domains.index":1,"sphinx.domains.javascript":1,"sphinx.domains.math":2,"sphinx.domains.python":1,"sphinx.domains.rst":1,"sphinx.domains.std":1,sphinx:56},filenames:["CONTRIBUTING.md","LICENSE.md","README.md","atomicfeaturespackage.rst","atomicfeaturespackage.atomicproperties.rst","atomicfeaturespackage.metainfo.rst","index.rst","modules.rst"],objects:{"atomicfeaturespackage.atomicproperties":{atomic_properties_dft:[4,0,0,"-"],atomic_properties_lda2015:[4,0,0,"-"],atomic_properties_matminer:[4,0,0,"-"],atomic_properties_pymat:[4,0,0,"-"],periodictable:[4,0,0,"-"]},"atomicfeaturespackage.atomicproperties.atomic_properties_dft":{definition:[4,1,1,""],f:[4,1,1,""],method:[4,1,1,""],symbol:[4,1,1,""],t:[4,1,1,""]},"atomicfeaturespackage.atomicproperties.atomic_properties_lda2015":{definition:[4,1,1,""],symbol:[4,1,1,""]},"atomicfeaturespackage.atomicproperties.atomic_properties_matminer":{atomicsymbol:[4,1,1,""],definition:[4,1,1,""],ionizationen:[4,1,1,""],oxistates:[4,1,1,""],symbol:[4,1,1,""]},"atomicfeaturespackage.atomicproperties.atomic_properties_pymat":{definition:[4,1,1,""],rename_keys:[4,1,1,""],symbol:[4,1,1,""]},"atomicfeaturespackage.atomicproperties.periodictable":{clean:[4,1,1,""],f:[4,1,1,""],featuref:[4,1,1,""],featurelda:[4,1,1,""],featurematmin:[4,1,1,""],featurepymat:[4,1,1,""],featuret:[4,1,1,""],featurewebele:[4,1,1,""],heatmap:[4,1,1,""],lda:[4,1,1,""],matmin:[4,1,1,""],ptableplotgenf:[4,1,1,""],ptableplotgenlda:[4,1,1,""],ptableplotgenmatmin:[4,1,1,""],ptableplotgenpymat:[4,1,1,""],ptableplotgent:[4,1,1,""],ptableplotgenwebele:[4,1,1,""],pymat:[4,1,1,""],showfigf:[4,1,1,""],showfiglda:[4,1,1,""],showfigmatmin:[4,1,1,""],showfigpymat:[4,1,1,""],showfigt:[4,1,1,""],showfigwebele:[4,1,1,""],t:[4,1,1,""],webele:[4,1,1,""]},"atomicfeaturespackage.metainfo":{metainfo:[5,0,0,"-"]},"atomicfeaturespackage.metainfo.metainfo":{atomic_properties_fhi:[5,2,1,""],atomic_properties_lda2015:[5,2,1,""],atomic_properties_matminer:[5,2,1,""],atomic_properties_pymat:[5,2,1,""],atomic_properties_webele:[5,2,1,""],metadata:[5,2,1,""]},"atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi":{atomic_ea:[5,3,1,""],atomic_ea_by_half_charged_homo:[5,3,1,""],atomic_element_symbol:[5,3,1,""],atomic_hfomo:[5,3,1,""],atomic_hpomo:[5,3,1,""],atomic_ip:[5,3,1,""],atomic_ip_by_half_charged_homo:[5,3,1,""],atomic_lfumo:[5,3,1,""],atomic_lpumo:[5,3,1,""],atomic_number:[5,3,1,""],atomic_r_d:[5,3,1,""],atomic_r_d_05:[5,3,1,""],atomic_r_d_1:[5,3,1,""],atomic_r_d_neg_05:[5,3,1,""],atomic_r_d_neg_1:[5,3,1,""],atomic_r_p:[5,3,1,""],atomic_r_p_05:[5,3,1,""],atomic_r_p_1:[5,3,1,""],atomic_r_p_neg_05:[5,3,1,""],atomic_r_p_neg_1:[5,3,1,""],atomic_r_s:[5,3,1,""],atomic_r_s_05:[5,3,1,""],atomic_r_s_1:[5,3,1,""],atomic_r_s_neg_05:[5,3,1,""],atomic_r_s_neg_1:[5,3,1,""],atomic_r_val:[5,3,1,""],atomic_r_val_05:[5,3,1,""],atomic_r_val_1:[5,3,1,""],atomic_r_val_neg_05:[5,3,1,""],atomic_r_val_neg_1:[5,3,1,""],section_fhi_metadata:[5,3,1,""]},"atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015":{atomic_ea:[5,3,1,""],atomic_element_symbol:[5,3,1,""],atomic_homo:[5,3,1,""],atomic_ip:[5,3,1,""],atomic_lumo:[5,3,1,""],atomic_number:[5,3,1,""],atomic_period:[5,3,1,""],atomic_r_d:[5,3,1,""],atomic_r_p:[5,3,1,""],atomic_r_s:[5,3,1,""],section_lda2015_metadata:[5,3,1,""]},"atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer":{atomic_ICSD_vol:[5,3,1,""],atomic_cpmass:[5,3,1,""],atomic_cpmolar:[5,3,1,""],atomic_density:[5,3,1,""],atomic_ea:[5,3,1,""],atomic_element_symbol:[5,3,1,""],atomic_en:[5,3,1,""],atomic_en_allen:[5,3,1,""],atomic_hfu:[5,3,1,""],atomic_hhip:[5,3,1,""],atomic_hhir:[5,3,1,""],atomic_hvap:[5,3,1,""],atomic_ie:[5,3,1,""],atomic_ie_1:[5,3,1,""],atomic_ie_2:[5,3,1,""],atomic_isalkali:[5,3,1,""],atomic_isdblock:[5,3,1,""],atomic_isfblock:[5,3,1,""],atomic_ismetal:[5,3,1,""],atomic_ismetalloid:[5,3,1,""],atomic_isnonmetal:[5,3,1,""],atomic_ndunf:[5,3,1,""],atomic_ndval:[5,3,1,""],atomic_nfunf:[5,3,1,""],atomic_nfval:[5,3,1,""],atomic_npunf:[5,3,1,""],atomic_npval:[5,3,1,""],atomic_nsunf:[5,3,1,""],atomic_nsval:[5,3,1,""],atomic_number:[5,3,1,""],atomic_nunf:[5,3,1,""],atomic_nval:[5,3,1,""],atomic_oxstates:[5,3,1,""],atomic_phi:[5,3,1,""],atomic_pol:[5,3,1,""],atomic_pp_r_d:[5,3,1,""],atomic_pp_r_p:[5,3,1,""],atomic_pp_r_pi:[5,3,1,""],atomic_pp_r_s:[5,3,1,""],atomic_pp_r_sig:[5,3,1,""],atomic_radius:[5,3,1,""],atomic_sgn:[5,3,1,""],atomic_vdw_radius:[5,3,1,""],atomic_volume:[5,3,1,""],atomic_weight:[5,3,1,""],atomic_ws3:[5,3,1,""],boiling_temp:[5,3,1,""],bulk_modulus:[5,3,1,""],covalent_radius:[5,3,1,""],gs_bandgap:[5,3,1,""],gs_bcclatparam:[5,3,1,""],gs_energy_pa:[5,3,1,""],gs_fcclatparam:[5,3,1,""],gs_mag_mom:[5,3,1,""],gs_volume_pa:[5,3,1,""],melting_point:[5,3,1,""],mendeleev_no:[5,3,1,""],micracle_radius:[5,3,1,""],molar_volume:[5,3,1,""],periodict_column:[5,3,1,""],periodict_row:[5,3,1,""],section_matmin_metadata:[5,3,1,""],shear_mod:[5,3,1,""],thermal_cond:[5,3,1,""],thermal_cond_log:[5,3,1,""]},"atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat":{atomic_element_name:[5,3,1,""],atomic_element_symbol:[5,3,1,""],atomic_mass:[5,3,1,""],atomic_number:[5,3,1,""],atomic_orbitals:[5,3,1,""],atomic_radius:[5,3,1,""],atomic_radius_calculated:[5,3,1,""],atomic_refelctivity:[5,3,1,""],atomic_refractive_index:[5,3,1,""],boiling_point:[5,3,1,""],brinell_hardness:[5,3,1,""],bulk_modulus:[5,3,1,""],coeff_olte:[5,3,1,""],common_ox_states:[5,3,1,""],critical_temperature:[5,3,1,""],density_of_solid:[5,3,1,""],electrical_resistivity:[5,3,1,""],electronic_structure:[5,3,1,""],icsd_oxd_states:[5,3,1,""],ionic_radii:[5,3,1,""],ionic_radii_hs:[5,3,1,""],ionic_radii_ls:[5,3,1,""],iupac_ordering:[5,3,1,""],liquid_range:[5,3,1,""],max_oxd_state:[5,3,1,""],melting_point:[5,3,1,""],mendeleev_no:[5,3,1,""],metallic_radius:[5,3,1,""],min_oxd_state:[5,3,1,""],mineral_hardness:[5,3,1,""],molar_volume:[5,3,1,""],nmr_quadrapole_mom:[5,3,1,""],oxidation_states:[5,3,1,""],poisson_ratio:[5,3,1,""],rigidity_modulus:[5,3,1,""],section_pymat_metadata:[5,3,1,""],shannon_radii:[5,3,1,""],supercond_temp:[5,3,1,""],thermal_cond:[5,3,1,""],van_der_waals_rad:[5,3,1,""],velocity_of_sound:[5,3,1,""],vickers_hardness:[5,3,1,""],x:[5,3,1,""],youngs_modulus:[5,3,1,""]},"atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele":{atomic_cellparam:[5,3,1,""],atomic_ea:[5,3,1,""],atomic_ebe:[5,3,1,""],atomic_element_symbol:[5,3,1,""],atomic_en:[5,3,1,""],atomic_en_allen:[5,3,1,""],atomic_en_allredroch:[5,3,1,""],atomic_en_paul:[5,3,1,""],atomic_en_sanderson:[5,3,1,""],atomic_enc:[5,3,1,""],atomic_hatm:[5,3,1,""],atomic_hfu:[5,3,1,""],atomic_hvap:[5,3,1,""],atomic_ie:[5,3,1,""],atomic_ionic_radii:[5,3,1,""],atomic_nat_iso:[5,3,1,""],atomic_nmr:[5,3,1,""],atomic_orbital_radii:[5,3,1,""],atomic_rad_iso:[5,3,1,""],atomic_radius:[5,3,1,""],atomic_radius_calculated:[5,3,1,""],atomic_spacegroup:[5,3,1,""],atomic_spacegroupnum:[5,3,1,""],atomic_structure:[5,3,1,""],atomic_thermdata:[5,3,1,""],boiling_point:[5,3,1,""],brinell_hardness:[5,3,1,""],bulk_mod:[5,3,1,""],coeff_of_lte:[5,3,1,""],covalent_rad:[5,3,1,""],covalent_rad_emp:[5,3,1,""],covalent_radius_mol:[5,3,1,""],critical_temperature:[5,3,1,""],density_of_solid:[5,3,1,""],electrical_resist:[5,3,1,""],liquid_range:[5,3,1,""],melting_point:[5,3,1,""],mineral_hardness:[5,3,1,""],molar_vol:[5,3,1,""],paul_ionic_radii:[5,3,1,""],poissons_ratio:[5,3,1,""],reflectivity:[5,3,1,""],refract_index:[5,3,1,""],rigidity_mod:[5,3,1,""],section_webele_metadata:[5,3,1,""],supercond_temp:[5,3,1,""],thermal_conduct:[5,3,1,""],van_der_waals_rad:[5,3,1,""],vel_of_sound:[5,3,1,""],vickers_hardness:[5,3,1,""],youngs_mod:[5,3,1,""]},"atomicfeaturespackage.metainfo.metainfo.metadata":{atomic_basis_set:[5,3,1,""],atomic_method:[5,3,1,""],atomic_spin_setting:[5,3,1,""],source:[5,3,1,""]}},objnames:{"0":["py","module","Python module"],"1":["py","function","Python function"],"2":["py","class","Python class"],"3":["py","attribute","Python attribute"]},objtypes:{"0":"py:module","1":"py:function","2":"py:class","3":"py:attribute"},terms:{"10e":5,"10e6":5,"1st":5,"2nd":5,"3rd":5,"\u03b4fg":5,"\u03b4fh":5,"\u03bb":5,"\u03c1":5,"boolean":5,"class":[4,5],"default":5,"function":[2,4,5],"import":[4,6],"long":5,"return":5,"static":5,"true":[2,4,5],AND:[1,5],BUT:1,FOR:1,For:0,NOT:1,One:[2,4,5],THE:1,The:[1,5],Then:2,USE:1,Use:2,Used:5,WITH:1,aakash:0,abc:4,abil:5,abl:2,abov:[1,2],absolut:5,access:[2,4,5],accompani:5,accord:5,accross:2,acess:[2,4],actanid:5,action:1,add:4,adjust:5,affin:5,affinitii:5,after:[2,4],agrument:4,aim:2,alkali:5,all:[1,2,4,5],allen:5,allow:2,allr:5,amd:2,ang:5,ani:[1,5],anoth:5,append:2,appli:5,appropir:4,archiv:2,area:5,arg:[2,4],aris:1,ashok:0,assess:5,assign:5,associ:1,atom:[2,4,5,7],atomic_basis_set:5,atomic_cellparam:5,atomic_cpmass:5,atomic_cpmolar:5,atomic_dens:5,atomic_ea:[2,5],atomic_ea_by_half_charged_homo:5,atomic_eb:5,atomic_element_nam:5,atomic_element_symbol:5,atomic_en:5,atomic_en_allen:5,atomic_en_allredroch:5,atomic_en_paul:5,atomic_en_sanderson:5,atomic_enc:5,atomic_features_fhi_aims_really_tight:5,atomic_hatm:5,atomic_hfomo:5,atomic_hfu:5,atomic_hhip:5,atomic_hhir:5,atomic_homo:5,atomic_hpomo:5,atomic_hvap:5,atomic_i:5,atomic_icsd_vol:5,atomic_ie_1:5,atomic_ie_2:5,atomic_ionic_radii:5,atomic_ip:5,atomic_ip_by_half_charged_homo:[2,5],atomic_isalkali:5,atomic_isdblock:5,atomic_isfblock:5,atomic_ismet:5,atomic_ismetalloid:5,atomic_isnonmet:5,atomic_lfumo:5,atomic_lpumo:5,atomic_lumo:5,atomic_mass:5,atomic_method:5,atomic_nat_iso:5,atomic_ndunf:5,atomic_ndv:5,atomic_nfunf:5,atomic_nfv:5,atomic_nmr:5,atomic_npunf:5,atomic_npv:5,atomic_nsunf:5,atomic_nsv:5,atomic_numb:[2,5],atomic_nunf:5,atomic_nv:5,atomic_orbit:5,atomic_orbital_radii:5,atomic_oxst:5,atomic_period:5,atomic_phi:5,atomic_pol:5,atomic_pp_r_:5,atomic_pp_r_d:5,atomic_pp_r_p:5,atomic_pp_r_pi:5,atomic_pp_r_sig:5,atomic_properites_dft:4,atomic_properites_lda2015:4,atomic_properites_magpi:4,atomic_properites_pymat:4,atomic_properites_webel:4,atomic_properties_dft:[2,3,7],atomic_properties_fhi:[4,5],atomic_properties_lda2015:[2,3,5,7],atomic_properties_magpi:4,atomic_properties_matmin:[3,5,7],atomic_properties_pymat:[2,3,5,7],atomic_properties_webel:[2,4,5],atomic_r_:5,atomic_r_d:5,atomic_r_d_05:5,atomic_r_d_1:5,atomic_r_d_neg_05:5,atomic_r_d_neg_1:5,atomic_r_p:[2,5],atomic_r_p_05:5,atomic_r_p_1:5,atomic_r_p_neg_05:5,atomic_r_p_neg_1:5,atomic_r_s_05:5,atomic_r_s_1:5,atomic_r_s_neg_05:5,atomic_r_s_neg_1:5,atomic_r_v:5,atomic_r_val_05:5,atomic_r_val_1:5,atomic_r_val_neg_05:5,atomic_r_val_neg_1:5,atomic_rad_iso:5,atomic_radii_of_the_elements_:5,atomic_radiu:5,atomic_radius_calcul:[2,5],atomic_refelct:5,atomic_refractive_index:5,atomic_sgn:5,atomic_spacegroup:5,atomic_spacegroupnum:5,atomic_spin_set:5,atomic_structur:5,atomic_thermdata:5,atomic_vdw_radiu:5,atomic_volum:5,atomic_weight:5,atomic_ws3:5,atomicfeaturespackag:[2,3],atomicproperti:[2,3,7],atomicsymbol:4,author:1,automat:2,avail:[2,4,5],averag:5,axi:4,bandgap:5,base:[4,5],basi:5,bcc:5,belong:5,below:[2,5],berlin:0,between:5,bind:5,blank:5,blob:5,block:5,boil:5,boiling_point:5,boiling_temp:5,bokeh:4,bond:5,breadth:5,brinel:5,brinell_hard:5,bulk:5,bulk_mod:5,bulk_modulu:5,calcul:[2,5],call:4,can:[2,4,5],capac:5,cell:5,chang:5,charg:[1,5],check:2,chemic:5,chemistri:5,claim:1,clean:4,clementi:5,code:2,coeff_of_lt:5,coeff_olt:5,coeffici:5,colour:4,column:5,columnwis:5,com:5,combin:4,command:2,common:5,common_ox_st:5,commun:5,complet:2,compress:5,comput:5,condit:[1,5],conduct:5,configur:5,connect:1,consist:5,contact:0,contain:[2,5],content:6,contract:[1,5],contribut:6,coordin:5,copi:1,copyright:1,cordin:5,core:5,correspond:[2,5],could:4,count:5,coval:5,covalent_rad:5,covalent_rad_emp:5,covalent_radiu:5,covalent_radius_mol:5,cph:5,critic:5,critical_temperatur:[2,5],crystal:5,crystal_radiu:5,csv:5,cube:5,current:2,damag:1,data:[2,5],data_fil:5,data_pag:5,databas:5,datafil:4,datafram:4,deal:1,decreas:5,defin:5,definit:[4,5],degre:5,densiti:5,density_of_solid:5,depend:5,der:5,describ:2,descript:6,df1:4,df3:4,df4:4,dft:[2,4,5],dict:5,dictionari:5,differ:[2,4,5],dipol:5,direct:5,distribut:1,divid:5,document:1,done:2,doubl:5,down:5,download:2,dropdown:[2,4],due:5,each:[4,5],earth:5,effect:5,either:5,electr:5,electrical_resist:5,electron:5,electroneg:5,electronic_structur:5,element:[2,4,5],empir:5,energi:5,enthalpi:5,entri:5,environ:5,equal:5,estim:5,etc:4,evalu:[2,5],event:1,exampl:2,except:5,expans:5,express:1,extens:5,face:5,fals:[2,4],fcc:5,featur:[2,4,5,7],featuref:4,featurelda:4,featurematmin:4,featurepymat:4,featuret:4,featurewebel:4,few:5,fhi:[0,2,5],file:1,fill:5,first:[2,5],fit:1,follow:[1,2,5],form:4,format:5,found:5,free:1,from:[1,2,4,5],full:5,fulli:5,furnish:1,fusion:5,gas:5,gener:4,get:[4,5,6],github:5,gitlab:5,give:4,given:5,glass:5,gpa:5,gradient:5,grant:1,ground:5,groundstat:5,group:5,gs_bandgap:5,gs_bcclatparam:5,gs_energy_pa:5,gs_fcclatparam:5,gs_mag_mom:5,gs_volume_pa:5,hackingmateri:5,half:5,hard:5,has:4,have:[2,5],heat:5,heatmap:[2,4],help:4,here:5,herebi:1,herfindahl:5,hhi:5,high:5,highest:5,hirschman:5,holder:1,homo:5,hse06:[2,4],http:5,hydrogen:5,icsd:5,icsd_oxd_st:5,identifi:4,ignor:5,iiipi:5,impli:1,includ:1,index:[5,6],individu:2,inform:5,inorgan:5,instal:2,instanc:5,instanti:[2,4],interact:4,interest:[2,4],invers:5,ion:5,ionic:5,ionic_radii:5,ionic_radii_h:5,ionic_radii_l:5,ioniz:5,ionizationen:4,isotop:5,its:[4,5],iupac:5,iupac_ord:5,ivpi:5,ivsq:5,json:5,jupyt:6,just:2,kei:[4,5],keyword:4,kind:1,known:5,kwarg:5,lab:[1,5],lanthanid:5,later:5,lattic:5,lda2015:[2,4,5],lda:[2,4],learn:2,least:5,legend:4,length:5,letter:5,liabil:1,liabl:1,licens:6,light:5,like:[2,4],limit:1,line:[2,5],linear:5,liquid:5,liquid_rang:5,list:[2,4,5],load:4,logarithm:5,longitudin:5,low:5,lowest:5,m_def:5,m_resourc:5,machin:2,magnet:5,magpi:[2,5],magpie_elementdata:5,manner:2,map:5,mapper:4,mass:5,master:5,materi:5,materialsproject:5,matmin:[4,5],max_oxd_st:5,maximum:5,melt:5,melting_point:5,mendeleev:5,mendeleev_no:5,menu:[2,4],merchant:1,merg:1,metadata:5,metainfo:[3,4,7],metal:5,metallic_radiu:5,metalloid:5,method:[2,4,5],metr:5,mev:5,micracle_radiu:5,miedema:5,millibarn:5,min_oxd_st:5,miner:5,mineral_hard:5,mineralog:5,minimum:5,mit:1,model:5,modifi:1,modul:[3,6,7],modulu:5,mol:5,molar:5,molar_vol:5,molar_volum:5,molecular:5,momenet:5,moment:5,mpcdf:5,mpg:[0,5],mresourc:5,multipl:4,must:4,naik:0,name:[2,5],natur:5,need:[2,4],nmr:5,nmr_quadrapole_mom:5,nomad:[1,5],nomenclatur:5,none:5,noninfring:1,nonmet:5,normal:5,note:[4,5],notebook:6,notic:1,now:2,nuclear:5,nucleu:5,number:[2,5],obj:4,object:4,observ:5,obtain:1,occupi:5,occur:5,off:5,onc:[2,4],one:[2,4,5],onli:5,opposit:5,option:5,oqmd:5,orbit:5,order:5,org:5,other:1,otherwis:1,out:1,oxdiation_no:5,oxid:5,oxidation_st:5,oxist:4,packag:7,page:6,pair:5,panda:4,paper:[2,5],paramet:5,partial:5,particular:[1,4,5],paul:5,paul_ionic_radii:5,pbe0:[2,4],pbe:[2,4],pbesol:[2,4],per:[4,5],percentag:5,perform:2,period:[2,4,5],periodic_t:5,periodict:[2,3,7],periodict_column:5,periodict_row:5,permiss:1,permit:1,person:1,pettifor:5,phae:5,phase:5,pip:2,plot:[2,4],point:5,poisson:5,poisson_ratio:5,poissons_ratio:5,polariz:5,portion:1,posit:5,potenti:5,press:2,pressur:5,previous:4,produc:5,product:5,properit:2,properti:[2,4,5],proton:5,provid:[1,5],psuedopotenti:5,ptableplotg:4,ptableplotgenf:4,ptableplotgenlda:4,ptableplotgenmatmin:4,ptableplotgenpymat:4,ptableplotgenwebel:4,publish:1,purpos:1,pymat:[2,4],pymatgen:[2,5],python:[2,4,5],quadrupol:5,quantiti:[4,5],queri:0,question:0,quot:5,radii:5,radio:5,radiu:5,radius_typ:5,raimondi:5,rang:5,ratio:5,raw:5,read:4,recommend:5,refer:5,reflect:5,refract:5,refract_index:5,refractic:5,remov:5,renam:4,rename_kei:4,reserv:5,resist:5,restrict:1,revpb:[2,4],right:1,rigid:5,rigidity_mod:5,rigidity_modulu:5,rmax:5,rochow:5,roman:5,row:5,run:2,sai:2,sanderson:5,scale:5,schema:5,scratch:5,search:6,second:5,section:5,section_fhi_metadata:5,section_lda2015_metadata:5,section_matmin_metadata:5,section_pymat_metadata:5,section_webele_metadata:5,select:[2,5],sell:1,separ:5,set:[2,4,5],sever:[2,5],shall:1,shannon:5,shannon_radii:5,shape:5,shear:5,shear_mod:5,shell:5,show:2,showfigf:4,showfiglda:4,showfigmatmin:4,showfigpymat:4,showfigt:4,showfigwebel:4,sietz:5,similar:2,singl:5,sodium:5,softwar:1,solid:5,some:5,sound:5,sourc:[2,5],space:5,spacegroup:5,speci:5,specif:[2,4,5],specifi:[2,5],spin:[2,4,5],spinless:2,start:6,state:5,steadi:5,stp:5,strain:5,stress:5,string:5,structur:5,studi:2,subject:1,sublicens:1,subpackag:[6,7],substanc:5,substanti:1,suggest:0,sum:5,supercond_temp:5,superconduct:5,suppli:4,surfac:5,symbol:[2,4,5],tab:2,tabl:[2,4,5],tangenti:5,tar:2,temp:5,temperatur:5,text:4,thermal:5,thermal_cond:5,thermal_cond_log:5,thermal_conduct:5,thermodynam:5,thi:[1,4,5,6],time:5,tittl:4,tool:2,tort:1,total:5,transfer:5,transmit:5,tree:5,tripl:5,turn:5,type:[2,5],typic:5,under:5,unfil:5,unifi:2,uniqu:5,unit:5,unoccupi:5,updat:2,upon:5,use:[1,2],used:[4,5],useful:4,using:[2,5],util:5,utilti:4,valenc:5,valu:[4,5],van:5,van_der_waals_rad:5,vapor:5,vapour:5,variou:[2,5],vasp:5,vel_of_sound:5,veloc:5,velocity_of_sound:5,via:[2,4],vicker:5,vickers_hard:5,visual:[2,4],volum:5,waal:5,want:[2,4],warranti:1,wavelength:5,webel:[2,4,5],weight:5,well:5,were:5,what:2,when:[4,5],whether:[1,5],which:[2,5],whom:1,wigner:5,wiki:5,wikipedia:5,wish:2,within:5,without:[1,5],work:5,would:5,x10e:5,yellow:5,you:2,young:5,youngs_mod:5,youngs_modulu:5,zeff:5,zero:5},titles:["CONTRIBUTING","LICENSE","Description","atomic-features-package package","atomicfeaturespackage.atomicproperties package","atomicfeaturespackage.metainfo package","Welcome to atomic-features-package\u2019s documentation!","atomicfeaturespackage"],titleterms:{"import":2,atom:[3,6],atomic_properties_dft:4,atomic_properties_lda2015:4,atomic_properties_matmin:4,atomic_properties_pymat:4,atomicfeaturespackag:[4,5,7],atomicproperti:4,contribut:0,descript:2,document:6,featur:[3,6],get:2,indic:6,jupyt:2,licens:1,metainfo:5,modul:[2,4,5],notebook:2,packag:[2,3,4,5,6],periodict:4,start:2,subpackag:3,tabl:6,thi:2,welcom:6}})
\ No newline at end of file
diff --git a/atomicfeaturespackage/docs/_build/latex/LICRcyr2utf8.xdy b/atomicfeaturespackage/docs/_build/latex/LICRcyr2utf8.xdy
deleted file mode 100644
index a9ca1c8..0000000
--- a/atomicfeaturespackage/docs/_build/latex/LICRcyr2utf8.xdy
+++ /dev/null
@@ -1,101 +0,0 @@
-;; -*- coding: utf-8; mode: Lisp; -*-
-;; style file for xindy
-;; filename: LICRcyr2utf8.xdy
-;; description: style file for xindy which maps back LaTeX Internal
-;;   Character Representation of Cyrillic to utf-8
-;; usage: for use with pdflatex produced .idx files.
-;; Contributed by the Sphinx team, July 2018.
-(merge-rule "\IeC {\'\CYRG }" "Ѓ" :string)
-(merge-rule "\IeC {\'\CYRK }" "Ќ" :string)
-(merge-rule "\IeC {\'\cyrg }" "ѓ" :string)
-(merge-rule "\IeC {\'\cyrk }" "ќ" :string)
-(merge-rule "\IeC {\CYRA }" "А" :string)
-(merge-rule "\IeC {\CYRB }" "Б" :string)
-(merge-rule "\IeC {\CYRC }" "Ц" :string)
-(merge-rule "\IeC {\CYRCH }" "Ч" :string)
-(merge-rule "\IeC {\CYRD }" "Д" :string)
-(merge-rule "\IeC {\CYRDJE }" "Ђ" :string)
-(merge-rule "\IeC {\CYRDZE }" "Ѕ" :string)
-(merge-rule "\IeC {\CYRDZHE }" "Џ" :string)
-(merge-rule "\IeC {\CYRE }" "Е" :string)
-(merge-rule "\IeC {\CYREREV }" "Э" :string)
-(merge-rule "\IeC {\CYRERY }" "Ы" :string)
-(merge-rule "\IeC {\CYRF }" "Ф" :string)
-(merge-rule "\IeC {\CYRG }" "Г" :string)
-(merge-rule "\IeC {\CYRGUP }" "Ґ" :string)
-(merge-rule "\IeC {\CYRH }" "Х" :string)
-(merge-rule "\IeC {\CYRHRDSN }" "Ъ" :string)
-(merge-rule "\IeC {\CYRI }" "И" :string)
-(merge-rule "\IeC {\CYRIE }" "Є" :string)
-(merge-rule "\IeC {\CYRII }" "І" :string)
-(merge-rule "\IeC {\CYRISHRT }" "Й" :string)
-(merge-rule "\IeC {\CYRJE }" "Ј" :string)
-(merge-rule "\IeC {\CYRK }" "К" :string)
-(merge-rule "\IeC {\CYRL }" "Л" :string)
-(merge-rule "\IeC {\CYRLJE }" "Љ" :string)
-(merge-rule "\IeC {\CYRM }" "М" :string)
-(merge-rule "\IeC {\CYRN }" "Н" :string)
-(merge-rule "\IeC {\CYRNJE }" "Њ" :string)
-(merge-rule "\IeC {\CYRO }" "О" :string)
-(merge-rule "\IeC {\CYRP }" "П" :string)
-(merge-rule "\IeC {\CYRR }" "Р" :string)
-(merge-rule "\IeC {\CYRS }" "С" :string)
-(merge-rule "\IeC {\CYRSFTSN }" "Ь" :string)
-(merge-rule "\IeC {\CYRSH }" "Ш" :string)
-(merge-rule "\IeC {\CYRSHCH }" "Щ" :string)
-(merge-rule "\IeC {\CYRT }" "Т" :string)
-(merge-rule "\IeC {\CYRTSHE }" "Ћ" :string)
-(merge-rule "\IeC {\CYRU }" "У" :string)
-(merge-rule "\IeC {\CYRUSHRT }" "Ў" :string)
-(merge-rule "\IeC {\CYRV }" "В" :string)
-(merge-rule "\IeC {\CYRYA }" "Я" :string)
-(merge-rule "\IeC {\CYRYI }" "Ї" :string)
-(merge-rule "\IeC {\CYRYO }" "Ё" :string)
-(merge-rule "\IeC {\CYRYU }" "Ю" :string)
-(merge-rule "\IeC {\CYRZ }" "З" :string)
-(merge-rule "\IeC {\CYRZH }" "Ж" :string)
-(merge-rule "\IeC {\cyra }" "а" :string)
-(merge-rule "\IeC {\cyrb }" "б" :string)
-(merge-rule "\IeC {\cyrc }" "ц" :string)
-(merge-rule "\IeC {\cyrch }" "ч" :string)
-(merge-rule "\IeC {\cyrd }" "д" :string)
-(merge-rule "\IeC {\cyrdje }" "ђ" :string)
-(merge-rule "\IeC {\cyrdze }" "ѕ" :string)
-(merge-rule "\IeC {\cyrdzhe }" "џ" :string)
-(merge-rule "\IeC {\cyre }" "е" :string)
-(merge-rule "\IeC {\cyrerev }" "э" :string)
-(merge-rule "\IeC {\cyrery }" "ы" :string)
-(merge-rule "\IeC {\cyrf }" "ф" :string)
-(merge-rule "\IeC {\cyrg }" "г" :string)
-(merge-rule "\IeC {\cyrgup }" "ґ" :string)
-(merge-rule "\IeC {\cyrh }" "х" :string)
-(merge-rule "\IeC {\cyrhrdsn }" "ъ" :string)
-(merge-rule "\IeC {\cyri }" "и" :string)
-(merge-rule "\IeC {\cyrie }" "є" :string)
-(merge-rule "\IeC {\cyrii }" "і" :string)
-(merge-rule "\IeC {\cyrishrt }" "й" :string)
-(merge-rule "\IeC {\cyrje }" "ј" :string)
-(merge-rule "\IeC {\cyrk }" "к" :string)
-(merge-rule "\IeC {\cyrl }" "л" :string)
-(merge-rule "\IeC {\cyrlje }" "љ" :string)
-(merge-rule "\IeC {\cyrm }" "м" :string)
-(merge-rule "\IeC {\cyrn }" "н" :string)
-(merge-rule "\IeC {\cyrnje }" "њ" :string)
-(merge-rule "\IeC {\cyro }" "о" :string)
-(merge-rule "\IeC {\cyrp }" "п" :string)
-(merge-rule "\IeC {\cyrr }" "р" :string)
-(merge-rule "\IeC {\cyrs }" "с" :string)
-(merge-rule "\IeC {\cyrsftsn }" "ь" :string)
-(merge-rule "\IeC {\cyrsh }" "ш" :string)
-(merge-rule "\IeC {\cyrshch }" "щ" :string)
-(merge-rule "\IeC {\cyrt }" "т" :string)
-(merge-rule "\IeC {\cyrtshe }" "ћ" :string)
-(merge-rule "\IeC {\cyru }" "у" :string)
-(merge-rule "\IeC {\cyrushrt }" "ў" :string)
-(merge-rule "\IeC {\cyrv }" "в" :string)
-(merge-rule "\IeC {\cyrya }" "я" :string)
-(merge-rule "\IeC {\cyryi }" "ї" :string)
-(merge-rule "\IeC {\cyryo }" "ё" :string)
-(merge-rule "\IeC {\cyryu }" "ю" :string)
-(merge-rule "\IeC {\cyrz }" "з" :string)
-(merge-rule "\IeC {\cyrzh }" "ж" :string)
diff --git a/atomicfeaturespackage/docs/_build/latex/LICRlatin2utf8.xdy b/atomicfeaturespackage/docs/_build/latex/LICRlatin2utf8.xdy
deleted file mode 100644
index 31c80f9..0000000
--- a/atomicfeaturespackage/docs/_build/latex/LICRlatin2utf8.xdy
+++ /dev/null
@@ -1,239 +0,0 @@
-;; style file for xindy
-;; filename: LICRlatin2utf8.xdy
-;; description: style file for xindy which maps back LaTeX Internal
-;;   Character Representation of letters (as arising in .idx index
-;;   file) to UTF-8 encoding for correct sorting by xindy.
-;; usage: for use with the pdflatex engine,
-;;        *not* for use with xelatex or lualatex.
-;;
-;; This is based upon xindy's distributed file tex/inputenc/utf8.xdy.
-;; The modifications include:
-;;
-;; - Updates for compatibility with current LaTeX macro encoding.
-;;
-;; - Systematic usage of the \IeC {...} mark-up, because mark-up in
-;;   tex/inputenc/utf8.xdy was using it on seemingly random basis, and
-;;   Sphinx coercing of xindy usability for both Latin and Cyrillic scripts
-;;   with pdflatex requires its systematic presence here.
-;;
-;; - Support for some extra letters: Ÿ, Ŋ, ŋ, Œ, œ, IJ, ij, ȷ and ẞ.
-;;
-;;   Indeed Sphinx needs to support for pdflatex engine all Unicode letters
-;;   available in TeX T1 font encoding.  The above letters are found in
-;;   that encoding but not in the Latin1, 2, 3 charsets which are those
-;;   covered by original tex/inputenc/utf8.xdy.
-;;
-;; - There is a problem that ȷ is not supported out-of-the box by LaTeX
-;;   with inputenc, one must add explicitely
-;;       \DeclareUnicodeCharacter{0237}{\j}
-;;   to preamble of LaTeX document.  However this character is not supported
-;;   by the TeX "times" font used by default by Sphinx for pdflatex engine.
-;;
-;;     **Update**: since LaTeX 2018/12/01, the \j as well as \SS, \k{} and
-;;                  \.{} need no extra user declaration anymore.
-;;
-;; - ẞ needs \DeclareUnicodeCharacter{1E9E}{\SS} (but ß needs no extra set-up).
-;;
-;; - U+02DB (˛) and U+02D9 (˙) are also not supported by inputenc
-;;   out of the box and require
-;;       \DeclareUnicodeCharacter{02DB}{\k{}}
-;;       \DeclareUnicodeCharacter{02D9}{\.{}}
-;;   to be added to preamble.
-;;
-;; - U+0127 ħ and U+0126 Ħ are absent from TeX T1+TS1 font encodings.
-;;
-;; - Characters Ŋ and ŋ are not supported by TeX font "times" used by
-;;   default by Sphinx for pdflatex engine but they are supported by
-;;   some TeX fonts, in particular by the default LaTeX font for T1
-;;   encoding.
-;;
-;; - " and ~ must be escaped as ~" and resp. ~~ in xindy merge rules.
-;;
-;; Contributed by the Sphinx team, July 2018.
-;;
-;; See sphinx.xdy for superior figures, as they are escaped by LaTeX writer.
-(merge-rule "\IeC {\textonesuperior }" "¹" :string)
-(merge-rule "\IeC {\texttwosuperior }" "²" :string)
-(merge-rule "\IeC {\textthreesuperior }" "³" :string)
-(merge-rule "\IeC {\'a}" "á" :string)
-(merge-rule "\IeC {\'A}" "Á" :string)
-(merge-rule "\IeC {\`a}" "à" :string)
-(merge-rule "\IeC {\`A}" "À" :string)
-(merge-rule "\IeC {\^a}" "â" :string)
-(merge-rule "\IeC {\^A}" "Â" :string)
-(merge-rule "\IeC {\~"a}" "ä" :string)
-(merge-rule "\IeC {\~"A}" "Ä" :string)
-(merge-rule "\IeC {\~~a}" "ã" :string)
-(merge-rule "\IeC {\~~A}" "Ã" :string)
-(merge-rule "\IeC {\c c}" "ç" :string)
-(merge-rule "\IeC {\c C}" "Ç" :string)
-(merge-rule "\IeC {\'c}" "ć" :string)
-(merge-rule "\IeC {\'C}" "Ć" :string)
-(merge-rule "\IeC {\^c}" "ĉ" :string)
-(merge-rule "\IeC {\^C}" "Ĉ" :string)
-(merge-rule "\IeC {\.c}" "ċ" :string)
-(merge-rule "\IeC {\.C}" "Ċ" :string)
-(merge-rule "\IeC {\c s}" "ş" :string)
-(merge-rule "\IeC {\c S}" "Ş" :string)
-(merge-rule "\IeC {\c t}" "ţ" :string)
-(merge-rule "\IeC {\c T}" "Ţ" :string)
-(merge-rule "\IeC {\-}" "­" :string); soft hyphen
-(merge-rule "\IeC {\textdiv }" "÷" :string)
-(merge-rule "\IeC {\'e}" "é" :string)
-(merge-rule "\IeC {\'E}" "É" :string)
-(merge-rule "\IeC {\`e}" "è" :string)
-(merge-rule "\IeC {\`E}" "È" :string)
-(merge-rule "\IeC {\^e}" "ê" :string)
-(merge-rule "\IeC {\^E}" "Ê" :string)
-(merge-rule "\IeC {\~"e}" "ë" :string)
-(merge-rule "\IeC {\~"E}" "Ë" :string)
-(merge-rule "\IeC {\^g}" "ĝ" :string)
-(merge-rule "\IeC {\^G}" "Ĝ" :string)
-(merge-rule "\IeC {\.g}" "ġ" :string)
-(merge-rule "\IeC {\.G}" "Ġ" :string)
-(merge-rule "\IeC {\^h}" "ĥ" :string)
-(merge-rule "\IeC {\^H}" "Ĥ" :string)
-(merge-rule "\IeC {\H o}" "ő" :string)
-(merge-rule "\IeC {\H O}" "Ő" :string)
-(merge-rule "\IeC {\textacutedbl }" "˝" :string)
-(merge-rule "\IeC {\H u}" "ű" :string)
-(merge-rule "\IeC {\H U}" "Ű" :string)
-(merge-rule "\IeC {\ae }" "æ" :string)
-(merge-rule "\IeC {\AE }" "Æ" :string)
-(merge-rule "\IeC {\textcopyright }" "©" :string)
-(merge-rule "\IeC {\c \ }" "¸" :string)
-(merge-rule "\IeC {\dh }" "ð" :string)
-(merge-rule "\IeC {\DH }" "Ð" :string)
-(merge-rule "\IeC {\dj }" "đ" :string)
-(merge-rule "\IeC {\DJ }" "Đ" :string)
-(merge-rule "\IeC {\guillemotleft }" "«" :string)
-(merge-rule "\IeC {\guillemotright }" "»" :string)
-(merge-rule "\IeC {\'\i }" "í" :string)
-(merge-rule "\IeC {\`\i }" "ì" :string)
-(merge-rule "\IeC {\^\i }" "î" :string)
-(merge-rule "\IeC {\~"\i }" "ï" :string)
-(merge-rule "\IeC {\i }" "ı" :string)
-(merge-rule "\IeC {\^\j }" "ĵ" :string)
-(merge-rule "\IeC {\k {}}" "˛" :string)
-(merge-rule "\IeC {\l }" "ł" :string)
-(merge-rule "\IeC {\L }" "Ł" :string)
-(merge-rule "\IeC {\nobreakspace }" " " :string)
-(merge-rule "\IeC {\o }" "ø" :string)
-(merge-rule "\IeC {\O }" "Ø" :string)
-(merge-rule "\IeC {\textsterling }" "£" :string)
-(merge-rule "\IeC {\textparagraph }" "¶" :string)
-(merge-rule "\IeC {\ss }" "ß" :string)
-(merge-rule "\IeC {\textsection }" "§" :string)
-(merge-rule "\IeC {\textbrokenbar }" "¦" :string)
-(merge-rule "\IeC {\textcent }" "¢" :string)
-(merge-rule "\IeC {\textcurrency }" "¤" :string)
-(merge-rule "\IeC {\textdegree }" "°" :string)
-(merge-rule "\IeC {\textexclamdown }" "¡" :string)
-(merge-rule "\IeC {\texthbar }" "ħ" :string)
-(merge-rule "\IeC {\textHbar }" "Ħ" :string)
-(merge-rule "\IeC {\textonehalf }" "½" :string)
-(merge-rule "\IeC {\textonequarter }" "¼" :string)
-(merge-rule "\IeC {\textordfeminine }" "ª" :string)
-(merge-rule "\IeC {\textordmasculine }" "º" :string)
-(merge-rule "\IeC {\textperiodcentered }" "·" :string)
-(merge-rule "\IeC {\textquestiondown }" "¿" :string)
-(merge-rule "\IeC {\textregistered }" "®" :string)
-(merge-rule "\IeC {\textthreequarters }" "¾" :string)
-(merge-rule "\IeC {\textyen }" "¥" :string)
-(merge-rule "\IeC {\th }" "þ" :string)
-(merge-rule "\IeC {\TH }" "Þ" :string)
-(merge-rule "\IeC {\'I}" "Í" :string)
-(merge-rule "\IeC {\`I}" "Ì" :string)
-(merge-rule "\IeC {\^I}" "Î" :string)
-(merge-rule "\IeC {\~"I}" "Ï" :string)
-(merge-rule "\IeC {\.I}" "İ" :string)
-(merge-rule "\IeC {\^J}" "Ĵ" :string)
-(merge-rule "\IeC {\k a}" "ą" :string)
-(merge-rule "\IeC {\k A}" "Ą" :string)
-(merge-rule "\IeC {\k e}" "ę" :string)
-(merge-rule "\IeC {\k E}" "Ę" :string)
-(merge-rule "\IeC {\'l}" "ĺ" :string)
-(merge-rule "\IeC {\'L}" "Ĺ" :string)
-(merge-rule "\IeC {\textlnot }" "¬" :string)
-(merge-rule "\IeC {\textmu }" "µ" :string)
-(merge-rule "\IeC {\'n}" "ń" :string)
-(merge-rule "\IeC {\'N}" "Ń" :string)
-(merge-rule "\IeC {\~~n}" "ñ" :string)
-(merge-rule "\IeC {\~~N}" "Ñ" :string)
-(merge-rule "\IeC {\'o}" "ó" :string)
-(merge-rule "\IeC {\'O}" "Ó" :string)
-(merge-rule "\IeC {\`o}" "ò" :string)
-(merge-rule "\IeC {\`O}" "Ò" :string)
-(merge-rule "\IeC {\^o}" "ô" :string)
-(merge-rule "\IeC {\^O}" "Ô" :string)
-(merge-rule "\IeC {\~"o}" "ö" :string)
-(merge-rule "\IeC {\~"O}" "Ö" :string)
-(merge-rule "\IeC {\~~o}" "õ" :string)
-(merge-rule "\IeC {\~~O}" "Õ" :string)
-(merge-rule "\IeC {\textpm }" "±" :string)
-(merge-rule "\IeC {\r a}" "å" :string)
-(merge-rule "\IeC {\r A}" "Å" :string)
-(merge-rule "\IeC {\'r}" "ŕ" :string)
-(merge-rule "\IeC {\'R}" "Ŕ" :string)
-(merge-rule "\IeC {\r u}" "ů" :string)
-(merge-rule "\IeC {\r U}" "Ů" :string)
-(merge-rule "\IeC {\'s}" "ś" :string)
-(merge-rule "\IeC {\'S}" "Ś" :string)
-(merge-rule "\IeC {\^s}" "ŝ" :string)
-(merge-rule "\IeC {\^S}" "Ŝ" :string)
-(merge-rule "\IeC {\textasciidieresis }" "¨" :string)
-(merge-rule "\IeC {\textasciimacron }" "¯" :string)
-(merge-rule "\IeC {\.{}}" "˙" :string)
-(merge-rule "\IeC {\textasciiacute }" "´" :string)
-(merge-rule "\IeC {\texttimes }" "×" :string)
-(merge-rule "\IeC {\u a}" "ă" :string)
-(merge-rule "\IeC {\u A}" "Ă" :string)
-(merge-rule "\IeC {\u g}" "ğ" :string)
-(merge-rule "\IeC {\u G}" "Ğ" :string)
-(merge-rule "\IeC {\textasciibreve }" "˘" :string)
-(merge-rule "\IeC {\'u}" "ú" :string)
-(merge-rule "\IeC {\'U}" "Ú" :string)
-(merge-rule "\IeC {\`u}" "ù" :string)
-(merge-rule "\IeC {\`U}" "Ù" :string)
-(merge-rule "\IeC {\^u}" "û" :string)
-(merge-rule "\IeC {\^U}" "Û" :string)
-(merge-rule "\IeC {\~"u}" "ü" :string)
-(merge-rule "\IeC {\~"U}" "Ü" :string)
-(merge-rule "\IeC {\u u}" "ŭ" :string)
-(merge-rule "\IeC {\u U}" "Ŭ" :string)
-(merge-rule "\IeC {\v c}" "č" :string)
-(merge-rule "\IeC {\v C}" "Č" :string)
-(merge-rule "\IeC {\v d}" "ď" :string)
-(merge-rule "\IeC {\v D}" "Ď" :string)
-(merge-rule "\IeC {\v e}" "ě" :string)
-(merge-rule "\IeC {\v E}" "Ě" :string)
-(merge-rule "\IeC {\v l}" "ľ" :string)
-(merge-rule "\IeC {\v L}" "Ľ" :string)
-(merge-rule "\IeC {\v n}" "ň" :string)
-(merge-rule "\IeC {\v N}" "Ň" :string)
-(merge-rule "\IeC {\v r}" "ř" :string)
-(merge-rule "\IeC {\v R}" "Ř" :string)
-(merge-rule "\IeC {\v s}" "š" :string)
-(merge-rule "\IeC {\v S}" "Š" :string)
-(merge-rule "\IeC {\textasciicaron }" "ˇ" :string)
-(merge-rule "\IeC {\v t}" "ť" :string)
-(merge-rule "\IeC {\v T}" "Ť" :string)
-(merge-rule "\IeC {\v z}" "ž" :string)
-(merge-rule "\IeC {\v Z}" "Ž" :string)
-(merge-rule "\IeC {\'y}" "ý" :string)
-(merge-rule "\IeC {\'Y}" "Ý" :string)
-(merge-rule "\IeC {\~"y}" "ÿ" :string)
-(merge-rule "\IeC {\'z}" "ź" :string)
-(merge-rule "\IeC {\'Z}" "Ź" :string)
-(merge-rule "\IeC {\.z}" "ż" :string)
-(merge-rule "\IeC {\.Z}" "Ż" :string)
-;; letters not in Latin1, 2, 3 but available in TeX T1 font encoding
-(merge-rule "\IeC {\~"Y}" "Ÿ" :string)
-(merge-rule "\IeC {\NG }" "Ŋ" :string)
-(merge-rule "\IeC {\ng }" "ŋ" :string)
-(merge-rule "\IeC {\OE }" "Œ" :string)
-(merge-rule "\IeC {\oe }" "œ" :string)
-(merge-rule "\IeC {\IJ }" "IJ" :string)
-(merge-rule "\IeC {\ij }" "ij" :string)
-(merge-rule "\IeC {\j }" "ȷ" :string)
-(merge-rule "\IeC {\SS }" "ẞ" :string)
diff --git a/atomicfeaturespackage/docs/_build/latex/LatinRules.xdy b/atomicfeaturespackage/docs/_build/latex/LatinRules.xdy
deleted file mode 100644
index 99f14a2..0000000
--- a/atomicfeaturespackage/docs/_build/latex/LatinRules.xdy
+++ /dev/null
@@ -1,607 +0,0 @@
-;; style file for xindy
-;; filename: LatinRules.xdy
-;;
-;; It is based upon xindy's files lang/general/utf8.xdy and
-;; lang/general/utf8-lang.xdy which implement
-;; "a general sorting order for Western European languages"
-;;
-;; The aim for Sphinx is to be able to index in a Cyrillic document
-;; also terms using the Latin alphabets, inclusive of letters
-;; with diacritics.  To this effect the xindy rules from lang/general
-;; got manually re-coded to avoid collisions with the encoding
-;; done by xindy for sorting words in Cyrillic languages, which was
-;; observed not to use bytes with octal encoding 0o266 or higher.
-;;
-;; So here we use only 0o266 or higher bytes.
-;; (Ŋ, ŋ, IJ, and ij are absent from
-;; lang/general/utf8.xdy and not included here)
-;; Contributed by the Sphinx team, 2018.
-
-(define-letter-group "A" :prefixes ("�"))
-(define-letter-group "B" :after "A" :prefixes ("�"))
-(define-letter-group "C" :after "B" :prefixes ("�"))
-(define-letter-group "D" :after "C" :prefixes ("�"))
-(define-letter-group "E" :after "D" :prefixes ("�"))
-(define-letter-group "F" :after "E" :prefixes ("�"))
-(define-letter-group "G" :after "F" :prefixes ("�"))
-(define-letter-group "H" :after "G" :prefixes ("�"))
-(define-letter-group "I" :after "H" :prefixes ("�"))
-(define-letter-group "J" :after "I" :prefixes ("�"))
-(define-letter-group "K" :after "J" :prefixes ("�"))
-(define-letter-group "L" :after "K" :prefixes ("�"))
-(define-letter-group "M" :after "L" :prefixes ("�"))
-(define-letter-group "N" :after "M" :prefixes ("�"))
-(define-letter-group "O" :after "N" :prefixes ("�"))
-(define-letter-group "P" :after "O" :prefixes ("�"))
-(define-letter-group "Q" :after "P" :prefixes ("�"))
-(define-letter-group "R" :after "Q" :prefixes ("�"))
-(define-letter-group "S" :after "R" :prefixes ("�"))
-(define-letter-group "T" :after "S" :prefixes ("�"))
-(define-letter-group "U" :after "T" :prefixes ("�"))
-(define-letter-group "V" :after "U" :prefixes ("�"))
-(define-letter-group "W" :after "V" :prefixes ("�"))
-(define-letter-group "X" :after "W" :prefixes ("�"))
-(define-letter-group "Y" :after "X" :prefixes ("�"))
-(define-letter-group "Z" :after "Y" :prefixes ("�"))
-
-(define-rule-set "sphinx-xy-alphabetize"
-
-  :rules  (("À" "�" :string)
-           ("Ă" "�" :string)
-           ("â" "�" :string)
-           ("Ä" "�" :string)
-           ("à" "�" :string)
-           ("Å" "�" :string)
-           ("Ã" "�" :string)
-           ("Á" "�" :string)
-           ("á" "�" :string)
-           ("ã" "�" :string)
-           ("Â" "�" :string)
-           ("ă" "�" :string)
-           ("å" "�" :string)
-           ("ą" "�" :string)
-           ("ä" "�" :string)
-           ("Ą" "�" :string)
-           ("æ" "��" :string)
-           ("Æ" "��" :string)
-           ("ć" "�" :string)
-           ("ĉ" "�" :string)
-           ("ç" "�" :string)
-           ("Č" "�" :string)
-           ("č" "�" :string)
-           ("Ĉ" "�" :string)
-           ("Ç" "�" :string)
-           ("Ć" "�" :string)
-           ("ď" "�" :string)
-           ("Đ" "�" :string)
-           ("Ď" "�" :string)
-           ("đ" "�" :string)
-           ("ê" "�" :string)
-           ("Ę" "�" :string)
-           ("Ě" "�" :string)
-           ("ë" "�" :string)
-           ("ě" "�" :string)
-           ("é" "�" :string)
-           ("È" "�" :string)
-           ("Ë" "�" :string)
-           ("É" "�" :string)
-           ("è" "�" :string)
-           ("Ê" "�" :string)
-           ("ę" "�" :string)
-           ("ĝ" "�" :string)
-           ("ğ" "�" :string)
-           ("Ğ" "�" :string)
-           ("Ĝ" "�" :string)
-           ("ĥ" "�" :string)
-           ("Ĥ" "�" :string)
-           ("Ï" "�" :string)
-           ("Í" "�" :string)
-           ("ï" "�" :string)
-           ("Î" "�" :string)
-           ("î" "�" :string)
-           ("ı" "�" :string)
-           ("İ" "�" :string)
-           ("í" "�" :string)
-           ("Ì" "�" :string)
-           ("ì" "�" :string)
-           ("Ĵ" "�" :string)
-           ("ĵ" "�" :string)
-           ("ł" "�" :string)
-           ("Ł" "�" :string)
-           ("ľ" "�" :string)
-           ("Ľ" "�" :string)
-           ("ń" "�" :string)
-           ("Ń" "�" :string)
-           ("ñ" "�" :string)
-           ("ň" "�" :string)
-           ("Ñ" "�" :string)
-           ("Ň" "�" :string)
-           ("Õ" "�" :string)
-           ("Ő" "�" :string)
-           ("ó" "�" :string)
-           ("ö" "�" :string)
-           ("ô" "�" :string)
-           ("ő" "�" :string)
-           ("Ø" "�" :string)
-           ("Ö" "�" :string)
-           ("õ" "�" :string)
-           ("Ô" "�" :string)
-           ("ø" "�" :string)
-           ("Ó" "�" :string)
-           ("Ò" "�" :string)
-           ("ò" "�" :string)
-           ("œ" "ĺ" :string)
-           ("Œ" "ĺ" :string)
-           ("Ř" "�" :string)
-           ("ř" "�" :string)
-           ("Ŕ" "�" :string)
-           ("ŕ" "�" :string)
-           ("ŝ" "�" :string)
-           ("Ś" "�" :string)
-           ("ș" "�" :string)
-           ("ş" "�" :string)
-           ("Ŝ" "�" :string)
-           ("ś" "�" :string)
-           ("Ș" "�" :string)
-           ("š" "�" :string)
-           ("Ş" "�" :string)
-           ("Š" "�" :string)
-           ("ß" "��" :string)
-           ("Ț" "�" :string)
-           ("Ť" "�" :string)
-           ("ț" "�" :string)
-           ("ť" "�" :string)
-           ("û" "�" :string)
-           ("ŭ" "�" :string)
-           ("ů" "�" :string)
-           ("ű" "�" :string)
-           ("ù" "�" :string)
-           ("Ŭ" "�" :string)
-           ("Ù" "�" :string)
-           ("Ű" "�" :string)
-           ("Ü" "�" :string)
-           ("Ů" "�" :string)
-           ("ú" "�" :string)
-           ("Ú" "�" :string)
-           ("Û" "�" :string)
-           ("ü" "�" :string)
-           ("ÿ" "�" :string)
-           ("Ý" "�" :string)
-           ("Ÿ" "�" :string)
-           ("ý" "�" :string)
-           ("Ż" "�" :string)
-           ("Ž" "�" :string)
-           ("Ź" "�" :string)
-           ("ž" "�" :string)
-           ("ż" "�" :string)
-           ("ź" "�" :string)
-           ("a" "�" :string)
-           ("A" "�" :string)
-           ("b" "�" :string)
-           ("B" "�" :string)
-           ("c" "�" :string)
-           ("C" "�" :string)
-           ("d" "�" :string)
-           ("D" "�" :string)
-           ("e" "�" :string)
-           ("E" "�" :string)
-           ("F" "�" :string)
-           ("f" "�" :string)
-           ("G" "�" :string)
-           ("g" "�" :string)
-           ("H" "�" :string)
-           ("h" "�" :string)
-           ("i" "�" :string)
-           ("I" "�" :string)
-           ("J" "�" :string)
-           ("j" "�" :string)
-           ("K" "�" :string)
-           ("k" "�" :string)
-           ("L" "�" :string)
-           ("l" "�" :string)
-           ("M" "�" :string)
-           ("m" "�" :string)
-           ("n" "�" :string)
-           ("N" "�" :string)
-           ("O" "�" :string)
-           ("o" "�" :string)
-           ("p" "�" :string)
-           ("P" "�" :string)
-           ("Q" "�" :string)
-           ("q" "�" :string)
-           ("r" "�" :string)
-           ("R" "�" :string)
-           ("S" "�" :string)
-           ("s" "�" :string)
-           ("t" "�" :string)
-           ("T" "�" :string)
-           ("u" "�" :string)
-           ("U" "�" :string)
-           ("v" "�" :string)
-           ("V" "�" :string)
-           ("W" "�" :string)
-           ("w" "�" :string)
-           ("x" "�" :string)
-           ("X" "�" :string)
-           ("Y" "�" :string)
-           ("y" "�" :string)
-           ("z" "�" :string)
-           ("Z" "�" :string)
-           ))
-
-(define-rule-set "sphinx-xy-resolve-diacritics"
-
-  :rules  (("Ĥ" "�" :string)
-           ("ó" "�" :string)
-           ("ľ" "�" :string)
-           ("Ř" "�" :string)
-           ("ĝ" "�" :string)
-           ("ď" "�" :string)
-           ("Ě" "�" :string)
-           ("ĥ" "�" :string)
-           ("Č" "�" :string)
-           ("Ĵ" "�" :string)
-           ("ě" "�" :string)
-           ("ž" "�" :string)
-           ("Ď" "�" :string)
-           ("ř" "�" :string)
-           ("Ž" "�" :string)
-           ("ı" "�" :string)
-           ("Ť" "�" :string)
-           ("á" "�" :string)
-           ("č" "�" :string)
-           ("Á" "�" :string)
-           ("ň" "�" :string)
-           ("Š" "�" :string)
-           ("Ň" "�" :string)
-           ("ĵ" "�" :string)
-           ("ť" "�" :string)
-           ("Ó" "�" :string)
-           ("ý" "�" :string)
-           ("Ĝ" "�" :string)
-           ("Ú" "�" :string)
-           ("Ľ" "�" :string)
-           ("š" "�" :string)
-           ("Ý" "�" :string)
-           ("ú" "�" :string)
-           ("Ś" "�" :string)
-           ("ć" "�" :string)
-           ("Ł" "�" :string)
-           ("ł" "�" :string)
-           ("ń" "�" :string)
-           ("À" "�" :string)
-           ("Ź" "�" :string)
-           ("à" "�" :string)
-           ("Ń" "�" :string)
-           ("Đ" "�" :string)
-           ("ÿ" "�" :string)
-           ("ś" "�" :string)
-           ("Ğ" "�" :string)
-           ("ğ" "�" :string)
-           ("Ù" "�" :string)
-           ("İ" "�" :string)
-           ("đ" "�" :string)
-           ("ù" "�" :string)
-           ("Ț" "�" :string)
-           ("é" "�" :string)
-           ("ŕ" "�" :string)
-           ("Ć" "�" :string)
-           ("ț" "�" :string)
-           ("ò" "�" :string)
-           ("ź" "�" :string)
-           ("Ò" "�" :string)
-           ("Ÿ" "�" :string)
-           ("Ŕ" "�" :string)
-           ("É" "�" :string)
-           ("ĉ" "�" :string)
-           ("ô" "�" :string)
-           ("Í" "�" :string)
-           ("ŝ" "�" :string)
-           ("Ż" "�" :string)
-           ("Ă" "�" :string)
-           ("Ŝ" "�" :string)
-           ("ñ" "�" :string)
-           ("ŭ" "�" :string)
-           ("í" "�" :string)
-           ("È" "�" :string)
-           ("Ô" "�" :string)
-           ("Ŭ" "�" :string)
-           ("ż" "�" :string)
-           ("Ñ" "�" :string)
-           ("è" "�" :string)
-           ("Ĉ" "�" :string)
-           ("ă" "�" :string)
-           ("â" "�" :string)
-           ("û" "�" :string)
-           ("ê" "�" :string)
-           ("Õ" "�" :string)
-           ("õ" "�" :string)
-           ("ș" "�" :string)
-           ("ç" "�" :string)
-           ("Â" "�" :string)
-           ("Ê" "�" :string)
-           ("Û" "�" :string)
-           ("Ç" "�" :string)
-           ("ì" "�" :string)
-           ("Ì" "�" :string)
-           ("Ș" "�" :string)
-           ("ö" "�" :string)
-           ("Ö" "�" :string)
-           ("ş" "�" :string)
-           ("ů" "�" :string)
-           ("ë" "�" :string)
-           ("ã" "�" :string)
-           ("î" "�" :string)
-           ("Î" "�" :string)
-           ("Ã" "�" :string)
-           ("Ş" "�" :string)
-           ("Ů" "�" :string)
-           ("Ë" "�" :string)
-           ("ï" "�" :string)
-           ("Ő" "�" :string)
-           ("Ï" "�" :string)
-           ("Ę" "�" :string)
-           ("ő" "�" :string)
-           ("Ü" "�" :string)
-           ("Å" "�" :string)
-           ("ü" "�" :string)
-           ("ę" "�" :string)
-           ("å" "�" :string)
-           ("Ä" "�" :string)
-           ("ű" "�" :string)
-           ("Ø" "�" :string)
-           ("ø" "�" :string)
-           ("Ű" "�" :string)
-           ("ä" "�" :string)
-           ("Ą" "�" :string)
-           ("ą" "�" :string)
-           ("œ" "�" :string)
-           ("ß" "�" :string)
-           ("Æ" "�" :string)
-           ("Œ" "�" :string)
-           ("æ" "�" :string)
-           ("e" "�" :string)
-           ("t" "�" :string)
-           ("L" "�" :string)
-           ("Y" "�" :string)
-           ("J" "�" :string)
-           ("a" "�" :string)
-           ("p" "�" :string)
-           ("u" "�" :string)
-           ("j" "�" :string)
-           ("b" "�" :string)
-           ("G" "�" :string)
-           ("U" "�" :string)
-           ("F" "�" :string)
-           ("H" "�" :string)
-           ("i" "�" :string)
-           ("z" "�" :string)
-           ("c" "�" :string)
-           ("l" "�" :string)
-           ("A" "�" :string)
-           ("Q" "�" :string)
-           ("w" "�" :string)
-           ("D" "�" :string)
-           ("R" "�" :string)
-           ("d" "�" :string)
-           ("s" "�" :string)
-           ("r" "�" :string)
-           ("k" "�" :string)
-           ("v" "�" :string)
-           ("m" "�" :string)
-           ("P" "�" :string)
-           ("y" "�" :string)
-           ("K" "�" :string)
-           ("q" "�" :string)
-           ("S" "�" :string)
-           ("I" "�" :string)
-           ("C" "�" :string)
-           ("M" "�" :string)
-           ("Z" "�" :string)
-           ("T" "�" :string)
-           ("W" "�" :string)
-           ("B" "�" :string)
-           ("h" "�" :string)
-           ("x" "�" :string)
-           ("X" "�" :string)
-           ("f" "�" :string)
-           ("E" "�" :string)
-           ("V" "�" :string)
-           ("N" "�" :string)
-           ("O" "�" :string)
-           ("o" "�" :string)
-           ("g" "�" :string)
-           ("n" "�" :string)
-           ))
-
-(define-rule-set "sphinx-xy-resolve-case"
-
-  :rules  (("Ú" "8" :string)
-           ("Ÿ" "8" :string)
-           ("Ç" "8" :string)
-           ("Ĉ" "8" :string)
-           ("Ŕ" "8" :string)
-           ("Ľ" "8" :string)
-           ("Ů" "8" :string)
-           ("Ý" "8" :string)
-           ("É" "8" :string)
-           ("Ë" "8" :string)
-           ("Ș" "8" :string)
-           ("Ì" "8" :string)
-           ("Ê" "8" :string)
-           ("Ň" "8" :string)
-           ("Ą" "8" :string)
-           ("Š" "8" :string)
-           ("Û" "8" :string)
-           ("Ş" "8" :string)
-           ("Ć" "8" :string)
-           ("Ò" "8" :string)
-           ("Ĝ" "8" :string)
-           ("Ñ" "8" :string)
-           ("Ó" "8" :string)
-           ("Î" "8" :string)
-           ("Á" "8" :string)
-           ("Ã" "8" :string)
-           ("Ț" "8" :string)
-           ("Å" "8" :string)
-           ("Ğ" "8" :string)
-           ("Ü" "8" :string)
-           ("È" "8" :string)
-           ("Ô" "8" :string)
-           ("İ" "8" :string)
-           ("Ű" "8" :string)
-           ("Ù" "8" :string)
-           ("Ŭ" "8" :string)
-           ("Â" "8" :string)
-           ("Ť" "8" :string)
-           ("Ń" "8" :string)
-           ("Ď" "8" :string)
-           ("Ź" "8" :string)
-           ("Ž" "8" :string)
-           ("Đ" "8" :string)
-           ("Ŝ" "8" :string)
-           ("Č" "8" :string)
-           ("Ĵ" "8" :string)
-           ("Ö" "8" :string)
-           ("Ø" "8" :string)
-           ("Ż" "8" :string)
-           ("Ł" "8" :string)
-           ("Ă" "8" :string)
-           ("Ě" "8" :string)
-           ("Ő" "8" :string)
-           ("Õ" "8" :string)
-           ("Ę" "8" :string)
-           ("Ï" "8" :string)
-           ("À" "8" :string)
-           ("Ĥ" "8" :string)
-           ("Ä" "8" :string)
-           ("Ś" "8" :string)
-           ("Ř" "8" :string)
-           ("Í" "8" :string)
-           ("Œ" "89" :string)
-           ("Æ" "89" :string)
-           ("ì" "9" :string)
-           ("è" "9" :string)
-           ("ą" "9" :string)
-           ("š" "9" :string)
-           ("ú" "9" :string)
-           ("å" "9" :string)
-           ("ă" "9" :string)
-           ("ę" "9" :string)
-           ("ü" "9" :string)
-           ("ź" "9" :string)
-           ("ò" "9" :string)
-           ("ť" "9" :string)
-           ("ț" "9" :string)
-           ("ĵ" "9" :string)
-           ("ŕ" "9" :string)
-           ("ż" "9" :string)
-           ("ä" "9" :string)
-           ("ý" "9" :string)
-           ("ù" "9" :string)
-           ("á" "9" :string)
-           ("é" "9" :string)
-           ("č" "9" :string)
-           ("ň" "9" :string)
-           ("ś" "9" :string)
-           ("ø" "9" :string)
-           ("í" "9" :string)
-           ("đ" "9" :string)
-           ("ı" "9" :string)
-           ("ğ" "9" :string)
-           ("î" "9" :string)
-           ("ã" "9" :string)
-           ("à" "9" :string)
-           ("ř" "9" :string)
-           ("ő" "9" :string)
-           ("ů" "9" :string)
-           ("ș" "9" :string)
-           ("ÿ" "9" :string)
-           ("ë" "9" :string)
-           ("ŭ" "9" :string)
-           ("ç" "9" :string)
-           ("ű" "9" :string)
-           ("ñ" "9" :string)
-           ("õ" "9" :string)
-           ("ě" "9" :string)
-           ("ş" "9" :string)
-           ("ž" "9" :string)
-           ("ĝ" "9" :string)
-           ("ŝ" "9" :string)
-           ("ń" "9" :string)
-           ("û" "9" :string)
-           ("ł" "9" :string)
-           ("ď" "9" :string)
-           ("ĥ" "9" :string)
-           ("ê" "9" :string)
-           ("ô" "9" :string)
-           ("ĉ" "9" :string)
-           ("â" "9" :string)
-           ("ć" "9" :string)
-           ("ï" "9" :string)
-           ("ö" "9" :string)
-           ("ľ" "9" :string)
-           ("ó" "9" :string)
-           ("æ" "99" :string)
-           ("ß" "99" :string)
-           ("œ" "99" :string)
-           ("N" "8" :string)
-           ("V" "8" :string)
-           ("O" "8" :string)
-           ("X" "8" :string)
-           ("E" "8" :string)
-           ("P" "8" :string)
-           ("K" "8" :string)
-           ("T" "8" :string)
-           ("Z" "8" :string)
-           ("M" "8" :string)
-           ("C" "8" :string)
-           ("I" "8" :string)
-           ("S" "8" :string)
-           ("B" "8" :string)
-           ("W" "8" :string)
-           ("D" "8" :string)
-           ("R" "8" :string)
-           ("H" "8" :string)
-           ("F" "8" :string)
-           ("Q" "8" :string)
-           ("A" "8" :string)
-           ("G" "8" :string)
-           ("U" "8" :string)
-           ("J" "8" :string)
-           ("Y" "8" :string)
-           ("L" "8" :string)
-           ("o" "9" :string)
-           ("n" "9" :string)
-           ("g" "9" :string)
-           ("x" "9" :string)
-           ("f" "9" :string)
-           ("y" "9" :string)
-           ("q" "9" :string)
-           ("h" "9" :string)
-           ("w" "9" :string)
-           ("s" "9" :string)
-           ("d" "9" :string)
-           ("v" "9" :string)
-           ("k" "9" :string)
-           ("r" "9" :string)
-           ("m" "9" :string)
-           ("z" "9" :string)
-           ("c" "9" :string)
-           ("i" "9" :string)
-           ("l" "9" :string)
-           ("b" "9" :string)
-           ("j" "9" :string)
-           ("a" "9" :string)
-           ("p" "9" :string)
-           ("u" "9" :string)
-           ("t" "9" :string)
-           ("e" "9" :string)
-           ))
-
-(use-rule-set :run 0
-	      :rule-set ("sphinx-xy-alphabetize"))
-(use-rule-set :run 1
-	      :rule-set ("sphinx-xy-resolve-diacritics"))
-(use-rule-set :run 2
-	      :rule-set ("sphinx-xy-resolve-case"))
diff --git a/atomicfeaturespackage/docs/_build/latex/Makefile b/atomicfeaturespackage/docs/_build/latex/Makefile
deleted file mode 100644
index e8f7584..0000000
--- a/atomicfeaturespackage/docs/_build/latex/Makefile
+++ /dev/null
@@ -1,68 +0,0 @@
-# Makefile for Sphinx LaTeX output
-
-ALLDOCS = $(basename $(wildcard *.tex))
-ALLPDF = $(addsuffix .pdf,$(ALLDOCS))
-ALLDVI = $(addsuffix .dvi,$(ALLDOCS))
-ALLXDV =
-ALLPS  = $(addsuffix .ps,$(ALLDOCS))
-ALLIMGS = $(wildcard *.png *.gif *.jpg *.jpeg)
-
-# Prefix for archive names
-ARCHIVEPREFIX =
-# Additional LaTeX options (passed via variables in latexmkrc/latexmkjarc file)
-export LATEXOPTS ?=
-# Additional latexmk options
-LATEXMKOPTS ?=
-# format: pdf or dvi (used only by archive targets)
-FMT = pdf
-
-LATEX = latexmk -dvi
-PDFLATEX = latexmk -pdf -dvi- -ps-
-
-
-%.png %.gif %.jpg %.jpeg: FORCE_MAKE
-	extractbb '$@'
-
-%.dvi: %.tex FORCE_MAKE
-	$(LATEX) $(LATEXMKOPTS) '$<'
-
-%.ps: %.dvi
-	dvips '$<'
-
-%.pdf: %.tex FORCE_MAKE
-	$(PDFLATEX) $(LATEXMKOPTS) '$<'
-
-all: $(ALLPDF)
-
-all-dvi: $(ALLDVI)
-
-all-ps: $(ALLPS)
-
-all-pdf: $(ALLPDF)
-
-zip: all-$(FMT)
-	mkdir $(ARCHIVEPREFIX)docs-$(FMT)
-	cp $(ALLPDF) $(ARCHIVEPREFIX)docs-$(FMT)
-	zip -q -r -9 $(ARCHIVEPREFIX)docs-$(FMT).zip $(ARCHIVEPREFIX)docs-$(FMT)
-	rm -r $(ARCHIVEPREFIX)docs-$(FMT)
-
-tar: all-$(FMT)
-	mkdir $(ARCHIVEPREFIX)docs-$(FMT)
-	cp $(ALLPDF) $(ARCHIVEPREFIX)docs-$(FMT)
-	tar cf $(ARCHIVEPREFIX)docs-$(FMT).tar $(ARCHIVEPREFIX)docs-$(FMT)
-	rm -r $(ARCHIVEPREFIX)docs-$(FMT)
-
-gz: tar
-	gzip -9 < $(ARCHIVEPREFIX)docs-$(FMT).tar > $(ARCHIVEPREFIX)docs-$(FMT).tar.gz
-
-bz2: tar
-	bzip2 -9 -k $(ARCHIVEPREFIX)docs-$(FMT).tar
-
-xz: tar
-	xz -9 -k $(ARCHIVEPREFIX)docs-$(FMT).tar
-
-clean:
-	rm -f *.log *.ind *.aux *.toc *.syn *.idx *.out *.ilg *.pla *.ps *.tar *.tar.gz *.tar.bz2 *.tar.xz $(ALLPDF) $(ALLDVI) $(ALLXDV) *.fls *.fdb_latexmk
-
-.PHONY: all all-pdf all-dvi all-ps clean zip tar gz bz2 xz
-.PHONY: FORCE_MAKE
\ No newline at end of file
diff --git a/atomicfeaturespackage/docs/_build/latex/atomic-features-package.aux b/atomicfeaturespackage/docs/_build/latex/atomic-features-package.aux
deleted file mode 100644
index 6a8ecde..0000000
--- a/atomicfeaturespackage/docs/_build/latex/atomic-features-package.aux
+++ /dev/null
@@ -1,332 +0,0 @@
-\relax 
-\providecommand\hyper@newdestlabel[2]{}
-\providecommand\HyperFirstAtBeginDocument{\AtBeginDocument}
-\HyperFirstAtBeginDocument{\ifx\hyper@anchor\@undefined
-\global\let\oldcontentsline\contentsline
-\gdef\contentsline#1#2#3#4{\oldcontentsline{#1}{#2}{#3}}
-\global\let\oldnewlabel\newlabel
-\gdef\newlabel#1#2{\newlabelxx{#1}#2}
-\gdef\newlabelxx#1#2#3#4#5#6{\oldnewlabel{#1}{{#2}{#3}}}
-\AtEndDocument{\ifx\hyper@anchor\@undefined
-\let\contentsline\oldcontentsline
-\let\newlabel\oldnewlabel
-\fi}
-\fi}
-\global\let\hyper@last\relax 
-\gdef\HyperFirstAtBeginDocument#1{#1}
-\providecommand\HyField@AuxAddToFields[1]{}
-\providecommand\HyField@AuxAddToCoFields[2]{}
-\babel@aux{english}{}
-\newlabel{index::doc}{{}{1}{}{section*.2}{}}
-\@writefile{toc}{\contentsline {chapter}{\numberline {1}Description}{1}{chapter.1}}
-\@writefile{lof}{\addvspace {10\p@ }}
-\@writefile{lot}{\addvspace {10\p@ }}
-\newlabel{README:description}{{1}{1}{Description}{chapter.1}{}}
-\newlabel{README::doc}{{1}{1}{Description}{chapter.1}{}}
-\@writefile{toc}{\contentsline {chapter}{\numberline {2}Getting Started}{2}{chapter.2}}
-\@writefile{lof}{\addvspace {10\p@ }}
-\@writefile{lot}{\addvspace {10\p@ }}
-\newlabel{README:getting-started}{{2}{2}{Getting Started}{chapter.2}{}}
-\@writefile{toc}{\contentsline {chapter}{\numberline {3}Importing this package modules in Jupyter notebook}{3}{chapter.3}}
-\@writefile{lof}{\addvspace {10\p@ }}
-\@writefile{lot}{\addvspace {10\p@ }}
-\newlabel{README:importing-this-package-modules-in-jupyter-notebook}{{3}{3}{Importing this package modules in Jupyter notebook}{chapter.3}{}}
-\@writefile{toc}{\contentsline {chapter}{\numberline {4}atomic\sphinxhyphen {}features\sphinxhyphen {}package package}{5}{chapter.4}}
-\@writefile{lof}{\addvspace {10\p@ }}
-\@writefile{lot}{\addvspace {10\p@ }}
-\newlabel{atomicfeaturespackage:atomic-features-package-package}{{4}{5}{atomic\sphinxhyphen {}features\sphinxhyphen {}package package}{chapter.4}{}}
-\newlabel{atomicfeaturespackage::doc}{{4}{5}{atomic\sphinxhyphen {}features\sphinxhyphen {}package package}{chapter.4}{}}
-\@writefile{toc}{\contentsline {section}{\numberline {4.1}Subpackages}{5}{section.4.1}}
-\newlabel{atomicfeaturespackage:subpackages}{{4.1}{5}{Subpackages}{section.4.1}{}}
-\@writefile{toc}{\contentsline {subsection}{\numberline {4.1.1}atomicfeaturespackage.atomicproperties package}{5}{subsection.4.1.1}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage-atomicproperties-package}{{4.1.1}{5}{atomicfeaturespackage.atomicproperties package}{subsection.4.1.1}{}}
-\newlabel{atomicfeaturespackage.atomicproperties::doc}{{4.1.1}{5}{atomicfeaturespackage.atomicproperties package}{subsection.4.1.1}{}}
-\@writefile{toc}{\contentsline {subsubsection}{atomicfeaturespackage.atomicproperties.atomic\_properties\_dft module}{5}{subsubsection*.3}}
-\newlabel{atomicfeaturespackage.atomicproperties:module-atomicfeaturespackage.atomicproperties.atomic_properties_dft}{{4.1.1}{5}{atomicfeaturespackage.atomicproperties.atomic\_properties\_dft module}{subsubsection*.3}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage-atomicproperties-atomic-properties-dft-module}{{4.1.1}{5}{atomicfeaturespackage.atomicproperties.atomic\_properties\_dft module}{subsubsection*.3}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.atomic_properties_dft.definition}{{4.1.1}{5}{atomicfeaturespackage.atomicproperties.atomic\_properties\_dft module}{section*.4}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.atomic_properties_dft.f}{{4.1.1}{5}{atomicfeaturespackage.atomicproperties.atomic\_properties\_dft module}{section*.5}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.atomic_properties_dft.method}{{4.1.1}{5}{atomicfeaturespackage.atomicproperties.atomic\_properties\_dft module}{section*.6}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.atomic_properties_dft.symbol}{{4.1.1}{5}{atomicfeaturespackage.atomicproperties.atomic\_properties\_dft module}{section*.7}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.atomic_properties_dft.t}{{4.1.1}{5}{atomicfeaturespackage.atomicproperties.atomic\_properties\_dft module}{section*.8}{}}
-\@writefile{toc}{\contentsline {subsubsection}{atomicfeaturespackage.atomicproperties.atomic\_properties\_lda2015 module}{6}{subsubsection*.9}}
-\newlabel{atomicfeaturespackage.atomicproperties:module-atomicfeaturespackage.atomicproperties.atomic_properties_lda2015}{{4.1.1}{6}{atomicfeaturespackage.atomicproperties.atomic\_properties\_lda2015 module}{subsubsection*.9}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage-atomicproperties-atomic-properties-lda2015-module}{{4.1.1}{6}{atomicfeaturespackage.atomicproperties.atomic\_properties\_lda2015 module}{subsubsection*.9}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.atomic_properties_lda2015.definition}{{4.1.1}{6}{atomicfeaturespackage.atomicproperties.atomic\_properties\_lda2015 module}{section*.10}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.atomic_properties_lda2015.symbol}{{4.1.1}{6}{atomicfeaturespackage.atomicproperties.atomic\_properties\_lda2015 module}{section*.11}{}}
-\@writefile{toc}{\contentsline {subsubsection}{atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer module}{6}{subsubsection*.12}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage-atomicproperties-atomic-properties-matminer-module}{{4.1.1}{6}{atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer module}{subsubsection*.12}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:module-atomicfeaturespackage.atomicproperties.atomic_properties_matminer}{{4.1.1}{6}{atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer module}{section*.13}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.atomic_properties_matminer.atomicsymbol}{{4.1.1}{6}{atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer module}{section*.14}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.atomic_properties_matminer.definition}{{4.1.1}{6}{atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer module}{section*.15}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.atomic_properties_matminer.ionizationen}{{4.1.1}{6}{atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer module}{section*.16}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.atomic_properties_matminer.oxistates}{{4.1.1}{6}{atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer module}{section*.17}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.atomic_properties_matminer.symbol}{{4.1.1}{6}{atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer module}{section*.18}{}}
-\@writefile{toc}{\contentsline {subsubsection}{atomicfeaturespackage.atomicproperties.atomic\_properties\_pymat module}{6}{subsubsection*.19}}
-\newlabel{atomicfeaturespackage.atomicproperties:module-atomicfeaturespackage.atomicproperties.atomic_properties_pymat}{{4.1.1}{6}{atomicfeaturespackage.atomicproperties.atomic\_properties\_pymat module}{subsubsection*.19}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage-atomicproperties-atomic-properties-pymat-module}{{4.1.1}{6}{atomicfeaturespackage.atomicproperties.atomic\_properties\_pymat module}{subsubsection*.19}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.atomic_properties_pymat.definition}{{4.1.1}{6}{atomicfeaturespackage.atomicproperties.atomic\_properties\_pymat module}{section*.20}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.atomic_properties_pymat.rename_keys}{{4.1.1}{6}{atomicfeaturespackage.atomicproperties.atomic\_properties\_pymat module}{section*.21}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.atomic_properties_pymat.symbol}{{4.1.1}{6}{atomicfeaturespackage.atomicproperties.atomic\_properties\_pymat module}{section*.22}{}}
-\@writefile{toc}{\contentsline {subsubsection}{atomicfeaturespackage.atomicproperties.periodictable module}{7}{subsubsection*.23}}
-\newlabel{atomicfeaturespackage.atomicproperties:module-atomicfeaturespackage.atomicproperties.periodictable}{{4.1.1}{7}{atomicfeaturespackage.atomicproperties.periodictable module}{subsubsection*.23}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage-atomicproperties-periodictable-module}{{4.1.1}{7}{atomicfeaturespackage.atomicproperties.periodictable module}{subsubsection*.23}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.clean}{{4.1.1}{7}{atomicfeaturespackage.atomicproperties.periodictable module}{section*.24}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.f}{{4.1.1}{7}{atomicfeaturespackage.atomicproperties.periodictable module}{section*.25}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.featuref}{{4.1.1}{7}{atomicfeaturespackage.atomicproperties.periodictable module}{section*.26}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.featurelda}{{4.1.1}{7}{atomicfeaturespackage.atomicproperties.periodictable module}{section*.27}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.featurematmin}{{4.1.1}{7}{atomicfeaturespackage.atomicproperties.periodictable module}{section*.28}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.featurepymat}{{4.1.1}{7}{atomicfeaturespackage.atomicproperties.periodictable module}{section*.29}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.featuret}{{4.1.1}{7}{atomicfeaturespackage.atomicproperties.periodictable module}{section*.30}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.featurewebele}{{4.1.1}{7}{atomicfeaturespackage.atomicproperties.periodictable module}{section*.31}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.heatmap}{{4.1.1}{7}{atomicfeaturespackage.atomicproperties.periodictable module}{section*.32}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.lda}{{4.1.1}{8}{atomicfeaturespackage.atomicproperties.periodictable module}{section*.33}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.matmin}{{4.1.1}{8}{atomicfeaturespackage.atomicproperties.periodictable module}{section*.34}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.ptableplotgenf}{{4.1.1}{8}{atomicfeaturespackage.atomicproperties.periodictable module}{section*.35}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.ptableplotgenlda}{{4.1.1}{8}{atomicfeaturespackage.atomicproperties.periodictable module}{section*.36}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.ptableplotgenmatmin}{{4.1.1}{8}{atomicfeaturespackage.atomicproperties.periodictable module}{section*.37}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.ptableplotgenpymat}{{4.1.1}{8}{atomicfeaturespackage.atomicproperties.periodictable module}{section*.38}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.ptableplotgent}{{4.1.1}{8}{atomicfeaturespackage.atomicproperties.periodictable module}{section*.39}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.ptableplotgenwebele}{{4.1.1}{8}{atomicfeaturespackage.atomicproperties.periodictable module}{section*.40}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.pymat}{{4.1.1}{8}{atomicfeaturespackage.atomicproperties.periodictable module}{section*.41}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.showfigf}{{4.1.1}{8}{atomicfeaturespackage.atomicproperties.periodictable module}{section*.42}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.showfiglda}{{4.1.1}{8}{atomicfeaturespackage.atomicproperties.periodictable module}{section*.43}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.showfigmatmin}{{4.1.1}{8}{atomicfeaturespackage.atomicproperties.periodictable module}{section*.44}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.showfigpymat}{{4.1.1}{8}{atomicfeaturespackage.atomicproperties.periodictable module}{section*.45}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.showfigt}{{4.1.1}{8}{atomicfeaturespackage.atomicproperties.periodictable module}{section*.46}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.showfigwebele}{{4.1.1}{9}{atomicfeaturespackage.atomicproperties.periodictable module}{section*.47}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.t}{{4.1.1}{9}{atomicfeaturespackage.atomicproperties.periodictable module}{section*.48}{}}
-\newlabel{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.webele}{{4.1.1}{9}{atomicfeaturespackage.atomicproperties.periodictable module}{section*.49}{}}
-\@writefile{toc}{\contentsline {subsection}{\numberline {4.1.2}atomicfeaturespackage.metainfo package}{9}{subsection.4.1.2}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage-metainfo-package}{{4.1.2}{9}{atomicfeaturespackage.metainfo package}{subsection.4.1.2}{}}
-\newlabel{atomicfeaturespackage.metainfo::doc}{{4.1.2}{9}{atomicfeaturespackage.metainfo package}{subsection.4.1.2}{}}
-\@writefile{toc}{\contentsline {subsubsection}{atomicfeaturespackage.metainfo.metainfo module}{9}{subsubsection*.50}}
-\newlabel{atomicfeaturespackage.metainfo:module-atomicfeaturespackage.metainfo.metainfo}{{4.1.2}{9}{atomicfeaturespackage.metainfo.metainfo module}{subsubsection*.50}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage-metainfo-metainfo-module}{{4.1.2}{9}{atomicfeaturespackage.metainfo.metainfo module}{subsubsection*.50}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi}{{4.1.2}{9}{atomicfeaturespackage.metainfo.metainfo module}{section*.51}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_ea}{{4.1.2}{9}{atomicfeaturespackage.metainfo.metainfo module}{section*.52}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_ea_by_half_charged_homo}{{4.1.2}{9}{atomicfeaturespackage.metainfo.metainfo module}{section*.53}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_element_symbol}{{4.1.2}{9}{atomicfeaturespackage.metainfo.metainfo module}{section*.54}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_hfomo}{{4.1.2}{9}{atomicfeaturespackage.metainfo.metainfo module}{section*.55}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_hpomo}{{4.1.2}{9}{atomicfeaturespackage.metainfo.metainfo module}{section*.56}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_ip}{{4.1.2}{9}{atomicfeaturespackage.metainfo.metainfo module}{section*.57}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_ip_by_half_charged_homo}{{4.1.2}{9}{atomicfeaturespackage.metainfo.metainfo module}{section*.58}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_lfumo}{{4.1.2}{9}{atomicfeaturespackage.metainfo.metainfo module}{section*.59}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_lpumo}{{4.1.2}{9}{atomicfeaturespackage.metainfo.metainfo module}{section*.60}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_number}{{4.1.2}{9}{atomicfeaturespackage.metainfo.metainfo module}{section*.61}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_d}{{4.1.2}{9}{atomicfeaturespackage.metainfo.metainfo module}{section*.62}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_d_05}{{4.1.2}{10}{atomicfeaturespackage.metainfo.metainfo module}{section*.63}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_d_1}{{4.1.2}{10}{atomicfeaturespackage.metainfo.metainfo module}{section*.64}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_d_neg_05}{{4.1.2}{10}{atomicfeaturespackage.metainfo.metainfo module}{section*.65}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_d_neg_1}{{4.1.2}{10}{atomicfeaturespackage.metainfo.metainfo module}{section*.66}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_p}{{4.1.2}{10}{atomicfeaturespackage.metainfo.metainfo module}{section*.67}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_p_05}{{4.1.2}{10}{atomicfeaturespackage.metainfo.metainfo module}{section*.68}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_p_1}{{4.1.2}{10}{atomicfeaturespackage.metainfo.metainfo module}{section*.69}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_p_neg_05}{{4.1.2}{10}{atomicfeaturespackage.metainfo.metainfo module}{section*.70}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_p_neg_1}{{4.1.2}{10}{atomicfeaturespackage.metainfo.metainfo module}{section*.71}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_s}{{4.1.2}{10}{atomicfeaturespackage.metainfo.metainfo module}{section*.72}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_s_05}{{4.1.2}{10}{atomicfeaturespackage.metainfo.metainfo module}{section*.73}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_s_1}{{4.1.2}{10}{atomicfeaturespackage.metainfo.metainfo module}{section*.74}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_s_neg_05}{{4.1.2}{10}{atomicfeaturespackage.metainfo.metainfo module}{section*.75}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_s_neg_1}{{4.1.2}{10}{atomicfeaturespackage.metainfo.metainfo module}{section*.76}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_val}{{4.1.2}{10}{atomicfeaturespackage.metainfo.metainfo module}{section*.77}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_val_05}{{4.1.2}{10}{atomicfeaturespackage.metainfo.metainfo module}{section*.78}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_val_1}{{4.1.2}{10}{atomicfeaturespackage.metainfo.metainfo module}{section*.79}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_val_neg_05}{{4.1.2}{10}{atomicfeaturespackage.metainfo.metainfo module}{section*.80}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_val_neg_1}{{4.1.2}{10}{atomicfeaturespackage.metainfo.metainfo module}{section*.81}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.section_fhi_metadata}{{4.1.2}{10}{atomicfeaturespackage.metainfo.metainfo module}{section*.82}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015}{{4.1.2}{11}{atomicfeaturespackage.metainfo.metainfo module}{section*.83}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_ea}{{4.1.2}{11}{atomicfeaturespackage.metainfo.metainfo module}{section*.84}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_element_symbol}{{4.1.2}{11}{atomicfeaturespackage.metainfo.metainfo module}{section*.85}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_homo}{{4.1.2}{11}{atomicfeaturespackage.metainfo.metainfo module}{section*.86}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_ip}{{4.1.2}{11}{atomicfeaturespackage.metainfo.metainfo module}{section*.87}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_lumo}{{4.1.2}{11}{atomicfeaturespackage.metainfo.metainfo module}{section*.88}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_number}{{4.1.2}{11}{atomicfeaturespackage.metainfo.metainfo module}{section*.89}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_period}{{4.1.2}{11}{atomicfeaturespackage.metainfo.metainfo module}{section*.90}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_r_d}{{4.1.2}{11}{atomicfeaturespackage.metainfo.metainfo module}{section*.91}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_r_p}{{4.1.2}{11}{atomicfeaturespackage.metainfo.metainfo module}{section*.92}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_r_s}{{4.1.2}{11}{atomicfeaturespackage.metainfo.metainfo module}{section*.93}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.section_lda2015_metadata}{{4.1.2}{11}{atomicfeaturespackage.metainfo.metainfo module}{section*.94}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer}{{4.1.2}{11}{atomicfeaturespackage.metainfo.metainfo module}{section*.95}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ICSD_vol}{{4.1.2}{12}{atomicfeaturespackage.metainfo.metainfo module}{section*.96}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_cpmass}{{4.1.2}{12}{atomicfeaturespackage.metainfo.metainfo module}{section*.97}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_cpmolar}{{4.1.2}{12}{atomicfeaturespackage.metainfo.metainfo module}{section*.98}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_density}{{4.1.2}{12}{atomicfeaturespackage.metainfo.metainfo module}{section*.99}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ea}{{4.1.2}{12}{atomicfeaturespackage.metainfo.metainfo module}{section*.100}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_element_symbol}{{4.1.2}{12}{atomicfeaturespackage.metainfo.metainfo module}{section*.101}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_en}{{4.1.2}{12}{atomicfeaturespackage.metainfo.metainfo module}{section*.102}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_en_allen}{{4.1.2}{12}{atomicfeaturespackage.metainfo.metainfo module}{section*.103}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_hfu}{{4.1.2}{12}{atomicfeaturespackage.metainfo.metainfo module}{section*.104}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_hhip}{{4.1.2}{12}{atomicfeaturespackage.metainfo.metainfo module}{section*.105}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_hhir}{{4.1.2}{12}{atomicfeaturespackage.metainfo.metainfo module}{section*.106}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_hvap}{{4.1.2}{12}{atomicfeaturespackage.metainfo.metainfo module}{section*.107}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ie}{{4.1.2}{12}{atomicfeaturespackage.metainfo.metainfo module}{section*.108}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ie_1}{{4.1.2}{12}{atomicfeaturespackage.metainfo.metainfo module}{section*.109}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ie_2}{{4.1.2}{12}{atomicfeaturespackage.metainfo.metainfo module}{section*.110}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_isalkali}{{4.1.2}{12}{atomicfeaturespackage.metainfo.metainfo module}{section*.111}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_isdblock}{{4.1.2}{12}{atomicfeaturespackage.metainfo.metainfo module}{section*.112}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_isfblock}{{4.1.2}{12}{atomicfeaturespackage.metainfo.metainfo module}{section*.113}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ismetal}{{4.1.2}{13}{atomicfeaturespackage.metainfo.metainfo module}{section*.114}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ismetalloid}{{4.1.2}{13}{atomicfeaturespackage.metainfo.metainfo module}{section*.115}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_isnonmetal}{{4.1.2}{13}{atomicfeaturespackage.metainfo.metainfo module}{section*.116}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ndunf}{{4.1.2}{13}{atomicfeaturespackage.metainfo.metainfo module}{section*.117}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ndval}{{4.1.2}{13}{atomicfeaturespackage.metainfo.metainfo module}{section*.118}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_nfunf}{{4.1.2}{13}{atomicfeaturespackage.metainfo.metainfo module}{section*.119}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_nfval}{{4.1.2}{13}{atomicfeaturespackage.metainfo.metainfo module}{section*.120}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_npunf}{{4.1.2}{13}{atomicfeaturespackage.metainfo.metainfo module}{section*.121}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_npval}{{4.1.2}{13}{atomicfeaturespackage.metainfo.metainfo module}{section*.122}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_nsunf}{{4.1.2}{13}{atomicfeaturespackage.metainfo.metainfo module}{section*.123}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_nsval}{{4.1.2}{13}{atomicfeaturespackage.metainfo.metainfo module}{section*.124}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_number}{{4.1.2}{13}{atomicfeaturespackage.metainfo.metainfo module}{section*.125}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_nunf}{{4.1.2}{13}{atomicfeaturespackage.metainfo.metainfo module}{section*.126}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_nval}{{4.1.2}{13}{atomicfeaturespackage.metainfo.metainfo module}{section*.127}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_oxstates}{{4.1.2}{13}{atomicfeaturespackage.metainfo.metainfo module}{section*.128}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_phi}{{4.1.2}{13}{atomicfeaturespackage.metainfo.metainfo module}{section*.129}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_pol}{{4.1.2}{13}{atomicfeaturespackage.metainfo.metainfo module}{section*.130}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_pp_r_d}{{4.1.2}{13}{atomicfeaturespackage.metainfo.metainfo module}{section*.131}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_pp_r_p}{{4.1.2}{13}{atomicfeaturespackage.metainfo.metainfo module}{section*.132}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_pp_r_pi}{{4.1.2}{14}{atomicfeaturespackage.metainfo.metainfo module}{section*.133}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_pp_r_s}{{4.1.2}{14}{atomicfeaturespackage.metainfo.metainfo module}{section*.134}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_pp_r_sig}{{4.1.2}{14}{atomicfeaturespackage.metainfo.metainfo module}{section*.135}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_radius}{{4.1.2}{14}{atomicfeaturespackage.metainfo.metainfo module}{section*.136}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_sgn}{{4.1.2}{14}{atomicfeaturespackage.metainfo.metainfo module}{section*.137}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_vdw_radius}{{4.1.2}{14}{atomicfeaturespackage.metainfo.metainfo module}{section*.138}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_volume}{{4.1.2}{14}{atomicfeaturespackage.metainfo.metainfo module}{section*.139}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_weight}{{4.1.2}{14}{atomicfeaturespackage.metainfo.metainfo module}{section*.140}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ws3}{{4.1.2}{14}{atomicfeaturespackage.metainfo.metainfo module}{section*.141}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.boiling_temp}{{4.1.2}{14}{atomicfeaturespackage.metainfo.metainfo module}{section*.142}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.bulk_modulus}{{4.1.2}{14}{atomicfeaturespackage.metainfo.metainfo module}{section*.143}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.covalent_radius}{{4.1.2}{14}{atomicfeaturespackage.metainfo.metainfo module}{section*.144}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.gs_bandgap}{{4.1.2}{14}{atomicfeaturespackage.metainfo.metainfo module}{section*.145}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.gs_bcclatparam}{{4.1.2}{14}{atomicfeaturespackage.metainfo.metainfo module}{section*.146}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.gs_energy_pa}{{4.1.2}{14}{atomicfeaturespackage.metainfo.metainfo module}{section*.147}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.gs_fcclatparam}{{4.1.2}{14}{atomicfeaturespackage.metainfo.metainfo module}{section*.148}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.gs_mag_mom}{{4.1.2}{14}{atomicfeaturespackage.metainfo.metainfo module}{section*.149}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.gs_volume_pa}{{4.1.2}{14}{atomicfeaturespackage.metainfo.metainfo module}{section*.150}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.melting_point}{{4.1.2}{14}{atomicfeaturespackage.metainfo.metainfo module}{section*.151}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.mendeleev_no}{{4.1.2}{14}{atomicfeaturespackage.metainfo.metainfo module}{section*.152}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.micracle_radius}{{4.1.2}{14}{atomicfeaturespackage.metainfo.metainfo module}{section*.153}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.molar_volume}{{4.1.2}{15}{atomicfeaturespackage.metainfo.metainfo module}{section*.154}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.periodict_column}{{4.1.2}{15}{atomicfeaturespackage.metainfo.metainfo module}{section*.155}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.periodict_row}{{4.1.2}{15}{atomicfeaturespackage.metainfo.metainfo module}{section*.156}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.section_matmin_metadata}{{4.1.2}{15}{atomicfeaturespackage.metainfo.metainfo module}{section*.157}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.shear_mod}{{4.1.2}{15}{atomicfeaturespackage.metainfo.metainfo module}{section*.158}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.thermal_cond}{{4.1.2}{15}{atomicfeaturespackage.metainfo.metainfo module}{section*.159}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.thermal_cond_log}{{4.1.2}{15}{atomicfeaturespackage.metainfo.metainfo module}{section*.160}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat}{{4.1.2}{15}{atomicfeaturespackage.metainfo.metainfo module}{section*.161}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_element_name}{{4.1.2}{15}{atomicfeaturespackage.metainfo.metainfo module}{section*.162}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_element_symbol}{{4.1.2}{15}{atomicfeaturespackage.metainfo.metainfo module}{section*.163}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_mass}{{4.1.2}{15}{atomicfeaturespackage.metainfo.metainfo module}{section*.164}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_number}{{4.1.2}{15}{atomicfeaturespackage.metainfo.metainfo module}{section*.165}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_orbitals}{{4.1.2}{15}{atomicfeaturespackage.metainfo.metainfo module}{section*.166}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_radius}{{4.1.2}{15}{atomicfeaturespackage.metainfo.metainfo module}{section*.167}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_radius_calculated}{{4.1.2}{15}{atomicfeaturespackage.metainfo.metainfo module}{section*.168}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_refelctivity}{{4.1.2}{15}{atomicfeaturespackage.metainfo.metainfo module}{section*.169}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_refractive_index}{{4.1.2}{15}{atomicfeaturespackage.metainfo.metainfo module}{section*.170}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.boiling_point}{{4.1.2}{16}{atomicfeaturespackage.metainfo.metainfo module}{section*.171}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.brinell_hardness}{{4.1.2}{16}{atomicfeaturespackage.metainfo.metainfo module}{section*.172}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.bulk_modulus}{{4.1.2}{16}{atomicfeaturespackage.metainfo.metainfo module}{section*.173}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.coeff_olte}{{4.1.2}{16}{atomicfeaturespackage.metainfo.metainfo module}{section*.174}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.common_ox_states}{{4.1.2}{16}{atomicfeaturespackage.metainfo.metainfo module}{section*.175}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.critical_temperature}{{4.1.2}{16}{atomicfeaturespackage.metainfo.metainfo module}{section*.176}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.density_of_solid}{{4.1.2}{16}{atomicfeaturespackage.metainfo.metainfo module}{section*.177}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.electrical_resistivity}{{4.1.2}{16}{atomicfeaturespackage.metainfo.metainfo module}{section*.178}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.electronic_structure}{{4.1.2}{16}{atomicfeaturespackage.metainfo.metainfo module}{section*.179}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.icsd_oxd_states}{{4.1.2}{16}{atomicfeaturespackage.metainfo.metainfo module}{section*.180}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.ionic_radii}{{4.1.2}{16}{atomicfeaturespackage.metainfo.metainfo module}{section*.181}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.ionic_radii_hs}{{4.1.2}{16}{atomicfeaturespackage.metainfo.metainfo module}{section*.182}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.ionic_radii_ls}{{4.1.2}{16}{atomicfeaturespackage.metainfo.metainfo module}{section*.183}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.iupac_ordering}{{4.1.2}{16}{atomicfeaturespackage.metainfo.metainfo module}{section*.184}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.liquid_range}{{4.1.2}{16}{atomicfeaturespackage.metainfo.metainfo module}{section*.185}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.max_oxd_state}{{4.1.2}{16}{atomicfeaturespackage.metainfo.metainfo module}{section*.186}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.melting_point}{{4.1.2}{16}{atomicfeaturespackage.metainfo.metainfo module}{section*.187}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.mendeleev_no}{{4.1.2}{16}{atomicfeaturespackage.metainfo.metainfo module}{section*.188}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.metallic_radius}{{4.1.2}{16}{atomicfeaturespackage.metainfo.metainfo module}{section*.189}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.min_oxd_state}{{4.1.2}{16}{atomicfeaturespackage.metainfo.metainfo module}{section*.190}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.mineral_hardness}{{4.1.2}{17}{atomicfeaturespackage.metainfo.metainfo module}{section*.191}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.molar_volume}{{4.1.2}{17}{atomicfeaturespackage.metainfo.metainfo module}{section*.192}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.nmr_quadrapole_mom}{{4.1.2}{17}{atomicfeaturespackage.metainfo.metainfo module}{section*.193}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.oxidation_states}{{4.1.2}{17}{atomicfeaturespackage.metainfo.metainfo module}{section*.194}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.poisson_ratio}{{4.1.2}{17}{atomicfeaturespackage.metainfo.metainfo module}{section*.195}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.rigidity_modulus}{{4.1.2}{17}{atomicfeaturespackage.metainfo.metainfo module}{section*.196}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.section_pymat_metadata}{{4.1.2}{17}{atomicfeaturespackage.metainfo.metainfo module}{section*.197}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.shannon_radii}{{4.1.2}{17}{atomicfeaturespackage.metainfo.metainfo module}{section*.198}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.supercond_temp}{{4.1.2}{17}{atomicfeaturespackage.metainfo.metainfo module}{section*.199}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.thermal_cond}{{4.1.2}{17}{atomicfeaturespackage.metainfo.metainfo module}{section*.200}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.van_der_waals_rad}{{4.1.2}{17}{atomicfeaturespackage.metainfo.metainfo module}{section*.201}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.velocity_of_sound}{{4.1.2}{17}{atomicfeaturespackage.metainfo.metainfo module}{section*.202}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.vickers_hardness}{{4.1.2}{17}{atomicfeaturespackage.metainfo.metainfo module}{section*.203}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.x}{{4.1.2}{17}{atomicfeaturespackage.metainfo.metainfo module}{section*.204}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.youngs_modulus}{{4.1.2}{17}{atomicfeaturespackage.metainfo.metainfo module}{section*.205}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele}{{4.1.2}{17}{atomicfeaturespackage.metainfo.metainfo module}{section*.206}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_cellparam}{{4.1.2}{18}{atomicfeaturespackage.metainfo.metainfo module}{section*.207}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_ea}{{4.1.2}{18}{atomicfeaturespackage.metainfo.metainfo module}{section*.208}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_ebe}{{4.1.2}{18}{atomicfeaturespackage.metainfo.metainfo module}{section*.209}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_element_symbol}{{4.1.2}{18}{atomicfeaturespackage.metainfo.metainfo module}{section*.210}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_en}{{4.1.2}{18}{atomicfeaturespackage.metainfo.metainfo module}{section*.211}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_en_allen}{{4.1.2}{18}{atomicfeaturespackage.metainfo.metainfo module}{section*.212}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_en_allredroch}{{4.1.2}{18}{atomicfeaturespackage.metainfo.metainfo module}{section*.213}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_en_paul}{{4.1.2}{18}{atomicfeaturespackage.metainfo.metainfo module}{section*.214}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_en_sanderson}{{4.1.2}{18}{atomicfeaturespackage.metainfo.metainfo module}{section*.215}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_enc}{{4.1.2}{18}{atomicfeaturespackage.metainfo.metainfo module}{section*.216}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_hatm}{{4.1.2}{18}{atomicfeaturespackage.metainfo.metainfo module}{section*.217}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_hfu}{{4.1.2}{18}{atomicfeaturespackage.metainfo.metainfo module}{section*.218}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_hvap}{{4.1.2}{18}{atomicfeaturespackage.metainfo.metainfo module}{section*.219}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_ie}{{4.1.2}{18}{atomicfeaturespackage.metainfo.metainfo module}{section*.220}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_ionic_radii}{{4.1.2}{18}{atomicfeaturespackage.metainfo.metainfo module}{section*.221}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_nat_iso}{{4.1.2}{18}{atomicfeaturespackage.metainfo.metainfo module}{section*.222}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_nmr}{{4.1.2}{18}{atomicfeaturespackage.metainfo.metainfo module}{section*.223}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_orbital_radii}{{4.1.2}{18}{atomicfeaturespackage.metainfo.metainfo module}{section*.224}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_rad_iso}{{4.1.2}{19}{atomicfeaturespackage.metainfo.metainfo module}{section*.225}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_radius}{{4.1.2}{19}{atomicfeaturespackage.metainfo.metainfo module}{section*.226}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_radius_calculated}{{4.1.2}{19}{atomicfeaturespackage.metainfo.metainfo module}{section*.227}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_spacegroup}{{4.1.2}{19}{atomicfeaturespackage.metainfo.metainfo module}{section*.228}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_spacegroupnum}{{4.1.2}{19}{atomicfeaturespackage.metainfo.metainfo module}{section*.229}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_structure}{{4.1.2}{19}{atomicfeaturespackage.metainfo.metainfo module}{section*.230}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_thermdata}{{4.1.2}{19}{atomicfeaturespackage.metainfo.metainfo module}{section*.231}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.boiling_point}{{4.1.2}{19}{atomicfeaturespackage.metainfo.metainfo module}{section*.232}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.brinell_hardness}{{4.1.2}{19}{atomicfeaturespackage.metainfo.metainfo module}{section*.233}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.bulk_mod}{{4.1.2}{19}{atomicfeaturespackage.metainfo.metainfo module}{section*.234}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.coeff_of_lte}{{4.1.2}{19}{atomicfeaturespackage.metainfo.metainfo module}{section*.235}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.covalent_rad}{{4.1.2}{19}{atomicfeaturespackage.metainfo.metainfo module}{section*.236}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.covalent_rad_emp}{{4.1.2}{19}{atomicfeaturespackage.metainfo.metainfo module}{section*.237}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.covalent_radius_mol}{{4.1.2}{19}{atomicfeaturespackage.metainfo.metainfo module}{section*.238}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.critical_temperature}{{4.1.2}{19}{atomicfeaturespackage.metainfo.metainfo module}{section*.239}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.density_of_solid}{{4.1.2}{19}{atomicfeaturespackage.metainfo.metainfo module}{section*.240}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.electrical_resist}{{4.1.2}{19}{atomicfeaturespackage.metainfo.metainfo module}{section*.241}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.liquid_range}{{4.1.2}{20}{atomicfeaturespackage.metainfo.metainfo module}{section*.242}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.melting_point}{{4.1.2}{20}{atomicfeaturespackage.metainfo.metainfo module}{section*.243}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.mineral_hardness}{{4.1.2}{20}{atomicfeaturespackage.metainfo.metainfo module}{section*.244}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.molar_vol}{{4.1.2}{20}{atomicfeaturespackage.metainfo.metainfo module}{section*.245}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.paul_ionic_radii}{{4.1.2}{20}{atomicfeaturespackage.metainfo.metainfo module}{section*.246}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.poissons_ratio}{{4.1.2}{20}{atomicfeaturespackage.metainfo.metainfo module}{section*.247}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.reflectivity}{{4.1.2}{20}{atomicfeaturespackage.metainfo.metainfo module}{section*.248}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.refract_index}{{4.1.2}{20}{atomicfeaturespackage.metainfo.metainfo module}{section*.249}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.rigidity_mod}{{4.1.2}{20}{atomicfeaturespackage.metainfo.metainfo module}{section*.250}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.section_webele_metadata}{{4.1.2}{20}{atomicfeaturespackage.metainfo.metainfo module}{section*.251}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.supercond_temp}{{4.1.2}{20}{atomicfeaturespackage.metainfo.metainfo module}{section*.252}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.thermal_conduct}{{4.1.2}{20}{atomicfeaturespackage.metainfo.metainfo module}{section*.253}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.van_der_waals_rad}{{4.1.2}{20}{atomicfeaturespackage.metainfo.metainfo module}{section*.254}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.vel_of_sound}{{4.1.2}{20}{atomicfeaturespackage.metainfo.metainfo module}{section*.255}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.vickers_hardness}{{4.1.2}{20}{atomicfeaturespackage.metainfo.metainfo module}{section*.256}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.youngs_mod}{{4.1.2}{20}{atomicfeaturespackage.metainfo.metainfo module}{section*.257}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.metadata}{{4.1.2}{20}{atomicfeaturespackage.metainfo.metainfo module}{section*.258}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.metadata.atomic_basis_set}{{4.1.2}{21}{atomicfeaturespackage.metainfo.metainfo module}{section*.259}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.metadata.atomic_method}{{4.1.2}{21}{atomicfeaturespackage.metainfo.metainfo module}{section*.260}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.metadata.atomic_spin_setting}{{4.1.2}{21}{atomicfeaturespackage.metainfo.metainfo module}{section*.261}{}}
-\newlabel{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.metadata.source}{{4.1.2}{21}{atomicfeaturespackage.metainfo.metainfo module}{section*.262}{}}
-\@writefile{toc}{\contentsline {chapter}{\numberline {5}LICENSE}{22}{chapter.5}}
-\@writefile{lof}{\addvspace {10\p@ }}
-\@writefile{lot}{\addvspace {10\p@ }}
-\newlabel{LICENSE:license}{{5}{22}{LICENSE}{chapter.5}{}}
-\newlabel{LICENSE::doc}{{5}{22}{LICENSE}{chapter.5}{}}
-\@writefile{toc}{\contentsline {chapter}{\numberline {6}CONTRIBUTING}{23}{chapter.6}}
-\@writefile{lof}{\addvspace {10\p@ }}
-\@writefile{lot}{\addvspace {10\p@ }}
-\newlabel{CONTRIBUTING:contributing}{{6}{23}{CONTRIBUTING}{chapter.6}{}}
-\newlabel{CONTRIBUTING::doc}{{6}{23}{CONTRIBUTING}{chapter.6}{}}
-\@writefile{toc}{\contentsline {chapter}{\numberline {7}Indices and tables}{24}{chapter.7}}
-\@writefile{lof}{\addvspace {10\p@ }}
-\@writefile{lot}{\addvspace {10\p@ }}
-\newlabel{index:indices-and-tables}{{7}{24}{Indices and tables}{chapter.7}{}}
-\@writefile{toc}{\contentsline {chapter}{Python Module Index}{25}{section*.263}}
diff --git a/atomicfeaturespackage/docs/_build/latex/atomic-features-package.fdb_latexmk b/atomicfeaturespackage/docs/_build/latex/atomic-features-package.fdb_latexmk
deleted file mode 100644
index 364d3c2..0000000
--- a/atomicfeaturespackage/docs/_build/latex/atomic-features-package.fdb_latexmk
+++ /dev/null
@@ -1,169 +0,0 @@
-# Fdb version 3
-["makeindex atomic-features-package.idx"] 0 "atomic-features-package.idx" "atomic-features-package.ind" "atomic-features-package" 0
-  "atomic-features-package.idx" 1632853056 59553 6205c67ca1008ae1260d6bd288a06e04 ""
-  (generated)
-  "atomic-features-package.ind"
-["pdflatex"] 1632853054 "atomic-features-package.tex" "atomic-features-package.pdf" "atomic-features-package" 1632853054
-  "/etc/texmf/web2c/texmf.cnf" 1556652768 475 c0e671620eb5563b2130f56340a5fde8 ""
-  "/usr/share/texlive/texmf-dist/fonts/enc/dvips/base/8r.enc" 1480098666 4850 80dc9bab7f31fb78a000ccfed0e27cab ""
-  "/usr/share/texlive/texmf-dist/fonts/map/fontname/texfonts.map" 1511824771 3332 103109f5612ad95229751940c61aada0 ""
-  "/usr/share/texlive/texmf-dist/fonts/tfm/adobe/courier/pcrb8r.tfm" 1480098688 1292 3059476c50a24578715759f22652f3d0 ""
-  "/usr/share/texlive/texmf-dist/fonts/tfm/adobe/courier/pcrb8t.tfm" 1480098688 1384 87406e4336af44af883a035f17f319d9 ""
-  "/usr/share/texlive/texmf-dist/fonts/tfm/adobe/courier/pcrr8c.tfm" 1480098688 1268 8bd405dc5751cfed76cb6fb2db78cb50 ""
-  "/usr/share/texlive/texmf-dist/fonts/tfm/adobe/courier/pcrr8r.tfm" 1480098688 1292 bd42be2f344128bff6d35d98474adfe3 ""
-  "/usr/share/texlive/texmf-dist/fonts/tfm/adobe/courier/pcrr8t.tfm" 1480098688 1384 4632f5e54900a7dadbb83f555bc61e56 ""
-  "/usr/share/texlive/texmf-dist/fonts/tfm/adobe/helvetic/phvb8r.tfm" 1480098688 4484 b828043cbd581d289d955903c1339981 ""
-  "/usr/share/texlive/texmf-dist/fonts/tfm/adobe/helvetic/phvb8t.tfm" 1480098688 6628 34c39492c0adc454c1c199922bba8363 ""
-  "/usr/share/texlive/texmf-dist/fonts/tfm/adobe/helvetic/phvbo8t.tfm" 1480098688 6880 fe6c7967f27585f6fa9876f3af14edd2 ""
-  "/usr/share/texlive/texmf-dist/fonts/tfm/adobe/helvetic/phvr8r.tfm" 1480098688 4712 9ef4d7d106579d4b136e1529e1a4533c ""
-  "/usr/share/texlive/texmf-dist/fonts/tfm/adobe/helvetic/phvr8t.tfm" 1480098688 7040 b2bd27e2bfe6f6948cbc3239cae7444f ""
-  "/usr/share/texlive/texmf-dist/fonts/tfm/adobe/times/ptmb8r.tfm" 1480098689 4524 6bce29db5bc272ba5f332261583fee9c ""
-  "/usr/share/texlive/texmf-dist/fonts/tfm/adobe/times/ptmb8t.tfm" 1480098689 6880 f19b8995b61c334d78fc734065f6b4d4 ""
-  "/usr/share/texlive/texmf-dist/fonts/tfm/adobe/times/ptmr8c.tfm" 1480098689 1352 fa28a7e6d323c65ce7d13d5342ff6be2 ""
-  "/usr/share/texlive/texmf-dist/fonts/tfm/adobe/times/ptmr8r.tfm" 1480098689 4408 25b74d011a4c66b7f212c0cc3c90061b ""
-  "/usr/share/texlive/texmf-dist/fonts/tfm/adobe/times/ptmr8t.tfm" 1480098689 6672 e3ab9e37e925f3045c9005e6d1473d56 ""
-  "/usr/share/texlive/texmf-dist/fonts/tfm/adobe/times/ptmri8c.tfm" 1480098689 1428 3f135d3346fb7bfe71989ef2e19a9f01 ""
-  "/usr/share/texlive/texmf-dist/fonts/tfm/adobe/times/ptmri8r.tfm" 1480098689 4640 532ca3305aad10cc01d769f3f91f1029 ""
-  "/usr/share/texlive/texmf-dist/fonts/tfm/adobe/times/ptmri8t.tfm" 1480098689 6944 94c55ad86e6ea2826f78ba2240d50df9 ""
-  "/usr/share/texlive/texmf-dist/fonts/tfm/jknappen/ec/ecrm1000.tfm" 1480098696 3584 adb004a0c8e7c46ee66cad73671f37b4 ""
-  "/usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/cmextra/cmex7.tfm" 1480098698 1004 54797486969f23fa377b128694d548df ""
-  "/usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam10.tfm" 1480098698 916 f87d7c45f9c908e672703b83b72241a3 ""
-  "/usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam5.tfm" 1480098698 924 9904cf1d39e9767e7a3622f2a125a565 ""
-  "/usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam7.tfm" 1480098698 928 2dc8d444221b7a635bb58038579b861a ""
-  "/usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm10.tfm" 1480098698 908 2921f8a10601f252058503cc6570e581 ""
-  "/usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm5.tfm" 1480098698 940 75ac932a52f80982a9f8ea75d03a34cf ""
-  "/usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm7.tfm" 1480098698 940 228d6584342e91276bf566bcf9716b83 ""
-  "/usr/share/texlive/texmf-dist/fonts/tfm/public/cm/cmex10.tfm" 1480098701 992 662f679a0b3d2d53c1b94050fdaa3f50 ""
-  "/usr/share/texlive/texmf-dist/fonts/tfm/public/cm/cmmi12.tfm" 1480098701 1524 4414a8315f39513458b80dfc63bff03a ""
-  "/usr/share/texlive/texmf-dist/fonts/tfm/public/cm/cmr12.tfm" 1480098701 1288 655e228510b4c2a1abe905c368440826 ""
-  "/usr/share/texlive/texmf-dist/fonts/tfm/public/cm/cmr17.tfm" 1480098701 1292 296a67155bdbfc32aa9c636f21e91433 ""
-  "/usr/share/texlive/texmf-dist/fonts/tfm/public/cm/cmsy10.tfm" 1480098701 1124 6c73e740cf17375f03eec0ee63599741 ""
-  "/usr/share/texlive/texmf-dist/fonts/type1/urw/courier/ucrb8a.pfb" 1480098746 50493 4ed1f7e9eba8f1f3e1ec25195460190d ""
-  "/usr/share/texlive/texmf-dist/fonts/type1/urw/courier/ucrr8a.pfb" 1480098746 45758 19968a0990191524e34e1994d4a31cb6 ""
-  "/usr/share/texlive/texmf-dist/fonts/type1/urw/helvetic/uhvb8a.pfb" 1480098746 35941 f27169cc74234d5bd5e4cca5abafaabb ""
-  "/usr/share/texlive/texmf-dist/fonts/type1/urw/helvetic/uhvr8a.pfb" 1480098746 44648 23115b2a545ebfe2c526c3ca99db8b95 ""
-  "/usr/share/texlive/texmf-dist/fonts/type1/urw/times/utmb8a.pfb" 1480098746 44729 811d6c62865936705a31c797a1d5dada ""
-  "/usr/share/texlive/texmf-dist/fonts/type1/urw/times/utmr8a.pfb" 1480098746 46026 6dab18b61c907687b520c72847215a68 ""
-  "/usr/share/texlive/texmf-dist/fonts/type1/urw/times/utmri8a.pfb" 1480098746 45458 a3faba884469519614ca56ba5f6b1de1 ""
-  "/usr/share/texlive/texmf-dist/fonts/vf/adobe/courier/pcrb8t.vf" 1480098757 2184 5d20c8b00cd914e50251116c274e2d0b ""
-  "/usr/share/texlive/texmf-dist/fonts/vf/adobe/courier/pcrr8c.vf" 1480098757 3552 6a7911d0b338a7c32cbfc3a9e985ccca ""
-  "/usr/share/texlive/texmf-dist/fonts/vf/adobe/courier/pcrr8t.vf" 1480098757 2184 8475af1b9cfa983db5f46f5ed4b8f9f7 ""
-  "/usr/share/texlive/texmf-dist/fonts/vf/adobe/helvetic/phvb8t.vf" 1480098757 2340 0efed6a948c3c37d870e4e7ddb85c7c3 ""
-  "/usr/share/texlive/texmf-dist/fonts/vf/adobe/helvetic/phvr8t.vf" 1480098757 2344 44ff28c9ef2fc97180cd884f900fee71 ""
-  "/usr/share/texlive/texmf-dist/fonts/vf/adobe/times/ptmb8t.vf" 1480098758 2340 df9c920cc5688ebbf16a93f45ce7bdd3 ""
-  "/usr/share/texlive/texmf-dist/fonts/vf/adobe/times/ptmr8c.vf" 1480098758 3556 8a9a6dcbcd146ef985683f677f4758a6 ""
-  "/usr/share/texlive/texmf-dist/fonts/vf/adobe/times/ptmr8t.vf" 1480098758 2348 91706c542228501c410c266421fbe30c ""
-  "/usr/share/texlive/texmf-dist/fonts/vf/adobe/times/ptmri8c.vf" 1480098758 3564 2068501a2226e54ce367edd5b047e424 ""
-  "/usr/share/texlive/texmf-dist/fonts/vf/adobe/times/ptmri8t.vf" 1480098758 2328 6cd7df782b09b29cfc4d93e55b6b9a59 ""
-  "/usr/share/texlive/texmf-dist/tex/context/base/mkii/supp-pdf.mkii" 1480098806 71627 94eb9990bed73c364d7f53f960cc8c5b ""
-  "/usr/share/texlive/texmf-dist/tex/generic/babel-english/english.ldf" 1496785618 7008 9ff5fdcc865b01beca2b0fe4a46231d4 ""
-  "/usr/share/texlive/texmf-dist/tex/generic/babel/babel.def" 1518644053 67244 2dce3d67c354c8d92f638d0f8682fb73 ""
-  "/usr/share/texlive/texmf-dist/tex/generic/babel/babel.sty" 1518644053 15861 065fe343082d0cd2428cf984d6b2ef66 ""
-  "/usr/share/texlive/texmf-dist/tex/generic/babel/switch.def" 1518644053 12523 d80bc74bf5e02fe4304443a6de8d01be ""
-  "/usr/share/texlive/texmf-dist/tex/generic/babel/txtbabel.def" 1518644053 7434 1b3955075683beb1c883a0fcf92ed2d5 ""
-  "/usr/share/texlive/texmf-dist/tex/generic/ifxetex/ifxetex.sty" 1480098815 1458 43ab4710dc82f3edeabecd0d099626b2 ""
-  "/usr/share/texlive/texmf-dist/tex/generic/oberdiek/etexcmds.sty" 1480098815 7612 729a8cc22a1ee0029997c7f74717ae05 ""
-  "/usr/share/texlive/texmf-dist/tex/generic/oberdiek/gettitlestring.sty" 1480098815 8237 3b62ef1f7e2c23a328c814b3893bc11f ""
-  "/usr/share/texlive/texmf-dist/tex/generic/oberdiek/hobsub-generic.sty" 1517006633 185082 6c11d4e30ed78e2a12957b7e77030856 ""
-  "/usr/share/texlive/texmf-dist/tex/generic/oberdiek/hobsub-hyperref.sty" 1480098815 70864 bcd5b216757bd619ae692a151d90085d ""
-  "/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifluatex.sty" 1480098815 7324 2310d1247db0114eb4726807c8837a0e ""
-  "/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifpdf.sty" 1490564930 1251 d170e11a3246c3392bc7f59595af42cb ""
-  "/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifvtex.sty" 1480098815 6797 90b7f83b0ad46826bc16058b1e3d48df ""
-  "/usr/share/texlive/texmf-dist/tex/generic/oberdiek/infwarerr.sty" 1480098815 8253 473e0e41f9adadb1977e8631b8f72ea6 ""
-  "/usr/share/texlive/texmf-dist/tex/generic/oberdiek/kvsetkeys.sty" 1480098815 14040 ac8866aac45982ac84021584b0abb252 ""
-  "/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ltxcmds.sty" 1480098815 18425 5b3c0c59d76fac78978b5558e83c1f36 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/amsfonts/amsfonts.sty" 1480098820 5949 3f3fd50a8cc94c3d4cbf4fc66cd3df1c ""
-  "/usr/share/texlive/texmf-dist/tex/latex/amsfonts/amssymb.sty" 1480098820 13829 94730e64147574077f8ecfea9bb69af4 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/amsfonts/umsa.fd" 1480098820 961 6518c6525a34feb5e8250ffa91731cff ""
-  "/usr/share/texlive/texmf-dist/tex/latex/amsfonts/umsb.fd" 1480098820 961 d02606146ba5601b5645f987c92e6193 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/amsmath/amsbsy.sty" 1480098820 2210 5c54ab129b848a5071554186d0168766 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/amsmath/amsgen.sty" 1480098820 4160 c115536cf8d4ff25aa8c1c9bc4ecb79a ""
-  "/usr/share/texlive/texmf-dist/tex/latex/amsmath/amsmath.sty" 1504905757 84352 897a476d96a0681047a5b0f91178a3d2 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/amsmath/amsopn.sty" 1480098820 4115 318a66090112f3aa3f415aeb6fe8540f ""
-  "/usr/share/texlive/texmf-dist/tex/latex/amsmath/amstext.sty" 1480098820 2431 fe3078ec12fc30287f568596f8e0b948 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/base/alltt.sty" 1480098821 3140 977eaf314c97ac67b8675753fb15f67f ""
-  "/usr/share/texlive/texmf-dist/tex/latex/base/fontenc.sty" 1492297155 4571 13977df0eda144b93597fc709035ad1f ""
-  "/usr/share/texlive/texmf-dist/tex/latex/base/inputenc.sty" 1480098821 4732 d63eda807ac82cca2ca8488efd31a966 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/base/makeidx.sty" 1480098821 1940 c559b92ca91f1b2a0e60d836d4973f41 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/base/omsenc.dfu" 1487721667 2004 ac51aeac484f08c01026120d62677eca ""
-  "/usr/share/texlive/texmf-dist/tex/latex/base/ot1enc.dfu" 1487721667 3181 1cb3e9ad01f4a01127b2ffd821bfeec7 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/base/report.cls" 1480098821 22880 e7be6f7dd8c05d5108bf3a7d8cabe59a ""
-  "/usr/share/texlive/texmf-dist/tex/latex/base/size10.clo" 1480098821 8292 e897c12e1e886ce77fe26afc5d470886 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/base/t1enc.def" 1492297155 10006 a90ba4035cf778f32f424e297d92e235 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/base/t1enc.dfu" 1487721667 11255 9d97362866549d3d3c994b5f28d1b9b5 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/base/textcomp.sty" 1492297155 16154 f2c73e20ca771d534a8516c62c6b0eae ""
-  "/usr/share/texlive/texmf-dist/tex/latex/base/ts1cmr.fd" 1480098821 2217 d274654bda1292013bdf48d5f720a495 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/base/ts1enc.def" 1480098821 7767 aa88823823f5e767d79ea1166ab1ae74 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/base/ts1enc.dfu" 1487721667 4919 76510afd60e8282294f944c2f9f5103b ""
-  "/usr/share/texlive/texmf-dist/tex/latex/base/utf8.def" 1487721667 7784 325a2a09984cb5c4ff230f9867145ad3 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/capt-of/capt-of.sty" 1480098823 1311 063f8536a047a2d9cb1803321f793f37 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/carlisle/remreset.sty" 1480098823 1096 6a75275ca00e32428c6f059d2f618ea7 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/cmap/cmap.sty" 1480098825 2883 427a7f7cb58418a0394dbd85c80668f6 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/cmap/ot1.cmap" 1480098825 1207 4e0d96772f0d338847cbfb4eca683c81 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/cmap/t1.cmap" 1480098825 1938 beaa4a8467aa0074076e0e19f2992e29 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/fancyhdr/fancyhdr.sty" 1498861448 10663 d7fcc0dc4f35e8998b8cfeef8407d37d ""
-  "/usr/share/texlive/texmf-dist/tex/latex/fancyvrb/fancyvrb.sty" 1480098827 45360 a0833d32f1b541964596b02870342d5a ""
-  "/usr/share/texlive/texmf-dist/tex/latex/float/float.sty" 1480098828 6749 16d2656a1984957e674b149555f1ea1d ""
-  "/usr/share/texlive/texmf-dist/tex/latex/fncychap/fncychap.sty" 1480098828 19488 fdd52eb173b3197d748e1ec25acb042f ""
-  "/usr/share/texlive/texmf-dist/tex/latex/framed/framed.sty" 1480098829 22449 7ec15c16d0d66790f28e90343c5434a3 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/geometry/geometry.sty" 1480098829 40502 e003406220954b0716679d7928aedd8a ""
-  "/usr/share/texlive/texmf-dist/tex/latex/graphics-cfg/color.cfg" 1480098830 1213 620bba36b25224fa9b7e1ccb4ecb76fd ""
-  "/usr/share/texlive/texmf-dist/tex/latex/graphics-cfg/graphics.cfg" 1480098830 1224 978390e9c2234eab29404bc21b268d1e ""
-  "/usr/share/texlive/texmf-dist/tex/latex/graphics-def/pdftex.def" 1515537368 17334 520b9b85ad8a2a48eda3f643e27a5179 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/graphics/graphics.sty" 1498427532 15275 7d676729b1bedd3e7f3c6717affb366c ""
-  "/usr/share/texlive/texmf-dist/tex/latex/graphics/graphicx.sty" 1498427532 9066 649f2ccf62888e3d8c3e57256b70b8e1 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/graphics/keyval.sty" 1480098830 2594 d18d5e19aa8239cf867fa670c556d2e9 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/graphics/trig.sty" 1480098830 3980 0a268fbfda01e381fa95821ab13b6aee ""
-  "/usr/share/texlive/texmf-dist/tex/latex/hyperref/hpdftex.def" 1518041854 51699 9069fc983fff0db91d59a15af144ad62 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/hyperref/hyperref.sty" 1518041854 234088 2c849389d62d41c593d9f5176c4116ab ""
-  "/usr/share/texlive/texmf-dist/tex/latex/hyperref/nameref.sty" 1480098831 12949 81e4e808884a8f0e276b69410e234656 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/hyperref/pd1enc.def" 1518041854 14098 4e70bf396c7c265bd8b0e5cab3fd3d4d ""
-  "/usr/share/texlive/texmf-dist/tex/latex/hyperref/puenc.def" 1518041854 122411 10b605a58a28bbe5d61db37da4a85beb ""
-  "/usr/share/texlive/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg" 1480098833 678 4792914a8f45be57bb98413425e4c7af ""
-  "/usr/share/texlive/texmf-dist/tex/latex/latexconfig/hyperref.cfg" 1480098833 235 6031e5765137be07eed51a510b2b8fb7 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/mmap/oml.cmap" 1480098835 1866 c1c12138091b4a8edd4a24a940e6f792 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/mmap/oms.cmap" 1480098835 2370 3b1f71b14b974f07cef532db09ae9ee0 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/mmap/omx.cmap" 1480098835 3001 252c8ca42b06a22cb1a11c0e47790c6e ""
-  "/usr/share/texlive/texmf-dist/tex/latex/needspace/needspace.sty" 1480098835 852 0e34dbb72efc69fa07602405ad95585e ""
-  "/usr/share/texlive/texmf-dist/tex/latex/oberdiek/auxhook.sty" 1480098836 3834 4363110eb0ef1eb2b71c8fcbcdb6c357 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/oberdiek/epstopdf-base.sty" 1480098836 12095 5337833c991d80788a43d3ce26bd1c46 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/oberdiek/grfext.sty" 1480098836 7075 2fe3d848bba95f139de11ded085e74aa ""
-  "/usr/share/texlive/texmf-dist/tex/latex/oberdiek/hypcap.sty" 1480098836 3720 63669daeb0b67d5fbec899824e2f1491 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/oberdiek/kvoptions.sty" 1480098836 22417 1d9df1eb66848aa31b18a593099cf45c ""
-  "/usr/share/texlive/texmf-dist/tex/latex/oberdiek/rerunfilecheck.sty" 1480098836 9581 023642318cef9f4677efe364de1e2a27 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/parskip/parskip.sty" 1480098836 2763 02a40cc5a32805c41d919cfbdba7e99a ""
-  "/usr/share/texlive/texmf-dist/tex/latex/psnfss/t1pcr.fd" 1480098837 798 d5895e9edc628f2be019beb2c0ec66df ""
-  "/usr/share/texlive/texmf-dist/tex/latex/psnfss/t1phv.fd" 1480098837 1488 9a55ac1cde6b4798a7f56844bb75a553 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/psnfss/t1ptm.fd" 1480098837 774 61d7da1e9f9e74989b196d147e623736 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/psnfss/times.sty" 1480098837 857 6c716f26c5eadfb81029fcd6ce2d45e6 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/psnfss/ts1pcr.fd" 1480098837 643 92c451bb86386a4e36a174603ddb5a13 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/psnfss/ts1ptm.fd" 1480098837 619 96f56dc5d1ef1fe1121f1cfeec70ee0c ""
-  "/usr/share/texlive/texmf-dist/tex/latex/tabulary/tabulary.sty" 1480098840 13791 8c83287d79183c3bf58fd70871e8a70b ""
-  "/usr/share/texlive/texmf-dist/tex/latex/titlesec/titlesec.sty" 1480098841 37387 afa86533e532701faf233f3f592c61e0 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/tools/array.sty" 1485129666 12396 d41f82b039f900e95f351e54ae740f31 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/tools/longtable.sty" 1480098841 12083 80916157594a8e4354985aaefae4f367 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/upquote/upquote.sty" 1480098842 1048 517e01cde97c1c0baf72e69d43aa5a2e ""
-  "/usr/share/texlive/texmf-dist/tex/latex/url/url.sty" 1480098842 12796 8edb7d69a20b857904dd0ea757c14ec9 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/varwidth/varwidth.sty" 1480098842 10894 d359a13923460b2a73d4312d613554c8 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/wrapfig/wrapfig.sty" 1480098843 26220 3701aebf80ccdef248c0c20dd062fea9 ""
-  "/usr/share/texlive/texmf-dist/tex/latex/xcolor/xcolor.sty" 1480098843 55589 34128738f682d033422ca125f82e5d62 ""
-  "/usr/share/texlive/texmf-dist/web2c/texmf.cnf" 1520210507 32485 c64754543d8ac501bea6e75e209ea521 ""
-  "/usr/share/texmf/web2c/texmf.cnf" 1520210507 32485 c64754543d8ac501bea6e75e209ea521 ""
-  "/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map" 1617796629 127853 b41f58aff49fe1af38af8d065f49d51c ""
-  "/var/lib/texmf/web2c/pdftex/pdflatex.fmt" 1619696497 859410 f314d8236a7d1010432a756be2fb7668 ""
-  "atomic-features-package.aux" 1632853054 8 a94a2480d3289e625eea47cd1b285758 ""
-  "atomic-features-package.ind" 0 -1 0 "makeindex atomic-features-package.idx"
-  "atomic-features-package.tex" 1632853054 161971 64ffd532faa3608738f10add7d1d5575 ""
-  "footnotehyper-sphinx.sty" 1599368893 8888 1bbd7bdeae8c8bed1d10d551bddb1cc9 ""
-  "sphinx.sty" 1599368893 81971 6ea11f6bb47c78e050eedff1e54c327b ""
-  "sphinxhighlight.sty" 1632853054 8137 38a433148fcb7611515a989ff1750dd5 ""
-  "sphinxmanual.cls" 1599368893 4236 124cd90deb92742b5d3922bfc2cd70c0 ""
-  "sphinxmessages.sty" 1632853054 745 3f5fcd6cdd7964ed608767954a8ced6f ""
-  "sphinxmulticell.sty" 1599368893 14606 0b6edc2b1a83546ed92026d1f6a311b5 ""
-  (generated)
-  "atomic-features-package.log"
-  "atomic-features-package.toc"
-  "atomic-features-package.aux"
-  "atomic-features-package.idx"
-  "atomic-features-package.pdf"
-  "atomic-features-package.out"
diff --git a/atomicfeaturespackage/docs/_build/latex/atomic-features-package.fls b/atomicfeaturespackage/docs/_build/latex/atomic-features-package.fls
deleted file mode 100644
index 6d262ac..0000000
--- a/atomicfeaturespackage/docs/_build/latex/atomic-features-package.fls
+++ /dev/null
@@ -1,297 +0,0 @@
-PWD /media/aakash/My space/Work/Final package/atomic-features-package/atomicfeaturespackage/docs/_build/latex
-INPUT /etc/texmf/web2c/texmf.cnf
-INPUT /usr/share/texmf/web2c/texmf.cnf
-INPUT /usr/share/texlive/texmf-dist/web2c/texmf.cnf
-INPUT /var/lib/texmf/web2c/pdftex/pdflatex.fmt
-INPUT atomic-features-package.tex
-OUTPUT atomic-features-package.log
-INPUT sphinxmanual.cls
-INPUT sphinxmanual.cls
-INPUT /usr/share/texlive/texmf-dist/tex/latex/base/report.cls
-INPUT /usr/share/texlive/texmf-dist/tex/latex/base/report.cls
-INPUT /usr/share/texlive/texmf-dist/tex/latex/base/size10.clo
-INPUT /usr/share/texlive/texmf-dist/tex/latex/base/size10.clo
-INPUT /usr/share/texlive/texmf-dist/tex/latex/base/inputenc.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/base/inputenc.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/base/utf8.def
-INPUT /usr/share/texlive/texmf-dist/tex/latex/base/utf8.def
-INPUT /usr/share/texlive/texmf-dist/tex/latex/base/t1enc.dfu
-INPUT /usr/share/texlive/texmf-dist/tex/latex/base/t1enc.dfu
-INPUT /usr/share/texlive/texmf-dist/tex/latex/base/ot1enc.dfu
-INPUT /usr/share/texlive/texmf-dist/tex/latex/base/ot1enc.dfu
-INPUT /usr/share/texlive/texmf-dist/tex/latex/base/omsenc.dfu
-INPUT /usr/share/texlive/texmf-dist/tex/latex/base/omsenc.dfu
-INPUT /usr/share/texlive/texmf-dist/tex/latex/cmap/cmap.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/cmap/cmap.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/base/fontenc.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/base/fontenc.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/base/t1enc.def
-INPUT /usr/share/texlive/texmf-dist/tex/latex/base/t1enc.def
-INPUT /usr/share/texlive/texmf-dist/fonts/map/fontname/texfonts.map
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/jknappen/ec/ecrm1000.tfm
-INPUT /usr/share/texlive/texmf-dist/tex/latex/cmap/t1.cmap
-OUTPUT atomic-features-package.pdf
-INPUT /usr/share/texlive/texmf-dist/tex/latex/cmap/t1.cmap
-INPUT /usr/share/texlive/texmf-dist/tex/latex/amsmath/amsmath.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/amsmath/amsmath.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/amsmath/amstext.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/amsmath/amstext.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/amsmath/amsgen.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/amsmath/amsgen.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/amsmath/amsbsy.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/amsmath/amsbsy.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/amsmath/amsopn.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/amsmath/amsopn.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/amsfonts/amssymb.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/amsfonts/amssymb.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/amsfonts/amsfonts.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/amsfonts/amsfonts.sty
-INPUT /usr/share/texlive/texmf-dist/tex/generic/babel/babel.sty
-INPUT /usr/share/texlive/texmf-dist/tex/generic/babel/babel.sty
-INPUT /usr/share/texlive/texmf-dist/tex/generic/babel/switch.def
-INPUT /usr/share/texlive/texmf-dist/tex/generic/babel-english/english.ldf
-INPUT /usr/share/texlive/texmf-dist/tex/generic/babel-english/english.ldf
-INPUT /usr/share/texlive/texmf-dist/tex/generic/babel-english/english.ldf
-INPUT /usr/share/texlive/texmf-dist/tex/generic/babel/babel.def
-INPUT /usr/share/texlive/texmf-dist/tex/generic/babel/txtbabel.def
-INPUT /usr/share/texlive/texmf-dist/tex/latex/psnfss/times.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/psnfss/times.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/fncychap/fncychap.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/fncychap/fncychap.sty
-INPUT sphinx.sty
-INPUT sphinx.sty
-INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/ltxcmds.sty
-INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/ltxcmds.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/graphics/graphicx.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/graphics/graphicx.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/graphics/keyval.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/graphics/keyval.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/graphics/graphics.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/graphics/graphics.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/graphics/trig.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/graphics/trig.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/graphics-cfg/graphics.cfg
-INPUT /usr/share/texlive/texmf-dist/tex/latex/graphics-cfg/graphics.cfg
-INPUT /usr/share/texlive/texmf-dist/tex/latex/graphics-def/pdftex.def
-INPUT /usr/share/texlive/texmf-dist/tex/latex/graphics-def/pdftex.def
-INPUT /usr/share/texlive/texmf-dist/tex/latex/fancyhdr/fancyhdr.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/fancyhdr/fancyhdr.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/base/textcomp.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/base/textcomp.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/base/ts1enc.def
-INPUT /usr/share/texlive/texmf-dist/tex/latex/base/ts1enc.def
-INPUT /usr/share/texlive/texmf-dist/tex/latex/base/ts1enc.dfu
-INPUT /usr/share/texlive/texmf-dist/tex/latex/base/ts1enc.dfu
-INPUT /usr/share/texlive/texmf-dist/tex/latex/titlesec/titlesec.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/titlesec/titlesec.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/tabulary/tabulary.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/tabulary/tabulary.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/tools/array.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/tools/array.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/tools/longtable.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/tools/longtable.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/varwidth/varwidth.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/varwidth/varwidth.sty
-INPUT sphinxmulticell.sty
-INPUT sphinxmulticell.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/base/makeidx.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/base/makeidx.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/framed/framed.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/framed/framed.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/xcolor/xcolor.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/xcolor/xcolor.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/xcolor/xcolor.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/graphics-cfg/color.cfg
-INPUT /usr/share/texlive/texmf-dist/tex/latex/graphics-cfg/color.cfg
-INPUT /usr/share/texlive/texmf-dist/tex/latex/fancyvrb/fancyvrb.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/fancyvrb/fancyvrb.sty
-INPUT footnotehyper-sphinx.sty
-INPUT footnotehyper-sphinx.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/float/float.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/float/float.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/wrapfig/wrapfig.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/wrapfig/wrapfig.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/parskip/parskip.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/parskip/parskip.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/base/alltt.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/base/alltt.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/upquote/upquote.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/upquote/upquote.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/capt-of/capt-of.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/capt-of/capt-of.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/needspace/needspace.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/needspace/needspace.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/carlisle/remreset.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/carlisle/remreset.sty
-INPUT sphinxhighlight.sty
-INPUT sphinxhighlight.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/oberdiek/kvoptions.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/oberdiek/kvoptions.sty
-INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/kvsetkeys.sty
-INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/kvsetkeys.sty
-INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/infwarerr.sty
-INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/infwarerr.sty
-INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/etexcmds.sty
-INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/etexcmds.sty
-INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifluatex.sty
-INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifluatex.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/geometry/geometry.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/geometry/geometry.sty
-INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifpdf.sty
-INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifpdf.sty
-INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifvtex.sty
-INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifvtex.sty
-INPUT /usr/share/texlive/texmf-dist/tex/generic/ifxetex/ifxetex.sty
-INPUT /usr/share/texlive/texmf-dist/tex/generic/ifxetex/ifxetex.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/hyperref/hyperref.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/hyperref/hyperref.sty
-INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/hobsub-hyperref.sty
-INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/hobsub-hyperref.sty
-INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/hobsub-hyperref.sty
-INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/hobsub-generic.sty
-INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/hobsub-generic.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/oberdiek/auxhook.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/oberdiek/auxhook.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/hyperref/pd1enc.def
-INPUT /usr/share/texlive/texmf-dist/tex/latex/hyperref/pd1enc.def
-INPUT /usr/share/texlive/texmf-dist/tex/latex/latexconfig/hyperref.cfg
-INPUT /usr/share/texlive/texmf-dist/tex/latex/latexconfig/hyperref.cfg
-INPUT /usr/share/texlive/texmf-dist/tex/latex/hyperref/puenc.def
-INPUT /usr/share/texlive/texmf-dist/tex/latex/hyperref/puenc.def
-INPUT /usr/share/texlive/texmf-dist/tex/latex/url/url.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/url/url.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/hyperref/hpdftex.def
-INPUT /usr/share/texlive/texmf-dist/tex/latex/hyperref/hpdftex.def
-INPUT /usr/share/texlive/texmf-dist/tex/latex/oberdiek/rerunfilecheck.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/oberdiek/rerunfilecheck.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/oberdiek/hypcap.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/oberdiek/hypcap.sty
-INPUT sphinxmessages.sty
-INPUT sphinxmessages.sty
-OUTPUT atomic-features-package.idx
-INPUT atomic-features-package.aux
-INPUT atomic-features-package.aux
-OUTPUT atomic-features-package.aux
-INPUT /usr/share/texlive/texmf-dist/tex/latex/base/ts1cmr.fd
-INPUT /usr/share/texlive/texmf-dist/tex/latex/base/ts1cmr.fd
-INPUT /usr/share/texlive/texmf-dist/tex/latex/psnfss/t1ptm.fd
-INPUT /usr/share/texlive/texmf-dist/tex/latex/psnfss/t1ptm.fd
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/adobe/times/ptmr8t.tfm
-INPUT /usr/share/texlive/texmf-dist/tex/context/base/mkii/supp-pdf.mkii
-INPUT /usr/share/texlive/texmf-dist/tex/context/base/mkii/supp-pdf.mkii
-INPUT /usr/share/texlive/texmf-dist/tex/latex/oberdiek/epstopdf-base.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/oberdiek/epstopdf-base.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/oberdiek/grfext.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/oberdiek/grfext.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg
-INPUT /usr/share/texlive/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg
-INPUT /usr/share/texlive/texmf-dist/tex/latex/hyperref/nameref.sty
-INPUT /usr/share/texlive/texmf-dist/tex/latex/hyperref/nameref.sty
-INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/gettitlestring.sty
-INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/gettitlestring.sty
-OUTPUT atomic-features-package.out
-INPUT /usr/share/texlive/texmf-dist/tex/latex/psnfss/t1phv.fd
-INPUT /usr/share/texlive/texmf-dist/tex/latex/psnfss/t1phv.fd
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/adobe/helvetic/phvr8t.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/adobe/helvetic/phvb8t.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/adobe/helvetic/phvb8t.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/adobe/helvetic/phvbo8t.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/adobe/helvetic/phvbo8t.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/adobe/helvetic/phvb8t.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/cm/cmr17.tfm
-INPUT /usr/share/texlive/texmf-dist/tex/latex/cmap/ot1.cmap
-INPUT /usr/share/texlive/texmf-dist/tex/latex/cmap/ot1.cmap
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/cm/cmr12.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/cm/cmmi12.tfm
-INPUT /usr/share/texlive/texmf-dist/tex/latex/mmap/oml.cmap
-INPUT /usr/share/texlive/texmf-dist/tex/latex/mmap/oml.cmap
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/cm/cmmi12.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/cm/cmsy10.tfm
-INPUT /usr/share/texlive/texmf-dist/tex/latex/mmap/oms.cmap
-INPUT /usr/share/texlive/texmf-dist/tex/latex/mmap/oms.cmap
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/cm/cmsy10.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/cm/cmex10.tfm
-INPUT /usr/share/texlive/texmf-dist/tex/latex/mmap/omx.cmap
-INPUT /usr/share/texlive/texmf-dist/tex/latex/mmap/omx.cmap
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/cm/cmex10.tfm
-INPUT /usr/share/texlive/texmf-dist/tex/latex/amsfonts/umsa.fd
-INPUT /usr/share/texlive/texmf-dist/tex/latex/amsfonts/umsa.fd
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam10.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam10.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam10.tfm
-INPUT /usr/share/texlive/texmf-dist/tex/latex/amsfonts/umsb.fd
-INPUT /usr/share/texlive/texmf-dist/tex/latex/amsfonts/umsb.fd
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm10.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm10.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm10.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/adobe/helvetic/phvb8t.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/vf/adobe/helvetic/phvb8t.vf
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/adobe/helvetic/phvb8r.tfm
-INPUT /var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map
-INPUT /usr/share/texlive/texmf-dist/fonts/vf/adobe/helvetic/phvb8t.vf
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/adobe/helvetic/phvb8r.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/vf/adobe/helvetic/phvb8t.vf
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/adobe/helvetic/phvb8r.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/adobe/times/ptmr8t.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/adobe/helvetic/phvr8t.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/adobe/helvetic/phvb8t.tfm
-OUTPUT atomic-features-package.toc
-INPUT /usr/share/texlive/texmf-dist/fonts/vf/adobe/helvetic/phvb8t.vf
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/adobe/helvetic/phvb8r.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/vf/adobe/helvetic/phvb8t.vf
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/adobe/helvetic/phvb8r.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/adobe/times/ptmb8t.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/vf/adobe/times/ptmr8t.vf
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/adobe/times/ptmr8r.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/vf/adobe/times/ptmb8t.vf
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/adobe/times/ptmb8r.tfm
-INPUT /usr/share/texlive/texmf-dist/tex/latex/psnfss/t1pcr.fd
-INPUT /usr/share/texlive/texmf-dist/tex/latex/psnfss/t1pcr.fd
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/adobe/courier/pcrr8t.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/vf/adobe/courier/pcrr8t.vf
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/adobe/courier/pcrr8r.tfm
-INPUT /usr/share/texlive/texmf-dist/tex/latex/psnfss/ts1pcr.fd
-INPUT /usr/share/texlive/texmf-dist/tex/latex/psnfss/ts1pcr.fd
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/adobe/courier/pcrr8c.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/adobe/times/ptmr8t.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/adobe/courier/pcrr8t.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/adobe/courier/pcrr8t.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/cmextra/cmex7.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam5.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm5.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/vf/adobe/courier/pcrr8c.vf
-INPUT /usr/share/texlive/texmf-dist/fonts/vf/adobe/courier/pcrr8t.vf
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/adobe/courier/pcrr8r.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/adobe/courier/pcrb8t.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/vf/adobe/courier/pcrb8t.vf
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/adobe/courier/pcrb8r.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/adobe/times/ptmr8t.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/adobe/helvetic/phvr8t.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/adobe/courier/pcrb8t.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/adobe/times/ptmri8t.tfm
-INPUT /usr/share/texlive/texmf-dist/tex/latex/psnfss/ts1ptm.fd
-INPUT /usr/share/texlive/texmf-dist/tex/latex/psnfss/ts1ptm.fd
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/adobe/times/ptmri8c.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/adobe/times/ptmr8c.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/vf/adobe/courier/pcrb8t.vf
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/adobe/courier/pcrb8r.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/vf/adobe/times/ptmri8t.vf
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/adobe/times/ptmri8r.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/vf/adobe/times/ptmri8c.vf
-INPUT /usr/share/texlive/texmf-dist/fonts/vf/adobe/times/ptmr8c.vf
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/cmextra/cmex7.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam7.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm7.tfm
-INPUT /usr/share/texlive/texmf-dist/fonts/vf/adobe/helvetic/phvr8t.vf
-INPUT /usr/share/texlive/texmf-dist/fonts/tfm/adobe/helvetic/phvr8r.tfm
-INPUT atomic-features-package.aux
-INPUT ./atomic-features-package.out
-INPUT ./atomic-features-package.out
-INPUT /usr/share/texlive/texmf-dist/fonts/enc/dvips/base/8r.enc
-INPUT /usr/share/texlive/texmf-dist/fonts/type1/urw/courier/ucrb8a.pfb
-INPUT /usr/share/texlive/texmf-dist/fonts/type1/urw/courier/ucrr8a.pfb
-INPUT /usr/share/texlive/texmf-dist/fonts/type1/urw/helvetic/uhvb8a.pfb
-INPUT /usr/share/texlive/texmf-dist/fonts/type1/urw/helvetic/uhvr8a.pfb
-INPUT /usr/share/texlive/texmf-dist/fonts/type1/urw/times/utmb8a.pfb
-INPUT /usr/share/texlive/texmf-dist/fonts/type1/urw/times/utmr8a.pfb
-INPUT /usr/share/texlive/texmf-dist/fonts/type1/urw/times/utmri8a.pfb
diff --git a/atomicfeaturespackage/docs/_build/latex/atomic-features-package.idx b/atomicfeaturespackage/docs/_build/latex/atomic-features-package.idx
deleted file mode 100644
index 665e765..0000000
--- a/atomicfeaturespackage/docs/_build/latex/atomic-features-package.idx
+++ /dev/null
@@ -1,259 +0,0 @@
-\indexentry{atomicfeaturespackage.atomicproperties.atomic\_properties\_dft (module)@\spxentry{atomicfeaturespackage.atomicproperties.atomic\_properties\_dft}\spxextra{module}|hyperpage}{5}
-\indexentry{definition() (in module atomicfeaturespackage.atomicproperties.atomic\_properties\_dft)@\spxentry{definition()}\spxextra{in module atomicfeaturespackage.atomicproperties.atomic\_properties\_dft}|hyperpage}{5}
-\indexentry{f() (in module atomicfeaturespackage.atomicproperties.atomic\_properties\_dft)@\spxentry{f()}\spxextra{in module atomicfeaturespackage.atomicproperties.atomic\_properties\_dft}|hyperpage}{5}
-\indexentry{method() (in module atomicfeaturespackage.atomicproperties.atomic\_properties\_dft)@\spxentry{method()}\spxextra{in module atomicfeaturespackage.atomicproperties.atomic\_properties\_dft}|hyperpage}{5}
-\indexentry{symbol() (in module atomicfeaturespackage.atomicproperties.atomic\_properties\_dft)@\spxentry{symbol()}\spxextra{in module atomicfeaturespackage.atomicproperties.atomic\_properties\_dft}|hyperpage}{5}
-\indexentry{t() (in module atomicfeaturespackage.atomicproperties.atomic\_properties\_dft)@\spxentry{t()}\spxextra{in module atomicfeaturespackage.atomicproperties.atomic\_properties\_dft}|hyperpage}{5}
-\indexentry{atomicfeaturespackage.atomicproperties.atomic\_properties\_lda2015 (module)@\spxentry{atomicfeaturespackage.atomicproperties.atomic\_properties\_lda2015}\spxextra{module}|hyperpage}{6}
-\indexentry{definition() (in module atomicfeaturespackage.atomicproperties.atomic\_properties\_lda2015)@\spxentry{definition()}\spxextra{in module atomicfeaturespackage.atomicproperties.atomic\_properties\_lda2015}|hyperpage}{6}
-\indexentry{symbol() (in module atomicfeaturespackage.atomicproperties.atomic\_properties\_lda2015)@\spxentry{symbol()}\spxextra{in module atomicfeaturespackage.atomicproperties.atomic\_properties\_lda2015}|hyperpage}{6}
-\indexentry{atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer (module)@\spxentry{atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer}\spxextra{module}|hyperpage}{6}
-\indexentry{atomicsymbol() (in module atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer)@\spxentry{atomicsymbol()}\spxextra{in module atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer}|hyperpage}{6}
-\indexentry{definition() (in module atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer)@\spxentry{definition()}\spxextra{in module atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer}|hyperpage}{6}
-\indexentry{ionizationen() (in module atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer)@\spxentry{ionizationen()}\spxextra{in module atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer}|hyperpage}{6}
-\indexentry{oxistates() (in module atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer)@\spxentry{oxistates()}\spxextra{in module atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer}|hyperpage}{6}
-\indexentry{symbol() (in module atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer)@\spxentry{symbol()}\spxextra{in module atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer}|hyperpage}{6}
-\indexentry{atomicfeaturespackage.atomicproperties.atomic\_properties\_pymat (module)@\spxentry{atomicfeaturespackage.atomicproperties.atomic\_properties\_pymat}\spxextra{module}|hyperpage}{6}
-\indexentry{definition() (in module atomicfeaturespackage.atomicproperties.atomic\_properties\_pymat)@\spxentry{definition()}\spxextra{in module atomicfeaturespackage.atomicproperties.atomic\_properties\_pymat}|hyperpage}{6}
-\indexentry{rename\_keys() (in module atomicfeaturespackage.atomicproperties.atomic\_properties\_pymat)@\spxentry{rename\_keys()}\spxextra{in module atomicfeaturespackage.atomicproperties.atomic\_properties\_pymat}|hyperpage}{6}
-\indexentry{symbol() (in module atomicfeaturespackage.atomicproperties.atomic\_properties\_pymat)@\spxentry{symbol()}\spxextra{in module atomicfeaturespackage.atomicproperties.atomic\_properties\_pymat}|hyperpage}{6}
-\indexentry{atomicfeaturespackage.atomicproperties.periodictable (module)@\spxentry{atomicfeaturespackage.atomicproperties.periodictable}\spxextra{module}|hyperpage}{7}
-\indexentry{clean() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{clean()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}|hyperpage}{7}
-\indexentry{f() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{f()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}|hyperpage}{7}
-\indexentry{featuref() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{featuref()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}|hyperpage}{7}
-\indexentry{featurelda() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{featurelda()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}|hyperpage}{7}
-\indexentry{featurematmin() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{featurematmin()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}|hyperpage}{7}
-\indexentry{featurepymat() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{featurepymat()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}|hyperpage}{7}
-\indexentry{featuret() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{featuret()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}|hyperpage}{7}
-\indexentry{featurewebele() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{featurewebele()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}|hyperpage}{7}
-\indexentry{heatmap() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{heatmap()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}|hyperpage}{7}
-\indexentry{lda() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{lda()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}|hyperpage}{8}
-\indexentry{matmin() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{matmin()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}|hyperpage}{8}
-\indexentry{ptableplotgenf() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{ptableplotgenf()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}|hyperpage}{8}
-\indexentry{ptableplotgenlda() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{ptableplotgenlda()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}|hyperpage}{8}
-\indexentry{ptableplotgenmatmin() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{ptableplotgenmatmin()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}|hyperpage}{8}
-\indexentry{ptableplotgenpymat() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{ptableplotgenpymat()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}|hyperpage}{8}
-\indexentry{ptableplotgent() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{ptableplotgent()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}|hyperpage}{8}
-\indexentry{ptableplotgenwebele() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{ptableplotgenwebele()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}|hyperpage}{8}
-\indexentry{pymat() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{pymat()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}|hyperpage}{8}
-\indexentry{showfigf() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{showfigf()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}|hyperpage}{8}
-\indexentry{showfiglda() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{showfiglda()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}|hyperpage}{8}
-\indexentry{showfigmatmin() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{showfigmatmin()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}|hyperpage}{8}
-\indexentry{showfigpymat() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{showfigpymat()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}|hyperpage}{8}
-\indexentry{showfigt() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{showfigt()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}|hyperpage}{8}
-\indexentry{showfigwebele() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{showfigwebele()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}|hyperpage}{9}
-\indexentry{t() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{t()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}|hyperpage}{9}
-\indexentry{webele() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{webele()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}|hyperpage}{9}
-\indexentry{atomicfeaturespackage.metainfo.metainfo (module)@\spxentry{atomicfeaturespackage.metainfo.metainfo}\spxextra{module}|hyperpage}{9}
-\indexentry{atomic\_properties\_fhi (class in atomicfeaturespackage.metainfo.metainfo)@\spxentry{atomic\_properties\_fhi}\spxextra{class in atomicfeaturespackage.metainfo.metainfo}|hyperpage}{9}
-\indexentry{atomic\_ea (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_ea}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}|hyperpage}{9}
-\indexentry{atomic\_ea\_by\_half\_charged\_homo (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_ea\_by\_half\_charged\_homo}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}|hyperpage}{9}
-\indexentry{atomic\_element\_symbol (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_element\_symbol}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}|hyperpage}{9}
-\indexentry{atomic\_hfomo (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_hfomo}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}|hyperpage}{9}
-\indexentry{atomic\_hpomo (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_hpomo}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}|hyperpage}{9}
-\indexentry{atomic\_ip (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_ip}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}|hyperpage}{9}
-\indexentry{atomic\_ip\_by\_half\_charged\_homo (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_ip\_by\_half\_charged\_homo}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}|hyperpage}{9}
-\indexentry{atomic\_lfumo (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_lfumo}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}|hyperpage}{9}
-\indexentry{atomic\_lpumo (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_lpumo}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}|hyperpage}{9}
-\indexentry{atomic\_number (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_number}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}|hyperpage}{9}
-\indexentry{atomic\_r\_d (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_r\_d}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}|hyperpage}{9}
-\indexentry{atomic\_r\_d\_05 (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_r\_d\_05}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}|hyperpage}{10}
-\indexentry{atomic\_r\_d\_1 (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_r\_d\_1}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}|hyperpage}{10}
-\indexentry{atomic\_r\_d\_neg\_05 (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_r\_d\_neg\_05}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}|hyperpage}{10}
-\indexentry{atomic\_r\_d\_neg\_1 (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_r\_d\_neg\_1}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}|hyperpage}{10}
-\indexentry{atomic\_r\_p (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_r\_p}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}|hyperpage}{10}
-\indexentry{atomic\_r\_p\_05 (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_r\_p\_05}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}|hyperpage}{10}
-\indexentry{atomic\_r\_p\_1 (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_r\_p\_1}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}|hyperpage}{10}
-\indexentry{atomic\_r\_p\_neg\_05 (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_r\_p\_neg\_05}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}|hyperpage}{10}
-\indexentry{atomic\_r\_p\_neg\_1 (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_r\_p\_neg\_1}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}|hyperpage}{10}
-\indexentry{atomic\_r\_s (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_r\_s}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}|hyperpage}{10}
-\indexentry{atomic\_r\_s\_05 (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_r\_s\_05}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}|hyperpage}{10}
-\indexentry{atomic\_r\_s\_1 (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_r\_s\_1}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}|hyperpage}{10}
-\indexentry{atomic\_r\_s\_neg\_05 (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_r\_s\_neg\_05}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}|hyperpage}{10}
-\indexentry{atomic\_r\_s\_neg\_1 (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_r\_s\_neg\_1}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}|hyperpage}{10}
-\indexentry{atomic\_r\_val (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_r\_val}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}|hyperpage}{10}
-\indexentry{atomic\_r\_val\_05 (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_r\_val\_05}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}|hyperpage}{10}
-\indexentry{atomic\_r\_val\_1 (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_r\_val\_1}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}|hyperpage}{10}
-\indexentry{atomic\_r\_val\_neg\_05 (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_r\_val\_neg\_05}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}|hyperpage}{10}
-\indexentry{atomic\_r\_val\_neg\_1 (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_r\_val\_neg\_1}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}|hyperpage}{10}
-\indexentry{section\_fhi\_metadata (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{section\_fhi\_metadata}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}|hyperpage}{10}
-\indexentry{atomic\_properties\_lda2015 (class in atomicfeaturespackage.metainfo.metainfo)@\spxentry{atomic\_properties\_lda2015}\spxextra{class in atomicfeaturespackage.metainfo.metainfo}|hyperpage}{11}
-\indexentry{atomic\_ea (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute)@\spxentry{atomic\_ea}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute}|hyperpage}{11}
-\indexentry{atomic\_element\_symbol (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute)@\spxentry{atomic\_element\_symbol}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute}|hyperpage}{11}
-\indexentry{atomic\_homo (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute)@\spxentry{atomic\_homo}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute}|hyperpage}{11}
-\indexentry{atomic\_ip (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute)@\spxentry{atomic\_ip}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute}|hyperpage}{11}
-\indexentry{atomic\_lumo (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute)@\spxentry{atomic\_lumo}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute}|hyperpage}{11}
-\indexentry{atomic\_number (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute)@\spxentry{atomic\_number}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute}|hyperpage}{11}
-\indexentry{atomic\_period (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute)@\spxentry{atomic\_period}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute}|hyperpage}{11}
-\indexentry{atomic\_r\_d (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute)@\spxentry{atomic\_r\_d}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute}|hyperpage}{11}
-\indexentry{atomic\_r\_p (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute)@\spxentry{atomic\_r\_p}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute}|hyperpage}{11}
-\indexentry{atomic\_r\_s (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute)@\spxentry{atomic\_r\_s}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute}|hyperpage}{11}
-\indexentry{section\_lda2015\_metadata (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute)@\spxentry{section\_lda2015\_metadata}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute}|hyperpage}{11}
-\indexentry{atomic\_properties\_matminer (class in atomicfeaturespackage.metainfo.metainfo)@\spxentry{atomic\_properties\_matminer}\spxextra{class in atomicfeaturespackage.metainfo.metainfo}|hyperpage}{11}
-\indexentry{atomic\_ICSD\_vol (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_ICSD\_vol}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{12}
-\indexentry{atomic\_cpmass (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_cpmass}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{12}
-\indexentry{atomic\_cpmolar (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_cpmolar}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{12}
-\indexentry{atomic\_density (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_density}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{12}
-\indexentry{atomic\_ea (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_ea}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{12}
-\indexentry{atomic\_element\_symbol (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_element\_symbol}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{12}
-\indexentry{atomic\_en (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_en}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{12}
-\indexentry{atomic\_en\_allen (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_en\_allen}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{12}
-\indexentry{atomic\_hfu (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_hfu}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{12}
-\indexentry{atomic\_hhip (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_hhip}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{12}
-\indexentry{atomic\_hhir (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_hhir}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{12}
-\indexentry{atomic\_hvap (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_hvap}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{12}
-\indexentry{atomic\_ie (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_ie}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{12}
-\indexentry{atomic\_ie\_1 (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_ie\_1}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{12}
-\indexentry{atomic\_ie\_2 (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_ie\_2}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{12}
-\indexentry{atomic\_isalkali (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_isalkali}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{12}
-\indexentry{atomic\_isdblock (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_isdblock}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{12}
-\indexentry{atomic\_isfblock (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_isfblock}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{12}
-\indexentry{atomic\_ismetal (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_ismetal}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{13}
-\indexentry{atomic\_ismetalloid (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_ismetalloid}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{13}
-\indexentry{atomic\_isnonmetal (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_isnonmetal}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{13}
-\indexentry{atomic\_ndunf (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_ndunf}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{13}
-\indexentry{atomic\_ndval (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_ndval}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{13}
-\indexentry{atomic\_nfunf (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_nfunf}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{13}
-\indexentry{atomic\_nfval (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_nfval}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{13}
-\indexentry{atomic\_npunf (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_npunf}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{13}
-\indexentry{atomic\_npval (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_npval}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{13}
-\indexentry{atomic\_nsunf (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_nsunf}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{13}
-\indexentry{atomic\_nsval (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_nsval}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{13}
-\indexentry{atomic\_number (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_number}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{13}
-\indexentry{atomic\_nunf (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_nunf}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{13}
-\indexentry{atomic\_nval (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_nval}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{13}
-\indexentry{atomic\_oxstates (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_oxstates}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{13}
-\indexentry{atomic\_phi (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_phi}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{13}
-\indexentry{atomic\_pol (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_pol}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{13}
-\indexentry{atomic\_pp\_r\_d (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_pp\_r\_d}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{13}
-\indexentry{atomic\_pp\_r\_p (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_pp\_r\_p}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{13}
-\indexentry{atomic\_pp\_r\_pi (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_pp\_r\_pi}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{14}
-\indexentry{atomic\_pp\_r\_s (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_pp\_r\_s}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{14}
-\indexentry{atomic\_pp\_r\_sig (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_pp\_r\_sig}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{14}
-\indexentry{atomic\_radius (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_radius}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{14}
-\indexentry{atomic\_sgn (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_sgn}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{14}
-\indexentry{atomic\_vdw\_radius (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_vdw\_radius}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{14}
-\indexentry{atomic\_volume (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_volume}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{14}
-\indexentry{atomic\_weight (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_weight}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{14}
-\indexentry{atomic\_ws3 (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_ws3}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{14}
-\indexentry{boiling\_temp (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{boiling\_temp}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{14}
-\indexentry{bulk\_modulus (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{bulk\_modulus}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{14}
-\indexentry{covalent\_radius (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{covalent\_radius}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{14}
-\indexentry{gs\_bandgap (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{gs\_bandgap}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{14}
-\indexentry{gs\_bcclatparam (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{gs\_bcclatparam}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{14}
-\indexentry{gs\_energy\_pa (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{gs\_energy\_pa}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{14}
-\indexentry{gs\_fcclatparam (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{gs\_fcclatparam}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{14}
-\indexentry{gs\_mag\_mom (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{gs\_mag\_mom}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{14}
-\indexentry{gs\_volume\_pa (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{gs\_volume\_pa}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{14}
-\indexentry{melting\_point (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{melting\_point}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{14}
-\indexentry{mendeleev\_no (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{mendeleev\_no}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{14}
-\indexentry{micracle\_radius (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{micracle\_radius}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{14}
-\indexentry{molar\_volume (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{molar\_volume}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{15}
-\indexentry{periodict\_column (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{periodict\_column}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{15}
-\indexentry{periodict\_row (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{periodict\_row}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{15}
-\indexentry{section\_matmin\_metadata (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{section\_matmin\_metadata}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{15}
-\indexentry{shear\_mod (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{shear\_mod}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{15}
-\indexentry{thermal\_cond (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{thermal\_cond}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{15}
-\indexentry{thermal\_cond\_log (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{thermal\_cond\_log}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}|hyperpage}{15}
-\indexentry{atomic\_properties\_pymat (class in atomicfeaturespackage.metainfo.metainfo)@\spxentry{atomic\_properties\_pymat}\spxextra{class in atomicfeaturespackage.metainfo.metainfo}|hyperpage}{15}
-\indexentry{atomic\_element\_name (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{atomic\_element\_name}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{15}
-\indexentry{atomic\_element\_symbol (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{atomic\_element\_symbol}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{15}
-\indexentry{atomic\_mass (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{atomic\_mass}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{15}
-\indexentry{atomic\_number (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{atomic\_number}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{15}
-\indexentry{atomic\_orbitals (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{atomic\_orbitals}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{15}
-\indexentry{atomic\_radius (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{atomic\_radius}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{15}
-\indexentry{atomic\_radius\_calculated (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{atomic\_radius\_calculated}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{15}
-\indexentry{atomic\_refelctivity (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{atomic\_refelctivity}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{15}
-\indexentry{atomic\_refractive\_index (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{atomic\_refractive\_index}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{15}
-\indexentry{boiling\_point (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{boiling\_point}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{16}
-\indexentry{brinell\_hardness (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{brinell\_hardness}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{16}
-\indexentry{bulk\_modulus (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{bulk\_modulus}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{16}
-\indexentry{coeff\_olte (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{coeff\_olte}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{16}
-\indexentry{common\_ox\_states (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{common\_ox\_states}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{16}
-\indexentry{critical\_temperature (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{critical\_temperature}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{16}
-\indexentry{density\_of\_solid (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{density\_of\_solid}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{16}
-\indexentry{electrical\_resistivity (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{electrical\_resistivity}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{16}
-\indexentry{electronic\_structure (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{electronic\_structure}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{16}
-\indexentry{icsd\_oxd\_states (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{icsd\_oxd\_states}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{16}
-\indexentry{ionic\_radii (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{ionic\_radii}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{16}
-\indexentry{ionic\_radii\_hs (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{ionic\_radii\_hs}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{16}
-\indexentry{ionic\_radii\_ls (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{ionic\_radii\_ls}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{16}
-\indexentry{iupac\_ordering (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{iupac\_ordering}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{16}
-\indexentry{liquid\_range (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{liquid\_range}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{16}
-\indexentry{max\_oxd\_state (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{max\_oxd\_state}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{16}
-\indexentry{melting\_point (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{melting\_point}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{16}
-\indexentry{mendeleev\_no (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{mendeleev\_no}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{16}
-\indexentry{metallic\_radius (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{metallic\_radius}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{16}
-\indexentry{min\_oxd\_state (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{min\_oxd\_state}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{16}
-\indexentry{mineral\_hardness (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{mineral\_hardness}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{17}
-\indexentry{molar\_volume (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{molar\_volume}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{17}
-\indexentry{nmr\_quadrapole\_mom (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{nmr\_quadrapole\_mom}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{17}
-\indexentry{oxidation\_states (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{oxidation\_states}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{17}
-\indexentry{poisson\_ratio (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{poisson\_ratio}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{17}
-\indexentry{rigidity\_modulus (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{rigidity\_modulus}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{17}
-\indexentry{section\_pymat\_metadata (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{section\_pymat\_metadata}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{17}
-\indexentry{shannon\_radii (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{shannon\_radii}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{17}
-\indexentry{supercond\_temp (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{supercond\_temp}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{17}
-\indexentry{thermal\_cond (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{thermal\_cond}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{17}
-\indexentry{van\_der\_waals\_rad (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{van\_der\_waals\_rad}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{17}
-\indexentry{velocity\_of\_sound (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{velocity\_of\_sound}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{17}
-\indexentry{vickers\_hardness (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{vickers\_hardness}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{17}
-\indexentry{x (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{x}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{17}
-\indexentry{youngs\_modulus (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{youngs\_modulus}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}|hyperpage}{17}
-\indexentry{atomic\_properties\_webele (class in atomicfeaturespackage.metainfo.metainfo)@\spxentry{atomic\_properties\_webele}\spxextra{class in atomicfeaturespackage.metainfo.metainfo}|hyperpage}{17}
-\indexentry{atomic\_cellparam (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_cellparam}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{18}
-\indexentry{atomic\_ea (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_ea}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{18}
-\indexentry{atomic\_ebe (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_ebe}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{18}
-\indexentry{atomic\_element\_symbol (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_element\_symbol}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{18}
-\indexentry{atomic\_en (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_en}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{18}
-\indexentry{atomic\_en\_allen (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_en\_allen}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{18}
-\indexentry{atomic\_en\_allredroch (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_en\_allredroch}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{18}
-\indexentry{atomic\_en\_paul (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_en\_paul}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{18}
-\indexentry{atomic\_en\_sanderson (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_en\_sanderson}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{18}
-\indexentry{atomic\_enc (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_enc}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{18}
-\indexentry{atomic\_hatm (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_hatm}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{18}
-\indexentry{atomic\_hfu (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_hfu}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{18}
-\indexentry{atomic\_hvap (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_hvap}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{18}
-\indexentry{atomic\_ie (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_ie}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{18}
-\indexentry{atomic\_ionic\_radii (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_ionic\_radii}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{18}
-\indexentry{atomic\_nat\_iso (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_nat\_iso}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{18}
-\indexentry{atomic\_nmr (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_nmr}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{18}
-\indexentry{atomic\_orbital\_radii (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_orbital\_radii}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{18}
-\indexentry{atomic\_rad\_iso (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_rad\_iso}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{19}
-\indexentry{atomic\_radius (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_radius}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{19}
-\indexentry{atomic\_radius\_calculated (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_radius\_calculated}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{19}
-\indexentry{atomic\_spacegroup (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_spacegroup}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{19}
-\indexentry{atomic\_spacegroupnum (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_spacegroupnum}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{19}
-\indexentry{atomic\_structure (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_structure}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{19}
-\indexentry{atomic\_thermdata (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_thermdata}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{19}
-\indexentry{boiling\_point (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{boiling\_point}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{19}
-\indexentry{brinell\_hardness (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{brinell\_hardness}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{19}
-\indexentry{bulk\_mod (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{bulk\_mod}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{19}
-\indexentry{coeff\_of\_lte (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{coeff\_of\_lte}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{19}
-\indexentry{covalent\_rad (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{covalent\_rad}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{19}
-\indexentry{covalent\_rad\_emp (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{covalent\_rad\_emp}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{19}
-\indexentry{covalent\_radius\_mol (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{covalent\_radius\_mol}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{19}
-\indexentry{critical\_temperature (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{critical\_temperature}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{19}
-\indexentry{density\_of\_solid (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{density\_of\_solid}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{19}
-\indexentry{electrical\_resist (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{electrical\_resist}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{19}
-\indexentry{liquid\_range (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{liquid\_range}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{20}
-\indexentry{melting\_point (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{melting\_point}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{20}
-\indexentry{mineral\_hardness (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{mineral\_hardness}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{20}
-\indexentry{molar\_vol (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{molar\_vol}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{20}
-\indexentry{paul\_ionic\_radii (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{paul\_ionic\_radii}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{20}
-\indexentry{poissons\_ratio (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{poissons\_ratio}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{20}
-\indexentry{reflectivity (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{reflectivity}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{20}
-\indexentry{refract\_index (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{refract\_index}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{20}
-\indexentry{rigidity\_mod (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{rigidity\_mod}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{20}
-\indexentry{section\_webele\_metadata (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{section\_webele\_metadata}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{20}
-\indexentry{supercond\_temp (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{supercond\_temp}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{20}
-\indexentry{thermal\_conduct (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{thermal\_conduct}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{20}
-\indexentry{van\_der\_waals\_rad (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{van\_der\_waals\_rad}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{20}
-\indexentry{vel\_of\_sound (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{vel\_of\_sound}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{20}
-\indexentry{vickers\_hardness (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{vickers\_hardness}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{20}
-\indexentry{youngs\_mod (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{youngs\_mod}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}|hyperpage}{20}
-\indexentry{metadata (class in atomicfeaturespackage.metainfo.metainfo)@\spxentry{metadata}\spxextra{class in atomicfeaturespackage.metainfo.metainfo}|hyperpage}{20}
-\indexentry{atomic\_basis\_set (atomicfeaturespackage.metainfo.metainfo.metadata attribute)@\spxentry{atomic\_basis\_set}\spxextra{atomicfeaturespackage.metainfo.metainfo.metadata attribute}|hyperpage}{21}
-\indexentry{atomic\_method (atomicfeaturespackage.metainfo.metainfo.metadata attribute)@\spxentry{atomic\_method}\spxextra{atomicfeaturespackage.metainfo.metainfo.metadata attribute}|hyperpage}{21}
-\indexentry{atomic\_spin\_setting (atomicfeaturespackage.metainfo.metainfo.metadata attribute)@\spxentry{atomic\_spin\_setting}\spxextra{atomicfeaturespackage.metainfo.metainfo.metadata attribute}|hyperpage}{21}
-\indexentry{source (atomicfeaturespackage.metainfo.metainfo.metadata attribute)@\spxentry{source}\spxextra{atomicfeaturespackage.metainfo.metainfo.metadata attribute}|hyperpage}{21}
diff --git a/atomicfeaturespackage/docs/_build/latex/atomic-features-package.log b/atomicfeaturespackage/docs/_build/latex/atomic-features-package.log
deleted file mode 100644
index eea01ef..0000000
--- a/atomicfeaturespackage/docs/_build/latex/atomic-features-package.log
+++ /dev/null
@@ -1,1891 +0,0 @@
-This is pdfTeX, Version 3.14159265-2.6-1.40.18 (TeX Live 2017/Debian) (preloaded format=pdflatex 2021.4.29)  28 SEP 2021 20:17
-entering extended mode
- restricted \write18 enabled.
- %&-line parsing enabled.
-**atomic-features-package.tex
-(./atomic-features-package.tex
-LaTeX2e <2017-04-15>
-Babel <3.18> and hyphenation patterns for 5 language(s) loaded.
-(./sphinxmanual.cls
-Document Class: sphinxmanual 2019/12/01 v2.3.0 Document class (Sphinx manual)
-(/usr/share/texlive/texmf-dist/tex/latex/base/report.cls
-Document Class: report 2014/09/29 v1.4h Standard LaTeX document class
-(/usr/share/texlive/texmf-dist/tex/latex/base/size10.clo
-File: size10.clo 2014/09/29 v1.4h Standard LaTeX file (size option)
-)
-\c@part=\count79
-\c@chapter=\count80
-\c@section=\count81
-\c@subsection=\count82
-\c@subsubsection=\count83
-\c@paragraph=\count84
-\c@subparagraph=\count85
-\c@figure=\count86
-\c@table=\count87
-\abovecaptionskip=\skip41
-\belowcaptionskip=\skip42
-\bibindent=\dimen102
-)
-LaTeX Info: Redefining \and on input line 35.
-)
-(/usr/share/texlive/texmf-dist/tex/latex/base/inputenc.sty
-Package: inputenc 2015/03/17 v1.2c Input encoding file
-\inpenc@prehook=\toks14
-\inpenc@posthook=\toks15
-
-(/usr/share/texlive/texmf-dist/tex/latex/base/utf8.def
-File: utf8.def 2017/01/28 v1.1t UTF-8 support for inputenc
-Now handling font encoding OML ...
-... no UTF-8 mapping file for font encoding OML
-Now handling font encoding T1 ...
-... processing UTF-8 mapping file for font encoding T1
-
-(/usr/share/texlive/texmf-dist/tex/latex/base/t1enc.dfu
-File: t1enc.dfu 2017/01/28 v1.1t UTF-8 support for inputenc
-   defining Unicode char U+00A0 (decimal 160)
-   defining Unicode char U+00A1 (decimal 161)
-   defining Unicode char U+00A3 (decimal 163)
-   defining Unicode char U+00AB (decimal 171)
-   defining Unicode char U+00AD (decimal 173)
-   defining Unicode char U+00BB (decimal 187)
-   defining Unicode char U+00BF (decimal 191)
-   defining Unicode char U+00C0 (decimal 192)
-   defining Unicode char U+00C1 (decimal 193)
-   defining Unicode char U+00C2 (decimal 194)
-   defining Unicode char U+00C3 (decimal 195)
-   defining Unicode char U+00C4 (decimal 196)
-   defining Unicode char U+00C5 (decimal 197)
-   defining Unicode char U+00C6 (decimal 198)
-   defining Unicode char U+00C7 (decimal 199)
-   defining Unicode char U+00C8 (decimal 200)
-   defining Unicode char U+00C9 (decimal 201)
-   defining Unicode char U+00CA (decimal 202)
-   defining Unicode char U+00CB (decimal 203)
-   defining Unicode char U+00CC (decimal 204)
-   defining Unicode char U+00CD (decimal 205)
-   defining Unicode char U+00CE (decimal 206)
-   defining Unicode char U+00CF (decimal 207)
-   defining Unicode char U+00D0 (decimal 208)
-   defining Unicode char U+00D1 (decimal 209)
-   defining Unicode char U+00D2 (decimal 210)
-   defining Unicode char U+00D3 (decimal 211)
-   defining Unicode char U+00D4 (decimal 212)
-   defining Unicode char U+00D5 (decimal 213)
-   defining Unicode char U+00D6 (decimal 214)
-   defining Unicode char U+00D8 (decimal 216)
-   defining Unicode char U+00D9 (decimal 217)
-   defining Unicode char U+00DA (decimal 218)
-   defining Unicode char U+00DB (decimal 219)
-   defining Unicode char U+00DC (decimal 220)
-   defining Unicode char U+00DD (decimal 221)
-   defining Unicode char U+00DE (decimal 222)
-   defining Unicode char U+00DF (decimal 223)
-   defining Unicode char U+00E0 (decimal 224)
-   defining Unicode char U+00E1 (decimal 225)
-   defining Unicode char U+00E2 (decimal 226)
-   defining Unicode char U+00E3 (decimal 227)
-   defining Unicode char U+00E4 (decimal 228)
-   defining Unicode char U+00E5 (decimal 229)
-   defining Unicode char U+00E6 (decimal 230)
-   defining Unicode char U+00E7 (decimal 231)
-   defining Unicode char U+00E8 (decimal 232)
-   defining Unicode char U+00E9 (decimal 233)
-   defining Unicode char U+00EA (decimal 234)
-   defining Unicode char U+00EB (decimal 235)
-   defining Unicode char U+00EC (decimal 236)
-   defining Unicode char U+00ED (decimal 237)
-   defining Unicode char U+00EE (decimal 238)
-   defining Unicode char U+00EF (decimal 239)
-   defining Unicode char U+00F0 (decimal 240)
-   defining Unicode char U+00F1 (decimal 241)
-   defining Unicode char U+00F2 (decimal 242)
-   defining Unicode char U+00F3 (decimal 243)
-   defining Unicode char U+00F4 (decimal 244)
-   defining Unicode char U+00F5 (decimal 245)
-   defining Unicode char U+00F6 (decimal 246)
-   defining Unicode char U+00F8 (decimal 248)
-   defining Unicode char U+00F9 (decimal 249)
-   defining Unicode char U+00FA (decimal 250)
-   defining Unicode char U+00FB (decimal 251)
-   defining Unicode char U+00FC (decimal 252)
-   defining Unicode char U+00FD (decimal 253)
-   defining Unicode char U+00FE (decimal 254)
-   defining Unicode char U+00FF (decimal 255)
-   defining Unicode char U+0100 (decimal 256)
-   defining Unicode char U+0101 (decimal 257)
-   defining Unicode char U+0102 (decimal 258)
-   defining Unicode char U+0103 (decimal 259)
-   defining Unicode char U+0104 (decimal 260)
-   defining Unicode char U+0105 (decimal 261)
-   defining Unicode char U+0106 (decimal 262)
-   defining Unicode char U+0107 (decimal 263)
-   defining Unicode char U+0108 (decimal 264)
-   defining Unicode char U+0109 (decimal 265)
-   defining Unicode char U+010A (decimal 266)
-   defining Unicode char U+010B (decimal 267)
-   defining Unicode char U+010C (decimal 268)
-   defining Unicode char U+010D (decimal 269)
-   defining Unicode char U+010E (decimal 270)
-   defining Unicode char U+010F (decimal 271)
-   defining Unicode char U+0110 (decimal 272)
-   defining Unicode char U+0111 (decimal 273)
-   defining Unicode char U+0112 (decimal 274)
-   defining Unicode char U+0113 (decimal 275)
-   defining Unicode char U+0114 (decimal 276)
-   defining Unicode char U+0115 (decimal 277)
-   defining Unicode char U+0116 (decimal 278)
-   defining Unicode char U+0117 (decimal 279)
-   defining Unicode char U+0118 (decimal 280)
-   defining Unicode char U+0119 (decimal 281)
-   defining Unicode char U+011A (decimal 282)
-   defining Unicode char U+011B (decimal 283)
-   defining Unicode char U+011C (decimal 284)
-   defining Unicode char U+011D (decimal 285)
-   defining Unicode char U+011E (decimal 286)
-   defining Unicode char U+011F (decimal 287)
-   defining Unicode char U+0120 (decimal 288)
-   defining Unicode char U+0121 (decimal 289)
-   defining Unicode char U+0122 (decimal 290)
-   defining Unicode char U+0123 (decimal 291)
-   defining Unicode char U+0124 (decimal 292)
-   defining Unicode char U+0125 (decimal 293)
-   defining Unicode char U+0128 (decimal 296)
-   defining Unicode char U+0129 (decimal 297)
-   defining Unicode char U+012A (decimal 298)
-   defining Unicode char U+012B (decimal 299)
-   defining Unicode char U+012C (decimal 300)
-   defining Unicode char U+012D (decimal 301)
-   defining Unicode char U+012E (decimal 302)
-   defining Unicode char U+012F (decimal 303)
-   defining Unicode char U+0130 (decimal 304)
-   defining Unicode char U+0131 (decimal 305)
-   defining Unicode char U+0132 (decimal 306)
-   defining Unicode char U+0133 (decimal 307)
-   defining Unicode char U+0134 (decimal 308)
-   defining Unicode char U+0135 (decimal 309)
-   defining Unicode char U+0136 (decimal 310)
-   defining Unicode char U+0137 (decimal 311)
-   defining Unicode char U+0139 (decimal 313)
-   defining Unicode char U+013A (decimal 314)
-   defining Unicode char U+013B (decimal 315)
-   defining Unicode char U+013C (decimal 316)
-   defining Unicode char U+013D (decimal 317)
-   defining Unicode char U+013E (decimal 318)
-   defining Unicode char U+0141 (decimal 321)
-   defining Unicode char U+0142 (decimal 322)
-   defining Unicode char U+0143 (decimal 323)
-   defining Unicode char U+0144 (decimal 324)
-   defining Unicode char U+0145 (decimal 325)
-   defining Unicode char U+0146 (decimal 326)
-   defining Unicode char U+0147 (decimal 327)
-   defining Unicode char U+0148 (decimal 328)
-   defining Unicode char U+014A (decimal 330)
-   defining Unicode char U+014B (decimal 331)
-   defining Unicode char U+014C (decimal 332)
-   defining Unicode char U+014D (decimal 333)
-   defining Unicode char U+014E (decimal 334)
-   defining Unicode char U+014F (decimal 335)
-   defining Unicode char U+0150 (decimal 336)
-   defining Unicode char U+0151 (decimal 337)
-   defining Unicode char U+0152 (decimal 338)
-   defining Unicode char U+0153 (decimal 339)
-   defining Unicode char U+0154 (decimal 340)
-   defining Unicode char U+0155 (decimal 341)
-   defining Unicode char U+0156 (decimal 342)
-   defining Unicode char U+0157 (decimal 343)
-   defining Unicode char U+0158 (decimal 344)
-   defining Unicode char U+0159 (decimal 345)
-   defining Unicode char U+015A (decimal 346)
-   defining Unicode char U+015B (decimal 347)
-   defining Unicode char U+015C (decimal 348)
-   defining Unicode char U+015D (decimal 349)
-   defining Unicode char U+015E (decimal 350)
-   defining Unicode char U+015F (decimal 351)
-   defining Unicode char U+0160 (decimal 352)
-   defining Unicode char U+0161 (decimal 353)
-   defining Unicode char U+0162 (decimal 354)
-   defining Unicode char U+0163 (decimal 355)
-   defining Unicode char U+0164 (decimal 356)
-   defining Unicode char U+0165 (decimal 357)
-   defining Unicode char U+0168 (decimal 360)
-   defining Unicode char U+0169 (decimal 361)
-   defining Unicode char U+016A (decimal 362)
-   defining Unicode char U+016B (decimal 363)
-   defining Unicode char U+016C (decimal 364)
-   defining Unicode char U+016D (decimal 365)
-   defining Unicode char U+016E (decimal 366)
-   defining Unicode char U+016F (decimal 367)
-   defining Unicode char U+0170 (decimal 368)
-   defining Unicode char U+0171 (decimal 369)
-   defining Unicode char U+0172 (decimal 370)
-   defining Unicode char U+0173 (decimal 371)
-   defining Unicode char U+0174 (decimal 372)
-   defining Unicode char U+0175 (decimal 373)
-   defining Unicode char U+0176 (decimal 374)
-   defining Unicode char U+0177 (decimal 375)
-   defining Unicode char U+0178 (decimal 376)
-   defining Unicode char U+0179 (decimal 377)
-   defining Unicode char U+017A (decimal 378)
-   defining Unicode char U+017B (decimal 379)
-   defining Unicode char U+017C (decimal 380)
-   defining Unicode char U+017D (decimal 381)
-   defining Unicode char U+017E (decimal 382)
-   defining Unicode char U+01CD (decimal 461)
-   defining Unicode char U+01CE (decimal 462)
-   defining Unicode char U+01CF (decimal 463)
-   defining Unicode char U+01D0 (decimal 464)
-   defining Unicode char U+01D1 (decimal 465)
-   defining Unicode char U+01D2 (decimal 466)
-   defining Unicode char U+01D3 (decimal 467)
-   defining Unicode char U+01D4 (decimal 468)
-   defining Unicode char U+01E2 (decimal 482)
-   defining Unicode char U+01E3 (decimal 483)
-   defining Unicode char U+01E6 (decimal 486)
-   defining Unicode char U+01E7 (decimal 487)
-   defining Unicode char U+01E8 (decimal 488)
-   defining Unicode char U+01E9 (decimal 489)
-   defining Unicode char U+01EA (decimal 490)
-   defining Unicode char U+01EB (decimal 491)
-   defining Unicode char U+01F0 (decimal 496)
-   defining Unicode char U+01F4 (decimal 500)
-   defining Unicode char U+01F5 (decimal 501)
-   defining Unicode char U+0218 (decimal 536)
-   defining Unicode char U+0219 (decimal 537)
-   defining Unicode char U+021A (decimal 538)
-   defining Unicode char U+021B (decimal 539)
-   defining Unicode char U+0232 (decimal 562)
-   defining Unicode char U+0233 (decimal 563)
-   defining Unicode char U+1E02 (decimal 7682)
-   defining Unicode char U+1E03 (decimal 7683)
-   defining Unicode char U+200C (decimal 8204)
-   defining Unicode char U+2010 (decimal 8208)
-   defining Unicode char U+2011 (decimal 8209)
-   defining Unicode char U+2012 (decimal 8210)
-   defining Unicode char U+2013 (decimal 8211)
-   defining Unicode char U+2014 (decimal 8212)
-   defining Unicode char U+2015 (decimal 8213)
-   defining Unicode char U+2018 (decimal 8216)
-   defining Unicode char U+2019 (decimal 8217)
-   defining Unicode char U+201A (decimal 8218)
-   defining Unicode char U+201C (decimal 8220)
-   defining Unicode char U+201D (decimal 8221)
-   defining Unicode char U+201E (decimal 8222)
-   defining Unicode char U+2030 (decimal 8240)
-   defining Unicode char U+2031 (decimal 8241)
-   defining Unicode char U+2039 (decimal 8249)
-   defining Unicode char U+203A (decimal 8250)
-   defining Unicode char U+2423 (decimal 9251)
-   defining Unicode char U+1E20 (decimal 7712)
-   defining Unicode char U+1E21 (decimal 7713)
-)
-Now handling font encoding OT1 ...
-... processing UTF-8 mapping file for font encoding OT1
-
-(/usr/share/texlive/texmf-dist/tex/latex/base/ot1enc.dfu
-File: ot1enc.dfu 2017/01/28 v1.1t UTF-8 support for inputenc
-   defining Unicode char U+00A0 (decimal 160)
-   defining Unicode char U+00A1 (decimal 161)
-   defining Unicode char U+00A3 (decimal 163)
-   defining Unicode char U+00AD (decimal 173)
-   defining Unicode char U+00B8 (decimal 184)
-   defining Unicode char U+00BF (decimal 191)
-   defining Unicode char U+00C5 (decimal 197)
-   defining Unicode char U+00C6 (decimal 198)
-   defining Unicode char U+00D8 (decimal 216)
-   defining Unicode char U+00DF (decimal 223)
-   defining Unicode char U+00E6 (decimal 230)
-   defining Unicode char U+00EC (decimal 236)
-   defining Unicode char U+00ED (decimal 237)
-   defining Unicode char U+00EE (decimal 238)
-   defining Unicode char U+00EF (decimal 239)
-   defining Unicode char U+00F8 (decimal 248)
-   defining Unicode char U+0131 (decimal 305)
-   defining Unicode char U+0141 (decimal 321)
-   defining Unicode char U+0142 (decimal 322)
-   defining Unicode char U+0152 (decimal 338)
-   defining Unicode char U+0153 (decimal 339)
-   defining Unicode char U+0174 (decimal 372)
-   defining Unicode char U+0175 (decimal 373)
-   defining Unicode char U+0176 (decimal 374)
-   defining Unicode char U+0177 (decimal 375)
-   defining Unicode char U+0218 (decimal 536)
-   defining Unicode char U+0219 (decimal 537)
-   defining Unicode char U+021A (decimal 538)
-   defining Unicode char U+021B (decimal 539)
-   defining Unicode char U+2013 (decimal 8211)
-   defining Unicode char U+2014 (decimal 8212)
-   defining Unicode char U+2018 (decimal 8216)
-   defining Unicode char U+2019 (decimal 8217)
-   defining Unicode char U+201C (decimal 8220)
-   defining Unicode char U+201D (decimal 8221)
-)
-Now handling font encoding OMS ...
-... processing UTF-8 mapping file for font encoding OMS
-
-(/usr/share/texlive/texmf-dist/tex/latex/base/omsenc.dfu
-File: omsenc.dfu 2017/01/28 v1.1t UTF-8 support for inputenc
-   defining Unicode char U+00A7 (decimal 167)
-   defining Unicode char U+00B6 (decimal 182)
-   defining Unicode char U+00B7 (decimal 183)
-   defining Unicode char U+2020 (decimal 8224)
-   defining Unicode char U+2021 (decimal 8225)
-   defining Unicode char U+2022 (decimal 8226)
-)
-Now handling font encoding OMX ...
-... no UTF-8 mapping file for font encoding OMX
-Now handling font encoding U ...
-... no UTF-8 mapping file for font encoding U
-   defining Unicode char U+00A9 (decimal 169)
-   defining Unicode char U+00AA (decimal 170)
-   defining Unicode char U+00AE (decimal 174)
-   defining Unicode char U+00BA (decimal 186)
-   defining Unicode char U+02C6 (decimal 710)
-   defining Unicode char U+02DC (decimal 732)
-   defining Unicode char U+200C (decimal 8204)
-   defining Unicode char U+2026 (decimal 8230)
-   defining Unicode char U+2122 (decimal 8482)
-   defining Unicode char U+2423 (decimal 9251)
-))
-   defining Unicode char U+00A0 (decimal 160)
-   defining Unicode char U+2500 (decimal 9472)
-   defining Unicode char U+2502 (decimal 9474)
-   defining Unicode char U+2514 (decimal 9492)
-   defining Unicode char U+251C (decimal 9500)
-   defining Unicode char U+2572 (decimal 9586)
-
-(/usr/share/texlive/texmf-dist/tex/latex/cmap/cmap.sty
-Package: cmap 2008/03/06 v1.0h CMap support: searchable PDF
-)
-(/usr/share/texlive/texmf-dist/tex/latex/base/fontenc.sty
-Package: fontenc 2017/04/05 v2.0i Standard LaTeX package
-
-(/usr/share/texlive/texmf-dist/tex/latex/base/t1enc.def
-File: t1enc.def 2017/04/05 v2.0i Standard LaTeX file
-LaTeX Font Info:    Redeclaring font encoding T1 on input line 48.
-)<<t1.cmap>>)
-(/usr/share/texlive/texmf-dist/tex/latex/amsmath/amsmath.sty
-Package: amsmath 2017/09/02 v2.17a AMS math features
-\@mathmargin=\skip43
-
-For additional information on amsmath, use the `?' option.
-(/usr/share/texlive/texmf-dist/tex/latex/amsmath/amstext.sty
-Package: amstext 2000/06/29 v2.01 AMS text
-
-(/usr/share/texlive/texmf-dist/tex/latex/amsmath/amsgen.sty
-File: amsgen.sty 1999/11/30 v2.0 generic functions
-\@emptytoks=\toks16
-\ex@=\dimen103
-))
-(/usr/share/texlive/texmf-dist/tex/latex/amsmath/amsbsy.sty
-Package: amsbsy 1999/11/29 v1.2d Bold Symbols
-\pmbraise@=\dimen104
-)
-(/usr/share/texlive/texmf-dist/tex/latex/amsmath/amsopn.sty
-Package: amsopn 2016/03/08 v2.02 operator names
-)
-\inf@bad=\count88
-LaTeX Info: Redefining \frac on input line 213.
-\uproot@=\count89
-\leftroot@=\count90
-LaTeX Info: Redefining \overline on input line 375.
-\classnum@=\count91
-\DOTSCASE@=\count92
-LaTeX Info: Redefining \ldots on input line 472.
-LaTeX Info: Redefining \dots on input line 475.
-LaTeX Info: Redefining \cdots on input line 596.
-\Mathstrutbox@=\box26
-\strutbox@=\box27
-\big@size=\dimen105
-LaTeX Font Info:    Redeclaring font encoding OML on input line 712.
-LaTeX Font Info:    Redeclaring font encoding OMS on input line 713.
-\macc@depth=\count93
-\c@MaxMatrixCols=\count94
-\dotsspace@=\muskip10
-\c@parentequation=\count95
-\dspbrk@lvl=\count96
-\tag@help=\toks17
-\row@=\count97
-\column@=\count98
-\maxfields@=\count99
-\andhelp@=\toks18
-\eqnshift@=\dimen106
-\alignsep@=\dimen107
-\tagshift@=\dimen108
-\tagwidth@=\dimen109
-\totwidth@=\dimen110
-\lineht@=\dimen111
-\@envbody=\toks19
-\multlinegap=\skip44
-\multlinetaggap=\skip45
-\mathdisplay@stack=\toks20
-LaTeX Info: Redefining \[ on input line 2817.
-LaTeX Info: Redefining \] on input line 2818.
-)
-(/usr/share/texlive/texmf-dist/tex/latex/amsfonts/amssymb.sty
-Package: amssymb 2013/01/14 v3.01 AMS font symbols
-
-(/usr/share/texlive/texmf-dist/tex/latex/amsfonts/amsfonts.sty
-Package: amsfonts 2013/01/14 v3.01 Basic AMSFonts support
-\symAMSa=\mathgroup4
-\symAMSb=\mathgroup5
-LaTeX Font Info:    Overwriting math alphabet `\mathfrak' in version `bold'
-(Font)                  U/euf/m/n --> U/euf/b/n on input line 106.
-))
-(/usr/share/texlive/texmf-dist/tex/generic/babel/babel.sty
-Package: babel 2018/02/14 3.18 The Babel package
-
-(/usr/share/texlive/texmf-dist/tex/generic/babel/switch.def
-File: switch.def 2018/02/14 3.18 Babel switching mechanism
-)
-(/usr/share/texlive/texmf-dist/tex/generic/babel-english/english.ldf
-Language: english 2017/06/06 v3.3r English support from the babel system
-
-(/usr/share/texlive/texmf-dist/tex/generic/babel/babel.def
-File: babel.def 2018/02/14 3.18 Babel common definitions
-\babel@savecnt=\count100
-\U@D=\dimen112
-
-(/usr/share/texlive/texmf-dist/tex/generic/babel/txtbabel.def)
-\bbl@dirlevel=\count101
-)
-\l@canadian = a dialect from \language\l@american 
-\l@australian = a dialect from \language\l@british 
-\l@newzealand = a dialect from \language\l@british 
-))
-(/usr/share/texlive/texmf-dist/tex/latex/psnfss/times.sty
-Package: times 2005/04/12 PSNFSS-v9.2a (SPQR) 
-)
-(/usr/share/texlive/texmf-dist/tex/latex/fncychap/fncychap.sty
-Package: fncychap 2007/07/30 v1.34 LaTeX package (Revised chapters)
-\RW=\skip46
-\mylen=\skip47
-\myhi=\skip48
-\px=\skip49
-\py=\skip50
-\pyy=\skip51
-\pxx=\skip52
-\c@AlphaCnt=\count102
-\c@AlphaDecCnt=\count103
-) (./sphinx.sty
-Package: sphinx 2019/09/02 v2.3.0 LaTeX package (Sphinx markup)
-
-(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ltxcmds.sty
-Package: ltxcmds 2016/05/16 v1.23 LaTeX kernel commands for general use (HO)
-)
-(/usr/share/texlive/texmf-dist/tex/latex/graphics/graphicx.sty
-Package: graphicx 2017/06/01 v1.1a Enhanced LaTeX Graphics (DPC,SPQR)
-
-(/usr/share/texlive/texmf-dist/tex/latex/graphics/keyval.sty
-Package: keyval 2014/10/28 v1.15 key=value parser (DPC)
-\KV@toks@=\toks21
-)
-(/usr/share/texlive/texmf-dist/tex/latex/graphics/graphics.sty
-Package: graphics 2017/06/25 v1.2c Standard LaTeX Graphics (DPC,SPQR)
-
-(/usr/share/texlive/texmf-dist/tex/latex/graphics/trig.sty
-Package: trig 2016/01/03 v1.10 sin cos tan (DPC)
-)
-(/usr/share/texlive/texmf-dist/tex/latex/graphics-cfg/graphics.cfg
-File: graphics.cfg 2016/06/04 v1.11 sample graphics configuration
-)
-Package graphics Info: Driver file: pdftex.def on input line 99.
-
-(/usr/share/texlive/texmf-dist/tex/latex/graphics-def/pdftex.def
-File: pdftex.def 2018/01/08 v1.0l Graphics/color driver for pdftex
-))
-\Gin@req@height=\dimen113
-\Gin@req@width=\dimen114
-)
-(/usr/share/texlive/texmf-dist/tex/latex/fancyhdr/fancyhdr.sty
-Package: fancyhdr 2017/06/30 v3.9a Extensive control of page headers and footer
-s
-\f@nch@headwidth=\skip53
-\f@nch@O@elh=\skip54
-\f@nch@O@erh=\skip55
-\f@nch@O@olh=\skip56
-\f@nch@O@orh=\skip57
-\f@nch@O@elf=\skip58
-\f@nch@O@erf=\skip59
-\f@nch@O@olf=\skip60
-\f@nch@O@orf=\skip61
-)
-(/usr/share/texlive/texmf-dist/tex/latex/base/textcomp.sty
-Package: textcomp 2017/04/05 v2.0i Standard LaTeX package
-Package textcomp Info: Sub-encoding information:
-(textcomp)               5 = only ISO-Adobe without \textcurrency
-(textcomp)               4 = 5 + \texteuro
-(textcomp)               3 = 4 + \textohm
-(textcomp)               2 = 3 + \textestimated + \textcurrency
-(textcomp)               1 = TS1 - \textcircled - \t
-(textcomp)               0 = TS1 (full)
-(textcomp)             Font families with sub-encoding setting implement
-(textcomp)             only a restricted character set as indicated.
-(textcomp)             Family '?' is the default used for unknown fonts.
-(textcomp)             See the documentation for details.
-Package textcomp Info: Setting ? sub-encoding to TS1/1 on input line 79.
-
-(/usr/share/texlive/texmf-dist/tex/latex/base/ts1enc.def
-File: ts1enc.def 2001/06/05 v3.0e (jk/car/fm) Standard LaTeX file
-Now handling font encoding TS1 ...
-... processing UTF-8 mapping file for font encoding TS1
-
-(/usr/share/texlive/texmf-dist/tex/latex/base/ts1enc.dfu
-File: ts1enc.dfu 2017/01/28 v1.1t UTF-8 support for inputenc
-   defining Unicode char U+00A2 (decimal 162)
-   defining Unicode char U+00A3 (decimal 163)
-   defining Unicode char U+00A4 (decimal 164)
-   defining Unicode char U+00A5 (decimal 165)
-   defining Unicode char U+00A6 (decimal 166)
-   defining Unicode char U+00A7 (decimal 167)
-   defining Unicode char U+00A8 (decimal 168)
-   defining Unicode char U+00A9 (decimal 169)
-   defining Unicode char U+00AA (decimal 170)
-   defining Unicode char U+00AC (decimal 172)
-   defining Unicode char U+00AE (decimal 174)
-   defining Unicode char U+00AF (decimal 175)
-   defining Unicode char U+00B0 (decimal 176)
-   defining Unicode char U+00B1 (decimal 177)
-   defining Unicode char U+00B2 (decimal 178)
-   defining Unicode char U+00B3 (decimal 179)
-   defining Unicode char U+00B4 (decimal 180)
-   defining Unicode char U+00B5 (decimal 181)
-   defining Unicode char U+00B6 (decimal 182)
-   defining Unicode char U+00B7 (decimal 183)
-   defining Unicode char U+00B9 (decimal 185)
-   defining Unicode char U+00BA (decimal 186)
-   defining Unicode char U+00BC (decimal 188)
-   defining Unicode char U+00BD (decimal 189)
-   defining Unicode char U+00BE (decimal 190)
-   defining Unicode char U+00D7 (decimal 215)
-   defining Unicode char U+00F7 (decimal 247)
-   defining Unicode char U+0192 (decimal 402)
-   defining Unicode char U+02C7 (decimal 711)
-   defining Unicode char U+02D8 (decimal 728)
-   defining Unicode char U+02DD (decimal 733)
-   defining Unicode char U+0E3F (decimal 3647)
-   defining Unicode char U+2016 (decimal 8214)
-   defining Unicode char U+2020 (decimal 8224)
-   defining Unicode char U+2021 (decimal 8225)
-   defining Unicode char U+2022 (decimal 8226)
-   defining Unicode char U+2030 (decimal 8240)
-   defining Unicode char U+2031 (decimal 8241)
-   defining Unicode char U+203B (decimal 8251)
-   defining Unicode char U+203D (decimal 8253)
-   defining Unicode char U+2044 (decimal 8260)
-   defining Unicode char U+204E (decimal 8270)
-   defining Unicode char U+2052 (decimal 8274)
-   defining Unicode char U+20A1 (decimal 8353)
-   defining Unicode char U+20A4 (decimal 8356)
-   defining Unicode char U+20A6 (decimal 8358)
-   defining Unicode char U+20A9 (decimal 8361)
-   defining Unicode char U+20AB (decimal 8363)
-   defining Unicode char U+20AC (decimal 8364)
-   defining Unicode char U+20B1 (decimal 8369)
-   defining Unicode char U+2103 (decimal 8451)
-   defining Unicode char U+2116 (decimal 8470)
-   defining Unicode char U+2117 (decimal 8471)
-   defining Unicode char U+211E (decimal 8478)
-   defining Unicode char U+2120 (decimal 8480)
-   defining Unicode char U+2122 (decimal 8482)
-   defining Unicode char U+2126 (decimal 8486)
-   defining Unicode char U+2127 (decimal 8487)
-   defining Unicode char U+212E (decimal 8494)
-   defining Unicode char U+2190 (decimal 8592)
-   defining Unicode char U+2191 (decimal 8593)
-   defining Unicode char U+2192 (decimal 8594)
-   defining Unicode char U+2193 (decimal 8595)
-   defining Unicode char U+2329 (decimal 9001)
-   defining Unicode char U+232A (decimal 9002)
-   defining Unicode char U+2422 (decimal 9250)
-   defining Unicode char U+25E6 (decimal 9702)
-   defining Unicode char U+25EF (decimal 9711)
-   defining Unicode char U+266A (decimal 9834)
-))
-LaTeX Info: Redefining \oldstylenums on input line 334.
-Package textcomp Info: Setting cmr sub-encoding to TS1/0 on input line 349.
-Package textcomp Info: Setting cmss sub-encoding to TS1/0 on input line 350.
-Package textcomp Info: Setting cmtt sub-encoding to TS1/0 on input line 351.
-Package textcomp Info: Setting cmvtt sub-encoding to TS1/0 on input line 352.
-Package textcomp Info: Setting cmbr sub-encoding to TS1/0 on input line 353.
-Package textcomp Info: Setting cmtl sub-encoding to TS1/0 on input line 354.
-Package textcomp Info: Setting ccr sub-encoding to TS1/0 on input line 355.
-Package textcomp Info: Setting ptm sub-encoding to TS1/4 on input line 356.
-Package textcomp Info: Setting pcr sub-encoding to TS1/4 on input line 357.
-Package textcomp Info: Setting phv sub-encoding to TS1/4 on input line 358.
-Package textcomp Info: Setting ppl sub-encoding to TS1/3 on input line 359.
-Package textcomp Info: Setting pag sub-encoding to TS1/4 on input line 360.
-Package textcomp Info: Setting pbk sub-encoding to TS1/4 on input line 361.
-Package textcomp Info: Setting pnc sub-encoding to TS1/4 on input line 362.
-Package textcomp Info: Setting pzc sub-encoding to TS1/4 on input line 363.
-Package textcomp Info: Setting bch sub-encoding to TS1/4 on input line 364.
-Package textcomp Info: Setting put sub-encoding to TS1/5 on input line 365.
-Package textcomp Info: Setting uag sub-encoding to TS1/5 on input line 366.
-Package textcomp Info: Setting ugq sub-encoding to TS1/5 on input line 367.
-Package textcomp Info: Setting ul8 sub-encoding to TS1/4 on input line 368.
-Package textcomp Info: Setting ul9 sub-encoding to TS1/4 on input line 369.
-Package textcomp Info: Setting augie sub-encoding to TS1/5 on input line 370.
-Package textcomp Info: Setting dayrom sub-encoding to TS1/3 on input line 371.
-Package textcomp Info: Setting dayroms sub-encoding to TS1/3 on input line 372.
-
-Package textcomp Info: Setting pxr sub-encoding to TS1/0 on input line 373.
-Package textcomp Info: Setting pxss sub-encoding to TS1/0 on input line 374.
-Package textcomp Info: Setting pxtt sub-encoding to TS1/0 on input line 375.
-Package textcomp Info: Setting txr sub-encoding to TS1/0 on input line 376.
-Package textcomp Info: Setting txss sub-encoding to TS1/0 on input line 377.
-Package textcomp Info: Setting txtt sub-encoding to TS1/0 on input line 378.
-Package textcomp Info: Setting lmr sub-encoding to TS1/0 on input line 379.
-Package textcomp Info: Setting lmdh sub-encoding to TS1/0 on input line 380.
-Package textcomp Info: Setting lmss sub-encoding to TS1/0 on input line 381.
-Package textcomp Info: Setting lmssq sub-encoding to TS1/0 on input line 382.
-Package textcomp Info: Setting lmvtt sub-encoding to TS1/0 on input line 383.
-Package textcomp Info: Setting lmtt sub-encoding to TS1/0 on input line 384.
-Package textcomp Info: Setting qhv sub-encoding to TS1/0 on input line 385.
-Package textcomp Info: Setting qag sub-encoding to TS1/0 on input line 386.
-Package textcomp Info: Setting qbk sub-encoding to TS1/0 on input line 387.
-Package textcomp Info: Setting qcr sub-encoding to TS1/0 on input line 388.
-Package textcomp Info: Setting qcs sub-encoding to TS1/0 on input line 389.
-Package textcomp Info: Setting qpl sub-encoding to TS1/0 on input line 390.
-Package textcomp Info: Setting qtm sub-encoding to TS1/0 on input line 391.
-Package textcomp Info: Setting qzc sub-encoding to TS1/0 on input line 392.
-Package textcomp Info: Setting qhvc sub-encoding to TS1/0 on input line 393.
-Package textcomp Info: Setting futs sub-encoding to TS1/4 on input line 394.
-Package textcomp Info: Setting futx sub-encoding to TS1/4 on input line 395.
-Package textcomp Info: Setting futj sub-encoding to TS1/4 on input line 396.
-Package textcomp Info: Setting hlh sub-encoding to TS1/3 on input line 397.
-Package textcomp Info: Setting hls sub-encoding to TS1/3 on input line 398.
-Package textcomp Info: Setting hlst sub-encoding to TS1/3 on input line 399.
-Package textcomp Info: Setting hlct sub-encoding to TS1/5 on input line 400.
-Package textcomp Info: Setting hlx sub-encoding to TS1/5 on input line 401.
-Package textcomp Info: Setting hlce sub-encoding to TS1/5 on input line 402.
-Package textcomp Info: Setting hlcn sub-encoding to TS1/5 on input line 403.
-Package textcomp Info: Setting hlcw sub-encoding to TS1/5 on input line 404.
-Package textcomp Info: Setting hlcf sub-encoding to TS1/5 on input line 405.
-Package textcomp Info: Setting pplx sub-encoding to TS1/3 on input line 406.
-Package textcomp Info: Setting pplj sub-encoding to TS1/3 on input line 407.
-Package textcomp Info: Setting ptmx sub-encoding to TS1/4 on input line 408.
-Package textcomp Info: Setting ptmj sub-encoding to TS1/4 on input line 409.
-)
-(/usr/share/texlive/texmf-dist/tex/latex/titlesec/titlesec.sty
-Package: titlesec 2016/03/21 v2.10.2 Sectioning titles
-\ttl@box=\box28
-\beforetitleunit=\skip62
-\aftertitleunit=\skip63
-\ttl@plus=\dimen115
-\ttl@minus=\dimen116
-\ttl@toksa=\toks22
-\titlewidth=\dimen117
-\titlewidthlast=\dimen118
-\titlewidthfirst=\dimen119
-)
-(/usr/share/texlive/texmf-dist/tex/latex/tabulary/tabulary.sty
-Package: tabulary 2014/06/11 v0.10 tabulary package (DPC)
-
-(/usr/share/texlive/texmf-dist/tex/latex/tools/array.sty
-Package: array 2016/10/06 v2.4d Tabular extension package (FMi)
-\col@sep=\dimen120
-\extrarowheight=\dimen121
-\NC@list=\toks23
-\extratabsurround=\skip64
-\backup@length=\skip65
-)
-\TY@count=\count104
-\TY@linewidth=\dimen122
-\tymin=\dimen123
-\tymax=\dimen124
-\TY@tablewidth=\dimen125
-)
-(/usr/share/texlive/texmf-dist/tex/latex/tools/longtable.sty
-Package: longtable 2014/10/28 v4.11 Multi-page Table package (DPC)
-\LTleft=\skip66
-\LTright=\skip67
-\LTpre=\skip68
-\LTpost=\skip69
-\LTchunksize=\count105
-\LTcapwidth=\dimen126
-\LT@head=\box29
-\LT@firsthead=\box30
-\LT@foot=\box31
-\LT@lastfoot=\box32
-\LT@cols=\count106
-\LT@rows=\count107
-\c@LT@tables=\count108
-\c@LT@chunks=\count109
-\LT@p@ftn=\toks24
-)
-(/usr/share/texlive/texmf-dist/tex/latex/varwidth/varwidth.sty
-Package: varwidth 2009/03/30 ver 0.92;  Variable-width minipages
-\@vwid@box=\box33
-\sift@deathcycles=\count110
-\@vwid@loff=\dimen127
-\@vwid@roff=\dimen128
-)
-(./sphinxmulticell.sty
-Package: sphinxmulticell 2017/02/23 v1.6 better span rows and columns of a tabl
-e (Sphinx team)
-\sphinx@TY@tablewidth=\dimen129
-)
-(/usr/share/texlive/texmf-dist/tex/latex/base/makeidx.sty
-Package: makeidx 2014/09/29 v1.0m Standard LaTeX package
-)
-(/usr/share/texlive/texmf-dist/tex/latex/framed/framed.sty
-Package: framed 2011/10/22 v 0.96: framed or shaded text with page breaks
-\OuterFrameSep=\skip70
-\fb@frw=\dimen130
-\fb@frh=\dimen131
-\FrameRule=\dimen132
-\FrameSep=\dimen133
-)
-(/usr/share/texlive/texmf-dist/tex/latex/xcolor/xcolor.sty
-Package: xcolor 2016/05/11 v2.12 LaTeX color extensions (UK)
-
-(/usr/share/texlive/texmf-dist/tex/latex/graphics-cfg/color.cfg
-File: color.cfg 2016/01/02 v1.6 sample color configuration
-)
-Package xcolor Info: Driver file: pdftex.def on input line 225.
-Package xcolor Info: Model `cmy' substituted by `cmy0' on input line 1348.
-Package xcolor Info: Model `hsb' substituted by `rgb' on input line 1352.
-Package xcolor Info: Model `RGB' extended on input line 1364.
-Package xcolor Info: Model `HTML' substituted by `rgb' on input line 1366.
-Package xcolor Info: Model `Hsb' substituted by `hsb' on input line 1367.
-Package xcolor Info: Model `tHsb' substituted by `hsb' on input line 1368.
-Package xcolor Info: Model `HSB' substituted by `hsb' on input line 1369.
-Package xcolor Info: Model `Gray' substituted by `gray' on input line 1370.
-Package xcolor Info: Model `wave' substituted by `hsb' on input line 1371.
-)
-(/usr/share/texlive/texmf-dist/tex/latex/fancyvrb/fancyvrb.sty
-Package: fancyvrb 2008/02/07
-
-Style option: `fancyvrb' v2.7a, with DG/SPQR fixes, and firstline=lastline fix 
-<2008/02/07> (tvz)
-\FV@CodeLineNo=\count111
-\FV@InFile=\read1
-\FV@TabBox=\box34
-\c@FancyVerbLine=\count112
-\FV@StepNumber=\count113
-\FV@OutFile=\write3
-) (./footnotehyper-sphinx.sty
-Package: footnotehyper-sphinx 2017/10/27 v1.7 hyperref aware footnote.sty for s
-phinx (JFB)
-\FNH@notes=\box35
-\FNH@width=\dimen134
-)
-(/usr/share/texlive/texmf-dist/tex/latex/float/float.sty
-Package: float 2001/11/08 v1.3d Float enhancements (AL)
-\c@float@type=\count114
-\float@exts=\toks25
-\float@box=\box36
-\@float@everytoks=\toks26
-\@floatcapt=\box37
-)
-(/usr/share/texlive/texmf-dist/tex/latex/wrapfig/wrapfig.sty
-\wrapoverhang=\dimen135
-\WF@size=\dimen136
-\c@WF@wrappedlines=\count115
-\WF@box=\box38
-\WF@everypar=\toks27
-Package: wrapfig 2003/01/31  v 3.6
-)
-(/usr/share/texlive/texmf-dist/tex/latex/parskip/parskip.sty
-Package: parskip 2001/04/09 non-zero parskip adjustments
-)
-(/usr/share/texlive/texmf-dist/tex/latex/base/alltt.sty
-Package: alltt 1997/06/16 v2.0g defines alltt environment
-)
-(/usr/share/texlive/texmf-dist/tex/latex/upquote/upquote.sty
-Package: upquote 2012/04/19 v1.3 upright-quote and grave-accent glyphs in verba
-tim
-)
-(/usr/share/texlive/texmf-dist/tex/latex/capt-of/capt-of.sty
-Package: capt-of 2009/12/29 v0.2 standard captions outside of floats
-)
-(/usr/share/texlive/texmf-dist/tex/latex/needspace/needspace.sty
-Package: needspace 2010/09/12 v1.3d reserve vertical space
-)
-(/usr/share/texlive/texmf-dist/tex/latex/carlisle/remreset.sty)
-(./sphinxhighlight.sty
-Package: sphinxhighlight 2016/05/29 stylesheet for highlighting with pygments
-)
-(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/kvoptions.sty
-Package: kvoptions 2016/05/16 v3.12 Key value format for package options (HO)
-
-(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/kvsetkeys.sty
-Package: kvsetkeys 2016/05/16 v1.17 Key value parser (HO)
-
-(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/infwarerr.sty
-Package: infwarerr 2016/05/16 v1.4 Providing info/warning/error messages (HO)
-)
-(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/etexcmds.sty
-Package: etexcmds 2016/05/16 v1.6 Avoid name clashes with e-TeX commands (HO)
-
-(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifluatex.sty
-Package: ifluatex 2016/05/16 v1.4 Provides the ifluatex switch (HO)
-Package ifluatex Info: LuaTeX not detected.
-)
-Package etexcmds Info: Could not find \expanded.
-(etexcmds)             That can mean that you are not using pdfTeX 1.50 or
-(etexcmds)             that some package has redefined \expanded.
-(etexcmds)             In the latter case, load this package earlier.
-)))
-\sphinxverbatimsep=\dimen137
-\sphinxverbatimborder=\dimen138
-\sphinxshadowsep=\dimen139
-\sphinxshadowsize=\dimen140
-\sphinxshadowrule=\dimen141
-\spx@notice@border=\dimen142
-\spx@image@maxheight=\dimen143
-\spx@image@box=\dimen144
-\c@literalblock=\count116
-\sphinxcontinuationbox=\box39
-\sphinxvisiblespacebox=\box40
-\sphinxVerbatim@TitleBox=\box41
-\sphinxVerbatim@ContentsBox=\box42
-\py@argswidth=\skip71
-\lineblockindentation=\skip72
-\DUlineblockindent=\skip73
-)
-(/usr/share/texlive/texmf-dist/tex/latex/geometry/geometry.sty
-Package: geometry 2010/09/12 v5.6 Page Geometry
-
-(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifpdf.sty
-Package: ifpdf 2017/03/15 v3.2 Provides the ifpdf switch
-)
-(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifvtex.sty
-Package: ifvtex 2016/05/16 v1.6 Detect VTeX and its facilities (HO)
-Package ifvtex Info: VTeX not detected.
-)
-(/usr/share/texlive/texmf-dist/tex/generic/ifxetex/ifxetex.sty
-Package: ifxetex 2010/09/12 v0.6 Provides ifxetex conditional
-)
-\Gm@cnth=\count117
-\Gm@cntv=\count118
-\c@Gm@tempcnt=\count119
-\Gm@bindingoffset=\dimen145
-\Gm@wd@mp=\dimen146
-\Gm@odd@mp=\dimen147
-\Gm@even@mp=\dimen148
-\Gm@layoutwidth=\dimen149
-\Gm@layoutheight=\dimen150
-\Gm@layouthoffset=\dimen151
-\Gm@layoutvoffset=\dimen152
-\Gm@dimlist=\toks28
-)
-(/usr/share/texlive/texmf-dist/tex/latex/hyperref/hyperref.sty
-Package: hyperref 2018/02/06 v6.86b Hypertext links for LaTeX
-
-(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/hobsub-hyperref.sty
-Package: hobsub-hyperref 2016/05/16 v1.14 Bundle oberdiek, subset hyperref (HO)
-
-
-(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/hobsub-generic.sty
-Package: hobsub-generic 2016/05/16 v1.14 Bundle oberdiek, subset generic (HO)
-Package: hobsub 2016/05/16 v1.14 Construct package bundles (HO)
-Package hobsub Info: Skipping package `infwarerr' (already loaded).
-Package hobsub Info: Skipping package `ltxcmds' (already loaded).
-Package hobsub Info: Skipping package `ifluatex' (already loaded).
-Package hobsub Info: Skipping package `ifvtex' (already loaded).
-Package: intcalc 2016/05/16 v1.2 Expandable calculations with integers (HO)
-Package hobsub Info: Skipping package `ifpdf' (already loaded).
-Package hobsub Info: Skipping package `etexcmds' (already loaded).
-Package hobsub Info: Skipping package `kvsetkeys' (already loaded).
-Package: kvdefinekeys 2016/05/16 v1.4 Define keys (HO)
-Package: pdftexcmds 2018/01/21 v0.26 Utility functions of pdfTeX for LuaTeX (HO
-)
-Package pdftexcmds Info: LuaTeX not detected.
-Package pdftexcmds Info: \pdf@primitive is available.
-Package pdftexcmds Info: \pdf@ifprimitive is available.
-Package pdftexcmds Info: \pdfdraftmode found.
-Package: pdfescape 2016/05/16 v1.14 Implements pdfTeX's escape features (HO)
-Package: bigintcalc 2016/05/16 v1.4 Expandable calculations on big integers (HO
-)
-Package: bitset 2016/05/16 v1.2 Handle bit-vector datatype (HO)
-Package: uniquecounter 2016/05/16 v1.3 Provide unlimited unique counter (HO)
-)
-Package hobsub Info: Skipping package `hobsub' (already loaded).
-Package: letltxmacro 2016/05/16 v1.5 Let assignment for LaTeX macros (HO)
-Package: hopatch 2016/05/16 v1.3 Wrapper for package hooks (HO)
-Package: xcolor-patch 2016/05/16 xcolor patch
-Package: atveryend 2016/05/16 v1.9 Hooks at the very end of document (HO)
-Package atveryend Info: \enddocument detected (standard20110627).
-Package: atbegshi 2016/06/09 v1.18 At begin shipout hook (HO)
-Package: refcount 2016/05/16 v3.5 Data extraction from label references (HO)
-Package: hycolor 2016/05/16 v1.8 Color options for hyperref/bookmark (HO)
-)
-(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/auxhook.sty
-Package: auxhook 2016/05/16 v1.4 Hooks for auxiliary files (HO)
-)
-\@linkdim=\dimen153
-\Hy@linkcounter=\count120
-\Hy@pagecounter=\count121
-
-(/usr/share/texlive/texmf-dist/tex/latex/hyperref/pd1enc.def
-File: pd1enc.def 2018/02/06 v6.86b Hyperref: PDFDocEncoding definition (HO)
-Now handling font encoding PD1 ...
-... no UTF-8 mapping file for font encoding PD1
-)
-\Hy@SavedSpaceFactor=\count122
-
-(/usr/share/texlive/texmf-dist/tex/latex/latexconfig/hyperref.cfg
-File: hyperref.cfg 2002/06/06 v1.2 hyperref configuration of TeXLive
-)
-Package hyperref Info: Option `unicode' set `true' on input line 4383.
-
-(/usr/share/texlive/texmf-dist/tex/latex/hyperref/puenc.def
-File: puenc.def 2018/02/06 v6.86b Hyperref: PDF Unicode definition (HO)
-Now handling font encoding PU ...
-... no UTF-8 mapping file for font encoding PU
-)
-Package hyperref Info: Option `colorlinks' set `true' on input line 4383.
-Package hyperref Info: Option `breaklinks' set `true' on input line 4383.
-Package hyperref Info: Hyper figures OFF on input line 4509.
-Package hyperref Info: Link nesting OFF on input line 4514.
-Package hyperref Info: Hyper index ON on input line 4517.
-Package hyperref Info: Plain pages OFF on input line 4524.
-Package hyperref Info: Backreferencing OFF on input line 4529.
-Package hyperref Info: Implicit mode ON; LaTeX internals redefined.
-Package hyperref Info: Bookmarks ON on input line 4762.
-\c@Hy@tempcnt=\count123
-
-(/usr/share/texlive/texmf-dist/tex/latex/url/url.sty
-\Urlmuskip=\muskip11
-Package: url 2013/09/16  ver 3.4  Verb mode for urls, etc.
-)
-LaTeX Info: Redefining \url on input line 5115.
-\XeTeXLinkMargin=\dimen154
-\Fld@menulength=\count124
-\Field@Width=\dimen155
-\Fld@charsize=\dimen156
-Package hyperref Info: Hyper figures OFF on input line 6369.
-Package hyperref Info: Link nesting OFF on input line 6374.
-Package hyperref Info: Hyper index ON on input line 6377.
-Package hyperref Info: backreferencing OFF on input line 6384.
-Package hyperref Info: Link coloring ON on input line 6387.
-Package hyperref Info: Link coloring with OCG OFF on input line 6394.
-Package hyperref Info: PDF/A mode OFF on input line 6399.
-LaTeX Info: Redefining \ref on input line 6439.
-LaTeX Info: Redefining \pageref on input line 6443.
-\Hy@abspage=\count125
-\c@Item=\count126
-\c@Hfootnote=\count127
-)
-Package hyperref Info: Driver (autodetected): hpdftex.
-
-(/usr/share/texlive/texmf-dist/tex/latex/hyperref/hpdftex.def
-File: hpdftex.def 2018/02/06 v6.86b Hyperref driver for pdfTeX
-\Fld@listcount=\count128
-\c@bookmark@seq@number=\count129
-
-(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/rerunfilecheck.sty
-Package: rerunfilecheck 2016/05/16 v1.8 Rerun checks for auxiliary files (HO)
-Package uniquecounter Info: New unique counter `rerunfilecheck' on input line 2
-82.
-)
-\Hy@SectionHShift=\skip74
-)
-(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/hypcap.sty
-Package: hypcap 2016/05/16 v1.12 Adjusting the anchors of captions (HO)
-)
-(./sphinxmessages.sty
-Package: sphinxmessages 2019/01/04 v2.0 Localized LaTeX macros (Sphinx team)
-)
-\@indexfile=\write4
-\openout4 = `atomic-features-package.idx'.
-
-
-Writing index file atomic-features-package.idx
-(./atomic-features-package.aux)
-\openout1 = `atomic-features-package.aux'.
-
-LaTeX Font Info:    Checking defaults for OML/cmm/m/it on input line 82.
-LaTeX Font Info:    ... okay on input line 82.
-LaTeX Font Info:    Checking defaults for T1/cmr/m/n on input line 82.
-LaTeX Font Info:    ... okay on input line 82.
-LaTeX Font Info:    Checking defaults for OT1/cmr/m/n on input line 82.
-LaTeX Font Info:    ... okay on input line 82.
-LaTeX Font Info:    Checking defaults for OMS/cmsy/m/n on input line 82.
-LaTeX Font Info:    ... okay on input line 82.
-LaTeX Font Info:    Checking defaults for OMX/cmex/m/n on input line 82.
-LaTeX Font Info:    ... okay on input line 82.
-LaTeX Font Info:    Checking defaults for U/cmr/m/n on input line 82.
-LaTeX Font Info:    ... okay on input line 82.
-LaTeX Font Info:    Checking defaults for TS1/cmr/m/n on input line 82.
-LaTeX Font Info:    Try loading font information for TS1+cmr on input line 82.
-
-(/usr/share/texlive/texmf-dist/tex/latex/base/ts1cmr.fd
-File: ts1cmr.fd 2014/09/29 v2.5h Standard LaTeX font definitions
-)
-LaTeX Font Info:    ... okay on input line 82.
-LaTeX Font Info:    Checking defaults for PD1/pdf/m/n on input line 82.
-LaTeX Font Info:    ... okay on input line 82.
-LaTeX Font Info:    Checking defaults for PU/pdf/m/n on input line 82.
-LaTeX Font Info:    ... okay on input line 82.
-LaTeX Font Info:    Try loading font information for T1+ptm on input line 82.
-
-(/usr/share/texlive/texmf-dist/tex/latex/psnfss/t1ptm.fd
-File: t1ptm.fd 2001/06/04 font definitions for T1/ptm.
-)
-(/usr/share/texlive/texmf-dist/tex/context/base/mkii/supp-pdf.mkii
-[Loading MPS to PDF converter (version 2006.09.02).]
-\scratchcounter=\count130
-\scratchdimen=\dimen157
-\scratchbox=\box43
-\nofMPsegments=\count131
-\nofMParguments=\count132
-\everyMPshowfont=\toks29
-\MPscratchCnt=\count133
-\MPscratchDim=\dimen158
-\MPnumerator=\count134
-\makeMPintoPDFobject=\count135
-\everyMPtoPDFconversion=\toks30
-) (/usr/share/texlive/texmf-dist/tex/latex/oberdiek/epstopdf-base.sty
-Package: epstopdf-base 2016/05/15 v2.6 Base part for package epstopdf
-
-(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/grfext.sty
-Package: grfext 2016/05/16 v1.2 Manage graphics extensions (HO)
-)
-Package epstopdf-base Info: Redefining graphics rule for `.eps' on input line 4
-38.
-Package grfext Info: Graphics extension search list:
-(grfext)             [.pdf,.png,.jpg,.mps,.jpeg,.jbig2,.jb2,.PDF,.PNG,.JPG,.JPE
-G,.JBIG2,.JB2,.eps]
-(grfext)             \AppendGraphicsExtensions on input line 456.
-
-(/usr/share/texlive/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg
-File: epstopdf-sys.cfg 2010/07/13 v1.3 Configuration of (r)epstopdf for TeX Liv
-e
-))
-*geometry* driver: auto-detecting
-*geometry* detected driver: pdftex
-*geometry* verbose mode - [ preamble ] result:
-* driver: pdftex
-* paper: letterpaper
-* layout: <same size as paper>
-* layoutoffset:(h,v)=(0.0pt,0.0pt)
-* modes: 
-* h-part:(L,W,R)=(72.26999pt, 469.75502pt, 72.26999pt)
-* v-part:(T,H,B)=(72.26999pt, 650.43001pt, 72.26999pt)
-* \paperwidth=614.295pt
-* \paperheight=794.96999pt
-* \textwidth=469.75502pt
-* \textheight=650.43001pt
-* \oddsidemargin=0.0pt
-* \evensidemargin=0.0pt
-* \topmargin=-37.0pt
-* \headheight=12.0pt
-* \headsep=25.0pt
-* \topskip=10.0pt
-* \footskip=30.0pt
-* \marginparwidth=36.135pt
-* \marginparsep=11.0pt
-* \columnsep=10.0pt
-* \skip\footins=9.0pt plus 4.0pt minus 2.0pt
-* \hoffset=0.0pt
-* \voffset=0.0pt
-* \mag=1000
-* \@twocolumnfalse
-* \@twosidefalse
-* \@mparswitchfalse
-* \@reversemarginfalse
-* (1in=72.27pt=25.4mm, 1cm=28.453pt)
-
-\AtBeginShipoutBox=\box44
-Package hyperref Info: Link coloring ON on input line 82.
-(/usr/share/texlive/texmf-dist/tex/latex/hyperref/nameref.sty
-Package: nameref 2016/05/21 v2.44 Cross-referencing by name of section
-
-(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/gettitlestring.sty
-Package: gettitlestring 2016/05/16 v1.5 Cleanup title references (HO)
-)
-\c@section@level=\count136
-)
-LaTeX Info: Redefining \ref on input line 82.
-LaTeX Info: Redefining \pageref on input line 82.
-LaTeX Info: Redefining \nameref on input line 82.
-\@outlinefile=\write5
-\openout5 = `atomic-features-package.out'.
-
-Package hyperref Info: Option `pageanchor' set `false' on input line 85.
-LaTeX Font Info:    Try loading font information for T1+phv on input line 85.
-
-(/usr/share/texlive/texmf-dist/tex/latex/psnfss/t1phv.fd
-File: t1phv.fd 2001/06/04 scalable font definitions for T1/phv.
-)
-LaTeX Font Info:    Font shape `T1/phv/bx/n' in size <10> not available
-(Font)              Font shape `T1/phv/b/n' tried instead on input line 85.
-LaTeX Font Info:    Font shape `T1/phv/bx/n' in size <24.88> not available
-(Font)              Font shape `T1/phv/b/n' tried instead on input line 85.
-LaTeX Font Info:    Font shape `T1/phv/bx/it' in size <10> not available
-(Font)              Font shape `T1/phv/b/it' tried instead on input line 85.
-LaTeX Font Info:    Font shape `T1/phv/b/it' in size <10> not available
-(Font)              Font shape `T1/phv/b/sl' tried instead on input line 85.
-LaTeX Font Info:    Font shape `T1/phv/bx/it' in size <17.28> not available
-(Font)              Font shape `T1/phv/b/it' tried instead on input line 85.
-LaTeX Font Info:    Font shape `T1/phv/b/it' in size <17.28> not available
-(Font)              Font shape `T1/phv/b/sl' tried instead on input line 85.
-LaTeX Font Info:    Font shape `T1/phv/bx/n' in size <17.28> not available
-(Font)              Font shape `T1/phv/b/n' tried instead on input line 85.
-<<ot1.cmap>><<oml.cmap>><<oms.cmap>><<omx.cmap>>
-LaTeX Font Info:    Try loading font information for U+msa on input line 85.
-
-(/usr/share/texlive/texmf-dist/tex/latex/amsfonts/umsa.fd
-File: umsa.fd 2013/01/14 v3.01 AMS symbols A
-)
-LaTeX Font Info:    Try loading font information for U+msb on input line 85.
-
-(/usr/share/texlive/texmf-dist/tex/latex/amsfonts/umsb.fd
-File: umsb.fd 2013/01/14 v3.01 AMS symbols B
-)
-LaTeX Font Info:    Font shape `T1/phv/bx/n' in size <12> not available
-(Font)              Font shape `T1/phv/b/n' tried instead on input line 85.
- [1
-
-{/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map}]
-
-Package Fancyhdr Warning: \fancyfoot's `E' option without twoside option is use
-less on input line 86.
-
-LaTeX Font Info:    Font shape `T1/phv/bx/n' in size <14.4> not available
-(Font)              Font shape `T1/phv/b/n' tried instead on input line 87.
-\tf@toc=\write6
-\openout6 = `atomic-features-package.toc'.
-
-
-Package Fancyhdr Warning: \fancyfoot's `E' option without twoside option is use
-less on input line 87.
-
-[1
-
-
-
-]
-
-Package Fancyhdr Warning: \fancyfoot's `E' option without twoside option is use
-less on input line 88.
-
-
-Package Fancyhdr Warning: \fancyfoot's `E' option without twoside option is use
-less on input line 88.
-
-
-Package Fancyhdr Warning: \fancyhead's `E' option without twoside option is use
-less on input line 88.
-
-Chapter 1.
-
-Underfull \hbox (badness 10000) in paragraph at lines 95--96
-\T1/ptm/m/n/10 Unified pack-age that con-tains atomic-features from var-i-ous s
-ources like PY-MAT-
- []
-
-LaTeX Font Info:    Font shape `T1/ptm/bx/n' in size <10> not available
-(Font)              Font shape `T1/ptm/b/n' tried instead on input line 97.
-
-Overfull \hbox (33.57494pt too wide) in paragraph at lines 97--98
-[]\T1/ptm/b/n/10 ^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^
-V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V
-^^V^^V^^V-
- []
-
-
-Underfull \hbox (badness 10000) in paragraph at lines 97--98
-
- []
-
-
-Package Fancyhdr Warning: \fancyfoot's `E' option without twoside option is use
-less on input line 100.
-
-[1
-
-
-]
-Chapter 2.
-LaTeX Font Info:    Try loading font information for T1+pcr on input line 104.
-(/usr/share/texlive/texmf-dist/tex/latex/psnfss/t1pcr.fd
-File: t1pcr.fd 2001/06/04 font definitions for T1/pcr.
-)
-Overfull \hbox (33.57494pt too wide) in paragraph at lines 106--107
-[]\T1/ptm/b/n/10 ^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^
-V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V
-^^V^^V^^V-
- []
-
-
-Underfull \hbox (badness 10000) in paragraph at lines 106--107
-
- []
-
-
-Package Fancyhdr Warning: \fancyfoot's `E' option without twoside option is use
-less on input line 109.
-
-[2
-
-]
-Chapter 3.
-LaTeX Font Info:    Try loading font information for TS1+pcr on input line 1.
-(/usr/share/texlive/texmf-dist/tex/latex/psnfss/ts1pcr.fd
-File: ts1pcr.fd 2001/06/04 font definitions for TS1/pcr.
-)
-Overfull \hbox (33.57494pt too wide) in paragraph at lines 125--126
-[]\T1/ptm/b/n/10 ^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^
-V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V
-^^V^^V^^V-
- []
-
-
-Underfull \hbox (badness 10000) in paragraph at lines 125--126
-
- []
-
-
-Underfull \hbox (badness 10000) in paragraph at lines 127--128
-[]\T1/pcr/m/n/10 from atomicfeaturespackage.atomicproperties import atomic_prop
-erties_dft as
- []
-
-
-Package Fancyhdr Warning: \fancyfoot's `E' option without twoside option is use
-less on input line 151.
-
-[3
-
-]
-LaTeX Font Info:    Font shape `T1/pcr/bx/n' in size <9> not available
-(Font)              Font shape `T1/pcr/b/n' tried instead on input line 153.
-
-Overfull \hbox (33.57494pt too wide) in paragraph at lines 157--158
-[]\T1/ptm/b/n/10 ^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^
-V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V
-^^V^^V^^V-
- []
-
-
-Underfull \hbox (badness 10000) in paragraph at lines 157--158
-
- []
-
-
-Underfull \hbox (badness 10000) in paragraph at lines 159--160
-[]\T1/pcr/m/n/10 from atomicfeaturespackage.atomicproperties import atomic_prop
-erties_pymat as
- []
-
-
-Overfull \hbox (33.57494pt too wide) in paragraph at lines 175--176
-[]\T1/ptm/b/n/10 ^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^
-V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V
-^^V^^V^^V-
- []
-
-
-Underfull \hbox (badness 10000) in paragraph at lines 175--176
-
- []
-
-
-Underfull \hbox (badness 10000) in paragraph at lines 177--178
-[]\T1/pcr/m/n/10 from atomicfeaturespackage.atomicproperties import atomic_prop
-erties_lda2015
- []
-
-
-Overfull \hbox (33.57494pt too wide) in paragraph at lines 192--193
-[]\T1/ptm/b/n/10 ^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^
-V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V^^V
-^^V^^V^^V-
- []
-
-
-Underfull \hbox (badness 10000) in paragraph at lines 192--193
-
- []
-
-
-Underfull \hbox (badness 10000) in paragraph at lines 194--195
-[]\T1/pcr/m/n/10 from atomicfeaturespackage.atomicproperties import atomic_prop
-erties_webele as
- []
-
-[4]
-Chapter 4.
-LaTeX Font Info:    Font shape `T1/pcr/bx/n' in size <10> not available
-(Font)              Font shape `T1/pcr/b/n' tried instead on input line 227.
-
-Overfull \hbox (7.68495pt too wide) in paragraph at lines 227--227
-[]\T1/ptm/m/it/10 abc\T1/pcr/m/n/10 ) 
- []
-
-LaTeX Font Info:    Try loading font information for TS1+ptm on input line 243.
-
-(/usr/share/texlive/texmf-dist/tex/latex/psnfss/ts1ptm.fd
-File: ts1ptm.fd 2001/06/04 font definitions for TS1/ptm.
-)
-Underfull \hbox (badness 10000) in paragraph at lines 243--243
-[]\T1/ptm/m/it/10 Spin=\TS1/ptm/m/it/10 ''\T1/ptm/m/n/10 ,
- []
-
-
-Overfull \hbox (9.9845pt too wide) in paragraph at lines 243--243
-\T1/ptm/m/it/10 method=\TS1/ptm/m/it/10 ''\T1/pcr/m/n/10 ) 
- []
-
-
-Package Fancyhdr Warning: \fancyfoot's `E' option without twoside option is use
-less on input line 295.
-
-[5
-
-]
-Overfull \hbox (31.68495pt too wide) in paragraph at lines 308--308
-[]\T1/ptm/m/it/10 abc\T1/pcr/m/n/10 ) 
- []
-
-
-Overfull \hbox (7.68495pt too wide) in paragraph at lines 316--316
-[]\T1/ptm/m/it/10 abc\T1/pcr/m/n/10 ) 
- []
-
-
-Overfull \hbox (35.24501pt too wide) in paragraph at lines 331--331
-[]\T1/pcr/m/n/10 ) 
- []
-
-
-Overfull \hbox (37.68495pt too wide) in paragraph at lines 337--337
-[]\T1/ptm/m/it/10 abc\T1/pcr/m/n/10 ) 
- []
-
-
-Overfull \hbox (35.24501pt too wide) in paragraph at lines 345--345
-[]\T1/pcr/m/n/10 ) 
- []
-
-
-Overfull \hbox (17.24501pt too wide) in paragraph at lines 351--351
-[]\T1/pcr/m/n/10 ) 
- []
-
-
-Overfull \hbox (13.68495pt too wide) in paragraph at lines 357--357
-[]\T1/ptm/m/it/10 abc\T1/pcr/m/n/10 ) 
- []
-
-
-Overfull \hbox (19.68495pt too wide) in paragraph at lines 372--372
-[]\T1/ptm/m/it/10 abc\T1/pcr/m/n/10 ) 
- []
-
-
-Overfull \hbox (12.74501pt too wide) in paragraph at lines 380--380
-[]\T1/ptm/m/it/10 d\T1/ptm/m/n/10 ,
- []
-
-
-Overfull \hbox (28.0548pt too wide) in paragraph at lines 380--380
-\T1/ptm/m/it/10 keys\T1/pcr/m/n/10 ) 
- []
-
-[6]
-Underfull \hbox (badness 10000) in paragraph at lines 465--465
-[]\T1/ptm/m/it/10 Spin=\TS1/ptm/m/it/10 ''\T1/ptm/m/n/10 ,
- []
-
-[7]
-Overfull \hbox (11.78465pt too wide) in paragraph at lines 547--547
-[]\T1/ptm/m/it/10 Feature\T1/pcr/m/n/10 ) 
- []
-
-
-Underfull \hbox (badness 10000) in paragraph at lines 548--549
-\T1/ptm/m/n/10 Sets all the heatmap plot prop-er-ties like text, colour map-per
-s ,tit-tle, axis, leg-end etc for
- []
-
-
-Overfull \hbox (29.78465pt too wide) in paragraph at lines 555--555
-[]\T1/ptm/m/it/10 Feature\T1/pcr/m/n/10 ) 
- []
-
-
-Underfull \hbox (badness 10000) in paragraph at lines 556--557
-\T1/ptm/m/n/10 Sets all the heatmap plot prop-er-ties like text, colour map-per
-s ,tit-tle, axis, leg-end etc for
- []
-
-
-Overfull \hbox (23.78465pt too wide) in paragraph at lines 563--563
-[]\T1/ptm/m/it/10 Feature\T1/pcr/m/n/10 ) 
- []
-
-
-Overfull \hbox (29.78465pt too wide) in paragraph at lines 579--579
-[]\T1/ptm/m/it/10 Feature\T1/pcr/m/n/10 ) 
- []
-
-
-Underfull \hbox (badness 10000) in paragraph at lines 580--581
-\T1/ptm/m/n/10 Sets all the heatmap plot prop-er-ties like text, colour map-per
-s ,tit-tle, axis, leg-end etc for
- []
-
-[8]
-Underfull \hbox (badness 10000) in paragraph at lines 665--665
-[]\T1/ptm/m/it/10 m_def:
- []
-
-
-Underfull \hbox (badness 10000) in paragraph at lines 665--665
-\T1/ptm/m/it/10 Op-
- []
-
-
-Overfull \hbox (128.52328pt too wide) in paragraph at lines 665--665
-\T1/ptm/m/it/10 tional[nomad.metainfo.metainfo.Section]
- []
-
-
-Overfull \hbox (13.04442pt too wide) in paragraph at lines 665--665
-\T1/ptm/m/it/10 m_resource:
- []
-
-
-Underfull \hbox (badness 10000) in paragraph at lines 665--665
-\T1/ptm/m/it/10 no-
- []
-
-
-Overfull \hbox (103.1337pt too wide) in paragraph at lines 665--665
-\T1/ptm/m/it/10 mad.metainfo.metainfo.MResource
- []
-
-
-Overfull \hbox (7.76465pt too wide) in paragraph at lines 665--665
-\T1/ptm/m/it/10 **kwargs\T1/pcr/m/n/10 ) 
- []
-
-[9] [10]
-Overfull \hbox (15.01477pt too wide) in paragraph at lines 925--925
-[]\T1/ptm/m/it/10 m_def:
- []
-
-
-Overfull \hbox (2.79494pt too wide) in paragraph at lines 925--925
-\T1/ptm/m/it/10 Op-
- []
-
-
-Overfull \hbox (152.52328pt too wide) in paragraph at lines 925--925
-\T1/ptm/m/it/10 tional[nomad.metainfo.metainfo.Section]
- []
-
-
-Underfull \hbox (badness 10000) in paragraph at lines 925--925
-\T1/ptm/m/it/10 =
- []
-
-
-Overfull \hbox (10.85487pt too wide) in paragraph at lines 925--925
-\T1/ptm/m/it/10 None\T1/ptm/m/n/10 ,
- []
-
-
-Overfull \hbox (37.04442pt too wide) in paragraph at lines 925--925
-\T1/ptm/m/it/10 m_resource:
- []
-
-
-Overfull \hbox (0.57497pt too wide) in paragraph at lines 925--925
-\T1/ptm/m/it/10 no-
- []
-
-
-Overfull \hbox (127.1337pt too wide) in paragraph at lines 925--925
-\T1/ptm/m/it/10 mad.metainfo.metainfo.MResource
- []
-
-
-Underfull \hbox (badness 10000) in paragraph at lines 925--925
-\T1/ptm/m/it/10 =
- []
-
-
-Overfull \hbox (10.85487pt too wide) in paragraph at lines 925--925
-\T1/ptm/m/it/10 None\T1/ptm/m/n/10 ,
- []
-
-
-Overfull \hbox (31.76465pt too wide) in paragraph at lines 925--925
-\T1/ptm/m/it/10 **kwargs\T1/pcr/m/n/10 ) 
- []
-
-
-Overfull \hbox (21.01477pt too wide) in paragraph at lines 1020--1020
-[]\T1/ptm/m/it/10 m_def:
- []
-
-
-Overfull \hbox (8.79494pt too wide) in paragraph at lines 1020--1020
-\T1/ptm/m/it/10 Op-
- []
-
-
-Overfull \hbox (158.52328pt too wide) in paragraph at lines 1020--1020
-\T1/ptm/m/it/10 tional[nomad.metainfo.metainfo.Section]
- []
-
-
-Underfull \hbox (badness 10000) in paragraph at lines 1020--1020
-\T1/ptm/m/it/10 =
- []
-
-
-Overfull \hbox (16.85487pt too wide) in paragraph at lines 1020--1020
-\T1/ptm/m/it/10 None\T1/ptm/m/n/10 ,
- []
-
-
-Overfull \hbox (43.04442pt too wide) in paragraph at lines 1020--1020
-\T1/ptm/m/it/10 m_resource:
- []
-
-
-Overfull \hbox (6.57497pt too wide) in paragraph at lines 1020--1020
-\T1/ptm/m/it/10 no-
- []
-
-
-Overfull \hbox (133.1337pt too wide) in paragraph at lines 1020--1020
-\T1/ptm/m/it/10 mad.metainfo.metainfo.MResource
- []
-
-
-Underfull \hbox (badness 10000) in paragraph at lines 1020--1020
-\T1/ptm/m/it/10 =
- []
-
-
-Overfull \hbox (16.85487pt too wide) in paragraph at lines 1020--1020
-\T1/ptm/m/it/10 None\T1/ptm/m/n/10 ,
- []
-
-
-Overfull \hbox (37.76465pt too wide) in paragraph at lines 1020--1020
-\T1/ptm/m/it/10 **kwargs\T1/pcr/m/n/10 ) 
- []
-
-[11] [12] [13] [14]
-Overfull \hbox (3.01477pt too wide) in paragraph at lines 1559--1559
-[]\T1/ptm/m/it/10 m_def:
- []
-
-
-Underfull \hbox (badness 10000) in paragraph at lines 1559--1559
-\T1/ptm/m/it/10 Op-
- []
-
-
-Overfull \hbox (140.52328pt too wide) in paragraph at lines 1559--1559
-\T1/ptm/m/it/10 tional[nomad.metainfo.metainfo.Section]
- []
-
-
-Underfull \hbox (badness 10000) in paragraph at lines 1559--1559
-\T1/ptm/m/it/10 =
- []
-
-
-Underfull \hbox (badness 10000) in paragraph at lines 1559--1559
-\T1/ptm/m/it/10 None\T1/ptm/m/n/10 ,
- []
-
-
-Overfull \hbox (25.04442pt too wide) in paragraph at lines 1559--1559
-\T1/ptm/m/it/10 m_resource:
- []
-
-
-Underfull \hbox (badness 10000) in paragraph at lines 1559--1559
-\T1/ptm/m/it/10 no-
- []
-
-
-Overfull \hbox (115.1337pt too wide) in paragraph at lines 1559--1559
-\T1/ptm/m/it/10 mad.metainfo.metainfo.MResource
- []
-
-
-Underfull \hbox (badness 10000) in paragraph at lines 1559--1559
-\T1/ptm/m/it/10 =
- []
-
-
-Underfull \hbox (badness 10000) in paragraph at lines 1559--1559
-\T1/ptm/m/it/10 None\T1/ptm/m/n/10 ,
- []
-
-
-Overfull \hbox (19.76465pt too wide) in paragraph at lines 1559--1559
-\T1/ptm/m/it/10 **kwargs\T1/pcr/m/n/10 ) 
- []
-
-[15] [16]
-Overfull \hbox (9.01477pt too wide) in paragraph at lines 1932--1932
-[]\T1/ptm/m/it/10 m_def:
- []
-
-
-Underfull \hbox (badness 10000) in paragraph at lines 1932--1932
-\T1/ptm/m/it/10 Op-
- []
-
-
-Overfull \hbox (146.52328pt too wide) in paragraph at lines 1932--1932
-\T1/ptm/m/it/10 tional[nomad.metainfo.metainfo.Section]
- []
-
-
-Underfull \hbox (badness 10000) in paragraph at lines 1932--1932
-\T1/ptm/m/it/10 =
- []
-
-
-Overfull \hbox (4.85487pt too wide) in paragraph at lines 1932--1932
-\T1/ptm/m/it/10 None\T1/ptm/m/n/10 ,
- []
-
-
-Overfull \hbox (31.04442pt too wide) in paragraph at lines 1932--1932
-\T1/ptm/m/it/10 m_resource:
- []
-
-
-Underfull \hbox (badness 10000) in paragraph at lines 1932--1932
-\T1/ptm/m/it/10 no-
- []
-
-
-Overfull \hbox (121.1337pt too wide) in paragraph at lines 1932--1932
-\T1/ptm/m/it/10 mad.metainfo.metainfo.MResource
- []
-
-
-Underfull \hbox (badness 10000) in paragraph at lines 1932--1932
-\T1/ptm/m/it/10 =
- []
-
-
-Overfull \hbox (4.85487pt too wide) in paragraph at lines 1932--1932
-\T1/ptm/m/it/10 None\T1/ptm/m/n/10 ,
- []
-
-
-Overfull \hbox (25.76465pt too wide) in paragraph at lines 1932--1932
-\T1/ptm/m/it/10 **kwargs\T1/pcr/m/n/10 ) 
- []
-
-[17] [18]
-
-! Package inputenc Error: Unicode char Δ (U+394)
-(inputenc)                not set up for use with LaTeX.
-
-See the inputenc package documentation for explanation.
-Type  H <return>  for immediate help.
- ...                                              
-                                                  
-l.2145 Δ
-         fH°: kJ mol‑1
-? 
-
-! Package inputenc Error: Unicode char Δ (U+394)
-(inputenc)                not set up for use with LaTeX.
-
-See the inputenc package documentation for explanation.
-Type  H <return>  for immediate help.
- ...                                              
-                                                  
-l.2147 Δ
-         fG°: kJ mol‑1
-? 
-
-! Package inputenc Error: Unicode char ρ (U+3C1)
-(inputenc)                not set up for use with LaTeX.
-
-See the inputenc package documentation for explanation.
-Type  H <return>  for immediate help.
- ...                                              
-                                                  
-l.2239 ... resistivity, or specific resistance, ρ
-                                                  ,
-? 
-[19]
-
-! Package inputenc Error: Unicode char λ (U+3BB)
-(inputenc)                not set up for use with LaTeX.
-
-See the inputenc package documentation for explanation.
-Type  H <return>  for immediate help.
- ...                                              
-                                                  
-l.2346 The thermal conductivity, λ
-                                   , is the quantity of heat
-? 
-
-Underfull \hbox (badness 10000) in paragraph at lines 2391--2391
-[]\T1/ptm/m/it/10 m_def: Op-
- []
-
-
-Overfull \hbox (50.52328pt too wide) in paragraph at lines 2391--2391
-\T1/ptm/m/it/10 tional[nomad.metainfo.metainfo.Section]
- []
-
-
-Overfull \hbox (25.1337pt too wide) in paragraph at lines 2391--2391
-\T1/ptm/m/it/10 mad.metainfo.metainfo.MResource
- []
-
-[20] [21]
-Chapter 5.
-
-Package Fancyhdr Warning: \fancyfoot's `E' option without twoside option is use
-less on input line 2457.
-
-[22
-
-]
-Chapter 6.
-
-Package Fancyhdr Warning: \fancyfoot's `E' option without twoside option is use
-less on input line 2466.
-
-[23
-
-]
-Chapter 7.
-
-Package Fancyhdr Warning: \fancyfoot's `E' option without twoside option is use
-less on input line 2481.
-
-[24
-
-]
-
-LaTeX Warning: Reference `atomicfeaturespackage.atomicproperties:module-atomicf
-eaturespackage.atomicproperties.atomic_properties_dft' on page 25 undefined on 
-input line 2484.
-
-
-Overfull \hbox (132.6225pt too wide) in paragraph at lines 2484--2485
-[]\T1/pcr/m/n/10 atomicfeaturespackage.atomicproperties.atomic_properties_dft\T
-1/ptm/m/n/10 ,
- []
-
-
-LaTeX Warning: Reference `atomicfeaturespackage.atomicproperties:module-atomicf
-eaturespackage.atomicproperties.atomic_properties_lda2015' on page 25 undefined
- on input line 2485.
-
-
-Overfull \hbox (156.6225pt too wide) in paragraph at lines 2485--2486
-[]\T1/pcr/m/n/10 atomicfeaturespackage.atomicproperties.atomic_properties_lda20
-15\T1/ptm/m/n/10 ,
- []
-
-
-LaTeX Warning: Reference `atomicfeaturespackage.atomicproperties:module-atomicf
-eaturespackage.atomicproperties.atomic_properties_matminer' on page 25 undefine
-d on input line 2486.
-
-
-Overfull \hbox (162.6225pt too wide) in paragraph at lines 2486--2487
-[]\T1/pcr/m/n/10 atomicfeaturespackage.atomicproperties.atomic_properties_matmi
-ner\T1/ptm/m/n/10 ,
- []
-
-
-LaTeX Warning: Reference `atomicfeaturespackage.atomicproperties:module-atomicf
-eaturespackage.atomicproperties.atomic_properties_pymat' on page 25 undefined o
-n input line 2487.
-
-
-Overfull \hbox (144.6225pt too wide) in paragraph at lines 2487--2488
-[]\T1/pcr/m/n/10 atomicfeaturespackage.atomicproperties.atomic_properties_pymat
-\T1/ptm/m/n/10 ,
- []
-
-
-LaTeX Warning: Reference `atomicfeaturespackage.atomicproperties:module-atomicf
-eaturespackage.atomicproperties.periodictable' on page 25 undefined on input li
-ne 2488.
-
-
-Overfull \hbox (84.6225pt too wide) in paragraph at lines 2488--2489
-[]\T1/pcr/m/n/10 atomicfeaturespackage.atomicproperties.periodictable\T1/ptm/m/
-n/10 ,
- []
-
-
-LaTeX Warning: Reference `atomicfeaturespackage.metainfo:module-atomicfeaturesp
-ackage.metainfo.metainfo' on page 25 undefined on input line 2489.
-
-
-Overfull \hbox (6.6225pt too wide) in paragraph at lines 2489--2490
-[]\T1/pcr/m/n/10 atomicfeaturespackage.metainfo.metainfo\T1/ptm/m/n/10 ,
- []
-
-
-Package Fancyhdr Warning: \fancyfoot's `E' option without twoside option is use
-less on input line 2490.
-
-[25
-
-
-
-]
-No file atomic-features-package.ind.
-Package atveryend Info: Empty hook `BeforeClearDocument' on input line 2494.
-Package atveryend Info: Empty hook `AfterLastShipout' on input line 2494.
-(./atomic-features-package.aux)
-Package atveryend Info: Executing hook `AtVeryEndDocument' on input line 2494.
-Package atveryend Info: Executing hook `AtEndAfterFileList' on input line 2494.
-
-
-
-Package rerunfilecheck Warning: File `atomic-features-package.out' has changed.
-
-(rerunfilecheck)                Rerun to get outlines right
-(rerunfilecheck)                or use package `bookmark'.
-
-Package rerunfilecheck Info: Checksums for `atomic-features-package.out':
-(rerunfilecheck)             Before: <no file>
-(rerunfilecheck)             After:  BFDB253A105438748C52C7EB65127658;1307.
-
-LaTeX Warning: There were undefined references.
-
-
-LaTeX Warning: Label(s) may have changed. Rerun to get cross-references right.
-
-Package atveryend Info: Empty hook `AtVeryVeryEnd' on input line 2494.
- ) 
-Here is how much of TeX's memory you used:
- 14222 strings out of 494880
- 222263 string characters out of 6179601
- 279131 words of memory out of 5000000
- 16936 multiletter control sequences out of 15000+600000
- 49648 words of font info for 72 fonts, out of 8000000 for 9000
- 37 hyphenation exceptions out of 8191
- 37i,11n,45p,774b,512s stack positions out of 5000i,500n,10000p,200000b,80000s
-{/usr/share/texlive/texmf-dist/fonts/enc/dvips/base/8r.enc}</usr/share/texliv
-e/texmf-dist/fonts/type1/urw/courier/ucrb8a.pfb></usr/share/texlive/texmf-dist/
-fonts/type1/urw/courier/ucrr8a.pfb></usr/share/texlive/texmf-dist/fonts/type1/u
-rw/helvetic/uhvb8a.pfb></usr/share/texlive/texmf-dist/fonts/type1/urw/helvetic/
-uhvr8a.pfb></usr/share/texlive/texmf-dist/fonts/type1/urw/times/utmb8a.pfb></us
-r/share/texlive/texmf-dist/fonts/type1/urw/times/utmr8a.pfb></usr/share/texlive
-/texmf-dist/fonts/type1/urw/times/utmri8a.pfb>
-Output written on atomic-features-package.pdf (27 pages, 125233 bytes).
-PDF statistics:
- 500 PDF objects out of 1000 (max. 8388607)
- 454 compressed objects within 5 object streams
- 300 named destinations out of 1000 (max. 500000)
- 21 words of extra memory for PDF output out of 10000 (max. 10000000)
-
diff --git a/atomicfeaturespackage/docs/_build/latex/atomic-features-package.out b/atomicfeaturespackage/docs/_build/latex/atomic-features-package.out
deleted file mode 100644
index 6e6472e..0000000
--- a/atomicfeaturespackage/docs/_build/latex/atomic-features-package.out
+++ /dev/null
@@ -1,9 +0,0 @@
-\BOOKMARK [0][-]{chapter.1}{\376\377\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n}{}% 1
-\BOOKMARK [0][-]{chapter.2}{\376\377\000G\000e\000t\000t\000i\000n\000g\000\040\000S\000t\000a\000r\000t\000e\000d}{}% 2
-\BOOKMARK [0][-]{chapter.3}{\376\377\000I\000m\000p\000o\000r\000t\000i\000n\000g\000\040\000t\000h\000i\000s\000\040\000p\000a\000c\000k\000a\000g\000e\000\040\000m\000o\000d\000u\000l\000e\000s\000\040\000i\000n\000\040\000J\000u\000p\000y\000t\000e\000r\000\040\000n\000o\000t\000e\000b\000o\000o\000k}{}% 3
-\BOOKMARK [0][-]{chapter.4}{\376\377\000a\000t\000o\000m\000i\000c\000-\000f\000e\000a\000t\000u\000r\000e\000s\000-\000p\000a\000c\000k\000a\000g\000e\000\040\000p\000a\000c\000k\000a\000g\000e}{}% 4
-\BOOKMARK [1][-]{section.4.1}{\376\377\000S\000u\000b\000p\000a\000c\000k\000a\000g\000e\000s}{chapter.4}% 5
-\BOOKMARK [0][-]{chapter.5}{\376\377\000L\000I\000C\000E\000N\000S\000E}{}% 6
-\BOOKMARK [0][-]{chapter.6}{\376\377\000C\000O\000N\000T\000R\000I\000B\000U\000T\000I\000N\000G}{}% 7
-\BOOKMARK [0][-]{chapter.7}{\376\377\000I\000n\000d\000i\000c\000e\000s\000\040\000a\000n\000d\000\040\000t\000a\000b\000l\000e\000s}{}% 8
-\BOOKMARK [0][-]{section*.263}{\376\377\000P\000y\000t\000h\000o\000n\000\040\000M\000o\000d\000u\000l\000e\000\040\000I\000n\000d\000e\000x}{}% 9
diff --git a/atomicfeaturespackage/docs/_build/latex/atomic-features-package.pdf b/atomicfeaturespackage/docs/_build/latex/atomic-features-package.pdf
deleted file mode 100644
index 5818396a85498123f8c3b3adcb1747848144bbf9..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 195343
zcmY!laB<T$)HCH$-T!^jKQ2>q0|f(x{G=={8yf|EpUk|}#G=fq)D#6n1$`d{LrYU*
z6JrH^4~1w2BMT!l1!GHNg;)iBe+5%>69s)&1tU`fOEU$1KLulB1^o~OLrX(5QzHdC
zJFe8c6p*0`^a5O_=7vZf38^edRnU(JN=;MH_esr5FUe2<IoK^TrzEvVLEkMWu_V<c
zH90>eRY4y@2P78d7At@P!8t#tG&iqU!9+nnpeQvZGr1(cNWl=~D+T><g=hss1tSGR
zP$+ojrKDCUL@R*8(8$sPB9xY|U}36Ypb(^>AC#Y8qF`!n1mOi|R;4Ofm|1{LErSG=
zF?#Umd%7q@+ZbD#q$Q?Wq@);_7^az}8knb=CmI>0SQr?YTACXtncLZzCK_6#7@8-U
z7@DV;7$zE<8JSp^nwcb<8k<|DC7YSq#eyQCxTGjGF_)`iPI6MpgY<-?1Pe};9h(|i
z9v2E+<W%Z%Xpx%mK$k`6*I5TAj|q*Pg)<pE*qI+|7#eXbt7LxL6xei+<?)@yvV$6q
za*Pb|&75CA(F!$`-Vux*QltFQ5Eu=C(GVC7fzc2c4FP(F02ic518UxZnoE9(xv9kp
zre>CqW{!VBYMx_qNoIbYf`x$zRIIclCo?a#Si#)T93m2sn4apBn3S3WX>$3M<`yeN
zD;R*=U%?9cE(&&b3WhLV5r}65<ALQs%^L-MkSV_4He6_Nsz1yUurSCjGl*S~wxDxj
zNn%cZI;dF$ZMvA68zZ$Cu{I5Z6^xC{LCsxbO9OaA(%8ThWD2w$R52$xAt50t;lZ<{
zgtUZ&J*N(wXJAb*<7U>LaPks^s4;`!Y1xQ>1^y3a2F$u~L*+=!xp``9lvNWK1{66w
zevp3buulFCbq^bZ&>8<8T;6Z0+kNxg$4CP;1A`N0MRHX~f3@XGMMqS+9`D(<Y0IWh
zeJdB{rm{-Ois^NW$gy(Cy(=la9k}9R;avaFfL9MEx}Gu=Qx`a*tnly|-xLcrWu0d`
zQnq&&d^yFUF;m2<B*x|xOUR}Js*eM`-Pij}nDp}DInS)7?uSRL7D&urrm)+?y*RvM
zl51Uf_hY-Y9eke`dvbkeW#zxVB;c8T!hs#e24TAFmvS6*c=*;U1r!*?di?(yaN<W|
zO0wT-h46VDt@Vc|o#nr_;;e;vr)BVU&1=exYo?v-Y&^)E!ed}|B%X<3s#U`j%r+#b
zFM;TTIOpe;q~?_rE0~%?+tI$MDVd2*`JkpYsIy{bXry3nX#{F+2P77y=9MUzS%Snt
zE$-Cf{L-T2)M5n-1E^+5?1NGYDAM3j50ZtYV60IO?KKz~8G!V`BKy|XetUmrL!P7G
zYq<KwJ0)&UkD0X5qv6UzA*JZ6io5<T+%=DD%Yp0aJEbM8jQ6VFexE-30RzkVu78pC
zBI2qEADHGT?J{$+U-h*uA^MfKLeIwL`I%WPw_6vfSA^=DuW4WMZvGtBjW3$hJ$@%K
z{}QtjH}GiL(poxs{qv7EX75eQD*O5C>(1RXzTe4Sn08`o#f4?tzNqP{%T<f$MODaf
zX&6boW0`wn=8hB2`}Sli+nKDck@+{N=c47xlhY<RbGs=m)K&LAcy(vq-+7aD@1Aw@
z*rAjsSL5?a++t$*3~ccN%0aMDf&`?0QdV$DE+Q`&8=ETVV+}w*1xrhiR8et>f~6r!
zD9(91JGx)ysASvw&)TmhX%zX+<ri`~WY#^=iA9G~@q~D{?TpYjvDuMAlj7$;U;A>N
zthDu--D_`3=X@>mEe*d~ZWmgbcg|w+Y;!x;cL!U-cDPSo^lS3T(7!iB;&+N)E_xo<
zTkgj{>!aOEPjkDHwgN-Z$5zG9Ze_4M&i-Js=;K<0RqDcXE?eJhG2A0A%vAg&&etRG
zy@_zq)x~*DZQ{>aVwOGhEm?PwL+zJLhKn$Bv4~o)W|`DYmxX~bh8x?w7SFn|YVk#%
zqPWGoJnf86SuZ@T{NDGGd~d>}3EFaAS5BO^n|Wnb+&MMt^Fne?l@~M@`IJ<#Y}3q^
zGZ37nY9Tn`YHNM-8P$x32Q*^$y%2ownxM&e=h%k>F-p;bcT6wIGAs?<d!|}e%-~Rn
z`i#Zx=1r0s*#c)KtXJE`owH)6(HzYz(K8!oXo-m=Wce8!Pn&gpQNUW(8DW!*eRVWW
z9?o4jrztbp!st>IqrtV;=Xfi8zjwL@8`^TD-MFdB(0WggQDf!oxK{JiU&31EO#jo-
zT5x{%#yU5vJ2Mp3qcmUb_0cxB)!nknW2$QP+Ke?V`2|8v74{L40`@Eumml>uaa_h=
zz~8v2!E)_7yK5g@b(|LMS>F-FXcX1NzwLt1t2K|C#h17W&0}G7dg3g)WU8sshD%Ak
zGhAxF993UlnmtLY<M)RH>WL9Ego`@03WWC@*I6?$`9uAW56+u^-gxoe`SZcko71Cj
z|IaX6p7#0W)9cfpE$%<_?BCO?m)}nPd2YwY{~K@GJZPU^Z(}t3{F!H~-%if1az16o
zz<mAPyymG&3tg@$X78#0_4)ht|CKvUXWP$@|8qHKpWNGieLcPPk#Bh){Mg1M*K)T^
zL$ZsRPvg=YSLJ}b*$Stb3Y;RC{l11d$p>wX%gH>M=3@6G&AMxQi%lNyZmu^%wlPon
zBBh@6-8h~nd#a`+Z)4rzO+V#wQ)}<<oyyChce`bN1e1RxvwySP4<^sv>GO;3y<70A
zP}1b}3gO)2*1v+*ywR;Yn<UA8RVl`LpF#MJ$*JyZgk$bT{#1>hlq>OA^~=ia2Z?_r
zQeKy|M+*K)d1kX|@0l-a3|n7pKdPIs%{XWBOUIQ3Z|$76?Kt!8Na&%M+?Pe>i@Hnh
zMY`HpNIWT;`SxS>gOeTH=QfmE+eCJTZIrxsRV&ECYWIc0_8nVtls|U9XY5|1z;rXu
zdqHG!MM}eLrWFi9F3TOC&1~QhdT86XHbOJa`jJ(8l5p6PD-F#n&ZXa;_VTBcpP>EX
z02hlF)``(v7QBZl4rxkH6HFI1(b3<kbZXOH?P=eg*K+M!yv)_EWNN72#0zeQHenJw
z8Rb}_1Z&PJ>^hOXwwc}7cv0v|>%jCwe|l6F2yiWRjmw^E(4Lnpd$U6|qunmiWz`bC
zYhQOyO!E(OoRpS*zw`5ni6WBs7%eKi<)`$q-xhe>BC&J96pKjJ(Bt9j6Q&+{qO!5`
zuvqGrd8e=K@u&&&<e!+S-hbL-;-sKWMYB&l;Cz%@(0ya8-)<*K!$hSWCp-eX4qSEH
zdcbY_iTt&f*Qsom<T)w&#%Z^ao|4N{!-VUyJJtoT*#;fd+O+RQ@JCtCpD&dj?@?>=
zUlOVN^`XO4t$^Cl2|_1Vda)ljx3##i<MPTAzcgLEr9T+-{^N_8uD-6oK)vFULyN|u
z7@<WTcY>#>#$<1LJVT^aRM^@pY=^Ro)*97towASb9%vfb<?{Ql*|BAl&f!Q_e#JiJ
zhuxmX)Of=0dtOgIwshL#aN}<uewg%pl#??uh@U1o|NFu93^7`n=l^iYTD<SGS=DN}
z@}|qYfSuPLuMQWIJh3*!ID~D6p}W?e=Uxoee~R3SR&o9c%vrUS@AVo7!yj3nH{H79
zmEB<)ra5DRb1CyqBa`|ord6>|ZiWBU+cEXex?4*u?3~p?zlN52p8m9M>XV7?>3=7c
z7utBqh3;1Wl<`%MDRfTD>cw|V*pq(fO*MVANhdv4tfQ|xdQs5LRLi@oZ)`69==~rv
zxJK%uLS$I@+}RluW}mvBC%#tBR_n^I)bQ7ik41Hag&#eAylK}RtAm<e6Be($XEn_~
zwA0V*NqlK!XkO@4g9&w6{Kf0OveZ;dMQ<z*dj0Xp%gCEQ*IipImBzHHeC5|UF>x{c
z4SsA>71tWaf9!tg_4+b@?svr*zZ3=b@7PsSv`ds>w!YjvgSX$NXNS#BtMRaZcvj-)
z_x%5ixm%uEemdAaf4=?x%8#{T+ZA2BwTvfv^v+d&ml--U^XWOkRjYFg-bf#7m0+(F
z^_)I^=Cy;tQyH@FUpJe^AA3)6%_^g{jP9Xt)QTQVjaha0-L*aI)_k^maB}ahdAE3N
zQkH1y8dqf>RX-p<b!Ls0bIqRy{X_e$Z}iM~x%k25_a`TNZ``Wiwe{NDs|mH$A(5Qc
z%h#GFT@X_Y?=!pODC+n7imzgoLrurVT|EINkyocY7G|HkJlSHViGHu`%{9fgN8*pf
z9oOT?TCV0IdPl_}g})(iRs%QliR5PGM$N}JE_j?26pJoBw4(g=C)tL}$Mj}3Nrh%R
zs~tO3Ef{!Ui)&h?FQ4!tzolCQi&i=;c;L3&$>X=cYuB(!S&Q6o72gv+e#(M=5p$<_
zZoRW<!;e~tgB^xtif`5?yxFbvePXNo%%#UA+<P|k<s_Dr*yvr0T~YdGiQ{oyH&Fp;
znWvY2$FzEz{YsV2UL8{vdPLNx=kiXb5-)32L+j|%AI+~d1=lL|WX)c+_^?q?|HfMn
zrswvqDHi^~zUzSWoDhZN3yD)Ze5R*vy;OR~sp{{$h?Q48&o!)j86hLJZH>`Rz0<)j
z{hvhy&Nz2isMOV7t1)q=%KAqlmWM5#wf<eb?v2bIzZDO3OYVI9v8PGqfZ!teuZ*5$
zR}~M5tc~}WANoP#dUj@rQZz?%_0pGLj4aP@I`r16?jgU?t|eY8PhV)wFkQLfP3ei^
znNK4hZ+GJC$d_h6|ADW=ut?<hJC?8rvAyfPw@HcRmv7SAS{NhF(x@)RQ7`_BwYJOL
zDreQ_CJQdhj;CMOUA-hzJMVR@P#Vkcxvyf|Rb`9*#GP5!RlJ*t-##Ru>zV8-+sh{T
zYroZ)pUZ!JY2oL>4>9{WXK8(0R@WYAT)x;|IK*`BjO)9trmro$T>ZN+c=ziWe@(t8
zUwc{f_Ri*>%ZK)xKfcOkds?)2fA1Gn-}8L8EwwMN-gDXK^2~O}<`v4n$`0g}KC-!R
ze~Qwj{u8|x(f2bgz8+q>>adJep}p0HWj+nLR|`w_7^yfKeC=$gy7a<*a>=<hH_dMO
zy8k$?WyQVvz0#T$&yJ;eRy<u_9?@!Z|JZd!*PltJJois!oDi3M<76*Waprf;-dNt+
z5WzLuUboCX$9*;Sk*`LhuzBp#+S<Mab=Q=BDzDFIo~GGrI>Yt$wNUMaX;JGhufH&H
z>Z*X#zAq*#^_5@xQns$oa_07~W3Pm#_{m6Y3AbJODw=Kfu};OaF~@@KGwwI|Ki+zE
z#d^_83s{oA-<rQbq3W0R%9`n~3v%wBFSvYa;sd6i3;JE$y7au>K3O#BQ^!t=pjwfn
z(q)DE?Q!?HEtuSL%kHi*H(`An@V|!FH>k3zD*k)q;k@FrpELS?2G#TL)-O6{n)&%p
z^|d#Q_m@oFtR}zD`u_2#op0*<zh7B@Xws!s*VxbOS}yRd;H*Jb@6Wo9*|(It=l*(a
z@=f&5jN*Cq^PCM{t@HkJ?YQs$`1fUh{kHF3{(p`AuL-(-R-$}w4li+CGB5AnuDo>R
zisO5q*2~-v-XZ<_@vZz@@@qF-`FF-@jpZ}%f^P+nfAZ&^%5hKot$g?1?Wrqm-yF!v
zSG!%3v0cRT&0^tS>9crhIt$W%7iW||`@Jys)?vG?ucbfCOSD;Xa^YO5GLJ7|vv=Dy
z?Rt3R&#{8g_TYC`Db~p{74n}7w&fc77Zq{az4@uR-#Y%w_ZQzvYLZ>dZ@!)TJo~pt
zuKYz=m%3(t_Rl;jeCoC-Eq2|tM+H~NX}I}(Km70SjFoqnefv{m?{@CNgPV%VZI9<Z
zyJ=h|^*j3dyoz5b<-1xcuJgTZx&NQHJ-)c_y%gVmy(7$Rono6m$lps(Hk9u9xz};`
zwS1ZXCA@6%J<=cKE<FFJXZq{q$!R4n^Ec(l&DmSC#kT&NvVHWE=l$v7UOIL+YIap_
zsoYgtSG%pU?%Si^%hPACme)VIP%f{$`F&-tU1i<3H|mqiexCjNd;0zfm3Nfm_o%;q
z6q}{IqH0fdUD3Z9Zj)d)=i~9`;wGrq{(Ug}vcKQIFAqMSxBuL?<@K*OKYvc{*Pr+C
zlkKC`XJ3B(cJ%&&XLG_cmn_&}RbN?K>Dp#|aD9H|^E>a&IR0&@+*!GEuhssVD(fvy
zvo3tP_m^w!7ws)_H9y~;T)v!n?YFWuw|*bXD#@#}_<y~uxUg>H-I$`-|G$eq-+y~G
z_hxw7x2xt4ZpIz|eERa_{C~eBE9$;V&C2UfsVrC7`tJ6`n!>t|pZ&KVW?R;KH@P;z
z>Bm1Uqrasoa(Dl~nd~0lbmryur)zyqZx=oKpHY(WULLj%7if3{*5Sh1tAcb(4HXQ{
z3@l*1Fe3#+14}a#7#B3E0h{zPG&Hv~MCrh;EeQ>odv}uVyLAT-9lLw?F6TRzbY|(B
zJJ>k|?tr=P1ax-nZe=*A|G$3M?=KeH=kGdy*!<Y`Ras|eg>DWDoVap@ap%n2vzeB@
zJ*elCb7svS2Gt33SFYZ?i!)-P=bd}kWIp6Qaay!!QUTMf9Sv^|PEylzsB190Afv!(
z!n|QK^Nk-reoR=wAoPuIo}YrZwm8GuWwXp=nVBEk>(;k2_}Kox{JHM3WC|x+!2bU`
z7<1pszG+C9Uf%Klt81x(z=I@KmWYO&Mh4DQ(O64WNrtsOlhhp8IM}Ra-e3xe@y&Hi
zV{n}yDe#7833J2^YsQ@ag$y%pHlKB@pZe^~pFY)RJO+#w)(mGI-d}H!OLJ)7AJfCY
zzF@NKiJL$F$}<$PMOe*jh`m?+Ac>!$@oY})+5bu(^0sgIKYK#+<iFJ|cXz*+^*MU)
z=FyvHIG;RVsyM$&N%JrNJiRbAz51tRY<qVzeiM5?@!7Yub@fxfY=1BN?C$F%CMIj<
zm<Bn$`lm*$OlKU=@oiI^_kQR7gEDg*>Ms|RvNh`dKiMGofMttGq0x3$E9?D-_ay(n
zI=B8B=a2lWvn?!cRQ;>H{qOyX|Bo1o3fXQ&87Obuxc|9Hapn13PA27ze@r!s61b}w
zq+i>=dA5%4|I1=#tG{;@ZtYKNdpEbGbEoZ%Yr+Y9TO5)CH<efVb1wLMf907!?}dNf
zSNOQ!^+A32p8w{B|3er5|JLz;{rjKs3zx>`=1%o_bC3OjJU82ieTj1zyBhYFo%t`G
zoy5NB>mT_=|4jp=fAF{c7w(wTeX?5m$bo6^gEkm#{&$$8Xc}83!`V;=y|gd}ZsFVC
z<^JYgXPM1BH^(vI!R~4G+XW9CId=4`z8$ajgqgfQ)-Nmm{P!(W)7k%1f9|%a|D1Ml
zV#t-Cz=R*ybAOdjIko$hp42?P_ecIM?(_fl?0@MGZs(Xg_n04?J#y?YW5T0^r<L_N
zYh)Pg{OsocSG<4UA?LqMy-{HyQzgTf``u}&zjuH6|Kne!(GPJ6%?&g6{){hP^e&0X
ztX_WYf1^K7&5BEls=~j#zy2@oQ~kXEazzRkm^0e8Y|6-26G)jmYvQw@?)k<hiYxD5
zKg?$P<?O;Gj*AWM@4vP0w!Ude_xeLWc0Q9Xek}4od-d}}orh1)v-$hagMXf`Z@JM2
zrT!c3P3z3%i|6i|+n#9OaC8HU>Dv(NOTRz0KT_+FGhcn}-?x@kvl2fV%bX0cZWliE
z)ON0YYxF*QzNd4UXRVL)s^!UJcT;8w%RP8fv-Hr#zp`f!y!db-;k#+hdpSYpG9IO=
z4V?S(FL6dL>R!I_@_V+;;^oV-{;g@rpPZ6bt6Xq~-*n0e+bIUWlUx?5go(4Qbds6<
zFzu{;ZM}z#klg9b{u8fA?l_ic&R*JQWY))2W^cZGb+>Sck7$wI)LENKSUyZxdSAWE
zBx=?TR`Vdi!h<JyINa`bx6h2u_i>J{<LoJNs+#?H$tk}tTjdh`A1|<|a#JgF-g4#2
z%4v>j6?vck%_;wR{N2~!Z=%!pHh$~jFcRLCGL3V?)QgMRFKsz@$Hu6C(Yv)<)+Y;l
zAFoMjx#9lY>fqAWlueuJ8-kZEo-!lat@cN|icIY*k%oObWgfYXTk>QBwH_b8E@6J%
z^3l%Rm3J(?Ma<qka{OKV&b>Io!GGod=3`q9b#}Xpoy#~aamjGyB@vOLw|~C0-zYpU
znt6TS`S>nf&PS6rOqJ0Kj26Cp^v%Qsm35p2C+aqCcJ`Ed`FC3Bo(P{!kHv2(KDpES
z%W+G|$JGK|_myTmHOe`ov!mqv?h_a6aze#ZSsrh_ce_hTX2G+n6=%~~g=$oJ&GS|X
zO0upyxGnru`7Oiy+FFkf1U$LI`Jd;K-YWB{vcF?2{;TiY=ED%ewzz+b+f|Jc{=y!a
z2EWt4QeV95U21UM>drfpO}-n;ru|mmv(Cfyy@&L&J6szrx=j{Ve4CPST7$>VddX9-
zbID0>oL%kNG+Xno-@TxJ$8qj?MVaJ+)W`Fj)EJG{@ulS_HJ`uzvqQb=hT=Q>>B6jY
z>~DPe<z#<wE92s?mI>v_wt413qH%&hrKd3!T#VS~*()V{R&?W3p@zc0Np=o(jcMGf
zZ`$JDC?{0c{qS3Ji`6=OXL^+2tZl;co25P!?$xt0O}S$}tA6!s_2)-=DlFbNR4Dxm
zIsR|yp_hN>Uiulqk-?Vc*Yt8u%$C;JX&2VHXch749JUIuy~!=V_jgFL_48XEckPa~
zT+*z2)!XQ^rdai$yOqRz<8P^V+I6;6X052b%4|2g`r^cO*IyegZ&~URTfLX#e7Hbq
zsO7y!&xEd+PfZlMF6QoIrL$_{jF@*}pJmtVxmWBgwLV+q;$_SDOr-|(yyr(cyo4Rp
zC8s^PvU7@!dUW{Jv>Vdz+JhQ7j)gs0S3hsY%Hsi(RvdryIBswJouUl~v^Q?iewePi
zp;k4$TI*IFtLnwg3SU=w@%sHgrjz?Avp{@*OwLFDd6jIozVklx9zIuaPayb;mh9qw
zZ?;f|EB)6Tf2v<^cvSY;&-db&W6vHXtA#mV6k)w$FVL|+JgKi=>wLK7+r_cMorZ^3
z&EEfaUlLQz)cBnHvJb*$$OfHLIeMf&wmkAlP;;~PJC9BVKNI=VJxA7r1<#-H?v~@@
z>{-htFCPB9F<bAex1;m@XSXXp*sG};tADcNP6&9?Q&Oq$k55F`-~8r`+xHCq)@@VX
zWwl#u<8RZw|98~L^ep#Q^w&LQ%kok;cJh?Rt98G<JuplD{bS3_TjiFo=e+dFv0N4|
zxG675WRm<F|16sc1s@pFx5!)-d)(lyx_oE+@~d$I>9)61pL9!eGl#1_@D?;!C+z09
zaI1~>G9wdby}L#Syu*K4tDer#o}aeK?Q+J0<6N`%y}slrb)J3gm3Xt+*3~J(mqWeT
z!-SqK4eq;j%4b?uO|`*yDG|HY$5C8|zdH5p`lWJu=UE>!+ezzB6sxZcGW;s9bm(=~
znaY00Lw7l6#%~JGv~O=%wCMH2Wu?<DC-OfnoVab>x`@DPX{&YlV$m#h7BUCEaBkc<
zQPj_GzCVjrJkPaO&6Vs+mqh;YtJ9U*ANTd~v{e$iR&}jAFB$cBUf|Stbb95=uHfeL
zlLHEPvUny>)<}PH|57c(!An2B-RKwcE{vC};InO#{TMSzJs|Q$O`1$;Hs``Q_F3&!
zb`Nd$=$?*Xyz}B#h5Q1I2@B>oPtlW`x8%?ZwMCu5$|(nDW;+Qio!__Xp)%L{cGmwb
z#@m>=wqI6Wm}Y%fW?{9G()Oc1r`0Z}>BifwzsL3E`4i2s6^h2kW2-K%>@DhNli2ib
zUhzVi@XE9cR}_VmHgmjTaH@RXsV03Y{pZF@R>D&2PS2^DV)!?~dUNQDS?!noR+jZU
zTNEFEvcHZi;FfeSzl>GymZ@B-{Ii#Zdk5qd20y!GWtqEp>5cXe+<UZV=-at|e=X3F
z>~4Fd<YM-eL-#CL_4I@nv(+tqb>QRwi9c#Tt%<Xp|5cOo>$lb)PoGu4T~MkQ$C6T6
zxMm$k<$T2*IeCX4R#zW7@?_$T7;V>N&QsGnr{81j`1@1!k@dwI4?FuKxr(!n8#7BR
zS`*=Uy3z6Z!sYx8i_W(MX6!8w)#91!s`;^s_tm49zvi0Ho>1`MJa6q?AC~snU0ZI6
z***wb&3;EW^v#=>vcE3AzjTd_^`e)~M_Y?6Q#Y<ET9bPGkw($mz^O6Cs>dD8G-d{_
z{WzCR+bvro@YjC6^jmuD%aY0(e&4&dZDQf=d3N`Cll<*l9v${xckJf0H>=7u);{BT
z@|PiD`$Y*3``v-5!K})KC(j;gamrfH#>pq``|9Bj<=S$=pOy<VN>c6WF0++=d+?(z
zO=w@zPtLv59vlvgKA{;|`Pbpm@2+Kr2U=se{QYMZhyU99!Gy_odFDh$=37@Yd_(7j
zx$rp$bCvtg%g_9=thsvi(*C`R`sbdkV^rn8u<S=o=bWhPm*uu-xNj?yxK?hq_V8Mf
z6F07xp5M;H@7elv+Ty*Hkpe9TI&bH=W?v}yzQKMGlR?Jsq`?2er~cpj*vz1PS~s?E
zj-E+m;o7^mx3~OxabS{Sa!c0AUsu+|Ncd`nZ7W{3>A>UHTEDl=%D?c-Xov8Q5aGbO
zmZl8m7c*}rZ>-YVx&L)u_`{cWGb|GCvvdD%dbP4@!M(Rid@cD!DL#KHbrX2cIGGFP
zC|G=2;J)bRt$-d^<#jc?*B3?|Sg><pyso15r-tpXTc=7sYA>|ERP0vOxUW~osA=z`
zvJLAcVxwaF<~tdmPZY^HXz;&LYHzczp2h!z`g+Ad-kePgzmh~)cQ3O3s(ns{{nV2D
zb8SD)wHrmU>e^0O`Z%tB{rn7eRsM=**1%`>+y9;_?@u|&-^P-6B4u^!y()u8iGoi%
zj@Vzc5w-|<6JE8fa612uQ_KCdqfBZN%I=j+`mrL;@sw_FTK3$7A@5ID$IWs&eKpOm
zO=l}#@S}|rR<8XOt0u5|qWC1WpWC)@Uo)F!FP-sOV)o<PcZ&{B3ZJ{p&Ao-sv0v`h
znXiVHD^|S@EfKuO6JBoNroDxQkw5cZ{0i5mX-<2Y8zeHjwnnNxYfltk|BTDLZIWEp
zz3Qw<&pz+ERcE_++o!KC;Vt*V?5<t<rQ^6b!n~up?67#bzN+IVlcQGWjuuuO33&U)
z?a=nvgLYQUeFv92Caivw!nkOvw@b_K(@*D@mVZmrKby05dy|^kCAC)@?#+E7=al#B
zyv*C}T#n05iJY6;6LP#@QkYC$xRdKU`}FyjE-zr$FS^3nyUFY2>Q{n`TMG{7u+FXN
z(dXHw*P-wI?bOe!J6A_=H1mA8HS@c2=(D~A-d4lR6PmAC*A~s#|K!l5gpm44hknkJ
zsF0g_Dg4pIh?G99tAa7*>D&K0MZP{?*`cCYakswl|LcN^*-JVuHQzXG`d%+Pe!bT`
z)7j4~|Ln-?y5auTvC<{*`!T^C*)8u}W~hFNOjz~mwvir>lm7bka_J(PR{gyR_vf^j
z=w32Cm{wri{pH-R{OWt5KPNk_J(VeF#Ul3n@j>kus`IyWH?hW4HykOP{8?MwgRhyX
zX0kc!-!Ojdtn-;0U2mT$EnfDjM&tC0%$z%c)seZUq|W+UCTv`(AHLmEf90`>+CSWW
zRsK)#{}JGP&ds!U$*rQ=pdTe)T}~7$9GPHra{tl7O{?au+<QHcb$w6AY-{a=gBu_1
zD-OF@tQmRvU6EtM;&lRU8(MbuGX#og%N#bF=|3%U)0xr(%ckryUmaIjrMt98bLP#k
z)f)^~mbCvh*j4&MT(I~+PMP9`Pe$gw@8b5on$j<zt8I4EFfyN|P4U))+0VJfjr*8S
zWd=;W7R^<)c-gEfHL?C<d$mRXxb6JC^s$TIQr5t^5;IjNXFmR(l=$=V+?>a0odqY|
z?}o8#jlRluLwmQAGq07;|M_plOZ6%`@~m4XxBr@bXr{@j*hBs)WuaT{AKsBKeB(~!
z%dHim+;PvOxfoTNZfe|6OFQ~uetm_;wk3tTk34pKJ)iea<cx{2o6HQi&Y3kgOn8fq
zRA*ktYqz`~6TO*gE<^@@vX`oiTk7rm?9z*#EZuqgPp6Bd9XNbwQhi)(L3u<$+FXhM
zu0O4dA8xtk>kww5pnc2x-BN*-Q%sI(TI?-}oNQ$HV1nyDrv=3hWl23pjq9Y`{^oAH
zsXg8IgJjWy27_nf`O^1y<#tcnC1GuKQQ)1N?J@7!TJa+0t9ngNUs!Rl?Bt|vI=L|}
zu9^!4zq_a;?z#EFOnYPDs>POe--})woJ(HOY;Cb!)OpXnX=|;czlfcET6J*R)&5qy
z=auz^`VUN6xF=fi9o%syfuDJ*-C`bN_9qK-OXCkXm%R>m*bse=sZZ!1LukssV@Cr{
zn&mV5uSwV{Iq~-?>-pXpVlzUyJed}qJuP|g48Kk8tXmo(wKsyd2RN6CD0Rm6p9+ze
zeKBX}O)E*i2GdJLr>#0JOm;Z(JNJa`=POLRxfJvLJ6^8IzS_yAE__&FcH=b1vm8xJ
z44&5aKD|@kHtloHyq)nZ6LKX3CZB(!X2Nl}uQE7WkzFQtp_Gr#x@GQ_IwH#j-wB=h
z>|OEdM&~k{aQ*q6FB>O`ShO1nzJJvnSF)g1BVp^pX_-m=pLSSWQ}3+W@ig->ufoSw
z2E~%^A|1alFUu{NbY^n1#zsjU^KXaa`u=DHd?|BTD8qRr_VRO~CqE{A>+4>6@9!iv
zkt?URT<%+z`(zVK#M8|SPfYuAPr&V~qH9Fi3)8-r3om{6+9Z0wA>;Dbm}nk#{<)>k
zR1V$9soWtq*KtW??$%S;VtW>?D~U+C;ymNz3tNwpYcsTud(`vqcqsbC!%Mo7<*ruw
zx2aMGncwvKKHDbw)k{aSO08~<Q)g<t4Btep<+ZCK4UZqMcv383^oeKLntZ9wJ+3Lc
zmTMR6ic$D^UffZ%RDZ1z+p8jptKJ<-$L8PEjW*tQ>42l2a0matgAXU$IRvEr&*<vr
zKDu}L=FlY#*S5=-ZS4<I+@cibX8+<?>qL!J|28|V=8NNRojzA4E?4Z?$H$+}$K3r8
z#O!p@_v?eV{X2{pWM?MN<=|g*SzO6Fy=+Ng&>Q~mnTz9Rceo@o%}OrS=8-+nCY#&8
zIfnno(THj-nVBzcd)zQ{$e;XqRm<&uZ@XMhmE612mMF_^T9cW;c;f86whKo8N+(@X
zRotW$XEm8;y>oHs=gkXsy#98vZZKd^?AmLjc>DUAB*RHDO$(dWmh2UXwmN@2{)cI^
z+Fpq^q4l$u+*Fn6-Nzi;zUGWdyAP-7W@YQNs<uZDc@Ir-zcGK8{?!A^bA?UT_;;7C
zaa{OUXR3@Q^RH7p`%@O5aQ-><US1SG|0ZsJ10m-nFK_z2GKuoiDC7HTyj-g7OjE*!
z?3(r<J(H=QJa-CZRoibn`?*AS!LFwC4*QuhJ|??%T;6$qvwltR$CLZd@El`N%Z}Bw
z4hX2Unvp42*!jYG>Vm5b<yz5;Pp3S1=>0uU&2ECeL&Oysy^=m|^Oq-fEZig}@O{(F
z(}K!w99<3z-!QDGYxlHX8@cc5l#;uO>l#G_lNN`^*_P_h`2O-q-()`h$5#}uoHBZ%
zHD7k)M<Mov{G4Q&iA(oN#boHLDd`Ne5kDHAGEHZH$V+yUEEk`A*SlwKN<EW2Sf?#I
z@v2@+lHR?qKFQp557KAt`LQGJ_Mf!$kImxOO~q1Qa2+|DJ>k%oU73r*bThvi|J%wW
zKEEaI+n%2{qxk+Dm7Oo|>VN*bD(BnRSD!Z-wTLF=Mg81&xVt%W>AUwk7*3|O$$D-&
zx%+k3tJc@w>;wLV_K3P3`fl_jYr>4fYn5U?vaF77TjnctFX>awR`J$?4(}!Vm+ch1
z9==0&s{MV(J*~eras+(&IgAfXdhN@ndpXuIGmG6WF?NSjjZx6{9TlcerMen?u4@Zi
zIcE9j{_jJx(}UhhT-ViIBcC6cb?e>!t`!xfh7%Ld2Ax)@+^A_I^Wo0Q?kjPNnk_GH
z4O?_C;+=NWy!MBadYlh4*Ix{BdE8uort8uSv4e8?KZ_adpXQiOyz#t|jrH-Ni;IlC
zb{xO|{-DRb%f_3`<NUOkB^#5M$!q3&Ps+b8-!aFx&uzuOkD@I{l&sg5&PbBhh>FZn
zc_6*|bdXbDPt&P*=9iQ9ebdS94sE-6QPe->U#W%5;-9B$c9j`R7SA<Z^Kn;5V^*JX
zdFFwyjGeh_e;nM(u;OKrZO>7kwEr_}PEL`(zyCm~W$yp;%4grL`R*&k{`%Hxp_Nk}
zeAT~I#@6|EU-PP6tR78Oe)lDfY6BV6WH(!fJ@)Ik7VFpYF?7ol-s3)Y`x8tjgt1Gm
zT>LcrQN`a+&-=3XMy9aT7OkCgQ?*9rS!u_^Ol7X6_L<5%Q*XaomAK{Y?fFykE;?v?
zuxz^X;Z3@kP0+>_;am6q3vdbSn>N39nb~=%GC`RoN_k4QJRAObd^sZbY+*~@v4XQ~
zdRn6M-L`!ESihrKYS)%IlP*L*EPKAGDdnQ@BAvYY$!3w_PG79Kc`R)oZQZlW?XrW&
zqI-v}Y-b+&nDtn6BH!8N+1i)SN51mi$*G^1x%zeRFW2)HpD)E<TcUV@#rIo~!<xo$
zlb<J#+%C}hy4XnRRz<Xp_DYwTlLUX4yejX}{8?KRd4Jk{sSO?uyLR^d5@Sy~Aei>v
zU!wQg<NR4#b)8RU=hmt#&NorMu+*Awb7km;RbL-1dHFtAr~mJ_u$9gI6Vtr5I(|MR
zU&{G<rE6_2e-GcH&V5O8TFZYl*2@d3Sn?d~KM<CXY;Jq*i?_XbzxOoW!|av(%^AD*
zC|umc@cFdFC8x{kPu6tXe`~YzTkPw!@m0R<!{vT{uE&ykuLRvX^C@S`h3>cY`%e5@
za{kjk%LTt#QnmNIdSEG^IN{wwfft_Nmv+s#DlS*0E-K9v?VEoxg&|PVi*5QW87>7q
ze~0UFdFS^OMpcwatY7tHn%!U5^b0(;eiwQsY)M|U<PfK1_57^WlOL_SbL!Tvr~}dG
zXSIA=peUfVGI~Yiq#I0p2j?-1#ZUfiT(*9pS^P`sC??nGdY5ty1QYB-MN-}zca?u6
zzG(mcv!7*@RQ1kTKiaXl?&kfo-(4MEoqY9E?buDJ^~WE&z4^4feZIT1xz)SJ{aN|<
zpQIl2=Wa5zyx!<5;`})<C*qXyQ~ut@*40chGB4LiSE+wEn%;9D-)K`^?O8`54x0`o
z?S+nkn^ccKl;dYhw>oW<ec*AS$+{+sf2E?aZ0#?O^&gtBUGpL9>#PZNNoVx@T~~iI
znY=7>@&tq3w_oZg_optCk-9mhae|cK-H1keGnXv&hBJRuBG_*Tl)b+7#clsNk2lO#
z30|ChiJ~*)B$9ufHM@Huk8RoQ%Nuo$Mb-UU`FzWd%RKhy7d-ge8M#46vZ{+mtj{cO
z!;0#E%uQXVG=d%rF1+Sk`0~I}lNs+dcsV2fR`_Zi+2cR!p}eK#V{=EggMp{h?w?*?
zWZr#HPr&zWN8mZnXSQ$t3dZ>_H1&JsQe0IwZKGWZpW1=7HkV!}zrK{j-D+7DefHBz
z*6Kv9Ob_Gt39)xFi_{AhJ7vFLoMd)IDmndv7>^b6_QL4u_s@hk#JE*THRQg%QIgd^
zi(|R^rXNSNHnv-qpA9ve$aCq}jM#a<eA~2I!Zt?zO8xvf=}K;$<)#VqS+h=XZxnvi
z`81`u`Sv%@uR3qTIS=v~c3qTT<+gK^LHvY?ZF{ueb=+8#=BLuea{Ji+LL=>4;ScZr
z7VP|~5S)48vD`6EuRjghZ^aI2{WVBpcD}|iS83@>pR<u$BbS_FpS<Tw);XEavZ*YK
zID*)h&Qago*f`+^*S&K7xV46PHH)6E4&mNEZ|5H8xy3(ikG(v-)l2OEhkUh~)BE<E
zuU+QEoBiW=Zq0{~dmr-TuTKpzb~or)Y?!=P^R3Y96(6-j{JvfZnD)9^<hZWg4Bbt?
z&&+O{;}{rSAkm-HBR<h(|CzwYNiV+F7}lBk>#lxl)a4vkvnb6!-D~dgd3A~#cjm0}
zJ~nd~^VVr)=@kv{ljJY6ht;{&J;}{<Dik|*b@jyFvnj$Kud;me?^JseGyM^N-|PwQ
zuf!)@d&S=?dZ8@)f8E!+KaMc%n-%!s?h$L=sk7fCESVR=UGZ#NjGbi3k;2Chz3Lk8
zeOJ@Fdsfq1YDSph^RFfhT;DsK_RVUpT#)Q~cWHFG#8Rj1`z2qtc0AMf`_+GIvQ=l}
zNm(}Sda3YVojwUW=ADRLyhV+(wN>Y%#HEjE%bVWr2x&QcZi>^-NvSM_M>8vznlQT<
z3hoaU|MSQ`cEVk^LY>DKw;r*Ooz1cL$g77<e*EW?OU|@B+r9mTQE8~EA&d6R3t@KU
zKlNW^%3K#q);?d;xLtas(Cf4D8u#bT$i8n>nxW;CRC011r)m9NhGj~xr`j#Q_->2j
z&WvUb@mpDIuf4Jh{OFutd`i{svq+P2RnX0wlX6P949q%B-o8lLxaIxd%RJuozgMX3
z-1Vzz+9THsZxuee<-FL;xAs<MH`m4gGv*4fpLDWBdiI2sC;OJ=28+oRPAI&!$#zjr
z)1j37OFK8pCQXuUE;o21^5<r57t?u-pNqB}nkG{Iz&Sed%EuKaliK#hcYmGM+Tm9}
z{Y!g~)_Jvf{ly1nh*?(TNiLo0RJU@2hRXG4pGrdS%=sc(`+APXuT#S33Ljeq2VYzq
zY_vV~%%%Nvl3ta~b+?fDbMnV=%|QRj-!mS)oYS;6Zlyxtf$fne>fYU0zAGx@ewMlP
z(M!CJ{~AKMEP1B=VqJc`Vk49Kie`@;yD!+OT{)KQaE)(by4CyDDhGCm?PhiR(U+Sy
z>&m?cyuC}DL-rn2PWp6b_e}j~VlVP;vhQdA?EdLUSaiLN<$+amOk$pXu)ZYZDA*%#
z=56q#j46B1C9n9@@h@C^rt4a9>&H!1fA^g^$i=zX#Z%{KHNU)9SeX08o8hX{edg`H
z<^1xWSmxh$dAaIS^Y5+mSE=Cg$QSUJD>+q{aB1(soP$eaLNADxZ(Q|5-gf!)XFZkI
z4+vh*+IeG9UWxp&U82)sl_qcKN}FyKe>;v{^?T^e$Jc@bF5W-<h@VT#P4~9xsr#FE
zd8GIDR#(o_Yx#CT>4TXJ2iutl7qc1PR_Cm`>wd%7YkS2{m#cp_Jz1o<N&aEm`v}(+
z4Ikh8PoCE=W3=PhwPUM`kEP!)6!~{CRX9y=X-Y`ZQ~pwIcehRIYyTL}mded)J9*K&
zKHy-o`+<__J6wW#Z^lLPo!Vl5^u1AuV4AdYPV;}G_!bsjZqaET+_hdygLIa!ZE8GQ
zvuO6!-4U|<k)faW-T8U7Wa`Wa@j1~d7rfkg*XJDUD*3Ozop*=6$rAs7ya!8!%x5&2
zZE3xB|J7G%TRC5*`8@UI(*>hXN7tqYy*V2G>9OViM~$<poxGyG8-JUhSChYcbk(<x
zM4sJ^b?bjzco08XOhk@3xy`oKXK9tMoX><JrG$<A=TjfC+&mbmAjUEI6F=8<JClvy
zHdlqevu_ExYU*@~H}sP=m)Vu|X}^Ns=iR$dH@l1Vui7-pAlvTZ<k=4juL^p-5ax@R
z^yL4!ghNw4r9axRK~%*|V)Iw)oX($oMgoq4>CC+4w`7il7rj^dd%{59)&8nu<?RE!
zCseL;yozQ1d|9L5yU~QDC%-=}{r9iz`TggDaghxQ)xF;*IetF)#jNZL``6ahC7Tts
zf4zP5fYn;P@7>21-ZEXa&ghHN#Bv{{?+)hNymq%wGqZRWTaB&B{3!w-HM@9=o60<V
z1Xb2o%ufE&!pl8n?wj;y+~M68SKH^Rzs?UnJbj~zB4>eDuI~o1^AYTvIl=q=gM$v3
zZ|R=n^|{uRU+W*=q}83NPVN^q{@M6yK6<&N$}Pfb&tld!6B|xzUJNig5h*Sue=KwM
zd)@gGb+4y4bne~#_D#8+qVpxm$axbTqMA?p&R_p-#T*5moG<K0tsl3%PdLmZ*#3Lr
z3B^T)`79PLUw6pzH1wD8oVt-}%Jx%ra%kGl)n(z8igW&`cQC#AK6y&?KQoEWx!vB!
zcm2rQ67sI<-^cFP$|l7n)3x&&Za3Wew)Xu6o#J_C1EybiGpBs+iBCB)*Ui5fda|xC
zSbuQ-=8U_1RTeE5;~$?k=n%S7y|#a&q|?hiGkG6hGfUhMZ@gLM&%Q~YCmnN^UfJ@m
z^Un-!L+c>ZnRY@JmhQJ_Z8;vy<sW%jG~~nqzn8J)9k=Bbs&^*sTz25@|3jRQlDF|r
zpBcr$>B((yV#%``4}aMDPVP1qXgU06_r%5p0a|MJeGf@UEluatYfI`o9C7@^foh4%
z;?>vR@7^uZrt|Xb-)lSi6do^Jb6&Q$hSmJqpSi~rdd@zZ-dWHcp_=~p^^}4wIZkqW
zYxlLhx#ZBk!l$8-?;nG`QDWU(y~(G0<uWt&zDa#2z@Dn5lf3aFSM<5K)-_T$Cv)^Y
z?ELF$D`{!#yVdI9W5*hWGa<ziQy*VAv(1KY;Vf-2?mKzsPcO*hh`m+#acL22(c0Qe
zn=7`*_P_qiymUU_qJwT_LGRyarcc%sc46LpZTdkq<=c{G!3R~>&q@2W=ge}Oo!51b
zB>6XHyR3OAcznl$S&Tb^u9$U8&+LsoED+n85*hw2^x^q+M=A~T?d)|0FFRjgW1qQh
z{esi`j{Ls9LF>G{F{@k2fysFbUe-?D*>rZw)yf}_ES>Yx*>2YFTOpBj+uLBVk<&T%
zxie>^ziklrdv#Gje2Zx2UOlU0bKXVX^J?2w8qj)c@`SZauVP<l-*@p|_p@|OMCs;S
z$qM<|wRO`I*O%6XF1yJmICr^5SyYliympd$-1S$2hq^^~dSBGLY5F3ed6wnM->a9j
z%qsEgmRz@4;guw#l&Zh=-GqOi`geU=^?XWrxWbgah%Hj{uFex(>hmP;B)f6esXLYn
z4Rb<PE?qFsfUP;U+@IyL{n3CuoyON#BvpDR6?R_==I|F=lAc`P8d6ruEOovm&F{<N
zdz<%!sIV25#QV?OAF^2MOx(=*3oJALFf5q+G{0tJg1BB~z=GDexc9SWzhbd2D;E$F
z&$(@o$Z%}o|221;+~-}n6VnxTN2-73cgy-I!9}&nhoYDMRzCDO@bJ{5UKw*{Z%~{6
zWaa{uj=#FiNmrsic-V=m?Jeo<6kWCc<xY-CIde{XMsj58yt49Om};w0r(?4D(2qYy
z#iI7BdWKl7eG}1hRq@Wz3D^Jf*-Wy`?9+LXSm|EMuu*>&!`*qQE?yV31ZC_wEa!aF
zb#KgRuYD${YHYY-IdiCnnOSzb%R$K_6&I={+=4m0H*Z?`@%CwlU_+Ix!rel)UBPqq
z&JSqud4KHZ>)DTI3B0>3m~unuOXi*Hvu&b!ID`aeO|p0rX8&YSi0^c5udEq$dRi0p
z?pMy4YOk|Uw{5<!q>muqa+S3+BNx6ear51=_4kSLS@WM8yZLI|nExiBbldC|_u6FK
z9&WYgydI#&ag)>1P;{bkPoba`A9M7wD^ed5j`$YrjZ^xQI^p5!WSdXHQ(KCcG+mv2
zoNtZXYrF8Y=*Kb7O-n7cZ_NH(zV>eMw~1+@=9VU2iQARucje9RzNEOsefc#t?Ov6y
zcQxkPGBI+_j+N7Wa?~RG;+oIbcSqcwefS3VcK=V;XUjg0^NI?3Hoc5zfxlOg`{pNy
zHI3Q(T#`JG`KnhL-Jg^9H@t0;*uEdy5xOD!#8&l}z1ox{%Bg#KXP4rGN{gDang{2H
zCi^+8`!c)7&}~WB^uijB*-y%wtZObE`*n9>XO#RcwI#VPHlADI@r%2ad!^{{iH)yR
zcTCw9vMS*ExvBB7Q~egVoV2xZ*LcA->D0E>N|Gk01a6!9X35N$9C-gxOym7cUZ-A8
zHk>2)`kk228Mj~VMh5XamG<~tR(o7gJG17%eKTI=ZAGiK?BC=q{j_$mBBMrli#5O9
zzSr^9Yb=~5&Q@Rg>de{~^Vb-;-?Cc5|0BTe+~NN(a-=M5T3jZ*l|Hh6>Sr<Oe+e^m
z`!wc1ND4L16?x}-ZGPI8kBv-EnKhNnLaQ4;obzJKVwiL&*SzY$w|^#<KKEh+FV8d-
z`q8ts=uDPnM?k~2Z{L@H`yqZlYcosLu43PnDjWV-@ygb3&)oj>;Wr-sO4pFTaY8P~
zLnMs8ER$#d5NCY8dzA@``Qa~SKcpT$+jp={ZO_V%MZIOabhhfqWD2NGS$*OZD|bwu
z-lx^uS9gjZmrmR{bM0rIkI#SJC{}8o&+)OLX#R{SUPH#@h-sT|T$~r`ckA3jKUPO~
zWh3P)cE#y$<flH7SMz^cvAXg%YsUUP%5|3~9BS^e_M5pVkwdxa(44RHPL$_lb!9lM
zdMCUoV!K8Ada3Ly+;y1_lLZ&QIlKPbqI%&+N2(0N<BR8crvE(Lp#FE?yK{UFKkvNU
zv5e2=%x;w(=?BUd*SS`%oNqMs&KHftiaWx!OFe!_KA$2cqifY3d9_C7@QKrAJ>O&f
z_uhVfxO%c`!H$}L&hl0JwUUkGgZ{6WakhJ}x%IPzbuwXvH(GYN9usmu;&tQH>XRov
zI#hj=mN93MjpUKMV^Lqkn%mGOxpB8iazex`U3Q;0<#%#_r+*3iv*D`F=^WnKZrg&i
zi}yeC|M_Z3SLoz`_Ba=(qyD#+z3;br5GO7zuu0hLMAeP2<=3j-9a|H(_}9L;XCcYn
zrc&XtCq#9(Z~k)O*7AGL6;nHyzMhSrdp@^5u<Q9I?(e#j(i4@GULCL5;;?eNqU1F3
zn}UjLX0m%0{s`L8UQxW=GI>=>PpH4|9g(M@4<>JzTKjWpS6^Jifs|RQhZb6?bj5RT
zoj85p{J!svjRhOsCNAi@SMhP%xos`1$vMBS#=0Hadh_qBTK=LvTZ1Q`b6=mdMBkWS
zbqZT?lI!dRHO%psf9bVX31!>YWM;g4uG0F7{pyU?eIZU=0W&{eU4JN!({%6Apy#gY
zf^Td;ZV_L7>wb&}+phB*pMCmVcHWR*tai1~i?8nLvIA@9>}@F78NhX6S-bn=nXAgS
zhM(T6pcieh_v}umg-g!AHN1Yzt8hoWdED0mb^+y+k&{;&DYv%!ajL#N&0-gABlzZJ
zC8yKo4k591^S<X~1*rXRikVliv@n*f{ew#3{SD9g!={GUY)N|X{>KBslWW>PbF^6)
zX4S56KK)YezP9<BZ3*8R5-K(KG|J|F**vZ9R_zL<sk3L^sc&R{`}DK{dvw^RH{Z4T
zbY3jdc-rL7{VllDDXL}5ghlGYD`xE#`0V3oFBrJ?_kzpLu9v#)Yx1w^#%+?6+xFxe
z|Jk}@!Z$a?Xc>LDlb$^x?3@J8vJLBECyAZ-vSs&9r-naUf;ATwmG0*LT5aUJQhig+
z!RPM%)$ykqy;olrn^x6oRezgpb3U{F51CL-*WF9bScV=g=J|R4`?8w)#HxC(mT2X4
z!R9GX&swcKrhM<|^ebnxwN4aiq$C-wnj7-dGW4jnlB~<Dz3X=0eBaqpV~}2!9gtjH
z&GGZ#gINr3b(_!c+x5C+y45u2zqKzU#io2T`<8v{=JWW?r<Lvme%m)qzxb>4<#)yN
z|1SKZnbP=3CPCA!#%20OVb2wgcaAxq3}ibUvdlMl$FqbwC&7nCv(wwBPErr~aZB>|
z(Mz0$fmweFEAH%aE`4yJ(!wn{ww<S@p?G@6jPoiVzizI!T{vU?4(8A|-qmgMErl29
zKYV%N6PLmMt4lqWx7t7dEFt~8Ho#z)+T7~Jp{1HP6<<~!e|+j);Fp@GPqIU~?;Zb_
z>@KODz%P3~!Po0gzd`5Y1ve$$hZ`H}7I01u{+FclMD23L^D^!BFCW|4PQ8x#94#qn
zcJnFc>aH`}`qgXPpXe@d>v$k;pK)92(64LjEaUB)UcJ1;Aj%`~tTQP<p)HSn6LW?D
zcW$fJ>krGPeL6CI<H2Kh*BTt*>PTtWo0WGdLG<CS((5HX^UbwZv*aaAsy(3c&3pE@
zDJv)4eYa}!&ui<eHZGpXaxj06Yr*Wbdh+U##d|Y;S5`}Rtag>|th;*rR_Uh$M(Ta(
zG0c06wB7}8+I9a#sQBc3yFDp4Yl?qwW~<&LbZ(ov%GyvbzX<jV8>Dy6jr+t<W3tz2
z_AAjzJAJZq-}seWyrHRApm%e2yWaF#lQ-TWm+eF6<fK1X{pPW*ec=HUkL*uB3fE5b
zWW1^rl*u*w{Y;+kn<pgC(7G$_VR7Ef%I?850i$I{zR2XBmOdMuaPF~R?!UVUnU5}t
z)t{SxAxXTcyydpZk!tIe1(80lzs&J}9@+l!+5)-oNgff(*Jr+;Jnyt3_YHUUSvD{J
zZEJHBziD~8e8qyv9R7!j+;%jaQHhwi;@~#rkT{oRk2{1kKQ-jC3w@9%_4%3f`MKr)
zt9KQ&{|Eg#z{>0%$16K&C+npDb_E6f+V3v0Ykt^rp_0`!J!^M!=B0HxrCCRF=GKMl
zv9QhjbIknN7j{L~D97jJr6(KH`FDS~tnW9ARc7V(yE(N}{_5I)7SR2&XUEk-AIH09
z^TZyy$yY1dzFRJ|CDLq?T9NfE&&7XL8lo)Za@5Zo9hp0GdC>tj{h*bBtGB8@w)D`h
zpU(e-wKepV^4;dQfx<0M>XkPClW(2wCyi|hx&_jvc&vMVO-v0f6maeNH8d~)$$>Zh
z8ks5B*>S<PPS2Se6<sXtey;X^-BBC0-KyUiYS-Vowd%%3nfx5}eMdd_-C~bimYbIn
zIB`YHx9j?T{*!0P6?h!uH#<3R9|L>F1BS%{#n;OfPufr8e|19b=aasZCzrp~N&i_g
zw>QwP_W7Qv=P&#;(o5bu{d~x^wkf+`JgI!Qd&<+uWqPM0PTUdPsSv+L=E7;uo25@|
z+-lq#pZt)q>aul9a@R~KeWk&kGu`^#-Zyu@%NFN9<u1*MouaR_a`NLvJw+RI;$w~*
zCiT6yU|qvCcTT5!;J%bKUUPZnii^?<!$de`IJqWzgox}^E_}X8L+WJLCckOiO81Vd
z#Ji+U4BgkU!|y<+%A;Q$p-nCuelS(Iw487?k35<h+;bvMr@(bv19yK)caesid;jyI
zf-)tW<9eJy5f@dt4OxCX*?5ZU)WuWEminnL^!^*2?8?YhXWq2BH1?Yk)3ekL$=nx3
zVsjUX&Z$<i5nfQOZQwfl>1_5x>!#;B*jW{J*>zSfYL@&Rvt(L6PsyC-OyOfkCW$D8
zb!ck3+DtXx(XTXXvhj>WzKdNqSSw#W<q_NQWcHkcC%c0d?Wy3%dHhgYr+CqH<2B7Y
z_s&UdW{zQ8$F+3toQG8#J*Rwq5>exPU`l@29iuk6KDBew&2t_mO{jeI>dB@zQcrU}
zv4k|wd8n(SZhWG8W4wsu$-|M0c5wWhvN7x&hi#7Dt_d@u=5=WY6cp$bGIGVuvF<u2
z;`CE3y+gZ0F7Vuh-GT|p7Q1&u^b}NU?LHy-NP5xE9}=CqkN^LDEI;?BSKZ^jeJ{>z
zJ}UpZDE##L_vhD%Pk;TW`sw%8Pk$v{bS>2R^XIv}`Rb=e{o$A2UA-T#U-$aZvn6Na
z@^($n|MsZ1I`_$)H=@g{mp=U2e08mk-NJKo^w#HJQ++js-T&ON{jVnGy`OkRX6Emc
z6L*Hztv-;pZ|=GBvp4JB-<-VnPs#cVZ$!VndwOf{vI|eIyb=BW?&<BlMZ3jiiuZ)y
z+8r+OernaMcU$i(Chgwk`1{|@vyVztyU+B;+y8v{JOBT`oS!e>zCC+-^J#VU@8RO_
ztv-MFRP!~j^5?=MA2$VloX#$Pew}qE2ixlXad+m#>#x7I`nAx>?Rg<;6I~KMfBN?J
z*ZI}09*X}je=uD0_RQ?3yT2Zn-pSf~oByAr)#taL?)rZJKX-k9`&)KZwjTD4Yz_Zy
zof4a)EMNWJ%-=1&_G|O}`FpE=tjYSD^!4RUEqlw#T@~AH7F66@xZ`im(R80rAD;hS
zuD|Ti-iVqVclBl7PdMwF+RWyD^4RXw-|wD_^Y8z;@zl4H(#oEMX=NVQw6FY`IO$^E
zNx7QuzrJQF-xTbV*^*KlHtFNUNnd}<?2Mc6O3&m+!QM?Kb54GVJoo3-YIl3v$}NZE
z<<_6qvpa0^uUOXVNiD;N1(y7`KPzzad*|%E_f4O{;O>1s>D!6P);Vw5dSiKI=5u~%
zHrJP*_wVn)%gg(Z=DUBG$k(Fi_pp2So%FB2iZs(EiZ~`Ss#PqL46pxp`Q_s2uJcU9
zjxU#e)Uwj_<>#lJyPy92dGfFM`THF<`t@Gy4;c5)Zd+3O$YQ_yoDI=)p6mPH-&3da
zXivtH!rd1-g)>|3y_<aO?Zjj6r#+kfyI;QU^PUFbV~@UAFPWKix!%m=cX8HU-otEl
z2M+LytMPo}uYam`PxJSiFJHUE{g3B7DyR~8P{Q+wQ|RT1J)&#E?&OKCH(OOF^N*|i
zN7c`Nf1T3i>U-(DK2!aW>%G1g%iphMTjTC@R5@)~!Xi_*zq-0HB4wS}_2)NYm@a*I
zQ1$cSVvm|uV|}sr=JBsLXy_Q{)lIzEeS7w~IqU6etzMrwZol46Pw#Zz>8UAOXLoO&
z-9Pu|`$tt*XI@?EvHM@_zP0vo`cHoUzWUZw<&W>a`#S$8{1@Aw_%+GmaZxAh^VQu~
zRo~=_?Z4->NMOEUdbWXgar^?|sYmmg^3&xy#mk=+rvFp*=nAy@9O9#!;$Sf8^)<=H
zH%k{>n|XciPsbj`Et`z(JriD>x&3<c=XkN#ju*Fo+Upf}e0$V<{prt7zy5sNf9}q`
zHQRUWvy6|`*Gf8^<oIx{$6d)ld8@K#%?~a~ZaiFXrQG1TZt~Sd%NPn(y{(lMI9fJ^
z#eCR)?$15RgOB_hb1mv`>@ev6R4m|j>YBAMpL>2?Xy*NUr+!HF8C#sXw%h#9pJfp;
zqT4GA%D$duu+GwEPOsC<-fysa_0gvrE>36qniNswBx(5h(VN4*;myzg{$6c=<gs7Q
z{kbV2Po~sp2K~3Sv5)P#{?lu@!G||*E+<J%KFBiddAumUt)^i4-XC9_AKI61&nRI$
z+aH>t{_k#<=#Ad3pXMEpvNedGef-(V%FJ_TqKotH&1|iVx4BqjAb<AKpCr9A>cyF1
zAEJswWpDk-T6eZLlAn(!-fX+Fy}|yO_s_~d^Z$JR(MR3{nKXvUbLtNjzL=`&nVr1H
zY~nY*^_IUZ+}7QH;ASh!rl<X&hC3#w(OP%G+_kLR-`Yz4eELJpbh~?iUU(&kDC@_f
zg~xaBKTH<?Gh4%i%PD&Hoz|^MvYjf<cN*s|6Z<85ZRRaD^UUSBD*NVdaFt&FUdT6R
z^73snwXMo-9g{Wd-Erp0vZhD(XQutwX?iyNS>4Ci?MaK=pGkjwUq3VdtnkNA>Cdb`
z@2ym9t4@uZEq_M(^WvW?tM+a3Y}|H>g|TXTqQLCs(-$}NbHw=+{Fvl(=732yo2H}c
zh6ScKZ}Z7sP+O66<KkS^XS-N;=buart~ebW9FWarmCzMwyoKXNB+DF|X&qV|0n=M0
zdj&nT)|?ZZGne7Sw)QX67i9>k7R@#}b$;zX>9_Kt>Q{F4$L8OASt4=cdE%oW-f6Y-
z4hOxODjY3!qxSyO3)>?maqax<J43Sm6@T2@1(&9_{4$&u#PqLq_1~D-ck=}ozrS&6
z+WM;p_9lwDv%XXOd;VD0ZjHFN<r|gr{-moFojFpPu!&P!VaB8i^C!z5+UP#rxj0do
z%ert@ZrYF4l5;Zkn#J1>?Vf#bVM~Px-_hXqTbC_<pZWb##oqUi=9YgUb$NeZZc((0
zW`4Kv))aQ%qIYcPZ+{aCn#Y?Fbd}@n!QU#k8fVT;DqB!_MaX@>Bj5B_3`Kovp*L3W
ztX|LMlzY2<kLC%ssJ880htqF_WNiLBe^2d1LHFL>yRZG)@L~7uudOltZ*Qre_CIav
z^7GN_t3OYk{(5ukh7bDZ?B~UH7T+(9f8_DNc<!WCF0)tG?{+texLtnxtC3jts~dfW
z$8xOG46o&NY)-x<vdrt&SsndLahww0JE9`pg?B7_|2E=4MAmVoW2=4~Zd>I4*7;iF
zztijX&D?1{=~tv+yX78HgKbQC@{`{lpUoxqWOgwtCs%LAB9W(Qd?Aa{<TXOd=ZWg&
zwj|$Eon!MXYzohmW6C^JjxE@*;7D(dj={}aZ}(cCjk={ReS2+AW_wOW&Rq!+u^BlT
zeIF%0KAzYx(Lzpe#+zf}+m2hl|HeJt{Ls(XO(%ojAA26PK;#&6Q_zErKf(gI8r_xo
zx{pmd8Tqoo)pfsqp4ju(PhSP)rQCl%K`&wYN6RLMqU7s>43p%UHGeHJ5UcOp9p{?e
zzqsoiAEUeQN>Sr2N!x@qUo;nFzw&PTXt3_wF>Ck3JM6!jo~w|UzG7eHEDq<wYkwAZ
zZVXJ4s=w74GW+4<hb<2mv>CTOE|Ivn!YuaqVh0<o8n1+|&5fBR6QgAx&EZq^Q*Eu_
z4D(csQwj^ZFm1!sEkX`9nl%bMOAA_rRt6?Xox0UI#bk?vji!L$%{h~}9`<HMN%1p(
zTvNldDPUWBsm8^;FUDtIHgrxAZR4n$vUQ7UpoYA&#F8})4mwNLG&1D;<jB_w{P=Ep
z>1Hp5-Y=(S3yACtzt?i&#NI>KjM}D7j_gik6=->QPd@C>FSpJ}S%dy+*0rum??ktV
z-P{p=Au1)}k`%Likd(6G4&_6uUq_4nnZq~Z#1e%PhB+cFd<~O78L}VnWPHeAp{bz2
zbN$N3_)fE_KkLFeoocW2mN?9r+Ha|Fj;oOUNTgz4&+92y6}UeOZojp?^4$4nmOd$A
z9n~ON{v(l!?;0(%kJt)q_e$nCJeB=T_@cALiDu`29<rEfUa63`HP7LW*4+bsbBxj$
z9))G{MBb2l=(7;4BvC24)=r@O)J!IUa;{qpN9GnSV>mMR5c{DG)=dR1X6KLIv}x~L
z6CBR)$gh#(*Yl}af*saReFQsROEX5^ke#TMH2e9ZoOy>`zHuGqII{PU0aM}n8Xcy>
z^$i^kcd`|{b{4zT^ybd<E(_yScqbaw8n3<H)8UTxb#Dh7jo&H?a$nRMbY%)xPtGnq
zQEZi<#NJxL^vF?hUPDDdhq{8C$Ro}U_NOTVZHEP~TW#;uJFjNt^JKw>vj@V$*(7hg
zI;FsTdqv1O29L|t9EUTv9h3FV5t2Rs%<|0RC9SMmW@V>4tlnA1wxuh3x>DUPV-?ST
z2FZ{1<%`bP>@@R4<}217rG8P}bdkz68J3GrBp=-(=_>bJlgCx!+;NSIQH{^e1gLFV
zbOoenX_`po8V%FMCm!2;br%uzJi1h=`)&H`e-~Y{N@pyVPF)o0GCS~7gzFYb*Lk5X
zvmM>nD&68ams0&SQQ+9O_SKfl+VTv}U+guysI}~D$GR}XT(^no)vXpb_gC9K_%&^r
z;q-R5YY(;0o>|LRT(a0_OIK!bW}fD<vr7*zonbcJY<kkIn5x)Sp1~~}ODsZ-%}bi!
z#!S-|UYm5QN9nxQva=eW*6^8WeA3ZYcb=FoYN&T8!tPO2^mQ%6>CaBNthO*+d}?!7
zu<<IJ(_GOZmD8q9UU+JA*lM1JHxG@PqGj*Icy?8K3UatjOc(v1CQ=#pF~4l7>FNT9
ziRo((F>bn{%we&6*{WwZMH)d;ZoME?S1Q6j<|8prOgbcZ@#^->bLU?*bcTI>C1E-*
zbj_T=$B{=*-JJe!8<ULbywIGz9LawLC!XA%nYV3*w(#0V_j{zyYyCUB;^P`P^Vynn
z#RA9V4({K%_F2WYSrAoO=U#OSo#JL`&DF>koHDufla^zC&^>jThkm}ZHWzP|S+;b+
znFcPW!XmxgUn>O#@+T)f;n?nJnBOsx?|#~Ck;1ZdZHG;+YP!xj8{8w9`dK9LNW{_4
z0*Rrsg@v9RzH-Pc^>&WLQ4`lE0xqJx&K#jCe2h~<@`XQ67J1ynb47mLwOcPN#VZWD
zMf{y#sJLDhu=Lz$!r~WX>wCmE$Yu4O9xI+IY14G;gc)vKg^DSYvig;hCcWxYGMe<r
zhofhShVT&uE1Aq&*RJPmIARjy!)-V*Bwk2yqDZ9H`zOmdlzk>C1x#rAvElp{$09Sg
zBq_~%tsI_RWr_}yvfP#ICMEfC^e^cUKC<Aa`2O<GQtvEpzdU3TbcCx`FR0doCCGZK
z;I5b@I|OINELjn#v;Gx-b<OQZv)&dYN@>nsyx%p-$6-x`;I8N;9)h!?mskiMQ7FHW
zee2q_oOJHX9)X%Es-;G^qL$nc*cG+pgutw*B|8L`EKt5zy+wEJ%|5YZ6SEQ*&39e(
zv8PN-b60bonC7<TG%?Lh%!ViAzs+L%ZZm!MgomOVU5mRz1iSBvX})W|CZ_qS`J9;M
zv&pCL&z0G?rgF;McRQ<#1BEVo1WJ}{^$3(S0TExecmzsr*^+T7TINVc<-Ldb_xqOJ
z)9w|Pyw&$_?Vm=^#qCiOw;3+04Y_pr#l?)^Ek%=NSF-KeQu^<tu|(bL!l(;Ro=4tJ
zDZ8-hm+UIPX-jk&^X5Oy*&VGHviP>bDt?t&dp@nG7ZT4_>NPDrHcKb@Y|F-H`*zea
zntwLWDX*VrY`Ngs)(GRsH9NJh<%nj-%3Ho>F8ed_?1y!AMQ(qM=SCFAuJP0go8Bq9
zIb*L~@|M!yixL$SE>B+d#dPYCSvE<&;v3aEUS!<&oGhMFDV}Hg;mE7~8`-`_9IjZi
zPkQ^pUo*<SUyz<XFQjzEM~iDs=GVB)ukAAVC97v}%j)flQg!vK)}q;W`b>k4OZg@5
z4ZryQL+izBYdqgQSs)dgyw`mr+o1^O_%#Rh+G_bOe!8f5*!TQOt}D0nu3gtKd=sp2
z{wT}MKlL$9fe*0_2w4&u5Hd8j1P}UPIa}LL!2*5=oVmF<%6QP(h`@YlbDp~U>n}Xs
z#y(diNQG5|ahK>#wl@nieqUI7!+Ekr#KuE<M&dXA{k5B?-&<^VJl$No>xjVnFS0);
zE^@iIa@&NaD6S{Yd`c2tCn61lPP|cW=ZRd~79^{-a7MqBhV?xsU%UHGsy(``t9k@q
zNzKbw&B&B6TwbxRaKj|SYYA7~IoalN<rLSRbqd~p-^ovt-J6q1M@p~g9Lqt?U&R|{
zb5Dt8IvMoWul2$oP0pD&-fOT}B%X9yXDczwb)mZR=G10}v%Xv{LSD!A9Q4t=YAC~H
zdVI(KHxeuk50)x=9rb8l-QauNghSNHQ-IB1bLX=lfpt%q92JfiEND_+6T)$omD43}
zi^8@mF&i9uJftgvkLDisn&_}v(4;$CE#un>sYU+px&%$4ziMWfU3b24r{MO>px_oc
z9*cvbi`f=B881H&X>ioC!0`{yy`seVN*oax$$UO?&g%s3XgHmD<JOp5wwUMa8#l>W
ztEF9U6<j@AwRuP2gNT~F4|G>su+6Idy2fd9wyDqNo$nQn^G-BynKpYzLyUKXzpzSl
zlk8-kgW{}$D<wA?DsphyU5N88Tj=!RgVNcF90ppiETi{Veo`qpe`x#k`h9;l#N9da
zC-y~L+q>mgSBF|yOQ+puIh0l@xa<1<zkNN&>bXw$zrWvZUv=i|qhD64&!(_knPTvW
zJ-}(5itmq)ZekBo3eC)-mi1nfbSpJD740VW<DuP~<z9#X?onLA?D<eu$i&wveL}(F
zaB2U$hyB~!Qhxp1)7clp^XWmu`Q3eXPVagq@7dFxVQ>GUc;@{)gW8hYbCdISAJ=2k
z+s-%Lar=M0vN_K)pMTD{yV>>FyBnPj@^Nxo;(2}UdP}b1|7>Nj=j*Egmv86mKRtMV
z^y#m=S(26Uulj0M1SKC{xb3m?d@biCa*vj75#DRH$!5vXr)s7WUK0GDl9F3q_c6^3
zd+^}(Lr0hO(;O9#MVWv9^}02`MRuvx+An6BmDw}5P1d=8c6!P7>R&9o?r<Iy`1d|}
zVy615vZh;a1r1a_&TD!9d|Tx%-`Sfi4<D~Szwae?$$b9j@2^GtFFZD9{j}E?xGkn0
zjq10x=Dz!R_SL7Sk4j1HdVc<#^Y^Te=c`W4-}vn1W~LR(A0E7HR${*<Z=IO=g{i;n
zFZ{k}{NvlB=NJA8?Gi7z&%aFO;Y#^O8yEJZEqlRU{Zxvz^hE6MijDuiA66>azc2b9
z>#@CmN_NJq{Vt@{@1U{u#0tI0qL8=T0WK@;d--ea<hM!fO<0uNEg36+DkH>%Z@J(j
zcLf#AMVG`cdAyht;jNQ#vhVTc_cyHjCN?%zd{(-+d%_x-qs}3^Tr=j0E&9cwsHG6J
zr}t{ap1Vo*@qSN~`wyruopG@?)%Bx;_~{dc`K$bum(2I?aA3*jisYPrHu|1N%^S7b
z)n)VDI&TXo>rDIp&!hP8>k}vE$SM1<R?Gga$PQ#lRO<9G-hL}Z^~Jf3wo9HqWLlrr
zG=0xcQ>FY+jy*3zd+%+%zg{T$PKfGF=XV))CX>%M|NXCHx8s1%;$*H@JVowO@6LUE
zr_<Y?urQvr`&;OS6UCpt_qFZ+!rhaz=5PLzXKEjR_%65-;qXG?f;HQJhC&IAHsuL?
z%qMk%W*wZU<*sLJA*2<wc;id`eImu%-tY;WVac0xmLaY8-^*tT8^Yepq-CUp1eJd>
zm{9yBKZ?C^iAIabOug@oOEcG4&D2v~pe0t`_OfX@!zIawnynXD&VSgY(q*&l&(X_S
z=Op(q&-oK)$SZQ>?EcrXY`@GdOD<dOr8C*v`q0C*N7OEVvFqcMjhlCHLU7+1V+kSC
zJqCWuUe+c!?kIhpF_TGYWscjH&8PO=wPQ-!o;}az@3Sk1WgmpN{bBd7D4mE|t{Wni
z>W+DN`6a~)(Fzs@=HN4PEetH6G^p?oQm`<D9I$F(2+{`PLoPM2Ff@j!GlZP<YhegF
zR}~}=Iyp2*Ayz>jew-^rhrTa4hq=Oz4Tj7|1SF=Xf@+df$Q=_PgNZmZN5Rz41f&Z#
zA93qxsBiIX1Cc$SweJPW1bpTFGULeC8<%(G`uNY2F%W3)WE4Mr`Pu#Oh$NYU<;L6k
z_bSY5xZAq@x55TSrr`b^U-drP)l6bqaUe#6?W8fsN`vKw8jgnDsw$RiF8sajY80t*
zy8mCW(RYqC6{e<2jWdBRTv5#B+kRS@K1k%5@?gf1EzJBCDt#{)Rhfb%qbpv`o+a=l
z;LYZ3cV2E<sXK8pr<?RNr&)*Y*3abOsA_27)TxSkma)9`TI$}9%xaubueMxu{pVj-
zrd*$rxa0Bs(A~>yHE%4vnY~LhC(!g~V)UEbz-wi5e}^nO{LWW=?cEj9v1?{OD_v0~
zYT)FVQlU4+yUnWg^2}Guv^GCiy4rqixuDiJ=9RUE*93~>lu9=iD}B0Wd1Xfs=VR%-
zeT!euFPso~Z1*zRYkjr$%fb_THpqJ{{%;@QQgiio-#$svmT$7J)sKCh`9Au)UDc(?
zSD)Y1ZHn-7%bcwEPVU`hHNF1X&Js5wEYIc5us!###_K|V%C;GO_vaZeR7v`D>`F`R
zuGf3c{9;*Nn&)4#>)yQCQ)h25IC7=;%Kdv^ydS3>o&K0%<8wE!kH6;x8+Juh=q`W#
zB7Vd1+8(y)>Yd*&zt)>I$N7YVmy9M?<kPkDIG&_c-zz*O_{ZvA$V|<gkON}V?tQ;J
z|8<JVNzuMgj;2JfnNM|&PpN0fh-zAgnI}Mr8J3dZ=@yc*$xF9JkZhxmHQj;?hS`Sa
ztS1FCQ<Qeot+^rI{&x%n_B{`em@~;a=62_2i%%T-2b~l{Lm5~3Ji5Ep<B{s?fRFF9
zkMrG)o!V8jDgBxB`7`FmZV8M679S^A&$nIU&tl-g=@H16Ii-2k*LQLPE4KcVQJC?Z
z^M~o8C;|1EcG3l}Yrpb&y+3W(%Xm#-N^-zC$2m(UEYbAX#IwwTHI?_>pTn2`zTUKh
zQ|?r8cYmUY`jH2mZJsWU9!WEl*!Ry8WqT$1w5*I%)nMt9{hNOa>-HI*$>bB7a;POi
z`rV2hwtFmh>z!YhW_Fk-H%!FM)6S}uv&o`&?d9!$ca&W!WLsL4>W{8c-}WFZz<b%7
zwUg#1EsBor)V$fHHK%x4+dS*1d#115yO*Wq*BbGnf@ND}eq|jpeWZEd#B*ii;Li-_
zOiDT2jw~(p=eX;3r&UDp|F7du>lzHdot~Vujn_fGdSU7+QQ7zZ-^u*F{qvDV$He{q
z0?X!e{o8Ayq1SafDePX|ssBH|yh*p6KkLw}tc)2#LFR7Fjyp~#?G$PInzMO*<~mvH
z)wLyD7uTh%KPGu0>Y`@m*XM^%eR&m{xr^h|VLz>Z8c!!5^<6P<bzH&aFVh)<=SOSj
zSDdy^Rm=-nbM&0MagXrA-ZM{ce17iuC0MNZX7uM%tn%JhY#wr4ve?d=H6icWqq#e?
zBez~zTULBL^8Vh$>sc#U;}5^Qn0sxDw~MlH<cX+|u%I^^3){l3HSZO^Z;(^My{^4W
z^PP+HMoZI~QL&mEPxc$?n5ybVM>?LHd;MM7OpY~|PAlJQy6tMb{cO{Jr@m<G6$f{9
zwmaW{U1zdBFV?;4xT<*Hy6rtZ8@|WA|GuWS=+Wz~b)g&B^3J|~H{D(HjL@Fnk6kOj
zUHm`8P4LWDc4^@b!;P$u?oQax_;yl9CT2DQ)d8@C4bMi93W3aQ1j?8}3fQv|$Y7Xl
z__C3Sg@uBh9eg_a*3=N+;@b)WdtZkaOyN`Fe&l>=W#;Q$XBWzI8e66m1*qg0Pn(c@
z`s<VX;;d_~$*C9eCq;g_@%<YwLq;EiuQJC+O(i`hC66GLg$Hc31FpJ#=Woc`Uf0VY
z-s-ShJfwTZiP)SAxnHz@tyt8pKS%MALV&=Mw2r4j!I~3K6zg=ltaAJQarydi`>RjX
zDg&;|oi8}XBKzTppwX0|HdU4_ySz1y*t3<G1hzA=E{`bsb)V_Kkdc5yN+XMhj>g9+
zmpg;*@AIEL<&@37P*28>SI;hR^0lkJYWe4O>a5f^OTDxhgikhoP-)*$>}ql3Sl+Kq
znKhU6&m21+mbz8v`7QO(%Qp>7_x9iJ-T3*j@8)%xyIMX~nE%V^iH&1RW&hXwS*XCR
zdCAX!hyy1~eeT|3|8DwJIWIiaw)nBk^<S6DawC`L{ao~B_qC9hKGXk}tu@aK=xxtZ
zzhm(zggf{9-50g`zpjR@T9@k`&Hh01_qS&zX)^^noL62_YdL=2?xoCOs|cHfdB0uL
z`E~0LuQ|gVKXYn%MvA=9pINfcBL$Dxl{MeGe|Ulam%YZxo6}|H6yA=q&pjK}zUG>C
zZg#HrV)OS_&mwYS*S#+Hm5%Rvy!(XZIabSkU6B*#{|@`0bJ+Em;NlqquVfd43i%lY
z29cPl6V$?ir5AYWgfw@^Or4<gjw^M742Ic;FLfFk8KK-NaBHvl$)ek4U)HUEp!>w9
zlR@R+(+kb1m%SfFtWw#2d84tWj-%M}B`b<HzOJj4|KQ*maz*W1NtL3!+`WC1u2gMV
zQEIs0+27+02WLl}>9WyY#QCr;>1_AGyXjfF4F3-<Qt@<p9T_YdCUES-xwS7JEI(La
zR#AVBxto#GcZO+nl%tHGe%Bg<KF=dc+1oa}dvp2p<c~UYE#{}oPq0&{6R4Us&p;|-
zo%n<fsaH3js`!e&RhawrEcZ@#rFVO8?U`%!tXSwsqv)lM7CGnE@cG9UcRmiRE-Nj5
zxFb&Fc5-`Q)_e=bt^W4&Eau!2*SuFFHTQ1Z@?e{oyAOUJe)}W*=>oeuJtDVtWc%FY
zw@Obj&}XsUd!c=~ywU2W8}+SoVkC+sJuR+3+qH20*-~dO3l@jj)_&^Yi#M+hzG7A^
zWKdGkEBJbo7iVjQz&bgG%v#%?Ft$Q(51}U61>H_!7M+V2w(6|jWT7S`w?=={;RcV_
zd^$_FWt>u)t-mzmme)0D!~d~1UQIWAL-SIurfjO)deE&ZEa%j!mxcT7+ZEo%e9Ux6
zk~=uHjP*<EQ>EGFj})gzv>4vikJ_GGVC&JEu4E9My7lp|zy$H9i&*`5%Pkt$FJF`A
zI`6OQtTi#pt29sFanQaf@ybSDw*U6|w%u#3Z|##<%;MZ?z^0SEBvEsE^hAymF=9n`
zOUlkZ4~=~NVAT|(`5zQs9zR&f%pdYPgW<*PMQ&3LJmwM#@8B)Gb0hs*W^|~6U45Zb
z-hT#>M3%nPHrBbJF|ujuVV27cs?TNS9<wan8qRydW_syd+b4XRRg-pE*_5y?t+~nh
zV^f6F2HT9#jd2nWv}e^Q+MKe8OOEnXueJZ~ocW1$isPc%&rK34k0Y&mZr67uEshE8
zu!;6o349qiqjIM~xqfQ*fv8igLMu;b_*|80?CALJyz~P1MGj@ZC!fv4ebpao8jGJj
zbs^3#SnAQ!O|j=gZM$UFhdA`LY`B;5TINyj#TBWSQ(hmRHG_}y*XG89HsAj*oWG!&
z`RcN}&gJ?1i+5jF+q;alW#yLYQ!hn&DqD4IIqPgB6emh8J!4~%%)dE#&+@twy-!hE
z4=!k|D0B@zkrt}=FMM*?)+G-OCo4F-x$(ei#Vu{q#ufKxu1gHG)Y&HgaYAO(f^KW2
z-B|~NS8_!%7AG2fbvw8DDYx9b!X<Avu2c#(+TL@1gZ08EUmThq|I1js`(1cJy|~P@
z=bP5ZoLiU?BhT{g*o1Xqmn9iIuP*n0rTFQZNyn?dUQ!OZWqZyS$@p=tea_{SYCdP-
zAKt9j(e>VuI`7>7-242)aZ?Q6%_C`VVoP>@`aidL(mxxyWyd4;FD&`fEp_qT*O|Zm
zSyayM*uF|`+2xC0>(Bk_jga*J>JrZSL~fZozv$eHnttXsFD`{0XufmKj^&F?+xPs<
zokF#<_Z>E#qV(vz?2V1;*Drs$dvUMfrR)Y(H&%uKCoi=t2|q7%oJrWuyMnJORU_!G
zRNnWyDHAsEcdwcK=iau0hg{uKX@%Jt-Vtn~O{F)(Hh71AzEJo1K<fTS{kd#U{+;uC
z)pYs4SXJ<So73z!-%bg?cG0bO?sO-U{73KXc<u$YE!ceG7oYsUodteLKaSY{DEv72
zNA>^JJKj$|@;vN;;IT9P4fQKN<!^nEzXY@V1@$OlB_h21h4wGWEPz2pI<5j3Y%<I~
zyd^N`enUH?2Ey6M$o$(LJaymKUx-dwaP8cSutvKjnU|Pjw?yy0+pgkq?2^T`uxVQ+
z?Ya5qx9amvPgZ2U-qNkq&|X~V(e>xVOo7+Ol&+mV`T6LR?VAs5*C-U46p+1fQ;m>y
zph(n2dCNGF$nG;%+atqsKb35o6_iwbEm!*9xvXh^u}Sr578S;GA71%V^f9ey*Ni{5
z3lGeXxY8B#;ECmws<2%%=fn$XH-9u2E8L^9E$`^6-ly$`TUt%$|1ngoy_s}rI`7Ph
zM-=U*CY^n~XU@4h4L6GKl~z_NTUYK}HH-K4C$F>XW@Ra_%sU&ccXHb;GtK<ecGEp?
zL^`AX8kaK9e##mxmi2S8sebUfolmmjPgX8Frgc;A=Z4%$^O%BKv)-EDKi>ZNa>B8?
zag(w5nTNlERz40rE*&Fv<Low_sbP#=eJ%N$Q%#pLc5v9ooD;2FxgtyT_LfsuK6&}y
z{jhGT$YkHxkhxLGWx21K%Cnr$&fatCQ^?%)xf`R;aqnZ?z4ctlv&OyWrp&C>%}z-7
z4L!eQ+LdA^`-xF$qESD@>;pt@97z4ma$<&7VWLiIk`W8H-^$nzTPEMVT{>^w(@9c0
zJ}=un*>-bqjZBXB29<p4kDUwj_c0X3eg3jpC35BSYgwC(y!y{>J2&Iu!EFLu527@+
zyLKBM{gR${J;?cS`6Q3kY%Z%-8yUab)z)!qLsZ$4%+3(s47D1LtJmi(tCh=LeOALJ
z(@Ex4n?O|Fi^PW3D_IKD-tpE|tXwqD%2Qy6MC5`NaSP8iH6M=NbTSIr=pn<@_=@ER
z^OOfx5`sFDFL=#SX}PT8ZqA_cQN>-bNm=J%J7450!Gz4Y=bfBHeytJt!0@gn&HT>9
z#iv+{IG(&0jVL^CUV62p`EG-Coxf=R4?h_fgR9JkSKmDue$(si|2pHq{zGs2%70H#
zFewr`e>MB+%HIl>pPBC$KAga~N{1&UcU4ZbM81yowCQWhj7!uywRyEgWVmug`&Ric
zNDFE>Z)VQ1)A{D+@b&4(*VoV2wvW|hX_?`<z4gG;GM=AemnE1OHmF=VBf8ebVb}M)
zuJNCbJUFmVglVNt{6Z^jy@j$e@^_>rq%0K6J1wG`=&G&GD)PWbdsEkflCXn)4dN<#
z9EG#DO_rU>Frn#yd?T|#-tkj<>2nWFuRMEMCUVK9{ga&!&307LY+K+{w7b7(p^N2(
z(+sg04Sv#r3nH>3B-Y&ikQcksHj1zGl$ZY5+lE`02rIsGzIFfSv?FigzMT&FrugFK
zCGS;>CM;OWHcw0aTl)jYg*+eG`uH9`O_q5nFBsP>D0pR?F^8f^*osO=rbQzE%F>t=
z=e>3GZgKFs+JD1B;%4q1g}4xXOS9ibj@u54E^7K|f7Ft>US5>rjPvmaDf({y+jx%!
zFEkQPaZ}T5m5neHjZT{+DiX#&E!6tL4a>HZJ%1%+JG>t+3=v-^{YKM-+u?Ee=U^c|
z^(}Vy4qMyLsjK?`r=;d}IA87m=O#RFZr&CTo`2(b`$mf|FP<;|T%KS5<J$TgUYW0i
zw3Zo`wWrrD^xNMq_C5RQQTCL-AHR5nx}V*C^}>6TS2L7P)tMd>(dkOkI^FvG+0C#i
zC70H=?>sD$qV+K${;}q+eLBrk`O0UfhSqR?F6iH)@Go&gmwiWI)<gLokED{6g3VkH
zm0VUnWh?Oi?7S!T;STvqKcS=3{O8_aw|H=k>s`qANXZ{JvY)P9-G7wxN^60SjHTff
zIeV4~{&HKRug1@rc|_&ajd+hO&sNEu5c}t}>FL+2pWbDi?YbJeEA1@r`E}Q>x?Ry*
zoVV%ya%cITxifav%Ky2<J3pg;%Je_7-3;;UkA4K&IP?e@&7G~%$G%3cDx;%j$7Ggg
z8z0*73pD?_`29o0kAsK4I;r1TUmz%wx1+Ma;JRh3$;{n`U%K|Zb$i!lt8q*J$m;4B
z->+{oHAq|F&vAHKS9@J4!-u`AtNk^XS-oEQ)U_b<<Kug-M=T57-YZo-WteOKNVw;@
z8=JPRxye?IzST-{D?aX?c4xsm!yP=ITO-!#@fz%{mOj8~BD>8}<kYLs1dE09jh>_}
zOaFK>eaW9(NwqG4RcR9^Haw`v{x$vK=T4a&qPZ#SLmw`d%T8!Jx$Ic^X6t}mQ)<7?
zotTyS+sEwr_0L~koHSATb}{Ld<HPzEe^tS)>+LzYrp3%Rai89`dxyOQ<ASrdw=QuB
zW1YC<`NOE%?aaIG<V}mwRF>g2@3_86@NfAwC-t3o%eSw&RsHqHOwI{T4L|Lz|6VjG
zd1N7B!=TY^yQ(U@`T6v}-<j{fzxt_p;>Gl7b-$eJYaTEjWPKg5>am&qmw?hmX~A`0
z&mOv*-TiH)j^JIEH<J9V_E**^?_9U8QZuin|LjhoMH7P8<$Ls>JrHDn`0a%y*?;~$
zm{M)QK2;}Eq<Q*|ey<%GE!7^ouD*Rx&+GW$h~nRC^`<?4ek*@aaM^R<Q*3)s=(}Id
z{G9h6*{?b$(S=#HgGYy9buFT92My2$DG*b)Lwiy|h-<uzK+Of5bvwvpn0<KbcF--x
z$aVYM$jJWNW&(BJ*FRYNH=#|$Q?}pp6|aEGOF?nRjl4WJ7wyd|*)i$PQM)hu%PU@f
zs1kquRqS;xGxN0!m$N*Uhx6?`S#kv&-@D~MTO2Olr0iATqSW;)`-o>p^8t58egkeM
z6aNcOE%Hv;#QI(r_Bv*iS2lIc^4k@rA5Z*<UNdF($&lDtHFNjNpMAF2-d*I4uuI^B
zM%6aW)QqY9di#Z@H2kwwn&GOr>)PU?BYy?@B!Aibs&vW8VF^CpUO4akm5lj|xb*G>
z{kt@q_2@)_d9zxJyqV7IoO{53e{GFz=ZT7cdEY$QZ&oS_Fp0h5S9zPXfbsWwJtcWp
zi%$nlZ>VLw;*3yE^I5;z$Ua5r--`=NE;o3VSbpW)_<GkiZ!Ya$y7xSCw%lHI=hQ0C
z)Y_5**Q#dapI#+-=kF_}Cwo^K94gdc+HuAE^P<mtZrppaacjXJr$7&z?|ZLR)y8X>
z91u*-%XuyCHnFbKZ|D1D{z*1p75>YaAATO5Y1_DFLSdZRZXc=2P%+;*V&A-U)#pk4
zH(i*dv)aPg%Q#tix5*9d)l=8JE_vDW(j+@`HCNox?GszM0>xeQXUKCux7X_lm~!gt
zR%4#B-Wg(^tD3zg$IeMLcbmN=duhyRFR|Xzn^&9c?qAK^Xt?N1%DukT`JYl>E=xPU
z?zE2azpJ)t%&(Rkt*D=1(RGF2#LZ%bWKOpIp_U+(Lju(X`8RHPoo8-atl%=|(FEfV
z&n<1dwYNi}PglF|oyZ<4$jMXrT{A)G?rNSD9_zf$|9#mdlkvq*;<4k^#z${G%WvB%
zB~Pzvwn`U`*?NO-(dYA8yGnLP+|yb2C}(d(?9r=kYTc`i^uNAv-nuD%&0!~=LXW+5
ziubN2cW8TGPO}nr`nue}<|JFoL+9?#GqZgE?Om();DWWw?RR-M0}=)NWs;M3)U#D^
z_6Gc5Y}k@Mu}ElAVdjKHW!;=3&n7J08an0m;T@a#yPoQ<_?;ZSea6*CbIPRj*Y=hw
zYb%?X-xfQ5>CmCS4ZQ~E50~5!{SaNV!SKdHW{rPa!#-9fviB%F-?URpSUEc6`y%JP
z=O6Cbd$v?;!t6^jveTL~^7j~~S1~@EA!ZP{aym<m#oD7e)ys<m#I$ebMYpl`pHT_g
zy`^;4^2nU&di~vpbQe4Sa=ErzEB4e8#`>%IMSoYSzJ6A=yJz~+tiEN=x6b}f;M?YZ
zAc2o(gY}lqA0H04O#YZ%AkvcDAMkN*i|w42RL?uQH<dGH2+X+rz|e%pMqVwE(Lt4S
z-o%!jriKB+hl6Z;y8ceTA>Q3l=W;taKCZ<%Bi;YlzAM6sE{7al=P3WQ>b{`!waR4T
z%co!Rgp!PF#3x!FZBtd0DHHtu)6>PR)p4QR{GJmAE2{6O{&p3X)VR7hlP7tRtHiMi
z@8l`>9xR#^BI)<yM*;IiWf=?Y$d3}Krxz^>Dz$N&yYg!=vz6TC>t!~_cGw+>Gg)28
z{rOSlndvuY-)z5m{O0nX&)@Srt7H3Yow{ebc5RjJ^Z?_2H6uILF9PlYGr!%PT=?gE
zqLFY>gYUndlxN*dqOuFCbpo!Pj=gFt@TWe4x7SAJ#(v){n;VahEdTq;g87qx`pb23
zYaZonJ^hG{;RD0j%5MpbvuBGW#h4hib6rxc6MFvA=wHUE;wH}1VKy&z+wuA**=TVc
zdvV!NPAWjg>eb&xlKm@hJ-&Ze;2xtu;@#cS7oz{Lyfic1Fxw?Qmr>^3b^SaK?}{lm
zstcK!zkHf#_b@Qs@3wP>g!Jy!=|3JFn|Afzc8i0J?^yW%ij+V2yda_BxX%G+MX@Vl
z%Wjna<X7i;X33SBmjazdgHFMLrvYIFF{0oH&2W%g@Eb#B8nKW0f~Ol{_Teq~4b4$*
z9=x?T+`IU;nZUl+;Sa)!mbrX*qHJutL+)hmt)5_S%bPQKT${wQy+T|z$^HMWCpXD;
z*2=ZFCO5k<?7s20?EB#+l^0@yC5DRce&#wo^b~LvbQbI^P*OQ{ZSre<mZuy3F$&I6
zQQT!7m926}VxH(M|9`Xo?3%G>wr8WpiU}=?TpL|v62)9KTGUfzbc;&f&i!BZEz@xC
zr~Nv15w(pwIc8p4&NF$&q6SW$b8COS`Ly}sTp#h;iiJyNocfVc(f=-j<HI3=R+S?y
zmi6g%PJ3GQJIa54{Qmjom2>v-zR%~^cyXL?EcthQrhaF+;a6s{qxV+0B;R{J)!~O?
zL$YFfy<E^1=7W=uuI}dK%2486r63aFRKqs)z?S?EC5Nv!vP}4#x6{{nzTkU3)+_hc
z${*OD6_<H;*|bM4UX!Dmn9dct9A*3$%{pP**Ij40dSjR7ZVx^iVG|(!C~@`fyP1W1
zL#;R8nkKMT^Y)8l|HHQ_epaj#OBS>~=X~vY>AldyHv4TVat)ehK0Z7<<)G)jzK(s*
zT(c*q6n;<GKl^Bk#F}Hz{4TifR!%73yZ4)M`R_%I%5R?}$mh)3E1+8J61m1JRz~RE
z-$NFk-g(cjdV9(*Y}Ku(sk=6uUw*ASG}AS5s#)*d@Helv8n3;z<&MbL3xO}D&R*tg
zo;!2fskf`9*RNhvI^&%;chdVJdB&#^T}Rv&Xl)IfeXZ@j&6??@smC*u=cn>L`qU<n
z_K8<J_pQk$A5*{6mIjXxO}*h+vhm-?nO`n#@|y0S{kf&X{b%W($|q-Ht5);z+<ea8
ze~tV0G~T~oPuTejWqjoMBk_Bu)+yhc)4m?l`hKuQh+FgfE^`;5)vlbcS2~*UN4+$X
zHg;9*Q?WO4{Xcn8;{?u}guhXi+g^&4&pxxjY_m>j^U}qI*H`@cz4h0%%yV1#%cg0^
zM$c~9`}J06)Y6-$diyesG&UH<+J#5fK8rX~pHtg?ag&qV;mfOLiC>9)HI=h#a!2##
z`R;F7{8om0S}Z%O;hW@>T*>6i(O#e`p>82#qN>4L(ii%6hQSNb4WDjke_2uxQzYv#
z>HRlNfxGLcERNZ%dspM`Pm^nF?^G0<NnQQcS#elm{?CaY&i$L?pQ!YKbIn8hHdDP^
z<*yGr9gBs^pG{a8pU2VvCBMgYPSU|i=@Cz+@N_>hJhSlSKk2mxoaS6Ab7B*><Py>m
zeimoY9cEs4ZsCg8xxAfs?%aC$Lszn3nv9<2+OYgP33pA`%BE(9-VDs%k+r06b=996
z_qG`N%0B)#@nD%_=)o6L)2v1PlY9$zbeW#sDDS}hO^;V%f`x(S6Vtn8(Y80P?o8Yq
z=WD(*_|D@?-O;i+J2!JURHWa_sL|TnUTwRkyz+5Ke)-&E7bA{du|4bEJ<U0+?$gpQ
zvo>;^;(ZchI&IBi>q5J_M{h)<OW$#wc(v}-@9l?v$G!bJ-IXO?(DrtLLTdc!eMesf
z@BXm!OWE8@?c3Hn$K|CgE1nv5_8=FFUDM+og?kgH{HbhM?Kbg4sAAsqS6hFd%;q&I
z{d(lchvpD2i&qyvREv20x^zC3bG{GfbPoZYmDLyd+x7mlzRLW32}@ZDY6Qc|Hbhwp
zn&u+AEXCW12AK@A4{up&WQ<ytzK!q(HKO<Z4u7G+Ea)7xL~id=S0M!le&0Kn^ENC{
z%{uEgO~(6N+3(lZH8&@P|2BA}7HP74Y5U=siq9W^FKlgo&A^_YzF#j*|9*j(Ku^(}
z$q9k1Jn0&~lNC}myDpnVOgZSP@vCfY*NR!fGF}(oZ`;&uwrEDMOr6lJ3fulKSN=SH
zbob5Iq;HjO3U+)R6M{NKl${<eh&Zoj_h<pj@7)ZGEzUPdKi<k0G3nras~-lxliOl*
zD<YEH+D(NHHHj?mFbu!1y7bPIZ{1DZ9m#9netf33%9~Ny?ArlHmxWxX<oGvEEk1Qv
zfA-QZiA@~_Q!bUrJPtMQ*Es&rE${7ukg0KzC)egwWozB~8f3aCJooXQ-Mu<jRF7>b
z=yuWnaz4tcT{`r7*_J8a-iLKv>T`L_wrSey+DWHOPcFZ6^{GXJ2G`BfO)_sK`YKsk
zJC=1U+ju+KrlrZBLE(qWI@L|r&Tea6``xSTTtVrEn5m)tCA+5Qe@dC5dan3{(?TZU
z{kvoJZ{M=&JKb3v-1~X=5t(THrk59V9p@CjSDkh=MB`B4srH2@K05Y%5Zh?sCNs<T
z0sr=HF>Ti4(vNM{l=&{aomv03D)jsIvNg|C-ozc4u_@r|wJ?t7E20y5OL==63dO#y
z-FoxejgR{_{yP59CRX6$&8?L$xC3g_n|Ds$;%3g-9U84wtnrKO1@Fc??^cMPj#B#2
zJp0e=bwwOAV%1mAZC6}yizzt1_MzkQ?(H{>w$AQWSa2;VoV#2;=I8cr;ja&^DKA}b
zwpE7lrmKKn#ch#KEE_iEGheIYijitKnQ5S_{Ya^|QqRruwtBUpq<WFx;;?O}_wVw&
zlirc?hvm*=iEXD9E!;ZO8M<pOTije9bzEoF%c_PZp}osxHJrru_3yjxs=KQ;yWf9r
zlqUO{sW~>5TINhV6MeXQPd?ijEZ69N`Rk*<a~^&;e|^@PiFXy0M53B9gtDJ{dTeNw
zy>Ga$zS^Dd`-U#dN0Rafvlg^XPT~mQ`JQn3@>)^06=f~Etb@Z9B1DAw+Dy2w=k8qn
zw7K`tvU3t4SFU{D9h=DaM7(<8d%11rAI?aq$c<?aepY;VMl;V>?d;f-Rmtwl)*6)8
zS3G{Uo9}Se?R9UZ9Qp%%ugaw-9gkqT&pa*RmWYvK!nO`h%P&3|2~Q?0_L^a~>GjcH
z2jbb8q}yb=S6ztxz36J}iYVjf&2L)HAMt({qQ0{;uuo#a_2RBIA&Ywqd?#Kx@!fHn
z*E!u~lJ1pfj_tLcaLUn-H{ORMu(E!?-FuU~JqM-)eZMZ()PHYRo_F9HxmwGc7hY|A
zH!r-}@5RUdpAnBNbruBw{abH8{gzwbec!w0wHCI<yfNK%Yo(HZzIQ2@pR%IqaXDWv
z|1Fo9;f@=uM3?xn9{l7`^Z0qHK+Ig8R}a`FmoQ7V%v6@V()rDZ<MMH%6Z3ny>fY|3
z^e<$&rjeS)`Omg1XI}j-oH|R^{`z}^JO8>JjwCKrJM&rKujcKFrdglgAO2?Ps&lq}
z)lbP;Jkr7cXZSmBsyr5v`#;PfX4V$9ZwHKRYaYo(tP@YWpU9tH8EO0SsgM7TY|o~Q
zdH-r6|0d{bUtj;2|NfkVyR~XxmA~)I|0vLWP*v@n>tTV$U{4KR`!~~q*XtHPRM1ec
zy!W}LD(3P2^-4{@v6RE0Sp`_Rh$x3a6T0M<!=|9|3Y>!(Ad_MC;Vp+vQE$_}^)?dL
zrv2b?HiCnrVf~pe7t&sxNm<rzwog@(-=#?`YoAikw;lWUb&I=tZPDG@J9(R>V2qA<
z_g((o@+xocR@|uG{o`fU$5%!vaSef8mk;dLvS||*IX+Q*v&2P<Z|jQQH=qB#Y|_nD
z5o|Za_uS8Q-JVssP36Y^r(PACV^*$wx_otc_x$x@^Tio&9FKc&ltm{{gyqWVRY%+X
zZ=81gckXb<vd;4LTebRKIc>b(|9y0wb=$r~kqI1MJY1%hiBv?-un_uZwwrsaPM=`%
zWZs^?^GoYlg;Gjxubq__wejkuxUO^OV$S=-Za=N?MPBP(vxeWFRVT}ra<<<-zxp&w
zf9w&tj6-5;+V{`U4^uhv@AcEJCi}xhS(@9q%vLv~<}x-p%-C44b)syIhx2x;9_9aW
z-=vlAc5E_Tyv(53Uw47%=1Jw((l+L5eGXNv(tEwgGDiDL>fNt<-l@KKO)r`K^}W*T
zwVZFeN^KTsq`b7SOnbdZWa^6Q&zEdNUN19AzBhCEnZ&5NBQsunXkL=P#%)^XxvXAa
zF|)^IZcpFkc{<HMJ!yUa<Rg5OO}I9;UX*j%{>P1{p)k<JxG>bvHEU(~^h^`Wd`3nA
zhFNF1c50;PR^PnhR{6?LL`kg8@4GVJ#*17AGgmm~u<PzS_soY?vCG-YNYtkDnrJtt
zm&Dw(a}Iv&mEq~Pvj0viw2p{&d2cn*e%{*i)~&Pt9o+NODfK$b!N~lab*$&jj2$dJ
zHk#?qKfTtfPGy<?+=pvdRI0AaKk95gU3^7M`cm`lZfZAY9e9#-?Zl}UK9?$2zkWQ)
ziF3wRT@Qh!Cl}8s^xx1M>=MCpEjjjiyvCMoac3(0g6F<kUsMp$qLdM0b?M=fkjEt@
zc~@?)o4(YFElX#5<NeqJGYsOtxh*?CRcb|XDog50Ke3~oc9CAs{H96qFL&Ad#yP9^
z!?~K-zs@nP%r=!MUK-B*R;5N~c1&8a>7MYVA~W}WO?&o5eD@`>qR1J~_cBSBt5?K}
zwXM2P^uhG@)I0NPU+-Hh)N302_Eg-qb;Y;-^2Hu_b#10Dt9o&lvy-6+x0Djki8{%!
zLj7w_`EPB!CeCrxd?VEVnN#L{wM~!i{Dz57g)NL~m{j_su5a%1IdEYTXKIzdni{uj
zdkRz9_mo3FKmJz{R$I|8a>S+ge1h;B?Twux7gc_qQ~OueHUDMh@{OG@rhJ)Xd`UXU
zrNCtRz4yNF@8A0J@8aq$+}bSxwO_?&-Ff`|*~GWYt)w~Izb3q~nmuXOxn(J8&Ykt@
zyJhvC%7>NS7o5a-;LDvr{|i~mo@%!4d7*!5j<8INxI>P1<m_jY84QZDi|cvA;~S>0
zw*12@y?^o@rL1IC=A7OeKO0Tgsm}`FU9GvxY{K=f?RUj9(k5RyGtHc<q%!2*rl1cu
zpSf~&dD^VYJ3n1jYS!yRDjoS(xHj$ExP1Axxvue-**0?fa)0i#d9vsEQL%SLW*b6p
z=Tu*x5wmNdoXNAOt%YJG8T%siEv*k7)iIU${^xR(d)$Sct2J7zQV(7(zj(6LRR2Z}
z_pBS1iq`{M3XUw>`OomYVx`W4;8j|UNpXiangp*?dvo>7jn=r<$F<t8<)_T}A<wyR
z`m5{qab-+#GrsxOFI?4LwJmz#tAlfM%3^;eq)6T1(v3QJAnRGjeBMp@?BT~A>Fhal
za_iqCho#vyd@pBK+~d-i_pR*!Q}7jy!`m9ZN#A{xxM)gje%hB<R+Z{W%kO0=7Ws0|
zSlaHT@mj8jIr!qqU`??!rS=U^dMDkx{!IGCe(UcOD_1FTrLetPQJH^w8T%>$wIf^R
z2d;bD&(tTn@{?2W|FkV@gf?;-va)Vge`FK3$hLQB@Uz8Rd7=`Y&B)LCuzKY}MWb+T
z#~WLBWjCx44&z^7+k9>D=7xQiHcroN-|CexDG4ud{qO3q>uir8r|UC;iSFU5-6u|p
zX4h<-6|}VQua(=9RF7%zvqJn1mi#aeKGAUI*z$j;P5#dpJgmX<X1zKOtH8Vtf&YK=
zY~2fePeib!cJkfTw*2zZ-+pVc6PEf3)ToEm7x4NCw&IkCW!9j6Mv#I&(qKEN#=})T
zfenUPhqrn%G_*unX!kbaZvSF4f%^0D54Sgk?Af;Qr^QPCwO3+a%0+FRz5VXx&W6bg
zSbcu($oT)eZ=<Ke!o4wz=WV;H*=2CJV#d$2=N}(rc`M+^zk2?))w`<?3aVPD8M?mK
zeWY?IQDVV__8a`pTh3jWJh^1mnc)1_L61%>c`bdjs&vw>9t-_Wv3D{4_C@w<?ys+l
zTmLU2aD%^qt0J?v-Lfn0nLDd~IRvnM`reUX-*+MLf|ek^(hji~g<o%XMchAe<#@)k
z#b#bkXMUd9yY?%OOtoj3kaXtV6;WofdeJ=BV^S+`sm^vvdi(lrt&9)vZ<`Cr74H+S
zN9jyncSd`$eYuLzk0pP7SQ_nR9VGU)OQu*Ie%$hS0_%yzc49VW!SX4pvzJU>`}*e`
ztGjWp7z?v{-)3(QpIRC4BsYEDinSAa9B1$LI^~n*mb_X@`OIp*p5?Lcj2_k$tt?nl
zIf2n+=A}!{sn4ctdUf3M*)I0qdZnk9n0+r@X!WK_Dd}9*{Owj@9mQg2wyl4Vx{7K3
z42CS9d)cn)%fHU$%$krr{i}nRP|U_l!E9^87JC^RN&c${`jHW&x^`wz>fW<oOcXbZ
zROuYi`SOr!O3I(r0;}p+?Wg|`absBg!^r8N)ghBb_c^|<7dXYR?DE%Tl3P!x9o!)Q
zBmTs)36CuL{<r4{O;7psnA_;1<V=TylQO?Vbo-?=&6b?`W1`Q8CzE_`Uh^|DF%q7n
zWqfGcwZP0k?X_{sr(HX2oc!<B*VfBlgpU1rd-0=!Im4yxvY+h(9^|aLmsWZ?B1=KM
z;|ObChDqwAi;G%(uQt7G`^BOCrak>p`>*`ob32{|pSk(*?S1{IFKaI8G%sa2mHK?!
zbH3t?h~-y*6mMD1=#y}wdt=AUnO`4oldhh<XN~BBsJA(%mS6DOoOx`ORO?@lxh9%i
z#;;6t+b?!(50p*Xq;)DN_}0yC@06rPN4d9tzwWJnYu~!=aN{}?)_@+<k7wGKTnjn%
zb(MM3^oPYR`+t93(7x(qj?Bq*FTWN^<lk2IaJSf3+*)wU(_quvK0E$9-~5+sOp}`K
z*2ns1GM|lR)obrnzYhJ{xp7hX=08fSR!3OGn+NPY8uR+3a7#?ckDYuw@15A|rmlHw
zvFM58P4dPw_GeA`9X9E~dgm|p`3vveVG}%~zFjIKv~YH3b9l;0Uo|PqHAnWlKISqx
z%YMaoo`XtHK%ulk^6lEmqMNt-`n-tW?40)D_u)S)l=|9xd)auLIqj_1KDd0D%a3i+
z{P__)>Y|A@YacE4l}q-@75wj7`swbYcZUs>kIOo(?)B#RHs@rVeeBxhb56RkSCvm|
z+|6yWwZ(seVd{@nO55eRU+$3AnKmQ4@S4W2fA(xueRngaaPjnRzN>rwbltT4Qio`b
zZ^^5ttSXuuesan0tn8W3&bMqRS-5%D_r&&^J5I;5B37hisGnW8X~W7_c^l@IM?8O?
z+LSETa$Rn^uFS(mUIssha+3oG3|s#hC!DE#WA44YY?=B~#+si$kH=}+egEkHhs|*=
zX1Qnt8aU2R%Hp!IQP4+}i_oSwIpv}yzU9Y8AcJAn;V&00j8MzPncn%gEd(0g{}Z+H
zayauz)2rP!r*WA>e)o@SVvR``w+WoQbnDBqzu&EEJf`Jpc62W*>zZew(!N;m`Q;Ca
zGCIsMHFNgN_q}(QOHQCCXwIaBZ5$SU6Q&d@>~!%tl`xHc{$Zc%p@#GIl$xBUzP#&}
zyWH2TUxQEH`0|dPWy`dGS^YNoX)ybbwPJ!iyUGL+9YYrm?q^q@d=8g+a^aumfsUn~
zA5yliYB<h0CAGl(XL{4#{2lL;iykaC>{5O7=fK|9?>sWqXQpxOyp|Shp0${Jt80K*
zY22C8Zvk2<HMQllkJTRTIquf>JZg99Jj=C*k53jks*^W$Uqa(tv4dOIizy#;T|HHQ
zhIuQ$kKvS}TUvK{ZV7gD&y%%#F=?Z7m7bt<R~cWwymhLPE6W<c#03vlN`EV#m%mtZ
z=_UUcduQ)<TK(46hxMq-jCU4mUe$!J+P5k@U->~*$=g$Di<Ptv{qL&UuDjp*Y~{*L
zTTktE+IDX9+SezH=jxh8K3yw*^~xTOJx3as`|iD1w&lRXq~LJBsul9O3syfax1X^}
zb83edo2r4w&(}gBsk^kUISVFhRyfA91pX1~IN{&aF^@5jYo*dsX92@$JPuFNoO5I9
zy#<pq-6v+=4^GKyQwo*~PH`(0iDdPkIPtp(?}6Zue75<=vdmJ~PS4sa(G}@+?!4>v
zi6VNv?moMg)H<m<_Z-o8Z{%*`NNyLdU2bwj*-T@~QsFONmWizA*Kax&dWO4d<!qgB
zeQt4K`zTkJmiu3PO{Vs=f8Mp`p=^%$ji$!BE4_MK^rnUiCw^OdqiW+8wgkQ6<tx72
z;q0!u?C$#IaMk|uS9b9k?A^`R&wP&!Ui1H#ljeTYZJUc$`yBO=v|?8I#_cE-ea*mq
z(y7y%MT%LBD+D^XcL)78oU>_5e313L3saZP`<U7j&=+y$T=elc=2<NZRn+!-Gf6E^
z+us&vZ+5o)L)io=r9h`ir<Y4{w#z8h)n`dP?(01!eZcMi%@;BAW;`#m+RP!h@#fzP
zZqLJ;zATXoS@};Vdis6y-yVMwK2^Rw`|*a+(HB3ZA7$@;;i<W(p}^keUq|1^1A=?E
z2S~KOTc-YY?!|?B%iY>%*)DdjEOKk#_Sctx#*1?=E?nIG((vl`y33nmuljc<Syp(6
zf3cdxtGN8+v&BtkQ<lA5I``*`>+5u`NzHn`YXhTc{Qe@@SSF*X%bnKGnR58b)2)GZ
zpTxAb-m^TZ!kPYu#eDlIiML`~{Lc1=-c%4btGc`B$%=-j9dl(4t?!#K@p5_2zPh?f
zw}eC=R@rnG<KrAt4)-M7N@m$&qpTon$fP?@aDt5Tu^ls?ceE&PKc5!R?X}ugo@q(1
z{4OhoWBivp9jf1+Ry<%S<Z0B!(7)03z?5c=8GU?=!G#<WE87{4+>kC5kvJKY@YcS#
zJg41)&8>V>-N7AEY;N0Sj9%ue>6M>J<UI6erinuGbhZUDe#{p(`ZEW7%w$-y*n~mX
zj<?~-r3S-)cg`K@%iQd+{Li*c4g2QxIz`L<-yte<F=F4B{cjKKPuXzLP)Mba{~3p0
z*X0?PKIDBj`0~3V+nHl_!i{AmpItvRZhr9O|NjpAHY~*|s1SsebBJP<_$fYU;}X%_
zG&BH>c;IYrf=q_lhqqicGDO`UbvELD@nSQ9y6^D^mCszU^6ZeWd*N(-Ip%p<-n!gB
z)9zHH2)GG5h#XG6w11zrN>0Itr*qUY=LuZO+Is)p_SLL!-pIVEiTSfDu4V_<3}=I=
zhoXhoW*#o+S)@^-B&KNJHK+8|ogI5Zm-<Yb>Apd`;<jnh{xy}40^i&#wB7l6TGh$l
zyZ&wYk-PUtwWEW5S%+}og(u2RHR_t;=J6XRANr%tu3Rr_{e5r9%MAu?=?`P{|HVAm
zm}@9^ds~#E)K9+_<s&mp-!5L^ayWY9_i0!7W8!8mUlTRMFY4vR1Am`QWaxP<UbJEV
zldY9Ir|0ImWiEadlKHTD^+J)*bhnvVYd+oMoh_B(s{HVb@2st1QA=YLk0q6@f8hOA
zv|)>i9oLOhGw%NWAjbY<*R-qW6{HisPYbGldvMt@VS}^{K2`mEdW`ixNn4i$zMr7V
zS{`K97n*jMC2-ec>&7!{Htw04)NjHx_0*E5x1AJf&$O=&wYc_fb3p&YCvorX!oSbF
zbGLh~M$5$cQNrvmG}bPZRBU<~p~WKK(tKsAIBQ$LJo%lQqiW@Us>rOYeKLvDby|<1
z$dQj%ZYNJN$ns!1UpdLZNQu)Ua?*hpEh+}do=nQlLThVWg!*^1sb9-ZJMS>H`GbsO
z8^faSha1ZD?5yS;ObzrmzMnO#h3~?83CWhaSyzP>#8}*IbIvVVId8e-<95YEinDk9
zpKijs$)N4L>fSghrAiUw#|OWf?QdkYI{NigPS<zswMOT63EE08ef8~V^Gt89gW40L
z7~_`K*t^f1vfU=TLes}`V(QviVfmNyBNuxa-&(bMU*Gfh?UB#ByViT#)mqkFT>kTD
zT}%8Irn<Ec++r_U)?GB1^YHq@h?d3GPZctswM)zp^_BZ;quM{sX2NoDgC{S=kCim4
zM*8WkI&h<sv(-RJq^Tj}#p~a;Dt^q|{c8VzWz6Pl3UhQ&Px;KerK`5s#F^#dOGa_|
zCwFw1ZB(A`sGa#XuHm(wmh0)%sV_s{Uezc&UuJclwN8cIV)n6)qnH2ex^Yf&v2NkB
zJLR)_c6{G2f2&VR^G991nfTwvAD_1#kXqE&yz|R)MMuNV<*Uq&b8R|VWI4a;qJ?As
z(}Y!ZMe4Qt#0n0t&hm?QU^KIyed@W)wiH1ZbF~BE@<%7yJ1YJtKh0>nGvi;zlsub#
zC%5>gd8{+r&iZG<dxN&730rzsz42Oh`Hxs~)X8rL&#3P4*wu7CWp!SijnHmu?U|?Q
zs@0?dRUaL>CA{R;o#W;V4R><n%`Ejd`A+(rrhdtHo!8f(6I+wIxwd@Y#=k+YxNB2Z
z-TzNNPk(L@W2)Lywz*zo`>G1fny}kPT&gD>O)7V=lVSTiHB0nm_t(gZPj6Tcmw2sV
z^wKNed1L$KlWVlOw3jD`h&a1=vnH}Ui(0bk=Ba7o=bgj%o9>$BeDKlwexGaW149?+
zoT{&gm*thZ%EZce{(nGF%3nFJQ^ImT&wpKVV%PQbjKqC`{3^BGSF~S+vy^eYSi5Q6
zt5doWpPW{#+2*-o!Sl?}R8`}vp<*p-+H5cEFaMn$c|YgUbR*ljzdi-tGO?LjRCMEI
z{DB5Xb(y~}{142OpS++sQN-bT#Sg0w(-fD!E8RZ#^`x`vM%+vy?d|-&PJX?A#1AOc
zZopFXf_mz(q7YH^g68dr8;Qm&dhsr+GXj|mvkza<Yhr?0@*bUj(C@K<K->GuE=#qj
zn?17De(O9=d(Clp(iR{pwcTaQ6>0WwU$3up)Djiq;Qg8@qb~P<zwP`*juFg<=D*o<
z_MF}prp7%7-5ho^wVIkQV_M9k-`lvY{q~;OWw#SghP58JQ+D}thHdfPO%rC=mwkS+
zE8+9%N9*>UsoQ?@zE8^^4yGQSnO=G>oTqcks@pHL|MYf<Gc)~jyM8Nc=vBqM2Wq>|
zeF&A7%gR~h-0ORIspi22554wI-XS6Wm+5QV@#v<_-BSGF-mE@TVpglI+ap!pdg15k
z3(@fgD-Gw%<;Z+7d~@t~;w!U{ig_Z(ldtn1er>*5qF(WO;g*^g$DFSGy!Fk!>fY|e
z%?gryDo2vFm6i%SK7V|2-Q_rL<-OBx`kh*xm=gYYMa&NUoj;a&9J*DQIkBvy^l^~V
z+m4B4nG?&lc<i3yQLQEZkA32|maUI3E4_XB>ezCZTf)k3FDt#xocK+1VjZWo(9a((
zoA2IOTRUst`pFv_{7!t(iJ9YNo*F4&T<v6c|H%ATH|!UG+>v{=>-4Fbt=WGUOy;u;
zvCt26f7-<zx54YwpJzY+Eq+${|32GN)Ag&>RPL=8`V{e`zCP!*3zl>TN;j}{06!zZ
z&<Ij(8$xF@Q1<vkq=;GS2{IdH^vTc^-)3pBr7*YPOOu91rp74Utg{i``H#&6z_Zkh
zTYX-wmARd_EpoxpvbWzR@$y71(n(ScoVtSL<@)ylD!C^M8S)=&*&9)FhG&0eQAWyJ
z-IUsxKRY7V<Q+b6=!9=z*IM61R*k~P7MmU^l>N2XX1235U-)45G+l0X<=H}pC0pXR
zsTA9!)GHSizSns=?em78TYhYa{Im6df_&tSF53xDc1!#Y3)6omKVj<OU+UaD>t;px
zD~IN?1~T106{TMnuh7fuYq;#9Nb;;*ac`mxyY4Dn5U8HTd2DuW;HF$(){~tI$}-C7
zrLz~T6wu!=?MC@wg-|9l)z@=V9~^g^GRLLtn6zWW;_ZBsj!R~9-Mjk4;|#a*!H-VA
zFCJXzYaO)GRY@kt+j>>zLf)0;n|r?5-VP1%)Ut|OJ@<C}yCrf94)f?Sy2<}8JKwGs
z+~&TnU3o*!gXNd@c_x)E_|<(>Utav0?T4x|O_$sE*MwE8X>BTIO4(gH`zh<6cX#Kk
zlZu;M!)c%-{ViOJYa82-jI2Yi>TWkCO$oXBIc!6%W>{CMs+Cvx^9|RRh;NBb{rmWg
z^Q1G(Jr8D1d}FS+!kB6A#AP4e?soG1J<YVrr8VJf-4@nup6>jovlMpR`uVEz-?Q#3
zANu(X`05%`^*6eDO8YiUxc+rkci5I?z4Jae1s2p=WG;!G|J6mK{Z!%YkJHK?MNV{1
z$w-`3Q(t_o{nUcH+xENjpA#~0+EJQtYnplGda)&JpH`PlTfES8Nw3RZc`Mn*dFmIR
zW|b>R$Lm=?H!7GvOY>Ghqpjt+skap8n#OhHd}iG>ud#mV-zPODEiw)bD;OhU*Jr#w
zxpAA^;wT@#r<uHGw|+VHLGIj2kNdmTHSN|5pBCtEb#k4${_BLANxWQ#)_nT8YSn_3
z`95o$H~x0}c4g{M{muU@0wz6sUL{y2Jm-vSZogFC>Nyo0?au=qoG4eeH`)^)*l|u)
z&{3qd?Zx%2>mt&hw9b3&e$Yi`-pn_lmsvAedJ?SfmruSiKhsHn^%|=JyYiT22b53u
z=AUO{P>EHuTKCt7OR^)G!(e96;^UrEc|`@))Ixe?Dy6whH8y^qWt6U5?Pz^##-ksz
z774vIvFqtu#g_B?dDZdN+AmkP_9jRAZ@KqXF|y-XgM%fH#QEM{mWkp=qOWLHo?XA>
z$jXhqN~%}tZp~gJ|G+B1`Q?#SMt-X;e@O0G@%8cDKF*-Mp6b{3IZHT6ZQSqcIF;|g
zrYVL&f7uNqc;CO<;wAd0{%Zc&fcFe%OGPdpO7n7DD!S+8*}ujn>eD@pQ$%HdnKy=W
zR;qr8y20&wtXp!Qzv}5z!Tx@)kM@Pt<kT;F6}vjE<aYMUndh6Ixn3$&Nq^HTu|AaL
zR{4<|@vr~wuygyIcS-l;_q}ruy}W$V|KrD(D(c6VPo7^jdHH3J8B@1hOTPPRqw@0`
z+5M0F?ga*2SooZ+>9Mlcxn=z;3d6;o8`o~n+&|_1$%mUvx4-}5TN;=x`KLb0yQ1&f
zn!u-DUGpWC#npdIx@WX&$M!G#_iyK!$UgZ=PJZS0%fFt#ecUQLz3|0+zHdRZ57&D7
z|5Dd1t+PDAY!c|n$J_90o%wwIGxHMItg^G;{_Iv<A3e)Z^1D^3ca}p6i_@bEU-q%R
z{SrUTpkS}YzAygMjO+h2^f2sHJaVl=zrfJuqf$lCy7s#}|5v${u2tZ<tK#L$lki{U
ziG7j(Wo9fzH`d7kV`vFW#2^@E@oWJa=)%=o1Di}t@oa94y3P6Q^w|8_1|n_me~Rv7
zSs5_9U!ZJz*4s;2lg&)ab44u^nnIgr7G5gdU&rPwb}2(^OJ?=c^TieOA3tv9ImqSk
z;i|=K>E+^$`~oFP5{d@?jr_~~B>Ws+wD*a(CCqD(7WSTZ`G%h^i*M7@s0pX^3UhW|
z*mL~rlT({stG>>wOPzDRH=Zr%pQ3|8$yD|8jwhH4^X}YnoUr1jHiNAGtfuy~aK1k$
zL$>n7NZa$?$ZFm#wfN+^V;V(wE-)+d$libN8FM7{oTOOqgmZ^q9u;{vYq#BoiO*T;
zmiX>B7uzQ7U>sbsOFWs?<LP3#(#_XD%U7@aed^7v?W-Sz?AF#+bPctZR(kE7eYs}F
z@?EMuPnJyZ4>g_ZzbkTXo%GU44;-1!OLi`O;Hs^*_0EAktrv7xEa`vDlCjJ6>kNHM
zX_aT~55&06@cMczWj)#R!teE4`@$SuFQsj=r-Y@p_kEZ&vC!tILE9{b^^&?_(Nld}
zJoj$cbY;<!(kbTt#V>a@iOty9xXI33?6}~RrLPk$!%y&R-n7oL+FUs{e9P&hQ@ZaN
zhX4J&$f$XnbkU(FW_Kn%dG(~UR@!~?#Ug=oJsr=EsaPa`>*>-uS9HfIM$A+A+5M^t
zZf1+wv8&j&dTLc{>U%0y6)ew^_WI+kqq8%^8P$@4-@nLv?R_=B;HOvTlBrW-F4#x(
zd8|}j{^n~?*QCaXRc#Ab?#x=K@}6nl>t8pH)U0<{<TY<avCT)9M;6oGF02>d+bV98
zU)f#vSEhZ7!}0c2#laz);<xv;JeHGRu4Je`$$Y^|gWbn__>`<3&k@`c-~Q|RD@A24
zH<_?oJQ-Kxb6PX>AH9@0=#&;KIekX&6W?h)$G^Wnxq9}IYff=IQ}$U0OrN>lwdBM%
zS-%%YIeIQXX-<%t@F`|Wleqj72R^Nv_4RD~9{U}7ZfDPL(>ax2-imQnme762SL&99
zv7f8<+I->4tNU_*pDEp{bIRjmTt9y+{b#CP^KmL>z67sohUF7@Q{EVwwaChsme5R%
z^^6&?$uRryHJdEa4o5m05e>?hb?4WAxa}ZyC4s|0lYjOWzg1Uauk6_x`?Mi*Pm%QW
zxNoo1lbsDtE}Niwb)H}Cho66b&N;7MrnrM$pk`KW#JO|lV%Z}u@FXNOrt-+Vm_5&&
zect1lCq5rAV!AH1?(>v3w>8lL$~*GBf+Sh_N~N>-XIQ^4ZLYtRKV5ut|LL3OXCD2a
zxS=84SS2M&j49D-_r6wzq<`EDz9K&!teiWQDgB-C?1t4hw@XgB^I$@<fqW4U)8%gh
z9~Pur^*Mdi>z<{Pms#>L{kfeC+igAros?aE3QYT_RXU#f^>l8Y#k$qCd6z^rOPOzO
zn|Az=*-hS-vPly<`X`EUeqWroTguNvOvrM7%ta~nsWZM>t}pdgzAE1+$b9bb22G95
zZHzg&ifWFAi{5U#F-_##)mbW?c{lWA8up6zdH?abtY&&{<$`myJWIF!-IcZKijA~Q
zxS6)-=B!Ebg+`hu?>@V|RJGOD@27{9>hia5^i<ged;h!g-dm8t(YZ)*$*RWQrO~0x
zL0z3urW~3T#eJuyY-Fxj!1gYjL5xYX>*D_<Z9jfwb@(r8OIjsWwP@dpNpDx5ZTQWd
z7_#c$hChFb!|Rqzt7l#_ZU0w(hFfU|<_1V;oh)IU{_t3U$hsScSGqK~?YtY#@@}7$
zM&IH_!Sh-1ygij{la|Y`5K8#xHDe-6QzGll=W$GLPUl^5{L5_771!Yz(6gfF<tzCE
zZ-135)h*QvkloK6qW+R8>87U7{p}Nz-p+madtFV&?~g~OHb%Qv-+Li+$?wjIw%)3X
zJI^tklRCibvR!nq02`Ncs*n0EyPD;1;#^CPU$`@EkB8HtU1v5Q{xa1*+%(N|{*l+G
zS1CPRoVPP-`usmL-F7UiRO@d#AY$LQ^A6*|hr5=~nY6~PqhRB*%YM#Z7O#BO_gr}Y
zzvoYzmt0GE*!G3DBr*7_==6J4x}R%Kp7IO&<CeZXdFNJ>evd<k)*LRI<R5%k)H|zu
zonif%4z4Lb;sTw_RTt$j{%rl*>ivs*eTLI(@rRF(_oyCjx-WU~uvx&JspS{9aA#kg
zprL=m@O)O+)2Hi?2<B>qKAU*STJ+eB9KPkzbK3F>wRQ;~-M8w~l9ip8w4@dly%m++
zxb9fmktI*sH<qsT`0H{a;#bY_5Y~ymk4J9NX1p42Y*1IUyD#(n-rD#(*8jK<7|3Mo
znx?<$!Hj7urHj9D?ad0?E%z^XJM){F*}pzFFm4Z=X07&9nyK6l%K>i2SO;W{LBpnG
zjtUqVfLaYWt9X#f#1til21ckou&v>+b;2LQI9F_4a*yl6VY^MP!Aou)$Sd*?Zl0E@
zD`*?jxoP9yud-PxH$O?8@VXnfM)0I$o$=?hJ+7Wk8b3?RHqVK@TdkLPr7Ppei6ZY9
zsVK(>lMnFfsB@esa^5EqBRaF^dGzE!=Yr7bi)OvA$hmdp$GNXbN$0*!`&s%k?^~JW
z@9JX*>{NSL%p!_(j>!n6Z`P03ym{c4wUe$o*U5#JQw6W{Kb$$~=$pqq+itwjJa)qV
zsD$e@Sqqf~jZb$mcdWjf7rJg0n|u0$S9VL5-`eK=?94_RbEmWItHfp}g=<XIJ{eq`
zSA9j}r`t8rQ%A+--_71RZI$)+V{@z@SZ;r{*}A>s`L7`9Ic?92cNj^sRs^OyC%g)j
z2|V4spmLvMqItohDpCDg3B4a5?z$**r0Ue!&`JH=vKzvVpZearL?=s@$NoUX!AqaS
zfBi1p+$r%UtZQ}H@}N}N>|c*xFIsUr;>ClVeIFJ5=b!Tn%}9tAlYE!3$l=G^vcmS+
z>=z@2m%Wv&{(JcH&Tm{cQVr`F+mDItJl1R`QRx<2sx5D~Z@)9=#_|;pC!8r{o|_)`
z-fGRp6MrQ?1mCx?IrT$OJhiopbr*}ao}JOhmtO92+pjC>n%r^DKJ|UA_lEx(24~lv
zpEbEwV)>Jr{gyt7chn~vvXwRnm@RU7xLK0v<8QAY{4saLGv{`0obl#_!(PX$Wd^qs
z=D*>%m*VNY^2CBvUacR$W;eeNSN|0}$C6{F&8m~CwSj+I&BM>F$iBZ!DJ=EkbJO)p
zs$T8M{~0#@?2ALU>^YyMUtZegQ>4J$v+1W3*H`{`N0fYZdtT0uNZz1v+xwpPMnTE{
zC%^1jw?FNu+mgqBV#ST7R&EMXy50Nf2b<{ad;GT+J$bx3Gj{p?aE9G}?qZjCHNN@9
zU-)-$Z{f!0njgx%c<+nts@-b4>G{8<k$?C2xHbB$x+>+CcIbHOvv+l!)6Gt)Eyy{(
z_JT<A!ihG#iQ9zPm()En`5XBC-NlB-7EiN|d(Z3DUf^|djjXPoab8}2AVad3nJBY<
zZ{)&R>p0hE$CW;xeX3dgoSA?Dhr*lEz|yn6^Y6@?o0Bf)vG=<|`DE@RxfkzUU-J1-
z&dgacbNioUZhd_DQuVxZvF5&ge}Cz}x;QC&ms|m3)!xUF*Spzkay?_XEl$MwbzM%o
z&--}ex%~KMjfI8%E}edzLVTS<vYkTPTsU`sahDA|WW2~lH}KcwME@x-S~MO`)ChE+
z^5JUdq>n7KQp|eQ7R=$kde+5&c~9W~c;*B43X?r;PaH}O>Q8-9Ixpn@oaZ{W|6RVs
zaR1}p|AqVGp>XXR1uLI!6sRrIWjlO(d+v|0sQ6z2xySelZO?Q4<=`=oI%CiNQ@`i=
z*?(BtK*+<H@L?q*@CZ+kf{`(#>w!G1WDFXRB(6|{4nQGhnT+rbb%ISMu23^IR6yQA
zyfr*F|F)S(EocWZ%Ne7U`QO)S-{L!JmD9O#`WAtV&TX9mi`)Y_KfN#44B9p|BX>$l
z1EZJ8`-eN_ZT1|>=r{Pa=SS)0h+3~Cmx2w)vYX7TMIPIn*d&r#DCQE`W+uAp<BDmf
z`qQoFC-ev2)x4(HzvYYbo4Y~AJHJnVrvLx<v(t|rr+qx%#9-&flB%fS%BU!)_4?@9
z@*b@j|C<T~))trCU%x7F&NBn9lD$8&8)eOFP8QCMD~eg)Y|tIhwppQ1_UJ6mv$Jap
zr|h|C+s~NrRrC1tYl%J6RJbNp<m&E^@~)RuyK#Aqozd0Z8R}2Y_4#a=W$P&SIZEn<
zKuq(+iCJ0(Ddn!p=|!8`>Sk1wPdgwVyEpZfwBLuoZ860+Et>MKupgKBQ5^a4lJDiU
z3Hxt64=Ou*^J-Any1aLluiun;UHkUZ{6_1UFH@#>O=}YE3fq&NZuxs(uH+xB-8&f{
zOx~FPR=S+;x=*kooBj8uZF!EXL&LwhT3u$>T%q;OC*sDQ97*Th-|yRTUcV=D#NSMQ
z(=zVa(<52zA|?mg`b=rmR#_SO`&_(RL6Uo$-YtQU-vwU_jsE0`?78ZEZpG~GxL2De
zecvpzZ_=}rJOA%Ij;x6an^hcoCFJ^^#8n2WVS&Esg|}sX2|O%0uvvd;j>*&B-`o>w
zA4L}I-e$AmmTmYO>0^n9&mXJJt8!V*q4LpTY0KO#uX5&>`^`HW{pjMRmdQtRU!C3m
ztz-7zm2pz*4=fh^c`rXgXxEZMH%|FY)tlt#5p?05MU*t_`QjxCYW`~L?es7B=2u_%
z#j(|G&(*B+Ul-o~W%#Wr=-O&#-F(Nc2KJQRt};`W+NGk&AK0!gJvVvovkk{uR?k?J
z`$+YM<dOo@-zt^o*S9h=8?Hz-)&73{*r}6~*H~RVJ4HdDFf^D^>OzQd_d0W#DSKBs
zFjmHE$Jp<g<E;3kPOSfaqV1KrO)1w8d)BaSZ~0>Ww<G?hw(ShY>4C3>Zf;|U|E6=e
zvLWy3w0DsSekS>4pZ+9FJodXyle1`2|H7`tlN1bRZQf>K=djebP=T{8L8W==&UMSp
zJoLqD_m){1HcoGGoN`RO;7R3EndgEm$}XohxQaMVEtP+lBf>kk^8DYGO9JOv#~G^s
zus!nPo5fbe-FZ9QTV$g8<aO!;>%X2@_-)}mua92S{d#0>rHEVX`r7BS_af_)KPzJ!
z_aExMJU3y=iz||EmsB0zU|#F~E9_xe#^Qp*otHORPJBNr>kgBd?3Ovjrq?!3&pN%Z
zu_kxH%$@q4@7~J)Tf9NvxbRkSi2W75Wr9@`)%7!W*2fs|eW=%v?2efdGG*?9W%V_(
zulds#n16WmaeB58d*UqH?}tktB}*A3?cjf)_VVX(M$SK}Qf>E2x6l1m_il2>BNfh1
zCAJ-QC*>yp5f@r6(TSzN1C?m7LI%<4gBDdpbo!twkqR}uW97ym^)UPJb@~hqjZs@_
zXCtB~&o&dO`@a5xs<DA^$BxJQa?Pe&U0!y3&E@GiZ5NwzvXxZWkF2wu`|rD);=x--
za^G&1|D{qg!LIiCi#rUF-rSMz)z?3t9RB{%iBA*FU4!q>(qF@o8aGQVOloP|jAhsM
zY}t1sqN_{n-Jy>YeK+J}U)qr!W5Kv-f1+xP)w-&uHFN7{?3wGo&%fq?`?UO}j0&yu
z-nWMZ`tGZ74deX8FZStBW}0o;YAtOqBZ--%)<0{Tc+9t)E}ZqIXpY}r1>UtHOXEb|
z2A;{@q_Aefm&Q}M$CtHNe${i{E#a85v+l*wiy`m#uWWsM{2Q~b=i?oYJvlp-emxZ4
z>8zpB@QNjiRiV6SqlB(XPe_Zm?az~i&Kpj0+x|YYQs(2$>nB57m<+gklv}gbh$vY;
zRlOPGr`a1lV<%I1w)y{sw>_=yaG%nMf0pf7f1^t4^K~h2f0G4i8eeWO9Cn)YNoJSn
z)0T}jt*<9dUS>IcW83A)^Q+I;evWG@Ilb@cRE_9s^L!;1d<pI^XSo@hUSGdh;A3&@
zK7o{tCs-#x@o`<p=y6o*NN&J|#?<v3KLihceej^P^{nbkj)>%Y0SC9f;5&N4{fO^_
zgZ80wR|(mO&)zdJV$!pqg{L!&gFNP^q)104S$;5gpDl6y@#8MB)%B-iujE8@Oq;H*
z6&viKHRI`|knEuHqmP2R;-zzx?^!0Cmpae2c+!ETr*rkhDwQR4^^e|s(5JN0+A)2T
zXx@p;klhArtd*S=+0u7pY^`>>UR-?S;iYt+wM{9D7pYj=dVQ&Ea$cLAa#w76$&BsH
zW%4|K8SjdiH%n-p_7;{2nRP>8j%2C)ly5Tx<K9Smet2dQn|X1{1pZUrDlJP+GoSjD
zeYG+7sn>^dzwTPsI&w}(bK5XmY|`8<6L_Q!XJt;1mH)Np*qNFo?xzyPXDoQRylPJD
z{e2hx3mEo=zq@mGo!vgk0LQ?9B7ga7@(nrvkDgd<5yK%_bYa5EjW)^$GM^`z>S@|u
z-n;JCEWi0S-jC%jihZ+7?@ICP4%GYqIe^LhYiZ4c`159t`*uZG&U!of*TU=wVU2_5
z)ldDq?h^fj=ag%#&{Ri1rC-teIr;c=VniB}mMzT8Vy=Fd@<8i*PsT@iW8G_0oPX<a
z9O`G9vpT_9wx-JZv4B+_n|%6&Jw2})YxgRNs`OQ5D=0LcvAb_^`M|y+r4<{iuBtDp
z;yQHKdEx52!e_+Qf~_4i!YbK!xXgR3=9zXr{K_5~oyTpOEKb*_=(g!=mIk^!jo4bE
zC?V|iC*xb$_hoX^wq{)KZ98zGzvNI={@S3(y>j0i(j8n^mb_aqg){!$DxukrE}Pb{
zMxLIy{!f$T6X|t(PF!hS?euDAXM7&l53V)4b+b3B{PDQY>C3d_esomR^v_QVS@rD}
z8HY^R+pT?PVeqFCHp|bu&jqai@N8vIY{&2Q70#=-{d%re7Q)9TDF45zLs{SBQu2Qr
znIF<j5`v$S>@R;&J|C_p$MP+=y8Z>b$Mn@}H2U`H%w#Iqe){||mH%w2-+Du^6qBId
zC#={)v<uB4<6B1NkVYVKyU+w8Ma*;~s7OSaZZxuhY7VI^NLA2BJ5wBNGR!S_i%=7^
z0|wSc+@5sXjHmW{_=~kg>eEWMuGzCSQ*XAX`s_D;%jT*qUZ{F2Elf!^=+=??_=W{F
z-PU(=|F{UT9Ap-<Xc4K>*8dXMSGQl*H$G*hc&nqJ*u?VPUoI8MJ^6X&^ko~5Pj_~&
z-P>>XIz)Tb$s(CnyY$%gJ7?xZnD#mU?^{@4I`6@iAD`d8zWDj}#p{7A-<<V7eUi{o
zbreyJyV_@0$G2DN$@;wp9$h=XpUv7DXEodTc7^%k^2HYtx%mynHaqvY3LdF^^fXa!
z$;##%pOy(1h2~9}F!!jT#EgA2+S^w@zB1dzbHY;AwR^5*$)x_<yJDxL|0A6*yG@s$
zo1Zd;E#+p})lV)H&G$UDe^cF4)g*oVfyEZSO=}Vr_v<hH#d*ZjNL|4*h#_f{WnbdF
zXDRpfb}W0jG)&hs`=2IHvZmES70<9HvBp$A&)SVkS7zTUO<MWIg7>ew!YtQ+@{GQF
zc|5)b&u9%a^k3L}Y$E?9o%uiaPYl}nOu&APqyE9e%IQ2O?rJ{b+ZOzC?aK&b!@2LY
zdCY~j=Oh<cb8MBq+A(X1x$NsXhm5ao+uJhtg7)W@mWJco#1sz|e^QyH@-jJ}C%|-(
zmg#EOd_D2Blxc3~zNs?%o(QU4@15-bDriBgNbY^BIrm-9YD_7}_!hot_vQcHbF!~Z
z$zGOyvUjIK#TM`8@aB)+ayzqT=)DiUynVWL;TF%k)l1@x>Krd@y886`ysNWvLk^!7
z+wn*}BXins9_a^Cfr&W=dsPh=xms=%<4B1&m8m_<=&;_Z_hy5Yn16pohM2>`_%c6+
ziyp6>u9ZK#VfBBj=!8)2WlLutjIcTE@cl%!54UN`T!U4?(s^>_Rl8*t*zAs2llP(V
zZrN+aol=Q@^Ar{MU)?$A%(Sm&^8a~L`%AdwY?BYD_Lk{Ay=W@=H+4?xK1mP$xA6wk
zwnlVDl|*+u+Lf<&{ObF;vEP*}AB(f(?eLvev^h62{82Y^`3X7J|7E%ckGeAq+?u^k
z_HoYUaeeb%XR?yr#dY;TQVmCzO)=fBFQ`+yNKuQ=Gx6mrXQ_>=n4(0vXYaOH-5Ka7
zJV8n3PVCJ?%JYAp3CIpvukF6TQReJ|JfF!-tB?P@bGbmup5y+0nM(P$w@R<)p1J(8
zM0Ho`{sWg(SA<x%=I#(%V<^3L-+_-l{N?lYq_#4MGFu%No_eXKio>q>#=#j(P1@FM
zb!_np>-yil+W+3R@cX{Bpj$qxTPrS<rl)6``^&6%V)veBTYKZunN#deZ2z{*c@y$J
zr?&stHescs%gU#j`DAQ1FK|xCG!W6bvHiSl*_pQRLwbF+iv9&xlRBSGkJ<gjqL-tC
zdB^(dg;S647&V_uT(swJ9QUK>mopw~UTvE!(shL6*zvP(PIOp*_1fine#)h-6WB{`
z&W?S_UwE4BTWipa*9&?68uTqXAvgIkgV~i;;geVIk6C!~&K+~R4__2^?%K8MU$xB9
z*7qUn?GDTcNwMw7yT|(ckGXW?gUgm-hu5zCZ(RPSjV-$^m1(KASDHF|{#1>7In(v{
zt<tX)n18XFo%%2O<(W{QOK-Z$*?%k7hM3%Io!IQsUiIvl{n5ftUTdzcTh@NpVUktS
z)f@HB`L{P7x;c60CQ*ks$uSAtH(stjDkyhC$Jyz1A4gzUn_y_<#;frrKKFciYF>YO
zoVxd+=~n>@#hGU=<!s+R>1^4HLL;*S9r8@f_M4xz>hGF+Z>IBQnHyoBeyOBbo&Nvr
z<o4)WT1}a3Q_g=4c(kKTweiNQ&Br||W6N&ymV17ZSy8f~p>Fs4Er(~{@^@0|Jmoic
zBd^<A_Jvp7tco<7c$WM+W?3Y2VB4Xa!BdJ8H1hbE&exVR6u-YHv&l8!B!j<N!H>Jo
z?=*ZB%rE8t!hb$1wrtPcm{mu1NUr&IbzW})b4BrY`NRCH%>4czP018E|Ec|7m*wYb
zj+`Zl6I_cwDe)@x{I+1b&|O^LqLFi1hx?gv#iGp6kU33%*jLv*ev4TrnILZ_K-5VV
zpsFfJ!N?LcCW?B^g$eO<Ihb`4-nksG$wbvjMn)(%Z{Io_al7xfnE<#>5(+qdCHB?r
zZ8umr0u=6=Ms2z2ut4>eT9}e(XVme(zxeb&dBv%(*c+$7&!!odc5bHRxe0F9jyYZX
zeRKWkn~!2eqU4H<r&L}m%5BvsovgBLl0jj!%EoC+zn(nSbbZT=^|JgoS-SVB-raMs
z^|A7A!P5tOji(2nd;YZj=G&rgsm~f~QYyn9H7_~vb<Y8<S2vfRKcSWQr@8fxg7@0F
zQK8X^bDW|hzi+lrJCWd=+!JYYY)0z3`7B{gLgqZYE*n*IdspvyuqMQy?QeIvrd0kn
z=j?Z^c_L|5kB?8Yj!Ut>IH}~^o&E_TORc?igX=vG)+(-eeEMk8diS5dGWb_|_|C9s
zGB|2KU82T-aSPXB;j~K6TQ%*4SD)(E@irTLGnKme^YTZV^T&MZ8@X<BzS%!V<Yv%x
zIri2q=6_A|`%@&`))}8a#FFE5)~jkw&lTR>OhsNb`}s?j7F?aoE~4mr;_F_C7<smt
zJPjsWqY{23eR%hmCnC2sqb^d1qxfl@!I75FeRh}HrikorxbFS-tW%#(UdRG3?x0zp
zOZjdTHSa&I+9$+4$GpN>O^mJ4;N{8tGy9Z9^%W$Rtn2%Jo!j=Ug>tP_R#gA1pt7ki
z79Um4++EXsd(y;pyXD#?6vX<qvbWe<2ByqbW%muYagL8?wB|5gYs>If{wd2l?N=3M
zw_g}Kgmg?ZR(fv6ccx#+QRZfWMbea8+tsdYIU*|>eUJOE;`s$R`?Wn^Ce`kp#2)%K
ztMg^a=iuWD7E8PN7$n@4>AQPn$A6)OHC5We{;GjLWoFFFd}+(_VA<*HxNo8LTQh!2
zE6F`*dQrH9$16@yW8(5vM_Zf%6J?(>R0REFijBIk<K0@{lg(Y<Ic6SS+j(Hh+MmVl
z-m_kPO+N3tw?s=TKkD9uuz*WXtv50KS?*8~_-Iki4a+6xlUWUCn97O$t>aI0wX{~%
z`*c@<&+XAN&v&!ixG(cas9dw*xFgbI^ek|~s;q+U*PHLuyC0ZvregDw))~J-xvtu(
z&f+-Xby@V-LucQ26|Sd0H(h_A{zK=%_GedSP2M&w{SBky{6NR=(-|Wsp7wQDD+rr1
zH6%^T^k|1(M~Ow^szus27To-@%kxygyd51aW$yRhz7}1-ZYpQbmf*hmhw?qDUj*>!
z^eF6Ebt1LqMx;z$$c|$#i_g9Nvfb-;-JF~8ReB+HZH`a%GEDtn$Z++3l3nxe!8?})
zQ&<WuKAHP;)Eak$u{D1CUFx!K!c+JB<%@o^oqHD&DCyc-y->0^CRALqIOaf`LauL&
zOpoT{M?an!n=b2FbZ|yMs9O7TH^<p?7EgBDGpEw~)HLzin_tYH{cHB6Ja)tKhCc5_
zySHz4W?oUJ!@Vcsr`Q(jGY@87E&P^TxZnOjmG-lvPoKUy_`UglNz?Mr);`%4S-}!K
zyb+;!*HbELyw4nCSfj7i<SVN2AabFXyyY%akDj|*N=`iaw)x$^<R|e*s=JR?hA(*f
z@ZG5+V&T1en%?vOxY@>|cg%UCHdmbajEmx>K_8xX3rsXuD`lKxBtPlZ36{f)1^J^q
z*UG>33fTXOCGF^zI=TN#g<IFjtN;HlKUes_QDcw5PQjS|sew+{C+ln6-~Rsh)s^<s
zO6GDcKH>ZL@X;IY#})oF8&^EB#!^0Godh$1bQQ?z7Z@8t3vlfH0#JcZOc`uyfm#IT
zhMewuWFWBTx%M7*m1hSYu&Wq!O;F(PJj}P4aqTy*&O~KLA=QTm?yp}x`@oqjewV9H
zH|<{iHtoaXWb3GBR}c1`SuHYu+uC)$Y3>)#*S_UtE1VjuzwOPvwP$nht>2daXz|KT
zYu_F*h&ujy(~Gz{6|rg0v-7I2{&&@`);hJErSeEYdVRl{wdtgQH(l@Egw0!0;9;SX
z@pF3atwmb*TdJl8St)6LUa@PzscX{rjXMkH|BjeaS?sUQ=kZQc_mk4=cY?K>yEk{A
zy&Zk~=ILEFVQ~^&AD2hx?0)8Ubx*}(-^sU^Y4|6-cvblETh#UR?mJFZ-K{6yUX*=o
zv-iDzSkHVhIqu!jxvk403Rxqk-rjaEecR3H>aSaa^jsvCaG#&{(>~kyUZF+ZRIk?l
znX_A!pB?a4nr7^t@p!{GM-SfCd6qe0J`RaN?aO^E-n3qpaB*rm9QQ)m(V^X|eXl`-
zRY$?5kT$Nj-m^~ZJM!lIzCzYaJ-(Ss68A98Gw^Fz9<!e1o8;t~4Fzi&)6e`q5VPj}
z<93UxW5q{48utmP$A8(Y_V=9Q@*T6;#6(R)XEQ`>7W=CCNg-S~;nM=;OB2{-4=;aI
zrhm~#)L=i$ypM60F1VhYVRGjdOPok$aPW`tH`=PU)m<KwH?Y+PzG?oHb#!~zudUB+
zAN>2W!LUZ!u9&m;p)s#XTlJPj>;?NHzog76`g`NG_p^!G9W#&LQ%K~gJ@ECx+l#9g
zgg3PJFjn)pmE}sA8=JJ6h|XwVw58v1?P{srFWiOi{ZCf7wd7vBxP=)%mMnlgor1Tk
zYG8mmg^?TPn}6FvWY6#L41UH-&RKOHQ(`38JWetdWdvV2n6$p{NDA+fO^UbM|NOqX
zXXD{TH=26|zy7$lN73@i-FSO*{(bg)j<Ej@P2K<KWr5`G9|86E<<iT`&o12k=5fJ4
z!DRX0w{KtG{^ohb3$u@N?q2Ud`*?$O{mdr$_IH0T9gn{9pS|_RHt8UaS1I4mf1KaG
z{QYe9){f_Qf7Vt_X4}k}Dtzk6*ZYMwZ}|>y_o)x{@@0O#a6NzZ2Ai|bu6y156ZX5*
z{LAC5G2faV8Ru@QyFPcl|EK$JmzNn<elD~+{`c{Rsu{Y|Z~nRd<x`2AeaqSDH~(b5
zdAvjV-lpH3=fCXPDbxR6aI3Lt^x92!`}{JO&8y4#Za90nm|c9#%gMD;b^k1mojI{t
zZR5KO$1fM&K3ZtK=jhF#m7&{mZeP{m`z!yRCw<SJIOk&9R<XKY*;>&iUl+xlowju5
zyr=$b*K;R?Z1=R%&x_nuzy0ynd4{)qibaLAM7<J}cL?UNO7qX*&P&~M;LakkHx}W{
z)6Zl!Y9H)os&IVMV7u`Q?-9`g-#rX@Gwd1G&kRnAN;;D9>AZA;?v2J~vnK5;m!?T<
zEjc$sW`_csIq$z?zr`Yc{9e#-^1f5F?>|e6j8E$q%vSr)^*8HN`2{cYBM;V}+&`u8
zlfGeI%l^0p(=Hx4k;!9NWjIaZr>`H+zhw$;@y7(4XD|G>^9XnSU5|gP8=rhXGRa=R
zyT(`Nr}VRywzR*||5pFIaEGftb>iiq|0}O@2G_S%c>fjswe`?`juojp>zkfT{F}V?
z2zUM4!0SQvtpBF{(w_M`b${iW?xp{@UT2()KW*_d`%A{k{qFJ8{@6Y$ewEJ}T-?0V
za_iO=vxB3%Z7jb|i7R@wQuSGsxYd(2*#|c#`1Ss1vUw^adPkkDddCC1l?$RB=doo+
zO<3Nj*7y64^8Ur=<bKY5vYpFvuBw~vbm7x?nk2T$oL~9IHeATLUcGi|c4xeRw@s<u
z!cO6TUdgdCzo!<zy^*i{qsmXU?N9NG;J8{g8}EnjbE`kE&U||z|72~_fwfO8r`E=O
znse%(zO3Q3MNjOee+~*ew0VNW!}UE^z8(>he-Zc~jH~{+%09(uHrYv?`JEG&|9U&8
zYOc-Y*|XErE;suwd-*wK);^DAFJp~-<JB&I2{rQF@3HJ<t&#72mCIjVr_9>tyG$~~
z=<I^YnQW7NjBljOQuJRY*_ATupz39wRHL&2s+W1XQ)V4hzs#dJGi}A>%r>=|X%Xs|
zd2)@;MyXz2Q)+bfmdfQdxluh<|6^2kK7SH*_-W_vf1mr_={>fHz5mHk!QAlOgS!Iu
z`z8C@mD5i8+nMFb>sM4|rT=GSEmfF}rN{u)kHpkshK6RSMaJF;Z`kpf8fRS$4v0J4
zf8`_7Z~b=5wkj_psg4$vo}U3fH@yD$OOGQ!QFYZ;&86auEMmLwZ@&@Cpp?<f@yljs
zq|ds%TK>Q$XQ7}i5z74qXCfMA9N%zSBI?MC(;*?1s}}vNayuE)wMs9=@_uK=vk5OJ
zUud3vGsgeyKHYcf^Tj6HtBZUQb`dOgnB1*d8aTyoUyZUx+sA5`4bnwlE_p0H!ELdH
zvue&CJ4G?+mq|R$ddCco@D&Rx^Hj(2KPuY2PFmpYtJTqdyS!!j&#vsQ)i*h9mwGi!
z#ro{SQnT_JqqEnS#a>@}%J}wq?#mN9eNw}wKJyM)wsu=kWMhch)Kg|<G0UtYCF*4t
zyb_+39l`g5<(Ay+^o_d(=02bK*#D@W{+0WSq#Sdmu6|N<WJ-<rT6WH5M%;V{zFVB|
z5i>ruTw3+CU3$a)PbV)=i@H5aEiCZs!IJ+cLQem$GAlpWdi>rVqqCRy-hFE`^Ku~{
zgV4oI0vm%K+kV_38hLHk!iyQZ+;T7123{?*zyJL}@Z__`ueLvN5u5EdMSSBaE4_2C
zN?85Ao%rJHzJ1f?-CNd2{4SXieBepY)SngYDOM`3leTP>cP$Nkvsf%7{O3B}Nf9BB
zf_7X^vUwI?U%4Sqhao0#r96Xye%LCZla?Q!71{N=2wm-5k+NpLb9C^es9TkD%jXu(
zbiL#=C3>bx+Bqk~$7VB1zH5Ix>8$myX_}O0;?`RtUuCxY2HJ9KzA85RyHYWOC40uz
zCk+w(%nUa}ZWp$43Ct6pG%M*|_x|qp>&ybDzi;{xJ@NIC`ml{U`=_7C`@7<Fvv5+p
z&)dL4wkxUX6V5sR-6%ZqzkIjQJG-LbCtu(7+*(^YW8K9o);o2q=BoeNd`4JwKBs8b
zkEIuHB|l_WT;FAN$-L*|iv6n%s{h|oyMOecQ-o;d<V%mcv=e_hEs~C9eQ-zg=<0vl
zOhu1f4-&sB{`umJ(~qzF%y_i?y6IP!^#<<y<X+GDuvYN)EF-Q%vivVTZfc4-6p*uX
zv;H=NJ53jE8V4ls`|Dk-ig|Nc-}4h&edSuwn7eFw*9|||9B8p#u>IoqsTU4(Rdzg_
zAo$tj;GM?_lK0f_aI9;e^7Dhnhd}pN=e#!dtrKY9*B|qPmp}L0cb<6?3P$feZk>L3
zQTBtt@i|p2#&X}7pY7kd(Y$bT(0ukCg>RU@niqUFD4uIx$jqn5*Kzy#CyNA|11cZx
zXWfxC%FF%FGmYQzKoQ&dV{#q+%=c10*zs&JXExuUSjFVz5a|Bu-K`ma%sKef^fn9J
zxy*RXfSqHOto^NuTN9f@m;$e76*<{Cu;&<ku+6+%vgYW)b^HD0Uqy5BeH40iyhd0g
zPM~Ry@SE?g6BL)T%xKgq;NsLfq<3IWu(FHa@y6!E*JdwI`cM*>mZn^tn0SBn>DYCB
zem}q8Gs@eQAHVp5jK;U5a3|5;Z{-sL&AUZyf*<tlxznX|E~WBa?z>|vjOEMMo_l!w
zqrknx{|jpPncDY$)t}S2f2sp}i1Ykg1s@GsgVhS=yiDFJ^-FzaA;YH{`C^U;=^K2u
zEI;{W5ABM^QlufzvEpe387df>7#S$&`=sWjmt+_zm>HW|z<8j(1XM!7+}OwxWxYpl
z32R8m`)_888Wv5`;$?3;C+X$2E7)oYn?yo~WJ23CKhBpE_&75e9a&#an&8LCn7L%B
z>%ZhX)&KYZuFbB!KWpo`IeWiv{=WPB?)lFRF4|vvHffVn)PW}xIZVV`q;;51tXQeZ
z$(UduZ!U4B`}~n5%<k3){_XlW^GkxBhJ}#gr~M2@dIlO&k0-Y-GPE#NVG1ZKWl*SL
za0y`f6u`p6R&g-lVLjtSJ*5VnE4+EED+-xUd9d)bo>yru`Bc()`^F-}<9}X@CTvY%
zRycHs-?Dx=b5Ngw_zqPO#ubhiw;8yf>6{k8?jW7X*}l;Be_&JS8L{3np@$C(%gdj)
zSuNTzQP1pA&YT8onOyFSg8>HO<}*Y;WG6VtzT)_8ENN~hydas|{qM(Y<+T^z1&B*D
z6j~h6P2><!J1m;WTFhwB&V0*jRYRLF&qww(zt|6O{@E+daESM3`Of_}_j4T-+&_8Y
zv}qph>KccH`!+DHdB|tr;2bwq`fcMgmIWNE;~iEob9J6<-{ts_FMylpLHY9lhd3|c
zh9tH>)^evVvA%0@D_s15Z@=4<pP_8Ur;9kWC6_E#=4o_$`2Ur^*gK}pM`CuXpPzsB
zmhyym9PjtHnaU)l{>|pl4p*0pWw~=xbeYO;@utFu|Bt6LJ2NvSENriFs$n=I*-#mA
z>(d{t^^ae&{FZI`Q<SXs;bWPT72~xTiV1cF*%HtA?@P0mHZx|3htKH${-5v9<wNZb
z4B9(Xr8YF&JRtbv|H{6?!)yNEnDKP?0ow-k1fK5-3_q^Fzn`xrQ5C5u$T#nQ<Ntg5
z{XNST?rAbRKELz7?Br=~RSfrH_WWTGU(X=X;GmH3K=Ikp=krtLoFCTTX85lj&Y9TD
zV({bs+oX3d<8^ocO=Wl;U%G+uzs|D0BNxQjHvDUUdMtr)gX%NJpZ}lzdOzjA^wIjz
zpY<F6?3bQYURv-&HtnzMfBQoL?mL>F$1}8TU6;|rbY+5stinI(Rs6pfN14tLy>s>B
z{>5Gy8g86H9MU|qcPjk3lkm^J&caLX9pmOI9{1>5{~n%^-~Ud3t>pp14aYr1{#-xK
zI+>O2e>jh_fp_&8c9vGfXY&O_S_7qjeV3}gY0xw8-_3TJLqeHfy({)GH8ET{%KECa
zKhpM?5W^ltiPortHg&<$4<5QHT$~}oV7!?>p||AV|E*~pGsGYKeEU1u$za*#{l1Kf
zJ*_uoF1_0RT3$VR*RCB2QNMj9e4_tvs(&rd_PHVQk-xu!u50t#Rn5}=tCy^}vop-D
z^WmFi^Q1l$)mCLz3E$N;PueE2e(p@e#X(B;cNr&|Z_N&yUS@Z8)_j{UaqAYY{`$oJ
z*`mqu+ZS%`n7hMjpV_nrwN7UZ9Dj&uhucTa3R`kwsqkw<UzNbqx}4gx{c_a~E!VmF
zHkk9>neSas<+a*PR+(=N5lvrVw?ORL?`=z3>(VbS-mLUt?i|(XlZI+9vZs99Eb`Ta
zO?2Zj<3APOy%x2;yEiZL5#Ow9Cm2$<ADC);EWl*roDBZ0I`(l(@8!rH?0=)QeXWU5
zJ~wO7O!iw@JHJFd`C)5R+4;WgWN&@L2c9=Z^KPm=$e$=&cfvbbdxPt*<#RrAZeitI
zn$mCBa?_<Ey7TPG?4Ra)XY;(4RkWUYEb>Kc*^awLR}Rc#tjdZGt9kJJw)#@p%;`~y
znMaPUozFa5;p|(5#PaPd_w6c|Gk6MqKJluia>6YUrA67?b2w}-?GXs^wftbRymYzV
zv0lX|i;6-w#j8#$I-S>B)_bilN~WRx8JC^jvVAMlr9Er^XW#fPBy=lXI9}6b##6OO
zwIvbVhg#CQ_G({MepF-qzUQIr)XVpTmpKdC1fAKmsPNmih)GL+dnLV?-+Pt6s8Ltt
z#N8gtrO7GZoqCF=ZZ-GWSs<wB(E8}rWW|}U&j&ozv1UAD!RFM?YZ7tf$^H78W9wGg
zJ*%ESd)B9E%Xi-Vvz4b%=l<dMReU^q{~1efJf1FQq53%G)rR9HleBm%s-{Io9dz2X
z&FPS8w77evrC(fp@uiUR%TJB}`W%}cEG;cNKS1)I#kp8}>Gh_W{x*z!{mN(fa=xBX
zpQ>>C)bZ2PnJ=rhzDbhxyLm59NWHvgrL@SbU>`qoGovG^jnN`68gK7vT`+&Q6LX5=
z98qKO4g8g_xndY@v$#C#lHa1Y$0Sbu?d+gQJM^SirWAgDF1YSyuH(7q{VwUs6X!U;
za`(!TEZdl7f9K1D2yGwRBinYm+RplrePDM9BlE_e>n0hsvlPtI3JoYYzII>oqwk-0
zfBZhJ;K+iH@Ac%mmt2pF@JLIvZrTvxcXFTHxhVc?ZqtkpOzUTPag*=ClO-pooKljk
zu6ftv^4a7$E6a)vORio$Ys$22x&Gh%>Ad?Z4dV`#l$ysjcP#ugd-uF*(}<r(&-*-{
zon{<b)Y~0WYJH9UU~Ef&XMS!&mFdNEx?k5lnwG$KEbes9#J7cY0rvC7+Sk4}J)d2}
zv|d|p`j5)crueI@SLLkN<(zw2T^RiI=9&w)UA^xvI8$q7_2OHM1*==l;h#J5*PRaj
z*I9hqBr!aiYg=<H$G>AAy#&LYj%k(h%)Wb~+v!SaVf!MjRgY5cy%L(e^<jvN`rNB&
zCue8b-1C>xDGO0}^(%6^e8!4%zUmj3{M+PeA}?t#-=SCLQdkt%HYNX>r*szAhoz5x
zZOO39amr-mt@Zzzxj^>4l75EvVR=s9eN8G)CEl@JW71(?#3x*%Af-Mveag%0?V4*R
zEIFUV5GVEi+VNN+;mzOD_fEf<-w_gHT{3e+`aAL8rW_u#c)gs1Z<ZGx+f({jI{8ww
z$Bte1&n0R<X`SX26}oaB=ZkG8n$7jxnvR-Z-E!hx%xo2zrVWvn>2n<{kE$`h+%jph
z+pQ(tJb#y+Em}Rf_|^U1xlS&hzr@vE*<XJyFX@BVqettGob+YW5na6fq2t1cvPrX?
zbR0MQWcxD7@$l@1uiKM0^K&dacQ0S{=6az@`FfW^$;9;MR#w*SJ4!SrTAb^(OkP;o
zvhe1@SKpNib9H*l<a<uGM}}WGVOOegFQnJhCVT2O>y4WB{42fmKN+sS!~JJgVCrd)
zY1>ZC5L>+X#!1&hO4ss|)$$*xKH5=pslMnUPgmt6PsO13-TzPQh<I1=Gh@q@MbiB3
z0{PjyQZCL-TK8?|^Tc<mmoIQv<-ZoX&k$Db6)V4WUBW?mbI+wO;~F-mf7-U)>iOy!
zpC{C2g<eXq)G625WW;~;dD;^n8=<elZzoP;GPkRe(U>1EFBc$nX{X3nUy)QbGrRue
zy-V9(n`W;+D^>UQO>RrkKZ7G7*Yj>B$%?6*koGtnsHybv+lRbVe)-Q=jjqqT!`{q1
zPrY~g&%CuS<GxPP`t2KdZNb?#Z~Hy(H_K@JjJQ}QU$C(&t!$}b<>#Dvf`M$JwflSC
zTiIXk{Qq1(+~o@QCzo(>uBV4xUfEZeYnCcAJ!)m1nsj{0^*@;`Ec_1f`lp^bx_xFk
z!=tnCxbalGBZ_OyQvI)8tKno4%a)oZvVQZ=oa}x!-<<sZz{*X}OII=_t-U4RUbSNW
zrkTIXtu%C`eCF21th2LQarW7_%%>lhnN&(zKXix-Ebq?Q(J|v8<Kktr@0?h1kNs7v
z-r<~+``((pF_q8aQ+v4iqIYc42S(TH(|>B4o{oO&Ez5gQUSZkvspV>&$JcnR<UKim
z6N~B`)~Q{8f8=@0`RmZ<@p$PB5%I^puOg=P7YD9&kvhiTb$-^8sVR9n?7u>7OZ$bQ
z)?D<J&pl~bvr_eE)TC&u+sl8rIZjE43vf`#&)?^_!L9JQ|0;*BUw?P2t^Qc`>Tb~K
zGhWGm_e4!N+`aPlMdRX0M|CS|FWnU3nS4Lx(OD+r6FEiCVp5xSeSOTEBWkUDDrD#O
z=`%`nVry0g+WMzlnzH5B$=AwR)sbpE%huR&hHX%pE!W|mbX@j$rtX#<uY9W-_>7L&
z$|~RYUt+BPK(2Dn@w4}OeU5aVUGTT=va$M=e{0sg%sO+=x$ueN{KzNQu5A8jzU)EF
z;sX(H9hdEVGV_wVX4wuoCbnN~n<Oh=SA2Qso_{og`CNkVwzo|e&wsjq<J$8pzFya3
zJs#a%&T%^O>D3#5R+P@4TGt%&RId7Jj_TXbr>|`9eDN*rvgsbproXvtfmH_9q55`u
zVo?j9G3|fZb!K6Z$IS@_-!lL3$o~5s#3=gk!~=<0cMB)o{L6ft$L8?G@VkFIsvBy~
zcUnwmiI#Qt7tGtcAuh>W@2f_2;+EZa?;2jRn|*oTOqH%D8YykBytF4T)ZaES>VB%W
zLeX}G)n?yv|Ick(w^d9>A*JB`6X(1ud)It*`*r+_Z!_OTfeqVhw5ui`P57J|7ISzO
zS6Ta<TVFjFPCP35<)TZx#cTdGIlgvQ)r%k9-X3)L`DOFspQ|^wKS(>o&z3pU_VeMu
zy?jB*do^p`JoLUXN$%U6NjLm$qo$=-7BwwzcdwqTe$zzl$P%Yp8Xdg*UiZFsy(_@U
zS!%E``*Hb&P3o5FUpNZ-&Q@jaDfE1Dz)*6D<JAg1#rYXGns~3u-v}(>Id$jETC=hf
zvvzz9xbsQ$cdL%ix`uBrbzjSeT3#2q!@=U&TiA5CjU%eGb(@4;NebUZE2q9c3tm6)
zzI}d!#LBAdnez(y-t^qv6Vce3UwfCS!tz9K+1F($<&zjMd;IQk6TGC)Rjz+z%T~v(
zcRTZ%?*6E~TXFS$HlxRlvkkWcclTc8+WtMUctPU<T|bA;b!XSuzk5Ezb!mb&U#0rn
zrT<jE-Cd*BEim=lZ^_f&mOj7Vys!C?)4d4~;$xiW>wbH`PH)C_pV)a9=1pES@49GY
zvAuTgVdt97TXkOV);i}bbBfbN`s48iiH~(ZK5X0~a&3C~irOrlFTA!Vj&GB+-gd_4
zYK;E6yA_A_N@yQC>kue*Cm{GiqrYro{*^C(zaA1178YAMbI;_Wi;vw^uiyV_F-55D
zESpZw#xo^>5l01!Ybt|;gGwTWRFtYZuHIB%`0<{1!q<D86ORc<drjQ)y6@S9%gv&9
z<}Xv1{o3Kb%JfSF>&~zzYvZmYb=H*Ro?osb&-T`It)bw9(;4=a+w5bz7EHLit5l%!
z;O~O2ncI5~db|Hvc{ls&zFnrv+0~v$8LwwQSu7gzJigeSi`P<0_07!KHqWcS3o6gb
z-RYgV@s_CQ*8?8^T7$j5H)=evo~UJJ^rLrWrRJ5R&DE<scT7n3Q(y39)sN_hJ=;UX
z#q5uEhMPohOBLF3KtDuuL$Xk1{aoWSUW+8SPnyo`THNx(<GJRMgcm(C5_atRnfl_(
zmU&)f8A>m=IQkaf>04m<W>xo{zTcIfDvxbUaSNK$|LorRJig;Ol~xZ6Z+^V9FT7gx
z^!9gd)(@VT+ApX#-JG-{wpg+&V1L{O8HugCrtmcFFfQW0rd7E_IR5?i1)txGznuKn
z!c^wZtH8%<r>8z^ew)8=nz{Oo(lc-VR_tG3zB(--)W`qt8<FOCql#k(mmQo_$aMIZ
zYq|f9-+bpwejA@pHac`<Q7<P~=#T5x_FA%cb}vhpSwFk~@$2X;0mrhf`Y!jY&WPXr
zxasK<8~dP$V^de24Zpj8@AAIT;<*RA|J|wjSh4bftl=sDZLTXjlT?HmYBfA=Jy+D5
z`A*jKlymRt2hn%!nf6+LmN>g?PPp{1TT>3mszl8{@UZ&yKfa0SORsmi9alf(KmTrA
z^M0o_=X;LreA0eKPJe}n&F>Yfm^|2wUTu4*wI_Jl{L?|Z?-dE{t$MEND0tK9;zaG!
zzy14E#jl6uY~amaxzjwx{@LolT^A)>MeDRTyh{(;KjSTL*b2+9M-EN9Gh^z6y*I9Z
zK6`#if>W5){yUz})SbVc+b?m|$1YxSQc3o!zLb(h^4jW``9z%N^{W_O{p97a|3+_-
zuTIkMt{ZCmJgl2}CS3cx`pZ+})9ZHrs+U_FdC2?FvI~6%F$z%%TfWXa!zG!LW%r@O
zn6s!mS=_tj<tYpAGB?BgnyC->B{;s=&$Gzpg0Q*TZU$$^h>*zg!?Tq&%4&RU>R5JV
zMqb~%@N?&<z*Y0F#mAjFxxi@g*)OVp9b{kU7s($ooiuw^HE-84aiNQ6?p6E~`!I1&
z8=G@W-0IK0+Z+E{a(`iS6fyLlaGTlu)7|<RZy9)&PU1d&c!}EK7RytAEE8ud>)k3^
z&;G6;A+%thBBMG#$8=G()35$dS)aziJ9($ngqHK`>?FN+s#ezC4%bka_~{1oTd~=p
zhh!bI)<z$$_`YqWd;9jsY+=2XFFtn^TV1GXxcFT3T;pHwv)%Kfu3A2AHZC>a_0H}y
zzxo;mqnS(@&0DK=wjb=~<*KY)eaCq5>P7SA=e|+N3*(esY_omV>j=JHpN=IqSygv?
z)y&?m5V@C<sZrW$*Q4>|jd+CPI=TJ7F8$f%n{y;?(*(|?DLHw1OP`c~-f9y*>5<sC
z@SrU2&zp|ww*3FFQ((rDl?n4-Zhp2qBY63jgX{RNJ52FR>NTsk^5+%3S<;iendhF{
zSw(wymAosqxytp=ZPh<N<m&pfw}FHGW>@QxiQ)-$db-~u-3lh1P(67i?e^b^^A|X-
z-+PV2uZZ<3<JH;bcR$wkJXyAKhTjT)+x=P_Z}=xgXY@s0_i<JG$`w-of7R>hKMe}L
zz7`FPxA?taij!fz^byr-AAcUZdiQN(kNY#{`OQ;~@O9q!dP;udH_oSXn=Je+!))a9
zJQP&gW~40r6UfT-^z+I^HId)N>$zggQ@6i98F0tya&N<fM8yp2%An3wcQ$69+4}m@
z<6JM5l?zgJRtRRfZg=aCE?WJz*LYcu=li)#`8`K^<kH@VZZ@2^{7T8C3AqwGpPusG
zAFdkUAz1WSH<!(kmFL5Cw%tF|n>O#`o*%Wce##SXbFpjg=|`7@`n^~&PvG}k!_FLi
zdkIhV`KRQijCbhOxSUB9dVDsgY#Z0YEfp^wAC-yXdSt$F*`DtcgBrG;a(r`D_73A8
zvB)$%;Y+KsEf+6Z|JcMTcq<G4EFrf2%X7Sxon1da4sKlV<hhT^oeSB2Y<Snk`0wGH
zb7oCY*0e3Vr&osWyWwnaQ`eXBx#?F+*YC4ySeM_@e&hG^)G{uU_uM^-M>neaE}1e*
z=B(Q*p;LKp%iaWp@6!paixlnnBbHe8IC)R<-vkX^qfMGYXEMe09U|jD#k$&y1*f07
z6En?L?9;r}elI?~$=G5qdM?nQ=9}M28GrxWBe$n6=Bl$k;<Y2qc-P~@Q`-LU7fw+4
zm>jz@n}_Z4?3ek!^$(?2F7Z7d6}kSni>jxPf`p@>a!bnYuC<?wU+W7WG~a*CEMmLg
zjsicO=){Y9Zt`Ew8|~q{cdPVY!KsN|zZ46lKW>`wq&Yw2{LCDi!c|!zPY>#@ub7#+
zz()B~lIFk4Dd`(~V(y=>eX3s>>@2rbd1~gV6_ZPTEo%NMzsA|bGkN7BZ(}o!$&>w^
zOr9-zsj?&aDgT!Za(m}?Z``_`@1#%1#e>0iwq^m!iT*;b%;$c)wW(!qhuTUxzKO}&
z7rk~}_L;9#vH0@dJbUw$%=vv<wLSVXe=u`*D=@!Gp8VKNpm)+w<qfKn&rUdAIpM2Z
zq>TP*-jvxd)X%L_Grn0X@bSFK@`BzKyAHq3Ynx=*B@&)2R#+$g_#v0SUzue4<(^R1
zs?U?&*ILcrDRG?Z_;$Sm&oY%oRIXXree>y&t`l4Gd277I*UT@ioyS=GwpT8S{duf}
zx1~ebM#uMmoj`Z!!m3->UzS~4q13KFcfusDm;J_@o-9-A{@EL6&TkPF`g65{=E6#q
zS^6cOb3QK4@a}u3xkS}t@@2EQyK{XnOins^_oAKFuZK2Xb4re%%YC}VwBzm1W+|b6
zb63?i1vV`_;nsC~!}7;hKAcO_VlNJVq%iNqRTr6*=G8lHhV=58&0cAC&Okhu<Ivsb
zlRlU2nD{Gt=Wl1D>-)mz-7(uEySA0N`ten>vOUMIS9GmfT=+@e>V3+d&BZ6BjTS7`
za6HEQ#Hv*!tvSl_O6RQ;LFb+)JnHBF6nny6UhAtt<)r+%p7#z^wLZ{VtF_`q#HDBT
zws*tKpT+*qRN8f*;60~h<nCjAxdn}PR_lLQ@rE}!iK|Q~vp@ZYk+8GA!}?#5weAl6
zyP`DNAHS1R-BK<oA^z2;LNB9kmGF%pVM%2#kE~I>@XaT>@{owf?=3cA??2g|Tu^zn
zbdr+N`=5XA_WW2svoa@ACAM>dk>ATj?ba<^2iKb(OWn=+v|+0MH{bccda{3+I#qS?
z@n|km@y``p>8bSQx9jSyf|F(mWqLa1%blKh`d7BRRJhx`{kK@2Ei0O~nR``}c52p%
z^Zd?yS945Fg*Um|Twx22JF&}mW{!*L6Cb(x;XNYL^t7gL*nc_l6!TdlnZ6r!%eZFV
zX@5PNbHcZM9*b1kSMj_MnI0f#<kxg)!=ZbHk8|EJFve<DZ|7a_Tqtw>&u#g{<9t!_
zFZ3I&<R%=;S+M)fjJ+~WQ^a^wG%vhloEv{n?~3ZLK(>&L^WVR#Iglo3UY_~baKTbf
z<*LQUch$<a>g<$TByeY0XoKjc`$fev$AWHeE1CCslCk#H$Pbo2PrflTwzqcAKipq#
zx8<v_fx2x?*|FmNO3jO`-u{r@7t_SPJJE{s-pM?}$5*_fpT{JgPWqA&mw2x1+QYth
z&lh?sfe%)-+Z>MgQ}^)2#$3@1Q6ruE^0{+T^+NOdudmfj{2o@QS?Sf{{JSq_ZwF_4
zQlsB;hMRl0dA$Bzc&y4$>DXSgr|u8t-R%nZc35=D!}J#W{=H(FxAXif8g>aim-zjo
zVViT=tDuZ;F%P=^Cml|@QntWs`IEePhUKp}I-dIzbAH*0V+%AqE28cmcv~rdL3h1K
zpmwMGYiT{UOD!)eWBX$_>%P_5XY(p*9%n+2-(Kb8nUWKaNx!}uy6fuMtx^07AIQ9P
zPk-^~#?+4=7jM&U&UY63qc}fT*7S6`-}j%ht-F=CSlfgcN4Ir^Do;IRGP(MS-sQYo
zY~@oYPwN#wzEmRMMM}%3jh{jlyw#nR56FKOHp<_+$ELzR>cfMZJR2WoPjlC-EHt~C
zxJ2rX%NzHj2dip(?O8TSiubL{Vm~*zXC6;E+oMN|&h(bvd-SBL!mpwt+97ne(}zvU
z8Co`5S>)q|c|-XNsx10z7w~mHHq@AK`Fiuk;9k`tmOXWhS?`p%0~S9@+z_?;K<?Bx
zX}gt!Yi^iZ6eY=R7kqO0hR<xlsH^*z=keU%yx3U#(_^7MvhU|j)7<vLMtAdr^Jgyw
zZd)&T;f~C$eOtn67qM8xnct3BV6#kn_nRM^l#>pve<{Q(v;TtEVY9tQXMFMu%!<90
zY-aatmVZ8vv{rs}!7Hv!GLOFbD5W}N{hXI@>~bk@;g7oG(>HXiK6BbUI4parFMH~m
zrU$Qni^f^*^*x`TZ|Ae-{don3?DS7kEf;?7l{WDFGEpe`Zm9GEwO<BJ)lP+t+fONf
zZ}c|Nn&9O=>6XW#ID6HoC4Vc5r#8&$e;a-H-n;(YIoj;GBDT${y&~^p%Ps3?8R&k{
zUZ!tZ8?|Fj=tU`&_-N^~E)%Le<x~sOwSVX4l?YhmUAFlpcGBR>*6af{=>}y#XFUG=
zr^@%hhW)#Jzbd7hPt@*O8)AQO`p(U*JAF3Wx4V4b?Og47;K0hsPg_3l^c^X1Jp7&Y
zkK?Wsx8*qpkA;hw&AnOMe$d(eue11M-iUmwnTwXylxU>x;1jycHl_1YXjb@I54M+6
zlW)FV#Ue4Q@RYLPU9L;{DN%>QL^U@~&9RWO-gx7eThW~JSDwtgysY**)1jm4ZSkUY
zKOguWNRvM$m1`9*r&r1()UR|^JgB1d{pW_q^L!&#Rh=<izU<)~m2<v*H=Pcz?fr9)
zQ)ykG_JU0|wzUUtvE?3papKe8(lZK$-MhE#6l?CU4|Ok>S$9Kkdi^{h+tb2(C!1XH
z^V9gow^uv4=!S~BqEk`#Z$7iKcmEmmSKIPqnGppoFDGJ=2WUpr#0WMAYNTLhVPpy8
zq0ER{7+7G;h+c{QZq`w<Tw#H-*YgW^@9Op*VPHPY!{fZ&!=v4!+>3+hlBVw6OT7&Z
z8h8H(zOR1&f8YJ>*S@cfd~N>R=KQ_iZ)(47=Km|~D_f?SJww$)j?Hxgv*nH!Mx(4-
zO$>T^a(sGvc`{X1u?9>`znULic-{O!FF_*YNBu{mf(filohPFdCZuH<XgJ&yWn%cm
z(D3Jw17o6|9)r2~^b7Soi3N!bYg(mmNG&+V7|`bEsAuuT$UxoS;>I<;Mw_Sh-VBpP
zjTtmlR1SQ*EvxX9qp5kV&H@Hg?iSe-f|ZM=va&2--ptf2Fz-LtL6xj_2Mf;PqFuXp
z7e`p^Dmd_9+oLl%4CMxg_!jUMF&@0@aIGQ!Dbp2Q8OQzHj}I(le{riZ_TK?31L>CC
ztTHSPOadE3IbJoD6tqS)KVW!rlR;KBw4qIy<Ja+sul<bD57w_{WUy?gZ~uMzcesMV
zm+hNdr;47rc#`QAXWK2NoC5*^pb1gthm8r$5e{qXC8Hc-5<Kd;&AAPZ91_a>U|q=F
zuxE<c0j9|N@mF_796ad9A<idm@Fcu-&i+FR`jLEDy3EBTERKSD7W+R<W<Bf}b|U)w
zlRtOE*fq|`zWSS<%iI=q`;XSaTUR@S`MJu<ST#@nOKof^_;)bJk%K{ATzq<ifB-`g
zTZ7G-Hx~7**T0r9{Z*?!eBw{--nj{W4ALo_3h^6wIexZ3ew*}=jY;9bI)(W6|9$^d
zw==UatvMLR(V%)ljOXZ2bt@sZn}2R9Tl2G5GxY47aEO^{N8R6laWj>+rt&sB+59*B
ze>cWYSN7-gDz7#Bx&O_cG_9?YVb9IVAB=DA)Wk3-OlJ^xVA%QLZ@Gvs_lNk%g1?Vf
zvutf-Z270sy=Uovl{eqQzt8+9#glemfAY%16S`O#XZ#b~!6`03UGx+4pa0W-=1>1W
zdsn^d&w7qO`#(=CZ*{2K?6d#H|K_a)EY3FnA5E+(bye89p3T{h;mdyC`OW`&R!g0b
zdh_bX{WU^|m@Jut0-{gcpUzP>k-fTMjp;!S?cMf4Kbv3wl``Ov;JVbZv!UKrgP}}8
z{Ca)iiItm*9PFg@JZ%3hb2zc^=l6+40opUZu7COH*<<#I0}sXKS)344F0Wz8S196H
z>nOKhl;^>dhC>1#;tZQ?;v0B*`aZ9o@1cIqURCj-JqLfoWwsuXkM|oG8ic!ip5-@$
za~$CO9bcW2H;1GAhW#FehRfV6|C#@2M{9>$$XKr4f3-#Dsr~Q!{LCCr7&jf7Ikzpc
zbI+#rRaa}`G+p1G+h?g`=D7c-&CHp1tHtg;s`6}@c_L=wzaq&xt*JNucV;BU_Pul|
zdiSyS`}Q`eGZ&7rtX-x(Kl`)A+l^<{=IAdLu~q(gf61!dnHw{2l&Ws8$(vLAg<1B3
zRKV>iFE`JPW#u#}_B?-gw}{QE-QLgGotK$!-KO;;v|zpWv73v(DETsVtGz7NF<z$e
z(m>$NmIxh{cDa_x>dS>yB9+Vgr#_A-togpEf@@E2*p9{e%l3$!F4-A-YvsH^$-qmC
z=1$=0Gpz8=-yd3M@HjSR1CPAVtVJ1;QKdD^Ejh-OxvR40A1<$(Wq6^V!#FUoXwgJX
zR~J2Vtz*_=ww=cxoVADvi2D}sOY=g)%R|cq`S)FJ;0O_%Q7(J4FI0W|jt|{As&$uq
zxK4PiTB-ltbwb6J4O_K$YPNqakzADWu2#?V=#S1~)omNzhX?((X#JDj_DD)bX;Fu+
z&50+1%TKPnS^xE!pK0r_^!EW%&g~Rh-2GIjH27Z6{CXkNw*EBfS;0!JyQZ>L{{3CF
za^a%Mlld=A{bl=lZpoQlWreNEX+}p{<i6hvGRj<Et+r|FZiCHQdhQ)-tQXZJRVsW8
zjWOKYs#h{0&UTfj%Y=)cGWfh1n@vuwFy3f;aMSfF*84nrzOUKyZ^K6mu|F4@I7)sU
zQ{BBTJJZx-o}|*7-!IlRr5|Qc=aZcucJ{5z+8J?<e>apa`^|W}B9VLf{qBp`(@Qd|
zGfus5*(i0#rm1*i0*`~r?v;}cd9UsjlWy!i*>LFK{5!_Z{Ewe~swrh;*&bj0;eM%?
zT%vKsgvl3!biyZd+<Lf2Y5v!3TUR_>92v&@Vs26Tm)-iyE*7lu%1o_ZxAR-#bzQ#~
z&3_zbU01cVy?A<3@uP5s`LhjrRnBpqZeGB(>cTbs@ZGzA-B{YF^&|UZ8t>Ow#iq#%
zeHWd{diwU@M8(&OBEHK^fA22Z%~Mw^?Jn#e@ose@uZig;Nwwd<P6QgCNbA^Mv}xi@
zvzy^>OJ}7e{@<qiJwucwL)vtQTD{Sp$zC67HLr8pd&)08_dR_{dG5p&hK82B@)41T
zH@MVfbn*8dQJ8aN#Z<KiH}Aa^nxOx0H^Zy0cxKgS+XB^2+0H62?o|HW+Vb;F)xk}&
z$$diKE84QZ-P@aV<ks#5T-j%{Bed17s!JtaowxK`_>RI;U#8SLEVg*`?BQDxhoq%m
zh4$ZhUfkRBcV%heoF|FmKeOLd{ggE=jaHMr^1;+$#SxXyfA_j^PE7MOy>xI-ZRXdf
zMy+AZlO-Yz9_sPP^LDkb|5+Ed{O9DpgL`y#Z9KgF@(GFCagUi@s@$IozGSyG*6Q4G
z`262wvpWyJ&SbV{Ip-H|&->xVb?2M!atd>L@+>P8;}fpF5BPj0bcdYt?v@-g3mKj7
zq3b8E$ka-oq2XP!zH)6@*Woi09y))j;qcYT>5MwzY9s$YX~E`|rt1oYmpfh9ceUFq
zGpWv9tyAurNnxzi+*ORCOa86Q{rzQaN6zQljIYiFD!sE%OTD(BQF;E&jeI(-Us@Ku
zUHSJ*eu_4qQ*r2J#}s#k^LN^hm>-=}>$E24%`}^LyiVtn&$GV!nRe#QIcAQI@B1r#
z*FH17a7FwMpYNXP70)Xdzb?7iH)H3j{<^=1|5#0&z5T~(*8e-a3u|74cd1KEmdb2c
z-uz(ZiFEI)YT7~Wejm~|zN^Xa^5tNkqmXzru`OUh_P)tmKOQ__cVr>+Urv|m{KIe4
z9a!?0>~uHq{Jibw;&gt)FTMNY6IC>%?xxIJ84`2Q_l|$jtjB+2U-F+>9rX0$*#hZ{
zM?RSaJlb|rNZt6CQ;Jhg)TEa;)1SS*wQB3p+1C$kz3`4#SV^Uyy=u3Mv{UK>)9X{T
z+2bmsr8zexA3W)^WVyoquGmB`ot=UroI4vHToaDwvN3$LxNm1})ahWoT@NmLrN{Dy
z1c&lWZU~bxT6u8G=Z!`^AN95_Y!Tl2;z&Zo%f~wWSC3umxc<0q-QRwn=2>TsAA7d%
z(c(#*y+vQ9d-z?k^;+8Z;%Up=#oto2Y!{oIi#13I=HXP=%y=6%OZd6p+@s0=rq$m4
z@$PT)wx(Hm_Uk$NJ^pQTsz2V6z~$2%T>1Bd`EsKoDY;XM(=EPz>T6y9X2wdMU(pwe
zGM2eHE3;%bS7j<cE4x><es@yYBX^eQryFy+MEDz2p6QrRuMSlBmAc(7{qT`VKVy^M
z9NB5|?f#OSYb|!$Ud2btJr7Bq%yIAX-dWq%ZCd`McGKefcV_HiTxHeRF1^!NYGdOU
z?&HqyybB&m+>O3de{b!C{=$c4=KL!azuvZdF_U+-$+PCwZNIFNU&`&Wymi_qe_GV4
z(uo|m)7HH!FKL^XRQ@u%MwyvEzt(q#wqi}lzbolyE`RKqTi!7@_kp|BI^PX{Rv!QC
z-LzubrD^?vetKWo{1^S0doww1rJ#}AgnLg)j-S!J%vfE0qfaW<=9j(J%O|RL{a<_8
zt6$u|*!cE#@f%M(r~iJltbgL9LnZd%*WWlionm|4QR$QW|L<2iEBZnOv-6*=3{}_3
z+|3@bW>4yE!*x|RcIbpIz5P9`RbN(^%f%)0Wo%qs#i7374cGKDCYT+0b>u*G)_kXZ
zj-l1760h<630Uy@iI}Q%&NLD4Ygb!;S{Rke{lD=z^3(C!FzFK?+uUnpLeEWeaBsaK
zB^uBkKj)W#U)@SK*;lL&Vk4g!?LF*&O4`VSbDCz1R78c(uG@`geV_K<yPWZ^==gK3
z=(Mtv8XNcZ)F$&6Ewi|P?9C1vO{e3lbJCP*8?F`^PBd7p`aH||{m0DNCnxf8i-t-~
zKPmJs=Y`MHt}LsVRUX;5t#7wF&3vyiVeW)zy+4k%VcuPLq_$Str(~Tn_~`ziT$f!<
z{?kSOXX*c}D(BQPr#Fdl{t~bK(zC(R+{*Ud3-#1$SH3M}HBmx_?v|=&q91l{<2hw{
zo=;AEq9D5u--fkc&fR`JW0G+V+q;w2{d}9gyxnx>yY!MxF2@_Z6&Bi;=3KcyL9NnS
z`eH)3!6MIZ>mu&kw>xFL-kbj-WLHXmap3!1!5f!X3Vz<zX4t~t67-&@rt+;rRK*0o
zV#br^N8C)RV&6wuaxYmU73t;~c+azR#)nH?EBq_2C)hmOd;9#(edo)Awq0Bob<t4!
zo6G!u=Iy43#rsxms&e%XeDJ5pS)H}FHSl+k&SV9L9b4rU`?KCjuUL5AuhK!(z`JC!
zmc076WZhX|Ek`w0YreV~<X&bmkx56Wq)l1eR{6Br*BpL>qA50&8+ZG6<oKqWUzK{e
z{9H(rg3eNgg{%*c-xU3%y#BRZ(WU(f#Y;5SvZcQh%ze3L%}$2ENmq_2x;uAAZ>*f|
zmK_`^B2oQ}<7rP&(ery#_<Wu|J~PLhZ(Z%Bd7=K1-dgt=MZbsW?u)Do>t)+>vu5t3
zU&=31HnV@<`Sh_@aN1gpN0Qaj8fj-5CdVpVR9j@@nsP&>Oz~4lK*jX4)@xRIy<zj6
z8KBp3`^V4fn{N3x^BP;#q89cAXSqFXSbApj#j~rIA9yUdpmx#+i78)MVil+7E~{?Q
zomeyZiu|LZ)0g-B2#R~@7hb69Hc{<|tIes*Rnb-1kG7Z3PWmD&BNjbxg_fe>`qQ>o
zm*_9>k1C0gwYmG^huxXeRS$i{bpwn)*}bukmUF9I`n37HLF}Cy*X;tYukg)0`uKps
zMVr-g=Jp<cZP8Po@@MH?i-qUUrQeuhHg`&Xa;1Q~$Ifl~s~!g4KY8T~3tzb9!7EkM
z-k#@O#aApNRsJGt_IJO{(?VpeMAp8DZEnhKn)K+lN3f6OpKh<F#TGN_x7Qtuy_@D>
zyxt&K<66VXU3vQ+Ci{qA-1h3tuc_PTzTy?qw#bUCt@!=Jx@YSAv)MO;OC{e~pPI45
za_yyg(?47dTQb8xSo5Lq{lXnyEBS4Hh#dZ1$D>%eH}=7-S-Za;DyW>aX#LC0SMFvV
z5HwkTx^n9p+h=<ZJ@{VJD7ek&_^RsHMXtNQ{&9NLDSZ7XQ<ozD(n-rSq8*ZtKfU*Q
z@%zn-RlcaRUHN=tj){M%@HB<Pkvq(`%~bN*u6tUxQ)p+2=I2YomxVXYTO3-ksygeD
zMNxOo-92Hgmu2m&E%<96a~$HhV186@f7qm}e3cWTSIHE_%iqc7+i!H+#-O^cEZ*NM
z{=we%Y4RO^UN+A8w18J#ewA6d;Jn&fLHdqoRYE?^vw4`ZN{D&qR{vxr?N5%IO}Jm?
zhv=uBy1;nGQegg)yjn%!xeK}KMO)&<F3jN4D3*KdqP}WzNBpCSGdf>-e$77YGG9&g
z?DDeCwP#**UHtg{s=s(b?|!8nHe4mr2Zio%#Fj+FR(yZ#884lB?RjlHf5VK1i~jc&
zCf)loYpzf5>g}!f=lR_JJ=MkYhtUMVNU104*R9VtJXNZYTQITeh~+(=<1sOkAN@s7
z$#OplJDszMYxNP|cl-Q)Y^d7!LOs7W{_ZxGj->{7cDUAeiS-+q2uJ*R_W0hP6PMh+
z*9crFUi<6dB{etA$Qua@s=IkuYU@`odE@+SfpNe-=hJG^74=JZYbphvQ2F?K-IL|d
zwyf`ee>T^swEg0hS+2`2ow#^Ue(k=6>;E5UNniZtYgNJBH-dRlyva$WqSy8wwyMc>
z;Qb!p({XflTGzb=cbJ`pnqCSl{x#>ZwDPP4orbp)Ui;<PF62B{I)Bb%&c74IVvB{k
zT-(~upSgTWqv>daW_a9^!(7H(tL66Iu9)*Z?sDi=v9J^K=N`Dwz1sC=#G^%8ay6E!
zb84-Ue=wUV@5wnRkgdPjL-I!W#n=bC{3{n-`m|_C(SfhQCco}TF!X*lx%>6fT_--l
zsW*8lxGIGn{Qjh|O{Dy*+Ga-6PgXbnd1rW3Nw^9sb9>y*n>^Q`>+wX{$c-LTWZR+`
z*F5*08S2XO@I>bJ<Eob*I~Q1|?y%0Y{n`2}VejjxN8*1jyYFIGkJy-WbVcu<G={%Z
zp4|SE9x5@h{g}x|vyIY+e_yW7*H`V0T_zjw=X{0il-Yc$miJ$0OzCmpo$C8S=C@p)
zTty{w@v4g}7vHPd<LZAu#nG8Rcwd<1jNb1%&tI9vom)Cxaqc?yFCV`d-`Q-QpBt#5
z9QSC2L66@4Z6<a(0r!M-yq4IABrHs>Xc988nG@(%BzN?~oA&L8jyfjx9O3rh4h&1@
zEDl)0(cB;1A;p-g{H(G%ec8!OwZ=ZaX)$t*T5m2S&VH=6Cfmn$vQ?MkCswVCJN&Yi
zT;SBmf3W1)+x}A%_HCTV(Y553%jz#C|6L2b)$;U3-do6Q72Ue^X+z(%r%$#?obB%M
zoU2*9<MS#O-KR$#wS*1bf=}-F8(lc_gNj18Pkq+MO+ub-I$|?bA92ZL)t}dTxwH7S
zq>{s-2+ltdS8i67DxJUZ_rVm6t;^CHWo`%`(Tdz8_~p>{0+~~<E?jNcYrb$&oBgS(
zx0hZVI#trD6+Z6<dkSx$_l@tXm)uWjnR<+;sN#FZ@yDBcE}xzjypcD2`>VHk6V7CP
zD`^Q5zm>daqPX0exSp+*74o-lJly@gd%<(&>&Csae_Z(^#-l9AuThpGusyHjlgO;5
z`?V(?MPA(V=L&Q5^T?x1{>HBk6qvvBwoLN8&d;%H@3pyox~w<-m-pGFTAJ<#$0{~^
zJFc2{v$LkWCTd;i|Bm+?x0+se4wt(&>G)-%utrsNH({1!!O3<9%wFmRPt-kh>uOHT
z-3{(jdz1IA73^+2yW9Pq&hd?rTm218&;0sX_Q93w_Rs0nYP+YfJyHsmxmj(a(*Mr)
zOnqOWq<P+Bx6Ha;*_D36%EsA0&1RbN?|FKE%CytB<SXN>*j3BE#-2RURZ}lfnZTc^
zR{h!S+v14*mQiZc-oL)t#wwOz(SKyth23=)_kSe1Hm&G;?k?=Tw=Q{$?S{1M{=nU8
z`@>7-`hDB+==y=&f+I!VcGou^ubv-q_p;uq&gF+|KTq5oH9u2J<qYGxQ?0L!?73h6
zl;w~A^TfHQF-gzUH)+NEE89ZnnckN(PtIn&J25!Z;nbl+X1jGhPc`|a<>4+qbH7Ey
z8`&L8Smd1c33FBy`|Up@yVTR?K+7`yj4r?OGKZqm{mL&&w)vmku{h+8^IbLlB`#B@
z9ZNr&6<=z%hdoH++uWD4j`PjByICT<*7}fxlAyTBfxZL5w|96xKcL}%j<v)gr{=@=
z>p@{l=cg_(n7wHE<U9BCw9VJ)<=+&0EPUVKXUqr1CH$dQ-}|0@H8Rh)zgzxu`A=`H
zmrqxf7wKHG?t7mhcBimdeC>^2+HY@ca+!b2r1HZ3O?FXXPamK4`?BX&=4H2oT~$(Z
zOO`wil9xSW)m51j?{xpt<?U9rrkn3_mft%QwC)T?PWRfXNY5LBI~+g!?8y@T>{F=!
zvi3nYD^HT_{3F6{+@I8$jxE3J#=|IcDNoDEanHRvXVIRbd^ra*Kkn(``b%0r{K&O$
zbuQ(QtohFVH1zV12M+PgZ+p}@Ckh_D*OeOO%PVFXSM|Ab;qS(%dFwqb85-9d5WBMA
z@cDh-jp|Cyht;f33W!>s+;sj6zrn80TVJRdnosNd_VR0L|Gm9>-5q&8%KVb|vp(FZ
z7g9Uq8kq9G>G9piyN<*z<6gL`b!&F^8+F(G9WF^p_ll$zm$}Mx+LyMijdY)#meH|2
zxubHU@$`FBuSH#+Cw|MW{f7hdhLGi}Hq@^<ef)%G-}0G193@u1=QtLBlz)Qhntwm+
z_DH_2+InvNcfODtwQuVee2Cj68YTYO(>3=)>9MVBZ$neGUi_#Mv^7ppGI$rgd|!*K
z&+PM`ryfb_iY^P^dvUEw@>$00-HX$W?zcTrPF#Mb@YB1)vO3Sz_KMGQwz#7mVY$67
zglCeo=_`(j3r@VbU2M4Jq1T<mGj<B!*xqO6d`)QTyq{YR%qaMIF3)8{xOn>9>D!ze
z{<p3ak5*d}-0@u4nRi{JNt|ZnmATJD#hq(sa{BpY^h#&Xn|)9(^Raoj<U4PZrQdI|
zR7=!F9_P<(4tf-O<lM^{bIi8R>h|0Ga?93R<y|Fn8s*lrbKl(ejv@Eg;U3YrZL_Kj
zY~;LDzLlTw%6l?-w_e(j-QT*VmHX`SG1RTE-SJ?>?U%NnF6ptpxSuK_H~q|&&nudq
z9MhFuc=6wdi3NR!GxStLrPkZ`yxQRW`CPt{`1+FH&SEYpx{q=;R(&jExbc0_uN%Rh
zMy58uI?pD~%{oyyQKtSL&&G@k2CpCOs;(;2T3(sJxVrIIV8_1=ul#neo79qcKg??C
zYUcls<$iSK7A`(IJ0ORvW%CWzi{YjlyP`Y2udm-zSH>jvjjR0qoxtVy+n(@0@m(5n
zFM_M?qu`B~U+&*CRrghS=`{7%&EFGmyT%mB|2wKU>!D;xagoIosVKYK-yU`8BrUla
z<r;QZ&Ej|A(KdVgaDRsPm(|$*wM@>6Tln;Qv+#CxXKj_&Y+Ub6zq~8a`qJETFV$$7
z(Fu1u+bhzMQ?K;f<h^XTzn@{HvA$wgkiGO29$q2Y^lb|(E=R3%o15dfI@4IKD(oK5
zwX^o$7Di1?ys}}Bp>&{~QfXCKQ2AyxnPak!Z@7yWo=|Ro-}0q7ufSZBYga`X^I<7t
ziGA+R?yvVNyuJFJk~Ys_O|D1MD>EW=MRn4$C+i=`v2j+}-G5wu0i)fOFq?eONeirH
zR8}w@{H1);Z{7Aw4%$<;B>WR`C~uz3c(1GP`1yIw&X;mG-(9b|NPfY;m3<fg)~)~U
ztG37Iq{d-x+w1!@el5Gw`|kd--&$<f;{5s6gl*<y_nf}!t)SSNy15#&qRcdWCVaoY
zU-X|$$%-RKI`8@2W_8FvVQ``8;zUOtH)ZRtD~1(%ZZd+m6&7tzH0gZ1OmWwRf30<F
zzl5J{n$)g!U3@FsjMcA%KC9dG&WZ>*Xx03tn6>bUeALH?hbDZ_B$B6Rtxw7hGh7m;
z@#7Es-8UKs%Ko}|-8{9a<){766pvE9h)Xv&90@XAa<(;TdqAtboRrstS+@Hfeikls
zsP#KrwQpKd+Pf{SR|O~c)>)~i2px7iw93T(sdUMffc1Ok?TK3%6#Ps0_a=iaTg8{8
zRdIPX*LxlR%4K>p(AGNb^9<9y)9PoRwVS8B_0yZbtal~v`P=<E`Iddw&P9^1RTik7
znzHUk<E?^tv5StUyjTNW+4GLC`LgVNcK>8E#t{2+Jeqcy>g%_}e*TvIVg9a|sm^_;
zUD{VoH|Krx@@@9#y{{{T)}`jOH&|V}*c~7Aw5{^%5}wl*xxL$WhG?@@J`=0H5+NcN
zS;Jv``Gd#e_gV=Y0gK*<#2?u7j8BcRE%#33i@sYg1!`<IhTL6#P1yKHQv2-Rma_X_
zF+M-PLp=U~ruMD#F5&0DUAZ<-{e!3e;*}~X7hFU)rD=VfUMncre^U5d`l-Mv$B(D-
z^~!d7m)6>^UpV{XeCe|_w^#3YKSNL9%_-C8w%ui$?~CZ{I``(&+4P+ITX$GJdE~8{
z7@W`i?^O6L%`<yehUfb`?d6daUQwOfb-}H^C2DD~`I;?(U+dWTB&K|-@7St(`NY|m
zd++ep?EEXZe3OK%;@7JuZvV>WpC32pi1v%QHC2uicNzSNj#Zm4ELQ*4`?|p4mpi7<
z-<Dm)yeV(*yy=hq*Sy%`$@a)$-|uhj(_%y(Wmf%~DZFO;mL=|i&ChL`+B(YSF%(Zr
z?v#7svfeUc;k=YxeNSpt%(UlL2kWl5JNr(x#}c^<+gt;mdA&Pv{`b5K7T*~CoCE$_
zf4;q#xjg<(a{cUW+wW;iSH1eNzeD)b-ty2u*|Zroaa)S2LZkyOT$p$-<#3k4rppq2
zN5UWP-oM+d*#DB{500sO_AE2mt8`Gu`~Ax6yqEQj<0C2}!tcZ#6k2fiePBiA?G67t
z8jfzC>sYgVi+0hM*|Ohea$Mf&_Q~Wke_L4Q#JJ8kdr}IN)=n(jc(VGm`%9h4e3Rx>
z-Fhx@zN;@XW$Q8j*X6U)4qNT(Y`&}X;Yzuf?-{|9HF~G_%JJ>eF}^X^i{qun_P4^x
z8!LO(&D7ny%{xb4!uf$&&JnI{((Bc}W-WIQxWqF3?Q&n?dEV>qmTl>;>U*#z@3gw|
znF*(b%b6yubhu&t$}n)!e3w(VOZnO7-xuEhvd*z(U)^*^f$SXNB15U3<ssh{&9&`?
zZ|ymvxmk9JZpLoKUvn4NMY@OH_sRaX_LHg1-Uq+GrXRg}dX3KV(}ug5yU%Q1wdaWH
zu|1{=*VzB?zBzv>Xx-;4S~`u)Q;&XWTX*t|?4>nb#}{r<v1vZG<=CR9Q~isT_Ob=q
zZ@h0Ydxq?R*fkPo7qQJZU;R~E_p)XYpNdTM78{4q$b*@`_&B#;sOp=veQQ?0Mo(7F
zk3AQDaU?r^uAHCDbN#pcWEuM%SSGwdhq4hj;caY=v<2AI(!d1UgtwUm+L7<QW$Xc$
z?_bkpy0qFva00_6MHPn^D?HxsT`b_y;K4N^z)5gQ+|ut#3X4iKFRfMzTB@z#yR`XI
z;F6k+cdGaQug!n9_oUA!>+JP=&)<8#=IiVapCx8?tv+DTSHR07rOwCJB*L)j*RpFy
z3<4fp988`;A3x7lEb#adKcnkD)4NXBgbQ5%yBECTY=6WtLrTQ`!OP?e46^zv3_7d~
zr!^W<MI96xR5(=r>nj}#W?aDb)$IVoFNX#`Hs0ewA6F;c`8bb5JX|JmcD*fA%bXU*
zgv!dujrU(Nh>F}1e#qj={AHm<xJB27#lj+-21hLvA6Wdc_u|mp`KaI>mynR1ot=XQ
z7x$5hT`}Tf%s&(g)-ecMh`oEs+s;_W%VW^6=s~?2bI?cTGckfU?00A$lYGwnwS}33
zLFgfidorhFT!zFQVTT(s39Ht!8<ey!{y*XCKY=3*_2=0b*qZ*wzRUl%-ihPO`;--v
zh1s6+xjq)m5N|MM;$)Y|dcjz@&%%&Fg!i{=i_%63C%Y@sT@FsNoGtg~Ix|XX9b?c)
zJh1<9;#?cScNRJV-46ex0w0A-9@1RBIB}JP2v^^+#Fcelm$!Xru@>x;)&KZB?d}B$
z`7QtNw;D6?7XLG4IdeMpkWBA~4^7#t|1K3!SoJ?auRw-@Y0~tG6Q{8ruw^KSR}b%u
ze|q-AyASsrKj_aea9pt8`k3qk9|<P8j)FGfx)pym2IN~XJb%f`|K<Pv#`<+D4kR$}
zJZxdMI20?8vFd+_`hkMy_SuJ?Rx8yoZc}Lbc7Wl+`t$qe=LtVyJ-lGzkN+3y@2_vU
zrkh);n|#q;_`h}8Yq4YE5A^kT1*T7*rhFnaNKQdpotfiLx~Q_oqkQoN|CeMfo@>bP
z)BdcG-^+O3>i>J|7w*3&!1ibJG{!cCC<})d_EOuK9Uc5y^gsOHeyM)>pZhHTR-gLs
z{rLag32ov+Kdp7XSpTbUS*XDx^nbd;g*D=R3+iim4zj-Zzbxv||B5hqKIe*s|EyQ_
zHVf4(Xev|8h?LRcW%2xfP%whGMPDYZ<$&eRe}QM@@BEp5c>;&Y9gb$#KUG@=HaRT#
z-zE6w=@Yk#+62x`e`K44?|eRAd-bB9#0~w~o=zzY0sj6P^SE3BCabV8eP9><!_oZv
zpO}#YQ^&Cf9GVP=dKwwhd(^M4&t_#*3E<cw{!QHLYyT;~xOwwfn*WM1B;KxHTfbY9
z?|Z9tps#=891-XD*IKsKtq*(nK`>rQX?A>0zt@I$oh=Vo?%94Szp8xxlFa8FPZ?J4
zu$hqe<zM8F7a<JoC$7Igyss?Q^852kTRs)Kyt192pW7||<?oHxMUC;TiR*Uknd;mB
z>&y?`i!-|K9h`P0%;09xD;1w@(OFB2etyifE<5U0$K1eVW0~^6^YMYBE1zu57dRgA
zIVSqZ*XY}ZN8&$iIs3urvRQq#mrQeq{jRH0r~fhkziDQ-xxVb1@446WN><)=x;s78
zNc5r4n=^G*HkHhtd*A4ET3Yc&C^be;aK4(pl5@|Sqbmv;ErmkPvdozLIqHvgnE+S7
zp~`XxR>4Zelfkbie!6;g_taBsy*is$tX%%PZe@11^3D^L&sIz~o|$OoxBRHxzwI-5
za=&*@XIQgpu6d58k=xBRf@`EgYpn18)oQxKf2m`Wd$q(lbBS3CmNIefczKz{%|z^n
z!^?XCe;X8M&JW-1=;A9bxis%w*XqBIUMxKNb6>*e9`>1^Cpm08A1oMO^499yv(Tqk
zmcBXmR=mG6^~XEIrCVoBv5j)8y&mK9@(GKW!`IB<WT{!qRd1hpv}jz{Ik0*1x&zhX
z-rueywQuG7dj61F>dE4~8xB+EFTM5hRl3BDY1eHIp0b%6zcpw<zf5K|7iYD}lD#WR
zUb}WD?^0N6mEDr)UhG!AnxlO6l2^-=j=tjk$8f$+;Lp`bYkhJB*ZD7b5P12=j;@gH
za=UV3&K~ZS2-cs~oWAJDCsySv+$)W4tzh3)!ulvL<pBG%Cx$#HcXJ({&$epb#_Jbq
z&ps@?r@m{-F3t7-+kAPX8E@~u6Ub)ze2>|3)dkykX56=2T4K40U+bswj&{$9x!yk<
z{BoM&89)8W-gr=a7Vnm|M@5nkuU+v&UnSSvX-VXg9k1_PIdaO<YTC|S6JPJ1x8mTt
zuM6+qeH!+2zT_X#<(+E%pV)IexTcE9@cwODqP<$zWl`LA{&?N%Pd>fA@TBxaB#Ugy
z_D_A)xyyFkPZrpxU(wm+l`3~`=jGjN*Vic;J9Tx=IHH-T<``ZZ*LpCxd1vjSww`s5
zT7P*SW2#7ApBmTUw(il4hrFL>{yB6YBfIqE6onaGn}0kG-N5qi+NI+O_0{1KH%`8N
zE}HgEe9=eA{7Evw{yt)^KN@D8jN*xxP<GUcly*5X#b?{Mbv{nwH-5#>n&YzbxADiE
z%QIeYShY4PSZ8iOM`q=>qJk}bujSaS44l_!i5SIq-|NkJJZ;j-in56-Gu?My&o$X{
zdeYU^W!|^CZhXDnbzDPe`BTr0H$rxwTKc*$yxZ)-a^+Vi`~Q3p7I{^baIh?2Z);MK
zTSfWf9-(VLf=_o#&4|jY)9}B1Q$wCNwX|%DSM*MY#+nlg9lw65vfx)yw>|l8+O&?a
zA6x}tuVxtTnmxbm#U7JmPmc;8K0D!LjB2d=<CpDXH+8M=ygtUh@7DtM$oN<LZIfo4
zyS#Y4)4s$T_AhSB@XdR=FmKw1y!e%2QJ+Qnu4^@{v{|`0Y|1RHTN>Tl7T8wLTz0mV
zt6rwQTm8drLC+OMmp&GS_iW!=62{B5dxuVR*uEWQg)K8`W9+X4o{|fQ>`9eP{Vm{n
zxL_+^BD<Y=Q(?ud@7wNte8qOYBCkGMD7w2REUNzhCr2~WriWVhUM*LB=XXn8`76r{
z=6gyy;oHPK*9gDux?H?H?9KuIccRKa&(3Y!a@`;yrt<I>vv*PNbF=QgzkXe8arnN|
zmP+<9PhxJb|0AKhIDYF%y#>(;eXPd<xsTf$PnsE4?_oCcUEq%m{7sFMH)U^~+9Llg
z;eI3gAB%gAea`QlOC5PH?-1S@K07A->Z>^(ay_d!p9ZAtVDE0tvzx<}R&9Fc=f*zW
zMGjuiPP}Wqw72sAjmvggh90IZIlEs}1srhTNcWHLQv2+__w$mYUXoi&?+b6QcI*tD
zT=*saQ0wF$_d37KSSHYXb>H3E%J=D~kMOL`-S*zMs_&Ja*2zUzPA_Wy>C`tZv~Z8%
z<(kMTuUpT|pLqRq=D|xUweRJAFAiZn7Pmsj`H|qfDO{a_hyKO)?_VqSw<Oc)#^$b9
z?eY@Acfwv?ej*w6@XqqAy_alfSby_fo2Kx8@tl$esrO#rUb_9=;wfQ?_qU&CYP|L^
zTJ?mIf<>BBxTwsx*wos*?@k`d>E|YuY~+YJtYz`^*OcO#4O=$MmMMMp!}FDD^N(!4
zP4@9i((f$v*G#)qY^PsQzGi~Z<aYsGIy+tdzG^h|`Dx^zpFMBy?&HUMGVU8cI=rk+
z=2WJ2-;B^*R(_Rk|CjG+OBSgAd9QNkr}sWdt#;0@nBJs`&r6tAy=CirmC3qX8;fMt
zW^TSvbI)VJ9n*qRfx7(#pU)U7beR2UN}IG--1YN2M~8h~hVPgEwv$Ym;bvR3p~C&}
zQyJOD9saV{+x8bK&G6OR!=n`udGXTh5A!l?dMw_&-MHgi;`O=>VvK5AnJ0!_@Y3jg
zxYdj~<(YThuk>g0_H~8kB;DTi;beSsn8S>TtSqm@!<%DvUk<)J(^At&Z_(!JwHM>`
z%D2yW|6-Mhc&hLsm7aymJEvwFp417wn>lHh(;CG)ADv2Pv)Zk_a5vXQC0ax)I`2x@
z=1Rw%GtVcryf8ZI*uuqafBM3l*gA3H^d^<#cMhD-JZGyK@G;lEC*$?8izh>zqm^G2
z<Xm0-KIY)JHH$tdr6<=e`quPsdUA8L%GA*FlV`^5^O$|r<lVdY-%$clmxVHIS+}m~
z|H5%$Zk1y7j%AL4=Zd*@6^ngq_1;+Q(V)NKPffuLr`<=Ey*K=<=Nv8*ZTHsU_|p$d
z^3?BsKlUm&wc1u>j;QXzC7(XK{uSi??DM6DsnFfdq^z2`u2G`$aO}?cf6ZbddS6#c
z=|7&bkFDm+>z-W+R>@xjs~+bl{XMd&|8v!W?~UK%lqKiumWf|G`Bca7=-bIf(=zk6
zGH={)EyA_Kp|kn@?j^N6)>|B|vAKp%oxWK=Yl`pGP1AhV`Ix`;a&uq$Cq!IIC^P%=
zn~T#QIj$3YSQ6SA|N5`;Byoe~Su>~oPI~<}+@ossVY>~juKB;^&hE{N(C;$deY#zz
z#v~~HnLwb>^dB>J*KPOds66rMo1WOV^FF!jvp-BuzE<rK`z^?JY4TPE|G<KjPvRO!
zyNqslzi+y4lq{6r{=(61qRPA_t8Xa!&y;`hdqd_I>rWB)pO$*q?tbR;;K!CHXR|AR
zn>)#$uw4H(FI7Ll;QG5tw%uC{{EwY2U*75xdHth{^%OSQiJA+8X7BCjP>SHL6S;p<
zY3lsdimV??MeZ)GGfl2oTg))`dEA1V3j3p@{0~ci*<z#M`YJtAVP?QavCiDQAF-2e
zdL4IK@cc{v(_h*ycZ{d4_sl6VQH=3hdHY;k7w@|op`X5Y&jfq>$BMjMZ_(Din=3zs
zY0mbHSu!(%dyW5cc_-ELE!t|Ze#*SHlals@oQo2TZj<$${AP}H`8BPxy9zen(Ai_0
zaliXQzC!Mkhx48UPOc2tcB=lDRDJ5Vyoa-nznvEmGd0gnxTL+}SV!mf)`_K8tx^I_
zFZsNPe9@?M`0$|@-yG(zdH48V$oz8Wu!+rOi!?uEZMu~Gb!*nDX-^$P#VbQspZ#XP
z|K>4GPkD~AJ<9$s-4Au-@w^GxtKXRx9Xk0*rpVDX7cOhW_Giz#p=sfHV;0BWC&xQ>
zFJCs@F4@TMw1>X5-`j)Umz4K9sl1fSFT5_}!ppnBGHOql#c6kyZ2_#hm0xaoH(z{^
zvbiaR_tEv>8)tqTTw)QS96zbszo;Opch%oVcdhqjWhJZMx_^HW&!7J5Q%)?>{!t~H
z+kVn9{R;D+i|yIBCKsAMZ=3U3b8lBGzyAJ>GoQ@!{9mNfHY?j<QvZ7<^~#7-i&&Ii
zc4P=ozp*Umo3QcgBfhGqO|@#Z+2(Jz3O7$UJo%jPMPG&k!AX~{HQjrxbote;CwsbB
zJO6GnRtTJM#%Fe--Gq!k6D<qhaLjd|@ab`b+>Kjn)aFM!S$^1Z_~5y9WhOQj)e}xs
z*X~=nz3$Mh$4@i_o@`{?bUeQD-;$>sr7hK!c~YwX*4owG`*Ciw-x<HcQpdu0y;jXV
z(~ljRKZn)9{*~^l_74+TuiXsMQt3Qqw0rB5XL}mAu&AEBf9$mS(@l4ycO`O$U75po
z!q0M2hpJ`S=1p6YrJAD_yv|-Knj+rTyK=k1ET4bMi(X9Ya*x~)GUd&hmtSUzeRtJ(
zdp_H_kU#E4w@7qa^7P%GPTikmcWrm;N0l!75H<CzvU}IPPeyfY+bsTmPxQtu7cN@s
zd^xf0`L;y~<s4s^nmo95+1&oytFU;zBXeJOaa-CtwLa{cpW#<(bw<1XYgpN(-#6EM
zHxv48W?cM6`BjmV_BVFf3rk`z{tx;RBE@~$iQD?Ox9Vq4t)E*ST)w>ikfD`SZ=;Wz
z<jOo@%fMWR>yk^tF8&pJxzLuGUynz)c=G&n?R7i$E<WV9eg82NtM8h*Q@2Xp(BE-P
zEPkCujC<8V!&Hq-oBfYWmYUvbY0l|#Z?jU;niaBV-<u_M^($>Y<o)Q>Rq1*jY~=g;
z@uKzpOXAi&|8;Dg(Xoj6)9UpLu9meQ`Ic1hby3Xbr;qZjk{y31|FyeP$+$9jkDJL(
zwS$qO)6yEZDlWBp*=#4r^d@rs(NA}`UP}Cv!1#C7SI?b>d+)rxc`o$-f=U1UAKiWP
z_WH3)=a~FjjM93Qo|G6pOwDxjw|Z%B(dG81<?L7YsJY4ZtKzPucGrCKWX|`FTd1pi
z;#aM0>e21JtvM<m-fq9=_})5b`MX3B*<)ep*W6~k_;Zu@lGEP4#)JA_`vXGm2YUyf
zT_I7vRh=!S^(EI&?RPa!e7AyQXZdUMT!}SKY}-Ha=e4;}VO6ti%f21WH#eOW^z6i;
zzdL_d?R`-5MehFUrGh73#8j-EyWqr|-N}(BuUT6?x%BgTnLg9nXOGh2m6mI|Z_yXI
z^LUxPyYJ4aDO!`yKm3s&qt<3KH))5l^Xgk4_%s{03h(`PZpu~j{B6ZuF)gMu8F%dY
zanaIFSJeATc5zCZ$b7qsFV8L-g`eOT6gczeHJjZcliB;y_G&$gc6jq#yN+o^%e=mt
z_ASD@`V#J5Q+>6s>BmIDw6~}HSLP<Ky61HGU*;k2?eZPDoT{bI*Q+V`UD(O>_s=qu
z7*^5m%aUXqv!+_^JI3EF*i?7)i+*u<rNlYDE=Os}UuLb|rPuuKUXABfc>nFxN>R&0
zr!Coch54NkOaG9w&roa6qmq3~vXWH)O}+OxKh%5onlqOoT>k!=_Ot%X8y`{0m`Q~m
ziszsB|8l&(ioayG!>Ny2(dE6{vt_5bf4{S0`BQcN#XaA4duG;W-1>d=Cc~EE7Xe=;
zI@N6}de!YSxw~e;%BsFUPt|5Cge?3nUL*PU;)R2L>&{wxh<>s2b`-c(^R4~l)fJzT
zTooTLJ-$2YMnOlV%<7o;3~NtRO?Pf|dNI#oqEA<JzwZX$qwNcytvdAX%Gn9(OUpA4
zJ}I~|d!A+2zx47Cs-+i;zDDKoUn~#WYPZ?cKT1;UWz3%cF@OFZ{jxJUd|Rz$zv++c
zud<Ayfn_gM=DIx7tPZz`ns0GW;8n5Hi_!~Dr^}b{m*q2E`FU5<HkNm{!|Ajy`JaW9
zP8!x#y!^fFxLW?EIO!UD)^oGx?usmXe8YE6(6OKCu1h54uXC3a_#E{(F2`)Se_L8s
z$jnTU1Fg6Ay{ww)?`pd7-W25~nLiVz@<#?o^hXA+GBEI8eTcnPDrNZ^pP7&I1HW#b
zQ}aA}`4s>CpBYcqPCc`DU8`wR`Yw;U1DESPwyiBUy%%Tw`k-V(tkOsJH9pfG?R|N|
zp<Lj`BB`81{j(JO#M-x2YzeI3V4a;7q9#;a$!PB`WNc@$drIa0V}Cs_KC|q)`e}m7
z%hJY->H8KLK65Ny<XUv%t?Bwm#?yRDzjLoYl6!8_8}-9#Y~c_7bqKy>o%^wJ;_Aoi
zi&FM&>AKyxli$AmUU_6~&M}`gAJ#?oD#dR6&@1cwuTcH6c39Q)?SV6nH7)vX{5W9t
z2X>X&%CBxrm~CY7Ja$)1J$tLa%Z`m<CpYQYecY>VkkxnK$MK1Rb2si~i%Qiw+;D7n
z`}#w>u1l@HeWLSejL}|WgY@V_cT9RuzLHal{XTzxn6$L|M5X!3kIv^lT6}XCU&&YL
zh`P$s4_2B+*6n<^r?PFce14aiv&P^e|02tobJ$)PslHD=pX+{#D{8;_2@Q`W(maQZ
z8*kVxdm`9v5XLmA+4Z{Wq%@^@7b4Fp#YtxP+UB;1{aG-@$3^x@CPUQf?lV#|isNmU
z{Cwjheput$jU|7toJ;d~yH1XEE>n`0;)AM1_x+AM)VlgfEqsF;ubyJ+(n+_UT6CtK
zUUI(hrQRA5e|z(yj;_uBe@<AQ8fu`WKBLl!C84aQ)0U-xUtgx;$1>49i%!k`x2{z`
z*Eex?WWc4}c2RS5Z_j)q9eH+hQ2BOg&GkZUk<0EG^ZlM1lUBD|X4}pWyVeD$NU!JG
z8lTp)=U<}j((21i-xH2}2$+&{NZ|0BTGk0qb)UZe{9!78X+4k3%4L(6z2>sKoU@(h
z$&%Im;iBAIe*dee^;~e_MeU#Hs;b^vaeL*t9j^|zKeaCW+#`Q3Wv|XJ@6QtRSdO26
zvGHgBhm{VS3J>2r`+d#UACKqXza)LRzK+w|(JMUlfN{s$>$>}!YJHe~teKv}wP4An
zi6^-?i`T5bT{gL9y^UvLowMrZ=3mL(b&pd!irtblE*dz`yCIZc;9I(S3e!V<&Z&F+
z7+I99kBA?V%t^ESsaIj)o*KB+bpJEX7|RdZn^(8B@@4Dh26^W3d+gadKWVDYvJdW?
zZ#FK_Il+E^**)#+c~{LPROJJXoS7lD{!MMC(?P-1$5o=f-|w8Va6T0Fr%mNSu+jUn
zli`P-=e2vkEohI*+GY_HarxJw&zmNFS6V&q!0YfE%@@B~%<Z`K`}*f(|B`MCqY!zy
zvy=Af_XX8Wwzp}0{ISwZWSY8a#)snV$5KtD_0*P3dmFc*I_Jk$j_>!%u6R^5<Sp3!
z{zb&a^OHVC-W5Cjeb?dH8<q(f?~jhImaa{kS8NrnCMF^7daUc!CC-OWo#nsmyd8Nd
zYLndlO(lA(rteKDnxkRVeJ-qM!^HIDOIkDT>TkDr_&H<$^R|~w_mmA|Vgz2dpWhw#
zbj$MSCo4KOJI7~bJvnNk-l^?!HJPXE^@gd7_~&|E_fgqpc2@JX`z^b*DeHr*f8^Hf
zd-(9`&o6I<PaTN*)_61Od(k<*-hcmQ>AaIx?=|U`dvo*9sf%kibIHFI_pNnkbJ{AD
z_*TyCuBF=K^!5J5xB8QcUoWk8$}V&*Y-~4N)_>R6+FZ!w#&+-5-|lVE-?*jk+_aq8
z*K_8cp0+*9YQxq;pM1S6Rj-Oq`|Nur?nc>NJ_RpP$<(MFlWX!lW=zd2T=a0;lM?R#
z;jIsMaooPVVxK&J@L&CNuTSn+o_}oHjeF4rI#WWvo{~QM@N{|6+FwPpjEd}wdY+%$
zR%UQy<+|JYHzVeTTimfs3^ks|<#w&N#L+);ll9)Mb7Hw-4@`YnDH%6;&8ye#FZ7nz
zDr?=VODlfM?k-<8&#$pL`qeinJ9Pygr<U@653)pjmF(`Ew?FvAOg+z_e2eqyH!JLZ
zY&~#YcHv%U{&%~M-zX7ptvyoa5}fjR_T_{P^U^j=)V}EJeR|D{*Lfk+VxPUf%4^Lh
zb7=Ovee-=z%S1o9p)93-&-=0BQ_dxVtxZKM%@0Jb&PkdZ{rI0!lGY>jBj-LHc8UHe
z%w}4#-FnG;ozvXU-icmS*WPu<*yxDVu0`dnkEcZzhc0P5=$JTp{Zc)-&}a72vg^5v
zbu}8)xxS`-*dKTClUiK;zN=eRE2Hb9>b6<g*y&%<+dA`Rz|XP^p9_19uAcu=cinnw
zwB(h88xASWRb2Ja|Chm~IY$-dE1XbkNPBs-V8ZM*KN_ts{SOsOGyGya>29q+NYzGt
zOYWIcvWK)n-j)Wjt33Z(RPpony6QuF)Bjw0c)BR0S59r+!8`ee`MxRL@hj}PWdFT9
zFttF%OrJr5TW0_N3qDoGanCOCHC(=PRO?<&o5kgj=l|sP-#+@|`T3=9|FO?MVDkub
z&dd~a2_CU?X6CS2G9v{u155Y}8p<Y717ma4O`@f&A(!ian*|+WnJ6Y8DSPMzpJ(Pv
zz2jyHN7!z^cqbz8GRSL!pP*)@z!Fs#0Y=WHOK$(~d0zQ%|MS}OmG?InZ+riI-+F8N
z>tAK9H?L!y&m@w`UESc4@PoyXDab)Jm)V$eK|_Oqhl2yhfpd8r$1M*3o5lF%n1P5?
zpNq#|{RSZ}wqpsorxJL?miM|anBJM&*mTIj(NNQ|P?M2y!Gwl}C;J;bricVczF}-<
z+Un@QtHRXAwn1Alc5h%oH9OC?GyCNlV+8URELgI{;{E%A1x?&MtnCeg4!H)$7@sw*
z<zTdC=A9s5!SncUzetP`pG41U5&Qkim#cHUX<}0h{8n^lkAuI(F~$}A&W8i!3^YDm
zKX9NuLHx%2lMW1J3l=iV{5_u6u;p+?Q=oyuwFf-y2Lv*5TCAD4oEbMBZDe~D<scg_
z@rXa-HGhNnk8*Pd#|aPiU;f+sZz@OM4_TfzhY5P?5?ah<68X0@TOV$);@{#Rq0gf)
z(9`gbscG&-j~tsD%sl06x04w6TeCCEYrJ4Qc!TkOUwhkv2kRtEIC#tdnJWEXZ*oI-
zwZZ}~4{>n`re?N3ulyzZnjAM|e}DGBc(WhJ67@sh-yh`bYq<4Sis{w6Q~50oyLTSG
zGWEaH2DJnAIo}L;0zw>ue0*GlIEtAM?NQ+Sv;UHG)$T)e)~xk2Hwypwy-O*!vFwIo
z!oLD*iEr!=y4k7^G)PRbK6C$jz4gCJCJrv9g#{dJ8Qh!Ol^On@>@z+5=HHx+)BBsM
z8Fg7U+!1Es`t$40?~`2K`WiwH-~5&T@&5Ny^Xow-7mas*Pk&VZTSRnXoI|`_BBR3m
zB`Y)n0s@>wH1za1zx+>^iZ%F?FU|D7Gt~WtV&kOxT}RiwjF+wcqsnkSzOaD#|IF8l
zLZ_o7CcL&+*)Ad=+K{lH<^TSb|E!<<KlUL$@?X5l|MzWjJFKn$mlgm0_Fq141NWVq
zzx5fsqsn>07;bs2;Su=HYufl%aIF~+S9$r*{Pk9BJ)%uahvdA|>>LFrG@OvPmif!@
zj<xyKAwz+7`zb$@&3~zyrdu#A>vlO@zc+eAAQRL7r-xs0KWeG1U$Ak{pSMkkPd}gE
zrNzM^^vgTlX;G4c0T=5xHjadsDlL2S;~m#1EHqeu--qo}vw#PW8B539i}D%mE{t`t
zs~2!gkng;@Q@6}FqAj_$q5etxj>Q2HbN?=5-1cMtx&5xZ&6Nig8g6Q;xLBRpXtw6*
zlBmXmli$CtK6F0*)*|7vRf}8<WiFqumEE!~eO2FXO}nPBJ90jk=T=G@nms*!U~{d}
zo79^VW%o>2^^K=_@ukgccATDWUa;$aBL8k~*GsqiJC?iZPkwK6F<GTLr7{2D&nqdf
zlw$S-SFA1C`e76A-ZZ_RvM-ow3QM{zr!szyP~863I&Y1n@on)l*2br!KZ<B{my|n~
zE}rOpC!*rd#w2f<yDPtMa;-VG`{&PpZ|==AdAPUc>^iNDT^wFkTJpTl?i^fVXZ1?`
zrc`f+44>;o<)za#J9SE2^#o<OD;~^S7s-8c*>-6OgV=9hk6Zim$(h(C9GjlLA!D}W
z^#{$rZom6><=krlYt~?nZ8@$_9VeZ8R&HXpLyBYnDdt;89{pu=*~0xe`kT1xo1XVJ
z6JG}_DJz{_JpG@=l_yv4JX~>qRRVwSr02=JI#aczSNsr}FIs!tec|gHhgUzFFk#Is
zBc*Tq_Gz9mSfn+7PV>T_%oSE^Yqs6pnAXwvVcGUC3oTzfYz%jntXx&NWLnSa*{A0^
zcckB`68GW1KRZ=(*XtaIAHQXU&t=){>)Wr<bXDQRrr-%`b>Ek6-t<^uZ^Dbf!b<m`
z_f^`*Kd*mZ-L0GYc$UpG+09*#r0X5#E@R)$p1<VOw@>vm6AafsKj$yF*K6_4-y2!a
z@9)0$>u(ZQ{DZ&wc8g<;%@56cx3Ff_zV|y~H$Qyde&*x^GvE1lqBXjdtMeZ-?we%Z
z9s5V)$nL~1RvimgAG5x&FSv2h4&6!K6AgYV9(!(>_jdB5#fRb=4Hujbir5#m{BU(y
zpjzKs`Mn39HX5=h@^w1d78wcM{<A~Wsr~W$dn;`3hfA&bX_Ig`q<qi80P&AoE2O`i
z%XlF7&tOr7(i~H6XF2=oT|RRgR)3oNXld(jy+s=Q8`EuGEoju%oaFneUb1m^<MUZZ
zCN4R(^`+2et$DWI34)If<>=0qQU5L*B+s0{IWcwT$B)g~`2kPQ%(`{A`}FS>za3sT
z9JwJP-L19jTG^+bfYkYG`1l>dRv(-uI61VIqv_6!>61@M*i29t_;pxu<p%c~Ub}8C
zJoov7RwL)Gd%u2MQ4Kb^wcO&AXZa7Y+Jzlgrl&-GQvNuRW23V`;EBFP5!zetrHI`9
za8##m!<n78r(4TzPqKL2uepB*%QZI3?rQEEo3GY#PYW}C#Xi@Hf5PVt%egvw?w=Og
z@*w1k$>FIR#ML%#sx$F4n&T$-rElJe(6@H8%QNmSoR=4{-C*)xR*|XF+h(q)4)@Xt
z{+*uoyY%D-ey_X7d>XyxpJjf`>cF?+cHgT-Q#{g-E=XVb_X^8ChfRwoEWfKad8T&V
z&n-^_A4&hsONh_c$Vs|#>tRIn7m0;kZC5r+iS1{yU0VHcd%olJRo46EcU{X_v+GWE
zuaZjqW97=;p65{?_*+uU`WKf8NZogO_U!HLyJ2B7cuN@L=FR)PGQY2_{$=o@2Ai%=
zH)WnpGQGZOtHIkKr@+PE-|ev|y7*yTw%E6WZlCy^7a2@Qy{z=0^O<H}+{S$puiAbt
zm$=rw@8Em8z3FYS>}QN7+T1e<>oTrfzvmn~tC!FFZ4Y*CoVk6ked4KB8G*B+)31oD
z)l|N8Tq8C`^Tgza+Y>u}RY~p?I41dt_57~ToU9`$1v_k8le({5I`g!B=D)v6@1Oak
zg)Y#TVyoX-6I}f6LfNbIkBQD}S?5WuyRt#6wwB?-t3}f0D{KXpJ9X=QKIW*Y^8KNU
z^Bt*`l?4mWYjiF+x^c@1uMMleRvkVpd;N2exofHdtK@T^FDGS8pFcj)`aQDo$uiI7
zcl+nQ`pXp_TKM5>P*v&cW;46Eu=3Rg9WGm=)hBFSXWqN?xZbIMUy|pW&wo%SqRjrX
zOYe*K^@#kZ+X}z+q-;+3wQF+vpCc3YymIL=Jk=-kVVC>2%bR8XaPN7VI<IBvdX<9f
zT)Ltn3!?wmo#=|*#J;Sw<a^;K-YEyqKK40Wd+oxr%&t$D!y2bfQT*lo`%qQx>h*8-
z^?aL>tNJqS{0lpmDNU`@KWx(Q-4xINt@d7U-M^w)(-&WB+*xk+CAH+v8I8ZwZu@5^
z@G>?mbo@LgBynelg2SDPf}&08p@v6a&(KJzVTg~8^vHR0?x&aH-f~l;$6G`4ei#&|
z$XIrNG76Y=skJoUe)DAE<(7wCI32QI_C8CHDV6$UuFo41a5uhhX>QS<5~)3#c5afG
zxU62}Oi1X?-?vhyD=*x(?fR?gC)_Qb87JP_c^vebsNsIv*KpeD`Ir68`lc+`?mx#G
zCv(2%>Wse?ZU?Vf8yker+`ZgK`MKrldciy5DRP{3lfA!&E~?(?EFNp5ezaET_@@}x
zH+v;sXP-YO^m|&v<QTL6mK(WCO`JJbdiS?Hj6S;|&&=uFlA|Bb1*}^wowl20-Y4(a
z+(Ud~cim3z^<8^pjo@4MM0b_WZ4-Lj7|NxMGbV1FS@-ww49|+ki}ejtCL|teG-+);
zCtzlC{?YI4+gC5n6nV$Mb>m#zwBwV*Uz7-$omlVq<d|@1OWrx(mFbatFU7yi-hX}m
zjipob)LrN3cc`UZ$P{j!&9L<u`v<+1Z&J>joOIquUgh!OO;?p(SoD9%yIVG8%bPDH
zv+KU)%=>fm#l=$-rOy~^{yC>*k*w|~XyRR1KC`tYdVja?hun9YPE3E1KJ}sN)Xbo{
z%ic|Ytetvwb$<MB6Ptvc#@Ej{1s}0Y(>e3~tY}`ropZ-$8&)0tz4)A#PK%=HE8FWv
z`{pcYe;3QA`23KyVf8u_r&lIDv!+*e%_*L@YT@256Z@qCPrlMz%^t$JSnT=jrN5*4
z<ab=#zPFGwcV*(#mAmF9>+OxP-g-9k(uQd=+C47cv^EPyKXD6TmssiYxLmGFsbj}`
zja#oCD48fNd~A1%LAUthijAJX1D$p&-1xnUZ_T7Y?^NsB#cXGzt9b<d`##LOxODj(
zOTRM=v-P&UT>8r9@h)lW3fF1ROGRE^dB~P}LD;^v;t#_Vn}xOto3cLE&J9uAY~}Ro
zc*cIe@3EIlzUXZ_Vp@}JwQPY^fzYGLrmwv(raE~fDTazHia#@F(ZqU%3*E1|1kbcT
z(I}J7ek5s}E+`pRvd*f#tbO+0szPts>3?j@PW`-Uo<A=`@lj`Zved!(34#}<y-)I5
z%pK!7_1W?C_$?~xIZsZ$JagyCJoZbKrH_q2Jzuuw`SO=FlTNJD+UtEnY5LBRGJ%k|
ztc2s?tA&qvR?c>weND&v|0CHePZn)@H({n?d2z_Uj{4b6mR#lwuIn~zJ+h^J{n=R4
z<u5;4Jo~&^_6L8>Jw6L|zDrx;J{`B+Aag6|gNHto#PsPF9}DVU&-N()VW8vcur~1}
z%jB#3cSz2@@~<Pym$zYlfl93Drx)pEu9YoZDvdvF-iG~ruAa2($^G>Hd%@Y8!=8Cw
zNN4GpQL^CG?fXIVZtT9iLwlveZa1y%ygS{VhFm)DkfeQIcHQyIIvnSxXDdePTFhQC
z%{oV3{lvO>;|bcOb2$Se^?G)C>rMJnxanxy)Z<Q8>6y9VZ};B#(^`A<DEHybhj#zd
zPL7^<&)M@_clm^kuAZGn-Wz+@TD<CJE#4$qb>iW}6VvN12u<C5&iCAo)Okyaw12xd
z|NC^ll$ArM$&1%{{p2MfQ#@{{$3605<bUiQF10M{=alD1Kl>lQ|M=ROtfG4<|IEH-
z=&$%2Vy%0rXzfM^rk#S{X3X3Fc-2wAuNM-lcIs+vR14SF(4RL&iE;j~SCjo0-Z}bU
z^+SWL-<F&?q|EKY@$hn*&E#Ene|B~?F>DdauyNjZ>&2R-Znry&UL4;0{M+yO%Kb90
z!`^-^m{K4WBlxU%;<WkRHLKQ6+@ajNDA~v@*LzE{XtGhc=hwBLdpFcqOmF`1mn+Ek
z>gBd4<@+)Nb)>}>Yqdw7yvDa<Pqg@}4NVq&Txl%2(I1}f+c;<H^Ss-o+0(jG`_|Q@
z&i^w*^7*Be-rEW^TGq}MzV_SFKx2o@npe5Y6kdycy);E5Jm#{&tAFBouWuUJ&rMz@
zDyX<Dvt{MvC9nCXMn%g0P^xd<{=&9%YmT9>@M{gj{!6i}UoL6=y^^6-9~mB8Usz?^
zyzjchj&+m&Y}*uafZeyr+RR~N%vysRIbTwkX3AyGTXddbcGwkf^ZL-mGfaM`y8LH-
z;QjdLuZQWPhjnMpb?h&WJeuAylR0FgJvW1SQfPSFi?dG0ra#X4{yXtA^Y1&muDFLa
zzt+#$92dS#X`f5&(o~%;dHX%bK2+{nzWhtWv4D%ENx}*uJucO+ySp!GPVSe@dgU=E
zbW?t2^sR4tYqr<C$$We^$EI=Z{e-gb8qUjqO$%DoKQky<JN>LrwRPOR;8@;6nj6&1
z1N@}Z@>c{`G)(>y((&}LE#on^Rd1womnRlUwq90u`IW70lrrzJ?)g6vHopqK=<{xO
zV+gmutP#6z*80nKJLY{`^RhO0s?_15R|>=KCUd1e^)I#k9=}}ty8ZWr<gB=3ub0_w
z(U=$cbB$S^nOFYH#lMZ2Sn_#%A7%Mi@}HdPGlyk+N>}jJ8Q*gBYQ_Fl>cvd{9?^KH
zfU9Qnsaw{*r}$pxmYn}Q_lrd2p;z6~g0d?(4hwW|e#RsCD*2SP*_JgQHhc3MySfFx
zTzR&=Z>OBCpGwffw$sJUtvk%?FCFoC8Tsw^*@=4YwI*Dm>!eOyZ;t=0+#7MF<5YZD
z;QMTb$9gx+AGY>4?!0|c^Tz(q@7LFb?u#tBUw>py!;XI*>(sB>o>yDq`ev)G{>P%=
z$=fDopI5Mr=Y5e}xWl`##oO`i)Co(jSXSIFU$o5T!-3+I<376Us|@$pX{IQe>IcpU
z-4dzI<M}k@NS2U2(?XwRdAt*^R~~BXu5$aaQf>LF+J^qCrOV4RHXHdap2Fp^aoHiC
zkn+0xXUjVxe;pU}vlH}w{rmc}w?U81Jo;rjBj&4^TUY;Dw&#lMLK8=`A1TjUA3Z%_
z!S}SflG`KFs$XxhXI@~>f^7_6E|_bSPD%S5zU#?7`9pu6ANKdsv6vR!s_O8vLPl%v
z%B#AJ&%zzq92X?qesFf#EZxe6MK_jAciE7`eA+cG=#tNc3G<h<bbOq>&UWpl;}=^y
z^HO{szFYphx82O?SGag{|AVu|mkt~)X8h^*TUd{A-n)w$zr>~A{&Y<@Oq}jMEkjuF
zb-?2Cpv&gMKUNrtFew@e#$H`{fBzG$3+xjzAF11_7&P#{&T&{#<fK#a<g&Tb>7C+#
zU)!#!HO_y`%vEJ|ySP|NzVY~;YbTy07;OIV{-)rPeX?(?j%gh~E!g>bUHcvnsg{T<
z3u11cy&L_H<wxq3YrpeypR7B!Ua$9E0HemQj>o@$@rJmuuU~jiD7W6&A?(pamyWco
zFER!3-l|t@1p9p_ggk$p`=D^&i?q|`HIn75>!cSRwb=O2V#m>a`mYwP;9V*;&)3p>
zf{u7|!7|BwkI#SC%y{E%`Ly}+iHP!bH}72ve7%}4a+$wQMearOqzzF?`$WFZjgxyA
z!lkQGwV{0f?<Pl<<+`a>;ivwwU-VoQWAbxb&ezaq%T6cR1s}YSaH-7ohl9fWh?y3$
zB@3U;SsW-l=Wg!B#fSBF$vrfXxoBs)WPho@Gnb21dg&a2)6Aiou{~Tb*ZT{pJwG3|
z$^O$){~hmJEH&$m=8Noh{vmp~@WYm;%Cm30?mzy_dSlnxNogNWzN|ec9d+3JqD-)G
zzO?@BuqDcS)$bpTyt}YE`<Tc<Po26O=iNVEI~@9a*F8h-143_NzZF)jKA-h>Wzx}r
zSznr8cv~HPy7<*Lb2Byhq))DEZtl~+Q+G0G^VHCVHx{ipZ^Nj#)OUGv%bK&RcJV%w
ztrlsy6t{gA&x+S|tBx6~aC+o!f2ADK^={^==ia|d%0Dgrw_)+o_S=33{TQ!2J#+Gp
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%0Dn%l|Shf_aZ
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
UQc;we#${w^#-*z2>hHz{0G&UJ3IG5A

diff --git a/atomicfeaturespackage/docs/_build/latex/atomic-features-package.tex b/atomicfeaturespackage/docs/_build/latex/atomic-features-package.tex
deleted file mode 100644
index 32545c1..0000000
--- a/atomicfeaturespackage/docs/_build/latex/atomic-features-package.tex
+++ /dev/null
@@ -1,2494 +0,0 @@
-%% Generated by Sphinx.
-\def\sphinxdocclass{report}
-\documentclass[letterpaper,10pt,english,openany,oneside]{sphinxmanual}
-\ifdefined\pdfpxdimen
-   \let\sphinxpxdimen\pdfpxdimen\else\newdimen\sphinxpxdimen
-\fi \sphinxpxdimen=.75bp\relax
-
-\PassOptionsToPackage{warn}{textcomp}
-\usepackage[utf8]{inputenc}
-\ifdefined\DeclareUnicodeCharacter
-% support both utf8 and utf8x syntaxes
-  \ifdefined\DeclareUnicodeCharacterAsOptional
-    \def\sphinxDUC#1{\DeclareUnicodeCharacter{"#1}}
-  \else
-    \let\sphinxDUC\DeclareUnicodeCharacter
-  \fi
-  \sphinxDUC{00A0}{\nobreakspace}
-  \sphinxDUC{2500}{\sphinxunichar{2500}}
-  \sphinxDUC{2502}{\sphinxunichar{2502}}
-  \sphinxDUC{2514}{\sphinxunichar{2514}}
-  \sphinxDUC{251C}{\sphinxunichar{251C}}
-  \sphinxDUC{2572}{\textbackslash}
-\fi
-\usepackage{cmap}
-\usepackage[T1]{fontenc}
-\usepackage{amsmath,amssymb,amstext}
-\usepackage{babel}
-
-
-
-\usepackage{times}
-\expandafter\ifx\csname T@LGR\endcsname\relax
-\else
-% LGR was declared as font encoding
-  \substitutefont{LGR}{\rmdefault}{cmr}
-  \substitutefont{LGR}{\sfdefault}{cmss}
-  \substitutefont{LGR}{\ttdefault}{cmtt}
-\fi
-\expandafter\ifx\csname T@X2\endcsname\relax
-  \expandafter\ifx\csname T@T2A\endcsname\relax
-  \else
-  % T2A was declared as font encoding
-    \substitutefont{T2A}{\rmdefault}{cmr}
-    \substitutefont{T2A}{\sfdefault}{cmss}
-    \substitutefont{T2A}{\ttdefault}{cmtt}
-  \fi
-\else
-% X2 was declared as font encoding
-  \substitutefont{X2}{\rmdefault}{cmr}
-  \substitutefont{X2}{\sfdefault}{cmss}
-  \substitutefont{X2}{\ttdefault}{cmtt}
-\fi
-
-
-\usepackage[Bjarne]{fncychap}
-\usepackage{sphinx}
-
-\fvset{fontsize=\small}
-\usepackage{geometry}
-
-
-% Include hyperref last.
-\usepackage{hyperref}
-% Fix anchor placement for figures with captions.
-\usepackage{hypcap}% it must be loaded after hyperref.
-% Set up styles of URL: it should be placed after hyperref.
-\urlstyle{same}
-\addto\captionsenglish{\renewcommand{\contentsname}{Contents:}}
-
-\usepackage{sphinxmessages}
-\setcounter{tocdepth}{1}
-
-
-
-\title{atomic\sphinxhyphen{}features\sphinxhyphen{}package}
-\date{Sep 28, 2021}
-\release{}
-\author{Aakash Naik}
-\newcommand{\sphinxlogo}{\vbox{}}
-\renewcommand{\releasename}{}
-\makeindex
-\begin{document}
-
-\pagestyle{empty}
-\sphinxmaketitle
-\pagestyle{plain}
-\sphinxtableofcontents
-\pagestyle{normal}
-\phantomsection\label{\detokenize{index::doc}}
-
-
-
-\chapter{Description}
-\label{\detokenize{README:description}}\label{\detokenize{README::doc}}
-Unified package that contains atomic\sphinxhyphen{}features from various sources like PYMATGEN,MAGPIE,LDA2015,WEBELEMENTS amd FHI\_dft can be imported into Jupyter\sphinxhyphen{}notebook for performing various machine learning studies
-
-\sphinxstylestrong{——————————————————————————————————————————————————\sphinxhyphen{}}
-
-
-\chapter{Getting Started}
-\label{\detokenize{README:getting-started}}
-To install this package download it as tar.gz archive. Then use the following command
-
-\sphinxcode{\sphinxupquote{pip install ./\textless{}name\sphinxhyphen{}of\sphinxhyphen{}tar\sphinxhyphen{}package\textgreater{}.tar.gz}}
-
-\sphinxstylestrong{——————————————————————————————————————————————————\sphinxhyphen{}}
-
-
-\chapter{Importing this package modules in Jupyter notebook}
-\label{\detokenize{README:importing-this-package-modules-in-jupyter-notebook}}
-\sphinxcode{\sphinxupquote{from atomicfeaturespackage.atomicproperties import periodictable}}
-
-This module is a visualization tool that allows us to visualize atomic properites of all elements accross periodic table as a heatmap. Currently, this tool is able to visualize atomic properties acessible from atomic\_properties\_dft and atomic\_properties\_lda2015 module.
-
-Below is an example line of code you need to run to visualize data calculated via the HSE06 functional and spinless settings.
-
-\sphinxcode{\sphinxupquote{periodictable.heatmap(Spin = \textquotesingle{}False\textquotesingle{}, method = \textquotesingle{}hse06\textquotesingle{})}}
-
-In method arg in heatmap function one can specify what functional one wants visualize atomic properties for.
-Currently data evaluated are available from following functionals ‘HSE06’, ‘REVPBE’, ‘PW\sphinxhyphen{}LDA’, ‘PBE’ , ‘PBESOL’, ‘PBE0’, ‘LDA2015’ .
-Spin Setting can be set to ‘TRUE’ or ‘FALSE’.
-
-After running the above line of code one gets a plot of complete periodic table of elements. From the dropdown menu, one can select which property one is interested to check and the table is updated automatically to show the corresponding heatmap.
-
-\sphinxstylestrong{——————————————————————————————————————————————————\sphinxhyphen{}}
-
-\sphinxcode{\sphinxupquote{from atomicfeaturespackage.atomicproperties import atomic\_properties\_dft as dft}}
-
-This module contains several atomic features accessible from FHI\sphinxhyphen{}AIMS dft calculations
-
-To access atomic properties calculated from different DFT functionals and spin setting one first need to instantiate Specific functional and spin setting one is interested to access using the method function of this module. This can be done as follows :
-
-\sphinxcode{\sphinxupquote{dft.method(method = \textquotesingle{}pbe\textquotesingle{}, Spin = \textquotesingle{}False\textquotesingle{})}}
-
-Currently data evaluated are available from following functionals ‘HSE06’, ‘REVPBE’, ‘PW\sphinxhyphen{}LDA’, ‘PBE’ , ‘PBESOL’, ‘PBE0’.
-
-Spin Setting can be set to ‘TRUE’ or ‘FALSE’.
-
-One can now acess individually different properties using element symbol as following
-
-\begin{sphinxVerbatim}[commandchars=\\\{\}]
-    \PYG{n}{dft}\PYG{o}{.}\PYG{n}{C}\PYG{o}{.}\PYG{n}{atomic\PYGZus{}ea}
-    \PYG{n}{dft}\PYG{o}{.}\PYG{n}{C}\PYG{o}{.}\PYG{n}{atomic\PYGZus{}r\PYGZus{}p}
-    \PYG{n}{dft}\PYG{o}{.}\PYG{n}{C}\PYG{o}{.}\PYG{n}{atomic\PYGZus{}ip\PYGZus{}by\PYGZus{}half\PYGZus{}charged\PYGZus{}homo}
-\end{sphinxVerbatim}
-
-To get a list of properties accessible one can just press Tab after typing in \sphinxcode{\sphinxupquote{dft.C.}}
-
-Use symbol method from atomic\_properties\_dft module to acess property of interest of elements at once say for example we have a python list ls = {[}‘Sc’,’Ti’, ‘V’, ‘Cr’{]} and we wish to get atomic number of these elements we can do the following
-
-\begin{sphinxVerbatim}[commandchars=\\\{\}]
-    \PYG{n}{atomic\PYGZus{}number} \PYG{o}{=} \PYG{p}{[}\PYG{p}{]}
-    \PYG{k}{for} \PYG{n}{i} \PYG{o+ow}{in} \PYG{n}{ls}\PYG{p}{:}
-        \PYG{n}{atomic\PYGZus{}number}\PYG{o}{.}\PYG{n}{append}\PYG{p}{(}\PYG{n}{dft}\PYG{o}{.}\PYG{n}{symbol}\PYG{p}{(}\PYG{n}{i}\PYG{p}{)}\PYG{o}{.}\PYG{n}{atomic\PYGZus{}number}\PYG{p}{)}
-\end{sphinxVerbatim}
-
-\sphinxstylestrong{——————————————————————————————————————————————————\sphinxhyphen{}}
-
-\sphinxcode{\sphinxupquote{from atomicfeaturespackage.atomicproperties import atomic\_properties\_pymat as pymat}}
-
-This module contains several atomic features accessible from pymatgen
-
-One can now acess individually different properties using element symbol as following
-
-\begin{sphinxVerbatim}[commandchars=\\\{\}]
-    \PYG{n}{pymat}\PYG{o}{.}\PYG{n}{C}\PYG{o}{.}\PYG{n}{atomic\PYGZus{}ea}
-    \PYG{n}{pymat}\PYG{o}{.}\PYG{n}{C}\PYG{o}{.}\PYG{n}{atomic\PYGZus{}r\PYGZus{}p}
-    \PYG{n}{pymat}\PYG{o}{.}\PYG{n}{C}\PYG{o}{.}\PYG{n}{atomic\PYGZus{}ip\PYGZus{}by\PYGZus{}half\PYGZus{}charged\PYGZus{}homo} 
-\end{sphinxVerbatim}
-
-To get a list of properties accessible one can just press Tab after typing in \sphinxcode{\sphinxupquote{pymat.C.}}
-
-Use symbol method from atomic\_properties\_pymat module to acess property of interest of elements at once in similar manner as described for atomic\_properties\_dft module above.
-
-\sphinxstylestrong{——————————————————————————————————————————————————\sphinxhyphen{}}
-
-\sphinxcode{\sphinxupquote{from atomicfeaturespackage.atomicproperties import atomic\_properties\_lda2015 as lda}}
-
-This module contains several atomic features accessible from lda2015 paper
-
-One can acess individually different properties using element symbol as following
-
-\begin{sphinxVerbatim}[commandchars=\\\{\}]
-    \PYG{n}{lda}\PYG{o}{.}\PYG{n}{C}\PYG{o}{.}\PYG{n}{atomic\PYGZus{}ea}
-    \PYG{n}{lda}\PYG{o}{.}\PYG{n}{C}\PYG{o}{.}\PYG{n}{atomic\PYGZus{}r\PYGZus{}p}
-\end{sphinxVerbatim}
-
-To get a list of properties accessible one can just press Tab after typing in \sphinxcode{\sphinxupquote{lda.C.}}
-
-Use symbol method from atomic\_properties\_lda2015 module to acess property of interest of elements at once in similar manner as described for atomic\_properties\_dft module above.
-
-\sphinxstylestrong{——————————————————————————————————————————————————\sphinxhyphen{}}
-
-\sphinxcode{\sphinxupquote{from atomicfeaturespackage.atomicproperties import atomic\_properties\_webele as webele}}
-
-This module contains several atomic features accessible from Webelements source
-
-One can acess individually different properties using element symbol as following
-
-\begin{sphinxVerbatim}[commandchars=\\\{\}]
-    \PYG{n}{webele}\PYG{o}{.}\PYG{n}{C}\PYG{o}{.}\PYG{n}{atomic\PYGZus{}radius\PYGZus{}calculated}
-    \PYG{n}{webele}\PYG{o}{.}\PYG{n}{C}\PYG{o}{.}\PYG{n}{critical\PYGZus{}temperature}
-\end{sphinxVerbatim}
-
-To get a list of properties accessible one can just press Tab after typing in \sphinxcode{\sphinxupquote{webele.C.}}
-
-Use symbol method from atomic\_properties\_webele module to acess property of interest of elements at once in similar manner as described for atomic\_properties\_dft module above.
-
-
-\chapter{atomic\sphinxhyphen{}features\sphinxhyphen{}package package}
-\label{\detokenize{atomicfeaturespackage:atomic-features-package-package}}\label{\detokenize{atomicfeaturespackage::doc}}
-
-\section{Subpackages}
-\label{\detokenize{atomicfeaturespackage:subpackages}}
-
-\subsection{atomicfeaturespackage.atomicproperties package}
-\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage-atomicproperties-package}}\label{\detokenize{atomicfeaturespackage.atomicproperties::doc}}
-
-\subsubsection{atomicfeaturespackage.atomicproperties.atomic\_properties\_dft module}
-\label{\detokenize{atomicfeaturespackage.atomicproperties:module-atomicfeaturespackage.atomicproperties.atomic_properties_dft}}\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage-atomicproperties-atomic-properties-dft-module}}\index{atomicfeaturespackage.atomicproperties.atomic\_properties\_dft (module)@\spxentry{atomicfeaturespackage.atomicproperties.atomic\_properties\_dft}\spxextra{module}}
-Module : atomic\_properties\_dft
-
-This module with help of  atomic\_properties\_fhi class from metainfo module instantiates objects with atomic element symbol as identifier to access atomic features available
-\index{definition() (in module atomicfeaturespackage.atomicproperties.atomic\_properties\_dft)@\spxentry{definition()}\spxextra{in module atomicfeaturespackage.atomicproperties.atomic\_properties\_dft}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.atomic_properties_dft.definition}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.atomic\_properties\_dft.}}\sphinxbfcode{\sphinxupquote{definition}}}{\emph{abc}}{}
-This function can be used to access quantity definitions for each element features accessible
-
-\end{fulllineitems}
-
-\index{f() (in module atomicfeaturespackage.atomicproperties.atomic\_properties\_dft)@\spxentry{f()}\spxextra{in module atomicfeaturespackage.atomicproperties.atomic\_properties\_dft}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.atomic_properties_dft.f}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.atomic\_properties\_dft.}}\sphinxbfcode{\sphinxupquote{f}}}{\emph{df1}, \emph{objs}}{}
-This method instantiates objects of class atomic\_properties\_fhi when spin arg is set to “FALSE”.
-
-\end{fulllineitems}
-
-\index{method() (in module atomicfeaturespackage.atomicproperties.atomic\_properties\_dft)@\spxentry{method()}\spxextra{in module atomicfeaturespackage.atomicproperties.atomic\_properties\_dft}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.atomic_properties_dft.method}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.atomic\_properties\_dft.}}\sphinxbfcode{\sphinxupquote{method}}}{\emph{Spin=\textquotesingle{}\textquotesingle{}}, \emph{method=\textquotesingle{}\textquotesingle{}}}{}
-After importing atomic\_properties\_dft module one must call this method function to instantiate element objects. One must supply Spin and method   appropirate keywords agruments as per one’s interest.
-
-Spin arg value could be :
-\begin{itemize}
-\item {} 
-“True”
-
-\item {} 
-“False”
-
-\end{itemize}
-
-method arg value could be :
-\begin{itemize}
-\item {} 
-“hse06”
-
-\item {} 
-“pbe”
-
-\item {} 
-“pbe0”
-
-\item {} 
-“pbesol”
-
-\item {} 
-“pw\sphinxhyphen{}lda”
-
-\item {} 
-“revpbe”
-
-\end{itemize}
-
-As per different combinations specific datafiles will be read and element features could be accessed
-
-\end{fulllineitems}
-
-\index{symbol() (in module atomicfeaturespackage.atomicproperties.atomic\_properties\_dft)@\spxentry{symbol()}\spxextra{in module atomicfeaturespackage.atomicproperties.atomic\_properties\_dft}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.atomic_properties_dft.symbol}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.atomic\_properties\_dft.}}\sphinxbfcode{\sphinxupquote{symbol}}}{\emph{abc}}{}
-This function utilty is, it can be called to access element properties based on its symbol in periodic table. Can be usefull if want to acess particular property of multiple elements at once
-
-\end{fulllineitems}
-
-\index{t() (in module atomicfeaturespackage.atomicproperties.atomic\_properties\_dft)@\spxentry{t()}\spxextra{in module atomicfeaturespackage.atomicproperties.atomic\_properties\_dft}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.atomic_properties_dft.t}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.atomic\_properties\_dft.}}\sphinxbfcode{\sphinxupquote{t}}}{\emph{df1}, \emph{objs}}{}
-This method instantiates objects of class atomic\_properties\_fhi when spin arg is set to “TRUE”.
-
-\end{fulllineitems}
-
-
-
-\subsubsection{atomicfeaturespackage.atomicproperties.atomic\_properties\_lda2015 module}
-\label{\detokenize{atomicfeaturespackage.atomicproperties:module-atomicfeaturespackage.atomicproperties.atomic_properties_lda2015}}\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage-atomicproperties-atomic-properties-lda2015-module}}\index{atomicfeaturespackage.atomicproperties.atomic\_properties\_lda2015 (module)@\spxentry{atomicfeaturespackage.atomicproperties.atomic\_properties\_lda2015}\spxextra{module}}
-Module : atomic\_properties\_lda2015
-
-This module with help of  atomic\_properties\_lda2015 class from metainfo module instantiates objects with atomic element symbol as identifier to access atomic features available
-\index{definition() (in module atomicfeaturespackage.atomicproperties.atomic\_properties\_lda2015)@\spxentry{definition()}\spxextra{in module atomicfeaturespackage.atomicproperties.atomic\_properties\_lda2015}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.atomic_properties_lda2015.definition}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.atomic\_properties\_lda2015.}}\sphinxbfcode{\sphinxupquote{definition}}}{\emph{abc}}{}
-This function can be used to access quantity definitions for each element features accessible
-
-\end{fulllineitems}
-
-\index{symbol() (in module atomicfeaturespackage.atomicproperties.atomic\_properties\_lda2015)@\spxentry{symbol()}\spxextra{in module atomicfeaturespackage.atomicproperties.atomic\_properties\_lda2015}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.atomic_properties_lda2015.symbol}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.atomic\_properties\_lda2015.}}\sphinxbfcode{\sphinxupquote{symbol}}}{\emph{abc}}{}
-This function utilty is, it can be called to access element properties based on its symbol in periodic table. Can be usefull if one wants to acess particular property of multiple elements at once
-
-\end{fulllineitems}
-
-
-
-\subsubsection{atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer module}
-\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage-atomicproperties-atomic-properties-matminer-module}}\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:module-atomicfeaturespackage.atomicproperties.atomic_properties_matminer}}\index{atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer (module)@\spxentry{atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer}\spxextra{module}}
-Module : atomic\_properties\_matminer
-
-This module with help of  atomic\_properties\_matminer class from metainfo module instantiates objects with atomic element symbol as identifier to access atomic features available
-\index{atomicsymbol() (in module atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer)@\spxentry{atomicsymbol()}\spxextra{in module atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.atomic_properties_matminer.atomicsymbol}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer.}}\sphinxbfcode{\sphinxupquote{atomicsymbol}}}{}{}
-\end{fulllineitems}
-
-\index{definition() (in module atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer)@\spxentry{definition()}\spxextra{in module atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.atomic_properties_matminer.definition}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer.}}\sphinxbfcode{\sphinxupquote{definition}}}{\emph{abc}}{}
-This function can be used to access quantity definitions for each element features accessible
-
-\end{fulllineitems}
-
-\index{ionizationen() (in module atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer)@\spxentry{ionizationen()}\spxextra{in module atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.atomic_properties_matminer.ionizationen}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer.}}\sphinxbfcode{\sphinxupquote{ionizationen}}}{}{}
-\end{fulllineitems}
-
-\index{oxistates() (in module atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer)@\spxentry{oxistates()}\spxextra{in module atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.atomic_properties_matminer.oxistates}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer.}}\sphinxbfcode{\sphinxupquote{oxistates}}}{}{}
-\end{fulllineitems}
-
-\index{symbol() (in module atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer)@\spxentry{symbol()}\spxextra{in module atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.atomic_properties_matminer.symbol}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer.}}\sphinxbfcode{\sphinxupquote{symbol}}}{\emph{abc}}{}
-This function utilty is, it can be called to access element properties based on its symbol in periodic table. Can be usefull if one wants to acess particular property of multiple elements at once
-
-\end{fulllineitems}
-
-
-
-\subsubsection{atomicfeaturespackage.atomicproperties.atomic\_properties\_pymat module}
-\label{\detokenize{atomicfeaturespackage.atomicproperties:module-atomicfeaturespackage.atomicproperties.atomic_properties_pymat}}\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage-atomicproperties-atomic-properties-pymat-module}}\index{atomicfeaturespackage.atomicproperties.atomic\_properties\_pymat (module)@\spxentry{atomicfeaturespackage.atomicproperties.atomic\_properties\_pymat}\spxextra{module}}
-Module : atomic\_properties\_pymat
-
-This module with help of  atomic\_properties\_pymat class from metainfo module instantiates objects with atomic element symbol as identifier to access atomic features available
-\index{definition() (in module atomicfeaturespackage.atomicproperties.atomic\_properties\_pymat)@\spxentry{definition()}\spxextra{in module atomicfeaturespackage.atomicproperties.atomic\_properties\_pymat}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.atomic_properties_pymat.definition}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.atomic\_properties\_pymat.}}\sphinxbfcode{\sphinxupquote{definition}}}{\emph{abc}}{}
-This function can be used to access quantity definitions for each element features accessible
-
-\end{fulllineitems}
-
-\index{rename\_keys() (in module atomicfeaturespackage.atomicproperties.atomic\_properties\_pymat)@\spxentry{rename\_keys()}\spxextra{in module atomicfeaturespackage.atomicproperties.atomic\_properties\_pymat}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.atomic_properties_pymat.rename_keys}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.atomic\_properties\_pymat.}}\sphinxbfcode{\sphinxupquote{rename\_keys}}}{\emph{d}, \emph{keys}}{}
-\end{fulllineitems}
-
-\index{symbol() (in module atomicfeaturespackage.atomicproperties.atomic\_properties\_pymat)@\spxentry{symbol()}\spxextra{in module atomicfeaturespackage.atomicproperties.atomic\_properties\_pymat}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.atomic_properties_pymat.symbol}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.atomic\_properties\_pymat.}}\sphinxbfcode{\sphinxupquote{symbol}}}{\emph{abc}}{}
-This function utilty is, it can be called to access element properties based on its symbol in periodic table. Can be usefull if want to acess   particular property of multiple elements at once
-
-\end{fulllineitems}
-
-
-
-\subsubsection{atomicfeaturespackage.atomicproperties.periodictable module}
-\label{\detokenize{atomicfeaturespackage.atomicproperties:module-atomicfeaturespackage.atomicproperties.periodictable}}\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage-atomicproperties-periodictable-module}}\index{atomicfeaturespackage.atomicproperties.periodictable (module)@\spxentry{atomicfeaturespackage.atomicproperties.periodictable}\spxextra{module}}
-Module : periodictable
-
-This module with help to visualize atomic properties available from dft, lda2015, matminer,webele and pymat module via the periodic table in the form of heatmaps
-\index{clean() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{clean()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.clean}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.periodictable.}}\sphinxbfcode{\sphinxupquote{clean}}}{}{}
-Cleaning and renaming of pandas dataframe imported from bokeh package
-
-\end{fulllineitems}
-
-\index{f() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{f()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.f}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.periodictable.}}\sphinxbfcode{\sphinxupquote{f}}}{\emph{df3}, \emph{df4}}{}
-Adds atomic\_properites\_dft module atomic features(Spin= “False”) to previously cleaned pandas dataframe imported from bokeh
-
-\end{fulllineitems}
-
-\index{featuref() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{featuref()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.featuref}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.periodictable.}}\sphinxbfcode{\sphinxupquote{featuref}}}{}{}
-Generates the python list of features needed for interactive dropdown menu in heatmap plot. This functions gives features list for element properties from atomic\_properties\_dft module and spin set to “False”.
-
-\end{fulllineitems}
-
-\index{featurelda() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{featurelda()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.featurelda}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.periodictable.}}\sphinxbfcode{\sphinxupquote{featurelda}}}{}{}
-Generates the python list of features needed for interactive dropdown menu in heatmap plot. This functions gives features list for element properties from atomic\_properties\_lda2015 module.
-
-\end{fulllineitems}
-
-\index{featurematmin() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{featurematmin()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.featurematmin}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.periodictable.}}\sphinxbfcode{\sphinxupquote{featurematmin}}}{}{}
-Generates the python list of features needed for interactive dropdown menu in heatmap plot. This functions gives features list for element properties from atomic\_properties\_magpie module.
-
-\end{fulllineitems}
-
-\index{featurepymat() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{featurepymat()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.featurepymat}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.periodictable.}}\sphinxbfcode{\sphinxupquote{featurepymat}}}{}{}
-Generates the python list of features needed for interactive dropdown menu in heatmap plot. This functions gives features list for element properties from atomic\_properties\_pymat module.
-
-\end{fulllineitems}
-
-\index{featuret() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{featuret()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.featuret}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.periodictable.}}\sphinxbfcode{\sphinxupquote{featuret}}}{}{}
-Generates the python list of features needed for interactive dropdown menu in heatmap plot. This functions gives features list for element properties from atomic\_properties\_dft module and spin set to “True”.
-
-\end{fulllineitems}
-
-\index{featurewebele() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{featurewebele()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.featurewebele}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.periodictable.}}\sphinxbfcode{\sphinxupquote{featurewebele}}}{}{}
-Generates the python list of features needed for interactive dropdown menu in heatmap plot. This functions gives features list for element properties from atomic\_properties\_webele module.
-
-\end{fulllineitems}
-
-\index{heatmap() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{heatmap()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.heatmap}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.periodictable.}}\sphinxbfcode{\sphinxupquote{heatmap}}}{\emph{Spin=\textquotesingle{}\textquotesingle{}}, \emph{method=\textquotesingle{}\textquotesingle{}}}{}
-After importing periodictable module one must call this heatmap method to get interactive heatmaps. One must supply Spin and method appropirate keywords agruments as per one’s interest.
-
-Spin arg value could be :
-\begin{itemize}
-\item {} 
-“True”
-
-\item {} 
-“False”
-
-\end{itemize}
-
-method arg value could be :
-\begin{itemize}
-\item {} 
-“hse06”
-
-\item {} 
-“pbe”
-
-\item {} 
-“pbe0”
-
-\item {} 
-“pbesol”
-
-\item {} 
-“pw\sphinxhyphen{}lda”
-
-\item {} 
-“revpbe”
-
-\item {} 
-“matmin”
-
-\item {} 
-“lda2015”
-
-\item {} 
-“pymat”
-
-\item {} 
-“webele”
-
-\end{itemize}
-
-\begin{sphinxadmonition}{note}{Note:}
-Note : for method “matmin”/“lda2015”/“pymat”/”webele” spin arg value has to “False”
-\end{sphinxadmonition}
-
-As per different combinations specific element features will be loaded in heatmap plots.
-
-\end{fulllineitems}
-
-\index{lda() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{lda()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.lda}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.periodictable.}}\sphinxbfcode{\sphinxupquote{lda}}}{\emph{df3}, \emph{df4}}{}
-Adds atomic\_properites\_lda2015 module atomic features to previously cleaned pandas dataframe imported from bokeh
-
-\end{fulllineitems}
-
-\index{matmin() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{matmin()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.matmin}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.periodictable.}}\sphinxbfcode{\sphinxupquote{matmin}}}{\emph{df3}, \emph{df4}}{}
-Adds atomic\_properties\_matminer module atomic features to previously cleaned pandas dataframe imported from bokeh
-
-\end{fulllineitems}
-
-\index{ptableplotgenf() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{ptableplotgenf()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.ptableplotgenf}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.periodictable.}}\sphinxbfcode{\sphinxupquote{ptableplotgenf}}}{\emph{Feature}}{}
-Sets all the heatmap plot properties like text, colour mappers ,tittle, axis, legend etc for atomic\_properties\_dft module(Spin=”False”).
-
-\end{fulllineitems}
-
-\index{ptableplotgenlda() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{ptableplotgenlda()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.ptableplotgenlda}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.periodictable.}}\sphinxbfcode{\sphinxupquote{ptableplotgenlda}}}{\emph{Feature}}{}
-Sets all the heatmap plot properties like text, colour mappers ,tittle, axis, legend etc for atomic\_properties\_lda2015 module.
-
-\end{fulllineitems}
-
-\index{ptableplotgenmatmin() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{ptableplotgenmatmin()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.ptableplotgenmatmin}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.periodictable.}}\sphinxbfcode{\sphinxupquote{ptableplotgenmatmin}}}{\emph{Feature}}{}
-Sets all the heatmap plot properties like text, colour mappers ,tittle, axis, legend etc for atomic\_properties\_magpie module.
-
-\end{fulllineitems}
-
-\index{ptableplotgenpymat() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{ptableplotgenpymat()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.ptableplotgenpymat}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.periodictable.}}\sphinxbfcode{\sphinxupquote{ptableplotgenpymat}}}{\emph{Feature}}{}
-Sets all the heatmap plot properties like text, colour mappers ,tittle, axis, legend etc for atomic\_properties\_pymat module.
-
-\end{fulllineitems}
-
-\index{ptableplotgent() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{ptableplotgent()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.ptableplotgent}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.periodictable.}}\sphinxbfcode{\sphinxupquote{ptableplotgent}}}{\emph{Feature}}{}
-Sets all the heatmap plot properties like text, colour mappers ,tittle, axis, legend etc for atomic\_properties\_dft module(Spin=”True”).
-
-\end{fulllineitems}
-
-\index{ptableplotgenwebele() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{ptableplotgenwebele()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.ptableplotgenwebele}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.periodictable.}}\sphinxbfcode{\sphinxupquote{ptableplotgenwebele}}}{\emph{Feature}}{}
-Sets all the heatmap plot properties like text, colour mappers ,tittle, axis, legend etc for atomic\_properties\_webele module.
-
-\end{fulllineitems}
-
-\index{pymat() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{pymat()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.pymat}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.periodictable.}}\sphinxbfcode{\sphinxupquote{pymat}}}{\emph{df3}, \emph{df4}}{}
-Adds atomic\_properites\_pymat module atomic features to previously cleaned pandas dataframe imported from bokeh
-
-\end{fulllineitems}
-
-\index{showfigf() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{showfigf()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.showfigf}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.periodictable.}}\sphinxbfcode{\sphinxupquote{showfigf}}}{\emph{Feature}}{}
-Generates an interactive heatmap with dropdown menu for  atomic\_properites\_dft module atomic features(Spin= “False”)
-
-\end{fulllineitems}
-
-\index{showfiglda() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{showfiglda()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.showfiglda}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.periodictable.}}\sphinxbfcode{\sphinxupquote{showfiglda}}}{\emph{Feature}}{}
-Generates an interactive heatmap with dropdown menu for  atomic\_properites\_lda2015 module atomic features.
-
-\end{fulllineitems}
-
-\index{showfigmatmin() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{showfigmatmin()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.showfigmatmin}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.periodictable.}}\sphinxbfcode{\sphinxupquote{showfigmatmin}}}{\emph{Feature}}{}
-Generates an interactive heatmap with dropdown menu for  atomic\_properites\_magpie module atomic features.
-
-\end{fulllineitems}
-
-\index{showfigpymat() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{showfigpymat()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.showfigpymat}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.periodictable.}}\sphinxbfcode{\sphinxupquote{showfigpymat}}}{\emph{Feature}}{}
-Generates an interactive heatmap with dropdown menu for  atomic\_properites\_pymat module atomic features.
-
-\end{fulllineitems}
-
-\index{showfigt() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{showfigt()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.showfigt}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.periodictable.}}\sphinxbfcode{\sphinxupquote{showfigt}}}{\emph{Feature}}{}
-Generates an interactive heatmap with dropdown menu for  atomic\_properites\_dft module atomic features(Spin= “True”)
-
-\end{fulllineitems}
-
-\index{showfigwebele() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{showfigwebele()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.showfigwebele}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.periodictable.}}\sphinxbfcode{\sphinxupquote{showfigwebele}}}{\emph{Feature}}{}
-Generates an interactive heatmap with dropdown menu for  atomic\_properites\_webele module atomic features.
-
-\end{fulllineitems}
-
-\index{t() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{t()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.t}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.periodictable.}}\sphinxbfcode{\sphinxupquote{t}}}{\emph{df3}, \emph{df4}}{}
-Adds atomic\_properites\_dft module atomic features(Spin= “True”) to previously cleaned pandas dataframe imported from bokeh
-
-\end{fulllineitems}
-
-\index{webele() (in module atomicfeaturespackage.atomicproperties.periodictable)@\spxentry{webele()}\spxextra{in module atomicfeaturespackage.atomicproperties.periodictable}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.atomicproperties:atomicfeaturespackage.atomicproperties.periodictable.webele}}\pysiglinewithargsret{\sphinxcode{\sphinxupquote{atomicfeaturespackage.atomicproperties.periodictable.}}\sphinxbfcode{\sphinxupquote{webele}}}{\emph{df3}, \emph{df4}}{}
-Adds atomic\_properites\_webele module atomic features to previously cleaned pandas dataframe imported from bokeh
-
-\end{fulllineitems}
-
-
-
-\subsection{atomicfeaturespackage.metainfo package}
-\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage-metainfo-package}}\label{\detokenize{atomicfeaturespackage.metainfo::doc}}
-
-\subsubsection{atomicfeaturespackage.metainfo.metainfo module}
-\label{\detokenize{atomicfeaturespackage.metainfo:module-atomicfeaturespackage.metainfo.metainfo}}\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage-metainfo-metainfo-module}}\index{atomicfeaturespackage.metainfo.metainfo (module)@\spxentry{atomicfeaturespackage.metainfo.metainfo}\spxextra{module}}\index{atomic\_properties\_fhi (class in atomicfeaturespackage.metainfo.metainfo)@\spxentry{atomic\_properties\_fhi}\spxextra{class in atomicfeaturespackage.metainfo.metainfo}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi}}\pysiglinewithargsret{\sphinxbfcode{\sphinxupquote{class }}\sphinxcode{\sphinxupquote{atomicfeaturespackage.metainfo.metainfo.}}\sphinxbfcode{\sphinxupquote{atomic\_properties\_fhi}}}{\emph{m\_def: Optional{[}nomad.metainfo.metainfo.Section{]} = None}, \emph{m\_resource: nomad.metainfo.metainfo.MResource = None}, \emph{**kwargs}}{}~\index{atomic\_ea (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_ea}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_ea}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_ea}}}
-Provides the atomic electron affinity calculated 
-from energy difference
-
-\end{fulllineitems}
-
-\index{atomic\_ea\_by\_half\_charged\_homo (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_ea\_by\_half\_charged\_homo}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_ea_by_half_charged_homo}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_ea\_by\_half\_charged\_homo}}}
-Provides the half charged atomic electron affinity 
-of HOMO
-
-\end{fulllineitems}
-
-\index{atomic\_element\_symbol (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_element\_symbol}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_element_symbol}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_element\_symbol}}}
-Provides the symbol of element as per periodic table
-
-\end{fulllineitems}
-
-\index{atomic\_hfomo (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_hfomo}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_hfomo}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_hfomo}}}
-Provides the energy of highest of fully filled molecular orbital
-
-\end{fulllineitems}
-
-\index{atomic\_hpomo (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_hpomo}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_hpomo}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_hpomo}}}
-Provides the energy of highest partially filled molecular orbital
-
-\end{fulllineitems}
-
-\index{atomic\_ip (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_ip}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_ip}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_ip}}}
-Provides the atomic ionization potential calculated  from energy difference
-
-\end{fulllineitems}
-
-\index{atomic\_ip\_by\_half\_charged\_homo (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_ip\_by\_half\_charged\_homo}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_ip_by_half_charged_homo}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_ip\_by\_half\_charged\_homo}}}
-Provides the half charged atomic ionization potential 
-of HOMO
-
-\end{fulllineitems}
-
-\index{atomic\_lfumo (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_lfumo}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_lfumo}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_lfumo}}}
-Provides the energy of lowest fully filled molecular orbital
-
-\end{fulllineitems}
-
-\index{atomic\_lpumo (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_lpumo}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_lpumo}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_lpumo}}}
-Provides the energy lowest partially filled molecular orbital
-
-\end{fulllineitems}
-
-\index{atomic\_number (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_number}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_number}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_number}}}
-Provides the number of protons found in nucleus
-
-\end{fulllineitems}
-
-\index{atomic\_r\_d (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_r\_d}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_d}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_r\_d}}}
-Provides the d orbital atomic radii
-
-\end{fulllineitems}
-
-\index{atomic\_r\_d\_05 (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_r\_d\_05}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_d_05}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_r\_d\_05}}}
-Provides the d orbital atomic radii of +0.5 charged
-
-\end{fulllineitems}
-
-\index{atomic\_r\_d\_1 (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_r\_d\_1}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_d_1}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_r\_d\_1}}}
-Provides the d orbital atomic radii of +1 charged
-
-\end{fulllineitems}
-
-\index{atomic\_r\_d\_neg\_05 (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_r\_d\_neg\_05}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_d_neg_05}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_r\_d\_neg\_05}}}
-Provides the d orbital atomic radii of \sphinxhyphen{}0.5 charged
-
-\end{fulllineitems}
-
-\index{atomic\_r\_d\_neg\_1 (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_r\_d\_neg\_1}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_d_neg_1}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_r\_d\_neg\_1}}}
-Provides the d orbital atomic radii of \sphinxhyphen{}1 charged
-
-\end{fulllineitems}
-
-\index{atomic\_r\_p (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_r\_p}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_p}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_r\_p}}}
-Provides the p orbital atomic radii
-
-\end{fulllineitems}
-
-\index{atomic\_r\_p\_05 (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_r\_p\_05}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_p_05}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_r\_p\_05}}}
-Provides the p orbital atomic radii of +0.5 charged
-
-\end{fulllineitems}
-
-\index{atomic\_r\_p\_1 (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_r\_p\_1}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_p_1}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_r\_p\_1}}}
-Provides the p orbital atomic radii of +1 charged
-
-\end{fulllineitems}
-
-\index{atomic\_r\_p\_neg\_05 (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_r\_p\_neg\_05}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_p_neg_05}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_r\_p\_neg\_05}}}
-Provides the p orbital atomic radii of \sphinxhyphen{}0.5 charged
-
-\end{fulllineitems}
-
-\index{atomic\_r\_p\_neg\_1 (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_r\_p\_neg\_1}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_p_neg_1}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_r\_p\_neg\_1}}}
-Provides the p orbital atomic radii of \sphinxhyphen{}1 charged
-
-\end{fulllineitems}
-
-\index{atomic\_r\_s (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_r\_s}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_s}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_r\_s}}}
-Provides the s orbital atomic radii
-
-\end{fulllineitems}
-
-\index{atomic\_r\_s\_05 (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_r\_s\_05}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_s_05}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_r\_s\_05}}}
-Provides the s orbital atomic radii of +0.5 charged
-
-\end{fulllineitems}
-
-\index{atomic\_r\_s\_1 (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_r\_s\_1}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_s_1}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_r\_s\_1}}}
-Provides the s orbital atomic radii of +1 charged
-
-\end{fulllineitems}
-
-\index{atomic\_r\_s\_neg\_05 (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_r\_s\_neg\_05}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_s_neg_05}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_r\_s\_neg\_05}}}
-Provides the s orbital atomic radii of \sphinxhyphen{}0.5 charged
-
-\end{fulllineitems}
-
-\index{atomic\_r\_s\_neg\_1 (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_r\_s\_neg\_1}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_s_neg_1}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_r\_s\_neg\_1}}}
-Provides the s orbital atomic radii of \sphinxhyphen{}1 charged
-
-\end{fulllineitems}
-
-\index{atomic\_r\_val (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_r\_val}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_val}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_r\_val}}}
-Provides the atomic radii of element
-
-\end{fulllineitems}
-
-\index{atomic\_r\_val\_05 (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_r\_val\_05}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_val_05}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_r\_val\_05}}}
-Provides the atomic radii of +0.5 charged
-
-\end{fulllineitems}
-
-\index{atomic\_r\_val\_1 (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_r\_val\_1}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_val_1}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_r\_val\_1}}}
-Provides the atomic radii of +1 charged
-
-\end{fulllineitems}
-
-\index{atomic\_r\_val\_neg\_05 (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_r\_val\_neg\_05}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_val_neg_05}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_r\_val\_neg\_05}}}
-Provides the atomic radii of \sphinxhyphen{}0.5 charged
-
-\end{fulllineitems}
-
-\index{atomic\_r\_val\_neg\_1 (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{atomic\_r\_val\_neg\_1}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.atomic_r_val_neg_1}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_r\_val\_neg\_1}}}
-Provides the atomic radii of \sphinxhyphen{}1 charged
-
-\end{fulllineitems}
-
-\index{section\_fhi\_metadata (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute)@\spxentry{section\_fhi\_metadata}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_fhi attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_fhi.section_fhi_metadata}}\pysigline{\sphinxbfcode{\sphinxupquote{section\_fhi\_metadata}}}
-This section contains metadata information of several atomic features accessible from FHI as source
-\sphinxurl{https://gitlab.mpcdf.mpg.de/nomad-lab/atomic\_features\_fhi\_aims\_really\_tight/-/tree/master/csv}
-
-Note : If spin settings are set to “TRUE”, then first element of of any atomic property for eg: atomic\_r\_s{[}0{]} corresponds to spin up configuration and atomic\_r\_s{[}1{]} corresponds to spin down configuration. This is consistent for all the atomic properties defined in this class.
-
-\end{fulllineitems}
-
-
-\end{fulllineitems}
-
-\index{atomic\_properties\_lda2015 (class in atomicfeaturespackage.metainfo.metainfo)@\spxentry{atomic\_properties\_lda2015}\spxextra{class in atomicfeaturespackage.metainfo.metainfo}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015}}\pysiglinewithargsret{\sphinxbfcode{\sphinxupquote{class }}\sphinxcode{\sphinxupquote{atomicfeaturespackage.metainfo.metainfo.}}\sphinxbfcode{\sphinxupquote{atomic\_properties\_lda2015}}}{\emph{m\_def: Optional{[}nomad.metainfo.metainfo.Section{]} = None}, \emph{m\_resource: nomad.metainfo.metainfo.MResource = None}, \emph{**kwargs}}{}~\index{atomic\_ea (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute)@\spxentry{atomic\_ea}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_ea}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_ea}}}
-Provides the atomic electron affinity calculated 
-from energy difference
-
-\end{fulllineitems}
-
-\index{atomic\_element\_symbol (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute)@\spxentry{atomic\_element\_symbol}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_element_symbol}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_element\_symbol}}}
-Provides the symbol of element as per periodic table
-
-\end{fulllineitems}
-
-\index{atomic\_homo (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute)@\spxentry{atomic\_homo}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_homo}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_homo}}}
-Provides the energy of highest fully filled molecular orbital
-
-\end{fulllineitems}
-
-\index{atomic\_ip (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute)@\spxentry{atomic\_ip}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_ip}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_ip}}}
-Provides the atomic ionization potential calculated  from energy difference
-
-\end{fulllineitems}
-
-\index{atomic\_lumo (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute)@\spxentry{atomic\_lumo}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_lumo}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_lumo}}}
-Provides the energy of lowest fully filled molecular orbital
-
-\end{fulllineitems}
-
-\index{atomic\_number (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute)@\spxentry{atomic\_number}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_number}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_number}}}
-Provides the number of protons found in nucleus
-
-\end{fulllineitems}
-
-\index{atomic\_period (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute)@\spxentry{atomic\_period}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_period}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_period}}}
-Provides the period number to which the element belongs in periodic table
-
-\end{fulllineitems}
-
-\index{atomic\_r\_d (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute)@\spxentry{atomic\_r\_d}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_r_d}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_r\_d}}}
-Provides the d orbital atomic radii
-
-\end{fulllineitems}
-
-\index{atomic\_r\_p (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute)@\spxentry{atomic\_r\_p}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_r_p}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_r\_p}}}
-Provides the p orbital atomic radii
-
-\end{fulllineitems}
-
-\index{atomic\_r\_s (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute)@\spxentry{atomic\_r\_s}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.atomic_r_s}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_r\_s}}}
-Provides the s orbital atomic radii
-
-\end{fulllineitems}
-
-\index{section\_lda2015\_metadata (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute)@\spxentry{section\_lda2015\_metadata}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_lda2015 attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_lda2015.section_lda2015_metadata}}\pysigline{\sphinxbfcode{\sphinxupquote{section\_lda2015\_metadata}}}
-This section contains metadata schema definition of several atomic features accessible from lda2015 paper as source
-
-\end{fulllineitems}
-
-
-\end{fulllineitems}
-
-\index{atomic\_properties\_matminer (class in atomicfeaturespackage.metainfo.metainfo)@\spxentry{atomic\_properties\_matminer}\spxextra{class in atomicfeaturespackage.metainfo.metainfo}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer}}\pysiglinewithargsret{\sphinxbfcode{\sphinxupquote{class }}\sphinxcode{\sphinxupquote{atomicfeaturespackage.metainfo.metainfo.}}\sphinxbfcode{\sphinxupquote{atomic\_properties\_matminer}}}{\emph{m\_def: Optional{[}nomad.metainfo.metainfo.Section{]} = None}, \emph{m\_resource: nomad.metainfo.metainfo.MResource = None}, \emph{**kwargs}}{}~\index{atomic\_ICSD\_vol (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_ICSD\_vol}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ICSD_vol}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_ICSD\_vol}}}
-Volume per atom of ICSD phae at STP
-
-\end{fulllineitems}
-
-\index{atomic\_cpmass (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_cpmass}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_cpmass}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_cpmass}}}
-Specific heat capacity at STP
-
-\end{fulllineitems}
-
-\index{atomic\_cpmolar (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_cpmolar}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_cpmolar}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_cpmolar}}}
-Molar heat capacity at STP
-
-\end{fulllineitems}
-
-\index{atomic\_density (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_density}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_density}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_density}}}
-Density of element at STP : g/L
-
-\end{fulllineitems}
-
-\index{atomic\_ea (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_ea}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ea}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_ea}}}
-Electron affinitiy
-
-\end{fulllineitems}
-
-\index{atomic\_element\_symbol (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_element\_symbol}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_element_symbol}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_element\_symbol}}}
-Provides the symbol of element as per periodic table
-
-\end{fulllineitems}
-
-\index{atomic\_en (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_en}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_en}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_en}}}
-Pauling electronegativity
-
-\end{fulllineitems}
-
-\index{atomic\_en\_allen (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_en\_allen}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_en_allen}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_en\_allen}}}
-Allen electronegativity
-
-\end{fulllineitems}
-
-\index{atomic\_hfu (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_hfu}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_hfu}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_hfu}}}
-Enthalpy of fusion for elements at their melting temperatures
-
-\end{fulllineitems}
-
-\index{atomic\_hhip (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_hhip}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_hhip}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_hhip}}}
-Herfindahl\sphinxhyphen{}Hirschman Index (HHI) production values
-
-\end{fulllineitems}
-
-\index{atomic\_hhir (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_hhir}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_hhir}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_hhir}}}
-Herfindahl\sphinxhyphen{}Hirschman Index (HHI) reserves values
-
-\end{fulllineitems}
-
-\index{atomic\_hvap (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_hvap}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_hvap}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_hvap}}}
-Enthalpy of vaporization for elements at their boiling temperatures
-
-\end{fulllineitems}
-
-\index{atomic\_ie (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_ie}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ie}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_ie}}}
-Energy to remove the 1st,2nd,3rd..  electron from an element
-
-\end{fulllineitems}
-
-\index{atomic\_ie\_1 (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_ie\_1}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ie_1}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_ie\_1}}}
-Energy to remove the first electron from an element
-
-\end{fulllineitems}
-
-\index{atomic\_ie\_2 (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_ie\_2}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ie_2}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_ie\_2}}}
-Energy to remove the second electron from an element
-
-\end{fulllineitems}
-
-\index{atomic\_isalkali (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_isalkali}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_isalkali}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_isalkali}}}
-Boolean value of whether an element is an alkali or alkali earth metal
-
-\end{fulllineitems}
-
-\index{atomic\_isdblock (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_isdblock}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_isdblock}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_isdblock}}}
-Boolean value of whether an element is a d\sphinxhyphen{}block metal
-
-\end{fulllineitems}
-
-\index{atomic\_isfblock (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_isfblock}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_isfblock}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_isfblock}}}
-Boolean value of whether an element is an f\sphinxhyphen{}block metal
-
-\end{fulllineitems}
-
-\index{atomic\_ismetal (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_ismetal}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ismetal}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_ismetal}}}
-Boolean value of whether an element is a metal
-
-\end{fulllineitems}
-
-\index{atomic\_ismetalloid (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_ismetalloid}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ismetalloid}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_ismetalloid}}}
-Boolean value of whether an element is a metalloid
-
-\end{fulllineitems}
-
-\index{atomic\_isnonmetal (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_isnonmetal}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_isnonmetal}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_isnonmetal}}}
-Boolean value of whether an element is a nonmetal
-
-\end{fulllineitems}
-
-\index{atomic\_ndunf (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_ndunf}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ndunf}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_ndunf}}}
-Property: Number of unfilled d valence orbitals
-Notes: Number of unoccupied orbitals = 0 if shell unoccupied, Maximum\sphinxhyphen{}Filled if occupied
-
-\end{fulllineitems}
-
-\index{atomic\_ndval (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_ndval}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ndval}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_ndval}}}
-Number of filled d valence orbitals
-
-\end{fulllineitems}
-
-\index{atomic\_nfunf (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_nfunf}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_nfunf}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_nfunf}}}
-Property: Number of unfilled f valence orbitals
-Notes: Number of unoccupied orbitals = 0 if shell unoccupied, Maximum\sphinxhyphen{}Filled if occupied
-
-\end{fulllineitems}
-
-\index{atomic\_nfval (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_nfval}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_nfval}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_nfval}}}
-Number of filled f valence orbitals
-
-\end{fulllineitems}
-
-\index{atomic\_npunf (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_npunf}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_npunf}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_npunf}}}
-Number of unfilled p valence orbitals
-Notes: Number of unoccupied orbitals = 0 if shell unoccupied, Maximum\sphinxhyphen{}Filled if occupied
-
-\end{fulllineitems}
-
-\index{atomic\_npval (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_npval}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_npval}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_npval}}}
-Number of filled p valence orbitals
-
-\end{fulllineitems}
-
-\index{atomic\_nsunf (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_nsunf}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_nsunf}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_nsunf}}}
-Number of unfilled s valence orbitals
-Notes: Number of unoccupied orbitals = 0 if shell unoccupied, Maximum\sphinxhyphen{}Filled if occupied
-
-\end{fulllineitems}
-
-\index{atomic\_nsval (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_nsval}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_nsval}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_nsval}}}
-Number of filled s valence orbitals
-
-\end{fulllineitems}
-
-\index{atomic\_number (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_number}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_number}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_number}}}
-Atomic number
-
-\end{fulllineitems}
-
-\index{atomic\_nunf (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_nunf}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_nunf}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_nunf}}}
-Number of unfilled valence orbitals 
-Notes: Number of unoccupied orbitals = 0 if shell unoccupied, Maximum\sphinxhyphen{}Filled if occupied
-
-\end{fulllineitems}
-
-\index{atomic\_nval (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_nval}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_nval}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_nval}}}
-Number of valence electrons
-
-\end{fulllineitems}
-
-\index{atomic\_oxstates (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_oxstates}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_oxstates}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_oxstates}}}
-Observed oxidation states for each element
-
-\end{fulllineitems}
-
-\index{atomic\_phi (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_phi}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_phi}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_phi}}}
-Adjusted work function (used in the Miedema’s model)
-
-\end{fulllineitems}
-
-\index{atomic\_pol (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_pol}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_pol}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_pol}}}
-Static average electric dipole polarizability : 10\textasciicircum{}\sphinxhyphen{}24
-
-\end{fulllineitems}
-
-\index{atomic\_pp\_r\_d (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_pp\_r\_d}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_pp_r_d}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_pp\_r\_d}}}
-Psuedopotential radius of d orbital : a.u
-
-\end{fulllineitems}
-
-\index{atomic\_pp\_r\_p (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_pp\_r\_p}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_pp_r_p}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_pp\_r\_p}}}
-Psuedopotential radius of p orbital : a.u
-
-\end{fulllineitems}
-
-\index{atomic\_pp\_r\_pi (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_pp\_r\_pi}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_pp_r_pi}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_pp\_r\_pi}}}
-Absolute value of the different between the radii of s and 
-p orbitals : a.u
-
-\end{fulllineitems}
-
-\index{atomic\_pp\_r\_s (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_pp\_r\_s}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_pp_r_s}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_pp\_r\_s}}}
-Psuedopotential radius of s orbital : a.u
-
-\end{fulllineitems}
-
-\index{atomic\_pp\_r\_sig (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_pp\_r\_sig}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_pp_r_sig}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_pp\_r\_sig}}}
-Sum of the radii of s and p orbitals : a.u
-
-\end{fulllineitems}
-
-\index{atomic\_radius (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_radius}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_radius}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_radius}}}
-Atomic radius
-
-\end{fulllineitems}
-
-\index{atomic\_sgn (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_sgn}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_sgn}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_sgn}}}
-Space group of T=0K ground state structure 
-Source: Only structures from the ICSD were evaluated  Pm used OQMD groundstate in Spacegroup 194,
-which is only 4 meV/atom below 166. No ICSD structure
-
-\end{fulllineitems}
-
-\index{atomic\_vdw\_radius (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_vdw\_radius}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_vdw_radius}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_vdw\_radius}}}
-Van der Waals radius
-
-\end{fulllineitems}
-
-\index{atomic\_volume (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_volume}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_volume}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_volume}}}
-Volume of an atom of each element : A\textasciicircum{}3 / atom
-
-\end{fulllineitems}
-
-\index{atomic\_weight (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_weight}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_weight}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_weight}}}
-Atomic weight
-
-\end{fulllineitems}
-
-\index{atomic\_ws3 (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{atomic\_ws3}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.atomic_ws3}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_ws3}}}
-Electron density at surface of Wigner\sphinxhyphen{}Sietz cell. Used in Miedema’s model
-
-\end{fulllineitems}
-
-\index{boiling\_temp (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{boiling\_temp}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.boiling_temp}}\pysigline{\sphinxbfcode{\sphinxupquote{boiling\_temp}}}
-Boiling temperature
-
-\end{fulllineitems}
-
-\index{bulk\_modulus (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{bulk\_modulus}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.bulk_modulus}}\pysigline{\sphinxbfcode{\sphinxupquote{bulk\_modulus}}}
-Bulk modulus
-
-\end{fulllineitems}
-
-\index{covalent\_radius (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{covalent\_radius}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.covalent_radius}}\pysigline{\sphinxbfcode{\sphinxupquote{covalent\_radius}}}
-Covalent radius of each element
-
-\end{fulllineitems}
-
-\index{gs\_bandgap (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{gs\_bandgap}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.gs_bandgap}}\pysigline{\sphinxbfcode{\sphinxupquote{gs\_bandgap}}}
-DFT bandgap energy of T=0K ground state
-
-\end{fulllineitems}
-
-\index{gs\_bcclatparam (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{gs\_bcclatparam}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.gs_bcclatparam}}\pysigline{\sphinxbfcode{\sphinxupquote{gs\_bcclatparam}}}
-Estimated BCC lattice parameter based on the DFT volume of the 
-OQMD ground state for each element
-
-\end{fulllineitems}
-
-\index{gs\_energy\_pa (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{gs\_energy\_pa}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.gs_energy_pa}}\pysigline{\sphinxbfcode{\sphinxupquote{gs\_energy\_pa}}}
-DFT energy per atom (raw VASP value) of T=0K ground state : eV/atom
-
-\end{fulllineitems}
-
-\index{gs\_fcclatparam (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{gs\_fcclatparam}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.gs_fcclatparam}}\pysigline{\sphinxbfcode{\sphinxupquote{gs\_fcclatparam}}}
-Estimated FCC lattice parameter based on the DFT volume of the 
-OQMD ground state for each element
-
-\end{fulllineitems}
-
-\index{gs\_mag\_mom (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{gs\_mag\_mom}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.gs_mag_mom}}\pysigline{\sphinxbfcode{\sphinxupquote{gs\_mag\_mom}}}
-DFT magnetic momenet of T=0K ground state
-
-\end{fulllineitems}
-
-\index{gs\_volume\_pa (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{gs\_volume\_pa}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.gs_volume_pa}}\pysigline{\sphinxbfcode{\sphinxupquote{gs\_volume\_pa}}}
-DFT volume per atom of T=0K ground state : Angs\textasciicircum{}3/atom
-
-\end{fulllineitems}
-
-\index{melting\_point (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{melting\_point}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.melting_point}}\pysigline{\sphinxbfcode{\sphinxupquote{melting\_point}}}
-Melting temperature of element
-
-\end{fulllineitems}
-
-\index{mendeleev\_no (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{mendeleev\_no}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.mendeleev_no}}\pysigline{\sphinxbfcode{\sphinxupquote{mendeleev\_no}}}
-Mendeleev Number(position on the periodic table, counting columnwise 
-from H)
-
-\end{fulllineitems}
-
-\index{micracle\_radius (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{micracle\_radius}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.micracle_radius}}\pysigline{\sphinxbfcode{\sphinxupquote{micracle\_radius}}}
-Assessed radii of elements in metallic glass structures
-
-\end{fulllineitems}
-
-\index{molar\_volume (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{molar\_volume}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.molar_volume}}\pysigline{\sphinxbfcode{\sphinxupquote{molar\_volume}}}
-Molar Volume
-
-\end{fulllineitems}
-
-\index{periodict\_column (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{periodict\_column}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.periodict_column}}\pysigline{\sphinxbfcode{\sphinxupquote{periodict\_column}}}
-Column on periodic table 
-Notes: Column of all RE elements is listed as 3
-
-\end{fulllineitems}
-
-\index{periodict\_row (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{periodict\_row}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.periodict_row}}\pysigline{\sphinxbfcode{\sphinxupquote{periodict\_row}}}
-Row on periodic table
-
-\end{fulllineitems}
-
-\index{section\_matmin\_metadata (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{section\_matmin\_metadata}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.section_matmin_metadata}}\pysigline{\sphinxbfcode{\sphinxupquote{section\_matmin\_metadata}}}
-This section contains metadata schema definition of several atomic features accessible from Magpie as source
-\sphinxurl{https://github.com/hackingmaterials/matminer/tree/master/matminer/utils/data\_files/magpie\_elementdata}
-
-\end{fulllineitems}
-
-\index{shear\_mod (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{shear\_mod}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.shear_mod}}\pysigline{\sphinxbfcode{\sphinxupquote{shear\_mod}}}
-Shear modulus
-
-\end{fulllineitems}
-
-\index{thermal\_cond (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{thermal\_cond}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.thermal_cond}}\pysigline{\sphinxbfcode{\sphinxupquote{thermal\_cond}}}
-Thermal conductivity
-
-\end{fulllineitems}
-
-\index{thermal\_cond\_log (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute)@\spxentry{thermal\_cond\_log}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_matminer attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_matminer.thermal_cond_log}}\pysigline{\sphinxbfcode{\sphinxupquote{thermal\_cond\_log}}}
-Logarithmic Thermal conductivity
-
-\end{fulllineitems}
-
-
-\end{fulllineitems}
-
-\index{atomic\_properties\_pymat (class in atomicfeaturespackage.metainfo.metainfo)@\spxentry{atomic\_properties\_pymat}\spxextra{class in atomicfeaturespackage.metainfo.metainfo}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat}}\pysiglinewithargsret{\sphinxbfcode{\sphinxupquote{class }}\sphinxcode{\sphinxupquote{atomicfeaturespackage.metainfo.metainfo.}}\sphinxbfcode{\sphinxupquote{atomic\_properties\_pymat}}}{\emph{m\_def: Optional{[}nomad.metainfo.metainfo.Section{]} = None}, \emph{m\_resource: nomad.metainfo.metainfo.MResource = None}, \emph{**kwargs}}{}~\index{atomic\_element\_name (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{atomic\_element\_name}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_element_name}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_element\_name}}}
-Provides name of the full long name of the element
-
-\end{fulllineitems}
-
-\index{atomic\_element\_symbol (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{atomic\_element\_symbol}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_element_symbol}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_element\_symbol}}}
-Provides the symbol of element as per periodic table
-
-\end{fulllineitems}
-
-\index{atomic\_mass (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{atomic\_mass}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_mass}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_mass}}}
-Provides atomic mass for the element
-
-\end{fulllineitems}
-
-\index{atomic\_number (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{atomic\_number}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_number}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_number}}}
-Provides the number of protons found in nucleus
-
-\end{fulllineitems}
-
-\index{atomic\_orbitals (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{atomic\_orbitals}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_orbitals}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_orbitals}}}
-Provides energy of the atomic orbitals as a dict
-
-\end{fulllineitems}
-
-\index{atomic\_radius (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{atomic\_radius}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_radius}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_radius}}}
-Provides atomic radius for the element
-
-\end{fulllineitems}
-
-\index{atomic\_radius\_calculated (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{atomic\_radius\_calculated}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_radius_calculated}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_radius\_calculated}}}
-Provides Calculated atomic radius for the element
-
-\end{fulllineitems}
-
-\index{atomic\_refelctivity (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{atomic\_refelctivity}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_refelctivity}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_refelctivity}}}
-Provides the Reflectivity of the element : \% Unit
-
-\end{fulllineitems}
-
-\index{atomic\_refractive\_index (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{atomic\_refractive\_index}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.atomic_refractive_index}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_refractive\_index}}}
-Provides the Refractice index of the element
-
-\end{fulllineitems}
-
-\index{boiling\_point (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{boiling\_point}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.boiling_point}}\pysigline{\sphinxbfcode{\sphinxupquote{boiling\_point}}}
-Provides Boiling point to selected element
-
-\end{fulllineitems}
-
-\index{brinell\_hardness (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{brinell\_hardness}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.brinell_hardness}}\pysigline{\sphinxbfcode{\sphinxupquote{brinell\_hardness}}}
-Provides Brinell Hardness of selected element
-
-\end{fulllineitems}
-
-\index{bulk\_modulus (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{bulk\_modulus}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.bulk_modulus}}\pysigline{\sphinxbfcode{\sphinxupquote{bulk\_modulus}}}
-Provides Bulk modulus of selected element : GPa Unit
-
-\end{fulllineitems}
-
-\index{coeff\_olte (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{coeff\_olte}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.coeff_olte}}\pysigline{\sphinxbfcode{\sphinxupquote{coeff\_olte}}}
-Provides Coefficient of linear thermal expansion (10e\sphinxhyphen{}6)
-
-\end{fulllineitems}
-
-\index{common\_ox\_states (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{common\_ox\_states}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.common_ox_states}}\pysigline{\sphinxbfcode{\sphinxupquote{common\_ox\_states}}}
-Provides the list of common oxidation states in which the 
-element is found
-
-\end{fulllineitems}
-
-\index{critical\_temperature (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{critical\_temperature}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.critical_temperature}}\pysigline{\sphinxbfcode{\sphinxupquote{critical\_temperature}}}
-Provides the Critical temperature of element
-
-\end{fulllineitems}
-
-\index{density\_of\_solid (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{density\_of\_solid}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.density_of_solid}}\pysigline{\sphinxbfcode{\sphinxupquote{density\_of\_solid}}}
-Provides the density of solid phase
-
-\end{fulllineitems}
-
-\index{electrical\_resistivity (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{electrical\_resistivity}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.electrical_resistivity}}\pysigline{\sphinxbfcode{\sphinxupquote{electrical\_resistivity}}}
-Provides the electrical resistivity of element(x10e\sphinxhyphen{}8)
-
-\end{fulllineitems}
-
-\index{electronic\_structure (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{electronic\_structure}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.electronic_structure}}\pysigline{\sphinxbfcode{\sphinxupquote{electronic\_structure}}}
-Provides the Electronic structure as string, with only valence electrons
-
-\end{fulllineitems}
-
-\index{icsd\_oxd\_states (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{icsd\_oxd\_states}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.icsd_oxd_states}}\pysigline{\sphinxbfcode{\sphinxupquote{icsd\_oxd\_states}}}
-Provides list(python) of all oxidation states with 
-at least 10 instances in ICSD database AND at least 1\% of entries for that element
-
-\end{fulllineitems}
-
-\index{ionic\_radii (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{ionic\_radii}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.ionic_radii}}\pysigline{\sphinxbfcode{\sphinxupquote{ionic\_radii}}}
-Provides All ionic radii of the element as a dict of \{oxidation state: ionic radii\}
-
-\end{fulllineitems}
-
-\index{ionic\_radii\_hs (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{ionic\_radii\_hs}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.ionic_radii_hs}}\pysigline{\sphinxbfcode{\sphinxupquote{ionic\_radii\_hs}}}
-Provides the Ionic radius of specie
-
-\end{fulllineitems}
-
-\index{ionic\_radii\_ls (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{ionic\_radii\_ls}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.ionic_radii_ls}}\pysigline{\sphinxbfcode{\sphinxupquote{ionic\_radii\_ls}}}
-Provides the Ionic radius of specie
-
-\end{fulllineitems}
-
-\index{iupac\_ordering (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{iupac\_ordering}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.iupac_ordering}}\pysigline{\sphinxbfcode{\sphinxupquote{iupac\_ordering}}}
-Ordering according to Table VI of “Nomenclature of Inorganic Chemistry
-(IUPAC Recommendations 2005)”. This ordering effectively follows the groups and rows of the periodic table, except the 
-Lanthanides, Actanides and hydrogen
-
-\end{fulllineitems}
-
-\index{liquid\_range (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{liquid\_range}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.liquid_range}}\pysigline{\sphinxbfcode{\sphinxupquote{liquid\_range}}}
-Provides the liquid range temp. of the element
-
-\end{fulllineitems}
-
-\index{max\_oxd\_state (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{max\_oxd\_state}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.max_oxd_state}}\pysigline{\sphinxbfcode{\sphinxupquote{max\_oxd\_state}}}
-Provides the Maximum oxidation state for element
-
-\end{fulllineitems}
-
-\index{melting\_point (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{melting\_point}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.melting_point}}\pysigline{\sphinxbfcode{\sphinxupquote{melting\_point}}}
-Provides the Melting point of the element
-
-\end{fulllineitems}
-
-\index{mendeleev\_no (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{mendeleev\_no}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.mendeleev_no}}\pysigline{\sphinxbfcode{\sphinxupquote{mendeleev\_no}}}
-Provides the Mendeleev number from definition given by 
-Pettifor, D. G. (1984). A chemical scale for crystal\sphinxhyphen{}structure maps. Solid State Communications, 51 (1), 31\sphinxhyphen{}34
-
-\end{fulllineitems}
-
-\index{metallic\_radius (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{metallic\_radius}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.metallic_radius}}\pysigline{\sphinxbfcode{\sphinxupquote{metallic\_radius}}}
-Provides the Metallic radius of the element
-
-\end{fulllineitems}
-
-\index{min\_oxd\_state (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{min\_oxd\_state}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.min_oxd_state}}\pysigline{\sphinxbfcode{\sphinxupquote{min\_oxd\_state}}}
-Provides the Minimum oxidation state for element
-
-\end{fulllineitems}
-
-\index{mineral\_hardness (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{mineral\_hardness}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.mineral_hardness}}\pysigline{\sphinxbfcode{\sphinxupquote{mineral\_hardness}}}
-Provides the Mineral Hardness of the element
-
-\end{fulllineitems}
-
-\index{molar\_volume (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{molar\_volume}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.molar_volume}}\pysigline{\sphinxbfcode{\sphinxupquote{molar\_volume}}}
-Provides the Molar volume of the element
-
-\end{fulllineitems}
-
-\index{nmr\_quadrapole\_mom (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{nmr\_quadrapole\_mom}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.nmr_quadrapole_mom}}\pysigline{\sphinxbfcode{\sphinxupquote{nmr\_quadrapole\_mom}}}
-Provides a dictionary of the nuclear electric 
-quadrupole moment in units of e*millibarns for various isotopes
-
-\end{fulllineitems}
-
-\index{oxidation\_states (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{oxidation\_states}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.oxidation_states}}\pysigline{\sphinxbfcode{\sphinxupquote{oxidation\_states}}}
-Provides the python list of all known oxidation states
-
-\end{fulllineitems}
-
-\index{poisson\_ratio (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{poisson\_ratio}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.poisson_ratio}}\pysigline{\sphinxbfcode{\sphinxupquote{poisson\_ratio}}}
-Provides the Poisson’s ratio of the element
-
-\end{fulllineitems}
-
-\index{rigidity\_modulus (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{rigidity\_modulus}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.rigidity_modulus}}\pysigline{\sphinxbfcode{\sphinxupquote{rigidity\_modulus}}}
-Provides the  Rigidity modulus of the element
-
-\end{fulllineitems}
-
-\index{section\_pymat\_metadata (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{section\_pymat\_metadata}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.section_pymat_metadata}}\pysigline{\sphinxbfcode{\sphinxupquote{section\_pymat\_metadata}}}
-This section contains metadata schema definition of several atomic features accessible from pymatgen as source 
-\sphinxurl{https://github.com/materialsproject/pymatgen/blob/master/pymatgen/core/periodic\_table.json}
-
-\end{fulllineitems}
-
-\index{shannon\_radii (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{shannon\_radii}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.shannon_radii}}\pysigline{\sphinxbfcode{\sphinxupquote{shannon\_radii}}}
-Provides the (python) dictionary (key\sphinxhyphen{}value pairs) Shannon radius for specie in the different environments
-Oxdiation\_no : \sphinxhyphen{}4…6
-cn: Coordination using roman letters. Values are I\sphinxhyphen{}IX, as well as IIIPY, IVPY and IVSQ.
-spin: Some species have different radii for different spins. One can get specific values using “High Spin” or”Low Spin”. 
-If no spin data is available a blank\sphinxhyphen{}space is used “”. If only one spin data is available, it is returned and this spin parameter is ignored.
-radius\_type: Either “crystal” or “ionic”
-typical dict would have key in specific format “Oxdiation\_no.cn.spin.crystal\_radius”
-
-\end{fulllineitems}
-
-\index{supercond\_temp (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{supercond\_temp}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.supercond_temp}}\pysigline{\sphinxbfcode{\sphinxupquote{supercond\_temp}}}
-Provides the  Superconduction temperature of the element
-
-\end{fulllineitems}
-
-\index{thermal\_cond (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{thermal\_cond}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.thermal_cond}}\pysigline{\sphinxbfcode{\sphinxupquote{thermal\_cond}}}
-Provides the Thermal conductivity of the element
-
-\end{fulllineitems}
-
-\index{van\_der\_waals\_rad (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{van\_der\_waals\_rad}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.van_der_waals_rad}}\pysigline{\sphinxbfcode{\sphinxupquote{van\_der\_waals\_rad}}}
-Provides the Van der Waals radius for the element. This is the 
-empirical value(\sphinxurl{http://en.wikipedia.org/wiki/Atomic\_radii\_of\_the\_elements\_(data\_page}))
-
-\end{fulllineitems}
-
-\index{velocity\_of\_sound (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{velocity\_of\_sound}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.velocity_of_sound}}\pysigline{\sphinxbfcode{\sphinxupquote{velocity\_of\_sound}}}
-Provides the Velocity of sound in the element
-
-\end{fulllineitems}
-
-\index{vickers\_hardness (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{vickers\_hardness}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.vickers_hardness}}\pysigline{\sphinxbfcode{\sphinxupquote{vickers\_hardness}}}
-Provides the Vicker’s hardness of the element
-
-\end{fulllineitems}
-
-\index{x (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{x}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.x}}\pysigline{\sphinxbfcode{\sphinxupquote{x}}}
-Provides the Pauling electronegativity. Elements without an electronegativity
-number are assigned a value of zero by default
-
-\end{fulllineitems}
-
-\index{youngs\_modulus (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute)@\spxentry{youngs\_modulus}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_pymat attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_pymat.youngs_modulus}}\pysigline{\sphinxbfcode{\sphinxupquote{youngs\_modulus}}}
-Provides the Young’s modulus of the element
-
-\end{fulllineitems}
-
-
-\end{fulllineitems}
-
-\index{atomic\_properties\_webele (class in atomicfeaturespackage.metainfo.metainfo)@\spxentry{atomic\_properties\_webele}\spxextra{class in atomicfeaturespackage.metainfo.metainfo}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele}}\pysiglinewithargsret{\sphinxbfcode{\sphinxupquote{class }}\sphinxcode{\sphinxupquote{atomicfeaturespackage.metainfo.metainfo.}}\sphinxbfcode{\sphinxupquote{atomic\_properties\_webele}}}{\emph{m\_def: Optional{[}nomad.metainfo.metainfo.Section{]} = None}, \emph{m\_resource: nomad.metainfo.metainfo.MResource = None}, \emph{**kwargs}}{}~\index{atomic\_cellparam (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_cellparam}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_cellparam}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_cellparam}}}
-Returns dict of cell parameters of 
-elemental solid
-
-\end{fulllineitems}
-
-\index{atomic\_ea (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_ea}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_ea}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_ea}}}
-Electron affinitiy
-
-\end{fulllineitems}
-
-\index{atomic\_ebe (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_ebe}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_ebe}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_ebe}}}
-Returns electron binding energies for atom as a dict
-
-\end{fulllineitems}
-
-\index{atomic\_element\_symbol (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_element\_symbol}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_element_symbol}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_element\_symbol}}}
-Provides the symbol of element as per periodic 
-table
-
-\end{fulllineitems}
-
-\index{atomic\_en (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_en}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_en}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_en}}}
-All values are quoted on the Pauling scale.
-Returns types of electronegativity with its values as a dict.
-
-\end{fulllineitems}
-
-\index{atomic\_en\_allen (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_en\_allen}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_en_allen}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_en\_allen}}}
-All values are quoted on the Pauling scale.
-Returns Allen electronegativity
-
-\end{fulllineitems}
-
-\index{atomic\_en\_allredroch (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_en\_allredroch}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_en_allredroch}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_en\_allredroch}}}
-Values are quoted on the Pauling scale.
-Returns Allred Rochow electronegativity
-
-\end{fulllineitems}
-
-\index{atomic\_en\_paul (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_en\_paul}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_en_paul}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_en\_paul}}}
-Values are quoted on the Pauling scale.
-Returns Pauling electronegativity
-
-\end{fulllineitems}
-
-\index{atomic\_en\_sanderson (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_en\_sanderson}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_en_sanderson}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_en\_sanderson}}}
-Values are quoted on the Pauling scale.
-Returns Sanderson electronegativity
-
-\end{fulllineitems}
-
-\index{atomic\_enc (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_enc}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_enc}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_enc}}}
-Returns “Clementi\sphinxhyphen{}Raimondi” effective nuclear charges of 
-atoms as dict, Zeff
-
-\end{fulllineitems}
-
-\index{atomic\_hatm (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_hatm}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_hatm}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_hatm}}}
-The enthalpy change that accompanies the total 
-separation of all atoms in a chemical substance
-
-\end{fulllineitems}
-
-\index{atomic\_hfu (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_hfu}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_hfu}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_hfu}}}
-Enthalpy of fusion for elements at their 
-melting temperatures
-
-\end{fulllineitems}
-
-\index{atomic\_hvap (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_hvap}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_hvap}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_hvap}}}
-Enthalpy of vaporization for elements at 
-their boiling temperatures
-
-\end{fulllineitems}
-
-\index{atomic\_ie (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_ie}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_ie}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_ie}}}
-Returns ionization energies of the atoms as a dict, 
-Units : Enthalpy / kJ mol‑1
-
-\end{fulllineitems}
-
-\index{atomic\_ionic\_radii (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_ionic\_radii}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_ionic_radii}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_ionic\_radii}}}
-Returns Shannon ionic radii with ion as key 
-and cordination number,radii in pm as dict
-
-\end{fulllineitems}
-
-\index{atomic\_nat\_iso (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_nat\_iso}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_nat_iso}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_nat\_iso}}}
-Returns naturally occurring isotopes data as dict
-
-\end{fulllineitems}
-
-\index{atomic\_nmr (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_nmr}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_nmr}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_nmr}}}
-Returns NMR properties data as dict
-
-\end{fulllineitems}
-
-\index{atomic\_orbital\_radii (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_orbital\_radii}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_orbital_radii}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_orbital\_radii}}}
-Returns calculated values of valence shell 
-orbital radii (Rmax) as dict, Units : Atomic unit lengths
-
-\end{fulllineitems}
-
-\index{atomic\_rad\_iso (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_rad\_iso}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_rad_iso}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_rad\_iso}}}
-Returns radio isotope data as dict
-
-\end{fulllineitems}
-
-\index{atomic\_radius (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_radius}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_radius}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_radius}}}
-Provides atomic radius for the element
-
-\end{fulllineitems}
-
-\index{atomic\_radius\_calculated (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_radius\_calculated}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_radius_calculated}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_radius\_calculated}}}
-Provides Calculated atomic radius for the 
-element
-
-\end{fulllineitems}
-
-\index{atomic\_spacegroup (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_spacegroup}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_spacegroup}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_spacegroup}}}
-Returns Space group of elemental solid
-
-\end{fulllineitems}
-
-\index{atomic\_spacegroupnum (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_spacegroupnum}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_spacegroupnum}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_spacegroupnum}}}
-Returns Space group number of elemental solid
-
-\end{fulllineitems}
-
-\index{atomic\_structure (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_structure}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_structure}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_structure}}}
-Returns structure type of elemental solid
-
-\end{fulllineitems}
-
-\index{atomic\_thermdata (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{atomic\_thermdata}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.atomic_thermdata}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_thermdata}}}
-Returns a dictionary of few thermodynamic data with keys as its elemental state.
-Units of the properties are as follows:
-ΔfH°: kJ mol‑1
-
-ΔfG°: kJ mol‑1
-
-S°: J K‑1 mol‑1
-
-CpH: J K‑1 mol‑1
-
-H°298.15‑H°0: kJ mol‑1
-
-\end{fulllineitems}
-
-\index{boiling\_point (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{boiling\_point}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.boiling_point}}\pysigline{\sphinxbfcode{\sphinxupquote{boiling\_point}}}
-Provides Boiling point to 
-selected element
-
-\end{fulllineitems}
-
-\index{brinell\_hardness (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{brinell\_hardness}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.brinell_hardness}}\pysigline{\sphinxbfcode{\sphinxupquote{brinell\_hardness}}}
-Provides Brinell Hardness of the element
-
-\end{fulllineitems}
-
-\index{bulk\_mod (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{bulk\_mod}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.bulk_mod}}\pysigline{\sphinxbfcode{\sphinxupquote{bulk\_mod}}}
-The bulk modulus refers to the ratio of pressure to the decrease in volume. 
-This is the inverse of compressibility
-
-\end{fulllineitems}
-
-\index{coeff\_of\_lte (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{coeff\_of\_lte}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.coeff_of_lte}}\pysigline{\sphinxbfcode{\sphinxupquote{coeff\_of\_lte}}}
-The coefficient of linear thermal expansion is the ratio of
-the change in length per degree K to the length at 273 K(10e6)
-
-\end{fulllineitems}
-
-\index{covalent\_rad (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{covalent\_rad}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.covalent_rad}}\pysigline{\sphinxbfcode{\sphinxupquote{covalent\_rad}}}
-Covalent radius of atom (2008)
-
-\end{fulllineitems}
-
-\index{covalent\_rad\_emp (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{covalent\_rad\_emp}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.covalent_rad_emp}}\pysigline{\sphinxbfcode{\sphinxupquote{covalent\_rad\_emp}}}
-Covalent radius of atom
-
-\end{fulllineitems}
-
-\index{covalent\_radius\_mol (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{covalent\_radius\_mol}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.covalent_radius_mol}}\pysigline{\sphinxbfcode{\sphinxupquote{covalent\_radius\_mol}}}
-Returns single/double/triple bond covalent radii using specific group 
-valencies and oxidation numbers of element as dict
-
-\end{fulllineitems}
-
-\index{critical\_temperature (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{critical\_temperature}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.critical_temperature}}\pysigline{\sphinxbfcode{\sphinxupquote{critical\_temperature}}}
-Provides the Critical temperature of 
-element
-
-\end{fulllineitems}
-
-\index{density\_of\_solid (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{density\_of\_solid}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.density_of_solid}}\pysigline{\sphinxbfcode{\sphinxupquote{density\_of\_solid}}}
-Density refers to the mass contained within a unit 
-volume under specified conditions. Data given here refer to the solid
-
-\end{fulllineitems}
-
-\index{electrical\_resist (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{electrical\_resist}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.electrical_resist}}\pysigline{\sphinxbfcode{\sphinxupquote{electrical\_resist}}}
-The electrical resistivity, or specific resistance, ρ, 
-is the resistance between the opposite faces of a metre cube of a material(10e\sphinxhyphen{}8)
-
-\end{fulllineitems}
-
-\index{liquid\_range (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{liquid\_range}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.liquid_range}}\pysigline{\sphinxbfcode{\sphinxupquote{liquid\_range}}}
-Provides the liquid range temp. 
-of the element
-
-\end{fulllineitems}
-
-\index{melting\_point (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{melting\_point}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.melting_point}}\pysigline{\sphinxbfcode{\sphinxupquote{melting\_point}}}
-Provides the Melting point of 
-the element
-
-\end{fulllineitems}
-
-\index{mineral\_hardness (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{mineral\_hardness}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.mineral_hardness}}\pysigline{\sphinxbfcode{\sphinxupquote{mineral\_hardness}}}
-Hardness ranges on scale from 1 to 10 and mineralogical hardness depends upon the 
-ability of a material to scratch another
-
-\end{fulllineitems}
-
-\index{molar\_vol (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{molar\_vol}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.molar_vol}}\pysigline{\sphinxbfcode{\sphinxupquote{molar\_vol}}}
-The molar volume is equal to the atomic weight divided 
-by the density
-
-\end{fulllineitems}
-
-\index{paul\_ionic\_radii (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{paul\_ionic\_radii}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.paul_ionic_radii}}\pysigline{\sphinxbfcode{\sphinxupquote{paul\_ionic\_radii}}}
-Returns pauling ionic radii with ion as key 
-and pauling ionic radii in pm as dict
-
-\end{fulllineitems}
-
-\index{poissons\_ratio (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{poissons\_ratio}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.poissons_ratio}}\pysigline{\sphinxbfcode{\sphinxupquote{poissons\_ratio}}}
-Poisson’s ratio is the lateral contraction per unit breadth divided by the 
-longitudinal extension per unit length
-
-\end{fulllineitems}
-
-\index{reflectivity (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{reflectivity}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.reflectivity}}\pysigline{\sphinxbfcode{\sphinxupquote{reflectivity}}}
-The reflectivity is the percentage light reflected from a 
-surface at a given wavelength: \% Unit
-
-\end{fulllineitems}
-
-\index{refract\_index (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{refract\_index}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.refract_index}}\pysigline{\sphinxbfcode{\sphinxupquote{refract\_index}}}
-The refractive index is quoted for the gas or vapour state
-at 273 K/760 mm Hg for the sodium yellow d\sphinxhyphen{}line at 589.3 nm
-
-\end{fulllineitems}
-
-\index{rigidity\_mod (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{rigidity\_mod}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.rigidity_mod}}\pysigline{\sphinxbfcode{\sphinxupquote{rigidity\_mod}}}
-The rigidity modulus refers to the change of shape produced 
-by a tangential stress
-
-\end{fulllineitems}
-
-\index{section\_webele\_metadata (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{section\_webele\_metadata}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.section_webele_metadata}}\pysigline{\sphinxbfcode{\sphinxupquote{section\_webele\_metadata}}}
-This section contains metadata information of several atomic features accessible from Webelements as source
-
-\end{fulllineitems}
-
-\index{supercond\_temp (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{supercond\_temp}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.supercond_temp}}\pysigline{\sphinxbfcode{\sphinxupquote{supercond\_temp}}}
-Provides the  Superconduction temperature of 
-the element
-
-\end{fulllineitems}
-
-\index{thermal\_conduct (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{thermal\_conduct}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.thermal_conduct}}\pysigline{\sphinxbfcode{\sphinxupquote{thermal\_conduct}}}
-The thermal conductivity, λ, is the quantity of heat 
-transmitted, due to unit temperature gradient, in unit time under steady conditions in a direction normal to 
-a surface of unit area, when the heat transfer is dependent only on the temperature gradient
-
-\end{fulllineitems}
-
-\index{van\_der\_waals\_rad (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{van\_der\_waals\_rad}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.van_der_waals_rad}}\pysigline{\sphinxbfcode{\sphinxupquote{van\_der\_waals\_rad}}}
-Provides the Van der Waals radius for the element
-
-\end{fulllineitems}
-
-\index{vel\_of\_sound (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{vel\_of\_sound}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.vel_of_sound}}\pysigline{\sphinxbfcode{\sphinxupquote{vel\_of\_sound}}}
-Provides the Velocity of sound in the element
-
-\end{fulllineitems}
-
-\index{vickers\_hardness (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{vickers\_hardness}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.vickers_hardness}}\pysigline{\sphinxbfcode{\sphinxupquote{vickers\_hardness}}}
-Provides the Vicker’s hardness of the element
-
-\end{fulllineitems}
-
-\index{youngs\_mod (atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute)@\spxentry{youngs\_mod}\spxextra{atomicfeaturespackage.metainfo.metainfo.atomic\_properties\_webele attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.atomic_properties_webele.youngs_mod}}\pysigline{\sphinxbfcode{\sphinxupquote{youngs\_mod}}}
-Young’s modulus refers to longitudinal 
-strain
-
-\end{fulllineitems}
-
-
-\end{fulllineitems}
-
-\index{metadata (class in atomicfeaturespackage.metainfo.metainfo)@\spxentry{metadata}\spxextra{class in atomicfeaturespackage.metainfo.metainfo}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.metadata}}\pysiglinewithargsret{\sphinxbfcode{\sphinxupquote{class }}\sphinxcode{\sphinxupquote{atomicfeaturespackage.metainfo.metainfo.}}\sphinxbfcode{\sphinxupquote{metadata}}}{\emph{m\_def: Optional{[}nomad.metainfo.metainfo.Section{]} = None}, \emph{m\_resource: nomad.metainfo.metainfo.MResource = None}, \emph{**kwargs}}{}
-This section contains metadata information of source,method and functional used for atomic features.
-\index{atomic\_basis\_set (atomicfeaturespackage.metainfo.metainfo.metadata attribute)@\spxentry{atomic\_basis\_set}\spxextra{atomicfeaturespackage.metainfo.metainfo.metadata attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.metadata.atomic_basis_set}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_basis\_set}}}
-Provides the unique name of basis set applied for computation
-
-\end{fulllineitems}
-
-\index{atomic\_method (atomicfeaturespackage.metainfo.metainfo.metadata attribute)@\spxentry{atomic\_method}\spxextra{atomicfeaturespackage.metainfo.metainfo.metadata attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.metadata.atomic_method}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_method}}}
-Provides the name of functional used for calculation 
-of particular atomic feature
-
-\end{fulllineitems}
-
-\index{atomic\_spin\_setting (atomicfeaturespackage.metainfo.metainfo.metadata attribute)@\spxentry{atomic\_spin\_setting}\spxextra{atomicfeaturespackage.metainfo.metainfo.metadata attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.metadata.atomic_spin_setting}}\pysigline{\sphinxbfcode{\sphinxupquote{atomic\_spin\_setting}}}
-Provides information whether spin settings are turned on or off
-
-\end{fulllineitems}
-
-\index{source (atomicfeaturespackage.metainfo.metainfo.metadata attribute)@\spxentry{source}\spxextra{atomicfeaturespackage.metainfo.metainfo.metadata attribute}}
-
-\begin{fulllineitems}
-\phantomsection\label{\detokenize{atomicfeaturespackage.metainfo:atomicfeaturespackage.metainfo.metainfo.metadata.source}}\pysigline{\sphinxbfcode{\sphinxupquote{source}}}
-Provides the name of source 
-of particular atomic feature
-
-\end{fulllineitems}
-
-
-\end{fulllineitems}
-
-
-
-\chapter{LICENSE}
-\label{\detokenize{LICENSE:license}}\label{\detokenize{LICENSE::doc}}
-MIT License
-
-Copyright (c) 2021 nomad\sphinxhyphen{}lab
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the “Software”), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
-
-
-\chapter{CONTRIBUTING}
-\label{\detokenize{CONTRIBUTING:contributing}}\label{\detokenize{CONTRIBUTING::doc}}
-Aakash Ashok Naik
-
-For questions queries and suggestions
-
-Contact : naik@fhi\sphinxhyphen{}berlin.mpg.de
-
-
-\chapter{Indices and tables}
-\label{\detokenize{index:indices-and-tables}}\begin{itemize}
-\item {} 
-\DUrole{xref,std,std-ref}{genindex}
-
-\item {} 
-\DUrole{xref,std,std-ref}{modindex}
-
-\item {} 
-\DUrole{xref,std,std-ref}{search}
-
-\end{itemize}
-
-
-\renewcommand{\indexname}{Python Module Index}
-\begin{sphinxtheindex}
-\let\bigletter\sphinxstyleindexlettergroup
-\bigletter{a}
-\item\relax\sphinxstyleindexentry{atomicfeaturespackage.atomicproperties.atomic\_properties\_dft}\sphinxstyleindexpageref{atomicfeaturespackage.atomicproperties:\detokenize{module-atomicfeaturespackage.atomicproperties.atomic_properties_dft}}
-\item\relax\sphinxstyleindexentry{atomicfeaturespackage.atomicproperties.atomic\_properties\_lda2015}\sphinxstyleindexpageref{atomicfeaturespackage.atomicproperties:\detokenize{module-atomicfeaturespackage.atomicproperties.atomic_properties_lda2015}}
-\item\relax\sphinxstyleindexentry{atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer}\sphinxstyleindexpageref{atomicfeaturespackage.atomicproperties:\detokenize{module-atomicfeaturespackage.atomicproperties.atomic_properties_matminer}}
-\item\relax\sphinxstyleindexentry{atomicfeaturespackage.atomicproperties.atomic\_properties\_pymat}\sphinxstyleindexpageref{atomicfeaturespackage.atomicproperties:\detokenize{module-atomicfeaturespackage.atomicproperties.atomic_properties_pymat}}
-\item\relax\sphinxstyleindexentry{atomicfeaturespackage.atomicproperties.periodictable}\sphinxstyleindexpageref{atomicfeaturespackage.atomicproperties:\detokenize{module-atomicfeaturespackage.atomicproperties.periodictable}}
-\item\relax\sphinxstyleindexentry{atomicfeaturespackage.metainfo.metainfo}\sphinxstyleindexpageref{atomicfeaturespackage.metainfo:\detokenize{module-atomicfeaturespackage.metainfo.metainfo}}
-\end{sphinxtheindex}
-
-\renewcommand{\indexname}{Index}
-\printindex
-\end{document}
\ No newline at end of file
diff --git a/atomicfeaturespackage/docs/_build/latex/atomic-features-package.toc b/atomicfeaturespackage/docs/_build/latex/atomic-features-package.toc
deleted file mode 100644
index 016eae7..0000000
--- a/atomicfeaturespackage/docs/_build/latex/atomic-features-package.toc
+++ /dev/null
@@ -1,18 +0,0 @@
-\babel@toc {english}{}
-\contentsline {chapter}{\numberline {1}Description}{1}{chapter.1}
-\contentsline {chapter}{\numberline {2}Getting Started}{2}{chapter.2}
-\contentsline {chapter}{\numberline {3}Importing this package modules in Jupyter notebook}{3}{chapter.3}
-\contentsline {chapter}{\numberline {4}atomic\sphinxhyphen {}features\sphinxhyphen {}package package}{5}{chapter.4}
-\contentsline {section}{\numberline {4.1}Subpackages}{5}{section.4.1}
-\contentsline {subsection}{\numberline {4.1.1}atomicfeaturespackage.atomicproperties package}{5}{subsection.4.1.1}
-\contentsline {subsubsection}{atomicfeaturespackage.atomicproperties.atomic\_properties\_dft module}{5}{subsubsection*.3}
-\contentsline {subsubsection}{atomicfeaturespackage.atomicproperties.atomic\_properties\_lda2015 module}{6}{subsubsection*.9}
-\contentsline {subsubsection}{atomicfeaturespackage.atomicproperties.atomic\_properties\_matminer module}{6}{subsubsection*.12}
-\contentsline {subsubsection}{atomicfeaturespackage.atomicproperties.atomic\_properties\_pymat module}{6}{subsubsection*.19}
-\contentsline {subsubsection}{atomicfeaturespackage.atomicproperties.periodictable module}{7}{subsubsection*.23}
-\contentsline {subsection}{\numberline {4.1.2}atomicfeaturespackage.metainfo package}{9}{subsection.4.1.2}
-\contentsline {subsubsection}{atomicfeaturespackage.metainfo.metainfo module}{9}{subsubsection*.50}
-\contentsline {chapter}{\numberline {5}LICENSE}{22}{chapter.5}
-\contentsline {chapter}{\numberline {6}CONTRIBUTING}{23}{chapter.6}
-\contentsline {chapter}{\numberline {7}Indices and tables}{24}{chapter.7}
-\contentsline {chapter}{Python Module Index}{25}{section*.263}
diff --git a/atomicfeaturespackage/docs/_build/latex/footnotehyper-sphinx.sty b/atomicfeaturespackage/docs/_build/latex/footnotehyper-sphinx.sty
deleted file mode 100644
index b6692cf..0000000
--- a/atomicfeaturespackage/docs/_build/latex/footnotehyper-sphinx.sty
+++ /dev/null
@@ -1,269 +0,0 @@
-\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{footnotehyper-sphinx}%
- [2017/10/27 v1.7 hyperref aware footnote.sty for sphinx (JFB)]
-%%
-%% Package: footnotehyper-sphinx
-%% Version: based on footnotehyper.sty 2017/03/07 v1.0
-%% as available at https://www.ctan.org/pkg/footnotehyper
-%% License: the one applying to Sphinx
-%%
-%% Refer to the PDF documentation  at https://www.ctan.org/pkg/footnotehyper for
-%% the code comments.
-%%
-%% Differences:
-%% 1. a partial tabulary compatibility layer added (enough for Sphinx mark-up),
-%% 2. use of \spx@opt@BeforeFootnote from sphinx.sty,
-%% 3. use of \sphinxunactivateextrasandspace from sphinx.sty,
-%% 4. macro definition \sphinxfootnotemark,
-%% 5. macro definition \sphinxlongtablepatch
-%% 6. replaced an \undefined by \@undefined
-\DeclareOption*{\PackageWarning{footnotehyper-sphinx}{Option `\CurrentOption' is unknown}}%
-\ProcessOptions\relax
-\newbox\FNH@notes
-\newdimen\FNH@width
-\let\FNH@colwidth\columnwidth
-\newif\ifFNH@savingnotes
-\AtBeginDocument {%
-    \let\FNH@latex@footnote    \footnote
-    \let\FNH@latex@footnotetext\footnotetext
-    \let\FNH@H@@footnotetext   \@footnotetext
-    \newenvironment{savenotes}
-        {\FNH@savenotes\ignorespaces}{\FNH@spewnotes\ignorespacesafterend}%
-    \let\spewnotes      \FNH@spewnotes
-    \let\footnote       \FNH@footnote
-    \let\footnotetext   \FNH@footnotetext
-    \let\endfootnote    \FNH@endfntext
-    \let\endfootnotetext\FNH@endfntext
-    \@ifpackageloaded{hyperref}
-     {\ifHy@hyperfootnotes
-         \let\FNH@H@@footnotetext\H@@footnotetext
-      \else
-         \let\FNH@hyper@fntext\FNH@nohyp@fntext
-      \fi}%
-     {\let\FNH@hyper@fntext\FNH@nohyp@fntext}%
-}%
-\def\FNH@hyper@fntext{\FNH@fntext\FNH@hyper@fntext@i}%
-\def\FNH@nohyp@fntext{\FNH@fntext\FNH@nohyp@fntext@i}%
-\def\FNH@fntext #1{%
-  \ifx\ifmeasuring@\@undefined
-    \expandafter\@secondoftwo\else\expandafter\@firstofone\fi
-% these two lines modified for Sphinx (tabulary compatibility):
-    {\ifmeasuring@\expandafter\@gobbletwo\else\expandafter\@firstofone\fi}%
-    {\ifx\equation$\expandafter\@gobbletwo\fi #1}%$
-}%
-\long\def\FNH@hyper@fntext@i#1{%
-  \global\setbox\FNH@notes\vbox
-  {\unvbox\FNH@notes
-   \FNH@startnote
-   \@makefntext
-    {\rule\z@\footnotesep\ignorespaces
-     \ifHy@nesting\expandafter\ltx@firstoftwo
-             \else\expandafter\ltx@secondoftwo
-     \fi
-     {\expandafter\hyper@@anchor\expandafter{\Hy@footnote@currentHref}{#1}}%
-     {\Hy@raisedlink
-       {\expandafter\hyper@@anchor\expandafter{\Hy@footnote@currentHref}%
-       {\relax}}%
-      \let\@currentHref\Hy@footnote@currentHref
-      \let\@currentlabelname\@empty
-      #1}%
-     \@finalstrut\strutbox
-    }%
-   \FNH@endnote
-  }%
-}%
-\long\def\FNH@nohyp@fntext@i#1{%
-  \global\setbox\FNH@notes\vbox
-  {\unvbox\FNH@notes
-   \FNH@startnote
-   \@makefntext{\rule\z@\footnotesep\ignorespaces#1\@finalstrut\strutbox}%
-   \FNH@endnote
-  }%
-}%
-\def\FNH@startnote{%
-  \hsize\FNH@colwidth
-  \interlinepenalty\interfootnotelinepenalty
-  \reset@font\footnotesize
-  \floatingpenalty\@MM
-  \@parboxrestore
-  \protected@edef\@currentlabel{\csname p@\@mpfn\endcsname\@thefnmark}%
-  \color@begingroup
-}%
-\def\FNH@endnote{\color@endgroup}%
-\def\FNH@savenotes{%
-  \begingroup
-  \ifFNH@savingnotes\else
-    \FNH@savingnotestrue
-    \let\@footnotetext    \FNH@hyper@fntext
-    \let\@mpfootnotetext  \FNH@hyper@fntext
-    \let\H@@mpfootnotetext\FNH@nohyp@fntext
-    \FNH@width\columnwidth
-    \let\FNH@colwidth\FNH@width
-    \global\setbox\FNH@notes\box\voidb@x
-    \let\FNH@thempfn\thempfn
-    \let\FNH@mpfn\@mpfn
-    \ifx\@minipagerestore\relax\let\@minipagerestore\@empty\fi
-    \expandafter\def\expandafter\@minipagerestore\expandafter{%
-      \@minipagerestore
-      \let\thempfn\FNH@thempfn
-      \let\@mpfn\FNH@mpfn
-    }%
-  \fi
-}%
-\def\FNH@spewnotes {%
-  \endgroup
-  \ifFNH@savingnotes\else
-   \ifvoid\FNH@notes\else
-    \begingroup
-     \let\@makefntext\@empty
-     \let\@finalstrut\@gobble
-     \let\rule\@gobbletwo
-     \FNH@H@@footnotetext{\unvbox\FNH@notes}%
-    \endgroup
-   \fi
-  \fi
-}%
-\def\FNH@footnote@envname    {footnote}%
-\def\FNH@footnotetext@envname{footnotetext}%
-\def\FNH@footnote{%
-% this line added for Sphinx:
-    \spx@opt@BeforeFootnote
-    \ifx\@currenvir\FNH@footnote@envname
-        \expandafter\FNH@footnoteenv
-    \else
-        \expandafter\FNH@latex@footnote
-    \fi
-}%
-\def\FNH@footnoteenv{%
-% this line added for Sphinx (footnotes in parsed literal blocks):
-    \catcode13=5 \sphinxunactivateextrasandspace
-    \@ifnextchar[%
-      \FNH@footnoteenv@i %]
-      {\stepcounter\@mpfn
-       \protected@xdef\@thefnmark{\thempfn}%
-       \@footnotemark
-       \def\FNH@endfntext@fntext{\@footnotetext}%
-       \FNH@startfntext}%
-}%
-\def\FNH@footnoteenv@i[#1]{%
-    \begingroup
-     \csname c@\@mpfn\endcsname #1\relax
-     \unrestored@protected@xdef\@thefnmark{\thempfn}%
-    \endgroup
-    \@footnotemark
-    \def\FNH@endfntext@fntext{\@footnotetext}%
-    \FNH@startfntext
-}%
-\def\FNH@footnotetext{%
-    \ifx\@currenvir\FNH@footnotetext@envname
-        \expandafter\FNH@footnotetextenv
-    \else
-        \expandafter\FNH@latex@footnotetext
-    \fi
-}%
-\def\FNH@footnotetextenv{%
-    \@ifnextchar[%
-      \FNH@footnotetextenv@i %]
-      {\protected@xdef\@thefnmark{\thempfn}%
-       \def\FNH@endfntext@fntext{\@footnotetext}%
-       \FNH@startfntext}%
-}%
-\def\FNH@footnotetextenv@i[#1]{%
-    \begingroup
-     \csname c@\@mpfn\endcsname #1\relax
-     \unrestored@protected@xdef\@thefnmark{\thempfn}%
-    \endgroup
-    \ifFNH@savingnotes
-      \def\FNH@endfntext@fntext{\FNH@nohyp@fntext}%
-    \else
-      \def\FNH@endfntext@fntext{\FNH@H@@footnotetext}%
-    \fi
-    \FNH@startfntext
-}%
-\def\FNH@startfntext{%
-  \setbox\z@\vbox\bgroup
-    \FNH@startnote
-    \FNH@prefntext
-    \rule\z@\footnotesep\ignorespaces
-}%
-\def\FNH@endfntext {%
-    \@finalstrut\strutbox
-    \FNH@postfntext
-    \FNH@endnote
-    \egroup
-  \begingroup
-    \let\@makefntext\@empty\let\@finalstrut\@gobble\let\rule\@gobbletwo
-    \FNH@endfntext@fntext {\unvbox\z@}%
-  \endgroup
-}%
-\AtBeginDocument{%
-   \let\FNH@@makefntext\@makefntext
-   \ifx\@makefntextFB\@undefined
-   \expandafter\@gobble\else\expandafter\@firstofone\fi
-   {\ifFBFrenchFootnotes \let\FNH@@makefntext\@makefntextFB \else
-                         \let\FNH@@makefntext\@makefntextORI\fi}%
-   \expandafter\FNH@check@a\FNH@@makefntext{1.2!3?4,}%
-               \FNH@@@1.2!3?4,\FNH@@@\relax
-}%
-\long\def\FNH@check@a #11.2!3?4,#2\FNH@@@#3{%
-    \ifx\relax#3\expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi
-    \FNH@bad@makefntext@alert
-    {\def\FNH@prefntext{#1}\def\FNH@postfntext{#2}\FNH@check@b}%
-}%
-\def\FNH@check@b #1\relax{%
-    \expandafter\expandafter\expandafter\FNH@check@c
-    \expandafter\meaning\expandafter\FNH@prefntext
-    \meaning\FNH@postfntext1.2!3?4,\FNH@check@c\relax
-}%
-\def\FNH@check@c #11.2!3?4,#2#3\relax{%
-    \ifx\FNH@check@c#2\expandafter\@gobble\fi\FNH@bad@makefntext@alert
-}%
-% slight reformulation for Sphinx
-\def\FNH@bad@makefntext@alert{%
-  \PackageWarningNoLine{footnotehyper-sphinx}%
-    {Footnotes will be sub-optimal, sorry. This is due to the document class or^^J
-  some package modifying macro \string\@makefntext.^^J
-  You can try to report this incompatibility at^^J
-  https://github.com/sphinx-doc/sphinx with this info:}%
-    \typeout{\meaning\@makefntext}%
-    \let\FNH@prefntext\@empty\let\FNH@postfntext\@empty
-}%
-% this macro from original footnote.sty is not used anymore by Sphinx
-% but for simplicity sake let's just keep it as is
-\def\makesavenoteenv{\@ifnextchar[\FNH@msne@ii\FNH@msne@i}%]
-\def\FNH@msne@i #1{%
-  \expandafter\let\csname FNH$#1\expandafter\endcsname %$
-                  \csname #1\endcsname
-  \expandafter\let\csname endFNH$#1\expandafter\endcsname %$
-                  \csname end#1\endcsname
-  \FNH@msne@ii[#1]{FNH$#1}%$
-}%
-\def\FNH@msne@ii[#1]#2{%
-  \expandafter\edef\csname#1\endcsname{%
-    \noexpand\savenotes
-    \expandafter\noexpand\csname#2\endcsname
-  }%
-  \expandafter\edef\csname end#1\endcsname{%
-    \expandafter\noexpand\csname end#2\endcsname
-    \noexpand\expandafter
-    \noexpand\spewnotes
-    \noexpand\if@endpe\noexpand\@endpetrue\noexpand\fi
-  }%
-}%
-% end of footnotehyper 2017/02/16 v0.99
-% some extras for Sphinx :
-% \sphinxfootnotemark: usable in section titles and silently removed from TOCs.
-\def\sphinxfootnotemark [#1]%
-   {\ifx\thepage\relax\else\protect\spx@opt@BeforeFootnote
-                             \protect\footnotemark[#1]\fi}%
-\AtBeginDocument{%
-   % let hyperref less complain
-   \pdfstringdefDisableCommands{\def\sphinxfootnotemark [#1]{}}%
-   % to obtain hyperlinked footnotes in longtable environment we must replace
-   % hyperref's patch of longtable's patch of \@footnotetext by our own
-   \let\LT@p@ftntext\FNH@hyper@fntext
-   % this *requires* longtable to be used always wrapped in savenotes environment
-}%
-\endinput
-%%
-%% End of file `footnotehyper-sphinx.sty'.
diff --git a/atomicfeaturespackage/docs/_build/latex/latexmkjarc b/atomicfeaturespackage/docs/_build/latex/latexmkjarc
deleted file mode 100644
index 6e36b19..0000000
--- a/atomicfeaturespackage/docs/_build/latex/latexmkjarc
+++ /dev/null
@@ -1,22 +0,0 @@
-$latex = 'pdflatex ' . $ENV{'LATEXOPTS'} . ' -kanji=utf8 %O %S';
-$dvipdf = 'dvipdfmx %O -o %D %S';
-$makeindex = 'internal mendex %S %B %D';
-sub mendex {
-  my ($source, $basename, $destination) = @_;
-  my $dictfile = $basename . ".dic";
-  unlink($destination);
-  system("mendex", "-U", "-f", "-d", $dictfile, "-s", "python.ist", $source);
-  if ($? > 0) {
-    print("mendex exited with error code $? (ignored)\n");
-  }
-  if (!-e $destination) {
-    # create an empty .ind file if nothing
-    open(FH, ">" . $destination);
-    close(FH);
-  }
-  return 0;
-}
-add_cus_dep( "glo", "gls", 0, "makeglo" );
-sub makeglo {
- return system( "mendex -J -f -s gglo.ist -o '$_[0].gls' '$_[0].glo'" );
-}
\ No newline at end of file
diff --git a/atomicfeaturespackage/docs/_build/latex/latexmkrc b/atomicfeaturespackage/docs/_build/latex/latexmkrc
deleted file mode 100644
index bba17fa..0000000
--- a/atomicfeaturespackage/docs/_build/latex/latexmkrc
+++ /dev/null
@@ -1,9 +0,0 @@
-$latex = 'latex ' . $ENV{'LATEXOPTS'} . ' %O %S';
-$pdflatex = 'pdflatex ' . $ENV{'LATEXOPTS'} . ' %O %S';
-$lualatex = 'lualatex ' . $ENV{'LATEXOPTS'} . ' %O %S';
-$xelatex = 'xelatex --no-pdf ' . $ENV{'LATEXOPTS'} . ' %O %S';
-$makeindex = 'makeindex -s python.ist %O -o %D %S';
-add_cus_dep( "glo", "gls", 0, "makeglo" );
-sub makeglo {
- return system( "makeindex -s gglo.ist -o '$_[0].gls' '$_[0].glo'" );
-}
\ No newline at end of file
diff --git a/atomicfeaturespackage/docs/_build/latex/make.bat b/atomicfeaturespackage/docs/_build/latex/make.bat
deleted file mode 100644
index 94bda21..0000000
--- a/atomicfeaturespackage/docs/_build/latex/make.bat
+++ /dev/null
@@ -1,31 +0,0 @@
-@ECHO OFF
-
-REM Command file for Sphinx documentation
-
-pushd %~dp0
-
-set PDFLATEX=latexmk -pdf -dvi- -ps-
-
-set "LATEXOPTS= "
-
-if "%1" == "" goto all-pdf
-
-if "%1" == "all-pdf" (
-	:all-pdf
-	for %%i in (*.tex) do (
-		%PDFLATEX% %LATEXMKOPTS% %%i
-	)
-	goto end
-)
-
-if "%1" == "all-pdf-ja" (
-	goto all-pdf
-)
-
-if "%1" == "clean" (
-	del /q /s *.dvi *.log *.ind *.aux *.toc *.syn *.idx *.out *.ilg *.pla *.ps *.tar *.tar.gz *.tar.bz2 *.tar.xz *.fls *.fdb_latexmk
-	goto end
-)
-
-:end
-popd
\ No newline at end of file
diff --git a/atomicfeaturespackage/docs/_build/latex/python.ist b/atomicfeaturespackage/docs/_build/latex/python.ist
deleted file mode 100644
index 70536a6..0000000
--- a/atomicfeaturespackage/docs/_build/latex/python.ist
+++ /dev/null
@@ -1,16 +0,0 @@
-line_max 100
-headings_flag 1
-heading_prefix "  \\bigletter "
-
-preamble "\\begin{sphinxtheindex}
-\\let\\bigletter\\sphinxstyleindexlettergroup
-\\let\\spxpagem \\sphinxstyleindexpagemain
-\\let\\spxentry \\sphinxstyleindexentry
-\\let\\spxextra \\sphinxstyleindexextra
-
-"
-
-postamble "\n\n\\end{sphinxtheindex}\n"
-
-symhead_positive "{\\sphinxsymbolsname}"
-numhead_positive "{\\sphinxnumbersname}"
diff --git a/atomicfeaturespackage/docs/_build/latex/sphinx.sty b/atomicfeaturespackage/docs/_build/latex/sphinx.sty
deleted file mode 100644
index 714d98e..0000000
--- a/atomicfeaturespackage/docs/_build/latex/sphinx.sty
+++ /dev/null
@@ -1,1946 +0,0 @@
-%
-% sphinx.sty
-%
-% Adapted from the old python.sty, mostly written by Fred Drake,
-% by Georg Brandl.
-%
-
-\NeedsTeXFormat{LaTeX2e}[1995/12/01]
-\ProvidesPackage{sphinx}[2019/09/02 v2.3.0 LaTeX package (Sphinx markup)]
-
-% provides \ltx@ifundefined
-% (many packages load ltxcmds: graphicx does for pdftex and lualatex but
-% not xelatex, and anyhow kvoptions does, but it may be needed in future to
-% use \sphinxdeprecationwarning earlier, and it needs \ltx@ifundefined)
-\RequirePackage{ltxcmds}
-
-%% for deprecation warnings
-\newcommand\sphinxdeprecationwarning[4]{% #1 the deprecated macro or name,
-% #2 = when deprecated, #3 = when removed, #4 = additional info
-  \edef\spx@tempa{\detokenize{#1}}%
-  \ltx@ifundefined{sphinx_depr_\spx@tempa}{%
-     \global\expandafter\let\csname sphinx_depr_\spx@tempa\endcsname\spx@tempa
-     \expandafter\AtEndDocument\expandafter{\expandafter\let\expandafter
-         \sphinxdeprecatedmacro\csname sphinx_depr_\spx@tempa\endcsname
-         \PackageWarningNoLine{sphinx}{^^J**** SPHINX DEPRECATION WARNING:^^J
-         \sphinxdeprecatedmacro^^J
-         \@spaces- is deprecated at Sphinx #2^^J
-         \@spaces- and removed at Sphinx #3.^^J
-         #4^^J****}}%
-  }{% warning already emitted (at end of latex log), don't repeat
-  }}
-
-
-%% PACKAGES
-%
-% we delay handling of options to after having loaded packages, because
-% of the need to use \definecolor.
-\RequirePackage{graphicx}
-\@ifclassloaded{memoir}{}{\RequirePackage{fancyhdr}}
-% for \text macro and \iffirstchoice@ conditional even if amsmath not loaded
-\RequirePackage{amstext}
-\RequirePackage{textcomp}% "warn" option issued from template
-\RequirePackage[nobottomtitles*]{titlesec}
-\@ifpackagelater{titlesec}{2016/03/15}%
- {\@ifpackagelater{titlesec}{2016/03/21}%
-  {}%
-  {\newif\ifsphinx@ttlpatch@ok
-   \IfFileExists{etoolbox.sty}{%
-     \RequirePackage{etoolbox}%
-     \patchcmd{\ttlh@hang}{\parindent\z@}{\parindent\z@\leavevmode}%
-                                {\sphinx@ttlpatch@oktrue}{}%
-     \ifsphinx@ttlpatch@ok
-     \patchcmd{\ttlh@hang}{\noindent}{}{}{\sphinx@ttlpatch@okfalse}%
-     \fi
-   }{}%
-   \ifsphinx@ttlpatch@ok
-     \typeout{^^J Package Sphinx Info: ^^J
-              **** titlesec 2.10.1 successfully patched for bugfix ****^^J}%
-   \else
-     \AtEndDocument{\PackageWarningNoLine{sphinx}{^^J%
-******** titlesec 2.10.1 has a bug, (section numbers disappear) ......|^^J%
-******** and Sphinx could not patch it, perhaps because your local ...|^^J%
-******** copy is already fixed without a changed release date. .......|^^J%
-******** If not, you must update titlesec! ...........................|}}%
-   \fi
-  }%
- }{}
-\RequirePackage{tabulary}
-% tabulary has a bug with its re-definition of \multicolumn in its first pass
-% which is not \long. But now Sphinx does not use LaTeX's \multicolumn but its
-% own macro. Hence we don't even need to patch tabulary. See sphinxmulticell.sty
-% X or S (Sphinx) may have meanings if some table package is loaded hence
-% \X was chosen to avoid possibility of conflict
-\newcolumntype{\X}[2]{p{\dimexpr
-      (\linewidth-\arrayrulewidth)*#1/#2-\tw@\tabcolsep-\arrayrulewidth\relax}}
-\newcolumntype{\Y}[1]{p{\dimexpr
-      #1\dimexpr\linewidth-\arrayrulewidth\relax-\tw@\tabcolsep-\arrayrulewidth\relax}}
-% using here T (for Tabulary) feels less of a problem than the X could be
-\newcolumntype{T}{J}%
-% For tables allowing pagebreaks
-\RequirePackage{longtable}
-% User interface to set-up whitespace before and after tables:
-\newcommand*\sphinxtablepre {0pt}%
-\newcommand*\sphinxtablepost{\medskipamount}%
-% Space from caption baseline to top of table or frame of literal-block
-\newcommand*\sphinxbelowcaptionspace{.5\sphinxbaselineskip}%
-% as one can not use \baselineskip from inside longtable (it is zero there)
-% we need \sphinxbaselineskip, which defaults to \baselineskip
-\def\sphinxbaselineskip{\baselineskip}%
-% The following is to ensure that, whether tabular(y) or longtable:
-% - if a caption is on top of table:
-%   a) the space between its last baseline and the top rule of table is
-%      exactly \sphinxbelowcaptionspace
-%   b) the space from last baseline of previous text to first baseline of
-%      caption is exactly \parskip+\baselineskip+ height of a strut.
-%   c) the caption text will wrap at width \LTcapwidth (4in)
-% - make sure this works also if "caption" package is loaded by user
-%   (with its width or margin option taking place of \LTcapwidth role)
-% TODO: obtain same for caption of literal block: a) & c) DONE, b) TO BE DONE
-%
-% To modify space below such top caption, adjust \sphinxbelowcaptionspace
-% To add or remove space above such top caption, adjust \sphinxtablepre:
-%   notice that \abovecaptionskip, \belowcaptionskip, \LTpre are **ignored**
-% A. Table with longtable
-\def\sphinxatlongtablestart
-   {\par
-    \vskip\parskip
-    \vskip\dimexpr\sphinxtablepre\relax % adjust vertical position
-    \vbox{}% get correct baseline from above
-    \LTpre\z@skip\LTpost\z@skip % set to zero longtable's own skips
-    \edef\sphinxbaselineskip{\dimexpr\the\dimexpr\baselineskip\relax\relax}%
-   }%
-% Compatibility with caption package
-\def\sphinxthelongtablecaptionisattop{%
-    \spx@ifcaptionpackage{\noalign{\vskip-\belowcaptionskip}}{}%
-}%
-% Achieves exactly \sphinxbelowcaptionspace below longtable caption
-\def\sphinxlongtablecapskipadjust
-   {\dimexpr-\dp\strutbox
-            -\spx@ifcaptionpackage{\abovecaptionskip}{\sphinxbaselineskip}%
-            +\sphinxbelowcaptionspace\relax}%
-\def\sphinxatlongtableend{\@nobreakfalse % latex3/latex2e#173
-    \prevdepth\z@\vskip\sphinxtablepost\relax}%
-% B. Table with tabular or tabulary
-\def\sphinxattablestart{\par\vskip\dimexpr\sphinxtablepre\relax}%
-\let\sphinxattableend\sphinxatlongtableend
-% This is used by tabular and tabulary templates
-\newcommand*\sphinxcapstartof[1]{%
-   \vskip\parskip
-   \vbox{}% force baselineskip for good positioning by capstart of hyperanchor
-   % hyperref puts the anchor 6pt above this baseline; in case of caption
-   % this baseline will be \ht\strutbox above first baseline of caption
-   \def\@captype{#1}%
-   \capstart
-% move back vertically, as tabular (or its caption) will compensate
-   \vskip-\baselineskip\vskip-\parskip
-}%
-\def\sphinxthecaptionisattop{% locate it after \sphinxcapstartof
-    \spx@ifcaptionpackage
-      {\caption@setposition{t}%
-       \vskip\baselineskip\vskip\parskip % undo those from \sphinxcapstartof
-       \vskip-\belowcaptionskip          % anticipate caption package skip
-       % caption package uses a \vbox, not a \vtop, so "single line" case
-       % gives different result from "multi-line" without this:
-       \nointerlineskip
-      }%
-      {}%
-}%
-\def\sphinxthecaptionisatbottom{% (not finalized; for template usage)
-    \spx@ifcaptionpackage{\caption@setposition{b}}{}%
-}%
-% The aim of \sphinxcaption is to apply to tabular(y) the maximal width
-% of caption as done by longtable
-\def\sphinxtablecapwidth{\LTcapwidth}%
-\newcommand\sphinxcaption{\@dblarg\spx@caption}%
-\long\def\spx@caption[#1]#2{%
-   \noindent\hb@xt@\linewidth{\hss
-      \vtop{\@tempdima\dimexpr\sphinxtablecapwidth\relax
-% don't exceed linewidth for the caption width
-            \ifdim\@tempdima>\linewidth\hsize\linewidth\else\hsize\@tempdima\fi
-% longtable ignores \abovecaptionskip/\belowcaptionskip, so do the same here
-            \abovecaptionskip\sphinxabovecaptionskip % \z@skip
-            \belowcaptionskip\sphinxbelowcaptionskip % \z@skip
-            \caption[{#1}]%
-               {\strut\ignorespaces#2\ifhmode\unskip\@finalstrut\strutbox\fi}%
-           }\hss}%
-   \par\prevdepth\dp\strutbox
-}%
-\def\sphinxabovecaptionskip{\z@skip}% Do not use! Flagged for removal
-\def\sphinxbelowcaptionskip{\z@skip}% Do not use! Flagged for removal
-% This wrapper of \abovecaptionskip is used in sphinxVerbatim for top
-% caption, and with another value in sphinxVerbatimintable
-% TODO: To unify space above caption of a code-block with the one above
-%       caption of a table/longtable, \abovecaptionskip must not be used
-%       This auxiliary will get renamed and receive a different meaning
-%       in future.
-\def\spx@abovecaptionskip{\abovecaptionskip}%
-% Achieve \sphinxbelowcaptionspace below a caption located above a tabular
-% or a tabulary
-\newcommand\sphinxaftertopcaption
-{%
-   \spx@ifcaptionpackage
-     {\par\prevdepth\dp\strutbox\nobreak\vskip-\abovecaptionskip}{\nobreak}%
-   \vskip\dimexpr\sphinxbelowcaptionspace\relax
-   \vskip-\baselineskip\vskip-\parskip
-}%
-% varwidth is crucial for our handling of general contents in merged cells
-\RequirePackage{varwidth}
-% but addition of a compatibility patch with hyperref is needed
-% (tested with varwidth v 0.92  Mar 2009)
-\AtBeginDocument {%
-    \let\@@vwid@Hy@raisedlink\Hy@raisedlink
-    \long\def\@vwid@Hy@raisedlink#1{\@vwid@wrap{\@@vwid@Hy@raisedlink{#1}}}%
-    \edef\@vwid@setup{%
-      \let\noexpand\Hy@raisedlink\noexpand\@vwid@Hy@raisedlink % HYPERREF !
-      \unexpanded\expandafter{\@vwid@setup}}%
-}%
-% Homemade package to handle merged cells
-\RequirePackage{sphinxmulticell}
-\RequirePackage{makeidx}
-% For framing code-blocks and warning type notices, and shadowing topics
-\RequirePackage{framed}
-% The xcolor package draws better fcolorboxes around verbatim code
-\IfFileExists{xcolor.sty}{
-    \RequirePackage{xcolor}
-}{
-    \RequirePackage{color}
-}
-% For highlighted code.
-\RequirePackage{fancyvrb}
-\define@key{FV}{hllines}{\def\sphinx@verbatim@checkifhl##1{\in@{, ##1,}{#1}}}
-% sphinxVerbatim must be usable by third party without requiring hllines set-up
-\def\sphinxresetverbatimhllines{\def\sphinx@verbatim@checkifhl##1{\in@false}}
-\sphinxresetverbatimhllines
-% For hyperlinked footnotes in tables; also for gathering footnotes from
-% topic and warning blocks. Also to allow code-blocks in footnotes.
-\RequirePackage{footnotehyper-sphinx}
-% For the H specifier. Do not \restylefloat{figure}, it breaks Sphinx code
-% for allowing figures in tables.
-\RequirePackage{float}
-% For floating figures in the text. Better to load after float.
-\RequirePackage{wrapfig}
-% Separate paragraphs by space by default.
-\IfFileExists{parskip-2001-04-09.sty}% since September 2018 TeXLive update
-% new parskip.sty, but let it rollback to old one.
-% hopefully TeX installation not broken and LaTeX kernel not too old
-   {\RequirePackage{parskip}[=v1]}
-% standard one from 1989. Admittedly \section of article/book gives possibly
-% anomalous spacing, but we can't require September 2018 release for some time.
-   {\RequirePackage{parskip}}
-% For parsed-literal blocks.
-\RequirePackage{alltt}
-% Display "real" single quotes in literal blocks.
-\RequirePackage{upquote}
-% control caption around literal-block
-\RequirePackage{capt-of}
-\RequirePackage{needspace}
-% LaTeX 2018-04-01 and later provides \@removefromreset
-\ltx@ifundefined{@removefromreset}
-    {\RequirePackage{remreset}}
-    {}% avoid warning
-% to make pdf with correct encoded bookmarks in Japanese
-% this should precede the hyperref package
-\ifx\kanjiskip\@undefined
-% for non-Japanese: make sure bookmarks are ok also with lualatex
-  \PassOptionsToPackage{pdfencoding=unicode}{hyperref}
-\else
-  \RequirePackage{atbegshi}
-  \ifx\ucs\@undefined
-    \ifnum 42146=\euc"A4A2
-      \AtBeginShipoutFirst{\special{pdf:tounicode EUC-UCS2}}
-    \else
-      \AtBeginShipoutFirst{\special{pdf:tounicode 90ms-RKSJ-UCS2}}
-    \fi
-  \else
-    \AtBeginShipoutFirst{\special{pdf:tounicode UTF8-UCS2}}
-  \fi
-\fi
-
-\ifx\@jsc@uplatextrue\@undefined\else
-  \PassOptionsToPackage{setpagesize=false}{hyperref}
-\fi
-
-% These options can be overriden inside  'hyperref' key
-% or by later use of \hypersetup.
-\PassOptionsToPackage{colorlinks,breaklinks,%
- linkcolor=InnerLinkColor,filecolor=OuterLinkColor,%
- menucolor=OuterLinkColor,urlcolor=OuterLinkColor,%
- citecolor=InnerLinkColor}{hyperref}
-
-% stylesheet for highlighting with pygments
-\RequirePackage{sphinxhighlight}
-% fix baseline increase from Pygments latex formatter in case of error tokens
-% and keep \fboxsep's scope local via added braces
-\def\PYG@tok@err{%
-    \def\PYG@bc##1{{\setlength{\fboxsep}{-\fboxrule}%
-                    \fcolorbox[rgb]{1.00,0.00,0.00}{1,1,1}{\strut ##1}}}%
-}
-\def\PYG@tok@cs{%
-    \def\PYG@tc##1{\textcolor[rgb]{0.25,0.50,0.56}{##1}}%
-    \def\PYG@bc##1{{\setlength{\fboxsep}{0pt}%
-                    \colorbox[rgb]{1.00,0.94,0.94}{\strut ##1}}}%
-}%
-
-
-%% OPTIONS
-%
-% Handle options via "kvoptions" (later loaded by hyperref anyhow)
-\RequirePackage{kvoptions}
-\SetupKeyvalOptions{prefix=spx@opt@} % use \spx@opt@ prefix
-
-% Sphinx legacy text layout: 1in margins on all four sides
-\ifx\@jsc@uplatextrue\@undefined
-\DeclareStringOption[1in]{hmargin}
-\DeclareStringOption[1in]{vmargin}
-\DeclareStringOption[.5in]{marginpar}
-\else
-% Japanese standard document classes handle \mag in a special way
-\DeclareStringOption[\inv@mag in]{hmargin}
-\DeclareStringOption[\inv@mag in]{vmargin}
-\DeclareStringOption[.5\dimexpr\inv@mag in\relax]{marginpar}
-\fi
-
-\DeclareStringOption[0]{maxlistdepth}% \newcommand*\spx@opt@maxlistdepth{0}
-\DeclareStringOption[-1]{numfigreset}
-\DeclareBoolOption[false]{nonumfigreset}
-\DeclareBoolOption[false]{mathnumfig}
-% \DeclareBoolOption[false]{usespart}% not used
-% dimensions, we declare the \dimen registers here.
-\newdimen\sphinxverbatimsep
-\newdimen\sphinxverbatimborder
-\newdimen\sphinxshadowsep
-\newdimen\sphinxshadowsize
-\newdimen\sphinxshadowrule
-% \DeclareStringOption is not convenient for the handling of these dimensions
-% because we want to assign the values to the corresponding registers. Even if
-% we added the code to the key handler it would be too late for the initial
-% set-up and we would need to do initial assignments explicitely. We end up
-% using \define@key directly.
-% verbatim
-\sphinxverbatimsep=\fboxsep
-  \define@key{sphinx}{verbatimsep}{\sphinxverbatimsep\dimexpr #1\relax}
-\sphinxverbatimborder=\fboxrule
-  \define@key{sphinx}{verbatimborder}{\sphinxverbatimborder\dimexpr #1\relax}
-% topic boxes
-\sphinxshadowsep =5pt
-  \define@key{sphinx}{shadowsep}{\sphinxshadowsep\dimexpr #1\relax}
-\sphinxshadowsize=4pt
-  \define@key{sphinx}{shadowsize}{\sphinxshadowsize\dimexpr #1\relax}
-\sphinxshadowrule=\fboxrule
-  \define@key{sphinx}{shadowrule}{\sphinxshadowrule\dimexpr #1\relax}
-% verbatim
-\DeclareBoolOption[true]{verbatimwithframe}
-\DeclareBoolOption[true]{verbatimwrapslines}
-\DeclareBoolOption[true]{verbatimhintsturnover}
-\DeclareBoolOption[true]{inlineliteralwraps}
-\DeclareStringOption[t]{literalblockcappos}
-\DeclareStringOption[r]{verbatimcontinuedalign}
-\DeclareStringOption[r]{verbatimcontinuesalign}
-% parsed literal
-\DeclareBoolOption[true]{parsedliteralwraps}
-% \textvisiblespace for compatibility with fontspec+XeTeX/LuaTeX
-\DeclareStringOption[\textcolor{red}{\textvisiblespace}]{verbatimvisiblespace}
-\DeclareStringOption % must use braces to hide the brackets
-  [{\makebox[2\fontcharwd\font`\x][r]{\textcolor{red}{\tiny$\m@th\hookrightarrow$}}}]%
-  {verbatimcontinued}
-% notices/admonitions
-% the dimensions for notices/admonitions are kept as macros and assigned to
-% \spx@notice@border at time of use, hence \DeclareStringOption is ok for this
-\newdimen\spx@notice@border
-\DeclareStringOption[0.5pt]{noteborder}
-\DeclareStringOption[0.5pt]{hintborder}
-\DeclareStringOption[0.5pt]{importantborder}
-\DeclareStringOption[0.5pt]{tipborder}
-\DeclareStringOption[1pt]{warningborder}
-\DeclareStringOption[1pt]{cautionborder}
-\DeclareStringOption[1pt]{attentionborder}
-\DeclareStringOption[1pt]{dangerborder}
-\DeclareStringOption[1pt]{errorborder}
-% footnotes
-\DeclareStringOption[\mbox{ }]{AtStartFootnote}
-% we need a public macro name for direct use in latex file
-\newcommand*{\sphinxAtStartFootnote}{\spx@opt@AtStartFootnote}
-% no such need for this one, as it is used inside other macros
-\DeclareStringOption[\leavevmode\unskip]{BeforeFootnote}
-% some font styling.
-\DeclareStringOption[\sffamily\bfseries]{HeaderFamily}
-% colours
-% same problems as for dimensions: we want the key handler to use \definecolor.
-% first, some colours with no prefix, for backwards compatibility
-\newcommand*{\sphinxDeclareColorOption}[2]{%
-   \definecolor{#1}#2%
-   \define@key{sphinx}{#1}{\definecolor{#1}##1}%
-}%
-\sphinxDeclareColorOption{TitleColor}{{rgb}{0.126,0.263,0.361}}
-\sphinxDeclareColorOption{InnerLinkColor}{{rgb}{0.208,0.374,0.486}}
-\sphinxDeclareColorOption{OuterLinkColor}{{rgb}{0.216,0.439,0.388}}
-\sphinxDeclareColorOption{VerbatimColor}{{rgb}{1,1,1}}
-\sphinxDeclareColorOption{VerbatimBorderColor}{{rgb}{0,0,0}}
-% now the colours defined with "sphinx" prefix in their names
-\newcommand*{\sphinxDeclareSphinxColorOption}[2]{%
-   % set the initial default
-   \definecolor{sphinx#1}#2%
-   % set the key handler. The "value" ##1 must be acceptable by \definecolor.
-   \define@key{sphinx}{#1}{\definecolor{sphinx#1}##1}%
-}%
-% Default color chosen to be as in minted.sty LaTeX package!
-\sphinxDeclareSphinxColorOption{VerbatimHighlightColor}{{rgb}{0.878,1,1}}
-% admonition boxes, "light" style
-\sphinxDeclareSphinxColorOption{noteBorderColor}{{rgb}{0,0,0}}
-\sphinxDeclareSphinxColorOption{hintBorderColor}{{rgb}{0,0,0}}
-\sphinxDeclareSphinxColorOption{importantBorderColor}{{rgb}{0,0,0}}
-\sphinxDeclareSphinxColorOption{tipBorderColor}{{rgb}{0,0,0}}
-% admonition boxes, "heavy" style
-\sphinxDeclareSphinxColorOption{warningBorderColor}{{rgb}{0,0,0}}
-\sphinxDeclareSphinxColorOption{cautionBorderColor}{{rgb}{0,0,0}}
-\sphinxDeclareSphinxColorOption{attentionBorderColor}{{rgb}{0,0,0}}
-\sphinxDeclareSphinxColorOption{dangerBorderColor}{{rgb}{0,0,0}}
-\sphinxDeclareSphinxColorOption{errorBorderColor}{{rgb}{0,0,0}}
-\sphinxDeclareSphinxColorOption{warningBgColor}{{rgb}{1,1,1}}
-\sphinxDeclareSphinxColorOption{cautionBgColor}{{rgb}{1,1,1}}
-\sphinxDeclareSphinxColorOption{attentionBgColor}{{rgb}{1,1,1}}
-\sphinxDeclareSphinxColorOption{dangerBgColor}{{rgb}{1,1,1}}
-\sphinxDeclareSphinxColorOption{errorBgColor}{{rgb}{1,1,1}}
-
-\DeclareDefaultOption{\@unknownoptionerror}
-\ProcessKeyvalOptions*
-% don't allow use of maxlistdepth via \sphinxsetup.
-\DisableKeyvalOption{sphinx}{maxlistdepth}
-\DisableKeyvalOption{sphinx}{numfigreset}
-\DisableKeyvalOption{sphinx}{nonumfigreset}
-\DisableKeyvalOption{sphinx}{mathnumfig}
-% user interface: options can be changed midway in a document!
-\newcommand\sphinxsetup[1]{\setkeys{sphinx}{#1}}
-
-
-%% ALPHANUMERIC LIST ITEMS
-\newcommand\sphinxsetlistlabels[5]
-{% #1 = style, #2 = enum, #3 = enumnext, #4 = prefix, #5 = suffix
- % #2 and #3 are counters used by enumerate environement e.g. enumi, enumii.
- % #1 is a macro such as \arabic or \alph
- % prefix and suffix are strings (by default empty and a dot).
- \@namedef{the#2}{#1{#2}}%
- \@namedef{label#2}{#4\@nameuse{the#2}#5}%
- \@namedef{p@#3}{\@nameuse{p@#2}#4\@nameuse{the#2}#5}%
-}%
-
-
-%% MAXLISTDEPTH
-%
-% remove LaTeX's cap on nesting depth if 'maxlistdepth' key used.
-% This is a hack, which works with the standard classes: it assumes \@toodeep
-% is always used in "true" branches: "\if ... \@toodeep \else .. \fi."
-
-% will force use the "false" branch (if there is one)
-\def\spx@toodeep@hack{\fi\iffalse}
-
-% do nothing if 'maxlistdepth' key not used or if package enumitem loaded.
-\ifnum\spx@opt@maxlistdepth=\z@\expandafter\@gobbletwo\fi
-\AtBeginDocument{%
-\@ifpackageloaded{enumitem}{\remove@to@nnil}{}%
-  \let\spx@toodeepORI\@toodeep
-  \def\@toodeep{%
-    \ifnum\@listdepth<\spx@opt@maxlistdepth\relax
-      \expandafter\spx@toodeep@hack
-    \else
-      \expandafter\spx@toodeepORI
-    \fi}%
-% define all missing \@list... macros
-  \count@\@ne
-  \loop
-     \ltx@ifundefined{@list\romannumeral\the\count@}
-       {\iffalse}{\iftrue\advance\count@\@ne}%
-  \repeat
-  \loop
-     \ifnum\count@>\spx@opt@maxlistdepth\relax\else
-       \expandafter\let
-         \csname @list\romannumeral\the\count@\expandafter\endcsname
-         \csname @list\romannumeral\the\numexpr\count@-\@ne\endcsname
-       % workaround 2.6--3.2d babel-french issue (fixed in 3.2e; no change needed)
-       \ltx@ifundefined{leftmargin\romannumeral\the\count@}
-       {\expandafter\let
-         \csname leftmargin\romannumeral\the\count@\expandafter\endcsname
-         \csname leftmargin\romannumeral\the\numexpr\count@-\@ne\endcsname}{}%
-     \advance\count@\@ne
-  \repeat
-% define all missing enum... counters and \labelenum... macros and \p@enum..
-  \count@\@ne
-  \loop
-     \ltx@ifundefined{c@enum\romannumeral\the\count@}
-       {\iffalse}{\iftrue\advance\count@\@ne}%
-  \repeat
-  \loop
-     \ifnum\count@>\spx@opt@maxlistdepth\relax\else
-       \newcounter{enum\romannumeral\the\count@}%
-       \expandafter\def
-         \csname labelenum\romannumeral\the\count@\expandafter\endcsname
-         \expandafter
-         {\csname theenum\romannumeral\the\numexpr\count@\endcsname.}%
-       \expandafter\def
-         \csname p@enum\romannumeral\the\count@\expandafter\endcsname
-         \expandafter
-         {\csname p@enum\romannumeral\the\numexpr\count@-\@ne\expandafter
-          \endcsname\csname theenum\romannumeral\the\numexpr\count@-\@ne\endcsname.}%
-     \advance\count@\@ne
-  \repeat
-% define all missing labelitem... macros
-  \count@\@ne
-  \loop
-     \ltx@ifundefined{labelitem\romannumeral\the\count@}
-     {\iffalse}{\iftrue\advance\count@\@ne}%
-  \repeat
-  \loop
-     \ifnum\count@>\spx@opt@maxlistdepth\relax\else
-       \expandafter\let
-         \csname labelitem\romannumeral\the\count@\expandafter\endcsname
-         \csname labelitem\romannumeral\the\numexpr\count@-\@ne\endcsname
-     \advance\count@\@ne
-  \repeat
-  \PackageInfo{sphinx}{maximal list depth extended to \spx@opt@maxlistdepth}%
-\@gobble\@nnil
-}
-
-
-%% INDEX, BIBLIOGRAPHY, APPENDIX, TABLE OF CONTENTS
-%
-% fix the double index and bibliography on the table of contents
-% in jsclasses (Japanese standard document classes)
-\ifx\@jsc@uplatextrue\@undefined\else
-  \renewenvironment{sphinxtheindex}
-    {\cleardoublepage\phantomsection
-     \begin{theindex}}
-    {\end{theindex}}
-
-  \renewenvironment{sphinxthebibliography}[1]
-    {\cleardoublepage% \phantomsection % not needed here since TeXLive 2010's hyperref
-     \begin{thebibliography}{#1}}
-    {\end{thebibliography}}
-\fi
-
-% disable \@chappos in Appendix in pTeX
-\ifx\kanjiskip\@undefined\else
-  \let\py@OldAppendix=\appendix
-  \renewcommand{\appendix}{
-    \py@OldAppendix
-    \gdef\@chappos{}
-  }
-\fi
-
-% make commands known to non-Sphinx document classes
-\providecommand*{\sphinxmaketitle}{\maketitle}
-\providecommand*{\sphinxtableofcontents}{\tableofcontents}
-\ltx@ifundefined{sphinxthebibliography}
- {\newenvironment
-  {sphinxthebibliography}{\begin{thebibliography}}{\end{thebibliography}}%
- }
- {}% else clause of \ltx@ifundefined
-\ltx@ifundefined{sphinxtheindex}
- {\newenvironment{sphinxtheindex}{\begin{theindex}}{\end{theindex}}}%
- {}% else clause of \ltx@ifundefined
-
-% for usage with xindy: this string gets internationalized in preamble
-\newcommand*{\sphinxnonalphabeticalgroupname}{}
-% redefined in preamble, headings for makeindex produced index
-\newcommand*{\sphinxsymbolsname}{}
-\newcommand*{\sphinxnumbersname}{}
-
-%% COLOR (general)
-%
-% FIXME: \normalcolor should probably be used in place of \py@NormalColor
-% elsewhere, and \py@NormalColor should never be defined. \normalcolor
-% switches to the colour from last \color call in preamble.
-\def\py@NormalColor{\color{black}}
-% FIXME: it is probably better to use \color{TitleColor}, as TitleColor
-% can be customized from 'sphinxsetup', and drop usage of \py@TitleColor
-\def\py@TitleColor{\color{TitleColor}}
-% FIXME: this line should be dropped, as "9" is default anyhow.
-\ifdefined\pdfcompresslevel\pdfcompresslevel = 9 \fi
-
-
-%% PAGE STYLING
-%
-% Style parameters and macros used by most documents here
-\raggedbottom
-\sloppy
-\hbadness = 5000                % don't print trivial gripes
-
-% Use \pagestyle{normal} as the primary pagestyle for text.
-% Redefine the 'normal' header/footer style when using "fancyhdr" package:
-\@ifpackageloaded{fancyhdr}{%
-  \ltx@ifundefined{c@chapter}
-  {% no \chapter, "howto" (non-Japanese) docclass
-   \fancypagestyle{plain}{
-    \fancyhf{}
-    \fancyfoot[C]{{\py@HeaderFamily\thepage}}
-    \renewcommand{\headrulewidth}{0pt}
-    \renewcommand{\footrulewidth}{0pt}
-   }
-   % Same as 'plain', this way we can use it in template
-   % FIXME: shouldn't this have a running header with Name and Release like 'manual'?
-   \fancypagestyle{normal}{
-    \fancyhf{}
-    \fancyfoot[C]{{\py@HeaderFamily\thepage}}
-    \renewcommand{\headrulewidth}{0pt}
-    \renewcommand{\footrulewidth}{0pt}
-   }
-  }%
-  {% classes with \chapter command
-   \fancypagestyle{normal}{
-    \fancyhf{}
-   % FIXME: this presupposes "twoside".
-   % If "oneside" class option, there are warnings in LaTeX log.
-    \fancyfoot[LE,RO]{{\py@HeaderFamily\thepage}}
-    \fancyfoot[LO]{{\py@HeaderFamily\nouppercase{\rightmark}}}
-    \fancyfoot[RE]{{\py@HeaderFamily\nouppercase{\leftmark}}}
-    \fancyhead[LE,RO]{{\py@HeaderFamily \@title\sphinxheadercomma\py@release}}
-    \renewcommand{\headrulewidth}{0.4pt}
-    \renewcommand{\footrulewidth}{0.4pt}
-    % define chaptermark with \@chappos when \@chappos is available for Japanese
-    \ltx@ifundefined{@chappos}{}
-      {\def\chaptermark##1{\markboth{\@chapapp\space\thechapter\space\@chappos\space ##1}{}}}
-    }
-  % Update the plain style so we get the page number & footer line,
-  % but not a chapter or section title.  This is to keep the first
-  % page of a chapter `clean.'
-   \fancypagestyle{plain}{
-    \fancyhf{}
-    \fancyfoot[LE,RO]{{\py@HeaderFamily\thepage}}
-    \renewcommand{\headrulewidth}{0pt}
-    \renewcommand{\footrulewidth}{0.4pt}
-    }
-   }
-  }
-  {% no fancyhdr: memoir class
-   % Provide default for 'normal' style simply as an alias of 'plain' style
-   % This way we can use \pagestyle{normal} in LaTeX template
-   \def\ps@normal{\ps@plain}
-   % Users of memoir class are invited to redefine 'normal' style in preamble
-  }
-
-% geometry
-\ifx\kanjiskip\@undefined
-  \PassOptionsToPackage{%
-     hmargin={\unexpanded{\spx@opt@hmargin}},%
-     vmargin={\unexpanded{\spx@opt@vmargin}},%
-     marginpar=\unexpanded{\spx@opt@marginpar}}
-  {geometry}
-\else
- % set text width for Japanese documents to be integer multiple of 1zw
- % and text height to be integer multiple of \baselineskip
- % the execution is delayed to \sphinxsetup then geometry.sty
- \normalsize\normalfont
- \newcommand*\sphinxtextwidthja[1]{%
-    \if@twocolumn\tw@\fi
-    \dimexpr
-       \numexpr\dimexpr\paperwidth-\tw@\dimexpr#1\relax\relax/
-               \dimexpr\if@twocolumn\tw@\else\@ne\fi zw\relax
-    zw\relax}%
- \newcommand*\sphinxmarginparwidthja[1]{%
-    \dimexpr\numexpr\dimexpr#1\relax/\dimexpr1zw\relax zw\relax}%
- \newcommand*\sphinxtextlinesja[1]{%
-    \numexpr\@ne+\dimexpr\paperheight-\topskip-\tw@\dimexpr#1\relax\relax/
-                 \baselineskip\relax}%
- \ifx\@jsc@uplatextrue\@undefined\else
- % the way we found in order for the papersize special written by
- % geometry in the dvi file to be correct in case of jsbook class
-   \ifnum\mag=\@m\else % do nothing special if nomag class option or 10pt
-     \PassOptionsToPackage{truedimen}{geometry}%
-   \fi
- \fi
- \PassOptionsToPackage{%
-    hmarginratio={1:1},%
-    textwidth=\unexpanded{\sphinxtextwidthja{\spx@opt@hmargin}},%
-    vmarginratio={1:1},%
-    lines=\unexpanded{\sphinxtextlinesja{\spx@opt@vmargin}},%
-    marginpar=\unexpanded{\sphinxmarginparwidthja{\spx@opt@marginpar}},%
-    footskip=2\baselineskip,%
-  }{geometry}%
- \AtBeginDocument
- {% update a dimension used by the jsclasses
-  \ifx\@jsc@uplatextrue\@undefined\else\fullwidth\textwidth\fi
-  % for some reason, jreport normalizes all dimensions with \@settopoint
-  \@ifclassloaded{jreport}
-    {\@settopoint\textwidth\@settopoint\textheight\@settopoint\marginparwidth}
-    {}% <-- "false" clause of \@ifclassloaded
-  }%
-\fi
-
-% fix fncychap's bug which uses prematurely the \textwidth value
-\@ifpackagewith{fncychap}{Bjornstrup}
- {\AtBeginDocument{\mylen\textwidth\advance\mylen-2\myhi}}%
- {}% <-- "false" clause of \@ifpackagewith
-
-
-%% TITLES
-%
-% Since Sphinx 1.5, users should use HeaderFamily key to 'sphinxsetup' rather
-% than defining their own \py@HeaderFamily command (which is still possible).
-% Memo: \py@HeaderFamily is also used by \maketitle as defined in
-% sphinxmanual.cls/sphinxhowto.cls
-\newcommand{\py@HeaderFamily}{\spx@opt@HeaderFamily}
-
-% This sets up the fancy chapter headings that make the documents look
-% at least a little better than the usual LaTeX output.
-\@ifpackagewith{fncychap}{Bjarne}{
-  \ChNameVar {\raggedleft\normalsize \py@HeaderFamily}
-  \ChNumVar  {\raggedleft\Large      \py@HeaderFamily}
-  \ChTitleVar{\raggedleft\Large      \py@HeaderFamily}
-  % This creates (numbered) chapter heads without the leading \vspace*{}:
-  \def\@makechapterhead#1{%
-    {\parindent \z@ \raggedright \normalfont
-      \ifnum \c@secnumdepth >\m@ne
-        \if@mainmatter
-          \DOCH
-        \fi
-      \fi
-      \interlinepenalty\@M
-      \if@mainmatter
-        \DOTI{#1}%
-      \else%
-        \DOTIS{#1}%
-      \fi
-    }}
-}{}% <-- "false" clause of \@ifpackagewith
-
-% Augment the sectioning commands used to get our own font family in place,
-% and reset some internal data items (\titleformat from titlesec package)
-\titleformat{\section}{\Large\py@HeaderFamily}%
-            {\py@TitleColor\thesection}{0.5em}{\py@TitleColor}{\py@NormalColor}
-\titleformat{\subsection}{\large\py@HeaderFamily}%
-            {\py@TitleColor\thesubsection}{0.5em}{\py@TitleColor}{\py@NormalColor}
-\titleformat{\subsubsection}{\py@HeaderFamily}%
-            {\py@TitleColor\thesubsubsection}{0.5em}{\py@TitleColor}{\py@NormalColor}
-% By default paragraphs (and subsubsections) will not be numbered because
-% sphinxmanual.cls and sphinxhowto.cls set secnumdepth to 2
-\titleformat{\paragraph}{\py@HeaderFamily}%
-            {\py@TitleColor\theparagraph}{0.5em}{\py@TitleColor}{\py@NormalColor}
-\titleformat{\subparagraph}{\py@HeaderFamily}%
-            {\py@TitleColor\thesubparagraph}{0.5em}{\py@TitleColor}{\py@NormalColor}
-
-
-%% GRAPHICS
-%
-% \sphinxincludegraphics resizes images larger than the TeX \linewidth (which
-% is adjusted in indented environments), or taller than a certain maximal
-% height (usually \textheight and this is reduced in the environments which use
-% framed.sty to avoid infinite loop if image too tall).
-%
-% In case height or width options are present the rescaling is done
-% (since 2.0), in a way keeping the width:height ratio either native from
-% image or from the width and height options if both were present.
-%
-\newdimen\spx@image@maxheight
-\AtBeginDocument{\spx@image@maxheight\textheight}
-
-% box scratch register
-\newdimen\spx@image@box
-\newcommand*{\sphinxsafeincludegraphics}[2][]{%
-    % #1 contains possibly width=, height=, but no scale= since 1.8.4
-    \setbox\spx@image@box\hbox{\includegraphics[#1,draft]{#2}}%
-    \in@false % use some handy boolean flag
-    \ifdim \wd\spx@image@box>\linewidth
-      \in@true % flag to remember to adjust options and set box dimensions
-      % compute height which results from rescaling width to \linewidth
-      % and keep current aspect ratio. multiply-divide in \numexpr uses
-      % temporarily doubled precision, hence no overflow. (of course we
-      % assume \ht is not a few sp's below \maxdimen...(about 16384pt).
-      \edef\spx@image@rescaledheight % with sp units
-           {\the\numexpr\ht\spx@image@box
-                        *\linewidth/\wd\spx@image@box sp}%
-      \ifdim\spx@image@rescaledheight>\spx@image@maxheight
-        % the rescaled height will be too big, so it is height which decides
-        % the rescaling factor
-        \def\spx@image@requiredheight{\spx@image@maxheight}% dimen register
-        \edef\spx@image@requiredwidth % with sp units
-         {\the\numexpr\wd\spx@image@box
-                      *\spx@image@maxheight/\ht\spx@image@box sp}%
-        % TODO: decide if this commented-out block could be needed due to
-        % rounding in numexpr operations going up
-        % \ifdim\spx@image@requiredwidth>\linewidth
-        %     \def\spx@image@requiredwidth{\linewidth}% dimen register
-        % \fi
-      \else
-        \def\spx@image@requiredwidth{\linewidth}% dimen register
-        \let\spx@image@requiredheight\spx@image@rescaledheight% sp units
-      \fi
-    \else
-      % width is ok, let's check height
-      \ifdim\ht\spx@image@box>\spx@image@maxheight
-        \in@true
-        \edef\spx@image@requiredwidth % with sp units
-            {\the\numexpr\wd\spx@image@box
-                         *\spx@image@maxheight/\ht\spx@image@box sp}%
-        \def\spx@image@requiredheight{\spx@image@maxheight}% dimen register
-      \fi
-    \fi % end of check of width and height
-    \ifin@
-      \setbox\spx@image@box
-      \hbox{\includegraphics
-            [%#1,% contained only width and/or height and overruled anyhow
-            width=\spx@image@requiredwidth,height=\spx@image@requiredheight]%
-            {#2}}%
-      % \includegraphics does not set box dimensions to the exactly
-      % requested ones, see https://github.com/latex3/latex2e/issues/112
-      \wd\spx@image@box\spx@image@requiredwidth
-      \ht\spx@image@box\spx@image@requiredheight
-      \leavevmode\box\spx@image@box
-    \else
-      % here we do not modify the options, no need to adjust width and height
-      % on output, they will be computed exactly as with "draft" option
-      \setbox\spx@image@box\box\voidb@x % clear memory
-      \includegraphics[#1]{#2}%
-    \fi
-}%
-% Use the "safe" one by default (2.0)
-\def\sphinxincludegraphics{\sphinxsafeincludegraphics}
-
-
-%% FIGURE IN TABLE
-%
-\newenvironment{sphinxfigure-in-table}[1][\linewidth]{%
-  \def\@captype{figure}%
-  \sphinxsetvskipsforfigintablecaption
-  \begin{minipage}{#1}%
-}{\end{minipage}}
-% store the original \caption macro for usage with figures inside longtable
-% and tabulary cells. Make sure we get the final \caption in presence of
-% caption package, whether the latter was loaded before or after sphinx.
-\AtBeginDocument{%
-    \let\spx@originalcaption\caption
-    \@ifpackageloaded{caption}
-      {\let\spx@ifcaptionpackage\@firstoftwo
-       \caption@AtBeginDocument*{\let\spx@originalcaption\caption}%
-% in presence of caption package, drop our own \sphinxcaption whose aim was to
-% ensure same width of caption to all kinds of tables (tabular(y), longtable),
-% because caption package has its own width (or margin) option
-       \def\sphinxcaption{\caption}%
-      }%
-      {\let\spx@ifcaptionpackage\@secondoftwo}%
-}
-% tabulary expands twice contents, we need to prevent double counter stepping
-\newcommand*\sphinxfigcaption
-  {\ifx\equation$%$% this is trick to identify tabulary first pass
-       \firstchoice@false\else\firstchoice@true\fi
-   \spx@originalcaption }
-\newcommand*\sphinxsetvskipsforfigintablecaption
-  {\abovecaptionskip\smallskipamount
-   \belowcaptionskip\smallskipamount}
-
-
-%% CITATIONS
-%
-\protected\def\sphinxcite{\cite}
-
-%% FOOTNOTES
-%
-% Support large numbered footnotes in minipage
-% But now obsolete due to systematic use of \savenotes/\spewnotes
-% when minipages are in use in the various macro definitions next.
-\def\thempfootnote{\arabic{mpfootnote}}
-
-
-%% NUMBERING OF FIGURES, TABLES, AND LITERAL BLOCKS
-\ltx@ifundefined{c@chapter}
-   {\newcounter{literalblock}}%
-   {\newcounter{literalblock}[chapter]%
-    \def\theliteralblock{\ifnum\c@chapter>\z@\arabic{chapter}.\fi
-                         \arabic{literalblock}}%
-    }%
-\ifspx@opt@nonumfigreset
-    \ltx@ifundefined{c@chapter}{}{%
-      \@removefromreset{figure}{chapter}%
-      \@removefromreset{table}{chapter}%
-      \@removefromreset{literalblock}{chapter}%
-      \ifspx@opt@mathnumfig
-        \@removefromreset{equation}{chapter}%
-      \fi
-    }%
-    \def\thefigure{\arabic{figure}}%
-    \def\thetable {\arabic{table}}%
-    \def\theliteralblock{\arabic{literalblock}}%
-    \ifspx@opt@mathnumfig
-      \def\theequation{\arabic{equation}}%
-    \fi
-\else
-\let\spx@preAthefigure\@empty
-\let\spx@preBthefigure\@empty
-% \ifspx@opt@usespart  % <-- LaTeX writer could pass such a 'usespart' boolean
-%                      %     as sphinx.sty package option
-% If document uses \part, (triggered in Sphinx by latex_toplevel_sectioning)
-% LaTeX core per default does not reset chapter or section
-% counters at each part.
-% But if we modify this, we need to redefine \thechapter, \thesection to
-% include the part number and this will cause problems in table of contents
-% because of too wide numbering. Simplest is to do nothing.
-% \fi
-\ifnum\spx@opt@numfigreset>0
-    \ltx@ifundefined{c@chapter}
-      {}
-      {\g@addto@macro\spx@preAthefigure{\ifnum\c@chapter>\z@\arabic{chapter}.}%
-       \g@addto@macro\spx@preBthefigure{\fi}}%
-\fi
-\ifnum\spx@opt@numfigreset>1
-    \@addtoreset{figure}{section}%
-    \@addtoreset{table}{section}%
-    \@addtoreset{literalblock}{section}%
-    \ifspx@opt@mathnumfig
-      \@addtoreset{equation}{section}%
-    \fi
-    \g@addto@macro\spx@preAthefigure{\ifnum\c@section>\z@\arabic{section}.}%
-    \g@addto@macro\spx@preBthefigure{\fi}%
-\fi
-\ifnum\spx@opt@numfigreset>2
-    \@addtoreset{figure}{subsection}%
-    \@addtoreset{table}{subsection}%
-    \@addtoreset{literalblock}{subsection}%
-    \ifspx@opt@mathnumfig
-      \@addtoreset{equation}{subsection}%
-    \fi
-    \g@addto@macro\spx@preAthefigure{\ifnum\c@subsection>\z@\arabic{subsection}.}%
-    \g@addto@macro\spx@preBthefigure{\fi}%
-\fi
-\ifnum\spx@opt@numfigreset>3
-    \@addtoreset{figure}{subsubsection}%
-    \@addtoreset{table}{subsubsection}%
-    \@addtoreset{literalblock}{subsubsection}%
-    \ifspx@opt@mathnumfig
-      \@addtoreset{equation}{subsubsection}%
-    \fi
-    \g@addto@macro\spx@preAthefigure{\ifnum\c@subsubsection>\z@\arabic{subsubsection}.}%
-    \g@addto@macro\spx@preBthefigure{\fi}%
-\fi
-\ifnum\spx@opt@numfigreset>4
-    \@addtoreset{figure}{paragraph}%
-    \@addtoreset{table}{paragraph}%
-    \@addtoreset{literalblock}{paragraph}%
-    \ifspx@opt@mathnumfig
-      \@addtoreset{equation}{paragraph}%
-    \fi
-    \g@addto@macro\spx@preAthefigure{\ifnum\c@subparagraph>\z@\arabic{subparagraph}.}%
-    \g@addto@macro\spx@preBthefigure{\fi}%
-\fi
-\ifnum\spx@opt@numfigreset>5
-    \@addtoreset{figure}{subparagraph}%
-    \@addtoreset{table}{subparagraph}%
-    \@addtoreset{literalblock}{subparagraph}%
-    \ifspx@opt@mathnumfig
-      \@addtoreset{equation}{subparagraph}%
-    \fi
-    \g@addto@macro\spx@preAthefigure{\ifnum\c@subsubparagraph>\z@\arabic{subsubparagraph}.}%
-    \g@addto@macro\spx@preBthefigure{\fi}%
-\fi
-\expandafter\g@addto@macro
-\expandafter\spx@preAthefigure\expandafter{\spx@preBthefigure}%
-\let\thefigure\spx@preAthefigure
-\let\thetable\spx@preAthefigure
-\let\theliteralblock\spx@preAthefigure
-\g@addto@macro\thefigure{\arabic{figure}}%
-\g@addto@macro\thetable{\arabic{table}}%
-\g@addto@macro\theliteralblock{\arabic{literalblock}}%
-  \ifspx@opt@mathnumfig
-    \let\theequation\spx@preAthefigure
-    \g@addto@macro\theequation{\arabic{equation}}%
-  \fi
-\fi
-
-
-%% LITERAL BLOCKS
-%
-% Based on use of "fancyvrb.sty"'s Verbatim.
-% - with framing allowing page breaks ("framed.sty")
-% - with breaking of long lines (exploits Pygments mark-up),
-% - with possibly of a top caption, non-separable by pagebreak.
-% - and usable inside tables or footnotes ("footnotehyper-sphinx").
-
-% For extensions which use \OriginalVerbatim and compatibility with Sphinx <
-% 1.5, we define and use these when (unmodified) Verbatim will be needed. But
-% Sphinx >= 1.5 does not modify the \Verbatim macro anymore.
-\let\OriginalVerbatim   \Verbatim
-\let\endOriginalVerbatim\endVerbatim
-
-% for captions of literal blocks
-% at start of caption title
-\newcommand*{\fnum@literalblock}{\literalblockname\nobreakspace\theliteralblock}
-% this will be overwritten in document preamble by Babel translation
-\newcommand*{\literalblockname}{Listing }
-% file extension needed for \caption's good functioning, the file is created
-% only if a \listof{literalblock}{foo} command is encountered, which is
-% analogous to \listoffigures, but for the code listings (foo = chosen title.)
-\newcommand*{\ext@literalblock}{lol}
-
-\newif\ifspx@inframed % flag set if we are already in a framed environment
-% if forced use of minipage encapsulation is needed (e.g. table cells)
-\newif\ifsphinxverbatimwithminipage   \sphinxverbatimwithminipagefalse
-
-% Framing macro for use with framed.sty's \FrameCommand
-%  - it obeys current indentation,
-%  - frame is \fboxsep separated from the contents,
-%  - the contents use the full available text width,
-%  - #1 = color of frame, #2 = color of background,
-%  - #3 = above frame, #4 = below frame, #5 = within frame,
-%  - #3 and #4 must be already typeset boxes; they must issue \normalcolor
-%    or similar, else, they are under scope of color #1
-\long\def\spx@fcolorbox #1#2#3#4#5{%
-  \hskip\@totalleftmargin
-  \hskip-\fboxsep\hskip-\fboxrule
-  % use of \color@b@x here is compatible with both xcolor.sty and color.sty
-  \color@b@x {\color{#1}\spx@CustomFBox{#3}{#4}}{\color{#2}}{#5}%
-  \hskip-\fboxsep\hskip-\fboxrule
-  \hskip-\linewidth \hskip-\@totalleftmargin \hskip\columnwidth
-}%
-% #1 = for material above frame, such as a caption or a "continued" hint
-% #2 = for material below frame, such as a caption or "continues on next page"
-% #3 = actual contents, which will be typeset with a background color
-\long\def\spx@CustomFBox#1#2#3{%
-  \begingroup
-  \setbox\@tempboxa\hbox{{#3}}% inner braces to avoid color leaks
-  \vbox{#1% above frame
-            % draw frame border _latest_ to avoid pdf viewer issue
-            \kern\fboxrule
-            \hbox{\kern\fboxrule
-                  \copy\@tempboxa
-                  \kern-\wd\@tempboxa\kern-\fboxrule
-                  \vrule\@width\fboxrule
-                  \kern\wd\@tempboxa
-                  \vrule\@width\fboxrule}%
-            \kern-\dimexpr\ht\@tempboxa+\dp\@tempboxa+\fboxrule\relax
-            \hrule\@height\fboxrule
-            \kern\dimexpr\ht\@tempboxa+\dp\@tempboxa\relax
-            \hrule\@height\fboxrule
-        #2% below frame
-       }%
-  \endgroup
-}%
-\def\spx@fcolorbox@put@c#1{% hide width from framed.sty measuring
-    \moveright\dimexpr\fboxrule+.5\wd\@tempboxa\hb@xt@\z@{\hss#1\hss}%
-}%
-\def\spx@fcolorbox@put@r#1{% right align with contents, width hidden
-    \moveright\dimexpr\fboxrule+\wd\@tempboxa-\fboxsep\hb@xt@\z@{\hss#1}%
-}%
-\def\spx@fcolorbox@put@l#1{% left align with contents, width hidden
-    \moveright\dimexpr\fboxrule+\fboxsep\hb@xt@\z@{#1\hss}%
-}%
-%
-\def\sphinxVerbatim@Continued
-   {\csname spx@fcolorbox@put@\spx@opt@verbatimcontinuedalign\endcsname
-    {\normalcolor\sphinxstylecodecontinued\literalblockcontinuedname}}%
-\def\sphinxVerbatim@Continues
-   {\csname spx@fcolorbox@put@\spx@opt@verbatimcontinuesalign\endcsname
-    {\normalcolor\sphinxstylecodecontinues\literalblockcontinuesname}}%
-\def\sphinxVerbatim@Title
-   {\spx@fcolorbox@put@c{\unhcopy\sphinxVerbatim@TitleBox}}%
-\let\sphinxVerbatim@Before\@empty
-\let\sphinxVerbatim@After\@empty
-% Defaults are redefined in document preamble according to language
-\newcommand*\literalblockcontinuedname{continued from previous page}%
-\newcommand*\literalblockcontinuesname{continues on next page}%
-%
-\def\spx@verbatimfcolorbox{\spx@fcolorbox{VerbatimBorderColor}{VerbatimColor}}%
-\def\sphinxVerbatim@FrameCommand
-   {\spx@verbatimfcolorbox\sphinxVerbatim@Before\sphinxVerbatim@After}%
-\def\sphinxVerbatim@FirstFrameCommand
-   {\spx@verbatimfcolorbox\sphinxVerbatim@Before\sphinxVerbatim@Continues}%
-\def\sphinxVerbatim@MidFrameCommand
-   {\spx@verbatimfcolorbox\sphinxVerbatim@Continued\sphinxVerbatim@Continues}%
-\def\sphinxVerbatim@LastFrameCommand
-   {\spx@verbatimfcolorbox\sphinxVerbatim@Continued\sphinxVerbatim@After}%
-
-% For linebreaks inside Verbatim environment from package fancyvrb.
-\newbox\sphinxcontinuationbox
-\newbox\sphinxvisiblespacebox
-\newcommand*\sphinxafterbreak {\copy\sphinxcontinuationbox}
-
-% Take advantage of the already applied Pygments mark-up to insert
-% potential linebreaks for TeX processing.
-%        {, <, #, %, $, ' and ": go to next line.
-%        _, }, ^, &, >, -, ~, and \: stay at end of broken line.
-% Use of \textquotesingle for straight quote.
-% FIXME: convert this to package options ?
-\newcommand*\sphinxbreaksbeforelist {%
-    \do\PYGZob\{\do\PYGZlt\<\do\PYGZsh\#\do\PYGZpc\%% {, <, #, %,
-    \do\PYGZdl\$\do\PYGZdq\"% $, "
-    \def\PYGZsq
-     {\discretionary{}{\sphinxafterbreak\textquotesingle}{\textquotesingle}}% '
-}
-\newcommand*\sphinxbreaksafterlist {%
-    \do\PYGZus\_\do\PYGZcb\}\do\PYGZca\^\do\PYGZam\&% _, }, ^, &,
-    \do\PYGZgt\>\do\PYGZhy\-\do\PYGZti\~% >, -, ~
-    \do\PYGZbs\\% \
-}
-\newcommand*\sphinxbreaksatspecials {%
-  \def\do##1##2%
-     {\def##1{\discretionary{}{\sphinxafterbreak\char`##2}{\char`##2}}}%
-  \sphinxbreaksbeforelist
-  \def\do##1##2%
-     {\def##1{\discretionary{\char`##2}{\sphinxafterbreak}{\char`##2}}}%
-  \sphinxbreaksafterlist
-}
-
-\def\sphinx@verbatim@nolig@list {\do \`}%
-% Some characters . , ; ? ! / are neither pygmentized nor "tex-escaped".
-% This macro makes them "active" and they will insert potential linebreaks.
-% Not compatible with math mode (cf \sphinxunactivateextras).
-\newcommand*\sphinxbreaksbeforeactivelist {}% none
-\newcommand*\sphinxbreaksafteractivelist  {\do\.\do\,\do\;\do\?\do\!\do\/}
-\newcommand*\sphinxbreaksviaactive {%
-   \def\do##1{\lccode`\~`##1%
-    \lowercase{\def~}{\discretionary{}{\sphinxafterbreak\char`##1}{\char`##1}}%
-    \catcode`##1\active}%
-   \sphinxbreaksbeforeactivelist
-   \def\do##1{\lccode`\~`##1%
-    \lowercase{\def~}{\discretionary{\char`##1}{\sphinxafterbreak}{\char`##1}}%
-    \catcode`##1\active}%
-   \sphinxbreaksafteractivelist
-   \lccode`\~`\~
-}
-
-% If the linebreak is at a space, the latter will be displayed as visible
-% space at end of first line, and a continuation symbol starts next line.
-\def\spx@verbatim@space {%
-     \nobreak\hskip\z@skip
-     \discretionary{\copy\sphinxvisiblespacebox}{\sphinxafterbreak}
-                   {\kern\fontdimen2\font}%
-}%
-
-% if the available space on page is less than \literalblockneedspace, insert pagebreak
-\newcommand{\sphinxliteralblockneedspace}{5\baselineskip}
-\newcommand{\sphinxliteralblockwithoutcaptionneedspace}{1.5\baselineskip}
-% The title (caption) is specified from outside as macro \sphinxVerbatimTitle.
-% \sphinxVerbatimTitle is reset to empty after each use of Verbatim.
-\newcommand*\sphinxVerbatimTitle {}
-% This box to typeset the caption before framed.sty multiple passes for framing.
-\newbox\sphinxVerbatim@TitleBox
-% This box to measure contents if nested as inner \MakeFramed requires then
-% minipage encapsulation but too long contents then break outer \MakeFramed
-\newbox\sphinxVerbatim@ContentsBox
-% This is a workaround to a "feature" of French lists, when literal block
-% follows immediately; usable generally (does only \par then), a priori...
-\newcommand*\sphinxvspacefixafterfrenchlists{%
-   \ifvmode\ifdim\lastskip<\z@ \vskip\parskip\fi\else\par\fi
-}
-% Holder macro for labels of literal blocks. Set-up by LaTeX writer.
-\newcommand*\sphinxLiteralBlockLabel {}
-\newcommand*\sphinxSetupCaptionForVerbatim [1]
-{%
-    \sphinxvspacefixafterfrenchlists
-    \needspace{\sphinxliteralblockneedspace}%
-% insert a \label via \sphinxLiteralBlockLabel
-% reset to normal the color for the literal block caption
-    \def\sphinxVerbatimTitle
-       {\py@NormalColor\sphinxcaption{\sphinxLiteralBlockLabel #1}}%
-}
-\newcommand*\sphinxSetupCodeBlockInFootnote {%
-  \fvset{fontsize=\footnotesize}\let\caption\sphinxfigcaption
-  \sphinxverbatimwithminipagetrue % reduces vertical spaces
-  % we counteract (this is in a group) the \@normalsize from \caption
-  \let\normalsize\footnotesize\let\@parboxrestore\relax
-  \def\spx@abovecaptionskip{\sphinxverbatimsmallskipamount}%
-}
-\newcommand*{\sphinxverbatimsmallskipamount}{\smallskipamount}
-% serves to implement line highlighting and line wrapping
-\newcommand\sphinxFancyVerbFormatLine[1]{%
-  \expandafter\sphinx@verbatim@checkifhl\expandafter{\the\FV@CodeLineNo}%
-  \ifin@
-     \sphinxVerbatimHighlightLine{#1}%
-  \else
-     \sphinxVerbatimFormatLine{#1}%
-  \fi
-}%
-\newcommand\sphinxVerbatimHighlightLine[1]{%
-  \edef\sphinxrestorefboxsep{\fboxsep\the\fboxsep\relax}%
-  \fboxsep0pt\relax % cf LaTeX bug graphics/4524
-  \colorbox{sphinxVerbatimHighlightColor}%
-           {\sphinxrestorefboxsep\sphinxVerbatimFormatLine{#1}}%
-  % no need to restore \fboxsep here, as this ends up in a \hbox from fancyvrb
-}%
-% \sphinxVerbatimFormatLine will be set locally to one of those two:
-\newcommand\sphinxVerbatimFormatLineWrap[1]{%
-    \hsize\linewidth
-    \vtop{\raggedright\hyphenpenalty\z@\exhyphenpenalty\z@
-          \doublehyphendemerits\z@\finalhyphendemerits\z@
-          \strut #1\strut}%
-}%
-\newcommand\sphinxVerbatimFormatLineNoWrap[1]{\hb@xt@\linewidth{\strut #1\hss}}%
-\g@addto@macro\FV@SetupFont{%
-    \sbox\sphinxcontinuationbox {\spx@opt@verbatimcontinued}%
-    \sbox\sphinxvisiblespacebox {\spx@opt@verbatimvisiblespace}%
-}%
-\newenvironment{sphinxVerbatim}{%
-  % first, let's check if there is a caption
-  \ifx\sphinxVerbatimTitle\empty
-      \sphinxvspacefixafterfrenchlists
-      \parskip\z@skip
-      \vskip\sphinxverbatimsmallskipamount
-      % there was no caption. Check if nevertheless a label was set.
-      \ifx\sphinxLiteralBlockLabel\empty\else
-      % we require some space to be sure hyperlink target from \phantomsection
-      % will not be separated from upcoming verbatim by a page break
-          \needspace{\sphinxliteralblockwithoutcaptionneedspace}%
-          \phantomsection\sphinxLiteralBlockLabel
-      \fi
-  \else
-     \parskip\z@skip
-     \if t\spx@opt@literalblockcappos
-       \vskip\spx@abovecaptionskip
-       \def\sphinxVerbatim@Before
-           {\sphinxVerbatim@Title\nointerlineskip
-            \kern\dimexpr-\dp\strutbox+\sphinxbelowcaptionspace
-                 % if no frame (code-blocks inside table cells), remove
-                 % the "verbatimsep" whitespace from the top (better visually)
-                 \ifspx@opt@verbatimwithframe\else-\sphinxverbatimsep\fi
-                 % caption package adds \abovecaptionskip vspace, remove it
-                 \spx@ifcaptionpackage{-\abovecaptionskip}{}\relax}%
-     \else
-       \vskip\sphinxverbatimsmallskipamount
-       \def\sphinxVerbatim@After
-          {\nointerlineskip\kern\dimexpr\dp\strutbox
-            \ifspx@opt@verbatimwithframe\else-\sphinxverbatimsep\fi
-            \spx@ifcaptionpackage{-\abovecaptionskip}{}\relax
-           \sphinxVerbatim@Title}%
-     \fi
-     \def\@captype{literalblock}%
-     \capstart
-     % \sphinxVerbatimTitle must reset color
-     \setbox\sphinxVerbatim@TitleBox
-            \hbox{\begin{minipage}{\linewidth}%
-     % caption package may detect wrongly if top or bottom, so we help it
-                    \spx@ifcaptionpackage
-                      {\caption@setposition{\spx@opt@literalblockcappos}}{}%
-                    \sphinxVerbatimTitle
-                  \end{minipage}}%
-  \fi
-  \global\let\sphinxLiteralBlockLabel\empty
-  \global\let\sphinxVerbatimTitle\empty
-  \fboxsep\sphinxverbatimsep \fboxrule\sphinxverbatimborder
-  \ifspx@opt@verbatimwithframe\else\fboxrule\z@\fi
-  \let\FrameCommand     \sphinxVerbatim@FrameCommand
-  \let\FirstFrameCommand\sphinxVerbatim@FirstFrameCommand
-  \let\MidFrameCommand  \sphinxVerbatim@MidFrameCommand
-  \let\LastFrameCommand \sphinxVerbatim@LastFrameCommand
-  \ifspx@opt@verbatimhintsturnover\else
-      \let\sphinxVerbatim@Continued\@empty
-      \let\sphinxVerbatim@Continues\@empty
-  \fi
-  \ifspx@opt@verbatimwrapslines
-  % fancyvrb's Verbatim puts each input line in (unbreakable) horizontal boxes.
-  % This customization wraps each line from the input in a \vtop, thus
-  % allowing it to wrap and display on two or more lines in the latex output.
-  %     - The codeline counter will be increased only once.
-  %     - The wrapped material will not break across pages, it is impossible
-  %       to achieve this without extensive rewrite of fancyvrb.
-  %     - The (not used in sphinx) obeytabs option to Verbatim is
-  %       broken by this change (showtabs and tabspace work).
-    \let\sphinxVerbatimFormatLine\sphinxVerbatimFormatLineWrap
-    \let\FV@Space\spx@verbatim@space
-  % Allow breaks at special characters using \PYG... macros.
-    \sphinxbreaksatspecials
-  % Breaks at punctuation characters . , ; ? ! and / (needs catcode activation)
-    \fvset{codes*=\sphinxbreaksviaactive}%
-  \else % end of conditional code for wrapping long code lines
-    \let\sphinxVerbatimFormatLine\sphinxVerbatimFormatLineNoWrap
-  \fi
-  \let\FancyVerbFormatLine\sphinxFancyVerbFormatLine
-  \VerbatimEnvironment
-  % workaround to fancyvrb's check of current list depth
-  \def\@toodeep {\advance\@listdepth\@ne}%
-  % The list environment is needed to control perfectly the vertical space.
-  % Note: \OuterFrameSep used by framed.sty is later set to \topsep hence 0pt.
-  % - if caption: distance from last text baseline to caption baseline is
-  %   A+(B-F)+\ht\strutbox, A = \abovecaptionskip (default 10pt), B =
-  %   \baselineskip, F is the framed.sty \FrameHeightAdjust macro, default 6pt.
-  %   Formula valid for F < 10pt.
-  % - distance of baseline of caption to top of frame is like for tables:
-  %   \sphinxbelowcaptionspace (=0.5\baselineskip)
-  % - if no caption: distance of last text baseline to code frame is S+(B-F),
-  %   with S = \sphinxverbatimtopskip (=\smallskip)
-  % - and distance from bottom of frame to next text baseline is
-  %   \baselineskip+\parskip.
-  % The \trivlist is used to avoid possible "too deeply nested" error.
-  \itemsep   \z@skip
-  \topsep    \z@skip
-  \partopsep \z@skip
-  % trivlist will set \parsep to \parskip (which itself is set to zero above)
-  % \leftmargin will be set to zero by trivlist
-  \rightmargin\z@
-  \parindent  \z@% becomes \itemindent. Default zero, but perhaps overwritten.
-  \trivlist\item\relax
-     \ifspx@inframed\setbox\sphinxVerbatim@ContentsBox\vbox\bgroup
-        \@setminipage\hsize\linewidth
-        % use bulk of minipage paragraph shape restores (this is needed
-        % in indented contexts, at least for some)
-        \textwidth\hsize \columnwidth\hsize \@totalleftmargin\z@
-        \leftskip\z@skip \rightskip\z@skip  \@rightskip\z@skip
-     \else
-       \ifsphinxverbatimwithminipage\noindent\begin{minipage}{\linewidth}\fi
-       \MakeFramed {% adapted over from framed.sty's snugshade environment
-        \advance\hsize-\width\@totalleftmargin\z@\linewidth\hsize\@setminipage
-        }%
-     \fi
-     % For grid placement from \strut's in \FancyVerbFormatLine
-     \lineskip\z@skip
-     % active comma should not be overwritten by \@noligs
-     \ifspx@opt@verbatimwrapslines
-       \let\verbatim@nolig@list \sphinx@verbatim@nolig@list
-     \fi
-     % will fetch its optional arguments if any
-     \OriginalVerbatim
-}
-{%
-  \endOriginalVerbatim
-  \ifspx@inframed
-   \egroup % finish \sphinxVerbatim@ContentsBox vbox
-   \nobreak % update page totals
-   \ifdim\dimexpr\ht\sphinxVerbatim@ContentsBox+
-         \dp\sphinxVerbatim@ContentsBox+
-         \ht\sphinxVerbatim@TitleBox+
-         \dp\sphinxVerbatim@TitleBox+
-         2\fboxsep+2\fboxrule+
-         % try to account for external frame parameters
-         \FrameSep+\FrameRule+
-         % Usage here of 2 baseline distances is empirical.
-         % In border case where code-block fits barely in remaining space,
-         % it gets framed and looks good but the outer frame may continue
-         % on top of next page and give (if no contents after code-block)
-         % an empty framed line, as testing showed.
-         2\baselineskip+
-         % now add all to accumulated page totals and compare to \pagegoal
-         \pagetotal+\pagedepth>\pagegoal
-    % long contents: do not \MakeFramed. Do make a caption (either before or
-    % after) if title exists. Continuation hints across pagebreaks dropped.
-    % FIXME? a bottom caption may end up isolated at top of next page
-    %        (no problem with a top caption, which is default)
-    \spx@opt@verbatimwithframefalse
-    \def\sphinxVerbatim@Title{\noindent\box\sphinxVerbatim@TitleBox\par}%
-    \sphinxVerbatim@Before
-    \noindent\unvbox\sphinxVerbatim@ContentsBox\par
-    \sphinxVerbatim@After
-   \else
-    % short enough contents: use \MakeFramed. As it is nested, this requires
-    % minipage encapsulation.
-    \noindent\begin{minipage}{\linewidth}%
-     \MakeFramed {% Use it now with the fetched contents
-      \advance\hsize-\width\@totalleftmargin\z@\linewidth\hsize\@setminipage
-      }%
-     \unvbox\sphinxVerbatim@ContentsBox
-     % some of this may be superfluous:
-     \par\unskip\@minipagefalse\endMakeFramed
-    \end{minipage}%
-   \fi
-  \else % non-nested \MakeFramed
-    \par\unskip\@minipagefalse\endMakeFramed % from framed.sty snugshade
-    \ifsphinxverbatimwithminipage\end{minipage}\fi
-  \fi
-  \endtrivlist
-}
-\newenvironment {sphinxVerbatimNoFrame}
-  {\spx@opt@verbatimwithframefalse
-   \VerbatimEnvironment
-   \begin{sphinxVerbatim}}
-  {\end{sphinxVerbatim}}
-\newenvironment {sphinxVerbatimintable}
-  {% don't use a frame if in a table cell
-   \spx@opt@verbatimwithframefalse
-   \sphinxverbatimwithminipagetrue
-   % the literal block caption uses \sphinxcaption which is wrapper of \caption,
-   % but \caption must be modified because longtable redefines it to work only
-   % for the own table caption, and tabulary has multiple passes
-   \let\caption\sphinxfigcaption
-   % reduce above caption skip
-   \def\spx@abovecaptionskip{\sphinxverbatimsmallskipamount}%
-   \VerbatimEnvironment
-   \begin{sphinxVerbatim}}
-  {\end{sphinxVerbatim}}
-
-
-%% PARSED LITERALS
-% allow long lines to wrap like they do in code-blocks
-
-% this should be kept in sync with definitions in sphinx.util.texescape
-\newcommand*\sphinxbreaksattexescapedchars{%
-  \def\do##1##2% put potential break point before character
-     {\def##1{\discretionary{}{\sphinxafterbreak\char`##2}{\char`##2}}}%
-  \do\{\{\do\textless\<\do\#\#\do\%\%\do\$\$% {, <, #, %, $
-  \def\do##1##2% put potential break point after character
-     {\def##1{\discretionary{\char`##2}{\sphinxafterbreak}{\char`##2}}}%
-  \do\_\_\do\}\}\do\textasciicircum\^\do\&\&% _, }, ^, &,
-  \do\textgreater\>\do\textasciitilde\~% >, ~
-  \do\textbackslash\\% \
-}
-\newcommand*\sphinxbreaksviaactiveinparsedliteral{%
-  \sphinxbreaksviaactive % by default handles . , ; ? ! /
-  \lccode`\~`\~ %
-  % update \dospecials as it is used by \url
-  % but deactivation will already have been done hence this is unneeded:
-  %  \expandafter\def\expandafter\dospecials\expandafter{\dospecials
-  %   \sphinxbreaksbeforeactivelist\sphinxbreaksafteractivelist\do\-}%
-}
-\newcommand*\sphinxbreaksatspaceinparsedliteral{%
-  \lccode`~32 \lowercase{\let~}\spx@verbatim@space\lccode`\~`\~
-}
-\newcommand*{\sphinxunactivateextras}{\let\do\@makeother
-      \sphinxbreaksbeforeactivelist\sphinxbreaksafteractivelist}%
-% the \catcode13=5\relax (deactivate end of input lines) is left to callers
-\newcommand*{\sphinxunactivateextrasandspace}{\catcode32=10\relax
-      \sphinxunactivateextras}%
-% now for the modified alltt environment
-\newenvironment{sphinxalltt}
-{% at start of next line to workaround Emacs/AUCTeX issue with this file
-\begin{alltt}%
- \ifspx@opt@parsedliteralwraps
-   \sbox\sphinxcontinuationbox {\spx@opt@verbatimcontinued}%
-   \sbox\sphinxvisiblespacebox {\spx@opt@verbatimvisiblespace}%
-   \sphinxbreaksattexescapedchars
-   \sphinxbreaksviaactiveinparsedliteral
-   \sphinxbreaksatspaceinparsedliteral
-% alltt takes care of the ' as derivative ("prime") in math mode
-   \everymath\expandafter{\the\everymath\sphinxunactivateextrasandspace
-             \catcode`\<=12\catcode`\>=12\catcode`\^=7\catcode`\_=8 }%
-% not sure if displayed math (align,...) can end up in parsed-literal, anyway
-   \everydisplay\expandafter{\the\everydisplay
-             \catcode13=5 \sphinxunactivateextrasandspace
-             \catcode`\<=12\catcode`\>=12\catcode`\^=7\catcode`\_=8 }%
- \fi }
-{\end{alltt}}
-
-% Protect \href's first argument in contexts such as sphinxalltt (or
-% \sphinxcode). Sphinx uses \#, \%, \& ... always inside \sphinxhref.
-\protected\def\sphinxhref#1#2{{%
-    \sphinxunactivateextrasandspace % never do \scantokens with active space!
-% for the \endlinechar business, https://github.com/latex3/latex2e/issues/286
-    \endlinechar\m@ne\everyeof{{\endlinechar13 #2}}% keep catcode regime for #2
-    \scantokens{\href{#1}}% normalise it for #1 during \href expansion
-}}
-% Same for \url. And also \nolinkurl for coherence.
-\protected\def\sphinxurl#1{{%
-    \sphinxunactivateextrasandspace\everyeof{}% (<- precaution for \scantokens)
-    \endlinechar\m@ne\scantokens{\url{#1}}%
-}}
-\protected\def\sphinxnolinkurl#1{{%
-    \sphinxunactivateextrasandspace\everyeof{}%
-    \endlinechar\m@ne\scantokens{\nolinkurl{#1}}%
-}}
-
-
-%% TOPIC AND CONTENTS BOXES
-%
-% Again based on use of "framed.sty", this allows breakable framed boxes.
-\long\def\spx@ShadowFBox#1{%
-  \leavevmode\begingroup
-  % first we frame the box #1
-  \setbox\@tempboxa
-   \hbox{\vrule\@width\sphinxshadowrule
-         \vbox{\hrule\@height\sphinxshadowrule
-               \kern\sphinxshadowsep
-               \hbox{\kern\sphinxshadowsep #1\kern\sphinxshadowsep}%
-               \kern\sphinxshadowsep
-               \hrule\@height\sphinxshadowrule}%
-         \vrule\@width\sphinxshadowrule}%
-  % Now we add the shadow, like \shadowbox from fancybox.sty would do
-  \dimen@\dimexpr.5\sphinxshadowrule+\sphinxshadowsize\relax
-  \hbox{\vbox{\offinterlineskip
-              \hbox{\copy\@tempboxa\kern-.5\sphinxshadowrule
-                    % add shadow on right side
-                    \lower\sphinxshadowsize
-                          \hbox{\vrule\@height\ht\@tempboxa \@width\dimen@}%
-                    }%
-              \kern-\dimen@ % shift back vertically to bottom of frame
-              % and add shadow at bottom
-              \moveright\sphinxshadowsize
-                    \vbox{\hrule\@width\wd\@tempboxa \@height\dimen@}%
-              }%
-        % move left by the size of right shadow so shadow adds no width
-        \kern-\sphinxshadowsize
-       }%
-  \endgroup
-}
-
-% use framed.sty to allow page breaks in frame+shadow
-% works well inside Lists and Quote-like environments
-% produced by ``topic'' directive (or local contents)
-% could nest if LaTeX writer authorized it
-\newenvironment{sphinxShadowBox}
-  {\def\FrameCommand {\spx@ShadowFBox }%
-   \advance\spx@image@maxheight
-   -\dimexpr2\sphinxshadowrule
-           +2\sphinxshadowsep
-           +\sphinxshadowsize
-           +\baselineskip\relax
-   % configure framed.sty not to add extra vertical spacing
-   \ltx@ifundefined{OuterFrameSep}{}{\OuterFrameSep\z@skip}%
-   % the \trivlist will add the vertical spacing on top and bottom which is
-   % typical of center environment as used in Sphinx <= 1.4.1
-   % the \noindent has the effet of an extra blank line on top, to
-   % imitate closely the layout from Sphinx <= 1.4.1; the \FrameHeightAdjust
-   % will put top part of frame on this baseline.
-   \def\FrameHeightAdjust {\baselineskip}%
-   % use package footnote to handle footnotes
-   \savenotes
-   \trivlist\item\noindent
-    % use a minipage if we are already inside a framed environment
-    \ifspx@inframed\begin{minipage}{\linewidth}\fi
-    \MakeFramed {\spx@inframedtrue
-    % framed.sty puts into "\width" the added width (=2shadowsep+2shadowrule)
-    % adjust \hsize to what the contents must use
-    \advance\hsize-\width
-    % adjust LaTeX parameters to behave properly in indented/quoted contexts
-    \FrameRestore
-    % typeset the contents as in a minipage (Sphinx <= 1.4.1 used a minipage and
-    % itemize/enumerate are therein typeset more tightly, we want to keep
-    % that). We copy-paste from LaTeX source code but don't do a real minipage.
-    \@pboxswfalse
-    \let\@listdepth\@mplistdepth \@mplistdepth\z@
-    \@minipagerestore
-    \@setminipage
-    }%
-  }%
-  {% insert the "endminipage" code
-    \par\unskip
-    \@minipagefalse
-   \endMakeFramed
-     \ifspx@inframed\end{minipage}\fi
-   \endtrivlist
-   % output the stored footnotes
-   \spewnotes
-  }
-
-
-%% NOTICES AND ADMONITIONS
-%
-% Some are quite plain
-% the spx@notice@bordercolor etc are set in the sphinxadmonition environment
-\newenvironment{sphinxlightbox}{%
-  \par
-  \noindent{\color{spx@notice@bordercolor}%
-            \rule{\linewidth}{\spx@notice@border}}\par\nobreak
-  {\parskip\z@skip\noindent}%
-  }
-  {%
-  % counteract previous possible negative skip (French lists!):
-  % (we can't cancel that any earlier \vskip introduced a potential pagebreak)
-  \sphinxvspacefixafterfrenchlists
-  \nobreak\vbox{\noindent\kern\@totalleftmargin
-      {\color{spx@notice@bordercolor}%
-       \rule[\dimexpr.4\baselineskip-\spx@notice@border\relax]
-             {\linewidth}{\spx@notice@border}}\hss}\allowbreak
-  }% end of sphinxlightbox environment definition
-% may be renewenvironment'd by user for complete customization
-\newenvironment{sphinxnote}[1]
-  {\begin{sphinxlightbox}\sphinxstrong{#1} }{\end{sphinxlightbox}}
-\newenvironment{sphinxhint}[1]
-  {\begin{sphinxlightbox}\sphinxstrong{#1} }{\end{sphinxlightbox}}
-\newenvironment{sphinximportant}[1]
-  {\begin{sphinxlightbox}\sphinxstrong{#1} }{\end{sphinxlightbox}}
-\newenvironment{sphinxtip}[1]
-  {\begin{sphinxlightbox}\sphinxstrong{#1} }{\end{sphinxlightbox}}
-% or just use the package options
-% these are needed for common handling by notice environment of lightbox
-% and heavybox but they are  currently not used by lightbox environment
-% and there is consequently no corresponding package option
-\definecolor{sphinxnoteBgColor}{rgb}{1,1,1}
-\definecolor{sphinxhintBgColor}{rgb}{1,1,1}
-\definecolor{sphinximportantBgColor}{rgb}{1,1,1}
-\definecolor{sphinxtipBgColor}{rgb}{1,1,1}
-
-% Others get more distinction
-% Code adapted from framed.sty's "snugshade" environment.
-% Nesting works (inner frames do not allow page breaks).
-\newenvironment{sphinxheavybox}{\par
-   \setlength{\FrameRule}{\spx@notice@border}%
-   \setlength{\FrameSep}{\dimexpr.6\baselineskip-\FrameRule\relax}
-   \advance\spx@image@maxheight
-   -\dimexpr2\FrameRule
-           +2\FrameSep
-           +\baselineskip\relax % will happen again if nested, needed indeed!
-   % configure framed.sty's parameters to obtain same vertical spacing
-   % as for "light" boxes. We need for this to manually insert parskip glue and
-   % revert a skip done by framed before the frame.
-    \ltx@ifundefined{OuterFrameSep}{}{\OuterFrameSep\z@skip}%
-    \vspace{\FrameHeightAdjust}
-   % copied/adapted from framed.sty's snugshade
-   \def\FrameCommand##1{\hskip\@totalleftmargin
-       \fboxsep\FrameSep \fboxrule\FrameRule
-       \fcolorbox{spx@notice@bordercolor}{spx@notice@bgcolor}{##1}%
-       \hskip-\linewidth \hskip-\@totalleftmargin \hskip\columnwidth}%
-   \savenotes
-   % use a minipage if we are already inside a framed environment
-   \ifspx@inframed
-       \noindent\begin{minipage}{\linewidth}
-   \else
-       % handle case where notice is first thing in a list item (or is quoted)
-       \if@inlabel
-        \noindent\par\vspace{-\baselineskip}
-       \else
-        \vspace{\parskip}
-       \fi
-   \fi
-   \MakeFramed {\spx@inframedtrue
-     \advance\hsize-\width \@totalleftmargin\z@ \linewidth\hsize
-     % minipage initialization copied from LaTeX source code.
-     \@pboxswfalse
-     \let\@listdepth\@mplistdepth \@mplistdepth\z@
-     \@minipagerestore
-     \@setminipage }%
-   }
-   {%
-   \par\unskip
-   \@minipagefalse
-   \endMakeFramed
-   \ifspx@inframed\end{minipage}\fi
-   % set footnotes at bottom of page
-   \spewnotes
-   % arrange for similar spacing below frame as for "light" boxes.
-   \vskip .4\baselineskip
-   }% end of sphinxheavybox environment definition
-% may be renewenvironment'd by user for complete customization
-\newenvironment{sphinxwarning}[1]
-  {\begin{sphinxheavybox}\sphinxstrong{#1} }{\end{sphinxheavybox}}
-\newenvironment{sphinxcaution}[1]
-  {\begin{sphinxheavybox}\sphinxstrong{#1} }{\end{sphinxheavybox}}
-\newenvironment{sphinxattention}[1]
-  {\begin{sphinxheavybox}\sphinxstrong{#1} }{\end{sphinxheavybox}}
-\newenvironment{sphinxdanger}[1]
-  {\begin{sphinxheavybox}\sphinxstrong{#1} }{\end{sphinxheavybox}}
-\newenvironment{sphinxerror}[1]
-  {\begin{sphinxheavybox}\sphinxstrong{#1} }{\end{sphinxheavybox}}
-% or just use package options
-
-% the \colorlet of xcolor (if at all loaded) is overkill for our use case
-\newcommand{\sphinxcolorlet}[2]
-    {\expandafter\let\csname\@backslashchar color@#1\expandafter\endcsname
-                     \csname\@backslashchar color@#2\endcsname }
-
-% the main dispatch for all types of notices
-\newenvironment{sphinxadmonition}[2]{% #1=type, #2=heading
-  % can't use #1 directly in definition of end part
-  \def\spx@noticetype {#1}%
-  % set parameters of heavybox/lightbox
-  \sphinxcolorlet{spx@notice@bordercolor}{sphinx#1BorderColor}%
-  \sphinxcolorlet{spx@notice@bgcolor}{sphinx#1BgColor}%
-  \spx@notice@border \dimexpr\csname spx@opt@#1border\endcsname\relax
-  % start specific environment, passing the heading as argument
-  \begin{sphinx#1}{#2}}
-  % workaround some LaTeX "feature" of \end command
- {\edef\spx@temp{\noexpand\end{sphinx\spx@noticetype}}\spx@temp}
-
-
-%% PYTHON DOCS MACROS AND ENVIRONMENTS
-%  (some macros here used by \maketitle in sphinxmanual.cls and sphinxhowto.cls)
-
-% \moduleauthor{name}{email}
-\newcommand{\moduleauthor}[2]{}
-
-% \sectionauthor{name}{email}
-\newcommand{\sectionauthor}[2]{}
-
-% Allow the release number to be specified independently of the
-% \date{}.  This allows the date to reflect the document's date and
-% release to specify the release that is documented.
-%
-\newcommand{\py@release}{\releasename\space\version}
-\newcommand{\version}{}% part of \py@release, used by title page and headers
-% \releaseinfo is used on titlepage (sphinxmanual.cls, sphinxhowto.cls)
-\newcommand{\releaseinfo}{}
-\newcommand{\setreleaseinfo}[1]{\renewcommand{\releaseinfo}{#1}}
-% this is inserted via template and #1=release config variable
-\newcommand{\release}[1]{\renewcommand{\version}{#1}}
-% this is defined by template to 'releasename' latex_elements key
-\newcommand{\releasename}{}
-% Fix issue in case release and releasename deliberately left blank
-\newcommand{\sphinxheadercomma}{, }% used in fancyhdr header definition
-\newcommand{\sphinxifemptyorblank}[1]{%
-% test after one expansion of macro #1 if contents is empty or spaces
-     \if&\expandafter\@firstofone\detokenize\expandafter{#1}&%
-     \expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi}%
-\AtBeginDocument {%
-   \sphinxifemptyorblank{\releasename}
-     {\sphinxifemptyorblank{\version}{\let\sphinxheadercomma\empty}{}}
-     {}%
-}%
-
-% Allow specification of the author's address separately from the
-% author's name.  This can be used to format them differently, which
-% is a good thing.
-%
-\newcommand{\py@authoraddress}{}
-\newcommand{\authoraddress}[1]{\renewcommand{\py@authoraddress}{#1}}
-
-% {fulllineitems} is the main environment for object descriptions.
-%
-\newcommand{\py@itemnewline}[1]{%
-  \kern\labelsep
-  \@tempdima\linewidth
-  \advance\@tempdima \labelwidth\makebox[\@tempdima][l]{#1}%
-  \kern-\labelsep
-}
-
-\newenvironment{fulllineitems}{%
-  \begin{list}{}{\labelwidth \leftmargin
-                 \rightmargin \z@ \topsep -\parskip \partopsep \parskip
-                 \itemsep -\parsep
-                 \let\makelabel=\py@itemnewline}%
-}{\end{list}}
-
-% Signatures, possibly multi-line
-%
-\newlength{\py@argswidth}
-\newcommand{\py@sigparams}[2]{%
-  \parbox[t]{\py@argswidth}{#1\sphinxcode{)}#2}}
-\newcommand{\pysigline}[1]{\item[{#1}]}
-\newcommand{\pysiglinewithargsret}[3]{%
-  \settowidth{\py@argswidth}{#1\sphinxcode{(}}%
-  \addtolength{\py@argswidth}{-2\py@argswidth}%
-  \addtolength{\py@argswidth}{\linewidth}%
-  \item[{#1\sphinxcode{(}\py@sigparams{#2}{#3}}]}
-\newcommand{\pysigstartmultiline}{%
- \def\pysigstartmultiline{\vskip\smallskipamount\parskip\z@skip\itemsep\z@skip}%
- \edef\pysigstopmultiline
-     {\noexpand\leavevmode\parskip\the\parskip\relax\itemsep\the\itemsep\relax}%
- \parskip\z@skip\itemsep\z@skip
-}
-
-% Production lists
-%
-\newenvironment{productionlist}{%
-%  \def\sphinxoptional##1{{\Large[}##1{\Large]}}
-  \def\production##1##2{\\\sphinxcode{\sphinxupquote{##1}}&::=&\sphinxcode{\sphinxupquote{##2}}}%
-  \def\productioncont##1{\\& &\sphinxcode{\sphinxupquote{##1}}}%
-  \parindent=2em
-  \indent
-  \setlength{\LTpre}{0pt}%
-  \setlength{\LTpost}{0pt}%
-  \begin{longtable}[l]{lcl}
-}{%
-  \end{longtable}
-}
-
-% Definition lists; requested by AMK for HOWTO documents.  Probably useful
-% elsewhere as well, so keep in in the general style support.
-%
-\newenvironment{definitions}{%
-  \begin{description}%
-  \def\term##1{\item[{##1}]\mbox{}\\*[0mm]}%
-}{%
-  \end{description}%
-}
-
-%% FROM DOCTUTILS LATEX WRITER
-%
-% The following is stuff copied from docutils' latex writer.
-%
-\newcommand{\optionlistlabel}[1]{\normalfont\bfseries #1 \hfill}% \bf deprecated
-\newenvironment{optionlist}[1]
-{\begin{list}{}
-  {\setlength{\labelwidth}{#1}
-   \setlength{\rightmargin}{1cm}
-   \setlength{\leftmargin}{\rightmargin}
-   \addtolength{\leftmargin}{\labelwidth}
-   \addtolength{\leftmargin}{\labelsep}
-   \renewcommand{\makelabel}{\optionlistlabel}}
-}{\end{list}}
-
-\newlength{\lineblockindentation}
-\setlength{\lineblockindentation}{2.5em}
-\newenvironment{lineblock}[1]
-{\begin{list}{}
-  {\setlength{\partopsep}{\parskip}
-   \addtolength{\partopsep}{\baselineskip}
-   \topsep0pt\itemsep0.15\baselineskip\parsep0pt
-   \leftmargin#1\relax}
- \raggedright}
-{\end{list}}
-
-% From docutils.writers.latex2e
-% inline markup (custom roles)
-% \DUrole{#1}{#2} tries \DUrole#1{#2}
-\providecommand*{\DUrole}[2]{%
-  \ifcsname DUrole\detokenize{#1}\endcsname
-    \csname DUrole\detokenize{#1}\endcsname{#2}%
-  \else% backwards compatibility: try \docutilsrole#1{#2}
-    \ifcsname docutilsrole\detokenize{#1}\endcsname
-      \csname docutilsrole\detokenize{#1}\endcsname{#2}%
-    \else
-      #2%
-    \fi
-  \fi
-}
-
-\providecommand*{\DUprovidelength}[2]{%
-  \ifdefined#1\else\newlength{#1}\setlength{#1}{#2}\fi
-}
-
-\DUprovidelength{\DUlineblockindent}{2.5em}
-\ifdefined\DUlineblock\else
-  \newenvironment{DUlineblock}[1]{%
-    \list{}{\setlength{\partopsep}{\parskip}
-            \addtolength{\partopsep}{\baselineskip}
-            \setlength{\topsep}{0pt}
-            \setlength{\itemsep}{0.15\baselineskip}
-            \setlength{\parsep}{0pt}
-            \setlength{\leftmargin}{#1}}
-    \raggedright
-  }
-  {\endlist}
-\fi
-
-%% TEXT STYLING
-%
-% to obtain straight quotes we execute \@noligs as patched by upquote, and
-% \scantokens is needed in cases where it would be too late for the macro to
-% first set catcodes and then fetch its argument. We also make the contents
-% breakable at non-escaped . , ; ? ! / using \sphinxbreaksviaactive,
-% and also at \ character (which is escaped to \textbackslash{}).
-\protected\def\sphinxtextbackslashbreakbefore
- {\discretionary{}{\sphinxafterbreak\sphinx@textbackslash}{\sphinx@textbackslash}}
-\protected\def\sphinxtextbackslashbreakafter
- {\discretionary{\sphinx@textbackslash}{\sphinxafterbreak}{\sphinx@textbackslash}}
-\let\sphinxtextbackslash\sphinxtextbackslashbreakafter
-% the macro must be protected if it ends up used in moving arguments,
-% in 'alltt' \@noligs is done already, and the \scantokens must be avoided.
-\protected\def\sphinxupquote#1{{\def\@tempa{alltt}%
-  \ifx\@tempa\@currenvir\else
-   \ifspx@opt@inlineliteralwraps
-      % break at . , ; ? ! /
-      \sphinxbreaksviaactive
-      % break also at \
-      \let\sphinx@textbackslash\textbackslash
-      \let\textbackslash\sphinxtextbackslash
-      % by default, no continuation symbol on next line but may be added
-      \let\sphinxafterbreak\sphinxafterbreakofinlineliteral
-      % do not overwrite the comma set-up
-      \let\verbatim@nolig@list\sphinx@literal@nolig@list
-   \fi
-   % fix a space-gobbling issue due to LaTeX's original \do@noligs
-% TODO: using \@noligs as patched by upquote.sty is now unneeded because
-% either ` and ' are escaped (non-unicode engines) or they don't build
-% ligatures (unicode engines). Thus remove this and unify handling of `, <, >, 
-% ' and - with the characters . , ; ? ! / as handled via
-% \sphinxbreaksviaactive.
-% Hence \sphinx@do@noligs will be removed, or rather replaced  with code
-% inserting discretionaries, as they allow a continuation symbol on start of
-% next line to achieve common design with code-blocks.
-   \let\do@noligs\sphinx@do@noligs
-   \@noligs\endlinechar\m@ne\everyeof{}% (<- in case inside \sphinxhref)
-   \expandafter\scantokens
-  \fi {{#1}}}}% extra brace pair to fix end-space gobbling issue...
-\def\sphinx@do@noligs #1{\catcode`#1\active\begingroup\lccode`\~`#1\relax
-    \lowercase{\endgroup\def~{\leavevmode\kern\z@\char`#1 }}}
-\def\sphinx@literal@nolig@list {\do\`\do\<\do\>\do\'\do\-}%
-\let\sphinxafterbreakofinlineliteral\empty
-
-% Some custom font markup commands.
-\protected\def\sphinxstrong#1{\textbf{#1}}
-\protected\def\sphinxcode#1{\texttt{#1}}
-\protected\def\sphinxbfcode#1{\textbf{\sphinxcode{#1}}}
-\protected\def\sphinxemail#1{\textsf{#1}}
-\protected\def\sphinxtablecontinued#1{\textsf{#1}}
-\protected\def\sphinxtitleref#1{\emph{#1}}
-\protected\def\sphinxmenuselection#1{\emph{#1}}
-\protected\def\sphinxguilabel#1{\emph{#1}}
-\protected\def\sphinxaccelerator#1{\underline{#1}}
-\protected\def\sphinxcrossref#1{\emph{#1}}
-\protected\def\sphinxtermref#1{\emph{#1}}
-% \optional is used for ``[, arg]``, i.e. desc_optional nodes.
-\long\protected\def\sphinxoptional#1{%
-  {\textnormal{\Large[}}{#1}\hspace{0.5mm}{\textnormal{\Large]}}}
-
-% additional customizable styling
-\def\sphinxstyleindexentry   #1{\texttt{#1}}
-\def\sphinxstyleindexextra   #1{ (\emph{#1})}
-\def\sphinxstyleindexpageref #1{, \pageref{#1}}
-\def\sphinxstyleindexpagemain#1{\textbf{#1}}
-\protected\def\spxentry#1{#1}% will get \let to \sphinxstyleindexentry in index
-\protected\def\spxextra#1{#1}% will get \let to \sphinxstyleindexextra in index
-\def\sphinxstyleindexlettergroup #1%
-    {{\Large\sffamily#1}\nopagebreak\vspace{1mm}}
-\def\sphinxstyleindexlettergroupDefault #1%
-    {{\Large\sffamily\sphinxnonalphabeticalgroupname}\nopagebreak\vspace{1mm}}
-\protected\def\sphinxstyletopictitle   #1{\textbf{#1}\par\medskip}
-\let\sphinxstylesidebartitle\sphinxstyletopictitle
-\protected\def\sphinxstyleothertitle   #1{\textbf{#1}}
-\protected\def\sphinxstylesidebarsubtitle #1{~\\\textbf{#1} \smallskip}
-% \text.. commands do not allow multiple paragraphs
-\protected\def\sphinxstyletheadfamily    {\sffamily}
-\protected\def\sphinxstyleemphasis     #1{\emph{#1}}
-\protected\def\sphinxstyleliteralemphasis#1{\emph{\sphinxcode{#1}}}
-\protected\def\sphinxstylestrong       #1{\textbf{#1}}
-\protected\def\sphinxstyleliteralstrong#1{\sphinxbfcode{#1}}
-\protected\def\sphinxstyleabbreviation #1{\textsc{#1}}
-\protected\def\sphinxstyleliteralintitle#1{\sphinxcode{#1}}
-\newcommand*\sphinxstylecodecontinued[1]{\footnotesize(#1)}%
-\newcommand*\sphinxstylecodecontinues[1]{\footnotesize(#1)}%
-% figure legend comes after caption and may contain arbitrary body elements
-\newenvironment{sphinxlegend}{\par\small}{\par}
-% reduce hyperref "Token not allowed in a PDF string" warnings on PDF builds
-\AtBeginDocument{\pdfstringdefDisableCommands{%
-% all "protected" macros possibly ending up in section titles should be here
-% TODO: examine if \sphinxhref, \sphinxurl, \sphinnolinkurl should be handled
-    \let\sphinxstyleemphasis        \@firstofone
-    \let\sphinxstyleliteralemphasis \@firstofone
-    \let\sphinxstylestrong          \@firstofone
-    \let\sphinxstyleliteralstrong   \@firstofone
-    \let\sphinxstyleabbreviation    \@firstofone
-    \let\sphinxstyleliteralintitle  \@firstofone
-    \let\sphinxupquote  \@firstofone
-    \let\sphinxstrong   \@firstofone
-    \let\sphinxcode     \@firstofone
-    \let\sphinxbfcode   \@firstofone
-    \let\sphinxemail    \@firstofone
-    \let\sphinxcrossref \@firstofone
-    \let\sphinxtermref  \@firstofone
-    \let\sphinxhyphen\sphinxhyphenforbookmarks
-}}
-
-% Special characters
-%
-% This definition prevents en-dash and em-dash TeX ligatures.
-% 
-% It inserts a potential breakpoint after the hyphen. This is to keep in sync
-% with behavior in code-blocks, parsed and inline literals. For a breakpoint
-% before the hyphen use \leavevmode\kern\z@- (within \makeatletter/\makeatother)
-\protected\def\sphinxhyphen#1{-\kern\z@}
-% The {} from texescape mark-up is kept, else -- gives en-dash in PDF bookmark
-\def\sphinxhyphenforbookmarks{-}
-
-% For curly braces inside \index macro
-\def\sphinxleftcurlybrace{\{}
-\def\sphinxrightcurlybrace{\}}
-
-% Declare Unicode characters used by linux tree command to pdflatex utf8/utf8x
-\def\spx@bd#1#2{%
-  \leavevmode
-  \begingroup
-  \ifx\spx@bd@height   \@undefined\def\spx@bd@height{\baselineskip}\fi
-  \ifx\spx@bd@width    \@undefined\setbox0\hbox{0}\def\spx@bd@width{\wd0 }\fi
-  \ifx\spx@bd@thickness\@undefined\def\spx@bd@thickness{.6\p@}\fi
-  \ifx\spx@bd@lower    \@undefined\def\spx@bd@lower{\dp\strutbox}\fi
-  \lower\spx@bd@lower#1{#2}%
-  \endgroup
-}%
-\@namedef{sphinx@u2500}% BOX DRAWINGS LIGHT HORIZONTAL
-  {\spx@bd{\vbox to\spx@bd@height}
-          {\vss\hrule\@height\spx@bd@thickness
-                     \@width\spx@bd@width\vss}}%
-\@namedef{sphinx@u2502}% BOX DRAWINGS LIGHT VERTICAL
-  {\spx@bd{\hb@xt@\spx@bd@width}
-          {\hss\vrule\@height\spx@bd@height
-                     \@width \spx@bd@thickness\hss}}%
-\@namedef{sphinx@u2514}% BOX DRAWINGS LIGHT UP AND RIGHT
-  {\spx@bd{\hb@xt@\spx@bd@width}
-          {\hss\raise.5\spx@bd@height
-           \hb@xt@\z@{\hss\vrule\@height.5\spx@bd@height
-                                \@width \spx@bd@thickness\hss}%
-           \vbox to\spx@bd@height{\vss\hrule\@height\spx@bd@thickness
-                                            \@width.5\spx@bd@width\vss}}}%
-\@namedef{sphinx@u251C}% BOX DRAWINGS LIGHT VERTICAL AND RIGHT
-  {\spx@bd{\hb@xt@\spx@bd@width}
-          {\hss
-           \hb@xt@\z@{\hss\vrule\@height\spx@bd@height
-                                \@width \spx@bd@thickness\hss}%
-           \vbox to\spx@bd@height{\vss\hrule\@height\spx@bd@thickness
-                                            \@width.5\spx@bd@width\vss}}}%
-\protected\def\sphinxunichar#1{\@nameuse{sphinx@u#1}}%
-
-% Tell TeX about pathological hyphenation cases:
-\hyphenation{Base-HTTP-Re-quest-Hand-ler}
-\endinput
diff --git a/atomicfeaturespackage/docs/_build/latex/sphinx.xdy b/atomicfeaturespackage/docs/_build/latex/sphinx.xdy
deleted file mode 100644
index edca178..0000000
--- a/atomicfeaturespackage/docs/_build/latex/sphinx.xdy
+++ /dev/null
@@ -1,230 +0,0 @@
-;;; -*- mode: lisp; coding: utf-8; -*-
-
-;; Unfortunately xindy is out-of-the-box hyperref-incompatible.  This
-;; configuration is a workaround, which requires to pass option
-;; hyperindex=false to hyperref.
-;; textit and emph not currently used, spxpagem replaces former textbf
-(define-attributes (("textbf" "textit" "emph" "spxpagem" "default")))
-(markup-locref :open "\textbf{\hyperpage{" :close "}}" :attr "textbf")
-(markup-locref :open "\textit{\hyperpage{" :close "}}" :attr "textit")
-(markup-locref :open "\emph{\hyperpage{" :close "}}" :attr "emph")
-(markup-locref :open "\spxpagem{\hyperpage{" :close "}}" :attr "spxpagem")
-(markup-locref :open "\hyperpage{" :close "}" :attr "default")
-
-(require "numeric-sort.xdy")
-
-;; xindy base module latex.xdy loads tex.xdy and the latter instructs
-;; xindy to ignore **all** TeX macros in .idx entries, except those
-;; explicitely described in merge rule.  But when after applying all
-;; merge rules an empty string results, xindy raises an error:
-
-;;   ERROR: CHAR: index 0 should be less than the length of the string
-
-;; For example when using pdflatex with utf-8 characters the index
-;; file will contain \IeC macros and they will get ignored except if
-;; suitable merge rules are loaded early.  The texindy script coming
-;; with xindy provides this, but only for Latin scripts.  The texindy
-;; man page says to use rather xelatex or lualatex in case of Cyrillic
-;; scripts.
-
-;; Sphinx contributes LICRcyr2utf8.xdy to provide support for Cyrillic
-;; scripts for the pdflatex engine.
-
-;; Another issue caused by xindy ignoring all TeX macros except those
-;; explicitely declared reveals itself when attempting to index ">>>",
-;; as the ">" is converted to "\textgreater{}" by Sphinx's LaTeX
-;; escaping.
-
-;; To fix this, Sphinx does **not** use texindy, and does not even
-;; load the xindy latex.xdy base module.
-
-;(require "latex.xdy")
-
-;; Rather it incorporates some suitable extracts from latex.xdy and
-;; tex.xdy with additional Sphinx contributed rules.
-
-;; But, this means for pdflatex and Latin scripts that the xindy file
-;; tex/inputenc/uf8.xdy is not usable because it refers to the macro
-;; \IeC only sporadically, and as tex.xdy is not loaded, a rule such as
-;;     (merge-rule "\'e" "é" :string)
-;; does not work, it must be
-;;     (merge-rule "\IeC {\'e}" "é" :string)
-;; So Sphinx contributes LICRlatin2utf8.xdy to mitigate that problem.
-
-;;;;;;;; extracts from tex.xdy (discarding most original comments):
-
-;;;
-;;; TeX conventions
-;;;
-
-;; Discard leading and trailing white space. Collapse multiple white
-;; space characters to blank.
-
-(merge-rule "^ +" "" :eregexp)
-(merge-rule " +$" "" :eregexp)
-(merge-rule "  +" " " :eregexp)
-
-;; Handle TeX markup
-
-(merge-rule "\\([{}$%&#])" "\1" :eregexp)
-
-;;;;;;;; end of extracts from xindy's tex.xdy
-
-;;;;;;;; extracts from latex.xdy:
-
-;; Standard location classes: arabic and roman numbers, and alphabets.
-
-(define-location-class "arabic-page-numbers" ("arabic-numbers"))
-(define-location-class "roman-page-numbers"  ("roman-numbers-lowercase"))
-(define-location-class "Roman-page-numbers"  ("roman-numbers-uppercase"))
-(define-location-class "alpha-page-numbers"  ("alpha"))
-(define-location-class "Alpha-page-numbers"  ("ALPHA"))
-
-;; Output Markup
-
-(markup-letter-group-list :sep "~n~n  \indexspace~n")
-
-(markup-indexentry :open "~n  \item "           :depth 0)
-(markup-indexentry :open "~n    \subitem "      :depth 1)
-(markup-indexentry :open "~n      \subsubitem " :depth 2)
-
-(markup-locclass-list :open ", " :sep ", ")
-(markup-locref-list   :sep ", ")
-
-;;;;;;;; end of extracts from latex.xdy
-
-;; The LaTeX \index command turns \ into normal character so the TeX macros
-;; written to .idx files are not followed by a blank. This is different
-;; from non-ascii letters which end up (with pdflatex) as \IeC macros in .idx
-;; file, with a blank space after \IeC
-
-;; Details of the syntax are explained at
-;;     http://xindy.sourceforge.net/doc/manual-3.html
-;; In absence of :string, "xindy uses an auto-detection mechanism to decide,
-;; if the pattern is a regular expression or not". But it is not obvious to
-;; guess, for example "\\_" is not detected as RE but "\\P\{\}" is, so for
-;; being sure we apply the :string switch everywhere and do not use \\ etc...
-
-;; Go back from sphinx.util.texescape TeX macros to UTF-8
-
-(merge-rule "\sphinxleftcurlybrace{}" "{" :string)
-(merge-rule "\sphinxrightcurlybrace{}" "}" :string)
-(merge-rule "\_" "_" :string)
-(merge-rule "{[}" "[" :string)
-(merge-rule "{]}" "]" :string)
-(merge-rule "\textbackslash{}" "\" :string)  ; " for Emacs syntax highlighting
-(merge-rule "\textasciitilde{}" "~~" :string); the ~~ escape is needed here
-(merge-rule "\textasciicircum{}" "^" :string)
-(merge-rule "\sphinxhyphen{}" "-" :string)
-(merge-rule "\textquotesingle{}" "'" :string)
-(merge-rule "\textasciigrave{}" "`" :string)
-(merge-rule "\textless{}" "<" :string)
-(merge-rule "\textgreater{}" ">" :string)
-(merge-rule "\P{}" "¶" :string)
-(merge-rule "\S{}" "§" :string)
-(merge-rule "\texteuro{}" "€" :string)
-(merge-rule "\(\infty\)" "∞" :string)
-(merge-rule "\(\pm\)" "±" :string)
-(merge-rule "\(\rightarrow\)" "→" :string)
-(merge-rule "\(\checkmark\)" "✓" :string)
-(merge-rule "\textendash{}" "–" :string)
-(merge-rule "\textbar{}" "|" :string)
-(merge-rule "\(\sp{\text{0}}\)" "⁰" :string)
-(merge-rule "\(\sp{\text{1}}\)" "¹" :string)
-(merge-rule "\(\sp{\text{2}}\)" "²" :string)
-(merge-rule "\(\sp{\text{3}}\)" "³" :string)
-(merge-rule "\(\sp{\text{4}}\)" "⁴" :string)
-(merge-rule "\(\sp{\text{5}}\)" "⁵" :string)
-(merge-rule "\(\sp{\text{6}}\)" "⁶" :string)
-(merge-rule "\(\sp{\text{7}}\)" "⁷" :string)
-(merge-rule "\(\sp{\text{8}}\)" "⁸" :string)
-(merge-rule "\(\sp{\text{9}}\)" "⁹" :string)
-(merge-rule "\(\sb{\text{0}}\)" "₀" :string)
-(merge-rule "\(\sb{\text{1}}\)" "₁" :string)
-(merge-rule "\(\sb{\text{2}}\)" "₂" :string)
-(merge-rule "\(\sb{\text{3}}\)" "₃" :string)
-(merge-rule "\(\sb{\text{4}}\)" "₄" :string)
-(merge-rule "\(\sb{\text{5}}\)" "₅" :string)
-(merge-rule "\(\sb{\text{6}}\)" "₆" :string)
-(merge-rule "\(\sb{\text{7}}\)" "₇" :string)
-(merge-rule "\(\sb{\text{8}}\)" "₈" :string)
-(merge-rule "\(\sb{\text{9}}\)" "₉" :string)
-(merge-rule "\IeC {\textalpha }" "α" :string)
-(merge-rule "\IeC {\textbeta }" "β" :string)
-(merge-rule "\IeC {\textgamma }" "γ" :string)
-(merge-rule "\IeC {\textdelta }" "δ" :string)
-(merge-rule "\IeC {\textepsilon }" "ε" :string)
-(merge-rule "\IeC {\textzeta }" "ζ" :string)
-(merge-rule "\IeC {\texteta }" "η" :string)
-(merge-rule "\IeC {\texttheta }" "θ" :string)
-(merge-rule "\IeC {\textiota }" "ι" :string)
-(merge-rule "\IeC {\textkappa }" "κ" :string)
-(merge-rule "\IeC {\textlambda }" "λ" :string)
-(merge-rule "\IeC {\textmu }" "μ" :string)
-(merge-rule "\IeC {\textnu }" "ν" :string)
-(merge-rule "\IeC {\textxi }" "ξ" :string)
-(merge-rule "\IeC {\textomicron }" "ο" :string)
-(merge-rule "\IeC {\textpi }" "π" :string)
-(merge-rule "\IeC {\textrho }" "ρ" :string)
-(merge-rule "\IeC {\textsigma }" "σ" :string)
-(merge-rule "\IeC {\texttau }" "τ" :string)
-(merge-rule "\IeC {\textupsilon }" "υ" :string)
-(merge-rule "\IeC {\textphi }" "φ" :string)
-(merge-rule "\IeC {\textchi }" "χ" :string)
-(merge-rule "\IeC {\textpsi }" "ψ" :string)
-(merge-rule "\IeC {\textomega }" "ω" :string)
-(merge-rule "\IeC {\textAlpha }" "Α" :string)
-(merge-rule "\IeC {\textBeta }" "Β" :string)
-(merge-rule "\IeC {\textGamma }" "Γ" :string)
-(merge-rule "\IeC {\textDelta }" "Δ" :string)
-(merge-rule "\IeC {\textEpsilon }" "Ε" :string)
-(merge-rule "\IeC {\textZeta }" "Ζ" :string)
-(merge-rule "\IeC {\textEta }" "Η" :string)
-(merge-rule "\IeC {\textTheta }" "Θ" :string)
-(merge-rule "\IeC {\textIota }" "Ι" :string)
-(merge-rule "\IeC {\textKappa }" "Κ" :string)
-(merge-rule "\IeC {\textLambda }" "Λ" :string)
-(merge-rule "\IeC {\textMu }" "Μ" :string)
-(merge-rule "\IeC {\textNu }" "Ν" :string)
-(merge-rule "\IeC {\textTheta }" "Θ" :string)
-(merge-rule "\IeC {\textIota }" "Ι" :string)
-(merge-rule "\IeC {\textKappa }" "Κ" :string)
-(merge-rule "\IeC {\textLambda }" "Λ" :string)
-(merge-rule "\IeC {\textMu }" "Μ" :string)
-(merge-rule "\IeC {\textNu }" "Ν" :string)
-(merge-rule "\IeC {\textXi }" "Ξ" :string)
-(merge-rule "\IeC {\textOmicron }" "Ο" :string)
-(merge-rule "\IeC {\textPi }" "Π" :string)
-(merge-rule "\IeC {\textRho }" "Ρ" :string)
-(merge-rule "\IeC {\textSigma }" "Σ" :string)
-(merge-rule "\IeC {\textTau }" "Τ" :string)
-(merge-rule "\IeC {\textUpsilon }" "Υ" :string)
-(merge-rule "\IeC {\textPhi }" "Φ" :string)
-(merge-rule "\IeC {\textChi }" "Χ" :string)
-(merge-rule "\IeC {\textPsi }" "Ψ" :string)
-(merge-rule "\IeC {\textOmega }" "Ω" :string)
-(merge-rule "\IeC {\textohm }" "Ω" :string)
-
-;; This xindy module provides some basic support for "see"
-(require "makeindex.xdy")
-
-;; This creates one-letter headings and works fine with utf-8 letters.
-;; For Cyrillic with pdflatex works thanks to LICRcyr2utf8.xdy
-(require "latin-lettergroups.xdy")
-
-;; currently we don't (know how to easily) separate "Numbers" from
-;; "Symbols" with xindy as is the case with makeindex.
-(markup-index :open  "\begin{sphinxtheindex}
-\let\lettergroup\sphinxstyleindexlettergroup
-\let\lettergroupDefault\sphinxstyleindexlettergroupDefault
-\let\spxpagem\sphinxstyleindexpagemain
-\let\spxentry\sphinxstyleindexentry
-\let\spxextra\sphinxstyleindexextra
-
-"
-	      :close "
-
-\end{sphinxtheindex}
-"
-	      :tree)
-
diff --git a/atomicfeaturespackage/docs/_build/latex/sphinxcyrillic.sty b/atomicfeaturespackage/docs/_build/latex/sphinxcyrillic.sty
deleted file mode 100644
index 482b4e3..0000000
--- a/atomicfeaturespackage/docs/_build/latex/sphinxcyrillic.sty
+++ /dev/null
@@ -1,55 +0,0 @@
-%% CYRILLIC IN NON-CYRILLIC DOCUMENTS (pdflatex only)
-%
-% refs: https://tex.stackexchange.com/q/460271/
-\ProvidesPackage{sphinxcyrillic}%
-  [2018/11/21 v2.0 support for Cyrillic in non-Cyrillic documents]
-\RequirePackage{kvoptions}
-\SetupKeyvalOptions{prefix=spx@cyropt@} % use \spx@cyropt@ prefix
-\DeclareBoolOption[false]{Xtwo}
-\DeclareBoolOption[false]{TtwoA}
-\DeclareDefaultOption{\@unknownoptionerror}
-\ProcessLocalKeyvalOptions* % ignore class options
-
-\ifspx@cyropt@Xtwo
-% original code by tex.sx user egreg (updated 2019/10/28):
-%   https://tex.stackexchange.com/a/460325/
-% 159 Cyrillic glyphs as available in X2 TeX 8bit font encoding
-% This assumes inputenc loaded with utf8 option, or LaTeX release
-% as recent as 2018/04/01 which does it automatically. 
-  \@tfor\next:=%
-    {Ё}{Ђ}{Є}{Ѕ}{І}{Ј}{Љ}{Њ}{Ћ}{Ў}{Џ}{А}{Б}{В}{Г}{Д}{Е}{Ж}{З}{И}{Й}%
-    {К}{Л}{М}{Н}{О}{П}{Р}{С}{Т}{У}{Ф}{Х}{Ц}{Ч}{Ш}{Щ}{Ъ}{Ы}{Ь}{Э}{Ю}%
-    {Я}{а}{б}{в}{г}{д}{е}{ж}{з}{и}{й}{к}{л}{м}{н}{о}{п}{р}{с}{т}{у}%
-    {ф}{х}{ц}{ч}{ш}{щ}{ъ}{ы}{ь}{э}{ю}{я}{ё}{ђ}{є}{ѕ}{і}{ј}{љ}{њ}{ћ}%
-    {ў}{џ}{Ѣ}{ѣ}{Ѫ}{ѫ}{Ѵ}{ѵ}{Ґ}{ґ}{Ғ}{ғ}{Ҕ}{ҕ}{Җ}{җ}{Ҙ}{ҙ}{Қ}{қ}{Ҝ}{ҝ}%
-    {Ҟ}{ҟ}{Ҡ}{ҡ}{Ң}{ң}{Ҥ}{ҥ}{Ҧ}{ҧ}{Ҩ}{ҩ}{Ҫ}{ҫ}{Ҭ}{ҭ}{Ү}{ү}{Ұ}{ұ}{Ҳ}{ҳ}%
-    {Ҵ}{ҵ}{Ҷ}{ҷ}{Ҹ}{ҹ}{Һ}{һ}{Ҽ}{ҽ}{Ҿ}{ҿ}{Ӏ}{Ӄ}{ӄ}{Ӆ}{ӆ}{Ӈ}{ӈ}{Ӌ}{ӌ}%
-    {Ӎ}{ӎ}{Ӕ}{ӕ}{Ә}{ә}{Ӡ}{ӡ}{Ө}{ө}\do
-  {%
-    \begingroup\def\IeC{\protect\DeclareTextSymbolDefault}%
-    \protected@edef\@temp{\endgroup
-    \@ifl@t@r{\fmtversion}{2019/10/01}{\csname u8:\next\endcsname}{\next}}%
-    \@temp{X2}%
-  }%
-\else
-\ifspx@cyropt@TtwoA
-% original code by tex.sx user jfbu:
-%   https://tex.stackexchange.com/a/460305/
-% 63*2+1=127 Cyrillic glyphs as found in T2A 8bit TeX font-encoding
-  \@tfor\@tempa:=%
-    {ae}{a}{b}{chrdsc}{chvcrs}{ch}{c}{dje}{dze}{dzhe}{d}{erev}{ery}{e}%
-    {f}{ghcrs}{gup}{g}{hdsc}{hrdsn}{h}{ie}{ii}{ishrt}{i}{je}%
-    {kbeak}{kdsc}{kvcrs}{k}{lje}{l}{m}{ndsc}{ng}{nje}{n}{otld}{o}{p}{r}%
-    {schwa}{sdsc}{sftsn}{shch}{shha}{sh}{s}{tshe}{t}{ushrt}{u}{v}%
-    {ya}{yhcrs}{yi}{yo}{yu}{y}{zdsc}{zhdsc}{zh}{z}\do
-  {%
-    \expandafter\DeclareTextSymbolDefault\expandafter
-               {\csname cyr\@tempa\endcsname}{T2A}%
-    \expandafter\uppercase\expandafter{\expandafter
-                 \def\expandafter\@tempa\expandafter{\@tempa}}%
-    \expandafter\DeclareTextSymbolDefault\expandafter
-      {\csname CYR\@tempa\endcsname}{T2A}%
-  }%
-  \DeclareTextSymbolDefault{\CYRpalochka}{T2A}%
-\fi\fi
-\endinput
diff --git a/atomicfeaturespackage/docs/_build/latex/sphinxhighlight.sty b/atomicfeaturespackage/docs/_build/latex/sphinxhighlight.sty
deleted file mode 100644
index 1557ce6..0000000
--- a/atomicfeaturespackage/docs/_build/latex/sphinxhighlight.sty
+++ /dev/null
@@ -1,105 +0,0 @@
-\NeedsTeXFormat{LaTeX2e}[1995/12/01]
-\ProvidesPackage{sphinxhighlight}[2016/05/29 stylesheet for highlighting with pygments]
-
-
-\makeatletter
-\def\PYG@reset{\let\PYG@it=\relax \let\PYG@bf=\relax%
-    \let\PYG@ul=\relax \let\PYG@tc=\relax%
-    \let\PYG@bc=\relax \let\PYG@ff=\relax}
-\def\PYG@tok#1{\csname PYG@tok@#1\endcsname}
-\def\PYG@toks#1+{\ifx\relax#1\empty\else%
-    \PYG@tok{#1}\expandafter\PYG@toks\fi}
-\def\PYG@do#1{\PYG@bc{\PYG@tc{\PYG@ul{%
-    \PYG@it{\PYG@bf{\PYG@ff{#1}}}}}}}
-\def\PYG#1#2{\PYG@reset\PYG@toks#1+\relax+\PYG@do{#2}}
-
-\expandafter\def\csname PYG@tok@w\endcsname{\def\PYG@tc##1{\textcolor[rgb]{0.73,0.73,0.73}{##1}}}
-\expandafter\def\csname PYG@tok@c\endcsname{\let\PYG@it=\textit\def\PYG@tc##1{\textcolor[rgb]{0.25,0.50,0.56}{##1}}}
-\expandafter\def\csname PYG@tok@cp\endcsname{\def\PYG@tc##1{\textcolor[rgb]{0.00,0.44,0.13}{##1}}}
-\expandafter\def\csname PYG@tok@cs\endcsname{\def\PYG@tc##1{\textcolor[rgb]{0.25,0.50,0.56}{##1}}\def\PYG@bc##1{\setlength{\fboxsep}{0pt}\colorbox[rgb]{1.00,0.94,0.94}{\strut ##1}}}
-\expandafter\def\csname PYG@tok@k\endcsname{\let\PYG@bf=\textbf\def\PYG@tc##1{\textcolor[rgb]{0.00,0.44,0.13}{##1}}}
-\expandafter\def\csname PYG@tok@kp\endcsname{\def\PYG@tc##1{\textcolor[rgb]{0.00,0.44,0.13}{##1}}}
-\expandafter\def\csname PYG@tok@kt\endcsname{\def\PYG@tc##1{\textcolor[rgb]{0.56,0.13,0.00}{##1}}}
-\expandafter\def\csname PYG@tok@o\endcsname{\def\PYG@tc##1{\textcolor[rgb]{0.40,0.40,0.40}{##1}}}
-\expandafter\def\csname PYG@tok@ow\endcsname{\let\PYG@bf=\textbf\def\PYG@tc##1{\textcolor[rgb]{0.00,0.44,0.13}{##1}}}
-\expandafter\def\csname PYG@tok@nb\endcsname{\def\PYG@tc##1{\textcolor[rgb]{0.00,0.44,0.13}{##1}}}
-\expandafter\def\csname PYG@tok@nf\endcsname{\def\PYG@tc##1{\textcolor[rgb]{0.02,0.16,0.49}{##1}}}
-\expandafter\def\csname PYG@tok@nc\endcsname{\let\PYG@bf=\textbf\def\PYG@tc##1{\textcolor[rgb]{0.05,0.52,0.71}{##1}}}
-\expandafter\def\csname PYG@tok@nn\endcsname{\let\PYG@bf=\textbf\def\PYG@tc##1{\textcolor[rgb]{0.05,0.52,0.71}{##1}}}
-\expandafter\def\csname PYG@tok@ne\endcsname{\def\PYG@tc##1{\textcolor[rgb]{0.00,0.44,0.13}{##1}}}
-\expandafter\def\csname PYG@tok@nv\endcsname{\def\PYG@tc##1{\textcolor[rgb]{0.73,0.38,0.84}{##1}}}
-\expandafter\def\csname PYG@tok@no\endcsname{\def\PYG@tc##1{\textcolor[rgb]{0.38,0.68,0.84}{##1}}}
-\expandafter\def\csname PYG@tok@nl\endcsname{\let\PYG@bf=\textbf\def\PYG@tc##1{\textcolor[rgb]{0.00,0.13,0.44}{##1}}}
-\expandafter\def\csname PYG@tok@ni\endcsname{\let\PYG@bf=\textbf\def\PYG@tc##1{\textcolor[rgb]{0.84,0.33,0.22}{##1}}}
-\expandafter\def\csname PYG@tok@na\endcsname{\def\PYG@tc##1{\textcolor[rgb]{0.25,0.44,0.63}{##1}}}
-\expandafter\def\csname PYG@tok@nt\endcsname{\let\PYG@bf=\textbf\def\PYG@tc##1{\textcolor[rgb]{0.02,0.16,0.45}{##1}}}
-\expandafter\def\csname PYG@tok@nd\endcsname{\let\PYG@bf=\textbf\def\PYG@tc##1{\textcolor[rgb]{0.33,0.33,0.33}{##1}}}
-\expandafter\def\csname PYG@tok@s\endcsname{\def\PYG@tc##1{\textcolor[rgb]{0.25,0.44,0.63}{##1}}}
-\expandafter\def\csname PYG@tok@sd\endcsname{\let\PYG@it=\textit\def\PYG@tc##1{\textcolor[rgb]{0.25,0.44,0.63}{##1}}}
-\expandafter\def\csname PYG@tok@si\endcsname{\let\PYG@it=\textit\def\PYG@tc##1{\textcolor[rgb]{0.44,0.63,0.82}{##1}}}
-\expandafter\def\csname PYG@tok@se\endcsname{\let\PYG@bf=\textbf\def\PYG@tc##1{\textcolor[rgb]{0.25,0.44,0.63}{##1}}}
-\expandafter\def\csname PYG@tok@sr\endcsname{\def\PYG@tc##1{\textcolor[rgb]{0.14,0.33,0.53}{##1}}}
-\expandafter\def\csname PYG@tok@ss\endcsname{\def\PYG@tc##1{\textcolor[rgb]{0.32,0.47,0.09}{##1}}}
-\expandafter\def\csname PYG@tok@sx\endcsname{\def\PYG@tc##1{\textcolor[rgb]{0.78,0.36,0.04}{##1}}}
-\expandafter\def\csname PYG@tok@m\endcsname{\def\PYG@tc##1{\textcolor[rgb]{0.13,0.50,0.31}{##1}}}
-\expandafter\def\csname PYG@tok@gh\endcsname{\let\PYG@bf=\textbf\def\PYG@tc##1{\textcolor[rgb]{0.00,0.00,0.50}{##1}}}
-\expandafter\def\csname PYG@tok@gu\endcsname{\let\PYG@bf=\textbf\def\PYG@tc##1{\textcolor[rgb]{0.50,0.00,0.50}{##1}}}
-\expandafter\def\csname PYG@tok@gd\endcsname{\def\PYG@tc##1{\textcolor[rgb]{0.63,0.00,0.00}{##1}}}
-\expandafter\def\csname PYG@tok@gi\endcsname{\def\PYG@tc##1{\textcolor[rgb]{0.00,0.63,0.00}{##1}}}
-\expandafter\def\csname PYG@tok@gr\endcsname{\def\PYG@tc##1{\textcolor[rgb]{1.00,0.00,0.00}{##1}}}
-\expandafter\def\csname PYG@tok@ge\endcsname{\let\PYG@it=\textit}
-\expandafter\def\csname PYG@tok@gs\endcsname{\let\PYG@bf=\textbf}
-\expandafter\def\csname PYG@tok@gp\endcsname{\let\PYG@bf=\textbf\def\PYG@tc##1{\textcolor[rgb]{0.78,0.36,0.04}{##1}}}
-\expandafter\def\csname PYG@tok@go\endcsname{\def\PYG@tc##1{\textcolor[rgb]{0.20,0.20,0.20}{##1}}}
-\expandafter\def\csname PYG@tok@gt\endcsname{\def\PYG@tc##1{\textcolor[rgb]{0.00,0.27,0.87}{##1}}}
-\expandafter\def\csname PYG@tok@err\endcsname{\def\PYG@bc##1{\setlength{\fboxsep}{0pt}\fcolorbox[rgb]{1.00,0.00,0.00}{1,1,1}{\strut ##1}}}
-\expandafter\def\csname PYG@tok@kc\endcsname{\let\PYG@bf=\textbf\def\PYG@tc##1{\textcolor[rgb]{0.00,0.44,0.13}{##1}}}
-\expandafter\def\csname PYG@tok@kd\endcsname{\let\PYG@bf=\textbf\def\PYG@tc##1{\textcolor[rgb]{0.00,0.44,0.13}{##1}}}
-\expandafter\def\csname PYG@tok@kn\endcsname{\let\PYG@bf=\textbf\def\PYG@tc##1{\textcolor[rgb]{0.00,0.44,0.13}{##1}}}
-\expandafter\def\csname PYG@tok@kr\endcsname{\let\PYG@bf=\textbf\def\PYG@tc##1{\textcolor[rgb]{0.00,0.44,0.13}{##1}}}
-\expandafter\def\csname PYG@tok@bp\endcsname{\def\PYG@tc##1{\textcolor[rgb]{0.00,0.44,0.13}{##1}}}
-\expandafter\def\csname PYG@tok@fm\endcsname{\def\PYG@tc##1{\textcolor[rgb]{0.02,0.16,0.49}{##1}}}
-\expandafter\def\csname PYG@tok@vc\endcsname{\def\PYG@tc##1{\textcolor[rgb]{0.73,0.38,0.84}{##1}}}
-\expandafter\def\csname PYG@tok@vg\endcsname{\def\PYG@tc##1{\textcolor[rgb]{0.73,0.38,0.84}{##1}}}
-\expandafter\def\csname PYG@tok@vi\endcsname{\def\PYG@tc##1{\textcolor[rgb]{0.73,0.38,0.84}{##1}}}
-\expandafter\def\csname PYG@tok@vm\endcsname{\def\PYG@tc##1{\textcolor[rgb]{0.73,0.38,0.84}{##1}}}
-\expandafter\def\csname PYG@tok@sa\endcsname{\def\PYG@tc##1{\textcolor[rgb]{0.25,0.44,0.63}{##1}}}
-\expandafter\def\csname PYG@tok@sb\endcsname{\def\PYG@tc##1{\textcolor[rgb]{0.25,0.44,0.63}{##1}}}
-\expandafter\def\csname PYG@tok@sc\endcsname{\def\PYG@tc##1{\textcolor[rgb]{0.25,0.44,0.63}{##1}}}
-\expandafter\def\csname PYG@tok@dl\endcsname{\def\PYG@tc##1{\textcolor[rgb]{0.25,0.44,0.63}{##1}}}
-\expandafter\def\csname PYG@tok@s2\endcsname{\def\PYG@tc##1{\textcolor[rgb]{0.25,0.44,0.63}{##1}}}
-\expandafter\def\csname PYG@tok@sh\endcsname{\def\PYG@tc##1{\textcolor[rgb]{0.25,0.44,0.63}{##1}}}
-\expandafter\def\csname PYG@tok@s1\endcsname{\def\PYG@tc##1{\textcolor[rgb]{0.25,0.44,0.63}{##1}}}
-\expandafter\def\csname PYG@tok@mb\endcsname{\def\PYG@tc##1{\textcolor[rgb]{0.13,0.50,0.31}{##1}}}
-\expandafter\def\csname PYG@tok@mf\endcsname{\def\PYG@tc##1{\textcolor[rgb]{0.13,0.50,0.31}{##1}}}
-\expandafter\def\csname PYG@tok@mh\endcsname{\def\PYG@tc##1{\textcolor[rgb]{0.13,0.50,0.31}{##1}}}
-\expandafter\def\csname PYG@tok@mi\endcsname{\def\PYG@tc##1{\textcolor[rgb]{0.13,0.50,0.31}{##1}}}
-\expandafter\def\csname PYG@tok@il\endcsname{\def\PYG@tc##1{\textcolor[rgb]{0.13,0.50,0.31}{##1}}}
-\expandafter\def\csname PYG@tok@mo\endcsname{\def\PYG@tc##1{\textcolor[rgb]{0.13,0.50,0.31}{##1}}}
-\expandafter\def\csname PYG@tok@ch\endcsname{\let\PYG@it=\textit\def\PYG@tc##1{\textcolor[rgb]{0.25,0.50,0.56}{##1}}}
-\expandafter\def\csname PYG@tok@cm\endcsname{\let\PYG@it=\textit\def\PYG@tc##1{\textcolor[rgb]{0.25,0.50,0.56}{##1}}}
-\expandafter\def\csname PYG@tok@cpf\endcsname{\let\PYG@it=\textit\def\PYG@tc##1{\textcolor[rgb]{0.25,0.50,0.56}{##1}}}
-\expandafter\def\csname PYG@tok@c1\endcsname{\let\PYG@it=\textit\def\PYG@tc##1{\textcolor[rgb]{0.25,0.50,0.56}{##1}}}
-
-\def\PYGZbs{\char`\\}
-\def\PYGZus{\char`\_}
-\def\PYGZob{\char`\{}
-\def\PYGZcb{\char`\}}
-\def\PYGZca{\char`\^}
-\def\PYGZam{\char`\&}
-\def\PYGZlt{\char`\<}
-\def\PYGZgt{\char`\>}
-\def\PYGZsh{\char`\#}
-\def\PYGZpc{\char`\%}
-\def\PYGZdl{\char`\$}
-\def\PYGZhy{\char`\-}
-\def\PYGZsq{\char`\'}
-\def\PYGZdq{\char`\"}
-\def\PYGZti{\char`\~}
-% for compatibility with earlier versions
-\def\PYGZat{@}
-\def\PYGZlb{[}
-\def\PYGZrb{]}
-\makeatother
-
-\renewcommand\PYGZsq{\textquotesingle}
diff --git a/atomicfeaturespackage/docs/_build/latex/sphinxhowto.cls b/atomicfeaturespackage/docs/_build/latex/sphinxhowto.cls
deleted file mode 100644
index 57d73ce..0000000
--- a/atomicfeaturespackage/docs/_build/latex/sphinxhowto.cls
+++ /dev/null
@@ -1,102 +0,0 @@
-%
-% sphinxhowto.cls for Sphinx (http://sphinx-doc.org/)
-%
-
-\NeedsTeXFormat{LaTeX2e}[1995/12/01]
-\ProvidesClass{sphinxhowto}[2019/12/01 v2.3.0 Document class (Sphinx howto)]
-
-% 'oneside' option overriding the 'twoside' default
-\newif\if@oneside
-\DeclareOption{oneside}{\@onesidetrue}
-% Pass remaining document options to the parent class.
-\DeclareOption*{\PassOptionsToClass{\CurrentOption}{\sphinxdocclass}}
-\ProcessOptions\relax
-
-% Default to two-side document
-\if@oneside
-% nothing to do (oneside is the default)
-\else
-\PassOptionsToClass{twoside}{\sphinxdocclass}
-\fi
-
-\LoadClass{\sphinxdocclass}
-
-% Set some sane defaults for section numbering depth and TOC depth.  You can
-% reset these counters in your preamble.
-%
-\setcounter{secnumdepth}{2}
-\setcounter{tocdepth}{2}% i.e. section and subsection
-
-% Adapt \and command to the flushright context of \sphinxmaketitle, to
-% avoid ragged line endings if author names do not fit all on one single line
-\DeclareRobustCommand{\and}{%
-    \end{tabular}\kern-\tabcolsep
-    \allowbreak
-    \hskip\dimexpr1em+\tabcolsep\@plus.17fil\begin{tabular}[t]{c}%
-}%
-% If it is desired that each author name be on its own line, use in preamble:
-%\DeclareRobustCommand{\and}{%
-%   \end{tabular}\kern-\tabcolsep\\\begin{tabular}[t]{c}%
-%}%
-% Change the title page to look a bit better, and fit in with the fncychap
-% ``Bjarne'' style a bit better.
-%
-\newcommand{\sphinxmaketitle}{%
-  \noindent\rule{\textwidth}{1pt}\par
-    \begingroup % for PDF information dictionary
-       \def\endgraf{ }\def\and{\& }%
-       \pdfstringdefDisableCommands{\def\\{, }}% overwrite hyperref setup
-       \hypersetup{pdfauthor={\@author}, pdftitle={\@title}}%
-    \endgroup
-  \begin{flushright}
-    \sphinxlogo
-    \py@HeaderFamily
-    {\Huge \@title }\par
-    {\itshape\large \py@release \releaseinfo}\par
-    \vspace{25pt}
-    {\Large
-      \begin{tabular}[t]{c}
-        \@author
-      \end{tabular}\kern-\tabcolsep}\par
-    \vspace{25pt}
-    \@date \par
-    \py@authoraddress \par
-  \end{flushright}
-  \@thanks
-  \setcounter{footnote}{0}
-  \let\thanks\relax\let\maketitle\relax
-  %\gdef\@thanks{}\gdef\@author{}\gdef\@title{}
-}
-
-\newcommand{\sphinxtableofcontents}{%
-  \begingroup
-    \parskip \z@skip
-    \sphinxtableofcontentshook
-    \tableofcontents
-  \endgroup
-  \noindent\rule{\textwidth}{1pt}\par
-  \vspace{12pt}%
-}  
-\newcommand\sphinxtableofcontentshook{}
-\pagenumbering{arabic}
-
-% Fix the bibliography environment to add an entry to the Table of
-% Contents.
-% For an article document class this environment is a section,
-% so no page break before it.
-%
-\newenvironment{sphinxthebibliography}[1]{%
-  % \phantomsection % not needed here since TeXLive 2010's hyperref
-  \begin{thebibliography}{#1}%
-  \addcontentsline{toc}{section}{\ifdefined\refname\refname\else\ifdefined\bibname\bibname\fi\fi}}{\end{thebibliography}}
-
-
-% Same for the indices.
-% The memoir class already does this, so we don't duplicate it in that case.
-%
-\@ifclassloaded{memoir}
- {\newenvironment{sphinxtheindex}{\begin{theindex}}{\end{theindex}}}
- {\newenvironment{sphinxtheindex}{%
-    \phantomsection % needed because no chapter, section, ... is created by theindex
-    \begin{theindex}%
-    \addcontentsline{toc}{section}{\indexname}}{\end{theindex}}}
diff --git a/atomicfeaturespackage/docs/_build/latex/sphinxmanual.cls b/atomicfeaturespackage/docs/_build/latex/sphinxmanual.cls
deleted file mode 100644
index 718189d..0000000
--- a/atomicfeaturespackage/docs/_build/latex/sphinxmanual.cls
+++ /dev/null
@@ -1,128 +0,0 @@
-%
-% sphinxmanual.cls for Sphinx (http://sphinx-doc.org/)
-%
-
-\NeedsTeXFormat{LaTeX2e}[1995/12/01]
-\ProvidesClass{sphinxmanual}[2019/12/01 v2.3.0 Document class (Sphinx manual)]
-
-% chapters starting at odd pages (overridden by 'openany' document option)
-\PassOptionsToClass{openright}{\sphinxdocclass}
-
-% 'oneside' option overriding the 'twoside' default
-\newif\if@oneside
-\DeclareOption{oneside}{\@onesidetrue}
-% Pass remaining document options to the parent class.
-\DeclareOption*{\PassOptionsToClass{\CurrentOption}{\sphinxdocclass}}
-\ProcessOptions\relax
-
-% Defaults two-side document
-\if@oneside
-% nothing to do (oneside is the default)
-\else
-\PassOptionsToClass{twoside}{\sphinxdocclass}
-\fi
-
-\LoadClass{\sphinxdocclass}
-
-% Set some sane defaults for section numbering depth and TOC depth.  You can
-% reset these counters in your preamble.
-%
-\setcounter{secnumdepth}{2}
-\setcounter{tocdepth}{1}
-
-% Adapt \and command to the flushright context of \sphinxmaketitle, to
-% avoid ragged line endings if author names do not fit all on one single line
-\DeclareRobustCommand{\and}{%
-    \end{tabular}\kern-\tabcolsep
-    \allowbreak
-    \hskip\dimexpr1em+\tabcolsep\@plus.17fil\begin{tabular}[t]{c}%
-}%
-% If it is desired that each author name be on its own line, use in preamble:
-%\DeclareRobustCommand{\and}{%
-%   \end{tabular}\kern-\tabcolsep\\\begin{tabular}[t]{c}%
-%}%
-% Change the title page to look a bit better, and fit in with the fncychap
-% ``Bjarne'' style a bit better.
-%
-\newcommand{\sphinxmaketitle}{%
-  \let\sphinxrestorepageanchorsetting\relax
-  \ifHy@pageanchor\def\sphinxrestorepageanchorsetting{\Hy@pageanchortrue}\fi
-  \hypersetup{pageanchor=false}% avoid duplicate destination warnings
-  \begin{titlepage}%
-    \let\footnotesize\small
-    \let\footnoterule\relax
-    \noindent\rule{\textwidth}{1pt}\par
-      \begingroup % for PDF information dictionary
-       \def\endgraf{ }\def\and{\& }%
-       \pdfstringdefDisableCommands{\def\\{, }}% overwrite hyperref setup
-       \hypersetup{pdfauthor={\@author}, pdftitle={\@title}}%
-      \endgroup
-    \begin{flushright}%
-      \sphinxlogo
-      \py@HeaderFamily
-      {\Huge \@title \par}
-      {\itshape\LARGE \py@release\releaseinfo \par}
-      \vfill
-      {\LARGE
-        \begin{tabular}[t]{c}
-          \@author
-        \end{tabular}\kern-\tabcolsep
-        \par}
-      \vfill\vfill
-      {\large
-       \@date \par
-       \vfill
-       \py@authoraddress \par
-      }%
-    \end{flushright}%\par
-    \@thanks
-  \end{titlepage}%
-  \setcounter{footnote}{0}%
-  \let\thanks\relax\let\maketitle\relax
-  %\gdef\@thanks{}\gdef\@author{}\gdef\@title{}
-  \clearpage
-  \ifdefined\sphinxbackoftitlepage\sphinxbackoftitlepage\fi
-  \if@openright\cleardoublepage\else\clearpage\fi
-  \sphinxrestorepageanchorsetting
-}
-
-\newcommand{\sphinxtableofcontents}{%
-  \pagenumbering{roman}%
-  \begingroup
-    \parskip \z@skip
-    \sphinxtableofcontentshook
-    \tableofcontents
-  \endgroup
-  % before resetting page counter, let's do the right thing.
-  \if@openright\cleardoublepage\else\clearpage\fi
-  \pagenumbering{arabic}%
-}
-
-% This is needed to get the width of the section # area wide enough in the
-% library reference.  Doing it here keeps it the same for all the manuals.
-%
-\newcommand{\sphinxtableofcontentshook}{%
-  \renewcommand*\l@section{\@dottedtocline{1}{1.5em}{2.6em}}%
-  \renewcommand*\l@subsection{\@dottedtocline{2}{4.1em}{3.5em}}%
-}
-
-% Fix the bibliography environment to add an entry to the Table of
-% Contents.
-% For a report document class this environment is a chapter.
-%
-\newenvironment{sphinxthebibliography}[1]{%
-  \if@openright\cleardoublepage\else\clearpage\fi
-  % \phantomsection % not needed here since TeXLive 2010's hyperref
-  \begin{thebibliography}{#1}%
-  \addcontentsline{toc}{chapter}{\bibname}}{\end{thebibliography}}
-
-% Same for the indices.
-% The memoir class already does this, so we don't duplicate it in that case.
-%
-\@ifclassloaded{memoir}
- {\newenvironment{sphinxtheindex}{\begin{theindex}}{\end{theindex}}}
- {\newenvironment{sphinxtheindex}{%
-    \if@openright\cleardoublepage\else\clearpage\fi
-    \phantomsection % needed as no chapter, section, ... created
-    \begin{theindex}%
-    \addcontentsline{toc}{chapter}{\indexname}}{\end{theindex}}}
diff --git a/atomicfeaturespackage/docs/_build/latex/sphinxmessages.sty b/atomicfeaturespackage/docs/_build/latex/sphinxmessages.sty
deleted file mode 100644
index 68ebffa..0000000
--- a/atomicfeaturespackage/docs/_build/latex/sphinxmessages.sty
+++ /dev/null
@@ -1,21 +0,0 @@
-%
-% sphinxmessages.sty
-%
-% message resources for Sphinx
-%
-\ProvidesPackage{sphinxmessages}[2019/01/04 v2.0 Localized LaTeX macros (Sphinx team)]
-
-\renewcommand{\literalblockcontinuedname}{continued from previous page}
-\renewcommand{\literalblockcontinuesname}{continues on next page}
-\renewcommand{\sphinxnonalphabeticalgroupname}{Non\sphinxhyphen{}alphabetical}
-\renewcommand{\sphinxsymbolsname}{Symbols}
-\renewcommand{\sphinxnumbersname}{Numbers}
-\def\pageautorefname{page}
-
-\addto\captionsenglish{\renewcommand{\figurename}{Fig.\@{} }}
-\def\fnum@figure{\figurename\thefigure{}}
-
-\addto\captionsenglish{\renewcommand{\tablename}{Table }}
-\def\fnum@table{\tablename\thetable{}}
-
-\addto\captionsenglish{\renewcommand{\literalblockname}{Listing}}
\ No newline at end of file
diff --git a/atomicfeaturespackage/docs/_build/latex/sphinxmulticell.sty b/atomicfeaturespackage/docs/_build/latex/sphinxmulticell.sty
deleted file mode 100644
index a645491..0000000
--- a/atomicfeaturespackage/docs/_build/latex/sphinxmulticell.sty
+++ /dev/null
@@ -1,317 +0,0 @@
-\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{sphinxmulticell}%
-    [2017/02/23 v1.6 better span rows and columns of a table (Sphinx team)]%
-\DeclareOption*{\PackageWarning{sphinxmulticell}{Option `\CurrentOption' is unknown}}%
-\ProcessOptions\relax
-%
-% --- MULTICOLUMN ---
-% standard LaTeX's \multicolumn
-% 1. does not allow verbatim contents,
-% 2. interacts very poorly with tabulary.
-%
-% It is needed to write own macros for Sphinx: to allow code-blocks in merged
-% cells rendered by tabular/longtable, and to allow multi-column cells with
-% paragraphs to be taken into account sanely by tabulary algorithm for column
-% widths.
-%
-% This requires quite a bit of hacking. First, in Sphinx, the multi-column
-% contents will *always* be wrapped in a varwidth environment. The issue
-% becomes to pass it the correct target width. We must trick tabulary into
-% believing the multicolumn is simply separate columns, else tabulary does not
-% incorporate the contents in its algorithm. But then we must clear the
-% vertical rules...
-%
-% configuration of tabulary
-\setlength{\tymin}{3\fontcharwd\font`0 }% minimal width of "squeezed" columns
-\setlength{\tymax}{10000pt}% allow enough room for paragraphs to "compete"
-% we need access to tabulary's final computed width. \@tempdima is too volatile
-% to hope it has kept tabulary's value when \sphinxcolwidth needs it.
-\newdimen\sphinx@TY@tablewidth
-\def\tabulary{%
-  \def\TY@final{\sphinx@TY@tablewidth\@tempdima\tabular}%
-  \let\endTY@final\endtabular
-  \TY@tabular}%
-% next hack is needed only if user has set latex_use_latex_multicolumn to True:
-% it fixes tabulary's bug with \multicolumn defined "short" in first pass. (if
-% upstream tabulary adds a \long, our extra one causes no harm)
-\def\sphinx@tempa #1\def\multicolumn#2#3#4#5#6#7#8#9\sphinx@tempa
-   {\def\TY@tab{#1\long\def\multicolumn####1####2####3{\multispan####1\relax}#9}}%
-\expandafter\sphinx@tempa\TY@tab\sphinx@tempa
-%
-% TN. 1: as \omit is never executed, Sphinx multicolumn does not need to worry
-% like standard multicolumn about |l| vs l|. On the other hand it assumes
-% columns are separated by a | ... (if not it will add extraneous
-% \arrayrulewidth space for each column separation in its estimate of available
-% width).
-%
-% TN. 1b: as Sphinx multicolumn uses neither \omit nor \span, it can not
-% (easily) get rid of extra macros from >{...} or <{...} between columns. At
-% least, it has been made compatible with colortbl's \columncolor.
-%
-% TN. 2: tabulary's second pass is handled like tabular/longtable's single
-% pass, with the difference that we hacked \TY@final to set in
-% \sphinx@TY@tablewidth the final target width as computed by tabulary. This is
-% needed only to handle columns with a "horizontal" specifier: "p" type columns
-% (inclusive of tabulary's LJRC) holds the target column width in the
-% \linewidth dimension.
-%
-% TN. 3: use of \begin{sphinxmulticolumn}...\end{sphinxmulticolumn} mark-up
-% would need some hacking around the fact that groups can not span across table
-% cells (the code does inserts & tokens, see TN1b). It was decided to keep it
-% simple with \sphinxstartmulticolumn...\sphinxstopmulticolumn.
-%
-% MEMO about nesting: if sphinxmulticolumn is encountered in a nested tabular
-% inside a tabulary it will think to be at top level in the tabulary. But
-% Sphinx generates no nested tables, and if some LaTeX macro uses internally a
-% tabular this will not have a \sphinxstartmulticolumn within it!
-%
-\def\sphinxstartmulticolumn{%
-    \ifx\equation$% $ tabulary's first pass
-        \expandafter\sphinx@TYI@start@multicolumn
-    \else % either not tabulary or tabulary's second pass
-        \expandafter\sphinx@start@multicolumn
-    \fi
-}%
-\def\sphinxstopmulticolumn{%
-    \ifx\equation$% $ tabulary's first pass
-        \expandafter\sphinx@TYI@stop@multicolumn
-    \else % either not tabulary or tabulary's second pass
-        \ignorespaces
-    \fi
-}%
-\def\sphinx@TYI@start@multicolumn#1{%
-    % use \gdef always to avoid stack space build up
-    \gdef\sphinx@tempa{#1}\begingroup\setbox\z@\hbox\bgroup
-}%
-\def\sphinx@TYI@stop@multicolumn{\egroup % varwidth was used with \tymax
-    \xdef\sphinx@tempb{\the\dimexpr\wd\z@/\sphinx@tempa}% per column width
-    \endgroup
-    \expandafter\sphinx@TYI@multispan\expandafter{\sphinx@tempa}%
-}%
-\def\sphinx@TYI@multispan #1{%
-    \kern\sphinx@tempb\ignorespaces % the per column occupied width
-    \ifnum#1>\@ne % repeat, taking into account subtleties of TeX's & ...
-      \expandafter\sphinx@TYI@multispan@next\expandafter{\the\numexpr#1-\@ne\expandafter}%
-    \fi
-}%
-\def\sphinx@TYI@multispan@next{&\relax\sphinx@TYI@multispan}%
-%
-% Now the branch handling either the second pass of tabulary or the single pass
-% of tabular/longtable. This is the delicate part where we gather the
-% dimensions from the p columns either set-up by tabulary or by user p column
-% or Sphinx \X, \Y columns. The difficulty is that to get the said width, the
-% template must be inserted (other hacks would be horribly complicated except
-% if we rewrote crucial parts of LaTeX's \@array !) and we can not do
-% \omit\span like standard \multicolumn's easy approach. Thus we must cancel
-% the \vrule separators. Also, perhaps the column specifier is of the l, c, r
-% type, then we attempt an ad hoc rescue to give varwidth a reasonable target
-% width.
-\def\sphinx@start@multicolumn#1{%
-    \gdef\sphinx@multiwidth{0pt}\gdef\sphinx@tempa{#1}\sphinx@multispan{#1}%
-}%
-\def\sphinx@multispan #1{%
-    \ifnum#1=\@ne\expandafter\sphinx@multispan@end
-            \else\expandafter\sphinx@multispan@next
-    \fi {#1}%
-}%
-\def\sphinx@multispan@next #1{%
-    % trick to recognize L, C, R, J or p, m, b type columns
-    \ifdim\baselineskip>\z@
-       \gdef\sphinx@tempb{\linewidth}%
-    \else
-    % if in an l, r, c type column, try and hope for the best
-       \xdef\sphinx@tempb{\the\dimexpr(\ifx\TY@final\@undefined\linewidth\else
-            \sphinx@TY@tablewidth\fi-\arrayrulewidth)/\sphinx@tempa
-            -\tw@\tabcolsep-\arrayrulewidth\relax}%
-    \fi
-    \noindent\kern\sphinx@tempb\relax
-    \xdef\sphinx@multiwidth
-           {\the\dimexpr\sphinx@multiwidth+\sphinx@tempb+\tw@\tabcolsep+\arrayrulewidth}%
-    % hack the \vline and the colortbl macros
-    \sphinx@hack@vline\sphinx@hack@CT&\relax
-    % repeat
-    \expandafter\sphinx@multispan\expandafter{\the\numexpr#1-\@ne}%
-}%
-% packages like colortbl add group levels, we need to "climb back up" to be
-% able to hack the \vline and also the colortbl inserted tokens. This creates
-% empty space whether or not the columns were | separated:
-\def\sphinx@hack@vline{\ifnum\currentgrouptype=6\relax
-    \kern\arrayrulewidth\arrayrulewidth\z@\else\aftergroup\sphinx@hack@vline\fi}%
-\def\sphinx@hack@CT{\ifnum\currentgrouptype=6\relax
-    \let\CT@setup\sphinx@CT@setup\else\aftergroup\sphinx@hack@CT\fi}%
-% It turns out \CT@row@color is not expanded contrarily to \CT@column@color
-% during LaTeX+colortbl preamble preparation, hence it would be possible for
-% \sphinx@CT@setup to discard only the column color and choose to obey or not
-% row color and cell color. It would even be possible to propagate cell color
-% to row color for the duration of the Sphinx multicolumn... the (provisional?)
-% choice has been made to cancel the colortbl colours for the multicolumn
-% duration.
-\def\sphinx@CT@setup #1\endgroup{\endgroup}% hack to remove colour commands
-\def\sphinx@multispan@end#1{%
-    % first, trace back our steps horizontally
-    \noindent\kern-\dimexpr\sphinx@multiwidth\relax
-    % and now we set the final computed width for the varwidth environment
-    \ifdim\baselineskip>\z@
-       \xdef\sphinx@multiwidth{\the\dimexpr\sphinx@multiwidth+\linewidth}%
-    \else
-       \xdef\sphinx@multiwidth{\the\dimexpr\sphinx@multiwidth+
-         (\ifx\TY@final\@undefined\linewidth\else
-          \sphinx@TY@tablewidth\fi-\arrayrulewidth)/\sphinx@tempa
-          -\tw@\tabcolsep-\arrayrulewidth\relax}%
-    \fi
-    % we need to remove colour set-up also for last cell of the multi-column
-    \aftergroup\sphinx@hack@CT
-}%
-\newcommand*\sphinxcolwidth[2]{%
-  % this dimension will always be used for varwidth, and serves as maximum
-  % width when cells are merged either via multirow or multicolumn or both,
-  % as always their contents is wrapped in varwidth environment.
-  \ifnum#1>\@ne % multi-column (and possibly also multi-row)
-  % we wrote our own multicolumn code especially to handle that (and allow
-  % verbatim contents)
-   \ifx\equation$%$
-       \tymax % first pass of tabulary (cf MEMO above regarding nesting)
-   \else % the \@gobble thing is for compatibility with standard \multicolumn
-       \sphinx@multiwidth\@gobble{#1/#2}%
-   \fi
-  \else % single column multirow
-   \ifx\TY@final\@undefined % not a tabulary.
-    \ifdim\baselineskip>\z@
-        % in a p{..} type column, \linewidth is the target box width
-        \linewidth
-    \else
-        % l, c, r columns. Do our best.
-        \dimexpr(\linewidth-\arrayrulewidth)/#2-
-                \tw@\tabcolsep-\arrayrulewidth\relax
-    \fi
-   \else % in tabulary
-    \ifx\equation$%$% first pass
-        \tymax % it is set to a big value so that paragraphs can express themselves
-    \else
-     % second pass.
-     \ifdim\baselineskip>\z@
-         \linewidth % in a L, R, C, J column or a p, \X, \Y ...
-     \else
-         % we have hacked \TY@final to put in \sphinx@TY@tablewidth the table width
-         \dimexpr(\sphinx@TY@tablewidth-\arrayrulewidth)/#2-
-                 \tw@\tabcolsep-\arrayrulewidth\relax
-     \fi
-    \fi
-   \fi
-  \fi
-}%
-% fallback default in case user has set latex_use_latex_multicolumn to True:
-% \sphinxcolwidth will use this only inside LaTeX's standard \multicolumn
-\def\sphinx@multiwidth #1#2{\dimexpr % #1 to gobble the \@gobble (!)
-    (\ifx\TY@final\@undefined\linewidth\else\sphinx@TY@tablewidth\fi
-     -\arrayrulewidth)*#2-\tw@\tabcolsep-\arrayrulewidth\relax}%
-%
-% --- MULTIROW ---
-% standard \multirow
-% 1. does not allow verbatim contents,
-% 2. does not allow blank lines in its argument,
-% 3. its * specifier means to typeset "horizontally" which is very
-%    bad for paragraph content. 2016 version has = specifier but it
-%    must be used with p type columns only, else results are bad,
-% 4. it requires manual intervention if the contents is too long to fit
-%    in the asked-for number of rows.
-% 5. colour panels (either from \rowcolor or \columncolor) will hide
-%    the bottom part of multirow text, hence manual tuning is needed
-%    to put the multirow insertion at the _bottom_.
-%
-% The Sphinx solution consists in always having contents wrapped
-% in a varwidth environment so that it makes sense to estimate how many
-% lines it will occupy, and then ensure by insertion of suitable struts
-% that the table rows have the needed height. The needed mark-up is done
-% by LaTeX writer, which has its own id for the merged cells.
-%
-% The colour issue is solved by clearing colour panels in all cells,
-% whether or not the multirow is single-column or multi-column.
-%
-% In passing we obtain baseline alignements across rows (only if
-% \arraystretch is 1, as LaTeX's does not obey \arraystretch in "p"
-% multi-line contents, only first and last line...)
-%
-% TODO: examine the situation with \arraystretch > 1. The \extrarowheight
-% is hopeless for multirow anyhow, it makes baseline alignment strictly
-% impossible.
-\newcommand\sphinxmultirow[2]{\begingroup
-  % #1 = nb of spanned rows, #2 = Sphinx id of "cell", #3 = contents
-  % but let's fetch #3 in a way allowing verbatim contents !
-  \def\sphinx@nbofrows{#1}\def\sphinx@cellid{#2}%
-  \afterassignment\sphinx@multirow\let\next=
-}%
-\def\sphinx@multirow {%
-  \setbox\z@\hbox\bgroup\aftergroup\sphinx@@multirow\strut
-}%
-\def\sphinx@@multirow {%
-  % The contents, which is a varwidth environment, has been captured in
-  % \box0 (a \hbox).
-  % We have with \sphinx@cellid an assigned unique id. The goal is to give
-  % about the same height to all the involved rows.
-  % For this Sphinx will insert a \sphinxtablestrut{cell_id} mark-up
-  % in LaTeX file and the expansion of the latter will do the suitable thing.
-  \dimen@\dp\z@
-  \dimen\tw@\ht\@arstrutbox
-  \advance\dimen@\dimen\tw@
-  \advance\dimen\tw@\dp\@arstrutbox
-  \count@=\dimen@       % type conversion dim -> int
-  \count\tw@=\dimen\tw@
-  \divide\count@\count\tw@ % TeX division truncates
-  \advance\dimen@-\count@\dimen\tw@
-  % 1300sp is about 0.02pt. For comparison a rule default width is 0.4pt.
-  % (note that if \count@ holds 0, surely \dimen@>1300sp)
-  \ifdim\dimen@>1300sp \advance\count@\@ne \fi
-  % now \count@ holds the count L of needed "lines"
-  % and \sphinx@nbofrows holds the number N of rows
-  % we have L >= 1 and N >= 1
-  % if L is a multiple of N, ... clear what to do !
-  % else write L = qN + r, 1 <= r < N and we will
-  % arrange for each row to have enough space for:
-  %     q+1 "lines" in each of the first r rows
-  %       q "lines" in each of the (N-r) bottom rows
-  % for a total of (q+1) * r + q * (N-r) = q * N + r = L
-  % It is possible that q == 0.
-  \count\tw@\count@
-  % the TeX division truncates
-  \divide\count\tw@\sphinx@nbofrows\relax
-  \count4\count\tw@ % q
-  \multiply\count\tw@\sphinx@nbofrows\relax
-  \advance\count@-\count\tw@ % r
-  \expandafter\xdef\csname sphinx@tablestrut_\sphinx@cellid\endcsname
-     {\noexpand\sphinx@tablestrut{\the\count4}{\the\count@}{\sphinx@cellid}}%
-  \dp\z@\z@
-  % this will use the real height if it is >\ht\@arstrutbox
-  \sphinxtablestrut{\sphinx@cellid}\box\z@
-  \endgroup % group was opened in \sphinxmultirow
-}%
-\newcommand*\sphinxtablestrut[1]{%
-  % #1 is a "cell_id", i.e. the id of a merged group of table cells
-  \csname sphinx@tablestrut_#1\endcsname
-}%
-% LaTeX typesets the table row by row, hence each execution can do
-% an update for the next row.
-\newcommand*\sphinx@tablestrut[3]{\begingroup
-  % #1 = q, #2 = (initially) r, #3 = cell_id, q+1 lines in first r rows
-  % if #2 = 0, create space for max(q,1) table lines
-  % if #2 > 0, create space for q+1 lines and decrement #2
-  \leavevmode
-  \count@#1\relax
-  \ifnum#2=\z@
-    \ifnum\count@=\z@\count@\@ne\fi
-  \else
-    % next row will be with a #2 decremented by one
-    \expandafter\xdef\csname sphinx@tablestrut_#3\endcsname
-      {\noexpand\sphinx@tablestrut{#1}{\the\numexpr#2-\@ne}{#3}}%
-   \advance\count@\@ne
-  \fi
-  \vrule\@height\ht\@arstrutbox
-        \@depth\dimexpr\count@\ht\@arstrutbox+\count@\dp\@arstrutbox-\ht\@arstrutbox\relax
-        \@width\z@
-  \endgroup
-  % we need this to avoid colour panels hiding bottom parts of multirow text
-  \sphinx@hack@CT
-}%
-\endinput
-%%
-%% End of file `sphinxmulticell.sty'.
diff --git a/atomicfeaturespackage/metainfo/__pycache__/__init__.cpython-36.pyc b/atomicfeaturespackage/metainfo/__pycache__/__init__.cpython-36.pyc
deleted file mode 100644
index ac43d146bc7b4ecb2fe0fb584b92f4527e49ca3b..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 191
zcmXr!<>g}e9hAtxz`*brM8Gg30|SEt0|P@b3j+f~3PUi1CZpd<h9ZzKg7}rApPQPJ
znW&$bn4MUhq3>I%P+X9hoT?w5UzDxymYJ8Bqfn5ToSm4Ss-IYrpPQMio0ghbQd*Q+
vtcxlR6NZWArj{gT=B4H9$H!;pWtPOp>lIYq;;_lhPbtkwwF9}L801m_&q_5>

diff --git a/atomicfeaturespackage/metainfo/__pycache__/metainfo.cpython-36.pyc b/atomicfeaturespackage/metainfo/__pycache__/metainfo.cpython-36.pyc
deleted file mode 100644
index 29963993e4a5143f9da430eb587d618f02f446e8..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 22456
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

diff --git a/atomicfeaturespackage/requirements.txt b/atomicfeaturespackage/requirements.txt
deleted file mode 100644
index fe110c8..0000000
--- a/atomicfeaturespackage/requirements.txt
+++ /dev/null
@@ -1,8 +0,0 @@
-nomad-lab
-numpy 
-pandas
-mendeleev
-bokeh
-ipywidgets
-typing
-urllib3
diff --git a/atomicfeaturespackage/docs/CONTRIBUTING.md b/docs/CONTRIBUTING.md
similarity index 100%
rename from atomicfeaturespackage/docs/CONTRIBUTING.md
rename to docs/CONTRIBUTING.md
diff --git a/atomicfeaturespackage/docs/LICENSE.md b/docs/LICENSE.md
similarity index 100%
rename from atomicfeaturespackage/docs/LICENSE.md
rename to docs/LICENSE.md
diff --git a/atomicfeaturespackage/docs/Makefile b/docs/Makefile
similarity index 100%
rename from atomicfeaturespackage/docs/Makefile
rename to docs/Makefile
diff --git a/atomicfeaturespackage/docs/README.md b/docs/README.md
similarity index 100%
rename from atomicfeaturespackage/docs/README.md
rename to docs/README.md
diff --git a/atomicfeaturespackage/docs/atomicfeaturespackage.atomicproperties.rst b/docs/atomicfeaturespackage.atomicproperties.rst
similarity index 100%
rename from atomicfeaturespackage/docs/atomicfeaturespackage.atomicproperties.rst
rename to docs/atomicfeaturespackage.atomicproperties.rst
diff --git a/atomicfeaturespackage/docs/atomicfeaturespackage.metainfo.rst b/docs/atomicfeaturespackage.metainfo.rst
similarity index 100%
rename from atomicfeaturespackage/docs/atomicfeaturespackage.metainfo.rst
rename to docs/atomicfeaturespackage.metainfo.rst
diff --git a/atomicfeaturespackage/docs/atomicfeaturespackage.rst b/docs/atomicfeaturespackage.rst
similarity index 100%
rename from atomicfeaturespackage/docs/atomicfeaturespackage.rst
rename to docs/atomicfeaturespackage.rst
diff --git a/atomicfeaturespackage/docs/conf.py b/docs/conf.py
similarity index 100%
rename from atomicfeaturespackage/docs/conf.py
rename to docs/conf.py
diff --git a/atomicfeaturespackage/docs/index.rst b/docs/index.rst
similarity index 100%
rename from atomicfeaturespackage/docs/index.rst
rename to docs/index.rst
diff --git a/atomicfeaturespackage/docs/make.bat b/docs/make.bat
similarity index 100%
rename from atomicfeaturespackage/docs/make.bat
rename to docs/make.bat
diff --git a/atomicfeaturespackage/docs/modules.rst b/docs/modules.rst
similarity index 100%
rename from atomicfeaturespackage/docs/modules.rst
rename to docs/modules.rst
diff --git a/requirements.txt b/requirements.txt
new file mode 100644
index 0000000..0b4db36
--- /dev/null
+++ b/requirements.txt
@@ -0,0 +1,146 @@
+#
+# This file is autogenerated by pip-compile with python 3.10
+# To update, run:
+#
+#    pip-compile ./setup.py
+#
+appnope==0.1.3
+    # via
+    #   ipykernel
+    #   ipython
+asttokens==2.1.0
+    # via stack-data
+backcall==0.2.0
+    # via ipython
+bokeh==3.0.1
+    # via atomic-features-package (./setup.py)
+colorama==0.4.6
+    # via mendeleev
+contourpy==1.0.6
+    # via bokeh
+debugpy==1.6.3
+    # via ipykernel
+decorator==5.1.1
+    # via ipython
+entrypoints==0.4
+    # via jupyter-client
+executing==1.2.0
+    # via stack-data
+greenlet==2.0.1
+    # via sqlalchemy
+ipykernel==6.17.1
+    # via ipywidgets
+ipython==8.6.0
+    # via
+    #   ipykernel
+    #   ipywidgets
+ipywidgets==8.0.2
+    # via atomic-features-package (./setup.py)
+jedi==0.18.1
+    # via ipython
+jinja2==3.1.2
+    # via bokeh
+jupyter-client==7.4.5
+    # via ipykernel
+jupyter-core==5.0.0
+    # via jupyter-client
+jupyterlab-widgets==3.0.3
+    # via ipywidgets
+markupsafe==2.1.1
+    # via jinja2
+matplotlib-inline==0.1.6
+    # via
+    #   ipykernel
+    #   ipython
+mendeleev==0.12.0
+    # via atomic-features-package (./setup.py)
+nest-asyncio==1.5.6
+    # via
+    #   ipykernel
+    #   jupyter-client
+numpy==1.23.4
+    # via
+    #   atomic-features-package (./setup.py)
+    #   bokeh
+    #   contourpy
+    #   mendeleev
+    #   pandas
+packaging==21.3
+    # via
+    #   bokeh
+    #   ipykernel
+pandas==1.5.1
+    # via
+    #   atomic-features-package (./setup.py)
+    #   bokeh
+    #   mendeleev
+parso==0.8.3
+    # via jedi
+pexpect==4.8.0
+    # via ipython
+pickleshare==0.7.5
+    # via ipython
+pillow==9.3.0
+    # via bokeh
+platformdirs==2.5.3
+    # via jupyter-core
+prompt-toolkit==3.0.32
+    # via ipython
+psutil==5.9.4
+    # via ipykernel
+ptyprocess==0.7.0
+    # via pexpect
+pure-eval==0.2.2
+    # via stack-data
+pyfiglet==0.8.post1
+    # via mendeleev
+pygments==2.13.0
+    # via
+    #   ipython
+    #   mendeleev
+pyparsing==3.0.9
+    # via packaging
+python-dateutil==2.8.2
+    # via
+    #   jupyter-client
+    #   pandas
+pytz==2022.6
+    # via pandas
+pyyaml==6.0
+    # via bokeh
+pyzmq==24.0.1
+    # via
+    #   ipykernel
+    #   jupyter-client
+six==1.16.0
+    # via
+    #   asttokens
+    #   mendeleev
+    #   python-dateutil
+sqlalchemy==1.4.43
+    # via mendeleev
+stack-data==0.6.0
+    # via ipython
+tornado==6.2
+    # via
+    #   bokeh
+    #   ipykernel
+    #   jupyter-client
+traitlets==5.5.0
+    # via
+    #   ipykernel
+    #   ipython
+    #   ipywidgets
+    #   jupyter-client
+    #   jupyter-core
+    #   matplotlib-inline
+typing==3.7.4.3
+    # via atomic-features-package (./setup.py)
+urllib3==1.26.12
+    # via atomic-features-package (./setup.py)
+wcwidth==0.2.5
+    # via prompt-toolkit
+widgetsnbextension==4.0.3
+    # via ipywidgets
+xyzservices==2022.9.0
+    # via bokeh
diff --git a/setup.py b/setup.py
index 642788d..19358f2 100644
--- a/setup.py
+++ b/setup.py
@@ -19,7 +19,7 @@ setuptools.setup(
         "Operating System :: OS Independent",
     ],
     install_requires=[
-        "nomad-lab",
+        # "nomad-lab",
         "numpy",
         "pandas",
         "mendeleev",
@@ -31,10 +31,10 @@ setuptools.setup(
     python_requires=">=3.6",
     include_package_data=True,
     package_data={
-        "atomic-features-package": ["data/dft/*.csv"],
-        "atomic-features-package": ["data/pymat/*.json"],
-        "atomic-features-package": ["data/lda2015/*.csv"],
-        "atomic-features-package": ["data/matminer/*.table"],
-        "atomic-features-package": ["data/webele/*.csv"],
+        "atomic_features_package": ["data/dft/*.csv"],
+        "atomic_features_package": ["data/pymat/*.json"],
+        "atomic_features_package": ["data/lda2015/*.csv"],
+        "atomic_features_package": ["data/matminer/*.table"],
+        "atomic_features_package": ["data/webele/*.csv"],
     },
 )
diff --git a/atomicfeaturespackage/__init__.py b/src/atomic_features_package/__init__.py
similarity index 100%
rename from atomicfeaturespackage/__init__.py
rename to src/atomic_features_package/__init__.py
diff --git a/atomicfeaturespackage/atomicproperties/__init__.py b/src/atomic_features_package/atomic_properties/__init__.py
similarity index 100%
rename from atomicfeaturespackage/atomicproperties/__init__.py
rename to src/atomic_features_package/atomic_properties/__init__.py
diff --git a/atomicfeaturespackage/atomicproperties/atomic_properties_dft.py b/src/atomic_features_package/atomic_properties/atomic_properties_dft.py
similarity index 97%
rename from atomicfeaturespackage/atomicproperties/atomic_properties_dft.py
rename to src/atomic_features_package/atomic_properties/atomic_properties_dft.py
index 63d686b..ffab000 100644
--- a/atomicfeaturespackage/atomicproperties/atomic_properties_dft.py
+++ b/src/atomic_features_package/atomic_properties/atomic_properties_dft.py
@@ -4,25 +4,26 @@
 '''
 Module : atomic_properties_dft
 
-This module with help of  atomic_properties_fhi class from metainfo module instantiates objects with atomic element symbol as identifier to access atomic features available 
+This module with help of  atomic_properties_fhi class from metainfo module instantiates objects with atomic element symbol as identifier to access atomic features available
 '''
 
-from atomicfeaturespackage.metainfo.metainfo import atomic_properties_fhi,metadata
-import pandas as pd
 import os
+import pandas as pd
+
+from ..metainfo.metainfo import atomic_properties_fhi, metadata
 
 
 
 def f(df1,objs):
     '''
     This method instantiates objects of class atomic_properties_fhi when spin arg is set to "FALSE".
-    '''    
-    
+    '''
+
     for i in df1['atomic_element_symbol']:
         fhi = atomic_properties_fhi()
         prop = fhi.m_create(metadata)
         objs.append(fhi)
-    
+
     count = 0
     for obj in objs:
         obj.section_fhi_metadata.source = 'FHIaims'
@@ -58,14 +59,14 @@ def f(df1,objs):
         obj.atomic_r_s_1 = [float(df1.iloc[count,df1.columns.get_loc("r_s_1.0")])]
         obj.atomic_r_p_1 = [float(df1.iloc[count,df1.columns.get_loc("r_p_1.0")])]
         obj.atomic_r_d_1 = [float(df1.iloc[count,df1.columns.get_loc("r_d_1.0")])]
-        obj.atomic_r_val_1 =[float(df1.iloc[count,df1.columns.get_loc("r_val_1.0")])] 
+        obj.atomic_r_val_1 =[float(df1.iloc[count,df1.columns.get_loc("r_val_1.0")])]
         count+=1
-        
+
     atomic_element_symbol = df1['atomic_element_symbol'].values
     for count, symbol in enumerate(atomic_element_symbol):
         globals()[symbol] = objs[count]
-                
-        
+
+
 def t(df1,objs):
     '''
     This method instantiates objects of class atomic_properties_fhi when spin arg is set to "TRUE".
@@ -74,7 +75,7 @@ def t(df1,objs):
         fhi = atomic_properties_fhi()
         prop = fhi.m_create(metadata)
         objs.append(fhi)
-        
+
     count = 0
     for obj in objs:
         obj.section_fhi_metadata.source = 'FHIaims'
@@ -112,21 +113,21 @@ def t(df1,objs):
         obj.atomic_r_d_1 = [float(df1.iloc[count,df1.columns.get_loc("r_up_d_1.0")]),float(df1.iloc[count,df1.columns.get_loc("r_dn_d_1.0")])]
         obj.atomic_r_val_1 = [float(df1.iloc[count,df1.columns.get_loc("r_up_val_1.0")]),float(df1.iloc[count,df1.columns.get_loc("r_dn_val_1.0")])]
         count+=1
-        
+
     atomic_element_symbol = df1['atomic_element_symbol'].values
     for count, symbol in enumerate(atomic_element_symbol):
         globals()[symbol] = objs[count]
 
 
-# 
-# # This function one has to call with it params as per ones interest and method  
+#
+# # This function one has to call with it params as per ones interest and method
 
 # In[3]:
 path = os.path.abspath(os.path.join(os.path.dirname(__file__),".."))
 
 def method(Spin = '', method = ''):
     '''
-After importing atomic_properties_dft module one must call this method function to instantiate element objects. One must supply Spin and method   appropirate keywords agruments as per one's interest. 
+After importing atomic_properties_dft module one must call this method function to instantiate element objects. One must supply Spin and method   appropirate keywords agruments as per one's interest.
 
 
 Spin arg value could be :
@@ -214,8 +215,8 @@ As per different combinations specific datafiles will be read and element featur
         t(df1,objs)
     else:
         raise Exception("Please check the input parameters or Data for specified functional and spin setting is not available")
-       
-    
+
+
 def definition(abc):
     '''
     This function can be used to access quantity definitions for each element features accessible
@@ -225,7 +226,7 @@ def definition(abc):
     elif hasattr(metadata,abc):
         return print(getattr(metadata,abc).__doc__)
     else:
-        return print('Check the input feature name. Either it is wrong or requested feature does not exist from dft source')    
+        return print('Check the input feature name. Either it is wrong or requested feature does not exist from dft source')
 
 def symbol(abc):
     '''
diff --git a/atomicfeaturespackage/atomicproperties/atomic_properties_lda2015.py b/src/atomic_features_package/atomic_properties/atomic_properties_lda2015.py
similarity index 95%
rename from atomicfeaturespackage/atomicproperties/atomic_properties_lda2015.py
rename to src/atomic_features_package/atomic_properties/atomic_properties_lda2015.py
index b14bc31..413b3f1 100644
--- a/atomicfeaturespackage/atomicproperties/atomic_properties_lda2015.py
+++ b/src/atomic_features_package/atomic_properties/atomic_properties_lda2015.py
@@ -4,13 +4,13 @@
 '''
 Module : atomic_properties_lda2015
 
-This module with help of  atomic_properties_lda2015 class from metainfo module instantiates objects with atomic element symbol as identifier to access atomic features available 
+This module with help of  atomic_properties_lda2015 class from metainfo module instantiates objects with atomic element symbol as identifier to access atomic features available
 '''
 
-
-from atomicfeaturespackage.metainfo.metainfo import atomic_properties_lda2015,metadata
-import pandas as pd
 import os
+import pandas as pd
+
+from ..metainfo.metainfo import atomic_properties_lda2015, metadata
 
 
 path = os.path.abspath(os.path.join(os.path.dirname(__file__),".."))
@@ -55,7 +55,7 @@ atomic_element_symbol = df1['atomic_element_symbol'].values
 for count, symbol in enumerate(atomic_element_symbol):
     globals()[symbol] = objs[count]
 
-        
+
 def definition(abc):
     '''
     This function can be used to access quantity definitions for each element features accessible
@@ -65,7 +65,7 @@ def definition(abc):
     elif hasattr(metadata,abc):
         return print(getattr(metadata,abc).__doc__)
     else:
-        return print('Check the input feature name. Either it is wrong or requested feature does not exist from lda2015 source') 
+        return print('Check the input feature name. Either it is wrong or requested feature does not exist from lda2015 source')
 
 def symbol(abc):
     '''
diff --git a/atomicfeaturespackage/atomicproperties/atomic_properties_matminer.py b/src/atomic_features_package/atomic_properties/atomic_properties_matminer.py
similarity index 98%
rename from atomicfeaturespackage/atomicproperties/atomic_properties_matminer.py
rename to src/atomic_features_package/atomic_properties/atomic_properties_matminer.py
index 1f946b1..88d842e 100644
--- a/atomicfeaturespackage/atomicproperties/atomic_properties_matminer.py
+++ b/src/atomic_features_package/atomic_properties/atomic_properties_matminer.py
@@ -4,14 +4,17 @@
 '''
 Module : atomic_properties_matminer
 
-This module with help of  atomic_properties_matminer class from metainfo module instantiates objects with atomic element symbol as identifier to access atomic features available 
+This module with help of  atomic_properties_matminer class from metainfo module instantiates objects with atomic element symbol as identifier to access atomic features available
 '''
 
-from atomicfeaturespackage.metainfo.metainfo import atomic_properties_matminer,metadata
-import pandas as pd
+import os
+
 import numpy as np
+import pandas as pd
+
 from mendeleev import element
-import os
+
+from ..metainfo.metainfo import atomic_properties_matminer,metadata
 
 
 # This method_list object could be called after importing this module so one can easily see all the quantities accessible.
@@ -37,7 +40,7 @@ def oxistates():
     count = 0
     for i in oxstates.iterrows():
         ls = []
-        try: 
+        try:
             for i in oxstates.iloc[count,0].split():
                 ls.append(float(i))
                 oxstates.iloc[count,0] = ls
@@ -51,9 +54,9 @@ def atomicsymbol():
     for i in df['atomic_number']:
         df.iloc[count,5] = element(i).symbol
         count+=1
-        
+
 #Read the magpie data files and clean and arrange systematically in a pandas dataframe.
-    
+
 df['atomic_ICSD_vol'] = pd.read_table(os.path.join(path, "data","matminer", "ICSDVolume.table"),header=None)
 df['atomic_cpmass'] = pd.read_table(os.path.join(path, "data","matminer", "HeatCapacityMass.table"),header=None)
 df['atomic_cpmolar'] = pd.read_table(os.path.join(path, "data","matminer", "HeatCapacityMolar.table"),header=None)
@@ -107,7 +110,7 @@ df['gs_bcclatparam'] = pd.read_table(os.path.join(path, "data","matminer", "GSes
 df['gs_energy_pa'] = pd.read_table(os.path.join(path, "data","matminer", "GSenergy_pa.table"),header=None)
 df['gs_fcclatparam'] = pd.read_table(os.path.join(path, "data","matminer", "GSestFCClatcnt.table"),header=None)
 df['gs_mag_mom'] = pd.read_table(os.path.join(path, "data","matminer", "GSmagmom.table"),header=None)
-df['gs_volume_pa'] = pd.read_table(os.path.join(path, "data","matminer", "GSvolume_pa.table"),header=None) 
+df['gs_volume_pa'] = pd.read_table(os.path.join(path, "data","matminer", "GSvolume_pa.table"),header=None)
 df['melting_point'] = pd.read_table(os.path.join(path, "data","matminer", "MeltingT.table"),header=None)
 df['mendeleev_no'] = pd.read_table(os.path.join(path, "data","matminer", "MendeleevNumber.table"),header=None)
 df['micracle_radius'] =pd.read_table(os.path.join(path, "data","matminer", "MiracleRadius.table"),header=None)
@@ -201,7 +204,7 @@ for obj in objs:
         obj.thermal_cond = float(df.iloc[count,df.columns.get_loc("thermal_cond")])
         obj.thermal_cond_log = float(df.iloc[count,df.columns.get_loc("thermal_cond_log")])
         count+=1
-        
+
 atomic_element_symbol = df['atomic_element_symbol'].values
 for count, symbol in enumerate(atomic_element_symbol):
     globals()[symbol] = objs[count]
@@ -217,7 +220,7 @@ def definition(abc):
     elif hasattr(metadata,abc):
         return print(getattr(metadata,abc).__doc__)
     else:
-        return print('Check the input feature name. Either it is wrong or requested feature does not exist from magpie source') 
+        return print('Check the input feature name. Either it is wrong or requested feature does not exist from magpie source')
 
 
 def symbol(abc):
diff --git a/atomicfeaturespackage/atomicproperties/atomic_properties_pymat.py b/src/atomic_features_package/atomic_properties/atomic_properties_pymat.py
similarity index 97%
rename from atomicfeaturespackage/atomicproperties/atomic_properties_pymat.py
rename to src/atomic_features_package/atomic_properties/atomic_properties_pymat.py
index ccc650f..30e4423 100644
--- a/atomicfeaturespackage/atomicproperties/atomic_properties_pymat.py
+++ b/src/atomic_features_package/atomic_properties/atomic_properties_pymat.py
@@ -1,21 +1,24 @@
 #!/usr/bin/env python
 # coding: utf-8
 
-''' 
+'''
 Module : atomic_properties_pymat
 
 
-This module with help of  atomic_properties_pymat class from metainfo module instantiates objects with atomic element symbol as identifier to access atomic features available 
+This module with help of  atomic_properties_pymat class from metainfo module instantiates objects with atomic element symbol as identifier to access atomic features available
 '''
 
 
-from atomicfeaturespackage.metainfo.metainfo import atomic_properties_pymat,metadata
-import pandas as pd
-import numpy as np
-import urllib, json, re, typing
-from pandas.io.json import json_normalize
 import os
+import re
 import warnings
+import numpy as np
+import pandas as pd
+
+from pandas.io.json import json_normalize
+
+from ..metainfo.metainfo import atomic_properties_pymat,metadata
+
 warnings.filterwarnings("ignore", category=DeprecationWarning)
 
 path = os.path.abspath(os.path.join(os.path.dirname(__file__),".."))
@@ -42,7 +45,7 @@ for elem in df1.columns:
                 elif re.search(r"(.Low Spin.)", key):
                     new_key = re.sub(r"(.Low Spin.)",'.low_spin.',key)
                     #print(key)
-                else: 
+                else:
                     new_key = re.sub(r"(\.\.)",'.no_spin.',key)
 
                     #new_key = re.sub(r"(\.\.)",'.No_Spin.',key)
@@ -50,7 +53,7 @@ for elem in df1.columns:
         except AttributeError:
             continue
 
-#This rename_keys() function is called to replace keys of each element            
+#This rename_keys() function is called to replace keys of each element
 def rename_keys(d, keys):
     d = dict([(keys.get(k), v) for k, v in d.items()])
     return d
@@ -58,7 +61,7 @@ def rename_keys(d, keys):
 for elem in df1.columns:
     if type(df1.loc['Shannon radii'][elem]) == dict:
         test = rename_keys(df1.loc['Shannon radii'][elem], repl_dict)
-        df1.loc['Shannon radii'][elem] = test   
+        df1.loc['Shannon radii'][elem] = test
 
 # Dataframe manulpulation to sort the data from lowest to highest atomic number
 
@@ -99,7 +102,7 @@ df4.drop('iupac_ordering', axis=1, inplace=True)
 #Fill the empty features with np.nan values
 df_clean = df4.replace(r'^\s*$', np.nan, regex=True)
 
-# Section instantiation and its objects attributes are filled. This will create 118 objects unique ( atomic element symbol) which can be used to access its properties  
+# Section instantiation and its objects attributes are filled. This will create 118 objects unique ( atomic element symbol) which can be used to access its properties
 
 objs = []
 for i in df_clean['Element Symbol']:
@@ -157,7 +160,7 @@ for obj in objs:
         obj.ionic_radii_hs = df_clean.iloc[count,df_clean.columns.get_loc("Ionic radii hs")]
         obj.ionic_radii_ls = df_clean.iloc[count,df_clean.columns.get_loc("Ionic radii ls")]
         count+=1
-        
+
 atomic_element_symbol = df_clean['Element Symbol'].values
 for count, symbol in enumerate(atomic_element_symbol):
     globals()[symbol] = objs[count]
@@ -166,13 +169,13 @@ def definition(abc):
     '''
     This function can be used to access quantity definitions for each element features accessible
     '''
-    
+
     if hasattr(atomic_properties_pymat,abc):
         return print(getattr(atomic_properties_pymat,abc).__doc__)
     elif hasattr(metadata,abc):
         return print(getattr(metadata,abc).__doc__)
     else:
-        return print('Check the input feature name. Either it is wrong or requested feature does not exist from pymatgen source') 
+        return print('Check the input feature name. Either it is wrong or requested feature does not exist from pymatgen source')
 
 def symbol(abc):
     '''
diff --git a/atomicfeaturespackage/atomicproperties/atomic_properties_webele.py b/src/atomic_features_package/atomic_properties/atomic_properties_webele.py
similarity index 98%
rename from atomicfeaturespackage/atomicproperties/atomic_properties_webele.py
rename to src/atomic_features_package/atomic_properties/atomic_properties_webele.py
index c2bf3b7..2887e96 100644
--- a/atomicfeaturespackage/atomicproperties/atomic_properties_webele.py
+++ b/src/atomic_features_package/atomic_properties/atomic_properties_webele.py
@@ -4,17 +4,18 @@
 '''
 Module : atomic_properties_webele
 
-This module with help of  atomic_properties_webele class from metainfo module instantiates objects with atomic element symbol as identifier to access atomic features available 
+This module with help of  atomic_properties_webele class from metainfo module instantiates objects with atomic element symbol as identifier to access atomic features available
 '''
 
+import os
+import re
 
-from atomicfeaturespackage.metainfo.metainfo import atomic_properties_webele,metadata
-import pandas as pd
 import numpy as np
-from mendeleev import element
-import os
+import pandas as pd
+
 from ast import literal_eval
-import re
+
+from ..metainfo.metainfo import atomic_properties_webele, metadata
 
 
 # This method_list object could be called after importing this module so one can easily see all the quantities accessible.
@@ -80,11 +81,11 @@ for i in df_Webele['Electron_bin_En']:
                   replace(r" [2, one-particle approximation not valid owing to short core-hole lifetime]",'').
     replace(r" [2, one-particle approximation not valid owing to short core-hole lifetime, values derived from reference 1]",'').
                  replace(r" [3, one-particle approximation not valid owing to short core-hole lifetime]",'')})
-        
+
 for i in df_Webele['Ionisation_En']:
     for key,value in i.items():
         i.update({key:value.replace(r" (calculated)",'').replace(r" (inferred)",'')})
-        
+
 for i in df_Webele['Eff_Nuc_Char']:
     for key,value in i.items():
         i.update({key:value.replace(r"(no data)",'')})
@@ -97,13 +98,13 @@ for i in range(len(df_atomic_sizes)):
     df_atomic_sizes.loc[i,'atom_radii']['Covalent radius (2008 values)']=re.sub(r"( \(.*?\))|(-)", '', k)
     l=df_atomic_sizes.loc[i,'atom_radii']['Covalent radius (empirical)']
     df_atomic_sizes.loc[i,'atom_radii']['Covalent radius (empirical)']=re.sub(r"( \(.*?\))|(-)", '', l)
-    
+
     m=df_atomic_sizes.loc[i,'atom_radii']['Atomic radius (empirical)']
     df_atomic_sizes.loc[i,'atom_radii']['Atomic radius (empirical)']=re.sub(r"( \(.*?\))|(-)", '', m)
-    
+
     n=df_atomic_sizes.loc[i,'atom_radii']['Atomic radius (calculated)']
     df_atomic_sizes.loc[i,'atom_radii']['Atomic radius (calculated)']=re.sub(r"( \(.*?\))|(-)", '', n)
-    
+
     o=df_atomic_sizes.loc[i,'atom_radii']['van der Waals radius']
     df_atomic_sizes.loc[i,'atom_radii']['van der Waals radius']=re.sub(r"( \(.*?\))|(-)", '', o)
 
@@ -119,7 +120,7 @@ for i in range(len(df_atomic_sizes)):
         if df_atomic_sizes.loc[i,'paul_ionic_radii'][k]=="":
             df_atomic_sizes.loc[i,'paul_ionic_radii'][k]=np.nan
 
-# replace empty values with np.nan           
+# replace empty values with np.nan
 for i in range(len(df_atomic_sizes)):
     a=df_atomic_sizes.loc[i,'orbital_radii']
     for k in df_atomic_sizes.loc[i,'orbital_radii'].keys():
@@ -143,7 +144,7 @@ df_as_copy = df_atomic_sizes.copy(deep=True)
 df_as_copy['atom_radii'] = df_as_copy.atom_radii.apply(dict.copy)
 
 
-rem_keys= ['Atomic radius (empirical)', 'Atomic radius (calculated)', 
+rem_keys= ['Atomic radius (empirical)', 'Atomic radius (calculated)',
        'Covalent radius (2008 values)','Covalent radius (empirical)', 'van der Waals radius']
 
 for dictionary in df_as_copy['atom_radii']:
@@ -290,7 +291,7 @@ for i in df_iso['nat_isotopes']:
         for key,value in v.items():
             if value=='no data':
                 v[key]=np.nan
-                
+
 for i in df_iso['radiosotope_data']:
     #print(i.values())
     for k,v in i.copy().items():
@@ -316,7 +317,7 @@ df_iso['nmr_mod']=""
 nmr_mod={}
 for i in df_Webele.index:
     nmr_mod.update({i:{}})
-    
+
 # Store isotope names in a list and remove missing data values from df_iso['nmr_properties'] dataframe
 
 Keys= list(df_iso.loc[0,'nmr_properties'].keys())
@@ -330,7 +331,7 @@ for k in Keys:
                     i[k].remove(ele)
             except ValueError:
                 pass
-    
+
 #Create dictionary keys
 for row,col in df_iso.iterrows():
     for k in nmr_mod.keys():
@@ -379,7 +380,7 @@ for row,col in df_iso.iterrows():
                     row=row+1
                 except IndexError:
                     pass
-            
+
 
 
 # correcting erroneous data filled for some elements in nmr_mod dictionary manually.
@@ -540,16 +541,16 @@ df_iso['nmr_mod'] = nmr_mod.values()
 
 
 
-# Clean thermochemical data 
+# Clean thermochemical data
 rem_keys= ['Units']
 for i in df_therm['thermo_chem']:
      for key in i.copy(): # avoid dictionary changed size error during iteration using .copy method
         for k in rem_keys:
             if key==k:
                 del i[k]
-                
+
 #dict keys whose values needs to be cleaned
-mod_key=['Melting point', 'Boiling point', 'Liquid range', 'Critical temperature', 
+mod_key=['Melting point', 'Boiling point', 'Liquid range', 'Critical temperature',
       'Superconduction temperature', 'Enthalpy of fusion', 'Enthalpy of vaporisation', 'Enthalpy of atomisation']
 
 for i in range(len(df_therm)):
@@ -563,7 +564,7 @@ for i in range(len(df_therm)):
                     df_therm.loc[i,'thermo_chem'][k]=np.nan
                 else:
                     df_therm.loc[i,'thermo_chem'][k]=float(df_therm.loc[i,'thermo_chem'][k])
-                    
+
 
 # Seperate and store thermdata in another column "atomic_thermdata" of df_therm dataframe.
 df_therm['atomic_thermdata']=''
@@ -571,7 +572,7 @@ df_therm['atomic_thermdata'] = df_therm['thermo_chem'].copy(deep=True)
 df_therm['atomic_thermdata'] = df_therm['thermo_chem'].apply(dict.copy)
 
 
-rem_keys= ['Melting point', 'Boiling point', 'Liquid range', 'Critical temperature', 
+rem_keys= ['Melting point', 'Boiling point', 'Liquid range', 'Critical temperature',
       'Superconduction temperature', 'Enthalpy of fusion', 'Enthalpy of vaporisation', 'Enthalpy of atomisation']
 
 for dictionary in df_therm['atomic_thermdata']:
@@ -637,25 +638,25 @@ for obj in objs:
                                                  ['Atomic radius (calculated)'])
         except ValueError:
             obj.atomic_radius_calculated = np.nan
-                                                 
+
         try:
             obj.atomic_radius = float(df_atomic_sizes.iloc[count,df_atomic_sizes.columns.get_loc("atom_radii")]
                                  ['Atomic radius (empirical)'])
         except ValueError:
             obj.atomic_radius = np.nan
-                                                 
+
         try:
             obj.covalent_rad = float(df_atomic_sizes.iloc[count,df_atomic_sizes.columns.get_loc("atom_radii")]
                                  ['Covalent radius (2008 values)'])
         except ValueError:
             obj.covalent_rad = np.nan
-        
+
         try:
             obj.covalent_rad_emp = float(df_atomic_sizes.iloc[count,df_atomic_sizes.columns.get_loc("atom_radii")]
                                  ['Covalent radius (empirical)'])
         except ValueError:
             obj.covalent_rad_emp = np.nan
-                                                 
+
         try:
             obj.van_der_waals_rad =float(df_atomic_sizes.iloc[count,df_atomic_sizes.columns.get_loc("atom_radii")]
                                  ['van der Waals radius'])
@@ -666,13 +667,13 @@ for obj in objs:
         obj.atomic_orbital_radii =  df_atomic_sizes.iloc[count,df_atomic_sizes.columns.get_loc("orbital_radii")]
         obj.atomic_ionic_radii =  df_atomic_sizes.iloc[count,df_atomic_sizes.columns.get_loc("ionic_radii")]
         obj.paul_ionic_radii =  df_atomic_sizes.iloc[count,df_atomic_sizes.columns.get_loc("paul_ionic_radii")]
-        
+
         obj.atomic_spacegroup = df_crys_struct.iloc[count,df_crys_struct.columns.get_loc("cryst_struct")]['Space group']
         obj.atomic_spacegroupnum= float(df_crys_struct.iloc[count,df_crys_struct.columns.get_loc("cryst_struct")]
                                        ['Space group number'])
         obj.atomic_structure = df_crys_struct.iloc[count,df_crys_struct.columns.get_loc("cryst_struct")]['Structure']
         obj.atomic_cellparam = df_crys_struct.iloc[count,df_crys_struct.columns.get_loc("atomic_cellparam")]
-        
+
         obj.atomic_en =df_en.iloc[count,df_en.columns.get_loc("electronegativity")]
         obj.atomic_en_allen = float(df_en.iloc[count,df_en.columns.get_loc("electronegativity")]
         ['Allen electronegativity'])
@@ -682,11 +683,11 @@ for obj in objs:
         ['Allred Rochow electronegativity'])
         obj.atomic_en_sanderson = float(df_en.iloc[count,df_en.columns.get_loc("electronegativity")]
         ['Sanderson electronegativity'])
-        
+
         obj.atomic_nat_iso = df_iso.iloc[count,df_iso.columns.get_loc("nat_isotopes")]
         obj.atomic_rad_iso = df_iso.iloc[count,df_iso.columns.get_loc("radiosotope_data")]
         obj.atomic_nmr = df_iso.iloc[count,df_iso.columns.get_loc("nmr_mod")]
-        
+
         obj.boiling_point = float(df_therm.iloc[count,df_therm.columns.get_loc("thermo_chem")]
         ['Boiling point'])
         obj.supercond_temp = float(df_therm.iloc[count,df_therm.columns.get_loc("thermo_chem")]
@@ -705,7 +706,7 @@ for obj in objs:
         ['Enthalpy of atomisation'])
         obj.atomic_thermdata = df_therm.iloc[count,df_therm.columns.get_loc("atomic_thermdata")]
         count+=1
-        
+
 atomic_element_symbol = df_Webele['Element_symbol'].values
 for count, symbol in enumerate(atomic_element_symbol):
     globals()[symbol] = objs[count]
@@ -738,7 +739,7 @@ def definition(abc):
     elif hasattr(metadata,abc):
         return print(getattr(metadata,abc).__doc__)
     else:
-        return print('Check the input feature name. Either it is wrong or requested feature does not exist from this webelements source') 
+        return print('Check the input feature name. Either it is wrong or requested feature does not exist from this webelements source')
 
 
 def symbol(abc):
diff --git a/atomicfeaturespackage/atomicproperties/periodictable.py b/src/atomic_features_package/atomic_properties/periodictable.py
similarity index 92%
rename from atomicfeaturespackage/atomicproperties/periodictable.py
rename to src/atomic_features_package/atomic_properties/periodictable.py
index e90166e..34bf828 100644
--- a/atomicfeaturespackage/atomicproperties/periodictable.py
+++ b/src/atomic_features_package/atomic_properties/periodictable.py
@@ -1,12 +1,17 @@
 #!/usr/bin/env python
 # coding: utf-8
 
-''' 
+'''
 Module : periodictable
 
-This module with help to visualize atomic properties available from dft, lda2015, matminer,webele and pymat module via the periodic table in the form of heatmaps 
+This module with help to visualize atomic properties available from dft, lda2015, matminer,webele and pymat module via the periodic table in the form of heatmaps
 '''
 
+import os
+import re
+import numpy as np
+import pandas as pd
+
 from bokeh.io import output_notebook, output_file,show, push_notebook
 from bokeh.models import ColumnDataSource,CustomJS, HoverTool,ColorBar, NumeralTickFormatter,LinearColorMapper,Select
 from bokeh.plotting import figure
@@ -15,13 +20,10 @@ from bokeh.transform import dodge, factor_cmap, linear_cmap
 from bokeh.palettes import PRGn, RdYlGn,Blues8,Colorblind
 from bokeh.layouts import column, layout,row
 from ipywidgets import interact, Layout
-import pandas as pd
-import os
-import numpy as np
-import re
-from atomicfeaturespackage.atomicproperties import atomic_properties_matminer as mm
-from atomicfeaturespackage.atomicproperties import atomic_properties_pymat as pymatdf
-from atomicfeaturespackage.atomicproperties import atomic_properties_webele as apwebele
+
+from . import atomic_properties_matminer as mm
+from . import atomic_properties_pymat as pymatdf
+from . import atomic_properties_webele as apwebele
 
 # Here using already available dataframe in bokeh package element and modify it contents
 
@@ -52,7 +54,7 @@ def clean():
     a = [*range(4,18,1),*range(4,18,1)]
     for count, obj in enumerate(a):
         df2.iloc[count,df2.columns.get_loc("group")] = str(obj)
-    
+
     new = [df1, df2]
     comb = pd.concat(new)
     df3 = comb.drop(columns=['electronegativity', 'atomic radius','ion radius','van der Waals radius','IE-1','EA','standard state','bonding type','melting point','boiling point','density','year discovered'],inplace=False)
@@ -63,7 +65,7 @@ def clean():
 def featuref():
     '''
     Generates the python list of features needed for interactive dropdown menu in heatmap plot. This functions gives features list for element properties from atomic_properties_dft module and spin set to "False".
-    '''    
+    '''
     all_features = list(dffa.columns)
     remove = ['symbol','name','CPK','electronic configuration','metal','group','period']
     Feature = []
@@ -75,7 +77,7 @@ def featuref():
 def featuret():
     '''
     Generates the python list of features needed for interactive dropdown menu in heatmap plot. This functions gives features list for element properties from atomic_properties_dft module and spin set to "True".
-    '''    
+    '''
     all_features = list(dftr.columns)
     remove = ['symbol','name','CPK','electronic configuration','metal','group','period']
     Feature = []
@@ -87,7 +89,7 @@ def featuret():
 def featurelda():
     '''
     Generates the python list of features needed for interactive dropdown menu in heatmap plot. This functions gives features list for element properties from atomic_properties_lda2015 module.
-    '''    
+    '''
     all_features = list(dflda.columns)
     remove = ['symbol','name','CPK','electronic configuration','metal','group','period']
     Feature = []
@@ -99,7 +101,7 @@ def featurelda():
 def featurematmin():
     '''
     Generates the python list of features needed for interactive dropdown menu in heatmap plot. This functions gives features list for element properties from atomic_properties_magpie module.
-    '''    
+    '''
     all_features = list(dfmatm.columns)
     remove = ['symbol','name','CPK','electronic configuration','metal','group','period','atomic_isnonmetal',
               'atomic_ismetalloid','atomic_ismetal','atomic_isfblock','atomic_isdblock','atomic_isalkali','atomic_ie',
@@ -113,7 +115,7 @@ def featurematmin():
 def featurepymat():
     '''
     Generates the python list of features needed for interactive dropdown menu in heatmap plot. This functions gives features list for element properties from atomic_properties_pymat module.
-    '''    
+    '''
     all_features = list(dfpymat.columns)
     remove = ['symbol','name','CPK','electronic configuration','metal','group','period',
               'ionic_radii_hs','ionic_radii_ls','icsd_oxd_states','atomic_refractive_index','shannon_radii',
@@ -124,11 +126,11 @@ def featurepymat():
         if element not in remove:
             Feature.append(element)
     return Feature
-    
+
 def featurewebele():
     '''
     Generates the python list of features needed for interactive dropdown menu in heatmap plot. This functions gives features list for element properties from atomic_properties_webele module.
-    '''     
+    '''
     all_features = list(dfwebele.columns)
     remove = ['symbol','CPK','electronic configuration','metal','group','period']
     Feature = []
@@ -143,254 +145,254 @@ def ptableplotgent(Feature):
     Sets all the heatmap plot properties like text, colour mappers ,tittle, axis, legend etc for atomic_properties_dft module(Spin="True").
     '''
     source = ColumnDataSource(dftr)
-  
+
     p2 = figure(plot_width=950, plot_height=500,title="Periodic Table",
            x_range=groups, y_range=list(reversed(periods)), toolbar_location=None,tools="hover")
-    
-    
+
+
     if Feature == 'atomic_ea' :
-        color_mapper = linear_cmap(field_name = 'atomic_ea', palette = Colorblind[8], 
-                                   low = dftr['atomic_ea'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_ea', palette = Colorblind[8],
+                                   low = dftr['atomic_ea'].min(),
                                    high = dftr['atomic_ea'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_ea", "@atomic_ea eV"),
         ]
-        
+
     if Feature == 'atomic_ip' :
-        color_mapper = linear_cmap(field_name = 'atomic_ip', palette = Colorblind[8], 
-                                   low = dftr['atomic_ip'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_ip', palette = Colorblind[8],
+                                   low = dftr['atomic_ip'].min(),
                                    high = dftr['atomic_ip'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_ip", "@atomic_ip eV"),
         ]
-        
+
     if Feature == 'atomic number' :
-        color_mapper = linear_cmap(field_name = 'atomic number', palette = Colorblind[8], 
-                                   low = dftr['atomic number'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic number', palette = Colorblind[8],
+                                   low = dftr['atomic number'].min(),
                                    high = dftr['atomic number'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Atomic number", "@{atomic number}"),
         ("Type", "@metal"),
         ]
-        
+
     if Feature == 'atomic mass' :
-        color_mapper = linear_cmap(field_name = 'atomic mass', palette = Colorblind[8], 
-                                   low = dftr['atomic mass'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic mass', palette = Colorblind[8],
+                                   low = dftr['atomic mass'].min(),
                                    high = dftr['atomic mass'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Atomic mass", "@{atomic mass} amu"),
         ("Type", "@metal")
         ]
-        
+
     if Feature == 'atomic_hfomo' :
-        color_mapper = linear_cmap(field_name = 'atomic_hfomo', palette = Colorblind[8], 
-                                   low = dftr['atomic_hfomo'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_hfomo', palette = Colorblind[8],
+                                   low = dftr['atomic_hfomo'].min(),
                                    high = dftr['atomic_hfomo'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_hfomo", "@atomic_hfomo eV"),
         ]
-    
+
     if Feature == 'atomic_hpomo' :
-        color_mapper = linear_cmap(field_name = 'atomic_hpomo', palette = Colorblind[8], 
-                                   low = dftr['atomic_hpomo'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_hpomo', palette = Colorblind[8],
+                                   low = dftr['atomic_hpomo'].min(),
                                    high = dftr['atomic_hpomo'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_hpomo", "@atomic_hpomo eV"),
         ]
-        
+
     if Feature == 'atomic_lfumo' :
-        color_mapper = linear_cmap(field_name = 'atomic_lfumo', palette = Colorblind[8], 
-                                   low = dftr['atomic_lfumo'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_lfumo', palette = Colorblind[8],
+                                   low = dftr['atomic_lfumo'].min(),
                                    high = dftr['atomic_lfumo'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_lfumo", "@atomic_lfumo eV"),
         ]
-        
+
     if Feature == 'atomic_hpumo' :
-        color_mapper = linear_cmap(field_name = 'atomic_hpumo', palette = Colorblind[8], 
-                                   low = dftr['atomic_hpumo'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_hpumo', palette = Colorblind[8],
+                                   low = dftr['atomic_hpumo'].min(),
                                    high = dftr['atomic_hpumo'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_lpumo", "@atomic_hpumo eV"),
         ]
-        
+
     if Feature == 'atomic_lpumo' :
-        color_mapper = linear_cmap(field_name = 'atomic_lpumo', palette = Colorblind[8], 
-                                   low = dftr['atomic_lpumo'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_lpumo', palette = Colorblind[8],
+                                   low = dftr['atomic_lpumo'].min(),
                                    high = dftr['atomic_lpumo'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_lpumo", "@atomic_lpumo eV"),
         ]
-        
+
     if Feature == 'atomic_ip_by_half_charged_homo' :
-        color_mapper = linear_cmap(field_name = 'atomic_ip_by_half_charged_homo', palette = Colorblind[8], 
-                                   low = dftr['atomic_ip_by_half_charged_homo'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_ip_by_half_charged_homo', palette = Colorblind[8],
+                                   low = dftr['atomic_ip_by_half_charged_homo'].min(),
                                    high = dftr['atomic_ip_by_half_charged_homo'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_ip_by_half_charged_homo", "@atomic_ip_by_half_charged_homo eV"),
         ]
-        
+
     if Feature == 'atomic_ea_by_half_charged_homo' :
-        color_mapper = linear_cmap(field_name = 'atomic_ea_by_half_charged_homo', palette = Colorblind[8], 
-                                   low = dftr['atomic_ea_by_half_charged_homo'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_ea_by_half_charged_homo', palette = Colorblind[8],
+                                   low = dftr['atomic_ea_by_half_charged_homo'].min(),
                                    high = dftr['atomic_ea_by_half_charged_homo'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_ea_by_half_charged_homo", "@atomic_ea_by_half_charged_homo eV"),
         ]
-        
+
     if Feature == 'atomic_r_up_s_neg_1' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_up_s_neg_1', palette = Colorblind[8], 
-                                   low = dftr['atomic_r_up_s_neg_1'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_up_s_neg_1', palette = Colorblind[8],
+                                   low = dftr['atomic_r_up_s_neg_1'].min(),
                                    high = dftr['atomic_r_up_s_neg_1'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_r_up_s_neg_1", "@atomic_r_up_s_neg_1 pm"),
         ]
-        
+
     if Feature == 'atomic_r_dn_s_neg_1' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_dn_s_neg_1', palette = Colorblind[8], 
-                                   low = dftr['atomic_r_dn_s_neg_1'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_dn_s_neg_1', palette = Colorblind[8],
+                                   low = dftr['atomic_r_dn_s_neg_1'].min(),
                                    high = dftr['atomic_r_dn_s_neg_1'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_r_dn_s_neg_1", "@atomic_r_dn_s_neg_1 pm"),
         ]
-        
+
     if Feature == 'atomic_r_up_p_neg_1' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_up_p_neg_1', palette = Colorblind[8], 
-                                   low = dftr['atomic_r_up_p_neg_1'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_up_p_neg_1', palette = Colorblind[8],
+                                   low = dftr['atomic_r_up_p_neg_1'].min(),
                                    high = dftr['atomic_r_up_p_neg_1'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_r_up_p_neg_1", "@atomic_r_up_p_neg_1 pm"),
         ]
-        
+
     if Feature == 'atomic_r_dn_p_neg_1' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_dn_p_neg_1', palette = Colorblind[8], 
-                                   low = dftr['atomic_r_dn_p_neg_1'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_dn_p_neg_1', palette = Colorblind[8],
+                                   low = dftr['atomic_r_dn_p_neg_1'].min(),
                                    high = dftr['atomic_r_dn_p_neg_1'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_r_dn_p_neg_1", "@atomic_r_dn_p_neg_1 pm"),
         ]
-        
+
     if Feature == 'atomic_r_dn_d_neg_1' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_dn_d_neg_1', palette = Colorblind[8], 
-                                   low = dftr['atomic_r_dn_d_neg_1'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_dn_d_neg_1', palette = Colorblind[8],
+                                   low = dftr['atomic_r_dn_d_neg_1'].min(),
                                    high = dftr['atomic_r_dn_d_neg_1'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_r_dn_d_neg_1", "@atomic_r_dn_d_neg_1 pm"),
         ]
-        
+
     if Feature == 'atomic_r_up_val_neg_1' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_up_val_neg_1', palette = Colorblind[8], 
-                                   low = dftr['atomic_r_up_val_neg_1'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_up_val_neg_1', palette = Colorblind[8],
+                                   low = dftr['atomic_r_up_val_neg_1'].min(),
                                    high = dftr['atomic_r_up_val_neg_1'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_r_up_val_neg_1", "@atomic_r_up_val_neg_1 pm"),
         ]
-        
+
     if Feature == 'atomic_r_dn_val_neg_1' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_dn_val_neg_1', palette = Colorblind[8], 
-                                   low = dftr['atomic_r_dn_val_neg_1'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_dn_val_neg_1', palette = Colorblind[8],
+                                   low = dftr['atomic_r_dn_val_neg_1'].min(),
                                    high = dftr['atomic_r_dn_val_neg_1'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_r_dn_val_neg_1", "@atomic_r_dn_val_neg_1 pm"),
         ]
-        
+
     if Feature == 'atomic_r_up_s_neg_05' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_up_s_neg_05', palette = Colorblind[8], 
-                                   low = dftr['atomic_r_up_s_neg_05'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_up_s_neg_05', palette = Colorblind[8],
+                                   low = dftr['atomic_r_up_s_neg_05'].min(),
                                    high = dftr['atomic_r_up_s_neg_05'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_r_up_s_neg_05", "@atomic_r_up_s_neg_05 pm"),
         ]
-        
+
     if Feature == 'atomic_r_dn_s_neg_05' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_dn_s_neg_05', palette = Colorblind[8], 
-                                   low = dftr['atomic_r_dn_s_neg_05'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_dn_s_neg_05', palette = Colorblind[8],
+                                   low = dftr['atomic_r_dn_s_neg_05'].min(),
                                    high = dftr['atomic_r_dn_s_neg_05'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_r_dn_s_neg_05", "@atomic_r_dn_s_neg_05 pm"),
         ]
-        
+
     if Feature == 'atomic_r_up_p_neg_05' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_up_p_neg_05', palette = Colorblind[8], 
-                                   low = dftr['atomic_r_up_p_neg_05'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_up_p_neg_05', palette = Colorblind[8],
+                                   low = dftr['atomic_r_up_p_neg_05'].min(),
                                    high = dftr['atomic_r_up_p_neg_05'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_r_up_p_neg_05", "@atomic_r_up_p_neg_05 pm"),
         ]
-        
+
     if Feature == 'atomic_r_dn_p_neg_05' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_dn_p_neg_05', palette = Colorblind[8], 
-                                   low = dftr['atomic_r_dn_p_neg_05'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_dn_p_neg_05', palette = Colorblind[8],
+                                   low = dftr['atomic_r_dn_p_neg_05'].min(),
                                    high = dftr['atomic_r_dn_p_neg_05'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_r_dn_p_neg_05", "@atomic_r_dn_p_neg_05 pm"),
         ]
-        
+
     if Feature == 'atomic_r_up_d_neg_05' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_up_d_neg_05', palette = Colorblind[8], 
-                                   low = dftr['atomic_r_up_d_neg_05'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_up_d_neg_05', palette = Colorblind[8],
+                                   low = dftr['atomic_r_up_d_neg_05'].min(),
                                    high = dftr['atomic_r_up_d_neg_05'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_r_up_d_neg_05", "@atomic_r_up_d_neg_05 pm"),
         ]
-        
+
     if Feature == 'atomic_r_dn_d_neg_05' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_dn_d_neg_05', palette = Colorblind[8], 
-                                   low = dftr['atomic_r_dn_d_neg_05'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_dn_d_neg_05', palette = Colorblind[8],
+                                   low = dftr['atomic_r_dn_d_neg_05'].min(),
                                    high = dftr['atomic_r_dn_d_neg_05'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_r_dn_d_neg_05", "@atomic_r_dn_d_neg_05 pm"),
         ]
-        
+
     if Feature == 'atomic_r_up_val_neg_05' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_up_val_neg_05', palette = Colorblind[8], 
-                                   low = dftr['atomic_r_up_val_neg_05'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_up_val_neg_05', palette = Colorblind[8],
+                                   low = dftr['atomic_r_up_val_neg_05'].min(),
                                    high = dftr['atomic_r_up_val_neg_05'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -399,8 +401,8 @@ def ptableplotgent(Feature):
         ]
 
     if Feature == 'atomic_r_dn_val_neg_05' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_dn_val_neg_05', palette = Colorblind[8], 
-                                   low = dftr['atomic_r_dn_val_neg_05'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_dn_val_neg_05', palette = Colorblind[8],
+                                   low = dftr['atomic_r_dn_val_neg_05'].min(),
                                    high = dftr['atomic_r_dn_val_neg_05'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -409,8 +411,8 @@ def ptableplotgent(Feature):
         ]
 
     if Feature == 'atomic_r_up_s' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_up_s', palette = Colorblind[8], 
-                                   low = dftr['atomic_r_up_s'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_up_s', palette = Colorblind[8],
+                                   low = dftr['atomic_r_up_s'].min(),
                                    high = dftr['atomic_r_up_s'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -419,8 +421,8 @@ def ptableplotgent(Feature):
         ]
 
     if Feature == 'atomic_r_dn_s' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_dn_s', palette = Colorblind[8], 
-                                   low = dftr['atomic_r_dn_s'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_dn_s', palette = Colorblind[8],
+                                   low = dftr['atomic_r_dn_s'].min(),
                                    high = dftr['atomic_r_dn_s'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -429,8 +431,8 @@ def ptableplotgent(Feature):
         ]
 
     if Feature == 'atomic_r_up_p' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_up_p', palette = Colorblind[8], 
-                                   low = dftr['atomic_r_up_p'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_up_p', palette = Colorblind[8],
+                                   low = dftr['atomic_r_up_p'].min(),
                                    high = dftr['atomic_r_up_p'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -439,8 +441,8 @@ def ptableplotgent(Feature):
         ]
 
     if Feature == 'atomic_r_dn_p' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_dn_p', palette = Colorblind[8], 
-                                   low = dftr['atomic_r_dn_p'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_dn_p', palette = Colorblind[8],
+                                   low = dftr['atomic_r_dn_p'].min(),
                                    high = dftr['atomic_r_dn_p'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -449,8 +451,8 @@ def ptableplotgent(Feature):
         ]
 
     if Feature == 'atomic_r_up_d' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_up_d', palette = Colorblind[8], 
-                                   low = dftr['atomic_r_up_d'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_up_d', palette = Colorblind[8],
+                                   low = dftr['atomic_r_up_d'].min(),
                                    high = dftr['atomic_r_up_d'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -459,8 +461,8 @@ def ptableplotgent(Feature):
         ]
 
     if Feature == 'atomic_r_dn_d' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_dn_d', palette = Colorblind[8], 
-                                   low = dftr['atomic_r_dn_d'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_dn_d', palette = Colorblind[8],
+                                   low = dftr['atomic_r_dn_d'].min(),
                                    high = dftr['atomic_r_dn_d'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -469,8 +471,8 @@ def ptableplotgent(Feature):
         ]
 
     if Feature == 'atomic_r_up_val' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_up_val', palette = Colorblind[8], 
-                                   low = dftr['atomic_r_up_val'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_up_val', palette = Colorblind[8],
+                                   low = dftr['atomic_r_up_val'].min(),
                                    high = dftr['atomic_r_up_val'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -479,8 +481,8 @@ def ptableplotgent(Feature):
         ]
 
     if Feature == 'atomic_r_dn_val' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_dn_val', palette = Colorblind[8], 
-                                   low = dftr['atomic_r_dn_val'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_dn_val', palette = Colorblind[8],
+                                   low = dftr['atomic_r_dn_val'].min(),
                                    high = dftr['atomic_r_dn_val'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -489,8 +491,8 @@ def ptableplotgent(Feature):
         ]
 
     if Feature == 'atomic_r_up_s_05' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_up_s_05', palette = Colorblind[8], 
-                                   low = dftr['atomic_r_up_s_05'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_up_s_05', palette = Colorblind[8],
+                                   low = dftr['atomic_r_up_s_05'].min(),
                                    high = dftr['atomic_r_up_s_05'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -499,8 +501,8 @@ def ptableplotgent(Feature):
         ]
 
     if Feature == 'atomic_r_dn_s_05' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_dn_s_05', palette = Colorblind[8], 
-                                   low = dftr['atomic_r_dn_s_05'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_dn_s_05', palette = Colorblind[8],
+                                   low = dftr['atomic_r_dn_s_05'].min(),
                                    high = dftr['atomic_r_dn_s_05'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -509,8 +511,8 @@ def ptableplotgent(Feature):
         ]
 
     if Feature == 'atomic_r_up_p_05' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_up_p_05', palette = Colorblind[8], 
-                                   low = dftr['atomic_r_up_p_05'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_up_p_05', palette = Colorblind[8],
+                                   low = dftr['atomic_r_up_p_05'].min(),
                                    high = dftr['atomic_r_up_p_05'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -519,8 +521,8 @@ def ptableplotgent(Feature):
         ]
 
     if Feature == 'atomic_r_dn_p_05' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_dn_p_05', palette = Colorblind[8], 
-                                   low = dftr['atomic_r_dn_p_05'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_dn_p_05', palette = Colorblind[8],
+                                   low = dftr['atomic_r_dn_p_05'].min(),
                                    high = dftr['atomic_r_dn_p_05'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -529,8 +531,8 @@ def ptableplotgent(Feature):
         ]
 
     if Feature == 'atomic_r_up_d_05' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_up_d_05', palette = Colorblind[8], 
-                                   low = dftr['atomic_r_up_d_05'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_up_d_05', palette = Colorblind[8],
+                                   low = dftr['atomic_r_up_d_05'].min(),
                                    high = dftr['atomic_r_up_d_05'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -539,8 +541,8 @@ def ptableplotgent(Feature):
         ]
 
     if Feature == 'atomic_r_dn_d_05' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_dn_d_05', palette = Colorblind[8], 
-                                   low = dftr['atomic_r_dn_d_05'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_dn_d_05', palette = Colorblind[8],
+                                   low = dftr['atomic_r_dn_d_05'].min(),
                                    high = dftr['atomic_r_dn_d_05'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -549,8 +551,8 @@ def ptableplotgent(Feature):
         ]
 
     if Feature == 'atomic_r_up_val_05' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_up_val_05', palette = Colorblind[8], 
-                                   low = dftr['atomic_r_up_val_05'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_up_val_05', palette = Colorblind[8],
+                                   low = dftr['atomic_r_up_val_05'].min(),
                                    high = dftr['atomic_r_up_val_05'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -559,8 +561,8 @@ def ptableplotgent(Feature):
         ]
 
     if Feature == 'atomic_r_dn_val_05' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_dn_val_05', palette = Colorblind[8], 
-                                   low = dftr['atomic_r_dn_val_05'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_dn_val_05', palette = Colorblind[8],
+                                   low = dftr['atomic_r_dn_val_05'].min(),
                                    high = dftr['atomic_r_dn_val_05'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -569,8 +571,8 @@ def ptableplotgent(Feature):
         ]
 
     if Feature == 'atomic_r_up_s_1' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_up_s_1', palette = Colorblind[8], 
-                                   low = dftr['atomic_r_up_s_1'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_up_s_1', palette = Colorblind[8],
+                                   low = dftr['atomic_r_up_s_1'].min(),
                                    high = dftr['atomic_r_up_s_1'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -579,8 +581,8 @@ def ptableplotgent(Feature):
         ]
 
     if Feature == 'atomic_r_dn_s_1' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_dn_s_1', palette = Colorblind[8], 
-                                   low = dftr['atomic_r_dn_s_1'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_dn_s_1', palette = Colorblind[8],
+                                   low = dftr['atomic_r_dn_s_1'].min(),
                                    high = dftr['atomic_r_dn_s_1'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -589,8 +591,8 @@ def ptableplotgent(Feature):
         ]
 
     if Feature == 'atomic_r_up_p_1' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_up_p_1', palette = Colorblind[8], 
-                                   low = dftr['atomic_r_up_p_1'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_up_p_1', palette = Colorblind[8],
+                                   low = dftr['atomic_r_up_p_1'].min(),
                                    high = dftr['atomic_r_up_p_1'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -599,8 +601,8 @@ def ptableplotgent(Feature):
         ]
 
     if Feature == 'atomic_r_dn_p_1' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_dn_p_1', palette = Colorblind[8], 
-                                   low = dftr['atomic_r_dn_p_1'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_dn_p_1', palette = Colorblind[8],
+                                   low = dftr['atomic_r_dn_p_1'].min(),
                                    high = dftr['atomic_r_dn_p_1'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -609,8 +611,8 @@ def ptableplotgent(Feature):
         ]
 
     if Feature == 'atomic_r_up_d_1' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_up_d_1', palette = Colorblind[8], 
-                                   low = dftr['atomic_r_up_d_1'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_up_d_1', palette = Colorblind[8],
+                                   low = dftr['atomic_r_up_d_1'].min(),
                                    high = dftr['atomic_r_up_d_1'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -619,8 +621,8 @@ def ptableplotgent(Feature):
         ]
 
     if Feature == 'atomic_r_dn_d_1' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_dn_d_1', palette = Colorblind[8], 
-                                   low = dftr['atomic_r_dn_d_1'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_dn_d_1', palette = Colorblind[8],
+                                   low = dftr['atomic_r_dn_d_1'].min(),
                                    high = dftr['atomic_r_dn_d_1'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -629,8 +631,8 @@ def ptableplotgent(Feature):
         ]
 
     if Feature == 'atomic_r_up_val_1' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_up_val_1', palette = Colorblind[8], 
-                                   low = dftr['atomic_r_up_val_1'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_up_val_1', palette = Colorblind[8],
+                                   low = dftr['atomic_r_up_val_1'].min(),
                                    high = dftr['atomic_r_up_val_1'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -639,8 +641,8 @@ def ptableplotgent(Feature):
         ]
 
     if Feature == 'atomic_r_dn_val_1' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_dn_val_1', palette = Colorblind[8], 
-                                   low = dftr['atomic_r_dn_val_1'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_dn_val_1', palette = Colorblind[8],
+                                   low = dftr['atomic_r_dn_val_1'].min(),
                                    high = dftr['atomic_r_dn_val_1'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -648,8 +650,8 @@ def ptableplotgent(Feature):
         ("atomic_r_dn_val_1", "@atomic_r_dn_val_1 pm"),
         ]
 
-        
-    
+
+
     p2.rect("group", "period", 0.90, 0.90, source= source, fill_alpha=0.6,color=color_mapper)
     text_props = {"source":source, "text_align": "left", "text_baseline": "middle", "text_color" : "black"}
 
@@ -684,34 +686,34 @@ def ptableplotgenf(Feature):
     Sets all the heatmap plot properties like text, colour mappers ,tittle, axis, legend etc for atomic_properties_dft module(Spin="False").
     '''
     source = ColumnDataSource(dffa)
-  
+
     p2 = figure(plot_width=950, plot_height=500,title="Periodic Table",
            x_range=groups, y_range=list(reversed(periods)), toolbar_location=None,tools="hover")
-    
-    
+
+
     if Feature == 'atomic_ea' :
-        color_mapper = linear_cmap(field_name = 'atomic_ea', palette = Colorblind[8], 
-                                   low = dffa['atomic_ea'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_ea', palette = Colorblind[8],
+                                   low = dffa['atomic_ea'].min(),
                                    high = dffa['atomic_ea'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_ea", "@atomic_ea eV"),
         ]
-        
+
     if Feature == 'atomic_ip' :
-        color_mapper = linear_cmap(field_name = 'atomic_ip', palette = Colorblind[8], 
-                                   low = dffa['atomic_ip'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_ip', palette = Colorblind[8],
+                                   low = dffa['atomic_ip'].min(),
                                    high = dffa['atomic_ip'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_ip", "@atomic_ip eV"),
         ]
-        
+
     if Feature == 'atomic number' :
-        color_mapper = linear_cmap(field_name = 'atomic number', palette = Colorblind[8], 
-                                   low = dffa['atomic number'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic number', palette = Colorblind[8],
+                                   low = dffa['atomic number'].min(),
                                    high = dffa['atomic number'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -719,10 +721,10 @@ def ptableplotgenf(Feature):
         ("Type", "@metal"),
         ]
 
-        
+
     if Feature == 'atomic mass' :
-        color_mapper = linear_cmap(field_name = 'atomic mass', palette = Colorblind[8], 
-                                   low = dffa['atomic mass'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic mass', palette = Colorblind[8],
+                                   low = dffa['atomic mass'].min(),
                                    high = dffa['atomic mass'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -730,10 +732,10 @@ def ptableplotgenf(Feature):
         ("Type", "@metal")
         ]
 
-        
+
     if Feature == 'atomic_hfomo' :
-        color_mapper = linear_cmap(field_name = 'atomic_hfomo', palette = Colorblind[8], 
-                                   low = dffa['atomic_hfomo'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_hfomo', palette = Colorblind[8],
+                                   low = dffa['atomic_hfomo'].min(),
                                    high = dffa['atomic_hfomo'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -741,10 +743,10 @@ def ptableplotgenf(Feature):
         ("atomic_hfomo", "@atomic_hfomo eV"),
         ]
 
-    
+
     if Feature == 'atomic_hpomo' :
-        color_mapper = linear_cmap(field_name = 'atomic_hpomo', palette = Colorblind[8], 
-                                   low = dffa['atomic_hpomo'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_hpomo', palette = Colorblind[8],
+                                   low = dffa['atomic_hpomo'].min(),
                                    high = dffa['atomic_hpomo'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -752,10 +754,10 @@ def ptableplotgenf(Feature):
         ("atomic_hpomo", "@atomic_hpomo eV"),
         ]
 
-        
+
     if Feature == 'atomic_lfumo' :
-        color_mapper = linear_cmap(field_name = 'atomic_lfumo', palette = Colorblind[8], 
-                                   low = dffa['atomic_lfumo'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_lfumo', palette = Colorblind[8],
+                                   low = dffa['atomic_lfumo'].min(),
                                    high = dffa['atomic_lfumo'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -763,10 +765,10 @@ def ptableplotgenf(Feature):
         ("atomic_lfumo", "@atomic_lfumo eV"),
         ]
 
-        
+
     if Feature == 'atomic_hpumo' :
-        color_mapper = linear_cmap(field_name = 'atomic_hpumo', palette = Colorblind[8], 
-                                   low = dffa['atomic_hpumo'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_hpumo', palette = Colorblind[8],
+                                   low = dffa['atomic_hpumo'].min(),
                                    high = dffa['atomic_hpumo'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -774,10 +776,10 @@ def ptableplotgenf(Feature):
         ("atomic_lpumo", "@atomic_hpumo eV"),
         ]
 
-        
+
     if Feature == 'atomic_lpumo' :
-        color_mapper = linear_cmap(field_name = 'atomic_lpumo', palette = Colorblind[8], 
-                                   low = dffa['atomic_lpumo'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_lpumo', palette = Colorblind[8],
+                                   low = dffa['atomic_lpumo'].min(),
                                    high = dffa['atomic_lpumo'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -785,10 +787,10 @@ def ptableplotgenf(Feature):
         ("atomic_lpumo", "@atomic_lpumo eV"),
         ]
 
-        
+
     if Feature == 'atomic_ip_by_half_charged_homo' :
-        color_mapper = linear_cmap(field_name = 'atomic_ip_by_half_charged_homo', palette = Colorblind[8], 
-                                   low = dffa['atomic_ip_by_half_charged_homo'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_ip_by_half_charged_homo', palette = Colorblind[8],
+                                   low = dffa['atomic_ip_by_half_charged_homo'].min(),
                                    high = dffa['atomic_ip_by_half_charged_homo'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -796,10 +798,10 @@ def ptableplotgenf(Feature):
         ("atomic_ip_by_half_charged_homo", "@atomic_ip_by_half_charged_homo eV"),
         ]
 
-        
+
     if Feature == 'atomic_ea_by_half_charged_homo' :
-        color_mapper = linear_cmap(field_name = 'atomic_ea_by_half_charged_homo', palette = Colorblind[8], 
-                                   low = dffa['atomic_ea_by_half_charged_homo'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_ea_by_half_charged_homo', palette = Colorblind[8],
+                                   low = dffa['atomic_ea_by_half_charged_homo'].min(),
                                    high = dffa['atomic_ea_by_half_charged_homo'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -807,12 +809,12 @@ def ptableplotgenf(Feature):
         ("atomic_ea_by_half_charged_homo", "@atomic_ea_by_half_charged_homo eV"),
         ]
 
-        
+
     #non spin features
-        
+
     if Feature == 'atomic_r_s_neg_1' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_s_neg_1', palette = Colorblind[8], 
-                                   low = dffa['atomic_r_s_neg_1'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_s_neg_1', palette = Colorblind[8],
+                                   low = dffa['atomic_r_s_neg_1'].min(),
                                    high = dffa['atomic_r_s_neg_1'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -821,8 +823,8 @@ def ptableplotgenf(Feature):
         ]
 
     if Feature == 'atomic_r_p_neg_1' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_p_neg_1', palette = Colorblind[8], 
-                                   low = dffa['atomic_r_p_neg_1'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_p_neg_1', palette = Colorblind[8],
+                                   low = dffa['atomic_r_p_neg_1'].min(),
                                    high = dffa['atomic_r_p_neg_1'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -831,8 +833,8 @@ def ptableplotgenf(Feature):
         ]
 
     if Feature == 'atomic_r_d_neg_1' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_d_neg_1', palette = Colorblind[8], 
-                                   low = dffa['atomic_r_d_neg_1'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_d_neg_1', palette = Colorblind[8],
+                                   low = dffa['atomic_r_d_neg_1'].min(),
                                    high = dffa['atomic_r_d_neg_1'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -841,8 +843,8 @@ def ptableplotgenf(Feature):
         ]
 
     if Feature == 'atomic_r_val_neg_1' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_val_neg_1', palette = Colorblind[8], 
-                                   low = dffa['atomic_r_val_neg_1'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_val_neg_1', palette = Colorblind[8],
+                                   low = dffa['atomic_r_val_neg_1'].min(),
                                    high = dffa['atomic_r_val_neg_1'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -851,8 +853,8 @@ def ptableplotgenf(Feature):
         ]
 
     if Feature == 'atomic_r_s_neg_05' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_s_neg_05', palette = Colorblind[8], 
-                                   low = dffa['atomic_r_s_neg_05'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_s_neg_05', palette = Colorblind[8],
+                                   low = dffa['atomic_r_s_neg_05'].min(),
                                    high = dffa['atomic_r_s_neg_05'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -861,8 +863,8 @@ def ptableplotgenf(Feature):
         ]
 
     if Feature == 'atomic_r_p_neg_05' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_p_neg_05', palette = Colorblind[8], 
-                                   low = dffa['atomic_r_p_neg_05'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_p_neg_05', palette = Colorblind[8],
+                                   low = dffa['atomic_r_p_neg_05'].min(),
                                    high = dffa['atomic_r_p_neg_05'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -871,18 +873,18 @@ def ptableplotgenf(Feature):
         ]
 
     if Feature == 'atomic_r_d_neg_05' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_d_neg_05', palette = Colorblind[8], 
-                                   low = dffa['atomic_r_d_neg_05'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_d_neg_05', palette = Colorblind[8],
+                                   low = dffa['atomic_r_d_neg_05'].min(),
                                    high = dffa['atomic_r_d_neg_05'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_r_d_neg_05", "@atomic_r_d_neg_05 pm"),
         ]
- 
+
     if Feature == 'atomic_r_val_neg_05' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_val_neg_05', palette = Colorblind[8], 
-                                   low = dffa['atomic_r_val_neg_05'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_val_neg_05', palette = Colorblind[8],
+                                   low = dffa['atomic_r_val_neg_05'].min(),
                                    high = dffa['atomic_r_val_neg_05'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -891,8 +893,8 @@ def ptableplotgenf(Feature):
         ]
 
     if Feature == 'atomic_r_s' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_s', palette = Colorblind[8], 
-                                   low = dffa['atomic_r_s'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_s', palette = Colorblind[8],
+                                   low = dffa['atomic_r_s'].min(),
                                    high = dffa['atomic_r_s'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -901,18 +903,18 @@ def ptableplotgenf(Feature):
         ]
 
     if Feature == 'atomic_r_p' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_p', palette = Colorblind[8], 
-                                   low = dffa['atomic_r_p'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_p', palette = Colorblind[8],
+                                   low = dffa['atomic_r_p'].min(),
                                    high = dffa['atomic_r_p'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_r_p", "@atomic_r_p pm"),
         ]
- 
+
     if Feature == 'atomic_r_d' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_d', palette = Colorblind[8], 
-                                   low = dffa['atomic_r_d'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_d', palette = Colorblind[8],
+                                   low = dffa['atomic_r_d'].min(),
                                    high = dffa['atomic_r_d'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -921,8 +923,8 @@ def ptableplotgenf(Feature):
         ]
 
     if Feature == 'atomic_r_val' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_val', palette = Colorblind[8], 
-                                   low = dffa['atomic_r_val'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_val', palette = Colorblind[8],
+                                   low = dffa['atomic_r_val'].min(),
                                    high = dffa['atomic_r_val'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -931,28 +933,28 @@ def ptableplotgenf(Feature):
         ]
 
     if Feature == 'atomic_r_s_05' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_s_05', palette = Colorblind[8], 
-                                   low = dffa['atomic_r_s_05'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_s_05', palette = Colorblind[8],
+                                   low = dffa['atomic_r_s_05'].min(),
                                    high = dffa['atomic_r_s_05'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_r_s_05", "@atomic_r_s_05 pm"),
         ]
- 
+
     if Feature == 'atomic_r_p_05' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_p_05', palette = Colorblind[8], 
-                                   low = dffa['atomic_r_p_05'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_p_05', palette = Colorblind[8],
+                                   low = dffa['atomic_r_p_05'].min(),
                                    high = dffa['atomic_r_p_05'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_r_p_05", "@atomic_r_p_05 pm"),
         ]
- 
+
     if Feature == 'atomic_r_d_05' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_d_05', palette = Colorblind[8], 
-                                   low = dffa['atomic_r_d_05'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_d_05', palette = Colorblind[8],
+                                   low = dffa['atomic_r_d_05'].min(),
                                    high = dffa['atomic_r_d_05'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -961,8 +963,8 @@ def ptableplotgenf(Feature):
         ]
 
     if Feature == 'atomic_r_val_05' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_val_05', palette = Colorblind[8], 
-                                   low = dffa['atomic_r_val_05'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_val_05', palette = Colorblind[8],
+                                   low = dffa['atomic_r_val_05'].min(),
                                    high = dffa['atomic_r_val_05'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -971,8 +973,8 @@ def ptableplotgenf(Feature):
         ]
 
     if Feature == 'atomic_r_s_1' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_s_1', palette = Colorblind[8], 
-                                   low = dffa['atomic_r_s_1'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_s_1', palette = Colorblind[8],
+                                   low = dffa['atomic_r_s_1'].min(),
                                    high = dffa['atomic_r_s_1'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -981,8 +983,8 @@ def ptableplotgenf(Feature):
         ]
 
     if Feature == 'atomic_r_p_1' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_p_1', palette = Colorblind[8], 
-                                   low = dffa['atomic_r_p_1'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_p_1', palette = Colorblind[8],
+                                   low = dffa['atomic_r_p_1'].min(),
                                    high = dffa['atomic_r_p_1'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -991,8 +993,8 @@ def ptableplotgenf(Feature):
         ]
 
     if Feature == 'atomic_r_d_1' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_d_1', palette = Colorblind[8], 
-                                   low = dffa['atomic_r_d_1'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_d_1', palette = Colorblind[8],
+                                   low = dffa['atomic_r_d_1'].min(),
                                    high = dffa['atomic_r_d_1'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -1001,15 +1003,15 @@ def ptableplotgenf(Feature):
         ]
 
     if Feature == 'atomic_r_val_1' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_val_1', palette = Colorblind[8], 
-                                   low = dffa['atomic_r_val_1'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_val_1', palette = Colorblind[8],
+                                   low = dffa['atomic_r_val_1'].min(),
                                    high = dffa['atomic_r_val_1'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_r_val_1", "@atomic_r_val_1 pm"),
         ]
- 
+
     p2.rect("group", "period", 0.90, 0.90, source= source, fill_alpha=0.6,color=color_mapper)
     text_props = {"source":source, "text_align": "left", "text_baseline": "middle", "text_color" : "black"}
 
@@ -1043,35 +1045,35 @@ def ptableplotgenlda(Feature):
     Sets all the heatmap plot properties like text, colour mappers ,tittle, axis, legend etc for atomic_properties_lda2015 module.
     '''
     source = ColumnDataSource(dflda)
-  
+
     p2 = figure(plot_width=950, plot_height=500,title="Periodic Table",
            x_range=groups, y_range=list(reversed(periods)), toolbar_location=None,tools="hover")
-    
-    
+
+
     if Feature == 'atomic_ea' :
-        color_mapper = linear_cmap(field_name = 'atomic_ea', palette = Colorblind[8], 
-                                   low = dflda['atomic_ea'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_ea', palette = Colorblind[8],
+                                   low = dflda['atomic_ea'].min(),
                                    high = dflda['atomic_ea'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_ea", "@atomic_ea eV"),
         ]
- 
-        
+
+
     if Feature == 'atomic_ip' :
-        color_mapper = linear_cmap(field_name = 'atomic_ip', palette = Colorblind[8], 
-                                   low = dflda['atomic_ip'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_ip', palette = Colorblind[8],
+                                   low = dflda['atomic_ip'].min(),
                                    high = dflda['atomic_ip'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_ip", "@atomic_ip eV"),
         ]
-        
+
     if Feature == 'atomic number' :
-        color_mapper = linear_cmap(field_name = 'atomic number', palette = Colorblind[8], 
-                                   low = dflda['atomic number'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic number', palette = Colorblind[8],
+                                   low = dflda['atomic number'].min(),
                                    high = dflda['atomic number'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -1079,10 +1081,10 @@ def ptableplotgenlda(Feature):
         ("Type", "@metal"),
         ]
 
-        
+
     if Feature == 'atomic mass' :
-        color_mapper = linear_cmap(field_name = 'atomic mass', palette = Colorblind[8], 
-                                   low = dflda['atomic mass'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic mass', palette = Colorblind[8],
+                                   low = dflda['atomic mass'].min(),
                                    high = dflda['atomic mass'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -1090,10 +1092,10 @@ def ptableplotgenlda(Feature):
         ("Type", "@metal")
         ]
 
-        
+
     if Feature == 'atomic_homo' :
-        color_mapper = linear_cmap(field_name = 'atomic_homo', palette = Colorblind[8], 
-                                   low = dflda['atomic_homo'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_homo', palette = Colorblind[8],
+                                   low = dflda['atomic_homo'].min(),
                                    high = dflda['atomic_homo'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -1101,10 +1103,10 @@ def ptableplotgenlda(Feature):
         ("atomic_homo", "@atomic_homo eV"),
         ]
 
-      
+
     if Feature == 'atomic_lumo' :
-        color_mapper = linear_cmap(field_name = 'atomic_lumo', palette = Colorblind[8], 
-                                   low = dflda['atomic_lumo'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_lumo', palette = Colorblind[8],
+                                   low = dflda['atomic_lumo'].min(),
                                    high = dflda['atomic_lumo'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -1113,8 +1115,8 @@ def ptableplotgenlda(Feature):
         ]
 
     if Feature == 'atomic_r_s' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_s', palette = Colorblind[8], 
-                                   low = dflda['atomic_r_s'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_s', palette = Colorblind[8],
+                                   low = dflda['atomic_r_s'].min(),
                                    high = dflda['atomic_r_s'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -1123,8 +1125,8 @@ def ptableplotgenlda(Feature):
         ]
 
     if Feature == 'atomic_r_p' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_p', palette = Colorblind[8], 
-                                   low = dflda['atomic_r_p'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_p', palette = Colorblind[8],
+                                   low = dflda['atomic_r_p'].min(),
                                    high = dflda['atomic_r_p'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -1133,8 +1135,8 @@ def ptableplotgenlda(Feature):
         ]
 
     if Feature == 'atomic_r_d' :
-        color_mapper = linear_cmap(field_name = 'atomic_r_d', palette = Colorblind[8], 
-                                   low = dflda['atomic_r_d'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_r_d', palette = Colorblind[8],
+                                   low = dflda['atomic_r_d'].min(),
                                    high = dflda['atomic_r_d'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -1177,83 +1179,83 @@ def ptableplotgenmatmin(Feature):
     Sets all the heatmap plot properties like text, colour mappers ,tittle, axis, legend etc for atomic_properties_magpie module.
     '''
     source = ColumnDataSource(dfmatm)
-  
+
     p2 = figure(plot_width=950, plot_height=500,title="Periodic Table",
            x_range=groups, y_range=list(reversed(periods)), toolbar_location=None,tools="hover")
-    
+
     if Feature == 'atomic number' :
-        color_mapper = linear_cmap(field_name = 'atomic number', palette = Colorblind[8], 
-                                   low = dfmatm['atomic number'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic number', palette = Colorblind[8],
+                                   low = dfmatm['atomic number'].min(),
                                    high = dfmatm['atomic number'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Atomic number", "@{atomic number}"),
         ("Type", "@metal"),
         ]
-        
+
     if Feature == 'atomic mass' :
-        color_mapper = linear_cmap(field_name = 'atomic mass', palette = Colorblind[8], 
-                                   low = dfmatm['atomic mass'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic mass', palette = Colorblind[8],
+                                   low = dfmatm['atomic mass'].min(),
                                    high = dfmatm['atomic mass'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Atomic mass", "@{atomic mass} amu"),
         ("Type", "@metal")
         ]
-        
+
     if Feature == 'atomic_ICSD_vol' :
-        color_mapper = linear_cmap(field_name = 'atomic_ICSD_vol', palette = Colorblind[8], 
-                                   low = dfmatm['atomic_ICSD_vol'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_ICSD_vol', palette = Colorblind[8],
+                                   low = dfmatm['atomic_ICSD_vol'].min(),
                                    high = dfmatm['atomic_ICSD_vol'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_ICSD_vol", "@atomic_ICSD_vol eV"),
         ]
-        
+
     if Feature == 'atomic_cpmass' :
-        color_mapper = linear_cmap(field_name = 'atomic_cpmass', palette = Colorblind[8], 
-                                   low = dfmatm['atomic_cpmass'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_cpmass', palette = Colorblind[8],
+                                   low = dfmatm['atomic_cpmass'].min(),
                                    high = dfmatm['atomic_cpmass'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_cpmass", "@atomic_cpmass J/g-K"),
         ]
-        
+
     if Feature == 'atomic_cpmolar' :
-        color_mapper = linear_cmap(field_name = 'atomic_cpmolar', palette = Colorblind[8], 
-                                   low = dfmatm['atomic_cpmolar'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_cpmolar', palette = Colorblind[8],
+                                   low = dfmatm['atomic_cpmolar'].min(),
                                    high = dfmatm['atomic_cpmolar'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("atomic_cpmolar", "@atomic_cpmolar J/mol-K"),
         ("Type", "@metal"),
         ]
-        
+
     if Feature == 'atomic_density' :
-        color_mapper = linear_cmap(field_name = 'atomic_density', palette = Colorblind[8], 
-                                   low = dfmatm['atomic_density'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_density', palette = Colorblind[8],
+                                   low = dfmatm['atomic_density'].min(),
                                    high = dfmatm['atomic_density'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("atomic_density", "@atomic_density g/L"),
         ("Type", "@metal")
         ]
-        
+
     if Feature == 'atomic_ea' :
-        color_mapper = linear_cmap(field_name = 'atomic_ea', palette = Colorblind[8], 
-                                   low = dfmatm['atomic_ea'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_ea', palette = Colorblind[8],
+                                   low = dfmatm['atomic_ea'].min(),
                                    high = dfmatm['atomic_ea'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_ea", "@atomic_ea kJ/mol"),
         ]
-      
+
     if Feature == 'atomic_en' :
-        color_mapper = linear_cmap(field_name = 'atomic_en', palette = Colorblind[8], 
-                                   low = dfmatm['atomic_en'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_en', palette = Colorblind[8],
+                                   low = dfmatm['atomic_en'].min(),
                                    high = dfmatm['atomic_en'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -1262,8 +1264,8 @@ def ptableplotgenmatmin(Feature):
         ]
 
     if Feature == 'atomic_en_allen' :
-        color_mapper = linear_cmap(field_name = 'atomic_en_allen', palette = Colorblind[8], 
-                                   low = dfmatm['atomic_en_allen'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_en_allen', palette = Colorblind[8],
+                                   low = dfmatm['atomic_en_allen'].min(),
                                    high = dfmatm['atomic_en_allen'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -1272,8 +1274,8 @@ def ptableplotgenmatmin(Feature):
         ]
 
     if Feature == 'atomic_hfu' :
-        color_mapper = linear_cmap(field_name = 'atomic_hfu', palette = Colorblind[8], 
-                                   low = dfmatm['atomic_hfu'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_hfu', palette = Colorblind[8],
+                                   low = dfmatm['atomic_hfu'].min(),
                                    high = dfmatm['atomic_hfu'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -1282,18 +1284,18 @@ def ptableplotgenmatmin(Feature):
         ]
 
     if Feature == 'atomic_hhip' :
-        color_mapper = linear_cmap(field_name = 'atomic_hhip', palette = Colorblind[8], 
-                                   low = dfmatm['atomic_hhip'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_hhip', palette = Colorblind[8],
+                                   low = dfmatm['atomic_hhip'].min(),
                                    high = dfmatm['atomic_hhip'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_hhip", "@atomic_hhip"),
         ]
-        
+
     if Feature == 'atomic_hhir' :
-        color_mapper = linear_cmap(field_name = 'atomic_hhir', palette = Colorblind[8], 
-                                   low = dfmatm['atomic_hhir'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_hhir', palette = Colorblind[8],
+                                   low = dfmatm['atomic_hhir'].min(),
                                    high = dfmatm['atomic_hhir'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -1302,88 +1304,88 @@ def ptableplotgenmatmin(Feature):
         ]
 
     if Feature == 'atomic_hhip' :
-        color_mapper = linear_cmap(field_name = 'atomic_hhip', palette = Colorblind[8], 
-                                   low = dfmatm['atomic_hhip'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_hhip', palette = Colorblind[8],
+                                   low = dfmatm['atomic_hhip'].min(),
                                    high = dfmatm['atomic_hhip'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_hhip", "@atomic_hhip"),
         ]
-    
+
     if Feature == 'atomic_hvap' :
-        color_mapper = linear_cmap(field_name = 'atomic_hvap', palette = Colorblind[8], 
-                                   low = dfmatm['atomic_hvap'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_hvap', palette = Colorblind[8],
+                                   low = dfmatm['atomic_hvap'].min(),
                                    high = dfmatm['atomic_hvap'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_hvap", "@atomic_hvap kJ/mol"),
         ]
-    
+
     if Feature == 'atomic_ie_1' :
-        color_mapper = linear_cmap(field_name = 'atomic_ie_1', palette = Colorblind[8], 
-                                   low = dfmatm['atomic_ie_1'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_ie_1', palette = Colorblind[8],
+                                   low = dfmatm['atomic_ie_1'].min(),
                                    high = dfmatm['atomic_ie_1'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_ie_1", "@atomic_ie_1 eV"),
         ]
-    
+
     if Feature == 'atomic_ie_2' :
-        color_mapper = linear_cmap(field_name = 'atomic_ie_2', palette = Colorblind[8], 
-                                   low = dfmatm['atomic_ie_2'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_ie_2', palette = Colorblind[8],
+                                   low = dfmatm['atomic_ie_2'].min(),
                                    high = dfmatm['atomic_ie_2'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_ie_2", "@atomic_ie_2 eV"),
         ]
-        
+
     if Feature == 'atomic_ndunf' :
-        color_mapper = linear_cmap(field_name = 'atomic_ndunf', palette = Colorblind[8], 
-                                   low = dfmatm['atomic_ndunf'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_ndunf', palette = Colorblind[8],
+                                   low = dfmatm['atomic_ndunf'].min(),
                                    high = dfmatm['atomic_ndunf'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_ndunf", "@atomic_ndunf"),
         ]
-    
+
     if Feature == 'atomic_ndval' :
-        color_mapper = linear_cmap(field_name = 'atomic_ndval', palette = Colorblind[8], 
-                                   low = dfmatm['atomic_ndval'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_ndval', palette = Colorblind[8],
+                                   low = dfmatm['atomic_ndval'].min(),
                                    high = dfmatm['atomic_ndval'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_ndval", "@atomic_ndval"),
         ]
-    
+
     if Feature == 'atomic_nfunf' :
-        color_mapper = linear_cmap(field_name = 'atomic_nfunf', palette = Colorblind[8], 
-                                   low = dfmatm['atomic_nfunf'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_nfunf', palette = Colorblind[8],
+                                   low = dfmatm['atomic_nfunf'].min(),
                                    high = dfmatm['atomic_nfunf'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_nfunf", "@atomic_nfunf"),
         ]
-    
+
     if Feature == 'atomic_nfval' :
-        color_mapper = linear_cmap(field_name = 'atomic_nfval', palette = Colorblind[8], 
-                                   low = dfmatm['atomic_nfval'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_nfval', palette = Colorblind[8],
+                                   low = dfmatm['atomic_nfval'].min(),
                                    high = dfmatm['atomic_nfval'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_nfval", "@atomic_nfval"),
         ]
-        
+
     if Feature == 'atomic_npunf' :
-        color_mapper = linear_cmap(field_name = 'atomic_npunf', palette = Colorblind[8], 
-                                   low = dfmatm['atomic_npunf'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_npunf', palette = Colorblind[8],
+                                   low = dfmatm['atomic_npunf'].min(),
                                    high = dfmatm['atomic_npunf'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -1392,68 +1394,68 @@ def ptableplotgenmatmin(Feature):
         ]
 
     if Feature == 'atomic_npval' :
-        color_mapper = linear_cmap(field_name = 'atomic_npval', palette = Colorblind[8], 
-                                   low = dfmatm['atomic_npval'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_npval', palette = Colorblind[8],
+                                   low = dfmatm['atomic_npval'].min(),
                                    high = dfmatm['atomic_npval'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_npval", "@atomic_npval"),
         ]
-    
+
     if Feature == 'atomic_nsunf' :
-        color_mapper = linear_cmap(field_name = 'atomic_nsunf', palette = Colorblind[8], 
-                                   low = dfmatm['atomic_nsunf'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_nsunf', palette = Colorblind[8],
+                                   low = dfmatm['atomic_nsunf'].min(),
                                    high = dfmatm['atomic_nsunf'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_nsunf", "@atomic_nsunf"),
         ]
-    
+
     if Feature == 'atomic_nsval' :
-        color_mapper = linear_cmap(field_name = 'atomic_nsval', palette = Colorblind[8], 
-                                   low = dfmatm['atomic_nsval'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_nsval', palette = Colorblind[8],
+                                   low = dfmatm['atomic_nsval'].min(),
                                    high = dfmatm['atomic_nsval'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_nsval", "@atomic_nsval"),
         ]
-    
+
     if Feature == 'atomic_number' :
-        color_mapper = linear_cmap(field_name = 'atomic_number', palette = Colorblind[8], 
-                                   low = dfmatm['atomic_number'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_number', palette = Colorblind[8],
+                                   low = dfmatm['atomic_number'].min(),
                                    high = dfmatm['atomic_number'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_number", "@atomic_number"),
         ]
-    
+
     if Feature == 'atomic_nunf' :
-        color_mapper = linear_cmap(field_name = 'atomic_nunf', palette = Colorblind[8], 
-                                   low = dfmatm['atomic_nunf'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_nunf', palette = Colorblind[8],
+                                   low = dfmatm['atomic_nunf'].min(),
                                    high = dfmatm['atomic_nunf'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_nunf", "@atomic_nunf"),
         ]
-    
+
     if Feature == 'atomic_nval' :
-        color_mapper = linear_cmap(field_name = 'atomic_nval', palette = Colorblind[8], 
-                                   low = dfmatm['atomic_nval'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_nval', palette = Colorblind[8],
+                                   low = dfmatm['atomic_nval'].min(),
                                    high = dfmatm['atomic_nval'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_nval", "@atomic_nval"),
         ]
-    
+
     if Feature == 'atomic_phi' :
-        color_mapper = linear_cmap(field_name = 'atomic_phi', palette = Colorblind[8], 
-                                   low = dfmatm['atomic_phi'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_phi', palette = Colorblind[8],
+                                   low = dfmatm['atomic_phi'].min(),
                                    high = dfmatm['atomic_phi'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -1462,286 +1464,286 @@ def ptableplotgenmatmin(Feature):
         ]
 
     if Feature == 'atomic_pol' :
-        color_mapper = linear_cmap(field_name = 'atomic_pol', palette = Colorblind[8], 
-                                   low = dfmatm['atomic_pol'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_pol', palette = Colorblind[8],
+                                   low = dfmatm['atomic_pol'].min(),
                                    high = dfmatm['atomic_pol'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_pol", "@atomic_pol 10^-24 cm^3"),
         ]
-     
+
     if Feature == 'atomic_pp_r_d' :
-        color_mapper = linear_cmap(field_name = 'atomic_pp_r_d', palette = Colorblind[8], 
-                                   low = dfmatm['atomic_pp_r_d'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_pp_r_d', palette = Colorblind[8],
+                                   low = dfmatm['atomic_pp_r_d'].min(),
                                    high = dfmatm['atomic_pp_r_d'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_pp_r_d", "@atomic_pp_r_d a.u"),
         ]
-    
+
     if Feature == 'atomic_pp_r_p' :
-        color_mapper = linear_cmap(field_name = 'atomic_pp_r_p', palette = Colorblind[8], 
-                                   low = dfmatm['atomic_pp_r_p'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_pp_r_p', palette = Colorblind[8],
+                                   low = dfmatm['atomic_pp_r_p'].min(),
                                    high = dfmatm['atomic_pp_r_p'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_pp_r_p", "@atomic_pp_r_p a.u"),
         ]
-    
+
     if Feature == 'atomic_pp_r_s' :
-        color_mapper = linear_cmap(field_name = 'atomic_pp_r_s', palette = Colorblind[8], 
-                                   low = dfmatm['atomic_pp_r_s'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_pp_r_s', palette = Colorblind[8],
+                                   low = dfmatm['atomic_pp_r_s'].min(),
                                    high = dfmatm['atomic_pp_r_s'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_pp_r_s", "@atomic_pp_r_s a.u"),
         ]
-    
+
     if Feature == 'atomic_pp_r_pi' :
-        color_mapper = linear_cmap(field_name = 'atomic_pp_r_pi', palette = Colorblind[8], 
-                                   low = dfmatm['atomic_pp_r_pi'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_pp_r_pi', palette = Colorblind[8],
+                                   low = dfmatm['atomic_pp_r_pi'].min(),
                                    high = dfmatm['atomic_pp_r_pi'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_pp_r_pi", "@atomic_pp_r_pi a.u"),
         ]
-    
+
     if Feature == 'atomic_pp_r_sig' :
-        color_mapper = linear_cmap(field_name = 'atomic_pp_r_sig', palette = Colorblind[8], 
-                                   low = dfmatm['atomic_pp_r_sig'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_pp_r_sig', palette = Colorblind[8],
+                                   low = dfmatm['atomic_pp_r_sig'].min(),
                                    high = dfmatm['atomic_pp_r_sig'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_pp_r_sig", "@atomic_pp_r_sig a.u"),
         ]
-    
+
     if Feature == 'atomic_radius' :
-        color_mapper = linear_cmap(field_name = 'atomic_radius', palette = Colorblind[8], 
-                                   low = dfmatm['atomic_radius'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_radius', palette = Colorblind[8],
+                                   low = dfmatm['atomic_radius'].min(),
                                    high = dfmatm['atomic_radius'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_radius", "@atomic_radius Angs"),
         ]
-    
+
     if Feature == 'atomic_sgn' :
-        color_mapper = linear_cmap(field_name = 'atomic_sgn', palette = Colorblind[8], 
-                                   low = dfmatm['atomic_sgn'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_sgn', palette = Colorblind[8],
+                                   low = dfmatm['atomic_sgn'].min(),
                                    high = dfmatm['atomic_sgn'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_sgn", "@atomic_sgn"),
         ]
-    
+
     if Feature == 'atomic_vdw_radius' :
-        color_mapper = linear_cmap(field_name = 'atomic_vdw_radius', palette = Colorblind[8], 
-                                   low = dfmatm['atomic_vdw_radius'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_vdw_radius', palette = Colorblind[8],
+                                   low = dfmatm['atomic_vdw_radius'].min(),
                                    high = dfmatm['atomic_vdw_radius'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_vdw_radius", "@atomic_vdw_radius Angs"),
         ]
-    
+
     if Feature == 'atomic_volume' :
-        color_mapper = linear_cmap(field_name = 'atomic_volume', palette = Colorblind[8], 
-                                   low = dfmatm['atomic_volume'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_volume', palette = Colorblind[8],
+                                   low = dfmatm['atomic_volume'].min(),
                                    high = dfmatm['atomic_volume'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_volume", "@atomic_volume A^3/atom"),
         ]
-    
+
     if Feature == 'atomic_weight' :
-        color_mapper = linear_cmap(field_name = 'atomic_weight', palette = Colorblind[8], 
-                                   low = dfmatm['atomic_weight'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_weight', palette = Colorblind[8],
+                                   low = dfmatm['atomic_weight'].min(),
                                    high = dfmatm['atomic_weight'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_weight", "@atomic_weight"),
         ]
-    
+
     if Feature == 'atomic_ws3' :
-        color_mapper = linear_cmap(field_name = 'atomic_ws3', palette = Colorblind[8], 
-                                   low = dfmatm['atomic_ws3'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_ws3', palette = Colorblind[8],
+                                   low = dfmatm['atomic_ws3'].min(),
                                    high = dfmatm['atomic_ws3'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_ws3", "@atomic_ws3"),
         ]
-        
+
     if Feature == 'boiling_temp' :
-        color_mapper = linear_cmap(field_name = 'boiling_temp', palette = Colorblind[8], 
-                                   low = dfmatm['boiling_temp'].min(), 
+        color_mapper = linear_cmap(field_name = 'boiling_temp', palette = Colorblind[8],
+                                   low = dfmatm['boiling_temp'].min(),
                                    high = dfmatm['boiling_temp'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("boiling_temp", "@boiling_temp K"),
         ]
-    
+
     if Feature == 'bulk_modulus' :
-        color_mapper = linear_cmap(field_name = 'bulk_modulus', palette = Colorblind[8], 
-                                   low = dfmatm['bulk_modulus'].min(), 
+        color_mapper = linear_cmap(field_name = 'bulk_modulus', palette = Colorblind[8],
+                                   low = dfmatm['bulk_modulus'].min(),
                                    high = dfmatm['bulk_modulus'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("bulk_modulus", "@bulk_modulus GPa"),
         ]
-    
+
     if Feature == 'covalent_radius' :
-        color_mapper = linear_cmap(field_name = 'covalent_radius', palette = Colorblind[8], 
-                                   low = dfmatm['covalent_radius'].min(), 
+        color_mapper = linear_cmap(field_name = 'covalent_radius', palette = Colorblind[8],
+                                   low = dfmatm['covalent_radius'].min(),
                                    high = dfmatm['covalent_radius'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("covalent_radius", "@covalent_radius pm"),
         ]
-    
+
     if Feature == 'gs_bandgap' :
-        color_mapper = linear_cmap(field_name = 'gs_bandgap', palette = Colorblind[8], 
-                                   low = dfmatm['gs_bandgap'].min(), 
+        color_mapper = linear_cmap(field_name = 'gs_bandgap', palette = Colorblind[8],
+                                   low = dfmatm['gs_bandgap'].min(),
                                    high = dfmatm['gs_bandgap'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("gs_bandgap", "@gs_bandgap eV"),
         ]
-    
+
     if Feature == 'gs_bcclatparam' :
-        color_mapper = linear_cmap(field_name = 'gs_bcclatparam', palette = Colorblind[8], 
-                                   low = dfmatm['gs_bcclatparam'].min(), 
+        color_mapper = linear_cmap(field_name = 'gs_bcclatparam', palette = Colorblind[8],
+                                   low = dfmatm['gs_bcclatparam'].min(),
                                    high = dfmatm['gs_bcclatparam'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("gs_bcclatparam", "@gs_bcclatparam Angs"),
         ]
-    
+
     if Feature == 'gs_energy_pa' :
-        color_mapper = linear_cmap(field_name = 'gs_energy_pa', palette = Colorblind[8], 
-                                   low = dfmatm['gs_energy_pa'].min(), 
+        color_mapper = linear_cmap(field_name = 'gs_energy_pa', palette = Colorblind[8],
+                                   low = dfmatm['gs_energy_pa'].min(),
                                    high = dfmatm['gs_energy_pa'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("gs_energy_pa", "@gs_energy_pa eV"),
         ]
-    
+
     if Feature == 'gs_fcclatparam' :
-        color_mapper = linear_cmap(field_name = 'gs_fcclatparam', palette = Colorblind[8], 
-                                   low = dfmatm['gs_fcclatparam'].min(), 
+        color_mapper = linear_cmap(field_name = 'gs_fcclatparam', palette = Colorblind[8],
+                                   low = dfmatm['gs_fcclatparam'].min(),
                                    high = dfmatm['gs_fcclatparam'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("gs_fcclatparam", "@gs_fcclatparam Angs"),
         ]
-    
+
     if Feature == 'gs_mag_mom' :
-        color_mapper = linear_cmap(field_name = 'gs_mag_mom', palette = Colorblind[8], 
-                                   low = dfmatm['gs_mag_mom'].min(), 
+        color_mapper = linear_cmap(field_name = 'gs_mag_mom', palette = Colorblind[8],
+                                   low = dfmatm['gs_mag_mom'].min(),
                                    high = dfmatm['gs_mag_mom'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("gs_mag_mom", "@gs_mag_mom"),
         ]
-    
+
     if Feature == 'gs_volume_pa' :
-        color_mapper = linear_cmap(field_name = 'gs_volume_pa', palette = Colorblind[8], 
-                                   low = dfmatm['gs_volume_pa'].min(), 
+        color_mapper = linear_cmap(field_name = 'gs_volume_pa', palette = Colorblind[8],
+                                   low = dfmatm['gs_volume_pa'].min(),
                                    high = dfmatm['gs_volume_pa'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("gs_volume_pa", "@gs_volume_pa Angs^3"),
         ]
-    
+
     if Feature == 'melting_point' :
-        color_mapper = linear_cmap(field_name = 'melting_point', palette = Colorblind[8], 
-                                   low = dfmatm['melting_point'].min(), 
+        color_mapper = linear_cmap(field_name = 'melting_point', palette = Colorblind[8],
+                                   low = dfmatm['melting_point'].min(),
                                    high = dfmatm['melting_point'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("melting_point", "@melting_point K"),
         ]
-        
+
     if Feature == 'mendeleev_no' :
-        color_mapper = linear_cmap(field_name = 'mendeleev_no', palette = Colorblind[8], 
-                                   low = dfmatm['mendeleev_no'].min(), 
+        color_mapper = linear_cmap(field_name = 'mendeleev_no', palette = Colorblind[8],
+                                   low = dfmatm['mendeleev_no'].min(),
                                    high = dfmatm['mendeleev_no'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("mendeleev_no", "@mendeleev_no"),
         ]
-    
+
     if Feature == 'micracle_radius' :
-        color_mapper = linear_cmap(field_name = 'micracle_radius', palette = Colorblind[8], 
-                                   low = dfmatm['micracle_radius'].min(), 
+        color_mapper = linear_cmap(field_name = 'micracle_radius', palette = Colorblind[8],
+                                   low = dfmatm['micracle_radius'].min(),
                                    high = dfmatm['micracle_radius'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("micracle_radius", "@micracle_radius pm"),
         ]
-    
+
     if Feature == 'molar_volume' :
-        color_mapper = linear_cmap(field_name = 'molar_volume', palette = Colorblind[8], 
-                                   low = dfmatm['molar_volume'].min(), 
+        color_mapper = linear_cmap(field_name = 'molar_volume', palette = Colorblind[8],
+                                   low = dfmatm['molar_volume'].min(),
                                    high = dfmatm['molar_volume'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("molar_volume", "@molar_volume cm^3"),
         ]
-    
+
     if Feature == 'shear_mod' :
-        color_mapper = linear_cmap(field_name = 'shear_mod', palette = Colorblind[8], 
-                                   low = dfmatm['shear_mod'].min(), 
+        color_mapper = linear_cmap(field_name = 'shear_mod', palette = Colorblind[8],
+                                   low = dfmatm['shear_mod'].min(),
                                    high = dfmatm['shear_mod'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("shear_mod", "@shear_mod GPa"),
         ]
-    
+
     if Feature == 'thermal_cond' :
-        color_mapper = linear_cmap(field_name = 'thermal_cond', palette = Colorblind[8], 
-                                   low = dfmatm['thermal_cond'].min(), 
+        color_mapper = linear_cmap(field_name = 'thermal_cond', palette = Colorblind[8],
+                                   low = dfmatm['thermal_cond'].min(),
                                    high = dfmatm['thermal_cond'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("thermal_cond", "@thermal_cond W/m-K"),
         ]
-    
+
     if Feature == 'thermal_cond_log' :
-        color_mapper = linear_cmap(field_name = 'thermal_cond_log', palette = Colorblind[8], 
-                                   low = dfmatm['thermal_cond_log'].min(), 
+        color_mapper = linear_cmap(field_name = 'thermal_cond_log', palette = Colorblind[8],
+                                   low = dfmatm['thermal_cond_log'].min(),
                                    high = dfmatm['thermal_cond_log'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("thermal_cond_log", "@thermal_cond_log"),
         ]
-    
-    
+
+
     p2.rect("group", "period", 0.90, 0.90, source= source, fill_alpha=0.6,color=color_mapper)
     text_props = {"source":source, "text_align": "left", "text_baseline": "middle", "text_color" : "black"}
 
@@ -1769,19 +1771,19 @@ def ptableplotgenmatmin(Feature):
     output_notebook(hide_banner=True)
     show(p2,notebook_handle=True)
     push_notebook()
-    
+
 def ptableplotgenpymat(Feature):
     '''
     Sets all the heatmap plot properties like text, colour mappers ,tittle, axis, legend etc for atomic_properties_pymat module.
     '''
     source = ColumnDataSource(dfpymat)
-  
+
     p2 = figure(plot_width=950, plot_height=500,title="Periodic Table",
            x_range=groups, y_range=list(reversed(periods)), toolbar_location=None,tools="hover")
-    
+
     if Feature == 'atomic number' :
-        color_mapper = linear_cmap(field_name = 'atomic number', palette = Colorblind[8], 
-                                   low = dfpymat['atomic number'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic number', palette = Colorblind[8],
+                                   low = dfpymat['atomic number'].min(),
                                    high = dfpymat['atomic number'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -1790,8 +1792,8 @@ def ptableplotgenpymat(Feature):
         ]
 
     if Feature == 'atomic mass' :
-        color_mapper = linear_cmap(field_name = 'atomic mass', palette = Colorblind[8], 
-                                   low = dfpymat['atomic mass'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic mass', palette = Colorblind[8],
+                                   low = dfpymat['atomic mass'].min(),
                                    high = dfpymat['atomic mass'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -1800,8 +1802,8 @@ def ptableplotgenpymat(Feature):
         ]
 
     if Feature == 'atomic_radius' :
-        color_mapper = linear_cmap(field_name = 'atomic_radius', palette = Colorblind[8], 
-                                   low = dfpymat['atomic_radius'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_radius', palette = Colorblind[8],
+                                   low = dfpymat['atomic_radius'].min(),
                                    high = dfpymat['atomic_radius'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -1810,8 +1812,8 @@ def ptableplotgenpymat(Feature):
         ]
 
     if Feature == 'atomic_radius_calculated' :
-        color_mapper = linear_cmap(field_name = 'atomic_radius_calculated', palette = Colorblind[8], 
-                                   low = dfpymat['atomic_radius_calculated'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_radius_calculated', palette = Colorblind[8],
+                                   low = dfpymat['atomic_radius_calculated'].min(),
                                    high = dfpymat['atomic_radius_calculated'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -1820,8 +1822,8 @@ def ptableplotgenpymat(Feature):
         ]
 
     if Feature == 'boiling_point' :
-        color_mapper = linear_cmap(field_name = 'boiling_point', palette = Colorblind[8], 
-                                   low = dfpymat['boiling_point'].min(), 
+        color_mapper = linear_cmap(field_name = 'boiling_point', palette = Colorblind[8],
+                                   low = dfpymat['boiling_point'].min(),
                                    high = dfpymat['boiling_point'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -1830,8 +1832,8 @@ def ptableplotgenpymat(Feature):
         ]
 
     if Feature == 'brinell_hardness' :
-        color_mapper = linear_cmap(field_name = 'brinell_hardness', palette = Colorblind[8], 
-                                   low = dfpymat['brinell_hardness'].min(), 
+        color_mapper = linear_cmap(field_name = 'brinell_hardness', palette = Colorblind[8],
+                                   low = dfpymat['brinell_hardness'].min(),
                                    high = dfpymat['brinell_hardness'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -1840,8 +1842,8 @@ def ptableplotgenpymat(Feature):
         ]
 
     if Feature == 'bulk_modulus' :
-        color_mapper = linear_cmap(field_name = 'bulk_modulus', palette = Colorblind[8], 
-                                   low = dfpymat['bulk_modulus'].min(), 
+        color_mapper = linear_cmap(field_name = 'bulk_modulus', palette = Colorblind[8],
+                                   low = dfpymat['bulk_modulus'].min(),
                                    high = dfpymat['bulk_modulus'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -1850,8 +1852,8 @@ def ptableplotgenpymat(Feature):
         ]
 
     if Feature == 'coefficient_olte' :
-        color_mapper = linear_cmap(field_name = 'coefficient_olte', palette = Colorblind[8], 
-                                   low = dfpymat['coefficient_olte'].min(), 
+        color_mapper = linear_cmap(field_name = 'coefficient_olte', palette = Colorblind[8],
+                                   low = dfpymat['coefficient_olte'].min(),
                                    high = dfpymat['coefficient_olte'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -1860,8 +1862,8 @@ def ptableplotgenpymat(Feature):
         ]
 
     if Feature == 'critical_temperature' :
-        color_mapper = linear_cmap(field_name = 'critical_temperature', palette = Colorblind[8], 
-                                   low = dfpymat['critical_temperature'].min(), 
+        color_mapper = linear_cmap(field_name = 'critical_temperature', palette = Colorblind[8],
+                                   low = dfpymat['critical_temperature'].min(),
                                    high = dfpymat['critical_temperature'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -1870,8 +1872,8 @@ def ptableplotgenpymat(Feature):
         ]
 
     if Feature == 'density_of_solid' :
-        color_mapper = linear_cmap(field_name = 'density_of_solid', palette = Colorblind[8], 
-                                   low = dfpymat['density_of_solid'].min(), 
+        color_mapper = linear_cmap(field_name = 'density_of_solid', palette = Colorblind[8],
+                                   low = dfpymat['density_of_solid'].min(),
                                    high = dfpymat['density_of_solid'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -1880,8 +1882,8 @@ def ptableplotgenpymat(Feature):
         ]
 
     if Feature == 'electrical_resistivity' :
-        color_mapper = linear_cmap(field_name = 'electrical_resistivity', palette = Colorblind[8], 
-                                   low = dfpymat['electrical_resistivity'].min(), 
+        color_mapper = linear_cmap(field_name = 'electrical_resistivity', palette = Colorblind[8],
+                                   low = dfpymat['electrical_resistivity'].min(),
                                    high = dfpymat['electrical_resistivity'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -1890,8 +1892,8 @@ def ptableplotgenpymat(Feature):
         ]
 
     if Feature == 'liquid_range' :
-        color_mapper = linear_cmap(field_name = 'liquid_range', palette = Colorblind[8], 
-                                   low = dfpymat['liquid_range'].min(), 
+        color_mapper = linear_cmap(field_name = 'liquid_range', palette = Colorblind[8],
+                                   low = dfpymat['liquid_range'].min(),
                                    high = dfpymat['liquid_range'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -1900,8 +1902,8 @@ def ptableplotgenpymat(Feature):
         ]
 
     if Feature == 'melting_point' :
-        color_mapper = linear_cmap(field_name = 'melting_point', palette = Colorblind[8], 
-                                   low = dfpymat['melting_point'].min(), 
+        color_mapper = linear_cmap(field_name = 'melting_point', palette = Colorblind[8],
+                                   low = dfpymat['melting_point'].min(),
                                    high = dfpymat['melting_point'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -1910,8 +1912,8 @@ def ptableplotgenpymat(Feature):
         ]
 
     if Feature == 'mineral_hardness' :
-        color_mapper = linear_cmap(field_name = 'mineral_hardness', palette = Colorblind[8], 
-                                   low = dfpymat['mineral_hardness'].min(), 
+        color_mapper = linear_cmap(field_name = 'mineral_hardness', palette = Colorblind[8],
+                                   low = dfpymat['mineral_hardness'].min(),
                                    high = dfpymat['mineral_hardness'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -1920,8 +1922,8 @@ def ptableplotgenpymat(Feature):
         ]
 
     if Feature == 'molar_volume' :
-        color_mapper = linear_cmap(field_name = 'molar_volume', palette = Colorblind[8], 
-                                   low = dfpymat['molar_volume'].min(), 
+        color_mapper = linear_cmap(field_name = 'molar_volume', palette = Colorblind[8],
+                                   low = dfpymat['molar_volume'].min(),
                                    high = dfpymat['molar_volume'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -1930,8 +1932,8 @@ def ptableplotgenpymat(Feature):
         ]
 
     if Feature == 'poisson_ratio' :
-        color_mapper = linear_cmap(field_name = 'poisson_ratio', palette = Colorblind[8], 
-                                   low = dfpymat['poisson_ratio'].min(), 
+        color_mapper = linear_cmap(field_name = 'poisson_ratio', palette = Colorblind[8],
+                                   low = dfpymat['poisson_ratio'].min(),
                                    high = dfpymat['poisson_ratio'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -1940,8 +1942,8 @@ def ptableplotgenpymat(Feature):
         ]
 
     if Feature == 'atomic_refelctivity' :
-        color_mapper = linear_cmap(field_name = 'atomic_refelctivity', palette = Colorblind[8], 
-                                   low = dfpymat['atomic_refelctivity'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_refelctivity', palette = Colorblind[8],
+                                   low = dfpymat['atomic_refelctivity'].min(),
                                    high = dfpymat['atomic_refelctivity'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -1950,8 +1952,8 @@ def ptableplotgenpymat(Feature):
         ]
 
     if Feature == 'rigidity_modulus' :
-        color_mapper = linear_cmap(field_name = 'rigidity_modulus', palette = Colorblind[8], 
-                                   low = dfpymat['rigidity_modulus'].min(), 
+        color_mapper = linear_cmap(field_name = 'rigidity_modulus', palette = Colorblind[8],
+                                   low = dfpymat['rigidity_modulus'].min(),
                                    high = dfpymat['rigidity_modulus'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -1960,8 +1962,8 @@ def ptableplotgenpymat(Feature):
         ]
 
     if Feature == 'thermal_cond' :
-        color_mapper = linear_cmap(field_name = 'thermal_cond', palette = Colorblind[8], 
-                                   low = dfpymat['thermal_cond'].min(), 
+        color_mapper = linear_cmap(field_name = 'thermal_cond', palette = Colorblind[8],
+                                   low = dfpymat['thermal_cond'].min(),
                                    high = dfpymat['thermal_cond'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -1970,8 +1972,8 @@ def ptableplotgenpymat(Feature):
         ]
 
     if Feature == 'van_der_waals_rad' :
-        color_mapper = linear_cmap(field_name = 'van_der_waals_rad', palette = Colorblind[8], 
-                                   low = dfpymat['van_der_waals_rad'].min(), 
+        color_mapper = linear_cmap(field_name = 'van_der_waals_rad', palette = Colorblind[8],
+                                   low = dfpymat['van_der_waals_rad'].min(),
                                    high = dfpymat['van_der_waals_rad'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -1980,8 +1982,8 @@ def ptableplotgenpymat(Feature):
         ]
 
     if Feature == 'velocity_of_sound' :
-        color_mapper = linear_cmap(field_name = 'velocity_of_sound', palette = Colorblind[8], 
-                                   low = dfpymat['velocity_of_sound'].min(), 
+        color_mapper = linear_cmap(field_name = 'velocity_of_sound', palette = Colorblind[8],
+                                   low = dfpymat['velocity_of_sound'].min(),
                                    high = dfpymat['velocity_of_sound'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -1990,8 +1992,8 @@ def ptableplotgenpymat(Feature):
         ]
 
     if Feature == 'vickers_hardness' :
-        color_mapper = linear_cmap(field_name = 'vickers_hardness', palette = Colorblind[8], 
-                                   low = dfpymat['vickers_hardness'].min(), 
+        color_mapper = linear_cmap(field_name = 'vickers_hardness', palette = Colorblind[8],
+                                   low = dfpymat['vickers_hardness'].min(),
                                    high = dfpymat['vickers_hardness'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2000,8 +2002,8 @@ def ptableplotgenpymat(Feature):
         ]
 
     if Feature == 'x' :
-        color_mapper = linear_cmap(field_name = 'x', palette = Colorblind[8], 
-                                   low = dfpymat['x'].min(), 
+        color_mapper = linear_cmap(field_name = 'x', palette = Colorblind[8],
+                                   low = dfpymat['x'].min(),
                                    high = dfpymat['x'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2010,101 +2012,101 @@ def ptableplotgenpymat(Feature):
         ]
 
     if Feature == 'youngs_modulus' :
-        color_mapper = linear_cmap(field_name = 'youngs_modulus', palette = Colorblind[8], 
-                                   low = dfpymat['youngs_modulus'].min(), 
+        color_mapper = linear_cmap(field_name = 'youngs_modulus', palette = Colorblind[8],
+                                   low = dfpymat['youngs_modulus'].min(),
                                    high = dfpymat['youngs_modulus'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("youngs_modulus", "@youngs_modulus GPa"),
         ("Type", "@metal"),
         ]
-        
+
     if Feature == 'metallic_radius' :
-        color_mapper = linear_cmap(field_name = 'metallic_radius', palette = Colorblind[8], 
-                                   low = dfpymat['metallic_radius'].min(), 
+        color_mapper = linear_cmap(field_name = 'metallic_radius', palette = Colorblind[8],
+                                   low = dfpymat['metallic_radius'].min(),
                                    high = dfpymat['metallic_radius'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("metallic_radius", "@metallic_radius Angs"),
         ("Type", "@metal"),
         ]
-        
+
     if Feature == 'iupac_ordering' :
-        color_mapper = linear_cmap(field_name = 'iupac_ordering', palette = Colorblind[8], 
-                                   low = dfpymat['iupac_ordering'].min(), 
+        color_mapper = linear_cmap(field_name = 'iupac_ordering', palette = Colorblind[8],
+                                   low = dfpymat['iupac_ordering'].min(),
                                    high = dfpymat['iupac_ordering'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("iupac_ordering", "@iupac_ordering"),
         ("Type", "@metal"),
         ]
-        
+
     if Feature == 'supercond_temp' :
-        color_mapper = linear_cmap(field_name = 'supercond_temp', palette = Colorblind[8], 
-                                   low = dfpymat['supercond_temp'].min(), 
+        color_mapper = linear_cmap(field_name = 'supercond_temp', palette = Colorblind[8],
+                                   low = dfpymat['supercond_temp'].min(),
                                    high = dfpymat['supercond_temp'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("supercond_temp", "@supercond_temp K"),
         ("Type", "@metal"),
         ]
-     
+
     if Feature == 'min_oxd_state' :
-        color_mapper = linear_cmap(field_name = 'min_oxd_state', palette = Colorblind[8], 
-                                   low = dfpymat['min_oxd_state'].min(), 
+        color_mapper = linear_cmap(field_name = 'min_oxd_state', palette = Colorblind[8],
+                                   low = dfpymat['min_oxd_state'].min(),
                                    high = dfpymat['min_oxd_state'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("min_oxd_state", "@min_oxd_state"),
         ("Type", "@metal"),
         ]
-     
+
     if Feature == 'max_oxd_state' :
-        color_mapper = linear_cmap(field_name = 'max_oxd_state', palette = Colorblind[8], 
-                                   low = dfpymat['max_oxd_state'].min(), 
+        color_mapper = linear_cmap(field_name = 'max_oxd_state', palette = Colorblind[8],
+                                   low = dfpymat['max_oxd_state'].min(),
                                    high = dfpymat['max_oxd_state'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("max_oxd_state", "@max_oxd_state"),
         ("Type", "@metal"),
         ]
-    
+
     if Feature == 'atomic_orbitals_1s' :
-        color_mapper = linear_cmap(field_name = 'atomic_orbitals_1s', palette = Colorblind[8], 
-                                   low = dfpymat['atomic_orbitals_1s'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_orbitals_1s', palette = Colorblind[8],
+                                   low = dfpymat['atomic_orbitals_1s'].min(),
                                    high = dfpymat['atomic_orbitals_1s'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("atomic_orbitals_1s", "@atomic_orbitals_1s eV"),
         ("Type", "@metal"),
         ]
-       
-    
+
+
     if Feature == 'atomic_orbitals_2s' :
-        color_mapper = linear_cmap(field_name = 'atomic_orbitals_2s', palette = Colorblind[8], 
-                                   low = dfpymat['atomic_orbitals_2s'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_orbitals_2s', palette = Colorblind[8],
+                                   low = dfpymat['atomic_orbitals_2s'].min(),
                                    high = dfpymat['atomic_orbitals_2s'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("atomic_orbitals_2s", "@atomic_orbitals_2s eV"),
         ("Type", "@metal"),
         ]
-        
-    
+
+
     if Feature == 'atomic_orbitals_2p' :
-        color_mapper = linear_cmap(field_name = 'atomic_orbitals_2p', palette = Colorblind[8], 
-                                   low = dfpymat['atomic_orbitals_2p'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_orbitals_2p', palette = Colorblind[8],
+                                   low = dfpymat['atomic_orbitals_2p'].min(),
                                    high = dfpymat['atomic_orbitals_2p'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("atomic_orbitals_2p", "@atomic_orbitals_2p eV"),
         ("Type", "@metal"),
         ]
-   
-        
+
+
     if Feature == 'atomic_orbitals_3s' :
-        color_mapper = linear_cmap(field_name = 'atomic_orbitals_3s', palette = Colorblind[8], 
-                                   low = dfpymat['atomic_orbitals_3s'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_orbitals_3s', palette = Colorblind[8],
+                                   low = dfpymat['atomic_orbitals_3s'].min(),
                                    high = dfpymat['atomic_orbitals_3s'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2112,10 +2114,10 @@ def ptableplotgenpymat(Feature):
         ("Type", "@metal"),
         ]
 
-    
+
     if Feature == 'atomic_orbitals_3p' :
-        color_mapper = linear_cmap(field_name = 'atomic_orbitals_3p', palette = Colorblind[8], 
-                                   low = dfpymat['atomic_orbitals_3p'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_orbitals_3p', palette = Colorblind[8],
+                                   low = dfpymat['atomic_orbitals_3p'].min(),
                                    high = dfpymat['atomic_orbitals_3p'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2123,10 +2125,10 @@ def ptableplotgenpymat(Feature):
         ("Type", "@metal"),
         ]
 
-    
+
     if Feature == 'atomic_orbitals_3d' :
-        color_mapper = linear_cmap(field_name = 'atomic_orbitals_3d', palette = Colorblind[8], 
-                                   low = dfpymat['atomic_orbitals_3d'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_orbitals_3d', palette = Colorblind[8],
+                                   low = dfpymat['atomic_orbitals_3d'].min(),
                                    high = dfpymat['atomic_orbitals_3d'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2134,10 +2136,10 @@ def ptableplotgenpymat(Feature):
         ("Type", "@metal"),
         ]
 
-    
+
     if Feature == 'atomic_orbitals_4s' :
-        color_mapper = linear_cmap(field_name = 'atomic_orbitals_4s', palette = Colorblind[8], 
-                                   low = dfpymat['atomic_orbitals_4s'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_orbitals_4s', palette = Colorblind[8],
+                                   low = dfpymat['atomic_orbitals_4s'].min(),
                                    high = dfpymat['atomic_orbitals_4s'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2145,10 +2147,10 @@ def ptableplotgenpymat(Feature):
         ("Type", "@metal"),
         ]
 
-    
+
     if Feature == 'atomic_orbitals_4p' :
-        color_mapper = linear_cmap(field_name = 'atomic_orbitals_4p', palette = Colorblind[8], 
-                                   low = dfpymat['atomic_orbitals_4p'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_orbitals_4p', palette = Colorblind[8],
+                                   low = dfpymat['atomic_orbitals_4p'].min(),
                                    high = dfpymat['atomic_orbitals_4p'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2156,10 +2158,10 @@ def ptableplotgenpymat(Feature):
         ("Type", "@metal"),
         ]
 
-    
+
     if Feature == 'atomic_orbitals_4d' :
-        color_mapper = linear_cmap(field_name = 'atomic_orbitals_4d', palette = Colorblind[8], 
-                                   low = dfpymat['atomic_orbitals_4d'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_orbitals_4d', palette = Colorblind[8],
+                                   low = dfpymat['atomic_orbitals_4d'].min(),
                                    high = dfpymat['atomic_orbitals_4d'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2167,10 +2169,10 @@ def ptableplotgenpymat(Feature):
         ("Type", "@metal"),
         ]
 
-    
+
     if Feature == 'atomic_orbitals_5s' :
-        color_mapper = linear_cmap(field_name = 'atomic_orbitals_5s', palette = Colorblind[8], 
-                                   low = dfpymat['atomic_orbitals_5s'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_orbitals_5s', palette = Colorblind[8],
+                                   low = dfpymat['atomic_orbitals_5s'].min(),
                                    high = dfpymat['atomic_orbitals_5s'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2178,10 +2180,10 @@ def ptableplotgenpymat(Feature):
         ("Type", "@metal"),
         ]
 
-    
+
     if Feature == 'atomic_orbitals_5p' :
-        color_mapper = linear_cmap(field_name = 'atomic_orbitals_5p', palette = Colorblind[8], 
-                                   low = dfpymat['atomic_orbitals_5p'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_orbitals_5p', palette = Colorblind[8],
+                                   low = dfpymat['atomic_orbitals_5p'].min(),
                                    high = dfpymat['atomic_orbitals_5p'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2189,10 +2191,10 @@ def ptableplotgenpymat(Feature):
         ("Type", "@metal"),
         ]
 
-    
+
     if Feature == 'atomic_orbitals_5d' :
-        color_mapper = linear_cmap(field_name = 'atomic_orbitals_5d', palette = Colorblind[8], 
-                                   low = dfpymat['atomic_orbitals_5d'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_orbitals_5d', palette = Colorblind[8],
+                                   low = dfpymat['atomic_orbitals_5d'].min(),
                                    high = dfpymat['atomic_orbitals_5d'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2200,10 +2202,10 @@ def ptableplotgenpymat(Feature):
         ("Type", "@metal"),
         ]
 
-    
+
     if Feature == 'atomic_orbitals_6s' :
-        color_mapper = linear_cmap(field_name = 'atomic_orbitals_6s', palette = Colorblind[8], 
-                                   low = dfpymat['atomic_orbitals_6s'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_orbitals_6s', palette = Colorblind[8],
+                                   low = dfpymat['atomic_orbitals_6s'].min(),
                                    high = dfpymat['atomic_orbitals_6s'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2211,10 +2213,10 @@ def ptableplotgenpymat(Feature):
         ("Type", "@metal"),
         ]
 
-    
+
     if Feature == 'atomic_orbitals_6p' :
-        color_mapper = linear_cmap(field_name = 'atomic_orbitals_6p', palette = Colorblind[8], 
-                                   low = dfpymat['atomic_orbitals_6p'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_orbitals_6p', palette = Colorblind[8],
+                                   low = dfpymat['atomic_orbitals_6p'].min(),
                                    high = dfpymat['atomic_orbitals_6p'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2222,10 +2224,10 @@ def ptableplotgenpymat(Feature):
         ("Type", "@metal"),
         ]
 
-    
+
     if Feature == 'atomic_orbitals_6d' :
-        color_mapper = linear_cmap(field_name = 'atomic_orbitals_6d', palette = Colorblind[8], 
-                                   low = dfpymat['atomic_orbitals_6d'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_orbitals_6d', palette = Colorblind[8],
+                                   low = dfpymat['atomic_orbitals_6d'].min(),
                                    high = dfpymat['atomic_orbitals_6d'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2233,10 +2235,10 @@ def ptableplotgenpymat(Feature):
         ("Type", "@metal"),
         ]
 
-    
+
     if Feature == 'atomic_orbitals_7s' :
-        color_mapper = linear_cmap(field_name = 'atomic_orbitals_7s', palette = Colorblind[8], 
-                                   low = dfpymat['atomic_orbitals_7s'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_orbitals_7s', palette = Colorblind[8],
+                                   low = dfpymat['atomic_orbitals_7s'].min(),
                                    high = dfpymat['atomic_orbitals_7s'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2244,10 +2246,10 @@ def ptableplotgenpymat(Feature):
         ("Type", "@metal"),
         ]
 
-    
+
     if Feature == 'atomic_orbitals_4f' :
-        color_mapper = linear_cmap(field_name = 'atomic_orbitals_4f', palette = Colorblind[8], 
-                                   low = dfpymat['atomic_orbitals_4f'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_orbitals_4f', palette = Colorblind[8],
+                                   low = dfpymat['atomic_orbitals_4f'].min(),
                                    high = dfpymat['atomic_orbitals_4f'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2255,10 +2257,10 @@ def ptableplotgenpymat(Feature):
         ("Type", "@metal"),
         ]
 
-    
+
     if Feature == 'atomic_orbitals_5f' :
-        color_mapper = linear_cmap(field_name = 'atomic_orbitals_5f', palette = Colorblind[8], 
-                                   low = dfpymat['atomic_orbitals_5f'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_orbitals_5f', palette = Colorblind[8],
+                                   low = dfpymat['atomic_orbitals_5f'].min(),
                                    high = dfpymat['atomic_orbitals_5f'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2301,125 +2303,125 @@ def ptableplotgenwebele(Feature):
     Sets all the heatmap plot properties like text, colour mappers ,tittle, axis, legend etc for atomic_properties_webele module.
     '''
     source = ColumnDataSource(dfwebele)
-  
+
     p2 = figure(plot_width=950, plot_height=500,title="Periodic Table",
            x_range=groups, y_range=list(reversed(periods)), toolbar_location=None,tools="hover")
-    
-    
+
+
     if Feature == 'electron_aff' :
-        color_mapper = linear_cmap(field_name = 'electron_aff', palette = Colorblind[8], 
-                                   low = dfwebele['electron_aff'].min(), 
+        color_mapper = linear_cmap(field_name = 'electron_aff', palette = Colorblind[8],
+                                   low = dfwebele['electron_aff'].min(),
                                    high = dfwebele['electron_aff'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("electron_aff", "@electron_aff kJ/mol"),
         ]
-        
-        
+
+
     if Feature == 'atomic mass' :
-        color_mapper = linear_cmap(field_name = 'atomic mass', palette = Colorblind[8], 
-                                   low = dfwebele['atomic mass'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic mass', palette = Colorblind[8],
+                                   low = dfwebele['atomic mass'].min(),
                                    high = dfwebele['atomic mass'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic mass", "@atomic mass amu"),
         ]
-        
-        
+
+
     if Feature == 'atomic number' :
-        color_mapper = linear_cmap(field_name = 'atomic number', palette = Colorblind[8], 
-                                   low = dfwebele['atomic number'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic number', palette = Colorblind[8],
+                                   low = dfwebele['atomic number'].min(),
                                    high = dfwebele['atomic number'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Atomic number", "@{atomic number}"),
         ("Type", "@metal"),
         ]
-        
-        
+
+
     if Feature == 'density_of_solid' :
-        color_mapper = linear_cmap(field_name = 'density_of_solid', palette = Colorblind[8], 
-                                   low = dfwebele['density_of_solid'].min(), 
+        color_mapper = linear_cmap(field_name = 'density_of_solid', palette = Colorblind[8],
+                                   low = dfwebele['density_of_solid'].min(),
                                    high = dfwebele['density_of_solid'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("density_of_solid", "@density_of_solid (kg/m3)"),
         ]
-        
-    
+
+
     if Feature == 'molar_vol' :
-        color_mapper = linear_cmap(field_name = 'molar_vol', palette = Colorblind[8], 
-                                   low = dfwebele['molar_vol'].min(), 
+        color_mapper = linear_cmap(field_name = 'molar_vol', palette = Colorblind[8],
+                                   low = dfwebele['molar_vol'].min(),
                                    high = dfwebele['molar_vol'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("molar_vol", "@molar_vol  cm3"),
         ]
-       
-        
+
+
     if Feature == 'youngs_mod' :
-        color_mapper = linear_cmap(field_name = 'youngs_mod', palette = Colorblind[8], 
-                                   low = dfwebele['youngs_mod'].min(), 
+        color_mapper = linear_cmap(field_name = 'youngs_mod', palette = Colorblind[8],
+                                   low = dfwebele['youngs_mod'].min(),
                                    high = dfwebele['youngs_mod'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("youngs_mod", "@youngs_mod GPa"),
         ]
-       
-        
+
+
     if Feature == 'rigidity_mod' :
-        color_mapper = linear_cmap(field_name = 'rigidity_mod', palette = Colorblind[8], 
-                                   low = dfwebele['rigidity_mod'].min(), 
+        color_mapper = linear_cmap(field_name = 'rigidity_mod', palette = Colorblind[8],
+                                   low = dfwebele['rigidity_mod'].min(),
                                    high = dfwebele['rigidity_mod'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("rigidity_mod", "@rigidity_mod GPa"),
         ]
-   
-        
+
+
     if Feature == 'bulk_mod' :
-        color_mapper = linear_cmap(field_name = 'bulk_mod', palette = Colorblind[8], 
-                                   low = dfwebele['bulk_mod'].min(), 
+        color_mapper = linear_cmap(field_name = 'bulk_mod', palette = Colorblind[8],
+                                   low = dfwebele['bulk_mod'].min(),
                                    high = dfwebele['bulk_mod'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("bulk_mod", "@bulk_mod GPa"),
         ]
- 
-        
+
+
     if Feature == 'poissons_ratio' :
-        color_mapper = linear_cmap(field_name = 'poissons_ratio', palette = Colorblind[8], 
-                                   low = dfwebele['poissons_ratio'].min(), 
+        color_mapper = linear_cmap(field_name = 'poissons_ratio', palette = Colorblind[8],
+                                   low = dfwebele['poissons_ratio'].min(),
                                    high = dfwebele['poissons_ratio'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("poissons_ratio", "@poissons_ratio"),
         ]
-     
-        
+
+
     if Feature == 'mineral_hardness' :
-        color_mapper = linear_cmap(field_name = 'mineral_hardness', palette = Colorblind[8], 
-                                   low = dfwebele['mineral_hardness'].min(), 
+        color_mapper = linear_cmap(field_name = 'mineral_hardness', palette = Colorblind[8],
+                                   low = dfwebele['mineral_hardness'].min(),
                                    high = dfwebele['mineral_hardness'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("mineral_hardness", "@mineral_hardness"),
         ]
-   
-    
-        
+
+
+
     if Feature == 'brinell_hardness' :
-        color_mapper = linear_cmap(field_name = 'brinell_hardness', palette = Colorblind[8], 
-                                   low = dfwebele['brinell_hardness'].min(), 
+        color_mapper = linear_cmap(field_name = 'brinell_hardness', palette = Colorblind[8],
+                                   low = dfwebele['brinell_hardness'].min(),
                                    high = dfwebele['brinell_hardness'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2427,10 +2429,10 @@ def ptableplotgenwebele(Feature):
         ("brinell_hardness", "@brinell_hardness"),
         ]
 
-        
+
     if Feature == 'vickers_hardness' :
-        color_mapper = linear_cmap(field_name = 'vickers_hardness', palette = Colorblind[8], 
-                                   low = dfwebele['vickers_hardness'].min(), 
+        color_mapper = linear_cmap(field_name = 'vickers_hardness', palette = Colorblind[8],
+                                   low = dfwebele['vickers_hardness'].min(),
                                    high = dfwebele['vickers_hardness'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2438,10 +2440,10 @@ def ptableplotgenwebele(Feature):
         ("vickers_hardness", "@vickers_hardness"),
         ]
 
-        
+
     if Feature == 'electrical_resistivity' :
-        color_mapper = linear_cmap(field_name = 'electrical_resistivity', palette = Colorblind[8], 
-                                   low = dfwebele['electrical_resistivity'].min(), 
+        color_mapper = linear_cmap(field_name = 'electrical_resistivity', palette = Colorblind[8],
+                                   low = dfwebele['electrical_resistivity'].min(),
                                    high = dfwebele['electrical_resistivity'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2449,10 +2451,10 @@ def ptableplotgenwebele(Feature):
         ("electrical_resistivity", "@electrical_resistivity × 10‑8 Ωm"),
         ]
 
-        
+
     if Feature == 'thermal_conductivity' :
-        color_mapper = linear_cmap(field_name = 'thermal_conductivity', palette = Colorblind[8], 
-                                   low = dfwebele['thermal_conductivity'].min(), 
+        color_mapper = linear_cmap(field_name = 'thermal_conductivity', palette = Colorblind[8],
+                                   low = dfwebele['thermal_conductivity'].min(),
                                    high = dfwebele['thermal_conductivity'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2460,10 +2462,10 @@ def ptableplotgenwebele(Feature):
         ("thermal_conductivity", "@thermal_conductivity W/mK"),
         ]
 
-        
+
     if Feature == 'coeff_of_lte' :
-        color_mapper = linear_cmap(field_name = 'coeff_of_lte', palette = Colorblind[8], 
-                                   low = dfwebele['coeff_of_lte'].min(), 
+        color_mapper = linear_cmap(field_name = 'coeff_of_lte', palette = Colorblind[8],
+                                   low = dfwebele['coeff_of_lte'].min(),
                                    high = dfwebele['coeff_of_lte'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2471,10 +2473,10 @@ def ptableplotgenwebele(Feature):
         ("coeff_of_lte", "@coeff_of_lte × 10‑6 /K"),
         ]
 
-        
+
     if Feature == 'reflectivity' :
-        color_mapper = linear_cmap(field_name = 'reflectivity', palette = Colorblind[8], 
-                                   low = dfwebele['reflectivity'].min(), 
+        color_mapper = linear_cmap(field_name = 'reflectivity', palette = Colorblind[8],
+                                   low = dfwebele['reflectivity'].min(),
                                    high = dfwebele['reflectivity'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2482,10 +2484,10 @@ def ptableplotgenwebele(Feature):
         ("reflectivity", "@reflectivity %"),
         ]
 
-        
+
     if Feature == 'velocity_of_sound' :
-        color_mapper = linear_cmap(field_name = 'velocity_of_sound', palette = Colorblind[8], 
-                                   low = dfwebele['velocity_of_sound'].min(), 
+        color_mapper = linear_cmap(field_name = 'velocity_of_sound', palette = Colorblind[8],
+                                   low = dfwebele['velocity_of_sound'].min(),
                                    high = dfwebele['velocity_of_sound'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2493,10 +2495,10 @@ def ptableplotgenwebele(Feature):
         ("velocity_of_sound", "@velocity_of_sound m/s"),
         ]
 
-        
+
     if Feature == 'eff_nuc_char_2s' :
-        color_mapper = linear_cmap(field_name = 'eff_nuc_char_2s', palette = Colorblind[8], 
-                                   low = dfwebele['eff_nuc_char_2s'].min(), 
+        color_mapper = linear_cmap(field_name = 'eff_nuc_char_2s', palette = Colorblind[8],
+                                   low = dfwebele['eff_nuc_char_2s'].min(),
                                    high = dfwebele['eff_nuc_char_2s'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2504,10 +2506,10 @@ def ptableplotgenwebele(Feature):
         ("eff_nuc_char_2s", "@eff_nuc_char_2s"),
         ]
 
-        
+
     if Feature == 'eff_nuc_char_3s' :
-        color_mapper = linear_cmap(field_name = 'eff_nuc_char_3s', palette = Colorblind[8], 
-                                   low = dfwebele['eff_nuc_char_3s'].min(), 
+        color_mapper = linear_cmap(field_name = 'eff_nuc_char_3s', palette = Colorblind[8],
+                                   low = dfwebele['eff_nuc_char_3s'].min(),
                                    high = dfwebele['eff_nuc_char_3s'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2515,10 +2517,10 @@ def ptableplotgenwebele(Feature):
         ("eff_nuc_char_3s", "@eff_nuc_char_3s"),
         ]
 
-        
+
     if Feature == 'eff_nuc_char_3p' :
-        color_mapper = linear_cmap(field_name = 'eff_nuc_char_3p', palette = Colorblind[8], 
-                                   low = dfwebele['eff_nuc_char_3p'].min(), 
+        color_mapper = linear_cmap(field_name = 'eff_nuc_char_3p', palette = Colorblind[8],
+                                   low = dfwebele['eff_nuc_char_3p'].min(),
                                    high = dfwebele['eff_nuc_char_3p'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2526,10 +2528,10 @@ def ptableplotgenwebele(Feature):
         ("eff_nuc_char_3p", "@eff_nuc_char_3p"),
         ]
 
-        
+
     if Feature == 'eff_nuc_char_4s' :
-        color_mapper = linear_cmap(field_name = 'eff_nuc_char_4s', palette = Colorblind[8], 
-                                   low = dfwebele['eff_nuc_char_4s'].min(), 
+        color_mapper = linear_cmap(field_name = 'eff_nuc_char_4s', palette = Colorblind[8],
+                                   low = dfwebele['eff_nuc_char_4s'].min(),
                                    high = dfwebele['eff_nuc_char_4s'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2537,10 +2539,10 @@ def ptableplotgenwebele(Feature):
         ("eff_nuc_char_4s", "@eff_nuc_char_4s"),
         ]
 
-        
+
     if Feature == 'eff_nuc_char_4p' :
-        color_mapper = linear_cmap(field_name = 'eff_nuc_char_4p', palette = Colorblind[8], 
-                                   low = dfwebele['eff_nuc_char_4p'].min(), 
+        color_mapper = linear_cmap(field_name = 'eff_nuc_char_4p', palette = Colorblind[8],
+                                   low = dfwebele['eff_nuc_char_4p'].min(),
                                    high = dfwebele['eff_nuc_char_4p'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2548,10 +2550,10 @@ def ptableplotgenwebele(Feature):
         ("eff_nuc_char_4p", "@eff_nuc_char_4p"),
         ]
 
-        
+
     if Feature == 'eff_nuc_char_4d' :
-        color_mapper = linear_cmap(field_name = 'eff_nuc_char_4d', palette = Colorblind[8], 
-                                   low = dfwebele['eff_nuc_char_4d'].min(), 
+        color_mapper = linear_cmap(field_name = 'eff_nuc_char_4d', palette = Colorblind[8],
+                                   low = dfwebele['eff_nuc_char_4d'].min(),
                                    high = dfwebele['eff_nuc_char_4d'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2559,10 +2561,10 @@ def ptableplotgenwebele(Feature):
         ("eff_nuc_char_4d", "@eff_nuc_char_4d"),
         ]
 
-        
+
     if Feature == 'eff_nuc_char_5s' :
-        color_mapper = linear_cmap(field_name = 'eff_nuc_char_5s', palette = Colorblind[8], 
-                                   low = dfwebele['eff_nuc_char_5s'].min(), 
+        color_mapper = linear_cmap(field_name = 'eff_nuc_char_5s', palette = Colorblind[8],
+                                   low = dfwebele['eff_nuc_char_5s'].min(),
                                    high = dfwebele['eff_nuc_char_5s'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2570,10 +2572,10 @@ def ptableplotgenwebele(Feature):
         ("eff_nuc_char_5s", "@eff_nuc_char_5s"),
         ]
 
-        
+
     if Feature == 'eff_nuc_char_5p' :
-        color_mapper = linear_cmap(field_name = 'eff_nuc_char_5p', palette = Colorblind[8], 
-                                   low = dfwebele['eff_nuc_char_5p'].min(), 
+        color_mapper = linear_cmap(field_name = 'eff_nuc_char_5p', palette = Colorblind[8],
+                                   low = dfwebele['eff_nuc_char_5p'].min(),
                                    high = dfwebele['eff_nuc_char_5p'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2581,10 +2583,10 @@ def ptableplotgenwebele(Feature):
         ("eff_nuc_char_5p", "@eff_nuc_char_5p"),
         ]
 
-        
+
     if Feature == 'eff_nuc_char_6s' :
-        color_mapper = linear_cmap(field_name = 'eff_nuc_char_6s', palette = Colorblind[8], 
-                                   low = dfwebele['eff_nuc_char_6s'].min(), 
+        color_mapper = linear_cmap(field_name = 'eff_nuc_char_6s', palette = Colorblind[8],
+                                   low = dfwebele['eff_nuc_char_6s'].min(),
                                    high = dfwebele['eff_nuc_char_6s'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2592,10 +2594,10 @@ def ptableplotgenwebele(Feature):
         ("eff_nuc_char_6s", "@eff_nuc_char_6s"),
         ]
 
-        
+
     if Feature == 'atomic_radius_calculated' :
-        color_mapper = linear_cmap(field_name = 'atomic_radius_calculated', palette = Colorblind[8], 
-                                   low = dfwebele['atomic_radius_calculated'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_radius_calculated', palette = Colorblind[8],
+                                   low = dfwebele['atomic_radius_calculated'].min(),
                                    high = dfwebele['atomic_radius_calculated'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2603,10 +2605,10 @@ def ptableplotgenwebele(Feature):
         ("atomic_radius_calculated", "@atomic_radius_calculated pm"),
         ]
 
-        
+
     if Feature == 'atomic_radius' :
-        color_mapper = linear_cmap(field_name = 'atomic_radius', palette = Colorblind[8], 
-                                   low = dfwebele['atomic_radius'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_radius', palette = Colorblind[8],
+                                   low = dfwebele['atomic_radius'].min(),
                                    high = dfwebele['atomic_radius'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2614,10 +2616,10 @@ def ptableplotgenwebele(Feature):
         ("atomic_radius", "@atomic_radius pm"),
         ]
 
-        
+
     if Feature == 'covalent_rad' :
-        color_mapper = linear_cmap(field_name = 'covalent_rad', palette = Colorblind[8], 
-                                   low = dfwebele['covalent_rad'].min(), 
+        color_mapper = linear_cmap(field_name = 'covalent_rad', palette = Colorblind[8],
+                                   low = dfwebele['covalent_rad'].min(),
                                    high = dfwebele['covalent_rad'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2625,10 +2627,10 @@ def ptableplotgenwebele(Feature):
         ("covalent_rad", "@covalent_rad pm"),
         ]
 
-        
+
     if Feature == 'covalent_rad_emp' :
-        color_mapper = linear_cmap(field_name = 'covalent_rad_emp', palette = Colorblind[8], 
-                                   low = dfwebele['covalent_rad_emp'].min(), 
+        color_mapper = linear_cmap(field_name = 'covalent_rad_emp', palette = Colorblind[8],
+                                   low = dfwebele['covalent_rad_emp'].min(),
                                    high = dfwebele['covalent_rad_emp'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2636,10 +2638,10 @@ def ptableplotgenwebele(Feature):
         ("covalent_rad_emp", "@covalent_rad_emp pm"),
         ]
 
-        
+
     if Feature == 'van_der_waals_rad' :
-        color_mapper = linear_cmap(field_name = 'van_der_waals_rad', palette = Colorblind[8], 
-                                   low = dfwebele['van_der_waals_rad'].min(), 
+        color_mapper = linear_cmap(field_name = 'van_der_waals_rad', palette = Colorblind[8],
+                                   low = dfwebele['van_der_waals_rad'].min(),
                                    high = dfwebele['van_der_waals_rad'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2649,8 +2651,8 @@ def ptableplotgenwebele(Feature):
 
 
     if Feature == 'orbital_radii_s' :
-        color_mapper = linear_cmap(field_name = 'orbital_radii_s', palette = Colorblind[8], 
-                                   low = dfwebele['orbital_radii_s'].min(), 
+        color_mapper = linear_cmap(field_name = 'orbital_radii_s', palette = Colorblind[8],
+                                   low = dfwebele['orbital_radii_s'].min(),
                                    high = dfwebele['orbital_radii_s'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2658,10 +2660,10 @@ def ptableplotgenwebele(Feature):
         ("orbital_radii_s", "@orbital_radii_s /AU"),
         ]
 
-        
+
     if Feature == 'orbital_radii_f' :
-        color_mapper = linear_cmap(field_name = 'orbital_radii_f', palette = Colorblind[8], 
-                                   low = dfwebele['orbital_radii_f'].min(), 
+        color_mapper = linear_cmap(field_name = 'orbital_radii_f', palette = Colorblind[8],
+                                   low = dfwebele['orbital_radii_f'].min(),
                                    high = dfwebele['orbital_radii_f'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2669,10 +2671,10 @@ def ptableplotgenwebele(Feature):
         ("orbital_radii_f", "@orbital_radii_f /AU"),
         ]
 
-        
+
     if Feature == 'orbital_radii_p' :
-        color_mapper = linear_cmap(field_name = 'orbital_radii_p', palette = Colorblind[8], 
-                                   low = dfwebele['orbital_radii_p'].min(), 
+        color_mapper = linear_cmap(field_name = 'orbital_radii_p', palette = Colorblind[8],
+                                   low = dfwebele['orbital_radii_p'].min(),
                                    high = dfwebele['orbital_radii_p'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2680,10 +2682,10 @@ def ptableplotgenwebele(Feature):
         ("orbital_radii_p", "@orbital_radii_p /AU"),
         ]
 
-        
+
     if Feature == 'orbital_radii_d' :
-        color_mapper = linear_cmap(field_name = 'orbital_radii_d', palette = Colorblind[8], 
-                                   low = dfwebele['orbital_radii_d'].min(), 
+        color_mapper = linear_cmap(field_name = 'orbital_radii_d', palette = Colorblind[8],
+                                   low = dfwebele['orbital_radii_d'].min(),
                                    high = dfwebele['orbital_radii_d'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2693,8 +2695,8 @@ def ptableplotgenwebele(Feature):
 
 
     if Feature == 'atomic_en_allen' :
-        color_mapper = linear_cmap(field_name = 'atomic_en_allen', palette = Colorblind[8], 
-                                   low = dfwebele['atomic_en_allen'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_en_allen', palette = Colorblind[8],
+                                   low = dfwebele['atomic_en_allen'].min(),
                                    high = dfwebele['atomic_en_allen'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2702,21 +2704,21 @@ def ptableplotgenwebele(Feature):
         ("atomic_en_allen", "@atomic_en_allen"),
         ]
 
-        
+
     if Feature == 'atomic_en_paul' :
-        color_mapper = linear_cmap(field_name = 'atomic_en_paul', palette = Colorblind[8], 
-                                   low = dfwebele['atomic_en_paul'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_en_paul', palette = Colorblind[8],
+                                   low = dfwebele['atomic_en_paul'].min(),
                                    high = dfwebele['atomic_en_paul'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_en_paul", "@atomic_en_paul"),
         ]
- 
-        
+
+
     if Feature == 'atomic_en_allredroch' :
-        color_mapper = linear_cmap(field_name = 'atomic_en_allredroch', palette = Colorblind[8], 
-                                   low = dfwebele['atomic_en_allredroch'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_en_allredroch', palette = Colorblind[8],
+                                   low = dfwebele['atomic_en_allredroch'].min(),
                                    high = dfwebele['atomic_en_allredroch'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2724,10 +2726,10 @@ def ptableplotgenwebele(Feature):
         ("atomic_en_allredroch", "@atomic_en_allredroch"),
         ]
 
-        
+
     if Feature == 'atomic_radius_calculated' :
-        color_mapper = linear_cmap(field_name = 'atomic_radius_calculated', palette = Colorblind[8], 
-                                   low = dfwebele['atomic_radius_calculated'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_radius_calculated', palette = Colorblind[8],
+                                   low = dfwebele['atomic_radius_calculated'].min(),
                                    high = dfwebele['atomic_radius_calculated'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2735,10 +2737,10 @@ def ptableplotgenwebele(Feature):
         ("atomic_radius_calculated", "@atomic_radius_calculated"),
         ]
 
-        
+
     if Feature == 'atomic_en_sanderson' :
-        color_mapper = linear_cmap(field_name = 'atomic_en_sanderson', palette = Colorblind[8], 
-                                   low = dfwebele['atomic_en_sanderson'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_en_sanderson', palette = Colorblind[8],
+                                   low = dfwebele['atomic_en_sanderson'].min(),
                                    high = dfwebele['atomic_en_sanderson'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2746,10 +2748,10 @@ def ptableplotgenwebele(Feature):
         ("atomic_en_sanderson", "@atomic_en_sanderson"),
         ]
 
-        
+
     if Feature == 'supercond_temp' :
-        color_mapper = linear_cmap(field_name = 'supercond_temp', palette = Colorblind[8], 
-                                   low = dfwebele['supercond_temp'].min(), 
+        color_mapper = linear_cmap(field_name = 'supercond_temp', palette = Colorblind[8],
+                                   low = dfwebele['supercond_temp'].min(),
                                    high = dfwebele['supercond_temp'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2757,43 +2759,43 @@ def ptableplotgenwebele(Feature):
         ("supercond_temp", "@supercond_temp K"),
         ]
 
-        
+
     if Feature == 'critical_temperature' :
-        color_mapper = linear_cmap(field_name = 'critical_temperature', palette = Colorblind[8], 
-                                   low = dfwebele['critical_temperature'].min(), 
+        color_mapper = linear_cmap(field_name = 'critical_temperature', palette = Colorblind[8],
+                                   low = dfwebele['critical_temperature'].min(),
                                    high = dfwebele['critical_temperature'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("critical_temperature", "@critical_temperature K"),
         ]
- 
-        
+
+
     if Feature == 'liquid_range' :
-        color_mapper = linear_cmap(field_name = 'liquid_range', palette = Colorblind[8], 
-                                   low = dfwebele['liquid_range'].min(), 
+        color_mapper = linear_cmap(field_name = 'liquid_range', palette = Colorblind[8],
+                                   low = dfwebele['liquid_range'].min(),
                                    high = dfwebele['liquid_range'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("liquid_range", "@liquid_range K"),
         ]
- 
+
 
     if Feature == 'boiling_point' :
-        color_mapper = linear_cmap(field_name = 'boiling_point', palette = Colorblind[8], 
-                                   low = dfwebele['boiling_point'].min(), 
+        color_mapper = linear_cmap(field_name = 'boiling_point', palette = Colorblind[8],
+                                   low = dfwebele['boiling_point'].min(),
                                    high = dfwebele['boiling_point'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("boiling_point", "@boiling_point K"),
         ]
-  
-        
+
+
     if Feature == 'melting_point' :
-        color_mapper = linear_cmap(field_name = 'melting_point', palette = Colorblind[8], 
-                                   low = dfwebele['melting_point'].min(), 
+        color_mapper = linear_cmap(field_name = 'melting_point', palette = Colorblind[8],
+                                   low = dfwebele['melting_point'].min(),
                                    high = dfwebele['melting_point'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2801,10 +2803,10 @@ def ptableplotgenwebele(Feature):
         ("melting_point", "@melting_point K"),
         ]
 
-        
+
     if Feature == 'atomic_hfu' :
-        color_mapper = linear_cmap(field_name = 'atomic_hfu', palette = Colorblind[8], 
-                                   low = dfwebele['atomic_hfu'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_hfu', palette = Colorblind[8],
+                                   low = dfwebele['atomic_hfu'].min(),
                                    high = dfwebele['atomic_hfu'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2812,21 +2814,21 @@ def ptableplotgenwebele(Feature):
         ("atomic_hfu", "@atomic_hfu kJ/mol"),
         ]
 
-        
+
     if Feature == 'atomic_hvap' :
-        color_mapper = linear_cmap(field_name = 'atomic_hvap', palette = Colorblind[8], 
-                                   low = dfwebele['atomic_hvap'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_hvap', palette = Colorblind[8],
+                                   low = dfwebele['atomic_hvap'].min(),
                                    high = dfwebele['atomic_hvap'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
         ("Type", "@metal"),
         ("atomic_hvap", "@atomic_hvap kJ/mol"),
         ]
-  
-        
+
+
     if Feature == 'atomic_hatm' :
-        color_mapper = linear_cmap(field_name = 'atomic_hatm', palette = Colorblind[8], 
-                                   low = dfwebele['atomic_hatm'].min(), 
+        color_mapper = linear_cmap(field_name = 'atomic_hatm', palette = Colorblind[8],
+                                   low = dfwebele['atomic_hatm'].min(),
                                    high = dfwebele['atomic_hatm'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2834,10 +2836,10 @@ def ptableplotgenwebele(Feature):
         ("atomic_hatm", "@atomic_hatm kJ/mol"),
         ]
 
-        
+
     if Feature == 'Electron_bin_En_1s' :
-        color_mapper = linear_cmap(field_name = 'Electron_bin_En_1s', palette = Colorblind[8], 
-                                   low = dfwebele['Electron_bin_En_1s'].min(), 
+        color_mapper = linear_cmap(field_name = 'Electron_bin_En_1s', palette = Colorblind[8],
+                                   low = dfwebele['Electron_bin_En_1s'].min(),
                                    high = dfwebele['Electron_bin_En_1s'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2847,8 +2849,8 @@ def ptableplotgenwebele(Feature):
 
 
     if Feature == 'Electron_bin_En_2s' :
-        color_mapper = linear_cmap(field_name = 'Electron_bin_En_2s', palette = Colorblind[8], 
-                                   low = dfwebele['Electron_bin_En_2s'].min(), 
+        color_mapper = linear_cmap(field_name = 'Electron_bin_En_2s', palette = Colorblind[8],
+                                   low = dfwebele['Electron_bin_En_2s'].min(),
                                    high = dfwebele['Electron_bin_En_2s'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2858,8 +2860,8 @@ def ptableplotgenwebele(Feature):
 
 
     if Feature == 'Ionisation_En_1st' :
-        color_mapper = linear_cmap(field_name = 'Ionisation_En_1st', palette = Colorblind[8], 
-                                   low = dfwebele['Ionisation_En_1st'].min(), 
+        color_mapper = linear_cmap(field_name = 'Ionisation_En_1st', palette = Colorblind[8],
+                                   low = dfwebele['Ionisation_En_1st'].min(),
                                    high = dfwebele['Ionisation_En_1st'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2867,10 +2869,10 @@ def ptableplotgenwebele(Feature):
         ("Ionisation_En_1st", "@Ionisation_En_1st (Enthalpy/kJ mol‑1)"),
         ]
 
-        
+
     if Feature == 'Ionisation_En_2nd' :
-        color_mapper = linear_cmap(field_name = 'Ionisation_En_2nd', palette = Colorblind[8], 
-                                   low = dfwebele['Ionisation_En_2nd'].min(), 
+        color_mapper = linear_cmap(field_name = 'Ionisation_En_2nd', palette = Colorblind[8],
+                                   low = dfwebele['Ionisation_En_2nd'].min(),
                                    high = dfwebele['Ionisation_En_2nd'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2878,10 +2880,10 @@ def ptableplotgenwebele(Feature):
         ("Ionisation_En_2nd", "@Ionisation_En_2nd (Enthalpy/kJ mol‑1)"),
         ]
 
-        
+
     if Feature == 'Ionisation_En_3rd' :
-        color_mapper = linear_cmap(field_name = 'Ionisation_En_3rd', palette = Colorblind[8], 
-                                   low = dfwebele['Ionisation_En_3rd'].min(), 
+        color_mapper = linear_cmap(field_name = 'Ionisation_En_3rd', palette = Colorblind[8],
+                                   low = dfwebele['Ionisation_En_3rd'].min(),
                                    high = dfwebele['Ionisation_En_3rd'].max())
         p2.hover.tooltips = [
         ("Name", "@name"),
@@ -2940,13 +2942,13 @@ def showfigmatmin(Feature):
     Generates an interactive heatmap with dropdown menu for  atomic_properites_magpie module atomic features.
     """
     return interact(ptableplotgenmatmin, Feature = Feature)
-    
+
 def showfigpymat(Feature):
     """
     Generates an interactive heatmap with dropdown menu for  atomic_properites_pymat module atomic features.
     """
     return interact(ptableplotgenpymat, Feature = Feature)
-    
+
 def showfigwebele(Feature):
     """
     Generates an interactive heatmap with dropdown menu for  atomic_properites_webele module atomic features.
@@ -2968,7 +2970,7 @@ def lda(df3,df4):
                 df3.loc[j,"atomic_r_s"] = df4.loc[j,"r_s"]*100
                 df3.loc[j,"atomic_r_p"] = df4.loc[j,"r_p"]*100
                 df3.loc[j,"atomic_r_d"] = df4.loc[j,"r_d"]*100
-    
+
     globals()['dflda'] = df3
 
 
@@ -2980,7 +2982,7 @@ def f(df3,df4):
     df3.set_index('symbol',inplace=True)
     for r,c in df4.iterrows():
         for j in df3.index:
-            if (r==j):   
+            if (r==j):
                 df3.loc[j,"atomic_hfomo"] = df4.loc[j,"atomic_hfomo"]*6.242e+18
                 df3.loc[j,"atomic_hpomo"] = df4.loc[j,"atomic_hpomo"]*6.242e+18
                 df3.loc[j,"atomic_lfumo"] = df4.loc[j,"atomic_lfumo"]*6.242e+18
@@ -3009,9 +3011,9 @@ def f(df3,df4):
                 df3.loc[j,"atomic_r_p_1"] = df4.loc[j,"r_p_1.0"]*100
                 df3.loc[j,"atomic_r_d_1"] = df4.loc[j,"r_d_1.0"]*100
                 df3.loc[j,"atomic_r_val_1"] = df4.loc[j,"r_val_1.0"]*100
-    
+
     globals()['dffa'] = df3
-                
+
 def t(df3,df4):
     """
     Adds atomic_properites_dft module atomic features(Spin= "True") to previously cleaned pandas dataframe imported from bokeh
@@ -3068,7 +3070,7 @@ def t(df3,df4):
                 df3.loc[j,"atomic_r_dn_d_1"] = df4.loc[j,"r_dn_d_1.0"]*100
                 df3.loc[j,"atomic_r_up_val_1"] = df4.loc[j,"r_up_val_1.0"]*100
                 df3.loc[j,"atomic_r_dn_val_1"] = df4.loc[j,"r_dn_val_1.0"]*100
-                
+
     globals()['dftr'] = df3
 
 
@@ -3144,7 +3146,7 @@ def matmin(df3,df4):
                 df3.loc[j,"atomic_isnonmetal"] =  float(df4.loc[j,"atomic_isnonmetal"])
 
     globals()['dfmatm'] = df3
-                    
+
 def pymat(df3,df4):
     """
     Adds atomic_properites_pymat module atomic features to previously cleaned pandas dataframe imported from bokeh
@@ -3172,7 +3174,7 @@ def pymat(df3,df4):
                 df3.loc[j,"atomic_refelctivity"] = float(df4.loc[j,"Reflectivity"])
                 df3.loc[j,"rigidity_modulus"] = float(df4.loc[j,"Rigidity modulus"])
                 #df3["shannon_radii"] = df4["Shannon radii"]
-            
+
                 df3.loc[j,"van_der_waals_rad"] = float(df4.loc[j,"Van der waals radius"])
                 df3.loc[j,"velocity_of_sound"] = float(df4.loc[j,"Velocity of sound"])
                 df3.loc[j,"vickers_hardness"] = float(df4.loc[j,"Vickers hardness"])
@@ -3195,7 +3197,7 @@ def pymat(df3,df4):
                     df3.loc[j,"electrical_resistivity"] = df4.loc[j,"Electrical resistivity"]
                 except IndexError:
                     df3.loc[j,"electrical_resistivity"] = np.nan
-            
+
                 try:
                     temp=df4.loc[j,"Melting point"]
                     val=re.findall(r"[-+]?\d*\.\d+|\d+",temp)
@@ -3208,14 +3210,14 @@ def pymat(df3,df4):
                     df3.loc[j,"supercond_temp"] = float(val[0])
                 except TypeError:
                     df3.loc[j,"supercond_temp"] = df4.loc[j,"Superconduction temperature"]
-            
+
                 try:
                     temp=df4.loc[j,"Thermal conductivity"]
                     val=re.findall(r"[-+]?\d*\.\d+|\d+",temp)
                     df3.loc[j,"thermal_cond"] = float(val[0])
                 except TypeError:
                     df3.loc[j,"thermal_cond"] = df4.loc[j,"Thermal conductivity"]
-            
+
                 try:
                     df3.loc[j,"atomic_orbitals_1s"] = float(df4.loc[j,"Atomic orbitals"]['1s'])
                 except (KeyError,TypeError) as error:
@@ -3288,9 +3290,9 @@ def pymat(df3,df4):
                     df3.loc[j,"atomic_orbitals_5f"] = float(df4.loc[j,"Atomic orbitals"]['5f'])
                 except (KeyError,TypeError) as error:
                     df3.loc[j,"atomic_orbitals_5f"] = np.nan
-                    
+
     globals()['dfpymat'] = df3
-    
+
 def webele(df3,df4):
     """
     Adds atomic_properites_webele module atomic features to previously cleaned pandas dataframe imported from bokeh
@@ -3334,7 +3336,7 @@ def webele(df3,df4):
                                                              ['Sanderson electronegativity'].strip())
                 except AttributeError:
                     df3.loc[j,'atomic_en_sanderson'] = np.nan
-                
+
                 try:
                     df3.loc[j,'atomic_hfu'] = df4.loc[j,'thermo_chem']['Enthalpy of fusion']
                 except:
@@ -3389,7 +3391,7 @@ def webele(df3,df4):
                     df3.loc[j,'eff_nuc_char_6s'] = float(df4.loc[j,'Eff_Nuc_Char']['6s'])
                 except ValueError:
                     df3.loc[j,'eff_nuc_char_6s'] = np.nan
-                    
+
                 try:
                     df3.loc[j,'density_of_solid'] = float(df4.loc[j,'Density_of_solid'].strip())
                 except AttributeError:
@@ -3450,7 +3452,7 @@ def webele(df3,df4):
                     df3.loc[j,'electron_aff'] = float(df4.loc[j,'Electron_aff'].strip())
                 except AttributeError:
                     df3.loc[j,'electron_aff'] = np.nan
-                
+
 
                 try:
                     df3.loc[j,'covalent_rad'] = float(df4.loc[j,'atom_radii']
@@ -3466,7 +3468,7 @@ def webele(df3,df4):
                     df3.loc[j,'van_der_waals_rad'] = float(df4.loc[j,'atom_radii']['van der Waals radius'].strip())
                 except ValueError:
                     df3.loc[j,'van_der_waals_rad'] = np.nan
-                    
+
                 try:
                     df3.loc[j,'orbital_radii_s'] = float(df4.loc[j,'orbital_radii']
                                                        ['s orbital'].strip())
@@ -3486,7 +3488,7 @@ def webele(df3,df4):
                     df3.loc[j,'orbital_radii_f'] = float(df4.loc[j,'orbital_radii']['f orbital'].strip())
                 except AttributeError:
                     df3.loc[j,'orbital_radii_f'] = np.nan
-                    
+
                 try:
                     df3.loc[j,'boiling_point'] = df4.loc[j,'thermo_chem']['Boiling point']
                 except:
@@ -3507,9 +3509,9 @@ def webele(df3,df4):
                     df3.loc[j,'critical_temperature'] = df4.loc[j,'thermo_chem']['Critical temperature']
                 except:
                     df3.loc[j,'critical_temperature'] = np.nan
-                
-                    
-                
+
+
+
                 try:
                     df3.loc[j,'Electron_bin_En_1s'] = float(df4.loc[j,'Electron_bin_En']['1s'])
                 except KeyError:
@@ -3530,14 +3532,14 @@ def webele(df3,df4):
                     df3.loc[j,'Ionisation_En_3rd'] = float(df4.loc[j,'Ionisation_En']['3rd'])
                 except KeyError:
                     df3.loc[j,'Ionisation_En_3rd'] = np.nan
-                
+
     globals()['dfwebele'] = df3
 
 path = os.path.abspath(os.path.join(os.path.dirname(__file__),".."))
 
 def heatmap(Spin = '', method = ''):
     '''
-After importing periodictable module one must call this heatmap method to get interactive heatmaps. One must supply Spin and method appropirate keywords agruments as per one's interest. 
+After importing periodictable module one must call this heatmap method to get interactive heatmaps. One must supply Spin and method appropirate keywords agruments as per one's interest.
 
 Spin arg value could be :
 
diff --git a/atomicfeaturespackage/data/dft/no_spin_hse06_really_tight.csv b/src/atomic_features_package/data/dft/no_spin_hse06_really_tight.csv
similarity index 100%
rename from atomicfeaturespackage/data/dft/no_spin_hse06_really_tight.csv
rename to src/atomic_features_package/data/dft/no_spin_hse06_really_tight.csv
diff --git a/atomicfeaturespackage/data/dft/no_spin_pbe0_really_tight.csv b/src/atomic_features_package/data/dft/no_spin_pbe0_really_tight.csv
similarity index 100%
rename from atomicfeaturespackage/data/dft/no_spin_pbe0_really_tight.csv
rename to src/atomic_features_package/data/dft/no_spin_pbe0_really_tight.csv
diff --git a/atomicfeaturespackage/data/dft/no_spin_pbe_really_tight.csv b/src/atomic_features_package/data/dft/no_spin_pbe_really_tight.csv
similarity index 100%
rename from atomicfeaturespackage/data/dft/no_spin_pbe_really_tight.csv
rename to src/atomic_features_package/data/dft/no_spin_pbe_really_tight.csv
diff --git a/atomicfeaturespackage/data/dft/no_spin_pbesol_really_tight.csv b/src/atomic_features_package/data/dft/no_spin_pbesol_really_tight.csv
similarity index 100%
rename from atomicfeaturespackage/data/dft/no_spin_pbesol_really_tight.csv
rename to src/atomic_features_package/data/dft/no_spin_pbesol_really_tight.csv
diff --git a/atomicfeaturespackage/data/dft/no_spin_pw-lda_really_tight.csv b/src/atomic_features_package/data/dft/no_spin_pw-lda_really_tight.csv
similarity index 100%
rename from atomicfeaturespackage/data/dft/no_spin_pw-lda_really_tight.csv
rename to src/atomic_features_package/data/dft/no_spin_pw-lda_really_tight.csv
diff --git a/atomicfeaturespackage/data/dft/no_spin_revpbe_really_tight.csv b/src/atomic_features_package/data/dft/no_spin_revpbe_really_tight.csv
similarity index 100%
rename from atomicfeaturespackage/data/dft/no_spin_revpbe_really_tight.csv
rename to src/atomic_features_package/data/dft/no_spin_revpbe_really_tight.csv
diff --git a/atomicfeaturespackage/data/dft/spin_hse06_really_tight.csv b/src/atomic_features_package/data/dft/spin_hse06_really_tight.csv
similarity index 100%
rename from atomicfeaturespackage/data/dft/spin_hse06_really_tight.csv
rename to src/atomic_features_package/data/dft/spin_hse06_really_tight.csv
diff --git a/atomicfeaturespackage/data/dft/spin_pbe0_really_tight.csv b/src/atomic_features_package/data/dft/spin_pbe0_really_tight.csv
similarity index 100%
rename from atomicfeaturespackage/data/dft/spin_pbe0_really_tight.csv
rename to src/atomic_features_package/data/dft/spin_pbe0_really_tight.csv
diff --git a/atomicfeaturespackage/data/dft/spin_pbe_really_tight.csv b/src/atomic_features_package/data/dft/spin_pbe_really_tight.csv
similarity index 100%
rename from atomicfeaturespackage/data/dft/spin_pbe_really_tight.csv
rename to src/atomic_features_package/data/dft/spin_pbe_really_tight.csv
diff --git a/atomicfeaturespackage/data/dft/spin_pbesol_really_tight.csv b/src/atomic_features_package/data/dft/spin_pbesol_really_tight.csv
similarity index 100%
rename from atomicfeaturespackage/data/dft/spin_pbesol_really_tight.csv
rename to src/atomic_features_package/data/dft/spin_pbesol_really_tight.csv
diff --git a/atomicfeaturespackage/data/dft/spin_pw-lda_really_tight.csv b/src/atomic_features_package/data/dft/spin_pw-lda_really_tight.csv
similarity index 100%
rename from atomicfeaturespackage/data/dft/spin_pw-lda_really_tight.csv
rename to src/atomic_features_package/data/dft/spin_pw-lda_really_tight.csv
diff --git a/atomicfeaturespackage/data/dft/spin_revpbe_really_tight.csv b/src/atomic_features_package/data/dft/spin_revpbe_really_tight.csv
similarity index 100%
rename from atomicfeaturespackage/data/dft/spin_revpbe_really_tight.csv
rename to src/atomic_features_package/data/dft/spin_revpbe_really_tight.csv
diff --git a/atomicfeaturespackage/data/lda2015/Atomic_features.csv b/src/atomic_features_package/data/lda2015/Atomic_features.csv
similarity index 100%
rename from atomicfeaturespackage/data/lda2015/Atomic_features.csv
rename to src/atomic_features_package/data/lda2015/Atomic_features.csv
diff --git a/atomicfeaturespackage/data/matminer/AllenElectronegativity.table b/src/atomic_features_package/data/matminer/AllenElectronegativity.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/AllenElectronegativity.table
rename to src/atomic_features_package/data/matminer/AllenElectronegativity.table
diff --git a/atomicfeaturespackage/data/matminer/AtomicRadius.table b/src/atomic_features_package/data/matminer/AtomicRadius.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/AtomicRadius.table
rename to src/atomic_features_package/data/matminer/AtomicRadius.table
diff --git a/atomicfeaturespackage/data/matminer/AtomicVolume.table b/src/atomic_features_package/data/matminer/AtomicVolume.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/AtomicVolume.table
rename to src/atomic_features_package/data/matminer/AtomicVolume.table
diff --git a/atomicfeaturespackage/data/matminer/AtomicWeight.table b/src/atomic_features_package/data/matminer/AtomicWeight.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/AtomicWeight.table
rename to src/atomic_features_package/data/matminer/AtomicWeight.table
diff --git a/atomicfeaturespackage/data/matminer/BoilingT.table b/src/atomic_features_package/data/matminer/BoilingT.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/BoilingT.table
rename to src/atomic_features_package/data/matminer/BoilingT.table
diff --git a/atomicfeaturespackage/data/matminer/BulkModulus.table b/src/atomic_features_package/data/matminer/BulkModulus.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/BulkModulus.table
rename to src/atomic_features_package/data/matminer/BulkModulus.table
diff --git a/atomicfeaturespackage/data/matminer/Column.table b/src/atomic_features_package/data/matminer/Column.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/Column.table
rename to src/atomic_features_package/data/matminer/Column.table
diff --git a/atomicfeaturespackage/data/matminer/CovalentRadius.table b/src/atomic_features_package/data/matminer/CovalentRadius.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/CovalentRadius.table
rename to src/atomic_features_package/data/matminer/CovalentRadius.table
diff --git a/atomicfeaturespackage/data/matminer/Density.table b/src/atomic_features_package/data/matminer/Density.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/Density.table
rename to src/atomic_features_package/data/matminer/Density.table
diff --git a/atomicfeaturespackage/data/matminer/DipolePolarizability.table b/src/atomic_features_package/data/matminer/DipolePolarizability.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/DipolePolarizability.table
rename to src/atomic_features_package/data/matminer/DipolePolarizability.table
diff --git a/atomicfeaturespackage/data/matminer/ElectronAffinity.table b/src/atomic_features_package/data/matminer/ElectronAffinity.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/ElectronAffinity.table
rename to src/atomic_features_package/data/matminer/ElectronAffinity.table
diff --git a/atomicfeaturespackage/data/matminer/Electronegativity.table b/src/atomic_features_package/data/matminer/Electronegativity.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/Electronegativity.table
rename to src/atomic_features_package/data/matminer/Electronegativity.table
diff --git a/atomicfeaturespackage/data/matminer/FirstIonizationEnergy.table b/src/atomic_features_package/data/matminer/FirstIonizationEnergy.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/FirstIonizationEnergy.table
rename to src/atomic_features_package/data/matminer/FirstIonizationEnergy.table
diff --git a/atomicfeaturespackage/data/matminer/GSbandgap.table b/src/atomic_features_package/data/matminer/GSbandgap.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/GSbandgap.table
rename to src/atomic_features_package/data/matminer/GSbandgap.table
diff --git a/atomicfeaturespackage/data/matminer/GSenergy_pa.table b/src/atomic_features_package/data/matminer/GSenergy_pa.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/GSenergy_pa.table
rename to src/atomic_features_package/data/matminer/GSenergy_pa.table
diff --git a/atomicfeaturespackage/data/matminer/GSestBCClatcnt.table b/src/atomic_features_package/data/matminer/GSestBCClatcnt.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/GSestBCClatcnt.table
rename to src/atomic_features_package/data/matminer/GSestBCClatcnt.table
diff --git a/atomicfeaturespackage/data/matminer/GSestFCClatcnt.table b/src/atomic_features_package/data/matminer/GSestFCClatcnt.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/GSestFCClatcnt.table
rename to src/atomic_features_package/data/matminer/GSestFCClatcnt.table
diff --git a/atomicfeaturespackage/data/matminer/GSmagmom.table b/src/atomic_features_package/data/matminer/GSmagmom.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/GSmagmom.table
rename to src/atomic_features_package/data/matminer/GSmagmom.table
diff --git a/atomicfeaturespackage/data/matminer/GSvolume_pa.table b/src/atomic_features_package/data/matminer/GSvolume_pa.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/GSvolume_pa.table
rename to src/atomic_features_package/data/matminer/GSvolume_pa.table
diff --git a/atomicfeaturespackage/data/matminer/HHIp.table b/src/atomic_features_package/data/matminer/HHIp.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/HHIp.table
rename to src/atomic_features_package/data/matminer/HHIp.table
diff --git a/atomicfeaturespackage/data/matminer/HHIr.table b/src/atomic_features_package/data/matminer/HHIr.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/HHIr.table
rename to src/atomic_features_package/data/matminer/HHIr.table
diff --git a/atomicfeaturespackage/data/matminer/HeatCapacityMass.table b/src/atomic_features_package/data/matminer/HeatCapacityMass.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/HeatCapacityMass.table
rename to src/atomic_features_package/data/matminer/HeatCapacityMass.table
diff --git a/atomicfeaturespackage/data/matminer/HeatCapacityMolar.table b/src/atomic_features_package/data/matminer/HeatCapacityMolar.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/HeatCapacityMolar.table
rename to src/atomic_features_package/data/matminer/HeatCapacityMolar.table
diff --git a/atomicfeaturespackage/data/matminer/HeatFusion.table b/src/atomic_features_package/data/matminer/HeatFusion.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/HeatFusion.table
rename to src/atomic_features_package/data/matminer/HeatFusion.table
diff --git a/atomicfeaturespackage/data/matminer/HeatVaporization.table b/src/atomic_features_package/data/matminer/HeatVaporization.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/HeatVaporization.table
rename to src/atomic_features_package/data/matminer/HeatVaporization.table
diff --git a/atomicfeaturespackage/data/matminer/ICSDVolume.table b/src/atomic_features_package/data/matminer/ICSDVolume.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/ICSDVolume.table
rename to src/atomic_features_package/data/matminer/ICSDVolume.table
diff --git a/atomicfeaturespackage/data/matminer/IonizationEnergies.table b/src/atomic_features_package/data/matminer/IonizationEnergies.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/IonizationEnergies.table
rename to src/atomic_features_package/data/matminer/IonizationEnergies.table
diff --git a/atomicfeaturespackage/data/matminer/IsAlkali.table b/src/atomic_features_package/data/matminer/IsAlkali.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/IsAlkali.table
rename to src/atomic_features_package/data/matminer/IsAlkali.table
diff --git a/atomicfeaturespackage/data/matminer/IsDBlock.table b/src/atomic_features_package/data/matminer/IsDBlock.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/IsDBlock.table
rename to src/atomic_features_package/data/matminer/IsDBlock.table
diff --git a/atomicfeaturespackage/data/matminer/IsFBlock.table b/src/atomic_features_package/data/matminer/IsFBlock.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/IsFBlock.table
rename to src/atomic_features_package/data/matminer/IsFBlock.table
diff --git a/atomicfeaturespackage/data/matminer/IsMetal.table b/src/atomic_features_package/data/matminer/IsMetal.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/IsMetal.table
rename to src/atomic_features_package/data/matminer/IsMetal.table
diff --git a/atomicfeaturespackage/data/matminer/IsMetalloid.table b/src/atomic_features_package/data/matminer/IsMetalloid.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/IsMetalloid.table
rename to src/atomic_features_package/data/matminer/IsMetalloid.table
diff --git a/atomicfeaturespackage/data/matminer/IsNonmetal.table b/src/atomic_features_package/data/matminer/IsNonmetal.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/IsNonmetal.table
rename to src/atomic_features_package/data/matminer/IsNonmetal.table
diff --git a/atomicfeaturespackage/data/matminer/LogThermalConductivity.table b/src/atomic_features_package/data/matminer/LogThermalConductivity.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/LogThermalConductivity.table
rename to src/atomic_features_package/data/matminer/LogThermalConductivity.table
diff --git a/atomicfeaturespackage/data/matminer/MeltingT.table b/src/atomic_features_package/data/matminer/MeltingT.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/MeltingT.table
rename to src/atomic_features_package/data/matminer/MeltingT.table
diff --git a/atomicfeaturespackage/data/matminer/MendeleevNumber.table b/src/atomic_features_package/data/matminer/MendeleevNumber.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/MendeleevNumber.table
rename to src/atomic_features_package/data/matminer/MendeleevNumber.table
diff --git a/atomicfeaturespackage/data/matminer/MiracleRadius.table b/src/atomic_features_package/data/matminer/MiracleRadius.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/MiracleRadius.table
rename to src/atomic_features_package/data/matminer/MiracleRadius.table
diff --git a/atomicfeaturespackage/data/matminer/MolarVolume.table b/src/atomic_features_package/data/matminer/MolarVolume.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/MolarVolume.table
rename to src/atomic_features_package/data/matminer/MolarVolume.table
diff --git a/atomicfeaturespackage/data/matminer/NUnfilled.table b/src/atomic_features_package/data/matminer/NUnfilled.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/NUnfilled.table
rename to src/atomic_features_package/data/matminer/NUnfilled.table
diff --git a/atomicfeaturespackage/data/matminer/NValence.table b/src/atomic_features_package/data/matminer/NValence.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/NValence.table
rename to src/atomic_features_package/data/matminer/NValence.table
diff --git a/atomicfeaturespackage/data/matminer/NdUnfilled.table b/src/atomic_features_package/data/matminer/NdUnfilled.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/NdUnfilled.table
rename to src/atomic_features_package/data/matminer/NdUnfilled.table
diff --git a/atomicfeaturespackage/data/matminer/NdValence.table b/src/atomic_features_package/data/matminer/NdValence.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/NdValence.table
rename to src/atomic_features_package/data/matminer/NdValence.table
diff --git a/atomicfeaturespackage/data/matminer/NfUnfilled.table b/src/atomic_features_package/data/matminer/NfUnfilled.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/NfUnfilled.table
rename to src/atomic_features_package/data/matminer/NfUnfilled.table
diff --git a/atomicfeaturespackage/data/matminer/NfValence.table b/src/atomic_features_package/data/matminer/NfValence.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/NfValence.table
rename to src/atomic_features_package/data/matminer/NfValence.table
diff --git a/atomicfeaturespackage/data/matminer/NpUnfilled.table b/src/atomic_features_package/data/matminer/NpUnfilled.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/NpUnfilled.table
rename to src/atomic_features_package/data/matminer/NpUnfilled.table
diff --git a/atomicfeaturespackage/data/matminer/NpValence.table b/src/atomic_features_package/data/matminer/NpValence.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/NpValence.table
rename to src/atomic_features_package/data/matminer/NpValence.table
diff --git a/atomicfeaturespackage/data/matminer/NsUnfilled.table b/src/atomic_features_package/data/matminer/NsUnfilled.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/NsUnfilled.table
rename to src/atomic_features_package/data/matminer/NsUnfilled.table
diff --git a/atomicfeaturespackage/data/matminer/NsValence.table b/src/atomic_features_package/data/matminer/NsValence.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/NsValence.table
rename to src/atomic_features_package/data/matminer/NsValence.table
diff --git a/atomicfeaturespackage/data/matminer/Number.table b/src/atomic_features_package/data/matminer/Number.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/Number.table
rename to src/atomic_features_package/data/matminer/Number.table
diff --git a/atomicfeaturespackage/data/matminer/OxidationStates.table b/src/atomic_features_package/data/matminer/OxidationStates.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/OxidationStates.table
rename to src/atomic_features_package/data/matminer/OxidationStates.table
diff --git a/atomicfeaturespackage/data/matminer/Polarizability.table b/src/atomic_features_package/data/matminer/Polarizability.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/Polarizability.table
rename to src/atomic_features_package/data/matminer/Polarizability.table
diff --git a/atomicfeaturespackage/data/matminer/Row.table b/src/atomic_features_package/data/matminer/Row.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/Row.table
rename to src/atomic_features_package/data/matminer/Row.table
diff --git a/atomicfeaturespackage/data/matminer/SecondIonizationEnergy.table b/src/atomic_features_package/data/matminer/SecondIonizationEnergy.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/SecondIonizationEnergy.table
rename to src/atomic_features_package/data/matminer/SecondIonizationEnergy.table
diff --git a/atomicfeaturespackage/data/matminer/ShearModulus.table b/src/atomic_features_package/data/matminer/ShearModulus.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/ShearModulus.table
rename to src/atomic_features_package/data/matminer/ShearModulus.table
diff --git a/atomicfeaturespackage/data/matminer/SpaceGroupNumber.table b/src/atomic_features_package/data/matminer/SpaceGroupNumber.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/SpaceGroupNumber.table
rename to src/atomic_features_package/data/matminer/SpaceGroupNumber.table
diff --git a/atomicfeaturespackage/data/matminer/ThermalConductivity.table b/src/atomic_features_package/data/matminer/ThermalConductivity.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/ThermalConductivity.table
rename to src/atomic_features_package/data/matminer/ThermalConductivity.table
diff --git a/atomicfeaturespackage/data/matminer/VdWRadius.table b/src/atomic_features_package/data/matminer/VdWRadius.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/VdWRadius.table
rename to src/atomic_features_package/data/matminer/VdWRadius.table
diff --git a/atomicfeaturespackage/data/matminer/ZungerPP-r_d.table b/src/atomic_features_package/data/matminer/ZungerPP-r_d.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/ZungerPP-r_d.table
rename to src/atomic_features_package/data/matminer/ZungerPP-r_d.table
diff --git a/atomicfeaturespackage/data/matminer/ZungerPP-r_p.table b/src/atomic_features_package/data/matminer/ZungerPP-r_p.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/ZungerPP-r_p.table
rename to src/atomic_features_package/data/matminer/ZungerPP-r_p.table
diff --git a/atomicfeaturespackage/data/matminer/ZungerPP-r_pi.table b/src/atomic_features_package/data/matminer/ZungerPP-r_pi.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/ZungerPP-r_pi.table
rename to src/atomic_features_package/data/matminer/ZungerPP-r_pi.table
diff --git a/atomicfeaturespackage/data/matminer/ZungerPP-r_s.table b/src/atomic_features_package/data/matminer/ZungerPP-r_s.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/ZungerPP-r_s.table
rename to src/atomic_features_package/data/matminer/ZungerPP-r_s.table
diff --git a/atomicfeaturespackage/data/matminer/ZungerPP-r_sigma.table b/src/atomic_features_package/data/matminer/ZungerPP-r_sigma.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/ZungerPP-r_sigma.table
rename to src/atomic_features_package/data/matminer/ZungerPP-r_sigma.table
diff --git a/atomicfeaturespackage/data/matminer/n_ws^third.table b/src/atomic_features_package/data/matminer/n_ws^third.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/n_ws^third.table
rename to src/atomic_features_package/data/matminer/n_ws^third.table
diff --git a/atomicfeaturespackage/data/matminer/phi.table b/src/atomic_features_package/data/matminer/phi.table
similarity index 100%
rename from atomicfeaturespackage/data/matminer/phi.table
rename to src/atomic_features_package/data/matminer/phi.table
diff --git a/atomicfeaturespackage/data/pymat/periodic_table.json b/src/atomic_features_package/data/pymat/periodic_table.json
similarity index 100%
rename from atomicfeaturespackage/data/pymat/periodic_table.json
rename to src/atomic_features_package/data/pymat/periodic_table.json
diff --git a/atomicfeaturespackage/data/webele/Webele.csv b/src/atomic_features_package/data/webele/Webele.csv
similarity index 100%
rename from atomicfeaturespackage/data/webele/Webele.csv
rename to src/atomic_features_package/data/webele/Webele.csv
diff --git a/atomicfeaturespackage/data/webele/atomic_sizes.csv b/src/atomic_features_package/data/webele/atomic_sizes.csv
similarity index 100%
rename from atomicfeaturespackage/data/webele/atomic_sizes.csv
rename to src/atomic_features_package/data/webele/atomic_sizes.csv
diff --git a/atomicfeaturespackage/data/webele/cryst_struct.csv b/src/atomic_features_package/data/webele/cryst_struct.csv
similarity index 100%
rename from atomicfeaturespackage/data/webele/cryst_struct.csv
rename to src/atomic_features_package/data/webele/cryst_struct.csv
diff --git a/atomicfeaturespackage/data/webele/electronegativity.csv b/src/atomic_features_package/data/webele/electronegativity.csv
similarity index 100%
rename from atomicfeaturespackage/data/webele/electronegativity.csv
rename to src/atomic_features_package/data/webele/electronegativity.csv
diff --git a/atomicfeaturespackage/data/webele/isotopes.csv b/src/atomic_features_package/data/webele/isotopes.csv
similarity index 100%
rename from atomicfeaturespackage/data/webele/isotopes.csv
rename to src/atomic_features_package/data/webele/isotopes.csv
diff --git a/atomicfeaturespackage/data/webele/thermo_chem.csv b/src/atomic_features_package/data/webele/thermo_chem.csv
similarity index 100%
rename from atomicfeaturespackage/data/webele/thermo_chem.csv
rename to src/atomic_features_package/data/webele/thermo_chem.csv
diff --git a/atomicfeaturespackage/metainfo/__init__.py b/src/atomic_features_package/metainfo/__init__.py
similarity index 100%
rename from atomicfeaturespackage/metainfo/__init__.py
rename to src/atomic_features_package/metainfo/__init__.py
diff --git a/atomicfeaturespackage/metainfo/metainfo.py b/src/atomic_features_package/metainfo/metainfo.py
similarity index 93%
rename from atomicfeaturespackage/metainfo/metainfo.py
rename to src/atomic_features_package/metainfo/metainfo.py
index 14c4d95..b29b85f 100644
--- a/atomicfeaturespackage/metainfo/metainfo.py
+++ b/src/atomic_features_package/metainfo/metainfo.py
@@ -3,12 +3,12 @@
 
 
 
-from nomad.metainfo import MSection, Quantity, SubSection, units
 import typing
+from nomad.metainfo import MSection, Quantity, SubSection, units
 
 """metainfo module:
 
-This module helps in defining the type of schema of data available from different material data sources like :- magpie,pymat etc. 
+This module helps in defining the type of schema of data available from different material data sources like :- magpie,pymat etc.
 It uses the nomad python package for defining the schema. For additional info about this one can refer :-https://nomad-lab.eu/prod/rae/docs/metainfo.html
 If any other source needs to be added in future, another class with appropriate name with all features should be defined as it is done here eg. for pymatgen."""
 
@@ -17,11 +17,11 @@ If any other source needs to be added in future, another class with appropriate
 class metadata(MSection):
     '''
     This section contains metadata information of source,method and functional used for atomic features.
-    
+
     '''
-    source = Quantity(type = str, description='''Provides the name of source 
+    source = Quantity(type = str, description='''Provides the name of source
     of particular atomic feature''')
-    atomic_method = Quantity(type = str, description='''Provides the name of functional used for calculation 
+    atomic_method = Quantity(type = str, description='''Provides the name of functional used for calculation
     of particular atomic feature''')
     atomic_basis_set= Quantity(type = str, description='''Provides the unique name of basis set applied for computation''')
     atomic_spin_setting = Quantity(type = str, description='''Provides information whether spin settings are turned on or off''')
@@ -31,9 +31,9 @@ class atomic_properties_fhi(MSection):
     section_fhi_metadata = SubSection(sub_section=metadata)
     '''
     This section contains metadata information of several atomic features accessible from FHI as source
-    https://gitlab.mpcdf.mpg.de/nomad-lab/atomic_features_fhi_aims_really_tight/-/tree/master/csv 
-    
-    Note : If spin settings are set to "TRUE", then first element of of any atomic property for eg: atomic_r_s[0] corresponds to spin up configuration and atomic_r_s[1] corresponds to spin down configuration. This is consistent for all the atomic properties defined in this class.  
+    https://gitlab.mpcdf.mpg.de/nomad-lab/atomic_features_fhi_aims_really_tight/-/tree/master/csv
+
+    Note : If spin settings are set to "TRUE", then first element of of any atomic property for eg: atomic_r_s[0] corresponds to spin up configuration and atomic_r_s[1] corresponds to spin down configuration. This is consistent for all the atomic properties defined in this class.
     '''
     atomic_number = Quantity(type = int, description='''Provides the number of protons found in nucleus''')
     atomic_element_symbol = Quantity(type = str, description='''Provides the symbol of element as per periodic table''')
@@ -41,16 +41,16 @@ class atomic_properties_fhi(MSection):
     atomic_r_p = Quantity(type = float, description='''Provides the p orbital atomic radii''',shape=['0..*'],unit = units.angstrom)
     atomic_r_d = Quantity(type = float, description='''Provides the d orbital atomic radii''',shape=['0..*'],unit = units.angstrom)
     atomic_r_val = Quantity(type = float, description='''Provides the atomic radii of element''',shape=['0..*'],unit = units.angstrom)
-    atomic_ea = Quantity(type = float, description='''Provides the atomic electron affinity calculated 
+    atomic_ea = Quantity(type = float, description='''Provides the atomic electron affinity calculated
     from energy difference''',unit = units.joule)
     atomic_ip = Quantity(type = float, description='''Provides the atomic ionization potential calculated  from energy difference''',unit = units.joule)
     atomic_hfomo = Quantity(type = float, description='''Provides the energy of highest of fully filled molecular orbital''',unit = units.joule)
     atomic_hpomo = Quantity(type = float, description='''Provides the energy of highest partially filled molecular orbital''',unit = units.joule)
     atomic_lfumo = Quantity(type = float, description='''Provides the energy of lowest fully filled molecular orbital''',unit = units.joule)
     atomic_lpumo = Quantity(type = float, description='''Provides the energy lowest partially filled molecular orbital''',unit = units.joule)
-    atomic_ea_by_half_charged_homo = Quantity(type = float, description='''Provides the half charged atomic electron affinity 
+    atomic_ea_by_half_charged_homo = Quantity(type = float, description='''Provides the half charged atomic electron affinity
     of HOMO''',unit = units.joule)
-    atomic_ip_by_half_charged_homo = Quantity(type = float, description='''Provides the half charged atomic ionization potential 
+    atomic_ip_by_half_charged_homo = Quantity(type = float, description='''Provides the half charged atomic ionization potential
     of HOMO''',unit = units.joule)
     atomic_r_s_neg_1 = Quantity(type = float, description='''Provides the s orbital atomic radii of -1 charged''',shape=['0..*'],unit = units.angstrom)
     atomic_r_p_neg_1 = Quantity(type = float, description='''Provides the p orbital atomic radii of -1 charged''',shape=['0..*'],unit = units.angstrom)
@@ -74,8 +74,8 @@ class atomic_properties_fhi(MSection):
 class atomic_properties_pymat(MSection):
     section_pymat_metadata = SubSection(sub_section=metadata)
     '''
-    This section contains metadata schema definition of several atomic features accessible from pymatgen as source 
-    https://github.com/materialsproject/pymatgen/blob/master/pymatgen/core/periodic_table.json 
+    This section contains metadata schema definition of several atomic features accessible from pymatgen as source
+    https://github.com/materialsproject/pymatgen/blob/master/pymatgen/core/periodic_table.json
     '''
     atomic_number = Quantity(type = int, description='''Provides the number of protons found in nucleus''')
     atomic_element_symbol = Quantity(type = str, description='''Provides the symbol of element as per periodic table''')
@@ -87,7 +87,7 @@ class atomic_properties_pymat(MSection):
     brinell_hardness = Quantity(type = float, description='''Provides Brinell Hardness of selected element''',unit=units.MN/(units.meter*units.meter))
     bulk_modulus = Quantity(type = typing.Any, description='''Provides Bulk modulus of selected element : GPa Unit''',unit = units.GPa)
     coeff_olte = Quantity(type = float, description='''Provides Coefficient of linear thermal expansion (10e-6)''')
-    common_ox_states = Quantity(type = typing.Any, description='''Provides the list of common oxidation states in which the 
+    common_ox_states = Quantity(type = typing.Any, description='''Provides the list of common oxidation states in which the
     element is found''')
     critical_temperature = Quantity(type = float, description='''Provides the Critical temperature of element''',unit = units.K)
     density_of_solid = Quantity(type = float, description='''Provides the density of solid phase''',unit = units.kg/(units.metre*units.metre*units.metre))
@@ -96,7 +96,7 @@ class atomic_properties_pymat(MSection):
     ionic_radii = Quantity(type = typing.Any, description='''Provides All ionic radii of the element as a dict of {oxidation state: ionic radii}''',unit = units.angstrom)
     liquid_range = Quantity(type = float, description='''Provides the liquid range temp. of the element ''',unit = units.K)
     melting_point = Quantity(type = typing.Any, description='''Provides the Melting point of the element''',unit = units.K)
-    mendeleev_no = Quantity(type = float, description='''Provides the Mendeleev number from definition given by 
+    mendeleev_no = Quantity(type = float, description='''Provides the Mendeleev number from definition given by
     Pettifor, D. G. (1984). A chemical scale for crystal-structure maps. Solid State Communications, 51 (1), 31-34''')
     mineral_hardness = Quantity(type = typing.Any, description='''Provides the Mineral Hardness of the element ''',unit = units.dimensionless)
     molar_volume = Quantity(type = float, description='''Provides the Molar volume of the element''',unit = units.cubic_centimeter)
@@ -109,14 +109,14 @@ class atomic_properties_pymat(MSection):
     shannon_radii = Quantity(type = typing.Any, description='''Provides the (python) dictionary (key-value pairs) Shannon radius for specie in the different environments
     Oxdiation_no : -4...6
     cn: Coordination using roman letters. Values are I-IX, as well as IIIPY, IVPY and IVSQ.
-    spin: Some species have different radii for different spins. One can get specific values using "High Spin" or"Low Spin". 
+    spin: Some species have different radii for different spins. One can get specific values using "High Spin" or"Low Spin".
     If no spin data is available a blank-space is used "". If only one spin data is available, it is returned and this spin parameter is ignored.
     radius_type: Either "crystal" or "ionic"
     typical dict would have key in specific format "Oxdiation_no.cn.spin.crystal_radius" ''')
 
     supercond_temp = Quantity(type = typing.Any, description='''Provides the  Superconduction temperature of the element''',unit = units.K)
     thermal_cond = Quantity(type = typing.Any, description='''Provides the Thermal conductivity of the element ''',unit = units.W/units.mK)
-    van_der_waals_rad = Quantity(type = float, description='''Provides the Van der Waals radius for the element. This is the 
+    van_der_waals_rad = Quantity(type = float, description='''Provides the Van der Waals radius for the element. This is the
     empirical value(http://en.wikipedia.org/wiki/Atomic_radii_of_the_elements_(data_page))''',unit = units.angstrom)
     velocity_of_sound = Quantity(type = float, description='''Provides the Velocity of sound in the element''',unit = units.m/units.s)
     vickers_hardness = Quantity(type = float, description='''Provides the Vicker's hardness of the element''',unit = units.MN/(units.m*units.m))
@@ -125,11 +125,11 @@ class atomic_properties_pymat(MSection):
     youngs_modulus = Quantity(type = float, description='''Provides the Young's modulus of the element''',unit = units.GPa)
     metallic_radius = Quantity(type = float, description='''Provides the Metallic radius of the element''',unit = units.angstrom)
     iupac_ordering = Quantity(type = float, description='''Ordering according to Table VI of "Nomenclature of Inorganic Chemistry
-    (IUPAC Recommendations 2005)". This ordering effectively follows the groups and rows of the periodic table, except the 
+    (IUPAC Recommendations 2005)". This ordering effectively follows the groups and rows of the periodic table, except the
     Lanthanides, Actanides and hydrogen''')
-    icsd_oxd_states = Quantity(type = typing.Any, description='''Provides list(python) of all oxidation states with 
+    icsd_oxd_states = Quantity(type = typing.Any, description='''Provides list(python) of all oxidation states with
     at least 10 instances in ICSD database AND at least 1% of entries for that element''')
-    nmr_quadrapole_mom = Quantity(type = typing.Any, description='''Provides a dictionary of the nuclear electric 
+    nmr_quadrapole_mom = Quantity(type = typing.Any, description='''Provides a dictionary of the nuclear electric
     quadrupole moment in units of e*millibarns for various isotopes''')
     max_oxd_state = Quantity(type = float, description='''Provides the Maximum oxidation state for element''')
     min_oxd_state = Quantity(type = float, description='''Provides the Minimum oxidation state for element''')
@@ -140,16 +140,16 @@ class atomic_properties_lda2015(MSection):
     section_lda2015_metadata = SubSection(sub_section=metadata)
     '''
     This section contains metadata schema definition of several atomic features accessible from lda2015 paper as source
-      
+
     '''
-    
+
     atomic_number = Quantity(type = int, description='''Provides the number of protons found in nucleus''')
     atomic_element_symbol = Quantity(type = str, description='''Provides the symbol of element as per periodic table''')
     atomic_r_s = Quantity(type = float, description='''Provides the s orbital atomic radii''',unit = units.angstrom)
     atomic_r_p = Quantity(type = float, description='''Provides the p orbital atomic radii''',unit = units.angstrom)
     atomic_r_d = Quantity(type = float, description='''Provides the d orbital atomic radii''',unit = units.angstrom)
     atomic_period = Quantity(type = int, description='''Provides the period number to which the element belongs in periodic table''',unit = units.dimensionless)
-    atomic_ea = Quantity(type = float, description='''Provides the atomic electron affinity calculated 
+    atomic_ea = Quantity(type = float, description='''Provides the atomic electron affinity calculated
     from energy difference''',unit = units.eV)
     atomic_ip = Quantity(type = float, description='''Provides the atomic ionization potential calculated  from energy difference''',unit = units.eV)
     atomic_homo = Quantity(type = float, description='''Provides the energy of highest fully filled molecular orbital''',unit = units.angstrom)
@@ -159,9 +159,9 @@ class atomic_properties_matminer(MSection):
     section_matmin_metadata = SubSection(sub_section=metadata)
     '''
     This section contains metadata schema definition of several atomic features accessible from Magpie as source
-    https://github.com/hackingmaterials/matminer/tree/master/matminer/utils/data_files/magpie_elementdata  
+    https://github.com/hackingmaterials/matminer/tree/master/matminer/utils/data_files/magpie_elementdata
     '''
-    
+
     atomic_number = Quantity(type = int, description='''Atomic number''')
     atomic_element_symbol = Quantity(type = str, description='''Provides the symbol of element as per periodic table''')
     atomic_radius = Quantity(type = float, description='''Atomic radius''',unit = units.angstrom)
@@ -169,7 +169,7 @@ class atomic_properties_matminer(MSection):
     atomic_weight = Quantity(type = float, description='''Atomic weight''')
     bulk_modulus = Quantity(type = float, description='''Bulk modulus''',unit = units.GPa)
     boiling_temp = Quantity(type = float, description='''Boiling temperature''',unit = units.K)
-    periodict_column = Quantity(type = int, description='''Column on periodic table 
+    periodict_column = Quantity(type = int, description='''Column on periodic table
                                 Notes: Column of all RE elements is listed as 3''')
     covalent_radius = Quantity(type = float, description='''Covalent radius of each element ''',unit = units.pm)
     atomic_density = Quantity(type = float, description='''Density of element at STP : g/L ''',unit = units.g/units.L)
@@ -177,13 +177,13 @@ class atomic_properties_matminer(MSection):
     atomic_en = Quantity(type = float, description='''Pauling electronegativity ''',unit = units.dimensionless)
     atomic_ie_1 = Quantity(type = float, description='''Energy to remove the first electron from an element''',unit = units.eV)
     gs_bandgap = Quantity(type = float, description='''DFT bandgap energy of T=0K ground state''',unit = units.eV)
-    gs_bcclatparam = Quantity(type = float, description='''Estimated BCC lattice parameter based on the DFT volume of the 
+    gs_bcclatparam = Quantity(type = float, description='''Estimated BCC lattice parameter based on the DFT volume of the
     OQMD ground state for each element''')
     atomic_cpmass = Quantity(type = float, description='''Specific heat capacity at STP''',unit = units.J/(units.g*units.K))
     atomic_cpmolar = Quantity(type = float, description='''Molar heat capacity at STP''',unit = units.J/(units.mol*units.K))
     atomic_hfu = Quantity(type = float, description='''Enthalpy of fusion for elements at their melting temperatures''',unit = units.kJ/units.mol)
     atomic_hvap = Quantity(type = float, description='''Enthalpy of vaporization for elements at their boiling temperatures''',unit = units.kJ/units.mol)
-    gs_fcclatparam = Quantity(type = float, description='''Estimated FCC lattice parameter based on the DFT volume of the 
+    gs_fcclatparam = Quantity(type = float, description='''Estimated FCC lattice parameter based on the DFT volume of the
     OQMD ground state for each element ''',unit = units.angstrom)
     gs_energy_pa = Quantity(type = float, description='''DFT energy per atom (raw VASP value) of T=0K ground state : eV/atom ''')
     gs_mag_mom = Quantity(type = float, description='''DFT magnetic momenet of T=0K ground state''')
@@ -192,7 +192,7 @@ class atomic_properties_matminer(MSection):
     atomic_hhir = Quantity(type = float, description='''Herfindahl-Hirschman Index (HHI) reserves values''')
     atomic_ICSD_vol = Quantity(type = float, description='''Volume per atom of ICSD phae at STP''')
     melting_point = Quantity(type = float, description='''Melting temperature of element''',unit = units.K)
-    mendeleev_no = Quantity(type = float, description='''Mendeleev Number(position on the periodic table, counting columnwise 
+    mendeleev_no = Quantity(type = float, description='''Mendeleev Number(position on the periodic table, counting columnwise
     from H)''')
     micracle_radius = Quantity(type = float, description='''Assessed radii of elements in metallic glass structures''',unit = units.pm)
     molar_volume = Quantity(type = float, description='''Molar Volume''',unit = units.cubic_centimeter)
@@ -209,7 +209,7 @@ class atomic_properties_matminer(MSection):
     atomic_nsunf = Quantity(type = float, description='''Number of unfilled s valence orbitals
                                     Notes: Number of unoccupied orbitals = 0 if shell unoccupied, Maximum-Filled if occupied''',unit = units.dimensionless)
     atomic_nsval = Quantity(type = float, description='''Number of filled s valence orbitals''',unit = units.dimensionless)
-    atomic_nunf = Quantity(type = float, description='''Number of unfilled valence orbitals 
+    atomic_nunf = Quantity(type = float, description='''Number of unfilled valence orbitals
                                     Notes: Number of unoccupied orbitals = 0 if shell unoccupied, Maximum-Filled if occupied''',unit = units.dimensionless)
     atomic_nval = Quantity(type = float, description='''Number of valence electrons''',unit = units.dimensionless)
     atomic_oxstates = Quantity(type = typing.Any, description='''Observed oxidation states for each element''',unit = units.dimensionless)
@@ -218,7 +218,7 @@ class atomic_properties_matminer(MSection):
     periodict_row = Quantity(type = int, description='''Row on periodic table''',unit = units.dimensionless)
     atomic_ie_2 = Quantity(type = float, description='''Energy to remove the second electron from an element''',unit = units.eV)
     shear_mod = Quantity(type = float, description='''Shear modulus''',unit = units.GPa)
-    atomic_sgn = Quantity(type = float, description='''Space group of T=0K ground state structure 
+    atomic_sgn = Quantity(type = float, description='''Space group of T=0K ground state structure
         Source: Only structures from the ICSD were evaluated  Pm used OQMD groundstate in Spacegroup 194,
         which is only 4 meV/atom below 166. No ICSD structure''')
     thermal_cond = Quantity(type = float, description='''Thermal conductivity''',unit = units.W/units.mK)
@@ -227,7 +227,7 @@ class atomic_properties_matminer(MSection):
     atomic_pp_r_p = Quantity(type = float, description='''Psuedopotential radius of p orbital : a.u ''')
     atomic_pp_r_d = Quantity(type = float, description='''Psuedopotential radius of d orbital : a.u ''')
     atomic_pp_r_sig = Quantity(type = float, description='''Sum of the radii of s and p orbitals : a.u ''')
-    atomic_pp_r_pi = Quantity(type = float, description='''Absolute value of the different between the radii of s and 
+    atomic_pp_r_pi = Quantity(type = float, description='''Absolute value of the different between the radii of s and
     p orbitals : a.u ''')
     atomic_isalkali = Quantity(type = float, description='''Boolean value of whether an element is an alkali or alkali earth metal''',unit = units.dimensionless)
     atomic_isdblock = Quantity(type = float, description='''Boolean value of whether an element is a d-block metal''',unit = units.dimensionless)
@@ -238,45 +238,45 @@ class atomic_properties_matminer(MSection):
     atomic_en_allen = Quantity(type = float, description='''Allen electronegativity ''',unit = units.dimensionless)
     atomic_ie = Quantity(type = typing.Any, description='''Energy to remove the 1st,2nd,3rd..  electron from an element''',unit= units.eV)
     thermal_cond_log = Quantity(type = float, description='''Logarithmic Thermal conductivity ''')
-    
+
 class atomic_properties_webele(MSection):
     section_webele_metadata = SubSection(sub_section=metadata)
     '''
-    This section contains metadata information of several atomic features accessible from Webelements as source  
+    This section contains metadata information of several atomic features accessible from Webelements as source
     '''
-    
-    atomic_element_symbol = Quantity(type = str, description='''Provides the symbol of element as per periodic 
+
+    atomic_element_symbol = Quantity(type = str, description='''Provides the symbol of element as per periodic
     table''')
-    density_of_solid = Quantity(type = float, description='''Density refers to the mass contained within a unit 
+    density_of_solid = Quantity(type = float, description='''Density refers to the mass contained within a unit
     volume under specified conditions. Data given here refer to the solid ''',
                                 unit = units.kg/(units.metre*units.metre*units.metre))
-    molar_vol = Quantity(type = float, description='''The molar volume is equal to the atomic weight divided 
+    molar_vol = Quantity(type = float, description='''The molar volume is equal to the atomic weight divided
     by the density''',unit = units.cubic_centimeter)
-    youngs_mod = Quantity(type = float, description='''Young's modulus refers to longitudinal 
+    youngs_mod = Quantity(type = float, description='''Young's modulus refers to longitudinal
     strain''',unit = units.GPa)
-    rigidity_mod = Quantity(type = float, description='''The rigidity modulus refers to the change of shape produced 
+    rigidity_mod = Quantity(type = float, description='''The rigidity modulus refers to the change of shape produced
     by a tangential stress''',unit = units.GPa)
-    bulk_mod = Quantity(type = float, description='''The bulk modulus refers to the ratio of pressure to the decrease in volume. 
+    bulk_mod = Quantity(type = float, description='''The bulk modulus refers to the ratio of pressure to the decrease in volume.
     This is the inverse of compressibility''',unit = units.GPa)
-    poissons_ratio = Quantity(type = float, description='''Poisson's ratio is the lateral contraction per unit breadth divided by the 
+    poissons_ratio = Quantity(type = float, description='''Poisson's ratio is the lateral contraction per unit breadth divided by the
     longitudinal extension per unit length''',unit = units.dimensionless)
-    mineral_hardness = Quantity(type = float, description='''Hardness ranges on scale from 1 to 10 and mineralogical hardness depends upon the 
+    mineral_hardness = Quantity(type = float, description='''Hardness ranges on scale from 1 to 10 and mineralogical hardness depends upon the
     ability of a material to scratch another''',unit = units.dimensionless)
     brinell_hardness = Quantity(type = float, description='''Provides Brinell Hardness of the element''',
                                 unit = units.MN/(units.m*units.m))
     vickers_hardness = Quantity(type = float, description='''Provides the Vicker's hardness of the element''',
                                 unit = units.MN/(units.m*units.m))
-    electrical_resist = Quantity(type = float, description='''The electrical resistivity, or specific resistance, ρ, 
+    electrical_resist = Quantity(type = float, description='''The electrical resistivity, or specific resistance, ρ,
     is the resistance between the opposite faces of a metre cube of a material(10e-8)''',
                                  unit = (units.ohm*units.meter))
-    thermal_conduct = Quantity(type = float, description='''The thermal conductivity, λ, is the quantity of heat 
-    transmitted, due to unit temperature gradient, in unit time under steady conditions in a direction normal to 
+    thermal_conduct = Quantity(type = float, description='''The thermal conductivity, λ, is the quantity of heat
+    transmitted, due to unit temperature gradient, in unit time under steady conditions in a direction normal to
     a surface of unit area, when the heat transfer is dependent only on the temperature gradient''',
                                unit = units.W/units.mK)
     coeff_of_lte = Quantity(type = float, description='''The coefficient of linear thermal expansion is the ratio of
     the change in length per degree K to the length at 273 K(10e6)''',
                             unit = units.dimensionless/units.K)
-    reflectivity = Quantity(type = float, description='''The reflectivity is the percentage light reflected from a 
+    reflectivity = Quantity(type = float, description='''The reflectivity is the percentage light reflected from a
     surface at a given wavelength: % Unit''')
     refract_index = Quantity(type = float, description='''The refractive index is quoted for the gas or vapour state
     at 273 K/760 mm Hg for the sodium yellow d-line at 589.3 nm''',unit = units.dimensionless)
@@ -285,24 +285,24 @@ class atomic_properties_webele(MSection):
     atomic_ea = Quantity(type = float, description='''Electron affinitiy ''',unit = units.kJ/units.mol)
     atomic_ebe = Quantity(type = typing.Any, description='''Returns electron binding energies for atom as a dict''',
                           unit = units.eV)
-    atomic_ie = Quantity(type = typing.Any, description='''Returns ionization energies of the atoms as a dict, 
+    atomic_ie = Quantity(type = typing.Any, description='''Returns ionization energies of the atoms as a dict,
     Units : Enthalpy / kJ mol‑1''')
-    atomic_enc = Quantity(type = typing.Any, description='''Returns "Clementi-Raimondi" effective nuclear charges of 
+    atomic_enc = Quantity(type = typing.Any, description='''Returns "Clementi-Raimondi" effective nuclear charges of
     atoms as dict, Zeff ''')
     atomic_radius = Quantity(type = float, description='''Provides atomic radius for the element''',unit = units.pm)
-    atomic_radius_calculated = Quantity(type = float, description='''Provides Calculated atomic radius for the 
+    atomic_radius_calculated = Quantity(type = float, description='''Provides Calculated atomic radius for the
     element ''',unit = units.pm)
     covalent_rad = Quantity(type = float, description='''Covalent radius of atom (2008)''',unit = units.pm)
     covalent_rad_emp = Quantity(type = float, description='''Covalent radius of atom''',unit = units.pm)
-    covalent_radius_mol = Quantity(type = typing.Any, description='''Returns single/double/triple bond covalent radii using specific group 
+    covalent_radius_mol = Quantity(type = typing.Any, description='''Returns single/double/triple bond covalent radii using specific group
     valencies and oxidation numbers of element as dict''',unit = units.pm)
     van_der_waals_rad = Quantity(type = float, description='''Provides the Van der Waals radius for the element'''
                                  ,unit = units.pm)
-    atomic_orbital_radii = Quantity(type = typing.Any, description='''Returns calculated values of valence shell 
+    atomic_orbital_radii = Quantity(type = typing.Any, description='''Returns calculated values of valence shell
     orbital radii (Rmax) as dict, Units : Atomic unit lengths''')
-    atomic_ionic_radii = Quantity(type = typing.Any, description='''Returns Shannon ionic radii with ion as key 
+    atomic_ionic_radii = Quantity(type = typing.Any, description='''Returns Shannon ionic radii with ion as key
     and cordination number,radii in pm as dict''',unit = units.pm)
-    paul_ionic_radii = Quantity(type = typing.Any, description='''Returns pauling ionic radii with ion as key 
+    paul_ionic_radii = Quantity(type = typing.Any, description='''Returns pauling ionic radii with ion as key
     and pauling ionic radii in pm as dict''',unit = units.pm)
     atomic_en = Quantity(type = typing.Any, description='''All values are quoted on the Pauling scale.
     Returns types of electronegativity with its values as a dict.''')
@@ -320,32 +320,32 @@ class atomic_properties_webele(MSection):
     atomic_spacegroup = Quantity(type = str, description='''Returns Space group of elemental solid''')
     atomic_spacegroupnum = Quantity(type = float, description='''Returns Space group number of elemental solid''')
     atomic_structure = Quantity(type = str, description='''Returns structure type of elemental solid''')
-    atomic_cellparam = Quantity(type = typing.Any, description='''Returns dict of cell parameters of 
+    atomic_cellparam = Quantity(type = typing.Any, description='''Returns dict of cell parameters of
     elemental solid''')
-    supercond_temp = Quantity(type = typing.Any, description='''Provides the  Superconduction temperature of 
+    supercond_temp = Quantity(type = typing.Any, description='''Provides the  Superconduction temperature of
     the element''',unit = units.K)
-    critical_temperature = Quantity(type = float, description='''Provides the Critical temperature of 
+    critical_temperature = Quantity(type = float, description='''Provides the Critical temperature of
     element''',unit = units.K)
-    liquid_range = Quantity(type = float, description='''Provides the liquid range temp. 
+    liquid_range = Quantity(type = float, description='''Provides the liquid range temp.
     of the element ''',unit = units.K)
-    boiling_point = Quantity(type = float, description='''Provides Boiling point to 
+    boiling_point = Quantity(type = float, description='''Provides Boiling point to
     selected element''',unit = units.K)
-    melting_point = Quantity(type = typing.Any, description='''Provides the Melting point of 
+    melting_point = Quantity(type = typing.Any, description='''Provides the Melting point of
     the element''',unit = units.K)
-    atomic_hfu = Quantity(type = float, description='''Enthalpy of fusion for elements at their 
+    atomic_hfu = Quantity(type = float, description='''Enthalpy of fusion for elements at their
     melting temperatures''',unit = units.kJ/units.mol)
-    atomic_hvap = Quantity(type = float, description='''Enthalpy of vaporization for elements at 
+    atomic_hvap = Quantity(type = float, description='''Enthalpy of vaporization for elements at
     their boiling temperatures''',unit = units.kJ/units.mol)
-    atomic_hatm = Quantity(type = float, description='''The enthalpy change that accompanies the total 
+    atomic_hatm = Quantity(type = float, description='''The enthalpy change that accompanies the total
     separation of all atoms in a chemical substance''',unit = units.kJ/units.mol)
     atomic_thermdata = Quantity(type = typing.Any, description='''Returns a dictionary of few thermodynamic data with keys as its elemental state.
     Units of the properties are as follows:
     ΔfH°: kJ mol‑1
-    
+
     ΔfG°: kJ mol‑1
-    
+
     S°: J K‑1 mol‑1
-    
+
     CpH: J K‑1 mol‑1
-    
+
     H°298.15‑H°0: kJ mol‑1 ''')
-- 
GitLab