From 85f13e5d467b358aabe196b86425687dbf1bbd75 Mon Sep 17 00:00:00 2001 From: Waldo Date: Sun, 9 Nov 2025 21:46:12 +0100 Subject: [PATCH] Work on templating --- .vs/VSWorkspaceState.json | 7 + .vs/slnx.sqlite | Bin 0 -> 90112 bytes ...21f9258a-e416-4a4d-b068-2f9e5c03d53e.vsidx | Bin 0 -> 107 bytes ...4378f7f7-9d70-4ecb-8a9c-bef7bc3dac8c.vsidx | Bin 0 -> 209 bytes ...9feb40ae-e097-48dd-ae92-a3fdbb7f48f4.vsidx | Bin 0 -> 5575 bytes ...cc49d8a0-8897-46c8-98d4-0676dcebf0d1.vsidx | Bin 0 -> 163 bytes ...e97d2a0e-edf5-4958-8159-5e13ed96e7f0.vsidx | Bin 0 -> 163 bytes .vs/ssss/v17/.wsuo | Bin 0 -> 14336 bytes .vs/ssss/v17/DocumentLayout.json | 12 + Experiment.pdf | 2152 +++++++++++++++++ Experiment.typ | 20 + chemex.typ | 103 +- main.typ | 251 ++ 13 files changed, 2528 insertions(+), 17 deletions(-) create mode 100644 .vs/VSWorkspaceState.json create mode 100644 .vs/slnx.sqlite create mode 100644 .vs/ssss/FileContentIndex/21f9258a-e416-4a4d-b068-2f9e5c03d53e.vsidx create mode 100644 .vs/ssss/FileContentIndex/4378f7f7-9d70-4ecb-8a9c-bef7bc3dac8c.vsidx create mode 100644 .vs/ssss/FileContentIndex/9feb40ae-e097-48dd-ae92-a3fdbb7f48f4.vsidx create mode 100644 .vs/ssss/FileContentIndex/cc49d8a0-8897-46c8-98d4-0676dcebf0d1.vsidx create mode 100644 .vs/ssss/FileContentIndex/e97d2a0e-edf5-4958-8159-5e13ed96e7f0.vsidx create mode 100644 .vs/ssss/v17/.wsuo create mode 100644 .vs/ssss/v17/DocumentLayout.json create mode 100644 Experiment.pdf create mode 100644 Experiment.typ create mode 100644 main.typ diff --git a/.vs/VSWorkspaceState.json b/.vs/VSWorkspaceState.json new file mode 100644 index 0000000..0307da2 --- /dev/null +++ b/.vs/VSWorkspaceState.json @@ -0,0 +1,7 @@ +{ + "ExpandedNodes": [ + "" + ], + "SelectedNode": "\\Style.typ", + "PreviewInSolutionExplorer": false +} \ No newline at end of file diff --git a/.vs/slnx.sqlite b/.vs/slnx.sqlite new file mode 100644 index 0000000000000000000000000000000000000000..c6508e53432b22a2721f2e1e363f72274f668aeb GIT binary patch literal 90112 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 literal 0 HcmV?d00001 diff --git a/.vs/ssss/FileContentIndex/21f9258a-e416-4a4d-b068-2f9e5c03d53e.vsidx b/.vs/ssss/FileContentIndex/21f9258a-e416-4a4d-b068-2f9e5c03d53e.vsidx new file mode 100644 index 0000000000000000000000000000000000000000..70aef67a00f5a48bfb0d87044cf8f151e2685b5d GIT binary patch literal 107 wcmZ>EaTnxZU~p%E02V0C38Z0cW+XOHDO{Wlsuo0n)bd05(ok9*N*hCI0FV0t;Q#;t literal 0 HcmV?d00001 diff --git a/.vs/ssss/FileContentIndex/4378f7f7-9d70-4ecb-8a9c-bef7bc3dac8c.vsidx b/.vs/ssss/FileContentIndex/4378f7f7-9d70-4ecb-8a9c-bef7bc3dac8c.vsidx new file mode 100644 index 0000000000000000000000000000000000000000..81b7f3b7c18740ea245ca071cb07242d073f8391 GIT binary patch literal 209 zcmZ>EaTnxZU|7ol0a;Mm7)U!?#e^2878S>YC+4K&$GD^xXP4v`#1sQTOmInMPO4r( zN*YAH1GmJ({l0e?iPDl3m||4w`yUEepf)lCX&4*mAUK;1Di5MS^88SKBb4ri(lenn E0DP4$8vp+DhtC53IEy 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 literal 0 HcmV?d00001 diff --git a/.vs/ssss/FileContentIndex/cc49d8a0-8897-46c8-98d4-0676dcebf0d1.vsidx b/.vs/ssss/FileContentIndex/cc49d8a0-8897-46c8-98d4-0676dcebf0d1.vsidx new file mode 100644 index 0000000000000000000000000000000000000000..55d13b3b07d633e33b53c53af53371e54ad63644 GIT binary patch literal 163 zcmZ>EaTnxZV5nz+02?T60i>O+VnT~ki;82y6LV7XV_Z^;vrF;|Vv2zvCL^&bu_z@z zEhjNIH!&$ERj(i~eXX%T(SF}Mj4V(yn1M8m4YUHzW`oLuD3ClqlphSGEaTnxZV5nz+02?T60i>O+VnT~ki;82y6LV7XV_Z^;vrF;|Vv2zvCL^&bu_z@z zIlrhVzc{ljRj(i~eZH93g#EsE7+IiZFav2A8)yZb%?6bRQ6PDKC_flV$3y9CC=CFu CS{aN0 literal 0 HcmV?d00001 diff --git a/.vs/ssss/v17/.wsuo b/.vs/ssss/v17/.wsuo new file mode 100644 index 0000000000000000000000000000000000000000..2ee39562c7d43dc8e28bf29ef4d3bbc5b0919b2f GIT binary patch literal 14336 zcmeI2$#Yai9LIZth`53vDxyY=h)QA>0t5vEVYM7V!eVJWFiRk0l1$A^SZ@9Sp1phb z;>Dv{76;4H!au-+9IR5WoF#s~-SZ}$H%s2kK;X&r)bG9So__u7-`c-ke!H>$kFUPj zeA9%|ezVHlURY}$_UaQ}-mEibBW2ayURYSrU&@p1q!@AFl$qmKGTr8|ndMzD*Cfiw zX_Hx9k@@OnzFK$dpTDmse@{F{yC0r*jZcDc&RjCb!9Gduu(`TSFH8U4WV$N&#rCED z)-JtIHR@|qfM0m?CdUX0CJT(ii}OIX+^*iM$8;rpao20-*N;+|E?1l|^I*xDDd-nm z@Gu{urr>{ABQN|9QQrkbrT-{x1G|2P{J%Z{C~K)yhFp!Ztd&jRX4YwFZjHSAQZI0q!xS|FLJUOFJTYR+Cx{)z`RpJ>jI-`6}M zUDCYp0Ih$m-bkSTJrX3Rb(i99Y)Td*;Z`v*qV zNIQr>Bk#2EM0WJHP%Q z1;tBBV^Dt{T*5X5<||dBaP8_niN7keiwE`E`SsGPpnM3NDL8$BpW@DQmg8x2ky0^e z)ZpFS0{-{tPqwOb5P8oLjn06#z&mQ(>%NvvcO?=O`ykyc=E0^Pe;@?&D6U;HT(`6oq`CoIIlHz`8TmhXsk1iZx968JTU}cbHB&E7q zv9|^OFO~nCrE~_I()x4YpEVhHaK)VDS)^P7WSg~k(GUHK$tBOI{69on`AMa){)v9! zmtT`P4`>|_6~B0&(quxakN+AvnPL<<*RakL{CCv;lF&N?R;`15S=8da zhJ^oX8oy$#(`9C399weF8D9LYu=5@f5moMGb;HsCb0ln zf%8Ot=={93$vHT36ui=iy!nt8(pJZj{ovOeuQ@*|e))^C_#@*#4R+~*Y$5Mi0``{> zKNVv{#ZS`;{&6%sjirgY%k-UrvH}rCcwX$oL(M^X#(IKz_*7Ci2Kt+p|1rJ`{7*CZ zHBXiB*qW7R8TCc_8EpZ-?|;UjSDs(JNy~)c6m_zD(fAQE7e_QV7Asy_l)JPC{Mri$ z_6&mhMsFW~BmFxG)>(d8xPHV^y{LCV|LA|y{Fm-W(Z92n@{*mSQWe@Y;tZU*Xtfaj zCluRC_mqNhHF|5l3g+KN^q&KVq;LX_*IRrDr@cezNA^*R6gZ6;G$#-Qj@jK>oPZ)b97v!*=k?j`aOvANf&=kyE?lkBq26!(c7q zH)*HN?ecPT*nP>|P|F2<)mHmi)4iU2ske}dN z&3;<7YPOzW)ZfK)}V*|24X-<)MI##?7kNhh8 zbvt8Cf#T;GOTqP+SaDbeY5cEzs?#Y>XJbmo6tl%1^huWdQ%q@aXTj4*B#(tVuN0U0 zEzqFAD`_>Ei?uW^V->QF0(4BVA0^HDIi{K=S_(G$(k_bD(xN6VK1;VTa*TQsDi-Ix zpd5EP9Ch)PM|Dh&YDGv1Z{-%Dc~ukb<+PKuZrlsFb~Cq~XUw}ai?!}-*F)^aBre>+L%W^OOYUkRU~Ry`l@a@unSj}t!c^7s5|dk$CI%K7VYKGkeSGboQ;i zm-@GE+_!q_{!6p=uP8J)|F4DL-GIw5ij2LV)Mz}q{~=$x0f7MR?$n$pY4>(@N>G>a~&rWy% literal 0 HcmV?d00001 diff --git a/.vs/ssss/v17/DocumentLayout.json b/.vs/ssss/v17/DocumentLayout.json new file mode 100644 index 0000000..a2ccbc6 --- /dev/null +++ b/.vs/ssss/v17/DocumentLayout.json @@ -0,0 +1,12 @@ +{ + "Version": 1, + "WorkspaceRootPath": "C:\\Users\\Waldo\\Desktop\\ssss\\", + "Documents": [], + "DocumentGroupContainers": [ + { + "Orientation": 0, + "VerticalTabListWidth": 256, + "DocumentGroups": [] + } + ] +} \ No newline at end of file diff --git a/Experiment.pdf b/Experiment.pdf new file mode 100644 index 0000000..875c8a2 --- /dev/null +++ b/Experiment.pdf @@ -0,0 +1,2152 @@ +%PDF-1.7 +% + +1 0 obj +<< + /Type /Pages + /Count 1 + /Kids [113 0 R] +>> +endobj + +2 0 obj +<< + /Type /StructTreeRoot + /RoleMap << + /Datetime /Span + /Terms /Part + /Title /P + /Strong /Span + /Em /Span + >> + /K [4 0 R] + /ParentTree << + /Nums [0 3 0 R] + >> + /ParentTreeNextKey 1 +>> +endobj + +3 0 obj +[94 0 R 92 0 R 90 0 R 88 0 R 86 0 R 84 0 R 82 0 R 80 0 R 78 0 R 76 0 R 71 0 R 70 0 R 64 0 R 61 0 R 60 0 R 58 0 R 57 0 R 51 0 R 48 0 R 46 0 R 38 0 R 35 0 R 35 0 R 33 0 R 29 0 R 29 0 R 27 0 R 20 0 R 17 0 R 12 0 R 9 0 R] +endobj + +4 0 obj +<< + /Type /StructElem + /S /Document + /P 2 0 R + /K [72 0 R 65 0 R 39 0 R 21 0 R 13 0 R 5 0 R] +>> +endobj + +5 0 obj +<< + /Type /StructElem + /S /Div + /P 4 0 R + /K [6 0 R] +>> +endobj + +6 0 obj +<< + /Type /StructElem + /S /Div + /P 5 0 R + /K [7 0 R] +>> +endobj + +7 0 obj +<< + /Type /StructElem + /S /Div + /P 6 0 R + /K [11 0 R 10 0 R 8 0 R] +>> +endobj + +8 0 obj +<< + /Type /StructElem + /S /Div + /P 7 0 R + /K [9 0 R] +>> +endobj + +9 0 obj +<< + /Type /StructElem + /S /Span + /P 8 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [30] + /Pg 113 0 R +>> +endobj + +10 0 obj +<< + /Type /StructElem + /S /Div + /P 7 0 R + /K [] +>> +endobj + +11 0 obj +<< + /Type /StructElem + /S /Div + /P 7 0 R + /K [12 0 R] +>> +endobj + +12 0 obj +<< + /Type /StructElem + /S /Span + /P 11 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [29] + /Pg 113 0 R +>> +endobj + +13 0 obj +<< + /Type /StructElem + /S /Div + /P 4 0 R + /K [14 0 R] +>> +endobj + +14 0 obj +<< + /Type /StructElem + /S /Div + /P 13 0 R + /K [15 0 R] +>> +endobj + +15 0 obj +<< + /Type /StructElem + /S /Div + /P 14 0 R + /K [19 0 R 18 0 R 16 0 R] +>> +endobj + +16 0 obj +<< + /Type /StructElem + /S /Div + /P 15 0 R + /K [17 0 R] +>> +endobj + +17 0 obj +<< + /Type /StructElem + /S /Span + /P 16 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [28] + /Pg 113 0 R +>> +endobj + +18 0 obj +<< + /Type /StructElem + /S /Div + /P 15 0 R + /K [] +>> +endobj + +19 0 obj +<< + /Type /StructElem + /S /Div + /P 15 0 R + /K [20 0 R] +>> +endobj + +20 0 obj +<< + /Type /StructElem + /S /Span + /P 19 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [27] + /Pg 113 0 R +>> +endobj + +21 0 obj +<< + /Type /StructElem + /S /Div + /P 4 0 R + /K [22 0 R] +>> +endobj + +22 0 obj +<< + /Type /StructElem + /S /Div + /P 21 0 R + /K [23 0 R] +>> +endobj + +23 0 obj +<< + /Type /StructElem + /S /Div + /P 22 0 R + /K [37 0 R 36 0 R 30 0 R 24 0 R] +>> +endobj + +24 0 obj +<< + /Type /StructElem + /S /Div + /P 23 0 R + /K [25 0 R] +>> +endobj + +25 0 obj +<< + /Type /StructElem + /S /Div + /P 24 0 R + /K [28 0 R 26 0 R] +>> +endobj + +26 0 obj +<< + /Type /StructElem + /S /Div + /P 25 0 R + /K [27 0 R] +>> +endobj + +27 0 obj +<< + /Type /StructElem + /S /Figure + /P 26 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [26] + /Pg 113 0 R +>> +endobj + +28 0 obj +<< + /Type /StructElem + /S /Div + /P 25 0 R + /K [29 0 R] +>> +endobj + +29 0 obj +<< + /Type /StructElem + /S /Span + /P 28 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [24 25] + /Pg 113 0 R +>> +endobj + +30 0 obj +<< + /Type /StructElem + /S /Div + /P 23 0 R + /K [31 0 R] +>> +endobj + +31 0 obj +<< + /Type /StructElem + /S /Div + /P 30 0 R + /K [34 0 R 32 0 R] +>> +endobj + +32 0 obj +<< + /Type /StructElem + /S /Div + /P 31 0 R + /K [33 0 R] +>> +endobj + +33 0 obj +<< + /Type /StructElem + /S /Figure + /P 32 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [23] + /Pg 113 0 R +>> +endobj + +34 0 obj +<< + /Type /StructElem + /S /Div + /P 31 0 R + /K [35 0 R] +>> +endobj + +35 0 obj +<< + /Type /StructElem + /S /Span + /P 34 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [21 22] + /Pg 113 0 R +>> +endobj + +36 0 obj +<< + /Type /StructElem + /S /Div + /P 23 0 R + /K [] +>> +endobj + +37 0 obj +<< + /Type /StructElem + /S /Div + /P 23 0 R + /K [38 0 R] +>> +endobj + +38 0 obj +<< + /Type /StructElem + /S /Span + /P 37 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [20] + /Pg 113 0 R +>> +endobj + +39 0 obj +<< + /Type /StructElem + /S /Div + /P 4 0 R + /K [52 0 R 40 0 R] +>> +endobj + +40 0 obj +<< + /Type /StructElem + /S /Div + /P 39 0 R + /K [41 0 R] +>> +endobj + +41 0 obj +<< + /Type /StructElem + /S /Div + /P 40 0 R + /K [50 0 R 49 0 R 43 0 R 42 0 R] +>> +endobj + +42 0 obj +<< + /Type /StructElem + /S /Div + /P 41 0 R + /K [] +>> +endobj + +43 0 obj +<< + /Type /StructElem + /S /Div + /P 41 0 R + /K [44 0 R] +>> +endobj + +44 0 obj +<< + /Type /StructElem + /S /Div + /P 43 0 R + /K [47 0 R 45 0 R] +>> +endobj + +45 0 obj +<< + /Type /StructElem + /S /Div + /P 44 0 R + /K [46 0 R] +>> +endobj + +46 0 obj +<< + /Type /StructElem + /S /Figure + /P 45 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [19] + /Pg 113 0 R +>> +endobj + +47 0 obj +<< + /Type /StructElem + /S /Div + /P 44 0 R + /K [48 0 R] +>> +endobj + +48 0 obj +<< + /Type /StructElem + /S /Figure + /P 47 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [18] + /Pg 113 0 R +>> +endobj + +49 0 obj +<< + /Type /StructElem + /S /Div + /P 41 0 R + /K [] +>> +endobj + +50 0 obj +<< + /Type /StructElem + /S /Div + /P 41 0 R + /K [51 0 R] +>> +endobj + +51 0 obj +<< + /Type /StructElem + /S /Span + /P 50 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [17] + /Pg 113 0 R +>> +endobj + +52 0 obj +<< + /Type /StructElem + /S /Div + /P 39 0 R + /K [53 0 R] +>> +endobj + +53 0 obj +<< + /Type /StructElem + /S /Div + /P 52 0 R + /K [63 0 R 62 0 R 54 0 R] +>> +endobj + +54 0 obj +<< + /Type /StructElem + /S /Div + /P 53 0 R + /K [55 0 R] +>> +endobj + +55 0 obj +<< + /Type /StructElem + /S /Table + /P 54 0 R + /K [59 0 R 56 0 R] +>> +endobj + +56 0 obj +<< + /Type /StructElem + /S /TR + /P 55 0 R + /K [58 0 R 57 0 R] +>> +endobj + +57 0 obj +<< + /Type /StructElem + /S /TD + /P 56 0 R + /A [<< + /O /Layout + /BorderColor [0 0 0] + /BorderStyle [/Dashed /None /None /None] + /BorderThickness [0.1 0 0 0] + >>] + /K [16] + /Pg 113 0 R +>> +endobj + +58 0 obj +<< + /Type /StructElem + /S /TD + /P 56 0 R + /A [<< + /O /Layout + /BorderColor [0 0 0] + /BorderStyle [/Dashed /None /None /None] + /BorderThickness [0.1 0 0 0] + >>] + /K [15] + /Pg 113 0 R +>> +endobj + +59 0 obj +<< + /Type /StructElem + /S /TR + /P 55 0 R + /K [61 0 R 60 0 R] +>> +endobj + +60 0 obj +<< + /Type /StructElem + /S /TD + /P 59 0 R + /A [<< + /O /Layout + /BorderColor [0 0 0] + /BorderStyle [/None /Dashed /None /None] + /BorderThickness [0 0.1 0 0] + >>] + /K [14] + /Pg 113 0 R +>> +endobj + +61 0 obj +<< + /Type /StructElem + /S /TD + /P 59 0 R + /A [<< + /O /Layout + /BorderColor [0 0 0] + /BorderStyle [/None /Dashed /None /None] + /BorderThickness [0 0.1 0 0] + >>] + /K [13] + /Pg 113 0 R +>> +endobj + +62 0 obj +<< + /Type /StructElem + /S /Div + /P 53 0 R + /K [] +>> +endobj + +63 0 obj +<< + /Type /StructElem + /S /Div + /P 53 0 R + /K [64 0 R] +>> +endobj + +64 0 obj +<< + /Type /StructElem + /S /Span + /P 63 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [12] + /Pg 113 0 R +>> +endobj + +65 0 obj +<< + /Type /StructElem + /S /P + /P 4 0 R + /K [66 0 R] +>> +endobj + +66 0 obj +<< + /Type /StructElem + /S /Table + /P 65 0 R + /K [67 0 R] +>> +endobj + +67 0 obj +<< + /Type /StructElem + /S /TR + /P 66 0 R + /K [71 0 R 70 0 R 69 0 R 68 0 R] +>> +endobj + +68 0 obj +<< + /Type /StructElem + /S /TD + /P 67 0 R + /K [] +>> +endobj + +69 0 obj +<< + /Type /StructElem + /S /TD + /P 67 0 R + /K [] +>> +endobj + +70 0 obj +<< + /Type /StructElem + /S /TD + /P 67 0 R + /K [11] + /Pg 113 0 R +>> +endobj + +71 0 obj +<< + /Type /StructElem + /S /TD + /P 67 0 R + /K [10] + /Pg 113 0 R +>> +endobj + +72 0 obj +<< + /Type /StructElem + /S /Div + /P 4 0 R + /K [93 0 R 73 0 R] +>> +endobj + +73 0 obj +<< + /Type /StructElem + /S /Div + /P 72 0 R + /K [74 0 R] +>> +endobj + +74 0 obj +<< + /Type /StructElem + /S /Div + /P 73 0 R + /K [91 0 R 89 0 R 87 0 R 85 0 R 83 0 R 81 0 R 79 0 R 77 0 R 75 0 R] +>> +endobj + +75 0 obj +<< + /Type /StructElem + /S /Div + /P 74 0 R + /K [76 0 R] +>> +endobj + +76 0 obj +<< + /Type /StructElem + /S /Figure + /P 75 0 R + /Alt (Toxic sign) + /A [<< + /O /Layout + /Placement /Block + >>] + /K [9] + /Pg 113 0 R +>> +endobj + +77 0 obj +<< + /Type /StructElem + /S /Div + /P 74 0 R + /K [78 0 R] +>> +endobj + +78 0 obj +<< + /Type /StructElem + /S /Figure + /P 77 0 R + /Alt (Serious Health hazard sign) + /A [<< + /O /Layout + /Placement /Block + >>] + /K [8] + /Pg 113 0 R +>> +endobj + +79 0 obj +<< + /Type /StructElem + /S /Div + /P 74 0 R + /K [80 0 R] +>> +endobj + +80 0 obj +<< + /Type /StructElem + /S /Figure + /P 79 0 R + /Alt (Health Hazard sign) + /A [<< + /O /Layout + /Placement /Block + >>] + /K [7] + /Pg 113 0 R +>> +endobj + +81 0 obj +<< + /Type /StructElem + /S /Div + /P 74 0 R + /K [82 0 R] +>> +endobj + +82 0 obj +<< + /Type /StructElem + /S /Figure + /P 81 0 R + /Alt (Toxic sign) + /A [<< + /O /Layout + /Placement /Block + >>] + /K [6] + /Pg 113 0 R +>> +endobj + +83 0 obj +<< + /Type /StructElem + /S /Div + /P 74 0 R + /K [84 0 R] +>> +endobj + +84 0 obj +<< + /Type /StructElem + /S /Figure + /P 83 0 R + /Alt (Corrosive sign) + /A [<< + /O /Layout + /Placement /Block + >>] + /K [5] + /Pg 113 0 R +>> +endobj + +85 0 obj +<< + /Type /StructElem + /S /Div + /P 74 0 R + /K [86 0 R] +>> +endobj + +86 0 obj +<< + /Type /StructElem + /S /Figure + /P 85 0 R + /Alt (Compressed Gas sign) + /A [<< + /O /Layout + /Placement /Block + >>] + /K [4] + /Pg 113 0 R +>> +endobj + +87 0 obj +<< + /Type /StructElem + /S /Div + /P 74 0 R + /K [88 0 R] +>> +endobj + +88 0 obj +<< + /Type /StructElem + /S /Figure + /P 87 0 R + /Alt (Oxidizing sign) + /A [<< + /O /Layout + /Placement /Block + >>] + /K [3] + /Pg 113 0 R +>> +endobj + +89 0 obj +<< + /Type /StructElem + /S /Div + /P 74 0 R + /K [90 0 R] +>> +endobj + +90 0 obj +<< + /Type /StructElem + /S /Figure + /P 89 0 R + /Alt (Flammable sign) + /A [<< + /O /Layout + /Placement /Block + >>] + /K [2] + /Pg 113 0 R +>> +endobj + +91 0 obj +<< + /Type /StructElem + /S /Div + /P 74 0 R + /K [92 0 R] +>> +endobj + +92 0 obj +<< + /Type /StructElem + /S /Figure + /P 91 0 R + /Alt (Explosive sign) + /A [<< + /O /Layout + /Placement /Block + >>] + /K [1] + /Pg 113 0 R +>> +endobj + +93 0 obj +<< + /Type /StructElem + /S /Div + /P 72 0 R + /K [94 0 R] +>> +endobj + +94 0 obj +<< + /Type /StructElem + /S /P + /P 93 0 R + /K [0] + /Pg 113 0 R +>> +endobj + +95 0 obj +<< + /Type /Font + /Subtype /Type0 + /BaseFont /KQATPM+LibertinusSerif-Bold-Identity-H + /Encoding /Identity-H + /DescendantFonts [96 0 R] + /ToUnicode 99 0 R +>> +endobj + +96 0 obj +<< + /Type /Font + /Subtype /CIDFontType0 + /BaseFont /KQATPM+LibertinusSerif-Bold + /CIDSystemInfo << + /Registry (Adobe) + /Ordering (Identity) + /Supplement 0 + >> + /FontDescriptor 98 0 R + /DW 0 + /W [0 0 500 1 1 899 2 2 505.99997 3 3 358 4 4 489 5 5 428 6 6 322 7 7 325 8 8 732 9 9 542 10 10 427 11 11 456 12 12 619 13 13 734 14 14 598 15 15 391 16 16 598 17 17 616 18 18 521 19 19 367 20 20 581 21 21 551 22 22 730 23 23 529] +>> +endobj + +97 0 obj +<< + /Length 11 + /Filter /FlateDecode +>> +stream +x? +endstream +endobj + +98 0 obj +<< + /Type /FontDescriptor + /FontName /KQATPM+LibertinusSerif-Bold + /Flags 131078 + /FontBBox [0 -238 881 824] + /ItalicAngle 0 + /Ascent 894 + /Descent -246 + /CapHeight 645 + /StemV 168.6 + /CIDSet 97 0 R + /FontFile3 100 0 R +>> +endobj + +99 0 obj +<< + /Length 928 + /Type /CMap + /WMode 0 +>> +stream +%!PS-Adobe-3.0 Resource-CMap +%%DocumentNeededResources: procset CIDInit +%%IncludeResource: procset CIDInit +%%BeginResource: CMap Custom +%%Title: (Custom Adobe Identity 0) +%%Version: 1 +%%EndComments +/CIDInit /ProcSet findresource begin +12 dict begin +begincmap +/CIDSystemInfo 3 dict dup begin + /Registry (Adobe) def + /Ordering (Identity) def + /Supplement 0 def +end def +/CMapName /Custom def +/CMapVersion 1 def +/CMapType 0 def +/WMode 0 def +1 begincodespacerange +<0000> +endcodespacerange +23 beginbfchar +<0001> <004D> +<0002> <0061> +<0003> <0074> +<0004> <0065> +<0005> <0072> +<0006> <0069> +<0007> <006C> +<0008> <00DC> +<0009> <0062> +<000A> <0073> +<000B> <0063> +<000C> <0068> +<000D> <0044> +<000E> <0075> +<000F> <0066> +<0010> <00FC> +<0011> <006E> +<0012> <0067> +<0013> <0049> +<0014> <0070> +<0015> <006F> +<0016> <004F> +<0017> <0076> +endbfchar +endcmap +CMapName currentdict /CMap defineresource pop +end +end +%%EndResource +%%EOF +endstream +endobj + +100 0 obj +<< + /Length 2931 + /Filter /FlateDecode + /Subtype /CIDFontType0C +>> +stream +xVy|eN ab""RE9P(GEҦ-mi6M2ۤN4І`K)VEKX,rxuE +??o<~<7e +ϧ%(S2r/&(Rz*3-Q1i<`1,BxGn1,wWx>_(yne|f\Bx|BFvJv̬|EJRrvO Y  LN) YvʜLa/Ikuuv #~O5{t:H۸!Bx<^V3 |A`?Z4~SN\A >xJO`/DSWLx9qQ!0p&t¿&`9TrT8!^&3_n,pC10L . +%pVաt0B!74y "K5:h 96 5϶ -3fY3-־b=cQĆ +!zۀbM7wʈIZmt: +uTs-BP56f-  9\{I(Q_6\  %*;_F{< VW{<*Gp1@kShJlxfMN_o{Xw&XU#yV2cv0Ӯi#,'P0PS; =smR ~{g E8`\QT-d`FBhF4lOiΧZ{KMLV{sꇘ!kBGtc?GSiә+hbybIyNg˳a 3)ΞywhPӨ&s_Z1 Q` +HDoڽ^WVkOw%%'ocB⨁eUETLqTQx^c3iD#BK*I>!MYJ4ܿ 7 +ABVl2jKmEtfɒRƔ{,DQ\L{cc55])8ZPN]qd䥟ә $gO=^n)銍%Rщ ++FJ[)4”`JI{fzr nݾ-=Pav?=Hǝ=BAI!\l&<nӇH).ָtz{'I*ynumrB!RSv;nM.W*䴤Dۭn?Dc P{'P}6kkuTm J{C=@BjΨJꈢҢU l~S6te:>wq-Ȯic$(HMO@  ²S 4U0J遲6&۶I$/rw]=]Q),uur#Ε˙,2F٨SF]E"o~uwgm:.0ZA;p%|JKDYJ^b+ AȰgod;rݔ눏;=5/I(4-Wq\ A**.VbdZc\6/s1VWDk1AmTӊT}>%K_"Ul[}z`6~n5ڤ0bcUEq;k7Mzhd߫QI@_׮gk0s anuKKPYI^jpGڑ{b" w&1ydK(crB(}DN->2x^)\ !<ަtu;n3-]La4ݩv9] +gzRFKN k z(wY@7JzGB$Ѻ d [f-~Y[y6Y%G>xUAP W1$_㇆$&:xwu%x!uW;UXuN*++~3+jpHK晋4~$^TS֤ܵ#b7X#;G߅ Y}XAǣ+WRY&>GQ77~hؑZtҎ ^ј=U9O,"|&?m> +~Ckuu)08E,޵lXCGߑekT]wVCx\nj^;WazZjF&2vKfczZ))Dg mZdj30N5v[Dr6'1јuH Vώ +endstream +endobj + +101 0 obj +<< + /Type /Font + /Subtype /Type0 + /BaseFont /FPPUPS+LibertinusSerif-Regular-Identity-H + /Encoding /Identity-H + /DescendantFonts [102 0 R] + /ToUnicode 105 0 R +>> +endobj + +102 0 obj +<< + /Type /Font + /Subtype /CIDFontType0 + /BaseFont /FPPUPS+LibertinusSerif-Regular + /CIDSystemInfo << + /Registry (Adobe) + /Ordering (Identity) + /Supplement 0 + >> + /FontDescriptor 104 0 R + /DW 0 + /W [0 0 500 1 1 839 2 2 447 3 3 316 4 4 538 5 5 457 6 6 542 7 7 338 8 8 790 9 9 493 10 10 661 11 11 328 12 12 390 13 13 595 14 14 485 15 15 428 16 16 372 17 17 271 18 18 250 19 19 465 20 20 236 21 21 465 22 22 485 23 23 730 24 24 531 25 25 505.99997] +>> +endobj + +103 0 obj +<< + /Length 12 + /Filter /FlateDecode +>> +stream +x  +endstream +endobj + +104 0 obj +<< + /Type /FontDescriptor + /FontName /FPPUPS+LibertinusSerif-Regular + /Flags 131078 + /FontBBox [0 -13 821 698] + /ItalicAngle 0 + /Ascent 894 + /Descent -246 + /CapHeight 658 + /StemV 95.4 + /CIDSet 103 0 R + /FontFile3 106 0 R +>> +endobj + +105 0 obj +<< + /Length 960 + /Type /CMap + /WMode 0 +>> +stream +%!PS-Adobe-3.0 Resource-CMap +%%DocumentNeededResources: procset CIDInit +%%IncludeResource: procset CIDInit +%%BeginResource: CMap Custom +%%Title: (Custom Adobe Identity 0) +%%Version: 1 +%%EndComments +/CIDInit /ProcSet findresource begin +12 dict begin +begincmap +/CIDSystemInfo 3 dict dup begin + /Registry (Adobe) def + /Ordering (Identity) def + /Supplement 0 def +end def +/CMapName /Custom def +/CMapVersion 1 def +/CMapType 0 def +/WMode 0 def +1 begincodespacerange +<0000> +endcodespacerange +25 beginbfchar +<0001> <004D> +<0002> <0065> +<0003> <0074> +<0004> <0068> +<0005> <0061> +<0006> <006E> +<0007> <002D> +<0008> <006D> +<0009> <0062> +<000A> <0055> +<000B> <0066> +<000C> <0073> +<000D> <00660066> +<000E> <0053> +<000F> <0063> +<0010> <0072> +<0011> <0069> +<0012> <0020> +<0013> <0031> +<0014> <003A> +<0015> <0032> +<0016> <0046> +<0017> <0048> +<0018> <0075> +<0019> <0064> +endbfchar +endcmap +CMapName currentdict /CMap defineresource pop +end +end +%%EndResource +%%EOF +endstream +endobj + +106 0 obj +<< + /Length 3232 + /Filter /FlateDecode + /Subtype /CIDFontType0C +>> +stream +xV xuO,Ɍgp>Zd @˫/hIhM$<&Ϧ4mJ۴i6<eEFEW>Ђsw~9bь"X< +eAIbc^E'7,ʪK1~%x0 М> 8ƾVH$!HC"'̋-%a~q-a(N,Vf+Q(XZ`OrIz2Esށ5w]Ey9ʹ +S"="hvO?\=ATй!<>}½Lp|tfԞp?.E"y4e6@ /b"4j^s*.k#3^lܐfAAxޔ{x"yf&}ȼ1bf?߮i~9r.)7!} IRs:T| _ N<^~,97J8a%M?,1Kes  {?z0H[- `H|oH_:!dN{wF:XڊIu5&iYX]^\WryN .$KZ# -AgtR5F֠5k-v!UTFN< +vGb/;='7܏5k¥6Pְ)QHf#P,|6SѦ~GQeo*ckk!hihHʂJ ri`*/1 [,4_7WBɵv,Cl/ SXu Tv {J Oz<2GEl 76 185Lꫴ5X ?LG 0WmKS7mPxj[:di ͹}Gh0* 2"hʉ=AG tPblב@Ymt/Y$uW2N zD6S?傑dar]D$|rSQas A6F"; oic'C٩ ?H$Qvr!ccuL(pǁP%Rimr9 L(fAF” Y'kH>6![NGz:v +BX +Q S޵$[j>FBxiP}?\A)Zjt{b9v[7ntu[VMߌ$erܮ۲dH=ekFO NS,q9IN !]wſ<\zlq.p[m =؟/B {Ң]yUEHr8Ό>&H?DUM ䷺ݸÐ+qI>`{߂ߦzAf o㴱JF# 3H^FibM+UiKF@CŒ**3PG1qt,*T>?vƁTIil@.8 XCT=&m5u3+^] s^YlQw;_1lzpo:[5 wP Tc!Fx.4#SG:s+ZE3Hȫ$&IX6p+e{UwQ#|Ŀdrr]ҷ-c>#kSk|S#{kZ.{2`dʫwsf8|wGS:͏}?q+pu #vLHԎq!qq? :w܅-]s O9Dūc"$a / $~!^WZExH=X"Xop\L5渇g#agj-( s?n y0ӤqISӈZZ[ ÷#k[\%ԓaCeBاW5x:N( V.B~;f[)K^ɹ8"7LL7$;tLdi\^(U{ +!NʒL!Z bC3zfb xz+ I¾f·5Z˨aHC6ʄw7@ qOK@C()Q(Jp0>'k$,oI|}" #gro1xaLv`Nz8|!<^*ukԥ꣏TgCqs^v  %6HjZb&IG9g#Q Z8<R4 +|wNPU+HerH?;Vfq$Jr*$t9)Bzć7ZsҚ lq%j`W&lY#DU] i!nSz~+\%WEt; ޝD ,@Z| +v%_ FMovg;-K"XCXٲ5Q #l_x1LpM;DVշ(2MQfuY=lp0hc93m>pqLl:( +ҡ[ +=l4Qc}J6A{MujyXVU#%TH҂+e1z)("1X# +5DՔ"̂&7d7YCU. ‘I) ++MOF,MXFDx-"T}6 +endstream +endobj + +107 0 obj +[/ICCBased 110 0 R] +endobj + +108 0 obj +[/ICCBased 111 0 R] +endobj + +109 0 obj +[/ICCBased 112 0 R] +endobj + +110 0 obj +<< + /Length 258 + /N 1 + /Range [0 1] + /Filter /FlateDecode +>> +stream +xuJPFOUvDD@`]\ +FMkIRB|&إnऋ(HrTų9` ըa&ʺ:l +3Ŭ*ުnh)&C|>b纝黓AvCƫ+ y') +̵8+/> +stream +x}Kq?UX 94%MQKSN#ԦQvBˡhFk ! +ՠZP~xx^ޗQx"^P c!H0 + 0l+ߣy7;׫;Q?V._tF3LEK)y z80eIPkT/%[p:8+%d"G `d_{ٹ֖gzm\8rSif1\CU` S] @o _ +endstream +endobj + +112 0 obj +<< + /Length 2599 + /N 3 + /Range [0 1 0 1 0 1] + /Filter /FlateDecode +>> +stream +xSwXSw>Jl"#!S$@!(*E!u" ED*.}>_?};ysh!"q)I#q lb@ْ(h@_.;;(WlʗHeH88|$2reE| )4.>P|ڧSbD)PNX# +( sk`!`B^6˄T-Фё\ - ..)fIKE)2ߜmas32U8Γ +ܬL OsϟЖusqrBz3{3Gj8?b Zh#f@9~XyI$66"!Z! _Zay [?+#K.egKx|!C "BPcD\8 D2Q-'e_yQA ݀cPKܥpwB1ؼXs @lQʧ:nd4/|>S%MC0+gpO hyT)2X Pa;T@5B4ahcp% pa8IAa bX""!H$$!)#ː5HRT {:[(r!7!d yb( e: jrP/4F)Bt nB ڂF/ b,L8 dL +Rkڱ.*6=8¹pq|B +F\׉>xm%çsR>|3,?I XS3!OH#,%l$$4NÄ "I$ÈQ/s4^OmޯS>OOl +{~~)~ ~KO\ 9- GWA[C2%aa[/ >Q .rYdW#j~T}h۳fgw($ż-[w)^+^ߖ@LIؗ01w9#sM.{aּy+?OMOz &.Z0w <cBwap4=$a{֔T'"B,- :UzXM̤̣b5q3K7kQVRR \pqit_6=7MƔIdr3ZP̜ʜ׹1G./^lx%~K^[_ڱLeC˽YXc#WXMY<ۼkb״^뿶@@Zp}ۺ=6oP((Xd[TZn#ů*M=NŻ667lrDdIЭ- +>;(;;Bʍ7HlҮPj`]uOKIM^ޜjcj|]Ok_ѾDs׮/n@ c^盶F=MCpH~ѷI>qs;漢ͅ-HAG;ڛ~1cՏ?䒓$N9=13:#:{=ܙ.zEKNZpǩ׹}'x\9}k.=pzof|v+Uww +-}G uߏ{?ލ??({hؘGs<<|RUO͞~/q#Ϥ>/2ךzvt2]{?o +endstream +endobj + +113 0 obj +<< + /Type /Page + /Resources << + /ProcSet [/PDF /Text /ImageC /ImageB] + /ColorSpace << + /c0 107 0 R + /c1 108 0 R + >> + /XObject << + /x0 115 0 R + >> + /Font << + /f0 101 0 R + /f1 95 0 R + >> + >> + /MediaBox [0 0 595.2756 841.8898] + /StructParents 0 + /Parent 1 0 R + /Contents 114 0 R +>> +endobj + +114 0 obj +<< + /Length 25455 + /Filter /FlateDecode +>> +stream +xɮ-u?OMXQ`)i&p/)%i7fĮNLR#;ys;bsb17_O~ӷ}k]_n/K[ԭcøt~w?[yqi.4]}zx?_~׿o͗mn2?o~[}ۏw}緿տC;ֿS;׿K>ܗooշ}V?˧w_2\K.eu> {7n:Lk߼[[gnst/wmu_itaZ.ֵa/͗npq{~,s7e[]ٵ}нpp +וs+v+% Y4ۧ#ۯǟ72ܸe޶a~LByܵmi6eZex6/k6t,eٺ6;օj:]ֵ͗1^˶;o>umKm][2~ʶ^1˺б^\Jv̶ִ_ksY.̋>åo42][-./ҵM;zZ.MɜdnXr>^&gag`qm,k4\r˼um6v.㘞)~tf1ϋ%Kbe/cr/<_{z/[o]Ƌصy^.W۔Kdgi5#~w3gAʭ~סW=TX֬6si^668)q^]ieSK7Mm+˲pLiQki./atmj3m|(*0O7JeG ;9:Nə8:ǫ=&DsȫD~Ϭ|D_ֱkm_J/r,LeBh0D3䦉#)ҌsɠmPMcsھL^5*g.Fe/뚞5_8fo9*=ww]s~v*2m%ј-ccFRۇ:$ď]gCPh3crsyV+d+-zÕ#hjӀv ߋj 5cz4z-,3ΌD){AQ:x0Ǚrf#2|[دvQaW<6,5"VV ]SӡZo8Zl`-iwպ~8V}W;n̼<9cІa+n#ڨ[mV?l!Q>/*jRWM۷nGGkS;4𡏸zZгox#Uw΢R9/]U ="~}Z=nÙmP#߆ {g^m{[/ҢO8\FVWyOegcZ#=:'-5:h^ 6 +ݯc~yr3,h͗a~F|Yǭvt}ֳ߳35z)82.ݾ#uÎ {ӻhptቭX晫<:}:Ě}i;>y_yͷm3[ݺ|~)ۢ1ȩ3g +yÐyGFJxĢg^qmsL>޺N7dKZ{xʋ4G9mwYVDzsNCOιk0^Ɖ/ G[^vG!hd4DM|׌Ґ͈mG~~[ZYQuə۲`%0HzV&SOvC-lˆ;iC4*6zgj]pܠ:4~Sˮ4_ߟ~ESGU`%ԝ=˘P5eoοHLFЯ?mjC+ 2іBS$ۥ-m ˶j~l됭wO3xs/CQb?mDp m$W؈}Eߘ7jt[?*L84^޷b+>>u}; >}҈rc~z[pˡ{Z2\V~5=cTH̴mpe } +͢`Cj whև9K-!V9o&W-= 0y0M!فhAFܨ{/ǟz0 "gQUTl+ćMj}a.:z\aly.Qctϫ=r@N>{%gΞg8ś"5^`^YwC9qon/'Y}$憒D.w͚WziXJ?jisޭ6 ei.J@BG|Nsg:20hS[A;VlmL>XE٤37֦־9nCeҸwzfݑ=ӍªQZ?] sB\eܓٿqƍ3m pgS'oqyr1dף,@i=>G;G-g8%Bo>E2chIAc^k`2Ә̶V"9Qjr0x'rY>TS=+?8ǃ2ѕͮZD]»xp0i{<[?Fb >݁0Ϩlò +Er]J\%(a) ll#sE8p64c{>"1m˺ǟ$NwW>ㄟďH[(7,A+-WmMi}Y?!w@nG3c^J'g Xȃ+a^-Ù >_ӧlJq!ƶ_m\tޛ||ȇxu>ėS6DQo#a@ѵod߂.hth Ӿw=^aS^(ߠB9ጫz ?Dpk;B6.&\݆2^f/9i'db$5q|"Yhs_TC<~fbN6*n@ mFر״k ==}ZJAE/RAJW`OG_uVN%0WDfnƢ g r 8df1SJFkzC:&C@i6N{'1"S qN88<LI ~'sHFi'-+ 8yH:fA.SKi96ԪvzKpk-5Tcbe\Ql5f~$Y:z1,Qk"6B 0'tc1╇C6!]A^IT:]㕭 +Fd V@._BjgpN'6jJ߆iϽ}Uu'ۧ2vF8Qt&zwֻ|ݺ9q&ќ|M3zkfmEz?G)q kH=jjh#qB5EqӜl}szÇ/`z\DWIsXC3`T=aO˜ q;jR9㢿R%1Im @5=9]u,x%@wW(x2vM ?4T` ӬzXiyF_MDdcRyNx{%>{OΉB֝,0۱V) @C?8knP /VDm;>$0I}kFL`{>߻eý,bkGCm3ݭۇ +Z1z}õb*^]*h;h5m4Erk)W9m45n boIpT7*}9P/%g\ufH@B5I:#~LN+'OƏ D9Ė"n{8 s2 {Ɨw8z^%`% q:-ğ|_L|2?rYmkl;~/3W_p %әma%lЭz[C򬐶 ok8'7͸;͜WX*<[)4zJXp#W)I0㬣xjd̫m$t=y Dfـ}qw۴X(i +gm7ym"<  hF(K[N•*9:}+bC&- Kq.)]xrǎ$=C >3ߦ{'MH$}/|s}l" ^ +%7QmA%KI%߷%URXD@Q{1!~ GhlFE˶a$[˿d6d/Ґ>MrYn,tЭ-z -*⬗JHӼȁJFt`D'l6ZJ@3;3h8,|fX?PnۃK1\x$aH㽄n˄ꊾg}Nz#OuzDhvnI\\b 1V-MnC5:> Oyx-?~*"lb P_yyEoCFe2:g7D6<dt,OM^i*/6.̊C,uz:ML +?Ď"D+uSb py,8d?!Faa$=Aq!B17T%@؀#[VaAavFÖaAe#C1kO# 0% D%|6TЌm~1X~f{8]X Dt'KR P)Gl (`"Ϙrs Ahn.ٶxBKi)`"lO6 (y"a7c-b֙VֈNa_@<@-\Mc@rư.+ u'pӉ_0LBjzhsp 1<6hˠzAq3prW.$hnjw͙1RLd%tky4'#d}8H@+A$4v+iоb9o+i %fT<[1qʄ{V= f#=!l +6) gJe|@3Of \;FE]YVg9ɮ\"a-*%_GY_*If;!fۡ.wlW,%"VibtE5SK)K#Qc!$tT"f'xh[EmY +aL䴙D-Ko>VoP(jż\vD{張'О6$H9t$"p00E"khužGB5-/# nD׹EDٽ {&avRHy` ش kٌ,[8|sIԹ31}[!ߺE6 n0yƬ ԧ(u>dC2~7}VJE4紐쌨 ɚM T,/NKFO@3z0oP.088?M>'L))t=Kq+<4c5nc`[dB$\B ݢcQI'`w~1Z<&\[eBQ6PwD2o;"`4}tQ#uc"%1'r ilhq;E0yDPŘ5 d dEWC|;ܧu2Z=$X1:UkႇW@E*x<%$n%ltW]-덥CT=SUd\=\Rqlz5?_^?5C2Jfv+\ACSaf_qp)싥(-?ȀۿCD'.V*L`g1n"Ƒ#M¤?I1TZL5w;8E?c[|`HR5(cIݻsj#ɗt?@.ͳئ; mBc=KHA0/ӦoB[px@a[MTd!nQh& P &=38m|qpnF( `a؈o!y͕VK~au0LEL^1% 9S=+P6E 1qǎRsqO"bqAZToe]%ih*ZaDU=<#֓Ί$6<\mT$OؤZ2cnTu1J=9  g(,q|J|\Okicѕ/ *Mۿ';6CuP+$sbĴUi3RJI +C߰_lF#m\ѝ$;@J!r Bs˝9"LK6_Cgz71'c[/1Vx2JDTWF +_>䠂Q8(A\hC]nDV91=t>> JSdIj x.fVi[m}G>G<|ְw, b5A"VH:kO~=sOpvP9:6IH>[,S|@njy+Dh".اRQ #%e0vS@k-˛&$/(F50<D 1ˠcVR`S@)vbv| GW!>EƷryTZfJ I|!QG7X4l $GXQuR3q1ʅ+/_'oȊɽg|ѕi\remFgpE%"ek#`5Y=0M ;)Lo<*@OQaC&?W˪Q¿_Hvc)[Hfjƀ)8Iq^n2YcŧM2nGP~ט8+*"p^y$$%la.a!﷈Ksuq⁣'VMTtR:^t>(d;`M"ja;MrOˇ25Gr8)L%:ثfBySXHZm1B o6ćwyU h2. 8); +S ^h XP'M@v5>Xkk s|CNS6,W4bYqn{&}vx0$ŏ-1@8G?2rr.nJ`IIᦼ۷gEas(f5s+7DN!i, !Ȇ kYgW2>bŮ2"µ5$aKPi 9ut ܕb@|R zTxkҳ<#6 ?\w.ͺ?Zqr*i[uaEe25q8eÒa܊ > +K@ d~pjfNHW! (Аn$O `T:ɔMbGUx[ en0mi0PDAb8TNN L.8nL(^oubQ Te缋 +!`wF|9?@rǡ~㨳3Ōu"ȠCdǣ\~$cУ_2Wt#8Mf '=QOJ +g$pX2ʹͻ=V8=7g +TcqQy"N}Ъp"6)7Ѯe=X=Nijv=giyxPZV]L1)'.^Sql/O + +Wu R֨!5eS)V~3rR5լV #$6lmNH}H" ȏE2ջ+`n=΀ֵϑIh:5 bJ&̓ .RdJ+I< nGW/us% U%d2"ζ,5xZKд/w +j_ʋSc#'T4ǭ{]ģnsk'\(BkE*E +)2LIy&u@lKx*V"90oav^X' +ʡ#bToX\v' !1lgp-ɞ*h$ ~Qf'-V͓:YO+'5QY.hirs6E/:PhZI= I ㅵl:r)￵]%+H'x٣INk(`-cݛ^[[t$ĄlsG4j~ŨĜ_s\ڢuv^d!џ@gä-G5*-HXi²^82WkaUqFhHCY&5dbƌ -Ő:<#\d IRů;_%gz@,ŶpQ_7h῀*rq(NDYcORGAxD ʔ:NNYstg'p@X'Lx lW\(X(3V* /< iԆ baۯxL1a;X|Eϟ(]~4"y&'^ +\ H +C\ɅKRN6aQ\{8zb{3,4,@}pcꂜUs)b]AEr#(2:ʭX|*UJk"(UW +fWP@L*X(}qc6Vf^{z7(q-0Zux.)片_tEjY8#ϢM *"NBOJ{-vy*v$=KЯŬHrV5#xS;VXf/k͊'ԼTՌVTAMPBp$ZG(:g`'M*S$: 1zPՐIͩ&\Hhd+CY@S=30Ը kLț2ʪQ81!V#BSc9 ? .wԎ!iLhtv)E痤}i_z| -(aˤ03cR0gG?v 4B>>!+Q1D)Q<8SEjr8&tG3a`/RE!6g¼>p(nTB./lF ^b9?{*Op j0wO$T6P=ƒImIIpއwk5ElSz!K[smõ 6_Yw>8apm`_{A.C;wB@j9H,ЗZ_ayx(m!7TenR'ȚFX楥&;na +bNvN$.y6}>Gdm1͊&ͨݴϯ~ͷmW۵>z.z5'UNzVU;=A\Lz,v8 b5_P=R+(S-g^Qħ/$S \fKapT9C-fyL-QE\ +3F>u%Qɇꋡ&jz~Go&2N(PEw0" q-;)7r++ic*a\A: >FZvm0W=؟nz 34igӧ|g9iMzt8q=:Ϟk`. f~6oǣ. `?$u']Y[}gou[-=%jE49J8r)nByXcyI*y')!7c RJl0?{uWLbJOoa%p +5g9x?^ y5=pf ze/Chg(RO-& V]=IYYn'LjUqa\Vg S?}>FVc))'ɳ聿ѿ<ӕwTmRs@+%*lR>п^ۇbX ?=ԞF}p{ ƾ 0+<նD%7$l8!IrT@w\}NPe!OEiZjv Zէ !@,-xRnᔰ4.yVf%g8qav(ĂÞMeT2ڞX~aPH&XX(IbM=bMd}bM$)'ք=zVd/-ާ`ӊ>_O%Wh9'x + ѣߍ; +~EE8-T?'k#C va 9vNςpx<@^\U0ۏq,1YoHt+z~ĂC' +l3 +h@MWx++lcK0mCJy\Xt^4ӥ}WwJ+>Y'*=/zR<4G^9bS%NԣGN tp=Cj`<FiF mV~;tદ#Ku z@/X\$u+VlZce +"I<#9dvDL.&kxv,Tk\S9:ð`}/$tPzjd|bg +1 G׉6)ZhE6DȘ4Pc4 +av'YU +eDBo0`+Xh9D\f.ŕ\IB8\eCt, +Qj)TX F=;PMRLGPC7L- GSԻ7?6p覻s}>hι{; 獐<!.<,/$!ׇY1BP 9PsT \44\f:`H 3n%OIj~?<;>ֽ8.\ +F&SLLT[UCwK@=%.RKr wkHfPƁA +2 $|鑑ý@grm4`1?KTX>1qU)WX +Q5lxkρ'x}$o_o +L׵} +=)! ɮc{`,ئu2j(&cjbxŪt/DܹD ~\8}&0Y̓=:xUl}t>ixೂx~3$T ,mkVoQbxe, gvmHj >V/u\@L8Q޵3!yڻOwxz4bZͬR7 I0L}\@d2w@ \X180 M;&Ճ#5s4lÝ6_I:TKe;\@Bf+JJo&aB%u{߅}#4 +NGg$cmүbeN}1v=i///秬JϪ%sqU{ɪ=#j!Y_#N j-.QydV!4ѣi܊^cA]9իm,]& +"\}8^?_2p8D+FNږNRNSPH,T1 EMa*TzܒH$8}d]Դ8Fbxg >"ffB<b:07 +>z<\U|C|paGϞG#q{ɵ#KHkӹ:!!ATڰS}r)yS?aY 3w/xg^|x[f=qL-N>gR};!K^0U>TzBF:G|%۵n7.om#m}NĦr8Yl?Y$KENJ,e Rgj#TE{38;¬ wg" 1gz>ѵ3y7/ZaVۨ9: }B).DL~ G;?*g+\^$(8ye69%M٨JpGOb<>&+c7O8o=`L }lcH&QOkBE-i8 i0=$&6 "lF1L L^VئVqz@5o~+7WЄ 8Y9pPc!o;۵J+U8 w[zT\9ޖT{* _&mdqvtP'3̪}P`Z }oLa|T&66ǃ٩ ""8J.g&?zվ!H53a {yJv1^Z#t@]/4Go:^Q|>n^5,­iu4݂ 6)pSQ?z@>a~1%xH Byo2{tवfPY a9F[^9hSߐx| +Թ&l](6G-=:fkoRB_T%vLM +r)Wҙ 2sd^IwatdҼ3yXii.OϺ*j(~|wݯm6QBjGp թHp@壁]Ǭk݆}=\3=}i7fjhV\ n + r|Ӟ-&a~atmR>hrJc; +&~pUQ{( YVa؄J"I9i- +ݺgpPiaE4*rgvD+) PÏ?)'Zé-R)/&w8AߴKGM&pt2A;rZй 2I&ba"a$Ru^Kt߈ / hR/m`@`۲pag@ @v꣝$%HURuqWj gɬ0fBCsey{MlNQ3[(QB*ɗ1S356}#5ul)p"yRƞ$L)rG!'36p΋~Um sӺ>ک܇qMq'PիpNj7B[iYTɳhPe^I`;R>-rֈn_◘.̦7m鸠hUnV +-%%KA5qƶvtXvFY.xFzڈ2k#z碁us|2g8ich〉wWTRPn@l 6F$j6Biel:P@ws8:82jePJqGz2쨤L Z.) ptfaWN/ЃZ"-'߼"D]9drmkG>Z44v z߅mu#ESJ⟵DzZ )M5vk;5>#=R&Wϩ)Lꦵ$ GO7Aڒ=`[}GU,xSD !8ڽRSzw%o.Q# [sϑ0\@z7dRJ ԥPj\Y**YI{e Y0-m#p^Q`y +R @( w7I+]E+F CFe8(ї +E{Ec$n` Z^"d&dzg[u{ +ȃ&6^C]d])!='r•g2;t{Z5RӥզB Y]q`bc_E[XЏh~o 'SX\{܄6Ļ,) +`hWfSү*SQ]=T o 6Ꙍ0P}TUfc; +3@+!aWIm# Zx(ƌ$<h'xΆPH( mMEM_ݧW +<˘BƲ8 h XzH;E9Q~y eH׈A1Y@&dlЁ".abVɠxX2B;U5 'h*I;xx nLEi?2<@c[gcuBq/,H2!% WF,˶p7qLbPXUNzX=^ІQR Z,@+[ܿ"6L%?ODn _OK+Cŋ.Gz_r^"o7ѓ|2BÛ&µ&}>P!JJTaPfB׶88Mt`9WA31Rђ[Vde:tq2$sT(zˠG +d 5HќlRQ2~5i8ܙ j +Q-ܔB&^Ep V)"Tx8OR#Rs)Z(QهXI~5^⿓U%בMېjaю+c+a&Nܧ@ ĐԴ m;Q=+RYa@\ y\A|n8{%usjQ\3liNPwa8I*=SU>ƕ R x1`'"ΰ>ܴO@Sl93ܼkC0 Wӕ+rNRmk QU!yeF;*ҩջj8YP BS9PaX9)5$JاiEDy\.`R$돎`'r<}x5[ϨJ.yN} FӚ2{%D=4O'+W(;2_iOtD"T2bdo`@NxfbӪ !akXkQ0iuw95v{KDbH9ZQіueU'J&t"3$ #LBFY3Vݗ{3JN@;<)umKSw؃>65ٷAKWWۃ"gP )1|Ʃ-]8t(imuG0OG!)FqG-l*۵ePקcI& kpj*~Xl|6U+( l2_d 7A`D$1)9$[IaqL$Sۣ 9o %]fj& Ưc˻A9 jGWd +!6&Ѐ 7oo (wTXN:*]%Y*E&6/sԁG풮CZ"yGeŨ-%rA o(كKOhr]Et6W`I*i=sC+yh CPGomѨWWbT#G3϶LA+z?3t6= +-(Lĸa߆Qq C`!_jנ_ ;YݙhM~r.zD0_K&s>/ ((D6L8xbda}OE+9+gfWH|Ǚl+,[d> c#Amd:H<ⳍK9GOf (s.?q䎔 +ٴV(9AR鞫Si|MK\mNQ!uOa려6GuE:NC*®Cޖ衋m5),סS<0IT=Snrs1D|+8,US`l%]w=9VhٖY?:r;ڢ9vpdXcU"%^<<3DpQZ +~.o 7=#_ֵdVcv mgGޡ]|RYqEJ:'9€p4i͵&NtI:x} V_{%ƿ.'f{h6,X*=D]2\p7o'Яv\==zpL$ ^PK+h/R6୆~Ru=uiRv h)@r%בDP;bga; ձܪ7s" ~+p_HQcĝUXN"CL/cH!;$T^i$cwK^DzlZ' +CGn0}t7p$VCGu68V`Z9E.t=ˏv*&0OfrH=~iR0Iu +&M I݃zQӜnTƹ +GyOǬzQvmgO(OpDGW0f+4s|qg[5BLێsy c&7&bhg[qG'>ij(tVz +g)ԶTk嘗N!v3O8ktijP SbI[YC|˄OvnҲԵ)/ٵYTw݈ؓd:Ȃk3+ՠ`f}#PuŹTS9#6y["ob'aumDgZ5ABo:ۜc\UsCIf.}PT>2!  $9_$@"/"TFϰl9!$Mro~kҬNdFYPW̰/vUX2"Ff:pɢF.+pW$_E8жH;̗0ǹDWu)A1`1l˯ATⅮXҒBSܐ29ee;Yĥyڴq05d^DӠw + +a/Tl\~4S٩C^["I~}?|DLM.[Nk 'I]TR5psKNF>6pmrc__Y^+x#s+ a LUTP6*OnXƧv]$r#Hy!ܯ0 +! XJvԠnbc;W #&/>S-xf\H5Cp%="v(Oxr;gtߌ#ݛI|Jm! W|0"䇱o)E,t2{3JPTU)jƩFB>"0?=k4ώˢ7'O +@4,zlCF`ϰ[J݋֗.q ?ׯPɫ"8G??IP#||0RwYiVt/|t`כ ݵ 헦%8$#!J]0|\'>5U'T׿|a6k6Mѳ)Z#ޏoд9tE}/oaS*\+ݕH*< vXS +4*,--H|#S8/DOtǦ) yjd<:}pg`C o~P5 2Rӫ!!١A^k.1n^tE/)[Շ;7 '1zWa95)hm1nl?Ъ݌ޯS24;oz)9nOW_mZ9bf +5>1t7n{M[zt~N_~}}OVm\ӗi7^^_o'?[Tf)SI} w.kRNvLo[ʧ43lyF}{ +ev>8΋o1SxHΕ})*v3&އ?ޱ޲M_j/ dlKOf,uywfR)[:P<^q<8 +endstream +endobj + +115 0 obj +<< + /Length 64729 + /Type /XObject + /Subtype /Image + /Filter /DCTDecode + /Width 1000 + /Height 563 + /ColorSpace 109 0 R + /BitsPerComponent 8 +>> +stream +JFIF!ExifII* + (152;iCanonCanon EOS R6Adobe Photoshop Lightroom Classic 13.3.1 (Macintosh)2024:06:16 11:51:07baptiste auguiebaptiste auguie""'020231 + + +  +"1212*20:1 J2X4x5 } +2021:02:17 16:51:382021:02:17 16:51:38+12:00+13:00+13:00Jj@BT-@Bbaptiste auguie055021000620FRF70-200mm F2.8 L IS USM8520001217(HH   + + + +        Adobed +  + s!1AQa"q2B#R3b$r%C4Scs5D'6Tdt& +EFVU(eufv7GWgw8HXhx)9IYiy*:JZjzm!1AQa"q2#BRbr3$4CS%cs5DT +&6E'dtU7()󄔤euFVfvGWgw8HXhx9IYiy*:JZjz ?qcEG)WD* +L +񊮦*ห|pbpҷnP*pN)XqUa +'JW *2TN0ҩ0ңŕ(#hA͂o1cED0%]W e\VAU`UuWUpW *W (]LU[­ShU*aV…pL-1dE1d6bBJ%(gbr T$3"1ULiUUUeƕP iW iWSVJ+c +*0D`U +pa[&dZ b\Y#*T @#"L(0+汜*<`0R4* <*WA0Dž[ +[<(Tm,/P 0 Փ4bhe~VMx9 +S,(g[櫣H}\ٻG8?`l&סԡZ^0C9 /H8>>,H{=;cnOy5Dbao\N>S98?uDL^BԅQڹd,n]hfIF1ea˪IHpı_̚}ٽE󎢡3[[mw潷M?Fk!NH9:_ oh#wh/.m8mp8`ƾ8Ijm$$B)clQxŬ6"CdBX)2LK\R TEUSB*ȸWAp*m" +ș3G#bSQN N#6a :6k +XFCS\=0ps.2Fs_Oo5j0+Зoz=Ifkϲiɭ{{9yY" \J9|q"dq\ԭϕ 5 kJMdTUсE<ʹ2V'Fo&Wt}Ei Qwn4Pn3?Zӓ3};O.]Mu/^T +W<2ٲ/M:n HesO15kGQ5Uَ9n7aQ޷(\ˠ6K&3!=X*Ԫr|z@3ԼX9dOq$9d4K Ҵm2ǩ%J +_i_q=FMpG{ߗ"tQpܔ2CŬ4g9 .6ɩ2y.@h8j惭sU]L?w >?9+4kap%ԔI;('QLY ~Qjh&*{(c4^36W7'T<6E-A$>B󕶀G{usik̳QʿK?/b'YEj4rLL>˚U[{朝w'3|IM8>kޠP}t(dUJ/r9,(ƽ?.'S &,IsS'G#:^p4;xW!}jIQN!JNJbD&ey5Ic/, 33x_)K=GRoVZif@sQPv=,vpyoPXG]=f:d {cQQ⁩ ?,5=ZfGlQEmnW|LةF' 2^# Qc AemN24C`H;U8`q<$BEa`BDŬ;Zaj!EK.sA=K Z)6+XǹzhpH=8$5$"@w/W":{?=!Aŏ +9l+Cd%cC"-D=2jIn 9#N-mb ({,IJOS2X: IǔPZuR,C +h-/ehDzOnGK!TN5T*Oٳ:hq{]BQpI(eVPT[1_5'ߗl\6Z"1Vfޤ4$9:%[dƕ 7hӉ1($7V# AXG>_ &syw63bԥ5* + +S.MC`vËoS?Wi;zibr)?g`ȒLHb8,?l. 3wR] ~ +J2䈐<<HL3ԙ5.K}%)-L FZI#34FS<,ʑi9]537 i ޙ厇-ӯhG5r`-ޝc!fQcs(aQ\)o*$|rSFQc S69uiߖA !\q&-Rw80pıY@뜬^4e1,ǫd w5L0H*DsCሗclHP[:Zr)?R=5i@oaא®-wMφe@1=3W9mnU5G:>|oڞΜ'-֋-B֩5s'68s ]4 b#_>XԾWM4w2i-q |I͆<5[a< #?=k:zs$bAʹho-ivOKxBƝEpcs'UO4q;s_UWAֿ'~!9;>k!y4 X͇g!Nj/U[Of-%͇&~'Ɗ ~uye.™@^KUo xojvwóxd~_Ky(w>G(ɘ?O7;o((P6rLy\Q2BfH`FNdcE߮Jm 8n0Ry@K(%%ԠfO>(%r)#X$$$BA -EEY1#}F6Q4@Ӓ֠ +^@/sM(H~{a.Fȸ|AG-e5XLasN:1<ԛy6 l|2Rph悺ɩo \i$$2HŽ2#k oOיpNI09otok!^sff"G'AZQ?R]E$ S{è1/,S7IL6ge EaFhX([lc.{&FC=u uu8e~n=:fʆQ2-d ?2'"ŇP)Z[sC>}b 70i,( +fזٵn̆RwZAa5?)F}hZ7CgEblk (Iy^Tl2[8X\2 zm eOZ +"9!%9SM5Dq4>w;f6s72+zws0s 3"+\1Fa^>kLl|4#$M zlrx}ɫ9!$PW%QPsŬ.z6sӾG# B'9:ډ97ɍL7 %cB.Lq1RZԌ75<4CY#b-7*Uv +&?TĴPa8FAQCȦ< eEǎՀ,e;Yd'*ɍ#U p%T5$da\ TI)MXML`ȹ%O3R;&B|r^3BP{<4KQ& q5AqG(48?£7\l +2zf!#s?=+cFmA~d, \Җd)dgjRjh;oj3ɵ>/"`!>9,)^Y!' )#rOKk4Z_pc8|iFUc* LUL2.yVv*U# +%$",C +#rzb% bHu7*ƓĭcIWS +*H1%e>8!5uƙq^Ɨ :+hʚ IɆ`"3CK #aIbj/Ĝϩҙuq)JHzW))!Mv`|FZ eև20210217? 165138+1300Pbaptiste auguietbaptiste auguie8BIM    + + + +        Adobed +  + s!1AQa"q2B#R3b$r%C4Scs5D'6Tdt& +EFVU(eufv7GWgw8HXhx)9IYiy*:JZjzm!1AQa"q2#BRbr3$4CS%cs5DT +&6E'dtU7()󄔤euFVfvGWgw8HXhx9IYiy*:JZjz ?qcEG)WD* +L +񊮦*ห|pbpҷnP*pN)XqUa +'JW *2TN0ҩ0ңŕ(#hA͂o1cED0%]W e\VAU`UuWUpW *W (]LU[­ShU*aV…pL-1dE1d6bBJ%(gbr T$3"1ULiUUUeƕP iW iWSVJ+c +*0D`U +pa[&dZ b\Y#*T @#"L(0+汜*<`0R4* <*WA0Dž[ +[<(Tm,/P 0 Փ4bhe~VMx9 +S,(g[櫣H}\ٻG8?`l&סԡZ^0C9 /H8>>,H{=;cnOy5Dbao\N>S98?uDL^BԅQڹd,n]hfIF1ea˪IHpı_̚}ٽE󎢡3[[mw潷M?Fk!NH9:_ oh#wh/.m8mp8`ƾ8Ijm$$B)clQxŬ6"CdBX)2LK\R TEUSB*ȸWAp*m" +ș3G#bSQN N#6a :6k +XFCS\=0ps.2Fs_Oo5j0+Зoz=Ifkϲiɭ{{9yY" \J9|q"dq\ԭϕ 5 kJMdTUсE<ʹ2V'Fo&Wt}Ei Qwn4Pn3?Zӓ3};O.]Mu/^T +W<2ٲ/M:n HesO15kGQ5Uَ9n7aQ޷(\ˠ6K&3!=X*Ԫr|z@3ԼX9dOq$9d4K Ҵm2ǩ%J +_i_q=FMpG{ߗ"tQpܔ2CŬ4g9 .6ɩ2y.@h8j惭sU]L?w >?9+4kap%ԔI;('QLY ~Qjh&*{(c4^36W7'T<6E-A$>B󕶀G{usik̳QʿK?/b'YEj4rLL>˚U[{朝w'3|IM8>kޠP}t(dUJ/r9,(ƽ?.'S &,IsS'G#:^p4;xW!}jIQN!JNJbD&ey5Ic/, 33x_)K=GRoVZif@sQPv=,vpyoPXG]=f:d {cQQ⁩ ?,5=ZfGlQEmnW|LةF' 2^# Qc AemN24C`H;U8`q<$BEa`BDŬ;Zaj!EK.sA=K Z)6+XǹzhpH=8$5$"@w/W":{?=!Aŏ +9l+Cd%cC"-D=2jIn 9#N-mb ({,IJOS2X: IǔPZuR,C +h-/ehDzOnGK!TN5T*Oٳ:hq{]BQpI(eVPT[1_5'ߗl\6Z"1Vfޤ4$9:%[dƕ 7hӉ1($7V# AXG>_ &syw63bԥ5* + +S.MC`vËoS?Wi;zibr)?g`ȒLHb8,?l. 3wR] ~ +J2䈐<<HL3ԙ5.K}%)-L FZI#34FS<,ʑi9]537 i ޙ厇-ӯhG5r`-ޝc!fQcs(aQ\)o*$|rSFQc S69uiߖA !\q&-Rw80pıY@뜬^4e1,ǫd w5L0H*DsCሗclHP[:Zr)?R=5i@oaא®-wMφe@1=3W9mnU5G:>|oڞΜ'-֋-B֩5s'68s ]4 b#_>XԾWM4w2i-q |I͆<5[a< #?=k:zs$bAʹho-ivOKxBƝEpcs'UO4q;s_UWAֿ'~!9;>k!y4 X͇g!Nj/U[Of-%͇&~'Ɗ ~uye.™@^KUo xojvwóxd~_Ky(w>G(ɘ?O7;o((P6rLy\Q2BfH`FNdcE߮Jm 8n0Ry@K(%%ԠfO>(%r)#X$$$BA -EEY1#}F6Q4@Ӓ֠ +^@/sM(H~{a.Fȸ|AG-e5XLasN:1<ԛy6 l|2Rph悺ɩo \i$$2HŽ2#k oOיpNI09otok!^sff"G'AZQ?R]E$ S{è1/,S7IL6ge EaFhX([lc.{&FC=u uu8e~n=:fʆQ2-d ?2'"ŇP)Z[sC>}b 70i,( +fזٵn̆RwZAa5?)F}hZ7CgEblk (Iy^Tl2[8X\2 zm eOZ +"9!%9SM5Dq4>w;f6s72+zws0s 3"+\1Fa^>kLl|4#$M zlrx}ɫ9!$PW%QPsŬ.z6sӾG# B'9:ډ97ɍL7 %cB.Lq1RZԌ75<4CY#b-7*Uv +&?TĴPa8FAQCȦ< eEǎՀ,e;Yd'*ɍ#U p%T5$da\ TI)MXML`ȹ%O3R;&B|r^3BP{<4KQ& q5AqG(48?£7\l +2zf!#s?=+cFmA~d, \Җd)dgjRjh;oj3ɵ>/"`!>9,)^Y!' )#rOKk4Z_pc8|iFUc* LUL2.yVv*U# +%$",C +#rzb% bHu7*ƓĭcIWS +*H1%e>8!5uƙq^Ɨ :+hʚ IɆ`"3CK #aIbj/Ĝϩҙuq)JHzW))!Mv`|FZ eևELRY`gnu| &/8AKT]gqz !-8COZfr~ -;HUcq~ +:IXgw'7HYj{+=Oat 2FZn  % : O d y + +' += +T +j + + + + + + " 9 Q i  * C \ u & @ Z t .Id %A^z &Ca~1Om&Ed#Cc'Ij4Vx&IlAe@e Ek*Qw;c*R{Gp@j>i  A l !!H!u!!!"'"U"""# +#8#f###$$M$|$$% %8%h%%%&'&W&&&''I'z''( (?(q(())8)k))**5*h**++6+i++,,9,n,,- -A-v--..L.../$/Z///050l0011J1112*2c223 3F3334+4e4455M555676r667$7`7788P8899B999:6:t::;-;k;;<' >`>>?!?a??@#@d@@A)AjAAB0BrBBC:C}CDDGDDEEUEEF"FgFFG5G{GHHKHHIIcIIJ7J}JK KSKKL*LrLMMJMMN%NnNOOIOOP'PqPQQPQQR1R|RSS_SSTBTTU(UuUVV\VVWDWWX/X}XYYiYZZVZZ[E[[\5\\]']x]^^l^__a_``W``aOaabIbbcCccd@dde=eef=ffg=ggh?hhiCiijHjjkOkklWlmm`mnnknooxop+ppq:qqrKrss]sttptu(uuv>vvwVwxxnxy*yyzFz{{c{|!||}A}~~b~#G +k͂0WGrׇ;iΉ3dʋ0cʍ1fΏ6n֑?zM _ɖ4 +uL$h՛BdҞ@iءG&vVǥ8nRĩ7u\ЭD-u`ֲK³8%yhYѹJº;.! +zpg_XQKFAǿ=ȼ:ɹ8ʷ6˶5̵5͵6ζ7ϸ9к<Ѿ?DINU\dlvۀ܊ݖޢ)߯6DScs 2F[p(@Xr4Pm8Ww)Km.http://ns.adobe.com/xap/1.0/ + + + + + + baptiste auguie + + + + + baptiste auguie + + + + + + + + + + + + + + 0, 0 + 255, 255 + + + + + 0, 0 + 255, 255 + + + + + 0, 0 + 255, 255 + + + + + 0, 0 + 255, 255 + + + + + -1.000000, -1.000000, -1.000000, -1.000000, -1.000000, -1.000000, -1.000000, -1.000000, -1.000000, -1.000000, -1.000000, -1.000000, -1.000000, -1.000000, -1.000000, -1.000000, -1.000000, -1.000000, -1.000000 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ""$$6*&&*6>424>LDDL_Z_|| + + + ""$$6*&&*6>424>LDDL_Z_||3"6 NS*l+L\UM4[L*Nh ` l!C (T 6lb0`09LM6H@1*MJDLIRbL M1M&Dd*h yΨ3Z!ZkXDgqP ]j(*( +T2AiR*HmP: +j& ě`40IMCbCl0C b4FM 1 *TU&J)2UK%TUK @\ +\JPLF"D fU6R4ST墪h*u4`LbL`16!`M L4ib4c%Pd* +jh7!7!]BU%&NHY2IO:Ԋ7U6qhMR`R +T &ZmS@XmLC6B`i0 h`1!#䡈i nJ)IERjKTJdNZ"xNVc;e&qj&\L*U$J b9کeC]EMRL& sBmU40`0`$@ 160@& !C@  iiH21*HrU%LpT%WH9M!J3r(穨t!*擦K +iiE9`UM00L `!ihLH0L0 !Ji4E ˤ)0,`hb6RMNfs**$QR(MHi#1R⮢u4lRhnªh)eLM`K`00G珤sl@ihƀ`1 161*MI N&4M )7"Qy\ke:ęƲXO9')JB⸹*ӫETP1`1`6M\664PcaI!Ca%`&[B|_GpzWwuovew4~]tĐ `b)P&eRMmK)Rfd)RkIK)$v0q|}g_|3wZs) &1 0E !H䠵<ךi +BVZq̫R3fV3dPWu7E\XMXʚ)ԶSM7Sn(JA4R icLc&~7wO3=<}W睾>}O|iuk~|fgO}?+~|,^7.s:&h`XԔ )bpX yRѭ+&Р"eZJ'9 E3%!KȡW5&:VT4 L)UIle `4ڤ骗Bt?-s~>_G7_~Gszߊ|?=}oU_a}7}Sz~+?\=~C//#꾐vⶖ4e$d+ŤhlsurȩirL3r@%*Ds"H +aS2!m65\ e)7JllYE*VTRՍSy$_?;ӛ~/{ϰ_c?/O<~M2~~/wȾ8>E7?.k ܂MfltP蛒Ǡ32ZsÈU$sRI8$"R$B.d̢^ VSXޑau4 &ujI+&N67>ze^>$\|?|_~]K_M}'7g7#~_N|o}۟g^^_O=^C/|6mL~%Sk7cm]4B'btN[|sxg7/8%n`rFBgRf!I$D0VE \iM&KvfUGAMYX 35-Yg/|25|~_Os̼S|'Ňyg}!nG>{7oz>z'{) ?g{p]~'+Vt;gyk#Yj,m +fҡџEpz^D+WqSf k?+W = >'/G_[|Cq~}K{|ߖ?6t˿B_9#ljK|2U7ƹq6V9#~'LW4F+Guhkm{9r/~?C]~[[/Ҿ#9~|ߺ7ǧy>{#-ks>SϢʦ|͖;Z2FtCF>yZ{x=&/;Ț!dMMg1YPʉH3pff O辗/g}^:]F/XZiLZLe랳?=63F2|/w4}O&]9m LioZO៤{~GwgV~G~z'?~7?UVK}gOD?W|w^w|OAgwo}7oQ"gߚms=ߢ{7zOu&}:: sVB8;T\f +bu%G|׳e.|/eSy5%f%9@L'$9%K$'{q5~J]EI]0g[tm;>'|8.^Ǧ9f8\kіz@s_&;~_>'}ϋ?[žO'û8~>kOC/0~/O_a^uq[SOC±^TH-j媺UEK-_gx>-p\NMN2ֆlmAeno[XҼb)\gtԼ4S̗$) jf.\H ~x=_ ^ ^6yλ^Z6*SڍǠ_5}>? b]^>=++(<m)ӟ#:|g>x=ݾ-o7蟋z>뿖ptcwstqk_ߧa}a7t~A~y~Mߨ~o~_|Y/_o=/sLuUcKM\ٶ;+lb8'. w2cXfZJbwY21^OrEWsqs7N9Y:"a +R"e9&P@%W~:;~G~kO5׎mIe75kʧ^zuxyGGSQE\s=^=0טW.˛o?~?/__[}'A]~ָg}}^~^ +BkEMjJUgņ9z:Hs5ə*BJEb +yhUBk_Knk}#4\sP'-9!9yԐJM4!/Ӎ^}Zg^`BxcY;O Z==<|ݚqUOyc>Ǖ˔K'=2q=W'ozy|~}Za=>,Bz|C~){gm?57>'aټgg~{?QiFזӛetZZVzX$7j2-Y +tfE! lz⭞Oc+> o7̈sxMD礴LpPgrDȳ< {~/t&Us)mv:cm=U|ן6z=:n;:u=6׋~_y_Յ˗d_7^^>~~\'QYrwO7g>8/J|:T=Mci[yӇo#N4ZwW>UkLakiY97xҲU5, IdvL\=ϙy /:(Ȑdg5 jAB]?U*0\5'%Y\Ѡ)&-/>ˣ]97ؓ=zjGyx~駓y^\ύkH& lHQJj` x{:Z=^.ϫTM&8o;"wwQE޹N n65P_/[Ӫ=/_ͷ̾^?GQ^l}7]^?z?9Ȋuky|=#|,vyfSR.SMISBIR*EHNE)NʪU%V㏥CÝ3&SD,178ZHf J@ɳWFPPMkjѠW /ZlXsW'O1sڤh%!67 Um^CN"hް^=I7T;i˼ +ɊΜ6B&"hNj\͹(I:2 @ͫd7>?Lf"D(S#9j +7=厪F]cX]HթVSVU:b W({(I:ïUTCv㧖zW{K$fMIP*ML=NfBn%M%s]}<IvݙO]Eh,PE(43YuHmYPJ(M J-9'!_Cj9_wsRJN\<(ZuҢBc4Ze\1AgAttURnA!ۊgp0gpuX$\fEgh脲xo:zwq_yŀߓ#19.rvZgpߟNNW^V+e* P!k2M""M̉vhf3iQi Ttء!IP})HD:͏KQvԖUhTCoWwyT4% DXcYk8h76Gݧɗvb[N]y@J*C q +T:b_W?N7վ[^oKR riJ, &SkBS*ue;VTANK +$YW&Okp# sLAo;cR(nagiΆ`1M4MmXGDhbh3uUF%CU4*RQi.l'Wf +J E pLy$Vj6KQBA?TJ*βJʂ*f ޱyhHt+* $eTݒݸ΂6E R倐T`!CHY e:Mk@YICj#3A̤ShΫY*E$IqQ#@4*.@j C +#*TPpIeI%9!R$O1Au͞Tk* &<.Tᆄ0ΙN[4!J,THyQ RCb`H Mhm +iL$3YAd[3R^3wHƮΆօCHSl 'b  5BI&lT%EQHM :dI-n?:Öt vL@ i m + `(`€0D&XVP&E$%H H bbH (@2d)JH(%' 0@`PpƣZ*W~v'wFk4?#|w21 12ty"llVD?"< 6 B&v.3cdqGsq81:_,ZpZ.L7|1ɐXmQ掇EBQ4yP$bmy1c|b2) ]@؟Aqdř %2k8y2XUJdV7(6= SŌcKy12ax' 1\M)'N +a2e; lҽG>4L,l,f,l?@voE3l-0?f>!<̓PյLI4(w@^bִbj1gI25aTmQnvHZl_,"ev E1Vh,ֽڪXmdz K%$?.< ˂m_ ")a HƋmgQʞxp!& !guOԿ,w.abtoZÒWzOB*w73[u/Η #&Y7Z='OK_.XMPaK !d7gL +&U^.@m˻MFr2,]':HX1_ Xj>LW[QY` *2iO#^:@6"EYfɋ+3LSQ$)(sLn4zb,y— k.̖UW)j +I0BѢXSC=a⑯͗!koʋ!,Nd9&^LദU{ͪ؏k;!֡"cpq7{CCC8y""#cÇ K?(E6j` e8" +:֘c oOPvD1b6 kl<\X'A*#gC$1g3lTSNws pv=! A̦B|ri6wXy#{J`ӝfG2fϝ#l:Gv{dlwz`!cţdy T{YD2<ˉ1nk76O6Nԓ)vA H\]ڳra;Iڽ&B#2|N|r諳d b˒$cT%gH[/' +4އ[n?KdBV棳XVϟ>~O'ϑy?.WQ͐E+秴p =Q>?ӵflE6C`Ua5J'vv^I=Wk"y9ܹrEVwld)Ȣ5! -~ܬ?M,hm}bOգWh;j_+ݍ[ryyr(-Ƹ JVDž񶝭C[h {Y("Z|NDZ{׷+ +X! +wƪ ';#dmCk[OJok(oeX؞czkܪں +mm)F;+!r+j Xh +a{vˡVJ(vW}{v!}-zXD w;rS\]4*q-UULJ:BIw.@k*ʻwZ +jv=+Wj.y;Zi r5Gjުфw9 cۗK*D[^wՔr!ϞJJ͍LqkRa}Www`iCP(/GMB=^Ĺ;ASUVԫp°Ai7=/{ʢW@6Sh:](٩W[wh Am}m_RoW)ʺ8eW&=jdwQkKHڽ&;ߴtksoKw>LN]F}nww}#Y@U*Һ@}o{tXz{:]߬}uUUH >z _w\]O䏁^UTBH j߮wݲyɯzow#w?KOOjm[z=(>!1 "AQa02q@`#BP3Rr$Cbѐ?$h +Je]m- lO[ UkI SM><1nMxЅPa eM2ڬQwoo~ (@Q]ѵhP?co#/~SbǺmJY'dWt WNlCWTyQh/~~d%Tra9PT? UYӛ)=e[ W̊g급NPE 5JN!dMW8Ye VʃTyMC+0hjjڙj; +n9Lqq@CE5_p:l#),6] U5KG c@܄JT'QaNLAՋD*`"Qj.yD^C}_U,r.W|Vi~ۍNY[թB4}",HYT%SJc SBH4{Mm*~+LP +|nC-Y࢛}^oUg` ֊T* .h:c{Wi15U3IECÖ׳tI0BNkM4O$ǰ&]fQ T+5FoihWܴRTdKfmj +cc-dZ24G݈N{%TK\#pfSqЭԧ4^kd[|l6f8UA@]rN`rlg7C*\_ѸKݷIȖNSdbuGeKgQ.}@kr.(S\횠pQ)r߲o,:s9"4djS̳-TKqjA + +i -EI=}vմ7V>˄di<׉XMm5r += aVTO?%"}`2n)e#8,LʫhJi3(n)ʛ5=8Ta=U*L 2BT +;NC%OcU*lkWBt6A.U W1_l `ldnL]l+&WfU6zo +Z +6VW{sUBx=Ϣ/]?h8[ó2WjM?ܟQN U^T%]m 9t1r?D?trsntxL6*jo *ԫRE)-*xOwʝS@ +Z^Ju]=%m;]EVMUܖ*9))Èu`NV]&6rJEVO-G$ʤp^ ׈h ?+aA J`G4r]8O5MvKznUiDemCRQV˲p0fr8łUUjW +55U)wLugxsSiPd >T5Q쿄c#쬤\R 1\YiZܮL5MuXM+'BrSY%8T .r"ʝ)I[G'JXS72biVW'QxeC-MufSDܧl.efHaKP~otXb= +s -NjSЦgV0PeJᢨ"(MfKw  +Vq:/v} +Mє_VS)ԪSG++xF3 BhVs3fW.(:Km HpE%Vv%mm[m6=ڢ{ꦚAn[.\g[h~B6<*NAANCR/&W5XAhM}+.B߉ '*ZYgw^! +-`ϪszYj.EрދC?fZ*6:sS1ܜ>c꟪uʟ=JAwVum:G,.CL HkP&2E:t[LPڦ낙6ѦN[%;=0M&D1xq&$kO(SBs!eqS>U]ihU~6/u@$  5 Qkm7EGMt<5[:}2P8Um9/3duk'ELHFUJUt69'U%I_y=3VP69 +Cc qc88YlTepu0/"9=@h:aDoR4Ql*,$+erTkM^ 1 +*v!3JI2Ϻm5O +eMVϑPkܠYVJ3*BEF MA5BzyVQ0g{T!nشc2ߪPAQOH7MS{_z>՝: "VJQ52G7gLU־ꃜ[]b䭯m*;/2{*|F>_C:U:{M7nfٟ^M}ݤtS!ZS ԢTEhP>BSE'f>LS z.p"9 $/TY Jmo;6ȅPquuU1v1͇1j٨5L@[#U"RPuoO +BSOȍ+.yC MMsD)GTkEG]Q`9ӬElU Er'(FqV%Zmk0a8j עp[%Oj'XNST)$# 1Kϓau:بm"AfVlZ +(iBg(:] xP~ʹ +p/ulTAmr8r :Yq5ݓjy#E,~ ~-m7}>QpS®fUL0j{.eٝ+PsN! p7S6VƇ{ +d*D +2 )PaEVGe*˿ڴMdD`iՑfy`iE^;alriMAAjoUs7{lm 6UPJ(ujI0HPcUa>͐fCEKk0< VOVaw-rP990}eeyOvS+#hT[M7Ih%lvAR]@&U o,E&>/=F94!Is# T48?d\IX;}7m<xG9NyPg!s*E=;FQLuk(T`<޶#Ijf ]ǟ cS(]l."T d/;w'QZ<)@r@{ 945*UjsD y(ƨ7'p(,V0z+酷mJB;[S +86*u8P};QiTs8AXJ(pcXs3;RۓE]MPw]L._8Z}M:m|FuwqQ(Fܮ r7 a'>!qjp|V:4I*?kw&IuuEJ3Awn0Q$98Ggv9nN!\[=i؟9v!A(|8ZO4\Soɨ;*6wrs\L8M;_T M˩E٩V?e'seHA6'=ب~;+camC? +w8d*ZH8u_g@ws 45dz>I.Tۗw{al\LJ1F*>>: NOL- wOyFGNEPggN`~S>q̠zN G.2)-DXguY8JTYd1mE?4houtc*!1AQ aq0@P`? "Ȉ,C~9gYeYesdDpAdY~GGL?,,rN" ""Y?I333$pdH?_KxxYeg""8ȎRggg eYeVl"9#,,$K$ql#?L,,K&'"p/͟?23F~eYՖL$~$~p~gp3ɞ~p HNY6^_ɘ8?8fY Y&NȈHc,I8YɒI$N0 ı'Eb>x!6I$IdY3~'~L ɰ+x`Y,=C>ۇnd ̓mݼ =0Ou]Ȗm-333<C6Yr~eI$LDpG@n f ]fF*̀&kG=Oߗ6 A=Ao`6 c -D^S2 BWnﶡ;IIDZ((M,3,82tSgYY' p$rDpGG9GsJ D 7X 鲒ߣBj&|Pp= O,Nڧ,(Kwnc;݀mD"I{YeYeYgYeYeYeY?YYe31gYge)^PӸ^'&M>b]W2bN=Kx n d;Yy),{OoX`= aiׄo0f(SNXסAy l[=,ڗwu +!"\k˾g ,, ,,#ԧ$#8,O,,,:n'Xc< w\ܳрuaVNSD "7"p=ωe7/w !JO&?j6c Gcي.χ/ggE)eYeYeYeee哇-/<1qeEYAgd~ D:etOV#vxkp>i*'~O2 z#%:Kvu_&.A_2bgo"/' E/D _@Iկ>$?&'9eYeYgg9du;ӌ?228, , $b{x 9#uX2tan߂qlȢ ] Axgm^by^B_}̽9iáax'[OSf>x. +{- +`,YeYedi ͒O/ pGDppDA0Yz$]cVlŚYEypûFl#ovl0b?ZRkE +`ԼttJzs%eoijTB}Sڳw,NnokNVYg&YeYeYDswm8?H#wsWfhLPA!chHHLCHߋ`F?lLYԺ@D7IdŕQ;i'oFO?{, ȸ=%dd~v>? 39ro O <3S'{C= 3~uth|rleqYe]2II<$ DA e0$.*4bչCIaqxC=m")d#u۝=4Ȏ>&!a/T@DeUn߸nL50@Ө~w.CLHIeYeD,,yvxN2gg,'y` IeY6 pYCx먄9?^zkdq3G7!AG^R"wb!~Y>K# g ugw[6Ƙ绸 q?0큦f=G};Wc$:IpݱN2,,,O <3',2~)M3$ G5!Fgl +$'t&C9OWo+EFi^S>ČCq$C&6/Cg}9ޗY,pm916d)|0:ӡupbGP;PힶZ,d 8,, <2O MK$*q:~5ܩ@ Gd  OgCsNɏ>dK)]!L+ѽzΐ2j#7z|d@ d9u}#g;waΰ;N[v|?;}͵_1LIge;d'9$ARב?g|DIJ8fܽ.G7=`g eu49g{ݜr {̜ 3/!A7s]x;[ ۷<<CK)oɌ]a 00xkdiwg0,A'!G8ٌ 4^݅x@<&BI{?E9&z'q|zAr1̓^b^Lq"}Fh2k7u7J6Zw>ؘpI%M\2l>ϒ-\^3?VtO?zϞ5S9ϵ#ӂ؀lïa4L8898׍e|,a1D,<C(_JVYax4'Ìɧeo@h-ȗI0њ.O1UʈO5v_(:r#V}HQψeu> }n3#8 am xmom%n69oVgYE"w +zqH6vy!Q?ݺR ߥ~m.:ӾX"SV {׽Wug4e)  L׏2-% ,L7'Xe|-bXYxe)Rw#˱ ,vEYC <:GrgqxS˳Vf".OL<ɔٰy1uopCk~.:w/Wc-Qn^ģִ]^FO~3Ӏ,b{,$K mC̟Нף72/d[7o\'>!zм +؋Q0I=Y:22wwd>(qh8\x7I}:מּU۴6{ G;ǿ;F2f,g8]O^ Ŭxeڻ \ţ}Ӿ%rЋ`)4G{"@"m'Vn6-yǦ Po.~aԦpOo }L"1:l [ZdLo}ģ;}Q[N>}n\H_(6l6.{:Lwtzo9>Bv3mm9BS ](5Sw뇸 ['{t#ܳn2&0wMg;h$zm]",]| lڰdp-w%ޘ';X[M"b;RvC}< yyd~фΥbzN2?dNmwM!I䶘v}F27ɷ<݇Z7mv|Hu ӽ!R}ta>F|њ}0 Yu;(6;- Moʧve&tٻ7\nInkz`nBf|3ֻcA?OD(h(tZ7רzݕBzZk,%ޓ~O%|pC^=.BtU|oLPp2.` RB 6cȇv^y{ӊG͉OܑG-/3eHzo"=%OV^{s^tlyDBt-33ƀ2 Yvo=1O>5GOv"拂v>VgPɌdKmn~RePoGQŝo_>KX.:,ݕ>!gb]2u^|2L~s,R3W col=fX>F»V"}fK,?r+H[`Mr4>g?a>:!ж3;԰c;ak1۾ܻKz];hu/=X@gx{%ʹa ߳输$;{aa0̝úh}CߛɁdu^\a A}=~փvƲv;óôq^4#}]lhw7>bs:;_zjX4}>&z^{.6mQİ\1-rim/ocvOz_i 8;匰4 ӈzu!.=`~v }/i ZՂi[d]?y9Iεvi:S}6H-{^2FI m6NIOF?X6bCKoL,]Dzu~ؚN6UNZ w|~l住H1A^nK7FDC Ao;u/r70<<-;VUnϲo0J;n զC|ݎΣnwyX&plΰ7Gwl'8:|aB>vQzA; (1<6}ܴ=#wΫb:Д#ϰϹOWV؇]A-ۧeI(@ϱ]>oH&Bhx ?;Rg6|v1sHmXXrI+S +.{ =Lt&ki.Nַ`u#}16/f#ײ9ԟ =kndwC _,KKgЯGdZ1rw3w݉^.wEz趏jDX%`|g]ؽOow`)/_:r:[+iI:cܻ$+ce$&"WDt?2]&{dh;l#WZGlu$DoW61Z+4tr"'2Nv~p'vW[ԻF#w{^z&ιcn[ߓ 7_g~~Cu`Oeo7= =mm>~ m_g۽gl}l^Q@gIe[nI| ^ۧP%>7z׶8jG) nv{ݎդ.nkh7OsM!dN]Σ雯#$.N# :v_q˻R·L͜,guV z^ө_!wgC}l;/]{oj'WX;>Nah.d|x3A?Lr{6\ܳCnpvك۝m-nC߻r<#Hi}y݃rޠ_Ϙn˩E2,HsBO/]9]Cbۤc/! u'd~۳Æzlho; EqmG.v86-mv-mᓄ8,c|—,Y N=eXey37Xaxɷm.[]n0?g.Q 6V!8wy',ׅK eAeL1s[mqnZCܰ Koهl( xC@wǼ3|CX?Xy  ""+Z+[cW0e :0xpDDDDEk8nEX8g5_aD@<_mh`2q r;q<3;Zhi +ֵkX>""""<6xmm/?}(kk:ckT3S{e }ݭ6HAfdyGGz$nf'-KXTֵfmkY1aəW"l-CSEeWkZ +G~I*U`+CN eCEF/ΣuT{EM$# WjrnkomHq!/y9Ob|kZM$+GT32\,ƗxW[ZO/i; l^{X ^Kߪ[uNQAS-[zxMvN<]@333,)K흒p(-+ +gqjp>;Ԇu\0`S lTP@@u7Cή!ͯA[R]Q[+L$t0y#`[H)#47Ᵹ}3hTVҜ` 0`=ָuD'#؇qh[KqWḽ=-q~vHZԧY`m=+*HHH6u+4 ?oVp`t>JU 6Im)(J@  $bJ;~3ULh}ʥ!5kZX-/2!tS]Di:ۛcYU@Ҵ( +H-/4S)*B[(T`AŴe:8kJֵ)J8AIIAES`>` &!5EjSZ"XMkZP OPQ)XDDDDA0: +jZT&@B[-P+BDDGQG@8"`bNhS3kZGyDD`%$+ T{N8v%JZL̂ 8{qM˅ejYQ$?c yL3333!AwrI1fffffmi mkZֵUkZ֒|cfA>p|}2!1AQ 0a"@P2Rq#Bbpr?v<:[1ǩCm8v!XOa1e]x0(7@vW?38%wσ, #U.la>Ingː&C\#C*Oy|̀,H)b%g4;0XS&"0'ɏ1wT"(1&6&1$ bɽ6~+&6$|9 .)R~G4Ĵ  {5Ci]s'#ND)#V+Fgcs*Uxc +tN옾eMJvg eqBDvބ Cbq)LH"pƟ1Cq j->i>\iO~w,&g4#8Tˌ?Rug4yr Gʓrᘼr3q2q*3`+W1N#.EKS1D6;dLŠ )ctb =Ӎad[z48#s `}|0\X*-XM9Q2erܥC>BYX51 oc[W,.]`aZ,ݬuƆakc (BL T +T8<*?y'7̻ B} /3xpvvtzKPGERyEf!J QK>&ϸ` pAzx=r_0У6ݢ-+*v{Ƅ>ЃFR!00"\Ǐ>ǮR"?-_% @0P7++Uw, 8Mau"~p@VULf0:8~VG4#0wu@"?mUUUU! qoCu?R#O4d@G"Uk뮺/#r?ğC#[Oq|)5]u]BBBBBJHk*Z]W}J!C[^|ϟǖ$M+aߞih@@BPh +u @syh6T?#N\ERQyyyyyaC#Wcj#@nk1sx.'2fj2YHʙ?r秘@@B"9DG']u֨BBaބJ.)Sn8,V!q3pJ4]B]J8{ |<Ȯ0Zd2!%$eVğfN~LO?*8L<:I֩aAAKMe 9cF9ލȡ9wkWڻ>6!1AQ 0a"2@PqRBS`bp?t!,v>w~YVtZ=;maC*}Q@]=&áմlNT&sJ.; f1 aCcWpv6\1QC4cAő0dɌCr( }LQ9 bKG@da85pQ}`9<8^ 8G >˭58ğaoᰭ5ss-71ѵ5.M@&ś%jP8l @ +,_S8*)*AL]4vm|gI Vy\8|$e|KUXYN/Rc];o="*oaN@dXˠ +OI"hpPrFms:swt%58!ca WUbÈu3#>'١?°.tIEg;s) *alQTۙĶ6 +h?0lʏ 82h~jZPͼuL :|\BƔj]x.6 +53(rO^b.Dyk| `Ut 3L; c╳dĤyHL,nO38n2 w`v+nyv-@Ϥ9VW=*1Vkv(w*h*4̘ ʺ;D(V?r=n} >K12.0 +:xK'8D)66o-oGE˘LWM8%d{=m s0 +yM.S +mA?%Ԡa)DVh cWXv0C"@ip⽟n%^//ИųTAӋb{1GÄ)ٯI _!BlSsUc/˰!VUN1qJhUϴT,B!fM1&w c=!B9<ݏ!nu11d],opg8Ҁnȹ|fDɋ l`y+h™Nܑ3(7 LÇuKe3P"`7u nȱBt('dZ|b]\U)51 #_bőٛ[]YN`UR fUejDRE91;Hh8rUBP3+v5ח#]v`֤c53 EŨY[rµR  @\v[m<UM[|icx YT*ee߰c.Fa7C{6}BaZkyDBl[3.0Ϩ,͌uڪ|R+ +*MK]{ޕlG.V` 5TuWT&oqIn&2Z7p2Ϋd\"oh wUh?"csCWk 㷅`sM`X? |>Mly f.̘lF,`b'|>SGwPu1_ Ѹ<+[]߀]>εPiF]\G3\Vff ܓ<5ttM,LC`6VЩ f4&-m!*E3(WTqi#XȴzbfMa'0 XqobŋL}X/x38zD o+ JjVADdr;= .ĕ +QC\Y9znw#c@ִWQ;H63F-o`h BmXLxWcZGى?10>7yP5BD"QJ_K+[{o$D[ǻ]$~eb7&S"VA c{Qp>O϶g/P=WaE{hK>735 Ϸ _ \#@o +endstream +endobj + +116 0 obj +<< + /Creator (Typst 0.14.0) + /ModDate (D:20251109192213Z) + /CreationDate (D:20251109192213Z) +>> +endobj + +117 0 obj +<< + /Length 996 + /Type /Metadata + /Subtype /XML +>> +stream +Typst 0.14.0en2025-11-09T19:22:13+00:002025-11-09T19:22:13+00:001application/pdfViKPpxt5OBxnt5K9uO05zg==ViKPpxt5OBxnt5K9uO05zg==proof1.7 +endstream +endobj + +118 0 obj +<< + /Type /Catalog + /Pages 1 0 R + /Metadata 117 0 R + /Lang (en) + /StructTreeRoot 2 0 R + /MarkInfo << + /Marked true + /Suspects false + >> + /ViewerPreferences << + /Direction /L2R + >> +>> +endobj + +xref +0 119 +0000000000 65535 f +0000000016 00000 n +0000000082 00000 n +0000000308 00000 n +0000000542 00000 n +0000000658 00000 n +0000000734 00000 n +0000000810 00000 n +0000000900 00000 n +0000000976 00000 n +0000001116 00000 n +0000001188 00000 n +0000001266 00000 n +0000001408 00000 n +0000001486 00000 n +0000001565 00000 n +0000001658 00000 n +0000001737 00000 n +0000001879 00000 n +0000001952 00000 n +0000002031 00000 n +0000002173 00000 n +0000002251 00000 n +0000002330 00000 n +0000002430 00000 n +0000002509 00000 n +0000002595 00000 n +0000002674 00000 n +0000002818 00000 n +0000002897 00000 n +0000003042 00000 n +0000003121 00000 n +0000003207 00000 n +0000003286 00000 n +0000003430 00000 n +0000003509 00000 n +0000003654 00000 n +0000003727 00000 n +0000003806 00000 n +0000003948 00000 n +0000004033 00000 n +0000004112 00000 n +0000004212 00000 n +0000004285 00000 n +0000004364 00000 n +0000004450 00000 n +0000004529 00000 n +0000004673 00000 n +0000004752 00000 n +0000004896 00000 n +0000004969 00000 n +0000005048 00000 n +0000005190 00000 n +0000005269 00000 n +0000005362 00000 n +0000005441 00000 n +0000005529 00000 n +0000005614 00000 n +0000005835 00000 n +0000006056 00000 n +0000006141 00000 n +0000006362 00000 n +0000006583 00000 n +0000006656 00000 n +0000006735 00000 n +0000006877 00000 n +0000006953 00000 n +0000007034 00000 n +0000007133 00000 n +0000007205 00000 n +0000007277 00000 n +0000007365 00000 n +0000007453 00000 n +0000007538 00000 n +0000007617 00000 n +0000007752 00000 n +0000007831 00000 n +0000007994 00000 n +0000008073 00000 n +0000008252 00000 n +0000008331 00000 n +0000008502 00000 n +0000008581 00000 n +0000008744 00000 n +0000008823 00000 n +0000008990 00000 n +0000009069 00000 n +0000009241 00000 n +0000009320 00000 n +0000009487 00000 n +0000009566 00000 n +0000009733 00000 n +0000009812 00000 n +0000009979 00000 n +0000010058 00000 n +0000010144 00000 n +0000010323 00000 n +0000010782 00000 n +0000010870 00000 n +0000011120 00000 n +0000012128 00000 n +0000015165 00000 n +0000015350 00000 n +0000015834 00000 n +0000015924 00000 n +0000016177 00000 n +0000017218 00000 n +0000020556 00000 n +0000020594 00000 n +0000020632 00000 n +0000020670 00000 n +0000021029 00000 n +0000021452 00000 n +0000024161 00000 n +0000024511 00000 n +0000050047 00000 n +0000114962 00000 n +0000115079 00000 n +0000116165 00000 n +trailer +<< + /Size 119 + /Root 118 0 R + /Info 116 0 R + /ID [(ViKPpxt5OBxnt5K9uO05zg==) (ViKPpxt5OBxnt5K9uO05zg==)] +>> +startxref +116384 +%%EOF \ No newline at end of file diff --git a/Experiment.typ b/Experiment.typ new file mode 100644 index 0000000..d4973ec --- /dev/null +++ b/Experiment.typ @@ -0,0 +1,20 @@ +#import "./main.typ": * + +#show: chemscript( + ("en"), + "Experiment" , + 22pt, + (1, 2, 4 ,5), + 2, + ("asdwasdwaw", "asdasdawdasdw", "asdasdawdasdw", "asdasdawdasdw"), + ("figures/dummy.jpg",), + 5cm, + ("figures/dummy.jpg",), + 2pt, + (h-statement(310), h-statement(310)), + (h-statement(310), h-statement(310)), + (h-statement(310), h-statement(310)), + [Fische], + [Hunde] +) + diff --git a/chemex.typ b/chemex.typ index 1085c86..fcabdb0 100644 --- a/chemex.typ +++ b/chemex.typ @@ -1,8 +1,20 @@ #import "@preview/typsium-ghs:0.1.0": * #import "@preview/one-liner:0.2.0": fit-to-width #import "@preview/subpar:0.2.2" +#import "@preview/typsium:0.3.0":* +#let imageradius = 2pt + +#let explanation = [ + Cats react with Mice to #ce("[Cu(H2O)4]^2+ + 4NH3 -> [Cu(NH3)4]^2+ + 4H2O") +] + + +#let language = "de" + +#set text(lang:language) + #let repeated-table(num-repeats: 2, ..args) = { let options = args.named() let data = args.pos() @@ -84,15 +96,17 @@ #let step_image_paths = ( "figures/dummy.jpg", - "figures/dummy.jpg", + "none", "figures/dummy.jpg", ) +#let safety_notices = (h-statement(310), h-statement(310)) + #let step_descriptions = ( "Essen sie alle Kinder", "Essen sie alle Fische", - lorem(20), + lorem(10), ) @@ -102,7 +116,7 @@ #let amounts = ("500g", 2, 7, 6, 7, 2, 2, 7, 6, 7, 2) #let material_names = ("Heißkleber", "Watteschen", "Plastic", "Wattestäbchen", "Wattestäbchen", "Watteschen", "Plastic", "Wattestäbchen", "Wattestäbchen","Heißkleber","Heißkleber","Heißkleber","Heißkleber","Heißkleber") // user input -#let tablecolumns = calc.ceil(amounts.len() / 6) +#let tablecolumns = calc.ceil(amounts.len() / 7) #let materials = material_names.map(name => text(name)) @@ -115,27 +129,42 @@ #let steps = step_descriptions.enumerate().map(((i, desc)) => { let img = if i < step_image_paths.len() { step_image_paths.at(i) } else { "none" } grid( - columns: if has_images { (step_image_size, auto) } else { (auto) }, - inset: (0pt, 0pt), + columns: if has_images { (1fr, step_image_size) } else { (1fr, auto) }, + align: (horizon+left, horizon+center), + inset: 5pt, + stroke: ( + top: (paint: black, thickness: 0.1pt, dash: "dashed"), + bottom: (paint: black, thickness: 0.1pt, dash: "dashed"), + left: none, + right: none, + ), + pad(top: 0.2cm, bottom: 0.2cm, text("Schritt " + str(i+1) + ":\n" + desc)), if img != "none" { - pad(right: 10pt, image(img)) + pad(right: 10pt, block( + clip: true, + radius: imageradius, + image(img) +)) } else { none }, - pad(bottom: 0.2cm, text("Schritt " + str(i+1) + ":\n" + desc)), - v(0.2cm) ) }) -#let figures = image_paths.map(path => image(path)) +#let figures = image_paths.map(path => block( + clip: true, + radius: imageradius, + image(path) +)) //title and hazard + #grid( columns: (0.7fr, 1fr), align: (horizon, right+horizon), - stroke: (bottom:0.7pt + black), + stroke: (bottom:0.5pt + black), inset: (5pt), par( text("Methan-Mamba", size: 22pt)), @@ -146,22 +175,37 @@ ) ) +//safety +#v(-0.3cm) +#show table.cell: set text(size: 6pt) +#box( stroke: 0.5pt + red, inset: -1pt, radius: 1pt, +table( + stroke: none, + columns: ( 1fr, 1fr, 1fr, 1fr), + ..safety_notices, + ) +) + + +#let observation = [] // Materials and Overview #show table.cell: set text(size: 9pt) #grid( columns: (auto, 1fr), - stroke: (bottom:0.7pt + black), - inset: (5pt), + stroke: (bottom:0.5pt + black), + inset: (top: 0pt, bottom: 5pt, left: 5pt, right: 5pt), grid( rows: (auto), text("Material", weight: "bold"), v(0.4cm), repeated-table( num-repeats: tablecolumns, - stroke: (_, y) => if y > 0 { (top: 0.3pt) }, + stroke: (x, y) => + (if y > 0 { (top: (paint: black, thickness: 0.1pt, dash: "dashed")) } else { none }) + + (if calc.rem(x, 2) == 0 and x > 0 { (left: (paint: black, thickness: 0.1pt, dash: "dashed")) } else { none }), + columns: (auto, auto), - inset: 6pt, align: (right, left), ..for x in amounts.zip(material_names) {( ..for y in x {( @@ -185,8 +229,8 @@ // Durchführung #grid( columns: (1fr), - stroke: (bottom:0.7pt + black), - inset: (5pt), + stroke: (bottom:0.5pt + black), + inset: (top: 0pt, bottom: 5pt, left: 5pt, right: 5pt), grid( rows: (auto), text("Durchführung", weight: "bold"), @@ -195,8 +239,33 @@ ), ) -// Safety Notices +//Interpretation +#grid( + columns: (1fr), + stroke: (bottom:0.5pt + black), + inset: (top: 0pt, bottom: 5pt, left: 5pt, right: 5pt), + grid( + rows: (auto), + text("Interpretation", weight: "bold"), + v(0.4cm), + explanation + ), +) + +//observation +#grid( + columns: (1fr), + stroke: (bottom:0.5pt + black), + inset: (top: 0pt, bottom: 5pt, left: 5pt, right: 5pt), + grid( + rows: (auto), + text("Observation", weight: "bold"), + v(0.4cm), + observation + ), +) +// Safety Notices // Interpretation diff --git a/main.typ b/main.typ new file mode 100644 index 0000000..1b385dd --- /dev/null +++ b/main.typ @@ -0,0 +1,251 @@ +#import "@preview/typsium-ghs:0.1.0": * +#import "@preview/one-liner:0.2.0": fit-to-width +#import "@preview/subpar:0.2.2" +#import "@preview/typsium:0.3.0":* + +#let chemscript( + lan, + title, + title_fontsize, + ghs_signs, + tablebreak_bias, + step_descriptions, + step_image_paths, + step_image_size, + image_paths, + image_radius, + amounts, + material_names, + safety_notices, + explanation, + observation +) = { + + + +let tablecolumns = calc.ceil(amounts.len() / tablebreak_bias) +let materials = material_names.map(name => text(name)) +let has_images = step_image_paths.any(path => path != "" and path != "none") + +set text(lang:lan) + +let repeated-table(num-repeats: 2, ..args) = { + let options = args.named() + let data = args.pos() + + // STEP 1: transform table options to apply to a multiple of the original columns + + let columns = options.at("columns", default: ()) + let (column-count, columns) = if type(columns) == int { + // for numbers, that's number of columns + (columns, columns * num-repeats) + } else if type(columns) == array and columns != () { + // for arrays with elements, the number of elements is number of columns + (columns.len(), columns * num-repeats) + } else { + // lengths, auto or an empty array mean there's one column + (1, (auto,) * num-repeats) + } + options.columns = columns + + // TODO transform other per-column fields, such as align + + // STEP 2: separate header and footer from the table body, with repeated cells + + let header = if data.len() > 0 and type(data.first()) == content and data.first().func() == table.header { + let (children, ..args) = data.remove(0).fields() + table.header(..args, ..children * num-repeats) + } + + let footer = if data.len() > 0 and type(data.last()) == content and data.last().func() == table.footer { + let (children, ..args) = data.pop().fields() + table.footer(..args, ..children * num-repeats) + } + + // STEP 3: rearrange the data, so that after a number of rows the next repetition begins + + // split into rows + let rows = data.chunks(column-count) + // split into repeats of rows + let num-rows = calc.ceil(rows.len() / num-repeats) + let repeats = rows.chunks(num-rows) + // pad the last repeat so that all have the same number of rows + let empty-row = (none,) * column-count + repeats.last() += (empty-row,) * (num-rows - repeats.last().len()) + // join repeats into combined rows + let rows = array.zip(..repeats) + // combine into flat data + data = rows.flatten() + + // STEP 4: re-add header and footer to the data + + if header != none { + data.insert(0, header) + } + if footer != none { + data.push(footer) + } + + // STEP 5: produce table + + table(..options, ..data) +} + + +let my-subfig(..args) = subpar.grid( + + show-sub-caption: (num, it) => { + set text(size: 7pt) + text(weight: "bold", num) + it.body + }, + ..args +) + +// Define your image paths + + + +// NOTE: For Linebreaks, use \n in the text + +let steps = step_descriptions.enumerate().map(((i, desc)) => { + let img = if i < step_image_paths.len() { step_image_paths.at(i) } else { "none" } + grid( + columns: if has_images { (1fr, step_image_size) } else { (1fr, auto) }, + align: (horizon+left, horizon+center), + inset: (top: 5pt, bottom: 5pt, left: 5pt, right: 0pt), + stroke: ( + top: (paint: black, thickness: 0.1pt, dash: "dashed"), + bottom: (paint: black, thickness: 0.1pt, dash: "dashed"), + left: none, + right: none, + ), + pad(top: 0.2cm, bottom: 0.2cm, text("Schritt " + str(i+1) + ":\n" + desc)), + if img != "none" { + pad(right: 10pt, block( + clip: true, + radius: image_radius, + image(img) +)) + } else { + none + }, + ) +}) + + +let figures = image_paths.map(path => block( + clip: true, + radius: image_radius, + image(path) +)) + +//title and hazard + +grid( + columns: (1fr, auto), + align: (horizon, right+horizon), + stroke: (bottom:0.5pt + black), + inset: (5pt), + par( + text(title, size: title_fontsize)), + grid( + columns: ghs_signs.len(), + rows: 30pt, + ..ghs_signs.map(x=> ghs(x)) + ) +) + +//safety +v(-0.3cm) +show table.cell: set text(size: 6pt) +box( stroke: 0.5pt + red, inset: -1pt, radius: 1pt, +table( + stroke: none, + columns: ( 1fr, 1fr, 1fr, 1fr), + ..safety_notices, + ) +) + + +// Materials and Overview + +show table.cell: set text(size: 9pt) +grid( + columns: (auto, 1fr), + stroke: (bottom:0.5pt + black), + inset: (top: 0pt, bottom: 5pt, left: 5pt, right: 5pt), + grid( + rows: (auto), + text("Material", weight: "bold"), + v(0.4cm), + repeated-table( + num-repeats: tablecolumns, + stroke: (x, y) => + (if y > 0 { (top: (paint: black, thickness: 0.1pt, dash: "dashed")) } else { none }) + + (if calc.rem(x, 2) == 0 and x > 0 { (left: (paint: black, thickness: 0.1pt, dash: "dashed")) } else { none }), + + columns: (auto, auto), + align: (right, left), + ..for x in amounts.zip(material_names) {( + ..for y in x {( + [#y], + )} + )} +) + + ), + grid( + text("Übersicht", weight: "bold"), + v(0.4cm), + my-subfig( + ..figures, + columns: (auto, auto), + ), + v(0.1cm) + ), + ) + +// Durchführung +grid( + columns: (1fr), + stroke: (bottom:0.5pt + black), + inset: (top: 0pt, bottom: 5pt, left: 5pt, right: 5pt), + grid( + rows: (auto), + text("Durchführung", weight: "bold"), + v(0.4cm), + ..steps + ), +) + + +//Interpretation +grid( + columns: (1fr), + stroke: (bottom:0.5pt + black), + inset: (top: 0pt, bottom: 5pt, left: 5pt, right: 5pt), + grid( + rows: (auto), + text("Interpretation", weight: "bold"), + v(0.4cm), + explanation + ), +) + +//observation +grid( + columns: (1fr), + stroke: (bottom:0.5pt + black), + inset: (top: 0pt, bottom: 5pt, left: 5pt, right: 5pt), + grid( + rows: (auto), + text("Observation", weight: "bold"), + v(0.4cm), + observation, + ), +) +// Safety Notices + +} +// Interpretation