Ver código fonte

优化监控界面

872510348 3 anos atrás
pai
commit
1211a51120

+ 80 - 0
WCS_Client/Extensions/JsonExtensions.cs

@@ -5,6 +5,7 @@ using System;
 using System.Collections.Generic;
 using System.ComponentModel;
 using System.Data;
+using System.Text.RegularExpressions;
 
 namespace WCS_Client
 {
@@ -107,6 +108,85 @@ namespace WCS_Client
                 var values = new object[3];
                 values[0] = describle;
                 values[1] = proname;
+
+                switch (proname)
+                {
+                    case "TaskID":
+                        values[1] = "任务号";
+                        break;
+
+                    case "TaskType":
+                        values[1] = "任务类型";
+                        break;
+
+                    case "WorkMode":
+                        values[1] = "运行模式";
+                        break;
+
+                    case "SystemStatus":
+                        values[1] = "运行状态";
+                        break;
+
+                    case "StartPosition":
+                        values[1] = "起始地址";
+                        break;
+
+                    case "PH_Status":
+                        values[1] = "光电信号";
+                        break;
+
+                    case "DestPosition":
+                        values[1] = "目标地址";
+                        break;
+
+                    //case "ACT_V":
+                    //    values[1] = "实际速度";
+                    //    break;
+
+                    case "GOODSSTART":
+                        values[1] = "起始地址";
+                        break;
+
+                    case "GOODSEND":
+                        values[1] = "目标地址";
+                        break;
+
+                    case "REQUEST":
+                        values[1] = "请求";
+                        break;
+
+                    case "RES1":
+                        values[1] = "手动入库";
+                        break;
+
+                    case "HEIGHT":
+                        values[1] = "高度";
+                        break;
+
+                    case "GOODSCODE":
+                        values[1] = "货物编码";
+                        break;
+
+                    case "GOODSTYPE":
+                        values[1] = "货物类型";
+                        break;
+
+                    case "GOODSSIZE":
+                        values[1] = "货物尺寸";
+                        break;
+
+                    case "PH_STATUS":
+                        values[1] = "光电信号";
+                        break;
+
+                    case "TASKNUM":
+                        values[1] = "任务号";
+                        break;
+                }
+
+                string P_regex = "^[\u4E00-\u9FA5]{0,}$";
+                var match = Regex.IsMatch(values[1].ToString(), P_regex, RegexOptions.IgnoreCase);
+                if (!match) continue;
                 values[2] = abc;
                 tb.Rows.Add(values);
             }

+ 2 - 1
WCS_Client/Frm/FrmMain.cs

@@ -127,7 +127,8 @@ namespace WCS_Client
 
                 //MBtn_Sys
                 AddMenu("MBtn_Sys", "MBtn_Interface_OPOrder", "日志管理", typeof(Frm.FrmLog), Btn_Click);
-                AddMenu("MBtn_Sys", "MBtn_Interface_OPUP", "系统设置", typeof(Frm.MBtn_Sys.FormSet), Btn_Click);
+                //AddMenu("MBtn_Sys", "MBtn_Interface_OPUP", "系统设置", typeof(Frm.MBtn_Sys.FormSet), Btn_Click);
+                AddMenu("MBtn_Sys", "MBtn_Interface_SrmInfoSet", "系统设置", typeof(Frm.FrmSrmInfoSet), Btn_Click);
             }
             catch (Exception ex)
             {

+ 22 - 27
WCS_Client/Frm/MBtn_AgvTask/MBtn_AgvTask.cs

@@ -2,15 +2,9 @@
 using DevComponents.DotNetBar.SuperGrid;
 using System;
 using System.Collections.Generic;
-using System.ComponentModel;
 using System.Data;
-using System.Drawing;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
 using System.Windows.Forms;
 using WCS.Data.Models;
-using WCS_Client;
 using WCS_Client.UC;
 using WCS_Client.Utility;
 
@@ -18,13 +12,15 @@ namespace WCS_Client.Frm
 {
     public partial class MBtn_AgvTask : Form
     {
-        int wcs_task_no = 0;
+        private int wcs_task_no = 0;
+
         public MBtn_AgvTask()
         {
             InitializeComponent();
             InitFrm();
         }
-        private void InitFrm() 
+
+        private void InitFrm()
         {
             List<GridColumn> GCList = new List<GridColumn>()
             {
@@ -45,7 +41,7 @@ namespace WCS_Client.Frm
             LCIList[LCIList.Count - 1].Tag = new LCWhereInfo() { QWhereText = "a.ID like '%{0}%'" };
 
             LCIList.Add(LCItemUtil.Add_TextboxX("AGVID", "AGV任务号:", 20, SubmitMethods, null));
-            LCIList[LCIList.Count - 1].Tag = new LCWhereInfo() { QWhereText = "a.AGVID like '%{0}%'" };;
+            LCIList[LCIList.Count - 1].Tag = new LCWhereInfo() { QWhereText = "a.AGVID like '%{0}%'" }; ;
 
             LCIList.Add(LCItemUtil.Add_TextboxX("Position", "起始地址:", 20, SubmitMethods, null));
             LCIList[LCIList.Count - 1].Tag = new LCWhereInfo() { QWhereText = "a.Position like '%{0}%'" };
@@ -59,7 +55,6 @@ namespace WCS_Client.Frm
             LCIList.Add(LCItemUtil.Add_ComboBoxEx("TaskType", "任务类型:", 20, null, SubmitMethods));
             TryCachHelper.TryExecute((db) =>
             {
-
                 var dtsex = db.Queryable<WCS_MAPPINGENTRY>().Where(v => v.MEP_MAPPINGTYPE == "TaskType").ToList();
                 DataTable dt = new DataTable();
                 DataRow dr;
@@ -76,11 +71,9 @@ namespace WCS_Client.Frm
                 LCIList[LCIList.Count - 1].Tag = new LCWhereInfo() { QWhereText = "a.TaskType like '%{0}%'" };
             });
 
-
             LCIList.Add(LCItemUtil.Add_ComboBoxEx("AGVStatus", "任务状态:", 20, null, SubmitMethods));
             TryCachHelper.TryExecute((db) =>
             {
-
                 var dtsex = db.Queryable<WCS_MAPPINGENTRY>().Where(v => v.MEP_MAPPINGTYPE == "AGVStatus").ToList();
                 DataTable dt = new DataTable();
                 DataRow dr;
@@ -111,18 +104,20 @@ namespace WCS_Client.Frm
                 uC_QueryPage1.RefreshData(1, 0);
             }, null);
         }
+
         private PageData QueryPageDataMethods(int PageIndex, int PageSize)
         {
-            string _SQLText = @"SELECT a.*,b.MEP_MAPPINGCHNAME AgvTaskTypeCh,c.MEP_MAPPINGCHNAME StatusCh,d.MEP_MAPPINGCHNAME AgvStatusCh  FROM dbo.WCS_AGVTask a 
-                                left join dbo.WCS_MAPPINGENTRY b on a.TaskType=b.MEP_MAPPINGNO and b.MEP_MAPPINGTYPE='TaskType' 
-                                left join dbo.WCS_MAPPINGENTRY c on a.Status=c.MEP_MAPPINGNO and c.MEP_MAPPINGTYPE='AGVStatus' 
+            string _SQLText = @"SELECT a.*,b.MEP_MAPPINGCHNAME AgvTaskTypeCh,c.MEP_MAPPINGCHNAME StatusCh,d.MEP_MAPPINGCHNAME AgvStatusCh  FROM dbo.WCS_AGVTask a
+                                left join dbo.WCS_MAPPINGENTRY b on a.TaskType=b.MEP_MAPPINGNO and b.MEP_MAPPINGTYPE='TaskType'
+                                left join dbo.WCS_MAPPINGENTRY c on a.Status=c.MEP_MAPPINGNO and c.MEP_MAPPINGTYPE='AGVStatus'
                                 left join dbo.WCS_MAPPINGENTRY d on a.AGVStatus=d.MEP_MAPPINGNO and d.MEP_MAPPINGTYPE='AGVStatus' Where 1=1 and Status < 99 ";
             string _Orderby = "a.CreateTime desc";
 
             PageData pd = BaseWorkflow.QueryPageData(_SQLText, _Orderby, uC_QueryPage1.GetQueryWhere(), PageIndex, PageSize);
             return pd;
         }
-        private void SubmitMethods(string LCName) 
+
+        private void SubmitMethods(string LCName)
         {
             if (LCName == "btn_QDB")
             {
@@ -181,9 +176,8 @@ namespace WCS_Client.Frm
                     string msg = TryCachHelper.TryExecute((db) =>
                     {
                         var agvtask = db.Queryable<WCS_AGVTask>().First(v => v.ID == id);
-                        if (agvtask.Status == Frm.AGVTaskStatus.新建 )
+                        if (agvtask.Status == Frm.AGVTaskStatus.新建)
                         {
-                          
                             agvtask.Status = Frm.AGVTaskStatus.取消;
                             db.Updateable(agvtask).UpdateColumns(it => new { it.Status }).ExecuteCommand();
                         }
@@ -205,17 +199,17 @@ namespace WCS_Client.Frm
                     MessageUtil.ShowTips("请选择任务。");
                     return;
                 }
-                int id = Convert.ToInt32(dt.Rows[0]["Task_Id"].ToString());
+                int id = Convert.ToInt32(dt.Rows[0]["ID"].ToString());
                 var result = MessageUtil.ShowYesNoAndWarning(string.Format("id[{0}]的任务要手动完成吗(请谨慎操作)?", id));
                 if (result == DialogResult.Yes)
                 {
                     string msg = TryCachHelper.TryExecute((db) =>
                     {
-                        var agvtask = db.Queryable<Middle_AGVTask>().First(v => v.Task_Id == id);
-                        agvtask.Task_WcsStatus = 99;
-                        agvtask.Task_UpdateUser = "wcs";
-                        agvtask.Task_UpdateDate = DateTime.Now;
-                        db.Updateable(agvtask).UpdateColumns(it => new { it.Task_WcsStatus, it.Task_UpdateUser, it.Task_UpdateDate }).ExecuteCommand();
+                        var agvtask = db.Queryable<WCS_AGVTask>().First(v => v.ID == id);
+                        agvtask.Status = AGVTaskStatus.完成;
+                        agvtask.AGVStatus = AGVTaskStatus.完成;
+                        agvtask.UpdateTime = DateTime.Now;
+                        db.Updateable(agvtask).UpdateColumns(it => new { it.Status, it.AGVStatus, it.UpdateTime }).ExecuteCommand();
                     });
                     if (string.IsNullOrWhiteSpace(msg)) msg = string.Format("ID[{0}]手动完成成功", id);
 
@@ -224,15 +218,16 @@ namespace WCS_Client.Frm
                 }
             }
         }
+
         private void DoubleClikMethod(DataRow dr)
         {
             //wcs_task_no = Convert.ToInt32(dr["TASK_NO"].ToString());
             //FrmWCS_TaskDIS_DTL Frm = new FrmWCS_TaskDIS_DTL(wcs_task_no);
             //Frm.Show();
         }
-        private void RefreshRoleMethods(bool ChkValue) 
-        {
 
+        private void RefreshRoleMethods(bool ChkValue)
+        {
         }
     }
-}
+}

+ 18 - 1
WCS_Client/Frm/MBtn_AgvTask/MBtn_SCANN.cs

@@ -26,7 +26,11 @@ namespace WCS_Client.Frm
             };
             List<LayoutControlItem> LCIList = new List<LayoutControlItem>();
 
-            LCIList.Add(LCItemUtil.Add_ButtonX("btn_QDB", "刷新", 80, 30, SubmitMethods));
+            LCIList.Add(LCItemUtil.Add_TextboxX("DEVICECODE", "输送线:", 20, SubmitMethods, null));
+            LCIList[LCIList.Count - 1].Tag = new LCWhereInfo() { QWhereText = "DEVICECODE like '%{0}%'" };
+
+            LCIList.Add(LCItemUtil.Add_ButtonX("btn_QDB", "查询", 80, 30, SubmitMethods));
+            LCIList.Add(LCItemUtil.Add_ButtonX("btn_QClear", "刷新", 80, 30, SubmitMethods));
 
             uC_QueryPage1.Init_QueryPage(30, true, true, "", GCList, LCIList, QueryPageDataMethods, RefreshRoleMethods, DoubleClikMethod, null, null);
             uC_QueryPage1.ClearLCItemValue();
@@ -47,10 +51,23 @@ namespace WCS_Client.Frm
 
         private void SubmitMethods(string LCName)
         {
+
             if (LCName == "btn_QDB")
             {
                 uC_QueryPage1.RefreshData();
             }
+            else if (LCName == "btn_QClear")
+            {
+                uC_QueryPage1.ShowOpaqueLayer();
+                uC_QueryPage1.ClearLCItemValue();
+                uC_QueryPage1.RefreshData(1, 0);
+                uC_QueryPage1.HideOpaqueLayer();
+            }
+
+            //if (LCName == "btn_QDB")
+            //{
+            //    uC_QueryPage1.RefreshData();
+            //}
         }
 
         private void DoubleClikMethod(DataRow dr)

+ 3 - 2
WCS_Client/Frm/MBtn_Log/FrmLog.cs

@@ -33,8 +33,9 @@ namespace WCS_Client.Frm
                 //SuperGridUtil.Get_GridColumn("Log_InfoDtl", "消息详情", 500),
                 //SuperGridUtil.Get_GridColumn("Log_AddUserName", "创建用户", 80),
                 SuperGridUtil.Get_Datetime_GridColumn("STARTTIME", "创建时间", 130),
-                SuperGridUtil.Get_GridColumn("UPDATETIME", "结束时间", 80),
-                SuperGridUtil.Get_Datetime_GridColumn("TIMES", "次数", 130)
+                SuperGridUtil.Get_GridColumn("UPDATETIME", "结束时间", 130),
+                SuperGridUtil.Get_Datetime_GridColumn("TIMES", "次数", 130),
+                //SuperGridUtil.Get_Datetime_GridColumn("Continued", "持续时间", 130)
             };
             List<LayoutControlItem> LCIList = new List<LayoutControlItem>();
             //LCIList.Add(LCItemUtil.Add_TextboxX("Log_Level", "消息等级:", 20, SubmitMethods, null));

+ 34 - 55
WCS_Client/Frm/MBtn_Monitor/FrmEquMsg_dtl.cs

@@ -1,19 +1,9 @@
 using DevComponents.DotNetBar.Layout;
 using DevComponents.DotNetBar.SuperGrid;
-using FreeRedis;
-using MessagePack;
-using MessagePack.Resolvers;
-using System;
 using System.Collections.Generic;
-using System.ComponentModel;
 using System.Data;
-using System.Drawing;
 using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
 using System.Windows.Forms;
-using WCS.Data;
-using WCS.Entity.Protocol;
 using WCS_Client.UC;
 using WCS_Client.Utility;
 
@@ -21,59 +11,46 @@ namespace WCS_Client.Frm
 {
     public partial class FrmEquMsg_dtl : Form
     {
-        DataTable dt = null;
-        string equName = string.Empty;
+        private DataTable dt = null;
+        private string equName = string.Empty;
+
         public FrmEquMsg_dtl(string equNo)
         {
             InitializeComponent();
-            equName = equNo;
+            equName = equNo.ToUpper();
             InitFrm();
         }
+
         private void InitFrm()
         {
-            //var plcItem = Current.PlcSet.FirstOrDefault(v => v.WCS_EquipmentInfoSet.Any(t => t.DEVICECODE == equName));
-
-            //var plcItem = SugarBase.DB.Queryable<WCS_SC521>().First(v => v.DEVICECODE == equName && v.ISLAST == true);
-            //RedisClient Redis = new RedisClient("81.69.99.176,database=11");
-            //MessagePackSerializer.DefaultOptions = StandardResolver.Options.WithCompression(MessagePackCompression.Lz4Block);
-            //Redis.Serialize = obj =>
-            //{
-            //    var bytes = MessagePackSerializer.Serialize(obj);
-            //    return bytes;
-            //};
-            //Redis.DeserializeRaw = (bytes, type) =>
-            //{
-            //    var obj = MessagePackSerializer.Deserialize(type, bytes);
-            //    return obj;
-            //};
             var pack = eqpData.deviceDataPack;
-            var convdata = pack.StationDatas;//输送机数据
-            var rgvdata = pack.RGVDatas;//穿梭车数据
-            var plcItem = pack.StationDatas.Datas.Where(o => o.Code == equName).FirstOrDefault();
-            dt = plcItem.D520.GetAttributesDataTable();
-            if (plcItem == null)
+            //string[] str = (string[])pack.StationDatas.Datas.Select(p => p.Code);
+            if (pack.StationDatas.Datas.Any(p => p.Code == equName))
             {
-                MessageBox.Show("该设备无数据。");
-                return;
+                var convdata = pack.StationDatas;//输送机数据
+                var plcItem = pack.StationDatas.Datas.Where(o => o.Code == equName).FirstOrDefault();
+                if (plcItem == null)
+                {
+                    MessageBox.Show("该设备无数据。");
+                    return;
+                }
+                dt = plcItem.D521.GetAttributesDataTable();
+            }
+
+            //string[] str2 = (string[])pack.RGVDatas.Datas.Select(p => p.Code);
+            if (pack.RGVDatas.Datas.Any(p => p.Code == equName))
+            {
+                var rgvdata = pack.RGVDatas;//输送机数据
+                var plcItem = pack.RGVDatas.Datas.Where(o => o.Code == equName).FirstOrDefault();
+                if (plcItem == null)
+                {
+                    MessageBox.Show("该设备无数据。");
+                    return;
+                }
+                dt = plcItem.D521.GetAttributesDataTable();
             }
-           // var equ = plcItem.WCS_EquipmentInfoSet.FirstOrDefault(v => v.DEVICECODE == equName);
-            string result = string.Empty;
 
-            //if (equ.Equ_Type == EquipmentType.srm.ToString())
-            //{
-            //    result = equ.EquSignal_Srm.ToJson();
-            //    dt = equ.EquSignal_Srm.GetAttributesDataTable();
-            //}
-            //else if (equ.Equ_Type == EquipmentType.rgv.ToString())
-            //{
-            //    result = equ.EquSignal_Rgv.ToJson();
-            //    dt = equ.EquSignal_Rgv.GetAttributesDataTable();
-            //}
-            //else if (equ.Equ_Type == EquipmentType.conveyor.ToString())
-            //{
-            //    result = equ.EquSignal_Conv.ToJson();
-            //    dt = equ.EquSignal_Conv.GetAttributesDataTable();
-            //}
+            string result = string.Empty;
 
             List<GridColumn> GCList = new List<GridColumn>()
             {
@@ -91,19 +68,21 @@ namespace WCS_Client.Frm
                 uC_QueryPage1.RefreshData(1, 0);
             }, null);
         }
+
         private PageData QueryPageDataMethodsms(int PageIndex, int PageSize)
         {
             PageData pd = BaseWorkflow.QueryDatatble(dt, PageIndex, PageSize);
             return pd;
         }
+
         private void RefreshRoleMethodsms(bool ChkValue)
         {
-
         }
+
         private void DoubleClikMethod(DataRow dr)
         {
-
         }
+
         private void SubmitMethods(string LCName)
         {
             if (LCName == "btn_QDB")
@@ -133,4 +112,4 @@ namespace WCS_Client.Frm
             }
         }
     }
