Skip to content

Commit

Permalink
add documentation (#67)
Browse files Browse the repository at this point in the history
  • Loading branch information
michal367 authored Apr 15, 2024
1 parent a359e9b commit b0babb3
Show file tree
Hide file tree
Showing 57 changed files with 2,537 additions and 457 deletions.
7 changes: 4 additions & 3 deletions .github/workflows/documentation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ on:
types: [ published ]

jobs:
documenation:
documentation:
runs-on: ubuntu-latest

steps:
Expand All @@ -29,8 +29,9 @@ jobs:
- name: Run doxygen and sphinx
working-directory: ${{ github.workspace }}/docs
run: |
( cat Doxyfile ; echo "PROJECT_NUMBER=${{ github.event.release.tag_name }}" ) | doxygen -
make html SPHINXOPTS=-Drelease=${{ github.event.release.tag_name }}
VERSION=${{ github.event.release.tag_name }}
(cat Doxyfile; echo PROJECT_NUMBER=$VERSION) | doxygen -
make html SPHINXOPTS=-Dversion=$VERSION
- name: Deploy documentation
uses: peaceiris/actions-gh-pages@v3
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ jobs:
- name: Run example
run: |
./build/examples/gammaImage
./build/examples/gammaSimple
- name: Install yagit
run: |
Expand Down Expand Up @@ -164,7 +164,7 @@ jobs:
- name: Run example
run: |
build\examples\${{ env.BUILD_TYPE }}\gammaImage.exe
build\examples\${{ env.BUILD_TYPE }}\gammaSimple.exe
- name: Install yagit
run: |
Expand Down
68 changes: 8 additions & 60 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,69 +1,17 @@
# Yet Another Gamma Index Tool

Library written in C++ for performing efficient comparisons of DICOM images using 2D, 2.5D and 3D gamma index concept.
YAGIT is a C++ library for performing efficient comparisons of two images containing spatial dose distributions.
The library employs 2D, 2.5D, and 3D gamma index concepts.
The gamma index was introduced by Low et al. in 1998 (<https://doi.org/10.1118/1.598248>).

## Installation

Build steps:
1. Creating a directory where the library will be built
```
mkdir build && cd build
```

2. Installing packages and running cmake
* Using Conan package manager
```
conan install ..
cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_TOOLCHAIN_FILE=conan_toolchain.cmake
```
* Using apt package manager
```
sudo apt-get install libgdcm-dev
cmake .. -DCMAKE_BUILD_TYPE=Release
```
## Documentation

3. Building the library
```
cmake --build . --config Release -j
```
The documentation is available at <https://datamedsci.github.io/yagit/>.

4. Installing the library
* system-wide (you need administrator privileges)
```
sudo cmake --install .
```
* in specific location
```
cmake --install . --prefix <path where you want to install>
```

## Gamma versions

There are 2 implementations of gamma index: sequential and multithreaded.
To select the version you want, set the `GAMMA_VERSION` option to one of the values: `SEQUENTIAL`, `THREADS`, `SIMD`, `THREADS_SIMD`.
```
cmake .. -DGAMMA_VERSION=THREADS
```
The default value of this parameter is `THREADS`.
## Installation

You can also modify SIMD extension used during the compilation of yagit. To do it, set `SIMD_EXTENSION` option to one of
the values: `DEFAULT`, `SSE2`, `SSE3`, `SSSE3`, `SSE4.1`, `SSE4.2`, `AVX`, `AVX2`, `AVX512`, `NATIVE`.
The default value of this parameter is `DEFAULT`, which means that no additional compilation options are added.
Option `NATIVE` adds `-march=native` if compiler supports it.
Instructions on how to install YAGIT are described at <https://datamedsci.github.io/yagit/installation.html>.

## Examples

Example usage of the library is located in `examples` directory.
To build examples, enable `BUILD_EXAMPLES` option during installation.
```
cmake .. -DBUILD_EXAMPLES=ON
```
And to start `gammaImage` example, run
* on Linux
```
./examples/gammaImage
```
* on Windows
```
examples\Release\gammaImage.exe
```
Examples of how to use YAGIT are presented at <https://datamedsci.github.io/yagit/examples.html>.
2 changes: 2 additions & 0 deletions docs/other/diagrams.drawio.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
<?xml version="1.0" encoding="UTF-8"?>
<mxfile host="app.diagrams.net" modified="2024-04-05T12:29:28.533Z" agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:124.0) Gecko/20100101 Firefox/124.0" etag="2346_E3jUxs89uPFhSpN" version="24.2.1" pages="9"><diagram id="GPJWq1qH7rPNwJKBL5hk" name="flow_diagram">7Vhdb9owFP01SNtDK/IF9JGvdpU2qSrS1u7NJJfEmxNnjlNCf/1s4pA4pkAnGEzaE/axfW2fe+/JNR1nHBd3DKXRFxoA6djdoOg4k45tW5bnih+JrCqk65VIyHCgsBqY4VdQYFehOQ4g0yZySgnHqQ76NEnA5xqGGKNLfdqCEn3XFIVgADMfERP9hgMelejA7tf4J8BhVO1s9W7KkRhVk9VNsggFdNmAnGnHGTNKedmKizEQyV7FS7nu9o3RzcEYJPyQBfNf3+fB1e3svvg0APd1MaRPX6+UlYyvqgtDIO6vupTxiIY0QWRaoyNG8yQAabUrevWcz5SmArQE+AM4XylnopxTAUU8JmoUCsyfGu1naeraU71JoSyvO6uqk3C2emp2Gqtkt1627lXrTJaqK9Oc+bCDGltFG2Ih8B3zBuU8yVtjA+WDO6AxiPOICQwI4vhFjyukwjPczKs9KBrKie9wqDr1CyK52mlIQsowj2KZJYj4uTxGEsqrRSAzDMUxkmaFUwsjHHRnLyPMYZaiNXFLkfK6Y98k+wUYh2InPWrU6ap0UYLhVv1lnX2Wo8xGjczrdU/EqGMwapCULXFMUCKTIxPxwlXk74y/wynxbjRGHMtkxK5YajKy0dBtlKjdHoVmoiQk8K7tvC27ua3NEOHAEsRhJCMoM9ywueefe8Y1PPMICxBM+/I6OJbSfuR43hkhB3vU1WPc2xLi9haKTxbinkHkVLaF84J/ikjLOTeTPYPJ+yTNuayAEBcq2yPiBKM5E61Qtj4wFGChxzSRU2gmAzfAGWd4nks0+2gQL6jhOruI4DARbV+wC0wAkkAstH6oBmIcBOWnGzL8iuakUqeU4oSvOfBGHW8ibYmvdVbKl7WWM0Z/wpgSKuxOErrWuAUmpAWdysFWK1NM9w4O0KKjubf/v1zaUwbtLZduLqpcGhj5eqeXQ6dRv3fXAG7/0sqiG5O5+4fHsxPVcy+NqErCziMatVA8N0b2iUatE8+aTBxbNKzqSb9PNeyLUo3q2I3gf0AMCePAsi0febgOr+U5fB9SUW7L8rQ9xxdPNGAYmd/7c7/Atj0A/nIGmY9aM6WSYCj/7pFlEEFZhn2dGJ3Fo38ejxbAe15ZFXZwnKsdHmShV/u4/chznZbvysxVq5p/KrUMOb2Wob6nGyqJMQztfwKKbv3fWDm9/ovRmf4G</diagram><diagram id="Du_h_ZyvDaeMuDVq2Wnb" name="gamma_index_example">7ZxNc5swEIZ/Dcd4ACGDj4njuod0JtMcmp461MiYKSAXy7HdX1/JIIMkUicZsHAhF6PVB7DvriU90dgA02Q/z/z16gsOUGzYZrA3wL1h25ZlQfrBLAduMQtLmEVBYSsNT9EfVBjNwrqNArQRGhKMYxKtReMCpylaEMHmZxneic2WOBbvuvZDpBieFn6sWr9FAVnlVs92S/tnFIUrfmdrPMlrEp83Lt5ks/IDvKuYwMwA0wxjkl8l+ymKmfe4X/J+n16pPT1YhlLylg7PYYiSB2/7EC9/gM388T4g2U0xyosfb4sXLh6WHLgHMrxNA8QGMQ1wt1tFBD2t/QWr3VHRqW1FkpiWLHqpPhS/A8oI2ldMxUPOEU4QyQ60Ca/lDjtI5V3p/5NtVfU9N/qF5uFp7NIt9KLwzDu8ZJ/3EkqDWxZutJTiFIleEV1IXZMdnllhBHnxe7Xufi+UDry0j0ilGy19L8Zn12UnVuB9XtVjg7fZAp2PDOJnISLn26FAyCNV3Yp6sEY8bstQ7JPoRcy+OkGLOzziiL7ZKXjARAweR46J/L2LXtVskQZyHHEg4EoD5Y5RBjrG1+m1Px5yoKWQEwKujL8zIWdVAq4MvyHkjh2AFCneB0PO8qSBwGVDzqkJuXFMnXW3xMfnLGNv/HuLecXN5jhp39IGlrfeHyOA19OrkH2aowngg9Fny8fLq5SwptMEEWN5QzL8C01xjLMy1pdRHEsmP47ClBYXNPIQtd+xSSeic/ltUZFEQcBuUzuLiRnTxkQGXGUiG9fEpSx7Y9MYbFVgeF0Cs0cslpuW15DgXscE91oV3B0ElzN8AvUKPmlPcGtkmoPgcobrFpxvkyuKf0VLRF+R+oX2Tdj2tvvywHby8bTEO7d1bE+fsaLPnhaPVyZfyHZaGtCONBNVmcsmjvsPYfqki9cxXdQ1y+Gki9kfXVx5Kelp1kVdWpS6qGyiN7roXgDY6gJAEePSBBd0kOC+AXT/dwiXe/MsUOMNO0LUYFMQd6wZ4vIg6xXFvdaoA01xXKCZ49p1/zsYQG6D85lurme3i+rH16VwC5xHTmH9irfL7geyp+S49oW9So6aZLn2oHjXWK6tIqkZu/YJdUPvWK6ckPpZrq2iqRIZ9ghNycroRoa2iqZKXXqEpuQvNN268IFrkWGPEHvnWC5QYVgpDOixMLpXAE7dvk5S49IwF3YP5jp1m6EmsFqXYS6PjbNYjTfsCFZzm4K5nmaY69RtyJqIOqPDMPdaow42BXOh7kO56qawQfDjuNZ1cYA2JjTdbM9p9ZgmdIdzmnIS65e81YOaljkQfCXLda/tobobbjDLPWuQXMly7ZKr++y5nyQ+60ddwSBVz6CunJX6oS60FY36eUBXlkY3PYTqKYZeHtCVv9W066Iyql4e0HW6RnWhSsV6eUJXEUb7MkAFRzbTJBTXAmM/Yf5Jf27YhzGzDZr57LQVQ/JwTm8NkqT7MtoNbdPp3wgKQjrqNx/gvy9Sh5DeISQtlj/EkaOb8vdMwOwv</diagram><diagram id="4qmLIUrbY5eXv1VzXQTx" name="wendling_circle">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</diagram><diagram name="wendling_circle_distances" id="F3twALJKrzZBP2fjvgeU">7Z1dc9o4FIZ/DZfJYPkDc5mPbXrRzmwnu+3ljhcL8NQgakxC+uvXBguwj4KRxvbxhpNcBMuOwHp0pFevZDGwHxbbpyRYzb+KkMcDNgy3A/txwJhlWW72J095kynDImWWRGGRdkx4jn7zInFYpG6ikK9LF6ZCxGm0KidOxHLJJ2kpLUgS8Vq+bCri8ruughkHCc+TIIapP6Iwne9TfTY6pn/m0Wwu39nyxvszi0BeXNzJeh6E4vUkyf5jYD8kQqT7V4vtA4/z0pPlMny78SNvvPn23X76wT49fv8ST272mX3S+ZfDLSR8mTabNdtn/RLEm6K8intN32QBvs6jlD+vgkl+/JrVkoF9P08XcXZkZS+D9WqPbRptefZW9+s0ET/5g4hFssvAdln+m5258DaK233hScq3JxCL23riYsHT5C27pDjLhgUhWUe94vj1CJw5Rdr8BPYhMSgq2eyQ97EgsxdFWWqUq11frnwZ3uX1OztaiiUvl2oiNsswL87HYYNFysNSrMACPSkwV1FeMi3hcZBGL+UIU5Vh8Q5/iij7eAdetl/mdeAns1iLTTLhxX+dVulKRo5Tk1EaJDOegox2SA+3bU7ZIcrvU3YqUQmCzZhyNaOWKbtEWYOy3xTl0fh2ZA2PP06n0D2C/j70aodrs4agg4xapjwiyme6aa8Cx2uKcjWjlin7RPlMLNfBuZRyNSOnYzE2JspnKDcluasZdU1Z2gqEWdlks4aC2bbU6guLukXUL++oLWPqHnJwM8L8PubqUMs8uMf9Cu5LzLI4jlbrnLauHTmN4lhWgaLC7OuFdINbdSZdt9ztSjv9pMZYtqLKHBIbdyYtMq00RrZ1LsTFQ6A6m6TtGCMTS0M2MeOWtU5/tY2ZBkE6XqWxoVHtiTvuMRlNL+noJOPppTqbs23MZE9qWBrmchjZnmTkT57rm5vyJ2vt7LYxU9+s02gbTynVjZJbxiwHboT5IqVtuiigVrK3jZkGVDpKu6lo7hwzrQPQiWZTzLXNQtuYSWmfw9zYSq66jNrGTEr7HObzc37ms0p1rUTbqzTJLdHpqptySzrHTBMbOm24KWYQzV2vuSbhraPIjDFjL60n4a1hiplj9pAxk/DWWNhjjrlu+V/bmEl4n8N8fj2OsfCulXZtUyfH+9z8VTW4ja1Q5FG1S8JbB7NxG44czS4Jb43ZaONGu3alftuYSXjrrA80fo4CWXi7JLw1Hooyj2bkYbRLEkwDs3k0VzPq2PuU1ZMwX9RomyrtWsne9uPKjDBrRLPpbDTIqONFByOasNLB3Fjf3PEzGSMaUOlgNt1YBDzg3rEEG5HS1tl+oCkJ1vVifZ8eUdbB3FTfbHcswXySYBpmp/lmInUPd7SNmSSYzv5PxpiRn8nwaepCp9E2HjcjP2E1VnnaXpyV1v1U7D7okbf3ayPkiZv1bjvbu+wCa7ja7jjK89mrWf7XkTlln2yf2T4d1KOUb9Ny5SlXl6JyKfYrCOJotswOJ1nl4Vn6fb4BQTQJ4rvixCIKw/xtlJsjlKto/hGLTXqtoXbFvHznA3tY3vngMBd9UnVVGx/IAGx834MxlOHetTNy+sYILhPxr52R3zdGcEZB7sl1tZAc5vQLkiU/wAklqGyuCxLzehZJ1hBaBtceSZl27RskOOC/ufZQsnyvb5RU43VS+K1WglHVufWxKwEczV99pFYgMQ8dEpz1uvZOD0Cy0ZtTaJhQp1ehZPnooQQtDfmVJERJUnLRYwmaGtduPAHpgA8JuhrX7jwBSOjtnWLv9212OHDvF4uB+3jlvNh4dFsZPFseICYt346IQYfj7f9HLBFpkEYiz+Vm3GrIOawsBBVqvS2An/+ajxfOl7/d9T/hYjEdsm+//BsYcJdo9SZZxMG/PL4PJj9nu3RJPeTTYLMblM9FEv3OgAXy3Xf0io93zEEkIU8qdaYtjLZV2fV75ACMlqLltNrCCM0Rq28YESjZPaME3QuilPVqPaME7QuiBFu8MTIl6F8QJUjJRaYE/YtLTKaPTqnaL2FTgv4FUYL9EjYlaGAQJUgJu19SWBiECTZ56Jigb3GJsf7RMVX0g21hY2KESdHojXo2ZFJ8wRthYnb1u+HQMUEDgjDBQZONjQk6EC5hAhICHRO0IAgTFOTomKAHQZhANOErPWhCECYQTfiYoAtBmKDSw/aKGHQhCBMcN6Fjgi4EYYKYsM0i6eARprONHjom6EJcssTv2jBhC3IGh7eECWBCV3oMDm8JE+yb0KMJDm8JE8CEH01w3DQmTMB6xcak+G5fwpSp3Z5NZNhw3ESYmN23aUEbjpsIE5xkx5YQtmL1eO+eAsD3XvE7J8X6ceIEJwbROSlWkBMnqCKw3VfFV78TJ4WMQOcEh7jEScEJ239VfPk6cVK0e+icDDf4++icqnPt2LrcgWYEccq5sNvOSGWHicg3Czuce8qKaf5VhDy/4j8=</diagram><diagram id="Os7iNWjwru7BydZh-8mQ" name="coordinate_system">7ZrZcpswFIafxpf1IIn1MoubdKZp03i65Y4B2VaLERVyvDx9RREYSTghGS+hE93YHMQRfP+RdCQYoIv56oqF2eyGxjgZQCteDdDlAEIAgCN+Csu6sljSMmUklratYUw2WBotaV2QGOdKRU5pwkmmGiOapjjiii1kjC7VahOaqK1m4RQbhnEUJqb1O4n5rLT60NvarzGZzqqWgRuUZ+ZhVVk+ST4LY7psmNBogC4Ypbz8N19d4KSgV3Epr3u/42x9YwynvMsF4xG7Px+TyfxbdAPPJtaPX9nVO+nlIUwW8oHlzfJ1RQCn8VkBUhxFSZjnJBqg85yHjJvmGZ8nwgDEX0YXaYyLti1xZN6sbBnHCn9561eYzjFna1FhuaXuSJKzBvDKxnAScvKgqhZK8ae1u7qFW0rEnUBLRiq0pR8Zp8iyVBc5XbAIy6ualJ9wBHzNkQA3xdxwJP40Hntr+ifiMwSFb4Kq3NeaLs8VtI6EXY4OLCh6E7TkXk0llQ6u88Ie6mqOgHMoQUdfvk7mCzCyzzf3C+vH5hp//vkO2Iaid4akHK+4qlaYkGlaSCn0wUwYHjDjRExUZ/LEnMRxcfn5ckY4HmdhVPhainm5u9aFT7x6VO3qrAdVitU014gG0BIN0NotvEL62VhdA+vH/mGFgfvKsHoG1nEPsdpInZVdZ+icGKxvgP3Qf7AwgCfGGhhYb3uI1dWyyMA7LdbKcQPrWQ+xAi2Xc08crfCl2V1v0zhbz75empfrjg640GqXzkzj3qTrJp0Dn3B0aOmcN+le2usCbQQ98uIJmln+qn/zkAN1iv6p01Fo5vnr/oG1fW1SCOyTgzXz/E0PwbqeCvb0CyjYkumLMRLLgadXeJGjxi2q3iI04LotcNGh4CIz3/9428OFv+3WI+sjaKtF7HHQmu9cLgnDESc0zftHWF9THTN0Z5tP3wH26Nj2rz/8yejdlX3ZNuAaVLcUwA5ODeD76N8uHOozk7mxZzsmJu9QmFp6+Mkx2ZZnYELmLANMTPrib3+YOrwhPXo0OeDVYYKvEJNrD/V3Ri276S2dLnAOhanDfs/RMQXWa8PUZX2eJCTLd81y+w4krbc5LWN3yxSnL7L3N8Xtkc+UhXGRNF/QhIps4jKlaXHVhCRJZRoUL8GLUmQfeVZ+ZjMhqyJI98LXs4deo/ga7UA565lb4e4QKsVqCdZddfbfx/8zcfyg13J02KaNFuyhHnAbG3+S9s5dv5wz+rv+LAzUlkqaGE/CRcJLp+9Jcd+92C1EgT9EzaKt/T2RpTWLrTbQ+csaDwzdZkHPambHTqMQL1w3qmVFhfyRh/Xt1mbq1wpO2+ltRJbtddzkFIfbD/7K6tvvJtHoLw==</diagram><diagram id="ru4UtOQ8VVKgE78shb8h" name="image_planes">7Zpdc6IwFIZ/DZftkAQQL61buzvT7rh1p7u3qUTMTCRMiIr99RtqUDD4UVcpOvXGcAIhvE84H0YLdSfpg8Dx+IkHhFnQDlILfbMgBAC46iuzLHKLrS2hoIG2rQ0D+ka00dbWKQ1IUjpRcs4kjcvGIY8iMpQlGxaCz8unjTgr3zXGITEMgyFmpvUPDeR4afVha23/Tmg4zu8MvPayZ4Lzk/WTJGMc8HnBhO4t1BWcy2VrknYJy9TLdVle19vSu5qYIJE85IKnXgiHrZ4/aMtf7d7vHpKvixtHT26G2VQ/sZ6tXOQSCD6NApKNYlvobj6mkgxiPMx654q6so3lhKkjoJojyliXMy7UcUBGeMrU5O7Muerpz4iQJC2Y9NwfCJ8QKRbqFN2L8qnqldTWh/M1lZY2jQtAchvW6yBcDbyWSjW0Wh9QDqH9yinkcdZUD44ZI4yHAk+UHDERVM2CiM2+/rpjv9Apyd+XswoP7bLwwDOVb1co75xLeWe/8CQKOtnLr46GDCcJHZbFKy/prSKRoOQcTIkKErgVEuQ2QRiWdFZ2KVW66Dv0OVUzWREAsExgRSQfIuFTMST6qqIL2DMQQBsDSSxCIo2B3jGtHvt4cu4XuWPJtfYMdGZy3he5Y8k5W9xnTeTyTKWA7s1gp0KBLNPCjIZRhlLxeQ9HWcCgKi/q6I4JDYLs8so4VWY94pHMIxU8TVAC+QJcrHDdukZYAhXrA+xYCv8VlqBvCL24AqEdUBbaBZ8sc9uQOb0Cmb2N9ew7t75vKo1qVBrB/U7/OjNcaLqSWjNcdEC4/XzlAypUxU159vZEXGRK3Y0YjV/0VclyAGdnuD+ckrO/AISVjuhsdQj4omRSarkNo3QRXqxmSi5o2rvUsF9TtN7uBjALIvv9c6bAU8Eh/wW1xOFsGMxiwYKeXqEz1QyzZielmOV2dZ9C1w/VwJNM3Og1yb6se2j5ntXORh3UnKedghAouzNom6mBV2dq4JhVRgWhLhc82saoiugubP1tw1waTISaBtOsZSrgDHBIpfwAzeddNB+vhabjNoym27AYVswpEj7dllN4O2IcTuLlptr72OfJ44FvBr2qMte/zVPL09dbF5HJnyHhqMg36i10qxzghvAN2X5EG6sWmNLVu/94wGZKQ6Tbtuv0WdI5B+wgHi3diUsEQ7yqEqGqVDuBeJCNX8TbyHe855+zjv039UP7xnSVj/0LTOxBfYm9Olz/y2O5rbP+swy6/wc=</diagram><diagram id="I8uEU4NXEwwy9ipb-RdF" name="position_and_spacing">7Zpdj6IwFIZ/jcnsxSZQEPVydOcj2UyyWSfZ6y50oJlKSamj7q/fIq1CqyOywOgseiE9paf0fXr6hQNntlg/MJhETzRAZACsYD1wvg0AsG17KH4yy0ZZLGkJGQ6kbW+Y4z9IGi1pXeIApaUbOaWE46Rs9GkcI5+XbJAxuirf9kJJudYEhsgwzH1ITOsvHPAot47BaG9/RDiMVM22N8lzFlDdLFuSRjCgq4LJuRs4M0Ypz68W6xkimXpKl7zc/ZHc3YMxFPMqBaLnp8d7mD79pBMPfl/Rx9eH8CvIvbxBspQNlg/LN0oBFAe3mZAiFdNYGKcRXxCRssUlo8s4QFkNlkgFMI22iSwr5Yy+ohkllG0dOdPtd5ej5MzuNdsim4eCEh7ZsgdEF4izjbhhtYcylEJHBR7KxhCBHL+VoULZN8Kdu10NPygWTwIs1ZE9WUR1YwVVuUjpkvlIlipC0By5pxxxyELEDUfiotDsvWnL+AzeTs+7Fm+vKd66o5Z5uz3vOryB1RBvw1HLvIc971q83aZ4645a5u31vKvw3i0nJaZxTdy6H8NRy7hHPe5KuL2GcHsfi3vc466C22kounU/XeNW1fe8T/BuKLx1P53ztnveVXi7DcW37qdz3uftvn0C0xT7W2SQcdN8tCdcOlB7PCyBGNWdn533/bTN87zd1icABzRwtRdWmp/OI/G8fdMnIGdrc51dexA95ahtdFX2QITgJM0my1WEOZon0M9yVgwmZYYwTfKXBi94naGcvmBCCpOmtf28h/cNMY7W7wLe9XlQFm4kW1LoAJ7J3ztOuiTt2TpW2Vxcoo62puPkY2WcGDLeiIAQzizriyGoaCLXlCM4jLMhRgiChFrTTAjsQ3IrMxY4CMgxBBXHoH/ppJ6hrntglAJOS/oCc0908zwAHsl0TJe/xWWYXa6VTdRSMOckDhXYHC5whcyMod1yDGaHZhY1kjbPzNzXzM9BdnUAJmUArjkidRszoMLQ/l/sM4Z6ZNRc9BiOOj7mB+bO8VBEHRnTrjCi1LS6AzepFlKgrZCq8iL1EldLwLmk1RKosmO+RBn1RaftfKyO5uJ9c31RDsbjkqhgaEa5OjPrZuI0F/Pr65PVdcuHK/bQ7KudylrhmLsswonAL8a5PBRvIsSPvFUoqOZYh+YcfVFRQTeR3P/xL18k7P8/6dz9BQ==</diagram><diagram id="hD95C3yb2slNhQ40g6hc" name="3d_index">5ZtRk5owEMc/jTPtQzskIOrj6V2vfWjnZny4xw4DUdICcWI8tZ++UROULM55npAzPtwcLBDgt8tu/ot0/FG+euTRLP3JEpJ1sJesOv59B2OEUFf+21jW2uIpy5TTRNn2hjH9R5TRU9YFTci8sqNgLBN0VjXGrChILCq2iHO2rO42YVn1rLNoSoBhHEcZtD7TRKQ7ax/39vbvhE5TfWYUDnZb8kjvrO5knkYJWx6Y/IeOP+KMid1SvhqRbENPc9kd9+3I1vLCOCnEKQcUd7+en0bPOR/SH93F79+T8Z+/X9QoL1G2UDesLlasNYFlSgUZz6J4s76Ubu74w1TkmVxDcjGaz3bcJ3RF5KmG8Lr0SQgXZHVgUtf5SFhOBF/LXfTWUDHTUaMZLvcuKG3pIX5tjJTbp+XYezJyQcF5AygfgJrwKCfS5AFi8i6FASmj00Iux5IJ4dKwYUFllN2pDTlNks3hwzranC2KZMP23rsQ30GVL+5CvmEN3sboBkfpouuj64cfjG4X0P0kTzXa/n1ume+EFUJleYSayhY9wDuo440b4h2+nlRJkdxtqpNcK1hBqrxPjEiSVEoX5HNw/92a+9c2TrJI0JdqwauDos7wxKi8khJ/mQF1uAdGHM/ZgsdEHXVYoF4ZCCRzEfEpEWCgrY/K2z7fbb3bcltwKbcFdt3Wvy239Q3a4ZluA1nTHKhhtw1u2m1lrnuv28BADbsNQcVQTiaQA5MJWIQsTyYQPg4cuwAclA/bwKHU2wJHrk6XQ9vAofrbAseOAseebeBHBCFyNYdbj3CoCEvgTuZw68ChlitTiosRbj+lQBVWAncxwu0DP0E/Wejc+/6H69zrgQ9DEznU/oTILYcmhhIRUHZI2vu9CzXSzIHabqRpN92I3wJ0Ib+ZA7XuNyhYnfZb15xsnvu8mYmz5Q4ohrr3lvx2dgvU9FvbLVBcI5+RQy1QWIdsTyhq5DNyqAUKC4ht4DXyGTnUAoWZ3zbwGvmMHGqBwpRtGziUz2WEO5nDbUe4DoA64E7mcOvAa17UIodaoEB2204pPpTPJXAXI9w+8Lfp3jiL5nMaX7OEAq9u0ZkSCvyKyByoYQnlv036uuA6s2thNolO/gGQKaPNtlXTroPaYNVycrtAMsPGk9Tvg1xW95aiuc8LoABYXx9VpKfVOjb1WypbWAM463Q8zwBpe26JAG3WlktEAOevV5hnAv9j5ZkATlJdfyCw91XPFN9be2vGarv8BnDSe4WFAg8GAGRztUKu7j+z3Dli/7Wq//Af</diagram><diagram id="62pDtGsv9RNoTwOz8sZi" name="1d_index">5Zvfb5swEMf/mjx2wpiQ8Nhf66Zq0tZsWrU3BE6gIjglTiH762cWm4DPVds04EKeCgcY+JzzvTvOHeHLZXGT+avoGw1JMrKtsBjhq5FtI4TG/E9p2UqLJSyLLA6FbW+YxX+JMFrCuolDsm6cyChNWLxqGgOapiRgDZufZTRvnjanSfOuK39BgGEW+Am0/o5DFu2sU3uyt38h8SKSd0autzuy9OXJ4k3WkR/SvGbC1yN8mVHKdlvL4pIkJT3JZXfd52eOVg+WkZS95oJzlv54vHOLWXr7+JB+Xd+Ru/xMjPLkJxvxwuJh2VYSyKOYkdnKD8r9nLt5hC8itkz4HuKb/nq14z6PC8JvdQGfS96EZIwUNZN4zhtCl4RlW36KPOoKZnLWSIb53gWVLarjl0ZfuH1Rjb0nwzcEnDeAsgGoeeYvCTdZgBh/S6ZASuJFyrcDzoRk3FCyiPksOxcHlnEYlpdf6GhndJOGJdsr60h8vSZfewz5uhq8rdHFz9JF/aOL3Q9G1wF0u56zc5oyoe0ItaURU0DZ0VG2W6I8fllKSRqelzGJ76U0JU3er5yHJGwELMin9v5jzftLW0YSn8VPzTCngyLu8J3G/Ekq/JXuyUnuKLN3TTdZQMRV9bD0wkBAwpmfLQgDA/33UfXah7vNPS23Ocdym2PWbZPTcttUoe0e6DagmupALbttetJuq7TuvW4DA7XsNg+4reu8rIUMAkYewxmErHlrmOHPo3+YQaQwjRkWvbj/mKGym8YMS2Z3eJhtyzRmWDs7/ccMtNn4bIZF9HgAmFVtNo4ZVtGTAWBWi2XjogGr3ukAMKvFrWnM+BWf12vlTpD463Uc9LniAVkIOrDiARWvOlDLFQ+G2cvQXTdW8/RDi1VlIPCNqW3XwYyo6FjcjiFmyi9pCrVM1wFrr0UDE6Bt/6gi22vOTeQZxvq2tsEAdAbjI4UIRxWsrkMETKJ6qDMO/mA687Yv+0P4QdjWJxmz3ht7NWN1Hn7hN/4eBgrb8wDIDmMFdpPcHbv3Px/+WLS4/TU/uyWaPj7gamCxDtDzThfraEHBmOp1PANbqG4h5+6qWy3l0+qc48mROufqQC12zrVuO63OuYOO5DZ1oK7ddlqdc5DbH7rgAahmewsetG6DnfNTctvBCx5Ut7W44EHrNk0rXpp6nUOA2GM4h9D04qWpz5xhsDDN2YacoRL1jjNUd9Oc4bdnNIA+MZRj05xhLYwGsIgH6LPx+QxLaYm+z5yBPhvnDItpNIDVUqBoNq4bsPpFA1hgAqrc9jjz3f3/LO7S7f2/fuLrfw==</diagram></mxfile>
Loading

0 comments on commit b0babb3

Please sign in to comment.