diff --git a/v2rayN/v2rayN/LIB/libs.zip b/v2rayN/v2rayN/LIB/libs.zip
new file mode 100644
index 00000000..aa07c530
Binary files /dev/null and b/v2rayN/v2rayN/LIB/libs.zip differ
diff --git a/v2rayN/v2rayN/Program.cs b/v2rayN/v2rayN/Program.cs
index 0f32d796..36ffb2e8 100644
--- a/v2rayN/v2rayN/Program.cs
+++ b/v2rayN/v2rayN/Program.cs
@@ -3,6 +3,8 @@ using System.Diagnostics;
 using System.Reflection;
 using System.Windows.Forms;
 using v2rayN.Forms;
+using v2rayN.Properties;
+using v2rayN.Tool;
 
 namespace v2rayN
 {
@@ -26,14 +28,20 @@ namespace v2rayN
             Application.ThreadException += new System.Threading.ThreadExceptionEventHandler(Application_ThreadException);
             AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(CurrentDomain_UnhandledException);
 
-            AppDomain.CurrentDomain.AssemblyResolve += CurrentDomain_AssemblyResolve;
-
+         
+            //AppDomain.CurrentDomain.AssemblyResolve += CurrentDomain_AssemblyResolve;
 
             Process instance = RunningInstance();
             if (instance == null)
-            {
-                Utils.SaveLog("v2rayN start up");
+            {                
+                if (!UnzipLibs())
+                {
+                    UI.Show($"Error preparing the environment(准备运行环境出错)");
+                    return;
+                }
 
+                Utils.SaveLog("v2rayN start up");
+                
                 //设置语言环境
                 string lang = Utils.RegReadValue(Global.MyRegPath, Global.MyRegKeyLanguage, "zh-Hans");
                 System.Threading.Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo(lang);
@@ -48,27 +56,27 @@ namespace v2rayN
             }
         }
 
-        private static Assembly CurrentDomain_AssemblyResolve(object sender, ResolveEventArgs args)
-        {
-            try
-            {
-                string resourceName = "v2rayN.LIB." + new AssemblyName(args.Name).Name + ".dll";
-                using (var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream(resourceName))
-                {
-                    if (stream == null)
-                    {
-                        return null;
-                    }
-                    byte[] assemblyData = new byte[stream.Length];
-                    stream.Read(assemblyData, 0, assemblyData.Length);
-                    return Assembly.Load(assemblyData);
-                }
-            }
-            catch
-            {
-                return null;
-            }
-        }
+        //private static Assembly CurrentDomain_AssemblyResolve(object sender, ResolveEventArgs args)
+        //{
+        //    try
+        //    {
+        //        string resourceName = "v2rayN.LIB." + new AssemblyName(args.Name).Name + ".dll";
+        //        using (var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream(resourceName))
+        //        {
+        //            if (stream == null)
+        //            {
+        //                return null;
+        //            }
+        //            byte[] assemblyData = new byte[stream.Length];
+        //            stream.Read(assemblyData, 0, assemblyData.Length);
+        //            return Assembly.Load(assemblyData);
+        //        }
+        //    }
+        //    catch
+        //    {
+        //        return null;
+        //    }
+        //}
 
         /// <summary> 
         /// 获取正在运行的实例,没有运行的实例返回null; 
@@ -100,5 +108,20 @@ namespace v2rayN
             Utils.SaveLog("CurrentDomain_UnhandledException", (Exception)e.ExceptionObject);
         }
 
+        static bool UnzipLibs()
+        {
+            var fileName = Utils.GetPath("libs.zip");
+            if (!FileManager.ByteArrayToFile(fileName, Resources.libs))
+            {
+                return false;
+            }
+
+            if (!FileManager.ZipExtractToFile(fileName))
+            {
+                return false;
+            }
+
+            return true;
+        }
     }
 }
diff --git a/v2rayN/v2rayN/Properties/Resources.Designer.cs b/v2rayN/v2rayN/Properties/Resources.Designer.cs
index f2d8f030..ec86047f 100644
--- a/v2rayN/v2rayN/Properties/Resources.Designer.cs
+++ b/v2rayN/v2rayN/Properties/Resources.Designer.cs
@@ -90,26 +90,6 @@ namespace v2rayN.Properties {
             }
         }
         
-        /// <summary>
-        ///   查找 System.Byte[] 类型的本地化资源。
-        /// </summary>
-        internal static byte[] grpc_csharp_ext_x64_dll {
-            get {
-                object obj = ResourceManager.GetObject("grpc_csharp_ext_x64_dll", resourceCulture);
-                return ((byte[])(obj));
-            }
-        }
-        
-        /// <summary>
-        ///   查找 System.Byte[] 类型的本地化资源。
-        /// </summary>
-        internal static byte[] grpc_csharp_ext_x86_dll {
-            get {
-                object obj = ResourceManager.GetObject("grpc_csharp_ext_x86_dll", resourceCulture);
-                return ((byte[])(obj));
-            }
-        }
-        
         /// <summary>
         ///   查找 System.Drawing.Bitmap 类型的本地化资源。
         /// </summary>
@@ -120,6 +100,16 @@ namespace v2rayN.Properties {
             }
         }
         