-}
+}

+ 3 - 11
WCS_Client/Frm/MBtn_Monitor/FrmUpdateEquMsg.cs

@@ -1,21 +1,14 @@
 using DevComponents.DotNetBar;
 using System;
-using System.Collections.Generic;
-using System.ComponentModel;
 using System.Data;
-using System.Drawing;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using System.Windows.Forms;
-using WCS.Data.Models;
 using WCS_Client.UC;
 
 namespace WCS_Client.Frm.MBtn_Monitor
 {
     public partial class FrmUpdateEquMsg : Office2007Form
     {
-        DataRow dr = null;
+        private DataRow dr = null;
+
         public FrmUpdateEquMsg(DataRow datarow)
         {
             InitializeComponent();
@@ -35,7 +28,6 @@ namespace WCS_Client.Frm.MBtn_Monitor
 
         private void btnUpdateP_Click_1(object sender, EventArgs e)
         {
-
             var enuipmentinfo = new WCS_EQUIPMENTINFO();
             enuipmentinfo.Equ_Notes = txtEqu_Notes.Text.Trim();
 
@@ -58,4 +50,4 @@ namespace WCS_Client.Frm.MBtn_Monitor
             MessageUtil.ShowTips(result);
         }
     }
-}
+}

Diferenças do arquivo suprimidas por serem muito extensas
+ 6205 - 6300
WCS_Client/Frm/MBtn_Monitor/Frm_YongGuanMontior.Designer.cs


+ 85 - 29
WCS_Client/Frm/MBtn_Monitor/Frm_YongGuanMontior.cs

@@ -1,16 +1,11 @@
-using FreeRedis;
-using MessagePack;
-using MessagePack.Resolvers;
-using System;
+using System;
 using System.Collections.Generic;
 using System.Data;
 using System.Drawing;
 using System.Linq;
 using System.Threading;
-using System.Threading.Tasks;
 using System.Windows.Forms;
 using WCS.Data;
-using WCS.Data.Models;
 using WCS.Entity.Protocol;
 using WCS_Client.From.From_Montior;
 
@@ -18,11 +13,15 @@ namespace WCS_Client.Frm
 {
     public partial class Frm_YongGuanMontior : Form
     {
-        System.Timers.Timer _timer;
+        private System.Timers.Timer _timer;
+
         private delegate void ShowTextDelegate();// 创建委托和委托对象
+
         private List<string> _plcnameSet = new List<string>();
         private List<DDJSatatus> DDJSatatusSet = new List<DDJSatatus>();
         private List<RGVSatatus> RGVSatatusSet = new List<RGVSatatus>();
+        public bool isinitfrm = false;
+
         // 防止闪屏
         protected override CreateParams CreateParams
         {
@@ -33,12 +32,12 @@ namespace WCS_Client.Frm
                 return cp;
             }
         }
+
         public Frm_YongGuanMontior()
         {
+            isinitfrm = false;
             InitializeComponent();
             Init();
-
-
         }
 
         private void Init()
@@ -100,8 +99,8 @@ namespace WCS_Client.Frm
                     RGVSatatusSet.Add(rgvsatatus);
                 }
             }
-
         }
+
         private Control FindControl(string controlName)
         {
             var control = Controls.Find(controlName, true);
@@ -113,13 +112,15 @@ namespace WCS_Client.Frm
 
         private void Frm_YongGuanMontior_Load(object sender, EventArgs e)
         {
-            _timer = new System.Timers.Timer(5000);
+            _timer = new System.Timers.Timer(4000);
             _timer.Elapsed += new System.Timers.ElapsedEventHandler(theout);//到达时间的时候执行事件;
             _timer.AutoReset = true;//设置是执行一次(false)还是一直执行(true);
             _timer.Enabled = true;//是否执行System.Timers.Timer.Elapsed事件;
+            //this.BeginInvoke(new ShowTextDelegate(InItpan11));
         }
 
         private static int _theout = 0;
+
         private void theout(object sender, EventArgs e)
         {
             if (Interlocked.Exchange(ref _theout, 1) == 0)
@@ -132,7 +133,6 @@ namespace WCS_Client.Frm
                 }
                 catch (Exception ex)
                 {
-
                 }
                 finally
                 {
@@ -141,7 +141,6 @@ namespace WCS_Client.Frm
             }
         }
 
-
         private void ShowData()
         {
             try
@@ -153,7 +152,6 @@ namespace WCS_Client.Frm
                 }
                 else
                 {
-
                 }
             }
             catch (Exception ex)
@@ -162,8 +160,6 @@ namespace WCS_Client.Frm
             }
         }
 
-
-
         public void pan11()
         {
             try
@@ -178,8 +174,13 @@ namespace WCS_Client.Frm
 
                 foreach (var item in scdata.Datas)
                 {
+                    //只更新有变更的数据
+                    //if (eqpData.oldDeviceDataPack != null)
+                    //{
+                    //    var oldItem = eqpData.oldDeviceDataPack.SCDatas.Datas.FirstOrDefault(p => p.Code == item.Code);
+                    //    if (oldItem.ToString() == item.ToString()) return;
+                    //}
 
-                    //var equ = SugarBase.DB.Queryable<WCS_SC521>().First(v => v.DEVICECODE == item.DEVICECODE && v.ISLAST == true);
                     var ddjstatus = DDJSatatusSet.FirstOrDefault(v => v.SrmName == item.Code);
                     if (ddjstatus != null)
                     {
@@ -198,11 +199,9 @@ namespace WCS_Client.Frm
                         {
                             ddjstatus.G.Image = Properties.Resources.黄;
                         }
-
                         else if (item.D521.Mode.ToString() == "维修")
                         {
                             ddjstatus.G.Image = Properties.Resources.红;
-
                         }
 
                         ////状态
@@ -250,6 +249,10 @@ namespace WCS_Client.Frm
                 //RGV
                 foreach (var item in rgvdata.Datas)
                 {
+                    //只更新有变更的数据
+                    //var oldItem = eqpData.oldDeviceDataPack.RGVDatas.Datas.FirstOrDefault(p => p.Code == item.Code);
+                    //if (oldItem.ToString() == item.ToString()) return;
+
                     var rgvstatus = RGVSatatusSet.FirstOrDefault(v => v.RGVName == item.Code);
                     if (rgvstatus != null)
                     {
@@ -269,11 +272,9 @@ namespace WCS_Client.Frm
                         {
                             rgvstatus.G.Image = Properties.Resources.黄;
                         }
-
                         else if (item.D521.WorkMode.ToString() == "维修")
                         {
                             rgvstatus.G.Image = Properties.Resources.红;
-
                         }
 
                         ////状态
@@ -340,14 +341,18 @@ namespace WCS_Client.Frm
                 //输送线
                 foreach (var item in convdata.Datas)
                 {
+                    //只更新有变更的数据
+
                     var control = FindControl("con" + item.Code);
 
                     if (control != null)
                     {
-
                         if (control is Conveyor)
                         {
                             var con = (Conveyor)control;
+                            if (item.D523.Fault != 0) con.BackColor = Color.Red;
+                            else if (item.D523.Status == 0) con.BackColor = Color.Yellow;
+                            else con.BackColor = Color.FromArgb(0, 144, 154);
                             con.button1.Text = item.Code.ToString();
                             if (item.D521.PH_STATUS == true)
                             {
@@ -370,9 +375,11 @@ namespace WCS_Client.Frm
                         {
                             var con = (Conveyor_L)control;
                             con.button1.Text = item.Code.ToString();
+                            if (item.D523.Fault != 0) con.BackColor = Color.Red;
+                            else if (item.D523.Status == 0) con.BackColor = Color.Yellow;
+                            else con.BackColor = Color.FromArgb(0, 144, 154);
                             if (item.D521.PH_STATUS == true)
                             {
-
                                 if (con.button1.Tag.ToString() != "pall")
                                 {
                                     con.button1.BackgroundImage = Image.FromFile("Resources/Conveyor_L.png");//1009L11.png
@@ -392,6 +399,9 @@ namespace WCS_Client.Frm
                         {
                             var con = (Conveyor_R)control;
                             con.button1.Text = item.Code.ToString();
+                            if (item.D523.Fault != 0) con.BackColor = Color.Red;
+                            else if (item.D523.Status == 0) con.BackColor = Color.Yellow;
+                            else con.BackColor = Color.FromArgb(0, 144, 154);
                             if (item.D521.PH_STATUS == true)
                             {
                                 if (con.button1.Tag.ToString() != "pall")
@@ -413,6 +423,9 @@ namespace WCS_Client.Frm
                         {
                             var con = (Conveyor4_L_R)control;
                             con.button1.Text = item.Code.ToString();
+                            if (item.D523.Fault != 0) con.BackColor = Color.Red;
+                            else if (item.D523.Status == 0) con.BackColor = Color.Yellow;
+                            else con.BackColor = Color.FromArgb(0, 144, 154);
                             if (item.D521.PH_STATUS == true)
                             {
                                 if (con.button1.Tag.ToString() != "pall")
@@ -434,6 +447,9 @@ namespace WCS_Client.Frm
                         {
                             var con = (Conveyor3)control;
                             con.button1.Text = item.Code.ToString();
+                            if (item.D523.Fault != 0) con.BackColor = Color.Red;
+                            else if (item.D523.Status == 0) con.BackColor = Color.Yellow;
+                            else con.BackColor = Color.FromArgb(0, 144, 154);
                             if (item.D521.PH_STATUS == true)
                             {
                                 if (con.button1.Tag.ToString() != "pall")
@@ -455,6 +471,9 @@ namespace WCS_Client.Frm
                         {
                             var con = (Conveyor3_A)control;
                             con.button1.Text = item.Code.ToString();
+                            if (item.D523.Fault != 0) con.BackColor = Color.Red;
+                            else if (item.D523.Status == 0) con.BackColor = Color.Yellow;
+                            else con.BackColor = Color.FromArgb(0, 144, 154);
                             if (item.D521.PH_STATUS == true)
                             {
                                 if (con.button1.Tag.ToString() != "pall")
@@ -476,6 +495,9 @@ namespace WCS_Client.Frm
                         {
                             var con = (Conveyor3_B)control;
                             con.button1.Text = item.Code.ToString();
+                            if (item.D523.Fault != 0) con.BackColor = Color.Red;
+                            else if (item.D523.Status == 0) con.BackColor = Color.Yellow;
+                            else con.BackColor = Color.FromArgb(0, 144, 154);
                             if (item.D521.PH_STATUS == true)
                             {
                                 if (con.button1.Tag.ToString() != "pall")
@@ -497,6 +519,9 @@ namespace WCS_Client.Frm
                         {
                             var con = (Conveyor4_left)control;
                             con.button1.Text = item.Code.ToString();
+                            if (item.D523.Fault != 0) con.BackColor = Color.Red;
+                            else if (item.D523.Status == 0) con.BackColor = Color.Yellow;
+                            else con.BackColor = Color.FromArgb(0, 144, 154);
                             if (item.D521.PH_STATUS == true)
                             {
                                 if (con.button1.Tag.ToString() != "pall")
@@ -518,6 +543,9 @@ namespace WCS_Client.Frm
                         {
                             var con = (Conveyor4_right)control;
                             con.button1.Text = item.Code.ToString();
+                            if (item.D523.Fault != 0) con.BackColor = Color.Red;
+                            else if (item.D523.Status == 0) con.BackColor = Color.Yellow;
+                            else con.BackColor = Color.FromArgb(0, 144, 154);
                             if (item.D521.PH_STATUS == true)
                             {
                                 if (con.button1.Tag.ToString() != "pall")
@@ -537,11 +565,14 @@ namespace WCS_Client.Frm
                         }
                     }
                 }
-                eqpData.deviceDataPack = pack;
+                //eqpData.deviceDataPack = pack;
             }
             catch (Exception ex)
             {
-
+            }
+            finally
+            {
+                isinitfrm = true;
             }
         }
 
@@ -561,69 +592,81 @@ namespace WCS_Client.Frm
 
         private void con2114_Load(object sender, EventArgs e)
         {
-
         }
 
         private void tableCellLabel23_Load(object sender, EventArgs e)
         {
-
         }
 
         private void con2035_Load(object sender, EventArgs e)
         {
-
         }
+
+
     }
+
     public class DDJSatatus
     {
         /// <summary>
         /// 状态图标
         /// </summary>
         public PictureBox G { get; set; }
+
         /// <summary>
         /// 堆垛机名称
         /// </summary>
         public string SrmName { get; set; }
+
         /// <summary>
         /// 入库状态
         /// </summary>
         public Label LblInStatus { get; set; }
+
         /// <summary>
         /// 出库状态
         /// </summary>
         public Label LblOutStatus { get; set; }
+
         /// <summary>
         /// 堆垛机模式
         /// </summary>
         public Label DdjMode { get; set; }
+
         /// <summary>
         /// 堆垛机工作状态
         /// </summary>
         public Label DdjStatus { get; set; }
+
         /// <summary>
         /// 堆垛机工作任务
         /// </summary>
         public Label DdjOrdId { get; set; }
+
         /// <summary>
         /// 堆垛机作业类型
         /// </summary>
         public Label DdjOptType { get; set; }
+
         /// <summary>
         /// 堆垛机当前位置
         /// </summary>
         public Label DdjPosCurr { get; set; }
+
         /// <summary>
         /// 运行时间
         /// </summary>
         public Label DdjWorkTime { get; set; }
+
         /// <summary>
         /// 里程数
         /// </summary>
         public Label DdjTotal_KM { get; set; }
+
         /// <summary>
         /// 源仓位
         /// </summary>
         public Label DdjPosFrom { get; set; }
+
         /// <summary>
         /// 目标仓位
         /// </summary>
@@ -636,37 +679,50 @@ namespace WCS_Client.Frm
         /// 状态图标
         /// </summary>
         public PictureBox G { get; set; }
+
         /// <summary>
         /// RGV名称
         /// </summary>
         public string RGVName { get; set; }
+
         /// <summary>
         /// RGV模式
         /// </summary>
         public Label RGVMode { get; set; }
+
         /// <summary>
         /// RGV工作状态
         /// </summary>
         public Label RGVStatus { get; set; }
+
         /// <summary>
         /// RGV工作任务
         /// </summary>
         public Label RGVOrdId { get; set; }
+
         /// <summary>
         /// RGV作业类型
         /// </summary>
         public Label RGVOptType { get; set; }
+
         /// <summary>
         /// RGV当前位置
         /// </summary>
         public Label RGVPosCurr { get; set; }
+
         /// <summary>
         /// 起始站台
         /// </summary>
         public Label RGVPosFrom { get; set; }
+
         /// <summary>
         /// 目标站台
         /// </summary>
         public Label RGVPosTo { get; set; }
     }
-}
+
+    public class WCS_STATION5201 : WCS_STATION520
+    {
+        public new DateTime UPDATETIME { get; set; }
+    }
+}

+ 260 - 260
WCS_Client/Frm/MBtn_Monitor/Frm_YongGuanMontior.resx

@@ -118,9 +118,9 @@
     <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
   </resheader>
   <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
-  <data name="tableCellLabel17.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+  <data name="tableCellLabel1.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
-        iVBORw0KGgoAAAANSUhEUgAAABIAAATGCAYAAAArLvR9AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
+        iVBORw0KGgoAAAANSUhEUgAABMYAAAASCAYAAACw7dLmAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
         DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp
         bGUAAEjHnZZ3VFTXFofPvXd6oc0w0hl6ky4wgPQuIB0EURhmBhjKAMMMTWyIqEBEEREBRZCggAGjoUis
         iGIhKKhgD0gQUGIwiqioZEbWSnx5ee/l5ffHvd/aZ+9z99l7n7UuACRPHy4vBZYCIJkn4Ad6ONNXhUfQ
@@ -165,26 +165,20 @@
         RudN65tdA8sHzg46DF645Xrr8m2v29fvrLwzMBQydHc4cnjkLvvu5L2key/vZ9yff7DpIfph4SOpR+WP
         lR7X/aj3Y+uI5ciZUdfRvidBTx6Mscae/5T+04fx/Kfkp+UTqhONk2aTp6fcp24+W/1s/Hnq8/npgp+l
         f65+ofviu18cf+mbWTUz/pL/cuHX4lfyr468Xva6e9Z/9vGb5Dfzc4Vv5d8efcd41/s+7P3EfOYH7IeK
-        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALEgAACxIB0t1+/AAAAwlJREFUeF7t1DGqHgQQ
-        hVF3Z+0ybCRY2du4jCQP87bhzn79k2KYl4ELl1cEPMXXzMAp709fvrz+8x49ocd79H+DPn56eXx++fu7
-        +7OX/+7P/9v7Cf38y2+PXz/8+d392e9//PX1//YOmkDf+vGgJlAOlDshm70CTaA+UA6UOyGbvQJNoD5Q
-        DpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGb
-        vQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+
-        UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDsh
-        m70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2g
-        PlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7
-        IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJN
-        oD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6U
-        OyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70C
-        TaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAO
-        lDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9
-        Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlDunaDXx7/8Rgs+1wgFSwAAAABJRU5E
-        rkJggg==
+        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALDAAACwwBP0AiyAAAAahJREFUeF7t3bFpA1EU
+        RUF3p1hlOBHGkXInLkPyYqkNdWbDhstZ2PxNMOG5BTz4/LfH4/kHAAAAAMO8HMYAAAAAmMhhDAAAAICR
+        HMYAAAAAGMlhDAAAAICR9g9jp/PlkNt9yX6r2mKvVVvstWqLvVZtsdeqLfZatcVeq7bYa9UWe63aYq9V
+        W+y1aou9Vm2x16ot9lq1xV6rtthb7R/G3j++DvlZfrPfqrbYa9UWe63aYq9VW+y1aou9Vm2x16ot9lq1
+        xV6rtthr1RZ7rdpir1Vb7LVqi71WbbHXqi32Vp5SAgAAADCSwxgAAAAAIzmMAQAAADCSwxgAAAAAIzmM
+        AQAAADDS/mHs8/p9yHLwl4Bqi71WbbHXqi32WrXFXqu22GvVFnut2mKvVVvstWqLvVZtsdeqLfZatcVe
+        q7bYa9UWe63aYm+1fxg7nS+H3O5L9lvVFnut2mKvVVvstWqLvVZtsdeqLfZatcVeq7bYa9UWe63aYq9V
+        W+y1aou9Vm2x16ot9lq1xd7KU0oAAAAARnIYAwAAAGAkhzEAAAAARnIYAwAAAGCi5+sf9Z0LPvxaiMMA
+        AAAASUVORK5CYII=
 </value>
   </data>
-  <data name="tableCellLabel18.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+  <data name="tableCellLabel3.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
-        iVBORw0KGgoAAAANSUhEUgAAABIAAATGCAYAAAArLvR9AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
+        iVBORw0KGgoAAAANSUhEUgAABMYAAAASCAYAAACw7dLmAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
         DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp
         bGUAAEjHnZZ3VFTXFofPvXd6oc0w0hl6ky4wgPQuIB0EURhmBhjKAMMMTWyIqEBEEREBRZCggAGjoUis
         iGIhKKhgD0gQUGIwiqioZEbWSnx5ee/l5ffHvd/aZ+9z99l7n7UuACRPHy4vBZYCIJkn4Ad6ONNXhUfQ
@@ -229,26 +223,20 @@
         RudN65tdA8sHzg46DF645Xrr8m2v29fvrLwzMBQydHc4cnjkLvvu5L2key/vZ9yff7DpIfph4SOpR+WP
         lR7X/aj3Y+uI5ciZUdfRvidBTx6Mscae/5T+04fx/Kfkp+UTqhONk2aTp6fcp24+W/1s/Hnq8/npgp+l
         f65+ofviu18cf+mbWTUz/pL/cuHX4lfyr468Xva6e9Z/9vGb5Dfzc4Vv5d8efcd41/s+7P3EfOYH7IeK
-        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALEgAACxIB0t1+/AAAAwlJREFUeF7t1DGqHgQQ
-        hVF3Z+0ybCRY2du4jCQP87bhzn79k2KYl4ELl1cEPMXXzMAp709fvrz+8x49ocd79H+DPn56eXx++fu7
-        +7OX/+7P/9v7Cf38y2+PXz/8+d392e9//PX1//YOmkDf+vGgJlAOlDshm70CTaA+UA6UOyGbvQJNoD5Q
-        DpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGb
-        vQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+
-        UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDsh
-        m70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2g
-        PlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7
-        IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJN
-        oD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6U
-        OyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70C
-        TaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAO
-        lDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9
-        Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlDunaDXx7/8Rgs+1wgFSwAAAABJRU5E
-        rkJggg==
+        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALDAAACwwBP0AiyAAAAahJREFUeF7t3bFpA1EU
+        RUF3p1hlOBHGkXInLkPyYqkNdWbDhstZ2PxNMOG5BTz4/LfH4/kHAAAAAMO8HMYAAAAAmMhhDAAAAICR
+        HMYAAAAAGMlhDAAAAICR9g9jp/PlkNt9yX6r2mKvVVvstWqLvVZtsdeqLfZatcVeq7bYa9UWe63aYq9V
+        W+y1aou9Vm2x16ot9lq1xV6rtthb7R/G3j++DvlZfrPfqrbYa9UWe63aYq9VW+y1aou9Vm2x16ot9lq1
+        xV6rtthr1RZ7rdpir1Vb7LVqi71WbbHXqi32Vp5SAgAAADCSwxgAAAAAIzmMAQAAADCSwxgAAAAAIzmM
+        AQAAADDS/mHs8/p9yHLwl4Bqi71WbbHXqi32WrXFXqu22GvVFnut2mKvVVvstWqLvVZtsdeqLfZatcVe
+        q7bYa9UWe63aYm+1fxg7nS+H3O5L9lvVFnut2mKvVVvstWqLvVZtsdeqLfZatcVeq7bYa9UWe63aYq9V
+        W+y1aou9Vm2x16ot9lq1xd7KU0oAAAAARnIYAwAAAGAkhzEAAAAARnIYAwAAAGCi5+sf9Z0LPvxaiMMA
+        AAAASUVORK5CYII=
 </value>
   </data>
-  <data name="tableCellLabel14.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+  <data name="tableCellLabel4.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
-        iVBORw0KGgoAAAANSUhEUgAAABIAAATGCAYAAAArLvR9AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
+        iVBORw0KGgoAAAANSUhEUgAABMYAAAASCAYAAACw7dLmAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
         DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp
         bGUAAEjHnZZ3VFTXFofPvXd6oc0w0hl6ky4wgPQuIB0EURhmBhjKAMMMTWyIqEBEEREBRZCggAGjoUis
         iGIhKKhgD0gQUGIwiqioZEbWSnx5ee/l5ffHvd/aZ+9z99l7n7UuACRPHy4vBZYCIJkn4Ad6ONNXhUfQ
@@ -293,24 +281,18 @@
         RudN65tdA8sHzg46DF645Xrr8m2v29fvrLwzMBQydHc4cnjkLvvu5L2key/vZ9yff7DpIfph4SOpR+WP
         lR7X/aj3Y+uI5ciZUdfRvidBTx6Mscae/5T+04fx/Kfkp+UTqhONk2aTp6fcp24+W/1s/Hnq8/npgp+l
         f65+ofviu18cf+mbWTUz/pL/cuHX4lfyr468Xva6e9Z/9vGb5Dfzc4Vv5d8efcd41/s+7P3EfOYH7IeK
-        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALEgAACxIB0t1+/AAAAwlJREFUeF7t1DGqHgQQ
-        hVF3Z+0ybCRY2du4jCQP87bhzn79k2KYl4ELl1cEPMXXzMAp709fvrz+8x49ocd79H+DPn56eXx++fu7
-        +7OX/+7P/9v7Cf38y2+PXz/8+d392e9//PX1//YOmkDf+vGgJlAOlDshm70CTaA+UA6UOyGbvQJNoD5Q
-        DpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGb
-        vQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+
-        UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDsh
-        m70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2g
-        PlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7
-        IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJN
-        oD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6U
-        OyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70C
-        TaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAO
-        lDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9
-        Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlDunaDXx7/8Rgs+1wgFSwAAAABJRU5E
-        rkJggg==
+        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALDAAACwwBP0AiyAAAAahJREFUeF7t3bFpA1EU
+        RUF3p1hlOBHGkXInLkPyYqkNdWbDhstZ2PxNMOG5BTz4/LfH4/kHAAAAAMO8HMYAAAAAmMhhDAAAAICR
+        HMYAAAAAGMlhDAAAAICR9g9jp/PlkNt9yX6r2mKvVVvstWqLvVZtsdeqLfZatcVeq7bYa9UWe63aYq9V
+        W+y1aou9Vm2x16ot9lq1xV6rtthb7R/G3j++DvlZfrPfqrbYa9UWe63aYq9VW+y1aou9Vm2x16ot9lq1
+        xV6rtthr1RZ7rdpir1Vb7LVqi71WbbHXqi32Vp5SAgAAADCSwxgAAAAAIzmMAQAAADCSwxgAAAAAIzmM
+        AQAAADDS/mHs8/p9yHLwl4Bqi71WbbHXqi32WrXFXqu22GvVFnut2mKvVVvstWqLvVZtsdeqLfZatcVe
+        q7bYa9UWe63aYm+1fxg7nS+H3O5L9lvVFnut2mKvVVvstWqLvVZtsdeqLfZatcVeq7bYa9UWe63aYq9V
+        W+y1aou9Vm2x16ot9lq1xd7KU0oAAAAARnIYAwAAAGAkhzEAAAAARnIYAwAAAGCi5+sf9Z0LPvxaiMMA
+        AAAASUVORK5CYII=
 </value>
   </data>
-  <data name="tableCellLabel16.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+  <data name="tableCellLabel31.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
         iVBORw0KGgoAAAANSUhEUgAAABIAAATGCAYAAAArLvR9AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
         DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp
@@ -357,7 +339,7 @@
         RudN65tdA8sHzg46DF645Xrr8m2v29fvrLwzMBQydHc4cnjkLvvu5L2key/vZ9yff7DpIfph4SOpR+WP
         lR7X/aj3Y+uI5ciZUdfRvidBTx6Mscae/5T+04fx/Kfkp+UTqhONk2aTp6fcp24+W/1s/Hnq8/npgp+l
         f65+ofviu18cf+mbWTUz/pL/cuHX4lfyr468Xva6e9Z/9vGb5Dfzc4Vv5d8efcd41/s+7P3EfOYH7IeK
-        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALEgAACxIB0t1+/AAAAwlJREFUeF7t1DGqHgQQ
+        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALDAAACwwBP0AiyAAAAwlJREFUeF7t1DGqHgQQ
         hVF3Z+0ybCRY2du4jCQP87bhzn79k2KYl4ELl1cEPMXXzMAp709fvrz+8x49ocd79H+DPn56eXx++fu7
         +7OX/+7P/9v7Cf38y2+PXz/8+d392e9//PX1//YOmkDf+vGgJlAOlDshm70CTaA+UA6UOyGbvQJNoD5Q
         DpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGb
@@ -374,7 +356,7 @@
         rkJggg==
 </value>
   </data>
-  <data name="tableCellLabel12.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+  <data name="srm15.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
         iVBORw0KGgoAAAANSUhEUgAAABIAAATGCAYAAAArLvR9AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
         DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp
@@ -421,7 +403,7 @@
         RudN65tdA8sHzg46DF645Xrr8m2v29fvrLwzMBQydHc4cnjkLvvu5L2key/vZ9yff7DpIfph4SOpR+WP
         lR7X/aj3Y+uI5ciZUdfRvidBTx6Mscae/5T+04fx/Kfkp+UTqhONk2aTp6fcp24+W/1s/Hnq8/npgp+l
         f65+ofviu18cf+mbWTUz/pL/cuHX4lfyr468Xva6e9Z/9vGb5Dfzc4Vv5d8efcd41/s+7P3EfOYH7IeK
-        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALEgAACxIB0t1+/AAAAwlJREFUeF7t1DGqHgQQ
+        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALDAAACwwBP0AiyAAAAwlJREFUeF7t1DGqHgQQ
         hVF3Z+0ybCRY2du4jCQP87bhzn79k2KYl4ELl1cEPMXXzMAp709fvrz+8x49ocd79H+DPn56eXx++fu7
         +7OX/+7P/9v7Cf38y2+PXz/8+d392e9//PX1//YOmkDf+vGgJlAOlDshm70CTaA+UA6UOyGbvQJNoD5Q
         DpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGb
@@ -438,7 +420,7 @@
         rkJggg==
 </value>
   </data>
-  <data name="tableCellLabel13.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+  <data name="tableCellLabel33.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
         iVBORw0KGgoAAAANSUhEUgAAABIAAATGCAYAAAArLvR9AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
         DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp
@@ -485,7 +467,7 @@
         RudN65tdA8sHzg46DF645Xrr8m2v29fvrLwzMBQydHc4cnjkLvvu5L2key/vZ9yff7DpIfph4SOpR+WP
         lR7X/aj3Y+uI5ciZUdfRvidBTx6Mscae/5T+04fx/Kfkp+UTqhONk2aTp6fcp24+W/1s/Hnq8/npgp+l
         f65+ofviu18cf+mbWTUz/pL/cuHX4lfyr468Xva6e9Z/9vGb5Dfzc4Vv5d8efcd41/s+7P3EfOYH7IeK
-        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALEgAACxIB0t1+/AAAAwlJREFUeF7t1DGqHgQQ
+        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALDAAACwwBP0AiyAAAAwlJREFUeF7t1DGqHgQQ
         hVF3Z+0ybCRY2du4jCQP87bhzn79k2KYl4ELl1cEPMXXzMAp709fvrz+8x49ocd79H+DPn56eXx++fu7
         +7OX/+7P/9v7Cf38y2+PXz/8+d392e9//PX1//YOmkDf+vGgJlAOlDshm70CTaA+UA6UOyGbvQJNoD5Q
         DpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGb
@@ -502,7 +484,7 @@
         rkJggg==
 </value>
   </data>
-  <data name="tableCellLabel10.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+  <data name="tableCellLabel34.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
         iVBORw0KGgoAAAANSUhEUgAAABIAAATGCAYAAAArLvR9AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
         DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp
@@ -549,7 +531,7 @@
         RudN65tdA8sHzg46DF645Xrr8m2v29fvrLwzMBQydHc4cnjkLvvu5L2key/vZ9yff7DpIfph4SOpR+WP
         lR7X/aj3Y+uI5ciZUdfRvidBTx6Mscae/5T+04fx/Kfkp+UTqhONk2aTp6fcp24+W/1s/Hnq8/npgp+l
         f65+ofviu18cf+mbWTUz/pL/cuHX4lfyr468Xva6e9Z/9vGb5Dfzc4Vv5d8efcd41/s+7P3EfOYH7IeK
-        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALEgAACxIB0t1+/AAAAwlJREFUeF7t1DGqHgQQ
+        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALDAAACwwBP0AiyAAAAwlJREFUeF7t1DGqHgQQ
         hVF3Z+0ybCRY2du4jCQP87bhzn79k2KYl4ELl1cEPMXXzMAp709fvrz+8x49ocd79H+DPn56eXx++fu7
         +7OX/+7P/9v7Cf38y2+PXz/8+d392e9//PX1//YOmkDf+vGgJlAOlDshm70CTaA+UA6UOyGbvQJNoD5Q
         DpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGb
@@ -566,7 +548,7 @@
         rkJggg==
 </value>
   </data>
-  <data name="tableCellLabel11.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+  <data name="tableCellLabel10.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
         iVBORw0KGgoAAAANSUhEUgAAABIAAATGCAYAAAArLvR9AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
         DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp
@@ -613,7 +595,7 @@
         RudN65tdA8sHzg46DF645Xrr8m2v29fvrLwzMBQydHc4cnjkLvvu5L2key/vZ9yff7DpIfph4SOpR+WP
         lR7X/aj3Y+uI5ciZUdfRvidBTx6Mscae/5T+04fx/Kfkp+UTqhONk2aTp6fcp24+W/1s/Hnq8/npgp+l
         f65+ofviu18cf+mbWTUz/pL/cuHX4lfyr468Xva6e9Z/9vGb5Dfzc4Vv5d8efcd41/s+7P3EfOYH7IeK
-        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALEgAACxIB0t1+/AAAAwlJREFUeF7t1DGqHgQQ
+        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALDAAACwwBP0AiyAAAAwlJREFUeF7t1DGqHgQQ
         hVF3Z+0ybCRY2du4jCQP87bhzn79k2KYl4ELl1cEPMXXzMAp709fvrz+8x49ocd79H+DPn56eXx++fu7
         +7OX/+7P/9v7Cf38y2+PXz/8+d392e9//PX1//YOmkDf+vGgJlAOlDshm70CTaA+UA6UOyGbvQJNoD5Q
         DpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGb
@@ -630,9 +612,9 @@
         rkJggg==
 </value>
   </data>
-  <data name="tableCellLabel23.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+  <data name="tableCellLabel11.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
-        iVBORw0KGgoAAAANSUhEUgAABMYAAAASCAYAAACw7dLmAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
+        iVBORw0KGgoAAAANSUhEUgAAABIAAATGCAYAAAArLvR9AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
         DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp
         bGUAAEjHnZZ3VFTXFofPvXd6oc0w0hl6ky4wgPQuIB0EURhmBhjKAMMMTWyIqEBEEREBRZCggAGjoUis
         iGIhKKhgD0gQUGIwiqioZEbWSnx5ee/l5ffHvd/aZ+9z99l7n7UuACRPHy4vBZYCIJkn4Ad6ONNXhUfQ
@@ -677,20 +659,26 @@
         RudN65tdA8sHzg46DF645Xrr8m2v29fvrLwzMBQydHc4cnjkLvvu5L2key/vZ9yff7DpIfph4SOpR+WP
         lR7X/aj3Y+uI5ciZUdfRvidBTx6Mscae/5T+04fx/Kfkp+UTqhONk2aTp6fcp24+W/1s/Hnq8/npgp+l
         f65+ofviu18cf+mbWTUz/pL/cuHX4lfyr468Xva6e9Z/9vGb5Dfzc4Vv5d8efcd41/s+7P3EfOYH7IeK
-        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALEgAACxIB0t1+/AAAAahJREFUeF7t3bFpA1EU
-        RUF3p1hlOBHGkXInLkPyYqkNdWbDhstZ2PxNMOG5BTz4/LfH4/kHAAAAAMO8HMYAAAAAmMhhDAAAAICR
-        HMYAAAAAGMlhDAAAAICR9g9jp/PlkNt9yX6r2mKvVVvstWqLvVZtsdeqLfZatcVeq7bYa9UWe63aYq9V
-        W+y1aou9Vm2x16ot9lq1xV6rtthb7R/G3j++DvlZfrPfqrbYa9UWe63aYq9VW+y1aou9Vm2x16ot9lq1
-        xV6rtthr1RZ7rdpir1Vb7LVqi71WbbHXqi32Vp5SAgAAADCSwxgAAAAAIzmMAQAAADCSwxgAAAAAIzmM
-        AQAAADDS/mHs8/p9yHLwl4Bqi71WbbHXqi32WrXFXqu22GvVFnut2mKvVVvstWqLvVZtsdeqLfZatcVe
-        q7bYa9UWe63aYm+1fxg7nS+H3O5L9lvVFnut2mKvVVvstWqLvVZtsdeqLfZatcVeq7bYa9UWe63aYq9V
-        W+y1aou9Vm2x16ot9lq1xd7KU0oAAAAARnIYAwAAAGAkhzEAAAAARnIYAwAAAGCi5+sf9Z0LPvxaiMMA
-        AAAASUVORK5CYII=
+        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALDAAACwwBP0AiyAAAAwlJREFUeF7t1DGqHgQQ
+        hVF3Z+0ybCRY2du4jCQP87bhzn79k2KYl4ELl1cEPMXXzMAp709fvrz+8x49ocd79H+DPn56eXx++fu7
+        +7OX/+7P/9v7Cf38y2+PXz/8+d392e9//PX1//YOmkDf+vGgJlAOlDshm70CTaA+UA6UOyGbvQJNoD5Q
+        DpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGb
+        vQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+
+        UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDsh
+        m70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2g
+        PlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7
+        IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJN
+        oD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6U
+        OyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70C
+        TaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAO
+        lDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9
+        Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlDunaDXx7/8Rgs+1wgFSwAAAABJRU5E
+        rkJggg==
 </value>
   </data>
-  <data name="tableCellLabel24.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+  <data name="tableCellLabel12.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
-        iVBORw0KGgoAAAANSUhEUgAABMYAAAASCAYAAACw7dLmAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
+        iVBORw0KGgoAAAANSUhEUgAAABIAAATGCAYAAAArLvR9AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
         DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp
         bGUAAEjHnZZ3VFTXFofPvXd6oc0w0hl6ky4wgPQuIB0EURhmBhjKAMMMTWyIqEBEEREBRZCggAGjoUis
         iGIhKKhgD0gQUGIwiqioZEbWSnx5ee/l5ffHvd/aZ+9z99l7n7UuACRPHy4vBZYCIJkn4Ad6ONNXhUfQ
@@ -735,20 +723,26 @@
         RudN65tdA8sHzg46DF645Xrr8m2v29fvrLwzMBQydHc4cnjkLvvu5L2key/vZ9yff7DpIfph4SOpR+WP
         lR7X/aj3Y+uI5ciZUdfRvidBTx6Mscae/5T+04fx/Kfkp+UTqhONk2aTp6fcp24+W/1s/Hnq8/npgp+l
         f65+ofviu18cf+mbWTUz/pL/cuHX4lfyr468Xva6e9Z/9vGb5Dfzc4Vv5d8efcd41/s+7P3EfOYH7IeK
-        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALEgAACxIB0t1+/AAAAahJREFUeF7t3bFpA1EU
-        RUF3p1hlOBHGkXInLkPyYqkNdWbDhstZ2PxNMOG5BTz4/LfH4/kHAAAAAMO8HMYAAAAAmMhhDAAAAICR
-        HMYAAAAAGMlhDAAAAICR9g9jp/PlkNt9yX6r2mKvVVvstWqLvVZtsdeqLfZatcVeq7bYa9UWe63aYq9V
-        W+y1aou9Vm2x16ot9lq1xV6rtthb7R/G3j++DvlZfrPfqrbYa9UWe63aYq9VW+y1aou9Vm2x16ot9lq1
-        xV6rtthr1RZ7rdpir1Vb7LVqi71WbbHXqi32Vp5SAgAAADCSwxgAAAAAIzmMAQAAADCSwxgAAAAAIzmM
-        AQAAADDS/mHs8/p9yHLwl4Bqi71WbbHXqi32WrXFXqu22GvVFnut2mKvVVvstWqLvVZtsdeqLfZatcVe
-        q7bYa9UWe63aYm+1fxg7nS+H3O5L9lvVFnut2mKvVVvstWqLvVZtsdeqLfZatcVeq7bYa9UWe63aYq9V
-        W+y1aou9Vm2x16ot9lq1xd7KU0oAAAAARnIYAwAAAGAkhzEAAAAARnIYAwAAAGCi5+sf9Z0LPvxaiMMA
-        AAAASUVORK5CYII=
+        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALDAAACwwBP0AiyAAAAwlJREFUeF7t1DGqHgQQ
+        hVF3Z+0ybCRY2du4jCQP87bhzn79k2KYl4ELl1cEPMXXzMAp709fvrz+8x49ocd79H+DPn56eXx++fu7
+        +7OX/+7P/9v7Cf38y2+PXz/8+d392e9//PX1//YOmkDf+vGgJlAOlDshm70CTaA+UA6UOyGbvQJNoD5Q
+        DpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGb
+        vQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+
+        UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDsh
+        m70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2g
+        PlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7
+        IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJN
+        oD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6U
+        OyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70C
+        TaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAO
+        lDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9
+        Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlDunaDXx7/8Rgs+1wgFSwAAAABJRU5E
+        rkJggg==
 </value>
   </data>
-  <data name="tableCellLabel1.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+  <data name="tableCellLabel13.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
-        iVBORw0KGgoAAAANSUhEUgAABMYAAAASCAYAAACw7dLmAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
+        iVBORw0KGgoAAAANSUhEUgAAABIAAATGCAYAAAArLvR9AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
         DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp
         bGUAAEjHnZZ3VFTXFofPvXd6oc0w0hl6ky4wgPQuIB0EURhmBhjKAMMMTWyIqEBEEREBRZCggAGjoUis
         iGIhKKhgD0gQUGIwiqioZEbWSnx5ee/l5ffHvd/aZ+9z99l7n7UuACRPHy4vBZYCIJkn4Ad6ONNXhUfQ
@@ -793,20 +787,26 @@
         RudN65tdA8sHzg46DF645Xrr8m2v29fvrLwzMBQydHc4cnjkLvvu5L2key/vZ9yff7DpIfph4SOpR+WP
         lR7X/aj3Y+uI5ciZUdfRvidBTx6Mscae/5T+04fx/Kfkp+UTqhONk2aTp6fcp24+W/1s/Hnq8/npgp+l
         f65+ofviu18cf+mbWTUz/pL/cuHX4lfyr468Xva6e9Z/9vGb5Dfzc4Vv5d8efcd41/s+7P3EfOYH7IeK
-        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALEgAACxIB0t1+/AAAAahJREFUeF7t3bFpA1EU
-        RUF3p1hlOBHGkXInLkPyYqkNdWbDhstZ2PxNMOG5BTz4/LfH4/kHAAAAAMO8HMYAAAAAmMhhDAAAAICR
-        HMYAAAAAGMlhDAAAAICR9g9jp/PlkNt9yX6r2mKvVVvstWqLvVZtsdeqLfZatcVeq7bYa9UWe63aYq9V
-        W+y1aou9Vm2x16ot9lq1xV6rtthb7R/G3j++DvlZfrPfqrbYa9UWe63aYq9VW+y1aou9Vm2x16ot9lq1
-        xV6rtthr1RZ7rdpir1Vb7LVqi71WbbHXqi32Vp5SAgAAADCSwxgAAAAAIzmMAQAAADCSwxgAAAAAIzmM
-        AQAAADDS/mHs8/p9yHLwl4Bqi71WbbHXqi32WrXFXqu22GvVFnut2mKvVVvstWqLvVZtsdeqLfZatcVe
-        q7bYa9UWe63aYm+1fxg7nS+H3O5L9lvVFnut2mKvVVvstWqLvVZtsdeqLfZatcVeq7bYa9UWe63aYq9V
-        W+y1aou9Vm2x16ot9lq1xd7KU0oAAAAARnIYAwAAAGAkhzEAAAAARnIYAwAAAGCi5+sf9Z0LPvxaiMMA
-        AAAASUVORK5CYII=
+        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALDAAACwwBP0AiyAAAAwlJREFUeF7t1DGqHgQQ
+        hVF3Z+0ybCRY2du4jCQP87bhzn79k2KYl4ELl1cEPMXXzMAp709fvrz+8x49ocd79H+DPn56eXx++fu7
+        +7OX/+7P/9v7Cf38y2+PXz/8+d392e9//PX1//YOmkDf+vGgJlAOlDshm70CTaA+UA6UOyGbvQJNoD5Q
+        DpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGb
+        vQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+
+        UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDsh
+        m70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2g
+        PlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7
+        IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJN
+        oD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6U
+        OyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70C
+        TaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAO
+        lDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9
+        Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlDunaDXx7/8Rgs+1wgFSwAAAABJRU5E
+        rkJggg==
 </value>
   </data>
-  <data name="tableCellLabel2.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+  <data name="srm14.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
-        iVBORw0KGgoAAAANSUhEUgAABMYAAAASCAYAAACw7dLmAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
+        iVBORw0KGgoAAAANSUhEUgAAABIAAATGCAYAAAArLvR9AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
         DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp
         bGUAAEjHnZZ3VFTXFofPvXd6oc0w0hl6ky4wgPQuIB0EURhmBhjKAMMMTWyIqEBEEREBRZCggAGjoUis
         iGIhKKhgD0gQUGIwiqioZEbWSnx5ee/l5ffHvd/aZ+9z99l7n7UuACRPHy4vBZYCIJkn4Ad6ONNXhUfQ
@@ -851,20 +851,26 @@
         RudN65tdA8sHzg46DF645Xrr8m2v29fvrLwzMBQydHc4cnjkLvvu5L2key/vZ9yff7DpIfph4SOpR+WP
         lR7X/aj3Y+uI5ciZUdfRvidBTx6Mscae/5T+04fx/Kfkp+UTqhONk2aTp6fcp24+W/1s/Hnq8/npgp+l
         f65+ofviu18cf+mbWTUz/pL/cuHX4lfyr468Xva6e9Z/9vGb5Dfzc4Vv5d8efcd41/s+7P3EfOYH7IeK
-        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALEgAACxIB0t1+/AAAAahJREFUeF7t3bFpA1EU
-        RUF3p1hlOBHGkXInLkPyYqkNdWbDhstZ2PxNMOG5BTz4/LfH4/kHAAAAAMO8HMYAAAAAmMhhDAAAAICR
-        HMYAAAAAGMlhDAAAAICR9g9jp/PlkNt9yX6r2mKvVVvstWqLvVZtsdeqLfZatcVeq7bYa9UWe63aYq9V
-        W+y1aou9Vm2x16ot9lq1xV6rtthb7R/G3j++DvlZfrPfqrbYa9UWe63aYq9VW+y1aou9Vm2x16ot9lq1
-        xV6rtthr1RZ7rdpir1Vb7LVqi71WbbHXqi32Vp5SAgAAADCSwxgAAAAAIzmMAQAAADCSwxgAAAAAIzmM
-        AQAAADDS/mHs8/p9yHLwl4Bqi71WbbHXqi32WrXFXqu22GvVFnut2mKvVVvstWqLvVZtsdeqLfZatcVe
-        q7bYa9UWe63aYm+1fxg7nS+H3O5L9lvVFnut2mKvVVvstWqLvVZtsdeqLfZatcVeq7bYa9UWe63aYq9V
-        W+y1aou9Vm2x16ot9lq1xd7KU0oAAAAARnIYAwAAAGAkhzEAAAAARnIYAwAAAGCi5+sf9Z0LPvxaiMMA
-        AAAASUVORK5CYII=
+        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALDAAACwwBP0AiyAAAAwlJREFUeF7t1DGqHgQQ
+        hVF3Z+0ybCRY2du4jCQP87bhzn79k2KYl4ELl1cEPMXXzMAp709fvrz+8x49ocd79H+DPn56eXx++fu7
+        +7OX/+7P/9v7Cf38y2+PXz/8+d392e9//PX1//YOmkDf+vGgJlAOlDshm70CTaA+UA6UOyGbvQJNoD5Q
+        DpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGb
+        vQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+
+        UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDsh
+        m70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2g
+        PlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7
+        IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJN
+        oD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6U
+        OyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70C
+        TaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAO
+        lDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9
+        Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlDunaDXx7/8Rgs+1wgFSwAAAABJRU5E
+        rkJggg==
 </value>
   </data>
-  <data name="tableCellLabel3.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+  <data name="tableCellLabel30.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
-        iVBORw0KGgoAAAANSUhEUgAABMYAAAASCAYAAACw7dLmAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
+        iVBORw0KGgoAAAANSUhEUgAAABIAAATGCAYAAAArLvR9AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
         DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp
         bGUAAEjHnZZ3VFTXFofPvXd6oc0w0hl6ky4wgPQuIB0EURhmBhjKAMMMTWyIqEBEEREBRZCggAGjoUis
         iGIhKKhgD0gQUGIwiqioZEbWSnx5ee/l5ffHvd/aZ+9z99l7n7UuACRPHy4vBZYCIJkn4Ad6ONNXhUfQ
@@ -909,20 +915,26 @@
         RudN65tdA8sHzg46DF645Xrr8m2v29fvrLwzMBQydHc4cnjkLvvu5L2key/vZ9yff7DpIfph4SOpR+WP
         lR7X/aj3Y+uI5ciZUdfRvidBTx6Mscae/5T+04fx/Kfkp+UTqhONk2aTp6fcp24+W/1s/Hnq8/npgp+l
         f65+ofviu18cf+mbWTUz/pL/cuHX4lfyr468Xva6e9Z/9vGb5Dfzc4Vv5d8efcd41/s+7P3EfOYH7IeK
-        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALEgAACxIB0t1+/AAAAahJREFUeF7t3bFpA1EU
-        RUF3p1hlOBHGkXInLkPyYqkNdWbDhstZ2PxNMOG5BTz4/LfH4/kHAAAAAMO8HMYAAAAAmMhhDAAAAICR
-        HMYAAAAAGMlhDAAAAICR9g9jp/PlkNt9yX6r2mKvVVvstWqLvVZtsdeqLfZatcVeq7bYa9UWe63aYq9V
-        W+y1aou9Vm2x16ot9lq1xV6rtthb7R/G3j++DvlZfrPfqrbYa9UWe63aYq9VW+y1aou9Vm2x16ot9lq1
-        xV6rtthr1RZ7rdpir1Vb7LVqi71WbbHXqi32Vp5SAgAAADCSwxgAAAAAIzmMAQAAADCSwxgAAAAAIzmM
-        AQAAADDS/mHs8/p9yHLwl4Bqi71WbbHXqi32WrXFXqu22GvVFnut2mKvVVvstWqLvVZtsdeqLfZatcVe
-        q7bYa9UWe63aYm+1fxg7nS+H3O5L9lvVFnut2mKvVVvstWqLvVZtsdeqLfZatcVeq7bYa9UWe63aYq9V
-        W+y1aou9Vm2x16ot9lq1xd7KU0oAAAAARnIYAwAAAGAkhzEAAAAARnIYAwAAAGCi5+sf9Z0LPvxaiMMA
-        AAAASUVORK5CYII=
+        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALDAAACwwBP0AiyAAAAwlJREFUeF7t1DGqHgQQ
+        hVF3Z+0ybCRY2du4jCQP87bhzn79k2KYl4ELl1cEPMXXzMAp709fvrz+8x49ocd79H+DPn56eXx++fu7
+        +7OX/+7P/9v7Cf38y2+PXz/8+d392e9//PX1//YOmkDf+vGgJlAOlDshm70CTaA+UA6UOyGbvQJNoD5Q
+        DpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGb
+        vQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+
+        UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDsh
+        m70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2g
+        PlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7
+        IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJN
+        oD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6U
+        OyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70C
+        TaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAO
+        lDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9
+        Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlDunaDXx7/8Rgs+1wgFSwAAAABJRU5E
+        rkJggg==
 </value>
   </data>
-  <data name="tableCellLabel4.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+  <data name="tableCellLabel16.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
-        iVBORw0KGgoAAAANSUhEUgAABMYAAAASCAYAAACw7dLmAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
+        iVBORw0KGgoAAAANSUhEUgAAABIAAATGCAYAAAArLvR9AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
         DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp
         bGUAAEjHnZZ3VFTXFofPvXd6oc0w0hl6ky4wgPQuIB0EURhmBhjKAMMMTWyIqEBEEREBRZCggAGjoUis
         iGIhKKhgD0gQUGIwiqioZEbWSnx5ee/l5ffHvd/aZ+9z99l7n7UuACRPHy4vBZYCIJkn4Ad6ONNXhUfQ
@@ -967,20 +979,26 @@
         RudN65tdA8sHzg46DF645Xrr8m2v29fvrLwzMBQydHc4cnjkLvvu5L2key/vZ9yff7DpIfph4SOpR+WP
         lR7X/aj3Y+uI5ciZUdfRvidBTx6Mscae/5T+04fx/Kfkp+UTqhONk2aTp6fcp24+W/1s/Hnq8/npgp+l
         f65+ofviu18cf+mbWTUz/pL/cuHX4lfyr468Xva6e9Z/9vGb5Dfzc4Vv5d8efcd41/s+7P3EfOYH7IeK
-        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALEgAACxIB0t1+/AAAAahJREFUeF7t3bFpA1EU
-        RUF3p1hlOBHGkXInLkPyYqkNdWbDhstZ2PxNMOG5BTz4/LfH4/kHAAAAAMO8HMYAAAAAmMhhDAAAAICR
-        HMYAAAAAGMlhDAAAAICR9g9jp/PlkNt9yX6r2mKvVVvstWqLvVZtsdeqLfZatcVeq7bYa9UWe63aYq9V
-        W+y1aou9Vm2x16ot9lq1xV6rtthb7R/G3j++DvlZfrPfqrbYa9UWe63aYq9VW+y1aou9Vm2x16ot9lq1
-        xV6rtthr1RZ7rdpir1Vb7LVqi71WbbHXqi32Vp5SAgAAADCSwxgAAAAAIzmMAQAAADCSwxgAAAAAIzmM
-        AQAAADDS/mHs8/p9yHLwl4Bqi71WbbHXqi32WrXFXqu22GvVFnut2mKvVVvstWqLvVZtsdeqLfZatcVe
-        q7bYa9UWe63aYm+1fxg7nS+H3O5L9lvVFnut2mKvVVvstWqLvVZtsdeqLfZatcVeq7bYa9UWe63aYq9V
-        W+y1aou9Vm2x16ot9lq1xd7KU0oAAAAARnIYAwAAAGAkhzEAAAAARnIYAwAAAGCi5+sf9Z0LPvxaiMMA
-        AAAASUVORK5CYII=
+        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALDAAACwwBP0AiyAAAAwlJREFUeF7t1DGqHgQQ
+        hVF3Z+0ybCRY2du4jCQP87bhzn79k2KYl4ELl1cEPMXXzMAp709fvrz+8x49ocd79H+DPn56eXx++fu7
+        +7OX/+7P/9v7Cf38y2+PXz/8+d392e9//PX1//YOmkDf+vGgJlAOlDshm70CTaA+UA6UOyGbvQJNoD5Q
+        DpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGb
+        vQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+
+        UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDsh
+        m70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2g
+        PlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7
+        IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJN
+        oD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6U
+        OyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70C
+        TaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAO
+        lDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9
+        Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlDunaDXx7/8Rgs+1wgFSwAAAABJRU5E
+        rkJggg==
 </value>
   </data>
-  <data name="tableCellLabel6.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+  <data name="tableCellLabel14.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
-        iVBORw0KGgoAAAANSUhEUgAABMYAAAASCAYAAACw7dLmAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
+        iVBORw0KGgoAAAANSUhEUgAAABIAAATGCAYAAAArLvR9AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
         DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp
         bGUAAEjHnZZ3VFTXFofPvXd6oc0w0hl6ky4wgPQuIB0EURhmBhjKAMMMTWyIqEBEEREBRZCggAGjoUis
         iGIhKKhgD0gQUGIwiqioZEbWSnx5ee/l5ffHvd/aZ+9z99l7n7UuACRPHy4vBZYCIJkn4Ad6ONNXhUfQ
@@ -1025,20 +1043,26 @@
         RudN65tdA8sHzg46DF645Xrr8m2v29fvrLwzMBQydHc4cnjkLvvu5L2key/vZ9yff7DpIfph4SOpR+WP
         lR7X/aj3Y+uI5ciZUdfRvidBTx6Mscae/5T+04fx/Kfkp+UTqhONk2aTp6fcp24+W/1s/Hnq8/npgp+l
         f65+ofviu18cf+mbWTUz/pL/cuHX4lfyr468Xva6e9Z/9vGb5Dfzc4Vv5d8efcd41/s+7P3EfOYH7IeK
-        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALEgAACxIB0t1+/AAAAahJREFUeF7t3bFpA1EU
-        RUF3p1hlOBHGkXInLkPyYqkNdWbDhstZ2PxNMOG5BTz4/LfH4/kHAAAAAMO8HMYAAAAAmMhhDAAAAICR
-        HMYAAAAAGMlhDAAAAICR9g9jp/PlkNt9yX6r2mKvVVvstWqLvVZtsdeqLfZatcVeq7bYa9UWe63aYq9V
-        W+y1aou9Vm2x16ot9lq1xV6rtthb7R/G3j++DvlZfrPfqrbYa9UWe63aYq9VW+y1aou9Vm2x16ot9lq1
-        xV6rtthr1RZ7rdpir1Vb7LVqi71WbbHXqi32Vp5SAgAAADCSwxgAAAAAIzmMAQAAADCSwxgAAAAAIzmM
-        AQAAADDS/mHs8/p9yHLwl4Bqi71WbbHXqi32WrXFXqu22GvVFnut2mKvVVvstWqLvVZtsdeqLfZatcVe
-        q7bYa9UWe63aYm+1fxg7nS+H3O5L9lvVFnut2mKvVVvstWqLvVZtsdeqLfZatcVeq7bYa9UWe63aYq9V
-        W+y1aou9Vm2x16ot9lq1xd7KU0oAAAAARnIYAwAAAGAkhzEAAAAARnIYAwAAAGCi5+sf9Z0LPvxaiMMA
-        AAAASUVORK5CYII=
+        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALDAAACwwBP0AiyAAAAwlJREFUeF7t1DGqHgQQ
+        hVF3Z+0ybCRY2du4jCQP87bhzn79k2KYl4ELl1cEPMXXzMAp709fvrz+8x49ocd79H+DPn56eXx++fu7
+        +7OX/+7P/9v7Cf38y2+PXz/8+d392e9//PX1//YOmkDf+vGgJlAOlDshm70CTaA+UA6UOyGbvQJNoD5Q
+        DpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGb
+        vQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+
+        UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDsh
+        m70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2g
+        PlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7
+        IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJN
+        oD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6U
+        OyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70C
+        TaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAO
+        lDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9
+        Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlDunaDXx7/8Rgs+1wgFSwAAAABJRU5E
+        rkJggg==
 </value>
   </data>
-  <data name="tableCellLabel8.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+  <data name="srm13.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
-        iVBORw0KGgoAAAANSUhEUgAABMYAAAASCAYAAACw7dLmAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
+        iVBORw0KGgoAAAANSUhEUgAAABIAAATGCAYAAAArLvR9AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
         DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp
         bGUAAEjHnZZ3VFTXFofPvXd6oc0w0hl6ky4wgPQuIB0EURhmBhjKAMMMTWyIqEBEEREBRZCggAGjoUis
         iGIhKKhgD0gQUGIwiqioZEbWSnx5ee/l5ffHvd/aZ+9z99l7n7UuACRPHy4vBZYCIJkn4Ad6ONNXhUfQ
@@ -1083,18 +1107,24 @@
         RudN65tdA8sHzg46DF645Xrr8m2v29fvrLwzMBQydHc4cnjkLvvu5L2key/vZ9yff7DpIfph4SOpR+WP
         lR7X/aj3Y+uI5ciZUdfRvidBTx6Mscae/5T+04fx/Kfkp+UTqhONk2aTp6fcp24+W/1s/Hnq8/npgp+l
         f65+ofviu18cf+mbWTUz/pL/cuHX4lfyr468Xva6e9Z/9vGb5Dfzc4Vv5d8efcd41/s+7P3EfOYH7IeK
-        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALEgAACxIB0t1+/AAAAahJREFUeF7t3bFpA1EU
-        RUF3p1hlOBHGkXInLkPyYqkNdWbDhstZ2PxNMOG5BTz4/LfH4/kHAAAAAMO8HMYAAAAAmMhhDAAAAICR
-        HMYAAAAAGMlhDAAAAICR9g9jp/PlkNt9yX6r2mKvVVvstWqLvVZtsdeqLfZatcVeq7bYa9UWe63aYq9V
-        W+y1aou9Vm2x16ot9lq1xV6rtthb7R/G3j++DvlZfrPfqrbYa9UWe63aYq9VW+y1aou9Vm2x16ot9lq1
-        xV6rtthr1RZ7rdpir1Vb7LVqi71WbbHXqi32Vp5SAgAAADCSwxgAAAAAIzmMAQAAADCSwxgAAAAAIzmM
-        AQAAADDS/mHs8/p9yHLwl4Bqi71WbbHXqi32WrXFXqu22GvVFnut2mKvVVvstWqLvVZtsdeqLfZatcVe
-        q7bYa9UWe63aYm+1fxg7nS+H3O5L9lvVFnut2mKvVVvstWqLvVZtsdeqLfZatcVeq7bYa9UWe63aYq9V
-        W+y1aou9Vm2x16ot9lq1xd7KU0oAAAAARnIYAwAAAGAkhzEAAAAARnIYAwAAAGCi5+sf9Z0LPvxaiMMA
-        AAAASUVORK5CYII=
+        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALDAAACwwBP0AiyAAAAwlJREFUeF7t1DGqHgQQ
+        hVF3Z+0ybCRY2du4jCQP87bhzn79k2KYl4ELl1cEPMXXzMAp709fvrz+8x49ocd79H+DPn56eXx++fu7
+        +7OX/+7P/9v7Cf38y2+PXz/8+d392e9//PX1//YOmkDf+vGgJlAOlDshm70CTaA+UA6UOyGbvQJNoD5Q
+        DpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGb
+        vQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+
+        UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDsh
+        m70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2g
+        PlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7
+        IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJN
+        oD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6U
+        OyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70C
+        TaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAO
+        lDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9
+        Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlDunaDXx7/8Rgs+1wgFSwAAAABJRU5E
+        rkJggg==
 </value>
   </data>
-  <data name="tableCellLabel9.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+  <data name="tableCellLabel17.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
         iVBORw0KGgoAAAANSUhEUgAAABIAAATGCAYAAAArLvR9AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
         DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp
@@ -1141,7 +1171,7 @@
         RudN65tdA8sHzg46DF645Xrr8m2v29fvrLwzMBQydHc4cnjkLvvu5L2key/vZ9yff7DpIfph4SOpR+WP
         lR7X/aj3Y+uI5ciZUdfRvidBTx6Mscae/5T+04fx/Kfkp+UTqhONk2aTp6fcp24+W/1s/Hnq8/npgp+l
         f65+ofviu18cf+mbWTUz/pL/cuHX4lfyr468Xva6e9Z/9vGb5Dfzc4Vv5d8efcd41/s+7P3EfOYH7IeK
-        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALEgAACxIB0t1+/AAAAwlJREFUeF7t1DGqHgQQ
+        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALDAAACwwBP0AiyAAAAwlJREFUeF7t1DGqHgQQ
         hVF3Z+0ybCRY2du4jCQP87bhzn79k2KYl4ELl1cEPMXXzMAp709fvrz+8x49ocd79H+DPn56eXx++fu7
         +7OX/+7P/9v7Cf38y2+PXz/8+d392e9//PX1//YOmkDf+vGgJlAOlDshm70CTaA+UA6UOyGbvQJNoD5Q
         DpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGb
@@ -1158,7 +1188,7 @@
         rkJggg==
 </value>
   </data>
-  <data name="tableCellLabel15.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+  <data name="tableCellLabel18.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
         iVBORw0KGgoAAAANSUhEUgAAABIAAATGCAYAAAArLvR9AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
         DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp
@@ -1205,7 +1235,7 @@
         RudN65tdA8sHzg46DF645Xrr8m2v29fvrLwzMBQydHc4cnjkLvvu5L2key/vZ9yff7DpIfph4SOpR+WP
         lR7X/aj3Y+uI5ciZUdfRvidBTx6Mscae/5T+04fx/Kfkp+UTqhONk2aTp6fcp24+W/1s/Hnq8/npgp+l
         f65+ofviu18cf+mbWTUz/pL/cuHX4lfyr468Xva6e9Z/9vGb5Dfzc4Vv5d8efcd41/s+7P3EfOYH7IeK
-        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALEgAACxIB0t1+/AAAAwlJREFUeF7t1DGqHgQQ
+        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALDAAACwwBP0AiyAAAAwlJREFUeF7t1DGqHgQQ
         hVF3Z+0ybCRY2du4jCQP87bhzn79k2KYl4ELl1cEPMXXzMAp709fvrz+8x49ocd79H+DPn56eXx++fu7
         +7OX/+7P/9v7Cf38y2+PXz/8+d392e9//PX1//YOmkDf+vGgJlAOlDshm70CTaA+UA6UOyGbvQJNoD5Q
         DpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGb
@@ -1269,7 +1299,7 @@
         RudN65tdA8sHzg46DF645Xrr8m2v29fvrLwzMBQydHc4cnjkLvvu5L2key/vZ9yff7DpIfph4SOpR+WP
         lR7X/aj3Y+uI5ciZUdfRvidBTx6Mscae/5T+04fx/Kfkp+UTqhONk2aTp6fcp24+W/1s/Hnq8/npgp+l
         f65+ofviu18cf+mbWTUz/pL/cuHX4lfyr468Xva6e9Z/9vGb5Dfzc4Vv5d8efcd41/s+7P3EfOYH7IeK
-        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALEgAACxIB0t1+/AAAAwlJREFUeF7t1DGqHgQQ
+        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALDAAACwwBP0AiyAAAAwlJREFUeF7t1DGqHgQQ
         hVF3Z+0ybCRY2du4jCQP87bhzn79k2KYl4ELl1cEPMXXzMAp709fvrz+8x49ocd79H+DPn56eXx++fu7
         +7OX/+7P/9v7Cf38y2+PXz/8+d392e9//PX1//YOmkDf+vGgJlAOlDshm70CTaA+UA6UOyGbvQJNoD5Q
         DpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGb
@@ -1286,9 +1316,9 @@
         rkJggg==
 </value>
   </data>
-  <data name="tableCellLabel30.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+  <data name="tableCellLabel24.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
-        iVBORw0KGgoAAAANSUhEUgAAABIAAATGCAYAAAArLvR9AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
+        iVBORw0KGgoAAAANSUhEUgAABMYAAAASCAYAAACw7dLmAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
         DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp
         bGUAAEjHnZZ3VFTXFofPvXd6oc0w0hl6ky4wgPQuIB0EURhmBhjKAMMMTWyIqEBEEREBRZCggAGjoUis
         iGIhKKhgD0gQUGIwiqioZEbWSnx5ee/l5ffHvd/aZ+9z99l7n7UuACRPHy4vBZYCIJkn4Ad6ONNXhUfQ
@@ -1333,26 +1363,20 @@
         RudN65tdA8sHzg46DF645Xrr8m2v29fvrLwzMBQydHc4cnjkLvvu5L2key/vZ9yff7DpIfph4SOpR+WP
         lR7X/aj3Y+uI5ciZUdfRvidBTx6Mscae/5T+04fx/Kfkp+UTqhONk2aTp6fcp24+W/1s/Hnq8/npgp+l
         f65+ofviu18cf+mbWTUz/pL/cuHX4lfyr468Xva6e9Z/9vGb5Dfzc4Vv5d8efcd41/s+7P3EfOYH7IeK
-        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALEgAACxIB0t1+/AAAAwlJREFUeF7t1DGqHgQQ
-        hVF3Z+0ybCRY2du4jCQP87bhzn79k2KYl4ELl1cEPMXXzMAp709fvrz+8x49ocd79H+DPn56eXx++fu7
-        +7OX/+7P/9v7Cf38y2+PXz/8+d392e9//PX1//YOmkDf+vGgJlAOlDshm70CTaA+UA6UOyGbvQJNoD5Q
-        DpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGb
-        vQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+
-        UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDsh
-        m70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2g
-        PlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7
-        IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJN
-        oD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6U
-        OyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70C
-        TaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAO
-        lDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9
-        Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlDunaDXx7/8Rgs+1wgFSwAAAABJRU5E
-        rkJggg==
+        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALDAAACwwBP0AiyAAAAahJREFUeF7t3bFpA1EU
+        RUF3p1hlOBHGkXInLkPyYqkNdWbDhstZ2PxNMOG5BTz4/LfH4/kHAAAAAMO8HMYAAAAAmMhhDAAAAICR
+        HMYAAAAAGMlhDAAAAICR9g9jp/PlkNt9yX6r2mKvVVvstWqLvVZtsdeqLfZatcVeq7bYa9UWe63aYq9V
+        W+y1aou9Vm2x16ot9lq1xV6rtthb7R/G3j++DvlZfrPfqrbYa9UWe63aYq9VW+y1aou9Vm2x16ot9lq1
+        xV6rtthr1RZ7rdpir1Vb7LVqi71WbbHXqi32Vp5SAgAAADCSwxgAAAAAIzmMAQAAADCSwxgAAAAAIzmM
+        AQAAADDS/mHs8/p9yHLwl4Bqi71WbbHXqi32WrXFXqu22GvVFnut2mKvVVvstWqLvVZtsdeqLfZatcVe
+        q7bYa9UWe63aYm+1fxg7nS+H3O5L9lvVFnut2mKvVVvstWqLvVZtsdeqLfZatcVeq7bYa9UWe63aYq9V
+        W+y1aou9Vm2x16ot9lq1xd7KU0oAAAAARnIYAwAAAGAkhzEAAAAARnIYAwAAAGCi5+sf9Z0LPvxaiMMA
+        AAAASUVORK5CYII=
 </value>
   </data>
-  <data name="tableCellLabel31.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+  <data name="tableCellLabel23.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
-        iVBORw0KGgoAAAANSUhEUgAAABIAAATGCAYAAAArLvR9AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
+        iVBORw0KGgoAAAANSUhEUgAABMYAAAASCAYAAACw7dLmAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
         DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp
         bGUAAEjHnZZ3VFTXFofPvXd6oc0w0hl6ky4wgPQuIB0EURhmBhjKAMMMTWyIqEBEEREBRZCggAGjoUis
         iGIhKKhgD0gQUGIwiqioZEbWSnx5ee/l5ffHvd/aZ+9z99l7n7UuACRPHy4vBZYCIJkn4Ad6ONNXhUfQ
@@ -1397,24 +1421,18 @@
         RudN65tdA8sHzg46DF645Xrr8m2v29fvrLwzMBQydHc4cnjkLvvu5L2key/vZ9yff7DpIfph4SOpR+WP
         lR7X/aj3Y+uI5ciZUdfRvidBTx6Mscae/5T+04fx/Kfkp+UTqhONk2aTp6fcp24+W/1s/Hnq8/npgp+l
         f65+ofviu18cf+mbWTUz/pL/cuHX4lfyr468Xva6e9Z/9vGb5Dfzc4Vv5d8efcd41/s+7P3EfOYH7IeK
-        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALEgAACxIB0t1+/AAAAwlJREFUeF7t1DGqHgQQ
-        hVF3Z+0ybCRY2du4jCQP87bhzn79k2KYl4ELl1cEPMXXzMAp709fvrz+8x49ocd79H+DPn56eXx++fu7
-        +7OX/+7P/9v7Cf38y2+PXz/8+d392e9//PX1//YOmkDf+vGgJlAOlDshm70CTaA+UA6UOyGbvQJNoD5Q
-        DpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGb
-        vQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+
-        UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDsh
-        m70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2g
-        PlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7
-        IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJN
-        oD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6U
-        OyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70C
-        TaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAO
-        lDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9
-        Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlDunaDXx7/8Rgs+1wgFSwAAAABJRU5E
-        rkJggg==
+        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALDAAACwwBP0AiyAAAAahJREFUeF7t3bFpA1EU
+        RUF3p1hlOBHGkXInLkPyYqkNdWbDhstZ2PxNMOG5BTz4/LfH4/kHAAAAAMO8HMYAAAAAmMhhDAAAAICR
+        HMYAAAAAGMlhDAAAAICR9g9jp/PlkNt9yX6r2mKvVVvstWqLvVZtsdeqLfZatcVeq7bYa9UWe63aYq9V
+        W+y1aou9Vm2x16ot9lq1xV6rtthb7R/G3j++DvlZfrPfqrbYa9UWe63aYq9VW+y1aou9Vm2x16ot9lq1
+        xV6rtthr1RZ7rdpir1Vb7LVqi71WbbHXqi32Vp5SAgAAADCSwxgAAAAAIzmMAQAAADCSwxgAAAAAIzmM
+        AQAAADDS/mHs8/p9yHLwl4Bqi71WbbHXqi32WrXFXqu22GvVFnut2mKvVVvstWqLvVZtsdeqLfZatcVe
+        q7bYa9UWe63aYm+1fxg7nS+H3O5L9lvVFnut2mKvVVvstWqLvVZtsdeqLfZatcVeq7bYa9UWe63aYq9V
+        W+y1aou9Vm2x16ot9lq1xd7KU0oAAAAARnIYAwAAAGAkhzEAAAAARnIYAwAAAGCi5+sf9Z0LPvxaiMMA
+        AAAASUVORK5CYII=
 </value>
   </data>
-  <data name="srm11.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+  <data name="srm12.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
         iVBORw0KGgoAAAANSUhEUgAAABIAAATGCAYAAAArLvR9AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
         DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp
@@ -1461,7 +1479,7 @@
         RudN65tdA8sHzg46DF645Xrr8m2v29fvrLwzMBQydHc4cnjkLvvu5L2key/vZ9yff7DpIfph4SOpR+WP
         lR7X/aj3Y+uI5ciZUdfRvidBTx6Mscae/5T+04fx/Kfkp+UTqhONk2aTp6fcp24+W/1s/Hnq8/npgp+l
         f65+ofviu18cf+mbWTUz/pL/cuHX4lfyr468Xva6e9Z/9vGb5Dfzc4Vv5d8efcd41/s+7P3EfOYH7IeK
-        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALEgAACxIB0t1+/AAAAwlJREFUeF7t1DGqHgQQ
+        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALDAAACwwBP0AiyAAAAwlJREFUeF7t1DGqHgQQ
         hVF3Z+0ybCRY2du4jCQP87bhzn79k2KYl4ELl1cEPMXXzMAp709fvrz+8x49ocd79H+DPn56eXx++fu7
         +7OX/+7P/9v7Cf38y2+PXz/8+d392e9//PX1//YOmkDf+vGgJlAOlDshm70CTaA+UA6UOyGbvQJNoD5Q
         DpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGb
@@ -1478,7 +1496,7 @@
         rkJggg==
 </value>
   </data>
-  <data name="srm12.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+  <data name="tableCellLabel32.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
         iVBORw0KGgoAAAANSUhEUgAAABIAAATGCAYAAAArLvR9AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
         DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp
@@ -1525,7 +1543,7 @@
         RudN65tdA8sHzg46DF645Xrr8m2v29fvrLwzMBQydHc4cnjkLvvu5L2key/vZ9yff7DpIfph4SOpR+WP
         lR7X/aj3Y+uI5ciZUdfRvidBTx6Mscae/5T+04fx/Kfkp+UTqhONk2aTp6fcp24+W/1s/Hnq8/npgp+l
         f65+ofviu18cf+mbWTUz/pL/cuHX4lfyr468Xva6e9Z/9vGb5Dfzc4Vv5d8efcd41/s+7P3EfOYH7IeK
-        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALEgAACxIB0t1+/AAAAwlJREFUeF7t1DGqHgQQ
+        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALDAAACwwBP0AiyAAAAwlJREFUeF7t1DGqHgQQ
         hVF3Z+0ybCRY2du4jCQP87bhzn79k2KYl4ELl1cEPMXXzMAp709fvrz+8x49ocd79H+DPn56eXx++fu7
         +7OX/+7P/9v7Cf38y2+PXz/8+d392e9//PX1//YOmkDf+vGgJlAOlDshm70CTaA+UA6UOyGbvQJNoD5Q
         DpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGb
@@ -1542,7 +1560,7 @@
         rkJggg==
 </value>
   </data>
-  <data name="srm13.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+  <data name="tableCellLabel9.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
         iVBORw0KGgoAAAANSUhEUgAAABIAAATGCAYAAAArLvR9AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
         DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp
@@ -1589,7 +1607,7 @@
         RudN65tdA8sHzg46DF645Xrr8m2v29fvrLwzMBQydHc4cnjkLvvu5L2key/vZ9yff7DpIfph4SOpR+WP
         lR7X/aj3Y+uI5ciZUdfRvidBTx6Mscae/5T+04fx/Kfkp+UTqhONk2aTp6fcp24+W/1s/Hnq8/npgp+l
         f65+ofviu18cf+mbWTUz/pL/cuHX4lfyr468Xva6e9Z/9vGb5Dfzc4Vv5d8efcd41/s+7P3EfOYH7IeK
-        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALEgAACxIB0t1+/AAAAwlJREFUeF7t1DGqHgQQ
+        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALDAAACwwBP0AiyAAAAwlJREFUeF7t1DGqHgQQ
         hVF3Z+0ybCRY2du4jCQP87bhzn79k2KYl4ELl1cEPMXXzMAp709fvrz+8x49ocd79H+DPn56eXx++fu7
         +7OX/+7P/9v7Cf38y2+PXz/8+d392e9//PX1//YOmkDf+vGgJlAOlDshm70CTaA+UA6UOyGbvQJNoD5Q
         DpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGb
@@ -1606,9 +1624,9 @@
         rkJggg==
 </value>
   </data>
-  <data name="srm14.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+  <data name="tableCellLabel2.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
-        iVBORw0KGgoAAAANSUhEUgAAABIAAATGCAYAAAArLvR9AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
+        iVBORw0KGgoAAAANSUhEUgAABMYAAAASCAYAAACw7dLmAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
         DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp
         bGUAAEjHnZZ3VFTXFofPvXd6oc0w0hl6ky4wgPQuIB0EURhmBhjKAMMMTWyIqEBEEREBRZCggAGjoUis
         iGIhKKhgD0gQUGIwiqioZEbWSnx5ee/l5ffHvd/aZ+9z99l7n7UuACRPHy4vBZYCIJkn4Ad6ONNXhUfQ
@@ -1653,24 +1671,18 @@
         RudN65tdA8sHzg46DF645Xrr8m2v29fvrLwzMBQydHc4cnjkLvvu5L2key/vZ9yff7DpIfph4SOpR+WP
         lR7X/aj3Y+uI5ciZUdfRvidBTx6Mscae/5T+04fx/Kfkp+UTqhONk2aTp6fcp24+W/1s/Hnq8/npgp+l
         f65+ofviu18cf+mbWTUz/pL/cuHX4lfyr468Xva6e9Z/9vGb5Dfzc4Vv5d8efcd41/s+7P3EfOYH7IeK
-        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALEgAACxIB0t1+/AAAAwlJREFUeF7t1DGqHgQQ
-        hVF3Z+0ybCRY2du4jCQP87bhzn79k2KYl4ELl1cEPMXXzMAp709fvrz+8x49ocd79H+DPn56eXx++fu7
-        +7OX/+7P/9v7Cf38y2+PXz/8+d392e9//PX1//YOmkDf+vGgJlAOlDshm70CTaA+UA6UOyGbvQJNoD5Q
-        DpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGb
-        vQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+
-        UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDsh
-        m70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2g
-        PlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7
-        IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJN
-        oD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6U
-        OyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70C
-        TaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAO
-        lDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9
-        Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlDunaDXx7/8Rgs+1wgFSwAAAABJRU5E
-        rkJggg==
+        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALDAAACwwBP0AiyAAAAahJREFUeF7t3bFpA1EU
+        RUF3p1hlOBHGkXInLkPyYqkNdWbDhstZ2PxNMOG5BTz4/LfH4/kHAAAAAMO8HMYAAAAAmMhhDAAAAICR
+        HMYAAAAAGMlhDAAAAICR9g9jp/PlkNt9yX6r2mKvVVvstWqLvVZtsdeqLfZatcVeq7bYa9UWe63aYq9V
+        W+y1aou9Vm2x16ot9lq1xV6rtthb7R/G3j++DvlZfrPfqrbYa9UWe63aYq9VW+y1aou9Vm2x16ot9lq1
+        xV6rtthr1RZ7rdpir1Vb7LVqi71WbbHXqi32Vp5SAgAAADCSwxgAAAAAIzmMAQAAADCSwxgAAAAAIzmM
+        AQAAADDS/mHs8/p9yHLwl4Bqi71WbbHXqi32WrXFXqu22GvVFnut2mKvVVvstWqLvVZtsdeqLfZatcVe
+        q7bYa9UWe63aYm+1fxg7nS+H3O5L9lvVFnut2mKvVVvstWqLvVZtsdeqLfZatcVeq7bYa9UWe63aYq9V
+        W+y1aou9Vm2x16ot9lq1xd7KU0oAAAAARnIYAwAAAGAkhzEAAAAARnIYAwAAAGCi5+sf9Z0LPvxaiMMA
+        AAAASUVORK5CYII=
 </value>
   </data>
-  <data name="srm15.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+  <data name="srm11.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
         iVBORw0KGgoAAAANSUhEUgAAABIAAATGCAYAAAArLvR9AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
         DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp
@@ -1717,7 +1729,7 @@
         RudN65tdA8sHzg46DF645Xrr8m2v29fvrLwzMBQydHc4cnjkLvvu5L2key/vZ9yff7DpIfph4SOpR+WP
         lR7X/aj3Y+uI5ciZUdfRvidBTx6Mscae/5T+04fx/Kfkp+UTqhONk2aTp6fcp24+W/1s/Hnq8/npgp+l
         f65+ofviu18cf+mbWTUz/pL/cuHX4lfyr468Xva6e9Z/9vGb5Dfzc4Vv5d8efcd41/s+7P3EfOYH7IeK
-        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALEgAACxIB0t1+/AAAAwlJREFUeF7t1DGqHgQQ
+        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALDAAACwwBP0AiyAAAAwlJREFUeF7t1DGqHgQQ
         hVF3Z+0ybCRY2du4jCQP87bhzn79k2KYl4ELl1cEPMXXzMAp709fvrz+8x49ocd79H+DPn56eXx++fu7
         +7OX/+7P/9v7Cf38y2+PXz/8+d392e9//PX1//YOmkDf+vGgJlAOlDshm70CTaA+UA6UOyGbvQJNoD5Q
         DpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGb
@@ -1734,7 +1746,7 @@
         rkJggg==
 </value>
   </data>
-  <data name="tableCellLabel32.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+  <data name="tableCellLabel15.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
         iVBORw0KGgoAAAANSUhEUgAAABIAAATGCAYAAAArLvR9AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
         DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp
@@ -1781,7 +1793,7 @@
         RudN65tdA8sHzg46DF645Xrr8m2v29fvrLwzMBQydHc4cnjkLvvu5L2key/vZ9yff7DpIfph4SOpR+WP
         lR7X/aj3Y+uI5ciZUdfRvidBTx6Mscae/5T+04fx/Kfkp+UTqhONk2aTp6fcp24+W/1s/Hnq8/npgp+l
         f65+ofviu18cf+mbWTUz/pL/cuHX4lfyr468Xva6e9Z/9vGb5Dfzc4Vv5d8efcd41/s+7P3EfOYH7IeK
-        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALEgAACxIB0t1+/AAAAwlJREFUeF7t1DGqHgQQ
+        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALDAAACwwBP0AiyAAAAwlJREFUeF7t1DGqHgQQ
         hVF3Z+0ybCRY2du4jCQP87bhzn79k2KYl4ELl1cEPMXXzMAp709fvrz+8x49ocd79H+DPn56eXx++fu7
         +7OX/+7P/9v7Cf38y2+PXz/8+d392e9//PX1//YOmkDf+vGgJlAOlDshm70CTaA+UA6UOyGbvQJNoD5Q
         DpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGb
@@ -1798,9 +1810,9 @@
         rkJggg==
 </value>
   </data>
-  <data name="tableCellLabel33.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+  <data name="tableCellLabel8.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
-        iVBORw0KGgoAAAANSUhEUgAAABIAAATGCAYAAAArLvR9AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
+        iVBORw0KGgoAAAANSUhEUgAABMYAAAASCAYAAACw7dLmAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
         DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp
         bGUAAEjHnZZ3VFTXFofPvXd6oc0w0hl6ky4wgPQuIB0EURhmBhjKAMMMTWyIqEBEEREBRZCggAGjoUis
         iGIhKKhgD0gQUGIwiqioZEbWSnx5ee/l5ffHvd/aZ+9z99l7n7UuACRPHy4vBZYCIJkn4Ad6ONNXhUfQ
@@ -1845,26 +1857,20 @@
         RudN65tdA8sHzg46DF645Xrr8m2v29fvrLwzMBQydHc4cnjkLvvu5L2key/vZ9yff7DpIfph4SOpR+WP
         lR7X/aj3Y+uI5ciZUdfRvidBTx6Mscae/5T+04fx/Kfkp+UTqhONk2aTp6fcp24+W/1s/Hnq8/npgp+l
         f65+ofviu18cf+mbWTUz/pL/cuHX4lfyr468Xva6e9Z/9vGb5Dfzc4Vv5d8efcd41/s+7P3EfOYH7IeK
-        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALEgAACxIB0t1+/AAAAwlJREFUeF7t1DGqHgQQ
-        hVF3Z+0ybCRY2du4jCQP87bhzn79k2KYl4ELl1cEPMXXzMAp709fvrz+8x49ocd79H+DPn56eXx++fu7
-        +7OX/+7P/9v7Cf38y2+PXz/8+d392e9//PX1//YOmkDf+vGgJlAOlDshm70CTaA+UA6UOyGbvQJNoD5Q
-        DpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGb
-        vQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+
-        UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDsh
-        m70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2g
-        PlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7
-        IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJN
-        oD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6U
-        OyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70C
-        TaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAO
-        lDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9
-        Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlDunaDXx7/8Rgs+1wgFSwAAAABJRU5E
-        rkJggg==
+        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALDAAACwwBP0AiyAAAAahJREFUeF7t3bFpA1EU
+        RUF3p1hlOBHGkXInLkPyYqkNdWbDhstZ2PxNMOG5BTz4/LfH4/kHAAAAAMO8HMYAAAAAmMhhDAAAAICR
+        HMYAAAAAGMlhDAAAAICR9g9jp/PlkNt9yX6r2mKvVVvstWqLvVZtsdeqLfZatcVeq7bYa9UWe63aYq9V
+        W+y1aou9Vm2x16ot9lq1xV6rtthb7R/G3j++DvlZfrPfqrbYa9UWe63aYq9VW+y1aou9Vm2x16ot9lq1
+        xV6rtthr1RZ7rdpir1Vb7LVqi71WbbHXqi32Vp5SAgAAADCSwxgAAAAAIzmMAQAAADCSwxgAAAAAIzmM
+        AQAAADDS/mHs8/p9yHLwl4Bqi71WbbHXqi32WrXFXqu22GvVFnut2mKvVVvstWqLvVZtsdeqLfZatcVe
+        q7bYa9UWe63aYm+1fxg7nS+H3O5L9lvVFnut2mKvVVvstWqLvVZtsdeqLfZatcVeq7bYa9UWe63aYq9V
+        W+y1aou9Vm2x16ot9lq1xd7KU0oAAAAARnIYAwAAAGAkhzEAAAAARnIYAwAAAGCi5+sf9Z0LPvxaiMMA
+        AAAASUVORK5CYII=
 </value>
   </data>
-  <data name="tableCellLabel34.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+  <data name="tableCellLabel6.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
-        iVBORw0KGgoAAAANSUhEUgAAABIAAATGCAYAAAArLvR9AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
+        iVBORw0KGgoAAAANSUhEUgAABMYAAAASCAYAAACw7dLmAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
         DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp
         bGUAAEjHnZZ3VFTXFofPvXd6oc0w0hl6ky4wgPQuIB0EURhmBhjKAMMMTWyIqEBEEREBRZCggAGjoUis
         iGIhKKhgD0gQUGIwiqioZEbWSnx5ee/l5ffHvd/aZ+9z99l7n7UuACRPHy4vBZYCIJkn4Ad6ONNXhUfQ
@@ -1909,21 +1915,15 @@
         RudN65tdA8sHzg46DF645Xrr8m2v29fvrLwzMBQydHc4cnjkLvvu5L2key/vZ9yff7DpIfph4SOpR+WP
         lR7X/aj3Y+uI5ciZUdfRvidBTx6Mscae/5T+04fx/Kfkp+UTqhONk2aTp6fcp24+W/1s/Hnq8/npgp+l
         f65+ofviu18cf+mbWTUz/pL/cuHX4lfyr468Xva6e9Z/9vGb5Dfzc4Vv5d8efcd41/s+7P3EfOYH7IeK
-        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALEgAACxIB0t1+/AAAAwlJREFUeF7t1DGqHgQQ
-        hVF3Z+0ybCRY2du4jCQP87bhzn79k2KYl4ELl1cEPMXXzMAp709fvrz+8x49ocd79H+DPn56eXx++fu7
-        +7OX/+7P/9v7Cf38y2+PXz/8+d392e9//PX1//YOmkDf+vGgJlAOlDshm70CTaA+UA6UOyGbvQJNoD5Q
-        DpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGb
-        vQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+
-        UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDsh
-        m70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2g
-        PlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7
-        IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJN
-        oD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6U
-        OyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70C
-        TaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAO
-        lDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9
-        Ak2gPlAOlDshm70CTaA+UA6UOyGbvQJNoD5QDpQ7IZu9Ak2gPlDunaDXx7/8Rgs+1wgFSwAAAABJRU5E
-        rkJggg==
+        j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAALDAAACwwBP0AiyAAAAahJREFUeF7t3bFpA1EU
+        RUF3p1hlOBHGkXInLkPyYqkNdWbDhstZ2PxNMOG5BTz4/LfH4/kHAAAAAMO8HMYAAAAAmMhhDAAAAICR
+        HMYAAAAAGMlhDAAAAICR9g9jp/PlkNt9yX6r2mKvVVvstWqLvVZtsdeqLfZatcVeq7bYa9UWe63aYq9V
+        W+y1aou9Vm2x16ot9lq1xV6rtthb7R/G3j++DvlZfrPfqrbYa9UWe63aYq9VW+y1aou9Vm2x16ot9lq1
+        xV6rtthr1RZ7rdpir1Vb7LVqi71WbbHXqi32Vp5SAgAAADCSwxgAAAAAIzmMAQAAADCSwxgAAAAAIzmM
+        AQAAADDS/mHs8/p9yHLwl4Bqi71WbbHXqi32WrXFXqu22GvVFnut2mKvVVvstWqLvVZtsdeqLfZatcVe
+        q7bYa9UWe63aYm+1fxg7nS+H3O5L9lvVFnut2mKvVVvstWqLvVZtsdeqLfZatcVeq7bYa9UWe63aYq9V
+        W+y1aou9Vm2x16ot9lq1xd7KU0oAAAAARnIYAwAAAGAkhzEAAAAARnIYAwAAAGCi5+sf9Z0LPvxaiMMA
+        AAAASUVORK5CYII=
 </value>
   </data>
   <data name="pnlDDJ1.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
@@ -2751,7 +2751,7 @@
   <data name="G1.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
         iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAL
-        EgAACxIB0t1+/AAAAYNJREFUWEftVltuwzAMy2l3J19hZ8lvz9NZEmnRTprFWfu1EDAoKxb1sAt0uXHj
+        DAAACwwBP0AiyAAAAYNJREFUWEftVltuwzAMy2l3J19hZ8lvz9NZEmnRTprFWfu1EDAoKxb1sAt0uXHj
         xizW7/W5Ptbn17I4c1/qHkc+gzGhcpE9jr8XmawEw/bEj+rz7+SYDkL/Du1cO1WOQnqfMSSu4eXIa6cF
         duFE2hlMRfyQm0cKb0WdxS4yfvr1eiB5Ht49BYW1kJiCJAaPU7n0HlxgR2zPjqJsvy1GGdK/Y7f7urSY
         fuRhx8jtHP0ZMzUFDx6TvOCWrDGLJNM/UUQXWFe7a7G3Y8+EnESzWUxdSHGMCKSwCLQ92AqB3U9CYuFj
@@ -3586,7 +3586,7 @@
   <data name="G2.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
         iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAL
-        EgAACxIB0t1+/AAAAYNJREFUWEftVltuwzAMy2l3J19hZ8lvz9NZEmnRTprFWfu1EDAoKxb1sAt0uXHj
+        DAAACwwBP0AiyAAAAYNJREFUWEftVltuwzAMy2l3J19hZ8lvz9NZEmnRTprFWfu1EDAoKxb1sAt0uXHj
         xizW7/W5Ptbn17I4c1/qHkc+gzGhcpE9jr8XmawEw/bEj+rz7+SYDkL/Du1cO1WOQnqfMSSu4eXIa6cF
         duFE2hlMRfyQm0cKb0WdxS4yfvr1eiB5Ht49BYW1kJiCJAaPU7n0HlxgR2zPjqJsvy1GGdK/Y7f7urSY
         fuRhx8jtHP0ZMzUFDx6TvOCWrDGLJNM/UUQXWFe7a7G3Y8+EnESzWUxdSHGMCKSwCLQ92AqB3U9CYuFj
@@ -4421,7 +4421,7 @@
   <data name="G3.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
         iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAL
-        EgAACxIB0t1+/AAAAYNJREFUWEftVltuwzAMy2l3J19hZ8lvz9NZEmnRTprFWfu1EDAoKxb1sAt0uXHj
+        DAAACwwBP0AiyAAAAYNJREFUWEftVltuwzAMy2l3J19hZ8lvz9NZEmnRTprFWfu1EDAoKxb1sAt0uXHj
         xizW7/W5Ptbn17I4c1/qHkc+gzGhcpE9jr8XmawEw/bEj+rz7+SYDkL/Du1cO1WOQnqfMSSu4eXIa6cF
         duFE2hlMRfyQm0cKb0WdxS4yfvr1eiB5Ht49BYW1kJiCJAaPU7n0HlxgR2zPjqJsvy1GGdK/Y7f7urSY
         fuRhx8jtHP0ZMzUFDx6TvOCWrDGLJNM/UUQXWFe7a7G3Y8+EnESzWUxdSHGMCKSwCLQ92AqB3U9CYuFj
@@ -5256,7 +5256,7 @@
   <data name="G4.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
         iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAL
-        EgAACxIB0t1+/AAAAYNJREFUWEftVltuwzAMy2l3J19hZ8lvz9NZEmnRTprFWfu1EDAoKxb1sAt0uXHj
+        DAAACwwBP0AiyAAAAYNJREFUWEftVltuwzAMy2l3J19hZ8lvz9NZEmnRTprFWfu1EDAoKxb1sAt0uXHj
         xizW7/W5Ptbn17I4c1/qHkc+gzGhcpE9jr8XmawEw/bEj+rz7+SYDkL/Du1cO1WOQnqfMSSu4eXIa6cF
         duFE2hlMRfyQm0cKb0WdxS4yfvr1eiB5Ht49BYW1kJiCJAaPU7n0HlxgR2zPjqJsvy1GGdK/Y7f7urSY
         fuRhx8jtHP0ZMzUFDx6TvOCWrDGLJNM/UUQXWFe7a7G3Y8+EnESzWUxdSHGMCKSwCLQ92AqB3U9CYuFj
@@ -6091,7 +6091,7 @@
   <data name="G5.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
         iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAL
-        EgAACxIB0t1+/AAAAYNJREFUWEftVltuwzAMy2l3J19hZ8lvz9NZEmnRTprFWfu1EDAoKxb1sAt0uXHj
+        DAAACwwBP0AiyAAAAYNJREFUWEftVltuwzAMy2l3J19hZ8lvz9NZEmnRTprFWfu1EDAoKxb1sAt0uXHj
         xizW7/W5Ptbn17I4c1/qHkc+gzGhcpE9jr8XmawEw/bEj+rz7+SYDkL/Du1cO1WOQnqfMSSu4eXIa6cF
         duFE2hlMRfyQm0cKb0WdxS4yfvr1eiB5Ht49BYW1kJiCJAaPU7n0HlxgR2zPjqJsvy1GGdK/Y7f7urSY
         fuRhx8jtHP0ZMzUFDx6TvOCWrDGLJNM/UUQXWFe7a7G3Y8+EnESzWUxdSHGMCKSwCLQ92AqB3U9CYuFj
@@ -6926,7 +6926,7 @@
   <data name="GV2.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
         iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAL
-        EgAACxIB0t1+/AAAAYNJREFUWEftVltuwzAMy2l3J19hZ8lvz9NZEmnRTprFWfu1EDAoKxb1sAt0uXHj
+        DAAACwwBP0AiyAAAAYNJREFUWEftVltuwzAMy2l3J19hZ8lvz9NZEmnRTprFWfu1EDAoKxb1sAt0uXHj
         xizW7/W5Ptbn17I4c1/qHkc+gzGhcpE9jr8XmawEw/bEj+rz7+SYDkL/Du1cO1WOQnqfMSSu4eXIa6cF
         duFE2hlMRfyQm0cKb0WdxS4yfvr1eiB5Ht49BYW1kJiCJAaPU7n0HlxgR2zPjqJsvy1GGdK/Y7f7urSY
         fuRhx8jtHP0ZMzUFDx6TvOCWrDGLJNM/UUQXWFe7a7G3Y8+EnESzWUxdSHGMCKSwCLQ92AqB3U9CYuFj
@@ -7761,7 +7761,7 @@
   <data name="GV3.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
         iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAL
-        EgAACxIB0t1+/AAAAYNJREFUWEftVltuwzAMy2l3J19hZ8lvz9NZEmnRTprFWfu1EDAoKxb1sAt0uXHj
+        DAAACwwBP0AiyAAAAYNJREFUWEftVltuwzAMy2l3J19hZ8lvz9NZEmnRTprFWfu1EDAoKxb1sAt0uXHj
         xizW7/W5Ptbn17I4c1/qHkc+gzGhcpE9jr8XmawEw/bEj+rz7+SYDkL/Du1cO1WOQnqfMSSu4eXIa6cF
         duFE2hlMRfyQm0cKb0WdxS4yfvr1eiB5Ht49BYW1kJiCJAaPU7n0HlxgR2zPjqJsvy1GGdK/Y7f7urSY
         fuRhx8jtHP0ZMzUFDx6TvOCWrDGLJNM/UUQXWFe7a7G3Y8+EnESzWUxdSHGMCKSwCLQ92AqB3U9CYuFj
@@ -8596,7 +8596,7 @@
   <data name="GV4.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
         iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAL
-        EgAACxIB0t1+/AAAAYNJREFUWEftVltuwzAMy2l3J19hZ8lvz9NZEmnRTprFWfu1EDAoKxb1sAt0uXHj
+        DAAACwwBP0AiyAAAAYNJREFUWEftVltuwzAMy2l3J19hZ8lvz9NZEmnRTprFWfu1EDAoKxb1sAt0uXHj
         xizW7/W5Ptbn17I4c1/qHkc+gzGhcpE9jr8XmawEw/bEj+rz7+SYDkL/Du1cO1WOQnqfMSSu4eXIa6cF
         duFE2hlMRfyQm0cKb0WdxS4yfvr1eiB5Ht49BYW1kJiCJAaPU7n0HlxgR2zPjqJsvy1GGdK/Y7f7urSY
         fuRhx8jtHP0ZMzUFDx6TvOCWrDGLJNM/UUQXWFe7a7G3Y8+EnESzWUxdSHGMCKSwCLQ92AqB3U9CYuFj
@@ -9431,7 +9431,7 @@
   <data name="GV5.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
         iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAL
-        EgAACxIB0t1+/AAAAYNJREFUWEftVltuwzAMy2l3J19hZ8lvz9NZEmnRTprFWfu1EDAoKxb1sAt0uXHj
+        DAAACwwBP0AiyAAAAYNJREFUWEftVltuwzAMy2l3J19hZ8lvz9NZEmnRTprFWfu1EDAoKxb1sAt0uXHj
         xizW7/W5Ptbn17I4c1/qHkc+gzGhcpE9jr8XmawEw/bEj+rz7+SYDkL/Du1cO1WOQnqfMSSu4eXIa6cF
         duFE2hlMRfyQm0cKb0WdxS4yfvr1eiB5Ht49BYW1kJiCJAaPU7n0HlxgR2zPjqJsvy1GGdK/Y7f7urSY
         fuRhx8jtHP0ZMzUFDx6TvOCWrDGLJNM/UUQXWFe7a7G3Y8+EnESzWUxdSHGMCKSwCLQ92AqB3U9CYuFj
@@ -11088,7 +11088,7 @@
   <data name="pictureBox11.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
         iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAL
-        EgAACxIB0t1+/AAAAYNJREFUWEftVltuwzAMy2l3J19hZ8lvz9NZEmnRTprFWfu1EDAoKxb1sAt0uXHj
+        DAAACwwBP0AiyAAAAYNJREFUWEftVltuwzAMy2l3J19hZ8lvz9NZEmnRTprFWfu1EDAoKxb1sAt0uXHj
         xizW7/W5Ptbn17I4c1/qHkc+gzGhcpE9jr8XmawEw/bEj+rz7+SYDkL/Du1cO1WOQnqfMSSu4eXIa6cF
         duFE2hlMRfyQm0cKb0WdxS4yfvr1eiB5Ht49BYW1kJiCJAaPU7n0HlxgR2zPjqJsvy1GGdK/Y7f7urSY
         fuRhx8jtHP0ZMzUFDx6TvOCWrDGLJNM/UUQXWFe7a7G3Y8+EnESzWUxdSHGMCKSwCLQ92AqB3U9CYuFj
@@ -11101,7 +11101,7 @@
   <data name="GV1.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
         iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAL
-        EgAACxIB0t1+/AAAAYNJREFUWEftVltuwzAMy2l3J19hZ8lvz9NZEmnRTprFWfu1EDAoKxb1sAt0uXHj
+        DAAACwwBP0AiyAAAAYNJREFUWEftVltuwzAMy2l3J19hZ8lvz9NZEmnRTprFWfu1EDAoKxb1sAt0uXHj
         xizW7/W5Ptbn17I4c1/qHkc+gzGhcpE9jr8XmawEw/bEj+rz7+SYDkL/Du1cO1WOQnqfMSSu4eXIa6cF
         duFE2hlMRfyQm0cKb0WdxS4yfvr1eiB5Ht49BYW1kJiCJAaPU7n0HlxgR2zPjqJsvy1GGdK/Y7f7urSY
         fuRhx8jtHP0ZMzUFDx6TvOCWrDGLJNM/UUQXWFe7a7G3Y8+EnESzWUxdSHGMCKSwCLQ92AqB3U9CYuFj

+ 28 - 27
WCS_Client/Frm/MBtn_Sys/FrmSrmInfoSet.cs

@@ -1,16 +1,11 @@
 using DevComponents.DotNetBar.Layout;
 using DevComponents.DotNetBar.SuperGrid;
-using System;
 using System.Collections.Generic;
-using System.ComponentModel;
 using System.Data;
-using System.Drawing;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
 using System.Windows.Forms;
 using WCS_Client.UC;
 using WCS_Client.Utility;
+using WCS_Client.Workflow;
 
 namespace WCS_Client.Frm
 {
@@ -21,23 +16,26 @@ namespace WCS_Client.Frm
             InitializeComponent();
             InitFrm();
         }
+
         private void InitFrm()
         {
             List<GridColumn> GCList = new List<GridColumn>()
             {
-                SuperGridUtil.Get_GridColumn("SRMOUTIN_CONVNO", "堆垛机出入口", 120),
-                SuperGridUtil.Get_GridColumn("SRMOUTIN_CONVPLCNAME", "所属PLC名称", 120),
-                SuperGridUtil.Get_GridColumn("SRMOUTIN_SRMNO", "所属堆垛机编号", 120),
-                SuperGridUtil.Get_GridColumn("SRMOUTIN_OUTINTYPE", "出入口类型", 120),
-                SuperGridUtil.Get_GridColumn("SRMOUTIN_SEQUENCE", "出入口顺序",120),
-                SuperGridUtil.Get_GridColumn("SRMOUTIN_PRIORITY", "出入口优先级", 120),
-                SuperGridUtil.Get_CheckBoxX_GridColumn("SRMOUTIN_ISSTOP", "是否停用", 100),
-                SuperGridUtil.Get_CheckBoxX_GridColumn("SRMOUTIN_ISUPDATE", "是否更新", 120),
-                SuperGridUtil.Get_GridColumn("SRMOUTIN_NOTES", "备注", 120)
+                SuperGridUtil.Get_GridColumn("DEVICECODE", "设备名", 120),
+                SuperGridUtil.Get_GridColumn("Code", "所属设备名", 120),
+                SuperGridUtil.Get_GridColumn("TUNNEL", "巷道", 120),
+                SuperGridUtil.Get_GridColumn("Direction", "出入口类型", 120),
+                //SuperGridUtil.Get_GridColumn("SRMOUTIN_SEQUENCE", "出入口顺序",120),
+                //SuperGridUtil.Get_GridColumn("SRMOUTIN_PRIORITY", "出入口优先级", 120),
+                SuperGridUtil.Get_CheckBoxX_GridColumn("ENABLED", "是否停用", 100),
+                //SuperGridUtil.Get_CheckBoxX_GridColumn("SRMOUTIN_ISUPDATE", "是否更新", 120),
+                SuperGridUtil.Get_GridColumn("Describe", "备注", 120)
             };
             List<LayoutControlItem> LCIList = new List<LayoutControlItem>();
-            LCIList.Add(LCItemUtil.Add_TextboxX("SRMOUTIN_SRMNO", "堆垛机编号:", 20, SubmitMethods, null));
-            LCIList[LCIList.Count - 1].Tag = new LCWhereInfo() { QWhereText = "SRMOUTIN_SRMNO like '%{0}%'" };
+            LCIList.Add(LCItemUtil.Add_TextboxX("Code", "所属设备:", 20, SubmitMethods, null));
+            LCIList[LCIList.Count - 1].Tag = new LCWhereInfo() { QWhereText = "Code like '%{0}%'" };
+            LCIList.Add(LCItemUtil.Add_TextboxX("Describe", "备注:", 20, SubmitMethods, null));
+            LCIList[LCIList.Count - 1].Tag = new LCWhereInfo() { QWhereText = "Describe like '%{0}%'" };
 
             LCIList.Add(LCItemUtil.Add_ButtonX("btn_QDB", "查询", 80, 30, SubmitMethods));
             LCIList.Add(LCItemUtil.Add_ButtonX("btn_QClear", "重置", 80, 30, SubmitMethods));
@@ -53,24 +51,27 @@ namespace WCS_Client.Frm
                 uC_QueryPage1.RefreshData(1, 0);
             }, null);
         }
+
         private PageData QueryPageDataMethods(int PageIndex, int PageSize)
         {
-            string _SQLText = @"SELECT * FROM [YONGGUAN_WCS].[dbo].[WCS_SRMOUTININFO]  where 1=1 ";
-            string _Orderby = "SRMOUTIN_SRMNO asc";
+            string _SQLText = @"SELECT * FROM [dbo].[WCS_SystemConfig]  where 1=1 ";
+            string _Orderby = "Code asc";
 
             PageData pd = BaseWorkflow.QueryPageData(_SQLText, _Orderby, uC_QueryPage1.GetQueryWhere(), PageIndex, PageSize);
             return pd;
         }
+
         private void RefreshRoleMethods(bool ChkValue)
         {
-
         }
+
         private void DoubleClikMethod(DataRow dr)
         {
             //wcs_task_no = Convert.ToInt32(dr["TASK_NO"].ToString());
             //FrmWCS_TaskDIS_DTL Frm = new FrmWCS_TaskDIS_DTL(wcs_task_no);
             //Frm.Show();
         }
+
         private void SubmitMethods(string LCName)
         {
             if (LCName == "btn_QDB")
@@ -92,11 +93,11 @@ namespace WCS_Client.Frm
                     MessageUtil.ShowTips("请选择配置信息。");
                     return;
                 }
-                string convNo = dt.Rows[0]["SRMOUTIN_CONVNO"].ToString();
-                var result = MessageUtil.ShowYesNoAndWarning(string.Format("堆垛机出入口[{0}]确定要启用吗?", convNo));
+                string convNo = dt.Rows[0]["DEVICECODE"].ToString();
+                var result = MessageUtil.ShowYesNoAndWarning(string.Format("出入口[{0}]确定要启用吗?", convNo));
                 if (result == DialogResult.Yes)
                 {
-                    string msg = BaseWorkflow.SrmInfoSet(convNo, false);
+                    string msg = SystemConfigWorkflow.SystemConfigSet(convNo, true);
                     MessageUtil.ShowTips(msg);
                     uC_QueryPage1.RefreshData(1, 0);
                 }
@@ -109,15 +110,15 @@ namespace WCS_Client.Frm
                     MessageUtil.ShowTips("请选择配置信息。");
                     return;
                 }
-                string convNo = dt.Rows[0]["SRMOUTIN_CONVNO"].ToString();
-                var result = MessageUtil.ShowYesNoAndWarning(string.Format("堆垛机出入口[{0}]确定要禁用吗?", convNo));
+                string convNo = dt.Rows[0]["DEVICECODE"].ToString();
+                var result = MessageUtil.ShowYesNoAndWarning(string.Format("出入口[{0}]确定要禁用吗?", convNo));
                 if (result == DialogResult.Yes)
                 {
-                    string msg = BaseWorkflow.SrmInfoSet(convNo, true);
+                    string msg = SystemConfigWorkflow.SystemConfigSet(convNo, false);
                     MessageUtil.ShowTips(msg);
                     uC_QueryPage1.RefreshData(1, 0);
                 }
             }
         }
     }
-}
+}

+ 3 - 0
WCS_Client/Frm/MBtn_Task/FrmWCS_TaskDIS.cs

@@ -60,6 +60,9 @@ namespace WCS_Client.Frm
             };
             List<LayoutControlItem> LCIList = new List<LayoutControlItem>();
 
+            LCIList.Add(LCItemUtil.Add_TextboxX("ID", "WCS任务号:", 20, SubmitMethods, null));
+            LCIList[LCIList.Count - 1].Tag = new LCWhereInfo() { QWhereText = "ID like '%{0}%'" };
+
             LCIList.Add(LCItemUtil.Add_TextboxX("WMSTASK", "WMS任务号:", 20, SubmitMethods, null));
             LCIList[LCIList.Count - 1].Tag = new LCWhereInfo() { QWhereText = "WMSTASK like '%{0}%'" };
 

+ 1 - 14
WCS_Client/From/From_Montior/Conveyor4_L_R.cs

@@ -1,11 +1,5 @@
 using System;
-using System.Collections.Generic;
-using System.ComponentModel;
 using System.Drawing;
-using System.Data;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
 using System.Windows.Forms;
 using WCS_Client.Frm;
 
@@ -41,13 +35,6 @@ namespace WCS_Client.From.From_Montior
                 FrmEquMsg_dtl Frm = new FrmEquMsg_dtl(equname);
                 Frm.Show();
             }
-            //int index = Name.LastIndexOf('_');
-            //if (index > 0)
-            //{
-            //    string equname = Name.Substring(index + 1);
-            //    Form_EquInfo equinfo = new Form_EquInfo(equname);
-            //    equinfo.Show();
-            //}
         }
     }
-}
+}

+ 1 - 0
WCS_Client/From/From_Task/Form_Task.cs

@@ -8,6 +8,7 @@ using System.Linq;
 using System.Text;
 using System.Threading.Tasks;
 using System.Windows.Forms;
+using WCS_Client.Models;
 using WCS_Client.UC;
 using WCS_Client.Utility;
 

+ 60 - 0
WCS_Client/Models/WCS_SystemConfig.cs

@@ -0,0 +1,60 @@
+using System;
+
+namespace WCS_Client.Models
+{
+    /// <summary>
+    /// 系统配置
+    /// </summary>
+    public class WCS_SystemConfig
+    {
+        /// <summary>
+        /// 设备编号 堆垛机/BCR
+        /// </summary>
+        public string Code { get; set; }
+
+        /// <summary>
+        /// 描述
+        /// </summary>
+        public string Describe { get; set; }
+
+        /// <summary>
+        /// 所属设备
+        /// </summary>
+        public string DEVICECODE { get; set; }
+
+        /// <summary>
+        /// 巷道
+        /// </summary>
+        public string TUNNEL { get; set; }
+
+        /// <summary>
+        /// 方向
+        /// </summary>
+        public string Direction { get; set; }
+
+        /// <summary>
+        /// ID
+        /// </summary>
+        public virtual int ID { get; set; }
+
+        /// <summary>
+        /// 是否启用
+        /// </summary>
+        public bool ENABLED { get; set; } = true;
+
+        /// <summary>
+        /// 更新者
+        /// </summary>
+        public string UPDATEUSER { get; set; }
+
+        /// <summary>
+        /// 更新时间
+        /// </summary>
+        public DateTime UPDATETIME { get; set; } = DateTime.Now;
+
+        /// <summary>
+        /// 版本号
+        /// </summary>
+        public byte[] VER { get; set; }
+    }
+}

+ 3 - 0
WCS_Client/WCS_Client.csproj

@@ -548,6 +548,7 @@
     <Compile Include="Models\WCS_RGVOutInInfo.cs" />
     <Compile Include="Models\WCS_SCANN.cs" />
     <Compile Include="Models\WCS_SRMOUTININFO.cs" />
+    <Compile Include="Models\WCS_SystemConfig.cs" />
     <Compile Include="Models\WCS_TASK_DTL.cs" />
     <Compile Include="UC\Control\LC_DropChkList.cs">
       <SubType>Component</SubType>
@@ -754,6 +755,8 @@
     <Compile Include="Utility\TableNames.cs" />
     <Compile Include="Utility\TryCachHelper.cs" />
     <Compile Include="Workflow\BaseWorkflow.cs" />
+    <Compile Include="Workflow\ExceptionLogWorkflow.cs" />
+    <Compile Include="Workflow\SystemConfigWorkflow.cs" />
     <Compile Include="Workflow\TaskWorkflow.cs" />
     <EmbeddedResource Include="Frm\FrmHome.resx">
       <DependentUpon>FrmHome.cs</DependentUpon>

+ 5 - 109
WCS_Client/Workflow/BaseWorkflow.cs

@@ -4,10 +4,9 @@ using System.Collections.Generic;
 using System.Data;
 using System.Linq;
 using System.Text;
-using WCS_Client.Extensions;
-using WCS_Client.Frm;
 using WCS_Client.Models;
 using WCS_Client.Utility;
+using WCS_Client.Workflow;
 using WCS_TASK = WCS_Client.Models.WCS_TASK;
 
 namespace WCS_Client
@@ -171,42 +170,8 @@ namespace WCS_Client
                 TryCachHelper.TryExecute((db) =>
                 {
                     dt = db.Ado.GetDataTable(sql);
-                    //新增列
-                    string ADDRCURRENT = "ADDRCURRENT";
-                    string ADDRline = "ADDRline";
-                    dt.addDataColumn(new List<string> { ADDRCURRENT, ADDRline });
-                    //获取当前所有任务对应的AGV任务
-                    List<int> agvIDs = (from d in dt.AsEnumerable() select d.Field<int>("AgvTask")).Where(p => p > 0).ToList();
-                    string ids = "";
-                    agvIDs.ForEach(p =>
-                    {
-                        ids += p;
-                        if (p != agvIDs[agvIDs.Count - 1]) ids += ",";
-                    });
-                    var _sql = $"select * from WCS_AGVTask where ID in ({ids})";
-                    List<WCS_AGVTask> _AGVTASKs = db.SqlQueryable<WCS_AGVTask>(_sql).ToList();
-                    //向新增列写入数据
-                    for (int i = 0; i < dt.Rows.Count; i++)
-                    {
-                        //写入输送线
-                        dt.Rows[i][ADDRCURRENT] = eqpData.deviceDataPack.StationDatas.Datas.Where(p => p.D521.TASKNUM == (int)dt.Rows[i][1] && p.D521.PH_STATUS).FirstOrDefault()?.Code;
-                        //不在输送线,尝试写入RGV
-                        if (string.IsNullOrEmpty(dt.Rows[i][ADDRCURRENT].ToString()))
-                        {
-                            dt.Rows[i][ADDRCURRENT] = eqpData.deviceDataPack.RGVDatas.Datas.Where(p => p.D521.TaskID == (int)dt.Rows[i][1] && p.D521.PH_Status).FirstOrDefault()?.Code;
-                        }
-                        //不在输送线/RGV,尝试写入堆垛机
-                        if (string.IsNullOrEmpty(dt.Rows[i][ADDRCURRENT].ToString()))
-                        {
-                            dt.Rows[i][ADDRCURRENT] = eqpData.deviceDataPack.SCDatas.Datas.Where(p => p.D521.TaskID == (int)dt.Rows[i][1]).FirstOrDefault()?.Code;
-                        }
-                        var a = _AGVTASKs.Where(p => p.ID == (int)dt.Rows[i]["AgvTask"]).FirstOrDefault()?.Position;
-                        //开始写入产线
-                        dt.Rows[i][ADDRline] = _AGVTASKs.Where(p => p.ID == (int)dt.Rows[i]["AgvTask"]).FirstOrDefault()?.Position;
-
-                        dt.AcceptChanges();
-                    }
-
+                    if (sql.Contains("dbo.WCS_TASK")) TaskWorkflow.DataTableAddColumn(dt, db);
+                    //else if (sql.Contains("[dbo].[WCS_EXCEPTION]")) ExceptionLogWorkflow.DataTableAddColumn(dt, db);
                     count = Convert.ToInt32(db.Ado.GetScalar(CountStr));
                 });
                 int PageCount = count / PageSize;
@@ -268,22 +233,7 @@ namespace WCS_Client
                     dt = DatatableConvertHelper.ToDataTable(usersList);
                     count = Convert.ToInt32(db.Ado.GetScalar(CountStr));
                 });
-                //using (MProc proc = new MProc(sql))
-                //{
-                //    MDataTable mdt = proc.ExeMDataTable().ToDataTable();
-                //    List<WCS_Users> usersList= mdt.ToList<WCS_Users>();
-                //    foreach (var item in usersList)
-                //    {
-                //        string binaryStr = BinaryHelper.ByteArray2BinaryStr(item.USER_TEXT);
-                //        string jsonstr = BinaryHelper.jiema(binaryStr);
-                //        var user = jsonstr.ToObject<WCS_Users>();
-                //        item.GetUserInfo(user);
-                //    }
-                //    dt = DatatableConvertHelper.ToDataTable(usersList);
-
-                //    proc.ResetProc(CountStr);
-                //    count = proc.ExeScalar<int>();
-                //}
+              
                 int PageCount = count / PageSize;
                 if (count % PageSize > 0)
                     PageCount += 1;
@@ -323,19 +273,6 @@ namespace WCS_Client
                     }
                     dt = DatatableConvertHelper.ToDataTable(usersList);
                 });
