From 49eb2a09634e439090d4a2b13ec7d6f911d3deaf Mon Sep 17 00:00:00 2001
From: cloudflight <cloudflight@126.com>
Date: 星期六, 27 七月 2024 11:44:21 +0800
Subject: [PATCH] fix:修复沿程损失计算异常的问题

---
 Hydraulic/Hydro.ConfigModel/LogicPoint.cs               |   91 +
 Hydraulic/Hydro.CodeProvider/DemoCodeClass.cs           |   20 
 Hydraulic/Hydro.ConfigModel/GlobalModel.cs              |   31 
 Hydraulic/Hydro.CommonBase/IChromosome.cs               |    2 
 Hydro.ClientCore/Form2.Designer.cs                      |   11 
 Hydraulic/Hydro.MapUI/Map/MapViewer.resx                |  826 ++++++++--------
 Hydro.ClientCore/Form2.resx                             |   18 
 Lib/Hydro.HydraulicHelper.dll                           |    0 
 Hydraulic/Hydro.MapView/MapViewNetWork.cs               |    2 
 Hydraulic/Hydro.ConfigModel/HostExt.cs                  |    6 
 Hydraulic/Hydro.CodeProvider/Eval.cs                    | 1078 ++++++++++++++++++++---
 Hydraulic/Hydro.CommonBase/Helper/CalcExt.cs            |    6 
 Hydraulic/Hydro.CommonBase/ChromosomeBase.cs            |   34 
 Hydraulic/Hydro.Inp2.2/NetWork.cs                       |    2 
 Hydraulic/Hydro.MapUI/Map/MapViewer.Designer.cs         |   20 
 Hydraulic/Hydro.CommonBase/ParamModel.cs                |  261 ++++-
 Hydraulic/Hydro.CommonBase/Helper/CurveFitHelper.cs     |   19 
 Hydraulic/Hydro.HydraulicOptimizer/WDNModelOptimizer.cs |  305 +++---
 18 files changed, 1,858 insertions(+), 874 deletions(-)

diff --git a/Hydraulic/Hydro.CodeProvider/DemoCodeClass.cs b/Hydraulic/Hydro.CodeProvider/DemoCodeClass.cs
index f057846..fc58f4e 100644
--- a/Hydraulic/Hydro.CodeProvider/DemoCodeClass.cs
+++ b/Hydraulic/Hydro.CodeProvider/DemoCodeClass.cs
@@ -3,13 +3,13 @@
 using System.Text;
 using System.IO;
 
-namespace CoustomEval
-{
-    class myLib
-    {
-        public double myMethod(List<double> paramArray)
-        {
-            return Math.Abs(paramArray[0]);
-        }
-    }
-}
\ No newline at end of file
+//namespace CoustomEval
+//{
+//    class myLib
+//    {
+//        public double myMethod(List<double> paramArray)
+//        {
+//            return Math.Abs(paramArray[0]);
+//        }
+//    }
+//}
\ No newline at end of file
diff --git a/Hydraulic/Hydro.CodeProvider/Eval.cs b/Hydraulic/Hydro.CodeProvider/Eval.cs
index 26c4584..c3d12d7 100644
--- a/Hydraulic/Hydro.CodeProvider/Eval.cs
+++ b/Hydraulic/Hydro.CodeProvider/Eval.cs
@@ -12,6 +12,7 @@
 using System.Data;
 using Hydro.CommonBase;
 using System.Text.RegularExpressions;
+using System.Runtime.InteropServices;
 //using System.Security.Cryptography.X509Certificates;
 //using Hydro.ConfigModel;
 
