From 8c4a78ad5024c587d953668a58143aa50623a12e Mon Sep 17 00:00:00 2001 From: Atridad Lahiji Date: Sat, 18 Oct 2025 23:02:31 -0600 Subject: [PATCH] 2.2.0 - Final Builds --- android/app/build.gradle.kts | 2 +- .../atridad/ascently/data/sync/SyncService.kt | 38 +- .../ascently/ui/screens/DetailScreens.kt | 36 +- .../ascently/ui/screens/SessionsScreen.kt | 12 - ios/Ascently.xcodeproj/project.pbxproj | 8 +- .../UserInterfaceState.xcuserstate | Bin 252844 -> 253544 bytes ios/Ascently/Services/SyncService.swift | 36 +- sync/main.go | 40 +- sync/sync_test.go | 501 ++++++++++++++++++ 9 files changed, 637 insertions(+), 36 deletions(-) create mode 100644 sync/sync_test.go diff --git a/android/app/build.gradle.kts b/android/app/build.gradle.kts index e3932d8..7f9b74c 100644 --- a/android/app/build.gradle.kts +++ b/android/app/build.gradle.kts @@ -16,7 +16,7 @@ android { applicationId = "com.atridad.ascently" minSdk = 31 targetSdk = 36 - versionCode = 44 + versionCode = 45 versionName = "2.2.0" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" diff --git a/android/app/src/main/java/com/atridad/ascently/data/sync/SyncService.kt b/android/app/src/main/java/com/atridad/ascently/data/sync/SyncService.kt index 66f4cf8..21121af 100644 --- a/android/app/src/main/java/com/atridad/ascently/data/sync/SyncService.kt +++ b/android/app/src/main/java/com/atridad/ascently/data/sync/SyncService.kt @@ -368,9 +368,22 @@ class SyncService(private val context: Context, private val repository: ClimbRep repository.setAutoSyncCallback(null) try { + // Merge and apply deletions first to prevent resurrection + val allDeletions = repository.getDeletedItems() + response.deletedItems + val uniqueDeletions = allDeletions.distinctBy { "${it.type}:${it.id}" } + + Log.d(TAG, "Applying ${uniqueDeletions.size} deletion records before merging data") + applyDeletions(uniqueDeletions) + + // Build deleted item lookup set + val deletedItemSet = uniqueDeletions.map { "${it.type}:${it.id}" }.toSet() + // Download images for new/modified problems from server val imagePathMapping = mutableMapOf() for (problem in response.problems) { + if (deletedItemSet.contains("problem:${problem.id}")) { + continue + } problem.imagePaths?.forEach { imagePath -> val serverFilename = imagePath.substringAfterLast('/') try { @@ -384,9 +397,12 @@ class SyncService(private val context: Context, private val repository: ClimbRep } } - // Merge gyms - check if exists and compare timestamps + // Merge gyms val existingGyms = repository.getAllGyms().first() for (backupGym in response.gyms) { + if (deletedItemSet.contains("gym:${backupGym.id}")) { + continue + } val existing = existingGyms.find { it.id == backupGym.id } if (existing == null || backupGym.updatedAt >= existing.updatedAt) { val gym = backupGym.toGym() @@ -401,6 +417,9 @@ class SyncService(private val context: Context, private val repository: ClimbRep // Merge problems val existingProblems = repository.getAllProblems().first() for (backupProblem in response.problems) { + if (deletedItemSet.contains("problem:${backupProblem.id}")) { + continue + } val updatedImagePaths = backupProblem.imagePaths?.map { oldPath -> imagePathMapping[oldPath] ?: oldPath @@ -421,6 +440,9 @@ class SyncService(private val context: Context, private val repository: ClimbRep // Merge sessions val existingSessions = repository.getAllSessions().first() for (backupSession in response.sessions) { + if (deletedItemSet.contains("session:${backupSession.id}")) { + continue + } val session = backupSession.toClimbSession() val existing = existingSessions.find { it.id == backupSession.id } if (existing == null || backupSession.updatedAt >= existing.updatedAt) { @@ -435,6 +457,9 @@ class SyncService(private val context: Context, private val repository: ClimbRep // Merge attempts val existingAttempts = repository.getAllAttempts().first() for (backupAttempt in response.attempts) { + if (deletedItemSet.contains("attempt:${backupAttempt.id}")) { + continue + } val attempt = backupAttempt.toAttempt() val existing = existingAttempts.find { it.id == backupAttempt.id } if (existing == null || backupAttempt.createdAt >= existing.createdAt) { @@ -446,15 +471,12 @@ class SyncService(private val context: Context, private val repository: ClimbRep } } - // Apply deletions - applyDeletions(response.deletedItems) + // Apply deletions again for safety + applyDeletions(uniqueDeletions) // Update deletion records - val allDeletions = repository.getDeletedItems() + response.deletedItems repository.clearDeletedItems() - allDeletions.distinctBy { "${it.type}:${it.id}" }.forEach { - repository.trackDeletion(it.id, it.type) - } + uniqueDeletions.forEach { repository.trackDeletion(it.id, it.type) } } finally { // Re-enable auto-sync repository.setAutoSyncCallback { serviceScope.launch { triggerAutoSync() } } @@ -542,7 +564,7 @@ class SyncService(private val context: Context, private val repository: ClimbRep Request.Builder() .url("$serverUrl/sync") .header("Authorization", "Bearer $authToken") - .post(requestBody) + .put(requestBody) .build() withContext(Dispatchers.IO) { diff --git a/android/app/src/main/java/com/atridad/ascently/ui/screens/DetailScreens.kt b/android/app/src/main/java/com/atridad/ascently/ui/screens/DetailScreens.kt index 411c147..2a91619 100644 --- a/android/app/src/main/java/com/atridad/ascently/ui/screens/DetailScreens.kt +++ b/android/app/src/main/java/com/atridad/ascently/ui/screens/DetailScreens.kt @@ -31,6 +31,7 @@ import androidx.compose.ui.window.Dialog import com.atridad.ascently.data.model.* import com.atridad.ascently.ui.components.FullscreenImageViewer import com.atridad.ascently.ui.components.ImageDisplaySection +import com.atridad.ascently.ui.components.ImagePicker import com.atridad.ascently.ui.theme.CustomIcons import com.atridad.ascently.ui.viewmodel.ClimbViewModel import com.atridad.ascently.utils.DateFormatUtils @@ -1489,6 +1490,7 @@ fun EnhancedAddAttemptDialog( // New problem creation state var newProblemName by remember { mutableStateOf("") } var newProblemGrade by remember { mutableStateOf("") } + var newProblemImagePaths by remember { mutableStateOf>(emptyList()) } var selectedClimbType by remember { mutableStateOf(ClimbType.BOULDER) } var selectedDifficultySystem by remember { mutableStateOf(gym.difficultySystems.firstOrNull() ?: DifficultySystem.V_SCALE) @@ -1690,7 +1692,14 @@ fun EnhancedAddAttemptDialog( color = MaterialTheme.colorScheme.onSurface ) - IconButton(onClick = { showCreateProblem = false }) { + IconButton( + onClick = { + showCreateProblem = false + newProblemName = "" + newProblemGrade = "" + newProblemImagePaths = emptyList() + } + ) { Icon( Icons.AutoMirrored.Filled.ArrowBack, contentDescription = "Back", @@ -1905,6 +1914,21 @@ fun EnhancedAddAttemptDialog( } } } + + // Photos Section + Column(verticalArrangement = Arrangement.spacedBy(8.dp)) { + Text( + text = "Photos (Optional)", + style = MaterialTheme.typography.bodyLarge, + fontWeight = FontWeight.Medium, + color = MaterialTheme.colorScheme.onSurface + ) + ImagePicker( + imageUris = newProblemImagePaths, + onImagesChanged = { newProblemImagePaths = it }, + maxImages = 5 + ) + } } } } @@ -2069,7 +2093,9 @@ fun EnhancedAddAttemptDialog( null }, climbType = selectedClimbType, - difficulty = difficulty + difficulty = difficulty, + imagePaths = + newProblemImagePaths ) onProblemCreated(newProblem) @@ -2087,6 +2113,12 @@ fun EnhancedAddAttemptDialog( notes = notes.ifBlank { null } ) onAttemptAdded(attempt) + + // Reset form + newProblemName = "" + newProblemGrade = "" + newProblemImagePaths = emptyList() + showCreateProblem = false } } else { // Create attempt for selected problem diff --git a/android/app/src/main/java/com/atridad/ascently/ui/screens/SessionsScreen.kt b/android/app/src/main/java/com/atridad/ascently/ui/screens/SessionsScreen.kt index d5655bc..3987255 100644 --- a/android/app/src/main/java/com/atridad/ascently/ui/screens/SessionsScreen.kt +++ b/android/app/src/main/java/com/atridad/ascently/ui/screens/SessionsScreen.kt @@ -338,18 +338,6 @@ fun CalendarView( } Column(modifier = Modifier.fillMaxSize()) { - if (activeSession != null && activeSessionGym != null) { - Column(modifier = Modifier.padding(horizontal = 16.dp)) { - ActiveSessionBanner( - activeSession = activeSession, - gym = activeSessionGym, - onSessionClick = { onNavigateToSessionDetail(activeSession.id) }, - onEndSession = onEndSession - ) - } - Spacer(modifier = Modifier.height(8.dp)) - } - Card( modifier = Modifier.fillMaxWidth(), colors = diff --git a/ios/Ascently.xcodeproj/project.pbxproj b/ios/Ascently.xcodeproj/project.pbxproj index 2fe4f62..b0bb1cd 100644 --- a/ios/Ascently.xcodeproj/project.pbxproj +++ b/ios/Ascently.xcodeproj/project.pbxproj @@ -465,7 +465,7 @@ CODE_SIGN_ENTITLEMENTS = Ascently/Ascently.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 29; + CURRENT_PROJECT_VERSION = 30; DEVELOPMENT_TEAM = 4BC9Y2LL4B; DRIVERKIT_DEPLOYMENT_TARGET = 24.6; ENABLE_PREVIEWS = YES; @@ -513,7 +513,7 @@ CODE_SIGN_ENTITLEMENTS = Ascently/Ascently.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 29; + CURRENT_PROJECT_VERSION = 30; DEVELOPMENT_TEAM = 4BC9Y2LL4B; DRIVERKIT_DEPLOYMENT_TARGET = 24.6; ENABLE_PREVIEWS = YES; @@ -602,7 +602,7 @@ ASSETCATALOG_COMPILER_WIDGET_BACKGROUND_COLOR_NAME = WidgetBackground; CODE_SIGN_ENTITLEMENTS = SessionStatusLiveExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 29; + CURRENT_PROJECT_VERSION = 30; DEVELOPMENT_TEAM = 4BC9Y2LL4B; GENERATE_INFOPLIST_FILE = YES; INFOPLIST_FILE = SessionStatusLive/Info.plist; @@ -632,7 +632,7 @@ ASSETCATALOG_COMPILER_WIDGET_BACKGROUND_COLOR_NAME = WidgetBackground; CODE_SIGN_ENTITLEMENTS = SessionStatusLiveExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 29; + CURRENT_PROJECT_VERSION = 30; DEVELOPMENT_TEAM = 4BC9Y2LL4B; GENERATE_INFOPLIST_FILE = YES; INFOPLIST_FILE = SessionStatusLive/Info.plist; diff --git a/ios/Ascently.xcodeproj/project.xcworkspace/xcuserdata/atridad.xcuserdatad/UserInterfaceState.xcuserstate b/ios/Ascently.xcodeproj/project.xcworkspace/xcuserdata/atridad.xcuserdatad/UserInterfaceState.xcuserstate index 347dabb211641142824906187fb9b2e8620f8590..70d93e721a42598c1c8736608f5bbc06fedd15c6 100644 GIT binary patch literal 253544 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 W{P(8+_n%s4|KI=r|NjjiWcfep-0w&L literal 252844 zcmeFacYIUT|37}uU1?UEv>8p(7Mk7cw9QVHPN-~J_9&%Ip-|e=v~1*FWr-{W0YOGv zmJ9_26ciL3D5A1N1r-Ebpez}RiobJ{CZ!1K`~Cg=KELlDKl>nU&N=tY*LjWS>-D-0 ztF5XG*4u2y5rCiwhTsT+kO&Lm^iz)w)CDVRs{5-;>&iw{!f(au`kLB)>Y8CA17-EW zcm&K?T_T9DDa|CU_rPD50N5?hzv0!7Q~9!5Id5N zWFVP{192iQ#EtYodLq4$BBU7Ujr2kKBK?s5$N;1sX+Xvz zB2OZ7kh#b_WInPGc@|lQtVSAJG8+i?R9od8IMcziFVGJR1cN|12!IMu3&wyt5CrvLGI$Kk0JFh7Fdr-g zi@<8o2%11MSOYeKP2dIaB6tJ53HE{g;4Sbrcn7=-J^~+u!{9jh4A9_na1xva=fHXJ z4fqyZ0++!R@H4mxeg(gSKTt6$L8WLSDnsR{0!>1b(G;{DszPE%g`WNk2auV(Q)W_bOJgNorF$DXP`6DS?C;eCAt=U9^Hbz zfWCyjita*RNB5w6(L?Bm=tt$c`z@Qhvfq+R)7t_24aJ-!PpS2 z1RIK#V#Ba9tP&fE)nF5_iP$7;IyM8Fi9Lxug*}Ze!~(Ap zwikN?dlTD-9l+khKEyu7KEpo8PGYC9FR*X1@38N&AF!XWt2n?>9K&&(z)75i3-Ne7 z0T-WBhL_rijNhJ`sNu ze+-|2&&KEB8}R4xjrb;fGrk3X0e=zSif_YT!e7Q;!S~{C;BVsZ;qT)I@uT=L{5bvz zei}c6e~q8Tzr}yRf5I=}m+?Odga8CeU<6JO1WCjaafE;n67fVLAtU63l28$9LPKZ? z17Rf62@jD)WE1&BA<>oSPYfUi62plRL?tnj7)6XB>WFa!O*}@-A?6Z|L=(|WtRdDC z>xlKl2I6^QBXNlMkobuBm^e%vA&wHqh~va3#0lb4;xpoN;v{j3_@4NY_=&hmTqAB0 zw}{_}-${f7BteoShvbrRq<|EWV$w`nNGoY0?PNNcL1vN;(n-3=T(TqCiR?mlC3}*+ z$UbCWvXmS~mXYOTB{`BDMOKkx$Odve`55^)IgOl7&L-!P^U0^lh2#oyCAo@RO|Bu= zlN-pF$d}3O*NjcCV7Ya zlZCM2SqUr=OU#n6q^v}ijFrq%vrH^A%ffQ9Tr4*$hn369W9737SzTGZS$$Z2StYEY ztUA_M))dxs)(qB6)_m3i)>EwItW~UL)+W|w)>hVb)=t(g)*jYg*1N2OtPfZpvktSq zXZ^ssz`Dr#k@XYn66-SS3hOHC8tW$Oj~F6`jA6yZ#Ry`AF^ZU^nB!z!tF+*)n!AJB6)etJpfWo^4{A*>-k1 z+sSsZeQZCw13R0Y&n{p;!tTuO&hEi3X7^_IXAfWxVVAJW*yZdI>`L}%b~U?>9b}JV zk7rM2Phr#S$JjI2GucnF=dc&BpJG45Ud&#`Ud~>{Ud>*^Udw)-y^;L_`$hK4?CtDV z*}K?#*n8Rg*>ABAu-{`JVt>d!!amAA!Tyweiv0!q4Et;Luk73G-`Kyi|6t!?|H(l( zfP-={4vQ1ZiQ@=3LXM0h=O{QDj+Ue2=s6~ijpOEcI9^T;CzmsjGl(;oGlWyZ8OkZ; z4C9n>$~gf}C8w4%hBJXPku!<&IAzqBDy_`2V zZ*ul=_H*9iyv=!s^FHS==LqL>&PmQG&NTgOd~PAPE4LfBJGU>lAGelU&z;15oI8y>ojaeqkh_Gtio2TI$bFu> zk-MM!7WZxLJKT4<2e|KX-{&6We!xA%J&WZQ>%r^E8^{~P z8_XNR8^){PjpdEwjpt3^P2^4DP3BGEP3O(v&E(DEE#N)Hdz!b9w}|%~Zv}4$Zzt~+ z-mAP_yxqLlc(3#J@b>cF;Jw8=$oqhIh8F`cf5@HKobU&pudZG1c5!}s!i{Cs{Pzbn5RzYo7JzlI;=PvlSHPv%eK zPv_6z&*RVMFW@iZujDuJoB3<_oB3P#@9^K{AK<^of1iJl{{jCH|3m&q{Ezv^_$T?N z_~-cN`QPv_^RMu)@~`o4@^8nYu~;k~OT?0~v9WQnx>#dudTd6lFV-KM727ekb8Pq6 zzOnsc`^OH59T-~{TOK<(c1rA{u~TEISUUEx*vDh1#ZHf%5j#8fsn};@m&GoRT^qYD zc75!I*v+w9V_%Kk6}vljf9zYar(#dXej9r!_Hyi%*xRvp;?Ouw95;>^CyEotnd9tn z?l@1JH!deGH!d%(TU@WWK5;|hO5%pbmBv-Zjf{INZbsbPxOs8&QlVF|T1;LAgt%7ZW zU4q?$qk2YxGcCLxGMNf@TU+Ha)mshTBsLVg)X66=n-ZMbA-9VuEL(e z-onAcA;Pi3al-M!3BrlONy5p(DZ)pEQ-zdpn(#^C9N{A2Gs4Bf)xt($ldxI1Ubsp4 zvT(a_hj5Q@ukeKMQ{iXA&xI$2r-WY!zZ8BYJS{vUJTJT`{89Lm@P_cF@Rsn;cqAUg zbK`mO{P@`T_;^XYG`?MY`*?S}KR!3Ub9|ThuJL{22gaAg504)aUl~6pzAk=t{Ji*Q z;upuSj9(SMI(}pP3-K?-?~Z>h{`L4h@q6RnjXw~7I{sYzh4_o{KgVB>zY+gu0+zr^ zh)WP82ovHHkxgV5rHe8|nIebCDRPP2B9ACblqbp;brp3Jbr4Oj0H(msCkcOR6Q~C6gtTWR~O!Nuy+~WV2+8WQSy@1!nn$#dQO0CiiX{OXK&64((_LmNomP#w7Bc-FH4blnHDbnfE8Pb{3`O*c_4btbO z8>O41o26T%FGydMZk2A6z9ii#-6P#AeM9=D^gZeO(u2~Y(qq!&(yyearDvpHOTUr+ zAiW^HDE(P_J&~6vNR%eFOKhK*nrKY4CT1l168(u;iTQ~Ii9-`h6Ne?1C6*@!5-Spi zCyq$0OdOdwDzPSUY~rJdQxmDgS&2_1&Q4sE_)OyB#3hN#6IUfRCvHmIocMO)dx;+> z9!~r$@$?2Y4Yjv z8S*X8d&&ywyZa^C=^Kwt-_$ND4YtH!ma3_$X4`M3{VVI3{nhM z3{jLQhAK)G!xUwT;fiX-Sj9NScm<`P6^|+ADCR2WDdsB{DwZf#DOM{sC^jp$D0V1z zDqd0SQS4QGr1)5ISaC#gRB=pkT=A9SwBn57YsC+W3yO=1KaxOFOcFaOE=iCiPfAHr zCK-~9Nv0%ok|W8P)G4V;Qc+U>qyb6gNh6Y~lIoKhlBOg*nzSHkQPT3H=aQO|nv=F9 zZA;pbv?pnA(i=%{B^^lmAn8!j@uW|ZP9%Mi^kvddNtco?CtXRpnshDc=cHRnza(># zxyig_esXMbT(Tfpm@G?{Co7VZk}b*U$)4ow;RgeDdt%CzIzS&rP0}JU@9s@>9u6l9whoB{wIpNnV@$eDap$ZON}DznQ!* zd4KZ35r&OoZq|~O2PnnSNWXk-M#VJctR-~*< z*^sh1Woyc-DZ5hkr0h*ymbx-^RcdqUn$!)c&!=uleIfOw)R$9VNqsf-_0&D7`%?F( zzMFa=^@G$ysfSaKq<)fmBK2hIsnpY{XHw6nev|q`>V?!xsh3lKPQ9M`OX{zwf27_~ zqDoB3QpPBGO1@I4j8{sOQl&zfq-?KDRce%4r9o*_T9r0srqZGGD80&uln*O&m3hie z%0gvVWjAFnWs$P4vY&F0au?>g=(Z~l&VHmtEyKus3xc;svcEMRXwhnrkbUCLN!-4PxZ8F zp=yb0sp>h^3RR=3NwrS3UbRWJS+!NQO|?U{Q?*<5n(7VJo2s`}@2K8a9aMd!`dD>L zbzJqC>T}hXs;^XMRp(USslHeJsQO8DRdr2uQ*}%Ao9cHpq6TV0O{zI+t~yRFP>a-J zwM;Enr>NVhRcf_buTE2&)fRQSIz#PJyVZVmmO5LVqb^W)RCiW)QTI^yRQFc*Q4dfL zRF|lSs>{^@b)|Zwx>{YM4yxDA5%ZBo~fRto}-?teoFncda-(mdb#>J z^=fsadaZh$dZT)i`bG6t^>+0R^)B^p^bKNytKU<S{iFJd`l|Yd`lkA}`Zx8T8bpI@2n}1q(Zp)vGzl7!CQ&2PBx_PM zN{vdR)95uOjag&Yq-&fSm&T{@YdUDMHTjwX%_Ex5n(mq&nqp0FO@GY*%@9qArc6_= z8KJ4vjMh|Z>NG*kIL&y?WX%)}t$9o{Lo-wJq-Kt0f#xaAGn&PkWt!!hRhreBHJY`W z=QSHOFKAxWysX)-c~!GZvq!U6vtRR;=78os%^}T)nj@N{niHB&HK#ORXwGQ9)_kM+ zR&zmfQFB>yMRQ$qL-VWVw&srJPc5d!wJ}<@mamP~#%mL_Qf;C(Nt>)q)he}Gtxjvy znzS~pUF*;~wO*}H`>?iyHcy+cEz~}u?WXOnEz%Zi`)T`Y2Wy9DhiS{S!?h!{RocUQ)~?ZR&_1u-qJ2U8 zlJ;foE817JuWR>c_i6WQ-_;(_exN<1J*+*V{X~00ds2H!ds=%&dtUpE_6O|+?IrDH z?a$il+F!K4YX8vQ(V;p_$I`{)LC^lU8c^V z^XR;~hjb6?a&>vSPP#%}S6w$c;3AbYpcB zb(3^cb(C(JZo2LX-E7@F-F)3b-6Gvm-LtwCx|O;nU9)bzZi8;KZi{Z4?j_w$-7C7+ zbg%2))a}!~qkC6(Q1^lEW8Gohaos1n&vhqtU+GTk&gstUzSsSr`$>06cTM-R?w0Ns z-S4_T^gxg5Nj*!?)${ZMy-+XKOZ0NRLf=l`Ua!_`^l5s7-lDhaGxV8yx89@A(m$ln z(dX(r>O1MX=)3BB>U-(?==IdnE>Pz(jeT9Ccew4mOU#qXzH|QtmC+Z*7Pt`xJ zpQfLse?mW3KTrR(exZJeeyRRB{R(}fzDd7Mzh1vdzgfRkzfHeGzf-?kzgNFs|E~U^ z{v-WS{R#a^{a5<4`fv3Y^q2J4^*8jt>i|VG&*g1+7oGW(-x*JN?V%t zT-xfiHEA2tHm7Y(+nKgIZExECw0F}ErG1!oEbY^@Q)#Eu&ZT{qb}{X8+RtgX(ta}l z18N`*97C)j-XJl^4JihtL2ED=EQWN0)8I8cWXLmgGITNYG87s58U`9l3}uE&!)U`8 zLxW+0VT$2#!%V}IhWUnth9!pOhE;}U!+OIe!#2YX!!E-f!#=}1hW8C08jct~F???L z((tw68^aHVpA1(GHw?cT{xAX~VPqTmMxjw`lo^wasYZ=4&1g1e7+pr6@nK`Gv7@oG zvAeOz*w;AFSYj+Q4mXZ6))<4vamGo;sm8~RGmTFg=NlIqml&5DR~eg)>y4X?+l)Jm zyNr8``;6}xKQMl5JZAjV_@(hH<5}ak#tX(v#%so##@og_Ce%clIHp)ryh&n`n^H__ zlip-9rJI~4ujwIEj;X-(h^d>Ym#L3wfN6+nn5n`v(o}7#H;p$y>G~G7c zF{5VE%rVEB51z&yk}%v@m}X|6Wc zna7$Znkn-%^DOfm^8)iC^HTG3=GEpk<_+e}=B?)K=2y+Ho8L6QZGO-Ek@=|kg!!cT zjQPCzd-IRxE9UFwU(CN-5DRXJvG6Pci^w9kq*#;|t;J-qSu!ndi{H}0l4t2;>0;?& zDYo>p46+Qhlv_qvsw}mZddqmrWD8}PW|?J~V_9HXY*}VmX=$>ovuw6(v23&Ku4dXDr`ZzO&r2{9^gla@+Eo<#)>;R<@O6k(T4_H64er)~3dcu0f`nC0} z^_=xP>qYC&*6Y?A)|=Kl)<11Ro79$QQ`)pPgDu^bVav3+Z5~^eE!UQ3d&Jh+HqbW6 zHrO`AR$?1!E45YHM%qT%g0^~FgKeg5mhB1KY}=EzIkvgBdA3EiXKbr%t8I<8CfhpO zM%zoamu=f^J8XMwdu@kppV>aQowS{|eQ*2GcHMTv_J{3`9kpY2mYr{pwTtXxyT-1y z>+E`an%!VG+U@pqyVvfs`|aKA#rEFz5__3_xV^?+Yae58u#dG*v{QE4KGQzSzSRD# zeVKi^{W<#z`%3#d`+EBZ`&Rol`%Ct>?eEy%wI8s*XMf**(Efq_i2bPj3;UP$uk5Go z=j`9vFWax!uiCHKZ`*%M=cgy6i_%llmFe1aOS&~ZBRwh`k3^(^kDk9^qJ|i(w|75o&IF{ob^NY;W znP)S<$^1U^V&PMUJPyC(VMmT5-_gm@+0o6>(^2f`>lok|>=^1Ob5uAg9aWARN1da=G2SuB@u-7# zOmob1%y!ImEO0DzEOtEWc+RoP(d1a`*x=aYc)_vFvEA{CW4B|E<4wm~j&~jJI}SNM zb{utl;`q#Q%JG%sYsY!Vca95=pBz^lKRa$Zes%or_|u6x31^Ix>x^{@og$~yDR(A2 z+dEZGtuxJOa$23~PKVR&^f@1LW;^qo9i5LjyE=O~i=2I&{hfoHCC*{afOCX%l(X77 z##!$i=bY%A;-s99J7+kbaL#egcRuZW#<|qF+_}=(=v?Dm@7(Cz;@s+d*}2oX%lW$V z4d;I6JI?og99&sLbe(F5w{L*>GdCvK*^9SdT&dbhg&Ku5OoWD8mxPS|Hv0NM% z-z9J*xFjx_E6LT)rF3ardY92q?waL#(lyWZlxvY|iEEi_g=@8|*|pB~ylb=T zMb}HN9j;ehuetWR_PO469dI3Veds#uI_5gz`rP$}>$K~v>l@eiu8XcquB)!=u3N6# zu0Py}8*`IxwwvdUbH}^I?nJl3o#IY)tKB-c!EJWi+!=1C+vE1TA9m-s^WB}?o!#Bs zJ>A9bzU~3;!S12%GIxc$(p}}Qao4#U+~eJo+>g3x_cZrR_iXoE_X77q_hR?6?&sXA z+)eJa?hWou?ibwK+}qu+xOcnvxZiZY<$l-wzWb2-WA{<_C+^SOr`%t;zjmK@f9Jm7 z{>gpC{j>X~`&akx?ms=Khw#LBxSm*#&?E9lJ#tU7r@cqz(R$K6CXdyV?s0hB9-rqS zPqrt|)6w&Yr>m!jr^wUC)88}5Q{oxs33x_$MtQ0|V?6bqah{2uDIUu6xMzmv3C|qQ ze9zOKXFN+i%RMVSjh;20^`4EMEuO8OmpwZ@yF9OZ-tg@AyyJP#^MU6h&k@gY&!?V~ zo-aLTJm);$dVcWy=(+5<=DFed#q*ozju&`wFU!mE^1T9Yf>+{|d6T^Dyh^XetM?kc z7O&l#>2-O%-YjniZ?3n%Tj=fL?e6X6?d|R79q1k6E%larhkHkQM|*3%LGM`a1n*?; zRPSTn>E2o1C%yB$Pk9%4mw1Y z?}y&Q-ecYq-p{>Xcu#xJdcX00@4e`~?!D!`?ft`t_%I*oWBYi%IA6R^>`U}1 zd?~(EpW3JM8GL4+&6nYG`aC|r?_pn#FW=Y6*V)(2*V9+*>+2if8|)kEEAv(ODt%SH z8eg5S!8hJF$@i#__D%E6^v(9o^)2u%^eyo%_pSA<^R4%7@NM>O^S$JI+4q|7b>AM} zUf+J-Vc!woQQtA&ao;Dt6TVM_3Qk4f12OyxA@cj8U9Sa!|(Aw?C;>u^XL0J`aAi%_=oyS{lola{&Ii7 zU*R9_ALXy|*ZRl!>-=N=ll@ctwEr>x4F59!a{qJw75mG0T!=&&tetB&%~)m#nT?-Lkr8^~ma()hnwgt2nE7 zR-dfCS^cugvjSNaS;MnNWL0L3%o>$7CTmjG;t&CnfJpjwE3%9VOb8Buzgr>|`l!pQN`t{BM2N&w zD1|j4B1BB#G(*{I=Bq7O23epZ~kE9|>il9h}Ma58TibHWJ z-UdXCXb>&@)Wat5H^rx7sW|v4fK8a+nI!@-Gfri7dCj=OU;$iQQCVFeP(37CT2NOy zI#41o!-7tw!LF6V>tLisd7sj%hCr~Ou4Z(%qF#YueNA2Iu&O{P3L~$yzO+Q3jdoC6 zIxMHOu5W3uPi3$YHtJhhKcc9zdU#a;)|3byVj4!)2}^Qos_W}&s;UBYCC<$J+=2o( z)C*mnOmn6!H{I;XwmZx@4ttJ0!=3HS$hDUU+QAO8%j#jk$OF0&$Xe%8Q&Tmpw5~8R zml8o@Yh7rb(W;mdL9(sA!_nUE^1u(9E3>@~{@C3%_+d}?v}Z>S!-M1@rj3Xf@gaUB z3wa2680mmyBRNPeC8Xl11WH7SDG4Q|5-Axa-v|$)0O^QyLJE;bkk0UMx+2}+VJN5- z)JkeCwT=cU6rTp|X`o`xM*t^SG@@o)x6-kd!%N{thl`?Lv+DwIyM?e-@A}HB%KFMc zuy18~{fKb0!s=ix44$c}Yi$;N@~&q2<&}{(cGsXjm4R`2fng29hr>gNP9WNSi6EhC zV02C0gpPHkwId=82g4b(b`#l~fyi*gv~K_si2amWGaPf zN42L?DJ7+%)RczOZbC*NmB>hB6jFtZMyin-q!t;2)KNOhLFG`nR5xk}RYBEK6!ir4 zEVDs|eq}Y~0SmKDH4SxTfffSlU1*7})RH@*w0d|TSR%0gi^jbIwKYLzKj2ovoh=Gf z!5s{gM|&#~D5Je}uB^Xnm|}PnEM4Jj>Z)O&QpdWQhT8DcFsuo7WsE*nSY02es;V3w zsD|?$QF?bDa2-rZi9i)?-L0m+vMdk`jTQRyuBj-Zt=dkd0AA@5LHh^PMsG@qAn5^3 zLg!i{$cR?|&75;<%Hf614hCUpS7|GkqLAr`X$?Xnk0FmE($e&Ig@!9m@M@+u)esi`ilo6rPXE$!E> zsCy^|EzB<3%%`XZ-Z|JXGRAUb1tMugo}+Ay$V$r2Fnor^-1nKIP=+)i&B&S(fgI8> z!$Es6(Q%Lf>jFW@?n{|jP#IKucOlp`ED|{fPz)zXc{_MDp_r-9E`ziY43tB@8|YtI z9~d24{NP{<*%rc*;E-S$!&7@ObPc=A$Ue|3CHByre(PAVLXjl#XbhXfFRm@EAJHF@ zO<;Vd%If+iF0Ws9unf+k3LZp4@9MIe(W5Kt;YDcQa+?ImQ4lBK4+)H~Ev;rE_d)}Q z`>y$k=`^0-n9#p_ZJ;{0s&e!&*jmgFS67h&SS{r@a$%vYrLg8lN23B3C#5uVdC4V$ zl-|KW9Yb|>6;K3*I=753Yk-A8CfZMcHnmqZr7BfO%YUjj+lT*ZQfpKlg1>~ms5;D9 z5H5{@;#ds>0{xKb79#^8FA6~BQU?S5o`QjWOOf@+R%8eA3bGG*7x@^5@SQ+TA?INT z-$mpy4A+Z?fqID`6^7-Rfiv783c|l3LvQmRcsNX7>yZsm4(5-qtqM!W?hW--mDK@; zyM}`onFDX3)n?>*WFxZlU$-w23@a(F@0i=i?#$~`+&Tti0_o1yuXhbuJfSuabhQju z(x<2-!`|91w7Er4!c-40EQd#4Sy2gDe|Q<2kuC82yA^e9sAneJdN-Pp&CKnHQ2vX^ zcILKkMYbU?Aum%-%0;;;&lL3WjRR1LYz5EQUHq_@cl& z9OwqGV~foFhZKOqe=mmLkiNJLCm1@&dPN1TuE)eDf@JXiQ$OPYjM+>j! zo0P8+*-!bIs~N|198zVngLgN57kLjcH6jP7tVU!foOfm`7569+NGDCQncAD(Q%vnA zWn_3P4pV!NJ#)&G$Uq+>N1_8ArLrk=q~a4uR3^xPAjA7d&K!B>ByyVB)>FtA$d|}h zR34R26;K`5AZL)Tk+aAdsuNX6Jpw=fx0vV!cp*Ye^lunjWbT)dtIS4Rp*lAr*QhT4 ziW%O5{H|+v!H@T_J67EP5xXngUp@7laCKwMQ8tGgdoQcw@mtS#NR(eO(mW_Yngj_= z!ub1e8If4kp}`%x`l=3dYeRp;2-OyU=i=Ud2bGSh9zXMmIrEn`uGtc14@5mp>9pq1d002;`JJo~gN%f+NsA8%&)n^010fCGJED!_OfCIQx zU#cI}jrvmqsDacVYA{0!sZqJzMlT5IB$gK0{s0;bw+Sl{n!oD?Ue1QH`i44qbv@B` z|6Wb7ga&$`HWi*mVK4{{jR)SBa3kiVN(7GR93H3$hMP0m59AHGHMJoP&mMj5Z{`je zMMzO=ne#trO@FVI{Wm(*ztso-m1_DQsm%Y0*4jeIAQ_}0re=@=+JW{|2{n`|Z3ar9 zg1mGXRmSjB$VAH+y|*-ExIvYj3H}eMJ0$|m18SgUdY2AUB8U&QV^pBR>e`0-;=p)F z1ZsPxBim!kcAM=5cDFgxottgW&dGL}bKSPwybMo4M!v^&3>c9(V1lCD0;~g};a*z< zHJ-7hRg4kO7)+I=Ra7|@5P&`mr?*WBNkWhgGN82|k{3-NJu3Nt19!x6J&vh zsNqo0t)xa%nUU?u2DuR>5#&)LD06oqns+b5`|mR%V%WuXH8u4V*udpU6{%{SA&gsm z!jFv;2;&n(Vo3``F{q|C0PXpjIz~HySU`Qvs6cf=WuU4&tnh}`3f1ts0HX+orD{lE zL+vb3&8P$AISuvoHSifmeQ(trf)q=DKP`4 zu5?0EO8cnN4WC!4R#OCgNTVGR)k8wRPGYu_f zjoD&t|BtOo1hUp{ikVFbX-F;Gac^B{!$Ng17e$E3p_-WnGfrI4!tVkzO^TrTI}F;g z_0SS}7TE&xLk=THLki|+P^2^YAs3M=$ZwFV^I&F3BD_2)pgqvQ+z&THJ}?6$A7*=u z0&~EIu;7R)p0>7v1iT#~uuk9+NMN9l8rcXsQ=|Tk-~~OP;H`p&hWuVa6#O4a-d>t# zcRjtTMe@eoBYB&7{Mfs!jQHHrsz7ylX&s{@TY}>%E0`OdTUuRRQ{TPh{4hNW@S~3q?)w3HK4xV#!^`zy3CiM?JR2--qJ%BOw%ZnJ284xNAjYLhL5NZnb=rQ=n6!0jR3MfDq z*Teq$!G(@ym?Jfrng|VE*x+$64NULP2#SzxLQNW!U0Vwgy1M$ZhWcPwQp^OiLYZnU zHdEM&X$CXF6CpGq{5{xYq^XDahpR-ks2c zZML!rJk50f53P!sdlxyA+&J1S|#5QZ)4#^*A*xgy?`3Er`za|2;$ptOe^C zKDUmV(FitBGyfHz+XC0y9%fm7A*|>q40l|Z*0Oyj6)f!xJMIE+d$i-C5v6s3a`;do z^HBG+HSpki^vMg`ZQ_=;Zgj|Y4K;#w<;*@=BHxA!nF)>Pn_XVc;PtS0WOO}QuyqyO zzCoc<_@xGR%V2aPnWfZqXqj7mbm)9oJQlWj7`CZr+Dw2?GY?FPHt7mWr!X@}VTzf> zQw-HG^LZ>fa35Ga4Q?;<=wnPjGld~+F!c9qSkVPm%!&3n1h$yR9Mk+hVR{MG!osK1 znq)HgWl>AhH{0W|bTPB3%8WA})u? zz-y5gk(Xf#@LMne_#jOCJquC8ACMoBTgdN#faW<5B8PIIf=Rt5XhFC_>RcgAPuZ){o_5k6>M~URYn4I$MH` zz(!+Zu(2>vb}BXvn+uajQ=C;ZR9<`IUf>#jJIt0pk#3^)$7x348z!QH!X>j8?=5{Llp3Ae#^YfaSRj zb#-u7T}m6O%SIH1t(#tfiU2GuV|*q@8P7C00*-~yOX``hI`9cN0o@uAZ6r|N45{i< zWNGhiMMZ)7{-sVwrY$hcZMz5Bw1=V1%=9R<2~L5pm|1@TzND5>%bUPys2)D|PX_%1 z40TU-o-N1YGN6{%tqtXEy;qQ$Bh`V@ z&^#iSEg?kZ6{QVT^&w&pd#KyD3;;_jYhgqIGxHwdVY-w~sA;H&(lFE<`ldsbjLrZT zofio8)Ps44M3A|+ZKn}DhPFpj;mxoD8dbtRx)nwDqf4NAc*tLVS6PTvP%ni}7FDAf z2ogoxH=$Z&>D>ha7zuI$HK0b+gv6m{$d|3C4Yi}`kUzr%5k#Uly3~Yim?5n=N%%a( zQGaYNh}%H$f^mPqbAnHfF0HI?Z4PmX&@{SNMEY#4qh6<8q28eOQ#+~G?sjyC85)FY z7~m${p(Q$A6v7SBGwK4@8c{d(D%Erh$`wCcO%|lRhX=Hd(mOOhwF{Ep?pCFd@u#9W zXfCwq;HkEHx59=_%g$BSHKBQo#qqao5~ltc{_hyt5su#p%C<+qgn{KP5iq@bb?IMU zIT|w6($Tfl9%?Uzln6RO`!nE$;j;`02d$;hFe@)Dx8?=L2CAT?S7(L)AeEO^StA}z zYh_I^`UQFwA*I*W)r<_EcQ>><^msuSDYD6tgKI*2F!R4(6|@Y|UT6_oJfIdHU3lHp zKI+X9LH7U9toow;28N-n5Op-8{m}uC4(}?0N@x!#@dD)x_2k1a8Ym5zgBgSlE)nSA z!L%WT)>CSGRhrNt%p(7F`!MAU1-~?+rPSNhniejHmZQ-8Uxx z)B)-}>V4|qIz$b1m1_7?3xzkI`hYqFe?ANg?_?-I8>-3~G1>!$B=rhFQ$1J@*%cE5 z6&%PAa_7qGawzWZ;zxs9S(81(2(NhfI}9m;;YT5+!}$Ax;qNVcjwxyBtR&oAfJEj$ z8Koe6flh(S)Kuyt>SO9~GfG3f>T&7_b%nadu-bUoSui`;3341LKw5xNafJWE%GP@W zLmYZkR#ykg+mu4M0E%n$3Fg|(rjAlgpQCfpdFXs}0s0gye;QqgE<&@=#ZZk~3Wr_> z|9%c#0l7frI?$AS?#9XaOnOo-kZBygm>^i-tLr2o%+!_@Wjzac}#C zKqx?{&D`M*w|Ryc{qAcD`;5%8RkTK(%aDVdqQ0b#!L7Us|Ne~nqAdqq1+~^N2VFyb zN*!-uY$w9|wT{`Z_0%W#u&FRtx<3O6vx;Nr%Wzw_g9+$P^c5)2EyGHK0mcDP7pQ{p z(%1mRflgAN|BrK&-RNsj*MhvO3EjV{m#KhdDqwpY5j~ZK9(-3T#LAWqCjLMn*rhRc~-S9yDKQ@nCk;qyi z3>GS9VRutx>EWJA+KgCOT~X6gF3`5AY18`dslXj?)9~&t;=?s}HxE zj-#JJLBxoo&(V|UDfEl};piHuP*Oio-&5aFKm8AqjEcc#cIR}GM$YsMdJZbR&}=(P zU7#*DK_>7GB=sMu%)Twh(APGR`DVABQTyHL8RqQVOqLPkC5u#GCqc21cWUyfT0+M;na2N26dCVwFa8LEG!0N zQ@>Du(11+?4wc!jOQ51YtWz>(SX9M~s;C3PYAB-{_wQ9Xd_<^mWFP@1W(E>s@mK;T zqJE`rQ@>HauYnn@yTL_73#Ho8a zMIyS|kSGi7B&GwuG+}xyjRpt}$f$V7OqdOkG-GCn7g%WkUn7Rn0BgqVh!)GB0Zzry zfS}BSVXv)1a1isYHTG5jzcRD$S~?tp{|)7V=;o_BObthEMJDXS9=_jb9pGp=G+;5K z#Zczf15tID$Gh8b#5!UL%3*bkSrm4Vwx}LV0QG%a z7e}<&w(SiMYTu(UuNc;~>70p&x^L%Q1NEilP#0+1oYC#>+nk}1woM;6?V^TZ!3ogP z8r`j0AGFn30CmuNWsA1k_sqrmlAahTPYeF|LLL}u_1w+*V8i*UQ;WUu^ z9bJ!N=(-9UO#>+ngfg)}!k1L|amwj8XUNfQB7B zP6GwgK@uZ&nb@<4CCg9^#5%$_SY$b~uqWEEQEU!2k6GVb8nkPK%p}Z4LU)^irCL;4 z=0b&?_rXX<3$eveeqf8RXK0X017#CK(;+&BR4k5m&?Qg`ZHF+d1;gt5^@`TCKw(U{ zf7Eh}biM+69!7X$D6)V^zxy6l4sFA+zr?=2-*9IUHFll`9wtY^d;fbh=*>_^0~n7?VKrl;MfTwWb}@XV z!m{lWG+MFCGz`&+SgqJK>{n>DVn1WoA#{BcyM_HigNJF*fd<($fTAXs26^kS+t_c| z@9^Ip1QK{Y4T@+`68c;PuN5Oq!@L0w9kD&{GE|}R)JAK80s;cbZOzxaZCt2~!JGJC zd$?tBcnr>i1}n~nNIR5j1vKbLgHFvjAL<^vX&4K#1pdIe-PdRpL^N{7#AAR$ct!Fi zKxcVnS)?SiWw;nB#khn9kKET*#bvl0Ou&=yWONz)yFCusO?Mg$qM+{3nFd3stD)}$ zXfU{qxreK8HLgL^aUC<&J~Ze`gMQS08g!wS{Fhi3ZUooX;3nLRTW~84y3wE~4T@>d zJ8Cq-31*=1Y~ciZP`lyAw7}^hg)AI>A|P9EFx-v(#TIF!slQPhEjVXwknhC!-TbluTjK? zvGfQGFAX*XBhjBsvWPm*=61Opu3WP#$DVD@bmrR3*$$7>oNdc>=cMOl+6wHRFlG0J z%mD94gQ3)#<47Dn5FdmO#)p85_)u^WLb25_8ssh$1nSs{Wno`To6F2-&d@S}E~k+F zeD@PHSV=X~ppMWM;+hG0l|kmg)_^-0we^=Lf|ca~nA>U@$7FvV#m~WAKaYO{-M*HFhRX6` z6JWe#cY$EQ_Os{RD?065(eBmr+n<$gqrvnL+Jb+Ff8Pf}l)Ve{n(*(Se-pm|JGl7Q z4y@mu>NW0-f>m3#4(u$xqJiqsbXAA))gg^b^~ROZ?+AvDU%_udZ3@4NU&DXKuj4oH zn>3hBgC}V)hX!+LFpmcF*Wtgw+k6|@iT{qAp}_*?0zXAPM1#fQtd=l7*FyC{%Yd31 z$Y8_q_t8SeQenhl4s-mFe&x}cmWvN#NXNqLWk|#jc?lt4(H3D?zU3>t)X|ETM=wycN3XTPeJE1-!)f(suE%nsS)rr*`K$^K)DoFxNWW zl@499eH+_&1DZ!3!x+Q;W&lxCbft;$YIJxH4$kHILDx8f30N9 z-nI^xHhLgoBFwGAY#j~YwT$S2Ax1)EKt@7j5)Q&ixMFhF7x z@fu=!Q4mLLCbkeS5HAv2iEYG7#LL8XVh6F4c!hYC*hRo|-baJ|G=O@>+cbcH2-GqT z(BM59yibFJH28o9hiLF24L+j5$4qap6MKlg#2bv_N$iLJ-X`85-X#tY?-6e>YUp7a zoTKB;&}hGq0vdM?l3?6X^zw;Wu0qm5m56KHlW;*NA^GP~VENhw|ptFh=bzxfOEt*F*mz%+(9Qgv^T~ zAj8+dT-mZfPD5o?IUFaus_O2B!NQ7efk1fxzD6J}GSBdfLf}*r!WeGx2nbx3cPwRI z*8%&JhwGWt9Qe8g##tW%I2msn#6;knLO|kp7@NbS6Txmo;dQi~ZHd6v1*Qcs(MeS> z(V)CFrYF4o9O$zxkHi8)Pc`&?z$r!mjOY}l_wEq`J%@HjlmllyDwOjT3^jtj@ba*D z`2t+qh(1SrMVuzi5ML8#iF3qx;v3>y>N6S~p}{d4K&b0e`2S3y!6_O*ZSOPh-%x#rxepWm84-xg=nA}IYI9J0KwbR6S)vsRXsFq(C6#J%JG86Nj! ziD2k|KJMMIMb=Q@ytO-gnMlj~9J0s3@bJRX(1HwO8+R?2#KXgW@t;5|k&|i@(gb0l za7ezjXhL;a%a^~7#}1G8)&CT&{uPY6dv&ql(aw|zI{xRI3azoA73#*J{4n!asO(!t zm*3rcLb&&{{}rjUIWm|Hz(nps4iya%g9b)8zo%sn!*75hB_zyq-AGEwL{dh|Nd=ii zCX*>-JF-0u&ePx<8hlHG?`ZHn4St}(1sYtW!H+cfX(Op5Riv8KkXlkl>d7?HKpJUq ziAH5KI*3LW)95mqWu{pdXr7nmE9tnEjB=$5SuPJkznE8tghfY*pgYvQ@6BfR!m^_3 z(%RsN8W>Uu@u|SLaC1v-Rl{%?PX+yiR_0H0W%WS&U@HW?!a=hGGhqCf_ix7zBX8Y8 ziJ*a^kYBLXK)pLX{64TuJyV9Hs%MSLVveb_&%OMJ#?a$ zR@Dq|QGrP}nFZ|&(nESl9|>J+muUcT#h+<#V-5Kb`7qgm%%;ID8ikQ=TpEpsDa);r zjVuV?uq!2kA^-aRMzQ1&durhijA|3kV~GMd7I@t%>#IUa0}R%Uic_+4c+hMA35#kw zXzRD=Uk@CuM|iaBB?2a=@xO>E{V!J7J3Qvi5<%yGJ!W(z_xJ=DRSRBc$O$4R-j5sv zy+UMvasWAy1`w|Kl?Jz)$-(3h61uE@qrn{-gaSaAJiwA3T?&heOY-vyi@WzKDa!AX zpIcnmy<17=eCS7L|Ca`R3X2MJy5#qQt-?+I+DCrB9@#KIyF8xOli5qY3BeZf4H}g`g;^Rjs-jUfjcRCAyN*0fo*};`-XPCG z9SYUaXdfEw3yo?T9RMThVE@uU$S)AGnsX+!+QSghh0tuvE3JavEAq#Ws2o;VA1th9 z<`6a>u%+EEu(`|Vkhb_bDu;rRz8V?L%4wRdj8a2|WsfqlJ{GCQ2w2~i+0}0+6 z)1DC3U|To6r85>_u@T977Rtg{IE!GBEEX$-uA{TL*Z^Bp=}d#dzx@p_K&zMBH7uX!JsDPgMkl}>=!v8%^uE;08LZSGz)Vt zaW8|WIcQoHoMgYkjU$zerP1QHK;aH^KiPkPkvV|#X*SyKS9ZRyOa8rq7w+0PH zs^QY~L2d?0%*<$s`Spuw#pjo5l=h*$dfyrS>f%@drR!ZRn-g7j<-BHtdR%YTWzp4d z&h{E}r$avJn!{mU4kBIiWa(;4q-#8(Wy`3>D;>TB5nyrpqoj(!io6d#!|Fc(O$T}9 zkz2#9#dYfDxGgNqt%>Zz<<=7bH-M(o2;8$@^iONh+$L@-M!#~Kxh>YVR)TgVAY11JkuvQa6(SrdIkr8?b9ud!k~w za$Ruea&ftsoNogYX7{LBseFZURVq|^0{>U#i7J)Lm#a`MUlH89U9%dd2uV%F#M1f3 zz1%*fHP0tmsIF>rdS|5cmj|Wo6G(ywY($^#{c$3(rZNqnPHv>6HjVtDY#Wk8skod; z2`5*u;baoH4B4WXRr8)n;7HVZzFm{@x8m=axEh^8c9i8shLuT99oQu^rT?HI$rxME zJGDo*^ln4adS&+OGPp~(csYWiY#&UjhLMEv^7=wNu2rO9w!kd>KFlm#CarG|Oslyn|e*68dc#5JYps*rPl-76v3zmE~lXT_FoB*67C;qs3MAG zx+dd_l-%4$5hskNKzU9e-=RuN z1b31<1)46P=?a<@(4>N<8)&+NrUz)!K+_X6y%ut3ln6EM0{1ytCgd*R!k{J{jSOxW z0Zkv!43XCcHAC?u9IrgkAB^qE{nrMk#qfXgg|Pkqh&bcEBNpI$(DYUf$WIS6;lJ~R zh;{vg$5|qrE9x8OH9XGy^aD+Hfthfg=XF>KuO%iN0~v>fc|9@VSusqwxoSiJc`NTk z3(nhkJMREZf6xp7&A?pV#k+|G9|W4g|GaO?i*Y7iiuMS;_s=}{QTawMu3q!yu4+p| zIKwyUAYTN_7L6`Dqgo(yJ=>zrB-8$)N7voJ7{5_>6L_nAQIdaLb|d)5WH;gkbR&2@ zaU-&#+z9oN^8Ay?U%mogk*~y8=AYoJ@KyP0e09DCXkG-(aL}OB2DpzKH0ZL81kEVW zj0Vk^g_xyU-tEQLQTWT(M~Cq#mAyl$BY2BLBvpHqY^s_>W0oPz8Q6|298`pUO|;-{Gh8 zGx(YOEPgisE}z4P`CNVuKbN1!&*$Ic7cigmi}=ONMSdy2j9<>L;8*gi`1kn__|^Ox zel5R_U(avgH!_#`kN8deW_}C5mEXp1XU_6FK{FjRGeI*OG$>oSpqUGr`Jh<l z0-9x@Spk|=puu4c&Ihjp%?8kX2pXK--2xg6N;(0W9iaJ`1es`dfo2bAJ_XHw(BPCR z&Ziy$%`wnm8T>1X-#O4+0L?|v;Bqtm;|gf5fd=i&4ba>K%{QRIN%j& zff@(YTA+>sbsebRfc66YIM5A%ej4ahp!)+o8tBPD&jorF&|3gWMc)Ptnq|DeJO)e+ zU=o4p2+TlW#sCurW+gD&fVlw7Enxlt)(^OR&NczI1F!>t9R=*Wz-|DXt!7UEM+5ig zl}!G3Mf5P^WA{fCy{L6Qbt4X$fL7KvBjMUnQ5Ra=Ac`AkG_#V-Js+`l`8*9=x>lp0 z@F*XQB#w{$adZQCr2+3InOi?%1M=1%Bf~Q?nI2t{L8%Cr_zG&P5Dp_TaHn^^JzDux ziq@*shs$FRzkHkbDu3GhBqxScL$H)oaIxRfrPMhu$&4vIA9Bg~K6T2~ks$N*th-o} zad)%iJ~+zHjP75*Qulip{Z$}!XT>)he80X8DRnI@sP`lTdXf^8%nT4nmEU6badD;Y z#YyJ$M|{tR;A{RAqtRXcxYC5BeMASMtt>dgVuC@E|L{J9t*+Gfev-N6L%&|^fH(D1oJER$ty)Sos~=tC-tEOaS3}kK z`Q=7Y#L*3?r!-*gqf5`-21FtX^VfP`{g9|sik zc;hi0Zyh}HsCQpEJS@8A&PvT&|8u51&|-H{s@YxuJsN>9zXEtM`n|d<749sE3L^@x zE>6?;?~4)bxGO5U!gQs=PYOWAML41SP%4kEub)!i?gF=)5qt6=yE#Cqdv5`}YeenH zfy?*RH$#>B_9dB99-1Di;{J2|as%9anbkl(R^YBHl<%|XZXTgjeIUu)>7lE>pYD06 z;A!nBrA7?&FHpztp%nY8O5KP5PDkJ8ZSxtlhpPH@rE1&-@ShJJRP19K?MX^S82kU9 z>sk!FjU;oAPry~M%w$=PTc%;Q%ouL?P`*_{$IUs9+G+gdZ1gfMfvXQ1tBhxepKg9(Cf-f>(U>$$45gL z39H1kiH|z&%zMB5fGH*|29nWD*rUAp*Gc9!f7Ppf)hx$(mHyeMzWaGheS1Ku=~h8# zy}z^TNqa=87(@IYUiZWnQ+zLV=MGL})F)dC21j@4Nu|E;|4w~(yY8NV`v@_*X7nK= zhS*yDoKhbK`2Xj+E}tQ*lZ9KmWJ>0%R+;|Rey+WN%V64z+Ap-1w3oG4v{$v)wAZy? zYQF-_&!E9c+FwC)8#EYgbq6%RgXRyQ;(#i&Q2VvA45s~7Sq9Voh|AcNCbAAjaq2o4 zW&3v>tU%Yn5h&cQ|4%1A5lY3GgvX+nwnlZy+BM{KZS%;bnYYXAG~*uLQ3r)GShj3*+2p79 zEm~N(j&pv3_qW3@4#K^^YTTqyUZ^CmAPN=93L<5}Wia6hTtTF)Q7ecRUR^&FY6wrs zi)TVjvUo<>AMljg*Y$)J$Y7zq&_HM?G!hbp#zGUJsnASl4wMrp#MTXz2PiL4KA`+S z1%L_yB`y?NDhw8$rgKOjiqM`gSW+2W1QR96fhbh`zYP8#U~o6W;O>CAb(L6Bp{K&& zbYw8DgdukeD|cituY#Q^^e61i60(6R3RJPMFhCdx6yjE@z!txS7X-3`OYaqM1s6rP z1Q9|YqFXXrbc+;In>Jc_m2iHH@QN@NsKG zVk&Y+_A)Bi2ZbYqy@!OuK-C7SPFOf990RH@Q1Zr<0!dpYoEFY0>^&>9H-QM@1;XBX z(d?yns7<>pTqo?kB3u=&0o4GghCnsS6}}X{BJ52Bs_}mTd%r_Qejm-qYK2!<553xO z-PC5KrROi4-Y>KFCoKDObXhKCWTlQJnte5|;Z13E6! zYdTtIdNlUx%nEyTcAZ1#j4P^h6ZSS&+1m=JjzD$7cu?wDLSNbE)A>>6bZEU>L}X4U zq0H$*6i+UoaD#?cxueXjRGU~*M?&LtrF5u~TLaZ5tShZUW&AWy&lH%&&{fb?mSs*? zNtQVh#;>bFWUgJb%r%~_Htk7W?HDqrtD~z+WUf6>xKn`aLD1n27hQ}UE@#T`PW_=r z^NbI4twQs^Ei;1PuEQNJx)?iLw%08@V$q%^OGmwM;qf6UJsM%zBDG5@8vx9+)fTnX zwUI?Y*IE{V&JTDG^^p#`lt&vt=~5#ikftbbU2h@+Nva4W-&No}^CX}jk$_B~o>wKH zKT5!TcUI|M&=Etf8>V{^s4hTt4eLhe0H_q8x)+$QuN$qC?fyN!zHXdOw)?3-;dW{n z#fgZ_8_|rcHNVrz5=R>qnmN)m?=wSN%wmQpPQtR2qs#8DRkHK+ck2H!qJNba3l&?5 zdCydTTQ^lVoxJNbjG?7^pcIC6GcbmhN{bOgYbmx!MK7$Is{lSn2D}#mdz3%2>Xzx2>sIJi>Q?FA*L?s~Z=m`Bl>t;=p!xxYNM!+qu3CSf1}xOA zi2%Mqw^8>Ya-L*_q6Vsf4+UxrP_Gcqk0prz8~KeB?gh9lQTHh!&px0qm#CsoKO^e% zppdRRs5=7GVA#Xh^P{=7LI1T!R?g~~y z@6}zFHRy06h}Vc9VnWk<_b0AVvvlab)_sc_RCiN%OZN>>F99ALK#k1ReW&}LXwXqW zjsEAYw(d4^`L}2;XLSxPSa-A0rk7S^9C+^Vz#TI0|A;f`8Ylx-t6|$ zoYdEP>xuTR6-gm#DP)WwrDycK%w|0&v-#BrbfWr*QSZfU!+Mk6theZ`dYj&^cj%pZ zm)@<%G4pu9LlmgjfO;LMi9o#p)SE!P1=J*rMtprEeG^hiBC%UIY#bKWHzjrpGk`}E-_=kR+tzvv zg3r~r(Lb$k3)H(np{5Au>YvfKC&bSM3hmiHJ;A0=LNY%eP3Do$S#t(Mw8 zlRi30h_CO8WmBTd);wQ(!jSgO<0h4+CVsN)I}($wc0qSNW)+>M@1alA_tf{&r|Z%9 z&I4*b;Bg|<0-zQGwP>C`11Z@rZnZuOQwCFuiE&+mDTApM|Lao*>tEE9&BglR`Vl}a z1!`GX{}QGQrk2YogP$c?H`K$@{*(o{eOezS$FbUvWA)?7_q?hf2h>WSR)zHw^r-RP z2MSZ8woXg=)6?jbD7)>-rjwk+WmA-+AJVdLhiS@lDVQs)D{j+M&dF6Pn5>_Q6)=81 zCb>l#twF7TvVT>U)#d_6+D4yg4&Z2)Q` zP#*&I5m1|e+6>edptdg5FN`SUrMiv!<%s=CqK>zz>KF&?=wlrsVsQBXo-+RDch~7R z6Ag<^K6t~9?uMR+M%5gK9Y=LZ@! z8~awdU*>J?dhi!nX1_1~M!U9xB9ik)S$&*W2@U+Hg>e!fAh4W=nY zYjcZOn}e~eP2+2pLKjqke$tbiDoA3i8A*JEkoXoM@xl9%*bryXA&EK4fCpBS+$jdu zz^VCD;(@}QDVRk?PN6~_2MTwoL=veiH0Tu)8_YU~!5UZ8U?(I#sgn4tJUMcOkoc-X z;=kAh`)~&*{55;zQG>yUB5v>lbt)p_1`$QvAQ?jB0_rqSC`{yzvoM>@bfg0fB@JXA z#!$+D^DsDiI3G5YHk1MC0#IKRm@{FhU{K~^49Yyr=ZKO)o`<;@g_5OcEwyP+8pu4% zy;)8Sbqw-6%q5_3OhQKR2Aqd6#F&Sfy8Fix9X!p-PO8`AEm!g=%$PjtpaJJ$3^C?m zUcUU~0!vb2)t6pbdSu3l;1Dcp-l#UDg`u@9WQJC7uRfcKu~ zx-T@OM1-t|A~UcKm5Mz%GR4r}Fo0Y@ z-2m!q<&M}lHJ4HwISjYAAoedBh68mAsBgjsFyLVATcCa@IPAw5a2_UXc!f|KH*yUN z8^#f8e;a@m(lvL;k@Aj&mi01>mh;CBf8XivEj+r`f{BT zW*^)na}w7>3^CS2K6>Wx_1DTLPFqs+#PP-_`r#U_I>0jAHjwoYdanW3LxurOViAmS zNJQEZMMO)z6-8o>LoG z$yf#7$ynL=1kfVTQrKA4SPke9&_xSO_>4~(>!R@8yBKFoFxDf&R~TrF%^(KZ*eK3q zOpI2vSL@fFm{q57!lE@R%Uc!=`7&a5T^{HPKvx9163~?w z8v8{Apue)5VjN5a01ul~R5>P=Q_`x?_5Ri51-~9{97Cw|3eZ(lDvd)b-FIcm_@)uv zjp$Qj^^xty{X}p7 z{U9{sfe396D?w<+4$ z4XazD`>mm!WxR1U#1vySq_p$Qt{bn{J~#G{3#Y!^(-;piQt>uXCRWDV#K?HJMCeRB z!5b3}-n)z>RE(f!GMLOV;3f>qL_^)?0Z*xqI8Ee0gGT_|R9FGrR9v^wR5Grp=`jL$ zTNUsQWQLCJLJW1+yNH|0BH||0`t2f!n<^mUri!LYW;G$PsfOt( zd@s|JCM14GpgV<4wM?~veirDY0z=+Z-;@{wc~fIk6M}qapwajdV{K}IXts=IZ>KJ6 zs}CR1;gz5gZ^a#{Yaqk6jFH%ZbC~l$MlM6EV+R00d$&jN9Z|oNNwXp(^~}kH%xB= z-3#dSuxXMB6NmH$x^KZj|Bh)Ef&QM*2h(iRy9D|^KxagtpM!ADjfV4u@0K-j9j!fY z+1E|XiP~^O8T$9I?1JdBmp@8xJ$rWZtaY`D6uo*ZxoQ-EJ91D{QRC+W`dxqDTG`p72J?neZEPXze=Nczu^^mrCH&;wN9 zhsdOVnUH>D9`eTs^2dQ5s3L!gAb;9)hFpM0)Y5~MJ0gF`TvTo37bdcjZn}hLYSBZ1 zej#kSYC_FF4CsP88`Si*=^IkXP15Br%3b~~>GI*Ry1c$nb zQsl*~i8Gn0Xc-vAjhz%oXy}}u_(bms&t2?Jp*Q0=EC-K5qhEo6GZhasiELzp|7<^x8Sk+tuU&>s~Tpj3f zK#vcbpETD5dIHcB3FQkUy3$66ACbCXI<`rAR1D5h?znu!yr{NuocT2Z z{CG1$jjuI5Y<}H55$G8}%j@(7vZcj5**py)yf@Uw{Em4#fp8|!vmy}U<%4j(d7&bI3uO6w zmq56f$X|?bf$bwL%v}*&Y5qXL{(TwyIS+VH?bi+ForwJ-jK$3#N3h=$q5OV={X7-> z_wG`DMIQ8r2=s@6p07fW>i_-&Nb_0q1%mlG^Ld~b0KG75{@i>K=tV#;EjY4YHGipe zHXg_|4CuwA&u);;UJ^}qr+VtM`CIdkC@J?2JIz0te# zBy8x|eA{eW&vA8UUAjpm#S#~1vJ{Fg`@y!?KDsy~Va2$HyJmb=uM*fW}7vw-_vL1pEDL_TqG6`&AWWZQxlcVik5Pgiug*F@)n%;Sp)Riu%(ivGSKUQ-dJFuTdG?y=RazA z3!Zv~ps&Y%v(zG>Z-@rHlX`%&rJkh`G41!n&s!2LjS1)<0{xK!x}`Y+*&-UqQ%wi{ z>iwin`bQ@xH)#Azk)tx`t+8yI=(0C@O1~cM+<3}IGyBXBK6QI(KG54)Iw+vGmqFkB zfX1txnq=vTpj)1|BwM;zx>`~!sg`b*?v@@F^sBc5p0G}D2YLt4JAwWf=ud#&1@vy9 z_bjyZih!OG0Ub3y(0f(TF$-bDn?FTB|2LeqVAoD8K=|_#(4VUO8HN0@j4rgETtM$5 zlh=4d52=_6^#sdA!k^bHuLFGm=+DBIH!L_lItcXf0vi-rrdTi#JJ&MRGR=a<_z=*j z)Q{v^X3%FWvw%jy#_|0zQeAO=PpuNoLuVp{Wf&(&3i~(7{MWM!>=QTbs=LcKLV{7&l%E!XR z7BV2S$OAG|$-}~y<(Nd6J~`ssXcc0;rJ}Riq729^%7E;2So5-F`G{}HbN6w|Et@Q4 zKxWx&*<#sh*=E^p*6guIB#HI=-V2zf7Cu8<4p>pL zrZ|(;9Bolwu3bfQpiBKR(~fNZF@0*U(!}~&ZCKVGT{i1znJcE#iQ|`-Us~m{lRZ~p zSxcdKwHMr0ANC#Nw|Zp*{ObeyPJJX~EsZ38gy}SE8N~ow%PR)hTA3K&-&7J~vIfNf zGbErviD0o-L&39F2O5u4l&90IH6P?=TkBaH;_F!JTN?oV2QYDAYa=UW*ewJMU0@c& z+T4m^KT*?Y);89sQF0g!FqGmuS=%Eb9ikEGCv`n~{JX@fOPhW1>XIMokR{B6)@QM7 z=jgHnPGlcA`F<1Km?f69Dp&c0Jgseg-r7|bdutaW_6&p2SyNH$88%w%?N6%c^|ba@ z08b}?GyDUdQXk2(zW8V!mlfwr#~|R05CNPq0OJJ4g<6}D!&MZ3 zaUm|pIvyCEiumh@xOF1Ej$D8t!-X(eGP$Ft@UGg#Db{xg?o+MPfH4AN3R|aJX8>ac zrr=^MtT|TPe3ff?hxiKUBPh;7u63SuKEd4rj1psU(7Fh*TpW$%Tu*1WO=|Hyygp1g zZC+YZ#(f!YBJO5Y*G#Odtg98=ajFDyx1-&)u0^}c z#E5gaMir^8ta8Vh$E%&S$+}e$0gQY@5%4_V3)DwGu^vJZc!U6F>*0t99M^5Mo2ZB5$BH?y)i?+17eoXunJSSBm;hNmk?+LXsK+f@zp|28 zQR@xs*T9ItNMY+O>o>rJfGN082kVbkj4O?b$+h0L{zhb=Fffr&2OAE6Z7~MG?(?@N zm%Cjjebe5f1FBWUz%JyzjmEM}v<$3!vUAB%(Dch`nksKyE%yUiX^G%r<83;8R~tEj zgONiWY~%zECT6HZ!=si$z0?P7Hm8ie%^_o73h8enCr{v`_i@^6ep`u0!`_B7r-c5t z(uPg8viP$c!TxcT{=uXY!ETP4KaRvDPm5&GMzBKEdww(8^prVKD;l{?bE zg}Jo)UUh8sNQcz5B>+vGumG1o~HjQF9d7CLr{N%^0bS7sfSWjIwgSJHuj| zWSc@@pKN;@m|DQp4%?>M&;-;0re1;hm$q5998$?_LN+`=aah=f8WWg=n8Tw^YS+DI zTTHA4jw&rvl|dyMj9mJRZK-V;8B{X$fx%-?5876u0IZ4@fF_Uc(r?+(`12`8x6W=d zZ6;QX!m=96u8A(&QuuUH^1!-NroQsiV|`z$Ll#feW~{e;sDQpv2E7qB-4-U+B08c% zePo+$AA@5xciW2~{&tVuYxmjx_JBQT7wwWgWJmMX37BVr=?u(sz$5|l zJTS??bOEL-FewY|7{o~Mx0lp8?2qBk(ggoh75^SG{@Dco{sjMjr`QU1ip^dfsbt49 zMY=_(WPb{&WUp0dJ-LACj#F&phL$r;6^{mXj0OqY8`>KIlLk!Bu)VRp2{65Y=~G|| z)ZWrg0yFI-Fq6Sy2Z}EV%w&4U5MN74H4})vqy0JLp1qU(Sv$&G1~7er>6dFyvOiC_ zmkCUk%)NhffNt-OT<#IAkS}{Q?Y>TGynS?&O7HHPI<&aV`(9W!J-X}<aO;-zd=OqO<)GAA~%_c+}rjk=qNTgIHq6U00j7(vHKcsK_|` z8v9xzc4+rUDk|T;5#jtW8qV)V&n?H*tao9;+qHi%?Wsv@@j?4$EW0JTtnuW&@@Hx! zc7$7Du|>MJNFYr zsQnl)uK+U^7<8`20W%($3BbGt%#tWE9L~Y{@86>DedfWax5$)gXcYs0HcS_j)ha(P{ zslebS0lgqlzgs(b#M+I7<8-Af0&-@5F9$f1e{($*~a0{KdOKo);N>H7R{_N z>DueziVdo)Uwrwob;;{{5f(a}Sk@I?HgKiX%8Rcw8@lOmsL1PeJ8sKkp~LG4U_aA) z9k@{p_0()+;r-%~BhWaCIEu@}b>O%hJ1plR9x3gp@@NjXqpCt&$CC1gG68ehxN z+R+A>_kdXtcC>Z017;yG7+g?5Gx?5A4m9~;$FoFZFCrS-kwi2$>b)qXXJLD&J)Y{o zW7DIYbVpA|FCwQ)fg$599BDZ+5dXf>_&@eo^B&7P*I%=&(&*W(xYx*B+d)Sbmd%bX zTYcBLQFr2-?p`&!N8Q2nwmbP`WuRk-0z8JfBJe8^ct;Y^*o&hYueN-IV;lni2)jWY z<0HUNG^9D+j4SGxM1WtV0>6gr24yxA8Q7AC{8WNG()fK9`56THnT}cH0_Fo?Rx5Wz z{v~rjZRA`B+2H7y=a>)7T42_N9Sa-?J8Gs63r^Q8bF4xP?@bWmc;E2>!EggGIDC~c zT!*-;Q_1-- z+~U|y-gPSxK#YJu0o*|Za8oP+EVIlpDuKubtZ0_r4gm9+a>oe^ zs;#+9L`IynlMLdWjFScC5HN?sPTr{n<_IuyG(&;JdpeCy3#r6J1Q=r%hJ~G0BEZLD z3Gi0E+BCP*kL+`LoL;97m=nO91m;w(GvEvo_Tl8rnSb8WJB!7coW-Nrym5QbHS@Xp z8z*P%@l`8!eJEkR6LV!dW8})_zwUQ{K9jKM<=j7}H@!Gg#IhDj-O24N>ntym*jY{{ z@p&Y%(@IE;;UBT1jGa}Sbsx=gI};QVI~y7{kvv?^CWOSFt0cy_2Pb-b$lThQY z6g+23U@k@k&)EhAPj|%GmRuy%l=(urqyEMK2}7I_d!dt)m{jMp&d$JG2IflGndHP- zo2$TlSzvbCndg7~(w)7?KFV*^~6#^{Ae+6jK-NoEc6W+eX=KXSTCHk-D#d zxuNKM=U{w~A<@YH_}YexPrO}w)AG2XC8qbBhAY^J{4gy0VszPh^W2)(jwF8Z=EqeY zzt-cmfq6RL3C@uU>@Ul(-+Vyh)lPlYIT>Mpgc&mD+Y#8`Q5-hsECTyCD(ra9d&FV8 zlLvd4z>b6CZ&ldmA?(iih1Qb`nD5B&0B;ETvugX6I#&?TmpPXM^8+wHhMg;&tAP0l zm|qLbWINY7HzIuZ&d)eMbbdtOLk0Ou1iq~Z$+l=n+TJKKi|JI?_}T|P%Ybixt}Mg1 z6U%-aUG{dOxyco=_Qf#!?qj1run*4%-)`rp9RP`z@BnGpmb*&cn`Q z3h1aL-vQ=#0{T88vA;!0tlFt(oL3Qa=UL}D=XvJ^=jYCg&M%yooR^(ffQlM7fq5{TT8KsO>-yL2wH;l!nPAt***O<|YGWd;`iFUJ!U zh^=-xTy9c{6D60$+4*5%mj@-6MUxXHgO-j-YSTnl5u}|MDk` zV_m?y|9M;ODjjEXm5HWtm75*h6@N)&bK5j(`Yba7moi2jbd|%h<)h1HESRaK_13#ZK90oI4~b$O7!*m?Ic)vl*piAdi^NblrotkBoh zT(^%%C*ur5~H&=IHivWwO^93}k<4Sk+Mftfmdy=c4E0f4iQDAZ2 zf{e6W0}z*i(YSp3$IXTMp3OHdz24Pzy?kF>@ugCJ4qjv_Y7s_RuS?aSHCQ%D9sZ4flIWedG<- z48+~_rt2-&B-dou+pa0Dsjg|RcU;qfEe&iLV9Np<4{SML%L7{h*oweb0=Du(*USj+ zIj*oP7jd6UaDPI@y#}xifo()^PyAPH7yPuSYZal;`@mLFDYS;D?X|9Tcx?c-DzMe$ zdv&DHG2A;>UqyV2iwxpjTV30LeG=H3Vb>1VPGFw`woZY$yska2eWa4TM0wYemG^$4 zylcl&-s3s7X-8Zqi1I$_I_5eKY+YazfUTG7I_Ww^$X6d&oVfU>r&L{^BbhHoli9P- z`s@5T4R238S~8(jyEnGV#J`MXuSAzU`OVn5Z%=D_VonLZ@ux*`m`hS;l~p3q%%7>f z@s*22Y%zY<*D{+M6E^QBI-vG_wfGO1wB?a@f4B=NY<4q>=k3-KHaAt-++6j%*=Gou z>TpC%PNEo4A|0o4K32Tew@g zTe({U+Y#7Kz&;CXXJDTLHVN40flUUs3$R^*O+6S47S~!3HEAS0*iyz zSAflu$J=c7|2FsQU$A zdjg9q{u?do)p0=}|IkDKsvk-rVEduOm&}_f(|)v}grBV&mwBLUM~M>k^v(`u%_t=%k^Fn1N+y zMwdMz>>pOWTI0==>l~YrWggispNe?bofB93-FHV+Qu}0%d%nW{c{2O^KcFYoN0zwP zqRM}S$rksz2=PCRsQfL2_5)RwKjf~;e>qR(?;z5L&VqXAf_oQApL=(q_2dF}Fc~Z2 z4P6eK+P=@+hlvCpbRPnCD6lVt-ACLrtRlP%>m8IZ2 zEE^+>Uxmz-sr}6jt1VAxaenNn=0D_vxNjWa?xS{q3~KS$_u-}DWhI1fq2 z>nY^Xcqk9;VLYsd^Y9+6M*wy-uxQ{=Wse2+Rba;fJ092xz#_?BU+B>*pnJ@;d`h6l zPC%cig8nAzdPULC`oE{>|2idbk~wzn;X3`Zdt_v0#rktsJRzY$MtVwGpYE|{rUqsv z_idWiCpAlUnLLG&Kb|7Mz7cVmJjEZRy**_-H zx2KAyI#xpO^;DC!_uD9bo+pX;O^Mdt{;?76cZr}kQshwRSwJnu>Nbn$fcq{N2uycW(2kd-c-vf35unQM@dPR5}*`4jlBD`Is@^;BxWxeiS-WL2| z+XIBRF9Ew)~dgN7uZad=WWkBgn?5$ zQ$0w(6~L|pc2%xtx(D}W1B){QAN=$FlLu3xcw(eP>2f&tkMq?MOO82v>qn?Rd^)k5 zp7~hzy=W_2_`5|p*)1Eko;`3{V|x)7MmpSO;3Cgb($9;D*LVX{b|GyaA>`k)J3`xip8cK!aYa1`32is3 zwA}>kC&2C^lVrOIZxthPlnC1~U_Vra?Ia4D=alUNxq$tMg#62QbhB!xP5j(*iFCz9 z&lkXM26ju>bJ=qR*sZ|sC^%E`m50nopsBza33TALk*@oOblvu-uCrLx)dJ6t9`tXb z7BW4zJ!DfDyA#-t6*tR^k^kNpk^gs`$9Lq;YH()B;iaul&TEb_B%=;`aZ{K##-^}y zvpVhk<&%VI8!Hy`wI6Xh70VW>jav%H|I9Tbo#hq023Z8WxW@=ZV9x{ILw&^N4WbA< zLS7B8sEB~Kh~j2@OArzGR26}{c{SK$cO}64I7)!GG_d<365x%O-E7yh?%g;&&f-{3 zRPJ|YR=iJmtKlnot9WtZ?*Oo$g}v3iHGn+`?2!UfIo{gddWa-$*_lQ*?cf$qOa^f% z*IS=H<827+A%qdw!#K0z#p43JF^&tkoE5*-)uBSZ8J-v%? zpwEy-JKnpHRdUR%q2uys?``dED~qA`X;}=9;v5O4#l+MK(P=SN_&RyXIzQw0c9s!8 z{t%C(crkbJB5$gX#k#r`58EJ#+NGrqtV=S}AVIu$i%0U-C}(t$)AW+eo_qh; z0@<0FmO|L)`}6mCW*?aGk^-{C4)A}S6^+3K`MgEBQIFXm5UUVYv0Q>tx zo+YL}e$IO#&Y9yq4_sUhrXVPUW6eLE8fI1xtn^;-l3dKFRj(1P%28-Xy>o~^@O6|w zpnmx+@9jslqrWM3)E8$RX?i8DsEAAvM`7|w`F_`s`fNV31>9%%Ie_DV(}sO6pBp#mIpi)LETr^*9=kjCHU(3>iZh_8u}Xf5`B$*O?*v(vjJxZ4tv`PoC`SYYY%W< z;C#UO7y6nW=48?n`}IiuWUNbD&5Z~ zD5&`=Ukc$*DsXC?hOY07+OQFXe?_;7gr_lW#1TNoNuIWly5X}C_^QHE1Bzi#WxnMAy*2x$NqV1 z=$nWPj&Y{;MRT8_i4~gVtXeb1x9Wx8w##hCGqrs&&eXo@n=$M6FB|t-Iat^IrS}^# z`Pe?yhpF69Tl?OTd0QH_wQm?|YwWuFEG_zSd~@PThkaq@9B^f!(4nwzu5TW2<$&vh zix!$yaVE|Cg$8R@`xcFe8*vi2_#|_?L1hLJi&-YCYwt2$dnEVio|;vrdvbbuYUbeT z@$pGX12Zyv;cRKwjJ|{8+h(O^X2mCGqxnltiLaMBAT>RsZ)#>dURfD^lGEc`^iA!P zke=4Ni;Ck?-wM*AWxnOWl?Sdu*tarnHE;un3CEjJFQz;WnOWJGQLk@CpA=Gwe{hR#-Lg`% z?^A=lD{7(SzFDa$`Mz82fFnK?_~*anAXeB)}u535cW!z(Dg(YJPx7W`OzV&HRYh z&v^YBSDg4T^~kLuxse!*GV;Wb?{}h&{{XIj#GCPJP#gOx{Z4WL*8r%<9mgmtVf=z$ zkKUYL2VA2ZKYm~0LwPZgcko;M4n*_bB{IL$?;>imF>p;}wRzC*i!=HC(awi3a%|(R zw_3R08maqb)MKL$64m7wv8)tb_S2lA`xm9w^}PORk9|c}J8^iTPW1VU_?2CQ{$jG~ zYKE%IUy`V<=25E4;&LRJ>&bp}S>(Mk;QbR_BfKcvGPQehR{yNLA#s_=Um}V_?Sry@ zvhl$mPlTcs5ek0=A{4FfBNXamRs6LG{GLdbh`bCDC;>`(2o-*RZ4&?NPr$1_ac|nl z`xCjg1pbb9;rAyZ{C@26r&aiyMT{|ZyU==EwVMKk+Tf3{+JLA1?FjO1foqrJe+IZ` z{uc6`{CL_^H1f~;lL_+ef$I=KJ{8gI7LDfq`D^2Q(ajdF65r_EBz_ylo+I*UShi<$ z*(WEv#})s$ajO~Udw%!!`_m8PL%z2k<1x`_`SI`t9Ab1r%cAoBxUPUjS6!iO_ati#%{3p;U@MD8BbNuM{WIfO+@SpWxLZ`rg z&VSy2!T-7cq8}v_{o?+>4FGN+aD#vwJkNjGe?{{$v&nxQ!^F5Dz`cMYF%1&!Dn^W< zPw>~4|NdUXKjafA*nUrt`vJJ2Bf{v5<=N#rSzXc8r=u5`orbo&MP?fQDoc8#(&40)LyZ?_s9B{*cdl9(dz>NS7fO`qJm*)pG0V+TT zm;f8#0yvBx3EW%2O#^NPa32A;4Y*T;TIH11;A!WX8EGl;$$k6AXJvMc@1301Cq6SZ zD}F$7dVlokMRP;UCD}1NKQ}flaid7-+8%z={D$QlIhg^r7QnM zbI?m2n2htZ@o8O?vihbcXZ29pgr2hMN~xV1!`B(qmAKwneUrPU#t-V+A6@U1Xj72jrXpRSQ#{)BqK z8bBW;9Iyp&nqU-gqr(Ab04EB@0QU;PFqR9JWR7;#3eqPC1OmlS5;3v*^O$743#M03 zAqmzoPxDqeyE^7r$E4~zF|RuMc7YPayayf&Jgyjvv5I*g2i$9SjYR-gcya8uym@jC-JZfaJAj{DCKBB|9D`VFI9}5x@k0ffxz?$}}3|KXtOn z@s)FvpF2?fh0?^n1Ug{Z7zzHY$I1@gSh4xwk6bU_Y1Fc3pFH~#=o}yk{!kv0WOJu3OG6jN->nAtvop2y4fU15va5G{zu0X|d zZ~#y&149Bs11|)I1zrpc51>+<2^@M9vw=g80?lw3xLhKZFXJ^Tu6STfTv6h=%pteM zBTT?8MFGW*{EJwq=;^8Gm7>31Z}R53-%3Z8&9~we{l~lURI!@(r&z4$=8>hY{L5h~ zWN!v05s=Y7%*_d)6wMNl@A=21l9#`V=U2J8)VJ34Bf-PN5nl`9<8~`B&r~73+z;Q zh4U$B1XdCw@QG{$R>k6#`qD_VLTVZ{cbr`4}K8#qtIeH73B<3_a?`7c2z*i_Jz^wre z15pkJFy=H6Bj$A8<*mPNtlaq28-rFYnvqFOk|D#G(?E=v(>u=Fi)wU89J(TI`^_pgCv(ZZmLOVj-4feq=QrbOv#&XigBFf~_&twA!RVP{Jk!g8^J~*p96V z2SY)eoJNttLm8qihx%CYU|AHRV2NPKV5#6^!N-H8gJpojxt5QCLm9+D2@X{D0JnF3 zFg{o=u4u4=vSA&W>&#QLT|h z2es2`1?vz@Y6G_~Cs-G_{p95zR;vaZ1REnwf(?U>f{DN#0PZv34(0}%1e+4AdI-3~ z|GZWWwuv(ZpN`g)3Bm>D!|~0(U;lg8lA1v@&XbHf7<>lHwvR4*a(zd3$G5c`&b~6I zi+K3@Z&+6Cz)nFWWF;tvtZ+wBPvQY0cy2@V0V1*@4wA*1U@CCOBdiXpi#5Ss>U_fq z;zFAJ1v^0&>=(>dn4Tpw{d723IEVvV92cK?5Uqv;Um~mT$Apg2dXr*+(c+vqAfIFvlz{H4J3%;dxzPB;oND%PfV`gPVg}f?I>zg4=^Tf;)pB z2R{k!3hoZ>3GNMk8r&D$A3PBJEO;<@D0nz{BzQDY~=n~zc zNA!w5(JuzXpeTxx7!nJMMZ}_FF|oK|{@>x&J>?`&YGsP@1TkJ0m5C@8b#KGbaaj5u$I81y|94?L!L3~MkSsW>j5=V<;#8ekXn}{viG+ z{v`e^{v!S=-WGoo?})#Pe@JmsAxR@q5-l+jD{&GpX(d6@NqWg386}fsmMoH0vPpKy zAvqmw_Jz{21WJ0zVG;3BbP&{2Rc(1^i^-rvN_<`02pU1b#N~Il$)vKNtA< zz%KxP5%5cZUk3aN;8y|v0q|>pUkCgK;6DU@6YyJr-v;~+;6Da_7w~(4{}lNBz<&n( zA>fYye+>8&z@GyC4DjcGzX1G2;4cAx1^8>ge+m2z;BNx|4e;Lq{{!$p0sjl|w}HO{ z{2!n#1X>ET3}`vfYC)?5tpT(q&{{xi1FZwJF3@^F>jP~7v?6Fjpe+L0VxTPn+ESo> z9JFOX8xPv@psfhn%7B?;wbejd1GF_kTMM*xK$`&C`k-wH+C zThKlO+76)Y1lrD^O#*E)XuET$2kjf6eG9acK|2Ms(?B~Nv@=0F8?-r~%?0gT(9Q?# z0?;l3?Gn%~1MLdXt^(}`pj`vnb)ek<+7Cgy3A9^4yA8BEK>IOhcY$^fXg>w*e$ajf z+C!i{0@`DsJptNNpgjZHbD+Hd+KZsQ1llX0y$0GZL3;zVH$nRiXukvP51{=Cw7-D% zHfZmF_74yWfk1)4fWU#E1wjXb0R$5W77%P8I6!cL-~qu0LI4C2gb)ZtKqv-62@pzw z@Hhx%K!^vSJO~v*s0>0C5UPPt1B99&)B>Rn2nit62caPdi6Arqp&1A*KxhR*8xY!p z@C*nYKp<85!iOMi0$~fWkGOPQR*IL(N#&&qQbnnfR9SjLsv=dDs!7$Q z8q$+eP3bAAmQ-7+Bh{4>qmHMTxub;lv+uxr8d&jQd_B= z^o-PA>L7KLI!Vt;ou%ibBLH~`J*8e!y3||hBV|Z^rG8ST zlqF?L{iOlYKxvRPSQ;V?m0pmBNiRynr4bTHFG(*;Bc)N&Xlab}iZoVwRT?LamnKNB zNv}&2r8lHErMIL>(q!pvX^J#enkKy?O_yd!Go@M5Z0TJoM+!^1(i~~7G*6l@y(cY@ z7D|hx#nKXKskBU5F0GJON~@&zr4OXl(i&;4v`$(tZICufA4(rdo21Rs7HO-rP1-K) zkakKROP@%)q}|dUX|MFDv`^YE9gseg4oZil!_pDysB}y^E}f80N~fgL(i!QjbWS=i zU64MPE=pfWm!!+m73r#UO}Z|9DSai~kiM2~O1GqMq;I9~r0=C4q#vc9q@Sf38XmP+X``NE4z$bchMDAuhy+v>_p+3+Y3KkTGNmnM0P4HDn9fLynL$3;9EVP%tEhq);eSI8-E5G*m29JX9i7GE^$`Sm^Ok=}?(a*-(6_T&R4gLa1V> zQmAt1iBOeL)ljui^-zt_lcAcSr$V(twL^76bwdfEdZGHE2BC(bMxn$|<4}`O(@?We z^H7UW%TTLO>rk7})1kJZcA;lN?L!?x9YdY|A9?QqB}Z}feM=&5Pxp$P!z%9XOwV+8 z^(2y+NCpv&0V7t@3Is}40Ewte29r$&0}>gN!DN$7&N=6t!5A=Lcz?Bp9;Pe->hBz% z_j}I!Jjb$Jn%)0YSKa)-w>x(1_$E*(NIH2Re zj)OW5?l`35(2m184(~Xk~vE!tUlRHk4wmYTm zE@}I_wB0Rj_ek5l(srM;-7jqqNZW(b_K>taENzcS+oRIN!!1r?R#naL7aZ# z^cQD@x*BtXP`JsinEkBON+CtILnE%yf`a} zv!XaFiLxi?iIKL5RJ#i}HRK=-@Qx~TpPE(xq z#o0id4aM0=oQ=iVM4U~<*-V_x#Tg;a7UFCv&Q{`VEzUOLY%9)h#o11r--)xmI6H{5 zqd318XD4w+inFsgJ>rZKXS6tD#OW1htT?-fv#U7c#Mw=p-NhL%&IEBLiZe-^$>RJ$ zoGIc=6=#|_)5Y0CoIS;vAiIZB+P#W_ZtW5qd6oa4p$lQ<`cbD}sWiF2|zr-*Z^IH!qox;STu z^Jj6+6z42)&K763ICI1~N1SuTIZvGP#koM73&pueoQuWzi#V5vbE!C&iF3I)SBP_^ zI9H2vjqrMO=UQ>D6X$wyZV=~2ac&alW^w)|&Mo5HD$Z@<+#$}L;@l<9-^ICGoO{H% zSDgFAxnG2~sW_jB z^SL=mSJE9jvC)H zarggO$kprhLKu{)e!WtN{kT@C`=x57;up$cSgzILMzImLFc3TD7?h8bp_HoCa=F>4 z`^9n@lu|PWrBU&Nd^HY(ayv$JK%##;W1RjY{NKO7+MORa~p( zgJzu1S6cUSi9z{18A=?N>*Z3Ny%b6XKaPtfpA8iJrYfjXMTJo{F1DgvX;8jMh7uHO zL9tw@`}uq=;EC1qeyLE5{Bk9VtHrzuip8iET7s2CXQ!8I*65 zq15Us->jA*KZvR!=hCeEoQCr2VIf~Gsi06OSbO=qLHRBjO1W7N@}*MXM}>OTj|mC)TX_1ta$E@GVlnnBQ5g+WDR3nECUd2Wg|ObN)=L)38wO?ZkpnmWC7lf2W6Cst zGDMtQtyxCnR-1mQq?&$Qtnjxo`)HPm`B2px&0^U?c-J7bCEG{PXof+f5c-vRqlm18 z?5I=@{X!hn3yoqmuOdrReq>Nm$xv!xzEX>;k)LlAk^2I+rCO+kemO#e@wYnv-g>`2 zHz;00lv24+sbX8I<%mlb2PMB6<%@n46sw9WP>UkVwtQt!1|~yM&AMtt#fl$S8{Dr# zRP;-gO4V28TCvJfSc&qjd-=|wER_r;s6ksO0 zP?kxCQjYTlRaa#{4C~zD0s>R2hwP+X`V6H4*(VAE=fmHpnq3D3($V&|;rd+_Y2*YL&7pp-W1+`X` zfd*xzWGF>+djsdf4@#vn`WPKns&L1Ol~Oey)QU~aax2QR289Yx5?`!RsFiSt>V8x$ z_g%Cy+6*I5;(9j&tZ}KNo>!S@VrZ|tpU20@*YRER_UW%< zP%_C-ieaN%s3Dbgf){Qw%B)%_7uidIl4+ES#YU@r8B{eW*#)=8{Nh@ztZ*XBb(}HP zDB*=SL%-g{rKr{Og;K+kmGuomu;2)VrYc4FroJj6_;JKDs}%CcWmrI|l&Z~AY{|(c z1|drJr1I$8d?7%^#|5n=*+(TP^57~Vra1@-&8nqYwlFBrp_Aw@oE0tIsFJW)!w0K2 zh>YqrUlq9ll}3fo%z9ee8k9mZl(11MB}^E;LlxmXk>aVZ8-Mz!27}P0m9HllaAWm6Zk- zAJlxYQZMJrO-oLu8HDPBBQ&bzVxJ+bHw$RShDHc*#2dJ=5$S_MsbW2)nFgVr>@2jw zs^^Kg$r9j6l+j+LY8gct74s23OSNM8_k;E`D9vOj`Es#V3~+}-EWHlAkd^{Ic!aZx z+ZB}YGFoNiK!dVDGL&*L2%4mIbgD($_&hc~AjS(S^_Y0Ony)mhCw7=Y*(f1OwGlUQ z<#DzMQ-H$y*5abC3iY@dmWhXBOLrY*P&P@1QfQP*tra6LbHZUR#77ydQ6z=S1WaV`#Qo?Zp(8OvrBhE$Nfkuf$9#%6dSvjyl zSD3wQpA4l&qEHo3kSHtsm7tEEDU}H*>R}~_lu~$ot#bcYgR)~X6hxwg9O9`oii$g? z6I1nC{jRs|>WGDft$wHYhIEZw1szMk{Bv~e|k84eB((3hUE6S|~ zW#@CRG6Vz+@xixIr#Y zA@d=QWvv$FD?!=P#rGMMF$qyhr5ZkO&965Qleip^(W!-GLBfI}-p*qot!VpUgEBT5 z3ejl*2x6iQS6qo2ex*XvjRzQ4!csl1N0zKSVNiBWhEl_IZ`N^w8?_>`Qp=O4ia4QK z35Px`$Ms^_I+te+%5DixzDRN)&w~m|NP1id6pEhMuF5&p%MFgCYTd1u48r&YN6@hc z^^-tXQ#g+rSfxgZCl%DoI*y14TU&4M>jq(BvL{sxs-arBc9I33W=M zsL!NE+Mpcp2U)ioiH~Np7PaQ@2YqHxrX@qE@{21KG$h_CJ5Y+d6_Py6=Sz(`0e!w0 zTj%nnLD?f2N}1nTBejCFUBW%0FyU8XqHIMN*{IcvG0BnE)Bo0>%t(e(&2v+WL=W`> z0eu|de^ml>W!TUT7(rOYii8IDGbno{Ln&0r)~g1-9Y#v$S9N?xafONzE;&+9IMlM2 z!HXD_eUhQn%WR~K*A<2(bg?#H_!6OCjGIJ7^#-EUD)WQe49b4VP#V=RU&gTTh(gW< zZ;N^t-VsrDK8)*CoziXHOS?gtl?!IQBa)#6`380cC0VO*IB`9u7Ez?) z5ujd*)k5(N%8|)XN@TT5MZ)W_sdIQr;fXbCO&leyjuqAEs&)F2K{+}ZO1@Dh zfywFH z-k_YB3?<~0m1cv)VFTOJY+%7^5Cy8LP>d^tDZ@2^uNf!PB8?Q_%h^DFrPgVKuVu*1iVil4L0GvZ&fnML{04KZ(SUa@AV7 zR8zReCC(nmJc55U)fC3uddL zpy>p)(7Id48H8(+?IT}k{`)pl1C^I;VWfZu9FPPwaHL8*`|U! z=Qm=-EeQtfGiqi^W1* zY*@DOa)WSNvVGL?B^ogdkWgvUrPT{TJ_i$EU#Q;VGFvBqjX}9184BDe_;QrbnhiV^ zD(FN+*h4fjx2)N$uxi3WkGUUqd(o3aVtK(KGc@ zAG0AS;Q>8*`QpKk8JS5Oc2{IUN z7fDOSzcyR*M}wa+D32yXsYbOX^qC43TU0;!PU?3BJmhLIEK;#A*C6V(KCu@K%HzpU zDrAeG6Z5-u4GInud5R)_aa4iQM%c~ySm*MZL3wh)wM&7rHko3Gt9|+lpB0}NelebY zm7D^0Kd@~5+Xmt3g!?E!T0$K|V$p2IijIf-xJIFhkorO?vZ@|~KQJiICPRrEO_JQ? za2tIbiYhKksl+WN6-oxVP>FE#TF>NDgYtYbl!zK#&?Gg9TcP(tK9t%DZfhlOz|?~s zR=2Vt|1>BsCPN7;<$9qA3xxC?TA$i5w>Xb+DZ_hc6jVrYrFAdg7?hWjp)~lFBq%uz z6c#={8i4p1bxFKWQG!^%Y~A7?49cs?P{`y(_(7Cv8`@We6r??*f*+98iNd-jIk(2c zLl!nDuO~wxL{FAb=1RMS+gH z(Ek;M#}CPj#9>$~Q37u{mm!`(c{>?Onf3^B&`qj1nlK&06R1FN>odtzEb7I4rPa0! zS=ykyn+%1WgenL^$ShjB6meiEwN*%3>7)yUq=r?$8?u5yc|RFSAtoJCA+~R7!W?xr z>h_?LPAbDQt3fOI2U46d{t1$AVUe@*(sC)MyAG%Ydx1i2Ib>q zD0QljcrEbDBAuOv6NKcDc+pIG>TU!`mj5zjxIy_e846KD8Shnd5cEw3feNe69-_!F z2NAWyR@ontF({uWLxJ{LuT^@i)1KRLXx+n zDCk_FngdsdJBDAWE2}{%Acq*V`o}{G2Ib3SDD)6S`D(RBK(B3AM5JG$p9JTU0KZOz zjD2oB{k06r*U3;I_-faVsyg&oJPQg2C1?R;MC!$mluMpmPbd=zO-b2^FEX%`XxgtVUOt^YXc5r`WNM4;Fl1|kG9VcWJQ{e+RN1&x#4eg>T!G`_lQyhSaD}^BYxORM{LY{( zoD8K(CsC+9<1$8GN3FC;RES@jI2JL13w;c&8J;0K8I(nnq152!1eEOjdfcb^p-RKB zXcD`?na8Uovuxe5(FSGlWGK+JD#Y^<@bVH?`lxm5~2h= z7R}S5WdanKj06)Q)$a1n$#^SxE-{8 zlq`!p#h`e}P~c?N>*Uy=&XEEqzoR2E+$E@DB~`-VFO;lv+0&p5OooC_ui&8Y#PYgF zstBnH?_ZY=gMup7n>yfYmHmAT%2LTtD5gXz9|ojAb-RqNRKRV@`^`|ddO@RWTHJ~u zVo;V@@Ysdi2ggG07*dNqd1}SfCCQAyO@T~JHa2Ya#D^SW5SB}}4_No1cDL~-pt;~r zz&#CV_rr1(N~Cqk#JA>=hWyc>tdI<)TEwmgnk1daZeie&$O^QrIt&5y3w#JG^ETvI zgR)XG6pB&>omIyZCoY1Gg7=!oC&vrp9#<$G*k^L0L0KgkN}~q%x(Wvc>VwX_VV6tz zfMl$ozEBjelHqH;U#A(A)smr5Ng)Pq>Y_o6_lhrz4r}Nl82yZ78fxU=TT#w3C~G7` zp$#^ODo7+8G|r`o6H_fwXstnYA{pAC)6=?R=Ngnj$xy1)Q)siK8cAy`cCx_V0!UnB zMH~3Xd;^PFGvp$JG9(!awu2lpN~_q^T{2L4*b6jAc=Y6|0^M)WnyDUgnL!zr45dja zl`db%h7mj`{4f2)bmSUT^HjbYa9%7sd9^|5Ool>%i>^_s2k;rSUrA}YQirb%Uk{(6 zS`JH<)=c7%>kUeGG8C%BYzLA{zOEVbWT#0VN9eF-4HHu!e5qOb_-_U!lMDraFXp(p zV{~?EzY;G=YXRsZnEeLKgsOFu?=UFYWGIaW$riG?^jzzH2~w0aD{Dd$WE9=fNSA|k zlkYJoK{6CrV9;kN<3MykTN2xGE+ofDicvA90vcP{ks%KnlqeYrtOIm#mGTGqBNPD1 zWI7A5`876Kg%C;;V5{suW>Df}DD>TvZ`IAikQ?#%APPXW!Wzf$PvO_l)+% zh!4=JE6S>{4|&y~teFf&*VN!{5bIO?z_UOgD>xJwwQ7Zp5ZKxl`7ML8b}|&mGrH3& zhF^it+9xk?({$oek#!|^fdyzim-h|Iy2()BPC`VZURVflF=!{wQ+GisVW?F>37~FU zR_qglvR*P2*e6w5S{i;$;ZwlYBhRPXW-0`l^czruu{r^Ud|^PV^eiT%r<)RUn=(9?bVq;?`5RnQ5Ir-a?7g^^B;QUPj@h4Q^Y zX(mIdQuLtF7oVb!mq3KiUNHWBnSCx8OqkZwAG(l1*&rE;9v6@=l0K{!8M;7jjGRwR zQ4gz@NX)8nS$W+7m)es0^wNnJ8rfbz)hISZ)t&{D82GvGW$1Z)%{Zw{%T1`lHc?LU_ z;O=NXN9&mkGbr08Lt#WrkZr!jBkTqx!1|ZT#S&f;)5NG9 znm${fSl*!Qm<*+v=kU?|s78z>vclhpS5X5+!T>r~3sx`N&@~OpPRUTni&UB=9f1=< z;ED4$-Cd@$eT*$>qTsB&*wEh?l%12ILm@`(4dS-hEie+6eVcyW$F&` zajdgEuq(q-A*58rtOqN{H*_IgiKdeIFJFdZ4V1UCU%pCv0> z8H8Pv?E`-`jOx^JBUmG#aOiN&Vbewo3{vpv$;!3f;_VE|Zpl!Zq>c+s`aVe=kVk@x zfI~q}j42Xy8FSMbv8C~UZ&1c3LqX~gK4N2>aUJJV;~~3CKQX=wfidD=wNOSGl!?hu zs`SOxt7Wo0x~Rkbf|I1jBh(6cXwT&)wLMEy?qX0TCqp63Chtx9pjyy8L{vTZ02edB zInI-JYZA(|p38WHG9@8Om}k}vBudi9{LvSF>B&2Ex?m;Yy)|u1{0DTr%&q%DP*WUWc(|*M>X0hTlcbuLD?f23IsvOP2{OGsRy0HI2?>x1!@n`cb>^q zQN1F@WdEPq_c>+>o*TQg((7*->Ug46LDJiGRvUsl?;XH1dYD5 z4qP-H9ceB#F0)T@vOvzYiGH(W|6qf%PcoExnTU>lEOZ#X{V~jGYCJVv8pE{J$&oW| zsdX<$7?k~zp@hW0h&>$9So@TCUb?1F5}qadTj0}j@V`O4T`_MwEA{Yb=`YK1(Ud}Wqha^L363o+(LC8&v%()PamFWMa zMVEv>$!a<$t($y~K{;%}Ef@xoU?{gUM>^c4C)@GmQ5USjJOUuY1HNVX4h ztSEUsLj=;E$?h`BfRY8g(LN?BU!wIEUusZ}OooEDmCxgW(~w6}+;B$drlRYFaYAgT zK{ccmg+GaJQ3%ULm@rjE-K`bjI)iX*vV9OVD6SQJ z^QLZ>)l4gjQaH%ak(hs0sWoEj)NeK@$0tK!4niGv1y;VH>#Pxd0q|5}#=KyHX+=Tb zSWoMAgK|PL6n+x}R;YkNMAda8CKFXPRgj7fV$VRtvelV6^lpQ4QZf|!8VWQ=;zjml zLmNmx#K4lDr&@uLW&ns)H5~eYK{+KE3LM=+p-PpV#zLeq#2hoi3$FsY0--C@uk2{` zQG;??GL%}qpz?k7=z`|!6F}hSlT-+41_|jm!w^`f|CB*FBN<8n0~qQlb_JT7$?jAc zw94OLBr^GmG?I1t&l{98lcAu#D)a;3tUwDwe`zLtLFd95h{s$sTH37ImuVF|M8ACvxGJ;R9ONz?sHyZj6gK}Xq6qpFqZ%Xh*=)*{U=muI$WE5l~!zYWSI$x!OlQ^+0S zA(0m2CX9D`BH8LzUw_yDgL2t|+msYCw-)t4XjB#%z9voU+Z3$G$_|3M8S{{88g8^(;sNuAR_{@uDFt`VmMZ4 z%?um1oI$xZ8A_A9Cy_ke<@D$3$Oz}CKq>*##W*kc>E!!c_p-7tg^xxRHos8!<+Tf-pSm~0W$xsSZ?wKEf)?x-Y zDCAwZUOMkmr&kkS4+>oC6I<7y+?@=C_RB_-sksoSwTHwgF{(L`t73-f!bxp#nJpbw zGbr~ixUA4@PnAB8>Y@~hcSKJci6r=xJVkPGj6k-!0)}m15bjU54}K-%W;LBkhj{p4 z#KU<_=+OLT(mr(prPimlsX=)#8A_9WdnTm^RM>Pz7p4O>76epRC7RHK8w@{eMcLAz zJe&-Lap{dnd&E2-P9FaP?E-O^GojI#!3-?7qWspNJemwe>0d{}TUUtD__~fq_7LwV zgcOR+VO*JIS9UZgk0(QkARg$B3>ZiNP*Nvat>IBnEhH-fyM|z+buT>z<;exVU$iU3 z1|(ltWPAl$5&{p&M93TrYlWuIe0VET9X8e=Je_PG1lt85E+gG*pv^pm_6Cnn zPi?km9uC{xpgfxlg?Zy82G~OcWfmD$k+cz(hW`nH6Q7A(s5Rqs*kpt9d@__Ozm2gK z7!utgO*l`tSq+j61ULn&nnn$ay)kUML3we(&x8<>j2*6hz+hnFVG1~vI&CKv3dPh7 zDeJ_oe&n#d48qIF_Q885ibYLlZt7%CT%lis%8hQ)B<8MHs8kkPnWw|{Hz=R+*&x`AZX8B$pogqr0@EKj7$2|?Q=fvm}!RZC0$*`R!w3?XB~ElLHRrx3N$Uv0@IzDTEmn{?lFPB z2pJV6NkmLPt!3}8G$>yrLt#WZ)k31+f?_r-JY=o)DdIC&S=02Hj96@~eGR+TpnRDO zrA~VnA)8cQ3i$#dzEzbPc9TK*Iw1-}ftlb)MU~Wx_9e);(cFlT z@*V;TBDiCg?B8ZkzDb5cJq3G9dl@VgbTR?Gu1cXYp@niG5K3$Q;jq6Ol<$(Ez&zr; zEHG*7G#?=Qh`pKjfS195gYtbc6lR7%oW+UcyW{6GRS1D3q9lDpZ)=%~ zZrQS8kMyCm^-G3Aq5vkaeyI!|y|$Hz3gI!wMDmbk6lTg2Jybd zKpXb5L0NRcJ&UM_djvI)Ngvu8YqNssq(6sxCnM5Ag0I%f`mi?)!s5yHK~aFY;=0K| zZ-#z+x&dfCqXbUV1hyISkahC!8kDwVC?ug6piK%F_k}YFD6!G^tJCe;2Mn;F*7V+C z9~qQXG8CpEMZAzf=MHrKh{0G?S+UD_dkn)WFo?x^pTV%t4T_fxg@F|eb3x75^)%hS zDP{D8K@Uebd67b2QK8j>ePvJvCPU$I@tPvCMihy3otWG%6&>9H2s4!VWz>l+t^b`t zSt=O{>_YnQk$cAVVvY3+d8*`c;ULj61!13}RI8>O-rt}slMn^E0pqMW5{l1yFPa-h zJ(A=O>Ag}3hG6SnhA(PRmP>|0k*L9}BDSFuNij{Dnzz&NoAhYGN23~T*~#IKL0KUg z3gmJ<1e4kXB_i_1pipEbBqK!$F`T?!u~ml+A81fkT5!2%I6hxi_m=TGEUk;#M->=~ zp-jhP`fAgPyoWDq5LQXHj}jD=fZQGTOY^j}15Qs15(ztm?i^?xmWMQaC4;hBG86^- zkD_+nS9Fu&A9M2MCRKb!5HlW;QPF9XPwNqHO$IBI#fU5p((tT78I}wM-Yj#s$WKw3LRNSm0JjZ?pRod18=fGP z&DL{K2Bk9@3bTOqRCqm|ked}V43kVdK4q;4-5nwyFEVS*gbptmlG@GIht1CGLxy|KIfr@)9y(vkD-OkBW}H4 zTNso$84A8{p3(r3Jt;|^n4Tu1tI@Q|!Kpy{YhkOWH+)-zQb>kE^#kROd1P9gu7K$J zz0%ofD3vja4EBq4i+3<6rDQ1hTfCK!>=B*B#9s^!LsM$EzrmE?JoPX{sr8BNY*5xr zhC)h*5+PZ96c-*iWkWp~o|HImEu~SHw|x~`WBlR024(GJD5XFv5t4_+uz*C;VhWFg zY!$B^;LS6%fiNwrbuYUaly#G#kgQ^;M4#!^-GA`E$?b9aWc)aPOhRByE*U<_psbe+ zg`T*GtUfWfZUQ62L$WpjbuZHlN;MfuzR}Q{9eL3+mpFa8GjPkf zXbS&azx1naN##s~Qcs4$L@E>|_ZOcV-vvseX1ek>(xA)$iWpecnxP)PpFwFRL*Y45 zwCBsiqQKX$>Xtl)!(+jq4Uv$In77#a#11ql8ze(1>1J8oD^sA>#uLNv6TxbBGwB`r z*J*OJ_Hvj(*(ezb#8V2aWGHEq(K=a&_hkZDTCu6S!cyY3kF9$-%AjnL428Tmqgv_t zBcVW+no;_kJ`n}fhd#D$6-Ia~%JBwevt%f=#NvfhGhm>$u7c<{O=%$wcsUw*EZ&N2 zz2A5E$p&RaG8AUdQjydKg=wDJ8bb%wbp)OwnNnJ%?Kh|lKf|DGx!~3qb%GB`orNh3 zI`U>CI#Ch6~`1Y`e?2A>n{dnyJRS3Qf^H2fjjMQlh!wXnjpW;rS6@ z)FGbI{LOqp%Yxl%P7)$7MTfz8DisJSd5tWC{q%bltlZ1+`wYsMWGGl;-WCb#koImY3KR%t{L#-s z@W-onBYiTKR6cA_#wJ67YD#DdMUz)&=qE;C#G6gSBfNjD6v?^&Fe;h!0lX~|G1vSUPuh+%AU zll7o7dSta-Mn~)S&oHpAbuV8Ulsy*QPSQ>QS&}pegYAjINLTCor5p1?a&Ekm24Axk z;ah_+BiTN9@0upMK{nK3ao-FMX38NtB_=<`I z7DIVr5+>sk@_D+P*d%F%mc4W?Vo>%;h5`+Y)=vr`6pM(Bc|)q^A8MWm0>u4p<_oRy zWM`W}*>Azmgtss9ZFM11zg&#T0=jB|lY#A|G(w9WC5qO4v>Sw3$@Wo#s6~a7iJmlJ zfC3>9#(7Bk0<~OXJ~i{IT2YoUCC ziU#GNWGM9Y>M0`BCHvlG7GsX7N|O(xbygEwX#s1s#GR`dltYrCFc63F8^ozxGwtos zSIopU>R)|^r9ryPdT)H^V1sg4LKL0aW%{+B@5@*4b{0LSR8J+&=Xq~9q;reK(b;KG zj!1?A@h^^ufuPUn+>0WONL7!}5;5VulE{k11@H6?%8|)X8cf5{GN})qtO#QqVK$Sr zAOTLV9_2);maV5B8I+@wp^(34FbxS~{=&I1Gm5{_rK6i2F|+4MT2r|GL#xU zc{Jdn!{8sF=W#9QmqGY>9}t`>YM<7WkIuCX%JIoi7=OUr2PiB$~B3CU1+7dgdL2DbAKEj(8of8+%yA|s}v(CQF3EPdQGC?_RDDQm_V zGgin}(S%JS7TqQRtja2M1c=X+Tbixbt8-(6a!N83#>Fw#i#7&2anUe}T6>8SANQb0 z-i>^FHEQ+4I!73k(~_ak?@b0Dy;AObD<2n5vx0T;i0&pj%OQ$c=dz7KIU^Yglc&i= zvlnX7*hww>%of3?B$H69kriWHS?lRj3f>A&Our(aLa@X=Zcxc* zdZfh_>6~a#&QFE{V;4u8q+6NyAnQC5%!eu+R4_N0ztHzi4eRu$8k7r@p-`csbfhQA z(96IRBL~Ms1RC_n#PL#2N>)Wn_GcKBi<6;nEYwpWqmVPwQmOM+y1JJS>blBDqoMUa z>CSx($|cEAnBI;RCi1G&Hb>qSGszo(8-!%!6OewQKuh)yFesNLLxDrV3zD@11_hkc zhnLXzHgsy#WETnaZLUb?p$6rOWGK9Rf*>51lC}>}0-e}p+zaLggUqNpdLJxXd89$P zYQgg0MdVGwt%it zL^O$%=-c5vpq3YYl0msP849F;8kGqW`GJn{d4~!acN8b{T^LKtTX=CXT6Ngz2Icx> zC`fmnnN<8*va95g^nfzv6#A$F6+o|n1!tk0ZBTAZhQbJahI(ioE$JjJ_uMbW6JeLj zh<=_aOcrCi^E`ucb3zoR-oh`ZDAD(>IX#yaCy&Y3RT37|cz8*lwU>(x$}P!IxJo=F z-6Gx8@gx~NathdG-swPvgh{>?TOuzvD7Pg;VYoE`67LD1(G0Cm9HVC~>*6l+uPI&8 znP=&+YYfUA$xxU-3)7esC~XdCeXS%R)G#*`GmURS>YBWMKewOPuf6lS&g=VS&OUoq zJa^%y&YSIpTRU&F7w+u5%U-yr^Im)5fzAi*g-1FcwHKb~e9~Tcrt?{Q;f2l@?S)r5 zU$qzB=zP;&c&GDSd*Or55AB6dIzQ`|ncexRv^_q%->_Njv*M8h2Tq;7%PzfBr}d7h zO`15ZcjC0UPvXnYuk4@xrt@2S;rq@Xtc9)tT?^R@i*_w$FSKKbe>4C@+hFLZaM?S*Vt&R&SRl)X^sD%uNccCBSEtlPET ze>~nFpJi9QtI5A~HKgsGUw!ah8+UDD|K82JM%W8mb!}}g{I+X5dtryJ9qomYT|3(g zqq}+!7q0BO`e&ZebzQdl>AI=QRzF?0cG>Eu>&`A){dC>ab)Ww2_lmRFuRno@yU;|| zMVx!;Pj)?Jf9q$vp0gKT?0U&wc(v;_d*RKlx9o*?yWX=GKJ5C)Uih>NmDHkuyT0i9 zr@ioX*T3wA@4CL%d-%6F%lztwyBF$S*!t=2#kv=_7o6^tz0lr0&|X-&dl`FS`R*0$ zg_XNku@_eFUc+7(+&#oz7~b7!FQmIO_Cl^ZuoqN!Y%dhMOZLKA-D}$mzv-_0$FutJ zyt^CSsHBz$-@Re?M)ty{-JA2X-J6Ni`RmVl>+WsrpWd$fclN@L-M_aNcJA)67shmt z)nB$nmgj!i-MUdptzULx_au8^O7~QIVUKQG{dDiuZL6Q|{kmrX*J=&t!X4Cou>H#p z>pt9GII{aFd*RsbXl8(lL$ zdG5Zd8>Q3w$gb_a&R)2&`zCwgmhM~ag*&?Mv={E~zQpRgC6 z?taEzc)t4ud*S8oSL}t?yWg-E-tK)ZE43|@Y3z}!cys_?S9oC&O`}XKqyFP%Psi!J{n1joY%i>xUdLWoFO61dxm)Rax?wMDklxT<*d)EF zy)YuZg}tzK+SVZH?b5aeN$;4pHAs5rw5>tXW756$FWogg&R!Uwo?tIbPXEDPn3kSy zFU&~Kv={bC?`tp2N{hX4P})`?>BG{t0!bg4wiQVF*tD%c(kG;C1(H4`Z7Y!U8EIRA zq|Z*<3M74Q+EyUx3)8j&NneuI3S>S?Fnv|pRv_tX)3yRh-R_QI3tr|gAi)6etE($9%=*smI>^egFC?Vo-lZO2dPchYwJ zl>Q)X$4}``(x2MD;~(iS?1it=U)u}croXcne#rE*7BUNEY!4-~SjP5HGETuAL&>b1u|1T`>X{B6-h7O0W@u)Z{SCV^-S&c?$<6;1Gb&@dD4Al$ zc2P2GWo#EE^P9|i_HVCc>h{9=nGNiPjWe6r3!7&~*b7@_wze03o7v7@*deo{y)ZJf zv%N4nGsa%nC9|u&uzO~_y)Y?*GMV4?&P>njVSjXHW-ohT-^_mYf@BV`7Y@!G%5Tpc zBF{gK?4x!?W<4`m*< z7aq$zZZABQd4}IVAN81dA@idB(N{9Ig2}v*dDH&HI~iNSWIo8)3MTVO##S(ye`IV0 zlldxRE11l;neS|rAADQE_zU?9Tc7Y3^KAv=JHD-8{C3|~F#giMtzi7+eOtl!EBmY1 zD69Kx*b9UGA@;&>ztdhw`~Li&wjcVD{ZSaA_CncT(_UD|U)NrsRBkWOK4vd$=-VNX zzp1~O{fRC7E$xME{NM7GTZ7Rb@4LT)Zz~voq;D%2f3!cw{$;!Pwu13@_iY8^Px2?* zKQh&yW-sjN&#)Kv_VHHc7b5uL+X}`%*gwSn*~9%K?1iKJqwR&`{NwF~6MZ|!;-Bi< zITruVzMW(7XZv=J#XrwK-~Oc+`Dm3Ehtt2*$8Bj{xYEDMUihnjt-WxAf1|zdH~$uU z;dcKHd*Sc?-S)zLKH<*%)Petq|ET@ZC;TVvg=hR{?S&Wom-uC^@%7xR^P2y<{n5Al zx9x@Z{P*pJkNl7Ah0pxY?S+5(U)l@*^1rbc{_THnEoA#=2iOaXWEZs;mdLi*3vSl4 z7naN}WiKq7U4H)eF}rfsRw3Edv$hJ!4$j&tBs)CY^)tWB&t`4hFdNwm`K+x%vgNF; zLbB^*Z55KOWUKb?Xk?rA!iL$6?1fFUo7oFnWVf^zw#ja5FZ?dMy}j`J>`wMVPj-~O z(3>4=FO19XW-m<0PP7;Pkey;LOwaCNFU-vDWiRZT-OpZ->;d+|!P!IXg~PK)*b7Hx zkG2<%%l>KpGL=0!dy4(h)3ayT3uk4|winLHo@*~$kR{-moxM;}gZ*Z8NoZ%G6xXv?=4p^o+^Xd-v!aKWTFBlpOz=I%#6h_}u1`dneY$kDD;+H&c4| z7&mp?q=_4jp_DUj?6}@3>x>OYjV^>^peQhOK#j@A`JPeXXjLeURbeR_T^bYhj^*v} ztySvmL*|>U```U$g&tKN6RELLX>`z27)`q>O$IbeaX*CSg=rKRqlI-)@7qtMqAgTK7>`Rhr z=%U}!yH3&-zs8tx(zi0gT-YGNZ{=jQll5MlIuS=>qJNu@j*4ICkOr5r6@6^eYCXVTa zLB7h&&Bu-Z4 z?{693Gjr1PX^pu%cKQR?KAJsD@yXUwu({_D4*XY-tYcBlOj+3^D}cA3-vgWQ&Aq|~mn{GG;38a-VL(QLqz!+NS^G$82Sr+b*|*mZjfmS=zl% zmUh&#H2!B~Y3>Gka^tkrtc2XONDU%`;QWWw4AF9vo4|i2AvLa+8%a&jf9#>9X6|pC zn%hHvk!iWzT^KRpFMKk&))u*m2Q}N*k*Z)TSA4wfF>*T&aX3ZJcIrk|)ntNPp(Z?ip$n4w`lIqiW z3#>(-$-SVj^0T?;a?eZZFi9OQsUyzGy_kDRU*$ha>d5~eXwf%$GH=Z*8i$SA9upuUwP0sePZ-3pM7uM&n}Wnk6dDQZN^z@+e?G@UmegQMjz%rF#_>%pFkX~ z1>!R;M#s!6M%z97-_)XC<-XB!_O+I?M>X?SY6*KZty8aJqCmOwFg7y zJ*#iOKl;|7tMbX8DocF*@skf-tj{$V&SyL4{p?8xoj3KmGPiJ6<76%TaZWof`X*}Jc~wv1@%GAkFLp&E_Ra)*kRV3 zxesF9U_C;RfGGOx*+E58eKEo>#4Nn0VtxGsO-ap}9T0t-^NTS{ut~5LF-x#%uvxHq zFe2C@*iusGO6ojGoi8aAG}(fS&JVT@w$U+5u$_)sE|%0|JOdrGJn_FhW(h_Gy_|3` zI>6iei=-}@6O0XZk<_J0cP?_ zNntgwmee(p`m3a_mDF`V#t^{)$nilx#SqtPIlk@x4Rbm70FDWc)0*m7N!>6zKxf{V zNK>5@oQ9?fP7Y29PL*2QJvc*aD$-!L{@=HL!8vHYbLZ83r_Nby#eL&i z`O9uJ<7)V-3rZ%*)3@U*1vm()WGbh{QL zh6r8=UYXz3do_4XU%dw;_27?2@-2?^?Rk%MnM?d<{&31BZyffw*H?Vy(Mt(-F_Q1` z+4txD?6D``vt9A#4a+Ak(j2<-(>>!_j{l?JQ@z)Z7k*Gu4--brS#~65Vv$R*4gVQJ z&VArt2LCcQ=Ig#2^C&lF*^%5Be&|1c#8}23u#90pNjMA`G$4r?tZcMIc^5op8 z>Ep(a$?h_xXUzEC?C#U1_I*BFcpgg{E*`dF7{etb_0;Upk<`<_lKl(Y!zJ|(;7C0) zJ6uXq&;Ft%4VMd7#gc~0hbx3DhAV|DhpR~HIZ5FXzaXg>CB>1ve15oExVpBa;UH~E zUy;;DKU&gH{@}G@=66?3LSij#Q*5T&i7J82(B=z>}a7#(Ovp~W;cXQi@+as@StG2Dywz@3j z$U-Su$UP_AA>2{R>${SA&&X@IbHDbmXI>e6?u)H{9}n7a#F|CH31lKM(gUrXv=lKSTS@VM~!KG{A|%l5b8u5M)8?f73W+h>Jy zv{;@UV${Er)W7G1=Y&KF-;2AfmVo$I^5;4eHe$*o^2QT>%Aqf~b3IpnE($Nv-{Ru% zFOvE}+!$(6&^;Y}!q@S5-B5O*PQ7Z!IBaTgVL zF>x24s~m1cIo$p~%E4U%<=`%9Jmq;);Zx^HsQ+R{{(ncdJ$x{HSgXH>#BG}$J|eD@ zNc}w#K7;xTpA4T0pB6VIE)UQqm8!`cyADrEoqurN^)M!jZEvon3@B^cI-`A?wT?*A3 zY7f9&dLF-L$!+Od{jX))!+(TdYFYXMS#p=_lcle;EG_>tvNTr&zl#=5BsJ0E{f0zs zKS|9BT548pF{zOk4dhNm9RG^5qb0>%DaoCRmW@`N&z*`^idNQlYGrX(F(x%yy-(U#Fx;-^Y+*z()w_iaWR#Hx-vw(6ZWjZ)=Q^F65(&ga|w`1#f^GjiaHzwk?zGXK{4 z1Lo5FUSFD>#Ldo{^W=bM2W&84eJ-jdWQ-p0qPX0qK-}D{k46sM=>OxH{!~eyp{sn8 zIfTKLdp3LE%6~m^_1x3lH5$)d8}QnI*Q4EMy+7*%aieqk-4jiWCe2z$TqSO-k8#k? z?r)Qyp6<^-1he01dcV`f&Hqn2G@23Zk0Tb%jP{E5j`oT6jrJ3_AZ}6IlDK7Y*A#cH z^P^dj^uJO6|3Zt4ySB9NJL_cq|I&X6{oMxF=5iR;=sUzUxL44Jrp;WVMzwyINmIt@ z^7e{zuZ8`gzJD9?v%CATz^ge70JVHQ|e{X%1bAQWb zq!e3ziFsT{_y79xB?qh*9TOcJ9Ty!R{V6&jIx#vaIypKeIyE{iIz2ig`g3$S0(Ie5L(PPo$(G$^= z(NodW(KFGr(R0!B(F@Uw(M!?G(JRrb(QDD`(Hqg5(Oc2m(L2$*(REss3t!T1YLd7Ez0;#nj?z z3Du??l~S(qRJ$6emQ+irrPVTOS+$&6Uag>3R4b{K)hcRLwVGO8t)V*9AT?MGQA5=* zHC%P7F4e8lDx-XrRXG(fIxtd-5#G!hQH+t~rAKS3wba^b9ks6djapAtR8`d&(b!N; zwZ7UwZKyU<8>>y!rfM^_xf-FiP+O|4)YfVnwXOQC+D`pWZLfAvJF4HSozzIRGb|-I zRBDXsRb$mIYF9N*?WT5DJ)XVI!&Ff z&QO0=XR5Q**=n|$qs~$1s`J$O>H>A4x=3BD{-Q2Xm#WLuH+njdPqI29#M~~$JFEM z3H79UN*@{lrg}@gt=>`Zs`u3U>I3zm`bd4O zK2e{l&(!DYALhT(JM?5GV91n?y z#>3*_acA5WcgN{C!xX`6oMYr(sAu8EF|QuwHSBSTH$|)&uNAKyuM@8u|0Z6KX_?iy z#x%6+ z-YFg#?;Q8UqvFx=m{{}Fc8Pb5$HlwFyT{|>3Gu{uQam~SLp&v(8c&O-$9u$k#xvrX z@m}%X@jmgs@qY3CXjq94h!2bpiVuzti4Tnriw}>Fi2oQL86OoN9Ul`P8y^=RAO9&n zAwDraDLy$qB|bGiEj~RyBmQ%IW_(tBc04x;XAxEqSQk+>U+yNS4X z2%Cw!xws?5-9p?g#l>`)xI2s6Bkm}1 zM~gc~++K0Vio1)ryNWwb+}*_8UEJ~FP7rsZxRb=4Ebbq~og(g3ai@ukY1u>EJ;j|N z?o4s_5_fNL_YrqraWO0Vi#tnP5%&Ob4;1$xaSs;v5OEI`_b_n}7xxHp|0wQ};vOaL z(c&H>?y=$?C+_j${z=>u#63~mlf=axJ4M`6#lq# zeMsDg#eGEFN5y?i+{eXzLfj|CeM;P?#eGKHXT^O^+~>u8LEIO`eM#Jx#eGHGSH*oz z+}Fi@L)?-{Yc!8#r;IwPsROA+|R}Rhqzye`%iJd z6!$A}zZUmj;(jCUx8i;$?!U$TUfdtV>nC1+@dk*uka!D=w}^O)ino|}i;K5}cx~c2 z;-$oM#q-2#7jK|=ONzIYcuR}7jCjk6x14y(i?@P!D~h+0cq@yyig>Gvx0-mXi?@b& z9pViVZ?Jen#2YH!F!6?q*C}3?c-`Wq#mk82iMf-Z=4g6K{9%#)~&WyousX5^u72e-LkqcvHojCf;=M_7HDR@n(oO zQ@p*z+grSS#M@WA{lwc}yjkLjcn64gpm+y~cd&SehEfLs-k-%gQ@pdpJ6pWj;>{87 z9P!Q-?>zC&7w-b`E)?$~@h%qcFXCMy-lgJQCf?=ZT_N6;;$0=))#6<|W$|7S?^W?$ z6Yq8L-VpCi@!k^eZSmd_?_KfU6YqWTJ`nFi@jepoWAQ!_?^E$U6Yq2J{vqBM;{8*+ zFU9*xysyRkmw4ZZ_pNx}iT7{uz8CKYY40cP{iS_?v@ay>3rqVV(!Qv)FDC7aOZyVi z-X`siw5O!qm3B|s+ogS=v@a>`OG*3E(!PweFDvcKN&E8BzJj!`DD5jr`^wV3inOmP z?W;-q>e9Z3w0B7RAZZ^g?L(xUNO73750~~%Y44KuZfQ?Tdq&y`&$7~1|~CMX3`KCQU-{GBqpH*aLrW&i48k85D=7VLy7`+UCa8~%j(+JUDw|G zs=v?o-nln3lbK|IeV+gSeV)&&8_)TkZ#(Cnd+s@BEOynBt6ChYB~P_DRZG5VDNrqi zs>P*R#;TTas>Q8Zid2h7wRlxav1%EwT70U-uUZ1Cr9`!qs+KaeAUvVTAEc$i)xvrT4t-3IjUu@YH3w1^Hj@x)v}=Nj+Yfn%Ec)QN4(rNpN+67 z_NMCTwJp4j&T0xZFId3O9=ifAugC5V`t!#5jl!=<;o~|L_Bjg8B5z8O6Jm=X#OL(} z3^{L0q0?gvIm;dHl00W#&>ku9T`Ai$wyeLTxY+9pP`KD_59E7&MWzNHNQJXg?9H;n z8&mv#XCPQ?cZ>@b**&g&r#}!Z@wtP=K4-qG+|cMFsWiZ>R2XVD6{jSP;eCAX z^7sRGw>ucH7ns$*km~)rtS+WG1CGL=*O%w?8H#=_6;DdhUkA-M)CCLt6-AM;`7S{* zZ|>O0Vn0f;-f^TA+ILS(pWWx`@cy47VoN2?4E!TrjZ9o*;8W67C0QiQm4<~VbjQi zrC{IKf_cu|k^A(&Ya@@8qP;p5)f3g>&2t7F zUX-G$QR677aaMvFx@vh9xYj6ttd#E`TV4{t=~y;vV8BRl`d z!6L0wzq1#M1M~!UmIs_3=@~(Lv5NuJU12zHnAANdR+Ib^zf)^4FX(spT*b6oX!m!- zX{6K|7F)~ju+sozYJ}Y=Pmd29WcJ`psc(&~AMiQtfnbr#@7Gc@qT!&oBv4!u@blOR zI(1D~ zp2O}aG&&b!m%YH_rSmv=`V`rH<^z1BUBspDp*WEpp;Dg6I3Xo3)L7ThDkmp+gfLVV z=es+eQX>nb(5X>{?CyZm=aDW_;PaLg8^ImhRY`9dy~-$ABqdKtAhRfXUTdXxpH{CoUHi))`Xn^tkdQs6ojqqwRVrdu&wM zJd&?tYB}KKjYbZ)^v&Q)wo z){GYBNwL$ST5x!aEA&B%hao-2D0+bujgFl5-wl!4d`g>p8a3La#)(nF^&0*_g*i1H zd9jp=&be?YeUemBlq$ER#BCr4)uLIaA7eh8A4o zVdyLI1WS0?$aCf!A-hG&_exMcTvp3Qh9kvQKeb^{V_j`?OAqbC3T?@}kOwDk zGUJ>T!Lo6_S@oQewXA z)%8*}z5A*je^F&^y&Pj~t!k)js*#g>hKx-jBd2>AZZV~kp(|7g;l_J(%%C+Qrwzr^L#PX`-Sw@TGv-RtA_=T=tF z(2tZxI(LWEAK86E11Fs;#fCZLF-*K5QGp z9u{HQ-RtA=7tWelS?{BRRf^-b zNfDIUy+WoSGyfue^jDEGxO*vj4tr{=B9r$yshmWNib5@Tv$9c^d7Sm)mKwtyFNlaF z(!}GBAC{M-ett6gi{gCboy`&8ro4uk^vIHC&W+@SnyZ^?wK2!g=~a>GOh%@?x;oU{ zOur5^k;F`o6N!97L?)4n9<7^)oU`S4OCn)^7hy?^&>nv-U&LD)8d|2?>*iFpCKUJ& z5tzi-5h1WRgwv)oT+}7f^8Gy*S~i^+xrj?Bk-k3YY%I^@brBxiq-lT-lmxz8mpBy0D~_7aIZ zNW>K;6VJ%enN4ZUA?AFEq#l~QlC||r9&0P>eedgL0M# zN@@hvFY;+=O{7xqqz#l0Cv~1s%bbR$8HuEwBhqq{iLUV(rpsADdVi7U*>idJ`kJ!o zq57_#Jev1>eliM z5jiRu%jKo9%V&9dcG9xsoi9{0tGTv1k*T(%Wfj#{v#WDDN3avg8Y8ljc&hPI(a_c7 z!y$5#>9Y9_dEZJn5lGJ$K}n^uCsf%~)#~CmikQ)hZuYvmhB@9Yo<=T_om7r=lAXwZ zZV{POPYw?Wr44o5CY11@=4bkW$W5xZ$z7n`%_dt#T2fIiZEzJQvUNeyI+Zmv$*~Zw z_)ECXl768`OXBHT;_`*gpHqwqZv(X_g5?M(s@0zl-!9-uL zGh|#MGKO~_$r6|TT9I4XR9IWXYPuodQW22E`dEYje@m;mzMOuU)X(T%0lFfu=-i+p zGjbg4mg`>)C9V`9Nj#5GVpgN9+jEDdJVB@OuIZJR9A25|m8NH}7I{gG)7{An))rS9 zD~ajXiBMPfmL?%o<~D}yH;ULK<{+lnW@9ZOx2a(c-N+DhbCUWI3Ehd!?%LTQJCl&v zT3Y5ek+HZ^f6Fm_d7Fq$Vw5a!7-BoFNR(b4G1W0NyLt6N<4ja+%Dt%MqK*NWUEmeSsqQRF1?EO47qmXl$0I3sKLqQ)JY)ut=&7J*5PLJ2=IrQesd3^OC7 z>qZSE4~UE;o*iY{w-n9TR=!;*_1x%;vuqzR7Rt_rQoRv3i|nAZ0r?kw7p{G9~ z1y4^PGJ4Bh`qNVO%oHwJl`jQ72KLaux796Jpl|JDJBI9OGPHeGik}s)IC};iZkKG} zkR4)1`M*i|!STv#o95UTR>W2WS1!B60u?d)`qE#N%6+@2T;lUdgE1z(BGt~0TaEo$ z+Ez4u&p~m=j*;}&rP9!Nm1GAY+mhG>$>taKRsI|L)3D zdc4Bg4&*3%f0eR*;+72*YMWPc175E?ayMD}?@}jjhxO`p@*<08C{jGGFp2P9)ZsU6qL?0wWKk=aHfXB;S{&xvQwIH$9it&px#+43fv8+{(L)*({M z9(T*Srgi9V;9eEB}cs4}l_TvRX4ut?nj z@l=VZt8b&Oh^~3`p45!oy_<2I)QsDWF`vCNQaIkW-;5KbVq9k=p$tTJK!D#KWH0@KeC-F~g-EDK5+J zwez&M7=7QVY_zs>O2S*v;j!qEIU`-_lHyTyWy_^;zQ7#OjZ-Ctud<}(@UCi-LHV-% zSvJ;nsA8&Z6#-;=yr$)Wpx0tZ^?9Q^*J!E8B%sF7hxCzUz|{pbl}Mzs{}8CP)M>+jzjc>xcm)Uh6HS*SVQYxaZw!2<->T@8*h(SXajYT!1rHOW= z&GcBN*Pk;OX)t5fsigEV+mzB8&FDe z7v{60mO;*_^B1Xec4Qr6o?&c2&G))_gVD~+7?o71bXH`g4)u-dkpW-WsgZbHJKUhr z$YQC~JF=1RVUX~txgbBP;0d_$UFPdmM!QrwBVLuxZ;lyPNZ}LX6^kxf8B^YvBF1arE~#)vOa-5FLR{$^q_8!nuz4(tbA=_GpW~!O zL_<9Paye+I&CWVbcx7ykC&@fJwI`D96-fhPbn;jD1I{82J{j}s2#w59W{cG98^2~3 zF5V{9PK~K12cGmg3^_)Rdr(ToCW)37U5MW$l_Y}Iv)B>Vx?n;0Fp|?#X!kf|Vj^y4 zdBSMr5vg!y=L(Ksu9xGm%zx}0IW>zvF2&F3T)f!p^6(-Qw3qPS#yAjl>LueTsU=>H z(aKOpTREW%`?OhRFsX4fFO-Hf2ge8m;f25iWMfoykGi-ZaD)&h7*YeFuKUc-6 z6Thp#L*EU!0&b`F{$-T@KPgRQI+xamwhkw}95yFTNsso{DGL;F+jvcCo)oW*$nzZ; zZ%VO~JBo2!#XRm4aN3IumEV?f^lw8Ex4p!}JG_GkVRDp*fAY$%Y~%+CFzG?lvt>eJgf)T+CPw*y>OO17Eq_(kLu z?SZ`TU}YTG3fdiV6ple9&*kNvfkT)^-uzcYkK1?Ax$Y7tt5W9qv5Y_eM}m0=tkMR4K1YwX~mNTLmsZ$xnM)zV?~r_&qZkiU%0d6aRyU9bI7`)yeb&7PY~IA(z(NGa_s{%dxnj0 zAPjjYi@d$)fswivF@EzF6s_oKB6u%SI!bVfpDBK{+#Vv=y>HGfb~yqiTy_vGxu-~W z?zv=bGRG5_q{Y9YzcF-X_7RbLkqJzKy+zXJJkEf&B+OjEqjw5ZcHg~paO|)gbGA8i zz+URi`&0qb$1ZgqEV8|O?&4UTImR0Bh8Hi5=U(Qp|B*v@*=FWo9^B3xDRTEBFJhH0 z@f)YjGc!fxK>W~D%NwJNAccIfVkwKO3G{nE^4-pInUL{mkAtoe+T=*pV^RW~L)2!& zatlY0ld#4!HFJ~{7#2|=>P7^a)AH$p?#eX?THSoR%S~r6^U5yuGpIkeWngY4zp~nc z`yLi7Fc-G8H-sYA?`2Iez)P|AAy3vyOU%zMnRy~)KqnyqxjG_jA>+I@%hq3m%;pQE zX1`7~&E^xeI5vJgmq)BMzw?+cgJye0Qg2|V_H<448;{J|F{&0PRW+`aeyN(sKSrxj zD;&mvT`D#EC(@Vqg+$s`BvCQ0t`ntV=ZJ(oq_r4V)1cHlvy-O!yMb0a^0gqdN{XM; zsd#wlT$0sHHL}QXM@VX&-l>)*Uc2Fm@8U+;=~DLW_+{OEK`)W%2iqI8tBH(CGrDNN zsAQC_m$IEL)|6p=*Ogx(>)@t7=S%TkDW&YLWz(1bZX4b{V04b?RpHDQU75%l;S$>F zeB@$t<{T;8J4$*~S^diw$NC-StZrUs@%j}TGOWj_a)FfXkyyOGL~D4at(($*Uir=S z_{@tt>k)2U6w%jp49Sb6?3s!6&=&4H=1)tc_&9Bse-AduXxmHJcFjSmW_g=r1KGS# z6SoCOXoFm{#=t0xCvxG}1Qs@U4hMK6=ilT?rhIl!7!pUn^$C8pCPvM z5#3KsU0)lzcn0C#G1& z#WR^(rRK;aY6c3KSLMmFsys4SDmBBnLqudHA;Q>l5I?ncikQJkh$->-yj+;&_Iis= z9Uhj--Su4EnG(x*4mEuFn23t)Y_pnM8fNy;ue}O2^~kTQl>G(aWxuG$`jhdz(PedG zO*l%-Uqwu8dc_wbTO8y$;fNCOTpTmpjQ_K^+JMqKUDpvbrV^dzAFoQ~zFjr!U=*QIe+7>w6s>uBvGZaoV^Vu~jVd?@}+Lt9sfND{Xh0F}lWXBFX%R2#M)_(FTW|#bbw|u-Lpe zF!Oz>88ZlU)YKC;T-TxPdf^sO_Av6Df=6KVE{n{6imaGNPKT_Bag>3W4ot>qpFfP( zO17=I&D)nU|J|)H-q{%u=uFIf!u!DT!k>e9y|c^q6C)u$5n&^`a&m_Z5y#Xh`dfGA z=OUrYtcY9ft8N<(J6C2+xFnd*mx!n-#kV3MW;BTF)MC3I2gW`nevs-h52onq+M6&> zxDxZm*vy}$Qo{bzF^Vx)lkXU;>qI;Xev``CUHMvnnCY{Arcv6}jp47C5i$EiYaP;qQOz#}!jFINDI-osZc+l%pypF32v-THp3A(ExE+W$% z2s6Kj7!QlAgG5Mzm?jY7V;@X7o3jp;>h3)<$@uCgBTwQUoOOgqE=wp`-@(pvM^6F$ z^Nxp!g|;z426H`_+D0ey%|E;q$+SLA8YxJ&5q-~tT%D<}UK`Ku@I%M&$uS}{!PtXK zV>AzkI=r94oI@MJju&C+$!ZuS%(U_(k&&6K48uzKG9=@@p~{rUtoQNn1e(R}H_>X{r?Y3;cY= zGSnF)LOjuS#Rw5U^8jILEnn_g;mRwi>ck&sk_Mb;*3d zd~KICOKx5^w9Jq;Cj5`v@RYdScKy(Z(N4Cs6O)YL{j@!_W5wD|U~#s#E!X8Kb(>ykFgLRL=7{wBrc+*L-=;j`)(FWR>iZhNkKH+_kU0Xz`U=Urr-l9eWM3%0+C<0GHTsQ!MjqKA0L|Iah?_ zCYweP-pl0+w=D5RFLh>37I`sGy~IjI$kTT4U|t-Vm3ynB%#7p6s}XrIvzVlGH19ai zXV_s;!&_2dEQVxF6QPd1aHRG|6-UeSL}1M9H#sfiI&r3m+ncdSCW)NxV+V#iDC2e< zRU1Wi(tSH3=%z!poll*!saXU&_rj^{QkDm$ll3=kkEQv$3t6*8WO1@0&0Z7!84GP; zTOR89c!FN;#^78grTjNf5eJ@-gd#}yO z?S&$7{2oixH8kY1*^G^05k4`+UnJs_9*tuhV2Ecf74XXYjw$vM5u5a|l0dA-StcJi zjaXeOGGo?HlImbwKd$enEHSnvW?d$-_NKEM??n1rgrVA%`{G4oW2(L~$LDL)i&u-- z@?>Kl(N8;G2#t4sLvQV;67>D$hVs`*DLEXvm3$_e61BG7Z!4Z$^n?-oiPkuAk!b2G6p?zkG-6o=v?!FNY55JOh z?g+Pw#F%%}q>@(VH^v^itkohV=|Lb;FSa1_V138xhtL`Jm6HH`bR* z+2RuOYW9GLO*)Is4#7q6@+nwOCW>HQV$6YPyGV>#$LQM8ngdEa<2>y3!)i$rQ`$o! zZEvPtd<}AP0$e}T-?7;sYxmx&r@iVMNnm8~qatn3$CL2UQG#K9?#_BbL?!*0iHL-z zn4BtRyz6+ke|n!ZV_#^AInq75PcAdIl^ZVmn@EfKvKWyc5evv#UX-%`OFl`k_t;eE z#jX{K6_LmLHPc0z>~euZpoGb89&g=-La&Ilm^I2S6k_R)wFzxYeVm2p*F{+3gwRwo zV;7~7xu|XE^;QyknW73^dF*R7?KAS!>__j2u=oof^2!_QG9TMMI2FyO)S#VT*Q@Zm zOiAyFq{L6DSV^oC7*7@U$C@GhP^2X8*U^5`C#Wuuwp%&q&ClojsW+eR)f`7Qy!9^; zn0VNURf`X0vLV8J(D|L?gAQ}^VAg*`TFh6DE^>lT9Ye}VjPNf*nZEi=#3Y{D##x2c za$Y|p7St9kSzl+BvExV2vc43Vi5G_w$&5Jc9-bFzJ1PzLeIrs6zd9w7s;g)`BEwE) zX2UtbK*tHUtnc?uXHB~Ce%g5|^3y)(9Pv6Lx>jhPjd_{s$n#(KKxeZX>fc`U`H42@ zXtO+KrG}q>7paNgdb{?soJq^)N1lRQ)?psS$W}yT;s-|}k%k96UMF8Di;bR{z2Dw> zm0!{^mhsG_(AFRIiBj19>;px5;`v6DvZhzVGiH5nISbm6nVWrxNKE`%9$%uYk~2q= zpMW%^8X6uh@)8duQSu_DS(?%E3r}3N#7m?h%_7ngzc58e>%keW9()=yz8GmEfhLt5 ziu$hvYQIP2FXTs@WV&cHakMnyOE}|9stI!(WSxS2ec}{j=9zum|3E(9P~`4}Jo#Y4 z0M0LtnIChqPZaq{4LxyPq_myjV#czbxBn z%Z!nG*MYvP@EjO0-wOdc*m5u!f9I7>c zV2>UDys>+tZWPJxC&CN&R=9o!)Kw%~m?MtbXAcyq*?TBek74BYsq7&lXH@rcj4zk` zJS6A-0&)=CI0s?6ak$8`CM}Dn3O|#`cMO@o@}pWVxA9cTP8Ug@?j^+!h`DQ3`_IPh zUq%PY64{gYS+;(yOJob3=S$gEX{&sn+lp$%TxT->At;{ZY+?=w@;&cXy%yOJ4JrkzRK^o>O*#o85azhjTA~Fd)>ngBjl$&<$gZ; zI5T78WKQ-t5uUfV7DVpRG;-9lPZAA3M@DhHNKD^D9r<{`?=YH942X=3J(MAjeO`D? zA!QBlznoL{;Q9CE!Q%Yl}~vdv5(lCT~&+tz}}irCeso*8Ri%# zKRU_t4hJW){`~BbOITgE!__64i&+*z! zz=&XjNXqJ75>m`P|FXF-dY@}{lZY9cteA2RY;n{>e=NypsQFNvZ$}^5$ey(~a`ks0 zL#*CPjNG{*H#13nN+3!&!OxCpU^ ze-=ySpuMh!N zxvagmx`(~KvaYqcR@-D^{Hy-E3fes#^6E&8W$O-WQ`*8C`@#%MmWm{A5|ZLd(N5f< znITr2m71TmS!>-94tA}c6|?D*|x?N!}ScY_Gd+e^W+qt@ehkTv|4y&-Y4NF2X+ z5{(IQ_~L7p6T*Knw}NEfE8>0s6Y=_%GHr%jZhCr)$j{$9`P!3*S%%!h5OD}Hdz;A2 z+B=yA4s%NJponqqwU{8Qt=ip)5j}jDi1h58NOpnc@`hm~SL~j(>_$Sy}j#HA^Z;He?Lv`}% zhCe1peG_NB9kgS< z^pS|xekLb+=4E=ed(j+VWD5c7;T<{DrlpV*0=HtvD)k*)9&T3p7x!seA&*D zk&{6#PrFA@{)HbD>A0vS`@bUB-9;qh$km=7d;ye0?0GCp$mVQ5Gs!IvJdzA={3()4 z_d>Ec$L)~LcG~b|j@)?P(MC?Hv@ym%r*>*f%KUd(Rx!_e z=Nur?M(wdQZSLp~M$0-_WZ62&>U5cfuAFfYPQPH3z5R4*V-YXsu=qwM5andqz{gi! z?J`;I4q5#&v~XB*judIuIEvMCA!$>nzM6|tb){JO^LaaVL3tQ-s4V8`+LFvf|3V+LG{u8Ur2_j=iXBqnG_Nb%vx^NzJ% z?Tk*f&7aKCtAszxm|s-G2mA~(P7@*7-3ifVG1~P{+Q<0t{k0LR$2mPj&hYN!$Xyt+ z&acUf+60@^Qv?i3RzTDS_99zGx{x=2VneRRsn6k(maT1-?r3F|BTfl`WAD2)G)qhMczi9QxxC+c=h$0n#|4bQDTZkjJ=ccC5_b${FLal z9{C}DJ)UcsjCh3onJahk_}OVv$P>K4Y20^_;}>y7$%`vt)~wyIn9u$UxeHPTW*2XM zd_k8xCp&Hs$SD=krTZXS8#38VD7)^s=8wy+EBMNwJy(nYxI)?}*@rgFZAkLY%n3;gQ}&^S0^?IT^Hpw?kvRiffV3BC+0z(xNH}M@w6-syH}^2H`;a@) z%h@6!D=c>N@{*hx`|2`1arFnb;Xc_&W{zg{(!##=5teQ`d_`}h9oC&YJ}c*(FKv|V zLs(dNrVTj?ukDW4j`@VoBb$b_NF)1_y=J(LnPc>@KS$*6%QzLztvK_@c_P}s5B}jH zBWsG`V9TBC(V2RIG_Ws0W=R>RPmnB?Q>@PNLVF3H_ewi{$RMXp+8DnNM(|YNEh~H{ zsUD1ox2}st{MdaEAJM(|qGY~MEE2gB_dzbMF*ApMmn4;;sq>R!iL}&tK4osw?zmS# ze}>C9LV3M4-yDrc&gCK~x0A{V1$A>VK+aVn@01dLDR*F=ep>@Sau#4p*m1?$k%}ef z>Xe^vZ@c3aYSB1t8!MWmW8V2GSzZ<+X!af<<%@83@>hKkV{CMHMK1bO@4j~wVEGUHa_giFK%f+ zupGZQw_tF&#H{8(B|q2}7NPx$D!)AwM|x2ITV&~%HLKR8e7iDdy=u9nZPlx(Z>AQe z7GUb8oXt6Rr@o_FE>$gyRm-BbFIc6UT3Z*&9z1xkxUG3`B|o@ZQ&}^ZpV|)9H8h5r z219cLUrYzfkKa1#YG+mru5D-@Y;UgS2afAn2hA0mx&Gt4p7y6b&wcen+3SWQx8!V7 z2CPc`FlTGqXR2k%s+{eqHr3MJwxexCsjhJ_?dZ-1#Qmco^WmIFqJ#5z&NIq@H91e@ zJel)U&eJ)6RV`PlmaA0DQq^*`YPn`j&a*ks3-JJ=^aU@f2fulBh%^qoDWi6l1?|NmSt_b+P)wIe7zsc%{tDI^6#8a$bg)W zbN-`RZdNU~tV*@zeAc!@wcOe^qAcu!Qp5g4dK$vM$@w-q^grbMBK`8moS$-jRxNbR zm8xa+>YQJ5e#`lDqhF`quUJyIq_n1PwWhQwZGTrSx3kiiblw}89+mdw ze{-m%ne4CB{w1=J1NBB$vB;ZrBhj6!<9~J0%wc*ncLdX__qCa_%9iTsy@w4k{>j(m zP6q13rS(Yb3Ce)GtQKpU^(gDn)?=*4T930HuUgismOE9;U8-fBYGK^jpjtMnmQ8nA zPqdz7J=uDS^;GL=*3+$LsFuyD52%(0Rm(%t8&7BskCm>L(9DkC zp>966xnWjQbx8i&9862A3AI$#)^+?cI=}YS*c6%?V*Rbgua$JyHn)`3*0fBY)LdOx zTg|)Nz{;jjC3SU41M4Ud{*$GyvbiO{p<32|?G&2SFgw&VyEZgO`|n!zTl=NFveMdL zwcOoyeK76VL2?hAtGc0nP-SCdE&n7D^m2ox+z{1rZ^Cl?t`{>JM|kJ9H{4W*Ej`E7 zJ)+3}g_GWzZq0~FdTX}Tstj0Z%~35|S6UfPw~6O0p}CEmVF=Y|p37_2)v;S0E3LVz zWxHzGF@Dg?%5}>1DQ{TwSEan6ESs!*LOdl_8_l__W22iZvX)A?J%qd1I^OED`mF(L ziE7!Ug?qPZd04ePqFNqREsv>|$M3S1S<9^zg!^3UMC&B$WYzM7YI#bvFf0@9XH?6x zs^xF0<%O=o{r^dbr%UK+Rm+nJL#O+6rj)B!El(#b*IkGWS2tT*qFp`5+A5Kqt6H90 zX`QE9o=+UvzeGefK_oA>E{qnx*t%3Ac`1=>w_aww+t6JXs|6L?krMz-` z+x2?1)@c8pY(&;s*GIc-ll5+i2qV@zE3FJ#|41B>Emp_vbTg)(d8GmQY!eDJ%m~$c zYU@fX>t=_`3iS4JVWL(Stt ztt=hJE8u20Whz-iO*X&s0}R{X}~b;J?lSt%v;}2wOKz@E!y(UrS(4_R9ry4fW#vSMvP`e>tyQKw zsfqbP`=ev?!i|Sl^GCyipRNBD3x2_Z-&D)DG6DK-we@%FAJ#ur%lE3~ z2i5Z9K3JewQZ7zeXwyExoil|0%N#mv$iN{(hK|T^8o#nF0QMr4oz>UtKn_RsG8l_@kdjhAxZnvW{Z~O z_46Wu*hpb>WU|rF93?CKx3I%(N7#;42CTImX|veUY)9FSwjHBdepW5NsFq(<3oc}O z_xoDgakk@aC)iH3on$*%wfv!4{#4TxH7!L=OI6eM6MrV{3@)-w)^8!c|3%xVZ5WR< zuuE_8T{F7+9=eFHH2K3aGP8z{96m6Me-0cmA|qp9*3gW+fsV{!>GsV0jNwC_8R6(O z*Up?(SIKLr9(2*wdg@s|_Tv3-ztqTbTOaL@ z?q2V{cEgG0ANy*5^!47j{5gmD#{p)4IBJCX$HCekU61~|^^0xhABSmw9RKv1Uau2L zqvzO0+D0qKud}7wGHjW)EL*lM$7Z$JY@^h)1Jtww)wF}uw1d^OL)5fG)wILZw8Pc3 zBi1Q>Y<8uW&2G!HIc@p20;N}*MNK=h?Fjy#n#RATscA>4X-Bsm(Kc{GZL_nkc3LgJ zjLyuiMSJNsGq#2E05gMW$4CCz)m&EF#5A>8W}^Ck@aK&yt!%2TtZ#`CVZ7?|LaUdw z^CPXbEi4D{RiVPH985bdvIWiwhM3*fpioT9jKtMVp_Wj&kzjo2jLxN`QgQMu<1R}g zT|IrGA#GUtpdk~&JB4e#exol|*d{9j?yya;ookzDo1~^4tEL^NrX8=Qop6UOXq#fI zv{k8TC#q>Dsc9#xX{SiPJDvgFF1N7q!=b)VV?$F*pteOkd}62n5dIyJc>gK91%VH$ zoodO3^16^LqxfgdoLSk_sy`+Dp=mSaAyuMnVJID%VIMJMNZO~`lh9U|^7CrjOk2IJ zK}|bVO*>Of>uoLq*_v##8KG^>wieqgHSIJt?Q}KmjMYakw9T~z)dMiL2R4dn^6ZK> zEvo6_CT<4BYJMN5>w>xbin>44SlOg?&a}Q=m)6_RW)kCj7=dZCF~jSm^IqBaXDB9d&fMhdov@ zw<+ya%{y50M33Lz!XK(;wS=0P+ML+7Uxj~Gb#*Ajd(A7y9e?BrC!Hd?&j__PPvDbCuUmKcmN)XC2wISMNS&pTpn${G1AHP1SZW&ZaO8 z#zdqPR??q&QKXzqwt9}~qrH78M_roMcF@6X2ezF+HtTop`#Dh&npxtKHgb6^zH(&$ z0RsmO=CxICw?nR(xF^T{mk0xoKe{bt;r?w0i)BMcp0aw_@DXi?v>n=Z*y{9*%(lZB zoQ`WdhM(EeMTik*Wq$OAUDp9oB>aieA8L`G;%bg4a-vbB#8uMF4-A<9>E+{(95rU; z=(Z!nxUw6uB(()Ev@`T|r#Q^)H#2Alsi(ApU4_%CTn z+JP^7yv5@u=n<{QqviU)h9taswTuZYB{sFLD)tc)eIq0_0wt3@{-Rkel?=o7rl!i) z)qzqUvDW^bWYcXGr)#EAqhbQXZ>)D$o$HJ9S4vNs9L|kZlYIQoDXat>9g%G{dLFK- zqI#UaD+en_DJLtvl)lO^B|~v3Ze_gUR~nRA$^zvQ<#OdFipD&sY_CqrQVu)N9xwphf-fieJS;$)K5~sPW>+R=lzb@ zFHO(u)D-=nN_F_3;eYJcTTSbw&30{9*_KW+qrs%Nay5UtT3Ln*<$oEY&$YIjWs25p zyWVz#ZI*4B?Ivy9?4zcg&Csc)ouj7pU2D5#zk_YJ*_Q8j@P0g|`>82Bsr##G1LR*) z4w3QntgZ(>Nw97Up%#VC?pl%*^0&0gQ>dGg0bT;Ml0C;9th+~>+}rL7&v3Rqb_A67XJSTC7Uc6*<-L$tZOYjza1fRjz@GX1~zrb(shoYQGwKLC#Q7{gWb0%`moB~x)15;r- zoCkGq0bB?wTnv}MVpsx~!4+^7+zDIZ->7bZVrYUZVI8c8XW=<`6TX12;2Zc3et@3< zea}MQvwnv^6{Tki91kbL$#5#14m|)L_3RDU)UzK9gu##tB~S|sU@5GId*E@vS3N%l z{L||&I0DeQ*HLf`90w=BNpK3B24?^c?3D?`qn8!%W3Mqld%f}?9|~bCxWNPXp%*^v zbvMvS4t=)3E+7Vd{srjM=TjgaeZB(PKl^Y% z_SwT=1f(mK~ehSzy7q>e}6a-`T{of9}RYJfD^E(Kk@4Cg8-C5IZS}_0loU8OaC446g&-o zg=Yc(^#2y5J@U9eG3-wa`xCFJNC&FZy0##50QvqKM+yt*F${_M%5cUnKfUDt2_()L(47moD!#W^7Luh{pIW}Y~JPi0} z$n)?Pd;QZ^Qp$b}=sFTzN22RUbWPtM4updNz0(he{y?8hcLVWBN5}LFp&hP=8{sBE-*og% zr|oq7mcAVxgq^S(@L&2%@Cv*S@IL zyoB50H?y~&;!nbY(U=VTBrl^WOO66!Xmf=t_6HPn%Ith0-k~AfIJzEUq<7X z(d5YJH{n}F8FLT}f(*z5>==U`V~W5B0l+t7uxrdkuoj5rn0w$pcnI+S7{-Y)#BvO6 zjG>J&_<`1U@U^1klC!zAnMB>Cj~sUaF?KuxPXY2B z=;e4GUW0excSXrdg);#k?8hwv2;ALk#6lCMB2V0Zq3fdBH3gA?E+I0a6F zGXS0Qdjk6Aqia6C$)64j;7Yh1XgB|E*b3X>LD&h8!;|ndJOkusKKkVUtSAK*I1y;8 zfVK)~s~``iz(TkIwgA2?z>b1X6{Qe83lD|E;Ydh>qv2RM9*|dfG7N{2fS(JqAP4YS z;bcgkHTNzPepOzOV{a8 z4k2iSCTM}#fJ_%MU6;UOSOUm(T>)3Y)$k}Fb1c3Xi+*FNH+Ct|*4WK(FWe90+gNgK z?2ACG$G!@$!<&jSt|trt>>f7?#y~C<068;m93XpK31Is;+8B2sVB5I0fZTEKz$bvu z$9)E0z_0Kd{1^UE6nAeJ1Wp(Wm2e)+fSG`;?u!9?-Pr5KUN`o-uY((48QcQP;dWRD z*zcy_xUt3kPayBzUjjaHe+%Ek?|{FHQeZzg01g85DZ`QQRK_@NZa z;ar#m)1VP90Ce*Za}WOTpqJ-nxDD`yXEhKD&o)3$&qJ^a(A9&kp2y)ycp9F8pA^M= zHU!{e*bL}joCc$TzZX|R4WL6YaVjQ8#SK9D;>!VDiqWMQU5al4+ArP&_W(IpycN)) z_z`#vXup{Di(i7j!^iL?d;{MDIu-xHs~&M0zaJb3^xyF(Lr)k2Ltz+<06XMC0gMHF zINk$w&zEn5>(8G5a z90|SQ9OwrFfq44R$u|-*AqQ-LAARJP4;_8P)OQKsE8i->7ruWeiXS`uCjs*O_y=AEbPS+l06zrYhY#T+_*qd(@Jk6gmYfa4!4Fel8jy=6GocaYz&uz0_^hN2 zu7|teL3kXV0%BeA9DEJm!H*#A{04vMOADp6SxU~89s>BLv^Nl!(*8i4ONRh)F0BFD zFU1$7tw7tQ7s5q=UrMhA`b80Nu(CfP4yT0++&Na0T29=v0AD6|3NGAZIGbnF{Qwz@7^1slc8J^19*;cnjW!f54~k z1>mO&{8WMd6OMxu;S@L>&V*ioFD78m1nilBJrl5J0`^QOf@1JN07?NTOqd8ks08eq zfL#-?Yr=W37}f$hP54|<&P@YkolDtsvGLqH;Bj~#J^?9%j_0D|xxcb}g?}d=2;|tr z!@&Ya!7+gT6Un=Y=sOX8C!+5}@@?Ws$b@Vl879sH^q6=#Tm{#_jc^m(3d> zoF~2rufXeoA19*U#DBuS0X-*vrYMt+g?yL>jc@@hg=+!1lUBoBa4+nJm*7<(9+QwW z={s#{PMM62ld*9!HcrOI$=EpgXgC9~Z!$5NjE$4~!T=ZqL%<0&pu!4x6p%d`*^@;! z{dMwhK&*qb5u}YEZ3GVk<#!Xm;v}JXoE4}0OSXKFcE5j{u4YOTA&r?!(X5c z7Qyv!GoVM1cn3d(kKs>6nL^B_(9RTMGzHzK3pF;ani0c$`YRX!`_fyuxHh2(-?G)lL zco)!h%BS!JdcYDI5-uEQ`K2Otg48A74fe^hbnZa!iQC( zU>xALD*RT3->S|91Xk6+R3Ls;Gl1AtkuO!(0RF042DiX+SPA&9>P|rCs)t|~JPgFN z3LC1Pgs0&dz>igb19Y$M542m2z18=@hl)~jED+Zk{$3M;MX&@ehpPY`YS5tu9cs{_ z1|4e9p#~jl(4ht$YBs?=a6b^Unm6F@K%UpoCu^jgkKkkY1U?61SMx3W06zoz)%*_R zVd!MYfIO&y%K+IS>yRqJ`6?x zI#0(()9(WOGJPZ5tthoe!x?ZUP^Y#Jpl>byt)*YoUJEzC*MJXd@xgg1us?X1q1~$wX4(UK&nUMqJ z!VLU41DSRF_qr*t7KrOi?3w9?Ij|6}fTe&PGqGbPahORQX08EzF>?cKhI;@X&cuf^ z@!?E-Sl=7)Up@Y-r~P``uSZV(?SPE>JAgcEI0%k~MjK3kYM2f)pdK2b6&ApSph7!b2DH_9 zGpq!3ZA8~bV&8Z#+z(rUwi_P;+Ha)&^Ls#F7z9HB+s{vj(U1#HD1Zi-3$%Uye886T zR|E3T-vs#ceA+nwK_J)9$FJu<2Ke>-eyr0lsX;m(4=}Up9{c+G?hqW*3Zu za+m-UAqX2_JK&$@-9TP6qkr>LfWMkQfzRP9_!by1n#u8&!{9_9e_GCg{(wJQ@MjDD zY{>v@Y{8E$W1$F&!4LH5mNGaWu7!KxbwKv4!{H>Lugp3VdI3J1H2?+!@@L_P*~0<* zW)rK~g@A3dkv|*xvr7RxXP*c7ayB_K`&L*1PSyV*~|)9@@j z5B~=*!7G5>bLaze(g7dNAur}Eg9iZL&B1qb@ZB7IH-~z2-h{scew_0zybm7&zMS(t zh`e8cSk5Jua}NMwITxGf;F!v6) z6V}55(ZTJdA+C>Rg4(>e+8S1a;b@mVWAYrO`p2W)J;4e(zp{%b{U>-~x{ z4}Iqy4JW|Ka2lKiy@597^#d!Ad-I6LymMhPR06iln+CKwZze2&zkmuC!y>p8E(3I# zcNL(=yjx&7+z#u2T$r~7w!(IJ5O%^d@B$FKd9T7-@D98OAHW}qGXG2l z0Kc~Ff=A$Scna`w8-1kh|KMdHzuMk}F8~|czJ>1rJKKJN|H2=Ng1Z!TKOlcp@=@&t z_**3()FrS9UV)z!<)Y(ZB>3Q5m<-r=Q8m=TEWpl-T46q10N8uc<#07z2R8z?UbF&M z!5#1@d<5SB`dx&67op$9DX>2r2nWLna1!)^fiMJ!!NuudgE4^a7w1DEoDZwv3HTfQ z9q`A+_~T;QScu$($Xj?S&`%Z)gAB+95a3x#|=(Y&m7TpZ%U^Af4BJ^1FB>WYg zgO`Ce7rhB@!#@;d@qv&D6;K5Ya1mSr$X|R5Aa61DF5V4~19mNb23~*{;T1sc;*a1P zz^27N!LRT;{HZ9H9u7xB8XN;tU?$W9ZC-jl{0066|AEioOF-VG$h#DImm=>{7!A4L1md)09C%}kiIcI;`#o_6eM$DVfVX~&*+>}kiIcI;`#o_6eM$DVfVX~&*+>}kiIcI;`# zo_6eM$DVfVX~&*+>}kiIcI;`#o_6eM$DVfVX~&*+>}kiIcI;`#o_6eM$DVfVX`cs+ zVF_FYSHjPVa@hfJ5TN&E=zUo$EP_h`!!El5@WW+a0k&WE9sH;$m-`?Hl|b8<)Ar?0 z!7K0@ya9h#lq;~|3NN7d6@Dm%&F~QHf`{QTMY$4RT$usbe`OAgf=%!s?1bI$sG?kj z@2(mO`0J{XkO|kq?XU{&fIAgsDe+iJt}Z18OOJ&U;5?WE*tnGVF8vD-*QNMj>96o# z_)}4?t^)jb_4&{Yv*9Ip7v6^tfxNgT7qIObY`X^AuEDlz?uSRxjj5=zAUdUUxj41hjqK#c&A_zw3y}b^nI%;0O2#(EWOJ zz8;;gN9XI&`FiSc=195zJ@^3r3Dmox2qwTpm<*Lb3~qQHUVs%MXU* zfE-&+%$A=DbAgyGN7v=_x#ifp{69d!a0DmaTniSX{4uV7Ba5xf9fgaEk=vQmV?={%6W+)KDHN`+I*3ixxbX#*NTn6a0 z<{G#jZiKb44z>b0wdN6c9G(LFyXHlB1zv|Y6=f~@tVRCX0FVP~&jb9hmUh-+``Q}- zd22Vq4#2*(kHQo13_J%f0CLw7|Fzh9Co=EE#yhd`PHeoB7~Po$$H4JGp5A#XoB{O9 zJ2M~)a=->-fEeECgaQ}~Zt%biXot-}n|FS%D0iIuF~_wyzHW^46aRa{&9+ zUkK#r`o*vWE(heUzYVZ;Ju=s0<9cjdkB#ez(fSwQC3qF+TkGjt>;D1Y0=c>VC-?<^ zgFh5y12Nn{3^yDIhrnS#95)cZ4JQHd+i*IZ4MTt&+K>)eUPNykwDvF$PzYlIe{Mb(Cc_M9gl3ox^Wg$$ z1AMy~Uv6Fw_rq4$0XyMgz_**xZ8N%UMz_uAwi(}UMz77Ez-RCU5ckc*eKY>ujDI)d z-_5_npNeuf{=FOj-Ho1iMD zLH~Qu{~q+e=PI}kZiJg*1+0QKKs)!4tM_~i-vhq92VdTUUiT97dx`nIhrnTQGMone zU?_}$48X_t+93}L0RP^LuJ@wPy~w{8-`tB&?tK@q=U&>m_jg6P?@&PAedNu3*(VftWln5Qe~TASMskU<^2b+<%}RkpIA=fZY$g0iOcxJn*BUY~2r#xAi3G z1IXE$4#Z@u6-GlYAZx1+N&vgJV)xdGfZbawp&I7Gjj#n?hVK<+TN)sH8?v|che3e< zw$a8m+So=L+eQKL-c}CC+J?^CnqfAy0x{U8!a^Ya+lc?R8{mE*uG@&sHe$F9+qV53 z-h&U|BltJq%kB7Y`w4I|oCZArA8tpl?d0Kh@^JfL7zQI@EEItk#)BV9p#rdb`(!}Z z?by9N1Q)?dcoOJWJLo$*uyY6g+R*~n!acA9cEZE(C=in!ufXf@7Q6%KzXSbup#Ki^ z-|-!g3p;*;KNRIbV)o#Ha0t-OgZT78{P!UKdysfMSOw_xAo=)U12n-bAU+SygVpdF z{0M(4%0q|48E_W#hfF};LmoI6rT}(6G!a#{qG@ceCR#+5dH=KfzRMe_y)+Ehkk-z6=kOdj)r65csLPGfz#nk=m~w`9Owrw zz~-I!dnbDAM30@T09|%&f~`OdcJ73S;W2muo`Syue%bkV_y@cX=(iL7cB0=-`pm9F zVIX9~XvhU8kT1L3K)&oEUv}ZMUHEJle%dt$=D`Kf2KZ`MJ6r)v;TpIF?t+J4H{hpT zufoUhDSQsU0P)|Q0{a8;-+dSy32AT!kjK02kOu{TUb~B+82nHQ6)+Kk&;sbUyA|dG zI_^ft-50|mxD+k}blrUwECY1iy&P@_V!Qi3cmTEo`tL^n-H!mi-HmT|zXbn}qPvU| zs^0nld=A|y-QA5eNGPa;N+SY-VjzM7VxSHh8D@qFy5Hyh z@T_&$k~w?t-`@YZAMRavg45Xj#>+%uwvBN?uqgwTs7GU(VTMhud5*T2VUwOW>3P#Y zhB6#|Z~7GdZqo0j$xP!*=JGwO`Il`RCXy>8;odgMbaPttu{ksH+$_({dC5mvYN4Oa z`q|tLd*0lUE_A0Sz3I#A=xejSHjhM}o5wI7d2W{HW_fO&f!%NZia*fX<{Lq3%ZR5NtQwcDvawr|pF(iaEFIX?r;;qPOkUX@$LQ ze->|HyWMTKyX_sZyX|`3E`#l_V1L`+WB~6nn2#8Ze6~-(eQlT1cKh3IuI*;oE}!l4 z*}jZlS-~p);v{yuLuNbdXGd0Ykeh-Op*W=|Lsc50&mH>Q(VhP2W5)<4q4tg$%w`_* zS-?Vm$1Uynm-X!7AV>I*)12i3mq_A45bV^?&L=29VTw@_J?$({CG@tl22axlZ(*n1 z?`+SDbV8;(Wx7+QJ7v04raSe$^M7na&0Xnmi@Q1?=UvnI8JX?+n>FZv*EaT}|6Oik z*HO%{>jaU+63;cRbBnv&4}#q?-Q5^_-z~@8_PtwgyXCpN5B-qq?zgb--Ll-hgDc2n zw@mirBo9TXi0|!bhMD)6caM4ZbfqV~@Lu=$?wv6WJ+qj@Tz=$FcC!z2 z?y;vmX58a$_ME}(?~&Oa^X}2xp8Grsg1rH0kmcTtWFZ?lu*Fx~;usvB$mk zx3>X}Xo7k6Hm4VL2P_v(MI9qqkH z0*`}WpI-N6r65(Pjy(6Ny{{FmX^UIhC)<7YwXZL)BhP)q`It``%~&QN+kLX!_dRP_ z&nC8FpZjFHPjCD5woh;S^tMm7`}DQXp7*72otxZ2zWe0s?1KGiNsoN@=R&6Y^J9kn zGTmR9YSg3-^^om;+3uI^e(z&{2VO$1`+M*Ta@}vX{o`27@BGag zU+?=5a~e0W|1J-L;DFu^xX%OSsK}G3eV{3FJ@5=|c%F9jq&KhP-5nUh2Yke5jA9J> zIxw3>=<9&K4(RKEz7A|*JGQdywrx_i*qs`aG!5LwY-uosyKnZV#z_$X*XMra7&U?IGD7>PipZ;2j3>KEsjg zp%KXT&@{f`cmCinR`V|#(Ay!s9n#w&y&ZCZhxBzQ3Ohd}+e258?V)6@bCWyV!#x~M zPbTDg*bImBQ-adS^{`wI%k^+IY9QOg%`ng5);vcCUP7*i&31SwU$c~-_ysc@mh0hv za2tosa9GcW^?dj=mxx5)hvU%iVf`My#a-ONk#yvyEESOR5qEp!MLN-ie!R&5-o?Eh z8ODcv%p~TpoZnc9zK-bY$XeF3iLLBlH|NpckqBgaM2|=GcqD;q==F$RkI43jdpH`9 zmJDP<&qoVWjFOb0JQb--eVXtTEpa19pQki4LAk0z0d+dcZwUzeE$eI3)+u}akAIoi#;$+ z$0(+ur(=3Lrl(_aJto&w}r@==f?6i5I6$@RaQJV^r@)0|ec=2`Ur-z4TB&;J&(gddRS ze=AtU->hac2e^bD|C8Z=cZ1+~HgZywQk10vRjE!b>R_M8pF!>8U3i&Zyh?xGWB>yh zf!>ZUU=d6Ck)Qb$y&c!valIY)hK{e}FvmEKT#w83xV;~@_v4q*^KrQzkL4=YxyAp_ za6br6q$4|KIpI!EkFw==jnCV0f>QbLZG@%EdGMO)#$ya>Ce7?gRC-i+n-zV(< z#7_3GpF^BL&nNVJLeD4kd_tcmZU@21Ea>fIe#%gfhS=rFwshbny3(DV$o8ZxPkxM^ zPU`8To=(o?f5`Tvo=(d4q-;;h_M~i2Zect6JGq;^*!xNOo;-@s)|fc)xsR7-e)9ZnSe}B>HpLWW;2KHS;k+i zV;KPq*hqI?|Ux=;^ec zPV4FPG^R5PJ)NG%e7<8b|F9PQo!)?*pWce!OQ(0ShyCdFv}{i&2EmzZ)I`lQ!}*rY z=>N>4AUInDxt*;*WvcQd&1ixC&+7lIH+J@U+R=mFnBnZ}yv;xcBkQwn;_M%6L~m#9 z{HzSm>g()rPH~nCTnd77d8orHc(><0+*sodvL5L^sNhyE|> z|Dygc>i=R9N>YaMRG~VxQ0JmMyEv53k>y2MUewpc8O*|cU7X90{EXYW=%y~Zjf>lm z@x=qUql?Fo??t^{($6K|za*PWGPyJW^ITHr(qz8I_b&a)3f8lQ?d-zNE*-?)F8S`I z2$F)}vKcR%@p2ZjlZ(9Mrw~OcL22sa_vGa!G^080^m1$L@bdGt=LPKXvi)7w>*ZJJ z$2$yTI3Mu|pJJDnWpr6amuF*^%k%k;#VkcGmm^8$HurcK1jYy=^dF)B2>nOsKOztI z6j71J=ry7ZvWs{V*+sae2(=?dF@}lAF=85DvVcYW#wz}14I9|RR%9C?%ZN+d6)D@ujOZ;=Z;^V7lx?KGBHc}7HEQ5?BI_dGNcl#}H`4ovY=L|u+ac4)j+h}* zrjc*(HUk;V5M&!E+sLuFyGWTvnk7=Ekur_^2DwIV#^f2TiC`? z^mgS2x4Fl|AczS_i{4`N7NfVAoaCVbm8ptcW8@lR|1tI-(~!nAqd9VoX-fyZ`Z7;V_Pok#yocJca*dU1?B|SOJoX#=HFAxe&rkfuO8&&H#{SC&^c8!Mv*;^U zU$Od%{r|om@HhzK(vY4^=q)Y>WhhTYWE&^jxEj<(&vCMilWm-AntR_Xck>5ZT6=C(b-^W0}BIzGNn|F-P1nE)k6Y12Vn(8!K4FUu@$rdb+Bot9rV6jTCP1 z|2?_as}F;~KMLa0Qjj9(FTMnJ9`7y1yV-cT#>+KcuJN_dYkU))!kxxHO?$f1gIDN7 zKlC5}CUT7*j!fgdz4+0{G=4JEkZb%O9ONt!=s#Zn@tTZJMV|3@xR2fwQHvZzlU@@<4ny*>{tNG6wS|n=^SC%Q0i}O8(>@)?(h| zO>E^PXE?_Nyw&7Lu3(SJS4kuZIV9U*vK{)5K}s6*oFbc)0u;tBQ%X{rvdAmN?o#BF z(wJtnqBYOambaLSJ*6yQ5leArDZgNblof1b3*JD=aZcear06@v-KFR^B_4N|lFZ#8 zNXHuV$I)X{)DOFFYdP@Bf_mlc7dP;TwsctcK4eL0} zG4z)z+tky@HuWNxk!|V~^qMN$>lrD}^Qd`!2KIE_POj_!MnRrLZZ}%+G_84o?({_e zH}rp_A8zBu8@PuXA7O?YBN@vCCL`+`zq5~1=u)Y+b?5Jx6N?7FYjST zw?AhhQ}_aX-=2$pZ!cgGGQKV2+cLf_jz0uPhw{yq+-xQ<3eRnS909e8YV7dgn)e zMy_{$XEmGIhFtH+^^RQc=>N`Pj&c!m+=)T1calg&u6N9Kw=ng2nznS{B|4+`yL!K? z_q%$(`v!yglz=;u>Fb`p?sem3?EBuUyoTQHz0F8QGZxw2lkGjbzi0RN?Eapf@6BN@vc2~Y z$GIB>_lxip?*IN|%yoYk^1Gi%GS`va{YOFYAR}4GPA>HSK>rW)|3Lo_Do~Xg)JDz^ z8qpMW9(Z#PMllULe_-bi^!30yda#hiEM*mcvlTmjV8;&*ag@`X<0A5Xpx1}`dFcBO zW%E!b4~Ju(hw40>!xDV&p?iO5Zx45K0DF6AZx2s#hV%ID!)x3Rf=6b2WX4DNDMV39 zP?~a7qzct(MQfhrdD`&;9kIhlUFktj?D3KPJ<{u=fehk9KF1y(O+f#T^#ABfX0QNr zJo*89dh{DB`4h7}lFg%=LGU;Y_Vn1E9?Ru%9-g28W_YaU$9jI;0GT~*$usEtv3?)x z_i-1x^D?jT9{PH$ugBA|ug5D`#U{4nZXWOD5J&ir6GW35gh58KkeyuQB|n8IN(o9+ zjz%=)DO%8q);vdB+VdhE=}a$PYIb?T@Tr4eQvzX0~F6v}QP7wAo2WSi~-^pkD`BeC0blbDK()6GDh>3lzZHu7Ot>7PWM z^yW|B0pCmiI&Ux(-%RhD>3uW3y`}fv^uC*Z3g2Mf^yW;zku8`p{Vw+6cG4flyy;JH znrozRotwC;^!Ioegc$Mf(5GM1wv>St6t zqdjG`r;N|g2KSS(9X;vIJG_TXGY&_l89(E5#^4QP{Ek2QhqbK7?Pqj58TFP?ZyEKL zQEwTKps$Q>CZnBZOeBd^ZgK~?W|V72?;}%4arBu<4w>vS(=zNRlYL~)g-kQ+Idd1f zqxa0ca0{6SGlUQL2>oZ)f96q)#`iMMU=H(`&mxxMMl%0|88XMBzs!2etT(@!!z}5^ zL>Am;mLljiOBL)m%ab&qF)fjCmS<^;w~$4iS$sds9*%MmIb=~M%cCI7nib#6T8hfJ zpR5gOMhl+C-DLH>tZpaki}Yb2X3OekvQA_QUtrFxv-z5D_?CtEot1Spc9(S>8`#V? z%${`@d)bd2W?hj@Mxy_0lbFhv%tY_m^qlQy+*r0v?B+On$QI8X)b?MSVfM6SLXO$9lM{JnmuL3s z)S(_S%`VgI&1r=_W%mZN_eD?H^^{#t+4YoNrrBkhU8dP(nq8*Z^_5+w*=3r2C4cfa zGR-d2?0U_v*X-Uy_U-J%&a?0109S)BM`o(=0z>hw9R6$$bLGrPdGwaE9sW$tj_5IG zFWh;~w-|uk=N!a)e8w2YGYS3X)NfAx=A6SSWS29781#`d5jU9AE_2#t&bvXFONO~* zn5!Umm&@*Qm7^jxsLhi!pb@X(`?>zX+_~IMu8XLX%Z_r{QEuPMor5B{iQL8T?c7zV zMP2IC1iQ)I0`uoKckVt6<3m2doVh<|EEAZ_G^R6)Wi01ce#ee-+fi=)nF4tvUzg`DIe9|bT=o^HI(+YDqdX2@fPJRjr6 z@=U>w^8Am*e2?Dq=snLL{KabYo5xM%@iz15FHbbFr0^&R^XBFWO5twuR-!6$&07aI zpVzMPwxKh6%B!cmddfS55BLZ@<#qRYM>CFze9J=gmv<>Y@DsoA8!K3aUh~Q~?=ez? z@QM7W`NS)@$tQk9|4&2(VZIQ#<;zYk^58D=l|}#g+*!WLm?2+v8sn|za}W7i)0Pgr zL?_;3HjB_-KK

U%r*-E#KeBG2c%1aDww(B9bd4V!!#WbBjAcm|vdxeLw#&++2S9 z%D(`0^8bu^^ZQ=@{ha0kmoa1hIO1_P`F%IPn<}I z(7P>YhJtb_D35}&D0rVoL0Bj)8OTgls?(P4^r0VmEA$rbtI!bKSD}yigryuu#)V{3 zSSE!_P?{<G7@tX*~mT)V@E|!p#LK0v8N&tq;MnfFLfdl z`Yx*PqPZzZ5sKsPik6`&4bfLoeHHDFeHHzP5sYI3vzdoJihjpZ$+MU| zi&dl+b&+Q=Jr`?9TRQL(osnm;9>}wpJd4S**!#${*vH7T*hm($5qTCn%5hGi|6+11 z7ELVi=)IVpi>D<&g|O@5c3fN!#h<}Gi>qDyWqQ$%*YPHczl}VLk7o*BFoQYF<$rjK z#eZQ9htN}TJr&neaXl56X>pkrmuYdC7ME#peHE8!iHu~y+bJQ_61k9R3B8ukYl)&1 zN1i3@yhJ(lU7{~~DzOYXlt>A}lKyN-w_36faw=)xCBMg?DY=|q`5W1l+`@Ktv6uZE zb0c(m%JH-rSkA3`Y6?g=V^}|OLak(rR=fPTfBq(N{wO+dM-7I z>C9pd^N?eyZTNm^vzK;5rK|E3>XdFvcYLq3yC^*Z-zhznFPX_#*hy*MDsAS{W-e{! z(ku9bKlz6>93UYG%lO?_My6$2(VroF$R~V;p3CUDj9O);;QM7{TE_Rv{KabiWdoa# zV;MP?vG+2Uh~x_K$gzwZ%cKTj*^nIAX<2WiY$eQF)?JpZjeN^CpfSy8L09BjwkPhi zY#;ie@3OKkJAii?%=?(3tQpFFjycN8s;rF4nxU+W$}V6LOOR1n^OQADS@V=NOWCdL zz>So>8ieIC@&rY2ljTZLmMT=I7ImqIy_IW+9?R*m+&g@P9?IEQx%sGFZYe+V3%{|F zRk+V`?z7wxPH>uYTt=qlWLhqk+d)`99o|ZL_g}sQr71^6^j2PP<@HuxZ{_QwuktVO z5}k0f<=s|!xt5n}c|DicbNSbKgRv}OCu&y6h8m1>$iF6}+hmx46%vAgmaYmXfsMMf6uue--st@l{^K&MUsja6V=NUoeB&e2x89 zlySwS{K!wpvy$&uvbRdrXheI|spPgQnYWVfRr-|4*j1&On6c6~*juIV@ZCyorqX)s zs*+t*awnDcbBLpuy^?)ZiX!s#2X=)S(^?XiQU{;#t}v$7=RgO@`I_A-igC@eYG{k0Fd=4C9%^RK8#(8_;7l zyQ{Vr`Bt;HYA128)y{K~SZ)Sk^-So$y1uKIqAuQ4^{07`cDz7m?6A2pF$L+3bLwE6YsIcljx;}o37D>X4rF$ z=V_0=YIsLA`r_7V$g76DYUr)TKtASEt%11#8 zBkx)zs7ejwT}$4z+-5C#*Xo5FYw5k#Fh1lH^j=Hvwe((V3e%Xw68>flGOcxx%S4gF zE$;Fl2y2I=#XGF6zuE=RQ|&U8rxI?Vc3tYDpW01$hG%Ju{nvJnwO`{c-eC|!k#+5l z&~NP-*lle)t$mU+$gs8yYs;{-c^>JFB0GEMzAq?y3G06hKz>y@&exs9%A~xT*TGs&C%<&1s3<)o+8I>UX6l zz3Gej>)T;{JFNdMpE3%!Rew6OFmwHR$hiIn_HqP!t#7aO&u|&D)Hh3gv(!)EW)L>8 zg9iC1NGYn*f~S#91N}6RO9MGJ&`*Qcc@sNnFoG4VXA@i5f$SRSp@G^B)NSDHHIP{Y znKh7EgGWKwFeDurP`hCt2I89y?YQA+#xap8e1RP|T*zX+=SP0#7k+0Yt1x>*vo*4V zMt0uF9F5-NEBtIDKig;-%lQp6G&;&ft`LWO8YQ9UMtW}afX6}DSl^8+Bag=Jy72_u zU1Pm8)=Ojc8*jq*8XxBZmx;o+8~bMCJKV!J8~bJx-)!QYHOYltG?7OWchjUKr71@R z>d}zacq>ghV74Z9)WnXO=&6ajX=2tUdTZiFnoMUFbC}0`zC#X80G{H33l4lZkpOn(?8H>Q++mdV@-GAzM39D&Q0BUQ@7Sse@$bFN5)Mb24S-R**42W zR`lE~7jkVTw`P9FGv+(UNCq#|w0%3*GpfRoG>7J8bU8n?Jz)wNSrBK76l56&lc#=CtBjo~J#& z+oCsbGJto{bBm7{%~3qvVmhb~Vv77_gY0Jxa z!!7mSQvWSexPjfY{Qur%*~(5@<)IvAXr=d7&CqA7&h*8twQ_5%2J${b8IJr~O~k#m za&N8NTdR4vwN}3eVQX2o)@y73ytRMc+COjYt+dv6YkjxYcWZsO)_3b)`2U~zgTGkK zziePL+t|q-_H&4%*iq|KoaF*$Zf)k)W^Qff)^^r9nd{u*F6M6ShT5dT{B1Ikl^o>e z2?|h{Vw9u|<*7tfYEYXeX+UG-)}{qd(}w41&x>@TD?NAx`)<>Z{=9{~x3Tv&@@+GW z5BY@8@DAFz(Kc?NjT>k)4f}61i#f==&3wK?_HDjr8O!;NmHf#+tYtl$*vbxevyX!u z;Xh7thVxt^k}JfKKoY5V3vKRjpGQIXY)CpXl7;N#A}{$VL{UmmnsQX63e~AaUFy?_ zrZlG&t$B`iyg)~~(4C(2rZ2DaCIfhv_ZZ4>KIT(KF^2I>Vk%!UldqV||5(5xmhvM% z^D8S@#ow%99UIxgc6PCs103cUCpgVHE)qdBvBYzY6mD>vdpr!n=K|7_fy`thCwa(6 zL5fhEQk10vm8nKe>QIk{G~p>)@(j0Ut4fk&I>> z6Pdyn%wRTO^9|p!kR|-UPyE8~{J~$W=3h3jnQiQ35BoX9QI2zpvs~aZQN(bSM3TAA zE$;Gw$3ggf8q$-AtmGg!Pf&ou6r&_%C{HD-QiIw&Ndp?wj21ji8=j{WvXA@i5!EW|( zFbLcGnf89By`O3CXWILj_I{?lpK0%B+WVRIex|*jY42y+|NqY%;Xh7thVxt^k}JfK zKoY6kIz`MN1P=@m{pE8OujAs&4`I4D@#a#Z!0v559ANiSIS-~p)W)17u$QHJ< zi@hA+FvmE-Y0hzx2%?E4o@=CVgWKHWVGzC$kd_Q&CL1})Lp};pgyNK#j1T#Q z&-k3NOkgt8n9eNbFpv3s$6~%`8O!;NmHf#+tYtl$*vbxevyX!u;Xh7thVxt^k}JfK zKoY6krwUDWAfS6$p?m)WS(MV&5k>*7Yb+(n%(>iEBehh6QfYai6U5jO6|QrW+uRGn?rx)d58OldUc8Dub>D>Dbl=9# zAnZ|)a#WxaRT;@tzF<1Dh$01bdZ^RmP7uEQJl#;|Wp!S5cQ3DG1M0l2&dY9~XMW0{ zPEU1uR>tl1oQyg>)#*6{chEBlb$Y7P^HvbP@+@6Y=M{Bcd4=CuhdQsQ^UBsB^zTIt zdzC_+Uh4F!$R|uhonGqn`jSf|qE0V$dff=Z-mU3`I=$8D{W8C@7Ik{7(|dCe_Q^vD z)aj#6pYjZ2G-DZ$JL_|TNTP}1Y7oBKgy(2WdtPJ-EBJ#y`6mebW+ER2C`3^PF@nz+ z#TfqMGV1hIr*CW!_G?5N)aj>AzYcuM&-}t~*iXMlLHJr$vXc{Yz2-h%dzZnykGWoR zAFmzbI43z1gs;1g*BjE9rZmTWyuOgdEagYsNB{I>Bs1A?AN}7!o&M_dAAt^)c5Q)A)w@EMO6-JPyJ)L(-Cg?)2wP-ew>h*~bA6aWn|uDoZWY zc}tzQ8Zd>qsPmROZ+%BH4^iiBb>2=#NBYp0*LZ_9>|hsr*dK%gic^JZ)Sx!wn8|GB zFc0@J;5K);&!ZrGryV`$NiXc@9e4lEIySHgcR%n6N>PS#xch;hFpI_n6&@?U(k2-_Y8I&4? zgP-Ol)ETVK;O;DEHR=pjXYj@#d@mb?C_*txGK5i#W-JppMKm$Qkr0IMH=`}>d4Z06 z&ma8B->eD3Az3JZIz!YMQk?hr40VR6GsJ#|c)vp;QD=xcL+od$_dE1C)ETPIQ15rB z_d9e2>I_w9sP{X}`yG}Kb%v=k%=;bY{SF&}I>Xc%=KT)yeurH~onh(>^L{^Y=O45| zoe$Lc!2A7R5x=3%2kLzAR}c=*Kwi`tuFmknyu}B6$j5xjLC$iXi$nzBhjnQ|E1uz5 zzGf*uunhb8@IerMl$oq#Cl~z~%=-*wIJ-H{NltSv2tTe)W18|5Et$ar7P1)o`S?~4 zev+2-WW;_xd4;!mhj+1`PquQ1BOK#I5RRzGlhmgnP56@es53&H5lcwsA&-Ob(~xv@ zWumy?tIi;)ETAD=K&q)NiX`)5BKr;7Phei z`x)&%MpvK`RjAJAe8F^P@)cLO&P{G}F9^r9qX+7YQD@AntYQ=Dj8SLI&LA9HkaDOq zR-Lg`8Oc=C8LQ6NSwxY7I%CxtdnX9TJx@2(8K=&;-mGK;>WovzzgsUHpPw?QGhUtX zmHCv(s54%j@iT}Z33bM+GyYZ(PI#6ss53#G39s-w>riKcIuo`A;lw8>g*p?}nOKoe zn20(P)tUGumqP%K=a%vDxd776{XNo#gy0e_ss53>KDI0@uYA%YQ&Qx`#mSs3&QD>?; zQ>So_IMkV{&eY@}oYs;TP-mJt)4K8#f1}Pcb*8Nk!Y{H=fI<|ZIPdWpqZrLNP7p~n zFdffCB7Q@i8S2dVD+p(1ATR37RA**k2J$iL%v5LQ=N#oC>daJU=9M6v)qrPE zXO=p%+VLH~pw29HW~~as+3CoQI?nLU!joJXD6>dcM`!msMl3U$6x z=d0)WmY-4QD|NnF8H97vkP~(0s52)&Z}9=@%u#2~ryS%g>daARPDBuXU6&T9^R+r( zKg<7EhB{xX^Y!mRI5!|W>daMV?i0MhP}G^L&fHJf&uP?|tIpg@K{&5APod5{b>_8Z z9zUSYJay*%%A+9sCM)WEqs}*Zc$Ie<%=-*uC&xI>NzMe}|EkiE#x$ilvslPtmhvNa zf^dF%GLo5W^yVGZnXk_LA#CRe>daSX{;44Rwleim=Ua8YZN>~1pw74IeEU7Of^b1v z)LEd;f-H2WKX39j1KG$v4seL0LHJ!+YEg$LX}}cb@(uI(j$|J4I0zSpq@ydZq0T~e z77k!Ndr)VgIt$&|qSDkroki*_a%YPsF$Z-Psk6wPExN{i)LEp?Vt2NMU1hxjS2ajyTj=uFi6I_Df4%K%HOI`Nf_6@;!g>Cx2r(Td5dNNy+~g%61sTAHe9Q<&a+vd6OVXSF)3>oJKrsIyv~)!%ZB`>3;8oi+BerZas} zXN@{*>}Sot>_VM2>Z~~!glkJu4RzM4v$if1n2kDX)mi&L{2p3+7j@RE^KU>$`k>Cg z>iqi#?)={!sPnHn|N1?&t~gatXPr9hYBP?RsIyL;b@RB&ZPZz(&bmiIxc)_Yq0V}B z*1yg_Y(t&(>a5=zgd5!XhH_M(5>*+=RK8$3vxp*v>)hl{5N>>)ZuFohy;;cyHnD~6 zLAWVDWl(36I-4r%FaPa?@dxV0rO@DiQq%1`{wYSywo2)E^+2TFYIn>*Xyoc5@*U7hXjZ2J;c@CSeLPZ0Wdf`mKrQGh}eWe_9y zj8Tl?KQ0qVG_gUrvk`50j<$4Q5x=3%PIY$v6@g-i#uRGiOEkC2qUUl}a48nbB$cZ}p)Y+GxxA*{c_NlY)Qx0+# zb@r*VFCqx{*Q6;=(SoP>nx*`}GM4io2oGc?E7{3KKL+zYLmAF)j&qXJoD0H()oF}6 z2h};)lCM~dItSG`_!IYn@K8q7Ii${^9K6cAsB=i2L&Mm~G1NJv&LMYp*n2(P5Oof# zbJ(37_FfM!M4iLx9R3mS^+Kqxuc8;LV5p|B73POL6eR#A! z>Ks+)XftN80CkS4bM$*|1>v!@sB=smfB$@VtULXAlecka$2PK$102Gg{a2P+)Zs}Q zFon5%!+gFYfxF!2VGte<=tv*>@)~cjh8^r;5Br1gL~*K6jT+Qu95b2C9OiMA+o*Fw zofD6O@Z^j1LYs*oHbM)j7F02u~HI66%~%=af4;HHPV^b4s04?(CHJdg>a~*ZgsB^}h`TMiOvprDftU71i+1XWWLY=efoONgC3Q`Vr&Z%>*DkGVSI_K0m zH;X7zQ0JUF=k5gI`RD0|I_K3n-RetQgc06rL=n`9P$!}^-fP5Y#-LV&S`qS!n2p^;e9cn6 z=LeQy*Ac!Q@ega*fn7xGVh<-c$tk@3h#1^aguWy69U=ROyV!Gtdy33V7P68ZcN3}4 z$f6Xd3icXVjT$teDb4VEB(gnjGExSSGKjRt$UeB4$bJlF2p{kfpYSQu`IZHI$0B~? zcUJHR8*vMfo7u`C4s(QKT;ehjM3F)&*SQ&l{%+Y;AW%V;%x>nkdHB6)CfMq%|uOQ8ecLWGe?;@Y9YU3<|s2qtz-jc zjxuwU`;R(^S)=~LPNPn97W<5{%cyIZIm*0I=8evT*`o7fzUV@jExG~~sf^j88_hVnUPx-tfHU73lucx5(byRrmt@yhr7$e(zNSIl>1HQO=cm7SRL%5l8K zEB1E9-mYB18@!T$`L3jJJqTmW788<&bmS%vdC5m<%21Z_)S)gmE@mpz_=4%U$rv{oV{b8w_>JFL!5?hIO~!0yD~Iq7V~%i) zOI#*`C{pkaWBz}>n?V?Bwpi~lHXRu-TkI2@eX6n7h4gt#k$d0_Zi!a=Cq^> z{df)Y#lFE%%ozIt=8PT3cqTB3Ieg7rzTrof@e|8g%^KFS4!eup!(R4dcd=(Ui(8Go zN<8)$>sDj$^MHrA)wpbACkJjdt{BBBfm@BMP7P|}R^y(+d~q#k#f!W|M>^9Nv&Oy2 z00uIM5!h$kXN+PR_8IpjGg!bPmSW~O^TwGsZUbhE^A6+oa}cw|o#Q+gNg$DHB=e9* zJPyLEAvws69bUD+tA!{+MJiF5sx+h#jcLmBc!yWp(Se@4LNEF-karoxdwj;{jKw~$ zPGSmndDZWltKTpmvt9j}<^0N8{$(8-*o%3u?&lz9G4Iv$nD=S|=Dm6i^Im<3d9Ru` z-n{WS$Vo1|&G-_Oq!eYSNiFO%zAi0z8t*dR%<=8$fO-8L+F^Vz%o{%t^TrRtyz!qg zl2MH2OQth}SuDg(;}>JE@hka*Rs6*kwz3Vsi{g*sea8QX-$n6}L=jC4H@L|y?gU{% zdNPoa%;d*@6ADt83fOUi9Vb+w0d|~V#|ce%4)Z41aYB1u#>@$3PUy`$m^s1B34{3* zGbfli!JZSoz|09|PMFDem^s1B2}@XknG?*M@F$xwbAp)@wsQnCCzv_mI1!jR!ORI) zxQ>|<%$#sL2ouv`=0r0mW+ESEPBe33A zByf%UJm4XZgYa55vXg^c6r(sLC`EN@P?Op`MRQuviWhl_j&!Ck{dkT348gqDhB2J6 znE9HSuTA7D%zVwv*XHp9X1-?TYd`Z3X1-?TYyYwfGhZ|FwSAnz%-76(?HqBK`I?!p zC2|ilUo-QyM?sjB6*DK9IVmSaF>{iclS)zzGbfojsTR#JbCQ{pTJi#BPBL>+Ctk(O zNoMx0mfpO> zK;C6ApYj^RkqQy23)cARR*sjG0mspd_! zLwU zd4*o|!ED#v@AW~v$7k5-^-mAK#Q=DYqEX1i{m*Ufi* z2ljd0F0cE&blrT{&vOy8T~Fj1$vor{kAv|4TDt2nt;#N5z?b~@0|w` zWF;HfiKH+^C`xh4BIASd$oZf)_3(~9FwY0gXhAQAGK}H8#v~>)g=x%TF7sHx3RYof zAFO3P8`;BN_HlqyoaPK?k?p}PZgYp<`GY_Cnd(myWJA^j?`c9_@>7s!c$ViVMRjWM z0x!}O^Gs+?OJ1fM-Ra2?hBAy1Ok@(1naT&4ae^5q%;!_gIAJB`oUoZKY-JmVvAYS! zkvZWsvB;YsZ^A9U=Qrd{_yc(p9wYC=0C^u~!;By1ASXpIu$4!>!2s z@GwU>%C}tLBA1Bc9zXIE{~?|P9+DJ9B&H=D>B&eG=Id`2L?jlVBxamw#);44_mRI_ z5Rquci8X1087G=?Vhg%r#))Q}*n`2yn`p*~!V~{YgON9BDDoyvK;9&IljKdBjl4d_FHljTj8H(B0fd6VT$?t#3?@+QlhJREubO@)Z$ zNlZcBWOFZ?e3} zb~@QkCnp9GDQPg@6g!=gfjpRTiW#TmCk8W4G2@iysEQelwpiV<`kJzCi6Zrr^uW#myeM-MdlRmaLQN6oFa3Iy-qoZ%qcRb9OWD` zr^uY*9ZvZHnNws=@eZf_51IW32S7tBY;jYK0IU7Vg=|CU)^D1Wd zM2;sTn85;^`(!E0k>!aTPquS}f6utUWv+6A+x);E{Eb;WF^eb3sQby2K-CnWCS91! zCv4{kr-Dh;FybkiGLkRZ#%}g;kZ(B7NltT{_#g~Ja*&HC@>7T+ z6sH80s6sVr@FKOSOMM#Bmv>mp8Pt_3GtW>NpH1}wFHwhj4B!pMF_9@u=RIaKmjx{1 z0DlEx>PYk~bxG8cS}m#FpSm5+OFfX$jAs&4nZZnE;oQ{A`IHAin8pm!q$LCDO`{iS za-kP#^6?y1aYvdaG^Z79=|E>*W)MRd#t7bE6l0Mu%>>@%1Lm=irKly1TGFhZ z(8ml*abAW^?Bg(Inc+C6iA4`HI5&el8GZ`FjMb4Pqh4f`BV!vn(uHpHU<78D(H$A* zFrP&%;Uhj_C1#g#E8Ez?ZuX*o8Rg4ph8fRtfy-P)u8g;WFjE9s$xU9oTmGg&n8_S7 znPVn%%w&$4%2JI6bmnFH@fvTTubCF27n#g1lbz1=IjdQV9m}+b{pfWjz0RaJne--8 zQV?b~oTsTlBbs7|GPkB39T>=H%q8;--bL>+>s@BO%dB^qKjRD5 zu#S!BUuONwtbdu+lliY8%%Ue*>}{5|I5&%Pvy8_sWwA?HobPW8gjt-Q?#MBlxh!BYb}Ywo>{yPk*o^t**v3wFvk&=l9O4WYu=_c#atpQO__vmyf-usI zB1=$#>eQqbbx~ua8Y9&hX%`~Z8EICLgP6z^>_McuBG_uPfOwNG}LGN&TEobg%%F+OR&fS}SynY(~vH7 zL(lW*cb?Z6$(z{QJd>~+dFF5r_vCR;9{1$Y&nR<^D#>#=J4*Jbn$*Iaqx2!FF-$xKJL)ReQBU3|Dk4|j zu{bxcbMvl5AM@&CUgzg^eqQJ2-Nvs$n9mIJ6-SnQvgDH`Uj-^t4Lg#rIei$8zT}(A zTfD=2%w{fTm+v#&mv1#|SkFc_9OxfQ(0ZGOOx z6}*pp1^-JTDLf9sLJ`PSC@s%mHihh3A-h({t`)Lth0Lf>E85b5PT0FbLz%*K-e)Nr z(APry(2GLfaGcZFG2ho87P4c7?xNR)^tzB<7kUtc(cbgu7@nmRWiZ2NbwsNpx-m^@ zLwnQ_ZN9#-2QjwRUJcT-o=vR^I=vNW_Dx%IJ^_j;qycb2j!hRO9pGCH#t|AA} zn<9Es;Vv$rqttF1)?h<-b!fZ;M`sZ_`3v(ZVV6rJ^G^`Q z=v#~)#n_{m3}hx7?u^Ne-o+Fk8a<5B!x%k`G3yw!j?wcNSz~04ku^rv7+GUvjgd8` z5oRCLg4VR7BXY-dqbD-Q^ygLVLd-B;VZ~V#sNFa$vJPE?* zLeh|)Ok^boxrib^g(yOCO7INNQ-<_?Q)}Vl`{oz$Uh`on7qZ0EhX8ksYxyB(tyS^ zqa|%vRnXBC3Hb3wq|KY#<&R;y>A<6s`grx#fk(LZ(CL59DCNBkurYKJl z!?Tp4EET9sHD2H)>QJ9XG^GWtX-7x8(2bt-p+B!Om|?ueNX9UZiA-TSZ}S2AS!yeL z(VtR!P)hbvcSs4s(y5WFw0cXcvvhgPvve=qS^9kz@gaIzS}#kVCou@iM4&Ha>`ECs zQbwLK!!hGB>M3J}Wz4S3O59z>=gWMD9+%PEGLM3=tiF`hkFqZ^3VTsjhO%4O!#-|t zpPz%UTspE7iO-a4NMrP++-tnSGFI^gC%K5+F^eIxDNQNQYkxx^tlEQK$Wire-oZIlom160Rc|9lRXwPd5oc8ME>)AET7As5T5t5M+7M)^ zCQCJ0syU)8SUwa8eaMkHM|td6|Mzg zt>Va3%Wl;g#U!R6S1q|}$yGZSg(%Fc$Y1*nytB2B;r=@2Q^&5Vm6C0<9e65jXu_QUwyk-{~7E-eHrSH z!F~1BUtj$VA~BN&GBoIcUN;!X2DYO{-&-CwOhY=<-%$Mx)!%R(U*oxkNkP~s#P5kl zb!bX+X0Z_UHPX{Yclj|08{3!06{v(AZ)^sQ=i=v$bT1GP85AB4X9H*8Uz7Z}f5%s@|DsH?@*AZ(eBVmyV~TB@z3+FGu~{pux&+TZu=6`d7lrEq3sXc3&M6~sYVT))ov=D zZFd&WwYwgK?aiS5^OU9^?ruMveSFLDAnXuD5%i^led}P~It*kJyV!$SbkLU$X3^2? zJJzNy_N1e_e79!U(L3GIogHtI5`>*nqmP}Q#{Het+o=T|>CBrfD?TbV63&wHf-Z&9L(!PGAQ+tFenayO>=UJ?v5wJ?t`sQH)_ZU+^V* z)x~{X)ZNuAyJpAx*R?z~@cFJi@ose;#K){gy~3b= zUuPssSjj4UuKNWp1!0d=WF{-ss6##UrNT?J~L5kA36JY@A|~?JwF6t z-<%Xg?S1v7Z*y8Q8K3L>9-HyGzI(aKzn{Aog#FTCfBM;4_RoR)`&Z&cYN2oa`=W3C-)9jYVm|%NwZDDnZ}$cSgcRdB@Do%!BoM@CWGeU}p?Y4#FY!aY!0k zpvEDd9kL5`4LKTwLo*=H&|LWZP(2$ujD38I`-kPBF#0=eFlrn&8lN9_n%E#5t{1~) z8m^zi&1<-M4PS_U4^KobBdSxE`q+gLpRj_T@Z1PBzdv)vYmb8P z^?K;p>n-u~*X`u%>u}E-5y<>TJG#+>&Fsd`kCb<$yd&iu`7-?&fV)OIYoxnIn)k>< z9Ko5RoH@#wqiWIs^^KB$)MTde6+Sb{9i!~Ws6Y8T2uBy=IZC0H(fxS^ca3(}Xm^c1 z%T=xi;TW}zQQH``jj4?ujIm#1yn|!LGLA2B-x!(3oaf)q-3-F9>Bx@HkFCH9cn`<+ z#=9`qT*oe8Ir={KAm4G4|DmsA9|z%^g)zf7pGA+~>_8{n{pNJuW;L7G!ewrACkV%t zp(^G)PQBywW}MHA)5meA@Vj!nK90{!R_x^Xj&x=jtB`N}HSY3b5KefS(v;;j)G=WK zW;x*-j$t<@BqPH_HB3~)L^Vv*w~6YQ=ra>NKhg6OJwGvlCqX#LTqjkd4t8pic}|+i zd+g&|jtAl7^yDBX4QWLiW@DCB+my$9p_=YJKMwM({e@Ie;F_j36U+Xl4`IBGXK}JyZUf zpWv*SKX5My->t-p)M7Mx`L4Zu_d5Un{HGv%uP)7Kfx6#Y%o0v>8FQVb-?NHP3^mOf zkJ-#Jzgc=VOTXVQ&hwPU&) z7u)~E$2g05eCYSUhgGT04CXM8Tioa8AY4+GYSh3SmUwQ-OuWlW)Z)7(!=?6dX$eYV zCzsmErD|Gg4ol@;dN>G|g=9j$Wv!5XnYxzE=OaGm4!`hg5PoDoe3xYSk-I+{%T%WG zE$;s4To5kLPCg3I0kd7M_sdta3H@9i&*LEcIN$~9(~vnVVHx)O<3I2oeo~L-v}7rE zn&efsoIl1K@{6`on)nH8Q{@hNMtFDpE=!ZRy8v+_mM zva&JGS?QdW&iTwepJl|JeAbJB4CVmGIT3`b{Ct&tTV>x?b-~WA>c<|AqEDau`R4_R zW;kOR$G<<*!_W2bi>ySE59fU0oG+a7#VR)NRS>S$yVV&mzt!qkZP!+h#tyB%&dnhF zvMkl8!5o&b4E_I7|JOKUO&hx6JzV4bHO^n-{51)957)}QwmNk&r?r!Khj+QfeSQwY zb>_Iv&)4bQI=x+|x9jwFoio;_M{m~a+xmg1cl}yuLbt9&Ad7K5lx6 zMl@k2^H_jA-1GP%UlVI%w)@0WZ1F~_ivSB zt3B9iPqv!vR{hxO*{$2y&%q%4Iv39Rx-f4rfk~+SYdiAwg&^FP4ZYizAN|;-Z`+38 zjBWb5?Ykh{o(E@a*Wc~0@*2+DZXdU+dwXmU?r_cy=j?FKjvlfEQ!ed^q|f$i)hDG2w6cy50^ zn$r?9-|wFN%eldi+z&$EEf^jsOtc(5Whd5MusWHOuC zjom-^2XY)t4#GqB>QHs;)gd!HV;CF{_SBc4Cv`6He`>iMIdKkE6ToJ?nui4Iz zL3lbBcI0#e?DFYmv_Q7g?mX?j)B1GU3{LyZ=>weN92dBZexH`@wE9o~fDES}2jQ8V z6rm`^c#3k^uQM-Ehx#<4DIJjY%*(j{jQh{H|I7gN>CCr02*TLns57=d<9LUeyvr;W zV&<`W5bGU^l{;4MSh-_mh~3E{&LBgq46*hmR)$y^V(+3ivA^NIvso!XLCp1RVVw2;#PAHyQJMvq-MKAnL(S** zuphOb^VxI%e)a^{QTw?&+~YpKp#F1z@;~B(@Vwuz=jAx>{PSu&-w|^?KOVh1Kc7V` zVHxf|@6Pk?Jnzo)N4Q3E5c&?p@IrQSVCOI7q9|s3L6!^8V$Uy>p*BruPAl5dp6>L) zK3|x`WTr5UIjmq6t69qiHlc?X%<;l5PH>vDT)-?ZnB|2V+~x=L`M`(CLI~j=Sxqa7nh!; z6n5m2zF%sBeZQoJOI;YmP)6_uqj{4F=*cDhxMUwLc?T{nWjUYn8EU(%PUi`R>YC+<}Sqvkk!6K8I5YLBx&aZ{Pj=iCg!D{09|ehN{TVz~Fp^VrQR<*A5!t~mF~ zNc7>#+stGhvR|0K0T;IqJIZ zv)4PLH`mSe`XZLFl6AQIy1TC*AKlom*={jzy2FCTz?XTH$t+ZmK$ohQ4({! zA=`~|=;sX?Z&aryt!P7gI?{!1^rR2{d4++DWEN(4V<)lb=Z)Wk@TQ*J)PtMu^L?A) zO})GMCU0R*H|^(5bGo^LRhZXJ^SWtXH@CBkz3eBBzk~2r7VO+DJ-gMMmUN;Az3GSA zZmI3oXeKfRy}UJp+04cJd22EHdh0NM2H|aeza5R<+%~V<=5^b=ZkyNbI@G5TO>y__ zcIeA(ciw#i_uZY0JMJ#zBi10xU0LqRa`yo4yZa5txrDjhz0NJn&v#3PcklCa5Z=p5 r1>AE_{rBde=6fso9B14+$NAv@{*yZVfB&ty@&Enz|NlF@ck%xKo6*oY diff --git a/ios/Ascently/Services/SyncService.swift b/ios/Ascently/Services/SyncService.swift index 617d356..07e416c 100644 --- a/ios/Ascently/Services/SyncService.swift +++ b/ios/Ascently/Services/SyncService.swift @@ -266,9 +266,25 @@ class SyncService: ObservableObject { { let formatter = ISO8601DateFormatter() + // Merge and apply deletions first to prevent resurrection + let allDeletions = dataManager.getDeletedItems() + response.deletedItems + let uniqueDeletions = Array(Set(allDeletions)) + + print( + "iOS DELTA SYNC: Applying \(uniqueDeletions.count) deletion records before merging data" + ) + applyDeletionsToDataManager(deletions: uniqueDeletions, dataManager: dataManager) + + // Build deleted item lookup map + let deletedItemSet = Set(uniqueDeletions.map { $0.type + ":" + $0.id }) + // Download images for new/modified problems from server var imagePathMapping: [String: String] = [:] for problem in response.problems { + if deletedItemSet.contains("problem:" + problem.id) { + continue + } + guard let imagePaths = problem.imagePaths, !imagePaths.isEmpty else { continue } for (index, imagePath) in imagePaths.enumerated() { @@ -293,6 +309,10 @@ class SyncService: ObservableObject { // Merge gyms for backupGym in response.gyms { + if deletedItemSet.contains("gym:" + backupGym.id) { + continue + } + if let index = dataManager.gyms.firstIndex(where: { $0.id.uuidString == backupGym.id }) { let existing = dataManager.gyms[index] @@ -306,6 +326,10 @@ class SyncService: ObservableObject { // Merge problems for backupProblem in response.problems { + if deletedItemSet.contains("problem:" + backupProblem.id) { + continue + } + var problemToMerge = backupProblem if !imagePathMapping.isEmpty, let imagePaths = backupProblem.imagePaths { let updatedPaths = imagePaths.compactMap { imagePathMapping[$0] ?? $0 } @@ -341,6 +365,10 @@ class SyncService: ObservableObject { // Merge sessions for backupSession in response.sessions { + if deletedItemSet.contains("session:" + backupSession.id) { + continue + } + if let index = dataManager.sessions.firstIndex(where: { $0.id.uuidString == backupSession.id }) { @@ -355,6 +383,10 @@ class SyncService: ObservableObject { // Merge attempts for backupAttempt in response.attempts { + if deletedItemSet.contains("attempt:" + backupAttempt.id) { + continue + } + if let index = dataManager.attempts.firstIndex(where: { $0.id.uuidString == backupAttempt.id }) { @@ -367,9 +399,7 @@ class SyncService: ObservableObject { } } - // Apply deletions - let allDeletions = dataManager.getDeletedItems() + response.deletedItems - let uniqueDeletions = Array(Set(allDeletions)) + // Apply deletions again for safety applyDeletionsToDataManager(deletions: uniqueDeletions, dataManager: dataManager) // Save all changes diff --git a/sync/main.go b/sync/main.go index 6872fa8..40632b7 100644 --- a/sync/main.go +++ b/sync/main.go @@ -13,7 +13,7 @@ import ( "time" ) -const VERSION = "2.1.0" +const VERSION = "2.2.0" func min(a, b int) int { if a < b { @@ -283,8 +283,16 @@ func (s *SyncServer) mergeDeletedItems(existing []DeletedItem, updates []Deleted } } + // Clean up tombstones older than 30 days to prevent unbounded growth + cutoffTime := time.Now().UTC().Add(-30 * 24 * time.Hour) result := make([]DeletedItem, 0, len(deletedMap)) for _, item := range deletedMap { + deletedTime, err := time.Parse(time.RFC3339, item.DeletedAt) + if err == nil && deletedTime.Before(cutoffTime) { + log.Printf("Cleaning up old deletion record: type=%s, id=%s, deletedAt=%s", + item.Type, item.ID, item.DeletedAt) + continue + } result = append(result, item) } return result @@ -533,15 +541,16 @@ func (s *SyncServer) handleDeltaSync(w http.ResponseWriter, r *http.Request) { return } + // Merge and apply deletions first to prevent resurrection + serverBackup.DeletedItems = s.mergeDeletedItems(serverBackup.DeletedItems, deltaRequest.DeletedItems) + s.applyDeletions(serverBackup, serverBackup.DeletedItems) + log.Printf("Applied deletions: total=%d deletion records", len(serverBackup.DeletedItems)) + // Merge client changes into server data serverBackup.Gyms = s.mergeGyms(serverBackup.Gyms, deltaRequest.Gyms) serverBackup.Problems = s.mergeProblems(serverBackup.Problems, deltaRequest.Problems) serverBackup.Sessions = s.mergeSessions(serverBackup.Sessions, deltaRequest.Sessions) serverBackup.Attempts = s.mergeAttempts(serverBackup.Attempts, deltaRequest.Attempts) - serverBackup.DeletedItems = s.mergeDeletedItems(serverBackup.DeletedItems, deltaRequest.DeletedItems) - - // Apply deletions to remove deleted items - s.applyDeletions(serverBackup, serverBackup.DeletedItems) // Save merged data if err := s.saveData(serverBackup); err != nil { @@ -553,8 +562,15 @@ func (s *SyncServer) handleDeltaSync(w http.ResponseWriter, r *http.Request) { // Parse client's last sync time clientLastSync, err := time.Parse(time.RFC3339, deltaRequest.LastSyncTime) if err != nil { - // If parsing fails, send everything clientLastSync = time.Time{} + log.Printf("Warning: Could not parse lastSyncTime '%s', sending all data", deltaRequest.LastSyncTime) + } + + // Build deleted item lookup map + deletedItemMap := make(map[string]bool) + for _, item := range serverBackup.DeletedItems { + key := item.Type + ":" + item.ID + deletedItemMap[key] = true } // Prepare response with items modified since client's last sync @@ -569,6 +585,9 @@ func (s *SyncServer) handleDeltaSync(w http.ResponseWriter, r *http.Request) { // Filter gyms modified after client's last sync for _, gym := range serverBackup.Gyms { + if deletedItemMap["gym:"+gym.ID] { + continue + } gymTime, err := time.Parse(time.RFC3339, gym.UpdatedAt) if err == nil && gymTime.After(clientLastSync) { response.Gyms = append(response.Gyms, gym) @@ -577,6 +596,9 @@ func (s *SyncServer) handleDeltaSync(w http.ResponseWriter, r *http.Request) { // Filter problems modified after client's last sync for _, problem := range serverBackup.Problems { + if deletedItemMap["problem:"+problem.ID] { + continue + } problemTime, err := time.Parse(time.RFC3339, problem.UpdatedAt) if err == nil && problemTime.After(clientLastSync) { response.Problems = append(response.Problems, problem) @@ -585,6 +607,9 @@ func (s *SyncServer) handleDeltaSync(w http.ResponseWriter, r *http.Request) { // Filter sessions modified after client's last sync for _, session := range serverBackup.Sessions { + if deletedItemMap["session:"+session.ID] { + continue + } sessionTime, err := time.Parse(time.RFC3339, session.UpdatedAt) if err == nil && sessionTime.After(clientLastSync) { response.Sessions = append(response.Sessions, session) @@ -593,6 +618,9 @@ func (s *SyncServer) handleDeltaSync(w http.ResponseWriter, r *http.Request) { // Filter attempts created after client's last sync for _, attempt := range serverBackup.Attempts { + if deletedItemMap["attempt:"+attempt.ID] { + continue + } attemptTime, err := time.Parse(time.RFC3339, attempt.CreatedAt) if err == nil && attemptTime.After(clientLastSync) { response.Attempts = append(response.Attempts, attempt) diff --git a/sync/sync_test.go b/sync/sync_test.go new file mode 100644 index 0000000..f0b0161 --- /dev/null +++ b/sync/sync_test.go @@ -0,0 +1,501 @@ +package main + +import ( + "path/filepath" + "testing" + "time" +) + +// TestDeltaSyncDeletedItemResurrection verifies deleted items don't resurrect +func TestDeltaSyncDeletedItemResurrection(t *testing.T) { + tempDir := t.TempDir() + server := &SyncServer{ + dataFile: filepath.Join(tempDir, "test.json"), + imagesDir: filepath.Join(tempDir, "images"), + authToken: "test-token", + } + + // Initial state: Server has one gym, one problem, one session with 8 attempts + now := time.Now().UTC() + gymID := "gym-1" + problemID := "problem-1" + sessionID := "session-1" + + initialBackup := &ClimbDataBackup{ + Version: "2.0", + FormatVersion: "2.0", + Gyms: []BackupGym{ + { + ID: gymID, + Name: "Test Gym", + SupportedClimbTypes: []string{"BOULDER"}, + DifficultySystems: []string{"V"}, + CreatedAt: now.Add(-1 * time.Hour).Format(time.RFC3339), + UpdatedAt: now.Add(-1 * time.Hour).Format(time.RFC3339), + }, + }, + Problems: []BackupProblem{ + { + ID: problemID, + GymID: gymID, + ClimbType: "BOULDER", + Difficulty: DifficultyGrade{ + System: "V", + Grade: "V5", + NumericValue: 5, + }, + IsActive: true, + CreatedAt: now.Add(-1 * time.Hour).Format(time.RFC3339), + UpdatedAt: now.Add(-1 * time.Hour).Format(time.RFC3339), + }, + }, + Sessions: []BackupClimbSession{ + { + ID: sessionID, + GymID: gymID, + Date: now.Format("2006-01-02"), + Status: "completed", + CreatedAt: now.Add(-30 * time.Minute).Format(time.RFC3339), + UpdatedAt: now.Add(-30 * time.Minute).Format(time.RFC3339), + }, + }, + Attempts: []BackupAttempt{}, + DeletedItems: []DeletedItem{}, + } + + // Add 8 attempts + for i := 0; i < 8; i++ { + attempt := BackupAttempt{ + ID: "attempt-" + string(rune('1'+i)), + SessionID: sessionID, + ProblemID: problemID, + Result: "COMPLETED", + Timestamp: now.Add(time.Duration(-25+i) * time.Minute).Format(time.RFC3339), + CreatedAt: now.Add(time.Duration(-25+i) * time.Minute).Format(time.RFC3339), + } + initialBackup.Attempts = append(initialBackup.Attempts, attempt) + } + + if err := server.saveData(initialBackup); err != nil { + t.Fatalf("Failed to save initial data: %v", err) + } + + // Client 1 syncs - gets all data + client1LastSync := now.Add(-2 * time.Hour).Format(time.RFC3339) + deltaRequest1 := DeltaSyncRequest{ + LastSyncTime: client1LastSync, + Gyms: []BackupGym{}, + Problems: []BackupProblem{}, + Sessions: []BackupClimbSession{}, + Attempts: []BackupAttempt{}, + DeletedItems: []DeletedItem{}, + } + + // Simulate delta sync for client 1 + serverBackup, _ := server.loadData() + serverBackup.DeletedItems = server.mergeDeletedItems(serverBackup.DeletedItems, deltaRequest1.DeletedItems) + server.applyDeletions(serverBackup, serverBackup.DeletedItems) + + if len(serverBackup.Sessions) != 1 { + t.Errorf("Expected 1 session after client1 sync, got %d", len(serverBackup.Sessions)) + } + if len(serverBackup.Attempts) != 8 { + t.Errorf("Expected 8 attempts after client1 sync, got %d", len(serverBackup.Attempts)) + } + + // Client 1 deletes the session locally + deleteTime := now.Format(time.RFC3339) + deletions := []DeletedItem{ + {ID: sessionID, Type: "session", DeletedAt: deleteTime}, + } + // Also track attempt deletions + for _, attempt := range initialBackup.Attempts { + deletions = append(deletions, DeletedItem{ + ID: attempt.ID, + Type: "attempt", + DeletedAt: deleteTime, + }) + } + + // Client 1 syncs deletion + deltaRequest2 := DeltaSyncRequest{ + LastSyncTime: now.Add(-5 * time.Minute).Format(time.RFC3339), + Gyms: []BackupGym{}, + Problems: []BackupProblem{}, + Sessions: []BackupClimbSession{}, + Attempts: []BackupAttempt{}, + DeletedItems: deletions, + } + + // Server processes deletion + serverBackup, _ = server.loadData() + serverBackup.DeletedItems = server.mergeDeletedItems(serverBackup.DeletedItems, deltaRequest2.DeletedItems) + server.applyDeletions(serverBackup, serverBackup.DeletedItems) + server.saveData(serverBackup) + + // Verify deletions were applied on server + serverBackup, _ = server.loadData() + if len(serverBackup.Sessions) != 0 { + t.Errorf("Expected 0 sessions after deletion, got %d", len(serverBackup.Sessions)) + } + if len(serverBackup.Attempts) != 0 { + t.Errorf("Expected 0 attempts after deletion, got %d", len(serverBackup.Attempts)) + } + if len(serverBackup.DeletedItems) != 9 { + t.Errorf("Expected 9 deletion records, got %d", len(serverBackup.DeletedItems)) + } + + // Client does local reset and pulls from server + deltaRequest3 := DeltaSyncRequest{ + LastSyncTime: time.Time{}.Format(time.RFC3339), + Gyms: []BackupGym{}, + Problems: []BackupProblem{}, + Sessions: []BackupClimbSession{}, + Attempts: []BackupAttempt{}, + DeletedItems: []DeletedItem{}, + } + + serverBackup, _ = server.loadData() + clientLastSync, _ := time.Parse(time.RFC3339, deltaRequest3.LastSyncTime) + + // Build response + response := DeltaSyncResponse{ + ServerTime: time.Now().UTC().Format(time.RFC3339), + Gyms: []BackupGym{}, + Problems: []BackupProblem{}, + Sessions: []BackupClimbSession{}, + Attempts: []BackupAttempt{}, + DeletedItems: []DeletedItem{}, + } + + // Build deleted item map + deletedItemMap := make(map[string]bool) + for _, item := range serverBackup.DeletedItems { + key := item.Type + ":" + item.ID + deletedItemMap[key] = true + } + + // Filter sessions (excluding deleted) + for _, session := range serverBackup.Sessions { + if deletedItemMap["session:"+session.ID] { + continue + } + sessionTime, _ := time.Parse(time.RFC3339, session.UpdatedAt) + if sessionTime.After(clientLastSync) { + response.Sessions = append(response.Sessions, session) + } + } + + // Filter attempts (excluding deleted) + for _, attempt := range serverBackup.Attempts { + if deletedItemMap["attempt:"+attempt.ID] { + continue + } + attemptTime, _ := time.Parse(time.RFC3339, attempt.CreatedAt) + if attemptTime.After(clientLastSync) { + response.Attempts = append(response.Attempts, attempt) + } + } + + // Send deletion records + for _, deletion := range serverBackup.DeletedItems { + deletionTime, _ := time.Parse(time.RFC3339, deletion.DeletedAt) + if deletionTime.After(clientLastSync) { + response.DeletedItems = append(response.DeletedItems, deletion) + } + } + + if len(response.Sessions) != 0 { + t.Errorf("Deleted session was resurrected! Got %d sessions in response", len(response.Sessions)) + } + if len(response.Attempts) != 0 { + t.Errorf("Deleted attempts were resurrected! Got %d attempts in response", len(response.Attempts)) + } + if len(response.DeletedItems) < 9 { + t.Errorf("Expected at least 9 deletion records in response, got %d", len(response.DeletedItems)) + } +} + +// TestDeltaSyncAttemptCount verifies all attempts are preserved +func TestDeltaSyncAttemptCount(t *testing.T) { + tempDir := t.TempDir() + server := &SyncServer{ + dataFile: filepath.Join(tempDir, "test.json"), + imagesDir: filepath.Join(tempDir, "images"), + authToken: "test-token", + } + + now := time.Now().UTC() + gymID := "gym-1" + problemID := "problem-1" + sessionID := "session-1" + + // Create session with 8 attempts + initialBackup := &ClimbDataBackup{ + Version: "2.0", + FormatVersion: "2.0", + Gyms: []BackupGym{{ID: gymID, Name: "Test Gym", SupportedClimbTypes: []string{"BOULDER"}, DifficultySystems: []string{"V"}, CreatedAt: now.Format(time.RFC3339), UpdatedAt: now.Format(time.RFC3339)}}, + Problems: []BackupProblem{{ID: problemID, GymID: gymID, ClimbType: "BOULDER", Difficulty: DifficultyGrade{System: "V", Grade: "V5", NumericValue: 5}, IsActive: true, CreatedAt: now.Format(time.RFC3339), UpdatedAt: now.Format(time.RFC3339)}}, + Sessions: []BackupClimbSession{{ID: sessionID, GymID: gymID, Date: now.Format("2006-01-02"), Status: "completed", CreatedAt: now.Format(time.RFC3339), UpdatedAt: now.Format(time.RFC3339)}}, + Attempts: []BackupAttempt{}, + DeletedItems: []DeletedItem{}, + } + + // Add 8 attempts at different times + baseTime := now.Add(-30 * time.Minute) + for i := 0; i < 8; i++ { + attempt := BackupAttempt{ + ID: "attempt-" + string(rune('1'+i)), + SessionID: sessionID, + ProblemID: problemID, + Result: "COMPLETED", + Timestamp: baseTime.Add(time.Duration(i) * time.Minute).Format(time.RFC3339), + CreatedAt: baseTime.Add(time.Duration(i) * time.Minute).Format(time.RFC3339), + } + initialBackup.Attempts = append(initialBackup.Attempts, attempt) + } + + if err := server.saveData(initialBackup); err != nil { + t.Fatalf("Failed to save initial data: %v", err) + } + + // Client syncs with lastSyncTime BEFORE all attempts were created + clientLastSync := baseTime.Add(-1 * time.Hour) + + serverBackup, _ := server.loadData() + + // Count attempts that should be returned + attemptCount := 0 + for _, attempt := range serverBackup.Attempts { + attemptTime, _ := time.Parse(time.RFC3339, attempt.CreatedAt) + if attemptTime.After(clientLastSync) { + attemptCount++ + } + } + + if attemptCount != 8 { + t.Errorf("Expected all 8 attempts to be returned, got %d", attemptCount) + } + +} + +// TestTombstoneCleanup verifies old deletion records are cleaned up +func TestTombstoneCleanup(t *testing.T) { + server := &SyncServer{} + + now := time.Now().UTC() + oldDeletion := DeletedItem{ + ID: "old-item", + Type: "session", + DeletedAt: now.Add(-31 * 24 * time.Hour).Format(time.RFC3339), // 31 days old + } + recentDeletion := DeletedItem{ + ID: "recent-item", + Type: "session", + DeletedAt: now.Add(-1 * 24 * time.Hour).Format(time.RFC3339), // 1 day old + } + + existing := []DeletedItem{oldDeletion} + updates := []DeletedItem{recentDeletion} + + merged := server.mergeDeletedItems(existing, updates) + + // Old deletion should be cleaned up, only recent one remains + if len(merged) != 1 { + t.Errorf("Expected 1 deletion record after cleanup, got %d", len(merged)) + } + if len(merged) > 0 && merged[0].ID != "recent-item" { + t.Errorf("Expected recent deletion to remain, got %s", merged[0].ID) + } + +} + +// TestMergeDeletedItemsDeduplication verifies duplicate deletions are handled +func TestMergeDeletedItemsDeduplication(t *testing.T) { + server := &SyncServer{} + + now := time.Now().UTC() + deletion1 := DeletedItem{ + ID: "item-1", + Type: "session", + DeletedAt: now.Add(-1 * time.Hour).Format(time.RFC3339), + } + deletion2 := DeletedItem{ + ID: "item-1", + Type: "session", + DeletedAt: now.Format(time.RFC3339), // Newer timestamp + } + + existing := []DeletedItem{deletion1} + updates := []DeletedItem{deletion2} + + merged := server.mergeDeletedItems(existing, updates) + + if len(merged) != 1 { + t.Errorf("Expected 1 deletion record, got %d", len(merged)) + } + if len(merged) > 0 && merged[0].DeletedAt != deletion2.DeletedAt { + t.Errorf("Expected newer deletion timestamp to be kept") + } + +} + +// TestApplyDeletions verifies deletions are applied correctly +func TestApplyDeletions(t *testing.T) { + server := &SyncServer{} + + now := time.Now().UTC() + backup := &ClimbDataBackup{ + Version: "2.0", + FormatVersion: "2.0", + Gyms: []BackupGym{{ID: "gym-1", Name: "Test Gym", SupportedClimbTypes: []string{}, DifficultySystems: []string{}, CreatedAt: now.Format(time.RFC3339), UpdatedAt: now.Format(time.RFC3339)}}, + Problems: []BackupProblem{{ID: "problem-1", GymID: "gym-1", ClimbType: "BOULDER", Difficulty: DifficultyGrade{System: "V", Grade: "V5", NumericValue: 5}, IsActive: true, CreatedAt: now.Format(time.RFC3339), UpdatedAt: now.Format(time.RFC3339)}}, + Sessions: []BackupClimbSession{{ID: "session-1", GymID: "gym-1", Date: now.Format("2006-01-02"), Status: "completed", CreatedAt: now.Format(time.RFC3339), UpdatedAt: now.Format(time.RFC3339)}}, + Attempts: []BackupAttempt{{ID: "attempt-1", SessionID: "session-1", ProblemID: "problem-1", Result: "COMPLETED", Timestamp: now.Format(time.RFC3339), CreatedAt: now.Format(time.RFC3339)}}, + DeletedItems: []DeletedItem{}, + } + + deletions := []DeletedItem{ + {ID: "session-1", Type: "session", DeletedAt: now.Format(time.RFC3339)}, + {ID: "attempt-1", Type: "attempt", DeletedAt: now.Format(time.RFC3339)}, + } + + server.applyDeletions(backup, deletions) + + if len(backup.Sessions) != 0 { + t.Errorf("Expected 0 sessions after deletion, got %d", len(backup.Sessions)) + } + if len(backup.Attempts) != 0 { + t.Errorf("Expected 0 attempts after deletion, got %d", len(backup.Attempts)) + } + if len(backup.Gyms) != 1 { + t.Errorf("Expected gym to remain, got %d gyms", len(backup.Gyms)) + } + if len(backup.Problems) != 1 { + t.Errorf("Expected problem to remain, got %d problems", len(backup.Problems)) + } + +} + +// TestCascadingDeletions verifies related items are handled properly +func TestCascadingDeletions(t *testing.T) { + server := &SyncServer{} + + now := time.Now().UTC() + sessionID := "session-1" + backup := &ClimbDataBackup{ + Version: "2.0", + FormatVersion: "2.0", + Gyms: []BackupGym{{ID: "gym-1", Name: "Test Gym", SupportedClimbTypes: []string{}, DifficultySystems: []string{}, CreatedAt: now.Format(time.RFC3339), UpdatedAt: now.Format(time.RFC3339)}}, + Problems: []BackupProblem{{ID: "problem-1", GymID: "gym-1", ClimbType: "BOULDER", Difficulty: DifficultyGrade{System: "V", Grade: "V5", NumericValue: 5}, IsActive: true, CreatedAt: now.Format(time.RFC3339), UpdatedAt: now.Format(time.RFC3339)}}, + Sessions: []BackupClimbSession{{ID: sessionID, GymID: "gym-1", Date: now.Format("2006-01-02"), Status: "completed", CreatedAt: now.Format(time.RFC3339), UpdatedAt: now.Format(time.RFC3339)}}, + Attempts: []BackupAttempt{}, + DeletedItems: []DeletedItem{}, + } + + // Add multiple attempts for the session + for i := 0; i < 5; i++ { + backup.Attempts = append(backup.Attempts, BackupAttempt{ + ID: "attempt-" + string(rune('1'+i)), + SessionID: sessionID, + ProblemID: "problem-1", + Result: "COMPLETED", + Timestamp: now.Format(time.RFC3339), + CreatedAt: now.Format(time.RFC3339), + }) + } + + // Delete session - attempts should also be tracked as deleted + deletions := []DeletedItem{ + {ID: sessionID, Type: "session", DeletedAt: now.Format(time.RFC3339)}, + } + for _, attempt := range backup.Attempts { + deletions = append(deletions, DeletedItem{ + ID: attempt.ID, + Type: "attempt", + DeletedAt: now.Format(time.RFC3339), + }) + } + + server.applyDeletions(backup, deletions) + + if len(backup.Sessions) != 0 { + t.Errorf("Expected session to be deleted, got %d sessions", len(backup.Sessions)) + } + if len(backup.Attempts) != 0 { + t.Errorf("Expected all attempts to be deleted, got %d attempts", len(backup.Attempts)) + } + +} + +// TestFullSyncAfterReset verifies the reported user scenario +func TestFullSyncAfterReset(t *testing.T) { + tempDir := t.TempDir() + server := &SyncServer{ + dataFile: filepath.Join(tempDir, "test.json"), + imagesDir: filepath.Join(tempDir, "images"), + authToken: "test-token", + } + + now := time.Now().UTC() + + // Initial sync with data + initialData := &ClimbDataBackup{ + Version: "2.0", + FormatVersion: "2.0", + Gyms: []BackupGym{{ID: "gym-1", Name: "Test Gym", SupportedClimbTypes: []string{"BOULDER"}, DifficultySystems: []string{"V"}, CreatedAt: now.Format(time.RFC3339), UpdatedAt: now.Format(time.RFC3339)}}, + Problems: []BackupProblem{{ID: "problem-1", GymID: "gym-1", ClimbType: "BOULDER", Difficulty: DifficultyGrade{System: "V", Grade: "V5", NumericValue: 5}, IsActive: true, CreatedAt: now.Format(time.RFC3339), UpdatedAt: now.Format(time.RFC3339)}}, + Sessions: []BackupClimbSession{{ID: "session-1", GymID: "gym-1", Date: now.Format("2006-01-02"), Status: "completed", CreatedAt: now.Format(time.RFC3339), UpdatedAt: now.Format(time.RFC3339)}}, + Attempts: []BackupAttempt{}, + DeletedItems: []DeletedItem{}, + } + for i := 0; i < 8; i++ { + initialData.Attempts = append(initialData.Attempts, BackupAttempt{ + ID: "attempt-" + string(rune('1'+i)), + SessionID: "session-1", + ProblemID: "problem-1", + Result: "COMPLETED", + Timestamp: now.Add(time.Duration(i) * time.Minute).Format(time.RFC3339), + CreatedAt: now.Add(time.Duration(i) * time.Minute).Format(time.RFC3339), + }) + } + server.saveData(initialData) + + // Client deletes everything and syncs + deletions := []DeletedItem{ + {ID: "gym-1", Type: "gym", DeletedAt: now.Add(10 * time.Minute).Format(time.RFC3339)}, + {ID: "problem-1", Type: "problem", DeletedAt: now.Add(10 * time.Minute).Format(time.RFC3339)}, + {ID: "session-1", Type: "session", DeletedAt: now.Add(10 * time.Minute).Format(time.RFC3339)}, + } + for i := 0; i < 8; i++ { + deletions = append(deletions, DeletedItem{ + ID: "attempt-" + string(rune('1'+i)), + Type: "attempt", + DeletedAt: now.Add(10 * time.Minute).Format(time.RFC3339), + }) + } + + serverBackup, _ := server.loadData() + serverBackup.DeletedItems = server.mergeDeletedItems(serverBackup.DeletedItems, deletions) + server.applyDeletions(serverBackup, serverBackup.DeletedItems) + server.saveData(serverBackup) + + // Client does local reset and pulls from server + serverBackup, _ = server.loadData() + + if len(serverBackup.Gyms) != 0 { + t.Errorf("Expected 0 gyms, got %d", len(serverBackup.Gyms)) + } + if len(serverBackup.Problems) != 0 { + t.Errorf("Expected 0 problems, got %d", len(serverBackup.Problems)) + } + if len(serverBackup.Sessions) != 0 { + t.Errorf("Expected 0 sessions, got %d", len(serverBackup.Sessions)) + } + if len(serverBackup.Attempts) != 0 { + t.Errorf("Expected 0 attempts, got %d", len(serverBackup.Attempts)) + } + if len(serverBackup.DeletedItems) == 0 { + t.Errorf("Expected deletion records, got 0") + } +}