From ff09c1bcbda01428a1ffc0064ac6587525ce8f74 Mon Sep 17 00:00:00 2001
From: Ave Ozkal <ave@ave.zone>
Date: Wed, 29 May 2019 01:42:47 +0300
Subject: [PATCH] Revert "9.0.4"

more apktool bugs, I'm afraid.

This reverts commit 16708c42dc434b6cc9af4c1348bb8f3763c1c143.
---
 README.md                                 |    2 +-
 patches/branding/904.patch                |  177 --
 patches/branding/README.md                |    1 -
 patches/compact/904.patch                 |   79 -
 patches/compact/README.md                 |    1 -
 patches/customdefaultemoji/904.patch      |   81 -
 patches/customdefaultemoji/README.md      |    1 -
 patches/customtheme/904.patch             |  272 --
 patches/customtheme/README.md             |    1 -
 patches/customversion/904.patch           |   20 -
 patches/customversion/README.md           |    1 -
 patches/disable-mobileindicator/904.patch |   20 -
 patches/disable-mobileindicator/README.md |    1 -
 patches/experiments/904.patch             |  179 --
 patches/experiments/README.md             |    1 -
 patches/litecord/904.patch                |  289 --
 patches/litecord/README.md                |    1 -
 patches/mutant/904.patch                  | 1907 -------------
 patches/mutant/README.md                  |    1 -
 patches/necessary/904.patch               |   14 -
 patches/noblocked/904.patch               |   18 -
 patches/noblocked/README.md               |    1 -
 patches/nonearby/904.patch                |  101 -
 patches/nonearby/README.md                |    1 -
 patches/noprofilestrip/904.patch          |   53 -
 patches/noprofilestrip/README.md          |    1 -
 patches/nospoiler/904.patch               |   65 -
 patches/nospoiler/README.md               |    1 -
 patches/notrack/904.patch                 | 3044 --------------------
 patches/nozlib/904.patch                  |   34 -
 patches/nozlib/README.md                  |    1 -
 patches/pureevil/904.patch                |   45 -
 patches/pureevil/README.md                |    1 -
 patches/slashcommands/904.patch           | 3145 ---------------------
 patches/slashcommands/README.md           |    1 -
 patches/smalltime/904.patch               |  190 --
 patches/smalltime/README.md               |    1 -
 patches/squareavatars/904.patch           |   21 -
 patches/squareavatars/README.md           |    1 -
 patches/tokenlogin/904.patch              |   33 -
 patches/tokenlogin/README.md              |    1 -
 patchport-state.json                      |    2 +-
 42 files changed, 2 insertions(+), 9808 deletions(-)
 delete mode 100644 patches/branding/904.patch
 delete mode 100644 patches/compact/904.patch
 delete mode 100644 patches/customdefaultemoji/904.patch
 delete mode 100644 patches/customtheme/904.patch
 delete mode 100644 patches/customversion/904.patch
 delete mode 100644 patches/disable-mobileindicator/904.patch
 delete mode 100644 patches/experiments/904.patch
 delete mode 100644 patches/litecord/904.patch
 delete mode 100644 patches/mutant/904.patch
 delete mode 100644 patches/necessary/904.patch
 delete mode 100644 patches/noblocked/904.patch
 delete mode 100644 patches/nonearby/904.patch
 delete mode 100644 patches/noprofilestrip/904.patch
 delete mode 100644 patches/nospoiler/904.patch
 delete mode 100644 patches/notrack/904.patch
 delete mode 100644 patches/nozlib/904.patch
 delete mode 100644 patches/pureevil/904.patch
 delete mode 100644 patches/slashcommands/904.patch
 delete mode 100644 patches/smalltime/904.patch
 delete mode 100644 patches/squareavatars/904.patch
 delete mode 100644 patches/tokenlogin/904.patch

diff --git a/README.md b/README.md
index 3d602c4..04a66e1 100644
--- a/README.md
+++ b/README.md
@@ -2,7 +2,7 @@
 
 Modular Client Mod for Discord's Android app.
 
-**Latest supported Discord Android version:** 9.0.4 (904), released on 2019-05-28.
+**Latest supported Discord Android version:** 9.0.3 (903), released on 2019-05-24.
 
 New patch development will be done for the latest supported version.
 
diff --git a/patches/branding/904.patch b/patches/branding/904.patch
deleted file mode 100644
index 483e127..0000000
--- a/patches/branding/904.patch
+++ /dev/null
@@ -1,177 +0,0 @@
-diff -crB from/AndroidManifest.xml to/AndroidManifest.xml
-*** from/AndroidManifest.xml	2019-05-29 01:13:18.465785205 +0300
---- to/AndroidManifest.xml	2019-05-29 01:13:20.105793791 +0300
-***************
-*** 1,4 ****
-! <?xml version="1.0" encoding="utf-8" standalone="no"?><manifest xmlns:android="http://schemas.android.com/apk/res/android" android:compileSdkVersion="28" android:compileSdkVersionCodename="9" android:installLocation="auto" package="com.discord" platformBuildVersionCode="904" platformBuildVersionName="9.0.4">
-      <uses-feature android:name="android.hardware.camera" android:required="false"/>
-      <uses-feature android:name="android.hardware.camera.autofocus" android:required="false"/>
-      <uses-feature android:name="android.hardware.faketouch" android:required="false"/>
---- 1,4 ----
-! <?xml version="1.0" encoding="utf-8" standalone="no"?><manifest xmlns:android="http://schemas.android.com/apk/res/android" android:compileSdkVersion="28" android:compileSdkVersionCodename="9" android:installLocation="auto" package="com.cutthecord.CTCBRANCH" platformBuildVersionCode="904CTCBUILD" platformBuildVersionName="9.0.4-cutthecord-CTCBUILD">
-      <uses-feature android:name="android.hardware.camera" android:required="false"/>
-      <uses-feature android:name="android.hardware.camera.autofocus" android:required="false"/>
-      <uses-feature android:name="android.hardware.faketouch" android:required="false"/>
-***************
-*** 21,27 ****
-      <uses-permission android:name="com.google.android.c2dm.permission.RECEIVE"/>
-      <uses-permission android:name="com.google.android.finsky.permission.BIND_GET_INSTALL_REFERRER_SERVICE"/>
-      <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
-!     <application android:allowBackup="false" android:appCategory="social" android:appComponentFactory="androidx.core.app.CoreComponentFactory" android:icon="@mipmap/ic_logo" android:label="@string/discord" android:largeHeap="true" android:name="com.discord.app.App" android:supportsRtl="true" android:theme="@style/AppTheme.Dark" android:usesCleartextTraffic="@bool/use_cleartext_traffic">
-          <activity android:name="com.discord.app.AppActivity" android:screenOrientation="fullUser" android:theme="@style/AppTheme.Dark" android:windowSoftInputMode="adjustResize|stateHidden"/>
-          <activity android:exported="true" android:launchMode="singleTask" android:name="com.discord.app.AppActivity$Main" android:screenOrientation="fullUser" android:theme="@style/AppTheme.Loading" android:windowSoftInputMode="adjustResize|stateHidden">
-              <intent-filter>
---- 21,27 ----
-      <uses-permission android:name="com.google.android.c2dm.permission.RECEIVE"/>
-      <uses-permission android:name="com.google.android.finsky.permission.BIND_GET_INSTALL_REFERRER_SERVICE"/>
-      <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
-!     <application android:allowBackup="true" android:debuggable="true" android:appCategory="social" android:appComponentFactory="androidx.core.app.CoreComponentFactory" android:icon="@mipmap/ic_logo" android:label="@string/discord" android:largeHeap="true" android:name="com.discord.app.App" android:supportsRtl="true" android:theme="@style/AppTheme.Dark" android:usesCleartextTraffic="@bool/use_cleartext_traffic">
-          <activity android:name="com.discord.app.AppActivity" android:screenOrientation="fullUser" android:theme="@style/AppTheme.Dark" android:windowSoftInputMode="adjustResize|stateHidden"/>
-          <activity android:exported="true" android:launchMode="singleTask" android:name="com.discord.app.AppActivity$Main" android:screenOrientation="fullUser" android:theme="@style/AppTheme.Loading" android:windowSoftInputMode="adjustResize|stateHidden">
-              <intent-filter>
-***************
-*** 96,102 ****
-          </receiver>
-          <service android:enabled="true" android:exported="false" android:name="com.google.android.gms.analytics.CampaignTrackingService"/>
-          <service android:name="com.discord.utilities.voice.VoiceEngineForegroundService"/>
-!         <provider android:authorities="com.discord.file-provider" android:exported="false" android:grantUriPermissions="true" android:name="androidx.core.content.FileProvider">
-              <meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/file_paths"/>
-          </provider>
-          <meta-data android:name="firebase_crashlytics_collection_enabled" android:value="false"/>
---- 96,102 ----
-          </receiver>
-          <service android:enabled="true" android:exported="false" android:name="com.google.android.gms.analytics.CampaignTrackingService"/>
-          <service android:name="com.discord.utilities.voice.VoiceEngineForegroundService"/>
-!         <provider android:authorities="top.distok.cutthecord.CTCBRANCH.file-provider" android:exported="false" android:grantUriPermissions="true" android:name="androidx.core.content.FileProvider">
-              <meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/file_paths"/>
-          </provider>
-          <meta-data android:name="firebase_crashlytics_collection_enabled" android:value="false"/>
-***************
-*** 133,139 ****
-              </intent-filter>
-          </service>
-          <activity android:exported="false" android:name="com.google.android.gms.common.api.GoogleApiActivity" android:theme="@android:style/Theme.Translucent.NoTitleBar"/>
-!         <provider android:authorities="com.discord.firebaseinitprovider" android:exported="false" android:initOrder="100" android:name="com.google.firebase.provider.FirebaseInitProvider"/>
-          <receiver android:enabled="true" android:exported="false" android:name="com.google.android.gms.measurement.AppMeasurementReceiver"/>
-          <receiver android:enabled="true" android:exported="true" android:name="com.google.android.gms.measurement.AppMeasurementInstallReferrerReceiver" android:permission="android.permission.INSTALL_PACKAGES">
-              <intent-filter>
---- 133,139 ----
-              </intent-filter>
-          </service>
-          <activity android:exported="false" android:name="com.google.android.gms.common.api.GoogleApiActivity" android:theme="@android:style/Theme.Translucent.NoTitleBar"/>
-!         <provider android:authorities="top.distok.cutthecord.CTCBRANCH.firebaseinitprovider" android:exported="false" android:initOrder="100" android:name="com.google.firebase.provider.FirebaseInitProvider"/>
-          <receiver android:enabled="true" android:exported="false" android:name="com.google.android.gms.measurement.AppMeasurementReceiver"/>
-          <receiver android:enabled="true" android:exported="true" android:name="com.google.android.gms.measurement.AppMeasurementInstallReferrerReceiver" android:permission="android.permission.INSTALL_PACKAGES">
-              <intent-filter>
-***************
-*** 143,149 ****
-          <service android:enabled="true" android:exported="false" android:name="com.google.android.gms.measurement.AppMeasurementService"/>
-          <service android:enabled="true" android:exported="false" android:name="com.google.android.gms.measurement.AppMeasurementJobService" android:permission="android.permission.BIND_JOB_SERVICE"/>
-          <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version"/>
-!         <provider android:authorities="com.discord.workmanager-init" android:directBootAware="false" android:exported="false" android:multiprocess="true" android:name="androidx.work.impl.WorkManagerInitializer"/>
-          <service android:directBootAware="false" android:enabled="@bool/enable_system_alarm_service_default" android:exported="false" android:name="androidx.work.impl.background.systemalarm.SystemAlarmService"/>
-          <service android:directBootAware="false" android:enabled="@bool/enable_system_job_service_default" android:exported="true" android:name="androidx.work.impl.background.systemjob.SystemJobService" android:permission="android.permission.BIND_JOB_SERVICE"/>
-          <receiver android:directBootAware="false" android:enabled="true" android:exported="false" android:name="androidx.work.impl.utils.ForceStopRunnable$BroadcastReceiver"/>
---- 143,149 ----
-          <service android:enabled="true" android:exported="false" android:name="com.google.android.gms.measurement.AppMeasurementService"/>
-          <service android:enabled="true" android:exported="false" android:name="com.google.android.gms.measurement.AppMeasurementJobService" android:permission="android.permission.BIND_JOB_SERVICE"/>
-          <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version"/>
-!         <provider android:authorities="top.distok.cutthecord.CTCBRANCH.workmanager-init" android:directBootAware="false" android:exported="false" android:multiprocess="true" android:name="androidx.work.impl.WorkManagerInitializer"/>
-          <service android:directBootAware="false" android:enabled="@bool/enable_system_alarm_service_default" android:exported="false" android:name="androidx.work.impl.background.systemalarm.SystemAlarmService"/>
-          <service android:directBootAware="false" android:enabled="@bool/enable_system_job_service_default" android:exported="true" android:name="androidx.work.impl.background.systemjob.SystemJobService" android:permission="android.permission.BIND_JOB_SERVICE"/>
-          <receiver android:directBootAware="false" android:enabled="true" android:exported="false" android:name="androidx.work.impl.utils.ForceStopRunnable$BroadcastReceiver"/>
-***************
-*** 182,190 ****
-                  <action android:name="androidx.work.impl.background.systemalarm.UpdateProxies"/>
-              </intent-filter>
-          </receiver>
-!         <provider android:authorities="com.discord.lifecycle-process" android:exported="false" android:multiprocess="true" android:name="androidx.lifecycle.ProcessLifecycleOwnerInitializer"/>
-!         <provider android:authorities="com.discord.crashlyticsinitprovider" android:exported="false" android:initOrder="90" android:name="com.crashlytics.android.CrashlyticsInitProvider"/>
-          <meta-data android:name="firebase_crashlytics_ndk_enabled" android:value="true"/>
-          <meta-data android:name="com.android.vending.derived.apk.id" android:value="1"/>
-      </application>
-! </manifest>
-\ No newline at end of file
---- 182,190 ----
-                  <action android:name="androidx.work.impl.background.systemalarm.UpdateProxies"/>
-              </intent-filter>
-          </receiver>
-!         <provider android:authorities="top.distok.cutthecord.CTCBRANCH.lifecycle-process" android:exported="false" android:multiprocess="true" android:name="androidx.lifecycle.ProcessLifecycleOwnerInitializer"/>
-!         <provider android:authorities="top.distok.cutthecord.CTCBRANCH.crashlyticsinitprovider" android:exported="false" android:initOrder="90" android:name="com.crashlytics.android.CrashlyticsInitProvider"/>
-          <meta-data android:name="firebase_crashlytics_ndk_enabled" android:value="true"/>
-          <meta-data android:name="com.android.vending.derived.apk.id" android:value="1"/>
-      </application>
-! </manifest>
-diff -crB from/apktool.yml to/apktool.yml
-*** from/apktool.yml	2019-05-29 01:12:20.135479797 +0300
---- to/apktool.yml	2019-05-29 01:13:20.105793791 +0300
-***************
-*** 308,312 ****
-    tag: null
-  version: 2.4.1-73ac0d-SNAPSHOT
-  versionInfo:
-!   versionCode: '904'
-!   versionName: 9.0.4
---- 308,312 ----
-    tag: null
-  version: 2.4.1-73ac0d-SNAPSHOT
-  versionInfo:
-!   versionCode: '904CTCBUILD'
-!   versionName: 9.0.4-cutthecord-CTCBUILD
-diff -crB from/res/values/strings.xml to/res/values/strings.xml
-*** from/res/values/strings.xml	2019-05-29 01:12:15.258787597 +0300
---- to/res/values/strings.xml	2019-05-29 01:13:20.109127142 +0300
-***************
-*** 1284,1290 ****
-      <string name="disconnect_account_body">Disconnecting your account might remove you from servers you joined via this account.</string>
-      <string name="disconnect_account_title">Disconnect %1$s</string>
-      <string name="disconnect_from_voice">Disconnect from Voice</string>
-!     <string name="discord">Discord</string>
-      <string name="discord_desc_long">Free and secure chat for gamers, works on both your desktop and your phone.</string>
-      <string name="discord_desc_short">Team voice &amp; text chat</string>
-      <string name="discord_gg">discord.gg/</string>
---- 1284,1290 ----
-      <string name="disconnect_account_body">Disconnecting your account might remove you from servers you joined via this account.</string>
-      <string name="disconnect_account_title">Disconnect %1$s</string>
-      <string name="disconnect_from_voice">Disconnect from Voice</string>
-!     <string name="discord">CTCNAME</string>
-      <string name="discord_desc_long">Free and secure chat for gamers, works on both your desktop and your phone.</string>
-      <string name="discord_desc_short">Team voice &amp; text chat</string>
-      <string name="discord_gg">discord.gg/</string>
-***************
-*** 2993,2999 ****
-      <string name="notification_reply_failed">Failed to reply to %1$s</string>
-      <string name="notification_reply_success">Replied to %1$s</string>
-      <string name="notification_settings">Notification Settings</string>
-!     <string name="notification_title_discord">Discord</string>
-      <string name="notification_title_start_game">"Somebody Playin'"</string>
-      <string name="notifications">Notifications</string>
-      <string name="nsfw_accept">Continue</string>
---- 2993,2999 ----
-      <string name="notification_reply_failed">Failed to reply to %1$s</string>
-      <string name="notification_reply_success">Replied to %1$s</string>
-      <string name="notification_settings">Notification Settings</string>
-!     <string name="notification_title_discord">CTCNAME</string>
-      <string name="notification_title_start_game">"Somebody Playin'"</string>
-      <string name="notifications">Notifications</string>
-      <string name="nsfw_accept">Continue</string>
-diff -crB from/smali/com/discord/utilities/captcha/CaptchaHelper$showCaptchaHelpDialog$$inlined$let$lambda$1.smali to/smali/com/discord/utilities/captcha/CaptchaHelper$showCaptchaHelpDialog$$inlined$let$lambda$1.smali
-*** from/smali/com/discord/utilities/captcha/CaptchaHelper$showCaptchaHelpDialog$$inlined$let$lambda$1.smali	2019-05-29 01:12:17.215464508 +0300
---- to/smali/com/discord/utilities/captcha/CaptchaHelper$showCaptchaHelpDialog$$inlined$let$lambda$1.smali	2019-05-29 01:13:20.109127142 +0300
-***************
-*** 77,83 ****
-  
-      new-instance v0, Landroid/content/Intent;
-  
-!     const-string v1, "https://discordapp.com/app"
-  
-      invoke-static {v1}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;
-  
---- 77,83 ----
-  
-      new-instance v0, Landroid/content/Intent;
-  
-!     const-string v1, "https://gitdab.com/distok/cutthecord/issues/22#issuecomment-82"
-  
-      invoke-static {v1}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;
-  
diff --git a/patches/branding/README.md b/patches/branding/README.md
index c3357bb..7559c2c 100644
--- a/patches/branding/README.md
+++ b/patches/branding/README.md
@@ -44,5 +44,4 @@ You can use the following line to patch authorities:
 - 9.0.1
 - 9.0.2
 - 9.0.3
-- 9.0.4
 
diff --git a/patches/compact/904.patch b/patches/compact/904.patch
deleted file mode 100644
index 1a8096a..0000000
--- a/patches/compact/904.patch
+++ /dev/null
@@ -1,79 +0,0 @@
-diff -crB com.discord-896-base/res/layout/widget_chat_list_adapter_item_text.xml com.discord-896/res/layout/widget_chat_list_adapter_item_text.xml
-*** com.discord-896-base/res/layout/widget_chat_list_adapter_item_text.xml	2019-05-12 12:13:44.797747805 +0300
---- com.discord-896/res/layout/widget_chat_list_adapter_item_text.xml	2019-05-12 12:23:58.467979023 +0300
-***************
-*** 2,12 ****
-  <androidx.constraintlayout.widget.ConstraintLayout android:background="?selectableItemBackground" android:paddingTop="10.0dip" android:paddingRight="@dimen/chat_cell_horizontal_spacing_padding" android:layout_width="fill_parent" android:layout_height="wrap_content"
-    xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto">
-      <androidx.constraintlayout.widget.Guideline android:id="@id/uikit_chat_guideline" style="@style/UiKit.Chat.Guideline" />
--     <com.facebook.drawee.view.SimpleDraweeView android:id="@id/chat_list_adapter_item_text_avatar" android:layout_marginLeft="8.0dip" android:importantForAccessibility="no" app:layout_constrainedWidth="true" app:layout_constraintEnd_toEndOf="@id/uikit_chat_guideline" app:layout_constraintHorizontal_bias="0.0" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintRight_toLeftOf="@id/uikit_chat_guideline" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="@id/chat_list_adapter_item_text_header" style="@style/Avatar.Chat" />
-      <androidx.constraintlayout.widget.ConstraintLayout android:id="@id/chat_list_adapter_item_text_header" android:layout_width="wrap_content" android:layout_height="0.0dip" app:layout_constrainedWidth="true" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintHorizontal_bias="0.0" app:layout_constraintLeft_toRightOf="@id/uikit_chat_guideline" app:layout_constraintRight_toRightOf="parent" app:layout_constraintStart_toEndOf="@id/uikit_chat_guideline" app:layout_constraintTop_toTopOf="@id/chat_list_adapter_item_text_avatar">
-          <TextView android:textColor="?theme_chat_name" android:id="@id/chat_list_adapter_item_text_name" android:lineSpacingMultiplier="1.0" app:layout_constrainedWidth="true" app:layout_constraintBaseline_toBaselineOf="@id/chat_list_adapter_item_text_bot" app:layout_constraintEnd_toStartOf="@id/chat_list_adapter_item_text_bot" app:layout_constraintHorizontal_bias="0.0" app:layout_constraintHorizontal_chainStyle="packed" app:layout_constraintStart_toStartOf="parent" style="@style/UiKit.TextView.Large.SingleLine" />
-          <TextView android:textSize="9.5sp" android:textColor="@color/white" android:id="@id/chat_list_adapter_item_text_bot" android:background="@drawable/drawable_button_purple_neutral" android:paddingLeft="3.0dip" android:paddingTop="0.5dip" android:paddingRight="3.0dip" android:paddingBottom="0.5dip" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="6.0dip" android:layout_marginBottom="1.0dip" android:text="BOT" android:singleLine="true" app:layout_constraintBottom_toBottomOf="@id/chat_list_adapter_item_text_name" app:layout_constraintEnd_toStartOf="@id/chat_list_adapter_item_text_timestamp" app:layout_constraintStart_toEndOf="@id/chat_list_adapter_item_text_name" style="@style/UiKit.TextView" />
-          <TextView android:textSize="@dimen/uikit_textsize_small" android:textColor="?theme_chat_timestamp" android:gravity="center_vertical" android:id="@id/chat_list_adapter_item_text_timestamp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="6.0dip" android:layout_marginBottom="1.0dip" android:maxWidth="150.0dip" android:singleLine="true" app:layout_constraintBaseline_toBaselineOf="@id/chat_list_adapter_item_text_name" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toEndOf="@id/chat_list_adapter_item_text_bot" style="@style/UiKit.TextView" />
-      </androidx.constraintlayout.widget.ConstraintLayout>
--     <com.discord.utilities.view.text.LinkifiedTextView android:id="@id/chat_list_adapter_item_text" android:layout_width="0.0dip" android:layout_marginTop="@dimen/uikit_spacing_xsmall" android:layout_marginRight="@dimen/uikit_spacing_small" android:layout_marginBottom="2.0dip" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintLeft_toRightOf="@id/uikit_chat_guideline" app:layout_constraintRight_toRightOf="parent" app:layout_constraintStart_toEndOf="@id/uikit_chat_guideline" app:layout_constraintTop_toBottomOf="@id/chat_list_adapter_item_text_header" style="@style/UiKit.Chat.Text" />
-  </androidx.constraintlayout.widget.ConstraintLayout>
-\ No newline at end of file
---- 2,11 ----
-  <androidx.constraintlayout.widget.ConstraintLayout android:background="?selectableItemBackground" android:paddingTop="10.0dip" android:paddingRight="@dimen/chat_cell_horizontal_spacing_padding" android:layout_width="fill_parent" android:layout_height="wrap_content"
-    xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto">
-      <androidx.constraintlayout.widget.Guideline android:id="@id/uikit_chat_guideline" style="@style/UiKit.Chat.Guideline" />
-      <androidx.constraintlayout.widget.ConstraintLayout android:id="@id/chat_list_adapter_item_text_header" android:layout_width="wrap_content" android:layout_height="0.0dip" app:layout_constrainedWidth="true" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintHorizontal_bias="0.0" app:layout_constraintLeft_toRightOf="@id/uikit_chat_guideline" app:layout_constraintRight_toRightOf="parent" app:layout_constraintStart_toEndOf="@id/uikit_chat_guideline" app:layout_constraintTop_toTopOf="@id/chat_list_adapter_item_text_avatar">
-          <TextView android:textColor="?theme_chat_name" android:id="@id/chat_list_adapter_item_text_name" android:lineSpacingMultiplier="1.0" app:layout_constrainedWidth="true" app:layout_constraintBaseline_toBaselineOf="@id/chat_list_adapter_item_text_bot" app:layout_constraintEnd_toStartOf="@id/chat_list_adapter_item_text_bot" app:layout_constraintHorizontal_bias="0.0" app:layout_constraintHorizontal_chainStyle="packed" app:layout_constraintStart_toStartOf="parent" style="@style/UiKit.TextView.Large.SingleLine" />
-          <TextView android:textSize="9.5sp" android:textColor="@color/white" android:id="@id/chat_list_adapter_item_text_bot" android:background="@drawable/drawable_button_purple_neutral" android:paddingLeft="3.0dip" android:paddingTop="0.5dip" android:paddingRight="3.0dip" android:paddingBottom="0.5dip" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="6.0dip" android:layout_marginBottom="1.0dip" android:text="BOT" android:singleLine="true" app:layout_constraintBottom_toBottomOf="@id/chat_list_adapter_item_text_name" app:layout_constraintEnd_toStartOf="@id/chat_list_adapter_item_text_timestamp" app:layout_constraintStart_toEndOf="@id/chat_list_adapter_item_text_name" style="@style/UiKit.TextView" />
-          <TextView android:textSize="@dimen/uikit_textsize_small" android:textColor="?theme_chat_timestamp" android:gravity="center_vertical" android:id="@id/chat_list_adapter_item_text_timestamp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="6.0dip" android:layout_marginBottom="1.0dip" android:maxWidth="150.0dip" android:singleLine="true" app:layout_constraintBaseline_toBaselineOf="@id/chat_list_adapter_item_text_name" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toEndOf="@id/chat_list_adapter_item_text_bot" style="@style/UiKit.TextView" />
-+         <com.discord.utilities.view.text.LinkifiedTextView  android:id="@id/chat_list_adapter_item_text" app:layout_constrainedWidth="true" android:layout_marginLeft="6.0dip" android:layout_marginBottom="1.0dip" android:layout_marginStart="6.0dip" app:layout_constraintStart_toEndOf="@id/chat_list_adapter_item_text_timestamp" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintLeft_toRightOf="@id/chat_list_adapter_item_text_timestamp" app:layout_constraintRight_toRightOf="parent" style="@style/UiKit.Chat.Text" />
-      </androidx.constraintlayout.widget.ConstraintLayout>
-  </androidx.constraintlayout.widget.ConstraintLayout>
-\ No newline at end of file
-diff -crB com.discord-896-base/res/layout-v17/widget_chat_list_adapter_item_text.xml com.discord-896/res/layout-v17/widget_chat_list_adapter_item_text.xml
-*** com.discord-896-base/res/layout-v17/widget_chat_list_adapter_item_text.xml	2019-05-12 12:13:44.247726523 +0300
---- com.discord-896/res/layout-v17/widget_chat_list_adapter_item_text.xml	2019-05-12 12:24:20.918161669 +0300
-***************
-*** 2,12 ****
-  <androidx.constraintlayout.widget.ConstraintLayout android:background="?selectableItemBackground" android:paddingTop="10.0dip" android:paddingRight="@dimen/chat_cell_horizontal_spacing_padding" android:layout_width="fill_parent" android:layout_height="wrap_content" android:paddingEnd="@dimen/chat_cell_horizontal_spacing_padding"
-    xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto">
-      <androidx.constraintlayout.widget.Guideline android:id="@id/uikit_chat_guideline" style="@style/UiKit.Chat.Guideline" />
--     <com.facebook.drawee.view.SimpleDraweeView android:id="@id/chat_list_adapter_item_text_avatar" android:layout_marginLeft="8.0dip" android:importantForAccessibility="no" android:layout_marginStart="8.0dip" app:layout_constrainedWidth="true" app:layout_constraintEnd_toEndOf="@id/uikit_chat_guideline" app:layout_constraintHorizontal_bias="0.0" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintRight_toLeftOf="@id/uikit_chat_guideline" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="@id/chat_list_adapter_item_text_header" style="@style/Avatar.Chat" />
-      <androidx.constraintlayout.widget.ConstraintLayout android:id="@id/chat_list_adapter_item_text_header" android:layout_width="wrap_content" android:layout_height="0.0dip" app:layout_constrainedWidth="true" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintHorizontal_bias="0.0" app:layout_constraintLeft_toRightOf="@id/uikit_chat_guideline" app:layout_constraintRight_toRightOf="parent" app:layout_constraintStart_toEndOf="@id/uikit_chat_guideline" app:layout_constraintTop_toTopOf="@id/chat_list_adapter_item_text_avatar">
-          <TextView android:textColor="?theme_chat_name" android:id="@id/chat_list_adapter_item_text_name" android:lineSpacingMultiplier="1.0" app:layout_constrainedWidth="true" app:layout_constraintBaseline_toBaselineOf="@id/chat_list_adapter_item_text_bot" app:layout_constraintEnd_toStartOf="@id/chat_list_adapter_item_text_bot" app:layout_constraintHorizontal_bias="0.0" app:layout_constraintHorizontal_chainStyle="packed" app:layout_constraintStart_toStartOf="parent" style="@style/UiKit.TextView.Large.SingleLine" />
-          <TextView android:textSize="9.5sp" android:textColor="@color/white" android:id="@id/chat_list_adapter_item_text_bot" android:background="@drawable/drawable_button_purple_neutral" android:paddingLeft="3.0dip" android:paddingTop="0.5dip" android:paddingRight="3.0dip" android:paddingBottom="0.5dip" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="6.0dip" android:layout_marginBottom="1.0dip" android:text="BOT" android:singleLine="true" android:layout_marginStart="6.0dip" app:layout_constraintBottom_toBottomOf="@id/chat_list_adapter_item_text_name" app:layout_constraintEnd_toStartOf="@id/chat_list_adapter_item_text_timestamp" app:layout_constraintStart_toEndOf="@id/chat_list_adapter_item_text_name" style="@style/UiKit.TextView" />
-          <TextView android:textSize="@dimen/uikit_textsize_small" android:textColor="?theme_chat_timestamp" android:gravity="center_vertical" android:id="@id/chat_list_adapter_item_text_timestamp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="6.0dip" android:layout_marginBottom="1.0dip" android:maxWidth="150.0dip" android:singleLine="true" android:layout_marginStart="6.0dip" app:layout_constraintBaseline_toBaselineOf="@id/chat_list_adapter_item_text_name" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toEndOf="@id/chat_list_adapter_item_text_bot" style="@style/UiKit.TextView" />
-      </androidx.constraintlayout.widget.ConstraintLayout>
--     <com.discord.utilities.view.text.LinkifiedTextView android:id="@id/chat_list_adapter_item_text" android:layout_width="0.0dip" android:layout_marginTop="@dimen/uikit_spacing_xsmall" android:layout_marginRight="@dimen/uikit_spacing_small" android:layout_marginBottom="2.0dip" android:layout_marginEnd="@dimen/uikit_spacing_small" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintLeft_toRightOf="@id/uikit_chat_guideline" app:layout_constraintRight_toRightOf="parent" app:layout_constraintStart_toEndOf="@id/uikit_chat_guideline" app:layout_constraintTop_toBottomOf="@id/chat_list_adapter_item_text_header" style="@style/UiKit.Chat.Text" />
-  </androidx.constraintlayout.widget.ConstraintLayout>
-\ No newline at end of file
---- 2,11 ----
-  <androidx.constraintlayout.widget.ConstraintLayout android:background="?selectableItemBackground" android:paddingTop="10.0dip" android:paddingRight="@dimen/chat_cell_horizontal_spacing_padding" android:layout_width="fill_parent" android:layout_height="wrap_content" android:paddingEnd="@dimen/chat_cell_horizontal_spacing_padding"
-    xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto">
-      <androidx.constraintlayout.widget.Guideline android:id="@id/uikit_chat_guideline" style="@style/UiKit.Chat.Guideline" />
-      <androidx.constraintlayout.widget.ConstraintLayout android:id="@id/chat_list_adapter_item_text_header" android:layout_width="wrap_content" android:layout_height="0.0dip" app:layout_constrainedWidth="true" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintHorizontal_bias="0.0" app:layout_constraintLeft_toRightOf="@id/uikit_chat_guideline" app:layout_constraintRight_toRightOf="parent" app:layout_constraintStart_toEndOf="@id/uikit_chat_guideline" app:layout_constraintTop_toTopOf="@id/chat_list_adapter_item_text_avatar">
-          <TextView android:textColor="?theme_chat_name" android:id="@id/chat_list_adapter_item_text_name" android:lineSpacingMultiplier="1.0" app:layout_constrainedWidth="true" app:layout_constraintBaseline_toBaselineOf="@id/chat_list_adapter_item_text_bot" app:layout_constraintEnd_toStartOf="@id/chat_list_adapter_item_text_bot" app:layout_constraintHorizontal_bias="0.0" app:layout_constraintHorizontal_chainStyle="packed" app:layout_constraintStart_toStartOf="parent" style="@style/UiKit.TextView.Large.SingleLine" />
-          <TextView android:textSize="9.5sp" android:textColor="@color/white" android:id="@id/chat_list_adapter_item_text_bot" android:background="@drawable/drawable_button_purple_neutral" android:paddingLeft="3.0dip" android:paddingTop="0.5dip" android:paddingRight="3.0dip" android:paddingBottom="0.5dip" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="6.0dip" android:layout_marginBottom="1.0dip" android:text="BOT" android:singleLine="true" android:layout_marginStart="6.0dip" app:layout_constraintBottom_toBottomOf="@id/chat_list_adapter_item_text_name" app:layout_constraintEnd_toStartOf="@id/chat_list_adapter_item_text_timestamp" app:layout_constraintStart_toEndOf="@id/chat_list_adapter_item_text_name" style="@style/UiKit.TextView" />
-          <TextView android:textSize="@dimen/uikit_textsize_small" android:textColor="?theme_chat_timestamp" android:gravity="center_vertical" android:id="@id/chat_list_adapter_item_text_timestamp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="6.0dip" android:layout_marginBottom="1.0dip" android:maxWidth="150.0dip" android:singleLine="true" android:layout_marginStart="6.0dip" app:layout_constraintBaseline_toBaselineOf="@id/chat_list_adapter_item_text_name" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toEndOf="@id/chat_list_adapter_item_text_bot" style="@style/UiKit.TextView" />
-+         <com.discord.utilities.view.text.LinkifiedTextView  android:id="@id/chat_list_adapter_item_text" app:layout_constrainedWidth="true" android:layout_marginLeft="6.0dip" android:layout_marginBottom="1.0dip" android:layout_marginStart="6.0dip" app:layout_constraintStart_toEndOf="@id/chat_list_adapter_item_text_timestamp" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintLeft_toRightOf="@id/chat_list_adapter_item_text_timestamp" app:layout_constraintRight_toRightOf="parent" style="@style/UiKit.Chat.Text" />
-      </androidx.constraintlayout.widget.ConstraintLayout>
-  </androidx.constraintlayout.widget.ConstraintLayout>
-\ No newline at end of file
-diff -crB com.discord-896-base/res/values/dimens.xml com.discord-896/res/values/dimens.xml
-*** com.discord-896-base/res/values/dimens.xml	2019-05-12 12:13:45.377770248 +0300
---- com.discord-896/res/values/dimens.xml	2019-05-12 12:25:17.025177841 +0300
-***************
-*** 327,333 ****
-      <dimen name="uikit_btn_padding_vertical">4.0dip</dimen>
-      <dimen name="uikit_btn_stroke_width">1.0dip</dimen>
-      <dimen name="uikit_btn_wrapped_min_width">96.0dip</dimen>
-!     <dimen name="uikit_guideline_chat">58.0dip</dimen>
-      <dimen name="uikit_guideline_item_row">48.0dip</dimen>
-      <dimen name="uikit_guideline_sheet">72.0dip</dimen>
-      <dimen name="uikit_image_border_size">3.0dip</dimen>
---- 327,333 ----
-      <dimen name="uikit_btn_padding_vertical">4.0dip</dimen>
-      <dimen name="uikit_btn_stroke_width">1.0dip</dimen>
-      <dimen name="uikit_btn_wrapped_min_width">96.0dip</dimen>
-!     <dimen name="uikit_guideline_chat">20.0dip</dimen>
-      <dimen name="uikit_guideline_item_row">48.0dip</dimen>
-      <dimen name="uikit_guideline_sheet">72.0dip</dimen>
-      <dimen name="uikit_image_border_size">3.0dip</dimen>
-
diff --git a/patches/compact/README.md b/patches/compact/README.md
index c61a135..33614ca 100644
--- a/patches/compact/README.md
+++ b/patches/compact/README.md
@@ -31,5 +31,4 @@ This patch, when combined with `smalltime` patch, emulates the "compact"/"irc" t
 - 9.0.1
 - 9.0.2
 - 9.0.3
-- 9.0.4
 