@@ -37,12 +38,13 @@
     [Serializable]
     public class Eval
     {
+        public static bool 鏈湴椤圭洰缂栬瘧=false;
         int paramNum;
         string tempCode=null;
         List<string> refs = new List<string>();
         List<string> usings = new List<string>();
         string code;
-        object tmp;
+        public object tmp;
         public void SetTmp(object tmp)
         {
             this.tmp = tmp;
@@ -59,7 +61,7 @@
 
         //static MyEval instance;
         //static List<MethodInfo> mis=new List<MethodInfo>();
-        public static dynamic CompileTotalInstance(EvalTemplate me_temp)
+        public static object CompileTotalInstance(EvalTemplate me_temp)
         {
             
             var code= me_temp.Get_code();
@@ -82,39 +84,58 @@
             }
         }
         /// <summary>
-        /// 鏋勯�犲嚱鏁�
+        /// 鍚堝苟缂栬瘧鏂规硶
         /// </summary>
         /// <param name="CharpCode">鑷敱缂栧啓锛涘弬鏁帮細List<double> paramArray锛岃繑鍥炲�硷細double;</param>
         /// <param name="num">鐢ㄦ潵鍋氬嚱鏁板彲琛屾�ф祴璇曪紝鍙互涓嶅~</param>
-        public Eval(string CharpCode,int num,bool isCommon=false,EvalTemplate me_temp=null)
+        public Eval(string CharpCode, string tempCode ,EvalTemplate me_temp,string DisplayName)
         {
-            if (!isCommon)
+            FunctionIndex = me_temp.Count;
+            CharpCode = TreatHead(CharpCode);
+            me_temp.Add_code(CharpCode, tempCode, DisplayName);
+            isInit = true;
+        }
+        public Eval(string code)
+        {
+            this.tempCode = null;
+            this.code = code;
+            //paramNum = num;
+            tmp = getInstance(true);
+            if (tmp is string)
             {
-                this.tempCode = EvalTemplate.TempCode_function;
-                code = CharpCode;
-                paramNum = num;
-                tmp = getInstance();
-                if (tmp is string)
-                {
-                    isInit = false;
-                    errString = tmp.ToString();
-                    return;
-                }
-
-                Type type = tmp.GetType();
-                mi = type.GetMethod("myMethod");
-                isInit = true;
+                isInit = false;
+                errString = tmp.ToString();
+                return;
             }
-            else
-            {
-                FunctionIndex = me_temp.Count;
-                CharpCode = TreatHead(CharpCode);
-                me_temp.Add_code(CharpCode);
-                isInit = true;
-            }
+            isInit = true;
 
         }
+        /// <summary>
+        /// 鏋勯��
+        /// </summary>
+        /// <param name="CharpCode">鍑芥暟鐨勪唬鐮佹</param>
+        /// <param name="tempCode"></param>
+        public Eval(string CharpCode, string tempCode )
+        {
+            //灏唘sing鍜宨mport鏀惧湪寮�澶�
+            //鐙珛缂栬瘧
+            CharpCode = TreatHead(CharpCode);
+            this.tempCode = tempCode;
+            code = CharpCode;
+            //paramNum = num;
+            tmp = getInstance(false);
+            if (tmp is string)
+            {
+                isInit = false;
+                errString = tmp.ToString();
+                return;
+            }
 
+            Type type = tmp.GetType();
+            mi = type.GetMethod("myMethod");
+            isInit = true;
+
+        }
         private string TreatHead(string CharpCode)
         {
             foreach (var line0 in CharpCode.Split('\n'))
@@ -142,45 +163,7 @@
             return CharpCode;
         }
 
-        public Eval(string code)
-        {
-            this.tempCode = null;
-            this.code = code;
-            //paramNum = num;
-            tmp = getInstance();
-            if (tmp is string)
-            {
-                isInit = false;
-                errString = tmp.ToString();
-                return;
-            }
-            isInit = true;
-
-        }
-        /// <summary>
-        /// 鏋勯��
-        /// </summary>
-        /// <param name="CharpCode">鍑芥暟鐨勪唬鐮佹</param>
-        /// <param name="tempCode"></param>
-        public Eval(string CharpCode, string tempCode=null)
-        {
-            CharpCode = TreatHead(CharpCode);
-            this.tempCode = tempCode;
-            code = CharpCode;
-            //paramNum = num;
-            tmp = getInstance();
-            if (tmp is string)
-            {
-                isInit = false;
-                errString = tmp.ToString();
-                return;
-            }
-
-            Type type = tmp.GetType();
-            mi = type.GetMethod("myMethod");
-            isInit = true;
-
-        }
+      
 
         public List<string> defaultRefs = new List<string>()
         {
@@ -207,7 +190,7 @@
         /// </summary>
         /// <param name="CharpCode"></param>
         /// <returns></returns>
-        private   object getInstance()
+        private   object getInstance(bool isCommon)
         {
             var d = new Dictionary<string, string>() { 
                 { "CompilerVersion", "v4.0" },             
@@ -219,27 +202,56 @@
 
 
             defaultRefs.ForEach(refs => cp.ReferencedAssemblies.Add(refs));
-
-            cp.CompilerOptions = $"/t:library /platform:anycpu /optimize+";
-
-            cp.GenerateInMemory = true;
-
-
             StringBuilder sourceCode = new StringBuilder();
 
             //return paramArray[0] + paramArray[1] * 3 + paramArray[2];
-            if (tempCode!=null)
+            if (tempCode != null)
             {
                 sourceCode.Append(tempCode.Replace("{0}", code));
             }
-            
+
             else
             {
                 sourceCode.Append(code);
             }
+//#if DEBUG
+            //if (isCommon )
+            //{
+            //    //绂佺敤cp鐨勪紭鍖栫紪璇�
+
+            //    var path = @"..\..\Hydro\Hydro.DynamicDll\myLib.cs";// files.BasePath + ".cs";
+            //                                            //灏唖ourceCode.ToString()杈撳嚭鍒版枃浠�
+            //                                            //鍒ゆ柇path鐨勬枃浠跺唴瀹规槸鍚﹀拰sourceCode.ToString()涓�鏍凤紝濡傛灉涓嶄竴鏍峰垯鍐欏叆
+            //    if (!File.Exists(path) || File.ReadAllText(path) != sourceCode.ToString())
+            //    {
+            //        File.WriteAllText(path, sourceCode.ToString());
+            //        if (鏈湴椤圭洰缂栬瘧) return $"鍔ㄦ�佺紪璇戝凡淇敼";
+
+            //    }
+            //    if (鏈湴椤圭洰缂栬瘧) { return new CoustomEval.myLib(); }
+            //}
+
+            
+            
+
+            
+
+            //cp.CompilerOptions = $"/t:library /platform:anycpu /optimize+";
+            //cp.GenerateInMemory = true;
+            //CompilerResults cr = compiler.CompileAssemblyFromSource(cp, sourceCode.ToString());
+            ////cp.GenerateExecutable = true;
+//#else
+            cp.CompilerOptions = $"/t:library /platform:anycpu /optimize+";
+            cp.GenerateInMemory = true;
+            CompilerResults cr = compiler.CompileAssemblyFromSource(cp,sourceCode.ToString());
+//#endif
+
+
+
+            
             //myCode.Append("}\r\n");
 
-            CompilerResults cr = compiler.CompileAssemblyFromSource(cp, sourceCode.ToString());
+
             if (cr.Errors.Count > 0)
             {
                 string errString = "";
@@ -251,8 +263,9 @@
             }
 
             Assembly assembly = cr.CompiledAssembly;
-
+            
             object tmp = assembly.CreateInstance("CoustomEval.myLib");
+            var files = cr.TempFiles;
 
             return tmp;
             
@@ -271,19 +284,75 @@
         /// <returns></returns>
         public double getResult(List<double> paramArray, List<double[]> patternArray=null,LogicModelParams param=null,GeneticParams gParam=null)
         {
-            double result;
-            result = (double)mi.Invoke(tmp, new object[] { paramArray, patternArray, param, gParam });
-            //result = paramArray.Count();
-            return result;
+//#if DEBUG
+//            if (gParam.GlobalConfig.Ext.鏈湴椤圭洰缂栬瘧)
+//            {
+//                return DoTMethod.DoGetResult(tmp, mi, paramArray, patternArray, param, gParam);
+//            }
+//            else
+//            {
+//                return (double)mi.Invoke(tmp, new object[] { paramArray, patternArray, param, gParam });
+//            }
+//#endif
             //return mi;
+            if (mi == null || tmp == null) return 0;
+            try
+            {
+//#if DEBUG
+//                if (gParam.GlobalConfig.Ext.鏈湴椤圭洰缂栬瘧)
+//                {
+//                    return DoTMethod.DoGetResult(tmp, mi, paramArray, patternArray, param, gParam);
+//                }
+//                else
+//                {
+//                    return (double)mi.Invoke(tmp, new object[] { paramArray, patternArray, param, gParam });
+//                }
+                
+//#else
+                double r = (double)mi.Invoke(tmp, new object[] { paramArray, patternArray, param, gParam });
+                return r;
+//#endif
 
+            }
+            catch (Exception ex)
+            {
+#if DEBUG
+                throw new Exception("琛ㄨ揪寮忛敊璇�");
+#endif
+                return double.NaN;
+            }
         }
+        
 
-        public dynamic ChangeParam(LogicModelParams param, WdnmoParam wParam,GeneticParams gParam,calcParam cParam)
+
+        public double ChangeParam(LogicModelParams param, WdnmoParam wParam,GeneticParams gParam,calcParam cParam)
         {
-            if (mi == null || tmp == null) return null;
-            dynamic r = (mi.Invoke(tmp, new object[] { param, wParam, gParam, cParam }));
-            return r;
+            if (mi == null || tmp == null) return 0;
+
+//#if DEBUG
+//            if (gParam.GlobalConfig.Ext.鏈湴椤圭洰缂栬瘧)
+//            {
+//                return DoTMethod.DoChangeParamMethod(tmp, mi, param, wParam, gParam, cParam);
+//            }
+//            else
+//            {
+//                return (double)(mi.Invoke(tmp, new object[] { param, wParam, gParam, cParam }));
+//            }
+//#endif
+
+            try
+            {
+
+                double r = (double)(mi.Invoke(tmp, new object[] { param, wParam, gParam, cParam }));
+                return r;
+
+            }
+            catch (Exception ex)
+            {
+                wParam.ErrorMessage =$"鎵ц棰勫鐞嗘彃浠禰{mi.Name}]鏃舵姤閿欙細{ex.Message}" ;
+                return -1;
+            }
+            
         }
         //public dynamic ChangeResult(LogicModelParams param, WdnmoParam wParam,GeneticParams gParam,List<Result> results)
         //{
@@ -353,6 +422,10 @@
             return null;
             //return mi;
         }
+
+
+
+      
     }
     public class EvalTemplate
     {
@@ -386,14 +459,13 @@
 using System.IO;   
 using System.Linq;
 using System.Drawing;
-
 using Hydro.CommonBase;
 ";
-        public static string TempCode_function = CommonUse+ @"
+        public static string TempCode_express = CommonUse+ @"
 namespace CoustomEval
 {           
     [Serializable]
-    class myLib
+    public class myLib
     {
         public double myMethod(List<double> paramArray,List<double[]> patternArray,LogicModelParams param=null,GeneticParams gParam=null)
         {
@@ -406,18 +478,125 @@
 namespace CoustomEval
 {           
     [Serializable]
-    class myLib
+    public class myLib
     {
 {0}
     }
 }";
-        static string functionTemp = @"
+        public static string TempCode_expressCommon = @"
+{2}
         public double TMethod{1}(List<double> paramArray,List<double[]> patternArray,LogicModelParams param=null,GeneticParams gParam=null)
         {
 {0}
         }";
+        public static string TempCode_preToolCommon = @"
+{2}
+        public double TMethod{1}(LogicModelParams param, WdnmoParam wParam,GeneticParams gParam,calcParam cParam)
+        {
+{0}
+        }";
 
-        public static string helpText_Set =
+        public static string TempCode_Set = CommonUse + @"
+namespace CoustomEval
+{           
+    [Serializable]
+    public class myLib
+    {
+        public dict<string,dict> myMethod(dict<string,dict> map_node,dict<string,dict> map_link)
+        {
+{0}
+        }
+    }
+}";
+        public static string TempCode_preTool = CommonUse + @"
+namespace CoustomEval
+{           
+    [Serializable]
+    public class myLib
+    {
+        public object myMethod(LogicModelParams param, WdnmoParam wParam,GeneticParams gParam,calcParam cParam)
+        {
+{0}
+        }
+    }
+}";
+
+
+        List<string> codes_Total = new List<string>();
+
+        public int Count { get { return codes_Total.Count; } }
+
+        public void Add_code(string code,string TempCode,string DisplayName)
+        {
+
+            string Fcode =TempCode.Replace("{0}", code).Replace("{1}",codes_Total.Count.ToString()).Replace("{2}",
+$@"        /// <summary>        
+        /// {DisplayName}        
+        /// </summary>");
+            //瀵逛簬Fcode涓瘡涓�琛岀殑缂╄繘杩涜澶勭悊
+            var arr = Fcode.Replace("\r\n","\n").Split('\n');
+            Regex reg = new Regex(@"\s*(public\s+|private\s+)?\w+\s+\w+\(");
+            
+            for (int i=6; i<arr.Length-1; i++) 
+            {
+                //if (arr[i].StartsWith("        "))
+                //{
+                //    //arr[i] = arr[i].Substring(4);
+                //}
+                //else if (arr[i].StartsWith("    "))
+                //{
+                //    arr[i] = "    " + arr[i];
+                //}
+                //else
+                //鍒ゆ柇鏈鏄惁鏄嚱鏁板畾涔夌殑寮�濮嬶紝浣跨敤姝e垯琛ㄨ揪寮忔潵鍒ゆ柇
+                
+                //if (reg.IsMatch(arr[i]))
+                //{
+                //    if (i>0 && arr[i - 1].Trim()=="}")
+                //    {
+                //        arr[i - 1] = arr[i - 1].Substring(4);
+                //    }
+                //    break;
+                //}
+
+                if (arr[i].Trim() == "====}")//鎵嬪姩缁撴潫鏍囪
+                {
+                    arr[i] = "        }";
+                    //鍒犻櫎鏈�鍚庝竴琛岀殑}
+                    arr[arr.Length - 1] = "";
+                    break;
+                }
+
+
+                {
+                    arr[i] = "            " + arr[i];
+                }
+                
+
+            }
+            Fcode = string.Join("\r\n", arr);
+            codes_Total.Add(Fcode);
+        }
+
+        public string Get_code()
+        {
+            string fCodes= string.Join("\r\n",codes_Total.ToArray());
+            return TempCode_Total.Replace("{0}",fCodes);
+        }
+
+        public void Clear()
+        {
+            codes_Total.Clear();
+        }
+        
+        public static void fi()
+        {
+           
+        }
+   
+
+
+        public static string helpText_Set =>
 @"
 [绫诲瀷璇存槑]
 dict锛氬瓧鍏哥被瀵硅薄锛岀瓑浠蜂簬dictionary<string,object>
@@ -480,7 +659,7 @@
 EN_SETTING
 EN_ENERGY
 ";
-        public static string helpText_Function =
+        public static string helpText_Function =>
 $@"
 =======[瀵硅薄璇存槑]======
 Values锛氱敤鏉ュ瓨鍌ㄥ涓椂鍒荤殑璁$畻缁撴灉鍊硷紝鍗曟椂鍒昏绠楀�硷紝闀垮害涓�1锛涘鏃跺埢璁$畻鏃讹紝闀垮害涓烘椂娈垫暟锛�
@@ -501,9 +680,9 @@
 
 
 绋嬪簭闆嗘鏋舵瀯閫犲涓嬶紝闇�瑕佸~鍐檣{0}}涓殑鍐呭锛�
-{EvalTemplate.TempCode_function}
+{EvalTemplate.TempCode_express}
 ";
-        public static string helpText_Model =
+        public static string helpText_Model =>
 $@"
 浣跨敤""{{鍙橀噺鍚嶇О}}""鏉ュ紩鐢ㄥ彉閲忥紝杩斿洖鐨勬槸double绫诲瀷銆備緥濡�""{{XX娴侀噺}}""寮曠敤鍙橀噺XX娴侀噺锛屽彉閲忕殑鍊煎彇鍐充簬鍙橀噺鐨勬暟鎹潵婧�
 浣跨敤""{{鍙橀噺鍚嶇О[]}}""鏉ュ紩鐢ㄥ彉閲忕殑LogicPattern锛岃繑鍥瀌ouble[]绫诲瀷銆�
@@ -514,78 +693,667 @@
 
 
 绋嬪簭闆嗘鏋舵瀯閫犲涓嬶紝闇�瑕佸~鍐檣{0}}涓殑鍐呭锛�
-{EvalTemplate.TempCode_PreTreat}
+{EvalTemplate.TempCode_preTool}
 ";
 
-        List<string> codes_Total = new List<string>();
+    }
 
-        public int Count { get { return codes_Total.Count; } }
 
-        public void Add_code(string code)
+    public class DoTMethod
+    {
+        public static double DoChangeParamMethod(dynamic lib,MethodInfo mi, LogicModelParams param, WdnmoParam wParam, GeneticParams gParam, calcParam cParam)
         {
-            string Fcode = functionTemp.Replace("{0}", code).Replace("{1}",codes_Total.Count.ToString());
-            //瀵逛簬Fcode涓瘡涓�琛岀殑缂╄繘杩涜澶勭悊
-            var arr = Fcode.Replace("\r\n","\n").Split('\n');
-            for(int i=3; i<arr.Length-1; i++) 
+            string miName = mi.Name;
+#if DEBUG
+#else
+            try
+#endif
             {
-                //if (arr[i].StartsWith("        "))
-                //{
-                //    //arr[i] = arr[i].Substring(4);
-                //}
-                //else if (arr[i].StartsWith("    "))
-                //{
-                //    arr[i] = "    " + arr[i];
-                //}
-                //else
+                switch (miName)
                 {
-                    arr[i] = "            " + arr[i];
+                    case "TMethod0": return lib.TMethod0(param, wParam, gParam, cParam);
+                    case "TMethod1": return lib.TMethod1(param, wParam, gParam, cParam);
+                    case "TMethod2": return lib.TMethod2(param, wParam, gParam, cParam);
+                    case "TMethod3": return lib.TMethod3(param, wParam, gParam, cParam);
+                    case "TMethod4": return lib.TMethod4(param, wParam, gParam, cParam);
+                    case "TMethod5": return lib.TMethod5(param, wParam, gParam, cParam);
+                    case "TMethod6": return lib.TMethod6(param, wParam, gParam, cParam);
+                    case "TMethod7": return lib.TMethod7(param, wParam, gParam, cParam);
+                    case "TMethod8": return lib.TMethod8(param, wParam, gParam, cParam);
+                    case "TMethod9": return lib.TMethod9(param, wParam, gParam, cParam);
+                    case "TMethod10": return lib.TMethod10(param, wParam, gParam, cParam);
+                    case "TMethod11": return lib.TMethod11(param, wParam, gParam, cParam);
+                    case "TMethod12": return lib.TMethod12(param, wParam, gParam, cParam);
+                    case "TMethod13": return lib.TMethod13(param, wParam, gParam, cParam);
+                    case "TMethod14": return lib.TMethod14(param, wParam, gParam, cParam);
+                    case "TMethod15": return lib.TMethod15(param, wParam, gParam, cParam);
+                    case "TMethod16": return lib.TMethod16(param, wParam, gParam, cParam);
+                    case "TMethod17": return lib.TMethod17(param, wParam, gParam, cParam);
+                    case "TMethod18": return lib.TMethod18(param, wParam, gParam, cParam);
+                    case "TMethod19": return lib.TMethod19(param, wParam, gParam, cParam);
+                    case "TMethod20": return lib.TMethod20(param, wParam, gParam, cParam);
+                    case "TMethod21": return lib.TMethod21(param, wParam, gParam, cParam);
+                    case "TMethod22": return lib.TMethod22(param, wParam, gParam, cParam);
+                    case "TMethod23": return lib.TMethod23(param, wParam, gParam, cParam);
+                    case "TMethod24": return lib.TMethod24(param, wParam, gParam, cParam);
+                    case "TMethod25": return lib.TMethod25(param, wParam, gParam, cParam);
+                    case "TMethod26": return lib.TMethod26(param, wParam, gParam, cParam);
+                    case "TMethod27": return lib.TMethod27(param, wParam, gParam, cParam);
+                    case "TMethod28": return lib.TMethod28(param, wParam, gParam, cParam);
+                    case "TMethod29": return lib.TMethod29(param, wParam, gParam, cParam);
+                    case "TMethod30": return lib.TMethod30(param, wParam, gParam, cParam);
+                    case "TMethod31": return lib.TMethod31(param, wParam, gParam, cParam);
+                    case "TMethod32": return lib.TMethod32(param, wParam, gParam, cParam);
+                    case "TMethod33": return lib.TMethod33(param, wParam, gParam, cParam);
+                    case "TMethod34": return lib.TMethod34(param, wParam, gParam, cParam);
+                    case "TMethod35": return lib.TMethod35(param, wParam, gParam, cParam);
+                    case "TMethod36": return lib.TMethod36(param, wParam, gParam, cParam);
+                    case "TMethod37": return lib.TMethod37(param, wParam, gParam, cParam);
+                    case "TMethod38": return lib.TMethod38(param, wParam, gParam, cParam);
+                    case "TMethod39": return lib.TMethod39(param, wParam, gParam, cParam);
+                    case "TMethod40": return lib.TMethod40(param, wParam, gParam, cParam);
+                    case "TMethod41": return lib.TMethod41(param, wParam, gParam, cParam);
+                    case "TMethod42": return lib.TMethod42(param, wParam, gParam, cParam);
+                    case "TMethod43": return lib.TMethod43(param, wParam, gParam, cParam);
+                    case "TMethod44": return lib.TMethod44(param, wParam, gParam, cParam);
+                    case "TMethod45": return lib.TMethod45(param, wParam, gParam, cParam);
+                    case "TMethod46": return lib.TMethod46(param, wParam, gParam, cParam);
+                    case "TMethod47": return lib.TMethod47(param, wParam, gParam, cParam);
+                    case "TMethod48": return lib.TMethod48(param, wParam, gParam, cParam);
+                    case "TMethod49": return lib.TMethod49(param, wParam, gParam, cParam);
+                    case "TMethod50": return lib.TMethod50(param, wParam, gParam, cParam);
+                    case "TMethod51": return lib.TMethod51(param, wParam, gParam, cParam);
+                    case "TMethod52": return lib.TMethod52(param, wParam, gParam, cParam);
+                    case "TMethod53": return lib.TMethod53(param, wParam, gParam, cParam);
+                    case "TMethod54": return lib.TMethod54(param, wParam, gParam, cParam);
+                    case "TMethod55": return lib.TMethod55(param, wParam, gParam, cParam);
+                    case "TMethod56": return lib.TMethod56(param, wParam, gParam, cParam);
+                    case "TMethod57": return lib.TMethod57(param, wParam, gParam, cParam);
+                    case "TMethod58": return lib.TMethod58(param, wParam, gParam, cParam);
+                    case "TMethod59": return lib.TMethod59(param, wParam, gParam, cParam);
+                    case "TMethod60": return lib.TMethod60(param, wParam, gParam, cParam);
+                    case "TMethod61": return lib.TMethod61(param, wParam, gParam, cParam);
+                    case "TMethod62": return lib.TMethod62(param, wParam, gParam, cParam);
+                    case "TMethod63": return lib.TMethod63(param, wParam, gParam, cParam);
+                    case "TMethod64": return lib.TMethod64(param, wParam, gParam, cParam);
+                    case "TMethod65": return lib.TMethod65(param, wParam, gParam, cParam);
+                    case "TMethod66": return lib.TMethod66(param, wParam, gParam, cParam);
+                    case "TMethod67": return lib.TMethod67(param, wParam, gParam, cParam);
+                    case "TMethod68": return lib.TMethod68(param, wParam, gParam, cParam);
+                    case "TMethod69": return lib.TMethod69(param, wParam, gParam, cParam);
+                    case "TMethod70": return lib.TMethod70(param, wParam, gParam, cParam);
+                    case "TMethod71": return lib.TMethod71(param, wParam, gParam, cParam);
+                    case "TMethod72": return lib.TMethod72(param, wParam, gParam, cParam);
+                    case "TMethod73": return lib.TMethod73(param, wParam, gParam, cParam);
+                    case "TMethod74": return lib.TMethod74(param, wParam, gParam, cParam);
+                    case "TMethod75": return lib.TMethod75(param, wParam, gParam, cParam);
+                    case "TMethod76": return lib.TMethod76(param, wParam, gParam, cParam);
+                    case "TMethod77": return lib.TMethod77(param, wParam, gParam, cParam);
+                    case "TMethod78": return lib.TMethod78(param, wParam, gParam, cParam);
+                    case "TMethod79": return lib.TMethod79(param, wParam, gParam, cParam);
+                    case "TMethod80": return lib.TMethod80(param, wParam, gParam, cParam);
+                    case "TMethod81": return lib.TMethod81(param, wParam, gParam, cParam);
+                    case "TMethod82": return lib.TMethod82(param, wParam, gParam, cParam);
+                    case "TMethod83": return lib.TMethod83(param, wParam, gParam, cParam);
+                    case "TMethod84": return lib.TMethod84(param, wParam, gParam, cParam);
+                    case "TMethod85": return lib.TMethod85(param, wParam, gParam, cParam);
+                    case "TMethod86": return lib.TMethod86(param, wParam, gParam, cParam);
+                    case "TMethod87": return lib.TMethod87(param, wParam, gParam, cParam);
+                    case "TMethod88": return lib.TMethod88(param, wParam, gParam, cParam);
+                    case "TMethod89": return lib.TMethod89(param, wParam, gParam, cParam);
+                    case "TMethod90": return lib.TMethod90(param, wParam, gParam, cParam);
+                    case "TMethod91": return lib.TMethod91(param, wParam, gParam, cParam);
+                    case "TMethod92": return lib.TMethod92(param, wParam, gParam, cParam);
+                    case "TMethod93": return lib.TMethod93(param, wParam, gParam, cParam);
+                    case "TMethod94": return lib.TMethod94(param, wParam, gParam, cParam);
+                    case "TMethod95": return lib.TMethod95(param, wParam, gParam, cParam);
+                    case "TMethod96": return lib.TMethod96(param, wParam, gParam, cParam);
+                    case "TMethod97": return lib.TMethod97(param, wParam, gParam, cParam);
+                    case "TMethod98": return lib.TMethod98(param, wParam, gParam, cParam);
+                    case "TMethod99": return lib.TMethod99(param, wParam, gParam, cParam);
+                    case "TMethod100": return lib.TMethod100(param, wParam, gParam, cParam);
+                    case "TMethod101": return lib.TMethod101(param, wParam, gParam, cParam);
+                    case "TMethod102": return lib.TMethod102(param, wParam, gParam, cParam);
+                    case "TMethod103": return lib.TMethod103(param, wParam, gParam, cParam);
+                    case "TMethod104": return lib.TMethod104(param, wParam, gParam, cParam);
+                    case "TMethod105": return lib.TMethod105(param, wParam, gParam, cParam);
+                    case "TMethod106": return lib.TMethod106(param, wParam, gParam, cParam);
+                    case "TMethod107": return lib.TMethod107(param, wParam, gParam, cParam);
+                    case "TMethod108": return lib.TMethod108(param, wParam, gParam, cParam);
+                    case "TMethod109": return lib.TMethod109(param, wParam, gParam, cParam);
+                    case "TMethod110": return lib.TMethod110(param, wParam, gParam, cParam);
+                    case "TMethod111": return lib.TMethod111(param, wParam, gParam, cParam);
+                    case "TMethod112": return lib.TMethod112(param, wParam, gParam, cParam);
+                    case "TMethod113": return lib.TMethod113(param, wParam, gParam, cParam);
+                    case "TMethod114": return lib.TMethod114(param, wParam, gParam, cParam);
+                    case "TMethod115": return lib.TMethod115(param, wParam, gParam, cParam);
+                    case "TMethod116": return lib.TMethod116(param, wParam, gParam, cParam);
+                    case "TMethod117": return lib.TMethod117(param, wParam, gParam, cParam);
+                    case "TMethod118": return lib.TMethod118(param, wParam, gParam, cParam);
+                    case "TMethod119": return lib.TMethod119(param, wParam, gParam, cParam);
+                    case "TMethod120": return lib.TMethod120(param, wParam, gParam, cParam);
+                    case "TMethod121": return lib.TMethod121(param, wParam, gParam, cParam);
+                    case "TMethod122": return lib.TMethod122(param, wParam, gParam, cParam);
+                    case "TMethod123": return lib.TMethod123(param, wParam, gParam, cParam);
+                    case "TMethod124": return lib.TMethod124(param, wParam, gParam, cParam);
+                    case "TMethod125": return lib.TMethod125(param, wParam, gParam, cParam);
+                    case "TMethod126": return lib.TMethod126(param, wParam, gParam, cParam);
+                    case "TMethod127": return lib.TMethod127(param, wParam, gParam, cParam);
+                    case "TMethod128": return lib.TMethod128(param, wParam, gParam, cParam);
+                    case "TMethod129": return lib.TMethod129(param, wParam, gParam, cParam);
+                    case "TMethod130": return lib.TMethod130(param, wParam, gParam, cParam);
+                    case "TMethod131": return lib.TMethod131(param, wParam, gParam, cParam);
+                    case "TMethod132": return lib.TMethod132(param, wParam, gParam, cParam);
+                    case "TMethod133": return lib.TMethod133(param, wParam, gParam, cParam);
+                    case "TMethod134": return lib.TMethod134(param, wParam, gParam, cParam);
+                    case "TMethod135": return lib.TMethod135(param, wParam, gParam, cParam);
+                    case "TMethod136": return lib.TMethod136(param, wParam, gParam, cParam);
+                    case "TMethod137": return lib.TMethod137(param, wParam, gParam, cParam);
+                    case "TMethod138": return lib.TMethod138(param, wParam, gParam, cParam);
+                    case "TMethod139": return lib.TMethod139(param, wParam, gParam, cParam);
+                    case "TMethod140": return lib.TMethod140(param, wParam, gParam, cParam);
+                    case "TMethod141": return lib.TMethod141(param, wParam, gParam, cParam);
+                    case "TMethod142": return lib.TMethod142(param, wParam, gParam, cParam);
+                    case "TMethod143": return lib.TMethod143(param, wParam, gParam, cParam);
+                    case "TMethod144": return lib.TMethod144(param, wParam, gParam, cParam);
+                    case "TMethod145": return lib.TMethod145(param, wParam, gParam, cParam);
+                    case "TMethod146": return lib.TMethod146(param, wParam, gParam, cParam);
+                    case "TMethod147": return lib.TMethod147(param, wParam, gParam, cParam);
+                    case "TMethod148": return lib.TMethod148(param, wParam, gParam, cParam);
+                    case "TMethod149": return lib.TMethod149(param, wParam, gParam, cParam);
+                    case "TMethod150": return lib.TMethod150(param, wParam, gParam, cParam);
+                    case "TMethod151": return lib.TMethod151(param, wParam, gParam, cParam);
+                    case "TMethod152": return lib.TMethod152(param, wParam, gParam, cParam);
+                    case "TMethod153": return lib.TMethod153(param, wParam, gParam, cParam);
+                    case "TMethod154": return lib.TMethod154(param, wParam, gParam, cParam);
+                    case "TMethod155": return lib.TMethod155(param, wParam, gParam, cParam);
+                    case "TMethod156": return lib.TMethod156(param, wParam, gParam, cParam);
+                    case "TMethod157": return lib.TMethod157(param, wParam, gParam, cParam);
+                    case "TMethod158": return lib.TMethod158(param, wParam, gParam, cParam);
+                    case "TMethod159": return lib.TMethod159(param, wParam, gParam, cParam);
+                    case "TMethod160": return lib.TMethod160(param, wParam, gParam, cParam);
+                    case "TMethod161": return lib.TMethod161(param, wParam, gParam, cParam);
+                    case "TMethod162": return lib.TMethod162(param, wParam, gParam, cParam);
+                    case "TMethod163": return lib.TMethod163(param, wParam, gParam, cParam);
+                    case "TMethod164": return lib.TMethod164(param, wParam, gParam, cParam);
+                    case "TMethod165": return lib.TMethod165(param, wParam, gParam, cParam);
+                    case "TMethod166": return lib.TMethod166(param, wParam, gParam, cParam);
+                    case "TMethod167": return lib.TMethod167(param, wParam, gParam, cParam);
+                    case "TMethod168": return lib.TMethod168(param, wParam, gParam, cParam);
+                    case "TMethod169": return lib.TMethod169(param, wParam, gParam, cParam);
+                    case "TMethod170": return lib.TMethod170(param, wParam, gParam, cParam);
+                    case "TMethod171": return lib.TMethod171(param, wParam, gParam, cParam);
+                    case "TMethod172": return lib.TMethod172(param, wParam, gParam, cParam);
+                    case "TMethod173": return lib.TMethod173(param, wParam, gParam, cParam);
+                    case "TMethod174": return lib.TMethod174(param, wParam, gParam, cParam);
+                    case "TMethod175": return lib.TMethod175(param, wParam, gParam, cParam);
+                    case "TMethod176": return lib.TMethod176(param, wParam, gParam, cParam);
+                    case "TMethod177": return lib.TMethod177(param, wParam, gParam, cParam);
+                    case "TMethod178": return lib.TMethod178(param, wParam, gParam, cParam);
+                    case "TMethod179": return lib.TMethod179(param, wParam, gParam, cParam);
+                    case "TMethod180": return lib.TMethod180(param, wParam, gParam, cParam);
+                    case "TMethod181": return lib.TMethod181(param, wParam, gParam, cParam);
+                    case "TMethod182": return lib.TMethod182(param, wParam, gParam, cParam);
+                    case "TMethod183": return lib.TMethod183(param, wParam, gParam, cParam);
+                    case "TMethod184": return lib.TMethod184(param, wParam, gParam, cParam);
+                    case "TMethod185": return lib.TMethod185(param, wParam, gParam, cParam);
+                    case "TMethod186": return lib.TMethod186(param, wParam, gParam, cParam);
+                    case "TMethod187": return lib.TMethod187(param, wParam, gParam, cParam);
+                    case "TMethod188": return lib.TMethod188(param, wParam, gParam, cParam);
+                    case "TMethod189": return lib.TMethod189(param, wParam, gParam, cParam);
+                    case "TMethod190": return lib.TMethod190(param, wParam, gParam, cParam);
+                    case "TMethod191": return lib.TMethod191(param, wParam, gParam, cParam);
+                    case "TMethod192": return lib.TMethod192(param, wParam, gParam, cParam);
+                    case "TMethod193": return lib.TMethod193(param, wParam, gParam, cParam);
+                    case "TMethod194": return lib.TMethod194(param, wParam, gParam, cParam);
+                    case "TMethod195": return lib.TMethod195(param, wParam, gParam, cParam);
+                    case "TMethod196": return lib.TMethod196(param, wParam, gParam, cParam);
+                    case "TMethod197": return lib.TMethod197(param, wParam, gParam, cParam);
+                    case "TMethod198": return lib.TMethod198(param, wParam, gParam, cParam);
+                    case "TMethod199": return lib.TMethod199(param, wParam, gParam, cParam);
+                    case "TMethod200": return lib.TMethod200(param, wParam, gParam, cParam);
+                    case "TMethod201": return lib.TMethod201(param, wParam, gParam, cParam);
+                    case "TMethod202": return lib.TMethod202(param, wParam, gParam, cParam);
+                    case "TMethod203": return lib.TMethod203(param, wParam, gParam, cParam);
+                    case "TMethod204": return lib.TMethod204(param, wParam, gParam, cParam);
+                    case "TMethod205": return lib.TMethod205(param, wParam, gParam, cParam);
+                    case "TMethod206": return lib.TMethod206(param, wParam, gParam, cParam);
+                    case "TMethod207": return lib.TMethod207(param, wParam, gParam, cParam);
+                    case "TMethod208": return lib.TMethod208(param, wParam, gParam, cParam);
+                    case "TMethod209": return lib.TMethod209(param, wParam, gParam, cParam);
+                    case "TMethod210": return lib.TMethod210(param, wParam, gParam, cParam);
+                    case "TMethod211": return lib.TMethod211(param, wParam, gParam, cParam);
+                    case "TMethod212": return lib.TMethod212(param, wParam, gParam, cParam);
+                    case "TMethod213": return lib.TMethod213(param, wParam, gParam, cParam);
+                    case "TMethod214": return lib.TMethod214(param, wParam, gParam, cParam);
+                    case "TMethod215": return lib.TMethod215(param, wParam, gParam, cParam);
+                    case "TMethod216": return lib.TMethod216(param, wParam, gParam, cParam);
+                    case "TMethod217": return lib.TMethod217(param, wParam, gParam, cParam);
+                    case "TMethod218": return lib.TMethod218(param, wParam, gParam, cParam);
+                    case "TMethod219": return lib.TMethod219(param, wParam, gParam, cParam);
+                    case "TMethod220": return lib.TMethod220(param, wParam, gParam, cParam);
+                    case "TMethod221": return lib.TMethod221(param, wParam, gParam, cParam);
+                    case "TMethod222": return lib.TMethod222(param, wParam, gParam, cParam);
+                    case "TMethod223": return lib.TMethod223(param, wParam, gParam, cParam);
+                    case "TMethod224": return lib.TMethod224(param, wParam, gParam, cParam);
+                    case "TMethod225": return lib.TMethod225(param, wParam, gParam, cParam);
+                    case "TMethod226": return lib.TMethod226(param, wParam, gParam, cParam);
+                    case "TMethod227": return lib.TMethod227(param, wParam, gParam, cParam);
+                    case "TMethod228": return lib.TMethod228(param, wParam, gParam, cParam);
+                    case "TMethod229": return lib.TMethod229(param, wParam, gParam, cParam);
+                    case "TMethod230": return lib.TMethod230(param, wParam, gParam, cParam);
+                    case "TMethod231": return lib.TMethod231(param, wParam, gParam, cParam);
+                    case "TMethod232": return lib.TMethod232(param, wParam, gParam, cParam);
+                    case "TMethod233": return lib.TMethod233(param, wParam, gParam, cParam);
+                    case "TMethod234": return lib.TMethod234(param, wParam, gParam, cParam);
+                    case "TMethod235": return lib.TMethod235(param, wParam, gParam, cParam);
+                    case "TMethod236": return lib.TMethod236(param, wParam, gParam, cParam);
+                    case "TMethod237": return lib.TMethod237(param, wParam, gParam, cParam);
+                    case "TMethod238": return lib.TMethod238(param, wParam, gParam, cParam);
+                    case "TMethod239": return lib.TMethod239(param, wParam, gParam, cParam);
+                    case "TMethod240": return lib.TMethod240(param, wParam, gParam, cParam);
+                    case "TMethod241": return lib.TMethod241(param, wParam, gParam, cParam);
+                    case "TMethod242": return lib.TMethod242(param, wParam, gParam, cParam);
+                    case "TMethod243": return lib.TMethod243(param, wParam, gParam, cParam);
+                    case "TMethod244": return lib.TMethod244(param, wParam, gParam, cParam);
+                    case "TMethod245": return lib.TMethod245(param, wParam, gParam, cParam);
+                    case "TMethod246": return lib.TMethod246(param, wParam, gParam, cParam);
+                    case "TMethod247": return lib.TMethod247(param, wParam, gParam, cParam);
+                    case "TMethod248": return lib.TMethod248(param, wParam, gParam, cParam);
+                    case "TMethod249": return lib.TMethod249(param, wParam, gParam, cParam);
+                    case "TMethod250": return lib.TMethod250(param, wParam, gParam, cParam);
+                    case "TMethod251": return lib.TMethod251(param, wParam, gParam, cParam);
+                    case "TMethod252": return lib.TMethod252(param, wParam, gParam, cParam);
+                    case "TMethod253": return lib.TMethod253(param, wParam, gParam, cParam);
+                    case "TMethod254": return lib.TMethod254(param, wParam, gParam, cParam);
+                    case "TMethod255": return lib.TMethod255(param, wParam, gParam, cParam);
+                    case "TMethod256": return lib.TMethod256(param, wParam, gParam, cParam);
+                    case "TMethod257": return lib.TMethod257(param, wParam, gParam, cParam);
+                    case "TMethod258": return lib.TMethod258(param, wParam, gParam, cParam);
+                    case "TMethod259": return lib.TMethod259(param, wParam, gParam, cParam);
+                    case "TMethod260": return lib.TMethod260(param, wParam, gParam, cParam);
+                    case "TMethod261": return lib.TMethod261(param, wParam, gParam, cParam);
+                    case "TMethod262": return lib.TMethod262(param, wParam, gParam, cParam);
+                    case "TMethod263": return lib.TMethod263(param, wParam, gParam, cParam);
+                    case "TMethod264": return lib.TMethod264(param, wParam, gParam, cParam);
+                    case "TMethod265": return lib.TMethod265(param, wParam, gParam, cParam);
+                    case "TMethod266": return lib.TMethod266(param, wParam, gParam, cParam);
+                    case "TMethod267": return lib.TMethod267(param, wParam, gParam, cParam);
+                    case "TMethod268": return lib.TMethod268(param, wParam, gParam, cParam);
+                    case "TMethod269": return lib.TMethod269(param, wParam, gParam, cParam);
+                    case "TMethod270": return lib.TMethod270(param, wParam, gParam, cParam);
+                    case "TMethod271": return lib.TMethod271(param, wParam, gParam, cParam);
+                    case "TMethod272": return lib.TMethod272(param, wParam, gParam, cParam);
+                    case "TMethod273": return lib.TMethod273(param, wParam, gParam, cParam);
+                    case "TMethod274": return lib.TMethod274(param, wParam, gParam, cParam);
+                    case "TMethod275": return lib.TMethod275(param, wParam, gParam, cParam);
+                    case "TMethod276": return lib.TMethod276(param, wParam, gParam, cParam);
+                    case "TMethod277": return lib.TMethod277(param, wParam, gParam, cParam);
+                    case "TMethod278": return lib.TMethod278(param, wParam, gParam, cParam);
+                    case "TMethod279": return lib.TMethod279(param, wParam, gParam, cParam);
+                    case "TMethod280": return lib.TMethod280(param, wParam, gParam, cParam);
+                    case "TMethod281": return lib.TMethod281(param, wParam, gParam, cParam);
+                    case "TMethod282": return lib.TMethod282(param, wParam, gParam, cParam);
+                    case "TMethod283": return lib.TMethod283(param, wParam, gParam, cParam);
+                    case "TMethod284": return lib.TMethod284(param, wParam, gParam, cParam);
+                    case "TMethod285": return lib.TMethod285(param, wParam, gParam, cParam);
+                    case "TMethod286": return lib.TMethod286(param, wParam, gParam, cParam);
+                    case "TMethod287": return lib.TMethod287(param, wParam, gParam, cParam);
+                    case "TMethod288": return lib.TMethod288(param, wParam, gParam, cParam);
+                    case "TMethod289": return lib.TMethod289(param, wParam, gParam, cParam);
+                    case "TMethod290": return lib.TMethod290(param, wParam, gParam, cParam);
+                    case "TMethod291": return lib.TMethod291(param, wParam, gParam, cParam);
+                    case "TMethod292": return lib.TMethod292(param, wParam, gParam, cParam);
+                    case "TMethod293": return lib.TMethod293(param, wParam, gParam, cParam);
+                    case "TMethod294": return lib.TMethod294(param, wParam, gParam, cParam);
+                    case "TMethod295": return lib.TMethod295(param, wParam, gParam, cParam);
+                    case "TMethod296": return lib.TMethod296(param, wParam, gParam, cParam);
+                    case "TMethod297": return lib.TMethod297(param, wParam, gParam, cParam);
+                    case "TMethod298": return lib.TMethod298(param, wParam, gParam, cParam);
+                    case "TMethod299": return lib.TMethod299(param, wParam, gParam, cParam);
+                    case "TMethod300": return lib.TMethod300(param, wParam, gParam, cParam);
+
+                }
+
+            }
+#if DEBUG
+#else
+            catch (Exception ex)
+            {
+                var x = ex.Message;
+                //throw (ex);
+                
+            }
+#endif
+
+
+            return -999;
+        }
+        public static double DoGetResult(dynamic lib, MethodInfo mi, List<double> paramArray, List<double[]> patternArray = null, LogicModelParams param = null, GeneticParams gParam = null)
+        {
+            string miName = mi.Name;
+#if DEBUG
+#else
+            try
+#endif
+            
+            {
+                switch (miName)
+                {
+                    case "TMethod0": return lib.TMethod0(paramArray, patternArray, param, gParam);
+                    case "TMethod1": return lib.TMethod1(paramArray, patternArray, param, gParam);
+                    case "TMethod2": return lib.TMethod2(paramArray, patternArray, param, gParam);
+                    case "TMethod3": return lib.TMethod3(paramArray, patternArray, param, gParam);
+                    case "TMethod4": return lib.TMethod4(paramArray, patternArray, param, gParam);
+                    case "TMethod5": return lib.TMethod5(paramArray, patternArray, param, gParam);
+                    case "TMethod6": return lib.TMethod6(paramArray, patternArray, param, gParam);
+                    case "TMethod7": return lib.TMethod7(paramArray, patternArray, param, gParam);
+                    case "TMethod8": return lib.TMethod8(paramArray, patternArray, param, gParam);
+                    case "TMethod9": return lib.TMethod9(paramArray, patternArray, param, gParam);
+                    case "TMethod10": return lib.TMethod10(paramArray, patternArray, param, gParam);
+                    case "TMethod11": return lib.TMethod11(paramArray, patternArray, param, gParam);
+                    case "TMethod12": return lib.TMethod12(paramArray, patternArray, param, gParam);
+                    case "TMethod13": return lib.TMethod13(paramArray, patternArray, param, gParam);
+                    case "TMethod14": return lib.TMethod14(paramArray, patternArray, param, gParam);
+                    case "TMethod15": return lib.TMethod15(paramArray, patternArray, param, gParam);
+                    case "TMethod16": return lib.TMethod16(paramArray, patternArray, param, gParam);
+                    case "TMethod17": return lib.TMethod17(paramArray, patternArray, param, gParam);
+                    case "TMethod18": return lib.TMethod18(paramArray, patternArray, param, gParam);
+                    case "TMethod19": return lib.TMethod19(paramArray, patternArray, param, gParam);
+                    case "TMethod20": return lib.TMethod20(paramArray, patternArray, param, gParam);
+                    case "TMethod21": return lib.TMethod21(paramArray, patternArray, param, gParam);
+                    case "TMethod22": return lib.TMethod22(paramArray, patternArray, param, gParam);
+                    case "TMethod23": return lib.TMethod23(paramArray, patternArray, param, gParam);
+                    case "TMethod24": return lib.TMethod24(paramArray, patternArray, param, gParam);
+                    case "TMethod25": return lib.TMethod25(paramArray, patternArray, param, gParam);
+                    case "TMethod26": return lib.TMethod26(paramArray, patternArray, param, gParam);
+                    case "TMethod27": return lib.TMethod27(paramArray, patternArray, param, gParam);
+                    case "TMethod28": return lib.TMethod28(paramArray, patternArray, param, gParam);
+                    case "TMethod29": return lib.TMethod29(paramArray, patternArray, param, gParam);
+                    case "TMethod30": return lib.TMethod30(paramArray, patternArray, param, gParam);
+                    case "TMethod31": return lib.TMethod31(paramArray, patternArray, param, gParam);
+                    case "TMethod32": return lib.TMethod32(paramArray, patternArray, param, gParam);
+                    case "TMethod33": return lib.TMethod33(paramArray, patternArray, param, gParam);
+                    case "TMethod34": return lib.TMethod34(paramArray, patternArray, param, gParam);
+                    case "TMethod35": return lib.TMethod35(paramArray, patternArray, param, gParam);
+                    case "TMethod36": return lib.TMethod36(paramArray, patternArray, param, gParam);
+                    case "TMethod37": return lib.TMethod37(paramArray, patternArray, param, gParam);
+                    case "TMethod38": return lib.TMethod38(paramArray, patternArray, param, gParam);
+                    case "TMethod39": return lib.TMethod39(paramArray, patternArray, param, gParam);
+                    case "TMethod40": return lib.TMethod40(paramArray, patternArray, param, gParam);
+                    case "TMethod41": return lib.TMethod41(paramArray, patternArray, param, gParam);
+                    case "TMethod42": return lib.TMethod42(paramArray, patternArray, param, gParam);
+                    case "TMethod43": return lib.TMethod43(paramArray, patternArray, param, gParam);
+                    case "TMethod44": return lib.TMethod44(paramArray, patternArray, param, gParam);
+                    case "TMethod45": return lib.TMethod45(paramArray, patternArray, param, gParam);
+                    case "TMethod46": return lib.TMethod46(paramArray, patternArray, param, gParam);
+                    case "TMethod47": return lib.TMethod47(paramArray, patternArray, param, gParam);
+                    case "TMethod48": return lib.TMethod48(paramArray, patternArray, param, gParam);
+                    case "TMethod49": return lib.TMethod49(paramArray, patternArray, param, gParam);
+                    case "TMethod50": return lib.TMethod50(paramArray, patternArray, param, gParam);
+                    case "TMethod51": return lib.TMethod51(paramArray, patternArray, param, gParam);
+                    case "TMethod52": return lib.TMethod52(paramArray, patternArray, param, gParam);
+                    case "TMethod53": return lib.TMethod53(paramArray, patternArray, param, gParam);
+                    case "TMethod54": return lib.TMethod54(paramArray, patternArray, param, gParam);
+                    case "TMethod55": return lib.TMethod55(paramArray, patternArray, param, gParam);
+                    case "TMethod56": return lib.TMethod56(paramArray, patternArray, param, gParam);
+                    case "TMethod57": return lib.TMethod57(paramArray, patternArray, param, gParam);
+                    case "TMethod58": return lib.TMethod58(paramArray, patternArray, param, gParam);
+                    case "TMethod59": return lib.TMethod59(paramArray, patternArray, param, gParam);
+                    case "TMethod60": return lib.TMethod60(paramArray, patternArray, param, gParam);
+                    case "TMethod61": return lib.TMethod61(paramArray, patternArray, param, gParam);
+                    case "TMethod62": return lib.TMethod62(paramArray, patternArray, param, gParam);
+                    case "TMethod63": return lib.TMethod63(paramArray, patternArray, param, gParam);
+                    case "TMethod64": return lib.TMethod64(paramArray, patternArray, param, gParam);
+                    case "TMethod65": return lib.TMethod65(paramArray, patternArray, param, gParam);
+                    case "TMethod66": return lib.TMethod66(paramArray, patternArray, param, gParam);
+                    case "TMethod67": return lib.TMethod67(paramArray, patternArray, param, gParam);
+                    case "TMethod68": return lib.TMethod68(paramArray, patternArray, param, gParam);
+                    case "TMethod69": return lib.TMethod69(paramArray, patternArray, param, gParam);
+                    case "TMethod70": return lib.TMethod70(paramArray, patternArray, param, gParam);
+                    case "TMethod71": return lib.TMethod71(paramArray, patternArray, param, gParam);
+                    case "TMethod72": return lib.TMethod72(paramArray, patternArray, param, gParam);
+                    case "TMethod73": return lib.TMethod73(paramArray, patternArray, param, gParam);
+                    case "TMethod74": return lib.TMethod74(paramArray, patternArray, param, gParam);
+                    case "TMethod75": return lib.TMethod75(paramArray, patternArray, param, gParam);
+                    case "TMethod76": return lib.TMethod76(paramArray, patternArray, param, gParam);
+                    case "TMethod77": return lib.TMethod77(paramArray, patternArray, param, gParam);
+                    case "TMethod78": return lib.TMethod78(paramArray, patternArray, param, gParam);
+                    case "TMethod79": return lib.TMethod79(paramArray, patternArray, param, gParam);
+                    case "TMethod80": return lib.TMethod80(paramArray, patternArray, param, gParam);
+                    case "TMethod81": return lib.TMethod81(paramArray, patternArray, param, gParam);
+                    case "TMethod82": return lib.TMethod82(paramArray, patternArray, param, gParam);
+                    case "TMethod83": return lib.TMethod83(paramArray, patternArray, param, gParam);
+                    case "TMethod84": return lib.TMethod84(paramArray, patternArray, param, gParam);
+                    case "TMethod85": return lib.TMethod85(paramArray, patternArray, param, gParam);
+                    case "TMethod86": return lib.TMethod86(paramArray, patternArray, param, gParam);
+                    case "TMethod87": return lib.TMethod87(paramArray, patternArray, param, gParam);
+                    case "TMethod88": return lib.TMethod88(paramArray, patternArray, param, gParam);
+                    case "TMethod89": return lib.TMethod89(paramArray, patternArray, param, gParam);
+                    case "TMethod90": return lib.TMethod90(paramArray, patternArray, param, gParam);
+                    case "TMethod91": return lib.TMethod91(paramArray, patternArray, param, gParam);
+                    case "TMethod92": return lib.TMethod92(paramArray, patternArray, param, gParam);
+                    case "TMethod93": return lib.TMethod93(paramArray, patternArray, param, gParam);
+                    case "TMethod94": return lib.TMethod94(paramArray, patternArray, param, gParam);
+                    case "TMethod95": return lib.TMethod95(paramArray, patternArray, param, gParam);
+                    case "TMethod96": return lib.TMethod96(paramArray, patternArray, param, gParam);
+                    case "TMethod97": return lib.TMethod97(paramArray, patternArray, param, gParam);
+                    case "TMethod98": return lib.TMethod98(paramArray, patternArray, param, gParam);
+                    case "TMethod99": return lib.TMethod99(paramArray, patternArray, param, gParam);
+                    case "TMethod100": return lib.TMethod100(paramArray, patternArray, param, gParam);
+                    case "TMethod101": return lib.TMethod101(paramArray, patternArray, param, gParam);
+                    case "TMethod102": return lib.TMethod102(paramArray, patternArray, param, gParam);
+                    case "TMethod103": return lib.TMethod103(paramArray, patternArray, param, gParam);
+                    case "TMethod104": return lib.TMethod104(paramArray, patternArray, param, gParam);
+                    case "TMethod105": return lib.TMethod105(paramArray, patternArray, param, gParam);
+                    case "TMethod106": return lib.TMethod106(paramArray, patternArray, param, gParam);
+                    case "TMethod107": return lib.TMethod107(paramArray, patternArray, param, gParam);
+                    case "TMethod108": return lib.TMethod108(paramArray, patternArray, param, gParam);
+                    case "TMethod109": return lib.TMethod109(paramArray, patternArray, param, gParam);
+                    case "TMethod110": return lib.TMethod110(paramArray, patternArray, param, gParam);
+                    case "TMethod111": return lib.TMethod111(paramArray, patternArray, param, gParam);
+                    case "TMethod112": return lib.TMethod112(paramArray, patternArray, param, gParam);
+                    case "TMethod113": return lib.TMethod113(paramArray, patternArray, param, gParam);
+                    case "TMethod114": return lib.TMethod114(paramArray, patternArray, param, gParam);
+                    case "TMethod115": return lib.TMethod115(paramArray, patternArray, param, gParam);
+                    case "TMethod116": return lib.TMethod116(paramArray, patternArray, param, gParam);
+                    case "TMethod117": return lib.TMethod117(paramArray, patternArray, param, gParam);
+                    case "TMethod118": return lib.TMethod118(paramArray, patternArray, param, gParam);
+                    case "TMethod119": return lib.TMethod119(paramArray, patternArray, param, gParam);
+                    case "TMethod120": return lib.TMethod120(paramArray, patternArray, param, gParam);
+                    case "TMethod121": return lib.TMethod121(paramArray, patternArray, param, gParam);
+                    case "TMethod122": return lib.TMethod122(paramArray, patternArray, param, gParam);
+                    case "TMethod123": return lib.TMethod123(paramArray, patternArray, param, gParam);
+                    case "TMethod124": return lib.TMethod124(paramArray, patternArray, param, gParam);
+                    case "TMethod125": return lib.TMethod125(paramArray, patternArray, param, gParam);
+                    case "TMethod126": return lib.TMethod126(paramArray, patternArray, param, gParam);
+                    case "TMethod127": return lib.TMethod127(paramArray, patternArray, param, gParam);
+                    case "TMethod128": return lib.TMethod128(paramArray, patternArray, param, gParam);
+                    case "TMethod129": return lib.TMethod129(paramArray, patternArray, param, gParam);
+                    case "TMethod130": return lib.TMethod130(paramArray, patternArray, param, gParam);
+                    case "TMethod131": return lib.TMethod131(paramArray, patternArray, param, gParam);
+                    case "TMethod132": return lib.TMethod132(paramArray, patternArray, param, gParam);
+                    case "TMethod133": return lib.TMethod133(paramArray, patternArray, param, gParam);
+                    case "TMethod134": return lib.TMethod134(paramArray, patternArray, param, gParam);
+                    case "TMethod135": return lib.TMethod135(paramArray, patternArray, param, gParam);
+                    case "TMethod136": return lib.TMethod136(paramArray, patternArray, param, gParam);
+                    case "TMethod137": return lib.TMethod137(paramArray, patternArray, param, gParam);
+                    case "TMethod138": return lib.TMethod138(paramArray, patternArray, param, gParam);
+                    case "TMethod139": return lib.TMethod139(paramArray, patternArray, param, gParam);
+                    case "TMethod140": return lib.TMethod140(paramArray, patternArray, param, gParam);
+                    case "TMethod141": return lib.TMethod141(paramArray, patternArray, param, gParam);
+                    case "TMethod142": return lib.TMethod142(paramArray, patternArray, param, gParam);
+                    case "TMethod143": return lib.TMethod143(paramArray, patternArray, param, gParam);
+                    case "TMethod144": return lib.TMethod144(paramArray, patternArray, param, gParam);
+                    case "TMethod145": return lib.TMethod145(paramArray, patternArray, param, gParam);
+                    case "TMethod146": return lib.TMethod146(paramArray, patternArray, param, gParam);
+                    case "TMethod147": return lib.TMethod147(paramArray, patternArray, param, gParam);
+                    case "TMethod148": return lib.TMethod148(paramArray, patternArray, param, gParam);
+                    case "TMethod149": return lib.TMethod149(paramArray, patternArray, param, gParam);
+                    case "TMethod150": return lib.TMethod150(paramArray, patternArray, param, gParam);
+                    case "TMethod151": return lib.TMethod151(paramArray, patternArray, param, gParam);
+                    case "TMethod152": return lib.TMethod152(paramArray, patternArray, param, gParam);
+                    case "TMethod153": return lib.TMethod153(paramArray, patternArray, param, gParam);
+                    case "TMethod154": return lib.TMethod154(paramArray, patternArray, param, gParam);
+                    case "TMethod155": return lib.TMethod155(paramArray, patternArray, param, gParam);
+                    case "TMethod156": return lib.TMethod156(paramArray, patternArray, param, gParam);
+                    case "TMethod157": return lib.TMethod157(paramArray, patternArray, param, gParam);
+                    case "TMethod158": return lib.TMethod158(paramArray, patternArray, param, gParam);
+                    case "TMethod159": return lib.TMethod159(paramArray, patternArray, param, gParam);
+                    case "TMethod160": return lib.TMethod160(paramArray, patternArray, param, gParam);
+                    case "TMethod161": return lib.TMethod161(paramArray, patternArray, param, gParam);
+                    case "TMethod162": return lib.TMethod162(paramArray, patternArray, param, gParam);
+                    case "TMethod163": return lib.TMethod163(paramArray, patternArray, param, gParam);
+                    case "TMethod164": return lib.TMethod164(paramArray, patternArray, param, gParam);
+                    case "TMethod165": return lib.TMethod165(paramArray, patternArray, param, gParam);
+                    case "TMethod166": return lib.TMethod166(paramArray, patternArray, param, gParam);
+                    case "TMethod167": return lib.TMethod167(paramArray, patternArray, param, gParam);
+                    case "TMethod168": return lib.TMethod168(paramArray, patternArray, param, gParam);
+                    case "TMethod169": return lib.TMethod169(paramArray, patternArray, param, gParam);
+                    case "TMethod170": return lib.TMethod170(paramArray, patternArray, param, gParam);
+                    case "TMethod171": return lib.TMethod171(paramArray, patternArray, param, gParam);
+                    case "TMethod172": return lib.TMethod172(paramArray, patternArray, param, gParam);
+                    case "TMethod173": return lib.TMethod173(paramArray, patternArray, param, gParam);
+                    case "TMethod174": return lib.TMethod174(paramArray, patternArray, param, gParam);
+                    case "TMethod175": return lib.TMethod175(paramArray, patternArray, param, gParam);
+                    case "TMethod176": return lib.TMethod176(paramArray, patternArray, param, gParam);
+                    case "TMethod177": return lib.TMethod177(paramArray, patternArray, param, gParam);
+                    case "TMethod178": return lib.TMethod178(paramArray, patternArray, param, gParam);
+                    case "TMethod179": return lib.TMethod179(paramArray, patternArray, param, gParam);
+                    case "TMethod180": return lib.TMethod180(paramArray, patternArray, param, gParam);
+                    case "TMethod181": return lib.TMethod181(paramArray, patternArray, param, gParam);
+                    case "TMethod182": return lib.TMethod182(paramArray, patternArray, param, gParam);
+                    case "TMethod183": return lib.TMethod183(paramArray, patternArray, param, gParam);
+                    case "TMethod184": return lib.TMethod184(paramArray, patternArray, param, gParam);
+                    case "TMethod185": return lib.TMethod185(paramArray, patternArray, param, gParam);
+                    case "TMethod186": return lib.TMethod186(paramArray, patternArray, param, gParam);
+                    case "TMethod187": return lib.TMethod187(paramArray, patternArray, param, gParam);
+                    case "TMethod188": return lib.TMethod188(paramArray, patternArray, param, gParam);
+                    case "TMethod189": return lib.TMethod189(paramArray, patternArray, param, gParam);
+                    case "TMethod190": return lib.TMethod190(paramArray, patternArray, param, gParam);
+                    case "TMethod191": return lib.TMethod191(paramArray, patternArray, param, gParam);
+                    case "TMethod192": return lib.TMethod192(paramArray, patternArray, param, gParam);
+                    case "TMethod193": return lib.TMethod193(paramArray, patternArray, param, gParam);
+                    case "TMethod194": return lib.TMethod194(paramArray, patternArray, param, gParam);
+                    case "TMethod195": return lib.TMethod195(paramArray, patternArray, param, gParam);
+                    case "TMethod196": return lib.TMethod196(paramArray, patternArray, param, gParam);
+                    case "TMethod197": return lib.TMethod197(paramArray, patternArray, param, gParam);
+                    case "TMethod198": return lib.TMethod198(paramArray, patternArray, param, gParam);
+                    case "TMethod199": return lib.TMethod199(paramArray, patternArray, param, gParam);
+                    case "TMethod200": return lib.TMethod200(paramArray, patternArray, param, gParam);
+                    case "TMethod201": return lib.TMethod201(paramArray, patternArray, param, gParam);
+                    case "TMethod202": return lib.TMethod202(paramArray, patternArray, param, gParam);
+                    case "TMethod203": return lib.TMethod203(paramArray, patternArray, param, gParam);
+                    case "TMethod204": return lib.TMethod204(paramArray, patternArray, param, gParam);
+                    case "TMethod205": return lib.TMethod205(paramArray, patternArray, param, gParam);
+                    case "TMethod206": return lib.TMethod206(paramArray, patternArray, param, gParam);
+                    case "TMethod207": return lib.TMethod207(paramArray, patternArray, param, gParam);
+                    case "TMethod208": return lib.TMethod208(paramArray, patternArray, param, gParam);
+                    case "TMethod209": return lib.TMethod209(paramArray, patternArray, param, gParam);
+                    case "TMethod210": return lib.TMethod210(paramArray, patternArray, param, gParam);
+                    case "TMethod211": return lib.TMethod211(paramArray, patternArray, param, gParam);
+                    case "TMethod212": return lib.TMethod212(paramArray, patternArray, param, gParam);
+                    case "TMethod213": return lib.TMethod213(paramArray, patternArray, param, gParam);
+                    case "TMethod214": return lib.TMethod214(paramArray, patternArray, param, gParam);
+                    case "TMethod215": return lib.TMethod215(paramArray, patternArray, param, gParam);
+                    case "TMethod216": return lib.TMethod216(paramArray, patternArray, param, gParam);
+                    case "TMethod217": return lib.TMethod217(paramArray, patternArray, param, gParam);
+                    case "TMethod218": return lib.TMethod218(paramArray, patternArray, param, gParam);
+                    case "TMethod219": return lib.TMethod219(paramArray, patternArray, param, gParam);
+                    case "TMethod220": return lib.TMethod220(paramArray, patternArray, param, gParam);
+                    case "TMethod221": return lib.TMethod221(paramArray, patternArray, param, gParam);
+                    case "TMethod222": return lib.TMethod222(paramArray, patternArray, param, gParam);
+                    case "TMethod223": return lib.TMethod223(paramArray, patternArray, param, gParam);
+                    case "TMethod224": return lib.TMethod224(paramArray, patternArray, param, gParam);
+                    case "TMethod225": return lib.TMethod225(paramArray, patternArray, param, gParam);
+                    case "TMethod226": return lib.TMethod226(paramArray, patternArray, param, gParam);
+                    case "TMethod227": return lib.TMethod227(paramArray, patternArray, param, gParam);
+                    case "TMethod228": return lib.TMethod228(paramArray, patternArray, param, gParam);
+                    case "TMethod229": return lib.TMethod229(paramArray, patternArray, param, gParam);
+                    case "TMethod230": return lib.TMethod230(paramArray, patternArray, param, gParam);
+                    case "TMethod231": return lib.TMethod231(paramArray, patternArray, param, gParam);
+                    case "TMethod232": return lib.TMethod232(paramArray, patternArray, param, gParam);
+                    case "TMethod233": return lib.TMethod233(paramArray, patternArray, param, gParam);
+                    case "TMethod234": return lib.TMethod234(paramArray, patternArray, param, gParam);
+                    case "TMethod235": return lib.TMethod235(paramArray, patternArray, param, gParam);
+                    case "TMethod236": return lib.TMethod236(paramArray, patternArray, param, gParam);
+                    case "TMethod237": return lib.TMethod237(paramArray, patternArray, param, gParam);
+                    case "TMethod238": return lib.TMethod238(paramArray, patternArray, param, gParam);
+                    case "TMethod239": return lib.TMethod239(paramArray, patternArray, param, gParam);
+                    case "TMethod240": return lib.TMethod240(paramArray, patternArray, param, gParam);
+                    case "TMethod241": return lib.TMethod241(paramArray, patternArray, param, gParam);
+                    case "TMethod242": return lib.TMethod242(paramArray, patternArray, param, gParam);
+                    case "TMethod243": return lib.TMethod243(paramArray, patternArray, param, gParam);
+                    case "TMethod244": return lib.TMethod244(paramArray, patternArray, param, gParam);
+                    case "TMethod245": return lib.TMethod245(paramArray, patternArray, param, gParam);
+                    case "TMethod246": return lib.TMethod246(paramArray, patternArray, param, gParam);
+                    case "TMethod247": return lib.TMethod247(paramArray, patternArray, param, gParam);
+                    case "TMethod248": return lib.TMethod248(paramArray, patternArray, param, gParam);
+                    case "TMethod249": return lib.TMethod249(paramArray, patternArray, param, gParam);
+                    case "TMethod250": return lib.TMethod250(paramArray, patternArray, param, gParam);
+                    case "TMethod251": return lib.TMethod251(paramArray, patternArray, param, gParam);
+                    case "TMethod252": return lib.TMethod252(paramArray, patternArray, param, gParam);
+                    case "TMethod253": return lib.TMethod253(paramArray, patternArray, param, gParam);
+                    case "TMethod254": return lib.TMethod254(paramArray, patternArray, param, gParam);
+                    case "TMethod255": return lib.TMethod255(paramArray, patternArray, param, gParam);
+                    case "TMethod256": return lib.TMethod256(paramArray, patternArray, param, gParam);
+                    case "TMethod257": return lib.TMethod257(paramArray, patternArray, param, gParam);
+                    case "TMethod258": return lib.TMethod258(paramArray, patternArray, param, gParam);
+                    case "TMethod259": return lib.TMethod259(paramArray, patternArray, param, gParam);
+                    case "TMethod260": return lib.TMethod260(paramArray, patternArray, param, gParam);
+                    case "TMethod261": return lib.TMethod261(paramArray, patternArray, param, gParam);
+                    case "TMethod262": return lib.TMethod262(paramArray, patternArray, param, gParam);
+                    case "TMethod263": return lib.TMethod263(paramArray, patternArray, param, gParam);
+                    case "TMethod264": return lib.TMethod264(paramArray, patternArray, param, gParam);
+                    case "TMethod265": return lib.TMethod265(paramArray, patternArray, param, gParam);
+                    case "TMethod266": return lib.TMethod266(paramArray, patternArray, param, gParam);
+                    case "TMethod267": return lib.TMethod267(paramArray, patternArray, param, gParam);
+                    case "TMethod268": return lib.TMethod268(paramArray, patternArray, param, gParam);
+                    case "TMethod269": return lib.TMethod269(paramArray, patternArray, param, gParam);
+                    case "TMethod270": return lib.TMethod270(paramArray, patternArray, param, gParam);
+                    case "TMethod271": return lib.TMethod271(paramArray, patternArray, param, gParam);
+                    case "TMethod272": return lib.TMethod272(paramArray, patternArray, param, gParam);
+                    case "TMethod273": return lib.TMethod273(paramArray, patternArray, param, gParam);
+                    case "TMethod274": return lib.TMethod274(paramArray, patternArray, param, gParam);
+                    case "TMethod275": return lib.TMethod275(paramArray, patternArray, param, gParam);
+                    case "TMethod276": return lib.TMethod276(paramArray, patternArray, param, gParam);
+                    case "TMethod277": return lib.TMethod277(paramArray, patternArray, param, gParam);
+                    case "TMethod278": return lib.TMethod278(paramArray, patternArray, param, gParam);
+                    case "TMethod279": return lib.TMethod279(paramArray, patternArray, param, gParam);
+                    case "TMethod280": return lib.TMethod280(paramArray, patternArray, param, gParam);
+                    case "TMethod281": return lib.TMethod281(paramArray, patternArray, param, gParam);
+                    case "TMethod282": return lib.TMethod282(paramArray, patternArray, param, gParam);
+                    case "TMethod283": return lib.TMethod283(paramArray, patternArray, param, gParam);
+                    case "TMethod284": return lib.TMethod284(paramArray, patternArray, param, gParam);
+                    case "TMethod285": return lib.TMethod285(paramArray, patternArray, param, gParam);
+                    case "TMethod286": return lib.TMethod286(paramArray, patternArray, param, gParam);
+                    case "TMethod287": return lib.TMethod287(paramArray, patternArray, param, gParam);
+                    case "TMethod288": return lib.TMethod288(paramArray, patternArray, param, gParam);
+                    case "TMethod289": return lib.TMethod289(paramArray, patternArray, param, gParam);
+                    case "TMethod290": return lib.TMethod290(paramArray, patternArray, param, gParam);
+                    case "TMethod291": return lib.TMethod291(paramArray, patternArray, param, gParam);
+                    case "TMethod292": return lib.TMethod292(paramArray, patternArray, param, gParam);
+                    case "TMethod293": return lib.TMethod293(paramArray, patternArray, param, gParam);
+                    case "TMethod294": return lib.TMethod294(paramArray, patternArray, param, gParam);
+                    case "TMethod295": return lib.TMethod295(paramArray, patternArray, param, gParam);
+                    case "TMethod296": return lib.TMethod296(paramArray, patternArray, param, gParam);
+                    case "TMethod297": return lib.TMethod297(paramArray, patternArray, param, gParam);
+                    case "TMethod298": return lib.TMethod298(paramArray, patternArray, param, gParam);
+                    case "TMethod299": return lib.TMethod299(paramArray, patternArray, param, gParam);
+                    case "TMethod300": return lib.TMethod300(paramArray, patternArray, param, gParam);
+
                 }
             }
-            Fcode = string.Join("\r\n", arr);
-            codes_Total.Add(Fcode);
-        }
+#if DEBUG
+#else
+            catch (Exception ex)
+            {
+                var x = ex.Message;
+                //throw (ex);
+            }
+#endif
 
-        public string Get_code()
-        {
-            string fCodes= string.Join("\r\n",codes_Total.ToArray());
-            return TempCode_Total.Replace("{0}",fCodes);
-        }
-
-        public void Clear()
-        {
-            codes_Total.Clear();
-        }
-        public static void fi()
-        {
-           
-        }
-     
-        public static string TempCode_Set = CommonUse+ @"
-namespace CoustomEval
-{           
-    [Serializable]
-    class myLib
-    {
-        public dict<string,dict> myMethod(dict<string,dict> map_node,dict<string,dict> map_link)
-        {
-            {0}
+            return -999;
         }
     }
-}
-";
-        public static string TempCode_PreTreat = CommonUse+@"
-namespace CoustomEval
-{           
-    [Serializable]
-    class myLib
-    {
-        public object myMethod(LogicModelParams param, WdnmoParam wParam,GeneticParams gParam,calcParam cParam)
-        {
-            {0}
-        }
-    }
-}
-";
-    }
-
 }
\ No newline at end of file
diff --git a/Hydraulic/Hydro.CommonBase/ChromosomeBase.cs b/Hydraulic/Hydro.CommonBase/ChromosomeBase.cs
index a61999c..f3d81dc 100644
--- a/Hydraulic/Hydro.CommonBase/ChromosomeBase.cs
+++ b/Hydraulic/Hydro.CommonBase/ChromosomeBase.cs
@@ -13,16 +13,25 @@
 			get
 			{
 				//while (fitness == null) ;
+				
 				if (fitness is double f)
+				{
+                    if(double.IsNaN(f)) return 999999;
+					else return f;
+
+                }
 					//while (fitness == null) ;
 					//return fitness??0;
-					return f;
+					
 				else
 					return 999999;
 			}
 			
 		}
-		public double[] AttemptArray = null;
+
+		public int CalcID;
+
+        public double[] AttemptArray = null;
         public abstract void Generate();
 
 		public abstract IChromosome CreateNew();
@@ -33,11 +42,6 @@
 
 		public abstract void Crossover(IChromosome pair);
 
-		public virtual void Evaluate(IFitnessFunction function)
-		{
-			
-			fitness = function.Evaluate(this);
-		}
 
 		public int CompareTo(object o)
 		{
@@ -55,9 +59,19 @@
 			return 0;
 		}
 
-		public bool isValid()
-		{
-			return true;
+		public virtual bool isValid()
+        {
+			throw new NotImplementedException();
+        	return true;
+        }
+
+		public virtual bool _valid { get; set; } = false;
+
+		public virtual void Evaluate(IFitnessFunction function)
+        {
+            throw new NotImplementedException();
+
+            fitness = function.Evaluate(this);
 		}
 	}
 }
diff --git a/Hydraulic/Hydro.CommonBase/Helper/CalcExt.cs b/Hydraulic/Hydro.CommonBase/Helper/CalcExt.cs
index ae2d40c..15ad4cd 100644
--- a/Hydraulic/Hydro.CommonBase/Helper/CalcExt.cs
+++ b/Hydraulic/Hydro.CommonBase/Helper/CalcExt.cs
@@ -69,6 +69,7 @@
 
         public bool 鏄惁鏂扮増鏈鍙� { get; set; } = true;
         public bool 鏄惁鏋氫妇 { get; set; } = false;
+        public bool BreakSearchWhenOver { get; set; } = false;
 
         /// <summary>
         /// 寮�鍚按鍔涜绠�
@@ -117,7 +118,7 @@
         /// </summary>
         public bool waterdistribute { get; set; } = false;
 
-
+        public bool 鏈湴椤圭洰缂栬瘧 { get; set; } = false;
         /// <summary>
         /// 0褰撻噺鍒嗛厤锛�1闅忔満鍒嗛厤锛�
         /// </summary>
@@ -187,11 +188,14 @@
         /// 绋嬪簭鐨勯樁娈垫暟锛屽嵆绋嬪簭璁$畻鐨勬�绘椂闀�/绋嬪簭璁$畻鐨勬闀�
         /// </summary>
         public int PeriodCount;
+       
+
         /// <summary>
         /// 寮�濮嬬殑鏃堕棿锛屼富瑕佺敤鏉ユ樉绀猴紝鍗曚綅鏄垎閽�
         /// </summary>
         public int TimeStart { get; set; }
         public string[] Branchs { get; set; }
+        
     }
 
     //public class Solution
diff --git a/Hydraulic/Hydro.CommonBase/Helper/CurveFitHelper.cs b/Hydraulic/Hydro.CommonBase/Helper/CurveFitHelper.cs
index 5a02a15..b0a09d2 100644
--- a/Hydraulic/Hydro.CommonBase/Helper/CurveFitHelper.cs
+++ b/Hydraulic/Hydro.CommonBase/Helper/CurveFitHelper.cs
@@ -270,14 +270,14 @@
         /// <param name="numIntervals"></param>
         /// <param name="filterNum">浠ユ渶灏忓�间綔涓鸿繃婊ょ殑绯绘暟</param>
         /// <returns></returns>
-        public static List<DataPoint> GetFrequencyDistribution(List<double> data, out List<double>[] datapoints, int numIntervals = 10,double filterNum=5 )
+        public static List<DataPoint> GetFrequencyDistribution(List<Result> data, out List<DataPoint>[] datapoints, int numIntervals = 10,double filterNum=5 )
         {
 
             List<DataPoint> resultPoints = new List<DataPoint>();
-            datapoints= new List<double>[numIntervals];
+            datapoints= new List<DataPoint>[numIntervals];
             for(int i=0;i<numIntervals;i++)
             {
-                datapoints[i]= new List<double>();
+                datapoints[i]= new List<DataPoint>();
             }
             // 璁剧疆缃俊姘村钩
 
@@ -291,8 +291,8 @@
 
 
             // 璁$畻鏁版嵁鐨勬渶灏忓�煎拰鏈�澶у��
-            double minValue = data.Min();
-            double maxValue = data.Max();
+            double minValue = data.Min(x=>x.ObjFunctionValue);
+            double maxValue = data.Max(x => x.ObjFunctionValue);
 
             // 璁$畻鍖洪棿瀹藉害
             double intervalWidth = (maxValue - minValue) / numIntervals;
@@ -301,23 +301,24 @@
             int[] freqDist = new int[numIntervals];
 
             // 璁$畻鍚勪釜鍖洪棿鐨勯鐜�
-            foreach (double x in data)
+            foreach (var xd in data)
             {
+                var x = xd.ObjFunctionValue;
                 int index = (int)((x - minValue) / intervalWidth);
                 if (index < 0) // 鏁版嵁灏忎簬鏈�灏忓��
                 {
                     freqDist[0]++;
-                    datapoints[0].Add(x);
+                    datapoints[0].Add(new DataPoint() {XValue= x,Tag=xd });
                 }
                 else if (index >= numIntervals) // 鏁版嵁澶т簬鏈�澶у��
                 {
                     freqDist[numIntervals - 1]++;
-                    datapoints[numIntervals - 1].Add(x);
+                    datapoints[numIntervals - 1].Add(new DataPoint() { XValue = x, Tag = xd });
                 }
                 else // 鏁版嵁鍦ㄥ尯闂村唴
                 {
                     freqDist[index]++;
-                    datapoints[index].Add(x);
+                    datapoints[index].Add(new DataPoint() { XValue = x, Tag = xd });
                 }
             }
             double[] freqDistPersent =new double[numIntervals];
diff --git a/Hydraulic/Hydro.CommonBase/IChromosome.cs b/Hydraulic/Hydro.CommonBase/IChromosome.cs
index 59f58f7..5bbcded 100644
--- a/Hydraulic/Hydro.CommonBase/IChromosome.cs
+++ b/Hydraulic/Hydro.CommonBase/IChromosome.cs
@@ -24,6 +24,8 @@
 		void Evaluate(IFitnessFunction function);
 
 		bool isValid();
+
+		bool _valid { get; set; }
 		
 
     }
