├── .gitattributes ├── .github └── workflows │ ├── ci.yaml │ ├── greetings.yml │ ├── manual.yml │ └── publish-to-pypi.yml ├── .gitignore ├── .pylintrc ├── .readthedocs.yml ├── LICENSE ├── README.md ├── TODO.md ├── _example_files ├── Lj_sweep_values.csv └── pyEPR_tutorial1.aedt ├── _tutorial_notebooks ├── 1A Startup_example_hfss_files │ ├── README.md │ ├── hfss_files │ │ └── participation_ratio.clc │ └── startup_example_script.py ├── Tutorial 1. Startup example.ipynb ├── Tutorial 2. Field calculations - dielectric energy participation ratios (EPRs).ipynb ├── Tutorial 3. toolbox_circuits.ipynb └── Tutorial 4. Parametric sweep options.ipynb ├── docs ├── Makefile ├── README.md ├── make.bat └── source │ ├── _static │ ├── read_me_0.png │ └── xmon-example.gif │ ├── about.rst │ ├── api │ ├── pyEPR.ansys.rst │ ├── pyEPR.calcs.back_box_numeric.rst │ ├── pyEPR.calcs.basic.rst │ ├── pyEPR.calcs.constants.rst │ ├── pyEPR.calcs.convert.rst │ ├── pyEPR.calcs.hamiltonian.rst │ ├── pyEPR.calcs.rst │ ├── pyEPR.calcs.transmon.rst │ ├── pyEPR.core.rst │ ├── pyEPR.core_distributed_analysis.rst │ ├── pyEPR.core_quantum_analysis.rst │ ├── pyEPR.project_info.rst │ ├── pyEPR.reports.rst │ ├── pyEPR.rst │ ├── pyEPR.toolbox.plotting.rst │ ├── pyEPR.toolbox.pythonic.rst │ └── pyEPR.toolbox.rst │ ├── conf.py │ ├── examples_quick.rst │ ├── index.rst │ ├── installation.rst │ └── key_classes_reference.rst ├── imgs ├── read_me_0.png └── xmon-example.gif ├── pyEPR.bib ├── pyEPR ├── README.md ├── __config_user_old.py ├── __init__.py ├── _config_default.py ├── _config_user.py ├── ansys.py ├── calcs │ ├── __init__.py │ ├── back_box_numeric.py │ ├── basic.py │ ├── constants.py │ ├── convert.py │ ├── hamiltonian.py │ ├── quantum.py │ └── transmon.py ├── core.py ├── core_distributed_analysis.py ├── core_quantum_analysis.py ├── project_info.py ├── reports.py └── toolbox │ ├── __init__.py │ ├── _logging.py │ ├── plotting.py │ └── pythonic.py ├── requirements.txt ├── scripts ├── Alec │ ├── 11ghz │ │ └── EPR_test.py │ └── 7ghz │ │ └── 7ghz_pyEPR.py ├── Kaicheng │ └── import_pyEPR.py ├── README.md ├── hanhee │ └── run_vs_pass.py ├── minev │ ├── _low_level │ │ └── com_browse.py │ └── hfss-scripts │ │ ├── 2017_10 R3C1 resim.py │ │ └── import_pyEPR.py ├── my-name │ └── example1.py └── nick │ └── import_pyEPR.py ├── setup.py └── tests ├── README.md ├── correct_results.pkl ├── data HamiltonianResultsContainer.npz ├── data.npz ├── test_project_info.py └── test_quantum_analysis.py /.gitattributes: -------------------------------------------------------------------------------- 1 | *.ipynb linguist-vendored 2 | -------------------------------------------------------------------------------- /.github/workflows/ci.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/.github/workflows/ci.yaml -------------------------------------------------------------------------------- /.github/workflows/greetings.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/.github/workflows/greetings.yml -------------------------------------------------------------------------------- /.github/workflows/manual.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/.github/workflows/manual.yml -------------------------------------------------------------------------------- /.github/workflows/publish-to-pypi.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/.github/workflows/publish-to-pypi.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/.gitignore -------------------------------------------------------------------------------- /.pylintrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/.pylintrc -------------------------------------------------------------------------------- /.readthedocs.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/.readthedocs.yml -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/README.md -------------------------------------------------------------------------------- /TODO.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/TODO.md -------------------------------------------------------------------------------- /_example_files/Lj_sweep_values.csv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/_example_files/Lj_sweep_values.csv -------------------------------------------------------------------------------- /_example_files/pyEPR_tutorial1.aedt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/_example_files/pyEPR_tutorial1.aedt -------------------------------------------------------------------------------- /_tutorial_notebooks/1A Startup_example_hfss_files/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/_tutorial_notebooks/1A Startup_example_hfss_files/README.md -------------------------------------------------------------------------------- /_tutorial_notebooks/1A Startup_example_hfss_files/hfss_files/participation_ratio.clc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/_tutorial_notebooks/1A Startup_example_hfss_files/hfss_files/participation_ratio.clc -------------------------------------------------------------------------------- /_tutorial_notebooks/1A Startup_example_hfss_files/startup_example_script.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/_tutorial_notebooks/1A Startup_example_hfss_files/startup_example_script.py -------------------------------------------------------------------------------- /_tutorial_notebooks/Tutorial 1. Startup example.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/_tutorial_notebooks/Tutorial 1. Startup example.ipynb -------------------------------------------------------------------------------- /_tutorial_notebooks/Tutorial 2. Field calculations - dielectric energy participation ratios (EPRs).ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/_tutorial_notebooks/Tutorial 2. Field calculations - dielectric energy participation ratios (EPRs).ipynb -------------------------------------------------------------------------------- /_tutorial_notebooks/Tutorial 3. toolbox_circuits.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/_tutorial_notebooks/Tutorial 3. toolbox_circuits.ipynb -------------------------------------------------------------------------------- /_tutorial_notebooks/Tutorial 4. Parametric sweep options.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/_tutorial_notebooks/Tutorial 4. Parametric sweep options.ipynb -------------------------------------------------------------------------------- /docs/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/docs/Makefile -------------------------------------------------------------------------------- /docs/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/docs/README.md -------------------------------------------------------------------------------- /docs/make.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/docs/make.bat -------------------------------------------------------------------------------- /docs/source/_static/read_me_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/docs/source/_static/read_me_0.png -------------------------------------------------------------------------------- /docs/source/_static/xmon-example.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/docs/source/_static/xmon-example.gif -------------------------------------------------------------------------------- /docs/source/about.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/docs/source/about.rst -------------------------------------------------------------------------------- /docs/source/api/pyEPR.ansys.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/docs/source/api/pyEPR.ansys.rst -------------------------------------------------------------------------------- /docs/source/api/pyEPR.calcs.back_box_numeric.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/docs/source/api/pyEPR.calcs.back_box_numeric.rst -------------------------------------------------------------------------------- /docs/source/api/pyEPR.calcs.basic.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/docs/source/api/pyEPR.calcs.basic.rst -------------------------------------------------------------------------------- /docs/source/api/pyEPR.calcs.constants.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/docs/source/api/pyEPR.calcs.constants.rst -------------------------------------------------------------------------------- /docs/source/api/pyEPR.calcs.convert.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/docs/source/api/pyEPR.calcs.convert.rst -------------------------------------------------------------------------------- /docs/source/api/pyEPR.calcs.hamiltonian.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/docs/source/api/pyEPR.calcs.hamiltonian.rst -------------------------------------------------------------------------------- /docs/source/api/pyEPR.calcs.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/docs/source/api/pyEPR.calcs.rst -------------------------------------------------------------------------------- /docs/source/api/pyEPR.calcs.transmon.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/docs/source/api/pyEPR.calcs.transmon.rst -------------------------------------------------------------------------------- /docs/source/api/pyEPR.core.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/docs/source/api/pyEPR.core.rst -------------------------------------------------------------------------------- /docs/source/api/pyEPR.core_distributed_analysis.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/docs/source/api/pyEPR.core_distributed_analysis.rst -------------------------------------------------------------------------------- /docs/source/api/pyEPR.core_quantum_analysis.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/docs/source/api/pyEPR.core_quantum_analysis.rst -------------------------------------------------------------------------------- /docs/source/api/pyEPR.project_info.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/docs/source/api/pyEPR.project_info.rst -------------------------------------------------------------------------------- /docs/source/api/pyEPR.reports.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/docs/source/api/pyEPR.reports.rst -------------------------------------------------------------------------------- /docs/source/api/pyEPR.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/docs/source/api/pyEPR.rst -------------------------------------------------------------------------------- /docs/source/api/pyEPR.toolbox.plotting.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/docs/source/api/pyEPR.toolbox.plotting.rst -------------------------------------------------------------------------------- /docs/source/api/pyEPR.toolbox.pythonic.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/docs/source/api/pyEPR.toolbox.pythonic.rst -------------------------------------------------------------------------------- /docs/source/api/pyEPR.toolbox.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/docs/source/api/pyEPR.toolbox.rst -------------------------------------------------------------------------------- /docs/source/conf.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/docs/source/conf.py -------------------------------------------------------------------------------- /docs/source/examples_quick.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/docs/source/examples_quick.rst -------------------------------------------------------------------------------- /docs/source/index.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/docs/source/index.rst -------------------------------------------------------------------------------- /docs/source/installation.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/docs/source/installation.rst -------------------------------------------------------------------------------- /docs/source/key_classes_reference.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/docs/source/key_classes_reference.rst -------------------------------------------------------------------------------- /imgs/read_me_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/imgs/read_me_0.png -------------------------------------------------------------------------------- /imgs/xmon-example.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/imgs/xmon-example.gif -------------------------------------------------------------------------------- /pyEPR.bib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/pyEPR.bib -------------------------------------------------------------------------------- /pyEPR/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/pyEPR/README.md -------------------------------------------------------------------------------- /pyEPR/__config_user_old.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/pyEPR/__config_user_old.py -------------------------------------------------------------------------------- /pyEPR/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/pyEPR/__init__.py -------------------------------------------------------------------------------- /pyEPR/_config_default.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/pyEPR/_config_default.py -------------------------------------------------------------------------------- /pyEPR/_config_user.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/pyEPR/_config_user.py -------------------------------------------------------------------------------- /pyEPR/ansys.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/pyEPR/ansys.py -------------------------------------------------------------------------------- /pyEPR/calcs/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/pyEPR/calcs/__init__.py -------------------------------------------------------------------------------- /pyEPR/calcs/back_box_numeric.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/pyEPR/calcs/back_box_numeric.py -------------------------------------------------------------------------------- /pyEPR/calcs/basic.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/pyEPR/calcs/basic.py -------------------------------------------------------------------------------- /pyEPR/calcs/constants.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/pyEPR/calcs/constants.py -------------------------------------------------------------------------------- /pyEPR/calcs/convert.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/pyEPR/calcs/convert.py -------------------------------------------------------------------------------- /pyEPR/calcs/hamiltonian.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/pyEPR/calcs/hamiltonian.py -------------------------------------------------------------------------------- /pyEPR/calcs/quantum.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/pyEPR/calcs/quantum.py -------------------------------------------------------------------------------- /pyEPR/calcs/transmon.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/pyEPR/calcs/transmon.py -------------------------------------------------------------------------------- /pyEPR/core.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/pyEPR/core.py -------------------------------------------------------------------------------- /pyEPR/core_distributed_analysis.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/pyEPR/core_distributed_analysis.py -------------------------------------------------------------------------------- /pyEPR/core_quantum_analysis.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/pyEPR/core_quantum_analysis.py -------------------------------------------------------------------------------- /pyEPR/project_info.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/pyEPR/project_info.py -------------------------------------------------------------------------------- /pyEPR/reports.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/pyEPR/reports.py -------------------------------------------------------------------------------- /pyEPR/toolbox/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /pyEPR/toolbox/_logging.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/pyEPR/toolbox/_logging.py -------------------------------------------------------------------------------- /pyEPR/toolbox/plotting.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/pyEPR/toolbox/plotting.py -------------------------------------------------------------------------------- /pyEPR/toolbox/pythonic.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/pyEPR/toolbox/pythonic.py -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/requirements.txt -------------------------------------------------------------------------------- /scripts/Alec/11ghz/EPR_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/scripts/Alec/11ghz/EPR_test.py -------------------------------------------------------------------------------- /scripts/Alec/7ghz/7ghz_pyEPR.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/scripts/Alec/7ghz/7ghz_pyEPR.py -------------------------------------------------------------------------------- /scripts/Kaicheng/import_pyEPR.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/scripts/Kaicheng/import_pyEPR.py -------------------------------------------------------------------------------- /scripts/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/scripts/README.md -------------------------------------------------------------------------------- /scripts/hanhee/run_vs_pass.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/scripts/hanhee/run_vs_pass.py -------------------------------------------------------------------------------- /scripts/minev/_low_level/com_browse.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/scripts/minev/_low_level/com_browse.py -------------------------------------------------------------------------------- /scripts/minev/hfss-scripts/2017_10 R3C1 resim.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/scripts/minev/hfss-scripts/2017_10 R3C1 resim.py -------------------------------------------------------------------------------- /scripts/minev/hfss-scripts/import_pyEPR.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/scripts/minev/hfss-scripts/import_pyEPR.py -------------------------------------------------------------------------------- /scripts/my-name/example1.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/scripts/my-name/example1.py -------------------------------------------------------------------------------- /scripts/nick/import_pyEPR.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/scripts/nick/import_pyEPR.py -------------------------------------------------------------------------------- /setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/setup.py -------------------------------------------------------------------------------- /tests/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/tests/README.md -------------------------------------------------------------------------------- /tests/correct_results.pkl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/tests/correct_results.pkl -------------------------------------------------------------------------------- /tests/data HamiltonianResultsContainer.npz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/tests/data HamiltonianResultsContainer.npz -------------------------------------------------------------------------------- /tests/data.npz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/tests/data.npz -------------------------------------------------------------------------------- /tests/test_project_info.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/tests/test_project_info.py -------------------------------------------------------------------------------- /tests/test_quantum_analysis.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zlatko-minev/pyEPR/HEAD/tests/test_quantum_analysis.py --------------------------------------------------------------------------------