This commit is contained in:
gdlbo
2022-07-18 15:31:25 +03:00
parent 381a759c4b
commit 421d080ec7
65 changed files with 205 additions and 86 deletions
@@ -18,6 +18,7 @@ import android.annotation.SuppressLint;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.graphics.drawable.Drawable;
import android.net.Uri;
import android.os.Bundle;
import android.util.TypedValue;
@@ -26,6 +27,7 @@ import android.widget.RadioGroup;
import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.view.ContextThemeWrapper;
import androidx.core.content.res.ResourcesCompat;
import com.vtosters.lite.general.fragments.MaterialPreferenceToolbarFragment;
@@ -55,21 +57,23 @@ public class IconsFragment extends MaterialPreferenceToolbarFragment{
String iconname = icons().get(i);
String icon = iconsValues().get(i);
// String icondrawable;
//
// if (icon.contains("vt")) {
// icondrawable = "vt_launcher_round";
// } else if (icon.contains("standard")) {
// icondrawable = "ic_launcher_round";
// } else {
// icondrawable = "ic_launcher_" + icon;
// }
//
// Drawable drawable = ResourcesCompat.getDrawable(getResources(), getIdentifier(icondrawable, "mipmap"), null);
//
// PreferencesUtil.addPreferenceDrawable(this, icon, iconname, "", drawable, preference -> {
String icondrawable;
PreferencesUtil.addPreference(this, icon, iconname, "", "ic_bug_outline_28", preference -> {
if (icon.equals("vt")) {
icondrawable = "vt_launcher_round";
} else if (icon.contains("standard")) {
icondrawable = "ic_launcher_round";
} else if (icon.contains("vt_")) {
icondrawable = "vt_launcher_";
} else {
icondrawable = "ic_launcher_" + icon;
}
Drawable drawable = ResourcesCompat.getDrawable(getResources(), getIdentifier(icondrawable, "mipmap"), null);
PreferencesUtil.addPreferenceDrawable(this, icon, iconname, "", drawable, preference -> {
// PreferencesUtil.addPreference(this, icon, iconname, "", "ic_bug_outline_28", preference -> {
callSelectDialog(this.getContext(), icon);
return false;
});
@@ -103,7 +107,7 @@ public class IconsFragment extends MaterialPreferenceToolbarFragment{
rgVK.setText("VK");
rgVK.setTextColor(getTextAttr());
rgVKontakte.setText("VKontakte");
rgVKontakte.setText("ВКонтакте");
rgVKontakte.setTextColor(getTextAttr());
rgVKontakte.setChecked(isZaboronaEnabled());
@@ -37,11 +37,11 @@ public class IconManager {
// available icons list for verified users
public static List<String> sIconsPlus = Arrays.asList(
"standard", "vt", "navy", "tiger", "spring", "sea", "sakura", "party", "paint", "flamingo"
"standard", "vt", "navy", "tiger", "spring", "sea", "sakura", "party", "paint", "flamingo", "old"
);
public static List<String> sIconsPlusNames = Arrays.asList(
"VK", "VTLite", "Navy", "Tiger", "Spring", "Sea", "Sakura", "Party", "Paint", "Flamingo"
"VK", "VTLite", "Navy", "Tiger", "Spring", "Sea", "Sakura", "Party", "Paint", "Flamingo", "Old Logo"
);
// available labels list for verified users
@@ -54,11 +54,11 @@ public class IconManager {
);
public static List<String> icons() {
return hasVerification() && isValidSignature() && Build.VERSION.SDK_INT >= 26 ? sIconsPlusNames : sIconsNames; // delete later sdk check
return hasVerification() && isValidSignature() ? sIconsPlusNames : sIconsNames; // delete later sdk check
}
public static List<String> iconsValues() {
return hasVerification() && isValidSignature() && Build.VERSION.SDK_INT >= 26 ? sIconsPlus : sIcons; // delete later sdk check
return hasVerification() && isValidSignature() ? sIconsPlus : sIcons; // delete later sdk check
}
public static void switchComponent(String icon, String appName, String oldIcon, String oldAppName) {
@@ -1,9 +1,19 @@
package ru.vtosters.lite.utils;
import static java.lang.System.clearProperty;
import static java.lang.System.getProperties;
import static ru.vtosters.lite.utils.Globals.getContext;
import static ru.vtosters.lite.utils.Globals.getPrefsValue;
import android.annotation.SuppressLint;
import android.content.Context;
import android.content.Intent;
import android.util.ArrayMap;
import android.util.Log;
import java.lang.reflect.Field;
import java.lang.reflect.Method;
import java.util.Properties;
public class Proxy{
public static String getApi(){
var proxyapi = getPrefsValue("proxyapi");
@@ -19,62 +29,124 @@ public class Proxy{
return getPrefsValue("proxy").equals("zaborona");
}
public static void setProxy(){
var type = getPrefsValue("proxy");
var properties = getProperties();
private static void setProxyRefl() {
Log.d("Proxy", "Setting proxy...");
try {
var context = getContext().getApplicationContext();
Class<?> applicationClass = Class.forName("android.app.Application");
@SuppressLint("DiscouragedPrivateApi") @SuppressWarnings("JavaReflectionMemberAccess")
Field mLoadedApkField = applicationClass.getDeclaredField("mLoadedApk");
mLoadedApkField.setAccessible(true);
Object mLoadedApkObject = mLoadedApkField.get(context);
switch(type) {
@SuppressLint("PrivateApi")
Class<?> loadedApkClass = Class.forName("android.app.LoadedApk");
@SuppressLint("DiscouragedPrivateApi") Field mReceiversField = loadedApkClass.getDeclaredField("mReceivers");
mReceiversField.setAccessible(true);
ArrayMap<?, ?> receivers = (ArrayMap<?, ?>) mReceiversField.get(mLoadedApkObject);
for (Object receiverMap : receivers.values()) {
for (Object receiver : ((ArrayMap<?, ?>) receiverMap).keySet()) {
Class<?> receiverClass = receiver.getClass();
if (receiverClass.getName().contains("ProxyChangeListener")) {
Method onReceiveMethod = receiverClass.getDeclaredMethod("onReceive", Context.class, Intent.class);
Intent intent = new Intent(android.net.Proxy.PROXY_CHANGE_ACTION);
onReceiveMethod.invoke(receiver, context, intent);
} else {
for (Field field : receiverClass.getDeclaredFields()) {
if (field.getType().getName().contains("ProxyChangeListener")) {
Method onReceiveMethod = receiverClass.getDeclaredMethod("onReceive", Context.class, Intent.class);
Intent intent = new Intent(android.net.Proxy.PROXY_CHANGE_ACTION);
onReceiveMethod.invoke(receiver, context, intent);
}
}
}
}
}
Log.d("Proxy", "Setting proxy successful!");
} catch (Exception e) {
Log.d("Proxy", "Setting proxy failed!");
}
}
public static void setProxy() {
switch (getPrefsValue("proxy")) {
case "zaborona":
properties.setProperty("socksProxyHost", "socks.zaboronahelp.pp.ua");
properties.setProperty("socksProxyPort", "1488");
resetProxy(type);
System.setProperty("socksProxyHost", "socks.zaboronahelp.pp.ua");
System.setProperty("socksProxyPort", "1488");
setProxyRefl();
resetProxySocks();
break;
case "socks":
properties.setProperty("socksProxyHost", proxyHostSocks());
properties.setProperty("socksProxyPort", proxyPortSocks());
resetProxy(type);
System.setProperty("socksProxyHost", proxyHostSocks());
System.setProperty("socksProxyPort", proxyPortSocks());
setProxyRefl();
resetProxySocks();
break;
case "http":
properties.setProperty("http.proxyHost", proxyHostHTTP());
properties.setProperty("http.proxyPort", proxyPortHTTP());
properties.setProperty("http.proxyUser", proxyUserHTTP());
properties.setProperty("http.proxyPassword", proxyPassHTTP());
resetProxy(type);
System.setProperty("http.proxyHost", proxyHostHTTP());
System.setProperty("http.proxyPort", proxyPortHTTP());
System.setProperty("http.proxyUser", proxyUserHTTP());
System.setProperty("http.proxyPassword", proxyPassHTTP());
setProxyRefl();
resetProxyHttp();
break;
case "https":
properties.setProperty("https.proxyHost", proxyHostHTTPS());
properties.setProperty("https.proxyPort", proxyPortHTTPS());
properties.setProperty("https.proxyUser", proxyUserHTTPS());
properties.setProperty("https.proxyPassword", proxyPassHTTPS());
resetProxy(type);
System.setProperty("https.proxyHost", proxyHostHTTPS());
System.setProperty("https.proxyPort", proxyPortHTTPS());
System.setProperty("https.proxyUser", proxyUserHTTPS());
System.setProperty("https.proxyPassword", proxyPassHTTPS());
setProxyRefl();
resetProxyHttps();
break;
default:
resetProxy();
break;
}
}
public static void resetProxy(String except){
if (!except.equals("https")) {
clearProperty("https.proxyHost");
clearProperty("https.proxyPort");
clearProperty("https.proxyUser");
clearProperty("https.proxyPassword");
}
if (!except.equals("http")) {
clearProperty("http.proxyHost");
clearProperty("http.proxyPort");
clearProperty("http.proxyUser");
clearProperty("http.proxyPassword");
}
if (except.equals("socks") || except.equals("zaborona") || except.isEmpty()) {
return;
}
public static void resetProxy() {
clearProperty("https.proxyHost");
clearProperty("https.proxyPort");
clearProperty("https.proxyUser");
clearProperty("https.proxyPassword");
clearProperty("http.proxyHost");
clearProperty("http.proxyPort");
clearProperty("http.proxyUser");
clearProperty("http.proxyPassword");
clearProperty("socksProxyHost");
clearProperty("socksPortHost");
} // Reset proxy
} // Reset all proxies
public static void resetProxySocks() {
clearProperty("https.proxyHost");
clearProperty("https.proxyPort");
clearProperty("https.proxyUser");
clearProperty("https.proxyPassword");
clearProperty("http.proxyHost");
clearProperty("http.proxyPort");
clearProperty("http.proxyUser");
clearProperty("http.proxyPassword");
} // Reset all except socks
public static void resetProxyHttp() {
clearProperty("https.proxyHost");
clearProperty("https.proxyPort");
clearProperty("https.proxyUser");
clearProperty("https.proxyPassword");
clearProperty("socksProxyHost");
clearProperty("socksPortHost");
} // Reset all except http
public static void resetProxyHttps() {
clearProperty("http.proxyHost");
clearProperty("http.proxyPort");
clearProperty("http.proxyUser");
clearProperty("http.proxyPassword");
clearProperty("socksProxyHost");
clearProperty("socksPortHost");
} // Reset all except https
private static String proxyHostHTTP(){
var string = getPrefsValue("proxyHostHTTP");
+64 -26
View File
@@ -227,7 +227,7 @@
</activity-alias>
<activity-alias
android:label="@string/app_name"
android:icon="@mipmap/mp_launcher"
android:icon="@mipmap/ic_launcher_round"
android:name=".id01"
android:enabled="false"
android:targetActivity="com.vtosters.lite.MainActivity">
@@ -239,7 +239,7 @@
</activity-alias>
<activity-alias
android:label="@string/app_name_alter"
android:icon="@mipmap/mp_launcher"
android:icon="@mipmap/ic_launcher_round"
android:name=".id02"
android:enabled="false"
android:targetActivity="com.vtosters.lite.MainActivity">
@@ -275,7 +275,7 @@
</activity-alias>
<activity-alias
android:label="@string/app_name_orig"
android:icon="@mipmap/mp_launcher_navy"
android:icon="@mipmap/ic_launcher_navy"
android:name=".id20"
android:enabled="false"
android:targetActivity="com.vtosters.lite.MainActivity">
@@ -287,7 +287,7 @@
</activity-alias>
<activity-alias
android:label="@string/app_name"
android:icon="@mipmap/mp_launcher_navy"
android:icon="@mipmap/ic_launcher_navy"
android:name=".id21"
android:enabled="false"
android:targetActivity="com.vtosters.lite.MainActivity">
@@ -299,7 +299,7 @@
</activity-alias>
<activity-alias
android:label="@string/app_name_alter"
android:icon="@mipmap/mp_launcher_navy"
android:icon="@mipmap/ic_launcher_navy"
android:name=".id22"
android:enabled="false"
android:targetActivity="com.vtosters.lite.MainActivity">
@@ -311,7 +311,7 @@
</activity-alias>
<activity-alias
android:label="@string/app_name_orig"
android:icon="@mipmap/mp_launcher_tiger"
android:icon="@mipmap/ic_launcher_tiger"
android:name=".id30"
android:enabled="false"
android:targetActivity="com.vtosters.lite.MainActivity">
@@ -323,7 +323,7 @@
</activity-alias>
<activity-alias
android:label="@string/app_name"
android:icon="@mipmap/mp_launcher_tiger"
android:icon="@mipmap/ic_launcher_tiger"
android:name=".id31"
android:enabled="false"
android:targetActivity="com.vtosters.lite.MainActivity">
@@ -335,7 +335,7 @@
</activity-alias>
<activity-alias
android:label="@string/app_name_alter"
android:icon="@mipmap/mp_launcher_tiger"
android:icon="@mipmap/ic_launcher_tiger"
android:name=".id32"
android:enabled="false"
android:targetActivity="com.vtosters.lite.MainActivity">
@@ -347,7 +347,7 @@
</activity-alias>
<activity-alias
android:label="@string/app_name_orig"
android:icon="@mipmap/mp_launcher_spring"
android:icon="@mipmap/ic_launcher_spring"
android:name=".id40"
android:enabled="false"
android:targetActivity="com.vtosters.lite.MainActivity">
@@ -359,7 +359,7 @@
</activity-alias>
<activity-alias
android:label="@string/app_name"
android:icon="@mipmap/mp_launcher_spring"
android:icon="@mipmap/ic_launcher_spring"
android:name=".id41"
android:enabled="false"
android:targetActivity="com.vtosters.lite.MainActivity">
@@ -371,7 +371,7 @@
</activity-alias>
<activity-alias
android:label="@string/app_name_alter"
android:icon="@mipmap/mp_launcher_spring"
android:icon="@mipmap/ic_launcher_spring"
android:name=".id42"
android:enabled="false"
android:targetActivity="com.vtosters.lite.MainActivity">
@@ -383,7 +383,7 @@
</activity-alias>
<activity-alias
android:label="@string/app_name_orig"
android:icon="@mipmap/mp_launcher_sea"
android:icon="@mipmap/ic_launcher_sea"
android:name=".id50"
android:enabled="false"
android:targetActivity="com.vtosters.lite.MainActivity">
@@ -395,7 +395,7 @@
</activity-alias>
<activity-alias
android:label="@string/app_name"
android:icon="@mipmap/mp_launcher_sea"
android:icon="@mipmap/ic_launcher_sea"
android:name=".id51"
android:enabled="false"
android:targetActivity="com.vtosters.lite.MainActivity">
@@ -407,7 +407,7 @@
</activity-alias>
<activity-alias
android:label="@string/app_name_alter"
android:icon="@mipmap/mp_launcher_sea"
android:icon="@mipmap/ic_launcher_sea"
android:name=".id52"
android:enabled="false"
android:targetActivity="com.vtosters.lite.MainActivity">
@@ -419,7 +419,7 @@
</activity-alias>
<activity-alias
android:label="@string/app_name_orig"
android:icon="@mipmap/mp_launcher_sakura"
android:icon="@mipmap/ic_launcher_sakura"
android:name=".id60"
android:enabled="false"
android:targetActivity="com.vtosters.lite.MainActivity">
@@ -431,7 +431,7 @@
</activity-alias>
<activity-alias
android:label="@string/app_name"
android:icon="@mipmap/mp_launcher_sakura"
android:icon="@mipmap/ic_launcher_sakura"
android:name=".id61"
android:enabled="false"
android:targetActivity="com.vtosters.lite.MainActivity">
@@ -443,7 +443,7 @@
</activity-alias>
<activity-alias
android:label="@string/app_name_alter"
android:icon="@mipmap/mp_launcher_sakura"
android:icon="@mipmap/ic_launcher_sakura"
android:name=".id62"
android:enabled="false"
android:targetActivity="com.vtosters.lite.MainActivity">
@@ -455,7 +455,7 @@
</activity-alias>
<activity-alias
android:label="@string/app_name_orig"
android:icon="@mipmap/mp_launcher_party"
android:icon="@mipmap/ic_launcher_party"
android:name=".id70"
android:enabled="false"
android:targetActivity="com.vtosters.lite.MainActivity">
@@ -467,7 +467,7 @@
</activity-alias>
<activity-alias
android:label="@string/app_name"
android:icon="@mipmap/mp_launcher_party"
android:icon="@mipmap/ic_launcher_party"
android:name=".id71"
android:enabled="false"
android:targetActivity="com.vtosters.lite.MainActivity">
@@ -479,7 +479,7 @@
</activity-alias>
<activity-alias
android:label="@string/app_name_alter"
android:icon="@mipmap/mp_launcher_party"
android:icon="@mipmap/ic_launcher_party"
android:name=".id72"
android:enabled="false"
android:targetActivity="com.vtosters.lite.MainActivity">
@@ -491,7 +491,7 @@
</activity-alias>
<activity-alias
android:label="@string/app_name_orig"
android:icon="@mipmap/mp_launcher_paint"
android:icon="@mipmap/ic_launcher_paint"
android:name=".id80"
android:enabled="false"
android:targetActivity="com.vtosters.lite.MainActivity">
@@ -503,7 +503,7 @@
</activity-alias>
<activity-alias
android:label="@string/app_name"
android:icon="@mipmap/mp_launcher_paint"
android:icon="@mipmap/ic_launcher_paint"
android:name=".id81"
android:enabled="false"
android:targetActivity="com.vtosters.lite.MainActivity">
@@ -515,7 +515,7 @@
</activity-alias>
<activity-alias
android:label="@string/app_name_alter"
android:icon="@mipmap/mp_launcher_paint"
android:icon="@mipmap/ic_launcher_paint"
android:name=".id82"
android:enabled="false"
android:targetActivity="com.vtosters.lite.MainActivity">
@@ -527,7 +527,7 @@
</activity-alias>
<activity-alias
android:label="@string/app_name_orig"
android:icon="@mipmap/mp_launcher_flamingo"
android:icon="@mipmap/ic_launcher_flamingo"
android:name=".id90"
android:enabled="false"
android:targetActivity="com.vtosters.lite.MainActivity">
@@ -539,7 +539,7 @@
</activity-alias>
<activity-alias
android:label="@string/app_name"
android:icon="@mipmap/mp_launcher_flamingo"
android:icon="@mipmap/ic_launcher_flamingo"
android:name=".id91"
android:enabled="false"
android:targetActivity="com.vtosters.lite.MainActivity">
@@ -551,7 +551,7 @@
</activity-alias>
<activity-alias
android:label="@string/app_name_alter"
android:icon="@mipmap/mp_launcher_flamingo"
android:icon="@mipmap/ic_launcher_flamingo"
android:name=".id92"
android:enabled="false"
android:targetActivity="com.vtosters.lite.MainActivity">
@@ -561,6 +561,44 @@
<category android:name="android.intent.category.MULTIWINDOW_LAUNCHER"/>
</intent-filter>
</activity-alias>
<activity-alias
android:label="@string/app_name_orig"
android:icon="@mipmap/ic_launcher_old"
android:name=".id100"
android:enabled="false"
android:targetActivity="com.vtosters.lite.MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
<category android:name="android.intent.category.MULTIWINDOW_LAUNCHER"/>
</intent-filter>
</activity-alias>
<activity-alias
android:label="@string/app_name"
android:icon="@mipmap/ic_launcher_old"
android:name=".id101"
android:enabled="false"
android:targetActivity="com.vtosters.lite.MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
<category android:name="android.intent.category.MULTIWINDOW_LAUNCHER"/>
</intent-filter>
</activity-alias>
<activity-alias
android:label="@string/app_name_alter"
android:icon="@mipmap/ic_launcher_old"
android:name=".id102"
android:enabled="false"
android:targetActivity="com.vtosters.lite.MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
<category android:name="android.intent.category.MULTIWINDOW_LAUNCHER"/>
</intent-filter>
</activity-alias>
<activity
android:name="com.vtosters.lite.FragmentWrapperActivity"
android:configChanges="keyboard|keyboardHidden|orientation|screenSize"
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
<background android:drawable="@mipmap/adaptive_launcher_background_old" />
<foreground android:drawable="@mipmap/adaptive_launcher_foreground_old" />
</adaptive-icon>
Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB