diff --git a/manuels/fixtures/editors.yaml b/manuels/fixtures/editors.yaml
new file mode 100644
index 0000000..5989585
--- /dev/null
+++ b/manuels/fixtures/editors.yaml
@@ -0,0 +1,96 @@
+- model: manuels.editor
+ pk: 1
+ fields:
+ created_at: 2018-05-21 23:52:04.625313+00:00
+ updated_at: 2018-05-21 23:52:04.625339+00:00
+ name: Nathan Technique
+- model: manuels.editor
+ pk: 2
+ fields:
+ created_at: 2018-05-23 21:30:36.614547+00:00
+ updated_at: 2018-05-23 21:30:36.614582+00:00
+ name: Foucher
+- model: manuels.editor
+ pk: 3
+ fields:
+ created_at: 2018-05-23 21:30:53.729217+00:00
+ updated_at: 2018-05-23 21:30:53.729244+00:00
+ name: Delagrave
+- model: manuels.editor
+ pk: 4
+ fields:
+ created_at: 2018-05-24 07:42:36.637920+00:00
+ updated_at: 2020-06-30 11:05:21.154628+00:00
+ name: BPI (Editions)
+- model: manuels.editor
+ pk: 5
+ fields:
+ created_at: 2018-05-24 07:43:36.023261+00:00
+ updated_at: 2018-05-24 07:43:36.023288+00:00
+ name: Delagrave Lanore
+- model: manuels.editor
+ pk: 6
+ fields:
+ created_at: 2018-05-24 07:46:42.224916+00:00
+ updated_at: 2018-05-24 07:46:42.224969+00:00
+ name: Bertrand-Lacoste
+- model: manuels.editor
+ pk: 7
+ fields:
+ created_at: 2018-05-24 07:47:02.123413+00:00
+ updated_at: 2018-05-24 07:47:02.123470+00:00
+ name: Livre de Poche
+- model: manuels.editor
+ pk: 8
+ fields:
+ created_at: 2018-05-24 07:47:27.845201+00:00
+ updated_at: 2018-05-24 07:49:43.457058+00:00
+ name: Le Génie Editeur
+- model: manuels.editor
+ pk: 9
+ fields:
+ created_at: 2018-05-24 07:50:08.412072+00:00
+ updated_at: 2018-05-24 07:50:08.412099+00:00
+ name: Librio
+- model: manuels.editor
+ pk: 10
+ fields:
+ created_at: 2018-05-24 07:50:15.312354+00:00
+ updated_at: 2018-05-24 07:50:15.312401+00:00
+ name: Belin
+- model: manuels.editor
+ pk: 11
+ fields:
+ created_at: 2018-05-24 07:50:29.376570+00:00
+ updated_at: 2018-05-24 07:50:29.376595+00:00
+ name: LT Jacques Lanore
+- model: manuels.editor
+ pk: 12
+ fields:
+ created_at: 2018-05-24 08:41:15.179008+00:00
+ updated_at: 2018-05-24 08:41:15.179039+00:00
+ name: Hachette Education
+- model: manuels.editor
+ pk: 13
+ fields:
+ created_at: 2018-05-24 08:41:23.198186+00:00
+ updated_at: 2018-05-24 08:41:23.198211+00:00
+ name: Hachette Technique
+- model: manuels.editor
+ pk: 14
+ fields:
+ created_at: 2019-04-06 15:56:17.391985+00:00
+ updated_at: 2019-04-06 15:56:17.392024+00:00
+ name: AUTRE
+- model: manuels.editor
+ pk: 15
+ fields:
+ created_at: 2020-06-30 11:05:52.948953+00:00
+ updated_at: 2020-06-30 11:05:52.948979+00:00
+ name: BPI
+- model: manuels.editor
+ pk: 16
+ fields:
+ created_at: 2020-06-30 11:07:41.171551+00:00
+ updated_at: 2020-06-30 11:07:41.171584+00:00
+ name: Nathan
diff --git a/manuels/fixtures/levels.yaml b/manuels/fixtures/levels.yaml
new file mode 100644
index 0000000..1c3cc8c
--- /dev/null
+++ b/manuels/fixtures/levels.yaml
@@ -0,0 +1,161 @@
+- model: manuels.level
+ pk: 1
+ fields:
+ created_at: 2018-05-21 23:51:32.192659+00:00
+ updated_at: 2021-06-10 14:49:31.808889+00:00
+ name: TEPC
+ order: 60
+- model: manuels.level
+ pk: 2
+ fields:
+ created_at: 2018-05-21 23:51:32.192659+00:00
+ updated_at: 2021-05-09 15:46:27.101295+00:00
+ name: 1EPC
+ order: 50
+- model: manuels.level
+ pk: 3
+ fields:
+ created_at: 2018-05-22 09:35:47.899146+00:00
+ updated_at: 2019-05-28 08:22:28.856626+00:00
+ name: 1HCR
+ order: 70
+- model: manuels.level
+ pk: 4
+ fields:
+ created_at: 2018-05-22 09:36:20.462287+00:00
+ updated_at: 2019-05-28 08:22:28.840231+00:00
+ name: TC
+ order: 40
+- model: manuels.level
+ pk: 6
+ fields:
+ created_at: 2018-05-22 09:40:05.347592+00:00
+ updated_at: 2019-05-28 08:22:28.861702+00:00
+ name: THCR
+ order: 80
+- model: manuels.level
+ pk: 10
+ fields:
+ created_at: 2018-05-24 07:21:03.328756+00:00
+ updated_at: 2021-06-10 15:00:11.767805+00:00
+ name: 2BR (FMHR)
+ order: 100
+- model: manuels.level
+ pk: 13
+ fields:
+ created_at: 2018-05-24 07:23:10.806269+00:00
+ updated_at: 2019-05-28 08:22:28.830441+00:00
+ name: TAPH
+ order: 20
+- model: manuels.level
+ pk: 14
+ fields:
+ created_at: 2018-05-24 07:30:03.322522+00:00
+ updated_at: 2021-06-10 15:01:09.966530+00:00
+ name: 1BR (FMHR)
+ order: 120
+- model: manuels.level
+ pk: 16
+ fields:
+ created_at: 2018-05-24 07:31:24.408312+00:00
+ updated_at: 2019-05-28 08:22:28.890927+00:00
+ name: TBR Cuisine
+ order: 140
+- model: manuels.level
+ pk: 17
+ fields:
+ created_at: 2018-05-24 07:31:32.980401+00:00
+ updated_at: 2019-05-28 08:22:28.896019+00:00
+ name: TBR Service
+ order: 150
+- model: manuels.level
+ pk: 18
+ fields:
+ created_at: 2018-05-24 07:33:31.956769+00:00
+ updated_at: 2019-05-28 08:22:28.901015+00:00
+ name: 2BHPS
+ order: 160
+- model: manuels.level
+ pk: 19
+ fields:
+ created_at: 2018-05-24 07:33:38.415125+00:00
+ updated_at: 2019-05-28 08:22:28.905544+00:00
+ name: 1BHPS
+ order: 170
+- model: manuels.level
+ pk: 20
+ fields:
+ created_at: 2018-05-24 07:34:31.289711+00:00
+ updated_at: 2019-05-28 08:22:28.910135+00:00
+ name: TBHPS
+ order: 180
+- model: manuels.level
+ pk: 22
+ fields:
+ created_at: 2018-05-24 07:36:38.466515+00:00
+ updated_at: 2019-05-28 09:11:16.516466+00:00
+ name: FCCDR
+ order: 210
+- model: manuels.level
+ pk: 24
+ fields:
+ created_at: 2018-05-24 07:37:17.698638+00:00
+ updated_at: 2019-05-28 09:14:54.078509+00:00
+ name: PCR/APH
+ order: 225
+- model: manuels.level
+ pk: 26
+ fields:
+ created_at: 2019-05-28 08:08:16.829760+00:00
+ updated_at: 2019-05-28 09:14:11.945424+00:00
+ name: BTS MSE1
+ order: 250
+- model: manuels.level
+ pk: 27
+ fields:
+ created_at: 2019-05-28 08:08:24.160816+00:00
+ updated_at: 2019-05-28 09:14:11.953016+00:00
+ name: BTS MSE2
+ order: 260
+- model: manuels.level
+ pk: 28
+ fields:
+ created_at: 2019-05-28 09:11:52.129850+00:00
+ updated_at: 2019-05-28 09:12:37.745160+00:00
+ name: CS1
+ order: 220
+- model: manuels.level
+ pk: 29
+ fields:
+ created_at: 2019-05-28 09:13:22.829655+00:00
+ updated_at: 2019-07-02 08:48:52.770113+00:00
+ name: 1ACR
+ order: 231
+- model: manuels.level
+ pk: 30
+ fields:
+ created_at: 2019-05-28 09:13:29.936347+00:00
+ updated_at: 2019-07-02 08:48:52.779779+00:00
+ name: TACR
+ order: 241
+- model: manuels.level
+ pk: 31
+ fields:
+ created_at: 2021-05-09 15:46:45.283121+00:00
+ updated_at: 2021-05-09 15:46:45.283173+00:00
+ name: 3e Prépa Métiers
+ order: 0
+- model: manuels.level
+ pk: 32
+ fields:
+ created_at: 2021-05-09 15:47:10.620285+00:00
+ updated_at: 2021-05-09 15:47:21.317562+00:00
+ name: 1 APH
+ order: 10
+- model: manuels.level
+ pk: 33
+ fields:
+ created_at: 2021-05-09 15:48:31.353920+00:00
+ updated_at: 2021-05-09 15:48:31.353972+00:00
+ name: 1C
+ order: 30
diff --git a/manuels/templates/manuels/list_books_supplies.html b/manuels/templates/manuels/list_books_supplies.html
index c9abe75..6ecbbbd 100644
--- a/manuels/templates/manuels/list_books_supplies.html
+++ b/manuels/templates/manuels/list_books_supplies.html
@@ -33,7 +33,9 @@
Liste des livres demandés
{% if not teacher.has_confirmed_list %}
-
+
Ajouter un livre
{% endif %}
diff --git a/manuels/tests/cassettes/add_book_with_decitre.yaml b/manuels/tests/cassettes/add_book_with_decitre.yaml
new file mode 100644
index 0000000..dc304f7
--- /dev/null
+++ b/manuels/tests/cassettes/add_book_with_decitre.yaml
@@ -0,0 +1,586 @@
+interactions:
+- request:
+ body: null
+ headers:
+ Accept:
+ - '*/*'
+ Accept-Encoding:
+ - gzip, deflate
+ Connection:
+ - keep-alive
+ User-Agent:
+ - python-requests/2.25.1
+ method: GET
+ uri: https://www.decitre.fr/livres/9782216157396.html
+ response:
+ body:
+ string: !!binary |
+ H4sIAAAAAAAAAwMAAAAAAAAAAAA=
+ headers:
+ Connection:
+ - keep-alive
+ Content-Encoding:
+ - gzip
+ Content-Length:
+ - '20'
+ Content-Type:
+ - text/html; charset=UTF-8
+ Date:
+ - Sat, 10 Jul 2021 14:38:39 GMT
+ Keep-Alive:
+ - timeout=10
+ Location:
+ - https://www.decitre.fr/livres/francais-cap-les-nouveaux-cahiers-9782216157396.html
+ Server:
+ - nginx
+ Vary:
+ - Accept-Encoding
+ status:
+ code: 301
+ message: Moved Permanently
+- request:
+ body: null
+ headers:
+ Accept:
+ - '*/*'
+ Accept-Encoding:
+ - gzip, deflate
+ Connection:
+ - keep-alive
+ User-Agent:
+ - python-requests/2.25.1
+ method: GET
+ uri: https://www.decitre.fr/livres/francais-cap-les-nouveaux-cahiers-9782216157396.html
+ response:
+ body:
+ string: !!binary |
+ H4sIAAAAAAAAA+y9y3MbuZIvvG5HnP8BzXOnZd9Wsfh+2JbOUBRlqS3Zetn9DkexCJIlF6voeujh
+ no64cXezvosvvt3EbGZ04sbczay+reL+I/OXfJkA6skqsqgnaUsn+phVBSSAHxKJTCCRePnt5tv2
+ 8c/7HTJ0RjrZf7exu9MmOUmWfyy3ZXnzeJP8tH28t0uK+QI5cixNdWS58yZHckPHGT+X5bOzs/xZ
+ OW9aA/n4UD5HKkXMJn5KNsuT7zm93PqTl6yQ85Fu2GsJBIrNZpPny2Gi57piDNZyfStH/F9Igyo9
+ +GdEHYUgDYl+crXTtdxP0ruW1DZHY8XRujrNEdU0HGo4a7mdzlqxmCNyUq42TyQdX4zDWRx67shY
+ kxdEHSqWTZ011+lLDU7F0Rydrm9ZinH1b4pmk3Zrn+xSmxime0oV95yoylCjlk16lOxp6vDq33VK
+ jqjRs6i0rVz9n55iEYm8gvw9smVaI8WBx13t1KLw7yZVNceiL2VeypMnL23V0sYOcaCKomYnyqnC
+ 3wIiBP6e9l1DdTTTIE/PVknvGfmDvca/s7xmf7DOeh/Gpm0jMmSNfPvtWR5KVYd7tKcpL4K0v66U
+ LUipWM7Fyu+QMCCDfytKv6/pCl15zp8dy6Wr0RRQKYeaXoKkFAPTHOhU6prmRxvSJaRwqCJRak0p
+ xVI+utBRktI7pZaj2ZoxEKT8dH/yVv359EwzeiaCYqruCDr32bMXT17KHD1EV9eMj2Ro0T5nSRt4
+ cmyZPVd1bEkbKQNq53sa8DGwlZpXzVGOWFRfy40tCtxiUNUBtrEAWtPSBpqxnkgQmVy0WzEU/QJI
+ 2Vlozex73rhIr/3q9QH2X1/RbfriiUiX7ypdqrdd2zFH+6ZmODtG37T9bs5V6pXcc/IHiYCNf1BV
+ hO45yR1R61RTKXK2RceWZrOfOvKuTVxD++RSTEl6mj02DcZu1IDvXUvRLI3mVidp64ptA+Wh1qO5
+ yNc/n/wZ7aqpYBDbUgPE1Z4BAJsfNaorZ0y6AMI21EzuV0pqqdqvSOVevyRVqqW61GwUqETLRaVb
+ 6TebhXpffuu0XMfc0E31Y/7EzpH1hGrMKI+ncuhorCsOtWXTOdp8feS4XUYwrRGetMm9O95CcdNT
+ HEXqmSNFMySeBuRghhYkVzmNjZ744uPt2FEM0/jRUsZjaj0FQQLdEOkEw/R/E/JSGw0YECv+2HG7
+ Ss/OD/I904XeV3UNIDSoIytQwKnmXLzoqR80d00uFsrNZr3WLMubW/stt6dRQ6X72jnVX5hWb62I
+ 6Ww6WKvVSqV6pVwsVP+2Qs60njNcK5Ih1QZDB350IS211goyVk0O1S0Ls8iOdZFXuo5iOxc4HOVy
+ saHSbr9XLJdL3XqpXCxW1SptNGmxWKqVGk3sugiu30oSOTpuHR6TQy6SyJ5ifaQOCCRybCnqR/wh
+ SSik5xTjrqUHUlz+7z6xDdN0YFJVxjChOOTdmGwCh+wqF9QiZvcERIiN4muMYhFG5JBa9L/LgorW
+ f/qtEAR+pmehiSL2CeXCn97c8GeIhp8iT09hRNkhGvFPiTTiifJH+zvvYbrEdq9N/fpP/0Ry5Xwl
+ X8y9SKUFsu+IchDXSC5IeQqTLoznVaI68MGbDfKqRWF4dnQmtp7mRHc883KB7oIdhqTiXRZKotgX
+ hgppcAZ6gS+AveAR+vAFlhkub0AdUZi9cXGsDN4oI/p0hZNcefZr4XePLOTLg0iHhG/MHs1rIL0s
+ Z4P2TYs+VZ1V/O7X8s+nPn14rWDj88AFjqmaOvme5GTZUQZ5azTOi5mTcXuxVC40q3moLrD1M0Ys
+ 4G3G2p03m7MYO5N6Issvv/21vdk6bv36JMRqA2XN//VP/+Tx/tNnfzwdKPlPa/h///RPv/7+LD92
+ 7eFTxRqwJtrPBEc98bq1pzrvlG2qjxnThp+AYZD/Qq/y0N+9NpPUOD/6482AfvAGHNLE584BJMEf
+ iOGa6HD8qCoRFmLU8vZY15ynKy9WRLdAT5GnmFqDxIUX8M9LyJjXqTFwhvD4/ffBAGdEIZmq/Kr5
+ HHA21GD6fApaB0wKLedp4RlZWyMrZOUZT5u33S7q18bgaRHYWlD2mULrY17Al56/7T/l7WEUgI5F
+ HdcyIiR4AkFkghwfuyKb4er6iyfhXhgoT3N8JOVWSQ4U8XK13Kg1S1IRnv/I2Tgox5T2jhSYDukh
+ pnteLBRWcxy7TTbB5Z7nelz5zYOq/yeUjGRhNkSaIPIMUCks9tClCkznuWgKnLcuRtpnujOGRxyK
+ /PsKfF+B7z0NegvFSLEE35NZ4mkOlGWVKUjU+qCbgwHtsaHByzF6WNAYlMJTjZ555VtoS1is5ZRp
+ SpZKPQkiy7//vh6aP73RwiVGRIVIUxLl4Ck+/dzUMkCzgBoKzNO9QFn0PiP/PH2KtM0+wZSg07Gk
+ yETAhy5wVl8zaG8Fh9m30RTffecN8pj18SxmU8QrETVNGJ3Q89MV09AvCLSQgkhC++npSDmXmFrw
+ nNTKzfH5M/EaFCbxuggvV55xKtR+ES1+usWDf3Grx/ubtEtY6pgF5P0xcBOSx8yhWcljttGMuiTb
+ SVFDCf/+jILSy3uyTUxVeaakv2GSEGZCMsoFGf7MaGcx0xuFzBqMcv4auDJkc29eXapgQFv0M7Fd
+ EOq+KCAZLG3owCmmdtvUdaETJOZG61tYKJ79HVov4JW2zC5oXuFlhTebnZ9Wt97u7r79kaVmQETa
+ yQw6kX7lj5ywKz9oPRB11Vq1Vm+Uc3+usLw8n1DdLtZy5uA5sz5DBWYyT2X2Uh4BFhT4yuZQDBUN
+ kJD6AKQKOEqqMpZ0akseEpJAQm7WG6VSsVas1svNmlSpV8+rhYJUzJ+MByFEItV0oksnyMlpSTW7
+ G+5xKEwqSVCcxMqTamn5QJFKwAEFZsAlMjdC5ZltlCJtzPP1ppSm4RJMqOQMjEg6PY0xWqlQKgBj
+ pTDl6hvFGSo68Nsuhc5c3dLB5lcMSOV+BqXPWe2MRorhUuBb8sp0dcXqpVUyeTS1wTrA0QTMgC9t
+ mJdQxK6SU+1UAQMdPiuqSrlQXiVAFg11k+IAJFCoaBgWNbAUmNTQzu/77YeHUqHYzBMoxxGpsa5X
+ l6L51MYCHBfaaF9dUqKcUhVy2VAKTOVX/2FwHZggdleXYwsKho89qD6UDq+BqtFzbYIvri6dq0sC
+ lqWuXV1iFrLxFutYLsiFhszrIZFiCSt7QoHo6OrvusIoQQ2gPdi4cyjDxul/FapgQa9gK777K1ih
+ L4RpirTz+TzDOT6UnTMNamQ9V1lH+CjbLsBqXeSm5EDdJ5TjHz35MiXLww/8UqFwXi6UxcCPSULU
+ fZgmFtRQM6DXFV2yVUWna8V8geVhK2FshUtDdS1hUSw0fG0wKWDwMoo9WXyAf/uKqztyXzlFGnn4
+ v5zQd3h7zyVOO1qePYT6qa5D7r1g5wLgHVJQScNqmWrbM2oxQvUG032wqQo8KxcobVClWe03qxUV
+ BHGlTvv9bqFeLRe6tEsreUaTZVvLKboeqsnUgrqg1coW5mXSbS23Swm+wyEteJM8ZyKDarq9Sr4D
+ XRuUiBen3g8xcle94e14H2wCD/4TTqfUFiucig58baDaL1BRxmAtcUsVK/P9+UiPQ6miQg9p9BnI
+ 3VjuZ9CihZXJrUvPqmSqEm5umKNDsCAuIvYk1Fvvgp0c1nd9i1Hp9Tq4XLGr2cB01Hqa23y7J7Yi
+ dk2lR9HOCNnDUe3Mo2LRkXlKZxPyDec8VoqCtGfaJehnEbpejZ8+Cyl3Ii3xzMCg1aaBBcxss7AC
+ JlpMcjpkn9JMkTGxkSJresPmblf2deb1J+HVDJPNu4r+izZumy5MbbjqtkZ+BSM+bvrBT7F31TWB
+ WZhKvQYyVHEUGH6SEO4SSldgd+xD4r2D0sEC6Wowvi6kQpGAOoDTekJOtHnolO8+SdxK62mnXjXO
+ +IKvYHc2MQWLqf6rUAbvayhHWhJJM4wIaT/xeP2l7YDkHay3xrjWxXYZVkmANlMjejAxsykalAC0
+ DE5NlFEGCOYBSBTXygPGnMpLeZxYyg8BwZ6pgULxd6Tg0ewphj1BlIxN+D/XAcxtahHHBJlmM9UE
+ uoYxrIGyD3UGAFylBOf5/EQFXsoASAjB4DG8Wh1HDlcYcsm4IwtRS8KZVwHj2yI2dSS+Cg7/nOcm
+ ifEc8EQVq6+dT6cL/GKGiIsJXioW4v2sTBfK/uwippTVYA+IbwgNDIozyFBhqigOb28bKedVCeuS
+ wDUT/evtQVxvgue6lIyF5ccGWDkwV12v2nxzItco5Lz9CfbbAxgGpmQaEiQdw+SqnVJf0Yy0xj4d
+ pG+Rg15WkCGFX1ixACXgwN4wz9dyBVIg9VoDFOPJckH3/uiY4xRAX47BHiG9tdxesVzP15pVUqxX
+ 8vVqbSiV6vl6vf6+WK3ma6VhqZpv1MpqOV8pN6C0Wr5UBS2xWiH1fKNZlSr5cqWh1/LlBvBMvl6p
+ qVIpX61W0YGgLFXz9VqJlPKFahU/l8RvKKOZbxYbp1IRyio3hqUa/KNCinKxBoWAfl+CfEX2/1Cd
+ BhRbLVSAcq0hNfP1Uh3KrZdAXa3km+WK91DLV2pVUpDyzXy5DpVsNBtIo16WyvlCfbsBiQs1tZKv
+ NLAa5SpQrcB/xXKZ/SpCqtJpBWtWUbGlkBqoNEmxmC9KforysF7L1ypVVco3GlgMas0VSFqC2pfE
+ 73K+XAK4MHuxAqU1K1Id6QFqxQpg0cBmA02gQADgehVr36yTZr5QKyM6Nf7z86hRzjcqDalaQMDU
+ Rr5Ww26AKjWxFeVCFdEqA5l6voQdUa8jdegaFQqvVUt5hK1Zhq5tAE6lgvcLCisgloU6QwdSlRiw
+ 4qGRr1QgQQX6m0DVivxXpQDMAMWXKvkqmF/Far4Kz+UGkiEV6J5S1XuCGjaqJawq1KlSYlxBoAxg
+ F/4balfBpiBn5cs1gKGGjYHueF+s1aGTVGSZcrkEXwqAHxRWIo18oVKXoHjkK/6AwFWxMcipjbLU
+ ALCr3gP8U6vWsCMgN9YKWQxe1zArshZyFXv4PKo1cRxICG2ptl2qAjhV4JZqnbELJAcur1fZCGiI
+ 38AQpTqyTKVUApYBcgUYB/l6k7W/BHAG6WAslYE5GtAuRlRiPIh8BfYXEq2I3zzxqeSRBc4pINhQ
+ rZLEyDJ+FSmh4lDTBvRWEfu5gqOoUkXcIRt0TpFVF3GohIYRtJO3FpAsVvk4qnsPQBzxRLbE2gcj
+ CarIRhJYilAZNY8vi6yIOoCZLzbET0yENQBmhcIgRY11RoUzBiPfABFSB/lQqtSQjYoNbD1UTtSU
+ PwxLWIfTahmzq4xVsPZlABqTw8iCQVJFWNl4BPZmoknixUH7WQfgb4ZUmWFaq1WGSKj6eVQsFdgI
+ qgFyKqQvlhAQwFLCEQQ9WULwMHOtAKSbrM6QtwoVL8M4Bc6GFgLJOuuLMmaoMTHB5UG1ViNQRI3J
+ xmqzIh5KRS7n8C0OtionX+c1BflUhDSQsl7CT8hPjSqjz8QNPpSgOdhT+DCU2MDz5Rpn1CYyahHb
+ xn5zyXXKm885tcSJcUbFtoh00IGIaLWEgFagX4pMEGKHYLdAh4nfPO2pxKXAEIRiuazW+XjDPq0z
+ pmgUy9hsGAQNNk6rOCywVjXsxhorvwrsxX9XxTRTZJjmGYVmucE6HWpTLQ9BMtVLn/cqMHZxlFVQ
+ eg5R5IEYP0VocX7hjyp0RxGKZ2MBBg0S4b9wjNSqEgzXClQL4AYOLOHbmuQnqMHAqvKOBNnbqLCZ
+ odxgMwPrKD4zoGjy54b6sF7AkclAgakQyFZwUNQaDRy5RagCK6GOQzJf09lcW+QV4RNujU24pQZO
+ uFU+31YYV5cAoSabbnG2rbPZtlRmsy30ONQDmaVerXAWYLNtocwftqswr4li2VQL+VAos34CfAvI
+ qQTnJJDQyH2s+tDyocSbw3iLUS4xfkJBUhS/kECj8XlUqmPHwNhnr3WcsBqFKhJqwqRcLqMMQ04F
+ uQ5M34BhhMO8jE3BQQrMgixY0SWYP4A1QClh7A5yApgTJp9qRYXURaZ9IO/CaK3D8ER5j1hCa3Ro
+ M3JbBRlNgpmv2Szh13IJcyIaODdDJYA3sAE4J0GDUIRU9SqMgmYZhVNJKpcYkFBZqDNM8zBGCasu
+ CqAGsmoZObgJ/9X1Mp+F8J9CA0EEiUWgvhVQIkqso4uMCaC+VeBoFN6QRmKTrc7EOSowDTZZQp0b
+ NVQCatj/VRygOM1WvImijk1ogsCplEHsS3UYC6iCVFDf2QYoq6VTENnNankb8K6pbBJHJoJBUmEy
+ HsYf+w21LeIXnElR2mB3l0BrAREk4YiCjsPfUAYAB8OsxkbhNoyuOpOhoIrgeIe5DGUZzvLlotCj
+ QCiL38DIIHP4IANcKlhvqAAU2UQNh8lD+P15BFpsLkkzRsU3bl0pKWbJX4UlxxfFuSZs9vuSqhhg
+ Ckpgpw8GYN/ElWOigQo8kiDlh2jKJOvVHiuGRxvXAu003TqekICZ60qqbtq0h2spbCVR6ioW396F
+ 1HMRMsdgmvhkHG1EbUnS0QBJJ5f6PlyEju6CufU9KCQpfQR9YdlOsy1tMEDVYYJ1WZmwLvumNWJv
+ FGZqp5p2FlWH1ML/4KcN5hz3IBTlIhVRKn8/os7QhB4e0PC6xUvWTvTXWMuJ1OuTUPsA+0k4JC9l
+ lj1ETjPGbnj1KBdHmS+jf5p4f6roLnyYeM+cAMeWeaoxK1+xqeRaehZQlBPlXFZcdARCxwuHTtAe
+ 64pKh6aOXnS5Qz8ncQ1u167iL6BAXQt/4maSt5eKeyVxch5iCIGEjSehTpDY64k84fqxURqkkMMc
+ 1XUdx/Q7Bfuj6xg+abYYz0G33e5Ic/wliKBVcTYLd7LXv6kdHWJ1XpOsdZu3Wm9fT5b0UkYc16Mr
+ tuEx1i11JVw7T5BBLVW9+nebXP0LeQ4CMnU9JXU9BziPLemk5hRVcNAvbDTJYv4f42NHeI+BKHbo
+ wLQu1nLbYu0Jqm9nze0JBnQwzZqHDdS13C6UIwVtk7h4miSSLIQjoCTI1fiMlLgAOHUJDqs3KSSr
+ E0ISs+J8BRMXwKHi8nNC70eWeZkfcayA0UUs96y1Pc8/SvayeRy9hyMABjJu87AtHMPsg7Qwz3xs
+ 49UgcZ6Zi0UycEQiA4xgcIt6Pol29BSx79o4UCdkQThDgKTkTZ0+IuGMPpO8dHUvr5eRb8pLKCtg
+ 2o3MUlpoYVTgN7EqO9H9c/bkrKE8o3+8as/IN33wJvYZOyBxjurcRPpkVmN/60fM+wGPVlArpq/o
+ WiK4fCn9FsC1FR3d/pGcPNQAaOtisu4LizcqkejMqBigG8+H+R61iZ91Oug3Q7hnnhm4FYiOLQEv
+ e14SSwY2ZS6A8yMtfAfvEue4mJBpT5tU4xYbXg2POs2PLmbDA3pQpE3G1LJRmIACfKd4n2n2UAeJ
+ sWQQY5XhH7CobdMdKlrSEJyFN6dxl+Dapqopus/KzD9+mYAGVQQkXF/T5wQXNBGej8lm1wCrCz10
+ sk2KuDsKBh2bFQnzcQIjR7PBeLx4TgzToLPnypkdMyFleKGzdZKb9Me8fZLaL1P0k1ldwxyfRe6U
+ 7ngpuzoagdx4mKXRo65BwyrMLI3eMHH0io3uwDPsjWmT8OvF0N5jlc2uwY+UMfxnfYSaKHrC2tgM
+ XT6KxoQ+n7VzPOHOEWSnXrN1kj8r+OaWLy/j5taC9FQwKczRSwybxP4J2hsHPTyckl6FLWVVsZxJ
+ gIIOSlrpVXwZJAhIwvGX+ARmOCmqQ6p+BGkm8+Kj3TXps+OXwyBJqtsEglG8wo5GdMSlv2JoaATB
+ 4xMOXlKB3nIDSt4p9fKSaUa4TmMvHQWT9yK33kHr1+WBEPAQ24CfJslH/aQSC3BMR9GnOJeNUMSh
+ dpbk2JSUgVFNWSETnXz9Hows/LElOzFMpvgvvdds5h0PMiGpOvGFpFivpryKOJixn+l5pmTywfNG
+ jQbdbdkgeDQUhemkI8WEfQGV05AMNKgLskKX8C3OyyTJOQqLDu3ixJrg6l6CpH4PaS70lOoFdOwD
+ rVTvMR8+eAP8NSZ9DZqEjpAzup5njM7aYfKMWKJ6kiZmNxTLYicqQg2ckjFdJ0mUu0dvdzc7R0HC
+ 9Sf8jRj2qFUkIyTiOPiNyoANz8K9qZcGoF3usRcCiL+ZlItCcZSEf2zM25KMvA9i5xCTCndAcYRa
+ HdkfuhhH4oPtgOB4LqDzNFIPcklaTyo2GDIWzhN/mRDIvoNmjUzkkWwqZNBfgqEerDimpuezf3iF
+ WMqcNlyWGInroemTswDpwoACqrjgraHLZRoX4M4jMIGFB6BwdXJKp0/raGnfurrsX11a3FvXV+Po
+ rEMZ4mjBGNJQi5m2vurp8fx623THfIL7v//LZWuMbICRRcRhj2q6Tl1kOOa6mrH9Iz+bxLOJpk+Q
+ W+zWv+EHQtBnO1u7xQmSoMEeBf/Ey2I3uIXHYpWr/2DHWbM0mO0kSZiJfeCN/q41sJRT+oIR+05T
+ NUt94fCFg8VtehtkLZ6A6EF3zVLNMakkkq6HM4abuIiNPKJiJ17aAKVJGgO1WZxt9vuYsxukX99g
+ S5v4O6lL2cpDpPlT5ymJ2aYSnrcZQPuMHgMlPiugXUDJyERr4C8xNTRc1vSivKMsQ20wZO4uCHp8
+ /ol30n1MNlAtzWHHzcqVSgEDNFV5t5DUfvFHoOZQty/hQphUrANlaYBh4qikoIQFURslK4ZorM3+
+ gQisJj9NKg+0/gv0HKlVVg8L+qu3m/qwddDaaOFfe7u60eq8brU6rV32At934J+d9jH8+/ZsbU0c
+ izhm1SPFenAAAX97xx2KtYLAZtp5DH7U8ezC1s4u8EhDqSgXatIPrmbIkcZJxVLhHEh6x8+9E1O6
+ +Vlhp6GDI0ozz4Bct8zMrYbaBAd64iIRxtWEBAkf97E0lcZ7kZBiYbVZJf/1P/93nFp8mCQyOpm0
+ RR+S9e+F8/HvB4oHxngkiaRuiMM4CWmSft0oZ9SvEySWpyqHVPik5F5RpUJ6UYSMTZsdsJeKSY2f
+ 5IJ0zT1YHPSnLDJUAteDO+eWXc0BXcxSsHOz6Sc6Ox/PMoj+D9OI9q8PyfUsHv9A5CRFRjVJAbhf
+ yKRDczR7wp9ETrZYPgEgJ5KmzC1Sc/dNHT1k527umOUTzeVElqG5rGNU3Mbxm4JBHdC9F7hUn3/E
+ hH9LUFkHg3VGSCaMKRL+vgywbQEpxb4g35Gjrfkh6vPckt0XWHjkqEOOVBaiUtrSWM2WAYx9/epS
+ A1PmGoNGp5jRHzaC0FKMnOPh1eXVv7LTu2MTjH0NfmBULuT3a8gPByZHXLEbmxRISR4lb2Bq/lzk
+ l0skss8LxthTXsnLAB1/RxS3p5nXETCMIsvtyxJGsL3JaU7DQFia0VeJqu68SpOvM5WXXmf6gboG
+ te2MI/pEpBad4WX+ChQlr6lSS++6I5sUpDLJrCx5sMkKyywVpJoUaEyCpQXFBR3Vfvt3eQgsm5Sl
+ 2jUQEEO6nISAoLg0CNTAuL8OBCK/5L2RkNAkHB75RceDa/xE6ZnzIsENBwlzRqwH0oI3i97sTRE2
+ aY59H7/hvXBe0fQIvUVv/K6p2Zplg1YMbTqfs/WYRdI5BUnEyvNhiFJedBxaPWXsUB51sHdh6/Q8
+ u1IohTOsM0o8GmGEVPqeAWv/3es41aXXcYShZZOhi3WhyFzcazfrwFUsB+oLWagDFq4gJ3nkBOe2
+ IBHo515pL7sWkdf9IsHg88r8CtSlaZBL23h4Rcu6Rjcde34SJrCZPNoLKjim4gIMRFR4OVLIyLVx
+ 9N8KQuwzpysJulGObWvG1SUUKpE9/nkZwdsfarq5yp5NeE+doWHiubbbwXCM1G0T/qEsFSctBaV4
+ 6xpBOrbE4yddSkhNnS81wEsvNmdmX4dZTCno4TKIKEXq4xEPftyDZQuWWEU1JNIKqrGMiB5SXRvg
+ 0Z9bwdDyqHnKs/f8wKsi9aXXGDYtU3NWCVVBouCFS6aWrcMwFjW/xUri2aQeUpLwOi5z5EuJjp8M
+ 72fDFETi6gLpiJRfgY4wCTJ/dTtQy+zRs63w94IKjAQYXlGb76/fChDsvDgP9kqlASctcBEFLQ8y
+ 3vC4JWi8H1JfM3BzzJOk4VG4HMDsKYbCT0PcEjQjnyA/44TOUJ6bpv9pefBpmwY/OfLdrQp0dPaz
+ NGr5n1VRju/MK4oFZbDDUiwPZG+hYTCHOOyKgxEwAM26Wz4TNTMgLQnKArBQoYjZ3tUl+/rAGk1z
+ 6TWaI9XUcWUR+H9Me8ogu2Vki5ySn090lU8S+mn/6lJ8/AoUlzCWfrtBtweux5tJ8EAAq9LM1SWL
+ DRRU7TnBnB++PImYH5WcLKgMScalHdxdfKqobJa9LuPJ3s0LYCN6tGBo4VUQGENBUpCr4MfAY9GE
+ sqevpy4cenvs0h6beGBcHzt+/Y/tM5sdzObREpaKu45MFyYIw6/9teGxOSEfHk/IxegvFTj7N5X0
+ sv9L8sOWeKsyEYm/4JD4rQipF9fGJKS8TCotSwBGwB+bmrh44kaCpRem4hnc4XdRkfsgClwpmwK3
+ yBrcBkonftHId3hDAxlbipN9k6CL2Sn6nUFeycsruitEG5Q5vhT1PlRE0oEDhuCXpNalAixtXl2e
+ Ut2EOrO76P2wTTdBXu7REE3Jp+kNoJQiF1Z9SUev7eJFofx11pXvFMxUTkpCQp6KJ6gD377XFtZZ
+ Jh2dI6B7dYnV99t8I4hsoEcl/6OnxvilBDVZOqgOry4H2ghfjzRQ5V3rRkBZdMAiWwta3h4KL4Mt
+ 2IgvS4dTxzbRA1ezRzdjJQp0KCMjwLn654Dy0qGC5+rxZlJqoFM+3tc2wtPmN5NHjKbESUqCou/p
+ z56IRK7+ueeqE9rhg+hBlaVfyNrYhI4duiMz8/BnYUMx1ALOE3z/1PTH+8bmKgELeKCwEb/NPn0F
+ S1ghFPE33kbH78NVbwSq3O1JSEvitHyMYRAcB0UsquiIYnIyl2f8FEBiTvMMjbDn/IJDwUfHzVAY
+ MRrBghM8LEHL2+ZIU2/YcpXR8HeD8GEJWr59c/kqR8RsIFgfcBentvSTX+Acbcxzylm4WvM80ql5
+ wW77jvhbr5I3ine1+Xue4CuYBuN4xi39nmthLPCbwByz8wXFZCtffFxQATEB1hFe2p71AGQyODYj
+ gVPkuWepsjfLAsEGbg+ga+IrV8OtOtxoYk3DcQSaUBYjbIBZBSKSn2c9TnFpMGERj/BZcfSsikMK
+ e7BQSrbECPHwQv7GHisDQG7ht2WBZgPvjxf3+5KxcnEzdLrsNnpxmASpeRpmvJRlgUdMQcA5hjZS
+ sp4rSkFHPApSXsA1f5Jr8ffLAg2L6b1Kupamonv7iWKB9nEz7kFSeG2RKXFqHvfgex1FGJgp7AP8
+ fvCFi8bS626+Y/h3xKHq0JgjesCI4jsj5AMeUPCdcQR1YO1j/+NXoMIlwirtXV1yyHDDU7GUETxr
+ qpJxx2Ya3sFHRpcysp5l65eKLlGhYhdUyiRjt29fqMN5zs5MhWscUJPYb8VQ9At/NSRU2FKBtOPd
+ 45J5A3YqSlqInEAmXMJSQbM/vGCnyGC20m6PjQRRSR1q6LDtkfbPXfHPMGdtLMmJq6i8UpwhnsGb
+ J6bMdCkFBKlHz194CxeyVPh01FvjJKpGOMej/OAaTrGw9CrOrmIMXNZ1799m1E15Dok6nh1DDdBQ
+ vbUpQQ9mUxET4/3br0ClCcMobVmKcfVvimYT/ppcXUI2Y3D175mX/5IxlvtARgXCEk+A25vwg/o+
+ A1u7nQWVERGAWsZAh1bcDAuFE/HORfOnJWr9nLtVM2CAZHiixZC858gW1t96qmN9OKPdD8qpoun8
+ ZNnFWqHoA7fo21sRBDv2WBkYZkbTIA05Kqh4s4p4XAYAWrpO8W7NG7KOoOINIfG4DAC0h5ph3lSC
+ qJyItz7Jn6654ZX0HPmdqhT4ocu5HhAK2dyjfQXvs7/7fUTTxfLem5qFK+B4+4tNLOUi66l3gWBS
+ fs8NNVC9YleiUKM35UKUJ/41Q3rahTX80tS5LqzhWZbswpqOFLsddv2JeHUrV9aIu2czXlkjQP86
+ rqxhdzp4w/Y+7nYQ/Tr3XS28V65xV8tCtj77XS2i3XPc1bKQDd63zJFpk54rrsXIdo/HmOXiIzK3
+ /pa9JPzlYje3w2XIACPHajM3pUUfd9Gl3paUfp+dUxGvJY+Ip8tFSS8FDlkC7goQ0gLuSqNxOYpA
+ NOLu9CtsHgyAXc2m7uyjt37jRep1L19C98aurHm8ryatC3zJwy7tENiiS4M6lIY9aay7ttS1TOMz
+ ulGf6sBj9VqlUKyWCs1qtdTIcKcN7yN5btL3fa+N4Cb0elWHZHuTYAUJryB5zyoY3P1SKtz0xpti
+ 0799JtLs0O0zY+OWb7zJWuYt4HEHd+EQUqw08S4c0mxmWtd90Otwbmdk3dvAwr8v+9qcL+HWnGDG
+ zHxtzqTK8JVdm5OEWbZ7cxK0rWn35ixwczPdm5PQ3Gn35ixwc294b06ilp1wbw51rnd1zgIjN8fV
+ OQkoXefqnAUGQ0S2Z+GKrSy7/KkCwwubHyIVjZ4f+rAMyATX3IjbdeYHZq4rdZTZN+osytn6RLx2
+ Q0b6XZv4EwAsTKiORdaoMl6qI3rnK7xUJw4U6BSuxTZ6CplulYkhl3yvjmDpQuxWmQVFYN5bZeIQ
+ zLxVRsAxcavMguKR/VaZOBKpt8oovdRV7IVp9jy3ysQbnv1WmQVt/PwzW/xeqcWd1pb4GhWvn65z
+ gsHfRXw8wTAfrtc9wpAB8JsdYVgG7LIfYcgC1zWOMCwDSHMcYciCUtYjDMsAzVzu+JlGXHZ3/MfQ
+ CNftyYQQl9m6bkFCXC/ayEgMKXtjaOeLKbsMmMwZgzgdmXljEC8DONkj7qbjki3i7jKgMU/E3XQ8
+ skfcfTytfe0lV99DXNiQMABnnmry1luznmoKk/4aLJ3oyabdzo3gnOsA0wLjENnjy3aaaQYwKcd4
+ oqebiEQiJb9/S5YBrdZ4jNdmaLaNISpuFS4lTHoCrEjBy4BUxoNNM8CZdbBpgQHIeLBpFnfMONj0
+ GMf1el113Xj2nu929nj2k5HsJ5D7ombZzMHGWZqbwH2daOPLgtU1g/5Px+uGQf+XBbsOejXZLFS7
+ Tc/Fjb03Ao4KipJHL4hJ7pWFN6z7hS0fZJmDts8AKlPQ9mVBZa67I6YDM8fdEQ8ypZeXf0rH++T5
+ FexXlzgBwOiP34adrQunX3wdur1+lV2xzkvzb66ZuIL7a5j0M2AvbaNjYOYFyhm3jw8FMS/Cs3hc
+ UBGTBZ79oaab4rr2eTYPZwA1RrK2Cf/wm+3FTiJ1hkYshpWfDszNIz/lMiNq6ty1EmN6qo6Ym29F
+ CMgePfT6FKVIfUVz2O2QIlvgbC6qAWZ8UI0lBrY1O/ByRhTxM25bjhRp5NohG4pXo60ZuEfJ7uLl
+ n4OYFkuG2SHVtYE2OwxFNuAsj5rnY+Y9R9beH0STqC+/JsGuo4ZexBNkWS58F3026+JpbxHLTwYC
+ gRclEe/Od/I1aAsT+EqvqM246DuimqOxw6M6ZTXaZl+THtCk0oAXJTrDKxgkTDtc8oJK50nk2Jtb
+ wok9eqsB+HtpUOjc6kCVvR9SXzPYvc1BuEb2fmlw2VMwfnaGCBxZkRn5BEFOWx8pnvoPbtYRn9h8
+ 7X1dGqzapqGabtazhbOFjmJZGrX8z6og79/Gwx/ZRixL8bALAM3ln7azX87mrdU8Xs42Hcb5bmeb
+ juqct7MtNCYZ413OBiTT7WyLC0Wm29lmoDDtdrbFbXmm29lmtHza7WyL2/JMt7PNaPm029kezHBd
+ 5hDYvgeCd5+a4V1mIy5cyeiF8HhX29zIShNXZd0Ea34fF1tF5G88OzX1Pq5lgWnO65WmozTn9UrL
+ ghG/WGyV312Gvrt69tAut3SH2bJAlen6v+nYzLz+b1mwuNa9kdOxucG9kamT95cUbtrXjK4dbzoc
+ ufn24k0H0YwzxJv2Lu+DalKL62nwrstClswXhlqEJ0+mtGTRqdumO2YzrWpSUHT9DOtPol9uJVb1
+ 1C7IGsJ6ej9iZGvbudAp8FB+RPKTyliQ9g8+5nj8w+ekViiMz1/85cmfkDMozHYk58yE/Lo7MkQe
+ 8fCclF7go2i1TvtAxTANOosI8OcfExmL43Nim7rWI39VG/g/QSXUiBm1KU6rzUvZg+Uvid14a7G/
+ lzWkKuN3VEUZv3/wAkA2641SqVQrN0uFRiVD2FR+cwE6z1ljvnB84tqqC28ilO47SuprQOYzNWgQ
+ +rNYD4X+rF8nFGqp6IcljbQNTNDCeblQlor5k/Eth0LNWmbWRt9JvNNSYbVZwIinix/uNDvX3xrT
+ kxhiNwtfmi6oylMCmJIhXgSNEUopKMaGrZ3SeWRXpsjTuzh1umM2hf7f/+VaQYD4yTbFCmaiGhiC
+ njuSAsLReE4AUEfrX0yIDHusGOFI4Dmc/yzTGKzvonMnHWkg0jvHoOAgnxj4xKJDYrX24Ql0i106
+ UjTmNy5ywg+gGi+JOfzx/w9/wbP1mg7Urv6F1MoY72iVqP/1P/5fajvENShxXBaOGL4OUNkmPfiG
+ 72m/r6mKqjF/wnOVjtmZSqrrdBWVwxO2XwSTRB/X0ya/9DDMkK4Qi0JnuzRPjhS3TxT2FYsYutoq
+ BvNQKUFvJL+WBlbNIAoPi4xnW7FqfdBsgZsBCpuoSk9h95jYmHQ01nToslWmq45hAsZ/qDWijqOg
+ PUChBiPkOAu76JMLeYAeVhY0IjICxVwb63iCNg910ICoFtQFIbKBMRAOHDeUDHQ89AS/VsHe0Zje
+ Z6ug+vJXjKpoAOYdg908MjUAAimMYAA7loa3lUGdetAiZsaQlm4CXlAppnKrYAACIho5pS42jOhA
+ D1TMq79DE1axGlg+YQ0JysPCWBhp7AikhcCtktHVZV+jn8GQgm/Pef0U7JXB1b+qQ4CIkj50Mbx9
+ SpEboNd0PIZOjWd5wVDApQNLgSEUY0ZQXYAmuysBD20OXHQhwaGk9KjiMi5Sehp1karP0N4OA6++
+ pvN9Fox2iDHPFD4eGEB9vECItIE9YYzhTW8YyBALKjYbVeg5SyG2wkcMS49j39JAKqPwgPIH1EB+
+ 2cZrOYC9+SECLIVVO+B/cmKiNRKv9HOiAeSXp1eXFjVUeHO+SnrW1X8ii4MwPGGnOvJk0w3wUM0R
+ zA1QusfBp/CenCgj5CrdXcXVDT8NfNc1izN5fmLGCY1kT1hgtEYTmFwox2STy3fSASmuX/iSYZY0
+ TpPFmS+MWYoF6PikCczHrNhs11pNsxvXfVqxue9Wl5fve1EnDa8Pc8TD9pSMcJTjaUDGw2TPvEfk
+ AWHIGMRSQOAHYpva/hkbqwvTdrbblmmbTTQ/bZttKhqhUhYdEPSvvcZxDoHOLAf5aSCllbzoiEXO
+ NImzRxl5Kfn80nRWSiht0RESq+mZd0g9YZu8XD5d7saLWnRs5vV/FtjMdImbitJEoWkoLQJC4fCI
+ nnC4jXvmpwGUVGZ8OcB3krjxakDsnpKl1UIpGHbjjAw8Uw0V7+JB2G6mipK0tewc8VY9xkoPUXxO
+ JlxUFkBmcIQ/7MK4IG3T6OsusuYMxBWtR3GVUfIhtWXVzyzP2BaJlbW48jSMzQauBaizlbokaLpe
+ 3kzI+CUtBzDw7EibYPFfA5gx5sX1g0zA+CUtPDB8keEagFCWcRYa3hrGgqPQtmBunDmzJsoSnhPm
+ HJDAimnMFClt6+rvfo4j5eo/F1mFFfC0DIOq12EShWWcBQknv/AotIfKqHt1aV0HCBXzUmsmFH4Z
+ C4/GK4sa5mzvnyQwBiLrLDC8IhYeC2TgkTJ7FSltiLC8WUYJS7jwcOzSU0VHA1bax32FWUfCklDR
+ fRJjRmLmrBsrcuExOgLl3JH2sbHXwcdm2ccs+yxsWFGEF5V+7y//GdlMWEiHuBikx54vmxr1prq5
+ HZZCmVtkHlIZPOVmOk1ld6AzqNu3JQX7/VyyKLoLXMd9LpHO8vjN8ftTCGsE7odiK4gK9cWYGyEv
+ umnpbtOnLhHN+TzqEjsW/enu0lvMFwBT/S3SlxUyp013Lbv3+9N33+wffjBM95QqrpNxKS2xd2RG
+ RJfw8O1pcHziDXtLvLeTB1aCtpN7bzxvfZtt7M90aZ/WdlWQ8I+U8cdFbO0e1XSdsivDTtHN4ybN
+ BjnIpDcn5K2W+gUQ/n4aCg8EAmvFSDO0GzTep+GvU6I4ZS9QuHJfGBD51f/6n/8bIfhmpqfVzVy8
+ OgZRaVanrqXxhGXdNaKKVK1WS/VKtdksVet1Msv51VvzV/ia+EgZsEBRESL37fYKhRfqxUqjVmsU
+ SynX3lfr1/R9LUt7imXLkQZKQPu8WCvcle9rljLnavmtOMB+8803L3tUXyfFovB8hTFAdfEl7KKI
+ MUZ0KZwxTLzGnWYxE3dB/CZeocXzoGWjpesAw8dHTMY9stnj5b48ZhtT9sjSlLWBpfUkoQTe7HDy
+ 8h5IZiwwj+NBikaTGjb1Sz5zHAbvg0XH0GM9prDfDpByiKQfP27MDpz2rv4DXgZB9hYQD+ZlQPEs
+ 68105TAgnKbNiYbCtF1dUnEMN3QqdBFB6eO1swPhA0ZnH4zNjMwEYe92E/EeeUZ8WWiAvEb1XGlk
+ Gr3bkklynG4stjM73wCvFxobbIjUNTXbnn1qNTMwIYmN0a2BT7wSFhoLcSDE9hcQbg2QYHVD0o2x
+ JSVMbZuicH+dYipWU0OiLLrmcce6Z6IT4w16MiDIjqKw/vobqNTWhzPa/YDnDnQeOfJirVCMOUTa
+ 7OTCfeorDzOEkkH/gHtjwMq3B74sKNoTN3/siQ8obCav/lgkcZOC1cAyYS7N6vaeDS2fphdJxnsm
+ y4SMobBTYDP9yuZBxqcpUaMPb/wwMuI1sBH/sExA4a6YHrqo5BbxipP2l5nxdeSylWUCzHAdS+ML
+ IrfHWR5NCU/X2ewaPLxu1t+O8L4DajwFHk9jKZYJOtbYW4QtmFv9W5xmwbFQeAS33/zlyS3CMnGp
+ Tui2nvCtifcYNW/JF6Yc081y19H0TSdOQpwEmaURHovkMOAN/wDeF71+5QH0Yaxc3FABjGEdPAvS
+ IdcQD2Tvy0KKUx+abKHw5oEmGhFPxMFbTE3PR0GcpTpRLJADt8spcdLRSIHfEf/DtQ3thZaid9yD
+ 4mDbDfpLHKebJT1FQV+8zBTt/MAiE94cVh7hMBzbcDElgdds73ClalHQqPq3wFhynGTsSKZqXV2y
+ 9wuNC0aovAUsQoEuf6CLOit4bWantmEwg2y+DQkjR+hJXUtTTT100Tae8x5dXfLPuH7kJbjmxBB/
+ jq7Ipu8WL/iEcr0+zXBf2LQuVIJtp5aV5M7GmvnlzALYyA9jqhlMd8GgYePM0UDSEZQnKXoeY+ID
+ O1csPi2kbGDAKJY61Bzo0FuAJEwLdzi1geEzWvCF73HCt0UGhd08qJq4FNG/OSxhapFYGMzJxlrc
+ KZOhMTJvtMHLMEAa3rYC/FzMyZJLiqHpmAOQY8OMgRqmyYgQLXExo38/aPAFo3zwmxkXFxVxneSN
+ 2YCTkTC2ns8P/B3e3odvFxeDW93MZnDEN7FDU/Mtbl5H3t6JCrS4S5NzBb5K7qnYpULhsFdf9g60
+ 19IPit51R7ZUkGrS7AsUskApRyl6MyJ7SeAlxvhcSDngQ9IzVRd98vnhw1tAJELQkwHhd4s5ZfqA
+ 6Fy5s6U69qhEHQkjQ94GMsmUvZUH8ZHUkWcwQiV+XGyobrj+4AMzzwLE8i663m2n2ApGwb0JnwoK
+ /j4re/rijWrR6g9DzXYwjLA0oObNQZTD5IR27F1rJr6Amvjq6tL7uJAD3cPGD0nWc282SXjoRAl6
+ HOcFU2QvFxqQW1WgPVDiOjR/L6muHlqTmdSmCR+pLKYxT3rdC2Onn4aZLg8fMsTAvjKm6AhBb3Dr
+ ztSz4bd2C8+M4+OZIgvYGER7vjAC7PIf2cu6TJED4jXGKAH8nYgIkI7U2OOKuaDycy3Z5UT+GAhj
+ 5b+8lfAJPjRZgyUEPfAYGuEupd7EkfYZss7vF3kUP22f7ZD84wHxzL2kKjrMyoqDp3ilSrXSrJZq
+ tUK9XmvOOiMe9FKEBtcXcelRVWzN5M9SuSpRiQ+6C2cIfKtBrw1gLOJytUTPFfgWLf6+j5e3Q40g
+ fiNC1w2FT1vXrnXHUkEuNKUjOnboqGtROdJcqVKvnlcLd3PYfJ6CrwfGndy9VC+tNpvLcffSrGH0
+ sKPotg+d392x8zQe+bIXSIKpEgYe6OUWWlDfgWwzejNvqQ8YSKT31nj505e8PjIVtg8CAMlGf5gM
+ i8cTQHr/BhSi0BL//YJdvJsRF7yNiNnqcwMTZJVspKT04sj4CZYSGmdIR/xoxPWZJkQj5CXKLrFS
+ mXH1ASpI/6G6UfiH6uaaVMOLx4Z2AKEzxH1qTmCpQAy9m2fu8/JMActH6bt0j9tQ6dddZoq8XbA5
+ 6D6sNcUyP7lYq5luGSFDLZTJl5ehG9vx+jp7ldiKik6KDtQTz3J+HZNTGFDJB4MdsFbnMIWTEIaB
+ I8hJSCwOuChjYcVHBJljwRS4UNw3XQvUWsd0Z3mTzwIoREny2M47dZNc4OPBtOvPBkONeyH3qYsL
+ NPNMACyr5GWUcN1OMsxgyWeS+NchPSbb7b26DXD9b4qqUts2Q1quKGVhhUcCMFu3yHay/041x5qP
+ ilcEuhKy98uEz4bfultBCH/6V6n5r5cJEJgpjdmha7OOJEZL8tL0JIoX0bphPcigzheplt7hgb2g
+ /7ZgjjYYoNk7rB/k8Q8NOBpe/Bz68nVMJCH4JAYCAfMST+NT/TpwymOkAZzBvuhhdAPCCysLwmAc
+ W8rVv80+vpuMAhYRHMfySC3uGF94FRJv157ltBcWyCy9L2HZ09cxnkVjpQ38f3bhnjnPRMYyy11G
+ gmf2ZvIQvYUdv17jxZxKeiv82vfZZ6smMfAm7rQJO0x84QERrt3sPMz87CC8xXnuqLM4f7fw7Wfc
+ y453XHMshE6GBLQWvtlvuyfIwhj0S9Hs2eepxOlydGxmVwHZVOcSEOwej4ZAgZMm/uubzm3zniyO
+ UFs0vfceurgzr1yLSTEvPy4G+kL9y58evWZfHz//h4RXkmJEq/jKtg+tl2Bh5YSPRtu0LDE25sZD
+ 9fP6EfS8F4vf8I6hsjEwAsbNPjcEbVesLuvjIMx2iN7i6vv3GTMhNC1hJSh6ymWfhf0sHnP5L74O
+ gRW0V/x0LZuUiuel5uqs6yeSUBQ/gYjEiEj1CK4h4gs7dhMRufoX9JfWZl4qMAMTReJUJkDx6S8F
+ LEMWhNMmZWIp3dkXCySDIohIZYkT8TCJE18GRPZNaI6DC3wwyPsmuwnhOqCMPToSp0ODBcSEEpYD
+ GQubczqPU0sYEMuE+lHJOz4bwAFkGdVlAOEYnt15ts4CABye1V/pY09fwcR/N11i6qalKQMRo8bW
+ squjqpdV4hkn3E0mSH8l+sNEu4NXNwc3+BJshDoW3wflB874jbauLu60XUxJMInR5i1xn5zMjZw8
+ BnYVwaq+SIlxT76Gvn/8XJ6FQS5/XTf07isRDuEmSxVijq8uLeZZeU0oo09SRTKh3ZygQDlSyOJK
+ hEgz2BFvR+vP5/o7DRg7TDF8kNx790XKg3sR5RZMP2PT6IkrL6A/5rEKeXJJjZAJr2sFtF92LSKv
+ eyV8JQIjGV6pY5xS3YQ6Zx8eiUjL0Ud/idVfXfOKWVzJkYLQ/i3woWwpI259KkzLkngqGGFjoNGP
+ nypI9ITf97l1unhJFjBJz19HpIXYCfvbC64QOW6eJZRCaJNurhgB4YxLFibAi2/9nTIavyAYbCkS
+ W8H7yr7cStCAMFZZ4wZEOubeQgdcb4K5fuSAiGCNRA8Ihw+4u7EcdDbiPHcQgcgW91xxBGLickJM
+ 3kIsgaOrS7Hfzm/anBlT4Bqdn71D71AgxzoxaLcdNFzanS98fjB3ugaOUqkhjS6coaZKSg97kXVz
+ uVptlBuFQqNcqFZmBs+f0tu30d27FJufsauXKnxErH/TOyR7NIk5O/XeAkT8gD0Iao6paleXeMXX
+ 3oWNNXZHQVyE0s2DRBTlQhkPRtkCiPzYuO1wEMlFXL+RdxL8odRcmuAPsUGwj2NUc2YOhrseCzeN
+ 8hDvqnuL8VD9ElcuJpiEjsA8I1f/OvveqLAmM+b5pGAhPkyJPC1IJYzP+uxLXqWYAqXUOQWVjmD0
+ c1XRoUmGbWY44ZAGsUyRnDRBzlulSC5swZYspsG1pxjaGFcrNXan58jEZUu8CfW6gI1CBCWPXHDP
+ cUppS4SYeLBJluDCaSiJ32ETfT1C+M5Whb8G2cpiNH9HBPriLuR5usp7iFyvvBsh90XvG8XwjLZc
+ OjbHBK8WmUuoRiGVHXPMglZ5ktSnudiSIIYE6NAZNoqm4SCWd0eckC8mrQWM+jIdihYQOEVR7pvX
+ pzcDhtOj3qrAaRB9KamkR3l5U3kJVh+g2dfp+Wzf8EjHMRI9KkEGnjkcKT9C9SsSmZONl/bdz59n
+ xyaYDq085kQ8lYE/LbagSIDCe2VDVhjIg/nOK02i4r1h9OhAozEWDMp5lBO30JNQRUDUzXKKJLHj
+ wvmlYqyvwh+/QoERwWYXCiOtOe4NnI22rANNKXx/oH+/S6wsshxiJdK8N4phsp27WwDK8Gj5d2+L
+ 52nA3MEJyLsXPcsgezrc6prL4DZdS9KZB7+jOXZU0nhWHHPtedq7+nc85vC1LZwBQMypQQDEhxRf
+ MqbWnFusE2jzcUV7rhq+jJOVcXXpvV1sGRMHiOtbt4AKShvFCvahfWHGXi4XKMcYapCdh/lu/jWx
+ CXgcj1p4aSxexKMWdwsTp7/Hd525EjNTh05obz7Rr0iMTrRdvFlRRl0NvfluBLB4I3nEIoD7RSyJ
+ shaHKGyaYRjOGy9CxGEL2YR4n+GUZYopFVlacGEMGYpm28gh11p4mIQzQnLSdAu+LS1oot95XFgY
+ Ydc2cyfB47xH2dWaPVHp5NWyaOmP891tGIrKvCptRlXtK5vmeMP5I+pvnil1fWT5I9MFBa0w1uEy
+ lkOmhBFiQ/o/r7nuG4YHxYepT7AhJ758uECWnoaEDKrfGJsIsTBAkQ9LMiNNcM8tTUdxZrrnuehx
+ NmLIH42gG7rmLCtZNft9CyO62V769bZ4RTwSX9Hc4zWZ2FeXJ+bsAA4T8IXeUEbAO4op6C22aPCb
+ v6FRQ7r6uzNzJ2AKAF2kQR1/4T+guSQgtIQPLEole2zODvU4BQxF0JI4Ic/FYKKEJYHmlQJmrGmY
+ I7Birw/KIKAiAAnTva3dj4nfC3miMIb0DS5wnjiUd4vXNscOpGU4XGiq7GJBIzhYyF73tXPag7bb
+ jqQ5dATvAf0ezXDo0KJjS7Op7BFenjOHh7zmSJ/ffx0+cjjxMXSvc4IUSEDaprjbKnUVK4Q1gioB
+ I/Ezv7Z2ihAnShYP9r/mJkDMEdPANn5cy8G4dS2D9BXdpi9SSDFy9lgxPEI4kDRQAkQVczCs8XNK
+ RbDZiR9QlcPzlKHGBofQvLLCSLBNVNTCmEYSzRA7szmtKX3TGrGvXn+ncqY6pBb+Bz9tFBcsl6gY
+ UvEAYO9H1Bma0JwBdUKlv2TMQiA16FUeXGEwEUiShiiwC2YPkdOMsesQ52JMQd7RcycXb6ehjODT
+ p4n3p4ruwoeJ94y1x5Z5qjHoFJtKrqVnAUU5Uc7REdFUzdFYpw6doD3WFZUOTR0o43DxchLX4INi
+ FX8BBepa+BNXAnVxzi+fz0+Q8xBDCCRsPAl1gsReT+QJ128tBzNVkEJefxLgyieGMId3HcMnraLp
+ xEFH2anBjMAO8K3l2qJNMYZLHC+p3Rya43g9stZsvkq9fT1ZzksZMUwbumw2mHwNMiw2WbthHp3M
+ FjltjT68XcXAUR5JhFGGofJdxTsTKbGgSc/JX2vVUrNRfcGThwryZJw8BsKSCkOU+brE1Ckvffos
+ YeCVkyH5nWFaSJwRioVG4bxcGJ9LkQp5eWLVZ00Ya8xpBmQCmBN4TzgeugNGNfQLYqsWpTBAjB55
+ OlLOJXaQ7jmpFKCEZ+I1mKfidRFe5vBAH0jCuc701aUf2K00jlwpF84r8erz653ldXKtA4M1JG7I
+ ychErqwO2EKS2PlLcbRwH76Stte3gsOjL7FysodkwIZi4onxY5gVmXkfzCHAb0Xoywu8Pi7WT7FM
+ U+YXn+fnThBd3NClKQX5k+eI2jZgBVqkGD49zQaxe/HcMA2c0T2NLpb+w9gcY/SyqZkSKx2uZH+M
+ zEdJVxsMoNv6ACSTceK08eScPHE2ECjw2BRJGPCPktS1YM5XLXfUTeoV1ipA6kMomX9a3X9ls4p9
+ ckHrAY1KojoLzkiS1YaXYXE2tR9DqpsnUMoZeINlnbD7krOlia0tTVcsTTGy5UvXbVMyCJHWH3/g
+ pXwYKgnTK/+bbsAw9Tchnoj/J8b0LleiZyih6zzZtVRO7296l4anbpuOFUtxTJhK/+t//H/TCuUF
+ h2fGeRmnVCjWH3kngXdkLzaiNKY9ZWD6jtpT2elIZMIIS1eXIt9M7krM9WUyW+OR2bIxGx5Odak+
+ caH7VPbb43mCy95nst5Eji+R7YrVR7a7NtvJqgI6Mh1nYL92ax9E2EZnfybb+Sm/SHarPbLbjdlN
+ 7luKoSqajQ/Q5Cz8twVZrv4N8iBnycBjM/lwIsfd8GPa6oVnKPFwNGJdRRmPoYPYwrGs974/sU3P
+ IPsj949s//ncyT0XUP8m/wawDulIyZvWILea+0ckAp83fCtkV7Md+IBL5Pizw62Q3PNf//AT4/sd
+ +A7JxqbNnBByz4urOVzXY5+ZksxpRIqO9vNvEb37z9UZBZT8AsIK0G9uoUCbnuqUuczfUhW2mfUo
+ +/WYnD9vVP5vaZP4zCpV/CoFMvW2q/JbVLLPrFPVrxOOGtZNdTFyfmOD7c4q+FuKMPjz9z9hvPJQ
+ Tk9iowhHiXyinCr8rRhBA+Xpik2N3soqWaG4cQo//sixX20hVbF9GowoIkIjQbPY9xb37Xiee+9S
+ 790uCkh41WnWGyWQ+8VqvdysdTYLxc12Kk+3IbdhGjswkC3hIfPcsVz657MXT4LmBIKCiYhgNkpa
+ rGBLSprRN721hGExiFnFg7AxERmSh4HkQw7bpTYx8CQNXqcpLoVOF5vh7QgFoCVEIq8sXBvcYm+S
+ hOhLeVgMNcN/PSyvkw73eyKlQqmACcs8a3QGTl0agzlpaFqRYIJTV7lEeuLliy95vRyW1mdtIPL9
+ A7nUKFUKBXkP+UWn3x8BZ1n0+21F6ymxdeZI2aJoXvJ8u4s70Mn2WHDmlBxzbiviFM+aFNpOxFZd
+ /btOCW+WtK1c/R9oF99SB4xW50Oq3ig25TeKM1R0jX6/i2etlh4irzmENed6yJSLtUKhWJW32F0N
+ BjCR+1mxqLP04IgGEa9B14Wn2mw263JnxOcHGGav0EHC6i09QEGTiGiSDxF+D0v+BPkVkVjl6P5u
+ DAWbqhirG+a2ddIWu519f7cXJXCoPJ9o8Bifg8J/SdMRHmLxZqLQZx2Ec7jWkakklFXioMXE+BvT
+ oWRkXlDDoN8ZXXv8IlRVPt9MbtL9VTkFpcF28LaxMDXPLHQUK7ydr1qADlQE5kIJWNHkF0IkMlAa
+ /7SgwCkJU9kmjWt0UCGwER+oY2o6jdK2MJFh9qHW5lnYEySppyK9luxaAXAQOho7FzPs11kG9GMx
+ i1dM0tbklNHpZ5v06VF6PcnCawfPuI/bQw6PHh2bDhsfMA0bE+sTaQNkE73s0ceJiOh2BGnEIYpJ
+ xEC8JMg8yO4quieV0zYd/XRC6+TtEjuhazm+BZ2yMamdS7jzzqPZTtkq5iVMVYcnOlnsY/vryMmq
+ H7qYRlUeUPxnGxL5wBuMRwTmncmCUfd1bTyGLr31MjEV5S4G6NnFitRoxJNAmEY23/m38z2NzRSa
+ mlfNkczDMY+4ao/xMrFSQ6baS745igYqHgn3ipdE8XLEIJQq9ep5tVCQisz5wPe74JYqL+iMdsdB
+ COaIO8VD1BOrQ4rnqw9XhxKvQ+k8zj1yIn4nYzpYIPygnx8aPqxCInpJYccRPi/uuNw8kSut1sHR
+ x19+OBy0NloHndbPrY1Bq7Upl842Nlvt1o+vNs5+3mq31FfDs487Wmu0t9Uq7LXP7L1XP7w6Ohkf
+ 9F79UqPbP4zUV7XWx11NHexorjaqnplvPmmWVe98djbf9n+wtIa7udPYPXn92e5y2kc7H3/YbH3a
+ 26oU3mzVXw23251zu/vqhv/JZ4PWYbvVetdqNbCMVmvY2WiddzbkxkFr66zVap11WpN/O51WX+60
+ NtSNVmtvIyHBRmuwL5cGrT2Wf9jaZFQU7Re7Vmwdypj340Gr1dmazNppdTY6w4NTWWm1BhsY433j
+ YGdLcX+SW/uY7+AQ3iWUuInl7bQOoD7HjY19VsbPkLaTXD+P/qCzsX/2au+UpVcPgPZmQvrB3o/b
+ gj4kO2m0f7zYls9bLRXa1W4NdibzHHaGe++2Dn/+JcgH9RqaR3sXjU21djx43SwW3ryu7b3euuhj
+ Xc42oWzoij3MfXBGZaT/YwfrP9nejVZ7O9zeg5/Ukcz67BzbuzfZgoPW4U4/1Obz1hulvP0R82wf
+ Yrz8HWjH3mSe462Nwfut87N+0B/75xsXg1pF+7ldPPv+rLqxfVosV0fFvVe7P/58Udw97R2+ahzV
+ 36ifZfkX4Td26xPnXU3IXkx8EBV+sPxyvRCVFlLIlzaHgfN9x8EpAf0falb9Qjogej/BNJ0t3V9u
+ 0nSf14LvUV4DtH4zu/+H/9oADAbzx+tLMVaZORphXJxVcqqdKoaDuCmqiveNsrcjeKYGMSnG/0e1
+ XCAG6rk5sJTRiB1q6PvAwkOpUGzmsRxHpMZ1lKtLsZRMbSzAAUVYs68uKaj3VMVbVPP5/KyqM0x8
+ qwe98EeBf2+wRDB9x5ZcZ4UpPXeGrduJPIGRxNuAKwk2lJlS5fQ+3cVdDF0hLHMiWkkbo7HV/2RL
+ KnE3A+1Lx2RngBNWkdglHER4gaIZZQ3AKuqajmOOCElzXY2sNWkG2EfiMo9s5vh6sb5aLeANH8l7
+ G9ks+9lVC1+MF/ZqlcIfEir9hrr9WaXP+ktuWfIapDhnxV67OnOHney9niQxj19JBQFvaKGrYTKk
+ jd+HFnL3jdu+4a30J7M4SvJL8LD1bfZwg4M3E21XYZDNMq5j6VPYddZGVaTPycQJHjavunZwwgMm
+ VfUjSDkdZLR1ge0baTb1T3yQjkFsB88zUTwLMzBoAk2Yl8cBRdxTlFTNUkG2OqapO9rYnxJ9as+J
+ vgLIapgI5S49Ry9G7eoSBTmeWJZGV38HCc6CYzim6+CUgGvfIMXRM5/LZ5wVitVhoUCe9lyiu0ZP
+ IzABnLL5tqc9y4cOKCUfEYkICdF0dF2AigAyn8kpnl68+hcoEypr4Q1XxSo54WsEGWiKY5wzux53
+ Rf2DWWPTdnKhWvHBHGJHTJ3zT4XJrAsBIhk/ypDQ06fkaq1aqzfijt7eSZ3okRyvxo4RLosku6On
+ TmSeV5foK4uo4lwhgugLxMl8mfZZWsAYDnanFj+Sc9N9FhhvHzz+mkpanE4r1qsFfsmidwdTaP6J
+ ZE/gj/j4CQbb9LRih8PHNnXVNjI76A61DNwhEdkZiLh4CYoSQzJZhnvnroI37PzVRFmTY2Caknn7
+ Iq6DYqlrKZqF7s/ZB3mGIQeSCs8gD/lq48SoA77QzQE/XSiyHGGOVqh+f7M/umsRC2SesRitABGs
+ Zmt4SjB9GZ39iXF4SEFqhUchDcE1mWv+gTeZa7raOW0Anpqahcva0GhIEVd05xlImcYRO50OKior
+ 0tBYh2FcxzlGw73OAIvGjqEwBbEvXxRX3g8zepDQiDi7U8E8sU0fk5OM6cCC19kNJJO3rwY1yKy9
+ nGn2EIzrCQ3Gey+Oas/UYFipSayaOLZEXZLkp2uDfTByoUZdeGOCuRDcAhyfnCxcfCHAbSPgwB4/
+ a51YXhq/oocktU13OMFOyTlnG/CpbiM4MiREFKM0phSYweqNHgZnPQf6xIw4Cgnc7ekcoAOOFMLq
+ lb7lHGdw/jb59HcG1jvVBhoOKc2WDHoG9acTGnSKN1GQk/MlZG9hbo85d3rzKNgTdRf1vCELJnD1
+ HBJU52HQ70R4Kl0zJfHI7Ck6Lu1JHCF2AxINuifdrAC7jIVlAOOPVX1uqRxwM1RTn09GH61Ak5gP
+ AC7LctesxLNPqUI6SRyn+EwlryP4BHzOYMFGUl5LfBEv3rYQaGjBiNXKFCQTjlF71CUe4iTO/MNS
+ aNkNGPfC8yM+vLqEklDFGpbSnZUTIufFSljUdWIoBYbB1X8YzEa2GZdcXY4tKBg+9vDQOcZBUoCq
+ 0XNtgi/4JcRjt6treOEX1GrjLdaxXJALDZnXQyLFElb2BIPjja7+jpGeiC4uMaFs7cTC1prGKlTB
+ 0tQhtmJFCe4RY6soOrzBCCPKgFeQjKllY0Rj1gwopRxvAIhrfeXqUrU0VpRuGgOX4hpIu70F6TdZ
+ q1SXJ0bneXYQAmqE7iT481SxsFmrROkpY4c3EDHRr/6dQcKWiEHtR5cas8/bYDCwJVxngWrxUMua
+ YZjYtVQ0RdxkItaYVVPS0DEevetZ/0ArUKe0qTYwMKoqUquRPm4g2aSNHKNrPe6mx8hhxDiUuagp
+ 65QZBYAxtvWp2QXxfMrTYhf3YSoVFccEwF1XlyMTcD+nlqphXXsrMRQFCM/wlvTvWQDMFL56DnwH
+ NvlgkgjyBWJuWoqO+PI+Yb94F3Emg9YYqsO9Q9uUcE9RvrzG2YIFvQSYmSuETQwcjZaGd/GRvumy
+ sDfYAapDvmW9i3t3YoxgJ/QwKa9NX9MZHqK68B/6UkFj8RAAPp5qvatLE7qeDwyLDmDWt/yR0dNM
+ /omF9LKxGuzWEoejDMN/iCu8mBUHM15f0oPuxlgN0GE4URN+tUm03nkYx/mYZIn9vKlMtcegIfTF
+ YasZojWS9h4kbFvB0yEIpu1o/IrFm4naJ6Fom7iuiyc1oCnpBydCZxtD6ad4nrHjQSnz7/omqAWE
+ rfhaLo/NmrrdkEafLdhlPFpZrMqFisxOlEz5m/B5njind6sY4EEXUDTuuOmzPOspr4W8xYdb+n7i
+ tL9M51bF3812QicpZNsNncwX6LNs/nCoOjRwaH0QiMyHRLbOECDHX+OWafT5Xhmx7cc8e2BeDIKv
+ ybvU/t5zlPheOEo88uaHAKG7YM8sB/8emFd3jjbe3DGXNusNqSSVijWJraRKtWmJ73vOaN1D64NF
+ 5AVq+bTDpLfW+PC51QVq+74FZgbocMo9yOgNy1SHYDUuTuvfdPNcVRwkB6S5TT2xXhOGz+I0f9/U
+ enfd7kK+WmyQ14MFavamBhYlLhvcddtLpdUCUUfk6v8hpeZqVfws8pfXwYO7ID3xQ/ilxia9Rds1
+ ONkYr2bMcE05Ank3Viue7/J2vfhdHCouJji3YL2GkojTZ2ytWQvvyLIrshTdO54WWLacFlO54pmn
+ RR7m5GSeBf5BVw2cK7xtgw9asG8wpYgetR0v/rt3KBWVOlx0Jvlr1JkR9GD2Kfqwp5N8sj7Bd3Ha
+ ouMDTEM9kdxjiRTSXDS9quEugTvG1uHmQfoixOyactbjQF2guxmjLbYZ3pu4gGiYeCJZnPrDLQd8
+ MUOihCqaXOmcH8eabU7hWEvf4kz6mzjpieeNwRZgZz2n7CVNMwRYlSA5AJ7l+GWG3LHDlogcW6M1
+ Ztkkmc+ATs2X1aCaekKU9X9i5qn7n/G/xw7LkO+xwx47LPz32GFpED522JR6P3bY7XZYcniXmyt0
+ Kf4ynjLP3UE4QeJfJMHUqans4d0dwgl84ATm89FK76Pb8s2KRp/oKtOKuwY/Z+DkcOFpHB3ovSLK
+ xaRHS7o1Npdun6Kg20PFitvmmfX6Sa7eVyxHGfC9fVy6iZBNOOgY2vecVkHmE5dVc4+vhEQ+hvc8
+ hE3ZV1TaNc2P7BAsKy4/Ho7/5q6F0kwGTJ15IlaKrN1OC5HK/zy3+4jXWZZ9EpDmA4yp8KGrK8bH
+ 3LSUIharaPBUqmkjV/TwNWhk3n5JHtK49RLFdCqRlPAy8b8ZgnnCr81jlsDBzXsj2Z9cNpZmhzBO
+ uwFrYhEvlcQ8PO6caY5DLcbeQ3NE5b/xw2lrGeJM9ihJO14djSsJjywULfNXYmOFPCdf6gA65oje
+ ZPzMT+KLGD6CF4PRI17cx+BJXPmNL/1mWspMCQMVT8+8n9cnl5hnRvPDnzddgx7REZW482wciNgi
+ dCjlPaxCo78bO3NqB669t7j8DFWDsYy3UmNa7zpiEnutKpYJGq7urZ+mU0jy5w+WXJMqGS8qsc4R
+ rNIzo/MLRuqMB1xMf4gQznBsivXhZB1DehkOVR8vP4KI94bjw0SO90rCu8lsHXgEcjeTErCPkois
+ USoU0tNwHRZvUuNpUsZ+sNcVvm4qBqa/GqyaujsyUj/zu0t5EJBIcUkH/qVCMalG06L1TQ/E70+L
+ RZhru4qK1WKXpFELHU7Ds2KlWY3NilHvGhKczYiFnfMzpM1Sh1Q17bRkyTNRmiHGYe65KGb4iP/A
+ /ZanBcWMR70LVBWAhWwoKoYAJ/sBLCQSqToxqt3th5hL6SI50kUSMPh5uVB+uAhz81XTD+52mxHS
+ 5kVKxLhbhPhy1+jkWw4vN2//PUaXyxpdTrRx4u+s1ebfO8nfD+B702xtsshzOwetc3y5pW/S958/
+ 7XuR5faQTuyv0+4c7gwP+uHIcj/Uzn48f19q75Y7P7GIa+86SWVCqVhmu9XZhDrJrWOW9n0nObpc
+ qxWOtHa2tY3teTWE90mR4lpQq3ZH2wvq9Wr/bPfdu9H7C8OLlIdR6Sbq1Wl1jraGH8OR2S62ir2d
+ 2mabbv9cfNfath319Q/v3pb68mSEube96RHmdg4jEfUOdo/3Mf1PHVaXhDYfdc4FRm3EqLPdbvIo
+ fGciql687bz+6vHWxrtIdLnW4XHlpPP9wc6PzeK++vriYN9Rt38avDN+2PzlPd05aDd7e+Uf5ObH
+ tdnBzfjcZeLt363uCQWLKByHLGU+C8KbzT31eeHLQCDkS1U/glmxuiAh5K4zay4TyBNh4pjN+uRJ
+ 0ulvTaWzYxZcP0BWqbhaZJFgIvTm2UIKXRebHmnh7uLq1KrNeuVGcXWuF0LHB27hQugkqNPzRtUp
+ FcGcirYjxe9vWcPnzPSO9L88pOVYSqrRLViOpd4My7FcL5e+PssRYJkl2YvNe7IcU7pIjnTRw1uO
+ 81bzDkKTz1eFhYpMfo1OfmDwHi3HjJbjKzQe4rGq2R9YKoNjZpmlxP0Wlhm3hDqtPbRjNvpvWoXX
+ bZbvZ7CxEiytFsbzbnciMcl33//86ZfxzxX1tXy2eXuWYyQu+dYuay+Pzz1pOW4AKkc7ntUFaX6W
+ W59+LKknu1hGl7UlKd9hZ3hwDJZXxHJ8dXxYqHw/OnytbhbeNS/ejrpjMD/9GO4DHhe90y73WZ02
+ Oil90Dncex+NTW5slPoiNnlKPPnOeTQ2eftdYdQX8dU73Go+iLV8g8VXH6pqJL76wUb97fm7jc/b
+ hYFy/LrUOzuuuJ9/qbbev/+5UH/tHqoKtulg7caWY8p8lmTUZJz6Ft1yvM6suUwgP1qOt2Y5lqqF
+ cqn5aDk+Wo5fouV4V3uOZQo1omN2cMY3FyvVMoiqr85cLGOzri7HCrYuT/j90ywk0YqIrBSR7PV7
+ shzDXSRHuujhzcVMdbsDGzFDuQtlGGbtw4eA6TZNwI3dVsf+ok3AsyQTaqfTOmAbVT+20q5Oau0m
+ XE3108faL72DNtuwGhwwUzIh795Rpx2YW52tlvvLoLEz/ImZN4eJ5bU6nYg5tDGecTXVXmTzcHvn
+ xLuaKuWqrc5m9GqqN5aB7VfwIq3W5GbdRuegNdz78VXIbOzIO7+0e12nb702yrTzZqNT3d2qbCdc
+ S/V+MNV8PfDrfsbMuJMZZl/sSqq2O/jeZtdYvTpviavFEq6ketc5V3+Omn1H+ruN3t6rk6OTi/OP
+ w/evdj+2zmtvDGWjt3/xo221NmpGFrMvbHxEpiD4kjAHJRki889cgU1Syi+g3Zd5zlsqaBfI2is2
+ V0tLbO2Va5VCrVR4AGvPB+5LtPaKzdKjtSe+fIn7hHjJ77R9wlqx0Wx8fYbfsZ685CcOuKQJ+1Lx
+ nizAlG6TI9328MbgvNW8A7twvioslIl4jU5+YPAe9w4fxuv03a661/uF3YVsHjCD8CCecQf32452
+ hpuBwXLwrr3bf/WqbTfOPtVu0es0ae8QUybs03XA7O28jxqOP1+YzGDbZnl22gketHgf8OHBj1tR
+ 4/HnH47em8fOT+emtt0+o1pt58LWxkefE7xOd7+f2oaNzn7YgNwwWJ8MU/oE6hPxON3qep623HiM
+ 50Hj8cfOedTbtP39q9fdN+qJ+bq/aZZ+GbUKm4fvfjk0T1419Ve1H38YOj/VL/q34W2aMrf5pzdn
+ 2T83mBsXfXPxOtPqF9kbC2SXLvkuZK1cKFUe/VcfdyG/TLv0rnYhPSmMEtmTvuVirVz8+mxRT7of
+ 6/SerMsQ+HIE/Ie3KLNU7Q6syNnFLpTlmLEDHwCkx63FG28tgpVxNtW7dINbYFHv0lr98ztnryP7
+ 1lgS7QOwKEPbeGghdro/nH1mW38Hh4nn7TYi5/M29jOl3QmnPUhM296MWIU/yf6ZyiQrbKNzFLOo
+ LrZ+KJmfC8Ze5Y36qf1j+927/ZDlzM9lbrQ/bU/bBm13YpZg2+JnIdXD5G1dPEu4HW7jwd7b476/
+ lXjQmcT9sNPaebc13PspupXYPn/tVOrl9tb+p8rrkv6uu3dQ2D7tV0+q+k7z58/bn/vyLze1PUIz
+ S5JpEZl4Fnx7MOuUtRCILZB1VayuVpbYuio1mvVisf4Qu34ecF+idVWsVh6tK/HlS7SuwutcnrQs
+ Vpv1eIS1r8C68tbPoG33v3cnR8B/eOsqS9Xudo8updiFsq4yduADgPS4/5Z1/w21/2RnwE2wnkDD
+ f5ey1wOATOy/vbo4Ggw/vj4VDpIzLQNuWX0clsqfql1+Jm0jeS8tYn2ccestbR+qc9A5CO9DtY5G
+ 4rwbt5YnMmx0Dnai0V5+rljyrDN75wdHW4c/xyyt49eHte2d4cfa5s9nhR+rdlKkl1cb2fcYO5vy
+ 9Cgvx7E9t929rU1mmdkiykvcSRXxBwsxtmfYeTP8/mJL22iMDj6/7lYv3laUDe3nH7dPiurYen+h
+ 17Od00va0EHnwCn7NWy+WaL9sKlT1b2js0AWVKm6WlhiC6pabtabD3JIzsPtSzSgStXCowElvnyJ
+ BhTGq/YMKBgEBsX7w6C2rm1rTijGcrnW+Aq9J9utfclbCmszdNAPwbq65PA8SLSV6T0mR3rs4Q2x
+ a9b2Dmyza9Vkocy16/f8YkD5uGWWaNRVkoy6ZEOntbPRkqcadRuTRt326aePgx+mGlAtMIaiYTw7
+ 5+czDJejrY2IM+W7CthSd7lllnaKsHMILT2IOFAenO3oRm+30GjXfto9nQy60tqWW/ve9lcrIYQo
+ mJTH0aArZ+8Gsjh9N3mKLo4hP33XVTxDjoVPncCdb/W92xpGDLnt92f9n46st687P3RV6833la0T
+ +nHnWNm/+TbZjOksyY6Zcwb0LZ1iefGMwBvMnEsL/ALZl9XV5jKbl8AXjWrtAexLD7cv0bysNh+t
+ S/HlAa3LYjmchF8JJf6uYWKy/CETc6Q4QxvQhDqPxpouUdvG2+PQu1sas2uUmQS2gqN6hUa1/CH2
+ 9NUZn9Ie4raKl89x4EgIOILAebOBdVuWp2ZjW9hSqdsDtpq7C+VIp92D9Xl3Nb6OBXpXtblfK/RO
+ uWBxIH20RrNao9c94nfWSTrip46KINm2ZC88aMKxOLCMWjuHexGLdKeudA7kzPFP2Dbjq58OtzNt
+ 1bUjxwFbybFYoluMP1j+0b4zrN9kXTrQNQc/vzqMHu375PROjn85OLKGnz81z98cJ4QE3Tb6U4/p
+ HbYOI1uMGyevD+d05lQ9Z85pR/vwaGLkaN9Gs/j6bP/j9vC4cPLqrdspvTupvt852Cw1DNm3TnfE
+ iCUbbMSicZRhP22O2S7BWpprrnxYG/Vu59gl74IFslYbq83mElurjWa9VrmRterdoe1decjNglkm
+ 7DEe0bxUh3gLKZqxwHwSywiGrAfpshiyDtWpaEkGU7bRbN65KRtB93rm7EwSy23K3ll8GS6ew0uI
+ gRyuVb7CvVEm79llyzLZaLXZQuVDRJCZ6Bg50jEPvwWavYJ3sOuZtfCF2uicq0sfDLBHH9VHA/LR
+ gLx9A/Lau2wJM1LSzlqGiWuhtzHnm/AWHtMFsvmKpdXqMm9R1pqlevlBIod6wC2LaTfXGcJS9Wvd
+ pHwpuzr/FeHpmKnGe8UWfDfLsOK9IJcapUqhIO9xWfc9l0vfbzNZF8hZzfgIYhDMcCZIJpjzYawm
+ GDR+nabZTvj33tQs4mDn4MqYDca3aEukX0DgiT4QsOPv4LPfO558ifdXPIH3ZUKE+l/6YwlaBmZ2
+ VzfVjymvpVPXhl5W6WhEDcdL48kooIgWLT0D89yb1sgQcnsJQ2NLA0EXIRYD3qOJ6aq1aq3egEki
+ Amq4FbFaSkOq9Cbmg5fDUmjiYEtYTIbl1jdh7MAQsXlLNKg1jFfb1Z2rS/ulPCxNIJtYCZTo2JCU
+ WSixT27aH5ZyATWNlxXDmSeKCrY7wTEikrweFN8ijkxkl9rEMN1TGEHnRFWGDH1PPlLbIVeXA0Wn
+ jMswJDkuHANjQFMxghxv0E175qUnyvwXaetX8/5FcPCEUAZ1g+X1pKVYcIqtI8X+ostKqcnSxOKW
+ piuWphhZc6ZPt6lZAsHJS/oANm9y1kl8Jl6wyH/2k2xAohCdnSi7LufnucXelW3V1BUNFPAx7SkD
+ c6DRxw4P/R0JeMh3ZHx1KRD6svtfHrFrF2zJ+/QoAsJ//FIKm/jo3BM3TO5uPE4Xs3I+NK88Thdf
+ WYc/ThePIiD691DTRWqe++YGma0L0/EjV4T+0AT9jmx09h+Vh0flgf89Kg8Tf19Zhz8qD48iIPr3
+ qDw8Kg8Przyk5nkobgjdZUDH6HfwyB6hv1DM5M6+DMxy7zpmsEnLn+IbT/7W4kvuZCE8AZTxGCBT
+ ED1Z731/YuOeNcv3R+4f2RbKuZN7LnZxf5N/A54Z0pGSN63Bb3JuNfePSAYS7PONH3hjKCN8gYj8
+ 5hYKtD51+4dI5BWk7JEt0xopmN+19EiB0Y3j3wTv/hYNXoR3PHq0JUE7CFtULzdFKNjV3MDRjGIZ
+ Soh8hQ9i62pnE75pdtd4DgmkkgRJJJZGwkT2RzchK3PYyT3/NVTrqR4+v3EXn9+yhCpIatlvcqQG
+ UqVePa8WCsLX5/fVXI/yTsat6ee5NnUIULCgSLbHiU4GXZ2uklPtVDHYwRBFValta+ztCN31DWJS
+ F/06dOp1Gm6UDixlNGLXMPUj/QsvMAJBnkBZjsiBJz5YiqbwAMItPhiorqJrNv9AiXJKVchtQ4kw
+ MtlbarAtQJsgn/B0YwsqA4l6wJBsM1CBUoyeaxN8wdM4/B8ydru6xn8jCbLxFttQLvwmFxq/ybyW
+ EimWsDknFIoZscSKrjDa3M8ZITiHUgET01iFylnQU9jOFZQ0p5rjFcCOtOjwFo+7KAND7F5CJ5mG
+ ETQUSiwnNZE9FYAATwadxorXTWPgAswuabe3IO8ma7vq8kw4JpmKArXkvts2OQUhJuq0SpSeMnYC
+ CDwUdfZPgwHJHBFOTY15pfd5Ow3WZYBNlYhqAx9CYs0wTGQUKpqLPORYLmrN7JyPpME36xSP+WAv
+ QysBQMOm2sBQsL5AsUb6yOogCJD/dGBzlpaR62qUOXWgA79OLaQJfYHtf2p2bSDM0yKT9BXcp2eV
+ xwSrou+aIxP66Jxaqob17a0kIB0C6BmIIvI9klGncOtz4GgyxsGbRBA5C/vGtBQd+yHoP/8p6FbO
+ vtBaQ8WOg5LalPCZlg0KwV4stAd0BXO0BlnpitZZ2icXG2+6AKGlYkepDvmWcQV6G4pRiR3Vw6S8
+ dn1NZ5iJJsB/OgANQKDYxcdTrcfpm8AyfAhadKBB1/rjr6eZ/NMJBS6yvergA4tEApWCeX6oKlYP
+ s6MY4TwGJQB7QC1t6GCU4ORl1yK/yevRRuRBjORBgFogBBWbbsL8D/KqVCgVpNbYArkL386YxyC8
+ LuSrxQZ5PYB3XZwycs//8Kef4yFM6aHJh5eS+3M1Z/b70OBw2rf45u4nGuZu2HYtixrqBRTUeXfo
+ vc09L9bz1dVc+MyKqMrEHLtjHDmm+hFnGYeOYPhw9kxL/oaeBWn+/BN0B+5SOamPxJyE/NdhFwro
+ FauvnefivmHJqkiaO1KcLB4H6psmyIzAIZLY1JG6ptWDl13z3PMi+1aSiDqyPzDXlA8wg1rOc9FH
+ ggSRpPWXtnOhe0cTUDrKqm3n1v/y5K+mI9m9j3iCLS9+2kPzDOZbB9SAgU3++AsrB5Rd03oO4weY
+ RnNe8Jfo1ibZ2mf6nBQLhX8Qb3kdn5OC9wzq5MAyXaMnJVIZK70eFMUz/PmXJ7Mr9Xxowhj1qobN
+ kaDJIGiwT58TF/0DdcAsYwXEy7/WarXMNejDXOODE24xZAeWQrTXkVBKr2LtpDMLdEtoR+j9CLpa
+ CuqLPRSmMLC0nmSZZ1OyhD8Z9MzWUYBbkm2qmqKzcsMpbIDN6KGvEgMBy/smwUVIqtWS6bIMiTmq
+ Bf7tm4g9hkTQ61MSLMr84CR4BjkCwt/WTqnvEPoNzx6ineRPhdSIT5YaME+Z44DIG7+qfLgxmjsG
+ jvlT+lk6NV0xZfeuLlVUATUL5bC8znwRUR0HDarfh+qRb1lTfSrTG53guuxZYCn+ngGosu12sYJd
+ yt7movxjjbCMsFz55qVmjF2HoGhfy4Gg0/ScGOriIeSBv5Z7byLwSg8nUlBDJJ5ElIEPzHMavXpR
+ CeFMMSHKEp2lhe8zh5fr1h5dnsTzTOWHZrnHN8yPjrBOc2SypG/SDOBQKSTo5QwkIpbw7OTCCg4V
+ F/QUHw+5BBoJmOHfD6DVrGiMlJ2Aqud4HP0kvI8j7Bf8SGDDclmMS1dPkD2BKPhoC3b9Bvdd+K9v
+ XirxpYn0NQje/GkrDclLCrvor8wUM6kPnIkHn3Mhb2gxOLxP7MjHJh8pwGR4ItdZy8GMpxgfp0oD
+ j4Bkf3IVKxAKuKgg2i37DX84CJwzjbNuBAHxNtx4ea7WCwIL3ngYDI6C6nms+f57BoCugUKrgV4t
+ BOZfZyDhgxCQX9D2j5lpSHGCiLTff8/a37sOA/gkFpwFLmCqdbs0l3AeQnxiGLhg6cqdU89evY5A
+ EORm4sHncFwv/OabkLCN/ouiGZPOVtFiWhYhcf0eHodUH4dk8mwljPuis5MfoUNTTOwrd9Rdp9rA
+ wHlPUkBr87pL5g+xk/yJFU3GJKrufkNiKmO0B9HOx8pKqmapeqgLmdLGsx/zYyQrWDGYSbEnFdap
+ 5D6w2fVEle0jBEqkpIde3xNWNihv1NO0J5HC3Lts0cOrGeHfxMi6f+iCwR1hLlkZUGj+veGmKjqW
+ Z0mK7iTCdvXPp1eXoqbfhGC6Q4xwlY+d6sQlKseXGlx3F1iJl7fEYCRqrn70yswAIEpqdkgGlywk
+ tpqZiGObU4xAOEOxjdY6jEmiKRk31IQFecRzEp4zZNNdr02YddMlOqCm4cKiDYZYjy1WNoblAjv4
+ 2YQf0HTe8kKR1Guk0iSVBikUiOmSe5tx5+Kj9TEefcZvsc7x/p099bEZLa1rZncxyy4i36T25t5O
+ 591P5M3bd0ek/fbNm9bO8WEn1Kcwi/P5HKb2e8P5k6tJuI3EF0Nj8iz+cf3A1UjoBfkb4h3oZvda
+ c8EhNsYLAj4Y0FjlE75748km3xH/7QM2ATEEXjsxNdw0TLAsvQVSi6oW6AooyJmKiRM1X+2RehId
+ jXVTk3Prb7BLfHIP2C5RbX5XVkqb8J6tviXnvFmcPz8kP+H9OGiGaY7LV0/0KT2imtYYF3K5yg+c
+ hTHco7kfsC1vDzcS6o7haiTT6nLc30I9db5RxfZxhpR0ta6u4R7UeIi7Tw/YgC2Y5m3JN50iTenj
+ N39F0rQGHuvbqE8bJjtlShgFIig8YEtgaoJKMQecqHwSHyxNwRlsP0j2gJVV+n1N1xS+xhnRbEMf
+ 1lvBQ6Su3BANTb+3N3VudI7e7rwhmyutnc0OTjsPO2v6Q0YyFLAKEgDDFPgxt37oD6/vSJD6QTnS
+ tplBzyNUxLky+pEFsmCOEOwD8T486NQ/VjQ2F8arLt6u75k97hnhvXrAuuLes6LZcf4IXq/vGH3T
+ Jv6LB6yrqaqKHWZlnJY1m8r+B+Bm9ob0Vrx3D1hfizqma9kSRvU0JhRA/hWrzFLB8LPoqIs/uUX8
+ kIpfaB8oXOXwhmV4R/DBKurZ0pMml7CJH7JuOGUSVelRxQ0qiC8l8XK9HUpCRsoAGDbMr3wB9Q6n
+ rda747fvDsnmO/Lm3R7ea/XuwQ0+dEBg28eS8JCTDHdEmWNSlBd5nF/Qz/0NZ+bPJdzqINPVpfXA
+ WqISn73w/0LtWW9h9JoFrSpOrq2e2aVkUxtojqJ78dUeUjD16FgxDPSBjVS2j/5uzKpByQm8b1PX
+ pow3RHoi3j2o9hp4QHvMHcM8IcF6K3jJHRL5h4echsGyh/HpGlJkx5m3If5x/S17QVxDROaerZJ7
+ hwf+6phjCf1dXcOJOW8wETcwcdPXHE/z4rFVy9R1SMXWznKzVidBPFNHcsf+kuS24jpcUxtQVk1l
+ rmW7Exde8rGOuQM/Ak9oFwvC1eVee1BDlQ5YDIMg2Un7hSF/mmhapg2i/zxjR53HUYoOqvudZAen
+ M+qPKdbb+Vf59/kHrKZp9IH/DEdTdM1J3KINVzmWGpWZ0Iury4dryFhXDKnnstWoGa2IJF3fhyd0
+ M8enUPUnXHewMcIpCoOLBf6DvgRI8iNEiMyPGsYb5S98FyAPJiZpIkMXPT6P+AkVtmKgUPTwZJ8i
+ B1eYm+eJcqrwtzmWROuTp2ea0TPPfl0pW70PuFpysfL7rysKJ7XyO1lbWyOO5dJn6N54qljkA5Sw
+ hg8rY6238pysVEvlrtovFgvVUqXZVGvVaqFQ6BULK6uQRumdUsuBWcva0izbgfSlYq1QYJ903TzD
+ Fb136KEJX/qKblP/y07fUkYAAnzA8vH90GQUVryu0rt5UVFcH1z5y5M/X2CrQHLlTWPXVHpP+y6f
+ Up/61aciYNqaf0Agr1oU+KrDPzxd4QCtPHvhpc0jgpBhJYbhSpBCsS8MlXCkoA7ea9vClyuyLM6y
+ hGorK1Q6LedL+RN75QWvGlANV2tAHVEne+PiWBm8UUY0qN2vhd9fYI489BkkeQPGeF4zAGdng4Js
+ o09FHVYx0TN0RX3m+6NyF2eumftMFLgNU6OX5DQ8EWqR/4y5tH5yNfVjV7EkFiQvCMUXes8dXXOT
+ +ScSk/BNCF1tMIDJCN2MUx2rc8ke1Am1EKPT/zJSrAFMuhZzno+FIbizyLM8ZONNIs96942EX3rC
+ cwKl6dFo64sajRZDz9owfD5eSHNFoK1/6RFog8fUswMJnM+OVJBMnD+1MfNFifb+fDaboD1/xOjQ
+ z9g/U6e+aGzx2HyPe/WKfGLLRaXS7RfUYqFcK9Vpo9as9rulfqVQ6iq00O82QXAzXvHOi8yYbp/I
+ 8stvf21vto5bvz7ZAz08z+d6GwS4M2Stwpli5UX0Y89EW4B/zEerCkll+fff1wOJfpN2Q4vRCRy6
+ lCo9+YzqMNSoNHbtYayht1aGYTpa/y4LUPE4ng52lP2ROsmFcB46OXCpdfHUm3mf5UEh6F34ygN5
+ +t9AffAZ81tfqeivdlfp6umqseqs2s/+0PpP+/l+99MzsL5cy3hhrLHHtUAJ+cPIq6Dc7LGp5G8+
+ xfDbPJrPF0+NVRiV/Pzis+dGHmwvl+YRrKfB+z9fQInf9vMfsEz+z5rxIkQV08MbI6+DLkR7a98W
+ 4DeeZ0MBvFLKF1ZeCNJrv/7+wlnrxlQh+uyFUG0wq0+Y6TVrpy9syJCopFCmndipqgmi9adQPFd9
+ sh78q56Os+oret7xN98H3KCOTI0P747kfpfiSUob9ahnL4JjWwDG0xXN0IAMWWkU67Vys1SvVqqF
+ er2GCSPp2NQBCXP7MPbea/QsFyaFf6A9hceZ3DV7F/gvHl5bf/L/AwAA//8DAHU+X2R2NwMA
+ headers:
+ Accept-Ranges:
+ - bytes
+ Connection:
+ - keep-alive
+ Content-Encoding:
+ - gzip
+ Content-Length:
+ - '28668'
+ Content-Type:
+ - text/html; charset=UTF-8
+ Date:
+ - Sat, 10 Jul 2021 14:38:39 GMT
+ Keep-Alive:
+ - timeout=10
+ Last-Modified:
+ - Sat, 10 Jul 2021 03:35:55 GMT
+ Server:
+ - nginx
+ Vary:
+ - Accept-Encoding
+ X-Page:
+ - product
+ status:
+ code: 200
+ message: OK
+version: 1
diff --git a/manuels/tests/test_add_book.py b/manuels/tests/test_add_book.py
index e3b8842..520b16f 100644
--- a/manuels/tests/test_add_book.py
+++ b/manuels/tests/test_add_book.py
@@ -1,17 +1,75 @@
+from pathlib import Path
+
+import vcr
+from selenium.webdriver.common.by import By
+from selenium.webdriver.support import expected_conditions
+from selenium.webdriver.support.wait import WebDriverWait
+
+from manuels.models import Book, Editor
from manuels.tests.selenium import TeacherSeleniumTestCase
class AddBookTestCase(TeacherSeleniumTestCase):
+ fixtures = ["editors", "levels"]
+
+ @vcr.use_cassette(
+ str((Path(__file__).parent / "cassettes/add_book_with_decitre.yaml").resolve()),
+ ignore_localhost=True,
+ )
def test_add_book_with_decitre(self):
- # empty cache
- # use vcrpy to reproduce decitre call on a known book
- # Click on add book button
- # select level
- # fill discipline
- # fill ISBN
- # click on "fill with decitre"
- # check info is filled
- # check values, especially price
- # finish filling form
- # check book is created
- assert False
+ field = "Français"
+ isbn = "978-2-216-15739-6"
+ title = "Français CAP Les nouveaux cahiers"
+ authors = (
+ "Michèle Sendre-Haïdar,Nathalie Leduc,Florian Seuzaret,Emmanuelle Goulard"
+ )
+ price = 17.5
+ editor = Editor.objects.get(name__iexact="Foucher")
+
+ self.get(self.teacher.get_absolute_url())
+ self.selenium.find_element_by_id("add-book").click()
+ self.selenium.find_element_by_id("id_levels").send_keys("TEPC")
+ self.selenium.find_element_by_id("id_field").send_keys(field)
+ self.selenium.find_element_by_id("id_isbn").send_keys(isbn)
+ self.selenium.find_element_by_id("id_isbn_button").click()
+
+ self._wait_for_elements_by_css_selector("#id_isbn.is-valid")
+ self.assert_input_value("id_title", title)
+ self.assert_input_value("id_publication_year", "2020")
+ self.assert_input_value("id_editor", editor.pk)
+ self.assert_input_value("id_authors", authors)
+ self.assert_input_value("id_price", str(price))
+
+ self.selenium.find_element_by_id("id_previously_acquired").send_keys("Non")
+ self.selenium.find_element_by_id("id_consumable").send_keys("Non")
+ self.selenium.find_element_by_css_selector("[for=id_add_another]").click()
+ self.selenium.find_element_by_css_selector(".btn[type=submit]").click()
+
+ expected_url = self.teacher.get_absolute_url()
+ expected_url = self.get_full_url(expected_url)
+ assert self.selenium.current_url == expected_url
+
+ book = Book.objects.first()
+ assert book.teacher == self.teacher
+ assert book.isbn == isbn
+ assert book.field == field
+ assert book.title == title
+ assert book.publication_year == 2020
+ assert book.editor == editor
+ assert book.authors == authors
+ assert book.previously_acquired is False
+ assert book.consumable is False
+
+ def assert_input_value(self, input_id, expected_value):
+ assert self.selenium.find_element_by_id(input_id).get_attribute("value") == str(
+ expected_value
+ )
+
+ def _wait_for_elements_by_css_selector(self, css_selector, wait_time=5):
+ wait = WebDriverWait(self.selenium, wait_time)
+ markers = wait.until(
+ expected_conditions.presence_of_all_elements_located(
+ (By.CSS_SELECTOR, css_selector)
+ )
+ )
+ return markers
diff --git a/poetry.lock b/poetry.lock
index 9d3413a..e9a7840 100644
--- a/poetry.lock
+++ b/poetry.lock
@@ -278,6 +278,14 @@ python-versions = "*"
[package.dependencies]
django = ">=2.2"
+[[package]]
+name = "multidict"
+version = "5.1.0"
+description = "multidict implementation"
+category = "dev"
+optional = false
+python-versions = ">=3.6"
+
[[package]]
name = "nodeenv"
version = "1.6.0"
@@ -545,6 +553,20 @@ brotli = ["brotlipy (>=0.6.0)"]
secure = ["pyOpenSSL (>=0.14)", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "certifi", "ipaddress"]
socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"]
+[[package]]
+name = "vcrpy"
+version = "4.1.1"
+description = "Automatically mock your HTTP interactions to simplify and speed up testing"
+category = "dev"
+optional = false
+python-versions = ">=3.5"
+
+[package.dependencies]
+PyYAML = "*"
+six = ">=1.5"
+wrapt = "*"
+yarl = {version = "*", markers = "python_version >= \"3.6\""}
+
[[package]]
name = "virtualenv"
version = "20.4.7"
@@ -574,6 +596,14 @@ python-versions = ">=3.5, <4"
[package.extras]
brotli = ["brotli"]
+[[package]]
+name = "wrapt"
+version = "1.12.1"
+description = "Module for decorators, wrappers and monkey patching."
+category = "dev"
+optional = false
+python-versions = "*"
+
[[package]]
name = "xlrd"
version = "2.0.1"
@@ -595,10 +625,22 @@ category = "main"
optional = false
python-versions = "*"
+[[package]]
+name = "yarl"
+version = "1.6.3"
+description = "Yet another URL library"
+category = "dev"
+optional = false
+python-versions = ">=3.6"
+
+[package.dependencies]
+idna = ">=2.0"
+multidict = ">=4.0"
+
[metadata]
lock-version = "1.1"
python-versions = "^3.9"
-content-hash = "337fda673a0bc3b5148651917cc641f5d6ce56b39af26d1fcd53624f02feff8c"
+content-hash = "a297139d52d31a113cebd44e779dc35d41b8c6fa42213c13c5d52b3593563d12"
[metadata.files]
appdirs = [
@@ -709,6 +751,45 @@ model-bakery = [
{file = "model_bakery-1.3.2-py2.py3-none-any.whl", hash = "sha256:bebde0d4f895f55a8cf26706275a238fecdf0fddd227214675b7351598c99ce5"},
{file = "model_bakery-1.3.2.tar.gz", hash = "sha256:7e06071c7ba5c58f9c1d7245b4b80cc5240806f30c4561f5c04a652d67626725"},
]
+multidict = [
+ {file = "multidict-5.1.0-cp36-cp36m-macosx_10_14_x86_64.whl", hash = "sha256:b7993704f1a4b204e71debe6095150d43b2ee6150fa4f44d6d966ec356a8d61f"},
+ {file = "multidict-5.1.0-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:9dd6e9b1a913d096ac95d0399bd737e00f2af1e1594a787e00f7975778c8b2bf"},
+ {file = "multidict-5.1.0-cp36-cp36m-manylinux2014_aarch64.whl", hash = "sha256:f21756997ad8ef815d8ef3d34edd98804ab5ea337feedcd62fb52d22bf531281"},
+ {file = "multidict-5.1.0-cp36-cp36m-manylinux2014_i686.whl", hash = "sha256:1ab820665e67373de5802acae069a6a05567ae234ddb129f31d290fc3d1aa56d"},
+ {file = "multidict-5.1.0-cp36-cp36m-manylinux2014_ppc64le.whl", hash = "sha256:9436dc58c123f07b230383083855593550c4d301d2532045a17ccf6eca505f6d"},
+ {file = "multidict-5.1.0-cp36-cp36m-manylinux2014_s390x.whl", hash = "sha256:830f57206cc96ed0ccf68304141fec9481a096c4d2e2831f311bde1c404401da"},
+ {file = "multidict-5.1.0-cp36-cp36m-manylinux2014_x86_64.whl", hash = "sha256:2e68965192c4ea61fff1b81c14ff712fc7dc15d2bd120602e4a3494ea6584224"},
+ {file = "multidict-5.1.0-cp36-cp36m-win32.whl", hash = "sha256:2f1a132f1c88724674271d636e6b7351477c27722f2ed789f719f9e3545a3d26"},
+ {file = "multidict-5.1.0-cp36-cp36m-win_amd64.whl", hash = "sha256:3a4f32116f8f72ecf2a29dabfb27b23ab7cdc0ba807e8459e59a93a9be9506f6"},
+ {file = "multidict-5.1.0-cp37-cp37m-macosx_10_14_x86_64.whl", hash = "sha256:46c73e09ad374a6d876c599f2328161bcd95e280f84d2060cf57991dec5cfe76"},
+ {file = "multidict-5.1.0-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:018132dbd8688c7a69ad89c4a3f39ea2f9f33302ebe567a879da8f4ca73f0d0a"},
+ {file = "multidict-5.1.0-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:4b186eb7d6ae7c06eb4392411189469e6a820da81447f46c0072a41c748ab73f"},
+ {file = "multidict-5.1.0-cp37-cp37m-manylinux2014_i686.whl", hash = "sha256:3a041b76d13706b7fff23b9fc83117c7b8fe8d5fe9e6be45eee72b9baa75f348"},
+ {file = "multidict-5.1.0-cp37-cp37m-manylinux2014_ppc64le.whl", hash = "sha256:051012ccee979b2b06be928a6150d237aec75dd6bf2d1eeeb190baf2b05abc93"},
+ {file = "multidict-5.1.0-cp37-cp37m-manylinux2014_s390x.whl", hash = "sha256:6a4d5ce640e37b0efcc8441caeea8f43a06addace2335bd11151bc02d2ee31f9"},
+ {file = "multidict-5.1.0-cp37-cp37m-manylinux2014_x86_64.whl", hash = "sha256:5cf3443199b83ed9e955f511b5b241fd3ae004e3cb81c58ec10f4fe47c7dce37"},
+ {file = "multidict-5.1.0-cp37-cp37m-win32.whl", hash = "sha256:f200755768dc19c6f4e2b672421e0ebb3dd54c38d5a4f262b872d8cfcc9e93b5"},
+ {file = "multidict-5.1.0-cp37-cp37m-win_amd64.whl", hash = "sha256:05c20b68e512166fddba59a918773ba002fdd77800cad9f55b59790030bab632"},
+ {file = "multidict-5.1.0-cp38-cp38-macosx_10_14_x86_64.whl", hash = "sha256:54fd1e83a184e19c598d5e70ba508196fd0bbdd676ce159feb412a4a6664f952"},
+ {file = "multidict-5.1.0-cp38-cp38-manylinux1_i686.whl", hash = "sha256:0e3c84e6c67eba89c2dbcee08504ba8644ab4284863452450520dad8f1e89b79"},
+ {file = "multidict-5.1.0-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:dc862056f76443a0db4509116c5cd480fe1b6a2d45512a653f9a855cc0517456"},
+ {file = "multidict-5.1.0-cp38-cp38-manylinux2014_i686.whl", hash = "sha256:0e929169f9c090dae0646a011c8b058e5e5fb391466016b39d21745b48817fd7"},
+ {file = "multidict-5.1.0-cp38-cp38-manylinux2014_ppc64le.whl", hash = "sha256:d81eddcb12d608cc08081fa88d046c78afb1bf8107e6feab5d43503fea74a635"},
+ {file = "multidict-5.1.0-cp38-cp38-manylinux2014_s390x.whl", hash = "sha256:585fd452dd7782130d112f7ddf3473ffdd521414674c33876187e101b588738a"},
+ {file = "multidict-5.1.0-cp38-cp38-manylinux2014_x86_64.whl", hash = "sha256:37e5438e1c78931df5d3c0c78ae049092877e5e9c02dd1ff5abb9cf27a5914ea"},
+ {file = "multidict-5.1.0-cp38-cp38-win32.whl", hash = "sha256:07b42215124aedecc6083f1ce6b7e5ec5b50047afa701f3442054373a6deb656"},
+ {file = "multidict-5.1.0-cp38-cp38-win_amd64.whl", hash = "sha256:929006d3c2d923788ba153ad0de8ed2e5ed39fdbe8e7be21e2f22ed06c6783d3"},
+ {file = "multidict-5.1.0-cp39-cp39-macosx_10_14_x86_64.whl", hash = "sha256:b797515be8743b771aa868f83563f789bbd4b236659ba52243b735d80b29ed93"},
+ {file = "multidict-5.1.0-cp39-cp39-manylinux1_i686.whl", hash = "sha256:d5c65bdf4484872c4af3150aeebe101ba560dcfb34488d9a8ff8dbcd21079647"},
+ {file = "multidict-5.1.0-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:b47a43177a5e65b771b80db71e7be76c0ba23cc8aa73eeeb089ed5219cdbe27d"},
+ {file = "multidict-5.1.0-cp39-cp39-manylinux2014_i686.whl", hash = "sha256:806068d4f86cb06af37cd65821554f98240a19ce646d3cd24e1c33587f313eb8"},
+ {file = "multidict-5.1.0-cp39-cp39-manylinux2014_ppc64le.whl", hash = "sha256:46dd362c2f045095c920162e9307de5ffd0a1bfbba0a6e990b344366f55a30c1"},
+ {file = "multidict-5.1.0-cp39-cp39-manylinux2014_s390x.whl", hash = "sha256:ace010325c787c378afd7f7c1ac66b26313b3344628652eacd149bdd23c68841"},
+ {file = "multidict-5.1.0-cp39-cp39-manylinux2014_x86_64.whl", hash = "sha256:ecc771ab628ea281517e24fd2c52e8f31c41e66652d07599ad8818abaad38cda"},
+ {file = "multidict-5.1.0-cp39-cp39-win32.whl", hash = "sha256:fc13a9524bc18b6fb6e0dbec3533ba0496bbed167c56d0aabefd965584557d80"},
+ {file = "multidict-5.1.0-cp39-cp39-win_amd64.whl", hash = "sha256:7df80d07818b385f3129180369079bd6934cf70469f99daaebfac89dca288359"},
+ {file = "multidict-5.1.0.tar.gz", hash = "sha256:25b4e5f22d3a37ddf3effc0710ba692cfc792c2b9edfb9c05aefe823256e84d5"},
+]
nodeenv = [
{file = "nodeenv-1.6.0-py2.py3-none-any.whl", hash = "sha256:621e6b7076565ddcacd2db0294c0381e01fd28945ab36bcf00f41c5daf63bef7"},
{file = "nodeenv-1.6.0.tar.gz", hash = "sha256:3ef13ff90291ba2a4a7a4ff9a979b63ffdd00a464dbe04acf0ea6471517a4c2b"},
@@ -855,6 +936,10 @@ urllib3 = [
{file = "urllib3-1.26.5-py2.py3-none-any.whl", hash = "sha256:753a0374df26658f99d826cfe40394a686d05985786d946fbe4165b5148f5a7c"},
{file = "urllib3-1.26.5.tar.gz", hash = "sha256:a7acd0977125325f516bda9735fa7142b909a8d01e8b2e4c8108d0984e6e0098"},
]
+vcrpy = [
+ {file = "vcrpy-4.1.1-py2.py3-none-any.whl", hash = "sha256:12c3fcdae7b88ecf11fc0d3e6d77586549d4575a2ceee18e82eee75c1f626162"},
+ {file = "vcrpy-4.1.1.tar.gz", hash = "sha256:57095bf22fc0a2d99ee9674cdafebed0f3ba763018582450706f7d3a74fff599"},
+]
virtualenv = [
{file = "virtualenv-20.4.7-py2.py3-none-any.whl", hash = "sha256:2b0126166ea7c9c3661f5b8e06773d28f83322de7a3ff7d06f0aed18c9de6a76"},
{file = "virtualenv-20.4.7.tar.gz", hash = "sha256:14fdf849f80dbb29a4eb6caa9875d476ee2a5cf76a5f5415fa2f1606010ab467"},
@@ -863,6 +948,9 @@ whitenoise = [
{file = "whitenoise-5.2.0-py2.py3-none-any.whl", hash = "sha256:05d00198c777028d72d8b0bbd234db605ef6d60e9410125124002518a48e515d"},
{file = "whitenoise-5.2.0.tar.gz", hash = "sha256:05ce0be39ad85740a78750c86a93485c40f08ad8c62a6006de0233765996e5c7"},
]
+wrapt = [
+ {file = "wrapt-1.12.1.tar.gz", hash = "sha256:b62ffa81fb85f4332a4f609cab4ac40709470da05643a082ec1eb88e6d9b97d7"},
+]
xlrd = [
{file = "xlrd-2.0.1-py2.py3-none-any.whl", hash = "sha256:6a33ee89877bd9abc1158129f6e94be74e2679636b8a205b43b85206c3f0bbdd"},
{file = "xlrd-2.0.1.tar.gz", hash = "sha256:f72f148f54442c6b056bf931dbc34f986fd0c3b0b6b5a58d013c9aef274d0c88"},
@@ -871,3 +959,42 @@ xlwt = [
{file = "xlwt-1.3.0-py2.py3-none-any.whl", hash = "sha256:a082260524678ba48a297d922cc385f58278b8aa68741596a87de01a9c628b2e"},
{file = "xlwt-1.3.0.tar.gz", hash = "sha256:c59912717a9b28f1a3c2a98fd60741014b06b043936dcecbc113eaaada156c88"},
]
+yarl = [
+ {file = "yarl-1.6.3-cp36-cp36m-macosx_10_14_x86_64.whl", hash = "sha256:0355a701b3998dcd832d0dc47cc5dedf3874f966ac7f870e0f3a6788d802d434"},
+ {file = "yarl-1.6.3-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:bafb450deef6861815ed579c7a6113a879a6ef58aed4c3a4be54400ae8871478"},
+ {file = "yarl-1.6.3-cp36-cp36m-manylinux2014_aarch64.whl", hash = "sha256:547f7665ad50fa8563150ed079f8e805e63dd85def6674c97efd78eed6c224a6"},
+ {file = "yarl-1.6.3-cp36-cp36m-manylinux2014_i686.whl", hash = "sha256:63f90b20ca654b3ecc7a8d62c03ffa46999595f0167d6450fa8383bab252987e"},
+ {file = "yarl-1.6.3-cp36-cp36m-manylinux2014_ppc64le.whl", hash = "sha256:97b5bdc450d63c3ba30a127d018b866ea94e65655efaf889ebeabc20f7d12406"},
+ {file = "yarl-1.6.3-cp36-cp36m-manylinux2014_s390x.whl", hash = "sha256:d8d07d102f17b68966e2de0e07bfd6e139c7c02ef06d3a0f8d2f0f055e13bb76"},
+ {file = "yarl-1.6.3-cp36-cp36m-manylinux2014_x86_64.whl", hash = "sha256:15263c3b0b47968c1d90daa89f21fcc889bb4b1aac5555580d74565de6836366"},
+ {file = "yarl-1.6.3-cp36-cp36m-win32.whl", hash = "sha256:b5dfc9a40c198334f4f3f55880ecf910adebdcb2a0b9a9c23c9345faa9185721"},
+ {file = "yarl-1.6.3-cp36-cp36m-win_amd64.whl", hash = "sha256:b2e9a456c121e26d13c29251f8267541bd75e6a1ccf9e859179701c36a078643"},
+ {file = "yarl-1.6.3-cp37-cp37m-macosx_10_14_x86_64.whl", hash = "sha256:ce3beb46a72d9f2190f9e1027886bfc513702d748047b548b05dab7dfb584d2e"},
+ {file = "yarl-1.6.3-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:2ce4c621d21326a4a5500c25031e102af589edb50c09b321049e388b3934eec3"},
+ {file = "yarl-1.6.3-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:d26608cf178efb8faa5ff0f2d2e77c208f471c5a3709e577a7b3fd0445703ac8"},
+ {file = "yarl-1.6.3-cp37-cp37m-manylinux2014_i686.whl", hash = "sha256:4c5bcfc3ed226bf6419f7a33982fb4b8ec2e45785a0561eb99274ebbf09fdd6a"},
+ {file = "yarl-1.6.3-cp37-cp37m-manylinux2014_ppc64le.whl", hash = "sha256:4736eaee5626db8d9cda9eb5282028cc834e2aeb194e0d8b50217d707e98bb5c"},
+ {file = "yarl-1.6.3-cp37-cp37m-manylinux2014_s390x.whl", hash = "sha256:68dc568889b1c13f1e4745c96b931cc94fdd0defe92a72c2b8ce01091b22e35f"},
+ {file = "yarl-1.6.3-cp37-cp37m-manylinux2014_x86_64.whl", hash = "sha256:7356644cbed76119d0b6bd32ffba704d30d747e0c217109d7979a7bc36c4d970"},
+ {file = "yarl-1.6.3-cp37-cp37m-win32.whl", hash = "sha256:00d7ad91b6583602eb9c1d085a2cf281ada267e9a197e8b7cae487dadbfa293e"},
+ {file = "yarl-1.6.3-cp37-cp37m-win_amd64.whl", hash = "sha256:69ee97c71fee1f63d04c945f56d5d726483c4762845400a6795a3b75d56b6c50"},
+ {file = "yarl-1.6.3-cp38-cp38-macosx_10_14_x86_64.whl", hash = "sha256:e46fba844f4895b36f4c398c5af062a9808d1f26b2999c58909517384d5deda2"},
+ {file = "yarl-1.6.3-cp38-cp38-manylinux1_i686.whl", hash = "sha256:31ede6e8c4329fb81c86706ba8f6bf661a924b53ba191b27aa5fcee5714d18ec"},
+ {file = "yarl-1.6.3-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:fcbb48a93e8699eae920f8d92f7160c03567b421bc17362a9ffbbd706a816f71"},
+ {file = "yarl-1.6.3-cp38-cp38-manylinux2014_i686.whl", hash = "sha256:72a660bdd24497e3e84f5519e57a9ee9220b6f3ac4d45056961bf22838ce20cc"},
+ {file = "yarl-1.6.3-cp38-cp38-manylinux2014_ppc64le.whl", hash = "sha256:324ba3d3c6fee56e2e0b0d09bf5c73824b9f08234339d2b788af65e60040c959"},
+ {file = "yarl-1.6.3-cp38-cp38-manylinux2014_s390x.whl", hash = "sha256:e6b5460dc5ad42ad2b36cca524491dfcaffbfd9c8df50508bddc354e787b8dc2"},
+ {file = "yarl-1.6.3-cp38-cp38-manylinux2014_x86_64.whl", hash = "sha256:6d6283d8e0631b617edf0fd726353cb76630b83a089a40933043894e7f6721e2"},
+ {file = "yarl-1.6.3-cp38-cp38-win32.whl", hash = "sha256:9ede61b0854e267fd565e7527e2f2eb3ef8858b301319be0604177690e1a3896"},
+ {file = "yarl-1.6.3-cp38-cp38-win_amd64.whl", hash = "sha256:f0b059678fd549c66b89bed03efcabb009075bd131c248ecdf087bdb6faba24a"},
+ {file = "yarl-1.6.3-cp39-cp39-macosx_10_14_x86_64.whl", hash = "sha256:329412812ecfc94a57cd37c9d547579510a9e83c516bc069470db5f75684629e"},
+ {file = "yarl-1.6.3-cp39-cp39-manylinux1_i686.whl", hash = "sha256:c49ff66d479d38ab863c50f7bb27dee97c6627c5fe60697de15529da9c3de724"},
+ {file = "yarl-1.6.3-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:f040bcc6725c821a4c0665f3aa96a4d0805a7aaf2caf266d256b8ed71b9f041c"},
+ {file = "yarl-1.6.3-cp39-cp39-manylinux2014_i686.whl", hash = "sha256:d5c32c82990e4ac4d8150fd7652b972216b204de4e83a122546dce571c1bdf25"},
+ {file = "yarl-1.6.3-cp39-cp39-manylinux2014_ppc64le.whl", hash = "sha256:d597767fcd2c3dc49d6eea360c458b65643d1e4dbed91361cf5e36e53c1f8c96"},
+ {file = "yarl-1.6.3-cp39-cp39-manylinux2014_s390x.whl", hash = "sha256:8aa3decd5e0e852dc68335abf5478a518b41bf2ab2f330fe44916399efedfae0"},
+ {file = "yarl-1.6.3-cp39-cp39-manylinux2014_x86_64.whl", hash = "sha256:73494d5b71099ae8cb8754f1df131c11d433b387efab7b51849e7e1e851f07a4"},
+ {file = "yarl-1.6.3-cp39-cp39-win32.whl", hash = "sha256:5b883e458058f8d6099e4420f0cc2567989032b5f34b271c0827de9f1079a424"},
+ {file = "yarl-1.6.3-cp39-cp39-win_amd64.whl", hash = "sha256:4953fb0b4fdb7e08b2f3b3be80a00d28c5c8a2056bb066169de00e6501b986b6"},
+ {file = "yarl-1.6.3.tar.gz", hash = "sha256:8a9066529240171b68893d60dca86a763eae2139dd42f42106b03cf4b426bf10"},
+]
diff --git a/pyproject.toml b/pyproject.toml
index 96297e1..4279b25 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -27,6 +27,7 @@ pytest-django = "^4.4.0"
pytest-html = "^3.1.1"
model-bakery = "^1.3.2"
selenium = "^3.141.0"
+vcrpy = "^4.1.1"
[build-system]
requires = ["poetry-core>=1.0.0"]