+        /// <summary>
+        ///   查找 System.Byte[] 类型的本地化资源。
+        /// </summary>
+        internal static byte[] libs {
+            get {
+                object obj = ResourceManager.GetObject("libs", resourceCulture);
+                return ((byte[])(obj));
+            }
+        }
+        
         /// <summary>
         ///   查找 System.Drawing.Bitmap 类型的本地化资源。
         /// </summary>
@@ -226,25 +216,5 @@ namespace v2rayN.Properties {
                 return ((System.Drawing.Bitmap)(obj));
             }
         }
-        
-        /// <summary>
-        ///   查找 System.Byte[] 类型的本地化资源。
-        /// </summary>
-        internal static byte[] sysproxy_exe {
-            get {
-                object obj = ResourceManager.GetObject("sysproxy_exe", resourceCulture);
-                return ((byte[])(obj));
-            }
-        }
-        
-        /// <summary>
-        ///   查找 System.Byte[] 类型的本地化资源。
-        /// </summary>
-        internal static byte[] sysproxy64_exe {
-            get {
-                object obj = ResourceManager.GetObject("sysproxy64_exe", resourceCulture);
-                return ((byte[])(obj));
-            }
-        }
     }
 }
diff --git a/v2rayN/v2rayN/Properties/Resources.resx b/v2rayN/v2rayN/Properties/Resources.resx
index 2488ee55..72e8e12c 100644
--- a/v2rayN/v2rayN/Properties/Resources.resx
+++ b/v2rayN/v2rayN/Properties/Resources.resx
@@ -127,15 +127,12 @@
   <data name="checkupdate" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\resources\checkupdate.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="grpc_csharp_ext_x64_dll" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\resources\grpc_csharp_ext.x64.dll.gz;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
-  </data>
-  <data name="grpc_csharp_ext_x86_dll" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\resources\grpc_csharp_ext.x86.dll.gz;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
-  </data>
   <data name="help" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\resources\help.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
+  <data name="libs" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\lib\libs.zip;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </data>
   <data name="minimize" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\minimize.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
@@ -166,10 +163,4 @@
   <data name="sub" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\resources\sub.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
   </data>
-  <data name="sysproxy64_exe" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\sysproxy64.exe.gz;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
-  </data>
-  <data name="sysproxy_exe" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>..\Resources\sysproxy.exe.gz;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
-  </data>
 </root>
