From 0d115f2c7f2c3293792379fb0d7677a16c2f740e Mon Sep 17 00:00:00 2001 From: Sattvik Chakravarthy Date: Mon, 2 Sep 2024 15:40:43 +0530 Subject: [PATCH 1/6] fix: slow query fix (#223) * fix: slow query fix * fix: version and changelog --- CHANGELOG.md | 4 ++++ build.gradle | 2 +- .../storage/postgresql/queries/GeneralQueries.java | 10 +++++++--- 3 files changed, 12 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5be1e95c..b21ce161 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,10 @@ to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [Unreleased] +## [7.1.2] - 2024-09-02 + +- Optimizes users count query + ## [7.1.1] - 2024-08-08 - Fixes tests that check for `Internal Error` in 500 status responses diff --git a/build.gradle b/build.gradle index 5d172564..8ea34db5 100644 --- a/build.gradle +++ b/build.gradle @@ -2,7 +2,7 @@ plugins { id 'java-library' } -version = "7.1.1" +version = "7.1.2" repositories { mavenCentral() diff --git a/src/main/java/io/supertokens/storage/postgresql/queries/GeneralQueries.java b/src/main/java/io/supertokens/storage/postgresql/queries/GeneralQueries.java index 1608d3df..fca3d223 100644 --- a/src/main/java/io/supertokens/storage/postgresql/queries/GeneralQueries.java +++ b/src/main/java/io/supertokens/storage/postgresql/queries/GeneralQueries.java @@ -705,8 +705,8 @@ public static void deleteKeyValue_Transaction(Start start, Connection con, Tenan public static long getUsersCount(Start start, AppIdentifier appIdentifier, RECIPE_ID[] includeRecipeIds) throws SQLException, StorageQueryException { StringBuilder QUERY = new StringBuilder( - "SELECT COUNT(DISTINCT primary_or_recipe_user_id) AS total FROM " + - getConfig(start).getUsersTable()); + "SELECT COUNT(*) AS total FROM ("); + QUERY.append("SELECT primary_or_recipe_user_id FROM " + getConfig(start).getUsersTable()); QUERY.append(" WHERE app_id = ?"); if (includeRecipeIds != null && includeRecipeIds.length > 0) { QUERY.append(" AND recipe_id IN ("); @@ -719,6 +719,7 @@ public static long getUsersCount(Start start, AppIdentifier appIdentifier, RECIP } QUERY.append(")"); } + QUERY.append(" GROUP BY primary_or_recipe_user_id) AS uniq_users"); return execute(start, QUERY.toString(), pst -> { pst.setString(1, appIdentifier.getAppId()); @@ -739,7 +740,8 @@ public static long getUsersCount(Start start, AppIdentifier appIdentifier, RECIP public static long getUsersCount(Start start, TenantIdentifier tenantIdentifier, RECIPE_ID[] includeRecipeIds) throws SQLException, StorageQueryException { StringBuilder QUERY = new StringBuilder( - "SELECT COUNT(DISTINCT primary_or_recipe_user_id) AS total FROM " + getConfig(start).getUsersTable()); + "SELECT COUNT(*) AS total FROM ("); + QUERY.append("SELECT primary_or_recipe_user_id FROM " + getConfig(start).getUsersTable()); QUERY.append(" WHERE app_id = ? AND tenant_id = ?"); if (includeRecipeIds != null && includeRecipeIds.length > 0) { QUERY.append(" AND recipe_id IN ("); @@ -753,6 +755,8 @@ public static long getUsersCount(Start start, TenantIdentifier tenantIdentifier, QUERY.append(")"); } + QUERY.append(" GROUP BY primary_or_recipe_user_id) AS uniq_users"); + return execute(start, QUERY.toString(), pst -> { pst.setString(1, tenantIdentifier.getAppId()); pst.setString(2, tenantIdentifier.getTenantId()); From b933a5457aa87bf8f805af26021478b2e634a1a2 Mon Sep 17 00:00:00 2001 From: Sattvik Chakravarthy Date: Mon, 2 Sep 2024 16:03:47 +0530 Subject: [PATCH 2/6] adding dev-v7.1.2 tag to this commit to ensure building --- ...-7.1.1.jar => postgresql-plugin-7.1.2.jar} | Bin 223821 -> 223871 bytes 1 file changed, 0 insertions(+), 0 deletions(-) rename jar/{postgresql-plugin-7.1.1.jar => postgresql-plugin-7.1.2.jar} (84%) diff --git a/jar/postgresql-plugin-7.1.1.jar b/jar/postgresql-plugin-7.1.2.jar similarity index 84% rename from jar/postgresql-plugin-7.1.1.jar rename to jar/postgresql-plugin-7.1.2.jar index 541e501b15eb568dc17265bdb70e1e5a97ba19a4..455df7bed67c60a8ab0a6cef9f48c1cfbd64ae52 100644 GIT binary patch delta 26989 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 G1NlFudTFHq delta 26809 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 From c9436ff0b63cc657aacc3371c9411694bb6722a3 Mon Sep 17 00:00:00 2001 From: Sattvik Chakravarthy Date: Wed, 4 Sep 2024 16:50:30 +0530 Subject: [PATCH 3/6] fix: index for MAU (#224) * fix: index for MAU * fix: feature flags --- CHANGELOG.md | 10 +++ build.gradle | 2 +- .../supertokens/storage/postgresql/Start.java | 9 +++ .../queries/ActiveUsersQueries.java | 23 +++++++ .../postgresql/queries/GeneralQueries.java | 2 + .../postgresql/test/OneMillionUsersTest.java | 69 ++++++++++++++++++- 6 files changed, 112 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b21ce161..30b7400d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,16 @@ to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [Unreleased] +## [7.1.3] - 2024-09-04 + +- Adds index on `last_active_time` for `user_last_active` table to improve the performance of MAU computation. + +### Migration + +```sql +CREATE INDEX IF NOT EXISTS user_last_active_last_active_time_index ON user_last_active (last_active_time DESC, app_id DESC); +``` + ## [7.1.2] - 2024-09-02 - Optimizes users count query diff --git a/build.gradle b/build.gradle index 8ea34db5..bab06c3e 100644 --- a/build.gradle +++ b/build.gradle @@ -2,7 +2,7 @@ plugins { id 'java-library' } -version = "7.1.2" +version = "7.1.3" repositories { mavenCentral() diff --git a/src/main/java/io/supertokens/storage/postgresql/Start.java b/src/main/java/io/supertokens/storage/postgresql/Start.java index a0eea865..aee997d4 100644 --- a/src/main/java/io/supertokens/storage/postgresql/Start.java +++ b/src/main/java/io/supertokens/storage/postgresql/Start.java @@ -1332,6 +1332,15 @@ public void updateLastActive(AppIdentifier appIdentifier, String userId) throws } } + @TestOnly + public void updateLastActive(AppIdentifier appIdentifier, String userId, long timestamp) throws StorageQueryException { + try { + ActiveUsersQueries.updateUserLastActive(this, appIdentifier, userId, timestamp); + } catch (SQLException e) { + throw new StorageQueryException(e); + } + } + @Override public int countUsersActiveSince(AppIdentifier appIdentifier, long time) throws StorageQueryException { try { diff --git a/src/main/java/io/supertokens/storage/postgresql/queries/ActiveUsersQueries.java b/src/main/java/io/supertokens/storage/postgresql/queries/ActiveUsersQueries.java index 327ed6ce..ccd589ac 100644 --- a/src/main/java/io/supertokens/storage/postgresql/queries/ActiveUsersQueries.java +++ b/src/main/java/io/supertokens/storage/postgresql/queries/ActiveUsersQueries.java @@ -9,6 +9,8 @@ import java.sql.Connection; import java.sql.SQLException; +import org.jetbrains.annotations.TestOnly; + import static io.supertokens.storage.postgresql.QueryExecutorTemplate.execute; import static io.supertokens.storage.postgresql.QueryExecutorTemplate.update; import static io.supertokens.storage.postgresql.config.Config.getConfig; @@ -34,6 +36,11 @@ static String getQueryToCreateAppIdIndexForUserLastActiveTable(Start start) { + Config.getConfig(start).getUserLastActiveTable() + "(app_id);"; } + public static String getQueryToCreateLastActiveTimeIndexForUserLastActiveTable(Start start) { + return "CREATE INDEX IF NOT EXISTS user_last_active_last_active_time_index ON " + + Config.getConfig(start).getUserLastActiveTable() + "(last_active_time DESC, app_id DESC);"; + } + public static int countUsersActiveSince(Start start, AppIdentifier appIdentifier, long sinceTime) throws SQLException, StorageQueryException { String QUERY = "SELECT COUNT(*) as total FROM " + Config.getConfig(start).getUserLastActiveTable() @@ -90,6 +97,22 @@ public static int updateUserLastActive(Start start, AppIdentifier appIdentifier, }); } + @TestOnly + public static int updateUserLastActive(Start start, AppIdentifier appIdentifier, String userId, long timestamp) + throws SQLException, StorageQueryException { + String QUERY = "INSERT INTO " + Config.getConfig(start).getUserLastActiveTable() + + + "(app_id, user_id, last_active_time) VALUES(?, ?, ?) ON CONFLICT(app_id, user_id) DO UPDATE SET " + + "last_active_time = ?"; + + return update(start, QUERY, pst -> { + pst.setString(1, appIdentifier.getAppId()); + pst.setString(2, userId); + pst.setLong(3, timestamp); + pst.setLong(4, timestamp); + }); + } + public static Long getLastActiveByUserId(Start start, AppIdentifier appIdentifier, String userId) throws StorageQueryException { String QUERY = "SELECT last_active_time FROM " + Config.getConfig(start).getUserLastActiveTable() diff --git a/src/main/java/io/supertokens/storage/postgresql/queries/GeneralQueries.java b/src/main/java/io/supertokens/storage/postgresql/queries/GeneralQueries.java index fca3d223..ac922852 100644 --- a/src/main/java/io/supertokens/storage/postgresql/queries/GeneralQueries.java +++ b/src/main/java/io/supertokens/storage/postgresql/queries/GeneralQueries.java @@ -303,6 +303,8 @@ public static void createTablesIfNotExists(Start start, Connection con) throws S // Index update(con, ActiveUsersQueries.getQueryToCreateAppIdIndexForUserLastActiveTable(start), NO_OP_SETTER); + update(con, ActiveUsersQueries.getQueryToCreateLastActiveTimeIndexForUserLastActiveTable(start), + NO_OP_SETTER); } if (!doesTableExists(start, con, Config.getConfig(start).getAccessTokenSigningKeysTable())) { diff --git a/src/test/java/io/supertokens/storage/postgresql/test/OneMillionUsersTest.java b/src/test/java/io/supertokens/storage/postgresql/test/OneMillionUsersTest.java index 5f55bcf1..8a506c38 100644 --- a/src/test/java/io/supertokens/storage/postgresql/test/OneMillionUsersTest.java +++ b/src/test/java/io/supertokens/storage/postgresql/test/OneMillionUsersTest.java @@ -27,8 +27,11 @@ import io.supertokens.emailpassword.EmailPassword; import io.supertokens.emailpassword.ParsedFirebaseSCryptResponse; import io.supertokens.featureflag.EE_FEATURES; +import io.supertokens.featureflag.FeatureFlag; import io.supertokens.featureflag.FeatureFlagTestContent; import io.supertokens.passwordless.Passwordless; +import io.supertokens.pluginInterface.RECIPE_ID; +import io.supertokens.pluginInterface.Storage; import io.supertokens.pluginInterface.authRecipe.AuthRecipeUserInfo; import io.supertokens.pluginInterface.authRecipe.LoginMethod; import io.supertokens.pluginInterface.authRecipe.sqlStorage.AuthRecipeSQLStorage; @@ -39,6 +42,7 @@ import io.supertokens.pluginInterface.thirdparty.sqlStorage.ThirdPartySQLStorage; import io.supertokens.session.Session; import io.supertokens.session.info.SessionInformationHolder; +import io.supertokens.storage.postgresql.Start; import io.supertokens.storage.postgresql.test.httpRequest.HttpRequestForTesting; import io.supertokens.storageLayer.StorageLayer; import io.supertokens.thirdparty.ThirdParty; @@ -386,6 +390,30 @@ private void createSessions(Main main) throws Exception { es.awaitTermination(10, TimeUnit.MINUTES); } + private void createActiveUserEntries(Main main) throws Exception { + System.out.println("Creating active user entries..."); + + ExecutorService es = Executors.newFixedThreadPool(NUM_THREADS); + + for (String userId : allPrimaryUserIds) { + String finalUserId = userId; + es.execute(() -> { + try { + Storage storage = StorageLayer.getBaseStorage(main); + Start start = (Start) storage; + + start.updateLastActive(new AppIdentifier(null, null), finalUserId, System.currentTimeMillis() - new Random().nextInt(1000 * 3600 * 24 * 60)); + + } catch (Exception e) { + throw new RuntimeException(e); + } + }); + } + + es.shutdown(); + es.awaitTermination(10, TimeUnit.MINUTES); + } + @Test public void testCreatingOneMillionUsers() throws Exception { if (System.getenv("ONE_MILLION_USERS_TEST") == null) { @@ -400,7 +428,7 @@ public void testCreatingOneMillionUsers() throws Exception { FeatureFlagTestContent.getInstance(process.getProcess()) .setKeyValue(FeatureFlagTestContent.ENABLED_FEATURES, new EE_FEATURES[]{ - EE_FEATURES.ACCOUNT_LINKING, EE_FEATURES.MULTI_TENANCY}); + EE_FEATURES.ACCOUNT_LINKING, EE_FEATURES.MULTI_TENANCY, EE_FEATURES.MFA, EE_FEATURES.DASHBOARD_LOGIN}); process.startProcess(); assertNotNull(process.checkOrWaitForEvent(ProcessState.PROCESS_STATE.STARTED)); @@ -445,6 +473,13 @@ public void testCreatingOneMillionUsers() throws Exception { System.out.println("Time taken to create sessions: " + ((en - st) / 1000) + " sec"); } + { + long st = System.currentTimeMillis(); + createActiveUserEntries(process.getProcess()); + long en = System.currentTimeMillis(); + System.out.println("Time taken to create active user entries: " + ((en - st) / 1000) + " sec"); + } + sanityCheckAPIs(process.getProcess()); allUserIds.clear(); allPrimaryUserIds.clear(); @@ -466,7 +501,7 @@ public void testCreatingOneMillionUsers() throws Exception { FeatureFlagTestContent.getInstance(process.getProcess()) .setKeyValue(FeatureFlagTestContent.ENABLED_FEATURES, new EE_FEATURES[]{ - EE_FEATURES.ACCOUNT_LINKING, EE_FEATURES.MULTI_TENANCY}); + EE_FEATURES.ACCOUNT_LINKING, EE_FEATURES.MULTI_TENANCY, EE_FEATURES.MFA, EE_FEATURES.DASHBOARD_LOGIN}); process.startProcess(); assertNotNull(process.checkOrWaitForEvent(ProcessState.PROCESS_STATE.STARTED)); @@ -888,6 +923,36 @@ private void measureOperations(Main main) throws Exception { return null; }); System.out.println("Update user metadata " + time); + assert time < 3000; + } + + { // measure user counting + long time = measureTime(() -> { + try { + AuthRecipe.getUsersCount(main, null); + AuthRecipe.getUsersCount(main, new RECIPE_ID[]{RECIPE_ID.EMAIL_PASSWORD}); + AuthRecipe.getUsersCount(main, new RECIPE_ID[]{RECIPE_ID.EMAIL_PASSWORD, RECIPE_ID.THIRD_PARTY}); + } catch (Exception e) { + errorCount.incrementAndGet(); + throw new RuntimeException(e); + } + return null; + }); + System.out.println("User counting: " + time); + assert time < 3000; + } + { // measure telemetry + long time = measureTime(() -> { + try { + FeatureFlag.getInstance(main).getPaidFeatureStats(); + } catch (Exception e) { + errorCount.incrementAndGet(); + throw new RuntimeException(e); + } + return null; + }); + System.out.println("Telemetry: " + time); + assert time < 3000; } assertEquals(0, errorCount.get()); From 28bcc7d4b038c337fa5533a11bf2684a36171214 Mon Sep 17 00:00:00 2001 From: Sattvik Chakravarthy Date: Wed, 4 Sep 2024 16:53:19 +0530 Subject: [PATCH 4/6] adding dev-v7.1.3 tag to this commit to ensure building --- ...-7.1.2.jar => postgresql-plugin-7.1.3.jar} | Bin 223871 -> 224159 bytes 1 file changed, 0 insertions(+), 0 deletions(-) rename jar/{postgresql-plugin-7.1.2.jar => postgresql-plugin-7.1.3.jar} (70%) diff --git a/jar/postgresql-plugin-7.1.2.jar b/jar/postgresql-plugin-7.1.3.jar similarity index 70% rename from jar/postgresql-plugin-7.1.2.jar rename to jar/postgresql-plugin-7.1.3.jar index 455df7bed67c60a8ab0a6cef9f48c1cfbd64ae52..312634706318523c7f71cb8886d9c234f0773dbf 100644 GIT binary patch delta 59751 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

2-xUQL>3-3I-aB;E0D#ONFL!0|jQX!4 zw3g{%eljQO5a@&e0N|(pm#)V8UvyL8gTMK#HiJ%g7W5Z}E*UQDN`RSM;AUuh4n0Ga zq2d3#yCdBG>Of~o4tZ)0q=crnArjfTY1A^2v-msH6+gBcUl|n zAT^(RD1{$-I+0rfiD4OsUXf(*o&I+aD+Fx$`=m{>gh~Mc_tFr5cuY1;6*zc&;GetN zC?lJJy$JrnMVV9E;W zRz2xHPAqF67c4|6Yp7HwSRG|K_h*LznQb z0B`S1A?5!uMFEpq+CZfQW%ttC3U~}iz0L21czFle{5OOO0#d=WSV2HCI10!B2wH%C zARr6utibbPeTW9l>oD}A`AUO_>jso9Fr5o<0&<5Tl zuuQDnNl%*Yr4;tR3n9xlzKRLz^2h(URd2hex;a3vkNH-3Qb>dSZ?`@6P*ZE|_xO!H zkPYU5-2p1yef~#_8YWG>lSYrjq*>$8{d45-+sf4)qBC>P7jpy(z{=>K7Uch|!}9Ds z^{yp3q{s31rE*94&sB=|hktjKCdxp*Is&O-t2>y6{E``pLT?^`;2+lA@z5s&;dBBj LBZlW~Tn5Yqg delta 59605 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 Oxj|Gh>E(gF4f=mRl^1CM From 1a30acd9ef507ec8ae0399332a5796f372dec6a8 Mon Sep 17 00:00:00 2001 From: Sattvik Chakravarthy Date: Wed, 4 Sep 2024 23:09:19 +0530 Subject: [PATCH 5/6] fix: Test fix (#225) * fix: for cicd * fix: test --- .../storage/postgresql/test/OneMillionUsersTest.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/test/java/io/supertokens/storage/postgresql/test/OneMillionUsersTest.java b/src/test/java/io/supertokens/storage/postgresql/test/OneMillionUsersTest.java index 8a506c38..ea29a8f9 100644 --- a/src/test/java/io/supertokens/storage/postgresql/test/OneMillionUsersTest.java +++ b/src/test/java/io/supertokens/storage/postgresql/test/OneMillionUsersTest.java @@ -939,7 +939,7 @@ private void measureOperations(Main main) throws Exception { return null; }); System.out.println("User counting: " + time); - assert time < 3000; + assert time < 10000; } { // measure telemetry long time = measureTime(() -> { @@ -952,7 +952,7 @@ private void measureOperations(Main main) throws Exception { return null; }); System.out.println("Telemetry: " + time); - assert time < 3000; + assert time < 6000; } assertEquals(0, errorCount.get()); From e40602c40354a5e4765769b2d62d1e19795e8b41 Mon Sep 17 00:00:00 2001 From: Sattvik Chakravarthy Date: Wed, 4 Sep 2024 23:09:41 +0530 Subject: [PATCH 6/6] adding dev-v7.1.3 tag to this commit to ensure building --- jar/postgresql-plugin-7.1.3.jar | Bin 224159 -> 224159 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/jar/postgresql-plugin-7.1.3.jar b/jar/postgresql-plugin-7.1.3.jar index 312634706318523c7f71cb8886d9c234f0773dbf..af33d925b81e1fff1ef43e143847d48be8baf1d2 100644 GIT binary patch delta 1557 zcmYL|drZ}37{|~1J|cI+sOAPa*>q9Tz>pDx(Buy1a1jvB;d0<`IUI)6zl!IZ(Cy92d{1j4hGln~gg0<9LW4iNCEeoOJ)oBgan-yvW7# zhbXbh;mdXkXT-qHtr2vrc%;BhT>D7~$V213g=%EiHeZBCvZB8605`>&7@W{?xZ=Ee+nI;M zIrGGbWpp_dn@VTCC**!<_Dgxl%KRe7`onum47_u{|0(d~sxw$n3kzbIg6_5;X60g| z`_8j05NX}ZA*^m43~K~S!&&Z2k*rA?o1@vs&}g%{YpP*2en%5Xx?0&1+#yw6Q-n!WjF2#i(A-4Z zS%7il8eefS-!0Im-(<2)ci=Rel%@T4n^~lh^$Q!oB-~4L?7}k;4=%G*+1cVM zJ1jL#oZomFq4*8lDMLR8^Q$s6w28Z9N5-wZGX|QON`BEBhP{D@VW#fSn)rDsuHVlW zFkQE?h1VddxDng6od>z6w%W@5P=((?-YSjmW85I?nmo=sWlmEMCyZV*+j%myLw0VH z+9&(Czb7Ig{alYoV?Q6m6>>j6$gR?NXNb2*!{-dQNTcB_uad>w9OiGxIx{bD7mOU+~p_cal7%hVjj`wP~Z%P9s)&zF-0TyGJ>7VNU9WDhLV48N>`^1v$Jf35 ZO2-U!EJTa@GpVDEGz&3 delta 1557 zcmYL|X-rgC7>4JZ4`ioU+QtNGB+-;s8nBj70!1s^05dEO2s11*49hT37SU2s&;kZ( zP084)Tunpg538sd1s#$u=?`j+wds-y!Ae^KR;AitYe)kv>3Prn(Mje$-|~LTJ@;PM zOpt3PC@?pRy!jPRJSE+k-nBV zYCw3umuj7WA}*F&l)Q zyU(*wtm9dYV0FPTY%wf@M2+Y2PS%8`o~?206KItA1Xh5+Yl&>iAI5qbTl9vpsAD|= zFzSog-!ft=V{gdFIXfE&L@Kw1HE%%UsW$fKW<(}GV(}C_D(>~X;du1J5RGOw!TI<> zjADsnA)Z|>_D=|8ue({mHWX&wV&XQ15jxAJ*Ze4CwQlvY3k*KqgTuho`x>N z4sMs)r~7%34>A!0T!&2K0H2hDUL4{!X?!ruTcqJX%B|99ILE6P*1I*v-BaQ07Khmfiy1aC%hyO)7 z*}?5vkr(kZTG|ILYpE9Tk_>hJTn074&&i|{$luPS_u<>Ks1tmYrRL2#>Oua#POY=+ zRs9n^wIhBYo8E+eK3nt`zCMRaz_A>4{-#`2r{q!t;y!tzpU^w{Oh9yn7#$HCHlG=zTMg>(@9kwSV0{I^i-C0JLap3Chb zIs#pxQO(bS!Y?+_N$BpIs1d%gnBD~!is=m4UP3nTw-Ryxg0@m|Kk!RcePNl(>t*Vk zIJ4MGQj4tr>&X84v0$_KAj zP&K%@lFZ<-N-}{zRf?g4nN@TMoT{QWa8I?`Z=#x7utbzieV8BHs2Kj5O`TI&qvr3_ jh=(KMI=k3M&}~;=qOe+Oh2K|8M)ZALOG)64I%@b2j3QaO