From 825437f73d929693b32c426643442c74e0a074bf Mon Sep 17 00:00:00 2001 From: Luc Vandenbroucke Date: Fri, 22 Feb 2019 13:52:38 +0100 Subject: [PATCH] testen met reader2.dll en signing --- EpdBase/EpdBase.h | 2 +- EpdBase/{dll2 => dll2 - Copy}/Reader2.dll | Bin EpdBase/dll2 - Copy/Reader2.exp | Bin 0 -> 17153 bytes EpdBase/dll2 - Copy/Reader2.lib1 | Bin 0 -> 31998 bytes EpdBase/{dll2 => dll2 - Copy}/ex15.mif | 0 EpdBase/dll2 - Copy/reader2.def | 132 ++ EpdBase/dll2 - Copy/reader2.exports | 158 ++ .../ex15.mif => EpdBase/dll2 - Copy/reader2.h | 0 EpdBase/dll2 - Copy/reader2.lib | Bin 0 -> 28914 bytes .../dll2 - Copy/save}/Reader2.dll | Bin .../{dll2 => dll2 - Copy/save}/Reader2.exp | Bin EpdBase/dll2 - Copy/save/Reader2.lib | Bin 0 -> 31998 bytes EpdBase/dll2 - Copy/save/ex15.mif | 1374 +++++++++++++++++ EpdBase/dll2/reader2.h | 1374 +++++++++++++++++ .../dll2/test}/IR_READER_MS_DLL.dll | Bin EpdBase/dll2/test/Reader2.dll | Bin 0 -> 158720 bytes EpdBase/dll2/test/Reader2.exp | Bin 0 -> 17162 bytes EpdBase/dll2/test/Reader2.lib1 | Bin 0 -> 31998 bytes EpdBase/dll2/test/ex15.mif | 1374 +++++++++++++++++ EpdBase/dll2/test/reader2.def | 132 ++ EpdBase/dll2/test/reader2.exports | 158 ++ EpdBase/dll2/test/reader2.lib | Bin 0 -> 28914 bytes .../dll2/{reader2.lib => test/reader2.lib0} | 0 EpdBase/dll2/test2/Reader2.dll | Bin 0 -> 158720 bytes EpdBase/dll2/test2/reader2.def | 114 ++ EpdBase/dll2/test2/reader2.exp | Bin 0 -> 15181 bytes EpdBase/dll2/test2/reader2.lib | Bin 0 -> 25604 bytes EpdBaseClr/EpdBaseClr.vcxproj | 10 + EpdBaseClr/EpdBaseClr.vcxproj.filters | 5 + EpdBaseClr/Reader2.dll | Bin 0 -> 158720 bytes EpdBaseClr/dll2/reader2.lib1 | Bin 0 -> 30772 bytes EpdBaseClr/dll2/reader2.libtest | Bin 0 -> 25604 bytes EpdBaseClr/dll2/save/IR_READER_MS_DLL.dll1 | Bin 0 -> 158720 bytes EpdBaseClr/dll2/save/Reader2.dll0 | Bin 0 -> 158720 bytes EpdBaseClr/dll2/save/Reader2.dll1 | Bin 0 -> 158720 bytes EpdBaseClr/dll2/{ => save}/Reader2.exp | Bin EpdBaseClr/dll2/save/Reader2.lib0 | Bin 0 -> 31998 bytes EpdBaseClr/dll2/save/ex15.mif1 | 1374 +++++++++++++++++ EpdBaseClr/dll2/save/reader2.h | 1374 +++++++++++++++++ EpdBaseClr/dll2/save/reader2.libx | Bin 0 -> 28914 bytes EpdBaseClr/eDosStation.snk | Bin 0 -> 596 bytes OkReadBadge/OkReadBadge.vcxproj | 2 +- TestDirect/TestDirect.vcxproj | 2 +- TestEdosBase/TestEdosBase.vcxproj | 2 +- eDos.sln | 2 - eDosStation/EntryBadge.xaml.cs | 2 +- eDosStation/Reader2.dll | Bin 0 -> 158720 bytes eDosStation/eDosStation.csproj | 11 +- eDosStation/eDosStation.snk | Bin 0 -> 596 bytes 49 files changed, 7591 insertions(+), 11 deletions(-) rename EpdBase/{dll2 => dll2 - Copy}/Reader2.dll (100%) create mode 100644 EpdBase/dll2 - Copy/Reader2.exp create mode 100644 EpdBase/dll2 - Copy/Reader2.lib1 rename EpdBase/{dll2 => dll2 - Copy}/ex15.mif (100%) create mode 100644 EpdBase/dll2 - Copy/reader2.def create mode 100644 EpdBase/dll2 - Copy/reader2.exports rename EpdBaseClr/dll2/ex15.mif => EpdBase/dll2 - Copy/reader2.h (100%) create mode 100644 EpdBase/dll2 - Copy/reader2.lib rename {EpdBaseClr/dll2 => EpdBase/dll2 - Copy/save}/Reader2.dll (100%) rename EpdBase/{dll2 => dll2 - Copy/save}/Reader2.exp (100%) create mode 100644 EpdBase/dll2 - Copy/save/Reader2.lib create mode 100644 EpdBase/dll2 - Copy/save/ex15.mif create mode 100644 EpdBase/dll2/reader2.h rename {EpdBaseClr/dll2 => EpdBase/dll2/test}/IR_READER_MS_DLL.dll (100%) create mode 100644 EpdBase/dll2/test/Reader2.dll create mode 100644 EpdBase/dll2/test/Reader2.exp create mode 100644 EpdBase/dll2/test/Reader2.lib1 create mode 100644 EpdBase/dll2/test/ex15.mif create mode 100644 EpdBase/dll2/test/reader2.def create mode 100644 EpdBase/dll2/test/reader2.exports create mode 100644 EpdBase/dll2/test/reader2.lib rename EpdBase/dll2/{reader2.lib => test/reader2.lib0} (100%) create mode 100644 EpdBase/dll2/test2/Reader2.dll create mode 100644 EpdBase/dll2/test2/reader2.def create mode 100644 EpdBase/dll2/test2/reader2.exp create mode 100644 EpdBase/dll2/test2/reader2.lib create mode 100644 EpdBaseClr/Reader2.dll create mode 100644 EpdBaseClr/dll2/reader2.lib1 create mode 100644 EpdBaseClr/dll2/reader2.libtest create mode 100644 EpdBaseClr/dll2/save/IR_READER_MS_DLL.dll1 create mode 100644 EpdBaseClr/dll2/save/Reader2.dll0 create mode 100644 EpdBaseClr/dll2/save/Reader2.dll1 rename EpdBaseClr/dll2/{ => save}/Reader2.exp (100%) create mode 100644 EpdBaseClr/dll2/save/Reader2.lib0 create mode 100644 EpdBaseClr/dll2/save/ex15.mif1 create mode 100644 EpdBaseClr/dll2/save/reader2.h create mode 100644 EpdBaseClr/dll2/save/reader2.libx create mode 100644 EpdBaseClr/eDosStation.snk create mode 100644 eDosStation/Reader2.dll create mode 100644 eDosStation/eDosStation.snk diff --git a/EpdBase/EpdBase.h b/EpdBase/EpdBase.h index 31215a4..9476593 100644 --- a/EpdBase/EpdBase.h +++ b/EpdBase/EpdBase.h @@ -1,6 +1,6 @@ #pragma once #include -#include "dll2/ex15.mif" +#include "dll2/reader2.h" #include "TimeFunctions.h" diff --git a/EpdBase/dll2/Reader2.dll b/EpdBase/dll2 - Copy/Reader2.dll similarity index 100% rename from EpdBase/dll2/Reader2.dll rename to EpdBase/dll2 - Copy/Reader2.dll diff --git a/EpdBase/dll2 - Copy/Reader2.exp b/EpdBase/dll2 - Copy/Reader2.exp new file mode 100644 index 0000000000000000000000000000000000000000..948a0ba577ae29dfa798fb03370e7098d16c60db GIT binary patch literal 17153 zcmeI3jh|H2dB-0RS>9a)5d?J6RaV7yW_EUV7E$+oSy*7%UD;JfmSN}a?&$2yIx`Ck zVgh0kYlttER%=bAL|bD`)o86vi6v^RQD{tJ)EI4PiY+zTnwB;+l9=D~ocnstnt!0) z51jp-?{n@w=bn4cnR}jRrhURh`sCeQV#!jXSrdql36)kVSxkzShP~JWo;fEEbmg3Xb|>q&3AI@Zyl93u;Mx#3sKp(jr<+XVW=UMoZ{i zI*-cfe7b;^QUzT|7tzJEj4q){x|Bi`rU+G0l&UF4H58{>T27bI3c8%GpewP~)l&mC zQWG^(3$@ZpYNJ)On%Zd%t)+F;LF=iLx~QA3q7BqTy>vBQL)TJ*uA`0AN1G@~o2egb zs6_)bNJEsS>*)r{&@g2wM@lDqCXa}sHdeKg&gn2&NV%`ha$%b??lisdwff1@elj?id zH#D`iu5ak;xkkZ`T)r5*Pn1-33U2MFZ(hw^(NCmwu#Gyb0Fj@5_&-XWC?SN`)Q3;%%}S~C%4mN6>%2@;!&xtEM3git!e3$ z4yey;O>Qelm$|-5CQZ zS~p^4?We#)sXl^-FpwT3f2OOLERGfw;uedIpRvCz=lQ|<+Ul0$0ibancJ`3tVz~MA z=6teU$O-);gLR?O!zayfn=Tu4n2R$cw*g#Mw9 zWJ(NOBUV2aPHwT9gi=O9dE(vaVN5Ni_9Ea(j07*U79StTVht)d6Q2j@XfbEcJ>;DE zwXJzo`L(-H}1sHIF!zhut8nl9w*Agx0K3l&2r=N${rj} zQp`jAARE%S2|rhBy2J3~l+_*+Qc@cV!q7jX`7D+eerVhPb((KLNHKdvh?Ym8ih1j* zSkz#Uhu+tc87&Moj1CM~`9fWkRNj5oG6NWQTK!gfi&Yn=zV3W7Tfl-0jW;vG+Zy3r zZ4uH_MU^3)EUH{mwpKuWS#r^dg!ejT%aHC76$hItDunbaqE>)S6BR{zhp0NR>7r0I z-6^UGj9XEHw>YA^M6CqFRu-%d>D{8*!FXF+g10-O-xt*ZcABV_NbeEV4OS|u9qC?C zyww1z!r!aLHbouJHXBoRYdwHqIQBU6g7tQK~cAY@v|$z zTPV>!QMZ9D7PS-UpNiT8cDATnk?t3D7uY$XZbSMtQG3D4MDeqINYs5`OGNSWd05l~ zVCRbBKK?UN`@qf<#r^c>q80>DNU)26llcuJch*Pk_PQfqUcg z{zBB#U=^YsL(2b4=vlA}MLmJ^8=?+?T_oyhq<<;uAlSvCo<;h&s29POi8_Fk&o7~u z!7dSX5b2Ym4uMsQdJ*Y2MZE@gsi>EcJ|*gPu#l)jNV)D3dJ8Np>NTW)CF&iph^W_* zJ|pS~Se2-^kp8u(qhL`{?;z!Nm(Ve=YEeg!{*9;)z+$3~BK?-AkHBg~9YgxJqK<>b zMSXyj@419dfYpln2NwKpL}6=(-Iknz^zTGX0$U;KB+`STrhr{8iY5?! zN7M|kD@08KdtOv2*p;HDfW07UE?AwY8DQMkB{UzbUQ{XAcSS7%YY;UT>?KiUV2z^Y zgZ;gza*i@^9fVKoD57F7oJJyFZRT11tDy&@_E)+(w3>{U@wu$7{gf$=jgp*UEZ zs1Vp;Q7gb!iHd^#gQz;N)uQ5H-xt*c)-GxV7>|zqM;t`;n+_untk}U_7=;s26O#s1C3ni%NiXis}Y?L)0d)E>XQ;Z;DERb&E=X@whCZ zA+W1NZ36p=s0`Q!Q7N#uMU8;si-1Yuc!Q=CyiMk7{PtbVEv-*1N%2o4}qmbJpjh@5UUxOC2Akozl(Yd zY(UgQVDF210&Gy!BVa!l^)%R!sK>x~4rBcTON)8}>_brpz^)hdG}wQLItX@ysAs|c zQ`C!K8Bqtoc>ZJk0~;1~5bPJC4uNGwy$JSSqFw{biFz6AzeT+cHX`Z}7_S{z|G;h( z^%~g!hL4%i7%$G}EK9Rd44Q6GS95p@*oSE4=w z+bZf9*vF!dgN=#$0F2ixtbbtJM12JIYf&e`wu?Fr_8U?Bs&td66JVc+ngq5()JZVH zfB3z?ZWcxpfrQNf`bJuY(Cg7VWnWF3R?tri?F$1 zlZBOm?G`p4tVCEj*sa1AflU!s0rmx9Wnfc`THbz@`g}g54%; z8Q2VAaj@SL76O|oYz5fu!XVTbn#FHi6J{gp`pB%Y5qu)An9aUIbhv%Y!W-N@=?SzZ z-Jj1Das$P(ip~qm+S}Hy#tYNsv#Eb8TnEb&nM5JqpXe_ntfqBc32fPT*O`FZEkf29 z+z!hVcoQGYCx^?}r&B1a7>ma)On4XFkS<{JSJqV=O{H^*NGM#BXwG7%GLlc@IvW}j z-ML(*kXX|N8ID$lW0jGbP^2ocIh{?c%oU2g@mKbrS3YRJZ^IraA?JZo`EzO=AlVhg)hF7^laj%ue4fo67iB5f znKo0tN+$DdqI_d>Ko;19_qS628GvW`pk2qAzzc1R`}Z0(ABIJ?L3X*WgKH)%i^U=y zPHz3#k`1~#nV-X4^Lfq&FJtaGKe-W0T;y}_aHG$44X%TO%b(}Nu3z*l7|LBk&_T-W zIp4K;o>Jx)xZK;?b1yDc9Bu{MYc~t9LZEV@o`(E|DzCh${LC(5;B%|;l`d8+?Rr7^ zu`LtmI9j>KFR@9`@CI(JOUL~&Z+Z?x;&z-dhWv&dA@%x0i zyX*W`<-6oZTJOj1B;qmA;J2`MlDn!=pyoH`0no$-p97h1vzZxBao3Z~x7ngo+jq(x z-s;-ex6Bo;bcxU1#|vv)z@WMPxWKAF0nPo#!(p{kz~_JFG1TsG-4V?vt#OT>N1E?{ zt;fY@&TO5>B%Z?k-Qlo+vzkZIde0&u4ci;ZozUr;FxMUTH9zvMaSY0j&DQR5tjeLy zExF2Xbv@fW(>6F3HB5N)^!Skdytp@dUF^k%_|C6(xb5lWt6t+UA*Pk06sZ6KtNz;T+KEZaH>IST2u`(1Y#ePH){}<-C>Ql)7)wqd5 z3fpDYQwugus!V=xgvW-sogJb|MRAHlwyr}Ap6Vt!qU@>nIYToJOkX%NmK& zqZ+BE=QR?ecQsN&pJ*gbi?O#;EmXDFQY=WqA!^e|m^Nx8LIsUf(d`nbWRrG;IqI6Ot)iezw-1n5LVsw^9YUmP;#A$^_YH4+l zL_^f05sVFupr18@e%45oZq`UOeNiJZx>qALv|l4}`npDH>G2?`4$-$Y5~jl%iO`!G zsiGqqiPCY6RMRPNT=@FAI!1FeQbUV05~m7{;7e;k5(`nQM#9vskq8ZHq>66QNR;l? zNHsmIkr+Lrks5klBXRnnMr!HZAgKw_`x*(;uQd{($?)g+daS03=4m8Kl^Ut07LCN{ zDvi`oS|f29(?~7t4w86??$Ah>9@I#Lp43PceMcivdP5`C^mC2G=%hw!X!7(xZ^Yv? zS0lA_UXav=s8S{=sAsq z>5xVu^tMK-=$9Ia5_|Q$@e>YJ(=v_3D6WwjYSl=bx-?QteL;fH!C{Sr=_ZXtXpcs! z=wXdS={b#5(_xLo=qDPfp$|0zPX%0-zI(^#;QS!L=ioApgej(x2sLP=iZ*B@O2Znd zrkgbqqrDobp|5EqPETp1mR<-Fd=9>?kubgI5`NFZE0lZiJDK|OfrAub&x&&>!n;f7 zP=t2^&Y{SiP8NR^dD0-?H^?!Ad~A?Xeo*$Iu6({hRv4tmAfpDk!yu0utJN890kg=NTkqkmUwx50E}Mclg_}&VkyQ z@Rr>^RPDWiv)D9fkTHYoHpo{Dvfm)zG{_4EIc$)(4f3HuJ~qfy-@>8pbg@Bd4YJN4 z8x1mIkedy1he7T)$Rh?hV33y#@}@yPGRRcy{G3DG`vQYh8srLttTM<3gA5tuCWGuT z$bN%7YmiqA@?(P>HOO&;$oCiR?ohok9lK2Dz`S4=HhUrMLzOuvP=-wx8DzOZIt(&s z5Z*mIhpKCrLGCulK7%}Nki!N!W{^qPFFJ>+UE;VlQe=ryrqUpn8Dy0~t~SUG2Kj

9|%q}u%8H&8;oYG1)*)^yO0-jW}D=E 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 literal 0 HcmV?d00001 diff --git a/EpdBase/dll2/ex15.mif b/EpdBase/dll2 - Copy/ex15.mif similarity index 100% rename from EpdBase/dll2/ex15.mif rename to EpdBase/dll2 - Copy/ex15.mif diff --git a/EpdBase/dll2 - Copy/reader2.def b/EpdBase/dll2 - Copy/reader2.def new file mode 100644 index 0000000..fe83b1e --- /dev/null +++ b/EpdBase/dll2 - Copy/reader2.def @@ -0,0 +1,132 @@ +EXPORTS +?GetLogDirectory@@YGXPA_WG@Z +?GetLogFilename@@YGXPA_WG@Z +?GetLogIniFilename@@YGXPA_WG@Z +?GetLoggingLevel@@YGGXZ +?GetRawLoggingLevel@@YGGXZ +?GetRejectLogFilename@@YGXPA_WG@Z +?GetRejectLoggingLevel@@YGGXZ +?InitLogDirectory@@YGXXZ +?Initialize@@YGXXZ +?Log@@YAXQBDIGQB_WZZ +?LogPort@@YGXPA_WG@Z +?LogReject@@YGXGPAEK@Z +?SetLogFilename@@YGXQB_W@Z +?SetLogIniFilename@@YGXQB_W@Z +?SetLoggingLevel@@YGXG@Z +?SetRawLoggingLevel@@YGXG@Z +?SetRejectLogFilename@@YGXQB_W@Z +?SetRejectLoggingLevel@@YGXG@Z +ADSClearData +ADSClearOffEnable +ADSClearWearer +ADSDeIssue +ADSIssue +ADSLogin +ADSReadData +ADSReadWearer +ADSSetOffEnable +ADSWritePassword +Abort +AllocateMemory +BaseLineCounts +ClearDose +ClearErrorStore +ClearFailFlag +ClearFaultFlags +ClearLatchedAlarms +ClearPeakRates +ClearTotalDose +CloseDevice +Commit +Connect +DeIssueEpd +DeinitComms +Discover +DisplayFaultCode +EndSession +EpdOff +EpdOn +GetDataMetric +GetErrorDetails +InitComms +IssueEpd +MFRClearAlwaysCount +MFRClearGolden +MFRFormatEEPROM +MFRLogin +MFRResetEpd +MFRSetAlwaysCount +MFRSetGolden +MFRWriteASIC +MFRWriteCalFactors +MFRWriteDetectorThresholds +MFRWriteDirectEEPROM +MFRWriteEpdID +MFRWritePassword +MFRWriteRAM +MemoryAllocated +OpenDevice +ReadA2Config +ReadA2ConfigStatus +ReadASIC +ReadAlarmConfig +ReadAlarmDoseThresholds +ReadAlarmRateThresholds +ReadBaseCounts +ReadCalibrationData +ReadCommsStats +ReadConfig +ReadCounts +ReadDirectEEPROM +ReadDisplayConfig +ReadDoseProfile +ReadDoseProfileCache +ReadDoseProfileSince +ReadDosesQuality +ReadEpdID +ReadEpdStatus +ReadErrorStore +ReadMemory +ReadPeaks +ReadProfileControl +ReadRAM +ReadRates +ReadScratchPad +ReadSpecialDoseStore +ReadSpecialWriteTimes +ReadWearer +ReadWearerID +ReadWearerName +ReleaseMemory +SetAutoCommit +SetDiscoveryExpirationPeriod +SetDiscoveryTimeslotCount +SetDiscoveryTimeslotPeriod +SetFailFlag +SetRetryCounts +SetTimeouts +TestBattery +TestDetectors +WriteA2Config +WriteAlarmConfig +WriteAlarmDoseThresholds +WriteAlarmRateThresholds +WriteChirpRate +WriteConfig +WriteCountdownTimer +WriteDisplayConfig +WriteDisplayControlBits +WriteDisplayEnables +WriteDose +WriteMemory +WriteProfileControl +WriteReturnForReadTime +WriteScratchPad +WriteSpecialWriteTimes +WriteTotalDose +WriteWearerName +_FlushBuffers@4 +_FlushDiscoveryCache@4 +_Receive@8 +_Transmit@8 diff --git a/EpdBase/dll2 - Copy/reader2.exports b/EpdBase/dll2 - Copy/reader2.exports new file mode 100644 index 0000000..c490e19 --- /dev/null +++ b/EpdBase/dll2 - Copy/reader2.exports @@ -0,0 +1,158 @@ +Microsoft (R) COFF/PE Dumper Version 14.16.27027.1 +Copyright (C) Microsoft Corporation. All rights reserved. + + +Dump of file reader2.dll + +File Type: DLL + + Section contains the following exports for IR_READER_MS_DLL.dll + + 00000000 characteristics + 534E87DE time date stamp Wed Apr 16 15:38:38 2014 + 0.00 version + 1 ordinal base + 131 number of functions + 131 number of names + + ordinal hint RVA name + + 1 0 00007D60 ?GetLogDirectory@@YGXPA_WG@Z + 2 1 00008370 ?GetLogFilename@@YGXPA_WG@Z + 3 2 000082A0 ?GetLogIniFilename@@YGXPA_WG@Z + 4 3 000084F0 ?GetLoggingLevel@@YGGXZ + 5 4 00008550 ?GetRawLoggingLevel@@YGGXZ + 6 5 00008430 ?GetRejectLogFilename@@YGXPA_WG@Z + 7 6 00008520 ?GetRejectLoggingLevel@@YGGXZ + 8 7 00007DB0 ?InitLogDirectory@@YGXXZ + 9 8 00008160 ?Initialize@@YGXXZ + 10 9 00008580 ?Log@@YAXQBDIGQB_WZZ + 11 A 00007D90 ?LogPort@@YGXPA_WG@Z + 12 B 00008740 ?LogReject@@YGXGPAEK@Z + 13 C 000083A0 ?SetLogFilename@@YGXQB_W@Z + 14 D 000082D0 ?SetLogIniFilename@@YGXQB_W@Z + 15 E 00008500 ?SetLoggingLevel@@YGXG@Z + 16 F 00008560 ?SetRawLoggingLevel@@YGXG@Z + 17 10 00008460 ?SetRejectLogFilename@@YGXQB_W@Z + 18 11 00008530 ?SetRejectLoggingLevel@@YGXG@Z + 19 12 00005520 ADSClearData + 20 13 000055B0 ADSClearOffEnable + 21 14 00005420 ADSClearWearer + 22 15 00005500 ADSDeIssue + 23 16 00005490 ADSIssue + 24 17 000053D0 ADSLogin + 25 18 00003DB0 ADSReadData + 26 19 00005440 ADSReadWearer + 27 1A 00005590 ADSSetOffEnable + 28 1B 00005540 ADSWritePassword + 29 1C 00002940 Abort + 30 1D 00002540 AllocateMemory + 31 1E 000039B0 BaseLineCounts + 32 1F 00004840 ClearDose + 33 20 00009560 ClearErrorStore + 34 21 000039F0 ClearFailFlag + 35 22 00003A30 ClearFaultFlags + 36 23 00003A10 ClearLatchedAlarms + 37 24 000049A0 ClearPeakRates + 38 25 00004920 ClearTotalDose + 39 26 00003670 CloseDevice + 40 27 00002F90 Commit + 41 28 00002F10 Connect + 42 29 00003930 DeIssueEpd + 43 2A 00002880 DeinitComms + 44 2B 00002BE0 Discover + 45 2C 00003D90 DisplayFaultCode + 46 2D 00005100 EndSession + 47 2E 00003030 EpdOff + 48 2F 00003750 EpdOn + 51 30 00002790 GetDataMetric + 52 31 00002740 GetErrorDetails + 53 32 000027A0 InitComms + 54 33 000038D0 IssueEpd + 55 34 00003580 MFRClearAlwaysCount + 56 35 00003580 MFRClearGolden + 57 36 00003580 MFRFormatEEPROM + 58 37 000055D0 MFRLogin + 59 38 00003580 MFRResetEpd + 60 39 00003580 MFRSetAlwaysCount + 61 3A 00003580 MFRSetGolden + 62 3B 00003570 MFRWriteASIC + 63 3C 00005620 MFRWriteCalFactors + 64 3D 000056B0 MFRWriteDetectorThresholds + 65 3E 00003560 MFRWriteDirectEEPROM + 66 3F 00003590 MFRWriteEpdID + 67 40 00005980 MFRWritePassword + 68 41 00003560 MFRWriteRAM + 69 42 00002590 MemoryAllocated + 70 43 00002DD0 OpenDevice + 71 44 000059D0 ReadA2Config + 72 45 00005A30 ReadA2ConfigStatus + 73 46 00005320 ReadASIC + 74 47 00004560 ReadAlarmConfig + 75 48 00003CF0 ReadAlarmDoseThresholds + 76 49 00003D30 ReadAlarmRateThresholds + 77 4A 00003B90 ReadBaseCounts + 78 4B 00003BE0 ReadCalibrationData + 79 4C 000036F0 ReadCommsStats + 80 4D 000044D0 ReadConfig + 81 4E 00003AB0 ReadCounts + 82 4F 00005360 ReadDirectEEPROM + 83 50 000045B0 ReadDisplayConfig + 84 51 00004390 ReadDoseProfile + 85 52 00003390 ReadDoseProfileCache + 86 53 00004430 ReadDoseProfileSince + 87 54 00003A50 ReadDosesQuality + 88 55 00003080 ReadEpdID + 89 56 00003770 ReadEpdStatus + 90 57 00004610 ReadErrorStore + 91 58 00002620 ReadMemory + 92 59 00003B00 ReadPeaks + 93 5A 00003E20 ReadProfileControl + 94 5B 000052B0 ReadRAM + 95 5C 00003B50 ReadRates + 96 5D 00005130 ReadScratchPad + 97 5E 000047A0 ReadSpecialDoseStore + 98 5F 00004760 ReadSpecialWriteTimes + 99 60 00003880 ReadWearer + 100 61 00003800 ReadWearerID + 101 62 00003840 ReadWearerName + 103 63 000025D0 ReleaseMemory + 104 64 00002CF0 SetAutoCommit + 105 65 00002A20 SetDiscoveryExpirationPeriod + 106 66 00002B00 SetDiscoveryTimeslotCount + 107 67 00002A90 SetDiscoveryTimeslotPeriod + 108 68 000039D0 SetFailFlag + 109 69 00002CA0 SetRetryCounts + 110 6A 000029A0 SetTimeouts + 111 6B 00005C50 TestBattery + 112 6C 000037E0 TestDetectors + 114 6D 00005A80 WriteA2Config + 115 6E 00004B10 WriteAlarmConfig + 116 6F 00004A10 WriteAlarmDoseThresholds + 117 70 00004A80 WriteAlarmRateThresholds + 118 71 00005260 WriteChirpRate + 119 72 00004EE0 WriteConfig + 120 73 000048C0 WriteCountdownTimer + 121 74 00004CB0 WriteDisplayConfig + 122 75 00005830 WriteDisplayControlBits + 123 76 00005860 WriteDisplayEnables + 124 77 00004860 WriteDose + 125 78 000026B0 WriteMemory + 126 79 00004FB0 WriteProfileControl + 127 7A 000049C0 WriteReturnForReadTime + 128 7B 000051A0 WriteScratchPad + 129 7C 00005010 WriteSpecialWriteTimes + 130 7D 00004940 WriteTotalDose + 131 7E 00003950 WriteWearerName + 49 7F 00002EA0 _FlushBuffers@4 + 50 80 00002B70 _FlushDiscoveryCache@4 + 102 81 00002D80 _Receive@8 + 113 82 00002D30 _Transmit@8 + + Summary + + 4000 .data + 5000 .rdata + 2000 .reloc + 1000 .rsrc + 1E000 .text diff --git a/EpdBaseClr/dll2/ex15.mif b/EpdBase/dll2 - Copy/reader2.h similarity index 100% rename from EpdBaseClr/dll2/ex15.mif rename to EpdBase/dll2 - Copy/reader2.h diff --git a/EpdBase/dll2 - Copy/reader2.lib b/EpdBase/dll2 - Copy/reader2.lib new file mode 100644 index 0000000000000000000000000000000000000000..4662cb23f09f1c5a724948b0139a166a6451bb98 GIT binary patch literal 28914 zcmeHPTWnp$x&9L%K%gmwa1UT0K!6fLVmlW?V#l|bIF4gGS3;Z}dpX{)y|=sfc0wqH zmcv1)LRFJzGZ`h=>g4^>;yhl3ERDjigzs!tUURaGH+zJG4(pIK{7 z_RcnMXG@=F=AT*f&CHt1KmW|~y}L{G*@Zo8AMf&iPxSO`*|BX~?~ZO?zQqK4dwO?h z@0qnktF9&5_AycKl|xQx#=`d%bb_y=5||BS&0aDjch4Soz47(iVVmf$i_C&u8g z!FzClq5BM8hs*d(WB4?Y!f)ULBi#n?!UguDoC;`*{fxh9j2PKO@D5yHah<`d za2bEssDfVs+*P0keubaH1(v!D-hlhY%*^P)i9?gqGlN4@1Cyf@(}yN!>PcxXsc)s3 zneiiIW7!1sib^v@g{={t$+ z%8N@g(Ih5vxLir9rNyN9@!S;V>CtLAH`?PbN@VglSFWBLOU@@1F2cz1pzxVkermFG z0aedLrK|-B)U(NRXfQl}iGoi?(|I|?3Sx7~q}hvR$-cm}`bE*|xpJveeo?&-Xptf9XHf*X;s$X2K z;hIqhly|6Juhplp9{4GwSfv{-l`F%Q(m6{M2u*Og(&R+0I2o}LjFpNf~oB=iv(Ni3ZD!+1mNE_ord_mMW!-!zHxjKyA(yH7g&g&P^qa zM!Dwtx|E<`=%%*VHpFh4TnDf^@|ZZ7H0$MA`#>N>P<4pGq=|0e>XZ@l66Dod2-E-- z?UjZP4o|9A*k8F&y4XN_B}OtULkcxF^iPcrh{6h)O)*fa43}7ib1xz<#>(){ zl)g8;P)`~QXtK;xc`4k}N?Xh{p(>TuByF610DkQhNhaO=CW(Oyci`D?=KB2AJ2C=WK!(X z@l=+5Wrfi$f@jLeb73?;$7_baiiA=Qqt}(s)=N!HIC2fmjZ#9M{kX}z7E`l>k?K@o z+uH`xv2tyb688K3PcOw;xt6F|)n+Y|dJ!ru8h)Z)o5wcC_Tr2<5Db*CoE0QCalsQ) z2-4`m!`Mj$O8FDV>LwPA1UE8-a=#2zd=!Zq}?SqYD!V z5wyz3#i19L%6foLB=vI5wPQSuj8*MZsX+(8xV1%(B*=>@=C--p6nHw+N<9$*lhA4| z`g2<-MVK?LEvFNeCz?(g&3&b2Gf7o(Ps9Pcg1X)x2=yW!EHr^o2jyCzUszV2O7a(p z;`lTsTn9p~FkU@5uu!fqag2Snp;U*x<M zqS;qY-)dpBjL_Rx_a1Yjv=B3h*9>~^q2l~$(i5pbIOU1P52I9i^y1}u6>2Nb4cuxT zaZapyDmx) E-IMCDgQ%*%Z$8>>@>`>jx_!g9(Iwe-ZpmF335zUBG(q~7T3w&XJz zu@bn+O0BD5@|@VoWHu?EPx^MajHP6{UaB^*?Gw>L)czUIc6Y|}IxNQ@ZzH<07biB` ziQe2nv}PyK%fP>Y>Mo*Bfw?D%{tQg-Ci*qd`xMbnfDNz=zXhz@OY|D>Iq+g1(LaDQ z{X`!CyY~_O7+5<1YccRKFg!@~9&q0f(d)oxz-gQs{08VAA$k{Bw;$yI{stT!C3+v& z_%zXXfzN4adL@@bSfY;1gi_1j+?$!U@6mfiHmSGk6Xd zKZQ78^Rq;61FKIX4)_q*Geh(+lCrdW9z{di0;1l5Z^F+S|wpLI-VBI3otH9rZxhkFq z_SA@e3UnTDp#|r?1dD`YPQ(U!xo8CR$H7(=Bu>-A1?5 z9dsvcpu6a9x`(>xUb>I&r;YRgJxCAHCVH42p-1WK^cZcX$7u^aL0f4XbyE-Z(stTG zJ82g^NxSJO+CzJ(kNRmJ4bUJB(J+nBej25x=>UzkT8xt2Au!CsNu*;_= z>O>;{T*N!9DCEqy8LO<>?gOief7ZmD9MQs&L+-gk!Qp|i(0j!c=5G`uY#Be+YZzsp zkJ;`$i+T}fe#>avKWxLw+NC$qHY9AyR%Evf25vM}Z7HDO5 zHzLhIF3z*(S!tnp&L+sWxfPqzxDQ&xnlv-$!mC)h({X}uL*pXC{Rl@$yA_8s7Ahqa zW+)xj1}E*;<|X#~#w0C?+lEw{)L0ZX^w_kiF^46l*^O7WlN?{d6Br5joq z;dZQAsJ5lbYx|4}w7RcUiDh@uf=h1#Rl4}Tu4n^y8JApU(ErkXo!GLaH##!vht-F? zB;E?1n<7*mauazvgnuO^=ZHT@V2|D}QI>qALgdAZRHoLk+a9JR@J!^+N91~kE>Yf1 z4vaqJ>Q$(XI~VD-1Z3hhZHw0@(hOXq#mnN76|n^u9<(h3+Lc=Cg?{Bn*s0S=og(KX z=H7w}qsHFt1)gW+c}t++x#!U0dBxC!KfH$ET{;Nv73ds8^-oJxZMC6G2;^cV#G!3g zJuKBikv32cMT|J-7gC`pS}7(z|Dew*jV6Ir9d%GDkXBMol{_QL9@FO@&P&BoKgnvP zfBf#wsRLD0r_Y?EYq3x}jeu{&AaiTXf_|o&)zcewQX6IUM$Crx}CcRGD{f}!}sod&kc_>QsMoTp~m1dM-5hYY&Db1e5YV|lx<15Kh?y1Tm zBGr#&i*a48MiMzY%{?VeRp^w)d-eQEAjrOr>^#Lut(uhPmOaNTJiHX$i1Xr?jdB2Sr5MRxLV?XM>wr`YS1T9_S%sXTuirt$d$QN;^|U$9wi-V^!C zzlaL90J$;gMj#vQwgWN>9nB6uRZzdrE0GN;5VufYKUeycXmC1;np)-T%N=IyN&pQK>yam`91Kz zCVU0lKHBoWNr&?!{ktB{zX6+$rG3=({%W{4;#7fu*NI9!L^s`VHDsJ0|JLEG;Rod# z50+=^wMK2e*|ll%;jXdKaUA?)e@w;?at3^O!M+>t_bTNREYvq!TUfb1z zrsF60$Aw!>w#t1t$6?8Wm8i<`6IWPCH>ZIhP1BP~Sl-2d%#ZWJ2U8}*&T1TH;1iVW zcM=_ZNU>H_x22x4wa0!1#yw@V>M8%N3dcpv?}e`0)fTREruqYW5$MO(Mk z7G1F!tM>^rVWCAacVKXit>RhhVO6^;<0nw!^-L1-qk5@k&Q>twO{9+-u%|y2<|IVZqMSt)*MMH{4LeDXJGG5lD%-$GPHeW&1{&coe?N;qJH~hK+jba08wqEiXTa6?W{+8<2?f#d9udm$( zuA2>)Jy8&Ox7~)_1?%T6;JL-{=yQrMi{)0sqK(iUu@sEC+fkR>49g^T`sz$Y61CqG z3g)sq!F0P|%IOI0a}}%u%->&elZ!?T_4oIsR6(-95~ep4ds6 z743grjz<{SJ7bHCta}}sGaz@yRnYr*WZfsY+?UNAvGo+pv|V7k-?90pp^{MeJMN1c z9bbCJD)Mi?FGg0z2OL*w`R#}+GRr@xxnT1)=fRSw{hnW7xnSGdLy8HfY4~njk_dlm zZ>eBEcQZIPX%2nwQDl4>b6`Z9c$itlnYbhp{?=*}c{h(}p0Yb>7nxs1jS5B+>n)Ee zCVPM{X@tL}`ovbluNxNsT7Y1X{h}qdn9lbYvx&PAB5TDK=J4-Z$m+B|7ev;ICk&Tb1929q{!c<@Y>~BnE3>g}Nnc9tj3+XRwkaNa z=|s{9e@p$kr=T`$L+WN0dtXJ~FcBn|(K90JQIBLaS63vN@V8XE?nuw*HC*1k8$oax zHH*Bl?S}2k-AU~*Ebfv}NA-#A;ddG)>~2=BXGE+MyHdWD=ob;DCk>O@NvVrcvJr*9 zr5+g5EO$#Las5hg$Vs>*zL-tzDamK=Wr(j4I^pdp&|>bxJhI2*l~=_&VeF2qFncAV zzJ(;I+FoH|x<;Sma`)OKo$$Bx4!a|oTEArDYfd8b%b2ku^W#3nr2f}cdI_&Hwt_yw zcC!Iy6L!`;XTrBH|HD-f)+Omp^qmoScTkD$<&F+BZ z3a_IIlFOJ)BAVTpV@z+kN;2VZsdlmb*uj)b-JKPA%W=^$&v?qCZsc~t6I)>pSsw46 zZ%1qemJL3so=Dl`?O{pR_85=p;fEbxdiz+uruO?`Oc$BVVbh-o$_fg9OT8qe_g3+x1Z7BDRt-M#Ei*t!em61Ha_v1}`#XT@~7qk<=ADQ&+`MrNyHjw}8D zTOGAuMDsarxy4fFc_vj@}+ie%qdrmqY|9ZY86#kZadw0Qn#g^D-EMMo^ zaHRE4ITrOTfv7jmVm_<6 zpBV{h1|Z z{W({}Yd!&z#KPZFePb4j1;e{S=faV3Q8rBSdnHkm_QznsOvZOso-BIB=OnXGNFA)BoI-Wb#77MV+%Sna1^9n~wgf2yWj1x5=&-BN$=Dd>d{ zqG!~6wusSUC0Unz)`-!fUDlYk@(stDeq$%{m))nOc8$#=^^{Bh!wyN*_K1s}do=`; z_d#H1j0LAdUFb7S$LN1&C<%qXrM8US>0Qp@b6+nCqV~sptXNm(+eph ze{0zpPh^gM!SUp5;#Rb8UUW>sm!TciE%r^!i;gk-!Kow_{+9Y@%qH|r$62rqYQIej z&II_YpO;d$%s-+e z_z!j=EMif#ilS^3MR~|Wl;;&fQ4~c{gb+_Wpgi&5hbYRje=NJpZV(SVB>SDJy7hPK zmVI}x_bDwMci(f)t*@%?sk*1msT$w+WVJQF^z?@9UG8V+t|$6>dwP0y?s54$)Mek! z9o_QhsSQMH))VdBNc7}MqNjdDG`UIA+(Sf6%`Qo`?-4Ow`iZ1tTZovBz9s1x_)Igm zN}Bj75mW0mNh`o$dSSDq6_mv^^Qxp4WK7K;NSgaG@Ii-1B~`W(F&+M;r1_7Cn2uB= z&HkQrrKSS>c1fpg#M_5raFq&;u~~nholR8iI}F}m-G^z7t{1nNteG* z#I(9!(R=s?b)e65;pdVrb`uGD3*Vsgs0-8OJ0-pN9U`XLhNN>>&@Z4DH%mG{0e#Tf z&m>jXpV!NEw9W4_);U)UoffxK_#gt)pn-P47-w47Zmc&-W1wn9&6Qf^^B6w z9ZNbRtyZ%&oOG(Sdb@vTcUoLX0^V@7Q=LpYt=fG59!u3_k2h+aq2}^(yT5x!s^s#9 zlbY7io#!zJPB&YfeqDgRoJl&fwdJI_+ChDF^L;L^himQm=J}*`Y2@NctyS&RnvLnC zRckJos$WgZmNRI(-t5H6$m)bj7;3III^jyB1!$GD5mr+j7Rs;Sd0Y}Vw4FjdJ~Rhb zJ57EtwT`jF4ExYZ(il$8*X9#bn#&uiH`|F)(a*@b?X8DHWRZbQsnB(pCYJvtBJexC|=quf`E>DbpS)N;+fM5_4(L}A0 zD7(@nX8ACnQA{4A_39bZ=^k?k6I&~*m0=6UM71-&lq?L?t1V0+8aXUeMXc64TmfHw zv}y~ukB4Ep?Zd0pdaZNGv#*SZ^;P@LMCLL1ayqG=v*#k0$5$1+E3Coku=s*|HHhR1 zSa%3@KP{&-o_70p>mJIJGGFv2w{Ui;m9&?d^#yyjk7;NbH^RERTTk3E4NO)m_39<@ zAcmR?iJ5ppl7ZnFE=;t`j6R>sD$}jzVy%u&Yjj%8x)~8+nJ5&ES9h681Oy&yrq-}$ z!aS+RAF9HHt=C_!m<4FWV(mR?jy-6cwi3*Dg zJz+a6aUq7`Li0j{Th=ly%Ml99*=DC&Pf?^NnB|KCjHX)!hcE8sNkvW@Zj&9pC=>7b z)mCG)+2TItS{w7umkUXJQi!S;VeYgLRWZVhQ3pkWnKfP6**QXw%@f674Q_>=xFQO+ zXrxg+UB~=wyyHBn;Ae)j&lT5s6IhN=u!AGZ>Vlwrq_HrQwA=80jWN4CF*fJ%N||4p zt}a;33YXKD>oADe^UVgM?~OOL)R9~_3ZJT$cm%T;*Ez#xE)pq+rvt=zeLlW@dr@>j42JS%nf)qcjEvn{-#PjJ6zJLa7wyme! zZtwM`v@M}%qEm`B1|0ru((VjaI~^uI(u|1ra!9Ibd(V{`CZ8hf=q zT9rkaw_A=dWvA$tb7lJADoUw19VxOWd~SN3849j?MvVI^NgF`|EIPE&c}!g5-LqUx z2cNCy3(|VHW7+588s;}pzfir@7O!ImJ1c^|Fu=S!LPCi#20u8l7Lh(TEjgek3N?Ia zis$dIFSGoVlO3ZW$!LAGy@dCkjATf+Qop})gtM(`qs@za?PJ)SN;03+&O3`y%@73+ zt}ZSn7z!?o;qF5m2qQrn3x~h@PmCR(9+*2e)_+okd!j1)aPu_Bb^`Z>MEf{)lmR@h zvGT;?KKQA%%ZY$;?{EdG!YFDKtBM9M)&sSZ4bM~B2g^h?eevPJxnrhdqB^P;SFb`) zL*YBJ5O_#|kt@krOoC{EqmX^DaXqd@SR+%HsG8~vyr$1gB9KW+7Y7PBNwu53FUy^StiG)@=)R6T%C~|4LzMaP6w#GK z$dQ45c82JK1)`hIBA0iL=+o24ZK2Fhs>t2o_ou*q_W<%ukoPYV^+Nv__&$w$&O_(j zgy=4`2K53)n~T{e9#)_OBAX2YSCl^mE9&kq3DT^e%EN zcS8Q17m=euTdtrkoAG-B{Lg^B4p;|(RY6@o-H);l68&x*bp@@%^;Y!TTi{*B?@gzO z-T)m1#^>m_MjQ8>K>eR3`W5KS=kfbF zUOZF#^C9Z+CY}j@-p2F#^XLDs2mbgpu!f1gI|y4Gf_?VGc1MU_*$3MK|Fr?w$tcDM z_@9Hn5qhtT!4AN`$b8&$8G7s2V4Tsv&_B_~^a*`L|3M$pKhl5GKhPiOU+JIe-|4^T z-{?Q-Bt1t*=>#38Bh*dD=vjJ({({!g1N1aKMGw&ydYFc2fbO6>=_~XN+DMydCr#1a zbQir&FVhBEPhX(>s7?*4(L62DIa;Q(v_J`+p(d@+BHc(|rsrvnW@ry>rycY-ZKJPJ zA8n;sdV+RSFZIwP^fmfA?WLRPQQAcndW;Uylk`pMqI>9GdW~+P&Gbe365U1*((QCB zRp~VSHJzd{8lh1-Ob4l-_R}~WpnY@;O`r>>X_5x%ep*9o|J)OzCvG71&JTN*N*Hub zl+1U%Qr|_1GcQ%Mvy8jyy7#f2NR7A!jhrWkg9O0Y87FTr)9 zzJg;S##nG?lCL7i%L0>zb#sAUvOQg4iU5@gvpP8&H)4oYF1nAG<@`%5p#7y|&e{|s zjvu?(LjZ>8DSHb7j~%mtK&LgaoW&AZwBB3lr)+0E9tb{YBf$-JU;~%1h-{%?Iz`IJ zlL|!QrclTyW#>e7wAc?=rUDZ|NI7<-Amyd;p1?K|H(757*hIq9W>`Tr!B#C3zd8MC z#pX4Sjogk@A#0^&fm{H~t}%0CAbyGmWwK3lZ_1f zVZeukW(N+W_MD2#?4}nkQg0TzTI|;jl*z$v2dgE=8yJQe7#T(w7#c$8WI-gyq=VHp z4Bp8|3bvZ1EgSdPcD~CN+376F=aeb>T3lF$DXz15D!~pW9ficRM#&3hjD^I!#?lH% zLrg6#yFahMPCmISPkDb~uhLO*9H`WJbToWFDyZbRQ`Z!{F&Nr!x=LNNULIJU|EZu@ z?1n&<0I$eMASe>I%?}4*SfW&?LCRB9m{P&-+mMda+G~t$84%rR@w#ZWJhY4ltMh)s zIdMEoS7f|d&9{77%`={@W@*<&b9h=7E_7z6j5U{QZS--tUSb&9E{3|r+kTm|<2CCE z%iBdqr2eqQa=l_pV9(zEWRACN@y%qTlT@DPtd#YJ#Pr(R%;@^kQpxkE z6;owyti*4~yOzqXkF9vx(>B*u!pir$rBaUXErl5mT(dKNxRmfzVZ3q0%WOr2V;b_z zrFtqf&a~$HUb+@|29F|ak6o+5u06lq76kx>y@wN!*jksLyv_0FHJT_lq? zb~^G7b8bL(pRispSY`2^YkNbwm_7Y9n9AGtTBd{Dh!!+v-ilbxYnj z7Izwb(jKkay1>Gdi$ zvP-}MUaH6Ze(HLAExzwYhKWC$Lrr~{Zolnj2)SVXu}Mlbd?Oct44U|L8~(jf{0hOLR`bo}6;yxy#lNFJ{V4_Jd-=olT}x>%^do)B zoTZc_+RKPHq@3NX1BTJ*F&ySU!vClbmxWV$>WaVCBF~0%vHzzv{59BTY8=;SP2D|D zC{4DewZfX-5w+zyQ_z~Y9rnkvrd=tYt?BR63-!&`#Qk#ptmImr_}5W`+~bagM`QOB zy;lFp(fC^+$mbvKzsP9pQC%f0{DbsDeOse(cPe6QzLH*8dgb@?we;;ns6qKQ+NW)r zPrdU;@Po}9YY#WSVBsiEkc+nWxOF1H3d(cU$9Rw}CIL{iddSg-ihfWA(l2eP!e6)4*J zzMR(g0sqDnKbQ%QK7`_yV0jewXyB>$Cchrn>sh3eo@WW$P=}kj4jd*y%)$*b=b1v$ zC()ZTA8Y~oEh)Mi&kdSjVceWCxD~kT85b?igp02`@&<*RiAI-$ygNMRA48kJppXN> z?sBjrBYq=eV-bihcV=A`CocuRFEY}2-&K4&Nw5lqM|*E%q}^)j;EZ#T3JAg%w)n_< z?~4jOFz4o1pm6*9a_o=Y^V`xI1ZUk+Eg@&*^V|1Jel4!kv*_sykHiO2hfUb)=jUO9 z22i;FdvjXObKdPXs+~^>LKn3?y)g0KF%JWIvyH6NNI}@bE$+#A&)*N+FDqP=rYZ?D z$I8C}%sUjOPJ;y@3-|7>ur=KW#IGpCH0cloEZ(mX`@K^kia4~|t5yPh z#8b<`jrk~dDO|k1N*^`7IqxivP28<;Wf;z!iY%waJvm<4JwX1NKvqfAAY5VljXc+{ z3p77R8-y)x#Sz?l7&nsxE(td>L)^=_c8)m+S+s{^7Tl!~ofLK{xIH;uAIBE%)3{bf zpcK?tYk4QV>|f_ksFZ`7GY>zC*50pi{rr9qx>Q?!Kx5nc2d+QvgBsTa?01wDLFmcx zr5`|FKO}LH#L$1sDcIPeqo^lmKE4;24-3q6dqohg_%qG%*SdhWMdGE~H-dnL+ZXYc z9$`FZcSsPjcpD?najV3v>1`Uj!^Ts%oss$XQGsb~ZV5KCC}QkQ{+L4a|C&$`xOo3Y zp6TO^?Ci}c2{STIwh7F1?@vj15pQLCipP74f^bEjWo+&CGS-iC-qxicXyNDBn`5&a zyLm;U>O_8eo<0a(xW$pT_zv!0f9F*xsIf7#Q=$4ByMn-l`#QF2>}F(V<5)?UIlcq0 z;dTj3voWn4#F$0xX2f)Fo4X4w2wvEtBA$1Tjjgx21z`(6*_db8t8l%2dqLpB?TtL$ zK80KI3O({(-J=k#ZHJ|_G8SKYLSbT^d_C+b5|7wxkW03v*qh*+3RSGn)uzl~Cl|Nj z$eZ9v8`a(P83ZqC$Fa=iQ#N+G7t20R)mzT{Hx@;I+Np!L39^(Ph($8@+30#}V-U9Z zQ_u0KI2P1z<61jz%R!D=`GAeAwosOX8k?yH1!`u;a1gktg~#6gLyYTeNDe|4ezvhF z$uMJbDAnHZ9E2^}(%Acd#78yzsY}7`iM$U-HMZQY9Rw`g$1!hmOe4DcKTAT+@pX8= z$$kepyS?=K*I?YKL3a0QNj1n>p>dY~Kw1NLyL=G1u#M-eetDP6!4x;J8$SqM+~y*! zp3vydZvP-~(N@P|W0M9qJxp-jF{cb>dRCzn%$UDSBuXd%=bl z9=)+y`Lv6w&Igu+oAd7Lf^~h1GY{tcVGyuz??$o>^Rk`p@y6?py1=L$xU^4CmV(-s zGb8iSkwl^DoKE0>dkR*fuw}*0WGwo%@DG0mt5Ecr$9CtQ$*X}rTN@gbdScC)YeG6{H(&YkKUGqn)9CGJsam3)jir91TAV=vDjKY#Z05sd~&!P z)SPk6*}PYI&b0mgV_A>g06vm>b#t%9`k@&23P;RuX0dh5$m>v>YbVof*0-S7&$;S_&IA;j-sCT@vT285Cktivqjc%7Yw@mlLbM@ zqR%>J-4`|DRRRKq+ZnU4OByxv7Z*xtac_=4upLkMvc?YmL5CoG@wP{@n=fkoYgjrL rM~<}oC4(IJGk@i@JT`;>rN%e=XLF{M;_Z&a+Wt!8I)6|j*x>&G27$NP literal 0 HcmV?d00001 diff --git a/EpdBase/dll2 - Copy/save/ex15.mif b/EpdBase/dll2 - Copy/save/ex15.mif new file mode 100644 index 0000000..2cc2b02 --- /dev/null +++ b/EpdBase/dll2 - Copy/save/ex15.mif @@ -0,0 +1,1374 @@ +/****************************************************************************** + * + * Module Name : 32 Bit Ex15 Interface DLL + * + * Module Part No. : 611/TA/40571/000 + * + * File Name : EX15.MIF + * + * File Description : Top level functions exported by the DLL. + * + * Authors: : K Ferguson + * + ****************************************************************************** + * + * This is an unpublished work, the copyright of which vests in Siemens + * plc. All rights reserved. + * + * The information contained herein is the property of Siemens plc and is + * supplied without liability for errors or omissions and no part may be + * reproduced, used or disclosed except as authorised by contract or other + * written permission. The copyright and the foregoing restriction on + * reproduction, use and disclosure extends to all the media in which this + * information may be embodied. + * + ****************************************************************************** + ****************************************************************************** + * + * MODIFICATION HISTORY + * ==================== + * + * Mod Date Inits PR Description + * --- ---- ----- --- ----------- + * AA 11/07/97 KLF - Initial version. + * AB 18/07/97 JMS - Modified to use AWP protocol. + * AC 23/07/97 JMS - Moved error source & code values from THREAD.LIF as + * they are used by external modules. + * AD 05/08/97 JMS - Added SetTimeouts() function to allow the user + * to set the comms. timeouts. + * AE 05/08/97 JMS - Clarified Discover() parameter names. + * AF 07/08/97 JMS - Seperated SetAutoCommit() from OpenDevice() + * function and added Port parameter to OpenDevice(). + * Removed now redundant TestCounts parameter from + * the ReadConfig() and WriteConfig() functions. + * AG 08/08/97 JMS - Added Connect() function. + * AH 11/08/97 JMS - Extended some of the error reporting. + * AI 12/08/97 JMS - Revamped timeouts to timeout at message/frame-level + * rather than at lower comms. levels. + * AH 15/08/97 JMS - Extended error reporting. + * Added SetDiscoveryTimeslotPeriod() function. + * AI 26/08/97 JMS - Added Transmit() and Receive() functions to allow + * lower-level calls (eg. from EXCOMM) to bypass some + * of the message layer functionality. + * AJ 27/08/97 JMS - Fixed a typo from the previous changes. + * AK 29/08/97 JMS - Added extra tests and error codes for frame buffer + * overflow and retries exceed conditions. + * AL 02/01/97 JMS - Added FlushDiscoveryCache() function to allow the + * cache to be flushed by the application. + * AM 02/10/97 JMS - Added FlushBuffers() function to allow the Tx and + * Rx buffers to be flushed by the application. + * AN 14/10/97 JMS - Corrected the type of the Hp07Dose parameter of the + * WriteAlarmDoseThresholds() function from WORD to + * DWORD. + * AO 16/10/97 JMS - Added part number, function headers, etc. following + * review. + * AP 17/10/97 JMS - Added SetRetryCounts() to allow the retry counts + * to be set by the application. + * AQ 22/10/97 JMS - Removed now redundant error codes (ERR_*). + * AR 24/10/97 JMS - Added part number for Developer's Guide doc. + * AS 02/12/97 KLF - Various corrections after testing on version 1A. + * BA 11/05/99 JMS - Changed timestamps and timeouts to use instances + * of the Timex class rather than TickCount times, as + * TickCount times will wrap-around after 49.7 days + * of continuous up-time. Changed the timeout periods + * to be long types rather than DWORD to match the + * Timex convention. + * BB 04/02/00 EMH - Added WriteDisplayControlBits and WriteDisplayEnables + * BC 30/01/01 JMP - ERR_INVALID_ALARM_SETTINGS added + * BD 30/01/01 JMP - ERR_INVALID_NUMBER_OF_ALARMS added + * BE 08/02/01 JMP - ERR_INVALID_CONFIGURATION_LENGTH added + * ERR_INVALID_DISPLAY_CONTROL added + * BF 21/02/01 JMP - ERR_SCRATCH_OFFSET_PLUS_LEN added + * BG 15/08/02 JMP - Added new ANALOG2 commands + * BH 04/10/02 JMP - Modified Analog2 interface + * BI 02/06/03 PEB - Modified for compatibility with Microsoft Embedded Tools + * & PDA version of DLL + ******************************************************************************/ + +/* + * + * IMPORTANT NOTE TO DEVELOPERS + * + * When using the DLL and not using the AutoCommit feature - that is to say + * functions are combined and processed upon a call to Commit - the following + * should be noted. + * + * 1) + * Data will not be assigned to pointers passed into functions until AFTER + * the Commit function has been called successfully. Developers should take + * care that the areas of memory that are referenced by the pointers remain + * valid until after the Commit function is called. + * + * 2) + * Functions are processed in the order that they are called. Should a call + * to the Commit function fail then the error information can be retrieved + * using the GetErrorDetails function. If the error information indicates + * that one of the combined functions failed, then the developer should assume + * that all the functions called BEFORE the one that failed, have been + * completed successfully. All the functions AFTER and INCLUDING the function + * which failed will NOT have been completed. The exception to this is Read + * functions which will NOT be completed in the conditions described above + * even if they were called BEFORE the function which failed. + * + */ + +/*============================================================================*/ + +#define SRC_NONE 0 // no error occured +#define SRC_INT 1 // internal error +#define SRC_DLL 2 // DLL logical error +#define SRC_EX15 3 // error from Ex15 + +#define ERR_NONE 0 // No error code (internal error) +#define ERR_MSG 1 // Message not expected +#define ERR_SHORT 2 // Message too short +#define ERR_LENGTH 3 // Message data length not correct +#define ERR_QUEUE 4 // Message queue overflow +#define ERR_OVER 5 // Message buffer overflow +#define ERR_PARAM 6 // Parameter error +#define ERR_MEMORY 7 // Memory allocation failed +#define ERR_NO_THREAD 8 // No thread object available +#define ERR_NO_MSG 9 // No message layer available +#define ERR_DEVICE_OPEN 10 // A device is already open +#define ERR_AWP_USER_BUFF_TOO_SMALL 11 // AWP user supplied buffer too small +#define ERR_AWP_TX_MSG_BUFF_OVERFLOW 12 // AWP message too big for buffer +#define ERR_AWP_SEQ_MISMATCH 13 // AWP sequence number mismatch +#define ERR_DISCOVERY_IN_PROGRESS 14 // Discovery in progress +#define ERR_MSG_OPEN_FAILED 15 // Message layer Open failed +#define ERR_MSG_NOT_ACTIVE 16 // Message layer not active +#define ERR_LINK_OPEN_FAILED 17 // Link layer Open failed +#define ERR_INVALID_FRAME 18 // Link layer invalid frame +#define ERR_FRAME_TX_TIMEOUT 19 // Link layer frame Tx timeout +#define ERR_OPEN_PORT_FAILED 20 // Link open device port failed +#define ERR_CLOSE_PORT_FAILED 21 // Link close device port failed +#define ERR_SET_PORT_TIMEOUTS_FAILED 22 // Link set port timeouts failed +#define ERR_FRAME_RX_BUFF_OVERFLOW 23 // Frame Rx buffer overflowed +#define ERR_FRAME_TX_RETRIES_EXCEEDED 24 // Frame Tx retry count exceeded +#define ERR_FRAME_RX_RETRIES_EXCEEDED 25 // Frame Rx retry count exceeded +#define ERR_FRAME_RX_RESULT_UNKNOWN 26 // Frame Receive() result unknown +#define ERR_INDEX_TOO_LARGE 27 // index greater than profile entries +#define ERR_INVALID_ALARM_SETTINGS 28 // This EPD may NOT have alarms 'off' +#define ERR_INVALID_NUMBER_OF_ALARMS 29 // Passed Alarm array is incorrect size. +#define ERR_INVALID_CONFIGURATION_LENGTH 30 // Passed Display Configuration is incorrect size. +#define ERR_INVALID_DISPLAY_CONTROL 31 // This EPD may NOT have Display Units Changed. +#define ERR_SCRATCH_OFFSET_PLUS_LEN 32 // This area of scratchpad may not be written. + +/*============================================================================*/ + +#ifdef __BORLANDC__ + #define EPDDLL_API _export +#else //assume microsoft + #ifdef EPDDLL_EXPORTS + #define EPDDLL_API __declspec(dllexport) + #else + #define EPDDLL_API __declspec(dllimport) + #endif +#endif + +#ifdef _WIN32_WCE //Windows CE / pocket PC +#define PDA_BUILD +#endif + +extern "C" +{ + +#ifndef PDA_BUILD //Only included on Desktop DLLs +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +EPDDLL_API void* WINAPI AllocateMemory( DWORD Size ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MemoryAllocated( void* const Address ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReleaseMemory( void* const Address ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadMemory( + + void* const Address, WORD Offset, WORD Size, DWORD* const Value ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteMemory( + + void* const Address, WORD Offset, WORD Size, DWORD* const Value ); + +#endif //PDA BUILD + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI GetErrorDetails( + + WORD* const Source, WORD* const Reason, WORD* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI GetDataMetric( WORD MetricNumber, WORD* const Metric ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI InitComms( + + WORD Port, DWORD Baud, WORD Data, WORD Parity, WORD Stop ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI DeinitComms( WORD Port ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI Abort( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetTimeouts( WORD Port, long RxByteTimeout, + long RxMessageTimeout, long TxMessageTimeout ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetDiscoveryExpirationPeriod( WORD Port, + long ExpirationPeriod ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetDiscoveryTimeslotPeriod( WORD Port, long TimeslotPeriod ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetDiscoveryTimeslotCount( WORD Port, WORD TimeslotCount ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI FlushDiscoveryCache( WORD Port ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI Discover( WORD Port, DWORD* DeviceIDs, WORD MaxDevices, + WORD* const Count ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetRetryCounts( WORD RxRetryCount, WORD TxRetryCount ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetAutoCommit( WORD AutoCommit ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI OpenDevice( WORD Port, DWORD DeviceID ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI CloseDevice( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI FlushBuffers( WORD Port ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI Connect( DWORD DeviceID ); + +#define ALLOW_LOW_LEVEL +#ifdef ALLOW_LOW_LEVEL +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI Transmit( BYTE* TxBuffer, DWORD TxLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI Receive( BYTE* RxBuffer, DWORD* RxLength ); +#endif /* ALLOW_LOW_LEVEL */ + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI Commit( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadCommsStats( + + WORD* const XBOFSeen, + WORD* const TotalTxFrames, + WORD* const TotalRxFrames, + WORD* const GoodRxFrames, + WORD* const BadRxFrames, + WORD* const TotalWakeups, + WORD* const RxErrors ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI EpdOn( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI EpdOff( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadEpdID( + + DWORD* const EpdID, + WORD* const HardVersion, + WORD* const SoftVersion, + WORD* const FunctionFlags ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadEpdStatus( + + DWORD* const EpdClock, + DWORD* const RealTime, + WORD* const IssueCount, + DWORD* const OffTime, + WORD* const OperatingStatus, + WORD* const ErrorStatus, + WORD* const AlarmsStatus, + WORD* const OtherAlarms, + WORD* const EEPROMBadSectors ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI TestDetectors( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadWearerID( BYTE* const WearerID, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadWearerName( BYTE* const WearerName, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadWearer( + + BYTE* const WearerID, WORD IDLength, + BYTE* const WearerName, WORD NameLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI IssueEpd( BYTE* const WearerID, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI DeIssueEpd( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteWearerName( BYTE* const WearerName, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI BaseLineCounts( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetFailFlag( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearFailFlag( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearLatchedAlarms( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearFaultFlags( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadDosesQuality( + + DWORD* const Hp10Dose, DWORD* const Hp07Dose, + DWORD* const Hp10Total, DWORD* const Hp07Total, + WORD* const Knocks, WORD* const Resets, WORD* const QualityData ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadCounts( + + DWORD* const D1, DWORD* const D2, + DWORD* const D3, DWORD* const D4, DWORD* const EpdClock ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadPeaks( + + DWORD* const Hp10Peak, DWORD* const Hp07Peak, + DWORD* const Hp10Time, DWORD* const Hp07Time ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadRates( DWORD* const Hp10Rate, DWORD* const Hp07Rate ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadBaseCounts( + + DWORD* const D1, DWORD* const D2, + DWORD* const D3, DWORD* const D4, DWORD* const EpdClock ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadCalibrationData( + + WORD* const K1, WORD* const K2, WORD* const K3, + WORD* const K4, WORD* const K5, WORD* const K6, + WORD* const SG, WORD* const BC, WORD* const FB, WORD* const HG ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadAlarmDoseThresholds( + + DWORD* const Hp10Dose1, DWORD* const Hp10Dose2, DWORD* const Hp07Dose ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadAlarmRateThresholds( + + DWORD* const Hp10Rate1On, DWORD* const Hp10Rate2On, DWORD* const Hp07RateOn, + DWORD* const Hp10Rate1Off, DWORD* const Hp10Rate2Off, DWORD* const Hp07RateOff ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI DisplayFaultCode( WORD FaultCode ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSReadData( + + DWORD* const Hp10Dose, DWORD* const Hp07Dose, + WORD* const Knocks, WORD* const Resets, WORD* const QualityData, + DWORD* const Hp10Peak, DWORD* const Hp07Peak, + DWORD* const Hp10Time, DWORD* const Hp07Time ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadProfileControl( + + WORD* const Interval, DWORD* const TimeToNext ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadDoseProfile( WORD* const ProfileEntries ); + +WORD EPDDLL_API WINAPI ReadDoseProfileSince( + + DWORD EpdClock, WORD* const ProfileEntries ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadDoseProfileCache( + + WORD Index, + DWORD* const EpdClock, WORD* const Interval, + DWORD* const Hp10Dose, DWORD* const Hp07Dose ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadConfig( + + WORD* const CountDownTime, + DWORD* const ReturnTime, + WORD* const ChirpRate, + WORD* const TeleBaudSetting, + WORD* const SelfTestInterval, + WORD* const BatteryLoadTestInt, + WORD* const GeneralControl, + WORD* const CommsTimeout, + WORD* const InhibitTimeout, + WORD* const MinTxInterval, + WORD* const MaxTxIntervals, + WORD* const RandomiseWindow, + WORD* const DoseIncThresh ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadAlarmConfig( + + BYTE* const Config, WORD ConfigLength, + BYTE* const Duration, WORD DurationLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadDisplayConfig( + + WORD* const Control, + WORD* const LongSwitchTime, + WORD* const DoubleClickTime, + WORD* const DisplayDefaultTime, + WORD* const Default, + BYTE* const Config, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadErrorStore( + + DWORD* const ErrorTime, WORD TimeLength, + BYTE* const ErrorCode, WORD CodeLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadSpecialWriteTimes( DWORD* const WriteTimes, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadSpecialDoseStore( + + WORD Index, WORD Count, + DWORD* const Hp10Dose, WORD Hp10Length, + DWORD* const Hp07Dose, WORD Hp07Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearErrorStore( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearDose( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteDose( DWORD Hp10Dose, DWORD Hp07Dose ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteCountdownTimer( WORD wCountDownTime, WORD wStartNow ); + +/*----------------------------------------------------------------------------* + * + * This function (WriteCountdownTimer) was written after the Developers Guide + * to the Ex15 Interface DLL (611/HB/40571/000) + * The first parameter wdCountDownTime is the count down time in seconds + * The second param byStartNow is a boolean to start the timer now + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearTotalDose( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteTotalDose( DWORD Hp10Total, DWORD Hp07Total ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearPeakRates( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteReturnForReadTime( DWORD ReturnTime ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteAlarmDoseThresholds( + + DWORD Hp10Dose1, DWORD Hp10Dose2, DWORD Hp07Dose ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteAlarmRateThresholds( + + DWORD Hp10Rate1On, DWORD Hp10Rate2On, DWORD Hp07RateOn, + DWORD Hp10Rate1Off, DWORD Hp10Rate2Off, DWORD Hp07RateOff ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteAlarmConfig( + + BYTE* const Config, WORD ConfigLength, + BYTE* const Duration, WORD DurationLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteDisplayConfig( + WORD Control, + WORD LongSwitchTime, + WORD DoubleClickTime, + WORD DisplayDefaultTime, + WORD Default, BYTE* const Config, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteDisplayControlBits( WORD DisplayControlBits ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + + WORD EPDDLL_API WINAPI WriteDisplayEnables( + WORD Default, BYTE* const Config, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + + WORD EPDDLL_API WINAPI WriteConfig( + + WORD CountDownTime, + DWORD ReturnTime, + WORD ChirpRate, + WORD TeleBaudSetting, + WORD SelfTestInterval, + WORD BatteryLoadTestInt, + WORD GeneralControl, + WORD CommsTimeout, + WORD InhibitTimeout, + WORD MinTxInterval, + WORD MaxTxIntervals, + WORD RandomiseWindow, + WORD DoseIncThresh ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteProfileControl( WORD Interval, DWORD TimeToNext ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteSpecialWriteTimes( + + DWORD* const WriteTimes, WORD Time ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI EndSession( WORD AlarmCtrl, WORD Duration ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadScratchPad( + + WORD Offset, WORD Length, void* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteScratchPad( + + WORD Offset, WORD Length, void* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteChirpRate( WORD ChirpRate ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadRAM( + + WORD Offset, WORD Length , void* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadASIC( WORD Register, WORD* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadDirectEEPROM( + + WORD Offset, WORD Length, void* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSLogin( DWORD Password ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSClearWearer( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSReadWearer( + + BYTE* const WearerID, WORD IDLength, + BYTE* const WearerName, WORD NameLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSIssue( + + BYTE* const WearerID, WORD IDLength, + BYTE* const WearerName, WORD NameLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSDeIssue( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSClearData( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSWritePassword( DWORD Password ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSSetOffEnable( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSClearOffEnable( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRLogin( DWORD Password ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWriteCalFactors( + + WORD K1, WORD K2, WORD K3, WORD K4, WORD K5, WORD K6 ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWriteDetectorThresholds( + + WORD SG, WORD BC, WORD FB, WORD HG ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWriteRAM( + + WORD Offset, WORD Length, void* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWriteDirectEEPROM( + + WORD Offset, WORD Length, void* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRResetEpd( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRFormatEEPROM( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWriteASIC( WORD Register, WORD Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRSetAlwaysCount( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRClearAlwaysCount( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRSetGolden( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRClearGolden( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWriteEpdID( + + DWORD EpdID, + WORD HardVersion, + WORD SoftVersion, + WORD FunctionFlags ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWritePassword( DWORD Password ); + + + +//additional commands for ANALOG2 +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadA2Config( + BYTE* const byADC_LA, + BYTE* const byADC_LL, + BYTE* const byADC_SUPPLY, + BYTE* const byADC_BAT_TYPE, + WORD* const wOffDisplay, + BYTE* const byConfig7, + BYTE* const byConfig8); +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadA2ConfigStatus( + BYTE* const byBatADC, + BYTE* const bySupplyADC, + BYTE* const byStatus3, + BYTE* const byStatus4); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteA2Config( + BYTE byADC_LA, + BYTE byADC_LL, + BYTE byADC_SUPPLY, + BYTE byADC_BAT_TYPE, + WORD wOffDisplay, + BYTE byConfig7, + BYTE byConfig8 ); + + /*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI TestBattery( void ); + + + +} diff --git a/EpdBase/dll2/reader2.h b/EpdBase/dll2/reader2.h new file mode 100644 index 0000000..2cc2b02 --- /dev/null +++ b/EpdBase/dll2/reader2.h @@ -0,0 +1,1374 @@ +/****************************************************************************** + * + * Module Name : 32 Bit Ex15 Interface DLL + * + * Module Part No. : 611/TA/40571/000 + * + * File Name : EX15.MIF + * + * File Description : Top level functions exported by the DLL. + * + * Authors: : K Ferguson + * + ****************************************************************************** + * + * This is an unpublished work, the copyright of which vests in Siemens + * plc. All rights reserved. + * + * The information contained herein is the property of Siemens plc and is + * supplied without liability for errors or omissions and no part may be + * reproduced, used or disclosed except as authorised by contract or other + * written permission. The copyright and the foregoing restriction on + * reproduction, use and disclosure extends to all the media in which this + * information may be embodied. + * + ****************************************************************************** + ****************************************************************************** + * + * MODIFICATION HISTORY + * ==================== + * + * Mod Date Inits PR Description + * --- ---- ----- --- ----------- + * AA 11/07/97 KLF - Initial version. + * AB 18/07/97 JMS - Modified to use AWP protocol. + * AC 23/07/97 JMS - Moved error source & code values from THREAD.LIF as + * they are used by external modules. + * AD 05/08/97 JMS - Added SetTimeouts() function to allow the user + * to set the comms. timeouts. + * AE 05/08/97 JMS - Clarified Discover() parameter names. + * AF 07/08/97 JMS - Seperated SetAutoCommit() from OpenDevice() + * function and added Port parameter to OpenDevice(). + * Removed now redundant TestCounts parameter from + * the ReadConfig() and WriteConfig() functions. + * AG 08/08/97 JMS - Added Connect() function. + * AH 11/08/97 JMS - Extended some of the error reporting. + * AI 12/08/97 JMS - Revamped timeouts to timeout at message/frame-level + * rather than at lower comms. levels. + * AH 15/08/97 JMS - Extended error reporting. + * Added SetDiscoveryTimeslotPeriod() function. + * AI 26/08/97 JMS - Added Transmit() and Receive() functions to allow + * lower-level calls (eg. from EXCOMM) to bypass some + * of the message layer functionality. + * AJ 27/08/97 JMS - Fixed a typo from the previous changes. + * AK 29/08/97 JMS - Added extra tests and error codes for frame buffer + * overflow and retries exceed conditions. + * AL 02/01/97 JMS - Added FlushDiscoveryCache() function to allow the + * cache to be flushed by the application. + * AM 02/10/97 JMS - Added FlushBuffers() function to allow the Tx and + * Rx buffers to be flushed by the application. + * AN 14/10/97 JMS - Corrected the type of the Hp07Dose parameter of the + * WriteAlarmDoseThresholds() function from WORD to + * DWORD. + * AO 16/10/97 JMS - Added part number, function headers, etc. following + * review. + * AP 17/10/97 JMS - Added SetRetryCounts() to allow the retry counts + * to be set by the application. + * AQ 22/10/97 JMS - Removed now redundant error codes (ERR_*). + * AR 24/10/97 JMS - Added part number for Developer's Guide doc. + * AS 02/12/97 KLF - Various corrections after testing on version 1A. + * BA 11/05/99 JMS - Changed timestamps and timeouts to use instances + * of the Timex class rather than TickCount times, as + * TickCount times will wrap-around after 49.7 days + * of continuous up-time. Changed the timeout periods + * to be long types rather than DWORD to match the + * Timex convention. + * BB 04/02/00 EMH - Added WriteDisplayControlBits and WriteDisplayEnables + * BC 30/01/01 JMP - ERR_INVALID_ALARM_SETTINGS added + * BD 30/01/01 JMP - ERR_INVALID_NUMBER_OF_ALARMS added + * BE 08/02/01 JMP - ERR_INVALID_CONFIGURATION_LENGTH added + * ERR_INVALID_DISPLAY_CONTROL added + * BF 21/02/01 JMP - ERR_SCRATCH_OFFSET_PLUS_LEN added + * BG 15/08/02 JMP - Added new ANALOG2 commands + * BH 04/10/02 JMP - Modified Analog2 interface + * BI 02/06/03 PEB - Modified for compatibility with Microsoft Embedded Tools + * & PDA version of DLL + ******************************************************************************/ + +/* + * + * IMPORTANT NOTE TO DEVELOPERS + * + * When using the DLL and not using the AutoCommit feature - that is to say + * functions are combined and processed upon a call to Commit - the following + * should be noted. + * + * 1) + * Data will not be assigned to pointers passed into functions until AFTER + * the Commit function has been called successfully. Developers should take + * care that the areas of memory that are referenced by the pointers remain + * valid until after the Commit function is called. + * + * 2) + * Functions are processed in the order that they are called. Should a call + * to the Commit function fail then the error information can be retrieved + * using the GetErrorDetails function. If the error information indicates + * that one of the combined functions failed, then the developer should assume + * that all the functions called BEFORE the one that failed, have been + * completed successfully. All the functions AFTER and INCLUDING the function + * which failed will NOT have been completed. The exception to this is Read + * functions which will NOT be completed in the conditions described above + * even if they were called BEFORE the function which failed. + * + */ + +/*============================================================================*/ + +#define SRC_NONE 0 // no error occured +#define SRC_INT 1 // internal error +#define SRC_DLL 2 // DLL logical error +#define SRC_EX15 3 // error from Ex15 + +#define ERR_NONE 0 // No error code (internal error) +#define ERR_MSG 1 // Message not expected +#define ERR_SHORT 2 // Message too short +#define ERR_LENGTH 3 // Message data length not correct +#define ERR_QUEUE 4 // Message queue overflow +#define ERR_OVER 5 // Message buffer overflow +#define ERR_PARAM 6 // Parameter error +#define ERR_MEMORY 7 // Memory allocation failed +#define ERR_NO_THREAD 8 // No thread object available +#define ERR_NO_MSG 9 // No message layer available +#define ERR_DEVICE_OPEN 10 // A device is already open +#define ERR_AWP_USER_BUFF_TOO_SMALL 11 // AWP user supplied buffer too small +#define ERR_AWP_TX_MSG_BUFF_OVERFLOW 12 // AWP message too big for buffer +#define ERR_AWP_SEQ_MISMATCH 13 // AWP sequence number mismatch +#define ERR_DISCOVERY_IN_PROGRESS 14 // Discovery in progress +#define ERR_MSG_OPEN_FAILED 15 // Message layer Open failed +#define ERR_MSG_NOT_ACTIVE 16 // Message layer not active +#define ERR_LINK_OPEN_FAILED 17 // Link layer Open failed +#define ERR_INVALID_FRAME 18 // Link layer invalid frame +#define ERR_FRAME_TX_TIMEOUT 19 // Link layer frame Tx timeout +#define ERR_OPEN_PORT_FAILED 20 // Link open device port failed +#define ERR_CLOSE_PORT_FAILED 21 // Link close device port failed +#define ERR_SET_PORT_TIMEOUTS_FAILED 22 // Link set port timeouts failed +#define ERR_FRAME_RX_BUFF_OVERFLOW 23 // Frame Rx buffer overflowed +#define ERR_FRAME_TX_RETRIES_EXCEEDED 24 // Frame Tx retry count exceeded +#define ERR_FRAME_RX_RETRIES_EXCEEDED 25 // Frame Rx retry count exceeded +#define ERR_FRAME_RX_RESULT_UNKNOWN 26 // Frame Receive() result unknown +#define ERR_INDEX_TOO_LARGE 27 // index greater than profile entries +#define ERR_INVALID_ALARM_SETTINGS 28 // This EPD may NOT have alarms 'off' +#define ERR_INVALID_NUMBER_OF_ALARMS 29 // Passed Alarm array is incorrect size. +#define ERR_INVALID_CONFIGURATION_LENGTH 30 // Passed Display Configuration is incorrect size. +#define ERR_INVALID_DISPLAY_CONTROL 31 // This EPD may NOT have Display Units Changed. +#define ERR_SCRATCH_OFFSET_PLUS_LEN 32 // This area of scratchpad may not be written. + +/*============================================================================*/ + +#ifdef __BORLANDC__ + #define EPDDLL_API _export +#else //assume microsoft + #ifdef EPDDLL_EXPORTS + #define EPDDLL_API __declspec(dllexport) + #else + #define EPDDLL_API __declspec(dllimport) + #endif +#endif + +#ifdef _WIN32_WCE //Windows CE / pocket PC +#define PDA_BUILD +#endif + +extern "C" +{ + +#ifndef PDA_BUILD //Only included on Desktop DLLs +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +EPDDLL_API void* WINAPI AllocateMemory( DWORD Size ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MemoryAllocated( void* const Address ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReleaseMemory( void* const Address ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadMemory( + + void* const Address, WORD Offset, WORD Size, DWORD* const Value ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteMemory( + + void* const Address, WORD Offset, WORD Size, DWORD* const Value ); + +#endif //PDA BUILD + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI GetErrorDetails( + + WORD* const Source, WORD* const Reason, WORD* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI GetDataMetric( WORD MetricNumber, WORD* const Metric ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI InitComms( + + WORD Port, DWORD Baud, WORD Data, WORD Parity, WORD Stop ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI DeinitComms( WORD Port ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI Abort( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetTimeouts( WORD Port, long RxByteTimeout, + long RxMessageTimeout, long TxMessageTimeout ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetDiscoveryExpirationPeriod( WORD Port, + long ExpirationPeriod ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetDiscoveryTimeslotPeriod( WORD Port, long TimeslotPeriod ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetDiscoveryTimeslotCount( WORD Port, WORD TimeslotCount ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI FlushDiscoveryCache( WORD Port ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI Discover( WORD Port, DWORD* DeviceIDs, WORD MaxDevices, + WORD* const Count ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetRetryCounts( WORD RxRetryCount, WORD TxRetryCount ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetAutoCommit( WORD AutoCommit ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI OpenDevice( WORD Port, DWORD DeviceID ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI CloseDevice( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI FlushBuffers( WORD Port ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI Connect( DWORD DeviceID ); + +#define ALLOW_LOW_LEVEL +#ifdef ALLOW_LOW_LEVEL +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI Transmit( BYTE* TxBuffer, DWORD TxLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI Receive( BYTE* RxBuffer, DWORD* RxLength ); +#endif /* ALLOW_LOW_LEVEL */ + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI Commit( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadCommsStats( + + WORD* const XBOFSeen, + WORD* const TotalTxFrames, + WORD* const TotalRxFrames, + WORD* const GoodRxFrames, + WORD* const BadRxFrames, + WORD* const TotalWakeups, + WORD* const RxErrors ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI EpdOn( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI EpdOff( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadEpdID( + + DWORD* const EpdID, + WORD* const HardVersion, + WORD* const SoftVersion, + WORD* const FunctionFlags ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadEpdStatus( + + DWORD* const EpdClock, + DWORD* const RealTime, + WORD* const IssueCount, + DWORD* const OffTime, + WORD* const OperatingStatus, + WORD* const ErrorStatus, + WORD* const AlarmsStatus, + WORD* const OtherAlarms, + WORD* const EEPROMBadSectors ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI TestDetectors( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadWearerID( BYTE* const WearerID, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadWearerName( BYTE* const WearerName, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadWearer( + + BYTE* const WearerID, WORD IDLength, + BYTE* const WearerName, WORD NameLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI IssueEpd( BYTE* const WearerID, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI DeIssueEpd( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteWearerName( BYTE* const WearerName, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI BaseLineCounts( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetFailFlag( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearFailFlag( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearLatchedAlarms( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearFaultFlags( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadDosesQuality( + + DWORD* const Hp10Dose, DWORD* const Hp07Dose, + DWORD* const Hp10Total, DWORD* const Hp07Total, + WORD* const Knocks, WORD* const Resets, WORD* const QualityData ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadCounts( + + DWORD* const D1, DWORD* const D2, + DWORD* const D3, DWORD* const D4, DWORD* const EpdClock ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadPeaks( + + DWORD* const Hp10Peak, DWORD* const Hp07Peak, + DWORD* const Hp10Time, DWORD* const Hp07Time ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadRates( DWORD* const Hp10Rate, DWORD* const Hp07Rate ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadBaseCounts( + + DWORD* const D1, DWORD* const D2, + DWORD* const D3, DWORD* const D4, DWORD* const EpdClock ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadCalibrationData( + + WORD* const K1, WORD* const K2, WORD* const K3, + WORD* const K4, WORD* const K5, WORD* const K6, + WORD* const SG, WORD* const BC, WORD* const FB, WORD* const HG ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadAlarmDoseThresholds( + + DWORD* const Hp10Dose1, DWORD* const Hp10Dose2, DWORD* const Hp07Dose ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadAlarmRateThresholds( + + DWORD* const Hp10Rate1On, DWORD* const Hp10Rate2On, DWORD* const Hp07RateOn, + DWORD* const Hp10Rate1Off, DWORD* const Hp10Rate2Off, DWORD* const Hp07RateOff ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI DisplayFaultCode( WORD FaultCode ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSReadData( + + DWORD* const Hp10Dose, DWORD* const Hp07Dose, + WORD* const Knocks, WORD* const Resets, WORD* const QualityData, + DWORD* const Hp10Peak, DWORD* const Hp07Peak, + DWORD* const Hp10Time, DWORD* const Hp07Time ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadProfileControl( + + WORD* const Interval, DWORD* const TimeToNext ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadDoseProfile( WORD* const ProfileEntries ); + +WORD EPDDLL_API WINAPI ReadDoseProfileSince( + + DWORD EpdClock, WORD* const ProfileEntries ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadDoseProfileCache( + + WORD Index, + DWORD* const EpdClock, WORD* const Interval, + DWORD* const Hp10Dose, DWORD* const Hp07Dose ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadConfig( + + WORD* const CountDownTime, + DWORD* const ReturnTime, + WORD* const ChirpRate, + WORD* const TeleBaudSetting, + WORD* const SelfTestInterval, + WORD* const BatteryLoadTestInt, + WORD* const GeneralControl, + WORD* const CommsTimeout, + WORD* const InhibitTimeout, + WORD* const MinTxInterval, + WORD* const MaxTxIntervals, + WORD* const RandomiseWindow, + WORD* const DoseIncThresh ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadAlarmConfig( + + BYTE* const Config, WORD ConfigLength, + BYTE* const Duration, WORD DurationLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadDisplayConfig( + + WORD* const Control, + WORD* const LongSwitchTime, + WORD* const DoubleClickTime, + WORD* const DisplayDefaultTime, + WORD* const Default, + BYTE* const Config, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadErrorStore( + + DWORD* const ErrorTime, WORD TimeLength, + BYTE* const ErrorCode, WORD CodeLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadSpecialWriteTimes( DWORD* const WriteTimes, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadSpecialDoseStore( + + WORD Index, WORD Count, + DWORD* const Hp10Dose, WORD Hp10Length, + DWORD* const Hp07Dose, WORD Hp07Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearErrorStore( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearDose( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteDose( DWORD Hp10Dose, DWORD Hp07Dose ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteCountdownTimer( WORD wCountDownTime, WORD wStartNow ); + +/*----------------------------------------------------------------------------* + * + * This function (WriteCountdownTimer) was written after the Developers Guide + * to the Ex15 Interface DLL (611/HB/40571/000) + * The first parameter wdCountDownTime is the count down time in seconds + * The second param byStartNow is a boolean to start the timer now + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearTotalDose( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteTotalDose( DWORD Hp10Total, DWORD Hp07Total ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearPeakRates( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteReturnForReadTime( DWORD ReturnTime ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteAlarmDoseThresholds( + + DWORD Hp10Dose1, DWORD Hp10Dose2, DWORD Hp07Dose ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteAlarmRateThresholds( + + DWORD Hp10Rate1On, DWORD Hp10Rate2On, DWORD Hp07RateOn, + DWORD Hp10Rate1Off, DWORD Hp10Rate2Off, DWORD Hp07RateOff ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteAlarmConfig( + + BYTE* const Config, WORD ConfigLength, + BYTE* const Duration, WORD DurationLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteDisplayConfig( + WORD Control, + WORD LongSwitchTime, + WORD DoubleClickTime, + WORD DisplayDefaultTime, + WORD Default, BYTE* const Config, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteDisplayControlBits( WORD DisplayControlBits ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + + WORD EPDDLL_API WINAPI WriteDisplayEnables( + WORD Default, BYTE* const Config, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + + WORD EPDDLL_API WINAPI WriteConfig( + + WORD CountDownTime, + DWORD ReturnTime, + WORD ChirpRate, + WORD TeleBaudSetting, + WORD SelfTestInterval, + WORD BatteryLoadTestInt, + WORD GeneralControl, + WORD CommsTimeout, + WORD InhibitTimeout, + WORD MinTxInterval, + WORD MaxTxIntervals, + WORD RandomiseWindow, + WORD DoseIncThresh ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteProfileControl( WORD Interval, DWORD TimeToNext ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteSpecialWriteTimes( + + DWORD* const WriteTimes, WORD Time ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI EndSession( WORD AlarmCtrl, WORD Duration ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadScratchPad( + + WORD Offset, WORD Length, void* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteScratchPad( + + WORD Offset, WORD Length, void* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteChirpRate( WORD ChirpRate ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadRAM( + + WORD Offset, WORD Length , void* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadASIC( WORD Register, WORD* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadDirectEEPROM( + + WORD Offset, WORD Length, void* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSLogin( DWORD Password ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSClearWearer( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSReadWearer( + + BYTE* const WearerID, WORD IDLength, + BYTE* const WearerName, WORD NameLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSIssue( + + BYTE* const WearerID, WORD IDLength, + BYTE* const WearerName, WORD NameLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSDeIssue( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSClearData( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSWritePassword( DWORD Password ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSSetOffEnable( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSClearOffEnable( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRLogin( DWORD Password ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWriteCalFactors( + + WORD K1, WORD K2, WORD K3, WORD K4, WORD K5, WORD K6 ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWriteDetectorThresholds( + + WORD SG, WORD BC, WORD FB, WORD HG ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWriteRAM( + + WORD Offset, WORD Length, void* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWriteDirectEEPROM( + + WORD Offset, WORD Length, void* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRResetEpd( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRFormatEEPROM( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWriteASIC( WORD Register, WORD Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRSetAlwaysCount( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRClearAlwaysCount( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRSetGolden( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRClearGolden( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWriteEpdID( + + DWORD EpdID, + WORD HardVersion, + WORD SoftVersion, + WORD FunctionFlags ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWritePassword( DWORD Password ); + + + +//additional commands for ANALOG2 +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadA2Config( + BYTE* const byADC_LA, + BYTE* const byADC_LL, + BYTE* const byADC_SUPPLY, + BYTE* const byADC_BAT_TYPE, + WORD* const wOffDisplay, + BYTE* const byConfig7, + BYTE* const byConfig8); +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadA2ConfigStatus( + BYTE* const byBatADC, + BYTE* const bySupplyADC, + BYTE* const byStatus3, + BYTE* const byStatus4); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteA2Config( + BYTE byADC_LA, + BYTE byADC_LL, + BYTE byADC_SUPPLY, + BYTE byADC_BAT_TYPE, + WORD wOffDisplay, + BYTE byConfig7, + BYTE byConfig8 ); + + /*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI TestBattery( void ); + + + +} diff --git a/EpdBaseClr/dll2/IR_READER_MS_DLL.dll b/EpdBase/dll2/test/IR_READER_MS_DLL.dll similarity index 100% rename from EpdBaseClr/dll2/IR_READER_MS_DLL.dll rename to EpdBase/dll2/test/IR_READER_MS_DLL.dll diff --git a/EpdBase/dll2/test/Reader2.dll b/EpdBase/dll2/test/Reader2.dll new file mode 100644 index 0000000000000000000000000000000000000000..3edbef2b10345fb3dc6fabd2da8d9af389024800 GIT binary patch literal 158720 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

!01PWpgPN|_^I0!cYUX#UM0$MYZ`6m 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 K3H%R~!2bjNovdI0 literal 0 HcmV?d00001 diff --git a/EpdBase/dll2/test/Reader2.exp b/EpdBase/dll2/test/Reader2.exp new file mode 100644 index 0000000000000000000000000000000000000000..a0a0dc001e753a2de552e343db19d267c25bd572 GIT binary patch literal 17162 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 B*9rgt literal 0 HcmV?d00001 diff --git a/EpdBase/dll2/test/Reader2.lib1 b/EpdBase/dll2/test/Reader2.lib1 new file mode 100644 index 0000000000000000000000000000000000000000..3e4941f33f903d4f2b5240eb1829f21b00219429 GIT binary patch literal 31998 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 literal 0 HcmV?d00001 diff --git a/EpdBase/dll2/test/ex15.mif b/EpdBase/dll2/test/ex15.mif new file mode 100644 index 0000000..2cc2b02 --- /dev/null +++ b/EpdBase/dll2/test/ex15.mif @@ -0,0 +1,1374 @@ +/****************************************************************************** + * + * Module Name : 32 Bit Ex15 Interface DLL + * + * Module Part No. : 611/TA/40571/000 + * + * File Name : EX15.MIF + * + * File Description : Top level functions exported by the DLL. + * + * Authors: : K Ferguson + * + ****************************************************************************** + * + * This is an unpublished work, the copyright of which vests in Siemens + * plc. All rights reserved. + * + * The information contained herein is the property of Siemens plc and is + * supplied without liability for errors or omissions and no part may be + * reproduced, used or disclosed except as authorised by contract or other + * written permission. The copyright and the foregoing restriction on + * reproduction, use and disclosure extends to all the media in which this + * information may be embodied. + * + ****************************************************************************** + ****************************************************************************** + * + * MODIFICATION HISTORY + * ==================== + * + * Mod Date Inits PR Description + * --- ---- ----- --- ----------- + * AA 11/07/97 KLF - Initial version. + * AB 18/07/97 JMS - Modified to use AWP protocol. + * AC 23/07/97 JMS - Moved error source & code values from THREAD.LIF as + * they are used by external modules. + * AD 05/08/97 JMS - Added SetTimeouts() function to allow the user + * to set the comms. timeouts. + * AE 05/08/97 JMS - Clarified Discover() parameter names. + * AF 07/08/97 JMS - Seperated SetAutoCommit() from OpenDevice() + * function and added Port parameter to OpenDevice(). + * Removed now redundant TestCounts parameter from + * the ReadConfig() and WriteConfig() functions. + * AG 08/08/97 JMS - Added Connect() function. + * AH 11/08/97 JMS - Extended some of the error reporting. + * AI 12/08/97 JMS - Revamped timeouts to timeout at message/frame-level + * rather than at lower comms. levels. + * AH 15/08/97 JMS - Extended error reporting. + * Added SetDiscoveryTimeslotPeriod() function. + * AI 26/08/97 JMS - Added Transmit() and Receive() functions to allow + * lower-level calls (eg. from EXCOMM) to bypass some + * of the message layer functionality. + * AJ 27/08/97 JMS - Fixed a typo from the previous changes. + * AK 29/08/97 JMS - Added extra tests and error codes for frame buffer + * overflow and retries exceed conditions. + * AL 02/01/97 JMS - Added FlushDiscoveryCache() function to allow the + * cache to be flushed by the application. + * AM 02/10/97 JMS - Added FlushBuffers() function to allow the Tx and + * Rx buffers to be flushed by the application. + * AN 14/10/97 JMS - Corrected the type of the Hp07Dose parameter of the + * WriteAlarmDoseThresholds() function from WORD to + * DWORD. + * AO 16/10/97 JMS - Added part number, function headers, etc. following + * review. + * AP 17/10/97 JMS - Added SetRetryCounts() to allow the retry counts + * to be set by the application. + * AQ 22/10/97 JMS - Removed now redundant error codes (ERR_*). + * AR 24/10/97 JMS - Added part number for Developer's Guide doc. + * AS 02/12/97 KLF - Various corrections after testing on version 1A. + * BA 11/05/99 JMS - Changed timestamps and timeouts to use instances + * of the Timex class rather than TickCount times, as + * TickCount times will wrap-around after 49.7 days + * of continuous up-time. Changed the timeout periods + * to be long types rather than DWORD to match the + * Timex convention. + * BB 04/02/00 EMH - Added WriteDisplayControlBits and WriteDisplayEnables + * BC 30/01/01 JMP - ERR_INVALID_ALARM_SETTINGS added + * BD 30/01/01 JMP - ERR_INVALID_NUMBER_OF_ALARMS added + * BE 08/02/01 JMP - ERR_INVALID_CONFIGURATION_LENGTH added + * ERR_INVALID_DISPLAY_CONTROL added + * BF 21/02/01 JMP - ERR_SCRATCH_OFFSET_PLUS_LEN added + * BG 15/08/02 JMP - Added new ANALOG2 commands + * BH 04/10/02 JMP - Modified Analog2 interface + * BI 02/06/03 PEB - Modified for compatibility with Microsoft Embedded Tools + * & PDA version of DLL + ******************************************************************************/ + +/* + * + * IMPORTANT NOTE TO DEVELOPERS + * + * When using the DLL and not using the AutoCommit feature - that is to say + * functions are combined and processed upon a call to Commit - the following + * should be noted. + * + * 1) + * Data will not be assigned to pointers passed into functions until AFTER + * the Commit function has been called successfully. Developers should take + * care that the areas of memory that are referenced by the pointers remain + * valid until after the Commit function is called. + * + * 2) + * Functions are processed in the order that they are called. Should a call + * to the Commit function fail then the error information can be retrieved + * using the GetErrorDetails function. If the error information indicates + * that one of the combined functions failed, then the developer should assume + * that all the functions called BEFORE the one that failed, have been + * completed successfully. All the functions AFTER and INCLUDING the function + * which failed will NOT have been completed. The exception to this is Read + * functions which will NOT be completed in the conditions described above + * even if they were called BEFORE the function which failed. + * + */ + +/*============================================================================*/ + +#define SRC_NONE 0 // no error occured +#define SRC_INT 1 // internal error +#define SRC_DLL 2 // DLL logical error +#define SRC_EX15 3 // error from Ex15 + +#define ERR_NONE 0 // No error code (internal error) +#define ERR_MSG 1 // Message not expected +#define ERR_SHORT 2 // Message too short +#define ERR_LENGTH 3 // Message data length not correct +#define ERR_QUEUE 4 // Message queue overflow +#define ERR_OVER 5 // Message buffer overflow +#define ERR_PARAM 6 // Parameter error +#define ERR_MEMORY 7 // Memory allocation failed +#define ERR_NO_THREAD 8 // No thread object available +#define ERR_NO_MSG 9 // No message layer available +#define ERR_DEVICE_OPEN 10 // A device is already open +#define ERR_AWP_USER_BUFF_TOO_SMALL 11 // AWP user supplied buffer too small +#define ERR_AWP_TX_MSG_BUFF_OVERFLOW 12 // AWP message too big for buffer +#define ERR_AWP_SEQ_MISMATCH 13 // AWP sequence number mismatch +#define ERR_DISCOVERY_IN_PROGRESS 14 // Discovery in progress +#define ERR_MSG_OPEN_FAILED 15 // Message layer Open failed +#define ERR_MSG_NOT_ACTIVE 16 // Message layer not active +#define ERR_LINK_OPEN_FAILED 17 // Link layer Open failed +#define ERR_INVALID_FRAME 18 // Link layer invalid frame +#define ERR_FRAME_TX_TIMEOUT 19 // Link layer frame Tx timeout +#define ERR_OPEN_PORT_FAILED 20 // Link open device port failed +#define ERR_CLOSE_PORT_FAILED 21 // Link close device port failed +#define ERR_SET_PORT_TIMEOUTS_FAILED 22 // Link set port timeouts failed +#define ERR_FRAME_RX_BUFF_OVERFLOW 23 // Frame Rx buffer overflowed +#define ERR_FRAME_TX_RETRIES_EXCEEDED 24 // Frame Tx retry count exceeded +#define ERR_FRAME_RX_RETRIES_EXCEEDED 25 // Frame Rx retry count exceeded +#define ERR_FRAME_RX_RESULT_UNKNOWN 26 // Frame Receive() result unknown +#define ERR_INDEX_TOO_LARGE 27 // index greater than profile entries +#define ERR_INVALID_ALARM_SETTINGS 28 // This EPD may NOT have alarms 'off' +#define ERR_INVALID_NUMBER_OF_ALARMS 29 // Passed Alarm array is incorrect size. +#define ERR_INVALID_CONFIGURATION_LENGTH 30 // Passed Display Configuration is incorrect size. +#define ERR_INVALID_DISPLAY_CONTROL 31 // This EPD may NOT have Display Units Changed. +#define ERR_SCRATCH_OFFSET_PLUS_LEN 32 // This area of scratchpad may not be written. + +/*============================================================================*/ + +#ifdef __BORLANDC__ + #define EPDDLL_API _export +#else //assume microsoft + #ifdef EPDDLL_EXPORTS + #define EPDDLL_API __declspec(dllexport) + #else + #define EPDDLL_API __declspec(dllimport) + #endif +#endif + +#ifdef _WIN32_WCE //Windows CE / pocket PC +#define PDA_BUILD +#endif + +extern "C" +{ + +#ifndef PDA_BUILD //Only included on Desktop DLLs +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +EPDDLL_API void* WINAPI AllocateMemory( DWORD Size ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MemoryAllocated( void* const Address ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReleaseMemory( void* const Address ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadMemory( + + void* const Address, WORD Offset, WORD Size, DWORD* const Value ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteMemory( + + void* const Address, WORD Offset, WORD Size, DWORD* const Value ); + +#endif //PDA BUILD + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI GetErrorDetails( + + WORD* const Source, WORD* const Reason, WORD* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI GetDataMetric( WORD MetricNumber, WORD* const Metric ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI InitComms( + + WORD Port, DWORD Baud, WORD Data, WORD Parity, WORD Stop ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI DeinitComms( WORD Port ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI Abort( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetTimeouts( WORD Port, long RxByteTimeout, + long RxMessageTimeout, long TxMessageTimeout ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetDiscoveryExpirationPeriod( WORD Port, + long ExpirationPeriod ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetDiscoveryTimeslotPeriod( WORD Port, long TimeslotPeriod ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetDiscoveryTimeslotCount( WORD Port, WORD TimeslotCount ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI FlushDiscoveryCache( WORD Port ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI Discover( WORD Port, DWORD* DeviceIDs, WORD MaxDevices, + WORD* const Count ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetRetryCounts( WORD RxRetryCount, WORD TxRetryCount ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetAutoCommit( WORD AutoCommit ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI OpenDevice( WORD Port, DWORD DeviceID ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI CloseDevice( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI FlushBuffers( WORD Port ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI Connect( DWORD DeviceID ); + +#define ALLOW_LOW_LEVEL +#ifdef ALLOW_LOW_LEVEL +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI Transmit( BYTE* TxBuffer, DWORD TxLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI Receive( BYTE* RxBuffer, DWORD* RxLength ); +#endif /* ALLOW_LOW_LEVEL */ + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI Commit( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadCommsStats( + + WORD* const XBOFSeen, + WORD* const TotalTxFrames, + WORD* const TotalRxFrames, + WORD* const GoodRxFrames, + WORD* const BadRxFrames, + WORD* const TotalWakeups, + WORD* const RxErrors ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI EpdOn( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI EpdOff( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadEpdID( + + DWORD* const EpdID, + WORD* const HardVersion, + WORD* const SoftVersion, + WORD* const FunctionFlags ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadEpdStatus( + + DWORD* const EpdClock, + DWORD* const RealTime, + WORD* const IssueCount, + DWORD* const OffTime, + WORD* const OperatingStatus, + WORD* const ErrorStatus, + WORD* const AlarmsStatus, + WORD* const OtherAlarms, + WORD* const EEPROMBadSectors ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI TestDetectors( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadWearerID( BYTE* const WearerID, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadWearerName( BYTE* const WearerName, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadWearer( + + BYTE* const WearerID, WORD IDLength, + BYTE* const WearerName, WORD NameLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI IssueEpd( BYTE* const WearerID, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI DeIssueEpd( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteWearerName( BYTE* const WearerName, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI BaseLineCounts( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetFailFlag( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearFailFlag( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearLatchedAlarms( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearFaultFlags( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadDosesQuality( + + DWORD* const Hp10Dose, DWORD* const Hp07Dose, + DWORD* const Hp10Total, DWORD* const Hp07Total, + WORD* const Knocks, WORD* const Resets, WORD* const QualityData ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadCounts( + + DWORD* const D1, DWORD* const D2, + DWORD* const D3, DWORD* const D4, DWORD* const EpdClock ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadPeaks( + + DWORD* const Hp10Peak, DWORD* const Hp07Peak, + DWORD* const Hp10Time, DWORD* const Hp07Time ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadRates( DWORD* const Hp10Rate, DWORD* const Hp07Rate ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadBaseCounts( + + DWORD* const D1, DWORD* const D2, + DWORD* const D3, DWORD* const D4, DWORD* const EpdClock ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadCalibrationData( + + WORD* const K1, WORD* const K2, WORD* const K3, + WORD* const K4, WORD* const K5, WORD* const K6, + WORD* const SG, WORD* const BC, WORD* const FB, WORD* const HG ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadAlarmDoseThresholds( + + DWORD* const Hp10Dose1, DWORD* const Hp10Dose2, DWORD* const Hp07Dose ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadAlarmRateThresholds( + + DWORD* const Hp10Rate1On, DWORD* const Hp10Rate2On, DWORD* const Hp07RateOn, + DWORD* const Hp10Rate1Off, DWORD* const Hp10Rate2Off, DWORD* const Hp07RateOff ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI DisplayFaultCode( WORD FaultCode ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSReadData( + + DWORD* const Hp10Dose, DWORD* const Hp07Dose, + WORD* const Knocks, WORD* const Resets, WORD* const QualityData, + DWORD* const Hp10Peak, DWORD* const Hp07Peak, + DWORD* const Hp10Time, DWORD* const Hp07Time ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadProfileControl( + + WORD* const Interval, DWORD* const TimeToNext ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadDoseProfile( WORD* const ProfileEntries ); + +WORD EPDDLL_API WINAPI ReadDoseProfileSince( + + DWORD EpdClock, WORD* const ProfileEntries ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadDoseProfileCache( + + WORD Index, + DWORD* const EpdClock, WORD* const Interval, + DWORD* const Hp10Dose, DWORD* const Hp07Dose ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadConfig( + + WORD* const CountDownTime, + DWORD* const ReturnTime, + WORD* const ChirpRate, + WORD* const TeleBaudSetting, + WORD* const SelfTestInterval, + WORD* const BatteryLoadTestInt, + WORD* const GeneralControl, + WORD* const CommsTimeout, + WORD* const InhibitTimeout, + WORD* const MinTxInterval, + WORD* const MaxTxIntervals, + WORD* const RandomiseWindow, + WORD* const DoseIncThresh ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadAlarmConfig( + + BYTE* const Config, WORD ConfigLength, + BYTE* const Duration, WORD DurationLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadDisplayConfig( + + WORD* const Control, + WORD* const LongSwitchTime, + WORD* const DoubleClickTime, + WORD* const DisplayDefaultTime, + WORD* const Default, + BYTE* const Config, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadErrorStore( + + DWORD* const ErrorTime, WORD TimeLength, + BYTE* const ErrorCode, WORD CodeLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadSpecialWriteTimes( DWORD* const WriteTimes, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadSpecialDoseStore( + + WORD Index, WORD Count, + DWORD* const Hp10Dose, WORD Hp10Length, + DWORD* const Hp07Dose, WORD Hp07Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearErrorStore( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearDose( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteDose( DWORD Hp10Dose, DWORD Hp07Dose ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteCountdownTimer( WORD wCountDownTime, WORD wStartNow ); + +/*----------------------------------------------------------------------------* + * + * This function (WriteCountdownTimer) was written after the Developers Guide + * to the Ex15 Interface DLL (611/HB/40571/000) + * The first parameter wdCountDownTime is the count down time in seconds + * The second param byStartNow is a boolean to start the timer now + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearTotalDose( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteTotalDose( DWORD Hp10Total, DWORD Hp07Total ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearPeakRates( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteReturnForReadTime( DWORD ReturnTime ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteAlarmDoseThresholds( + + DWORD Hp10Dose1, DWORD Hp10Dose2, DWORD Hp07Dose ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteAlarmRateThresholds( + + DWORD Hp10Rate1On, DWORD Hp10Rate2On, DWORD Hp07RateOn, + DWORD Hp10Rate1Off, DWORD Hp10Rate2Off, DWORD Hp07RateOff ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteAlarmConfig( + + BYTE* const Config, WORD ConfigLength, + BYTE* const Duration, WORD DurationLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteDisplayConfig( + WORD Control, + WORD LongSwitchTime, + WORD DoubleClickTime, + WORD DisplayDefaultTime, + WORD Default, BYTE* const Config, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteDisplayControlBits( WORD DisplayControlBits ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + + WORD EPDDLL_API WINAPI WriteDisplayEnables( + WORD Default, BYTE* const Config, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + + WORD EPDDLL_API WINAPI WriteConfig( + + WORD CountDownTime, + DWORD ReturnTime, + WORD ChirpRate, + WORD TeleBaudSetting, + WORD SelfTestInterval, + WORD BatteryLoadTestInt, + WORD GeneralControl, + WORD CommsTimeout, + WORD InhibitTimeout, + WORD MinTxInterval, + WORD MaxTxIntervals, + WORD RandomiseWindow, + WORD DoseIncThresh ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteProfileControl( WORD Interval, DWORD TimeToNext ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteSpecialWriteTimes( + + DWORD* const WriteTimes, WORD Time ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI EndSession( WORD AlarmCtrl, WORD Duration ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadScratchPad( + + WORD Offset, WORD Length, void* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteScratchPad( + + WORD Offset, WORD Length, void* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteChirpRate( WORD ChirpRate ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadRAM( + + WORD Offset, WORD Length , void* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadASIC( WORD Register, WORD* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadDirectEEPROM( + + WORD Offset, WORD Length, void* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSLogin( DWORD Password ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSClearWearer( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSReadWearer( + + BYTE* const WearerID, WORD IDLength, + BYTE* const WearerName, WORD NameLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSIssue( + + BYTE* const WearerID, WORD IDLength, + BYTE* const WearerName, WORD NameLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSDeIssue( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSClearData( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSWritePassword( DWORD Password ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSSetOffEnable( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSClearOffEnable( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRLogin( DWORD Password ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWriteCalFactors( + + WORD K1, WORD K2, WORD K3, WORD K4, WORD K5, WORD K6 ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWriteDetectorThresholds( + + WORD SG, WORD BC, WORD FB, WORD HG ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWriteRAM( + + WORD Offset, WORD Length, void* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWriteDirectEEPROM( + + WORD Offset, WORD Length, void* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRResetEpd( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRFormatEEPROM( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWriteASIC( WORD Register, WORD Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRSetAlwaysCount( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRClearAlwaysCount( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRSetGolden( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRClearGolden( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWriteEpdID( + + DWORD EpdID, + WORD HardVersion, + WORD SoftVersion, + WORD FunctionFlags ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWritePassword( DWORD Password ); + + + +//additional commands for ANALOG2 +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadA2Config( + BYTE* const byADC_LA, + BYTE* const byADC_LL, + BYTE* const byADC_SUPPLY, + BYTE* const byADC_BAT_TYPE, + WORD* const wOffDisplay, + BYTE* const byConfig7, + BYTE* const byConfig8); +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadA2ConfigStatus( + BYTE* const byBatADC, + BYTE* const bySupplyADC, + BYTE* const byStatus3, + BYTE* const byStatus4); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteA2Config( + BYTE byADC_LA, + BYTE byADC_LL, + BYTE byADC_SUPPLY, + BYTE byADC_BAT_TYPE, + WORD wOffDisplay, + BYTE byConfig7, + BYTE byConfig8 ); + + /*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI TestBattery( void ); + + + +} diff --git a/EpdBase/dll2/test/reader2.def b/EpdBase/dll2/test/reader2.def new file mode 100644 index 0000000..fe83b1e --- /dev/null +++ b/EpdBase/dll2/test/reader2.def @@ -0,0 +1,132 @@ +EXPORTS +?GetLogDirectory@@YGXPA_WG@Z +?GetLogFilename@@YGXPA_WG@Z +?GetLogIniFilename@@YGXPA_WG@Z +?GetLoggingLevel@@YGGXZ +?GetRawLoggingLevel@@YGGXZ +?GetRejectLogFilename@@YGXPA_WG@Z +?GetRejectLoggingLevel@@YGGXZ +?InitLogDirectory@@YGXXZ +?Initialize@@YGXXZ +?Log@@YAXQBDIGQB_WZZ +?LogPort@@YGXPA_WG@Z +?LogReject@@YGXGPAEK@Z +?SetLogFilename@@YGXQB_W@Z +?SetLogIniFilename@@YGXQB_W@Z +?SetLoggingLevel@@YGXG@Z +?SetRawLoggingLevel@@YGXG@Z +?SetRejectLogFilename@@YGXQB_W@Z +?SetRejectLoggingLevel@@YGXG@Z +ADSClearData +ADSClearOffEnable +ADSClearWearer +ADSDeIssue +ADSIssue +ADSLogin +ADSReadData +ADSReadWearer +ADSSetOffEnable +ADSWritePassword +Abort +AllocateMemory +BaseLineCounts +ClearDose +ClearErrorStore +ClearFailFlag +ClearFaultFlags +ClearLatchedAlarms +ClearPeakRates +ClearTotalDose +CloseDevice +Commit +Connect +DeIssueEpd +DeinitComms +Discover +DisplayFaultCode +EndSession +EpdOff +EpdOn +GetDataMetric +GetErrorDetails +InitComms +IssueEpd +MFRClearAlwaysCount +MFRClearGolden +MFRFormatEEPROM +MFRLogin +MFRResetEpd +MFRSetAlwaysCount +MFRSetGolden +MFRWriteASIC +MFRWriteCalFactors +MFRWriteDetectorThresholds +MFRWriteDirectEEPROM +MFRWriteEpdID +MFRWritePassword +MFRWriteRAM +MemoryAllocated +OpenDevice +ReadA2Config +ReadA2ConfigStatus +ReadASIC +ReadAlarmConfig +ReadAlarmDoseThresholds +ReadAlarmRateThresholds +ReadBaseCounts +ReadCalibrationData +ReadCommsStats +ReadConfig +ReadCounts +ReadDirectEEPROM +ReadDisplayConfig +ReadDoseProfile +ReadDoseProfileCache +ReadDoseProfileSince +ReadDosesQuality +ReadEpdID +ReadEpdStatus +ReadErrorStore +ReadMemory +ReadPeaks +ReadProfileControl +ReadRAM +ReadRates +ReadScratchPad +ReadSpecialDoseStore +ReadSpecialWriteTimes +ReadWearer +ReadWearerID +ReadWearerName +ReleaseMemory +SetAutoCommit +SetDiscoveryExpirationPeriod +SetDiscoveryTimeslotCount +SetDiscoveryTimeslotPeriod +SetFailFlag +SetRetryCounts +SetTimeouts +TestBattery +TestDetectors +WriteA2Config +WriteAlarmConfig +WriteAlarmDoseThresholds +WriteAlarmRateThresholds +WriteChirpRate +WriteConfig +WriteCountdownTimer +WriteDisplayConfig +WriteDisplayControlBits +WriteDisplayEnables +WriteDose +WriteMemory +WriteProfileControl +WriteReturnForReadTime +WriteScratchPad +WriteSpecialWriteTimes +WriteTotalDose +WriteWearerName +_FlushBuffers@4 +_FlushDiscoveryCache@4 +_Receive@8 +_Transmit@8 diff --git a/EpdBase/dll2/test/reader2.exports b/EpdBase/dll2/test/reader2.exports new file mode 100644 index 0000000..c490e19 --- /dev/null +++ b/EpdBase/dll2/test/reader2.exports @@ -0,0 +1,158 @@ +Microsoft (R) COFF/PE Dumper Version 14.16.27027.1 +Copyright (C) Microsoft Corporation. All rights reserved. + + +Dump of file reader2.dll + +File Type: DLL + + Section contains the following exports for IR_READER_MS_DLL.dll + + 00000000 characteristics + 534E87DE time date stamp Wed Apr 16 15:38:38 2014 + 0.00 version + 1 ordinal base + 131 number of functions + 131 number of names + + ordinal hint RVA name + + 1 0 00007D60 ?GetLogDirectory@@YGXPA_WG@Z + 2 1 00008370 ?GetLogFilename@@YGXPA_WG@Z + 3 2 000082A0 ?GetLogIniFilename@@YGXPA_WG@Z + 4 3 000084F0 ?GetLoggingLevel@@YGGXZ + 5 4 00008550 ?GetRawLoggingLevel@@YGGXZ + 6 5 00008430 ?GetRejectLogFilename@@YGXPA_WG@Z + 7 6 00008520 ?GetRejectLoggingLevel@@YGGXZ + 8 7 00007DB0 ?InitLogDirectory@@YGXXZ + 9 8 00008160 ?Initialize@@YGXXZ + 10 9 00008580 ?Log@@YAXQBDIGQB_WZZ + 11 A 00007D90 ?LogPort@@YGXPA_WG@Z + 12 B 00008740 ?LogReject@@YGXGPAEK@Z + 13 C 000083A0 ?SetLogFilename@@YGXQB_W@Z + 14 D 000082D0 ?SetLogIniFilename@@YGXQB_W@Z + 15 E 00008500 ?SetLoggingLevel@@YGXG@Z + 16 F 00008560 ?SetRawLoggingLevel@@YGXG@Z + 17 10 00008460 ?SetRejectLogFilename@@YGXQB_W@Z + 18 11 00008530 ?SetRejectLoggingLevel@@YGXG@Z + 19 12 00005520 ADSClearData + 20 13 000055B0 ADSClearOffEnable + 21 14 00005420 ADSClearWearer + 22 15 00005500 ADSDeIssue + 23 16 00005490 ADSIssue + 24 17 000053D0 ADSLogin + 25 18 00003DB0 ADSReadData + 26 19 00005440 ADSReadWearer + 27 1A 00005590 ADSSetOffEnable + 28 1B 00005540 ADSWritePassword + 29 1C 00002940 Abort + 30 1D 00002540 AllocateMemory + 31 1E 000039B0 BaseLineCounts + 32 1F 00004840 ClearDose + 33 20 00009560 ClearErrorStore + 34 21 000039F0 ClearFailFlag + 35 22 00003A30 ClearFaultFlags + 36 23 00003A10 ClearLatchedAlarms + 37 24 000049A0 ClearPeakRates + 38 25 00004920 ClearTotalDose + 39 26 00003670 CloseDevice + 40 27 00002F90 Commit + 41 28 00002F10 Connect + 42 29 00003930 DeIssueEpd + 43 2A 00002880 DeinitComms + 44 2B 00002BE0 Discover + 45 2C 00003D90 DisplayFaultCode + 46 2D 00005100 EndSession + 47 2E 00003030 EpdOff + 48 2F 00003750 EpdOn + 51 30 00002790 GetDataMetric + 52 31 00002740 GetErrorDetails + 53 32 000027A0 InitComms + 54 33 000038D0 IssueEpd + 55 34 00003580 MFRClearAlwaysCount + 56 35 00003580 MFRClearGolden + 57 36 00003580 MFRFormatEEPROM + 58 37 000055D0 MFRLogin + 59 38 00003580 MFRResetEpd + 60 39 00003580 MFRSetAlwaysCount + 61 3A 00003580 MFRSetGolden + 62 3B 00003570 MFRWriteASIC + 63 3C 00005620 MFRWriteCalFactors + 64 3D 000056B0 MFRWriteDetectorThresholds + 65 3E 00003560 MFRWriteDirectEEPROM + 66 3F 00003590 MFRWriteEpdID + 67 40 00005980 MFRWritePassword + 68 41 00003560 MFRWriteRAM + 69 42 00002590 MemoryAllocated + 70 43 00002DD0 OpenDevice + 71 44 000059D0 ReadA2Config + 72 45 00005A30 ReadA2ConfigStatus + 73 46 00005320 ReadASIC + 74 47 00004560 ReadAlarmConfig + 75 48 00003CF0 ReadAlarmDoseThresholds + 76 49 00003D30 ReadAlarmRateThresholds + 77 4A 00003B90 ReadBaseCounts + 78 4B 00003BE0 ReadCalibrationData + 79 4C 000036F0 ReadCommsStats + 80 4D 000044D0 ReadConfig + 81 4E 00003AB0 ReadCounts + 82 4F 00005360 ReadDirectEEPROM + 83 50 000045B0 ReadDisplayConfig + 84 51 00004390 ReadDoseProfile + 85 52 00003390 ReadDoseProfileCache + 86 53 00004430 ReadDoseProfileSince + 87 54 00003A50 ReadDosesQuality + 88 55 00003080 ReadEpdID + 89 56 00003770 ReadEpdStatus + 90 57 00004610 ReadErrorStore + 91 58 00002620 ReadMemory + 92 59 00003B00 ReadPeaks + 93 5A 00003E20 ReadProfileControl + 94 5B 000052B0 ReadRAM + 95 5C 00003B50 ReadRates + 96 5D 00005130 ReadScratchPad + 97 5E 000047A0 ReadSpecialDoseStore + 98 5F 00004760 ReadSpecialWriteTimes + 99 60 00003880 ReadWearer + 100 61 00003800 ReadWearerID + 101 62 00003840 ReadWearerName + 103 63 000025D0 ReleaseMemory + 104 64 00002CF0 SetAutoCommit + 105 65 00002A20 SetDiscoveryExpirationPeriod + 106 66 00002B00 SetDiscoveryTimeslotCount + 107 67 00002A90 SetDiscoveryTimeslotPeriod + 108 68 000039D0 SetFailFlag + 109 69 00002CA0 SetRetryCounts + 110 6A 000029A0 SetTimeouts + 111 6B 00005C50 TestBattery + 112 6C 000037E0 TestDetectors + 114 6D 00005A80 WriteA2Config + 115 6E 00004B10 WriteAlarmConfig + 116 6F 00004A10 WriteAlarmDoseThresholds + 117 70 00004A80 WriteAlarmRateThresholds + 118 71 00005260 WriteChirpRate + 119 72 00004EE0 WriteConfig + 120 73 000048C0 WriteCountdownTimer + 121 74 00004CB0 WriteDisplayConfig + 122 75 00005830 WriteDisplayControlBits + 123 76 00005860 WriteDisplayEnables + 124 77 00004860 WriteDose + 125 78 000026B0 WriteMemory + 126 79 00004FB0 WriteProfileControl + 127 7A 000049C0 WriteReturnForReadTime + 128 7B 000051A0 WriteScratchPad + 129 7C 00005010 WriteSpecialWriteTimes + 130 7D 00004940 WriteTotalDose + 131 7E 00003950 WriteWearerName + 49 7F 00002EA0 _FlushBuffers@4 + 50 80 00002B70 _FlushDiscoveryCache@4 + 102 81 00002D80 _Receive@8 + 113 82 00002D30 _Transmit@8 + + Summary + + 4000 .data + 5000 .rdata + 2000 .reloc + 1000 .rsrc + 1E000 .text diff --git a/EpdBase/dll2/test/reader2.lib b/EpdBase/dll2/test/reader2.lib new file mode 100644 index 0000000000000000000000000000000000000000..5979bd3972efa27e9d4705ed23091f213437985a GIT binary patch literal 28914 zcmeHPTWnp$x&9L%K%gn*ehI}ufB+?g#C9%(#CONUaU9#Z65{OG%khToz1_XH6GADp z91cPiswx$sKJb959;pvipHS7)Csd(6R6P~v;h+jtl@6*<)u)Pws;Uq@-#@qY&#bj3 zduN-sv!%~7^UtjLW@gRhpMPfg-aV!I+~VH#k9YaMCwh9e?%dwny=|*6x53_?-kmz; z%zC0V*Ai|2n5g$kq8+=5cD|{xYaNlo%WxV0)Yx4mQuq`u@Z`L~pWp&}W(+=n3p~|p z@Kd4CK!^ zaLVA)(;N)h5AHZdxoQ!9x2H<-JI5lB_XHEgnqMQnE!v#*SHNbPH86RoP?j=(A zIb7h(%?2;QW&A~>bdpHn_i%x;y$0{X1?H|dcmXcs&l>Zmi4?#$4n`8t3MT6h4FtETWtW@4*Gij~KiS7kG{g>TnroPsa1d4Sow3sBANM2QIL*!QfT6 zjK67A!LI=BDo_Kz!q4CW%UuRue$>8E|8Nprk*Zm3*O=9;zo#lF51qsJ%vXOE5cokVu! zrRCXZ5)(O6t|ZmcQd0bQZVL1CShbuR?eP~SGI^XUSI>yqsbMvAJZ@>_f9;Utn7OqG&j2O+GjppZaI#uv!Q4006?FsRk=XX0(Loc6fAx;11 zqFS}|E|o7vx?}ZnGnp(k z8W(Eyc~P1`-hURO$3^Qvf2C5JD>ajY$r7e%7a2$gN{wW^TulaRE7fMhrV6F{#nl?F z8HGT3hwJrPeH!b5pF)aNx{*@3GEym>vqXW=1Xn6ePUMP{5i7xXsX4cp%=cGH^(8-P z5TjC0CZ*@6&>VhBAyuhnYRyt*D6FWE4ptC3l$|TWp4c4kv%>J&{ zHfXxy@UnZiQZkg3F;{aQuF#%nsN9&Volkpz8isGVQo1-&LQ4+T=3P;<^5N?Ibkb;) zYp$;(jxYo;yQ8MxV(y;RJe3wHe#V#FB zW!YC&80{i>ri?rnM)PyLX85Z}DCIDEUHNRi)Wn1%*U;Q3CFI$Uo6Ku5H9HuoP8GJj zZ6F;h*ET6(zu*7#Qk<1*iJDby)-tIVq0*w^C+oEZY;$Zc&WHoSUla4Au!%-*Tn-?sM2KAfKbX|Un7wc_VbeLy=)^;ak@qE z2AcI+MYfe`YZt?*#i(~d<&kQD5U_W84xMvuakAtlgHWo%%gG$JJUqHQr6)g5NY&Ic zQ(j8dkb+1STYWL@XjYQOrjw*EOG6XbWy_Y*d1&cW0*$;8sEC1(*PxYV&8jlGFo6(3 zt9)D>eqp(+2l!-CFV|c<#?#1H)jpLPbO4N7Tl7eRyr^Pso4ZYcr$epO6Cp4Kt>&UX zw}n!KIpf+&I#GF|nWWJiC^ef&s)~Ce4%ijc_5MJp7x7@B34}T**8=^*vhq}tzep6v zr!nC=5ORg_>dC>ya($U&?5ho>I_xc{p2!5yIp%8@s@&{u1DG47ghuuCC-1zNK*kfz zKskM@h0!uXZ(rSe%#G4Q%phJf=)H%E^QTEqqypiTCmKJDQt8o)SL#)$tvokyt9isZ zvFfSpgqRU)fu0hTUkx!Y_vvh`P8sgELa7SNDNEGS6OU9@8jAxf3kylT(bsLsXES0Y zaFdl*t7G0R9Y|hDH7(U?L&< zC9r9M==;DwfcbN1XJGFl+7x)C3_gI51?s>j!13paehX}?pnkxHC8Ae>zX9`AJP+)x z5&aD4S|)k}xONTt1zkn!=xVx#uBG*K9bHdfp$+s^x`Dn%H_}aXGu=YB(rt7*-9dNK zU9^$zrmxdI)J6BweRMxefM%$^IdZ?Fn&`#P# zyXi^VLr>9O+DCoVPXjbaLo`eyG)ntvjGm?gG)@O;f)3Fn9i}OorWrayN9h<|$q711 z&(JA)mQK?wouLw)r8%0Xgcj%=Em9fH@jO*%iKxhh@a1xqYuv%Y|m~?Txh@!qCLYdpPHx> ziTraB@35kfGv8*cvSzyvtSbIl6LWGz3r7yQ=L!Xf2gXA06;qhMQH-!<{8+DHlzl#C zyZ0>WMV$F9qiz4N4J&Jx-bCAwuqj)S-7+AYWB7(N&#(<~x`80JUqhMoGgk|9YJo8p zXlqKbx=X~6tco8o5UY4)!8EpDCAfrXSEVU3*V-)%bU<#pG_BODAypteOcHZ5VRvR$IKvO6>(}p$cxI||0AKd z*+-bO(%bsjhFuRTw>Q^8**Q~5*gMmhuzRW)v0c_-voSUSe;2HTX3nx(-9VOZXk~=k zv1*~(mMX99Gb+&PzEUNY-9-y7y$Mw5;`_Ry4cuj1a+yW{OZRnR%a-2g$fzGyAM%oT zD|l{-Pm9m8c{e#Q z`jD$vp*HSZq}LLViPy9(UY|%aaE%r(i%V9-7F>AHwhU-jYONRgl^4*AI%)Smu4$!mtDoheXq8&~ z0;J3;a3Xbh7A*A&k&MNmauGy_8b%r|)!H29dlIYF<1~%0BulxcDvO9z zKb9@Vb+sBvkX0>@wAh|ct>BSDA@P2$90}MCox6D^6>fq;6U-WeE+HOAeIkSFz%@y>) zC$&@8!Lol14hZmDvt>RxyK-(5&OY?7AI_ULVB9{sVPH#n9{2Ay;R^!&yBW@Z0sm{l zSHSI~t?!$3I8V~Q>*4$hu<2OZM_uo)g?l4T75I0ZsMJGr(+yWc#`*DY1I`+LSibRK zd9Ge-)E1guo2MS`8Xud$!B6(bWc(m!z=s#?y8(Z%Qa-^#eRH*?Wt8=YqT{2>M7fL>{npiQ`V}U@}H`3T*UmIf+H#KCwdA_74?sM%755^ak-~_DLtT- z_j)%9QTSm>+pT5~Q@hgf^*$cjW zt2SfxK4HI2fU0{0auw`Xx+YmOup{+8<7vn!wTA#h%4 zI13C?f~x(x_7>E23wW=xyiq%sq!<2{YTdgnzt)d{eO<`Dy6wFqpZNhWU(L)#HaStn z_FKEBU>x5A)@v-Qf6Ce!U%@E47kt+;A8ZF13*wi?xZW^k43nKP_T<0G`%%a13}cSH zvop@fXuX~}u_r>)db6T2qjtm_8!ul;dBa&ThguY)rIFeb87~`BW^arto39{hf4sz2 zpRXF$oLMnLEDF(5ZF>v))MMyVH(1`>Suv-n+h21FMlG*>Uklk+xy8E+)`L62eIw>5 z-<&SmRjz(5wQ+1Nyh$>p)^SPKcB^)q8-87ZMzIk!yIJxXTa6?W{+8<2-JL%t-43o> z43|Ao5P7%VhTR40=dIwm)$r(ZiZ6@hHp8Ng&>gW9jJZ2dm)i}?6n6UROhpp4-xCVv zvb(@^hhWO-2<>wftQ5TAy3=rBu~?-(?zXEzAOAYo?lNrJXk-tTWJ3ynOTB!1LEUZw z+eXEvj;lnr?XLi_QG2)I@K3=cneew%pBUHInJYM36ZyA4atr48+t7CRFjsnFCuvr- z|8+SYVPNl!Ei$t1b!^Un+!yKzY({H?vE zg8ker;MlA=^u0%s@ny_`5pCjOW)WxNl1TVlt4-wHJfeBZ?xbC0ei=0?7)`9VJgS)N z0luUW{+8+!TMfTqSo~`Nf#;lZ^Tn zlB8;Tg^B4JeUi)FYm;=s-_kqmj%aHAl8vu9iOer!#){031ByxgudDPDUT16teT401 zgUlxG_DLe)Z>{|zqkD*XreJ7tHwH!SvN2m?ijD5!kjdP9>x3_65gc)Re7mtDmPoG{ zbu8ktmLzL`Y!!@SKC9dBu?1JazBJY`k2Sbh))8yW2KBUM6&FV(neeyPHzS(e0m~I$ zM-?QOF`Gm*yK%>u-g1>>!rxNuV*9a!DVMrCEAp1(qGO(klt2ya0PtH=>exHoYR>vGy`v12& zYQKo)bKG*7+rJ(0MBdX0%cJknOPaRZE~fXKbUgm`d`T$$E%o;9g87OqvCmk(&b8r4 z>z#5e>RSR)f%fO8m=^G?9petzdIHz?axdFyBEH(GaE3fJ+}Uw zLQ=NfA7k3U8Oxb-;44U5YR%aFiIUHQZ$Cut(%%|WWOh31GpR31I^rtO!1=^{PIJlc zR3ugVZz{qy&s=O!N)rp+xemo~B5Pr*8>S8V@OO}Pq;7J|B^{@zp23m-(! zsQGLWqs3~nF8izzqeZ){F>U3Wjy3(pPUJ7UPfP6@n@8#?m;Q$xlBn$w7d!WA2qy1? zz|I&8PKUbCXPS=D|ISbn3V%y&8N1WFlEde|UKB*_kNH@;o)1~=N0A*d#`dNcQbzvP zvNN8@9Q}gh$=SrMYTvx*n1U}uJE~jko0u0JWA=knNhnqan--i2 z@K--CrEHmhs3U46yH9I1ELbJ@PV%=M=PKR2irDO5c3k31URklWTQm0VUSYQI1L2O? vV!iV_DVtN}?RUqLRQOwacM*%tcNJ&)HM7XO{XPP5#|cP*^;U$(o$x@q%8>uw5T=9GE{^FaTZKX zi#a_6abs>ib8ha(^Y}daOx@!OI)`bCEfqvSH&L8J$F{o`x1y{RtmN~)?sM|11>F36 zUZ3yxj}N?>bI$$a`gLFTbzS$5bDu>wZxghFAn5QHj|;+1TK|6cfK0NLX%eQ})d z{Fv9K?bKAiHm%P0&2^SFYw!BT+FS0h+;+>Icit7S+`<0qN&=w- z_20HEp`}0&Vkb00VIu8Z*9lpIBRw5-HgQtZ6I1tB1#aIEz~is~fI>tc@k))J_Rk^+ ztFBtxcuU|GLHMsqWDxIFxPE|Z+CPUNIIdEP3G=T-h69{W#q~->0*Rt17rSchy0y0< zf%6KUg&aIojVkB3YVGZ-??S=HiD}4y!&^M6+&tv|zkmM+B@jMtamyz>(Q2#6ezI8* zaARiQ$Bh$rdY1p7AQ*Pcx6X{}LeV+h(M?7ws%Nhty(Jcy8eMF0@q~bqkl(PAbfrGL z+tR5MYHdg4*QI)qJrV)r#TK>|SGj9>gPOl@-@b5%*e5m$0&e*~xy~xe^Q}6!9IzVQ zHB$3xz>^+cL%+`j@asekHV93r@6@9fm6e)9$N)Y-P@Y#MpWBchDc_)EBHv2|yoALo zHE%#Muk`S@skEq&K=d#`SE$*y&+U<$ta_5rVv+q38Pcvs6mRI>T#5^b;8+u-6@K=l z)hGFS}0y+Ul$`YvmQzlAYIq2z%F(DTCo|P4t=5c#13$B0oNZn}A8KwwBboqTl}% zPc`foG*SOpzu?ycWIzGgIvBVp+?7?kBzlv`iqQ@$)yC1&T@qi4zgp53L;Eg55Um&G zz2TlL_SUU}&>9OEJk8xifm`0ojzI}G#=eggefLPiqYiT7e;M zjXr4-jG^DYNKk`g2w-?_R{soYgz=EryfANszEj8s#zJ{a_;l9#_YLjeqZ$BZKNx&t z7a$39=UXj?2VPh1tcJ~BLt1epkIJTyMK*vRro^Sg_}f7b**XsB1!DyiV;ucTdX zlbJKx2H6%6f?JF2Bi4*t>cJ*TPj#pqLZM~&+U1GGX3mQk- z7Wi_ML=nBo$U0C<9_xbcltt^T)*43qBgex212+{Y`zuATWIRQobuj3$eZ=A4v;<9G zbB3DW)O)96S!y(HJ|7p055@k$*Mf7d|9&>#2RcU)s^e1a-F zUG6803$u*2-A+hB-}p01l;CQ5G)GTpjM2MAG|zmiiIQ1XJ?Q3-ar|SSz!-sieWQe^ zNf4I7@)^-sP%IOqtzQB{Pawb0$$LHS%r(yFouUiMx^yL~4z9+fO!`|>uKoOOg@7CCEUcyPLtwNnmed|-xAc|0w;SWlE%Tq)Qd1# zwz$mLdV;f8`Xzx;L9n$*gP0pV9uHdL=SoYsqYYWD@!(DJ=2a-_an{z7vbvxTGs&9n zht8l*aoc9Hh;zGwlR~=``<7q2!fFiWzD#uX|JLc()Y{^#VH4-R|G&Wl@8EFZTp>*I z35nb8aNMyzuV*uvaR+M3{0@!?8ov16S{M5)1k?HmxyDeZ4lavqeI0ttuUBy5$5Hcn zYMmhMPebQ6^ve^TSkXr{K7kW1iEgGw;Xbq{7sv(n_l+Q74=X{VaZk#dO7Wy`Dp`L3 zN61Qg(v3(?^Q1;WeuR_(WX<$zYW&%L9o)u#_6V1*q2)1PQM{L-{Sgu&EH8qZaEH!* z(6GHr-n+cDH+ZGfpAXf!j4<+s2Lb{z4VDtZUyj>BFpFDfIQOia3tgRK-!mm1?$HD< za{0%i?q8ZXStNGq{2;5&TI`H&{S8pMYS@2(!B9I%RRh?z81#+|bgFo&6T?5h?Rgnv z86mpP5?u(3H^BA)I*8~XB;4@b+b8es(MBdfg!`Z&4fTl0R73dr{THebu!Nq!m^({tDS^_Ypca2r8fkmqs^JXXdt%{YuID z4bL*PybMe}P)Okk8w6(x9h4GzoJ240FRc#*Tz*Y-(*}=U!!8?)$0ewXlY<;zK<9HTEp7{a>%Gt!2OeM*>!0E_LAOE)K`Q z3%<@C#8v6xs#$-XJ+H!8jVq*Y27CcFtnoJ_U|0b%0I<1MQp7!=lwt`es8I4asd4b; zgdK3f4ipA&MD$=50tJMdJ^F2;{xwzr&`2m|5jEie5)kz36BQ!}SilJghDo$z8z>@+?jn_tDg)%XywXj&8u@h=QhOc6Jm`@|*p)iqF}g5_ z(C#7**-FLiUFVfoTbD)~tq4;7v95v&8+QCYQC9ceN;ZcV3?4;CT0uq!@#JinwD4{R zh7CwqfrMhJmrATomYkJJMD>PxTWqCQ%0g*T1(47_j1S<2a?rKMIN8%YK-Bf*fKVY3 zSjaA&togcBE=n#vbuqbI@35Ea)@I2X+o95O(XhQ!?o10p>7RBGgm$F+y zepFu)-mQ}s>!cj1Qe4;|E!HE{OJUo$ZxF*LpgYl%!_dj=L#J;wJh&Kq7}^ii_?CW*AYi_AzJHpNt>w})`lpd*x!6fW z1JI4K8sAJ5^6Py2!Mo3ld)DhEgr?GZ(a`!4Qfqx7{Q9-EwLV;909faYPc#l_jJDqJ zP~7mn4yh76iT1rp=nn)I7fR?+g1W^|P)n}V0h_)C$)cJpQ8GprI}gCwAk#vf9e;%= z+x-4_-;Kv>ntP3yN^z3)L$o5OR>y(}rxNxPgRkB+L zGW4#R_(aUIfQ-Nt?uyBzF9+6uZ66yB5uY@4MNE(*I}t3!52Y74k}M!^vErTvT(*6- z80$=Ckbc@?rIn--l{#=|Qm~Edsno%=#d|76)JtmXKGcRyHIHy7(1lz#&f!;K-YdZYIhLbrg&l=?9W@#U~b0AsVHp{#~%VWpw%Q@j{C9 zZ1K`fV&LmC!cNdcu$9&eTmu!G3G78}5ITl2Fmz@&s$RlJ}ljsJ=?dQ|>rqh^sjNv@fB>hP3UIEE%5 zEvbf3pfWR0y*;Hj+>wLWJ$^`GT}-mhXFO8)Mc_wm1%FWjKPLOmrZR}$K< z)+C@^o(AnA6vI@jmYUA0VmO3 z3OycTZyEq$9A<*5qp#C!o2UXaCW)G-_dtOM3_H3}q}s3p!}4&SCSaqVi^F|c!4gU{ z$)-|t%)$n#07M%x$pFJ?*rA_`CPreOnuvmicBQ0L(7+S-rP1^7U0;}Ue0QUgH&R?RHuP{QS-Q+?5B64(g0x@3|{2)ix@UOgCq@bfl8SG{4l&1$Y(GCGO5N-Y(Ac-1Mg0iN;&FaVNZxipnrfM_JqhB(?5D5 zSY&T$zha1138gFMj-x7{;;+%VPQfRik!^k=8hKS7~?e1aBq%q}7vQ-how z1f(=G7@Xkp8$t7jt5bY-$-D&No*zFzlin))U!YK;@m2Z!Dy<&xLyD(EfYde&RAK_n zL>CuLII}odHOqo*lxs?8me8#J?1>*zEJ-3RQt@9g8vpEcfFj!G!uYkB#eo|^6XC~{ zT@tH^K{D5eU#F?C%5NuF4J7FFa`r;AARGo&wu=uCKs3iIv4W(dxc)-G^aSP$h zR5L%afBgdMI3x8RNlAGjswHDaK2{2WBm&G~8Ua%gh+QS_=c{n=1c^EcVRtuBKosn5s7Nln00Ms0brkH2(Yq=p!B~eS& zSRoCvjEX^~*^Tt3O4r|Cd}EY+eubo@eA3$MeD*K1c%r`)ox8tWJsRJ<5dh9%(N$Ax z9#JyF1p=E+`cM8OT?`1~W-3a-hgNF){Tg!|34K@nNhhE7;LiTM{)8Ij-!jUj;U3up z^BjtcN%l3mq2>UE7-F;LnIvE_G4fH05q(ZJ2{>$r!n<|$&VUUOPwB(NVxTC(10N(r zl#oYfjcnVB9HgX_p*nsbv6`#+e<$m{Jq2$;3SQZH;bF!l9cGP_`T`GO)Svhv3M^?n zFZu;$Lu5|=h7Z_XIzE?Yayi*A=MamgG#1nNFTeU6{HNvL{WBm0&Cc@r>$_7qwS5@hdEwJNow!(INdCWxibXKg>8Fd zeY(*5T0{H68n=|oRwCUiEzq@f#aNaV$$MOGR)xgSpYZSo$}A9B37*5dEz$x#?T|>v zj{cAu|J_Q=(@<+QO-0ZwhR$n$;0)-x2P3OJa!1Eeo&3BpkShpUguw{mrE9$Mvm5Y? z2eVhYMh-R6LjXG&IyOi-9q;R8J#DwJV2q_q2QR~*0TcF9U^i~%_!Rq+8r7$@*TbKq zFRstghvv`8fB0*oT07GoU3205=RT)D%{q_1i5Qac$uBv}D~(WBZVwIZReW+z##)?{ zO~zC&{Epgg>GC-je$3TpjPLNAa{g#~TP#xnke>*>xniWjKlnNFDL9vW6npJmmC&Vo zU^c@qkhK;9-|BAOLN`e2ZjSOhlePN+GT4Hwv#N0$2840}9~a6sRs4GXpEzdqu4MvSSd_76OpOKnCL_@^3Gumt*^| z;>2Z?baYm~pg38?5sUx>RxK6~QN z$LtBs%OdK9+o00bNTHfeKUN9>6UlRsRKmW`CjiSj3x$1{o1+eu_0|X03}Qh3jApk3oLO@mln+9oR zcy_R{9N+v-t1`hnf}U$xKXx9#_@wBe?RI+1o@0*BXPhM%{UTop@#k(5rqwS_t3Qd?*Cy+)Jx_fjaGL>xwsjPO2FKN)!3dNzrLK4R3&AiJI5E#( z0*ExJUxa!7nd~wSuQ;>2fS&5q`coCa(u%1l>8z+%en|1^)~E`a}1 zHYF4P2>NERPe09|Z$$oVcI1NjHujqf=Fee2%*-F%znstsXy>T@Wk#!>w}1Jw(auWe zn#&RJ&IOBz^%>}i1r1A`g7jq#>6{70O^V){6n#O7GN7g2?m$E302{5-6tfSp;~~6z zj_TsV#|aL>qt1mHc;7aHXGT#~|BOj^1SgmDk6^K%ayTWU^pE!kz@+~4Y+8Rn9E$%U z>e2$CmEFqgkM2)jjK48S{_;lfN2a0}{E?}c1I!fOmr302ln|GAtO8Ty0UZEBb8PdG zUg$=m8Hr9L(qu0!#h1A-shki%!OaP$vY0@YJ{N*b49rV76)fI%KcILOG(~qvaVsd8 z90_2<7FNmVr-XhS^ixgab(%Y7AAigp2R+QgQctny*95-g8z6}mp&+&wqNVXakD1|O z&;{XTFb!JNStR%lD5b!i%Rj#VFpVme9Ow@*NKBKQ&1fUzY(Uf#=YR@>OIyJN|5$1x zVwJrJ4-?)!Q+4B{FC-7r8AV@;Q6IIb*^8k!P)r5RWNxUbDhKFrP{Ke;)tgRLGznmEk`~**@QYT>6qK)q$?m>|w9=XIZ?sEVzXZEQ z5ZJb^KU_*naz3$xc3@qk_rYOZ2-g&N#nW{YXxn{gJ9QOe_FC%9*( zQX-qEl%idB2}%_$py3BbHCt~5sU9Aqd+l56@v!b@!;VLkLCNWGr_uh_riB<&`p!A7wePTJES~XrtE+K zlIT>3owc)j<+#`0v#!9f zYuFy6rO|*b3Gs0%1dYQ6jp#frHc&m@A$O395lx|{*%~2Gu59sZI~e;=*Vci-ROkb( zRhxBy?sKvZV91qq(9r&>3NkvsKm(o$tnHA!!|*sZ)nFq#M2r4fy97H=VkFp^UfKyV z6>lU+^?DjH&Gg0}RAl;)ayf{xfNpL%1V;G{vX)Z>N-mwRwu@Mud*6DkVMiYZXVlBR_E*+;>QVr--oBlTk=^#*V0Geqaw|D-n<$fyJL_bG)GDZJa< z1%5dIuUuuUT_P6|*JapB&ov(_HnJ!$1?L;^_5%fvKqYN`7iunTK8j!3;EJuS1d!-f z6{d!F7VzKzAmaT6nyGV2yN;oXTY8+~f}BR=fbD8l$^$d#xuL~`lGs}25DYD2l-n{P zkk1)*vs)mJ{-Wei`v6o`2<8I`A87ae7D%|@-0U0ZEo39C5Cr*yZ0~eX4!~tXa5~b> zt+8M(O;gU)#^gQC@1tf2dT?+`@2R&zk|`+8VEyFxOySSU)_-G0lhra~h1J^pSM(mC z`A_tVC7)alFi-_WB3^bfE%>tUS!abdbbO$Tw#+6;m8+}*+DxfPs?tdtL}{rWb>|BK zed%gz6|GIfia8QZ@4$S)6+B8KnY11U+YMN@hO?<(iN1k$D@xe_=qulnWrdKewix`a z7t;#=UXyUOtJypK5C(*BD~#hdvd6R~#)N@_8wjm#Kbi3&ri1r{Pei%7>`ApoG3k@r z-Q4j52#8`~a}C>v#zOKOul(>Zm=5not6xMrMa*zF>Y5$hCVW(az9P_9l%y{wN#EUU zu8Qp&7o@Kd+OE)dJrmU$R}+2I1+dAoxs!-gdJg-tLS)G~h!j&q@^N+e_#8kfgHn_L zk^`+z?Ouf|`TRO^D06r`YQ>`u%|w2?+E0Pe90-nrf~80$C%*zLV*Ej&Wf78BBbj>4 z8u;}(4!sE}Wpax(1WMuBX?Br@h)(t(^fkP@u5*rn{y1uU1N`aZ8?zE$s^c5lWu=U7 z=5ZjS$2Wx-FO`6fIiRT+{Hy{zjFu?Ao|!&=rI3cAfjOLBia#j4qv&Bih#e0+N__p! z--*~neBFF}H@E>)dvIAIKW%*zSJV^Pt$m4j%+OMR&J5HcVud!&;jN8gKdnAv@a>-f zSz1{bU|~bi#!yy6%O3%TU77}BKN0}qCkhBOkIR1*K!8GkxR@wqj!Y1=vxdFPI9TNC zINS%32!Z&pPaSk@*mV(}4eh7prkBjp+?L*;?zu_*S!a90*p2=-P4Lh1cIz>eh;F(_ ze%|^n-Bnw^?G2yRt-ajPz6=CwI{suFdl*78NoMS(0v?i~vAKH~BYtoAjAm_q+p@Ef zl|n^xCv6zQR&aWgsrYFrNb!;BUj=Y$P*EhSxVqMhAjd}*oi^K3dlXU_MWZegA>KgUNOXGPs<52_ zkt_Bh=CcPdJq?PEf}*S=epA+wtRoOcp^K&|{aL6{=JZcwFMS02u*FKVIUo(&3)$^U z>2`%0x2DCb#LZ+TqXHT|VbMm9$3ajXNE9WVmFUtrL6M$WuOw=?Ly^pUP&8#6Lg9zay&S^BvVL)>xE* zkCehvVI3a)O5*U?P0XO*v^K(c%;#TKg}O*657 zSToR#L&Fw3{nOY+1>FV(-IW|&UHXh@`1q<6z7<3n@U2EOHUb|uV^{-FYa`M&04I{y zkhXw~LL^hy(WTR2VIO7ELAybr#+R{we3-7rXy+d(xjAM!XDzPDX@TNW*7hz3k82XB%29 zD1pJO(IIcQ(%fs{4*As?uSdV7Z_8;r9NPO(=+lP+Q=ZHUT=b+aFyTo}!0@CP9NVUw zg>CoxvPag5JrFiP2$kWFG{L=yHcSEQ5=@b0v7ddN7{ZFeN?VL}5U&Q4FV<1o8dxNi zO!;HbbH$5#K!_?!B=Q!{lUIIQ*#If2&#gz+=it?a1^rpJ-bfXquh*JiA$v#rD3LL) zl4pqFSXTH$P4ETqT1LDUIoa1Uo4^cNtZ?}+XKP{np#~JGs^m>cl2_}$1S}j~$XP&c z6H0lpUlBYE)+Tu1AxQJ_XF+_TiCU~r<7tT(>>a?3+crqeMJ@{sQW7w@{Zj!qqQLF{ z5(qR=+svf4;nt_j$-a&FkK!qjg+3tPGJy6mg$ymtfP#1OeEyQCV*jX85iyC`3bIak zEKzy(VuVgG?5qqh=x!E;qj)J{i!}x~@ovhE z@zDG}mU%+=W-ko)4wb)1`timGNbcy6+xA!8riR$H$FyAC8>4-&3L2@j8-sEKQ1)O%U{|z*vKC#Yl zb7D#eX=Kk5iw)?(cu?0HDCUZU0GYOK&`b&DN+9c{PQR6}Doj)$wx9$pE4+D>#{u#d z>rNz)*6(9`U4qcOoAiTb;+20R{Aabbk$l7|a-u%6XmA#5xaVxEvj)gxAP!p%p2s4i z2|Vi|h7cfv(>!EtK-M_OitGS#4anW1dh^^0+bHd#^*oK&- zq0k7n;diK0LcHs1*i_I2R`pKyCLe6*>!B-+a%xFxX+l->v>7^0Q!sm)(iHtjO(_P@ zYN!9p=U9Jw>ODnKly@qgyotoQA?e=tp-o8#l*w6AIsvf{0;n4Qm1uG+8uJRa^B8ye zyi)l1$oVXqVWOb|p9G`^SxU@`H3+h>!E?TK9B%aNdEOeS*{nimEoQSYOW^X)U>+bq zlaQArlc(iGI=P!{K3;|XoU(WG@#K}aTdQ%Ew^-|NLHPF=zi}IOU~cPU?LhO{f5X`I z{%X9JMHWw?q|Q2t)uV$(xA3>ch)9h8%BH2XB-Dj9>MlRtkK1A`0brMZCVL6i5wqp} zMhM0N^HesUcX3+`$cYAeUmi_zP{4a7O=En#2Ir1y<#l9EDi`1rZyU57c%v{+J&2aDLd@2AUK z;*iqiomK~Z!$-z|J&8Jr5cnM9+Y7GW-GI1F8QrY*Y@oh5k8AxFTxaV;{=XeS` zj7cIgB{gjEwWKo`G@UOD(J5g_h%|>Q5k&~y&7?l0Nk+LXM0a=>ib7VJ*s<35ua6%9 zyv%Jd*54<>5L%>~#sg)t*yro7KR0JIylOvsfs9RmH@(aLzLHo-cG=PE?>~V(MqeDY z{!S~==U;#SI(n)yKltJiYSqO2AnZMq%?wSasZv^hk8yhs3`Xbz=1X6{k>l8BY-tA2h;D;0059oJJn# z%TBf#bNV#uTg1u~sDT^M^P1*XTMfZdbp$cD&YB;biQyCZ5F8OSHh8HzkU%kgaJ<(Z zz?=AEp|9g+zcJXE8@L?eqmg|t-vy~(j`y}93mVsdz=N=R9 zi5aAl7&merFA5x4!OOd zf*28^R;{7k9GPrrU#gJ{A~$RBV!eYNB9oJMlqe<>)jLYmCll2>N;D=D)jLWw@kED; z2amwSQM$}XY;$Vlg}8BP9EoMy^V3(Lz`r?5PTXmelxEVbGJ=u`o^D3bb8?bk3PlsQ zD0)u*60D-AatmG%-$Q(0J;5OE5)6V@kcBtymTFRoqqzS65x+?$^eKAjHj6hC?x0JF zX5zX;KVOLcBqm)76WuD9aF@b_{llYQhl!p@w~A`v&ZW&D>R;5~f6g+% zFeFXSKVzECX*v^D6!u2B1sAHl0UL_phSAF85@t*_IBHR{LW+?}v%Pey2n2VT0!i<0 z)B)mD-ON3N0!H^QGzJw-m{qkKp&ubgMdvZfcVlT>?M0Z_nS>6;dm6tjOx==d(iwV_ zpld`C_fX26!aViJqGUI`d!}+rcDWeL%L|JgZN~b9kKyf2-p{>D52fDLW^RL%XgRcg z?Acc%I9sM5GC8iHL_HP&L$8-^cu8rlz^?Km5Ym}Z1di)-HwueKUB!CpgquDlqd zJoreDMy}K^@JdE>*_$-7+lc!-L;C`ayx4?WwS<{UL>Fji6@YIE{}=UH?MnZQlK$WJ zpX5rjOwbc_SaoAkWIzoK$R&+J1l zV*`!Qmecl5<=M`;%XI7X^7OXD7#U+d9a{X3k|@d-TMZFyTtf@%hm^AllQAJFFZiz1 z$>Tguzs1F#!bri;?$(h$%Q-dJXLs*x8atSy3npO)*!lHKjkOY-;4x{M&g0v^aQyH^ zO;93oqxy+fyl~`7B@;1h!kuvIsTf1LRShjgcCyQ?G-jfxnN%2|E;n1`6v(bA7EHY( zElb>@XyO({$?l~T1CL2@(yd~?ahGYnm3WNoo9AV2-?+kKtw6oztJiUK^@i`&=`d$u zSWEEf=o*d3*$ zJ(YS`F{j7Ht}7O%A$Wwe5^ze<|YsWGpmK2PwL-Yu@32!{$1 zjnZVz-ANLuAJanGg{m5* zSW5o5;l#~niJP-g97Ul#qzam5soAqM+Wl%~*2qG2;}o<2K!Xz^k9-oyQ+yL$ff?B% zjlp?hW}$Gm*%3ZlM&4=580?RPzgA2z?@uHS<1X|SVH=kRC^^Si9t(khu>vrf-sZ(3 zt`#cghKOsWgP);uPW$ZQL0ig!r=r+IWU0o8ELHnXQJrJ^k8HuOVVM+qr-?hxF1( zVJ_sAJU?H(j#IA&^@`@=`G{ip zb-a3=pk7T5N5t5+aH1n3rrJvN59gvcORc9>umAh>bNnEGBz{F#No|#`taSIRa^w%~!AE)T=?g8r5rodL6G`C#YAGdY!0VC#lzq z)T_C?JW|l+xVSu`!5;f$w5RG9Vm{H<+pnefx!X;PNipgc!=f3>9pTgZrv5aoB>mx& z7a~R?@WEcmscUoPM4UNo3v!Ra)A((U=hn)Lgc=Lkx=v12Mg^$Yd-IYeX6|+jJZ;aIY_~M@_dG0#iPe?l;1N_p$ zj~?@c^cuLCAHr_or$^z)PaHOU-C=cTgRC!xwC^^s_hI9 zX*Oo_x20%Nt_BMyjc{8e4-P3GZ}tLGC}Ci%l3aOn(w$hU`{Jm5q@~ANkp2bMB+vKq8-FF?r-Zex_^d;QCouaxpvIwK!FI z3c;bn>GMc@+QTyj`rnIBoP!e|o&E_R@`y!YmwWFKn@PYw^hG2bCjL&F+ry7V#=9<9 znp(FKFQF6(fzmeJ)`7E&{kHsxK$t~6` zxKJp=zoTG*5*9)UFN)!3Vh1Y$iY=gE#Scx)v?FZIP!csOZtu^wu>s{=C z5_ZVn(&Ifb2rGK8cANaWH$KESS{w-0BhGkm0Gp_24-QW5#*&`lX~_0z>(fL7c4z|J z5*+e!`Y9~Vox3!4y9KaR#%@!Zz$niAw$cJcy6nnvnsM>4lU4C_PmTz2PBoBLWf3rd5s) zeX0rGNM9N$Vb)8yX5E2pTBKPJiHSaBP{hV6877_)47YX3Tlf}Tm9MwHM0^nsuxTwv zf`7zG$s2|Bhx>EX?{~Dj9*WBGc$?m2D$4sNY_<+pl(9O`wiRz`Q5{KlW=!9r-vG<`TAFV@?|fW8^8 zh{uJ1?m1n5vs^)2H_&kxPr(^OH$t$0QvxAe+CzGWS34`m6S3$MTW>|Rs=lT84R2Z{ z{D!gv`p^kWPvt7y3jJc}^v0kTE{(E-1w?YiI?M#cBGtuaq29M#6&2^}*&NOnna$)s z_}}oo<8_7~#S|X`e}6dT?_F+>s+xQ|L%O%e%ssYnbp$FQ4+yyYen zT#ONi>MwsH9``UKqL1)y9sj5bgY1?ghSryGZT%={g?h4MKjGR*@6Pk>6~)SK3v{rX(Yf0WQ<)eq6Rbv^DyTZC zHScol6f)4H^xB9I=y2j9c97C}!9I#nEI73XaK^*hphnwawtpNjY@xF{qpoJ>+OzN2JJvc+3JGPKNr4ABMKx)2^!BZg5t{YSxmVvODg z{~t}C5f|*q#e_9Ym|*xEclw@Ok!AF-HM}|C*04+Np0oIHPV!7316~`T*Ism0PM2@z zsw^X$uas4bG#_uooIuK6t-@3I+R*$goZ#591~Zf|=>MTH?j$r^-d-85wIDdv+j=N4 z(JMQ%ymnVs&=8L4FnT~@@I70sKN}~9AC9}B@U1hT;?WlCd>vX2VHDoz!f`qi132p+ zxm)s)TkDBp>o4+MJ{?d&P9~oL={4+`%OSx5pFjjq3eTU>4Gjnsx!A+V)eiWctjsdL zn9BV>WBA*L zMpyg|E;I$fz)6j921j6avhn9fP*lTCD(^7NbaI+~8ls+L$d2&fwHRAp=`sG6f=hXL zqhUE0bQDsR=~WoK925M)jDZ)9f`XkJ=4D|h`cF3l`f|CC>bN-;-vPjY z#OGvzB$AAaE#Nen@i8Jg-)xJ{iY%`bp*kuNeJ|k4N5-8IsKvjAd4Z4Wq+{Nm!d$~% zn?_~?nEP|1%KJlU_^DC^3t3kj#`k?IsY!UZh_`E|x_!@rQbpj; z)%Z^!G=ItzSM>jmCCdt5#OuLyX%wKyT*8uk~9$|n2?u0F%X47Hdd`F@9oHq6`qFz-z z!D&3n_XA|IhUusob2u3eI3W|?N1@6#zGIF{*2x%R9Ar=|_Ym@6yhInf4TLEN52!v;V8*biBvPu&kyrkR1Uci(* zSy5xsh*C><*bED&Ez^kd@u6Wy4&tn<0*&7ArmVSvm3UYY@UR$8#z}P8M0}Ldaoq=p zlBz-7ovVhTn}m|>2a!;Jg#pmdKmW*u?^fFG2T%csE3-h-*V7I7>4PK6ns zUx1&b3O_E+&y8#VLCqKChfuP!mvDaiC#XE|#5XyU`g#NyI!cINL0vh)1n8eWihk<( z9`-|};y+J+@fV|?y9Ywau1nHS9oo(945LUHZNTZLQknF#Z=tt&pCE1LipG}HGol2Y z_h*!t9QdmYGdnL&ImONb@IgV#Vh z9$zC0bBoL#f=!Tz$O6X=Ex9B*?0lsfayLFE)FwLc;{53uo!7>p;+w{2CdzyIvtOVL zTdcKrlfi4)Wh%zD{`qqp_Kv0#Fdc;y@flgI5#aW)mkQ_-y<4ODi?)LDmO}u(9}&3% zoidZD^1=S>7diCa))8Ak-93YkA!;%`qjxKsz$$?Cl zuL=x$*v}|dXtAzB84Pk8aj9{7*gwFshrP>nqX=KX02C56EYJ54-Zk&0R_Nl=@iDTt z;V+REi47=6Su})Pohq2<4K)AprZ&C(4&Vvc-^B&XhA+^X_O9Yn@Ze3>s!x7_Py6*l z>Ae_F9zzMQ{aVr?!-F)kQrd^>_1_WlaTkD*te(DD`c>rPRQ)j11RCk*dit4+F)j>A z#02n&BXt(lIUVoE2dfhH4f#V5OJ@Fc8Ts#y%AcB%9~+rpi}%e2Kz=P+8!t-GR$=^D z*s5{V)~wec2u|M?)N->)mysAv;ZL3Gvw!0xt%>8!;;W+pYg1x;xp%pJdYA&TYpSSYnL~ByZAaF-}K8Du-ns-z4rKSVnvK4n z6$BaZikROd+fXaN?UvW+dbAsmjhN;#4~0P5v5WSbA0P6zwR$MWoVW%PoB!@>u3RvzP$%_`$%IdyQ)+%5)TU~}A?fdW*-Udx(y)a zdiXH98!s#g!9qj(=0+qM+PB`03!VPPc8#H?(c?REyR1kP44WHretQSz(=!DDt~x5sSQtKDc7Y=0cDwL}&aUdRx)s zgi}~yEs(cbz#`T>=ZWE0#3k_qn8_MHcPqg(Ja7!EzLHibl--ulFAN2EXU2TM7(@(W z-(=`zYW{(rKaJ0qo`C8b{nwF~HPV-411NEnDt(Rry69$V8*(d! zRQOY+@B~OoFYk|VQL}EE%NYV+k;e&7gbO3`IPolTp!JxR;YT@>df~g{qztwrJ)3`y z64b5ip9XF!;pNwV^(^P1Z8OzQ3bO{wcQG8W9c?L|iMn`mNGX2LK?O}ZVg)6aau@Lr zWyB#~w)nGHH^Lf&LBehs988||Y!;ZXVw-L@G~AG-=&)n0*@JhcH0%Qm9HHAB42bWv z2ulp@za;hy?R!CtwnNLppIv8oXblAe?OUn+Nt-7a+7D^>XkQJVMjpKnj;XDgSk@|T z{U~6^T(TY4RSI8*_91#zO-Dy1neizt7|Uy%{#>Z*?F#ah^sP%09k8S7E13Vu0ci`= z+%(#t9wyHc7t(h^&LE3_J%Vp1+^kD&6-+YN`BOWS8z(MF(wnvg6&%j_baptLDS zMN3LscuT6KV7KOkJ8dW|>1Lnh<*<5IqAa!qa-_|qnh=L73*00KR32<~P%qAule$&txrrF2Va~o2geAS{_EXhVo;F z;&r^4Pz#?(+0Q=a`GFwF6t(N`3_+=c;5Tq7$P2Do68$BqHtJ16qdfQqy|pDG&r%Yc z-rW5xWz|_PbJwt@S9#V-z6TqPScO37yNKH`i`fNlOMQcLr)F(Xv+(Go)<@~v)g*;+ zbT4@`nSVR)Tftmq4Q34c1eOQR>ud5>B8RuvQR;i*8LQvM^!ac$??Ei&Z6;f2JL1F=cwtY@G4i`t;%pXaGZ_Flb)~D0 z?!tV{J2@9lt*#8;_F+E0Bn^N1;=B4ibLD%;3NnnDO=v!RJD8XzVX`S3A#iSg1bj1% z+v*-p4V8moPkvG^_3d*tV0i8U7&$D>BxdOO1U=~aRvJBNs{^7U4c|^+X5Y(K*o7ws zO&E&tAa)F*^QX`*wDu3k=CqG6;!#W>N;1#&S)Z7^nvY#6Xzi`k+B=KS(wrmS^@j55 zGv{An!^qHNGd?Zj z7tX%w7eXJLz)vR*oq$)h%FZhP*XRqD(5E{3tYwu_oT}iR<*lUNF8_43#B5%ImhCB9 zDMBlrzD{7{AIGHC_c2t;!5^X4#648IZ7lEJT_bT25KaI!2latl)Pl4h;RHJjZ!l3(&+Tk=52W7XlYwQ0$*U|69g-~lX8W?H06tZJt6*x z6lh{Td;`v?iyz`8o$Or>kbqJ!f*5#Ao7AAh1LLt$gY; zng10zpCHmV++t|gsc?-t<#R8%6P54Bkk5}iycI~25+r$deu)M_lP~2euI>v_tP$dy z0(`-gPXf-E(3bhyM^|Q5uIcRV6o$IHKIT8w;cG36tlJ(YZbhsG1R zp2^})DH4gC>eC+VIFl{E+R=BZ_Eoe&9{T~bfEHIIw?1wE&l35#$1Ml-@*<4@IZ-Q}~-18#khWm7D_2Hvh?HYeOL*JK#jxltyEH9-AcW2R5 z3~2cGWT|aRnQ*s;DD2TtZX}rt7{39|C-L_a{QUrb+wd2`UkHC2@F&mTdQ6)C&@o&Y zt_;`XxE{xK0M`LrPvUwK*CAYoa2>{VII81EF=z+0L#jCBI5GV${uus-33dhK*xR*@ zI8MJ;xK~p^V}?W^jzrmLVAgQ7sdQLv1Z%1h@<03J7sJ52>M>x6pL!dTHsThr5^Zu? zX_Fb$CXGMjZ9;{&1#tfZ{KfFsR;j)GU}S+7n>Pvc-?{XDl?IwTf8?TOpEG za$8zCZ~zX~Hv5}4{C8?u!vnPTl2!w-O(3Wce^&g>#NQnJmEmtb{yg}DtP3G)9QwZ% z=h;7m!ydNcsKtkHSj1LLML$IOI9&E2J+3%J;vu|>wpE9#F0*YE8La`l4fu=T?=ga% zXq!qcB#_n?{2AP)wF7uV86_>F?c_MRnX6W=(1&AssbaWM#zFvWlvWK0D@1vvUcO^k zzHK;uba^jEw@a5jsKeKYm5P{i@HEO-Qxz#V+*2`h@sDt_lMoN;4Mim@LI&(YBu%(4+l=JHFl&U#}-xjPdoTFEXQ28Sh{4D&gZL zwapvF%V9)<<9E6rheSc2#ujt*JqrTEw;vXID&Bnn={#(UE;?-MkSdPK6=td87USkPr$XS*mz5TCvZG+<0+($(zfTg>T;@gf|Wgfs2yOBCk9wX;rE9kC79A<%&Ja zdlj}^wZkOvD$%w`&$O7$2Rtr*Z=e7fJq|08051Di_xrJTuRGZ%BB)y;*0e1 zN>K`m;f;D>gjp0 zPKppbKx2zifX2YH+D{;=?+9p!IGqnRsO_;w~l7cm7Oh~4a>avY7nGenPk{HxiDbE>x67VyT!=t9>yxg& z4=6Y8>d`y~f6m^4xbO)?G6EEy;KaE2U|0Cn|f=&rAHE|pR+Dw*s{NJ`*+ z7BpnwbwlF->lf*;l1T9plKy<^+|e?Si|E%t5C4HTS?S>~yz-^6Bsy-P&2F-VVR74d`bajO0?N(WeOx z%6srZ26Q)EjJUjtAPJ5ykn_n?0Gy|k!`YLA6kj&*uP>{8YLQXt$)`ZoEO`lnZtTR& zU9e!@JUYKeyD<1SWSAEQCfZ_#9S0DAe_$Njd9d%3rzZ4zKY5Dpf$s9_eMJ{TzEvwB zz#wg735KsVBb?I)Z}98bH8>0(R&W^cZUf!I@B;K0ynh;^$7MYg!!S2-hVdN?T!0hyx@PhyW(1J!`KPn<2rla#ZJ=|OkSsXVl78Qw84voJ5KC#q$Bi`he=->RbEy@I3228^aB5+YoO zqRTJ~vIqv(_S$mx5Z29msb#CEW$#>$zLLxCfD-bSR2(__&O_W$z_uMrv?As|;jE6a z5UO;cP6PUZYMgjGU>-QUH*P-_EM#wg9Xd__dIXXqy9LjX_}H%gd4rYuaNrs@+kuvH z%ZJ$}y0S|AVrv}Q0#h=rv5nb))L$T17TS9Pc}^C9H(MrcDwHO%- zsIur7UQ-}V0Co(r?LEOum>Vb+?3@tx-a<|Sx@x~3G&ll!0tR-T1B5O&>%fHPGHK(m zn_Wp3E{$(w2>rhUcsDcTBv}q0w|LyFWfdAOz6?xX!j1t$I@7CD80VI5)Cb;!gFq4@ zF(w6%UJESOuOHJ>aSS*2_h)NkK#5=~T5(i~r=0O6B7}kPUbV(SF1h)n_V9^p!qWk%e} zLSHBDOBadj3OHtVW&w!3tZy;oZ{NSE(tp%;Xz8gF;i0UxbEEUeh}Q}jS>H2(eVqXB zws!{#d+_EDl&HYTo<`8I3`t{p1ZpF^XD2T@2{Qr%6C5fH4x!IK2IxHkb@RR^VBlPW zXao;KL~(o#wzzNjHp$0=_MV_b^0jR6UP{u-1O0loj0n7P8D=g{Ae;Sxx(_zD+*L5aQcq%a#Xn%}>D7n737=gJwX%1k&;PlSWQu=kpT7goXhLkTm@Dr=0|ac?FJIulrNL`Ia}V0* z47E=u+NYqr+*>*;_(4N|0h)x|awD;ga0Yvu(9=!62=(;cZb);bD1R!gJZ2k&(o8E2 z>H~$0@F*xbcJ_~o1m5+Sf(z=g;T-ZlOcu~+-%sYDJMb!1{e!d!y9RrqU&}B!vcDI& z1`%xFD@4FckmWMGMuYJL`YF277#QFQQt((m4!VX9l{UVM+1$L~er~i!8psAv+C^ZF z5^OS6PZ9%KB!h~LBB(#h>44FA2Gpige~m&tnW-BU@;Sk8NgG8EyF{hc!@AM_G6pV2 zC&Dkihs{Eu2>aowWmQl*1o$Iq+Pg%hiHC()^Eb0kXX*3PSKxZ z@7|azcmIrX{FrYuZ9?&7KeNK;qtH~p&MjR{dF<1T=^5Gn$xG|IY=>STxc%8rPhO%W{tFRh@=$Y_eFYWkij;zZK55)t}rT~TW zS<)<2pVxf)C@M7Vr+LgSHg-AIxUVht(}YqsyA8y}uO?iq1`3^wl!GGY&pxpBvgWe~ zfcu`w^8OinI!a3ATNUe&t5@1eD& z*Qh;#wS-A^s1N6}X&izXrl-FbeF7#mXkq#!SpQiv4L%yIu+|m=uJ3;WrosrllORnv zqcp!c24Kj+IzcY)4hLaR)Hd=vlt6LU$oHf)yPvRvCmJA1Ar4Ah(16eJ^!{pcP@T^@>7=&7fOOsl2~m=po6>=P{Fpd8*C z*+BH0NA{cVf}Ae)8cI>a0Yw!@L7iHh405mHQmsSi1Ca^+K3&)bjCg29{0$!xMKIJSZt8DW?md65_4q=z_ccxz8;^x! zIP8wfXfwUU@#t^1;rG<1(R<_mMrq>^%({G7?s>G~R2*xF-$i@PIE>-kqZm19VRrDr zAMM{Cg-VpaD8KV4K64$02xjz5dBZRKCgjoxwMbe+QrU=^*McP{!y8Wu_b+PFwZ_*i z0GQ?;q9VNHBuHp}Ukh`D&ci=QFkNQHtJR1kyJ0HScABE^);l<|> z%LTJvWVj%bw)K{m&eLtomk*bh7Pd8=;mj_S78_^i+HjC9mT)TcwTLs~#q2qN@#ED! z-LgkdowgmR^%=1e4y+!@ZD!jk6IjJZeFONk8L-YnN-an0FQZcIZX_V;`&O)M#*kER zk+2IB-zZF~kg3*ogwOY^9FkU^lvWPgKY=3s;yS>cRL_TKP^7Eys3?*hisVUZ(l79_ zFmyN4q)&qvv%4~D4PDD?^%uzta6YzdxId?9f_?8=1L@L~`=Mrhz+S*glxmot>h607 zl4WDYV&ect|4hI*k>)1ym9gUem^uI%e8ypFW>#Y&YuL%kGP4#cS&%4AEbW!AZ@Lr6 za@@GtP#!18&_ZYT z{x9a<20p6dYW&}1H^~AEcYz>Lf_+ltUf!Gvf6N;Qa8M5?i+cGjgDE0Q2-_V+z=ck_bw<@f*m z-}3q7?!7Z-X3m_MIdkUBnKO3Lv4_tuIx0y|U)EWsZtY8T8nJD~IXqoaFHdYs<$h%+ z%M*l>W$=}I(@l4?3*^^DPn2wp5nika7GIwwuB zr$13)A`yi4advT*ySX|;#(m0S zHXE~27H8)-X)R;uwc1Y^!F$(!1W;sdO2)(084eh({D2HK)xK8W{B;ON8mnnSd~qfN zqOI6ZuW)f%T&u&>Tq&>?f$$1X9PAR?iSt!}i_KNNBErClptY z%161qb3Q+8wYN-Ua?W8`ghMk32|rZGGmw@e`ZjN1OfJ8{uS7y6gp$K;$R#3#oy%gz zJiXGY`M|}BvZkA}plxX)#Yqo~`K?Lv?uunt!{sGz>%5&ZZH>TIDZma%VOyn)$}IxO z;WGcZjOJ3=GFF=zC4|U^FI?p4{qj}c(ywrPQxt9*)~i+mi>IA3Y+$b!RYv~rR;m|2 z=v&0Bh}OdAbvvmjf`{m4y$Rt=y>n{7f&PH%$yMjcJYIPdXA-6Fa+UJ>c=EwMGz@EQlb{{&Uj6-iRH-OnoS%oQM+it0Z}uPQ3o+J7#wxB z6QzD5{k&*jc>L>7%6c^(p6ObM{5qGl&RTt+`O3A!_X)Ha4Z8tkz6lSP3T=@% z<^p7y%7XE?^AQ}u{<#FcHp30`k>K4De8!e`eyG&Q@S?+cX&OY*amL$ekVsKGx5-># zqa&G8UNsqDCc}O9%++*TePYolSkZ0{CEj*5F25qirl`DS4M?}zgHTYHNU78KCCxB_ zEc8esZ{ihM@OA0#ar20Jfw3Mp533*O--Bu^zmO>@Eq(>Cf)%eDp}+D{?Jlb>v}-!z zm#M9rg>bB#lKo`LrJ9m#N7v1|(DWuYoQliTSAnd!wMiyg2(meSMjmc0rfeKDqo8(V zaqOe~w{7zU`eF=bQPEO2>vD5Ci7t{vP&TFLNGuJ=jA9Z_srgjmvxpxd@ux->tk@HD zcda;L>`D(89fsHwHNx@r9(637L^soE_5|=_6!EQGgE^1gW`tz+nIv-3U1{^JJw1g;d~5}_A@5w@brPv)LgYTNU`R@F zXtjsit<4>&_ESd?Tw=o#A5ZZSF7ie0(;{DFRs4A^S0VDPD(0?w)b%Y7ccColrr^AG z`%q+Fyiek@-@NrTVeal$cT1!pbgc$!Ce$8axC zbsLH(5oQd%TU%11p3-})2&X-_Hc56VX##iGsCxbDy5XF(_;5)dJAH?I6zJfMzVr2O zJWXey%V`9=T;#twfic3}OkZG( z@H(R*i>QKW!Y_=59gyDGp7x4-Y#+XdpAtUzC4OI$-^zk%P5hc;h~%QrWo6fJEImz_OQ|Yn%<}OKKFBr550)~LY=b1@cb)u_@ooH?V+mNzi_UnB#KhNU zmc~X9tiQ_2_?FCtp_Qr6khaJ!cCGc<*Q(vit5ezhI406Vctv;3=xWb$`(*-#62LBe z8b6voORwQBlGF z|E4no?KNj`gCO#Cpnc=3D`U!@=Y>PK=ZQ4#&Tv{iu-_bxiF=y# z9plmF*f9B!j$k~(_2jXqtG!k8Wl~%^M-&YO(+&$kE~rjd#Y|YTR!syAQ#&y^ji*U` zk`=-gTxtagTY#Uz#DN0LTU905r4mYDiew_3Le-LbP`XKpbRH+2uc}efy>z8cw^srs z9V#?cPh-L;lc|}FwXWd^pi*!Pd=@R&l#&$x)|_&%OUvascAl8?oyXhD#qu_pH;)dR z!rRvg+d7q(wzTOypIjm!Gk6PY;6mPFMG`ibw+*~GY)^d`5~#bsE!@KE+Ij?9pqfhM z`|Up_TuEw^z2uJHg^n48b)@?b*|~o+CVO)Cwj|?5T1P!^&EU=a=~T1)@m1HF}~!WDxOp7)Ove*ct&IfD}B^e5aQrMK*mtXg(Rc*~Bb zq?SPCl`rW!h)!k^Rb?JLT!zVrmhb!}h!s9|VoDO*Gwj^Z zv0UmVG!M+@@kK}M&J7}5G-ky#T&Y@c7ClZj#s?ZTl*@7QjV0>CONbODD?CsR@T$f! zqGMrq#RG$kMb+>v$QffcAjWLX5p`zkk1&ZnN>@_9xLF`;GE~YaAYWA<|4_a+<|yoq z-bDv6g8|$7C$T~yNrfQ=`dySX@?e`){Z=iDQhTner8k5yXv#7pa-BfIw#uqmxwgqAfj$$INiv^0Lx+JJ7Pv zY&3iqI6~AKN|P)QjjcqGr%eape#y+G33AFyN>yhoOC~fc>Pp~~S*A+}bviCZxy^GV zzq5%ak^3yCpy0?Pa9{Zej)dYfHr~eg$ZHQlWp(H=p-78;vr5G0H)$P2qMsr%(Hy@A zh?S)nR4((WqZCykgmL%<`Zjim#EJ^*oJIcTXh!njYo&2VI{%CDM}J3I4v&>nDvjC< z{+AF`TTW2zDuV8)EaY)}36FI*^4PSRh+7D&y@RmY^@P>du8urY2caU*%kwI8t4*0T zJz~eD(Z~+h90LtjLt;MEBHDu@Z~jYpFIn#y@`Dl~|Fb+4`iA`2`-i=0UTvFx`xWcG z+VCQUjm_x1kIPC+)VXva1ZYy*ixh?k>+Ka%YxjY?{o!RtaTfO$8}7Dw6fGP8pF9p= ztTgbdISmtuW^8PZBq?!(xJ6z!0i<4r;g>&;_1QH`l`Ns15@Kg0f&KP=j3+pq48Cri zsZC9!ipQjiqF|RUSRv{gdRe7$UNank0qcrQl*VK)a3+&C%F&tQ<;R`hgvn8%w5xUV z5vF!+?;uL=>&YU?gzzF#im?KMFJfxxBg^eQh}Ai+l1Cr8E^j~ny&lB^N=dW*_;RYo zvSWp}zSdJmbZxq^Yppltw%1~oc0}DkCQdSkhnShco3UKmlonX;*_ft&M?tdKaO17l zy~nEsolRJb%r$xlrMMGk(2fx zrw9G@C(e>zG@EDhYmT)xWaFJn-AQU$fH(T!-gYycRHQKfIH`ql6I#WR~!3Z*vs z#UuPxUVG{#wr_;{C3kaDGGM8|IqsqAt0YyUcxZ#nD_pHbao46&j7aDVh1r}au(Kko zJ)yTZ<)d(y18o@CE%L_i%(l}@Sc$sD{A-o70*4t7UBJQb(A%|#V;(X}iL(?e>JDUV z{ME|qHy4Sii)Y8ZVo2s=!c@zBLgeqz5VC=I$Z%Rv?UI*8J#n>>7nKhX1&aM-xKUvB z+39`giW-H2mm|R1Z=r;y%IJ!$oAU0b9Un3VmdF@b;4TxdK!glXc%(BYWf9jbEfXpBWCJ8oiS5) z>0GO3pUXT`=Jj9}6jqdL}v5(Hpog>^qAZSz9}fBbCfi9mGkFBuK8=$y{Y zA`RF&yD+>Bykz>iqzZLL!wd<6V7^e(1`pQoK6oyR)6yrs!P!i-@%341*bf}$W;Fbb zG^H%{9!>_lM}R#q3+tFgniHbLgle>Wdh}(9s*znF%y%0m1m~-kzGOdh^7(aN052}q zd=7A#k_cult2WbPgzk}y(6t9QT5aC)*dqnyS>|-LE|E6)We~bG`Ef0o2$YkNTBVUe zKlo)Q!&rful>|MXbQdQ-vZbCA<%@ER;~89RxSU}w!dEO!ZDTa_&up;~i3v|FB^)v4 zP9`&9F6~1834Fly9r6a#5E57+a9n1YFLJ|3tsbItmdWNL)Gb%V$T-N;^Me!Sn^SS1 zSj9-XS$Q=uLTI~WQMXR>OtTtUAK zAieo32Lve2s>u;K%XF8;+;KLz+uI4pG*JxM%hWG%TLP2Oj)E9{g@m*1AQ&(3>0CYq z2kV9NAXNsIj@OYmvG7@ni%HX4Kg+GV)*%|MTq#sr){Z*fnK#uTz9RZdeFHh7AS0Mp zKTA)26XRwsxb$uQQeK%lM&9iEBE5!eGO%m1tXiK7N%3rIXq(xxVI?{r(8?)SGhPF6 zcwY}ZB2d)5_WIJmWgF))x7A*0&-2+!{BTk%Nar7e^{3a}<#m}CM3#3RcNdyxQ#fOQ zTx9P!vHc8%)OOm3a=;2#b5Yh9NhuPg_*Jg|Ri*NB- zrosZ=z}OKMs#c*2RoBU58IQ!gdo{0C4ZdTNb8nfM#>f-4kgI;XPY}wgW~nQz!Kc2X zE6H({Z1p60)90Rj4L8xFxI^=c9Q6nILci#-3RcjsL>0z@ z(0(JMW026UM@;jWkefC9&7dn$ty<$Qy)7Pi3Jtf^+#&#B!r$24j1EN&3 zLlV6Zz?j!rkHn{SFjVYm4YHZ@2JH2$EuvwN?Z~lgPf29_4XtDF+8nxMO?K|CDU2Gd zw>FZ5zBdd*ljY7VmQ|HQ6g!%AIw}YQ_lkai%^fe|C`uC!(I<^&&}IA|6fH}FFDg3N zSMJBURS^+sDPHxkR6Gvmj@8_5m~s0B1D%C~_JU@d{)>Ami=U zaIKBmBJ~i8jiBmsdf6JT=@z~IELb7d{MjV=#)aalYY^o)P_nHY$}!_J2HT2nn4ZFt zGCnVicipC7u0u?Fybv>fAbhV-ze;M!-k5v~Ny3{}x8A#ljy9+D-UWQmX)CT;Uc#R5 zaAllL)*`dU*Hy*G+)pOSc^h31XsHjuPK>YFKnWM$MoW6Ph#@lX@pZSU!bQX;Q?RUc zslQK_={`OWT*>~89O97x)$jBRbS-y`-yIbdj_kiBW3ydTcyUspb@?**1qvOq%sd>5 zF#>e+jhz5gi@f{PFy~$L6V^=Kqk{`Xt!|$C`7t^=sew##21fTvIZ>k1IeN+QA_B+T zWuDyt7Jb8GNHt5`F*2%z`*69y=Z3>it_3T(zQAZ$Nrmlc()X)2(&x)@@VZ)lxAvfu z)>h8}x@LMdNQ+GX;XQQqWczuEEo+nF8nv4!33s5T3dreC`(E09z$yi;UW~ zG)dU_8mGy0J#<=!acoVDaHC-#1a;U&iLgtf;aLLIZ|HOJX_8z$ffrB*Kx3*N(%(|5 zE=h&-x1hCED{)P}5s!6Y>fLNnF9&a~+W0zWdz}nl1psPpO|s?r$+7g|QYhq%rKy9* z(j!h1avCRN=`I-m;IYIU5X(@xgo~|?jFb&BQrtSBwW1f_*dLuyW3jE{&MhRnX%;N-BHPZLv zV;;f zvfK1K&X$KBF*y>7O6|dMP5V2nrj(Yh-NF-tS({U>-6>@A7ppmiM2EX}OVbA*ue6Df z{9hroRq}t4{C9HmQLNDs@z4RHX+6=F@f~PryXm6m;E(-Q8CDo_tRoxL3iIFZcB1aFq}uP~y&IW>J+Wua`f`;W5ybhf2z0NVzr*EaLDRi9)oydQ z1=`jaNTEH-7J)(*gQrF2`3Wu5p=Kg9cyaT|)RM^5@2i^-_$#&w5;B35@r9*htEWsY z&=DG?B5#H0;uE5L84k{J)Vs`y2yZG^FBp6}hpht5R#sYd7AGZex+>=xkjM_o2v8I0 zuTu>lYNUg@ou#Roz(PldZ+Nthd9sZwqLYmfJIbp@+Df z+;nj+(aS2T`bwLfh{ERKN1+%WHwShno`A*qXDx^4rAl2UB7 z;u@s0|3K)Q_QBBG=0(-Ml?7>yP%bz|sydI{g?$^;Dtb2=s5{sd#ag&Z|E$6cB9>XE zsF|xmT}zmAj%v`}^wt@$lf;@MK21JU*C!ekeKlPARHsK~bpB`xP?g1+M}ZxB1}W3Ix7Q}k(1vs0vFmbqh|5_XpydJfy~HxNCZ z=2-+gE(?0AhpJIB+EfYJ9mP7lyYTVa5oDCKK*V z5fKf^3?P#P?k79wDSev=TZ9nyGVjD?zOMZf@m_>~C_?(QYiOBh1MX4MhYzyQS6fHWAQOhQziQ#C*yLhlkwmLZk`Z@kV|&mh|>2l|suE{Y+p4VXx; z$F#24SMlUMoX@-)61KU7C0dJpIaqK+#cTAFg~8$4F>{+fP96IbrXTD*o)%u|c@oQk z`vAuQiPg~?9wCPvIELKuk+mn4cOcl%{;7{l%*pD#JxIY#IanC@)bI6sVW88*iGfdj zUzCVchSl<1dF?9p$;4Z3G}KA%Y@f`E%unIa>*B1u?yCYPIa9l7d^wYgPfdSF(-meB zTV(CYp;WOvxeMJX>e1jh>qIXHYn!c(3G7gRme$;n?)E$+hvQ;tJ65w2K3?d_33A0; zY3Wk61(HtOEqZL$`I9Jh^CEAfH^y}>^U7uOSBl$Vf}nT zKM(R$7HpzmrzAD=Rf`W=@#k3Jlxv6645zxCPZN)h&kjAsi*@7bze}6GfD{+#3hp(w zpO(Kjyi>Gj;hjhI^Er7wqkq#a)MV|${oCvli0yYd2PWld>NrfiMApF?~Q(|@7)s( z^}VM=@8Z2)!$^mUR`WSzrzDB4;*~SA7nqY#t~$+NU*7}gCo=T55xJr-7f+WCj9y5H zt#SQY6Fw(jip=%4hxK=KlmI^=HFHJNlNp~gIAe*GjNeCqN>Cwsh<7_AF$1%d@96VH zN#(n*3S#tB6)d*8ZwqEw-Rq6e<3u@?5@9U*5RXc0)@|lkcUK~q4MnHTq8o^Gh~$sn z*7u$hMSLZDx$ELmbAsFrG1bgM5=*3qSc&x0b>`jq4$vhI&=W$zcr6X6J4ST019X$o zFvNMg)o6&LjwSayjD}C0H`8c{Id2<`hWDJe2Z_sz?YZ{jD{wjR(GlKfJ{8WO_rJ+#0h+`f`4xwcG4fQA!O~&Y13Uz zGIDyjLybafr*5vuwjPSnM|H#7I(ZF;WJnm12g$unHw`OdSM(^KUAl8l5z2-35a{HT z6Mc^N{x~xu5pL@eEJkYD^Fl7V!*QKM&VcSFMH&rWP(?Z$wq?FpM}{QOdP4AU*%~R7 zCg02fW^+2~_lDDWbC?LeZ<)~=;7uZZ2UCiR;~M<}J+3#lM`NOoSCF|2{2_{fy7HQh zhT}{ULZp`fFt)qFE&q6N61{Cg`UGnVJ;HnN%Er(>ej_1aT_v{uX$}334_ExDUyx@+ z$CpGxLe3J^^li%3jwg)pHW}oxjLNW%b0C~LhPO!_qvAKu78IN!smSFlNm;JuJ5-fk zZanV_M}#iHQ4iyQ0fG{LIxe{wVuk#vCZ__MKdSkR%FxR}P&?y4$n&?NaIzja3fZ1-l z)MK@HqkrMU0w~d0No9oOyMMd~ zvz>ek9a;s`jpyg|#5~6KIXw@@#wOw*bI|=T6X|OXR3bPyj&GR z_18F2BziFWklk&j=D(ewY>jU~A34L)47*EnxxxL#ZX4EOrk|zf-pIC-j00ynitA~b zQ+(+H5xmgWV}QfGNWC{voYg$VI#CdQ^g$s>w|!_+x?5AZam3=-&PYfy%4;o7pvP!& zxT@1WL19%H_A7O`uvi?|gWA^5)|4rQu}d`{T-e74ZOsk)2YhVEl1gj3E0|tbi0RWO zc{+N3w^M+%Q+N&Z*L${_*&@Z}{gkB_dg1B|VP~rt&e49YoS}JoQBN6E<>U!dx#NLYF zIOok{jw&y$p5nl%QBDrl&V#_aOfz(R)1CHC;d3k%dB!919K?2${Pqzd&>fXU1P4a4 zGzHtp=f}56j5C)yQ>m&c;+)G)0dR(utD^QNs0|{*o#L_44)x0tDE$QBiiF^|F(-j^ z@N;!v4j6T}c0NZYE>3W6lNU8^8-+Zf!zye?Y}^iSl3IwDtPAXjO!c-Fd+qks zuK74J|F71Gk?TiP4`0sm)APF*h+EN;CZ}nuM^ps%jBA?MjJqBj2mUYo@PS+Uj`NnV zIY3y8YD@-Ac7l8f#hC(+IC|KnVXwl;x$Nnx=lBgz>9>h=&M0JJi1cG(2A)w6PgE?B zWHt06B-3j$3|#Rbmdla(9JS^Ycx_wnz{`$*;?#oUZ>k>HfexqABc3bJ{;_8t5sy=1 z^po&76)wu;km<5O%f>4?=&(UfQ#NLaf!|0VF_!;wr!3fI@p-nyCyqfRBIou+rg6M3 zhT5ZG#gWSJ+)cgs;h8^wfW?Ej`0#Tuf05rMRLD^aj&#*Ry`O z!d5r#0LAkAY)4q_mRB9f$G%fC!h;76Y|`XrHqQL_n&Z@Bo#<>KpZuve=#NhJ96K1e zC4l)U_YVwfGPBqfzymBdE5FwDF`gvm=KAat& zz2>p5PwdXFn>doQhnUQ+_uc!~jNqbj|9YHNafz>QUCLrEg-1ue+wYk3dt|d)4EcQ+ z@>d!k;g>t|crHk~9>fY?Z1?B+<&h(gDe@3I{dr=iKTquR=dDg!=(i6v&-d#+bnjp* zeCC}QvPrey`eSW)*|ES&!BKfHA&0Nky-QRA_OfHxaTK|+o#!|%F750ZydNI>^80IiH~`K zxcH^A-K!l4zG<~)&I#y*8xOAJR0=8jBUfFY^fTB*GHa67Tr)&PoA`Vc=vXs8ox#XW zG0%*6KAp~6czV@i*j~k_SZ!JA#YWhNhylK0t2cM!YoN_mrIo88QRK%yw&SJt_&wxZ zwo6hwcRh`^HhEHl!^`6b%GIxbNw+(PnX1)W-z%H!8xL#9Rob?5h(Ma|lK6rC`1e;{ z-=`EqhbP&_$5c^-*70YJhs*tH7#5fqY1AAMqDiID#((1|4C_p_hr{uXg6+mj1$#8+ zk*ONtf-}*^x5aL+&Qc$9`iM<#JZTte5))lgT^?JCF1mu=DCgb_&NL@$Vw9`r?sEuX zjxARmTqj?lK4L@FNrfeJY*=_!jD7zXCF<0zi>pAkg>28GtMse;$|6qHtXVE|bcs4! zBIz66>XGW&X%rT}^c3Gr!=-O*k>>r{-c0u%oCGfO=9T#Ht4SAIGsJ4j#0gWZ&kwA1 zlnq+1J=^av&)&Sdd{%2u^GAmL>aBa_M$X9nDRY^RICWuBV@S0c3-g}+(S#Mu^Q-R~{!=R&+O?^i*FFHhl|L2HshhYQN)N z)a|4qdEgB~-Uu8D;{VNO-{}e5=`{npG|ne;){eDbKJa1J8)pT<7n4QvEJ5nx*cp)p z9XkAJ2V05K_}&Scwy^f3^`rDYwFJ3F?UE-?0gO6 zhpYpjDm;Auk5ufy2ayJi_Yn5Od+;4GcMA4JopG-b`h@r`J8l&&WHcP)!ycYVhq9*$ zQ>k(la<$HThI_v6S>ZROOXF`i@j6K&?;#~#{b?6+f2Ab09&eN;b@C;&cm5m)V7|ZZ zt~q#+vu^bC>JV!K#%MQ}!kt$8;&14n`09RUrCp)gPB#}E>E`wr>F;@aA`3?zT^gC6 z3G@Eu*T7o4$ct;xK$^g=^H^W^X6n(g)h9JVpDy9ynS!FW+TG&k4VJ1|ET;oI&8b!s z?irZh35(e9< zv7ydkOHc+THb(n&4E~?YQ8@hWD@J&H?0;E{z47p@@Fq_@O^UFK{gyXwx58z$ytZ^H zJ%CFjn4|CXbJteP?QWXGsmK#{%dJg%6gNzfQB40Y>b@>q=nWTokjt(%k8#1@Nj>>A z|HW|M<}zn zC+z3S;4IbUa7?K}!y>?cKS35lI^PR+X3&PDH1YXzV zz{Q(+OW|l^n?Eq@mrmhm$Lu9NY^q)r_*i`W+Y`cAxvuCjzPSv+(ig zAix`}r}=~j9@uT2xME#;^%WJoa#vwsmDil(@V65=YtN9;*d1Azq8Z$S!r;ykc5!-a z0^T+UMn3Z3DLjr7D62eSnB5YOUF!|sCFdCPUP)QhBTm$fZ$1GzM3_M)ihGts7GBJ@ zo@TPEuo{kJ`YpjDR?SC4Cc0uS_VfFl_|Wlk^_ZKcOtv6N--c9I=^Dp!a&sY}b3qRrsyRIUA0V zYJB<%Ty!kr``ErqNEyCc({}++Z(?SHtm#SSobIte2(oJC{L1q*Slxk-ggF;zvc4i@ zC63B>42ZnT6G@PD@c^>oUf&&_o5e)}2vf;J)8gG(Gk`^SEy#4I39GT1$6D`oGC|Wj zORus{%vAbx-W&5b98? zB{Ph##Di;8;GkJ+kC%-90nA&#yk%Y=^I3Oec-Wt^lav=HQVtmu_tu(DQjAfLAq?4g z4f3*Tm80H6M2t|EBUn|~3;bLQG{LEQdA_!Va{A-^xpqOaE+gbD#YP>Z z&AszNd*Pe7|GM^s#~zx8-1Bjw|1sP*A=9jsBi<>}k+1dyuJ)QYFqZTPsyWAgRR%a$ zhD@h7hF2V&cthjdF#o-VnQt#T%EW)xu-Ifqj{|nUo)R7Cvrg|dNP(jr&P6Udde#C@ zLQv?Y9IyQiPxvkm1=`;b#$Ys{CW0X)d*;>NFaVq?yqc#sf!9i>XAbLardKx7OKT?9 z)ePeb1l{!*H6INL*!`WfXUN9JxgsQK7v7s0nR_qBdYy7iMCg}kzo`~p?2;p%DR?U=tQ8-M_CZ;jzal3&xDYpe zFbW_2&_SV0qj0%;SH6pmIkn{GzGG7B*j~6!;`r+MnABpE;|k_f$*&r{QB-|spfM9# zh5_O=@i7u^y&%hN_0be6QRFLF?hB66o=nT_16&sOHz$}@4$t?UiqZ|IptMk<)F}ts z-c%t{{!cIKmV#2B(QpkfiELk1j}jHlCPcSI{n1Pa*uT?mJ<&-rP871zeH|$%^5`+X z?Us_NG~nWI+MV^iVrjBzHnUB2N(nk+;?+IpP=SLiN8e`Aw)(Hh~P24O4l2nOHkDO2Ld$mGYQyEfyYf z7a}^g<&XC1*ys?*PL7F`r?9aIhtb}W)}kSow-yb(p|xlj#xMt|4-Jqe=3j62EyfU9 z@ROi6)X;53e^jzXOdP}$!;s_py0;W_n0R%_K3+H%%MBEFivZ;klx{Uw(o`T;W|yhy z@{TegQx{?mb&UP(ZZ;#Z!2ga^t+n61u=W0g=J(SpTIWvT7PNQ}kE>s1gnzB_Aq1D!izoDdnv)^OVqnytWQ6HgGp^~X#vc!BjgWa(2GBwes9ChFGa z0o(%xNFKKHnfX*YQFwEGVNI9ZvvX zk^kD2%-I^m_B_Q+Y{#3e;Fk)PdCid}>T1DEdiI%dTJH3M8n2moyg4;!aQY$5>XN}!WVnT%Xx--5lUBwqOma6{*oL7kcS~z3>Iodi>=iF7~b;Z%Gnr9f>=?|^i zx~N3GP)YVci`gf}Ck(2NcP*8X>^wW*d#*}+`3KWiM9-$Z5_n>9s6SfB)^|Ts#kSgsXdafFd1Lpl;EMCTh0<;pXX z&9f~e=d|Tm2U~o+g|{8kPrY@rZ7L9fUexQO)!?D?zu3rihE8;?ALFFf;9)GJB9RwJ ztRDU$o6OrYT0;{_PQKHnv~Ar)RR&s(hVw~KTJ0^#Kd#noa_SMB9p5H6#Uldiyhn68 z^$~*~_wx*z-w7M2m^Y8CNv$qVq&5En2EOY#)h1( zQ5G@Db|>dWoBz=H1Dp~&{@t;p7V2s^K-WIlkfaoz)wp4alvFlSBtc{IoWuo zr9{1Tlhf2^+K!!PNJ_yzC^9#z-Pw4Gwo5NQx!8C>q&lOaS$|#-{DyV1*l75T{<`@t`Cmw4N2W& z6C?8|dHQX^2OM;ILqdd@uQwvd^+x2YZl@-b(eME+RJT);F1*u4j5*fUyIl4Z%&nk4 zew4#Hpl+w8Wq4Z;p{=?ompPs`#PFyzIJ{MtlETLvlYS(ybb<-i%NXEf@?o94J$Q|E z@~fCtoxEFiFs1V(I?OI|jEzk6r;zj~)s3mQ^r7F%SPO@wS62r1;PL>m(bg!~8eKag z4Th*T+}bH!g9b_m#5#Egrb_A3UU!PQ*vYSAE|tb?eADv4L8D;>Va7Kn5pSKmWz*Hx z$y+g#IC;Af8bwfo9QIB@1luY!ztM9r{tJhs9`>VxOZA1zE49C445ge7m=c}OJK_0n zR|Yh`oVnNIwKAMCC+4fpBZU)wRy-o84yvy=QD3L3)=sGvr_d}1vP&nFZfk_@mtOdc z4k%G)e8uU$-$-;{4G!n3t~7RO5C?^LNQO{l*i#V+3CqBANVrPLoYKfnVJVSq!cx>X zVb7XR8V#>g>p=+KfC$Ndf@slGYcYl8mjqU5^~+VBPBx=F$`btKilYU>|!a6i%3iqS9#x4Xwc1dyw~ zFwxu$J@cZaPUc^jwJPn;?qRYU)Zg<5)6(>wrFm^^+@M0!DYTy;|FD71TlIfq13k(? z_yiIDghVq4pLLl7@kw-eX`lpDV&0QJto|(dIPF$ZVKjV?yb@f*2#FmgCN6Z++4YTqWkO*Z(-RQzt(6izW(gJZ4k(_~e0wwW;L z|Is^we`aC`GUSEBm&Y}KoR3Oe{6DHU@tcTUSh+f?C8Eq|1sEY@`Qy47+Vqr1-vMRK z;Wxp)W%f+@d`0bE^%>`v*gtm|6boc$+Dz~rqv2P`GlR(ZrO`shc1IctKP2R;4D2=< zf&j{Nu*^ES);tYUyCG|a@*Hm5dmS;n<(SNGcN?Jvd}51g@4?>cy^J{r{$xi)-f6}v zd6&lv7a2{K`OTq&ww`BYWC4wj5c)vXC(07}t=kV|pTOqe0ko(XyUe`JnE%)hl$C zqhY?1YTn9ut%bvKq9UhY4n#=w9$pz#^BBqVWDr+WvbMg~*ltv>xUMp=KX{d~eeXPC zK3Dm7d0He3}7owR!srs`V!K$d9 za(z@TKp2F;mp~wqWk0%{2>ve-0a6{IC8Z`&NLb?#9Zn|J6Cwe-uBlFogyfA=lYa;j zto?DHEsS6YjKB!3Auj13`N2b)9Yj|W=1xe^BCSR74Hlm_FIvpcz(LLJVH$C+)@k_D zz)^D3i|DcWGPoir9|a6Tsx!%LglNJ;aJtgM- z_nWtyMS!%M(`438F}I@Ad=<(hW!KOIKAsmr#M&uMw;{O3d08F2HT13#Ix2l%Wc*K; z>nX!%I7Em8a))_t^>p23?tPI!J0!BWt>tp#@lJR1`|hv~ig6^rdT3mW>Tw;dM&$wD z8GcAh?^j4cRqa}7=%)U6I8G?uCBMj zIw-7zqJN+^2@)rgg`Ov9*FZvFo+R|ep?8uJDTKZsR|``AO-UjTcZj_1>&<_0$1eC< zd}wS^=pA#FZk0bJfR~mw|HY%ej^$N%}) zo2~>Qf~nX8>E2R|aQ%dqwE6_D4qbD-7BZ(h-QQtQiS8F1Z99ZYciI*A8P~o|DW1J0xqhN^3*v?HnoZmQ@&YMyP_i#J_@y38>kkFk<2s zH9^Yts7Rct!{I_DL zgmedR-Yd^b!p)f}jsC(VW>@51xjtf-sEjsedI?)>b|rV~>yKtLGxh6aO3PuuNCG%? z^Tfv-Mr-@Lq?0N7BpoKdsj(qV)Ln%f#Xhz<^dX?FAqmK7XbN5wc~oqSjA!=l-Xf!0)W=&2dHu(?r5M58Yow&c7Kr+gTYX6MBT#l@&3*Cr%AT4 zk)rY&BSAS5L`IGGrwh4a-qr^F;*zTFij_H3YzrMBpC5s7{@(NTyZw-aL>fj&DtCM2 zx*Y4|>Fa%U3rA4O{<_^cF~j=o^z{@wf-?5keUQ`WkGWf2uGxWC*X(wB$@S`qkn|GH znAeH+v*FKlOVI|{-COkSp7T}*$6K|xaecYHz6uqq7ZdRgluDe#SC0VPg0Glmhoog_epY)g|@NWsp+5i**-q9<6yR*fDl zGpydfo1+GTbN~{2+v@FMJC2>GLQj8W>;*}S$!fP8GqhX#_nmVF^jE!O##V)M5oI?D zVlhL-lAuLxr#0ExeH3J<7zU0z8mX+~atxiX)ih;hCwQ*;OMP7Z9lqMI8p!&1RKLsm z(%9a{)`ilPLqsKn8^XCFSdR-C68Qw_K^mEpjmWZ%Mnvb#D3s0lwZ4L7%DA_iBI;^B zB>Pu+i0rhTzeI#%nNj{`vB9=;^I1t^!C$k7z1OcXw~4E)jYB$ zYPW$}+Z<8;yVNag7gVQ*=lCLX{E_heS2Z{bzu3A|FMQKTSCOyO`h!B(cjvK&rzw{WW1 zlLgbHj~JoleUKL6BMXm<)p2KN7pBBd$uGk%7QQfI3Wz+N-MAW>6-h z7bil2IUb{-T$&+=QLpx)c&HF}1V%$Kfxm48H->|K@{=d5iEIb z-ozO!zOE7@gqw`3W;(8wO4NTg032RfRcgFF*Ai{*9_mh zFe|&UalvV_AlHrAC&-1~7oV*Ah@tw(Yn;+(Jt@$oXcOXF`QM>8aH z#ioGllHU{E5}U;ShnZ7<(y4B#+99b_Tf1zJp|Nq{vgGCtwqQHdWjKV#@b@VDXq*+R z{<|up?JC;RBmk_K7#zmnY&G30dNA(#X3cTO%<0Q9+^@3leTpywRu*KL*V*^(aK6U! zg)Qk76dZp>QmJ>=(u5WEy-yDUII|yMg9eB{Bl)TH{_vCZ9!c2bB%Djmh4#HK@O7bd z(GqnC0Q=s3ygy&ZBd@JQwdtVt#Mf{6ia*oDm-;2ItUe;UUgyisn7IMnLU3%s_XR7H zEuxio!r(4b_W@Q>5!uA$1723JuKL>UI`OJC($1i&!$1LNUSAQQf>k|u`jeaPlEDik z7<29TBCpw2re??|JLieb5(qg>x}2ERKZ z9khmMZ#9yIb$5@P;+`X0@A|t%<3ZL^;WWt-sD5+=4N=*M^e?E%VEO+HEsQ8+Q;8ko z%RoQB%$~yG^YhBt*=?3y$&5FyOcl|VSSnZGDXmv~I%CSKkg;#Kar-SkwtZDi!e+AG zVXpn_ujm?`&Rko(8aZtfb8WVILxNY|mY8twKt7WRH;)wJ!tTgx(tu33k>cBI?Nv>0 zpAPWTqQ_e^pzrRNg3Tj|Exu(~M{+MGP9QUwzXI>BKT}=vJ9zPFE5lQqE$O%SN&n++ zPNxY>KiAP=rc@bDjlFKaB*&}6DYIu67gw^)?p|PinBNq5*E~S98X_5;t?!eL{U%{p z;)n6cT>TiM#V+Csy-m2K%(UCtV<~V2hs>VM-Aibkr;RAT)c&|X9tRWYyQSbjinKsHRbK$q5*gFxV^)gE20-LUiv~alA)P|Y7}uH z1XGv0-pijA9}2AW;VNb7P=}D1P1=jf)GN+=Z}99gwVQX$2FfBc^tHt5*L>rUp+cN7 zWZ>k-ZaH3{G^?l@mpb>hLF;J$i7=T*-0MyPs1+}qXfSRYykwQ2S@Hq_I*m@TXjfU&!!Hq>d z%=9HHKe2wC`Z@UTCE(4`#;&3sq>xMr(6x)ruTE_&`ui$eP4twA;fMM`nTX9k$v$)r z*{io-5?+4+HHyXBHiS$Ph(uaG6rtnkV#tkSs=I(4K>I;#q=PZ$n3JstOh!E?dTCzb}} z8$7*ConW|P8xj8y1S_*#ob0eFy{-x|Hn_H`Ls-BVBxmiYCQ|eW0$(>BJ~3lf7gp!2 zEK}n7SS(tM2DxEntC)v`r-@BTq)|?g$ELIvdR$mRw-%-i4R7$a7UsHI3nvY2Ej)+M z>8*uRxjeoQJ8{z0H%ki6J?yJ2sCmU`7)l4Ui`pe`bUQA4I(~a2o&Zc_mj>+Jm}>X7 z6?MoY8@pccQIj<`P`%7v)DiJ%Yn5<{rHx#2A`fbeE*OB3I25b9F}E&>l6B*B&~tDa z>3$=yd(CS|i3KyILK`2ArQ7;VW`3+fzK%JAEq1H?QTo*j)HHR&Yk2waV zz+(nx5!#H$v6yjBb?yo$A@(7g-HpW_eI_MR>?=`|mN{LX>5{9q|;@ zbZq<&?#}xJ3n2G2ZGnTeSv)vQOwQ8l7JKSqYg&sv_1IFSRUenzj9TW4D=n+(Q`+ol zFtNK~Z^1cC3s)ecCvck@o~7*^I(Uh6-F;I^!We z$2#dY?!Se%xNh+Hm`+N<&VD4lT0EF1ItpT}8hwy?L3^mw*v|ryizD~x<~YNurDviM z@qw$HJ;H3QtuRfuaQB)&;-F{dH|U=F(2=LUSIlZR?nYWqw+=4U@ z*8;7Zz-ny@xkc_(44!}!D5?sKm*8EwugnCnc2^p!~Ca!2S9 z%x-49%p`&}eYJa4xTYg8v#=)BUsG;(HNT&#jd|Ry1zEwl3F{$byM=crCLOn|662X0 z&r6sPrNiJ7?U%3uN>`x`0PC-CcKW>750j!c+k%YiBdQlkTWo*+AdU~6>A(DWX)U^_ zG#$<1_(ZO6lhFG3jVvzKi&*wf(r!kTvH+51drUlKPLulvRp(CnMi&(xj;N1gK<(!z8xKr2HNr_Eme;C}sn>15SOZAKNm#Hw@D! z-|*FmAD4jXUDMgutC$QJ3VC_$mO_%uZR1aQeMU zUeunYPQE^L*s1jNF%qh;oWZ}ebcrv$j$q_f7fIDbYUA#Rg7MQCMuxtsDm-3p+S**? z|M3)lxfzos?xVt@9M6WePmoMjp$8e(8yp{ps#*tjhE1%*j<8ak^16 zNDuy%kE2qrWfeYL}ugppe+k(j+ki$MIFHr+WPGvD^#HCwt!n5VvYrs+||sRixfGv=J}OE_yHOF44HH z^Qt)#(V~_e(A*2pUJy`wyKf;!-MK^~hfeM{&bP2Qb<5+_2e*mW&@@N`OGF~-Y?AkP zesywgx89nx{3&HfaTP5Gzt6!P}6BNJON_;EyK06RdeAs z%G4@XpXgR@1hhKGYE56R;TQ}jXvUdFXdV$XsRUG~RV^f0nfhK3s)*4dR>iGDLBoZ+ z(z$pAUaq4z42kV3WcQ{epQB&wo`@0 zzy1OPiFsy_k?O0^Nly=Aq?#4Ho*QfmG2J!i|5PY#VlV!8tJ}YRRHWEnqF!ww2T?3O zoJ^$+O-IRufqwow}dSniB&P5RZmxYvCgRArbk4GuxErWT2F9S zX=%qs63r=5KU(0(J387N9iN)6p1YHD$%!mB&h{i`yPKFBbg(@mT{zMzA3hCEtG~r3 z_=h zx#2f{dl;={-R*Ii`?M+*?VI}crKkX9fXT<>e8ir*=>gGb)8JXGXj;hD(>2>8nwuR0 zhw%eNb5pcv4%mx}+xA%P+UIlU6*qCk z?>tY9NdV&BcUf6^sr^BI6TRd$@rD`S&&f{a;1BGN?Plom(KK1c5WAQ7c>I0XFGLb{ zTV>!V0Z-I04y^-NX5W_Uy=G}Vn477dW&{Z)Nk64@iNatyhgDs{GcXADs@@`LUp5fL z%(U4|vqo_7O*}m*3o@m1739FISNnc);yymlR|rGywBHI|Ch{vM zs*1cR>9Hwz^+IV?LJMyq>6|%|*vwQ9JV!p$FEIVw`rW4I=nC-%U)$cN)H>CHVZwVM zB82!a#0oePd0N!R+OJpmQE}}O4*fzu#m$rB63=l*h4qOJc}hRU$Bo*(23wNj<}{TK zBF=n}v=zAjSs@ti3!4Dc?hD0_OwxVft3zpot_9L2{^0z0Unvfdji!`?0!zKEaXM9hiw~uZGRWGj+>HAzV0K z4Q-v**P4bH&ooTgKzOycS$S55wZAhlM5aUFJS@Yw?+-|m_&F@SLY5wVeh$UmO<4P3 zOcKT+i9;$ON%ScaV(KD(4(E$;&(yruU~b-SE{+p7hxZaYWSf9T@8i|+80LxI-S?gn zy@PkhDO4R@J$j?0cu1#M#w#Ye7npeo2Ww7iy-sd$u*ju-nIxSY<`Oc%$>H7sP7a3% z@Dt+l%N6}Q%VVAIq(S*gq~!Y!(McbNukk*>$6+EzfsAe^N-BWmu(039;Uh#P z{9N%CjqqTb`8IQ;`?Ewab6<2F!45(E(dxeUoajp49W&rd&C@HbTD%*Mvf2iCH;m5E z8RFMaM_=MZYd2Z(S}+^$MB~vg;oI=mKHr9TG)(w5#G_%tx8a69--fu_6W@l`6Vd~z zxA>!48qxi&--netN@zuN2Y|ZzxHO!CAY?S`KOM`o6%Wq4I#HxHRkpe~8lXkl?K{Xbc#xP^lG& zf8^89>Hm*_qWCo2!*3+?G*9f+XmuH_(Ly5;QxkrA~(b<%f^l2y@?VtHHyb>G+ z3=Ni2{|7z||IUn+^lA7B?}L0Az6iUjh#nRY@o9LRZeTRL!&Cb-d`XAn(@=?sg-^q; zi%-K`?bGm=#5w-F>Nu`I1-{Uqp-@PDP$;_T9gM;p7Ell}~a z0$=RUaKiT}^q>1P)LAC|8GiI#4X^zf3Pt+-8785$Kf}FAsDI?o&`ZbWNDUdZ>4_G; z;Y#>3tY))S2Ek?#He|YR{29u0d@fLl=Efj`05~RHr5Z@bpJ6*;w$9M;XZRZ5;fG{; z`uF`A3a$RNKSP0XP$~TXi$6mlh~v-jJ6AAvzQCWM(D467e}?YesOLWC&rn7eI*ywe zVOT8j@h|-uN~_`(j;D;uf8o#Y1;986!BhMhHhfAa>i1{Z9~p^AuF59fX~uu#&+tko zhcEPJC=`$D0XvB0p5o8&-WjyU7x^>P*yxE={ns&!NfZ7ICD(uI&+rX^ztEpyfAys9 zjet>iYv+@ap_~Si7q#Fff}hY~6}A=_Z7uO4U9f`G!;0f*?7HoVZlUf4T3VEoKQjMg zoLxfT7YMYccrsl0W#=sL#LH6r69wSEmZm zB3|W4rw6J$%kvWV7dc?712zzTAw?wFRR3bx&C2$c>2sCtOz|_@9p-xO1s|E zUg*4dn9FpFKRR#Md+r0*6V-Q_4KG|zPr-9@Glw9=40;t~`}qrKt2M)}O4BufIxus^k-th#M`4_eW(B1%=FU)T!Ue-(2nDZ+HG{ zOYT}6E2Z)h>5$BKN`?2(3R&OMP0{ba%lPw|=jdinJw ziLXg7y4azzY2#JaO~Sj9ihjLYj(ttRicBm6J~90TD}3fCeY4Gq792umu#^s*Tt80r z{DK)-tO~TNN)_VMdI76~*zYB&r}50#OSlFM9MG@(t(r_6Ihn@hp^e_cD=&XJc;*uG zli2BfpWY>GA}q=@Ka|9&jam4jvn36O#EX2@C5<$W0jD>|9B2n8#b!k-oNN)ATV@3W#CAJ30?UG9 z{Gr=liVY8McJze$Vg-9J)q+`Hd!uIP3x~*gRnrMA@2A|r*}HkzVp@{1XmFgU^l{Hf3=c}mF?`p*WQeV?PZKD2TRn!Ho7hJPnOD%47QN|xy zUB$#*ZKelLuh!hb)BZ%vCwfn5uyC&SNBsv@3o2W4u9G7Q3^`6?h@UPGDC{$4)b76Uj)h0#ot73TRuUMJE2PT$EAQU^r;wm%I zEfM%XDRYH!kL!+?E^9c!;QT352o@rwIB07ylQ4#GBR8tz@@mHb{=cUxBqh!lu@?Vo z@ao#yIPuO3`pwuNk;cUZ7v^CZ`eVjRw{fnW^1U0#H-@&!`oB#Xl|VeInNQY#T$(2? zSlbo71a!_DaBb+pcI#$r!Ma7JBGfhxLj)Vg89Swn8RkntanL9{_TdS=l zrJ$|QpM%9whu`h!V~lZUfN2RcIsaWpoonqTNc(s`7m6JtS@1T{ondWbKZf~9HzLcD zymeWcqcg>i^Wzek_bZUFE4?>);8#Ktq!mc|COK{9UI=m)w*!(li}T)*$iyM5gFP1 zc1$0C=J^RPQY`k2D$1D|70K|cC`Xs0yTTa!h5{R;3!N>~%}L5s@R3Sr!8v*tt2xU! zESL7Zh<(LnZRgckc%kC=jkVA#JI+J}qd9Si3!Ti1L)UT46vx%6BW1&@C3uCypdo~9c~E-9Fr;eEmPdV}qEw;=7~utl#T=2F@cEZCRct*PShIV~m9 z%F)uW?N&1I_T;xiAM`f9hb6)-%x1@B1&7kx1DB9ktnH;Xz6Z&`Rzgs6xay>t!I%#- zRwjjBS)zBA;9kjFC5LyG>CwxMkL*Q;{0XatjZj8ZMYIe-&R-f^cpQWc)EoB!8W(l{Fs}CmMy{F zKx(k#nwA`M95w-w93L)@siuPSXV=fIHoji1b^%8KlOgV4p$)Afc8na`zs*aG?%gyp zl}3~p?|wtp-K7FAGY{wcPgd4WK6sCN3!=B{QaV%eOUyKx?SW$x4iCKLJFE{g@SE~p z6zL1nw6B{~S#fi@@#5{UAm=jw;VLvd^}|4Rdh?-8)3%_Ie8;+r;LzMbsvpHuk*H)$ zs_Bv{Z5=L&>(fYe*IB8;b$wEBCj#nct%-s*W%ScR7~(s6Hu&v&r+%7^eVOroEhO+* z;BsRY40MInCDzeC#c4j!s7xlh9dg zw-KNZFeRy%M>b;k&WTte{uwe5bzOcM!X-d#CdmfPUcQ9D#RQ(SlVj`=KyR2e@V3;1 z{6d|3lLIS??2BZ$fDAP<4aiRZEQ(BROf%YFXrhS}ir zX|1VC(Y!j{g7AnKlkX8hk8J&b91u5XZj!G)TYgsO5VJTCdQomA%Bgb(^L z5gP#?^P=-ae0NYaY7Amzl_)Ka7b-Hec!yEg7MIY-j$8!!k;j?eNO%{%#84oZz0Odg zcGYW9;1V0ScDRAn#%^ZHLaO8T2d4kMl$AXqvXb*o@>Xz^ck24yNp4Xu#yfuFc%bii zS>N%yjCbk=-!zWb4GK<~tZ>SG$er)&So=I_v2%ye4(HOuwU6*QMoNq0tEVISDD6JA zP;qr})2ijgu5;d#u8(g?irGc;$L-lA?wRh}Du|&#xMN%j{9S88L}F_K@YCvd340gX zim-R%+})4P!`;0~ad+o{%D~;tZx!Y)z}`SUVeJMc7~7@iaCWi8{oJ)m(@M6LEx#SZ z*u94XaC8A!h73hE4Ae-bBNBNU_zG`-UjDv(T>dtTCJtnE_4ifvS2zoJuTy{9)ZcFY z8d0_l#n`=^cAU-F{pI6oPJ%B#M?%HeeU_I5W49YVfyitJkl}ss7mU?QB3#aR;l&TB z(hGG&)Tirx?Ze6K@1;20+eK~@;qm>a7UpdU{7}+Ol62Xm>z$5iIOXe4$=i}@4x6LR7%d1#dez@w^S9;UPx#w($kQ~P_AG{i$)_#+_+B2K2hs^^ z-7_b5!Sapc@q9Gu_zpV*c+UEw^Sg)0CeH7E4$~B-a9$nu5+gEl4DVJRcurG))sR|_ zMz{B=5E;zq2C`AlIj-+YOXIHZYKRU+B)uzo!^pccYB{ZwaC@|X@J5v;$O#h_#;%nm zDVoE3P`SSAa$57OZyE9pTdqz$k<+e3Qn

!01PWpgPN|_^I0!cYUX#UM0$MYZ`6m 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 K3H%R~!2bjNovdI0 literal 0 HcmV?d00001 diff --git a/EpdBase/dll2/test2/reader2.def b/EpdBase/dll2/test2/reader2.def new file mode 100644 index 0000000..b109df2 --- /dev/null +++ b/EpdBase/dll2/test2/reader2.def @@ -0,0 +1,114 @@ +EXPORTS +AllocateMemory@4 +MemoryAllocated@4 +ReleaseMemory@4 +ReadMemory@16 +WriteMemory@16 +GetErrorDetails@12 +GetDataMetric@8 +InitComms@20 +DeinitComms@4 +Abort@0 +SetTimeouts@16 +SetDiscoveryExpirationPeriod@8 +SetDiscoveryTimeslotPeriod@8 +SetDiscoveryTimeslotCount@8 +Discover@16 +SetRetryCounts@8 +SetAutoCommit@4 +OpenDevice@8 +CloseDevice@0 +Connect@4 +Commit@0 +ReadCommsStats@28 +EpdOn@0 +EpdOff@0 +ReadEpdID@16 +ReadEpdStatus@36 +ReadWearerID@8 +ReadWearerName@8 +ReadWearer@16 +IssueEpd@8 +DeIssueEpd@0 +WriteWearerName@8 +BaseLineCounts@0 +SetFailFlag@0 +ClearFailFlag@0 +ClearLatchedAlarms@0 +ClearFaultFlags@0 +ReadDosesQuality@28 +ReadCounts@20 +ReadPeaks@16 +ReadRates@8 +ReadBaseCounts@20 +ReadCalibrationData@40 +ReadAlarmDoseThresholds@12 +ReadAlarmRateThresholds@24 +DisplayFaultCode@4 +ADSReadData@36 +ReadProfileControl@8 +ReadDoseProfile@4 +ReadDoseProfileSince@8 +ReadDoseProfileCache@20 +ReadConfig@52 +ReadAlarmConfig@16 +ReadDisplayConfig@28 +ReadErrorStore@16 +ReadSpecialWriteTimes@8 +ReadSpecialDoseStore@24 +ClearErrorStore@0 +ClearDose@0 +WriteDose@8 +WriteCountdownTimer@8 +ClearTotalDose@0 +WriteTotalDose@8 +ClearPeakRates@0 +WriteReturnForReadTime@4 +WriteAlarmDoseThresholds@12 +WriteAlarmRateThresholds@24 +WriteAlarmConfig@16 +WriteDisplayConfig@28 +WriteDisplayControlBits@4 +WriteDisplayEnables@12 +WriteConfig@52 +WriteProfileControl@8 +WriteSpecialWriteTimes@8 +EndSession@8 +ReadScratchPad@12 +WriteScratchPad@12 +WriteChirpRate@4 +ReadRAM@12 +ReadASIC@8 +ReadDirectEEPROM@12 +ADSLogin@4 +ADSClearWearer@0 +ADSReadWearer@16 +ADSIssue@16 +ADSDeIssue@0 +ADSClearData@0 +ADSWritePassword@4 +ADSSetOffEnable@0 +ADSClearOffEnable@0 +ReadA2Config@28 +ReadA2ConfigStatus@16 +WriteA2Config@28 +TestBattery@0 +TestDetectors@0 +MFRLogin@4 +MFRWriteCalFactors@24 +MFRWriteDetectorThresholds@16 +MFRWriteRAM@12 +MFRWriteDirectEEPROM@12 +MFRResetEpd@0 +MFRFormatEEPROM@0 +MFRWriteASIC@8 +MFRSetAlwaysCount@0 +MFRClearAlwaysCount@0 +MFRSetGolden@0 +MFRClearGolden@0 +MFRWriteEpdID@16 +MFRWritePassword@4 +FlushDiscoveryCache@4 +Transmit@8 +Receive@8 +FlushBuffers@4 diff --git a/EpdBase/dll2/test2/reader2.exp b/EpdBase/dll2/test2/reader2.exp new file mode 100644 index 0000000000000000000000000000000000000000..34aa24eb64422044e9594913dbf49159cc6f9fb2 GIT binary patch literal 15181 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 qUGQ9z{sbnb83POwaA^ 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 false + eDosStation.snk false @@ -117,6 +118,8 @@ RequireAdministrator + + @@ -160,6 +163,13 @@ {3114a047-7562-42fe-94de-2418ef19ad9a} + + + + + Discomap + + diff --git a/EpdBaseClr/EpdBaseClr.vcxproj.filters b/EpdBaseClr/EpdBaseClr.vcxproj.filters index 9eeba3a..e83d23c 100644 --- a/EpdBaseClr/EpdBaseClr.vcxproj.filters +++ b/EpdBaseClr/EpdBaseClr.vcxproj.filters @@ -46,4 +46,9 @@ Resource Files + + + + + \ No newline at end of file diff --git a/EpdBaseClr/Reader2.dll b/EpdBaseClr/Reader2.dll new file mode 100644 index 0000000000000000000000000000000000000000..3edbef2b10345fb3dc6fabd2da8d9af389024800 GIT binary patch literal 158720 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

!01PWpgPN|_^I0!cYUX#UM0$MYZ`6m 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 K3H%R~!2bjNovdI0 literal 0 HcmV?d00001 diff --git a/EpdBaseClr/dll2/reader2.lib1 b/EpdBaseClr/dll2/reader2.lib1 new file mode 100644 index 0000000000000000000000000000000000000000..cd181af7211511dd38ea0f3e0cc30e3ddb502f9d GIT binary patch literal 30772 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 literal 0 HcmV?d00001 diff --git a/EpdBaseClr/dll2/reader2.libtest b/EpdBaseClr/dll2/reader2.libtest new file mode 100644 index 0000000000000000000000000000000000000000..05171b5b1c5f43c562aac59001762de9351b92c3 GIT binary patch literal 25604 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

!01PWpgPN|_^I0!cYUX#UM0$MYZ`6m zRf?U(nmwyn>9;5H52{!-2GJj@0_A;df$|;2Ml7XVr&R_2xK>*d{3BlPf`7#8-8Tuh z`Xd6l(OV>$?>m7D7smtPZdkJw^%7-uH7k1g$a`+|65d-K3$6}K#c<=iz(tD_Ss9>s z)?v_*1qCX>RVu+VGMKR~Oqha%=sS`Cw(xJ|2~+qrdBPI@jXYrpzbsGK!Q15tlk(?0 z!`lTKBF(b6$~`aaDGzV&=GAz07AR|TTWhmGUadAmkI2G{Y!}Egp5{h{3a(YHczt^s zPS05>?juFCjPeCg2H_zacHW!r74%o!;{Bd!_cYNrxTCnn19+D6b74=U`EMbwp!C|+ zyp^iRWwW5)8nj}s@=}ZSOd>7Mc#ogpHQf9Je?5^>D!^eG?~0B544(sPgRt1hk5Js0 zc?$D68XZU*jndV6kb^S$MHyqD#!8sQJdMCl_+_aZD=toC|AyfwTdtubP**N=yP9P% zr4!LDq*1Klw`dc6y;nTlT}Ii`=f9W8FIJ&}NiQ8LSNg~i<*pZouWSqDhV3eHDB~8> zyP9RWN+srm)}=!&algKjP6DlrmP_C0d@9mYN7ew`0Uz${dgO-gu zyMu#cI?)G;YXL~~-+7JmekE6pVCx?|A)F<(ckhB7$3x;-D(S*__mp~UIkj> z&`vEY!#j&N&SOSOzM*{R#f+$HbvsB74Cp znG;;vwMf)bT-rUrOMFqr)Sj$d+DUo~_+SA`F%gx6Te{`aZpyt(0W9E`Wl+SW-ADAy zrsZ0TMts#hO+Q|0vT~=M~cfxd)Ay=4B&5*vQ;H;R&+KWA>rJX z=HK$@QinRQV6*tY?IK@_wIeCH%Xz9jSIeD1QMts-F;M>G^oxCV;z;~TwNcgUk@C0ZieAo357C{eM zWx`<^pJN@@39ws?-k)6pfW{fU3P2K$>qucSdi|d%uXU=4j6>YP*LIl%?RMZR?zOHO zHYPzxAMjUst^3+_Yw%{5Qe5mi5a`cWKzMM_oUJx2%OR!8pd!rF>$n?h$&&UDR$8l~ z(93O<$B3_>>$+O3aC@(^yw_o|MyBd=GY8e4_(#5(jvu@6R!puneKKmgI<@m3m#*hO zF5_c?fpTG|&X{Idy~6gq8~!BtGoI}T&|e;nj6|e5V*~M4W{c%3Lo?#SP6{!uuu2HM z+|3uwmP$2De{BASt_CiCZ0tyhMP$&+>r*2Be)iZ$_$VnaG5&52vm(1}V76BUYPqrP z5{c(E`CHa+d@8)zmnAovqT9uDox~{5buz3JCf~+>l8H4DNw*1id#bIPxZBH(r?^iF z5+<+g7najH$+)J3;Ad1=t**{_^r6(L3}XTJcn^_CS3up`6Mc{Vo(GfFRU1YwoqxSp zu3lTeQf1GYTWQZ)#cvnCv|H?16ZzfBFHBrQSv%SA??I+fpMMe!Jgz_>(m7BWqfaoK z3yL)R(rV+i59u9l3+y5>75I;O=h7OZ3#A!R>D^>}W=AvrjF*4}K76-pp zRI6QCZ?7~S6%`w$yr(Uzt}HjwNnqWbMx3d?$6bZn6U*K4nHVQ{F{WB%EP)Lhx>Oox z3teXGN)}FuKpJ+8p@($D6wAbzrcy~$Y(gSEp>CdB;4wqdRvk{&e~+VwF43Teis;hD ziCY`L%Nd@4?0oQRGw_X#vg*(;XK;gtel}z-h^691%cb~A;VO6QG%?asV(4)lk_oX? zp?07kUFL30iTT|v_7de=BCF|b?J6OD1%4VllM5;9%(%c$D9PEmC}tC-5_;xoiqeeM zlm)q(a{*q1O3crenIEW#9wOxCL<2FiD-F!TQ0v=^MasTpVeo4!wA0esS=cGT3p>?l z;=LkRI0H+medsZ?;X4Y2(1)-jFmy1Ay3GaGsmha9ETTjE0-s7>m_zK$NgG`>;f4j{ zw582&Yen1`%Sk-b_{VaE8)_M?I0$lEor|T8_SD3CTRe%QB$i54mAfPg{VhiJ)XpRu zMwQ)?AuF0mAU#=mD;t<2lxvIGM@Zyu#q0A<6$1fqnA&$EdM_5zcNH^-)s-z%mk<$~ zxKpIdb46Bt{%j(kUqka9D$EHu!hs>&B?z~rvNF=pZ=`Wn2+wA(yNFt^U4K0;2f*;w zFVY9wKT3)?J&^9ME;sh0)ui{;!UX+NJiBAKrdkTvCreEgQ2Lacy2A6b_>1Y#cj4qum4qPs9y9t-r7Dt43&4&AvSGf)v`msCTc8A*Cj<t(UD3kQo9q@g>&fFLa@K0eOK@;j3paEnGP`kT@JPyu#?9A#FPt%9B{3Lnc>fmMf2 zyFATeXF<;>r((V67WsS7aoYDrL*AYH-1_Dfp*y$_>P0Ggszfhx{Ei0s4sUv&DL~U> z^BqM$u-V!IRn@Xa zV-uGHz4*r|2n@z1P628P`eG9`!sMBwzHx~`x@>_#e}93$ub@wi8tl4>lFjty&jP9F z5cg)K_pvZ3c;IMwzErUCHbAUA?t~+)fGUhoc)>jd2GGpLvlJ63=t3JO>HO>`me|0XjC3xql$Ds1)7G5i%baMmg%px_YZLF=`1SB>Epf~|*s|0S`dE$L zCu;P5F{Wr~TRhF^Tz#Ar`b5n_%b1i~$E2eN^e{eWA3H*y$jo}~ljC(v4$97>L38-c zS_JeGm2ul4Ri>Ji9c_Lf&0~b#hPbW`|3yhr` zYm9=F*TU}+e$PtTiMc6pFal%dLVeTQG4nv*NMnVaHFvBvOPi@msWbIbuJD#Ov(eRY zZYa;A=jvZwC4yFZ=}kmesV^^#%1SVZSfQ%c?4`A6{!v zNqnoY_J+OXY#B~#KOog?(IpctvY2*FXj9%CsNy~?Z_b9x(IV5`zYHVICu(Gyeu*C0 zMV21fl3%)v>!@0n7ZFA@cZg_D+@%jZ5&FW;c?ael_}6%^Q`!KxsKTw^?Dkf;0?A6X ztfR8xSF1Q8%=GvRh2Uh&6<+KN-|4QZC|_P%S9>cOV^IG?mmUX^zyoL2+Mvi}29OQM zqidZ=W&Y0da2swprW%)gKS2w(WHEnwzlC3e9akpgEel1m@c}^!8ip#3Z>cwbFFSa; zzJ4h5@i?(5=D;jXLTy+$*w|qRWL1v%{L7W?x(_Dad>YY#7#}X7umENlsEnnQNu5eSNY- zt6e%aU&=7tYo&(z+_g{0Al!{8yVA5o1zXVjGwEAyL_DaYKB+dpU7Nwr#qW;%_P`S3 znQsdYqja^AtKhP8JKOm#Y2uUe$6OWLxI#Z{)UoJbBX_#=6xfAWCG}_vP@>iHOR@da z-kccU1ebLwA>3fhf7vC?ds6C z>ZUuwWj$R>?|6V>B;*PUISC^MkfHFCiGqwc_It~YH%vk}K=72B72zf0F|%>peA{?# z4b4eOO!vfiDbr&c@2HGb_12n`WO^Hpg&IzXZn(|3EG$!?;?8c^csPvlRv{bE6JB~p zL7Q>G!wD5~e8aIUjfGSvx1vzd6ATKjkUY)cL$J1T0?}6|l@P+Q^rX;M}h2Of2X!aoXZLuxVQ8 zbkb&b=rmFpPxfLCkRY0LO+*coy{tulUufsE z0Em6_1VI+-opNAgE|PuUZD#4gZsHKF^XzbzhI*ZGF#^lBWa8pkbnM$enpl%$*C`iM zQahXrNsP50dY|`Ug@VWY{v2&^nm1qyVs<2>W=ZTAvbF0rA%ifmx5*>|s z|4xs$7plK=`Rfg2sf%V5_LZ+QaGCKSl_QlB;4yX~e9rs}EsT?C7fCDCt+oq;W|6q* zq?FJ{)7w8vadfpV&r5o{=S+C}Y>IDr{4)Lq&m;-q$sU-?^=06o(28amv#5a<%{9`_ zsp@a7s-laj2iJhP+IX>!Vy%VEP(&Ci0r79c>=RXqrpJ>Qjg(VMQk_9h(^fu=gWq6j z6o02+pSKj>3sYzT;&0`8N^D+gIFidJPzMM~=2fI8oeI@lO<3V9Cj>(`veQ4VMoSgI zN!Pr9oJjn6?q3AQFxz?9~{Z%Z`q-srR%EK1#Q98X+raAmdfyX)fKu2BKO4B z@_8*){VipG5PMejNkaNHZ$Q_s+(>~vB-`yZ_%9(#{wt0$=sd+(;sv+iNh?-WSa%0VyG!dr|Cd^Fkf9zXp7geyn{q$epfZ)Zjp5^>td=V-r%0x&s`ZEflB3{lAAyXy=F7fOr zDA>0qG|W)9qtdS$lN8=A{j;Vyp77?F3NyY^#2{m+TM~Gh*GfIAP^|o`c4}X$&sbg_ zR`EvCS&4nB9nv$aHEeobRiEd+(|~03GUD~j)(KWCTW;~p(=)?MJcZFrA`12i2ms2! z=WYR3YZa=A0OFd3z!rzDGN3D$ESNM?kfcXsAVSXwtl9DvY($z%`S6uxt@r8=OKeO{ zRqF){gMUop+*PC1Y0D_K00ZOM)=T5dQb=q9RDwPFF{_k(ELumJ=MY{F@JPAVDjA*T zMXJ4$!mh>&Ck_u>qr#->eAN>lYvR5eDLa}=jI}UW@}A~{bj&MVDkFTfOVW1mw5$@DC+`a&n{+a;yrfa*%7 z)dxqXU9A`EFFkN{T0PjtwzqCK;#}2htGJ*=B7LT4%}1o%{C344FW1}4tJjLv=lH@s z=6e^fHjMVjbm|@Xo#m0H`I7m33s`eIwo9*l?{0YoL-gttwjiI771qMGdT%XgHOFa; zfq5-;L?kPRc~)$@Y*(?l34q~xqXskdj4U!>L6*$f<%eFDFk9d|p_f$}?ehBMm0q<% zvB>c`+~4@wmke_`JlDK7zIw;;S!-SyUl(e>FXnEhATU^Xu~JdVGhSBtr!W-8Z+H#m zD&~t@R}INmKy=%!Fs2G#TWNeSTi8-uS$hSS*wZ5TRNOyj*ve~scceLT@;y$m=U@=4 zNB{;=GLp{1AP#JlbLubh&naR`V{wBEN04XZia{yGjcTEJq45Dl#z)5FHC%W;cb$vq zghB_xQmTaxSjK^rn|fpAa}1)WdMw1rDw>(sxm{fgbA+{Rj_1P}S(r@}K`dCCzR(rA z9fz6r1QulL&(iEXkDqo-@E=#8v*AN>=9cYBj*t0>61#F9p6H;lqWdai6G|#Rj zc4w%!cno?yMkY@vp320kr}=7D9L_m)+OO=bil`eVR_~Mmk$A(z>TSG_HL-dV-)Eax zZ7t5r+p-|Z(`3-FYU2tkvnpuDn1U`mr=XNSQ4qJ|pQwWVT`t4%7QJb`s}{Y+``8w} z%=g(Xl2bve1E1kctWPc%B;I%!-zp$EOi=1hR*KE6D-a7-o9Bup)eH2L)*FlZk(^K1 zh|OdSi~6g}jal5>m29Qfz0}vxx2Z?0z?!+rLTZMd$p}Y3ky_y)c=xIE?tD@K+SJ z-)DS~FH5S=yF5EEo!Uv1y2kTDCdtOy$p_Cd_e;l>meyVdR2gV(AgA6UcdO88`{qm8 zb~oh~9P-w=JP+@=nE|V)t{*2_D-#P9Do1KaSco92EbDR$SK777dQkFHnWt$r+f>}B zf3%i&<42mTr!QOaBg$2>%&#FD?yJ<)R!&V6U2i|THczu8GG9`6GC@t__g&+Nh0A~8 zws!2x;2bY-yAoA1xfIGJ?^0Xv{P!^n*?o~JO$Ja<7tk5)7~ z`}7V`)q54U-tp~Oi56BnrK-U;(7y8k3BCYwly?<=|p zHc%Y4RvV2Cz4DEh2y8oU1;q@lK7m;}@vZ>`oiOStGQkQ_91*MPGS|+sucHFu1tV0f zpoI$@?Tv-yes~<86dZanolRqnw-k-7J^G#zUWycuXu4jyz=2Dwg%E!{JHD4vaHs|& zKRL~(HcS>pfKs>b^ty3SU>$Gz&a6vY6l$C8JG#z@lNMA%;(sha7+#yp09ZcQpJbA4 z<)M?JY^B!JmHt5-uLI~7Z8xkeu}Y$~{IU!Hgw5W`s;^>5FPAU`@g$~P#mI*3(~I-k zjp+kDp$+!blTF!DJVA*(f> z5uVceTl6v`^r9>z`{rzMCsChNY2;tY`9L^Sjtspq4$#X(y-Bpvqc`@D+Vg@lC;Csk z1RMI59#x;xqw0u0L74705`>d0!*#Cq1{XV^QBKd5?b~wW*Ko$vK5zj-;q@4W9%`xk zywg97lje!W8+RwxZo$5mx}i@0=eC8Eh;G2$&Pdf@z2jz-+J-8W93ytnq-0|%ha5H> z<kHj}_vZ=Q(V;kXMi>l{(w~G*Pue&>)YhAz zitGVEM`$x7sjk5deXZradwqo>A1JTfkp)TyTlZipIJ5v4-19?4gV3MsB6c2_7DCZ1 zOTfl%y&18X%fSw5&G$-m z&8Ay@8T~BE^_BQ~8%)+ejhh`u>`%D}cXV>_*tPkg!k9KU-ju-9{8zNB>onJOf1(v3 zcMAI=!@qpA6{~m+i*ybIzO&JU9Ak;qLgPy#$w`;M7iPo<={z`rqg@&o$TJ*L_*^6U z-Lnyj@9}NXB9LjffjM9aqF6Sb7?cCyjtX5uA2`djbDX@5G|Ea>;OhD`Uj!U81WIm)Pq0VCSK4|jT z*rtLXBNb8Gp)!1kHEcVE{qn7bwhyN;n!U*m%xj#0fFBFoyEF>Q5K}h82cMDJIV;#v zZjZQCM@DRh>*E{ui0H6y&-#nbu^W!vax$6kw11S0@ka|5UPoyHeTn#lbuMu^?KOtj z&Xi$wo)3{ey@^?5oR6{7z|qNC+afdb_k^;_!8cJcx%oSZwJ7uQ&x{IduVVxezSy{O zB!NZNevy4gE(JXnSuwsP^jUCbOHvrxD~00q_p&7d zElU)_6G)HW+PEDEunKfeGJ2>3Rnf4^_$6=Fec^olnhj*XL@ z5+Er1W!1*BypKhYALCmTSCmtP+T9BKRjv_)b|RuJ)yBP6_849?jJvFNRn+agk1eW# z@ADRgmxb|q6=%wFA;ty%5cc<((;12}82AK8Fd-#|xlyptDwn>@<>>ZiuFnWq)_iCp>BJ)#JvU@@KwU4V*Ruw zc~jPBszRoQHs>U*y9jlzlwlb!Jw=<0bQStLZAoDk#t2%z;9^0`A$v%nCC;QV1$UTl zD#Sxw6X0O25ebzO86WcVn< zx>p!;dDZ3m!S%x8`6xCRxvs+2$s8j~YM-$(QTwCZ->6+(S0Hv!@1Trv^e)~-pILf? zl^>?ny3$-aCe0+?BW3Q2%9?8Ct}MHv5?xkxJrc?;8M9Gv^)#=PEM+bXn!Fsgn=e{B zNNDh{JDG@ZnQldI;@d)UnSwFQi%r9-(IXe0F@^>bHebM` z!+~Srh9ev!s1nnCH+M(Hb`W>0$n8xvlBrjXL!9vz5kBnR?C5L~sM}<(@$giug+C^U zqs6;2JMeYN*)V6Pnh(7He*Xi8rq!cY9fLd4;!eV4BhGUXI-Saqa2yiWx+8^kC*`hZ zC{)ycJo<_n%#)UPGeKy<{h}`r7}}*U-T>IIsI_wL%i>Hf#%b6ohA%?|Azk@h$UTPr zKy4pN4sr=R#@`z8@n=!y82FpLb$x*{6n6_(pt|~_sK{ZCNng(>k0e*(ni-N|N@Qs) z`c1}MK0KrI)FgmxyslC(i5S%i|*`^(b{B8I<#L%4L|4L z`YE2iHa;D37ec(;m{)Mf*RgqG>x~opb^oyzcOjhCtVK(GRmV4(A^(viUqjZqC&yN< zcX8(9lY_gyyT;i6H|+7zr+^I>Q3VsLx+%AH3miR7g;w7@&0pcAGOdDCzxCFwcOp@MJMD8scXQKhkO&z-=8#vC`xuL}buCVeL|BTf# z-DXz9HGa`}oDUSy6H9KESTs`${;S0#pGBe5P|}ZSo|b98L2NtRCFy6F2lOs5!E(m2 zWyRe13Q7vwbwBLL#8pA|rku0ZhTt-Y+l;J@>@mk{wRG`Q@6=y|r3VTtv97hWW^Lg( zZjZ9S!KB2A5vY$VTqH@%i3u1$a2Jn*1PO@_vqqa|h+`yw)^&wBnyc9NO5jvzA6rLu zetW4XQQLvf>?b8XQnj9@XDJ*Sev`-y$`z>jRbIk%gWkGa2puVy)Cv1@_4z_m5fVtA zi0x)W2a$uq`5V&O80TC|I@r_nAOV{f*Y_42T0Ss9`Rl$KS#qtb$Oi9c;{;Z)C~1c=InbqR58m{Xj*1SBf+rsT=cRtp|AF)y9u=D3`oOgclKkjn=BE>1WG?7G=#&HVy>O znkqrz4&(_1*?&@iUWA6lIF8Ssi=O~`h$uRz0n;b*W}GA`5XqP`2S@bzrOdOMVq&cU z6~252#hi-nAou2?&|vSzLZ-=@)C-Nn57D|I*3vs&scKZZ)Tmsw>Ry(v;sh9PWyxl# zwjU+lp*)YxqLNr(Hv3mBkf&O6ma4un8*DtZH}`zv6crVt3;oG9mR_Y=?WY;oYee)I zOM}&Fts|9QPJ`7lpDzi`d1IEj$mgrTWL1b-zhazU)^8V2wSEm=)cWN(LYq+5Z_eoY z&6UZ`QtQ_}x_)yK>-T3e#S0o^eX@zp8@qN-{_Pjn?lO3M=RiJwE46P&oY$7u+bWH< z)Ea5W%{ic%uNtAhFy}zE2}@s25p% za%B47&OFcbUq<_wcs2b%;@NY5p+b75oNw+$Dn@SLjVwaWb>kxHi*3Mxk$Sp~RP}^b z0nEiVWE%tOnPYq+&#MhXec~!tJ@brX>N(r!QO`L>w|dSs+SGHNu~R*#7|*F^p|MRp z7Z^|Q4DBtBZ74P#RzXXQhZuu*tLHt&rRuo}f}7QZ7lJ^U;gQf6n&j1~UR&h#v`0c8 zkk^mZt8B`~2kP}9c|E3HMUC2cO}z>dZtPL7Psr;I_4>5DKC520$?KE6hW5@$aFwh{ z(dO$ZzGUUxlYL+_Now^Hr!RSdxcemJJ1PX3`uW8w1RFjQa!w(exrX_Ym&EfFTBT(9 zl1t+uv#gM8U-FIdkZda?$Cq3l4@t5@rudR?iHGz7gR~~sm%Kb4@~#TmkmsAfLWNWt zuSy855t1_m+v>QKXL)%!`c5L-os@G`+p{ zAt?UNypGG2gBF_^Rr{>W2&#RkQ%p6+-Fmi1oF9H&CNDecU?TqWKy>kdz$;? znS_V6?p$ux(f9bYF4;d-Zu-Vm8{*jR}&4P~kDATJMUZcjmiiQyEOY$8hwLcZ#`=)?#Pg zeGBdjq~i6@mWzn><{Z%~4@{KaxU|fl3YH=&FpBf4X9|aI#DC#LtU@UCjMY&^# z;SV(yYz|0%3pP*kDzJG%o};k&TRzW$&AWQ3;~d!hXNZKr=C5Xsh0UO{4X1yzrT+91d!q;-X|8IjNtme22(h29nBl9NH22HeECa0B~JMe(Q8f*=>@uelS zGAg$U02R$$ccqb?CP6z0ic9%>nt#NH5{<{$vgiA)d?BA-vVwFrbhJRcj5RT|SN z527%+{k(xGh|984HlGwwF))S^BhOe3oPWn!5%qqStAIDoAgGQ$}ve^N54JVK)Z{AG_abwVPs*N3s ziQ@9pd?ntLUhBic({|Jz1YpFvcuNRf@JP=RdEN;W|(9No) z(1Ui`f>;FU4vfc?M{%kckMs9x&R|(A$idp{$nOyLOPfq)P+MB6T~VsdGQLVbVU%UY zjEi|2LxOm!QWYDui%@CRpgHMOyGwIXvW=2IRz?tQ#oUk^khIRO&l1&u^D1SwCrD=(Rh^(>Al)*B!_QcI?`vjjIRg*cQo7 zF7loy<2?Q9KPA6DoLIKk(ym%#0)KT|G{9)GQCZ$!xgak2FAESShDg#2v4CvZbO?g? zb4CY2T{cnaGN0nA7)SvgM_k92#ZbjK!Tq9=lNmA(0tD0B|Cp?2KP((WaY9|&3i$4` zx7?V7HRf~TiHXbvjSomS;yJNxW;?~%iakw2N0HZ{wh<#}%}pxJNiOmC-^(jg zwIMS!=-e(3{uF1YLM=48!=h+^C(eaE%|EAsjSa>pzuIjJ z)Jo5z#|eQaB<&PAUZFnRk6b-@oSyHO^AfM$WRq6)dzv^lWN)XUqgEiz5Wn3&B!ARN zeat9K3x;EuKUiJ7+E_%9wMObqYD)~y#RTXbbgfAG8kka9pG1<%siTeF%_*SfV4hu=!I|jWCC%3!}ly_qwFD{B`aSCC_=e4@7 zDjN>Iw`H!7L(iK6kZ8?nk7l*Kml}M3OWOVx#MwR%T*4A?A#z40DQu)`3I*qGHWV1aX z`gRfAa70w`HC=98j=BzM*j3Q+`(Zc3N(5Z(MWJ31(@SohzSQgrp1B-ed|6JCiSAQ= zz(F7j1bqI18>mx}9u}#WJkNt(UO4%_96U1@)`&lw@@?k4*3<>}Xc-HZt00#IT|yiO zkIhWO1#4ge$pe`xm2<)JfODx-@o&-`nZ_6*qVR5Bc*V2Bz3f!GQ^PC5E1~FIb25G< zs874H^_5`s_TcGBgafqE+)(>IUs?A0Ni^Dp)t+^i1)RS98!q9~sa!M9gza|IHdi25 zd17|39+arTt(Xq+{A*pd<4qWL(sg~8teI^n14A7sLMTuh*9eeu1a2HhFY~>Dp$)T) z3$DYOmOsbdWt%}1#$L;YVy1@>w7r(ItvEUnQD9;j(4=soglmq0y0hgEV8EFziW{5W+Co}X7Pt0VwHhAZfejZMndfBwv6b1p7JDP!#sE?JLqSas~MFmF1wTSQDmlpsZ5Ylwiw#9{8I zJ{J3`q+$x$ic59{}(8n18;^tvA6o&pYzpaFH9AIV8~uwL${4^c5=ihHmbXZaXo!y z+usE$XyY>ZMG037gk8sV=6n*ab~=NE>#NMBl5l;Bmvbdtg-9(z265Hk^GmqCbx_8O z(#|L0`Uk&Y^CF%8XC+*#V{z%$YyVxKPD!^yt^BW~TSw+UA$=pVGLh2Vaq-sNgm|m? zQy&p;4V|1l%GOe{9qho$1#a1KWAMx{m*(T;1#ipcz9!;7hV&3HIeZznT0gg}J|_R$ z3SFChiko8qZ|L^G_`*6v#4%2YI7Yo=x%m~jxlB1L)M*-Ium}Ewze#}uW8*}YIqn?d zBK%#BO!S{=XZfFKXZ6^2CbJ=h_WnQ8&cEs(X(w#^5eb=l-Q3}(8R%nLX7XhaD~%RD z*_l9!n*js_cs9JFd>^$;+w4TB47K`Vuiw2f)98|Xao0tAeTT7sj}f-b7q@zl+Car- z-%`_2KerYaN!R-hZ;4W|?{G`brVE1C&fk<_Iy!M|5G?d+1H%}DyE2d*Tj(?=a`M#} zYyOvbd8w&38g@ua5D5TlOl%O~2%a5_QY!WC>KeQ(C}oD-%7ww}IDF6-IrR%XJKo$y z%Yz{O9^_H6YNbuUEt;#b-L`;3Z1(Qh79M#bHyOA9pH50gMeJEEcZPG!8ynm0B;!!= z>^QCOZ;wuF?@dqdPA}tBaJ9dW`)sVyH6K8?#HE)z^*0@d+Rf?dhaLMGyX2A)E_a4q z%}2HOC@}r?+g7d#m%0+N8t2%)&xWF%g%W!YfGc8e0B#PesJ0eM`mi?Z$75YB66n*1 zo_S`?GscWLtnNThcrgd6|7h6Z*^On1#mLPaEiVhgQs)X zr+9webND|x#0gpOz3GPy4AB%E!X%2(AtFN-5--?XnH!)Ph|TP-9%%0!>KoFoRQo+X zueJ2*YNKzSoFm~><5fnM8;U~QQN*i?4|LaU=2TcrObA41ZJg0YdMKsI#txMcHKoz> zUg42_#{7X{QPBYl?QgBhZo0)j6~TP*LUF-aN;@m~rIU<|g@o$mDi z5tWEEIVA=={ijFtAQFyI1@G`g-MLy!cZ(= zW8IqGL9oS=oMU`EI2_|f$d%1)yszGieSOM~o$*X3Gs<+pGOLi+ffBci%4;lMBs@(0 zYgiZ$XX?vx@(1%@2`_Ut$2L!`5vVqn{6;1d<S)3hO1h}zqurZ0ZfYZa!TOmhJ z*AGJJ6Nzf4BKDaUj}jG&Tx}wZfqGko@$9chNk-b`Qg0o)f;r|?F;Xxj)#+zcP~DL6 z>fS`X-i9GKv58?bQ-yEG_}z9ZoMkoUqrxPGsyO-aG~LEb=<|;QeXLkO_^3YBQZ>|8h8hfeV7Vfyft!nn z%MB{XuLp2ArI-j9>=Ly7m@#83lhRjP;v3j}YvV9%@huxGBTKH13sil@xDR{{DY-7K zFfJu`c@22gak5&pjKi3}90;&YMuiMlZgkJ4k0c)}K_?mj4JTk~X~!bYt3`O~gz**w z0DOS*qF6DeI2yY}uX~kac&b!1MUdhXyg+D@l}7X`SS04H7OL-UI1iX3nsai|a)MeDNrq*);$2dE zWfu!%3#5<@vyF$&$v)+a*||8a5(*C@ty95t86%f*1id##Rccuhm+3ZrK#%7In{0RG z#@5fMgUzVV^Fpc>vY8ML0ipb8E`*Sr>;$jnW1!4@F@DpDFP14FcfxzFA6^d19IiUS zHZj>4_L4mpp%|X=oeFi67MLKyUi%Dvllh|QweB+G2r0rj#!EaD{utL5UnB)srduk= zrPvcSU(g3@Eybw09S!^+Sfyw@tOCsX#y`rqZ7dhz?ZciX7p0tPNADvB?*gn;`zm_X zNo_rYE&gF__LkN=Yqcq*Aai>Lde}B6h29?yS8>B&uj-FB%512Jz$L~Et1g$SOK#5= z-n+F>wb-1e?>T6Mk-u(V=LjQqgjb)(zX!-E@kP+(9@1GHO5>P%6&eYwcc zA-raAdCw}>Q)BZ|ViR-Kvhy_k4Jo*BBF*~1-Mk`(?fL$ErgFT6{?GB__ zCppKMpH0xFU8^glrBZwpHpJ4j7dsspdMezdmK#%&%}afC{jjDa;)!~DeGCc#bM#N! z)e=#`PSP)yWhYieAcw@viF&Hl`(o)Mx=2*Bhm=7!o*k-TYK>jd4?a!cl=1ULeTuUU)pkC_(?9DB6h4(E!V zz4pB78CTr=y8eUkBM^vye^_seo9~blg$^)yBh>v|8c-W5I|)&w|%@PUU zVNbIz=aRoK8nT}HMfmdR@I2h^5dLrY#tY|~oj^qx z3F?<>jID5&RmkEI5SlC?l%snhTBh?sVrGS1E&4+U9Tpg4j076g zMTRynvHuyHcn!~uimQmw;9Z{PT3*6+C!;HPvV#k{gD{LM7d}eE5;mKJ5s@Y2lb!oZ zBSp#HBo|_ n71uross|pPJNIG?!F~SAXuXBxv491mD)6p07Dt*D-FUt1Jb}@P1 zLN@T%$cEPJFL_uJQs#5z#+zVmA`hiIPAw@!q3}ZXABCV`-t@Fo!{#hjMjBKuWw)bQ zm2*Dj!Q+q{l=9$AaM1XjP1MJ$u{<8%b{SM;`i%qsMqB)bVn^Z{lIww1tN4aY+b@XI zyJzlaPZo@Ip@_sZWaalw{-dX*lR?_TVd=U5*S!5oL;)(rG{7A!7p?@Ba1Le(nW$H; z8aV{oc-3u+v9;C~RG6Y6vPFWUV6|~m8r~8=Tj#{YxX1^IZ9bq~)W+9w=c}XwTtZ-bD8B7!0%p`MxN8riN$*zCNnxQ494md4B|UQw&M@U-^(EtX zS4v-{c;h2p6T&yB3kLdT2KvD{Jx$y!MLOwZEMQ3YZak~1HxmO4NFi#hQ$`=e8~cnW*u+aIX_&!ty9{a1dJr#V`rVc`~uuBA#5FwOR6nbw5p> zFzt(i*ExfFTI9wn^IFFT-){`=x3`QpFFQN*zTo~O(+J+~++t>o#sn`3Hj5TJ_gAT+ zu0y8aQd^r1@fNC%x1GhU?A;)Oc=Oz|IcRTvMJ?C*3zwT|dd9IkA)AXilz2vPQTEYp zrKE{H$fm!u0n!YtaIk*$p)eXw>J=E=fC`4-gAilci6_N*iEZZX)k>36?^^@Ub>;dm z2{TIF4~#R`J&?l>Elehk}PQ36yZr`-Mv z>js63*e@Dz2{IWBxwwOtlwuCYKU_!4&?_1tos3cTlj{`gKZgIBPesqqf5KaIgfR#d z*4uZAUK7nN=fW|u+`44olt7|cS%@l)(gM(Jl3*|!xN=#WX90hDhan_w)^L_ymE(J3 zGiqQbZZ>WuOz)`;SLK)&K&FW`yw4SB4;e#$jBV=IGo%=-eR`TsQ-|+$Pt&J7!3H?e zkD@j2Z4jMR%L;MCoPW#D9qR6dGIctU?ZEI^$s&?UHVWe zkc%OgrB-R?mpIRo*7XJ(J_bwrSbL+j+}?CZ>uF8D#}|-| zTqvp60~^KB3n)5~>k})Nf%@}UC z)xAoR(bKfe+D&@Z-gR6cj!Fg5!iqnn1KAtkwVxPi4HVwL*}P~>{a459ztDJe74;8c zkM`?lX$}oeI=2bPN1{1I!Yf79OBJ7}SG!1pj&QTI4lfIwxXsrX)gOQ($(6H=7jzbD zquXgBMAf&w4P&*Z)Vy1YZc}7~-1-U4>Z?_I=S#2xeMmA0&6k6Dq-vBmu5Ia*&Kf-$U#myIg;gSiCAtVj)Vz8I^9WNqi1 zpQJLv++0c#+&9&Rb1rjJl#8rO_IFWXjNc^{bMw@f)gJf7OZG!5%P4d6D9p_(&&m9v zmD#)j>{TyCt2QuENbMMNQv6LPv=MLt^V-SWrc!QEG z+-7V`{v4wd*C^tO$Gk*{XD%c5z7&QKaUcVGTFzA53QcXoMslbV={G{()I0N&B}4mQ z(!epz4_g0 zeQphPKv$@&FRC{FaR#T1I6-PS3BjY-H=r%RXZ>w>GSywpk719H<(gUd9K}bvv-=dEHZBwqDvpX%_5)@ zEQ$Mvz-;`ka8C3-zzba+`RrR7nYYtB4G}4tk5`@gdM85L(hcJ_b*j0ku*zJf+W9{D zd}kVx27VV=nuIj@1Kh1*LMFY|69PJMz~zkRoten%X}W+2@xUf!;{Nk!PNHMxVbGR=~2zGP~aXXz2avjy+d(qV&Lz;H~IR|{@z8A zP0hXa)A5^?zrXl!FPgl~sd4H$q?-M)!|x9qYQCkp*GvwP5bsc`5ucgg)jJ=ppI$rj zpeniXLn-&(Q_2`ALg9D60B+63~!aooQyeud`YFE z$4A!LiTC|}U2At2jUiph`gc!-ks9t@YkSQrHO5BFXI!=zuD(2!B@sFk+o zcNesM_A})l%f9%@2k5olou47S_r2MG^D8wfZ#dwmzx-!z2h!U(Y|_>)FIegtdodK<{|C*LFRwUYZXz zeDvohY-F|=^8EeQ&;k-v-8{k5bRX^dGgGzZ&rKCBjSl4>7@4Zbf(!AyAmj?fkI6Yu0PHc~8oB zGLe?eOh2t0o{2A+>H!}_L3FG8^gENK3Oko1QBumm>r0osQ@N`Q1j|E8Y5 z45Ybu3An0pJ^TTeBH3u!02$HrH}#B1Xm)yCZ|HO}2tb)zuR6g-A0Cfb-Rax_ObT~+ z(rt-LQ0U};%O1LoCjS3#4}F?m%N{Dd|9{yY`sXI>{~LSgvrNkW$UXE4ftn0y-v8`9 z)N1GRv~%npD&PN;_fQ$v^X#F|5&W0$p_|6C;FSj$oIm(m;0l%$?5hd;w}KFb>mCRP z9tqbyAFkULu6sIM_e8kvv2fjU;kt(~MT5}#@1~r65&9P2T!g?%mx;7y6>emoZB4?5 zs2d-mt_5lM3CIXI7MbQR=e8y-3Y|{(eE%!pU^q{E|4sa*bqAwY22Z;-rhv{}Z@#0K z<>}+}uuz=!ao5-b$@R&#W*0=rkdd!V#f5rCNPJ2w{>uULUvT5p<$pj>YV#jLs~^pf_!cEg3GnMYdW+S7cBPtKrA;d@Ndpq@J-JT=F0nO z&x2z1sy@YRyuLm?dM{^dqNSeuZqU;YF2^;q^%tSM)yOLS>J{>Qif@#k|+2M*oUOIPiq&Q0>=F&$)7eYs1d#&Dn`U zH~j3H4)f(uL#|C*YLy$g9-)qBwLO&n3;kfIVH^Cetzkq8-h{7OpR?TSe||$&uwfv1 zlVjLFa1&z__CGJZ_T2w2Da_jXwA$-KIP*|W)y-X0kLTM-^gj2_eQBOueNdWv8c&yJ z!>$--4eJMH@{1LGhsz!_(-(L>4+^2uiuzPpQHzy5PdzsUueE9D5$=T^@w`$uO~Q47 z?tiS{5SK=8)gxS5k2(C$d8?iXI2`^QZ`IQQN4|ebk<{gRa0aa_dd_709=L+n7u#5j zq3Eix|5+3;o1y@DL&m_d7jtig3hjTE7;jZJ+Rklj!v4M9s%Je-c*V7$ieA=Ka7gz* z+urc3Bh-FNs5doS)+8l7PP8~EZP$+}a`+mrV_l~HS)^en7ra>6OOd*ro*g%&i32c( z>U|MVrfPZq$nn7P04Ls=cWB_NW`J!`9H$DuXc!b6u(`Wk4mp&VXzf4*D3 z-tc@sjjvt1ua&Q(8@WD({oOP-nn`fMsWq_WrY{;m@e*7!Fwq<64rF-)djsjJQwO3Z zK#%fC;F3iHi(M+sMc(yz=k^u^GQ)va!-4K_U~g1RSh2@M8jf}Ow;{*Ch(Ds2ZG(4O z_E_`2%{NDuB<~ITpN=fXF4Yq{|I42C>=?&AIkXy}_}6y*rlH6@yYEx3DSdKHd7knh zm9k7W4rz`xcwzQGofNw3iKJNBW1)t}Y+HVX%8&n%SlKoKzAZm&+>_KsJDU$}{;J+^ zyg7DHz8*jn>Bzy=M=v((b^n;(I4^nvhd(#gZ>FvuPdox#ogWkY%=;(yX zj@Z@Q>fLL+Wk)u0-#yX@-N!D@M1yu)U|y)!ThJIotKYK0Yoz_&vUg#` zhW+m@GBel2{O_80YkN!fmZLjmw%7Q2*3Cq)b03Bvw=#>^`DP-ov+!?(e}l0t$Xc1c zHM;+3dev3|N+`Bre<$q^`}eO2R~;~?F|QcXd8jS4y4zNIDZ?C0mW-j*du?I=tD%Nx zQB7U|g;n>ziZRK(dZ1IU+TU(undm4#1W^LtvjwMAb3`3GSg?;^AjxKWc#&x<*e9~5 zqG{HW?tfrS7_RryG~NGDcwB|aOecfo*40q>cICIy8C$ub1>RjxwcP@6$ZK+I_OWia?XcANCY5s|f zQd=>ca#4m3B9DXsqUIS8_H1z=b?wOuAgNYJ#SZKtZcPE{iveclOjZvk=+ zx4rX@;kGg9PfVn-=1;_YG!ahZEcYhe%vBTdfq%KN;Yw&+^g!F9BdWv3p( zM)p?gc9$K=-z7=L>#H*nSW>KRR~{Zap(43_Rz%cK8_sU2g?9BqXA_OhDtY1>z$qO4WPDkK6~*s5e1ESp3*d8O533+Yaj zlUF85Fpu(8;{;`#_k8Lzv;`8CP>LUL30sE!qVfcZ$|}F8Jbmg-P$61h>j9T6qNr@9 zb%p!FwVZcN7vIWqY>$tx5QJm$%CcbZ9eK{)+Z?4}8;kbo_BONjb(XpJBCJ4f@X$g8@Nx@S@q`b+UR3xE~-`rwrg-tQc+*OXO;RX{jKLYP3qsdmfh z&S4diTm9Pp@wGX#uRgMy{w0e}utG+DLNc-60+05-pzT#qGFK~7dRl9ScY7Wt;t?1xFzC0AqL@rU%T)*r|2 zRx_z>U=pS{h*~NgRs&@L93xRS44XH1l^s9(_5<&5LhJj-g)zA&$DwGJ%=gKv`1 zx++_h#KN*(Y+W_29#hes*t%*aJwT%{-UwHn(h_x9{Q1af>mjeJP${MH-=h{v<4@+4 zPCI>SI2s$WauEyE>mjv+BsShBpUMRH5a?KZy(b~iFk9nOqP~_mJHyuuF`hnkRA`o! zzILEEEHqtse(r0gjjwDqYa$#<<5!kXt81I_E6b8AXy9IjfqPJS^5N3t^%%aZ%91fP zL8ot4V&8xvdw1E0%jF%L>yM&U9-&sbL2Q*9Sm{{*kX^7o)B?S~RWznNQb7ZDU4wjf z#tyMTUZepVN+cMtuh$&W7HQ1hIsH()QnVM7!K?DLVn<<~X<-)V8c{z@3IPc$5` zt56`=#MLgOY#8QLYs#jz$tex>$`^;BJRiBA=5L|?NoM@~9sR>X>V~K}{X=*359fB^ zgL|jOkebrfJEw<@zjJJvuX@YRk{Lf=K}Qg#f2UEcr2Gkm;_)i0xQ15s0{g~Z)TiCU9ss<46XKuDyXJe(-{g?RX1y*Fjc6@!{q}) z%14Hmjz*VQgEjCcXn`3YVT3w@u=W9|zXIu&O{=2R(IBE&apjT87;-|et(3n%aHz;Z-wh$jp$+p$7?&>MoU zTkI@v!<7!(fbWll>nlAWF=5GjNdWGO++D6T(^>z%4W%R=+J#*#-ooMB`|8e-HFF|k z@wg#A#+}#^e+Ewu51=DG@Oan*2Gum^2v(elE7og$&31%w59mi%c+O+aOJ;a%&Q*3L ztk>by_Qb-?u2e%zLG5cAx#LV|%Vt;X~#M@*&SZB~> z`H14bxHZBX8oBM_)^MUiTo<>7k`0kx+#2E!DV(8mX{*3vXyhklyEh3e?(=rm?+0Uh zz}P-wEK6j}A~Gh$V;fQm8{6%`m{BwSfE8+af*I;V~*=*4YPGDE0Do6guxEVf#=r)q6bRSIxah0-5k&G;^Fg03N9lTm$7&JKc9><)IX35p1Q6P8|#IN^w>>vOnX;&S6+on|8LFg@Q7MQ! z!nDAQf>K0V5Q+Tn^OyfV3cQ)xK(|kD+>^IspNdC7jMq^Xff|*8+#+fghB_fLls>go z*)2Ze(!p+DMpk03cN=z*u7*!_Ta3ghm_Su$p*25<++cEbL2+=_F3QhHoI53EXg3`} z1qy0C;joHX+8qijRW`LLVf*y#eSvmWwx!!PYD!XgqdF`wuoUmR!(ScEVIpeuyDz)# zFF9rL-ZSHrKO3hg8)#BOHprxGkQrLGwQQ#%IVv(f>e3dJztB|~D;5+H==e(W)te4Lzy*1h#Fk z?a*ODJe3-lEn9TaX-sy{;=J@_CFV|)L=#W?vr;oc6G$0fSYye3R1 zTfKj9%Xblx_*Q$AFEa7WJ+0Oq&<=~jVUEx>gp$Fo9JJm~V3L1JN(QGV)sjBp8Q~7g z=e6Q~!@B+Ff^I1(1q`B1r`6XL~&;Y6H{f&unVnkWhfm_ZAN*W#lA9iS;tzwnIj<+#G3x)mOS5M_zs zc$z5hcsnNQM-ccZ25uZHm=TVhr(stuq(2anh;QedW#v)kvO_d8Fx(yaM_G!Wq)k>PO{~kBy#_j?c}FWXXfNwFuaChYf;U#^zaTvhB>>?qk9jxi-9WQMO}4>G);k%8k-@mvoX z<=Z}H>?m+w*8ehI^{b&>c20NPd+)3h-XHOj3Ql*z=@^`v!s+uf&x{!>^4$Ll!fh+> z|CeY$Eo{`bt3A>o#exsOz(YdGmWWe#&O?VscFOzLmJPa~*je3b&6TU`cit5$Ikjr_ zm8dV%Od*`OK_y-P&V z?Lai7LF7n==o9gpzXAPBqE9FK&ex-FS4Zz>K9%T;iT>Q%!OTP$gaQIHJ?BBmZCW+|M!vhIf0Qh0sRBnsbKTV5L?`G72^R%3f4HI9GLbs4X;TXqd) zod6E70E2-{AP?{Y#lT$PMPLoE0oV&11%3utw@?-Z%!v+V6M;C`Q-JZnMBs7YW#B{L zbKo?9s)0X%D3n1*Ko0Z=QUM$AGC)^%%73G)^&3p`#dapiKE@=AI@9Sm;`P*zA(HLz z3*2AN{N}O2Y2;3^#sG<}Ls?=I@Ygz2BE?b7#ce_*Tqnf8^zWl@W?G)rZMS7+I|~XF z^1j(F7aPJ{%+3m#4pXIA=7!zMy!fBM@|go>H0!}U>^_=Eu}u8>0dY$2_WeLUV$Y5&Q_900Z94V@96dqdG~}jN2u+ay@_+TyfE_Z z&o()B|M1oHQR&?mPVtDTX>wG5LuIDY~Uu{l(>!+i(Jy(C9SRLA>jFW^u z+q!4&+Y^;>8;1>gbK8cDCl0(+c;?4HrtbXhNQtbu^vOHgg}pkdZ_e6uL;RkN{Z}1% zF=gJlKXXq1b=bQrynlIGTkA_MY4~e*%J2P1owV=cZ^!&}=yKki@1C9V#;+gFPK}CP z^iZd)rEQ{{yreKJ{-n!y5(|7A?ED^ifr{4dS&Nld`u@eifPAy%)X8&W|9k0B3u=}>nzo@IW zv`cLEnSNxiAI3O_T$(oB(R@Y8ns$#qxv1~)SI-+N)*k48-yS}t`H{PGoad%{ll~fA zwl;M6v(HE#d;8a(-*2o`ZrP?C6n&sWM&yr=6c+xLIW;+I$LvF$epqxNx_If6x@GUZ z8#n0FQN#1UEy{{Ib&tE>pQiFJ!#{cHx3(ulc&F=< z51!&mK6!ZX_%AXt2Oc+$@BK@sqE<<0KLgN`2C~5b6Ixg%%v2W71_7}w9lq%-1E7mq zU=O(Tf=O2(e1L-d$D$oO(SE(~r?|*1a7mHgFvOK2{Ffq~7&ZbeIu2$!AjOfGQiSj! zz_qmXJY7Eog%LR#AmnI(a39ZxBPU6)*T)?X{@enW)Z2!k*IC&(p_fU)w-atoe{Upi zJh;yhsHOgXX+s$_2ajSd8R8F)&v(=K9Ed4bh*9j4Z{}f(I)g(`vQ-Wb%FrnN+UOskHd(3n$QUOpe;4%P9OPrpC7Zh&2cCdLU`0 zK+;eOV!Cm-n}~ZVp$UMKO~QYv5MP`ipRBkW2)Bv2b09oPB8GO83N-eS3Vx}G(~7j5 zLQEOpPW+LljA?~mKiK4~AMz_hEOMASrhQRjpTDySwq_Yh|Ino?PW@<9CCIc(nH);Kn=j=Lf!&WfCDT*7T^Nr!+$kU0Z5*J zyauYsoCo>^pnZx-dT>f#zaE@i{3j)wuI^vo9-IOl#B9zqo26#6PWbCVUmuRK1O~lra^qzi?Z!5kqs7KnC-OLQ=IvQUb`FQ51=QdLKabfRiNJc zLNX-bM;D@PK%3z3B)IJuA03`FyLY(N;S=lwg6uJrWeO`9hc9Rmz{?!umGV2Ra6+MT zQegvrvONV=Ar!!W(bIsm$0|yTX zx@B=gl4AxA4t9ZjRdWhui{>$fQmf15$QP?cnrHP$3#>M~)Cza6*IwZAO1)00!--P! z=GmpO(m?u-{Bdrpd$Kei<>z+Wv%QYVeVeB^>{gFmn(Zv~TC))nA%bGR*CX}#TrQ^@ zK6Yz?GzS?daJub?1J(keVe}O;fIJX?iWbfLNMq{R@FDKxw1G)T04(OXodrlD-y^kp zJobWdj>%G+&z)bGD=kD+6NwE_R-!BhJhj`;CjabA){M9F5^ZUzr z^7j>5$AL|>oO%jrp55vaxkWs3%}w$+DL*KnP;d3&)He+0@!D<@PDSBdKD4%p`EIYz z>Zq?Es!1UM;tPG^24z3iS!gfH_x3}>fg$x$7VG$uX(?QNzMU?6A@u`~6XjsDPt4B_ zqV<=Ny~u@rgBC+26Wlw&hfF9RA5!$w6rkDVd-L3O^hC6R361G*TrU1VHmlbPc3X&5 z9@H&`PVcrq+2*DMM2`tF0^3AlJm3O zPLDIkD;=IMt{c*<&>;B$-`u5{wa)nZ**6>=L-e5GDEiwIL$b8_?Y$4_t+6gpiGxjkOr#7RYyr#w7$+Vn>-1H&B2>5fNJ25Z@N z52nZkm=k3SvrIc?NPRJra^T0{mJJ^!%$O5cAI1mSWlW9HF&-}DPjh&BB8(GU?Dx~i zUw2hZ4@rr^UGdec17Zex{K-1q33jU&9Ww>871aiU2jWu)$0sS|6fzofG@ro7eRRvB z3w;g;tWc|M$}mt$SXfimG*l8EA0OX@E)|ElJrPRzl#JUVn1D#c0x7CEx= zvT!k0jlLpLjN5IUj6lI|_2d}brO`~9KG|h&6iJpa#7I3}be3!g13}>A`mAo-y)3K1 zT4>FMjFPAPKzq~pY?IN$z>;75+90j` z!zc}mR6HyzKvO^JV1yNYv+Q{Rw*M(hL9{nx>6-Eg;wh*kz}Ge9RzC*_Cd_gC-Qo-Kr{OeE z=fTB>_TwMYZTX)1A}X-DP!55%bu%UcG}mQ-@?O{8ug^f12U7^ETP$)KV(KIEw@Z7D zm8OlsIjAqHy7+}EyIy#a`3A9Op(un(ApRQkS$}6GcQ5+4Ge_iMB29BpXA{Q>wNH*& z{+2-YF&Gf00zCnP!N^P|BkKWsKcEkAKhO)9Iu$fMVNw`iIuH$c+#4o>FbsVR!RZ)X zJi{YA(8tt^Aqcyl>;(L~A2+=OKgKXw62t~>8MV_c2yXM6~G2yJ+KB?4J-$i0M7%9fd#;PU@kBRm<1FAQ-LDD3%CFWkO$a+EFcre0MdaJ zAPGnW;s6U^0C+$Na6oS$8t4c}fC%7n6XXdv3~UFM1G4}d5C?Pz7;qvSc>$IHML;Hy z1SA3$fCHj{aG*8}D{jDEU==V6$OM!?1aKB*wi8$m6ah&92T+;fq1r!T7=gz(=cF_m zpztCA?!!EGw>Vf1tbdTCi3a?VQ1LN%4x5Nae3#E9xQX{-G%Oi2AB<`JokcNhSXz84 zUWLacB~gvvx~K%C*ZiU}Cli0y`d#aih#A_=ezVxMzlQWPSp6@A{k>ms3^Q5%FBEGi zf9DqnFTK?WuBm@1%ln^h0UgAYI2uyNDo ziY;5WZU1=3Cp&lT-m~}9efuj99Q^F_FTOl<_{h<(j(z>jw^iSLfBeJ`Cx5Iyb^6TN zpME}9^UL{PFZ_1#Qtj`5{COE)#rQ8jFyHur_-{Qh|8M92e>?sEa{2$W7Zx}67hYKW zZ|6TTQCCo)qqiiC*>LriCgYNlWil?7oZQc5>jw+26zutl0kB?x_tL_$0>i3AogIr5 zPIAV21zxd>1X#ZCc`$#)N`?>z7B%b?7nV5kX;O;Sj_f>`Som<`X^+m8@Ax7}U znv7^-B?e&`!ZFY@&@s?3_*1m3X>swR#WRZWf+p{?NVuWINO_P_G7ZGt=k;^s7!98}!;331(yTb*#62kxg+&{@c%(t;#6NTWZX>nBy6cUWFy3Fi?%t=o7gv=p6ugmAnq&FsZ_gI_5k(nx3<$YbYao2EQ!JHZT z8v%D(=UI*W3g8%EgD!>O2fBbZ32APUn+2e-ZQw^dL;%5lweW+Ja8cL@#MK7i{BZ`t z5kcc{(TGzB*vKy_zz^Ih&CH@&UjpA93`&E87@+UgFg82##Lw*^c zI~EiV7uZ0a36?IaPN9F!@#l z@fb`?enh(jwB)|hA4cdK|0GOhQ2bJ;EC$CLum|F2Kh^V+^iOEHAljmTLYoytyZk1! z#7`IK3y@g_Iw5~BBif66QyU>aDho16cBlF218pSOF9PfELa-oxX{`XDgG;0)o>E4sU@zWhM~pU)hMi=XQwxnJ{yJK)nX%BNjR$Nq~hS z@?X7nG6|v*@)|G$e$*ETy`jTP{gT?C0d{grf(fJUA~(7M={7Fkal1tR4kEp;fB;=^ zJ_qh$l4Kw_o?!mJhu=xRKZBkN(Om`~#8*Ve`o2N(i~Iulp}w)WvSGZz=@RXM&+2)q z3bF^MPjpXzQBU_$kUf}g#~~)!4G?`GpTYiZ4>L&zAlSb#KffQjx&LnH*WN6ApRaH3 zKl`_a{*Bwy*Wsdk4e;N%KksQ;uiLu__5fYue9XW5=JAa2>j>W{{JyRY!_W1%Ria-W z9U@r?1eZhOd{p*o=)W^4JcYCNY3ScL{9ai@|Hk{(~i9P)me9K|wk+2Aw{yhrJYVq2&|2UnmU08c73+ zf`E&k;t>{$2U@Q^0lIA?pxY6P^=Nydwb16Uvw>kLK6kF2!sC365pFEX5*f=2qX%EX z%I*mV4?dSb6NAuptDEeCS`7A6hQwph%_T&U;8&Q#{4PArVaI!nlf(@-R#FUm8p9B>Yf#9jIRIg)L;Uq-OhJ=DLZ8B7)gi?+1P&!n;Y-wns z-RcseXWtU%3D8ub*aky02r(Xkt|{~*Vo^-cK6IpkX+abATxgQrI?;ZO`vgjfVjc;_ zv!InN#-@ai$hX;Jv411onM`_N{U@U`-xO-j2W8AcZ@QqjG0=v!)j)ls%98R6?J?|k za!GdDd=7s-f;TCpMeA!ZHXGJb@s>+TWd%o3t5rpJbvmvUp#v!=SaqIYw+$@Jb_+TS zcm}7|6;xjvg6Z&*DnQpKJUyUQR;PRPS`haEM^pH)LZ~XDsoCNKD!V9dB+b~J)UIym zeIRt8C(aJt&RkTeU$5u|p?<`sFfuIFn(wjK#ftN8g?jbc{7su(s4pd|VXDIz#$FQQ z5PJmP!3cM8wD#b#n2OU!Pp6WVHw9io_o_KZZBRxA-Kv?X1XPz(zX304=oNYugY2z(9-q0GnEYwL-r zd1BaRqQ2IHJ#d2%BiNSfhXCj4VMBd(_v942ThJSZBCC)AG>aVKIXypnfs)9O=HXj$0ai{9ht>g%51z>hAD-)8h%+b@cs?<`LJ6a z10859LCfHlMF1@aQ#uUvfHWO`Fz3UpOoN*d;b5N+HwyteE|wl}*TTe0<*bEB7j{mE zSKPo7C`m~H7rr<0Ipkx>0E7qd`53&sLmr5C zN*{dG^aedC_fY;|R-zo1z-s|z%RfR07@sUGtdiA00tlt7!KqBlYnW!T;LzT3Scd;4fqT=3H%0x%McfE7tk5# z1*ictkOGVX#sTwy7l1c`bwCC1IdB~K6}SvU$g#H-xED|Y1AuYBBw#l14Dd4WF0c{U z4SWrp1TF$C71)alsDOb$29OOD0*?Ss0!xASfjz)6;3RMX2vZ_F&#Qs5#=1j$ttYz|nhy6tPwjr_xAlQWbU$Gym=Zg| z)J%hBPy502&~<~p95XWu_7C>Q9GSGA6R@i>kqyKi#s{Duoea(BAuI&~AeE)DbO@T^ z*man}9%LigDC|)j4PCmiEDO8R#zEKGhP`mP(6Y$K$9^V2_qhN%&`$OccKCU)H_(Tj zZj&H2Cu67F!_dQ<1|7UdSTVF@W-<=D)$G`}H!yW{@_!@N+M^&_m11#$u%>@gWb`^OC&Ftq>J5hF#%6zoK5m`_lO zX$sB*QexsCprXO}*O*O;rrxV@$u#tBzx5LK=D$sMdaVwB^hhL5*n~s#l7f6M zjKV^+K1|YuJjc6iu;!ytk-vw`!OD%=O+nH*~cw{S)mq~c7rle#M13Av85dy!cWqsA*TP{&nrLaI=mF%E3E z@rd)ofZG6iV8s%DLTZAre=a^gC3Q$L-HY`HODgtMcqwv<5OK+*%_>O$8wk3e*(P?HcFN1&J%E`}V!8i1B!sij4h-1NznnExw-BbMs@mfbm?WB=AwN8J_Br;^4 zcKgsXy3hdxH)_@|XO3H!QR|Oi;QK)fxV(^gxt=b+P9J+NpRK)EMg>8nwoH4=V1U<|uf? z=Hx5PTK8#5P#-i%6G}Mhjv8`70&vzZRZ@j-m^=ULS1S z*TkIG=a0CiaKYTueHa{sesmRIN`n3KDl4jr(w2( zSp+j2=46-`eh-mMfq4SvWtdeksnRN8l6+_j1Y|)VFEqCzo|*tHfTjTD={6t=pnQ@^ zZe&tE$uANJ_))wRmdsWFr9tIDZd49b1_W{^{>dFnj>3J6{~k++!hH%%3WFs)feuTH zf{CSHA^rzpQrZr`djU)--~y=Z+yL=P`5=CZ0pfXv-<%1P{7V4xp9K&_?xQV zu@`l^$XQ%esG##5>!HG$5tyeT zeWE9m>YC%WRH~_lLZ-+?!4k{V;UIJ(~!aRz2qHG4A&5Bz_<`Q;zyYKF;pAEK1YhGOIx_{-HAHR@qsT}=Rj~_ZbF{J&O63au+99kILvPt=U zZ@*~yee;sIpJv=KZ^q0IESn8qyt4o5z|KWmKeIS@RLwnAylcRRPp^#GFnhwVd$r}4 zTvb#1Z}|F&Z+?H_&ok3s9~!&#f={`Hd|hKKi~0olZ~23&zKd)4gIJ5@Wq17U;b#``qy9ktg~*P zwD*k@=6*?|zDwS|X~DviyUb5*Pt*J2K5etO{t|%r!3BL({Fg%P zki6kV@dF!uZICWHT?;z3*Kwz3=Dh2;H-peBhF{K$NHyh=*<} z>7~-0n1=v&80#^UsgG+o;;PRZ#i7EePAB1W0yvzDkGU5{s}RIaD?857a~x9ln#|kL;A+0bG@>OLs}td%~qro;HtjG zVV9cF+tT4nZNUTH={r01b=E9mb-1DKQ2U|+N1?~q6*@OM50nTCte!qN2Uk3#nogb9 zSv>`PC(63w;Qqq=94ILb#|9B-tr@$@`f^=OEt*TE1{|B}@zQ=4>EDY@A%;Upk3AcQ z>U$>(@z5i;q3)>g6zoTW23xM(Q|B4%9bbf?q&_Do1xp>I8f@%p^$aYW=$v48ca{3` zW3uVsX=B$MtHWdOYBKbzi@Raqy7+@Au1Vd{uK}-yes!5fa6`X9d74sUQexub@QH*B zC_f99f9HD=_|zVw6dx;ADpx62E7vI3D>o=Bl-rd%m3x(GYOA_P-CEa0m!i{|(oNG$ zFPq*n9WniBy2I==&otMV5m+jo@5*zdxpM9U?ksno%qCkT`#^S={C@c;`LpsB@~!eF ziiM(JKtF?g)|6^m@`L%O_|N%t?Ks_5-5vTd`j_>q4PP2Ujs1<(yiL6GOCN!PR(*n2yf%J^Kshk+BUjbx;FZCh7+bWW*VGm#Aw4QWlq_vGMjvj z{G9xLg-!92;&Vl+a)B~V^|`9MdX3t~&(eOc?T@hZk~srmmMPXK9#aia-==*UoVbiH z7}pth7!Mi`8GD+HrZm%N(?h0*P4i68npT-AOb1QJOf{xIOt+iwHuo}X%og()bGCVr z`33XK<~`=a=C94H7~i}?yti|AaUHn_xCgm0oSmD=&E;O=-se8ze&McgVY2&WT3N1a zqHK<=T((5ELUvBpOx|9ukjKica-V#y{1Pg&QQLld<%8uQhG^s0x8_7ma2QHm1>eV*Q-cj=$hf299Oe?ecXzl<#w;f4r9ltE$` zX~;6z40#5Jp^0&m@k`@Zw6AIj-ao*I<80gu+}m7~ti7z8Of9p^7Rz3gy&`*0_KEC} zte1SgT!S)RtawrJwqlRMjrMlC>VWD~bx%!SO{`|HX09ex`;m64uBE<>zOUY>AEY0y z&(Rm?r|ReE7wSLI@6jL8{|tUQ8HR$3d_%cmgW+StAmhu%p{DaDFt8eXU}2o+e&-66 z$CWKrZB;!~{Z)feTTay!Rk5nQdb#>d^?T~|>Pq!#bu&#DO`_&O%^1{{PcudHm}Z{l zMa>G$yPAWVW11-bUF~M=Xq3}(-J7}tx+jR6^(K8BIDAt7tbT?5 zU2wNWze|5We^h^5e@_3WKElw-(818v(957O7z~398HSC9t%lY{sj;t7ZyanKWt?VQ zYrJ6m-FVd)W@=_?VQOu<%XE*ai>arnw}~^UO*)gs6lWS_8f?ln%{0AedeHn7+WjH4 z`{U+QW@<1bSC(-rxp%pfXz5L5QLdCfh8O_Xv4U)oJvTChFGePU;?Ni#lGNtWHypRA;Gk)dgxFTJ#Kc zsro7Pi|S?SmFl7uQrD{gQb%Z7XxeG+(e%>r8k6P$%>>OunsUu+ zn%}S`=zdu&f5F5a;;H2 zP&-&VMw_k8*E+ScwR5!#wQIE>YG2h|(zVr3(3j}f=r`-NhE&7DhGN4a!)e21Ly|Go z=r+D){Lt9U)Yg3A0W#v zDwwjVGD_KADOL7TrYpxO^OR-Er<89fH!D9@?o)oJY@&Kj^&x8KQnjg5E^P&7B_+OaHZTUTqxSw3E5>?8?>-F@)zU<7{3lGjwvoE z?okd^7AyZ!N!9nO2diIDf2~14yxpSmRC7x0L)tmoKXp<11bv!*H0sE!pN<~5QU8g) zN`G4am%a;nTe)G0L1OG<^clay<}jaWhG_xHaEob|>42%)6k@)|+|%6Ktirdm2AW;w zXU(shKQ%LHh#-fb;x=%%$Z3GI*drJ7gx+J<38ppAr;!nV$s&d z%cjWY%AS<{B>P>~MDeZSE9I}syHxk`6SP0;Izf{4Hl~?Jm`9n%VvNl-Pr%$`BHHnf z*i;vS`7+Lo$ESzP+(G40&Gbn553t{K8AoPNMbQjnT&5M$V`-@7(`p4-e_*DS@Wm~B)jb}A~-rkFB9d7tuewD-fxZagmVs!Elh9;$YzJ(!^TIq)CM(LL5R_Iot=GW^s z>U!%{dcFQ2+U-gGMT{D)4ebrlhQ0=)Ar@oYNQ`lXh9bkGh8?JNW_%A4r^0AJf2uI; zHT6N;O*21a#=9&kBUgwp$6CZ)=2pupWfk&M^8SiSibqILfsQE=B^idsy2=w@3G-?qU5Y{T0J)#*W4$V+6*c&X|u4HH|PG#T+X{SnF@abwvxv z;GRai+Jrh*%Hn0kvga{YgvvR&Nj^aS80MjW$|Dqt%3bxp`c)>;>8DkaYVLHHuJ3(4Iw*TdLO?EQaq5)rMNbV&mJ! zR8yikh1yYN2=>k5WEk!TZn|uitf#!U+#o+D{}r>+)rw;EBK7y$liJhTpS9<;7qx$A zuV_PcO?Az6Ep>P6E@I|(kA9&3HT|c0R)upF5zisjOwAmO&QEKe)2zb$t^@L?!kjk? z68d9|rX7rfFcVsATxNXLxQfcLCWIY>F$dCWzH9+z?8`AuRAHp3mYv1irp-xn(dmMn!TDz^yR~t0aj^FXsR`5H8q+Gnp(`B7$43@@KL;k zZ^O6aJMvPDl+k=|p5v7mBcJD&VAin`vyL@r+e{m-jnGD6q?)UpuU(*BEWA1i6`ofT zHA$KjO}ZvSld1Wi*k@acGB$mFx|l$Xalco*;Gi}S#@GjX`69>`6kKAbGtVwOoT*4M!bvD2+_yeGY1G4W5^e@hA9d%yGg|e^RXllA~C= zL|cJpD5jI@ERa~mkm4J36}n@(Dr`WH&`0UJ>!UG>XX4q(rC*|7sb8hvuHUIYp|950 z;E9EvpP~#>^tdEEJ9!Or4f74F466;57|SIX2~&(N<5cv5^~S?^Ca5*GGx4SjQ;})0 zX}#&Nsn*oS+|H~t^X3e5k$IMRiMhgDMSWE&zE5VHlrwM^4o8j%b0o&K;i7S$!L34V z9fN#nr|qa!Vm6YlbzwfT+OWp39?woVo5C1nYy+v^9pkYQV{shhf4VW#XfryDUT`$a zIM=wq_`GpB`sNzr2I`+F_$D`uVr3CV$Qo?Km!LM{Pz&km40R^zA`fHcYPD3;T_|-< zqr@y-EPHDAfzk3`-xoQazfSwkBO!F_x>W+VO5j!r+$w=vC2*?*Zk52T61Y_Yw@Tnv K3H%R~!2bjNovdI0 literal 0 HcmV?d00001 diff --git a/EpdBaseClr/dll2/save/Reader2.dll0 b/EpdBaseClr/dll2/save/Reader2.dll0 new file mode 100644 index 0000000000000000000000000000000000000000..3edbef2b10345fb3dc6fabd2da8d9af389024800 GIT binary patch literal 158720 zcmeFae|%Hr**|{Lr0t=kB!z$xDh7>P5#|cP*^;U$(o$x@q%8>uw5T=9GE{^FaTZKX zi#a_6abs>ib8ha(^Y}daOx@!OI)`bCEfqvSH&L8J$F{o`x1y{RtmN~)?sM|11>F36 zUZ3yxj}N?>bI$$a`gLFTbzS$5bDu>wZxghFAn5QHj|;+1TK|6cfK0NLX%eQ})d z{Fv9K?bKAiHm%P0&2^SFYw!BT+FS0h+;+>Icit7S+`<0qN&=w- z_20HEp`}0&Vkb00VIu8Z*9lpIBRw5-HgQtZ6I1tB1#aIEz~is~fI>tc@k))J_Rk^+ ztFBtxcuU|GLHMsqWDxIFxPE|Z+CPUNIIdEP3G=T-h69{W#q~->0*Rt17rSchy0y0< zf%6KUg&aIojVkB3YVGZ-??S=HiD}4y!&^M6+&tv|zkmM+B@jMtamyz>(Q2#6ezI8* zaARiQ$Bh$rdY1p7AQ*Pcx6X{}LeV+h(M?7ws%Nhty(Jcy8eMF0@q~bqkl(PAbfrGL z+tR5MYHdg4*QI)qJrV)r#TK>|SGj9>gPOl@-@b5%*e5m$0&e*~xy~xe^Q}6!9IzVQ zHB$3xz>^+cL%+`j@asekHV93r@6@9fm6e)9$N)Y-P@Y#MpWBchDc_)EBHv2|yoALo zHE%#Muk`S@skEq&K=d#`SE$*y&+U<$ta_5rVv+q38Pcvs6mRI>T#5^b;8+u-6@K=l z)hGFS}0y+Ul$`YvmQzlAYIq2z%F(DTCo|P4t=5c#13$B0oNZn}A8KwwBboqTl}% zPc`foG*SOpzu?ycWIzGgIvBVp+?7?kBzlv`iqQ@$)yC1&T@qi4zgp53L;Eg55Um&G zz2TlL_SUU}&>9OEJk8xifm`0ojzI}G#=eggefLPiqYiT7e;M zjXr4-jG^DYNKk`g2w-?_R{soYgz=EryfANszEj8s#zJ{a_;l9#_YLjeqZ$BZKNx&t z7a$39=UXj?2VPh1tcJ~BLt1epkIJTyMK*vRro^Sg_}f7b**XsB1!DyiV;ucTdX zlbJKx2H6%6f?JF2Bi4*t>cJ*TPj#pqLZM~&+U1GGX3mQk- z7Wi_ML=nBo$U0C<9_xbcltt^T)*43qBgex212+{Y`zuATWIRQobuj3$eZ=A4v;<9G zbB3DW)O)96S!y(HJ|7p055@k$*Mf7d|9&>#2RcU)s^e1a-F zUG6803$u*2-A+hB-}p01l;CQ5G)GTpjM2MAG|zmiiIQ1XJ?Q3-ar|SSz!-sieWQe^ zNf4I7@)^-sP%IOqtzQB{Pawb0$$LHS%r(yFouUiMx^yL~4z9+fO!`|>uKoOOg@7CCEUcyPLtwNnmed|-xAc|0w;SWlE%Tq)Qd1# zwz$mLdV;f8`Xzx;L9n$*gP0pV9uHdL=SoYsqYYWD@!(DJ=2a-_an{z7vbvxTGs&9n zht8l*aoc9Hh;zGwlR~=``<7q2!fFiWzD#uX|JLc()Y{^#VH4-R|G&Wl@8EFZTp>*I z35nb8aNMyzuV*uvaR+M3{0@!?8ov16S{M5)1k?HmxyDeZ4lavqeI0ttuUBy5$5Hcn zYMmhMPebQ6^ve^TSkXr{K7kW1iEgGw;Xbq{7sv(n_l+Q74=X{VaZk#dO7Wy`Dp`L3 zN61Qg(v3(?^Q1;WeuR_(WX<$zYW&%L9o)u#_6V1*q2)1PQM{L-{Sgu&EH8qZaEH!* z(6GHr-n+cDH+ZGfpAXf!j4<+s2Lb{z4VDtZUyj>BFpFDfIQOia3tgRK-!mm1?$HD< za{0%i?q8ZXStNGq{2;5&TI`H&{S8pMYS@2(!B9I%RRh?z81#+|bgFo&6T?5h?Rgnv z86mpP5?u(3H^BA)I*8~XB;4@b+b8es(MBdfg!`Z&4fTl0R73dr{THebu!Nq!m^({tDS^_Ypca2r8fkmqs^JXXdt%{YuID z4bL*PybMe}P)Okk8w6(x9h4GzoJ240FRc#*Tz*Y-(*}=U!!8?)$0ewXlY<;zK<9HTEp7{a>%Gt!2OeM*>!0E_LAOE)K`Q z3%<@C#8v6xs#$-XJ+H!8jVq*Y27CcFtnoJ_U|0b%0I<1MQp7!=lwt`es8I4asd4b; zgdK3f4ipA&MD$=50tJMdJ^F2;{xwzr&`2m|5jEie5)kz36BQ!}SilJghDo$z8z>@+?jn_tDg)%XywXj&8u@h=QhOc6Jm`@|*p)iqF}g5_ z(C#7**-FLiUFVfoTbD)~tq4;7v95v&8+QCYQC9ceN;ZcV3?4;CT0uq!@#JinwD4{R zh7CwqfrMhJmrATomYkJJMD>PxTWqCQ%0g*T1(47_j1S<2a?rKMIN8%YK-Bf*fKVY3 zSjaA&togcBE=n#vbuqbI@35Ea)@I2X+o95O(XhQ!?o10p>7RBGgm$F+y zepFu)-mQ}s>!cj1Qe4;|E!HE{OJUo$ZxF*LpgYl%!_dj=L#J;wJh&Kq7}^ii_?CW*AYi_AzJHpNt>w})`lpd*x!6fW z1JI4K8sAJ5^6Py2!Mo3ld)DhEgr?GZ(a`!4Qfqx7{Q9-EwLV;909faYPc#l_jJDqJ zP~7mn4yh76iT1rp=nn)I7fR?+g1W^|P)n}V0h_)C$)cJpQ8GprI}gCwAk#vf9e;%= z+x-4_-;Kv>ntP3yN^z3)L$o5OR>y(}rxNxPgRkB+L zGW4#R_(aUIfQ-Nt?uyBzF9+6uZ66yB5uY@4MNE(*I}t3!52Y74k}M!^vErTvT(*6- z80$=Ckbc@?rIn--l{#=|Qm~Edsno%=#d|76)JtmXKGcRyHIHy7(1lz#&f!;K-YdZYIhLbrg&l=?9W@#U~b0AsVHp{#~%VWpw%Q@j{C9 zZ1K`fV&LmC!cNdcu$9&eTmu!G3G78}5ITl2Fmz@&s$RlJ}ljsJ=?dQ|>rqh^sjNv@fB>hP3UIEE%5 zEvbf3pfWR0y*;Hj+>wLWJ$^`GT}-mhXFO8)Mc_wm1%FWjKPLOmrZR}$K< z)+C@^o(AnA6vI@jmYUA0VmO3 z3OycTZyEq$9A<*5qp#C!o2UXaCW)G-_dtOM3_H3}q}s3p!}4&SCSaqVi^F|c!4gU{ z$)-|t%)$n#07M%x$pFJ?*rA_`CPreOnuvmicBQ0L(7+S-rP1^7U0;}Ue0QUgH&R?RHuP{QS-Q+?5B64(g0x@3|{2)ix@UOgCq@bfl8SG{4l&1$Y(GCGO5N-Y(Ac-1Mg0iN;&FaVNZxipnrfM_JqhB(?5D5 zSY&T$zha1138gFMj-x7{;;+%VPQfRik!^k=8hKS7~?e1aBq%q}7vQ-how z1f(=G7@Xkp8$t7jt5bY-$-D&No*zFzlin))U!YK;@m2Z!Dy<&xLyD(EfYde&RAK_n zL>CuLII}odHOqo*lxs?8me8#J?1>*zEJ-3RQt@9g8vpEcfFj!G!uYkB#eo|^6XC~{ zT@tH^K{D5eU#F?C%5NuF4J7FFa`r;AARGo&wu=uCKs3iIv4W(dxc)-G^aSP$h zR5L%afBgdMI3x8RNlAGjswHDaK2{2WBm&G~8Ua%gh+QS_=c{n=1c^EcVRtuBKosn5s7Nln00Ms0brkH2(Yq=p!B~eS& zSRoCvjEX^~*^Tt3O4r|Cd}EY+eubo@eA3$MeD*K1c%r`)ox8tWJsRJ<5dh9%(N$Ax z9#JyF1p=E+`cM8OT?`1~W-3a-hgNF){Tg!|34K@nNhhE7;LiTM{)8Ij-!jUj;U3up z^BjtcN%l3mq2>UE7-F;LnIvE_G4fH05q(ZJ2{>$r!n<|$&VUUOPwB(NVxTC(10N(r zl#oYfjcnVB9HgX_p*nsbv6`#+e<$m{Jq2$;3SQZH;bF!l9cGP_`T`GO)Svhv3M^?n zFZu;$Lu5|=h7Z_XIzE?Yayi*A=MamgG#1nNFTeU6{HNvL{WBm0&Cc@r>$_7qwS5@hdEwJNow!(INdCWxibXKg>8Fd zeY(*5T0{H68n=|oRwCUiEzq@f#aNaV$$MOGR)xgSpYZSo$}A9B37*5dEz$x#?T|>v zj{cAu|J_Q=(@<+QO-0ZwhR$n$;0)-x2P3OJa!1Eeo&3BpkShpUguw{mrE9$Mvm5Y? z2eVhYMh-R6LjXG&IyOi-9q;R8J#DwJV2q_q2QR~*0TcF9U^i~%_!Rq+8r7$@*TbKq zFRstghvv`8fB0*oT07GoU3205=RT)D%{q_1i5Qac$uBv}D~(WBZVwIZReW+z##)?{ zO~zC&{Epgg>GC-je$3TpjPLNAa{g#~TP#xnke>*>xniWjKlnNFDL9vW6npJmmC&Vo zU^c@qkhK;9-|BAOLN`e2ZjSOhlePN+GT4Hwv#N0$2840}9~a6sRs4GXpEzdqu4MvSSd_76OpOKnCL_@^3Gumt*^| z;>2Z?baYm~pg38?5sUx>RxK6~QN z$LtBs%OdK9+o00bNTHfeKUN9>6UlRsRKmW`CjiSj3x$1{o1+eu_0|X03}Qh3jApk3oLO@mln+9oR zcy_R{9N+v-t1`hnf}U$xKXx9#_@wBe?RI+1o@0*BXPhM%{UTop@#k(5rqwS_t3Qd?*Cy+)Jx_fjaGL>xwsjPO2FKN)!3dNzrLK4R3&AiJI5E#( z0*ExJUxa!7nd~wSuQ;>2fS&5q`coCa(u%1l>8z+%en|1^)~E`a}1 zHYF4P2>NERPe09|Z$$oVcI1NjHujqf=Fee2%*-F%znstsXy>T@Wk#!>w}1Jw(auWe zn#&RJ&IOBz^%>}i1r1A`g7jq#>6{70O^V){6n#O7GN7g2?m$E302{5-6tfSp;~~6z zj_TsV#|aL>qt1mHc;7aHXGT#~|BOj^1SgmDk6^K%ayTWU^pE!kz@+~4Y+8Rn9E$%U z>e2$CmEFqgkM2)jjK48S{_;lfN2a0}{E?}c1I!fOmr302ln|GAtO8Ty0UZEBb8PdG zUg$=m8Hr9L(qu0!#h1A-shki%!OaP$vY0@YJ{N*b49rV76)fI%KcILOG(~qvaVsd8 z90_2<7FNmVr-XhS^ixgab(%Y7AAigp2R+QgQctny*95-g8z6}mp&+&wqNVXakD1|O z&;{XTFb!JNStR%lD5b!i%Rj#VFpVme9Ow@*NKBKQ&1fUzY(Uf#=YR@>OIyJN|5$1x zVwJrJ4-?)!Q+4B{FC-7r8AV@;Q6IIb*^8k!P)r5RWNxUbDhKFrP{Ke;)tgRLGznmEk`~**@QYT>6qK)q$?m>|w9=XIZ?sEVzXZEQ z5ZJb^KU_*naz3$xc3@qk_rYOZ2-g&N#nW{YXxn{gJ9QOe_FC%9*( zQX-qEl%idB2}%_$py3BbHCt~5sU9Aqd+l56@v!b@!;VLkLCNWGr_uh_riB<&`p!A7wePTJES~XrtE+K zlIT>3owc)j<+#`0v#!9f zYuFy6rO|*b3Gs0%1dYQ6jp#frHc&m@A$O395lx|{*%~2Gu59sZI~e;=*Vci-ROkb( zRhxBy?sKvZV91qq(9r&>3NkvsKm(o$tnHA!!|*sZ)nFq#M2r4fy97H=VkFp^UfKyV z6>lU+^?DjH&Gg0}RAl;)ayf{xfNpL%1V;G{vX)Z>N-mwRwu@Mud*6DkVMiYZXVlBR_E*+;>QVr--oBlTk=^#*V0Geqaw|D-n<$fyJL_bG)GDZJa< z1%5dIuUuuUT_P6|*JapB&ov(_HnJ!$1?L;^_5%fvKqYN`7iunTK8j!3;EJuS1d!-f z6{d!F7VzKzAmaT6nyGV2yN;oXTY8+~f}BR=fbD8l$^$d#xuL~`lGs}25DYD2l-n{P zkk1)*vs)mJ{-Wei`v6o`2<8I`A87ae7D%|@-0U0ZEo39C5Cr*yZ0~eX4!~tXa5~b> zt+8M(O;gU)#^gQC@1tf2dT?+`@2R&zk|`+8VEyFxOySSU)_-G0lhra~h1J^pSM(mC z`A_tVC7)alFi-_WB3^bfE%>tUS!abdbbO$Tw#+6;m8+}*+DxfPs?tdtL}{rWb>|BK zed%gz6|GIfia8QZ@4$S)6+B8KnY11U+YMN@hO?<(iN1k$D@xe_=qulnWrdKewix`a z7t;#=UXyUOtJypK5C(*BD~#hdvd6R~#)N@_8wjm#Kbi3&ri1r{Pei%7>`ApoG3k@r z-Q4j52#8`~a}C>v#zOKOul(>Zm=5not6xMrMa*zF>Y5$hCVW(az9P_9l%y{wN#EUU zu8Qp&7o@Kd+OE)dJrmU$R}+2I1+dAoxs!-gdJg-tLS)G~h!j&q@^N+e_#8kfgHn_L zk^`+z?Ouf|`TRO^D06r`YQ>`u%|w2?+E0Pe90-nrf~80$C%*zLV*Ej&Wf78BBbj>4 z8u;}(4!sE}Wpax(1WMuBX?Br@h)(t(^fkP@u5*rn{y1uU1N`aZ8?zE$s^c5lWu=U7 z=5ZjS$2Wx-FO`6fIiRT+{Hy{zjFu?Ao|!&=rI3cAfjOLBia#j4qv&Bih#e0+N__p! z--*~neBFF}H@E>)dvIAIKW%*zSJV^Pt$m4j%+OMR&J5HcVud!&;jN8gKdnAv@a>-f zSz1{bU|~bi#!yy6%O3%TU77}BKN0}qCkhBOkIR1*K!8GkxR@wqj!Y1=vxdFPI9TNC zINS%32!Z&pPaSk@*mV(}4eh7prkBjp+?L*;?zu_*S!a90*p2=-P4Lh1cIz>eh;F(_ ze%|^n-Bnw^?G2yRt-ajPz6=CwI{suFdl*78NoMS(0v?i~vAKH~BYtoAjAm_q+p@Ef zl|n^xCv6zQR&aWgsrYFrNb!;BUj=Y$P*EhSxVqMhAjd}*oi^K3dlXU_MWZegA>KgUNOXGPs<52_ zkt_Bh=CcPdJq?PEf}*S=epA+wtRoOcp^K&|{aL6{=JZcwFMS02u*FKVIUo(&3)$^U z>2`%0x2DCb#LZ+TqXHT|VbMm9$3ajXNE9WVmFUtrL6M$WuOw=?Ly^pUP&8#6Lg9zay&S^BvVL)>xE* zkCehvVI3a)O5*U?P0XO*v^K(c%;#TKg}O*657 zSToR#L&Fw3{nOY+1>FV(-IW|&UHXh@`1q<6z7<3n@U2EOHUb|uV^{-FYa`M&04I{y zkhXw~LL^hy(WTR2VIO7ELAybr#+R{we3-7rXy+d(xjAM!XDzPDX@TNW*7hz3k82XB%29 zD1pJO(IIcQ(%fs{4*As?uSdV7Z_8;r9NPO(=+lP+Q=ZHUT=b+aFyTo}!0@CP9NVUw zg>CoxvPag5JrFiP2$kWFG{L=yHcSEQ5=@b0v7ddN7{ZFeN?VL}5U&Q4FV<1o8dxNi zO!;HbbH$5#K!_?!B=Q!{lUIIQ*#If2&#gz+=it?a1^rpJ-bfXquh*JiA$v#rD3LL) zl4pqFSXTH$P4ETqT1LDUIoa1Uo4^cNtZ?}+XKP{np#~JGs^m>cl2_}$1S}j~$XP&c z6H0lpUlBYE)+Tu1AxQJ_XF+_TiCU~r<7tT(>>a?3+crqeMJ@{sQW7w@{Zj!qqQLF{ z5(qR=+svf4;nt_j$-a&FkK!qjg+3tPGJy6mg$ymtfP#1OeEyQCV*jX85iyC`3bIak zEKzy(VuVgG?5qqh=x!E;qj)J{i!}x~@ovhE z@zDG}mU%+=W-ko)4wb)1`timGNbcy6+xA!8riR$H$FyAC8>4-&3L2@j8-sEKQ1)O%U{|z*vKC#Yl zb7D#eX=Kk5iw)?(cu?0HDCUZU0GYOK&`b&DN+9c{PQR6}Doj)$wx9$pE4+D>#{u#d z>rNz)*6(9`U4qcOoAiTb;+20R{Aabbk$l7|a-u%6XmA#5xaVxEvj)gxAP!p%p2s4i z2|Vi|h7cfv(>!EtK-M_OitGS#4anW1dh^^0+bHd#^*oK&- zq0k7n;diK0LcHs1*i_I2R`pKyCLe6*>!B-+a%xFxX+l->v>7^0Q!sm)(iHtjO(_P@ zYN!9p=U9Jw>ODnKly@qgyotoQA?e=tp-o8#l*w6AIsvf{0;n4Qm1uG+8uJRa^B8ye zyi)l1$oVXqVWOb|p9G`^SxU@`H3+h>!E?TK9B%aNdEOeS*{nimEoQSYOW^X)U>+bq zlaQArlc(iGI=P!{K3;|XoU(WG@#K}aTdQ%Ew^-|NLHPF=zi}IOU~cPU?LhO{f5X`I z{%X9JMHWw?q|Q2t)uV$(xA3>ch)9h8%BH2XB-Dj9>MlRtkK1A`0brMZCVL6i5wqp} zMhM0N^HesUcX3+`$cYAeUmi_zP{4a7O=En#2Ir1y<#l9EDi`1rZyU57c%v{+J&2aDLd@2AUK z;*iqiomK~Z!$-z|J&8Jr5cnM9+Y7GW-GI1F8QrY*Y@oh5k8AxFTxaV;{=XeS` zj7cIgB{gjEwWKo`G@UOD(J5g_h%|>Q5k&~y&7?l0Nk+LXM0a=>ib7VJ*s<35ua6%9 zyv%Jd*54<>5L%>~#sg)t*yro7KR0JIylOvsfs9RmH@(aLzLHo-cG=PE?>~V(MqeDY z{!S~==U;#SI(n)yKltJiYSqO2AnZMq%?wSasZv^hk8yhs3`Xbz=1X6{k>l8BY-tA2h;D;0059oJJn# z%TBf#bNV#uTg1u~sDT^M^P1*XTMfZdbp$cD&YB;biQyCZ5F8OSHh8HzkU%kgaJ<(Z zz?=AEp|9g+zcJXE8@L?eqmg|t-vy~(j`y}93mVsdz=N=R9 zi5aAl7&merFA5x4!OOd zf*28^R;{7k9GPrrU#gJ{A~$RBV!eYNB9oJMlqe<>)jLYmCll2>N;D=D)jLWw@kED; z2amwSQM$}XY;$Vlg}8BP9EoMy^V3(Lz`r?5PTXmelxEVbGJ=u`o^D3bb8?bk3PlsQ zD0)u*60D-AatmG%-$Q(0J;5OE5)6V@kcBtymTFRoqqzS65x+?$^eKAjHj6hC?x0JF zX5zX;KVOLcBqm)76WuD9aF@b_{llYQhl!p@w~A`v&ZW&D>R;5~f6g+% zFeFXSKVzECX*v^D6!u2B1sAHl0UL_phSAF85@t*_IBHR{LW+?}v%Pey2n2VT0!i<0 z)B)mD-ON3N0!H^QGzJw-m{qkKp&ubgMdvZfcVlT>?M0Z_nS>6;dm6tjOx==d(iwV_ zpld`C_fX26!aViJqGUI`d!}+rcDWeL%L|JgZN~b9kKyf2-p{>D52fDLW^RL%XgRcg z?Acc%I9sM5GC8iHL_HP&L$8-^cu8rlz^?Km5Ym}Z1di)-HwueKUB!CpgquDlqd zJoreDMy}K^@JdE>*_$-7+lc!-L;C`ayx4?WwS<{UL>Fji6@YIE{}=UH?MnZQlK$WJ zpX5rjOwbc_SaoAkWIzoK$R&+J1l zV*`!Qmecl5<=M`;%XI7X^7OXD7#U+d9a{X3k|@d-TMZFyTtf@%hm^AllQAJFFZiz1 z$>Tguzs1F#!bri;?$(h$%Q-dJXLs*x8atSy3npO)*!lHKjkOY-;4x{M&g0v^aQyH^ zO;93oqxy+fyl~`7B@;1h!kuvIsTf1LRShjgcCyQ?G-jfxnN%2|E;n1`6v(bA7EHY( zElb>@XyO({$?l~T1CL2@(yd~?ahGYnm3WNoo9AV2-?+kKtw6oztJiUK^@i`&=`d$u zSWEEf=o*d3*$ zJ(YS`F{j7Ht}7O%A$Wwe5^ze<|YsWGpmK2PwL-Yu@32!{$1 zjnZVz-ANLuAJanGg{m5* zSW5o5;l#~niJP-g97Ul#qzam5soAqM+Wl%~*2qG2;}o<2K!Xz^k9-oyQ+yL$ff?B% zjlp?hW}$Gm*%3ZlM&4=580?RPzgA2z?@uHS<1X|SVH=kRC^^Si9t(khu>vrf-sZ(3 zt`#cghKOsWgP);uPW$ZQL0ig!r=r+IWU0o8ELHnXQJrJ^k8HuOVVM+qr-?hxF1( zVJ_sAJU?H(j#IA&^@`@=`G{ip zb-a3=pk7T5N5t5+aH1n3rrJvN59gvcORc9>umAh>bNnEGBz{F#No|#`taSIRa^w%~!AE)T=?g8r5rodL6G`C#YAGdY!0VC#lzq z)T_C?JW|l+xVSu`!5;f$w5RG9Vm{H<+pnefx!X;PNipgc!=f3>9pTgZrv5aoB>mx& z7a~R?@WEcmscUoPM4UNo3v!Ra)A((U=hn)Lgc=Lkx=v12Mg^$Yd-IYeX6|+jJZ;aIY_~M@_dG0#iPe?l;1N_p$ zj~?@c^cuLCAHr_or$^z)PaHOU-C=cTgRC!xwC^^s_hI9 zX*Oo_x20%Nt_BMyjc{8e4-P3GZ}tLGC}Ci%l3aOn(w$hU`{Jm5q@~ANkp2bMB+vKq8-FF?r-Zex_^d;QCouaxpvIwK!FI z3c;bn>GMc@+QTyj`rnIBoP!e|o&E_R@`y!YmwWFKn@PYw^hG2bCjL&F+ry7V#=9<9 znp(FKFQF6(fzmeJ)`7E&{kHsxK$t~6` zxKJp=zoTG*5*9)UFN)!3Vh1Y$iY=gE#Scx)v?FZIP!csOZtu^wu>s{=C z5_ZVn(&Ifb2rGK8cANaWH$KESS{w-0BhGkm0Gp_24-QW5#*&`lX~_0z>(fL7c4z|J z5*+e!`Y9~Vox3!4y9KaR#%@!Zz$niAw$cJcy6nnvnsM>4lU4C_PmTz2PBoBLWf3rd5s) zeX0rGNM9N$Vb)8yX5E2pTBKPJiHSaBP{hV6877_)47YX3Tlf}Tm9MwHM0^nsuxTwv zf`7zG$s2|Bhx>EX?{~Dj9*WBGc$?m2D$4sNY_<+pl(9O`wiRz`Q5{KlW=!9r-vG<`TAFV@?|fW8^8 zh{uJ1?m1n5vs^)2H_&kxPr(^OH$t$0QvxAe+CzGWS34`m6S3$MTW>|Rs=lT84R2Z{ z{D!gv`p^kWPvt7y3jJc}^v0kTE{(E-1w?YiI?M#cBGtuaq29M#6&2^}*&NOnna$)s z_}}oo<8_7~#S|X`e}6dT?_F+>s+xQ|L%O%e%ssYnbp$FQ4+yyYen zT#ONi>MwsH9``UKqL1)y9sj5bgY1?ghSryGZT%={g?h4MKjGR*@6Pk>6~)SK3v{rX(Yf0WQ<)eq6Rbv^DyTZC zHScol6f)4H^xB9I=y2j9c97C}!9I#nEI73XaK^*hphnwawtpNjY@xF{qpoJ>+OzN2JJvc+3JGPKNr4ABMKx)2^!BZg5t{YSxmVvODg z{~t}C5f|*q#e_9Ym|*xEclw@Ok!AF-HM}|C*04+Np0oIHPV!7316~`T*Ism0PM2@z zsw^X$uas4bG#_uooIuK6t-@3I+R*$goZ#591~Zf|=>MTH?j$r^-d-85wIDdv+j=N4 z(JMQ%ymnVs&=8L4FnT~@@I70sKN}~9AC9}B@U1hT;?WlCd>vX2VHDoz!f`qi132p+ zxm)s)TkDBp>o4+MJ{?d&P9~oL={4+`%OSx5pFjjq3eTU>4Gjnsx!A+V)eiWctjsdL zn9BV>WBA*L zMpyg|E;I$fz)6j921j6avhn9fP*lTCD(^7NbaI+~8ls+L$d2&fwHRAp=`sG6f=hXL zqhUE0bQDsR=~WoK925M)jDZ)9f`XkJ=4D|h`cF3l`f|CC>bN-;-vPjY z#OGvzB$AAaE#Nen@i8Jg-)xJ{iY%`bp*kuNeJ|k4N5-8IsKvjAd4Z4Wq+{Nm!d$~% zn?_~?nEP|1%KJlU_^DC^3t3kj#`k?IsY!UZh_`E|x_!@rQbpj; z)%Z^!G=ItzSM>jmCCdt5#OuLyX%wKyT*8uk~9$|n2?u0F%X47Hdd`F@9oHq6`qFz-z z!D&3n_XA|IhUusob2u3eI3W|?N1@6#zGIF{*2x%R9Ar=|_Ym@6yhInf4TLEN52!v;V8*biBvPu&kyrkR1Uci(* zSy5xsh*C><*bED&Ez^kd@u6Wy4&tn<0*&7ArmVSvm3UYY@UR$8#z}P8M0}Ldaoq=p zlBz-7ovVhTn}m|>2a!;Jg#pmdKmW*u?^fFG2T%csE3-h-*V7I7>4PK6ns zUx1&b3O_E+&y8#VLCqKChfuP!mvDaiC#XE|#5XyU`g#NyI!cINL0vh)1n8eWihk<( z9`-|};y+J+@fV|?y9Ywau1nHS9oo(945LUHZNTZLQknF#Z=tt&pCE1LipG}HGol2Y z_h*!t9QdmYGdnL&ImONb@IgV#Vh z9$zC0bBoL#f=!Tz$O6X=Ex9B*?0lsfayLFE)FwLc;{53uo!7>p;+w{2CdzyIvtOVL zTdcKrlfi4)Wh%zD{`qqp_Kv0#Fdc;y@flgI5#aW)mkQ_-y<4ODi?)LDmO}u(9}&3% zoidZD^1=S>7diCa))8Ak-93YkA!;%`qjxKsz$$?Cl zuL=x$*v}|dXtAzB84Pk8aj9{7*gwFshrP>nqX=KX02C56EYJ54-Zk&0R_Nl=@iDTt z;V+REi47=6Su})Pohq2<4K)AprZ&C(4&Vvc-^B&XhA+^X_O9Yn@Ze3>s!x7_Py6*l z>Ae_F9zzMQ{aVr?!-F)kQrd^>_1_WlaTkD*te(DD`c>rPRQ)j11RCk*dit4+F)j>A z#02n&BXt(lIUVoE2dfhH4f#V5OJ@Fc8Ts#y%AcB%9~+rpi}%e2Kz=P+8!t-GR$=^D z*s5{V)~wec2u|M?)N->)mysAv;ZL3Gvw!0xt%>8!;;W+pYg1x;xp%pJdYA&TYpSSYnL~ByZAaF-}K8Du-ns-z4rKSVnvK4n z6$BaZikROd+fXaN?UvW+dbAsmjhN;#4~0P5v5WSbA0P6zwR$MWoVW%PoB!@>u3RvzP$%_`$%IdyQ)+%5)TU~}A?fdW*-Udx(y)a zdiXH98!s#g!9qj(=0+qM+PB`03!VPPc8#H?(c?REyR1kP44WHretQSz(=!DDt~x5sSQtKDc7Y=0cDwL}&aUdRx)s zgi}~yEs(cbz#`T>=ZWE0#3k_qn8_MHcPqg(Ja7!EzLHibl--ulFAN2EXU2TM7(@(W z-(=`zYW{(rKaJ0qo`C8b{nwF~HPV-411NEnDt(Rry69$V8*(d! zRQOY+@B~OoFYk|VQL}EE%NYV+k;e&7gbO3`IPolTp!JxR;YT@>df~g{qztwrJ)3`y z64b5ip9XF!;pNwV^(^P1Z8OzQ3bO{wcQG8W9c?L|iMn`mNGX2LK?O}ZVg)6aau@Lr zWyB#~w)nGHH^Lf&LBehs988||Y!;ZXVw-L@G~AG-=&)n0*@JhcH0%Qm9HHAB42bWv z2ulp@za;hy?R!CtwnNLppIv8oXblAe?OUn+Nt-7a+7D^>XkQJVMjpKnj;XDgSk@|T z{U~6^T(TY4RSI8*_91#zO-Dy1neizt7|Uy%{#>Z*?F#ah^sP%09k8S7E13Vu0ci`= z+%(#t9wyHc7t(h^&LE3_J%Vp1+^kD&6-+YN`BOWS8z(MF(wnvg6&%j_baptLDS zMN3LscuT6KV7KOkJ8dW|>1Lnh<*<5IqAa!qa-_|qnh=L73*00KR32<~P%qAule$&txrrF2Va~o2geAS{_EXhVo;F z;&r^4Pz#?(+0Q=a`GFwF6t(N`3_+=c;5Tq7$P2Do68$BqHtJ16qdfQqy|pDG&r%Yc z-rW5xWz|_PbJwt@S9#V-z6TqPScO37yNKH`i`fNlOMQcLr)F(Xv+(Go)<@~v)g*;+ zbT4@`nSVR)Tftmq4Q34c1eOQR>ud5>B8RuvQR;i*8LQvM^!ac$??Ei&Z6;f2JL1F=cwtY@G4i`t;%pXaGZ_Flb)~D0 z?!tV{J2@9lt*#8;_F+E0Bn^N1;=B4ibLD%;3NnnDO=v!RJD8XzVX`S3A#iSg1bj1% z+v*-p4V8moPkvG^_3d*tV0i8U7&$D>BxdOO1U=~aRvJBNs{^7U4c|^+X5Y(K*o7ws zO&E&tAa)F*^QX`*wDu3k=CqG6;!#W>N;1#&S)Z7^nvY#6Xzi`k+B=KS(wrmS^@j55 zGv{An!^qHNGd?Zj z7tX%w7eXJLz)vR*oq$)h%FZhP*XRqD(5E{3tYwu_oT}iR<*lUNF8_43#B5%ImhCB9 zDMBlrzD{7{AIGHC_c2t;!5^X4#648IZ7lEJT_bT25KaI!2latl)Pl4h;RHJjZ!l3(&+Tk=52W7XlYwQ0$*U|69g-~lX8W?H06tZJt6*x z6lh{Td;`v?iyz`8o$Or>kbqJ!f*5#Ao7AAh1LLt$gY; zng10zpCHmV++t|gsc?-t<#R8%6P54Bkk5}iycI~25+r$deu)M_lP~2euI>v_tP$dy z0(`-gPXf-E(3bhyM^|Q5uIcRV6o$IHKIT8w;cG36tlJ(YZbhsG1R zp2^})DH4gC>eC+VIFl{E+R=BZ_Eoe&9{T~bfEHIIw?1wE&l35#$1Ml-@*<4@IZ-Q}~-18#khWm7D_2Hvh?HYeOL*JK#jxltyEH9-AcW2R5 z3~2cGWT|aRnQ*s;DD2TtZX}rt7{39|C-L_a{QUrb+wd2`UkHC2@F&mTdQ6)C&@o&Y zt_;`XxE{xK0M`LrPvUwK*CAYoa2>{VII81EF=z+0L#jCBI5GV${uus-33dhK*xR*@ zI8MJ;xK~p^V}?W^jzrmLVAgQ7sdQLv1Z%1h@<03J7sJ52>M>x6pL!dTHsThr5^Zu? zX_Fb$CXGMjZ9;{&1#tfZ{KfFsR;j)GU}S+7n>Pvc-?{XDl?IwTf8?TOpEG za$8zCZ~zX~Hv5}4{C8?u!vnPTl2!w-O(3Wce^&g>#NQnJmEmtb{yg}DtP3G)9QwZ% z=h;7m!ydNcsKtkHSj1LLML$IOI9&E2J+3%J;vu|>wpE9#F0*YE8La`l4fu=T?=ga% zXq!qcB#_n?{2AP)wF7uV86_>F?c_MRnX6W=(1&AssbaWM#zFvWlvWK0D@1vvUcO^k zzHK;uba^jEw@a5jsKeKYm5P{i@HEO-Qxz#V+*2`h@sDt_lMoN;4Mim@LI&(YBu%(4+l=JHFl&U#}-xjPdoTFEXQ28Sh{4D&gZL zwapvF%V9)<<9E6rheSc2#ujt*JqrTEw;vXID&Bnn={#(UE;?-MkSdPK6=td87USkPr$XS*mz5TCvZG+<0+($(zfTg>T;@gf|Wgfs2yOBCk9wX;rE9kC79A<%&Ja zdlj}^wZkOvD$%w`&$O7$2Rtr*Z=e7fJq|08051Di_xrJTuRGZ%BB)y;*0e1 zN>K`m;f;D>gjp0 zPKppbKx2zifX2YH+D{;=?+9p!IGqnRsO_;w~l7cm7Oh~4a>avY7nGenPk{HxiDbE>x67VyT!=t9>yxg& z4=6Y8>d`y~f6m^4xbO)?G6EEy;KaE2U|0Cn|f=&rAHE|pR+Dw*s{NJ`*+ z7BpnwbwlF->lf*;l1T9plKy<^+|e?Si|E%t5C4HTS?S>~yz-^6Bsy-P&2F-VVR74d`bajO0?N(WeOx z%6srZ26Q)EjJUjtAPJ5ykn_n?0Gy|k!`YLA6kj&*uP>{8YLQXt$)`ZoEO`lnZtTR& zU9e!@JUYKeyD<1SWSAEQCfZ_#9S0DAe_$Njd9d%3rzZ4zKY5Dpf$s9_eMJ{TzEvwB zz#wg735KsVBb?I)Z}98bH8>0(R&W^cZUf!I@B;K0ynh;^$7MYg!!S2-hVdN?T!0hyx@PhyW(1J!`KPn<2rla#ZJ=|OkSsXVl78Qw84voJ5KC#q$Bi`he=->RbEy@I3228^aB5+YoO zqRTJ~vIqv(_S$mx5Z29msb#CEW$#>$zLLxCfD-bSR2(__&O_W$z_uMrv?As|;jE6a z5UO;cP6PUZYMgjGU>-QUH*P-_EM#wg9Xd__dIXXqy9LjX_}H%gd4rYuaNrs@+kuvH z%ZJ$}y0S|AVrv}Q0#h=rv5nb))L$T17TS9Pc}^C9H(MrcDwHO%- zsIur7UQ-}V0Co(r?LEOum>Vb+?3@tx-a<|Sx@x~3G&ll!0tR-T1B5O&>%fHPGHK(m zn_Wp3E{$(w2>rhUcsDcTBv}q0w|LyFWfdAOz6?xX!j1t$I@7CD80VI5)Cb;!gFq4@ zF(w6%UJESOuOHJ>aSS*2_h)NkK#5=~T5(i~r=0O6B7}kPUbV(SF1h)n_V9^p!qWk%e} zLSHBDOBadj3OHtVW&w!3tZy;oZ{NSE(tp%;Xz8gF;i0UxbEEUeh}Q}jS>H2(eVqXB zws!{#d+_EDl&HYTo<`8I3`t{p1ZpF^XD2T@2{Qr%6C5fH4x!IK2IxHkb@RR^VBlPW zXao;KL~(o#wzzNjHp$0=_MV_b^0jR6UP{u-1O0loj0n7P8D=g{Ae;Sxx(_zD+*L5aQcq%a#Xn%}>D7n737=gJwX%1k&;PlSWQu=kpT7goXhLkTm@Dr=0|ac?FJIulrNL`Ia}V0* z47E=u+NYqr+*>*;_(4N|0h)x|awD;ga0Yvu(9=!62=(;cZb);bD1R!gJZ2k&(o8E2 z>H~$0@F*xbcJ_~o1m5+Sf(z=g;T-ZlOcu~+-%sYDJMb!1{e!d!y9RrqU&}B!vcDI& z1`%xFD@4FckmWMGMuYJL`YF277#QFQQt((m4!VX9l{UVM+1$L~er~i!8psAv+C^ZF z5^OS6PZ9%KB!h~LBB(#h>44FA2Gpige~m&tnW-BU@;Sk8NgG8EyF{hc!@AM_G6pV2 zC&Dkihs{Eu2>aowWmQl*1o$Iq+Pg%hiHC()^Eb0kXX*3PSKxZ z@7|azcmIrX{FrYuZ9?&7KeNK;qtH~p&MjR{dF<1T=^5Gn$xG|IY=>STxc%8rPhO%W{tFRh@=$Y_eFYWkij;zZK55)t}rT~TW zS<)<2pVxf)C@M7Vr+LgSHg-AIxUVht(}YqsyA8y}uO?iq1`3^wl!GGY&pxpBvgWe~ zfcu`w^8OinI!a3ATNUe&t5@1eD& z*Qh;#wS-A^s1N6}X&izXrl-FbeF7#mXkq#!SpQiv4L%yIu+|m=uJ3;WrosrllORnv zqcp!c24Kj+IzcY)4hLaR)Hd=vlt6LU$oHf)yPvRvCmJA1Ar4Ah(16eJ^!{pcP@T^@>7=&7fOOsl2~m=po6>=P{Fpd8*C z*+BH0NA{cVf}Ae)8cI>a0Yw!@L7iHh405mHQmsSi1Ca^+K3&)bjCg29{0$!xMKIJSZt8DW?md65_4q=z_ccxz8;^x! zIP8wfXfwUU@#t^1;rG<1(R<_mMrq>^%({G7?s>G~R2*xF-$i@PIE>-kqZm19VRrDr zAMM{Cg-VpaD8KV4K64$02xjz5dBZRKCgjoxwMbe+QrU=^*McP{!y8Wu_b+PFwZ_*i z0GQ?;q9VNHBuHp}Ukh`D&ci=QFkNQHtJR1kyJ0HScABE^);l<|> z%LTJvWVj%bw)K{m&eLtomk*bh7Pd8=;mj_S78_^i+HjC9mT)TcwTLs~#q2qN@#ED! z-LgkdowgmR^%=1e4y+!@ZD!jk6IjJZeFONk8L-YnN-an0FQZcIZX_V;`&O)M#*kER zk+2IB-zZF~kg3*ogwOY^9FkU^lvWPgKY=3s;yS>cRL_TKP^7Eys3?*hisVUZ(l79_ zFmyN4q)&qvv%4~D4PDD?^%uzta6YzdxId?9f_?8=1L@L~`=Mrhz+S*glxmot>h607 zl4WDYV&ect|4hI*k>)1ym9gUem^uI%e8ypFW>#Y&YuL%kGP4#cS&%4AEbW!AZ@Lr6 za@@GtP#!18&_ZYT z{x9a<20p6dYW&}1H^~AEcYz>Lf_+ltUf!Gvf6N;Qa8M5?i+cGjgDE0Q2-_V+z=ck_bw<@f*m z-}3q7?!7Z-X3m_MIdkUBnKO3Lv4_tuIx0y|U)EWsZtY8T8nJD~IXqoaFHdYs<$h%+ z%M*l>W$=}I(@l4?3*^^DPn2wp5nika7GIwwuB zr$13)A`yi4advT*ySX|;#(m0S zHXE~27H8)-X)R;uwc1Y^!F$(!1W;sdO2)(084eh({D2HK)xK8W{B;ON8mnnSd~qfN zqOI6ZuW)f%T&u&>Tq&>?f$$1X9PAR?iSt!}i_KNNBErClptY z%161qb3Q+8wYN-Ua?W8`ghMk32|rZGGmw@e`ZjN1OfJ8{uS7y6gp$K;$R#3#oy%gz zJiXGY`M|}BvZkA}plxX)#Yqo~`K?Lv?uunt!{sGz>%5&ZZH>TIDZma%VOyn)$}IxO z;WGcZjOJ3=GFF=zC4|U^FI?p4{qj}c(ywrPQxt9*)~i+mi>IA3Y+$b!RYv~rR;m|2 z=v&0Bh}OdAbvvmjf`{m4y$Rt=y>n{7f&PH%$yMjcJYIPdXA-6Fa+UJ>c=EwMGz@EQlb{{&Uj6-iRH-OnoS%oQM+it0Z}uPQ3o+J7#wxB z6QzD5{k&*jc>L>7%6c^(p6ObM{5qGl&RTt+`O3A!_X)Ha4Z8tkz6lSP3T=@% z<^p7y%7XE?^AQ}u{<#FcHp30`k>K4De8!e`eyG&Q@S?+cX&OY*amL$ekVsKGx5-># zqa&G8UNsqDCc}O9%++*TePYolSkZ0{CEj*5F25qirl`DS4M?}zgHTYHNU78KCCxB_ zEc8esZ{ihM@OA0#ar20Jfw3Mp533*O--Bu^zmO>@Eq(>Cf)%eDp}+D{?Jlb>v}-!z zm#M9rg>bB#lKo`LrJ9m#N7v1|(DWuYoQliTSAnd!wMiyg2(meSMjmc0rfeKDqo8(V zaqOe~w{7zU`eF=bQPEO2>vD5Ci7t{vP&TFLNGuJ=jA9Z_srgjmvxpxd@ux->tk@HD zcda;L>`D(89fsHwHNx@r9(637L^soE_5|=_6!EQGgE^1gW`tz+nIv-3U1{^JJw1g;d~5}_A@5w@brPv)LgYTNU`R@F zXtjsit<4>&_ESd?Tw=o#A5ZZSF7ie0(;{DFRs4A^S0VDPD(0?w)b%Y7ccColrr^AG z`%q+Fyiek@-@NrTVeal$cT1!pbgc$!Ce$8axC zbsLH(5oQd%TU%11p3-})2&X-_Hc56VX##iGsCxbDy5XF(_;5)dJAH?I6zJfMzVr2O zJWXey%V`9=T;#twfic3}OkZG( z@H(R*i>QKW!Y_=59gyDGp7x4-Y#+XdpAtUzC4OI$-^zk%P5hc;h~%QrWo6fJEImz_OQ|Yn%<}OKKFBr550)~LY=b1@cb)u_@ooH?V+mNzi_UnB#KhNU zmc~X9tiQ_2_?FCtp_Qr6khaJ!cCGc<*Q(vit5ezhI406Vctv;3=xWb$`(*-#62LBe z8b6voORwQBlGF z|E4no?KNj`gCO#Cpnc=3D`U!@=Y>PK=ZQ4#&Tv{iu-_bxiF=y# z9plmF*f9B!j$k~(_2jXqtG!k8Wl~%^M-&YO(+&$kE~rjd#Y|YTR!syAQ#&y^ji*U` zk`=-gTxtagTY#Uz#DN0LTU905r4mYDiew_3Le-LbP`XKpbRH+2uc}efy>z8cw^srs z9V#?cPh-L;lc|}FwXWd^pi*!Pd=@R&l#&$x)|_&%OUvascAl8?oyXhD#qu_pH;)dR z!rRvg+d7q(wzTOypIjm!Gk6PY;6mPFMG`ibw+*~GY)^d`5~#bsE!@KE+Ij?9pqfhM z`|Up_TuEw^z2uJHg^n48b)@?b*|~o+CVO)Cwj|?5T1P!^&EU=a=~T1)@m1HF}~!WDxOp7)Ove*ct&IfD}B^e5aQrMK*mtXg(Rc*~Bb zq?SPCl`rW!h)!k^Rb?JLT!zVrmhb!}h!s9|VoDO*Gwj^Z zv0UmVG!M+@@kK}M&J7}5G-ky#T&Y@c7ClZj#s?ZTl*@7QjV0>CONbODD?CsR@T$f! zqGMrq#RG$kMb+>v$QffcAjWLX5p`zkk1&ZnN>@_9xLF`;GE~YaAYWA<|4_a+<|yoq z-bDv6g8|$7C$T~yNrfQ=`dySX@?e`){Z=iDQhTner8k5yXv#7pa-BfIw#uqmxwgqAfj$$INiv^0Lx+JJ7Pv zY&3iqI6~AKN|P)QjjcqGr%eape#y+G33AFyN>yhoOC~fc>Pp~~S*A+}bviCZxy^GV zzq5%ak^3yCpy0?Pa9{Zej)dYfHr~eg$ZHQlWp(H=p-78;vr5G0H)$P2qMsr%(Hy@A zh?S)nR4((WqZCykgmL%<`Zjim#EJ^*oJIcTXh!njYo&2VI{%CDM}J3I4v&>nDvjC< z{+AF`TTW2zDuV8)EaY)}36FI*^4PSRh+7D&y@RmY^@P>du8urY2caU*%kwI8t4*0T zJz~eD(Z~+h90LtjLt;MEBHDu@Z~jYpFIn#y@`Dl~|Fb+4`iA`2`-i=0UTvFx`xWcG z+VCQUjm_x1kIPC+)VXva1ZYy*ixh?k>+Ka%YxjY?{o!RtaTfO$8}7Dw6fGP8pF9p= ztTgbdISmtuW^8PZBq?!(xJ6z!0i<4r;g>&;_1QH`l`Ns15@Kg0f&KP=j3+pq48Cri zsZC9!ipQjiqF|RUSRv{gdRe7$UNank0qcrQl*VK)a3+&C%F&tQ<;R`hgvn8%w5xUV z5vF!+?;uL=>&YU?gzzF#im?KMFJfxxBg^eQh}Ai+l1Cr8E^j~ny&lB^N=dW*_;RYo zvSWp}zSdJmbZxq^Yppltw%1~oc0}DkCQdSkhnShco3UKmlonX;*_ft&M?tdKaO17l zy~nEsolRJb%r$xlrMMGk(2fx zrw9G@C(e>zG@EDhYmT)xWaFJn-AQU$fH(T!-gYycRHQKfIH`ql6I#WR~!3Z*vs z#UuPxUVG{#wr_;{C3kaDGGM8|IqsqAt0YyUcxZ#nD_pHbao46&j7aDVh1r}au(Kko zJ)yTZ<)d(y18o@CE%L_i%(l}@Sc$sD{A-o70*4t7UBJQb(A%|#V;(X}iL(?e>JDUV z{ME|qHy4Sii)Y8ZVo2s=!c@zBLgeqz5VC=I$Z%Rv?UI*8J#n>>7nKhX1&aM-xKUvB z+39`giW-H2mm|R1Z=r;y%IJ!$oAU0b9Un3VmdF@b;4TxdK!glXc%(BYWf9jbEfXpBWCJ8oiS5) z>0GO3pUXT`=Jj9}6jqdL}v5(Hpog>^qAZSz9}fBbCfi9mGkFBuK8=$y{Y zA`RF&yD+>Bykz>iqzZLL!wd<6V7^e(1`pQoK6oyR)6yrs!P!i-@%341*bf}$W;Fbb zG^H%{9!>_lM}R#q3+tFgniHbLgle>Wdh}(9s*znF%y%0m1m~-kzGOdh^7(aN052}q zd=7A#k_cult2WbPgzk}y(6t9QT5aC)*dqnyS>|-LE|E6)We~bG`Ef0o2$YkNTBVUe zKlo)Q!&rful>|MXbQdQ-vZbCA<%@ER;~89RxSU}w!dEO!ZDTa_&up;~i3v|FB^)v4 zP9`&9F6~1834Fly9r6a#5E57+a9n1YFLJ|3tsbItmdWNL)Gb%V$T-N;^Me!Sn^SS1 zSj9-XS$Q=uLTI~WQMXR>OtTtUAK zAieo32Lve2s>u;K%XF8;+;KLz+uI4pG*JxM%hWG%TLP2Oj)E9{g@m*1AQ&(3>0CYq z2kV9NAXNsIj@OYmvG7@ni%HX4Kg+GV)*%|MTq#sr){Z*fnK#uTz9RZdeFHh7AS0Mp zKTA)26XRwsxb$uQQeK%lM&9iEBE5!eGO%m1tXiK7N%3rIXq(xxVI?{r(8?)SGhPF6 zcwY}ZB2d)5_WIJmWgF))x7A*0&-2+!{BTk%Nar7e^{3a}<#m}CM3#3RcNdyxQ#fOQ zTx9P!vHc8%)OOm3a=;2#b5Yh9NhuPg_*Jg|Ri*NB- zrosZ=z}OKMs#c*2RoBU58IQ!gdo{0C4ZdTNb8nfM#>f-4kgI;XPY}wgW~nQz!Kc2X zE6H({Z1p60)90Rj4L8xFxI^=c9Q6nILci#-3RcjsL>0z@ z(0(JMW026UM@;jWkefC9&7dn$ty<$Qy)7Pi3Jtf^+#&#B!r$24j1EN&3 zLlV6Zz?j!rkHn{SFjVYm4YHZ@2JH2$EuvwN?Z~lgPf29_4XtDF+8nxMO?K|CDU2Gd zw>FZ5zBdd*ljY7VmQ|HQ6g!%AIw}YQ_lkai%^fe|C`uC!(I<^&&}IA|6fH}FFDg3N zSMJBURS^+sDPHxkR6Gvmj@8_5m~s0B1D%C~_JU@d{)>Ami=U zaIKBmBJ~i8jiBmsdf6JT=@z~IELb7d{MjV=#)aalYY^o)P_nHY$}!_J2HT2nn4ZFt zGCnVicipC7u0u?Fybv>fAbhV-ze;M!-k5v~Ny3{}x8A#ljy9+D-UWQmX)CT;Uc#R5 zaAllL)*`dU*Hy*G+)pOSc^h31XsHjuPK>YFKnWM$MoW6Ph#@lX@pZSU!bQX;Q?RUc zslQK_={`OWT*>~89O97x)$jBRbS-y`-yIbdj_kiBW3ydTcyUspb@?**1qvOq%sd>5 zF#>e+jhz5gi@f{PFy~$L6V^=Kqk{`Xt!|$C`7t^=sew##21fTvIZ>k1IeN+QA_B+T zWuDyt7Jb8GNHt5`F*2%z`*69y=Z3>it_3T(zQAZ$Nrmlc()X)2(&x)@@VZ)lxAvfu z)>h8}x@LMdNQ+GX;XQQqWczuEEo+nF8nv4!33s5T3dreC`(E09z$yi;UW~ zG)dU_8mGy0J#<=!acoVDaHC-#1a;U&iLgtf;aLLIZ|HOJX_8z$ffrB*Kx3*N(%(|5 zE=h&-x1hCED{)P}5s!6Y>fLNnF9&a~+W0zWdz}nl1psPpO|s?r$+7g|QYhq%rKy9* z(j!h1avCRN=`I-m;IYIU5X(@xgo~|?jFb&BQrtSBwW1f_*dLuyW3jE{&MhRnX%;N-BHPZLv zV;;f zvfK1K&X$KBF*y>7O6|dMP5V2nrj(Yh-NF-tS({U>-6>@A7ppmiM2EX}OVbA*ue6Df z{9hroRq}t4{C9HmQLNDs@z4RHX+6=F@f~PryXm6m;E(-Q8CDo_tRoxL3iIFZcB1aFq}uP~y&IW>J+Wua`f`;W5ybhf2z0NVzr*EaLDRi9)oydQ z1=`jaNTEH-7J)(*gQrF2`3Wu5p=Kg9cyaT|)RM^5@2i^-_$#&w5;B35@r9*htEWsY z&=DG?B5#H0;uE5L84k{J)Vs`y2yZG^FBp6}hpht5R#sYd7AGZex+>=xkjM_o2v8I0 zuTu>lYNUg@ou#Roz(PldZ+Nthd9sZwqLYmfJIbp@+Df z+;nj+(aS2T`bwLfh{ERKN1+%WHwShno`A*qXDx^4rAl2UB7 z;u@s0|3K)Q_QBBG=0(-Ml?7>yP%bz|sydI{g?$^;Dtb2=s5{sd#ag&Z|E$6cB9>XE zsF|xmT}zmAj%v`}^wt@$lf;@MK21JU*C!ekeKlPARHsK~bpB`xP?g1+M}ZxB1}W3Ix7Q}k(1vs0vFmbqh|5_XpydJfy~HxNCZ z=2-+gE(?0AhpJIB+EfYJ9mP7lyYTVa5oDCKK*V z5fKf^3?P#P?k79wDSev=TZ9nyGVjD?zOMZf@m_>~C_?(QYiOBh1MX4MhYzyQS6fHWAQOhQziQ#C*yLhlkwmLZk`Z@kV|&mh|>2l|suE{Y+p4VXx; z$F#24SMlUMoX@-)61KU7C0dJpIaqK+#cTAFg~8$4F>{+fP96IbrXTD*o)%u|c@oQk z`vAuQiPg~?9wCPvIELKuk+mn4cOcl%{;7{l%*pD#JxIY#IanC@)bI6sVW88*iGfdj zUzCVchSl<1dF?9p$;4Z3G}KA%Y@f`E%unIa>*B1u?yCYPIa9l7d^wYgPfdSF(-meB zTV(CYp;WOvxeMJX>e1jh>qIXHYn!c(3G7gRme$;n?)E$+hvQ;tJ65w2K3?d_33A0; zY3Wk61(HtOEqZL$`I9Jh^CEAfH^y}>^U7uOSBl$Vf}nT zKM(R$7HpzmrzAD=Rf`W=@#k3Jlxv6645zxCPZN)h&kjAsi*@7bze}6GfD{+#3hp(w zpO(Kjyi>Gj;hjhI^Er7wqkq#a)MV|${oCvli0yYd2PWld>NrfiMApF?~Q(|@7)s( z^}VM=@8Z2)!$^mUR`WSzrzDB4;*~SA7nqY#t~$+NU*7}gCo=T55xJr-7f+WCj9y5H zt#SQY6Fw(jip=%4hxK=KlmI^=HFHJNlNp~gIAe*GjNeCqN>Cwsh<7_AF$1%d@96VH zN#(n*3S#tB6)d*8ZwqEw-Rq6e<3u@?5@9U*5RXc0)@|lkcUK~q4MnHTq8o^Gh~$sn z*7u$hMSLZDx$ELmbAsFrG1bgM5=*3qSc&x0b>`jq4$vhI&=W$zcr6X6J4ST019X$o zFvNMg)o6&LjwSayjD}C0H`8c{Id2<`hWDJe2Z_sz?YZ{jD{wjR(GlKfJ{8WO_rJ+#0h+`f`4xwcG4fQA!O~&Y13Uz zGIDyjLybafr*5vuwjPSnM|H#7I(ZF;WJnm12g$unHw`OdSM(^KUAl8l5z2-35a{HT z6Mc^N{x~xu5pL@eEJkYD^Fl7V!*QKM&VcSFMH&rWP(?Z$wq?FpM}{QOdP4AU*%~R7 zCg02fW^+2~_lDDWbC?LeZ<)~=;7uZZ2UCiR;~M<}J+3#lM`NOoSCF|2{2_{fy7HQh zhT}{ULZp`fFt)qFE&q6N61{Cg`UGnVJ;HnN%Er(>ej_1aT_v{uX$}334_ExDUyx@+ z$CpGxLe3J^^li%3jwg)pHW}oxjLNW%b0C~LhPO!_qvAKu78IN!smSFlNm;JuJ5-fk zZanV_M}#iHQ4iyQ0fG{LIxe{wVuk#vCZ__MKdSkR%FxR}P&?y4$n&?NaIzja3fZ1-l z)MK@HqkrMU0w~d0No9oOyMMd~ zvz>ek9a;s`jpyg|#5~6KIXw@@#wOw*bI|=T6X|OXR3bPyj&GR z_18F2BziFWklk&j=D(ewY>jU~A34L)47*EnxxxL#ZX4EOrk|zf-pIC-j00ynitA~b zQ+(+H5xmgWV}QfGNWC{voYg$VI#CdQ^g$s>w|!_+x?5AZam3=-&PYfy%4;o7pvP!& zxT@1WL19%H_A7O`uvi?|gWA^5)|4rQu}d`{T-e74ZOsk)2YhVEl1gj3E0|tbi0RWO zc{+N3w^M+%Q+N&Z*L${_*&@Z}{gkB_dg1B|VP~rt&e49YoS}JoQBN6E<>U!dx#NLYF zIOok{jw&y$p5nl%QBDrl&V#_aOfz(R)1CHC;d3k%dB!919K?2${Pqzd&>fXU1P4a4 zGzHtp=f}56j5C)yQ>m&c;+)G)0dR(utD^QNs0|{*o#L_44)x0tDE$QBiiF^|F(-j^ z@N;!v4j6T}c0NZYE>3W6lNU8^8-+Zf!zye?Y}^iSl3IwDtPAXjO!c-Fd+qks zuK74J|F71Gk?TiP4`0sm)APF*h+EN;CZ}nuM^ps%jBA?MjJqBj2mUYo@PS+Uj`NnV zIY3y8YD@-Ac7l8f#hC(+IC|KnVXwl;x$Nnx=lBgz>9>h=&M0JJi1cG(2A)w6PgE?B zWHt06B-3j$3|#Rbmdla(9JS^Ycx_wnz{`$*;?#oUZ>k>HfexqABc3bJ{;_8t5sy=1 z^po&76)wu;km<5O%f>4?=&(UfQ#NLaf!|0VF_!;wr!3fI@p-nyCyqfRBIou+rg6M3 zhT5ZG#gWSJ+)cgs;h8^wfW?Ej`0#Tuf05rMRLD^aj&#*Ry`O z!d5r#0LAkAY)4q_mRB9f$G%fC!h;76Y|`XrHqQL_n&Z@Bo#<>KpZuve=#NhJ96K1e zC4l)U_YVwfGPBqfzymBdE5FwDF`gvm=KAat& zz2>p5PwdXFn>doQhnUQ+_uc!~jNqbj|9YHNafz>QUCLrEg-1ue+wYk3dt|d)4EcQ+ z@>d!k;g>t|crHk~9>fY?Z1?B+<&h(gDe@3I{dr=iKTquR=dDg!=(i6v&-d#+bnjp* zeCC}QvPrey`eSW)*|ES&!BKfHA&0Nky-QRA_OfHxaTK|+o#!|%F750ZydNI>^80IiH~`K zxcH^A-K!l4zG<~)&I#y*8xOAJR0=8jBUfFY^fTB*GHa67Tr)&PoA`Vc=vXs8ox#XW zG0%*6KAp~6czV@i*j~k_SZ!JA#YWhNhylK0t2cM!YoN_mrIo88QRK%yw&SJt_&wxZ zwo6hwcRh`^HhEHl!^`6b%GIxbNw+(PnX1)W-z%H!8xL#9Rob?5h(Ma|lK6rC`1e;{ z-=`EqhbP&_$5c^-*70YJhs*tH7#5fqY1AAMqDiID#((1|4C_p_hr{uXg6+mj1$#8+ zk*ONtf-}*^x5aL+&Qc$9`iM<#JZTte5))lgT^?JCF1mu=DCgb_&NL@$Vw9`r?sEuX zjxARmTqj?lK4L@FNrfeJY*=_!jD7zXCF<0zi>pAkg>28GtMse;$|6qHtXVE|bcs4! zBIz66>XGW&X%rT}^c3Gr!=-O*k>>r{-c0u%oCGfO=9T#Ht4SAIGsJ4j#0gWZ&kwA1 zlnq+1J=^av&)&Sdd{%2u^GAmL>aBa_M$X9nDRY^RICWuBV@S0c3-g}+(S#Mu^Q-R~{!=R&+O?^i*FFHhl|L2HshhYQN)N z)a|4qdEgB~-Uu8D;{VNO-{}e5=`{npG|ne;){eDbKJa1J8)pT<7n4QvEJ5nx*cp)p z9XkAJ2V05K_}&Scwy^f3^`rDYwFJ3F?UE-?0gO6 zhpYpjDm;Auk5ufy2ayJi_Yn5Od+;4GcMA4JopG-b`h@r`J8l&&WHcP)!ycYVhq9*$ zQ>k(la<$HThI_v6S>ZROOXF`i@j6K&?;#~#{b?6+f2Ab09&eN;b@C;&cm5m)V7|ZZ zt~q#+vu^bC>JV!K#%MQ}!kt$8;&14n`09RUrCp)gPB#}E>E`wr>F;@aA`3?zT^gC6 z3G@Eu*T7o4$ct;xK$^g=^H^W^X6n(g)h9JVpDy9ynS!FW+TG&k4VJ1|ET;oI&8b!s z?irZh35(e9< zv7ydkOHc+THb(n&4E~?YQ8@hWD@J&H?0;E{z47p@@Fq_@O^UFK{gyXwx58z$ytZ^H zJ%CFjn4|CXbJteP?QWXGsmK#{%dJg%6gNzfQB40Y>b@>q=nWTokjt(%k8#1@Nj>>A z|HW|M<}zn zC+z3S;4IbUa7?K}!y>?cKS35lI^PR+X3&PDH1YXzV zz{Q(+OW|l^n?Eq@mrmhm$Lu9NY^q)r_*i`W+Y`cAxvuCjzPSv+(ig zAix`}r}=~j9@uT2xME#;^%WJoa#vwsmDil(@V65=YtN9;*d1Azq8Z$S!r;ykc5!-a z0^T+UMn3Z3DLjr7D62eSnB5YOUF!|sCFdCPUP)QhBTm$fZ$1GzM3_M)ihGts7GBJ@ zo@TPEuo{kJ`YpjDR?SC4Cc0uS_VfFl_|Wlk^_ZKcOtv6N--c9I=^Dp!a&sY}b3qRrsyRIUA0V zYJB<%Ty!kr``ErqNEyCc({}++Z(?SHtm#SSobIte2(oJC{L1q*Slxk-ggF;zvc4i@ zC63B>42ZnT6G@PD@c^>oUf&&_o5e)}2vf;J)8gG(Gk`^SEy#4I39GT1$6D`oGC|Wj zORus{%vAbx-W&5b98? zB{Ph##Di;8;GkJ+kC%-90nA&#yk%Y=^I3Oec-Wt^lav=HQVtmu_tu(DQjAfLAq?4g z4f3*Tm80H6M2t|EBUn|~3;bLQG{LEQdA_!Va{A-^xpqOaE+gbD#YP>Z z&AszNd*Pe7|GM^s#~zx8-1Bjw|1sP*A=9jsBi<>}k+1dyuJ)QYFqZTPsyWAgRR%a$ zhD@h7hF2V&cthjdF#o-VnQt#T%EW)xu-Ifqj{|nUo)R7Cvrg|dNP(jr&P6Udde#C@ zLQv?Y9IyQiPxvkm1=`;b#$Ys{CW0X)d*;>NFaVq?yqc#sf!9i>XAbLardKx7OKT?9 z)ePeb1l{!*H6INL*!`WfXUN9JxgsQK7v7s0nR_qBdYy7iMCg}kzo`~p?2;p%DR?U=tQ8-M_CZ;jzal3&xDYpe zFbW_2&_SV0qj0%;SH6pmIkn{GzGG7B*j~6!;`r+MnABpE;|k_f$*&r{QB-|spfM9# zh5_O=@i7u^y&%hN_0be6QRFLF?hB66o=nT_16&sOHz$}@4$t?UiqZ|IptMk<)F}ts z-c%t{{!cIKmV#2B(QpkfiELk1j}jHlCPcSI{n1Pa*uT?mJ<&-rP871zeH|$%^5`+X z?Us_NG~nWI+MV^iVrjBzHnUB2N(nk+;?+IpP=SLiN8e`Aw)(Hh~P24O4l2nOHkDO2Ld$mGYQyEfyYf z7a}^g<&XC1*ys?*PL7F`r?9aIhtb}W)}kSow-yb(p|xlj#xMt|4-Jqe=3j62EyfU9 z@ROi6)X;53e^jzXOdP}$!;s_py0;W_n0R%_K3+H%%MBEFivZ;klx{Uw(o`T;W|yhy z@{TegQx{?mb&UP(ZZ;#Z!2ga^t+n61u=W0g=J(SpTIWvT7PNQ}kE>s1gnzB_Aq1D!izoDdnv)^OVqnytWQ6HgGp^~X#vc!BjgWa(2GBwes9ChFGa z0o(%xNFKKHnfX*YQFwEGVNI9ZvvX zk^kD2%-I^m_B_Q+Y{#3e;Fk)PdCid}>T1DEdiI%dTJH3M8n2moyg4;!aQY$5>XN}!WVnT%Xx--5lUBwqOma6{*oL7kcS~z3>Iodi>=iF7~b;Z%Gnr9f>=?|^i zx~N3GP)YVci`gf}Ck(2NcP*8X>^wW*d#*}+`3KWiM9-$Z5_n>9s6SfB)^|Ts#kSgsXdafFd1Lpl;EMCTh0<;pXX z&9f~e=d|Tm2U~o+g|{8kPrY@rZ7L9fUexQO)!?D?zu3rihE8;?ALFFf;9)GJB9RwJ ztRDU$o6OrYT0;{_PQKHnv~Ar)RR&s(hVw~KTJ0^#Kd#noa_SMB9p5H6#Uldiyhn68 z^$~*~_wx*z-w7M2m^Y8CNv$qVq&5En2EOY#)h1( zQ5G@Db|>dWoBz=H1Dp~&{@t;p7V2s^K-WIlkfaoz)wp4alvFlSBtc{IoWuo zr9{1Tlhf2^+K!!PNJ_yzC^9#z-Pw4Gwo5NQx!8C>q&lOaS$|#-{DyV1*l75T{<`@t`Cmw4N2W& z6C?8|dHQX^2OM;ILqdd@uQwvd^+x2YZl@-b(eME+RJT);F1*u4j5*fUyIl4Z%&nk4 zew4#Hpl+w8Wq4Z;p{=?ompPs`#PFyzIJ{MtlETLvlYS(ybb<-i%NXEf@?o94J$Q|E z@~fCtoxEFiFs1V(I?OI|jEzk6r;zj~)s3mQ^r7F%SPO@wS62r1;PL>m(bg!~8eKag z4Th*T+}bH!g9b_m#5#Egrb_A3UU!PQ*vYSAE|tb?eADv4L8D;>Va7Kn5pSKmWz*Hx z$y+g#IC;Af8bwfo9QIB@1luY!ztM9r{tJhs9`>VxOZA1zE49C445ge7m=c}OJK_0n zR|Yh`oVnNIwKAMCC+4fpBZU)wRy-o84yvy=QD3L3)=sGvr_d}1vP&nFZfk_@mtOdc z4k%G)e8uU$-$-;{4G!n3t~7RO5C?^LNQO{l*i#V+3CqBANVrPLoYKfnVJVSq!cx>X zVb7XR8V#>g>p=+KfC$Ndf@slGYcYl8mjqU5^~+VBPBx=F$`btKilYU>|!a6i%3iqS9#x4Xwc1dyw~ zFwxu$J@cZaPUc^jwJPn;?qRYU)Zg<5)6(>wrFm^^+@M0!DYTy;|FD71TlIfq13k(? z_yiIDghVq4pLLl7@kw-eX`lpDV&0QJto|(dIPF$ZVKjV?yb@f*2#FmgCN6Z++4YTqWkO*Z(-RQzt(6izW(gJZ4k(_~e0wwW;L z|Is^we`aC`GUSEBm&Y}KoR3Oe{6DHU@tcTUSh+f?C8Eq|1sEY@`Qy47+Vqr1-vMRK z;Wxp)W%f+@d`0bE^%>`v*gtm|6boc$+Dz~rqv2P`GlR(ZrO`shc1IctKP2R;4D2=< zf&j{Nu*^ES);tYUyCG|a@*Hm5dmS;n<(SNGcN?Jvd}51g@4?>cy^J{r{$xi)-f6}v zd6&lv7a2{K`OTq&ww`BYWC4wj5c)vXC(07}t=kV|pTOqe0ko(XyUe`JnE%)hl$C zqhY?1YTn9ut%bvKq9UhY4n#=w9$pz#^BBqVWDr+WvbMg~*ltv>xUMp=KX{d~eeXPC zK3Dm7d0He3}7owR!srs`V!K$d9 za(z@TKp2F;mp~wqWk0%{2>ve-0a6{IC8Z`&NLb?#9Zn|J6Cwe-uBlFogyfA=lYa;j zto?DHEsS6YjKB!3Auj13`N2b)9Yj|W=1xe^BCSR74Hlm_FIvpcz(LLJVH$C+)@k_D zz)^D3i|DcWGPoir9|a6Tsx!%LglNJ;aJtgM- z_nWtyMS!%M(`438F}I@Ad=<(hW!KOIKAsmr#M&uMw;{O3d08F2HT13#Ix2l%Wc*K; z>nX!%I7Em8a))_t^>p23?tPI!J0!BWt>tp#@lJR1`|hv~ig6^rdT3mW>Tw;dM&$wD z8GcAh?^j4cRqa}7=%)U6I8G?uCBMj zIw-7zqJN+^2@)rgg`Ov9*FZvFo+R|ep?8uJDTKZsR|``AO-UjTcZj_1>&<_0$1eC< zd}wS^=pA#FZk0bJfR~mw|HY%ej^$N%}) zo2~>Qf~nX8>E2R|aQ%dqwE6_D4qbD-7BZ(h-QQtQiS8F1Z99ZYciI*A8P~o|DW1J0xqhN^3*v?HnoZmQ@&YMyP_i#J_@y38>kkFk<2s zH9^Yts7Rct!{I_DL zgmedR-Yd^b!p)f}jsC(VW>@51xjtf-sEjsedI?)>b|rV~>yKtLGxh6aO3PuuNCG%? z^Tfv-Mr-@Lq?0N7BpoKdsj(qV)Ln%f#Xhz<^dX?FAqmK7XbN5wc~oqSjA!=l-Xf!0)W=&2dHu(?r5M58Yow&c7Kr+gTYX6MBT#l@&3*Cr%AT4 zk)rY&BSAS5L`IGGrwh4a-qr^F;*zTFij_H3YzrMBpC5s7{@(NTyZw-aL>fj&DtCM2 zx*Y4|>Fa%U3rA4O{<_^cF~j=o^z{@wf-?5keUQ`WkGWf2uGxWC*X(wB$@S`qkn|GH znAeH+v*FKlOVI|{-COkSp7T}*$6K|xaecYHz6uqq7ZdRgluDe#SC0VPg0Glmhoog_epY)g|@NWsp+5i**-q9<6yR*fDl zGpydfo1+GTbN~{2+v@FMJC2>GLQj8W>;*}S$!fP8GqhX#_nmVF^jE!O##V)M5oI?D zVlhL-lAuLxr#0ExeH3J<7zU0z8mX+~atxiX)ih;hCwQ*;OMP7Z9lqMI8p!&1RKLsm z(%9a{)`ilPLqsKn8^XCFSdR-C68Qw_K^mEpjmWZ%Mnvb#D3s0lwZ4L7%DA_iBI;^B zB>Pu+i0rhTzeI#%nNj{`vB9=;^I1t^!C$k7z1OcXw~4E)jYB$ zYPW$}+Z<8;yVNag7gVQ*=lCLX{E_heS2Z{bzu3A|FMQKTSCOyO`h!B(cjvK&rzw{WW1 zlLgbHj~JoleUKL6BMXm<)p2KN7pBBd$uGk%7QQfI3Wz+N-MAW>6-h z7bil2IUb{-T$&+=QLpx)c&HF}1V%$Kfxm48H->|K@{=d5iEIb z-ozO!zOE7@gqw`3W;(8wO4NTg032RfRcgFF*Ai{*9_mh zFe|&UalvV_AlHrAC&-1~7oV*Ah@tw(Yn;+(Jt@$oXcOXF`QM>8aH z#ioGllHU{E5}U;ShnZ7<(y4B#+99b_Tf1zJp|Nq{vgGCtwqQHdWjKV#@b@VDXq*+R z{<|up?JC;RBmk_K7#zmnY&G30dNA(#X3cTO%<0Q9+^@3leTpywRu*KL*V*^(aK6U! zg)Qk76dZp>QmJ>=(u5WEy-yDUII|yMg9eB{Bl)TH{_vCZ9!c2bB%Djmh4#HK@O7bd z(GqnC0Q=s3ygy&ZBd@JQwdtVt#Mf{6ia*oDm-;2ItUe;UUgyisn7IMnLU3%s_XR7H zEuxio!r(4b_W@Q>5!uA$1723JuKL>UI`OJC($1i&!$1LNUSAQQf>k|u`jeaPlEDik z7<29TBCpw2re??|JLieb5(qg>x}2ERKZ z9khmMZ#9yIb$5@P;+`X0@A|t%<3ZL^;WWt-sD5+=4N=*M^e?E%VEO+HEsQ8+Q;8ko z%RoQB%$~yG^YhBt*=?3y$&5FyOcl|VSSnZGDXmv~I%CSKkg;#Kar-SkwtZDi!e+AG zVXpn_ujm?`&Rko(8aZtfb8WVILxNY|mY8twKt7WRH;)wJ!tTgx(tu33k>cBI?Nv>0 zpAPWTqQ_e^pzrRNg3Tj|Exu(~M{+MGP9QUwzXI>BKT}=vJ9zPFE5lQqE$O%SN&n++ zPNxY>KiAP=rc@bDjlFKaB*&}6DYIu67gw^)?p|PinBNq5*E~S98X_5;t?!eL{U%{p z;)n6cT>TiM#V+Csy-m2K%(UCtV<~V2hs>VM-Aibkr;RAT)c&|X9tRWYyQSbjinKsHRbK$q5*gFxV^)gE20-LUiv~alA)P|Y7}uH z1XGv0-pijA9}2AW;VNb7P=}D1P1=jf)GN+=Z}99gwVQX$2FfBc^tHt5*L>rUp+cN7 zWZ>k-ZaH3{G^?l@mpb>hLF;J$i7=T*-0MyPs1+}qXfSRYykwQ2S@Hq_I*m@TXjfU&!!Hq>d z%=9HHKe2wC`Z@UTCE(4`#;&3sq>xMr(6x)ruTE_&`ui$eP4twA;fMM`nTX9k$v$)r z*{io-5?+4+HHyXBHiS$Ph(uaG6rtnkV#tkSs=I(4K>I;#q=PZ$n3JstOh!E?dTCzb}} z8$7*ConW|P8xj8y1S_*#ob0eFy{-x|Hn_H`Ls-BVBxmiYCQ|eW0$(>BJ~3lf7gp!2 zEK}n7SS(tM2DxEntC)v`r-@BTq)|?g$ELIvdR$mRw-%-i4R7$a7UsHI3nvY2Ej)+M z>8*uRxjeoQJ8{z0H%ki6J?yJ2sCmU`7)l4Ui`pe`bUQA4I(~a2o&Zc_mj>+Jm}>X7 z6?MoY8@pccQIj<`P`%7v)DiJ%Yn5<{rHx#2A`fbeE*OB3I25b9F}E&>l6B*B&~tDa z>3$=yd(CS|i3KyILK`2ArQ7;VW`3+fzK%JAEq1H?QTo*j)HHR&Yk2waV zz+(nx5!#H$v6yjBb?yo$A@(7g-HpW_eI_MR>?=`|mN{LX>5{9q|;@ zbZq<&?#}xJ3n2G2ZGnTeSv)vQOwQ8l7JKSqYg&sv_1IFSRUenzj9TW4D=n+(Q`+ol zFtNK~Z^1cC3s)ecCvck@o~7*^I(Uh6-F;I^!We z$2#dY?!Se%xNh+Hm`+N<&VD4lT0EF1ItpT}8hwy?L3^mw*v|ryizD~x<~YNurDviM z@qw$HJ;H3QtuRfuaQB)&;-F{dH|U=F(2=LUSIlZR?nYWqw+=4U@ z*8;7Zz-ny@xkc_(44!}!D5?sKm*8EwugnCnc2^p!~Ca!2S9 z%x-49%p`&}eYJa4xTYg8v#=)BUsG;(HNT&#jd|Ry1zEwl3F{$byM=crCLOn|662X0 z&r6sPrNiJ7?U%3uN>`x`0PC-CcKW>750j!c+k%YiBdQlkTWo*+AdU~6>A(DWX)U^_ zG#$<1_(ZO6lhFG3jVvzKi&*wf(r!kTvH+51drUlKPLulvRp(CnMi&(xj;N1gK<(!z8xKr2HNr_Eme;C}sn>15SOZAKNm#Hw@D! z-|*FmAD4jXUDMgutC$QJ3VC_$mO_%uZR1aQeMU zUeunYPQE^L*s1jNF%qh;oWZ}ebcrv$j$q_f7fIDbYUA#Rg7MQCMuxtsDm-3p+S**? z|M3)lxfzos?xVt@9M6WePmoMjp$8e(8yp{ps#*tjhE1%*j<8ak^16 zNDuy%kE2qrWfeYL}ugppe+k(j+ki$MIFHr+WPGvD^#HCwt!n5VvYrs+||sRixfGv=J}OE_yHOF44HH z^Qt)#(V~_e(A*2pUJy`wyKf;!-MK^~hfeM{&bP2Qb<5+_2e*mW&@@N`OGF~-Y?AkP zesywgx89nx{3&HfaTP5Gzt6!P}6BNJON_;EyK06RdeAs z%G4@XpXgR@1hhKGYE56R;TQ}jXvUdFXdV$XsRUG~RV^f0nfhK3s)*4dR>iGDLBoZ+ z(z$pAUaq4z42kV3WcQ{epQB&wo`@0 zzy1OPiFsy_k?O0^Nly=Aq?#4Ho*QfmG2J!i|5PY#VlV!8tJ}YRRHWEnqF!ww2T?3O zoJ^$+O-IRufqwow}dSniB&P5RZmxYvCgRArbk4GuxErWT2F9S zX=%qs63r=5KU(0(J387N9iN)6p1YHD$%!mB&h{i`yPKFBbg(@mT{zMzA3hCEtG~r3 z_=h zx#2f{dl;={-R*Ii`?M+*?VI}crKkX9fXT<>e8ir*=>gGb)8JXGXj;hD(>2>8nwuR0 zhw%eNb5pcv4%mx}+xA%P+UIlU6*qCk z?>tY9NdV&BcUf6^sr^BI6TRd$@rD`S&&f{a;1BGN?Plom(KK1c5WAQ7c>I0XFGLb{ zTV>!V0Z-I04y^-NX5W_Uy=G}Vn477dW&{Z)Nk64@iNatyhgDs{GcXADs@@`LUp5fL z%(U4|vqo_7O*}m*3o@m1739FISNnc);yymlR|rGywBHI|Ch{vM zs*1cR>9Hwz^+IV?LJMyq>6|%|*vwQ9JV!p$FEIVw`rW4I=nC-%U)$cN)H>CHVZwVM zB82!a#0oePd0N!R+OJpmQE}}O4*fzu#m$rB63=l*h4qOJc}hRU$Bo*(23wNj<}{TK zBF=n}v=zAjSs@ti3!4Dc?hD0_OwxVft3zpot_9L2{^0z0Unvfdji!`?0!zKEaXM9hiw~uZGRWGj+>HAzV0K z4Q-v**P4bH&ooTgKzOycS$S55wZAhlM5aUFJS@Yw?+-|m_&F@SLY5wVeh$UmO<4P3 zOcKT+i9;$ON%ScaV(KD(4(E$;&(yruU~b-SE{+p7hxZaYWSf9T@8i|+80LxI-S?gn zy@PkhDO4R@J$j?0cu1#M#w#Ye7npeo2Ww7iy-sd$u*ju-nIxSY<`Oc%$>H7sP7a3% z@Dt+l%N6}Q%VVAIq(S*gq~!Y!(McbNukk*>$6+EzfsAe^N-BWmu(039;Uh#P z{9N%CjqqTb`8IQ;`?Ewab6<2F!45(E(dxeUoajp49W&rd&C@HbTD%*Mvf2iCH;m5E z8RFMaM_=MZYd2Z(S}+^$MB~vg;oI=mKHr9TG)(w5#G_%tx8a69--fu_6W@l`6Vd~z zxA>!48qxi&--netN@zuN2Y|ZzxHO!CAY?S`KOM`o6%Wq4I#HxHRkpe~8lXkl?K{Xbc#xP^lG& zf8^89>Hm*_qWCo2!*3+?G*9f+XmuH_(Ly5;QxkrA~(b<%f^l2y@?VtHHyb>G+ z3=Ni2{|7z||IUn+^lA7B?}L0Az6iUjh#nRY@o9LRZeTRL!&Cb-d`XAn(@=?sg-^q; zi%-K`?bGm=#5w-F>Nu`I1-{Uqp-@PDP$;_T9gM;p7Ell}~a z0$=RUaKiT}^q>1P)LAC|8GiI#4X^zf3Pt+-8785$Kf}FAsDI?o&`ZbWNDUdZ>4_G; z;Y#>3tY))S2Ek?#He|YR{29u0d@fLl=Efj`05~RHr5Z@bpJ6*;w$9M;XZRZ5;fG{; z`uF`A3a$RNKSP0XP$~TXi$6mlh~v-jJ6AAvzQCWM(D467e}?YesOLWC&rn7eI*ywe zVOT8j@h|-uN~_`(j;D;uf8o#Y1;986!BhMhHhfAa>i1{Z9~p^AuF59fX~uu#&+tko zhcEPJC=`$D0XvB0p5o8&-WjyU7x^>P*yxE={ns&!NfZ7ICD(uI&+rX^ztEpyfAys9 zjet>iYv+@ap_~Si7q#Fff}hY~6}A=_Z7uO4U9f`G!;0f*?7HoVZlUf4T3VEoKQjMg zoLxfT7YMYccrsl0W#=sL#LH6r69wSEmZm zB3|W4rw6J$%kvWV7dc?712zzTAw?wFRR3bx&C2$c>2sCtOz|_@9p-xO1s|E zUg*4dn9FpFKRR#Md+r0*6V-Q_4KG|zPr-9@Glw9=40;t~`}qrKt2M)}O4BufIxus^k-th#M`4_eW(B1%=FU)T!Ue-(2nDZ+HG{ zOYT}6E2Z)h>5$BKN`?2(3R&OMP0{ba%lPw|=jdinJw ziLXg7y4azzY2#JaO~Sj9ihjLYj(ttRicBm6J~90TD}3fCeY4Gq792umu#^s*Tt80r z{DK)-tO~TNN)_VMdI76~*zYB&r}50#OSlFM9MG@(t(r_6Ihn@hp^e_cD=&XJc;*uG zli2BfpWY>GA}q=@Ka|9&jam4jvn36O#EX2@C5<$W0jD>|9B2n8#b!k-oNN)ATV@3W#CAJ30?UG9 z{Gr=liVY8McJze$Vg-9J)q+`Hd!uIP3x~*gRnrMA@2A|r*}HkzVp@{1XmFgU^l{Hf3=c}mF?`p*WQeV?PZKD2TRn!Ho7hJPnOD%47QN|xy zUB$#*ZKelLuh!hb)BZ%vCwfn5uyC&SNBsv@3o2W4u9G7Q3^`6?h@UPGDC{$4)b76Uj)h0#ot73TRuUMJE2PT$EAQU^r;wm%I zEfM%XDRYH!kL!+?E^9c!;QT352o@rwIB07ylQ4#GBR8tz@@mHb{=cUxBqh!lu@?Vo z@ao#yIPuO3`pwuNk;cUZ7v^CZ`eVjRw{fnW^1U0#H-@&!`oB#Xl|VeInNQY#T$(2? zSlbo71a!_DaBb+pcI#$r!Ma7JBGfhxLj)Vg89Swn8RkntanL9{_TdS=l zrJ$|QpM%9whu`h!V~lZUfN2RcIsaWpoonqTNc(s`7m6JtS@1T{ondWbKZf~9HzLcD zymeWcqcg>i^Wzek_bZUFE4?>);8#Ktq!mc|COK{9UI=m)w*!(li}T)*$iyM5gFP1 zc1$0C=J^RPQY`k2D$1D|70K|cC`Xs0yTTa!h5{R;3!N>~%}L5s@R3Sr!8v*tt2xU! zESL7Zh<(LnZRgckc%kC=jkVA#JI+J}qd9Si3!Ti1L)UT46vx%6BW1&@C3uCypdo~9c~E-9Fr;eEmPdV}qEw;=7~utl#T=2F@cEZCRct*PShIV~m9 z%F)uW?N&1I_T;xiAM`f9hb6)-%x1@B1&7kx1DB9ktnH;Xz6Z&`Rzgs6xay>t!I%#- zRwjjBS)zBA;9kjFC5LyG>CwxMkL*Q;{0XatjZj8ZMYIe-&R-f^cpQWc)EoB!8W(l{Fs}CmMy{F zKx(k#nwA`M95w-w93L)@siuPSXV=fIHoji1b^%8KlOgV4p$)Afc8na`zs*aG?%gyp zl}3~p?|wtp-K7FAGY{wcPgd4WK6sCN3!=B{QaV%eOUyKx?SW$x4iCKLJFE{g@SE~p z6zL1nw6B{~S#fi@@#5{UAm=jw;VLvd^}|4Rdh?-8)3%_Ie8;+r;LzMbsvpHuk*H)$ zs_Bv{Z5=L&>(fYe*IB8;b$wEBCj#nct%-s*W%ScR7~(s6Hu&v&r+%7^eVOroEhO+* z;BsRY40MInCDzeC#c4j!s7xlh9dg zw-KNZFeRy%M>b;k&WTte{uwe5bzOcM!X-d#CdmfPUcQ9D#RQ(SlVj`=KyR2e@V3;1 z{6d|3lLIS??2BZ$fDAP<4aiRZEQ(BROf%YFXrhS}ir zX|1VC(Y!j{g7AnKlkX8hk8J&b91u5XZj!G)TYgsO5VJTCdQomA%Bgb(^L z5gP#?^P=-ae0NYaY7Amzl_)Ka7b-Hec!yEg7MIY-j$8!!k;j?eNO%{%#84oZz0Odg zcGYW9;1V0ScDRAn#%^ZHLaO8T2d4kMl$AXqvXb*o@>Xz^ck24yNp4Xu#yfuFc%bii zS>N%yjCbk=-!zWb4GK<~tZ>SG$er)&So=I_v2%ye4(HOuwU6*QMoNq0tEVISDD6JA zP;qr})2ijgu5;d#u8(g?irGc;$L-lA?wRh}Du|&#xMN%j{9S88L}F_K@YCvd340gX zim-R%+})4P!`;0~ad+o{%D~;tZx!Y)z}`SUVeJMc7~7@iaCWi8{oJ)m(@M6LEx#SZ z*u94XaC8A!h73hE4Ae-bBNBNU_zG`-UjDv(T>dtTCJtnE_4ifvS2zoJuTy{9)ZcFY z8d0_l#n`=^cAU-F{pI6oPJ%B#M?%HeeU_I5W49YVfyitJkl}ss7mU?QB3#aR;l&TB z(hGG&)Tirx?Ze6K@1;20+eK~@;qm>a7UpdU{7}+Ol62Xm>z$5iIOXe4$=i}@4x6LR7%d1#dez@w^S9;UPx#w($kQ~P_AG{i$)_#+_+B2K2hs^^ z-7_b5!Sapc@q9Gu_zpV*c+UEw^Sg)0CeH7E4$~B-a9$nu5+gEl4DVJRcurG))sR|_ zMz{B=5E;zq2C`AlIj-+YOXIHZYKRU+B)uzo!^pccYB{ZwaC@|X@J5v;$O#h_#;%nm zDVoE3P`SSAa$57OZyE9pTdqz$k<+e3Qn

!01PWpgPN|_^I0!cYUX#UM0$MYZ`6m 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 K3H%R~!2bjNovdI0 literal 0 HcmV?d00001 diff --git a/EpdBaseClr/dll2/save/Reader2.dll1 b/EpdBaseClr/dll2/save/Reader2.dll1 new file mode 100644 index 0000000000000000000000000000000000000000..3edbef2b10345fb3dc6fabd2da8d9af389024800 GIT binary patch literal 158720 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

!01PWpgPN|_^I0!cYUX#UM0$MYZ`6m zRf?U(nmwyn>9;5H52{!-2GJj@0_A;df$|;2Ml7XVr&R_2xK>*d{3BlPf`7#8-8Tuh z`Xd6l(OV>$?>m7D7smtPZdkJw^%7-uH7k1g$a`+|65d-K3$6}K#c<=iz(tD_Ss9>s z)?v_*1qCX>RVu+VGMKR~Oqha%=sS`Cw(xJ|2~+qrdBPI@jXYrpzbsGK!Q15tlk(?0 z!`lTKBF(b6$~`aaDGzV&=GAz07AR|TTWhmGUadAmkI2G{Y!}Egp5{h{3a(YHczt^s zPS05>?juFCjPeCg2H_zacHW!r74%o!;{Bd!_cYNrxTCnn19+D6b74=U`EMbwp!C|+ zyp^iRWwW5)8nj}s@=}ZSOd>7Mc#ogpHQf9Je?5^>D!^eG?~0B544(sPgRt1hk5Js0 zc?$D68XZU*jndV6kb^S$MHyqD#!8sQJdMCl_+_aZD=toC|AyfwTdtubP**N=yP9P% zr4!LDq*1Klw`dc6y;nTlT}Ii`=f9W8FIJ&}NiQ8LSNg~i<*pZouWSqDhV3eHDB~8> zyP9RWN+srm)}=!&algKjP6DlrmP_C0d@9mYN7ew`0Uz${dgO-gu zyMu#cI?)G;YXL~~-+7JmekE6pVCx?|A)F<(ckhB7$3x;-D(S*__mp~UIkj> z&`vEY!#j&N&SOSOzM*{R#f+$HbvsB74Cp znG;;vwMf)bT-rUrOMFqr)Sj$d+DUo~_+SA`F%gx6Te{`aZpyt(0W9E`Wl+SW-ADAy zrsZ0TMts#hO+Q|0vT~=M~cfxd)Ay=4B&5*vQ;H;R&+KWA>rJX z=HK$@QinRQV6*tY?IK@_wIeCH%Xz9jSIeD1QMts-F;M>G^oxCV;z;~TwNcgUk@C0ZieAo357C{eM zWx`<^pJN@@39ws?-k)6pfW{fU3P2K$>qucSdi|d%uXU=4j6>YP*LIl%?RMZR?zOHO zHYPzxAMjUst^3+_Yw%{5Qe5mi5a`cWKzMM_oUJx2%OR!8pd!rF>$n?h$&&UDR$8l~ z(93O<$B3_>>$+O3aC@(^yw_o|MyBd=GY8e4_(#5(jvu@6R!puneKKmgI<@m3m#*hO zF5_c?fpTG|&X{Idy~6gq8~!BtGoI}T&|e;nj6|e5V*~M4W{c%3Lo?#SP6{!uuu2HM z+|3uwmP$2De{BASt_CiCZ0tyhMP$&+>r*2Be)iZ$_$VnaG5&52vm(1}V76BUYPqrP z5{c(E`CHa+d@8)zmnAovqT9uDox~{5buz3JCf~+>l8H4DNw*1id#bIPxZBH(r?^iF z5+<+g7najH$+)J3;Ad1=t**{_^r6(L3}XTJcn^_CS3up`6Mc{Vo(GfFRU1YwoqxSp zu3lTeQf1GYTWQZ)#cvnCv|H?16ZzfBFHBrQSv%SA??I+fpMMe!Jgz_>(m7BWqfaoK z3yL)R(rV+i59u9l3+y5>75I;O=h7OZ3#A!R>D^>}W=AvrjF*4}K76-pp zRI6QCZ?7~S6%`w$yr(Uzt}HjwNnqWbMx3d?$6bZn6U*K4nHVQ{F{WB%EP)Lhx>Oox z3teXGN)}FuKpJ+8p@($D6wAbzrcy~$Y(gSEp>CdB;4wqdRvk{&e~+VwF43Teis;hD ziCY`L%Nd@4?0oQRGw_X#vg*(;XK;gtel}z-h^691%cb~A;VO6QG%?asV(4)lk_oX? zp?07kUFL30iTT|v_7de=BCF|b?J6OD1%4VllM5;9%(%c$D9PEmC}tC-5_;xoiqeeM zlm)q(a{*q1O3crenIEW#9wOxCL<2FiD-F!TQ0v=^MasTpVeo4!wA0esS=cGT3p>?l z;=LkRI0H+medsZ?;X4Y2(1)-jFmy1Ay3GaGsmha9ETTjE0-s7>m_zK$NgG`>;f4j{ zw582&Yen1`%Sk-b_{VaE8)_M?I0$lEor|T8_SD3CTRe%QB$i54mAfPg{VhiJ)XpRu zMwQ)?AuF0mAU#=mD;t<2lxvIGM@Zyu#q0A<6$1fqnA&$EdM_5zcNH^-)s-z%mk<$~ zxKpIdb46Bt{%j(kUqka9D$EHu!hs>&B?z~rvNF=pZ=`Wn2+wA(yNFt^U4K0;2f*;w zFVY9wKT3)?J&^9ME;sh0)ui{;!UX+NJiBAKrdkTvCreEgQ2Lacy2A6b_>1Y#cj4qum4qPs9y9t-r7Dt43&4&AvSGf)v`msCTc8A*Cj<t(UD3kQo9q@g>&fFLa@K0eOK@;j3paEnGP`kT@JPyu#?9A#FPt%9B{3Lnc>fmMf2 zyFATeXF<;>r((V67WsS7aoYDrL*AYH-1_Dfp*y$_>P0Ggszfhx{Ei0s4sUv&DL~U> z^BqM$u-V!IRn@Xa zV-uGHz4*r|2n@z1P628P`eG9`!sMBwzHx~`x@>_#e}93$ub@wi8tl4>lFjty&jP9F z5cg)K_pvZ3c;IMwzErUCHbAUA?t~+)fGUhoc)>jd2GGpLvlJ63=t3JO>HO>`me|0XjC3xql$Ds1)7G5i%baMmg%px_YZLF=`1SB>Epf~|*s|0S`dE$L zCu;P5F{Wr~TRhF^Tz#Ar`b5n_%b1i~$E2eN^e{eWA3H*y$jo}~ljC(v4$97>L38-c zS_JeGm2ul4Ri>Ji9c_Lf&0~b#hPbW`|3yhr` zYm9=F*TU}+e$PtTiMc6pFal%dLVeTQG4nv*NMnVaHFvBvOPi@msWbIbuJD#Ov(eRY zZYa;A=jvZwC4yFZ=}kmesV^^#%1SVZSfQ%c?4`A6{!v zNqnoY_J+OXY#B~#KOog?(IpctvY2*FXj9%CsNy~?Z_b9x(IV5`zYHVICu(Gyeu*C0 zMV21fl3%)v>!@0n7ZFA@cZg_D+@%jZ5&FW;c?ael_}6%^Q`!KxsKTw^?Dkf;0?A6X ztfR8xSF1Q8%=GvRh2Uh&6<+KN-|4QZC|_P%S9>cOV^IG?mmUX^zyoL2+Mvi}29OQM zqidZ=W&Y0da2swprW%)gKS2w(WHEnwzlC3e9akpgEel1m@c}^!8ip#3Z>cwbFFSa; zzJ4h5@i?(5=D;jXLTy+$*w|qRWL1v%{L7W?x(_Dad>YY#7#}X7umENlsEnnQNu5eSNY- zt6e%aU&=7tYo&(z+_g{0Al!{8yVA5o1zXVjGwEAyL_DaYKB+dpU7Nwr#qW;%_P`S3 znQsdYqja^AtKhP8JKOm#Y2uUe$6OWLxI#Z{)UoJbBX_#=6xfAWCG}_vP@>iHOR@da z-kccU1ebLwA>3fhf7vC?ds6C z>ZUuwWj$R>?|6V>B;*PUISC^MkfHFCiGqwc_It~YH%vk}K=72B72zf0F|%>peA{?# z4b4eOO!vfiDbr&c@2HGb_12n`WO^Hpg&IzXZn(|3EG$!?;?8c^csPvlRv{bE6JB~p zL7Q>G!wD5~e8aIUjfGSvx1vzd6ATKjkUY)cL$J1T0?}6|l@P+Q^rX;M}h2Of2X!aoXZLuxVQ8 zbkb&b=rmFpPxfLCkRY0LO+*coy{tulUufsE z0Em6_1VI+-opNAgE|PuUZD#4gZsHKF^XzbzhI*ZGF#^lBWa8pkbnM$enpl%$*C`iM zQahXrNsP50dY|`Ug@VWY{v2&^nm1qyVs<2>W=ZTAvbF0rA%ifmx5*>|s z|4xs$7plK=`Rfg2sf%V5_LZ+QaGCKSl_QlB;4yX~e9rs}EsT?C7fCDCt+oq;W|6q* zq?FJ{)7w8vadfpV&r5o{=S+C}Y>IDr{4)Lq&m;-q$sU-?^=06o(28amv#5a<%{9`_ zsp@a7s-laj2iJhP+IX>!Vy%VEP(&Ci0r79c>=RXqrpJ>Qjg(VMQk_9h(^fu=gWq6j z6o02+pSKj>3sYzT;&0`8N^D+gIFidJPzMM~=2fI8oeI@lO<3V9Cj>(`veQ4VMoSgI zN!Pr9oJjn6?q3AQFxz?9~{Z%Z`q-srR%EK1#Q98X+raAmdfyX)fKu2BKO4B z@_8*){VipG5PMejNkaNHZ$Q_s+(>~vB-`yZ_%9(#{wt0$=sd+(;sv+iNh?-WSa%0VyG!dr|Cd^Fkf9zXp7geyn{q$epfZ)Zjp5^>td=V-r%0x&s`ZEflB3{lAAyXy=F7fOr zDA>0qG|W)9qtdS$lN8=A{j;Vyp77?F3NyY^#2{m+TM~Gh*GfIAP^|o`c4}X$&sbg_ zR`EvCS&4nB9nv$aHEeobRiEd+(|~03GUD~j)(KWCTW;~p(=)?MJcZFrA`12i2ms2! z=WYR3YZa=A0OFd3z!rzDGN3D$ESNM?kfcXsAVSXwtl9DvY($z%`S6uxt@r8=OKeO{ zRqF){gMUop+*PC1Y0D_K00ZOM)=T5dQb=q9RDwPFF{_k(ELumJ=MY{F@JPAVDjA*T zMXJ4$!mh>&Ck_u>qr#->eAN>lYvR5eDLa}=jI}UW@}A~{bj&MVDkFTfOVW1mw5$@DC+`a&n{+a;yrfa*%7 z)dxqXU9A`EFFkN{T0PjtwzqCK;#}2htGJ*=B7LT4%}1o%{C344FW1}4tJjLv=lH@s z=6e^fHjMVjbm|@Xo#m0H`I7m33s`eIwo9*l?{0YoL-gttwjiI771qMGdT%XgHOFa; zfq5-;L?kPRc~)$@Y*(?l34q~xqXskdj4U!>L6*$f<%eFDFk9d|p_f$}?ehBMm0q<% zvB>c`+~4@wmke_`JlDK7zIw;;S!-SyUl(e>FXnEhATU^Xu~JdVGhSBtr!W-8Z+H#m zD&~t@R}INmKy=%!Fs2G#TWNeSTi8-uS$hSS*wZ5TRNOyj*ve~scceLT@;y$m=U@=4 zNB{;=GLp{1AP#JlbLubh&naR`V{wBEN04XZia{yGjcTEJq45Dl#z)5FHC%W;cb$vq zghB_xQmTaxSjK^rn|fpAa}1)WdMw1rDw>(sxm{fgbA+{Rj_1P}S(r@}K`dCCzR(rA z9fz6r1QulL&(iEXkDqo-@E=#8v*AN>=9cYBj*t0>61#F9p6H;lqWdai6G|#Rj zc4w%!cno?yMkY@vp320kr}=7D9L_m)+OO=bil`eVR_~Mmk$A(z>TSG_HL-dV-)Eax zZ7t5r+p-|Z(`3-FYU2tkvnpuDn1U`mr=XNSQ4qJ|pQwWVT`t4%7QJb`s}{Y+``8w} z%=g(Xl2bve1E1kctWPc%B;I%!-zp$EOi=1hR*KE6D-a7-o9Bup)eH2L)*FlZk(^K1 zh|OdSi~6g}jal5>m29Qfz0}vxx2Z?0z?!+rLTZMd$p}Y3ky_y)c=xIE?tD@K+SJ z-)DS~FH5S=yF5EEo!Uv1y2kTDCdtOy$p_Cd_e;l>meyVdR2gV(AgA6UcdO88`{qm8 zb~oh~9P-w=JP+@=nE|V)t{*2_D-#P9Do1KaSco92EbDR$SK777dQkFHnWt$r+f>}B zf3%i&<42mTr!QOaBg$2>%&#FD?yJ<)R!&V6U2i|THczu8GG9`6GC@t__g&+Nh0A~8 zws!2x;2bY-yAoA1xfIGJ?^0Xv{P!^n*?o~JO$Ja<7tk5)7~ z`}7V`)q54U-tp~Oi56BnrK-U;(7y8k3BCYwly?<=|p zHc%Y4RvV2Cz4DEh2y8oU1;q@lK7m;}@vZ>`oiOStGQkQ_91*MPGS|+sucHFu1tV0f zpoI$@?Tv-yes~<86dZanolRqnw-k-7J^G#zUWycuXu4jyz=2Dwg%E!{JHD4vaHs|& zKRL~(HcS>pfKs>b^ty3SU>$Gz&a6vY6l$C8JG#z@lNMA%;(sha7+#yp09ZcQpJbA4 z<)M?JY^B!JmHt5-uLI~7Z8xkeu}Y$~{IU!Hgw5W`s;^>5FPAU`@g$~P#mI*3(~I-k zjp+kDp$+!blTF!DJVA*(f> z5uVceTl6v`^r9>z`{rzMCsChNY2;tY`9L^Sjtspq4$#X(y-Bpvqc`@D+Vg@lC;Csk z1RMI59#x;xqw0u0L74705`>d0!*#Cq1{XV^QBKd5?b~wW*Ko$vK5zj-;q@4W9%`xk zywg97lje!W8+RwxZo$5mx}i@0=eC8Eh;G2$&Pdf@z2jz-+J-8W93ytnq-0|%ha5H> z<kHj}_vZ=Q(V;kXMi>l{(w~G*Pue&>)YhAz zitGVEM`$x7sjk5deXZradwqo>A1JTfkp)TyTlZipIJ5v4-19?4gV3MsB6c2_7DCZ1 zOTfl%y&18X%fSw5&G$-m z&8Ay@8T~BE^_BQ~8%)+ejhh`u>`%D}cXV>_*tPkg!k9KU-ju-9{8zNB>onJOf1(v3 zcMAI=!@qpA6{~m+i*ybIzO&JU9Ak;qLgPy#$w`;M7iPo<={z`rqg@&o$TJ*L_*^6U z-Lnyj@9}NXB9LjffjM9aqF6Sb7?cCyjtX5uA2`djbDX@5G|Ea>;OhD`Uj!U81WIm)Pq0VCSK4|jT z*rtLXBNb8Gp)!1kHEcVE{qn7bwhyN;n!U*m%xj#0fFBFoyEF>Q5K}h82cMDJIV;#v zZjZQCM@DRh>*E{ui0H6y&-#nbu^W!vax$6kw11S0@ka|5UPoyHeTn#lbuMu^?KOtj z&Xi$wo)3{ey@^?5oR6{7z|qNC+afdb_k^;_!8cJcx%oSZwJ7uQ&x{IduVVxezSy{O zB!NZNevy4gE(JXnSuwsP^jUCbOHvrxD~00q_p&7d zElU)_6G)HW+PEDEunKfeGJ2>3Rnf4^_$6=Fec^olnhj*XL@ z5+Er1W!1*BypKhYALCmTSCmtP+T9BKRjv_)b|RuJ)yBP6_849?jJvFNRn+agk1eW# z@ADRgmxb|q6=%wFA;ty%5cc<((;12}82AK8Fd-#|xlyptDwn>@<>>ZiuFnWq)_iCp>BJ)#JvU@@KwU4V*Ruw zc~jPBszRoQHs>U*y9jlzlwlb!Jw=<0bQStLZAoDk#t2%z;9^0`A$v%nCC;QV1$UTl zD#Sxw6X0O25ebzO86WcVn< zx>p!;dDZ3m!S%x8`6xCRxvs+2$s8j~YM-$(QTwCZ->6+(S0Hv!@1Trv^e)~-pILf? zl^>?ny3$-aCe0+?BW3Q2%9?8Ct}MHv5?xkxJrc?;8M9Gv^)#=PEM+bXn!Fsgn=e{B zNNDh{JDG@ZnQldI;@d)UnSwFQi%r9-(IXe0F@^>bHebM` z!+~Srh9ev!s1nnCH+M(Hb`W>0$n8xvlBrjXL!9vz5kBnR?C5L~sM}<(@$giug+C^U zqs6;2JMeYN*)V6Pnh(7He*Xi8rq!cY9fLd4;!eV4BhGUXI-Saqa2yiWx+8^kC*`hZ zC{)ycJo<_n%#)UPGeKy<{h}`r7}}*U-T>IIsI_wL%i>Hf#%b6ohA%?|Azk@h$UTPr zKy4pN4sr=R#@`z8@n=!y82FpLb$x*{6n6_(pt|~_sK{ZCNng(>k0e*(ni-N|N@Qs) z`c1}MK0KrI)FgmxyslC(i5S%i|*`^(b{B8I<#L%4L|4L z`YE2iHa;D37ec(;m{)Mf*RgqG>x~opb^oyzcOjhCtVK(GRmV4(A^(viUqjZqC&yN< zcX8(9lY_gyyT;i6H|+7zr+^I>Q3VsLx+%AH3miR7g;w7@&0pcAGOdDCzxCFwcOp@MJMD8scXQKhkO&z-=8#vC`xuL}buCVeL|BTf# z-DXz9HGa`}oDUSy6H9KESTs`${;S0#pGBe5P|}ZSo|b98L2NtRCFy6F2lOs5!E(m2 zWyRe13Q7vwbwBLL#8pA|rku0ZhTt-Y+l;J@>@mk{wRG`Q@6=y|r3VTtv97hWW^Lg( zZjZ9S!KB2A5vY$VTqH@%i3u1$a2Jn*1PO@_vqqa|h+`yw)^&wBnyc9NO5jvzA6rLu zetW4XQQLvf>?b8XQnj9@XDJ*Sev`-y$`z>jRbIk%gWkGa2puVy)Cv1@_4z_m5fVtA zi0x)W2a$uq`5V&O80TC|I@r_nAOV{f*Y_42T0Ss9`Rl$KS#qtb$Oi9c;{;Z)C~1c=InbqR58m{Xj*1SBf+rsT=cRtp|AF)y9u=D3`oOgclKkjn=BE>1WG?7G=#&HVy>O znkqrz4&(_1*?&@iUWA6lIF8Ssi=O~`h$uRz0n;b*W}GA`5XqP`2S@bzrOdOMVq&cU z6~252#hi-nAou2?&|vSzLZ-=@)C-Nn57D|I*3vs&scKZZ)Tmsw>Ry(v;sh9PWyxl# zwjU+lp*)YxqLNr(Hv3mBkf&O6ma4un8*DtZH}`zv6crVt3;oG9mR_Y=?WY;oYee)I zOM}&Fts|9QPJ`7lpDzi`d1IEj$mgrTWL1b-zhazU)^8V2wSEm=)cWN(LYq+5Z_eoY z&6UZ`QtQ_}x_)yK>-T3e#S0o^eX@zp8@qN-{_Pjn?lO3M=RiJwE46P&oY$7u+bWH< z)Ea5W%{ic%uNtAhFy}zE2}@s25p% za%B47&OFcbUq<_wcs2b%;@NY5p+b75oNw+$Dn@SLjVwaWb>kxHi*3Mxk$Sp~RP}^b z0nEiVWE%tOnPYq+&#MhXec~!tJ@brX>N(r!QO`L>w|dSs+SGHNu~R*#7|*F^p|MRp z7Z^|Q4DBtBZ74P#RzXXQhZuu*tLHt&rRuo}f}7QZ7lJ^U;gQf6n&j1~UR&h#v`0c8 zkk^mZt8B`~2kP}9c|E3HMUC2cO}z>dZtPL7Psr;I_4>5DKC520$?KE6hW5@$aFwh{ z(dO$ZzGUUxlYL+_Now^Hr!RSdxcemJJ1PX3`uW8w1RFjQa!w(exrX_Ym&EfFTBT(9 zl1t+uv#gM8U-FIdkZda?$Cq3l4@t5@rudR?iHGz7gR~~sm%Kb4@~#TmkmsAfLWNWt zuSy855t1_m+v>QKXL)%!`c5L-os@G`+p{ zAt?UNypGG2gBF_^Rr{>W2&#RkQ%p6+-Fmi1oF9H&CNDecU?TqWKy>kdz$;? znS_V6?p$ux(f9bYF4;d-Zu-Vm8{*jR}&4P~kDATJMUZcjmiiQyEOY$8hwLcZ#`=)?#Pg zeGBdjq~i6@mWzn><{Z%~4@{KaxU|fl3YH=&FpBf4X9|aI#DC#LtU@UCjMY&^# z;SV(yYz|0%3pP*kDzJG%o};k&TRzW$&AWQ3;~d!hXNZKr=C5Xsh0UO{4X1yzrT+91d!q;-X|8IjNtme22(h29nBl9NH22HeECa0B~JMe(Q8f*=>@uelS zGAg$U02R$$ccqb?CP6z0ic9%>nt#NH5{<{$vgiA)d?BA-vVwFrbhJRcj5RT|SN z527%+{k(xGh|984HlGwwF))S^BhOe3oPWn!5%qqStAIDoAgGQ$}ve^N54JVK)Z{AG_abwVPs*N3s ziQ@9pd?ntLUhBic({|Jz1YpFvcuNRf@JP=RdEN;W|(9No) z(1Ui`f>;FU4vfc?M{%kckMs9x&R|(A$idp{$nOyLOPfq)P+MB6T~VsdGQLVbVU%UY zjEi|2LxOm!QWYDui%@CRpgHMOyGwIXvW=2IRz?tQ#oUk^khIRO&l1&u^D1SwCrD=(Rh^(>Al)*B!_QcI?`vjjIRg*cQo7 zF7loy<2?Q9KPA6DoLIKk(ym%#0)KT|G{9)GQCZ$!xgak2FAESShDg#2v4CvZbO?g? zb4CY2T{cnaGN0nA7)SvgM_k92#ZbjK!Tq9=lNmA(0tD0B|Cp?2KP((WaY9|&3i$4` zx7?V7HRf~TiHXbvjSomS;yJNxW;?~%iakw2N0HZ{wh<#}%}pxJNiOmC-^(jg zwIMS!=-e(3{uF1YLM=48!=h+^C(eaE%|EAsjSa>pzuIjJ z)Jo5z#|eQaB<&PAUZFnRk6b-@oSyHO^AfM$WRq6)dzv^lWN)XUqgEiz5Wn3&B!ARN zeat9K3x;EuKUiJ7+E_%9wMObqYD)~y#RTXbbgfAG8kka9pG1<%siTeF%_*SfV4hu=!I|jWCC%3!}ly_qwFD{B`aSCC_=e4@7 zDjN>Iw`H!7L(iK6kZ8?nk7l*Kml}M3OWOVx#MwR%T*4A?A#z40DQu)`3I*qGHWV1aX z`gRfAa70w`HC=98j=BzM*j3Q+`(Zc3N(5Z(MWJ31(@SohzSQgrp1B-ed|6JCiSAQ= zz(F7j1bqI18>mx}9u}#WJkNt(UO4%_96U1@)`&lw@@?k4*3<>}Xc-HZt00#IT|yiO zkIhWO1#4ge$pe`xm2<)JfODx-@o&-`nZ_6*qVR5Bc*V2Bz3f!GQ^PC5E1~FIb25G< zs874H^_5`s_TcGBgafqE+)(>IUs?A0Ni^Dp)t+^i1)RS98!q9~sa!M9gza|IHdi25 zd17|39+arTt(Xq+{A*pd<4qWL(sg~8teI^n14A7sLMTuh*9eeu1a2HhFY~>Dp$)T) z3$DYOmOsbdWt%}1#$L;YVy1@>w7r(ItvEUnQD9;j(4=soglmq0y0hgEV8EFziW{5W+Co}X7Pt0VwHhAZfejZMndfBwv6b1p7JDP!#sE?JLqSas~MFmF1wTSQDmlpsZ5Ylwiw#9{8I zJ{J3`q+$x$ic59{}(8n18;^tvA6o&pYzpaFH9AIV8~uwL${4^c5=ihHmbXZaXo!y z+usE$XyY>ZMG037gk8sV=6n*ab~=NE>#NMBl5l;Bmvbdtg-9(z265Hk^GmqCbx_8O z(#|L0`Uk&Y^CF%8XC+*#V{z%$YyVxKPD!^yt^BW~TSw+UA$=pVGLh2Vaq-sNgm|m? zQy&p;4V|1l%GOe{9qho$1#a1KWAMx{m*(T;1#ipcz9!;7hV&3HIeZznT0gg}J|_R$ z3SFChiko8qZ|L^G_`*6v#4%2YI7Yo=x%m~jxlB1L)M*-Ium}Ewze#}uW8*}YIqn?d zBK%#BO!S{=XZfFKXZ6^2CbJ=h_WnQ8&cEs(X(w#^5eb=l-Q3}(8R%nLX7XhaD~%RD z*_l9!n*js_cs9JFd>^$;+w4TB47K`Vuiw2f)98|Xao0tAeTT7sj}f-b7q@zl+Car- z-%`_2KerYaN!R-hZ;4W|?{G`brVE1C&fk<_Iy!M|5G?d+1H%}DyE2d*Tj(?=a`M#} zYyOvbd8w&38g@ua5D5TlOl%O~2%a5_QY!WC>KeQ(C}oD-%7ww}IDF6-IrR%XJKo$y z%Yz{O9^_H6YNbuUEt;#b-L`;3Z1(Qh79M#bHyOA9pH50gMeJEEcZPG!8ynm0B;!!= z>^QCOZ;wuF?@dqdPA}tBaJ9dW`)sVyH6K8?#HE)z^*0@d+Rf?dhaLMGyX2A)E_a4q z%}2HOC@}r?+g7d#m%0+N8t2%)&xWF%g%W!YfGc8e0B#PesJ0eM`mi?Z$75YB66n*1 zo_S`?GscWLtnNThcrgd6|7h6Z*^On1#mLPaEiVhgQs)X zr+9webND|x#0gpOz3GPy4AB%E!X%2(AtFN-5--?XnH!)Ph|TP-9%%0!>KoFoRQo+X zueJ2*YNKzSoFm~><5fnM8;U~QQN*i?4|LaU=2TcrObA41ZJg0YdMKsI#txMcHKoz> zUg42_#{7X{QPBYl?QgBhZo0)j6~TP*LUF-aN;@m~rIU<|g@o$mDi z5tWEEIVA=={ijFtAQFyI1@G`g-MLy!cZ(= zW8IqGL9oS=oMU`EI2_|f$d%1)yszGieSOM~o$*X3Gs<+pGOLi+ffBci%4;lMBs@(0 zYgiZ$XX?vx@(1%@2`_Ut$2L!`5vVqn{6;1d<S)3hO1h}zqurZ0ZfYZa!TOmhJ z*AGJJ6Nzf4BKDaUj}jG&Tx}wZfqGko@$9chNk-b`Qg0o)f;r|?F;Xxj)#+zcP~DL6 z>fS`X-i9GKv58?bQ-yEG_}z9ZoMkoUqrxPGsyO-aG~LEb=<|;QeXLkO_^3YBQZ>|8h8hfeV7Vfyft!nn z%MB{XuLp2ArI-j9>=Ly7m@#83lhRjP;v3j}YvV9%@huxGBTKH13sil@xDR{{DY-7K zFfJu`c@22gak5&pjKi3}90;&YMuiMlZgkJ4k0c)}K_?mj4JTk~X~!bYt3`O~gz**w z0DOS*qF6DeI2yY}uX~kac&b!1MUdhXyg+D@l}7X`SS04H7OL-UI1iX3nsai|a)MeDNrq*);$2dE zWfu!%3#5<@vyF$&$v)+a*||8a5(*C@ty95t86%f*1id##Rccuhm+3ZrK#%7In{0RG z#@5fMgUzVV^Fpc>vY8ML0ipb8E`*Sr>;$jnW1!4@F@DpDFP14FcfxzFA6^d19IiUS zHZj>4_L4mpp%|X=oeFi67MLKyUi%Dvllh|QweB+G2r0rj#!EaD{utL5UnB)srduk= zrPvcSU(g3@Eybw09S!^+Sfyw@tOCsX#y`rqZ7dhz?ZciX7p0tPNADvB?*gn;`zm_X zNo_rYE&gF__LkN=Yqcq*Aai>Lde}B6h29?yS8>B&uj-FB%512Jz$L~Et1g$SOK#5= z-n+F>wb-1e?>T6Mk-u(V=LjQqgjb)(zX!-E@kP+(9@1GHO5>P%6&eYwcc zA-raAdCw}>Q)BZ|ViR-Kvhy_k4Jo*BBF*~1-Mk`(?fL$ErgFT6{?GB__ zCppKMpH0xFU8^glrBZwpHpJ4j7dsspdMezdmK#%&%}afC{jjDa;)!~DeGCc#bM#N! z)e=#`PSP)yWhYieAcw@viF&Hl`(o)Mx=2*Bhm=7!o*k-TYK>jd4?a!cl=1ULeTuUU)pkC_(?9DB6h4(E!V zz4pB78CTr=y8eUkBM^vye^_seo9~blg$^)yBh>v|8c-W5I|)&w|%@PUU zVNbIz=aRoK8nT}HMfmdR@I2h^5dLrY#tY|~oj^qx z3F?<>jID5&RmkEI5SlC?l%snhTBh?sVrGS1E&4+U9Tpg4j076g zMTRynvHuyHcn!~uimQmw;9Z{PT3*6+C!;HPvV#k{gD{LM7d}eE5;mKJ5s@Y2lb!oZ zBSp#HBo|_ n71uross|pPJNIG?!F~SAXuXBxv491mD)6p07Dt*D-FUt1Jb}@P1 zLN@T%$cEPJFL_uJQs#5z#+zVmA`hiIPAw@!q3}ZXABCV`-t@Fo!{#hjMjBKuWw)bQ zm2*Dj!Q+q{l=9$AaM1XjP1MJ$u{<8%b{SM;`i%qsMqB)bVn^Z{lIww1tN4aY+b@XI zyJzlaPZo@Ip@_sZWaalw{-dX*lR?_TVd=U5*S!5oL;)(rG{7A!7p?@Ba1Le(nW$H; z8aV{oc-3u+v9;C~RG6Y6vPFWUV6|~m8r~8=Tj#{YxX1^IZ9bq~)W+9w=c}XwTtZ-bD8B7!0%p`MxN8riN$*zCNnxQ494md4B|UQw&M@U-^(EtX zS4v-{c;h2p6T&yB3kLdT2KvD{Jx$y!MLOwZEMQ3YZak~1HxmO4NFi#hQ$`=e8~cnW*u+aIX_&!ty9{a1dJr#V`rVc`~uuBA#5FwOR6nbw5p> zFzt(i*ExfFTI9wn^IFFT-){`=x3`QpFFQN*zTo~O(+J+~++t>o#sn`3Hj5TJ_gAT+ zu0y8aQd^r1@fNC%x1GhU?A;)Oc=Oz|IcRTvMJ?C*3zwT|dd9IkA)AXilz2vPQTEYp zrKE{H$fm!u0n!YtaIk*$p)eXw>J=E=fC`4-gAilci6_N*iEZZX)k>36?^^@Ub>;dm z2{TIF4~#R`J&?l>Elehk}PQ36yZr`-Mv z>js63*e@Dz2{IWBxwwOtlwuCYKU_!4&?_1tos3cTlj{`gKZgIBPesqqf5KaIgfR#d z*4uZAUK7nN=fW|u+`44olt7|cS%@l)(gM(Jl3*|!xN=#WX90hDhan_w)^L_ymE(J3 zGiqQbZZ>WuOz)`;SLK)&K&FW`yw4SB4;e#$jBV=IGo%=-eR`TsQ-|+$Pt&J7!3H?e zkD@j2Z4jMR%L;MCoPW#D9qR6dGIctU?ZEI^$s&?UHVWe zkc%OgrB-R?mpIRo*7XJ(J_bwrSbL+j+}?CZ>uF8D#}|-| zTqvp60~^KB3n)5~>k})Nf%@}UC z)xAoR(bKfe+D&@Z-gR6cj!Fg5!iqnn1KAtkwVxPi4HVwL*}P~>{a459ztDJe74;8c zkM`?lX$}oeI=2bPN1{1I!Yf79OBJ7}SG!1pj&QTI4lfIwxXsrX)gOQ($(6H=7jzbD zquXgBMAf&w4P&*Z)Vy1YZc}7~-1-U4>Z?_I=S#2xeMmA0&6k6Dq-vBmu5Ia*&Kf-$U#myIg;gSiCAtVj)Vz8I^9WNqi1 zpQJLv++0c#+&9&Rb1rjJl#8rO_IFWXjNc^{bMw@f)gJf7OZG!5%P4d6D9p_(&&m9v zmD#)j>{TyCt2QuENbMMNQv6LPv=MLt^V-SWrc!QEG z+-7V`{v4wd*C^tO$Gk*{XD%c5z7&QKaUcVGTFzA53QcXoMslbV={G{()I0N&B}4mQ z(!epz4_g0 zeQphPKv$@&FRC{FaR#T1I6-PS3BjY-H=r%RXZ>w>GSywpk719H<(gUd9K}bvv-=dEHZBwqDvpX%_5)@ zEQ$Mvz-;`ka8C3-zzba+`RrR7nYYtB4G}4tk5`@gdM85L(hcJ_b*j0ku*zJf+W9{D zd}kVx27VV=nuIj@1Kh1*LMFY|69PJMz~zkRoten%X}W+2@xUf!;{Nk!PNHMxVbGR=~2zGP~aXXz2avjy+d(qV&Lz;H~IR|{@z8A zP0hXa)A5^?zrXl!FPgl~sd4H$q?-M)!|x9qYQCkp*GvwP5bsc`5ucgg)jJ=ppI$rj zpeniXLn-&(Q_2`ALg9D60B+63~!aooQyeud`YFE z$4A!LiTC|}U2At2jUiph`gc!-ks9t@YkSQrHO5BFXI!=zuD(2!B@sFk+o zcNesM_A})l%f9%@2k5olou47S_r2MG^D8wfZ#dwmzx-!z2h!U(Y|_>)FIegtdodK<{|C*LFRwUYZXz zeDvohY-F|=^8EeQ&;k-v-8{k5bRX^dGgGzZ&rKCBjSl4>7@4Zbf(!AyAmj?fkI6Yu0PHc~8oB zGLe?eOh2t0o{2A+>H!}_L3FG8^gENK3Oko1QBumm>r0osQ@N`Q1j|E8Y5 z45Ybu3An0pJ^TTeBH3u!02$HrH}#B1Xm)yCZ|HO}2tb)zuR6g-A0Cfb-Rax_ObT~+ z(rt-LQ0U};%O1LoCjS3#4}F?m%N{Dd|9{yY`sXI>{~LSgvrNkW$UXE4ftn0y-v8`9 z)N1GRv~%npD&PN;_fQ$v^X#F|5&W0$p_|6C;FSj$oIm(m;0l%$?5hd;w}KFb>mCRP z9tqbyAFkULu6sIM_e8kvv2fjU;kt(~MT5}#@1~r65&9P2T!g?%mx;7y6>emoZB4?5 zs2d-mt_5lM3CIXI7MbQR=e8y-3Y|{(eE%!pU^q{E|4sa*bqAwY22Z;-rhv{}Z@#0K z<>}+}uuz=!ao5-b$@R&#W*0=rkdd!V#f5rCNPJ2w{>uULUvT5p<$pj>YV#jLs~^pf_!cEg3GnMYdW+S7cBPtKrA;d@Ndpq@J-JT=F0nO z&x2z1sy@YRyuLm?dM{^dqNSeuZqU;YF2^;q^%tSM)yOLS>J{>Qif@#k|+2M*oUOIPiq&Q0>=F&$)7eYs1d#&Dn`U zH~j3H4)f(uL#|C*YLy$g9-)qBwLO&n3;kfIVH^Cetzkq8-h{7OpR?TSe||$&uwfv1 zlVjLFa1&z__CGJZ_T2w2Da_jXwA$-KIP*|W)y-X0kLTM-^gj2_eQBOueNdWv8c&yJ z!>$--4eJMH@{1LGhsz!_(-(L>4+^2uiuzPpQHzy5PdzsUueE9D5$=T^@w`$uO~Q47 z?tiS{5SK=8)gxS5k2(C$d8?iXI2`^QZ`IQQN4|ebk<{gRa0aa_dd_709=L+n7u#5j zq3Eix|5+3;o1y@DL&m_d7jtig3hjTE7;jZJ+Rklj!v4M9s%Je-c*V7$ieA=Ka7gz* z+urc3Bh-FNs5doS)+8l7PP8~EZP$+}a`+mrV_l~HS)^en7ra>6OOd*ro*g%&i32c( z>U|MVrfPZq$nn7P04Ls=cWB_NW`J!`9H$DuXc!b6u(`Wk4mp&VXzf4*D3 z-tc@sjjvt1ua&Q(8@WD({oOP-nn`fMsWq_WrY{;m@e*7!Fwq<64rF-)djsjJQwO3Z zK#%fC;F3iHi(M+sMc(yz=k^u^GQ)va!-4K_U~g1RSh2@M8jf}Ow;{*Ch(Ds2ZG(4O z_E_`2%{NDuB<~ITpN=fXF4Yq{|I42C>=?&AIkXy}_}6y*rlH6@yYEx3DSdKHd7knh zm9k7W4rz`xcwzQGofNw3iKJNBW1)t}Y+HVX%8&n%SlKoKzAZm&+>_KsJDU$}{;J+^ zyg7DHz8*jn>Bzy=M=v((b^n;(I4^nvhd(#gZ>FvuPdox#ogWkY%=;(yX zj@Z@Q>fLL+Wk)u0-#yX@-N!D@M1yu)U|y)!ThJIotKYK0Yoz_&vUg#` zhW+m@GBel2{O_80YkN!fmZLjmw%7Q2*3Cq)b03Bvw=#>^`DP-ov+!?(e}l0t$Xc1c zHM;+3dev3|N+`Bre<$q^`}eO2R~;~?F|QcXd8jS4y4zNIDZ?C0mW-j*du?I=tD%Nx zQB7U|g;n>ziZRK(dZ1IU+TU(undm4#1W^LtvjwMAb3`3GSg?;^AjxKWc#&x<*e9~5 zqG{HW?tfrS7_RryG~NGDcwB|aOecfo*40q>cICIy8C$ub1>RjxwcP@6$ZK+I_OWia?XcANCY5s|f zQd=>ca#4m3B9DXsqUIS8_H1z=b?wOuAgNYJ#SZKtZcPE{iveclOjZvk=+ zx4rX@;kGg9PfVn-=1;_YG!ahZEcYhe%vBTdfq%KN;Yw&+^g!F9BdWv3p( zM)p?gc9$K=-z7=L>#H*nSW>KRR~{Zap(43_Rz%cK8_sU2g?9BqXA_OhDtY1>z$qO4WPDkK6~*s5e1ESp3*d8O533+Yaj zlUF85Fpu(8;{;`#_k8Lzv;`8CP>LUL30sE!qVfcZ$|}F8Jbmg-P$61h>j9T6qNr@9 zb%p!FwVZcN7vIWqY>$tx5QJm$%CcbZ9eK{)+Z?4}8;kbo_BONjb(XpJBCJ4f@X$g8@Nx@S@q`b+UR3xE~-`rwrg-tQc+*OXO;RX{jKLYP3qsdmfh z&S4diTm9Pp@wGX#uRgMy{w0e}utG+DLNc-60+05-pzT#qGFK~7dRl9ScY7Wt;t?1xFzC0AqL@rU%T)*r|2 zRx_z>U=pS{h*~NgRs&@L93xRS44XH1l^s9(_5<&5LhJj-g)zA&$DwGJ%=gKv`1 zx++_h#KN*(Y+W_29#hes*t%*aJwT%{-UwHn(h_x9{Q1af>mjeJP${MH-=h{v<4@+4 zPCI>SI2s$WauEyE>mjv+BsShBpUMRH5a?KZy(b~iFk9nOqP~_mJHyuuF`hnkRA`o! zzILEEEHqtse(r0gjjwDqYa$#<<5!kXt81I_E6b8AXy9IjfqPJS^5N3t^%%aZ%91fP zL8ot4V&8xvdw1E0%jF%L>yM&U9-&sbL2Q*9Sm{{*kX^7o)B?S~RWznNQb7ZDU4wjf z#tyMTUZepVN+cMtuh$&W7HQ1hIsH()QnVM7!K?DLVn<<~X<-)V8c{z@3IPc$5` zt56`=#MLgOY#8QLYs#jz$tex>$`^;BJRiBA=5L|?NoM@~9sR>X>V~K}{X=*359fB^ zgL|jOkebrfJEw<@zjJJvuX@YRk{Lf=K}Qg#f2UEcr2Gkm;_)i0xQ15s0{g~Z)TiCU9ss<46XKuDyXJe(-{g?RX1y*Fjc6@!{q}) z%14Hmjz*VQgEjCcXn`3YVT3w@u=W9|zXIu&O{=2R(IBE&apjT87;-|et(3n%aHz;Z-wh$jp$+p$7?&>MoU zTkI@v!<7!(fbWll>nlAWF=5GjNdWGO++D6T(^>z%4W%R=+J#*#-ooMB`|8e-HFF|k z@wg#A#+}#^e+Ewu51=DG@Oan*2Gum^2v(elE7og$&31%w59mi%c+O+aOJ;a%&Q*3L ztk>by_Qb-?u2e%zLG5cAx#LV|%Vt;X~#M@*&SZB~> z`H14bxHZBX8oBM_)^MUiTo<>7k`0kx+#2E!DV(8mX{*3vXyhklyEh3e?(=rm?+0Uh zz}P-wEK6j}A~Gh$V;fQm8{6%`m{BwSfE8+af*I;V~*=*4YPGDE0Do6guxEVf#=r)q6bRSIxah0-5k&G;^Fg03N9lTm$7&JKc9><)IX35p1Q6P8|#IN^w>>vOnX;&S6+on|8LFg@Q7MQ! z!nDAQf>K0V5Q+Tn^OyfV3cQ)xK(|kD+>^IspNdC7jMq^Xff|*8+#+fghB_fLls>go z*)2Ze(!p+DMpk03cN=z*u7*!_Ta3ghm_Su$p*25<++cEbL2+=_F3QhHoI53EXg3`} z1qy0C;joHX+8qijRW`LLVf*y#eSvmWwx!!PYD!XgqdF`wuoUmR!(ScEVIpeuyDz)# zFF9rL-ZSHrKO3hg8)#BOHprxGkQrLGwQQ#%IVv(f>e3dJztB|~D;5+H==e(W)te4Lzy*1h#Fk z?a*ODJe3-lEn9TaX-sy{;=J@_CFV|)L=#W?vr;oc6G$0fSYye3R1 zTfKj9%Xblx_*Q$AFEa7WJ+0Oq&<=~jVUEx>gp$Fo9JJm~V3L1JN(QGV)sjBp8Q~7g z=e6Q~!@B+Ff^I1(1q`B1r`6XL~&;Y6H{f&unVnkWhfm_ZAN*W#lA9iS;tzwnIj<+#G3x)mOS5M_zs zc$z5hcsnNQM-ccZ25uZHm=TVhr(stuq(2anh;QedW#v)kvO_d8Fx(yaM_G!Wq)k>PO{~kBy#_j?c}FWXXfNwFuaChYf;U#^zaTvhB>>?qk9jxi-9WQMO}4>G);k%8k-@mvoX z<=Z}H>?m+w*8ehI^{b&>c20NPd+)3h-XHOj3Ql*z=@^`v!s+uf&x{!>^4$Ll!fh+> z|CeY$Eo{`bt3A>o#exsOz(YdGmWWe#&O?VscFOzLmJPa~*je3b&6TU`cit5$Ikjr_ zm8dV%Od*`OK_y-P&V z?Lai7LF7n==o9gpzXAPBqE9FK&ex-FS4Zz>K9%T;iT>Q%!OTP$gaQIHJ?BBmZCW+|M!vhIf0Qh0sRBnsbKTV5L?`G72^R%3f4HI9GLbs4X;TXqd) zod6E70E2-{AP?{Y#lT$PMPLoE0oV&11%3utw@?-Z%!v+V6M;C`Q-JZnMBs7YW#B{L zbKo?9s)0X%D3n1*Ko0Z=QUM$AGC)^%%73G)^&3p`#dapiKE@=AI@9Sm;`P*zA(HLz z3*2AN{N}O2Y2;3^#sG<}Ls?=I@Ygz2BE?b7#ce_*Tqnf8^zWl@W?G)rZMS7+I|~XF z^1j(F7aPJ{%+3m#4pXIA=7!zMy!fBM@|go>H0!}U>^_=Eu}u8>0dY$2_WeLUV$Y5&Q_900Z94V@96dqdG~}jN2u+ay@_+TyfE_Z z&o()B|M1oHQR&?mPVtDTX>wG5LuIDY~Uu{l(>!+i(Jy(C9SRLA>jFW^u z+q!4&+Y^;>8;1>gbK8cDCl0(+c;?4HrtbXhNQtbu^vOHgg}pkdZ_e6uL;RkN{Z}1% zF=gJlKXXq1b=bQrynlIGTkA_MY4~e*%J2P1owV=cZ^!&}=yKki@1C9V#;+gFPK}CP z^iZd)rEQ{{yreKJ{-n!y5(|7A?ED^ifr{4dS&Nld`u@eifPAy%)X8&W|9k0B3u=}>nzo@IW zv`cLEnSNxiAI3O_T$(oB(R@Y8ns$#qxv1~)SI-+N)*k48-yS}t`H{PGoad%{ll~fA zwl;M6v(HE#d;8a(-*2o`ZrP?C6n&sWM&yr=6c+xLIW;+I$LvF$epqxNx_If6x@GUZ z8#n0FQN#1UEy{{Ib&tE>pQiFJ!#{cHx3(ulc&F=< z51!&mK6!ZX_%AXt2Oc+$@BK@sqE<<0KLgN`2C~5b6Ixg%%v2W71_7}w9lq%-1E7mq zU=O(Tf=O2(e1L-d$D$oO(SE(~r?|*1a7mHgFvOK2{Ffq~7&ZbeIu2$!AjOfGQiSj! zz_qmXJY7Eog%LR#AmnI(a39ZxBPU6)*T)?X{@enW)Z2!k*IC&(p_fU)w-atoe{Upi zJh;yhsHOgXX+s$_2ajSd8R8F)&v(=K9Ed4bh*9j4Z{}f(I)g(`vQ-Wb%FrnN+UOskHd(3n$QUOpe;4%P9OPrpC7Zh&2cCdLU`0 zK+;eOV!Cm-n}~ZVp$UMKO~QYv5MP`ipRBkW2)Bv2b09oPB8GO83N-eS3Vx}G(~7j5 zLQEOpPW+LljA?~mKiK4~AMz_hEOMASrhQRjpTDySwq_Yh|Ino?PW@<9CCIc(nH);Kn=j=Lf!&WfCDT*7T^Nr!+$kU0Z5*J zyauYsoCo>^pnZx-dT>f#zaE@i{3j)wuI^vo9-IOl#B9zqo26#6PWbCVUmuRK1O~lra^qzi?Z!5kqs7KnC-OLQ=IvQUb`FQ51=QdLKabfRiNJc zLNX-bM;D@PK%3z3B)IJuA03`FyLY(N;S=lwg6uJrWeO`9hc9Rmz{?!umGV2Ra6+MT zQegvrvONV=Ar!!W(bIsm$0|yTX zx@B=gl4AxA4t9ZjRdWhui{>$fQmf15$QP?cnrHP$3#>M~)Cza6*IwZAO1)00!--P! z=GmpO(m?u-{Bdrpd$Kei<>z+Wv%QYVeVeB^>{gFmn(Zv~TC))nA%bGR*CX}#TrQ^@ zK6Yz?GzS?daJub?1J(keVe}O;fIJX?iWbfLNMq{R@FDKxw1G)T04(OXodrlD-y^kp zJobWdj>%G+&z)bGD=kD+6NwE_R-!BhJhj`;CjabA){M9F5^ZUzr z^7j>5$AL|>oO%jrp55vaxkWs3%}w$+DL*KnP;d3&)He+0@!D<@PDSBdKD4%p`EIYz z>Zq?Es!1UM;tPG^24z3iS!gfH_x3}>fg$x$7VG$uX(?QNzMU?6A@u`~6XjsDPt4B_ zqV<=Ny~u@rgBC+26Wlw&hfF9RA5!$w6rkDVd-L3O^hC6R361G*TrU1VHmlbPc3X&5 z9@H&`PVcrq+2*DMM2`tF0^3AlJm3O zPLDIkD;=IMt{c*<&>;B$-`u5{wa)nZ**6>=L-e5GDEiwIL$b8_?Y$4_t+6gpiGxjkOr#7RYyr#w7$+Vn>-1H&B2>5fNJ25Z@N z52nZkm=k3SvrIc?NPRJra^T0{mJJ^!%$O5cAI1mSWlW9HF&-}DPjh&BB8(GU?Dx~i zUw2hZ4@rr^UGdec17Zex{K-1q33jU&9Ww>871aiU2jWu)$0sS|6fzofG@ro7eRRvB z3w;g;tWc|M$}mt$SXfimG*l8EA0OX@E)|ElJrPRzl#JUVn1D#c0x7CEx= zvT!k0jlLpLjN5IUj6lI|_2d}brO`~9KG|h&6iJpa#7I3}be3!g13}>A`mAo-y)3K1 zT4>FMjFPAPKzq~pY?IN$z>;75+90j` z!zc}mR6HyzKvO^JV1yNYv+Q{Rw*M(hL9{nx>6-Eg;wh*kz}Ge9RzC*_Cd_gC-Qo-Kr{OeE z=fTB>_TwMYZTX)1A}X-DP!55%bu%UcG}mQ-@?O{8ug^f12U7^ETP$)KV(KIEw@Z7D zm8OlsIjAqHy7+}EyIy#a`3A9Op(un(ApRQkS$}6GcQ5+4Ge_iMB29BpXA{Q>wNH*& z{+2-YF&Gf00zCnP!N^P|BkKWsKcEkAKhO)9Iu$fMVNw`iIuH$c+#4o>FbsVR!RZ)X zJi{YA(8tt^Aqcyl>;(L~A2+=OKgKXw62t~>8MV_c2yXM6~G2yJ+KB?4J-$i0M7%9fd#;PU@kBRm<1FAQ-LDD3%CFWkO$a+EFcre0MdaJ zAPGnW;s6U^0C+$Na6oS$8t4c}fC%7n6XXdv3~UFM1G4}d5C?Pz7;qvSc>$IHML;Hy z1SA3$fCHj{aG*8}D{jDEU==V6$OM!?1aKB*wi8$m6ah&92T+;fq1r!T7=gz(=cF_m zpztCA?!!EGw>Vf1tbdTCi3a?VQ1LN%4x5Nae3#E9xQX{-G%Oi2AB<`JokcNhSXz84 zUWLacB~gvvx~K%C*ZiU}Cli0y`d#aih#A_=ezVxMzlQWPSp6@A{k>ms3^Q5%FBEGi zf9DqnFTK?WuBm@1%ln^h0UgAYI2uyNDo ziY;5WZU1=3Cp&lT-m~}9efuj99Q^F_FTOl<_{h<(j(z>jw^iSLfBeJ`Cx5Iyb^6TN zpME}9^UL{PFZ_1#Qtj`5{COE)#rQ8jFyHur_-{Qh|8M92e>?sEa{2$W7Zx}67hYKW zZ|6TTQCCo)qqiiC*>LriCgYNlWil?7oZQc5>jw+26zutl0kB?x_tL_$0>i3AogIr5 zPIAV21zxd>1X#ZCc`$#)N`?>z7B%b?7nV5kX;O;Sj_f>`Som<`X^+m8@Ax7}U znv7^-B?e&`!ZFY@&@s?3_*1m3X>swR#WRZWf+p{?NVuWINO_P_G7ZGt=k;^s7!98}!;331(yTb*#62kxg+&{@c%(t;#6NTWZX>nBy6cUWFy3Fi?%t=o7gv=p6ugmAnq&FsZ_gI_5k(nx3<$YbYao2EQ!JHZT z8v%D(=UI*W3g8%EgD!>O2fBbZ32APUn+2e-ZQw^dL;%5lweW+Ja8cL@#MK7i{BZ`t z5kcc{(TGzB*vKy_zz^Ih&CH@&UjpA93`&E87@+UgFg82##Lw*^c zI~EiV7uZ0a36?IaPN9F!@#l z@fb`?enh(jwB)|hA4cdK|0GOhQ2bJ;EC$CLum|F2Kh^V+^iOEHAljmTLYoytyZk1! z#7`IK3y@g_Iw5~BBif66QyU>aDho16cBlF218pSOF9PfELa-oxX{`XDgG;0)o>E4sU@zWhM~pU)hMi=XQwxnJ{yJK)nX%BNjR$Nq~hS z@?X7nG6|v*@)|G$e$*ETy`jTP{gT?C0d{grf(fJUA~(7M={7Fkal1tR4kEp;fB;=^ zJ_qh$l4Kw_o?!mJhu=xRKZBkN(Om`~#8*Ve`o2N(i~Iulp}w)WvSGZz=@RXM&+2)q z3bF^MPjpXzQBU_$kUf}g#~~)!4G?`GpTYiZ4>L&zAlSb#KffQjx&LnH*WN6ApRaH3 zKl`_a{*Bwy*Wsdk4e;N%KksQ;uiLu__5fYue9XW5=JAa2>j>W{{JyRY!_W1%Ria-W z9U@r?1eZhOd{p*o=)W^4JcYCNY3ScL{9ai@|Hk{(~i9P)me9K|wk+2Aw{yhrJYVq2&|2UnmU08c73+ zf`E&k;t>{$2U@Q^0lIA?pxY6P^=Nydwb16Uvw>kLK6kF2!sC365pFEX5*f=2qX%EX z%I*mV4?dSb6NAuptDEeCS`7A6hQwph%_T&U;8&Q#{4PArVaI!nlf(@-R#FUm8p9B>Yf#9jIRIg)L;Uq-OhJ=DLZ8B7)gi?+1P&!n;Y-wns z-RcseXWtU%3D8ub*aky02r(Xkt|{~*Vo^-cK6IpkX+abATxgQrI?;ZO`vgjfVjc;_ zv!InN#-@ai$hX;Jv411onM`_N{U@U`-xO-j2W8AcZ@QqjG0=v!)j)ls%98R6?J?|k za!GdDd=7s-f;TCpMeA!ZHXGJb@s>+TWd%o3t5rpJbvmvUp#v!=SaqIYw+$@Jb_+TS zcm}7|6;xjvg6Z&*DnQpKJUyUQR;PRPS`haEM^pH)LZ~XDsoCNKD!V9dB+b~J)UIym zeIRt8C(aJt&RkTeU$5u|p?<`sFfuIFn(wjK#ftN8g?jbc{7su(s4pd|VXDIz#$FQQ z5PJmP!3cM8wD#b#n2OU!Pp6WVHw9io_o_KZZBRxA-Kv?X1XPz(zX304=oNYugY2z(9-q0GnEYwL-r zd1BaRqQ2IHJ#d2%BiNSfhXCj4VMBd(_v942ThJSZBCC)AG>aVKIXypnfs)9O=HXj$0ai{9ht>g%51z>hAD-)8h%+b@cs?<`LJ6a z10859LCfHlMF1@aQ#uUvfHWO`Fz3UpOoN*d;b5N+HwyteE|wl}*TTe0<*bEB7j{mE zSKPo7C`m~H7rr<0Ipkx>0E7qd`53&sLmr5C zN*{dG^aedC_fY;|R-zo1z-s|z%RfR07@sUGtdiA00tlt7!KqBlYnW!T;LzT3Scd;4fqT=3H%0x%McfE7tk5# z1*ictkOGVX#sTwy7l1c`bwCC1IdB~K6}SvU$g#H-xED|Y1AuYBBw#l14Dd4WF0c{U z4SWrp1TF$C71)alsDOb$29OOD0*?Ss0!xASfjz)6;3RMX2vZ_F&#Qs5#=1j$ttYz|nhy6tPwjr_xAlQWbU$Gym=Zg| z)J%hBPy502&~<~p95XWu_7C>Q9GSGA6R@i>kqyKi#s{Duoea(BAuI&~AeE)DbO@T^ z*man}9%LigDC|)j4PCmiEDO8R#zEKGhP`mP(6Y$K$9^V2_qhN%&`$OccKCU)H_(Tj zZj&H2Cu67F!_dQ<1|7UdSTVF@W-<=D)$G`}H!yW{@_!@N+M^&_m11#$u%>@gWb`^OC&Ftq>J5hF#%6zoK5m`_lO zX$sB*QexsCprXO}*O*O;rrxV@$u#tBzx5LK=D$sMdaVwB^hhL5*n~s#l7f6M zjKV^+K1|YuJjc6iu;!ytk-vw`!OD%=O+nH*~cw{S)mq~c7rle#M13Av85dy!cWqsA*TP{&nrLaI=mF%E3E z@rd)ofZG6iV8s%DLTZAre=a^gC3Q$L-HY`HODgtMcqwv<5OK+*%_>O$8wk3e*(P?HcFN1&J%E`}V!8i1B!sij4h-1NznnExw-BbMs@mfbm?WB=AwN8J_Br;^4 zcKgsXy3hdxH)_@|XO3H!QR|Oi;QK)fxV(^gxt=b+P9J+NpRK)EMg>8nwoH4=V1U<|uf? z=Hx5PTK8#5P#-i%6G}Mhjv8`70&vzZRZ@j-m^=ULS1S z*TkIG=a0CiaKYTueHa{sesmRIN`n3KDl4jr(w2( zSp+j2=46-`eh-mMfq4SvWtdeksnRN8l6+_j1Y|)VFEqCzo|*tHfTjTD={6t=pnQ@^ zZe&tE$uANJ_))wRmdsWFr9tIDZd49b1_W{^{>dFnj>3J6{~k++!hH%%3WFs)feuTH zf{CSHA^rzpQrZr`djU)--~y=Z+yL=P`5=CZ0pfXv-<%1P{7V4xp9K&_?xQV zu@`l^$XQ%esG##5>!HG$5tyeT zeWE9m>YC%WRH~_lLZ-+?!4k{V;UIJ(~!aRz2qHG4A&5Bz_<`Q;zyYKF;pAEK1YhGOIx_{-HAHR@qsT}=Rj~_ZbF{J&O63au+99kILvPt=U zZ@*~yee;sIpJv=KZ^q0IESn8qyt4o5z|KWmKeIS@RLwnAylcRRPp^#GFnhwVd$r}4 zTvb#1Z}|F&Z+?H_&ok3s9~!&#f={`Hd|hKKi~0olZ~23&zKd)4gIJ5@Wq17U;b#``qy9ktg~*P zwD*k@=6*?|zDwS|X~DviyUb5*Pt*J2K5etO{t|%r!3BL({Fg%P zki6kV@dF!uZICWHT?;z3*Kwz3=Dh2;H-peBhF{K$NHyh=*<} z>7~-0n1=v&80#^UsgG+o;;PRZ#i7EePAB1W0yvzDkGU5{s}RIaD?857a~x9ln#|kL;A+0bG@>OLs}td%~qro;HtjG zVV9cF+tT4nZNUTH={r01b=E9mb-1DKQ2U|+N1?~q6*@OM50nTCte!qN2Uk3#nogb9 zSv>`PC(63w;Qqq=94ILb#|9B-tr@$@`f^=OEt*TE1{|B}@zQ=4>EDY@A%;Upk3AcQ z>U$>(@z5i;q3)>g6zoTW23xM(Q|B4%9bbf?q&_Do1xp>I8f@%p^$aYW=$v48ca{3` zW3uVsX=B$MtHWdOYBKbzi@Raqy7+@Au1Vd{uK}-yes!5fa6`X9d74sUQexub@QH*B zC_f99f9HD=_|zVw6dx;ADpx62E7vI3D>o=Bl-rd%m3x(GYOA_P-CEa0m!i{|(oNG$ zFPq*n9WniBy2I==&otMV5m+jo@5*zdxpM9U?ksno%qCkT`#^S={C@c;`LpsB@~!eF ziiM(JKtF?g)|6^m@`L%O_|N%t?Ks_5-5vTd`j_>q4PP2Ujs1<(yiL6GOCN!PR(*n2yf%J^Kshk+BUjbx;FZCh7+bWW*VGm#Aw4QWlq_vGMjvj z{G9xLg-!92;&Vl+a)B~V^|`9MdX3t~&(eOc?T@hZk~srmmMPXK9#aia-==*UoVbiH z7}pth7!Mi`8GD+HrZm%N(?h0*P4i68npT-AOb1QJOf{xIOt+iwHuo}X%og()bGCVr z`33XK<~`=a=C94H7~i}?yti|AaUHn_xCgm0oSmD=&E;O=-se8ze&McgVY2&WT3N1a zqHK<=T((5ELUvBpOx|9ukjKica-V#y{1Pg&QQLld<%8uQhG^s0x8_7ma2QHm1>eV*Q-cj=$hf299Oe?ecXzl<#w;f4r9ltE$` zX~;6z40#5Jp^0&m@k`@Zw6AIj-ao*I<80gu+}m7~ti7z8Of9p^7Rz3gy&`*0_KEC} zte1SgT!S)RtawrJwqlRMjrMlC>VWD~bx%!SO{`|HX09ex`;m64uBE<>zOUY>AEY0y z&(Rm?r|ReE7wSLI@6jL8{|tUQ8HR$3d_%cmgW+StAmhu%p{DaDFt8eXU}2o+e&-66 z$CWKrZB;!~{Z)feTTay!Rk5nQdb#>d^?T~|>Pq!#bu&#DO`_&O%^1{{PcudHm}Z{l zMa>G$yPAWVW11-bUF~M=Xq3}(-J7}tx+jR6^(K8BIDAt7tbT?5 zU2wNWze|5We^h^5e@_3WKElw-(818v(957O7z~398HSC9t%lY{sj;t7ZyanKWt?VQ zYrJ6m-FVd)W@=_?VQOu<%XE*ai>arnw}~^UO*)gs6lWS_8f?ln%{0AedeHn7+WjH4 z`{U+QW@<1bSC(-rxp%pfXz5L5QLdCfh8O_Xv4U)oJvTChFGePU;?Ni#lGNtWHypRA;Gk)dgxFTJ#Kc zsro7Pi|S?SmFl7uQrD{gQb%Z7XxeG+(e%>r8k6P$%>>OunsUu+ zn%}S`=zdu&f5F5a;;H2 zP&-&VMw_k8*E+ScwR5!#wQIE>YG2h|(zVr3(3j}f=r`-NhE&7DhGN4a!)e21Ly|Go z=r+D){Lt9U)Yg3A0W#v zDwwjVGD_KADOL7TrYpxO^OR-Er<89fH!D9@?o)oJY@&Kj^&x8KQnjg5E^P&7B_+OaHZTUTqxSw3E5>?8?>-F@)zU<7{3lGjwvoE z?okd^7AyZ!N!9nO2diIDf2~14yxpSmRC7x0L)tmoKXp<11bv!*H0sE!pN<~5QU8g) zN`G4am%a;nTe)G0L1OG<^clay<}jaWhG_xHaEob|>42%)6k@)|+|%6Ktirdm2AW;w zXU(shKQ%LHh#-fb;x=%%$Z3GI*drJ7gx+J<38ppAr;!nV$s&d z%cjWY%AS<{B>P>~MDeZSE9I}syHxk`6SP0;Izf{4Hl~?Jm`9n%VvNl-Pr%$`BHHnf z*i;vS`7+Lo$ESzP+(G40&Gbn553t{K8AoPNMbQjnT&5M$V`-@7(`p4-e_*DS@Wm~B)jb}A~-rkFB9d7tuewD-fxZagmVs!Elh9;$YzJ(!^TIq)CM(LL5R_Iot=GW^s z>U!%{dcFQ2+U-gGMT{D)4ebrlhQ0=)Ar@oYNQ`lXh9bkGh8?JNW_%A4r^0AJf2uI; zHT6N;O*21a#=9&kBUgwp$6CZ)=2pupWfk&M^8SiSibqILfsQE=B^idsy2=w@3G-?qU5Y{T0J)#*W4$V+6*c&X|u4HH|PG#T+X{SnF@abwvxv z;GRai+Jrh*%Hn0kvga{YgvvR&Nj^aS80MjW$|Dqt%3bxp`c)>;>8DkaYVLHHuJ3(4Iw*TdLO?EQaq5)rMNbV&mJ! zR8yikh1yYN2=>k5WEk!TZn|uitf#!U+#o+D{}r>+)rw;EBK7y$liJhTpS9<;7qx$A zuV_PcO?Az6Ep>P6E@I|(kA9&3HT|c0R)upF5zisjOwAmO&QEKe)2zb$t^@L?!kjk? z68d9|rX7rfFcVsATxNXLxQfcLCWIY>F$dCWzH9+z?8`AuRAHp3mYv1irp-xn(dmMn!TDz^yR~t0aj^FXsR`5H8q+Gnp(`B7$43@@KL;k zZ^O6aJMvPDl+k=|p5v7mBcJD&VAin`vyL@r+e{m-jnGD6q?)UpuU(*BEWA1i6`ofT zHA$KjO}ZvSld1Wi*k@acGB$mFx|l$Xalco*;Gi}S#@GjX`69>`6kKAbGtVwOoT*4M!bvD2+_yeGY1G4W5^e@hA9d%yGg|e^RXllA~C= zL|cJpD5jI@ERa~mkm4J36}n@(Dr`WH&`0UJ>!UG>XX4q(rC*|7sb8hvuHUIYp|950 z;E9EvpP~#>^tdEEJ9!Or4f74F466;57|SIX2~&(N<5cv5^~S?^Ca5*GGx4SjQ;})0 zX}#&Nsn*oS+|H~t^X3e5k$IMRiMhgDMSWE&zE5VHlrwM^4o8j%b0o&K;i7S$!L34V z9fN#nr|qa!Vm6YlbzwfT+OWp39?woVo5C1nYy+v^9pkYQV{shhf4VW#XfryDUT`$a zIM=wq_`GpB`sNzr2I`+F_$D`uVr3CV$Qo?Km!LM{Pz&km40R^zA`fHcYPD3;T_|-< zqr@y-EPHDAfzk3`-xoQazfSwkBO!F_x>W+VO5j!r+$w=vC2*?*Zk52T61Y_Yw@Tnv K3H%R~!2bjNovdI0 literal 0 HcmV?d00001 diff --git a/EpdBaseClr/dll2/Reader2.exp b/EpdBaseClr/dll2/save/Reader2.exp similarity index 100% rename from EpdBaseClr/dll2/Reader2.exp rename to EpdBaseClr/dll2/save/Reader2.exp diff --git a/EpdBaseClr/dll2/save/Reader2.lib0 b/EpdBaseClr/dll2/save/Reader2.lib0 new file mode 100644 index 0000000000000000000000000000000000000000..3e4941f33f903d4f2b5240eb1829f21b00219429 GIT binary patch literal 31998 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 literal 0 HcmV?d00001 diff --git a/EpdBaseClr/dll2/save/ex15.mif1 b/EpdBaseClr/dll2/save/ex15.mif1 new file mode 100644 index 0000000..2cc2b02 --- /dev/null +++ b/EpdBaseClr/dll2/save/ex15.mif1 @@ -0,0 +1,1374 @@ +/****************************************************************************** + * + * Module Name : 32 Bit Ex15 Interface DLL + * + * Module Part No. : 611/TA/40571/000 + * + * File Name : EX15.MIF + * + * File Description : Top level functions exported by the DLL. + * + * Authors: : K Ferguson + * + ****************************************************************************** + * + * This is an unpublished work, the copyright of which vests in Siemens + * plc. All rights reserved. + * + * The information contained herein is the property of Siemens plc and is + * supplied without liability for errors or omissions and no part may be + * reproduced, used or disclosed except as authorised by contract or other + * written permission. The copyright and the foregoing restriction on + * reproduction, use and disclosure extends to all the media in which this + * information may be embodied. + * + ****************************************************************************** + ****************************************************************************** + * + * MODIFICATION HISTORY + * ==================== + * + * Mod Date Inits PR Description + * --- ---- ----- --- ----------- + * AA 11/07/97 KLF - Initial version. + * AB 18/07/97 JMS - Modified to use AWP protocol. + * AC 23/07/97 JMS - Moved error source & code values from THREAD.LIF as + * they are used by external modules. + * AD 05/08/97 JMS - Added SetTimeouts() function to allow the user + * to set the comms. timeouts. + * AE 05/08/97 JMS - Clarified Discover() parameter names. + * AF 07/08/97 JMS - Seperated SetAutoCommit() from OpenDevice() + * function and added Port parameter to OpenDevice(). + * Removed now redundant TestCounts parameter from + * the ReadConfig() and WriteConfig() functions. + * AG 08/08/97 JMS - Added Connect() function. + * AH 11/08/97 JMS - Extended some of the error reporting. + * AI 12/08/97 JMS - Revamped timeouts to timeout at message/frame-level + * rather than at lower comms. levels. + * AH 15/08/97 JMS - Extended error reporting. + * Added SetDiscoveryTimeslotPeriod() function. + * AI 26/08/97 JMS - Added Transmit() and Receive() functions to allow + * lower-level calls (eg. from EXCOMM) to bypass some + * of the message layer functionality. + * AJ 27/08/97 JMS - Fixed a typo from the previous changes. + * AK 29/08/97 JMS - Added extra tests and error codes for frame buffer + * overflow and retries exceed conditions. + * AL 02/01/97 JMS - Added FlushDiscoveryCache() function to allow the + * cache to be flushed by the application. + * AM 02/10/97 JMS - Added FlushBuffers() function to allow the Tx and + * Rx buffers to be flushed by the application. + * AN 14/10/97 JMS - Corrected the type of the Hp07Dose parameter of the + * WriteAlarmDoseThresholds() function from WORD to + * DWORD. + * AO 16/10/97 JMS - Added part number, function headers, etc. following + * review. + * AP 17/10/97 JMS - Added SetRetryCounts() to allow the retry counts + * to be set by the application. + * AQ 22/10/97 JMS - Removed now redundant error codes (ERR_*). + * AR 24/10/97 JMS - Added part number for Developer's Guide doc. + * AS 02/12/97 KLF - Various corrections after testing on version 1A. + * BA 11/05/99 JMS - Changed timestamps and timeouts to use instances + * of the Timex class rather than TickCount times, as + * TickCount times will wrap-around after 49.7 days + * of continuous up-time. Changed the timeout periods + * to be long types rather than DWORD to match the + * Timex convention. + * BB 04/02/00 EMH - Added WriteDisplayControlBits and WriteDisplayEnables + * BC 30/01/01 JMP - ERR_INVALID_ALARM_SETTINGS added + * BD 30/01/01 JMP - ERR_INVALID_NUMBER_OF_ALARMS added + * BE 08/02/01 JMP - ERR_INVALID_CONFIGURATION_LENGTH added + * ERR_INVALID_DISPLAY_CONTROL added + * BF 21/02/01 JMP - ERR_SCRATCH_OFFSET_PLUS_LEN added + * BG 15/08/02 JMP - Added new ANALOG2 commands + * BH 04/10/02 JMP - Modified Analog2 interface + * BI 02/06/03 PEB - Modified for compatibility with Microsoft Embedded Tools + * & PDA version of DLL + ******************************************************************************/ + +/* + * + * IMPORTANT NOTE TO DEVELOPERS + * + * When using the DLL and not using the AutoCommit feature - that is to say + * functions are combined and processed upon a call to Commit - the following + * should be noted. + * + * 1) + * Data will not be assigned to pointers passed into functions until AFTER + * the Commit function has been called successfully. Developers should take + * care that the areas of memory that are referenced by the pointers remain + * valid until after the Commit function is called. + * + * 2) + * Functions are processed in the order that they are called. Should a call + * to the Commit function fail then the error information can be retrieved + * using the GetErrorDetails function. If the error information indicates + * that one of the combined functions failed, then the developer should assume + * that all the functions called BEFORE the one that failed, have been + * completed successfully. All the functions AFTER and INCLUDING the function + * which failed will NOT have been completed. The exception to this is Read + * functions which will NOT be completed in the conditions described above + * even if they were called BEFORE the function which failed. + * + */ + +/*============================================================================*/ + +#define SRC_NONE 0 // no error occured +#define SRC_INT 1 // internal error +#define SRC_DLL 2 // DLL logical error +#define SRC_EX15 3 // error from Ex15 + +#define ERR_NONE 0 // No error code (internal error) +#define ERR_MSG 1 // Message not expected +#define ERR_SHORT 2 // Message too short +#define ERR_LENGTH 3 // Message data length not correct +#define ERR_QUEUE 4 // Message queue overflow +#define ERR_OVER 5 // Message buffer overflow +#define ERR_PARAM 6 // Parameter error +#define ERR_MEMORY 7 // Memory allocation failed +#define ERR_NO_THREAD 8 // No thread object available +#define ERR_NO_MSG 9 // No message layer available +#define ERR_DEVICE_OPEN 10 // A device is already open +#define ERR_AWP_USER_BUFF_TOO_SMALL 11 // AWP user supplied buffer too small +#define ERR_AWP_TX_MSG_BUFF_OVERFLOW 12 // AWP message too big for buffer +#define ERR_AWP_SEQ_MISMATCH 13 // AWP sequence number mismatch +#define ERR_DISCOVERY_IN_PROGRESS 14 // Discovery in progress +#define ERR_MSG_OPEN_FAILED 15 // Message layer Open failed +#define ERR_MSG_NOT_ACTIVE 16 // Message layer not active +#define ERR_LINK_OPEN_FAILED 17 // Link layer Open failed +#define ERR_INVALID_FRAME 18 // Link layer invalid frame +#define ERR_FRAME_TX_TIMEOUT 19 // Link layer frame Tx timeout +#define ERR_OPEN_PORT_FAILED 20 // Link open device port failed +#define ERR_CLOSE_PORT_FAILED 21 // Link close device port failed +#define ERR_SET_PORT_TIMEOUTS_FAILED 22 // Link set port timeouts failed +#define ERR_FRAME_RX_BUFF_OVERFLOW 23 // Frame Rx buffer overflowed +#define ERR_FRAME_TX_RETRIES_EXCEEDED 24 // Frame Tx retry count exceeded +#define ERR_FRAME_RX_RETRIES_EXCEEDED 25 // Frame Rx retry count exceeded +#define ERR_FRAME_RX_RESULT_UNKNOWN 26 // Frame Receive() result unknown +#define ERR_INDEX_TOO_LARGE 27 // index greater than profile entries +#define ERR_INVALID_ALARM_SETTINGS 28 // This EPD may NOT have alarms 'off' +#define ERR_INVALID_NUMBER_OF_ALARMS 29 // Passed Alarm array is incorrect size. +#define ERR_INVALID_CONFIGURATION_LENGTH 30 // Passed Display Configuration is incorrect size. +#define ERR_INVALID_DISPLAY_CONTROL 31 // This EPD may NOT have Display Units Changed. +#define ERR_SCRATCH_OFFSET_PLUS_LEN 32 // This area of scratchpad may not be written. + +/*============================================================================*/ + +#ifdef __BORLANDC__ + #define EPDDLL_API _export +#else //assume microsoft + #ifdef EPDDLL_EXPORTS + #define EPDDLL_API __declspec(dllexport) + #else + #define EPDDLL_API __declspec(dllimport) + #endif +#endif + +#ifdef _WIN32_WCE //Windows CE / pocket PC +#define PDA_BUILD +#endif + +extern "C" +{ + +#ifndef PDA_BUILD //Only included on Desktop DLLs +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +EPDDLL_API void* WINAPI AllocateMemory( DWORD Size ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MemoryAllocated( void* const Address ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReleaseMemory( void* const Address ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadMemory( + + void* const Address, WORD Offset, WORD Size, DWORD* const Value ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteMemory( + + void* const Address, WORD Offset, WORD Size, DWORD* const Value ); + +#endif //PDA BUILD + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI GetErrorDetails( + + WORD* const Source, WORD* const Reason, WORD* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI GetDataMetric( WORD MetricNumber, WORD* const Metric ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI InitComms( + + WORD Port, DWORD Baud, WORD Data, WORD Parity, WORD Stop ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI DeinitComms( WORD Port ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI Abort( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetTimeouts( WORD Port, long RxByteTimeout, + long RxMessageTimeout, long TxMessageTimeout ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetDiscoveryExpirationPeriod( WORD Port, + long ExpirationPeriod ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetDiscoveryTimeslotPeriod( WORD Port, long TimeslotPeriod ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetDiscoveryTimeslotCount( WORD Port, WORD TimeslotCount ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI FlushDiscoveryCache( WORD Port ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI Discover( WORD Port, DWORD* DeviceIDs, WORD MaxDevices, + WORD* const Count ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetRetryCounts( WORD RxRetryCount, WORD TxRetryCount ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetAutoCommit( WORD AutoCommit ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI OpenDevice( WORD Port, DWORD DeviceID ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI CloseDevice( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI FlushBuffers( WORD Port ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI Connect( DWORD DeviceID ); + +#define ALLOW_LOW_LEVEL +#ifdef ALLOW_LOW_LEVEL +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI Transmit( BYTE* TxBuffer, DWORD TxLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI Receive( BYTE* RxBuffer, DWORD* RxLength ); +#endif /* ALLOW_LOW_LEVEL */ + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI Commit( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadCommsStats( + + WORD* const XBOFSeen, + WORD* const TotalTxFrames, + WORD* const TotalRxFrames, + WORD* const GoodRxFrames, + WORD* const BadRxFrames, + WORD* const TotalWakeups, + WORD* const RxErrors ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI EpdOn( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI EpdOff( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadEpdID( + + DWORD* const EpdID, + WORD* const HardVersion, + WORD* const SoftVersion, + WORD* const FunctionFlags ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadEpdStatus( + + DWORD* const EpdClock, + DWORD* const RealTime, + WORD* const IssueCount, + DWORD* const OffTime, + WORD* const OperatingStatus, + WORD* const ErrorStatus, + WORD* const AlarmsStatus, + WORD* const OtherAlarms, + WORD* const EEPROMBadSectors ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI TestDetectors( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadWearerID( BYTE* const WearerID, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadWearerName( BYTE* const WearerName, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadWearer( + + BYTE* const WearerID, WORD IDLength, + BYTE* const WearerName, WORD NameLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI IssueEpd( BYTE* const WearerID, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI DeIssueEpd( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteWearerName( BYTE* const WearerName, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI BaseLineCounts( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetFailFlag( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearFailFlag( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearLatchedAlarms( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearFaultFlags( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadDosesQuality( + + DWORD* const Hp10Dose, DWORD* const Hp07Dose, + DWORD* const Hp10Total, DWORD* const Hp07Total, + WORD* const Knocks, WORD* const Resets, WORD* const QualityData ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadCounts( + + DWORD* const D1, DWORD* const D2, + DWORD* const D3, DWORD* const D4, DWORD* const EpdClock ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadPeaks( + + DWORD* const Hp10Peak, DWORD* const Hp07Peak, + DWORD* const Hp10Time, DWORD* const Hp07Time ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadRates( DWORD* const Hp10Rate, DWORD* const Hp07Rate ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadBaseCounts( + + DWORD* const D1, DWORD* const D2, + DWORD* const D3, DWORD* const D4, DWORD* const EpdClock ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadCalibrationData( + + WORD* const K1, WORD* const K2, WORD* const K3, + WORD* const K4, WORD* const K5, WORD* const K6, + WORD* const SG, WORD* const BC, WORD* const FB, WORD* const HG ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadAlarmDoseThresholds( + + DWORD* const Hp10Dose1, DWORD* const Hp10Dose2, DWORD* const Hp07Dose ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadAlarmRateThresholds( + + DWORD* const Hp10Rate1On, DWORD* const Hp10Rate2On, DWORD* const Hp07RateOn, + DWORD* const Hp10Rate1Off, DWORD* const Hp10Rate2Off, DWORD* const Hp07RateOff ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI DisplayFaultCode( WORD FaultCode ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSReadData( + + DWORD* const Hp10Dose, DWORD* const Hp07Dose, + WORD* const Knocks, WORD* const Resets, WORD* const QualityData, + DWORD* const Hp10Peak, DWORD* const Hp07Peak, + DWORD* const Hp10Time, DWORD* const Hp07Time ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadProfileControl( + + WORD* const Interval, DWORD* const TimeToNext ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadDoseProfile( WORD* const ProfileEntries ); + +WORD EPDDLL_API WINAPI ReadDoseProfileSince( + + DWORD EpdClock, WORD* const ProfileEntries ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadDoseProfileCache( + + WORD Index, + DWORD* const EpdClock, WORD* const Interval, + DWORD* const Hp10Dose, DWORD* const Hp07Dose ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadConfig( + + WORD* const CountDownTime, + DWORD* const ReturnTime, + WORD* const ChirpRate, + WORD* const TeleBaudSetting, + WORD* const SelfTestInterval, + WORD* const BatteryLoadTestInt, + WORD* const GeneralControl, + WORD* const CommsTimeout, + WORD* const InhibitTimeout, + WORD* const MinTxInterval, + WORD* const MaxTxIntervals, + WORD* const RandomiseWindow, + WORD* const DoseIncThresh ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadAlarmConfig( + + BYTE* const Config, WORD ConfigLength, + BYTE* const Duration, WORD DurationLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadDisplayConfig( + + WORD* const Control, + WORD* const LongSwitchTime, + WORD* const DoubleClickTime, + WORD* const DisplayDefaultTime, + WORD* const Default, + BYTE* const Config, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadErrorStore( + + DWORD* const ErrorTime, WORD TimeLength, + BYTE* const ErrorCode, WORD CodeLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadSpecialWriteTimes( DWORD* const WriteTimes, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadSpecialDoseStore( + + WORD Index, WORD Count, + DWORD* const Hp10Dose, WORD Hp10Length, + DWORD* const Hp07Dose, WORD Hp07Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearErrorStore( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearDose( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteDose( DWORD Hp10Dose, DWORD Hp07Dose ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteCountdownTimer( WORD wCountDownTime, WORD wStartNow ); + +/*----------------------------------------------------------------------------* + * + * This function (WriteCountdownTimer) was written after the Developers Guide + * to the Ex15 Interface DLL (611/HB/40571/000) + * The first parameter wdCountDownTime is the count down time in seconds + * The second param byStartNow is a boolean to start the timer now + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearTotalDose( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteTotalDose( DWORD Hp10Total, DWORD Hp07Total ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearPeakRates( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteReturnForReadTime( DWORD ReturnTime ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteAlarmDoseThresholds( + + DWORD Hp10Dose1, DWORD Hp10Dose2, DWORD Hp07Dose ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteAlarmRateThresholds( + + DWORD Hp10Rate1On, DWORD Hp10Rate2On, DWORD Hp07RateOn, + DWORD Hp10Rate1Off, DWORD Hp10Rate2Off, DWORD Hp07RateOff ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteAlarmConfig( + + BYTE* const Config, WORD ConfigLength, + BYTE* const Duration, WORD DurationLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteDisplayConfig( + WORD Control, + WORD LongSwitchTime, + WORD DoubleClickTime, + WORD DisplayDefaultTime, + WORD Default, BYTE* const Config, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteDisplayControlBits( WORD DisplayControlBits ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + + WORD EPDDLL_API WINAPI WriteDisplayEnables( + WORD Default, BYTE* const Config, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + + WORD EPDDLL_API WINAPI WriteConfig( + + WORD CountDownTime, + DWORD ReturnTime, + WORD ChirpRate, + WORD TeleBaudSetting, + WORD SelfTestInterval, + WORD BatteryLoadTestInt, + WORD GeneralControl, + WORD CommsTimeout, + WORD InhibitTimeout, + WORD MinTxInterval, + WORD MaxTxIntervals, + WORD RandomiseWindow, + WORD DoseIncThresh ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteProfileControl( WORD Interval, DWORD TimeToNext ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteSpecialWriteTimes( + + DWORD* const WriteTimes, WORD Time ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI EndSession( WORD AlarmCtrl, WORD Duration ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadScratchPad( + + WORD Offset, WORD Length, void* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteScratchPad( + + WORD Offset, WORD Length, void* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteChirpRate( WORD ChirpRate ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadRAM( + + WORD Offset, WORD Length , void* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadASIC( WORD Register, WORD* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadDirectEEPROM( + + WORD Offset, WORD Length, void* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSLogin( DWORD Password ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSClearWearer( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSReadWearer( + + BYTE* const WearerID, WORD IDLength, + BYTE* const WearerName, WORD NameLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSIssue( + + BYTE* const WearerID, WORD IDLength, + BYTE* const WearerName, WORD NameLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSDeIssue( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSClearData( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSWritePassword( DWORD Password ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSSetOffEnable( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSClearOffEnable( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRLogin( DWORD Password ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWriteCalFactors( + + WORD K1, WORD K2, WORD K3, WORD K4, WORD K5, WORD K6 ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWriteDetectorThresholds( + + WORD SG, WORD BC, WORD FB, WORD HG ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWriteRAM( + + WORD Offset, WORD Length, void* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWriteDirectEEPROM( + + WORD Offset, WORD Length, void* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRResetEpd( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRFormatEEPROM( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWriteASIC( WORD Register, WORD Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRSetAlwaysCount( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRClearAlwaysCount( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRSetGolden( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRClearGolden( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWriteEpdID( + + DWORD EpdID, + WORD HardVersion, + WORD SoftVersion, + WORD FunctionFlags ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWritePassword( DWORD Password ); + + + +//additional commands for ANALOG2 +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadA2Config( + BYTE* const byADC_LA, + BYTE* const byADC_LL, + BYTE* const byADC_SUPPLY, + BYTE* const byADC_BAT_TYPE, + WORD* const wOffDisplay, + BYTE* const byConfig7, + BYTE* const byConfig8); +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadA2ConfigStatus( + BYTE* const byBatADC, + BYTE* const bySupplyADC, + BYTE* const byStatus3, + BYTE* const byStatus4); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteA2Config( + BYTE byADC_LA, + BYTE byADC_LL, + BYTE byADC_SUPPLY, + BYTE byADC_BAT_TYPE, + WORD wOffDisplay, + BYTE byConfig7, + BYTE byConfig8 ); + + /*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI TestBattery( void ); + + + +} diff --git a/EpdBaseClr/dll2/save/reader2.h b/EpdBaseClr/dll2/save/reader2.h new file mode 100644 index 0000000..2cc2b02 --- /dev/null +++ b/EpdBaseClr/dll2/save/reader2.h @@ -0,0 +1,1374 @@ +/****************************************************************************** + * + * Module Name : 32 Bit Ex15 Interface DLL + * + * Module Part No. : 611/TA/40571/000 + * + * File Name : EX15.MIF + * + * File Description : Top level functions exported by the DLL. + * + * Authors: : K Ferguson + * + ****************************************************************************** + * + * This is an unpublished work, the copyright of which vests in Siemens + * plc. All rights reserved. + * + * The information contained herein is the property of Siemens plc and is + * supplied without liability for errors or omissions and no part may be + * reproduced, used or disclosed except as authorised by contract or other + * written permission. The copyright and the foregoing restriction on + * reproduction, use and disclosure extends to all the media in which this + * information may be embodied. + * + ****************************************************************************** + ****************************************************************************** + * + * MODIFICATION HISTORY + * ==================== + * + * Mod Date Inits PR Description + * --- ---- ----- --- ----------- + * AA 11/07/97 KLF - Initial version. + * AB 18/07/97 JMS - Modified to use AWP protocol. + * AC 23/07/97 JMS - Moved error source & code values from THREAD.LIF as + * they are used by external modules. + * AD 05/08/97 JMS - Added SetTimeouts() function to allow the user + * to set the comms. timeouts. + * AE 05/08/97 JMS - Clarified Discover() parameter names. + * AF 07/08/97 JMS - Seperated SetAutoCommit() from OpenDevice() + * function and added Port parameter to OpenDevice(). + * Removed now redundant TestCounts parameter from + * the ReadConfig() and WriteConfig() functions. + * AG 08/08/97 JMS - Added Connect() function. + * AH 11/08/97 JMS - Extended some of the error reporting. + * AI 12/08/97 JMS - Revamped timeouts to timeout at message/frame-level + * rather than at lower comms. levels. + * AH 15/08/97 JMS - Extended error reporting. + * Added SetDiscoveryTimeslotPeriod() function. + * AI 26/08/97 JMS - Added Transmit() and Receive() functions to allow + * lower-level calls (eg. from EXCOMM) to bypass some + * of the message layer functionality. + * AJ 27/08/97 JMS - Fixed a typo from the previous changes. + * AK 29/08/97 JMS - Added extra tests and error codes for frame buffer + * overflow and retries exceed conditions. + * AL 02/01/97 JMS - Added FlushDiscoveryCache() function to allow the + * cache to be flushed by the application. + * AM 02/10/97 JMS - Added FlushBuffers() function to allow the Tx and + * Rx buffers to be flushed by the application. + * AN 14/10/97 JMS - Corrected the type of the Hp07Dose parameter of the + * WriteAlarmDoseThresholds() function from WORD to + * DWORD. + * AO 16/10/97 JMS - Added part number, function headers, etc. following + * review. + * AP 17/10/97 JMS - Added SetRetryCounts() to allow the retry counts + * to be set by the application. + * AQ 22/10/97 JMS - Removed now redundant error codes (ERR_*). + * AR 24/10/97 JMS - Added part number for Developer's Guide doc. + * AS 02/12/97 KLF - Various corrections after testing on version 1A. + * BA 11/05/99 JMS - Changed timestamps and timeouts to use instances + * of the Timex class rather than TickCount times, as + * TickCount times will wrap-around after 49.7 days + * of continuous up-time. Changed the timeout periods + * to be long types rather than DWORD to match the + * Timex convention. + * BB 04/02/00 EMH - Added WriteDisplayControlBits and WriteDisplayEnables + * BC 30/01/01 JMP - ERR_INVALID_ALARM_SETTINGS added + * BD 30/01/01 JMP - ERR_INVALID_NUMBER_OF_ALARMS added + * BE 08/02/01 JMP - ERR_INVALID_CONFIGURATION_LENGTH added + * ERR_INVALID_DISPLAY_CONTROL added + * BF 21/02/01 JMP - ERR_SCRATCH_OFFSET_PLUS_LEN added + * BG 15/08/02 JMP - Added new ANALOG2 commands + * BH 04/10/02 JMP - Modified Analog2 interface + * BI 02/06/03 PEB - Modified for compatibility with Microsoft Embedded Tools + * & PDA version of DLL + ******************************************************************************/ + +/* + * + * IMPORTANT NOTE TO DEVELOPERS + * + * When using the DLL and not using the AutoCommit feature - that is to say + * functions are combined and processed upon a call to Commit - the following + * should be noted. + * + * 1) + * Data will not be assigned to pointers passed into functions until AFTER + * the Commit function has been called successfully. Developers should take + * care that the areas of memory that are referenced by the pointers remain + * valid until after the Commit function is called. + * + * 2) + * Functions are processed in the order that they are called. Should a call + * to the Commit function fail then the error information can be retrieved + * using the GetErrorDetails function. If the error information indicates + * that one of the combined functions failed, then the developer should assume + * that all the functions called BEFORE the one that failed, have been + * completed successfully. All the functions AFTER and INCLUDING the function + * which failed will NOT have been completed. The exception to this is Read + * functions which will NOT be completed in the conditions described above + * even if they were called BEFORE the function which failed. + * + */ + +/*============================================================================*/ + +#define SRC_NONE 0 // no error occured +#define SRC_INT 1 // internal error +#define SRC_DLL 2 // DLL logical error +#define SRC_EX15 3 // error from Ex15 + +#define ERR_NONE 0 // No error code (internal error) +#define ERR_MSG 1 // Message not expected +#define ERR_SHORT 2 // Message too short +#define ERR_LENGTH 3 // Message data length not correct +#define ERR_QUEUE 4 // Message queue overflow +#define ERR_OVER 5 // Message buffer overflow +#define ERR_PARAM 6 // Parameter error +#define ERR_MEMORY 7 // Memory allocation failed +#define ERR_NO_THREAD 8 // No thread object available +#define ERR_NO_MSG 9 // No message layer available +#define ERR_DEVICE_OPEN 10 // A device is already open +#define ERR_AWP_USER_BUFF_TOO_SMALL 11 // AWP user supplied buffer too small +#define ERR_AWP_TX_MSG_BUFF_OVERFLOW 12 // AWP message too big for buffer +#define ERR_AWP_SEQ_MISMATCH 13 // AWP sequence number mismatch +#define ERR_DISCOVERY_IN_PROGRESS 14 // Discovery in progress +#define ERR_MSG_OPEN_FAILED 15 // Message layer Open failed +#define ERR_MSG_NOT_ACTIVE 16 // Message layer not active +#define ERR_LINK_OPEN_FAILED 17 // Link layer Open failed +#define ERR_INVALID_FRAME 18 // Link layer invalid frame +#define ERR_FRAME_TX_TIMEOUT 19 // Link layer frame Tx timeout +#define ERR_OPEN_PORT_FAILED 20 // Link open device port failed +#define ERR_CLOSE_PORT_FAILED 21 // Link close device port failed +#define ERR_SET_PORT_TIMEOUTS_FAILED 22 // Link set port timeouts failed +#define ERR_FRAME_RX_BUFF_OVERFLOW 23 // Frame Rx buffer overflowed +#define ERR_FRAME_TX_RETRIES_EXCEEDED 24 // Frame Tx retry count exceeded +#define ERR_FRAME_RX_RETRIES_EXCEEDED 25 // Frame Rx retry count exceeded +#define ERR_FRAME_RX_RESULT_UNKNOWN 26 // Frame Receive() result unknown +#define ERR_INDEX_TOO_LARGE 27 // index greater than profile entries +#define ERR_INVALID_ALARM_SETTINGS 28 // This EPD may NOT have alarms 'off' +#define ERR_INVALID_NUMBER_OF_ALARMS 29 // Passed Alarm array is incorrect size. +#define ERR_INVALID_CONFIGURATION_LENGTH 30 // Passed Display Configuration is incorrect size. +#define ERR_INVALID_DISPLAY_CONTROL 31 // This EPD may NOT have Display Units Changed. +#define ERR_SCRATCH_OFFSET_PLUS_LEN 32 // This area of scratchpad may not be written. + +/*============================================================================*/ + +#ifdef __BORLANDC__ + #define EPDDLL_API _export +#else //assume microsoft + #ifdef EPDDLL_EXPORTS + #define EPDDLL_API __declspec(dllexport) + #else + #define EPDDLL_API __declspec(dllimport) + #endif +#endif + +#ifdef _WIN32_WCE //Windows CE / pocket PC +#define PDA_BUILD +#endif + +extern "C" +{ + +#ifndef PDA_BUILD //Only included on Desktop DLLs +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +EPDDLL_API void* WINAPI AllocateMemory( DWORD Size ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MemoryAllocated( void* const Address ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReleaseMemory( void* const Address ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadMemory( + + void* const Address, WORD Offset, WORD Size, DWORD* const Value ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteMemory( + + void* const Address, WORD Offset, WORD Size, DWORD* const Value ); + +#endif //PDA BUILD + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI GetErrorDetails( + + WORD* const Source, WORD* const Reason, WORD* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI GetDataMetric( WORD MetricNumber, WORD* const Metric ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI InitComms( + + WORD Port, DWORD Baud, WORD Data, WORD Parity, WORD Stop ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI DeinitComms( WORD Port ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI Abort( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetTimeouts( WORD Port, long RxByteTimeout, + long RxMessageTimeout, long TxMessageTimeout ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetDiscoveryExpirationPeriod( WORD Port, + long ExpirationPeriod ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetDiscoveryTimeslotPeriod( WORD Port, long TimeslotPeriod ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetDiscoveryTimeslotCount( WORD Port, WORD TimeslotCount ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI FlushDiscoveryCache( WORD Port ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI Discover( WORD Port, DWORD* DeviceIDs, WORD MaxDevices, + WORD* const Count ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetRetryCounts( WORD RxRetryCount, WORD TxRetryCount ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetAutoCommit( WORD AutoCommit ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI OpenDevice( WORD Port, DWORD DeviceID ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI CloseDevice( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI FlushBuffers( WORD Port ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI Connect( DWORD DeviceID ); + +#define ALLOW_LOW_LEVEL +#ifdef ALLOW_LOW_LEVEL +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI Transmit( BYTE* TxBuffer, DWORD TxLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI Receive( BYTE* RxBuffer, DWORD* RxLength ); +#endif /* ALLOW_LOW_LEVEL */ + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI Commit( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadCommsStats( + + WORD* const XBOFSeen, + WORD* const TotalTxFrames, + WORD* const TotalRxFrames, + WORD* const GoodRxFrames, + WORD* const BadRxFrames, + WORD* const TotalWakeups, + WORD* const RxErrors ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI EpdOn( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI EpdOff( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadEpdID( + + DWORD* const EpdID, + WORD* const HardVersion, + WORD* const SoftVersion, + WORD* const FunctionFlags ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadEpdStatus( + + DWORD* const EpdClock, + DWORD* const RealTime, + WORD* const IssueCount, + DWORD* const OffTime, + WORD* const OperatingStatus, + WORD* const ErrorStatus, + WORD* const AlarmsStatus, + WORD* const OtherAlarms, + WORD* const EEPROMBadSectors ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI TestDetectors( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadWearerID( BYTE* const WearerID, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadWearerName( BYTE* const WearerName, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadWearer( + + BYTE* const WearerID, WORD IDLength, + BYTE* const WearerName, WORD NameLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI IssueEpd( BYTE* const WearerID, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI DeIssueEpd( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteWearerName( BYTE* const WearerName, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI BaseLineCounts( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetFailFlag( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearFailFlag( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearLatchedAlarms( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearFaultFlags( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadDosesQuality( + + DWORD* const Hp10Dose, DWORD* const Hp07Dose, + DWORD* const Hp10Total, DWORD* const Hp07Total, + WORD* const Knocks, WORD* const Resets, WORD* const QualityData ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadCounts( + + DWORD* const D1, DWORD* const D2, + DWORD* const D3, DWORD* const D4, DWORD* const EpdClock ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadPeaks( + + DWORD* const Hp10Peak, DWORD* const Hp07Peak, + DWORD* const Hp10Time, DWORD* const Hp07Time ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadRates( DWORD* const Hp10Rate, DWORD* const Hp07Rate ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadBaseCounts( + + DWORD* const D1, DWORD* const D2, + DWORD* const D3, DWORD* const D4, DWORD* const EpdClock ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadCalibrationData( + + WORD* const K1, WORD* const K2, WORD* const K3, + WORD* const K4, WORD* const K5, WORD* const K6, + WORD* const SG, WORD* const BC, WORD* const FB, WORD* const HG ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadAlarmDoseThresholds( + + DWORD* const Hp10Dose1, DWORD* const Hp10Dose2, DWORD* const Hp07Dose ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadAlarmRateThresholds( + + DWORD* const Hp10Rate1On, DWORD* const Hp10Rate2On, DWORD* const Hp07RateOn, + DWORD* const Hp10Rate1Off, DWORD* const Hp10Rate2Off, DWORD* const Hp07RateOff ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI DisplayFaultCode( WORD FaultCode ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSReadData( + + DWORD* const Hp10Dose, DWORD* const Hp07Dose, + WORD* const Knocks, WORD* const Resets, WORD* const QualityData, + DWORD* const Hp10Peak, DWORD* const Hp07Peak, + DWORD* const Hp10Time, DWORD* const Hp07Time ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadProfileControl( + + WORD* const Interval, DWORD* const TimeToNext ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadDoseProfile( WORD* const ProfileEntries ); + +WORD EPDDLL_API WINAPI ReadDoseProfileSince( + + DWORD EpdClock, WORD* const ProfileEntries ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadDoseProfileCache( + + WORD Index, + DWORD* const EpdClock, WORD* const Interval, + DWORD* const Hp10Dose, DWORD* const Hp07Dose ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadConfig( + + WORD* const CountDownTime, + DWORD* const ReturnTime, + WORD* const ChirpRate, + WORD* const TeleBaudSetting, + WORD* const SelfTestInterval, + WORD* const BatteryLoadTestInt, + WORD* const GeneralControl, + WORD* const CommsTimeout, + WORD* const InhibitTimeout, + WORD* const MinTxInterval, + WORD* const MaxTxIntervals, + WORD* const RandomiseWindow, + WORD* const DoseIncThresh ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadAlarmConfig( + + BYTE* const Config, WORD ConfigLength, + BYTE* const Duration, WORD DurationLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadDisplayConfig( + + WORD* const Control, + WORD* const LongSwitchTime, + WORD* const DoubleClickTime, + WORD* const DisplayDefaultTime, + WORD* const Default, + BYTE* const Config, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadErrorStore( + + DWORD* const ErrorTime, WORD TimeLength, + BYTE* const ErrorCode, WORD CodeLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadSpecialWriteTimes( DWORD* const WriteTimes, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadSpecialDoseStore( + + WORD Index, WORD Count, + DWORD* const Hp10Dose, WORD Hp10Length, + DWORD* const Hp07Dose, WORD Hp07Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearErrorStore( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearDose( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteDose( DWORD Hp10Dose, DWORD Hp07Dose ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteCountdownTimer( WORD wCountDownTime, WORD wStartNow ); + +/*----------------------------------------------------------------------------* + * + * This function (WriteCountdownTimer) was written after the Developers Guide + * to the Ex15 Interface DLL (611/HB/40571/000) + * The first parameter wdCountDownTime is the count down time in seconds + * The second param byStartNow is a boolean to start the timer now + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearTotalDose( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteTotalDose( DWORD Hp10Total, DWORD Hp07Total ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearPeakRates( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteReturnForReadTime( DWORD ReturnTime ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteAlarmDoseThresholds( + + DWORD Hp10Dose1, DWORD Hp10Dose2, DWORD Hp07Dose ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteAlarmRateThresholds( + + DWORD Hp10Rate1On, DWORD Hp10Rate2On, DWORD Hp07RateOn, + DWORD Hp10Rate1Off, DWORD Hp10Rate2Off, DWORD Hp07RateOff ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteAlarmConfig( + + BYTE* const Config, WORD ConfigLength, + BYTE* const Duration, WORD DurationLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteDisplayConfig( + WORD Control, + WORD LongSwitchTime, + WORD DoubleClickTime, + WORD DisplayDefaultTime, + WORD Default, BYTE* const Config, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteDisplayControlBits( WORD DisplayControlBits ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + + WORD EPDDLL_API WINAPI WriteDisplayEnables( + WORD Default, BYTE* const Config, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + + WORD EPDDLL_API WINAPI WriteConfig( + + WORD CountDownTime, + DWORD ReturnTime, + WORD ChirpRate, + WORD TeleBaudSetting, + WORD SelfTestInterval, + WORD BatteryLoadTestInt, + WORD GeneralControl, + WORD CommsTimeout, + WORD InhibitTimeout, + WORD MinTxInterval, + WORD MaxTxIntervals, + WORD RandomiseWindow, + WORD DoseIncThresh ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteProfileControl( WORD Interval, DWORD TimeToNext ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteSpecialWriteTimes( + + DWORD* const WriteTimes, WORD Time ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI EndSession( WORD AlarmCtrl, WORD Duration ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadScratchPad( + + WORD Offset, WORD Length, void* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteScratchPad( + + WORD Offset, WORD Length, void* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteChirpRate( WORD ChirpRate ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadRAM( + + WORD Offset, WORD Length , void* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadASIC( WORD Register, WORD* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadDirectEEPROM( + + WORD Offset, WORD Length, void* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSLogin( DWORD Password ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSClearWearer( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSReadWearer( + + BYTE* const WearerID, WORD IDLength, + BYTE* const WearerName, WORD NameLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSIssue( + + BYTE* const WearerID, WORD IDLength, + BYTE* const WearerName, WORD NameLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSDeIssue( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSClearData( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSWritePassword( DWORD Password ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSSetOffEnable( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSClearOffEnable( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRLogin( DWORD Password ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWriteCalFactors( + + WORD K1, WORD K2, WORD K3, WORD K4, WORD K5, WORD K6 ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWriteDetectorThresholds( + + WORD SG, WORD BC, WORD FB, WORD HG ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWriteRAM( + + WORD Offset, WORD Length, void* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWriteDirectEEPROM( + + WORD Offset, WORD Length, void* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRResetEpd( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRFormatEEPROM( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWriteASIC( WORD Register, WORD Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRSetAlwaysCount( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRClearAlwaysCount( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRSetGolden( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRClearGolden( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWriteEpdID( + + DWORD EpdID, + WORD HardVersion, + WORD SoftVersion, + WORD FunctionFlags ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWritePassword( DWORD Password ); + + + +//additional commands for ANALOG2 +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadA2Config( + BYTE* const byADC_LA, + BYTE* const byADC_LL, + BYTE* const byADC_SUPPLY, + BYTE* const byADC_BAT_TYPE, + WORD* const wOffDisplay, + BYTE* const byConfig7, + BYTE* const byConfig8); +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadA2ConfigStatus( + BYTE* const byBatADC, + BYTE* const bySupplyADC, + BYTE* const byStatus3, + BYTE* const byStatus4); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteA2Config( + BYTE byADC_LA, + BYTE byADC_LL, + BYTE byADC_SUPPLY, + BYTE byADC_BAT_TYPE, + WORD wOffDisplay, + BYTE byConfig7, + BYTE byConfig8 ); + + /*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI TestBattery( void ); + + + +} diff --git a/EpdBaseClr/dll2/save/reader2.libx b/EpdBaseClr/dll2/save/reader2.libx new file mode 100644 index 0000000000000000000000000000000000000000..5979bd3972efa27e9d4705ed23091f213437985a GIT binary patch literal 28914 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.7.2 ManagedCProj OkReadBadge - 10.0.17763.0 + 10.0.16299.0 diff --git a/TestDirect/TestDirect.vcxproj b/TestDirect/TestDirect.vcxproj index e701c3b..42f82d9 100644 --- a/TestDirect/TestDirect.vcxproj +++ b/TestDirect/TestDirect.vcxproj @@ -23,7 +23,7 @@ {3655B312-F7C2-4825-BD5F-E087F6AF2D90} Win32Proj TestDirect - 10.0.17763.0 + 10.0.16299.0 diff --git a/TestEdosBase/TestEdosBase.vcxproj b/TestEdosBase/TestEdosBase.vcxproj index af2a9a4..fac2a13 100644 --- a/TestEdosBase/TestEdosBase.vcxproj +++ b/TestEdosBase/TestEdosBase.vcxproj @@ -23,7 +23,7 @@ {7B3DD1C5-D8D0-408C-A272-FF5E4A30DF24} Win32Proj TestEdosBase - 10.0.17763.0 + 10.0.16299.0 diff --git a/eDos.sln b/eDos.sln index 577aba3..730fd16 100644 --- a/eDos.sln +++ b/eDos.sln @@ -51,7 +51,6 @@ Global {7B3DD1C5-D8D0-408C-A272-FF5E4A30DF24}.Debug|x64.ActiveCfg = Debug|x64 {7B3DD1C5-D8D0-408C-A272-FF5E4A30DF24}.Debug|x64.Build.0 = Debug|x64 {7B3DD1C5-D8D0-408C-A272-FF5E4A30DF24}.Debug|x86.ActiveCfg = Debug|Win32 - {7B3DD1C5-D8D0-408C-A272-FF5E4A30DF24}.Debug|x86.Build.0 = Debug|Win32 {7B3DD1C5-D8D0-408C-A272-FF5E4A30DF24}.Release|Any CPU.ActiveCfg = Release|Win32 {7B3DD1C5-D8D0-408C-A272-FF5E4A30DF24}.Release|ARM.ActiveCfg = Release|Win32 {7B3DD1C5-D8D0-408C-A272-FF5E4A30DF24}.Release|ARM64.ActiveCfg = Release|Win32 @@ -64,7 +63,6 @@ Global {3655B312-F7C2-4825-BD5F-E087F6AF2D90}.Debug|x64.ActiveCfg = Debug|x64 {3655B312-F7C2-4825-BD5F-E087F6AF2D90}.Debug|x64.Build.0 = Debug|x64 {3655B312-F7C2-4825-BD5F-E087F6AF2D90}.Debug|x86.ActiveCfg = Debug|Win32 - {3655B312-F7C2-4825-BD5F-E087F6AF2D90}.Debug|x86.Build.0 = Debug|Win32 {3655B312-F7C2-4825-BD5F-E087F6AF2D90}.Release|Any CPU.ActiveCfg = Release|Win32 {3655B312-F7C2-4825-BD5F-E087F6AF2D90}.Release|ARM.ActiveCfg = Release|Win32 {3655B312-F7C2-4825-BD5F-E087F6AF2D90}.Release|ARM64.ActiveCfg = Release|Win32 diff --git a/eDosStation/EntryBadge.xaml.cs b/eDosStation/EntryBadge.xaml.cs index 0126444..2548a15 100644 --- a/eDosStation/EntryBadge.xaml.cs +++ b/eDosStation/EntryBadge.xaml.cs @@ -221,7 +221,7 @@ namespace eDosStation dv.RowFilter = fi.ToString(); } catch (System.Exception ex) { - + MessageBox.Show(ex.Message); } getTaskListViewSource.View.MoveCurrentToFirst(); diff --git a/eDosStation/Reader2.dll b/eDosStation/Reader2.dll new file mode 100644 index 0000000000000000000000000000000000000000..3edbef2b10345fb3dc6fabd2da8d9af389024800 GIT binary patch literal 158720 zcmeFae|%Hr**|{Lr0t=kB!z$xDh7>P5#|cP*^;U$(o$x@q%8>uw5T=9GE{^FaTZKX zi#a_6abs>ib8ha(^Y}daOx@!OI)`bCEfqvSH&L8J$F{o`x1y{RtmN~)?sM|11>F36 zUZ3yxj}N?>bI$$a`gLFTbzS$5bDu>wZxghFAn5QHj|;+1TK|6cfK0NLX%eQ})d z{Fv9K?bKAiHm%P0&2^SFYw!BT+FS0h+;+>Icit7S+`<0qN&=w- z_20HEp`}0&Vkb00VIu8Z*9lpIBRw5-HgQtZ6I1tB1#aIEz~is~fI>tc@k))J_Rk^+ ztFBtxcuU|GLHMsqWDxIFxPE|Z+CPUNIIdEP3G=T-h69{W#q~->0*Rt17rSchy0y0< zf%6KUg&aIojVkB3YVGZ-??S=HiD}4y!&^M6+&tv|zkmM+B@jMtamyz>(Q2#6ezI8* zaARiQ$Bh$rdY1p7AQ*Pcx6X{}LeV+h(M?7ws%Nhty(Jcy8eMF0@q~bqkl(PAbfrGL z+tR5MYHdg4*QI)qJrV)r#TK>|SGj9>gPOl@-@b5%*e5m$0&e*~xy~xe^Q}6!9IzVQ zHB$3xz>^+cL%+`j@asekHV93r@6@9fm6e)9$N)Y-P@Y#MpWBchDc_)EBHv2|yoALo zHE%#Muk`S@skEq&K=d#`SE$*y&+U<$ta_5rVv+q38Pcvs6mRI>T#5^b;8+u-6@K=l z)hGFS}0y+Ul$`YvmQzlAYIq2z%F(DTCo|P4t=5c#13$B0oNZn}A8KwwBboqTl}% zPc`foG*SOpzu?ycWIzGgIvBVp+?7?kBzlv`iqQ@$)yC1&T@qi4zgp53L;Eg55Um&G zz2TlL_SUU}&>9OEJk8xifm`0ojzI}G#=eggefLPiqYiT7e;M zjXr4-jG^DYNKk`g2w-?_R{soYgz=EryfANszEj8s#zJ{a_;l9#_YLjeqZ$BZKNx&t z7a$39=UXj?2VPh1tcJ~BLt1epkIJTyMK*vRro^Sg_}f7b**XsB1!DyiV;ucTdX zlbJKx2H6%6f?JF2Bi4*t>cJ*TPj#pqLZM~&+U1GGX3mQk- z7Wi_ML=nBo$U0C<9_xbcltt^T)*43qBgex212+{Y`zuATWIRQobuj3$eZ=A4v;<9G zbB3DW)O)96S!y(HJ|7p055@k$*Mf7d|9&>#2RcU)s^e1a-F zUG6803$u*2-A+hB-}p01l;CQ5G)GTpjM2MAG|zmiiIQ1XJ?Q3-ar|SSz!-sieWQe^ zNf4I7@)^-sP%IOqtzQB{Pawb0$$LHS%r(yFouUiMx^yL~4z9+fO!`|>uKoOOg@7CCEUcyPLtwNnmed|-xAc|0w;SWlE%Tq)Qd1# zwz$mLdV;f8`Xzx;L9n$*gP0pV9uHdL=SoYsqYYWD@!(DJ=2a-_an{z7vbvxTGs&9n zht8l*aoc9Hh;zGwlR~=``<7q2!fFiWzD#uX|JLc()Y{^#VH4-R|G&Wl@8EFZTp>*I z35nb8aNMyzuV*uvaR+M3{0@!?8ov16S{M5)1k?HmxyDeZ4lavqeI0ttuUBy5$5Hcn zYMmhMPebQ6^ve^TSkXr{K7kW1iEgGw;Xbq{7sv(n_l+Q74=X{VaZk#dO7Wy`Dp`L3 zN61Qg(v3(?^Q1;WeuR_(WX<$zYW&%L9o)u#_6V1*q2)1PQM{L-{Sgu&EH8qZaEH!* z(6GHr-n+cDH+ZGfpAXf!j4<+s2Lb{z4VDtZUyj>BFpFDfIQOia3tgRK-!mm1?$HD< za{0%i?q8ZXStNGq{2;5&TI`H&{S8pMYS@2(!B9I%RRh?z81#+|bgFo&6T?5h?Rgnv z86mpP5?u(3H^BA)I*8~XB;4@b+b8es(MBdfg!`Z&4fTl0R73dr{THebu!Nq!m^({tDS^_Ypca2r8fkmqs^JXXdt%{YuID z4bL*PybMe}P)Okk8w6(x9h4GzoJ240FRc#*Tz*Y-(*}=U!!8?)$0ewXlY<;zK<9HTEp7{a>%Gt!2OeM*>!0E_LAOE)K`Q z3%<@C#8v6xs#$-XJ+H!8jVq*Y27CcFtnoJ_U|0b%0I<1MQp7!=lwt`es8I4asd4b; zgdK3f4ipA&MD$=50tJMdJ^F2;{xwzr&`2m|5jEie5)kz36BQ!}SilJghDo$z8z>@+?jn_tDg)%XywXj&8u@h=QhOc6Jm`@|*p)iqF}g5_ z(C#7**-FLiUFVfoTbD)~tq4;7v95v&8+QCYQC9ceN;ZcV3?4;CT0uq!@#JinwD4{R zh7CwqfrMhJmrATomYkJJMD>PxTWqCQ%0g*T1(47_j1S<2a?rKMIN8%YK-Bf*fKVY3 zSjaA&togcBE=n#vbuqbI@35Ea)@I2X+o95O(XhQ!?o10p>7RBGgm$F+y zepFu)-mQ}s>!cj1Qe4;|E!HE{OJUo$ZxF*LpgYl%!_dj=L#J;wJh&Kq7}^ii_?CW*AYi_AzJHpNt>w})`lpd*x!6fW z1JI4K8sAJ5^6Py2!Mo3ld)DhEgr?GZ(a`!4Qfqx7{Q9-EwLV;909faYPc#l_jJDqJ zP~7mn4yh76iT1rp=nn)I7fR?+g1W^|P)n}V0h_)C$)cJpQ8GprI}gCwAk#vf9e;%= z+x-4_-;Kv>ntP3yN^z3)L$o5OR>y(}rxNxPgRkB+L zGW4#R_(aUIfQ-Nt?uyBzF9+6uZ66yB5uY@4MNE(*I}t3!52Y74k}M!^vErTvT(*6- z80$=Ckbc@?rIn--l{#=|Qm~Edsno%=#d|76)JtmXKGcRyHIHy7(1lz#&f!;K-YdZYIhLbrg&l=?9W@#U~b0AsVHp{#~%VWpw%Q@j{C9 zZ1K`fV&LmC!cNdcu$9&eTmu!G3G78}5ITl2Fmz@&s$RlJ}ljsJ=?dQ|>rqh^sjNv@fB>hP3UIEE%5 zEvbf3pfWR0y*;Hj+>wLWJ$^`GT}-mhXFO8)Mc_wm1%FWjKPLOmrZR}$K< z)+C@^o(AnA6vI@jmYUA0VmO3 z3OycTZyEq$9A<*5qp#C!o2UXaCW)G-_dtOM3_H3}q}s3p!}4&SCSaqVi^F|c!4gU{ z$)-|t%)$n#07M%x$pFJ?*rA_`CPreOnuvmicBQ0L(7+S-rP1^7U0;}Ue0QUgH&R?RHuP{QS-Q+?5B64(g0x@3|{2)ix@UOgCq@bfl8SG{4l&1$Y(GCGO5N-Y(Ac-1Mg0iN;&FaVNZxipnrfM_JqhB(?5D5 zSY&T$zha1138gFMj-x7{;;+%VPQfRik!^k=8hKS7~?e1aBq%q}7vQ-how z1f(=G7@Xkp8$t7jt5bY-$-D&No*zFzlin))U!YK;@m2Z!Dy<&xLyD(EfYde&RAK_n zL>CuLII}odHOqo*lxs?8me8#J?1>*zEJ-3RQt@9g8vpEcfFj!G!uYkB#eo|^6XC~{ zT@tH^K{D5eU#F?C%5NuF4J7FFa`r;AARGo&wu=uCKs3iIv4W(dxc)-G^aSP$h zR5L%afBgdMI3x8RNlAGjswHDaK2{2WBm&G~8Ua%gh+QS_=c{n=1c^EcVRtuBKosn5s7Nln00Ms0brkH2(Yq=p!B~eS& zSRoCvjEX^~*^Tt3O4r|Cd}EY+eubo@eA3$MeD*K1c%r`)ox8tWJsRJ<5dh9%(N$Ax z9#JyF1p=E+`cM8OT?`1~W-3a-hgNF){Tg!|34K@nNhhE7;LiTM{)8Ij-!jUj;U3up z^BjtcN%l3mq2>UE7-F;LnIvE_G4fH05q(ZJ2{>$r!n<|$&VUUOPwB(NVxTC(10N(r zl#oYfjcnVB9HgX_p*nsbv6`#+e<$m{Jq2$;3SQZH;bF!l9cGP_`T`GO)Svhv3M^?n zFZu;$Lu5|=h7Z_XIzE?Yayi*A=MamgG#1nNFTeU6{HNvL{WBm0&Cc@r>$_7qwS5@hdEwJNow!(INdCWxibXKg>8Fd zeY(*5T0{H68n=|oRwCUiEzq@f#aNaV$$MOGR)xgSpYZSo$}A9B37*5dEz$x#?T|>v zj{cAu|J_Q=(@<+QO-0ZwhR$n$;0)-x2P3OJa!1Eeo&3BpkShpUguw{mrE9$Mvm5Y? z2eVhYMh-R6LjXG&IyOi-9q;R8J#DwJV2q_q2QR~*0TcF9U^i~%_!Rq+8r7$@*TbKq zFRstghvv`8fB0*oT07GoU3205=RT)D%{q_1i5Qac$uBv}D~(WBZVwIZReW+z##)?{ zO~zC&{Epgg>GC-je$3TpjPLNAa{g#~TP#xnke>*>xniWjKlnNFDL9vW6npJmmC&Vo zU^c@qkhK;9-|BAOLN`e2ZjSOhlePN+GT4Hwv#N0$2840}9~a6sRs4GXpEzdqu4MvSSd_76OpOKnCL_@^3Gumt*^| z;>2Z?baYm~pg38?5sUx>RxK6~QN z$LtBs%OdK9+o00bNTHfeKUN9>6UlRsRKmW`CjiSj3x$1{o1+eu_0|X03}Qh3jApk3oLO@mln+9oR zcy_R{9N+v-t1`hnf}U$xKXx9#_@wBe?RI+1o@0*BXPhM%{UTop@#k(5rqwS_t3Qd?*Cy+)Jx_fjaGL>xwsjPO2FKN)!3dNzrLK4R3&AiJI5E#( z0*ExJUxa!7nd~wSuQ;>2fS&5q`coCa(u%1l>8z+%en|1^)~E`a}1 zHYF4P2>NERPe09|Z$$oVcI1NjHujqf=Fee2%*-F%znstsXy>T@Wk#!>w}1Jw(auWe zn#&RJ&IOBz^%>}i1r1A`g7jq#>6{70O^V){6n#O7GN7g2?m$E302{5-6tfSp;~~6z zj_TsV#|aL>qt1mHc;7aHXGT#~|BOj^1SgmDk6^K%ayTWU^pE!kz@+~4Y+8Rn9E$%U z>e2$CmEFqgkM2)jjK48S{_;lfN2a0}{E?}c1I!fOmr302ln|GAtO8Ty0UZEBb8PdG zUg$=m8Hr9L(qu0!#h1A-shki%!OaP$vY0@YJ{N*b49rV76)fI%KcILOG(~qvaVsd8 z90_2<7FNmVr-XhS^ixgab(%Y7AAigp2R+QgQctny*95-g8z6}mp&+&wqNVXakD1|O z&;{XTFb!JNStR%lD5b!i%Rj#VFpVme9Ow@*NKBKQ&1fUzY(Uf#=YR@>OIyJN|5$1x zVwJrJ4-?)!Q+4B{FC-7r8AV@;Q6IIb*^8k!P)r5RWNxUbDhKFrP{Ke;)tgRLGznmEk`~**@QYT>6qK)q$?m>|w9=XIZ?sEVzXZEQ z5ZJb^KU_*naz3$xc3@qk_rYOZ2-g&N#nW{YXxn{gJ9QOe_FC%9*( zQX-qEl%idB2}%_$py3BbHCt~5sU9Aqd+l56@v!b@!;VLkLCNWGr_uh_riB<&`p!A7wePTJES~XrtE+K zlIT>3owc)j<+#`0v#!9f zYuFy6rO|*b3Gs0%1dYQ6jp#frHc&m@A$O395lx|{*%~2Gu59sZI~e;=*Vci-ROkb( zRhxBy?sKvZV91qq(9r&>3NkvsKm(o$tnHA!!|*sZ)nFq#M2r4fy97H=VkFp^UfKyV z6>lU+^?DjH&Gg0}RAl;)ayf{xfNpL%1V;G{vX)Z>N-mwRwu@Mud*6DkVMiYZXVlBR_E*+;>QVr--oBlTk=^#*V0Geqaw|D-n<$fyJL_bG)GDZJa< z1%5dIuUuuUT_P6|*JapB&ov(_HnJ!$1?L;^_5%fvKqYN`7iunTK8j!3;EJuS1d!-f z6{d!F7VzKzAmaT6nyGV2yN;oXTY8+~f}BR=fbD8l$^$d#xuL~`lGs}25DYD2l-n{P zkk1)*vs)mJ{-Wei`v6o`2<8I`A87ae7D%|@-0U0ZEo39C5Cr*yZ0~eX4!~tXa5~b> zt+8M(O;gU)#^gQC@1tf2dT?+`@2R&zk|`+8VEyFxOySSU)_-G0lhra~h1J^pSM(mC z`A_tVC7)alFi-_WB3^bfE%>tUS!abdbbO$Tw#+6;m8+}*+DxfPs?tdtL}{rWb>|BK zed%gz6|GIfia8QZ@4$S)6+B8KnY11U+YMN@hO?<(iN1k$D@xe_=qulnWrdKewix`a z7t;#=UXyUOtJypK5C(*BD~#hdvd6R~#)N@_8wjm#Kbi3&ri1r{Pei%7>`ApoG3k@r z-Q4j52#8`~a}C>v#zOKOul(>Zm=5not6xMrMa*zF>Y5$hCVW(az9P_9l%y{wN#EUU zu8Qp&7o@Kd+OE)dJrmU$R}+2I1+dAoxs!-gdJg-tLS)G~h!j&q@^N+e_#8kfgHn_L zk^`+z?Ouf|`TRO^D06r`YQ>`u%|w2?+E0Pe90-nrf~80$C%*zLV*Ej&Wf78BBbj>4 z8u;}(4!sE}Wpax(1WMuBX?Br@h)(t(^fkP@u5*rn{y1uU1N`aZ8?zE$s^c5lWu=U7 z=5ZjS$2Wx-FO`6fIiRT+{Hy{zjFu?Ao|!&=rI3cAfjOLBia#j4qv&Bih#e0+N__p! z--*~neBFF}H@E>)dvIAIKW%*zSJV^Pt$m4j%+OMR&J5HcVud!&;jN8gKdnAv@a>-f zSz1{bU|~bi#!yy6%O3%TU77}BKN0}qCkhBOkIR1*K!8GkxR@wqj!Y1=vxdFPI9TNC zINS%32!Z&pPaSk@*mV(}4eh7prkBjp+?L*;?zu_*S!a90*p2=-P4Lh1cIz>eh;F(_ ze%|^n-Bnw^?G2yRt-ajPz6=CwI{suFdl*78NoMS(0v?i~vAKH~BYtoAjAm_q+p@Ef zl|n^xCv6zQR&aWgsrYFrNb!;BUj=Y$P*EhSxVqMhAjd}*oi^K3dlXU_MWZegA>KgUNOXGPs<52_ zkt_Bh=CcPdJq?PEf}*S=epA+wtRoOcp^K&|{aL6{=JZcwFMS02u*FKVIUo(&3)$^U z>2`%0x2DCb#LZ+TqXHT|VbMm9$3ajXNE9WVmFUtrL6M$WuOw=?Ly^pUP&8#6Lg9zay&S^BvVL)>xE* zkCehvVI3a)O5*U?P0XO*v^K(c%;#TKg}O*657 zSToR#L&Fw3{nOY+1>FV(-IW|&UHXh@`1q<6z7<3n@U2EOHUb|uV^{-FYa`M&04I{y zkhXw~LL^hy(WTR2VIO7ELAybr#+R{we3-7rXy+d(xjAM!XDzPDX@TNW*7hz3k82XB%29 zD1pJO(IIcQ(%fs{4*As?uSdV7Z_8;r9NPO(=+lP+Q=ZHUT=b+aFyTo}!0@CP9NVUw zg>CoxvPag5JrFiP2$kWFG{L=yHcSEQ5=@b0v7ddN7{ZFeN?VL}5U&Q4FV<1o8dxNi zO!;HbbH$5#K!_?!B=Q!{lUIIQ*#If2&#gz+=it?a1^rpJ-bfXquh*JiA$v#rD3LL) zl4pqFSXTH$P4ETqT1LDUIoa1Uo4^cNtZ?}+XKP{np#~JGs^m>cl2_}$1S}j~$XP&c z6H0lpUlBYE)+Tu1AxQJ_XF+_TiCU~r<7tT(>>a?3+crqeMJ@{sQW7w@{Zj!qqQLF{ z5(qR=+svf4;nt_j$-a&FkK!qjg+3tPGJy6mg$ymtfP#1OeEyQCV*jX85iyC`3bIak zEKzy(VuVgG?5qqh=x!E;qj)J{i!}x~@ovhE z@zDG}mU%+=W-ko)4wb)1`timGNbcy6+xA!8riR$H$FyAC8>4-&3L2@j8-sEKQ1)O%U{|z*vKC#Yl zb7D#eX=Kk5iw)?(cu?0HDCUZU0GYOK&`b&DN+9c{PQR6}Doj)$wx9$pE4+D>#{u#d z>rNz)*6(9`U4qcOoAiTb;+20R{Aabbk$l7|a-u%6XmA#5xaVxEvj)gxAP!p%p2s4i z2|Vi|h7cfv(>!EtK-M_OitGS#4anW1dh^^0+bHd#^*oK&- zq0k7n;diK0LcHs1*i_I2R`pKyCLe6*>!B-+a%xFxX+l->v>7^0Q!sm)(iHtjO(_P@ zYN!9p=U9Jw>ODnKly@qgyotoQA?e=tp-o8#l*w6AIsvf{0;n4Qm1uG+8uJRa^B8ye zyi)l1$oVXqVWOb|p9G`^SxU@`H3+h>!E?TK9B%aNdEOeS*{nimEoQSYOW^X)U>+bq zlaQArlc(iGI=P!{K3;|XoU(WG@#K}aTdQ%Ew^-|NLHPF=zi}IOU~cPU?LhO{f5X`I z{%X9JMHWw?q|Q2t)uV$(xA3>ch)9h8%BH2XB-Dj9>MlRtkK1A`0brMZCVL6i5wqp} zMhM0N^HesUcX3+`$cYAeUmi_zP{4a7O=En#2Ir1y<#l9EDi`1rZyU57c%v{+J&2aDLd@2AUK z;*iqiomK~Z!$-z|J&8Jr5cnM9+Y7GW-GI1F8QrY*Y@oh5k8AxFTxaV;{=XeS` zj7cIgB{gjEwWKo`G@UOD(J5g_h%|>Q5k&~y&7?l0Nk+LXM0a=>ib7VJ*s<35ua6%9 zyv%Jd*54<>5L%>~#sg)t*yro7KR0JIylOvsfs9RmH@(aLzLHo-cG=PE?>~V(MqeDY z{!S~==U;#SI(n)yKltJiYSqO2AnZMq%?wSasZv^hk8yhs3`Xbz=1X6{k>l8BY-tA2h;D;0059oJJn# z%TBf#bNV#uTg1u~sDT^M^P1*XTMfZdbp$cD&YB;biQyCZ5F8OSHh8HzkU%kgaJ<(Z zz?=AEp|9g+zcJXE8@L?eqmg|t-vy~(j`y}93mVsdz=N=R9 zi5aAl7&merFA5x4!OOd zf*28^R;{7k9GPrrU#gJ{A~$RBV!eYNB9oJMlqe<>)jLYmCll2>N;D=D)jLWw@kED; z2amwSQM$}XY;$Vlg}8BP9EoMy^V3(Lz`r?5PTXmelxEVbGJ=u`o^D3bb8?bk3PlsQ zD0)u*60D-AatmG%-$Q(0J;5OE5)6V@kcBtymTFRoqqzS65x+?$^eKAjHj6hC?x0JF zX5zX;KVOLcBqm)76WuD9aF@b_{llYQhl!p@w~A`v&ZW&D>R;5~f6g+% zFeFXSKVzECX*v^D6!u2B1sAHl0UL_phSAF85@t*_IBHR{LW+?}v%Pey2n2VT0!i<0 z)B)mD-ON3N0!H^QGzJw-m{qkKp&ubgMdvZfcVlT>?M0Z_nS>6;dm6tjOx==d(iwV_ zpld`C_fX26!aViJqGUI`d!}+rcDWeL%L|JgZN~b9kKyf2-p{>D52fDLW^RL%XgRcg z?Acc%I9sM5GC8iHL_HP&L$8-^cu8rlz^?Km5Ym}Z1di)-HwueKUB!CpgquDlqd zJoreDMy}K^@JdE>*_$-7+lc!-L;C`ayx4?WwS<{UL>Fji6@YIE{}=UH?MnZQlK$WJ zpX5rjOwbc_SaoAkWIzoK$R&+J1l zV*`!Qmecl5<=M`;%XI7X^7OXD7#U+d9a{X3k|@d-TMZFyTtf@%hm^AllQAJFFZiz1 z$>Tguzs1F#!bri;?$(h$%Q-dJXLs*x8atSy3npO)*!lHKjkOY-;4x{M&g0v^aQyH^ zO;93oqxy+fyl~`7B@;1h!kuvIsTf1LRShjgcCyQ?G-jfxnN%2|E;n1`6v(bA7EHY( zElb>@XyO({$?l~T1CL2@(yd~?ahGYnm3WNoo9AV2-?+kKtw6oztJiUK^@i`&=`d$u zSWEEf=o*d3*$ zJ(YS`F{j7Ht}7O%A$Wwe5^ze<|YsWGpmK2PwL-Yu@32!{$1 zjnZVz-ANLuAJanGg{m5* zSW5o5;l#~niJP-g97Ul#qzam5soAqM+Wl%~*2qG2;}o<2K!Xz^k9-oyQ+yL$ff?B% zjlp?hW}$Gm*%3ZlM&4=580?RPzgA2z?@uHS<1X|SVH=kRC^^Si9t(khu>vrf-sZ(3 zt`#cghKOsWgP);uPW$ZQL0ig!r=r+IWU0o8ELHnXQJrJ^k8HuOVVM+qr-?hxF1( zVJ_sAJU?H(j#IA&^@`@=`G{ip zb-a3=pk7T5N5t5+aH1n3rrJvN59gvcORc9>umAh>bNnEGBz{F#No|#`taSIRa^w%~!AE)T=?g8r5rodL6G`C#YAGdY!0VC#lzq z)T_C?JW|l+xVSu`!5;f$w5RG9Vm{H<+pnefx!X;PNipgc!=f3>9pTgZrv5aoB>mx& z7a~R?@WEcmscUoPM4UNo3v!Ra)A((U=hn)Lgc=Lkx=v12Mg^$Yd-IYeX6|+jJZ;aIY_~M@_dG0#iPe?l;1N_p$ zj~?@c^cuLCAHr_or$^z)PaHOU-C=cTgRC!xwC^^s_hI9 zX*Oo_x20%Nt_BMyjc{8e4-P3GZ}tLGC}Ci%l3aOn(w$hU`{Jm5q@~ANkp2bMB+vKq8-FF?r-Zex_^d;QCouaxpvIwK!FI z3c;bn>GMc@+QTyj`rnIBoP!e|o&E_R@`y!YmwWFKn@PYw^hG2bCjL&F+ry7V#=9<9 znp(FKFQF6(fzmeJ)`7E&{kHsxK$t~6` zxKJp=zoTG*5*9)UFN)!3Vh1Y$iY=gE#Scx)v?FZIP!csOZtu^wu>s{=C z5_ZVn(&Ifb2rGK8cANaWH$KESS{w-0BhGkm0Gp_24-QW5#*&`lX~_0z>(fL7c4z|J z5*+e!`Y9~Vox3!4y9KaR#%@!Zz$niAw$cJcy6nnvnsM>4lU4C_PmTz2PBoBLWf3rd5s) zeX0rGNM9N$Vb)8yX5E2pTBKPJiHSaBP{hV6877_)47YX3Tlf}Tm9MwHM0^nsuxTwv zf`7zG$s2|Bhx>EX?{~Dj9*WBGc$?m2D$4sNY_<+pl(9O`wiRz`Q5{KlW=!9r-vG<`TAFV@?|fW8^8 zh{uJ1?m1n5vs^)2H_&kxPr(^OH$t$0QvxAe+CzGWS34`m6S3$MTW>|Rs=lT84R2Z{ z{D!gv`p^kWPvt7y3jJc}^v0kTE{(E-1w?YiI?M#cBGtuaq29M#6&2^}*&NOnna$)s z_}}oo<8_7~#S|X`e}6dT?_F+>s+xQ|L%O%e%ssYnbp$FQ4+yyYen zT#ONi>MwsH9``UKqL1)y9sj5bgY1?ghSryGZT%={g?h4MKjGR*@6Pk>6~)SK3v{rX(Yf0WQ<)eq6Rbv^DyTZC zHScol6f)4H^xB9I=y2j9c97C}!9I#nEI73XaK^*hphnwawtpNjY@xF{qpoJ>+OzN2JJvc+3JGPKNr4ABMKx)2^!BZg5t{YSxmVvODg z{~t}C5f|*q#e_9Ym|*xEclw@Ok!AF-HM}|C*04+Np0oIHPV!7316~`T*Ism0PM2@z zsw^X$uas4bG#_uooIuK6t-@3I+R*$goZ#591~Zf|=>MTH?j$r^-d-85wIDdv+j=N4 z(JMQ%ymnVs&=8L4FnT~@@I70sKN}~9AC9}B@U1hT;?WlCd>vX2VHDoz!f`qi132p+ zxm)s)TkDBp>o4+MJ{?d&P9~oL={4+`%OSx5pFjjq3eTU>4Gjnsx!A+V)eiWctjsdL zn9BV>WBA*L zMpyg|E;I$fz)6j921j6avhn9fP*lTCD(^7NbaI+~8ls+L$d2&fwHRAp=`sG6f=hXL zqhUE0bQDsR=~WoK925M)jDZ)9f`XkJ=4D|h`cF3l`f|CC>bN-;-vPjY z#OGvzB$AAaE#Nen@i8Jg-)xJ{iY%`bp*kuNeJ|k4N5-8IsKvjAd4Z4Wq+{Nm!d$~% zn?_~?nEP|1%KJlU_^DC^3t3kj#`k?IsY!UZh_`E|x_!@rQbpj; z)%Z^!G=ItzSM>jmCCdt5#OuLyX%wKyT*8uk~9$|n2?u0F%X47Hdd`F@9oHq6`qFz-z z!D&3n_XA|IhUusob2u3eI3W|?N1@6#zGIF{*2x%R9Ar=|_Ym@6yhInf4TLEN52!v;V8*biBvPu&kyrkR1Uci(* zSy5xsh*C><*bED&Ez^kd@u6Wy4&tn<0*&7ArmVSvm3UYY@UR$8#z}P8M0}Ldaoq=p zlBz-7ovVhTn}m|>2a!;Jg#pmdKmW*u?^fFG2T%csE3-h-*V7I7>4PK6ns zUx1&b3O_E+&y8#VLCqKChfuP!mvDaiC#XE|#5XyU`g#NyI!cINL0vh)1n8eWihk<( z9`-|};y+J+@fV|?y9Ywau1nHS9oo(945LUHZNTZLQknF#Z=tt&pCE1LipG}HGol2Y z_h*!t9QdmYGdnL&ImONb@IgV#Vh z9$zC0bBoL#f=!Tz$O6X=Ex9B*?0lsfayLFE)FwLc;{53uo!7>p;+w{2CdzyIvtOVL zTdcKrlfi4)Wh%zD{`qqp_Kv0#Fdc;y@flgI5#aW)mkQ_-y<4ODi?)LDmO}u(9}&3% zoidZD^1=S>7diCa))8Ak-93YkA!;%`qjxKsz$$?Cl zuL=x$*v}|dXtAzB84Pk8aj9{7*gwFshrP>nqX=KX02C56EYJ54-Zk&0R_Nl=@iDTt z;V+REi47=6Su})Pohq2<4K)AprZ&C(4&Vvc-^B&XhA+^X_O9Yn@Ze3>s!x7_Py6*l z>Ae_F9zzMQ{aVr?!-F)kQrd^>_1_WlaTkD*te(DD`c>rPRQ)j11RCk*dit4+F)j>A z#02n&BXt(lIUVoE2dfhH4f#V5OJ@Fc8Ts#y%AcB%9~+rpi}%e2Kz=P+8!t-GR$=^D z*s5{V)~wec2u|M?)N->)mysAv;ZL3Gvw!0xt%>8!;;W+pYg1x;xp%pJdYA&TYpSSYnL~ByZAaF-}K8Du-ns-z4rKSVnvK4n z6$BaZikROd+fXaN?UvW+dbAsmjhN;#4~0P5v5WSbA0P6zwR$MWoVW%PoB!@>u3RvzP$%_`$%IdyQ)+%5)TU~}A?fdW*-Udx(y)a zdiXH98!s#g!9qj(=0+qM+PB`03!VPPc8#H?(c?REyR1kP44WHretQSz(=!DDt~x5sSQtKDc7Y=0cDwL}&aUdRx)s zgi}~yEs(cbz#`T>=ZWE0#3k_qn8_MHcPqg(Ja7!EzLHibl--ulFAN2EXU2TM7(@(W z-(=`zYW{(rKaJ0qo`C8b{nwF~HPV-411NEnDt(Rry69$V8*(d! zRQOY+@B~OoFYk|VQL}EE%NYV+k;e&7gbO3`IPolTp!JxR;YT@>df~g{qztwrJ)3`y z64b5ip9XF!;pNwV^(^P1Z8OzQ3bO{wcQG8W9c?L|iMn`mNGX2LK?O}ZVg)6aau@Lr zWyB#~w)nGHH^Lf&LBehs988||Y!;ZXVw-L@G~AG-=&)n0*@JhcH0%Qm9HHAB42bWv z2ulp@za;hy?R!CtwnNLppIv8oXblAe?OUn+Nt-7a+7D^>XkQJVMjpKnj;XDgSk@|T z{U~6^T(TY4RSI8*_91#zO-Dy1neizt7|Uy%{#>Z*?F#ah^sP%09k8S7E13Vu0ci`= z+%(#t9wyHc7t(h^&LE3_J%Vp1+^kD&6-+YN`BOWS8z(MF(wnvg6&%j_baptLDS zMN3LscuT6KV7KOkJ8dW|>1Lnh<*<5IqAa!qa-_|qnh=L73*00KR32<~P%qAule$&txrrF2Va~o2geAS{_EXhVo;F z;&r^4Pz#?(+0Q=a`GFwF6t(N`3_+=c;5Tq7$P2Do68$BqHtJ16qdfQqy|pDG&r%Yc z-rW5xWz|_PbJwt@S9#V-z6TqPScO37yNKH`i`fNlOMQcLr)F(Xv+(Go)<@~v)g*;+ zbT4@`nSVR)Tftmq4Q34c1eOQR>ud5>B8RuvQR;i*8LQvM^!ac$??Ei&Z6;f2JL1F=cwtY@G4i`t;%pXaGZ_Flb)~D0 z?!tV{J2@9lt*#8;_F+E0Bn^N1;=B4ibLD%;3NnnDO=v!RJD8XzVX`S3A#iSg1bj1% z+v*-p4V8moPkvG^_3d*tV0i8U7&$D>BxdOO1U=~aRvJBNs{^7U4c|^+X5Y(K*o7ws zO&E&tAa)F*^QX`*wDu3k=CqG6;!#W>N;1#&S)Z7^nvY#6Xzi`k+B=KS(wrmS^@j55 zGv{An!^qHNGd?Zj z7tX%w7eXJLz)vR*oq$)h%FZhP*XRqD(5E{3tYwu_oT}iR<*lUNF8_43#B5%ImhCB9 zDMBlrzD{7{AIGHC_c2t;!5^X4#648IZ7lEJT_bT25KaI!2latl)Pl4h;RHJjZ!l3(&+Tk=52W7XlYwQ0$*U|69g-~lX8W?H06tZJt6*x z6lh{Td;`v?iyz`8o$Or>kbqJ!f*5#Ao7AAh1LLt$gY; zng10zpCHmV++t|gsc?-t<#R8%6P54Bkk5}iycI~25+r$deu)M_lP~2euI>v_tP$dy z0(`-gPXf-E(3bhyM^|Q5uIcRV6o$IHKIT8w;cG36tlJ(YZbhsG1R zp2^})DH4gC>eC+VIFl{E+R=BZ_Eoe&9{T~bfEHIIw?1wE&l35#$1Ml-@*<4@IZ-Q}~-18#khWm7D_2Hvh?HYeOL*JK#jxltyEH9-AcW2R5 z3~2cGWT|aRnQ*s;DD2TtZX}rt7{39|C-L_a{QUrb+wd2`UkHC2@F&mTdQ6)C&@o&Y zt_;`XxE{xK0M`LrPvUwK*CAYoa2>{VII81EF=z+0L#jCBI5GV${uus-33dhK*xR*@ zI8MJ;xK~p^V}?W^jzrmLVAgQ7sdQLv1Z%1h@<03J7sJ52>M>x6pL!dTHsThr5^Zu? zX_Fb$CXGMjZ9;{&1#tfZ{KfFsR;j)GU}S+7n>Pvc-?{XDl?IwTf8?TOpEG za$8zCZ~zX~Hv5}4{C8?u!vnPTl2!w-O(3Wce^&g>#NQnJmEmtb{yg}DtP3G)9QwZ% z=h;7m!ydNcsKtkHSj1LLML$IOI9&E2J+3%J;vu|>wpE9#F0*YE8La`l4fu=T?=ga% zXq!qcB#_n?{2AP)wF7uV86_>F?c_MRnX6W=(1&AssbaWM#zFvWlvWK0D@1vvUcO^k zzHK;uba^jEw@a5jsKeKYm5P{i@HEO-Qxz#V+*2`h@sDt_lMoN;4Mim@LI&(YBu%(4+l=JHFl&U#}-xjPdoTFEXQ28Sh{4D&gZL zwapvF%V9)<<9E6rheSc2#ujt*JqrTEw;vXID&Bnn={#(UE;?-MkSdPK6=td87USkPr$XS*mz5TCvZG+<0+($(zfTg>T;@gf|Wgfs2yOBCk9wX;rE9kC79A<%&Ja zdlj}^wZkOvD$%w`&$O7$2Rtr*Z=e7fJq|08051Di_xrJTuRGZ%BB)y;*0e1 zN>K`m;f;D>gjp0 zPKppbKx2zifX2YH+D{;=?+9p!IGqnRsO_;w~l7cm7Oh~4a>avY7nGenPk{HxiDbE>x67VyT!=t9>yxg& z4=6Y8>d`y~f6m^4xbO)?G6EEy;KaE2U|0Cn|f=&rAHE|pR+Dw*s{NJ`*+ z7BpnwbwlF->lf*;l1T9plKy<^+|e?Si|E%t5C4HTS?S>~yz-^6Bsy-P&2F-VVR74d`bajO0?N(WeOx z%6srZ26Q)EjJUjtAPJ5ykn_n?0Gy|k!`YLA6kj&*uP>{8YLQXt$)`ZoEO`lnZtTR& zU9e!@JUYKeyD<1SWSAEQCfZ_#9S0DAe_$Njd9d%3rzZ4zKY5Dpf$s9_eMJ{TzEvwB zz#wg735KsVBb?I)Z}98bH8>0(R&W^cZUf!I@B;K0ynh;^$7MYg!!S2-hVdN?T!0hyx@PhyW(1J!`KPn<2rla#ZJ=|OkSsXVl78Qw84voJ5KC#q$Bi`he=->RbEy@I3228^aB5+YoO zqRTJ~vIqv(_S$mx5Z29msb#CEW$#>$zLLxCfD-bSR2(__&O_W$z_uMrv?As|;jE6a z5UO;cP6PUZYMgjGU>-QUH*P-_EM#wg9Xd__dIXXqy9LjX_}H%gd4rYuaNrs@+kuvH z%ZJ$}y0S|AVrv}Q0#h=rv5nb))L$T17TS9Pc}^C9H(MrcDwHO%- zsIur7UQ-}V0Co(r?LEOum>Vb+?3@tx-a<|Sx@x~3G&ll!0tR-T1B5O&>%fHPGHK(m zn_Wp3E{$(w2>rhUcsDcTBv}q0w|LyFWfdAOz6?xX!j1t$I@7CD80VI5)Cb;!gFq4@ zF(w6%UJESOuOHJ>aSS*2_h)NkK#5=~T5(i~r=0O6B7}kPUbV(SF1h)n_V9^p!qWk%e} zLSHBDOBadj3OHtVW&w!3tZy;oZ{NSE(tp%;Xz8gF;i0UxbEEUeh}Q}jS>H2(eVqXB zws!{#d+_EDl&HYTo<`8I3`t{p1ZpF^XD2T@2{Qr%6C5fH4x!IK2IxHkb@RR^VBlPW zXao;KL~(o#wzzNjHp$0=_MV_b^0jR6UP{u-1O0loj0n7P8D=g{Ae;Sxx(_zD+*L5aQcq%a#Xn%}>D7n737=gJwX%1k&;PlSWQu=kpT7goXhLkTm@Dr=0|ac?FJIulrNL`Ia}V0* z47E=u+NYqr+*>*;_(4N|0h)x|awD;ga0Yvu(9=!62=(;cZb);bD1R!gJZ2k&(o8E2 z>H~$0@F*xbcJ_~o1m5+Sf(z=g;T-ZlOcu~+-%sYDJMb!1{e!d!y9RrqU&}B!vcDI& z1`%xFD@4FckmWMGMuYJL`YF277#QFQQt((m4!VX9l{UVM+1$L~er~i!8psAv+C^ZF z5^OS6PZ9%KB!h~LBB(#h>44FA2Gpige~m&tnW-BU@;Sk8NgG8EyF{hc!@AM_G6pV2 zC&Dkihs{Eu2>aowWmQl*1o$Iq+Pg%hiHC()^Eb0kXX*3PSKxZ z@7|azcmIrX{FrYuZ9?&7KeNK;qtH~p&MjR{dF<1T=^5Gn$xG|IY=>STxc%8rPhO%W{tFRh@=$Y_eFYWkij;zZK55)t}rT~TW zS<)<2pVxf)C@M7Vr+LgSHg-AIxUVht(}YqsyA8y}uO?iq1`3^wl!GGY&pxpBvgWe~ zfcu`w^8OinI!a3ATNUe&t5@1eD& z*Qh;#wS-A^s1N6}X&izXrl-FbeF7#mXkq#!SpQiv4L%yIu+|m=uJ3;WrosrllORnv zqcp!c24Kj+IzcY)4hLaR)Hd=vlt6LU$oHf)yPvRvCmJA1Ar4Ah(16eJ^!{pcP@T^@>7=&7fOOsl2~m=po6>=P{Fpd8*C z*+BH0NA{cVf}Ae)8cI>a0Yw!@L7iHh405mHQmsSi1Ca^+K3&)bjCg29{0$!xMKIJSZt8DW?md65_4q=z_ccxz8;^x! zIP8wfXfwUU@#t^1;rG<1(R<_mMrq>^%({G7?s>G~R2*xF-$i@PIE>-kqZm19VRrDr zAMM{Cg-VpaD8KV4K64$02xjz5dBZRKCgjoxwMbe+QrU=^*McP{!y8Wu_b+PFwZ_*i z0GQ?;q9VNHBuHp}Ukh`D&ci=QFkNQHtJR1kyJ0HScABE^);l<|> z%LTJvWVj%bw)K{m&eLtomk*bh7Pd8=;mj_S78_^i+HjC9mT)TcwTLs~#q2qN@#ED! z-LgkdowgmR^%=1e4y+!@ZD!jk6IjJZeFONk8L-YnN-an0FQZcIZX_V;`&O)M#*kER zk+2IB-zZF~kg3*ogwOY^9FkU^lvWPgKY=3s;yS>cRL_TKP^7Eys3?*hisVUZ(l79_ zFmyN4q)&qvv%4~D4PDD?^%uzta6YzdxId?9f_?8=1L@L~`=Mrhz+S*glxmot>h607 zl4WDYV&ect|4hI*k>)1ym9gUem^uI%e8ypFW>#Y&YuL%kGP4#cS&%4AEbW!AZ@Lr6 za@@GtP#!18&_ZYT z{x9a<20p6dYW&}1H^~AEcYz>Lf_+ltUf!Gvf6N;Qa8M5?i+cGjgDE0Q2-_V+z=ck_bw<@f*m z-}3q7?!7Z-X3m_MIdkUBnKO3Lv4_tuIx0y|U)EWsZtY8T8nJD~IXqoaFHdYs<$h%+ z%M*l>W$=}I(@l4?3*^^DPn2wp5nika7GIwwuB zr$13)A`yi4advT*ySX|;#(m0S zHXE~27H8)-X)R;uwc1Y^!F$(!1W;sdO2)(084eh({D2HK)xK8W{B;ON8mnnSd~qfN zqOI6ZuW)f%T&u&>Tq&>?f$$1X9PAR?iSt!}i_KNNBErClptY z%161qb3Q+8wYN-Ua?W8`ghMk32|rZGGmw@e`ZjN1OfJ8{uS7y6gp$K;$R#3#oy%gz zJiXGY`M|}BvZkA}plxX)#Yqo~`K?Lv?uunt!{sGz>%5&ZZH>TIDZma%VOyn)$}IxO z;WGcZjOJ3=GFF=zC4|U^FI?p4{qj}c(ywrPQxt9*)~i+mi>IA3Y+$b!RYv~rR;m|2 z=v&0Bh}OdAbvvmjf`{m4y$Rt=y>n{7f&PH%$yMjcJYIPdXA-6Fa+UJ>c=EwMGz@EQlb{{&Uj6-iRH-OnoS%oQM+it0Z}uPQ3o+J7#wxB z6QzD5{k&*jc>L>7%6c^(p6ObM{5qGl&RTt+`O3A!_X)Ha4Z8tkz6lSP3T=@% z<^p7y%7XE?^AQ}u{<#FcHp30`k>K4De8!e`eyG&Q@S?+cX&OY*amL$ekVsKGx5-># zqa&G8UNsqDCc}O9%++*TePYolSkZ0{CEj*5F25qirl`DS4M?}zgHTYHNU78KCCxB_ zEc8esZ{ihM@OA0#ar20Jfw3Mp533*O--Bu^zmO>@Eq(>Cf)%eDp}+D{?Jlb>v}-!z zm#M9rg>bB#lKo`LrJ9m#N7v1|(DWuYoQliTSAnd!wMiyg2(meSMjmc0rfeKDqo8(V zaqOe~w{7zU`eF=bQPEO2>vD5Ci7t{vP&TFLNGuJ=jA9Z_srgjmvxpxd@ux->tk@HD zcda;L>`D(89fsHwHNx@r9(637L^soE_5|=_6!EQGgE^1gW`tz+nIv-3U1{^JJw1g;d~5}_A@5w@brPv)LgYTNU`R@F zXtjsit<4>&_ESd?Tw=o#A5ZZSF7ie0(;{DFRs4A^S0VDPD(0?w)b%Y7ccColrr^AG z`%q+Fyiek@-@NrTVeal$cT1!pbgc$!Ce$8axC zbsLH(5oQd%TU%11p3-})2&X-_Hc56VX##iGsCxbDy5XF(_;5)dJAH?I6zJfMzVr2O zJWXey%V`9=T;#twfic3}OkZG( z@H(R*i>QKW!Y_=59gyDGp7x4-Y#+XdpAtUzC4OI$-^zk%P5hc;h~%QrWo6fJEImz_OQ|Yn%<}OKKFBr550)~LY=b1@cb)u_@ooH?V+mNzi_UnB#KhNU zmc~X9tiQ_2_?FCtp_Qr6khaJ!cCGc<*Q(vit5ezhI406Vctv;3=xWb$`(*-#62LBe z8b6voORwQBlGF z|E4no?KNj`gCO#Cpnc=3D`U!@=Y>PK=ZQ4#&Tv{iu-_bxiF=y# z9plmF*f9B!j$k~(_2jXqtG!k8Wl~%^M-&YO(+&$kE~rjd#Y|YTR!syAQ#&y^ji*U` zk`=-gTxtagTY#Uz#DN0LTU905r4mYDiew_3Le-LbP`XKpbRH+2uc}efy>z8cw^srs z9V#?cPh-L;lc|}FwXWd^pi*!Pd=@R&l#&$x)|_&%OUvascAl8?oyXhD#qu_pH;)dR z!rRvg+d7q(wzTOypIjm!Gk6PY;6mPFMG`ibw+*~GY)^d`5~#bsE!@KE+Ij?9pqfhM z`|Up_TuEw^z2uJHg^n48b)@?b*|~o+CVO)Cwj|?5T1P!^&EU=a=~T1)@m1HF}~!WDxOp7)Ove*ct&IfD}B^e5aQrMK*mtXg(Rc*~Bb zq?SPCl`rW!h)!k^Rb?JLT!zVrmhb!}h!s9|VoDO*Gwj^Z zv0UmVG!M+@@kK}M&J7}5G-ky#T&Y@c7ClZj#s?ZTl*@7QjV0>CONbODD?CsR@T$f! zqGMrq#RG$kMb+>v$QffcAjWLX5p`zkk1&ZnN>@_9xLF`;GE~YaAYWA<|4_a+<|yoq z-bDv6g8|$7C$T~yNrfQ=`dySX@?e`){Z=iDQhTner8k5yXv#7pa-BfIw#uqmxwgqAfj$$INiv^0Lx+JJ7Pv zY&3iqI6~AKN|P)QjjcqGr%eape#y+G33AFyN>yhoOC~fc>Pp~~S*A+}bviCZxy^GV zzq5%ak^3yCpy0?Pa9{Zej)dYfHr~eg$ZHQlWp(H=p-78;vr5G0H)$P2qMsr%(Hy@A zh?S)nR4((WqZCykgmL%<`Zjim#EJ^*oJIcTXh!njYo&2VI{%CDM}J3I4v&>nDvjC< z{+AF`TTW2zDuV8)EaY)}36FI*^4PSRh+7D&y@RmY^@P>du8urY2caU*%kwI8t4*0T zJz~eD(Z~+h90LtjLt;MEBHDu@Z~jYpFIn#y@`Dl~|Fb+4`iA`2`-i=0UTvFx`xWcG z+VCQUjm_x1kIPC+)VXva1ZYy*ixh?k>+Ka%YxjY?{o!RtaTfO$8}7Dw6fGP8pF9p= ztTgbdISmtuW^8PZBq?!(xJ6z!0i<4r;g>&;_1QH`l`Ns15@Kg0f&KP=j3+pq48Cri zsZC9!ipQjiqF|RUSRv{gdRe7$UNank0qcrQl*VK)a3+&C%F&tQ<;R`hgvn8%w5xUV z5vF!+?;uL=>&YU?gzzF#im?KMFJfxxBg^eQh}Ai+l1Cr8E^j~ny&lB^N=dW*_;RYo zvSWp}zSdJmbZxq^Yppltw%1~oc0}DkCQdSkhnShco3UKmlonX;*_ft&M?tdKaO17l zy~nEsolRJb%r$xlrMMGk(2fx zrw9G@C(e>zG@EDhYmT)xWaFJn-AQU$fH(T!-gYycRHQKfIH`ql6I#WR~!3Z*vs z#UuPxUVG{#wr_;{C3kaDGGM8|IqsqAt0YyUcxZ#nD_pHbao46&j7aDVh1r}au(Kko zJ)yTZ<)d(y18o@CE%L_i%(l}@Sc$sD{A-o70*4t7UBJQb(A%|#V;(X}iL(?e>JDUV z{ME|qHy4Sii)Y8ZVo2s=!c@zBLgeqz5VC=I$Z%Rv?UI*8J#n>>7nKhX1&aM-xKUvB z+39`giW-H2mm|R1Z=r;y%IJ!$oAU0b9Un3VmdF@b;4TxdK!glXc%(BYWf9jbEfXpBWCJ8oiS5) z>0GO3pUXT`=Jj9}6jqdL}v5(Hpog>^qAZSz9}fBbCfi9mGkFBuK8=$y{Y zA`RF&yD+>Bykz>iqzZLL!wd<6V7^e(1`pQoK6oyR)6yrs!P!i-@%341*bf}$W;Fbb zG^H%{9!>_lM}R#q3+tFgniHbLgle>Wdh}(9s*znF%y%0m1m~-kzGOdh^7(aN052}q zd=7A#k_cult2WbPgzk}y(6t9QT5aC)*dqnyS>|-LE|E6)We~bG`Ef0o2$YkNTBVUe zKlo)Q!&rful>|MXbQdQ-vZbCA<%@ER;~89RxSU}w!dEO!ZDTa_&up;~i3v|FB^)v4 zP9`&9F6~1834Fly9r6a#5E57+a9n1YFLJ|3tsbItmdWNL)Gb%V$T-N;^Me!Sn^SS1 zSj9-XS$Q=uLTI~WQMXR>OtTtUAK zAieo32Lve2s>u;K%XF8;+;KLz+uI4pG*JxM%hWG%TLP2Oj)E9{g@m*1AQ&(3>0CYq z2kV9NAXNsIj@OYmvG7@ni%HX4Kg+GV)*%|MTq#sr){Z*fnK#uTz9RZdeFHh7AS0Mp zKTA)26XRwsxb$uQQeK%lM&9iEBE5!eGO%m1tXiK7N%3rIXq(xxVI?{r(8?)SGhPF6 zcwY}ZB2d)5_WIJmWgF))x7A*0&-2+!{BTk%Nar7e^{3a}<#m}CM3#3RcNdyxQ#fOQ zTx9P!vHc8%)OOm3a=;2#b5Yh9NhuPg_*Jg|Ri*NB- zrosZ=z}OKMs#c*2RoBU58IQ!gdo{0C4ZdTNb8nfM#>f-4kgI;XPY}wgW~nQz!Kc2X zE6H({Z1p60)90Rj4L8xFxI^=c9Q6nILci#-3RcjsL>0z@ z(0(JMW026UM@;jWkefC9&7dn$ty<$Qy)7Pi3Jtf^+#&#B!r$24j1EN&3 zLlV6Zz?j!rkHn{SFjVYm4YHZ@2JH2$EuvwN?Z~lgPf29_4XtDF+8nxMO?K|CDU2Gd zw>FZ5zBdd*ljY7VmQ|HQ6g!%AIw}YQ_lkai%^fe|C`uC!(I<^&&}IA|6fH}FFDg3N zSMJBURS^+sDPHxkR6Gvmj@8_5m~s0B1D%C~_JU@d{)>Ami=U zaIKBmBJ~i8jiBmsdf6JT=@z~IELb7d{MjV=#)aalYY^o)P_nHY$}!_J2HT2nn4ZFt zGCnVicipC7u0u?Fybv>fAbhV-ze;M!-k5v~Ny3{}x8A#ljy9+D-UWQmX)CT;Uc#R5 zaAllL)*`dU*Hy*G+)pOSc^h31XsHjuPK>YFKnWM$MoW6Ph#@lX@pZSU!bQX;Q?RUc zslQK_={`OWT*>~89O97x)$jBRbS-y`-yIbdj_kiBW3ydTcyUspb@?**1qvOq%sd>5 zF#>e+jhz5gi@f{PFy~$L6V^=Kqk{`Xt!|$C`7t^=sew##21fTvIZ>k1IeN+QA_B+T zWuDyt7Jb8GNHt5`F*2%z`*69y=Z3>it_3T(zQAZ$Nrmlc()X)2(&x)@@VZ)lxAvfu z)>h8}x@LMdNQ+GX;XQQqWczuEEo+nF8nv4!33s5T3dreC`(E09z$yi;UW~ zG)dU_8mGy0J#<=!acoVDaHC-#1a;U&iLgtf;aLLIZ|HOJX_8z$ffrB*Kx3*N(%(|5 zE=h&-x1hCED{)P}5s!6Y>fLNnF9&a~+W0zWdz}nl1psPpO|s?r$+7g|QYhq%rKy9* z(j!h1avCRN=`I-m;IYIU5X(@xgo~|?jFb&BQrtSBwW1f_*dLuyW3jE{&MhRnX%;N-BHPZLv zV;;f zvfK1K&X$KBF*y>7O6|dMP5V2nrj(Yh-NF-tS({U>-6>@A7ppmiM2EX}OVbA*ue6Df z{9hroRq}t4{C9HmQLNDs@z4RHX+6=F@f~PryXm6m;E(-Q8CDo_tRoxL3iIFZcB1aFq}uP~y&IW>J+Wua`f`;W5ybhf2z0NVzr*EaLDRi9)oydQ z1=`jaNTEH-7J)(*gQrF2`3Wu5p=Kg9cyaT|)RM^5@2i^-_$#&w5;B35@r9*htEWsY z&=DG?B5#H0;uE5L84k{J)Vs`y2yZG^FBp6}hpht5R#sYd7AGZex+>=xkjM_o2v8I0 zuTu>lYNUg@ou#Roz(PldZ+Nthd9sZwqLYmfJIbp@+Df z+;nj+(aS2T`bwLfh{ERKN1+%WHwShno`A*qXDx^4rAl2UB7 z;u@s0|3K)Q_QBBG=0(-Ml?7>yP%bz|sydI{g?$^;Dtb2=s5{sd#ag&Z|E$6cB9>XE zsF|xmT}zmAj%v`}^wt@$lf;@MK21JU*C!ekeKlPARHsK~bpB`xP?g1+M}ZxB1}W3Ix7Q}k(1vs0vFmbqh|5_XpydJfy~HxNCZ z=2-+gE(?0AhpJIB+EfYJ9mP7lyYTVa5oDCKK*V z5fKf^3?P#P?k79wDSev=TZ9nyGVjD?zOMZf@m_>~C_?(QYiOBh1MX4MhYzyQS6fHWAQOhQziQ#C*yLhlkwmLZk`Z@kV|&mh|>2l|suE{Y+p4VXx; z$F#24SMlUMoX@-)61KU7C0dJpIaqK+#cTAFg~8$4F>{+fP96IbrXTD*o)%u|c@oQk z`vAuQiPg~?9wCPvIELKuk+mn4cOcl%{;7{l%*pD#JxIY#IanC@)bI6sVW88*iGfdj zUzCVchSl<1dF?9p$;4Z3G}KA%Y@f`E%unIa>*B1u?yCYPIa9l7d^wYgPfdSF(-meB zTV(CYp;WOvxeMJX>e1jh>qIXHYn!c(3G7gRme$;n?)E$+hvQ;tJ65w2K3?d_33A0; zY3Wk61(HtOEqZL$`I9Jh^CEAfH^y}>^U7uOSBl$Vf}nT zKM(R$7HpzmrzAD=Rf`W=@#k3Jlxv6645zxCPZN)h&kjAsi*@7bze}6GfD{+#3hp(w zpO(Kjyi>Gj;hjhI^Er7wqkq#a)MV|${oCvli0yYd2PWld>NrfiMApF?~Q(|@7)s( z^}VM=@8Z2)!$^mUR`WSzrzDB4;*~SA7nqY#t~$+NU*7}gCo=T55xJr-7f+WCj9y5H zt#SQY6Fw(jip=%4hxK=KlmI^=HFHJNlNp~gIAe*GjNeCqN>Cwsh<7_AF$1%d@96VH zN#(n*3S#tB6)d*8ZwqEw-Rq6e<3u@?5@9U*5RXc0)@|lkcUK~q4MnHTq8o^Gh~$sn z*7u$hMSLZDx$ELmbAsFrG1bgM5=*3qSc&x0b>`jq4$vhI&=W$zcr6X6J4ST019X$o zFvNMg)o6&LjwSayjD}C0H`8c{Id2<`hWDJe2Z_sz?YZ{jD{wjR(GlKfJ{8WO_rJ+#0h+`f`4xwcG4fQA!O~&Y13Uz zGIDyjLybafr*5vuwjPSnM|H#7I(ZF;WJnm12g$unHw`OdSM(^KUAl8l5z2-35a{HT z6Mc^N{x~xu5pL@eEJkYD^Fl7V!*QKM&VcSFMH&rWP(?Z$wq?FpM}{QOdP4AU*%~R7 zCg02fW^+2~_lDDWbC?LeZ<)~=;7uZZ2UCiR;~M<}J+3#lM`NOoSCF|2{2_{fy7HQh zhT}{ULZp`fFt)qFE&q6N61{Cg`UGnVJ;HnN%Er(>ej_1aT_v{uX$}334_ExDUyx@+ z$CpGxLe3J^^li%3jwg)pHW}oxjLNW%b0C~LhPO!_qvAKu78IN!smSFlNm;JuJ5-fk zZanV_M}#iHQ4iyQ0fG{LIxe{wVuk#vCZ__MKdSkR%FxR}P&?y4$n&?NaIzja3fZ1-l z)MK@HqkrMU0w~d0No9oOyMMd~ zvz>ek9a;s`jpyg|#5~6KIXw@@#wOw*bI|=T6X|OXR3bPyj&GR z_18F2BziFWklk&j=D(ewY>jU~A34L)47*EnxxxL#ZX4EOrk|zf-pIC-j00ynitA~b zQ+(+H5xmgWV}QfGNWC{voYg$VI#CdQ^g$s>w|!_+x?5AZam3=-&PYfy%4;o7pvP!& zxT@1WL19%H_A7O`uvi?|gWA^5)|4rQu}d`{T-e74ZOsk)2YhVEl1gj3E0|tbi0RWO zc{+N3w^M+%Q+N&Z*L${_*&@Z}{gkB_dg1B|VP~rt&e49YoS}JoQBN6E<>U!dx#NLYF zIOok{jw&y$p5nl%QBDrl&V#_aOfz(R)1CHC;d3k%dB!919K?2${Pqzd&>fXU1P4a4 zGzHtp=f}56j5C)yQ>m&c;+)G)0dR(utD^QNs0|{*o#L_44)x0tDE$QBiiF^|F(-j^ z@N;!v4j6T}c0NZYE>3W6lNU8^8-+Zf!zye?Y}^iSl3IwDtPAXjO!c-Fd+qks zuK74J|F71Gk?TiP4`0sm)APF*h+EN;CZ}nuM^ps%jBA?MjJqBj2mUYo@PS+Uj`NnV zIY3y8YD@-Ac7l8f#hC(+IC|KnVXwl;x$Nnx=lBgz>9>h=&M0JJi1cG(2A)w6PgE?B zWHt06B-3j$3|#Rbmdla(9JS^Ycx_wnz{`$*;?#oUZ>k>HfexqABc3bJ{;_8t5sy=1 z^po&76)wu;km<5O%f>4?=&(UfQ#NLaf!|0VF_!;wr!3fI@p-nyCyqfRBIou+rg6M3 zhT5ZG#gWSJ+)cgs;h8^wfW?Ej`0#Tuf05rMRLD^aj&#*Ry`O z!d5r#0LAkAY)4q_mRB9f$G%fC!h;76Y|`XrHqQL_n&Z@Bo#<>KpZuve=#NhJ96K1e zC4l)U_YVwfGPBqfzymBdE5FwDF`gvm=KAat& zz2>p5PwdXFn>doQhnUQ+_uc!~jNqbj|9YHNafz>QUCLrEg-1ue+wYk3dt|d)4EcQ+ z@>d!k;g>t|crHk~9>fY?Z1?B+<&h(gDe@3I{dr=iKTquR=dDg!=(i6v&-d#+bnjp* zeCC}QvPrey`eSW)*|ES&!BKfHA&0Nky-QRA_OfHxaTK|+o#!|%F750ZydNI>^80IiH~`K zxcH^A-K!l4zG<~)&I#y*8xOAJR0=8jBUfFY^fTB*GHa67Tr)&PoA`Vc=vXs8ox#XW zG0%*6KAp~6czV@i*j~k_SZ!JA#YWhNhylK0t2cM!YoN_mrIo88QRK%yw&SJt_&wxZ zwo6hwcRh`^HhEHl!^`6b%GIxbNw+(PnX1)W-z%H!8xL#9Rob?5h(Ma|lK6rC`1e;{ z-=`EqhbP&_$5c^-*70YJhs*tH7#5fqY1AAMqDiID#((1|4C_p_hr{uXg6+mj1$#8+ zk*ONtf-}*^x5aL+&Qc$9`iM<#JZTte5))lgT^?JCF1mu=DCgb_&NL@$Vw9`r?sEuX zjxARmTqj?lK4L@FNrfeJY*=_!jD7zXCF<0zi>pAkg>28GtMse;$|6qHtXVE|bcs4! zBIz66>XGW&X%rT}^c3Gr!=-O*k>>r{-c0u%oCGfO=9T#Ht4SAIGsJ4j#0gWZ&kwA1 zlnq+1J=^av&)&Sdd{%2u^GAmL>aBa_M$X9nDRY^RICWuBV@S0c3-g}+(S#Mu^Q-R~{!=R&+O?^i*FFHhl|L2HshhYQN)N z)a|4qdEgB~-Uu8D;{VNO-{}e5=`{npG|ne;){eDbKJa1J8)pT<7n4QvEJ5nx*cp)p z9XkAJ2V05K_}&Scwy^f3^`rDYwFJ3F?UE-?0gO6 zhpYpjDm;Auk5ufy2ayJi_Yn5Od+;4GcMA4JopG-b`h@r`J8l&&WHcP)!ycYVhq9*$ zQ>k(la<$HThI_v6S>ZROOXF`i@j6K&?;#~#{b?6+f2Ab09&eN;b@C;&cm5m)V7|ZZ zt~q#+vu^bC>JV!K#%MQ}!kt$8;&14n`09RUrCp)gPB#}E>E`wr>F;@aA`3?zT^gC6 z3G@Eu*T7o4$ct;xK$^g=^H^W^X6n(g)h9JVpDy9ynS!FW+TG&k4VJ1|ET;oI&8b!s z?irZh35(e9< zv7ydkOHc+THb(n&4E~?YQ8@hWD@J&H?0;E{z47p@@Fq_@O^UFK{gyXwx58z$ytZ^H zJ%CFjn4|CXbJteP?QWXGsmK#{%dJg%6gNzfQB40Y>b@>q=nWTokjt(%k8#1@Nj>>A z|HW|M<}zn zC+z3S;4IbUa7?K}!y>?cKS35lI^PR+X3&PDH1YXzV zz{Q(+OW|l^n?Eq@mrmhm$Lu9NY^q)r_*i`W+Y`cAxvuCjzPSv+(ig zAix`}r}=~j9@uT2xME#;^%WJoa#vwsmDil(@V65=YtN9;*d1Azq8Z$S!r;ykc5!-a z0^T+UMn3Z3DLjr7D62eSnB5YOUF!|sCFdCPUP)QhBTm$fZ$1GzM3_M)ihGts7GBJ@ zo@TPEuo{kJ`YpjDR?SC4Cc0uS_VfFl_|Wlk^_ZKcOtv6N--c9I=^Dp!a&sY}b3qRrsyRIUA0V zYJB<%Ty!kr``ErqNEyCc({}++Z(?SHtm#SSobIte2(oJC{L1q*Slxk-ggF;zvc4i@ zC63B>42ZnT6G@PD@c^>oUf&&_o5e)}2vf;J)8gG(Gk`^SEy#4I39GT1$6D`oGC|Wj zORus{%vAbx-W&5b98? zB{Ph##Di;8;GkJ+kC%-90nA&#yk%Y=^I3Oec-Wt^lav=HQVtmu_tu(DQjAfLAq?4g z4f3*Tm80H6M2t|EBUn|~3;bLQG{LEQdA_!Va{A-^xpqOaE+gbD#YP>Z z&AszNd*Pe7|GM^s#~zx8-1Bjw|1sP*A=9jsBi<>}k+1dyuJ)QYFqZTPsyWAgRR%a$ zhD@h7hF2V&cthjdF#o-VnQt#T%EW)xu-Ifqj{|nUo)R7Cvrg|dNP(jr&P6Udde#C@ zLQv?Y9IyQiPxvkm1=`;b#$Ys{CW0X)d*;>NFaVq?yqc#sf!9i>XAbLardKx7OKT?9 z)ePeb1l{!*H6INL*!`WfXUN9JxgsQK7v7s0nR_qBdYy7iMCg}kzo`~p?2;p%DR?U=tQ8-M_CZ;jzal3&xDYpe zFbW_2&_SV0qj0%;SH6pmIkn{GzGG7B*j~6!;`r+MnABpE;|k_f$*&r{QB-|spfM9# zh5_O=@i7u^y&%hN_0be6QRFLF?hB66o=nT_16&sOHz$}@4$t?UiqZ|IptMk<)F}ts z-c%t{{!cIKmV#2B(QpkfiELk1j}jHlCPcSI{n1Pa*uT?mJ<&-rP871zeH|$%^5`+X z?Us_NG~nWI+MV^iVrjBzHnUB2N(nk+;?+IpP=SLiN8e`Aw)(Hh~P24O4l2nOHkDO2Ld$mGYQyEfyYf z7a}^g<&XC1*ys?*PL7F`r?9aIhtb}W)}kSow-yb(p|xlj#xMt|4-Jqe=3j62EyfU9 z@ROi6)X;53e^jzXOdP}$!;s_py0;W_n0R%_K3+H%%MBEFivZ;klx{Uw(o`T;W|yhy z@{TegQx{?mb&UP(ZZ;#Z!2ga^t+n61u=W0g=J(SpTIWvT7PNQ}kE>s1gnzB_Aq1D!izoDdnv)^OVqnytWQ6HgGp^~X#vc!BjgWa(2GBwes9ChFGa z0o(%xNFKKHnfX*YQFwEGVNI9ZvvX zk^kD2%-I^m_B_Q+Y{#3e;Fk)PdCid}>T1DEdiI%dTJH3M8n2moyg4;!aQY$5>XN}!WVnT%Xx--5lUBwqOma6{*oL7kcS~z3>Iodi>=iF7~b;Z%Gnr9f>=?|^i zx~N3GP)YVci`gf}Ck(2NcP*8X>^wW*d#*}+`3KWiM9-$Z5_n>9s6SfB)^|Ts#kSgsXdafFd1Lpl;EMCTh0<;pXX z&9f~e=d|Tm2U~o+g|{8kPrY@rZ7L9fUexQO)!?D?zu3rihE8;?ALFFf;9)GJB9RwJ ztRDU$o6OrYT0;{_PQKHnv~Ar)RR&s(hVw~KTJ0^#Kd#noa_SMB9p5H6#Uldiyhn68 z^$~*~_wx*z-w7M2m^Y8CNv$qVq&5En2EOY#)h1( zQ5G@Db|>dWoBz=H1Dp~&{@t;p7V2s^K-WIlkfaoz)wp4alvFlSBtc{IoWuo zr9{1Tlhf2^+K!!PNJ_yzC^9#z-Pw4Gwo5NQx!8C>q&lOaS$|#-{DyV1*l75T{<`@t`Cmw4N2W& z6C?8|dHQX^2OM;ILqdd@uQwvd^+x2YZl@-b(eME+RJT);F1*u4j5*fUyIl4Z%&nk4 zew4#Hpl+w8Wq4Z;p{=?ompPs`#PFyzIJ{MtlETLvlYS(ybb<-i%NXEf@?o94J$Q|E z@~fCtoxEFiFs1V(I?OI|jEzk6r;zj~)s3mQ^r7F%SPO@wS62r1;PL>m(bg!~8eKag z4Th*T+}bH!g9b_m#5#Egrb_A3UU!PQ*vYSAE|tb?eADv4L8D;>Va7Kn5pSKmWz*Hx z$y+g#IC;Af8bwfo9QIB@1luY!ztM9r{tJhs9`>VxOZA1zE49C445ge7m=c}OJK_0n zR|Yh`oVnNIwKAMCC+4fpBZU)wRy-o84yvy=QD3L3)=sGvr_d}1vP&nFZfk_@mtOdc z4k%G)e8uU$-$-;{4G!n3t~7RO5C?^LNQO{l*i#V+3CqBANVrPLoYKfnVJVSq!cx>X zVb7XR8V#>g>p=+KfC$Ndf@slGYcYl8mjqU5^~+VBPBx=F$`btKilYU>|!a6i%3iqS9#x4Xwc1dyw~ zFwxu$J@cZaPUc^jwJPn;?qRYU)Zg<5)6(>wrFm^^+@M0!DYTy;|FD71TlIfq13k(? z_yiIDghVq4pLLl7@kw-eX`lpDV&0QJto|(dIPF$ZVKjV?yb@f*2#FmgCN6Z++4YTqWkO*Z(-RQzt(6izW(gJZ4k(_~e0wwW;L z|Is^we`aC`GUSEBm&Y}KoR3Oe{6DHU@tcTUSh+f?C8Eq|1sEY@`Qy47+Vqr1-vMRK z;Wxp)W%f+@d`0bE^%>`v*gtm|6boc$+Dz~rqv2P`GlR(ZrO`shc1IctKP2R;4D2=< zf&j{Nu*^ES);tYUyCG|a@*Hm5dmS;n<(SNGcN?Jvd}51g@4?>cy^J{r{$xi)-f6}v zd6&lv7a2{K`OTq&ww`BYWC4wj5c)vXC(07}t=kV|pTOqe0ko(XyUe`JnE%)hl$C zqhY?1YTn9ut%bvKq9UhY4n#=w9$pz#^BBqVWDr+WvbMg~*ltv>xUMp=KX{d~eeXPC zK3Dm7d0He3}7owR!srs`V!K$d9 za(z@TKp2F;mp~wqWk0%{2>ve-0a6{IC8Z`&NLb?#9Zn|J6Cwe-uBlFogyfA=lYa;j zto?DHEsS6YjKB!3Auj13`N2b)9Yj|W=1xe^BCSR74Hlm_FIvpcz(LLJVH$C+)@k_D zz)^D3i|DcWGPoir9|a6Tsx!%LglNJ;aJtgM- z_nWtyMS!%M(`438F}I@Ad=<(hW!KOIKAsmr#M&uMw;{O3d08F2HT13#Ix2l%Wc*K; z>nX!%I7Em8a))_t^>p23?tPI!J0!BWt>tp#@lJR1`|hv~ig6^rdT3mW>Tw;dM&$wD z8GcAh?^j4cRqa}7=%)U6I8G?uCBMj zIw-7zqJN+^2@)rgg`Ov9*FZvFo+R|ep?8uJDTKZsR|``AO-UjTcZj_1>&<_0$1eC< zd}wS^=pA#FZk0bJfR~mw|HY%ej^$N%}) zo2~>Qf~nX8>E2R|aQ%dqwE6_D4qbD-7BZ(h-QQtQiS8F1Z99ZYciI*A8P~o|DW1J0xqhN^3*v?HnoZmQ@&YMyP_i#J_@y38>kkFk<2s zH9^Yts7Rct!{I_DL zgmedR-Yd^b!p)f}jsC(VW>@51xjtf-sEjsedI?)>b|rV~>yKtLGxh6aO3PuuNCG%? z^Tfv-Mr-@Lq?0N7BpoKdsj(qV)Ln%f#Xhz<^dX?FAqmK7XbN5wc~oqSjA!=l-Xf!0)W=&2dHu(?r5M58Yow&c7Kr+gTYX6MBT#l@&3*Cr%AT4 zk)rY&BSAS5L`IGGrwh4a-qr^F;*zTFij_H3YzrMBpC5s7{@(NTyZw-aL>fj&DtCM2 zx*Y4|>Fa%U3rA4O{<_^cF~j=o^z{@wf-?5keUQ`WkGWf2uGxWC*X(wB$@S`qkn|GH znAeH+v*FKlOVI|{-COkSp7T}*$6K|xaecYHz6uqq7ZdRgluDe#SC0VPg0Glmhoog_epY)g|@NWsp+5i**-q9<6yR*fDl zGpydfo1+GTbN~{2+v@FMJC2>GLQj8W>;*}S$!fP8GqhX#_nmVF^jE!O##V)M5oI?D zVlhL-lAuLxr#0ExeH3J<7zU0z8mX+~atxiX)ih;hCwQ*;OMP7Z9lqMI8p!&1RKLsm z(%9a{)`ilPLqsKn8^XCFSdR-C68Qw_K^mEpjmWZ%Mnvb#D3s0lwZ4L7%DA_iBI;^B zB>Pu+i0rhTzeI#%nNj{`vB9=;^I1t^!C$k7z1OcXw~4E)jYB$ zYPW$}+Z<8;yVNag7gVQ*=lCLX{E_heS2Z{bzu3A|FMQKTSCOyO`h!B(cjvK&rzw{WW1 zlLgbHj~JoleUKL6BMXm<)p2KN7pBBd$uGk%7QQfI3Wz+N-MAW>6-h z7bil2IUb{-T$&+=QLpx)c&HF}1V%$Kfxm48H->|K@{=d5iEIb z-ozO!zOE7@gqw`3W;(8wO4NTg032RfRcgFF*Ai{*9_mh zFe|&UalvV_AlHrAC&-1~7oV*Ah@tw(Yn;+(Jt@$oXcOXF`QM>8aH z#ioGllHU{E5}U;ShnZ7<(y4B#+99b_Tf1zJp|Nq{vgGCtwqQHdWjKV#@b@VDXq*+R z{<|up?JC;RBmk_K7#zmnY&G30dNA(#X3cTO%<0Q9+^@3leTpywRu*KL*V*^(aK6U! zg)Qk76dZp>QmJ>=(u5WEy-yDUII|yMg9eB{Bl)TH{_vCZ9!c2bB%Djmh4#HK@O7bd z(GqnC0Q=s3ygy&ZBd@JQwdtVt#Mf{6ia*oDm-;2ItUe;UUgyisn7IMnLU3%s_XR7H zEuxio!r(4b_W@Q>5!uA$1723JuKL>UI`OJC($1i&!$1LNUSAQQf>k|u`jeaPlEDik z7<29TBCpw2re??|JLieb5(qg>x}2ERKZ z9khmMZ#9yIb$5@P;+`X0@A|t%<3ZL^;WWt-sD5+=4N=*M^e?E%VEO+HEsQ8+Q;8ko z%RoQB%$~yG^YhBt*=?3y$&5FyOcl|VSSnZGDXmv~I%CSKkg;#Kar-SkwtZDi!e+AG zVXpn_ujm?`&Rko(8aZtfb8WVILxNY|mY8twKt7WRH;)wJ!tTgx(tu33k>cBI?Nv>0 zpAPWTqQ_e^pzrRNg3Tj|Exu(~M{+MGP9QUwzXI>BKT}=vJ9zPFE5lQqE$O%SN&n++ zPNxY>KiAP=rc@bDjlFKaB*&}6DYIu67gw^)?p|PinBNq5*E~S98X_5;t?!eL{U%{p z;)n6cT>TiM#V+Csy-m2K%(UCtV<~V2hs>VM-Aibkr;RAT)c&|X9tRWYyQSbjinKsHRbK$q5*gFxV^)gE20-LUiv~alA)P|Y7}uH z1XGv0-pijA9}2AW;VNb7P=}D1P1=jf)GN+=Z}99gwVQX$2FfBc^tHt5*L>rUp+cN7 zWZ>k-ZaH3{G^?l@mpb>hLF;J$i7=T*-0MyPs1+}qXfSRYykwQ2S@Hq_I*m@TXjfU&!!Hq>d z%=9HHKe2wC`Z@UTCE(4`#;&3sq>xMr(6x)ruTE_&`ui$eP4twA;fMM`nTX9k$v$)r z*{io-5?+4+HHyXBHiS$Ph(uaG6rtnkV#tkSs=I(4K>I;#q=PZ$n3JstOh!E?dTCzb}} z8$7*ConW|P8xj8y1S_*#ob0eFy{-x|Hn_H`Ls-BVBxmiYCQ|eW0$(>BJ~3lf7gp!2 zEK}n7SS(tM2DxEntC)v`r-@BTq)|?g$ELIvdR$mRw-%-i4R7$a7UsHI3nvY2Ej)+M z>8*uRxjeoQJ8{z0H%ki6J?yJ2sCmU`7)l4Ui`pe`bUQA4I(~a2o&Zc_mj>+Jm}>X7 z6?MoY8@pccQIj<`P`%7v)DiJ%Yn5<{rHx#2A`fbeE*OB3I25b9F}E&>l6B*B&~tDa z>3$=yd(CS|i3KyILK`2ArQ7;VW`3+fzK%JAEq1H?QTo*j)HHR&Yk2waV zz+(nx5!#H$v6yjBb?yo$A@(7g-HpW_eI_MR>?=`|mN{LX>5{9q|;@ zbZq<&?#}xJ3n2G2ZGnTeSv)vQOwQ8l7JKSqYg&sv_1IFSRUenzj9TW4D=n+(Q`+ol zFtNK~Z^1cC3s)ecCvck@o~7*^I(Uh6-F;I^!We z$2#dY?!Se%xNh+Hm`+N<&VD4lT0EF1ItpT}8hwy?L3^mw*v|ryizD~x<~YNurDviM z@qw$HJ;H3QtuRfuaQB)&;-F{dH|U=F(2=LUSIlZR?nYWqw+=4U@ z*8;7Zz-ny@xkc_(44!}!D5?sKm*8EwugnCnc2^p!~Ca!2S9 z%x-49%p`&}eYJa4xTYg8v#=)BUsG;(HNT&#jd|Ry1zEwl3F{$byM=crCLOn|662X0 z&r6sPrNiJ7?U%3uN>`x`0PC-CcKW>750j!c+k%YiBdQlkTWo*+AdU~6>A(DWX)U^_ zG#$<1_(ZO6lhFG3jVvzKi&*wf(r!kTvH+51drUlKPLulvRp(CnMi&(xj;N1gK<(!z8xKr2HNr_Eme;C}sn>15SOZAKNm#Hw@D! z-|*FmAD4jXUDMgutC$QJ3VC_$mO_%uZR1aQeMU zUeunYPQE^L*s1jNF%qh;oWZ}ebcrv$j$q_f7fIDbYUA#Rg7MQCMuxtsDm-3p+S**? z|M3)lxfzos?xVt@9M6WePmoMjp$8e(8yp{ps#*tjhE1%*j<8ak^16 zNDuy%kE2qrWfeYL}ugppe+k(j+ki$MIFHr+WPGvD^#HCwt!n5VvYrs+||sRixfGv=J}OE_yHOF44HH z^Qt)#(V~_e(A*2pUJy`wyKf;!-MK^~hfeM{&bP2Qb<5+_2e*mW&@@N`OGF~-Y?AkP zesywgx89nx{3&HfaTP5Gzt6!P}6BNJON_;EyK06RdeAs z%G4@XpXgR@1hhKGYE56R;TQ}jXvUdFXdV$XsRUG~RV^f0nfhK3s)*4dR>iGDLBoZ+ z(z$pAUaq4z42kV3WcQ{epQB&wo`@0 zzy1OPiFsy_k?O0^Nly=Aq?#4Ho*QfmG2J!i|5PY#VlV!8tJ}YRRHWEnqF!ww2T?3O zoJ^$+O-IRufqwow}dSniB&P5RZmxYvCgRArbk4GuxErWT2F9S zX=%qs63r=5KU(0(J387N9iN)6p1YHD$%!mB&h{i`yPKFBbg(@mT{zMzA3hCEtG~r3 z_=h zx#2f{dl;={-R*Ii`?M+*?VI}crKkX9fXT<>e8ir*=>gGb)8JXGXj;hD(>2>8nwuR0 zhw%eNb5pcv4%mx}+xA%P+UIlU6*qCk z?>tY9NdV&BcUf6^sr^BI6TRd$@rD`S&&f{a;1BGN?Plom(KK1c5WAQ7c>I0XFGLb{ zTV>!V0Z-I04y^-NX5W_Uy=G}Vn477dW&{Z)Nk64@iNatyhgDs{GcXADs@@`LUp5fL z%(U4|vqo_7O*}m*3o@m1739FISNnc);yymlR|rGywBHI|Ch{vM zs*1cR>9Hwz^+IV?LJMyq>6|%|*vwQ9JV!p$FEIVw`rW4I=nC-%U)$cN)H>CHVZwVM zB82!a#0oePd0N!R+OJpmQE}}O4*fzu#m$rB63=l*h4qOJc}hRU$Bo*(23wNj<}{TK zBF=n}v=zAjSs@ti3!4Dc?hD0_OwxVft3zpot_9L2{^0z0Unvfdji!`?0!zKEaXM9hiw~uZGRWGj+>HAzV0K z4Q-v**P4bH&ooTgKzOycS$S55wZAhlM5aUFJS@Yw?+-|m_&F@SLY5wVeh$UmO<4P3 zOcKT+i9;$ON%ScaV(KD(4(E$;&(yruU~b-SE{+p7hxZaYWSf9T@8i|+80LxI-S?gn zy@PkhDO4R@J$j?0cu1#M#w#Ye7npeo2Ww7iy-sd$u*ju-nIxSY<`Oc%$>H7sP7a3% z@Dt+l%N6}Q%VVAIq(S*gq~!Y!(McbNukk*>$6+EzfsAe^N-BWmu(039;Uh#P z{9N%CjqqTb`8IQ;`?Ewab6<2F!45(E(dxeUoajp49W&rd&C@HbTD%*Mvf2iCH;m5E z8RFMaM_=MZYd2Z(S}+^$MB~vg;oI=mKHr9TG)(w5#G_%tx8a69--fu_6W@l`6Vd~z zxA>!48qxi&--netN@zuN2Y|ZzxHO!CAY?S`KOM`o6%Wq4I#HxHRkpe~8lXkl?K{Xbc#xP^lG& zf8^89>Hm*_qWCo2!*3+?G*9f+XmuH_(Ly5;QxkrA~(b<%f^l2y@?VtHHyb>G+ z3=Ni2{|7z||IUn+^lA7B?}L0Az6iUjh#nRY@o9LRZeTRL!&Cb-d`XAn(@=?sg-^q; zi%-K`?bGm=#5w-F>Nu`I1-{Uqp-@PDP$;_T9gM;p7Ell}~a z0$=RUaKiT}^q>1P)LAC|8GiI#4X^zf3Pt+-8785$Kf}FAsDI?o&`ZbWNDUdZ>4_G; z;Y#>3tY))S2Ek?#He|YR{29u0d@fLl=Efj`05~RHr5Z@bpJ6*;w$9M;XZRZ5;fG{; z`uF`A3a$RNKSP0XP$~TXi$6mlh~v-jJ6AAvzQCWM(D467e}?YesOLWC&rn7eI*ywe zVOT8j@h|-uN~_`(j;D;uf8o#Y1;986!BhMhHhfAa>i1{Z9~p^AuF59fX~uu#&+tko zhcEPJC=`$D0XvB0p5o8&-WjyU7x^>P*yxE={ns&!NfZ7ICD(uI&+rX^ztEpyfAys9 zjet>iYv+@ap_~Si7q#Fff}hY~6}A=_Z7uO4U9f`G!;0f*?7HoVZlUf4T3VEoKQjMg zoLxfT7YMYccrsl0W#=sL#LH6r69wSEmZm zB3|W4rw6J$%kvWV7dc?712zzTAw?wFRR3bx&C2$c>2sCtOz|_@9p-xO1s|E zUg*4dn9FpFKRR#Md+r0*6V-Q_4KG|zPr-9@Glw9=40;t~`}qrKt2M)}O4BufIxus^k-th#M`4_eW(B1%=FU)T!Ue-(2nDZ+HG{ zOYT}6E2Z)h>5$BKN`?2(3R&OMP0{ba%lPw|=jdinJw ziLXg7y4azzY2#JaO~Sj9ihjLYj(ttRicBm6J~90TD}3fCeY4Gq792umu#^s*Tt80r z{DK)-tO~TNN)_VMdI76~*zYB&r}50#OSlFM9MG@(t(r_6Ihn@hp^e_cD=&XJc;*uG zli2BfpWY>GA}q=@Ka|9&jam4jvn36O#EX2@C5<$W0jD>|9B2n8#b!k-oNN)ATV@3W#CAJ30?UG9 z{Gr=liVY8McJze$Vg-9J)q+`Hd!uIP3x~*gRnrMA@2A|r*}HkzVp@{1XmFgU^l{Hf3=c}mF?`p*WQeV?PZKD2TRn!Ho7hJPnOD%47QN|xy zUB$#*ZKelLuh!hb)BZ%vCwfn5uyC&SNBsv@3o2W4u9G7Q3^`6?h@UPGDC{$4)b76Uj)h0#ot73TRuUMJE2PT$EAQU^r;wm%I zEfM%XDRYH!kL!+?E^9c!;QT352o@rwIB07ylQ4#GBR8tz@@mHb{=cUxBqh!lu@?Vo z@ao#yIPuO3`pwuNk;cUZ7v^CZ`eVjRw{fnW^1U0#H-@&!`oB#Xl|VeInNQY#T$(2? zSlbo71a!_DaBb+pcI#$r!Ma7JBGfhxLj)Vg89Swn8RkntanL9{_TdS=l zrJ$|QpM%9whu`h!V~lZUfN2RcIsaWpoonqTNc(s`7m6JtS@1T{ondWbKZf~9HzLcD zymeWcqcg>i^Wzek_bZUFE4?>);8#Ktq!mc|COK{9UI=m)w*!(li}T)*$iyM5gFP1 zc1$0C=J^RPQY`k2D$1D|70K|cC`Xs0yTTa!h5{R;3!N>~%}L5s@R3Sr!8v*tt2xU! zESL7Zh<(LnZRgckc%kC=jkVA#JI+J}qd9Si3!Ti1L)UT46vx%6BW1&@C3uCypdo~9c~E-9Fr;eEmPdV}qEw;=7~utl#T=2F@cEZCRct*PShIV~m9 z%F)uW?N&1I_T;xiAM`f9hb6)-%x1@B1&7kx1DB9ktnH;Xz6Z&`Rzgs6xay>t!I%#- zRwjjBS)zBA;9kjFC5LyG>CwxMkL*Q;{0XatjZj8ZMYIe-&R-f^cpQWc)EoB!8W(l{Fs}CmMy{F zKx(k#nwA`M95w-w93L)@siuPSXV=fIHoji1b^%8KlOgV4p$)Afc8na`zs*aG?%gyp zl}3~p?|wtp-K7FAGY{wcPgd4WK6sCN3!=B{QaV%eOUyKx?SW$x4iCKLJFE{g@SE~p z6zL1nw6B{~S#fi@@#5{UAm=jw;VLvd^}|4Rdh?-8)3%_Ie8;+r;LzMbsvpHuk*H)$ zs_Bv{Z5=L&>(fYe*IB8;b$wEBCj#nct%-s*W%ScR7~(s6Hu&v&r+%7^eVOroEhO+* z;BsRY40MInCDzeC#c4j!s7xlh9dg zw-KNZFeRy%M>b;k&WTte{uwe5bzOcM!X-d#CdmfPUcQ9D#RQ(SlVj`=KyR2e@V3;1 z{6d|3lLIS??2BZ$fDAP<4aiRZEQ(BROf%YFXrhS}ir zX|1VC(Y!j{g7AnKlkX8hk8J&b91u5XZj!G)TYgsO5VJTCdQomA%Bgb(^L z5gP#?^P=-ae0NYaY7Amzl_)Ka7b-Hec!yEg7MIY-j$8!!k;j?eNO%{%#84oZz0Odg zcGYW9;1V0ScDRAn#%^ZHLaO8T2d4kMl$AXqvXb*o@>Xz^ck24yNp4Xu#yfuFc%bii zS>N%yjCbk=-!zWb4GK<~tZ>SG$er)&So=I_v2%ye4(HOuwU6*QMoNq0tEVISDD6JA zP;qr})2ijgu5;d#u8(g?irGc;$L-lA?wRh}Du|&#xMN%j{9S88L}F_K@YCvd340gX zim-R%+})4P!`;0~ad+o{%D~;tZx!Y)z}`SUVeJMc7~7@iaCWi8{oJ)m(@M6LEx#SZ z*u94XaC8A!h73hE4Ae-bBNBNU_zG`-UjDv(T>dtTCJtnE_4ifvS2zoJuTy{9)ZcFY z8d0_l#n`=^cAU-F{pI6oPJ%B#M?%HeeU_I5W49YVfyitJkl}ss7mU?QB3#aR;l&TB z(hGG&)Tirx?Ze6K@1;20+eK~@;qm>a7UpdU{7}+Ol62Xm>z$5iIOXe4$=i}@4x6LR7%d1#dez@w^S9;UPx#w($kQ~P_AG{i$)_#+_+B2K2hs^^ z-7_b5!Sapc@q9Gu_zpV*c+UEw^Sg)0CeH7E4$~B-a9$nu5+gEl4DVJRcurG))sR|_ zMz{B=5E;zq2C`AlIj-+YOXIHZYKRU+B)uzo!^pccYB{ZwaC@|X@J5v;$O#h_#;%nm zDVoE3P`SSAa$57OZyE9pTdqz$k<+e3Qn

!01PWpgPN|_^I0!cYUX#UM0$MYZ`6m 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 K3H%R~!2bjNovdI0 literal 0 HcmV?d00001 diff --git a/eDosStation/eDosStation.csproj b/eDosStation/eDosStation.csproj index fdfc5e5..ad73f1f 100644 --- a/eDosStation/eDosStation.csproj +++ b/eDosStation/eDosStation.csproj @@ -31,7 +31,7 @@ true - AnyCPU + x86 true full false @@ -71,10 +71,10 @@ mk2-epd-bg.ico - false + true - eDosStation_TemporaryKey.pfx + eDosStation.snk LocalIntranet @@ -211,7 +211,7 @@ DataSet1.xsd - + Always @@ -255,6 +255,9 @@ Always + + Always + diff --git a/eDosStation/eDosStation.snk b/eDosStation/eDosStation.snk new file mode 100644 index 0000000000000000000000000000000000000000..513350d06bab9fd7696582a1852e0e94dd827f78 GIT binary patch literal 596 zcmV-a0;~N80ssI2Bme+XQ$aES1ONa50096oO{Z5}yt8cfSy;0)X zNd9^4*TO&8O%0%m1n$M}W)|dxK zsKYXZ9fLNGk9Ge0s_(S+7Uw_aVcpSF7y4bhv0h!A;Lg5iE!|&{w6BnyA<&uAk3&%0B1M zo~2j|lx-EYrGf{Cnuj0Rj>??UgpNp(fu5uYJT;gDUw9y{!-04_IFOfXp;ByFXgeXH zCJUFnBxGl9+UaJP;~cav9O*=WthNF4#ZZPd5rh|*#i}yvtD{xa7Br6JGaY{jo16g2 zcutP|&ZB1)D%b1;$m4;Zw55){gDvM6zGYuncgK(`t9Xby7*`f4tULfWN)pG`UuhMr zpoE+|`1~bQe7MBl;)Q2Tk8?JHEP4Ru(o!RSzZ1%M)-i3$`BC