diff --git a/Hydraulic/Hydro.CommonBase/ParamModel.cs b/Hydraulic/Hydro.CommonBase/ParamModel.cs
index f92314d..16ce6e2 100644
--- a/Hydraulic/Hydro.CommonBase/ParamModel.cs
+++ b/Hydraulic/Hydro.CommonBase/ParamModel.cs
@@ -14,6 +14,7 @@
 using System.Collections.Concurrent;
 using Dapper;
 using NPOI.SS.Formula.Functions;
+using NPOI.SS.Formula.Eval;
 //using NPOI.Util.Collections;
 
 namespace Hydro.CommonBase
@@ -36,12 +37,78 @@
             if (Quene!=null) Quene.Dispose();
             Quene = new Quene();
             this.Quene= Quene;
-            //获取全局默认设置
-            var globalConfig = Db.Connection.QueryFirstOrDefault<string>("SELECT FValue FROM MyConfig WHERE FKey='GlobalConfig'");
-            GlobalConfig = JsonConvert.DeserializeObject<GlobalConfig>(globalConfig) ?? new GlobalConfig();
-            this.GlobalConfig = GlobalConfig;
+            if (ConfigPath!=null)
+            {
+                //获取全局默认设置
+                var globalConfig = Db.Connection.QueryFirstOrDefault<string>("SELECT FValue FROM MyConfig WHERE FKey='GlobalConfig'");
+                GlobalConfig = JsonConvert.DeserializeObject<GlobalConfig>(globalConfig) ?? new GlobalConfig();
+                this.GlobalConfig = GlobalConfig;
+            }
+            
             isInited = true;
             //return gParam;
+        }
+        public string Load_GeneticSettings(LogicModelParams param)
+        {
+
+            var ranges = new List<DRange>();
+            var accuracys = new List<Double?>();
+            var DLengths = new List<int>();
+            //chromosomeLength = 0;
+            param.试算变量.ForEach(v =>
+            {
+                ranges.Add(v.doubleRange);
+                DLengths.Add(getDLength(v.doubleRange, v.accuracy));
+                accuracys.Add(v.accuracy);
+            });
+            this.ranges = ranges;
+            this.DLengths = DLengths;
+            this.accuracys = accuracys;
+            return null;
+        }
+        public string Load_Settings(LogicModelParams param, FinishEvent onFinished, FinishEvent onError, FinishEvent onReportProgress, SetEvent SetVarsMethod)
+        {
+            //string result = null;
+
+
+            //DLengths.ForEach(m => chromosomeLength += m);
+
+            this.populationSize = this.GlobalConfig.Ext.populationNum;
+            this.iterations = this.GlobalConfig.Ext.iterationNum;
+            this.populationSize_min = this.GlobalConfig.Ext.populationNum_full;
+            this.iterations_full = this.GlobalConfig.Ext.iterationNum_full;
+
+            this.selectionMethod = 0;
+            this.optimizationMode = param.OFunction.ExpressType == "最大" ? 1 : 0;
+            this.强制重计算 = this.GlobalConfig.Ext.是否优选方案;
+            this.iterations_min = this.GlobalConfig.Ext.iterationNum_Min;
+
+            this.onReportProgress = onReportProgress;
+            this.onFinished = onFinished;
+            this.onError = onError;
+            this.setVars = SetVarsMethod;
+
+            
+
+            return null;
+          
+        }
+        int getDLength(DRange dr, double? accur)
+        {
+            if (accur == null) accur = 0.1;
+            var num_Total = dr.Length / (double)accur;
+            var Dlength = 0;
+            var value = 1;
+            var i = 0;
+            //判断需要多少位二进制数
+            //Dlength=Math.Log(num_Total, 2) > 0 ? (int)Math.Ceiling( Math.Log(num_Total, 2)) : 0;
+            while (value <= num_Total && i < 1000)
+            {
+                value *= 2;
+                Dlength += 1;
+                i++;
+            }
+            return Dlength;
         }
         public void Dispose()
         {
@@ -51,19 +118,23 @@
 
         }
         
+        //世代最优解列表
+        public List<double> list_FitnessByItera;
 
-        public List<double> list_BestEnerge;
-        public List<double> list_AvgHz;
+        #region 解析参数
         public List<DRange> ranges;
         public List<int> DLengths;
         public List<double?> accuracys;
-        public List<int> Dependencies;
-        public double[] list_AtemtpArr;
+        #endregion 
+
+    
+        
+        //public double[] list_AtemtpArr;
 
         public string SolutionSaveName;
         public int populationSize;
         public int iterations;
-        public int populationSize_full;
+        public int populationSize_min;
         public int iterations_full;
         public List<ulong> Upopulations = null;
 
@@ -82,15 +153,20 @@
         public int num;
         public double BestOptValue;
         public DRange tolerance;
+        [JsonIgnore]
         public FinishEvent onFinished;
+        [JsonIgnore]
         public FinishEvent onError;
+        [JsonIgnore]
         public FinishEvent onReportProgress;
+        [JsonIgnore]
         public SetEvent setVars;
 
         public Db Db;
         public dynamic SolutionDBHelper = null;
         public GlobalConfig GlobalConfig;
         public bool isInited=false;
+        [JsonIgnore]
         public Quene Quene;
         public int Level;
         public int ID;
@@ -98,47 +174,46 @@
         public bool isNeedOutput = true;
 
         public double CurrentTotalDemand = -1;
-        public GeneticParams DeepCopy()
-        {
-            var copy = new GeneticParams(this.Level);
-            copy.list_BestEnerge = this.list_BestEnerge?.ToList();
-            copy.list_AvgHz = this.list_AvgHz?.ToList();
-            copy.ranges = this.ranges?.Select(range => new DRange(range.Min, range.Max))?.ToList();
-            copy.DLengths = this.DLengths?.ToList();
-            copy.accuracys = this.accuracys?.ToList();
-            copy.Dependencies = this.Dependencies?.ToList();
-            copy.list_AtemtpArr = this.list_AtemtpArr?.ToArray();
-            copy.SolutionSaveName = this.SolutionSaveName;
-            copy.populationSize = this.populationSize;
-            copy.iterations = this.iterations;
-            copy.populationSize_full = this.populationSize_full;
-            copy.iterations_full = this.iterations_full;
-            copy.Upopulations = this.Upopulations?.ToList();
-            copy.selectionMethod = this.selectionMethod;
-            copy.optimizationMode = this.optimizationMode;
-            copy.强制重计算 = this.强制重计算;
-            copy.iterations_min = this.iterations_min;
-            copy.accuracyNum = this.accuracyNum;
-            copy.MaxRobot = this.MaxRobot;
-            copy.RuningRobot = this.RuningRobot;
-            copy.num = this.num;
-            copy.BestOptValue = this.BestOptValue;
-            copy.tolerance = tolerance==null?null: new DRange(this.tolerance.Min, this.tolerance.Max);
-            copy.onFinished = this.onFinished;
-            copy.onError = this.onError;
-            copy.onReportProgress = this.onReportProgress;
-            copy.setVars = this.setVars;
-            copy.Db = this.Db; // Assuming Db is a reference type
-            copy.SolutionDBHelper = this.SolutionDBHelper; // Assuming SolutionDBHelper is a reference type
-            copy.GlobalConfig = this.GlobalConfig.DeepCopyByBin<GlobalConfig>(); // Assuming GlobalConfig has a copy constructor
-            copy.isInited = this.isInited;
-            copy.Quene = this.Quene; // Assuming Quene has a copy constructor
-            copy.ID = this.ID;
-            copy.isNeedOutput = this.isNeedOutput;
-            copy.CurrentTotalDemand = this.CurrentTotalDemand;
+        //public GeneticParams DeepCopy()
+        //{
+        //    var copy = new GeneticParams(this.Level);
+        //    copy.list_FitnessByItera = this.list_FitnessByItera?.ToList();
+        //    copy.ranges = this.ranges?.Select(range => new DRange(range.Min, range.Max))?.ToList();
+        //    copy.DLengths = this.DLengths?.ToList();
+        //    copy.accuracys = this.accuracys?.ToList();
+            
+        //    //copy.list_AtemtpArr = this.list_AtemtpArr?.ToArray();
+        //    copy.SolutionSaveName = this.SolutionSaveName;
+        //    copy.populationSize = this.populationSize;
+        //    copy.iterations = this.iterations;
+        //    copy.populationSize_min = this.populationSize_min;
+        //    copy.iterations_full = this.iterations_full;
+        //    copy.Upopulations = this.Upopulations?.ToList();
+        //    copy.selectionMethod = this.selectionMethod;
+        //    copy.optimizationMode = this.optimizationMode;
+        //    copy.强制重计算 = this.强制重计算;
+        //    copy.iterations_min = this.iterations_min;
+        //    copy.accuracyNum = this.accuracyNum;
+        //    copy.MaxRobot = this.MaxRobot;
+        //    copy.RuningRobot = this.RuningRobot;
+        //    copy.num = this.num;
+        //    copy.BestOptValue = this.BestOptValue;
+        //    copy.tolerance = tolerance==null?null: new DRange(this.tolerance.Min, this.tolerance.Max);
+        //    copy.onFinished = this.onFinished;
+        //    copy.onError = this.onError;
+        //    copy.onReportProgress = this.onReportProgress;
+        //    copy.setVars = this.setVars;
+        //    copy.Db = this.Db; // Assuming Db is a reference type
+        //    copy.SolutionDBHelper = this.SolutionDBHelper; // Assuming SolutionDBHelper is a reference type
+        //    copy.GlobalConfig = this.GlobalConfig;//.DeepCopyByBin<GlobalConfig>(); // Assuming GlobalConfig has a copy constructor
+        //    copy.isInited = this.isInited;
+        //    copy.Quene = this.Quene; // Assuming Quene has a copy constructor
+        //    copy.ID = this.ID;
+        //    copy.isNeedOutput = this.isNeedOutput;
+        //    copy.CurrentTotalDemand = this.CurrentTotalDemand;
 
-            return copy;
-        }
+        //    return copy;
+        //}
     }
     public class Result
     {
@@ -163,12 +238,13 @@
 
         public System.Collections.Generic.Queue<WdnmoParam> RequestQueues;
         public HashSet<Guid> RequestFinished;
-        public Dictionary<ulong, double> ResultHash;
+        public ConcurrentDictionary<ulong, double> ResultHash;
         public int Level;
-        public Dictionary<Guid, double?> ResultDictionary;
-        public Dictionary<Guid, ChromosomeBase> ResultChrome;
+        public ConcurrentDictionary<Guid, double?> ResultDictionary;
+        public ConcurrentDictionary<Guid, ChromosomeBase> ResultChrome;
         public int MissionQueneCount;
-        public List<calcParam> MissionQuene;
+        //public  List<calcParam> MissionQuene;
+        public ConcurrentQueue<calcParam> MissionQuene;
         public DateTime ScadaTime;
         //public List<TimePoint> TimePoints;
         public double BestResult=double.MaxValue;
@@ -202,7 +278,7 @@
             }
             if (MissionQuene != null)
             {
-                MissionQuene.Clear();
+                //MissionQuene.Clear();
                 MissionQuene = null;
             }
 