-                //using (MProc prc = new MProc(sql))
-                //{
-                //    var mdt = prc.ExeMDataTable();
-                //    List<WCS_Users> usersList = mdt.ToList<WCS_Users>();
-                //    foreach (var item in usersList)
-                //    {
-                //        var binaryStr = BinaryHelper.ByteArray2BinaryStr(item.USER_TEXT);
-                //        string jsonstr = BinaryHelper.jiema(binaryStr);
-                //        var user = jsonstr.ToObject<WCS_Users>();
-                //        item.GetUserInfo(user);
-                //    }
-                //    dt = DatatableConvertHelper.ToDataTable(usersList);
-                //}
             }
             catch (Exception ex)
             {
@@ -889,48 +826,7 @@ namespace WCS_Client
             return result;
         }
 
-        public static string SrmInfoSet(string convNo, bool isStop)
-        {
-            string result = TryCachHelper.TryExecute((db) =>
-            {
-                var srmoutinInfo = db.Queryable<WCS_SRMOUTININFO>().First(v => v.SRMOUTIN_CONVNO == convNo);
-                if (srmoutinInfo == null)
-                {
-                    throw new Exception(string.Format("未查询到堆垛机出入口[{0}]信息", convNo));
-                }
-                else
-                {
-                    if (db.Updateable<WCS_SRMOUTININFO>()
-                          .UpdateColumns(it => new WCS_SRMOUTININFO
-                          {
-                              SRMOUTIN_ISSTOP = isStop,
-                              SRMOUTIN_ISUPDATE = true
-                          })
-                          .Where(v => v.SRMOUTIN_CONVNO == convNo).ExecuteCommand() < 0)
-                    {
-                        throw new Exception(string.Format("堆垛机出入口[{0}]禁(启)用失败", convNo));
-                    }
-                    //else
-                    //{
-                    //    //与AGV共口也需禁用掉
-                    //    var rgvoutinInfo = db.Queryable<WCS_RGVOutInInfo>().First(v => v.RGVOUTIN_CONVNO == convNo);
-                    //    if (rgvoutinInfo != null)
-                    //    {
-                    //        if (db.Updateable<WCS_RGVOutInInfo>()
-                    //             .UpdateColumns(it => new WCS_RGVOutInInfo
-                    //             {
-                    //                 RGVOUTIN_ISSTOP = isStop
-                    //             })
-                    //             .Where(v => v.RGVOUTIN_CONVNO == convNo).ExecuteCommand() < 0)
-                    //        {
-                    //            throw new Exception(string.Format("AGV出入口[{0}]禁(启)用失败", convNo));
-                    //        }
-                    //    }
-                    //}
-                }
-            });
-            return result;
-        }
+        
 
         public static string OnUpMatRestart(int task_no)
         {

+ 39 - 0
WCS_Client/Workflow/ExceptionLogWorkflow.cs

@@ -0,0 +1,39 @@
+using SqlSugar;
+using System;
+using System.Collections.Generic;
+using System.Data;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using WCS_Client.Extensions;
+
+namespace WCS_Client.Workflow
+{
+    /// <summary>
+    /// 异常日志
+    /// </summary>
+    public class ExceptionLogWorkflow
+    {
+        /// <summary>
+        /// 为任务数据表新增列
+        /// </summary>
+        /// <param name="dataTable">数据源</param>
+        /// <param name="db">数据库链接</param>
+        public static void DataTableAddColumn(DataTable dataTable, SqlSugarClient db)
+        {
+            //新增列
+            string Continued = "Continued";
+            dataTable.addDataColumn(new List<string> { Continued });
+
+            //开始时间&结束时间
+            string STARTTIME = "STARTTIME", UPDATETIME = "UPDATETIME";
+
+            //向新增列写入数据
+            for (int i = 0; i < dataTable.Rows.Count; i++)
+            {
+                dataTable.Rows[i][Continued] = Math.Round(((DateTime)dataTable.Rows[i][UPDATETIME] - (DateTime)dataTable.Rows[i][STARTTIME]).TotalMinutes, 2);
+                dataTable.AcceptChanges();
+            }
+        }
+    }
+}

+ 43 - 0
WCS_Client/Workflow/SystemConfigWorkflow.cs

@@ -0,0 +1,43 @@
+using System;
+using System.Linq;
+using WCS_Client.Models;
+
+namespace WCS_Client.Workflow
+{
+    public class SystemConfigWorkflow
+    {
+        /// <summary>
+        /// 系统配置写入
+        /// </summary>
+        /// <param name="convNo">设备编号</param>
+        /// <param name="isStop">是否启用</param>
+        /// <returns></returns>
+        /// <exception cref="Exception"></exception>
+        public static string SystemConfigSet(string convNo, bool isStop)
+        {
+            string result = TryCachHelper.TryExecute((db) =>
+            {
+                //var srmoutinInfo = db.Queryable<WCS_SRMOUTININFO>().First(v => v.SRMOUTIN_CONVNO == convNo);
+                var systemConfig = db.Queryable<WCS_SystemConfig>().First(v => v.DEVICECODE == convNo);
+                if (systemConfig == null)
+                {
+                    throw new Exception(string.Format("未查询到堆垛机出入口[{0}]信息", convNo));
+                }
+                else
+                {
+                    if (db.Updateable<WCS_SystemConfig>()
+                          .UpdateColumns(it => new WCS_SystemConfig
+                          {
+                              ENABLED = isStop,
+                              UPDATETIME = DateTime.Now
+                          })
+                          .Where(v => v.DEVICECODE == convNo).ExecuteCommand() < 0)
+                    {
+                        throw new Exception(string.Format("堆垛机出入口[{0}]禁(启)用失败", convNo));
+                    }
+                }
+            });
+            return result;
+        }
+    }
+}

+ 49 - 5
WCS_Client/Workflow/TaskWorkflow.cs

@@ -1,15 +1,59 @@
-using System;
+using SqlSugar;
 using System.Collections.Generic;
+using System.Data;
 using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
+using WCS_Client.Extensions;
+using WCS_Client.Frm;
 
 namespace WCS_Client.Workflow
 {
     /// <summary>
-    /// 任务相关
+    /// 任务
     /// </summary>
     public class TaskWorkflow
     {
+        /// <summary>
+        /// 为任务数据表新增列
+        /// </summary>
+        /// <param name="dataTable">数据源</param>
+        /// <param name="db">数据库链接</param>
+        public static void DataTableAddColumn(DataTable dataTable, SqlSugarClient db)
+        {
+            //新增列
+            string ADDRCURRENT = "ADDRCURRENT";
+            string ADDRline = "ADDRline";
+            dataTable.addDataColumn(new List<string> { ADDRCURRENT, ADDRline });
+            //获取当前所有任务对应的AGV任务
+            List<int> agvIDs = (from d in dataTable.AsEnumerable() select d.Field<int>("AgvTask")).Where(p => p > 0).ToList();
+            string ids = "";
+            agvIDs.ForEach(p =>
+            {
+                ids += p;
+                if (p != agvIDs[agvIDs.Count - 1]) ids += ",";
+            });
+            var _sql = $"select * from WCS_AGVTask where ID in ({ids})";
+            List<WCS_AGVTask> _AGVTASKs = db.SqlQueryable<WCS_AGVTask>(_sql).ToList();
+            //向新增列写入数据
+            for (int i = 0; i < dataTable.Rows.Count; i++)
+            {
+                //写入输送线
+                dataTable.Rows[i][ADDRCURRENT] = eqpData.deviceDataPack.StationDatas.Datas.Where(p => p.D521.TASKNUM == (int)dataTable.Rows[i][1]).FirstOrDefault()?.Code;
+                //不在输送线,尝试写入RGV
+                if (string.IsNullOrEmpty(dataTable.Rows[i][ADDRCURRENT].ToString()))
+                {
+                    dataTable.Rows[i][ADDRCURRENT] = eqpData.deviceDataPack.RGVDatas.Datas.Where(p => p.D521.TaskID == (int)dataTable.Rows[i][1] && p.D521.PH_Status).FirstOrDefault()?.Code;
+                }
+                //不在输送线/RGV,尝试写入堆垛机
+                if (string.IsNullOrEmpty(dataTable.Rows[i][ADDRCURRENT].ToString()))
+                {
+                    dataTable.Rows[i][ADDRCURRENT] = eqpData.deviceDataPack.SCDatas.Datas.Where(p => p.D521.TaskID == (int)dataTable.Rows[i][1]).FirstOrDefault()?.Code;
+                }
+
+                //开始写入产线
+                dataTable.Rows[i][ADDRline] = _AGVTASKs.Where(p => p.ID == (int)dataTable.Rows[i]["AgvTask"]).FirstOrDefault()?.Position;
+
+                dataTable.AcceptChanges();
+            }
+        }
     }
-}
+}

+ 12 - 2
WCS_Client/eqpData.cs

@@ -6,7 +6,14 @@ namespace WCS_Client
 {
     public static class eqpData
     {
+        /// <summary>
+        /// 当前最新数据
+        /// </summary>
         public static DeviceDataPack deviceDataPack { get; set; } = null;
+        /// <summary>
+        /// 上一次更新出来的数据
+        /// </summary>
+        public static DeviceDataPack oldDeviceDataPack { get; set; } = null;
         private static System.Timers.Timer _timer;
         public static RedisClient Redis = null;
 
@@ -23,10 +30,13 @@ namespace WCS_Client
         {
             try
             {
+                oldDeviceDataPack = deviceDataPack;
                 deviceDataPack = Redis.Get<DeviceDataPack>("DeviceDataPack");
+
             }
-            catch (Exception ex) { 
-            }
+            catch (Exception ex)
+            {
             }
+        }
     }
 }

Alguns arquivos não foram mostrados porque muitos arquivos mudaram nesse diff