diff --git a/patches/customdefaultemoji/904.patch b/patches/customdefaultemoji/904.patch
deleted file mode 100644
index 974a726..0000000
--- a/patches/customdefaultemoji/904.patch
+++ /dev/null
@@ -1,81 +0,0 @@
-diff -crB com.discord-896-base/smali/com/discord/stores/StoreEmoji.smali com.discord-896/smali/com/discord/stores/StoreEmoji.smali
-*** com.discord-896-base/smali/com/discord/stores/StoreEmoji.smali	2019-05-12 12:13:46.831159818 +0300
---- com.discord-896/smali/com/discord/stores/StoreEmoji.smali	2019-05-12 12:18:56.659462281 +0300
-***************
-*** 101,137 ****
-  
-      const/4 v1, 0x0
-  
-!     const-string v2, "thinking"
-  
-      aput-object v2, v0, v1
-  
-      const/4 v1, 0x1
-  
-!     const-string v2, "ok_hand"
-  
-      aput-object v2, v0, v1
-  
-      const/4 v1, 0x2
-  
-!     const-string v2, "eyes"
-  
-      aput-object v2, v0, v1
-  
-      const/4 v1, 0x3
-  
-!     const-string v2, "sweat_drops"
-  
-      aput-object v2, v0, v1
-  
-      const/4 v1, 0x4
-  
-!     const-string v2, "joy"
-  
-      aput-object v2, v0, v1
-  
-      const/4 v1, 0x5
-  
-!     const-string v2, "pig"
-  
-      aput-object v2, v0, v1
-  
---- 101,137 ----
-  
-      const/4 v1, 0x0
-  
-!     const-string v2, "star"
-  
-      aput-object v2, v0, v1
-  
-      const/4 v1, 0x1
-  
-!     const-string v2, "thinking"
-  
-      aput-object v2, v0, v1
-  
-      const/4 v1, 0x2
-  
-!     const-string v2, "ok_hand"
-  
-      aput-object v2, v0, v1
-  
-      const/4 v1, 0x3
-  
-!     const-string v2, "eyes"
-  
-      aput-object v2, v0, v1
-  
-      const/4 v1, 0x4
-  
-!     const-string v2, "sweat_drops"
-  
-      aput-object v2, v0, v1
-  
-      const/4 v1, 0x5
-  
-!     const-string v2, "joy"
-  
-      aput-object v2, v0, v1
-  
-
diff --git a/patches/customdefaultemoji/README.md b/patches/customdefaultemoji/README.md
index 897f106..80c9ac6 100644
--- a/patches/customdefaultemoji/README.md
+++ b/patches/customdefaultemoji/README.md
@@ -13,5 +13,4 @@ This patch changes default list of custom emojis.
 - 9.0.1
 - 9.0.2
 - 9.0.3
-- 9.0.4
 
diff --git a/patches/customtheme/904.patch b/patches/customtheme/904.patch
deleted file mode 100644
index 3d0d9bd..0000000
--- a/patches/customtheme/904.patch
+++ /dev/null
@@ -1,272 +0,0 @@
-diff -crB com.discord-896-base/res/values/colors.xml com.discord-896/res/values/colors.xml
-*** com.discord-896-base/res/values/colors.xml	2019-05-12 12:13:45.547776826 +0300
---- com.discord-896/res/values/colors.xml	2019-05-12 12:33:31.496710188 +0300
-***************
-*** 50,56 ****
-      <color name="cardview_shadow_start_color">#37000000</color>
-      <color name="code">#ff657b83</color>
-      <color name="colorPrimary">#ff333333</color>
-!     <color name="colorPrimaryDark">#ff1d1d1d</color>
-      <color name="common_google_signin_btn_text_dark_default">@android:color/white</color>
-      <color name="common_google_signin_btn_text_dark_disabled">#1f000000</color>
-      <color name="common_google_signin_btn_text_dark_focused">@android:color/black</color>
---- 50,56 ----
-      <color name="cardview_shadow_start_color">#37000000</color>
-      <color name="code">#ff657b83</color>
-      <color name="colorPrimary">#ff333333</color>
-!     <color name="colorPrimaryDark">#ff000000</color>
-      <color name="common_google_signin_btn_text_dark_default">@android:color/white</color>
-      <color name="common_google_signin_btn_text_dark_disabled">#1f000000</color>
-      <color name="common_google_signin_btn_text_dark_focused">@android:color/black</color>
-***************
-*** 59,66 ****
-      <color name="common_google_signin_btn_text_light_disabled">#1f000000</color>
-      <color name="common_google_signin_btn_text_light_focused">#90000000</color>
-      <color name="common_google_signin_btn_text_light_pressed">#de000000</color>
-!     <color name="dark_grey_2">#ff36393e</color>
-!     <color name="dark_grey_2_alpha_10">#ff303337</color>
-      <color name="design_bottom_navigation_shadow_color">#14000000</color>
-      <color name="design_default_color_primary">#ff3f51b5</color>
-      <color name="design_default_color_primary_dark">#ff303f9f</color>
---- 59,66 ----
-      <color name="common_google_signin_btn_text_light_disabled">#1f000000</color>
-      <color name="common_google_signin_btn_text_light_focused">#90000000</color>
-      <color name="common_google_signin_btn_text_light_pressed">#de000000</color>
-!     <color name="dark_grey_2">#ff000000</color>
-!     <color name="dark_grey_2_alpha_10">#ff000000</color>
-      <color name="design_bottom_navigation_shadow_color">#14000000</color>
-      <color name="design_default_color_primary">#ff3f51b5</color>
-      <color name="design_default_color_primary_dark">#ff303f9f</color>
-***************
-*** 94,102 ****
-      <color name="grey_6">#ff4f545c</color>
-      <color name="grey_6_alpha_05">#0d4f545c</color>
-      <color name="grey_6_alpha_30">#4d4f545c</color>
-!     <color name="grey_account">#ff282b30</color>
-!     <color name="grey_channels">#ff2e3136</color>
-!     <color name="grey_guilds">#ff1e2124</color>
-      <color name="grey_unread">#ff8a8e94</color>
-      <color name="highlighted_text_material_dark">#6680cbc4</color>
-      <color name="highlighted_text_material_light">#66009688</color>
---- 94,102 ----
-      <color name="grey_6">#ff4f545c</color>
-      <color name="grey_6_alpha_05">#0d4f545c</color>
-      <color name="grey_6_alpha_30">#4d4f545c</color>
-!     <color name="grey_account">#ff000000</color>
-!     <color name="grey_channels">#ff000000</color>
-!     <color name="grey_guilds">#ff000000</color>
-      <color name="grey_unread">#ff8a8e94</color>
-      <color name="highlighted_text_material_dark">#6680cbc4</color>
-      <color name="highlighted_text_material_light">#66009688</color>
-***************
-*** 104,118 ****
-      <color name="hypesquad_house2">#fff47b67</color>
-      <color name="hypesquad_house3">#ff45ddc0</color>
-      <color name="league_of_legends">#ff021f25</color>
-!     <color name="link_100">#fff2fbfe</color>
-!     <color name="link_200">#ffcceffd</color>
-!     <color name="link_300">#ff99dffb</color>
-!     <color name="link_400">#ff33c0f6</color>
-!     <color name="link_500">#ff00b0f4</color>
-!     <color name="link_600">#ff0078a6</color>
-!     <color name="link_700">#ff004662</color>
-!     <color name="link_800">#ff003549</color>
-!     <color name="link_900">#ff00090c</color>
-      <color name="material_blue_grey_800">#ff37474f</color>
-      <color name="material_blue_grey_900">#ff263238</color>
-      <color name="material_blue_grey_950">#ff21272b</color>
---- 104,118 ----
-      <color name="hypesquad_house2">#fff47b67</color>
-      <color name="hypesquad_house3">#ff45ddc0</color>
-      <color name="league_of_legends">#ff021f25</color>
-!     <color name="link_100">#ff8cf687</color>
-!     <color name="link_200">#ff7df577</color>
-!     <color name="link_300">#ff6ef368</color>
-!     <color name="link_400">#ff5ff258</color>
-!     <color name="link_500">#ff50f148</color>
-!     <color name="link_600">#ff41f038</color>
-!     <color name="link_700">#ff32ef28</color>
-!     <color name="link_800">#ff23ed19</color>
-!     <color name="link_900">#ff1be411</color>
-      <color name="material_blue_grey_800">#ff37474f</color>
-      <color name="material_blue_grey_900">#ff263238</color>
-      <color name="material_blue_grey_950">#ff21272b</color>
-***************
-*** 154,171 ****
-      <color name="primary_400_alpha_30">#4d7d8187</color>
-      <color name="primary_400_alpha_60">#997d8187</color>
-      <color name="primary_400_alpha_90">#e67d8187</color>
-!     <color name="primary_500">#ff4f545c</color>
-!     <color name="primary_500_alpha_30">#4d4f545c</color>
-!     <color name="primary_500_alpha_60">#994f545c</color>
-!     <color name="primary_500_alpha_90">#e64f545c</color>
-!     <color name="primary_600">#ff36393f</color>
-!     <color name="primary_600_alpha_30">#4d36393f</color>
-!     <color name="primary_600_alpha_60">#9936393f</color>
-!     <color name="primary_600_alpha_90">#e636393f</color>
-!     <color name="primary_630">#ff2f3136</color>
-!     <color name="primary_630_alpha_30">#4d2f3136</color>
-!     <color name="primary_630_alpha_60">#992f3136</color>
-!     <color name="primary_630_alpha_90">#e62f3136</color>
-      <color name="primary_660">#ff292b2f</color>
-      <color name="primary_660_alpha_30">#4d292b2f</color>
-      <color name="primary_660_alpha_60">#99292b2f</color>
---- 154,171 ----
-      <color name="primary_400_alpha_30">#4d7d8187</color>
-      <color name="primary_400_alpha_60">#997d8187</color>
-      <color name="primary_400_alpha_90">#e67d8187</color>
-!     <color name="primary_500">#ff0f0f0f</color>
-!     <color name="primary_500_alpha_30">#4d0f0f0f</color>
-!     <color name="primary_500_alpha_60">#990f0f0f</color>
-!     <color name="primary_500_alpha_90">#e60f0f0f</color>
-!     <color name="primary_600">#ff000000</color>
-!     <color name="primary_600_alpha_30">#4d000000</color>
-!     <color name="primary_600_alpha_60">#99000000</color>
-!     <color name="primary_600_alpha_90">#e6000000</color>
-!     <color name="primary_630">#ff000000</color>
-!     <color name="primary_630_alpha_30">#4d000000</color>
-!     <color name="primary_630_alpha_60">#99000000</color>
-!     <color name="primary_630_alpha_90">#e6000000</color>
-      <color name="primary_660">#ff292b2f</color>
-      <color name="primary_660_alpha_30">#4d292b2f</color>
-      <color name="primary_660_alpha_60">#99292b2f</color>
-***************
-*** 190,198 ****
-      <color name="primary_text_default_material_light">#de000000</color>
-      <color name="primary_text_disabled_material_dark">#4dffffff</color>
-      <color name="primary_text_disabled_material_light">#39000000</color>
-!     <color name="purple_brand">#ff738bd7</color>
-!     <color name="purple_brand_alpha_10">#1a738bd7</color>
-!     <color name="purple_brand_dark">#ff697ec4</color>
-      <color name="purple_brand_hint">#ffc9d2f0</color>
-      <color name="purple_brand_notification">#ff5161ff</color>
-      <color name="reaction_background_me_dark">#4d5c6a9e</color>
---- 190,198 ----
-      <color name="primary_text_default_material_light">#de000000</color>
-      <color name="primary_text_disabled_material_dark">#4dffffff</color>
-      <color name="primary_text_disabled_material_light">#39000000</color>
-!     <color name="purple_brand">#ff9c4249</color>
-!     <color name="purple_brand_alpha_10">#1a9c4249</color>
-!     <color name="purple_brand_dark">#ff000000</color>
-      <color name="purple_brand_hint">#ffc9d2f0</color>
-      <color name="purple_brand_notification">#ff5161ff</color>
-      <color name="reaction_background_me_dark">#4d5c6a9e</color>
-diff -crB com.discord-896-base/res/values/styles.xml com.discord-896/res/values/styles.xml
-*** com.discord-896-base/res/values/styles.xml	2019-05-12 12:13:45.444439495 +0300
---- com.discord-896/res/values/styles.xml	2019-05-12 12:25:58.908605844 +0300
-***************
-*** 113,119 ****
-          <item name="colorPrimary">@color/primary_600</item>
-          <item name="colorPrimaryBg">@drawable/drawable_uikit_primary_600_bg_dark</item>
-          <item name="colorPrimaryCircle">@drawable/drawable_uikit_primary_600_circle</item>
-!         <item name="colorPrimaryDark">#ff2b2e31</item>
-          <item name="colorPrimaryDivider">@color/primary_500_alpha_60</item>
-          <item name="colorPrimaryTabs">@color/black_alpha_05</item>
-          <item name="dialogTheme">@style/AppTheme.Dark.Notice</item>
---- 113,119 ----
-          <item name="colorPrimary">@color/primary_600</item>
-          <item name="colorPrimaryBg">@drawable/drawable_uikit_primary_600_bg_dark</item>
-          <item name="colorPrimaryCircle">@drawable/drawable_uikit_primary_600_circle</item>
-!         <item name="colorPrimaryDark">@color/primary_630</item>
-          <item name="colorPrimaryDivider">@color/primary_500_alpha_60</item>
-          <item name="colorPrimaryTabs">@color/black_alpha_05</item>
-          <item name="dialogTheme">@style/AppTheme.Dark.Notice</item>
-***************
-*** 331,337 ****
-          <item name="tabSelectedTextColor">@color/white</item>
-          <item name="tabTextColor">@color/white_alpha_40</item>
-          <item name="theme_backspace_icon">@drawable/ic_backspace_white_24dp</item>
-!         <item name="theme_chat_blocked_bg">#ff34373c</item>
-          <item name="theme_chat_blocked_text">@color/grey_unread</item>
-          <item name="theme_chat_code">@color/grey_channels</item>
-          <item name="theme_chat_codeblock_border">@color/grey_account</item>
---- 331,337 ----
-          <item name="tabSelectedTextColor">@color/white</item>
-          <item name="tabTextColor">@color/white_alpha_40</item>
-          <item name="theme_backspace_icon">@drawable/ic_backspace_white_24dp</item>
-!         <item name="theme_chat_blocked_bg">@color/primary_500</item>
-          <item name="theme_chat_blocked_text">@color/grey_unread</item>
-          <item name="theme_chat_code">@color/grey_channels</item>
-          <item name="theme_chat_codeblock_border">@color/grey_account</item>
-***************
-*** 345,356 ****
-          <item name="theme_chat_input_button_tint_colors">@color/chat_input_button_tint_colors_dark</item>
-          <item name="theme_chat_input_content_tab_bg">@drawable/drawable_rect_rounded_dark</item>
-          <item name="theme_chat_input_divider">@color/dark_grey_2_alpha_10</item>
-!         <item name="theme_chat_input_edit">#ff3e4145</item>
-          <item name="theme_chat_input_photo_selection_icon">@drawable/ic_img_selected_dark_theme</item>
-          <item name="theme_chat_input_text">@color/white_alpha_70</item>
-          <item name="theme_chat_input_text_placeholder">@color/white_alpha_20</item>
-          <item name="theme_chat_loading_spinner_color">@color/white</item>
-!         <item name="theme_chat_mentioned_me">#1afaa61a</item>
-          <item name="theme_chat_name">@color/white</item>
-          <item name="theme_chat_reaction_background">@drawable/drawable_bg_reaction_dark</item>
-          <item name="theme_chat_reaction_text_color">@drawable/drawable_reaction_text_color_dark</item>
---- 345,356 ----
-          <item name="theme_chat_input_button_tint_colors">@color/chat_input_button_tint_colors_dark</item>
-          <item name="theme_chat_input_content_tab_bg">@drawable/drawable_rect_rounded_dark</item>
-          <item name="theme_chat_input_divider">@color/dark_grey_2_alpha_10</item>
-!         <item name="theme_chat_input_edit">@color/primary_600</item>
-          <item name="theme_chat_input_photo_selection_icon">@drawable/ic_img_selected_dark_theme</item>
-          <item name="theme_chat_input_text">@color/white_alpha_70</item>
-          <item name="theme_chat_input_text_placeholder">@color/white_alpha_20</item>
-          <item name="theme_chat_loading_spinner_color">@color/white</item>
-!         <item name="theme_chat_mentioned_me">@color/purple_brand_alpha_10</item>
-          <item name="theme_chat_name">@color/white</item>
-          <item name="theme_chat_reaction_background">@drawable/drawable_bg_reaction_dark</item>
-          <item name="theme_chat_reaction_text_color">@drawable/drawable_reaction_text_color_dark</item>
-***************
-*** 416,422 ****
-          <item name="colorControlActivated">@color/brand_500</item>
-          <item name="colorControlNormal">@color/primary_100</item>
-          <item name="colorPrimary">@color/primary_600</item>
-!         <item name="colorPrimaryDark">#ff2b2e31</item>
-      </style>
-      <style name="AppTheme.Dark.Evil" parent="@style/AppTheme.Dark">
-          <item name="colorAccent">@color/brand_600</item>
---- 416,422 ----
-          <item name="colorControlActivated">@color/brand_500</item>
-          <item name="colorControlNormal">@color/primary_100</item>
-          <item name="colorPrimary">@color/primary_600</item>
-!         <item name="colorPrimaryDark">@color/primary_630</item>
-      </style>
-      <style name="AppTheme.Dark.Evil" parent="@style/AppTheme.Dark">
-          <item name="colorAccent">@color/brand_600</item>
-***************
-*** 448,454 ****
-          <item name="colorControlActivated">@color/brand_500</item>
-          <item name="colorControlNormal">@color/primary_100</item>
-          <item name="colorPrimary">@color/primary_600</item>
-!         <item name="colorPrimaryDark">#ff2b2e31</item>
-      </style>
-      <style name="AppTheme.Dark.Notice.PositiveRed" parent="@style/AppTheme.Dark.Notice">
-          <item name="buttonBarPositiveButtonStyle">@style/UiKit.Button.Red.Fit</item>
---- 448,454 ----
-          <item name="colorControlActivated">@color/brand_500</item>
-          <item name="colorControlNormal">@color/primary_100</item>
-          <item name="colorPrimary">@color/primary_600</item>
-!         <item name="colorPrimaryDark">@color/primary_630</item>
-      </style>
-      <style name="AppTheme.Dark.Notice.PositiveRed" parent="@style/AppTheme.Dark.Notice">
-          <item name="buttonBarPositiveButtonStyle">@style/UiKit.Button.Red.Fit</item>
-diff -crB com.discord-896-base/smali/com/discord/app/AppActivity$d.smali com.discord-896/smali/com/discord/app/AppActivity$d.smali
-*** com.discord-896-base/smali/com/discord/app/AppActivity$d.smali	2019-05-12 12:13:46.647819391 +0300
---- com.discord-896/smali/com/discord/app/AppActivity$d.smali	2019-05-12 12:35:10.823693522 +0300
-***************
-*** 119,125 ****
-  
-      check-cast v0, Landroid/app/Activity;
-  
-!     const v1, 0x7f060134
-  
-      invoke-static {v0, v1}, Lcom/discord/utilities/color/ColorCompat;->setStatusBarColorResourceId(Landroid/app/Activity;I)V
-  
---- 119,125 ----
-  
-      check-cast v0, Landroid/app/Activity;
-  
-!     const v1, 0x7f060021
-  
-      invoke-static {v0, v1}, Lcom/discord/utilities/color/ColorCompat;->setStatusBarColorResourceId(Landroid/app/Activity;I)V
-  
-
diff --git a/patches/customtheme/README.md b/patches/customtheme/README.md
index dfed9a5..96e5eb8 100644
--- a/patches/customtheme/README.md
+++ b/patches/customtheme/README.md
@@ -41,7 +41,6 @@ Self note: Top bar color is set by `setStatusBarColorResourceId`
 - 9.0.1
 - 9.0.2
 - 9.0.3
-- 9.0.4
 
 #### Value reference
 
diff --git a/patches/customversion/904.patch b/patches/customversion/904.patch
deleted file mode 100644
index 81e2789..0000000
--- a/patches/customversion/904.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-diff -crB from/smali/com/discord/widgets/settings/WidgetSettings.smali to/smali/com/discord/widgets/settings/WidgetSettings.smali
-*** from/smali/com/discord/widgets/settings/WidgetSettings.smali	2019-04-25 10:45:13.020971416 +0300
---- to/smali/com/discord/widgets/settings/WidgetSettings.smali	2019-04-25 11:23:43.707505980 +0300
-***************
-*** 1475,1481 ****
-  
-      invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-  
-!     const-string v2, " - 9.0.4 (904)"
-  
-      invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-  
---- 1475,1481 ----
-  
-      invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-  
-!     const-string v2, " - 9.0.4 (904), with Cutthecord patches"
-  
-      invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-  
diff --git a/patches/customversion/README.md b/patches/customversion/README.md
index 1025e5e..7c7942c 100644
--- a/patches/customversion/README.md
+++ b/patches/customversion/README.md
@@ -34,5 +34,4 @@ This patch replaces version string and adds mention of cutthecord in the user se
 - 9.0.1
 - 9.0.2
 - 9.0.3
-- 9.0.4
 
diff --git a/patches/disable-mobileindicator/904.patch b/patches/disable-mobileindicator/904.patch
deleted file mode 100644
index d5ebc94..0000000
--- a/patches/disable-mobileindicator/904.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-diff -crB from/smali/com/discord/utilities/analytics/AnalyticSuperProperties.smali to/smali/com/discord/utilities/analytics/AnalyticSuperProperties.smali
-*** from/smali/com/discord/utilities/analytics/AnalyticSuperProperties.smali	2019-05-12 12:13:46.907829452 +0300
---- to/smali/com/discord/utilities/analytics/AnalyticSuperProperties.smali	2019-05-12 12:15:28.840480063 +0300
-***************
-*** 180,186 ****
-  
-      const-string v1, "browser"
-  
-!     const-string v2, "Discord Android"
-  
-      .line 64
-      invoke-static {v1, v2}, Lkotlin/q;->m(Ljava/lang/Object;Ljava/lang/Object;)Lkotlin/Pair;
---- 180,186 ----
-  
-      const-string v1, "browser"
-  
-!     const-string v2, "Discord Client"
-  
-      .line 64
-      invoke-static {v1, v2}, Lkotlin/q;->m(Ljava/lang/Object;Ljava/lang/Object;)Lkotlin/Pair;
diff --git a/patches/disable-mobileindicator/README.md b/patches/disable-mobileindicator/README.md
index ee8a65c..7a3c690 100644
--- a/patches/disable-mobileindicator/README.md
+++ b/patches/disable-mobileindicator/README.md
@@ -35,5 +35,4 @@ However, this causes some issues. See the `Bugs / Side effects` list below.
 - 9.0.1
 - 9.0.2
 - 9.0.3
-- 9.0.4
 
diff --git a/patches/experiments/904.patch b/patches/experiments/904.patch
deleted file mode 100644
index f8cff27..0000000
--- a/patches/experiments/904.patch
+++ /dev/null
@@ -1,179 +0,0 @@
-diff -crB com.discord-902-base/smali/com/discord/stores/StoreExperiments$getExperimentalAlpha$1.smali com.discord-902/smali/com/discord/stores/StoreExperiments$getExperimentalAlpha$1.smali
-*** com.discord-902-base/smali/com/discord/stores/StoreExperiments$getExperimentalAlpha$1.smali	2019-05-23 08:24:33.766790801 +0300
---- com.discord-902/smali/com/discord/stores/StoreExperiments$getExperimentalAlpha$1.smali	2019-05-23 08:37:50.390709027 +0300
-***************
-*** 80,108 ****
-  
-  .method public final call(Lcom/discord/models/domain/ModelUser;Lcom/discord/models/domain/ModelGuild;)Z
-      .locals 1
-- 
--     const-string v0, "meUser"
-- 
--     .line 95
--     invoke-static {p1, v0}, Lkotlin/jvm/internal/k;->g(Ljava/lang/Object;Ljava/lang/String;)V
-- 
--     invoke-virtual {p1}, Lcom/discord/models/domain/ModelUser;->isStaff()Z
-- 
--     move-result p1
-- 
--     if-nez p1, :cond_1
-- 
--     if-eqz p2, :cond_0
-- 
--     goto :goto_0
-- 
--     :cond_0
--     const/4 p1, 0x0
-- 
--     return p1
-- 
--     :cond_1
--     :goto_0
-      const/4 p1, 0x1
-  
-      return p1
---- 80,85 ----
-Only in com.discord-902/smali/com/discord/stores: StoreExperiments$getExperimentalAlpha$1.smali.orig
-Only in com.discord-902/smali/com/discord/stores: StoreExperiments$getExperimentalAlpha$1.smali.rej
-diff -crB com.discord-902-base/smali/com/discord/stores/StoreExperiments.smali com.discord-902/smali/com/discord/stores/StoreExperiments.smali
-*** com.discord-902-base/smali/com/discord/stores/StoreExperiments.smali	2019-05-23 08:24:33.773457493 +0300
---- com.discord-902/smali/com/discord/stores/StoreExperiments.smali	2019-05-23 08:34:47.096334318 +0300
-***************
-*** 1224,1280 ****
-  .end method
-  
-  .method public final isExperimentalAlpha()Z
-!     .locals 4
-! 
-!     .line 88
-!     iget-boolean v0, p0, Lcom/discord/stores/StoreExperiments;->initialized:Z
-! 
-!     const/4 v1, 0x1
-! 
-!     if-eqz v0, :cond_0
-! 
-!     iget-object v0, p0, Lcom/discord/stores/StoreExperiments;->stream:Lcom/discord/stores/StoreStream;
-! 
-!     iget-object v0, v0, Lcom/discord/stores/StoreStream;->users:Lcom/discord/stores/StoreUser;
-! 
-!     iget-object v0, v0, Lcom/discord/stores/StoreUser;->me:Lcom/discord/models/domain/ModelUser$Me;
-! 
-!     if-eqz v0, :cond_0
-! 
-!     invoke-virtual {v0}, Lcom/discord/models/domain/ModelUser$Me;->isStaff()Z
-! 
-!     move-result v0
-! 
-!     if-eq v0, v1, :cond_1
-! 
-!     :cond_0
-!     iget-object v0, p0, Lcom/discord/stores/StoreExperiments;->stream:Lcom/discord/stores/StoreStream;
-! 
-!     iget-object v0, v0, Lcom/discord/stores/StoreStream;->guilds:Lcom/discord/stores/StoreGuilds;
-! 
-!     iget-object v0, v0, Lcom/discord/stores/StoreGuilds;->guilds:Ljava/util/Map;
-! 
-!     const-string v2, "stream.guilds.guilds"
-! 
-!     invoke-static {v0, v2}, Lkotlin/jvm/internal/k;->g(Ljava/lang/Object;Ljava/lang/String;)V
-! 
-!     const-wide v2, 0x2bc056ab0800006L
-! 
-!     invoke-static {v2, v3}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
-! 
-!     move-result-object v2
-! 
-!     invoke-interface {v0, v2}, Ljava/util/Map;->containsKey(Ljava/lang/Object;)Z
-! 
-!     move-result v0
-! 
-!     if-eqz v0, :cond_2
-! 
-!     :cond_1
-!     return v1
-! 
-!     :cond_2
-!     const/4 v0, 0x0
-  
-      return v0
-  .end method
---- 1224,1231 ----
-  .end method
-  
-  .method public final isExperimentalAlpha()Z
-!     .locals 1
-!     const/4 v0, 0x1
-  
-      return v0
-  .end method
-Only in com.discord-902/smali/com/discord/stores: StoreExperiments.smali.orig
-Only in com.discord-902/smali/com/discord/stores: StoreExperiments.smali.rej
-diff -crB com.discord-902-base/smali/com/discord/widgets/settings/WidgetSettingsAppearance$Model$Companion$get$1.smali com.discord-902/smali/com/discord/widgets/settings/WidgetSettingsAppearance$Model$Companion$get$1.smali
-*** com.discord-902-base/smali/com/discord/widgets/settings/WidgetSettingsAppearance$Model$Companion$get$1.smali	2019-05-23 08:24:34.436793339 +0300
---- com.discord-902/smali/com/discord/widgets/settings/WidgetSettingsAppearance$Model$Companion$get$1.smali	2019-05-23 08:33:50.496021268 +0300
-***************
-*** 77,87 ****
-      const-string v0, "meUser"
-  
-      .line 187
-!     invoke-static {p1, v0}, Lkotlin/jvm/internal/k;->g(Ljava/lang/Object;Ljava/lang/String;)V
-! 
-!     invoke-virtual {p1}, Lcom/discord/models/domain/ModelUser;->isStaff()Z
-! 
-!     move-result v2
-  
-      const-string v1, "fontScale"
-  
---- 77,83 ----
-      const-string v0, "meUser"
-  
-      .line 187
-!     const/4 v2, 0x1
-  
-      const-string v1, "fontScale"
-  
-***************
-*** 95,105 ****
-      const-string p3, "isAlphaTesterOrStaff"
-  
-      .line 189
-!     invoke-static {p4, p3}, Lkotlin/jvm/internal/k;->g(Ljava/lang/Object;Ljava/lang/String;)V
-! 
-!     invoke-virtual {p4}, Ljava/lang/Boolean;->booleanValue()Z
-! 
-!     move-result v4
-  
-      .line 190
-      invoke-static {p1, v0}, Lkotlin/jvm/internal/k;->g(Ljava/lang/Object;Ljava/lang/String;)V
---- 91,97 ----
-      const-string p3, "isAlphaTesterOrStaff"
-  
-      .line 189
-!     const/4 v4, 0x1
-  
-      .line 190
-      invoke-static {p1, v0}, Lkotlin/jvm/internal/k;->g(Ljava/lang/Object;Ljava/lang/String;)V
-Only in com.discord-902/smali/com/discord/widgets/settings: WidgetSettingsAppearance$Model$Companion$get$1.smali.orig
-Only in com.discord-902/smali/com/discord/widgets/settings: WidgetSettingsAppearance$Model$Companion$get$1.smali.rej
-diff -crB com.discord-902-base/smali/com/discord/widgets/settings/WidgetSettings.smali com.discord-902/smali/com/discord/widgets/settings/WidgetSettings.smali
-*** com.discord-902-base/smali/com/discord/widgets/settings/WidgetSettings.smali	2019-05-23 08:24:34.440126684 +0300
---- com.discord-902/smali/com/discord/widgets/settings/WidgetSettings.smali	2019-05-23 08:33:06.439121048 +0300
-***************
-*** 783,791 ****
-      if-eqz p1, :cond_1
-  
-      .line 121
-!     invoke-virtual {p1}, Lcom/discord/models/domain/ModelUser;->isStaff()Z
-! 
-!     move-result v2
-  
-      if-eq v2, v0, :cond_0
-  
---- 783,789 ----
-      if-eqz p1, :cond_1
-  
-      .line 121
-!     const/4 v2, 0x1
-  
-      if-eq v2, v0, :cond_0
-  
diff --git a/patches/experiments/README.md b/patches/experiments/README.md
index de58830..b5867a0 100644
--- a/patches/experiments/README.md
+++ b/patches/experiments/README.md
@@ -37,5 +37,4 @@ Conflicts with pureevil as it's included here.
 - 9.0.1
 - 9.0.2
 - 9.0.3
-- 9.0.4
 
diff --git a/patches/litecord/904.patch b/patches/litecord/904.patch
deleted file mode 100644
index 18d3b74..0000000
--- a/patches/litecord/904.patch
+++ /dev/null
@@ -1,289 +0,0 @@
-diff -crB from/smali/com/discord/app/App.smali to/smali/com/discord/app/App.smali
-*** from/smali/com/discord/app/App.smali	2019-05-23 08:24:33.343455864 +0300
---- to/smali/com/discord/app/App.smali	2019-05-23 08:28:16.254248232 +0300
-***************
-*** 212,218 ****
-  
-      invoke-virtual {v0, v1}, Lcom/discord/utilities/view/text/LinkifiedTextView$Companion;->init(Lkotlin/jvm/functions/Function2;)Lkotlin/Unit;
-  
-!     const-string v0, "https://cdn.discordapp.com"
-  
-      .line 71
-      invoke-static {v0}, Lcom/discord/models/domain/emoji/ModelEmojiCustom;->setCdnUri(Ljava/lang/String;)V
---- 212,218 ----
-  
-      invoke-virtual {v0, v1}, Lcom/discord/utilities/view/text/LinkifiedTextView$Companion;->init(Lkotlin/jvm/functions/Function2;)Lkotlin/Unit;
-  
-!     const-string v0, "https://dev.litecord.top"
-  
-      .line 71
-      invoke-static {v0}, Lcom/discord/models/domain/emoji/ModelEmojiCustom;->setCdnUri(Ljava/lang/String;)V
-diff -crB from/smali/com/discord/BuildConfig.smali to/smali/com/discord/BuildConfig.smali
-*** from/smali/com/discord/BuildConfig.smali	2019-05-23 08:24:33.336789172 +0300
---- to/smali/com/discord/BuildConfig.smali	2019-05-23 08:28:16.254248232 +0300
-***************
-*** 16,30 ****
-  
-  .field public static final FLAVOR_internalExternal:Ljava/lang/String; = "external"
-  
-! .field public static final HOST:Ljava/lang/String; = "https://discordapp.com"
-  
-! .field public static final HOST_API:Ljava/lang/String; = "https://discordapp.com/api/"
-  
-! .field public static final HOST_CDN:Ljava/lang/String; = "https://cdn.discordapp.com"
-  
-  .field public static final HOST_GIFT:Ljava/lang/String; = "https://discord.gift"
-  
-! .field public static final HOST_INVITE:Ljava/lang/String; = "https://discord.gg"
-  
-  .field public static final LOCAL_IP:Ljava/lang/String; = ""
-  
---- 16,30 ----
-  
-  .field public static final FLAVOR_internalExternal:Ljava/lang/String; = "external"
-  
-! .field public static final HOST:Ljava/lang/String; = "https://dev.litecord.top"
-  
-! .field public static final HOST_API:Ljava/lang/String; = "https://dev.litecord.top/api/"
-  
-! .field public static final HOST_CDN:Ljava/lang/String; = "https://dev.litecord.top"
-  
-  .field public static final HOST_GIFT:Ljava/lang/String; = "https://discord.gift"
-  
-! .field public static final HOST_INVITE:Ljava/lang/String; = "https://dev.litecord.top"
-  
-  .field public static final LOCAL_IP:Ljava/lang/String; = ""
-  
-diff -crB from/smali/com/discord/gateway/GatewaySocket.smali to/smali/com/discord/gateway/GatewaySocket.smali
-*** from/smali/com/discord/gateway/GatewaySocket.smali	2019-05-23 08:24:33.396789400 +0300
---- to/smali/com/discord/gateway/GatewaySocket.smali	2019-05-23 08:28:16.257581581 +0300
-***************
-*** 42,48 ****
-      .end annotation
-  .end field
-  
-! .field private static final GATEWAY_COMPRESSION:Ljava/lang/String; = "zlib-stream"
-  
-  .field private static final GATEWAY_ENCODING:Ljava/lang/String; = "json"
-  
---- 42,48 ----
-      .end annotation
-  .end field
-  
-! .field private static final GATEWAY_COMPRESSION:Ljava/lang/String; = ""
-  
-  .field private static final GATEWAY_ENCODING:Ljava/lang/String; = "json"
-  
-***************
-*** 1050,1056 ****
-  
-      invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-  
-!     const-string p1, "/?encoding=json&v=6&compress=zlib-stream"
-  
-      invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-  
---- 1050,1056 ----
-  
-      invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-  
-!     const-string p1, "/?encoding=json&v=6"
-  
-      invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-  
-diff -crB from/smali/com/discord/gateway/io/OutgoingPayload$Identify.smali to/smali/com/discord/gateway/io/OutgoingPayload$Identify.smali
-*** from/smali/com/discord/gateway/io/OutgoingPayload$Identify.smali	2019-05-23 08:24:33.400122745 +0300
---- to/smali/com/discord/gateway/io/OutgoingPayload$Identify.smali	2019-05-23 08:28:16.257581581 +0300
-***************
-*** 59,64 ****
---- 59,66 ----
-  
-      const/4 v0, 0x0
-  
-+     const/4 p3, 0x0
-+ 
-      .line 27
-      invoke-direct {p0, v0}, Lcom/discord/gateway/io/OutgoingPayload;-><init>(Lkotlin/jvm/internal/DefaultConstructorMarker;)V
-  
-diff -crB from/smali/com/discord/stores/StoreGatewayConnection.smali to/smali/com/discord/stores/StoreGatewayConnection.smali
-*** from/smali/com/discord/stores/StoreGatewayConnection.smali	2019-05-23 08:24:33.783457530 +0300
---- to/smali/com/discord/stores/StoreGatewayConnection.smali	2019-05-23 08:28:16.257581581 +0300
-***************
-*** 1337,1343 ****
-  
-      check-cast v2, Lcom/discord/restapi/RequiredHeadersInterceptor$HeadersProvider;
-  
-!     const-string v3, "https://discordapp.com/api/"
-  
-      invoke-direct {v9, v3, v2, v0}, Lcom/discord/gateway/rest/RestConfig;-><init>(Ljava/lang/String;Lcom/discord/restapi/RequiredHeadersInterceptor$HeadersProvider;Ljava/util/List;)V
-  
---- 1337,1343 ----
-  
-      check-cast v2, Lcom/discord/restapi/RequiredHeadersInterceptor$HeadersProvider;
-  
-!     const-string v3, "https://dev.litecord.top/api/"
-  
-      invoke-direct {v9, v3, v2, v0}, Lcom/discord/gateway/rest/RestConfig;-><init>(Ljava/lang/String;Lcom/discord/restapi/RequiredHeadersInterceptor$HeadersProvider;Ljava/util/List;)V
-  
-diff -crB from/smali/com/discord/utilities/icon/IconUtils.smali to/smali/com/discord/utilities/icon/IconUtils.smali
-*** from/smali/com/discord/utilities/icon/IconUtils.smali	2019-05-23 08:24:34.003458364 +0300
---- to/smali/com/discord/utilities/icon/IconUtils.smali	2019-05-23 08:28:16.257581581 +0300
-***************
-*** 377,383 ****
-      goto :goto_2
-  
-      :cond_1
-!     const-string p3, "https://cdn.discordapp.com"
-  
-      .line 110
-      check-cast p3, Ljava/lang/CharSequence;
---- 377,383 ----
-      goto :goto_2
-  
-      :cond_1
-!     const-string p3, "https://dev.litecord.top"
-  
-      .line 110
-      check-cast p3, Ljava/lang/CharSequence;
-***************
-*** 425,431 ****
-      :cond_3
-      new-instance p3, Ljava/lang/StringBuilder;
-  
-!     const-string v0, "https://cdn.discordapp.com/channel-icons/"
-  
-      invoke-direct {p3, v0}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-  
---- 425,431 ----
-      :cond_3
-      new-instance p3, Ljava/lang/StringBuilder;
-  
-!     const-string v0, "https://dev.litecord.top/channel-icons/"
-  
-      invoke-direct {p3, v0}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-  
-***************
-*** 715,721 ****
-      goto :goto_2
-  
-      :cond_0
-!     const-string p2, "https://cdn.discordapp.com"
-  
-      .line 143
-      check-cast p2, Ljava/lang/CharSequence;
---- 715,721 ----
-      goto :goto_2
-  
-      :cond_0
-!     const-string p2, "https://dev.litecord.top"
-  
-      .line 143
-      check-cast p2, Ljava/lang/CharSequence;
-***************
-*** 792,798 ****
-      :goto_1
-      new-instance p3, Ljava/lang/StringBuilder;
-  
-!     const-string v0, "https://cdn.discordapp.com/icons/"
-  
-      invoke-direct {p3, v0}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-  
---- 792,798 ----
-      :goto_1
-      new-instance p3, Ljava/lang/StringBuilder;
-  
-!     const-string v0, "https://dev.litecord.top/icons/"
-  
-      invoke-direct {p3, v0}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-  
-***************
-*** 1011,1017 ****
-      :cond_0
-      if-eqz p1, :cond_4
-  
-!     const-string p2, "https://cdn.discordapp.com"
-  
-      .line 89
-      check-cast p2, Ljava/lang/CharSequence;
---- 1011,1017 ----
-      :cond_0
-      if-eqz p1, :cond_4
-  
-!     const-string p2, "https://dev.litecord.top"
-  
-      .line 89
-      check-cast p2, Ljava/lang/CharSequence;
-***************
-*** 1078,1084 ****
-      :goto_1
-      new-instance p3, Ljava/lang/StringBuilder;
-  
-!     const-string v0, "https://cdn.discordapp.com/avatars/"
-  
-      invoke-direct {p3, v0}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-  
---- 1078,1084 ----
-      :goto_1
-      new-instance p3, Ljava/lang/StringBuilder;
-  
-!     const-string v0, "https://dev.litecord.top/avatars/"
-  
-      invoke-direct {p3, v0}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-  
-***************
-*** 2036,2042 ****
-      .line 185
-      new-instance v0, Ljava/lang/StringBuilder;
-  
-!     const-string v1, "https://cdn.discordapp.com/app-assets/"
-  
-      invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-  
---- 2036,2042 ----
-      .line 185
-      new-instance v0, Ljava/lang/StringBuilder;
-  
-!     const-string v1, "https://dev.litecord.top/app-assets/"
-  
-      invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-  
-diff -crB from/smali/com/discord/utilities/rest/RestAPI$Companion.smali to/smali/com/discord/utilities/rest/RestAPI$Companion.smali
-*** from/smali/com/discord/utilities/rest/RestAPI$Companion.smali	2019-05-23 08:24:34.036791824 +0300
---- to/smali/com/discord/utilities/rest/RestAPI$Companion.smali	2019-05-23 08:28:16.257581581 +0300
-***************
-*** 320,326 ****
-  
-      check-cast v6, Lokhttp3/m;
-  
-!     const-string v9, "https://discordapp.com/api/"
-  
-      invoke-direct {v0, v9, v6}, Lcom/discord/restapi/RestAPIBuilder;-><init>(Ljava/lang/String;Lokhttp3/m;)V
-  
---- 320,326 ----
-  
-      check-cast v6, Lokhttp3/m;
-  
-!     const-string v9, "https://dev.litecord.top/api/"
-  
-      invoke-direct {v0, v9, v6}, Lcom/discord/restapi/RestAPIBuilder;-><init>(Ljava/lang/String;Lokhttp3/m;)V
-  
-diff -crB from/smali/com/discord/widgets/chat/list/WidgetChatListAdapterItemGameInvite.smali to/smali/com/discord/widgets/chat/list/WidgetChatListAdapterItemGameInvite.smali
-*** from/smali/com/discord/widgets/chat/list/WidgetChatListAdapterItemGameInvite.smali	2019-05-23 08:24:34.236792581 +0300
---- to/smali/com/discord/widgets/chat/list/WidgetChatListAdapterItemGameInvite.smali	2019-05-23 08:28:16.257581581 +0300
-***************
-*** 606,612 ****
-      .line 106
-      new-instance v1, Ljava/lang/StringBuilder;
-  
-!     const-string v6, "https://cdn.discordapp.com/app-icons/"
-  
-      invoke-direct {v1, v6}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-  
---- 606,612 ----
-      .line 106
-      new-instance v1, Ljava/lang/StringBuilder;
-  
-!     const-string v6, "https://dev.litecord.top/app-icons/"
-  
-      invoke-direct {v1, v6}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-  
diff --git a/patches/litecord/README.md b/patches/litecord/README.md
index fcf2e60..1ee3c39 100644
--- a/patches/litecord/README.md
+++ b/patches/litecord/README.md
@@ -38,5 +38,4 @@ Conflicts with nozlib as it's included here.
 - 9.0.1
 - 9.0.2
 - 9.0.3