@@ -451,6 +527,8 @@
 
         public List<SetVar> setVars = new List<SetVar>();
 
+        public int CurrentIndex = -1;
+
     }
     public class SetVar
     {
@@ -543,6 +621,9 @@
         public List<variable> 变量 = new List<variable>();
         public List<variable> 表达式 = new List<variable>();
         public List<variable> 预处理插件 = new List<variable>();
+        public variable ChromeFilter = null;
+        public variable GeneFilter = null;
+        [JsonIgnore]
         public List<variable> 输出变量
         {
             get
@@ -557,6 +638,7 @@
                 return all;
             }
         }
+        [JsonIgnore]
         public List<variable> 接口变量
         {
             get
@@ -570,6 +652,7 @@
                 return all;
             }
         }
+        [JsonIgnore]
         public List<variable> 设定变量
         {
             get
@@ -580,7 +663,7 @@
                 return all;
             }
         }
-        
+        [JsonIgnore]
         public List<variable> 变量全集
         {
             get
@@ -607,6 +690,7 @@
         //[NonSerialized]
         [JsonIgnore]
         public Dictionary<int, variable> dict_ID { get; set; }
+        [JsonIgnore]
         public Dictionary<string, variable> dict_Tag { get; private set; }
         
         //[NonSerialized]
@@ -633,18 +717,26 @@
             dict_Name = new Dictionary<string, variable>();
             dict_ID=new Dictionary<int, variable>();
             dict_Tag=new Dictionary<string, variable>();
-            dict_OutPut = new Dictionary<string, Ivariable[]>();
+            //dict_OutPut = new Dictionary<string, Ivariable[]>();
 
             变量全集.ForEach(vv => { if (!string.IsNullOrEmpty(vv.Name) && !dict_Name.ContainsKey(vv.Name)) dict_Name.Add(vv.Name, vv); });
             变量全集.ForEach(vv => {  if (!dict_ID.ContainsKey(vv.ID)) dict_ID.Add(vv.ID, vv); });
             变量全集.ForEach(vv => { if (!string.IsNullOrEmpty(vv.Tag) && !dict_Tag.ContainsKey(vv.Tag)) dict_Tag.Add(vv.Tag, vv); });
             
-            输出变量.ForEach(vv => 
+            //输出变量.ForEach(vv => 
+            //{
+            //    if (!string.IsNullOrEmpty(vv.Tag) &&  !dict_OutPut.ContainsKey(vv.Tag))
+            //        dict_OutPut.Add(vv.Tag, new Ivariable[] { vv });
+            //    if (!string.IsNullOrEmpty(vv.expressString) &&!dict_OutPut.ContainsKey(vv.expressString)) 
+            //        dict_OutPut.Add(vv.expressString,new Ivariable[] { vv }); 
+            //});
+
+            预处理插件.ForEach(vv => 
             {
-                if (!string.IsNullOrEmpty(vv.Tag) &&  !dict_OutPut.ContainsKey(vv.Tag))
-                    dict_OutPut.Add(vv.Tag, new Ivariable[] { vv });
-                if (!string.IsNullOrEmpty(vv.expressString) &&!dict_OutPut.ContainsKey(vv.expressString)) 
-                    dict_OutPut.Add(vv.expressString,new Ivariable[] { vv }); 
+                if (vv.IndicatorType=="方案筛选器")
+                    ChromeFilter = vv;
+                if (vv.IndicatorType == "基因筛选器")
+                    GeneFilter = vv;
             });
 
         }
@@ -731,21 +823,22 @@
     [Serializable]
     public class variable: Ivariable
     {
-        public static List<string> list_indicatorTypeName
+        public static List<string> list_indicatorTypeName 
         {
             get
             {
-                if (_list_indicatorTypeName == null)
+                if (_list_indicatorTypeName==null)
                 {
-                    _list_indicatorTypeName = new List<string>() { "已知压力", "节点用水量", "节点用水模式", "水池水位", "水泵转速比", "管线阻力系数", "阀门开度", "水泵开关", "阀门开关", "管线开关", "管线直径", "管线长度", "总水量", "节点压力", "节点自由压力", "节点需水量", "节点标高", "节点水龄", "节点水质", "管线流量", "管线流速", "水头损失", "当前状态", "水泵能耗", "水泵开关", "水泵转速比", "初始及运行传参", "初始传参", "运行传参", "种群生成器", "方案筛选器", "计算前处理", "结果处理", "当量分配", "随机分配" };
+                    _list_indicatorTypeName =new List<string>() { "已知压力", "节点用水量", "节点用水模式", "水池水位", "水泵转速比", "管线阻力系数", "阀门开度", "水泵开关", "阀门开关", "管线开关", "管线直径", "管线长度", "总水量", "节点压力", "节点自由压力", "节点需水量", "节点标高", "节点水龄", "节点水质", "管线流量", "管线流速", "水头损失", "当前状态", "水泵能耗", "水泵开关", "水泵转速比", "初始化","初始及运行传参", "初始传参", "运行传参", "种群生成器", "方案筛选器", "基因筛选器", "计算前处理", "输出计算处理", "结果处理", "当量分配", "随机分配" };
                 }
                 return _list_indicatorTypeName;
             }
-
-
+         
+            
         }
 
         private static List<string> _list_indicatorTypeName = null;
+
         public static List<string> listUsedInitValue = new List<string>() { "初始计算值", "变化值", "绝对变化值" };
         //public static List<string> list_输入值 = new List<string>() { "基准值(界面)", "定义值", "基准值(接口)",  "模式系数(界面)", "模式系数(接口)" };
         public static HashSet<string> list_输入值 = new HashSet<string>() { "基准值(界面)", "定义值", "基准值(接口)", "模式系数(界面)", "模式系数(接口)" };
@@ -812,7 +905,7 @@
         public bool isInput
         {
             get;
-            private set;
+            set;
         } = false;
         public bool isNode { get; set; }
         //public bool? isOutput;
@@ -826,12 +919,10 @@
         public int arrgFuncType;
         public string defaultExpress;
         private int _indicatorType;
-      
         public string IndicatorType 
         { 
             get
             {
-                
                 if (_indicatorType<0)
                 {
                     return list_indicatorTypeName[0];
@@ -867,7 +958,7 @@
             {
                 return _Values;
             }
-            private set
+            set
             {
                 _Values = value;
             }
@@ -892,7 +983,7 @@
             }
             set
             {
-                isInput = true;
+                
                 if (value==null) 
                     LogicValues[0]=double.NaN;
                 else
@@ -913,7 +1004,8 @@
         /// </summary>
         public string Value_Set(int period,double value)
         {
-            _Values[period] = value;
+            if (_Values!=null && period < _Values.Length)
+                _Values[period] = value;
             return null;
             string result = null;
             double formatValue = value;
@@ -1023,9 +1115,11 @@
                 if (_level!=0) return _level;
                 int tempLevel = 1;
                 if (Vars!=null)
-                foreach (var v in Vars) 
+                for (int i=0;i<Vars.Count;i++) 
                 {
-                    if (v!=this && v is variable vv && tempLevel < vv.Level + 1) tempLevel = vv.Level + 1;
+                    var v = Vars[i];
+                   
+                    if (!VarIndexs.ContainsKey(i) && v !=this && v is variable vv && tempLevel < vv.Level + 1) tempLevel = vv.Level + 1;
                 }
                 _level= tempLevel;
                 return _level;
@@ -1034,6 +1128,10 @@
         }
 
         public string Tag { get; set; }
+        public string AnFrom { get; set; }
+        public string AnValue { get; set; }
+        public double MuRange { get; set; }
+        public double MuRate { get; set; }
 
         public override string ToString()
         {
@@ -1156,16 +1254,21 @@
             v.ObjType = this.ObjType;
             v.logicType = this.logicType;
             v.LogicValue = this.LogicValue;
-            v.LogicValues = this.LogicValues;
+            v.LogicValues = this.LogicValues.ToArray();
+            v.Values_Set = this.Values.ToArray();
             v.小数位数 = this.小数位数;
+            v.defaultExpress=this.defaultExpress;
+            v.sort = this.sort;
+            v.isInput = this.isInput;
             v.virturl = this.virturl;
-            v.doubleRange =new DRange( this.doubleRange);
+            if (this.doubleRange == null) v.doubleRange = null;
+            else v.doubleRange =new DRange( this.doubleRange);
             v.accuracy = this.accuracy;
             //v.Vars = this.Vars;
             v.Name = this.Name;
             v.modelObjectID = this.modelObjectID;
             v.modelIndex = this.modelIndex;
-            v.PeriodCount = this.PeriodCount;
+            //v.PeriodCount = this.PeriodCount;
             v.childSolution = this.childSolution;
             v.childTag = this.childTag;
             v.childType = this.childType;
@@ -1174,6 +1277,10 @@
             v.objListString = this.objListString;
             v.obj_Best=this.obj_Best;
             v._level=this._level;
+            v.AnFrom=this.AnFrom;
+            v.AnValue=this.AnValue;
+            v.MuRange=this.MuRange;
+            v.MuRate=this.MuRate;
             return v;
         }
     }
diff --git a/Hydraulic/Hydro.ConfigModel/GlobalModel.cs b/Hydraulic/Hydro.ConfigModel/GlobalModel.cs
index 11735ba..377a879 100644
--- a/Hydraulic/Hydro.ConfigModel/GlobalModel.cs
+++ b/Hydraulic/Hydro.ConfigModel/GlobalModel.cs
@@ -333,6 +333,13 @@
             },
             new TypeIndicator
             {
+                Name="鍒濆鍖�",
+                isNode=true,
+                Type=HydraulicInputType.None,
+                ObjectNames=new List<string>(){"姘存车"},
+            },
+            new TypeIndicator
+            {
                 Name="鍒濆鍙婅繍琛屼紶鍙�",
                 isNode=true,
                 Type=HydraulicInputType.None,
@@ -368,7 +375,21 @@
             },
             new TypeIndicator
             {
+                Name="鍩哄洜绛涢�夊櫒",
+                isNode=true,
+                Type=HydraulicInputType.None,
+                ObjectNames=new List<string>(){"姘存车"},
+            },
+            new TypeIndicator
+            {
                 Name="璁$畻鍓嶅鐞�",
+                isNode=true,
+                Type=HydraulicInputType.None,
+                ObjectNames=new List<string>(){"姘存车"},
+            },
+            new TypeIndicator
+            {
+                Name="杈撳嚭璁$畻澶勭悊",
                 isNode=true,
                 Type=HydraulicInputType.None,
                 ObjectNames=new List<string>(){"姘存车"},
@@ -526,14 +547,14 @@
                 Name = "鍒濆鏉′欢",
                 titleStyle = MetroColorStyle_Inner.Blue,
                 IndicatorNames = new List<string>(){ "宸茬煡鍘嬪姏","鑺傜偣鐢ㄦ按閲�", "鑺傜偣鐢ㄦ按妯″紡", "姘存睜姘翠綅", "鎬绘按閲�", "姘存车杞�熸瘮","绠$嚎闃诲姏绯绘暟","闃�闂ㄥ紑搴�","姘存车寮�鍏�","闃�闂ㄥ紑鍏�","绠$嚎寮�鍏�","绠$嚎鐩村緞","绠$嚎闀垮害" },
-                Type_expression= new List<string>() { "鍩哄噯鍊�(鐣岄潰)",  "鍩哄噯鍊�(鎺ュ彛)", "妯″紡绯绘暟(鐣岄潰)", "妯″紡绯绘暟(鎺ュ彛)"},
+                Type_expression= new List<string>() { "鍩哄噯鍊�(鐣岄潰)",  "鍩哄噯鍊�(鎺ュ彛)", "妯″紡绯绘暟(鐣岄潰)", "妯″紡绯绘暟(鎺ュ彛)","鏇茬嚎(鐣岄潰)","鏇茬嚎(鎺ュ彛)"},
             },
             new LogicalPointType()
             {
                 Name = "涓嬮樁娈垫潯浠�",
                 titleStyle = MetroColorStyle_Inner.Blue,
                 IndicatorNames = new List<string>(){ "宸茬煡鍘嬪姏","鑺傜偣鐢ㄦ按閲�", "鑺傜偣鐢ㄦ按妯″紡", "姘存睜姘翠綅","姘存车杞�熸瘮","绠$嚎闃诲姏绯绘暟","闃�闂ㄥ紑搴�","姘存车寮�鍏�","闃�闂ㄥ紑鍏�","绠$嚎寮�鍏�","绠$嚎鐩村緞","绠$嚎闀垮害","鎬绘按閲�" },
-                Type_expression= new List<string>() { "鍩哄噯鍊�(鐣岄潰)",  "鍩哄噯鍊�(鎺ュ彛)", "妯″紡绯绘暟(鐣岄潰)", "妯″紡绯绘暟(鎺ュ彛)"},
+                Type_expression= new List<string>() { "鍩哄噯鍊�(鐣岄潰)",  "鍩哄噯鍊�(鎺ュ彛)", "妯″紡绯绘暟(鐣岄潰)", "妯″紡绯绘暟(鎺ュ彛)","鏇茬嚎(鐣岄潰)","鏇茬嚎(鎺ュ彛)"},
             },
             new LogicalPointType()
             {
@@ -547,7 +568,7 @@
                 Name = "姘撮噺鍒嗛厤",
                 titleStyle = MetroColorStyle_Inner.DarkGreen,
                 IndicatorNames = new List<string>(){ "褰撻噺鍒嗛厤" ,"闅忔満鍒嗛厤","鎬绘按閲�"},//,"鎬诲垎閰嶆按閲�"
-                Type_expression= new List<string>() { "鍩哄噯鍊�(鐣岄潰)", "鍩哄噯鍊�(鎺ュ彛)", "妯″紡绯绘暟(鐣岄潰)", "妯″紡绯绘暟(鎺ュ彛)" },
+                Type_expression= new List<string>() { "鍩哄噯鍊�(鐣岄潰)", "鍩哄噯鍊�(鎺ュ彛)", "妯″紡绯绘暟(鐣岄潰)", "妯″紡绯绘暟(鎺ュ彛)"},
             },
             new LogicalPointType()
             {
@@ -575,13 +596,13 @@
                 Name = "鍙橀噺",
                 titleStyle = MetroColorStyle_Inner.Green_Content,
                 IndicatorNames = new List<string>(){ "鑺傜偣鍘嬪姏","鑺傜偣鑷敱鍘嬪姏", "鑺傜偣闇�姘撮噺","鑺傜偣鏍囬珮","鑺傜偣姘磋川", "绠$嚎娴侀噺", "绠$嚎娴侀��","姘村ご鎹熷け","绠$嚎鐘舵��", "姘存车鑳借��" ,"姘存车寮�鍏�","姘存车杞�熸瘮"},
-                Type_expression= new List<string>() { "璁$畻鍊�","鍙樺寲鍊�","鍒濆璁$畻鍊�","鍩哄噯鍊�(鐣岄潰)","鍩哄噯鍊�(鎺ュ彛)", "妯″紡绯绘暟(鐣岄潰)", "妯″紡绯绘暟(鎺ュ彛)", "瀛愭柟妗堝��"},
+                Type_expression= new List<string>() { "璁$畻鍊�","鍙樺寲鍊�","鍒濆璁$畻鍊�","鍩哄噯鍊�(鐣岄潰)","鍩哄噯鍊�(鎺ュ彛)", "妯″紡绯绘暟(鐣岄潰)", "妯″紡绯绘暟(鎺ュ彛)", "鏇茬嚎(鐣岄潰)", "鏇茬嚎(鎺ュ彛)", "瀛愭柟妗堝��" },
             },
             new LogicalPointType()
             {
                 Name = "棰勫鐞嗘彃浠�",
                 titleStyle = MetroColorStyle_Inner.Yellow_Content,
-                IndicatorNames = new List<string>(){"鍒濆鍙婅繍琛屼紶鍙�", "鍒濆浼犲弬", "杩愯浼犲弬", "绉嶇兢鐢熸垚鍣�", "鏂规绛涢�夊櫒", "璁$畻鍓嶅鐞�", "缁撴灉澶勭悊" },
+                IndicatorNames = new List<string>(){"鍒濆鍖�","鍒濆鍙婅繍琛屼紶鍙�", "鍒濆浼犲弬", "杩愯浼犲弬", "绉嶇兢鐢熸垚鍣�", "鏂规绛涢�夊櫒","鍩哄洜绛涢�夊櫒", "璁$畻鍓嶅鐞�", "杈撳嚭璁$畻澶勭悊", "缁撴灉澶勭悊" },
                 Type_expression= new List<string>() { },
             },
             new LogicalPointType()
diff --git a/Hydraulic/Hydro.ConfigModel/HostExt.cs b/Hydraulic/Hydro.ConfigModel/HostExt.cs
index 039e48d..80a0f65 100644
--- a/Hydraulic/Hydro.ConfigModel/HostExt.cs
+++ b/Hydraulic/Hydro.ConfigModel/HostExt.cs
@@ -1,6 +1,7 @@
 锘縰sing Hydro.CommonBase;
 using MetroFramework;
 using Newtonsoft.Json;
+using Newtonsoft.Json.Linq;
 using System;
 using System.Collections;
 using System.Collections.Generic;
@@ -83,6 +84,11 @@
         //public MetroColorStyle_Inner TitleColor { get; set; }
         public MetroColorStyle_Inner ContentColor { get; set; }
         public bool isUseCustomColor { get; set; } = false;
+        public DRange doubleRange { get; set; } = null;
+        public string AnFrom { get; set; } = "";
+        public string AnValue { get; set; }="";
+        public double MuRange { get; set; } = double.NaN;
+        public double MuRate { get; set; } = double.NaN;
     }
 
 
diff --git a/Hydraulic/Hydro.ConfigModel/LogicPoint.cs b/Hydraulic/Hydro.ConfigModel/LogicPoint.cs
index 5f23780..2a4c96b 100644
--- a/Hydraulic/Hydro.ConfigModel/LogicPoint.cs
+++ b/Hydraulic/Hydro.ConfigModel/LogicPoint.cs
@@ -26,7 +26,7 @@
             if (host1.LogicType != host2.LogicType) { Sameflag_Calc = Sameflag = false; di.Add("LogicType (old)", host1.LogicType); di.Add("LogicType (new)", host1.LogicType); }
             if (host1.ExpressionType != host2.ExpressionType) { Sameflag_Calc = Sameflag = false; di.Add("ExpressionType (old)", host1.ExpressionType); di.Add("ExpressionType (new)", host2.ExpressionType); }
             if (host1.IndicatorType != host2.IndicatorType) { Sameflag_Calc = Sameflag = false; di.Add("IndicatorType (old)", host1.IndicatorType); di.Add("IndicatorType (new)", host2.IndicatorType); }
-            if (host1.ModelObjectID != host2.ModelObjectID) { Sameflag_Calc = Sameflag = false; di.Add("ModelObjectID (old)", host1.ModelObjectID); di.Add("ModelObjectID (new)", host2.ModelObjectID); }
+            if (host1.LogicType!="璇曠畻鍙傛暟" && host1.ModelObjectID != host2.ModelObjectID) { Sameflag_Calc = Sameflag = false; di.Add("ModelObjectID (old)", host1.ModelObjectID); di.Add("ModelObjectID (new)", host2.ModelObjectID); }
             //if (host1.Sort != host2.Sort) { flag = false; di.Add("Sort", host1.Sort); }
             if (host1.ParentId != host2.ParentId) { Sameflag_Calc = Sameflag = false; di.Add("ParentId (old)", host1.ParentId); di.Add("ParentId (new)", host2.ParentId); }
             if (host1.Expression != host2.Expression) { Sameflag_Calc = Sameflag = false; di.Add("Expression (old)", host1.Expression); di.Add("Expression (new)", host2.Expression); }
@@ -56,6 +56,14 @@
             if (host1.MemSaveIndex != host2.MemSaveIndex) { Sameflag_Calc = Sameflag = false; di.Add("MemSaveIndex (old)", host1.MemSaveIndex); di.Add("MemSaveIndex (new)", host2.MemSaveIndex); }
             if (host1.Enable != host2.Enable) { Sameflag_Calc = Sameflag = false; di.Add("Enable (old)", host1.Enable); di.Add("Enable (new)", host2.Enable); }
             if (host1.Tag != host2.Tag) { Sameflag_Calc = Sameflag = false; di.Add("Tag (old)", host1.Tag); di.Add("Tag (new)", host2.Tag); }
+
+            if (host1.AnFrom!= host2.AnFrom) { Sameflag_Calc = Sameflag = false; di.Add("AnFrom (old)", host1.AnFrom); di.Add("AnFrom (new)", host2.AnFrom); }
+            if (host1.AnValue != host2.AnValue) { Sameflag_Calc = Sameflag = false; di.Add("AnValue (old)", host1.AnValue); di.Add("AnValue (new)", host2.AnValue); }
+            //鍒ゆ柇host1.MuRange鍜宧ost2.MuRange鏄惁涓�鏍凤紝浠栦滑鐨勫�煎彲鑳芥槸NaN
+
+            if (host1.MuRange.ToString() != host2.MuRange.ToString()) { Sameflag_Calc = Sameflag = false; di.Add("MuRange (old)", host1.MuRange); di.Add("MuRange (new)", host2.MuRange); }
+            if (host1.MuRate.ToString() != host2.MuRate.ToString()) { Sameflag_Calc = Sameflag = false; di.Add("MuRate (old)", host1.MuRate); di.Add("MuRate (new)", host2.MuRate); }
+
 
 
             if (host1.Prefer != host2.Prefer) { Sameflag = false; di.Add("Prefer (old)", host1.Prefer); di.Add("Prefer (new)", host2.Prefer); }
@@ -104,6 +112,11 @@
                 this.Tag = host.Tag;
                 this.ObjectType = host.ObjectType;
                 this.VPN = host.VPN;
+                this.AnFrom = host.AnFrom;
+                this.AnValue = host.AnValue;
+                this.MuRange = host.MuRange;
+                this.MuRate = host.MuRate;
+
             }
             
 
@@ -175,8 +188,6 @@
                 return 0;
             }
             return host.Id;
