gitextract_jf3i_ene/ ├── .github/ │ ├── FUNDING.yml │ └── workflows/ │ ├── build.yml │ ├── debug.yml │ └── release.yml ├── .gitignore ├── .gitmodules ├── .idea/ │ ├── .gitignore │ ├── codeStyles/ │ │ ├── Project.xml │ │ └── codeStyleConfig.xml │ ├── compiler.xml │ ├── copyright/ │ │ ├── profiles_settings.xml │ │ └── sagernet.xml │ ├── dictionaries/ │ │ └── sekai.xml │ ├── gradle.xml │ ├── inspectionProfiles/ │ │ └── Project_Default.xml │ ├── jarRepositories.xml │ ├── kotlinScripting.xml │ ├── misc.xml │ └── vcs.xml ├── AUTHORS ├── LICENSE ├── README.md ├── app/ │ ├── .gitignore │ ├── build.gradle.kts │ ├── proguard-rules.pro │ ├── schemas/ │ │ ├── io.nekohasekai.sagernet.database.SagerDatabase/ │ │ │ ├── 1.json │ │ │ ├── 10.json │ │ │ ├── 2.json │ │ │ ├── 3.json │ │ │ ├── 4.json │ │ │ ├── 5.json │ │ │ ├── 6.json │ │ │ ├── 7.json │ │ │ ├── 8.json │ │ │ └── 9.json │ │ └── io.nekohasekai.sagernet.database.preference.PublicDatabase/ │ │ └── 1.json │ └── src/ │ ├── androidTest/ │ │ └── java/ │ │ └── io/ │ │ └── nekohasekai/ │ │ └── sagernet/ │ │ └── ExampleInstrumentedTest.kt │ ├── main/ │ │ ├── AndroidManifest.xml │ │ ├── aidl/ │ │ │ └── io/ │ │ │ └── nekohasekai/ │ │ │ └── sagernet/ │ │ │ └── aidl/ │ │ │ ├── AppStatsList.aidl │ │ │ ├── ISagerNetService.aidl │ │ │ ├── ISagerNetServiceCallback.aidl │ │ │ └── TrafficStats.aidl │ │ ├── assets/ │ │ │ ├── LICENSE │ │ │ └── terminal.properties │ │ ├── java/ │ │ │ ├── cn/ │ │ │ │ └── hutool/ │ │ │ │ └── cache/ │ │ │ │ └── impl/ │ │ │ │ ├── AbstractCacheWithoutLock.java │ │ │ │ ├── LFUCacheCompact.java │ │ │ │ └── LFUCacheWithoutLock.java │ │ │ ├── com/ │ │ │ │ └── github/ │ │ │ │ └── shadowsocks/ │ │ │ │ ├── plugin/ │ │ │ │ │ ├── ConfigurationActivity.kt │ │ │ │ │ ├── HelpActivity.kt │ │ │ │ │ ├── HelpCallback.kt │ │ │ │ │ ├── InternalPlugin.kt │ │ │ │ │ ├── NativePlugin.kt │ │ │ │ │ ├── NativePluginProvider.kt │ │ │ │ │ ├── NoPlugin.kt │ │ │ │ │ ├── OptionsCapableActivity.kt │ │ │ │ │ ├── PathProvider.kt │ │ │ │ │ ├── Plugin.kt │ │ │ │ │ ├── PluginConfiguration.kt │ │ │ │ │ ├── PluginContract.kt │ │ │ │ │ ├── PluginList.kt │ │ │ │ │ ├── PluginManager.kt │ │ │ │ │ ├── PluginOptions.kt │ │ │ │ │ ├── ResolvedPlugin.kt │ │ │ │ │ ├── Utils.kt │ │ │ │ │ └── fragment/ │ │ │ │ │ └── AlertDialogFragment.kt │ │ │ │ └── preference/ │ │ │ │ ├── PluginConfigurationDialogFragment.kt │ │ │ │ ├── PluginPreference.kt │ │ │ │ └── PluginPreferenceDialogFragment.kt │ │ │ └── io/ │ │ │ └── nekohasekai/ │ │ │ └── sagernet/ │ │ │ ├── BootReceiver.kt │ │ │ ├── Constants.kt │ │ │ ├── QuickToggleShortcut.kt │ │ │ ├── SagerNet.kt │ │ │ ├── aidl/ │ │ │ │ ├── AppStats.kt │ │ │ │ ├── AppStatsList.kt │ │ │ │ └── TrafficStats.kt │ │ │ ├── bg/ │ │ │ │ ├── AbstractInstance.kt │ │ │ │ ├── BaseService.kt │ │ │ │ ├── ClashBasedInstance.kt │ │ │ │ ├── Executable.kt │ │ │ │ ├── ExternalInstance.kt │ │ │ │ ├── ForegroundDetectorService.kt │ │ │ │ ├── GuardedProcessPool.kt │ │ │ │ ├── ProxyService.kt │ │ │ │ ├── SagerConnection.kt │ │ │ │ ├── ServiceNotification.kt │ │ │ │ ├── SubscriptionUpdater.kt │ │ │ │ ├── TileService.kt │ │ │ │ ├── VpnService.kt │ │ │ │ ├── proto/ │ │ │ │ │ ├── ApiInstance.kt │ │ │ │ │ ├── ProxyInstance.kt │ │ │ │ │ ├── SSHInstance.kt │ │ │ │ │ ├── ShadowsocksInstance.kt │ │ │ │ │ ├── ShadowsocksRInstance.kt │ │ │ │ │ ├── SnellInstance.kt │ │ │ │ │ ├── UidDumper.kt │ │ │ │ │ └── V2RayInstance.kt │ │ │ │ └── test/ │ │ │ │ ├── DebugInstance.kt │ │ │ │ ├── LocalDnsInstance.kt │ │ │ │ ├── UrlTest.kt │ │ │ │ └── V2RayTestInstance.kt │ │ │ ├── database/ │ │ │ │ ├── DataStore.kt │ │ │ │ ├── GroupManager.kt │ │ │ │ ├── ProfileManager.kt │ │ │ │ ├── ProxyEntity.kt │ │ │ │ ├── ProxyGroup.kt │ │ │ │ ├── RuleEntity.kt │ │ │ │ ├── SagerDatabase.kt │ │ │ │ ├── StatsEntity.kt │ │ │ │ ├── SubscriptionBean.java │ │ │ │ └── preference/ │ │ │ │ ├── EditTextPreferenceModifiers.kt │ │ │ │ ├── KeyValuePair.kt │ │ │ │ ├── OnPreferenceDataStoreChangeListener.kt │ │ │ │ ├── PublicDatabase.kt │ │ │ │ └── RoomPreferenceDataStore.kt │ │ │ ├── fmt/ │ │ │ │ ├── AbstractBean.java │ │ │ │ ├── ConfigBuilder.kt │ │ │ │ ├── KryoConverters.java │ │ │ │ ├── PluginEntry.kt │ │ │ │ ├── Serializable.kt │ │ │ │ ├── TypeMap.kt │ │ │ │ ├── UniversalFmt.kt │ │ │ │ ├── brook/ │ │ │ │ │ ├── BrookBean.java │ │ │ │ │ └── BrookFmt.kt │ │ │ │ ├── gson/ │ │ │ │ │ ├── GsonConverters.java │ │ │ │ │ ├── Gsons.kt │ │ │ │ │ ├── JsonLazyAdapter.java │ │ │ │ │ ├── JsonLazyFactory.java │ │ │ │ │ ├── JsonLazyInterface.java │ │ │ │ │ ├── JsonOr.java │ │ │ │ │ ├── JsonOrAdapter.java │ │ │ │ │ └── JsonOrAdapterFactory.java │ │ │ │ ├── http/ │ │ │ │ │ ├── HttpBean.java │ │ │ │ │ └── HttpFmt.kt │ │ │ │ ├── hysteria/ │ │ │ │ │ ├── HysteriaBean.java │ │ │ │ │ └── HysteriaFmt.kt │ │ │ │ ├── internal/ │ │ │ │ │ ├── BalancerBean.java │ │ │ │ │ ├── ChainBean.java │ │ │ │ │ ├── ConfigBean.java │ │ │ │ │ └── InternalBean.java │ │ │ │ ├── naive/ │ │ │ │ │ ├── NaiveBean.java │ │ │ │ │ └── NaiveFmt.kt │ │ │ │ ├── pingtunnel/ │ │ │ │ │ ├── PingTunnelBean.java │ │ │ │ │ └── PingTunnelFmt.kt │ │ │ │ ├── relaybaton/ │ │ │ │ │ ├── RelayBatonBean.java │ │ │ │ │ └── RelayBatonFmt.kt │ │ │ │ ├── shadowsocks/ │ │ │ │ │ ├── ShadowsocksBean.java │ │ │ │ │ └── ShadowsocksFmt.kt │ │ │ │ ├── shadowsocksr/ │ │ │ │ │ ├── ShadowsocksRBean.java │ │ │ │ │ └── ShadowsocksRFmt.kt │ │ │ │ ├── snell/ │ │ │ │ │ └── SnellBean.java │ │ │ │ ├── socks/ │ │ │ │ │ ├── SOCKSBean.java │ │ │ │ │ └── SOCKSFmt.kt │ │ │ │ ├── ssh/ │ │ │ │ │ └── SSHBean.java │ │ │ │ ├── trojan/ │ │ │ │ │ ├── TrojanBean.java │ │ │ │ │ └── TrojanFmt.kt │ │ │ │ ├── trojan_go/ │ │ │ │ │ ├── TrojanGoBean.java │ │ │ │ │ └── TrojanGoFmt.kt │ │ │ │ ├── v2ray/ │ │ │ │ │ ├── StandardV2RayBean.java │ │ │ │ │ ├── V2RayConfig.java │ │ │ │ │ ├── V2RayFmt.kt │ │ │ │ │ ├── VLESSBean.java │ │ │ │ │ └── VMessBean.java │ │ │ │ └── wireguard/ │ │ │ │ ├── WireGuardBean.java │ │ │ │ └── WireGuardFmt.kt │ │ │ ├── group/ │ │ │ │ ├── GroupInterfaceAdapter.kt │ │ │ │ ├── GroupUpdater.kt │ │ │ │ ├── OpenOnlineConfigUpdater.kt │ │ │ │ ├── RawUpdater.kt │ │ │ │ └── SIP008Updater.kt │ │ │ ├── ktx/ │ │ │ │ ├── Asyncs.kt │ │ │ │ ├── Browsers.kt │ │ │ │ ├── Dialogs.kt │ │ │ │ ├── Dimens.kt │ │ │ │ ├── Formats.kt │ │ │ │ ├── Kryos.kt │ │ │ │ ├── Layouts.kt │ │ │ │ ├── Logs.kt │ │ │ │ ├── Nets.kt │ │ │ │ ├── Preferences.kt │ │ │ │ ├── Signatures.kt │ │ │ │ ├── UUIDs.kt │ │ │ │ ├── Utils.kt │ │ │ │ └── Validators.kt │ │ │ ├── plugin/ │ │ │ │ ├── NativePlugin.kt │ │ │ │ ├── Plugin.kt │ │ │ │ ├── PluginList.kt │ │ │ │ ├── PluginManager.kt │ │ │ │ └── ResolvedPlugin.kt │ │ │ ├── ui/ │ │ │ │ ├── AboutFragment.kt │ │ │ │ ├── ActiveFragment.kt │ │ │ │ ├── AppListActivity.kt │ │ │ │ ├── AppManagerActivity.kt │ │ │ │ ├── AssetsActivity.kt │ │ │ │ ├── CloudflareFragment.kt │ │ │ │ ├── ConfigurationFragment.kt │ │ │ │ ├── DebugFragment.kt │ │ │ │ ├── GroupFragment.kt │ │ │ │ ├── GroupSettingsActivity.kt │ │ │ │ ├── LicenseActivity.kt │ │ │ │ ├── LogcatFragment.kt │ │ │ │ ├── MainActivity.kt │ │ │ │ ├── NamedFragment.kt │ │ │ │ ├── ProfileSelectActivity.kt │ │ │ │ ├── RouteFragment.kt │ │ │ │ ├── RouteSettingsActivity.kt │ │ │ │ ├── ScannerActivity.kt │ │ │ │ ├── SettingsFragment.kt │ │ │ │ ├── SettingsPreferenceFragment.kt │ │ │ │ ├── StatsFragment.kt │ │ │ │ ├── ThemedActivity.kt │ │ │ │ ├── ToolbarFragment.kt │ │ │ │ ├── ToolsFragment.kt │ │ │ │ ├── TrafficFragment.kt │ │ │ │ ├── VpnRequestActivity.kt │ │ │ │ └── profile/ │ │ │ │ ├── BalancerSettingsActivity.kt │ │ │ │ ├── BrookSettingsActivity.kt │ │ │ │ ├── ChainSettingsActivity.kt │ │ │ │ ├── ConfigEditActivity.kt │ │ │ │ ├── ConfigSettingsActivity.kt │ │ │ │ ├── HttpSettingsActivity.kt │ │ │ │ ├── HysteriaSettingsActivity.kt │ │ │ │ ├── NaiveSettingsActivity.kt │ │ │ │ ├── PingTunnelSettingsActivity.kt │ │ │ │ ├── ProfileSettingsActivity.kt │ │ │ │ ├── RelayBatonSettingsActivity.kt │ │ │ │ ├── SSHSettingsActivity.kt │ │ │ │ ├── ShadowsocksRSettingsActivity.kt │ │ │ │ ├── ShadowsocksSettingsActivity.kt │ │ │ │ ├── SnellSettingsActivity.kt │ │ │ │ ├── SocksSettingsActivity.kt │ │ │ │ ├── StandardV2RaySettingsActivity.kt │ │ │ │ ├── TrojanGoSettingsActivity.kt │ │ │ │ ├── TrojanSettingsActivity.kt │ │ │ │ ├── VLESSSettingsActivity.kt │ │ │ │ ├── VMessSettingsActivity.kt │ │ │ │ └── WireGuardSettingsActivity.kt │ │ │ ├── utils/ │ │ │ │ ├── Cloudflare.kt │ │ │ │ ├── Commandline.kt │ │ │ │ ├── CrashHandler.kt │ │ │ │ ├── DefaultNetworkListener.kt │ │ │ │ ├── DeviceStorageApp.kt │ │ │ │ ├── DirectBoot.kt │ │ │ │ ├── HttpsTest.kt │ │ │ │ ├── PackageCache.kt │ │ │ │ ├── Subnet.kt │ │ │ │ ├── Theme.kt │ │ │ │ └── cf/ │ │ │ │ ├── DeviceResponse.kt │ │ │ │ ├── RegisterRequest.kt │ │ │ │ └── UpdateDeviceRequest.kt │ │ │ └── widget/ │ │ │ ├── AppListPreference.kt │ │ │ ├── AutoCollapseTextView.kt │ │ │ ├── ColorPickerPreference.kt │ │ │ ├── ColorPickerPreferenceDialogFragmentCompat.kt │ │ │ ├── EditConfigPreference.kt │ │ │ ├── FabProgressBehavior.kt │ │ │ ├── GroupPreference.kt │ │ │ ├── LinkOrContentPreference.kt │ │ │ ├── LinkPreference.kt │ │ │ ├── OOCv1TokenPreference.kt │ │ │ ├── OutboundPreference.kt │ │ │ ├── QRCodeDialog.kt │ │ │ ├── ServiceButton.kt │ │ │ ├── StatsBar.kt │ │ │ ├── UndoSnackbarManager.kt │ │ │ ├── UserAgentPreference.kt │ │ │ └── WindowInsetsListeners.kt │ │ ├── play/ │ │ │ └── release-notes/ │ │ │ ├── en-US/ │ │ │ │ └── default.txt │ │ │ └── zh-CN/ │ │ │ └── default.txt │ │ └── res/ │ │ ├── color/ │ │ │ ├── chip_background.xml │ │ │ ├── chip_ripple_color.xml │ │ │ ├── chip_text_color.xml │ │ │ ├── navigation_icon.xml │ │ │ └── navigation_item.xml │ │ ├── drawable/ │ │ │ ├── baseline_construction_24.xml │ │ │ ├── baseline_delete_sweep_24.xml │ │ │ ├── baseline_save_24.xml │ │ │ ├── baseline_send_24.xml │ │ │ ├── baseline_translate_24.xml │ │ │ ├── baseline_wrap_text_24.xml │ │ │ ├── ic_action_copyright.xml │ │ │ ├── ic_action_delete.xml │ │ │ ├── ic_action_description.xml │ │ │ ├── ic_action_dns.xml │ │ │ ├── ic_action_done.xml │ │ │ ├── ic_action_lock.xml │ │ │ ├── ic_action_lock_open.xml │ │ │ ├── ic_action_note_add.xml │ │ │ ├── ic_action_settings.xml │ │ │ ├── ic_app_shortcut_background.xml │ │ │ ├── ic_av_playlist_add.xml │ │ │ ├── ic_baseline_add_road_24.xml │ │ │ ├── ic_baseline_airplanemode_active_24.xml │ │ │ ├── ic_baseline_bug_report_24.xml │ │ │ ├── ic_baseline_camera_24.xml │ │ │ ├── ic_baseline_card_giftcard_24.xml │ │ │ ├── ic_baseline_cast_connected_24.xml │ │ │ ├── ic_baseline_center_focus_weak_24.xml │ │ │ ├── ic_baseline_color_lens_24.xml │ │ │ ├── ic_baseline_compare_arrows_24.xml │ │ │ ├── ic_baseline_domain_24.xml │ │ │ ├── ic_baseline_download_24.xml │ │ │ ├── ic_baseline_emoji_emotions_24.xml │ │ │ ├── ic_baseline_fast_forward_24.xml │ │ │ ├── ic_baseline_fingerprint_24.xml │ │ │ ├── ic_baseline_flip_camera_android_24.xml │ │ │ ├── ic_baseline_format_align_left_24.xml │ │ │ ├── ic_baseline_grid_3x3_24.xml │ │ │ ├── ic_baseline_home_24.xml │ │ │ ├── ic_baseline_http_24.xml │ │ │ ├── ic_baseline_https_24.xml │ │ │ ├── ic_baseline_import_contacts_24.xml │ │ │ ├── ic_baseline_info_24.xml │ │ │ ├── ic_baseline_layers_24.xml │ │ │ ├── ic_baseline_legend_toggle_24.xml │ │ │ ├── ic_baseline_link_24.xml │ │ │ ├── ic_baseline_local_bar_24.xml │ │ │ ├── ic_baseline_lock_24.xml │ │ │ ├── ic_baseline_low_priority_24.xml │ │ │ ├── ic_baseline_manage_search_24.xml │ │ │ ├── ic_baseline_more_vert_24.xml │ │ │ ├── ic_baseline_multiline_chart_24.xml │ │ │ ├── ic_baseline_multiple_stop_24.xml │ │ │ ├── ic_baseline_nat_24.xml │ │ │ ├── ic_baseline_nfc_24.xml │ │ │ ├── ic_baseline_no_encryption_gmailerrorred_24.xml │ │ │ ├── ic_baseline_person_24.xml │ │ │ ├── ic_baseline_push_pin_24.xml │ │ │ ├── ic_baseline_rule_folder_24.xml │ │ │ ├── ic_baseline_running_with_errors_24.xml │ │ │ ├── ic_baseline_sanitizer_24.xml │ │ │ ├── ic_baseline_security_24.xml │ │ │ ├── ic_baseline_shutter_speed_24.xml │ │ │ ├── ic_baseline_speed_24.xml │ │ │ ├── ic_baseline_stream_24.xml │ │ │ ├── ic_baseline_texture_24.xml │ │ │ ├── ic_baseline_timelapse_24.xml │ │ │ ├── ic_baseline_transform_24.xml │ │ │ ├── ic_baseline_transgender_24.xml │ │ │ ├── ic_baseline_update_24.xml │ │ │ ├── ic_baseline_view_list_24.xml │ │ │ ├── ic_baseline_vpn_key_24.xml │ │ │ ├── ic_baseline_warning_24.xml │ │ │ ├── ic_baseline_wb_sunny_24.xml │ │ │ ├── ic_communication_phonelink_ring.xml │ │ │ ├── ic_device_data_usage.xml │ │ │ ├── ic_device_developer_mode.xml │ │ │ ├── ic_file_cloud_queue.xml │ │ │ ├── ic_file_file_upload.xml │ │ │ ├── ic_hardware_router.xml │ │ │ ├── ic_image_camera_alt.xml │ │ │ ├── ic_image_edit.xml │ │ │ ├── ic_image_looks_6.xml │ │ │ ├── ic_image_photo.xml │ │ │ ├── ic_launcher_foreground.xml │ │ │ ├── ic_maps_360.xml │ │ │ ├── ic_maps_directions.xml │ │ │ ├── ic_maps_directions_boat.xml │ │ │ ├── ic_navigation_apps.xml │ │ │ ├── ic_navigation_close.xml │ │ │ ├── ic_navigation_menu.xml │ │ │ ├── ic_notification_enhanced_encryption.xml │ │ │ ├── ic_qu_camera_launcher.xml │ │ │ ├── ic_qu_shadowsocks_foreground.xml │ │ │ ├── ic_qu_shadowsocks_launcher.xml │ │ │ ├── ic_service_active.xml │ │ │ ├── ic_service_ax.xml │ │ │ ├── ic_service_busy.xml │ │ │ ├── ic_service_connected.xml │ │ │ ├── ic_service_connecting.xml │ │ │ ├── ic_service_idle.xml │ │ │ ├── ic_service_stopped.xml │ │ │ ├── ic_service_stopping.xml │ │ │ ├── ic_settings_password.xml │ │ │ ├── ic_social_emoji_symbols.xml │ │ │ ├── ic_social_share.xml │ │ │ └── terminal_scroll_shape.xml │ │ ├── layout/ │ │ │ ├── layout_about.xml │ │ │ ├── layout_add_entity.xml │ │ │ ├── layout_app_list.xml │ │ │ ├── layout_appbar.xml │ │ │ ├── layout_apps.xml │ │ │ ├── layout_apps_item.xml │ │ │ ├── layout_asset_item.xml │ │ │ ├── layout_assets.xml │ │ │ ├── layout_chain_settings.xml │ │ │ ├── layout_cloudflare.xml │ │ │ ├── layout_config_settings.xml │ │ │ ├── layout_debug.xml │ │ │ ├── layout_edit_config.xml │ │ │ ├── layout_edit_group.xml │ │ │ ├── layout_empty.xml │ │ │ ├── layout_empty_route.xml │ │ │ ├── layout_group.xml │ │ │ ├── layout_group_item.xml │ │ │ ├── layout_group_list.xml │ │ │ ├── layout_icon_list_item_2.xml │ │ │ ├── layout_license.xml │ │ │ ├── layout_link_dialog.xml │ │ │ ├── layout_loading.xml │ │ │ ├── layout_logcat.xml │ │ │ ├── layout_main.xml │ │ │ ├── layout_password_dialog.xml │ │ │ ├── layout_profile.xml │ │ │ ├── layout_profile_list.xml │ │ │ ├── layout_progress.xml │ │ │ ├── layout_progress_list.xml │ │ │ ├── layout_route.xml │ │ │ ├── layout_route_item.xml │ │ │ ├── layout_scanner.xml │ │ │ ├── layout_settings_activity.xml │ │ │ ├── layout_tools.xml │ │ │ ├── layout_traffic.xml │ │ │ ├── layout_traffic_item.xml │ │ │ └── layout_traffic_list.xml │ │ ├── menu/ │ │ │ ├── add_group_menu.xml │ │ │ ├── add_profile_menu.xml │ │ │ ├── add_route_menu.xml │ │ │ ├── app_list_menu.xml │ │ │ ├── group_action_menu.xml │ │ │ ├── import_asset_menu.xml │ │ │ ├── logcat_menu.xml │ │ │ ├── main_drawer_menu.xml │ │ │ ├── per_app_proxy_menu.xml │ │ │ ├── profile_apply_menu.xml │ │ │ ├── profile_config_menu.xml │ │ │ ├── profile_share_menu.xml │ │ │ ├── scanner_menu.xml │ │ │ ├── traffic_item_menu.xml │ │ │ └── traffic_menu.xml │ │ ├── mipmap-anydpi-v26/ │ │ │ ├── ic_launcher.xml │ │ │ └── ic_launcher_round.xml │ │ ├── raw/ │ │ │ ├── insecure.txt │ │ │ ├── mkcp_no_seed.txt │ │ │ ├── not_encrypted.txt │ │ │ ├── shadowsocks_stream_cipher.txt │ │ │ ├── shadowsocksr.txt │ │ │ └── vmess_md5_auth.txt │ │ ├── raw-zh-rCN/ │ │ │ ├── insecure.txt │ │ │ ├── mkcp_no_seed.txt │ │ │ ├── not_encrypted.txt │ │ │ ├── shadowsocks_stream_cipher.txt │ │ │ ├── shadowsocksr.txt │ │ │ └── vmess_md5_auth.txt │ │ ├── values/ │ │ │ ├── arrays.xml │ │ │ ├── attrs.xml │ │ │ ├── colors.xml │ │ │ ├── dimens.xml │ │ │ ├── ic_launcher_background.xml │ │ │ ├── strings.xml │ │ │ └── themes.xml │ │ ├── values-ar/ │ │ │ └── strings.xml │ │ ├── values-be/ │ │ │ └── strings.xml │ │ ├── values-de/ │ │ │ └── strings.xml │ │ ├── values-es/ │ │ │ └── strings.xml │ │ ├── values-fa/ │ │ │ └── strings.xml │ │ ├── values-fr/ │ │ │ └── strings.xml │ │ ├── values-in/ │ │ │ └── strings.xml │ │ ├── values-it/ │ │ │ └── strings.xml │ │ ├── values-ja/ │ │ │ └── strings.xml │ │ ├── values-ko/ │ │ │ └── strings.xml │ │ ├── values-nb-rNO/ │ │ │ └── strings.xml │ │ ├── values-night/ │ │ │ └── colors.xml │ │ ├── values-nl/ │ │ │ └── strings.xml │ │ ├── values-pt-rBR/ │ │ │ └── strings.xml │ │ ├── values-ru/ │ │ │ └── strings.xml │ │ ├── values-tr/ │ │ │ └── strings.xml │ │ ├── values-uk/ │ │ │ └── strings.xml │ │ ├── values-zh-rCN/ │ │ │ └── strings.xml │ │ ├── values-zh-rTW/ │ │ │ └── strings.xml │ │ └── xml/ │ │ ├── backup_descriptor.xml │ │ ├── balancer_preferences.xml │ │ ├── brook_preferences.xml │ │ ├── config_preferences.xml │ │ ├── foreground_detector_service.xml │ │ ├── global_preferences.xml │ │ ├── group_preferences.xml │ │ ├── http_preferences.xml │ │ ├── hysteria_preferences.xml │ │ ├── log_paths.xml │ │ ├── naive_preferences.xml │ │ ├── name_preferences.xml │ │ ├── network_security_config.xml │ │ ├── pingtunnel_preferences.xml │ │ ├── relaybaton_preferences.xml │ │ ├── route_preferences.xml │ │ ├── shadowsocks_preferences.xml │ │ ├── shadowsocksr_preferences.xml │ │ ├── shortcuts.xml │ │ ├── snell_preferences.xml │ │ ├── socks_preferences.xml │ │ ├── ssh_preferences.xml │ │ ├── standard_v2ray_preferences.xml │ │ ├── trojan_go_preferences.xml │ │ ├── trojan_preferences.xml │ │ └── wireguard_preferences.xml │ └── test/ │ └── java/ │ └── io/ │ └── nekohasekai/ │ └── sagernet/ │ ├── ExampleUnitTest.kt │ ├── fmt/ │ │ └── v2ray/ │ │ └── TestParseV2Ray.kt │ └── ktx/ │ └── UUIDsKtTest.kt ├── bin/ │ ├── debug.keystore │ ├── fdroid/ │ │ ├── build.sh │ │ ├── install_golang.sh │ │ ├── prebuild.sh │ │ ├── prebuild_plugin_golang.sh │ │ └── prebuild_plugin_naive.sh │ ├── init/ │ │ ├── action/ │ │ │ ├── library.sh │ │ │ ├── naive.sh │ │ │ └── shadowsocks.sh │ │ └── env.sh │ ├── lib/ │ │ ├── core/ │ │ │ ├── build.sh │ │ │ └── init.sh │ │ ├── core.sh │ │ ├── shadowsocks.sh │ │ └── shadowsocks_libev.sh │ ├── lint.sh │ ├── plugin/ │ │ ├── hysteria/ │ │ │ ├── arm64-v8a.sh │ │ │ ├── armeabi-v7a.sh │ │ │ ├── build.sh │ │ │ ├── end.sh │ │ │ ├── init.sh │ │ │ ├── x86.sh │ │ │ └── x86_64.sh │ │ ├── hysteria.sh │ │ ├── wireguard/ │ │ │ ├── arm64-v8a.sh │ │ │ ├── armeabi-v7a.sh │ │ │ ├── build.sh │ │ │ ├── end.sh │ │ │ ├── init.sh │ │ │ ├── x86.sh │ │ │ └── x86_64.sh │ │ └── wireguard.sh │ ├── re.sh │ └── update_core.sh ├── build.gradle.kts ├── buildSrc/ │ ├── build.gradle.kts │ └── src/ │ └── main/ │ └── kotlin/ │ ├── Helpers.kt │ └── V2RayAssets.kt ├── gradle/ │ └── wrapper/ │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradle.properties ├── gradlew ├── gradlew.bat ├── library/ │ ├── include/ │ │ ├── build.gradle.kts │ │ └── src/ │ │ └── main/ │ │ ├── AndroidManifest.xml │ │ └── java/ │ │ ├── com.wireguard/ │ │ │ └── crypto/ │ │ │ ├── Curve25519.java │ │ │ ├── Ed25519.java │ │ │ ├── Key.java │ │ │ ├── KeyFormatException.java │ │ │ └── KeyPair.java │ │ └── java/ │ │ └── nio/ │ │ ├── charset/ │ │ │ └── StandardCharsets.java │ │ └── file/ │ │ └── Path.java │ ├── proto/ │ │ └── build.gradle.kts │ ├── proto-stub/ │ │ ├── build.gradle.kts │ │ └── src/ │ │ └── main/ │ │ └── AndroidManifest.xml │ ├── shadowsocks/ │ │ ├── build.gradle.kts │ │ └── src/ │ │ └── main/ │ │ ├── AndroidManifest.xml │ │ └── rust/ │ │ └── linker-wrapper.py │ ├── shadowsocks-libev/ │ │ ├── build.gradle.kts │ │ └── src/ │ │ └── main/ │ │ ├── AndroidManifest.xml │ │ └── jni/ │ │ ├── Android.mk │ │ ├── Application.mk │ │ ├── build-shared-executable.mk │ │ ├── include/ │ │ │ ├── libev/ │ │ │ │ └── config.h │ │ │ ├── shadowsocks-libev/ │ │ │ │ └── config.h │ │ │ └── sodium/ │ │ │ └── version.h │ │ └── patch/ │ │ └── pcre/ │ │ └── pcre_chartables.c │ └── stub/ │ ├── build.gradle.kts │ └── src/ │ └── main/ │ ├── AndroidManifest.xml │ └── java/ │ ├── android/ │ │ └── net/ │ │ └── NetworkUtils.java │ └── sun/ │ └── misc/ │ └── Unsafe.java ├── lint.xml ├── plugin/ │ └── api/ │ ├── build.gradle.kts │ ├── proguard-rules.pro │ └── src/ │ └── main/ │ ├── AndroidManifest.xml │ └── java/ │ └── io/ │ └── nekohasekai/ │ └── sagernet/ │ └── plugin/ │ ├── NativePluginProvider.kt │ ├── PathProvider.kt │ └── PluginContract.kt ├── release.keystore ├── repositories.gradle.kts ├── run ├── sager.properties └── settings.gradle.kts