-- 9.0.4
 
diff --git a/patches/mutant/904.patch b/patches/mutant/904.patch
deleted file mode 100644
index 566c23b..0000000
--- a/patches/mutant/904.patch
+++ /dev/null
@@ -1,1907 +0,0 @@
-*** com.discord-832-base/assets/data/emojis.json  2019-01-19 04:41:50.983097375 +0300
---- com.discord-832/assets/data/emojis.json 2019-01-22 23:29:58.633342294 +0300
-***************
-*** 549,554 ****
---- 549,568 ----
-      },
-      {
-        "names": [
-+         "raised_hands_paw"
-+       ],
-+       "surrogates": "🙌􁙐",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-+         "raised_hands_claw"
-+       ],
-+       "surrogates": "🙌􁙑",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-          "clap"
-        ],
-        "surrogates": "👏",
-***************
-*** 556,561 ****
---- 570,589 ----
-      },
-      {
-        "names": [
-+         "clap_paw"
-+       ],
-+       "surrogates": "👏􁙐",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-+         "clap_claw"
-+       ],
-+       "surrogates": "👏􁙑",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-          "wave"
-        ],
-        "surrogates": "👋",
-***************
-*** 563,568 ****
---- 591,610 ----
-      },
-      {
-        "names": [
-+         "wave_paw"
-+       ],
-+       "surrogates": "👋􁙐",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-+         "wave_claw"
-+       ],
-+       "surrogates": "👋􁙑",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-          "thumbsup",
-          "+1",
-          "thumbup"
-***************
-*** 572,577 ****
---- 614,637 ----
-      },
-      {
-        "names": [
-+         "thumbsup_paw",
-+         "+1_paw",
-+         "thumbup_paw"
-+       ],
-+       "surrogates": "👍􁙐",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-+         "thumbsup_claw",
-+         "+1_claw",
-+         "thumbup_claw"
-+       ],
-+       "surrogates": "👍􁙑",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-          "thumbsdown",
-          "-1",
-          "thumbdown"
-***************
-*** 581,586 ****
---- 641,664 ----
-      },
-      {
-        "names": [
-+         "thumbsdown_paw",
-+         "-1_paw",
-+         "thumbdown_paw"
-+       ],
-+       "surrogates": "👎􁙐",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-+         "thumbsdown_claw",
-+         "-1_claw",
-+         "thumbdown_claw"
-+       ],
-+       "surrogates": "👎􁙑",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-          "punch"
-        ],
-        "surrogates": "👊",
-***************
-*** 588,593 ****
---- 666,685 ----
-      },
-      {
-        "names": [
-+         "punch_paw"
-+       ],
-+       "surrogates": "👊􁙐",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-+         "punch_claw"
-+       ],
-+       "surrogates": "👊􁙑",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-          "fist"
-        ],
-        "surrogates": "✊",
-***************
-*** 595,600 ****
---- 687,706 ----
-      },
-      {
-        "names": [
-+         "fist_paw"
-+       ],
-+       "surrogates": "✊􁙐",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-+         "fist_claw"
-+       ],
-+       "surrogates": "✊􁙑",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-          "v"
-        ],
-        "surrogates": "✌",
-***************
-*** 602,607 ****
---- 708,727 ----
-      },
-      {
-        "names": [
-+         "v_paw"
-+       ],
-+       "surrogates": "✌􁙐",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-+         "v_claw"
-+       ],
-+       "surrogates": "✌􁙑",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-          "ok_hand"
-        ],
-        "surrogates": "👌",
-***************
-*** 609,614 ****
---- 729,748 ----
-      },
-      {
-        "names": [
-+         "ok_hand_paw"
-+       ],
-+       "surrogates": "👌􁙐",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-+         "ok_hand_claw"
-+       ],
-+       "surrogates": "👌􁙑",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-          "raised_hand"
-        ],
-        "surrogates": "✋",
-***************
-*** 616,621 ****
---- 750,769 ----
-      },
-      {
-        "names": [
-+         "raised_hand_paw"
-+       ],
-+       "surrogates": "✋􁙐",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-+         "raised_hand_claw"
-+       ],
-+       "surrogates": "✋􁙑",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-          "open_hands"
-        ],
-        "surrogates": "👐",
-***************
-*** 623,628 ****
---- 771,790 ----
-      },
-      {
-        "names": [
-+         "open_hands_paw"
-+       ],
-+       "surrogates": "👐􁙐",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-+         "open_hands_claw"
-+       ],
-+       "surrogates": "👐􁙑",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-          "muscle"
-        ],
-        "surrogates": "💪",
-***************
-*** 630,635 ****
---- 792,811 ----
-      },
-      {
-        "names": [
-+         "muscle_paw"
-+       ],
-+       "surrogates": "💪􁙐",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-+         "muscle_claw"
-+       ],
-+       "surrogates": "💪􁙑",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-          "pray"
-        ],
-        "surrogates": "🙏",
-***************
-*** 637,642 ****
---- 813,832 ----
-      },
-      {
-        "names": [
-+         "pray_paw"
-+       ],
-+       "surrogates": "🙏􁙐",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-+         "pray_claw"
-+       ],
-+       "surrogates": "🙏􁙑",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-          "point_up"
-        ],
-        "surrogates": "☝",
-***************
-*** 644,649 ****
---- 834,853 ----
-      },
-      {
-        "names": [
-+         "point_up_paw"
-+       ],
-+       "surrogates": "☝􁙐",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-+         "point_up_claw"
-+       ],
-+       "surrogates": "☝􁙑",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-          "point_up_2"
-        ],
-        "surrogates": "👆",
-***************
-*** 651,656 ****
---- 855,874 ----
-      },
-      {
-        "names": [
-+         "point_up_2_paw"
-+       ],
-+       "surrogates": "👆􁙐",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-+         "point_up_2_claw"
-+       ],
-+       "surrogates": "👆􁙑",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-          "point_down"
-        ],
-        "surrogates": "👇",
-***************
-*** 658,663 ****
---- 876,895 ----
-      },
-      {
-        "names": [
-+         "point_down_paw"
-+       ],
-+       "surrogates": "👇􁙐",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-+         "point_down_claw"
-+       ],
-+       "surrogates": "👇􁙑",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-          "point_left"
-        ],
-        "surrogates": "👈",
-***************
-*** 665,670 ****
---- 897,916 ----
-      },
-      {
-        "names": [
-+         "point_left_paw"
-+       ],
-+       "surrogates": "👈􁙐",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-+         "point_left_claw"
-+       ],
-+       "surrogates": "👈􁙑",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-          "point_right"
-        ],
-        "surrogates": "👉",
-***************
-*** 672,677 ****
---- 918,937 ----
-      },
-      {
-        "names": [
-+         "point_right_paw"
-+       ],
-+       "surrogates": "👉􁙐",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-+         "point_right_claw"
-+       ],
-+       "surrogates": "👉􁙑",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-          "middle_finger",
-          "reversed_hand_with_middle_finger_extended"
-        ],
-***************
-*** 680,685 ****
---- 940,961 ----
-      },
-      {
-        "names": [
-+         "middle_finger_paw",
-+         "reversed_hand_with_middle_finger_extended_paw"
-+       ],
-+       "surrogates": "🖕􁙐",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-+         "middle_finger_claw",
-+         "reversed_hand_with_middle_finger_extended_claw"
-+       ],
-+       "surrogates": "🖕􁙑",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-          "hand_splayed",
-          "raised_hand_with_fingers_splayed"
-        ],
-***************
-*** 688,693 ****
---- 964,977 ----
-      },
-      {
-        "names": [
-+         "hand_splayed_claw",
-+         "raised_hand_with_fingers_splayed_claw"
-+       ],
-+       "surrogates": "🖐􁙑",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-          "metal",
-          "sign_of_the_horns"
-        ],
-***************
-*** 696,701 ****
---- 980,1001 ----
-      },
-      {
-        "names": [
-+         "metal_paw",
-+         "sign_of_the_horns_paw"
-+       ],
-+       "surrogates": "🤘􁙐",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-+         "metal_claw",
-+         "sign_of_the_horns_claw"
-+       ],
-+       "surrogates": "🤘􁙑",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-          "vulcan",
-          "raised_hand_with_part_between_middle_and_ring_fingers"
-        ],
-***************
-*** 704,709 ****
---- 1004,1025 ----
-      },
-      {
-        "names": [
-+         "vulcan_paw",
-+         "raised_hand_with_part_between_middle_and_ring_fingers_paw"
-+       ],
-+       "surrogates": "🖖􁙐",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-+         "vulcan_claw",
-+         "raised_hand_with_part_between_middle_and_ring_fingers_claw"
-+       ],
-+       "surrogates": "🖖􁙑",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-          "writing_hand"
-        ],
-        "surrogates": "✍",
-***************
-*** 711,716 ****
---- 1027,1046 ----
-      },
-      {
-        "names": [
-+         "writing_hand_paw"
-+       ],
-+       "surrogates": "✍􁙐",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-+         "writing_hand_claw"
-+       ],
-+       "surrogates": "✍􁙑",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-          "nail_care"
-        ],
-        "surrogates": "💅",
-***************
-*** 718,723 ****
---- 1048,1067 ----
-      },
-      {
-        "names": [
-+         "nail_care_paw"
-+       ],
-+       "surrogates": "💅􁙐",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-+         "nail_care_claw"
-+       ],
-+       "surrogates": "💅􁙑",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-          "lips"
-        ],
-        "surrogates": "👄"
-***************
-*** 1417,1422 ****
---- 1761,1780 ----
-      },
-      {
-        "names": [
-+         "selfie_paw"
-+       ],
-+       "surrogates": "🤳􁙐",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-+         "selfie_claw"
-+       ],
-+       "surrogates": "🤳􁙑",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-          "man_dancing",
-          "male_dancer"
-        ],
-***************
-*** 1433,1438 ****
---- 1791,1812 ----
-      },
-      {
-        "names": [
-+         "call_me_paw",
-+         "call_me_hand_paw"
-+       ],
-+       "surrogates": "🤙􁙐",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-+         "call_me_claw",
-+         "call_me_hand_claw"
-+       ],
-+       "surrogates": "🤙􁙑",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-          "raised_back_of_hand",
-          "back_of_hand"
-        ],
-***************
-*** 1441,1446 ****
---- 1815,1836 ----
-      },
-      {
-        "names": [
-+         "raised_back_of_hand_paw",
-+         "back_of_hand_paw"
-+       ],
-+       "surrogates": "🤚􁙐",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-+         "raised_back_of_hand_claw",
-+         "back_of_hand_claw"
-+       ],
-+       "surrogates": "🤚􁙑",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-          "left_facing_fist",
-          "left_fist"
-        ],
-***************
-*** 1449,1454 ****
---- 1839,1860 ----
-      },
-      {
-        "names": [
-+         "left_facing_fist_paw",
-+         "left_fist_paw"
-+       ],
-+       "surrogates": "🤛􁙐",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-+         "left_facing_fist_claw",
-+         "left_fist_claw"
-+       ],
-+       "surrogates": "🤛􁙑",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-          "right_facing_fist",
-          "right_fist"
-        ],
-***************
-*** 1457,1462 ****
---- 1863,1884 ----
-      },
-      {
-        "names": [
-+         "right_facing_fist_paw",
-+         "right_fist_paw"
-+       ],
-+       "surrogates": "🤜􁙐",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-+         "right_facing_fist_claw",
-+         "right_fist_claw"
-+       ],
-+       "surrogates": "🤜􁙑",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-          "handshake",
-          "shaking_hands"
-        ],
-***************
-*** 1464,1474 ****
---- 1886,2100 ----
-      },
-      {
-        "names": [
-+         "handshake_paw",
-+         "shaking_hands_paw"
-+       ],
-+       "surrogates": "🤝􁙐"
-+     },
-+     {
-+       "names": [
-+         "handshake_claw",
-+         "shaking_hands_claw"
-+       ],
-+       "surrogates": "🤝􁙑"
-+     },
-+     {
-+       "names": [
-          "fingers_crossed",
-          "hand_with_index_and_middle_finger_crossed"
-        ],
-        "surrogates": "🤞",
-        "hasDiversity": true
-+     },
-+     {
-+       "names": [
-+         "fingers_crossed_paw",
-+         "hand_with_index_and_middle_finger_crossed_paw"
-+       ],
-+       "surrogates": "🤞􁙐",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-+         "fingers_crossed_claw",
-+         "hand_with_index_and_middle_finger_crossed_claw"
-+       ],
-+       "surrogates": "🤞􁙑",
-+       "hasDiversity": true
-+     },
-+     {
-+       "names": [
-+         "pilot"
-+       ],
-+       "surrogates": "🧑✈"
-+     },
-+     {
-+       "names": [
-+         "health_worker"
-+       ],
-+       "surrogates": "🧑⚕"
-+     },
-+     {
-+       "names": [
-+         "firefighter"
-+       ],
-+       "surrogates": "🧑🥢"
-+     },
-+     {
-+       "names": [
-+         "astronaut"
-+       ],
-+       "surrogates": "🧑🚀"
-+     },
-+     {
-+       "names": [
-+         "scientist"
-+       ],
-+       "surrogates": "🧑🔬"
-+     },
-+     {
-+       "names": [
-+         "mechanic"
-+       ],
-+       "surrogates": "🧑🔧"
-+     },
-+     {
-+       "names": [
-+         "technologist"
-+       ],
-+       "surrogates": "🧑💻"
-+     },
-+     {
-+       "names": [
-+         "chef"
-+       ],
-+       "surrogates": "🧑🍳"
-+     },
-+     {
-+       "names": [
-+         "monocle"
-+       ],
-+       "surrogates": "🧐"
-+     },
-+     {
-+       "names": [
-+         "pleading"
-+       ],
-+       "surrogates": "🥺"
-+     },
-+     {
-+       "names": [
-+         "cold"
-+       ],
-+       "surrogates": "🥶"
-+     },
-+     {
-+       "names": [
-+         "hot"
-+       ],
-+       "surrogates": "🥵"
-+     },
-+     {
-+       "names": [
-+         "woozy"
-+       ],
-+       "surrogates": "🥴"
-+     },
-+     {
-+       "names": [
-+         "party_face"
-+       ],
-+       "surrogates": "🥳"
-+     },
-+     {
-+       "names": [
-+         "smile_hearts"
-+       ],
-+       "surrogates": "🥰"
-+     },
-+     {
-+       "names": [
-+         "mind_blown"
-+       ],
-+       "surrogates": "🤯"
-+     },
-+     {
-+       "names": [
-+         "vomiting"
-+       ],
-+       "surrogates": "🤮"
-+     },
-+     {
-+       "names": [
-+         "hand_over_mouth"
-+       ],
-+       "surrogates": "🤭"
-+     },
-+     {
-+       "names": [
-+         "swearing"
-+       ],
-+       "surrogates": "🤬"
-+     },
-+     {
-+       "names": [
-+         "shush"
-+       ],
-+       "surrogates": "🤫"
-+     },
-+     {
-+       "names": [
-+         "crazy"
-+       ],
-+       "surrogates": "🤪"
-+     },
-+     {
-+       "names": [
-+         "starry_eyes"
-+       ],
-+       "surrogates": "🤩"
-+     },
-+     {
-+       "names": [
-+         "raised_eyebrow"
-+       ],
-+       "surrogates": "🤨"
-+     },
-+     {
-+       "names": [
-+         "detective"
-+       ],
-+       "surrogates": "🕵􁘫"
-+     },
-+     {
-+       "names": [
-+         "massage"
-+       ],
-+       "surrogates": "💆􁘫"
-+     },
-+     {
-+       "names": [
-+         "tipping_hand"
-+       ],
-+       "surrogates": "💁􁘫"
-+     },
-+     {
-+       "names": [
-+         "hot_shit"
-+       ],
-+       "surrogates": "􁚐"
-+     },
-+     {
-+       "names": [
-+         "headpats"
-+       ],
-+       "surrogates": "􁚗"
-+     },
-+     {
-+       "names": [
-+         "merperson"
-+       ],
-+       "surrogates": "🧜"
-      }
-    ],
-    "nature": [
-***************
-*** 2453,2458 ****
---- 3079,3140 ----
-          "squid"
-        ],
-        "surrogates": "🦑"
-+     },
-+     {
-+       "names": [
-+         "furry_pride",
-+         "rainbow_paw"
-+       ],
-+       "surrogates": "􁚛🌈"
-+     },
-+     {
-+       "names": [
-+         "paw"
-+       ],
-+       "surrogates": "􁚛"
-+     },
-+     {
-+       "names": [
-+         "awoo"
-+       ],
-+       "surrogates": "􁚘"
-+     },
-+     {
-+       "names": [
-+         "dont_awoo",
-+         "no_awoo"
-+       ],
-+       "surrogates": "􁚙"
-+     },
-+     {
-+       "names": [
-+         "elf"
-+       ],
-+       "surrogates": "🧝"
-+     },
-+     {
-+       "names": [
-+         "raccoon"
-+       ],
-+       "surrogates": "🦝"
-+     },
-+     {
-+       "names": [
-+         "parrot"
-+       ],
-+       "surrogates": "🦜"
-+     },
-+     {
-+       "names": [
-+         "peacock"
-+       ],
-+       "surrogates": "🦚"
-+     },
-+     {
-+       "names": [
-+         "demon"
-+       ],
-+       "surrogates": "􁙦"
-      }
-    ],
-    "food": [
-***************
-*** 2980,2985 ****
---- 3662,3673 ----
-          "pancakes"
-        ],
-        "surrogates": "🥞"
-+     },
-+     {
-+       "names": [
-+         "cannabis_leaf"
-+       ],
-+       "surrogates": "􁚑"
-      }
-    ],
-    "activity": [
-***************
-*** 5271,5276 ****
---- 5959,6018 ----
-          "shopping_trolley"
-        ],
-        "surrogates": "🛒"
-+     },
-+     {
-+       "names": [
-+         "toilet_paper"
-+       ],
-+       "surrogates": "🧻"
-+     },
-+     {
-+       "names": [
-+         "brick"
-+       ],
-+       "surrogates": "🧱"
-+     },
-+     {
-+       "names": [
-+         "firecracker"
-+       ],
-+       "surrogates": "🧨"
-+     },
-+     {
-+       "names": [
-+         "bone"
-+       ],
-+       "surrogates": "🦴"
-+     },
-+     {
-+       "names": [
-+         "d20"
-+       ],
-+       "surrogates": "􁚖"
-+     },
-+     {
-+       "names": [
-+         "d12"
-+       ],
-+       "surrogates": "􁚕"
-+     },
-+     {
-+       "names": [
-+         "d10"
-+       ],
-+       "surrogates": "􁚔"
-+     },
-+     {
-+       "names": [
-+         "d8"
-+       ],
-+       "surrogates": "􁚓"
-+     },
-+     {
-+       "names": [
-+         "d4"
-+       ],
-+       "surrogates": "􁚒"
-      }
-    ],
-    "symbols": [
-***************
-*** 7082,7087 ****
---- 7824,7934 ----
-          "regional_indicator_a"
-        ],
-        "surrogates": "🇦"
-+     },
-+     {
-+       "names": [
-+         "queer_100"
-+       ],
-+       "surrogates": "💯🌈"
-+     },
-+     {
-+       "names": [
-+         "dont_at",
-+         "no_at",
-+         "no_mention",
-+         "dont_mention"
-+       ],
-+       "surrogates": "􁚚"
-+     },
-+     {
-+       "names": [
-+         "neuter_symbol"
-+       ],
-+       "surrogates": "⚲"
-+     },
-+     {
-+       "names": [
-+         "androgyne_symbol"
-+       ],
-+       "surrogates": "⚨"
-+     },
-+     {
-+       "names": [
-+         "transgender_symbol"
-+       ],
-+       "surrogates": "⚧"
-+     },
-+     {
-+       "names": [
-+         "male_female_symbol"
-+       ],
-+       "surrogates": "⚥"
-+     },
-+     {
-+       "names": [
-+         "male_and_female_symbol"
-+       ],
-+       "surrogates": "⚤"
-+     },
-+     {
-+       "names": [
-+         "two_male_symbols"
-+       ],
-+       "surrogates": "⚣"
-+     },
-+     {
-+       "names": [
-+         "two_female_symbols"
-+       ],
-+       "surrogates": "⚢"
-+     },
-+     {
-+       "names": [
-+         "red_heart"
-+       ],
-+       "surrogates": "♴"
-+     },
-+     {
-+       "names": [
-+         "male_symbol"
-+       ],
-+       "surrogates": "♂"
-+     },
-+     {
-+       "names": [
-+         "female_symbol"
-+       ],
-+       "surrogates": "♀"
-+     },
-+     {
-+       "names": [
-+         "orange_heart"
-+       ],
-+       "surrogates": "🧡"
-+     },
-+     {
-+       "names": [
-+         "labrys_symbol"
-+       ],
-+       "surrogates": "􁚅"
-+     },
-+     {
-+       "names": [
-+         "bisexual_triangles"
-+       ],
-+       "surrogates": "􁚄"
-+     },
-+     {
-+       "names": [
-+         "black_triangle"
-+       ],
-+       "surrogates": "􁚃"
-+     },
-+     {
-+       "names": [
-+         "pink_triangle"
-+       ],
-+       "surrogates": "􁚂"
-      }
-    ],
-    "flags": [
-***************
-*** 8633,8638 ****
-          "rainbow_flag"
-        ],
-        "surrogates": "🏳️‍🌈"
-      }
-    ]
-! }
-\ No newline at end of file
---- 9480,9917 ----
-          "rainbow_flag"
-        ],
-        "surrogates": "🏳️‍🌈"
-+     },
-+     {
-+       "names": [
-+         "pirate_flag"
-+       ],
-+       "surrogates": "🏴️"
-+     },
-+     {
-+       "names": [
-+         "transgender_flag"
-+       ],
-+       "surrogates": "􁚁"
-+     },
-+     {
-+       "names": [
-+         "polysexual_flag"
-+       ],
-+       "surrogates": "􁚀"
-+     },
-+     {
-+       "names": [
-+         "polyamory_flag"
-+       ],
-+       "surrogates": "􁙿"
-+     },
-+     {
-+       "names": [
-+         "pansexual_flag"
-+       ],
-+       "surrogates": "􁙾"
-+     },
-+     {
-+       "names": [
-+         "nonbinary_flag"
-+       ],
-+       "surrogates": "􁙽"
-+     },
-+     {
-+       "names": [
-+         "neutrois_flag"
-+       ],
-+       "surrogates": "􁙼"
-+     },
-+     {
-+       "names": [
-+         "intersex_flag"
-+       ],
-+       "surrogates": "􁙻"
-+     },
-+     {
-+       "names": [
-+         "genderqueer_flag"
-+       ],
-+       "surrogates": "􁙺"
-+     },
-+     {
-+       "names": [
-+         "genderfluid_flag"
-+       ],
-+       "surrogates": "􁙹"
-+     },
-+     {
-+       "names": [
-+         "deminonbinary_flag"
-+       ],
-+       "surrogates": "􁙸"
-+     },
-+     {
-+       "names": [
-+         "demigirl_flag"
-+       ],
-+       "surrogates": "􁙷"
-+     },
-+     {
-+       "names": [
-+         "demiguy_flag"
-+       ],
-+       "surrogates": "􁙶"
-+     },
-+     {
-+       "names": [
-+         "bisexual_flag"
-+       ],
-+       "surrogates": "􁙵"
-+     },
-+     {
-+       "names": [
-+         "bigender_flag"
-+       ],
-+       "surrogates": "􁙴"
-+     },
-+     {
-+       "names": [
-+         "bear_flag"
-+       ],
-+       "surrogates": "􁙳"
-+     },
-+     {
-+       "names": [
-+         "asexual_flag"
-+       ],
-+       "surrogates": "􁙲"
-+     },
-+     {
-+       "names": [
-+         "aromantic_flag"
-+       ],
-+       "surrogates": "􁙱"
-+     },
-+     {
-+       "names": [
-+         "agender_flag"
-+       ],
-+       "surrogates": "􁙰"
-+     },
-+     {
-+       "names": [
-+         "lesbian_flag"
-+       ],
-+       "surrogates": "􁚆"
-+     },
-+     {
-+       "names": [
-+         "paw-modifier"
-+       ],
-+       "surrogates": "􁙐"
-+     },
-+     {
-+       "names": [
-+         "claw-modifier"
-+       ],
-+       "surrogates": "􁙑"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-1"
-+       ],
-+       "surrogates": "🏻"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-2"
-+       ],
-+       "surrogates": "🏼"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-3"
-+       ],
-+       "surrogates": "🏽"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-4"
-+       ],
-+       "surrogates": "🏾"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-5"
-+       ],
-+       "surrogates": "🏿"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-6"
-+       ],
-+       "surrogates": "􁘀"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-7"
-+       ],
-+       "surrogates": "􁘁"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-8"
-+       ],
-+       "surrogates": "􁘂"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-9"
-+       ],
-+       "surrogates": "􁘃"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-10"
-+       ],
-+       "surrogates": "􁘄"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-11"
-+       ],
-+       "surrogates": "􁘅"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-12"
-+       ],
-+       "surrogates": "􁘆"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-13"
-+       ],
-+       "surrogates": "􁘇"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-14"
-+       ],
-+       "surrogates": "􁘈"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-15"
-+       ],
-+       "surrogates": "􁘉"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-16"
-+       ],
-+       "surrogates": "􁘊"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-17"
-+       ],
-+       "surrogates": "􁘋"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-18"
-+       ],
-+       "surrogates": "􁘌"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-19"
-+       ],
-+       "surrogates": "􁘍"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-20"
-+       ],
-+       "surrogates": "􁘎"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-21"
-+       ],
-+       "surrogates": "􁘏"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-22"
-+       ],
-+       "surrogates": "􁘐"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-23"
-+       ],
-+       "surrogates": "􁘑"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-24"
-+       ],
-+       "surrogates": "􁘒"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-25"
-+       ],
-+       "surrogates": "􁘓"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-26"
-+       ],
-+       "surrogates": "􁘔"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-27"
-+       ],
-+       "surrogates": "􁘕"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-28"
-+       ],
-+       "surrogates": "􁘖"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-29"
-+       ],
-+       "surrogates": "􁘗"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-30"
-+       ],
-+       "surrogates": "􁘘"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-31"
-+       ],
-+       "surrogates": "􁘙"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-32"
-+       ],
-+       "surrogates": "􁘚"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-33"
-+       ],
-+       "surrogates": "􁘛"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-34"
-+       ],
-+       "surrogates": "􁘜"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-35"
-+       ],
-+       "surrogates": "􁘝"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-36"
-+       ],
-+       "surrogates": "􁘞"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-37"
-+       ],
-+       "surrogates": "􁘟"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-38"
-+       ],
-+       "surrogates": "􁘠"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-39"
-+       ],
-+       "surrogates": "􁘡"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-40"
-+       ],
-+       "surrogates": "􁘢"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-41"
-+       ],
-+       "surrogates": "􁘣"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-42"
-+       ],
-+       "surrogates": "􁘤"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-43"
-+       ],
-+       "surrogates": "􁘥"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-44"
-+       ],
-+       "surrogates": "􁘦"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-45"
-+       ],
-+       "surrogates": "􁘧"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-46"
-+       ],
-+       "surrogates": "􁘨"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-47"
-+       ],
-+       "surrogates": "􁘩"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-48"
-+       ],
-+       "surrogates": "􁘪"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-49"
-+       ],
-+       "surrogates": "􁘫"
-+     },
-+     {
-+       "names": [
-+         "skin-tone-50"
-+       ],
-+       "surrogates": "􁘬"
-      }
-    ]
-! }
-diff -crB -x dist -x build com.discord-832-base/smali/com/discord/models/domain/emoji/ModelEmojiUnicode.smali com.discord-832/smali/com/discord/models/domain/emoji/ModelEmojiUnicode.smali
-*** com.discord-832-base/smali/com/discord/models/domain/emoji/ModelEmojiUnicode.smali  2019-01-19 04:41:50.783096394 +0300
---- com.discord-832/smali/com/discord/models/domain/emoji/ModelEmojiUnicode.smali   2019-01-22 14:47:17.852853706 +0300
-***************
-*** 65,71 ****
-  .method static constructor <clinit>()V
-      .locals 3
-  
-!     const/4 v0, 0x5
-  
-      .line 36
-      new-array v0, v0, [Ljava/lang/String;
---- 65,71 ----
-  .method static constructor <clinit>()V
-      .locals 3
-  
-!     const/16 v0, 0x32
-  
-      .line 36
-      new-array v0, v0, [Ljava/lang/String;
-***************
-*** 100,105 ****
---- 100,375 ----
-  
-      aput-object v1, v0, v2
-  
-+     const-string v1, "􁘀"
-+ 
-+     const/16 v2, 0x5
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘁"
-+ 
-+     const/16 v2, 0x6
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘂"
-+ 
-+     const/16 v2, 0x7
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘃"
-+ 
-+     const/16 v2, 0x8
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘄"
-+ 
-+     const/16 v2, 0x9
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘅"
-+ 
-+     const/16 v2, 0xa
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘆"
-+ 
-+     const/16 v2, 0xb
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘇"
-+ 
-+     const/16 v2, 0xc
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘈"
-+ 
-+     const/16 v2, 0xd
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘉"
-+ 
-+     const/16 v2, 0xe
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘊"
-+ 
-+     const/16 v2, 0xf
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘋"
-+ 
-+     const/16 v2, 0x10
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘌"
-+ 
-+     const/16 v2, 0x11
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘍"
-+ 
-+     const/16 v2, 0x12
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘎"
-+ 
-+     const/16 v2, 0x13
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘏"
-+ 
-+     const/16 v2, 0x14
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘐"
-+ 
-+     const/16 v2, 0x15
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘑"
-+ 
-+     const/16 v2, 0x16
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘒"
-+ 
-+     const/16 v2, 0x17
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘓"
-+ 
-+     const/16 v2, 0x18
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘔"
-+ 
-+     const/16 v2, 0x19
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘕"
-+ 
-+     const/16 v2, 0x1a
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘖"
-+ 
-+     const/16 v2, 0x1b
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘗"
-+ 
-+     const/16 v2, 0x1c
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘘"
-+ 
-+     const/16 v2, 0x1d
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘙"
-+ 
-+     const/16 v2, 0x1e
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘚"
-+ 
-+     const/16 v2, 0x1f
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘛"
-+ 
-+     const/16 v2, 0x20
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘜"
-+ 
-+     const/16 v2, 0x21
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘝"
-+ 
-+     const/16 v2, 0x22
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘞"
-+ 
-+     const/16 v2, 0x23
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘟"
-+ 
-+     const/16 v2, 0x24
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘠"
-+ 
-+     const/16 v2, 0x25
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘡"
-+ 
-+     const/16 v2, 0x26
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘢"
-+ 
-+     const/16 v2, 0x27
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘣"
-+ 
-+     const/16 v2, 0x28
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘤"
-+ 
-+     const/16 v2, 0x29
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘥"
-+ 
-+     const/16 v2, 0x2a
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘦"
-+ 
-+     const/16 v2, 0x2b
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘧"
-+ 
-+     const/16 v2, 0x2c
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘨"
-+ 
-+     const/16 v2, 0x2d
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘩"
-+ 
-+     const/16 v2, 0x2e
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘪"
-+ 
-+     const/16 v2, 0x2f
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘫"
-+ 
-+     const/16 v2, 0x30
-+ 
-+     aput-object v1, v0, v2
-+ 
-+     const-string v1, "􁘬"
-+ 
-+     const/16 v2, 0x31
-+ 
-+     aput-object v1, v0, v2
-+ 
-      sput-object v0, Lcom/discord/models/domain/emoji/ModelEmojiUnicode;->DIVERSITY_MODIFIERS:[Ljava/lang/String;
-  
-      .line 193
diff --git a/patches/mutant/README.md b/patches/mutant/README.md
index 93684d2..e33f16b 100644
--- a/patches/mutant/README.md
+++ b/patches/mutant/README.md
@@ -46,7 +46,6 @@ Various scripts are provided to help building of custom patches easier.
 - 9.0.1
 - 9.0.2
 - 9.0.3
-- 9.0.4
 
 #### Disclaimer
 
diff --git a/patches/necessary/904.patch b/patches/necessary/904.patch
deleted file mode 100644
index ea2fd1c..0000000
--- a/patches/necessary/904.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-diff -crB from/AndroidManifest.xml to/AndroidManifest.xml
-*** from/AndroidManifest.xml	2019-05-29 01:12:12.598773670 +0300
---- to/AndroidManifest.xml	2019-05-29 01:13:17.755781487 +0300
-***************
-*** 1,4 ****
-! <?xml version="1.0" encoding="utf-8" standalone="no"?><manifest xmlns:android="http://schemas.android.com/apk/res/android" android:compileSdkVersion="28" android:compileSdkVersionCodename="9" android:installLocation="auto" package="com.discord" platformBuildVersionCode="28" platformBuildVersionName="9">
-      <uses-feature android:name="android.hardware.camera" android:required="false"/>
-      <uses-feature android:name="android.hardware.camera.autofocus" android:required="false"/>
-      <uses-feature android:name="android.hardware.faketouch" android:required="false"/>
---- 1,4 ----
-! <?xml version="1.0" encoding="utf-8" standalone="no"?><manifest xmlns:android="http://schemas.android.com/apk/res/android" android:compileSdkVersion="28" android:compileSdkVersionCodename="9" android:installLocation="auto" package="com.discord" platformBuildVersionCode="904" platformBuildVersionName="9.0.4">
-      <uses-feature android:name="android.hardware.camera" android:required="false"/>
-      <uses-feature android:name="android.hardware.camera.autofocus" android:required="false"/>
-      <uses-feature android:name="android.hardware.faketouch" android:required="false"/>
diff --git a/patches/noblocked/904.patch b/patches/noblocked/904.patch
deleted file mode 100644
index 985a85f..0000000
--- a/patches/noblocked/904.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-diff -crB -x dist -x build com.discord-835-base/res/layout/widget_chat_list_adapter_item_blocked.xml com.discord-835/res/layout/widget_chat_list_adapter_item_blocked.xml
-*** com.discord-835-base/res/layout/widget_chat_list_adapter_item_blocked.xml   2019-01-25 10:57:34.359248256 +0300
---- com.discord-835/res/layout/widget_chat_list_adapter_item_blocked.xml    2019-01-27 00:08:22.929085528 +0300
-***************
-*** 1,5 ****
-  <?xml version="1.0" encoding="utf-8"?>
-! <RelativeLayout android:background="?selectableItemBackground" android:paddingLeft="@dimen/chat_cell_horizontal_spacing_padding" android:paddingTop="@dimen/chat_cell_vertical_spacing_padding" android:paddingRight="@dimen/chat_cell_horizontal_spacing_padding" android:paddingBottom="@dimen/chat_cell_vertical_spacing_padding" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginLeft="@dimen/chat_cell_horizontal_spacing_margin" android:layout_marginRight="@dimen/chat_cell_horizontal_spacing_margin"
-    xmlns:android="http://schemas.android.com/apk/res/android">
-!     <TextView android:textSize="11.0sp" android:textColor="?theme_chat_blocked_text" android:gravity="center" android:id="@id/chat_list_adapter_item_blocked" android:background="?theme_chat_blocked_bg" android:paddingTop="7.5dip" android:paddingBottom="7.5dip" android:layout_width="fill_parent" style="@style/UiKit.TextView" />
-  </RelativeLayout>
-\ No newline at end of file
---- 1,5 ----
-  <?xml version="1.0" encoding="utf-8"?>
-! <RelativeLayout android:background="?selectableItemBackground" android:paddingLeft="0px" android:paddingTop="0px" android:paddingRight="0px" android:paddingBottom="@dimen/chat_cell_vertical_spacing_padding" android:layout_width="0px" android:layout_height="0px" android:layout_marginLeft="0px" android:layout_marginRight="@dimen/chat_cell_horizontal_spacing_margin"
-    xmlns:android="http://schemas.android.com/apk/res/android">
-!     <TextView android:textSize="0sp" android:textColor="?theme_chat_blocked_text" android:gravity="center" android:id="@id/chat_list_adapter_item_blocked" android:background="?theme_chat_blocked_bg" android:paddingTop="0dip" android:paddingBottom="0dip" android:layout_width="fill_parent" style="@style/UiKit.TextView" />
-  </RelativeLayout>
-\ No newline at end of file
\ No newline at end of file
diff --git a/patches/noblocked/README.md b/patches/noblocked/README.md
index 33b99cc..c18039a 100644
--- a/patches/noblocked/README.md
+++ b/patches/noblocked/README.md
@@ -29,5 +29,4 @@ This patch completely hides the "# Blocked Message(s)" thing.
 - 9.0.1
 - 9.0.2
 - 9.0.3
-- 9.0.4
 
diff --git a/patches/nonearby/904.patch b/patches/nonearby/904.patch
deleted file mode 100644
index 0935ce4..0000000
--- a/patches/nonearby/904.patch
+++ /dev/null
@@ -1,101 +0,0 @@
-diff -crB from/smali/com/discord/widgets/friends/NearbyManager.smali to/smali/com/discord/widgets/friends/NearbyManager.smali
-*** from/smali/com/discord/widgets/friends/NearbyManager.smali	2019-05-12 12:13:47.231175296 +0300
---- to/smali/com/discord/widgets/friends/NearbyManager.smali	2019-05-12 12:15:25.220407602 +0300
-***************
-*** 438,510 ****
-  
-  # virtual methods
-  .method public final activateNearby()V
-!     .locals 9
-! 
-!     .line 58
-!     iget-object v0, p0, Lcom/discord/widgets/friends/NearbyManager;->messagesClient:Lcom/google/android/gms/nearby/messages/MessagesClient;
-! 
-!     if-nez v0, :cond_0
-! 
-!     return-void
-! 
-!     .line 59
-!     :cond_0
-!     iget-object v1, p0, Lcom/discord/widgets/friends/NearbyManager;->outboundMessage:Lcom/google/android/gms/nearby/messages/Message;
-! 
-!     if-nez v1, :cond_1
-! 
-!     return-void
-! 
-!     .line 60
-!     :cond_1
-!     iget-object v2, p0, Lcom/discord/widgets/friends/NearbyManager;->messagePublishOptions:Lcom/google/android/gms/nearby/messages/PublishOptions;
-! 
-!     if-nez v2, :cond_2
-! 
-!     return-void
-! 
-!     .line 61
-!     :cond_2
-!     iget-object v3, p0, Lcom/discord/widgets/friends/NearbyManager;->messageListener:Lcom/google/android/gms/nearby/messages/MessageListener;
-! 
-!     if-nez v3, :cond_3
-! 
-!     return-void
-! 
-!     .line 62
-!     :cond_3
-!     iget-object v4, p0, Lcom/discord/widgets/friends/NearbyManager;->subscribeOptions:Lcom/google/android/gms/nearby/messages/SubscribeOptions;
-! 
-!     if-nez v4, :cond_4
-! 
-!     return-void
-! 
-!     .line 64
-!     :cond_4
-!     iget-object v5, p0, Lcom/discord/widgets/friends/NearbyManager;->nearbyStateSubject:Lrx/subjects/BehaviorSubject;
-! 
-!     new-instance v6, Lcom/discord/widgets/friends/NearbyManager$NearbyState$Connected;
-! 
-!     new-instance v7, Ljava/util/HashSet;
-! 
-!     iget-object v8, p0, Lcom/discord/widgets/friends/NearbyManager;->nearbyUserIds:Ljava/util/HashSet;
-! 
-!     check-cast v8, Ljava/util/Collection;
-! 
-!     invoke-direct {v7, v8}, Ljava/util/HashSet;-><init>(Ljava/util/Collection;)V
-! 
-!     check-cast v7, Ljava/util/Set;
-! 
-!     invoke-direct {v6, v7}, Lcom/discord/widgets/friends/NearbyManager$NearbyState$Connected;-><init>(Ljava/util/Set;)V
-! 
-!     invoke-virtual {v5, v6}, Lrx/subjects/BehaviorSubject;->onNext(Ljava/lang/Object;)V
-! 
-!     .line 66
-!     invoke-virtual {v0, v1, v2}, Lcom/google/android/gms/nearby/messages/MessagesClient;->a(Lcom/google/android/gms/nearby/messages/Message;Lcom/google/android/gms/nearby/messages/PublishOptions;)Lcom/google/android/gms/tasks/h;
-! 
-!     .line 67
-!     invoke-virtual {v0, v3, v4}, Lcom/google/android/gms/nearby/messages/MessagesClient;->a(Lcom/google/android/gms/nearby/messages/MessageListener;Lcom/google/android/gms/nearby/messages/SubscribeOptions;)Lcom/google/android/gms/tasks/h;
-! 
-      return-void
-  .end method
-  
---- 438,444 ----
-  
-  # virtual methods
-  .method public final activateNearby()V
-!     .locals 0
-      return-void
-  .end method
-  
-***************
-*** 603,614 ****
-  
-  .method public final initialize(J)V
-      .locals 0
-- 
--     .line 34
--     invoke-direct {p0, p1, p2}, Lcom/discord/widgets/friends/NearbyManager;->setupBroadcaster(J)V
-- 
--     .line 35
--     invoke-direct {p0}, Lcom/discord/widgets/friends/NearbyManager;->setupListener()V
-- 
-      return-void
-  .end method
---- 537,541 ----
diff --git a/patches/nonearby/README.md b/patches/nonearby/README.md
index 6e2a41d..4ee0358 100644
--- a/patches/nonearby/README.md
+++ b/patches/nonearby/README.md
@@ -32,5 +32,4 @@ This patch nulls a bunch of nearby friends features for privacy.
 - 9.0.1
 - 9.0.2
 - 9.0.3
-- 9.0.4
 
diff --git a/patches/noprofilestrip/904.patch b/patches/noprofilestrip/904.patch
deleted file mode 100644
index c62b76c..0000000
--- a/patches/noprofilestrip/904.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-diff -crB from/smali/com/discord/widgets/user/WidgetUserProfileStrip.smali to/smali/com/discord/widgets/user/WidgetUserProfileStrip.smali
-*** from/smali/com/discord/widgets/user/WidgetUserProfileStrip.smali	2019-04-25 10:45:13.110971859 +0300
---- to/smali/com/discord/widgets/user/WidgetUserProfileStrip.smali	2019-04-25 11:23:49.677538651 +0300
-***************
-*** 434,448 ****
-  
-      move-result-object v2
-  
-!     invoke-virtual {p1}, Lcom/discord/widgets/user/WidgetUserProfileStrip$Model;->getUser()Lcom/discord/models/domain/ModelUser;
-! 
-!     move-result-object v3
-! 
-!     invoke-virtual {v3}, Lcom/discord/models/domain/ModelUser;->getUsername()Ljava/lang/String;
-! 
-!     move-result-object v3
-! 
-!     check-cast v3, Ljava/lang/CharSequence;
-  
-      invoke-virtual {v2, v3}, Landroid/widget/TextView;->setText(Ljava/lang/CharSequence;)V
-  
---- 434,440 ----
-  
-      move-result-object v2
-  
-!     const-string v3, ""
-  
-      invoke-virtual {v2, v3}, Landroid/widget/TextView;->setText(Ljava/lang/CharSequence;)V
-  
-***************
-*** 451,465 ****
-  
-      move-result-object v2
-  
-!     invoke-virtual {p1}, Lcom/discord/widgets/user/WidgetUserProfileStrip$Model;->getUser()Lcom/discord/models/domain/ModelUser;
-! 
-!     move-result-object p1
-! 
-!     invoke-virtual {p1}, Lcom/discord/models/domain/ModelUser;->getDiscriminatorWithPadding()Ljava/lang/String;
-! 
-!     move-result-object p1
-! 
-!     check-cast p1, Ljava/lang/CharSequence;
-  
-      invoke-virtual {v2, p1}, Landroid/widget/TextView;->setText(Ljava/lang/CharSequence;)V
-  
---- 443,449 ----
-  
-      move-result-object v2
-  
-!     const-string p1, ""
-  
-      invoke-virtual {v2, p1}, Landroid/widget/TextView;->setText(Ljava/lang/CharSequence;)V
-  
diff --git a/patches/noprofilestrip/README.md b/patches/noprofilestrip/README.md
index 2486302..33d8921 100644
--- a/patches/noprofilestrip/README.md
+++ b/patches/noprofilestrip/README.md
@@ -27,5 +27,4 @@ This patch removes the "profile strip" from the left side menu, helping remove P
 - 9.0.1
 - 9.0.2
 - 9.0.3
-- 9.0.4
 
diff --git a/patches/nospoiler/904.patch b/patches/nospoiler/904.patch
deleted file mode 100644
index 7d860f3..0000000
--- a/patches/nospoiler/904.patch
+++ /dev/null
@@ -1,65 +0,0 @@
-diff -crB com.discord-896-base/smali/com/discord/models/domain/ModelMessageEmbed.smali com.discord-896/smali/com/discord/models/domain/ModelMessageEmbed.smali
-*** com.discord-896-base/smali/com/discord/models/domain/ModelMessageEmbed.smali	2019-05-12 12:13:46.711155175 +0300
---- com.discord-896/smali/com/discord/models/domain/ModelMessageEmbed.smali	2019-05-12 12:36:28.603941509 +0300
-***************
-*** 1904,1933 ****
-  .end method
-  
-  .method public isSpoilerAttachment()Z
-!     .locals 2
-! 
-!     .line 135
-!     invoke-virtual {p0}, Lcom/discord/models/domain/ModelMessageEmbed;->isAttachment()Z
-! 
-!     move-result v0
-! 
-!     if-eqz v0, :cond_0
-! 
-!     iget-object v0, p0, Lcom/discord/models/domain/ModelMessageEmbed;->title:Ljava/lang/String;
-! 
-!     const-string v1, "SPOILER_"
-! 
-!     invoke-virtual {v0, v1}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
-! 
-!     move-result v0
-! 
-!     if-eqz v0, :cond_0
-! 
-!     const/4 v0, 0x1
-! 
-!     return v0
-! 
-!     :cond_0
-      const/4 v0, 0x0
-  
-      return v0
---- 1904,1910 ----
-  .end method
-  
-  .method public isSpoilerAttachment()Z
-!     .locals 0
-      const/4 v0, 0x0
-  
-      return v0
-diff -crB com.discord-896-base/smali/com/discord/utilities/textprocessing/node/SpoilerNode.smali com.discord-896/smali/com/discord/utilities/textprocessing/node/SpoilerNode.smali
-*** com.discord-896-base/smali/com/discord/utilities/textprocessing/node/SpoilerNode.smali	2019-05-12 12:13:47.001166397 +0300
---- com.discord-896/smali/com/discord/utilities/textprocessing/node/SpoilerNode.smali	2019-05-12 12:35:46.620474320 +0300
-***************
-*** 223,230 ****
-  .method public final isRevealed()Z
-      .locals 1
-  
-!     .line 23
-!     iget-boolean v0, p0, Lcom/discord/utilities/textprocessing/node/SpoilerNode;->isRevealed:Z
-  
-      return v0
-  .end method
---- 223,229 ----
-  .method public final isRevealed()Z
-      .locals 1
-  
-!     const/4 v0, 0x1
-  
-      return v0
-  .end method
-
diff --git a/patches/nospoiler/README.md b/patches/nospoiler/README.md
index cf9ea78..342a509 100644
--- a/patches/nospoiler/README.md
+++ b/patches/nospoiler/README.md
@@ -29,5 +29,4 @@ I personally won't be using it as I like to use them as CWs, but I do acknowledg
 - 9.0.1
 - 9.0.2
 - 9.0.3
-- 9.0.4
 
diff --git a/patches/notrack/904.patch b/patches/notrack/904.patch
deleted file mode 100644
index bf3e38a..0000000
--- a/patches/notrack/904.patch
+++ /dev/null
@@ -1,3044 +0,0 @@
-diff -crB com.discord-904-base/AndroidManifest.xml com.discord-904/AndroidManifest.xml
-*** com.discord-904-base/AndroidManifest.xml	2019-05-29 01:13:18.465785205 +0300
---- com.discord-904/AndroidManifest.xml	2019-05-29 01:16:22.280140659 +0300
-***************
-*** 100,107 ****
-              <meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/file_paths"/>
-          </provider>
-          <meta-data android:name="firebase_crashlytics_collection_enabled" android:value="false"/>
-!         <meta-data android:name="io.fabric.ApiKey" android:value="eaccfe98b3572a0a8721a8c3b10f9909018f5ec6"/>
-!         <meta-data android:name="com.google.android.nearby.messages.API_KEY" android:value="AIzaSyD-4L6bgKMixqBRtrG2UktVXK6IexXlsog"/>
-          <activity android:name="com.yalantis.ucrop.UCropActivity" android:theme="@style/Theme.AppCompat.Light.NoActionBar"/>
-          <service android:exported="false" android:name="com.google.firebase.messaging.FirebaseMessagingService">
-              <intent-filter android:priority="-500">
---- 100,107 ----
-              <meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/file_paths"/>
-          </provider>
-          <meta-data android:name="firebase_crashlytics_collection_enabled" android:value="false"/>
-!         <meta-data android:name="io.fabric.ApiKey" android:value="blamelunapoopoopeepeepoopoopeepblameluna"/>
-!         <meta-data android:name="com.google.android.nearby.messages.API_KEY" android:value="blamelunapoopoopeepeepoopoopeeblameluna"/>
-          <activity android:name="com.yalantis.ucrop.UCropActivity" android:theme="@style/Theme.AppCompat.Light.NoActionBar"/>
-          <service android:exported="false" android:name="com.google.firebase.messaging.FirebaseMessagingService">
-              <intent-filter android:priority="-500">
-diff -crB com.discord-904-base/res/values/strings.xml com.discord-904/res/values/strings.xml
-*** com.discord-904-base/res/values/strings.xml	2019-05-29 01:12:15.258787597 +0300
---- com.discord-904/res/values/strings.xml	2019-05-29 01:16:22.283474012 +0300
-***************
-*** 1006,1012 ****
-      <string name="cloud_sync_modal_error_header">Unable to sync cloud saves</string>
-      <string name="cloud_sync_modal_or">OR</string>
-      <string name="collapse_category">Collapse Category</string>
-!     <string name="com.crashlytics.android.build_id">d3931547-b6a8-4f27-980f-c390eb6b1553</string>
-      <string name="coming_soon">Coming Soon</string>
-      <string name="coming_soon_notifications">Granular notification control only works on desktop apps at the moment. For now use the iOS notification settings.</string>
-      <string name="coming_soon_title">COMING SOON!</string>
---- 1006,1012 ----
-      <string name="cloud_sync_modal_error_header">Unable to sync cloud saves</string>
-      <string name="cloud_sync_modal_or">OR</string>
-      <string name="collapse_category">Collapse Category</string>
-!     <string name="com.crashlytics.android.build_id">00000000-0000-0000-0000-000000000000</string>
-      <string name="coming_soon">Coming Soon</string>
-      <string name="coming_soon_notifications">Granular notification control only works on desktop apps at the moment. For now use the iOS notification settings.</string>
-      <string name="coming_soon_title">COMING SOON!</string>
-diff -crB com.discord-904-base/smali/com/crashlytics/android/answers/ab.smali com.discord-904/smali/com/crashlytics/android/answers/ab.smali
-*** com.discord-904-base/smali/com/crashlytics/android/answers/ab.smali	2019-05-29 01:12:16.685461733 +0300
---- com.discord-904/smali/com/crashlytics/android/answers/ab.smali	2019-05-29 01:17:57.350674885 +0300
-***************
-*** 38,205 ****
-  
-  # virtual methods
-  .method public final h(Ljava/util/List;)Z
-!     .locals 9
-!     .annotation system Ldalvik/annotation/Signature;
-!         value = {
-!             "(",
-!             "Ljava/util/List<",
-!             "Ljava/io/File;",
-!             ">;)Z"
-!         }
-!     .end annotation
-  
-!     .line 34
-!     invoke-virtual {p0}, Lcom/crashlytics/android/answers/ab;->ym()Lio/fabric/sdk/android/a/e/d;
-! 
-!     move-result-object v0
-! 
-!     const-string v1, "X-CRASHLYTICS-API-CLIENT-TYPE"
-! 
-!     const-string v2, "android"
-! 
-!     .line 38
-!     invoke-virtual {v0, v1, v2}, Lio/fabric/sdk/android/a/e/d;->ac(Ljava/lang/String;Ljava/lang/String;)Lio/fabric/sdk/android/a/e/d;
-! 
-!     move-result-object v0
-! 
-!     iget-object v1, p0, Lcom/crashlytics/android/answers/ab;->nj:Lio/fabric/sdk/android/i;
-! 
-!     .line 39
-!     invoke-virtual {v1}, Lio/fabric/sdk/android/i;->getVersion()Ljava/lang/String;
-! 
-!     move-result-object v1
-! 
-!     const-string v2, "X-CRASHLYTICS-API-CLIENT-VERSION"
-! 
-!     invoke-virtual {v0, v2, v1}, Lio/fabric/sdk/android/a/e/d;->ac(Ljava/lang/String;Ljava/lang/String;)Lio/fabric/sdk/android/a/e/d;
-! 
-!     move-result-object v0
-! 
-!     iget-object v1, p0, Lcom/crashlytics/android/answers/ab;->oh:Ljava/lang/String;
-! 
-!     const-string v2, "X-CRASHLYTICS-API-KEY"
-! 
-!     .line 40
-!     invoke-virtual {v0, v2, v1}, Lio/fabric/sdk/android/a/e/d;->ac(Ljava/lang/String;Ljava/lang/String;)Lio/fabric/sdk/android/a/e/d;
-! 
-!     move-result-object v0
-! 
-!     .line 44
-!     invoke-interface {p1}, Ljava/util/List;->iterator()Ljava/util/Iterator;
-! 
-!     move-result-object v1
-! 
-!     const/4 v2, 0x0
-! 
-!     const/4 v3, 0x0
-! 
-!     :goto_0
-!     invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
-! 
-!     move-result v4
-! 
-!     const/4 v5, 0x1
-! 
-!     if-eqz v4, :cond_0
-! 
-!     invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
-! 
-!     move-result-object v4
-! 
-!     check-cast v4, Ljava/io/File;
-! 
-!     .line 45
-!     invoke-static {v3}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;
-! 
-!     move-result-object v6
-! 
-!     const-string v7, "session_analytics_file_"
-! 
-!     invoke-virtual {v7, v6}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
-! 
-!     move-result-object v6
-! 
-!     invoke-virtual {v4}, Ljava/io/File;->getName()Ljava/lang/String;
-! 
-!     move-result-object v7
-! 
-!     const-string v8, "application/vnd.crashlytics.android.events"
-! 
-!     invoke-virtual {v0, v6, v7, v8, v4}, Lio/fabric/sdk/android/a/e/d;->a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/io/File;)Lio/fabric/sdk/android/a/e/d;
-! 
-!     add-int/2addr v3, v5
-! 
-!     goto :goto_0
-! 
-!     .line 49
-!     :cond_0
-!     invoke-static {}, Lio/fabric/sdk/android/c;->xZ()Lio/fabric/sdk/android/l;
-! 
-!     move-result-object v1
-! 
-!     new-instance v3, Ljava/lang/StringBuilder;
-! 
-!     const-string v4, "Sending "
-! 
-!     invoke-direct {v3, v4}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-! 
-!     .line 50
-!     invoke-interface {p1}, Ljava/util/List;->size()I
-! 
-!     move-result p1
-! 
-!     invoke-virtual {v3, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
-! 
-!     const-string p1, " analytics files to "
-! 
-!     invoke-virtual {v3, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-! 
-!     .line 1100
-!     iget-object p1, p0, Lio/fabric/sdk/android/a/b/a;->url:Ljava/lang/String;
-! 
-!     .line 50
-!     invoke-virtual {v3, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-! 
-!     invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
-! 
-!     move-result-object p1
-! 
-!     const-string v3, "Answers"
-! 
-!     .line 49
-!     invoke-interface {v1, v3, p1}, Lio/fabric/sdk/android/l;->d(Ljava/lang/String;Ljava/lang/String;)V
-! 
-!     .line 51
-!     invoke-virtual {v0}, Lio/fabric/sdk/android/a/e/d;->za()I
-! 
-!     move-result p1
-! 
-!     .line 52
-!     invoke-static {}, Lio/fabric/sdk/android/c;->xZ()Lio/fabric/sdk/android/l;
-! 
-!     move-result-object v0
-! 
-!     invoke-static {p1}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;
-! 
-!     move-result-object v1
-! 
-!     const-string v4, "Response code for analytics file send is "
-! 
-!     invoke-virtual {v4, v1}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
-! 
-!     move-result-object v1
-! 
-!     invoke-interface {v0, v3, v1}, Lio/fabric/sdk/android/l;->d(Ljava/lang/String;Ljava/lang/String;)V
-! 
-!     .line 55
-!     invoke-static {p1}, Lio/fabric/sdk/android/a/b/v;->cV(I)I
-! 
-!     move-result p1
-! 
-!     if-nez p1, :cond_1
-! 
-!     return v5
-! 
-!     :cond_1
-!     return v2
-  .end method
---- 38,44 ----
-  
-  # virtual methods
-  .method public final h(Ljava/util/List;)Z
-!     .locals 0
-  
-!     return-void
-  .end method
-Only in com.discord-904/smali/com/crashlytics/android/answers: ab.smali.orig
-Only in com.discord-904/smali/com/crashlytics/android/answers: ab.smali.rej
-diff -crB com.discord-904-base/smali/com/crashlytics/android/core/ah.smali com.discord-904/smali/com/crashlytics/android/core/ah.smali
-*** com.discord-904-base/smali/com/crashlytics/android/core/ah.smali	2019-05-29 01:12:16.695461786 +0300
---- com.discord-904/smali/com/crashlytics/android/core/ah.smali	2019-05-29 01:18:28.534183449 +0300
-***************
-*** 29,465 ****
-  .end method
-  
-  .method private static a(Lio/fabric/sdk/android/a/e/d;Lcom/crashlytics/android/core/aq;)Lio/fabric/sdk/android/a/e/d;
-!     .locals 6
-  
-!     .line 62
-!     invoke-interface {p1}, Lcom/crashlytics/android/core/aq;->getIdentifier()Ljava/lang/String;
-! 
-!     move-result-object v0
-! 
-!     const-string v1, "report_id"
-! 
-!     const/4 v2, 0x0
-! 
-!     .line 3530
-!     invoke-virtual {p0, v1, v2, v0}, Lio/fabric/sdk/android/a/e/d;->o(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lio/fabric/sdk/android/a/e/d;
-! 
-!     .line 63
-!     invoke-interface {p1}, Lcom/crashlytics/android/core/aq;->cO()[Ljava/io/File;
-! 
-!     move-result-object p1
-! 
-!     array-length v0, p1
-! 
-!     const/4 v1, 0x0
-! 
-!     :goto_0
-!     if-ge v1, v0, :cond_a
-! 
-!     aget-object v2, p1, v1
-! 
-!     .line 64
-!     invoke-virtual {v2}, Ljava/io/File;->getName()Ljava/lang/String;
-! 
-!     move-result-object v3
-! 
-!     const-string v4, "minidump"
-! 
-!     invoke-virtual {v3, v4}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
-! 
-!     move-result v3
-! 
-!     const-string v4, "application/octet-stream"
-! 
-!     if-eqz v3, :cond_0
-! 
-!     .line 66
-!     invoke-virtual {v2}, Ljava/io/File;->getName()Ljava/lang/String;
-! 
-!     move-result-object v3
-! 
-!     const-string v5, "minidump_file"
-! 
-!     .line 65
-!     invoke-virtual {p0, v5, v3, v4, v2}, Lio/fabric/sdk/android/a/e/d;->a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/io/File;)Lio/fabric/sdk/android/a/e/d;
-! 
-!     goto/16 :goto_1
-! 
-!     .line 67
-!     :cond_0
-!     invoke-virtual {v2}, Ljava/io/File;->getName()Ljava/lang/String;
-! 
-!     move-result-object v3
-! 
-!     const-string v5, "metadata"
-! 
-!     invoke-virtual {v3, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
-! 
-!     move-result v3
-! 
-!     if-eqz v3, :cond_1
-! 
-!     .line 69
-!     invoke-virtual {v2}, Ljava/io/File;->getName()Ljava/lang/String;
-! 
-!     move-result-object v3
-! 
-!     const-string v5, "crash_meta_file"
-! 
-!     .line 68
-!     invoke-virtual {p0, v5, v3, v4, v2}, Lio/fabric/sdk/android/a/e/d;->a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/io/File;)Lio/fabric/sdk/android/a/e/d;
-! 
-!     goto/16 :goto_1
-! 
-!     .line 70
-!     :cond_1
-!     invoke-virtual {v2}, Ljava/io/File;->getName()Ljava/lang/String;
-! 
-!     move-result-object v3
-! 
-!     const-string v5, "binaryImages"
-! 
-!     invoke-virtual {v3, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
-! 
-!     move-result v3
-! 
-!     if-eqz v3, :cond_2
-! 
-!     .line 72
-!     invoke-virtual {v2}, Ljava/io/File;->getName()Ljava/lang/String;
-! 
-!     move-result-object v3
-! 
-!     const-string v5, "binary_images_file"
-! 
-!     .line 71
-!     invoke-virtual {p0, v5, v3, v4, v2}, Lio/fabric/sdk/android/a/e/d;->a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/io/File;)Lio/fabric/sdk/android/a/e/d;
-! 
-!     goto/16 :goto_1
-! 
-!     .line 73
-!     :cond_2
-!     invoke-virtual {v2}, Ljava/io/File;->getName()Ljava/lang/String;
-! 
-!     move-result-object v3
-! 
-!     const-string v5, "session"
-! 
-!     invoke-virtual {v3, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
-! 
-!     move-result v3
-! 
-!     if-eqz v3, :cond_3
-! 
-!     .line 75
-!     invoke-virtual {v2}, Ljava/io/File;->getName()Ljava/lang/String;
-! 
-!     move-result-object v3
-! 
-!     const-string v5, "session_meta_file"
-! 
-!     .line 74
-!     invoke-virtual {p0, v5, v3, v4, v2}, Lio/fabric/sdk/android/a/e/d;->a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/io/File;)Lio/fabric/sdk/android/a/e/d;
-! 
-!     goto/16 :goto_1
-! 
-!     .line 76
-!     :cond_3
-!     invoke-virtual {v2}, Ljava/io/File;->getName()Ljava/lang/String;
-! 
-!     move-result-object v3
-! 
-!     const-string v5, "app"
-! 
-!     invoke-virtual {v3, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
-! 
-!     move-result v3
-! 
-!     if-eqz v3, :cond_4
-! 
-!     .line 78
-!     invoke-virtual {v2}, Ljava/io/File;->getName()Ljava/lang/String;
-! 
-!     move-result-object v3
-! 
-!     const-string v5, "app_meta_file"
-! 
-!     .line 77
-!     invoke-virtual {p0, v5, v3, v4, v2}, Lio/fabric/sdk/android/a/e/d;->a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/io/File;)Lio/fabric/sdk/android/a/e/d;
-! 
-!     goto :goto_1
-! 
-!     .line 79
-!     :cond_4
-!     invoke-virtual {v2}, Ljava/io/File;->getName()Ljava/lang/String;
-! 
-!     move-result-object v3
-! 
-!     const-string v5, "device"
-! 
-!     invoke-virtual {v3, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
-! 
-!     move-result v3
-! 
-!     if-eqz v3, :cond_5
-! 
-!     .line 81
-!     invoke-virtual {v2}, Ljava/io/File;->getName()Ljava/lang/String;
-! 
-!     move-result-object v3
-! 
-!     const-string v5, "device_meta_file"
-! 
-!     .line 80
-!     invoke-virtual {p0, v5, v3, v4, v2}, Lio/fabric/sdk/android/a/e/d;->a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/io/File;)Lio/fabric/sdk/android/a/e/d;
-! 
-!     goto :goto_1
-! 
-!     .line 82
-!     :cond_5
-!     invoke-virtual {v2}, Ljava/io/File;->getName()Ljava/lang/String;
-! 
-!     move-result-object v3
-! 
-!     const-string v5, "os"
-! 
-!     invoke-virtual {v3, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
-! 
-!     move-result v3
-! 
-!     if-eqz v3, :cond_6
-! 
-!     .line 84
-!     invoke-virtual {v2}, Ljava/io/File;->getName()Ljava/lang/String;
-! 
-!     move-result-object v3
-! 
-!     const-string v5, "os_meta_file"
-! 
-!     .line 83
-!     invoke-virtual {p0, v5, v3, v4, v2}, Lio/fabric/sdk/android/a/e/d;->a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/io/File;)Lio/fabric/sdk/android/a/e/d;
-! 
-!     goto :goto_1
-! 
-!     .line 85
-!     :cond_6
-!     invoke-virtual {v2}, Ljava/io/File;->getName()Ljava/lang/String;
-! 
-!     move-result-object v3
-! 
-!     const-string v5, "user"
-! 
-!     invoke-virtual {v3, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
-! 
-!     move-result v3
-! 
-!     if-eqz v3, :cond_7
-! 
-!     .line 87
-!     invoke-virtual {v2}, Ljava/io/File;->getName()Ljava/lang/String;
-! 
-!     move-result-object v3
-! 
-!     const-string v5, "user_meta_file"
-! 
-!     .line 86
-!     invoke-virtual {p0, v5, v3, v4, v2}, Lio/fabric/sdk/android/a/e/d;->a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/io/File;)Lio/fabric/sdk/android/a/e/d;
-! 
-!     goto :goto_1
-! 
-!     .line 88
-!     :cond_7
-!     invoke-virtual {v2}, Ljava/io/File;->getName()Ljava/lang/String;
-! 
-!     move-result-object v3
-! 
-!     const-string v5, "logs"
-! 
-!     invoke-virtual {v3, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
-! 
-!     move-result v3
-! 
-!     if-eqz v3, :cond_8
-! 
-!     .line 90
-!     invoke-virtual {v2}, Ljava/io/File;->getName()Ljava/lang/String;
-! 
-!     move-result-object v3
-! 
-!     const-string v5, "logs_file"
-! 
-!     .line 89
-!     invoke-virtual {p0, v5, v3, v4, v2}, Lio/fabric/sdk/android/a/e/d;->a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/io/File;)Lio/fabric/sdk/android/a/e/d;
-! 
-!     goto :goto_1
-! 
-!     .line 91
-!     :cond_8
-!     invoke-virtual {v2}, Ljava/io/File;->getName()Ljava/lang/String;
-! 
-!     move-result-object v3
-! 
-!     const-string v5, "keys"
-! 
-!     invoke-virtual {v3, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
-! 
-!     move-result v3
-! 
-!     if-eqz v3, :cond_9
-! 
-!     .line 93
-!     invoke-virtual {v2}, Ljava/io/File;->getName()Ljava/lang/String;
-! 
-!     move-result-object v3
-! 
-!     const-string v5, "keys_file"
-! 
-!     .line 92
-!     invoke-virtual {p0, v5, v3, v4, v2}, Lio/fabric/sdk/android/a/e/d;->a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/io/File;)Lio/fabric/sdk/android/a/e/d;
-! 
-!     :cond_9
-!     :goto_1
-!     add-int/lit8 v1, v1, 0x1
-! 
-!     goto/16 :goto_0
-! 
-!     :cond_a
-!     return-object p0
-  .end method
-  
-  
-  # virtual methods
-  .method public final a(Lcom/crashlytics/android/core/u;)Z
-!     .locals 5
-! 
-!     .line 36
-!     invoke-virtual {p0}, Lcom/crashlytics/android/core/ah;->ym()Lio/fabric/sdk/android/a/e/d;
-! 
-!     move-result-object v0
-! 
-!     .line 39
-!     iget-object v1, p1, Lcom/crashlytics/android/core/u;->oh:Ljava/lang/String;
-! 
-!     .line 3052
-!     new-instance v2, Ljava/lang/StringBuilder;
-! 
-!     const-string v3, "Crashlytics Android SDK/"
-! 
-!     invoke-direct {v2, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-! 
-!     iget-object v3, p0, Lcom/crashlytics/android/core/ah;->nj:Lio/fabric/sdk/android/i;
-! 
-!     .line 3054
-!     invoke-virtual {v3}, Lio/fabric/sdk/android/i;->getVersion()Ljava/lang/String;
-! 
-!     move-result-object v3
-! 
-!     invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-! 
-!     invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
-! 
-!     move-result-object v2
-! 
-!     const-string v3, "User-Agent"
-! 
-!     .line 3053
-!     invoke-virtual {v0, v3, v2}, Lio/fabric/sdk/android/a/e/d;->ac(Ljava/lang/String;Ljava/lang/String;)Lio/fabric/sdk/android/a/e/d;
-! 
-!     move-result-object v2
-! 
-!     const-string v3, "X-CRASHLYTICS-API-CLIENT-TYPE"
-! 
-!     const-string v4, "android"
-! 
-!     .line 3055
-!     invoke-virtual {v2, v3, v4}, Lio/fabric/sdk/android/a/e/d;->ac(Ljava/lang/String;Ljava/lang/String;)Lio/fabric/sdk/android/a/e/d;
-! 
-!     move-result-object v2
-! 
-!     iget-object v3, p0, Lcom/crashlytics/android/core/ah;->nj:Lio/fabric/sdk/android/i;
-! 
-!     .line 3056
-!     invoke-virtual {v3}, Lio/fabric/sdk/android/i;->getVersion()Ljava/lang/String;
-! 
-!     move-result-object v3
-! 
-!     const-string v4, "X-CRASHLYTICS-API-CLIENT-VERSION"
-! 
-!     invoke-virtual {v2, v4, v3}, Lio/fabric/sdk/android/a/e/d;->ac(Ljava/lang/String;Ljava/lang/String;)Lio/fabric/sdk/android/a/e/d;
-! 
-!     move-result-object v2
-! 
-!     const-string v3, "X-CRASHLYTICS-API-KEY"
-! 
-!     .line 3057
-!     invoke-virtual {v2, v3, v1}, Lio/fabric/sdk/android/a/e/d;->ac(Ljava/lang/String;Ljava/lang/String;)Lio/fabric/sdk/android/a/e/d;
-! 
-!     .line 40
-!     iget-object p1, p1, Lcom/crashlytics/android/core/u;->qv:Lcom/crashlytics/android/core/aq;
-! 
-!     invoke-static {v0, p1}, Lcom/crashlytics/android/core/ah;->a(Lio/fabric/sdk/android/a/e/d;Lcom/crashlytics/android/core/aq;)Lio/fabric/sdk/android/a/e/d;
-! 
-!     move-result-object p1
-! 
-!     .line 42
-!     invoke-static {}, Lio/fabric/sdk/android/c;->xZ()Lio/fabric/sdk/android/l;
-! 
-!     move-result-object v0
-! 
-!     new-instance v1, Ljava/lang/StringBuilder;
-! 
-!     const-string v2, "Sending report to: "
-! 
-!     invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-! 
-!     .line 3100
-!     iget-object v2, p0, Lio/fabric/sdk/android/a/b/a;->url:Ljava/lang/String;
-! 
-!     .line 42
-!     invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-! 
-!     invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
-! 
-!     move-result-object v1
-! 
-!     const-string v2, "CrashlyticsCore"
-! 
-!     invoke-interface {v0, v2, v1}, Lio/fabric/sdk/android/l;->d(Ljava/lang/String;Ljava/lang/String;)V
-! 
-!     .line 44
-!     invoke-virtual {p1}, Lio/fabric/sdk/android/a/e/d;->za()I
-! 
-!     move-result p1
-! 
-!     .line 46
-!     invoke-static {}, Lio/fabric/sdk/android/c;->xZ()Lio/fabric/sdk/android/l;
-! 
-!     move-result-object v0
-! 
-!     invoke-static {p1}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;
-! 
-!     move-result-object v1
-! 
-!     const-string v3, "Result was: "
-! 
-!     invoke-virtual {v3, v1}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
-! 
-!     move-result-object v1
-! 
-!     invoke-interface {v0, v2, v1}, Lio/fabric/sdk/android/l;->d(Ljava/lang/String;Ljava/lang/String;)V
-! 
-!     .line 48
-!     invoke-static {p1}, Lio/fabric/sdk/android/a/b/v;->cV(I)I
-! 
-!     move-result p1
-! 
-!     if-nez p1, :cond_0
-! 
-!     const/4 p1, 0x1
-! 
-!     return p1
-! 
-!     :cond_0
-!     const/4 p1, 0x0
-  
-!     return p1
-  .end method
---- 29,43 ----
-  .end method
-  
-  .method private static a(Lio/fabric/sdk/android/a/e/d;Lcom/crashlytics/android/core/aq;)Lio/fabric/sdk/android/a/e/d;
-!     .locals 0
-  
-!     return-void
-  .end method
-  
-  
-  # virtual methods
-  .method public final a(Lcom/crashlytics/android/core/u;)Z
-!     .locals 0
-  
-!     return-void
-  .end method
-Only in com.discord-904/smali/com/crashlytics/android/core: ah.smali.orig
-Only in com.discord-904/smali/com/crashlytics/android/core: ah.smali.rej
-diff -crB com.discord-904-base/smali/com/crashlytics/android/core/x.smali com.discord-904/smali/com/crashlytics/android/core/x.smali
-*** com.discord-904-base/smali/com/crashlytics/android/core/x.smali	2019-05-29 01:12:16.708795189 +0300
---- com.discord-904/smali/com/crashlytics/android/core/x.smali	2019-05-29 01:18:48.460962089 +0300
-***************
-*** 31,371 ****
-  
-  # virtual methods
-  .method public final a(Lcom/crashlytics/android/core/u;)Z
-!     .locals 14
-  
-!     .line 59
-!     invoke-virtual {p0}, Lcom/crashlytics/android/core/x;->ym()Lio/fabric/sdk/android/a/e/d;
-! 
-!     move-result-object v0
-! 
-!     .line 3075
-!     iget-object v1, p1, Lcom/crashlytics/android/core/u;->oh:Ljava/lang/String;
-! 
-!     const-string v2, "X-CRASHLYTICS-API-KEY"
-! 
-!     invoke-virtual {v0, v2, v1}, Lio/fabric/sdk/android/a/e/d;->ac(Ljava/lang/String;Ljava/lang/String;)Lio/fabric/sdk/android/a/e/d;
-! 
-!     move-result-object v0
-! 
-!     const-string v1, "X-CRASHLYTICS-API-CLIENT-TYPE"
-! 
-!     const-string v2, "android"
-! 
-!     .line 3076
-!     invoke-virtual {v0, v1, v2}, Lio/fabric/sdk/android/a/e/d;->ac(Ljava/lang/String;Ljava/lang/String;)Lio/fabric/sdk/android/a/e/d;
-! 
-!     move-result-object v0
-! 
-!     iget-object v1, p0, Lcom/crashlytics/android/core/x;->nj:Lio/fabric/sdk/android/i;
-! 
-!     .line 3077
-!     invoke-virtual {v1}, Lio/fabric/sdk/android/i;->getVersion()Ljava/lang/String;
-! 
-!     move-result-object v1
-! 
-!     const-string v2, "X-CRASHLYTICS-API-CLIENT-VERSION"
-! 
-!     invoke-virtual {v0, v2, v1}, Lio/fabric/sdk/android/a/e/d;->ac(Ljava/lang/String;Ljava/lang/String;)Lio/fabric/sdk/android/a/e/d;
-! 
-!     move-result-object v0
-! 
-!     .line 3080
-!     iget-object v1, p1, Lcom/crashlytics/android/core/u;->qv:Lcom/crashlytics/android/core/aq;
-! 
-!     invoke-interface {v1}, Lcom/crashlytics/android/core/aq;->cP()Ljava/util/Map;
-! 
-!     move-result-object v1
-! 
-!     .line 3082
-!     invoke-interface {v1}, Ljava/util/Map;->entrySet()Ljava/util/Set;
-! 
-!     move-result-object v1
-! 
-!     invoke-interface {v1}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
-! 
-!     move-result-object v1
-! 
-!     :goto_0
-!     invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
-! 
-!     move-result v2
-! 
-!     if-eqz v2, :cond_0
-! 
-!     invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
-! 
-!     move-result-object v2
-! 
-!     check-cast v2, Ljava/util/Map$Entry;
-! 
-!     .line 3868
-!     invoke-interface {v2}, Ljava/util/Map$Entry;->getKey()Ljava/lang/Object;
-! 
-!     move-result-object v3
-! 
-!     check-cast v3, Ljava/lang/String;
-! 
-!     invoke-interface {v2}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;
-! 
-!     move-result-object v2
-! 
-!     check-cast v2, Ljava/lang/String;
-! 
-!     invoke-virtual {v0, v3, v2}, Lio/fabric/sdk/android/a/e/d;->ac(Ljava/lang/String;Ljava/lang/String;)Lio/fabric/sdk/android/a/e/d;
-! 
-!     move-result-object v0
-! 
-!     goto :goto_0
-! 
-!     .line 61
-!     :cond_0
-!     iget-object p1, p1, Lcom/crashlytics/android/core/u;->qv:Lcom/crashlytics/android/core/aq;
-! 
-!     .line 4089
-!     invoke-interface {p1}, Lcom/crashlytics/android/core/aq;->getIdentifier()Ljava/lang/String;
-! 
-!     move-result-object v1
-! 
-!     const/4 v2, 0x0
-! 
-!     const-string v3, "report[identifier]"
-! 
-!     .line 4530
-!     invoke-virtual {v0, v3, v2, v1}, Lio/fabric/sdk/android/a/e/d;->o(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lio/fabric/sdk/android/a/e/d;
-! 
-!     .line 4091
-!     invoke-interface {p1}, Lcom/crashlytics/android/core/aq;->cO()[Ljava/io/File;
-! 
-!     move-result-object v1
-! 
-!     array-length v1, v1
-! 
-!     const-string v2, "application/octet-stream"
-! 
-!     const-string v3, " to report "
-! 
-!     const/4 v4, 0x0
-! 
-!     const/4 v5, 0x1
-! 
-!     const-string v6, "CrashlyticsCore"
-! 
-!     if-ne v1, v5, :cond_1
-! 
-!     .line 4092
-!     invoke-static {}, Lio/fabric/sdk/android/c;->xZ()Lio/fabric/sdk/android/l;
-! 
-!     move-result-object v1
-! 
-!     new-instance v7, Ljava/lang/StringBuilder;
-! 
-!     const-string v8, "Adding single file "
-! 
-!     invoke-direct {v7, v8}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-! 
-!     invoke-interface {p1}, Lcom/crashlytics/android/core/aq;->getFileName()Ljava/lang/String;
-! 
-!     move-result-object v8
-! 
-!     invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-! 
-!     invoke-virtual {v7, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-! 
-!     .line 4093
-!     invoke-interface {p1}, Lcom/crashlytics/android/core/aq;->getIdentifier()Ljava/lang/String;
-! 
-!     move-result-object v3
-! 
-!     invoke-virtual {v7, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-! 
-!     invoke-virtual {v7}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
-! 
-!     move-result-object v3
-! 
-!     .line 4092
-!     invoke-interface {v1, v6, v3}, Lio/fabric/sdk/android/l;->d(Ljava/lang/String;Ljava/lang/String;)V
-! 
-!     .line 4094
-!     invoke-interface {p1}, Lcom/crashlytics/android/core/aq;->getFileName()Ljava/lang/String;
-! 
-!     move-result-object v1
-! 
-!     .line 4095
-!     invoke-interface {p1}, Lcom/crashlytics/android/core/aq;->cN()Ljava/io/File;
-! 
-!     move-result-object p1
-! 
-!     const-string v3, "report[file]"
-! 
-!     .line 4094
-!     invoke-virtual {v0, v3, v1, v2, p1}, Lio/fabric/sdk/android/a/e/d;->a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/io/File;)Lio/fabric/sdk/android/a/e/d;
-! 
-!     move-result-object v0
-! 
-!     goto :goto_2
-! 
-!     .line 4099
-!     :cond_1
-!     invoke-interface {p1}, Lcom/crashlytics/android/core/aq;->cO()[Ljava/io/File;
-! 
-!     move-result-object v1
-! 
-!     array-length v7, v1
-! 
-!     const/4 v8, 0x0
-! 
-!     const/4 v9, 0x0
-! 
-!     :goto_1
-!     if-ge v8, v7, :cond_2
-! 
-!     aget-object v10, v1, v8
-! 
-!     .line 4100
-!     invoke-static {}, Lio/fabric/sdk/android/c;->xZ()Lio/fabric/sdk/android/l;
-! 
-!     move-result-object v11
-! 
-!     new-instance v12, Ljava/lang/StringBuilder;
-! 
-!     const-string v13, "Adding file "
-! 
-!     invoke-direct {v12, v13}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-! 
-!     invoke-virtual {v10}, Ljava/io/File;->getName()Ljava/lang/String;
-! 
-!     move-result-object v13
-! 
-!     invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-! 
-!     invoke-virtual {v12, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-! 
-!     .line 4101
-!     invoke-interface {p1}, Lcom/crashlytics/android/core/aq;->getIdentifier()Ljava/lang/String;
-! 
-!     move-result-object v13
-! 
-!     invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-! 
-!     invoke-virtual {v12}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
-! 
-!     move-result-object v12
-! 
-!     .line 4100
-!     invoke-interface {v11, v6, v12}, Lio/fabric/sdk/android/l;->d(Ljava/lang/String;Ljava/lang/String;)V
-! 
-!     .line 4102
-!     new-instance v11, Ljava/lang/StringBuilder;
-! 
-!     const-string v12, "report[file"
-! 
-!     invoke-direct {v11, v12}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-! 
-!     invoke-virtual {v11, v9}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
-! 
-!     const-string v12, "]"
-! 
-!     invoke-virtual {v11, v12}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-! 
-!     invoke-virtual {v11}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
-! 
-!     move-result-object v11
-! 
-!     invoke-virtual {v10}, Ljava/io/File;->getName()Ljava/lang/String;
-! 
-!     move-result-object v12
-! 
-!     invoke-virtual {v0, v11, v12, v2, v10}, Lio/fabric/sdk/android/a/e/d;->a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/io/File;)Lio/fabric/sdk/android/a/e/d;
-! 
-!     add-int/2addr v9, v5
-! 
-!     add-int/lit8 v8, v8, 0x1
-! 
-!     goto :goto_1
-! 
-!     .line 63
-!     :cond_2
-!     :goto_2
-!     invoke-static {}, Lio/fabric/sdk/android/c;->xZ()Lio/fabric/sdk/android/l;
-! 
-!     move-result-object p1
-! 
-!     new-instance v1, Ljava/lang/StringBuilder;
-! 
-!     const-string v2, "Sending report to: "
-! 
-!     invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-! 
-!     .line 5100
-!     iget-object v2, p0, Lio/fabric/sdk/android/a/b/a;->url:Ljava/lang/String;
-! 
-!     .line 63
-!     invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-! 
-!     invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
-! 
-!     move-result-object v1
-! 
-!     invoke-interface {p1, v6, v1}, Lio/fabric/sdk/android/l;->d(Ljava/lang/String;Ljava/lang/String;)V
-! 
-!     .line 65
-!     invoke-virtual {v0}, Lio/fabric/sdk/android/a/e/d;->za()I
-! 
-!     move-result p1
-! 
-!     .line 67
-!     invoke-static {}, Lio/fabric/sdk/android/c;->xZ()Lio/fabric/sdk/android/l;
-! 
-!     move-result-object v1
-! 
-!     new-instance v2, Ljava/lang/StringBuilder;
-! 
-!     const-string v3, "Create report request ID: "
-! 
-!     invoke-direct {v2, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-! 
-!     const-string v3, "X-REQUEST-ID"
-! 
-!     .line 68
-!     invoke-virtual {v0, v3}, Lio/fabric/sdk/android/a/e/d;->du(Ljava/lang/String;)Ljava/lang/String;
-! 
-!     move-result-object v0
-! 
-!     invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-! 
-!     invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
-! 
-!     move-result-object v0
-! 
-!     .line 67
-!     invoke-interface {v1, v6, v0}, Lio/fabric/sdk/android/l;->d(Ljava/lang/String;Ljava/lang/String;)V
-! 
-!     .line 69
-!     invoke-static {}, Lio/fabric/sdk/android/c;->xZ()Lio/fabric/sdk/android/l;
-! 
-!     move-result-object v0
-! 
-!     invoke-static {p1}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;
-! 
-!     move-result-object v1
-! 
-!     const-string v2, "Result was: "
-! 
-!     invoke-virtual {v2, v1}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
-! 
-!     move-result-object v1
-! 
-!     invoke-interface {v0, v6, v1}, Lio/fabric/sdk/android/l;->d(Ljava/lang/String;Ljava/lang/String;)V
-! 
-!     .line 71
-!     invoke-static {p1}, Lio/fabric/sdk/android/a/b/v;->cV(I)I
-! 
-!     move-result p1
-! 
-!     if-nez p1, :cond_3
-! 
-!     return v5
-! 
-!     :cond_3
-!     return v4
-  .end method
---- 31,37 ----
-  
-  # virtual methods
-  .method public final a(Lcom/crashlytics/android/core/u;)Z
-!     .locals 0
-  
-!     return-void
-  .end method
-Only in com.discord-904/smali/com/crashlytics/android/core: x.smali.orig
-Only in com.discord-904/smali/com/crashlytics/android/core: x.smali.rej
-diff -crB com.discord-904-base/smali/com/discord/utilities/analytics/AdjustConfig$AdjustLifecycleListener.smali com.discord-904/smali/com/discord/utilities/analytics/AdjustConfig$AdjustLifecycleListener.smali
-*** com.discord-904-base/smali/com/discord/utilities/analytics/AdjustConfig$AdjustLifecycleListener.smali	2019-05-29 01:12:17.185464351 +0300
---- com.discord-904/smali/com/discord/utilities/analytics/AdjustConfig$AdjustLifecycleListener.smali	2019-05-29 01:16:22.286807364 +0300
-***************
-*** 42,95 ****
-  .end method
-  
-  .method public final onActivityPaused(Landroid/app/Activity;)V
-!     .locals 1
-  
--     .line 1050
--     invoke-static {}, Lcom/adjust/sdk/e;->W()Lcom/adjust/sdk/k;
-- 
--     move-result-object p1
-- 
--     const/4 v0, 0x0
-- 
--     .line 1396
--     invoke-virtual {p1, v0}, Lcom/adjust/sdk/k;->e(Ljava/lang/String;)Z
-- 
--     move-result v0
-- 
--     if-eqz v0, :cond_0
-- 
--     .line 1094
--     iget-object p1, p1, Lcom/adjust/sdk/k;->di:Lcom/adjust/sdk/v;
-- 
--     invoke-interface {p1}, Lcom/adjust/sdk/v;->onPause()V
-- 
--     :cond_0
-      return-void
-  .end method
-  
-  .method public final onActivityResumed(Landroid/app/Activity;)V
-!     .locals 1
-! 
-!     .line 2045
-!     invoke-static {}, Lcom/adjust/sdk/e;->W()Lcom/adjust/sdk/k;
-! 
-!     move-result-object p1
-! 
-!     const/4 v0, 0x0
-! 
-!     .line 2396
-!     invoke-virtual {p1, v0}, Lcom/adjust/sdk/k;->e(Ljava/lang/String;)Z
-! 
-!     move-result v0
-! 
-!     if-eqz v0, :cond_0
-! 
-!     .line 2083
-!     iget-object p1, p1, Lcom/adjust/sdk/k;->di:Lcom/adjust/sdk/v;
-! 
-!     invoke-interface {p1}, Lcom/adjust/sdk/v;->onResume()V
-  
--     :cond_0
-      return-void
-  .end method
-  
---- 42,55 ----
-  .end method
-  
-  .method public final onActivityPaused(Landroid/app/Activity;)V
-!     .locals 0
-  
-      return-void
-  .end method
-  
-  .method public final onActivityResumed(Landroid/app/Activity;)V
-!     .locals 0
-  
-      return-void
-  .end method
-  
-diff -crB com.discord-904-base/smali/com/discord/utilities/analytics/AdjustConfig.smali com.discord-904/smali/com/discord/utilities/analytics/AdjustConfig.smali
-*** com.discord-904-base/smali/com/discord/utilities/analytics/AdjustConfig.smali	2019-05-29 01:12:17.188797702 +0300
---- com.discord-904/smali/com/discord/utilities/analytics/AdjustConfig.smali	2019-05-29 01:16:22.286807364 +0300
-***************
-*** 12,18 ****
-  
-  
-  # static fields
-! .field private static final ADJUST_APP_TOKEN:Ljava/lang/String; = "d8fcx8xdmrr4"
-  
-  .field private static final ADJUST_ENVIRONMENT:Ljava/lang/String;
-  
---- 12,18 ----
-  
-  
-  # static fields
-! .field private static final ADJUST_APP_TOKEN:Ljava/lang/String; = "aaaaaaaaaaaa"
-  
-  .field private static final ADJUST_ENVIRONMENT:Ljava/lang/String;
-  
-***************
-*** 50,168 ****
-  
-  # virtual methods
-  .method public final init(Landroid/app/Application;Z)V
-!     .locals 3
-! 
-!     const-string v0, "application"
-! 
-!     invoke-static {p1, v0}, Lkotlin/jvm/internal/k;->h(Ljava/lang/Object;Ljava/lang/String;)V
-! 
-!     if-eqz p2, :cond_0
-! 
-!     return-void
-! 
-!     .line 26
-!     :cond_0
-!     new-instance p2, Lcom/adjust/sdk/f;
-! 
-!     move-object v0, p1
-! 
-!     check-cast v0, Landroid/content/Context;
-! 
-!     sget-object v1, Lcom/discord/utilities/analytics/AdjustConfig;->ADJUST_ENVIRONMENT:Ljava/lang/String;
-! 
-!     const-string v2, "d8fcx8xdmrr4"
-! 
-!     invoke-direct {p2, v0, v2, v1}, Lcom/adjust/sdk/f;-><init>(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;)V
-! 
-!     .line 27
-!     sget-object v1, Lcom/discord/utilities/analytics/AdjustConfig$init$1;->INSTANCE:Lcom/discord/utilities/analytics/AdjustConfig$init$1;
-! 
-!     check-cast v1, Lcom/adjust/sdk/af;
-! 
-!     .line 1098
-!     iput-object v1, p2, Lcom/adjust/sdk/f;->cL:Lcom/adjust/sdk/af;
-! 
-!     .line 2035
-!     invoke-static {}, Lcom/adjust/sdk/e;->W()Lcom/adjust/sdk/k;
-! 
-!     move-result-object v1
-! 
-!     .line 2047
-!     iget-object v2, v1, Lcom/adjust/sdk/k;->di:Lcom/adjust/sdk/v;
-! 
-!     if-eqz v2, :cond_1
-! 
-!     .line 2048
-!     invoke-static {}, Lcom/adjust/sdk/j;->X()Lcom/adjust/sdk/x;
-! 
-!     move-result-object p2
-! 
-!     const/4 v1, 0x0
-! 
-!     new-array v1, v1, [Ljava/lang/Object;
-! 
-!     const-string v2, "Adjust already initialized"
-! 
-!     invoke-interface {p2, v2, v1}, Lcom/adjust/sdk/x;->f(Ljava/lang/String;[Ljava/lang/Object;)V
-! 
-!     goto :goto_0
-! 
-!     .line 2052
-!     :cond_1
-!     iget-object v2, v1, Lcom/adjust/sdk/k;->cV:Ljava/util/List;
-! 
-!     iput-object v2, p2, Lcom/adjust/sdk/f;->cV:Ljava/util/List;
-! 
-!     .line 2053
-!     iget-object v2, v1, Lcom/adjust/sdk/k;->pushToken:Ljava/lang/String;
-! 
-!     iput-object v2, p2, Lcom/adjust/sdk/f;->pushToken:Ljava/lang/String;
-! 
-!     .line 2054
-!     iget-object v2, v1, Lcom/adjust/sdk/k;->cX:Ljava/lang/Boolean;
-! 
-!     iput-object v2, p2, Lcom/adjust/sdk/f;->cX:Ljava/lang/Boolean;
-! 
-!     .line 2055
-!     iget-boolean v2, v1, Lcom/adjust/sdk/k;->cY:Z
-! 
-!     iput-boolean v2, p2, Lcom/adjust/sdk/f;->cY:Z
-! 
-!     .line 2057
-!     invoke-static {p2}, Lcom/adjust/sdk/j;->b(Lcom/adjust/sdk/f;)Lcom/adjust/sdk/v;
-! 
-!     move-result-object v2
-! 
-!     iput-object v2, v1, Lcom/adjust/sdk/k;->di:Lcom/adjust/sdk/v;
-! 
-!     .line 2059
-!     iget-object p2, p2, Lcom/adjust/sdk/f;->context:Landroid/content/Context;
-! 
-!     .line 2472
-!     new-instance v2, Lcom/adjust/sdk/k$2;
-! 
-!     invoke-direct {v2, v1, p2}, Lcom/adjust/sdk/k$2;-><init>(Lcom/adjust/sdk/k;Landroid/content/Context;)V
-! 
-!     .line 2480
-!     invoke-static {v2}, Lcom/adjust/sdk/az;->a(Ljava/lang/Runnable;)V
-! 
-!     .line 35
-!     :goto_0
-!     sget-object p2, Lcom/discord/utilities/analytics/AdjustConfig$init$2;->INSTANCE:Lcom/discord/utilities/analytics/AdjustConfig$init$2;
-! 
-!     check-cast p2, Lcom/adjust/sdk/ah;
-! 
-!     .line 3125
-!     invoke-static {v0, p2}, Lcom/adjust/sdk/az;->a(Landroid/content/Context;Lcom/adjust/sdk/ah;)V
-! 
-!     .line 41
-!     new-instance p2, Lcom/discord/utilities/analytics/AdjustConfig$AdjustLifecycleListener;
-! 
-!     invoke-direct {p2}, Lcom/discord/utilities/analytics/AdjustConfig$AdjustLifecycleListener;-><init>()V
-! 
-!     check-cast p2, Landroid/app/Application$ActivityLifecycleCallbacks;
-! 
-!     invoke-virtual {p1, p2}, Landroid/app/Application;->registerActivityLifecycleCallbacks(Landroid/app/Application$ActivityLifecycleCallbacks;)V
-  
-      return-void
-  .end method
---- 50,56 ----
-  
-  # virtual methods
-  .method public final init(Landroid/app/Application;Z)V
-!     .locals 0
-  
-      return-void
-  .end method
-diff -crB com.discord-904-base/smali/com/discord/utilities/analytics/AnalyticsTracker$AdjustEventTracker.smali com.discord-904/smali/com/discord/utilities/analytics/AnalyticsTracker$AdjustEventTracker.smali
-*** com.discord-904-base/smali/com/discord/utilities/analytics/AnalyticsTracker$AdjustEventTracker.smali	2019-05-29 01:12:17.188797702 +0300
---- com.discord-904/smali/com/discord/utilities/analytics/AnalyticsTracker$AdjustEventTracker.smali	2019-05-29 01:16:22.286807364 +0300
-***************
-*** 15,23 ****
-  
-  
-  # static fields
-! .field private static final EVENT_TOKEN_LOGIN:Ljava/lang/String; = "ctt5aq"
-  
-! .field private static final EVENT_TOKEN_REGISTER:Ljava/lang/String; = "ebn8ke"
-  
-  .field public static final INSTANCE:Lcom/discord/utilities/analytics/AnalyticsTracker$AdjustEventTracker;
-  
---- 15,23 ----
-  
-  
-  # static fields
-! .field private static final EVENT_TOKEN_LOGIN:Ljava/lang/String; = "aaaaaa"
-  
-! .field private static final EVENT_TOKEN_REGISTER:Ljava/lang/String; = "aaaaaa"
-  
-  .field public static final INSTANCE:Lcom/discord/utilities/analytics/AnalyticsTracker$AdjustEventTracker;
-  
-***************
-*** 48,78 ****
-  
-  # virtual methods
-  .method public final trackLogin()V
-!     .locals 2
-! 
-!     .line 934
-!     new-instance v0, Lcom/adjust/sdk/g;
-! 
-!     const-string v1, "ctt5aq"
-! 
-!     invoke-direct {v0, v1}, Lcom/adjust/sdk/g;-><init>(Ljava/lang/String;)V
-! 
-!     invoke-static {v0}, Lcom/adjust/sdk/e;->a(Lcom/adjust/sdk/g;)V
-  
-      return-void
-  .end method
-  
-  .method public final trackRegister()V
-!     .locals 2
-! 
-!     .line 932
-!     new-instance v0, Lcom/adjust/sdk/g;
-! 
-!     const-string v1, "ebn8ke"
-! 
-!     invoke-direct {v0, v1}, Lcom/adjust/sdk/g;-><init>(Ljava/lang/String;)V
-! 
-!     invoke-static {v0}, Lcom/adjust/sdk/e;->a(Lcom/adjust/sdk/g;)V
-  
-      return-void
-  .end method
---- 48,60 ----
-  
-  # virtual methods
-  .method public final trackLogin()V
-!     .locals 0
-  
-      return-void
-  .end method
-  
-  .method public final trackRegister()V
-!     .locals 0
-  
-      return-void
-  .end method
-diff -crB com.discord-904-base/smali/com/discord/utilities/analytics/AnalyticSuperProperties.smali com.discord-904/smali/com/discord/utilities/analytics/AnalyticSuperProperties.smali
-*** com.discord-904-base/smali/com/discord/utilities/analytics/AnalyticSuperProperties.smali	2019-05-29 01:12:17.188797702 +0300
---- com.discord-904/smali/com/discord/utilities/analytics/AnalyticSuperProperties.smali	2019-05-29 01:16:22.290140716 +0300
-***************
-*** 173,179 ****
-  .method private final setBaselineProperties()V
-      .locals 3
-  
-!     const/16 v0, 0x8
-  
-      .line 63
-      new-array v0, v0, [Lkotlin/Pair;
---- 173,179 ----
-  .method private final setBaselineProperties()V
-      .locals 3
-  
-!     const/16 v0, 0x4
-  
-      .line 63
-      new-array v0, v0, [Lkotlin/Pair;
-***************
-*** 234,313 ****
-  
-      aput-object v1, v0, v2
-  
--     .line 68
--     new-instance v1, Ljava/lang/StringBuilder;
-- 
--     invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
-- 
--     sget-object v2, Landroid/os/Build;->MODEL:Ljava/lang/String;
-- 
--     invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-- 
--     const-string v2, ", "
-- 
--     invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-- 
--     sget-object v2, Landroid/os/Build;->PRODUCT:Ljava/lang/String;
-- 
--     invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-- 
--     invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
-- 
--     move-result-object v1
-- 
--     const-string v2, "device"
-- 
--     invoke-static {v2, v1}, Lkotlin/q;->m(Ljava/lang/Object;Ljava/lang/Object;)Lkotlin/Pair;
-- 
--     move-result-object v1
-- 
--     const/4 v2, 0x4
-- 
--     aput-object v1, v0, v2
-- 
--     const-string v1, "os"
-- 
--     const-string v2, "Android"
-- 
--     .line 69
--     invoke-static {v1, v2}, Lkotlin/q;->m(Ljava/lang/Object;Ljava/lang/Object;)Lkotlin/Pair;
-- 
--     move-result-object v1
-- 
--     const/4 v2, 0x5
-- 
--     aput-object v1, v0, v2
-- 
--     .line 70
--     sget v1, Landroid/os/Build$VERSION;->SDK_INT:I
-- 
--     invoke-static {v1}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;
-- 
--     move-result-object v1
-- 
--     const-string v2, "os_sdk_version"
-- 
--     invoke-static {v2, v1}, Lkotlin/q;->m(Ljava/lang/Object;Ljava/lang/Object;)Lkotlin/Pair;
-- 
--     move-result-object v1
-- 
--     const/4 v2, 0x6
-- 
--     aput-object v1, v0, v2
-- 
--     .line 71
--     sget-object v1, Landroid/os/Build$VERSION;->RELEASE:Ljava/lang/String;
-- 
--     const-string v2, "os_version"
-- 
--     invoke-static {v2, v1}, Lkotlin/q;->m(Ljava/lang/Object;Ljava/lang/Object;)Lkotlin/Pair;
-- 
--     move-result-object v1
-- 
--     const/4 v2, 0x7
-- 
--     aput-object v1, v0, v2
-- 
-      .line 63
-      invoke-static {v0}, Lkotlin/a/ab;->a([Lkotlin/Pair;)Ljava/util/Map;
-  
---- 234,239 ----
-***************
-*** 437,857 ****
-  .end method
-  
-  .method public final setAdvertiserId(Ljava/lang/String;)V
-!     .locals 1
-! 
-!     const-string v0, "advertiserId"
-! 
-!     invoke-static {p1, v0}, Lkotlin/jvm/internal/k;->h(Ljava/lang/Object;Ljava/lang/String;)V
-! 
-!     const-string v0, "device_advertiser_id"
-! 
-!     .line 29
-!     invoke-static {v0, p1}, Lkotlin/q;->m(Ljava/lang/Object;Ljava/lang/Object;)Lkotlin/Pair;
-! 
-!     move-result-object p1
-! 
-!     invoke-static {p1}, Lkotlin/a/ab;->a(Lkotlin/Pair;)Ljava/util/Map;
-! 
-!     move-result-object p1
-! 
-!     invoke-direct {p0, p1}, Lcom/discord/utilities/analytics/AnalyticSuperProperties;->updateSuperProperties(Ljava/util/Map;)V
-  
-      return-void
-  .end method
-  
-  .method public final setCampaignProperties(Landroid/content/Intent;)V
-!     .locals 7
-! 
-!     const-string v0, "intent"
-! 
-!     invoke-static {p1, v0}, Lkotlin/jvm/internal/k;->h(Ljava/lang/Object;Ljava/lang/String;)V
-! 
-!     .line 33
-!     invoke-virtual {p1}, Landroid/content/Intent;->getExtras()Landroid/os/Bundle;
-! 
-!     move-result-object p1
-! 
-!     if-eqz p1, :cond_9
-! 
-!     const-string v0, "referrer"
-! 
-!     invoke-virtual {p1, v0}, Landroid/os/Bundle;->getString(Ljava/lang/String;)Ljava/lang/String;
-! 
-!     move-result-object p1
-! 
-!     if-nez p1, :cond_0
-! 
-!     goto/16 :goto_8
-! 
-!     :cond_0
-!     const/4 v1, 0x1
-! 
-!     .line 34
-!     new-array v2, v1, [Lkotlin/Pair;
-! 
-!     invoke-static {v0, p1}, Lkotlin/q;->m(Ljava/lang/Object;Ljava/lang/Object;)Lkotlin/Pair;
-! 
-!     move-result-object v0
-! 
-!     const/4 v3, 0x0
-! 
-!     aput-object v0, v2, v3
-! 
-!     invoke-static {v2}, Lkotlin/a/ab;->b([Lkotlin/Pair;)Ljava/util/Map;
-! 
-!     move-result-object v0
-! 
-!     .line 36
-!     check-cast p1, Ljava/lang/CharSequence;
-! 
-!     new-array v2, v1, [Ljava/lang/String;
-! 
-!     const-string v4, "&"
-! 
-!     aput-object v4, v2, v3
-! 
-!     .line 2199
-!     invoke-static {p1, v2, v3, v3}, Lkotlin/text/l;->b(Ljava/lang/CharSequence;[Ljava/lang/String;ZI)Ljava/util/List;
-! 
-!     move-result-object p1
-! 
-!     .line 37
-!     check-cast p1, Ljava/lang/Iterable;
-! 
-!     .line 101
-!     new-instance v2, Ljava/util/ArrayList;
-! 
-!     const/16 v4, 0xa
-! 
-!     invoke-static {p1, v4}, Lkotlin/a/l;->a(Ljava/lang/Iterable;I)I
-! 
-!     move-result v4
-! 
-!     invoke-direct {v2, v4}, Ljava/util/ArrayList;-><init>(I)V
-! 
-!     check-cast v2, Ljava/util/Collection;
-! 
-!     .line 102
-!     invoke-interface {p1}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator;
-! 
-!     move-result-object p1
-! 
-!     :goto_0
-!     invoke-interface {p1}, Ljava/util/Iterator;->hasNext()Z
-! 
-!     move-result v4
-! 
-!     if-eqz v4, :cond_1
-! 
-!     invoke-interface {p1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
-! 
-!     move-result-object v4
-! 
-!     .line 103
-!     check-cast v4, Ljava/lang/String;
-! 
-!     .line 38
-!     check-cast v4, Ljava/lang/CharSequence;
-! 
-!     new-array v5, v1, [Ljava/lang/String;
-! 
-!     const-string v6, "="
-! 
-!     aput-object v6, v5, v3
-! 
-!     .line 3199
-!     invoke-static {v4, v5, v3, v3}, Lkotlin/text/l;->b(Ljava/lang/CharSequence;[Ljava/lang/String;ZI)Ljava/util/List;
-! 
-!     move-result-object v4
-! 
-!     .line 38
-!     invoke-interface {v2, v4}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z
-! 
-!     goto :goto_0
-! 
-!     .line 104
-!     :cond_1
-!     check-cast v2, Ljava/util/List;
-! 
-!     check-cast v2, Ljava/lang/Iterable;
-! 
-!     .line 105
-!     new-instance p1, Ljava/util/ArrayList;
-  
--     invoke-direct {p1}, Ljava/util/ArrayList;-><init>()V
-- 
--     check-cast p1, Ljava/util/Collection;
-- 
--     .line 106
--     invoke-interface {v2}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator;
-- 
--     move-result-object v2
-- 
--     :cond_2
--     :goto_1
--     invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z
-- 
--     move-result v4
-- 
--     if-eqz v4, :cond_4
-- 
--     invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
-- 
--     move-result-object v4
-- 
--     move-object v5, v4
-- 
--     check-cast v5, Ljava/util/List;
-- 
--     .line 39
--     invoke-interface {v5}, Ljava/util/List;->size()I
-- 
--     move-result v5
-- 
--     const/4 v6, 0x2
-- 
--     if-ne v5, v6, :cond_3
-- 
--     const/4 v5, 0x1
-- 
--     goto :goto_2
-- 
--     :cond_3
--     const/4 v5, 0x0
-- 
--     :goto_2
--     if-eqz v5, :cond_2
-- 
--     invoke-interface {p1, v4}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z
-- 
--     goto :goto_1
-- 
--     .line 107
--     :cond_4
--     check-cast p1, Ljava/util/List;
-- 
--     check-cast p1, Ljava/lang/Iterable;
-- 
--     .line 108
--     new-instance v2, Ljava/util/ArrayList;
-- 
--     invoke-direct {v2}, Ljava/util/ArrayList;-><init>()V
-- 
--     check-cast v2, Ljava/util/Collection;
-- 
--     .line 109
--     invoke-interface {p1}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator;
-- 
--     move-result-object p1
-- 
--     :cond_5
--     :goto_3
--     invoke-interface {p1}, Ljava/util/Iterator;->hasNext()Z
-- 
--     move-result v4
-- 
--     if-eqz v4, :cond_7
-- 
--     invoke-interface {p1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
-- 
--     move-result-object v4
-- 
--     move-object v5, v4
-- 
--     check-cast v5, Ljava/util/List;
-- 
--     .line 41
--     invoke-interface {v5, v3}, Ljava/util/List;->get(I)Ljava/lang/Object;
-- 
--     move-result-object v5
-- 
--     check-cast v5, Ljava/lang/String;
-- 
--     .line 42
--     invoke-virtual {v5}, Ljava/lang/String;->hashCode()I
-- 
--     move-result v6
-- 
--     sparse-switch v6, :sswitch_data_0
-- 
--     goto :goto_5
-- 
--     :sswitch_0
--     const-string v6, "utm_source"
-- 
--     invoke-virtual {v5, v6}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
-- 
--     move-result v5
-- 
--     if-eqz v5, :cond_6
-- 
--     goto :goto_4
-- 
--     :sswitch_1
--     const-string v6, "location"
-- 
--     invoke-virtual {v5, v6}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
-- 
--     move-result v5
-- 
--     if-eqz v5, :cond_6
-- 
--     goto :goto_4
-- 
--     :sswitch_2
--     const-string v6, "utm_medium"
-- 
--     invoke-virtual {v5, v6}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
-- 
--     move-result v5
-- 
--     if-eqz v5, :cond_6
-- 
--     goto :goto_4
-- 
--     :sswitch_3
--     const-string v6, "search_engine"
-- 
--     invoke-virtual {v5, v6}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
-- 
--     move-result v5
-- 
--     if-eqz v5, :cond_6
-- 
--     goto :goto_4
-- 
--     :sswitch_4
--     const-string v6, "mp_keyword"
-- 
--     invoke-virtual {v5, v6}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
-- 
--     move-result v5
-- 
--     if-eqz v5, :cond_6
-- 
--     goto :goto_4
-- 
--     :sswitch_5
--     const-string v6, "utm_term"
-- 
--     invoke-virtual {v5, v6}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
-- 
--     move-result v5
-- 
--     if-eqz v5, :cond_6
-- 
--     goto :goto_4
-- 
--     :sswitch_6
--     const-string v6, "utm_campaign"
-- 
--     invoke-virtual {v5, v6}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
-- 
--     move-result v5
-- 
--     if-eqz v5, :cond_6
-- 
--     goto :goto_4
-- 
--     :sswitch_7
--     const-string v6, "referring_domain"
-- 
--     invoke-virtual {v5, v6}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
-- 
--     move-result v5
-- 
--     if-eqz v5, :cond_6
-- 
--     goto :goto_4
-- 
--     :sswitch_8
--     const-string v6, "utm_content"
-- 
--     invoke-virtual {v5, v6}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
-- 
--     move-result v5
-- 
--     if-eqz v5, :cond_6
-- 
--     :goto_4
--     const/4 v5, 0x1
-- 
--     goto :goto_6
-- 
--     :cond_6
--     :goto_5
--     const/4 v5, 0x0
-- 
--     :goto_6
--     if-eqz v5, :cond_5
-- 
--     .line 55
--     invoke-interface {v2, v4}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z
-- 
--     goto :goto_3
-- 
--     .line 110
--     :cond_7
--     check-cast v2, Ljava/util/List;
-- 
--     check-cast v2, Ljava/lang/Iterable;
-- 
--     .line 111
--     invoke-interface {v2}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator;
-- 
--     move-result-object p1
-- 
--     :goto_7
--     invoke-interface {p1}, Ljava/util/Iterator;->hasNext()Z
-- 
--     move-result v2
-- 
--     if-eqz v2, :cond_8
-- 
--     invoke-interface {p1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
-- 
--     move-result-object v2
-- 
--     .line 112
--     check-cast v2, Ljava/util/List;
-- 
--     .line 57
--     invoke-interface {v2, v3}, Ljava/util/List;->get(I)Ljava/lang/Object;
-- 
--     move-result-object v4
-- 
--     check-cast v4, Ljava/lang/String;
-- 
--     invoke-interface {v2, v1}, Ljava/util/List;->get(I)Ljava/lang/Object;
-- 
--     move-result-object v2
-- 
--     check-cast v2, Ljava/lang/String;
-- 
--     invoke-interface {v0, v4, v2}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
-- 
--     goto :goto_7
-- 
--     .line 59
--     :cond_8
--     invoke-direct {p0, v0}, Lcom/discord/utilities/analytics/AnalyticSuperProperties;->updateSuperProperties(Ljava/util/Map;)V
-- 
--     :cond_9
--     :goto_8
-      return-void
-- 
--     nop
-- 
--     :sswitch_data_0
--     .sparse-switch
--         -0x5bc8ed18 -> :sswitch_8
--         -0x40f32acd -> :sswitch_7
--         -0x3db0f7f -> :sswitch_6
--         0x31ad945d -> :sswitch_5
--         0x3d3a7f4d -> :sswitch_4
--         0x3f4764b9 -> :sswitch_3
--         0x70a1a726 -> :sswitch_2
--         0x714f9fb5 -> :sswitch_1
--         0x7b737fcc -> :sswitch_0
--     .end sparse-switch
-  .end method
---- 363,375 ----
-  .end method
-  
-  .method public final setAdvertiserId(Ljava/lang/String;)V
-!     .locals 0
-  
-      return-void
-  .end method
-  
-  .method public final setCampaignProperties(Landroid/content/Intent;)V
-!     .locals 0
-  
-      return-void
-  .end method
-diff -crB com.discord-904-base/smali/com/discord/utilities/analytics/AnalyticsUtils$Tracker.smali com.discord-904/smali/com/discord/utilities/analytics/AnalyticsUtils$Tracker.smali
-*** com.discord-904-base/smali/com/discord/utilities/analytics/AnalyticsUtils$Tracker.smali	2019-05-29 01:12:17.202131106 +0300
---- com.discord-904/smali/com/discord/utilities/analytics/AnalyticsUtils$Tracker.smali	2019-05-29 01:16:22.290140716 +0300
-***************
-*** 70,79 ****
-  
-  .method public static final synthetic access$drainEventsQueue(Lcom/discord/utilities/analytics/AnalyticsUtils$Tracker;)V
-      .locals 0
-- 
--     .line 49
--     invoke-direct {p0}, Lcom/discord/utilities/analytics/AnalyticsUtils$Tracker;->drainEventsQueue()V
-- 
-      return-void
-  .end method
-  
---- 70,75 ----
-***************
-*** 87,184 ****
-  .end method
-  
-  .method private final declared-synchronized drainEventsQueue()V
-!     .locals 5
-! 
-!     monitor-enter p0
-! 
-!     .line 178
-!     :try_start_0
-!     invoke-direct {p0}, Lcom/discord/utilities/analytics/AnalyticsUtils$Tracker;->getCanDrain()Z
-! 
-!     move-result v0
-!     :try_end_0
-!     .catchall {:try_start_0 .. :try_end_0} :catchall_0
-! 
-!     if-nez v0, :cond_0
-! 
-!     .line 179
-!     monitor-exit p0
-! 
-!     return-void
-! 
-!     .line 182
-!     :cond_0
-!     :try_start_1
-!     new-instance v0, Ljava/util/ArrayList;
-! 
-!     iget-object v1, p0, Lcom/discord/utilities/analytics/AnalyticsUtils$Tracker;->eventsQueue:Ljava/util/concurrent/ConcurrentLinkedQueue;
-! 
-!     check-cast v1, Ljava/util/Collection;
-! 
-!     invoke-direct {v0, v1}, Ljava/util/ArrayList;-><init>(Ljava/util/Collection;)V
-! 
-!     .line 184
-!     iget-object v1, p0, Lcom/discord/utilities/analytics/AnalyticsUtils$Tracker;->eventsQueue:Ljava/util/concurrent/ConcurrentLinkedQueue;
-! 
-!     invoke-virtual {v1}, Ljava/util/concurrent/ConcurrentLinkedQueue;->clear()V
-! 
-!     .line 186
-!     sget-object v1, Lcom/discord/utilities/rest/RestAPI;->Companion:Lcom/discord/utilities/rest/RestAPI$Companion;
-! 
-!     invoke-virtual {v1}, Lcom/discord/utilities/rest/RestAPI$Companion;->getApi()Lcom/discord/utilities/rest/RestAPI;
-! 
-!     move-result-object v1
-! 
-!     .line 188
-!     new-instance v2, Lcom/discord/restapi/RestAPIParams$Track;
-! 
-!     iget-object v3, p0, Lcom/discord/utilities/analytics/AnalyticsUtils$Tracker;->analyticsToken:Ljava/lang/String;
-! 
-!     move-object v4, v0
-! 
-!     check-cast v4, Ljava/util/List;
-! 
-!     invoke-direct {v2, v3, v4}, Lcom/discord/restapi/RestAPIParams$Track;-><init>(Ljava/lang/String;Ljava/util/List;)V
-! 
-!     invoke-virtual {v1, v2}, Lcom/discord/utilities/rest/RestAPI;->track(Lcom/discord/restapi/RestAPIParams$Track;)Lrx/Observable;
-! 
-!     move-result-object v1
-! 
-!     .line 189
-!     invoke-static {}, Lcom/discord/app/h;->du()Lrx/Observable$Transformer;
-! 
-!     move-result-object v2
-! 
-!     invoke-virtual {v1, v2}, Lrx/Observable;->a(Lrx/Observable$Transformer;)Lrx/Observable;
-! 
-!     move-result-object v1
-! 
-!     .line 190
-!     sget-object v2, Lcom/discord/utilities/analytics/AnalyticsUtils$Tracker$drainEventsQueue$1;->INSTANCE:Lcom/discord/utilities/analytics/AnalyticsUtils$Tracker$drainEventsQueue$1;
-! 
-!     check-cast v2, Lrx/functions/Action1;
-! 
-!     new-instance v3, Lcom/discord/utilities/analytics/AnalyticsUtils$Tracker$drainEventsQueue$2;
-! 
-!     invoke-direct {v3, p0, v0}, Lcom/discord/utilities/analytics/AnalyticsUtils$Tracker$drainEventsQueue$2;-><init>(Lcom/discord/utilities/analytics/AnalyticsUtils$Tracker;Ljava/util/ArrayList;)V
-! 
-!     check-cast v3, Lrx/functions/Action1;
-! 
-!     invoke-virtual {v1, v2, v3}, Lrx/Observable;->a(Lrx/functions/Action1;Lrx/functions/Action1;)Lrx/Subscription;
-!     :try_end_1
-!     .catchall {:try_start_1 .. :try_end_1} :catchall_0
-! 
-!     .line 193
-!     monitor-exit p0
-  
-      return-void
-- 
--     :catchall_0
--     move-exception v0
-- 
--     monitor-exit p0
-- 
--     throw v0
-  .end method
-  
-  .method private final getCanDrain()Z
---- 83,91 ----
-  .end method
-  
-  .method private final declared-synchronized drainEventsQueue()V
-!     .locals 0
-  
-      return-void
-  .end method
-  
-  .method private final getCanDrain()Z
-***************
-*** 407,466 ****
-  
-  .method public static synthetic setTrackingData$default(Lcom/discord/utilities/analytics/AnalyticsUtils$Tracker;Ljava/lang/String;ZILjava/lang/Object;)V
-      .locals 0
-- 
--     and-int/lit8 p3, p3, 0x2
-- 
--     if-eqz p3, :cond_0
-- 
--     const/4 p2, 0x0
-- 
--     .line 90
--     :cond_0
--     invoke-virtual {p0, p1, p2}, Lcom/discord/utilities/analytics/AnalyticsUtils$Tracker;->setTrackingData(Ljava/lang/String;Z)V
-- 
-      return-void
-  .end method
-  
-  .method public static synthetic track$default(Lcom/discord/utilities/analytics/AnalyticsUtils$Tracker;Ljava/lang/String;Ljava/util/Map;ILjava/lang/Object;)V
-      .locals 0
-- 
--     and-int/lit8 p3, p3, 0x2
-- 
--     if-eqz p3, :cond_0
-- 
--     .line 115
--     invoke-static {}, Lkotlin/a/ab;->emptyMap()Ljava/util/Map;
-- 
--     move-result-object p2
-- 
--     :cond_0
--     invoke-virtual {p0, p1, p2}, Lcom/discord/utilities/analytics/AnalyticsUtils$Tracker;->track(Ljava/lang/String;Ljava/util/Map;)V
-- 
-      return-void
-  .end method
-  
-  .method public static synthetic track$default(Lcom/discord/utilities/analytics/AnalyticsUtils$Tracker;Lkotlin/Pair;Ljava/util/Map;Ljava/lang/Long;ILjava/lang/Object;)V
-      .locals 0
-- 
--     and-int/lit8 p5, p4, 0x2
-- 
--     if-eqz p5, :cond_0
-- 
--     .line 106
--     invoke-static {}, Lkotlin/a/ab;->emptyMap()Ljava/util/Map;
-- 
--     move-result-object p2
-- 
--     :cond_0
--     and-int/lit8 p4, p4, 0x4
-- 
--     if-eqz p4, :cond_1
-- 
--     const/4 p3, 0x0
-- 
--     :cond_1
--     invoke-virtual {p0, p1, p2, p3}, Lcom/discord/utilities/analytics/AnalyticsUtils$Tracker;->track(Lkotlin/Pair;Ljava/util/Map;Ljava/lang/Long;)V
-- 
-      return-void
-  .end method
-  
---- 314,329 ----
-***************
-*** 605,795 ****
-  .method public final declared-synchronized setTrackingData(Ljava/lang/String;Z)V
-      .locals 0
-  
--     monitor-enter p0
-- 
--     .line 91
--     :try_start_0
--     invoke-direct {p0}, Lcom/discord/utilities/analytics/AnalyticsUtils$Tracker;->drainEventsQueue()V
-- 
--     .line 93
--     iput-object p1, p0, Lcom/discord/utilities/analytics/AnalyticsUtils$Tracker;->analyticsToken:Ljava/lang/String;
-- 
--     .line 94
--     iput-boolean p2, p0, Lcom/discord/utilities/analytics/AnalyticsUtils$Tracker;->fingerprinted:Z
-- 
--     .line 96
--     invoke-direct {p0}, Lcom/discord/utilities/analytics/AnalyticsUtils$Tracker;->drainEventsQueue()V
--     :try_end_0
--     .catchall {:try_start_0 .. :try_end_0} :catchall_0
-- 
--     .line 97
--     monitor-exit p0
-- 
-      return-void
-- 
--     :catchall_0
--     move-exception p1
-- 
--     monitor-exit p0
-- 
--     throw p1
-  .end method
-  
-  .method public final track(Ljava/lang/String;Ljava/util/Map;)V
-!     .locals 2
-!     .annotation system Ldalvik/annotation/Signature;
-!         value = {
-!             "(",
-!             "Ljava/lang/String;",
-!             "Ljava/util/Map<",
-!             "Ljava/lang/String;",
-!             "+",
-!             "Ljava/lang/Object;",
-!             ">;)V"
-!         }
-!     .end annotation
-! 
-!     const-string v0, "event"
-! 
-!     invoke-static {p1, v0}, Lkotlin/jvm/internal/k;->h(Ljava/lang/Object;Ljava/lang/String;)V
-! 
-!     const-string v0, "properties"
-! 
-!     invoke-static {p2, v0}, Lkotlin/jvm/internal/k;->h(Ljava/lang/Object;Ljava/lang/String;)V
-! 
-!     .line 116
-!     iget-object v0, p0, Lcom/discord/utilities/analytics/AnalyticsUtils$Tracker;->eventsQueue:Ljava/util/concurrent/ConcurrentLinkedQueue;
-! 
-!     new-instance v1, Lcom/discord/restapi/RestAPIParams$Track$Event;
-! 
-!     invoke-direct {v1, p1, p2}, Lcom/discord/restapi/RestAPIParams$Track$Event;-><init>(Ljava/lang/String;Ljava/util/Map;)V
-! 
-!     invoke-virtual {v0, v1}, Ljava/util/concurrent/ConcurrentLinkedQueue;->add(Ljava/lang/Object;)Z
-! 
-!     .line 118
-!     sget-object p1, Ljava/util/concurrent/TimeUnit;->MILLISECONDS:Ljava/util/concurrent/TimeUnit;
-! 
-!     const-wide/16 v0, 0x5dc
-! 
-!     invoke-static {v0, v1, p1}, Lrx/Observable;->g(JLjava/util/concurrent/TimeUnit;)Lrx/Observable;
-! 
-!     move-result-object p1
-! 
-!     .line 119
-!     new-instance p2, Lcom/discord/utilities/analytics/AnalyticsUtils$Tracker$track$1;
-! 
-!     invoke-direct {p2, p0}, Lcom/discord/utilities/analytics/AnalyticsUtils$Tracker$track$1;-><init>(Lcom/discord/utilities/analytics/AnalyticsUtils$Tracker;)V
-! 
-!     check-cast p2, Lrx/functions/Action1;
-! 
-!     invoke-virtual {p1, p2}, Lrx/Observable;->b(Lrx/functions/Action1;)Lrx/Subscription;
-  
-      return-void
-  .end method
-  
-  .method public final track(Lkotlin/Pair;Ljava/util/Map;Ljava/lang/Long;)V
-!     .locals 7
-!     .annotation system Ldalvik/annotation/Signature;
-!         value = {
-!             "(",
-!             "Lkotlin/Pair<",
-!             "Ljava/lang/String;",
-!             "Ljava/lang/Long;",
-!             ">;",
-!             "Ljava/util/Map<",
-!             "Ljava/lang/String;",
-!             "+",
-!             "Ljava/lang/Object;",
-!             ">;",
-!             "Ljava/lang/Long;",
-!             ")V"
-!         }
-!     .end annotation
-! 
-!     const-string v0, "throttleKey"
-! 
-!     invoke-static {p1, v0}, Lkotlin/jvm/internal/k;->h(Ljava/lang/Object;Ljava/lang/String;)V
-! 
-!     const-string v0, "properties"
-! 
-!     invoke-static {p2, v0}, Lkotlin/jvm/internal/k;->h(Ljava/lang/Object;Ljava/lang/String;)V
-! 
-!     const/4 v4, 0x0
-! 
-!     const/4 v5, 0x4
-! 
-!     const/4 v6, 0x0
-! 
-!     move-object v1, p0
-! 
-!     move-object v2, p1
-! 
-!     move-object v3, p3
-! 
-!     .line 107
-!     invoke-static/range {v1 .. v6}, Lcom/discord/utilities/analytics/AnalyticsUtils$Tracker;->isEventThrottled$default(Lcom/discord/utilities/analytics/AnalyticsUtils$Tracker;Lkotlin/Pair;Ljava/lang/Long;ZILjava/lang/Object;)Z
-! 
-!     move-result p3
-! 
-!     if-eqz p3, :cond_0
-! 
-!     return-void
-! 
-!     .line 1000
-!     :cond_0
-!     iget-object p1, p1, Lkotlin/Pair;->first:Ljava/lang/Object;
-! 
-!     .line 111
-!     check-cast p1, Ljava/lang/String;
-! 
-!     .line 112
-!     invoke-virtual {p0, p1, p2}, Lcom/discord/utilities/analytics/AnalyticsUtils$Tracker;->track(Ljava/lang/String;Ljava/util/Map;)V
-  
-      return-void
-  .end method
-  
-  .method public final trackFireBase(Ljava/lang/String;Ljava/util/Map;)V
-!     .locals 1
-!     .annotation system Ldalvik/annotation/Signature;
-!         value = {
-!             "(",
-!             "Ljava/lang/String;",
-!             "Ljava/util/Map<",
-!             "Ljava/lang/String;",
-!             "+",
-!             "Ljava/lang/Object;",
-!             ">;)V"
-!         }
-!     .end annotation
-! 
-!     const-string v0, "event"
-! 
-!     invoke-static {p1, v0}, Lkotlin/jvm/internal/k;->h(Ljava/lang/Object;Ljava/lang/String;)V
-! 
-!     const-string v0, "properties"
-! 
-!     invoke-static {p2, v0}, Lkotlin/jvm/internal/k;->h(Ljava/lang/Object;Ljava/lang/String;)V
-! 
-!     .line 126
-!     new-instance v0, Landroid/os/Bundle;
-! 
-!     invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
-! 
-!     invoke-direct {p0, v0, p2}, Lcom/discord/utilities/analytics/AnalyticsUtils$Tracker;->putMap(Landroid/os/Bundle;Ljava/util/Map;)Landroid/os/Bundle;
-! 
-!     move-result-object p2
-! 
-!     .line 127
-!     sget-object v0, Lcom/discord/utilities/analytics/AnalyticsUtils;->INSTANCE:Lcom/discord/utilities/analytics/AnalyticsUtils;
-! 
-!     invoke-static {v0}, Lcom/discord/utilities/analytics/AnalyticsUtils;->access$getFireBaseInstance$p(Lcom/discord/utilities/analytics/AnalyticsUtils;)Lcom/google/firebase/analytics/FirebaseAnalytics;
-! 
-!     move-result-object v0
-! 
-!     if-eqz v0, :cond_0
-! 
-!     invoke-virtual {v0, p1, p2}, Lcom/google/firebase/analytics/FirebaseAnalytics;->b(Ljava/lang/String;Landroid/os/Bundle;)V
-  
--     :cond_0
-      return-void
-  .end method
---- 468,490 ----
-  .method public final declared-synchronized setTrackingData(Ljava/lang/String;Z)V
-      .locals 0
-  
-      return-void
-  .end method
-  
-  .method public final track(Ljava/lang/String;Ljava/util/Map;)V
-!     .locals 0
-  
-      return-void
-  .end method
-  
-  .method public final track(Lkotlin/Pair;Ljava/util/Map;Ljava/lang/Long;)V
-!     .locals 0
-  
-      return-void
-  .end method
-  
-  .method public final trackFireBase(Ljava/lang/String;Ljava/util/Map;)V
-!     .locals 0
-  
-      return-void
-  .end method
-diff -crB com.discord-904-base/smali/com/discord/utilities/integrations/SpotifyHelper$openPlayStoreForSpotify$1.smali com.discord-904/smali/com/discord/utilities/integrations/SpotifyHelper$openPlayStoreForSpotify$1.smali
-*** com.discord-904-base/smali/com/discord/utilities/integrations/SpotifyHelper$openPlayStoreForSpotify$1.smali	2019-05-29 01:12:17.238797964 +0300
---- com.discord-904/smali/com/discord/utilities/integrations/SpotifyHelper$openPlayStoreForSpotify$1.smali	2019-05-29 01:16:22.290140716 +0300
-***************
-*** 43,49 ****
-  
-      new-instance v1, Ljava/lang/StringBuilder;
-  
-!     const-string v2, "https://app.adjust.com/ndjczk?campaign="
-  
-      invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-  
---- 43,49 ----
-  
-      new-instance v1, Ljava/lang/StringBuilder;
-  
-!     const-string v2, "https://play.google.com/store/apps/details?id=com.spotify.music&trash="
-  
-      invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-  
-diff -crB com.discord-904-base/smali/com/discord/utilities/receiver/CampaignReceiver.smali com.discord-904/smali/com/discord/utilities/receiver/CampaignReceiver.smali
-*** com.discord-904-base/smali/com/discord/utilities/receiver/CampaignReceiver.smali	2019-05-29 01:12:17.282131525 +0300
---- com.discord-904/smali/com/discord/utilities/receiver/CampaignReceiver.smali	2019-05-29 01:16:22.290140716 +0300
-***************
-*** 16,49 ****
-  
-  # virtual methods
-  .method public final onReceive(Landroid/content/Context;Landroid/content/Intent;)V
-!     .locals 1
-! 
-!     const-string v0, "context"
-! 
-!     invoke-static {p1, v0}, Lkotlin/jvm/internal/k;->h(Ljava/lang/Object;Ljava/lang/String;)V
-! 
-!     const-string v0, "intent"
-! 
-!     invoke-static {p2, v0}, Lkotlin/jvm/internal/k;->h(Ljava/lang/Object;Ljava/lang/String;)V
-! 
-!     .line 23
-!     new-instance v0, Lcom/adjust/sdk/l;
-! 
-!     invoke-direct {v0}, Lcom/adjust/sdk/l;-><init>()V
-! 
-!     invoke-virtual {v0, p1, p2}, Lcom/adjust/sdk/l;->onReceive(Landroid/content/Context;Landroid/content/Intent;)V
-! 
-!     .line 24
-!     new-instance v0, Lcom/google/android/gms/analytics/a;
-! 
-!     invoke-direct {v0}, Lcom/google/android/gms/analytics/a;-><init>()V
-! 
-!     invoke-virtual {v0, p1, p2}, Lcom/google/android/gms/analytics/a;->onReceive(Landroid/content/Context;Landroid/content/Intent;)V
-! 
-!     .line 26
-!     sget-object p1, Lcom/discord/utilities/analytics/AnalyticSuperProperties;->INSTANCE:Lcom/discord/utilities/analytics/AnalyticSuperProperties;
-! 
-!     invoke-virtual {p1, p2}, Lcom/discord/utilities/analytics/AnalyticSuperProperties;->setCampaignProperties(Landroid/content/Intent;)V
-  
-      return-void
-  .end method
---- 16,22 ----
-  
-  # virtual methods
-  .method public final onReceive(Landroid/content/Context;Landroid/content/Intent;)V
-!     .locals 0
-  
-      return-void
-  .end method
-diff -crB com.discord-904-base/smali_classes2/io/fabric/sdk/android/a/b/a.smali com.discord-904/smali_classes2/io/fabric/sdk/android/a/b/a.smali
-*** com.discord-904-base/smali_classes2/io/fabric/sdk/android/a/b/a.smali	2019-05-29 01:12:19.165474718 +0300
---- com.discord-904/smali_classes2/io/fabric/sdk/android/a/b/a.smali	2019-05-29 01:16:22.290140716 +0300
-***************
-*** 174,180 ****
-  
-      const-string v0, "X-CRASHLYTICS-DEVELOPER-TOKEN"
-  
-!     const-string v1, "470fa2b4ae81cd56ecbcda9735803434cec591fa"
-  
-      .line 142
-      invoke-virtual {p1, v0, v1}, Lio/fabric/sdk/android/a/e/d;->ac(Ljava/lang/String;Ljava/lang/String;)Lio/fabric/sdk/android/a/e/d;
---- 174,180 ----
-  
-      const-string v0, "X-CRASHLYTICS-DEVELOPER-TOKEN"
-  
-!     const-string v1, "blamelunapoopoopeepeepoopoopeepblameluna"
-  
-      .line 142
-      invoke-virtual {p1, v0, v1}, Lio/fabric/sdk/android/a/e/d;->ac(Ljava/lang/String;Ljava/lang/String;)Lio/fabric/sdk/android/a/e/d;
-Only in com.discord-904/smali_classes2/io/fabric/sdk/android/a/b: a.smali.orig
-diff -crB com.discord-904-base/smali_classes2/io/fabric/sdk/android/a/b/h.smali com.discord-904/smali_classes2/io/fabric/sdk/android/a/b/h.smali
-*** com.discord-904-base/smali_classes2/io/fabric/sdk/android/a/b/h.smali	2019-05-29 01:12:19.165474718 +0300
---- com.discord-904/smali_classes2/io/fabric/sdk/android/a/b/h.smali	2019-05-29 01:16:22.290140716 +0300
-***************
-*** 22,36 ****
-  .end method
-  
-  .method public final run()V
-!     .locals 1
-! 
-!     const/16 v0, 0xa
-! 
-!     .line 29
-!     invoke-static {v0}, Landroid/os/Process;->setThreadPriority(I)V
-! 
-!     .line 30
-!     invoke-virtual {p0}, Lio/fabric/sdk/android/a/b/h;->cY()V
-  
-      return-void
-  .end method
---- 22,28 ----
-  .end method
-  
-  .method public final run()V
-!     .locals 0
-  
-      return-void
-  .end method
-diff -crB com.discord-904-base/smali_classes2/io/fabric/sdk/android/a/g/a.smali com.discord-904/smali_classes2/io/fabric/sdk/android/a/g/a.smali
-*** com.discord-904-base/smali_classes2/io/fabric/sdk/android/a/g/a.smali	2019-05-29 01:12:19.178808122 +0300
---- com.discord-904/smali_classes2/io/fabric/sdk/android/a/g/a.smali	2019-05-29 01:19:08.591075207 +0300
-***************
-*** 343,571 ****
-  
-  # virtual methods
-  .method public a(Lio/fabric/sdk/android/a/g/d;)Z
-!     .locals 5
-  
-!     .line 74
-!     invoke-virtual {p0}, Lio/fabric/sdk/android/a/g/a;->ym()Lio/fabric/sdk/android/a/e/d;
-! 
-!     move-result-object v0
-! 
-!     .line 3098
-!     iget-object v1, p1, Lio/fabric/sdk/android/a/g/d;->oh:Ljava/lang/String;
-! 
-!     const-string v2, "X-CRASHLYTICS-API-KEY"
-! 
-!     invoke-virtual {v0, v2, v1}, Lio/fabric/sdk/android/a/e/d;->ac(Ljava/lang/String;Ljava/lang/String;)Lio/fabric/sdk/android/a/e/d;
-! 
-!     move-result-object v0
-! 
-!     const-string v1, "X-CRASHLYTICS-API-CLIENT-TYPE"
-! 
-!     const-string v2, "android"
-! 
-!     .line 3099
-!     invoke-virtual {v0, v1, v2}, Lio/fabric/sdk/android/a/e/d;->ac(Ljava/lang/String;Ljava/lang/String;)Lio/fabric/sdk/android/a/e/d;
-! 
-!     move-result-object v0
-! 
-!     iget-object v1, p0, Lio/fabric/sdk/android/a/g/a;->nj:Lio/fabric/sdk/android/i;
-! 
-!     .line 3102
-!     invoke-virtual {v1}, Lio/fabric/sdk/android/i;->getVersion()Ljava/lang/String;
-! 
-!     move-result-object v1
-! 
-!     const-string v2, "X-CRASHLYTICS-API-CLIENT-VERSION"
-! 
-!     .line 3101
-!     invoke-virtual {v0, v2, v1}, Lio/fabric/sdk/android/a/e/d;->ac(Ljava/lang/String;Ljava/lang/String;)Lio/fabric/sdk/android/a/e/d;
-! 
-!     move-result-object v0
-! 
-!     .line 76
-!     invoke-direct {p0, v0, p1}, Lio/fabric/sdk/android/a/g/a;->a(Lio/fabric/sdk/android/a/e/d;Lio/fabric/sdk/android/a/g/d;)Lio/fabric/sdk/android/a/e/d;
-! 
-!     move-result-object v0
-! 
-!     .line 78
-!     invoke-static {}, Lio/fabric/sdk/android/c;->xZ()Lio/fabric/sdk/android/l;
-! 
-!     move-result-object v1
-! 
-!     new-instance v2, Ljava/lang/StringBuilder;
-! 
-!     const-string v3, "Sending app info to "
-! 
-!     invoke-direct {v2, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-! 
-!     .line 4100
-!     iget-object v3, p0, Lio/fabric/sdk/android/a/b/a;->url:Ljava/lang/String;
-! 
-!     .line 78
-!     invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-! 
-!     invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
-! 
-!     move-result-object v2
-! 
-!     const-string v3, "Fabric"
-! 
-!     invoke-interface {v1, v3, v2}, Lio/fabric/sdk/android/l;->d(Ljava/lang/String;Ljava/lang/String;)V
-! 
-!     .line 79
-!     iget-object v1, p1, Lio/fabric/sdk/android/a/g/d;->bdF:Lio/fabric/sdk/android/a/g/n;
-! 
-!     if-eqz v1, :cond_0
-! 
-!     .line 80
-!     invoke-static {}, Lio/fabric/sdk/android/c;->xZ()Lio/fabric/sdk/android/l;
-! 
-!     move-result-object v1
-! 
-!     new-instance v2, Ljava/lang/StringBuilder;
-! 
-!     const-string v4, "App icon hash is "
-! 
-!     invoke-direct {v2, v4}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-! 
-!     iget-object v4, p1, Lio/fabric/sdk/android/a/g/d;->bdF:Lio/fabric/sdk/android/a/g/n;
-! 
-!     iget-object v4, v4, Lio/fabric/sdk/android/a/g/n;->WT:Ljava/lang/String;
-! 
-!     invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-! 
-!     invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
-! 
-!     move-result-object v2
-! 
-!     invoke-interface {v1, v3, v2}, Lio/fabric/sdk/android/l;->d(Ljava/lang/String;Ljava/lang/String;)V
-! 
-!     .line 82
-!     invoke-static {}, Lio/fabric/sdk/android/c;->xZ()Lio/fabric/sdk/android/l;
-! 
-!     move-result-object v1
-! 
-!     new-instance v2, Ljava/lang/StringBuilder;
-! 
-!     const-string v4, "App icon size is "
-! 
-!     invoke-direct {v2, v4}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-! 
-!     iget-object v4, p1, Lio/fabric/sdk/android/a/g/d;->bdF:Lio/fabric/sdk/android/a/g/n;
-! 
-!     iget v4, v4, Lio/fabric/sdk/android/a/g/n;->width:I
-! 
-!     invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
-! 
-!     const-string v4, "x"
-! 
-!     invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-! 
-!     iget-object p1, p1, Lio/fabric/sdk/android/a/g/d;->bdF:Lio/fabric/sdk/android/a/g/n;
-! 
-!     iget p1, p1, Lio/fabric/sdk/android/a/g/n;->height:I
-! 
-!     invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
-! 
-!     invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
-! 
-!     move-result-object p1
-! 
-!     invoke-interface {v1, v3, p1}, Lio/fabric/sdk/android/l;->d(Ljava/lang/String;Ljava/lang/String;)V
-! 
-!     .line 86
-!     :cond_0
-!     invoke-virtual {v0}, Lio/fabric/sdk/android/a/e/d;->za()I
-! 
-!     move-result p1
-! 
-!     .line 4929
-!     invoke-virtual {v0}, Lio/fabric/sdk/android/a/e/d;->yZ()Ljava/net/HttpURLConnection;
-! 
-!     move-result-object v1
-! 
-!     invoke-virtual {v1}, Ljava/net/HttpURLConnection;->getRequestMethod()Ljava/lang/String;
-! 
-!     move-result-object v1
-! 
-!     const-string v2, "POST"
-! 
-!     .line 87
-!     invoke-virtual {v2, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
-! 
-!     move-result v1
-! 
-!     if-eqz v1, :cond_1
-! 
-!     const-string v1, "Create"
-! 
-!     goto :goto_0
-! 
-!     :cond_1
-!     const-string v1, "Update"
-! 
-!     .line 90
-!     :goto_0
-!     invoke-static {}, Lio/fabric/sdk/android/c;->xZ()Lio/fabric/sdk/android/l;
-! 
-!     move-result-object v2
-! 
-!     new-instance v4, Ljava/lang/StringBuilder;
-! 
-!     invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
-! 
-!     invoke-virtual {v4, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-! 
-!     const-string v1, " app request ID: "
-! 
-!     invoke-virtual {v4, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-! 
-!     const-string v1, "X-REQUEST-ID"
-! 
-!     .line 91
-!     invoke-virtual {v0, v1}, Lio/fabric/sdk/android/a/e/d;->du(Ljava/lang/String;)Ljava/lang/String;
-! 
-!     move-result-object v0
-! 
-!     invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-! 
-!     invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
-! 
-!     move-result-object v0
-! 
-!     .line 90
-!     invoke-interface {v2, v3, v0}, Lio/fabric/sdk/android/l;->d(Ljava/lang/String;Ljava/lang/String;)V
-! 
-!     .line 92
-!     invoke-static {}, Lio/fabric/sdk/android/c;->xZ()Lio/fabric/sdk/android/l;
-! 
-!     move-result-object v0
-! 
-!     invoke-static {p1}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;
-! 
-!     move-result-object v1
-! 
-!     const-string v2, "Result was "
-! 
-!     invoke-virtual {v2, v1}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
-! 
-!     move-result-object v1
-! 
-!     invoke-interface {v0, v3, v1}, Lio/fabric/sdk/android/l;->d(Ljava/lang/String;Ljava/lang/String;)V
-! 
-!     .line 94
-!     invoke-static {p1}, Lio/fabric/sdk/android/a/b/v;->cV(I)I
-! 
-!     move-result p1
-! 
-!     if-nez p1, :cond_2
-! 
-!     const/4 p1, 0x1
-! 
-!     return p1
-! 
-!     :cond_2
-!     const/4 p1, 0x0
-! 
-!     return p1
-  .end method
---- 343,349 ----
-  
-  # virtual methods
-  .method public a(Lio/fabric/sdk/android/a/g/d;)Z
-!     .locals 0
-  
-!     return-void
-  .end method
-Only in com.discord-904/smali_classes2/io/fabric/sdk/android/a/g: a.smali.orig
-Only in com.discord-904/smali_classes2/io/fabric/sdk/android/a/g: a.smali.rej
-diff -crB com.discord-904-base/smali_classes2/io/fabric/sdk/android/a/g/l.smali com.discord-904/smali_classes2/io/fabric/sdk/android/a/g/l.smali
-*** com.discord-904-base/smali_classes2/io/fabric/sdk/android/a/g/l.smali	2019-05-29 01:12:19.182141473 +0300
---- com.discord-904/smali_classes2/io/fabric/sdk/android/a/g/l.smali	2019-05-29 01:19:34.241219341 +0300
-***************
-*** 115,502 ****
-  
-  # virtual methods
-  .method public final a(Lio/fabric/sdk/android/a/g/w;)Lorg/json/JSONObject;
-!     .locals 8
-  
-!     const-string v0, "X-REQUEST-ID"
-! 
-!     const-string v1, "Settings request ID: "
-! 
-!     const-string v2, "Fabric"
-! 
-!     const/4 v3, 0x0
-! 
-!     .line 1140
-!     :try_start_0
-!     new-instance v4, Ljava/util/HashMap;
-! 
-!     invoke-direct {v4}, Ljava/util/HashMap;-><init>()V
-! 
-!     const-string v5, "build_version"
-! 
-!     .line 1141
-!     iget-object v6, p1, Lio/fabric/sdk/android/a/g/w;->bdA:Ljava/lang/String;
-! 
-!     invoke-interface {v4, v5, v6}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
-! 
-!     const-string v5, "display_version"
-! 
-!     .line 1142
-!     iget-object v6, p1, Lio/fabric/sdk/android/a/g/w;->bdz:Ljava/lang/String;
-! 
-!     invoke-interface {v4, v5, v6}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
-! 
-!     const-string v5, "source"
-! 
-!     .line 1143
-!     iget v6, p1, Lio/fabric/sdk/android/a/g/w;->bdC:I
-! 
-!     invoke-static {v6}, Ljava/lang/Integer;->toString(I)Ljava/lang/String;
-! 
-!     move-result-object v6
-! 
-!     invoke-interface {v4, v5, v6}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
-! 
-!     .line 1145
-!     iget-object v5, p1, Lio/fabric/sdk/android/a/g/w;->beD:Ljava/lang/String;
-! 
-!     if-eqz v5, :cond_0
-! 
-!     const-string v5, "icon_hash"
-! 
-!     .line 1146
-!     iget-object v6, p1, Lio/fabric/sdk/android/a/g/w;->beD:Ljava/lang/String;
-! 
-!     invoke-interface {v4, v5, v6}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
-! 
-!     .line 1149
-!     :cond_0
-!     iget-object v5, p1, Lio/fabric/sdk/android/a/g/w;->beC:Ljava/lang/String;
-! 
-!     .line 1150
-!     invoke-static {v5}, Lio/fabric/sdk/android/a/b/i;->Q(Ljava/lang/String;)Z
-! 
-!     move-result v6
-! 
-!     if-nez v6, :cond_1
-! 
-!     const-string v6, "instance"
-! 
-!     .line 1151
-!     invoke-interface {v4, v6, v5}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
-! 
-!     .line 82
-!     :cond_1
-!     invoke-virtual {p0, v4}, Lio/fabric/sdk/android/a/g/l;->p(Ljava/util/Map;)Lio/fabric/sdk/android/a/e/d;
-! 
-!     move-result-object v5
-!     :try_end_0
-!     .catch Lio/fabric/sdk/android/a/e/d$c; {:try_start_0 .. :try_end_0} :catch_1
-!     .catchall {:try_start_0 .. :try_end_0} :catchall_0
-! 
-!     :try_start_1
-!     const-string v6, "X-CRASHLYTICS-API-KEY"
-! 
-!     .line 1160
-!     iget-object v7, p1, Lio/fabric/sdk/android/a/g/w;->oh:Ljava/lang/String;
-! 
-!     invoke-static {v5, v6, v7}, Lio/fabric/sdk/android/a/g/l;->a(Lio/fabric/sdk/android/a/e/d;Ljava/lang/String;Ljava/lang/String;)V
-! 
-!     const-string v6, "X-CRASHLYTICS-API-CLIENT-TYPE"
-! 
-!     const-string v7, "android"
-! 
-!     .line 1161
-!     invoke-static {v5, v6, v7}, Lio/fabric/sdk/android/a/g/l;->a(Lio/fabric/sdk/android/a/e/d;Ljava/lang/String;Ljava/lang/String;)V
-! 
-!     const-string v6, "X-CRASHLYTICS-API-CLIENT-VERSION"
-! 
-!     .line 1163
-!     iget-object v7, p0, Lio/fabric/sdk/android/a/g/l;->nj:Lio/fabric/sdk/android/i;
-! 
-!     invoke-virtual {v7}, Lio/fabric/sdk/android/i;->getVersion()Ljava/lang/String;
-! 
-!     move-result-object v7
-! 
-!     invoke-static {v5, v6, v7}, Lio/fabric/sdk/android/a/g/l;->a(Lio/fabric/sdk/android/a/e/d;Ljava/lang/String;Ljava/lang/String;)V
-! 
-!     const-string v6, "Accept"
-! 
-!     const-string v7, "application/json"
-! 
-!     .line 1164
-!     invoke-static {v5, v6, v7}, Lio/fabric/sdk/android/a/g/l;->a(Lio/fabric/sdk/android/a/e/d;Ljava/lang/String;Ljava/lang/String;)V
-! 
-!     const-string v6, "X-CRASHLYTICS-DEVICE-MODEL"
-! 
-!     .line 1166
-!     iget-object v7, p1, Lio/fabric/sdk/android/a/g/w;->oM:Ljava/lang/String;
-! 
-!     invoke-static {v5, v6, v7}, Lio/fabric/sdk/android/a/g/l;->a(Lio/fabric/sdk/android/a/e/d;Ljava/lang/String;Ljava/lang/String;)V
-! 
-!     const-string v6, "X-CRASHLYTICS-OS-BUILD-VERSION"
-! 
-!     .line 1167
-!     iget-object v7, p1, Lio/fabric/sdk/android/a/g/w;->beA:Ljava/lang/String;
-! 
-!     invoke-static {v5, v6, v7}, Lio/fabric/sdk/android/a/g/l;->a(Lio/fabric/sdk/android/a/e/d;Ljava/lang/String;Ljava/lang/String;)V
-! 
-!     const-string v6, "X-CRASHLYTICS-OS-DISPLAY-VERSION"
-! 
-!     .line 1168
-!     iget-object v7, p1, Lio/fabric/sdk/android/a/g/w;->beB:Ljava/lang/String;
-! 
-!     invoke-static {v5, v6, v7}, Lio/fabric/sdk/android/a/g/l;->a(Lio/fabric/sdk/android/a/e/d;Ljava/lang/String;Ljava/lang/String;)V
-! 
-!     const-string v6, "X-CRASHLYTICS-INSTALLATION-ID"
-! 
-!     .line 1169
-!     iget-object p1, p1, Lio/fabric/sdk/android/a/g/w;->oI:Ljava/lang/String;
-! 
-!     invoke-static {v5, v6, p1}, Lio/fabric/sdk/android/a/g/l;->a(Lio/fabric/sdk/android/a/e/d;Ljava/lang/String;Ljava/lang/String;)V
-! 
-!     .line 85
-!     invoke-static {}, Lio/fabric/sdk/android/c;->xZ()Lio/fabric/sdk/android/l;
-! 
-!     move-result-object p1
-! 
-!     new-instance v6, Ljava/lang/StringBuilder;
-! 
-!     const-string v7, "Requesting settings from "
-! 
-!     invoke-direct {v6, v7}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-! 
-!     .line 2100
-!     iget-object v7, p0, Lio/fabric/sdk/android/a/b/a;->url:Ljava/lang/String;
-! 
-!     .line 85
-!     invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-! 
-!     invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
-! 
-!     move-result-object v6
-! 
-!     invoke-interface {p1, v2, v6}, Lio/fabric/sdk/android/l;->d(Ljava/lang/String;Ljava/lang/String;)V
-! 
-!     .line 86
-!     invoke-static {}, Lio/fabric/sdk/android/c;->xZ()Lio/fabric/sdk/android/l;
-! 
-!     move-result-object p1
-! 
-!     const-string v6, "Settings query params were: "
-! 
-!     invoke-static {v4}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
-! 
-!     move-result-object v4
-! 
-!     invoke-virtual {v6, v4}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
-! 
-!     move-result-object v4
-! 
-!     invoke-interface {p1, v2, v4}, Lio/fabric/sdk/android/l;->d(Ljava/lang/String;Ljava/lang/String;)V
-! 
-!     .line 2104
-!     invoke-virtual {v5}, Lio/fabric/sdk/android/a/e/d;->za()I
-! 
-!     move-result p1
-! 
-!     .line 2105
-!     invoke-static {}, Lio/fabric/sdk/android/c;->xZ()Lio/fabric/sdk/android/l;
-! 
-!     move-result-object v4
-! 
-!     const-string v6, "Settings result was: "
-! 
-!     invoke-static {p1}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;
-! 
-!     move-result-object v7
-! 
-!     invoke-virtual {v6, v7}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
-! 
-!     move-result-object v6
-! 
-!     invoke-interface {v4, v2, v6}, Lio/fabric/sdk/android/l;->d(Ljava/lang/String;Ljava/lang/String;)V
-! 
-!     const/16 v4, 0xc8
-! 
-!     if-eq p1, v4, :cond_3
-! 
-!     const/16 v4, 0xc9
-! 
-!     if-eq p1, v4, :cond_3
-! 
-!     const/16 v4, 0xca
-! 
-!     if-eq p1, v4, :cond_3
-! 
-!     const/16 v4, 0xcb
-! 
-!     if-ne p1, v4, :cond_2
-! 
-!     goto :goto_0
-! 
-!     :cond_2
-!     const/4 p1, 0x0
-! 
-!     goto :goto_1
-! 
-!     :cond_3
-!     :goto_0
-!     const/4 p1, 0x1
-! 
-!     :goto_1
-!     if-eqz p1, :cond_4
-! 
-!     .line 2109
-!     invoke-virtual {v5}, Lio/fabric/sdk/android/a/e/d;->zb()Ljava/lang/String;
-! 
-!     move-result-object p1
-! 
-!     invoke-direct {p0, p1}, Lio/fabric/sdk/android/a/g/l;->dy(Ljava/lang/String;)Lorg/json/JSONObject;
-! 
-!     move-result-object p1
-! 
-!     move-object v3, p1
-! 
-!     goto :goto_2
-! 
-!     .line 2111
-!     :cond_4
-!     invoke-static {}, Lio/fabric/sdk/android/c;->xZ()Lio/fabric/sdk/android/l;
-! 
-!     move-result-object p1
-! 
-!     new-instance v4, Ljava/lang/StringBuilder;
-! 
-!     const-string v6, "Failed to retrieve settings from "
-! 
-!     invoke-direct {v4, v6}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-! 
-!     .line 3100
-!     iget-object v6, p0, Lio/fabric/sdk/android/a/b/a;->url:Ljava/lang/String;
-! 
-!     .line 2111
-!     invoke-virtual {v4, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-! 
-!     invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
-! 
-!     move-result-object v4
-! 
-!     invoke-interface {p1, v2, v4}, Lio/fabric/sdk/android/l;->e(Ljava/lang/String;Ljava/lang/String;)V
-!     :try_end_1
-!     .catch Lio/fabric/sdk/android/a/e/d$c; {:try_start_1 .. :try_end_1} :catch_0
-!     .catchall {:try_start_1 .. :try_end_1} :catchall_1
-! 
-!     :goto_2
-!     if-eqz v5, :cond_5
-! 
-!     .line 94
-!     invoke-static {}, Lio/fabric/sdk/android/c;->xZ()Lio/fabric/sdk/android/l;
-! 
-!     move-result-object p1
-! 
-!     new-instance v4, Ljava/lang/StringBuilder;
-! 
-!     invoke-direct {v4, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-! 
-!     .line 95
-!     :goto_3
-!     invoke-virtual {v5, v0}, Lio/fabric/sdk/android/a/e/d;->du(Ljava/lang/String;)Ljava/lang/String;
-! 
-!     move-result-object v0
-! 
-!     invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-! 
-!     invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
-! 
-!     move-result-object v0
-! 
-!     .line 94
-!     invoke-interface {p1, v2, v0}, Lio/fabric/sdk/android/l;->d(Ljava/lang/String;Ljava/lang/String;)V
-! 
-!     goto :goto_5
-! 
-!     :catch_0
-!     move-exception p1
-! 
-!     goto :goto_4
-! 
-!     :catchall_0
-!     move-exception p1
-! 
-!     move-object v5, v3
-! 
-!     goto :goto_6
-! 
-!     :catch_1
-!     move-exception p1
-! 
-!     move-object v5, v3
-! 
-!     .line 90
-!     :goto_4
-!     :try_start_2
-!     invoke-static {}, Lio/fabric/sdk/android/c;->xZ()Lio/fabric/sdk/android/l;
-! 
-!     move-result-object v4
-! 
-!     const-string v6, "Settings request failed."
-! 
-!     invoke-interface {v4, v2, v6, p1}, Lio/fabric/sdk/android/l;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
-!     :try_end_2
-!     .catchall {:try_start_2 .. :try_end_2} :catchall_1
-! 
-!     if-eqz v5, :cond_5
-! 
-!     .line 94
-!     invoke-static {}, Lio/fabric/sdk/android/c;->xZ()Lio/fabric/sdk/android/l;
-! 
-!     move-result-object p1
-! 
-!     new-instance v4, Ljava/lang/StringBuilder;
-! 
-!     invoke-direct {v4, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-! 
-!     goto :goto_3
-! 
-!     :cond_5
-!     :goto_5
-!     return-object v3
-! 
-!     :catchall_1
-!     move-exception p1
-! 
-!     :goto_6
-!     if-eqz v5, :cond_6
-! 
-!     invoke-static {}, Lio/fabric/sdk/android/c;->xZ()Lio/fabric/sdk/android/l;
-! 
-!     move-result-object v3
-! 
-!     new-instance v4, Ljava/lang/StringBuilder;
-! 
-!     invoke-direct {v4, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-! 
-!     .line 95
-!     invoke-virtual {v5, v0}, Lio/fabric/sdk/android/a/e/d;->du(Ljava/lang/String;)Ljava/lang/String;
-! 
-!     move-result-object v0
-! 
-!     invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-! 
-!     invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
-! 
-!     move-result-object v0
-! 
-!     .line 94
-!     invoke-interface {v3, v2, v0}, Lio/fabric/sdk/android/l;->d(Ljava/lang/String;Ljava/lang/String;)V
-! 
-!     .line 97
-!     :cond_6
-!     goto :goto_8
-! 
-!     :goto_7
-!     throw p1
-! 
-!     :goto_8
-!     goto :goto_7
-  .end method
---- 115,121 ----
-  
-  # virtual methods
-  .method public final a(Lio/fabric/sdk/android/a/g/w;)Lorg/json/JSONObject;
-!     .locals 0
-  
-!     return-void
-  .end method
-Only in com.discord-904/smali_classes2/io/fabric/sdk/android/a/g: l.smali.orig
-Only in com.discord-904/smali_classes2/io/fabric/sdk/android/a/g: l.smali.rej
diff --git a/patches/nozlib/904.patch b/patches/nozlib/904.patch
deleted file mode 100644
index 339f16b..0000000
--- a/patches/nozlib/904.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-diff -crB from/smali/com/discord/gateway/GatewaySocket.smali to/smali/com/discord/gateway/GatewaySocket.smali
-*** from/smali/com/discord/gateway/GatewaySocket.smali	2019-03-08 15:11:35.438157262 +0300
---- to/smali/com/discord/gateway/GatewaySocket.smali	2019-03-08 16:16:06.511701594 +0300
-***************
-*** 1050,1056 ****
-  
-      invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-  
-!     const-string p1, "/?encoding=json&v=6&compress=zlib-stream"
-  
-      invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-  
---- 1050,1056 ----
-  
-      invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-  
-!     const-string p1, "/?encoding=json&v=6"
-  
-      invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-  
-diff -crB from/smali/com/discord/gateway/io/OutgoingPayload$Identify.smali to/smali/com/discord/gateway/io/OutgoingPayload$Identify.smali
-*** from/smali/com/discord/gateway/io/OutgoingPayload$Identify.smali	2019-03-08 15:11:35.438157262 +0300
---- to/smali/com/discord/gateway/io/OutgoingPayload$Identify.smali	2019-03-08 16:16:06.511701594 +0300
-***************
-*** 59,64 ****
---- 59,66 ----
-  
-      const/4 v0, 0x0
-  
-+     const/4 p3, 0x0
-+ 
-      .line 27
-      invoke-direct {p0, v0}, Lcom/discord/gateway/io/OutgoingPayload;-><init>(Lkotlin/jvm/internal/DefaultConstructorMarker;)V
-  
diff --git a/patches/nozlib/README.md b/patches/nozlib/README.md
index c0242b5..507135f 100644
--- a/patches/nozlib/README.md
+++ b/patches/nozlib/README.md
@@ -31,5 +31,4 @@ Conflicts with litecord patch.
 - 9.0.1
 - 9.0.2
 - 9.0.3
-- 9.0.4
 
diff --git a/patches/pureevil/904.patch b/patches/pureevil/904.patch
deleted file mode 100644
index 2fc7491..0000000
--- a/patches/pureevil/904.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-diff -crB com.discord-902-base/smali/com/discord/widgets/settings/WidgetSettingsAppearance$Model$Companion$get$1.smali com.discord-902/smali/com/discord/widgets/settings/WidgetSettingsAppearance$Model$Companion$get$1.smali
-*** com.discord-902-base/smali/com/discord/widgets/settings/WidgetSettingsAppearance$Model$Companion$get$1.smali	2019-05-23 08:24:34.436793339 +0300
---- com.discord-902/smali/com/discord/widgets/settings/WidgetSettingsAppearance$Model$Companion$get$1.smali	2019-05-23 08:31:33.308611414 +0300
-***************
-*** 77,87 ****
-      const-string v0, "meUser"
-  
-      .line 187
-!     invoke-static {p1, v0}, Lkotlin/jvm/internal/k;->g(Ljava/lang/Object;Ljava/lang/String;)V
-! 
-!     invoke-virtual {p1}, Lcom/discord/models/domain/ModelUser;->isStaff()Z
-! 
-!     move-result v2
-  
-      const-string v1, "fontScale"
-  
---- 77,83 ----
-      const-string v0, "meUser"
-  
-      .line 187
-!     const/4 v2, 0x1
-  
-      const-string v1, "fontScale"
-  
-***************
-*** 95,105 ****
-      const-string p3, "isAlphaTesterOrStaff"
-  
-      .line 189
-!     invoke-static {p4, p3}, Lkotlin/jvm/internal/k;->g(Ljava/lang/Object;Ljava/lang/String;)V
-! 
-!     invoke-virtual {p4}, Ljava/lang/Boolean;->booleanValue()Z
-! 
-!     move-result v4
-  
-      .line 190
-      invoke-static {p1, v0}, Lkotlin/jvm/internal/k;->g(Ljava/lang/Object;Ljava/lang/String;)V
---- 91,97 ----
-      const-string p3, "isAlphaTesterOrStaff"
-  
-      .line 189
-!     const/4 v4, 0x1
-  
-      .line 190
-      invoke-static {p1, v0}, Lkotlin/jvm/internal/k;->g(Ljava/lang/Object;Ljava/lang/String;)V
diff --git a/patches/pureevil/README.md b/patches/pureevil/README.md
index 03f2d53..47d1ab1 100644
--- a/patches/pureevil/README.md
+++ b/patches/pureevil/README.md
@@ -37,5 +37,4 @@ Conflicts with experiments.
 - 9.0.1
 - 9.0.2
 - 9.0.3
-- 9.0.4
 
diff --git a/patches/slashcommands/904.patch b/patches/slashcommands/904.patch
deleted file mode 100644
index 087bae7..0000000
--- a/patches/slashcommands/904.patch
+++ /dev/null
@@ -1,3145 +0,0 @@
-diff -crB com.discord-904-base/smali/com/discord/models/domain/ModelChannel.smali com.discord-904/smali/com/discord/models/domain/ModelChannel.smali
-*** com.discord-904-base/smali/com/discord/models/domain/ModelChannel.smali	2019-05-29 01:12:16.825462467 +0300
---- com.discord-904/smali/com/discord/models/domain/ModelChannel.smali	2019-05-29 01:14:12.246076619 +0300
-***************
-*** 2082,2087 ****
---- 2082,2097 ----
-          }
-      .end annotation
-  
-+     invoke-static {}, Lcom/discord/stores/StoreStream;->getUserSettings()Lcom/discord/stores/StoreUserSettings;
-+ 
-+     move-result-object v0
-+ 
-+     invoke-virtual {v0}, Lcom/discord/stores/StoreUserSettings;->getLeakChannels()Z
-+ 
-+     move-result v0
-+ 
-+     if-eqz v0, :cond_0
-+ 
-      .line 246
-      iget-object v0, p0, Lcom/discord/models/domain/ModelChannel;->permissionOverwrites:Ljava/util/Map;
-  
-diff -crB com.discord-904-base/smali/com/discord/stores/StoreMessages.smali com.discord-904/smali/com/discord/stores/StoreMessages.smali
-*** com.discord-904-base/smali/com/discord/stores/StoreMessages.smali	2019-05-29 01:12:17.095463881 +0300
---- com.discord-904/smali/com/discord/stores/StoreMessages.smali	2019-05-29 01:15:01.819688524 +0300
-***************
-*** 432,437 ****
---- 432,441 ----
-  
-      invoke-static {p5, v0}, Lkotlin/jvm/internal/k;->h(Ljava/lang/Object;Ljava/lang/String;)V
-  
-+     invoke-static {p5}, Lcom/discord/stores/StoreMessages;->interceptEditMessage(Ljava/lang/String;)Ljava/lang/String;
-+ 
-+     move-result-object p5
-+ 
-      .line 168
-      invoke-direct {p0, p3, p4}, Lcom/discord/stores/StoreMessages;->getMessageQueue(J)Lcom/discord/utilities/messagesend/MessageQueue;
-  
-***************
-*** 948,953 ****
---- 952,3733 ----
-      return-void
-  .end method
-  
-+ .method public static final slashUpper(Ljava/lang/String;)Ljava/lang/String;
-+     .locals 1
-+ 
-+     # Length of command + space
-+     const/4 v0, 0x7
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->substring(I)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     invoke-virtual {p0}, Ljava/lang/String;->toUpperCase()Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     return-object p0
-+ .end method
-+ 
-+ .method public static final slashLower(Ljava/lang/String;)Ljava/lang/String;
-+     .locals 1
-+ 
-+     # Length of command + space
-+     const/4 v0, 0x7
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->substring(I)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     invoke-virtual {p0}, Ljava/lang/String;->toLowerCase()Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     return-object p0
-+ .end method
-+ 
-+ .method public static final slashBold(Ljava/lang/String;)Ljava/lang/String;
-+     .locals 2
-+ 
-+     # Length of command + space
-+     const/4 v0, 0x6
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->substring(I)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     new-instance v0, Ljava/lang/StringBuilder;
-+ 
-+     const-string v1, "**"
-+ 
-+     invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-+ 
-+     invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
-+ 
-+     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
-+ 
-+     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     return-object p0
-+ .end method
-+ 
-+ .method public static final slashSpoiler(Ljava/lang/String;)Ljava/lang/String;
-+     .locals 2
-+ 
-+     # Length of command + space
-+     const/16 v0, 0x9
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->substring(I)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     new-instance v0, Ljava/lang/StringBuilder;
-+ 
-+     const-string v1, "||"
-+ 
-+     invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-+ 
-+     invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
-+ 
-+     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
-+ 
-+     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     return-object p0
-+ .end method
-+ 
-+ .method public static final slashMe(Ljava/lang/String;)Ljava/lang/String;
-+     .locals 2
-+ 
-+     # Length of command + space
-+     const/4 v0, 0x4
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->substring(I)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     new-instance v0, Ljava/lang/StringBuilder;
-+ 
-+     const-string v1, "*"
-+ 
-+     invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-+ 
-+     invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
-+ 
-+     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
-+ 
-+     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     return-object p0
-+ .end method
-+ 
-+ .method public static final slashSt(Ljava/lang/String;)Ljava/lang/String;
-+     .locals 2
-+ 
-+     # Length of command + space
-+     const/4 v0, 0x4
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->substring(I)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     new-instance v0, Ljava/lang/StringBuilder;
-+ 
-+     const-string v1, "~~"
-+ 
-+     invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-+ 
-+     invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
-+ 
-+     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
-+ 
-+     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     return-object p0
-+ .end method
-+ 
-+ .method public static final slashShrug(Ljava/lang/String;)Ljava/lang/String;
-+     .locals 2
-+ 
-+     # Length of command (no space)
-+     const/4 v0, 0x6
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->substring(I)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     new-instance v0, Ljava/lang/StringBuilder;
-+ 
-+     const-string v1, " ¯\\_(ツ)_/¯"
-+ 
-+     invoke-direct {v0, p0}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-+ 
-+     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
-+ 
-+     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     return-object p0
-+ .end method
-+ 
-+ .method public static final slashTableflip(Ljava/lang/String;)Ljava/lang/String;
-+     .locals 2
-+ 
-+     # Length of command (no space)
-+     const/16 v0, 0xa
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->substring(I)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     new-instance v0, Ljava/lang/StringBuilder;
-+ 
-+     const-string v1, " (╯°□°)╯︵ ┻━┻"
-+ 
-+     invoke-direct {v0, p0}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-+ 
-+     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
-+ 
-+     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     return-object p0
-+ .end method
-+ 
-+ .method public static final slashUnflip(Ljava/lang/String;)Ljava/lang/String;
-+     .locals 2
-+ 
-+     # Length of command (no space)
-+     const/16 v0, 0x7
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->substring(I)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     new-instance v0, Ljava/lang/StringBuilder;
-+ 
-+     const-string v1, " ┬─┬ ノ( ゜-゜ノ)"
-+ 
-+     invoke-direct {v0, p0}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-+ 
-+     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
-+ 
-+     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     return-object p0
-+ .end method
-+ 
-+ .method public static final slashLenny(Ljava/lang/String;)Ljava/lang/String;
-+     .locals 2
-+ 
-+     # Length of command (no space)
-+     const/4 v0, 0x6
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->substring(I)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     new-instance v0, Ljava/lang/StringBuilder;
-+ 
-+     const-string v1, " ( ͡° ͜ʖ ͡°)"
-+ 
-+     invoke-direct {v0, p0}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-+ 
-+     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
-+ 
-+     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     return-object p0
-+ .end method
-+ 
-+ .method public static final slashFw(Ljava/lang/String;)Ljava/lang/String;
-+     .locals 2
-+ 
-+     # Length of command + space
-+     const/16 v0, 0x4
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->substring(I)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, " "
-+ 
-+     const-string v1, " "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     # Start of automatically generated code with textreplacegen.py
-+ 
-+     const-string v0, "!"
-+ 
-+     const-string v1, "!"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "#"
-+ 
-+     const-string v1, "#"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "$"
-+ 
-+     const-string v1, "$"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "%"
-+ 
-+     const-string v1, "%"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "&"
-+ 
-+     const-string v1, "&"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "'"
-+ 
-+     const-string v1, "'"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "("
-+ 
-+     const-string v1, "("
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, ")"
-+ 
-+     const-string v1, ")"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "*"
-+ 
-+     const-string v1, "*"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "+"
-+ 
-+     const-string v1, "+"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, ","
-+ 
-+     const-string v1, ","
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "-"
-+ 
-+     const-string v1, "-"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "."
-+ 
-+     const-string v1, "."
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "/"
-+ 
-+     const-string v1, "/"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "0"
-+ 
-+     const-string v1, "0"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "1"
-+ 
-+     const-string v1, "1"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "2"
-+ 
-+     const-string v1, "2"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "3"
-+ 
-+     const-string v1, "3"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "4"
-+ 
-+     const-string v1, "4"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "5"
-+ 
-+     const-string v1, "5"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "6"
-+ 
-+     const-string v1, "6"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "7"
-+ 
-+     const-string v1, "7"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "8"
-+ 
-+     const-string v1, "8"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "9"
-+ 
-+     const-string v1, "9"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, ":"
-+ 
-+     const-string v1, ":"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, ";"
-+ 
-+     const-string v1, ";"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "<"
-+ 
-+     const-string v1, "<"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "="
-+ 
-+     const-string v1, "="
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, ">"
-+ 
-+     const-string v1, ">"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "?"
-+ 
-+     const-string v1, "?"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "@"
-+ 
-+     const-string v1, "@"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "A"
-+ 
-+     const-string v1, "A"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "B"
-+ 
-+     const-string v1, "B"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "C"
-+ 
-+     const-string v1, "C"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "D"
-+ 
-+     const-string v1, "D"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "E"
-+ 
-+     const-string v1, "E"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "F"
-+ 
-+     const-string v1, "F"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "G"
-+ 
-+     const-string v1, "G"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "H"
-+ 
-+     const-string v1, "H"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "I"
-+ 
-+     const-string v1, "I"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "J"
-+ 
-+     const-string v1, "J"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "K"
-+ 
-+     const-string v1, "K"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "L"
-+ 
-+     const-string v1, "L"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "M"
-+ 
-+     const-string v1, "M"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "N"
-+ 
-+     const-string v1, "N"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "O"
-+ 
-+     const-string v1, "O"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "P"
-+ 
-+     const-string v1, "P"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "Q"
-+ 
-+     const-string v1, "Q"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "R"
-+ 
-+     const-string v1, "R"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "S"
-+ 
-+     const-string v1, "S"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "T"
-+ 
-+     const-string v1, "T"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "U"
-+ 
-+     const-string v1, "U"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "V"
-+ 
-+     const-string v1, "V"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "W"
-+ 
-+     const-string v1, "W"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "X"
-+ 
-+     const-string v1, "X"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "Y"
-+ 
-+     const-string v1, "Y"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "Z"
-+ 
-+     const-string v1, "Z"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "["
-+ 
-+     const-string v1, "["
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "]"
-+ 
-+     const-string v1, "]"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "^"
-+ 
-+     const-string v1, "^"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "_"
-+ 
-+     const-string v1, "_"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "`"
-+ 
-+     const-string v1, "`"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "a"
-+ 
-+     const-string v1, "a"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "b"
-+ 
-+     const-string v1, "b"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "c"
-+ 
-+     const-string v1, "c"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "d"
-+ 
-+     const-string v1, "d"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "e"
-+ 
-+     const-string v1, "e"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "f"
-+ 
-+     const-string v1, "f"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "g"
-+ 
-+     const-string v1, "g"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "h"
-+ 
-+     const-string v1, "h"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "i"
-+ 
-+     const-string v1, "i"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "j"
-+ 
-+     const-string v1, "j"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "k"
-+ 
-+     const-string v1, "k"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "l"
-+ 
-+     const-string v1, "l"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "m"
-+ 
-+     const-string v1, "m"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "n"
-+ 
-+     const-string v1, "n"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "o"
-+ 
-+     const-string v1, "o"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "p"
-+ 
-+     const-string v1, "p"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "q"
-+ 
-+     const-string v1, "q"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "r"
-+ 
-+     const-string v1, "r"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "s"
-+ 
-+     const-string v1, "s"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "t"
-+ 
-+     const-string v1, "t"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "u"
-+ 
-+     const-string v1, "u"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "v"
-+ 
-+     const-string v1, "v"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "w"
-+ 
-+     const-string v1, "w"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "x"
-+ 
-+     const-string v1, "x"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "y"
-+ 
-+     const-string v1, "y"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "z"
-+ 
-+     const-string v1, "z"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "{"
-+ 
-+     const-string v1, "{"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "|"
-+ 
-+     const-string v1, "|"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "}"
-+ 
-+     const-string v1, "}"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "~"
-+ 
-+     const-string v1, "~"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     # End of automatically generated code by textreplacegen.py
-+ 
-+     return-object p0
-+ .end method
-+ 
-+ .method public static final slashSmall(Ljava/lang/String;)Ljava/lang/String;
-+     .locals 2
-+ 
-+     # Length of command + space
-+     const/16 v0, 0x7
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->substring(I)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     invoke-virtual {p0}, Ljava/lang/String;->toLowerCase()Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     # Start of automatically generated code with textreplacegen.py
-+ 
-+     const-string v0, "a"
-+ 
-+     const-string v1, "ᴀ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "b"
-+ 
-+     const-string v1, "ʙ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "c"
-+ 
-+     const-string v1, "ᴄ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "d"
-+ 
-+     const-string v1, "ᴅ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "e"
-+ 
-+     const-string v1, "ᴇ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "f"
-+ 
-+     const-string v1, "ꜰ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "g"
-+ 
-+     const-string v1, "ɢ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "h"
-+ 
-+     const-string v1, "ʜ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "i"
-+ 
-+     const-string v1, "ɪ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "j"
-+ 
-+     const-string v1, "ᴊ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "k"
-+ 
-+     const-string v1, "ᴋ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "l"
-+ 
-+     const-string v1, "ʟ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "m"
-+ 
-+     const-string v1, "ᴍ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "n"
-+ 
-+     const-string v1, "ɴ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "o"
-+ 
-+     const-string v1, "ᴏ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "p"
-+ 
-+     const-string v1, "ᴘ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "q"
-+ 
-+     const-string v1, "ǫ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "r"
-+ 
-+     const-string v1, "ʀ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "s"
-+ 
-+     const-string v1, "s"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "t"
-+ 
-+     const-string v1, "ᴛ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "u"
-+ 
-+     const-string v1, "ᴜ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "v"
-+ 
-+     const-string v1, "ᴠ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "w"
-+ 
-+     const-string v1, "ᴡ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "x"
-+ 
-+     const-string v1, "x"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "y"
-+ 
-+     const-string v1, "ʏ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "z"
-+ 
-+     const-string v1, "ᴢ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     # End of automatically generated code by textreplacegen.py
-+ 
-+     return-object p0
-+ .end method
-+ 
-+ .method public static final slashSmaller(Ljava/lang/String;)Ljava/lang/String;
-+     .locals 2
-+ 
-+     # Length of command + space
-+     const/16 v0, 0x9
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->substring(I)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     invoke-virtual {p0}, Ljava/lang/String;->toLowerCase()Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     # Start of automatically generated code with textreplacegen.py
-+ 
-+     const-string v0, "a"
-+ 
-+     const-string v1, "ᵃ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "b"
-+ 
-+     const-string v1, "ᵇ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "c"
-+ 
-+     const-string v1, "ᶜ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "d"
-+ 
-+     const-string v1, "ᵈ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "e"
-+ 
-+     const-string v1, "ᵉ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "f"
-+ 
-+     const-string v1, "ᶠ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "g"
-+ 
-+     const-string v1, "ᵍ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "h"
-+ 
-+     const-string v1, "ʰ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "i"
-+ 
-+     const-string v1, "ᶦ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "j"
-+ 
-+     const-string v1, "ʲ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "k"
-+ 
-+     const-string v1, "ᵏ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "l"
-+ 
-+     const-string v1, "ˡ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "m"
-+ 
-+     const-string v1, "ᵐ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "n"
-+ 
-+     const-string v1, "ⁿ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "o"
-+ 
-+     const-string v1, "ᵒ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "p"
-+ 
-+     const-string v1, "ᵖ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "q"
-+ 
-+     const-string v1, "ᑫ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "r"
-+ 
-+     const-string v1, "ʳ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "s"
-+ 
-+     const-string v1, "ˢ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "t"
-+ 
-+     const-string v1, "ᵗ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "u"
-+ 
-+     const-string v1, "ᵘ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "v"
-+ 
-+     const-string v1, "ᵛ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "w"
-+ 
-+     const-string v1, "ʷ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "x"
-+ 
-+     const-string v1, "ˣ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "y"
-+ 
-+     const-string v1, "ʸ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "z"
-+ 
-+     const-string v1, "ᶻ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     # End of automatically generated code by textreplacegen.py
-+ 
-+     return-object p0
-+ .end method
-+ 
-+ .method public static final slashFlip(Ljava/lang/String;)Ljava/lang/String;
-+     .locals 2
-+ 
-+     # Length of command + space
-+     const/16 v0, 0x6
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->substring(I)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     invoke-virtual {p0}, Ljava/lang/String;->toLowerCase()Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     # Reverse text
-+ 
-+     new-instance v0, Ljava/lang/StringBuilder;
-+ 
-+     invoke-direct {v0, p0}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-+ 
-+     invoke-virtual {v0}, Ljava/lang/StringBuilder;->reverse()Ljava/lang/StringBuilder;
-+ 
-+     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     # Start of automatically generated code with textreplacegen.py
-+ 
-+     const-string v0, "a"
-+ 
-+     const-string v1, "ɐ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "b"
-+ 
-+     const-string v1, "q"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "c"
-+ 
-+     const-string v1, "ɔ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "d"
-+ 
-+     const-string v1, "p"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "e"
-+ 
-+     const-string v1, "ǝ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "f"
-+ 
-+     const-string v1, "ɟ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "g"
-+ 
-+     const-string v1, "ƃ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "h"
-+ 
-+     const-string v1, "ɥ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "i"
-+ 
-+     const-string v1, "ı"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "j"
-+ 
-+     const-string v1, "ɾ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "k"
-+ 
-+     const-string v1, "ʞ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "l"
-+ 
-+     const-string v1, "ן"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "m"
-+ 
-+     const-string v1, "ɯ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "n"
-+ 
-+     const-string v1, "u"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "o"
-+ 
-+     const-string v1, "o"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "p"
-+ 
-+     const-string v1, "d"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "q"
-+ 
-+     const-string v1, "b"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "r"
-+ 
-+     const-string v1, "ɹ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "s"
-+ 
-+     const-string v1, "s"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "t"
-+ 
-+     const-string v1, "ʇ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "u"
-+ 
-+     const-string v1, "n"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "v"
-+ 
-+     const-string v1, "ʌ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "w"
-+ 
-+     const-string v1, "ʍ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "x"
-+ 
-+     const-string v1, "x"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "y"
-+ 
-+     const-string v1, "ʎ"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "z"
-+ 
-+     const-string v1, "z"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     # End of automatically generated code by textreplacegen.py
-+ 
-+     return-object p0
-+ .end method
-+ 
-+ .method public static final slashClap(Ljava/lang/String;)Ljava/lang/String;
-+     .locals 2
-+ 
-+     # Length of command + space
-+     const/4 v0, 0x6
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->substring(I)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, " "
-+ 
-+     const-string v1, " :clap: "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     return-object p0
-+ .end method
-+ 
-+ .method public static final slashOwo(Ljava/lang/String;)Ljava/lang/String;
-+     .locals 2
-+ 
-+     # Length of command + space
-+     const/4 v0, 0x5
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->substring(I)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     # Thanks Cynthia for the regex!
-+ 
-+     const-string v0, "(?:r|l)"
-+ 
-+     const-string v1, "w"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replaceAll(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "(?:R|L)"
-+ 
-+     const-string v1, "W"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replaceAll(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "n([aeiou])"
-+ 
-+     const-string v1, "ny$1"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replaceAll(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "N([aeiou])"
-+ 
-+     const-string v1, "Ny$1"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replaceAll(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "N([AEIOU])"
-+ 
-+     const-string v1, "NY$1"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replaceAll(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "ove"
-+ 
-+     const-string v1, "uv"
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     return-object p0
-+ .end method
-+ 
-+ .method public static final slashMorse(Ljava/lang/String;)Ljava/lang/String;
-+     .locals 2
-+ 
-+     # Length of command + space
-+     const/16 v0, 0x7
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->substring(I)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     invoke-virtual {p0}, Ljava/lang/String;->toUpperCase()Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     # Start of automatically generated code with textreplacegen.py
-+ 
-+     const-string v0, " "
-+ 
-+     const-string v1, "/ "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "."
-+ 
-+     const-string v1, ".-.-.- "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, ","
-+ 
-+     const-string v1, "--..-- "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, ":"
-+ 
-+     const-string v1, "---... "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "?"
-+ 
-+     const-string v1, "..--.. "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "'"
-+ 
-+     const-string v1, ".----. "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "-"
-+ 
-+     const-string v1, "-....- "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "/"
-+ 
-+     const-string v1, "-..-. "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "@"
-+ 
-+     const-string v1, ".--.-. "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "="
-+ 
-+     const-string v1, "-...- "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "A"
-+ 
-+     const-string v1, ".- "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "B"
-+ 
-+     const-string v1, "-... "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "C"
-+ 
-+     const-string v1, "-.-. "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "D"
-+ 
-+     const-string v1, "-.. "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "E"
-+ 
-+     const-string v1, ". "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "F"
-+ 
-+     const-string v1, "..-. "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "G"
-+ 
-+     const-string v1, "--. "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "H"
-+ 
-+     const-string v1, ".... "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "I"
-+ 
-+     const-string v1, ".. "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "J"
-+ 
-+     const-string v1, ".--- "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "K"
-+ 
-+     const-string v1, "-.- "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "L"
-+ 
-+     const-string v1, ".-.. "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "M"
-+ 
-+     const-string v1, "-- "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "N"
-+ 
-+     const-string v1, "-. "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "O"
-+ 
-+     const-string v1, "--- "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "P"
-+ 
-+     const-string v1, ".--. "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "Q"
-+ 
-+     const-string v1, "--.- "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "R"
-+ 
-+     const-string v1, ".-. "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "S"
-+ 
-+     const-string v1, "... "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "T"
-+ 
-+     const-string v1, "- "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "U"
-+ 
-+     const-string v1, "..- "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "V"
-+ 
-+     const-string v1, "...- "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "W"
-+ 
-+     const-string v1, ".-- "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "X"
-+ 
-+     const-string v1, "-..- "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "Y"
-+ 
-+     const-string v1, "-.-- "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "Z"
-+ 
-+     const-string v1, "--.. "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "0"
-+ 
-+     const-string v1, "----- "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "1"
-+ 
-+     const-string v1, ".---- "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "2"
-+ 
-+     const-string v1, "..--- "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "3"
-+ 
-+     const-string v1, "...-- "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "4"
-+ 
-+     const-string v1, "....- "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "5"
-+ 
-+     const-string v1, "..... "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "6"
-+ 
-+     const-string v1, "-.... "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "7"
-+ 
-+     const-string v1, "--... "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "8"
-+ 
-+     const-string v1, "---.. "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "9"
-+ 
-+     const-string v1, "----. "
-+ 
-+     invoke-virtual {p0, v0, v1}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     # End of automatically generated code by textreplacegen.py
-+ 
-+     return-object p0
-+ .end method
-+ 
-+ .method public static final slashCtc(Ljava/lang/String;)Ljava/lang/String;
-+     .locals 3
-+ 
-+     # called from smali/com/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1.smali
-+ 
-+     # Length of command + space
-+     const/4 v0, 0x5
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->substring(I)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     # Move to second word interpretation
-+ 
-+     const-string v0, "channelleak "
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
-+ 
-+     move-result v0
-+ 
-+     if-eqz v0, :cond_2
-+ 
-+     # Move to config value interpretation
-+ 
-+     const/16 v0, 0xc
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->substring(I)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "false"
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
-+ 
-+     move-result v1
-+ 
-+     # Set value
-+ 
-+     invoke-static {}, Lcom/discord/stores/StoreStream;->getUserSettings()Lcom/discord/stores/StoreUserSettings;
-+ 
-+     move-result-object v0
-+ 
-+     invoke-virtual {v0, v1}, Lcom/discord/stores/StoreUserSettings;->setLeakChannels(Z)V
-+ 
-+     const-string p0, "CTC: Successfully set leakchannels state."
-+ 
-+     return-object p0
-+ 
-+     # Move to second secondary command's interpretation
-+ 
-+     :cond_2
-+     const-string v0, "showtyping "
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
-+ 
-+     move-result v0
-+ 
-+     if-eqz v0, :cond_3
-+ 
-+     # Move to config value interpretation
-+ 
-+     const/16 v0, 0xb
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->substring(I)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v0, "true"
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
-+ 
-+     move-result v1
-+ 
-+     # Set value
-+ 
-+     invoke-static {}, Lcom/discord/stores/StoreStream;->getUserSettings()Lcom/discord/stores/StoreUserSettings;
-+ 
-+     move-result-object v0
-+ 
-+     invoke-virtual {v0, v1}, Lcom/discord/stores/StoreUserSettings;->setShowTyping(Z)V
-+ 
-+     const-string p0, "CTC: Successfully set showtyping state."
-+ 
-+     return-object p0
-+ 
-+     :cond_3
-+     const-string v0, "token "
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
-+ 
-+     move-result v0
-+ 
-+     if-eqz v0, :cond_4
-+ 
-+     # Move to config value interpretation
-+ 
-+     const/16 v0, 0x6
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->substring(I)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     # Set value
-+ 
-+     invoke-static {}, Lcom/discord/stores/StoreStream;->getUserSettings()Lcom/discord/stores/StoreUserSettings;
-+ 
-+     move-result-object v0
-+ 
-+     invoke-virtual {v0, p0}, Lcom/discord/stores/StoreUserSettings;->setStoredToken(Ljava/lang/String;)V
-+ 
-+     const-string p0, "CTC: Successfully changed token. Please restart application."
-+ 
-+     return-object p0
-+ 
-+     :cond_4
-+     const-string v0, "token"
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
-+ 
-+     move-result v0
-+ 
-+     if-eqz v0, :cond_5
-+ 
-+     # Get value
-+ 
-+     invoke-static {}, Lcom/discord/stores/StoreStream;->getUserSettings()Lcom/discord/stores/StoreUserSettings;
-+ 
-+     move-result-object v0
-+ 
-+     invoke-virtual {v0}, Lcom/discord/stores/StoreUserSettings;->getStoredToken()Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     return-object p0
-+ 
-+     :cond_5
-+     const-string v0, "account "
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
-+ 
-+     move-result v0
-+ 
-+     if-eqz v0, :cond_7
-+ 
-+     # Move to config value interpretation
-+ 
-+     const/16 v0, 0x8
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->substring(I)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     invoke-virtual {p0}, Ljava/lang/String;->trim()Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     # Set value
-+ 
-+     invoke-static {}, Lcom/discord/stores/StoreStream;->getUserSettings()Lcom/discord/stores/StoreUserSettings;
-+ 
-+     move-result-object v0
-+ 
-+     invoke-virtual {v0, p0}, Lcom/discord/stores/StoreUserSettings;->getAccountToken(Ljava/lang/String;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     const-string v1, "none"
-+ 
-+     invoke-virtual {p0, v1}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
-+ 
-+     move-result v1
-+ 
-+     if-nez v1, :cond_6
-+ 
-+     invoke-virtual {v0, p0}, Lcom/discord/stores/StoreUserSettings;->setStoredToken(Ljava/lang/String;)V
-+ 
-+     const-string p0, "CTC: Successfully changed accounts. Please restart application."
-+ 
-+     return-object p0
-+ 
-+     :cond_6
-+ 
-+     const-string p0, "CTC: No such account found."
-+ 
-+     return-object p0
-+ 
-+     :cond_7
-+     const-string v0, "addaccount "
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
-+ 
-+     move-result v0
-+ 
-+     if-eqz v0, :cond_1
-+ 
-+     # Get value
-+ 
-+     const/16 v0, 0xb
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->substring(I)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     # Get next space
-+ 
-+     const-string v0, " "
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->indexOf(Ljava/lang/String;)I
-+ 
-+     move-result v0
-+ 
-+     # const/4 v1, 0x6
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->substring(I)Ljava/lang/String;
-+ 
-+     move-result-object v1
-+ 
-+     # at this point:
-+     # p0 = "$username $token"
-+     # v1 = "$username"
-+ 
-+     const-string v2, ""
-+ 
-+     invoke-virtual {p0, v1, v2}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     invoke-virtual {p0}, Ljava/lang/String;->trim()Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     invoke-virtual {v1}, Ljava/lang/String;->trim()Ljava/lang/String;
-+ 
-+     move-result-object v1
-+ 
-+     # at this point:
-+     # p0 = "$token"
-+     # v1 = "$username"
-+ 
-+     invoke-static {}, Lcom/discord/stores/StoreStream;->getUserSettings()Lcom/discord/stores/StoreUserSettings;
-+ 
-+     move-result-object v0
-+ 
-+     const-string v2, "current"
-+ 
-+     invoke-virtual {p0, v2}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
-+ 
-+     move-result v2
-+ 
-+     if-eqz v2, :cond_8
-+ 
-+     invoke-virtual {v0}, Lcom/discord/stores/StoreUserSettings;->getStoredToken()Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     :cond_8
-+     invoke-virtual {v0, p0, v1}, Lcom/discord/stores/StoreUserSettings;->setAccountToken(Ljava/lang/String;Ljava/lang/String;)V
-+ 
-+     const-string p0, "CTC: Added account."
-+ 
-+     return-object p0
-+ 
-+     :cond_1
-+     const-string p0, "CTC: No known command supplied. (available: token, showtyping, channelleak, addaccount, account. Everything except specified token needs to be lowercase)"
-+ 
-+     return-object p0
-+ .end method
-+ 
-+ .method public static final slashCommands(Ljava/lang/String;)Ljava/lang/String;
-+     .locals 1
-+ 
-+     # Ideas for commands (by luna): lower [done], upper [done], fw [done], bold [done], shrug [done]
-+     # Ideas for commands (by bela): small [done], smaller [done]
-+     # Discord's defaults: me [done], tableflip [done], unflip [done], spoiler [done]
-+     # More ideas: morse [done], mock, help
-+ 
-+     # Trim input before anything
-+     invoke-virtual {p0}, Ljava/lang/String;->trim()Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     # Upper command
-+     const-string v0, "/upper "
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
-+ 
-+     move-result v0
-+ 
-+     if-eqz v0, :cond_1
-+ 
-+     invoke-static {p0}, Lcom/discord/stores/StoreMessages;->slashUpper(Ljava/lang/String;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     goto :goto_0
-+ 
-+     # Lower command
-+     :cond_1
-+     const-string v0, "/lower "
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
-+ 
-+     move-result v0
-+ 
-+     if-eqz v0, :cond_2
-+ 
-+     invoke-static {p0}, Lcom/discord/stores/StoreMessages;->slashLower(Ljava/lang/String;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     goto :goto_0
-+ 
-+     # Bold command
-+     :cond_2
-+     const-string v0, "/bold "
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
-+ 
-+     move-result v0
-+ 
-+     if-eqz v0, :cond_3
-+ 
-+     invoke-static {p0}, Lcom/discord/stores/StoreMessages;->slashBold(Ljava/lang/String;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     goto :goto_0
-+ 
-+     # Spoiler command
-+     :cond_3
-+     const-string v0, "/spoiler "
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
-+ 
-+     move-result v0
-+ 
-+     if-eqz v0, :cond_4
-+ 
-+     invoke-static {p0}, Lcom/discord/stores/StoreMessages;->slashSpoiler(Ljava/lang/String;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     goto :goto_0
-+ 
-+     # Me command
-+     :cond_4
-+     const-string v0, "/me "
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
-+ 
-+     move-result v0
-+ 
-+     if-eqz v0, :cond_5
-+ 
-+     invoke-static {p0}, Lcom/discord/stores/StoreMessages;->slashMe(Ljava/lang/String;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     goto :goto_0
-+ 
-+     # St (strikethrough) command
-+     :cond_5
-+     const-string v0, "/st "
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
-+ 
-+     move-result v0
-+ 
-+     if-eqz v0, :cond_6
-+ 
-+     invoke-static {p0}, Lcom/discord/stores/StoreMessages;->slashSt(Ljava/lang/String;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     goto :goto_0
-+ 
-+     # Shrug command
-+     :cond_6
-+     const-string v0, "/shrug"
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
-+ 
-+     move-result v0
-+ 
-+     if-eqz v0, :cond_7
-+ 
-+     invoke-static {p0}, Lcom/discord/stores/StoreMessages;->slashShrug(Ljava/lang/String;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     goto :goto_0
-+ 
-+     # Tableflip command
-+     :cond_7
-+     const-string v0, "/tableflip"
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
-+ 
-+     move-result v0
-+ 
-+     if-eqz v0, :cond_8
-+ 
-+     invoke-static {p0}, Lcom/discord/stores/StoreMessages;->slashTableflip(Ljava/lang/String;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     goto :goto_0
-+ 
-+     # Unflip command
-+     :cond_8
-+     const-string v0, "/unflip"
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
-+ 
-+     move-result v0
-+ 
-+     if-eqz v0, :cond_9
-+ 
-+     invoke-static {p0}, Lcom/discord/stores/StoreMessages;->slashUnflip(Ljava/lang/String;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     goto :goto_0
-+ 
-+     # Lenny command
-+     :cond_9
-+     const-string v0, "/lenny"
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
-+ 
-+     move-result v0
-+ 
-+     if-eqz v0, :cond_10
-+ 
-+     invoke-static {p0}, Lcom/discord/stores/StoreMessages;->slashLenny(Ljava/lang/String;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     goto :goto_0
-+ 
-+     # Fw command
-+     :cond_10
-+     const-string v0, "/fw "
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
-+ 
-+     move-result v0
-+ 
-+     if-eqz v0, :cond_11
-+ 
-+     invoke-static {p0}, Lcom/discord/stores/StoreMessages;->slashFw(Ljava/lang/String;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     goto :goto_0
-+ 
-+     # Small command
-+     :cond_11
-+     const-string v0, "/small "
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
-+ 
-+     move-result v0
-+ 
-+     if-eqz v0, :cond_12
-+ 
-+     invoke-static {p0}, Lcom/discord/stores/StoreMessages;->slashSmall(Ljava/lang/String;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     goto :goto_0
-+ 
-+     # Smaller command
-+     :cond_12
-+     const-string v0, "/smaller "
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
-+ 
-+     move-result v0
-+ 
-+     if-eqz v0, :cond_13
-+ 
-+     invoke-static {p0}, Lcom/discord/stores/StoreMessages;->slashSmaller(Ljava/lang/String;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     goto :goto_0
-+ 
-+     # Flip command
-+     :cond_13
-+     const-string v0, "/flip "
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
-+ 
-+     move-result v0
-+ 
-+     if-eqz v0, :cond_14
-+ 
-+     invoke-static {p0}, Lcom/discord/stores/StoreMessages;->slashFlip(Ljava/lang/String;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     goto :goto_0
-+ 
-+     # Clap command
-+     # *jeb voice* please clap
-+     :cond_14
-+     const-string v0, "/clap "
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
-+ 
-+     move-result v0
-+ 
-+     if-eqz v0, :cond_15
-+ 
-+     invoke-static {p0}, Lcom/discord/stores/StoreMessages;->slashClap(Ljava/lang/String;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     goto :goto_0
-+ 
-+     # OwO command
-+     :cond_15
-+     const-string v0, "/owo "
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
-+ 
-+     move-result v0
-+ 
-+     if-eqz v0, :cond_16
-+ 
-+     invoke-static {p0}, Lcom/discord/stores/StoreMessages;->slashOwo(Ljava/lang/String;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     goto :goto_0
-+ 
-+     # Morse command
-+     :cond_16
-+     const-string v0, "/morse "
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
-+ 
-+     move-result v0
-+ 
-+     if-eqz v0, :cond_0
-+ 
-+     invoke-static {p0}, Lcom/discord/stores/StoreMessages;->slashMorse(Ljava/lang/String;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     goto :goto_0
-+ 
-+     :cond_0
-+     :goto_0
-+     # And finally, trim output before sending it back
-+     invoke-virtual {p0}, Ljava/lang/String;->trim()Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     return-object p0
-+ .end method
-+ 
-+ .method public static final interceptSendMessage(Ljava/lang/String;)Ljava/lang/String;
-+     .locals 2
-+ 
-+     const-string v0, "/"
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
-+ 
-+     move-result v0
-+ 
-+     if-eqz v0, :cond_0
-+ 
-+     invoke-static {p0}, Lcom/discord/stores/StoreMessages;->slashCommands(Ljava/lang/String;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     :cond_0
-+     return-object p0
-+ .end method
-+ 
-+ .method public static final interceptEditMessage(Ljava/lang/String;)Ljava/lang/String;
-+     .locals 2
-+ 
-+     const-string v0, "/"
-+ 
-+     invoke-virtual {p0, v0}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
-+ 
-+     move-result v0
-+ 
-+     if-eqz v0, :cond_0
-+ 
-+     invoke-static {p0}, Lcom/discord/stores/StoreMessages;->slashCommands(Ljava/lang/String;)Ljava/lang/String;
-+ 
-+     move-result-object p0
-+ 
-+     :cond_0
-+     return-object p0
-+ .end method
-+ 
-  .method public final sendMessage(JLcom/discord/models/domain/ModelUser;Ljava/lang/String;Ljava/util/List;Ljava/util/List;)Lrx/Observable;
-      .locals 8
-      .annotation system Ldalvik/annotation/Signature;
-***************
-*** 977,982 ****
---- 3757,3766 ----
-  
-      invoke-static {p4, v0}, Lkotlin/jvm/internal/k;->h(Ljava/lang/Object;Ljava/lang/String;)V
-  
-+     invoke-static {p4}, Lcom/discord/stores/StoreMessages;->interceptSendMessage(Ljava/lang/String;)Ljava/lang/String;
-+ 
-+     move-result-object p4
-+ 
-      const/4 v0, 0x1
-  
-      if-eqz p6, :cond_0
-Only in com.discord-904/smali/com/discord/stores: StoreMessages.smali.orig
-Only in com.discord-904/smali/com/discord/stores: StoreMessages.smali.rej
-diff -crB com.discord-904-base/smali/com/discord/stores/StoreUserSettings.smali com.discord-904/smali/com/discord/stores/StoreUserSettings.smali
-*** com.discord-904-base/smali/com/discord/stores/StoreUserSettings.smali	2019-05-29 01:12:17.175464299 +0300
---- com.discord-904/smali/com/discord/stores/StoreUserSettings.smali	2019-05-29 01:14:12.249409971 +0300
-***************
-*** 1272,1277 ****
---- 1272,1452 ----
-      return v0
-  .end method
-  
-+ .method public getLeakChannels()Z
-+     .locals 3
-+ 
-+     iget-object v0, p0, Lcom/discord/stores/StoreUserSettings;->prefs:Landroid/content/SharedPreferences;
-+ 
-+     const-string v1, "CACHE_KEY_CTC_LEAK_CHANNELS"
-+ 
-+     const/4 v2, 0x1
-+ 
-+     invoke-interface {v0, v1, v2}, Landroid/content/SharedPreferences;->getBoolean(Ljava/lang/String;Z)Z
-+ 
-+     move-result v0
-+ 
-+     return v0
-+ .end method
-+ 
-+ .method public setLeakChannels(Z)V
-+     .locals 2
-+ 
-+     iget-object v0, p0, Lcom/discord/stores/StoreUserSettings;->prefs:Landroid/content/SharedPreferences;
-+ 
-+     invoke-interface {v0}, Landroid/content/SharedPreferences;->edit()Landroid/content/SharedPreferences$Editor;
-+ 
-+     move-result-object v0
-+ 
-+     const-string v1, "CACHE_KEY_CTC_LEAK_CHANNELS"
-+ 
-+     invoke-interface {v0, v1, p1}, Landroid/content/SharedPreferences$Editor;->putBoolean(Ljava/lang/String;Z)Landroid/content/SharedPreferences$Editor;
-+ 
-+     move-result-object p1
-+ 
-+     invoke-interface {p1}, Landroid/content/SharedPreferences$Editor;->apply()V
-+ 
-+     return-void
-+ .end method
-+ 
-+ .method public getShowTyping()Z
-+     .locals 3
-+ 
-+     iget-object v0, p0, Lcom/discord/stores/StoreUserSettings;->prefs:Landroid/content/SharedPreferences;
-+ 
-+     const-string v1, "CACHE_KEY_CTC_SHOW_TYPING"
-+ 
-+     const/4 v2, 0x1
-+ 
-+     invoke-interface {v0, v1, v2}, Landroid/content/SharedPreferences;->getBoolean(Ljava/lang/String;Z)Z
-+ 
-+     move-result v0
-+ 
-+     return v0
-+ .end method
-+ 
-+ .method public setShowTyping(Z)V
-+     .locals 2
-+ 
-+     iget-object v0, p0, Lcom/discord/stores/StoreUserSettings;->prefs:Landroid/content/SharedPreferences;
-+ 
-+     invoke-interface {v0}, Landroid/content/SharedPreferences;->edit()Landroid/content/SharedPreferences$Editor;
-+ 
-+     move-result-object v0
-+ 
-+     const-string v1, "CACHE_KEY_CTC_SHOW_TYPING"
-+ 
-+     invoke-interface {v0, v1, p1}, Landroid/content/SharedPreferences$Editor;->putBoolean(Ljava/lang/String;Z)Landroid/content/SharedPreferences$Editor;
-+ 
-+     move-result-object p1
-+ 
-+     invoke-interface {p1}, Landroid/content/SharedPreferences$Editor;->apply()V
-+ 
-+     return-void
-+ .end method
-+ 
-+ 
-+ .method public getStoredToken()Ljava/lang/String;
-+     .locals 3
-+ 
-+     iget-object v0, p0, Lcom/discord/stores/StoreAuthentication;->prefs:Landroid/content/SharedPreferences;
-+ 
-+     const-string v1, "none"
-+ 
-+     const-string v2, "STORE_AUTHED_TOKEN"
-+ 
-+     invoke-interface {v0, v2, v1}, Landroid/content/SharedPreferences;->getString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
-+ 
-+     move-result-object v0
-+ 
-+     return-object v0
-+ .end method
-+ 
-+ 
-+ .method public setStoredToken(Ljava/lang/String;)V
-+     .locals 2
-+ 
-+     iget-object v0, p0, Lcom/discord/stores/StoreAuthentication;->prefs:Landroid/content/SharedPreferences;
-+ 
-+     invoke-interface {v0}, Landroid/content/SharedPreferences;->edit()Landroid/content/SharedPreferences$Editor;
-+ 
-+     move-result-object v0
-+ 
-+     const-string v1, "STORE_AUTHED_TOKEN"
-+ 
-+     invoke-interface {v0, v1, p1}, Landroid/content/SharedPreferences$Editor;->putString(Ljava/lang/String;Ljava/lang/String;)Landroid/content/SharedPreferences$Editor;
-+ 
-+     move-result-object p1
-+ 
-+     invoke-interface {p1}, Landroid/content/SharedPreferences$Editor;->apply()V
-+ 
-+     return-void
-+ .end method
-+ 
-+ .method public getAccountToken(Ljava/lang/String;)Ljava/lang/String;
-+     .locals 3
-+ 
-+     const-string v2, "STORE_AUTHED_TOKEN_CTC_USER_"
-+ 
-+     invoke-virtual {p1}, Ljava/lang/String;->toUpperCase()Ljava/lang/String;
-+ 
-+     move-result-object p1
-+ 
-+     new-instance v0, Ljava/lang/StringBuilder;
-+ 
-+     invoke-direct {v0, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-+ 
-+     invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
-+ 
-+     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
-+ 
-+     move-result-object v2
-+ 
-+     iget-object v0, p0, Lcom/discord/stores/StoreAuthentication;->prefs:Landroid/content/SharedPreferences;
-+ 
-+     const-string v1, "none"
-+ 
-+     invoke-interface {v0, v2, v1}, Landroid/content/SharedPreferences;->getString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
-+ 
-+     move-result-object v0
-+ 
-+     return-object v0
-+ .end method
-+ 
-+ 
-+ .method public setAccountToken(Ljava/lang/String;Ljava/lang/String;)V
-+     .locals 2
-+ 
-+     const-string v1, "STORE_AUTHED_TOKEN_CTC_USER_"
-+ 
-+     invoke-virtual {p1}, Ljava/lang/String;->toUpperCase()Ljava/lang/String;
-+ 
-+     move-result-object p1
-+ 
-+     new-instance v0, Ljava/lang/StringBuilder;
-+ 
-+     invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-+ 
-+     invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
-+ 
-+     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
-+ 
-+     move-result-object v1
-+ 
-+     iget-object v0, p0, Lcom/discord/stores/StoreAuthentication;->prefs:Landroid/content/SharedPreferences;
-+ 
-+     invoke-interface {v0}, Landroid/content/SharedPreferences;->edit()Landroid/content/SharedPreferences$Editor;
-+ 
-+     move-result-object v0
-+ 
-+     invoke-interface {v0, v1, p2}, Landroid/content/SharedPreferences$Editor;->putString(Ljava/lang/String;Ljava/lang/String;)Landroid/content/SharedPreferences$Editor;
-+ 
-+     move-result-object p1
-+ 
-+     invoke-interface {p1}, Landroid/content/SharedPreferences$Editor;->apply()V
-+ 
-+     return-void
-+ .end method
-+ 
-  .method handleConnectionOpen(Lcom/discord/models/domain/ModelPayload;)V
-      .locals 0
-  
-diff -crB com.discord-904-base/smali/com/discord/widgets/chat/input/WidgetChatInputEditText$1.smali com.discord-904/smali/com/discord/widgets/chat/input/WidgetChatInputEditText$1.smali
-*** com.discord-904-base/smali/com/discord/widgets/chat/input/WidgetChatInputEditText$1.smali	2019-05-29 01:12:17.612133252 +0300
---- com.discord-904/smali/com/discord/widgets/chat/input/WidgetChatInputEditText$1.smali	2019-05-29 01:14:12.249409971 +0300
-***************
-*** 59,64 ****
---- 59,74 ----
-  
-      invoke-virtual {v0}, Lcom/discord/widgets/chat/input/WidgetChatInputEditText;->saveText()V
-  
-+     invoke-static {}, Lcom/discord/stores/StoreStream;->getUserSettings()Lcom/discord/stores/StoreUserSettings;
-+ 
-+     move-result-object p1
-+ 
-+     invoke-virtual {p1}, Lcom/discord/stores/StoreUserSettings;->getShowTyping()Z
-+ 
-+     move-result p1
-+ 
-+     if-eqz p1, :cond_1
-+ 
-      .line 222
-      invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
-  
-Only in com.discord-904/smali/com/discord/widgets/chat/input: WidgetChatInputEditText$1.smali.orig
-diff -crB com.discord-904-base/smali/com/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1.smali com.discord-904/smali/com/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1.smali
-*** com.discord-904-base/smali/com/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1.smali	2019-05-29 01:12:17.612133252 +0300
---- com.discord-904/smali/com/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1.smali	2019-05-29 01:14:12.249409971 +0300
-***************
-*** 355,360 ****
---- 355,362 ----
-  
-      move-result-object v9
-  
-+     # intercept edit here
-+ 
-      invoke-static {v9, v3}, Lkotlin/jvm/internal/k;->g(Ljava/lang/Object;Ljava/lang/String;)V
-  
-      .line 63
-***************
-*** 399,404 ****
---- 401,444 ----
-  
-      move-result-object v8
-  
-+     # intercept send here
-+ 
-+     const-string v9, "/ctc "
-+ 
-+     invoke-virtual {v8, v9}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
-+ 
-+     move-result v9
-+ 
-+     if-eqz v9, :cond_6
-+ 
-+     invoke-static {v8}, Lcom/discord/stores/StoreMessages;->slashCtc(Ljava/lang/String;)Ljava/lang/String;
-+ 
-+     move-result-object v8
-+ 
-+     # invoke-virtual {v9}, Landroid/view/View;->getContext()Landroid/content/Context;
-+ 
-+     # move-result-object v9
-+ 
-+     # const/4 v0, 0x0
-+ 
-+     # invoke-static {v9, v8, v0}, Landroid/widget/Toast;->makeText(Landroid/content/Context;II)Landroid/widget/Toast;
-+ 
-+     # move-result-object v9
-+ 
-+     # invoke-virtual {v9}, Landroid/widget/Toast;->show()V
-+ 
-+     sget-object p1, Lcom/discord/widgets/chat/input/WidgetChatInputSend;->INSTANCE:Lcom/discord/widgets/chat/input/WidgetChatInputSend;
-+ 
-+     iget-object v0, p0, Lcom/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1;->$chatInput:Lcom/discord/widgets/chat/input/WidgetChatInputEditText;
-+ 
-+     invoke-static {p1, v0, v8}, Lcom/discord/widgets/chat/input/WidgetChatInputSend;->access$SetInput(Lcom/discord/widgets/chat/input/WidgetChatInputSend;Lcom/discord/widgets/chat/input/WidgetChatInputEditText;Ljava/lang/CharSequence;)Z
-+ 
-+     move-result p1
-+ 
-+     return p1
-+ 
-+     :cond_6
-+ 
-      invoke-static {v8, v3}, Lkotlin/jvm/internal/k;->g(Ljava/lang/Object;Ljava/lang/String;)V
-  
-      .line 79
-diff -crB com.discord-904-base/smali/com/discord/widgets/chat/input/WidgetChatInputSend.smali com.discord-904/smali/com/discord/widgets/chat/input/WidgetChatInputSend.smali
-*** com.discord-904-base/smali/com/discord/widgets/chat/input/WidgetChatInputSend.smali	2019-05-29 01:12:17.615466603 +0300
---- com.discord-904/smali/com/discord/widgets/chat/input/WidgetChatInputSend.smali	2019-05-29 01:14:12.252743323 +0300
-***************
-*** 50,55 ****
---- 50,79 ----
-      return p0
-  .end method
-  
-+ .method public static final access$SetInput(Lcom/discord/widgets/chat/input/WidgetChatInputSend;Lcom/discord/widgets/chat/input/WidgetChatInputEditText;Ljava/lang/CharSequence;)Z
-+     .locals 1
-+ 
-+     .line 147
-+     invoke-virtual {p1, p2}, Lcom/discord/widgets/chat/input/WidgetChatInputEditText;->setText(Ljava/lang/CharSequence;)V
-+ 
-+     .line 148
-+     invoke-virtual {p1}, Lcom/discord/widgets/chat/input/WidgetChatInputEditText;->clearLastTypingEmission()V
-+ 
-+     .line 151
-+     invoke-static {}, Lcom/discord/stores/StoreStream;->getChat()Lcom/discord/stores/StoreChat;
-+ 
-+     move-result-object p1
-+ 
-+     const/4 v0, 0x0
-+ 
-+     .line 152
-+     invoke-virtual {p1, v0}, Lcom/discord/stores/StoreChat;->setEditingMessage(Lcom/discord/stores/StoreChat$EditingMessage;)V
-+ 
-+     const/4 p1, 0x1
-+ 
-+     return p1
-+ .end method
-+ 
-  .method private final clearInput(Lcom/discord/widgets/chat/input/WidgetChatInputEditText;)Z
-      .locals 1
-  
diff --git a/patches/slashcommands/README.md b/patches/slashcommands/README.md
index 4b93c74..87c78bb 100644
--- a/patches/slashcommands/README.md
+++ b/patches/slashcommands/README.md
@@ -41,5 +41,4 @@ Commands like fw can be generated by `textreplacegen.py` or `textreplacegen-arra
 - 9.0.1
 - 9.0.2
 - 9.0.3
-- 9.0.4
 
diff --git a/patches/smalltime/904.patch b/patches/smalltime/904.patch
deleted file mode 100644
index 417c8d6..0000000
--- a/patches/smalltime/904.patch
+++ /dev/null
@@ -1,190 +0,0 @@
-diff -crB from/smali_classes2/com/miguelgaeta/simple_time/SimpleTime.smali to/smali_classes2/com/miguelgaeta/simple_time/SimpleTime.smali
-*** from/smali_classes2/com/miguelgaeta/simple_time/SimpleTime.smali	2019-05-12 12:13:48.187878981 +0300
---- to/smali_classes2/com/miguelgaeta/simple_time/SimpleTime.smali	2019-05-12 12:15:32.663889927 +0300
-***************
-*** 239,411 ****
-  .end method
-  
-  .method public toReadableTimeString(Ljava/lang/Long;)Ljava/lang/String;
-!     .locals 6
-! 
-!     .line 126
-!     invoke-virtual {p0}, Lcom/miguelgaeta/simple_time/SimpleTime;->currentTimeMillis()J
-! 
-!     move-result-wide v0
-! 
-!     invoke-static {v0, v1}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
-! 
-!     move-result-object v0
-! 
-!     invoke-virtual {p0, v0}, Lcom/miguelgaeta/simple_time/SimpleTime;->toCalendar(Ljava/lang/Long;)Ljava/util/Calendar;
-! 
-!     move-result-object v0
-! 
-!     const/4 v1, 0x0
-! 
-!     const/16 v2, 0xb
-! 
-!     .line 128
-!     invoke-virtual {v0, v2, v1}, Ljava/util/Calendar;->set(II)V
-! 
-!     const/16 v2, 0xc
-! 
-!     .line 129
-!     invoke-virtual {v0, v2, v1}, Ljava/util/Calendar;->set(II)V
-! 
-!     const/16 v2, 0xd
-! 
-!     .line 130
-!     invoke-virtual {v0, v2, v1}, Ljava/util/Calendar;->set(II)V
-! 
-!     const/16 v2, 0xe
-! 
-!     .line 131
-!     invoke-virtual {v0, v2, v1}, Ljava/util/Calendar;->set(II)V
-! 
-!     .line 133
-!     iget-object v1, p0, Lcom/miguelgaeta/simple_time/SimpleTime;->locale:Ljava/util/Locale;
-! 
-!     invoke-virtual {v1}, Ljava/util/Locale;->getLanguage()Ljava/lang/String;
-! 
-!     move-result-object v1
-! 
-!     const-string v2, "en"
-! 
-!     invoke-virtual {v1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
-! 
-!     move-result v1
-! 
-!     if-nez v1, :cond_1
-! 
-!     .line 136
-!     invoke-virtual {p1}, Ljava/lang/Long;->longValue()J
-! 
-!     move-result-wide v1
-! 
-!     invoke-virtual {v0}, Ljava/util/Calendar;->getTimeInMillis()J
-! 
-!     move-result-wide v3
-! 
-!     cmp-long v0, v1, v3
-! 
-!     if-lez v0, :cond_0
-! 
-!     .line 137
-      iget-object v0, p0, Lcom/miguelgaeta/simple_time/SimpleTime;->formatterTime:Ljava/text/DateFormat;
-  
-      invoke-virtual {v0, p1}, Ljava/text/DateFormat;->format(Ljava/lang/Object;)Ljava/lang/String;
-  
--     move-result-object p1
-- 
--     return-object p1
-- 
--     .line 139
--     :cond_0
--     iget-object v0, p0, Lcom/miguelgaeta/simple_time/SimpleTime;->formatterDateTime:Ljava/text/DateFormat;
-- 
--     invoke-virtual {v0, p1}, Ljava/text/DateFormat;->format(Ljava/lang/Object;)Ljava/lang/String;
-- 
--     move-result-object p1
-- 
--     return-object p1
-- 
--     .line 143
--     :cond_1
--     invoke-virtual {p1}, Ljava/lang/Long;->longValue()J
-- 
--     move-result-wide v1
-- 
--     invoke-virtual {v0}, Ljava/util/Calendar;->getTimeInMillis()J
-- 
--     move-result-wide v3
-- 
--     cmp-long v5, v1, v3
-- 
--     if-lez v5, :cond_2
-- 
--     .line 144
--     new-instance v0, Ljava/lang/StringBuilder;
-- 
--     const-string v1, "Today at "
-- 
--     invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-- 
--     iget-object v1, p0, Lcom/miguelgaeta/simple_time/SimpleTime;->formatterTime:Ljava/text/DateFormat;
-- 
--     invoke-virtual {v1, p1}, Ljava/text/DateFormat;->format(Ljava/lang/Object;)Ljava/lang/String;
-- 
--     move-result-object p1
-- 
--     invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-- 
--     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
-- 
--     move-result-object p1
-- 
--     return-object p1
-- 
--     :cond_2
--     const/4 v1, 0x5
-- 
--     const/4 v2, -0x1
-- 
--     .line 147
--     invoke-virtual {v0, v1, v2}, Ljava/util/Calendar;->add(II)V
-- 
--     .line 149
--     invoke-virtual {p1}, Ljava/lang/Long;->longValue()J
-- 
--     move-result-wide v1
-- 
--     invoke-virtual {v0}, Ljava/util/Calendar;->getTimeInMillis()J
-- 
--     move-result-wide v3
-- 
--     cmp-long v0, v1, v3
-- 
--     if-lez v0, :cond_3
-- 
--     .line 150
--     new-instance v0, Ljava/lang/StringBuilder;
-- 
--     const-string v1, "Yesterday at "
-- 
--     invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
-- 
--     iget-object v1, p0, Lcom/miguelgaeta/simple_time/SimpleTime;->formatterTime:Ljava/text/DateFormat;
-- 
--     invoke-virtual {v1, p1}, Ljava/text/DateFormat;->format(Ljava/lang/Object;)Ljava/lang/String;
-- 
--     move-result-object p1
-- 
--     invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
-- 
--     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
-- 
--     move-result-object p1
-- 
--     return-object p1
-- 
--     .line 153
--     :cond_3
--     iget-object v0, p0, Lcom/miguelgaeta/simple_time/SimpleTime;->formatterDateTime:Ljava/text/DateFormat;
-- 
--     invoke-virtual {v0, p1}, Ljava/text/DateFormat;->format(Ljava/lang/Object;)Ljava/lang/String;
-- 
-      move-result-object p1
-  
-      return-object p1
---- 239,249 ----
-  .end method
-  
-  .method public toReadableTimeString(Ljava/lang/Long;)Ljava/lang/String;
-!     .locals 1
-      iget-object v0, p0, Lcom/miguelgaeta/simple_time/SimpleTime;->formatterTime:Ljava/text/DateFormat;
-  
-      invoke-virtual {v0, p1}, Ljava/text/DateFormat;->format(Ljava/lang/Object;)Ljava/lang/String;
-  
-      move-result-object p1
-  
-      return-object p1
diff --git a/patches/smalltime/README.md b/patches/smalltime/README.md
index 4d1dccb..7960197 100644
--- a/patches/smalltime/README.md
+++ b/patches/smalltime/README.md
@@ -29,5 +29,4 @@ This patch replaces the long time string with just a simple time string. This is
 - 9.0.1
 - 9.0.2
 - 9.0.3
-- 9.0.4
 
diff --git a/patches/squareavatars/904.patch b/patches/squareavatars/904.patch
deleted file mode 100644
index c20ac99..0000000
--- a/patches/squareavatars/904.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-diff -crB from/res/values/styles.xml to/res/values/styles.xml
-*** from/res/values/styles.xml	2019-05-12 12:13:45.444439495 +0300
---- to/res/values/styles.xml	2019-05-12 12:15:30.707184094 +0300
-***************
-*** 832,838 ****
-          <item name="actualImageScaleType">fitCenter</item>
-          <item name="placeholderImage">@drawable/asset_default_avatar_32dp</item>
-          <item name="placeholderImageScaleType">fitCenter</item>
-!         <item name="roundAsCircle">true</item>
-      </style>
-      <style name="Avatar.Chat" parent="@style/Avatar.Large">
-          <item name="android:layout_width">@dimen/avatar_size_chat</item>
---- 832,839 ----
-          <item name="actualImageScaleType">fitCenter</item>
-          <item name="placeholderImage">@drawable/asset_default_avatar_32dp</item>
-          <item name="placeholderImageScaleType">fitCenter</item>
-!         <item name="roundAsCircle">false</item>
-!         <item name="roundedCornerRadius">3dp</item>
-      </style>
-      <style name="Avatar.Chat" parent="@style/Avatar.Large">
-          <item name="android:layout_width">@dimen/avatar_size_chat</item>
diff --git a/patches/squareavatars/README.md b/patches/squareavatars/README.md
index d5dde7e..d3097b9 100644
--- a/patches/squareavatars/README.md
+++ b/patches/squareavatars/README.md
@@ -31,5 +31,4 @@ A very small amount of rounding is applied to make it look a little better.
 - 9.0.1
 - 9.0.2
 - 9.0.3
-- 9.0.4
 
diff --git a/patches/tokenlogin/904.patch b/patches/tokenlogin/904.patch
deleted file mode 100644
index cf9e572..0000000
--- a/patches/tokenlogin/904.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-diff -crB com.discord-903-base/smali/com/discord/widgets/auth/WidgetAuthLogin.smali com.discord-903/smali/com/discord/widgets/auth/WidgetAuthLogin.smali
-*** com.discord-903-base/smali/com/discord/widgets/auth/WidgetAuthLogin.smali	2019-05-24 23:40:49.834137133 +0300
---- com.discord-903/smali/com/discord/widgets/auth/WidgetAuthLogin.smali	2019-05-26 20:05:10.994568709 +0300
-***************
-*** 943,948 ****
---- 943,969 ----
-  
-      move-result-object v3
-  
-+     # tokenlogin code
-+ 
-+     const-string v6, "tokenlogin"
-+ 
-+     invoke-virtual {v2, v6}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
-+ 
-+     move-result v6
-+ 
-+     if-eqz v6, :cond_2
-+ 
-+     invoke-static {}, Lcom/discord/stores/StoreStream;->getUserSettings()Lcom/discord/stores/StoreUserSettings;
-+ 
-+     move-result-object v6
-+ 
-+     invoke-virtual {v6, v3}, Lcom/discord/stores/StoreUserSettings;->setStoredToken(Ljava/lang/String;)V
-+ 
-+     return-void
-+ 
-+     # end of new code (except conf below, that's also new)
-+ 
-+     :cond_2
-      invoke-virtual {v0, v2, v3, p1, p2}, Lcom/discord/stores/StoreAuthentication;->login(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)Lrx/Observable;
-  
-      move-result-object p1
diff --git a/patches/tokenlogin/README.md b/patches/tokenlogin/README.md
index 6a212f2..39a2d7f 100644
--- a/patches/tokenlogin/README.md
+++ b/patches/tokenlogin/README.md
@@ -8,4 +8,3 @@ This patch relies on some stuff I added with slashcommands, so please use that p
 
 #### Available and tested on:
 - 9.0.3
-- 9.0.4
diff --git a/patchport-state.json b/patchport-state.json
index b32c147..a89728d 100644
--- a/patchport-state.json
+++ b/patchport-state.json
@@ -1 +1 @@
-{"versionname": "9.0.4", "versioncode": "904"}
\ No newline at end of file
+{"versionname": "9.0.3", "versioncode": "903"}
\ No newline at end of file