\ No newline at end of file
diff --git a/v2rayN/v2rayN/Resources/pac.txt b/v2rayN/v2rayN/Resources/pac.txt
index 4bed057c..6695b760 100644
--- a/v2rayN/v2rayN/Resources/pac.txt
+++ b/v2rayN/v2rayN/Resources/pac.txt
@@ -49,7 +49,7 @@ var rules = [
   "|http://img.dlsite.jp/",
   "||dm530.net",
   "share.dmhy.org",
-  "@@|https://share.dmhy.org",
+  "||dmhy.org",
   "||dmm.co.jp",
   "|http://www.dmm.com/netgame",
   "||dnvod.tv",
@@ -262,19 +262,25 @@ var rules = [
   "||daum.net",
   "||depositphotos.com",
   "||disconnect.me",
+  "||documentingreality.com",
   "||doubibackup.com",
   "||doubmirror.cf",
   "||encyclopedia.com",
   "||fangeqiang.com",
+  "||fanqiangdang.com",
   "||cloud.feedly.com",
+  "||feedx.net",
   "||flyzy2005.com",
   "||foreignpolicy.com",
   "||free-ss.site",
+  "||freehongkong.org",
   "||blog.fuckgfw233.org",
   "||g0v.social",
   "||globalvoices.org",
   "||glorystar.me",
   "||goregrish.com",
+  "||guangnianvpn.com",
+  "||hanime.tv",
   "||hbo.com",
   "||spaces.hightail.com",
   "||hkgalden.com",
@@ -288,6 +294,7 @@ var rules = [
   "||joinmastodon.org",
   "||liangzhichuanmei.com",
   "||lighti.me",
+  "||lightyearvpn.com",
   "||lihkg.com",
   "||line-scdn.net",
   "||i.lithium.com",
@@ -325,6 +332,7 @@ var rules = [
   "||api.pureapk.com",
   "||quora.com",
   "||quoracdn.net",
+  "||qz.com",
   "||cdn.seatguru.com",
   "||secure.raxcdn.com",
   "||redd.it",
@@ -368,6 +376,8 @@ var rules = [
   "||steemit.com",
   "||taiwanjustice.net",
   "||tinc-vpn.org",
+  "||u15.info",
+  "||washingtonpost.com",
   "||wenzhao.ca",
   "||whatsonweibo.com",
   "||wire.com",
@@ -375,6 +385,7 @@ var rules = [
   "||xm.com",
   "||xuehua.us",
   "||yes-news.com",
+  "||yigeni.com",
   "||you-get.org",
   "||zzcloud.me",
   "||aex.com",
@@ -697,459 +708,8 @@ var rules = [
   "||thefacebook.com",
   "||whatsapp.com",
   "||whatsapp.net",
-  "|https://www.ftchinese.com",
-  ".ftchinese.com/channel/video",
-  ".ftchinese.com/premium/001081066",
-  ".ftchinese.com/story/00102753",
-  ".ftchinese.com/story/001026616",
-  ".ftchinese.com/story/001026749",
-  ".ftchinese.com/story/001026807",
-  ".ftchinese.com/story/001026808",
-  ".ftchinese.com/story/001026834",
-  ".ftchinese.com/story/001026880",
-  ".ftchinese.com/story/001027429",
-  ".ftchinese.com/story/001030341",
-  ".ftchinese.com/story/001030502",
-  ".ftchinese.com/story/001030803",
-  ".ftchinese.com/story/001031317",
-  ".ftchinese.com/story/001032617",
-  ".ftchinese.com/story/001032636",
-  ".ftchinese.com/story/001032692",
-  ".ftchinese.com/story/001032762",
-  ".ftchinese.com/story/001033138",
-  ".ftchinese.com/story/001034917",
-  ".ftchinese.com/story/001034926",
-  ".ftchinese.com/story/001034927",
-  ".ftchinese.com/story/001034928",
-  ".ftchinese.com/story/001034952",
-  ".ftchinese.com/story/001035890",
-  ".ftchinese.com/story/001035972",
-  ".ftchinese.com/story/001035993",
-  ".ftchinese.com/story/001036417",
-  ".ftchinese.com/story/001037090",
-  ".ftchinese.com/story/001037091",
-  ".ftchinese.com/story/001038178",
-  ".ftchinese.com/story/001038199",
-  ".ftchinese.com/story/001038220",
-  ".ftchinese.com/story/001038819",
-  ".ftchinese.com/story/001038862",
-  ".ftchinese.com/story/001039067",
-  ".ftchinese.com/story/001039178",
-  ".ftchinese.com/story/001039211",
-  ".ftchinese.com/story/001039271",
-  ".ftchinese.com/story/001039295",
-  ".ftchinese.com/story/001039369",
-  ".ftchinese.com/story/001039482",
-  ".ftchinese.com/story/001039534",
-  ".ftchinese.com/story/001039555",
-  ".ftchinese.com/story/001039576",
-  ".ftchinese.com/story/001039712",
-  ".ftchinese.com/story/001039779",
-  ".ftchinese.com/story/001039809",
-  ".ftchinese.com/story/001040134",
-  ".ftchinese.com/story/001040835",
-  ".ftchinese.com/story/001040890",
-  ".ftchinese.com/story/001040918",
-  ".ftchinese.com/story/001040992",
-  ".ftchinese.com/story/001041209",
-  ".ftchinese.com/story/001042100",
-  ".ftchinese.com/story/001042252",
-  ".ftchinese.com/story/001042272",
-  ".ftchinese.com/story/001042280",
-  ".ftchinese.com/story/001043029",
-  ".ftchinese.com/story/001043066",
-  ".ftchinese.com/story/001043096",
-  ".ftchinese.com/story/001043124",
-  ".ftchinese.com/story/001043152",
-  ".ftchinese.com/story/001043189",
-  ".ftchinese.com/story/001043428",
-  ".ftchinese.com/story/001043439",
-  ".ftchinese.com/story/001043534",
-  ".ftchinese.com/story/001043675",
-  ".ftchinese.com/story/001043680",
-  ".ftchinese.com/story/001043702",
-  ".ftchinese.com/story/001043849",
-  ".ftchinese.com/story/001044099",
-  ".ftchinese.com/story/001044776",
-  ".ftchinese.com/story/001044871",
-  ".ftchinese.com/story/001044897",
-  ".ftchinese.com/story/001045114",
-  ".ftchinese.com/story/001045139",
-  ".ftchinese.com/story/001045186",
-  ".ftchinese.com/story/001045755",
-  ".ftchinese.com/story/001046087",
-  ".ftchinese.com/story/001046105",
-  ".ftchinese.com/story/001046118",
-  ".ftchinese.com/story/001046132",
-  ".ftchinese.com/story/001046517",
-  ".ftchinese.com/story/001046822",
-  ".ftchinese.com/story/001046866",
-  ".ftchinese.com/story/001046942",
-  ".ftchinese.com/story/001047180",
-  ".ftchinese.com/story/001047206",
-  ".ftchinese.com/story/001047304",
-  ".ftchinese.com/story/001047317",
-  ".ftchinese.com/story/001047345",
-  ".ftchinese.com/story/001047358",
-  ".ftchinese.com/story/001047375",
-  ".ftchinese.com/story/001047381",
-  ".ftchinese.com/story/001047413",
-  ".ftchinese.com/story/001047456",
-  ".ftchinese.com/story/001047491",
-  ".ftchinese.com/story/001047545",
-  ".ftchinese.com/story/001047558",
-  ".ftchinese.com/story/001047568",
-  ".ftchinese.com/story/001047627",
-  ".ftchinese.com/story/001048293",
-  ".ftchinese.com/story/001048343",
-  ".ftchinese.com/story/001048710",
-  ".ftchinese.com/story/001049289",
-  ".ftchinese.com/story/001049360",
-  ".ftchinese.com/story/001049896",
-  ".ftchinese.com/story/001050152",
-  ".ftchinese.com/story/001051027",
-  ".ftchinese.com/story/001051161",
-  ".ftchinese.com/story/001051372",
-  ".ftchinese.com/story/001051479",
-  ".ftchinese.com/story/001052138",
-  ".ftchinese.com/story/001052161",
-  ".ftchinese.com/story/001052525",
-  ".ftchinese.com/story/001052549",
-  ".ftchinese.com/story/001052701",
-  ".ftchinese.com/story/001052965",
-  ".ftchinese.com/story/001053149",
-  ".ftchinese.com/story/001053150",
-  ".ftchinese.com/story/001053200",
-  ".ftchinese.com/story/001053425",
-  ".ftchinese.com/story/001053496",
-  ".ftchinese.com/story/001053526",
-  ".ftchinese.com/story/001053557",
-  ".ftchinese.com/story/001053906",
-  ".ftchinese.com/story/001054049",
-  ".ftchinese.com/story/001054103",
-  ".ftchinese.com/story/001054109",
-  ".ftchinese.com/story/001054119",
-  ".ftchinese.com/story/001054123",
-  ".ftchinese.com/story/001054139",
-  ".ftchinese.com/story/001054166",
-  ".ftchinese.com/story/001054168",
-  ".ftchinese.com/story/001054190",
-  ".ftchinese.com/story/001054437",
-  ".ftchinese.com/story/001054526",
-  ".ftchinese.com/story/001054607",
-  ".ftchinese.com/story/001054644",
-  ".ftchinese.com/story/001054786",
-  ".ftchinese.com/story/001054843",
-  ".ftchinese.com/story/001054925",
-  ".ftchinese.com/story/001054940",
-  ".ftchinese.com/story/001055051",
-  ".ftchinese.com/story/001055063",
-  ".ftchinese.com/story/001055069",
-  ".ftchinese.com/story/001055136",
-  ".ftchinese.com/story/001055170",
-  ".ftchinese.com/story/001055202",
-  ".ftchinese.com/story/001055242",
-  ".ftchinese.com/story/001055263",
-  ".ftchinese.com/story/001055274",
-  ".ftchinese.com/story/001055299",
-  ".ftchinese.com/story/001055480",
-  ".ftchinese.com/story/001055551",
-  ".ftchinese.com/story/001055559",
-  ".ftchinese.com/story/001055566",
-  ".ftchinese.com/story/001055840",
-  ".ftchinese.com/story/001056099",
-  ".ftchinese.com/story/001056108",
-  ".ftchinese.com/story/001056131",
-  ".ftchinese.com/story/001056375",
-  ".ftchinese.com/story/001056491",
-  ".ftchinese.com/story/001056529",
-  ".ftchinese.com/story/001056534",
-  ".ftchinese.com/story/001056538",
-  ".ftchinese.com/story/001056541",
-  ".ftchinese.com/story/001056554",
-  ".ftchinese.com/story/001056557",
-  ".ftchinese.com/story/001056560",
-  ".ftchinese.com/story/001056567",
-  ".ftchinese.com/story/001056574",
-  ".ftchinese.com/story/001056588",
-  ".ftchinese.com/story/001056594",
-  ".ftchinese.com/story/001056596",
-  ".ftchinese.com/story/001056684",
-  ".ftchinese.com/story/001056832",
-  ".ftchinese.com/story/001056833",
-  ".ftchinese.com/story/001056851",
-  ".ftchinese.com/story/001056874",
-  ".ftchinese.com/story/001056896",
-  ".ftchinese.com/story/001056927",
-  ".ftchinese.com/story/001057011",
-  ".ftchinese.com/story/001057018",
-  ".ftchinese.com/story/001057044",
-  ".ftchinese.com/story/001057162",
-  ".ftchinese.com/story/001057500",
-  ".ftchinese.com/story/001057504",
-  ".ftchinese.com/story/001057509",
-  ".ftchinese.com/story/001057518",
-  ".ftchinese.com/story/001057532",
-  ".ftchinese.com/story/001057533",
-  ".ftchinese.com/story/001057556",
-  ".ftchinese.com/story/001057580",
-  ".ftchinese.com/story/001057638",
-  ".ftchinese.com/story/001057644",
-  ".ftchinese.com/story/001057817",
-  ".ftchinese.com/story/001057875",
-  ".ftchinese.com/story/001058009",
-  ".ftchinese.com/story/001058056",
-  ".ftchinese.com/story/001058224",
-  ".ftchinese.com/story/001058257",
-  ".ftchinese.com/story/001058295",
-  ".ftchinese.com/story/001058328",
-  ".ftchinese.com/story/001058339",
-  ".ftchinese.com/story/001058344",
-  ".ftchinese.com/story/001058352",
-  ".ftchinese.com/story/001058413",
-  ".ftchinese.com/story/001058421",
-  ".ftchinese.com/story/001058440",
-  ".ftchinese.com/story/001058458",
-  ".ftchinese.com/story/001058468",
-  ".ftchinese.com/story/001058561",
-  ".ftchinese.com/story/001058566",
-  ".ftchinese.com/story/001058567",
-  ".ftchinese.com/story/001058585",
-  ".ftchinese.com/story/001058628",
-  ".ftchinese.com/story/001058656",
-  ".ftchinese.com/story/001058665",
-  ".ftchinese.com/story/001058678",
-  ".ftchinese.com/story/001058691",
-  ".ftchinese.com/story/001058721",
-  ".ftchinese.com/story/001058728",
-  ".ftchinese.com/story/001059464",
-  ".ftchinese.com/story/001059484",
-  ".ftchinese.com/story/001059537",
-  ".ftchinese.com/story/001059538",
-  ".ftchinese.com/story/001059551",
-  ".ftchinese.com/story/001059818",
-  ".ftchinese.com/story/001059914",
-  ".ftchinese.com/story/001059920",
-  ".ftchinese.com/story/001059957",
-  ".ftchinese.com/story/001060088",
-  ".ftchinese.com/story/001060156",
-  ".ftchinese.com/story/001060157",
-  ".ftchinese.com/story/001060160",
-  ".ftchinese.com/story/001060181",
-  ".ftchinese.com/story/001060185",
-  ".ftchinese.com/story/001060493",
-  ".ftchinese.com/story/001060495",
-  ".ftchinese.com/story/001060590",
-  ".ftchinese.com/story/001060846",
-  ".ftchinese.com/story/001060847",
-  ".ftchinese.com/story/001060875",
-  ".ftchinese.com/story/001060921",
-  ".ftchinese.com/story/001060946",
-  ".ftchinese.com/story/001061120",
-  ".ftchinese.com/story/001061474",
-  ".ftchinese.com/story/001061524",
-  ".ftchinese.com/story/001061642",
-  ".ftchinese.com/story/001062017",
-  ".ftchinese.com/story/001062020",
-  ".ftchinese.com/story/001062028",
-  ".ftchinese.com/story/001062092",
-  ".ftchinese.com/story/001062096",
-  ".ftchinese.com/story/001062147",
-  ".ftchinese.com/story/001062176",
-  ".ftchinese.com/story/001062188",
-  ".ftchinese.com/story/001062254",
-  ".ftchinese.com/story/001062374",
-  ".ftchinese.com/story/001062482",
-  ".ftchinese.com/story/001062496",
-  ".ftchinese.com/story/001062501",
-  ".ftchinese.com/story/001062508",
-  ".ftchinese.com/story/001062519",
-  ".ftchinese.com/story/001062554",
-  ".ftchinese.com/story/001062741",
-  ".ftchinese.com/story/001062794",
-  ".ftchinese.com/story/001063160",
-  ".ftchinese.com/story/001063359",
-  ".ftchinese.com/story/001063512",
-  ".ftchinese.com/story/001063668",
-  ".ftchinese.com/story/001063692",
-  ".ftchinese.com/story/001063763",
-  ".ftchinese.com/story/001063764",
-  ".ftchinese.com/story/001063826",
-  ".ftchinese.com/story/001064127",
-  ".ftchinese.com/story/001064312",
-  ".ftchinese.com/story/001064705",
-  ".ftchinese.com/story/001064807",
-  ".ftchinese.com/story/001065120",
-  ".ftchinese.com/story/001065168",
-  ".ftchinese.com/story/001065249",
-  ".ftchinese.com/story/001065287",
-  ".ftchinese.com/story/001065335",
-  ".ftchinese.com/story/001065337",
-  ".ftchinese.com/story/001065541",
-  ".ftchinese.com/story/001065715",
-  ".ftchinese.com/story/001065735",
-  ".ftchinese.com/story/001065756",
-  ".ftchinese.com/story/001065802",
-  ".ftchinese.com/story/001066112",
-  ".ftchinese.com/story/001066136",
-  ".ftchinese.com/story/001066140",
-  ".ftchinese.com/story/001066465",
-  ".ftchinese.com/story/001066881",
-  ".ftchinese.com/story/001066950",
-  ".ftchinese.com/story/001066959",
-  ".ftchinese.com/story/001067435",
-  "www.ftchinese.com/story/001067479",
-  ".ftchinese.com/story/001067528",
-  ".ftchinese.com/story/001067545",
-  ".ftchinese.com/story/001067572",
-  ".ftchinese.com/story/001067648",
-  ".ftchinese.com/story/001067650",
-  ".ftchinese.com/story/001067680",
-  ".ftchinese.com/story/001067692",
-  ".ftchinese.com/story/001067871",
-  ".ftchinese.com/story/001067923",
-  ".ftchinese.com/story/001068062",
-  ".ftchinese.com/story/001068248",
-  ".ftchinese.com/story/001068278",
-  ".ftchinese.com/story/001068379",
-  ".ftchinese.com/story/001068483",
-  ".ftchinese.com/story/001068506",
-  ".ftchinese.com/story/001068547",
-  ".ftchinese.com/story/001068616",
-  ".ftchinese.com/story/001068622",
-  ".ftchinese.com/story/001068707",
-  ".ftchinese.com/story/001069146",
-  ".ftchinese.com/story/001069373",
-  ".ftchinese.com/story/001069516",
-  ".ftchinese.com/story/001069517",
-  ".ftchinese.com/story/001069687",
-  ".ftchinese.com/story/001069741",
-  ".ftchinese.com/story/001069861",
-  ".ftchinese.com/story/001069952",
-  ".ftchinese.com/story/001070053",
-  ".ftchinese.com/story/001070177",
-  ".ftchinese.com/story/001070307",
-  ".ftchinese.com/story/001070809",
-  ".ftchinese.com/story/001070990",
-  ".ftchinese.com/story/001071042",
-  ".ftchinese.com/story/001071044",
-  ".ftchinese.com/story/001071106",
-  ".ftchinese.com/story/001071166",
-  ".ftchinese.com/story/001071181",
-  "ftchinese.com/story/001071200",
-  ".ftchinese.com/story/001071208",
-  ".ftchinese.com/story/001071238",
-  ".ftchinese.com/story/001071683",
-  ".ftchinese.com/story/001072271",
-  ".ftchinese.com/story/001072348",
-  ".ftchinese.com/story/001072677",
-  ".ftchinese.com/story/001072726",
-  ".ftchinese.com/story/001072794",
-  ".ftchinese.com/story/001072853",
-  ".ftchinese.com/story/001072895",
-  ".ftchinese.com/story/001072993",
-  ".ftchinese.com/story/001073043",
-  ".ftchinese.com/story/001073103",
-  ".ftchinese.com/story/001073157",
-  ".ftchinese.com/story/001073216",
-  ".ftchinese.com/story/001073246",
-  ".ftchinese.com/story/001073305",
-  ".ftchinese.com/story/001073307",
-  ".ftchinese.com/story/001073408",
-  ".ftchinese.com/story/001073537",
-  ".ftchinese.com/story/001073672",
-  ".ftchinese.com/story/001073849",
-  ".ftchinese.com/story/001073906",
-  ".ftchinese.com/story/001074089",
-  ".ftchinese.com/story/001074110",
-  ".ftchinese.com/story/001074128",
-  ".ftchinese.com/story/001074157",
-  ".ftchinese.com/story/001074246",
-  ".ftchinese.com/story/001074307",
-  ".ftchinese.com/story/001074347",
-  ".ftchinese.com/story/001074423",
-  ".ftchinese.com/story/001074454",
-  ".ftchinese.com/story/001074467",
-  ".ftchinese.com/story/001074493",
-  ".ftchinese.com/story/001074550",
-  ".ftchinese.com/story/001074562",
-  ".ftchinese.com/story/001074653",
-  ".ftchinese.com/story/001074693",
-  ".ftchinese.com/story/001074699",
-  ".ftchinese.com/story/001074712",
-  ".ftchinese.com/story/001074713",
-  ".ftchinese.com/story/001074768",
-  ".ftchinese.com/story/001074782",
-  ".ftchinese.com/story/001074794",
-  ".ftchinese.com/story/001074822",
-  ".ftchinese.com/story/001074874",
-  ".ftchinese.com/story/001074891",
-  ".ftchinese.com/story/001074918",
-  ".ftchinese.com/story/001075081",
-  ".ftchinese.com/story/001075134",
-  ".ftchinese.com/story/001075142",
-  ".ftchinese.com/story/001075216",
-  ".ftchinese.com/story/001075230",
-  ".ftchinese.com/story/001075238",
-  ".ftchinese.com/story/001075262",
-  ".ftchinese.com/story/001075269",
-  ".ftchinese.com/story/001075491",
-  ".ftchinese.com/story/001075500",
-  ".ftchinese.com/story/001075650",
-  ".ftchinese.com/story/001075678",
-  ".ftchinese.com/story/001075703",
-  ".ftchinese.com/story/001075739",
-  ".ftchinese.com/story/001076066",
-  ".ftchinese.com/story/001076142",
-  ".ftchinese.com/story/001076459",
-  ".ftchinese.com/story/001076470",
-  ".ftchinese.com/story/001076538",
-  ".ftchinese.com/story/001076573",
-  ".ftchinese.com/story/001076901",
-  ".ftchinese.com/story/001077067",
-  ".ftchinese.com/story/001077084",
-  ".ftchinese.com/story/001077235",
-  ".ftchinese.com/story/001077344",
-  ".ftchinese.com/story/001077390",
-  ".ftchinese.com/story/001077392",
-  ".ftchinese.com/story/001077465",
-  ".ftchinese.com/story/001077468",
-  ".ftchinese.com/story/001077492",
-  ".ftchinese.com/story/001077745",
-  ".ftchinese.com/story/001077768",
-  ".ftchinese.com/story/001077804",
-  ".ftchinese.com/story/001077852",
-  ".ftchinese.com/story/001078646",
-  ".ftchinese.com/story/001078928",
-  ".ftchinese.com/story/001078967",
-  ".ftchinese.com/story/001079559",
-  ".ftchinese.com/story/001079641",
-  ".ftchinese.com/story/001079909",
-  ".ftchinese.com/story/001079934",
-  ".ftchinese.com/story/001079992",
-  ".ftchinese.com/story/001080054",
-  ".ftchinese.com/story/001080109",
-  ".ftchinese.com/story/001080169",
-  ".ftchinese.com/story/001080226",
-  ".ftchinese.com/story/001080429",
-  ".ftchinese.com/story/001080471",
-  ".ftchinese.com/story/001080550",
-  ".ftchinese.com/story/001080581",
-  ".ftchinese.com/story/001080647",
-  ".ftchinese.com/story/001080778",
-  ".ftchinese.com/story/001080892",
-  ".ftchinese.com/story/001080915",
-  ".ftchinese.com/story/001080935",
-  ".ftchinese.com/story/001081059",
-  ".ftchinese.com/story/001081127",
-  ".ftchinese.com/tag/%E5%8D%81%E5%85%AB%E5%B1%8A%E4%B8%89%E4%B8%AD%E5%85%A8%E4%BC%9A",
-  ".ftchinese.com/tag/%E6%B8%A9%E5%AE%B6%E5%AE%9D",
-  ".ftchinese.com/tag/%E8%96%84%E7%86%99%E6%9D%A5",
-  ".ftchinese.com/video/1437",
-  ".ftchinese.com/video/1882",
-  ".ftchinese.com/video/2446",
-  ".ftchinese.com/video/2601",
-  ".ftchinese.com/comments",
+  ".ftchinese.com",
+  "||ftchinese.com",
   "||1e100.net",
   "||466453.com",
   "||abc.xyz",
@@ -1595,6 +1155,7 @@ var rules = [
   "||2008xianzhang.info",
   "||2017.hk",
   "21andy.com/blog",
+  ".21join.com",
   ".21pron.com",
   "21sextury.com",
   ".228.net.tw",
@@ -1636,9 +1197,10 @@ var rules = [
   "64wiki.com",
   ".66.ca",
   "666kb.com",
-  "6park.com",
+  ".6park.com",
   "||6park.com",
   "||6parker.com",
+  "||6parknews.com",
   "||7capture.com",
   ".7cow.com",
   ".8-d.com",
@@ -1923,6 +1485,7 @@ var rules = [
   ".avdb.tv",
   "||avdb.tv",
   ".avfantasy.com",
+  "||avg.com",
   ".avgle.com",
   "||avgle.com",
   "||avidemux.org",
@@ -2716,6 +2279,8 @@ var rules = [
   "delicious.com/GFWbookmark",
   ".democrats.org",
   "||democrats.org",
+  ".demosisto.hk",
+  "||demosisto.hk",
   "||desc.se",
   "||dessci.com",
   ".destroy-china.jp",
@@ -3416,6 +2981,7 @@ var rules = [
   "||toutyrater.github.io",
   "wsgzao.github.io",
   "|https://wsgzao.github.io",
+  "||raw.githubusercontent.com",
   ".gizlen.net",
   "||gizlen.net",
   ".gjczz.com",
@@ -4390,7 +3956,7 @@ var rules = [
   ".lsmradio.com/rad_archives",
   ".lsmwebcast.com",
   ".ltn.com.tw",
-  "|http://ltn.com.tw",
+  "||ltn.com.tw",
   ".luke54.com",
   ".luke54.org",
   ".lupm.org",
@@ -4858,6 +4424,7 @@ var rules = [
   "|http://nvtongzhisheng.org",
   ".nwtca.org",
   "|http://nyaa.eu",
+  "||nyaa.si",
   ".nydus.ca",
   "nylon-angel.com",
   "nylonstockingsonline.com",
@@ -5321,6 +4888,7 @@ var rules = [
   "||rapidmoviez.com",
   "rapidvpn.com",
   "||rapidvpn.com",
+  "||rarbgprx.org",
   ".raremovie.cc",
   "|http://raremovie.cc",
   ".raremovie.net",
@@ -6861,7 +6429,7 @@ var rules = [
   "||windscribe.com",
   "||community.windy.com",
   "||wingy.site",
-  "winning11.com",
+  ".winning11.com",
   "winwhispers.info",
   "||wiredbytes.com",
   "||wiredpen.com",
diff --git a/v2rayN/v2rayN/Resources/pac.txt.gz b/v2rayN/v2rayN/Resources/pac.txt.gz
index 4020d6a6..7f621cb7 100644
Binary files a/v2rayN/v2rayN/Resources/pac.txt.gz and b/v2rayN/v2rayN/Resources/pac.txt.gz differ
diff --git a/v2rayN/v2rayN/Tool/FileManager.cs b/v2rayN/v2rayN/Tool/FileManager.cs
index 6df1a4bb..96841c96 100644
--- a/v2rayN/v2rayN/Tool/FileManager.cs
+++ b/v2rayN/v2rayN/Tool/FileManager.cs
@@ -24,20 +24,27 @@ namespace v2rayN.Tool
 
         public static void UncompressFile(string fileName, byte[] content)
         {
-            // Because the uncompressed size of the file is unknown,
-            // we are using an arbitrary buffer size.
-            byte[] buffer = new byte[4096];
-            int n;
-
-            using (var fs = File.Create(fileName))
-            using (var input = new GZipStream(new MemoryStream(content),
-                    CompressionMode.Decompress, false))
+            try
             {
-                while ((n = input.Read(buffer, 0, buffer.Length)) > 0)
+                // Because the uncompressed size of the file is unknown,
+                // we are using an arbitrary buffer size.
+                byte[] buffer = new byte[4096];
+                int n;
+
+                using (var fs = File.Create(fileName))
+                using (var input = new GZipStream(new MemoryStream(content),
+                        CompressionMode.Decompress, false))
                 {
-                    fs.Write(buffer, 0, n);
+                    while ((n = input.Read(buffer, 0, buffer.Length)) > 0)
+                    {
+                        fs.Write(buffer, 0, n);
+                    }
                 }
             }
+            catch (Exception ex)
+            {
+                Utils.SaveLog(ex.Message, ex);
+            }
         }
 
         public static string NonExclusiveReadAllText(string path)
@@ -61,5 +68,26 @@ namespace v2rayN.Tool
                 throw ex;
             }
         }
+        public static bool ZipExtractToFile(string fileName)
+        {
+            try
+            {
+                using (ZipArchive archive = ZipFile.OpenRead(fileName))
+                {
+                    foreach (ZipArchiveEntry entry in archive.Entries)
+                    {
+                        if (entry.Length == 0)
+                            continue;
+                        entry.ExtractToFile(Utils.GetPath(entry.Name), true);
+                    }
+                }
+            }
+            catch (Exception ex)
+            {
+                Utils.SaveLog(ex.Message, ex);
+                return false;
+            }
+            return true;
+        }
     }
 }
diff --git a/v2rayN/v2rayN/v2rayN.csproj b/v2rayN/v2rayN/v2rayN.csproj
index 302c50e0..be0a1dcf 100644
--- a/v2rayN/v2rayN/v2rayN.csproj
+++ b/v2rayN/v2rayN/v2rayN.csproj
@@ -190,7 +190,6 @@
     <Compile Include="HttpProxyHandler\PACListHandle.cs" />
     <Compile Include="HttpProxyHandler\PACServerHandle.cs" />
     <Compile Include="HttpProxyHandler\ProxySetting.cs" />
-    <Compile Include="HttpProxyHandler\SysProxyHandle.cs" />
     <Compile Include="HttpProxyHandler\HttpProxyHandle.cs" />
     <Compile Include="Base\WebClientEx.cs">
       <SubType>Component</SubType>
@@ -331,6 +330,7 @@
     <EmbeddedResource Include="app.config">
       <SubType>Designer</SubType>
     </EmbeddedResource>
+    <None Include="LIB\libs.zip" />
     <None Include="packages.config" />
     <None Include="Properties\Settings.settings">
       <Generator>SettingsSingleFileGenerator</Generator>
@@ -346,11 +346,7 @@
     <EmbeddedResource Include="Sample\custom_routing_proxy" />
     <Protobuf Include="Protos\Statistics.proto" />
     <None Include="Resources\abp.js.gz" />
-    <None Include="Resources\grpc_csharp_ext.x64.dll.gz" />
-    <None Include="Resources\grpc_csharp_ext.x86.dll.gz" />
     <None Include="Resources\pac.txt.gz" />
-    <None Include="Resources\sysproxy.exe.gz" />
-    <None Include="Resources\sysproxy64.exe.gz" />
   </ItemGroup>
   <ItemGroup>
     <EmbeddedResource Include="Resx\ResUI.zh-Hans.resx">
@@ -416,16 +412,18 @@
     <None Include="Resources\sub.png" />
     <None Include="Resources\checkupdate.png" />
     <None Include="Resources\about.png" />
-    <EmbeddedResource Include="LIB\Google.Protobuf.dll" />
-    <EmbeddedResource Include="LIB\Grpc.Core.Api.dll" />
-    <EmbeddedResource Include="LIB\Grpc.Core.dll" />
-    <EmbeddedResource Include="LIB\Newtonsoft.Json.dll" />
-    <EmbeddedResource Include="LIB\System.Buffers.dll" />
-    <EmbeddedResource Include="LIB\System.Memory.dll" />
-    <EmbeddedResource Include="LIB\System.Runtime.CompilerServices.Unsafe.dll" />
-    <EmbeddedResource Include="LIB\zxing.dll" />
-    <EmbeddedResource Include="LIB\zxing.presentation.dll" />
-    <EmbeddedResource Include="LIB\netstandard.dll" />
+    <None Include="LIB\Google.Protobuf.dll" />
+    <None Include="LIB\Grpc.Core.Api.dll" />
+    <None Include="LIB\Grpc.Core.dll" />
+    <None Include="LIB\Newtonsoft.Json.dll" />
+    <None Include="LIB\System.Buffers.dll" />
+    <None Include="LIB\System.Memory.dll" />
+    <None Include="LIB\System.Runtime.CompilerServices.Unsafe.dll" />
+    <None Include="LIB\zxing.dll" />
+    <None Include="LIB\zxing.presentation.dll" />
+    <None Include="LIB\netstandard.dll" />
+    <Content Include="LIB\grpc_csharp_ext.x64.dll" />
+    <Content Include="LIB\grpc_csharp_ext.x86.dll" />
     <Content Include="Resources\help.png" />
     <None Include="Resources\notify.png" />
     <Content Include="Resources\privoxy_conf.txt" />