-
-
         }
         public void UpdateByOldVersion()
         {
@@ -252,6 +263,16 @@
                 {
                     return ExpressionType;
                 }
+                else if (ExpressionType == "鈭�")//璇曠畻鍙傛暟
+                {
+                    string express = Expression;
+                    if (Ext.doubleRange!=null)
+                    {
+                        var arr = new double[] { Ext.doubleRange.Min, Ext.doubleRange.Max };
+                        express = string.Join(",", arr);
+                    }
+                    return $"{{{ModelObjectID}}}{ExpressionType}[{express}] 鈻瞷accurary}" ;
+                }
                 else
                 {
                     return $"{ExpressionType} " + (ExpressionType == "鈭�" ? $"[{Expression}] 鈻瞷accurary}" : (ExpressionType == "鏈�灏�" || ExpressionType == "鏈�澶�" ? $"| 瀹硅鑼冨洿[{Expression}]" : Expression)); 
@@ -316,26 +337,34 @@
                 int 灏忔暟浣嶆暟 = Ext.灏忔暟浣嶆暟;
                 if (Ext.ResultShowType==0)
                 {
-                   
-                    
-                   
-                    if (LogicType=="璇曠畻鍙傛暟" )
+                    if (LogicType == "鐩爣鍑芥暟")
+                    {
+                        result = $"[{getFormat(Math.Round(Ext.Result_Arr.Sum(), 灏忔暟浣嶆暟))}]  {getFormat(Math.Round(Ext.Result_Arr[Ext.Period], 灏忔暟浣嶆暟))}" ;
+                    }
+                    else if (LogicType=="璇曠畻鍙傛暟" )
                     {
                         try
                         {
-                            var arr = Expression.Split(',').Select(v => Convert.ToDouble(v)).ToArray();
-                            var range = new DRange(arr[0], arr[1]);
-                            var accuracy = double.Parse(accurary);
-                            result = getFormat(getRoundByAccuracy(Ext.Result_Arr[Ext.Period], range,accuracy));
+                            if (Ext.doubleRange==null)
+                            {
+                                result = getFormat(Math.Round(Ext.Result_Arr[0], 灏忔暟浣嶆暟));
+                            }
+                            else
+                            {
+                                result = getFormat(Math.Round(Ext.Result_Arr[0], 灏忔暟浣嶆暟));
+                                //var arr = new double[] { Ext.doubleRange.Min, Ext.doubleRange.Max };// Expression.Split(',').Select(v => Convert.ToDouble(v)).ToArray();
+                                //var range = new DRange(arr[0], arr[1]);
+                                //var accuracy = double.Parse(accurary);
+                                //result = getFormat(getRoundByAccuracy(Ext.Result_Arr[0], range, accuracy));
+                            }
+                            
                         }
                         catch 
                         {
                             result = "-";
                         }
-                        
                     }
-                    else
-                    if ( Ext.Result_Arr.Length> Ext.Period && !double.IsNaN( Ext.Result_Arr[Ext.Period]))
+                    else if ( Ext.Result_Arr.Length> Ext.Period && !double.IsNaN( Ext.Result_Arr[Ext.Period]))
                     {
                         result= getFormat(Math.Round(Ext.Result_Arr[Ext.Period],灏忔暟浣嶆暟));
                     }
@@ -353,13 +382,11 @@
                     if (txt.Length > LengthLimit) txt = txt.Substring(0, LengthLimit) + "...";
                     result= txt;
                 }
-
                 if (Ext.bestObj!=null)
                 {
                     result += Ext.bestObj;
                 }
                 return result;
-                
             }
         }
         private double getRoundByAccuracy(double v, DRange range, double accuracy)
@@ -530,7 +557,37 @@
             get { return this.Ext.ContentColor; }
             set { this.Ext.ContentColor = value; }
         }
-      
+
+
+        [DisplayName("鍒濅唬鏉ユ簮")]
+        [Category("2銆佽绠楀弬鏁�")]
+        public string AnFrom 
+        {
+            get { return this.Ext.AnFrom; }
+            set { this.Ext.AnFrom = value; }
+        }
+
+        [DisplayName("鍒濅唬鍊�")]
+        [Category("2銆佽绠楀弬鏁�")]
+        public string AnValue
+        {
+            get { return this.Ext.AnValue; }
+            set { this.Ext.AnValue = value; }
+        }
+        [DisplayName("绐佸彉鑼冨洿")]
+        [Category("2銆佽绠楀弬鏁�")]
+        public double MuRange
+        {
+            get { return this.Ext.MuRange; }
+            set { this.Ext.MuRange = value; }
+        }
+        [DisplayName("绐佸彉鐜�")]
+        [Category("2銆佽绠楀弬鏁�")]
+        public double MuRate
+        {
+            get { return this.Ext.MuRate; }
+            set { this.Ext.MuRate = value; }
+        }
 
     }
 }
diff --git a/Hydraulic/Hydro.HydraulicOptimizer/WDNModelOptimizer.cs b/Hydraulic/Hydro.HydraulicOptimizer/WDNModelOptimizer.cs
index 562810c..3c6612d 100644
--- a/Hydraulic/Hydro.HydraulicOptimizer/WDNModelOptimizer.cs
+++ b/Hydraulic/Hydro.HydraulicOptimizer/WDNModelOptimizer.cs
@@ -16,6 +16,7 @@
 using Hydro.CommonBase; 
 using Hydro.CodeProvider;
 using System.Runtime.CompilerServices;
+using System.Collections.Concurrent;
 
 namespace Hydro.HydraulicOptimizer
 {
@@ -161,9 +162,11 @@
                 }
 
             }
+#if DEBUG
+            Eval.鏈湴椤圭洰缂栬瘧 = gParam.GlobalConfig.Ext.鏈湴椤圭洰缂栬瘧;
+#endif
 
-
-            if ((result = loadGeneticParam(onFinished, onError, onReportProgress, SetVars)) != null) { return result; }
+            if ((result = gParam.Load_Settings(param,onFinished, onError, onReportProgress, SetVars)) != null) { return result; }
 
 
             if (isGUILoading) return null;
@@ -173,7 +176,7 @@
             
             if ((result = controllerInit(isGUI, wParam)) != null) return result;
 
-            if ((result = load璇曠畻鍙傛暟_gParam()) != null) return result;
+            if ((result = gParam.Load_GeneticSettings(param)) != null) return result;
             //StartChild
             lock (GlobalProgress.Instance)
             {
@@ -703,12 +706,12 @@
             {
                 EPAController.needToStop = true;
                 EPAController.StopRobot();
-            }           
+            }
             if (workerThread != null)
                 workerThread.Abort();
             StopRunQuene();
             if (Quene.RequestQueues!=null) Quene.RequestQueues.Clear();
-            if (Quene.MissionQuene!=null)Quene.MissionQuene.Clear();
+            if (Quene.MissionQuene != null) Quene.MissionQuene = new ConcurrentQueue<calcParam>();//.Clear();
             if (CSM != null)
             {
                 foreach (var name in ChildSolutionName)
@@ -735,8 +738,8 @@
                 EPAController.Close();
             }
             
-            if (workerThread!=null)
-            workerThread.Abort();
+            //if (workerThread!=null)
+            //workerThread.Abort();
             
             
             if (CSM!=null)
@@ -813,6 +816,7 @@
                 {
                     var accuracy = double.Parse(host.Ext.accurary == "" ? "0.1" : host.Ext.accurary);
                     var doubleRange = new DRange(double.Parse(host.Expression.Split(',')[0]), double.Parse(host.Expression.Split(',')[1]));
+                    host.Ext.doubleRange = doubleRange;
                     var v = GetVarByHost(host, accuracy, doubleRange);
                     param.璇曠畻鍙橀噺.Add(v);
                 }
@@ -907,6 +911,7 @@
                         //    sort = o.Sort,
                         //}
                     };
+                    param.琛ㄨ揪寮�.Add(v);
                     param.OFunction = OFunction;
                 }
                 
@@ -969,54 +974,54 @@
             }
             return null;
         }
+
         public static string UpdateExpress(LogicModelParams param, HashSet<int> list_express)
         {
-            //if (host.ExpressionType == "琛ㄨ揪寮忚绠�")
+
+            return HydraulicHelper.CreateExpressAssembly(param);
+
+
+            //var resultBuilder=new StringBuilder();
+            //var flag=true;
+            //param.琛ㄨ揪寮�.ForEach(s =>
             //{
-            //    string text = HydraulicHelper.GetExVarText(s, param, result);
+            //    if (!list_express.Contains(s.ID)) return;
+            //    string text = HydraulicHelper.GetExVarText(s, param, resultBuilder);
+            //    if (resultBuilder.Length != 0)
+            //    {
+            //        flag = false;
+            //        return;
+            //    }
             //    try
             //    {
             //        Eval val = new Hydro.CodeProvider.Eval(text, s.Vars.Count);
-            //        if (!val.isInit) { result.AppendLine($"琛ㄨ揪寮廩{s.Name}]鍏紡閿欒锛�" + val.errString); }
+            //        if (!val.isInit) { resultBuilder.AppendLine($"琛ㄨ揪寮廩{s.Name}]鍏紡閿欒锛�" + val.errString); }
             //        s.Eval = val;
             //        s.Value_Set(param.Period, double.NaN);
             //    }
-            //    catch (Exception ee)
+            //    catch (Exception e)
             //    {
-            //        { result.AppendLine(ee.Message); }
+            //        resultBuilder.AppendLine(e.Message);
+            //        flag = false;
+            //        return;
             //    }
+            //});
 
-            //}
-            var resultBuilder=new StringBuilder();
-            var flag=true;
-            param.琛ㄨ揪寮�.ForEach(s =>
-            {
-                if (!list_express.Contains(s.ID)) return;
-                string text = HydraulicHelper.GetExVarText(s, param, resultBuilder);
-                if (resultBuilder.Length != 0)
-                {
-                    flag = false;
-                    return;
-                }
-                try
-                {
-                    Eval val = new Hydro.CodeProvider.Eval(text, s.Vars.Count);
-                    if (!val.isInit) { resultBuilder.AppendLine($"琛ㄨ揪寮廩{s.Name}]鍏紡閿欒锛�" + val.errString); }
-                    s.Eval = val;
-                    s.Value_Set(param.Period, double.NaN);
-                }
-                catch (Exception e)
-                {
-                    resultBuilder.AppendLine(e.Message);
-                    flag = false;
-                    return;
-                }
-            });
-    
-           
 
-            param.琛ㄨ揪寮�.Sort((a, b) => a.Level > b.Level ? 1 : (a.Level == b.Level ? 0 : -1));
-            return resultBuilder.ToString();
+            //param.棰勫鐞嗘彃浠�.ForEach(v =>
+            //{
+
+            //    //BookMark    锛氬鐞嗛澶勭悊鎻掍欢
+            //    if (!flag) return;
+            //    Eval val;
+            //    val = new Eval(v.modelObjectID, EvalTemplate.TempCode_PreTreat);
+            //    if (val.errString != null) { resultBuilder.AppendLine( $"棰勫鐞嗘彃浠禰{v.Name}]鍑芥暟缂栧啓閿欒锛�" + val.errString); flag = false; return; }
+            //    v.Eval = val;
+            //});
+
+
+            //param.琛ㄨ揪寮�.Sort((a, b) => a.Level > b.Level ? 1 : (a.Level == b.Level ? 0 : -1));
+            //return resultBuilder.ToString();
         }
         public static HashSet<int> UpdateVarByHost(variable s,LogicPoint host,LogicModelParams param,bool isDelete=false)
         {
@@ -1088,7 +1093,7 @@
             
 
 
-            if (host.ExpressionType == "琛ㄨ揪寮忚绠�")
+            if (host.LogicType == "琛ㄨ揪寮�" || host.LogicType=="棰勫鐞嗘彃浠�")
             {
                 list_express.Add(s.ID);
             }
@@ -1166,6 +1171,12 @@
                 logicType = host.LogicType,
                 accuracy = accuracy,
                 doubleRange = doubleRange,
+                isInput = variable.list_杈撳叆鍊�.Contains(host.ExpressionType),
+                AnFrom  = host.Ext.AnFrom,
+                AnValue =host.Ext.AnValue,
+                MuRange =host.Ext.MuRange,
+                MuRate =host.Ext.MuRate,
+
             };
 
           
@@ -1175,107 +1186,122 @@
         public static void UpdateVarByHost(variable v,LogicPoint host, double? accuracy = null, DRange doubleRange = null)
         {
             double d;
+            var s= GetVarByHost(host, accuracy, doubleRange);
+            v.ID = s.ID;
+            v.modelObjectID = s.modelObjectID;
+            v.IndicatorType = s.IndicatorType;
+            v.Type = s.Type;
+            v.Name = s.Name;
+            v.expressType = s.expressType;
+            v.expressString = s.expressString;
+            v.Tag = s.Tag;
+            v.arrgFuncType = s.arrgFuncType;
+            v.defaultExpress = s.defaultExpress;
+            v.isNode = s.isNode;
+            v.ObjType = s.ObjType;
+            v.灏忔暟浣嶆暟 = s.灏忔暟浣嶆暟;
+            v.childSolution = s.childSolution;
+            v.childTag = s.childTag;
+            v.childType = s.childType;
+            v.SearchRange = s.SearchRange;
+            v.isNeedToSave = s.isNeedToSave;
+            v.SaveKey = s.SaveKey;
+            v.sort = s.sort;
+            v.logicType = s.logicType;
+            v.accuracy = s.accuracy;
+            v.doubleRange = s.doubleRange;
+            v.isInput = s.isInput;
+            v.AnFrom = s.AnFrom;
+            v.AnValue = s.AnValue;
+            v.MuRange = s.MuRange;
+            v.MuRate = s.MuRate;
+          
             /*[Cloudflight淇敼]2024-5-21 
              * 杩佺Щ鏂规硶--闆嗗悎
              */
-            if (host.LogicType == "闆嗗悎")
-            {
-                List<string> list = new List<string>() { "鏈�澶у��", "鏈�灏忓��", "骞冲潎鍊�", "绱鍊�", "璁℃暟" };
-                if (list.IndexOf(host.ExpressionType) >= 0)
-                {
-                    host.accurary = host.ExpressionType;
-                    host.ExpressionType = "璁$畻鍊�";
-                }
-            }
+            //if (host.LogicType == "闆嗗悎")
+            //{
+            //    List<string> list = new List<string>() { "鏈�澶у��", "鏈�灏忓��", "骞冲潎鍊�", "绱鍊�", "璁℃暟" };
+            //    if (list.IndexOf(host.ExpressionType) >= 0)
+            //    {
+            //        host.accurary = host.ExpressionType;
+            //        host.ExpressionType = "璁$畻鍊�";
+            //    }
+            //}
 
 
-            //if (!GlobalModel.dict_StringToType.ContainsKey(host.IndicatorType)) GlobalModel.dict_StringToType[host.IndicatorType] = (GlobalModel.DEFINE_INDICATOR.Find(ind => ind.Name == host.IndicatorType) ?? new TypeIndicator()).Type;
-            //var VarType = GlobalModel.dict_StringToType[host.IndicatorType];
-
-            //if (!GlobalModel.dict_StringToObjType.ContainsKey(host.Ext.ObjectType)) GlobalModel.dict_StringToObjType[host.Ext.ObjectType] = (int)(GlobalModel.DEFINE_OBJECT.Find(obj => obj.Name == host.Ext.ObjectType) ?? new TypeObject()).Type;
-            //int ObjType =GlobalModel.dict_StringToObjType[host.Ext.ObjectType];
-
-            //if (!GlobalModel.dict_StringToisNode.ContainsKey(host.IndicatorType)) GlobalModel.dict_StringToisNode[host.IndicatorType] = (GlobalModel.DEFINE_INDICATOR.Find(ind => ind.Name == host.IndicatorType) ?? new TypeIndicator()).isNode;
-            //bool isNode = GlobalModel.dict_StringToisNode[host.IndicatorType];
-
-            //if (!GlobalModel.dict_StringToFuncType.ContainsKey(host.Ext.accurary)) GlobalModel.dict_StringToFuncType[host.Ext.accurary] = GlobalModel.DEFIND_AGGFUNC.FindIndex(func => func.Name == host.Ext.accurary);
-            //int arrgFuncType = GlobalModel.dict_StringToFuncType[host.Ext.accurary];
-
-            dynamic VarType = HydraulicInputType.None;
-            if (GlobalModel.dict_StringToType.TryGetValue(host.IndicatorType, out dynamic vartype))
-                VarType = vartype;
 
 
-            int ObjType = 0;
-            if (GlobalModel.dict_StringToObjType.TryGetValue(host.Ext.ObjectType, out int objType))
-                ObjType = objType;
+            //dynamic VarType = HydraulicInputType.None;
+            //if (GlobalModel.dict_StringToType.TryGetValue(host.IndicatorType, out dynamic vartype))
+            //    VarType = vartype;
 
 
-            bool isNode = true;
-            if (GlobalModel.dict_StringToisNode.TryGetValue(host.IndicatorType, out bool isnode))
-                isNode = isnode;
+            //int ObjType = 0;
+            //if (GlobalModel.dict_StringToObjType.TryGetValue(host.Ext.ObjectType, out int objType))
+            //    ObjType = objType;
 
 
-            int arrgFuncType = -1;
-            if (GlobalModel.dict_StringToFuncType.TryGetValue(host.Ext.accurary, out int FuncInt))
-                arrgFuncType = FuncInt;
+            //bool isNode = true;
+            //if (GlobalModel.dict_StringToisNode.TryGetValue(host.IndicatorType, out bool isnode))
+            //    isNode = isnode;
 
 
-            v.ID = host.Id;
-            v.modelObjectID = host.ModelObjectID;
-            v.IndicatorType = host.IndicatorType;
-            v.Type = VarType;
-            v.Name = host.Name;
-            v.expressType = host.ExpressionType;
-            v.expressString = host.Expression;
-            v.Tag = host.Ext.Tag;
-            v.arrgFuncType = arrgFuncType;
-            v.defaultExpress = host.Ext.accurary;
-            v.isNode = isNode;
-            v.ObjType = (int)ObjType;
-            v.灏忔暟浣嶆暟 = host.Ext.灏忔暟浣嶆暟;
-            v.childSolution = host.Ext.childSolution;
-            v.childTag = host.Ext.childTag;
-            v.childType = host.Ext.childType;
-            v.SearchRange = double.TryParse(host.Ext.SaveAcc, out d) ? d : 0;
-            v.isNeedToSave = host.Ext.isSave == "鏄�" ? true : false;
-            v.SaveKey = host.Ext.SaveRange;
-            v.sort = host.Sort;
-            v.logicType = host.LogicType;
-            v.accuracy = accuracy;
-            v.doubleRange = doubleRange;
+            //int arrgFuncType = -1;
+            //if (GlobalModel.dict_StringToFuncType.TryGetValue(host.Ext.accurary, out int FuncInt))
+            //    arrgFuncType = FuncInt;
+
+
+            //v.ID = host.Id;
+            //v.modelObjectID = host.ModelObjectID;
+            //v.IndicatorType = host.IndicatorType;
+            //v.Type = VarType;
+            //v.Name = host.Name;
+            //v.expressType = host.ExpressionType;
+            //v.expressString = host.Expression;
+            //v.Tag = host.Ext.Tag;
+            //v.arrgFuncType = arrgFuncType;
+            //v.defaultExpress = host.Ext.accurary;
+            //v.isNode = isNode;
+            //v.ObjType = (int)ObjType;
+            //v.灏忔暟浣嶆暟 = host.Ext.灏忔暟浣嶆暟;
+            //v.childSolution = host.Ext.childSolution;
+            //v.childTag = host.Ext.childTag;
+            //v.childType = host.Ext.childType;
+            //v.SearchRange = double.TryParse(host.Ext.SaveAcc, out d) ? d : 0;
+            //v.isNeedToSave = host.Ext.isSave == "鏄�" ? true : false;
+            //v.SaveKey = host.Ext.SaveRange;
+            //v.sort = host.Sort;
+            //v.logicType = host.LogicType;
+            //v.accuracy = accuracy;
+            //v.doubleRange = doubleRange;
+            //v.isInput = variable.list_杈撳叆鍊�.Contains(host.ExpressionType);
+            //v.AnFrom = host.Ext.AnFrom;
+            //v.AnValue=host.Ext.AnValue;
+            //v.MuRange=host.Ext.MuRange;
+            //v.MuRate=host.Ext.MuRate;
         }
 
         private string loadGeneticParam(FinishEvent onFinished, FinishEvent onError, FinishEvent onReportProgress, SetEvent  SetVarsMethod)
         {
-           
+
             //string result = null;
 
 
             //DLengths.ForEach(m => chromosomeLength += m);
-
+#if DEBUG
+            Eval.鏈湴椤圭洰缂栬瘧=gParam.GlobalConfig.Ext.鏈湴椤圭洰缂栬瘧;
+#endif
             gParam.populationSize = gParam.GlobalConfig.Ext.populationNum;
             gParam.iterations = gParam.GlobalConfig.Ext.iterationNum;
-            gParam.populationSize_full = gParam.GlobalConfig.Ext.populationNum_full;
+            gParam.populationSize_min = gParam.GlobalConfig.Ext.populationNum_full;
             gParam.iterations_full = gParam.GlobalConfig.Ext.iterationNum_full;
-
 
             gParam.selectionMethod = 0;
             gParam.optimizationMode = param.OFunction.ExpressType=="鏈�澶�"?1:0;
             gParam.寮哄埗閲嶈绠� = gParam.GlobalConfig.Ext.鏄惁浼橀�夋柟妗�;
-            
             gParam.iterations_min = gParam.GlobalConfig.Ext.iterationNum_Min;
-            //gParam.MultiTimes = gParam.GlobalConfig.Ext.MultiTimes;
 
-            
-            //gParam.accuracyNum = accuracyNum;
-
-            //gParam.onReportProgress += OnReportProgress;
-            //gParam.onFinished += ControlunLocking;
-            //gParam.onError += ControlunLocking;
-            //EPAController = new EPAParrelController();
-            //EPAController.gParam = gParam;
-            //Ehelper.SearchSolution();
             gParam.onReportProgress = onReportProgress;
             gParam.onFinished = onFinished;
             gParam.onError = onError;
@@ -1289,19 +1315,8 @@
                 {
                     string savePath = GlobalPath.savePath + $@"\{solution.瀛樺偍浣嶇疆}";
                     var settings = gParam.GlobalConfig.saveSettings[key] = solution.settings;
-                    //kp.Value.saveSettings = solution.settings;
                     settings.savePath = savePath;
-                    //if (!isGUILoading)
-                    //{
-                    //    if (File.Exists(savePath))
-                    //    {
-                    //        settings.saveDatas = Base64Helper.ReadCompressedBase64FromFile<SaveDict>(savePath);
-                    //    }
-                    //    else
-                    //    {
-                    //        settings.saveDatas = new SaveDict();
-                    //    }
-                    //}
+
                     
                 }
             });
