From a25d0085ea82a7c073ad277e6b37fb8c9c30da0e Mon Sep 17 00:00:00 2001 From: fedem-p Date: Fri, 19 Feb 2021 10:17:38 +0000 Subject: [PATCH 01/43] documentation auto-deployment added --- .github/workflows/doc_deploy.yml | 37 ++++++++++++++++++++++++++++++++ docs/source/_toc.yml | 8 +++++++ requirements_dev.txt | 3 ++- 3 files changed, 47 insertions(+), 1 deletion(-) create mode 100644 .github/workflows/doc_deploy.yml create mode 100644 docs/source/_toc.yml diff --git a/.github/workflows/doc_deploy.yml b/.github/workflows/doc_deploy.yml new file mode 100644 index 00000000..18155592 --- /dev/null +++ b/.github/workflows/doc_deploy.yml @@ -0,0 +1,37 @@ +name: deploy_doc + + on: + # Trigger the workflow on push or pull request, + # but only for the main branch + push: + branches: + - master + + jobs: + deploy-book: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + + # Install dependencies + - name: Set up Python + uses: actions/setup-python@v1 + with: + python-version: "3.x" + + - name: Install dependencies + run: | + python -m pip install --upgrade pip + pip install .[dev] + + # Build the book + - name: Build the book + run: | + jupyter-book build ./docs/source + + # Push the book's HTML to github-pages + - name: GitHub Pages action + uses: peaceiris/actions-gh-pages@v3.6.1 + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + publish_dir: ./docs/source/_build/html \ No newline at end of file diff --git a/docs/source/_toc.yml b/docs/source/_toc.yml new file mode 100644 index 00000000..ebd814bb --- /dev/null +++ b/docs/source/_toc.yml @@ -0,0 +1,8 @@ +file: index +sections: +- file: configuration +- file: hardware +- file: conf +- file: timeline +- file: intro +- file: development/code_organization diff --git a/requirements_dev.txt b/requirements_dev.txt index 478f247a..7447eb00 100644 --- a/requirements_dev.txt +++ b/requirements_dev.txt @@ -6,4 +6,5 @@ coverage pre-commit black flake8 -isort \ No newline at end of file +isort +jupyter-book>=0.7.0b \ No newline at end of file From d77c977697fa2d1c98911b8888f036c537e7d478 Mon Sep 17 00:00:00 2001 From: fedem-p Date: Fri, 19 Feb 2021 10:24:18 +0000 Subject: [PATCH 02/43] documentation auto-deployment added - fix typo --- .github/workflows/doc_deploy.yml | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/.github/workflows/doc_deploy.yml b/.github/workflows/doc_deploy.yml index 18155592..f065329b 100644 --- a/.github/workflows/doc_deploy.yml +++ b/.github/workflows/doc_deploy.yml @@ -1,11 +1,9 @@ name: deploy_doc on: - # Trigger the workflow on push or pull request, - # but only for the main branch - push: - branches: - - master + push: + branches: + - master jobs: deploy-book: From 59969ed5b2990fdfe90f36abf8b558820f5f43c0 Mon Sep 17 00:00:00 2001 From: fedem-p Date: Fri, 19 Feb 2021 10:29:49 +0000 Subject: [PATCH 03/43] documentation auto-deployment added - fix typo --- .github/workflows/doc_deploy.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/doc_deploy.yml b/.github/workflows/doc_deploy.yml index f065329b..3538b5cc 100644 --- a/.github/workflows/doc_deploy.yml +++ b/.github/workflows/doc_deploy.yml @@ -3,7 +3,7 @@ name: deploy_doc on: push: branches: - - master + - main jobs: deploy-book: From bb3ae2d31a62a75e6be5f18324f6677a08724c85 Mon Sep 17 00:00:00 2001 From: fedem-p Date: Fri, 19 Feb 2021 10:31:49 +0000 Subject: [PATCH 04/43] documentation auto-deployment added - fix typo2 --- .github/workflows/doc_deploy.yml | 56 ++++++++++++++++---------------- 1 file changed, 28 insertions(+), 28 deletions(-) diff --git a/.github/workflows/doc_deploy.yml b/.github/workflows/doc_deploy.yml index 3538b5cc..2ba094aa 100644 --- a/.github/workflows/doc_deploy.yml +++ b/.github/workflows/doc_deploy.yml @@ -1,35 +1,35 @@ name: deploy_doc - on: - push: - branches: - - main +on: + push: + branches: + - main - jobs: - deploy-book: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v2 +jobs: + deploy-book: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 - # Install dependencies - - name: Set up Python - uses: actions/setup-python@v1 - with: - python-version: "3.x" + # Install dependencies + - name: Set up Python + uses: actions/setup-python@v1 + with: + python-version: "3.x" - - name: Install dependencies - run: | - python -m pip install --upgrade pip - pip install .[dev] + - name: Install dependencies + run: | + python -m pip install --upgrade pip + pip install .[dev] - # Build the book - - name: Build the book - run: | - jupyter-book build ./docs/source + # Build the book + - name: Build the book + run: | + jupyter-book build ./docs/source - # Push the book's HTML to github-pages - - name: GitHub Pages action - uses: peaceiris/actions-gh-pages@v3.6.1 - with: - github_token: ${{ secrets.GITHUB_TOKEN }} - publish_dir: ./docs/source/_build/html \ No newline at end of file + # Push the book's HTML to github-pages + - name: GitHub Pages action + uses: peaceiris/actions-gh-pages@v3.6.1 + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + publish_dir: ./docs/source/_build/html \ No newline at end of file From f7f86f841b5111a55024d038cb76d6fa0c992631 Mon Sep 17 00:00:00 2001 From: fedem-p Date: Fri, 19 Feb 2021 10:47:18 +0000 Subject: [PATCH 05/43] test automatic deployment --- .github/workflows/doc_deploy.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/doc_deploy.yml b/.github/workflows/doc_deploy.yml index 2ba094aa..d43f1ddc 100644 --- a/.github/workflows/doc_deploy.yml +++ b/.github/workflows/doc_deploy.yml @@ -1,9 +1,9 @@ name: deploy_doc -on: - push: - branches: - - main +on: push + # push: + # branches: + # - main jobs: deploy-book: From 6d44c9bccae6ee7a909405f75f40563702555043 Mon Sep 17 00:00:00 2001 From: fedem-p Date: Fri, 19 Feb 2021 10:51:57 +0000 Subject: [PATCH 06/43] fixed python version - 3.9 too new --- .github/workflows/doc_deploy.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/doc_deploy.yml b/.github/workflows/doc_deploy.yml index d43f1ddc..034ddadd 100644 --- a/.github/workflows/doc_deploy.yml +++ b/.github/workflows/doc_deploy.yml @@ -15,7 +15,7 @@ jobs: - name: Set up Python uses: actions/setup-python@v1 with: - python-version: "3.x" + python-version: 3.8 #some packeges don't work with 3.9 - name: Install dependencies run: | From 9442f85ca74105ffbe0bdaa4f4aa60053105b1c0 Mon Sep 17 00:00:00 2001 From: fedem-p Date: Fri, 19 Feb 2021 10:59:05 +0000 Subject: [PATCH 07/43] working deployment verion --- .github/workflows/doc_deploy.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/doc_deploy.yml b/.github/workflows/doc_deploy.yml index 034ddadd..bfd20c0d 100644 --- a/.github/workflows/doc_deploy.yml +++ b/.github/workflows/doc_deploy.yml @@ -1,9 +1,9 @@ name: deploy_doc on: push - # push: - # branches: - # - main + push: + branches: + - main jobs: deploy-book: From 4a2a393dfe05b01d041bed1787a25f5b5dfe9ef4 Mon Sep 17 00:00:00 2001 From: fedem-p Date: Fri, 19 Feb 2021 11:00:43 +0000 Subject: [PATCH 08/43] working deployment verion - fix typo --- .github/workflows/doc_deploy.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/doc_deploy.yml b/.github/workflows/doc_deploy.yml index bfd20c0d..1288099c 100644 --- a/.github/workflows/doc_deploy.yml +++ b/.github/workflows/doc_deploy.yml @@ -1,6 +1,6 @@ name: deploy_doc -on: push +on: push: branches: - main From 20b922040b9922b119e6a9b4a02aeebe2049b594 Mon Sep 17 00:00:00 2001 From: fedem-p Date: Tue, 30 Mar 2021 08:39:33 +0000 Subject: [PATCH 09/43] update github token --- .github/workflows/doc_deploy.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/doc_deploy.yml b/.github/workflows/doc_deploy.yml index 0cc5d4ff..30b45203 100644 --- a/.github/workflows/doc_deploy.yml +++ b/.github/workflows/doc_deploy.yml @@ -31,5 +31,5 @@ jobs: - name: GitHub Pages action uses: peaceiris/actions-gh-pages@v3.6.1 with: - github_token: ${{ secrets.ACCESS_TOKEN }} + github_token: ${{ secrets.GITHUB_TOKEN }} publish_dir: ./docs/_build/html \ No newline at end of file From 025d233ec96c9f574c7a50cae99f0d85ae94f2b8 Mon Sep 17 00:00:00 2001 From: fedem-p Date: Tue, 30 Mar 2021 08:47:41 +0000 Subject: [PATCH 10/43] test api --- docs/api/index.rst | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/docs/api/index.rst b/docs/api/index.rst index 620a1614..0e83ab8d 100644 --- a/docs/api/index.rst +++ b/docs/api/index.rst @@ -16,4 +16,9 @@ For the average user's workflows. :recursive: sashimi - sashimi/sashimi + sashimi.sashimi + SashimiEvents + LoggedEvent + sashimi.SashimiEvents + sashimi.AbstractComm + AbstractComm From b4124ae1fc9b939f06311e5cbddb078724316c2f Mon Sep 17 00:00:00 2001 From: fedem-p Date: Tue, 30 Mar 2021 08:57:14 +0000 Subject: [PATCH 11/43] + api + titles + logo --- docs/_config.yml | 2 +- docs/api/index.rst | 10 ++++------ docs/intro.md | 8 ++------ docs/timeline.md | 2 +- 4 files changed, 8 insertions(+), 14 deletions(-) diff --git a/docs/_config.yml b/docs/_config.yml index 245a9377..bc7c1fe1 100644 --- a/docs/_config.yml +++ b/docs/_config.yml @@ -3,7 +3,7 @@ title: Sashimi author: Diego Asua, Vilim Stih, Luigi Petrucco @portugueslab -logo: +logo: sashimi/icons/main_icon.png copyright: Portugues lab release: 0.2.0 # only_build_toc_files: true diff --git a/docs/api/index.rst b/docs/api/index.rst index 0e83ab8d..a45ff844 100644 --- a/docs/api/index.rst +++ b/docs/api/index.rst @@ -16,9 +16,7 @@ For the average user's workflows. :recursive: sashimi - sashimi.sashimi - SashimiEvents - LoggedEvent - sashimi.SashimiEvents - sashimi.AbstractComm - AbstractComm + sashimi.hardware + sashimi.processes + sashimi.events + sashimi.utilities diff --git a/docs/intro.md b/docs/intro.md index cfc66e24..eab24f68 100644 --- a/docs/intro.md +++ b/docs/intro.md @@ -1,8 +1,4 @@ -```{admonition} Here's my title -:class: warning +# Intro -Here's my admonition content -``` +link readme -```{include} ../../README.md -``` \ No newline at end of file diff --git a/docs/timeline.md b/docs/timeline.md index 95c6225b..e9901ede 100644 --- a/docs/timeline.md +++ b/docs/timeline.md @@ -1 +1 @@ -a timeline here +# a timeline here From d687795eb1defeb5cc4c4843dffdd4f611b6a626 Mon Sep 17 00:00:00 2001 From: fedem-p Date: Tue, 30 Mar 2021 09:06:13 +0000 Subject: [PATCH 12/43] fix api + logo --- docs/_config.yml | 2 +- docs/api/index.rst | 8 +++++--- docs/intro.md | 4 ---- docs/intro.rst | 8 ++++++++ 4 files changed, 14 insertions(+), 8 deletions(-) delete mode 100644 docs/intro.md create mode 100644 docs/intro.rst diff --git a/docs/_config.yml b/docs/_config.yml index bc7c1fe1..0ac07839 100644 --- a/docs/_config.yml +++ b/docs/_config.yml @@ -3,7 +3,7 @@ title: Sashimi author: Diego Asua, Vilim Stih, Luigi Petrucco @portugueslab -logo: sashimi/icons/main_icon.png +logo: "./sashimi/icons/main_icon.png" copyright: Portugues lab release: 0.2.0 # only_build_toc_files: true diff --git a/docs/api/index.rst b/docs/api/index.rst index a45ff844..622ae81b 100644 --- a/docs/api/index.rst +++ b/docs/api/index.rst @@ -15,8 +15,10 @@ For the average user's workflows. :toctree: :recursive: - sashimi - sashimi.hardware - sashimi.processes + sashimi.events + sashimi.hardware.cameras sashimi.utilities + sashimi.processes.logging + sashimi.config + sashimi.hardware.scanning \ No newline at end of file diff --git a/docs/intro.md b/docs/intro.md deleted file mode 100644 index eab24f68..00000000 --- a/docs/intro.md +++ /dev/null @@ -1,4 +0,0 @@ -# Intro - -link readme - diff --git a/docs/intro.rst b/docs/intro.rst new file mode 100644 index 00000000..ca20a82f --- /dev/null +++ b/docs/intro.rst @@ -0,0 +1,8 @@ +```{admonition} Here's my title +:class: warning + +Here's my admonition content +``` + +```{include} ../../README.md +``` From e60fc295dd6d3ad7f916a1e37bd161c13ff14e21 Mon Sep 17 00:00:00 2001 From: fedem-p Date: Tue, 30 Mar 2021 09:16:21 +0000 Subject: [PATCH 13/43] fix intro + logo --- docs/_config.yml | 4 ++-- docs/intro.rst | 10 +++------- 2 files changed, 5 insertions(+), 9 deletions(-) diff --git a/docs/_config.yml b/docs/_config.yml index 0ac07839..131331e5 100644 --- a/docs/_config.yml +++ b/docs/_config.yml @@ -3,7 +3,7 @@ title: Sashimi author: Diego Asua, Vilim Stih, Luigi Petrucco @portugueslab -logo: "./sashimi/icons/main_icon.png" +logo: "../sashimi/icons/main_icon.png" copyright: Portugues lab release: 0.2.0 # only_build_toc_files: true @@ -15,7 +15,7 @@ execute: # Information about where the book exists on the web repository: - url: https://github.com/portugueslab/sashimi/tree/doc_automated # Online location of your book + url: https://github.com/portugueslab/sashimi # Online location of your book path_to_book: docs # Optional path to your book, relative to the repository root # Add GitHub buttons to your book diff --git a/docs/intro.rst b/docs/intro.rst index ca20a82f..50886872 100644 --- a/docs/intro.rst +++ b/docs/intro.rst @@ -1,8 +1,4 @@ -```{admonition} Here's my title -:class: warning +Readme File +=========== -Here's my admonition content -``` - -```{include} ../../README.md -``` +.. mdinclude:: ../README.md \ No newline at end of file From 41bb9214eb9e510e4e24fbef9e34e769b3c413d5 Mon Sep 17 00:00:00 2001 From: fedem-p Date: Tue, 30 Mar 2021 09:23:28 +0000 Subject: [PATCH 14/43] fix intro from readme --- docs/intro.rst | 5 +++-- docs/requirements.txt | 3 ++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/docs/intro.rst b/docs/intro.rst index 50886872..368e6641 100644 --- a/docs/intro.rst +++ b/docs/intro.rst @@ -1,4 +1,5 @@ -Readme File +Readme File 2 =========== -.. mdinclude:: ../README.md \ No newline at end of file +.. include:: ../README.md + diff --git a/docs/requirements.txt b/docs/requirements.txt index a5dff97b..68468dbe 100644 --- a/docs/requirements.txt +++ b/docs/requirements.txt @@ -1,4 +1,5 @@ jupyter-book jupytext sphinx_autodoc_typehints -furo \ No newline at end of file +furo +recommonmark \ No newline at end of file From ad58c1e3786edcc398427f95861fa19855421895 Mon Sep 17 00:00:00 2001 From: fedem-p Date: Tue, 30 Mar 2021 09:28:24 +0000 Subject: [PATCH 15/43] fix intro from readme --- docs/intro.rst | 2 +- sashimi/events.py | 11 +++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/docs/intro.rst b/docs/intro.rst index 368e6641..cb831480 100644 --- a/docs/intro.rst +++ b/docs/intro.rst @@ -1,5 +1,5 @@ Readme File 2 =========== -.. include:: ../README.md +.. mdinclude:: ../README.md diff --git a/sashimi/events.py b/sashimi/events.py index 37fa4f8d..8185c6bb 100644 --- a/sashimi/events.py +++ b/sashimi/events.py @@ -2,6 +2,17 @@ from multiprocessing import Event from typing import Optional +"""test if docstrings work fo modules + + events docstrings + + Functions + --------- + + autoname is used for.. + + """ + class AutoName(Enum): def _generate_next_value_(name, start, count, last_values): From 007d2f79e522894fd335056902546407c7600cc9 Mon Sep 17 00:00:00 2001 From: fedem-p Date: Tue, 30 Mar 2021 09:46:25 +0000 Subject: [PATCH 16/43] fix intro from readme --- docs/_toc.yml | 1 + docs/intro.rst | 4 ++-- sashimi/events.py | 11 ----------- 3 files changed, 3 insertions(+), 13 deletions(-) diff --git a/docs/_toc.yml b/docs/_toc.yml index 27ec1a48..9d8858b6 100644 --- a/docs/_toc.yml +++ b/docs/_toc.yml @@ -4,6 +4,7 @@ chapters: - file: intro - file: timeline + - file: ../README - part: Configuration chapters: diff --git a/docs/intro.rst b/docs/intro.rst index cb831480..ee110c92 100644 --- a/docs/intro.rst +++ b/docs/intro.rst @@ -1,5 +1,5 @@ -Readme File 2 +Readme File 3 =========== -.. mdinclude:: ../README.md +.. include:: ../README.md diff --git a/sashimi/events.py b/sashimi/events.py index 8185c6bb..37fa4f8d 100644 --- a/sashimi/events.py +++ b/sashimi/events.py @@ -2,17 +2,6 @@ from multiprocessing import Event from typing import Optional -"""test if docstrings work fo modules - - events docstrings - - Functions - --------- - - autoname is used for.. - - """ - class AutoName(Enum): def _generate_next_value_(name, start, count, last_values): From 4aea6a06b949c05165e542d97636e6c86294183f Mon Sep 17 00:00:00 2001 From: fedem-p Date: Tue, 30 Mar 2021 10:03:57 +0000 Subject: [PATCH 17/43] fix intro from readme 2 --- docs/_config.yml | 1 + docs/intro.rst | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/docs/_config.yml b/docs/_config.yml index 131331e5..0d765cda 100644 --- a/docs/_config.yml +++ b/docs/_config.yml @@ -42,6 +42,7 @@ sphinx: - sphinx.ext.coverage - sphinx.ext.inheritance_diagram - sphinx.ext.githubpages + - m2r config: autosummary_generate: True diff --git a/docs/intro.rst b/docs/intro.rst index ee110c92..bbc4b956 100644 --- a/docs/intro.rst +++ b/docs/intro.rst @@ -1,5 +1,5 @@ -Readme File 3 +Readme File 4 =========== -.. include:: ../README.md +.. mdinclude:: ../README.md From a44da1e83dfc47903798761c97d2036e50fb2900 Mon Sep 17 00:00:00 2001 From: fedem-p Date: Tue, 30 Mar 2021 10:07:35 +0000 Subject: [PATCH 18/43] fix intro from readme 2 --- docs/requirements.txt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/requirements.txt b/docs/requirements.txt index 68468dbe..2f3783ed 100644 --- a/docs/requirements.txt +++ b/docs/requirements.txt @@ -2,4 +2,5 @@ jupyter-book jupytext sphinx_autodoc_typehints furo -recommonmark \ No newline at end of file +recommonmark +m2r \ No newline at end of file From 1e0a112e6e8c35452a1098701572d7ab4cb2d000 Mon Sep 17 00:00:00 2001 From: fedem-p Date: Tue, 30 Mar 2021 10:10:42 +0000 Subject: [PATCH 19/43] fix intro from readme 3 --- docs/_config.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/_config.yml b/docs/_config.yml index 0d765cda..25ef0c37 100644 --- a/docs/_config.yml +++ b/docs/_config.yml @@ -42,7 +42,7 @@ sphinx: - sphinx.ext.coverage - sphinx.ext.inheritance_diagram - sphinx.ext.githubpages - - m2r + - sphinx.ext.m2r config: autosummary_generate: True From 6bfd568e2fef770f4fad85c68c7ae6931ed61c6f Mon Sep 17 00:00:00 2001 From: fedem-p Date: Tue, 30 Mar 2021 10:16:03 +0000 Subject: [PATCH 20/43] fix intro from readme 4 --- docs/_config.yml | 3 ++- docs/intro.rst | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/docs/_config.yml b/docs/_config.yml index 25ef0c37..465e38c8 100644 --- a/docs/_config.yml +++ b/docs/_config.yml @@ -42,7 +42,8 @@ sphinx: - sphinx.ext.coverage - sphinx.ext.inheritance_diagram - sphinx.ext.githubpages - - sphinx.ext.m2r + - m2r + - recommonmark config: autosummary_generate: True diff --git a/docs/intro.rst b/docs/intro.rst index bbc4b956..ae0d7643 100644 --- a/docs/intro.rst +++ b/docs/intro.rst @@ -1,4 +1,4 @@ -Readme File 4 +Readme File 5 =========== .. mdinclude:: ../README.md From 1904ae9a70b3ed9f4ebdecbc359eb915aa33fd4f Mon Sep 17 00:00:00 2001 From: fedem-p Date: Tue, 30 Mar 2021 10:27:07 +0000 Subject: [PATCH 21/43] fix intro from readme 4 --- docs/_config.yml | 2 +- docs/requirements.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/_config.yml b/docs/_config.yml index 465e38c8..a759f2a9 100644 --- a/docs/_config.yml +++ b/docs/_config.yml @@ -42,7 +42,7 @@ sphinx: - sphinx.ext.coverage - sphinx.ext.inheritance_diagram - sphinx.ext.githubpages - - m2r + - m2r2 - recommonmark config: diff --git a/docs/requirements.txt b/docs/requirements.txt index 2f3783ed..7103f4e4 100644 --- a/docs/requirements.txt +++ b/docs/requirements.txt @@ -3,4 +3,4 @@ jupytext sphinx_autodoc_typehints furo recommonmark -m2r \ No newline at end of file +m2r2 \ No newline at end of file From 13b82ec4e1c6aa187947a8efc1f885f402ef54df Mon Sep 17 00:00:00 2001 From: fedem-p Date: Tue, 30 Mar 2021 10:32:17 +0000 Subject: [PATCH 22/43] fix intro from readme 5 --- docs/_config.yml | 1 - docs/requirements.txt | 1 - 2 files changed, 2 deletions(-) diff --git a/docs/_config.yml b/docs/_config.yml index a759f2a9..46097d04 100644 --- a/docs/_config.yml +++ b/docs/_config.yml @@ -43,7 +43,6 @@ sphinx: - sphinx.ext.inheritance_diagram - sphinx.ext.githubpages - m2r2 - - recommonmark config: autosummary_generate: True diff --git a/docs/requirements.txt b/docs/requirements.txt index 7103f4e4..89a9663f 100644 --- a/docs/requirements.txt +++ b/docs/requirements.txt @@ -2,5 +2,4 @@ jupyter-book jupytext sphinx_autodoc_typehints furo -recommonmark m2r2 \ No newline at end of file From 529e05777ce744a07f6d659520e2df7eeaaf224d Mon Sep 17 00:00:00 2001 From: fedem-p Date: Tue, 30 Mar 2021 10:35:03 +0000 Subject: [PATCH 23/43] fix intro from readme 6 --- docs/_config.yml | 2 +- docs/requirements.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/_config.yml b/docs/_config.yml index 46097d04..74114a92 100644 --- a/docs/_config.yml +++ b/docs/_config.yml @@ -42,7 +42,7 @@ sphinx: - sphinx.ext.coverage - sphinx.ext.inheritance_diagram - sphinx.ext.githubpages - - m2r2 + - recommonmark config: autosummary_generate: True diff --git a/docs/requirements.txt b/docs/requirements.txt index 89a9663f..33d44626 100644 --- a/docs/requirements.txt +++ b/docs/requirements.txt @@ -2,4 +2,4 @@ jupyter-book jupytext sphinx_autodoc_typehints furo -m2r2 \ No newline at end of file +recommonmark From 27a0e3921818ad445aa56e2e638cc5596a7a9bdb Mon Sep 17 00:00:00 2001 From: fedem-p Date: Tue, 30 Mar 2021 10:38:27 +0000 Subject: [PATCH 24/43] step back --- docs/_config.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/docs/_config.yml b/docs/_config.yml index 74114a92..131331e5 100644 --- a/docs/_config.yml +++ b/docs/_config.yml @@ -42,7 +42,6 @@ sphinx: - sphinx.ext.coverage - sphinx.ext.inheritance_diagram - sphinx.ext.githubpages - - recommonmark config: autosummary_generate: True From 27f234f418881785b5b6cee946e03c615d7102ea Mon Sep 17 00:00:00 2001 From: fedem-p Date: Tue, 30 Mar 2021 12:21:38 +0000 Subject: [PATCH 25/43] only master push --- .github/workflows/doc_deploy.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/doc_deploy.yml b/.github/workflows/doc_deploy.yml index 30b45203..a008a81f 100644 --- a/.github/workflows/doc_deploy.yml +++ b/.github/workflows/doc_deploy.yml @@ -1,11 +1,11 @@ name: page_deploy -on: push +on: #push # Trigger the workflow on push or pull request, # but only for the main branch - # push: - # branches: - # - main + push: + branches: + - main jobs: deploy-book: From a1f0b908ee4a7a5831d2d54eb8bed4f42705ca4e Mon Sep 17 00:00:00 2001 From: fedem-p Date: Tue, 30 Mar 2021 12:23:03 +0000 Subject: [PATCH 26/43] changed intro --- .github/workflows/doc_deploy.yml | 8 +-- docs/_toc.yml | 1 - docs/intro.md | 94 ++++++++++++++++++++++++++++++++ docs/intro.rst | 5 -- 4 files changed, 98 insertions(+), 10 deletions(-) create mode 100644 docs/intro.md delete mode 100644 docs/intro.rst diff --git a/.github/workflows/doc_deploy.yml b/.github/workflows/doc_deploy.yml index a008a81f..30b45203 100644 --- a/.github/workflows/doc_deploy.yml +++ b/.github/workflows/doc_deploy.yml @@ -1,11 +1,11 @@ name: page_deploy -on: #push +on: push # Trigger the workflow on push or pull request, # but only for the main branch - push: - branches: - - main + # push: + # branches: + # - main jobs: deploy-book: diff --git a/docs/_toc.yml b/docs/_toc.yml index 9d8858b6..27ec1a48 100644 --- a/docs/_toc.yml +++ b/docs/_toc.yml @@ -4,7 +4,6 @@ chapters: - file: intro - file: timeline - - file: ../README - part: Configuration chapters: diff --git a/docs/intro.md b/docs/intro.md new file mode 100644 index 00000000..eb63972c --- /dev/null +++ b/docs/intro.md @@ -0,0 +1,94 @@ +# Sashimi + + + +![tests](https://github.com/portugueslab/sashimi/workflows/tests/badge.svg?branch=master) +[![Docs](https://img.shields.io/badge/docs-dev-brightgreen)](https://portugueslab.github.io/sashimi/) +[![Coverage Status](https://coveralls.io/repos/github/portugueslab/sashimi/badge.svg)](https://coveralls.io/github/portugueslab/sashimi) +[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black) +[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.4122062.svg)](https://doi.org/10.5281/zenodo.4122062) +[![Python 3.8](https://img.shields.io/badge/python-3.8-blue.svg)](https://www.python.org/) + +Sashimi is a user-friendly software for efficient control of digital scanned light sheet microscopes (DSLMs). +It is developed by members of the [PortuguesLab](http://www.portugueslab.com/) + at the Technical University of Munich and Max Planck Institute of Neurobiology. Sashimi relies on the fast, multidimensional + [Napari viewer](https://github.com/napari/napari). + +While built for a particular microscope configuration, the modular architecture allows for easy replacement of +hardware by other vendors (we will help with and welcome contributions for supporting other cameras, boards and light sources). + + + +## Installation + +[Install the latest Anaconda](https://www.anaconda.com/) distribution of Python 3. + +Clone this repository and navigate to the main folder `../sashimi` + +### Recommended: Create a new environment + +It is a good practice to create an environment for every project. The provided `environment.yml` sets up almost all required dependencies (see below). + + conda env create -f {path to environment.yml} + +You can activate the environment by running: + + conda activate sashimi + +After this you moght have to install two extra dependencies for controlling a Cobolt laser: + + pip install pyvisa + pip install pyvisa-py + +### Install with pip + +For a non-editable installation run: + + pip install . + +Otherwise, if you want to contribute to the project as a developer, for editable installation run: + + pip install -e . + +Now you are ready to go! + +## Configuring sashimi + +Sashimi includes the `sashimi-config` module that lets you interact with the hardware and software +settings from command line. You can display the current configuration of the system.: + + sashimi-config show + +You can ask sashimi for help: + + sashimi --help + +More information on its usage can be found by asking `sashimi-config` for help: + + sashimi-config --help + +You can add and modify parameters just from the command line. For example, to set the piezo waveform readout channel to `Dev1/ao0:0` just run: + + sashimi-config edit -n z_board.write.channel -v Dev1/ao0:0 + +Or to modify the minimum and maximum voltage (in Volts) of the channel: + + sashimi-config edit -n piezo.position_write.min_val -v 0 + sashimi-config edit -n piezo.position_write.max_val -v 10 + + +## Starting the software from command line + +Open a new anaconda prompt and activate your environment like above. Then run: + + sashimi + +Add the option `--scopeless`: + + sashimi --scopeless + +If you want to run the software with mock hardware, such as for debugging or developing. diff --git a/docs/intro.rst b/docs/intro.rst deleted file mode 100644 index ae0d7643..00000000 --- a/docs/intro.rst +++ /dev/null @@ -1,5 +0,0 @@ -Readme File 5 -=========== - -.. mdinclude:: ../README.md - From 9898328db5dcaef03a7103250b66e68b25bbba5f Mon Sep 17 00:00:00 2001 From: fedem-p Date: Tue, 30 Mar 2021 12:23:19 +0000 Subject: [PATCH 27/43] only master push --- .github/workflows/doc_deploy.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/doc_deploy.yml b/.github/workflows/doc_deploy.yml index 30b45203..a008a81f 100644 --- a/.github/workflows/doc_deploy.yml +++ b/.github/workflows/doc_deploy.yml @@ -1,11 +1,11 @@ name: page_deploy -on: push +on: #push # Trigger the workflow on push or pull request, # but only for the main branch - # push: - # branches: - # - main + push: + branches: + - main jobs: deploy-book: From 5bed5cf092f7964b3cbe8726538a9e2ccf59d16a Mon Sep 17 00:00:00 2001 From: fedem-p Date: Wed, 14 Apr 2021 20:46:23 +0000 Subject: [PATCH 28/43] reduce doc deploy --- .github/workflows/doc_deploy.yml | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/.github/workflows/doc_deploy.yml b/.github/workflows/doc_deploy.yml index a008a81f..f20e932c 100644 --- a/.github/workflows/doc_deploy.yml +++ b/.github/workflows/doc_deploy.yml @@ -1,11 +1,11 @@ name: page_deploy -on: #push +on: push # Trigger the workflow on push or pull request, # but only for the main branch - push: - branches: - - main + # push: + # branches: + # - main jobs: deploy-book: @@ -19,10 +19,6 @@ jobs: with: python-version: "3.8" - - name: Install dependencies - run: | - python -m pip install --upgrade pip - pip install -r requirements.txt # Build the book - name: Build the book run: | From 413a51f9375cdfa79ab530a575ed549b686269ac Mon Sep 17 00:00:00 2001 From: fedem-p Date: Wed, 14 Apr 2021 21:09:13 +0000 Subject: [PATCH 29/43] fixed logo --- README.md | 11 +++++++---- docs/intro.md | 10 ++++++---- 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index eb63972c..208fdf5d 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,13 @@ # Sashimi - +/> + + ![tests](https://github.com/portugueslab/sashimi/workflows/tests/badge.svg?branch=master) [![Docs](https://img.shields.io/badge/docs-dev-brightgreen)](https://portugueslab.github.io/sashimi/) diff --git a/docs/intro.md b/docs/intro.md index eb63972c..d5ac834d 100644 --- a/docs/intro.md +++ b/docs/intro.md @@ -1,10 +1,12 @@ # Sashimi - +/> + ![tests](https://github.com/portugueslab/sashimi/workflows/tests/badge.svg?branch=master) [![Docs](https://img.shields.io/badge/docs-dev-brightgreen)](https://portugueslab.github.io/sashimi/) From 452da3f99ec6b4c70bcde4e24221c1bc1993909d Mon Sep 17 00:00:00 2001 From: fedem-p Date: Wed, 14 Apr 2021 21:20:35 +0000 Subject: [PATCH 30/43] fixed logo --- docs/_toc.yml | 2 +- docs/index.md | 96 +++++++++++++++++++++++++++++++++++++++++++++++- docs/timeline.md | 5 +++ 3 files changed, 101 insertions(+), 2 deletions(-) diff --git a/docs/_toc.yml b/docs/_toc.yml index 27ec1a48..2cd9606e 100644 --- a/docs/_toc.yml +++ b/docs/_toc.yml @@ -1,6 +1,6 @@ - file: index -- part: Introduction +- part: Overview chapters: - file: intro - file: timeline diff --git a/docs/index.md b/docs/index.md index 4e4ffdce..580d2a70 100644 --- a/docs/index.md +++ b/docs/index.md @@ -1,4 +1,98 @@ # Welcome to the Sashimi documentation! -maybe add index here? + + + +![tests](https://github.com/portugueslab/sashimi/workflows/tests/badge.svg?branch=master) +[![Docs](https://img.shields.io/badge/docs-dev-brightgreen)](https://portugueslab.github.io/sashimi/) +[![Coverage Status](https://coveralls.io/repos/github/portugueslab/sashimi/badge.svg)](https://coveralls.io/github/portugueslab/sashimi) +[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black) +[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.4122062.svg)](https://doi.org/10.5281/zenodo.4122062) +[![Python 3.8](https://img.shields.io/badge/python-3.8-blue.svg)](https://www.python.org/) + +Sashimi is a user-friendly software for efficient control of digital scanned light sheet microscopes (DSLMs). +It is developed by members of the [PortuguesLab](http://www.portugueslab.com/) + at the Technical University of Munich and Max Planck Institute of Neurobiology. Sashimi relies on the fast, multidimensional + [Napari viewer](https://github.com/napari/napari). + +While built for a particular microscope configuration, the modular architecture allows for easy replacement of +hardware by other vendors (we will help with and welcome contributions for supporting other cameras, boards and light sources). + + + +## Installation + +[Install the latest Anaconda](https://www.anaconda.com/) distribution of Python 3. + +Clone this repository and navigate to the main folder `../sashimi` + +### Recommended: Create a new environment + +It is a good practice to create an environment for every project. The provided `environment.yml` sets up almost all required dependencies (see below). + + conda env create -f {path to environment.yml} + +You can activate the environment by running: + + conda activate sashimi + +After this you moght have to install two extra dependencies for controlling a Cobolt laser: + + pip install pyvisa + pip install pyvisa-py + +### Install with pip + +For a non-editable installation run: + + pip install . + +Otherwise, if you want to contribute to the project as a developer, for editable installation run: + + pip install -e . + +Now you are ready to go! + +## Configuring sashimi + +Sashimi includes the `sashimi-config` module that lets you interact with the hardware and software +settings from command line. You can display the current configuration of the system.: + + sashimi-config show + +You can ask sashimi for help: + + sashimi --help + +More information on its usage can be found by asking `sashimi-config` for help: + + sashimi-config --help + +You can add and modify parameters just from the command line. For example, to set the piezo waveform readout channel to `Dev1/ao0:0` just run: + + sashimi-config edit -n z_board.write.channel -v Dev1/ao0:0 + +Or to modify the minimum and maximum voltage (in Volts) of the channel: + + sashimi-config edit -n piezo.position_write.min_val -v 0 + sashimi-config edit -n piezo.position_write.max_val -v 10 + + +## Starting the software from command line + +Open a new anaconda prompt and activate your environment like above. Then run: + + sashimi + +Add the option `--scopeless`: + + sashimi --scopeless + +If you want to run the software with mock hardware, such as for debugging or developing. + diff --git a/docs/timeline.md b/docs/timeline.md index e9901ede..e957a602 100644 --- a/docs/timeline.md +++ b/docs/timeline.md @@ -1 +1,6 @@ # a timeline here + + + +```{tableofcontents} +``` \ No newline at end of file From addd5e1530a18e7362570e0fa8f46c326f0ebc5b Mon Sep 17 00:00:00 2001 From: fedem-p Date: Thu, 15 Apr 2021 07:56:15 +0000 Subject: [PATCH 31/43] logo --- README.md | 9 ++++----- docs/intro.md | 8 ++------ 2 files changed, 6 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index 208fdf5d..505e75d0 100644 --- a/README.md +++ b/README.md @@ -1,11 +1,10 @@ # Sashimi - +height="190" +width="270"> diff --git a/docs/intro.md b/docs/intro.md index d5ac834d..9c34410f 100644 --- a/docs/intro.md +++ b/docs/intro.md @@ -1,11 +1,7 @@ # Sashimi - + + ![tests](https://github.com/portugueslab/sashimi/workflows/tests/badge.svg?branch=master) From 8b8804dc16e78fa677aea62086f607ce965c0290 Mon Sep 17 00:00:00 2001 From: fedem-p Date: Thu, 15 Apr 2021 08:07:33 +0000 Subject: [PATCH 32/43] link readme --- docs/timeline.md | 6 ------ docs/timeline.rts | 3 +++ 2 files changed, 3 insertions(+), 6 deletions(-) delete mode 100644 docs/timeline.md create mode 100644 docs/timeline.rts diff --git a/docs/timeline.md b/docs/timeline.md deleted file mode 100644 index e957a602..00000000 --- a/docs/timeline.md +++ /dev/null @@ -1,6 +0,0 @@ -# a timeline here - - - -```{tableofcontents} -``` \ No newline at end of file diff --git a/docs/timeline.rts b/docs/timeline.rts new file mode 100644 index 00000000..ee0c21d4 --- /dev/null +++ b/docs/timeline.rts @@ -0,0 +1,3 @@ + + +.. mdinclude:: ../../README.md \ No newline at end of file From 9d788e4f975ef18c1aa181fbfbcccfe0fd22ce61 Mon Sep 17 00:00:00 2001 From: fedem-p Date: Thu, 15 Apr 2021 08:09:28 +0000 Subject: [PATCH 33/43] test logo --- docs/images/main_icon.png | Bin 0 -> 29835 bytes docs/intro.md | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 docs/images/main_icon.png diff --git a/docs/images/main_icon.png b/docs/images/main_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..d011032fed928919f446d33eb6e0d2c627b646d7 GIT binary patch literal 29835 zcmdRVg;$kd(DenRq?PVVcXxZ~ZUm&e8v#MOyF?TOX+c^#q+7Z>1u5y2cn`ntd;f@c zEm(K)=yOlZoH;Xl?}<`Vk;QmU{2T&-V93i!X+R+Gf)EIt0}2v&!Y1*p27I8p$mzL* zzo?&n;k*mP--3rk9@4rVn$A`pUZ!rA5HBw;Hd`lqcXLx0OEzaW>x{o5#1IH2L|*EZ zmUrgCvX{5Pl_&k(k>ez@kQ}xH{C7F^)Ne**X7Xtc)BV*O{qcD`9|d|;lZWY=|2bt@ z{5UCeu6A9CBkPMw5%3`sjwgMSJU#D=+#bAwG~(Owws877Hz5$u$zX_Rc)ew8QaH=j*tc?5Dqt5?c#dF9%R10 zuIr76NuCvwVcx+NEBVL-ljHpgwn0Oy(2=^pMy_9os{~V?Kh2}XagoEZJrrZOhI02z zd}i4F`1B^fj|8RNzT_B9L`0;%GXN2qkFS<2iNY8iTVk%Ig`J``SJ!$CC;gR}POD4G zdxy;C;e@?i!;+>i;w!pwI2j4tN74{szEFsL7rhJ5sifSO958YDXu4z z4JA)voENys^^ef-L)xFSd9<7haxC4kTcY=MO|GD-`qBqRKp<&U(DBunq@Wm+KDI92 znFwr;X9gm1m)IJTPv&NcvePG&+u@*NQi%vI^vw=zF7_Pgt0Jce&TxjgoGC*fi*=N$ zv6TLeBs!~t4G~Q^K|z5rMpUT9R_Ew+p}5^Ojte8Q$zYUcBhG>=N#!QrTv}LF5E{n_narP4*HDc4 z-D8wu`wu5fuTWfL9nuL$1_@t&sKz^a!}z$sRwSAJva9;IZ1Gv?;aBI!JRG6zRv^64E+!nC-P%;2O_^d62cnAXySX<^uoZ-rtlH(UI#oqfT^K$T+8 zJH#3ZFg_+oj@jO0LVIN7F`>Lld`huV&t;gsi>5SOe?kcB_@Yl6UzZ{1lu3?w!|ly? z9e=rjbm+ECn&N11KaJFD@F|&iU{KCzmM3N1d#-R@$wa#I23{pX%>$ji{l}S#uJDnR zLk-2jcs=%^FkIbWfKI4D9Pk*s(EN-@d8S_X=Tkm~`FH#Lk}WQUzmo6>x=_K(8s(R@ z?XqHFHB=oUwOC1$M}ebsUoc}5OQgUowZSZDEHGXQBIedz7x}+7XHHk#F?p@#8(#1| z&bGd%lAK~r6zkQ}JtX!_7F*;JX(>v*sEaDU1RQrcJWfXvTWML?cw%ZTEjyJ?Zv-~* zvH7z;MO-K&U-%}aLmS56A^h5D3mgbC^1gac@NgnlBuSN@ zJ0(+v3M)y)Fj3NSv7res36x`gGbt(EawMWZ%kY4T#7g{ z?ZRIVflw`U;sIzkwAwV6KTEpl*CAfb77by1NOLjX-j=ssg&}&KZF{OauO7Q~fdNU~ zE4^l--Io-UZhv?irZXp@I2#P$_55EBkb7HHS(y||RhM$PY@x{hzrJLRZ#n-Em5^{# zgm13Rzo*E5?T@zk=5KJ%*pNuE@%f^v9Fc8dnC2!UdcJ!++gIgmkw7q2cqPxj+FV?W zMUvmV!Iq8Yv74UW7|XPn#!aqcZ=irZVthHz;c6!Gd+yJ0ZOyd+i*k_jAzhKA9zH9X zmr!WQy3^6K$J37-exqpEJ{9044IOa)HIM|C+fS;rq&*?3*&^u_!^NHA>NDv)YFdwm;s)-ArsSbU<+q&s+F{~ zFQUCqEaarmSUUJhm<$t2D+>%yoBsx1ML9nw^gpC4^bM4XU;5%Kp9M~uvV6*t@5G)|iBO*w zsKDx=H}1GLub^Tb`-WMp{Inh_Ng`BvX?LMmL|Ux27>QX-lq4Cj30#&QW4qXP!2xH= zm16gA2Bfj`yrYq z_z~x>xeJlPqW^ng%?wuhSthyI{3vg|4!NY}}tE~N+Teis?vreyZ|4RuT1xm-gd3ImFBSl#Fo`N50Bl*)C z^DcEwO%@r+kq%c;cQz_`oZ3XEW3)wG-;~i29?23YZw?5OE@U#}!xJs@Xd)7+svSsN z^*n`QX%)$Qu#z(VKHDiTk8arL;RX?8QiP1;YryF&=R(!;t{RFS{*$NVrsj5)cG^|% za?3&%Vb|Nuz<%=GXsKJN#5*S)R|lhJ=RXs=Oc0B@pce8^;VrVn6&D%eASt`I1;?{; zQwa-x9-PY`EG5|lRtSh04KSv1B}2(__Ty53=@r#EX2N9MN&VKmFfNU!?`sN z2E-p8c=LZ>0^{);IDSzxx_z-xM)CzSEHU`Wvy$@h$~JB_S;MAgF+9zl#d(Qrc`zs@ zi}|$gV(&fQK@0RtzCmlAz-t=Jwvhf|uaGk>)mII_cDr~i zwXM*HI9xwrC}i zvPtNN2;fH1CIXscV!bRPkjQE0?SI$X_^+287* z-A)P?Nir}k@+1n~l7qwdi~?PlOr_(+zZDmuXYlRsXEzC(ulh{fGbeMfVc_I3C#ieV z*qOYZzDSN(f$KW4X=!~|ml8uTDiIeaM1};n)_P;qP40`Aw)R#CS7YaC48&WFTHa{) zFcBe0aT@`c6@2*S7tA7#y14EK{x9*tO0LdJ@z>mKkmc8+c|rM?z;^vy%3D*P^<&&y zuOIl^BXUuW<~G4n6iMG@*llZJzg{HH&;EzVkYfeb?imd>E3Ko_!9XDjY`n(q=0B4` zL7tU+(;`X6bjB#TFJBM0K1fCKQD5B=B%##{l07e$1V_6X{rxVf$0R&OwApZ90QvXq z2izs)GL;Bzt+aBe=a%U8th1hmI5QHuhzJ_eNa|fez%hbsx#D&oGEB|*8Zk2NJMgqA zqQCrq=P!-FU#N(w7J`YDV!kt(m(XE$z9$y_5*V;-)j({|yj%LVbS-$imZaB& zeMw_s*9EL42`sj~#?gbm8Ui`myFhVl^Sl+C`Q7{ZV_V>{vX>B^(RlG@SK_TNcH@oH zanM+Bf*}E_iRT#d+Y(#qzUnz_jIYy2jI!Ujm0E5NtBq4w;?HhPL>_%C7Mxsw#ps_b zhWc(pufGWuV&l89+3snWPLw9SqbQDb^trRhi^<_gxF_q2_0A2kFGn&>*B{`x?MuLAPFniFNo?o*F`V5+IspqEK(_9HJZE7;b4PpRSds;aGXDszZU!{IBBhi-PZ z#)Ow$t~Nev#byzIBF_g9IJ(h60S4-@l*x5mB_a~3)3HUBh*$U>Hz8_SH!K#$-MeaX z7&$aW@qf|~<@up@y`}8aH5^yf@d~8K-0(@zqW(N0LtEV|d<0qY}A*LU%JWyBt zUMnBeR4XG4P#?iVJ|ATV@D#m>yYCb4NG<50kR$Dh$n6(B6SQ&4p3F%kR;N7-8_-aq z=V}Vdw33*>uqo6YtAg+A9IiS>74d^dZfmFhvkhfA!}zJMq`<^h;HFj~@1&c6W$%Ab zgtOw)7drsxmlzwI3$iW;y2Y` zOlg$3GC9!`CgQe#J8MdIbqYG+3qn(nW|3rO!s>N=O_o~IEc3i?igIniMm!p^swJDzF*7=A|tN#Z4c`>I#9 zm63fUw+&5^0%LeoLn#z$FUMN#8)mA9g29RnQ%6~6xR!Y4#{j>wpY0!8JXq;T_Kpux zR1lRqBRDNRFlnfsBk}w$a?C{reze-=ylHI1i~7J-`*%#@HzLAca@;e^5XjC&-r-3? z-ug(y_7YR8LB}xvZ?vzUejjdXJwLg3rW*64&h`D)}G5&@#zr*XzMe`q4at2~1_r3zxV;F9`?|ukjLPAchZv`+nllIM#f~QJ7i_(@>w;NOSLg(2esGP@d``wQ# z7J0rGO}L>Z(S=egqZ~D0NIXnddY_?X z2YFE)om9%T^X;|GqEn6N$qNz30#>oru)e^rN{64n z4yIOx#ZP>I+oCq)DoZQ6Y)U^4KiDX+tFZ2R=m1*%pVIb8VrF0b?l(iyujCU}=ae59= zqHp$mA>sijEz)6R^6NHDCGZR~{@tcZnT=gL&z*hgiT`?|BrRVBo?VYU#)*I8JjD6a zRF%0t61DCfTDKZKcKIg9I$4g?4{ZQJ9L6UY^|v8@(%CpR!w*t1&q5AdWqCz8xUxP!zjWku;6Wn3l<%{bG5Oj9RmV11j zrIX`W8mqgA)z7tfpG+H*`xwfr`!h(=C5MXFJ&xg+3R%Xb}3gY>6zq4zb|LyL((xJGqx@DB37P1`2`r!31 z_ntfU4*PE4n{1*84KRjnnyy@xe*Pm?(l$EvF(5@_AAQBi^3Bqr&BT`J_Hi4l^5pE1 ztaQk*Za?|=nd5TYc#@*-`)x9i&uIrIXL2=Hqr7FHrp_B7U-6R87y~DC+`CWGM3nox zf3zq)r6jQX1{jW0{3u{0S(RV!TOnA+R3E)ItC=o zf^YQYd_I0ZF6!`GXG-V$q3Qwj7jQB1OlnVAk%ky@ece5!7cKbFilK{#+$bL+^-=( zj~~1y@f2!@Mo^Bed)eM|IW!k z$%?b@v?iJ8rrx>z$2&5BY^EONTFhUY5H`vh2OX_GVqG^KHOb<`z=RFtoshUEN_#4S z2Zjrig8-2r8OidKa9V?=d*%Mh=cwKh?WMCH2^sstLG)iCT_ zwz=u{dRG#e`sEm2>s3#X-*wm|y-V6n3mYmXy~OHqWn>(YbNTP6ip3ANUH0i-jH}|O z0&|@HL9R>s*?#OIVAs;@Pb^eZkJt~}9lk#K|wWSg&G zGgd7&&BXd+x9bFz+XbUk4YtU-uXImul%+fS+x*ME_7Q)gF(F2ASg6|CPn?Kp{YRWS z4p-F0fXd4k4C-A(W|Xz}a15JWYJErqV!btqY90-`NDu^d{;`aHDkwpnOQY7*9D@>P z2#785y|12k{gafNCxuaqYR|Kzr{b3l=mmwAuA6COYFG69m+)sxT3of>T%s{kVqFb4 z=Glo=)wdz9-VUQUHd{*1()N68cIn;4R_N8h%a3mnZj~&)NU}~6tO^(po5?NQJh1q! zjMa11iYZ3;YCmrjRECTa*YUC(@7AB`(Au9#KGPHXT&|BK&+qzw652v14x*lpH5j4>h524uP&r4Ug98vasHOYu0Z6bF!i?$}khcWiPlpnO2F|#k?lHRyC z&G^xrXXOHgu-qHLBCYA%&L^!r=cpop;`I1;ZqF+nx~e0P$1n(b`VnsM=4qEDh`pY$ zs`|}wyTH$RvvTzXGX%GNc`1G_4r?sjjSGQR5K*C@I6jt+gU*Qc&1fYHvC|_q-{T%d z?oCjUf<}Fh{x-}^Gs)%V@t#7>yta9+R{zf@nu#JzK{6S=?khvXzyrfp@}TlPV+y|0 zFKr!v+8$dcO%vgz$gc@|m$l#n4W#8qsI(?K=XH^+&1`LE9qch2mcq-~AJ~M9u5FJy zTn5TV|49ys&GZ+#o&-GBe>ObOXO($8bl$g`eY5=w`e(QM{K^r}D5_bls{Uup_|g4x z@=RaSskt}#40U#(ia0%2*xT2vCR$o9bZJ@R;Xzp8<0t0gA(ut|q<)p>*@V9`Bd5l% zKE7`$D3&8zjcLbNgoctt6B03odY?Ev3|AS=@d+dl1jQ{vw)VFpTZ?weW(<|{f0Ek_ z$b(zNAob#HK99k;6-}QEwnBn1+4I0VOoM5_b>K)SS zFhJ1Ly5VuA%~{rVA7e#pb;WVL`TTbcJp@3kx%b7Y!B@yb_%Ze7hW>_K&&58ayJ3F( zc`B^?xL48DR`=bzBMFhHktO`$sV+E40}`y+jP-18!fFA+$NSPjaG zH$POpqY|iC-F4{~5lLu4*|pzU;~p}Om#Amyro~{C4*5osc+nVR#1?9;*WiP1log`7 zw*FG!`WdEC7J?$`Sn`xj>V7c3Cqidn&HM{)hIR#cA6t>;|-c@M7=+?mVUJzcl-G@LLG8Pg=y-Ka#ezc83 zwHP6lskE2X6F*MutYYJ@{v5RSC#>2~lT*n+F7l7^mN=zi6RPc$E%N)hwfL4~=rC@|P@ zT}4o{rKkFcd^xCMLjoR)fD7(>FvL$JbB21YV2ULgrye;Oh5g!<%;)*QR;TAb@okAoW7%m>G#KOWq6_pPq|qwrgtEUWnd<5t^8-9v_R+UDv(6pi z**6$q=Uh0dzh9f=H^lHeqU~x%tl1i3sM^cAj>rSx?EL*<0Mz~R+hmT`vv5O@B7U#x@j0`mhELO3ySqDktHCQo3a#{F;J7d9RPZP|EC35 zH{*)nRDY!~4oc@gg@{8V>@_n=Xt`FDY&+&d-;hA=ueuh)^}J`x|4^{#rJ8Jic+`qF zzU{^5>G_rtTzR2e>6zsGx#$qqz!-$mKZf@8e zA#*f1(=oFw7ms1WK)t?X@m59=>FEIeJXN%5IZKN63v%PHg}%RaagF%rNb-q0qN8aE z6qyDsXEQGsW&Dn?#zC>6cd~J;Z%!g)kVJPqs%tB?>##Cw%_IE=MgtN8% zmLM5VrqHF;xHUDe@zD$&o>+_DJrufOzly^~OKe~9oh~j*52s&zn8fIp@n>$aotOSn zJ;{p3$=DVse1PB1>Q4NuqsQmL^BOgTEnM*%*6zTBg+F>K$~$HvmO{*mt=YZ_IX`*NQLvzl za-l^Uh2Y$w;r2x7rV(Uf7CU{44y|&2AktSnrY4kAwA8aPIHFmWQqsUVX;|Ax6N9J| z$j961Hzf9NxG^E$f99tKHQ0>*?d#J#em_fP)nSkYz_SvCa7`GWyAL4{=Z!USh`KQ|vH-ps{$V>6qxJ$5VhqKi3@)NhLN#v*8>^Ec-FmQT6 zT?@Z+f_HycOX<}}^4|FVJs9#0e;KjPARiA16=L`I3bO7nCpi9EnXy0a)LZyte?0TX z_hCvC(RJisby>7QI{gZ`H>e`ey)-i>q0@0u{Ev7iSC0sgG4f+J-zIamEXobcANgEMEk)ZknAM(7I|p2vaPZYUg!` zBP4+VT{F8GB933=C|1!l^%pMRWVh#Vi(H+(HfhXdeP&67gp+`VK~4Zdj2*u9@Q1Wm zsOvE+I9Kh+Fc<#XNgf@X`NE*}fCuL8m4|wwdS7o$oP_TTv%quZ#u?)CG@|3{0*k)l z6YwT&0kB8&;(0jNM64%&CVSvzpK zPTgQjubU&ljy+A|d&zLy_7EXQ?vGrT!|pE;W{2ioS<4uUF%HqcC)ceL&2y9&{FY*F z)3kH48+M4^73l7pB>1CdoHWa_l1acTIq%I|^<+~1Q8R1%XJk+c;uf|VBoUNm#BSO$ z8~NOi63qnt#PbDZeeZ!Ul!mKZ`p+7Aj4~l`I;y>}$9G|tV{1(g*2|oXQM44$ljX8E+GD=~md@5HjGefgf zQV)ptx={cUA5!F~yj)7(Zzz@!)b{UX_sXr4{EXNKP2cvA^6)heJoPNg@jsrb1ZzwL zib?DHy5gH5;YF=4i_IxmY`0KaXZ=Pv|W*c$N=EoTUn4)CaXPiy8IUSq98OHOe+E*a{ zuIp}OmRfz~UDK<9xoOi0Mw^-meE%w()svq;ViVl^lp42E*c;!_KHc1f;q}g3=m=uC z(tC5rw5{<4OmbxJDfX_h{p_1d{F|J`PSg-$z}vA1QCAo>t_F=Eq>6 zhlEauTfa50RObi<6b#^OO_s@@Xp8>gE6TCjFE6qf3t6D9YsvsJT1XaJEW*Vw&ke3? zpLj_&&oQ3y)wV=|J4>^YZNvDO6YpPX72H;hUt3&5DHXS@83M$QA$l9!`V?QsMPKA>CP40(&=wiwd^eD+Qjmc!Q$4tWWkBUv()ryh-Zn0_ zG?fGo^Y;;ab>4<5vE@=|oLJPrGTT*}8RNpWn!r?Xv@q~RR`&)ANnhxjluA1<;357l}MM>ZulzhF_j?Z3xcJ($$8v{0dt*_-=^ z?W@|wXCL6yO1;%{+ke1I{xR8XzUVt7@Z!4iu;N(%F#k=m{aiu*d)7hXJnbL$yr*@~ z`5`BlyhXDrrTbq25a2o|_U-rS5s1mUJ@KqeTl$@h%UN%HHyjLS;c&dT5bHaE~4 zMJrv&_lFRiEf*c`Y~z9S-}BaI&*b#Clml+?>b854gYO|NFefk zwxiz4{6V_jk{2WjYxnL)W_q!XdK^7GH6HK_TZE}quK?zh7{NCEtNfe3R~Lal$gg}rqH;hUf=opv@zB`!F9hJOmF0I$ zj5;nMc&BK>L`D#IWm7fHBvV_>QFXoGVmTn#tSj$KwQc5QOfW1<@*$vLx9@RshILD^ zwfzWM_eRM<5imB{V@6rYeiWuakwoDS#FAc*=L{QMv^Olh4}7U|$ZImLwu)yPTQ$xgpBctsUA zq=^@FZqGwq5Eim;X<&<9vr?_Nkg*pp<;dTQ8(%vGuXv*};w^Fj8VnQAV0OJAu`!$O zGwKKv|5r9q>Pj6tl^Hg3%f>j6gz*xA2=(vG^xQG`W20G7dRk|{Ws=ZOEFhqg+&d~D z(18uoR6SzwEI;CK{Q5O+2o9)}*J{XC(iLfREVhO+uKB}nG(`nBHX5l)HmsR|TSe_J zYlNR@G>R~(+;6c#t~zmx2_yZg5-)im7PXdU_~WmAz-eESpl|4mCpHYfc8u>aI3*Jh zI0ZH~0UNXpC6(%Ve1hTUpSnPujMDhnSxU?sns^#>^#1(_O$0!xK;lYxzp^TbJ-u|t zMs5!iyGF#UHZ>KXR!uA`h<|c^p@iZZ z-z0%E9-K@%&jBiMz&El8)Ysbt;iWhdCnB@IYVjkVC~(JS&kQS=jKP9__*KV3gZVQA zpvf7Y6kR8}_vb|}yUcBy5*FNL2}oAjJ(lez<~&cbOHA%Ezx&HZrr)@!Td^@WhZ`V- z<8hXL;H1TA{7Ei%FWPS?gk^h7Kgr}XY@p9bqXIz+-~_JQw^Cz zo`p6tzik%4cZxT3X~@LZcvol{Vr^X{2y|{Qlb_H0mZ{s}ar@ZZ(bQ^!2v@p>v~v=) z?o-Leultccz!yh&YoQPh2)hRVK(>o@BNL(!9XGW@5lmI6lNBOg+5 z7GIJ7Wp*~vM4EhIz!Fl|K87q!b(~>3a)*) z3VYkubCcj&!H!r(PFw#NPm-5aPDmLK2d2R8x+aT;zkOad9~mwzrqvs1rHO$iuNToG zaZ*(<#!7PbTmG}92HacNbBob43q6j3oEsBZ=F7Kea}$K!BQq#`QV1@t)8k8T8vzMx zHadVvF?rdoxQ4LKC9U=DNuNtU>a%L2!|2Wvs#S3#hQ*S(HMZvuBOTxHGMBX{9QMcR zbb|XHVze}|0>Ls~j8XyeU9^=^pL?5t)8Aaun&cl-1eLbR>3H}8*Gpq_SZZr1^VQDc z-mx_t3zSW~BZUpdSq75izT%kuP`9Cnv`+<>nf*%uS8vyHgbYwH!NybnlarnJI%7kLnui zH1bGSH2cbO8R*^!3* zbZ0I7n+c63MU48(f2+FZoTY1>d)EHd=;PQhCNgo=)?y#}THB_QcT%Ek4vx=<3Cl@F z1{<_O?Ml0eqD|MYy z#<16Hw}^R&JlYXG?N#nEe6z|+^U`Ppvg*8XF;5q4Al4Pg^O^OL1o70Cw1 z?E^CG%7ALU)JH+I5SM9Nw;1>$3CSJz3w8EUvp4SFzHWI)P9|$#!D6Q4IU$O?M0&Q$KwuUVg`D}}_Q;<(G>2&EA)sR{hP8QI(QdzOTl%&BE zt9FzTJ-y*IT4I9^af+Ah{&CEc7qL^x^yiDGa39wn^ncO#=ClAvM$!DzTt9i?9e{nP z`rsW!4K^W}F59=`-;RnK(4H65b?Ffm^-coq1;Bv*C`Ss2CS`rNP8@`?aBNVype1Zw z8=k$sHT?6_&SIB|iyjOA?)p#J6}09s?S%~RC|uH^uRU##8)`jB~dj60)g*)a*V|9UQ)5qRL79pBLJ(u(r^6yCp|4J%e#(`AY+kF zLw5De1T@Y|EVdmZ=4cS?N|8<*37gXcV&CgupWBPnGdodPV!pi&Y&$AKH#+mqHuwffuIjIG3?_tKOGE+g)yK9lE|^dAw(h* zznuJYbNbQ5ws!R>Ch=Wo6)1`B5k=qXBqyS z6AAXI9(KRz7CPq9XZ37p<*5wUe4Tz}?Z%1|GPR1Z+BA$vv1w=XYCpob{ZHHbyijnm z1|1#ej6oFO==1oXkIbIV+{1;=#~*HW7;JmlSjAL%O$se`MknO)HUxKDPRIUdFBhr< zd@C9OiJ$G8g}sy_ex|C&`pF_cy$1R~aKVv!yQ~*%g924KM)iAT?^>RIp-`N`gI<*m zSn+>!lMVe@?=@BpNMj5gaU7g6&4FJZ4x27b5eISf6(!4L+mGlAk#l@F=j>04YTM)~0Spm}m9_Af0AXDM3?OV`;)OY=f_=(*{=bf;C?) z)b+Hp>w_3s#pupViICKfmZoD#-v1~nn?ReIXnbp}Eh?WqS6{jbQckDqr2t8j%{nSs zDZ4K~T~>EjB;JFO{di<@y}(qbr<_YpAOur1#^hoi$oab&!|h1Y8g)>*%mNBN2^lwr zl6gW77x#lqP4fIZ!e4EIk(M0$JGeu|a{WJ2w!!66s#7FCQXEqGu~9G>)YcEvkD-Ol z6s&$9@r&&$v~Mq}LzEW7zY(D{Sz*;%X_@OxICS*_rnL+X zi;5hs&XJnUep2}RUJ}$QvDq65NYy@iigcanUi?x8k|;;Q+Zkg}!bAhtp#7eG16a<& z-J@2r{UjiV?}*&P8seB+A=R%$-3jh94hT_4J(|#_Dk5sg9IV$M#9^lHfD6=yvd_qt zzirqiMB4B4FU3?Z_AN4$i~J#@h%wX~*1dG$<}gS2(h}UEU;lkB+q_`W4(0zOF&p>i z_V;5{T0}P7{v|GyNy8pUzMw$!KveIeFH9O;=R)Xv0&PC4V&1>uBk$)fgEn#Wan&#LTXQk#WQ>2sHcwD5f(!$KsePU=%SP-%- zZ51X=OKfx4zknW(l7gZQwO*u{x;N2S;Z=LPsyV-tb`nLd@i+b%71@>w)q_WpkvtHR*LUg59cjcKZ4OK~jgiuxwvz!E#G{OrNyZ_Yc)I;fVW0^v zDs#ibCKOltuNyxAn06Qs&EAC*VE=T*>g4|m2kFm4=rGJS_K6|jP*u*Rf=ur!;syiig^jcdB%4Hs0pWM{D%e; zY{H@`Fd#IR%N9ei{FYEyp(D4ZyEI3drH%2E5NNGKwF*GtA`3(u!eqTHb+(`z0jR(v z6;)uWJ!b)ho1kvzC?I9|A_F%Vw(irA%lae=`cd+7B_8A0vor$RR{w4d9cgo@x&6EYY3?Cx*$1tds zi2_xu!Q0!>cVsu_L`cGKsE$z$2FhQ7x-6fmxC#ffG4h4)0L2(KY}}H}`3*jcc6fn( zr6)#OVLP94dI`KPera(iN*b!7w#g!2X|bVMA=U4MS?#&-q{q+1dex5Ysn!IAH9Vg4 zhdkwLEjJgMrEBoaTeF6hPVDW~CW4r;%;JXKO-m*|aIr%eBbx|27eSuBX8~8AUMxYN9CO0Yai0BVKlKoSNftahQAbITm z9?T4AnVr7BNYXqu6wp#bAL6AR$oZljnrNp!8skrtHk@GMeGf#P(ShrT$1RX4y{cEE zi>pjGyiCG)bfJkiV-Z}i5@G@pmK)wD{{g+=^Hr7%HS%B|!5@Pa=xF7P|Npt(gW5pF z(*{5N!$@>Z>K!rn+t-|$i=a(6e`9=KTTibEX_3KU=mf9k-;m&q<0G0XvLWLuHHPia zhmYV4*_$tJWamV(NyR=6a=RG+44Uodq z!vqZ}WW&pfIcRX|3bzCPYVyXS3nI^5PT%s?VYu6^|NQ_<3dGPX&y@MKq(w$UX{;L2 zx-B@=v=n(Q!f+9)eQ~FQ4eRHfV^VYjCQValPp#(oZSbHt_-G5{yz@M6ko8_{{kxuhA%9WO6am$iNBOv; zY|p49A1X3|<>|+;+QuY^3i@fXqPw1Y{9aGSIuOh7VZ>to@)6&^YzJ-N&VBE$h4|WM z=MlYzO7ILPQvo896~^TuxLR*_&2{c!CcRV2FB-+NL>f~m%P??bT|U4#Knv`C4WPz& zBjdO@%Gp^2OAqWp8?mZ!Zbn&isKuUz4T--ttuO)));{%F!b-75{S3^yvLmZcKr!@jp5<@mrNoRHazqmg`ee&xPMmAD{Lpd;Av_ zX`TCSle1RqSmoY}0y#>=L8Cc9+-O_LT@xLtLAzyY6pq97?ka>LJwVXmbZzl>%=dVk z!myN0#sdbo*Qa{&m_rwhvJl;DM1DfCT*+!CLqsvseT`HoG2gdBOfjM@CM)SghkXFRL(_WWOgTeAugr zlGoI>^yFlO@v@dCu(Y{dmab@vC?1xgK=EQtvF94@X!?LVJ@$#OcV<7((F#}?0nW46 z`0*oA{Q&hnrnF`o=u!gpNt$qw$j)a{4FmY0PI?zLWwdDZJB{7Ysh6s6=&wz@_4@3h z2ycJhg3IUJN*bTQcfT3M<1n3EFh75e$UGN4-m=n^h+61J3TeEITXYy)h$oJ?PK1a_ zp#p2KB?dtD(3vQu`>R8}4)kVRPme9n?^jpzg5T$x)LG^{emCwdu?~14v;F9N^fPa% zp~5#PpvZiTx!&z#tENM;oI<`uiEdBYLBmzUVAadEk50nznksImnce>WQDxnLLA)bpRSPmKjrOc`fZFT9y5kLQ=_+Y;C@V`wE%fO4ZJLE%U?6V_ZuPzlz~c??6Ylz^XLLr%31N zsg%sA#!Z{Y^|p33H%nj+F2jM`vz@Cqps~>9tpH+ue-|tM>V|XdXHo?>g@O*z%dx6R zO?cUW(NLvNgt6`8b3z42>UsAK*D1~#|I^%8zg77?(H|Ecfh z3NI%qms(O#?nWqM427wNy8N3?%FI>_iZynzNzZ2pGst7g4t{CXH&)I^RomZJYh8a@ zD-g?jFO^BHt|j{%Q55BUQzY1VOvO*C=cTy&-B$Kb-+5DbuWt2^IC>LS4K_ z|4806t%S+fV24Q@UjJlj(QgQ%Xr#>@EsgQUhq5fBDzZysof5lL%jBJ^mWNRF6D@0q zk~mg)qmBw=TkrgNe!i{T06t2teLwRX%f7v#H6aM3 zC{q3|gj4G2CNFC=s&SddYbyAEuLJtCN&hu3ElWljo9d?*0P+&+x4pV#-H|%7aIPzn+Q>qvT*e^>Zk)NV2WIhy!L#?X)2^S&w8KPRtrD{v!{ z45nR0xl2mk7mwe%hm!-Lvlcfl%Q^`S;>m?Y9363$bI&I} z`ZHOe#$sEAyk&`tEtQMWf15FRN!_Y-OlMGsZ`W52<@-y@x^9Mo?JX6n1nvFjnWL`a z;L2?~UQ;|1|Bf!qsUk46h!A@rIm$^SUMeEOnTWMZl+h#_^`upM6R7^~TH?HF-&?+k z&~M>7N=-S4ojo_(TA62SO#P2gBBN4>mWPg&Q@fe=NRN$zXpS=j{`0ueGsWtmZr(Z1 z>*$hgya~Yoro3nMd;YmJgRK40(3aDD=rx$DvS9E+mE6pLJg(JRWG91Y;Wax%8onpL zv*5<8L94LyO>3(qc0h|*TM{?4s{C4($E=2DeZ*rm&qAJ z*nD7(F1(1^L;W^eojxbl5KhG)AHz;XBaW4Nbe+E^tUXC(j2iDB zuo>iyh>jVV<0Yn>wlXq>%REHs-8j_oStc*Og%%uGir{BX;Vo^W93IOYVK7`G2;ZP! z2lMnx!?X*Dpr%>;wKSgJOS(?)O1jnqfbA-r{n;c6@}&E>&hVV`(`@1wWp|Hon?Dg+ zIQS5#m6nE^o&;H*`=bCniD~-VzKPalYpW7MM|WkWUH5B!zPSdd$MqFG@~-sI&k4s9?-2+T41G)QZ2vHfLRxy=4sOaT0=!F{*&W;%DqD9o&cDztvhP{G8k2998 z-1g9d_JT zJ=eG&9W_)LsGqB;TRNSs+Qyjtk2&~ED9Wx6!yxWc;vDxMs^7Qn_XY*v4S$H_j4ly6 za;D3yj9JZWBaHh>KJ@;S{!&&iQjlwkC-=;oY04MBr3!cGb(Ugdh*TG}kDepOH3l^k z73(7k>7ulFu{nJ~cP@eE^Ks4-1N|URrb+gZj1AR(9<_}VOgHMI- z3~}W)!WsV|c*J4qJ>y=Qa^64$Ytd{UCTBTghqC)uXqqXiLmYbCoBwi_wi1L-nX`!&j=|Y)Z?nar zuWG6{#(Q|6fBmv-&qU~JEOV-6plF+sQ(H~L$^*a3mN+flCL|8-KC+0e5C8S-_n=yf zjxbOUFYCJh+wUq4f_YDuHUF)Ha46?$wDjXYQ_5SV=qKCgC#C3MzJs3_j>M;kyi%T1 zDpj@cJUgC-UTsd+VKWvibQcJM2lep}h|Q=)&Dz|6uKtGKQ@88gAgy;&Kf?-J|3m-j z5)Sr1M+Mi+tj2;dLQ2_zWVMYFO4(w@b&wDaHLb zUS5WPYGFOKMb{+h)S6OFQJ~y{t-RfixD|3Z;y|?IKA5(sZG$(}?_hcl`}XF~CMh!g z8^ObNY4e^|t+g+*nTqOarK^?YW(c@v77S~UUW6aYFYX`GUbP0@R0E#G%^6$LdhATs z&Mw>y`0PTA{(Pg;plW(i@Y%0**zYE^cLmj|4$nq=JPdR;BSmB)7iu%#6-|5^QNOxU zx-yxCacHc%eHOvMSC>(!*N-Tph7GZ8J=;vs6YP)QlfNB$De{7x;mzs%>Wcu0G`Ekm z4&;4rSHq+K6NL`;bR8(jH7?>Rns^LkH<60`3J2kiaKQ(6y5}Wy&yT7WjT@oAg;7Ba z%U0aNoBI0C5%Z2)+}T`i=3NTSQDrMW$R1Z-w)>rTRJ{*2H$d8w|M3$L@H+c0C7kFv#q8}X(8NX7IWs$+Fk8i-#c>4qErUo{Et z?Ns%)s)KLCzprN6yzVmw#3#99g2(S1=l>JcXKM}4wjxi}Hr!HJjqmkG13{nz+t{BU z=Dfx+et>D}hba+%-@G@@bQxmXeo=5#`OElxvo5-H7bbbhcpZ2{*x)k_p6y4H)J-aa zSL{)_2>(MzC7b%yeX=%E&*j{N21mhAB7eg+WKhM`{jaoA0^$ ze*ns5{Tff3ig9qQ^(+0HGJfNnm=iYzW*oCvC043v#v5zRU&>>-z)zj9c%R7`{}3V)QYbmH=TSZp3C(F z1&6;P0S*|22)~{9*+$s9dY;&+X?3mI*WHa9pLdv!RV}7QnJixsdue@3(`vW2^4XkC z$f4aZ=3{tAlnAToe&&z8GW)N5(DtOam`za3@O=)>6zK{l0svz&&W_RiHkxccVR^Q7~FD3Z|yt@=3tXqmvyvRhRxiOUNtOC7f|*0e`E=P{}I-i?{v3w`5YX`7d|*yN-ir z@ltOM<`3#jmM15o!*gz)Ea2)V?~9hf*|A-@Uxs(LQs+U>e-Ld_CNSdJz8M_sHhyVD z>vPY`tnt0-YfuPx6xiY)^7kTue5?hxG_6^+UlZOwI?Lc?#jUD_0cp6*BvCKRepK9T z$ySb-+768;14uIxm=%tBvA_>=(b=isRkWu)ZQ`y1jj`=3zrP># zm}~`{*t}}%1Rwg_&9v$C^vJBLtGY1iZj-cgcD(A~FGEvVKKMWHPP(y=@(_qbYR|yK z)z2Yn&C2ym=jr9+mkn<&aa|iZ@;8c5ec}nS2g(VbHscoMS;};qoPAoef*xiTQi6C|urH9L*w6h2-O~ICfHzALM#k08?7%ZpG6^>xVJ3gBKw6&HAaH#dC}!6gU%&N!z%ga@+FWK`boHapw(%Mb;Pv0YAs>3_Bj3sY6xggK?!s(UF@dRV_kt%^EiR-TKTIo~C z#_J4d&T?lqGtVOr%MN{v@wtKrGyJ4lNeo~2PYwO^TwS;eiUdHKcYi<-$5F0NBKsVf z?I)S)A6@ev>X?Qt2y|`CR{26hSBhS&zHA`gm%94TT>`GBsO#BYE*$s9XCj3Iv&=Tl zv9!gAqTmWGCzRB#L5%bS(_;Kro$>5rS8NeE=%&5pbL|ZS5g&Zw!H`V@uopb|Rd+2^ zr08f_xR^4+5N1`j6K?9;C&yLIRQboIA!U#cnjy}Y(V>2{_sxsE>~OIi0fT__lA$=N zev;Helnm`@jvPo28v@UQWTCS!;A?D?0rPn_Ds3B2FqzVVmQBZ_8G`;WN9@*a;Xb@Q zPz-zvK+OoQ{`{R|hr`Cj^;Di6`hq8a^E3wg47|IH4zb?Myv2&NW`!BsAx2msQE~?iS=pXUm}d@7I>7% zXG&IK{cpd4?OnNl@$%-2!L1djTcmLP`^i*cs!a;x;hIw~5-V3ThW}_yhoz$kRyEiw zb?JcJQ23I#g5KibMhdH?mP{gELbH~adghy`3r=P#R#S#AUMRPOrJLO6!L|U~t0M{! zL`QZshhS%m8W8*A`pTk_$F2tOv<)wZ}CWDZSBMgp88vC5ST;G_fUf)cO_}=4=>GZX~XLK+lA!(idB~9osA` ztj(c-&>-nrH}zvKsW>jVVa_09Dhea$=(!llWV zRFq{We{){l-L~)fdPyCXx)Bv37IaKk?yP(Tm#?sW>iL{#jZxzTJp-ZEq-RC$uS%!fj>1#YXZ3B%gwsp^OWtV58Rs*gI_W+n zbQQ`70f~vn@-;QGVZ2X*uJksRa!PLJ+hmfl3P1#moV!ON#cj;9OzXIgbB{b%h_4%^ zEIiphVmq}sFr&aEj~J&{Wn!3~;6xdy;*-zi65>?Kkr7BSY=5Tv{X|+@m8_7E6@IQAIGs`k&oqn{qFYdIx`Z@2Y?LFw9xW6sEb}3UX zTgs-MLJbh}Gb4OWWY)K;O#k|V!Grs^r zlHiL!JAGBlya5IrPgsN^_2k_3;GlAY0GX;T|F5&IoCa}MIakCiA}L>aZ2e|gdsOht znMz9lb|~Ce4*d3-?f=I8bG0833Iq<2WxXZBl^W0RblypTs(+YRDjGEvDwE~ny5jlT z^z1z>VEq13gx=B>i~VbBxTnPEPqTZQPU9;lAyf$AEyMKUy>oeA2`u6jQS0i7UYwmp zE~cKFNHI0;!412}CTFb}DIboY*xT+^IN4JfxiUHyQF&rf^3mRx6&dTH9IiaN7y;vw zVLA_+@kEPFXx8bE7Gf!Bf?k6N?o0Q8n<4wE_UL0pGsx1MnSW3$GworU zyGKiEc1Kf*h}elc&$oGThes(TkJ*L_2ElX2s&atl|9X*Dnz$_zdb)gtmHBWW#pqG{ z+Nr;|9(AQ8CkBXiKPt*GO0DzMnu5*kZw9}Mdao*-cJ;p#vU)oHf@bo}Eh!dhxf_2m z^gul~*GAj*Fp!icOPbL|d%n8$73eGcdt*|t;|avewY{d!=ySS&4(9sU%E1YG8x%#T%;Z&khxFVWf}Uj^qWr z=&)?bB4dN~+*O8HjtpqeEu6CGWDL<&N#2n-iFiLOBSYVdtyI1N{AMt?y3JiyD<03O z6TUR+B2ah@XhNe{SRIZ_K*yD7*L!OEpNscg=+*u)Gv*15rIUf^=MzF?lysFF$-#=m zHGFG8$S+_|ln)Y%1P`QSdZ{l$WyHJr)4SXIdr>|sIhN3Zz_u;c*tWvmyre<&k#f4R zsHd)jh_b>;E5h9K@7k{<&#fwf!xPUm{+PI%`K;32iJVKK1?xYX@KEqY1*VdCPeV9nse40`4hrA6x!c5hAPIu0daqgeH6yPl zPIu|@57SK(Ghj##OtdmX*&(rx;z&C+MYwk0)DGCCWSCeD?&l)BunbHwG6g> zXqu6cX10%@YT@bQXb_P|k_!5_9=?E`u5<(f##Si$KH;xG2-)7GSQeSXVFNX2wlT?G zPX_O@@lFW%lvo7C#PzXMfkgnda*kL?#QM`x{76->tK|`J+)7DSzzO_xM9&KAH0$i3 z?MEV*-jX;MCtph1{=i+wUii&iTv8GXjk5Mb> zm4dkdBxlGo0{Y(U-MH>f9inSkQ>eIe^h2UVSmZK^f$V=^MIK6tksin2Jm-d4(TDT! z`#ZKv3rXB{3&7uRH~l$)MBft?Wz)6bA0EHBh)k1iJQa^PcTxl@0=fa(X(sU-HHN5# zX?;WVkKx^@5UgqeF}vYEp3KSO|C4^?xjuab2@6cJ88?%;uigS4GP{g=k)QIB%VpQT zsz}cbDOP#5T$wH((gxejm1lM8&W1(!OImostRDU7x)aTa00u%DpOpDzH3i*=1qDzW z&_sT%ExO@BDR;3i{rbTJ=-9#Co-V=OGhdJqY4YF1g+iw=P@iE}wh>9Pdq=d;{YCux zCbWOfSRcc(2&2W7h2Z$vp`n{RgPtu61sQ{ydYsI$D&#;hiu$r2Oll|XI^~4zw1D|D zgwaVNE8|v1h`6Oax?lj4$YI_Ita6_#&ELS4)0z4a#s5+y8*ty-m^O+*E%=i+bScv} zYq}46#dAnx4aqu6X#kTgtshJf^M_W@_tw9GgZE{edTHBC{a3rGu^}=a!zbR2Ls!bD$v!35Slm&g;=aXFla9V) zg3p2fwD=4BIhS+dAmilwt3ZnDsqpJ!W1-N_{dhC8SsiQutVm$;_8p;pR@K$EH?H+q zKjXpf9W281mz}4G4&#hq-a(@`z@*1XLgLtm{8Dcr{!WoeJHV&#K;8hjKlq_k8#Ghs z(bSVs3Amf`07k~F(a6wztamx<93k#4GpqrlRKYJj1^H1RHi#$Y|5<{xtHM?J=sJ`o zph|lkh6&>4<cosx4Kkgy-%spH(-xi$iIv`3`KCj`E7)={l2hxWSb|=APV&d+ou> z*r2&>*%uTw6fmjts+;bIP>R}?3VE-~JxN^#AQ%=p$s2RAIx7=v9{B^C$n+)SIZ)w= z^aWrl_@UgA?|LY5&{^An_COkUO+KVnnXr?=;DaXbG@j;1d!>syV#W=UsUa^Q4)3BS z2h+Mj5Oq-l>O{dsD`BkpWkhJXV}H77Qo#-y4EV8t`!A?p&NW7amsAXJf=9p`U->%E zk9qigSot^KEt)yO{}{SIZw{7|xaEp=$iuF#84m9AwYn?REPr`NGwQuolBFenwrqi- zLV;q0b4Jvr0CW=!VWi^wB|tn#z~FW}QF3VRg90S+C29zJ6jRfuR(#oEpy)H@#P$i` zKI?<_bu*nrDWQfCaf>HulH9C8-->bpEg}lI9oJWWP+K&<-R@$zKJl;(oGqr0*nM{X z#>f$S$INB8%7zR{)$%58U5*Bd&DhRGN7yfA(>!htkzYN+4iRvT@@>2N{fveMT*Vz! z%y_UzEX;Y>Ad3QtTBk~OVn2*%Gn}Po-Xprw=Lj1vCra|XK+{K0Euk-YzJ3JA(nx)V zQ1wZazxxI{(V_QgCOSF5@;hOcjjHqZ;6aiYGzh<-TAI5E_ujgwjs8 z(TI?#F_xEZ`JN4eQkTq>za*Y|lFjS8ONTFRXM*kjxFAUQ(HHz&VLkS9;HdhSl_#ta z`&Z~wt%u*IdXX~ra{p*T844fyFr)15pp|%#{Z$1FdHpu%9_^&`vZ16?@}NUa?eG@;yJ%hT!mw<~{Eb6-AH850D5@`oS;9DQd}{y)Mf|1++zk8rEyo-MCBrWO|1)A)^j}oZ1tD)&t&p_$(Fj@Co^or*a%nQZa=K$-8H1BplU)Aj-B4FRbI3 z9FR>v+`2gGNPj;PXB6%N#C=F)Ivf9z?oJ5(^JS$eq6m2iNm1@36BF|@kV(N7B)nv5 z`CM_b2m+gW6H_7=1PFjwIYG?(g2gHCeUm1qdWv={H~rCN5Fi>)z}7=Vk*(VhUiK^A zquUwz0pMc$QkPV*#!gUD=%No6gud0~>9;q5Ns9Vd5$i;qSG3?2EH!^?Fr3ZZt)%?E zyrQ3pM_xq9%<$VqTY?4)PtECY;ynL;vFrJKkYzb7ABj0!{c?5*qBG89Um%lt?OpjwS8xfTus;0eZ5HOC1&p(p5Cq--hVv|WXMAYrW!!EQr@$^sM(>T?^-a-9<|i? z_w%-4p#^zlU=@I`EYW*kvV8k>$K%QO-^bkjCy1h9mZK8yaYt91FDIZzqg{yd>%hzE zx5f*&`XoYl!P*mh18-VFqriDK)aJ+Fc$nhxC18ae81JG)ki7$-(Sb@jDjCjR+dvZ!5BwiuZqt;{u z@2yDHfQH@-2ovtrj+3*NIst3slSLiPANx}SX4-*9(_jae2s>C~MmCo`6@&2iCb3vU zwe9_|(;k;@>ccN$qzDD%1b!R=KYOO(V=hyI9%|_mD{3Gvfc4D?+P5y3O`EAJ{!Qq2 zw#;C&20UkoP1i?N38xvImMc-w=!>HM$}zgo5-J2%r*$fo%OjU;&@GVo>r`NeKmx7k zYxJSA6F8tKff#2rsqzC&4@H>GHWd(0wOI*}OWW@%L4yYrEZ$uZ1+Q2G!y*nykoRZ? zJ&}cSz3Mn{w;Oyo)EW8aM2inJs(rLmUs1ZdtUt^!d=uL-(G7^8ZeoU9k>oKuq-_HBb3$;(JfquvUKZA>TY1IW+xU_$!<&AwSup>P0AUH;I}lJ&Zxfijk7C zdJCv#oW;Z!+<$?uRNzM>*nx9^5{MnnhPKqLo%kE3Kt-)vfcJJpy<9e(m{%8z7gj44 zn^CBM)h&LECNR(nRH6h*cCEW|(GV%9%`R~vcV?K_v<(RMYcHF7cL?pZ zcZO)uO|QwUOps<`9ShuhBzIu5Us@qJsruk|X7@EGq;Jld3=0Bk<%V#C+HmoQA<0u6 z0WUb(3t2Rq;XNd%z3S$LenemNsqAXCxw@QP#+H3f7~~23K{dS~v6UuOWygwoVf+sD z`xR6g2fvg738()BMn>u7l-sw_KczB4Di1(wMd;V*Me?(Nrj?8-5cnExHu#ht4j2S7 zgD_}VgbOi|%SQR-GE>RH7iwKr{nQb76hwO38Xkut9Sw3sx$?f6FVn+)u96oXMjZ@- z$Rl`09PNhC7I}Cx%c~IT%NgH6rkc>{`eR44NHsq=bE?ROU&$qi5N{LztWhA;p7 zm)KV@j(8t83wkZVcX107sK8)AAq!1Nbmv}yk41DUNz4m!kVRnbEQtn?)fxpDK`A88 zyv99_z$PLI)I}@su@3%#xqP*ai{y%Y5*E!%JA{t%@V)TPI||!9DJ&JIAxGr-4P?C# zP!sHC!U26vA$F^eqP?&D03gXyHd`4&`5CTJ^&-u1BZ}xxe@tO_or^Qim46as`24@a zc7CpS0ahgfS7WTy3$zdge9_S`475ZVA8&GzEv+|!Lt#=SW-!OAOc@eN4}>tol1YG7 z8+0Q(2I!I^OSGf8Z)&w7PGc~F!)x+b;-GXUC5Kt{XTMY?rEK?W;N6YL5q9&e3 zLO!V_vKB5N(LqItCdN0A!sw2x-vdn4d14`oM_KvW^C^IC=qRJ_2^e8%Xa^kxhWQ*! zfk@+)is>HiF#9($>qTUNg|xC)Fj57?B|JQ?6BG)xXA(3|l-Q_NJ* zkEvvd+MB=rY+mv+et?Zaf>O5AiS>5Sn<>}259}Iz} zUEcQubm%vL0kwSp#NCVIq{TZaf|vNswqPO*EVAIG1jpEMj#N{pTsAH^Eng|^#fVv--5VhG1#@_U^Tw+(e&jGGZpmg!|I&}@!bO? z8kOClYVz0p46dxEGPxHVAp&@r3DHQTGu(Oa`Ls`zEbAD$7A=u6`s(R;PnTEyjCt(n z^r=#g#G_0Rh|8ds0RQxC1R*;JhuD;MLTQ=;um9tVvVLAJo1xjd-Y~;pJTO5D8d`$g z%J7!PNNlbC^?H%+D-&6Of$7)`Oh7nKA)?c^r=?h@guW_2mD6iHr8!f5lsV;OM*}jm z?J32#{E@2%lJEZ;Lm%aVIM^A4C5!??4l^DAeg|5`D*sHT4CPCim~_~wnkWKM9Z>0( zwehUoZRu+(>bXH(qf8N)zA94j}v^Wn!-qBKi{D)7iamFsJKlY3BE{q||{wP(`govcKf7zAak1k~; z<1hd@9GrT`34IH+eWKzpU@=+bo|*^uGeJF~-YB41t7KlyBodTXj1T2Y7WbtOF|hBl zj(9M8lQic7Q6Z@XYrG_gC!vky*bFS@sIU>XEe&?qSSeXnJPRh1?VC;3T=^TbGtXe^ zy$IND=qKJ);;UH_D#TC)5|Ilxpi^?jlZ4}Tz$dhgXj`>1QmG=$L50Z*C~EcL%eXW& zZ&oQj^M@s{+qQuXXzoD!c&*jR=#r-C38XgZNiZf8XOTy-@-mIhF%+p9LdNS>3^Bz= z-&#^e(clJuR`(A}SVLN1X%wQa7X>xT2=rrP1~4;%4Nd>^m;dh$yexbms5LApf~y;R R0RkXISzcYP3Sk!Ve*h3m>^uMf literal 0 HcmV?d00001 diff --git a/docs/intro.md b/docs/intro.md index 9c34410f..bcfadb5e 100644 --- a/docs/intro.md +++ b/docs/intro.md @@ -1,6 +1,6 @@ # Sashimi - + From 06987d63bf8cf026bb03b34e09391861bd50097d Mon Sep 17 00:00:00 2001 From: fedem-p Date: Thu, 15 Apr 2021 08:14:17 +0000 Subject: [PATCH 34/43] link readme 2 --- docs/{timeline.rts => timeline.rst} | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) rename docs/{timeline.rts => timeline.rst} (68%) diff --git a/docs/timeline.rts b/docs/timeline.rst similarity index 68% rename from docs/timeline.rts rename to docs/timeline.rst index ee0c21d4..c27a295c 100644 --- a/docs/timeline.rts +++ b/docs/timeline.rst @@ -1,3 +1,4 @@ - +Readme +====== .. mdinclude:: ../../README.md \ No newline at end of file From ccff91a9ae4bfc575eb7a7f56d30e252d5deda87 Mon Sep 17 00:00:00 2001 From: fedem-p Date: Thu, 15 Apr 2021 08:16:17 +0000 Subject: [PATCH 35/43] test logo 2 --- docs/intro.md | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/docs/intro.md b/docs/intro.md index bcfadb5e..cd305cc5 100644 --- a/docs/intro.md +++ b/docs/intro.md @@ -1,7 +1,11 @@ # Sashimi - - + + ![tests](https://github.com/portugueslab/sashimi/workflows/tests/badge.svg?branch=master) From 72946bf25acedfaed914720939218aa3b9e1e746 Mon Sep 17 00:00:00 2001 From: fedem-p Date: Thu, 15 Apr 2021 08:19:09 +0000 Subject: [PATCH 36/43] link readme 3 --- docs/timeline.rst | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/docs/timeline.rst b/docs/timeline.rst index c27a295c..41ea626e 100644 --- a/docs/timeline.rst +++ b/docs/timeline.rst @@ -1,4 +1,17 @@ Readme ====== -.. mdinclude:: ../../README.md \ No newline at end of file +.. mdinclude:: ../../README.md +:end-line: 26 + + + + + +.. mdinclude:: ../README.md +:end-line: 26 + + + +.. mdinclude:: ../../../README.md +:end-line: 26 From e1fd538a46e8d7d58807e1d10efb90dbe6d72a00 Mon Sep 17 00:00:00 2001 From: fedem-p Date: Thu, 15 Apr 2021 08:36:13 +0000 Subject: [PATCH 37/43] test logo 3 --- docs/intro.md | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/docs/intro.md b/docs/intro.md index cd305cc5..ae3ea332 100644 --- a/docs/intro.md +++ b/docs/intro.md @@ -1,11 +1,6 @@ # Sashimi - - + ![tests](https://github.com/portugueslab/sashimi/workflows/tests/badge.svg?branch=master) From 03013b5ce1e6de5653f64aa4cafff543208842bc Mon Sep 17 00:00:00 2001 From: fedem-p Date: Thu, 15 Apr 2021 17:05:07 +0000 Subject: [PATCH 38/43] test logo 4 --- docs/intro.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/docs/intro.md b/docs/intro.md index ae3ea332..aa5f5f66 100644 --- a/docs/intro.md +++ b/docs/intro.md @@ -1,6 +1,12 @@ # Sashimi - + + + +![image](_static/main_icon.png) + + + ![tests](https://github.com/portugueslab/sashimi/workflows/tests/badge.svg?branch=master) From 4b5d92f66fd433c2e9713726593b80ea69684016 Mon Sep 17 00:00:00 2001 From: fedem-p Date: Thu, 15 Apr 2021 17:17:31 +0000 Subject: [PATCH 39/43] test logo 5 --- docs/intro.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/intro.md b/docs/intro.md index aa5f5f66..377a09ae 100644 --- a/docs/intro.md +++ b/docs/intro.md @@ -7,6 +7,7 @@ + ![tests](https://github.com/portugueslab/sashimi/workflows/tests/badge.svg?branch=master) From 9b5887f4db3c5819d06c845e8b2012dbc3982c8d Mon Sep 17 00:00:00 2001 From: fedem-p Date: Thu, 15 Apr 2021 17:23:44 +0000 Subject: [PATCH 40/43] test logo 6 --- README.md | 6 +----- docs/index.md | 7 +------ docs/intro.md | 7 ------- 3 files changed, 2 insertions(+), 18 deletions(-) diff --git a/README.md b/README.md index 505e75d0..7bb28821 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,6 @@ # Sashimi - + diff --git a/docs/index.md b/docs/index.md index 580d2a70..7ac4eba5 100644 --- a/docs/index.md +++ b/docs/index.md @@ -1,11 +1,6 @@ # Welcome to the Sashimi documentation! - + ![tests](https://github.com/portugueslab/sashimi/workflows/tests/badge.svg?branch=master) diff --git a/docs/intro.md b/docs/intro.md index 377a09ae..9bc78c60 100644 --- a/docs/intro.md +++ b/docs/intro.md @@ -1,12 +1,5 @@ # Sashimi - - - -![image](_static/main_icon.png) - - - From ad3f6544c0e0124da35767950f0b8fdd0c2d43b8 Mon Sep 17 00:00:00 2001 From: fedem-p Date: Thu, 15 Apr 2021 17:29:41 +0000 Subject: [PATCH 41/43] restyle docs --- docs/index.md | 75 ++--------------------------------------------- docs/intro.md | 32 ++++---------------- docs/timeline.md | 1 + docs/timeline.rst | 17 ----------- 4 files changed, 8 insertions(+), 117 deletions(-) create mode 100644 docs/timeline.md delete mode 100644 docs/timeline.rst diff --git a/docs/index.md b/docs/index.md index 7ac4eba5..4b01214f 100644 --- a/docs/index.md +++ b/docs/index.md @@ -18,76 +18,5 @@ It is developed by members of the [PortuguesLab](http://www.portugueslab.com/) While built for a particular microscope configuration, the modular architecture allows for easy replacement of hardware by other vendors (we will help with and welcome contributions for supporting other cameras, boards and light sources). - - -## Installation - -[Install the latest Anaconda](https://www.anaconda.com/) distribution of Python 3. - -Clone this repository and navigate to the main folder `../sashimi` - -### Recommended: Create a new environment - -It is a good practice to create an environment for every project. The provided `environment.yml` sets up almost all required dependencies (see below). - - conda env create -f {path to environment.yml} - -You can activate the environment by running: - - conda activate sashimi - -After this you moght have to install two extra dependencies for controlling a Cobolt laser: - - pip install pyvisa - pip install pyvisa-py - -### Install with pip - -For a non-editable installation run: - - pip install . - -Otherwise, if you want to contribute to the project as a developer, for editable installation run: - - pip install -e . - -Now you are ready to go! - -## Configuring sashimi - -Sashimi includes the `sashimi-config` module that lets you interact with the hardware and software -settings from command line. You can display the current configuration of the system.: - - sashimi-config show - -You can ask sashimi for help: - - sashimi --help - -More information on its usage can be found by asking `sashimi-config` for help: - - sashimi-config --help - -You can add and modify parameters just from the command line. For example, to set the piezo waveform readout channel to `Dev1/ao0:0` just run: - - sashimi-config edit -n z_board.write.channel -v Dev1/ao0:0 - -Or to modify the minimum and maximum voltage (in Volts) of the channel: - - sashimi-config edit -n piezo.position_write.min_val -v 0 - sashimi-config edit -n piezo.position_write.max_val -v 10 - - -## Starting the software from command line - -Open a new anaconda prompt and activate your environment like above. Then run: - - sashimi - -Add the option `--scopeless`: - - sashimi --scopeless - -If you want to run the software with mock hardware, such as for debugging or developing. - - +```{tableofcontents} +``` \ No newline at end of file diff --git a/docs/intro.md b/docs/intro.md index 9bc78c60..33b0b9f0 100644 --- a/docs/intro.md +++ b/docs/intro.md @@ -1,32 +1,10 @@ -# Sashimi - - - - -![tests](https://github.com/portugueslab/sashimi/workflows/tests/badge.svg?branch=master) -[![Docs](https://img.shields.io/badge/docs-dev-brightgreen)](https://portugueslab.github.io/sashimi/) -[![Coverage Status](https://coveralls.io/repos/github/portugueslab/sashimi/badge.svg)](https://coveralls.io/github/portugueslab/sashimi) -[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black) -[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.4122062.svg)](https://doi.org/10.5281/zenodo.4122062) -[![Python 3.8](https://img.shields.io/badge/python-3.8-blue.svg)](https://www.python.org/) - -Sashimi is a user-friendly software for efficient control of digital scanned light sheet microscopes (DSLMs). -It is developed by members of the [PortuguesLab](http://www.portugueslab.com/) - at the Technical University of Munich and Max Planck Institute of Neurobiology. Sashimi relies on the fast, multidimensional - [Napari viewer](https://github.com/napari/napari). - -While built for a particular microscope configuration, the modular architecture allows for easy replacement of -hardware by other vendors (we will help with and welcome contributions for supporting other cameras, boards and light sources). - - - -## Installation +# Installation [Install the latest Anaconda](https://www.anaconda.com/) distribution of Python 3. Clone this repository and navigate to the main folder `../sashimi` -### Recommended: Create a new environment +## Recommended: Create a new environment It is a good practice to create an environment for every project. The provided `environment.yml` sets up almost all required dependencies (see below). @@ -41,7 +19,7 @@ After this you moght have to install two extra dependencies for controlling a Co pip install pyvisa pip install pyvisa-py -### Install with pip +## Install with pip For a non-editable installation run: @@ -53,7 +31,7 @@ Otherwise, if you want to contribute to the project as a developer, for editable Now you are ready to go! -## Configuring sashimi +# Configuring sashimi Sashimi includes the `sashimi-config` module that lets you interact with the hardware and software settings from command line. You can display the current configuration of the system.: @@ -78,7 +56,7 @@ Or to modify the minimum and maximum voltage (in Volts) of the channel: sashimi-config edit -n piezo.position_write.max_val -v 10 -## Starting the software from command line +# Starting the software from command line Open a new anaconda prompt and activate your environment like above. Then run: diff --git a/docs/timeline.md b/docs/timeline.md new file mode 100644 index 00000000..0ad65f93 --- /dev/null +++ b/docs/timeline.md @@ -0,0 +1 @@ +# Timeline diff --git a/docs/timeline.rst b/docs/timeline.rst deleted file mode 100644 index 41ea626e..00000000 --- a/docs/timeline.rst +++ /dev/null @@ -1,17 +0,0 @@ -Readme -====== - -.. mdinclude:: ../../README.md -:end-line: 26 - - - - - -.. mdinclude:: ../README.md -:end-line: 26 - - - -.. mdinclude:: ../../../README.md -:end-line: 26 From 32f4b7defdaa3fec1924ed967229d0afd6c15c94 Mon Sep 17 00:00:00 2001 From: fedem-p Date: Thu, 15 Apr 2021 17:35:50 +0000 Subject: [PATCH 42/43] restyle docs --- docs/images/main_icon.png | Bin 29835 -> 0 bytes docs/index.md | 2 ++ docs/intro.md | 11 ++++++----- 3 files changed, 8 insertions(+), 5 deletions(-) delete mode 100644 docs/images/main_icon.png diff --git a/docs/images/main_icon.png b/docs/images/main_icon.png deleted file mode 100644 index d011032fed928919f446d33eb6e0d2c627b646d7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 29835 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 R0RkXISzcYP3Sk!Ve*h3m>^uMf diff --git a/docs/index.md b/docs/index.md index 4b01214f..7b7e34fd 100644 --- a/docs/index.md +++ b/docs/index.md @@ -17,6 +17,8 @@ It is developed by members of the [PortuguesLab](http://www.portugueslab.com/) While built for a particular microscope configuration, the modular architecture allows for easy replacement of hardware by other vendors (we will help with and welcome contributions for supporting other cameras, boards and light sources). + +## Table of Contents ```{tableofcontents} ``` \ No newline at end of file diff --git a/docs/intro.md b/docs/intro.md index 33b0b9f0..9186dcf9 100644 --- a/docs/intro.md +++ b/docs/intro.md @@ -1,10 +1,11 @@ -# Installation +# Installation & Configuration +## Installation [Install the latest Anaconda](https://www.anaconda.com/) distribution of Python 3. Clone this repository and navigate to the main folder `../sashimi` -## Recommended: Create a new environment +### Recommended: Create a new environment It is a good practice to create an environment for every project. The provided `environment.yml` sets up almost all required dependencies (see below). @@ -19,7 +20,7 @@ After this you moght have to install two extra dependencies for controlling a Co pip install pyvisa pip install pyvisa-py -## Install with pip +### Install with pip For a non-editable installation run: @@ -31,7 +32,7 @@ Otherwise, if you want to contribute to the project as a developer, for editable Now you are ready to go! -# Configuring sashimi +## Configuring sashimi Sashimi includes the `sashimi-config` module that lets you interact with the hardware and software settings from command line. You can display the current configuration of the system.: @@ -56,7 +57,7 @@ Or to modify the minimum and maximum voltage (in Volts) of the channel: sashimi-config edit -n piezo.position_write.max_val -v 10 -# Starting the software from command line +## Starting the software from command line Open a new anaconda prompt and activate your environment like above. Then run: From ead3a9875b289acd377e3395aa6b1769e3459543 Mon Sep 17 00:00:00 2001 From: fedem-p Date: Thu, 15 Apr 2021 17:42:07 +0000 Subject: [PATCH 43/43] restyle docs --- docs/_toc.yml | 2 +- docs/configuration/configuration.md | 37 ++++++++++++++- docs/configuration/installation.md | 32 +++++++++++++ docs/intro.md | 70 ----------------------------- 4 files changed, 69 insertions(+), 72 deletions(-) create mode 100644 docs/configuration/installation.md delete mode 100644 docs/intro.md diff --git a/docs/_toc.yml b/docs/_toc.yml index 2cd9606e..d26d500b 100644 --- a/docs/_toc.yml +++ b/docs/_toc.yml @@ -2,11 +2,11 @@ - part: Overview chapters: - - file: intro - file: timeline - part: Configuration chapters: + - file: configuration/installation - file: configuration/configuration - part: Development diff --git a/docs/configuration/configuration.md b/docs/configuration/configuration.md index c5e844fb..233a9125 100644 --- a/docs/configuration/configuration.md +++ b/docs/configuration/configuration.md @@ -1 +1,36 @@ -# Configuring Sashimi \ No newline at end of file +# Configuring Sashimi + +Sashimi includes the `sashimi-config` module that lets you interact with the hardware and software +settings from command line. You can display the current configuration of the system.: + + sashimi-config show + +You can ask sashimi for help: + + sashimi --help + +More information on its usage can be found by asking `sashimi-config` for help: + + sashimi-config --help + +You can add and modify parameters just from the command line. For example, to set the piezo waveform readout channel to `Dev1/ao0:0` just run: + + sashimi-config edit -n z_board.write.channel -v Dev1/ao0:0 + +Or to modify the minimum and maximum voltage (in Volts) of the channel: + + sashimi-config edit -n piezo.position_write.min_val -v 0 + sashimi-config edit -n piezo.position_write.max_val -v 10 + + +## Starting the software from command line + +Open a new anaconda prompt and activate your environment like above. Then run: + + sashimi + +Add the option `--scopeless`: + + sashimi --scopeless + +If you want to run the software with mock hardware, such as for debugging or developing. diff --git a/docs/configuration/installation.md b/docs/configuration/installation.md new file mode 100644 index 00000000..f6739a55 --- /dev/null +++ b/docs/configuration/installation.md @@ -0,0 +1,32 @@ +# Installation + +[Install the latest Anaconda](https://www.anaconda.com/) distribution of Python 3. + +Clone this repository and navigate to the main folder `../sashimi` + +## Recommended: Create a new environment + +It is a good practice to create an environment for every project. The provided `environment.yml` sets up almost all required dependencies (see below). + + conda env create -f {path to environment.yml} + +You can activate the environment by running: + + conda activate sashimi + +After this you moght have to install two extra dependencies for controlling a Cobolt laser: + + pip install pyvisa + pip install pyvisa-py + +## Install with pip + +For a non-editable installation run: + + pip install . + +Otherwise, if you want to contribute to the project as a developer, for editable installation run: + + pip install -e . + +Now you are ready to go! diff --git a/docs/intro.md b/docs/intro.md deleted file mode 100644 index 9186dcf9..00000000 --- a/docs/intro.md +++ /dev/null @@ -1,70 +0,0 @@ -# Installation & Configuration - -## Installation -[Install the latest Anaconda](https://www.anaconda.com/) distribution of Python 3. - -Clone this repository and navigate to the main folder `../sashimi` - -### Recommended: Create a new environment - -It is a good practice to create an environment for every project. The provided `environment.yml` sets up almost all required dependencies (see below). - - conda env create -f {path to environment.yml} - -You can activate the environment by running: - - conda activate sashimi - -After this you moght have to install two extra dependencies for controlling a Cobolt laser: - - pip install pyvisa - pip install pyvisa-py - -### Install with pip - -For a non-editable installation run: - - pip install . - -Otherwise, if you want to contribute to the project as a developer, for editable installation run: - - pip install -e . - -Now you are ready to go! - -## Configuring sashimi - -Sashimi includes the `sashimi-config` module that lets you interact with the hardware and software -settings from command line. You can display the current configuration of the system.: - - sashimi-config show - -You can ask sashimi for help: - - sashimi --help - -More information on its usage can be found by asking `sashimi-config` for help: - - sashimi-config --help - -You can add and modify parameters just from the command line. For example, to set the piezo waveform readout channel to `Dev1/ao0:0` just run: - - sashimi-config edit -n z_board.write.channel -v Dev1/ao0:0 - -Or to modify the minimum and maximum voltage (in Volts) of the channel: - - sashimi-config edit -n piezo.position_write.min_val -v 0 - sashimi-config edit -n piezo.position_write.max_val -v 10 - - -## Starting the software from command line - -Open a new anaconda prompt and activate your environment like above. Then run: - - sashimi - -Add the option `--scopeless`: - - sashimi --scopeless - -If you want to run the software with mock hardware, such as for debugging or developing.