@@ -1314,41 +1329,9 @@
             
         }
 
-        private string load璇曠畻鍙傛暟_gParam()
-        {
-            var ranges = new List<DRange>();
-            var accuracys = new List<Double?>();
-            var DLengths = new List<int>();
-            //chromosomeLength = 0;
-            param.璇曠畻鍙橀噺.ForEach(v => 
-            { 
-                ranges.Add(v.doubleRange); 
-                DLengths.Add(getDLength(v.doubleRange, v.accuracy)); 
-                accuracys.Add(v.accuracy); 
-            });
-            gParam.ranges = ranges;
-            gParam.DLengths = DLengths;
-            gParam.accuracys = accuracys;
-            return null;
-        }
+  
 
-        int getDLength(DRange dr, double? accur)
-        {
-            if (accur == null) accur = 0.1;
-            var num_Total = dr.Length / (double)accur;
-            var Dlength = 0;
-            var value = 1;
-            var i = 0;
-            //鍒ゆ柇闇�瑕佸灏戜綅浜岃繘鍒舵暟
-            Dlength=Math.Log(num_Total, 2) > 0 ? (int)Math.Ceiling( Math.Log(num_Total, 2)) : 0;
-            //while (value <= num_Total && i < 1000)
-            //{
-            //    value *= 2;
-            //    Dlength += 1;
-            //    i++;
-            //}
-            return Dlength;
-        }
+        
        
         private string controllerInit(bool isGUI=false,WdnmoParam wParam=null)
         {
@@ -1387,6 +1370,8 @@
 
             return null;
         }
+
+       
     }
 
     
diff --git a/Hydraulic/Hydro.Inp2.2/NetWork.cs b/Hydraulic/Hydro.Inp2.2/NetWork.cs
index 6468c53..10b92d7 100644
--- a/Hydraulic/Hydro.Inp2.2/NetWork.cs
+++ b/Hydraulic/Hydro.Inp2.2/NetWork.cs
@@ -938,7 +938,7 @@
 
         //    string backupFileName = $"{Path.GetFileNameWithoutExtension(filePath)}_{DateTime.Now:yyyyMMddHHmmss}{Path.GetExtension(filePath)}";
         //    string backupFilePath = Path.Combine(backupFolderPath, backupFileName);
-        //    if (File.Exists(filePath)) File.Copy(filePath, backupFilePath, true);
+        //    if (File.Exists(filePath)) FileCopy.Copy(filePath, backupFilePath, true);
 
 
         //    // 妫�鏌ユ枃浠舵槸鍚﹀瓨鍦�
diff --git a/Hydraulic/Hydro.MapUI/Map/MapViewer.Designer.cs b/Hydraulic/Hydro.MapUI/Map/MapViewer.Designer.cs
index 6098628..3c78d51 100644
--- a/Hydraulic/Hydro.MapUI/Map/MapViewer.Designer.cs
+++ b/Hydraulic/Hydro.MapUI/Map/MapViewer.Designer.cs
@@ -112,6 +112,7 @@
             this.toolStripButton_ClearMinor = new System.Windows.Forms.ToolStripButton();
             this.toolStripSeparator4 = new System.Windows.Forms.ToolStripSeparator();
             this.toolStripButton_鍒锋柊 = new System.Windows.Forms.ToolStripButton();
+            this.btn_鎷撴墤妫�鏌� = new System.Windows.Forms.ToolStripButton();
             this.btn_姘撮噺鍒濆垎閰� = new System.Windows.Forms.ToolStripButton();
             this.toolStripDropDownButton_宸ュ叿 = new System.Windows.Forms.ToolStripDropDownButton();
             this.姘村钩鏃嬭浆ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
@@ -240,7 +241,6 @@
             this.timer_draw = new System.Windows.Forms.Timer(this.components);
             this.map = new Hydro.MapUI.DMap();
             this.CubeView = new Hydro.MapUI.DMap();
-            this.btn_鎷撴墤妫�鏌� = new System.Windows.Forms.ToolStripButton();
             this.statusStrip1.SuspendLayout();
             this.panel1.SuspendLayout();
             this.toolStrip1.SuspendLayout();
@@ -603,6 +603,15 @@
             this.toolStripButton_鍒锋柊.Size = new System.Drawing.Size(52, 22);
             this.toolStripButton_鍒锋柊.Text = "璁$畻";
             this.toolStripButton_鍒锋柊.Click += new System.EventHandler(this.toolStripButton_璁$畻_Click);
+            // 
+            // btn_鎷撴墤妫�鏌�
+            // 
+            this.btn_鎷撴墤妫�鏌�.Image = ((System.Drawing.Image)(resources.GetObject("btn_鎷撴墤妫�鏌�.Image")));
+            this.btn_鎷撴墤妫�鏌�.ImageTransparentColor = System.Drawing.Color.Magenta;
+            this.btn_鎷撴墤妫�鏌�.Name = "btn_鎷撴墤妫�鏌�";
+            this.btn_鎷撴墤妫�鏌�.Size = new System.Drawing.Size(76, 22);
+            this.btn_鎷撴墤妫�鏌�.Text = "鎷撴墤妫�鏌�";
+            this.btn_鎷撴墤妫�鏌�.Click += new System.EventHandler(this.btn_鎷撴墤妫�鏌Click);
             // 
             // btn_姘撮噺鍒濆垎閰�
             // 
@@ -1622,15 +1631,6 @@
             this.CubeView.Name = "CubeView";
             this.CubeView.Size = new System.Drawing.Size(120, 120);
             this.CubeView.TabIndex = 0;
-            // 
-            // btn_鎷撴墤妫�鏌�
-            // 
-            this.btn_鎷撴墤妫�鏌�.Image = ((System.Drawing.Image)(resources.GetObject("btn_鎷撴墤妫�鏌�.Image")));
-            this.btn_鎷撴墤妫�鏌�.ImageTransparentColor = System.Drawing.Color.Magenta;
-            this.btn_鎷撴墤妫�鏌�.Name = "btn_鎷撴墤妫�鏌�";
-            this.btn_鎷撴墤妫�鏌�.Size = new System.Drawing.Size(76, 22);
-            this.btn_鎷撴墤妫�鏌�.Text = "鎷撴墤妫�鏌�";
-            this.btn_鎷撴墤妫�鏌�.Click += new System.EventHandler(this.btn_鎷撴墤妫�鏌Click);
             // 
             // MapViewer
             // 
diff --git a/Hydraulic/Hydro.MapUI/Map/MapViewer.resx b/Hydraulic/Hydro.MapUI/Map/MapViewer.resx
index d73474e..d935ee2 100644
--- a/Hydraulic/Hydro.MapUI/Map/MapViewer.resx
+++ b/Hydraulic/Hydro.MapUI/Map/MapViewer.resx
@@ -124,6 +124,160 @@
     <value>138, 17</value>
   </metadata>
   <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+  <data name="鏂板缓ToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        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
+</value>
+  </data>
+  <data name="鎵撳紑鏂囦欢浣嶇疆ToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        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
+</value>
+  </data>
+  <data name="ePA涓墦寮�ToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        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
+</value>
+  </data>
+  <data name="鏃х増鎵撳紑ToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        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
+</value>
+  </data>
   <data name="toolStripSplitButton2.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
         iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
@@ -164,6 +318,109 @@
         LR0H5QLZLbeaw9IH+qhTH6BG6r5yfxfldUZKa/Tsq9ZRXKtHVatjV02HlJmW7VL/SrIVyFG7taSRbaVq
         3lNVcvqz8y9G/s1QykE5HpXa/CGhlNr3kitDWaCIUBrDD4nnLx3/W2PDhn8Dtua/eH+Pe1sAAAAASUVO
         RK5CYII=
+</value>
+  </data>
+  <data name="鍙﹀瓨涓篢oolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        /9j/4AAQSkZJRgABAQEAAAAAAAD/2wBDAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB
+        AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQH/2wBDAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB
+        AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQH/wAARCAAiACADASIAAhEBAxEB/8QA
+        HwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIh
+        MUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVW
+        V1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXG
+        x8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQF
+        BgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAV
+        YnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOE
+        hYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq
+        8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD+uj4W/Gv4t/Er9pv43/DDU/GFpoXhbwDY65P4b0rwzp2l3mrx
+        iw+JGr+FLK48TXuteAr2KC6u9M0sXsGmaLfa/aJpt7pOoX2uQa5eav4V036ZvtH+J3zmz+JWtIP4PN0r
+        wfnv1J+GZGcY7enX5q/P/wDZklE37dv7V4wHKad4oRhs8wDyfjHrMYyptL3HylefKGNxG4Z+b9M5COcR
+        D6fZl/2/TQ16EDjHP4c/U8QYengcxVChRoxh9Qy2oo/V6C9+tg6VSpJ2pxTbnLdrmaV5uc25v0c6jDCY
+        pUqShCKwuCnpCkryqUFOT0ppXcr3bu2nFycp80n5PLo3xpJO34sawgH/ADz0jwIeMtyDL8Kn7Dv/AEy3
+        wVB+1V+0B4T/AG49D+Bmu/EHR/EfgG48V6J4WudB1TSNAt/E2pLrfwt8f+M59TsJdA+HehwR2mg6j4b0
+        KO+vbrxLYXTvrtnp9n4Y1O2/tLWLb9OpOM/uwPT9yo7v3/spT2A/xxz+Afju9H/D4vwLaZww8c2YAwB8
+        o+Anid+gjixk848tc9ecEn0eHsFQx2E4ndejhr4PhjH42hL6phpShXo4jCqEoTnSlKlNxcl7Sm41YRk1
+        Gau3KeHrYyWdwr8k1h8hxmKpc1GjJwrUsThoxlGTheErScVKFpKMpRUk3c4D4qftSeOf2ZP2o/2l/G/w
+        /wD7EutWvPHXxC8KXum634YfxV/aFv8A8LDv77TrPSLGLWtBeHVrnVRDaQSTX/2N/tCrc+Qifax6tqP7
+        b3/BSG0+KNx8FpfhH8HLL4owzCCXwdqOqfAS31CGb+wB4o8maaP9pq4sY5BoEiam6NdbhDKEOJv3Z+Mv
+        27Phd8S/Df7THxim1PwV4wFv4k+Lup+MNAnsvCviTVbDVvD2p+NhrtlqFjq2laVfaPdr/ZksdxPBbahL
+        d2cwk069t7bVre4sVt/GC++L+vftg+NfjxYeG76bStT1rUJ7DUrOaOaRon8A2fhS2ZbG3L6hGjS2rwc2
+        42Jh5P3TB6/R82fDcoZfXprhzFVZ8J1sdUxGLnDEVK2ZYGlg6eDy/wB3HUFCdSFSalRSdd+zXJFSjO/3
+        eaLInRw1Z08pxNWWQVsVKpXqOcquMwdOhHD4NKni6KU5qco+ySdaTj7ibhM+gPib/wAFAv8AgpL8LdH1
+        zXPFvwx+BWl6f4f0+71XVGhk+G2t3MFjYpLNdyx2nhz476pcXTwwo0nkWizXMm3bBDLKVRvkT9lP4++M
+        v2j/APgpB8Bfip48ttIsvEvizxdrk1/aaFp/9laXGNF+Fnjzw/D9msf7S1fyh5emKHP9o3Jdw7s6uzpX
+        mPxi0v44eN/CvjKAeFvE10bzw/rESWVvpOs3d5fNJazAWtraRWLy3FxcY8qGCNXklkdEQFiKm/4Jy/Db
+        4n6P+2l+y3qOufDnx9oum6bqXjibVb7WfBXinRrTTvP0f4oxW0l/Nq2kWS2sdz/aWmR280xWGaS9tYIp
+        HnIjPj5bmGXVeGuK6ksNkeX42eU4rCUvqK+r1K9KpTlUlSUa2JrzqN1adKSVNrVJNSbPHyTEZfVyfiHE
+        fUMty7F/UquEpvDqrSqVqVSHtJQUcRia0p3qUoP3EndW97luf226hp9hdqGu7K0umUgK1xbQzMo3P90y
+        I5HQdD+eOc/+xNF/6BGl/wDgBa//ABo/5PfknbuP9WfqP/QpKgr8WPjTL/sPRf8AoEaX/wCC+0/+Nf5z
+        35JtRaTpUU6SR6Zp8ckZBR0srZHQ7pOVZYgyn6H8T1q1Uy/6wfh/6FJQAP/Z
+</value>
+  </data>
+  <data name="浠ュ綋鍓嶈瑙掑彟瀛楾oolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAYAAADhAJiYAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
+        dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAOfSURBVFhH5ZjdS1NhGMD9G/oDugoCLyMIwauuoi4i
+        kKJC8CYjiKBQU7EkP2bLry0/ViJmfpCRZaaGLDR1TmdaOjGdqDB1OqduNsfcnNnT8xw942zn3fdJL3rh
+        x3ae95zn+XHej3O2uPSsRzEBAJLCLBIJrKSxwCwSgGSkhoESSWIljwZWYRZqBEIgiRSruD+nEHhaUg66
+        kVERGu0QL9TJKhAp3sIP0jOYYF8iFax6WYvni5vL5eKF7KzrefDUsAhbqEJVA8vLJhFGo/F4hIrLlIDH
+        IvIKCo9HKJwhQ1IZxFMePDUspBQKRtgTXjKhhuYWaG1rF1EoL+GlTuLpTAkhkgmZzWuHEd9WV9/IC13C
+        Q6aEEK8QQoUVyBiDIxfi7kIwAq2yUFRWv+BzRCSUSRd97lbDsmlFBMUD7UPzCwuQlpkDExN6Zn9t3euo
+        hFR00ZBuBGPiRvGjHrL/R2iJhg6H3W7fHsPDJ8hphClD/DMhk3MPagy/4J5uHW72m+HusAVUeGx0eKhb
+        gZxAggvJ5M+YKyVc6hsaYW5uHhrntyGhcwnOtC+KONexBLWzdtj/g+UBUngRHh+h1raPMKzTiWh60wJF
+        xaXMvgGNBtIeZsOgVgserHJba/ERaFt0wPTWLoxtun3iyQNmcO5xVokBhWIZMqfTCfJJm09RYtzq5q51
+        ePZFfdnfNylFMyKtUKmyEubsHjj7ybcgEUyI0NvclCYBkU6ot28Ank9vMQuGEpLprZSmGpFOaG5+wTt3
+        DofB22YMswercM3SdRjiGonS+bQCsdGWIBaqqKqGMqVSRL6sCLJyHjP7SssVsGo2w9Wvq16hGYMBvvT0
+        cNQ3NHFCuflFl7FgKg8vdFG9goewiIiFol1lwjtEq+e90eFl0/0b8mRybgUK44qfB0N8vY+7Q+NMoWiH
+        rF+jhbIp8QojQs2h3B/cEL9CpBNSVqq4vYZVMJTQtw0XpTmPSCdE19JnxuiGqCAJ0Q9KltCdIQulUCOc
+        DCGZkNVq44om9R5Mbp77I+tQMGHlhkYYp8ls292nFFcQkdANSkpFWS/qFKeJyep7++4DJ0Qv+eP6SbBj
+        EXqgCov7c2twjZvs2DKFMgQvRExS4ijZ4b/T+8807j307KK7QvsMPWjpk7YErYWbM33INV5CiFCIoHdr
+        1o89isf7xXhSEPpDIkkQS+3o6i4xraxqPR7PFBbaQWjzo+fWBSocCH+hiGEljQVmkUhgJY0eiPsLefhM
+        ZZ6pXgEAAAAASUVORK5CYII=
+</value>
+  </data>
+  <data name="澧為噺淇濆瓨ToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        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
 </value>
   </data>
   <data name="toolStripButton_save.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
@@ -356,42 +613,42 @@
   <data name="toolStripButton_娣诲姞姘磋〃.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
         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
-        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
-        ggjsMEAAAAAASUVORK5CYII=
+        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
+        hGxYfgAAAABJRU5ErkJggg==
 </value>
   </data>
   <data name="toolStripButton_閲嶅鍣�.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
@@ -502,383 +759,6 @@
         l6i08A0SquBLfiC1/6nEASLS1KINlP9I3L4vNUuvqZUUCXIz8PkL1hzcU2tJZtN+2s/DmQUlEUCS8ilA
         2fqKKgEkMaYAb6P58EV3asIcvAtQchnGVQMJeBWglKZa0Hbb414skOU0Mi8WIFZZMAUgFqVlZuYLHiIY
         ft9Q8+UAAAAASUVORK5CYII=
-</value>
-  </data>
-  <data name="toolStripDropDownButton_宸ュ叿.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
-    <value>
-        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
-</value>
-  </data>
-  <data name="toolStripSplitButton1.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
-    <value>
-        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
-        aCDCUwAAAABJRU5ErkJggg==
-</value>
-  </data>
-  <data name="toolStripComboBox_娴忚妯″紡.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
-    <value>
-        iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6
-        JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAAACXBIWXMAAA68AAAOvAGVvHJJAAABo0lE
-        QVRYR+2Wv0rDUBjFLyiIVMQ/VFF0sYKLOqiTOPQNnH0Bl46+gSK6+BoODvogeYVsGQqBDIEMgQzXc8K9
-        bUmuyU3TJAg98IMvadJz+PJ9cIWUslOMN9tkUry+f0hC6XrR10KIdbACzAGalApwqELkA4DGBd8TsGEM
-        0FIHlgH+DgAaV2GA5SfoPABoXIUB/sUneHz+SomiSCZJou7aKRtgIvxmFYDGb99j+fQ5lnejHxkEQaUQ
-        pQHSpwrEADTXAVzXlQ+jl1rAvmfdAbadxsRxnDQAu+D7vvQ8zwoY3oIzcKToWwdgu2lIY20ex3EaLAxD
-        K2B4CQ7ApsK+AxRD0HCeIaRgOP8MUHW2gIJdd1tAwa44gA6h69nrxrcA4lmNZzamNHGutwD1PRiCK3AD
-        ON02XINTkN8CiKdVhmCLTGyBY3ChYL0L9gAn24Z9sA3yW2CpVdBTsK4vHaAMSm8ByvYDZLcAr+6A+iFM
-        ZiayW4BXB6bJrgL+YzoDZfDhmS3g5A8Au9AHeqqrMt2CMiC2m4Y01uZrgPOgp7oqlTpALXgLhPgF8kdM
-        dETRv3oAAAAASUVORK5CYII=
-</value>
-  </data>
-  <data name="toolStripDropDownButton1.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
-    <value>
-        iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
-        YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAOOSURBVFhH7ZfNTxNBGMZJPJn4F3g0JmI0Hjh40XhQThjD
-        obEohRjRCCLbglUQKFURtSWgBoUQ4hc0iqQVjRGpUQqKgl8tIlRBURJs2tLaQkoLpRQed5ZFqLtdrWC9
-        +EueZN+Z2dknM+877cT8h1BZ24xoi/7sclrLfhiIJilUETGwkhYx8c8MrKK1gmNALBYz+ptEZGAu/pUi
-        IYU6Ht5ANJBkn1y8gYFhH64+GYJC24cL+i9oMX/D9MwM2ytMikz55zlgG5nAsXozkipeo/75V3T2O9Hc
-        ZUXpvX6slrfirtHOjgyP+OCxP8uBneJdiEs7j/yKBmi12hARLC4vEkpf4PYrGxOHQ9BAOKanp1GsM0P7
-        i8ntIz6sy2vDVDD8diRTisgMkI+7PeOIK2xFQGDiOa4YPgtuhaCBn7eAMDU1hXsvB6G+P8C2CGMecuPQ
-        9R424hKRAfIsEomwKSkHmeWNnL2f00KGnGMQXzSyEReJVOAg4sPr9ULX1oMi3Qe2RZheegVkGjMbcYk4
-        B3w+H16+MSE2R48Rr59tDU/lo0E87nWyEZdkKsJzYIY+YEwmE5S1T6HUvmdbufgDQZTSeVKk62db+JFI
-        BY5ivhwgSkxMRHx8PNbvLsEe1R1c09wKyYFRXwDbT7dgo7KdORmJ6XAIGhDCYrGgo6MD8urHiMtvgaKh
-        B5q2Tzh/txubcxux5oAG6488RBKdgA+67GFN8Bogtf47stls0Ov1uFh9GXnltUgv1SJLVYeCknPYp9bR
-        JuqwIb8Ne2vewmB2IBgMcubgrYJAIPDb8vv9sFqtMBqNMBgMaGpqQlVVFbJz5JAU1zMrEad4iv2Xu5nf
-        isnJyZD3eatgYmJiUSKlWlZWBkqWA1HRDcRm3GTy4eC1dzB9dmJ8fPzHWN4qGBsbW7TcbjdUKhWkh48i
-        IU+D2MwGbDnVgazaXgxYnPB4PMw43hwYHR1dEg0PD0OtViO38AS2yeuwlrqNrWc6Uan/yBgkY3hXwOVy
-        LZlIftTU1KC8ohqi4kbsONuKR6/6GXOkn3cFHA7HkoqULKmW5mY92tufoa+vD3a7nelLS6e4BkhntJRB
-        yUMNkL/JC5VKSyIrmH2WnmDKJjlbyexdqlSJFGkBE5N6Jpp7h/QlU4V0mwK7ZXQflU/3HZ+djx6350AW
-        MqlcqM9dCjVAQ24o5KZCGqOl+ZsRDbmjkYA4ipbm74b/jpiY77B2tgj08x+0AAAAAElFTkSuQmCC
-</value>
-  </data>
-  <data name="tb_棰滆壊鍒嗙骇璁剧疆.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
-    <value>
-        iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
-        YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAKGSURBVFhH7ZfPa1NBEMeLBUHw0muOOfuniIJ4i5CkJiYl
-        qW3BPNHSSn+EaLC1aW2xggg9FEVF0b+gKCpCRa0iVqgQi1oVD8Uf0Tbv68zuvmTzupV9QdBDHnyYmR1m
-        3ocksKTtv3hW00fQDDS66/P8HjQDzxLt/H4hgLkr1riFMTzbf5CXhHjZRvmyNVg6ieelHWKWYIm6AC+2
-        RQmEPQFebIsSCBO7+f0tgZaAEHCH8sChiDW6wPrSCWAhZo1RoDpaML5oO7YI3O2Ee69TRJErvFr2D4to
-        FNg8UwRiZBiPyhij6M/j9b4u8O1FP9z7SQEeECoXtS9njAK/zo0DqRTAvwcmpaKO16eeLlB5dQruozTR
-        pfByPdYxCvw8Pwn0dCuOytjLUVHL5bkusPl6BO7jrKDqxUUZG84XM+LcKFC5MA04x4icgnPFcT2XPV0A
-        K3lUn/bUcLfLn8jaKMALg8JLWIAXBoVnCSlAD18KIYIPg8AzHSqa+n+CZ+RllH/Yj2ag0Y7o6WU0A88S
-        O/n9QuD6j0lrptYHcWB+Hy8J8bLZBVgzdLOKvc5tMUvUPwFvsS1KIOwJ8GJblAB/DfI30BJoCbDAeHkY
-        0ZcRa3SB4atfETkLa4wCE6ujSCxHayR90X/+1wWm3hXQvZIUZN8QXi7qhKoTimSDQP7ad8TpLmNiJYVX
-        K2p9wigws1aE8zaDHOGUs5RLuBZnKubK3M80CBRvVJC+SDc10aWinvvPjAKzn8Yw8KEPg+/rDGjRw6t1
-        gYlbG+ido1tao8+H3jMKXPpSwsjHnJm1rWe6wPSdKhz602SLUYAXBoWXsAAvDArPElKAnn97HdPD/1K5
-        YKMg8AxfqU3OtrX/BlpSCP2Wc+SAAAAAAElFTkSuQmCC
-</value>
-  </data>
-  <data name="鏂板缓ToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
-    <value>
-        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
-</value>
-  </data>
-  <data name="鎵撳紑鏂囦欢浣嶇疆ToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
-    <value>
-        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
-</value>
-  </data>
-  <data name="ePA涓墦寮�ToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
-    <value>
-        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
-</value>
-  </data>
-  <data name="鏃х増鎵撳紑ToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
-    <value>
-        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
-</value>
-  </data>
-  <data name="鍙﹀瓨涓篢oolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
-    <value>
-        /9j/4AAQSkZJRgABAQEAAAAAAAD/2wBDAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB
-        AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQH/2wBDAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB
-        AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQH/wAARCAAiACADASIAAhEBAxEB/8QA
-        HwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIh
-        MUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVW
-        V1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXG
-        x8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQF
-        BgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAV
-        YnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOE
-        hYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq
-        8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD+uj4W/Gv4t/Er9pv43/DDU/GFpoXhbwDY65P4b0rwzp2l3mrx
-        iw+JGr+FLK48TXuteAr2KC6u9M0sXsGmaLfa/aJpt7pOoX2uQa5eav4V036ZvtH+J3zmz+JWtIP4PN0r
-        wfnv1J+GZGcY7enX5q/P/wDZklE37dv7V4wHKad4oRhs8wDyfjHrMYyptL3HylefKGNxG4Z+b9M5COcR
-        D6fZl/2/TQ16EDjHP4c/U8QYengcxVChRoxh9Qy2oo/V6C9+tg6VSpJ2pxTbnLdrmaV5uc25v0c6jDCY
-        pUqShCKwuCnpCkryqUFOT0ppXcr3bu2nFycp80n5PLo3xpJO34sawgH/ADz0jwIeMtyDL8Kn7Dv/AEy3
-        wVB+1V+0B4T/AG49D+Bmu/EHR/EfgG48V6J4WudB1TSNAt/E2pLrfwt8f+M59TsJdA+HehwR2mg6j4b0
-        KO+vbrxLYXTvrtnp9n4Y1O2/tLWLb9OpOM/uwPT9yo7v3/spT2A/xxz+Afju9H/D4vwLaZww8c2YAwB8
-        o+Anid+gjixk848tc9ecEn0eHsFQx2E4ndejhr4PhjH42hL6phpShXo4jCqEoTnSlKlNxcl7Sm41YRk1
-        Gau3KeHrYyWdwr8k1h8hxmKpc1GjJwrUsThoxlGTheErScVKFpKMpRUk3c4D4qftSeOf2ZP2o/2l/G/w
-        /wD7EutWvPHXxC8KXum634YfxV/aFv8A8LDv77TrPSLGLWtBeHVrnVRDaQSTX/2N/tCrc+Qifax6tqP7
-        b3/BSG0+KNx8FpfhH8HLL4owzCCXwdqOqfAS31CGb+wB4o8maaP9pq4sY5BoEiam6NdbhDKEOJv3Z+Mv
-        27Phd8S/Df7THxim1PwV4wFv4k+Lup+MNAnsvCviTVbDVvD2p+NhrtlqFjq2laVfaPdr/ZksdxPBbahL
-        d2cwk069t7bVre4sVt/GC++L+vftg+NfjxYeG76bStT1rUJ7DUrOaOaRon8A2fhS2ZbG3L6hGjS2rwc2
-        42Jh5P3TB6/R82fDcoZfXprhzFVZ8J1sdUxGLnDEVK2ZYGlg6eDy/wB3HUFCdSFSalRSdd+zXJFSjO/3
-        eaLInRw1Z08pxNWWQVsVKpXqOcquMwdOhHD4NKni6KU5qco+ySdaTj7ibhM+gPib/wAFAv8AgpL8LdH1
-        zXPFvwx+BWl6f4f0+71XVGhk+G2t3MFjYpLNdyx2nhz476pcXTwwo0nkWizXMm3bBDLKVRvkT9lP4++M
-        v2j/APgpB8Bfip48ttIsvEvizxdrk1/aaFp/9laXGNF+Fnjzw/D9msf7S1fyh5emKHP9o3Jdw7s6uzpX
-        mPxi0v44eN/CvjKAeFvE10bzw/rESWVvpOs3d5fNJazAWtraRWLy3FxcY8qGCNXklkdEQFiKm/4Jy/Db
-        4n6P+2l+y3qOufDnx9oum6bqXjibVb7WfBXinRrTTvP0f4oxW0l/Nq2kWS2sdz/aWmR280xWGaS9tYIp
-        HnIjPj5bmGXVeGuK6ksNkeX42eU4rCUvqK+r1K9KpTlUlSUa2JrzqN1adKSVNrVJNSbPHyTEZfVyfiHE
-        fUMty7F/UquEpvDqrSqVqVSHtJQUcRia0p3qUoP3EndW97luf226hp9hdqGu7K0umUgK1xbQzMo3P90y
-        I5HQdD+eOc/+xNF/6BGl/wDgBa//ABo/5PfknbuP9WfqP/QpKgr8WPjTL/sPRf8AoEaX/wCC+0/+Nf5z
-        35JtRaTpUU6SR6Zp8ckZBR0srZHQ7pOVZYgyn6H8T1q1Uy/6wfh/6FJQAP/Z
-</value>
-  </data>
-  <data name="浠ュ綋鍓嶈瑙掑彟瀛楾oolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
-    <value>
-        iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAYAAADhAJiYAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
-        dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAOfSURBVFhH5ZjdS1NhGMD9G/oDugoCLyMIwauuoi4i
-        kKJC8CYjiKBQU7EkP2bLry0/ViJmfpCRZaaGLDR1TmdaOjGdqDB1OqduNsfcnNnT8xw942zn3fdJL3rh
-        x3ae95zn+XHej3O2uPSsRzEBAJLCLBIJrKSxwCwSgGSkhoESSWIljwZWYRZqBEIgiRSruD+nEHhaUg66
-        kVERGu0QL9TJKhAp3sIP0jOYYF8iFax6WYvni5vL5eKF7KzrefDUsAhbqEJVA8vLJhFGo/F4hIrLlIDH
-        IvIKCo9HKJwhQ1IZxFMePDUspBQKRtgTXjKhhuYWaG1rF1EoL+GlTuLpTAkhkgmZzWuHEd9WV9/IC13C
-        Q6aEEK8QQoUVyBiDIxfi7kIwAq2yUFRWv+BzRCSUSRd97lbDsmlFBMUD7UPzCwuQlpkDExN6Zn9t3euo
-        hFR00ZBuBGPiRvGjHrL/R2iJhg6H3W7fHsPDJ8hphClD/DMhk3MPagy/4J5uHW72m+HusAVUeGx0eKhb
-        gZxAggvJ5M+YKyVc6hsaYW5uHhrntyGhcwnOtC+KONexBLWzdtj/g+UBUngRHh+h1raPMKzTiWh60wJF
-        xaXMvgGNBtIeZsOgVgserHJba/ERaFt0wPTWLoxtun3iyQNmcO5xVokBhWIZMqfTCfJJm09RYtzq5q51
-        ePZFfdnfNylFMyKtUKmyEubsHjj7ybcgEUyI0NvclCYBkU6ot28Ank9vMQuGEpLprZSmGpFOaG5+wTt3
-        DofB22YMswercM3SdRjiGonS+bQCsdGWIBaqqKqGMqVSRL6sCLJyHjP7SssVsGo2w9Wvq16hGYMBvvT0
-        cNQ3NHFCuflFl7FgKg8vdFG9goewiIiFol1lwjtEq+e90eFl0/0b8mRybgUK44qfB0N8vY+7Q+NMoWiH
-        rF+jhbIp8QojQs2h3B/cEL9CpBNSVqq4vYZVMJTQtw0XpTmPSCdE19JnxuiGqCAJ0Q9KltCdIQulUCOc
-        DCGZkNVq44om9R5Mbp77I+tQMGHlhkYYp8ls292nFFcQkdANSkpFWS/qFKeJyep7++4DJ0Qv+eP6SbBj
-        EXqgCov7c2twjZvs2DKFMgQvRExS4ijZ4b/T+8807j307KK7QvsMPWjpk7YErYWbM33INV5CiFCIoHdr
-        1o89isf7xXhSEPpDIkkQS+3o6i4xraxqPR7PFBbaQWjzo+fWBSocCH+hiGEljQVmkUhgJY0eiPsLefhM
-        ZZ6pXgEAAAAASUVORK5CYII=
-</value>
-  </data>
-  <data name="澧為噺淇濆瓨ToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
-    <value>
-        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
 </value>
   </data>
   <data name="姘村钩鏃嬭浆ToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
@@ -1264,6 +1144,36 @@
         cYLmhTjGCKKKK+cPbP/Z
 </value>
   </data>
+  <data name="toolStripDropDownButton_宸ュ叿.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        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
+</value>
+  </data>
   <data name="閲嶇疆ToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
         iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAACUNJREFUWEfV
@@ -1384,6 +1294,44 @@
         HvgxBo/3f4dUfU9fRl0bAAAAAElFTkSuQmCC
 </value>
   </data>
+  <data name="toolStripSplitButton1.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        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
+        aCDCUwAAAABJRU5ErkJggg==
+</value>
+  </data>
   <data name="娴忚妯″紡ToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
         iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6
@@ -1459,6 +1407,58 @@
         JzyhAzpmxQk0AAAAAElFTkSuQmCC
 </value>
   </data>
+  <data name="toolStripComboBox_娴忚妯″紡.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6
+        JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAAACXBIWXMAAA68AAAOvAGVvHJJAAABo0lE
+        QVRYR+2Wv0rDUBjFLyiIVMQ/VFF0sYKLOqiTOPQNnH0Bl46+gSK6+BoODvogeYVsGQqBDIEMgQzXc8K9
+        bUmuyU3TJAg98IMvadJz+PJ9cIWUslOMN9tkUry+f0hC6XrR10KIdbACzAGalApwqELkA4DGBd8TsGEM
+        0FIHlgH+DgAaV2GA5SfoPABoXIUB/sUneHz+SomiSCZJou7aKRtgIvxmFYDGb99j+fQ5lnejHxkEQaUQ
+        pQHSpwrEADTXAVzXlQ+jl1rAvmfdAbadxsRxnDQAu+D7vvQ8zwoY3oIzcKToWwdgu2lIY20ex3EaLAxD
+        K2B4CQ7ApsK+AxRD0HCeIaRgOP8MUHW2gIJdd1tAwa44gA6h69nrxrcA4lmNZzamNHGutwD1PRiCK3AD
+        ON02XINTkN8CiKdVhmCLTGyBY3ChYL0L9gAn24Z9sA3yW2CpVdBTsK4vHaAMSm8ByvYDZLcAr+6A+iFM
+        ZiayW4BXB6bJrgL+YzoDZfDhmS3g5A8Au9AHeqqrMt2CMiC2m4Y01uZrgPOgp7oqlTpALXgLhPgF8kdM
+        dETRv3oAAAAASUVORK5CYII=
+</value>
+  </data>
+  <data name="toolStripDropDownButton1.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+        YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAOOSURBVFhH7ZfNTxNBGMZJPJn4F3g0JmI0Hjh40XhQThjD
+        obEohRjRCCLbglUQKFURtSWgBoUQ4hc0iqQVjRGpUQqKgl8tIlRBURJs2tLaQkoLpRQed5ZFqLtdrWC9
+        +EueZN+Z2dknM+877cT8h1BZ24xoi/7sclrLfhiIJilUETGwkhYx8c8MrKK1gmNALBYz+ptEZGAu/pUi
+        IYU6Ht5ANJBkn1y8gYFhH64+GYJC24cL+i9oMX/D9MwM2ytMikz55zlgG5nAsXozkipeo/75V3T2O9Hc
+        ZUXpvX6slrfirtHOjgyP+OCxP8uBneJdiEs7j/yKBmi12hARLC4vEkpf4PYrGxOHQ9BAOKanp1GsM0P7
+        i8ntIz6sy2vDVDD8diRTisgMkI+7PeOIK2xFQGDiOa4YPgtuhaCBn7eAMDU1hXsvB6G+P8C2CGMecuPQ
+        9R424hKRAfIsEomwKSkHmeWNnL2f00KGnGMQXzSyEReJVOAg4sPr9ULX1oMi3Qe2RZheegVkGjMbcYk4
+        B3w+H16+MSE2R48Rr59tDU/lo0E87nWyEZdkKsJzYIY+YEwmE5S1T6HUvmdbufgDQZTSeVKk62db+JFI
+        BY5ivhwgSkxMRHx8PNbvLsEe1R1c09wKyYFRXwDbT7dgo7KdORmJ6XAIGhDCYrGgo6MD8urHiMtvgaKh
+        B5q2Tzh/txubcxux5oAG6488RBKdgA+67GFN8Bogtf47stls0Ov1uFh9GXnltUgv1SJLVYeCknPYp9bR
+        JuqwIb8Ne2vewmB2IBgMcubgrYJAIPDb8vv9sFqtMBqNMBgMaGpqQlVVFbJz5JAU1zMrEad4iv2Xu5nf
+        isnJyZD3eatgYmJiUSKlWlZWBkqWA1HRDcRm3GTy4eC1dzB9dmJ8fPzHWN4qGBsbW7TcbjdUKhWkh48i
+        IU+D2MwGbDnVgazaXgxYnPB4PMw43hwYHR1dEg0PD0OtViO38AS2yeuwlrqNrWc6Uan/yBgkY3hXwOVy
+        LZlIftTU1KC8ohqi4kbsONuKR6/6GXOkn3cFHA7HkoqULKmW5mY92tufoa+vD3a7nelLS6e4BkhntJRB
+        yUMNkL/JC5VKSyIrmH2WnmDKJjlbyexdqlSJFGkBE5N6Jpp7h/QlU4V0mwK7ZXQflU/3HZ+djx6350AW
+        MqlcqM9dCjVAQ24o5KZCGqOl+ZsRDbmjkYA4ipbm74b/jpiY77B2tgj08x+0AAAAAElFTkSuQmCC
+</value>
+  </data>
+  <data name="tb_棰滆壊鍒嗙骇璁剧疆.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+        YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAKGSURBVFhH7ZfPa1NBEMeLBUHw0muOOfuniIJ4i5CkJiYl
+        qW3BPNHSSn+EaLC1aW2xggg9FEVF0b+gKCpCRa0iVqgQi1oVD8Uf0Tbv68zuvmTzupV9QdBDHnyYmR1m
+        3ocksKTtv3hW00fQDDS66/P8HjQDzxLt/H4hgLkr1riFMTzbf5CXhHjZRvmyNVg6ieelHWKWYIm6AC+2
+        RQmEPQFebIsSCBO7+f0tgZaAEHCH8sChiDW6wPrSCWAhZo1RoDpaML5oO7YI3O2Ee69TRJErvFr2D4to
+        FNg8UwRiZBiPyhij6M/j9b4u8O1FP9z7SQEeECoXtS9njAK/zo0DqRTAvwcmpaKO16eeLlB5dQruozTR
+        pfByPdYxCvw8Pwn0dCuOytjLUVHL5bkusPl6BO7jrKDqxUUZG84XM+LcKFC5MA04x4icgnPFcT2XPV0A
+        K3lUn/bUcLfLn8jaKMALg8JLWIAXBoVnCSlAD18KIYIPg8AzHSqa+n+CZ+RllH/Yj2ag0Y7o6WU0A88S
+        O/n9QuD6j0lrptYHcWB+Hy8J8bLZBVgzdLOKvc5tMUvUPwFvsS1KIOwJ8GJblAB/DfI30BJoCbDAeHkY
+        0ZcRa3SB4atfETkLa4wCE6ujSCxHayR90X/+1wWm3hXQvZIUZN8QXi7qhKoTimSDQP7ad8TpLmNiJYVX
+        K2p9wigws1aE8zaDHOGUs5RLuBZnKubK3M80CBRvVJC+SDc10aWinvvPjAKzn8Yw8KEPg+/rDGjRw6t1
+        gYlbG+ido1tao8+H3jMKXPpSwsjHnJm1rWe6wPSdKhz602SLUYAXBoWXsAAvDArPElKAnn97HdPD/1K5
+        YKMg8AxfqU3OtrX/BlpSCP2Wc+SAAAAAAElFTkSuQmCC
+</value>
+  </data>
   <metadata name="鍙抽敭_Menu.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
     <value>248, 17</value>
   </metadata>
diff --git a/Hydraulic/Hydro.MapView/MapViewNetWork.cs b/Hydraulic/Hydro.MapView/MapViewNetWork.cs
index fa25010..cd285db 100644
--- a/Hydraulic/Hydro.MapView/MapViewNetWork.cs
+++ b/Hydraulic/Hydro.MapView/MapViewNetWork.cs
@@ -891,7 +891,7 @@
                 list= base.Calc(inpPath); 
             }
             
-           
+            
 
             list.Sort((a, b) => string.Compare(a.Key, b.Key));
             Nodes.Sort((a, b) => string.Compare(a.ID, b.ID));
diff --git a/Hydro.ClientCore/Form2.Designer.cs b/Hydro.ClientCore/Form2.Designer.cs
index 228ac9f..65dc968 100644
--- a/Hydro.ClientCore/Form2.Designer.cs
+++ b/Hydro.ClientCore/Form2.Designer.cs
@@ -46,36 +46,37 @@
             this.mapViewer1.junction_multiply = 1F;
             this.mapViewer1.Link_multiply = 1F;
             this.mapViewer1.Location = new System.Drawing.Point(0, 0);
+            this.mapViewer1.Lock2DView = false;
             this.mapViewer1.MapCenter = ((System.Drawing.PointF)(resources.GetObject("mapViewer1.MapCenter")));
+            this.mapViewer1.mapOption = ((Hydro.MapView.MapDimensions)(resources.GetObject("mapViewer1.mapOption")));
             this.mapViewer1.Name = "mapViewer1";
             this.mapViewer1.Rotation = 0D;
             this.mapViewer1.RotationF = 90D;
             this.mapViewer1.ShowStatusBar = true;
             this.mapViewer1.showToolBar = true;
-            this.mapViewer1.Size = new System.Drawing.Size(1000, 666);
+            this.mapViewer1.Size = new System.Drawing.Size(912, 21);
             this.mapViewer1.TabIndex = 0;
             this.mapViewer1.zoom = 1F;
             // 
             // propertyForm1
             // 
             this.propertyForm1.Dock = System.Windows.Forms.DockStyle.Right;
-            this.propertyForm1.Location = new System.Drawing.Point(1000, 0);
+            this.propertyForm1.Location = new System.Drawing.Point(912, 0);
             this.propertyForm1.Name = "propertyForm1";
-            this.propertyForm1.Size = new System.Drawing.Size(272, 666);
+            this.propertyForm1.Size = new System.Drawing.Size(272, 21);
             this.propertyForm1.TabIndex = 1;
             // 
             // Form2
             // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
-            this.ClientSize = new System.Drawing.Size(1272, 666);
+            this.ClientSize = new System.Drawing.Size(1184, 21);
             this.Controls.Add(this.mapViewer1);
             this.Controls.Add(this.propertyForm1);
             this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
             this.Name = "Form2";
             this.ShowIcon = false;
             this.Text = "鍦板浘娴嬭瘯";
-            this.WindowState = System.Windows.Forms.FormWindowState.Maximized;
             this.Load += new System.EventHandler(this.Form2_Load);
             this.ResumeLayout(false);
 
diff --git a/Hydro.ClientCore/Form2.resx b/Hydro.ClientCore/Form2.resx
index 53b2a04..0dc51d2 100644
--- a/Hydro.ClientCore/Form2.resx
+++ b/Hydro.ClientCore/Form2.resx
@@ -124,6 +124,24 @@
         d2luZy5Qb2ludEYCAAAAAXgBeQAACwsCAAAAAAAAAAAAAAAL
 </value>
   </data>
+  <data name="mapViewer1.mapOption" mimetype="application/x-microsoft.net.object.binary.base64">
+    <value>
+        AAEAAAD/////AQAAAAAAAAAMAgAAAERIeWRyby5NYXBWaWV3LCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1
+        cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbAwDAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9u
+        PTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQUB
+        AAAAG0h5ZHJvLk1hcFZpZXcuTWFwRGltZW5zaW9ucw0AAAAXPENlbnRlcj5rX19CYWNraW5nRmllbGQV
+        PHpvb20+a19fQmFja2luZ0ZpZWxkGTxyb3RhdGlvbj5rX19CYWNraW5nRmllbGQKX3JvdGF0aW9uRho8
+        U2hvd0Zsb29yPmtfX0JhY2tpbmdGaWVsZBo8aXNTaG93UGljPmtfX0JhY2tpbmdGaWVsZBVpc0F1dG9C
+        YWNrZ3JvdW5kSW1hZ2UePGlzU2hvd1VuZmF2b3I+a19fQmFja2luZ0ZpZWxkGzxMb2NrMkRWaWV3Pmtf
+        X0JhY2tpbmdGaWVsZBs8aXNFZGl0TW9kZT5rX19CYWNraW5nRmllbGQYPElzT3J0aG8+a19fQmFja2lu
+        Z0ZpZWxkGzxDb2xvdXJOb2RlPmtfX0JhY2tpbmdGaWVsZBs8Q29sb3VyTGluaz5rX19CYWNraW5nRmll
+        bGQEAAAAAAAAAAAAAAQEFVN5c3RlbS5EcmF3aW5nLlBvaW50RgMAAAALBgYIAQEBAQEBGEh5ZHJvLk1h
+        cFZpZXcuQ29sb3VyVHlwZQIAAAAYSHlkcm8uTWFwVmlldy5Db2xvdXJUeXBlAgAAAAIAAAAF/P///xVT
+        eXN0ZW0uRHJhd2luZy5Qb2ludEYCAAAAAXgBeQAACwsDAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAAAA
+        AIBWQAAAAIABAAEAAQEF+////xhIeWRyby5NYXBWaWV3LkNvbG91clR5cGUBAAAAB3ZhbHVlX18ACAIA
+        AAAAAAAAAfr////7////AAAAAAs=
+</value>
+  </data>
   <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
   <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
diff --git a/Lib/Hydro.HydraulicHelper.dll b/Lib/Hydro.HydraulicHelper.dll
index df279aa..8a6f025 100644
--- a/Lib/Hydro.HydraulicHelper.dll
+++ b/Lib/Hydro.HydraulicHelper.dll
Binary files differ

--
Gitblit v1.9.3