From af9c3e0b3b1eb370e966b3ca9db3f62848d4189b Mon Sep 17 00:00:00 2001
From: JLChen <551775569@qq.com>
Date: 星期六, 21 八月 2021 13:03:12 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/newBranch1' into WJC

---
 HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/SenesorMegahealth/AddSenesorMegahealthDirection1Page.cs |    2 
 HDL-ON_Android/Assets/Language.ini                                                               |   42 
 HDL-ON_iOS/HDL-ON_iOS.csproj                                                                     |   33 
 HDL_ON/Common/ApiUtlis.cs                                                                        |   10 
 HDL_ON/UI/UI2/FuntionControlView/ArmCenter/ArmCenterPage.cs                                      |  266 
 HDL_ON/UI/UI2/4-PersonalCenter/AddFunction/DeviceListPage.cs                                     |   10 
 HDL_ON/UI/UI2/FuntionControlView/ArmCenter/AddOutputPage.cs                                      |  441 ++
 HDL_ON/HDL_ON.projitems                                                                          |   14 
 HDL-ON_iOS/Resources/Phone/FunctionIcon/Light/LightScene/CheckOnIcon.png                         |    0 
 HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/AcControlPage_AddIrButton.cs                       |   12 
 HDL_ON/UI/UI2/1-HomePage/HomePageBLL.cs                                                          |   51 
 HDL-ON_Android/Resources/values/strings.xml                                                      |    9 
 HDL_ON/UI/UI2/FuntionControlView/FunctionBaseInfoSetPageBLL.cs                                   |    1 
 HDL_ON/Entity/Enumerative/MyEnum.cs                                                              |   10 
 HDL-ON_Android/Resources/Resource.designer.cs                                                    | 6172 ++++++++++++++-------------
 HDL-ON_Android/Assets/Phone/PersonalCenter/FacePassage/FaceIcon.png                              |    0 
 HDL_ON/Entity/Function/Scene.cs                                                                  |   16 
 HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/SenesorEnvironment/SensorEnvironmentManagerPage.cs      |  133 
 HDL_ON/UI/UI2/FuntionControlView/Light/RGBPageBLL.cs                                             |    4 
 HDL_ON/UI/UI2/3-Intelligence/Scene/SceneEditPage.cs                                              |    6 
 HDL_ON/UI/UI2/4-PersonalCenter/PersonalCenterPageBLL.cs                                          |    2 
 HDL_ON/Entity/DB_ResidenceData.cs                                                                |    7 
 HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/SenesorEnvironment/AddQingpingSensorEnvirTipPage.cs     |  129 
 HDL-ON_iOS/Resources/Phone/PersonalCenter/FacePassage/FaceIcon.png                               |    0 
 HDL_ON/DAL/DriverLayer/Control_Udp.cs                                                            |   53 
 HDL-ON_Android/Resources/values-zh/strings.xml                                                   |    4 
 HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/SenesorEnvironment/AddSensorEnvironmentPage.cs          |  203 
 HDL-ON_iOS/Resources/Phone/FunctionIcon/Icon/sensorenvironment3.png                              |    0 
 HDL-ON_Android/LeChengVideo/Form/ReverseCallFragment.cs                                          |   48 
 HDL_ON/UI/UI2/4-PersonalCenter/PersonalCenterPage.cs                                             |    2 
 HDL_ON/UI/UI2/FuntionControlView/ArmSensor/SenesorMegahealthPage.cs                              |    2 
 HDL_ON/UI/UI2/FuntionControlView/ArmCenter/ArmDeploymentSettingPage.cs                           |  387 +
 HDL-ON_iOS/Resources/Phone/Collection/DefenseStatusIcon.png                                      |    0 
 HDL_ON/DAL/ThirdPartySdk/ESOnVideo.cs                                                            |  110 
 HDL-ON_iOS/Resources/Phone/FunctionIcon/Icon/sensorenvironment2.png                              |    0 
 HDL_ON/UI/UI2/UserPage.cs                                                                        |   37 
 HDL_ON/Entity/Function/SecurityAlarm.cs                                                          |  417 +
 HDL-ON_Android/LeChengVideoActivity.cs                                                           |   84 
 HDL_ON/UI/UI2/4-PersonalCenter/AddFunction/AddDevciePage.cs                                      |   17 
 HDL_ON/UI/UI2/FuntionControlView/ArmSensor/ArmSensorHistroyPaging.cs                             |    2 
 HDL-ON_iOS/Resources/Language.ini                                                                |   62 
 HDL-ON_iOS/Resources/Phone/FunctionIcon/Icon/sensorenvironment.png                               |    0 
 HDL_ON/UI/UI2/4-PersonalCenter/AboutOn/AboutOnPage.cs                                            |   16 
 HDL_ON/DAL/DriverLayer/Packet.cs                                                                 |    2 
 .vs/HDL_APP_Project/xs/UserPrefs.xml                                                             |   66 
 HDL_ON/DAL/DriverLayer/Control.cs                                                                |   84 
 HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/sensorenvironment3.png                             |    0 
 HDL-ON_iOS/Resources/Phone/PersonalCenter/AddDevice/EnvirSensorQingpingCGS1bg.png                |    0 
 HDL-ON_Android/Assets/Phone/FunctionIcon/ArmCenter/AddTargetIcon.png                             |    0 
 HDL-ON_Android/Assets/Phone/FunctionIcon/ArmCenter/RightIcon.png                                 |    0 
 HDL-ON_iOS/Resources/Phone/Collection/DisarmStatusIcon.png                                       |    0 
 HDL_ON/DAL/Server/HttpServerRequest.cs                                                           |    3 
 HDL_ON/UI/UI2/FuntionControlView/FoolHeating/FloorHeatingPageBLL.cs                              |    4 
 HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/sensorenvironment.png                              |    0 
 DLL/EZvizMonitor/ys.dll                                                                          |    0 
 HDL-ON_Android/Assets/Phone/PersonalCenter/AddDevice/EnvirSensorQingpingCGS1bg.png               |    0 
 HDL-ON_iOS/Resources/Phone/FunctionIcon/ArmCenter/RightIcon.png                                  |    0 
 HDL_ON/UI/UI2/FuntionControlView/ArmCenter/AddAlarmDeploymentPage.cs                             |  627 ++
 ys/Jars/app-release.aar                                                                          |    0 
 HDL-ON_Android/Properties/AndroidManifest.xml                                                    |   49 
 HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/AirFreshBgIcon.png                              |    0 
 HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs                                |    1 
 HDL_ON/DAL/Mqtt/MqttClient.cs                                                                    |    2 
 HDL-ON_Android/HDL-ON_Android.csproj                                                             |   23 
 HDL-ON_iOS/Resources/Phone/PersonalCenter/AddDevice/EnvironmentalSensorbg.png                    |    0 
 HDL-ON_iOS/Info.plist                                                                            |    4 
 HDL_ON/Common/HDLCommon.cs                                                                       |  110 
 HDL_ON/UI/UI2/FuntionControlView/ArmCenter/AddOutputSettingPage.cs                               |  995 ++++
 HDL-ON_iOS/Resources/Phone/FunctionIcon/Light/LightScene/CheckIcon.png                           |    0 
 HDL-ON_iOS/Assets.xcassets/device_bg.imageset/device_bg.png                                      |    0 
 HDL_ON/UI/UI2/4-PersonalCenter/PersonalDataPage.cs                                               |   58 
 HDL_ON/UI/UI1-Login/LoginPage.cs                                                                 |   54 
 HDL_ON/UI/UI2/FuntionControlView/ArmCenter/AddInputPage.cs                                       |  388 +
 HDL_ON/UI/UI2/FuntionControlView/Video/VideoMainView.cs                                          |    1 
 HDL_ON/UI/UI2/4-PersonalCenter/FaceManagement/FacePassagePage.cs                                 |  156 
 HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalSensorPage.cs                 |   55 
 HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs                                             |   32 
 HDL-ON_Android/LeChengVideo/Form/MonitorFragment.cs                                              |    9 
 HDL-ON_iOS/Resources/EZ/Base.lproj/AddDevice.storyboard                                          |   17 
 DLL/EZvizMonitor/Square.OkHttp3.dll                                                              |    0 
 HDL-ON_iOS/Resources/Phone/FunctionIcon/Light/LightScene/SetLightSceneIcon.png                   |    0 
 HDL_ON/UI/UI2/FuntionControlView/ArmSensor/SensorGasPage.cs                                      |  177 
 HDL_ON/Entity/Function/Function.cs                                                               |   22 
 HDL-ON_Android/Assets/Phone/Collection/DefenseStatusIcon.png                                     |    0 
 HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/SenesorMegahealth/SenesorMegahealthManagerPage.cs       |    2 
 HDL-ON_Android/Assets/Phone/Collection/DisarmStatusIcon.png                                      |    0 
 HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/AirFreshBgIcon.png                             |    0 
 HDL_ON/UI/UI0-Public/PublicAssmeblyBLL.cs                                                        |    9 
 HDL_ON/UI/UI2/1-HomePage/HomePage.cs                                                             |   96 
 HDL-ON_iOS/Resources/Phone/FunctionIcon/ArmCenter/AddTargetIcon.png                              |    0 
 HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalPage.cs                       |   49 
 HDL-ON_iOS/Assets.xcassets/device_bg.imageset/Contents.json                                      |  528 ++
 HDL-ON_Android/Assets/Phone/FunctionIcon/Light/LightScene/CheckOnIcon.png                        |    0 
 HDL-ON_iOS/Resources/Phone/PersonalCenter/AddDevice/EnvirSensorQingpingLitebg.png                |    0 
 HDL_ON/DAL/DriverLayer/A_Protocol_Common.cs                                                      |   15 
 HDL_ON/UI/UI2/FuntionControlView/Light/LightScene/AddLightScene.cs                               |   90 
 HDL_ON/UI/MainPage.cs                                                                            |   14 
 HDL-ON_Android/Application.cs                                                                    |    2 
 HDL-ON_Android/Assets/Phone/PersonalCenter/AddDevice/EnvirSensorQingpingLitebg.png               |    0 
 HDL_ON/UI/UI2/3-Intelligence/Scene/SceneFunctionListChoosePage.cs                                |    1 
 HDL_ON/UI/UI2/4-PersonalCenter/RoomListManage/Transfer/TransferUserConfirmPage.cs                |    2 
 HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/AcControlPage.cs                                   |   15 
 HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/AirFreshRelayControlPage.cs                        |  304 +
 DLL/IOS/EZSDK.IOS.dll                                                                            |    0 
 HDL-ON_Android/Assets/Phone/FunctionIcon/Light/LightScene/CheckIcon.png                          |    0 
 HDL-ON_Android/Assets/Phone/PersonalCenter/AddDevice/EnvironmentalSensorbg.png                   |    0 
 HDL_ON/Entity/FunctionList.cs                                                                    |    9 
 DLL/EZvizMonitor/Square.OkIO.dll                                                                 |    0 
 HDL_ON/DAL/Server/NewAPI.cs                                                                      |   11 
 HDL_ON/UI/UI2/3-Intelligence/Automation/AddLogic.cs                                              |   22 
 HDL_ON/Common/R.cs                                                                               |   84 
 HDL_ON/Common/Utlis/FloorRoomSelectPopupView.cs                                                  |    2 
 HDL-ON_Android/Assets/Phone/FunctionIcon/Light/LightScene/SetLightSceneIcon.png                  |    0 
 HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/sensorenvironment2.png                             |    0 
 114 files changed, 9,513 insertions(+), 3,495 deletions(-)

diff --git a/.vs/HDL_APP_Project/xs/UserPrefs.xml b/.vs/HDL_APP_Project/xs/UserPrefs.xml
index d066cd7..d959bc6 100644
--- a/.vs/HDL_APP_Project/xs/UserPrefs.xml
+++ b/.vs/HDL_APP_Project/xs/UserPrefs.xml
@@ -1,11 +1,21 @@
-锘�<Properties StartupConfiguration="{09712674-2A38-407B-B1E2-560B2C352F9A}|Default">
-  <MonoDevelop.Ide.ItemProperties.HDL-ON__iOS PreferredExecutionTarget="MonoDevelop.IPhone.IPhoneSimulatorTarget.FE1D0763-7181-4B0C-AB18-E30AA773A6FA" />
-  <MonoDevelop.Ide.Workbench ActiveDocument="HDL_ON/UI/UI2/3-Intelligence/Automation/AddInputType.cs">
+锘�<Properties StartupConfiguration="{D998E133-F0DD-4760-BE3C-461632F54DA4}|Default">
+  <MonoDevelop.Ide.ItemProperties.HDL-ON__iOS PreferredExecutionTarget="MonoDevelop.IPhone.IPhoneDeviceTarget.6242be7109c740c6cb8999a8904b6e0ea8d45192" />
+  <MonoDevelop.Ide.Workbench ActiveDocument="HDL_ON/DAL/Server/HttpUtil.cs">
     <Files>
-      <File FileName="HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs" Line="556" Column="43" />
-      <File FileName="HDL_ON/UI/UI2/3-Intelligence/Automation/PublicInterface.cs" Line="17" Column="21" />
-      <File FileName="HDL_ON/UI/UI2/3-Intelligence/Automation/AddLogic.cs" Line="1" Column="1" />
-      <File FileName="HDL_ON/UI/UI2/3-Intelligence/Automation/AddInputType.cs" Line="83" Column="43" />
+      <File FileName="HDL_ON/Entity/Function/Scene.cs" Line="83" Column="23" />
+      <File FileName="HDL_ON/UI/UI2/3-Intelligence/Scene/SceneEditPage.cs" Line="376" Column="33" />
+      <File FileName="HDL_ON/UI/UI2/1-HomePage/HomePage.cs" Line="392" Column="53" />
+      <File FileName="HDL_ON/UI/UI2/1-HomePage/HomePageBLL.cs" Line="28" Column="22" />
+      <File FileName="HDL_ON/DAL/DriverLayer/UdpSocket.cs" Line="123" Column="1" />
+      <File FileName="HDL_ON/UI/UI2/FuntionControlView/ArmCenter/ArmCenterPage.cs" Line="199" Column="1" />
+      <File FileName="HDL_ON/DAL/DriverLayer/Control.cs" Line="789" Column="18" />
+      <File FileName="HDL_ON/DAL/Server/HttpServerRequest.cs" Line="2295" Column="32" />
+      <File FileName="HDL_ON/DAL/Server/NewAPI.cs" Line="483" Column="23" />
+      <File FileName="HDL_ON/Entity/FunctionList.cs" Line="179" Column="48" />
+      <File FileName="HDL_ON/Common/ApiUtlis.cs" Line="394" Column="1" />
+      <File FileName="HDL_ON/Entity/Function/SecurityAlarm.cs" Line="72" Column="1" />
+      <File FileName="HDL_ON/DAL/DriverLayer/Control_Udp.cs" Line="79" Column="28" />
+      <File FileName="HDL_ON/DAL/Server/HttpUtil.cs" Line="22" Column="87" />
     </Files>
     <Pads>
       <Pad Id="ProjectPad">
@@ -14,21 +24,29 @@
             <Node name="HDL_ON" expanded="True">
               <Node name="Common" expanded="True" />
               <Node name="DAL" expanded="True">
-                <Node name="Server" expanded="True" />
+                <Node name="DriverLayer" expanded="True" />
+                <Node name="Server" expanded="True">
+                  <Node name="HttpUtil.cs" selected="True" />
+                </Node>
               </Node>
-              <Node name="Entity" expanded="True" />
+              <Node name="Entity" expanded="True">
+                <Node name="Function" expanded="True" />
+              </Node>
               <Node name="UI" expanded="True">
                 <Node name="UI2" expanded="True">
-                  <Node name="3-Intelligence" expanded="True">
-                    <Node name="Automation" expanded="True">
-                      <Node name="AddInputType.cs" selected="True" />
-                    </Node>
+                  <Node name="1-HomePage" expanded="True" />
+                  <Node name="FuntionControlView" expanded="True">
+                    <Node name="ArmCenter" expanded="True" />
                   </Node>
                 </Node>
               </Node>
             </Node>
-            <Node name="HDL-ON_Android" expanded="True">
-              <Node name="Assets" expanded="True" />
+            <Node name="HDL-ON_iOS" expanded="True">
+              <Node name="Resources" expanded="True">
+                <Node name="Phone" expanded="True">
+                  <Node name="Collection" expanded="True" />
+                </Node>
+              </Node>
             </Node>
           </Node>
         </State>
@@ -41,16 +59,20 @@
     <String>Shared.Droid.TouchID/Shared.Droid.TouchID.csproj</String>
     <String>Shared.IOS/Shared.IOS.csproj</String>
   </DisabledProjects>
-  <MonoDevelop.Ide.Workspace ActiveConfiguration="Debug" />
+  <MonoDevelop.Ide.Workspace ActiveConfiguration="Debug|iPhone" />
   <MonoDevelop.Ide.ItemProperties.HDL-ON__Android PreferredExecutionTarget="Android.SelectDevice" />
-  <Debugger.DebugSourceFolders>
-    <String>/Users/jlchen/Desktop/wjc</String>
-  </Debugger.DebugSourceFolders>
   <MonoDevelop.Ide.DebuggingService.Breakpoints>
     <BreakpointStore>
-      <Breakpoint file="/Users/jlchen/Desktop/wjc/HDL_APP_Project/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/Method.cs" relfile="HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/Method.cs" line="34" column="1" />
-      <Breakpoint file="/Users/jlchen/Desktop/wjc/HDL_APP_Project/HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/SenesorMegahealth/AddSenesorMegahealthDirection1Page.cs" relfile="HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/SenesorMegahealth/AddSenesorMegahealthDirection1Page.cs" line="118" column="1" />
-      <Breakpoint file="/Users/jlchen/Desktop/wjc/HDL_APP_Project/HDL_ON/UI/UI2/4-PersonalCenter/PersonalDataPage.cs" relfile="HDL_ON/UI/UI2/4-PersonalCenter/PersonalDataPage.cs" line="546" column="1" />
+      <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/FuntionControlView/Electrical/IrFanPage.cs" relfile="HDL_ON/UI/UI2/FuntionControlView/Electrical/IrFanPage.cs" line="42" column="1" />
+      <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/DAL/Mqtt/MqttClient.cs" relfile="HDL_ON/DAL/Mqtt/MqttClient.cs" line="422" column="1" />
+      <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalSensorPage.cs" relfile="HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalSensorPage.cs" line="747" column="1" />
+      <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/4-PersonalCenter/RoomListManage/Transfer/TransferUserConfirmPage.cs" relfile="HDL_ON/UI/UI2/4-PersonalCenter/RoomListManage/Transfer/TransferUserConfirmPage.cs" line="106" column="1" />
+      <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalPage.cs" relfile="HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalPage.cs" line="348" column="1" />
+      <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/4-PersonalCenter/AddFunction/AddDevciePage.cs" relfile="HDL_ON/UI/UI2/4-PersonalCenter/AddFunction/AddDevciePage.cs" line="54" column="1" />
+      <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/DAL/Server/HttpServerRequest.cs" relfile="HDL_ON/DAL/Server/HttpServerRequest.cs" line="2318" column="1" />
+      <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/FuntionControlView/Light/RGBPageBLL.cs" relfile="HDL_ON/UI/UI2/FuntionControlView/Light/RGBPageBLL.cs" line="168" column="1" />
+      <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/FuntionControlView/ArmCenter/AddAlarmDeploymentPage.cs" relfile="HDL_ON/UI/UI2/FuntionControlView/ArmCenter/AddAlarmDeploymentPage.cs" line="424" column="1" />
+      <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/DAL/DriverLayer/Control.cs" relfile="HDL_ON/DAL/DriverLayer/Control.cs" line="785" column="1" />
     </BreakpointStore>
   </MonoDevelop.Ide.DebuggingService.Breakpoints>
   <MultiItemStartupConfigurations />
diff --git a/DLL/EZvizMonitor/Square.OkHttp3.dll b/DLL/EZvizMonitor/Square.OkHttp3.dll
old mode 100644
new mode 100755
Binary files differ
diff --git a/DLL/EZvizMonitor/Square.OkIO.dll b/DLL/EZvizMonitor/Square.OkIO.dll
old mode 100644
new mode 100755
Binary files differ
diff --git a/DLL/EZvizMonitor/ys.dll b/DLL/EZvizMonitor/ys.dll
index 55f39ab..95a7b56 100644
--- a/DLL/EZvizMonitor/ys.dll
+++ b/DLL/EZvizMonitor/ys.dll
Binary files differ
diff --git a/DLL/IOS/EZSDK.IOS.dll b/DLL/IOS/EZSDK.IOS.dll
index fdc491c..cb145fc 100644
--- a/DLL/IOS/EZSDK.IOS.dll
+++ b/DLL/IOS/EZSDK.IOS.dll
Binary files differ
diff --git a/HDL-ON_Android/Application.cs b/HDL-ON_Android/Application.cs
index 3d29968..ecb3682 100644
--- a/HDL-ON_Android/Application.cs
+++ b/HDL-ON_Android/Application.cs
@@ -128,8 +128,6 @@
                     //缃戠粶鍙樺寲澶勭悊
                     HDLCommon.Current.UpdateInternetStatus((int)internetStatus, MainPage.IsEnterBackground);
                 };
-                //寮�鍚畾浣嶆湇鍔�
-                Shared.Application.StartGPSLocationService();
             };
             BaseActivity.RefreshUIAction += (activity) =>
             {
diff --git a/HDL-ON_Android/Assets/Language.ini b/HDL-ON_Android/Assets/Language.ini
index 3ed920d..895b1a4 100644
--- a/HDL-ON_Android/Assets/Language.ini
+++ b/HDL-ON_Android/Assets/Language.ini
@@ -328,7 +328,7 @@
 324=Scene delay
 325=Delay setting
 326=Delay
-327=Catch Scene
+327=Capture the scene
 328=Film scene
 329=General
 330=Automatic mode
@@ -439,7 +439,6 @@
 453=Alarm mute
 454=Deployment information
 455=The name can not be blank.
-
 456=Canvas
 457=Energy consumption
 458=Date
@@ -466,7 +465,14 @@
 477=Swing
 478=Pattern
 479=Speed
-
+480=Environmental sensor
+481=Can start using environmental sensor
+482=Gas sensor
+483=Please enter the MAC code of the device
+484=Open
+485=Check/Modify
+486=Defense function / Alarm status
+487=Alarm target after triggering
 
  
 1000=Room Humidity
@@ -522,7 +528,7 @@
 1050=Add Device
 1051=Mini Intelligent Remote Control
 1052=Add Infrared Remote Control
-1053=Press the infrared remote control button{0}for 10 seconds and the indicator light{0}flashes blue quickly
+1053=Press the infrared remote control button{0}for 3 seconds and the indicator light{0}flashes blue quickly
 1054=Please make sure your Bluetooth{0}is on and searchable
 1055=Next Step
 1056=Device searching...
@@ -983,10 +989,10 @@
 9010=New password
 9011=Enter new password again
 9012=Agree
-9013=User agreement
-9014=Privacy agreement
+9013=Service Agreement
+9014=User information protection regulations
 9015=and
-9016=Please read and agree on User Agreement and Privacy Agreement.
+9016=Please read and agree on User Service Agreement and User information protection regulations.
 9017=Are you sure to log out?
 9018=Please select country/region.
 9019=Update now
@@ -1405,7 +1411,7 @@
 324=鍦烘櫙寤舵椂
 325=寤舵椂璁剧疆
 326=寤舵椂
-327=鎹曡幏鍦烘櫙
+327=鎹曟崏鍦烘櫙
 328=鐢靛奖鍦烘櫙
 329=鏅��
 330=鑷姩妯″紡
@@ -1541,6 +1547,14 @@
 477=鎽嗗姩
 478=妯″紡
 479=椋庨��
+480=鐜浼犳劅鍣�
+481=鍙互寮�濮嬩娇鐢ㄧ幆澧冧紶鎰熷櫒浜�
+482=鐕冩皵浼犳劅鍣�
+483=璇疯緭鍏ヨ澶囩殑MAC鐮�
+484=寮�鍚�
+485=鏌ョ湅/淇敼
+486=甯冮槻鍔熻兘/鎶ヨ鐘舵��
+487=瑙﹀彂鍚庡憡璀︾洰鏍�
  
  
 1000=瀹ゅ唴婀垮害
@@ -1596,7 +1610,7 @@
 1050=娣诲姞璁惧
 1051=mini鏅鸿兘閬ユ帶鍣�
 1052=娣诲姞绾㈠閬ユ帶
-1053=闀挎寜绾㈠閬ユ帶鍣ㄦ寜閽�10绉掞紝鎸囩ず鐏摑鑹插揩闂�
+1053=闀挎寜绾㈠閬ユ帶鍣ㄦ寜閽�3绉掞紝鎸囩ず鐏摑鑹插揩闂�
 1054=璇风‘淇濇偍鐨勮摑鐗欏凡寮�鍚苟澶勪簬鍙互琚悳绱㈢姸鎬�
 1055=涓嬩竴姝�
 1056=璁惧鎼滅储涓�...
@@ -1804,7 +1818,7 @@
 6016=绂荤嚎
 6017=鐗堟湰鍙�
 6018=璇疯緭鍏ラ仴鎺у櫒鍚嶇О
-6019=鎻愮ず锛氶仴鎺у櫒鍒涘缓鍚庡彲鍦ㄥ姛鑳�-鐢靛櫒鍒嗙被{\r\n}鏌ユ壘浣跨敤
+6019=鎻愮ず锛氶仴鎺у櫒鍒涘缓鍚庡彲鍦ㄥ姛鑳�-鐢靛櫒鍒嗙被锛屾煡鎵句娇鐢�
 6020=鎺ㄨ崘鎸夐敭
 6021=璇疯緭鍏ユ寜閿悕绉�
 6022=涓嬩竴姝�
@@ -1879,6 +1893,7 @@
 6093=璁惧涓嶅湪绾�
 6094=缃戝叧璁惧涓嶅瓨鍦�
 6095=娣诲姞鎸夐挳瓒呭嚭30涓�
+ 
  
  
 7000=鏂板缓鑷姩鍖�
@@ -2026,7 +2041,6 @@
 7142=涓ラ噸
 7143=鍋忛珮
 7144=浼樼
-
  
 9000=璇蜂娇鐢ㄦ柊鐨勬墜鏈鸿处鍙风櫥褰旳PP
 9001=璇蜂娇鐢ㄦ柊鐨勯偖绠辫处鍙风櫥褰旳PP
@@ -2041,10 +2055,10 @@
 9010=鏂板瘑鐮�
 9011=鍐嶆杈撳叆鏂板瘑鐮�
 9012=鍚屾剰
-9013=鐢ㄦ埛鍗忚
-9014=闅愮鏀跨瓥
+9013=鏈嶅姟鍗忚
+9014=鐢ㄦ埛淇℃伅淇濇姢瑙勫畾
 9015=鍜�
-9016=璇峰厛闃呰骞跺悓鎰忋�婄敤鎴峰崗璁�嬪拰銆婇殣绉佹斂绛栥��
+9016=璇峰厛闃呰骞跺悓鎰忋�婃湇鍔″崗璁�嬪拰銆婄敤鎴蜂俊鎭繚鎶よ瀹氥��
 9017=纭閫�鍑虹櫥褰曪紵
 9018=璇烽�夋嫨鍥藉/鍖哄煙
 9019=绔嬪嵆鏇存柊
diff --git a/HDL-ON_Android/Assets/Phone/Collection/DefenseStatusIcon.png b/HDL-ON_Android/Assets/Phone/Collection/DefenseStatusIcon.png
new file mode 100644
index 0000000..6fa5bd1
--- /dev/null
+++ b/HDL-ON_Android/Assets/Phone/Collection/DefenseStatusIcon.png
Binary files differ
diff --git a/HDL-ON_Android/Assets/Phone/Collection/DisarmStatusIcon.png b/HDL-ON_Android/Assets/Phone/Collection/DisarmStatusIcon.png
new file mode 100644
index 0000000..da8a843
--- /dev/null
+++ b/HDL-ON_Android/Assets/Phone/Collection/DisarmStatusIcon.png
Binary files differ
diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/AirFreshBgIcon.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/AirFreshBgIcon.png
new file mode 100644
index 0000000..ae4999c
--- /dev/null
+++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/AirFreshBgIcon.png
Binary files differ
diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/ArmCenter/AddTargetIcon.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/ArmCenter/AddTargetIcon.png
new file mode 100644
index 0000000..0dc022e
--- /dev/null
+++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/ArmCenter/AddTargetIcon.png
Binary files differ
diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/ArmCenter/RightIcon.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/ArmCenter/RightIcon.png
new file mode 100644
index 0000000..6bd7f63
--- /dev/null
+++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/ArmCenter/RightIcon.png
Binary files differ
diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/sensorenvironment.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/sensorenvironment.png
new file mode 100644
index 0000000..359a3a8
--- /dev/null
+++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/sensorenvironment.png
Binary files differ
diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/sensorenvironment2.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/sensorenvironment2.png
new file mode 100644
index 0000000..a863138
--- /dev/null
+++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/sensorenvironment2.png
Binary files differ
diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/sensorenvironment3.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/sensorenvironment3.png
new file mode 100644
index 0000000..fca9f74
--- /dev/null
+++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/sensorenvironment3.png
Binary files differ
diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Light/LightScene/CheckIcon.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Light/LightScene/CheckIcon.png
new file mode 100644
index 0000000..8eb452d
--- /dev/null
+++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Light/LightScene/CheckIcon.png
Binary files differ
diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Light/LightScene/CheckOnIcon.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Light/LightScene/CheckOnIcon.png
new file mode 100644
index 0000000..9f7c349
--- /dev/null
+++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Light/LightScene/CheckOnIcon.png
Binary files differ
diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Light/LightScene/SetLightSceneIcon.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Light/LightScene/SetLightSceneIcon.png
new file mode 100644
index 0000000..5189605
--- /dev/null
+++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Light/LightScene/SetLightSceneIcon.png
Binary files differ
diff --git a/HDL-ON_Android/Assets/Phone/PersonalCenter/AddDevice/EnvirSensorQingpingCGS1bg.png b/HDL-ON_Android/Assets/Phone/PersonalCenter/AddDevice/EnvirSensorQingpingCGS1bg.png
new file mode 100644
index 0000000..fff2f4a
--- /dev/null
+++ b/HDL-ON_Android/Assets/Phone/PersonalCenter/AddDevice/EnvirSensorQingpingCGS1bg.png
Binary files differ
diff --git a/HDL-ON_Android/Assets/Phone/PersonalCenter/AddDevice/EnvirSensorQingpingLitebg.png b/HDL-ON_Android/Assets/Phone/PersonalCenter/AddDevice/EnvirSensorQingpingLitebg.png
new file mode 100644
index 0000000..ce22eee
--- /dev/null
+++ b/HDL-ON_Android/Assets/Phone/PersonalCenter/AddDevice/EnvirSensorQingpingLitebg.png
Binary files differ
diff --git a/HDL-ON_Android/Assets/Phone/PersonalCenter/AddDevice/EnvironmentalSensorbg.png b/HDL-ON_Android/Assets/Phone/PersonalCenter/AddDevice/EnvironmentalSensorbg.png
new file mode 100644
index 0000000..8258f31
--- /dev/null
+++ b/HDL-ON_Android/Assets/Phone/PersonalCenter/AddDevice/EnvironmentalSensorbg.png
Binary files differ
diff --git a/HDL-ON_Android/Assets/Phone/PersonalCenter/FacePassage/FaceIcon.png b/HDL-ON_Android/Assets/Phone/PersonalCenter/FacePassage/FaceIcon.png
new file mode 100644
index 0000000..632eccf
--- /dev/null
+++ b/HDL-ON_Android/Assets/Phone/PersonalCenter/FacePassage/FaceIcon.png
Binary files differ
diff --git a/HDL-ON_Android/HDL-ON_Android.csproj b/HDL-ON_Android/HDL-ON_Android.csproj
index 6511e92..b89fd18 100644
--- a/HDL-ON_Android/HDL-ON_Android.csproj
+++ b/HDL-ON_Android/HDL-ON_Android.csproj
@@ -145,6 +145,9 @@
     <Reference Include="videophone">
       <HintPath>..\DLL\FL\Android\videophone.dll</HintPath>
     </Reference>
+    <Reference Include="LC_SDK">
+      <HintPath>..\DLL\LC\Android\LC_SDK.dll</HintPath>
+    </Reference>
     <Reference Include="Square.OkHttp3">
       <HintPath>..\DLL\EZvizMonitor\Square.OkHttp3.dll</HintPath>
     </Reference>
@@ -153,9 +156,6 @@
     </Reference>
     <Reference Include="ys">
       <HintPath>..\DLL\EZvizMonitor\ys.dll</HintPath>
-    </Reference>
-    <Reference Include="LC_SDK">
-      <HintPath>..\DLL\LC\Android\LC_SDK.dll</HintPath>
     </Reference>
   </ItemGroup>
   <ItemGroup>
@@ -427,6 +427,21 @@
     <AndroidAsset Include="Assets\Phone\FunctionIcon\Icon\HomeIcon\irfan_blue.png" />
     <AndroidAsset Include="Assets\Phone\FunctionIcon\Icon\HomeIcon\irfan_white.png" />
     <AndroidAsset Include="Assets\Phone\FunctionIcon\Icon\irfan.png" />
+    <AndroidAsset Include="Assets\Phone\PersonalCenter\AddDevice\EnvironmentalSensorbg.png" />
+    <AndroidAsset Include="Assets\Phone\FunctionIcon\Icon\sensorenvironment.png" />
+    <AndroidAsset Include="Assets\Phone\FunctionIcon\AirFresh\AirFreshBgIcon.png" />
+    <AndroidAsset Include="Assets\Phone\FunctionIcon\Icon\sensorenvironment2.png" />
+    <AndroidAsset Include="Assets\Phone\FunctionIcon\Icon\sensorenvironment3.png" />
+    <AndroidAsset Include="Assets\Phone\PersonalCenter\AddDevice\EnvirSensorQingpingCGS1bg.png" />
+    <AndroidAsset Include="Assets\Phone\PersonalCenter\AddDevice\EnvirSensorQingpingLitebg.png" />
+    <AndroidAsset Include="Assets\Phone\FunctionIcon\ArmCenter\AddTargetIcon.png" />
+    <AndroidAsset Include="Assets\Phone\FunctionIcon\ArmCenter\RightIcon.png" />
+    <AndroidAsset Include="Assets\Phone\PersonalCenter\FacePassage\FaceIcon.png" />
+    <AndroidAsset Include="Assets\Phone\FunctionIcon\Light\LightScene\CheckIcon.png" />
+    <AndroidAsset Include="Assets\Phone\FunctionIcon\Light\LightScene\CheckOnIcon.png" />
+    <AndroidAsset Include="Assets\Phone\FunctionIcon\Light\LightScene\SetLightSceneIcon.png" />
+    <AndroidAsset Include="Assets\Phone\Collection\DefenseStatusIcon.png" />
+    <AndroidAsset Include="Assets\Phone\Collection\DisarmStatusIcon.png" />
   </ItemGroup>
   <ItemGroup>
     <AndroidAsset Include="Assets\Phone\FunctionIcon\DoorLock\BindScene.png" />
@@ -1325,6 +1340,8 @@
   </ItemGroup>
   <ItemGroup>
     <Folder Include="Assets\Phone\FunctionIcon\IrFan\" />
+    <Folder Include="Assets\Phone\PersonalCenter\FacePassage\" />
+    <Folder Include="Assets\Phone\FunctionIcon\Light\LightScene\" />
   </ItemGroup>
   <Import Project="..\HDL_ON\HDL_ON.projitems" Label="Shared" Condition="Exists('..\HDL_ON\HDL_ON.projitems')" />
   <Import Project="$(MSBuildExtensionsPath)\Xamarin\Android\Xamarin.Android.CSharp.targets" />
diff --git a/HDL-ON_Android/LeChengVideo/Form/MonitorFragment.cs b/HDL-ON_Android/LeChengVideo/Form/MonitorFragment.cs
index 23cefec..f5d7ebb 100644
--- a/HDL-ON_Android/LeChengVideo/Form/MonitorFragment.cs
+++ b/HDL-ON_Android/LeChengVideo/Form/MonitorFragment.cs
@@ -62,7 +62,7 @@
             screenshotLayout.SetOnClickListener(this);
         }
 
-       
+
 
         /// <summary>
         /// 寮�閿�
@@ -70,6 +70,8 @@
         private void Unlock()
         {
             //
+            CurtActivity.Unlock();
+            UpdataUnlockState();
         }
 
         /// <summary>
@@ -117,16 +119,17 @@
             if (v.Equals(unlockLayout))
             {
                 //寮�閿�
+                Unlock();
             }
             else if (v.Equals(screenshotLayout))
             {
                 //鏈夎棰戣繃鏉ュ彲璋冪敤姝ゆ帴鍙h繘琛屾媿鐓�
-                // 鍐呴儴鍌ㄥ瓨/DCIM/Camera/.....jpg
                 screenImage.Selected = true;
                 SimpleDateFormat format = new SimpleDateFormat("yyyyMMddHHmmss");
                 string time = format.Format(new Date(SystemClock.CurrentThreadTimeMillis()));
-                string ss = Android.OS.Environment.ExternalStorageDirectory.Path + "/DCIM/Camera";
+                string ss = Android.OS.Environment.ExternalStorageDirectory.Path + "/DCIM/HDL";
                 string path = ss + "/" + time + ".jpg";
+                CurtActivity.SnapShot(path);
             }
         }
 
diff --git a/HDL-ON_Android/LeChengVideo/Form/ReverseCallFragment.cs b/HDL-ON_Android/LeChengVideo/Form/ReverseCallFragment.cs
index 84d67cf..4f0d886 100644
--- a/HDL-ON_Android/LeChengVideo/Form/ReverseCallFragment.cs
+++ b/HDL-ON_Android/LeChengVideo/Form/ReverseCallFragment.cs
@@ -50,7 +50,7 @@
             CurtActivity.Play();
 
             CurtActivity.CloseAudio();
-            
+
             return mView;
         }
 
@@ -95,6 +95,16 @@
                 catch { }
 
             }).Start();
+        }
+
+        /// <summary>
+        /// 寮�閿�
+        /// </summary>
+        private void Unlock()
+        {
+            //
+            CurtActivity.Unlock();
+            UpdataUnlockState();
         }
 
         /// <summary>
@@ -206,39 +216,17 @@
             else if (v.Equals(screenshotImg))
             {
                 //鏈夎棰戣繃鏉ュ彲璋冪敤姝ゆ帴鍙h繘琛屾媿鐓�
+                screenshotImg.Selected = true;
+                SimpleDateFormat format = new SimpleDateFormat("yyyyMMddHHmmss");
+                string time = format.Format(new Date(SystemClock.CurrentThreadTimeMillis()));
+                string ss = Android.OS.Environment.ExternalStorageDirectory.Path + "/DCIM/Camera";
+                string path = ss + "/" + time + ".jpg";
+                CurtActivity.SnapShot(path);
             }
             else if (v.Equals(unlockImg))
             {
-                PostUnlock();
+                CurtActivity.Unlock();
             }
-        }
-
-        /// <summary>
-        /// post 鎴浘
-        /// </summary>
-        /// <param name="path">鎴浘淇濈暀鐨勮矾寰�</param>
-        private void PostScreenshot(string path)
-        {
-            new Thread(() =>
-            {
-                try
-                {
-                    string[] str = path.Split("/");
-                    string img_name = str.GetValue(str.Length - 1).ToString().Replace(".jpg", "");
-                    byte[] images = FileUtlis.Files.ReadFileForPath(path);
-                    Dictionary<string, object> d = new Dictionary<string, object>();
-                    d.Add("callId", VideoActivity.CallId);
-                    d.Add("images", images);
-                    d.Add("imagesName", img_name);
-                    string jsonString = HttpUtil.GetSignRequestJson(d);
-
-                    string url = "/home-wisdom/app/fl/vi/screenshot";
-                    ResponsePackNew response = HttpUtil.RequestHttpsPost(url, jsonString);
-                    Log.Info("LcVideo", "Post Screenshot Response code=" + response.Code);
-                }
-                catch { }
-
-            }).Start();
         }
 
         /// <summary>
diff --git a/HDL-ON_Android/LeChengVideoActivity.cs b/HDL-ON_Android/LeChengVideoActivity.cs
index 9020958..7cff4e5 100644
--- a/HDL-ON_Android/LeChengVideoActivity.cs
+++ b/HDL-ON_Android/LeChengVideoActivity.cs
@@ -21,6 +21,7 @@
 using Com.Lechange.Opensdk.Media;
 using HDL_ON.DAL.Server;
 using HDL_ON_Android.LeChengView.Form;
+using Java.IO;
 using Java.Lang;
 
 namespace HDL_ON_Android
@@ -37,6 +38,8 @@
         public string PlayToken = "";//鎾斁playToken
         public string CallId = "";//鍛煎彨Id
         private int Type = 0;//0鐩戞帶锛�1瀵硅
+        private string DeviceName = "";// 澶囨敞
+
         /// <summary>
         /// 0:鍥藉唴锛�1娴峰
         /// </summary>
@@ -65,6 +68,7 @@
             Type = Intent.GetIntExtra("Type", 0);//0鐩戞帶锛�1瀵硅//1
             Location = Intent.GetIntExtra("Location", 0);//1
             CallId = Intent.GetStringExtra("callId");//1384766990812426242
+            DeviceName = Intent.GetStringExtra("DeviceName");
 
             InitLCSDK();
 
@@ -95,7 +99,7 @@
             ivBack = (ImageView)FindViewById(Resource.Id.videoBackImg);
             tvName = (TextView)FindViewById(Resource.Id.nameText);
 
-            tvName.SetText("DeviceName", null);
+            tvName.SetText(DeviceName, null);
             ivBack.SetOnClickListener(this);
 
         }
@@ -185,6 +189,84 @@
         }
 
         /// <summary>
+        /// 寮�閿�
+        /// </summary>
+        public void Unlock()
+        {
+            //
+            Dictionary<string, object> dic = new Dictionary<string, object>();
+            dic.Add("deviceId", this.DeviceId);
+            dic.Add("callId", this.CallId);
+
+            var requestJson = HttpUtil.GetSignRequestJson(dic);
+            var revertObj = HttpUtil.RequestHttpsPostFroHome("/home-wisdom/platform/imou/openDoorbell", requestJson);
+            if (revertObj.Code == StateCode.SUCCESS)
+            {
+                Toast.MakeText(this, Resources.GetString(Resource.String.unlock_success), ToastLength.Short).Show();
+            }
+            else
+            {
+                Toast.MakeText(this, Resources.GetString(Resource.String.unlock_fail), ToastLength.Short).Show();
+            }
+        }
+
+        /// <summary>
+        /// 鎴浘
+        /// </summary>
+        /// <param name="path"></param>
+        public void SnapShot(string path)
+        {
+            try
+            {
+                int code = mPlayWindow.SnapShot(path);
+                if (code == 0)
+                {
+                    //Android.Provider.MediaStore.Images.Media.InsertImage(this.getContentResolver(), path, "ss", "ss");
+                    Toast.MakeText(this, Resources.GetString(Resource.String.screenshot_success), ToastLength.Short).Show();
+                }
+                else
+                {
+                    Toast.MakeText(this, Resources.GetString(Resource.String.screenshot_fail), ToastLength.Short).Show();
+                }
+            }
+            catch (System.Exception e)
+            {
+                string error = e.Message;
+            }
+            
+            //杩愯鍒拌繖锛宲hotoFile宸茬粡瀛樺湪锛岃繖閲岄渶瑕佽幏寰楄繖涓枃浠剁殑uri
+            //* 鍒嗕袱绉嶆儏鍐碉紝android7.0浠ヤ笂鍜屼互涓�
+            // 鍏堝瓨鍏ヤ复鏃剁洰褰曪紝鐒跺悗鍐嶇Щ鍔ㄥ埌鐩稿唽鐩綍涓�
+            //File photoFile = new File(path);
+            //Android.Net.Uri photoUri;
+
+            //if (Build.VERSION.SdkInt >= 24)
+            //if (Build.VERSION.PreviewSdkInt >= 24)
+            //{
+
+            //    /**
+            //     * FileProvider.getUriForFile(),杩欎釜鏂规硶涓渶瑕佸~鍐欎笁涓弬鏁帮紝
+            //     * 绗竴涓狢ontext锛�
+            //     * 绗簩涓猄
+            //     * tring 浠绘剰
+            //     * 绗笁涓狥ile
+            //     */
+            //    photoUri = FileProvider.GetUriForFile(this, "HDL Video SnapShot", photoFile);
+
+            //}
+            //else
+            //{
+            //    photoUri = Android.Net.Uri.FromFile(photoFile);
+            //}
+    
+        }
+
+        private ContentResolver getContentResolver()
+        {
+            throw new NotImplementedException();
+        }
+
+        /// <summary>
         /// 璁剧疆椤堕儴鐘舵�佹爮鑳屾櫙閫忔槑
         /// </summary>
         private void SetStatusBarColor()
diff --git a/HDL-ON_Android/Properties/AndroidManifest.xml b/HDL-ON_Android/Properties/AndroidManifest.xml
index 98c7a12..907983d 100644
--- a/HDL-ON_Android/Properties/AndroidManifest.xml
+++ b/HDL-ON_Android/Properties/AndroidManifest.xml
@@ -1,6 +1,49 @@
 锘�<?xml version="1.0" encoding="utf-8"?>
-<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="202107081" android:versionName="1.2.202107081" package="com.hdl.onpro">
-	<uses-sdk android:minSdkVersion="23" android:targetSdkVersion="29" />
+<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="202108201" android:versionName="1.2.202108201" package="com.hdl.onpro">
+	<uses-sdk android:minSdkVersion="26" android:targetSdkVersion="29" />
+	<!-- 涔愭鍙瀵硅闇�瑕佺殑鏉冮檺 -->
+	<!--<uses-permission android:name="android.permission.INTERNET" />-->
+	<!--缃戠粶璁块棶-->
+	<!--<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />-->
+	<!--鍏佽绋嬪簭鍐欏叆澶栭儴瀛樺偍,濡係D鍗′笂鍐欐枃浠讹紝鎶撳浘銆佸綍鍒剁瓑-->
+	<!--<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />-->
+	<!--绋嬪簭鍙互璇诲彇璁惧澶栭儴瀛樺偍绌洪棿(鍐呯疆SDcard鍜屽缃甋DCard)鐨勬枃浠讹紝鎴戠殑鏂囦欢绛�-->
+	<uses-permission android:name="android.permission.USE_CREDENTIALS" />
+	<!--鍏佽绋嬪簭璇锋眰楠岃瘉浠嶢ccountManager锛燂紵锛�-->
+	<!--<uses-permission android:name="android.permission.CHANGE_WIFI_MULTICAST_STATE" />-->
+	<!--鍏佽鏀瑰彉WiFi澶氭挱鐘舵�侊紵锛燂紵-->
+	<!--<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />-->
+	<!--鍏佽绋嬪簭鏄剧ず绯荤粺绐楀彛锛屽簲璇ュ凡缁忎笉閫傜敤浜嗭紵锛燂紵-->
+	<!--<uses-permission android:name="android.permission.RECORD_AUDIO" />-->
+	<!--鍏佽绋嬪簭褰曞埗澹伴煶閫氳繃鎵嬫満鎴栬�虫満鐨勯害鍏嬶紝瀵硅銆佽嚜瀹氫箟鎶ヨ闊崇瓑-->
+	<!--<uses-permission android:name="android.permission.CAMERA" />-->
+	<!--鍏佽绋嬪簭璁块棶鎽勫儚澶磋繘琛屾媿鐓э紝浜岀淮鐮佹壂鎻忚ˉ鍏夈�佹媿鐓т笂浼犲浘鐗囩瓑-->
+	<uses-permission android:name="android.permission.FLASHLIGHT" />
+	<!--鍏佽璁块棶闂厜鐏紝浜岀淮鐮佹壂鎻忚ˉ鍏�-->
+	<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
+	<!--鍏佽绋嬪簭淇敼澹伴煶璁剧疆淇℃伅锛屽0娉㈤厤瀵癸紝鑷姩璋冨ぇ闊抽噺銆傞渶姹傚彉鏇翠箣鍚庡簲璇ヤ笉闇�瑕佷簡锛燂紵锛�-->
+	<!--<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />-->
+	<!--鍏佽绋嬪簭鑾峰彇褰撳墠WiFi鎺ュ叆鐨勭姸鎬佷互鍙奧LAN鐑偣鐨勪俊鎭紝璁惧娣诲姞浣曠閰嶇綉娴佺▼浣跨敤-->
+	<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
+	<!--鍏佽绋嬪簭鏀瑰彉WiFi鐘舵�侊紝閰嶇綉绛�-->
+	<!--<uses-feature android:name="android.hardware.camera" />-->
+	<!--<uses-feature android:name="android.hardware.camera.autofocus" />-->
+	<!-- 纭欢鍔犻�熷X5瑙嗛鎾斁闈炲父閲嶈锛屽缓璁紑鍚� -->
+	<uses-permission android:name="android.permission.READ_SETTINGS" />
+	<!--鍏佽绋嬪簭璇诲彇绯荤粺璁剧疆锛屽0娉㈤厤瀵硅幏鍙栧綋鍓嶇郴缁熼煶閲忕瓑-->
+	<!-- Optional for location -->
+	<!--<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />-->
+	<!--鍏佽涓�涓▼搴忚闂瓹ellID鎴� WiFi鐑偣鏉ヨ幏鍙栫矖鐣ョ殑浣嶇疆锛岀櫥闄嗐�佽澶囨坊鍔犵瓑-->
+	<!--<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />-->
+	<!--鍏佽涓�涓▼搴忚闂瓹ellID鎴� WiFi鐑偣鏉ヨ幏鍙栫簿纭殑浣嶇疆锛岀櫥闄嗐�佽澶囨坊鍔犵瓑锛燂紵锛�-->
+	<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />
+	<!--鍏佽搴旂敤绋嬪簭璁块棶棰濆鐨勪綅缃彁渚涘懡浠わ紝鐧婚檰銆佽澶囨坊鍔犵瓑锛燂紵锛�-->
+	<!--<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />-->
+	<!--鍏佽绋嬪簭鏀瑰彉缃戠粶鐘舵��,濡傛槸鍚﹁仈缃戯紝閰嶇綉锛燂紵锛�-->
+	<!--<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />-->
+	<uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES" />
+	<!--鍏佽搴旂敤绋嬪簭璇锋眰瀹夎鍖呫�傞拡瀵笰PI澶т簬22蹇呴』鎸佹湁璇ヨ鍙娇鐢ˋCTION_INSTALL_PACKAGE搴旂敤銆傚簲璇ユ病鍦ㄧ敤锛燂紵锛�-->
+	<uses-permission android:name="android.permission.VIBRATE" />
 	<!--  鍙瀵硅鏉冮檺-->
 	<uses-permission android:name="android.permission.CAMERA" />
 	<uses-feature android:name="android.hardware.camera" />
@@ -39,7 +82,7 @@
 	<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
 	<uses-permission android:name="android.permission.READ_LOGS" />
 	<!-- 鏋佸厜鎺ㄩ�佺粨鏉� -->
-	<application android:debuggable="false" android:allowBackup="true" android:icon="@drawable/Icon" android:networkSecurityConfig="@xml/network_security_config" android:largeHeap="true" android:label="ON+">
+	<application android:allowBackup="true" android:icon="@drawable/Icon" android:networkSecurityConfig="@xml/network_security_config" android:largeHeap="true" android:label="ON+">
 		<provider android:name="android.support.v4.content.FileProvider" android:authorities="com.hdl.onpro.fileProvider" android:grantUriPermissions="true" android:exported="false">
 			<meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/file_paths" />
 		</provider>
diff --git a/HDL-ON_Android/Resources/Resource.designer.cs b/HDL-ON_Android/Resources/Resource.designer.cs
index 2bc20e9..ab328db 100644
--- a/HDL-ON_Android/Resources/Resource.designer.cs
+++ b/HDL-ON_Android/Resources/Resource.designer.cs
@@ -6974,604 +6974,670 @@
 			public const int btn_get_device_list = 2131296348;
 			
 			// aapt resource value: 0x7F09005D
-			public const int btn_id_save_name = 2131296349;
+			public const int btn_hat_audio_caller = 2131296349;
 			
 			// aapt resource value: 0x7F09005E
-			public const int btn_landevice = 2131296350;
+			public const int btn_hat_video_caller = 2131296350;
 			
 			// aapt resource value: 0x7F09005F
-			public const int btn_logout = 2131296351;
+			public const int btn_id_save_name = 2131296351;
 			
 			// aapt resource value: 0x7F090060
-			public const int btn_multi_screen_preview = 2131296352;
+			public const int btn_landevice = 2131296352;
 			
 			// aapt resource value: 0x7F090061
-			public const int btn_online_device = 2131296353;
+			public const int btn_logout = 2131296353;
 			
 			// aapt resource value: 0x7F090062
-			public const int btn_sdk_login = 2131296354;
+			public const int btn_multi_screen_preview = 2131296354;
 			
 			// aapt resource value: 0x7F090063
-			public const int btn_start_ap = 2131296355;
+			public const int btn_online_device = 2131296355;
 			
 			// aapt resource value: 0x7F090064
-			public const int btn_stop_ap = 2131296356;
+			public const int btn_sdk_login = 2131296356;
 			
 			// aapt resource value: 0x7F090065
-			public const int btn_support = 2131296357;
+			public const int btn_show_debug_tools = 2131296357;
 			
 			// aapt resource value: 0x7F090066
-			public const int btn_test = 2131296358;
+			public const int btn_start_ap = 2131296358;
 			
 			// aapt resource value: 0x7F090067
-			public const int btn_to_alarm_list = 2131296359;
+			public const int btn_stop_ap = 2131296359;
 			
 			// aapt resource value: 0x7F090068
-			public const int btn_to_ap = 2131296360;
+			public const int btn_support = 2131296360;
 			
 			// aapt resource value: 0x7F090069
-			public const int btn_to_device_list = 2131296361;
+			public const int btn_test = 2131296361;
 			
 			// aapt resource value: 0x7F09006A
-			public const int btn_to_smart_config = 2131296362;
+			public const int btn_to_alarm_list = 2131296362;
 			
 			// aapt resource value: 0x7F09006B
-			public const int btn_to_sound_wave = 2131296363;
+			public const int btn_to_ap = 2131296363;
 			
 			// aapt resource value: 0x7F09006C
-			public const int btn_user = 2131296364;
+			public const int btn_to_device_list = 2131296364;
 			
 			// aapt resource value: 0x7F09006D
-			public const int buttonPanel = 2131296365;
+			public const int btn_to_smart_config = 2131296365;
 			
 			// aapt resource value: 0x7F09006E
-			public const int callAnswerImg = 2131296366;
+			public const int btn_to_sound_wave = 2131296366;
 			
 			// aapt resource value: 0x7F09006F
-			public const int callAnswerLayout = 2131296367;
+			public const int btn_user = 2131296367;
 			
 			// aapt resource value: 0x7F090070
-			public const int callHangupImg = 2131296368;
+			public const int buttonPanel = 2131296368;
 			
 			// aapt resource value: 0x7F090071
-			public const int callHangupText = 2131296369;
+			public const int callAnswerImg = 2131296369;
 			
 			// aapt resource value: 0x7F090072
-			public const int callScreenshotImg = 2131296370;
+			public const int callAnswerLayout = 2131296370;
 			
 			// aapt resource value: 0x7F090073
-			public const int callTipText = 2131296371;
+			public const int callHangupImg = 2131296371;
 			
 			// aapt resource value: 0x7F090074
-			public const int callUnlockImg = 2131296372;
+			public const int callHangupText = 2131296372;
 			
 			// aapt resource value: 0x7F090075
-			public const int call_accept = 2131296373;
+			public const int callScreenshotImg = 2131296373;
 			
 			// aapt resource value: 0x7F090076
-			public const int camera0 = 2131296374;
+			public const int callTipText = 2131296374;
 			
 			// aapt resource value: 0x7F090077
-			public const int camera1 = 2131296375;
+			public const int callUnlockImg = 2131296375;
 			
 			// aapt resource value: 0x7F090078
-			public const int cameraListLy = 2131296376;
+			public const int call_accept = 2131296376;
 			
 			// aapt resource value: 0x7F090079
-			public const int cameraName = 2131296377;
+			public const int camera0 = 2131296377;
 			
 			// aapt resource value: 0x7F09007A
-			public const int cameraNameSort = 2131296378;
+			public const int camera1 = 2131296378;
 			
 			// aapt resource value: 0x7F09007B
-			public const int camera_del_btn = 2131296379;
+			public const int cameraListLy = 2131296379;
 			
 			// aapt resource value: 0x7F09007C
-			public const int camera_item_btn = 2131296380;
+			public const int cameraName = 2131296380;
 			
 			// aapt resource value: 0x7F09007D
-			public const int camera_item_rl = 2131296381;
-			
-			// aapt resource value: 0x7F090080
-			public const int camera_listview = 2131296384;
+			public const int cameraNameSort = 2131296381;
 			
 			// aapt resource value: 0x7F09007E
-			public const int camera_list_gc_ly = 2131296382;
+			public const int camera_del_btn = 2131296382;
 			
 			// aapt resource value: 0x7F09007F
-			public const int camera_list_refresh_btn = 2131296383;
+			public const int camera_item_btn = 2131296383;
+			
+			// aapt resource value: 0x7F090080
+			public const int camera_item_rl = 2131296384;
 			
 			// aapt resource value: 0x7F090081
-			public const int camera_name_tv = 2131296385;
+			public const int camera_layout = 2131296385;
 			
 			// aapt resource value: 0x7F090082
-			public const int cancel_action = 2131296386;
-			
-			// aapt resource value: 0x7F090083
-			public const int cancel_auto_play_btn = 2131296387;
-			
-			// aapt resource value: 0x7F090084
-			public const int cancel_btn = 2131296388;
+			public const int camera_layout_my = 2131296386;
 			
 			// aapt resource value: 0x7F090085
-			public const int cc_btn_back = 2131296389;
+			public const int camera_listview = 2131296389;
+			
+			// aapt resource value: 0x7F090083
+			public const int camera_list_gc_ly = 2131296387;
+			
+			// aapt resource value: 0x7F090084
+			public const int camera_list_refresh_btn = 2131296388;
 			
 			// aapt resource value: 0x7F090086
-			public const int cc_line_long = 2131296390;
+			public const int camera_name_tv = 2131296390;
 			
 			// aapt resource value: 0x7F090087
-			public const int cc_listview = 2131296391;
+			public const int camera_switch_btn = 2131296391;
 			
 			// aapt resource value: 0x7F090088
-			public const int cc_nameView = 2131296392;
+			public const int camera_view = 2131296392;
 			
 			// aapt resource value: 0x7F090089
-			public const int cc_rl_topview = 2131296393;
+			public const int camera_view_my = 2131296393;
 			
 			// aapt resource value: 0x7F09008A
-			public const int cc_searchBarContainer = 2131296394;
+			public const int cancel_action = 2131296394;
 			
 			// aapt resource value: 0x7F09008B
-			public const int cc_sectionTextView = 2131296395;
+			public const int cancel_auto_play_btn = 2131296395;
 			
 			// aapt resource value: 0x7F09008C
-			public const int cc_tv_activity_title = 2131296396;
+			public const int cancel_btn = 2131296396;
 			
 			// aapt resource value: 0x7F09008D
-			public const int center = 2131296397;
+			public const int cc_btn_back = 2131296397;
 			
 			// aapt resource value: 0x7F09008E
-			public const int center_horizontal = 2131296398;
+			public const int cc_line_long = 2131296398;
 			
 			// aapt resource value: 0x7F09008F
-			public const int center_vertical = 2131296399;
+			public const int cc_listview = 2131296399;
 			
 			// aapt resource value: 0x7F090090
-			public const int chains = 2131296400;
+			public const int cc_nameView = 2131296400;
 			
 			// aapt resource value: 0x7F090091
-			public const int check1 = 2131296401;
+			public const int cc_rl_topview = 2131296401;
 			
 			// aapt resource value: 0x7F090092
-			public const int check2 = 2131296402;
+			public const int cc_searchBarContainer = 2131296402;
 			
 			// aapt resource value: 0x7F090093
-			public const int check3 = 2131296403;
-			
-			// aapt resource value: 0x7F090099
-			public const int checkbox = 2131296409;
+			public const int cc_sectionTextView = 2131296403;
 			
 			// aapt resource value: 0x7F090094
-			public const int check_all = 2131296404;
+			public const int cc_tv_activity_title = 2131296404;
 			
 			// aapt resource value: 0x7F090095
-			public const int check_mode_bottom = 2131296405;
+			public const int center = 2131296405;
 			
 			// aapt resource value: 0x7F090096
-			public const int check_mode_bottom_divider = 2131296406;
+			public const int center_horizontal = 2131296406;
 			
 			// aapt resource value: 0x7F090097
-			public const int check_mode_top = 2131296407;
+			public const int center_vertical = 2131296407;
 			
 			// aapt resource value: 0x7F090098
-			public const int check_mode_top_divider = 2131296408;
+			public const int chains = 2131296408;
+			
+			// aapt resource value: 0x7F090099
+			public const int channel_id_et = 2131296409;
 			
 			// aapt resource value: 0x7F09009A
-			public const int chronometer = 2131296410;
+			public const int check1 = 2131296410;
 			
 			// aapt resource value: 0x7F09009B
-			public const int cifyConfigList = 2131296411;
+			public const int check2 = 2131296411;
 			
 			// aapt resource value: 0x7F09009C
-			public const int cityKey = 2131296412;
-			
-			// aapt resource value: 0x7F09009D
-			public const int cityName = 2131296413;
-			
-			// aapt resource value: 0x7F09009E
-			public const int ckbCloundService = 2131296414;
-			
-			// aapt resource value: 0x7F09009F
-			public const int ckbLight = 2131296415;
-			
-			// aapt resource value: 0x7F0900A0
-			public const int clip_horizontal = 2131296416;
-			
-			// aapt resource value: 0x7F0900A1
-			public const int clip_vertical = 2131296417;
-			
-			// aapt resource value: 0x7F0900A2
-			public const int collapseActionView = 2131296418;
-			
-			// aapt resource value: 0x7F0900A3
-			public const int collectBtn = 2131296419;
-			
-			// aapt resource value: 0x7F0900A4
-			public const int collectedTV = 2131296420;
-			
-			// aapt resource value: 0x7F0900A5
-			public const int common_name_layout = 2131296421;
+			public const int check3 = 2131296412;
 			
 			// aapt resource value: 0x7F0900A6
-			public const int configAVMsg = 2131296422;
+			public const int checkbox = 2131296422;
+			
+			// aapt resource value: 0x7F09009D
+			public const int check_all = 2131296413;
+			
+			// aapt resource value: 0x7F09009E
+			public const int check_mic = 2131296414;
+			
+			// aapt resource value: 0x7F09009F
+			public const int check_mic_my = 2131296415;
+			
+			// aapt resource value: 0x7F0900A0
+			public const int check_mode_bottom = 2131296416;
+			
+			// aapt resource value: 0x7F0900A1
+			public const int check_mode_bottom_divider = 2131296417;
+			
+			// aapt resource value: 0x7F0900A2
+			public const int check_mode_top = 2131296418;
+			
+			// aapt resource value: 0x7F0900A3
+			public const int check_mode_top_divider = 2131296419;
+			
+			// aapt resource value: 0x7F0900A4
+			public const int check_video = 2131296420;
+			
+			// aapt resource value: 0x7F0900A5
+			public const int check_video_my = 2131296421;
 			
 			// aapt resource value: 0x7F0900A7
-			public const int connectStateContainer = 2131296423;
+			public const int chronometer = 2131296423;
 			
 			// aapt resource value: 0x7F0900A8
-			public const int connectTip = 2131296424;
+			public const int cifyConfigList = 2131296424;
 			
 			// aapt resource value: 0x7F0900A9
-			public const int container = 2131296425;
+			public const int cityKey = 2131296425;
 			
 			// aapt resource value: 0x7F0900AA
-			public const int content = 2131296426;
+			public const int cityName = 2131296426;
 			
 			// aapt resource value: 0x7F0900AB
-			public const int contentFrame = 2131296427;
+			public const int ckbCloundService = 2131296427;
 			
 			// aapt resource value: 0x7F0900AC
-			public const int contentPanel = 2131296428;
+			public const int ckbLight = 2131296428;
 			
 			// aapt resource value: 0x7F0900AD
-			public const int content_container = 2131296429;
+			public const int client_id_tv = 2131296429;
 			
 			// aapt resource value: 0x7F0900AE
-			public const int content_tab_cloud_root = 2131296430;
+			public const int clip_horizontal = 2131296430;
 			
 			// aapt resource value: 0x7F0900AF
-			public const int content_tab_device_root = 2131296431;
+			public const int clip_vertical = 2131296431;
 			
 			// aapt resource value: 0x7F0900B0
-			public const int control_area = 2131296432;
+			public const int collapseActionView = 2131296432;
 			
 			// aapt resource value: 0x7F0900B1
-			public const int coordinator = 2131296433;
+			public const int collectBtn = 2131296433;
 			
 			// aapt resource value: 0x7F0900B2
-			public const int cover = 2131296434;
+			public const int collectedTV = 2131296434;
+			
+			// aapt resource value: 0x7F0900B3
+			public const int common_name_layout = 2131296435;
+			
+			// aapt resource value: 0x7F0900B4
+			public const int configAVMsg = 2131296436;
+			
+			// aapt resource value: 0x7F0900B5
+			public const int connectStateContainer = 2131296437;
+			
+			// aapt resource value: 0x7F0900B6
+			public const int connectTip = 2131296438;
+			
+			// aapt resource value: 0x7F0900B7
+			public const int container = 2131296439;
+			
+			// aapt resource value: 0x7F0900B8
+			public const int content = 2131296440;
+			
+			// aapt resource value: 0x7F0900B9
+			public const int contentFrame = 2131296441;
+			
+			// aapt resource value: 0x7F0900BA
+			public const int contentPanel = 2131296442;
+			
+			// aapt resource value: 0x7F0900BB
+			public const int content_container = 2131296443;
+			
+			// aapt resource value: 0x7F0900BC
+			public const int content_tab_cloud_root = 2131296444;
+			
+			// aapt resource value: 0x7F0900BD
+			public const int content_tab_device_root = 2131296445;
+			
+			// aapt resource value: 0x7F0900BE
+			public const int control_area = 2131296446;
+			
+			// aapt resource value: 0x7F0900BF
+			public const int coordinator = 2131296447;
+			
+			// aapt resource value: 0x7F0900C0
+			public const int cover = 2131296448;
 			
 			// aapt resource value: 0x7F090002
 			public const int CoverArea = 2131296258;
 			
+			// aapt resource value: 0x7F0900C1
+			public const int create_room_btn = 2131296449;
+			
 			// aapt resource value: 0x7F090001
 			public const int CTRL = 2131296257;
 			
-			// aapt resource value: 0x7F0900B3
-			public const int current_version = 2131296435;
-			
-			// aapt resource value: 0x7F0900B4
-			public const int current_version_layout = 2131296436;
-			
-			// aapt resource value: 0x7F0900B5
-			public const int custom = 2131296437;
-			
-			// aapt resource value: 0x7F0900B6
-			public const int customPanel = 2131296438;
-			
-			// aapt resource value: 0x7F0900B7
-			public const int day = 2131296439;
-			
-			// aapt resource value: 0x7F0900B8
-			public const int decode = 2131296440;
-			
-			// aapt resource value: 0x7F0900B9
-			public const int decode_failed = 2131296441;
-			
-			// aapt resource value: 0x7F0900BA
-			public const int decode_succeeded = 2131296442;
-			
-			// aapt resource value: 0x7F0900BB
-			public const int decor_content_parent = 2131296443;
-			
-			// aapt resource value: 0x7F0900BC
-			public const int default_activity_button = 2131296444;
-			
-			// aapt resource value: 0x7F0900BD
-			public const int default_figure_iv = 2131296445;
-			
-			// aapt resource value: 0x7F0900BE
-			public const int defence = 2131296446;
-			
-			// aapt resource value: 0x7F0900BF
-			public const int defence_layout = 2131296447;
-			
-			// aapt resource value: 0x7F0900C0
-			public const int defence_plan_arrow = 2131296448;
-			
-			// aapt resource value: 0x7F0900C1
-			public const int defence_plan_button = 2131296449;
-			
 			// aapt resource value: 0x7F0900C2
-			public const int defence_plan_new = 2131296450;
+			public const int current_version = 2131296450;
 			
 			// aapt resource value: 0x7F0900C3
-			public const int defence_plan_parent_layout = 2131296451;
+			public const int current_version_layout = 2131296451;
 			
 			// aapt resource value: 0x7F0900C4
-			public const int defence_plan_progress = 2131296452;
+			public const int custom = 2131296452;
 			
 			// aapt resource value: 0x7F0900C5
-			public const int defence_plan_retry = 2131296453;
+			public const int customPanel = 2131296453;
 			
 			// aapt resource value: 0x7F0900C6
-			public const int defence_plan_set_layout = 2131296454;
+			public const int custom_pwd_et = 2131296454;
 			
 			// aapt resource value: 0x7F0900C7
-			public const int defence_plan_state = 2131296455;
+			public const int custom_pwd_layout = 2131296455;
 			
 			// aapt resource value: 0x7F0900C8
-			public const int defence_plan_status_progress = 2131296456;
+			public const int day = 2131296456;
 			
 			// aapt resource value: 0x7F0900C9
-			public const int defence_plan_status_retry = 2131296457;
+			public const int debug_room_id = 2131296457;
 			
 			// aapt resource value: 0x7F0900CA
-			public const int defence_state = 2131296458;
+			public const int decode = 2131296458;
 			
 			// aapt resource value: 0x7F0900CB
-			public const int defence_toggle_button = 2131296459;
-			
-			// aapt resource value: 0x7F0900CD
-			public const int delete_playback = 2131296461;
-			
-			// aapt resource value: 0x7F0900CE
-			public const int delete_playback_device = 2131296462;
+			public const int decode_failed = 2131296459;
 			
 			// aapt resource value: 0x7F0900CC
-			public const int del_button = 2131296460;
+			public const int decode_succeeded = 2131296460;
+			
+			// aapt resource value: 0x7F0900CD
+			public const int decor_content_parent = 2131296461;
+			
+			// aapt resource value: 0x7F0900CE
+			public const int default_activity_button = 2131296462;
 			
 			// aapt resource value: 0x7F0900CF
-			public const int description = 2131296463;
+			public const int default_figure_iv = 2131296463;
 			
 			// aapt resource value: 0x7F0900D0
-			public const int design_bottom_sheet = 2131296464;
+			public const int defence = 2131296464;
 			
 			// aapt resource value: 0x7F0900D1
-			public const int design_menu_item_action_area = 2131296465;
+			public const int defence_layout = 2131296465;
 			
 			// aapt resource value: 0x7F0900D2
-			public const int design_menu_item_action_area_stub = 2131296466;
+			public const int defence_plan_arrow = 2131296466;
 			
 			// aapt resource value: 0x7F0900D3
-			public const int design_menu_item_text = 2131296467;
+			public const int defence_plan_button = 2131296467;
 			
 			// aapt resource value: 0x7F0900D4
-			public const int design_navigation_view = 2131296468;
+			public const int defence_plan_new = 2131296468;
 			
 			// aapt resource value: 0x7F0900D5
-			public const int detector_type = 2131296469;
+			public const int defence_plan_parent_layout = 2131296469;
 			
 			// aapt resource value: 0x7F0900D6
-			public const int deviceIcon = 2131296470;
+			public const int defence_plan_progress = 2131296470;
 			
 			// aapt resource value: 0x7F0900D7
-			public const int deviceName = 2131296471;
+			public const int defence_plan_retry = 2131296471;
 			
 			// aapt resource value: 0x7F0900D8
-			public const int device_delete = 2131296472;
+			public const int defence_plan_set_layout = 2131296472;
 			
 			// aapt resource value: 0x7F0900D9
-			public const int device_info_layout = 2131296473;
+			public const int defence_plan_state = 2131296473;
 			
 			// aapt resource value: 0x7F0900DA
-			public const int device_name = 2131296474;
+			public const int defence_plan_status_progress = 2131296474;
 			
 			// aapt resource value: 0x7F0900DB
-			public const int device_type_sn = 2131296475;
+			public const int defence_plan_status_retry = 2131296475;
 			
 			// aapt resource value: 0x7F0900DC
-			public const int dimensions = 2131296476;
+			public const int defence_state = 2131296476;
 			
 			// aapt resource value: 0x7F0900DD
-			public const int direct = 2131296477;
-			
-			// aapt resource value: 0x7F0900DE
-			public const int disableHome = 2131296478;
+			public const int defence_toggle_button = 2131296477;
 			
 			// aapt resource value: 0x7F0900DF
-			public const int disableReportBytes = 2131296479;
+			public const int delete_playback = 2131296479;
 			
 			// aapt resource value: 0x7F0900E0
-			public const int discover_list_lv = 2131296480;
+			public const int delete_playback_device = 2131296480;
+			
+			// aapt resource value: 0x7F0900DE
+			public const int del_button = 2131296478;
 			
 			// aapt resource value: 0x7F0900E1
-			public const int discover_tv = 2131296481;
+			public const int description = 2131296481;
 			
 			// aapt resource value: 0x7F0900E2
-			public const int display_layout = 2131296482;
+			public const int design_bottom_sheet = 2131296482;
 			
 			// aapt resource value: 0x7F0900E3
-			public const int divider = 2131296483;
-			
-			// aapt resource value: 0x7F0900E5
-			public const int downloading = 2131296485;
-			
-			// aapt resource value: 0x7F0900E6
-			public const int downloading_number = 2131296486;
+			public const int design_menu_item_action_area = 2131296483;
 			
 			// aapt resource value: 0x7F0900E4
-			public const int down_layout = 2131296484;
+			public const int design_menu_item_action_area_stub = 2131296484;
+			
+			// aapt resource value: 0x7F0900E5
+			public const int design_menu_item_text = 2131296485;
+			
+			// aapt resource value: 0x7F0900E6
+			public const int design_navigation_view = 2131296486;
 			
 			// aapt resource value: 0x7F0900E7
-			public const int edit_accesstoken = 2131296487;
+			public const int detector_type = 2131296487;
 			
 			// aapt resource value: 0x7F0900E8
-			public const int edit_apiurl = 2131296488;
+			public const int deviceIcon = 2131296488;
 			
 			// aapt resource value: 0x7F0900E9
-			public const int edit_appkey = 2131296489;
+			public const int deviceName = 2131296489;
 			
 			// aapt resource value: 0x7F0900EA
-			public const int edit_deviceserial = 2131296490;
+			public const int device_delete = 2131296490;
 			
 			// aapt resource value: 0x7F0900EB
-			public const int edit_query = 2131296491;
+			public const int device_id_et = 2131296491;
 			
 			// aapt resource value: 0x7F0900EC
-			public const int edit_weburl = 2131296492;
+			public const int device_id_layout = 2131296492;
 			
 			// aapt resource value: 0x7F0900ED
-			public const int edtPassword = 2131296493;
+			public const int device_info_layout = 2131296493;
 			
 			// aapt resource value: 0x7F0900EE
-			public const int emptyView = 2131296494;
+			public const int device_name = 2131296494;
 			
 			// aapt resource value: 0x7F0900EF
-			public const int enableReportBytes = 2131296495;
+			public const int device_type_sn = 2131296495;
 			
 			// aapt resource value: 0x7F0900F0
-			public const int encode_failed = 2131296496;
+			public const int dimensions = 2131296496;
 			
 			// aapt resource value: 0x7F0900F1
-			public const int encode_succeeded = 2131296497;
+			public const int direct = 2131296497;
 			
 			// aapt resource value: 0x7F0900F2
-			public const int encrypt_button = 2131296498;
+			public const int disableHome = 2131296498;
 			
 			// aapt resource value: 0x7F0900F3
-			public const int encrypt_layout = 2131296499;
+			public const int disableReportBytes = 2131296499;
 			
 			// aapt resource value: 0x7F0900F4
-			public const int encrypt_parent_layout = 2131296500;
+			public const int discover_list_lv = 2131296500;
 			
 			// aapt resource value: 0x7F0900F5
-			public const int end = 2131296501;
+			public const int discover_tv = 2131296501;
 			
 			// aapt resource value: 0x7F0900F6
-			public const int end_padder = 2131296502;
+			public const int display_layout = 2131296502;
 			
 			// aapt resource value: 0x7F0900F7
-			public const int end_time_tv = 2131296503;
-			
-			// aapt resource value: 0x7F0900F8
-			public const int enterAlways = 2131296504;
+			public const int divider = 2131296503;
 			
 			// aapt resource value: 0x7F0900F9
-			public const int enterAlwaysCollapsed = 2131296505;
+			public const int downloading = 2131296505;
 			
 			// aapt resource value: 0x7F0900FA
-			public const int errorPage = 2131296506;
+			public const int downloading_number = 2131296506;
+			
+			// aapt resource value: 0x7F0900F8
+			public const int down_layout = 2131296504;
 			
 			// aapt resource value: 0x7F0900FB
-			public const int error_info_tv = 2131296507;
+			public const int edit_accesstoken = 2131296507;
 			
 			// aapt resource value: 0x7F0900FC
-			public const int error_prompt = 2131296508;
+			public const int edit_apiurl = 2131296508;
 			
 			// aapt resource value: 0x7F0900FD
-			public const int error_replay_btn = 2131296509;
+			public const int edit_appkey = 2131296509;
 			
 			// aapt resource value: 0x7F0900FE
-			public const int et_access_token = 2131296510;
+			public const int edit_deviceserial = 2131296510;
 			
 			// aapt resource value: 0x7F0900FF
-			public const int et_app_key = 2131296511;
+			public const int edit_query = 2131296511;
 			
 			// aapt resource value: 0x7F090100
-			public const int et_camera_no = 2131296512;
+			public const int edit_weburl = 2131296512;
 			
 			// aapt resource value: 0x7F090101
-			public const int et_device_serial = 2131296513;
+			public const int edtPassword = 2131296513;
 			
 			// aapt resource value: 0x7F090102
-			public const int et_record_file_start_time = 2131296514;
+			public const int emptyView = 2131296514;
 			
 			// aapt resource value: 0x7F090103
-			public const int et_record_file_stop_time = 2131296515;
+			public const int enableReportBytes = 2131296515;
 			
 			// aapt resource value: 0x7F090104
-			public const int et_specified_device = 2131296516;
+			public const int enable_audio_cb = 2131296516;
 			
 			// aapt resource value: 0x7F090105
-			public const int exitUntilCollapsed = 2131296517;
+			public const int enable_video_cb = 2131296517;
 			
 			// aapt resource value: 0x7F090106
-			public const int exit_btn = 2131296518;
-			
-			// aapt resource value: 0x7F090108
-			public const int expanded_menu = 2131296520;
+			public const int encode_failed = 2131296518;
 			
 			// aapt resource value: 0x7F090107
-			public const int expand_activities_button = 2131296519;
+			public const int encode_succeeded = 2131296519;
 			
-			// aapt resource value: 0x7F090113
-			public const int ezopen_realplay_operate_bar = 2131296531;
-			
-			// aapt resource value: 0x7F090114
-			public const int ezopen_realplay_operate_bar2 = 2131296532;
-			
-			// aapt resource value: 0x7F090115
-			public const int ezupgrade_button = 2131296533;
-			
-			// aapt resource value: 0x7F090116
-			public const int ezupgrade_ll_btn = 2131296534;
-			
-			// aapt resource value: 0x7F090117
-			public const int ezupgrade_ll_progress = 2131296535;
-			
-			// aapt resource value: 0x7F090118
-			public const int ezupgrade_progress_text = 2131296536;
-			
-			// aapt resource value: 0x7F090119
-			public const int ezupgrade_text_version_desc = 2131296537;
+			// aapt resource value: 0x7F090108
+			public const int encrypt_button = 2131296520;
 			
 			// aapt resource value: 0x7F090109
-			public const int ez_api_self_test = 2131296521;
+			public const int encrypt_layout = 2131296521;
 			
 			// aapt resource value: 0x7F09010A
-			public const int ez_device_serial = 2131296522;
+			public const int encrypt_parent_layout = 2131296522;
 			
 			// aapt resource value: 0x7F09010B
-			public const int ez_device_serial_layout = 2131296523;
+			public const int end = 2131296523;
 			
 			// aapt resource value: 0x7F09010C
-			public const int ez_handle_lyt = 2131296524;
+			public const int end_padder = 2131296524;
 			
 			// aapt resource value: 0x7F09010D
-			public const int ez_platform_login_btn = 2131296525;
+			public const int end_time_tv = 2131296525;
 			
 			// aapt resource value: 0x7F09010E
-			public const int ez_sms_code_et = 2131296526;
+			public const int enterAlways = 2131296526;
 			
 			// aapt resource value: 0x7F09010F
-			public const int ez_sms_code_lyt = 2131296527;
+			public const int enterAlwaysCollapsed = 2131296527;
 			
 			// aapt resource value: 0x7F090110
-			public const int ez_square_btn = 2131296528;
+			public const int errorPage = 2131296528;
 			
 			// aapt resource value: 0x7F090111
-			public const int ez_tab_content_frame = 2131296529;
+			public const int error_info_tv = 2131296529;
 			
 			// aapt resource value: 0x7F090112
-			public const int ez_v32_api_test = 2131296530;
+			public const int error_prompt = 2131296530;
+			
+			// aapt resource value: 0x7F090113
+			public const int error_replay_btn = 2131296531;
+			
+			// aapt resource value: 0x7F090114
+			public const int et_access_token = 2131296532;
+			
+			// aapt resource value: 0x7F090115
+			public const int et_app_key = 2131296533;
+			
+			// aapt resource value: 0x7F090116
+			public const int et_camera_no = 2131296534;
+			
+			// aapt resource value: 0x7F090117
+			public const int et_device_serial = 2131296535;
+			
+			// aapt resource value: 0x7F090118
+			public const int et_record_file_start_time = 2131296536;
+			
+			// aapt resource value: 0x7F090119
+			public const int et_record_file_stop_time = 2131296537;
 			
 			// aapt resource value: 0x7F09011A
-			public const int failedMsg = 2131296538;
+			public const int et_specified_device = 2131296538;
 			
 			// aapt resource value: 0x7F09011B
-			public const int file_size_text = 2131296539;
+			public const int exitUntilCollapsed = 2131296539;
+			
+			// aapt resource value: 0x7F09011C
+			public const int exit_btn = 2131296540;
+			
+			// aapt resource value: 0x7F09011E
+			public const int expanded_menu = 2131296542;
+			
+			// aapt resource value: 0x7F09011D
+			public const int expand_activities_button = 2131296541;
+			
+			// aapt resource value: 0x7F090129
+			public const int ezopen_realplay_operate_bar = 2131296553;
+			
+			// aapt resource value: 0x7F09012A
+			public const int ezopen_realplay_operate_bar2 = 2131296554;
+			
+			// aapt resource value: 0x7F09012B
+			public const int ezupgrade_button = 2131296555;
+			
+			// aapt resource value: 0x7F09012C
+			public const int ezupgrade_ll_btn = 2131296556;
+			
+			// aapt resource value: 0x7F09012D
+			public const int ezupgrade_ll_progress = 2131296557;
+			
+			// aapt resource value: 0x7F09012E
+			public const int ezupgrade_progress_text = 2131296558;
+			
+			// aapt resource value: 0x7F09012F
+			public const int ezupgrade_text_version_desc = 2131296559;
+			
+			// aapt resource value: 0x7F09011F
+			public const int ez_api_self_test = 2131296543;
+			
+			// aapt resource value: 0x7F090120
+			public const int ez_device_serial = 2131296544;
+			
+			// aapt resource value: 0x7F090121
+			public const int ez_device_serial_layout = 2131296545;
+			
+			// aapt resource value: 0x7F090122
+			public const int ez_handle_lyt = 2131296546;
+			
+			// aapt resource value: 0x7F090123
+			public const int ez_platform_login_btn = 2131296547;
+			
+			// aapt resource value: 0x7F090124
+			public const int ez_sms_code_et = 2131296548;
+			
+			// aapt resource value: 0x7F090125
+			public const int ez_sms_code_lyt = 2131296549;
+			
+			// aapt resource value: 0x7F090126
+			public const int ez_square_btn = 2131296550;
+			
+			// aapt resource value: 0x7F090127
+			public const int ez_tab_content_frame = 2131296551;
+			
+			// aapt resource value: 0x7F090128
+			public const int ez_v32_api_test = 2131296552;
+			
+			// aapt resource value: 0x7F090130
+			public const int failedMsg = 2131296560;
+			
+			// aapt resource value: 0x7F090131
+			public const int file_size_text = 2131296561;
 			
 			// aapt resource value: 0x7F090003
 			public const int FILL = 2131296259;
 			
-			// aapt resource value: 0x7F09011C
-			public const int fill = 2131296540;
+			// aapt resource value: 0x7F090132
+			public const int fill = 2131296562;
 			
-			// aapt resource value: 0x7F09011D
-			public const int fill_horizontal = 2131296541;
+			// aapt resource value: 0x7F090133
+			public const int fill_horizontal = 2131296563;
 			
 			// aapt resource value: 0x7F090004
 			public const int FILL_STROKE = 2131296260;
 			
-			// aapt resource value: 0x7F09011E
-			public const int fill_vertical = 2131296542;
+			// aapt resource value: 0x7F090134
+			public const int fill_vertical = 2131296564;
 			
-			// aapt resource value: 0x7F09011F
-			public const int fingerprint_icon = 2131296543;
+			// aapt resource value: 0x7F090135
+			public const int fingerprint_icon = 2131296565;
 			
-			// aapt resource value: 0x7F090120
-			public const int @fixed = 2131296544;
+			// aapt resource value: 0x7F090136
+			public const int @fixed = 2131296566;
 			
 			// aapt resource value: 0x7F090006
 			public const int FixedBehind = 2131296262;
@@ -7579,1778 +7645,1799 @@
 			// aapt resource value: 0x7F090007
 			public const int FixedFront = 2131296263;
 			
-			// aapt resource value: 0x7F090121
-			public const int flow_area = 2131296545;
+			// aapt resource value: 0x7F090137
+			public const int flow_area = 2131296567;
 			
-			// aapt resource value: 0x7F090122
-			public const int flow_line = 2131296546;
+			// aapt resource value: 0x7F090138
+			public const int flow_line = 2131296568;
 			
-			// aapt resource value: 0x7F090123
-			public const int flt_layout = 2131296547;
+			// aapt resource value: 0x7F090139
+			public const int flt_layout = 2131296569;
 			
-			// aapt resource value: 0x7F090124
-			public const int focus_view = 2131296548;
+			// aapt resource value: 0x7F09013A
+			public const int focus_view = 2131296570;
 			
-			// aapt resource value: 0x7F090125
-			public const int footer_hint = 2131296549;
+			// aapt resource value: 0x7F09013B
+			public const int footer_hint = 2131296571;
 			
-			// aapt resource value: 0x7F090126
-			public const int footer_hint_more = 2131296550;
+			// aapt resource value: 0x7F09013C
+			public const int footer_hint_more = 2131296572;
 			
-			// aapt resource value: 0x7F090127
-			public const int footer_loading_layout = 2131296551;
+			// aapt resource value: 0x7F09013D
+			public const int footer_loading_layout = 2131296573;
 			
-			// aapt resource value: 0x7F090128
-			public const int footer_progress = 2131296552;
+			// aapt resource value: 0x7F09013E
+			public const int footer_progress = 2131296574;
 			
-			// aapt resource value: 0x7F090129
-			public const int forever = 2131296553;
+			// aapt resource value: 0x7F09013F
+			public const int forever = 2131296575;
 			
-			// aapt resource value: 0x7F09012A
-			public const int from_tv = 2131296554;
+			// aapt resource value: 0x7F090140
+			public const int from_tv = 2131296576;
 			
-			// aapt resource value: 0x7F09012B
-			public const int fullscreen_button = 2131296555;
+			// aapt resource value: 0x7F090141
+			public const int fullscreen_button = 2131296577;
 			
-			// aapt resource value: 0x7F09012C
-			public const int fullscreen_full_button = 2131296556;
+			// aapt resource value: 0x7F090142
+			public const int fullscreen_full_button = 2131296578;
 			
 			// aapt resource value: 0x7F090005
 			public const int FUNCTION = 2131296261;
 			
-			// aapt resource value: 0x7F09012D
-			public const int gd_btn_back = 2131296557;
-			
-			// aapt resource value: 0x7F09012E
-			public const int gd_btn_myLocation = 2131296558;
-			
-			// aapt resource value: 0x7F09012F
-			public const int gd_btn_save = 2131296559;
-			
-			// aapt resource value: 0x7F090130
-			public const int gd_img_search_delete = 2131296560;
-			
-			// aapt resource value: 0x7F090131
-			public const int gd_ll_myhome = 2131296561;
-			
-			// aapt resource value: 0x7F090132
-			public const int gd_ll_search = 2131296562;
-			
-			// aapt resource value: 0x7F090133
-			public const int gd_mapView = 2131296563;
-			
-			// aapt resource value: 0x7F090134
-			public const int gd_rl_topview = 2131296564;
-			
-			// aapt resource value: 0x7F090135
-			public const int gd_tv_activity_title = 2131296565;
-			
-			// aapt resource value: 0x7F090136
-			public const int gd_tv_radius = 2131296566;
-			
-			// aapt resource value: 0x7F090137
-			public const int gd_tv_search_title = 2131296567;
-			
-			// aapt resource value: 0x7F090138
-			public const int get_camera_fail_tip_ly = 2131296568;
-			
-			// aapt resource value: 0x7F090139
-			public const int get_camera_list_fail_tv = 2131296569;
-			
-			// aapt resource value: 0x7F09013A
-			public const int get_sms_code_btn = 2131296570;
-			
-			// aapt resource value: 0x7F09013B
-			public const int get_sms_code_lyt = 2131296571;
-			
-			// aapt resource value: 0x7F09013C
-			public const int ghost_view = 2131296572;
-			
-			// aapt resource value: 0x7F09013D
-			public const int gone = 2131296573;
-			
-			// aapt resource value: 0x7F09013E
-			public const int handle_lyt = 2131296574;
-			
-			// aapt resource value: 0x7F09013F
-			public const int hangup = 2131296575;
-			
-			// aapt resource value: 0x7F090140
-			public const int hangupMonitorIn = 2131296576;
-			
-			// aapt resource value: 0x7F090141
-			public const int hdl_gallery_rootView = 2131296577;
-			
-			// aapt resource value: 0x7F090142
-			public const int hdl_gallery_viewPager = 2131296578;
-			
 			// aapt resource value: 0x7F090143
-			public const int hdl_options1 = 2131296579;
+			public const int gd_btn_back = 2131296579;
 			
 			// aapt resource value: 0x7F090144
-			public const int hdl_options2 = 2131296580;
+			public const int gd_btn_myLocation = 2131296580;
 			
 			// aapt resource value: 0x7F090145
-			public const int hdl_options3 = 2131296581;
+			public const int gd_btn_save = 2131296581;
 			
 			// aapt resource value: 0x7F090146
-			public const int hdl_pickerview_ll = 2131296582;
+			public const int gd_img_search_delete = 2131296582;
 			
 			// aapt resource value: 0x7F090147
-			public const int header = 2131296583;
+			public const int gd_ll_myhome = 2131296583;
 			
 			// aapt resource value: 0x7F090148
-			public const int header_arrow = 2131296584;
+			public const int gd_ll_search = 2131296584;
 			
 			// aapt resource value: 0x7F090149
-			public const int header_hint = 2131296585;
+			public const int gd_mapView = 2131296585;
 			
 			// aapt resource value: 0x7F09014A
-			public const int header_hint_more = 2131296586;
+			public const int gd_rl_topview = 2131296586;
 			
 			// aapt resource value: 0x7F09014B
-			public const int header_parent = 2131296587;
+			public const int gd_tv_activity_title = 2131296587;
 			
 			// aapt resource value: 0x7F09014C
-			public const int header_progress = 2131296588;
+			public const int gd_tv_radius = 2131296588;
 			
 			// aapt resource value: 0x7F09014D
-			public const int header_text = 2131296589;
+			public const int gd_tv_search_title = 2131296589;
 			
 			// aapt resource value: 0x7F09014E
-			public const int header_text_layout = 2131296590;
+			public const int get_camera_fail_tip_ly = 2131296590;
 			
 			// aapt resource value: 0x7F09014F
-			public const int header_time = 2131296591;
+			public const int get_camera_list_fail_tv = 2131296591;
 			
 			// aapt resource value: 0x7F090150
-			public const int header_time_layout = 2131296592;
+			public const int get_sms_code_btn = 2131296592;
 			
 			// aapt resource value: 0x7F090151
-			public const int help = 2131296593;
+			public const int get_sms_code_lyt = 2131296593;
 			
 			// aapt resource value: 0x7F090152
-			public const int helpTop = 2131296594;
+			public const int ghost_view = 2131296594;
 			
 			// aapt resource value: 0x7F090153
-			public const int hide = 2131296595;
+			public const int gone = 2131296595;
 			
 			// aapt resource value: 0x7F090154
-			public const int home = 2131296596;
+			public const int handle_lyt = 2131296596;
 			
 			// aapt resource value: 0x7F090155
-			public const int homeAsUp = 2131296597;
+			public const int hangup = 2131296597;
 			
 			// aapt resource value: 0x7F090156
-			public const int horizontal = 2131296598;
+			public const int hangupMonitorIn = 2131296598;
 			
 			// aapt resource value: 0x7F090157
-			public const int hour = 2131296599;
+			public const int hdl_gallery_rootView = 2131296599;
 			
 			// aapt resource value: 0x7F090158
-			public const int icon = 2131296600;
+			public const int hdl_gallery_viewPager = 2131296600;
 			
 			// aapt resource value: 0x7F090159
-			public const int icon_group = 2131296601;
+			public const int hdl_options1 = 2131296601;
 			
 			// aapt resource value: 0x7F09015A
-			public const int icon_sceenshotImg = 2131296602;
+			public const int hdl_options2 = 2131296602;
 			
 			// aapt resource value: 0x7F09015B
-			public const int icon_sceenshotLayout = 2131296603;
+			public const int hdl_options3 = 2131296603;
 			
 			// aapt resource value: 0x7F09015C
-			public const int icon_sceenshotText = 2131296604;
+			public const int hdl_pickerview_ll = 2131296604;
 			
 			// aapt resource value: 0x7F09015D
-			public const int icon_unlockImg = 2131296605;
+			public const int header = 2131296605;
 			
 			// aapt resource value: 0x7F09015E
-			public const int icon_unlockLayout = 2131296606;
+			public const int header_arrow = 2131296606;
 			
 			// aapt resource value: 0x7F09015F
-			public const int icon_unlockText = 2131296607;
+			public const int header_hint = 2131296607;
 			
 			// aapt resource value: 0x7F090160
-			public const int id_btn_join_qq_group = 2131296608;
+			public const int header_hint_more = 2131296608;
 			
 			// aapt resource value: 0x7F090161
-			public const int id_interface_self_test_forgetPassword = 2131296609;
+			public const int header_parent = 2131296609;
 			
 			// aapt resource value: 0x7F090162
-			public const int id_interface_self_test_openCloudPage = 2131296610;
+			public const int header_progress = 2131296610;
 			
 			// aapt resource value: 0x7F090163
-			public const int id_interface_test_forgetPassword = 2131296611;
+			public const int header_text = 2131296611;
 			
 			// aapt resource value: 0x7F090164
-			public const int id_interface_test_openCloudPage = 2131296612;
+			public const int header_text_layout = 2131296612;
 			
 			// aapt resource value: 0x7F090165
-			public const int id_ll_join_qq_group = 2131296613;
+			public const int header_time = 2131296613;
 			
 			// aapt resource value: 0x7F090166
-			public const int id_show_stream_limit_dialog = 2131296614;
+			public const int header_time_layout = 2131296614;
 			
 			// aapt resource value: 0x7F090167
-			public const int id_show_stream_limit_dialog2 = 2131296615;
+			public const int help = 2131296615;
 			
 			// aapt resource value: 0x7F090168
-			public const int id_tv_join_qq_group = 2131296616;
+			public const int helpTop = 2131296616;
 			
 			// aapt resource value: 0x7F090169
-			public const int ifRoom = 2131296617;
+			public const int hide = 2131296617;
 			
 			// aapt resource value: 0x7F09016A
-			public const int image = 2131296618;
+			public const int home = 2131296618;
 			
 			// aapt resource value: 0x7F09016B
-			public const int image1 = 2131296619;
+			public const int homeAsUp = 2131296619;
 			
 			// aapt resource value: 0x7F09016C
-			public const int image2 = 2131296620;
+			public const int horizontal = 2131296620;
 			
 			// aapt resource value: 0x7F09016D
-			public const int image3 = 2131296621;
+			public const int hour = 2131296621;
 			
 			// aapt resource value: 0x7F09016E
-			public const int imageBg = 2131296622;
+			public const int icon = 2131296622;
 			
 			// aapt resource value: 0x7F09016F
-			public const int image_back = 2131296623;
+			public const int icon_group = 2131296623;
 			
 			// aapt resource value: 0x7F090170
-			public const int imgAnimation = 2131296624;
+			public const int icon_sceenshotImg = 2131296624;
 			
 			// aapt resource value: 0x7F090171
-			public const int imgLineConnectGuid = 2131296625;
+			public const int icon_sceenshotLayout = 2131296625;
 			
 			// aapt resource value: 0x7F090172
-			public const int imgResetPic = 2131296626;
+			public const int icon_sceenshotText = 2131296626;
 			
 			// aapt resource value: 0x7F090173
-			public const int img_active_cloud_video = 2131296627;
+			public const int icon_unlockImg = 2131296627;
 			
 			// aapt resource value: 0x7F090174
-			public const int img_area1 = 2131296628;
+			public const int icon_unlockLayout = 2131296628;
 			
 			// aapt resource value: 0x7F090175
-			public const int img_area2 = 2131296629;
+			public const int icon_unlockText = 2131296629;
 			
 			// aapt resource value: 0x7F090176
-			public const int img_area3 = 2131296630;
+			public const int id_btn_join_qq_group = 2131296630;
 			
 			// aapt resource value: 0x7F090177
-			public const int info = 2131296631;
+			public const int id_interface_self_test_forgetPassword = 2131296631;
 			
 			// aapt resource value: 0x7F090178
-			public const int inputLinearlayout = 2131296632;
+			public const int id_interface_self_test_openCloudPage = 2131296632;
 			
 			// aapt resource value: 0x7F090179
-			public const int input_hint = 2131296633;
+			public const int id_interface_test_forgetPassword = 2131296633;
 			
 			// aapt resource value: 0x7F09017A
-			public const int input_search_query = 2131296634;
+			public const int id_interface_test_openCloudPage = 2131296634;
 			
 			// aapt resource value: 0x7F09017B
-			public const int input_view1 = 2131296635;
+			public const int id_ll_join_qq_group = 2131296635;
 			
 			// aapt resource value: 0x7F09017C
-			public const int interface_self_test_button = 2131296636;
+			public const int id_show_stream_limit_dialog = 2131296636;
 			
 			// aapt resource value: 0x7F09017D
-			public const int interface_self_test_editText = 2131296637;
+			public const int id_show_stream_limit_dialog2 = 2131296637;
 			
 			// aapt resource value: 0x7F09017E
-			public const int interface_test_button = 2131296638;
+			public const int id_tv_join_qq_group = 2131296638;
 			
 			// aapt resource value: 0x7F09017F
-			public const int interface_test_editText = 2131296639;
+			public const int ifRoom = 2131296639;
 			
 			// aapt resource value: 0x7F090180
-			public const int interface_v33_self_test_button = 2131296640;
+			public const int image = 2131296640;
 			
 			// aapt resource value: 0x7F090181
-			public const int interface_v33_test_button = 2131296641;
+			public const int image1 = 2131296641;
 			
 			// aapt resource value: 0x7F090182
-			public const int invisible = 2131296642;
+			public const int image2 = 2131296642;
 			
 			// aapt resource value: 0x7F090183
-			public const int ip_info = 2131296643;
+			public const int image3 = 2131296643;
 			
 			// aapt resource value: 0x7F090184
-			public const int ip_tv = 2131296644;
+			public const int imageBg = 2131296644;
 			
 			// aapt resource value: 0x7F090185
-			public const int italic = 2131296645;
+			public const int image_back = 2131296645;
 			
 			// aapt resource value: 0x7F090186
-			public const int item_icon = 2131296646;
+			public const int imgAnimation = 2131296646;
 			
 			// aapt resource value: 0x7F090187
-			public const int item_icon_area = 2131296647;
+			public const int imgLineConnectGuid = 2131296647;
 			
 			// aapt resource value: 0x7F090188
-			public const int item_offline = 2131296648;
+			public const int imgResetPic = 2131296648;
 			
 			// aapt resource value: 0x7F090189
-			public const int item_play_btn = 2131296649;
+			public const int img_active_cloud_video = 2131296649;
 			
 			// aapt resource value: 0x7F09018A
-			public const int item_touch_helper_previous_elevation = 2131296650;
+			public const int img_area1 = 2131296650;
 			
 			// aapt resource value: 0x7F09018B
-			public const int iv_more = 2131296651;
-			
-			// aapt resource value: 0x7F09018F
-			public const int labelbelongType = 2131296655;
+			public const int img_area2 = 2131296651;
 			
 			// aapt resource value: 0x7F09018C
-			public const int labelFilter = 2131296652;
+			public const int img_area3 = 2131296652;
 			
 			// aapt resource value: 0x7F09018D
-			public const int labelLocation = 2131296653;
+			public const int info = 2131296653;
 			
 			// aapt resource value: 0x7F09018E
-			public const int labelSort = 2131296654;
+			public const int inputLinearlayout = 2131296654;
+			
+			// aapt resource value: 0x7F09018F
+			public const int input_hint = 2131296655;
 			
 			// aapt resource value: 0x7F090190
-			public const int largeLabel = 2131296656;
+			public const int input_search_query = 2131296656;
 			
 			// aapt resource value: 0x7F090191
-			public const int latitude = 2131296657;
+			public const int input_view1 = 2131296657;
 			
 			// aapt resource value: 0x7F090192
-			public const int launch_product_query = 2131296658;
+			public const int interface_self_test_button = 2131296658;
 			
 			// aapt resource value: 0x7F090193
-			public const int layout = 2131296659;
+			public const int interface_self_test_editText = 2131296659;
 			
 			// aapt resource value: 0x7F090194
-			public const int layout_more_ly = 2131296660;
+			public const int interface_test_button = 2131296660;
 			
 			// aapt resource value: 0x7F090195
-			public const int left = 2131296661;
+			public const int interface_test_editText = 2131296661;
 			
 			// aapt resource value: 0x7F090196
-			public const int likedCount = 2131296662;
+			public const int interface_v33_self_test_button = 2131296662;
 			
 			// aapt resource value: 0x7F090197
-			public const int line1 = 2131296663;
+			public const int interface_v33_test_button = 2131296663;
 			
 			// aapt resource value: 0x7F090198
-			public const int line3 = 2131296664;
+			public const int invisible = 2131296664;
 			
 			// aapt resource value: 0x7F090199
-			public const int lineConnectContainer = 2131296665;
+			public const int ip_info = 2131296665;
 			
 			// aapt resource value: 0x7F09019A
-			public const int listMode = 2131296666;
+			public const int ip_tv = 2131296666;
 			
 			// aapt resource value: 0x7F09019B
-			public const int listView = 2131296667;
+			public const int is_call_device_cb = 2131296667;
 			
 			// aapt resource value: 0x7F09019C
-			public const int listView_device = 2131296668;
-			
-			// aapt resource value: 0x7F0901A0
-			public const int listview_line = 2131296672;
-			
-			// aapt resource value: 0x7F0901A1
-			public const int listview_line_device = 2131296673;
+			public const int italic = 2131296668;
 			
 			// aapt resource value: 0x7F09019D
-			public const int list_camera = 2131296669;
+			public const int item_icon = 2131296669;
 			
 			// aapt resource value: 0x7F09019E
-			public const int list_device = 2131296670;
+			public const int item_icon_area = 2131296670;
 			
 			// aapt resource value: 0x7F09019F
-			public const int list_item = 2131296671;
+			public const int item_offline = 2131296671;
+			
+			// aapt resource value: 0x7F0901A0
+			public const int item_play_btn = 2131296672;
+			
+			// aapt resource value: 0x7F0901A1
+			public const int item_touch_helper_previous_elevation = 2131296673;
 			
 			// aapt resource value: 0x7F0901A2
-			public const int live_window = 2131296674;
+			public const int iv_child_watch_video_talk_player_head_image = 2131296674;
 			
 			// aapt resource value: 0x7F0901A3
-			public const int llyCloundService = 2131296675;
+			public const int iv_more = 2131296675;
 			
 			// aapt resource value: 0x7F0901A4
-			public const int llyStatus1 = 2131296676;
-			
-			// aapt resource value: 0x7F0901A5
-			public const int llyStatus2 = 2131296677;
-			
-			// aapt resource value: 0x7F0901A6
-			public const int llyStatus3 = 2131296678;
-			
-			// aapt resource value: 0x7F0901A7
-			public const int loadingTextView = 2131296679;
+			public const int join_room_btn = 2131296676;
 			
 			// aapt resource value: 0x7F0901A8
-			public const int loading_pb_ly = 2131296680;
+			public const int labelbelongType = 2131296680;
+			
+			// aapt resource value: 0x7F0901A5
+			public const int labelFilter = 2131296677;
+			
+			// aapt resource value: 0x7F0901A6
+			public const int labelLocation = 2131296678;
+			
+			// aapt resource value: 0x7F0901A7
+			public const int labelSort = 2131296679;
 			
 			// aapt resource value: 0x7F0901A9
-			public const int loading_play_btn = 2131296681;
+			public const int largeLabel = 2131296681;
 			
 			// aapt resource value: 0x7F0901AA
-			public const int loading_text = 2131296682;
+			public const int latitude = 2131296682;
 			
 			// aapt resource value: 0x7F0901AB
-			public const int loading_view = 2131296683;
-			
-			// aapt resource value: 0x7F0901AD
-			public const int localDoorUnlock = 2131296685;
-			
-			// aapt resource value: 0x7F0901AE
-			public const int localVideo = 2131296686;
-			
-			// aapt resource value: 0x7F0901AF
-			public const int local_alarm1 = 2131296687;
-			
-			// aapt resource value: 0x7F0901B0
-			public const int local_alarm2 = 2131296688;
-			
-			// aapt resource value: 0x7F0901B1
-			public const int local_alarm3 = 2131296689;
-			
-			// aapt resource value: 0x7F0901B2
-			public const int local_l1 = 2131296690;
-			
-			// aapt resource value: 0x7F0901B3
-			public const int local_l2 = 2131296691;
-			
-			// aapt resource value: 0x7F0901B4
-			public const int local_l3 = 2131296692;
-			
-			// aapt resource value: 0x7F0901B5
-			public const int local_realplay_btn = 2131296693;
-			
-			// aapt resource value: 0x7F0901B6
-			public const int local_time_part1 = 2131296694;
-			
-			// aapt resource value: 0x7F0901B7
-			public const int local_time_part2 = 2131296695;
-			
-			// aapt resource value: 0x7F0901B8
-			public const int local_time_part3 = 2131296696;
+			public const int launch_product_query = 2131296683;
 			
 			// aapt resource value: 0x7F0901AC
-			public const int locaVideo = 2131296684;
+			public const int layout = 2131296684;
+			
+			// aapt resource value: 0x7F0901AD
+			public const int layout_more_ly = 2131296685;
+			
+			// aapt resource value: 0x7F0901AE
+			public const int left = 2131296686;
+			
+			// aapt resource value: 0x7F0901AF
+			public const int likedCount = 2131296687;
+			
+			// aapt resource value: 0x7F0901B0
+			public const int line1 = 2131296688;
+			
+			// aapt resource value: 0x7F0901B1
+			public const int line3 = 2131296689;
+			
+			// aapt resource value: 0x7F0901B2
+			public const int lineConnectContainer = 2131296690;
+			
+			// aapt resource value: 0x7F0901B3
+			public const int listMode = 2131296691;
+			
+			// aapt resource value: 0x7F0901B4
+			public const int listView = 2131296692;
+			
+			// aapt resource value: 0x7F0901B5
+			public const int listView_device = 2131296693;
 			
 			// aapt resource value: 0x7F0901B9
-			public const int login_name = 2131296697;
+			public const int listview_line = 2131296697;
 			
 			// aapt resource value: 0x7F0901BA
-			public const int login_pwd = 2131296698;
+			public const int listview_line_device = 2131296698;
+			
+			// aapt resource value: 0x7F0901B6
+			public const int list_camera = 2131296694;
+			
+			// aapt resource value: 0x7F0901B7
+			public const int list_device = 2131296695;
+			
+			// aapt resource value: 0x7F0901B8
+			public const int list_item = 2131296696;
 			
 			// aapt resource value: 0x7F0901BB
-			public const int longitude = 2131296699;
+			public const int live_window = 2131296699;
 			
 			// aapt resource value: 0x7F0901BC
-			public const int main_layout = 2131296700;
+			public const int llyCloundService = 2131296700;
 			
 			// aapt resource value: 0x7F0901BD
-			public const int masked = 2131296701;
+			public const int llyStatus1 = 2131296701;
+			
+			// aapt resource value: 0x7F0901BE
+			public const int llyStatus2 = 2131296702;
+			
+			// aapt resource value: 0x7F0901BF
+			public const int llyStatus3 = 2131296703;
+			
+			// aapt resource value: 0x7F0901C0
+			public const int loadingTextView = 2131296704;
+			
+			// aapt resource value: 0x7F0901C1
+			public const int loading_pb_ly = 2131296705;
+			
+			// aapt resource value: 0x7F0901C2
+			public const int loading_play_btn = 2131296706;
+			
+			// aapt resource value: 0x7F0901C3
+			public const int loading_text = 2131296707;
+			
+			// aapt resource value: 0x7F0901C4
+			public const int loading_view = 2131296708;
+			
+			// aapt resource value: 0x7F0901C6
+			public const int localDoorUnlock = 2131296710;
+			
+			// aapt resource value: 0x7F0901C7
+			public const int localVideo = 2131296711;
+			
+			// aapt resource value: 0x7F0901C8
+			public const int local_alarm1 = 2131296712;
+			
+			// aapt resource value: 0x7F0901C9
+			public const int local_alarm2 = 2131296713;
+			
+			// aapt resource value: 0x7F0901CA
+			public const int local_alarm3 = 2131296714;
+			
+			// aapt resource value: 0x7F0901CB
+			public const int local_l1 = 2131296715;
+			
+			// aapt resource value: 0x7F0901CC
+			public const int local_l2 = 2131296716;
+			
+			// aapt resource value: 0x7F0901CD
+			public const int local_l3 = 2131296717;
+			
+			// aapt resource value: 0x7F0901CE
+			public const int local_realplay_btn = 2131296718;
+			
+			// aapt resource value: 0x7F0901CF
+			public const int local_time_part1 = 2131296719;
+			
+			// aapt resource value: 0x7F0901D0
+			public const int local_time_part2 = 2131296720;
+			
+			// aapt resource value: 0x7F0901D1
+			public const int local_time_part3 = 2131296721;
+			
+			// aapt resource value: 0x7F0901C5
+			public const int locaVideo = 2131296709;
+			
+			// aapt resource value: 0x7F0901D2
+			public const int login_name = 2131296722;
+			
+			// aapt resource value: 0x7F0901D3
+			public const int login_pwd = 2131296723;
+			
+			// aapt resource value: 0x7F0901D4
+			public const int longitude = 2131296724;
+			
+			// aapt resource value: 0x7F0901D5
+			public const int main_layout = 2131296725;
+			
+			// aapt resource value: 0x7F0901D6
+			public const int masked = 2131296726;
 			
 			// aapt resource value: 0x7F090009
 			public const int MatchLayout = 2131296265;
 			
-			// aapt resource value: 0x7F0901BE
-			public const int matte_image = 2131296702;
+			// aapt resource value: 0x7F0901D7
+			public const int matte_image = 2131296727;
 			
-			// aapt resource value: 0x7F0901BF
-			public const int media_actions = 2131296703;
+			// aapt resource value: 0x7F0901D8
+			public const int media_actions = 2131296728;
 			
-			// aapt resource value: 0x7F0901C0
-			public const int menu_layout = 2131296704;
+			// aapt resource value: 0x7F0901D9
+			public const int menu_layout = 2131296729;
 			
-			// aapt resource value: 0x7F0901C1
-			public const int menu_play = 2131296705;
+			// aapt resource value: 0x7F0901DA
+			public const int menu_play = 2131296730;
 			
-			// aapt resource value: 0x7F0901C2
-			public const int message = 2131296706;
+			// aapt resource value: 0x7F0901DB
+			public const int message = 2131296731;
 			
-			// aapt resource value: 0x7F0901C3
-			public const int message1 = 2131296707;
+			// aapt resource value: 0x7F0901DC
+			public const int message1 = 2131296732;
 			
-			// aapt resource value: 0x7F0901C4
-			public const int message2 = 2131296708;
+			// aapt resource value: 0x7F0901DD
+			public const int message2 = 2131296733;
 			
-			// aapt resource value: 0x7F0901C5
-			public const int message_check = 2131296709;
+			// aapt resource value: 0x7F0901DE
+			public const int message_check = 2131296734;
 			
-			// aapt resource value: 0x7F0901C6
-			public const int message_content = 2131296710;
+			// aapt resource value: 0x7F0901DF
+			public const int message_content = 2131296735;
 			
-			// aapt resource value: 0x7F0901C7
-			public const int message_from = 2131296711;
+			// aapt resource value: 0x7F0901E0
+			public const int message_from = 2131296736;
 			
-			// aapt resource value: 0x7F0901C8
-			public const int message_from_tip = 2131296712;
+			// aapt resource value: 0x7F0901E1
+			public const int message_from_tip = 2131296737;
 			
-			// aapt resource value: 0x7F0901C9
-			public const int message_image = 2131296713;
+			// aapt resource value: 0x7F0901E2
+			public const int message_image = 2131296738;
 			
-			// aapt resource value: 0x7F0901CA
-			public const int message_image_layout = 2131296714;
+			// aapt resource value: 0x7F0901E3
+			public const int message_image_layout = 2131296739;
 			
-			// aapt resource value: 0x7F0901CB
-			public const int message_image_progress = 2131296715;
+			// aapt resource value: 0x7F0901E4
+			public const int message_image_progress = 2131296740;
 			
-			// aapt resource value: 0x7F0901CC
-			public const int message_layout = 2131296716;
+			// aapt resource value: 0x7F0901E5
+			public const int message_layout = 2131296741;
 			
-			// aapt resource value: 0x7F0901CD
-			public const int message_list = 2131296717;
+			// aapt resource value: 0x7F0901E6
+			public const int message_list = 2131296742;
 			
-			// aapt resource value: 0x7F0901CE
-			public const int message_num_tv = 2131296718;
+			// aapt resource value: 0x7F0901E7
+			public const int message_num_tv = 2131296743;
 			
-			// aapt resource value: 0x7F0901CF
-			public const int message_play_layout = 2131296719;
+			// aapt resource value: 0x7F0901E8
+			public const int message_play_layout = 2131296744;
 			
-			// aapt resource value: 0x7F0901D0
-			public const int message_time = 2131296720;
+			// aapt resource value: 0x7F0901E9
+			public const int message_time = 2131296745;
 			
-			// aapt resource value: 0x7F0901D1
-			public const int message_type = 2131296721;
+			// aapt resource value: 0x7F0901EA
+			public const int message_type = 2131296746;
 			
-			// aapt resource value: 0x7F0901D2
-			public const int message_unread = 2131296722;
+			// aapt resource value: 0x7F0901EB
+			public const int message_unread = 2131296747;
 			
-			// aapt resource value: 0x7F0901D3
-			public const int message_video_layout = 2131296723;
+			// aapt resource value: 0x7F0901EC
+			public const int message_video_layout = 2131296748;
 			
 			// aapt resource value: 0x7F090008
 			public const int META = 2131296264;
 			
-			// aapt resource value: 0x7F0901D5
-			public const int middle = 2131296725;
-			
-			// aapt resource value: 0x7F0901D4
-			public const int mid_vertical_view = 2131296724;
-			
-			// aapt resource value: 0x7F0901D6
-			public const int min = 2131296726;
-			
-			// aapt resource value: 0x7F0901D7
-			public const int mini = 2131296727;
-			
-			// aapt resource value: 0x7F0901D8
-			public const int mirror_line = 2131296728;
-			
-			// aapt resource value: 0x7F0901D9
-			public const int modify_password_layout = 2131296729;
-			
-			// aapt resource value: 0x7F0901DA
-			public const int monitor = 2131296730;
-			
-			// aapt resource value: 0x7F0901DB
-			public const int month = 2131296731;
-			
-			// aapt resource value: 0x7F0901DC
-			public const int more_btn = 2131296732;
-			
-			// aapt resource value: 0x7F0901DD
-			public const int multiply = 2131296733;
-			
-			// aapt resource value: 0x7F0901DE
-			public const int myRelativeLayout = 2131296734;
-			
-			// aapt resource value: 0x7F0901DF
-			public const int myRetry = 2131296735;
-			
-			// aapt resource value: 0x7F0901E0
-			public const int nameText = 2131296736;
-			
-			// aapt resource value: 0x7F0901E1
-			public const int name_del = 2131296737;
-			
-			// aapt resource value: 0x7F0901E2
-			public const int name_text = 2131296738;
-			
-			// aapt resource value: 0x7F0901E3
-			public const int name_tv = 2131296739;
-			
-			// aapt resource value: 0x7F0901E4
-			public const int navigation_header_container = 2131296740;
-			
-			// aapt resource value: 0x7F0901E5
-			public const int never = 2131296741;
-			
-			// aapt resource value: 0x7F0901E6
-			public const int new_password = 2131296742;
-			
-			// aapt resource value: 0x7F0901E7
-			public const int next_play_btn = 2131296743;
-			
-			// aapt resource value: 0x7F0901EF
-			public const int none = 2131296751;
-			
-			// aapt resource value: 0x7F0901F0
-			public const int normal = 2131296752;
-			
-			// aapt resource value: 0x7F0901E8
-			public const int noText = 2131296744;
-			
-			// aapt resource value: 0x7F0901F1
-			public const int notification_background = 2131296753;
-			
-			// aapt resource value: 0x7F0901F2
-			public const int notification_main_column = 2131296754;
-			
-			// aapt resource value: 0x7F0901F3
-			public const int notification_main_column_container = 2131296755;
-			
-			// aapt resource value: 0x7F0901F4
-			public const int novideo_img = 2131296756;
-			
-			// aapt resource value: 0x7F0901F5
-			public const int novideo_img_device = 2131296757;
-			
-			// aapt resource value: 0x7F0901E9
-			public const int no_camera_tip_ly = 2131296745;
-			
-			// aapt resource value: 0x7F0901EA
-			public const int no_message_button = 2131296746;
-			
-			// aapt resource value: 0x7F0901EB
-			public const int no_message_layout = 2131296747;
-			
-			// aapt resource value: 0x7F0901EC
-			public const int no_message_text = 2131296748;
+			// aapt resource value: 0x7F0901EE
+			public const int middle = 2131296750;
 			
 			// aapt resource value: 0x7F0901ED
-			public const int no_more_hint = 2131296749;
+			public const int mid_vertical_view = 2131296749;
 			
-			// aapt resource value: 0x7F0901EE
-			public const int no_more_text = 2131296750;
+			// aapt resource value: 0x7F0901EF
+			public const int min = 2131296751;
+			
+			// aapt resource value: 0x7F0901F0
+			public const int mini = 2131296752;
+			
+			// aapt resource value: 0x7F0901F1
+			public const int mirror_line = 2131296753;
+			
+			// aapt resource value: 0x7F0901F2
+			public const int modify_password_layout = 2131296754;
+			
+			// aapt resource value: 0x7F0901F3
+			public const int monitor = 2131296755;
+			
+			// aapt resource value: 0x7F0901F4
+			public const int month = 2131296756;
+			
+			// aapt resource value: 0x7F0901F5
+			public const int more_btn = 2131296757;
 			
 			// aapt resource value: 0x7F0901F6
-			public const int offline_bg = 2131296758;
+			public const int multiply = 2131296758;
 			
 			// aapt resource value: 0x7F0901F7
-			public const int ok_tv = 2131296759;
+			public const int myRelativeLayout = 2131296759;
 			
 			// aapt resource value: 0x7F0901F8
-			public const int options1 = 2131296760;
+			public const int myRetry = 2131296760;
 			
 			// aapt resource value: 0x7F0901F9
-			public const int options2 = 2131296761;
+			public const int nameText = 2131296761;
 			
 			// aapt resource value: 0x7F0901FA
-			public const int options3 = 2131296762;
+			public const int name_del = 2131296762;
 			
 			// aapt resource value: 0x7F0901FB
-			public const int optionspicker = 2131296763;
+			public const int name_text = 2131296763;
 			
 			// aapt resource value: 0x7F0901FC
-			public const int outmost_container = 2131296764;
+			public const int name_tv = 2131296764;
 			
 			// aapt resource value: 0x7F0901FD
-			public const int packed = 2131296765;
-			
-			// aapt resource value: 0x7F0901FF
-			public const int pager = 2131296767;
-			
-			// aapt resource value: 0x7F090200
-			public const int pager_tab_strip = 2131296768;
+			public const int navigation_header_container = 2131296765;
 			
 			// aapt resource value: 0x7F0901FE
-			public const int page_container = 2131296766;
+			public const int never = 2131296766;
 			
-			// aapt resource value: 0x7F090201
-			public const int parallax = 2131296769;
+			// aapt resource value: 0x7F0901FF
+			public const int new_password = 2131296767;
 			
-			// aapt resource value: 0x7F090202
-			public const int parent = 2131296770;
-			
-			// aapt resource value: 0x7F090203
-			public const int parentPanel = 2131296771;
-			
-			// aapt resource value: 0x7F090204
-			public const int parent_matrix = 2131296772;
-			
-			// aapt resource value: 0x7F090205
-			public const int passwordETV = 2131296773;
-			
-			// aapt resource value: 0x7F090206
-			public const int pb_notlist_title_bar_landscape = 2131296774;
-			
-			// aapt resource value: 0x7F090207
-			public const int pb_play_loading = 2131296775;
+			// aapt resource value: 0x7F090200
+			public const int next_play_btn = 2131296768;
 			
 			// aapt resource value: 0x7F090208
-			public const int pb_search_content_tab = 2131296776;
+			public const int none = 2131296776;
 			
 			// aapt resource value: 0x7F090209
-			public const int pb_search_tab_btn_cloud = 2131296777;
+			public const int normal = 2131296777;
+			
+			// aapt resource value: 0x7F090201
+			public const int noText = 2131296769;
 			
 			// aapt resource value: 0x7F09020A
-			public const int pb_search_tab_btn_device = 2131296778;
+			public const int notification_background = 2131296778;
 			
 			// aapt resource value: 0x7F09020B
-			public const int pb_title_bar_landscape = 2131296779;
+			public const int notification_main_column = 2131296779;
 			
 			// aapt resource value: 0x7F09020C
-			public const int peerAddress = 2131296780;
+			public const int notification_main_column_container = 2131296780;
 			
 			// aapt resource value: 0x7F09020D
-			public const int percent = 2131296781;
+			public const int novideo_img = 2131296781;
 			
 			// aapt resource value: 0x7F09020E
-			public const int phone_et = 2131296782;
+			public const int novideo_img_device = 2131296782;
+			
+			// aapt resource value: 0x7F090202
+			public const int no_camera_tip_ly = 2131296770;
+			
+			// aapt resource value: 0x7F090203
+			public const int no_message_button = 2131296771;
+			
+			// aapt resource value: 0x7F090204
+			public const int no_message_layout = 2131296772;
+			
+			// aapt resource value: 0x7F090205
+			public const int no_message_text = 2131296773;
+			
+			// aapt resource value: 0x7F090206
+			public const int no_more_hint = 2131296774;
+			
+			// aapt resource value: 0x7F090207
+			public const int no_more_text = 2131296775;
 			
 			// aapt resource value: 0x7F09020F
-			public const int phone_ly = 2131296783;
+			public const int offline_bg = 2131296783;
 			
 			// aapt resource value: 0x7F090210
-			public const int phone_lyt = 2131296784;
+			public const int ok_tv = 2131296784;
 			
 			// aapt resource value: 0x7F090211
-			public const int pin = 2131296785;
-			
-			// aapt resource value: 0x7F090213
-			public const int platform_login_btn = 2131296787;
+			public const int options1 = 2131296785;
 			
 			// aapt resource value: 0x7F090212
-			public const int plat_tv = 2131296786;
+			public const int options2 = 2131296786;
+			
+			// aapt resource value: 0x7F090213
+			public const int options3 = 2131296787;
 			
 			// aapt resource value: 0x7F090214
-			public const int play_video_layout = 2131296788;
+			public const int optionspicker = 2131296788;
 			
 			// aapt resource value: 0x7F090215
-			public const int preview_view = 2131296789;
-			
-			// aapt resource value: 0x7F09021A
-			public const int progressbar = 2131296794;
+			public const int outmost_container = 2131296789;
 			
 			// aapt resource value: 0x7F090216
-			public const int progress_area = 2131296790;
-			
-			// aapt resource value: 0x7F090217
-			public const int progress_circular = 2131296791;
+			public const int packed = 2131296790;
 			
 			// aapt resource value: 0x7F090218
-			public const int progress_horizontal = 2131296792;
+			public const int pager = 2131296792;
 			
 			// aapt resource value: 0x7F090219
-			public const int progress_seekbar = 2131296793;
+			public const int pager_tab_strip = 2131296793;
+			
+			// aapt resource value: 0x7F090217
+			public const int page_container = 2131296791;
+			
+			// aapt resource value: 0x7F09021A
+			public const int parallax = 2131296794;
 			
 			// aapt resource value: 0x7F09021B
-			public const int ptz_bottom_btn = 2131296795;
+			public const int parent = 2131296795;
 			
 			// aapt resource value: 0x7F09021C
-			public const int ptz_close_btn = 2131296796;
+			public const int parentPanel = 2131296796;
 			
 			// aapt resource value: 0x7F09021D
-			public const int ptz_control_ly = 2131296797;
+			public const int parent_matrix = 2131296797;
 			
 			// aapt resource value: 0x7F09021E
-			public const int ptz_flip_btn = 2131296798;
+			public const int passwordETV = 2131296798;
 			
 			// aapt resource value: 0x7F09021F
-			public const int ptz_left_btn = 2131296799;
+			public const int pb_notlist_title_bar_landscape = 2131296799;
 			
 			// aapt resource value: 0x7F090220
-			public const int ptz_right_btn = 2131296800;
+			public const int pb_play_loading = 2131296800;
 			
 			// aapt resource value: 0x7F090221
-			public const int ptz_top_btn = 2131296801;
+			public const int pb_search_content_tab = 2131296801;
 			
 			// aapt resource value: 0x7F090222
-			public const int quality_balanced_btn = 2131296802;
+			public const int pb_search_tab_btn_cloud = 2131296802;
 			
 			// aapt resource value: 0x7F090223
-			public const int quality_close_btn = 2131296803;
+			public const int pb_search_tab_btn_device = 2131296803;
 			
 			// aapt resource value: 0x7F090224
-			public const int quality_flunet_btn = 2131296804;
+			public const int pb_title_bar_landscape = 2131296804;
 			
 			// aapt resource value: 0x7F090225
-			public const int quality_hd_btn = 2131296805;
+			public const int peerAddress = 2131296805;
 			
 			// aapt resource value: 0x7F090226
-			public const int quality_line = 2131296806;
+			public const int percent = 2131296806;
 			
 			// aapt resource value: 0x7F090227
-			public const int quality_super_hd_btn = 2131296807;
-			
-			// aapt resource value: 0x7F090229
-			public const int queryingCameraRyt = 2131296809;
-			
-			// aapt resource value: 0x7F09022A
-			public const int querying_camera_tv = 2131296810;
+			public const int phone_et = 2131296807;
 			
 			// aapt resource value: 0x7F090228
-			public const int query_exception_ly = 2131296808;
+			public const int phone_ly = 2131296808;
 			
-			// aapt resource value: 0x7F09022B
-			public const int quit = 2131296811;
+			// aapt resource value: 0x7F090229
+			public const int phone_lyt = 2131296809;
+			
+			// aapt resource value: 0x7F09022A
+			public const int pin = 2131296810;
 			
 			// aapt resource value: 0x7F09022C
-			public const int radio = 2131296812;
+			public const int platform_login_btn = 2131296812;
+			
+			// aapt resource value: 0x7F09022B
+			public const int plat_tv = 2131296811;
 			
 			// aapt resource value: 0x7F09022D
-			public const int range = 2131296813;
+			public const int play_video_layout = 2131296813;
 			
 			// aapt resource value: 0x7F09022E
-			public const int rangeSort = 2131296814;
-			
-			// aapt resource value: 0x7F09022F
-			public const int rate_16x = 2131296815;
-			
-			// aapt resource value: 0x7F090230
-			public const int rate_1x = 2131296816;
-			
-			// aapt resource value: 0x7F090231
-			public const int rate_4x = 2131296817;
-			
-			// aapt resource value: 0x7F090232
-			public const int rate_8x = 2131296818;
-			
-			// aapt resource value: 0x7F090234
-			public const int read_button = 2131296820;
-			
-			// aapt resource value: 0x7F090235
-			public const int realplay_area = 2131296821;
-			
-			// aapt resource value: 0x7F090236
-			public const int realplay_back_btn = 2131296822;
-			
-			// aapt resource value: 0x7F090237
-			public const int realplay_capture_iv = 2131296823;
-			
-			// aapt resource value: 0x7F090238
-			public const int realplay_capture_rl = 2131296824;
-			
-			// aapt resource value: 0x7F090239
-			public const int realplay_capture_watermark_iv = 2131296825;
-			
-			// aapt resource value: 0x7F09023A
-			public const int realplay_control_bar = 2131296826;
-			
-			// aapt resource value: 0x7F09023B
-			public const int realplay_control_rl = 2131296827;
-			
-			// aapt resource value: 0x7F09023C
-			public const int realplay_display_view = 2131296828;
-			
-			// aapt resource value: 0x7F09023D
-			public const int realplay_flow_tv = 2131296829;
-			
-			// aapt resource value: 0x7F09023E
-			public const int realplay_full_anim_btn = 2131296830;
-			
-			// aapt resource value: 0x7F09023F
-			public const int realplay_full_flow_ly = 2131296831;
-			
-			// aapt resource value: 0x7F090240
-			public const int realplay_full_flow_tv = 2131296832;
-			
-			// aapt resource value: 0x7F090241
-			public const int realplay_full_operate_bar = 2131296833;
-			
-			// aapt resource value: 0x7F090242
-			public const int realplay_full_operate_layout = 2131296834;
-			
-			// aapt resource value: 0x7F090243
-			public const int realplay_full_play_btn = 2131296835;
-			
-			// aapt resource value: 0x7F090244
-			public const int realplay_full_previously_btn = 2131296836;
-			
-			// aapt resource value: 0x7F090245
-			public const int realplay_full_ptz_anim_btn = 2131296837;
-			
-			// aapt resource value: 0x7F090246
-			public const int realplay_full_ptz_btn = 2131296838;
-			
-			// aapt resource value: 0x7F090247
-			public const int realplay_full_ptz_prompt_iv = 2131296839;
-			
-			// aapt resource value: 0x7F090248
-			public const int realplay_full_rate_tv = 2131296840;
-			
-			// aapt resource value: 0x7F090249
-			public const int realplay_full_sound_btn = 2131296841;
-			
-			// aapt resource value: 0x7F09024A
-			public const int realplay_full_talk_anim_btn = 2131296842;
-			
-			// aapt resource value: 0x7F09024B
-			public const int realplay_full_talk_btn = 2131296843;
-			
-			// aapt resource value: 0x7F09024C
-			public const int realplay_full_video_btn = 2131296844;
-			
-			// aapt resource value: 0x7F09024D
-			public const int realplay_full_video_container = 2131296845;
-			
-			// aapt resource value: 0x7F09024E
-			public const int realplay_full_video_start_btn = 2131296846;
-			
-			// aapt resource value: 0x7F09024F
-			public const int realplay_loading = 2131296847;
-			
-			// aapt resource value: 0x7F090250
-			public const int realplay_loading_rl = 2131296848;
-			
-			// aapt resource value: 0x7F090251
-			public const int realplay_operate_bar = 2131296849;
-			
-			// aapt resource value: 0x7F090252
-			public const int realplay_operate_bar2 = 2131296850;
-			
-			// aapt resource value: 0x7F090253
-			public const int realplay_operate_ly = 2131296851;
-			
-			// aapt resource value: 0x7F090254
-			public const int realplay_operate_ly2 = 2131296852;
-			
-			// aapt resource value: 0x7F090257
-			public const int realplay_pages_gallery = 2131296855;
-			
-			// aapt resource value: 0x7F090255
-			public const int realplay_page_anim_iv = 2131296853;
-			
-			// aapt resource value: 0x7F090256
-			public const int realplay_page_ly = 2131296854;
-			
-			// aapt resource value: 0x7F090258
-			public const int realplay_play_btn = 2131296856;
-			
-			// aapt resource value: 0x7F090259
-			public const int realplay_play_iv = 2131296857;
-			
-			// aapt resource value: 0x7F09025A
-			public const int realplay_play_rl = 2131296858;
-			
-			// aapt resource value: 0x7F09025B
-			public const int realplay_previously_btn = 2131296859;
-			
-			// aapt resource value: 0x7F09025C
-			public const int realplay_previously_btn2 = 2131296860;
-			
-			// aapt resource value: 0x7F09025D
-			public const int realplay_previously_btn_ly = 2131296861;
-			
-			// aapt resource value: 0x7F09025E
-			public const int realplay_previously_btn_ly2 = 2131296862;
-			
-			// aapt resource value: 0x7F09025F
-			public const int realplay_privacy_btn = 2131296863;
-			
-			// aapt resource value: 0x7F090260
-			public const int realplay_privacy_btn2 = 2131296864;
-			
-			// aapt resource value: 0x7F090261
-			public const int realplay_privacy_btn_ly = 2131296865;
-			
-			// aapt resource value: 0x7F090262
-			public const int realplay_privacy_btn_ly2 = 2131296866;
-			
-			// aapt resource value: 0x7F090263
-			public const int realplay_privacy_ly = 2131296867;
-			
-			// aapt resource value: 0x7F090264
-			public const int realplay_privacy_tv = 2131296868;
-			
-			// aapt resource value: 0x7F090265
-			public const int realplay_privacy_tv2 = 2131296869;
-			
-			// aapt resource value: 0x7F090266
-			public const int realplay_prompt_rl = 2131296870;
-			
-			// aapt resource value: 0x7F090267
-			public const int realplay_ptz_btn = 2131296871;
-			
-			// aapt resource value: 0x7F090268
-			public const int realplay_ptz_btn2 = 2131296872;
-			
-			// aapt resource value: 0x7F090269
-			public const int realplay_ptz_btn_ly = 2131296873;
-			
-			// aapt resource value: 0x7F09026A
-			public const int realplay_ptz_btn_ly2 = 2131296874;
-			
-			// aapt resource value: 0x7F09026B
-			public const int realplay_ptz_direction_iv = 2131296875;
-			
-			// aapt resource value: 0x7F09026C
-			public const int realplay_quality_btn = 2131296876;
-			
-			// aapt resource value: 0x7F09026D
-			public const int realplay_ratio_tv = 2131296877;
-			
-			// aapt resource value: 0x7F09026E
-			public const int realplay_record_iv = 2131296878;
-			
-			// aapt resource value: 0x7F09026F
-			public const int realplay_record_ly = 2131296879;
-			
-			// aapt resource value: 0x7F090270
-			public const int realplay_record_tv = 2131296880;
-			
-			// aapt resource value: 0x7F090271
-			public const int realplay_sound_btn = 2131296881;
-			
-			// aapt resource value: 0x7F090272
-			public const int realplay_ssl_btn = 2131296882;
-			
-			// aapt resource value: 0x7F090273
-			public const int realplay_ssl_btn2 = 2131296883;
-			
-			// aapt resource value: 0x7F090274
-			public const int realplay_ssl_btn_ly = 2131296884;
-			
-			// aapt resource value: 0x7F090275
-			public const int realplay_ssl_btn_ly2 = 2131296885;
-			
-			// aapt resource value: 0x7F090276
-			public const int realplay_ssl_btn_rl = 2131296886;
-			
-			// aapt resource value: 0x7F090277
-			public const int realplay_ssl_btn_rl2 = 2131296887;
-			
-			// aapt resource value: 0x7F090278
-			public const int realplay_ssl_progress = 2131296888;
-			
-			// aapt resource value: 0x7F090279
-			public const int realplay_ssl_progress2 = 2131296889;
-			
-			// aapt resource value: 0x7F09027A
-			public const int realplay_ssl_tv = 2131296890;
-			
-			// aapt resource value: 0x7F09027B
-			public const int realplay_ssl_tv2 = 2131296891;
-			
-			// aapt resource value: 0x7F09027C
-			public const int realplay_stop_btn = 2131296892;
-			
-			// aapt resource value: 0x7F09027D
-			public const int realplay_sv = 2131296893;
-			
-			// aapt resource value: 0x7F09027E
-			public const int realplay_talk_btn = 2131296894;
-			
-			// aapt resource value: 0x7F09027F
-			public const int realplay_talk_btn2 = 2131296895;
-			
-			// aapt resource value: 0x7F090280
-			public const int realplay_talk_btn_ly = 2131296896;
-			
-			// aapt resource value: 0x7F090281
-			public const int realplay_talk_btn_ly2 = 2131296897;
-			
-			// aapt resource value: 0x7F090282
-			public const int realplay_tip_tv = 2131296898;
-			
-			// aapt resource value: 0x7F090283
-			public const int realplay_title_tv = 2131296899;
-			
-			// aapt resource value: 0x7F090284
-			public const int realplay_top_bar = 2131296900;
-			
-			// aapt resource value: 0x7F090285
-			public const int realplay_video_btn = 2131296901;
-			
-			// aapt resource value: 0x7F090286
-			public const int realplay_video_btn2 = 2131296902;
-			
-			// aapt resource value: 0x7F090287
-			public const int realplay_video_container = 2131296903;
-			
-			// aapt resource value: 0x7F090288
-			public const int realplay_video_container2 = 2131296904;
-			
-			// aapt resource value: 0x7F090289
-			public const int realplay_video_container_ly = 2131296905;
-			
-			// aapt resource value: 0x7F09028A
-			public const int realplay_video_container_ly2 = 2131296906;
-			
-			// aapt resource value: 0x7F09028B
-			public const int realplay_video_start_btn = 2131296907;
-			
-			// aapt resource value: 0x7F09028C
-			public const int realplay_video_start_btn2 = 2131296908;
-			
-			// aapt resource value: 0x7F09028D
-			public const int realplay_waiting_lr = 2131296909;
-			
-			// aapt resource value: 0x7F09028E
-			public const int realplay_watting_pb = 2131296910;
-			
-			// aapt resource value: 0x7F09028F
-			public const int realplay_watting_tv = 2131296911;
-			
-			// aapt resource value: 0x7F090290
-			public const int realplay_wnd_sv = 2131296912;
-			
-			// aapt resource value: 0x7F090291
-			public const int recycler_view = 2131296913;
-			
-			// aapt resource value: 0x7F090292
-			public const int refresh_button = 2131296914;
-			
-			// aapt resource value: 0x7F090293
-			public const int refresh_layout = 2131296915;
-			
-			// aapt resource value: 0x7F090294
-			public const int refresh_tip = 2131296916;
-			
-			// aapt resource value: 0x7F090295
-			public const int remoteFrame = 2131296917;
-			
-			// aapt resource value: 0x7F090296
-			public const int remoteFrameContainer = 2131296918;
-			
-			// aapt resource value: 0x7F0902A3
-			public const int remoteplayback_begin_time_tv = 2131296931;
-			
-			// aapt resource value: 0x7F0902A4
-			public const int remoteplayback_capture_iv = 2131296932;
-			
-			// aapt resource value: 0x7F0902A5
-			public const int remoteplayback_capture_rl = 2131296933;
-			
-			// aapt resource value: 0x7F0902A6
-			public const int remoteplayback_capture_watermark_iv = 2131296934;
-			
-			// aapt resource value: 0x7F0902A7
-			public const int remoteplayback_control_rl = 2131296935;
-			
-			// aapt resource value: 0x7F0902A8
-			public const int remoteplayback_end_time_tv = 2131296936;
-			
-			// aapt resource value: 0x7F0902A9
-			public const int remoteplayback_file_time_bar = 2131296937;
-			
-			// aapt resource value: 0x7F0902AA
-			public const int remoteplayback_flow_tv = 2131296938;
-			
-			// aapt resource value: 0x7F0902AB
-			public const int remoteplayback_full_down_btn = 2131296939;
-			
-			// aapt resource value: 0x7F0902AC
-			public const int remoteplayback_full_flow_ly = 2131296940;
-			
-			// aapt resource value: 0x7F0902AD
-			public const int remoteplayback_full_flow_tv = 2131296941;
-			
-			// aapt resource value: 0x7F0902AE
-			public const int remoteplayback_full_operate_bar = 2131296942;
-			
-			// aapt resource value: 0x7F0902AF
-			public const int remoteplayback_full_play_btn = 2131296943;
-			
-			// aapt resource value: 0x7F0902B0
-			public const int remoteplayback_full_previously_btn = 2131296944;
-			
-			// aapt resource value: 0x7F0902B1
-			public const int remoteplayback_full_rate_tv = 2131296945;
-			
-			// aapt resource value: 0x7F0902B2
-			public const int remoteplayback_full_sound_btn = 2131296946;
-			
-			// aapt resource value: 0x7F0902B3
-			public const int remoteplayback_full_video_btn = 2131296947;
-			
-			// aapt resource value: 0x7F0902B4
-			public const int remoteplayback_full_video_container = 2131296948;
-			
-			// aapt resource value: 0x7F0902B5
-			public const int remoteplayback_full_video_start_btn = 2131296949;
-			
-			// aapt resource value: 0x7F0902B6
-			public const int remoteplayback_loading_iv = 2131296950;
-			
-			// aapt resource value: 0x7F0902B7
-			public const int remoteplayback_loading_ly = 2131296951;
-			
-			// aapt resource value: 0x7F0902B8
-			public const int remoteplayback_loading_pb_ly = 2131296952;
-			
-			// aapt resource value: 0x7F0902B9
-			public const int remoteplayback_loading_play_btn = 2131296953;
-			
-			// aapt resource value: 0x7F0902BA
-			public const int remoteplayback_loading_tv = 2131296954;
-			
-			// aapt resource value: 0x7F0902BB
-			public const int remoteplayback_operate_bar = 2131296955;
-			
-			// aapt resource value: 0x7F0902BC
-			public const int remoteplayback_page_ly = 2131296956;
-			
-			// aapt resource value: 0x7F0902BD
-			public const int remoteplayback_play_btn = 2131296957;
-			
-			// aapt resource value: 0x7F0902BE
-			public const int remoteplayback_play_rl = 2131296958;
-			
-			// aapt resource value: 0x7F0902BF
-			public const int remoteplayback_previously_btn = 2131296959;
-			
-			// aapt resource value: 0x7F0902C2
-			public const int remoteplayback_progressbar = 2131296962;
-			
-			// aapt resource value: 0x7F0902C0
-			public const int remoteplayback_progress_ly = 2131296960;
-			
-			// aapt resource value: 0x7F0902C1
-			public const int remoteplayback_progress_seekbar = 2131296961;
-			
-			// aapt resource value: 0x7F0902C3
-			public const int remoteplayback_ratio_tv = 2131296963;
-			
-			// aapt resource value: 0x7F0902C4
-			public const int remoteplayback_record_iv = 2131296964;
-			
-			// aapt resource value: 0x7F0902C5
-			public const int remoteplayback_record_ly = 2131296965;
-			
-			// aapt resource value: 0x7F0902C6
-			public const int remoteplayback_record_tv = 2131296966;
-			
-			// aapt resource value: 0x7F0902C7
-			public const int remoteplayback_replay_btn = 2131296967;
-			
-			// aapt resource value: 0x7F0902C8
-			public const int remoteplayback_small_previously_btn = 2131296968;
-			
-			// aapt resource value: 0x7F0902C9
-			public const int remoteplayback_small_video_btn = 2131296969;
-			
-			// aapt resource value: 0x7F0902CA
-			public const int remoteplayback_small_video_container = 2131296970;
-			
-			// aapt resource value: 0x7F0902CB
-			public const int remoteplayback_small_video_start_btn = 2131296971;
-			
-			// aapt resource value: 0x7F0902CC
-			public const int remoteplayback_sound_btn = 2131296972;
-			
-			// aapt resource value: 0x7F0902CD
-			public const int remoteplayback_sv = 2131296973;
-			
-			// aapt resource value: 0x7F0902CF
-			public const int remoteplayback_timebar = 2131296975;
-			
-			// aapt resource value: 0x7F0902D0
-			public const int remoteplayback_timebar_rl = 2131296976;
-			
-			// aapt resource value: 0x7F0902CE
-			public const int remoteplayback_time_tv = 2131296974;
-			
-			// aapt resource value: 0x7F0902D1
-			public const int remoteplayback_tip_tv = 2131296977;
-			
-			// aapt resource value: 0x7F0902D2
-			public const int remoteplayback_video_btn = 2131296978;
-			
-			// aapt resource value: 0x7F0902D3
-			public const int remoteplayback_video_container = 2131296979;
-			
-			// aapt resource value: 0x7F0902D4
-			public const int remoteplayback_video_start_btn = 2131296980;
-			
-			// aapt resource value: 0x7F090297
-			public const int remoteVideo = 2131296919;
-			
-			// aapt resource value: 0x7F090298
-			public const int remote_list_page = 2131296920;
-			
-			// aapt resource value: 0x7F090299
-			public const int remote_loading_buffer_tv = 2131296921;
-			
-			// aapt resource value: 0x7F09029A
-			public const int remote_loading_iv = 2131296922;
-			
-			// aapt resource value: 0x7F09029B
-			public const int remote_playback_area = 2131296923;
-			
-			// aapt resource value: 0x7F09029C
-			public const int remote_playback_capture_btn = 2131296924;
-			
-			// aapt resource value: 0x7F09029D
-			public const int remote_playback_download_btn = 2131296925;
-			
-			// aapt resource value: 0x7F09029E
-			public const int remote_playback_flow_tv = 2131296926;
-			
-			// aapt resource value: 0x7F09029F
-			public const int remote_playback_pause_btn = 2131296927;
-			
-			// aapt resource value: 0x7F0902A0
-			public const int remote_playback_sound_btn = 2131296928;
-			
-			// aapt resource value: 0x7F0902A1
-			public const int remote_playback_video_recording_btn = 2131296929;
-			
-			// aapt resource value: 0x7F0902A2
-			public const int remote_playback_wnd_sv = 2131296930;
-			
-			// aapt resource value: 0x7F0902D5
-			public const int render_texture_view = 2131296981;
-			
-			// aapt resource value: 0x7F0902D6
-			public const int render_texture_view_soft = 2131296982;
-			
-			// aapt resource value: 0x7F0902D7
-			public const int replay_btn = 2131296983;
-			
-			// aapt resource value: 0x7F0902D8
-			public const int requestA = 2131296984;
-			
-			// aapt resource value: 0x7F0902D9
-			public const int requestMasterAudio = 2131296985;
-			
-			// aapt resource value: 0x7F0902DA
-			public const int requestMasterVideo = 2131296986;
-			
-			// aapt resource value: 0x7F0902DB
-			public const int requestV = 2131296987;
-			
-			// aapt resource value: 0x7F0902DC
-			public const int restart_preview = 2131296988;
-			
-			// aapt resource value: 0x7F0902DD
-			public const int retry_btn = 2131296989;
-			
-			// aapt resource value: 0x7F0902DE
-			public const int retry_button = 2131296990;
-			
-			// aapt resource value: 0x7F0902DF
-			public const int return_scan_result = 2131296991;
-			
-			// aapt resource value: 0x7F0902E0
-			public const int reverseCall = 2131296992;
-			
-			// aapt resource value: 0x7F0902E1
-			public const int reverseCallInfo = 2131296993;
+			public const int preview_view = 2131296814;
 			
 			// aapt resource value: 0x7F090233
-			public const int re_next_area = 2131296819;
+			public const int progressbar = 2131296819;
+			
+			// aapt resource value: 0x7F09022F
+			public const int progress_area = 2131296815;
+			
+			// aapt resource value: 0x7F090230
+			public const int progress_circular = 2131296816;
+			
+			// aapt resource value: 0x7F090231
+			public const int progress_horizontal = 2131296817;
+			
+			// aapt resource value: 0x7F090232
+			public const int progress_seekbar = 2131296818;
+			
+			// aapt resource value: 0x7F090234
+			public const int ptz_bottom_btn = 2131296820;
+			
+			// aapt resource value: 0x7F090235
+			public const int ptz_close_btn = 2131296821;
+			
+			// aapt resource value: 0x7F090236
+			public const int ptz_control_ly = 2131296822;
+			
+			// aapt resource value: 0x7F090237
+			public const int ptz_flip_btn = 2131296823;
+			
+			// aapt resource value: 0x7F090238
+			public const int ptz_left_btn = 2131296824;
+			
+			// aapt resource value: 0x7F090239
+			public const int ptz_right_btn = 2131296825;
+			
+			// aapt resource value: 0x7F09023A
+			public const int ptz_top_btn = 2131296826;
+			
+			// aapt resource value: 0x7F09023B
+			public const int quality_balanced_btn = 2131296827;
+			
+			// aapt resource value: 0x7F09023C
+			public const int quality_close_btn = 2131296828;
+			
+			// aapt resource value: 0x7F09023D
+			public const int quality_flunet_btn = 2131296829;
+			
+			// aapt resource value: 0x7F09023E
+			public const int quality_hd_btn = 2131296830;
+			
+			// aapt resource value: 0x7F09023F
+			public const int quality_line = 2131296831;
+			
+			// aapt resource value: 0x7F090240
+			public const int quality_super_hd_btn = 2131296832;
+			
+			// aapt resource value: 0x7F090242
+			public const int queryingCameraRyt = 2131296834;
+			
+			// aapt resource value: 0x7F090243
+			public const int querying_camera_tv = 2131296835;
+			
+			// aapt resource value: 0x7F090241
+			public const int query_exception_ly = 2131296833;
+			
+			// aapt resource value: 0x7F090244
+			public const int quit = 2131296836;
+			
+			// aapt resource value: 0x7F090245
+			public const int radio = 2131296837;
+			
+			// aapt resource value: 0x7F090246
+			public const int range = 2131296838;
+			
+			// aapt resource value: 0x7F090247
+			public const int rangeSort = 2131296839;
+			
+			// aapt resource value: 0x7F090248
+			public const int rate_16x = 2131296840;
+			
+			// aapt resource value: 0x7F090249
+			public const int rate_1x = 2131296841;
+			
+			// aapt resource value: 0x7F09024A
+			public const int rate_4x = 2131296842;
+			
+			// aapt resource value: 0x7F09024B
+			public const int rate_8x = 2131296843;
+			
+			// aapt resource value: 0x7F09024D
+			public const int read_button = 2131296845;
+			
+			// aapt resource value: 0x7F09024E
+			public const int realplay_area = 2131296846;
+			
+			// aapt resource value: 0x7F09024F
+			public const int realplay_back_btn = 2131296847;
+			
+			// aapt resource value: 0x7F090250
+			public const int realplay_capture_iv = 2131296848;
+			
+			// aapt resource value: 0x7F090251
+			public const int realplay_capture_rl = 2131296849;
+			
+			// aapt resource value: 0x7F090252
+			public const int realplay_capture_watermark_iv = 2131296850;
+			
+			// aapt resource value: 0x7F090253
+			public const int realplay_control_bar = 2131296851;
+			
+			// aapt resource value: 0x7F090254
+			public const int realplay_control_rl = 2131296852;
+			
+			// aapt resource value: 0x7F090255
+			public const int realplay_display_view = 2131296853;
+			
+			// aapt resource value: 0x7F090256
+			public const int realplay_flow_tv = 2131296854;
+			
+			// aapt resource value: 0x7F090257
+			public const int realplay_full_anim_btn = 2131296855;
+			
+			// aapt resource value: 0x7F090258
+			public const int realplay_full_flow_ly = 2131296856;
+			
+			// aapt resource value: 0x7F090259
+			public const int realplay_full_flow_tv = 2131296857;
+			
+			// aapt resource value: 0x7F09025A
+			public const int realplay_full_operate_bar = 2131296858;
+			
+			// aapt resource value: 0x7F09025B
+			public const int realplay_full_operate_layout = 2131296859;
+			
+			// aapt resource value: 0x7F09025C
+			public const int realplay_full_play_btn = 2131296860;
+			
+			// aapt resource value: 0x7F09025D
+			public const int realplay_full_previously_btn = 2131296861;
+			
+			// aapt resource value: 0x7F09025E
+			public const int realplay_full_ptz_anim_btn = 2131296862;
+			
+			// aapt resource value: 0x7F09025F
+			public const int realplay_full_ptz_btn = 2131296863;
+			
+			// aapt resource value: 0x7F090260
+			public const int realplay_full_ptz_prompt_iv = 2131296864;
+			
+			// aapt resource value: 0x7F090261
+			public const int realplay_full_rate_tv = 2131296865;
+			
+			// aapt resource value: 0x7F090262
+			public const int realplay_full_sound_btn = 2131296866;
+			
+			// aapt resource value: 0x7F090263
+			public const int realplay_full_talk_anim_btn = 2131296867;
+			
+			// aapt resource value: 0x7F090264
+			public const int realplay_full_talk_btn = 2131296868;
+			
+			// aapt resource value: 0x7F090265
+			public const int realplay_full_video_btn = 2131296869;
+			
+			// aapt resource value: 0x7F090266
+			public const int realplay_full_video_container = 2131296870;
+			
+			// aapt resource value: 0x7F090267
+			public const int realplay_full_video_start_btn = 2131296871;
+			
+			// aapt resource value: 0x7F090268
+			public const int realplay_loading = 2131296872;
+			
+			// aapt resource value: 0x7F090269
+			public const int realplay_loading_rl = 2131296873;
+			
+			// aapt resource value: 0x7F09026A
+			public const int realplay_operate_bar = 2131296874;
+			
+			// aapt resource value: 0x7F09026B
+			public const int realplay_operate_bar2 = 2131296875;
+			
+			// aapt resource value: 0x7F09026C
+			public const int realplay_operate_ly = 2131296876;
+			
+			// aapt resource value: 0x7F09026D
+			public const int realplay_operate_ly2 = 2131296877;
+			
+			// aapt resource value: 0x7F090270
+			public const int realplay_pages_gallery = 2131296880;
+			
+			// aapt resource value: 0x7F09026E
+			public const int realplay_page_anim_iv = 2131296878;
+			
+			// aapt resource value: 0x7F09026F
+			public const int realplay_page_ly = 2131296879;
+			
+			// aapt resource value: 0x7F090271
+			public const int realplay_play_btn = 2131296881;
+			
+			// aapt resource value: 0x7F090272
+			public const int realplay_play_iv = 2131296882;
+			
+			// aapt resource value: 0x7F090273
+			public const int realplay_play_rl = 2131296883;
+			
+			// aapt resource value: 0x7F090274
+			public const int realplay_previously_btn = 2131296884;
+			
+			// aapt resource value: 0x7F090275
+			public const int realplay_previously_btn2 = 2131296885;
+			
+			// aapt resource value: 0x7F090276
+			public const int realplay_previously_btn_ly = 2131296886;
+			
+			// aapt resource value: 0x7F090277
+			public const int realplay_previously_btn_ly2 = 2131296887;
+			
+			// aapt resource value: 0x7F090278
+			public const int realplay_privacy_btn = 2131296888;
+			
+			// aapt resource value: 0x7F090279
+			public const int realplay_privacy_btn2 = 2131296889;
+			
+			// aapt resource value: 0x7F09027A
+			public const int realplay_privacy_btn_ly = 2131296890;
+			
+			// aapt resource value: 0x7F09027B
+			public const int realplay_privacy_btn_ly2 = 2131296891;
+			
+			// aapt resource value: 0x7F09027C
+			public const int realplay_privacy_ly = 2131296892;
+			
+			// aapt resource value: 0x7F09027D
+			public const int realplay_privacy_tv = 2131296893;
+			
+			// aapt resource value: 0x7F09027E
+			public const int realplay_privacy_tv2 = 2131296894;
+			
+			// aapt resource value: 0x7F09027F
+			public const int realplay_prompt_rl = 2131296895;
+			
+			// aapt resource value: 0x7F090280
+			public const int realplay_ptz_btn = 2131296896;
+			
+			// aapt resource value: 0x7F090281
+			public const int realplay_ptz_btn2 = 2131296897;
+			
+			// aapt resource value: 0x7F090282
+			public const int realplay_ptz_btn_ly = 2131296898;
+			
+			// aapt resource value: 0x7F090283
+			public const int realplay_ptz_btn_ly2 = 2131296899;
+			
+			// aapt resource value: 0x7F090284
+			public const int realplay_ptz_direction_iv = 2131296900;
+			
+			// aapt resource value: 0x7F090285
+			public const int realplay_quality_btn = 2131296901;
+			
+			// aapt resource value: 0x7F090286
+			public const int realplay_ratio_tv = 2131296902;
+			
+			// aapt resource value: 0x7F090287
+			public const int realplay_record_iv = 2131296903;
+			
+			// aapt resource value: 0x7F090288
+			public const int realplay_record_ly = 2131296904;
+			
+			// aapt resource value: 0x7F090289
+			public const int realplay_record_tv = 2131296905;
+			
+			// aapt resource value: 0x7F09028A
+			public const int realplay_sound_btn = 2131296906;
+			
+			// aapt resource value: 0x7F09028B
+			public const int realplay_ssl_btn = 2131296907;
+			
+			// aapt resource value: 0x7F09028C
+			public const int realplay_ssl_btn2 = 2131296908;
+			
+			// aapt resource value: 0x7F09028D
+			public const int realplay_ssl_btn_ly = 2131296909;
+			
+			// aapt resource value: 0x7F09028E
+			public const int realplay_ssl_btn_ly2 = 2131296910;
+			
+			// aapt resource value: 0x7F09028F
+			public const int realplay_ssl_btn_rl = 2131296911;
+			
+			// aapt resource value: 0x7F090290
+			public const int realplay_ssl_btn_rl2 = 2131296912;
+			
+			// aapt resource value: 0x7F090291
+			public const int realplay_ssl_progress = 2131296913;
+			
+			// aapt resource value: 0x7F090292
+			public const int realplay_ssl_progress2 = 2131296914;
+			
+			// aapt resource value: 0x7F090293
+			public const int realplay_ssl_tv = 2131296915;
+			
+			// aapt resource value: 0x7F090294
+			public const int realplay_ssl_tv2 = 2131296916;
+			
+			// aapt resource value: 0x7F090295
+			public const int realplay_stop_btn = 2131296917;
+			
+			// aapt resource value: 0x7F090296
+			public const int realplay_sv = 2131296918;
+			
+			// aapt resource value: 0x7F090297
+			public const int realplay_talk_btn = 2131296919;
+			
+			// aapt resource value: 0x7F090298
+			public const int realplay_talk_btn2 = 2131296920;
+			
+			// aapt resource value: 0x7F090299
+			public const int realplay_talk_btn_ly = 2131296921;
+			
+			// aapt resource value: 0x7F09029A
+			public const int realplay_talk_btn_ly2 = 2131296922;
+			
+			// aapt resource value: 0x7F09029B
+			public const int realplay_tip_tv = 2131296923;
+			
+			// aapt resource value: 0x7F09029C
+			public const int realplay_title_tv = 2131296924;
+			
+			// aapt resource value: 0x7F09029D
+			public const int realplay_top_bar = 2131296925;
+			
+			// aapt resource value: 0x7F09029E
+			public const int realplay_video_btn = 2131296926;
+			
+			// aapt resource value: 0x7F09029F
+			public const int realplay_video_btn2 = 2131296927;
+			
+			// aapt resource value: 0x7F0902A0
+			public const int realplay_video_container = 2131296928;
+			
+			// aapt resource value: 0x7F0902A1
+			public const int realplay_video_container2 = 2131296929;
+			
+			// aapt resource value: 0x7F0902A2
+			public const int realplay_video_container_ly = 2131296930;
+			
+			// aapt resource value: 0x7F0902A3
+			public const int realplay_video_container_ly2 = 2131296931;
+			
+			// aapt resource value: 0x7F0902A4
+			public const int realplay_video_start_btn = 2131296932;
+			
+			// aapt resource value: 0x7F0902A5
+			public const int realplay_video_start_btn2 = 2131296933;
+			
+			// aapt resource value: 0x7F0902A6
+			public const int realplay_waiting_lr = 2131296934;
+			
+			// aapt resource value: 0x7F0902A7
+			public const int realplay_watting_pb = 2131296935;
+			
+			// aapt resource value: 0x7F0902A8
+			public const int realplay_watting_tv = 2131296936;
+			
+			// aapt resource value: 0x7F0902A9
+			public const int realplay_wnd_sv = 2131296937;
+			
+			// aapt resource value: 0x7F0902AA
+			public const int recycler_view = 2131296938;
+			
+			// aapt resource value: 0x7F0902AB
+			public const int refresh_button = 2131296939;
+			
+			// aapt resource value: 0x7F0902AC
+			public const int refresh_layout = 2131296940;
+			
+			// aapt resource value: 0x7F0902AD
+			public const int refresh_tip = 2131296941;
+			
+			// aapt resource value: 0x7F0902AE
+			public const int remoteFrame = 2131296942;
+			
+			// aapt resource value: 0x7F0902AF
+			public const int remoteFrameContainer = 2131296943;
+			
+			// aapt resource value: 0x7F0902BC
+			public const int remoteplayback_begin_time_tv = 2131296956;
+			
+			// aapt resource value: 0x7F0902BD
+			public const int remoteplayback_capture_iv = 2131296957;
+			
+			// aapt resource value: 0x7F0902BE
+			public const int remoteplayback_capture_rl = 2131296958;
+			
+			// aapt resource value: 0x7F0902BF
+			public const int remoteplayback_capture_watermark_iv = 2131296959;
+			
+			// aapt resource value: 0x7F0902C0
+			public const int remoteplayback_control_rl = 2131296960;
+			
+			// aapt resource value: 0x7F0902C1
+			public const int remoteplayback_end_time_tv = 2131296961;
+			
+			// aapt resource value: 0x7F0902C2
+			public const int remoteplayback_file_time_bar = 2131296962;
+			
+			// aapt resource value: 0x7F0902C3
+			public const int remoteplayback_flow_tv = 2131296963;
+			
+			// aapt resource value: 0x7F0902C4
+			public const int remoteplayback_full_down_btn = 2131296964;
+			
+			// aapt resource value: 0x7F0902C5
+			public const int remoteplayback_full_flow_ly = 2131296965;
+			
+			// aapt resource value: 0x7F0902C6
+			public const int remoteplayback_full_flow_tv = 2131296966;
+			
+			// aapt resource value: 0x7F0902C7
+			public const int remoteplayback_full_operate_bar = 2131296967;
+			
+			// aapt resource value: 0x7F0902C8
+			public const int remoteplayback_full_play_btn = 2131296968;
+			
+			// aapt resource value: 0x7F0902C9
+			public const int remoteplayback_full_previously_btn = 2131296969;
+			
+			// aapt resource value: 0x7F0902CA
+			public const int remoteplayback_full_rate_tv = 2131296970;
+			
+			// aapt resource value: 0x7F0902CB
+			public const int remoteplayback_full_sound_btn = 2131296971;
+			
+			// aapt resource value: 0x7F0902CC
+			public const int remoteplayback_full_video_btn = 2131296972;
+			
+			// aapt resource value: 0x7F0902CD
+			public const int remoteplayback_full_video_container = 2131296973;
+			
+			// aapt resource value: 0x7F0902CE
+			public const int remoteplayback_full_video_start_btn = 2131296974;
+			
+			// aapt resource value: 0x7F0902CF
+			public const int remoteplayback_loading_iv = 2131296975;
+			
+			// aapt resource value: 0x7F0902D0
+			public const int remoteplayback_loading_ly = 2131296976;
+			
+			// aapt resource value: 0x7F0902D1
+			public const int remoteplayback_loading_pb_ly = 2131296977;
+			
+			// aapt resource value: 0x7F0902D2
+			public const int remoteplayback_loading_play_btn = 2131296978;
+			
+			// aapt resource value: 0x7F0902D3
+			public const int remoteplayback_loading_tv = 2131296979;
+			
+			// aapt resource value: 0x7F0902D4
+			public const int remoteplayback_operate_bar = 2131296980;
+			
+			// aapt resource value: 0x7F0902D5
+			public const int remoteplayback_page_ly = 2131296981;
+			
+			// aapt resource value: 0x7F0902D6
+			public const int remoteplayback_play_btn = 2131296982;
+			
+			// aapt resource value: 0x7F0902D7
+			public const int remoteplayback_play_rl = 2131296983;
+			
+			// aapt resource value: 0x7F0902D8
+			public const int remoteplayback_previously_btn = 2131296984;
+			
+			// aapt resource value: 0x7F0902DB
+			public const int remoteplayback_progressbar = 2131296987;
+			
+			// aapt resource value: 0x7F0902D9
+			public const int remoteplayback_progress_ly = 2131296985;
+			
+			// aapt resource value: 0x7F0902DA
+			public const int remoteplayback_progress_seekbar = 2131296986;
+			
+			// aapt resource value: 0x7F0902DC
+			public const int remoteplayback_ratio_tv = 2131296988;
+			
+			// aapt resource value: 0x7F0902DD
+			public const int remoteplayback_record_iv = 2131296989;
+			
+			// aapt resource value: 0x7F0902DE
+			public const int remoteplayback_record_ly = 2131296990;
+			
+			// aapt resource value: 0x7F0902DF
+			public const int remoteplayback_record_tv = 2131296991;
+			
+			// aapt resource value: 0x7F0902E0
+			public const int remoteplayback_replay_btn = 2131296992;
+			
+			// aapt resource value: 0x7F0902E1
+			public const int remoteplayback_small_previously_btn = 2131296993;
 			
 			// aapt resource value: 0x7F0902E2
-			public const int right = 2131296994;
+			public const int remoteplayback_small_video_btn = 2131296994;
 			
 			// aapt resource value: 0x7F0902E3
-			public const int right_icon = 2131296995;
+			public const int remoteplayback_small_video_container = 2131296995;
 			
 			// aapt resource value: 0x7F0902E4
-			public const int right_side = 2131296996;
+			public const int remoteplayback_small_video_start_btn = 2131296996;
 			
 			// aapt resource value: 0x7F0902E5
-			public const int rv_multi_screen = 2131296997;
+			public const int remoteplayback_sound_btn = 2131296997;
 			
 			// aapt resource value: 0x7F0902E6
-			public const int rv_topbar = 2131296998;
-			
-			// aapt resource value: 0x7F0902E7
-			public const int safe_box_tip = 2131296999;
+			public const int remoteplayback_sv = 2131296998;
 			
 			// aapt resource value: 0x7F0902E8
-			public const int sample_text = 2131297000;
+			public const int remoteplayback_timebar = 2131297000;
 			
 			// aapt resource value: 0x7F0902E9
-			public const int save_image_matrix = 2131297001;
+			public const int remoteplayback_timebar_rl = 2131297001;
+			
+			// aapt resource value: 0x7F0902E7
+			public const int remoteplayback_time_tv = 2131296999;
 			
 			// aapt resource value: 0x7F0902EA
-			public const int save_non_transition_alpha = 2131297002;
+			public const int remoteplayback_tip_tv = 2131297002;
 			
 			// aapt resource value: 0x7F0902EB
-			public const int save_scale_type = 2131297003;
+			public const int remoteplayback_video_btn = 2131297003;
+			
+			// aapt resource value: 0x7F0902EC
+			public const int remoteplayback_video_container = 2131297004;
+			
+			// aapt resource value: 0x7F0902ED
+			public const int remoteplayback_video_start_btn = 2131297005;
+			
+			// aapt resource value: 0x7F0902B0
+			public const int remoteVideo = 2131296944;
+			
+			// aapt resource value: 0x7F0902B1
+			public const int remote_list_page = 2131296945;
+			
+			// aapt resource value: 0x7F0902B2
+			public const int remote_loading_buffer_tv = 2131296946;
+			
+			// aapt resource value: 0x7F0902B3
+			public const int remote_loading_iv = 2131296947;
+			
+			// aapt resource value: 0x7F0902B4
+			public const int remote_playback_area = 2131296948;
+			
+			// aapt resource value: 0x7F0902B5
+			public const int remote_playback_capture_btn = 2131296949;
+			
+			// aapt resource value: 0x7F0902B6
+			public const int remote_playback_download_btn = 2131296950;
+			
+			// aapt resource value: 0x7F0902B7
+			public const int remote_playback_flow_tv = 2131296951;
+			
+			// aapt resource value: 0x7F0902B8
+			public const int remote_playback_pause_btn = 2131296952;
+			
+			// aapt resource value: 0x7F0902B9
+			public const int remote_playback_sound_btn = 2131296953;
+			
+			// aapt resource value: 0x7F0902BA
+			public const int remote_playback_video_recording_btn = 2131296954;
+			
+			// aapt resource value: 0x7F0902BB
+			public const int remote_playback_wnd_sv = 2131296955;
+			
+			// aapt resource value: 0x7F0902EE
+			public const int render_texture_view = 2131297006;
+			
+			// aapt resource value: 0x7F0902EF
+			public const int render_texture_view_soft = 2131297007;
+			
+			// aapt resource value: 0x7F0902F0
+			public const int replay_btn = 2131297008;
+			
+			// aapt resource value: 0x7F0902F1
+			public const int requestA = 2131297009;
+			
+			// aapt resource value: 0x7F0902F2
+			public const int requestMasterAudio = 2131297010;
+			
+			// aapt resource value: 0x7F0902F3
+			public const int requestMasterVideo = 2131297011;
+			
+			// aapt resource value: 0x7F0902F4
+			public const int requestV = 2131297012;
+			
+			// aapt resource value: 0x7F0902F5
+			public const int restart_preview = 2131297013;
+			
+			// aapt resource value: 0x7F0902F6
+			public const int retry_btn = 2131297014;
+			
+			// aapt resource value: 0x7F0902F7
+			public const int retry_button = 2131297015;
+			
+			// aapt resource value: 0x7F0902F8
+			public const int return_scan_result = 2131297016;
+			
+			// aapt resource value: 0x7F0902F9
+			public const int reverseCall = 2131297017;
+			
+			// aapt resource value: 0x7F0902FA
+			public const int reverseCallInfo = 2131297018;
+			
+			// aapt resource value: 0x7F09024C
+			public const int re_next_area = 2131296844;
+			
+			// aapt resource value: 0x7F0902FB
+			public const int right = 2131297019;
+			
+			// aapt resource value: 0x7F0902FC
+			public const int right_icon = 2131297020;
+			
+			// aapt resource value: 0x7F0902FD
+			public const int right_side = 2131297021;
+			
+			// aapt resource value: 0x7F0902FE
+			public const int room_id = 2131297022;
+			
+			// aapt resource value: 0x7F0902FF
+			public const int room_id_text = 2131297023;
+			
+			// aapt resource value: 0x7F090300
+			public const int rv_multi_screen = 2131297024;
+			
+			// aapt resource value: 0x7F090301
+			public const int rv_topbar = 2131297025;
+			
+			// aapt resource value: 0x7F090302
+			public const int safe_box_tip = 2131297026;
+			
+			// aapt resource value: 0x7F090303
+			public const int sample_text = 2131297027;
+			
+			// aapt resource value: 0x7F090304
+			public const int save_image_matrix = 2131297028;
+			
+			// aapt resource value: 0x7F090305
+			public const int save_non_transition_alpha = 2131297029;
+			
+			// aapt resource value: 0x7F090306
+			public const int save_scale_type = 2131297030;
 			
 			// aapt resource value: 0x7F09000D
 			public const int Scale = 2131296269;
 			
-			// aapt resource value: 0x7F0902EC
-			public const int screen = 2131297004;
-			
-			// aapt resource value: 0x7F0902ED
-			public const int scroll = 2131297005;
-			
-			// aapt resource value: 0x7F0902F1
-			public const int scrollable = 2131297009;
-			
-			// aapt resource value: 0x7F0902EE
-			public const int scrollIndicatorDown = 2131297006;
-			
-			// aapt resource value: 0x7F0902EF
-			public const int scrollIndicatorUp = 2131297007;
-			
-			// aapt resource value: 0x7F0902F0
-			public const int scrollView = 2131297008;
-			
-			// aapt resource value: 0x7F0902F2
-			public const int searchAnim = 2131297010;
-			
-			// aapt resource value: 0x7F0902F3
-			public const int searchBtn = 2131297011;
-			
-			// aapt resource value: 0x7F0902F4
-			public const int searchEditTextContainer = 2131297012;
-			
-			// aapt resource value: 0x7F0902F5
-			public const int searchFragment = 2131297013;
-			
-			// aapt resource value: 0x7F0902F6
-			public const int search_badge = 2131297014;
-			
-			// aapt resource value: 0x7F0902F7
-			public const int search_bar = 2131297015;
-			
-			// aapt resource value: 0x7F0902F8
-			public const int search_button = 2131297016;
-			
-			// aapt resource value: 0x7F0902F9
-			public const int search_close_btn = 2131297017;
-			
-			// aapt resource value: 0x7F0902FA
-			public const int search_edit_frame = 2131297018;
-			
-			// aapt resource value: 0x7F0902FB
-			public const int search_go_btn = 2131297019;
-			
-			// aapt resource value: 0x7F0902FC
-			public const int search_mag_icon = 2131297020;
-			
-			// aapt resource value: 0x7F0902FD
-			public const int search_plate = 2131297021;
-			
-			// aapt resource value: 0x7F0902FE
-			public const int search_src_text = 2131297022;
-			
-			// aapt resource value: 0x7F0902FF
-			public const int search_voice_btn = 2131297023;
-			
-			// aapt resource value: 0x7F090300
-			public const int second = 2131297024;
-			
-			// aapt resource value: 0x7F090301
-			public const int select_dialog_listview = 2131297025;
-			
-			// aapt resource value: 0x7F090302
-			public const int sendA = 2131297026;
-			
-			// aapt resource value: 0x7F090303
-			public const int sendCustomData = 2131297027;
-			
-			// aapt resource value: 0x7F090304
-			public const int sendV = 2131297028;
-			
-			// aapt resource value: 0x7F090305
-			public const int separate_line = 2131297029;
-			
-			// aapt resource value: 0x7F090306
-			public const int serial_tv = 2131297030;
-			
 			// aapt resource value: 0x7F090307
-			public const int seriesNumberEt = 2131297031;
+			public const int screen = 2131297031;
+			
+			// aapt resource value: 0x7F090308
+			public const int scroll = 2131297032;
+			
+			// aapt resource value: 0x7F09030C
+			public const int scrollable = 2131297036;
+			
+			// aapt resource value: 0x7F090309
+			public const int scrollIndicatorDown = 2131297033;
+			
+			// aapt resource value: 0x7F09030A
+			public const int scrollIndicatorUp = 2131297034;
+			
+			// aapt resource value: 0x7F09030B
+			public const int scrollView = 2131297035;
+			
+			// aapt resource value: 0x7F09030D
+			public const int searchAnim = 2131297037;
+			
+			// aapt resource value: 0x7F09030E
+			public const int searchBtn = 2131297038;
+			
+			// aapt resource value: 0x7F09030F
+			public const int searchEditTextContainer = 2131297039;
+			
+			// aapt resource value: 0x7F090310
+			public const int searchFragment = 2131297040;
+			
+			// aapt resource value: 0x7F090311
+			public const int search_badge = 2131297041;
+			
+			// aapt resource value: 0x7F090312
+			public const int search_bar = 2131297042;
+			
+			// aapt resource value: 0x7F090313
+			public const int search_button = 2131297043;
+			
+			// aapt resource value: 0x7F090314
+			public const int search_close_btn = 2131297044;
+			
+			// aapt resource value: 0x7F090315
+			public const int search_edit_frame = 2131297045;
+			
+			// aapt resource value: 0x7F090316
+			public const int search_go_btn = 2131297046;
+			
+			// aapt resource value: 0x7F090317
+			public const int search_mag_icon = 2131297047;
+			
+			// aapt resource value: 0x7F090318
+			public const int search_plate = 2131297048;
+			
+			// aapt resource value: 0x7F090319
+			public const int search_src_text = 2131297049;
+			
+			// aapt resource value: 0x7F09031A
+			public const int search_voice_btn = 2131297050;
+			
+			// aapt resource value: 0x7F09031B
+			public const int second = 2131297051;
+			
+			// aapt resource value: 0x7F09031C
+			public const int select_dialog_listview = 2131297052;
+			
+			// aapt resource value: 0x7F09031D
+			public const int select_ipc_talkback = 2131297053;
+			
+			// aapt resource value: 0x7F09031E
+			public const int select_nvr_talkback = 2131297054;
+			
+			// aapt resource value: 0x7F09031F
+			public const int sendA = 2131297055;
+			
+			// aapt resource value: 0x7F090320
+			public const int sendCustomData = 2131297056;
+			
+			// aapt resource value: 0x7F090321
+			public const int sendV = 2131297057;
+			
+			// aapt resource value: 0x7F090322
+			public const int separate_line = 2131297058;
+			
+			// aapt resource value: 0x7F090323
+			public const int serial_tv = 2131297059;
+			
+			// aapt resource value: 0x7F090324
+			public const int seriesNumberEt = 2131297060;
 			
 			// aapt resource value: 0x7F09000A
 			public const int SHIFT = 2131296266;
 			
-			// aapt resource value: 0x7F090308
-			public const int shipin7_logo_lyt = 2131297032;
-			
-			// aapt resource value: 0x7F090309
-			public const int shortcut = 2131297033;
-			
-			// aapt resource value: 0x7F09030A
-			public const int show = 2131297034;
-			
-			// aapt resource value: 0x7F09030B
-			public const int showCustom = 2131297035;
-			
-			// aapt resource value: 0x7F09030C
-			public const int showHome = 2131297036;
-			
-			// aapt resource value: 0x7F09030D
-			public const int showTitle = 2131297037;
-			
-			// aapt resource value: 0x7F09030E
-			public const int sign_et = 2131297038;
-			
-			// aapt resource value: 0x7F09030F
-			public const int smallLabel = 2131297039;
-			
-			// aapt resource value: 0x7F090310
-			public const int sms_code_et = 2131297040;
-			
-			// aapt resource value: 0x7F090311
-			public const int sms_code_lyt = 2131297041;
-			
-			// aapt resource value: 0x7F090312
-			public const int sms_verify_dailog_ly = 2131297042;
-			
-			// aapt resource value: 0x7F090313
-			public const int snackbar_action = 2131297043;
-			
-			// aapt resource value: 0x7F090314
-			public const int snackbar_text = 2131297044;
-			
-			// aapt resource value: 0x7F090315
-			public const int snap = 2131297045;
-			
-			// aapt resource value: 0x7F090316
-			public const int snapshot = 2131297046;
-			
-			// aapt resource value: 0x7F090317
-			public const int sound_line = 2131297047;
-			
-			// aapt resource value: 0x7F090319
-			public const int spacer = 2131297049;
-			
-			// aapt resource value: 0x7F09031A
-			public const int split_action_bar = 2131297050;
-			
-			// aapt resource value: 0x7F09031B
-			public const int spread = 2131297051;
-			
-			// aapt resource value: 0x7F09031C
-			public const int spread_inside = 2131297052;
-			
-			// aapt resource value: 0x7F090318
-			public const int sp_server_area = 2131297048;
-			
-			// aapt resource value: 0x7F09031D
-			public const int squareColumnItem = 2131297053;
-			
-			// aapt resource value: 0x7F09031E
-			public const int squareVideo = 2131297054;
-			
-			// aapt resource value: 0x7F09031F
-			public const int squareVideoList = 2131297055;
-			
-			// aapt resource value: 0x7F090320
-			public const int square_channel = 2131297056;
-			
-			// aapt resource value: 0x7F090321
-			public const int src_atop = 2131297057;
-			
-			// aapt resource value: 0x7F090322
-			public const int src_in = 2131297058;
-			
-			// aapt resource value: 0x7F090323
-			public const int src_over = 2131297059;
-			
-			// aapt resource value: 0x7F090324
-			public const int srl_classics_arrow = 2131297060;
-			
 			// aapt resource value: 0x7F090325
-			public const int srl_classics_center = 2131297061;
+			public const int shipin7_logo_lyt = 2131297061;
 			
 			// aapt resource value: 0x7F090326
-			public const int srl_classics_progress = 2131297062;
+			public const int shortcut = 2131297062;
 			
 			// aapt resource value: 0x7F090327
-			public const int srl_classics_title = 2131297063;
+			public const int show = 2131297063;
 			
 			// aapt resource value: 0x7F090328
-			public const int srl_classics_update = 2131297064;
+			public const int showCustom = 2131297064;
 			
 			// aapt resource value: 0x7F090329
-			public const int standard = 2131297065;
+			public const int showHome = 2131297065;
 			
 			// aapt resource value: 0x7F09032A
-			public const int start = 2131297066;
+			public const int showTitle = 2131297066;
 			
 			// aapt resource value: 0x7F09032B
-			public const int startAVMsg = 2131297067;
+			public const int sign_et = 2131297067;
 			
 			// aapt resource value: 0x7F09032C
-			public const int startDoorKey = 2131297068;
+			public const int smallLabel = 2131297068;
 			
 			// aapt resource value: 0x7F09032D
-			public const int startLocalRecord = 2131297069;
+			public const int sms_code_et = 2131297069;
 			
 			// aapt resource value: 0x7F09032E
-			public const int startReadCard = 2131297070;
+			public const int sms_code_lyt = 2131297070;
 			
 			// aapt resource value: 0x7F09032F
-			public const int startRecord = 2131297071;
+			public const int sms_verify_dailog_ly = 2131297071;
 			
 			// aapt resource value: 0x7F090330
-			public const int startRecordLocalAudio = 2131297072;
+			public const int snackbar_action = 2131297072;
 			
 			// aapt resource value: 0x7F090331
-			public const int startRecordPeerAudio = 2131297073;
+			public const int snackbar_text = 2131297073;
 			
 			// aapt resource value: 0x7F090332
-			public const int startStream = 2131297074;
+			public const int snap = 2131297074;
 			
 			// aapt resource value: 0x7F090333
-			public const int startWatchDog = 2131297075;
+			public const int snapshot = 2131297075;
 			
 			// aapt resource value: 0x7F090334
-			public const int start_stop = 2131297076;
-			
-			// aapt resource value: 0x7F090335
-			public const int start_stop_stream = 2131297077;
+			public const int sound_line = 2131297076;
 			
 			// aapt resource value: 0x7F090336
-			public const int status = 2131297078;
+			public const int spacer = 2131297078;
 			
 			// aapt resource value: 0x7F090337
-			public const int status_bar_latest_event_content = 2131297079;
+			public const int split_action_bar = 2131297079;
 			
 			// aapt resource value: 0x7F090338
-			public const int stopAVMsg = 2131297080;
+			public const int spread = 2131297080;
 			
 			// aapt resource value: 0x7F090339
-			public const int stopDoorKey = 2131297081;
+			public const int spread_inside = 2131297081;
+			
+			// aapt resource value: 0x7F090335
+			public const int sp_server_area = 2131297077;
 			
 			// aapt resource value: 0x7F09033A
-			public const int stopLocalRecord = 2131297082;
+			public const int squareColumnItem = 2131297082;
 			
 			// aapt resource value: 0x7F09033B
-			public const int stopReadCard = 2131297083;
+			public const int squareVideo = 2131297083;
 			
 			// aapt resource value: 0x7F09033C
-			public const int stopRecord = 2131297084;
+			public const int squareVideoList = 2131297084;
 			
 			// aapt resource value: 0x7F09033D
-			public const int stopRecordLocalAudio = 2131297085;
+			public const int square_channel = 2131297085;
 			
 			// aapt resource value: 0x7F09033E
-			public const int stopRecordPeerAudio = 2131297086;
+			public const int src_atop = 2131297086;
 			
 			// aapt resource value: 0x7F09033F
-			public const int stopStream = 2131297087;
+			public const int src_in = 2131297087;
 			
 			// aapt resource value: 0x7F090340
-			public const int stopWatchDog = 2131297088;
+			public const int src_over = 2131297088;
 			
 			// aapt resource value: 0x7F090341
-			public const int storage_layout = 2131297089;
+			public const int srl_classics_arrow = 2131297089;
 			
 			// aapt resource value: 0x7F090342
-			public const int storage_notice = 2131297090;
+			public const int srl_classics_center = 2131297090;
+			
+			// aapt resource value: 0x7F090343
+			public const int srl_classics_progress = 2131297091;
+			
+			// aapt resource value: 0x7F090344
+			public const int srl_classics_title = 2131297092;
+			
+			// aapt resource value: 0x7F090345
+			public const int srl_classics_update = 2131297093;
+			
+			// aapt resource value: 0x7F090346
+			public const int standard = 2131297094;
+			
+			// aapt resource value: 0x7F090347
+			public const int start = 2131297095;
+			
+			// aapt resource value: 0x7F090348
+			public const int startAVMsg = 2131297096;
+			
+			// aapt resource value: 0x7F090349
+			public const int startDoorKey = 2131297097;
+			
+			// aapt resource value: 0x7F09034A
+			public const int startLocalRecord = 2131297098;
+			
+			// aapt resource value: 0x7F09034B
+			public const int startReadCard = 2131297099;
+			
+			// aapt resource value: 0x7F09034C
+			public const int startRecord = 2131297100;
+			
+			// aapt resource value: 0x7F09034D
+			public const int startRecordLocalAudio = 2131297101;
+			
+			// aapt resource value: 0x7F09034E
+			public const int startRecordPeerAudio = 2131297102;
+			
+			// aapt resource value: 0x7F09034F
+			public const int startStream = 2131297103;
+			
+			// aapt resource value: 0x7F090350
+			public const int startWatchDog = 2131297104;
+			
+			// aapt resource value: 0x7F090351
+			public const int start_stop = 2131297105;
+			
+			// aapt resource value: 0x7F090352
+			public const int start_stop_stream = 2131297106;
+			
+			// aapt resource value: 0x7F090353
+			public const int status = 2131297107;
+			
+			// aapt resource value: 0x7F090354
+			public const int status_bar_latest_event_content = 2131297108;
+			
+			// aapt resource value: 0x7F090355
+			public const int stopAVMsg = 2131297109;
+			
+			// aapt resource value: 0x7F090356
+			public const int stopDoorKey = 2131297110;
+			
+			// aapt resource value: 0x7F090357
+			public const int stopLocalRecord = 2131297111;
+			
+			// aapt resource value: 0x7F090358
+			public const int stopReadCard = 2131297112;
+			
+			// aapt resource value: 0x7F090359
+			public const int stopRecord = 2131297113;
+			
+			// aapt resource value: 0x7F09035A
+			public const int stopRecordLocalAudio = 2131297114;
+			
+			// aapt resource value: 0x7F09035B
+			public const int stopRecordPeerAudio = 2131297115;
+			
+			// aapt resource value: 0x7F09035C
+			public const int stopStream = 2131297116;
+			
+			// aapt resource value: 0x7F09035D
+			public const int stopWatchDog = 2131297117;
+			
+			// aapt resource value: 0x7F09035E
+			public const int storage_layout = 2131297118;
+			
+			// aapt resource value: 0x7F09035F
+			public const int storage_notice = 2131297119;
 			
 			// aapt resource value: 0x7F09000B
 			public const int STROKE = 2131296267;
 			
-			// aapt resource value: 0x7F090344
-			public const int submenuarrow = 2131297092;
+			// aapt resource value: 0x7F090361
+			public const int submenuarrow = 2131297121;
 			
-			// aapt resource value: 0x7F090345
-			public const int submit = 2131297093;
+			// aapt resource value: 0x7F090362
+			public const int submit = 2131297122;
 			
-			// aapt resource value: 0x7F090346
-			public const int submit_area = 2131297094;
+			// aapt resource value: 0x7F090363
+			public const int submit_area = 2131297123;
 			
-			// aapt resource value: 0x7F090347
-			public const int subtitle = 2131297095;
+			// aapt resource value: 0x7F090364
+			public const int subtitle = 2131297124;
 			
-			// aapt resource value: 0x7F090343
-			public const int sub_title_text = 2131297091;
+			// aapt resource value: 0x7F090360
+			public const int sub_title_text = 2131297120;
 			
-			// aapt resource value: 0x7F090348
-			public const int successIcon = 2131297096;
+			// aapt resource value: 0x7F090365
+			public const int successIcon = 2131297125;
 			
-			// aapt resource value: 0x7F090349
-			public const int surfaceview = 2131297097;
+			// aapt resource value: 0x7F090366
+			public const int surfaceview = 2131297126;
 			
 			// aapt resource value: 0x7F09000C
 			public const int SYM = 2131296268;
 			
-			// aapt resource value: 0x7F09034A
-			public const int tabMode = 2131297098;
+			// aapt resource value: 0x7F090367
+			public const int tabMode = 2131297127;
 			
-			// aapt resource value: 0x7F09034B
-			public const int tab_alarmlist_btn = 2131297099;
+			// aapt resource value: 0x7F090368
+			public const int tab_alarmlist_btn = 2131297128;
 			
-			// aapt resource value: 0x7F09034C
-			public const int tab_alarmlist_rl = 2131297100;
+			// aapt resource value: 0x7F090369
+			public const int tab_alarmlist_rl = 2131297129;
 			
-			// aapt resource value: 0x7F09034D
-			public const int tab_devicedefence_btn = 2131297101;
+			// aapt resource value: 0x7F09036A
+			public const int tab_devicedefence_btn = 2131297130;
 			
-			// aapt resource value: 0x7F09034E
-			public const int tab_devicedefence_rl = 2131297102;
+			// aapt resource value: 0x7F09036B
+			public const int tab_devicedefence_rl = 2131297131;
 			
-			// aapt resource value: 0x7F09034F
-			public const int tab_devicepicture_btn = 2131297103;
+			// aapt resource value: 0x7F09036C
+			public const int tab_devicepicture_btn = 2131297132;
 			
-			// aapt resource value: 0x7F090350
-			public const int tab_devicepicture_rl = 2131297104;
+			// aapt resource value: 0x7F09036D
+			public const int tab_devicepicture_rl = 2131297133;
 			
-			// aapt resource value: 0x7F090351
-			public const int tab_devicevideo_btn = 2131297105;
-			
-			// aapt resource value: 0x7F090352
-			public const int tab_devicevideo_rl = 2131297106;
-			
-			// aapt resource value: 0x7F090353
-			public const int tab_remoteplayback_btn = 2131297107;
-			
-			// aapt resource value: 0x7F090354
-			public const int tab_remoteplayback_rl = 2131297108;
-			
-			// aapt resource value: 0x7F090355
-			public const int tab_setdevice_btn = 2131297109;
-			
-			// aapt resource value: 0x7F090356
-			public const int tab_setdevice_rl = 2131297110;
-			
-			// aapt resource value: 0x7F090357
-			public const int tab_video_talk_btn = 2131297111;
-			
-			// aapt resource value: 0x7F090358
-			public const int tab_video_talk_rl = 2131297112;
-			
-			// aapt resource value: 0x7F090359
-			public const int tag_key_position = 2131297113;
-			
-			// aapt resource value: 0x7F09035A
-			public const int talkback_close_btn = 2131297114;
-			
-			// aapt resource value: 0x7F09035B
-			public const int talkback_control_btn = 2131297115;
-			
-			// aapt resource value: 0x7F09035C
-			public const int talkback_rv = 2131297116;
-			
-			// aapt resource value: 0x7F09035D
-			public const int test = 2131297117;
-			
-			// aapt resource value: 0x7F09035E
-			public const int testWatchDogReboot = 2131297118;
-			
-			// aapt resource value: 0x7F09035F
-			public const int text = 2131297119;
-			
-			// aapt resource value: 0x7F090360
-			public const int text1 = 2131297120;
-			
-			// aapt resource value: 0x7F090361
-			public const int text2 = 2131297121;
-			
-			// aapt resource value: 0x7F090362
-			public const int text3 = 2131297122;
+			// aapt resource value: 0x7F09036E
+			public const int tab_devicevideo_btn = 2131297134;
 			
 			// aapt resource value: 0x7F09036F
-			public const int textinput_counter = 2131297135;
+			public const int tab_devicevideo_rl = 2131297135;
 			
 			// aapt resource value: 0x7F090370
-			public const int textinput_error = 2131297136;
-			
-			// aapt resource value: 0x7F090363
-			public const int textSpacerNoButtons = 2131297123;
-			
-			// aapt resource value: 0x7F090364
-			public const int textSpacerNoTitle = 2131297124;
+			public const int tab_remoteplayback_btn = 2131297136;
 			
 			// aapt resource value: 0x7F090371
-			public const int textureView_play = 2131297137;
+			public const int tab_remoteplayback_rl = 2131297137;
 			
 			// aapt resource value: 0x7F090372
-			public const int texture_view_play_window = 2131297138;
+			public const int tab_setdevice_btn = 2131297138;
+			
+			// aapt resource value: 0x7F090373
+			public const int tab_setdevice_rl = 2131297139;
+			
+			// aapt resource value: 0x7F090374
+			public const int tab_video_talk_btn = 2131297140;
+			
+			// aapt resource value: 0x7F090375
+			public const int tab_video_talk_rl = 2131297141;
+			
+			// aapt resource value: 0x7F090376
+			public const int tag_key_position = 2131297142;
+			
+			// aapt resource value: 0x7F090377
+			public const int talkback_close_btn = 2131297143;
+			
+			// aapt resource value: 0x7F090378
+			public const int talkback_control_btn = 2131297144;
+			
+			// aapt resource value: 0x7F090379
+			public const int talkback_rv = 2131297145;
+			
+			// aapt resource value: 0x7F09037A
+			public const int test = 2131297146;
+			
+			// aapt resource value: 0x7F09037B
+			public const int testWatchDogReboot = 2131297147;
+			
+			// aapt resource value: 0x7F09037C
+			public const int text = 2131297148;
+			
+			// aapt resource value: 0x7F09037D
+			public const int text1 = 2131297149;
+			
+			// aapt resource value: 0x7F09037E
+			public const int text2 = 2131297150;
+			
+			// aapt resource value: 0x7F09037F
+			public const int text3 = 2131297151;
+			
+			// aapt resource value: 0x7F09038C
+			public const int textinput_counter = 2131297164;
+			
+			// aapt resource value: 0x7F09038D
+			public const int textinput_error = 2131297165;
+			
+			// aapt resource value: 0x7F090380
+			public const int textSpacerNoButtons = 2131297152;
+			
+			// aapt resource value: 0x7F090381
+			public const int textSpacerNoTitle = 2131297153;
+			
+			// aapt resource value: 0x7F09038E
+			public const int textureView_play = 2131297166;
+			
+			// aapt resource value: 0x7F09038F
+			public const int texture_view_play_window = 2131297167;
 			
 			// aapt resource value: 0x7F09000E
 			public const int TextView01 = 2131296270;
@@ -9358,356 +9445,383 @@
 			// aapt resource value: 0x7F09000F
 			public const int TextView03 = 2131296271;
 			
-			// aapt resource value: 0x7F090366
-			public const int text_camerano = 2131297126;
-			
-			// aapt resource value: 0x7F090365
-			public const int text_camera_name = 2131297125;
-			
-			// aapt resource value: 0x7F090367
-			public const int text_device_ip = 2131297127;
-			
-			// aapt resource value: 0x7F090368
-			public const int text_input_password_toggle = 2131297128;
-			
-			// aapt resource value: 0x7F090369
-			public const int text_left = 2131297129;
-			
-			// aapt resource value: 0x7F09036A
-			public const int text_my = 2131297130;
-			
-			// aapt resource value: 0x7F09036B
-			public const int text_right = 2131297131;
-			
-			// aapt resource value: 0x7F09036C
-			public const int text_serial = 2131297132;
-			
-			// aapt resource value: 0x7F09036D
-			public const int text_share = 2131297133;
-			
-			// aapt resource value: 0x7F09036E
-			public const int text_title = 2131297134;
-			
-			// aapt resource value: 0x7F090373
-			public const int time = 2131297139;
-			
-			// aapt resource value: 0x7F090376
-			public const int timeline_image = 2131297142;
-			
-			// aapt resource value: 0x7F090377
-			public const int timepicker = 2131297143;
-			
-			// aapt resource value: 0x7F090378
-			public const int timer = 2131297144;
-			
-			// aapt resource value: 0x7F090374
-			public const int time_text = 2131297140;
-			
-			// aapt resource value: 0x7F090375
-			public const int time_tv = 2131297141;
-			
-			// aapt resource value: 0x7F090379
-			public const int tip = 2131297145;
-			
-			// aapt resource value: 0x7F09037A
-			public const int title = 2131297146;
-			
-			// aapt resource value: 0x7F09037B
-			public const int titleBar = 2131297147;
-			
-			// aapt resource value: 0x7F09037C
-			public const int titleDividerNoCustom = 2131297148;
-			
-			// aapt resource value: 0x7F09037D
-			public const int title_bar = 2131297149;
-			
-			// aapt resource value: 0x7F09037E
-			public const int title_bar_landscape = 2131297150;
-			
-			// aapt resource value: 0x7F09037F
-			public const int title_bar_portrait = 2131297151;
-			
-			// aapt resource value: 0x7F090380
-			public const int title_layout = 2131297152;
-			
-			// aapt resource value: 0x7F090381
-			public const int title_left = 2131297153;
+			// aapt resource value: 0x7F090383
+			public const int text_camerano = 2131297155;
 			
 			// aapt resource value: 0x7F090382
-			public const int title_right = 2131297154;
-			
-			// aapt resource value: 0x7F090383
-			public const int title_template = 2131297155;
+			public const int text_camera_name = 2131297154;
 			
 			// aapt resource value: 0x7F090384
-			public const int title_text = 2131297156;
+			public const int text_device_ip = 2131297156;
 			
 			// aapt resource value: 0x7F090385
-			public const int title_text_layout = 2131297157;
+			public const int text_input_password_toggle = 2131297157;
 			
 			// aapt resource value: 0x7F090386
-			public const int top = 2131297158;
-			
-			// aapt resource value: 0x7F090389
-			public const int topbar = 2131297161;
-			
-			// aapt resource value: 0x7F09038A
-			public const int topbar_right_img = 2131297162;
+			public const int text_left = 2131297158;
 			
 			// aapt resource value: 0x7F090387
-			public const int topPanel = 2131297159;
+			public const int text_my = 2131297159;
 			
 			// aapt resource value: 0x7F090388
-			public const int topTip = 2131297160;
+			public const int text_right = 2131297160;
+			
+			// aapt resource value: 0x7F090389
+			public const int text_serial = 2131297161;
+			
+			// aapt resource value: 0x7F09038A
+			public const int text_share = 2131297162;
 			
 			// aapt resource value: 0x7F09038B
-			public const int touch_loading_buffer_tv = 2131297163;
-			
-			// aapt resource value: 0x7F09038C
-			public const int touch_outside = 2131297164;
-			
-			// aapt resource value: 0x7F09038D
-			public const int touch_progress_layout = 2131297165;
-			
-			// aapt resource value: 0x7F09038E
-			public const int transition_current_scene = 2131297166;
-			
-			// aapt resource value: 0x7F09038F
-			public const int transition_layout_save = 2131297167;
+			public const int text_title = 2131297163;
 			
 			// aapt resource value: 0x7F090390
-			public const int transition_position = 2131297168;
+			public const int time = 2131297168;
+			
+			// aapt resource value: 0x7F090393
+			public const int timeline_image = 2131297171;
+			
+			// aapt resource value: 0x7F090394
+			public const int timepicker = 2131297172;
+			
+			// aapt resource value: 0x7F090395
+			public const int timer = 2131297173;
 			
 			// aapt resource value: 0x7F090391
-			public const int transition_scene_layoutid_cache = 2131297169;
+			public const int time_text = 2131297169;
 			
 			// aapt resource value: 0x7F090392
-			public const int transition_transform = 2131297170;
+			public const int time_tv = 2131297170;
+			
+			// aapt resource value: 0x7F090396
+			public const int tip = 2131297174;
+			
+			// aapt resource value: 0x7F090397
+			public const int title = 2131297175;
+			
+			// aapt resource value: 0x7F090398
+			public const int titleBar = 2131297176;
+			
+			// aapt resource value: 0x7F090399
+			public const int titleDividerNoCustom = 2131297177;
+			
+			// aapt resource value: 0x7F09039A
+			public const int title_bar = 2131297178;
+			
+			// aapt resource value: 0x7F09039B
+			public const int title_bar_landscape = 2131297179;
+			
+			// aapt resource value: 0x7F09039C
+			public const int title_bar_portrait = 2131297180;
+			
+			// aapt resource value: 0x7F09039D
+			public const int title_layout = 2131297181;
+			
+			// aapt resource value: 0x7F09039E
+			public const int title_left = 2131297182;
+			
+			// aapt resource value: 0x7F09039F
+			public const int title_right = 2131297183;
+			
+			// aapt resource value: 0x7F0903A0
+			public const int title_template = 2131297184;
+			
+			// aapt resource value: 0x7F0903A1
+			public const int title_text = 2131297185;
+			
+			// aapt resource value: 0x7F0903A2
+			public const int title_text_layout = 2131297186;
+			
+			// aapt resource value: 0x7F0903A3
+			public const int title_top = 2131297187;
+			
+			// aapt resource value: 0x7F0903A4
+			public const int top = 2131297188;
+			
+			// aapt resource value: 0x7F0903A7
+			public const int topbar = 2131297191;
+			
+			// aapt resource value: 0x7F0903A8
+			public const int topbar_right_img = 2131297192;
+			
+			// aapt resource value: 0x7F0903A5
+			public const int topPanel = 2131297189;
+			
+			// aapt resource value: 0x7F0903A6
+			public const int topTip = 2131297190;
+			
+			// aapt resource value: 0x7F0903A9
+			public const int touch_loading_buffer_tv = 2131297193;
+			
+			// aapt resource value: 0x7F0903AA
+			public const int touch_outside = 2131297194;
+			
+			// aapt resource value: 0x7F0903AB
+			public const int touch_progress_layout = 2131297195;
+			
+			// aapt resource value: 0x7F0903AC
+			public const int transition_current_scene = 2131297196;
+			
+			// aapt resource value: 0x7F0903AD
+			public const int transition_layout_save = 2131297197;
+			
+			// aapt resource value: 0x7F0903AE
+			public const int transition_position = 2131297198;
+			
+			// aapt resource value: 0x7F0903AF
+			public const int transition_scene_layoutid_cache = 2131297199;
+			
+			// aapt resource value: 0x7F0903B0
+			public const int transition_transform = 2131297200;
 			
 			// aapt resource value: 0x7F090010
 			public const int Translate = 2131296272;
 			
-			// aapt resource value: 0x7F090393
-			public const int tvDeviceWifiConfigTip = 2131297171;
-			
-			// aapt resource value: 0x7F090394
-			public const int tvIntroduce1 = 2131297172;
-			
-			// aapt resource value: 0x7F090395
-			public const int tvIntroduce2 = 2131297173;
-			
-			// aapt resource value: 0x7F090396
-			public const int tvMore = 2131297174;
-			
-			// aapt resource value: 0x7F090397
-			public const int tvSSID = 2131297175;
-			
-			// aapt resource value: 0x7F090398
-			public const int tvStatus = 2131297176;
-			
-			// aapt resource value: 0x7F090399
-			public const int tvSuccess = 2131297177;
-			
-			// aapt resource value: 0x7F09039A
-			public const int tvTip = 2131297178;
-			
-			// aapt resource value: 0x7F09039B
-			public const int tvTitle = 2131297179;
-			
-			// aapt resource value: 0x7F09039C
-			public const int tv_adding_to_account = 2131297180;
-			
-			// aapt resource value: 0x7F09039D
-			public const int tv_camera_name = 2131297181;
-			
-			// aapt resource value: 0x7F09039E
-			public const int tv_connecting_to_device = 2131297182;
-			
-			// aapt resource value: 0x7F09039F
-			public const int tv_content = 2131297183;
-			
-			// aapt resource value: 0x7F0903A0
-			public const int tv_decode_type = 2131297184;
-			
-			// aapt resource value: 0x7F0903A1
-			public const int tv_ezviz_account_login = 2131297185;
-			
-			// aapt resource value: 0x7F0903A2
-			public const int tv_file_path = 2131297186;
-			
-			// aapt resource value: 0x7F0903A3
-			public const int tv_ok = 2131297187;
-			
-			// aapt resource value: 0x7F0903A4
-			public const int tv_play_error = 2131297188;
-			
-			// aapt resource value: 0x7F0903A5
-			public const int tv_pwd = 2131297189;
-			
-			// aapt resource value: 0x7F0903A6
-			public const int tv_registering_to_platform = 2131297190;
-			
-			// aapt resource value: 0x7F0903A7
-			public const int tv_sdk_ver = 2131297191;
-			
-			// aapt resource value: 0x7F0903A8
-			public const int tv_ssid = 2131297192;
-			
-			// aapt resource value: 0x7F0903A9
-			public const int tv_stream_type = 2131297193;
-			
-			// aapt resource value: 0x7F0903AA
-			public const int tv_tip = 2131297194;
-			
-			// aapt resource value: 0x7F0903AB
-			public const int tv_title = 2131297195;
-			
-			// aapt resource value: 0x7F0903AC
-			public const int tv_zxing_back = 2131297196;
-			
-			// aapt resource value: 0x7F0903AD
-			public const int tv_zxing_flash = 2131297197;
-			
-			// aapt resource value: 0x7F0903AE
-			public const int tv_zxing_scan = 2131297198;
-			
-			// aapt resource value: 0x7F0903AF
-			public const int txtResult = 2131297199;
-			
-			// aapt resource value: 0x7F0903B0
-			public const int unbind_button = 2131297200;
-			
 			// aapt resource value: 0x7F0903B1
-			public const int uniform = 2131297201;
+			public const int tvDeviceWifiConfigTip = 2131297201;
 			
 			// aapt resource value: 0x7F0903B2
-			public const int up = 2131297202;
+			public const int tvIntroduce1 = 2131297202;
 			
 			// aapt resource value: 0x7F0903B3
-			public const int useLogo = 2131297203;
+			public const int tvIntroduce2 = 2131297203;
 			
 			// aapt resource value: 0x7F0903B4
-			public const int userid_et = 2131297204;
+			public const int tvMore = 2131297204;
 			
 			// aapt resource value: 0x7F0903B5
-			public const int userid_lyt = 2131297205;
+			public const int tvSSID = 2131297205;
 			
 			// aapt resource value: 0x7F0903B6
-			public const int uvc = 2131297206;
+			public const int tvStatus = 2131297206;
 			
 			// aapt resource value: 0x7F0903B7
-			public const int verifycodeEditTextContainer = 2131297207;
+			public const int tvSuccess = 2131297207;
 			
 			// aapt resource value: 0x7F0903B8
-			public const int verifycodeEt = 2131297208;
+			public const int tvTip = 2131297208;
 			
 			// aapt resource value: 0x7F0903B9
-			public const int version = 2131297209;
+			public const int tvTitle = 2131297209;
 			
 			// aapt resource value: 0x7F0903BA
-			public const int version_arrow = 2131297210;
+			public const int tv_adding_to_account = 2131297210;
 			
 			// aapt resource value: 0x7F0903BB
-			public const int version_layout = 2131297211;
+			public const int tv_camera_name = 2131297211;
 			
 			// aapt resource value: 0x7F0903BC
-			public const int version_newest = 2131297212;
+			public const int tv_child_watch_video_talk_notification = 2131297212;
 			
 			// aapt resource value: 0x7F0903BD
-			public const int version_notice = 2131297213;
+			public const int tv_connecting_to_device = 2131297213;
 			
 			// aapt resource value: 0x7F0903BE
-			public const int vertical = 2131297214;
+			public const int tv_content = 2131297214;
 			
 			// aapt resource value: 0x7F0903BF
-			public const int vg_child_watch_video_talk_camera = 2131297215;
+			public const int tv_decode_type = 2131297215;
 			
 			// aapt resource value: 0x7F0903C0
-			public const int vg_child_watch_video_talk_player = 2131297216;
+			public const int tv_ezviz_account_login = 2131297216;
 			
 			// aapt resource value: 0x7F0903C1
-			public const int vg_child_watch_video_talk_video_container = 2131297217;
+			public const int tv_file_path = 2131297217;
 			
 			// aapt resource value: 0x7F0903C2
-			public const int vg_error_tips = 2131297218;
+			public const int tv_ok = 2131297218;
 			
 			// aapt resource value: 0x7F0903C3
-			public const int vg_login_anim = 2131297219;
+			public const int tv_play_error = 2131297219;
 			
 			// aapt resource value: 0x7F0903C4
-			public const int vg_notification_operation_tool_container = 2131297220;
+			public const int tv_pwd = 2131297220;
 			
 			// aapt resource value: 0x7F0903C5
-			public const int vg_play_info = 2131297221;
+			public const int tv_registering_to_platform = 2131297221;
 			
 			// aapt resource value: 0x7F0903C6
-			public const int vg_play_window = 2131297222;
+			public const int tv_sdk_ver = 2131297222;
 			
 			// aapt resource value: 0x7F0903C7
-			public const int videoBackImg = 2131297223;
+			public const int tv_ssid = 2131297223;
 			
 			// aapt resource value: 0x7F0903C8
-			public const int videoParent = 2131297224;
+			public const int tv_stream_type = 2131297224;
 			
 			// aapt resource value: 0x7F0903C9
-			public const int videoTitle = 2131297225;
+			public const int tv_tip = 2131297225;
 			
 			// aapt resource value: 0x7F0903CA
-			public const int video_button = 2131297226;
+			public const int tv_title = 2131297226;
 			
 			// aapt resource value: 0x7F0903CB
-			public const int video_talk_et_room_id = 2131297227;
-			
-			// aapt resource value: 0x7F0903D0
-			public const int viewedCount = 2131297232;
-			
-			// aapt resource value: 0x7F0903D1
-			public const int viewfinder_view = 2131297233;
+			public const int tv_zxing_back = 2131297227;
 			
 			// aapt resource value: 0x7F0903CC
-			public const int viewSort = 2131297228;
+			public const int tv_zxing_flash = 2131297228;
 			
 			// aapt resource value: 0x7F0903CD
-			public const int view_child_watch_video_talk_camera = 2131297229;
+			public const int tv_zxing_scan = 2131297229;
 			
 			// aapt resource value: 0x7F0903CE
-			public const int view_child_watch_video_talk_player = 2131297230;
+			public const int txtResult = 2131297230;
 			
 			// aapt resource value: 0x7F0903CF
-			public const int view_offset_helper = 2131297231;
+			public const int unbind_button = 2131297231;
+			
+			// aapt resource value: 0x7F0903D0
+			public const int uniform = 2131297232;
+			
+			// aapt resource value: 0x7F0903D1
+			public const int up = 2131297233;
 			
 			// aapt resource value: 0x7F0903D2
-			public const int visible = 2131297234;
-			
-			// aapt resource value: 0x7F0903D3
-			public const int wait_bar = 2131297235;
+			public const int useLogo = 2131297234;
 			
 			// aapt resource value: 0x7F0903D4
-			public const int wait_tv = 2131297236;
+			public const int userid_et = 2131297236;
 			
 			// aapt resource value: 0x7F0903D5
-			public const int watting_pb = 2131297237;
-			
-			// aapt resource value: 0x7F0903D7
-			public const int webview = 2131297239;
+			public const int userid_lyt = 2131297237;
 			
 			// aapt resource value: 0x7F0903D6
-			public const int web_login_btn = 2131297238;
+			public const int username_et = 2131297238;
+			
+			// aapt resource value: 0x7F0903D7
+			public const int username_text = 2131297239;
 			
 			// aapt resource value: 0x7F0903D8
-			public const int wifi_tv = 2131297240;
+			public const int username_tv = 2131297240;
+			
+			// aapt resource value: 0x7F0903D3
+			public const int use_custom_pwd_cb = 2131297235;
 			
 			// aapt resource value: 0x7F0903D9
-			public const int withText = 2131297241;
+			public const int uvc = 2131297241;
 			
 			// aapt resource value: 0x7F0903DA
-			public const int wrap = 2131297242;
+			public const int verifycodeEditTextContainer = 2131297242;
 			
 			// aapt resource value: 0x7F0903DB
-			public const int wrap_content = 2131297243;
+			public const int verifycodeEt = 2131297243;
 			
 			// aapt resource value: 0x7F0903DC
-			public const int year = 2131297244;
+			public const int version = 2131297244;
+			
+			// aapt resource value: 0x7F0903DD
+			public const int version_arrow = 2131297245;
+			
+			// aapt resource value: 0x7F0903DE
+			public const int version_layout = 2131297246;
+			
+			// aapt resource value: 0x7F0903DF
+			public const int version_newest = 2131297247;
+			
+			// aapt resource value: 0x7F0903E0
+			public const int version_notice = 2131297248;
+			
+			// aapt resource value: 0x7F0903E1
+			public const int vertical = 2131297249;
+			
+			// aapt resource value: 0x7F0903E2
+			public const int vg_child_watch_video_talk_camera = 2131297250;
+			
+			// aapt resource value: 0x7F0903E3
+			public const int vg_child_watch_video_talk_notification_container = 2131297251;
+			
+			// aapt resource value: 0x7F0903E4
+			public const int vg_child_watch_video_talk_operation_container = 2131297252;
+			
+			// aapt resource value: 0x7F0903E5
+			public const int vg_child_watch_video_talk_player = 2131297253;
+			
+			// aapt resource value: 0x7F0903E6
+			public const int vg_child_watch_video_talk_tool_container = 2131297254;
+			
+			// aapt resource value: 0x7F0903E7
+			public const int vg_child_watch_video_talk_video_container = 2131297255;
+			
+			// aapt resource value: 0x7F0903E8
+			public const int vg_error_tips = 2131297256;
+			
+			// aapt resource value: 0x7F0903E9
+			public const int vg_login_anim = 2131297257;
+			
+			// aapt resource value: 0x7F0903EA
+			public const int vg_notification_operation_tool_container = 2131297258;
+			
+			// aapt resource value: 0x7F0903EB
+			public const int vg_play_info = 2131297259;
+			
+			// aapt resource value: 0x7F0903EC
+			public const int vg_play_window = 2131297260;
+			
+			// aapt resource value: 0x7F0903ED
+			public const int videoBackImg = 2131297261;
+			
+			// aapt resource value: 0x7F0903EE
+			public const int videoParent = 2131297262;
+			
+			// aapt resource value: 0x7F0903EF
+			public const int videoTitle = 2131297263;
+			
+			// aapt resource value: 0x7F0903F0
+			public const int video_button = 2131297264;
+			
+			// aapt resource value: 0x7F0903F1
+			public const int video_talk_et_room_id = 2131297265;
+			
+			// aapt resource value: 0x7F0903F6
+			public const int viewedCount = 2131297270;
+			
+			// aapt resource value: 0x7F0903F7
+			public const int viewfinder_view = 2131297271;
+			
+			// aapt resource value: 0x7F0903F2
+			public const int viewSort = 2131297266;
+			
+			// aapt resource value: 0x7F0903F3
+			public const int view_child_watch_video_talk_camera = 2131297267;
+			
+			// aapt resource value: 0x7F0903F4
+			public const int view_child_watch_video_talk_player = 2131297268;
+			
+			// aapt resource value: 0x7F0903F5
+			public const int view_offset_helper = 2131297269;
+			
+			// aapt resource value: 0x7F0903F8
+			public const int visible = 2131297272;
+			
+			// aapt resource value: 0x7F0903F9
+			public const int wait_bar = 2131297273;
+			
+			// aapt resource value: 0x7F0903FA
+			public const int wait_tv = 2131297274;
+			
+			// aapt resource value: 0x7F0903FB
+			public const int watting_pb = 2131297275;
+			
+			// aapt resource value: 0x7F0903FD
+			public const int webview = 2131297277;
+			
+			// aapt resource value: 0x7F0903FC
+			public const int web_login_btn = 2131297276;
+			
+			// aapt resource value: 0x7F0903FE
+			public const int wifi_tv = 2131297278;
+			
+			// aapt resource value: 0x7F0903FF
+			public const int withText = 2131297279;
+			
+			// aapt resource value: 0x7F090400
+			public const int wrap = 2131297280;
+			
+			// aapt resource value: 0x7F090401
+			public const int wrap_content = 2131297281;
+			
+			// aapt resource value: 0x7F090402
+			public const int year = 2131297282;
 			
 			static Id()
 			{
@@ -9850,7 +9964,7 @@
 			public const int abc_select_dialog_material = 2131427354;
 			
 			// aapt resource value: 0x7F0B001B
-			public const int activity_add_device_to_acount_ez = 2131427355;
+			public const int activity_add_device_to_acount = 2131427355;
 			
 			// aapt resource value: 0x7F0B001C
 			public const int activity_collect_device_info = 2131427356;
@@ -9907,109 +10021,109 @@
 			public const int activity_multi_screen_preview = 2131427373;
 			
 			// aapt resource value: 0x7F0B002E
-			public const int activity_my_collect = 2131427374;
+			public const int activity_multi_video_talk = 2131427374;
 			
 			// aapt resource value: 0x7F0B002F
-			public const int activity_option = 2131427375;
+			public const int activity_multi_video_talk_test = 2131427375;
 			
 			// aapt resource value: 0x7F0B0030
-			public const int activity_origin_stream_control = 2131427376;
+			public const int activity_my_collect = 2131427376;
 			
 			// aapt resource value: 0x7F0B0031
-			public const int activity_rtp_stream_play = 2131427377;
+			public const int activity_option = 2131427377;
 			
 			// aapt resource value: 0x7F0B0032
-			public const int activity_square = 2131427378;
+			public const int activity_origin_stream_control = 2131427378;
 			
 			// aapt resource value: 0x7F0B0033
-			public const int activity_square_video_list = 2131427379;
+			public const int activity_rtp_stream_play = 2131427379;
 			
 			// aapt resource value: 0x7F0B0034
-			public const int activity_square_video_list2 = 2131427380;
+			public const int activity_safety_hat_talk = 2131427380;
 			
 			// aapt resource value: 0x7F0B0035
-			public const int activity_square_video_search = 2131427381;
+			public const int activity_square = 2131427381;
 			
 			// aapt resource value: 0x7F0B0036
-			public const int activity_support = 2131427382;
+			public const int activity_square_video_list = 2131427382;
 			
 			// aapt resource value: 0x7F0B0037
-			public const int activity_test_config_wifi = 2131427383;
+			public const int activity_square_video_list2 = 2131427383;
 			
 			// aapt resource value: 0x7F0B0038
-			public const int activity_test_for_sdk = 2131427384;
+			public const int activity_square_video_search = 2131427384;
 			
 			// aapt resource value: 0x7F0B0039
-			public const int activity_test_page = 2131427385;
+			public const int activity_support = 2131427385;
 			
 			// aapt resource value: 0x7F0B003A
-			public const int activity_video_phone = 2131427386;
+			public const int activity_test_config_wifi = 2131427386;
 			
 			// aapt resource value: 0x7F0B003B
-			public const int activity_video_talk = 2131427387;
+			public const int activity_test_for_sdk = 2131427387;
 			
 			// aapt resource value: 0x7F0B003C
-			public const int add_camera_by_series_number_page = 2131427388;
+			public const int activity_test_page = 2131427388;
 			
 			// aapt resource value: 0x7F0B003D
-			public const int auto_wifi_connecting = 2131427389;
+			public const int activity_video_phone = 2131427389;
 			
 			// aapt resource value: 0x7F0B003E
-			public const int auto_wifi_connecting_status_item = 2131427390;
+			public const int activity_video_talk = 2131427390;
 			
 			// aapt resource value: 0x7F0B003F
-			public const int auto_wifi_connecting_status_item_ez = 2131427391;
+			public const int add_camera_by_series_number_page = 2131427391;
 			
 			// aapt resource value: 0x7F0B0040
-			public const int auto_wifi_net_config = 2131427392;
+			public const int auto_wifi_connecting = 2131427392;
 			
 			// aapt resource value: 0x7F0B0041
-			public const int auto_wifi_prepare_step_on = 2131427393;
+			public const int auto_wifi_connecting_status_item = 2131427393;
 			
 			// aapt resource value: 0x7F0B0042
-			public const int auto_wifi_reset = 2131427394;
+			public const int auto_wifi_connecting_status_item_ez = 2131427394;
 			
 			// aapt resource value: 0x7F0B0043
-			public const int auto_wifi_reset_introduce = 2131427395;
+			public const int auto_wifi_net_config = 2131427395;
 			
 			// aapt resource value: 0x7F0B0044
-			public const int auto_wifi_reset_introduce_ez = 2131427396;
+			public const int auto_wifi_prepare_step_on = 2131427396;
 			
 			// aapt resource value: 0x7F0B0045
-			public const int biometric_prompt_dialog_content = 2131427397;
+			public const int auto_wifi_reset = 2131427397;
 			
 			// aapt resource value: 0x7F0B0046
-			public const int cameralist_page = 2131427398;
+			public const int auto_wifi_reset_introduce = 2131427398;
 			
 			// aapt resource value: 0x7F0B0047
-			public const int cameralist_page_ez = 2131427399;
+			public const int biometric_prompt_dialog_content = 2131427399;
 			
 			// aapt resource value: 0x7F0B0048
-			public const int cameralist_small_item = 2131427400;
+			public const int cameralist_page = 2131427400;
 			
 			// aapt resource value: 0x7F0B0049
-			public const int cameralist_small_item_ez = 2131427401;
+			public const int cameralist_page_common = 2131427401;
 			
 			// aapt resource value: 0x7F0B004A
-			public const int capture_activity = 2131427402;
+			public const int cameralist_small_item = 2131427402;
 			
 			// aapt resource value: 0x7F0B004B
-			public const int capture_activity_ez = 2131427403;
+			public const int cameralist_small_item_common = 2131427403;
 			
 			// aapt resource value: 0x7F0B004C
-			public const int cc_activity_widget_countrycode = 2131427404;
+			public const int capture_activity = 2131427404;
 			
 			// aapt resource value: 0x7F0B004D
-			public const int cc_activity_widget_sortselection = 2131427405;
+			public const int cc_activity_widget_countrycode = 2131427405;
 			
 			// aapt resource value: 0x7F0B004E
-			public const int cc_country_list_item = 2131427406;
+			public const int cc_activity_widget_sortselection = 2131427406;
 			
 			// aapt resource value: 0x7F0B004F
-			public const int city_config_item = 2131427407;
+			public const int cc_country_list_item = 2131427407;
 			
 			// aapt resource value: 0x7F0B0050
-			public const int city_config_item_ez = 2131427408;
+			public const int city_config_item = 2131427408;
 			
 			// aapt resource value: 0x7F0B0051
 			public const int ddns_device_ist_page = 2131427409;
@@ -10074,11 +10188,11 @@
 			// aapt resource value: 0x7F0B0065
 			public const int dialog_tip = 2131427429;
 			
-			// aapt resource value: 0x7F0B0071
-			public const int ezopen_realplay_operate_bar = 2131427441;
+			// aapt resource value: 0x7F0B007B
+			public const int ezopen_realplay_operate_bar = 2131427451;
 			
-			// aapt resource value: 0x7F0B0072
-			public const int ezopen_realplay_operate_bar2 = 2131427442;
+			// aapt resource value: 0x7F0B007C
+			public const int ezopen_realplay_operate_bar2 = 2131427452;
 			
 			// aapt resource value: 0x7F0B0066
 			public const int ez_demo_interface_activity = 2131427430;
@@ -10087,310 +10201,346 @@
 			public const int ez_message_image_page = 2131427431;
 			
 			// aapt resource value: 0x7F0B0068
-			public const int ez_message_list_item = 2131427432;
+			public const int ez_message_image_page_new = 2131427432;
 			
 			// aapt resource value: 0x7F0B0069
-			public const int ez_message_list_section = 2131427433;
+			public const int ez_message_list_item = 2131427433;
 			
 			// aapt resource value: 0x7F0B006A
-			public const int ez_message_page = 2131427434;
-			
-			// aapt resource value: 0x7F0B006C
-			public const int ez_playback_list_page = 2131427436;
+			public const int ez_message_list_item_new = 2131427434;
 			
 			// aapt resource value: 0x7F0B006B
-			public const int ez_play_control = 2131427435;
+			public const int ez_message_list_section = 2131427435;
+			
+			// aapt resource value: 0x7F0B006C
+			public const int ez_message_list_section_new = 2131427436;
 			
 			// aapt resource value: 0x7F0B006D
-			public const int ez_realplay_page = 2131427437;
+			public const int ez_message_page = 2131427437;
 			
 			// aapt resource value: 0x7F0B006E
-			public const int ez_realplay_prompt_layout = 2131427438;
+			public const int ez_message_page_new = 2131427438;
+			
+			// aapt resource value: 0x7F0B0071
+			public const int ez_playback_list_page_common = 2131427441;
+			
+			// aapt resource value: 0x7F0B0072
+			public const int ez_playback_list_page_new = 2131427442;
 			
 			// aapt resource value: 0x7F0B006F
-			public const int ez_realplay_quality_items = 2131427439;
+			public const int ez_play_control = 2131427439;
 			
 			// aapt resource value: 0x7F0B0070
-			public const int ez_remote_playback_page = 2131427440;
+			public const int ez_play_control_new = 2131427440;
 			
 			// aapt resource value: 0x7F0B0073
-			public const int fragment_call = 2131427443;
+			public const int ez_realplay_page = 2131427443;
 			
 			// aapt resource value: 0x7F0B0074
-			public const int fragment_city_config = 2131427444;
+			public const int ez_realplay_page_new = 2131427444;
 			
 			// aapt resource value: 0x7F0B0075
-			public const int fragment_monitor = 2131427445;
+			public const int ez_realplay_prompt_layout = 2131427445;
 			
 			// aapt resource value: 0x7F0B0076
-			public const int fragment_search_video = 2131427446;
+			public const int ez_realplay_prompt_layout_new = 2131427446;
 			
 			// aapt resource value: 0x7F0B0077
-			public const int fragment_square_video_list = 2131427447;
+			public const int ez_realplay_quality_items = 2131427447;
 			
 			// aapt resource value: 0x7F0B0078
-			public const int hdl_gallery_banner_view_layout = 2131427448;
+			public const int ez_realplay_quality_items_new = 2131427448;
 			
 			// aapt resource value: 0x7F0B0079
-			public const int hdl_widget_activity_crop_image = 2131427449;
+			public const int ez_remote_playback_page = 2131427449;
 			
 			// aapt resource value: 0x7F0B007A
-			public const int hdl_widget_activity_geofence_round = 2131427450;
-			
-			// aapt resource value: 0x7F0B007B
-			public const int hdl_widget_air_button = 2131427451;
-			
-			// aapt resource value: 0x7F0B007C
-			public const int hdl_widget_include_pickerview_topbar = 2131427452;
+			public const int ez_remote_playback_page_new = 2131427450;
 			
 			// aapt resource value: 0x7F0B007D
-			public const int hdl_widget_layout_basepickerview = 2131427453;
+			public const int fragment_call = 2131427453;
 			
 			// aapt resource value: 0x7F0B007E
-			public const int hdl_widget_pickerview = 2131427454;
+			public const int fragment_city_config = 2131427454;
 			
 			// aapt resource value: 0x7F0B007F
-			public const int hdl_widget_pickerview_options = 2131427455;
+			public const int fragment_monitor = 2131427455;
 			
 			// aapt resource value: 0x7F0B0080
-			public const int hdl_widget_pickerview_time = 2131427456;
+			public const int fragment_search_video = 2131427456;
 			
 			// aapt resource value: 0x7F0B0081
-			public const int item_multi_screen_preview = 2131427457;
+			public const int fragment_square_video_list = 2131427457;
 			
 			// aapt resource value: 0x7F0B0082
-			public const int lan_device_adapter_item = 2131427458;
+			public const int hdl_gallery_banner_view_layout = 2131427458;
 			
 			// aapt resource value: 0x7F0B0083
-			public const int lan_device_login_dialog = 2131427459;
+			public const int hdl_widget_activity_crop_image = 2131427459;
 			
 			// aapt resource value: 0x7F0B0084
-			public const int layout_camera_view = 2131427460;
+			public const int hdl_widget_activity_geofence_round = 2131427460;
 			
 			// aapt resource value: 0x7F0B0085
-			public const int layout_camera_view_soft = 2131427461;
+			public const int hdl_widget_air_button = 2131427461;
 			
 			// aapt resource value: 0x7F0B0086
-			public const int layout_change_playback_rate = 2131427462;
+			public const int hdl_widget_include_pickerview_topbar = 2131427462;
 			
 			// aapt resource value: 0x7F0B0087
-			public const int layout_child_watch_video_talk_operation = 2131427463;
+			public const int hdl_widget_layout_basepickerview = 2131427463;
 			
 			// aapt resource value: 0x7F0B0088
-			public const int layout_dialog_tip = 2131427464;
+			public const int hdl_widget_pickerview = 2131427464;
 			
 			// aapt resource value: 0x7F0B0089
-			public const int layout_login_anim = 2131427465;
+			public const int hdl_widget_pickerview_options = 2131427465;
 			
 			// aapt resource value: 0x7F0B008A
-			public const int line_connecting_introduce_activity = 2131427466;
+			public const int hdl_widget_pickerview_time = 2131427466;
 			
 			// aapt resource value: 0x7F0B008B
-			public const int list_section = 2131427467;
+			public const int item_multi_screen_preview = 2131427467;
 			
 			// aapt resource value: 0x7F0B008C
-			public const int loading_text_view = 2131427468;
+			public const int lan_device_adapter_item = 2131427468;
 			
 			// aapt resource value: 0x7F0B008D
-			public const int login_page = 2131427469;
+			public const int lan_device_login_dialog = 2131427469;
 			
 			// aapt resource value: 0x7F0B008E
-			public const int message_list_item = 2131427470;
+			public const int layout_camera_view = 2131427470;
 			
 			// aapt resource value: 0x7F0B008F
-			public const int message_page = 2131427471;
+			public const int layout_camera_view_soft = 2131427471;
 			
 			// aapt resource value: 0x7F0B0090
-			public const int modify_device_name_page = 2131427472;
+			public const int layout_change_playback_rate = 2131427472;
 			
 			// aapt resource value: 0x7F0B0091
-			public const int network_error_retry_page = 2131427473;
-			
-			// aapt resource value: 0x7F0B0095
-			public const int notification_action = 2131427477;
-			
-			// aapt resource value: 0x7F0B0096
-			public const int notification_action_tombstone = 2131427478;
-			
-			// aapt resource value: 0x7F0B0097
-			public const int notification_media_action = 2131427479;
-			
-			// aapt resource value: 0x7F0B0098
-			public const int notification_media_cancel_action = 2131427480;
-			
-			// aapt resource value: 0x7F0B0099
-			public const int notification_template_big_media = 2131427481;
-			
-			// aapt resource value: 0x7F0B009A
-			public const int notification_template_big_media_custom = 2131427482;
-			
-			// aapt resource value: 0x7F0B009B
-			public const int notification_template_big_media_narrow = 2131427483;
-			
-			// aapt resource value: 0x7F0B009C
-			public const int notification_template_big_media_narrow_custom = 2131427484;
-			
-			// aapt resource value: 0x7F0B009D
-			public const int notification_template_custom_big = 2131427485;
-			
-			// aapt resource value: 0x7F0B009E
-			public const int notification_template_icon_group = 2131427486;
-			
-			// aapt resource value: 0x7F0B009F
-			public const int notification_template_lines_media = 2131427487;
-			
-			// aapt resource value: 0x7F0B00A0
-			public const int notification_template_media = 2131427488;
-			
-			// aapt resource value: 0x7F0B00A1
-			public const int notification_template_media_custom = 2131427489;
-			
-			// aapt resource value: 0x7F0B00A2
-			public const int notification_template_part_chronometer = 2131427490;
-			
-			// aapt resource value: 0x7F0B00A3
-			public const int notification_template_part_time = 2131427491;
-			
-			// aapt resource value: 0x7F0B00A4
-			public const int notifier_alarmloginfo_list_item = 2131427492;
-			
-			// aapt resource value: 0x7F0B00A5
-			public const int notifier_page = 2131427493;
+			public const int layout_child_watch_video_talk_operation = 2131427473;
 			
 			// aapt resource value: 0x7F0B0092
-			public const int no_device_more_footer = 2131427474;
+			public const int layout_dialog_tip = 2131427474;
 			
 			// aapt resource value: 0x7F0B0093
-			public const int no_more_footer = 2131427475;
+			public const int layout_login_anim = 2131427475;
 			
 			// aapt resource value: 0x7F0B0094
-			public const int no_msg_more_footer = 2131427476;
+			public const int line_connecting_introduce_activity = 2131427476;
+			
+			// aapt resource value: 0x7F0B0095
+			public const int list_section = 2131427477;
+			
+			// aapt resource value: 0x7F0B0096
+			public const int loading_text_view = 2131427478;
+			
+			// aapt resource value: 0x7F0B0097
+			public const int login_page = 2131427479;
+			
+			// aapt resource value: 0x7F0B0098
+			public const int message_list_item = 2131427480;
+			
+			// aapt resource value: 0x7F0B0099
+			public const int message_page = 2131427481;
+			
+			// aapt resource value: 0x7F0B009A
+			public const int modify_device_name_page = 2131427482;
+			
+			// aapt resource value: 0x7F0B009B
+			public const int multi_video_talk_item = 2131427483;
+			
+			// aapt resource value: 0x7F0B009C
+			public const int network_error_retry_page = 2131427484;
+			
+			// aapt resource value: 0x7F0B00A0
+			public const int notification_action = 2131427488;
+			
+			// aapt resource value: 0x7F0B00A1
+			public const int notification_action_tombstone = 2131427489;
+			
+			// aapt resource value: 0x7F0B00A2
+			public const int notification_media_action = 2131427490;
+			
+			// aapt resource value: 0x7F0B00A3
+			public const int notification_media_cancel_action = 2131427491;
+			
+			// aapt resource value: 0x7F0B00A4
+			public const int notification_template_big_media = 2131427492;
+			
+			// aapt resource value: 0x7F0B00A5
+			public const int notification_template_big_media_custom = 2131427493;
 			
 			// aapt resource value: 0x7F0B00A6
-			public const int open_ysservice_dialog = 2131427494;
+			public const int notification_template_big_media_narrow = 2131427494;
 			
 			// aapt resource value: 0x7F0B00A7
-			public const int password_error_layout = 2131427495;
+			public const int notification_template_big_media_narrow_custom = 2131427495;
 			
 			// aapt resource value: 0x7F0B00A8
-			public const int playback_list_page = 2131427496;
+			public const int notification_template_custom_big = 2131427496;
 			
 			// aapt resource value: 0x7F0B00A9
-			public const int pull_to_refresh_footer = 2131427497;
+			public const int notification_template_icon_group = 2131427497;
 			
 			// aapt resource value: 0x7F0B00AA
-			public const int pull_to_refresh_header = 2131427498;
-			
-			// aapt resource value: 0x7F0B00B6
-			public const int realplayer_item = 2131427510;
-			
-			// aapt resource value: 0x7F0B00B7
-			public const int realplayer_page = 2131427511;
+			public const int notification_template_lines_media = 2131427498;
 			
 			// aapt resource value: 0x7F0B00AB
-			public const int realplay_control_layout = 2131427499;
+			public const int notification_template_media = 2131427499;
 			
 			// aapt resource value: 0x7F0B00AC
-			public const int realplay_full_operate_layout = 2131427500;
+			public const int notification_template_media_custom = 2131427500;
 			
 			// aapt resource value: 0x7F0B00AD
-			public const int realplay_loading_layout = 2131427501;
+			public const int notification_template_part_chronometer = 2131427501;
 			
 			// aapt resource value: 0x7F0B00AE
-			public const int realplay_operate_bar = 2131427502;
+			public const int notification_template_part_time = 2131427502;
 			
 			// aapt resource value: 0x7F0B00AF
-			public const int realplay_operate_bar2 = 2131427503;
+			public const int notifier_alarmloginfo_list_item = 2131427503;
 			
 			// aapt resource value: 0x7F0B00B0
-			public const int realplay_page = 2131427504;
+			public const int notifier_page = 2131427504;
+			
+			// aapt resource value: 0x7F0B009D
+			public const int no_device_more_footer = 2131427485;
+			
+			// aapt resource value: 0x7F0B009E
+			public const int no_more_footer = 2131427486;
+			
+			// aapt resource value: 0x7F0B009F
+			public const int no_msg_more_footer = 2131427487;
 			
 			// aapt resource value: 0x7F0B00B1
-			public const int realplay_prompt_layout = 2131427505;
+			public const int open_ysservice_dialog = 2131427505;
 			
 			// aapt resource value: 0x7F0B00B2
-			public const int realplay_ptz_wnd = 2131427506;
+			public const int password_error_layout = 2131427506;
 			
 			// aapt resource value: 0x7F0B00B3
-			public const int realplay_quality_items = 2131427507;
+			public const int playback_list_page = 2131427507;
 			
 			// aapt resource value: 0x7F0B00B4
-			public const int realplay_quality_wnd = 2131427508;
+			public const int pull_to_refresh_footer = 2131427508;
 			
 			// aapt resource value: 0x7F0B00B5
-			public const int realplay_talkback_wnd = 2131427509;
-			
-			// aapt resource value: 0x7F0B00B8
-			public const int remote_playback_page = 2131427512;
-			
-			// aapt resource value: 0x7F0B00B9
-			public const int section_list_item = 2131427513;
-			
-			// aapt resource value: 0x7F0B00BA
-			public const int select_camera_no_dialog = 2131427514;
-			
-			// aapt resource value: 0x7F0B00BB
-			public const int select_camera_no_dialog_item = 2131427515;
-			
-			// aapt resource value: 0x7F0B00BC
-			public const int select_dialog_item_material = 2131427516;
-			
-			// aapt resource value: 0x7F0B00BD
-			public const int select_dialog_multichoice_material = 2131427517;
-			
-			// aapt resource value: 0x7F0B00BE
-			public const int select_dialog_singlechoice_material = 2131427518;
-			
-			// aapt resource value: 0x7F0B00BF
-			public const int simple_demo = 2131427519;
-			
-			// aapt resource value: 0x7F0B00C0
-			public const int sms_verify_dialog = 2131427520;
+			public const int pull_to_refresh_header = 2131427509;
 			
 			// aapt resource value: 0x7F0B00C1
-			public const int square_column_item = 2131427521;
+			public const int realplayer_item = 2131427521;
 			
 			// aapt resource value: 0x7F0B00C2
-			public const int square_video_item = 2131427522;
+			public const int realplayer_page = 2131427522;
+			
+			// aapt resource value: 0x7F0B00B6
+			public const int realplay_control_layout = 2131427510;
+			
+			// aapt resource value: 0x7F0B00B7
+			public const int realplay_full_operate_layout = 2131427511;
+			
+			// aapt resource value: 0x7F0B00B8
+			public const int realplay_loading_layout = 2131427512;
+			
+			// aapt resource value: 0x7F0B00B9
+			public const int realplay_operate_bar = 2131427513;
+			
+			// aapt resource value: 0x7F0B00BA
+			public const int realplay_operate_bar2 = 2131427514;
+			
+			// aapt resource value: 0x7F0B00BB
+			public const int realplay_page = 2131427515;
+			
+			// aapt resource value: 0x7F0B00BC
+			public const int realplay_prompt_layout = 2131427516;
+			
+			// aapt resource value: 0x7F0B00BD
+			public const int realplay_ptz_wnd = 2131427517;
+			
+			// aapt resource value: 0x7F0B00BE
+			public const int realplay_quality_items = 2131427518;
+			
+			// aapt resource value: 0x7F0B00BF
+			public const int realplay_quality_wnd = 2131427519;
+			
+			// aapt resource value: 0x7F0B00C0
+			public const int realplay_talkback_wnd = 2131427520;
 			
 			// aapt resource value: 0x7F0B00C3
-			public const int srl_classics_footer = 2131427523;
+			public const int remote_playback_page = 2131427523;
 			
 			// aapt resource value: 0x7F0B00C4
-			public const int srl_classics_header = 2131427524;
+			public const int section_list_item = 2131427524;
 			
 			// aapt resource value: 0x7F0B00C5
-			public const int support_simple_spinner_dropdown_item = 2131427525;
+			public const int select_camera_no_dialog = 2131427525;
 			
 			// aapt resource value: 0x7F0B00C6
-			public const int test_surfaceview = 2131427526;
+			public const int select_camera_no_dialog_item = 2131427526;
 			
 			// aapt resource value: 0x7F0B00C7
-			public const int tooltip = 2131427527;
+			public const int select_dialog_item_material = 2131427527;
 			
 			// aapt resource value: 0x7F0B00C8
-			public const int topbar = 2131427528;
+			public const int select_dialog_multichoice_material = 2131427528;
 			
 			// aapt resource value: 0x7F0B00C9
-			public const int verifycode_layout = 2131427529;
+			public const int select_dialog_singlechoice_material = 2131427529;
 			
 			// aapt resource value: 0x7F0B00CA
-			public const int video_device = 2131427530;
+			public const int select_talkback_items = 2131427530;
 			
 			// aapt resource value: 0x7F0B00CB
-			public const int wait_dialog = 2131427531;
+			public const int simple_demo = 2131427531;
 			
 			// aapt resource value: 0x7F0B00CC
-			public const int web_page = 2131427532;
-			
-			// aapt resource value: 0x7F0B00CE
-			public const int zxingscanneractivitylayout = 2131427534;
-			
-			// aapt resource value: 0x7F0B00CF
-			public const int zxingscannerfragmentlayout = 2131427535;
+			public const int sms_verify_dialog = 2131427532;
 			
 			// aapt resource value: 0x7F0B00CD
-			public const int zxing_layout = 2131427533;
+			public const int square_column_item = 2131427533;
+			
+			// aapt resource value: 0x7F0B00CE
+			public const int square_video_item = 2131427534;
+			
+			// aapt resource value: 0x7F0B00CF
+			public const int srl_classics_footer = 2131427535;
+			
+			// aapt resource value: 0x7F0B00D0
+			public const int srl_classics_header = 2131427536;
+			
+			// aapt resource value: 0x7F0B00D1
+			public const int support_simple_spinner_dropdown_item = 2131427537;
+			
+			// aapt resource value: 0x7F0B00D2
+			public const int test_surfaceview = 2131427538;
+			
+			// aapt resource value: 0x7F0B00D3
+			public const int tooltip = 2131427539;
+			
+			// aapt resource value: 0x7F0B00D4
+			public const int topbar = 2131427540;
+			
+			// aapt resource value: 0x7F0B00D5
+			public const int verifycode_layout = 2131427541;
+			
+			// aapt resource value: 0x7F0B00D6
+			public const int video_device = 2131427542;
+			
+			// aapt resource value: 0x7F0B00D7
+			public const int wait_dialog = 2131427543;
+			
+			// aapt resource value: 0x7F0B00D8
+			public const int web_page = 2131427544;
+			
+			// aapt resource value: 0x7F0B00DA
+			public const int zxingscanneractivitylayout = 2131427546;
+			
+			// aapt resource value: 0x7F0B00DB
+			public const int zxingscannerfragmentlayout = 2131427547;
+			
+			// aapt resource value: 0x7F0B00D9
+			public const int zxing_layout = 2131427545;
 			
 			static Layout()
 			{
@@ -11134,1373 +11284,1382 @@
 			// aapt resource value: 0x7F0F00DA
 			public const int device_is_added = 2131689690;
 			
-			// aapt resource value: 0x7F0F00DC
-			public const int device_not_exist = 2131689692;
-			
 			// aapt resource value: 0x7F0F00DD
-			public const int device_not_online = 2131689693;
+			public const int device_not_exist = 2131689693;
 			
 			// aapt resource value: 0x7F0F00DE
-			public const int device_not_set = 2131689694;
+			public const int device_not_online = 2131689694;
 			
 			// aapt resource value: 0x7F0F00DF
-			public const int device_not_support_view = 2131689695;
+			public const int device_not_set = 2131689695;
+			
+			// aapt resource value: 0x7F0F00E0
+			public const int device_not_support_view = 2131689696;
 			
 			// aapt resource value: 0x7F0F00DB
 			public const int device_no_out_limit = 2131689691;
 			
-			// aapt resource value: 0x7F0F00E0
-			public const int device_password_is_null = 2131689696;
+			// aapt resource value: 0x7F0F00DC
+			public const int device_no_support_talkback = 2131689692;
 			
 			// aapt resource value: 0x7F0F00E1
-			public const int device_picture = 2131689697;
+			public const int device_password_is_null = 2131689697;
 			
 			// aapt resource value: 0x7F0F00E2
-			public const int device_ptz_flip = 2131689698;
+			public const int device_picture = 2131689698;
 			
 			// aapt resource value: 0x7F0F00E3
-			public const int device_ptz_flip_desc = 2131689699;
+			public const int device_ptz_flip = 2131689699;
 			
 			// aapt resource value: 0x7F0F00E4
-			public const int device_reset_ok = 2131689700;
+			public const int device_ptz_flip_desc = 2131689700;
 			
 			// aapt resource value: 0x7F0F00E5
-			public const int device_reset_tip = 2131689701;
+			public const int device_reset_ok = 2131689701;
 			
 			// aapt resource value: 0x7F0F00E6
-			public const int device_reset_title = 2131689702;
+			public const int device_reset_tip = 2131689702;
 			
 			// aapt resource value: 0x7F0F00E7
-			public const int device_setting = 2131689703;
+			public const int device_reset_title = 2131689703;
 			
 			// aapt resource value: 0x7F0F00E8
-			public const int device_so_timeout = 2131689704;
+			public const int device_setting = 2131689704;
 			
 			// aapt resource value: 0x7F0F00E9
-			public const int device_status_lamp = 2131689705;
+			public const int device_so_timeout = 2131689705;
 			
 			// aapt resource value: 0x7F0F00EA
-			public const int device_transfter = 2131689706;
+			public const int device_status_lamp = 2131689706;
 			
 			// aapt resource value: 0x7F0F00EB
-			public const int device_transfter_desc = 2131689707;
+			public const int device_transfter = 2131689707;
 			
 			// aapt resource value: 0x7F0F00EC
-			public const int device_unsupport_5g_wifi = 2131689708;
+			public const int device_transfter_desc = 2131689708;
 			
 			// aapt resource value: 0x7F0F00ED
-			public const int device_warning_tone = 2131689709;
-			
-			// aapt resource value: 0x7F0F00EF
-			public const int device_wificonfig_hasline_introduce = 2131689711;
+			public const int device_unsupport_5g_wifi = 2131689709;
 			
 			// aapt resource value: 0x7F0F00EE
-			public const int device_wifi_set_no_in_subnet = 2131689710;
+			public const int device_warning_tone = 2131689710;
 			
 			// aapt resource value: 0x7F0F00F0
-			public const int digital_video_recorder = 2131689712;
+			public const int device_wificonfig_hasline_introduce = 2131689712;
+			
+			// aapt resource value: 0x7F0F00EF
+			public const int device_wifi_set_no_in_subnet = 2131689711;
 			
 			// aapt resource value: 0x7F0F00F1
-			public const int disable_fause_exception = 2131689713;
+			public const int digital_video_recorder = 2131689713;
 			
 			// aapt resource value: 0x7F0F00F2
-			public const int disable_fause_network = 2131689714;
-			
-			// aapt resource value: 0x7F0F00F4
-			public const int discovering_device = 2131689716;
+			public const int disable_fause_exception = 2131689714;
 			
 			// aapt resource value: 0x7F0F00F3
-			public const int discover_device_done = 2131689715;
+			public const int disable_fause_network = 2131689715;
 			
 			// aapt resource value: 0x7F0F00F5
-			public const int doorlock = 2131689717;
+			public const int discovering_device = 2131689717;
+			
+			// aapt resource value: 0x7F0F00F4
+			public const int discover_device_done = 2131689716;
 			
 			// aapt resource value: 0x7F0F00F6
-			public const int download_fail = 2131689718;
+			public const int doorlock = 2131689718;
 			
 			// aapt resource value: 0x7F0F00F7
-			public const int download_success = 2131689719;
+			public const int download_fail = 2131689719;
 			
 			// aapt resource value: 0x7F0F00F8
-			public const int edit_txt = 2131689720;
+			public const int download_success = 2131689720;
 			
 			// aapt resource value: 0x7F0F00F9
-			public const int enable_cloud_fause = 2131689721;
+			public const int edit_txt = 2131689721;
 			
 			// aapt resource value: 0x7F0F00FA
-			public const int enable_cloud_fause_retry = 2131689722;
+			public const int enable_cloud_fause = 2131689722;
 			
 			// aapt resource value: 0x7F0F00FB
-			public const int enable_fause_exception = 2131689723;
+			public const int enable_cloud_fause_retry = 2131689723;
 			
 			// aapt resource value: 0x7F0F00FC
-			public const int enable_fause_network = 2131689724;
+			public const int enable_fause_exception = 2131689724;
 			
 			// aapt resource value: 0x7F0F00FD
-			public const int encrypt_password_open_fail = 2131689725;
+			public const int enable_fause_network = 2131689725;
 			
 			// aapt resource value: 0x7F0F00FE
-			public const int encrypt_password_open_fail_networkexception = 2131689726;
+			public const int encrypt_password_open_fail = 2131689726;
 			
 			// aapt resource value: 0x7F0F00FF
-			public const int encrypt_password_open_success = 2131689727;
+			public const int encrypt_password_open_fail_networkexception = 2131689727;
 			
 			// aapt resource value: 0x7F0F0100
-			public const int end_call = 2131689728;
+			public const int encrypt_password_open_success = 2131689728;
 			
 			// aapt resource value: 0x7F0F0101
-			public const int event_message = 2131689729;
+			public const int end_call = 2131689729;
 			
 			// aapt resource value: 0x7F0F0102
-			public const int exit = 2131689730;
+			public const int event_message = 2131689730;
 			
 			// aapt resource value: 0x7F0F0103
-			public const int exit_tip = 2131689731;
+			public const int exit = 2131689731;
 			
 			// aapt resource value: 0x7F0F0104
-			public const int explain_of_access_token = 2131689732;
+			public const int exit_tip = 2131689732;
 			
 			// aapt resource value: 0x7F0F0105
-			public const int explain_of_app_key = 2131689733;
+			public const int explain_of_access_token = 2131689733;
 			
 			// aapt resource value: 0x7F0F0106
-			public const int explain_of_server_area = 2131689734;
-			
-			// aapt resource value: 0x7F0F0122
-			public const int ezviz_device = 2131689762;
+			public const int explain_of_app_key = 2131689734;
 			
 			// aapt resource value: 0x7F0F0107
-			public const int ez_32_api_test = 2131689735;
-			
-			// aapt resource value: 0x7F0F0108
-			public const int ez_add_device_failed_not_online = 2131689736;
-			
-			// aapt resource value: 0x7F0F0109
-			public const int ez_alarm_message_check_success = 2131689737;
-			
-			// aapt resource value: 0x7F0F010A
-			public const int ez_alarm_type_person_alarm = 2131689738;
-			
-			// aapt resource value: 0x7F0F010B
-			public const int ez_auto_wifi_connecting_failed = 2131689739;
-			
-			// aapt resource value: 0x7F0F010C
-			public const int ez_auto_wifi_line_connect = 2131689740;
-			
-			// aapt resource value: 0x7F0F010D
-			public const int ez_check_all_message = 2131689741;
-			
-			// aapt resource value: 0x7F0F010E
-			public const int ez_cloud_video = 2131689742;
-			
-			// aapt resource value: 0x7F0F010F
-			public const int ez_current_version = 2131689743;
-			
-			// aapt resource value: 0x7F0F0110
-			public const int ez_device_name_hint = 2131689744;
-			
-			// aapt resource value: 0x7F0F0111
-			public const int ez_device_upgrade = 2131689745;
-			
-			// aapt resource value: 0x7F0F0112
-			public const int ez_device_video = 2131689746;
-			
-			// aapt resource value: 0x7F0F0113
-			public const int ez_dialog_btn_disable_video_encrypt = 2131689747;
-			
-			// aapt resource value: 0x7F0F0114
-			public const int ez_event_message = 2131689748;
-			
-			// aapt resource value: 0x7F0F0115
-			public const int ez_event_message_detail = 2131689749;
-			
-			// aapt resource value: 0x7F0F0116
-			public const int ez_latest_version = 2131689750;
-			
-			// aapt resource value: 0x7F0F0117
-			public const int ez_modify_name = 2131689751;
-			
-			// aapt resource value: 0x7F0F0118
-			public const int ez_no_message = 2131689752;
-			
-			// aapt resource value: 0x7F0F0119
-			public const int ez_no_remote_data = 2131689753;
-			
-			// aapt resource value: 0x7F0F011A
-			public const int ez_no_remote_data_device = 2131689754;
-			
-			// aapt resource value: 0x7F0F011B
-			public const int ez_please_input_sms_code = 2131689755;
-			
-			// aapt resource value: 0x7F0F011C
-			public const int ez_save = 2131689756;
-			
-			// aapt resource value: 0x7F0F011D
-			public const int ez_scan_cue_txt = 2131689757;
-			
-			// aapt resource value: 0x7F0F011E
-			public const int ez_scan_title_txt = 2131689758;
-			
-			// aapt resource value: 0x7F0F011F
-			public const int ez_serial_add_hint = 2131689759;
-			
-			// aapt resource value: 0x7F0F0120
-			public const int ez_setting = 2131689760;
-			
-			// aapt resource value: 0x7F0F0121
-			public const int ez_settings_device_serial = 2131689761;
+			public const int explain_of_server_area = 2131689735;
 			
 			// aapt resource value: 0x7F0F0123
-			public const int failed_to_config_wifi = 2131689763;
+			public const int ezviz_device = 2131689763;
+			
+			// aapt resource value: 0x7F0F0108
+			public const int ez_32_api_test = 2131689736;
+			
+			// aapt resource value: 0x7F0F0109
+			public const int ez_add_device_failed_not_online = 2131689737;
+			
+			// aapt resource value: 0x7F0F010A
+			public const int ez_alarm_message_check_success = 2131689738;
+			
+			// aapt resource value: 0x7F0F010B
+			public const int ez_alarm_type_person_alarm = 2131689739;
+			
+			// aapt resource value: 0x7F0F010C
+			public const int ez_auto_wifi_connecting_failed = 2131689740;
+			
+			// aapt resource value: 0x7F0F010D
+			public const int ez_auto_wifi_line_connect = 2131689741;
+			
+			// aapt resource value: 0x7F0F010E
+			public const int ez_check_all_message = 2131689742;
+			
+			// aapt resource value: 0x7F0F010F
+			public const int ez_cloud_video = 2131689743;
+			
+			// aapt resource value: 0x7F0F0110
+			public const int ez_current_version = 2131689744;
+			
+			// aapt resource value: 0x7F0F0111
+			public const int ez_device_name_hint = 2131689745;
+			
+			// aapt resource value: 0x7F0F0112
+			public const int ez_device_upgrade = 2131689746;
+			
+			// aapt resource value: 0x7F0F0113
+			public const int ez_device_video = 2131689747;
+			
+			// aapt resource value: 0x7F0F0114
+			public const int ez_dialog_btn_disable_video_encrypt = 2131689748;
+			
+			// aapt resource value: 0x7F0F0115
+			public const int ez_event_message = 2131689749;
+			
+			// aapt resource value: 0x7F0F0116
+			public const int ez_event_message_detail = 2131689750;
+			
+			// aapt resource value: 0x7F0F0117
+			public const int ez_latest_version = 2131689751;
+			
+			// aapt resource value: 0x7F0F0118
+			public const int ez_modify_name = 2131689752;
+			
+			// aapt resource value: 0x7F0F0119
+			public const int ez_no_message = 2131689753;
+			
+			// aapt resource value: 0x7F0F011A
+			public const int ez_no_remote_data = 2131689754;
+			
+			// aapt resource value: 0x7F0F011B
+			public const int ez_no_remote_data_device = 2131689755;
+			
+			// aapt resource value: 0x7F0F011C
+			public const int ez_please_input_sms_code = 2131689756;
+			
+			// aapt resource value: 0x7F0F011D
+			public const int ez_save = 2131689757;
+			
+			// aapt resource value: 0x7F0F011E
+			public const int ez_scan_cue_txt = 2131689758;
+			
+			// aapt resource value: 0x7F0F011F
+			public const int ez_scan_title_txt = 2131689759;
+			
+			// aapt resource value: 0x7F0F0120
+			public const int ez_serial_add_hint = 2131689760;
+			
+			// aapt resource value: 0x7F0F0121
+			public const int ez_setting = 2131689761;
+			
+			// aapt resource value: 0x7F0F0122
+			public const int ez_settings_device_serial = 2131689762;
 			
 			// aapt resource value: 0x7F0F0124
-			public const int from = 2131689764;
+			public const int failed_to_config_wifi = 2131689764;
 			
 			// aapt resource value: 0x7F0F0125
-			public const int gd_activity_title = 2131689765;
+			public const int from = 2131689765;
 			
 			// aapt resource value: 0x7F0F0126
-			public const int gd_cancel = 2131689766;
+			public const int gd_activity_title = 2131689766;
 			
 			// aapt resource value: 0x7F0F0127
-			public const int gd_myhome = 2131689767;
+			public const int gd_cancel = 2131689767;
 			
 			// aapt resource value: 0x7F0F0128
-			public const int gd_notifyMsg = 2131689768;
+			public const int gd_myhome = 2131689768;
 			
 			// aapt resource value: 0x7F0F0129
-			public const int gd_notifyTitle = 2131689769;
+			public const int gd_notifyMsg = 2131689769;
 			
 			// aapt resource value: 0x7F0F012A
-			public const int gd_save = 2131689770;
+			public const int gd_notifyTitle = 2131689770;
 			
 			// aapt resource value: 0x7F0F012B
-			public const int gd_search_tip = 2131689771;
+			public const int gd_save = 2131689771;
 			
 			// aapt resource value: 0x7F0F012C
-			public const int gd_select_distance = 2131689772;
+			public const int gd_search_tip = 2131689772;
 			
 			// aapt resource value: 0x7F0F012D
-			public const int gd_setting = 2131689773;
+			public const int gd_select_distance = 2131689773;
 			
 			// aapt resource value: 0x7F0F012E
-			public const int get_camera_list_fail = 2131689774;
+			public const int gd_setting = 2131689774;
 			
 			// aapt resource value: 0x7F0F012F
-			public const int get_device_picture_fail = 2131689775;
+			public const int get_camera_list_fail = 2131689775;
 			
 			// aapt resource value: 0x7F0F0130
-			public const int get_message_fail_service_exception = 2131689776;
+			public const int get_device_picture_fail = 2131689776;
 			
 			// aapt resource value: 0x7F0F0131
-			public const int get_sms_code = 2131689777;
+			public const int get_message_fail_service_exception = 2131689777;
 			
 			// aapt resource value: 0x7F0F0132
-			public const int get_sms_code_fail = 2131689778;
+			public const int get_sms_code = 2131689778;
 			
 			// aapt resource value: 0x7F0F0133
-			public const int give_up_adding = 2131689779;
-			
-			// aapt resource value: 0x7F0F0136
-			public const int goto_ad_close_page = 2131689782;
-			
-			// aapt resource value: 0x7F0F0137
-			public const int goto_cameralist_page_txt = 2131689783;
-			
-			// aapt resource value: 0x7F0F0138
-			public const int goto_help_error_page = 2131689784;
-			
-			// aapt resource value: 0x7F0F0139
-			public const int goto_mall_to_see = 2131689785;
+			public const int get_sms_code_fail = 2131689779;
 			
 			// aapt resource value: 0x7F0F0134
-			public const int go_to_connect_wifi = 2131689780;
+			public const int give_up_adding = 2131689780;
 			
-			// aapt resource value: 0x7F0F0135
-			public const int go_to_see_immediately = 2131689781;
+			// aapt resource value: 0x7F0F0137
+			public const int goto_ad_close_page = 2131689783;
+			
+			// aapt resource value: 0x7F0F0138
+			public const int goto_cameralist_page_txt = 2131689784;
+			
+			// aapt resource value: 0x7F0F0139
+			public const int goto_help_error_page = 2131689785;
 			
 			// aapt resource value: 0x7F0F013A
-			public const int hc_net_account_pwd_error = 2131689786;
+			public const int goto_mall_to_see = 2131689786;
+			
+			// aapt resource value: 0x7F0F0135
+			public const int go_to_connect_wifi = 2131689781;
+			
+			// aapt resource value: 0x7F0F0136
+			public const int go_to_see_immediately = 2131689782;
 			
 			// aapt resource value: 0x7F0F013B
-			public const int hc_net_error = 2131689787;
+			public const int hc_net_account_pwd_error = 2131689787;
 			
 			// aapt resource value: 0x7F0F013C
-			public const int how_to_reset = 2131689788;
+			public const int hc_net_error = 2131689788;
 			
 			// aapt resource value: 0x7F0F013D
-			public const int if_your_device_has_been_used = 2131689789;
+			public const int how_to_reset = 2131689789;
 			
 			// aapt resource value: 0x7F0F013E
-			public const int if_your_device_has_set_time = 2131689790;
+			public const int if_your_device_has_been_used = 2131689790;
 			
 			// aapt resource value: 0x7F0F013F
-			public const int input_device_picture_size = 2131689791;
+			public const int if_your_device_has_set_time = 2131689791;
 			
 			// aapt resource value: 0x7F0F0140
-			public const int input_device_picture_uuid = 2131689792;
+			public const int input_device_picture_size = 2131689792;
 			
 			// aapt resource value: 0x7F0F0141
-			public const int input_device_verify_code = 2131689793;
+			public const int input_device_picture_uuid = 2131689793;
 			
 			// aapt resource value: 0x7F0F0142
-			public const int input_device_video_uuid = 2131689794;
+			public const int input_device_verify_code = 2131689794;
 			
 			// aapt resource value: 0x7F0F0143
-			public const int interface_call_demo_txt = 2131689795;
+			public const int input_device_video_uuid = 2131689795;
 			
 			// aapt resource value: 0x7F0F0144
-			public const int interface_test_api = 2131689796;
+			public const int interface_call_demo_txt = 2131689796;
 			
 			// aapt resource value: 0x7F0F0145
-			public const int interface_test_hint_input_serial = 2131689797;
+			public const int interface_test_api = 2131689797;
 			
 			// aapt resource value: 0x7F0F0146
-			public const int interface_test_openCloudPage = 2131689798;
+			public const int interface_test_hint_input_serial = 2131689798;
 			
 			// aapt resource value: 0x7F0F0147
-			public const int interface_test_show_limit_dialog = 2131689799;
+			public const int interface_test_openCloudPage = 2131689799;
 			
 			// aapt resource value: 0x7F0F0148
-			public const int interface_test_v33_api = 2131689800;
+			public const int interface_test_show_limit_dialog = 2131689800;
 			
 			// aapt resource value: 0x7F0F0149
-			public const int invalid_app_key_or_access_token = 2131689801;
+			public const int interface_test_v33_api = 2131689801;
 			
 			// aapt resource value: 0x7F0F014A
-			public const int ip_camera = 2131689802;
+			public const int invalid_app_key_or_access_token = 2131689802;
 			
 			// aapt resource value: 0x7F0F014B
-			public const int keyboard = 2131689803;
+			public const int ip_camera = 2131689803;
 			
 			// aapt resource value: 0x7F0F014C
-			public const int lan_camera_name = 2131689804;
+			public const int keyboard = 2131689804;
 			
 			// aapt resource value: 0x7F0F014D
-			public const int lan_device_login_default_name = 2131689805;
+			public const int lan_camera_name = 2131689805;
 			
 			// aapt resource value: 0x7F0F014E
-			public const int lan_device_login_title = 2131689806;
+			public const int lan_device_login_default_name = 2131689806;
 			
 			// aapt resource value: 0x7F0F014F
-			public const int lan_device_pwd_tip = 2131689807;
+			public const int lan_device_login_title = 2131689807;
 			
 			// aapt resource value: 0x7F0F0150
-			public const int later_alarm = 2131689808;
+			public const int lan_device_pwd_tip = 2131689808;
 			
 			// aapt resource value: 0x7F0F0151
-			public const int loading = 2131689809;
+			public const int later_alarm = 2131689809;
 			
 			// aapt resource value: 0x7F0F0152
-			public const int loading_text_default = 2131689810;
-			
-			// aapt resource value: 0x7F0F0157
-			public const int localmgt_video_square_txt = 2131689815;
+			public const int loading = 2131689810;
 			
 			// aapt resource value: 0x7F0F0153
-			public const int local_network_exception = 2131689811;
-			
-			// aapt resource value: 0x7F0F0154
-			public const int local_play_hour = 2131689812;
-			
-			// aapt resource value: 0x7F0F0155
-			public const int local_realplay = 2131689813;
-			
-			// aapt resource value: 0x7F0F0156
-			public const int local_video_not_delete = 2131689814;
+			public const int loading_text_default = 2131689811;
 			
 			// aapt resource value: 0x7F0F0158
-			public const int login_by_ezviz_account = 2131689816;
+			public const int localmgt_video_square_txt = 2131689816;
+			
+			// aapt resource value: 0x7F0F0154
+			public const int local_network_exception = 2131689812;
+			
+			// aapt resource value: 0x7F0F0155
+			public const int local_play_hour = 2131689813;
+			
+			// aapt resource value: 0x7F0F0156
+			public const int local_realplay = 2131689814;
+			
+			// aapt resource value: 0x7F0F0157
+			public const int local_video_not_delete = 2131689815;
 			
 			// aapt resource value: 0x7F0F0159
-			public const int login_expire = 2131689817;
+			public const int login_by_ezviz_account = 2131689817;
 			
 			// aapt resource value: 0x7F0F015A
-			public const int login_password_tv_txt = 2131689818;
+			public const int login_expire = 2131689818;
 			
 			// aapt resource value: 0x7F0F015B
-			public const int main_tab_second_tab = 2131689819;
+			public const int login_password_tv_txt = 2131689819;
 			
 			// aapt resource value: 0x7F0F015C
-			public const int message_come_from_tip = 2131689820;
+			public const int main_tab_second_tab = 2131689820;
 			
 			// aapt resource value: 0x7F0F015D
-			public const int message_encrypt_inputpsw_tip_title = 2131689821;
+			public const int message_come_from_tip = 2131689821;
 			
 			// aapt resource value: 0x7F0F015E
-			public const int message_live = 2131689822;
+			public const int message_encrypt_inputpsw_tip_title = 2131689822;
 			
 			// aapt resource value: 0x7F0F015F
-			public const int message_no_data_text = 2131689823;
+			public const int message_live = 2131689823;
 			
 			// aapt resource value: 0x7F0F0160
-			public const int message_refresh_fail_network_exception = 2131689824;
+			public const int message_no_data_text = 2131689824;
 			
 			// aapt resource value: 0x7F0F0161
-			public const int message_refresh_fail_server_exception = 2131689825;
+			public const int message_refresh_fail_network_exception = 2131689825;
 			
 			// aapt resource value: 0x7F0F0162
-			public const int message_video = 2131689826;
+			public const int message_refresh_fail_server_exception = 2131689826;
 			
 			// aapt resource value: 0x7F0F0163
-			public const int modify_online_schedule = 2131689827;
+			public const int message_video = 2131689827;
 			
 			// aapt resource value: 0x7F0F0164
-			public const int month = 2131689828;
+			public const int modify_online_schedule = 2131689828;
 			
 			// aapt resource value: 0x7F0F0165
-			public const int more = 2131689829;
+			public const int month = 2131689829;
 			
 			// aapt resource value: 0x7F0F0166
-			public const int more_local_image = 2131689830;
+			public const int more = 2131689830;
 			
 			// aapt resource value: 0x7F0F0167
-			public const int more_setting = 2131689831;
+			public const int more_local_image = 2131689831;
 			
 			// aapt resource value: 0x7F0F0168
-			public const int my_collect = 2131689832;
+			public const int more_setting = 2131689832;
 			
 			// aapt resource value: 0x7F0F0169
-			public const int my_devices = 2131689833;
+			public const int my_collect = 2131689833;
 			
 			// aapt resource value: 0x7F0F016A
-			public const int network_error_retry_prompt = 2131689834;
+			public const int my_devices = 2131689834;
 			
 			// aapt resource value: 0x7F0F016B
-			public const int network_exception = 2131689835;
+			public const int network_error_retry_prompt = 2131689835;
 			
 			// aapt resource value: 0x7F0F016C
-			public const int network_video_recorder = 2131689836;
+			public const int network_exception = 2131689836;
 			
 			// aapt resource value: 0x7F0F016D
-			public const int newest_version = 2131689837;
+			public const int network_video_recorder = 2131689837;
 			
 			// aapt resource value: 0x7F0F016E
-			public const int next_button_txt = 2131689838;
-			
-			// aapt resource value: 0x7F0F0175
-			public const int not_find_any_devices = 2131689845;
-			
-			// aapt resource value: 0x7F0F0176
-			public const int not_now = 2131689846;
-			
-			// aapt resource value: 0x7F0F0177
-			public const int not_recognized_fingerprint_hint = 2131689847;
+			public const int newest_version = 2131689838;
 			
 			// aapt resource value: 0x7F0F016F
-			public const int no_event_device_prompt = 2131689839;
+			public const int next_button_txt = 2131689839;
 			
-			// aapt resource value: 0x7F0F0170
-			public const int no_leave_device_prompt = 2131689840;
+			// aapt resource value: 0x7F0F0176
+			public const int not_find_any_devices = 2131689846;
 			
-			// aapt resource value: 0x7F0F0171
-			public const int no_more_alarm_tip = 2131689841;
-			
-			// aapt resource value: 0x7F0F0172
-			public const int no_more_leave_tip = 2131689842;
-			
-			// aapt resource value: 0x7F0F0173
-			public const int no_remote_data = 2131689843;
-			
-			// aapt resource value: 0x7F0F0174
-			public const int no_result_text = 2131689844;
+			// aapt resource value: 0x7F0F0177
+			public const int not_now = 2131689847;
 			
 			// aapt resource value: 0x7F0F0178
-			public const int offline_warn_text = 2131689848;
+			public const int not_recognized_fingerprint_hint = 2131689848;
 			
-			// aapt resource value: 0x7F0F017A
-			public const int online_time = 2131689850;
+			// aapt resource value: 0x7F0F0170
+			public const int no_event_device_prompt = 2131689840;
+			
+			// aapt resource value: 0x7F0F0171
+			public const int no_leave_device_prompt = 2131689841;
+			
+			// aapt resource value: 0x7F0F0172
+			public const int no_more_alarm_tip = 2131689842;
+			
+			// aapt resource value: 0x7F0F0173
+			public const int no_more_leave_tip = 2131689843;
+			
+			// aapt resource value: 0x7F0F0174
+			public const int no_remote_data = 2131689844;
+			
+			// aapt resource value: 0x7F0F0175
+			public const int no_result_text = 2131689845;
 			
 			// aapt resource value: 0x7F0F0179
-			public const int on_the_phone = 2131689849;
+			public const int offline_warn_text = 2131689849;
 			
 			// aapt resource value: 0x7F0F017B
-			public const int open_camera_fail = 2131689851;
+			public const int online_time = 2131689851;
+			
+			// aapt resource value: 0x7F0F017A
+			public const int on_the_phone = 2131689850;
 			
 			// aapt resource value: 0x7F0F017C
-			public const int open_camera_lens = 2131689852;
+			public const int open_camera_fail = 2131689852;
 			
 			// aapt resource value: 0x7F0F017D
-			public const int open_source_localization = 2131689853;
+			public const int open_camera_lens = 2131689853;
 			
 			// aapt resource value: 0x7F0F017E
-			public const int open_ys_service = 2131689854;
+			public const int open_source_localization = 2131689854;
 			
 			// aapt resource value: 0x7F0F017F
-			public const int open_ys_service_fail = 2131689855;
+			public const int open_ys_service = 2131689855;
 			
 			// aapt resource value: 0x7F0F0180
-			public const int open_ys_service_success = 2131689856;
+			public const int open_ys_service_fail = 2131689856;
 			
 			// aapt resource value: 0x7F0F0181
-			public const int operational_fail = 2131689857;
+			public const int open_ys_service_success = 2131689857;
 			
 			// aapt resource value: 0x7F0F0182
-			public const int option_support_web = 2131689858;
+			public const int operational_fail = 2131689858;
 			
 			// aapt resource value: 0x7F0F0183
-			public const int password_et_hint = 2131689859;
+			public const int option_support_web = 2131689859;
 			
 			// aapt resource value: 0x7F0F0184
-			public const int password_security_txt = 2131689860;
+			public const int password_et_hint = 2131689860;
 			
 			// aapt resource value: 0x7F0F0185
-			public const int password_toggle_content_description = 2131689861;
+			public const int password_security_txt = 2131689861;
 			
 			// aapt resource value: 0x7F0F0186
-			public const int path_password_eye = 2131689862;
+			public const int password_toggle_content_description = 2131689862;
 			
 			// aapt resource value: 0x7F0F0187
-			public const int path_password_eye_mask_strike_through = 2131689863;
+			public const int path_password_eye = 2131689863;
 			
 			// aapt resource value: 0x7F0F0188
-			public const int path_password_eye_mask_visible = 2131689864;
+			public const int path_password_eye_mask_strike_through = 2131689864;
 			
 			// aapt resource value: 0x7F0F0189
-			public const int path_password_strike_through = 2131689865;
+			public const int path_password_eye_mask_visible = 2131689865;
 			
 			// aapt resource value: 0x7F0F018A
-			public const int pickerview_cancel = 2131689866;
+			public const int path_password_strike_through = 2131689866;
 			
 			// aapt resource value: 0x7F0F018B
-			public const int pickerview_day = 2131689867;
+			public const int pickerview_cancel = 2131689867;
 			
 			// aapt resource value: 0x7F0F018C
-			public const int pickerview_hours = 2131689868;
+			public const int pickerview_day = 2131689868;
 			
 			// aapt resource value: 0x7F0F018D
-			public const int pickerview_minutes = 2131689869;
+			public const int pickerview_hours = 2131689869;
 			
 			// aapt resource value: 0x7F0F018E
-			public const int pickerview_month = 2131689870;
+			public const int pickerview_minutes = 2131689870;
 			
 			// aapt resource value: 0x7F0F018F
-			public const int pickerview_seconds = 2131689871;
+			public const int pickerview_month = 2131689871;
 			
 			// aapt resource value: 0x7F0F0190
-			public const int pickerview_submit = 2131689872;
+			public const int pickerview_seconds = 2131689872;
 			
 			// aapt resource value: 0x7F0F0191
-			public const int pickerview_year = 2131689873;
-			
-			// aapt resource value: 0x7F0F0193
-			public const int platform_login_button_txt = 2131689875;
+			public const int pickerview_submit = 2131689873;
 			
 			// aapt resource value: 0x7F0F0192
-			public const int plat_connected = 2131689874;
+			public const int pickerview_year = 2131689874;
 			
 			// aapt resource value: 0x7F0F0194
-			public const int play_hour = 2131689876;
+			public const int platform_login_button_txt = 2131689876;
+			
+			// aapt resource value: 0x7F0F0193
+			public const int plat_connected = 2131689875;
 			
 			// aapt resource value: 0x7F0F0195
-			public const int please_connect_the_power = 2131689877;
-			
-			// aapt resource value: 0x7F0F0197
-			public const int please_input_phonenumber_txt = 2131689879;
+			public const int play_hour = 2131689877;
 			
 			// aapt resource value: 0x7F0F0196
-			public const int please_input_phone_txt = 2131689878;
+			public const int please_connect_the_power = 2131689878;
 			
 			// aapt resource value: 0x7F0F0198
-			public const int please_input_platform_accesstoken_txt = 2131689880;
+			public const int please_input_phonenumber_txt = 2131689880;
+			
+			// aapt resource value: 0x7F0F0197
+			public const int please_input_phone_txt = 2131689879;
 			
 			// aapt resource value: 0x7F0F0199
-			public const int please_input_sign_get_sms_txt = 2131689881;
+			public const int please_input_platform_accesstoken_txt = 2131689881;
 			
 			// aapt resource value: 0x7F0F019A
-			public const int please_input_sign_txt = 2131689882;
+			public const int please_input_sign_get_sms_txt = 2131689882;
 			
 			// aapt resource value: 0x7F0F019B
-			public const int please_input_userid_txt = 2131689883;
+			public const int please_input_sign_txt = 2131689883;
 			
 			// aapt resource value: 0x7F0F019C
-			public const int please_open_wifi_network = 2131689884;
+			public const int please_input_userid_txt = 2131689884;
 			
 			// aapt resource value: 0x7F0F019D
-			public const int please_open_wifi_network_sadp = 2131689885;
+			public const int please_open_wifi_network = 2131689885;
 			
 			// aapt resource value: 0x7F0F019E
-			public const int please_operate_after_select_any_record = 2131689886;
+			public const int please_open_wifi_network_sadp = 2131689886;
 			
 			// aapt resource value: 0x7F0F019F
-			public const int please_try_connect_device_hotspot_manually = 2131689887;
+			public const int please_operate_after_select_any_record = 2131689887;
 			
 			// aapt resource value: 0x7F0F01A0
-			public const int plug = 2131689888;
+			public const int please_try_connect_device_hotspot_manually = 2131689888;
 			
 			// aapt resource value: 0x7F0F01A1
-			public const int pm = 2131689889;
+			public const int plug = 2131689889;
 			
 			// aapt resource value: 0x7F0F01A2
-			public const int press_again_to_exit = 2131689890;
+			public const int pm = 2131689890;
 			
 			// aapt resource value: 0x7F0F01A3
-			public const int press_to_talk_release_to_listen = 2131689891;
+			public const int press_again_to_exit = 2131689891;
 			
 			// aapt resource value: 0x7F0F01A4
-			public const int probe_not_support_tip = 2131689892;
+			public const int press_to_talk_release_to_listen = 2131689892;
 			
 			// aapt resource value: 0x7F0F01A5
-			public const int promptUserToActivate = 2131689893;
+			public const int probe_not_support_tip = 2131689893;
 			
 			// aapt resource value: 0x7F0F01A6
-			public const int ptz = 2131689894;
+			public const int promptUserToActivate = 2131689894;
 			
 			// aapt resource value: 0x7F0F01A7
-			public const int ptz_control_timeout_cruise_track_failed = 2131689895;
+			public const int ptz = 2131689895;
 			
 			// aapt resource value: 0x7F0F01A8
-			public const int ptz_control_timeout_sound_lacalization_failed = 2131689896;
+			public const int ptz_control_timeout_cruise_track_failed = 2131689896;
 			
 			// aapt resource value: 0x7F0F01A9
-			public const int ptz_is_preseting = 2131689897;
+			public const int ptz_control_timeout_sound_lacalization_failed = 2131689897;
 			
 			// aapt resource value: 0x7F0F01AA
-			public const int ptz_mirroring_failed = 2131689898;
+			public const int ptz_is_preseting = 2131689898;
 			
 			// aapt resource value: 0x7F0F01AB
-			public const int ptz_operation_failed = 2131689899;
+			public const int ptz_mirroring_failed = 2131689899;
 			
 			// aapt resource value: 0x7F0F01AC
-			public const int ptz_operation_too_frequently = 2131689900;
+			public const int ptz_operation_failed = 2131689900;
 			
 			// aapt resource value: 0x7F0F01AD
-			public const int ptz_preset_current_position_failed = 2131689901;
+			public const int ptz_operation_too_frequently = 2131689901;
 			
 			// aapt resource value: 0x7F0F01AE
-			public const int ptz_preset_exceed_maxnum_failed = 2131689902;
+			public const int ptz_preset_current_position_failed = 2131689902;
 			
 			// aapt resource value: 0x7F0F01AF
-			public const int ptz_preset_invalid_position_failed = 2131689903;
+			public const int ptz_preset_exceed_maxnum_failed = 2131689903;
 			
 			// aapt resource value: 0x7F0F01B0
-			public const int ptz_preset_sound_localization_failed = 2131689904;
+			public const int ptz_preset_invalid_position_failed = 2131689904;
 			
 			// aapt resource value: 0x7F0F01B1
-			public const int ptz_privacying_failed = 2131689905;
+			public const int ptz_preset_sound_localization_failed = 2131689905;
 			
 			// aapt resource value: 0x7F0F01B2
-			public const int push_event_alarm_title = 2131689906;
+			public const int ptz_privacying_failed = 2131689906;
 			
 			// aapt resource value: 0x7F0F01B3
-			public const int push_event_from = 2131689907;
+			public const int push_event_alarm_title = 2131689907;
 			
 			// aapt resource value: 0x7F0F01B4
-			public const int push_event_get = 2131689908;
+			public const int push_event_from = 2131689908;
 			
 			// aapt resource value: 0x7F0F01B5
-			public const int push_event_get_count = 2131689909;
+			public const int push_event_get = 2131689909;
 			
 			// aapt resource value: 0x7F0F01B6
-			public const int push_out_event_alarm_title = 2131689910;
+			public const int push_event_get_count = 2131689910;
 			
 			// aapt resource value: 0x7F0F01B7
-			public const int pwd_not_contain_chinese = 2131689911;
+			public const int push_out_event_alarm_title = 2131689911;
 			
 			// aapt resource value: 0x7F0F01B8
-			public const int qrcode_card = 2131689912;
+			public const int pwd_not_contain_chinese = 2131689912;
 			
 			// aapt resource value: 0x7F0F01B9
-			public const int quality_balanced = 2131689913;
+			public const int qrcode_card = 2131689913;
 			
 			// aapt resource value: 0x7F0F01BA
-			public const int quality_flunet = 2131689914;
+			public const int quality_balanced = 2131689914;
 			
 			// aapt resource value: 0x7F0F01BB
-			public const int quality_hd = 2131689915;
+			public const int quality_flunet = 2131689915;
 			
 			// aapt resource value: 0x7F0F01BC
-			public const int quality_super_hd = 2131689916;
-			
-			// aapt resource value: 0x7F0F01C3
-			public const int querying_camera_text = 2131689923;
+			public const int quality_hd = 2131689916;
 			
 			// aapt resource value: 0x7F0F01BD
-			public const int query_camera_fail = 2131689917;
-			
-			// aapt resource value: 0x7F0F01BE
-			public const int query_camera_fail_network_exception = 2131689918;
-			
-			// aapt resource value: 0x7F0F01BF
-			public const int query_camera_fail_network_exception_or_server_exception = 2131689919;
-			
-			// aapt resource value: 0x7F0F01C0
-			public const int query_camera_fail_not_exit = 2131689920;
-			
-			// aapt resource value: 0x7F0F01C1
-			public const int query_camera_fail_repeat_error = 2131689921;
-			
-			// aapt resource value: 0x7F0F01C2
-			public const int query_camera_fail_server_exception = 2131689922;
+			public const int quality_super_hd = 2131689917;
 			
 			// aapt resource value: 0x7F0F01C4
-			public const int readed = 2131689924;
+			public const int querying_camera_text = 2131689924;
+			
+			// aapt resource value: 0x7F0F01BE
+			public const int query_camera_fail = 2131689918;
+			
+			// aapt resource value: 0x7F0F01BF
+			public const int query_camera_fail_network_exception = 2131689919;
+			
+			// aapt resource value: 0x7F0F01C0
+			public const int query_camera_fail_network_exception_or_server_exception = 2131689920;
+			
+			// aapt resource value: 0x7F0F01C1
+			public const int query_camera_fail_not_exit = 2131689921;
+			
+			// aapt resource value: 0x7F0F01C2
+			public const int query_camera_fail_repeat_error = 2131689922;
+			
+			// aapt resource value: 0x7F0F01C3
+			public const int query_camera_fail_server_exception = 2131689923;
 			
 			// aapt resource value: 0x7F0F01C5
-			public const int realplay = 2131689925;
+			public const int readed = 2131689925;
 			
 			// aapt resource value: 0x7F0F01C6
-			public const int realplay_close_sound_localization_fail = 2131689926;
+			public const int realplay = 2131689926;
 			
 			// aapt resource value: 0x7F0F01C7
-			public const int realplay_encrypt_password_error_message = 2131689927;
+			public const int realplay_close_sound_localization_fail = 2131689927;
 			
 			// aapt resource value: 0x7F0F01C8
-			public const int realplay_encrypt_password_error_title = 2131689928;
+			public const int realplay_encrypt_password_error_message = 2131689928;
 			
 			// aapt resource value: 0x7F0F01C9
-			public const int realplay_fail_connect_device = 2131689929;
+			public const int realplay_encrypt_password_error_title = 2131689929;
 			
 			// aapt resource value: 0x7F0F01CA
-			public const int realplay_fail_device_not_exist = 2131689930;
+			public const int realplay_fail_connect_device = 2131689930;
 			
 			// aapt resource value: 0x7F0F01CB
-			public const int realplay_full_talk_start_tip = 2131689931;
+			public const int realplay_fail_device_not_exist = 2131689931;
 			
 			// aapt resource value: 0x7F0F01CC
-			public const int realplay_loading = 2131689932;
+			public const int realplay_full_talk_start_tip = 2131689932;
 			
 			// aapt resource value: 0x7F0F01CD
-			public const int realplay_login_password_error = 2131689933;
+			public const int realplay_loading = 2131689933;
 			
 			// aapt resource value: 0x7F0F01CE
-			public const int realplay_login_password_msg = 2131689934;
+			public const int realplay_login_password_error = 2131689934;
 			
 			// aapt resource value: 0x7F0F01CF
-			public const int realplay_no_encrypt_password_error = 2131689935;
+			public const int realplay_login_password_msg = 2131689935;
 			
 			// aapt resource value: 0x7F0F01D0
-			public const int realplay_no_permission = 2131689936;
+			public const int realplay_no_encrypt_password_error = 2131689936;
 			
 			// aapt resource value: 0x7F0F01D1
-			public const int realplay_open_sound_localization_fail = 2131689937;
+			public const int realplay_no_permission = 2131689937;
 			
 			// aapt resource value: 0x7F0F01D2
-			public const int realplay_password_error_message1 = 2131689938;
+			public const int realplay_open_sound_localization_fail = 2131689938;
 			
 			// aapt resource value: 0x7F0F01D3
-			public const int realplay_password_error_message3 = 2131689939;
+			public const int realplay_password_error_message1 = 2131689939;
 			
 			// aapt resource value: 0x7F0F01D4
-			public const int realplay_password_error_message4 = 2131689940;
+			public const int realplay_password_error_message3 = 2131689940;
 			
 			// aapt resource value: 0x7F0F01D5
-			public const int realplay_password_error_title = 2131689941;
+			public const int realplay_password_error_message4 = 2131689941;
 			
 			// aapt resource value: 0x7F0F01D6
-			public const int realplay_play_fail = 2131689942;
+			public const int realplay_password_error_title = 2131689942;
 			
 			// aapt resource value: 0x7F0F01D7
-			public const int realplay_play_fail_becauseof_network = 2131689943;
+			public const int realplay_play_fail = 2131689943;
 			
 			// aapt resource value: 0x7F0F01D8
-			public const int realplay_play_no_video_source = 2131689944;
+			public const int realplay_play_fail_becauseof_network = 2131689944;
 			
 			// aapt resource value: 0x7F0F01D9
-			public const int realplay_play_talkback_fail = 2131689945;
+			public const int realplay_play_no_video_source = 2131689945;
 			
 			// aapt resource value: 0x7F0F01DA
-			public const int realplay_play_talkback_fail_ison = 2131689946;
+			public const int realplay_play_talkback_fail = 2131689946;
 			
 			// aapt resource value: 0x7F0F01DB
-			public const int realplay_play_talkback_fail_privacy = 2131689947;
+			public const int realplay_play_talkback_fail_ison = 2131689947;
 			
 			// aapt resource value: 0x7F0F01DC
-			public const int realplay_play_talkback_network_exception = 2131689948;
+			public const int realplay_play_talkback_fail_privacy = 2131689948;
 			
 			// aapt resource value: 0x7F0F01DD
-			public const int realplay_play_talkback_request_timeout = 2131689949;
+			public const int realplay_play_talkback_network_exception = 2131689949;
 			
 			// aapt resource value: 0x7F0F01DE
-			public const int realplay_set_fail_network = 2131689950;
+			public const int realplay_play_talkback_request_timeout = 2131689950;
 			
 			// aapt resource value: 0x7F0F01DF
-			public const int realplay_set_fail_status = 2131689951;
+			public const int realplay_set_fail_network = 2131689951;
 			
 			// aapt resource value: 0x7F0F01E0
-			public const int realplay_set_vediomode_fail = 2131689952;
+			public const int realplay_set_fail_status = 2131689952;
 			
 			// aapt resource value: 0x7F0F01E1
-			public const int realplay_share_no_permission = 2131689953;
+			public const int realplay_set_vediomode_fail = 2131689953;
 			
 			// aapt resource value: 0x7F0F01E2
-			public const int realplay_share_time_over = 2131689954;
+			public const int realplay_share_no_permission = 2131689954;
 			
 			// aapt resource value: 0x7F0F01E3
-			public const int realplay_verifycode_error_message0 = 2131689955;
+			public const int realplay_share_time_over = 2131689955;
 			
 			// aapt resource value: 0x7F0F01E4
-			public const int realplay_verifycode_error_placehold = 2131689956;
+			public const int realplay_verifycode_error_message0 = 2131689956;
 			
 			// aapt resource value: 0x7F0F01E5
-			public const int receice_leave_msg_audio = 2131689957;
+			public const int realplay_verifycode_error_placehold = 2131689957;
 			
 			// aapt resource value: 0x7F0F01E6
-			public const int receice_leave_msg_video = 2131689958;
+			public const int receice_leave_msg_audio = 2131689958;
 			
 			// aapt resource value: 0x7F0F01E7
-			public const int record = 2131689959;
+			public const int receice_leave_msg_video = 2131689959;
 			
 			// aapt resource value: 0x7F0F01E8
-			public const int refresh = 2131689960;
+			public const int record = 2131689960;
 			
 			// aapt resource value: 0x7F0F01E9
-			public const int refresh_empty_hint = 2131689961;
+			public const int refresh = 2131689961;
 			
 			// aapt resource value: 0x7F0F01EA
-			public const int refresh_fail_hint = 2131689962;
-			
-			// aapt resource value: 0x7F0F01EC
-			public const int remoteplayback_capture_fail = 2131689964;
-			
-			// aapt resource value: 0x7F0F01ED
-			public const int remoteplayback_capture_fail_for_memory = 2131689965;
-			
-			// aapt resource value: 0x7F0F01EE
-			public const int remoteplayback_connect_device_error = 2131689966;
-			
-			// aapt resource value: 0x7F0F01EF
-			public const int remoteplayback_connect_server_error = 2131689967;
-			
-			// aapt resource value: 0x7F0F01F0
-			public const int remoteplayback_fail = 2131689968;
-			
-			// aapt resource value: 0x7F0F01F1
-			public const int remoteplayback_norecordfile = 2131689969;
-			
-			// aapt resource value: 0x7F0F01F2
-			public const int remoteplayback_norecordfile_alarm = 2131689970;
-			
-			// aapt resource value: 0x7F0F01F3
-			public const int remoteplayback_over_link = 2131689971;
-			
-			// aapt resource value: 0x7F0F01F4
-			public const int remoteplayback_record_fail = 2131689972;
-			
-			// aapt resource value: 0x7F0F01F5
-			public const int remoteplayback_record_fail_for_memory = 2131689973;
+			public const int refresh_empty_hint = 2131689962;
 			
 			// aapt resource value: 0x7F0F01EB
-			public const int remoteplayback_SDCard_disable_use = 2131689963;
+			public const int refresh_fail_hint = 2131689963;
+			
+			// aapt resource value: 0x7F0F01ED
+			public const int remoteplayback_capture_fail = 2131689965;
+			
+			// aapt resource value: 0x7F0F01EE
+			public const int remoteplayback_capture_fail_for_memory = 2131689966;
+			
+			// aapt resource value: 0x7F0F01EF
+			public const int remoteplayback_connect_device_error = 2131689967;
+			
+			// aapt resource value: 0x7F0F01F0
+			public const int remoteplayback_connect_server_error = 2131689968;
+			
+			// aapt resource value: 0x7F0F01F1
+			public const int remoteplayback_fail = 2131689969;
+			
+			// aapt resource value: 0x7F0F01F2
+			public const int remoteplayback_norecordfile = 2131689970;
+			
+			// aapt resource value: 0x7F0F01F3
+			public const int remoteplayback_norecordfile_alarm = 2131689971;
+			
+			// aapt resource value: 0x7F0F01F4
+			public const int remoteplayback_over_link = 2131689972;
+			
+			// aapt resource value: 0x7F0F01F5
+			public const int remoteplayback_record_fail = 2131689973;
 			
 			// aapt resource value: 0x7F0F01F6
-			public const int remoteplayback_searchfile_fail_for_device = 2131689974;
+			public const int remoteplayback_record_fail_for_memory = 2131689974;
+			
+			// aapt resource value: 0x7F0F01EC
+			public const int remoteplayback_SDCard_disable_use = 2131689964;
 			
 			// aapt resource value: 0x7F0F01F7
-			public const int remoteplayback_searchfile_fail_for_network = 2131689975;
+			public const int remoteplayback_searchfile_fail_for_device = 2131689975;
 			
 			// aapt resource value: 0x7F0F01F8
-			public const int reset_10_sec_to_release = 2131689976;
+			public const int remoteplayback_searchfile_fail_for_network = 2131689976;
 			
 			// aapt resource value: 0x7F0F01F9
-			public const int reset_device = 2131689977;
+			public const int reset_10_sec_to_release = 2131689977;
 			
 			// aapt resource value: 0x7F0F01FA
-			public const int result_txt = 2131689978;
+			public const int reset_device = 2131689978;
 			
 			// aapt resource value: 0x7F0F01FB
-			public const int retry = 2131689979;
-			
-			// aapt resource value: 0x7F0F01FD
-			public const int router = 2131689981;
+			public const int result_txt = 2131689979;
 			
 			// aapt resource value: 0x7F0F01FC
-			public const int route_status_light = 2131689980;
+			public const int retry = 2131689980;
 			
 			// aapt resource value: 0x7F0F01FE
-			public const int sadp_activate_state1 = 2131689982;
+			public const int router = 2131689982;
+			
+			// aapt resource value: 0x7F0F01FD
+			public const int route_status_light = 2131689981;
 			
 			// aapt resource value: 0x7F0F01FF
-			public const int sadp_activate_state2 = 2131689983;
+			public const int sadp_activate_state1 = 2131689983;
 			
 			// aapt resource value: 0x7F0F0200
-			public const int sadp_password_input_hint = 2131689984;
+			public const int sadp_activate_state2 = 2131689984;
 			
 			// aapt resource value: 0x7F0F0201
-			public const int sadp_password_toast = 2131689985;
+			public const int sadp_password_input_hint = 2131689985;
 			
 			// aapt resource value: 0x7F0F0202
-			public const int sadp_password_too_weak = 2131689986;
+			public const int sadp_password_toast = 2131689986;
 			
 			// aapt resource value: 0x7F0F0203
-			public const int sadp_quit_activate = 2131689987;
+			public const int sadp_password_too_weak = 2131689987;
 			
 			// aapt resource value: 0x7F0F0204
-			public const int save_encrypt_password_fail_network_exception = 2131689988;
+			public const int sadp_quit_activate = 2131689988;
 			
 			// aapt resource value: 0x7F0F0205
-			public const int scan_add = 2131689989;
+			public const int save_encrypt_password_fail_network_exception = 2131689989;
 			
 			// aapt resource value: 0x7F0F0206
-			public const int scan_connet_network = 2131689990;
+			public const int scan_add = 2131689990;
 			
 			// aapt resource value: 0x7F0F0207
-			public const int scan_cue_txt = 2131689991;
+			public const int scan_connet_network = 2131689991;
 			
 			// aapt resource value: 0x7F0F0208
-			public const int scan_device_add_by_others = 2131689992;
+			public const int scan_cue_txt = 2131689992;
 			
 			// aapt resource value: 0x7F0F0209
-			public const int scan_device_search = 2131689993;
+			public const int scan_device_add_by_others = 2131689993;
 			
 			// aapt resource value: 0x7F0F020A
-			public const int scan_device_serial_no = 2131689994;
+			public const int scan_device_search = 2131689994;
 			
 			// aapt resource value: 0x7F0F020B
-			public const int scan_network_unavailible = 2131689995;
+			public const int scan_device_serial_no = 2131689995;
 			
 			// aapt resource value: 0x7F0F020C
-			public const int scan_probe_qrcode_error = 2131689996;
+			public const int scan_network_unavailible = 2131689996;
 			
 			// aapt resource value: 0x7F0F020D
-			public const int scan_search_probe_qrcode = 2131689997;
+			public const int scan_probe_qrcode_error = 2131689997;
 			
 			// aapt resource value: 0x7F0F020E
-			public const int scan_title_txt = 2131689998;
+			public const int scan_search_probe_qrcode = 2131689998;
 			
 			// aapt resource value: 0x7F0F020F
-			public const int screenshot_success = 2131689999;
+			public const int scan_title_txt = 2131689999;
 			
 			// aapt resource value: 0x7F0F0210
-			public const int sdk_is_init = 2131690000;
+			public const int screenshot_fail = 2131690000;
 			
 			// aapt resource value: 0x7F0F0211
-			public const int search = 2131690001;
+			public const int screenshot_success = 2131690001;
 			
 			// aapt resource value: 0x7F0F0212
-			public const int search_menu_title = 2131690002;
+			public const int sdk_is_init = 2131690002;
 			
 			// aapt resource value: 0x7F0F0213
-			public const int secure_validate = 2131690003;
-			
-			// aapt resource value: 0x7F0F0215
-			public const int secure_validatee_fail = 2131690005;
+			public const int search = 2131690003;
 			
 			// aapt resource value: 0x7F0F0214
-			public const int secure_validate_success = 2131690004;
+			public const int search_menu_title = 2131690004;
 			
-			// aapt resource value: 0x7F0F0216
-			public const int seek_camera_fail_device_not_support_shipin7 = 2131690006;
+			// aapt resource value: 0x7F0F0215
+			public const int secure_validate = 2131690005;
 			
 			// aapt resource value: 0x7F0F0217
-			public const int select_all = 2131690007;
+			public const int secure_validatee_fail = 2131690007;
+			
+			// aapt resource value: 0x7F0F0216
+			public const int secure_validate_success = 2131690006;
 			
 			// aapt resource value: 0x7F0F0218
-			public const int select_date = 2131690008;
+			public const int seek_camera_fail_device_not_support_shipin7 = 2131690008;
 			
 			// aapt resource value: 0x7F0F0219
-			public const int serial_add_hint = 2131690009;
+			public const int select_all = 2131690009;
 			
 			// aapt resource value: 0x7F0F021A
-			public const int serial_add_password_error_title = 2131690010;
+			public const int select_date = 2131690010;
 			
 			// aapt resource value: 0x7F0F021B
-			public const int serial_input_text = 2131690011;
+			public const int serial_add_hint = 2131690011;
 			
 			// aapt resource value: 0x7F0F021C
-			public const int serial_number_error = 2131690012;
+			public const int serial_add_password_error_title = 2131690012;
 			
 			// aapt resource value: 0x7F0F021D
-			public const int serial_number_is_null = 2131690013;
+			public const int serial_input_text = 2131690013;
 			
 			// aapt resource value: 0x7F0F021E
-			public const int serial_number_put_the_right_no = 2131690014;
+			public const int serial_number_error = 2131690014;
 			
 			// aapt resource value: 0x7F0F021F
-			public const int server_area = 2131690015;
-			
-			// aapt resource value: 0x7F0F0224
-			public const int setting = 2131690020;
-			
-			// aapt resource value: 0x7F0F0225
-			public const int setting_video_level = 2131690021;
+			public const int serial_number_is_null = 2131690015;
 			
 			// aapt resource value: 0x7F0F0220
-			public const int set_defence_plan = 2131690016;
+			public const int serial_number_put_the_right_no = 2131690016;
 			
 			// aapt resource value: 0x7F0F0221
-			public const int set_device_wifi_network_need_reset_the_device = 2131690017;
-			
-			// aapt resource value: 0x7F0F0222
-			public const int set_ptz_flip_fail = 2131690018;
-			
-			// aapt resource value: 0x7F0F0223
-			public const int set_ptz_flip_success = 2131690019;
+			public const int server_area = 2131690017;
 			
 			// aapt resource value: 0x7F0F0226
-			public const int share_devices = 2131690022;
+			public const int setting = 2131690022;
 			
 			// aapt resource value: 0x7F0F0227
-			public const int sms_verify_bind_error = 2131690023;
+			public const int setting_video_level = 2131690023;
+			
+			// aapt resource value: 0x7F0F0222
+			public const int set_defence_plan = 2131690018;
+			
+			// aapt resource value: 0x7F0F0223
+			public const int set_device_wifi_network_need_reset_the_device = 2131690019;
+			
+			// aapt resource value: 0x7F0F0224
+			public const int set_ptz_flip_fail = 2131690020;
+			
+			// aapt resource value: 0x7F0F0225
+			public const int set_ptz_flip_success = 2131690021;
 			
 			// aapt resource value: 0x7F0F0228
-			public const int sms_verify_code_received = 2131690024;
+			public const int share_devices = 2131690024;
 			
 			// aapt resource value: 0x7F0F0229
-			public const int source_detection_off = 2131690025;
+			public const int sms_verify_bind_error = 2131690025;
 			
 			// aapt resource value: 0x7F0F022A
-			public const int source_detection_on = 2131690026;
+			public const int sms_verify_code_received = 2131690026;
 			
 			// aapt resource value: 0x7F0F022B
-			public const int specified_device = 2131690027;
+			public const int source_detection_off = 2131690027;
 			
 			// aapt resource value: 0x7F0F022C
-			public const int srl_component_falsify = 2131690028;
+			public const int source_detection_on = 2131690028;
 			
 			// aapt resource value: 0x7F0F022D
-			public const int srl_content_empty = 2131690029;
+			public const int specified_device = 2131690029;
 			
 			// aapt resource value: 0x7F0F022E
-			public const int srl_footer_failed = 2131690030;
+			public const int srl_component_falsify = 2131690030;
 			
 			// aapt resource value: 0x7F0F022F
-			public const int srl_footer_finish = 2131690031;
+			public const int srl_content_empty = 2131690031;
 			
 			// aapt resource value: 0x7F0F0230
-			public const int srl_footer_loading = 2131690032;
+			public const int srl_footer_failed = 2131690032;
 			
 			// aapt resource value: 0x7F0F0231
-			public const int srl_footer_nothing = 2131690033;
+			public const int srl_footer_finish = 2131690033;
 			
 			// aapt resource value: 0x7F0F0232
-			public const int srl_footer_pulling = 2131690034;
+			public const int srl_footer_loading = 2131690034;
 			
 			// aapt resource value: 0x7F0F0233
-			public const int srl_footer_refreshing = 2131690035;
+			public const int srl_footer_nothing = 2131690035;
 			
 			// aapt resource value: 0x7F0F0234
-			public const int srl_footer_release = 2131690036;
+			public const int srl_footer_pulling = 2131690036;
 			
 			// aapt resource value: 0x7F0F0235
-			public const int srl_header_failed = 2131690037;
+			public const int srl_footer_refreshing = 2131690037;
 			
 			// aapt resource value: 0x7F0F0236
-			public const int srl_header_finish = 2131690038;
+			public const int srl_footer_release = 2131690038;
 			
 			// aapt resource value: 0x7F0F0237
-			public const int srl_header_loading = 2131690039;
+			public const int srl_header_failed = 2131690039;
 			
 			// aapt resource value: 0x7F0F0238
-			public const int srl_header_pulling = 2131690040;
+			public const int srl_header_finish = 2131690040;
 			
 			// aapt resource value: 0x7F0F0239
-			public const int srl_header_refreshing = 2131690041;
+			public const int srl_header_loading = 2131690041;
 			
 			// aapt resource value: 0x7F0F023A
-			public const int srl_header_release = 2131690042;
+			public const int srl_header_pulling = 2131690042;
 			
 			// aapt resource value: 0x7F0F023B
-			public const int srl_header_secondary = 2131690043;
+			public const int srl_header_refreshing = 2131690043;
 			
 			// aapt resource value: 0x7F0F023C
-			public const int srl_header_update = 2131690044;
+			public const int srl_header_release = 2131690044;
 			
 			// aapt resource value: 0x7F0F023D
-			public const int start_cloud = 2131690045;
+			public const int srl_header_secondary = 2131690045;
 			
 			// aapt resource value: 0x7F0F023E
-			public const int start_to_experience = 2131690046;
+			public const int srl_header_update = 2131690046;
 			
 			// aapt resource value: 0x7F0F023F
-			public const int start_voice_talk = 2131690047;
+			public const int start_cloud = 2131690047;
 			
 			// aapt resource value: 0x7F0F0240
-			public const int status_bar_notification_info_overflow = 2131690048;
+			public const int start_to_experience = 2131690048;
 			
 			// aapt resource value: 0x7F0F0241
-			public const int step3_adding_device_to_account = 2131690049;
+			public const int start_voice_talk = 2131690049;
 			
 			// aapt resource value: 0x7F0F0242
-			public const int storage_status = 2131690050;
+			public const int status_bar_notification_info_overflow = 2131690050;
 			
 			// aapt resource value: 0x7F0F0243
-			public const int stream_type = 2131690051;
-			
-			// aapt resource value: 0x7F0F0246
-			public const int string_apiurl = 2131690054;
+			public const int step3_adding_device_to_account = 2131690051;
 			
 			// aapt resource value: 0x7F0F0244
-			public const int string_ap_connection = 2131690052;
+			public const int storage_status = 2131690052;
 			
 			// aapt resource value: 0x7F0F0245
-			public const int string_ap_connection_normal = 2131690053;
-			
-			// aapt resource value: 0x7F0F0247
-			public const int string_authurl = 2131690055;
-			
-			// aapt resource value: 0x7F0F0249
-			public const int string_deviceserial = 2131690057;
+			public const int stream_type = 2131690053;
 			
 			// aapt resource value: 0x7F0F0248
-			public const int string_device_network_mode = 2131690056;
+			public const int string_apiurl = 2131690056;
 			
-			// aapt resource value: 0x7F0F024A
-			public const int string_ezopenurl = 2131690058;
+			// aapt resource value: 0x7F0F0246
+			public const int string_ap_connection = 2131690054;
+			
+			// aapt resource value: 0x7F0F0247
+			public const int string_ap_connection_normal = 2131690055;
+			
+			// aapt resource value: 0x7F0F0249
+			public const int string_authurl = 2131690057;
 			
 			// aapt resource value: 0x7F0F024B
-			public const int string_get_device_version_fail = 2131690059;
+			public const int string_deviceserial = 2131690059;
+			
+			// aapt resource value: 0x7F0F024A
+			public const int string_device_network_mode = 2131690058;
 			
 			// aapt resource value: 0x7F0F024C
-			public const int string_smart_and_sound_wave_connection = 2131690060;
+			public const int string_ezopenurl = 2131690060;
 			
 			// aapt resource value: 0x7F0F024D
-			public const int string_smart_connection = 2131690061;
+			public const int string_get_device_version_fail = 2131690061;
 			
 			// aapt resource value: 0x7F0F024E
-			public const int string_smart_connection_normal = 2131690062;
+			public const int string_smart_and_sound_wave_connection = 2131690062;
 			
 			// aapt resource value: 0x7F0F024F
-			public const int string_sound_wave_connection = 2131690063;
+			public const int string_smart_connection = 2131690063;
 			
 			// aapt resource value: 0x7F0F0250
-			public const int string_wired_connection = 2131690064;
+			public const int string_smart_connection_normal = 2131690064;
 			
 			// aapt resource value: 0x7F0F0251
-			public const int submit_secure_validate = 2131690065;
+			public const int string_sound_wave_connection = 2131690065;
 			
 			// aapt resource value: 0x7F0F0252
-			public const int submit_sms_code = 2131690066;
+			public const int string_wired_connection = 2131690066;
 			
 			// aapt resource value: 0x7F0F0253
-			public const int switch_to_handset = 2131690067;
+			public const int submit_secure_validate = 2131690067;
 			
 			// aapt resource value: 0x7F0F0254
-			public const int switch_to_speaker = 2131690068;
+			public const int submit_sms_code = 2131690068;
 			
 			// aapt resource value: 0x7F0F0255
-			public const int tab_more = 2131690069;
+			public const int switch_to_handset = 2131690069;
 			
 			// aapt resource value: 0x7F0F0256
-			public const int talk = 2131690070;
-			
-			// aapt resource value: 0x7F0F0259
-			public const int talking = 2131690073;
+			public const int switch_to_speaker = 2131690070;
 			
 			// aapt resource value: 0x7F0F0257
-			public const int talk_open_failed = 2131690071;
+			public const int tab_more = 2131690071;
 			
 			// aapt resource value: 0x7F0F0258
-			public const int talk_open_success = 2131690072;
-			
-			// aapt resource value: 0x7F0F025A
-			public const int tip_heard_voice = 2131690074;
+			public const int talk = 2131690072;
 			
 			// aapt resource value: 0x7F0F025B
-			public const int tip_login_out = 2131690075;
+			public const int talking = 2131690075;
+			
+			// aapt resource value: 0x7F0F0259
+			public const int talk_open_failed = 2131690073;
+			
+			// aapt resource value: 0x7F0F025A
+			public const int talk_open_success = 2131690074;
 			
 			// aapt resource value: 0x7F0F025C
-			public const int tip_of_added_by_yourself_and_online = 2131690076;
+			public const int tip_heard_voice = 2131690076;
 			
 			// aapt resource value: 0x7F0F025D
-			public const int tip_of_bad_net = 2131690077;
+			public const int tip_login_out = 2131690077;
 			
 			// aapt resource value: 0x7F0F025E
-			public const int tip_playback_again = 2131690078;
+			public const int tip_of_added_by_yourself_and_online = 2131690078;
 			
 			// aapt resource value: 0x7F0F025F
-			public const int tip_specified_device = 2131690079;
+			public const int tip_of_bad_net = 2131690079;
 			
 			// aapt resource value: 0x7F0F0260
-			public const int title_activate_device = 2131690080;
+			public const int tip_playback_again = 2131690080;
 			
 			// aapt resource value: 0x7F0F0261
-			public const int title_activate_device_fail = 2131690081;
+			public const int tip_specified_device = 2131690081;
 			
 			// aapt resource value: 0x7F0F0262
-			public const int title_activity_connect_device_wifi = 2131690082;
+			public const int title_activate_device = 2131690082;
 			
 			// aapt resource value: 0x7F0F0263
-			public const int title_activity_ezupgrade_device = 2131690083;
+			public const int title_activate_device_fail = 2131690083;
 			
 			// aapt resource value: 0x7F0F0264
-			public const int today = 2131690084;
+			public const int title_activity_connect_device_wifi = 2131690084;
 			
 			// aapt resource value: 0x7F0F0265
-			public const int touch_fingerprint_sensor_hint = 2131690085;
+			public const int title_activity_ezupgrade_device = 2131690085;
 			
 			// aapt resource value: 0x7F0F0266
-			public const int touch_to_load = 2131690086;
+			public const int today = 2131690086;
 			
 			// aapt resource value: 0x7F0F0267
-			public const int try_again = 2131690087;
+			public const int touch_fingerprint_sensor_hint = 2131690087;
 			
 			// aapt resource value: 0x7F0F0268
-			public const int ui_call_demo_txt = 2131690088;
+			public const int touch_to_load = 2131690088;
 			
 			// aapt resource value: 0x7F0F0269
-			public const int unable_identify_two_dimensional_code_tip = 2131690089;
+			public const int try_again = 2131690089;
 			
 			// aapt resource value: 0x7F0F026A
-			public const int unbind_to_bind = 2131690090;
+			public const int ui_call_demo_txt = 2131690090;
 			
 			// aapt resource value: 0x7F0F026B
-			public const int unknow_ssid = 2131690091;
+			public const int unable_identify_two_dimensional_code_tip = 2131690091;
 			
 			// aapt resource value: 0x7F0F026C
-			public const int unlock_success = 2131690092;
+			public const int unbind_to_bind = 2131690092;
 			
 			// aapt resource value: 0x7F0F026D
-			public const int unnamed = 2131690093;
+			public const int unknow_ssid = 2131690093;
 			
 			// aapt resource value: 0x7F0F026E
-			public const int update_exit = 2131690094;
+			public const int unlock_fail = 2131690094;
 			
 			// aapt resource value: 0x7F0F026F
-			public const int upgrade = 2131690095;
+			public const int unlock_success = 2131690095;
 			
 			// aapt resource value: 0x7F0F0270
-			public const int upgrade_fail = 2131690096;
+			public const int unnamed = 2131690096;
 			
 			// aapt resource value: 0x7F0F0271
-			public const int upgrade_progress = 2131690097;
+			public const int update_exit = 2131690097;
 			
 			// aapt resource value: 0x7F0F0272
-			public const int upgrade_success = 2131690098;
+			public const int upgrade = 2131690098;
 			
 			// aapt resource value: 0x7F0F0273
-			public const int upgrade_success_progress = 2131690099;
+			public const int upgrade_fail = 2131690099;
 			
 			// aapt resource value: 0x7F0F0274
-			public const int user_name_txt = 2131690100;
+			public const int upgrade_progress = 2131690100;
 			
 			// aapt resource value: 0x7F0F0275
-			public const int verify_code_error = 2131690101;
+			public const int upgrade_success = 2131690101;
 			
 			// aapt resource value: 0x7F0F0276
-			public const int verify_sms_code_fail = 2131690102;
+			public const int upgrade_success_progress = 2131690102;
 			
 			// aapt resource value: 0x7F0F0277
-			public const int verify_sms_code_success = 2131690103;
+			public const int user_name_txt = 2131690103;
 			
 			// aapt resource value: 0x7F0F0278
-			public const int version_newest = 2131690104;
+			public const int verify_code_error = 2131690104;
 			
 			// aapt resource value: 0x7F0F0279
-			public const int video_answer = 2131690105;
+			public const int verify_sms_code_fail = 2131690105;
 			
 			// aapt resource value: 0x7F0F027A
-			public const int video_box = 2131690106;
+			public const int verify_sms_code_success = 2131690106;
 			
 			// aapt resource value: 0x7F0F027B
-			public const int video_confirm = 2131690107;
+			public const int version_newest = 2131690107;
 			
 			// aapt resource value: 0x7F0F027C
-			public const int video_device = 2131690108;
+			public const int video_answer = 2131690108;
 			
 			// aapt resource value: 0x7F0F027D
-			public const int video_fail = 2131690109;
+			public const int video_box = 2131690109;
 			
 			// aapt resource value: 0x7F0F027E
-			public const int video_hang_up = 2131690110;
+			public const int video_confirm = 2131690110;
 			
 			// aapt resource value: 0x7F0F027F
-			public const int video_icon = 2131690111;
+			public const int video_device = 2131690111;
 			
 			// aapt resource value: 0x7F0F0280
-			public const int video_not_answer = 2131690112;
+			public const int video_fail = 2131690112;
 			
 			// aapt resource value: 0x7F0F0281
-			public const int video_screenshot = 2131690113;
+			public const int video_hang_up = 2131690113;
 			
 			// aapt resource value: 0x7F0F0282
-			public const int video_square = 2131690114;
+			public const int video_icon = 2131690114;
 			
 			// aapt resource value: 0x7F0F0283
-			public const int video_success = 2131690115;
+			public const int video_not_answer = 2131690115;
 			
 			// aapt resource value: 0x7F0F0284
-			public const int video_talk_call_cancel = 2131690116;
+			public const int video_screenshot = 2131690116;
 			
 			// aapt resource value: 0x7F0F0285
-			public const int video_talk_call_is_accepted = 2131690117;
+			public const int video_square = 2131690117;
 			
 			// aapt resource value: 0x7F0F0286
-			public const int video_talk_is_playing = 2131690118;
+			public const int video_success = 2131690118;
 			
 			// aapt resource value: 0x7F0F0287
-			public const int video_talk_sdk_toast_hang_up = 2131690119;
+			public const int video_talk_call_cancel = 2131690119;
 			
 			// aapt resource value: 0x7F0F0288
-			public const int video_talk_sdk_toast_nobody = 2131690120;
+			public const int video_talk_call_is_accepted = 2131690120;
 			
 			// aapt resource value: 0x7F0F0289
-			public const int video_talk_signal_weak = 2131690121;
+			public const int video_talk_is_playing = 2131690121;
 			
 			// aapt resource value: 0x7F0F028A
-			public const int video_talk_watch_is_busy = 2131690122;
+			public const int video_talk_sdk_toast_hang_up = 2131690122;
 			
 			// aapt resource value: 0x7F0F028B
-			public const int video_talk_watch_temperature_high_hang = 2131690123;
+			public const int video_talk_sdk_toast_nobody = 2131690123;
 			
 			// aapt resource value: 0x7F0F028C
-			public const int video_talk_watch_temperature_high_hint = 2131690124;
+			public const int video_talk_signal_weak = 2131690124;
 			
 			// aapt resource value: 0x7F0F028D
-			public const int video_talk_watch_temperature_high_reject = 2131690125;
+			public const int video_talk_watch_is_busy = 2131690125;
 			
 			// aapt resource value: 0x7F0F028E
-			public const int video_talk_watch_temperature_high_warn = 2131690126;
+			public const int video_talk_watch_temperature_high_hang = 2131690126;
 			
 			// aapt resource value: 0x7F0F028F
-			public const int video_tip = 2131690127;
+			public const int video_talk_watch_temperature_high_hint = 2131690127;
 			
 			// aapt resource value: 0x7F0F0290
-			public const int video_unlock = 2131690128;
+			public const int video_talk_watch_temperature_high_reject = 2131690128;
 			
 			// aapt resource value: 0x7F0F0291
-			public const int wait = 2131690129;
+			public const int video_talk_watch_temperature_high_warn = 2131690129;
 			
 			// aapt resource value: 0x7F0F0292
-			public const int web_login_button_txt = 2131690130;
+			public const int video_tip = 2131690130;
 			
 			// aapt resource value: 0x7F0F0293
-			public const int wechat_interconnect = 2131690131;
+			public const int video_unlock = 2131690131;
 			
 			// aapt resource value: 0x7F0F0294
-			public const int wifi_connected = 2131690132;
+			public const int wait = 2131690132;
 			
 			// aapt resource value: 0x7F0F0295
-			public const int wifi_connection_finish_need_refresh = 2131690133;
+			public const int web_login_button_txt = 2131690133;
 			
 			// aapt resource value: 0x7F0F0296
-			public const int wifi_set = 2131690134;
+			public const int wechat_interconnect = 2131690134;
 			
 			// aapt resource value: 0x7F0F0297
-			public const int wifi_setting = 2131690135;
+			public const int wifi_connected = 2131690135;
 			
 			// aapt resource value: 0x7F0F0298
-			public const int wired_connection = 2131690136;
-			
-			// aapt resource value: 0x7F0F029A
-			public const int xlistview_footer_hint_normal = 2131690138;
+			public const int wifi_connection_finish_need_refresh = 2131690136;
 			
 			// aapt resource value: 0x7F0F0299
-			public const int xlistview_footer_hint_no_more_device = 2131690137;
+			public const int wifi_set = 2131690137;
+			
+			// aapt resource value: 0x7F0F029A
+			public const int wifi_setting = 2131690138;
 			
 			// aapt resource value: 0x7F0F029B
-			public const int xlistview_footer_hint_ready = 2131690139;
-			
-			// aapt resource value: 0x7F0F029C
-			public const int xlistview_footer_no_more = 2131690140;
+			public const int wired_connection = 2131690139;
 			
 			// aapt resource value: 0x7F0F029D
-			public const int xlistview_footer_no_more_msg = 2131690141;
+			public const int xlistview_footer_hint_normal = 2131690141;
+			
+			// aapt resource value: 0x7F0F029C
+			public const int xlistview_footer_hint_no_more_device = 2131690140;
 			
 			// aapt resource value: 0x7F0F029E
-			public const int xlistview_header_hint_loading = 2131690142;
+			public const int xlistview_footer_hint_ready = 2131690142;
 			
 			// aapt resource value: 0x7F0F029F
-			public const int xlistview_header_hint_more = 2131690143;
+			public const int xlistview_footer_no_more = 2131690143;
 			
 			// aapt resource value: 0x7F0F02A0
-			public const int xlistview_header_hint_normal = 2131690144;
+			public const int xlistview_footer_no_more_msg = 2131690144;
 			
 			// aapt resource value: 0x7F0F02A1
-			public const int xlistview_header_hint_ready = 2131690145;
+			public const int xlistview_header_hint_loading = 2131690145;
 			
 			// aapt resource value: 0x7F0F02A2
-			public const int xlistview_header_last_time = 2131690146;
+			public const int xlistview_header_hint_more = 2131690146;
+			
+			// aapt resource value: 0x7F0F02A3
+			public const int xlistview_header_hint_normal = 2131690147;
+			
+			// aapt resource value: 0x7F0F02A4
+			public const int xlistview_header_hint_ready = 2131690148;
+			
+			// aapt resource value: 0x7F0F02A5
+			public const int xlistview_header_last_time = 2131690149;
 			
 			static String()
 			{
@@ -12539,8 +12698,8 @@
 			// aapt resource value: 0x7F100007
 			public const int AppTheme = 2131755015;
 			
-			// aapt resource value: 0x7F10019B
-			public const int auto_wifi_status_style_normal = 2131755419;
+			// aapt resource value: 0x7F10019A
+			public const int auto_wifi_status_style_normal = 2131755418;
 			
 			// aapt resource value: 0x7F100008
 			public const int Base_AlertDialog_AppCompat = 2131755016;
@@ -13034,8 +13193,8 @@
 			// aapt resource value: 0x7F1000AB
 			public const int BottomSheetDialogAnimation = 2131755179;
 			
-			// aapt resource value: 0x7F10019C
-			public const int cc_line_long = 2131755420;
+			// aapt resource value: 0x7F10019B
+			public const int cc_line_long = 2131755419;
 			
 			// aapt resource value: 0x7F1000AC
 			public const int CommonGroupLayout = 2131755180;
@@ -13043,8 +13202,8 @@
 			// aapt resource value: 0x7F1000AD
 			public const int CommonListView = 2131755181;
 			
-			// aapt resource value: 0x7F10019D
-			public const int custom_dialog2 = 2131755421;
+			// aapt resource value: 0x7F10019C
+			public const int custom_dialog2 = 2131755420;
 			
 			// aapt resource value: 0x7F1000AE
 			public const int DialogTheme = 2131755182;
@@ -13062,709 +13221,706 @@
 			public const int MyDialogStyle = 2131755186;
 			
 			// aapt resource value: 0x7F1000B3
-			public const int MyFullScreen = 2131755187;
+			public const int MyTheme = 2131755187;
 			
 			// aapt resource value: 0x7F1000B4
-			public const int MyTheme = 2131755188;
+			public const int MyTheme1 = 2131755188;
 			
-			// aapt resource value: 0x7F1000B5
-			public const int MyTheme1 = 2131755189;
+			// aapt resource value: 0x7F10019D
+			public const int picker_view_scale_anim = 2131755421;
 			
 			// aapt resource value: 0x7F10019E
-			public const int picker_view_scale_anim = 2131755422;
+			public const int picker_view_slide_anim = 2131755422;
 			
-			// aapt resource value: 0x7F10019F
-			public const int picker_view_slide_anim = 2131755423;
+			// aapt resource value: 0x7F1000B5
+			public const int Platform_AppCompat = 2131755189;
 			
 			// aapt resource value: 0x7F1000B6
-			public const int Platform_AppCompat = 2131755190;
+			public const int Platform_AppCompat_Light = 2131755190;
 			
 			// aapt resource value: 0x7F1000B7
-			public const int Platform_AppCompat_Light = 2131755191;
+			public const int Platform_ThemeOverlay_AppCompat = 2131755191;
 			
 			// aapt resource value: 0x7F1000B8
-			public const int Platform_ThemeOverlay_AppCompat = 2131755192;
+			public const int Platform_ThemeOverlay_AppCompat_Dark = 2131755192;
 			
 			// aapt resource value: 0x7F1000B9
-			public const int Platform_ThemeOverlay_AppCompat_Dark = 2131755193;
+			public const int Platform_ThemeOverlay_AppCompat_Light = 2131755193;
 			
 			// aapt resource value: 0x7F1000BA
-			public const int Platform_ThemeOverlay_AppCompat_Light = 2131755194;
+			public const int Platform_V11_AppCompat = 2131755194;
 			
 			// aapt resource value: 0x7F1000BB
-			public const int Platform_V11_AppCompat = 2131755195;
+			public const int Platform_V11_AppCompat_Light = 2131755195;
 			
 			// aapt resource value: 0x7F1000BC
-			public const int Platform_V11_AppCompat_Light = 2131755196;
+			public const int Platform_V14_AppCompat = 2131755196;
 			
 			// aapt resource value: 0x7F1000BD
-			public const int Platform_V14_AppCompat = 2131755197;
+			public const int Platform_V14_AppCompat_Light = 2131755197;
 			
 			// aapt resource value: 0x7F1000BE
-			public const int Platform_V14_AppCompat_Light = 2131755198;
+			public const int Platform_V21_AppCompat = 2131755198;
 			
 			// aapt resource value: 0x7F1000BF
-			public const int Platform_V21_AppCompat = 2131755199;
+			public const int Platform_V21_AppCompat_Light = 2131755199;
 			
 			// aapt resource value: 0x7F1000C0
-			public const int Platform_V21_AppCompat_Light = 2131755200;
+			public const int Platform_V25_AppCompat = 2131755200;
 			
 			// aapt resource value: 0x7F1000C1
-			public const int Platform_V25_AppCompat = 2131755201;
+			public const int Platform_V25_AppCompat_Light = 2131755201;
 			
 			// aapt resource value: 0x7F1000C2
-			public const int Platform_V25_AppCompat_Light = 2131755202;
+			public const int Platform_Widget_AppCompat_Spinner = 2131755202;
+			
+			// aapt resource value: 0x7F10019F
+			public const int popwindowUpAnim = 2131755423;
 			
 			// aapt resource value: 0x7F1000C3
-			public const int Platform_Widget_AppCompat_Spinner = 2131755203;
-			
-			// aapt resource value: 0x7F1001A0
-			public const int popwindowUpAnim = 2131755424;
+			public const int RtlOverlay_DialogWindowTitle_AppCompat = 2131755203;
 			
 			// aapt resource value: 0x7F1000C4
-			public const int RtlOverlay_DialogWindowTitle_AppCompat = 2131755204;
+			public const int RtlOverlay_Widget_AppCompat_ActionBar_TitleItem = 2131755204;
 			
 			// aapt resource value: 0x7F1000C5
-			public const int RtlOverlay_Widget_AppCompat_ActionBar_TitleItem = 2131755205;
+			public const int RtlOverlay_Widget_AppCompat_DialogTitle_Icon = 2131755205;
 			
 			// aapt resource value: 0x7F1000C6
-			public const int RtlOverlay_Widget_AppCompat_DialogTitle_Icon = 2131755206;
+			public const int RtlOverlay_Widget_AppCompat_PopupMenuItem = 2131755206;
 			
 			// aapt resource value: 0x7F1000C7
-			public const int RtlOverlay_Widget_AppCompat_PopupMenuItem = 2131755207;
+			public const int RtlOverlay_Widget_AppCompat_PopupMenuItem_InternalGroup = 2131755207;
 			
 			// aapt resource value: 0x7F1000C8
-			public const int RtlOverlay_Widget_AppCompat_PopupMenuItem_InternalGroup = 2131755208;
-			
-			// aapt resource value: 0x7F1000C9
-			public const int RtlOverlay_Widget_AppCompat_PopupMenuItem_Text = 2131755209;
-			
-			// aapt resource value: 0x7F1000CF
-			public const int RtlOverlay_Widget_AppCompat_SearchView_MagIcon = 2131755215;
-			
-			// aapt resource value: 0x7F1000CA
-			public const int RtlOverlay_Widget_AppCompat_Search_DropDown = 2131755210;
-			
-			// aapt resource value: 0x7F1000CB
-			public const int RtlOverlay_Widget_AppCompat_Search_DropDown_Icon1 = 2131755211;
-			
-			// aapt resource value: 0x7F1000CC
-			public const int RtlOverlay_Widget_AppCompat_Search_DropDown_Icon2 = 2131755212;
-			
-			// aapt resource value: 0x7F1000CD
-			public const int RtlOverlay_Widget_AppCompat_Search_DropDown_Query = 2131755213;
+			public const int RtlOverlay_Widget_AppCompat_PopupMenuItem_Text = 2131755208;
 			
 			// aapt resource value: 0x7F1000CE
-			public const int RtlOverlay_Widget_AppCompat_Search_DropDown_Text = 2131755214;
+			public const int RtlOverlay_Widget_AppCompat_SearchView_MagIcon = 2131755214;
+			
+			// aapt resource value: 0x7F1000C9
+			public const int RtlOverlay_Widget_AppCompat_Search_DropDown = 2131755209;
+			
+			// aapt resource value: 0x7F1000CA
+			public const int RtlOverlay_Widget_AppCompat_Search_DropDown_Icon1 = 2131755210;
+			
+			// aapt resource value: 0x7F1000CB
+			public const int RtlOverlay_Widget_AppCompat_Search_DropDown_Icon2 = 2131755211;
+			
+			// aapt resource value: 0x7F1000CC
+			public const int RtlOverlay_Widget_AppCompat_Search_DropDown_Query = 2131755212;
+			
+			// aapt resource value: 0x7F1000CD
+			public const int RtlOverlay_Widget_AppCompat_Search_DropDown_Text = 2131755213;
+			
+			// aapt resource value: 0x7F1000CF
+			public const int RtlUnderlay_Widget_AppCompat_ActionButton = 2131755215;
 			
 			// aapt resource value: 0x7F1000D0
-			public const int RtlUnderlay_Widget_AppCompat_ActionButton = 2131755216;
+			public const int RtlUnderlay_Widget_AppCompat_ActionButton_Overflow = 2131755216;
 			
 			// aapt resource value: 0x7F1000D1
-			public const int RtlUnderlay_Widget_AppCompat_ActionButton_Overflow = 2131755217;
+			public const int TextAppearance_AppCompat = 2131755217;
 			
 			// aapt resource value: 0x7F1000D2
-			public const int TextAppearance_AppCompat = 2131755218;
+			public const int TextAppearance_AppCompat_Body1 = 2131755218;
 			
 			// aapt resource value: 0x7F1000D3
-			public const int TextAppearance_AppCompat_Body1 = 2131755219;
+			public const int TextAppearance_AppCompat_Body2 = 2131755219;
 			
 			// aapt resource value: 0x7F1000D4
-			public const int TextAppearance_AppCompat_Body2 = 2131755220;
+			public const int TextAppearance_AppCompat_Button = 2131755220;
 			
 			// aapt resource value: 0x7F1000D5
-			public const int TextAppearance_AppCompat_Button = 2131755221;
+			public const int TextAppearance_AppCompat_Caption = 2131755221;
 			
 			// aapt resource value: 0x7F1000D6
-			public const int TextAppearance_AppCompat_Caption = 2131755222;
+			public const int TextAppearance_AppCompat_Display1 = 2131755222;
 			
 			// aapt resource value: 0x7F1000D7
-			public const int TextAppearance_AppCompat_Display1 = 2131755223;
+			public const int TextAppearance_AppCompat_Display2 = 2131755223;
 			
 			// aapt resource value: 0x7F1000D8
-			public const int TextAppearance_AppCompat_Display2 = 2131755224;
+			public const int TextAppearance_AppCompat_Display3 = 2131755224;
 			
 			// aapt resource value: 0x7F1000D9
-			public const int TextAppearance_AppCompat_Display3 = 2131755225;
+			public const int TextAppearance_AppCompat_Display4 = 2131755225;
 			
 			// aapt resource value: 0x7F1000DA
-			public const int TextAppearance_AppCompat_Display4 = 2131755226;
+			public const int TextAppearance_AppCompat_Headline = 2131755226;
 			
 			// aapt resource value: 0x7F1000DB
-			public const int TextAppearance_AppCompat_Headline = 2131755227;
+			public const int TextAppearance_AppCompat_Inverse = 2131755227;
 			
 			// aapt resource value: 0x7F1000DC
-			public const int TextAppearance_AppCompat_Inverse = 2131755228;
+			public const int TextAppearance_AppCompat_Large = 2131755228;
 			
 			// aapt resource value: 0x7F1000DD
-			public const int TextAppearance_AppCompat_Large = 2131755229;
+			public const int TextAppearance_AppCompat_Large_Inverse = 2131755229;
 			
 			// aapt resource value: 0x7F1000DE
-			public const int TextAppearance_AppCompat_Large_Inverse = 2131755230;
+			public const int TextAppearance_AppCompat_Light_SearchResult_Subtitle = 2131755230;
 			
 			// aapt resource value: 0x7F1000DF
-			public const int TextAppearance_AppCompat_Light_SearchResult_Subtitle = 2131755231;
+			public const int TextAppearance_AppCompat_Light_SearchResult_Title = 2131755231;
 			
 			// aapt resource value: 0x7F1000E0
-			public const int TextAppearance_AppCompat_Light_SearchResult_Title = 2131755232;
+			public const int TextAppearance_AppCompat_Light_Widget_PopupMenu_Large = 2131755232;
 			
 			// aapt resource value: 0x7F1000E1
-			public const int TextAppearance_AppCompat_Light_Widget_PopupMenu_Large = 2131755233;
+			public const int TextAppearance_AppCompat_Light_Widget_PopupMenu_Small = 2131755233;
 			
 			// aapt resource value: 0x7F1000E2
-			public const int TextAppearance_AppCompat_Light_Widget_PopupMenu_Small = 2131755234;
+			public const int TextAppearance_AppCompat_Medium = 2131755234;
 			
 			// aapt resource value: 0x7F1000E3
-			public const int TextAppearance_AppCompat_Medium = 2131755235;
+			public const int TextAppearance_AppCompat_Medium_Inverse = 2131755235;
 			
 			// aapt resource value: 0x7F1000E4
-			public const int TextAppearance_AppCompat_Medium_Inverse = 2131755236;
+			public const int TextAppearance_AppCompat_Menu = 2131755236;
 			
 			// aapt resource value: 0x7F1000E5
-			public const int TextAppearance_AppCompat_Menu = 2131755237;
+			public const int TextAppearance_AppCompat_Notification = 2131755237;
 			
 			// aapt resource value: 0x7F1000E6
-			public const int TextAppearance_AppCompat_Notification = 2131755238;
+			public const int TextAppearance_AppCompat_Notification_Info = 2131755238;
 			
 			// aapt resource value: 0x7F1000E7
-			public const int TextAppearance_AppCompat_Notification_Info = 2131755239;
+			public const int TextAppearance_AppCompat_Notification_Info_Media = 2131755239;
 			
 			// aapt resource value: 0x7F1000E8
-			public const int TextAppearance_AppCompat_Notification_Info_Media = 2131755240;
+			public const int TextAppearance_AppCompat_Notification_Line2 = 2131755240;
 			
 			// aapt resource value: 0x7F1000E9
-			public const int TextAppearance_AppCompat_Notification_Line2 = 2131755241;
+			public const int TextAppearance_AppCompat_Notification_Line2_Media = 2131755241;
 			
 			// aapt resource value: 0x7F1000EA
-			public const int TextAppearance_AppCompat_Notification_Line2_Media = 2131755242;
+			public const int TextAppearance_AppCompat_Notification_Media = 2131755242;
 			
 			// aapt resource value: 0x7F1000EB
-			public const int TextAppearance_AppCompat_Notification_Media = 2131755243;
+			public const int TextAppearance_AppCompat_Notification_Time = 2131755243;
 			
 			// aapt resource value: 0x7F1000EC
-			public const int TextAppearance_AppCompat_Notification_Time = 2131755244;
+			public const int TextAppearance_AppCompat_Notification_Time_Media = 2131755244;
 			
 			// aapt resource value: 0x7F1000ED
-			public const int TextAppearance_AppCompat_Notification_Time_Media = 2131755245;
+			public const int TextAppearance_AppCompat_Notification_Title = 2131755245;
 			
 			// aapt resource value: 0x7F1000EE
-			public const int TextAppearance_AppCompat_Notification_Title = 2131755246;
+			public const int TextAppearance_AppCompat_Notification_Title_Media = 2131755246;
 			
 			// aapt resource value: 0x7F1000EF
-			public const int TextAppearance_AppCompat_Notification_Title_Media = 2131755247;
+			public const int TextAppearance_AppCompat_SearchResult_Subtitle = 2131755247;
 			
 			// aapt resource value: 0x7F1000F0
-			public const int TextAppearance_AppCompat_SearchResult_Subtitle = 2131755248;
+			public const int TextAppearance_AppCompat_SearchResult_Title = 2131755248;
 			
 			// aapt resource value: 0x7F1000F1
-			public const int TextAppearance_AppCompat_SearchResult_Title = 2131755249;
+			public const int TextAppearance_AppCompat_Small = 2131755249;
 			
 			// aapt resource value: 0x7F1000F2
-			public const int TextAppearance_AppCompat_Small = 2131755250;
+			public const int TextAppearance_AppCompat_Small_Inverse = 2131755250;
 			
 			// aapt resource value: 0x7F1000F3
-			public const int TextAppearance_AppCompat_Small_Inverse = 2131755251;
+			public const int TextAppearance_AppCompat_Subhead = 2131755251;
 			
 			// aapt resource value: 0x7F1000F4
-			public const int TextAppearance_AppCompat_Subhead = 2131755252;
+			public const int TextAppearance_AppCompat_Subhead_Inverse = 2131755252;
 			
 			// aapt resource value: 0x7F1000F5
-			public const int TextAppearance_AppCompat_Subhead_Inverse = 2131755253;
+			public const int TextAppearance_AppCompat_Title = 2131755253;
 			
 			// aapt resource value: 0x7F1000F6
-			public const int TextAppearance_AppCompat_Title = 2131755254;
+			public const int TextAppearance_AppCompat_Title_Inverse = 2131755254;
 			
 			// aapt resource value: 0x7F1000F7
-			public const int TextAppearance_AppCompat_Title_Inverse = 2131755255;
+			public const int TextAppearance_AppCompat_Tooltip = 2131755255;
 			
 			// aapt resource value: 0x7F1000F8
-			public const int TextAppearance_AppCompat_Tooltip = 2131755256;
+			public const int TextAppearance_AppCompat_Widget_ActionBar_Menu = 2131755256;
 			
 			// aapt resource value: 0x7F1000F9
-			public const int TextAppearance_AppCompat_Widget_ActionBar_Menu = 2131755257;
+			public const int TextAppearance_AppCompat_Widget_ActionBar_Subtitle = 2131755257;
 			
 			// aapt resource value: 0x7F1000FA
-			public const int TextAppearance_AppCompat_Widget_ActionBar_Subtitle = 2131755258;
+			public const int TextAppearance_AppCompat_Widget_ActionBar_Subtitle_Inverse = 2131755258;
 			
 			// aapt resource value: 0x7F1000FB
-			public const int TextAppearance_AppCompat_Widget_ActionBar_Subtitle_Inverse = 2131755259;
+			public const int TextAppearance_AppCompat_Widget_ActionBar_Title = 2131755259;
 			
 			// aapt resource value: 0x7F1000FC
-			public const int TextAppearance_AppCompat_Widget_ActionBar_Title = 2131755260;
+			public const int TextAppearance_AppCompat_Widget_ActionBar_Title_Inverse = 2131755260;
 			
 			// aapt resource value: 0x7F1000FD
-			public const int TextAppearance_AppCompat_Widget_ActionBar_Title_Inverse = 2131755261;
+			public const int TextAppearance_AppCompat_Widget_ActionMode_Subtitle = 2131755261;
 			
 			// aapt resource value: 0x7F1000FE
-			public const int TextAppearance_AppCompat_Widget_ActionMode_Subtitle = 2131755262;
+			public const int TextAppearance_AppCompat_Widget_ActionMode_Subtitle_Inverse = 2131755262;
 			
 			// aapt resource value: 0x7F1000FF
-			public const int TextAppearance_AppCompat_Widget_ActionMode_Subtitle_Inverse = 2131755263;
+			public const int TextAppearance_AppCompat_Widget_ActionMode_Title = 2131755263;
 			
 			// aapt resource value: 0x7F100100
-			public const int TextAppearance_AppCompat_Widget_ActionMode_Title = 2131755264;
+			public const int TextAppearance_AppCompat_Widget_ActionMode_Title_Inverse = 2131755264;
 			
 			// aapt resource value: 0x7F100101
-			public const int TextAppearance_AppCompat_Widget_ActionMode_Title_Inverse = 2131755265;
+			public const int TextAppearance_AppCompat_Widget_Button = 2131755265;
 			
 			// aapt resource value: 0x7F100102
-			public const int TextAppearance_AppCompat_Widget_Button = 2131755266;
+			public const int TextAppearance_AppCompat_Widget_Button_Borderless_Colored = 2131755266;
 			
 			// aapt resource value: 0x7F100103
-			public const int TextAppearance_AppCompat_Widget_Button_Borderless_Colored = 2131755267;
+			public const int TextAppearance_AppCompat_Widget_Button_Colored = 2131755267;
 			
 			// aapt resource value: 0x7F100104
-			public const int TextAppearance_AppCompat_Widget_Button_Colored = 2131755268;
+			public const int TextAppearance_AppCompat_Widget_Button_Inverse = 2131755268;
 			
 			// aapt resource value: 0x7F100105
-			public const int TextAppearance_AppCompat_Widget_Button_Inverse = 2131755269;
+			public const int TextAppearance_AppCompat_Widget_DropDownItem = 2131755269;
 			
 			// aapt resource value: 0x7F100106
-			public const int TextAppearance_AppCompat_Widget_DropDownItem = 2131755270;
+			public const int TextAppearance_AppCompat_Widget_PopupMenu_Header = 2131755270;
 			
 			// aapt resource value: 0x7F100107
-			public const int TextAppearance_AppCompat_Widget_PopupMenu_Header = 2131755271;
+			public const int TextAppearance_AppCompat_Widget_PopupMenu_Large = 2131755271;
 			
 			// aapt resource value: 0x7F100108
-			public const int TextAppearance_AppCompat_Widget_PopupMenu_Large = 2131755272;
+			public const int TextAppearance_AppCompat_Widget_PopupMenu_Small = 2131755272;
 			
 			// aapt resource value: 0x7F100109
-			public const int TextAppearance_AppCompat_Widget_PopupMenu_Small = 2131755273;
+			public const int TextAppearance_AppCompat_Widget_Switch = 2131755273;
 			
 			// aapt resource value: 0x7F10010A
-			public const int TextAppearance_AppCompat_Widget_Switch = 2131755274;
+			public const int TextAppearance_AppCompat_Widget_TextView_SpinnerItem = 2131755274;
 			
 			// aapt resource value: 0x7F10010B
-			public const int TextAppearance_AppCompat_Widget_TextView_SpinnerItem = 2131755275;
+			public const int TextAppearance_Compat_Notification = 2131755275;
 			
 			// aapt resource value: 0x7F10010C
-			public const int TextAppearance_Compat_Notification = 2131755276;
+			public const int TextAppearance_Compat_Notification_Info = 2131755276;
 			
 			// aapt resource value: 0x7F10010D
-			public const int TextAppearance_Compat_Notification_Info = 2131755277;
+			public const int TextAppearance_Compat_Notification_Info_Media = 2131755277;
 			
 			// aapt resource value: 0x7F10010E
-			public const int TextAppearance_Compat_Notification_Info_Media = 2131755278;
+			public const int TextAppearance_Compat_Notification_Line2 = 2131755278;
 			
 			// aapt resource value: 0x7F10010F
-			public const int TextAppearance_Compat_Notification_Line2 = 2131755279;
+			public const int TextAppearance_Compat_Notification_Line2_Media = 2131755279;
 			
 			// aapt resource value: 0x7F100110
-			public const int TextAppearance_Compat_Notification_Line2_Media = 2131755280;
+			public const int TextAppearance_Compat_Notification_Media = 2131755280;
 			
 			// aapt resource value: 0x7F100111
-			public const int TextAppearance_Compat_Notification_Media = 2131755281;
+			public const int TextAppearance_Compat_Notification_Time = 2131755281;
 			
 			// aapt resource value: 0x7F100112
-			public const int TextAppearance_Compat_Notification_Time = 2131755282;
+			public const int TextAppearance_Compat_Notification_Time_Media = 2131755282;
 			
 			// aapt resource value: 0x7F100113
-			public const int TextAppearance_Compat_Notification_Time_Media = 2131755283;
+			public const int TextAppearance_Compat_Notification_Title = 2131755283;
 			
 			// aapt resource value: 0x7F100114
-			public const int TextAppearance_Compat_Notification_Title = 2131755284;
+			public const int TextAppearance_Compat_Notification_Title_Media = 2131755284;
 			
 			// aapt resource value: 0x7F100115
-			public const int TextAppearance_Compat_Notification_Title_Media = 2131755285;
+			public const int TextAppearance_Design_CollapsingToolbar_Expanded = 2131755285;
 			
 			// aapt resource value: 0x7F100116
-			public const int TextAppearance_Design_CollapsingToolbar_Expanded = 2131755286;
+			public const int TextAppearance_Design_Counter = 2131755286;
 			
 			// aapt resource value: 0x7F100117
-			public const int TextAppearance_Design_Counter = 2131755287;
+			public const int TextAppearance_Design_Counter_Overflow = 2131755287;
 			
 			// aapt resource value: 0x7F100118
-			public const int TextAppearance_Design_Counter_Overflow = 2131755288;
+			public const int TextAppearance_Design_Error = 2131755288;
 			
 			// aapt resource value: 0x7F100119
-			public const int TextAppearance_Design_Error = 2131755289;
+			public const int TextAppearance_Design_Hint = 2131755289;
 			
 			// aapt resource value: 0x7F10011A
-			public const int TextAppearance_Design_Hint = 2131755290;
+			public const int TextAppearance_Design_Snackbar_Message = 2131755290;
 			
 			// aapt resource value: 0x7F10011B
-			public const int TextAppearance_Design_Snackbar_Message = 2131755291;
+			public const int TextAppearance_Design_Tab = 2131755291;
 			
 			// aapt resource value: 0x7F10011C
-			public const int TextAppearance_Design_Tab = 2131755292;
+			public const int TextAppearance_Widget_AppCompat_ExpandedMenu_Item = 2131755292;
 			
 			// aapt resource value: 0x7F10011D
-			public const int TextAppearance_Widget_AppCompat_ExpandedMenu_Item = 2131755293;
+			public const int TextAppearance_Widget_AppCompat_Toolbar_Subtitle = 2131755293;
 			
 			// aapt resource value: 0x7F10011E
-			public const int TextAppearance_Widget_AppCompat_Toolbar_Subtitle = 2131755294;
-			
-			// aapt resource value: 0x7F10011F
-			public const int TextAppearance_Widget_AppCompat_Toolbar_Title = 2131755295;
-			
-			// aapt resource value: 0x7F10013C
-			public const int ThemeOverlay_AppCompat = 2131755324;
-			
-			// aapt resource value: 0x7F10013D
-			public const int ThemeOverlay_AppCompat_ActionBar = 2131755325;
-			
-			// aapt resource value: 0x7F10013E
-			public const int ThemeOverlay_AppCompat_Dark = 2131755326;
-			
-			// aapt resource value: 0x7F10013F
-			public const int ThemeOverlay_AppCompat_Dark_ActionBar = 2131755327;
-			
-			// aapt resource value: 0x7F100140
-			public const int ThemeOverlay_AppCompat_Dialog = 2131755328;
-			
-			// aapt resource value: 0x7F100141
-			public const int ThemeOverlay_AppCompat_Dialog_Alert = 2131755329;
-			
-			// aapt resource value: 0x7F100142
-			public const int ThemeOverlay_AppCompat_Light = 2131755330;
-			
-			// aapt resource value: 0x7F100120
-			public const int Theme_AppCompat = 2131755296;
-			
-			// aapt resource value: 0x7F100121
-			public const int Theme_AppCompat_CompactMenu = 2131755297;
-			
-			// aapt resource value: 0x7F100122
-			public const int Theme_AppCompat_DayNight = 2131755298;
-			
-			// aapt resource value: 0x7F100123
-			public const int Theme_AppCompat_DayNight_DarkActionBar = 2131755299;
-			
-			// aapt resource value: 0x7F100124
-			public const int Theme_AppCompat_DayNight_Dialog = 2131755300;
-			
-			// aapt resource value: 0x7F100127
-			public const int Theme_AppCompat_DayNight_DialogWhenLarge = 2131755303;
-			
-			// aapt resource value: 0x7F100125
-			public const int Theme_AppCompat_DayNight_Dialog_Alert = 2131755301;
-			
-			// aapt resource value: 0x7F100126
-			public const int Theme_AppCompat_DayNight_Dialog_MinWidth = 2131755302;
-			
-			// aapt resource value: 0x7F100128
-			public const int Theme_AppCompat_DayNight_NoActionBar = 2131755304;
-			
-			// aapt resource value: 0x7F100129
-			public const int Theme_AppCompat_Dialog = 2131755305;
-			
-			// aapt resource value: 0x7F10012C
-			public const int Theme_AppCompat_DialogWhenLarge = 2131755308;
-			
-			// aapt resource value: 0x7F10012A
-			public const int Theme_AppCompat_Dialog_Alert = 2131755306;
-			
-			// aapt resource value: 0x7F10012B
-			public const int Theme_AppCompat_Dialog_MinWidth = 2131755307;
-			
-			// aapt resource value: 0x7F10012D
-			public const int Theme_AppCompat_Light = 2131755309;
-			
-			// aapt resource value: 0x7F10012E
-			public const int Theme_AppCompat_Light_DarkActionBar = 2131755310;
-			
-			// aapt resource value: 0x7F10012F
-			public const int Theme_AppCompat_Light_Dialog = 2131755311;
-			
-			// aapt resource value: 0x7F100132
-			public const int Theme_AppCompat_Light_DialogWhenLarge = 2131755314;
-			
-			// aapt resource value: 0x7F100130
-			public const int Theme_AppCompat_Light_Dialog_Alert = 2131755312;
-			
-			// aapt resource value: 0x7F100131
-			public const int Theme_AppCompat_Light_Dialog_MinWidth = 2131755313;
-			
-			// aapt resource value: 0x7F100133
-			public const int Theme_AppCompat_Light_NoActionBar = 2131755315;
-			
-			// aapt resource value: 0x7F100134
-			public const int Theme_AppCompat_NoActionBar = 2131755316;
-			
-			// aapt resource value: 0x7F100135
-			public const int Theme_BiometricPromptDialog = 2131755317;
-			
-			// aapt resource value: 0x7F100136
-			public const int Theme_Design = 2131755318;
-			
-			// aapt resource value: 0x7F100137
-			public const int Theme_Design_BottomSheetDialog = 2131755319;
-			
-			// aapt resource value: 0x7F100138
-			public const int Theme_Design_Light = 2131755320;
-			
-			// aapt resource value: 0x7F100139
-			public const int Theme_Design_Light_BottomSheetDialog = 2131755321;
-			
-			// aapt resource value: 0x7F10013A
-			public const int Theme_Design_Light_NoActionBar = 2131755322;
+			public const int TextAppearance_Widget_AppCompat_Toolbar_Title = 2131755294;
 			
 			// aapt resource value: 0x7F10013B
-			public const int Theme_Design_NoActionBar = 2131755323;
+			public const int ThemeOverlay_AppCompat = 2131755323;
+			
+			// aapt resource value: 0x7F10013C
+			public const int ThemeOverlay_AppCompat_ActionBar = 2131755324;
+			
+			// aapt resource value: 0x7F10013D
+			public const int ThemeOverlay_AppCompat_Dark = 2131755325;
+			
+			// aapt resource value: 0x7F10013E
+			public const int ThemeOverlay_AppCompat_Dark_ActionBar = 2131755326;
+			
+			// aapt resource value: 0x7F10013F
+			public const int ThemeOverlay_AppCompat_Dialog = 2131755327;
+			
+			// aapt resource value: 0x7F100140
+			public const int ThemeOverlay_AppCompat_Dialog_Alert = 2131755328;
+			
+			// aapt resource value: 0x7F100141
+			public const int ThemeOverlay_AppCompat_Light = 2131755329;
+			
+			// aapt resource value: 0x7F10011F
+			public const int Theme_AppCompat = 2131755295;
+			
+			// aapt resource value: 0x7F100120
+			public const int Theme_AppCompat_CompactMenu = 2131755296;
+			
+			// aapt resource value: 0x7F100121
+			public const int Theme_AppCompat_DayNight = 2131755297;
+			
+			// aapt resource value: 0x7F100122
+			public const int Theme_AppCompat_DayNight_DarkActionBar = 2131755298;
+			
+			// aapt resource value: 0x7F100123
+			public const int Theme_AppCompat_DayNight_Dialog = 2131755299;
+			
+			// aapt resource value: 0x7F100126
+			public const int Theme_AppCompat_DayNight_DialogWhenLarge = 2131755302;
+			
+			// aapt resource value: 0x7F100124
+			public const int Theme_AppCompat_DayNight_Dialog_Alert = 2131755300;
+			
+			// aapt resource value: 0x7F100125
+			public const int Theme_AppCompat_DayNight_Dialog_MinWidth = 2131755301;
+			
+			// aapt resource value: 0x7F100127
+			public const int Theme_AppCompat_DayNight_NoActionBar = 2131755303;
+			
+			// aapt resource value: 0x7F100128
+			public const int Theme_AppCompat_Dialog = 2131755304;
+			
+			// aapt resource value: 0x7F10012B
+			public const int Theme_AppCompat_DialogWhenLarge = 2131755307;
+			
+			// aapt resource value: 0x7F100129
+			public const int Theme_AppCompat_Dialog_Alert = 2131755305;
+			
+			// aapt resource value: 0x7F10012A
+			public const int Theme_AppCompat_Dialog_MinWidth = 2131755306;
+			
+			// aapt resource value: 0x7F10012C
+			public const int Theme_AppCompat_Light = 2131755308;
+			
+			// aapt resource value: 0x7F10012D
+			public const int Theme_AppCompat_Light_DarkActionBar = 2131755309;
+			
+			// aapt resource value: 0x7F10012E
+			public const int Theme_AppCompat_Light_Dialog = 2131755310;
+			
+			// aapt resource value: 0x7F100131
+			public const int Theme_AppCompat_Light_DialogWhenLarge = 2131755313;
+			
+			// aapt resource value: 0x7F10012F
+			public const int Theme_AppCompat_Light_Dialog_Alert = 2131755311;
+			
+			// aapt resource value: 0x7F100130
+			public const int Theme_AppCompat_Light_Dialog_MinWidth = 2131755312;
+			
+			// aapt resource value: 0x7F100132
+			public const int Theme_AppCompat_Light_NoActionBar = 2131755314;
+			
+			// aapt resource value: 0x7F100133
+			public const int Theme_AppCompat_NoActionBar = 2131755315;
+			
+			// aapt resource value: 0x7F100134
+			public const int Theme_BiometricPromptDialog = 2131755316;
+			
+			// aapt resource value: 0x7F100135
+			public const int Theme_Design = 2131755317;
+			
+			// aapt resource value: 0x7F100136
+			public const int Theme_Design_BottomSheetDialog = 2131755318;
+			
+			// aapt resource value: 0x7F100137
+			public const int Theme_Design_Light = 2131755319;
+			
+			// aapt resource value: 0x7F100138
+			public const int Theme_Design_Light_BottomSheetDialog = 2131755320;
+			
+			// aapt resource value: 0x7F100139
+			public const int Theme_Design_Light_NoActionBar = 2131755321;
+			
+			// aapt resource value: 0x7F10013A
+			public const int Theme_Design_NoActionBar = 2131755322;
+			
+			// aapt resource value: 0x7F100142
+			public const int TitleBar_Dark = 2131755330;
 			
 			// aapt resource value: 0x7F100143
-			public const int TitleBar_Dark = 2131755331;
+			public const int TitleBar_Light = 2131755331;
 			
 			// aapt resource value: 0x7F100144
-			public const int TitleBar_Light = 2131755332;
+			public const int TitleBar_Light_Web = 2131755332;
 			
 			// aapt resource value: 0x7F100145
-			public const int TitleBar_Light_Web = 2131755333;
+			public const int Widget_AppCompat_ActionBar = 2131755333;
 			
 			// aapt resource value: 0x7F100146
-			public const int Widget_AppCompat_ActionBar = 2131755334;
+			public const int Widget_AppCompat_ActionBar_Solid = 2131755334;
 			
 			// aapt resource value: 0x7F100147
-			public const int Widget_AppCompat_ActionBar_Solid = 2131755335;
+			public const int Widget_AppCompat_ActionBar_TabBar = 2131755335;
 			
 			// aapt resource value: 0x7F100148
-			public const int Widget_AppCompat_ActionBar_TabBar = 2131755336;
+			public const int Widget_AppCompat_ActionBar_TabText = 2131755336;
 			
 			// aapt resource value: 0x7F100149
-			public const int Widget_AppCompat_ActionBar_TabText = 2131755337;
+			public const int Widget_AppCompat_ActionBar_TabView = 2131755337;
 			
 			// aapt resource value: 0x7F10014A
-			public const int Widget_AppCompat_ActionBar_TabView = 2131755338;
+			public const int Widget_AppCompat_ActionButton = 2131755338;
 			
 			// aapt resource value: 0x7F10014B
-			public const int Widget_AppCompat_ActionButton = 2131755339;
+			public const int Widget_AppCompat_ActionButton_CloseMode = 2131755339;
 			
 			// aapt resource value: 0x7F10014C
-			public const int Widget_AppCompat_ActionButton_CloseMode = 2131755340;
+			public const int Widget_AppCompat_ActionButton_Overflow = 2131755340;
 			
 			// aapt resource value: 0x7F10014D
-			public const int Widget_AppCompat_ActionButton_Overflow = 2131755341;
+			public const int Widget_AppCompat_ActionMode = 2131755341;
 			
 			// aapt resource value: 0x7F10014E
-			public const int Widget_AppCompat_ActionMode = 2131755342;
+			public const int Widget_AppCompat_ActivityChooserView = 2131755342;
 			
 			// aapt resource value: 0x7F10014F
-			public const int Widget_AppCompat_ActivityChooserView = 2131755343;
+			public const int Widget_AppCompat_AutoCompleteTextView = 2131755343;
 			
 			// aapt resource value: 0x7F100150
-			public const int Widget_AppCompat_AutoCompleteTextView = 2131755344;
-			
-			// aapt resource value: 0x7F100151
-			public const int Widget_AppCompat_Button = 2131755345;
-			
-			// aapt resource value: 0x7F100157
-			public const int Widget_AppCompat_ButtonBar = 2131755351;
-			
-			// aapt resource value: 0x7F100158
-			public const int Widget_AppCompat_ButtonBar_AlertDialog = 2131755352;
-			
-			// aapt resource value: 0x7F100152
-			public const int Widget_AppCompat_Button_Borderless = 2131755346;
-			
-			// aapt resource value: 0x7F100153
-			public const int Widget_AppCompat_Button_Borderless_Colored = 2131755347;
-			
-			// aapt resource value: 0x7F100154
-			public const int Widget_AppCompat_Button_ButtonBar_AlertDialog = 2131755348;
-			
-			// aapt resource value: 0x7F100155
-			public const int Widget_AppCompat_Button_Colored = 2131755349;
+			public const int Widget_AppCompat_Button = 2131755344;
 			
 			// aapt resource value: 0x7F100156
-			public const int Widget_AppCompat_Button_Small = 2131755350;
+			public const int Widget_AppCompat_ButtonBar = 2131755350;
+			
+			// aapt resource value: 0x7F100157
+			public const int Widget_AppCompat_ButtonBar_AlertDialog = 2131755351;
+			
+			// aapt resource value: 0x7F100151
+			public const int Widget_AppCompat_Button_Borderless = 2131755345;
+			
+			// aapt resource value: 0x7F100152
+			public const int Widget_AppCompat_Button_Borderless_Colored = 2131755346;
+			
+			// aapt resource value: 0x7F100153
+			public const int Widget_AppCompat_Button_ButtonBar_AlertDialog = 2131755347;
+			
+			// aapt resource value: 0x7F100154
+			public const int Widget_AppCompat_Button_Colored = 2131755348;
+			
+			// aapt resource value: 0x7F100155
+			public const int Widget_AppCompat_Button_Small = 2131755349;
+			
+			// aapt resource value: 0x7F100158
+			public const int Widget_AppCompat_CompoundButton_CheckBox = 2131755352;
 			
 			// aapt resource value: 0x7F100159
-			public const int Widget_AppCompat_CompoundButton_CheckBox = 2131755353;
+			public const int Widget_AppCompat_CompoundButton_RadioButton = 2131755353;
 			
 			// aapt resource value: 0x7F10015A
-			public const int Widget_AppCompat_CompoundButton_RadioButton = 2131755354;
+			public const int Widget_AppCompat_CompoundButton_Switch = 2131755354;
 			
 			// aapt resource value: 0x7F10015B
-			public const int Widget_AppCompat_CompoundButton_Switch = 2131755355;
+			public const int Widget_AppCompat_DrawerArrowToggle = 2131755355;
 			
 			// aapt resource value: 0x7F10015C
-			public const int Widget_AppCompat_DrawerArrowToggle = 2131755356;
+			public const int Widget_AppCompat_DropDownItem_Spinner = 2131755356;
 			
 			// aapt resource value: 0x7F10015D
-			public const int Widget_AppCompat_DropDownItem_Spinner = 2131755357;
+			public const int Widget_AppCompat_EditText = 2131755357;
 			
 			// aapt resource value: 0x7F10015E
-			public const int Widget_AppCompat_EditText = 2131755358;
+			public const int Widget_AppCompat_ImageButton = 2131755358;
 			
 			// aapt resource value: 0x7F10015F
-			public const int Widget_AppCompat_ImageButton = 2131755359;
+			public const int Widget_AppCompat_Light_ActionBar = 2131755359;
 			
 			// aapt resource value: 0x7F100160
-			public const int Widget_AppCompat_Light_ActionBar = 2131755360;
+			public const int Widget_AppCompat_Light_ActionBar_Solid = 2131755360;
 			
 			// aapt resource value: 0x7F100161
-			public const int Widget_AppCompat_Light_ActionBar_Solid = 2131755361;
+			public const int Widget_AppCompat_Light_ActionBar_Solid_Inverse = 2131755361;
 			
 			// aapt resource value: 0x7F100162
-			public const int Widget_AppCompat_Light_ActionBar_Solid_Inverse = 2131755362;
+			public const int Widget_AppCompat_Light_ActionBar_TabBar = 2131755362;
 			
 			// aapt resource value: 0x7F100163
-			public const int Widget_AppCompat_Light_ActionBar_TabBar = 2131755363;
+			public const int Widget_AppCompat_Light_ActionBar_TabBar_Inverse = 2131755363;
 			
 			// aapt resource value: 0x7F100164
-			public const int Widget_AppCompat_Light_ActionBar_TabBar_Inverse = 2131755364;
+			public const int Widget_AppCompat_Light_ActionBar_TabText = 2131755364;
 			
 			// aapt resource value: 0x7F100165
-			public const int Widget_AppCompat_Light_ActionBar_TabText = 2131755365;
+			public const int Widget_AppCompat_Light_ActionBar_TabText_Inverse = 2131755365;
 			
 			// aapt resource value: 0x7F100166
-			public const int Widget_AppCompat_Light_ActionBar_TabText_Inverse = 2131755366;
+			public const int Widget_AppCompat_Light_ActionBar_TabView = 2131755366;
 			
 			// aapt resource value: 0x7F100167
-			public const int Widget_AppCompat_Light_ActionBar_TabView = 2131755367;
+			public const int Widget_AppCompat_Light_ActionBar_TabView_Inverse = 2131755367;
 			
 			// aapt resource value: 0x7F100168
-			public const int Widget_AppCompat_Light_ActionBar_TabView_Inverse = 2131755368;
+			public const int Widget_AppCompat_Light_ActionButton = 2131755368;
 			
 			// aapt resource value: 0x7F100169
-			public const int Widget_AppCompat_Light_ActionButton = 2131755369;
+			public const int Widget_AppCompat_Light_ActionButton_CloseMode = 2131755369;
 			
 			// aapt resource value: 0x7F10016A
-			public const int Widget_AppCompat_Light_ActionButton_CloseMode = 2131755370;
+			public const int Widget_AppCompat_Light_ActionButton_Overflow = 2131755370;
 			
 			// aapt resource value: 0x7F10016B
-			public const int Widget_AppCompat_Light_ActionButton_Overflow = 2131755371;
+			public const int Widget_AppCompat_Light_ActionMode_Inverse = 2131755371;
 			
 			// aapt resource value: 0x7F10016C
-			public const int Widget_AppCompat_Light_ActionMode_Inverse = 2131755372;
+			public const int Widget_AppCompat_Light_ActivityChooserView = 2131755372;
 			
 			// aapt resource value: 0x7F10016D
-			public const int Widget_AppCompat_Light_ActivityChooserView = 2131755373;
+			public const int Widget_AppCompat_Light_AutoCompleteTextView = 2131755373;
 			
 			// aapt resource value: 0x7F10016E
-			public const int Widget_AppCompat_Light_AutoCompleteTextView = 2131755374;
+			public const int Widget_AppCompat_Light_DropDownItem_Spinner = 2131755374;
 			
 			// aapt resource value: 0x7F10016F
-			public const int Widget_AppCompat_Light_DropDownItem_Spinner = 2131755375;
+			public const int Widget_AppCompat_Light_ListPopupWindow = 2131755375;
 			
 			// aapt resource value: 0x7F100170
-			public const int Widget_AppCompat_Light_ListPopupWindow = 2131755376;
+			public const int Widget_AppCompat_Light_ListView_DropDown = 2131755376;
 			
 			// aapt resource value: 0x7F100171
-			public const int Widget_AppCompat_Light_ListView_DropDown = 2131755377;
+			public const int Widget_AppCompat_Light_PopupMenu = 2131755377;
 			
 			// aapt resource value: 0x7F100172
-			public const int Widget_AppCompat_Light_PopupMenu = 2131755378;
+			public const int Widget_AppCompat_Light_PopupMenu_Overflow = 2131755378;
 			
 			// aapt resource value: 0x7F100173
-			public const int Widget_AppCompat_Light_PopupMenu_Overflow = 2131755379;
+			public const int Widget_AppCompat_Light_SearchView = 2131755379;
 			
 			// aapt resource value: 0x7F100174
-			public const int Widget_AppCompat_Light_SearchView = 2131755380;
+			public const int Widget_AppCompat_Light_Spinner_DropDown_ActionBar = 2131755380;
 			
 			// aapt resource value: 0x7F100175
-			public const int Widget_AppCompat_Light_Spinner_DropDown_ActionBar = 2131755381;
+			public const int Widget_AppCompat_ListMenuView = 2131755381;
 			
 			// aapt resource value: 0x7F100176
-			public const int Widget_AppCompat_ListMenuView = 2131755382;
+			public const int Widget_AppCompat_ListPopupWindow = 2131755382;
 			
 			// aapt resource value: 0x7F100177
-			public const int Widget_AppCompat_ListPopupWindow = 2131755383;
+			public const int Widget_AppCompat_ListView = 2131755383;
 			
 			// aapt resource value: 0x7F100178
-			public const int Widget_AppCompat_ListView = 2131755384;
+			public const int Widget_AppCompat_ListView_DropDown = 2131755384;
 			
 			// aapt resource value: 0x7F100179
-			public const int Widget_AppCompat_ListView_DropDown = 2131755385;
+			public const int Widget_AppCompat_ListView_Menu = 2131755385;
 			
 			// aapt resource value: 0x7F10017A
-			public const int Widget_AppCompat_ListView_Menu = 2131755386;
+			public const int Widget_AppCompat_PopupMenu = 2131755386;
 			
 			// aapt resource value: 0x7F10017B
-			public const int Widget_AppCompat_PopupMenu = 2131755387;
+			public const int Widget_AppCompat_PopupMenu_Overflow = 2131755387;
 			
 			// aapt resource value: 0x7F10017C
-			public const int Widget_AppCompat_PopupMenu_Overflow = 2131755388;
+			public const int Widget_AppCompat_PopupWindow = 2131755388;
 			
 			// aapt resource value: 0x7F10017D
-			public const int Widget_AppCompat_PopupWindow = 2131755389;
+			public const int Widget_AppCompat_ProgressBar = 2131755389;
 			
 			// aapt resource value: 0x7F10017E
-			public const int Widget_AppCompat_ProgressBar = 2131755390;
+			public const int Widget_AppCompat_ProgressBar_Horizontal = 2131755390;
 			
 			// aapt resource value: 0x7F10017F
-			public const int Widget_AppCompat_ProgressBar_Horizontal = 2131755391;
+			public const int Widget_AppCompat_RatingBar = 2131755391;
 			
 			// aapt resource value: 0x7F100180
-			public const int Widget_AppCompat_RatingBar = 2131755392;
+			public const int Widget_AppCompat_RatingBar_Indicator = 2131755392;
 			
 			// aapt resource value: 0x7F100181
-			public const int Widget_AppCompat_RatingBar_Indicator = 2131755393;
+			public const int Widget_AppCompat_RatingBar_Small = 2131755393;
 			
 			// aapt resource value: 0x7F100182
-			public const int Widget_AppCompat_RatingBar_Small = 2131755394;
+			public const int Widget_AppCompat_SearchView = 2131755394;
 			
 			// aapt resource value: 0x7F100183
-			public const int Widget_AppCompat_SearchView = 2131755395;
+			public const int Widget_AppCompat_SearchView_ActionBar = 2131755395;
 			
 			// aapt resource value: 0x7F100184
-			public const int Widget_AppCompat_SearchView_ActionBar = 2131755396;
+			public const int Widget_AppCompat_SeekBar = 2131755396;
 			
 			// aapt resource value: 0x7F100185
-			public const int Widget_AppCompat_SeekBar = 2131755397;
+			public const int Widget_AppCompat_SeekBar_Discrete = 2131755397;
 			
 			// aapt resource value: 0x7F100186
-			public const int Widget_AppCompat_SeekBar_Discrete = 2131755398;
+			public const int Widget_AppCompat_Spinner = 2131755398;
 			
 			// aapt resource value: 0x7F100187
-			public const int Widget_AppCompat_Spinner = 2131755399;
+			public const int Widget_AppCompat_Spinner_DropDown = 2131755399;
 			
 			// aapt resource value: 0x7F100188
-			public const int Widget_AppCompat_Spinner_DropDown = 2131755400;
+			public const int Widget_AppCompat_Spinner_DropDown_ActionBar = 2131755400;
 			
 			// aapt resource value: 0x7F100189
-			public const int Widget_AppCompat_Spinner_DropDown_ActionBar = 2131755401;
+			public const int Widget_AppCompat_Spinner_Underlined = 2131755401;
 			
 			// aapt resource value: 0x7F10018A
-			public const int Widget_AppCompat_Spinner_Underlined = 2131755402;
+			public const int Widget_AppCompat_TextView_SpinnerItem = 2131755402;
 			
 			// aapt resource value: 0x7F10018B
-			public const int Widget_AppCompat_TextView_SpinnerItem = 2131755403;
+			public const int Widget_AppCompat_Toolbar = 2131755403;
 			
 			// aapt resource value: 0x7F10018C
-			public const int Widget_AppCompat_Toolbar = 2131755404;
+			public const int Widget_AppCompat_Toolbar_Button_Navigation = 2131755404;
 			
 			// aapt resource value: 0x7F10018D
-			public const int Widget_AppCompat_Toolbar_Button_Navigation = 2131755405;
+			public const int Widget_Compat_NotificationActionContainer = 2131755405;
 			
 			// aapt resource value: 0x7F10018E
-			public const int Widget_Compat_NotificationActionContainer = 2131755406;
+			public const int Widget_Compat_NotificationActionText = 2131755406;
 			
 			// aapt resource value: 0x7F10018F
-			public const int Widget_Compat_NotificationActionText = 2131755407;
+			public const int Widget_Design_AppBarLayout = 2131755407;
 			
 			// aapt resource value: 0x7F100190
-			public const int Widget_Design_AppBarLayout = 2131755408;
+			public const int Widget_Design_BottomNavigationView = 2131755408;
 			
 			// aapt resource value: 0x7F100191
-			public const int Widget_Design_BottomNavigationView = 2131755409;
+			public const int Widget_Design_BottomSheet_Modal = 2131755409;
 			
 			// aapt resource value: 0x7F100192
-			public const int Widget_Design_BottomSheet_Modal = 2131755410;
+			public const int Widget_Design_CollapsingToolbar = 2131755410;
 			
 			// aapt resource value: 0x7F100193
-			public const int Widget_Design_CollapsingToolbar = 2131755411;
+			public const int Widget_Design_CoordinatorLayout = 2131755411;
 			
 			// aapt resource value: 0x7F100194
-			public const int Widget_Design_CoordinatorLayout = 2131755412;
+			public const int Widget_Design_FloatingActionButton = 2131755412;
 			
 			// aapt resource value: 0x7F100195
-			public const int Widget_Design_FloatingActionButton = 2131755413;
+			public const int Widget_Design_NavigationView = 2131755413;
 			
 			// aapt resource value: 0x7F100196
-			public const int Widget_Design_NavigationView = 2131755414;
+			public const int Widget_Design_ScrimInsetsFrameLayout = 2131755414;
 			
 			// aapt resource value: 0x7F100197
-			public const int Widget_Design_ScrimInsetsFrameLayout = 2131755415;
+			public const int Widget_Design_Snackbar = 2131755415;
 			
 			// aapt resource value: 0x7F100198
-			public const int Widget_Design_Snackbar = 2131755416;
+			public const int Widget_Design_TabLayout = 2131755416;
 			
 			// aapt resource value: 0x7F100199
-			public const int Widget_Design_TabLayout = 2131755417;
-			
-			// aapt resource value: 0x7F10019A
-			public const int Widget_Design_TextInputLayout = 2131755418;
+			public const int Widget_Design_TextInputLayout = 2131755417;
 			
 			static Style()
 			{
diff --git a/HDL-ON_Android/Resources/values-zh/strings.xml b/HDL-ON_Android/Resources/values-zh/strings.xml
index 4636041..0d86f4f 100644
--- a/HDL-ON_Android/Resources/values-zh/strings.xml
+++ b/HDL-ON_Android/Resources/values-zh/strings.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <resources>
-	<string name="app_name">HDL_ON_Pro</string>
+	<string name="app_name">ON_Plus</string>
 	<string name="action_settings">璁剧疆</string>
 	<string name="video_screenshot">鎴浘</string>
 	<string name="video_unlock">寮�閿�</string>
@@ -20,4 +20,6 @@
 	<string name="screenshot_success">鎴浘鎴愬姛</string>
 	<string name="talk_open_success">瀵硅寮�濮�</string>
 	<string name="talk_open_failed">瀵硅鎵撳紑澶辫触</string>
+	<string name="unlock_fail">寮�閿佸け璐�</string>
+	<string name="screenshot_fail">鎴浘澶辫触</string>
 </resources>
\ No newline at end of file
diff --git a/HDL-ON_Android/Resources/values/strings.xml b/HDL-ON_Android/Resources/values/strings.xml
index 948af94..6f41ee5 100644
--- a/HDL-ON_Android/Resources/values/strings.xml
+++ b/HDL-ON_Android/Resources/values/strings.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <resources>
-    <string name="action_settings">Setting</string>
+        <string name="action_settings">Setting</string>
         <string name="video_screenshot">Screenshot</string>
         <string name="video_unlock">Unlock</string>
         <string name="video_answer">Answer</string>
@@ -17,7 +17,8 @@
         <string name="on_the_phone">On the phone</string>
         <string name="unlock_success">Unlock successfully</string>
         <string name="screenshot_success">Screenshot successfully</string>
-    <string name="talk_open_success">Intercom Begin</string>
-    <string name="talk_open_failed">Intercom failed to open</string>
-
+        <string name="talk_open_success">Intercom Begin</string>
+        <string name="talk_open_failed">Intercom failed to open</string>
+        <string name="unlock_fail">Fail to unlock</string>
+	    <string name="screenshot_fail">Fail to screenshot</string>
 </resources>
\ No newline at end of file
diff --git a/HDL-ON_iOS/Assets.xcassets/device_bg.imageset/Contents.json b/HDL-ON_iOS/Assets.xcassets/device_bg.imageset/Contents.json
new file mode 100644
index 0000000..8254cff
--- /dev/null
+++ b/HDL-ON_iOS/Assets.xcassets/device_bg.imageset/Contents.json
@@ -0,0 +1,528 @@
+{
+  "images": [
+    {
+      "idiom": "universal"
+    },
+    {
+      "scale": "1x",
+      "idiom": "universal"
+    },
+    {
+      "filename": "device_bg.png",
+      "scale": "2x",
+      "idiom": "universal"
+    },
+    {
+      "scale": "3x",
+      "idiom": "universal"
+    },
+    {
+      "idiom": "iphone"
+    },
+    {
+      "scale": "1x",
+      "idiom": "iphone"
+    },
+    {
+      "scale": "2x",
+      "idiom": "iphone"
+    },
+    {
+      "subtype": "retina4",
+      "scale": "2x",
+      "idiom": "iphone"
+    },
+    {
+      "scale": "3x",
+      "idiom": "iphone"
+    },
+    {
+      "idiom": "ipad"
+    },
+    {
+      "scale": "1x",
+      "idiom": "ipad"
+    },
+    {
+      "scale": "2x",
+      "idiom": "ipad"
+    },
+    {
+      "idiom": "watch"
+    },
+    {
+      "scale": "2x",
+      "idiom": "watch"
+    },
+    {
+      "screenWidth": "{130,145}",
+      "scale": "2x",
+      "idiom": "watch"
+    },
+    {
+      "screenWidth": "{146,165}",
+      "scale": "2x",
+      "idiom": "watch"
+    },
+    {
+      "idiom": "mac"
+    },
+    {
+      "scale": "1x",
+      "idiom": "mac"
+    },
+    {
+      "scale": "2x",
+      "idiom": "mac"
+    },
+    {
+      "idiom": "car"
+    },
+    {
+      "scale": "2x",
+      "idiom": "car"
+    },
+    {
+      "scale": "3x",
+      "idiom": "car"
+    },
+    {
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "dark"
+        }
+      ],
+      "idiom": "universal"
+    },
+    {
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "dark"
+        }
+      ],
+      "scale": "1x",
+      "idiom": "universal"
+    },
+    {
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "dark"
+        }
+      ],
+      "scale": "2x",
+      "idiom": "universal"
+    },
+    {
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "dark"
+        }
+      ],
+      "scale": "3x",
+      "idiom": "universal"
+    },
+    {
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "dark"
+        }
+      ],
+      "idiom": "iphone"
+    },
+    {
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "dark"
+        }
+      ],
+      "scale": "1x",
+      "idiom": "iphone"
+    },
+    {
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "dark"
+        }
+      ],
+      "scale": "2x",
+      "idiom": "iphone"
+    },
+    {
+      "subtype": "retina4",
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "dark"
+        }
+      ],
+      "scale": "2x",
+      "idiom": "iphone"
+    },
+    {
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "dark"
+        }
+      ],
+      "scale": "3x",
+      "idiom": "iphone"
+    },
+    {
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "dark"
+        }
+      ],
+      "idiom": "ipad"
+    },
+    {
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "dark"
+        }
+      ],
+      "scale": "1x",
+      "idiom": "ipad"
+    },
+    {
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "dark"
+        }
+      ],
+      "scale": "2x",
+      "idiom": "ipad"
+    },
+    {
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "dark"
+        }
+      ],
+      "idiom": "watch"
+    },
+    {
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "dark"
+        }
+      ],
+      "scale": "2x",
+      "idiom": "watch"
+    },
+    {
+      "screenWidth": "{130,145}",
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "dark"
+        }
+      ],
+      "scale": "2x",
+      "idiom": "watch"
+    },
+    {
+      "screenWidth": "{146,165}",
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "dark"
+        }
+      ],
+      "scale": "2x",
+      "idiom": "watch"
+    },
+    {
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "dark"
+        }
+      ],
+      "idiom": "mac"
+    },
+    {
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "dark"
+        }
+      ],
+      "scale": "1x",
+      "idiom": "mac"
+    },
+    {
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "dark"
+        }
+      ],
+      "scale": "2x",
+      "idiom": "mac"
+    },
+    {
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "dark"
+        }
+      ],
+      "idiom": "car"
+    },
+    {
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "dark"
+        }
+      ],
+      "scale": "2x",
+      "idiom": "car"
+    },
+    {
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "dark"
+        }
+      ],
+      "scale": "3x",
+      "idiom": "car"
+    },
+    {
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "light"
+        }
+      ],
+      "idiom": "universal"
+    },
+    {
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "light"
+        }
+      ],
+      "scale": "1x",
+      "idiom": "universal"
+    },
+    {
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "light"
+        }
+      ],
+      "scale": "2x",
+      "idiom": "universal"
+    },
+    {
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "light"
+        }
+      ],
+      "scale": "3x",
+      "idiom": "universal"
+    },
+    {
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "light"
+        }
+      ],
+      "idiom": "iphone"
+    },
+    {
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "light"
+        }
+      ],
+      "scale": "1x",
+      "idiom": "iphone"
+    },
+    {
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "light"
+        }
+      ],
+      "scale": "2x",
+      "idiom": "iphone"
+    },
+    {
+      "subtype": "retina4",
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "light"
+        }
+      ],
+      "scale": "2x",
+      "idiom": "iphone"
+    },
+    {
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "light"
+        }
+      ],
+      "scale": "3x",
+      "idiom": "iphone"
+    },
+    {
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "light"
+        }
+      ],
+      "idiom": "ipad"
+    },
+    {
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "light"
+        }
+      ],
+      "scale": "1x",
+      "idiom": "ipad"
+    },
+    {
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "light"
+        }
+      ],
+      "scale": "2x",
+      "idiom": "ipad"
+    },
+    {
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "light"
+        }
+      ],
+      "idiom": "watch"
+    },
+    {
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "light"
+        }
+      ],
+      "scale": "2x",
+      "idiom": "watch"
+    },
+    {
+      "screenWidth": "{130,145}",
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "light"
+        }
+      ],
+      "scale": "2x",
+      "idiom": "watch"
+    },
+    {
+      "screenWidth": "{146,165}",
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "light"
+        }
+      ],
+      "scale": "2x",
+      "idiom": "watch"
+    },
+    {
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "light"
+        }
+      ],
+      "idiom": "mac"
+    },
+    {
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "light"
+        }
+      ],
+      "scale": "1x",
+      "idiom": "mac"
+    },
+    {
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "light"
+        }
+      ],
+      "scale": "2x",
+      "idiom": "mac"
+    },
+    {
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "light"
+        }
+      ],
+      "idiom": "car"
+    },
+    {
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "light"
+        }
+      ],
+      "scale": "2x",
+      "idiom": "car"
+    },
+    {
+      "appearances": [
+        {
+          "appearance": "luminosity",
+          "value": "light"
+        }
+      ],
+      "scale": "3x",
+      "idiom": "car"
+    }
+  ],
+  "info": {
+    "version": 1,
+    "author": "xcode"
+  }
+}
\ No newline at end of file
diff --git a/HDL-ON_iOS/Assets.xcassets/device_bg.imageset/device_bg.png b/HDL-ON_iOS/Assets.xcassets/device_bg.imageset/device_bg.png
new file mode 100644
index 0000000..e78c0ce
--- /dev/null
+++ b/HDL-ON_iOS/Assets.xcassets/device_bg.imageset/device_bg.png
Binary files differ
diff --git a/HDL-ON_iOS/HDL-ON_iOS.csproj b/HDL-ON_iOS/HDL-ON_iOS.csproj
index d26dc65..2e079e1 100644
--- a/HDL-ON_iOS/HDL-ON_iOS.csproj
+++ b/HDL-ON_iOS/HDL-ON_iOS.csproj
@@ -55,6 +55,7 @@
         <MtouchExtraArgs>-gcc_flags="-dead_strip -ObjC"</MtouchExtraArgs>
         <MtouchEnableSGenConc>false</MtouchEnableSGenConc>
 <CodesignProvision>On+Dev-20210616-1</CodesignProvision>
+<CodesignEntitlements>Entitlements.plist</CodesignEntitlements>
     </PropertyGroup>
     <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|iPhone' ">
         <DebugType>none</DebugType>
@@ -103,28 +104,28 @@
     </ItemGroup>
     <ItemGroup>
       <PackageReference Include="Newtonsoft.Json">
-        <Version>12.0.3</Version>
+        <Version>13.0.1</Version>
       </PackageReference>
       <PackageReference Include="MQTTnet">
-        <Version>3.0.13</Version>
+        <Version>3.0.16</Version>
       </PackageReference>
       <PackageReference Include="Microsoft.AppCenter.Analytics">
-        <Version>4.1.0</Version>
+        <Version>4.3.0</Version>
       </PackageReference>
       <PackageReference Include="Microsoft.AppCenter.Crashes">
-        <Version>4.1.0</Version>
+        <Version>4.3.0</Version>
       </PackageReference>
       <PackageReference Include="ZXing.Net.Mobile">
         <Version>2.4.1</Version>
       </PackageReference>
       <PackageReference Include="RestSharp">
-        <Version>106.11.7</Version>
+        <Version>106.12.0</Version>
       </PackageReference>
       <PackageReference Include="Xamarin.iOS.Bugly">
         <Version>1.0.4</Version>
       </PackageReference>
       <PackageReference Include="Xamarin.Essentials">
-        <Version>1.6.0</Version>
+        <Version>1.7.0</Version>
       </PackageReference>
     </ItemGroup>
     <ItemGroup>
@@ -422,6 +423,8 @@
         <ImageAsset Include="Assets.xcassets\wifi_bg.imageset\Contents.json" />
         <ImageAsset Include="Assets.xcassets\wifi_bg.imageset\wifi_bg%402x.png" />
         <ImageAsset Include="Assets.xcassets\wifi_bg.imageset\wifi_bg.png" />
+        <ImageAsset Include="Assets.xcassets\device_bg.imageset\Contents.json" />
+        <ImageAsset Include="Assets.xcassets\device_bg.imageset\device_bg.png" />
     </ItemGroup>
     <ItemGroup>
         <Folder Include="Resources\" />
@@ -453,6 +456,9 @@
         <Folder Include="Resources\Phone\FunctionIcon\EnvirSensor\" />
         <Folder Include="Resources\Phone\FunctionIcon\Energy\" />
         <Folder Include="Resources\Phone\FunctionIcon\IrFan\" />
+        <Folder Include="Assets.xcassets\device_bg.imageset\" />
+        <Folder Include="Resources\Phone\FunctionIcon\Light\LightScene\" />
+        <Folder Include="Resources\Phone\PersonalCenter\FacePassage\" />
     </ItemGroup>
     <ItemGroup>
         <InterfaceDefinition Include="LaunchScreen.storyboard" />
@@ -1309,6 +1315,21 @@
       <BundleResource Include="Resources\Phone\FunctionIcon\Icon\irfan.png" />
       <BundleResource Include="Resources\Phone\FunctionIcon\Icon\HomeIcon\irfan_blue.png" />
       <BundleResource Include="Resources\Phone\FunctionIcon\Icon\HomeIcon\irfan_white.png" />
+      <BundleResource Include="Resources\Phone\FunctionIcon\Icon\sensorenvironment.png" />
+      <BundleResource Include="Resources\Phone\PersonalCenter\AddDevice\EnvironmentalSensorbg.png" />
+      <BundleResource Include="Resources\Phone\FunctionIcon\AirFresh\AirFreshBgIcon.png" />
+      <BundleResource Include="Resources\Phone\PersonalCenter\AddDevice\EnvirSensorQingpingCGS1bg.png" />
+      <BundleResource Include="Resources\Phone\PersonalCenter\AddDevice\EnvirSensorQingpingLitebg.png" />
+      <BundleResource Include="Resources\Phone\FunctionIcon\Icon\sensorenvironment2.png" />
+      <BundleResource Include="Resources\Phone\FunctionIcon\Icon\sensorenvironment3.png" />
+      <BundleResource Include="Resources\Phone\FunctionIcon\Light\LightScene\CheckIcon.png" />
+      <BundleResource Include="Resources\Phone\FunctionIcon\Light\LightScene\CheckOnIcon.png" />
+      <BundleResource Include="Resources\Phone\FunctionIcon\Light\LightScene\SetLightSceneIcon.png" />
+      <BundleResource Include="Resources\Phone\FunctionIcon\ArmCenter\AddTargetIcon.png" />
+      <BundleResource Include="Resources\Phone\FunctionIcon\ArmCenter\RightIcon.png" />
+      <BundleResource Include="Resources\Phone\PersonalCenter\FacePassage\FaceIcon.png" />
+      <BundleResource Include="Resources\Phone\Collection\DefenseStatusIcon.png" />
+      <BundleResource Include="Resources\Phone\Collection\DisarmStatusIcon.png" />
     </ItemGroup>
     <ItemGroup>
       <ITunesArtwork Include="iTunesArtwork" />
diff --git a/HDL-ON_iOS/Info.plist b/HDL-ON_iOS/Info.plist
index c4c4c22..4edb95c 100644
--- a/HDL-ON_iOS/Info.plist
+++ b/HDL-ON_iOS/Info.plist
@@ -100,9 +100,9 @@
 	<key>UIStatusBarStyle</key>
 	<string>UIStatusBarStyleLightContent</string>
 	<key>CFBundleShortVersionString</key>
-	<string>1.2.202107081</string>
+	<string>1.2.202108171</string>
 	<key>CFBundleVersion</key>
-	<string>1.2.07081</string>
+	<string>1.2.08171</string>
 	<key>NSLocationWhenInUseUsageDescription</key>
 	<string>Use geographic location to provide services such as weather</string>
 	<key>NSAppleMusicUsageDescription</key>
diff --git a/HDL-ON_iOS/Resources/EZ/Base.lproj/AddDevice.storyboard b/HDL-ON_iOS/Resources/EZ/Base.lproj/AddDevice.storyboard
index 284eeed..bba85b8 100644
--- a/HDL-ON_iOS/Resources/EZ/Base.lproj/AddDevice.storyboard
+++ b/HDL-ON_iOS/Resources/EZ/Base.lproj/AddDevice.storyboard
@@ -2,7 +2,6 @@
 <document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="17506" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" colorMatched="YES" initialViewController="1Qq-y9-5Vr">
     <device id="retina4_7" orientation="portrait" appearance="light"/>
     <dependencies>
-        <deployment identifier="iOS"/>
         <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="17505"/>
         <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
     </dependencies>
@@ -686,9 +685,21 @@
                             <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" usesAttributedText="YES" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Q0X-wy-A5B">
                                 <rect key="frame" x="47.5" y="362" width="311.5" height="40"/>
                                 <attributedString key="attributedText">
-                                    <fragment content="杩斿洖demo锛岀瓑寰呬笌璁惧杩炴帴锛屾垚鍔熷悗鑷姩杩涘叆涓嬩竴姝ユ搷浣溿��">
+                                    <fragment content="杩斿洖">
+                                        <attributes>
+                                            <font key="NSFont" size="14" name=".PingFangSC-Regular"/>
+                                            <paragraphStyle key="NSParagraphStyle" alignment="left" lineBreakMode="wordWrapping" baseWritingDirection="natural" minimumLineHeight="20" tighteningFactorForTruncation="0.0"/>
+                                        </attributes>
+                                    </fragment>
+                                    <fragment content="APP">
                                         <attributes>
                                             <font key="NSFont" metaFont="system" size="14"/>
+                                            <paragraphStyle key="NSParagraphStyle" alignment="left" lineBreakMode="wordWrapping" baseWritingDirection="natural" minimumLineHeight="20" tighteningFactorForTruncation="0.0"/>
+                                        </attributes>
+                                    </fragment>
+                                    <fragment content="锛岀瓑寰呬笌璁惧杩炴帴锛屾垚鍔熷悗鑷姩杩涘叆涓嬩竴姝ユ搷浣溿��">
+                                        <attributes>
+                                            <font key="NSFont" size="14" name=".PingFangSC-Regular"/>
                                             <paragraphStyle key="NSParagraphStyle" alignment="left" lineBreakMode="wordWrapping" baseWritingDirection="natural" minimumLineHeight="20" tighteningFactorForTruncation="0.0"/>
                                         </attributes>
                                     </fragment>
@@ -914,7 +925,7 @@
     </scenes>
     <inferredMetricsTieBreakers>
         <segue reference="9TP-S2-hhI"/>
-        <segue reference="MFl-yy-ZsP"/>
+        <segue reference="9Lc-Kx-oZS"/>
         <segue reference="ikM-Zn-H8f"/>
     </inferredMetricsTieBreakers>
     <resources>
diff --git a/HDL-ON_iOS/Resources/Language.ini b/HDL-ON_iOS/Resources/Language.ini
index 4d6e2f9..a2c3ac7 100644
--- a/HDL-ON_iOS/Resources/Language.ini
+++ b/HDL-ON_iOS/Resources/Language.ini
@@ -400,7 +400,7 @@
 414=Controller on
 415=Someone
 416=Log
-417=Water Leakage
+417=Water leakage
 418=In Alarm
 419=Normal
 420=Hot dry
@@ -465,7 +465,27 @@
 477=Swing
 478=Pattern
 479=Speed
-
+480=Environmental sensor
+481=Can start using environmental sensor
+482=Gas sensor
+483=Please enter the MAC code of the device
+484=Open
+485=Check/Modify
+486=Defense function / Alarm status
+487=Alarm target after triggering
+488=Face passage
+489=Apply face ID to:
+490=Community access control
+491=About face ID and privacy
+492=Erase data
+493=Reset face ID
+494=Set face ID
+495=Face passage settings
+496=There is no associated task deployment status
+497=Custom
+498=Trigger delay
+499=Add defense function
+500=Add alarm target
 
  
 1000=Room Humidity
@@ -521,7 +541,7 @@
 1050=Add Device
 1051=Mini Intelligent Remote Control
 1052=Add Infrared Remote Control
-1053=Press the infrared remote control button{0}for 10 seconds and the indicator light{0}flashes blue quickly
+1053=Press the infrared remote control button{0}for 3 seconds and the indicator light{0}flashes blue quickly
 1054=Please make sure your Bluetooth{0}is on and searchable
 1055=Next Step
 1056=Device searching...
@@ -982,10 +1002,10 @@
 9010=New password
 9011=Enter new password again
 9012=Agree
-9013=User agreement
-9014=Privacy agreement
+9013=Service Agreement
+9014=User information protection regulations
 9015=and
-9016=Please read and agree on User Agreement and Privacy Agreement.
+9016=Please read and agree on User Service Agreement and User information protection regulations.
 9017=Are you sure to log out?
 9018=Please select country/region.
 9019=Update now
@@ -1540,7 +1560,27 @@
 477=鎽嗗姩
 478=妯″紡
 479=椋庨��
- 
+480=鐜浼犳劅鍣�
+481=鍙互寮�濮嬩娇鐢ㄧ幆澧冧紶鎰熷櫒浜�
+482=鐕冩皵浼犳劅鍣�
+483=璇疯緭鍏ヨ澶囩殑MAC鐮�
+484=寮�鍚�
+485=鏌ョ湅/淇敼
+486=甯冮槻鍔熻兘/鎶ヨ鐘舵��
+487=瑙﹀彂鍚庡憡璀︾洰鏍�
+488=浜鸿劯閫氳
+489=灏嗛潰瀹笽D搴旂敤浜�:
+490=绀惧尯闂ㄧ閫氳
+491=鍏充簬闈㈠ID涓庨殣绉�
+492=鎶规帀鏁版嵁
+493=閲嶇疆闈㈠
+494=璁剧疆闈㈠
+495=浜鸿劯閫氳璁剧疆
+496=杩樻病鏈夊叧鑱斾换浣曞竷闃茬姸鎬�
+497=鑷畾涔�
+498=瑙﹀彂寤舵椂
+499=娣诲姞甯冮槻鍔熻兘
+500=娣诲姞鍛婅鐩爣
  
 1000=瀹ゅ唴婀垮害
 1001=绔ラ攣
@@ -1595,7 +1635,7 @@
 1050=娣诲姞璁惧
 1051=mini鏅鸿兘閬ユ帶鍣�
 1052=娣诲姞绾㈠閬ユ帶
-1053=闀挎寜绾㈠閬ユ帶鍣ㄦ寜閽�10绉掞紝鎸囩ず鐏摑鑹插揩闂�
+1053=闀挎寜绾㈠閬ユ帶鍣ㄦ寜閽�3绉掞紝鎸囩ず鐏摑鑹插揩闂�
 1054=璇风‘淇濇偍鐨勮摑鐗欏凡寮�鍚苟澶勪簬鍙互琚悳绱㈢姸鎬�
 1055=涓嬩竴姝�
 1056=璁惧鎼滅储涓�...
@@ -2040,10 +2080,10 @@
 9010=鏂板瘑鐮�
 9011=鍐嶆杈撳叆鏂板瘑鐮�
 9012=鍚屾剰
-9013=鐢ㄦ埛鍗忚
-9014=闅愮鏀跨瓥
+9013=鏈嶅姟鍗忚
+9014=鐢ㄦ埛淇℃伅淇濇姢瑙勫畾
 9015=鍜�
-9016=璇峰厛闃呰骞跺悓鎰忋�婄敤鎴峰崗璁�嬪拰銆婇殣绉佹斂绛栥��
+9016=璇峰厛闃呰骞跺悓鎰忋�婃湇鍔″崗璁�嬪拰銆婄敤鎴蜂俊鎭繚鎶よ瀹氥��
 9017=纭閫�鍑虹櫥褰曪紵
 9018=璇烽�夋嫨鍥藉/鍖哄煙
 9019=绔嬪嵆鏇存柊
diff --git a/HDL-ON_iOS/Resources/Phone/Collection/DefenseStatusIcon.png b/HDL-ON_iOS/Resources/Phone/Collection/DefenseStatusIcon.png
new file mode 100644
index 0000000..6fa5bd1
--- /dev/null
+++ b/HDL-ON_iOS/Resources/Phone/Collection/DefenseStatusIcon.png
Binary files differ
diff --git a/HDL-ON_iOS/Resources/Phone/Collection/DisarmStatusIcon.png b/HDL-ON_iOS/Resources/Phone/Collection/DisarmStatusIcon.png
new file mode 100644
index 0000000..da8a843
--- /dev/null
+++ b/HDL-ON_iOS/Resources/Phone/Collection/DisarmStatusIcon.png
Binary files differ
diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/AirFreshBgIcon.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/AirFreshBgIcon.png
new file mode 100644
index 0000000..ae4999c
--- /dev/null
+++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/AirFreshBgIcon.png
Binary files differ
diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/ArmCenter/AddTargetIcon.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/ArmCenter/AddTargetIcon.png
new file mode 100644
index 0000000..0dc022e
--- /dev/null
+++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/ArmCenter/AddTargetIcon.png
Binary files differ
diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/ArmCenter/RightIcon.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/ArmCenter/RightIcon.png
new file mode 100644
index 0000000..6bd7f63
--- /dev/null
+++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/ArmCenter/RightIcon.png
Binary files differ
diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Icon/sensorenvironment.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Icon/sensorenvironment.png
new file mode 100644
index 0000000..359a3a8
--- /dev/null
+++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Icon/sensorenvironment.png
Binary files differ
diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Icon/sensorenvironment2.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Icon/sensorenvironment2.png
new file mode 100644
index 0000000..a863138
--- /dev/null
+++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Icon/sensorenvironment2.png
Binary files differ
diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Icon/sensorenvironment3.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Icon/sensorenvironment3.png
new file mode 100644
index 0000000..fca9f74
--- /dev/null
+++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Icon/sensorenvironment3.png
Binary files differ
diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Light/LightScene/CheckIcon.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Light/LightScene/CheckIcon.png
new file mode 100644
index 0000000..8eb452d
--- /dev/null
+++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Light/LightScene/CheckIcon.png
Binary files differ
diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Light/LightScene/CheckOnIcon.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Light/LightScene/CheckOnIcon.png
new file mode 100644
index 0000000..9f7c349
--- /dev/null
+++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Light/LightScene/CheckOnIcon.png
Binary files differ
diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Light/LightScene/SetLightSceneIcon.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Light/LightScene/SetLightSceneIcon.png
new file mode 100644
index 0000000..5189605
--- /dev/null
+++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Light/LightScene/SetLightSceneIcon.png
Binary files differ
diff --git a/HDL-ON_iOS/Resources/Phone/PersonalCenter/AddDevice/EnvirSensorQingpingCGS1bg.png b/HDL-ON_iOS/Resources/Phone/PersonalCenter/AddDevice/EnvirSensorQingpingCGS1bg.png
new file mode 100644
index 0000000..fff2f4a
--- /dev/null
+++ b/HDL-ON_iOS/Resources/Phone/PersonalCenter/AddDevice/EnvirSensorQingpingCGS1bg.png
Binary files differ
diff --git a/HDL-ON_iOS/Resources/Phone/PersonalCenter/AddDevice/EnvirSensorQingpingLitebg.png b/HDL-ON_iOS/Resources/Phone/PersonalCenter/AddDevice/EnvirSensorQingpingLitebg.png
new file mode 100644
index 0000000..ce22eee
--- /dev/null
+++ b/HDL-ON_iOS/Resources/Phone/PersonalCenter/AddDevice/EnvirSensorQingpingLitebg.png
Binary files differ
diff --git a/HDL-ON_iOS/Resources/Phone/PersonalCenter/AddDevice/EnvironmentalSensorbg.png b/HDL-ON_iOS/Resources/Phone/PersonalCenter/AddDevice/EnvironmentalSensorbg.png
new file mode 100644
index 0000000..8258f31
--- /dev/null
+++ b/HDL-ON_iOS/Resources/Phone/PersonalCenter/AddDevice/EnvironmentalSensorbg.png
Binary files differ
diff --git a/HDL-ON_iOS/Resources/Phone/PersonalCenter/FacePassage/FaceIcon.png b/HDL-ON_iOS/Resources/Phone/PersonalCenter/FacePassage/FaceIcon.png
new file mode 100644
index 0000000..632eccf
--- /dev/null
+++ b/HDL-ON_iOS/Resources/Phone/PersonalCenter/FacePassage/FaceIcon.png
Binary files differ
diff --git a/HDL_ON/Common/ApiUtlis.cs b/HDL_ON/Common/ApiUtlis.cs
index 26204e8..8ea5c0b 100644
--- a/HDL_ON/Common/ApiUtlis.cs
+++ b/HDL_ON/Common/ApiUtlis.cs
@@ -271,12 +271,16 @@
 
                         foreach (var video in FunctionList.List.videoIntercom)
                         {
-                            if (video.interphoneType == "IMOUVISIAL")
+                            if (video.interphoneType == InterphoneType.IMOUVISIAL.ToString())
                             {
                                 UI.UI2.PersonalCenter.PirDevice.PirSend.LcSubAccessToken = video.subAccountToken;
                             }
                         }
                     }
+
+
+                    //======================瀹夐槻====================
+                    GetSecurityList();
 
                 }
                 catch (Exception ex)
@@ -376,14 +380,14 @@
             var pack = Ins.HttpRequest.GetSecurityList();
             if (pack.Code == StateCode.SUCCESS)
             {
-                var packList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<SecurityAlarm>>(pack.Data.ToString());
+                var packList = JsonConvert.DeserializeObject<List<SecurityAlarm>>(pack.Data.ToString());
                 var sidList = new List<string>();
                 foreach (var function in packList)
                 {
                     sidList.Add(function.sid);
                 }
                 var infoListPack = Ins.httpRequest.GetSecurityInfo(sidList, new List<string>());
-                var infoList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<SecurityAlarm>>(infoListPack.Data.ToString());
+                var infoList = JsonConvert.DeserializeObject<List<SecurityAlarm>>(infoListPack.Data.ToString());
                 foreach (var function in infoList)
                 {
                     function.SaveFile();
diff --git a/HDL_ON/Common/HDLCommon.cs b/HDL_ON/Common/HDLCommon.cs
index d7de09c..955fb51 100644
--- a/HDL_ON/Common/HDLCommon.cs
+++ b/HDL_ON/Common/HDLCommon.cs
@@ -273,7 +273,7 @@
                     if (jpushMessageInfo.messageType.Contains(PushMessageType.Alarm.ToString()))
                     {
                         //鎶ヨ鎺ㄩ�佸脊绐楁彁绀�
-                        ShowAlarmPushMessage(jpushMessageInfo,true);
+                        ShowAlarmPushMessage(jpushMessageInfo, true);
                     }
                     else if (jpushMessageInfo.messageType.Contains(PushMessageType.FLCall.ToString()))
                     {
@@ -295,7 +295,7 @@
                             eSVideoInfo.ESVideoUUID = eSVideoInfo.uuid;
                         }
 
-                        ESOnVideo.Current.ShowESvideoVideoIntercom(eSVideoInfo, "FLVI");
+                        ESOnVideo.Current.ShowESvideoVideoIntercom(eSVideoInfo, InterphoneType.FLVI.ToString());
 
                     }
                     else if (jpushMessageInfo.messageType.Contains(PushMessageType.HDL_INTERPHONE.ToString()))
@@ -303,39 +303,56 @@
                         if (string.IsNullOrEmpty(jpushMessageInfo.expantContent)) return;
 
                         //瀛楁鍏煎闂锛屽彧鑳界洿鎺ュ彇鍊间簡
-                        var json= Newtonsoft.Json.Linq.JObject.Parse(jpushMessageInfo.expantContent);
+                        var json = Newtonsoft.Json.Linq.JObject.Parse(jpushMessageInfo.expantContent);
+                        //1.瑙嗗璁插巶瀹剁被鍨�
+                        string interphoneTypeEnum = json["interphoneTypeEnum"].ToString();
+                        if (string.IsNullOrEmpty(interphoneTypeEnum)) return;
+                        //
                         ESVideoInfo eSVideoInfo = new ESVideoInfo();// GetESOnVideoJson(jpushMessageInfo.expantContent);
-                        eSVideoInfo.callId = json["callId"].ToString();
-                        //eSVideoInfo.Lc_AccessToken = UI.UI2.PersonalCenter.PirDevice.PirSend.LcSubAccessToken;//json["subAccountToken"].ToString();//
-                        eSVideoInfo.Lc_AccessToken = json["subAccountToken"].ToString();//2021-05-13 鐩墠浜戠杩樻病鎷垮埌Lc_AccessToken锛岀洰鍓嶆病鍔炴硶姝e父浣跨敤
-                        eSVideoInfo.Lc_DeviceId = json["deviceId"].ToString();
-                        eSVideoInfo.Lc_Location = OnAppConfig.Instance.RequestHttpsHost.Contains("China") ? 0 : 1;
-                        eSVideoInfo.Lc_PlayToken = json["token"].ToString();
-                        eSVideoInfo.Lc_Psk = json["cname"].ToString();
+                        //2.鏍规嵁鍙瀵硅鍘傚绫诲瀷锛屽鐞嗕笉鍚岀殑鏁版嵁
+                        if (interphoneTypeEnum == InterphoneType.IMOUVISIAL.ToString())
+                        {
+                            //澶у崕涔愭
+                            eSVideoInfo.callId = json["callId"].ToString();
+                            //eSVideoInfo.Lc_AccessToken = UI.UI2.PersonalCenter.PirDevice.PirSend.LcSubAccessToken;//json["subAccountToken"].ToString();//
+                            eSVideoInfo.Lc_AccessToken = json["subAccountToken"].ToString();//2021-05-13 鐩墠浜戠杩樻病鎷垮埌Lc_AccessToken锛岀洰鍓嶆病鍔炴硶姝e父浣跨敤
+                            eSVideoInfo.Lc_DeviceId = json["deviceId"].ToString();
+                            eSVideoInfo.Lc_Location = OnAppConfig.Instance.RequestHttpsHost.Contains("China") ? 0 : 1;
+                            eSVideoInfo.Lc_PlayToken = json["token"].ToString();
+                            eSVideoInfo.Lc_Psk = json["cname"].ToString();
+                        }
+                        else if (interphoneTypeEnum == InterphoneType.EZVIZ.ToString())
+                        {
+                            //钀ょ煶鐚溂
+                            eSVideoInfo.Lc_AccessToken = json["subToken"].ToString();//"瀛愯处鍙穞oken
+                            eSVideoInfo.DeviceSerial = json["devSerial"].ToString();//璁惧搴忓垪鍙�
+                            eSVideoInfo.HomeId = jpushMessageInfo.HomeId;
+                        }
 
+                        //3.鎵撳紑鍛煎彨椤甸潰
                         if (eSVideoInfo == null) return;
-
-                        ESOnVideo.Current.ShowESvideoVideoIntercom(eSVideoInfo, "IMOUVISIAL");
+                        ESOnVideo.Current.ShowESvideoVideoIntercom(eSVideoInfo, interphoneTypeEnum);
 
                     }
-                    else if(jpushMessageInfo.messageType.Contains(PushMessageType.Prompt.ToString()))
+                    else if (jpushMessageInfo.messageType.Contains(PushMessageType.Prompt.ToString()))
                     {
                         ShowAlarmPushMessage(jpushMessageInfo, false);
                     }
                 }
             }
-            catch(Exception EX)
+            catch (Exception EX)
             {
                 Utlis.WriteLine("catch: " + EX.ToString());
             }
         }
-
-        /// <summary>
-        /// 瑙f瀽涓版灄鍙瀵硅鎺ㄩ�佹暟鎹�
-        /// </summary>
-        /// <param name="jsonStr"></param>
-        /// <returns></returns>
-        ESVideoInfo GetESOnVideoJson(string jsonStr)
+        //{"code":0,"data":{"list":[{"createTime":"1625798305115","modifyTime":"1625798305115","region":"100000000000000001","id":"1413326644794294273","alarmId":"20210709103818-F41014762-1-10000","channelNo":1,"deviceSerial":"F41014762","alarmName":"浜轰綋鎰熷簲浜嬩欢","alarmPicUrl":"https://i.ys7.com/streamer/alarm/url/get?fileId=20210709103818-F41014762-1-10000-2-1&deviceSerialNo=F41014762&cn=1&isEncrypted=0&isCloudStored=0&ct=1&lc=7&bn=1_hikalarm&isDevVideo=0","alarmTime":"2021-07-09T10:38:17","homeId":"1396717478877241345","alarmType":"pir","isChecked":0,"isEncrypt":0,"deleted":0,"tenantId":"20"},{"createTime":"1625798057197","modifyTime":"1625798057197","region":"100000000000000001","id":"1413325604946640898","alarmId":"20210709103413-F41014762-1-10000","channelNo":1,"deviceSerial":"F41014762","alarmName":"浜轰綋鎰熷簲浜嬩欢","alarmPicUrl":"https://i.ys7.com/streamer/alarm/url/get?fileId=20210709103413-F41014762-1-10000-2-1&deviceSerialNo=F41014762&cn=1&isEncrypted=0&isCloudStored=0&ct=1&lc=7&bn=1_hikalarm&isDevVideo=0","alarmTime":"2021-07-09T10:34:12","homeId":"1396717478877241345","alarmType":"pir","isChecked":0,"isEncrypt":0,"deleted":0,"tenantId":"20"},{ "createTime":"1625797973320","modifyTime":"1625797973320","region":"100000000000000001","id":"1413325253141004289","alarmId":"20210709103236-F41014762-1-10000","channelNo":1,"deviceSerial":"F41014762","alarmName":"浜轰綋鎰熷簲浜嬩欢","alarmPicUrl":"https://i.ys7.com/streamer/alarm/url/get?fileId=20210709103236-F41014762-1-10000-2-1&deviceSerialNo=F41014762&cn=1&isEncrypted=0&isCloudStored=0&ct=1&lc=7&bn=1_hikalarm&isDevVideo=0","alarmTime":"2021-07-09T10:32:31","homeId":"1396717478877241345","alarmType":"pir","isChecked":0,"isEncrypt":0,"deleted":0,"tenantId":"20"},{ "createTime":"1625797782136","modifyTime":"1625797782136","region":"100000000000000001","id":"1413324451261382658","alarmId":"20210709102937-F41014762-1-10000","channelNo":1,"deviceSerial":"F41014762","alarmName":"浜轰綋鎰熷簲浜嬩欢","alarmPicUrl":"https://i.ys7.com/streamer/alarm/url/get?fileId=20210709102937-F41014762-1-10000-2-1&deviceSerialNo=F41014762&cn=1&isEncrypted=0&isCloudStored=0&ct=1&lc=7&bn=1_hikalarm&isDevVideo=0","alarmTime":"2021-07-09T10:29:37","homeId":"1396717478877241345","alarmType":"pir","isChecked":0,"isEncrypt":0,"deleted":0,"tenantId":"20"},{ "createTime":"1625797668771","modifyTime":"1625797668771","region":"100000000000000001","id":"1413323975769915394","alarmId":"20210709102743-F41014762-1-10000","channelNo":1,"deviceSerial":"F41014762","alarmName":"浜轰綋鎰熷簲浜嬩欢","alarmPicUrl":"https://i.ys7.com/streamer/alarm/url/get?fileId=20210709102743-F41014762-1-10000-2-1&deviceSerialNo=F41014762&cn=1&isEncrypted=0&isCloudStored=0&ct=1&lc=7&bn=1_hikalarm&isDevVideo=0","alarmTime":"2021-07-09T10:27:42","homeId":"1396717478877241345","alarmType":"pir","isChecked":0,"isEncrypt":0,"deleted":0,"tenantId":"20"},{ "createTime":"1625797539846","modifyTime":"1625797539846","region":"100000000000000001","id":"1413323435023466498","alarmId":"20210709102534-F41014762-1-10000","channelNo":1,"deviceSerial":"F41014762","alarmName":"浜轰綋鎰熷簲浜嬩欢","alarmPicUrl":"https://i.ys7.com/streamer/alarm/url/get?fileId=20210709102534-F41014762-1-10000-2-1&deviceSerialNo=F41014762&cn=1&isEncrypted=0&isCloudStored=0&ct=1&lc=7&bn=1_hikalarm&isDevVideo=0","alarmTime":"2021-07-09T10:25:34","homeId":"1396717478877241345","alarmType":"pir","isChecked":0,"isEncrypt":0,"deleted":0,"tenantId":"20"},{ "createTime":"1625797530627","modifyTime":"1625797530627","region":"100000000000000001","id":"1413323396351983618","alarmId":"20210709102525-F41014762-1-10000","channelNo":1,"deviceSerial":"F41014762","alarmName":"浜轰綋鎰熷簲浜嬩欢","alarmPicUrl":"https://i.ys7.com/streamer/alarm/url/get?fileId=20210709102525-F41014762-1-10000-2-1&deviceSerialNo=F41014762&cn=1&isEncrypted=0&isCloudStored=0&ct=1&lc=7&bn=1_hikalarm&isDevVideo=0","alarmTime":"2021-07-09T10:25:25","homeId":"1396717478877241345","alarmType":"pir","isChecked":0,"isEncrypt":0,"deleted":0,"tenantId":"20"},{ "createTime":"1625796028089","modifyTime":"1625796028089","region":"100000000000000001","id":"1413317094255034369","alarmId":"20210709100024-F41014762-1-10000","channelNo":1,"deviceSerial":"F41014762","alarmName":"浜轰綋鎰熷簲浜嬩欢","alarmPicUrl":"https://i.ys7.com/streamer/alarm/url/get?fileId=20210709100024-F41014762-1-10000-2-1&deviceSerialNo=F41014762&cn=1&isEncrypted=0&isCloudStored=0&ct=1&lc=7&bn=1_hikalarm&isDevVideo=0","alarmTime":"2021-07-09T10:00:23","homeId":"1396717478877241345","alarmType":"pir","isChecked":0,"isEncrypt":0,"deleted":0,"tenantId":"20"},{ "createTime":"1625795974558","modifyTime":"1625795974558","region":"100000000000000001","id":"1413316869729746946","alarmId":"20210709095931-F41014762-1-10000","channelNo":1,"deviceSerial":"F41014762","alarmName":"浜轰綋鎰熷簲浜嬩欢","alarmPicUrl":"https://i.ys7.com/streamer/alarm/url/get?fileId=20210709095931-F41014762-1-10000-2-1&deviceSerialNo=F41014762&cn=1&isEncrypted=0&isCloudStored=0&ct=1&lc=7&bn=1_hikalarm&isDevVideo=0","alarmTime":"2021-07-09T09:59:31","homeId":"1396717478877241345","alarmType":"pir","isChecked":0,"isEncrypt":0,"deleted":0,"tenantId":"20"},{ "createTime":"1625795966933","modifyTime":"1625795966933","region":"100000000000000001","id":"1413316837748178946","alarmId":"20210709095923-F41014762-1-10000","channelNo":1,"deviceSerial":"F41014762","alarmName":"浜轰綋鎰熷簲浜嬩欢","alarmPicUrl":"https://i.ys7.com/streamer/alarm/url/get?fileId=20210709095923-F41014762-1-10000-2-1&deviceSerialNo=F41014762&cn=1&isEncrypted=0&isCloudStored=0&ct=1&lc=7&bn=1_hikalarm&isDevVideo=0","alarmTime":"2021-07-09T09:59:22","homeId":"1396717478877241345","alarmType":"pir","isChecked":0,"isEncrypt":0,"deleted":0,"tenantId":"20"}],"totalCount":"13","totalPage":"2","pageNo":"1","pageSize":"10"},"timestamp":"1625807415164","isSuccess":true}
+        //{"platform":"1","timestamp":"1625805660249","appKey":"HDL-HOME-APP-TEST","sign":"02e433c40485b30451ebdc5ca3cd959c","deviceSerial":"F41014762","homeId":"1396717478877241345"}
+    /// <summary>
+    /// 瑙f瀽涓版灄鍙瀵硅鎺ㄩ�佹暟鎹�
+    /// </summary>
+    /// <param name="jsonStr"></param>
+    /// <returns></returns>
+    ESVideoInfo GetESOnVideoJson(string jsonStr)
         {
             try
             {
@@ -436,7 +453,7 @@
         /// </summary>
         /// <param name="jpushMessageInfo"></param>
         /// <param name="isAlarm">鏄惁鏄姤璀︿俊鎭紝锛堝姞杞界殑寮圭獥棰滆壊涓嶄竴鏍凤級</param>
-        public void ShowAlarmPushMessage(JPushMessageInfo jpushMessageInfo,bool isAlarm)
+        public void ShowAlarmPushMessage(JPushMessageInfo jpushMessageInfo, bool isAlarm)
         {
             //娌$櫥褰曚笉澶勭悊
             if (UserInfo.Current == null || !UserInfo.Current.IsLogin || MainPage.BasePageView == null)
@@ -600,23 +617,28 @@
                     var result = new HttpServerRequest().EZGetChildToken();
                     if (result.Code == StateCode.SUCCESS)
                     {
-                        var ezChildAccessToken = Newtonsoft.Json.JsonConvert.DeserializeObject<EZChildAccessToken>(result.Data.ToString());
+                        var ezChildAccessToken = result.Data.ToString();
+
+                        //var ezChildAccessToken = Newtonsoft.Json.JsonConvert.DeserializeObject<EZChildAccessToken>(result.Data.ToString());
                         Application.RunOnMainThread(() =>
                         {
-                            if (!string.IsNullOrEmpty(ezChildAccessToken.accessToken))
+                            if (!string.IsNullOrEmpty(ezChildAccessToken))
                             {
 #if __IOS__
                                 //iOS
                                 //鍒濆鍖栬悿鐭充簯SDK锛屼腑鏂囧浗鍐卥ey銆佽嫳鏂囨捣澶杒ey 寮�鍙戣�呰处鍙蜂娇鐢ㄥ簲鐢ㄥ寘鍚嶇敵璇风殑APPKEY锛屼笉鍚屽寘鍚嶅簲鐢ㄩ渶閰嶇疆涓嶅悓鐨凙PPKEY
-                                EZSDK.IOS.EZSDK.InitLibWithAppKey("1aa98a90489b4838b966b57018b4b04b", "1aa98a90489b4838b966b57018b4b04b");
+                                EZSDK.IOS.EZSDK.SharedInstance().InitLibWithAppKey("1aa98a90489b4838b966b57018b4b04b", "1aa98a90489b4838b966b57018b4b04b");
                                 //1.璁剧疆鎵�闇�娌充笢鐨凙ccessToken鍜孯efreshToken銆佸煙鍚嶅湴鍧�
-                                EZSDK.IOS.EZSDK.SetHDlAccessToken(UserInfo.Current.LoginTokenString, UserInfo.Current.RefreshToken);
-                                EZSDK.IOS.EZSDK.SetRequestHttpsHost(OnAppConfig.Instance.RequestHttpsHost);
+                                EZSDK.IOS.EZSDK.SharedInstance().SetHDlAccessToken(UserInfo.Current.LoginTokenString, UserInfo.Current.RefreshToken);
+                                EZSDK.IOS.EZSDK.SharedInstance().SetRequestHttpsHostAndPlatform(OnAppConfig.Instance.RequestHttpsHost, 1, DB_ResidenceData.Instance.CurrentRegion.id);
                                 //2.璁剧疆钀ょ煶瀛愯处鍙风殑AccessToken鍒癝DK
-                                EZSDK.IOS.EZSDK.SetEZAccessToken(ezChildAccessToken.accessToken);
-                                //3.鎵撳紑鎽勫儚澶磋澶囧垪琛ㄩ〉闈�
-                                EZSDK.IOS.EZSDK.Go2EZvizMonitor();
+                                EZSDK.IOS.EZSDK.SharedInstance().SetEZAccessToken(ezChildAccessToken);
+                                ////3.鎵撳紑鎽勫儚澶磋澶囧垪琛ㄩ〉闈�
+                                EZSDK.IOS.EZSDK.SharedInstance().Go2EZvizMonitor();
 
+                                //EZSDK.IOS.EZDeviceInfo info = new EZSDK.IOS.EZDeviceInfo();
+                                //info.de
+                                //EZSDK.IOS.EZSDK.Play(info);
 #else
                                 //Android
                                 //1.璁剧疆鎵�闇�娌充笢鐨則oken銆佸煙鍚嶅湴鍧�
@@ -626,15 +648,25 @@
                                 {
                                     if (b)
                                     {
-                                        Android.Content.Intent intent = new Android.Content.Intent();
-                                        var bundle = new Android.OS.Bundle();
-                                        //浼犻�抧ame鍙傛暟涓簍inyphp
-                                        bundle.PutString("Token", ezChildAccessToken.accessToken);
-                                        bundle.PutString("HdlToken", UserInfo.Current.LoginTokenString);
-                                        bundle.PutString("Url", OnAppConfig.Instance.RequestHttpsHost);
-                                        intent.PutExtras(bundle);
-                                        intent.SetComponent(new Android.Content.ComponentName(Shared.Application.Activity, "com.videogo.MainActivity"));
-                                        Shared.Application.Activity.StartActivity(intent);
+                                        ((BaseActivity)Shared.Application.Activity).SetPermission(result =>
+                                        {
+                                            if(result)
+                                            { 
+                                            Android.Content.Intent intent = new Android.Content.Intent();
+                                            var bundle = new Android.OS.Bundle();
+                                            //浼犻�抧ame鍙傛暟涓簍inyphp
+                                            bundle.PutString("EzChildAccessToken", ezChildAccessToken);
+                                            bundle.PutString("HdlToken", UserInfo.Current.LoginTokenString);
+                                            bundle.PutString("Url", OnAppConfig.Instance.RequestHttpsHost);
+                                            bundle.PutString("EzvizAppKey", "1aa98a90489b4838b966b57018b4b04b");
+                                            bundle.PutInt("Platform", 1);
+                                            bundle.PutString("HomeId", DB_ResidenceData.Instance.CurrentRegion.id);
+                                            intent.PutExtras(bundle);
+                                            intent.SetComponent(new Android.Content.ComponentName(Shared.Application.Activity, "com.videogo.MainActivity"));
+                                            Shared.Application.Activity.StartActivity(intent);
+                                            }
+                                        }, "android.permission.RECORD_AUDIO");
+
                                     }
                                 });
 #endif
diff --git a/HDL_ON/Common/R.cs b/HDL_ON/Common/R.cs
index d7fe0f2..a8f6fcb 100644
--- a/HDL_ON/Common/R.cs
+++ b/HDL_ON/Common/R.cs
@@ -5,6 +5,90 @@
     public static class StringId
     {
         /// <summary>
+        /// 娣诲姞鍛婅鐩爣
+        /// </summary>
+        public const int AddAlarmTarget = 500;
+        /// <summary>
+        /// 娣诲姞甯冮槻鍔熻兘
+        /// </summary>
+        public const int AddDefenseFunction = 499;
+        /// <summary>
+        /// 瑙﹀彂寤舵椂
+        /// </summary>
+        public const int TriggerDelay = 498;
+        /// <summary>
+        /// 鑷畾涔�
+        /// </summary>
+        public const int Custom = 497;
+        /// <summary>
+        /// 杩樻病鏈夊叧鑱斾换鍔″竷闃茬姸鎬�
+        /// </summary>
+        public const int ThereIsNoAssociatedTaskDeploymentStatus = 496;
+        /// <summary>
+        /// 浜鸿劯閫氳璁剧疆
+        /// </summary>
+        public const int FacePassageSetting = 495;
+        /// <summary>
+        /// 璁剧疆闈㈠
+        /// </summary>
+        public const int SetFace = 494;
+        /// <summary>
+        /// 閲嶇疆闈㈠
+        /// </summary>
+        public const int ResetFace = 493;
+        /// <summary>
+        /// 鎶归櫎鏁版嵁
+        /// </summary>
+        public const int EraseData = 492;
+        /// <summary>
+        /// 鍏充簬闈㈠ID涓庨殣绉�
+        /// </summary>
+        public const int AboutFaceIdAndPrivacy = 491;
+        /// <summary>
+        /// 绀惧尯闂ㄧ閫氳
+        /// </summary>
+        public const int CommunityAccessControl = 490;
+        /// <summary>
+        /// 灏嗛潰瀹笽D搴旂敤浜庯細
+        /// </summary>
+        public const int ApplyFaceIdTo = 489;
+        /// <summary>
+        /// 浜鸿劯閫氳
+        /// </summary>
+        public const int FacePassage = 488;
+        /// <summary>
+        /// 瑙﹀彂鍚庡憡璀︾洰鏍�
+        /// </summary>
+        public const int AlarmTargetAfterTriggering = 487;
+        /// <summary>
+        /// 甯冮槻鍔熻兘/鎶ヨ鐘舵��
+        /// </summary>
+        public const int DefenseFunctionArmState = 486;
+        /// <summary>
+        /// 鏌ョ湅/淇敼
+        /// </summary>
+        public const int CheckModify = 485;
+        /// <summary>
+        /// 寮�鍚�
+        /// </summary>
+        public const int OpenArm = 484;
+        /// <summary>
+        /// 璇疯緭鍏ifi-mac鐮�
+        /// </summary>
+        public const int PlsEntryMacCode = 483;
+        /// <summary>
+        /// 鐕冩皵浼犳劅鍣�
+        /// </summary>
+        public const int SensorGas = 482;
+        /// <summary>
+        /// 鍙互寮�濮嬩娇鐢ㄧ幆澧冧紶鎰熷櫒浜�
+        /// </summary>
+        public const int CanStartUsingEnvironmentalSensor = 481;
+        /// <summary>
+        /// 鐜浼犳劅鍣�
+        /// </summary>
+        public const int SensorEnvironment = 480;
+        /// <summary>
         /// 椋庨噺
         /// </summary>
         public const int AirVolume = 479;
diff --git a/HDL_ON/Common/Utlis/FloorRoomSelectPopupView.cs b/HDL_ON/Common/Utlis/FloorRoomSelectPopupView.cs
index db8e6c3..dffe522 100644
--- a/HDL_ON/Common/Utlis/FloorRoomSelectPopupView.cs
+++ b/HDL_ON/Common/Utlis/FloorRoomSelectPopupView.cs
@@ -241,7 +241,7 @@
             {
                 //鍏ㄩ儴
                 btnFloorName.Text = Language.StringByID(StringId.All);
-                btnFloorName.Width = btnFloorName.GetTextWidth();
+                //btnFloorName.Width = btnFloorName.GetTextWidth();
             }
             //鎴块棿
             else if (selectType == 3)
diff --git a/HDL_ON/DAL/DriverLayer/A_Protocol_Common.cs b/HDL_ON/DAL/DriverLayer/A_Protocol_Common.cs
index ecd149d..3292d0a 100644
--- a/HDL_ON/DAL/DriverLayer/A_Protocol_Common.cs
+++ b/HDL_ON/DAL/DriverLayer/A_Protocol_Common.cs
@@ -59,6 +59,10 @@
         /// </summary>
         public const string SearchLoaclGatewayReply = "/user/all/custom/gateway/search_reply";
         /// <summary>
+        /// 缃戝叧骞挎挱鏁版嵁
+        /// </summary>
+        public const string GatewayBroadcast = "/user/all/custom/gateway/broadcast";
+        /// <summary>
         /// 璋冭瘯杞欢涓婁紶oid鍒楄〃
         /// </summary>
         public const string AddDeviceOids = "/user/onpro/custom/device/add";
@@ -126,5 +130,16 @@
                 return $"/user/{Control.Ins.GatewayId}/custom/scene/execute";
             }
         }
+
+        /// <summary>
+        /// 瀹夐槻鎺у埗
+        /// </summary>
+        public string ControlSeurity
+        {
+            get
+            {
+                return $"/user/{Control.Ins.GatewayId}/custom/security/status/set";
+            }
+        }
     }
 }
\ No newline at end of file
diff --git a/HDL_ON/DAL/DriverLayer/Control.cs b/HDL_ON/DAL/DriverLayer/Control.cs
index 0724f2b..b72b210 100644
--- a/HDL_ON/DAL/DriverLayer/Control.cs
+++ b/HDL_ON/DAL/DriverLayer/Control.cs
@@ -26,7 +26,6 @@
     public class Control
     {
        
-
         static Control _control;
         public static Control Ins
         {
@@ -323,6 +322,15 @@
                 }
             }
         }
+        /// <summary>
+        /// 瀹夐槻鎺у埗
+        /// </summary>
+        public void ControlArm()
+        {
+            DAL.Server.HttpServerRequest httpServer = new DAL.Server.HttpServerRequest();
+            //var pack = httpServer.GetSecurityAlarmLogList
+        }
+
 
         /// <summary>
         /// 鍙戦�佸懡浠�
@@ -357,15 +365,6 @@
                             commandDictionary[FunctionAttributeKey.Brightness] = "0";
                         }
                     }
-                }
-            }
-            //Bug淇锛氫竴绔彛杩滅▼鎺у埗璋冨厜璁惧鐨勮皟鍏夊睘鎬ф椂锛屾棤娉曟帶鍒跺埌0锛屽弽澶嶆í璺炽��
-            //鍥犱负On + 杩滅▼鎺у埗鍙戦�佺粰浜戠浣跨敤鐨勬槸link鍗忚鏁版嵁锛屾潹娑涗腑杞粰楂樿儨澶勭悊鏃跺�欓�昏緫涓婃湁鍐茬獊锛屽鑷存棤娉曞崟鐙帶鍒朵寒搴﹀�硷紝闇�瑕佸悓鏃跺彂閫佸紑鍏冲�间笌浜害鍊笺��
-            if (DB_ResidenceData.Instance.GatewayType == 0)
-            {
-                if(commandDictionary.Count == 1 && commandDictionary.ContainsKey(FunctionAttributeKey.Brightness))
-                {
-                    commandDictionary.Add(FunctionAttributeKey.OnOff, commandDictionary[FunctionAttributeKey.Brightness] == "0" ? "off" : "on");
                 }
             }
 
@@ -443,6 +442,25 @@
                 //杩滅▼閫氳
                 else
                 {
+                    //Bug淇锛氫竴绔彛杩滅▼鎺у埗璋冨厜璁惧鐨勮皟鍏夊睘鎬ф椂锛屾棤娉曟帶鍒跺埌0锛屽弽澶嶆í璺炽��
+                    //鍥犱负On + 杩滅▼鎺у埗鍙戦�佺粰浜戠浣跨敤鐨勬槸link鍗忚鏁版嵁锛屾潹娑涗腑杞粰楂樿儨澶勭悊鏃跺�欓�昏緫涓婃湁鍐茬獊锛屽鑷存棤娉曞崟鐙帶鍒朵寒搴﹀�硷紝闇�瑕佸悓鏃跺彂閫佸紑鍏冲�间笌浜害鍊笺��
+                    if (DB_ResidenceData.Instance.GatewayType == 0)
+                    {
+                        if (commandDictionary.Count == 1)
+                        {
+                            if (commandDictionary.ContainsKey(FunctionAttributeKey.Brightness))
+                            {
+                                commandDictionary.Add(FunctionAttributeKey.OnOff, commandDictionary[FunctionAttributeKey.Brightness] == "0" ? "off" : "on");
+                            }
+                        }
+                        if(function.spk == SPK.LightCCT)
+                        {
+                            if (!commandDictionary.ContainsKey(FunctionAttributeKey.CCT))
+                            {
+                                commandDictionary.Add(FunctionAttributeKey.CCT, function.GetAttrState(FunctionAttributeKey.CCT));
+                            }
+                        }
+                    }
                     DAL.Server.HttpServerRequest httpServer = new DAL.Server.HttpServerRequest();
                     //ALink鎺у埗銆丅us鎺у埗浣跨敤鍚屼竴涓帴鍙f帶鍒讹紝鐢变簯绔礋璐hВ鏋�
                     var apiControlData = function.GetApiControlData(commandDictionary);
@@ -604,6 +622,39 @@
         }
 
         /// <summary>
+        /// 瀹夐槻鎺у埗
+        /// </summary>
+        public void ControlSecurity(SecurityAlarm securityAlarm,string state)
+        {
+            if (!Ins.GatewayOnline_Local)//缃戝叧鏈湴涓嶅湪绾�
+            {
+                var pm = new DAL.Server.HttpServerRequest();
+                var result = pm.SetSecurityStatus(new List<SecurityState>() { new SecurityState() {
+                 gatewayId = DB_ResidenceData.Instance.HomeGateway.gatewayId,
+                  sid = securityAlarm.sid, status = state, userSecurityId = securityAlarm.userSecurityId
+                } });
+            }
+            else
+            {
+                Dictionary<string, string> keys = new Dictionary<string, string>();
+                keys.Add("sid", securityAlarm.sid);
+                keys.Add("status", state);
+                var aLinkData = new AlinkReadFunctionStatusObj()
+                {
+                    id = Ins.msg_id.ToString(),
+                    objects = new List<Dictionary<string, string>>()
+                        {
+                            keys
+                        },
+                    time_stamp = Utlis.GetTimestamp()
+                };
+                var aLinkJson = Newtonsoft.Json.JsonConvert.SerializeObject(aLinkData);
+                var sendBytes = Ins.ConvertSendBodyData(CommunicationTopic.ct.ControlSeurity, aLinkJson);
+                new Control_Udp().SendLocalHdlLinkData(sendBytes, aLinkData.id);
+            }
+        }
+
+        /// <summary>
         /// a鍗忚鎺у埗鍦烘櫙
         /// </summary>
         /// <param name="scene"></param>
@@ -695,8 +746,9 @@
                 //}
                 receiveObj.BodyDataString = res[1];
 
-                if (receiveObj.Topic == CommunicationTopic.SearchLoaclGatewayReply)
+                if (receiveObj.Topic == CommunicationTopic.SearchLoaclGatewayReply || receiveObj.Topic == CommunicationTopic.GatewayBroadcast)
                 {
+                   
                     var bodyJObj = Newtonsoft.Json.JsonConvert.DeserializeObject<ResponsePack>(res[1]);
                     if (bodyJObj == null)
                     {
@@ -726,6 +778,14 @@
                 {
                     //TODO 鏆傛椂涓嶄紶姝g‘鐨勬暟鎹笂鍘伙紝濡傛灉鍚庨潰瑕佷紭鍖栧墠闈㈣繖浜涗唬鐮�
                     UpdataFunctionStatus(receiveObj.BodyDataString, null);
+                }
+                else if (receiveObj.Topic == CommunicationTopic.ct.ControlSeurity +"_reply")
+                {
+                    var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<AlinkFunctionStatusObj>(receiveObj.BodyDataString);
+                    if (temp != null)
+                    {
+                        Control_Udp.ReceiveRepeatManager(temp.id, null);
+                    }
                 }
                 else
                 {
@@ -912,6 +972,8 @@
                                 EnvironmentalPage.LoadEvent_UpdataStatus(localFunction);
                                 break;
                             case SPK.SensorEnvironment:
+                            case SPK.SensorEnvironment2:
+                            case SPK.SensorEnvironment3:
                                 if (localFunction.GetAttributes().Contains(FunctionAttributeKey.Temperature))
                                 {
                                     HomePage.LoadEvent_RefreshEnvirIndoorTemp();
diff --git a/HDL_ON/DAL/DriverLayer/Control_Udp.cs b/HDL_ON/DAL/DriverLayer/Control_Udp.cs
index 789428d..37ee1e3 100644
--- a/HDL_ON/DAL/DriverLayer/Control_Udp.cs
+++ b/HDL_ON/DAL/DriverLayer/Control_Udp.cs
@@ -50,7 +50,7 @@
         /// <summary>
         /// 鍙戦�佹暟鎹紝涓嶉渶瑕佺瓑寰呭洖澶�
         /// </summary>
-        public void ControlBytesSend(Command command, byte subnetID, byte deviceID, byte[] gatewayBytes, int sendCount = 3)
+        public void ControlBytesSend(Command command, byte subnetID, byte deviceID, byte[] gatewayBytes, int sendCount = 3,bool reSend = false)
         {
 #if DEBUG
             string ddd = "";
@@ -69,7 +69,8 @@
                 SubnetID = subnetID,
                 DeviceID = deviceID,
                 AddData = gatewayBytes,
-            }, sendCount, false);
+            }, 3, true);
+            //}, sendCount, reSend);
         }
 
         /// <summary>
@@ -423,7 +424,7 @@
         /// </summary>
         /// <param name="commandString"></param>
         /// <returns></returns>
-        public void WriteBusData(Function function, Dictionary<string, string> commandDictionary)
+        public void WriteBusData(Function function, Dictionary<string, string> commandDictionary,bool reSend = false)
         {
             try
             {
@@ -437,17 +438,21 @@
                         switch (function.spk)
                         {
                             case SPK.LightCCT:
-                                byte b0 = 100;//寮�鍏虫搷浣滀緷鎹畂n_off瀛楁锛屽疄闄呭紑鍏冲�间緷鎹産rightness锛屽綋on_off涓烘墦寮�锛宐rightness涓嶈兘涓�0
-                                if(commandDictionary.ContainsKey(FunctionAttributeKey.OnOff))
+                                byte b0 = 100;
+                                if (commandDictionary.ContainsKey(FunctionAttributeKey.OnOff))
                                 {
                                     if (function.trait_on_off.curValue.ToString() == "off")
                                     {
                                         b0 = 0;
                                     }
+                                    else
+                                    {
+                                        b0 = function.lastBrightness == 0 ? (byte)100 : Convert.ToByte(function.lastBrightness);
+                                    }
                                 }
                                 else
                                 {
-                                    b0 = Convert.ToByte(function.GetAttrState(FunctionAttributeKey.Brightness));// == 0 ? (byte)100 : Convert.ToByte(function.GetAttrState(FunctionAttributeKey.Brightness));
+                                    b0 = Convert.ToByte(function.GetAttrState(FunctionAttributeKey.Brightness));
                                 }
                                 var bytes0 = new byte[] { function.bus.LoopId,
                                             b0,
@@ -459,22 +464,21 @@
                                 ControlBytesSend(Command.SetLogicLoopColor, subnetId, deviceId, bytes0, 1);
                                 break;
                             case SPK.LightRGB:
-                                byte b = 100;//寮�鍏虫搷浣滀緷鎹畂n_off瀛楁锛屽疄闄呭紑鍏冲�间緷鎹産rightness锛屽綋on_off涓烘墦寮�锛宐rightness涓嶈兘涓�0
-                                if (function.trait_on_off.curValue.ToString() == "off")
+                                byte b = 100;
+                                if (commandDictionary.ContainsKey(FunctionAttributeKey.OnOff))
                                 {
-                                    b = 0;
-                                }
-                                else
-                                {
-                                    byte lightBri1 = Convert.ToByte(function.GetAttrState(FunctionAttributeKey.Brightness));
-                                    if (lightBri1 == 0)
+                                    if (function.trait_on_off.curValue.ToString() == "off")
                                     {
-                                        b = 100;
+                                        b = 0;
                                     }
                                     else
                                     {
-                                        b = lightBri1;
+                                        b = function.lastBrightness == 0 ? (byte)100 : Convert.ToByte(function.lastBrightness);
                                     }
+                                }
+                                else
+                                {
+                                    b = Convert.ToByte(function.GetAttrState(FunctionAttributeKey.Brightness));
                                 }
                                 var tempLight = new Light();
                                 var bytes = new byte[] { function.bus.LoopId,
@@ -488,22 +492,21 @@
                                 break;
                             case SPK.LightDimming:
                                 byte b1 = 100;
-                                if (function.trait_on_off.curValue.ToString() == "off")
+                                if (commandDictionary.ContainsKey(FunctionAttributeKey.OnOff))
                                 {
-                                    b1 = 0;
-                                }
-                                else
-                                {
-                                    byte lightBri = Convert.ToByte(function.GetAttrState(FunctionAttributeKey.Brightness));
-                                    if (lightBri == 0)
+                                    if (function.trait_on_off.curValue.ToString() == "off")
                                     {
-                                        b1 = 100;
+                                        b1 = 0;
                                     }
                                     else
                                     {
-                                        b1 = lightBri;
+                                        b1 = function.lastBrightness == 0 ? (byte)100 : Convert.ToByte(function.lastBrightness);
                                     }
                                 }
+                                else
+                                {
+                                    b1 = Convert.ToByte(function.GetAttrState(FunctionAttributeKey.Brightness));
+                                }
                                 ControlBytesSend(Command.SetSingleLight, subnetId, deviceId, new byte[] {
                                             function.bus.LoopId,
                                             b1,
diff --git a/HDL_ON/DAL/DriverLayer/Packet.cs b/HDL_ON/DAL/DriverLayer/Packet.cs
index 2d28447..5994565 100644
--- a/HDL_ON/DAL/DriverLayer/Packet.cs
+++ b/HDL_ON/DAL/DriverLayer/Packet.cs
@@ -180,7 +180,7 @@
                                     light.trait_on_off.curValue = receiveBytes[light.bus.LoopId] == 0 ? "off" : "on";
                                     if (light.trait_on_off.curValue.ToString() == "on")
                                     {
-                                        light.SetAttrState(FunctionAttributeKey.Brightness, receiveBytes[2].ToString());
+                                        light.SetAttrState(FunctionAttributeKey.Brightness, receiveBytes[i+1].ToString());
                                         light.lastState = Language.StringByID(StringId.Brightness) + " : " + receiveBytes[2] + "%";
                                     }
                                     HomePage.UpdataFunctionStates(light);
diff --git a/HDL_ON/DAL/Mqtt/MqttClient.cs b/HDL_ON/DAL/Mqtt/MqttClient.cs
index b7de875..ab7a620 100644
--- a/HDL_ON/DAL/Mqtt/MqttClient.cs
+++ b/HDL_ON/DAL/Mqtt/MqttClient.cs
@@ -641,8 +641,6 @@
                                         .WithCleanSession()
                                         .WithProtocolVersion(MQTTnet.Formatter.MqttProtocolVersion.V311)
                                         .WithCommunicationTimeout(new TimeSpan(0, 0, 10))
-                                        //.WithCommunicationTimeout (new TimeSpan (0, 0, 5))
-                                        //.WithCommunicationTimeout (new TimeSpan (0, 1, 0))
                                         .Build();
 
                     await DisConnectRemoteMqttClient("StartRemoteMqtt");
diff --git a/HDL_ON/DAL/Server/HttpServerRequest.cs b/HDL_ON/DAL/Server/HttpServerRequest.cs
index c32ca0c..ceee580 100644
--- a/HDL_ON/DAL/Server/HttpServerRequest.cs
+++ b/HDL_ON/DAL/Server/HttpServerRequest.cs
@@ -2469,10 +2469,13 @@
         #region 鈻� 钀ょ煶浜慡DK鐩稿叧鎺ュ彛_________________________
         /// <summary>
         /// 娌充笢鑾峰彇钀ょ煶浜戝瓙璐﹀彿token鐨勬帴鍙�
+        /// 2021-07-07 鏂版柟妗堟帴鍙h皟鏁村鎺�
         /// </summary>
         public ResponsePackNew EZGetChildToken()
         {
             Dictionary<string, object> d = new Dictionary<string, object>();
+            d.Add("homeId", DB_ResidenceData.Instance.CurrentRegion.id);
+            d.Add("platform", "1");
             var requestJson = HttpUtil.GetSignRequestJson(d);
             return HttpUtil.RequestHttpsPostFroHome(NewAPI.API_POST_EZ_GetChildToken, requestJson);
         }
diff --git a/HDL_ON/DAL/Server/NewAPI.cs b/HDL_ON/DAL/Server/NewAPI.cs
index bd27310..b78df5d 100644
--- a/HDL_ON/DAL/Server/NewAPI.cs
+++ b/HDL_ON/DAL/Server/NewAPI.cs
@@ -599,7 +599,7 @@
         /// <summary>
         /// 娌充笢鑾峰彇钀ょ煶浜戝瓙璐﹀彿token鐨勬帴鍙�
         /// </summary>
-        public const string API_POST_EZ_GetChildToken = "/home-wisdom/platform/childToken";
+        public const string API_POST_EZ_GetChildToken = "/home-wisdom/platform/yingshi/child/token";
 
 
         #endregion
@@ -630,11 +630,6 @@
         /// </summary>
         public const string API_POST_FL_HangUp = "/home-wisdom/app/fl/vi/hang-up";
         /// <summary>
-        /// 鑾峰彇閫氳瘽璁板綍
-        /// </summary>
-        //public const string API_POST_FL_GetCallList = "/home-wisdom/app/fl/vi/list";
-        public const string API_POST_FL_GetCallList = "/home-wisdom/platform/imou/listCallRecords";
-        /// <summary>
         /// 鍒犻櫎閫氳瘽璁板綍
         /// </summary>
         public const string API_POST_FL_DeleteCallInfo = "/home-wisdom/app/fl/vi/delete";
@@ -662,6 +657,10 @@
         /// 鏇存敼閫氳瘽鐘舵��
         /// </summary>
         public const string API_POST_VideoDevice_UpdateCallStatus = "/home-wisdom/platform/imou/updateCallStatus";
+        /// <summary>
+        /// 鑾峰彇閫氳瘽璁板綍
+        /// </summary>
+        public const string API_POST_FL_GetCallList = "/home-wisdom/platform/imou/listCallRecords";
         #endregion
 
 
diff --git a/HDL_ON/DAL/ThirdPartySdk/ESOnVideo.cs b/HDL_ON/DAL/ThirdPartySdk/ESOnVideo.cs
index b6ad254..9a25874 100644
--- a/HDL_ON/DAL/ThirdPartySdk/ESOnVideo.cs
+++ b/HDL_ON/DAL/ThirdPartySdk/ESOnVideo.cs
@@ -4,6 +4,7 @@
 using System.Threading;
 using System.Collections.Generic;
 using HDL_ON.UI.UI2.PersonalCenter.PirDevice;
+using HDL_ON.Entity;
 
 #if __IOS__
 using Shared.IOS.ESVideoOnSDK;
@@ -66,7 +67,7 @@
             int.TryParse(mESVideoInfo.roomno, out roomID);
 
 #if __IOS__
-            if (interphoneType == "IMOUVISIAL")
+            if (interphoneType == InterphoneType.IMOUVISIAL.ToString())
             {
                 //涔愭鍙瀵硅
                 //1.鍒濆鍖朙COpenSDK_Api
@@ -95,7 +96,7 @@
             }
 #else
             Intent intent = null;
-            if (interphoneType == "IMOUVISIAL")
+            if (interphoneType == InterphoneType.IMOUVISIAL.ToString())
             {
                 intent = new Intent(Shared.Application.Activity, typeof(HDL_ON_Android.LeChengVideoActivity));
             }
@@ -136,7 +137,7 @@
             int roomID = 0;
             int.TryParse(mESVideoInfo.roomno, out roomID);
 #if __IOS__
-            if (interphoneType == "IMOUVISIAL")
+            if (interphoneType == InterphoneType.IMOUVISIAL.ToString())
             {
                 //涔愭鍙瀵硅
                 //1.鍒濆鍖朙COpenSDK_Api
@@ -152,6 +153,21 @@
                 vc.MLCCallDelegate = mOnLCCallDelegate;
                 //vc.MLCCallDelegate = new OnLCCallDelegate(this);
                 Shared.Application.currentVC.NavigationController.PushViewController(vc, true);
+            }
+            else if (interphoneType == InterphoneType.EZVIZ.ToString())
+            {
+                //钀ょ煶鐚溂鍛煎彨
+                //鍒濆鍖栬悿鐭充簯SDK锛屼腑鏂囧浗鍐卥ey銆佽嫳鏂囨捣澶杒ey 寮�鍙戣�呰处鍙蜂娇鐢ㄥ簲鐢ㄥ寘鍚嶇敵璇风殑APPKEY锛屼笉鍚屽寘鍚嶅簲鐢ㄩ渶閰嶇疆涓嶅悓鐨凙PPKEY
+                EZSDK.IOS.EZSDK.SharedInstance().InitLibWithAppKey("1aa98a90489b4838b966b57018b4b04b", "1aa98a90489b4838b966b57018b4b04b");
+                //1.璁剧疆鎵�闇�娌充笢鐨凙ccessToken鍜孯efreshToken銆佸煙鍚嶅湴鍧�
+                EZSDK.IOS.EZSDK.SharedInstance().SetHDlAccessToken(UserInfo.Current.LoginTokenString, UserInfo.Current.RefreshToken);
+          
+                EZSDK.IOS.EZSDK.SharedInstance().SetRequestHttpsHostAndPlatform(OnAppConfig.Instance.RequestHttpsHost, 1, mESVideoInfo.HomeId);
+                //2.璁剧疆钀ょ煶瀛愯处鍙风殑AccessToken鍒癝DK
+                EZSDK.IOS.EZSDK.SharedInstance().SetEZAccessToken(mESVideoInfo.Lc_AccessToken);
+                //3.鎵撳紑瑙嗛鎾斁椤甸潰
+                EZSDK.IOS.EZSDK.SharedInstance().PlayWithDeviceSerial(mESVideoInfo.DeviceSerial);
+
             }
             else
             {
@@ -170,9 +186,32 @@
             #region
 
             Intent intent = null;
-            if (interphoneType == "IMOUVISIAL")
+            if (interphoneType == InterphoneType.IMOUVISIAL.ToString())
             {
                 intent = new Intent(Shared.Application.Activity, typeof(HDL_ON_Android.LeChengVideoActivity));
+            }
+            else if (interphoneType == InterphoneType.EZVIZ.ToString())
+            {
+                ((BaseActivity)Shared.Application.Activity).SetCamera(b =>
+                {
+                    if (b)
+                    {
+                        intent = new Android.Content.Intent();
+                        var bundle = new Android.OS.Bundle();
+                        //浼犻�抧ame鍙傛暟涓簍inyphp
+                        bundle.PutString("EzChildAccessToken", mESVideoInfo.Lc_AccessToken);
+                        bundle.PutString("HdlToken", UserInfo.Current.LoginTokenString);
+                        bundle.PutString("Url", OnAppConfig.Instance.RequestHttpsHost);
+                        bundle.PutString("EzvizAppKey", "1aa98a90489b4838b966b57018b4b04b");
+                        bundle.PutInt("Platform", 1);
+                        bundle.PutString("HomeId", mESVideoInfo.HomeId);
+                        bundle.PutString("DeviceSerial", mESVideoInfo.DeviceSerial);
+                        intent.PutExtras(bundle);
+                        intent.SetComponent(new Android.Content.ComponentName(Shared.Application.Activity, "com.videogo.MainActivity"));
+                        Shared.Application.Activity.StartActivity(intent);
+                    }
+                });
+                return;
             }
             else
             {
@@ -598,31 +637,33 @@
         }
 
         #endregion
+
+       
 #endif
 
-        /// <summary>
-        /// 娴嬭瘯鏂规硶
-        /// </summary>
-        /// <param name="isMonitor"></param>
-        public void Test(bool isMonitor = true)
-        {
-            ESVideoInfo eSVideoInfo = new ESVideoInfo()
-            {
-                DeviceName = "瀹ゅ鏈�88",
-                ESVideoUUID = "JJY000019VPLLF",
+        ///// <summary>
+        ///// 娴嬭瘯鏂规硶
+        ///// </summary>
+        ///// <param name="isMonitor"></param>
+        //public void Test(bool isMonitor = true)
+        //{
+        //    ESVideoInfo eSVideoInfo = new ESVideoInfo()
+        //    {
+        //        DeviceName = "瀹ゅ鏈�88",
+        //        ESVideoUUID = "JJY000019VPLLF",
 
-            };
-            if (isMonitor)
-            {
-                ShowESVideoMonitor(eSVideoInfo, "");
-            }
-            else
-            {
-                eSVideoInfo.callId = "88888";
-                ShowESvideoVideoIntercom(eSVideoInfo, "");
-            }
+        //    };
+        //    if (isMonitor)
+        //    {
+        //        ShowESVideoMonitor(eSVideoInfo, "");
+        //    }
+        //    else
+        //    {
+        //        eSVideoInfo.callId = "88888";
+        //        ShowESvideoVideoIntercom(eSVideoInfo, "");
+        //    }
 
-        }
+        //}
     }
 
     /// <summary>
@@ -667,9 +708,9 @@
 
 
         //========================澶у崕==========================
-
         /// <summary>
         /// 璐﹀彿accessToken
+        /// 钀ょ煶瀛愯处鍙稵oken涔熷叡鐢ㄨ繖涓瓧娈�
         /// </summary>
         public string Lc_AccessToken = string.Empty;
 
@@ -692,6 +733,17 @@
         /// 璐﹀彿鏍囪锛�0鍥藉唴锛�1鍥藉锛涘浗鍐呭浗澶栬闂兘鍦板潃涓嶄竴鏍�
         /// </summary>
         public int Lc_Location = 0;
+
+        //========================钀ょ煶浜戠尗鐪�==========================
+        /// <summary>
+        /// 浣忓畢Id
+        /// </summary>
+        public string HomeId = string.Empty;
+        /// <summary>
+        /// 璁惧搴忓垪鍙�
+        /// </summary>
+        public string DeviceSerial = string.Empty;
+
 
     }
 
@@ -728,5 +780,11 @@
         /// 澶у崕鍙瀵硅骞冲彴
         /// </summary>
         IMOUVISIAL,
+        /// <summary>
+        /// 钀ょ煶鐚溂鍛煎彨
+        /// </summary>
+        EZVIZ,
+
+
     }
 }
diff --git a/HDL_ON/Entity/DB_ResidenceData.cs b/HDL_ON/Entity/DB_ResidenceData.cs
index 896cb34..0f6ca28 100644
--- a/HDL_ON/Entity/DB_ResidenceData.cs
+++ b/HDL_ON/Entity/DB_ResidenceData.cs
@@ -19,7 +19,6 @@
         /// </summary>
         public string MasterToken;
 
-        //RegionInfoRes _residecenInfo;
         RegionInfoRes _residecenInfo = new RegionInfoRes();
         /// <summary>
         /// 浣忓畢鍩虹淇℃伅
@@ -163,8 +162,8 @@
         public HomeGatewayInfo HomeGateway;
 
         /// <summary>
-        /// 0:bus缃戝叧
-        /// 1:A鍗忚缃戝叧
+        /// 0:涓�绔彛
+        /// 1:Link鍗忚缃戝叧
         /// </summary>
         public int GatewayType
         {
@@ -175,7 +174,7 @@
                 //#endif
                 if (HomeGateway == null)
                     return -1;
-                if (HomeGateway.gatewayType == "AGATEWAY")
+                if (HomeGateway.gatewayType != "BUSUDPGATEWAY")
                 {
                     return 1;
                 }
diff --git a/HDL_ON/Entity/Enumerative/MyEnum.cs b/HDL_ON/Entity/Enumerative/MyEnum.cs
index d365658..1282a71 100644
--- a/HDL_ON/Entity/Enumerative/MyEnum.cs
+++ b/HDL_ON/Entity/Enumerative/MyEnum.cs
@@ -45,11 +45,15 @@
         /// <summary>
         /// 鏅�氬満鏅�
         /// </summary>
-        OrdinaryScenes = 1,
+        OrdinaryScenes = 0,
         /// <summary>
-        /// 鐢靛奖changing
+        /// 鐢靛奖鍦烘櫙
         /// </summary>
-        MovieScene = 2,
+        MovieScene = 1,
+        /// <summary>
+        /// 鐏厜鍦烘櫙
+        /// </summary>
+        LightScene = 2,
     }
     /// <summary>
     /// 鍔熻兘绫诲瀷
diff --git a/HDL_ON/Entity/Function/Function.cs b/HDL_ON/Entity/Function/Function.cs
index b99f909..9205440 100644
--- a/HDL_ON/Entity/Function/Function.cs
+++ b/HDL_ON/Entity/Function/Function.cs
@@ -1228,7 +1228,7 @@
             spkList.Add(SensorDoorWindow);
             spkList.Add(SensorSmoke);
             spkList.Add(SensorWater);
-            //spkList.Add(SensorGas);
+            spkList.Add(SensorGas);
             //spkList.Add(SensorShanLan);
             //spkList.Add(SensorDuiShe);
             //spkList.Add(SensoruUtrasonic);
@@ -1267,11 +1267,11 @@
         /// </summary>
         public const string SensorEnvironment = "sensor.environment";
         /// <summary>
-        /// 闈掕悕浼犳劅鍣�2锛坈o2锛宲m25锛屾俯婀垮害锛岀數閲忥紝tvoc锛�
+        /// 闈掕悕鐜浼犳劅鍣�
         /// </summary>
         public const string SensorEnvironment2 = "sensor.environment2";
         /// <summary>
-        /// 闈掕悕浼犳劅鍣�3锛坈o2锛宲m25锛屾俯婀垮害锛�
+        /// 闈掕悕鐜浼犳劅鍣�
         /// </summary>
         public const string SensorEnvironment3 = "sensor.environment3";
 
@@ -1288,8 +1288,24 @@
             spkList.Add(SensorTVOC);
             spkList.Add(SensorHumidity);
             spkList.Add(SensorEnvironment);
+            spkList.Add(SensorEnvironment2);
+            spkList.Add(SensorEnvironment3);
             return spkList;
         }
+
+        /// <summary>
+        /// 鐜浼犳劅鍣ㄨ澶囧垪琛�
+        /// </summary>
+        /// <returns></returns>
+        public static List<string> EvironmentSensorList()
+        {
+            var spkList = new List<string>();
+            spkList.Add(SensorEnvironment);
+            spkList.Add(SensorEnvironment2);
+            spkList.Add(SensorEnvironment3);
+            return spkList;
+        }
+
         #endregion
         #endregion
 
diff --git a/HDL_ON/Entity/Function/Scene.cs b/HDL_ON/Entity/Function/Scene.cs
index 29a3503..fa6176f 100644
--- a/HDL_ON/Entity/Function/Scene.cs
+++ b/HDL_ON/Entity/Function/Scene.cs
@@ -77,12 +77,19 @@
         public string group = "1";
         /// <summary>
         /// 鍦烘櫙绫诲瀷
+        /// 0:鏅��
+        /// 1:鐢靛奖
+        /// 2:璋冨厜
         /// </summary>
         public SceneType sceneType = SceneType.OrdinaryScenes;
         /// <summary>
         /// 鏀惰棌鏍囪
         /// </summary>
         public bool collect = false;
+        /// <summary>
+        /// 鏄惁鍏佽鍒犻櫎
+        /// </summary>
+        public bool can_delete = true;
 
         /// <summary>
         /// 鍒涘缓璇ュ満鏅殑鐢ㄦ埛ID
@@ -542,10 +549,15 @@
         /// <summary>
         /// 灞炴�у�煎崟浣�
         /// </summary>
-        public string GetUintString()
+        public string GetUintString(string inputKey = "")
         {
             var us = "";
-            switch (key)
+            var swithchString = key;
+            if(!string.IsNullOrEmpty(inputKey))
+            {
+                swithchString = inputKey;
+            }
+            switch (swithchString)
             {
                 case FunctionAttributeKey.SetTemp:
                 case FunctionAttributeKey.RoomTemp:
diff --git a/HDL_ON/Entity/Function/SecurityAlarm.cs b/HDL_ON/Entity/Function/SecurityAlarm.cs
index eeab50e..4eda460 100644
--- a/HDL_ON/Entity/Function/SecurityAlarm.cs
+++ b/HDL_ON/Entity/Function/SecurityAlarm.cs
@@ -1,11 +1,117 @@
 锘縰sing System;
 using System.Collections.Generic;
 using HDL_ON.Common;
+using HDL_ON.DAL.Server;
+using Shared;
 
 namespace HDL_ON.Entity
 {
+    /// <summary>
+    /// 瀹夐槻涓績
+    /// </summary>
+    public class SecurityCenter
+    {
+        static SecurityCenter _center;
+
+        public static SecurityCenter Security
+        {
+            get
+            {
+                if(_center == null)
+                {
+                    _center = new SecurityCenter();
+                }
+                return _center;
+            }
+        }
+
+        SecurityAlarm _securityAlarm;
+        /// <summary>
+        /// 褰撳墠甯冮槻妯″紡
+        /// </summary>
+        public SecurityAlarm CurrentDefenseMode
+        {
+            get
+            {
+                return _securityAlarm;
+            }
+            set
+            {
+                _securityAlarm = value;
+                UI.HomePage.LoadEvent_RefreshSecurityStatus();
+            }
+        }
+
+        HttpServerRequest httpServerRequest = new HttpServerRequest();
+
+
+
+        List<SecurityAlarm> _securityAlarmList;
+        /// <summary>
+        /// 闃插尯鍒楄〃
+        /// </summary>
+        public List<SecurityAlarm> securityAlarmList
+        {
+            get
+            {
+                if(_securityAlarmList == null)
+                {
+                  _securityAlarmList =  GetSecurityAlarmList();
+                }
+                return _securityAlarmList;
+            }
+        }
+
+
+        /// <summary>
+        /// 璇诲彇浜戠瀹夐槻鍒楄〃
+        /// </summary>
+        /// <returns></returns>
+        public List<SecurityAlarm> GetSecurityAlarmList()
+        {
+            var pack = httpServerRequest.GetSecurityList();
+            if(pack.Code == StateCode.SUCCESS)
+            {
+                var revData = Newtonsoft.Json.JsonConvert.DeserializeObject<List<SecurityAlarm>>(pack.Data.ToString());
+                if(revData!= null)
+                {
+                    _securityAlarmList = revData;
+                    return revData;
+                }
+            }
+            return new List<SecurityAlarm>();
+        }
+
+        /// <summary>
+        /// 鐘舵�� enable甯冮槻銆乨isable鎾掗槻
+        /// </summary>
+        public string status
+        {
+            get
+            {
+                string result = "disable";
+                foreach(var s in securityAlarmList)
+                {
+                    if(s.status == "enable")
+                    {
+                        result = "enable";
+                        break;
+                    }
+                }
+                return result;
+            }
+        }
+
+
+    }
+
+
     public class SecurityAlarm
     {
+        /// <summary>
+        /// 瀹夐槻浜戠id
+        /// </summary>
+        public string userSecurityId;
         /// <summary>
         /// 瀹夐槻sid
         /// </summary>
@@ -21,7 +127,7 @@
         /// <summary>
         /// 鐘舵�� enable甯冮槻銆乨isable鎾掗槻
         /// </summary>
-        public string status;
+        public string status = "disable";
         /// <summary>
         /// 绫诲瀷
         /// "all"--鍏ㄥ畢甯冮槻锛�
@@ -29,7 +135,7 @@
         /// "all_day":24灏忔椂,
         /// "mute"锛氶潤闊�
         /// </summary>
-        public string type;
+        public string type = "normal";
         /// <summary>
         /// 鏇存柊鏃堕棿
         /// </summary>
@@ -70,6 +176,93 @@
             var ssd = System.Text.Encoding.UTF8.GetBytes(Newtonsoft.Json.JsonConvert.SerializeObject(this));
             FileUtlis.Files.WriteFileByBytes(savePath, ssd);
         }
+
+        /// <summary>
+        /// 淇濆瓨瀹夐槻淇℃伅
+        /// </summary>
+        public string SaveInfo()
+        {
+            HttpServerRequest hsr = new HttpServerRequest();
+            if (string.IsNullOrEmpty(sid))
+            {
+                NewSid();
+                var pack = hsr.AddSecurity(new List<SecurityAlarm>() { this });
+                if (pack.Code == StateCode.SUCCESS)
+                {
+                    SaveFile();
+                }else
+                {
+                    sid = "";
+                }
+                return pack.Code;
+            }
+            else
+            {
+                var pack = hsr.EditSecurity(new List<SecurityAlarm>() { this });
+                if (pack.Code == StateCode.SUCCESS)
+                {
+                    SaveFile();
+                }
+                return pack.Code;
+            }
+        }
+
+
+        /// <summary>
+        /// 鐢熸垚sid鏂规硶
+        /// </summary>
+        public void NewSid()
+        {
+            try
+            {
+                string sOidBeginsWith = "000101";//鍘傚晢 + 閫氳鏂瑰紡
+                DateTime dt = DateTime.Now;
+                DateTime startTime = TimeZoneInfo.ConvertTimeToUtc(new DateTime(2020, 1, 1));
+                long m = (long)((dt - startTime).TotalMilliseconds / 10);
+                string sTimeSpan = "00000000";
+
+                byte[] arry = new byte[4];
+                arry[0] = (byte)(m & 0xFF);
+                arry[1] = (byte)((m & 0xFF00) >> 8);
+                arry[2] = (byte)((m & 0xFF0000) >> 16);
+                arry[3] = (byte)((m >> 24) & 0xFF);
+                sTimeSpan = arry[0].ToString("X2") + arry[1].ToString("X2") + arry[2].ToString("X2") + arry[3].ToString("X2");
+
+
+                if (sTimeSpan.Length >= 8)
+                {
+                    sTimeSpan = sTimeSpan.Substring(0, 8);
+                }
+                else
+                {
+                    sTimeSpan = Guid.NewGuid().ToString().Substring(0, 8);
+                    //sTimeSpan = "00000000";
+                }
+
+                sid = sOidBeginsWith + sTimeSpan;
+
+                sid += "16";
+                sid += "1601";
+                int maxId = 1;
+
+
+                for (int i = 0; i < SecurityCenter.Security.securityAlarmList.Count; i++)
+                {
+                    string s = SecurityCenter.Security.securityAlarmList[i].sid.Substring(20, 4);
+                    int iThisSceneId = Convert.ToInt16(s, 16);
+                    if (iThisSceneId > maxId)
+                        maxId = iThisSceneId;
+                }
+
+                sid += (maxId + 1).ToString("X4");
+                sid += "0000";
+            }
+            catch
+            {
+            }
+        }
+
+
     }
 
     /// <summary>
@@ -126,11 +319,10 @@
         public string bypass;
     }
 
-
     /// <summary>
     /// 瀹夐槻杈撳叆
     /// </summary>
-public class SecurityInput
+    public class SecurityInput
     {
         /// <summary>
         /// 杈撳叆鏉′欢锛堝姛鑳斤級鐨剆id
@@ -145,6 +337,154 @@
         /// 瀹夐槻杈撳叆鏉′欢
         /// </summary>
         public List<SecurityInputCondition> condition = new List<SecurityInputCondition>();
+
+        /// <summary>
+        /// 鍔犲叆杈撳叆鏉′欢
+        /// 鏈湴鍒ゆ柇浣跨敤
+        /// </summary>
+        [Newtonsoft.Json.JsonIgnore]
+        public bool addCondition = false;
+
+        [Newtonsoft.Json.JsonIgnore]
+        Function _function = null;
+        /// <summary>
+        /// 瀵瑰簲鐨勫姛鑳藉璞�
+        /// </summary>
+        /// <returns></returns>
+        public Function GetFunction()
+        {
+            if (_function == null)
+            {
+                _function = FunctionList.List.Functions.Find((obj) => obj.sid == sid);
+            }
+            return _function;
+        }
+
+        /// <summary>
+        /// 鑾峰彇鍗曚釜鐘舵�佺殑鏄剧ず鏂囨湰
+        /// </summary>
+        /// <param name="inputValue"></param>
+        /// <returns></returns>
+        public string GetStateText(string inputValue)
+        {
+            string text = "";
+
+            if (GetFunction() == null)
+                return text;
+            switch (GetFunction().spk)
+            {
+                case SPK.SensorGas:
+                case SPK.SensorSmoke:
+                    if (inputValue == "true")
+                    {
+                        text += Language.StringByID(StringId.InAlarm) + " ";
+                    }
+                    else if (inputValue == "false")
+                    {
+                        text += Language.StringByID(StringId.Normal) + " ";
+                    }
+                    break;
+                case SPK.SensorPir:
+                    if (inputValue == "true")
+                    {
+                        text += Language.StringByID(StringId.youren) + " ";
+                    }
+                    else if (inputValue == "false")
+                    {
+                        text += Language.StringByID(StringId.wuren) + " ";
+                    }
+                    break;
+                case SPK.SensorWater:
+                    if (inputValue == "true")
+                    {
+                        text += Language.StringByID(StringId.WaterLeakage) + " ";
+                    }
+                    else if (inputValue == "false")
+                    {
+                        text += Language.StringByID(StringId.Normal) + " ";
+                    }
+                    break;
+                case SPK.SensorDoorWindow:
+                    if (inputValue == "true")
+                    {
+                        text += Language.StringByID(StringId.Open) + " ";
+                    }
+                    else if (inputValue == "false")
+                    {
+                        text += Language.StringByID(StringId.Close) + " ";
+                    }
+                    break;
+            }
+
+            return text;
+        }
+
+        /// <summary>
+        /// 鐘舵�佹枃鏈�
+        /// </summary>
+        /// <returns></returns>
+        public string StateText ()
+        {
+            string text = "";
+            switch(GetFunction().spk)
+            {
+                case SPK.SensorGas:
+                case SPK.SensorSmoke:
+                    foreach (var con in condition)
+                    {
+                        if (con.value == "true")
+                        {
+                            text += Language.StringByID(StringId.InAlarm) + " ";
+                        }
+                        else if (con.value == "false")
+                        {
+                            text += Language.StringByID(StringId.Normal) + " ";
+                        }
+                    }
+                    break;
+                case SPK.SensorPir:
+                    foreach (var con in condition)
+                    {
+                        if (con.value == "true")
+                        {
+                            text += Language.StringByID(StringId.youren) + " ";
+                        }
+                        else if (con.value == "false")
+                        {
+                            text += Language.StringByID(StringId.wuren) + " ";
+                        }
+                    }
+                    break;
+                case SPK.SensorWater:
+                    foreach (var con in condition)
+                    {
+                        if (con.value == "true")
+                        {
+                            text += Language.StringByID(StringId.WaterLeakage) + " ";
+                        }
+                        else if (con.value == "false")
+                        {
+                            text += Language.StringByID(StringId.Normal) + " ";
+                        }
+                    }
+                    break;
+                case SPK.SensorDoorWindow:
+                    foreach (var con in condition)
+                    {
+                        if (con.value == "true")
+                        {
+                            text += Language.StringByID(StringId.Open) + " ";
+                        }
+                        else if (con.value == "false")
+                        {
+                            text += Language.StringByID(StringId.Close) + " ";
+                        }
+                    }
+                    break;
+            }
+
+            return text;
+        }
         
     }
     /// <summary>
@@ -179,9 +519,11 @@
     {
         /// <summary>
         /// 鎺у埗鐩爣绫诲瀷
-        /// 璁惧锛�0锛屽満鏅�1锛岃嚜鍔ㄥ寲2
+        /// 0:璁惧
+        /// 1:鍦烘櫙
+        /// 2:鑷姩鍖�
         /// </summary>
-        public string target_type;
+        public string target_type ="0";
         /// <summary>
         /// 杈撳嚭鐩爣鐨剆id
         /// </summary>
@@ -190,6 +532,69 @@
         /// 瀹夐槻杈撳嚭鐘舵��
         /// </summary>
         public List<SecurityOutputStatus> status = new List<SecurityOutputStatus>();
+
+        /// <summary>
+        /// 鍔犲叆杈撳叆鏉′欢
+        /// 鏈湴鍒ゆ柇浣跨敤
+        /// </summary>
+        [Newtonsoft.Json.JsonIgnore]
+        public bool addCondition = false;
+
+        [Newtonsoft.Json.JsonIgnore]
+        Function _function = null;
+        /// <summary>
+        /// 瀵瑰簲鐨勫姛鑳藉璞�
+        /// </summary>
+        /// <returns></returns>
+        public Function GetFunction()
+        {
+            if (_function == null)
+            {
+                _function = FunctionList.List.Functions.Find((obj) => obj.sid == sid);
+            }
+            return _function;
+        }
+
+
+        /// <summary>
+        /// 鐘舵�佹枃鏈�
+        /// </summary>
+        /// <returns></returns>
+        public string StateText()
+        {
+            string text = "";
+            if (target_type == "0")
+            {
+                switch (GetFunction().spk)
+                {
+                    case SPK.LightDimming:
+                    case SPK.LightCCT:
+                    case SPK.LightRGB:
+                    case SPK.LightSwitch:
+                        foreach (var state in status)
+                        {
+                            if (state.key == FunctionAttributeKey.Brightness)
+                            {
+                                if (state.value == "0")
+                                {
+                                    text = Language.StringByID(StringId.Close);
+                                }
+                                else
+                                {
+                                    text = Language.StringByID(StringId.Open);
+                                }
+                            }
+                        }
+                        break;
+                }
+            }else if(target_type == "1")
+            {
+
+            }
+
+            return text;
+        }
+
     }
     /// <summary>
     /// 瀹夐槻杈撳嚭鐘舵��
diff --git a/HDL_ON/Entity/FunctionList.cs b/HDL_ON/Entity/FunctionList.cs
index 0d84b83..4a04b6f 100644
--- a/HDL_ON/Entity/FunctionList.cs
+++ b/HDL_ON/Entity/FunctionList.cs
@@ -172,7 +172,14 @@
         /// <summary>
         /// 瀹夐槻鍒楄〃
         /// </summary>
-        public List<SecurityAlarm> securities = new List<SecurityAlarm>();
+        public List<SecurityAlarm> securities
+        {
+            get
+            {
+                return SecurityCenter.Security.securityAlarmList;
+            }
+        }
+
 
         /// <summary>
         /// 鍔犺浇鍔熻兘鍒楄〃
diff --git a/HDL_ON/HDL_ON.projitems b/HDL_ON/HDL_ON.projitems
index 357af0a..163b1fa 100644
--- a/HDL_ON/HDL_ON.projitems
+++ b/HDL_ON/HDL_ON.projitems
@@ -465,6 +465,17 @@
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\View\FrameLayout50.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\View\SaveView.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\View\Buttons.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\AddDevice\SenesorEnvironment\SensorEnvironmentManagerPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\AddDevice\SenesorEnvironment\AddSensorEnvironmentPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\1ContorlPage\AirFreshRelayControlPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\ArmSensor\SensorGasPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\AddDevice\SenesorEnvironment\AddQingpingSensorEnvirTipPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Light\LightScene\AddLightScene.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\FaceManagement\FacePassagePage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\ArmCenter\AddAlarmDeploymentPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\ArmCenter\AddInputPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\ArmCenter\AddOutputPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\ArmCenter\AddOutputSettingPage.cs" />
   </ItemGroup>
   <ItemGroup>
     <Folder Include="$(MSBuildThisFileDirectory)Entity\Device\" />
@@ -488,5 +499,8 @@
     <Folder Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\SmartSpeaker\" />
     <Folder Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\AddDevice\SenesorMegahealth\" />
     <Folder Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\AddDevice\MiniRemoteControl\" />
+    <Folder Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\AddDevice\SenesorEnvironment\" />
+    <Folder Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Light\LightScene\" />
+    <Folder Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\FaceManagement\" />
   </ItemGroup>
 </Project>
\ No newline at end of file
diff --git a/HDL_ON/UI/MainPage.cs b/HDL_ON/UI/MainPage.cs
index 0a502ab..1a51f05 100644
--- a/HDL_ON/UI/MainPage.cs
+++ b/HDL_ON/UI/MainPage.cs
@@ -25,7 +25,7 @@
         /// <summary>
         /// 鐗堟湰鍙�
         /// </summary>
-        public static string VersionString = "1.2.0708";
+        public static string VersionString = "1.2.0820";
         ///// <summary>
         ///// 瀹㈡埛绔被鍨�
         ///// </summary>
@@ -115,6 +115,7 @@
         public static List<string> RoomNotSupportFunctionList = new List<string>
         {
             SPK.EnergyStandard,
+            SPK.MusicStandard,
         };
 
 
@@ -400,7 +401,16 @@
                     {
                         if (view != null)
                         {
-                            if(view.Tag.ToString() != "unlockpage")
+                            if(view.Tag!=null )
+                            {
+                                if (view.Tag.ToString() != "unlockpage")
+                                {
+                                    view.RemoveFromParent();
+                                }else
+                                {
+                                    result = 2;
+                                }
+                            }else
                             {
                                 view.RemoveFromParent();
                             }
diff --git a/HDL_ON/UI/UI0-Public/PublicAssmeblyBLL.cs b/HDL_ON/UI/UI0-Public/PublicAssmeblyBLL.cs
index 0f50349..c0df69b 100644
--- a/HDL_ON/UI/UI0-Public/PublicAssmeblyBLL.cs
+++ b/HDL_ON/UI/UI0-Public/PublicAssmeblyBLL.cs
@@ -148,6 +148,11 @@
                         smPage.ShowColltionButton = false;
                         smPage.AddForm(function, btnCollectionIcon, btnName, btnFromFloor);
                         break;
+                    case SPK.SensorGas:
+                        var gasPage = new SensorGasPage();
+                        gasPage.ShowColltionButton = false;
+                        gasPage.AddForm(function, btnCollectionIcon, btnName, btnFromFloor);
+                        break;
                     case SPK.ClothesHanger:
                         var clothesHangerpage = new ClothesHangerPage();
                         clothesHangerpage.AddForm(function, btnCollectionIcon, btnName, btnFromFloor);
@@ -169,6 +174,10 @@
                         var airFresh1 = new AirFreshControlPage();
                         airFresh1.AddForm(function, btnCollectionIcon, btnName, btnFromFloor);
                         break;
+                    case SPK.AirFreshStandard:
+                        var airFresh2 = new AirFreshRelayControlPage();
+                        airFresh2.AddForm(function, btnCollectionIcon, btnName, btnFromFloor);
+                        break;
                 }
             };
             return eventHandler;
diff --git a/HDL_ON/UI/UI1-Login/LoginPage.cs b/HDL_ON/UI/UI1-Login/LoginPage.cs
index 58ce5a1..d3350be 100644
--- a/HDL_ON/UI/UI1-Login/LoginPage.cs
+++ b/HDL_ON/UI/UI1-Login/LoginPage.cs
@@ -205,12 +205,12 @@
                 {
                     //etAccount.Text = "tf@smarttech.com.ua";//鍥藉璐﹀彿锛屾湁浣忓畢锛岀櫥褰曟棤娉曟樉绀�
                     //etAccount.Text = "13375012446";//娴嬭瘯鏈嶅姟鍣�
-                    etAccount.Text = "13450425803";
+                    //etAccount.Text = "13450425803";
                     //etAccount.Text = "1033326940@qq.com";
                     //etAccount.Text = "18022428438";//wjc
                     //etAccount.Text = "13602944661";//kx
                     //etAccount.Text = "13226233133";//璞嗚眴
-                    //etAccount.Text = "18316672920";//lcg "18316672920";//hzx;// "13415629083"//cf;;
+                    //etAccount.Text = "18316672920";//lcg "18316672920";//hzx;// ""//cf;;
                     //etAccount.Text = "18316120654";//tujie
                     // "15622703419"lwn;// "18824864143";//"464027401@qq.com"; //"2791308028@qq.com";//13697499568 
                     etAccount.Text = "15626203746";
@@ -222,23 +222,24 @@
                     //etAccount.Text = "464027401@qq.com";//
                     //etAccount.Text = "15217626103";//
                     //etAccount.Text = "13682244600";//娉㈠摜
-                    //etAccount.Text = "13168123446";//鏄嗘槑閲戣寕椤圭洰锛屾柊椋庨棶棰�
-                    etAccount.Text = "551775569@qq.com";
-                    etAccount.Text = "2949126848@qq.com";//闄堢惓cct娴嬭瘯
-                    //etAccount.Text = "13168123446";
+                    etAccount.Text = "13168123446";//鏄嗘槑閲戣寕椤圭洰锛屾柊椋庨棶棰�
+                    //etAccount.Text = "2949126848@qq.com";//闄堢惓
+                    //etAccount.Text = "13415629083";
                     //etAccount.Text = "13676202754";//宸存灄鏈嶅姟鍣�
                     //etAccount.Text = "13602944661";//kx
                     //etAccount.Text = "551775569@qq.com";//wcf
                     //etAccount.Text = "18666455392";//13375012446//13602944661//tzy 18778381374
-                    //etAccount.Text = "15971583093";// gs//tzy 274116637@qq.com//Sumant.Bhatia@havells.com 鍥藉鏈嶅姟鍣ㄦ祴璇�
-                    etAccount.Text = "15971583093";//楂樿儨 璋冨厜0 100 鍙嶅妯烦
+                    //etAccount.Text = "15971583093";//楂樿儨
+                    etAccount.Text = "15217626103";//鏄嗘槑閲戣寕椤圭洰
+                    //etAccount.Text = "18598273624";
                 }
                 b = !b;
                 etPassword.Text = "123456";
                 if(etAccount.Text == "15626203746")
                 {
-                    etPassword.Text = "12345678";
+                    etPassword.Text = "123456";
                 }
+                //etPassword.Text = "Hdl85521566";
                 btnLogin.IsSelected = true;
             };
 #endif
@@ -522,13 +523,19 @@
                 Text = "Demo妯″紡"
             };
             bodyView.AddChidren(btnDomeLogin);
+
+            if(Language.CurrentLanguage!= "Chinese")
+            {
+                btnDomeLogin.Text = "Experience model";
+            }
+
             btnDomeLogin.MouseUpEventHandler = (sender, e) => {
 
                 MainPage.NoLoginMode = true;
 #if DEBUG
                 FileUtlis.Files.DeleteAllFile();
 #endif
-
+                //DB_ResidenceData.Instance.HomeGateway.gatewayType = "AGATEWAY";
                 //妤煎眰鎴块棿鍒楄〃
                 var floor1 = new SpatialInfo("FLOOR") { roomName = "F1", parentId = DB_ResidenceData.Instance.CurrentRegion.id };
                 floor1.SaveRoomFile();
@@ -671,12 +678,12 @@
                     sid = "light4",
                     deviceId = "light4",
                     name = Language.CurrentLanguage == "Chinese" ? "澶х伅" : "light 1",
-                    spk = SPK.LightSwitch,
+                    spk = SPK.LightDimming,
                     roomIds = new List<string>() { "1405771024583090178" },
                     attributes = new List<FunctionAttributes>()
                     {
                         new FunctionAttributes() { key = "on_off",value =new List<string>(){ "on","off" }, curValue="on",state = "on"   },
-                        new FunctionAttributes() { key = "brightness",value =new List<string>(){ "0","100" }, curValue="0",state = "0"   },
+                        new FunctionAttributes() { key = "brightness",value =new List<string>(){ "0","100" }, curValue="100",state = "100"   },
                         new FunctionAttributes() { key = "fade_time",value =new List<string>(){ "0","100" }, curValue="0",state = "0"   },
                     },
                 };
@@ -691,7 +698,6 @@
                     attributes = new List<FunctionAttributes>()
                     {
                         new FunctionAttributes() { key = "on_off",value =new List<string>(){ "on","off" }, curValue="on",state = "on"   },
-                        new FunctionAttributes() { key = "brightness",value =new List<string>(){ "0","100" }, curValue="0",state = "0"   },
                         new FunctionAttributes() { key = "fade_time",value =new List<string>(){ "0","100" }, curValue="0",state = "0"   },
                     },
                 };
@@ -735,7 +741,7 @@
                     {
                         new FunctionAttributes() { key = "on_off",value =new List<string>(){ "on","off" }, curValue="on",state = "on"   },
                         new FunctionAttributes() { key = "mode",value =new List<string>(){ "day", "night", "away", "normal", "timer" }, curValue="day",state = "day"   },
-                        new FunctionAttributes() { key = "set_temp",value =new List<string>(){ "" }, curValue="26",state = "26"   },
+                        new FunctionAttributes() { key = "set_temp",value =new List<string>(){ "" }, curValue="26",state = "26" ,max = 35,min = 5  },
                         new FunctionAttributes() { key = "room_temp",value =new List<string>(){ "" }, curValue="26",state = "26"   },
                     },
                 };
@@ -901,12 +907,12 @@
                     sid = "light6",
                     deviceId = "light6",
                     name = Language.CurrentLanguage == "Chinese" ? "椁愬巺鐏�1" : "Dining room light 1",
-                    spk = SPK.LightSwitch,
+                    spk = SPK.LightDimming,
                     roomIds = new List<string>() { room3.roomId },
                     attributes = new List<FunctionAttributes>()
                     {
                         new FunctionAttributes() { key = "on_off",value =new List<string>(){ "on","off" }, curValue="on",state = "on"   },
-                        new FunctionAttributes() { key = "brightness",value =new List<string>(){ "0","100" }, curValue="0",state = "0"   },
+                        new FunctionAttributes() { key = "brightness",value =new List<string>(){ "0","100" }, curValue="100",state = "100"   },
                         new FunctionAttributes() { key = "fade_time",value =new List<string>(){ "0","100" }, curValue="0",state = "0"   },
                     },
                 };
@@ -921,7 +927,6 @@
                     attributes = new List<FunctionAttributes>()
                     {
                         new FunctionAttributes() { key = "on_off",value =new List<string>(){ "on","off" }, curValue="on",state = "on"   },
-                        new FunctionAttributes() { key = "brightness",value =new List<string>(){ "0","100" }, curValue="0",state = "0"   },
                         new FunctionAttributes() { key = "fade_time",value =new List<string>(){ "0","100" }, curValue="0",state = "0"   },
                     },
                 };
@@ -1053,7 +1058,6 @@
                     attributes = new List<FunctionAttributes>()
                     {
                         new FunctionAttributes() { key = "on_off",value =new List<string>(){ "on","off" }, curValue="on",state = "on"   },
-                        new FunctionAttributes() { key = "brightness",value =new List<string>(){ "0","100" }, curValue="0",state = "0"   },
                         new FunctionAttributes() { key = "fade_time",value =new List<string>(){ "0","100" }, curValue="0",state = "0"   },
                     },
                 };
@@ -1062,15 +1066,11 @@
                 #endregion
 
                 var fileList = Common.FileUtlis.Files.ReadFiles();
-
+                foreach(var file in fileList)
+                {
+                    FunctionList.List.IniFunctionList(file,true);
+                }
                 Room.CurrentSpatial.InitRoomListFunctions();
-
-
-
-
-
-
-
 
 
 
@@ -1138,7 +1138,7 @@
             frameRow.AddChidren(agreeView);
             if(Language.CurrentLanguage == "Chinese")
             {
-                agreeView.X = Application.GetRealWidth(82);
+                agreeView.X = Application.GetRealWidth(52);
             }
             //鍚屾剰鍥炬爣鎸夐挳
             var agreeBtn = new Button()
diff --git a/HDL_ON/UI/UI2/1-HomePage/HomePage.cs b/HDL_ON/UI/UI2/1-HomePage/HomePage.cs
index f057023..dc250ad 100644
--- a/HDL_ON/UI/UI2/1-HomePage/HomePage.cs
+++ b/HDL_ON/UI/UI2/1-HomePage/HomePage.cs
@@ -27,6 +27,12 @@
         /// </summary>
         Button btnLinkStateTip;
         /// <summary>
+        /// 瀹夐槻鐘舵�佸浘鏍�
+        /// </summary>
+        Button btnSecurityStatus;
+
+
+        /// <summary>
         ///浣忓畢鍚嶇О鏄剧ず
         /// </summary>
         Button btnResidenceName;
@@ -194,6 +200,34 @@
                 #region 鐜鏁版嵁
                 var tempSensorList = FunctionList.List.GetEnvirSensorsList().FindAll((obj) => obj.spk == SPK.SensorTemperature);
                 var humiSensorList = FunctionList.List.GetEnvirSensorsList().FindAll((obj) => obj.spk == SPK.SensorHumidity);
+                var enviList = FunctionList.List.GetEnvirSensorsList().FindAll((obj) => SPK.EvironmentSensorList().Contains(obj.spk));
+                foreach (var enviTemp in enviList)
+                {
+                    var humiAttr = enviTemp.attributes.Find((obj) => obj.key == "humidity");
+                    if (humiAttr != null)
+                    {
+                        var newTemp = new Function()
+                        {
+                            name = enviTemp.name,
+                            sid = enviTemp.sid,
+                            deviceId = enviTemp.deviceId,
+                            attributes = new List<FunctionAttributes> { new FunctionAttributes { key = "value", state = humiAttr.state, curValue = humiAttr.curValue } },
+                        };
+                        humiSensorList.Add(newTemp);
+                    }
+                    var tempAttr = enviTemp.attributes.Find((obj) => obj.key == "temperature");
+                    if (tempAttr != null)
+                    {
+                        var newTemp = new Function()
+                        {
+                            name = enviTemp.name,
+                            sid = enviTemp.sid,
+                            deviceId = enviTemp.deviceId,
+                            attributes = new List<FunctionAttributes> { new FunctionAttributes { key = "value", state = tempAttr.state, curValue = tempAttr.curValue } },
+                        };
+                        tempSensorList.Add(newTemp);
+                    }
+                }
 
                 var btnEnvirValuesTitle = new Button() {
                     X = Application.GetRealWidth(12),
@@ -245,15 +279,20 @@
                 {
                     btnIndoorTempValues.Text = "/--掳";
                     double tempTotalValues = 0;
+                    double tempTotalCount = 0;
                     foreach (var temp in tempSensorList)
                     {
                         double tempValue = 0;
                         double.TryParse(temp.GetAttrState(FunctionAttributeKey.Value), out tempValue);
-                        tempTotalValues += tempValue;
+                        if (tempValue > 0)
+                        {
+                            tempTotalValues += tempValue;
+                            tempTotalCount++;
+                        }
                     }
                     if (tempTotalValues > 0)
                     {
-                        btnIndoorTempValues.Text = "/" + tempTotalValues + "掳";
+                        btnIndoorTempValues.Text = "/" + (tempTotalValues/ tempTotalCount).ToString("0.0") + "掳";
                     }
                 }
                 btnIndoorTempValues.Width = btnIndoorTempValues.GetTextWidth();
@@ -294,15 +333,20 @@
                 {
                     btnIndoorHumiValues.Text = "/--%";
                     double humiTotalValues = 0;
+                    double humiTotalCount = 0;
                     foreach (var humi in humiSensorList)
                     {
                         double humiValue = 0;
                         double.TryParse(humi.GetAttrState(FunctionAttributeKey.Value), out humiValue);
-                        humiTotalValues += humiValue;
+                        if (humiValue > 0)
+                        {
+                            humiTotalValues += humiValue;
+                            humiTotalCount++;
+                        }
                     }
                     if (humiTotalValues > 0)
                     {
-                        btnIndoorHumiValues.Text = "/" + humiTotalValues + "%";
+                        btnIndoorHumiValues.Text = "/" + (humiTotalValues / humiTotalCount).ToString("0") + "%";
                     }
                 }
                 btnIndoorHumiValues.Width = btnIndoorHumiValues.GetTextWidth();
@@ -330,6 +374,28 @@
                 btnPm25Values.Width = btnPm25Values.GetTextWidth();
                 environmentalView.AddChidren(btnPm25Values);
                 #endregion
+
+                btnSecurityStatus = new Button()
+                {
+                    X = Application.GetRealWidth(329),
+                    Y = Application.GetRealHeight(34),
+                    Width = Application.GetRealWidth(30),
+                    Height = Application.GetRealWidth(30),
+                    SelectedImagePath = "Collection/DefenseStatusIcon.png",
+                    UnSelectedImagePath = "Collection/DisarmStatusIcon.png"
+                };
+                if (DB_ResidenceData.Instance.GatewayType == 1)
+                {
+                    topView.AddChidren(btnSecurityStatus);
+                    btnSecurityStatus.IsSelected = SecurityCenter.Security.CurrentDefenseMode != null;
+                    btnSecurityStatus.MouseUpEventHandler = (sender, e) => {
+                        var page = new ArmCenterPage();
+                        MainPage.BasePageView.AddChidren(page);
+                        page.LoadPage();
+                        MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+                    };
+                }
+
 
                 #region msg
                 FrameLayout msgView;
@@ -463,6 +529,28 @@
 
 
 #if DEBUG
+            //FunctionList.List.Functions.Add(new Function()
+            //{
+            //    spk = SPK.AirFreshStandard,
+            //    name = "娴嬭瘯鏂伴",
+            //    attributes = new List<FunctionAttributes>()
+            //    {
+            //        new FunctionAttributes(){ key = "on_off",curValue= "on",state = "on" },
+            //        new FunctionAttributes(){ key = "fan",curValue= "on",state = "on" ,value = new List<string>(){ "high","low" } },
+            //    },
+            //});
+
+            FunctionList.List.Functions.Add(new Function()
+            {
+                spk = SPK.SensorGas,
+                name = "鐕冩皵浼犳劅鍣�",
+                attributes = new List<FunctionAttributes>()
+                {
+                    new FunctionAttributes(){ key = "enable",curValue= "true",state = "true" ,value = new List<string>(){ "true", "false" } },
+                    new FunctionAttributes(){ key = "status",curValue= "normal",state = "normal" ,value = new List<string>(){ "alarm", "normal" } },
+                },
+            });
+
             //FunctionList.List.Functions.Add(new Function() { spk = SPK.PjtIr, name = "娴嬭瘯鎶曞奖浠�",
             //                            attributes = new List<FunctionAttributes>() {
             //                                new FunctionAttributes(){ key = "on_off",curValue= "on",state = "on" },
diff --git a/HDL_ON/UI/UI2/1-HomePage/HomePageBLL.cs b/HDL_ON/UI/UI2/1-HomePage/HomePageBLL.cs
index f704df6..7cd1ce4 100644
--- a/HDL_ON/UI/UI2/1-HomePage/HomePageBLL.cs
+++ b/HDL_ON/UI/UI2/1-HomePage/HomePageBLL.cs
@@ -14,12 +14,29 @@
         /// </summary>
         public static void LoadEvent_RefreshAir()
         {
-            if (bodyView != null)
+            Application.RunOnMainThread(() =>
             {
-                bodyView.btnTempValues.Text = MainPage.cityInfo.temperature == null ? "--" : MainPage.cityInfo.temperature + "掳";
-                bodyView.btnHumidityValues.Text = MainPage.cityInfo.humidity == null ? "--" : MainPage.cityInfo.humidity + "%";
-                bodyView.btnPm25Values.Text = MainPage.cityInfo.pm25 == null ? "--" : MainPage.cityInfo.pm25;
-            }
+                if (bodyView != null)
+                {
+                    bodyView.btnTempValues.Text = MainPage.cityInfo.temperature == null ? "--" : MainPage.cityInfo.temperature + "掳";
+                    bodyView.btnHumidityValues.Text = MainPage.cityInfo.humidity == null ? "--" : MainPage.cityInfo.humidity + "%";
+                    bodyView.btnPm25Values.Text = MainPage.cityInfo.pm25 == null ? "--" : MainPage.cityInfo.pm25;
+                }
+            });
+        }
+
+        /// <summary>
+        /// 鏇存柊瀹夐槻鐘舵��
+        /// </summary>
+        public static void LoadEvent_RefreshSecurityStatus()
+        {
+            Application.RunOnMainThread(() =>
+            {
+                if (bodyView != null)
+                {
+                    bodyView.btnSecurityStatus.IsSelected = SecurityCenter.Security.CurrentDefenseMode != null;
+                }
+            });
         }
 
         /// <summary>
@@ -32,7 +49,7 @@
                 if (bodyView != null)
                 {
                     var humiSensorList = FunctionList.List.GetEnvirSensorsList().FindAll((obj) => obj.spk == SPK.SensorHumidity);
-                    var enviSensorList = FunctionList.List.GetEnvirSensorsList().FindAll((obj) => obj.spk == SPK.SensorEnvironment);
+                    var enviSensorList = FunctionList.List.GetEnvirSensorsList().FindAll((obj) => SPK.EvironmentSensorList().Contains(obj.spk ));
                     foreach (var enviTemp in enviSensorList)
                     {
                         var tempAttr = enviTemp.attributes.Find((obj) => obj.key == "humidity");
@@ -49,15 +66,20 @@
                         }
                     }
                     double humiTotalValues = 0;
+                    int humiTotalCount = 0;
                     foreach (var temp in humiSensorList)
                     {
                         double humiValue = 0;
                         double.TryParse(temp.GetAttrState(FunctionAttributeKey.Value), out humiValue);
-                        humiTotalValues += humiValue;
+                        if(humiValue > 0)
+                        {
+                            humiTotalValues += humiValue;
+                            humiTotalCount++;
+                        }
                     }
                     if (humiTotalValues > 0)
                     {
-                        bodyView.btnIndoorHumiValues.Text = "/" + humiTotalValues + "%";
+                        bodyView.btnIndoorHumiValues.Text = "/" + (humiTotalValues /humiTotalCount).ToString("0")+ "%";
                     }
                     bodyView.btnIndoorHumiValues.Width = bodyView.btnIndoorHumiValues.GetTextWidth();
                 }
@@ -65,7 +87,7 @@
         }
 
         /// <summary>
-        /// 鏇存柊瀹ゅ唴浼犳劅鍣ㄦ暟鎹�-鏅氱偣
+        /// 鏇存柊瀹ゅ唴浼犳劅鍣ㄦ暟鎹�
         /// </summary>
         public static void LoadEvent_RefreshEnvirIndoorTemp()
         { 
@@ -74,7 +96,7 @@
                 if (bodyView != null)
                 {
                     var tempSensorList = FunctionList.List.GetEnvirSensorsList().FindAll((obj) => obj.spk == SPK.SensorTemperature);
-                    var enviSensorList = FunctionList.List.GetEnvirSensorsList().FindAll((obj) => obj.spk == SPK.SensorEnvironment);
+                    var enviSensorList = FunctionList.List.GetEnvirSensorsList().FindAll((obj) => SPK.EvironmentSensorList().Contains(obj.spk));
                     foreach (var enviTemp in enviSensorList)
                     {
                         var tempAttr = enviTemp.attributes.Find((obj) => obj.key == "temperature");
@@ -91,15 +113,20 @@
                         }
                     }
                     double tempTotalValues = 0;
+                    int tempTotalCount = 0;
                     foreach (var temp in tempSensorList)
                     {
                         double tempValue = 0;
                         double.TryParse(temp.GetAttrState(FunctionAttributeKey.Value), out tempValue);
-                        tempTotalValues += tempValue;
+                        if (tempValue > 0)
+                        {
+                            tempTotalValues += tempValue;
+                            tempTotalCount++;
+                        }
                     }
                     if (tempTotalValues > 0)
                     {
-                        bodyView.btnIndoorTempValues.Text = "/" + tempTotalValues + "掳";
+                        bodyView.btnIndoorTempValues.Text = "/" + (tempTotalValues /tempTotalCount).ToString("0.0")+ "掳";
                     }
                     bodyView.btnIndoorTempValues.Width = bodyView.btnIndoorTempValues.GetTextWidth();
                 }
diff --git a/HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs b/HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs
index 606a378..890573b 100644
--- a/HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs
+++ b/HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs
@@ -269,7 +269,7 @@
                                 }
                             });
                             runCount++;
-                            System.Threading.Thread.Sleep(8);
+                            System.Threading.Thread.Sleep(12);
                         }
                         Application.RunOnMainThread(() =>
                         {
@@ -307,6 +307,7 @@
                             Height = Application.GetRealWidth(192 + 20),//2020-12-01 鎴块棿鍥剧墖姣斾緥鏀瑰洖16:9
                             Radius = (uint)Application.GetRealWidth(12),
                             Tag = room.roomId,
+                            BackgroundColor = CSS_Color.MainBackgroundColor,
                         };
                         roomListView.AddChidren(roomView);
 
@@ -323,7 +324,7 @@
                             Height = Application.GetRealWidth(70 + 20),
                             Radius = (uint)Application.GetRealWidth(12),
                             Tag = room.roomId,
-                            BackgroundColor = CSS_Color.BackgroundColor,
+                            BackgroundColor = CSS_Color.MainBackgroundColor,
                         };
                         roomListView.AddChidren(roomView);
                         LoadSmallPirtureRoomRow(roomView, room);
@@ -509,9 +510,10 @@
             roomView.RemoveAll();
             roomFloorChangeView.BackgroundColor = roomListView.BackgroundColor = CSS_Color.BackgroundColor;
             roomView.BackgroundColor = CSS_Color.BackgroundColor;
+            //roomView.BackgroundColor = CSS_Color.MainBackgroundColor;
 
 
-            var viewbg = new ImageView()
+            var viewbg = new Button()
             {
                 Width = Application.GetRealWidth(343),
                 Height = Application.GetRealWidth(70),
@@ -556,10 +558,10 @@
 
             var btnAllClose = new Button()
             {
-                X = Application.GetRealWidth(288),
-                Y = Application.GetRealWidth(10),
-                Width = Application.GetMinRealAverage(58),
-                Height = Application.GetMinRealAverage(58),
+                X = Application.GetRealWidth(278),
+                Y = Application.GetRealWidth(15),
+                Width = Application.GetMinRealAverage(50),
+                Height = Application.GetMinRealAverage(50),
                 UnSelectedImagePath = "Classification/Room/AllCloseIcon2.png",
                 Tag = "AllClose",
                 Visible = false
@@ -699,13 +701,10 @@
                         functionOnCount = FunctionList.List.GetAirFreshList().FindAll((obj) => obj.trait_on_off.curValue.ToString() == "on").Count;
                         break;
                     case ShowFunction.Music:
-                        //functionCount = Music.A31MusicModel.A31MusicModelList.Count;
-                        //functionOnCount = Music.A31MusicModel.A31MusicModelList.FindAll((obj) => obj.trait_on_off.curValue.ToString() == "on").Count;
-                        //if(functionCount == 0)
-                        //{
-                        //    functionCount = FunctionList.List.GetMusicList().Count;
-                        //}
+                        functionCount = FunctionList.List.GetMusicList().Count;
+#if DEBUG
                         functionCount = 1;
+#endif
                         break;
                     case ShowFunction.Panel:
                         break;
@@ -726,9 +725,10 @@
                         break;
                     case ShowFunction.SecurityCenter:
                         functionCount = FunctionList.List.securities.Count;
-#if DEBUG
-                        functionCount = 1;
-#endif
+                        if (DB_ResidenceData.Instance.GatewayType == 1)
+                        {
+                            functionCount = 1;
+                        }
                         break;
 
                 }
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/AddLogic.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/AddLogic.cs
index 13d98be..1b9285f 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/AddLogic.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/AddLogic.cs
@@ -238,6 +238,10 @@
                     new LogicView.TipPopView().TipBox(StringId.tip, StringId.targetNull);
                     return;
                 }
+
+                
+
+
                 Loading loading = new Loading();
                 this.AddChidren(loading);
                 HDL_ON.DAL.Server.ResponsePackNew responsePackNew = null;
@@ -256,11 +260,13 @@
                         loading.Start();
                         new System.Threading.Thread(() =>
                         {
-
                             try
                             {
-                                //鍙戦�佹柊鍔犻�昏緫鍛戒护锛�
-                                responsePackNew = Send.AddLogic(Logic.currlogic);
+                                if (!MainPage.NoLoginMode)
+                                {
+                                    //鍙戦�佹柊鍔犻�昏緫鍛戒护锛�
+                                    responsePackNew = Send.AddLogic(Logic.currlogic);
+                                }
 
                             }
                             catch { }
@@ -269,10 +275,16 @@
                                 Application.RunOnMainThread(() =>
                                 {
                                     loading.Hide();
+                                    if(MainPage.NoLoginMode)
+                                    {
+                                        Logic.LogicList.Add(Logic.currlogic);
+                                        LogicMethod.CurrLogicMethod.RemoveAllView();
+                                        MainView.MainShow();
+                                        return;
+                                    }
+
                                     if (responsePackNew != null && responsePackNew.Code == "0" && responsePackNew.Data.ToString() != "")
                                     {
-
-
                                         //鑾峰彇閫昏緫璇︾粏杩斿洖鏄竴涓暟缁�(object绫诲瀷杞崲涓烘暟缁�);
                                         var jArray = Newtonsoft.Json.Linq.JArray.Parse(responsePackNew.Data.ToString());
                                         for (int a = 0; a < jArray.Count; a++)
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs
index 9423a49..168b3fc 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs
@@ -104,7 +104,6 @@
                         {
                             GetEditState(device, index, view.btnState, null, null, null);
                         }
-
                     }
                     break;
                 //骞叉帴鐐�
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Scene/SceneEditPage.cs b/HDL_ON/UI/UI2/3-Intelligence/Scene/SceneEditPage.cs
index cfab368..67f47d5 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Scene/SceneEditPage.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Scene/SceneEditPage.cs
@@ -373,8 +373,10 @@
                 BackgroundColor = CSS_Color.MainBackgroundColor,
                 //IsBold = true
             };
-            bodyView.AddChidren(btnComplete);
-
+            if (scene.can_delete)
+            {
+                bodyView.AddChidren(btnComplete);
+            }
             LoadEventList();
 
             var waitPage = new Loading();
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Scene/SceneFunctionListChoosePage.cs b/HDL_ON/UI/UI2/3-Intelligence/Scene/SceneFunctionListChoosePage.cs
index 9401786..05c2a9c 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Scene/SceneFunctionListChoosePage.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Scene/SceneFunctionListChoosePage.cs
@@ -157,7 +157,6 @@
         /// <summary>
         /// 鏄剧ず鍔熻兘Row
         /// </summary>
-        /// <param name="showUnallocated">鏄惁鏄樉绀烘湭鍒嗛厤</param>
         void LoadFunctionListRow(List<Function> functions)
         {
             functionListView.RemoveAll();
diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/AboutOn/AboutOnPage.cs b/HDL_ON/UI/UI2/4-PersonalCenter/AboutOn/AboutOnPage.cs
index 0b26a18..fa1831f 100644
--- a/HDL_ON/UI/UI2/4-PersonalCenter/AboutOn/AboutOnPage.cs
+++ b/HDL_ON/UI/UI2/4-PersonalCenter/AboutOn/AboutOnPage.cs
@@ -72,15 +72,15 @@
             bodyView.AddChidren(btnOnTitle);
 
 #if DEBUG
-            btnOnIcon.MouseUpEventHandler += (sender, e) =>
-            {
-                ESOnVideo.Current.Test();
-            };
+            //btnOnIcon.MouseUpEventHandler += (sender, e) =>
+            //{
+            //    ESOnVideo.Current.Test();
+            //};
 
-            btnOnTitle.MouseUpEventHandler += (sender, e) =>
-            {
-                ESOnVideo.Current.Test(false);
-            };
+            //btnOnTitle.MouseUpEventHandler += (sender, e) =>
+            //{
+            //    ESOnVideo.Current.Test(false);
+            //};
 
 #endif
 
diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/SenesorEnvironment/AddQingpingSensorEnvirTipPage.cs b/HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/SenesorEnvironment/AddQingpingSensorEnvirTipPage.cs
new file mode 100644
index 0000000..9d62c19
--- /dev/null
+++ b/HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/SenesorEnvironment/AddQingpingSensorEnvirTipPage.cs
@@ -0,0 +1,129 @@
+锘縰sing System;
+using HDL_ON.DAL.Server;
+using HDL_ON.Entity;
+using HDL_ON.Stan;
+using Shared;
+
+namespace HDL_ON.UI
+{
+    public class AddQingpingSensorEnvirTipPage : EditorCommonForm
+    {
+        #region 鈻� 鍙橀噺澹版槑___________________________
+
+        /// <summary>
+        /// 娣诲姞璁惧瀹屾垚涔嬪悗鐨勫洖璋冧簨浠�
+        /// </summary>
+        public Action<Function> AddDeviceEvent = null;
+
+        IntegratedBrandDevice integratedDevice = null;
+
+        #endregion
+
+        #region 鈻� 鍒濆鍖朹____________________________
+        /// <summary>
+        /// 鐢婚潰鏄剧ず(搴曞眰浼氬浐瀹氳皟鐢ㄦ鏂规硶锛屽�熶互瀹屾垚鐢婚潰鍒涘缓)
+        /// </summary>
+        public void ShowForm(IntegratedBrandDevice device)
+        {
+            integratedDevice = device;
+            if (Language.CurrentLanguage == "Chinese")
+            {
+                //璁剧疆澶撮儴淇℃伅
+                base.SetTitleText(Language.StringByID(StringId.Add) + device.productName);
+            }
+            else
+            {
+                base.SetTitleText(Language.StringByID(StringId.Add) + " " + device.productName);
+            }
+            //杩欎釜鐣岄潰鐨勮儗鏅渶瑕佺櫧鑹�
+            bodyFrameLayout.BackgroundColor = UI.CSS.CSS_Color.MainBackgroundColor;
+
+            //鍒濆鍖栦腑閮ㄤ俊鎭�
+            this.InitMiddleFrame();
+        }
+
+        /// <summary>
+        /// 鍒濆鍖栦腑閮ㄤ俊鎭�
+        /// </summary>
+        private void InitMiddleFrame()
+        {
+            //鍥剧墖
+            var btnPic = new PicViewControl(132, 132);
+            btnPic.Y = Application.GetRealHeight(69);
+            btnPic.Gravity = Gravity.CenterHorizontal;
+            if(integratedDevice.spk == SPK.SensorEnvironment3)
+            {
+                btnPic.UnSelectedImagePath = "PersonalCenter/AddDevice/EnvirSensorQingpingLitebg.png";
+            }else if (integratedDevice.spk == SPK.SensorEnvironment2)
+            {
+                btnPic.UnSelectedImagePath = "PersonalCenter/AddDevice/EnvirSensorQingpingCGS1bg.png";
+            }
+            bodyFrameLayout.AddChidren(btnPic);
+
+            //璇疯緭鍏ヨ澶囨満涓婄殑sn鐮�
+            var textView = new FrameLayout()
+            {
+                Y = Application.GetRealHeight(309 - 64),
+                Gravity = Gravity.CenterHorizontal,
+                Width = Application.GetRealWidth(319),
+                Height = Application.GetRealHeight(144),
+            };
+            bodyFrameLayout.AddChidren(textView);
+
+            Button btnTipTitle = new Button()
+            {
+                TextAlignment = TextAlignment.Center,
+                TextColor = CSS.CSS_Color.FirstLevelTitleColor,
+                TextSize = CSS.CSS_FontSize.TextFontSize,
+                Text = "璇蜂笅杞解�滈潚钀�+鈥滱PP涓鸿澶囬厤缃綉缁�",
+                IsBold = true,
+                IsMoreLines = true,
+                Height = Application.GetRealHeight(30),
+            };
+            textView.AddChidren(btnTipTitle);
+            if(Language.CurrentLanguage != "Chinese")
+            {
+                btnTipTitle.Text = "Please download the 'Qingping +' app to configure the network for the device";
+            }
+            Button btnTipMsg = new Button()
+            {
+                Y = btnTipTitle.Bottom,
+                TextAlignment = TextAlignment.TopCenter,
+                TextColor = CSS.CSS_Color.PromptingColor1,
+                TextSize = CSS.CSS_FontSize.PromptFontSize_FirstLevel,
+                Text = @"缃戠粶閰嶇疆瀹屾垚鍚庯紝鐐瑰嚮璇ヨ澶囨煡鐪嬫暟鎹〉闈紝{0}鐐瑰嚮鍙充笂瑙掕缃姛鑳絳0}鎵惧埌鈥淲IFI - MAC鈥濆苟澶嶅埗鏀筂AC鐮�",
+                IsMoreLines = true,
+                Height = Application.GetRealHeight(80),
+            };
+            textView.AddChidren(btnTipMsg);
+            if (Language.CurrentLanguage != "Chinese")
+            {
+                btnTipMsg.Text = @"After the network configuration is completed, click the device to view the data page,{0}Click the setting function in the upper right corner{0}Find 鈥榳ifi-mac' and copy the modified MAC code";
+            }
+            btnTipMsg.Text = btnTipMsg.Text.Replace("{0}", "\r\n");
+            //涓嬩竴姝�
+            var btnNext = this.AddBottomClickButton(Language.StringByID(StringId.Next));
+            btnNext.ButtonClickEvent += (sender, e) =>
+            {
+                var form2 = new AddSensorEnvironmentPage();
+                form2.AddForm(integratedDevice);
+                form2.AddDeviceEvent = AddDeviceEvent;
+            };
+        }
+
+        #endregion
+
+        #region 鈻� 鍏抽棴鐣岄潰___________________________
+
+        /// <summary>
+        /// 鍏抽棴鐣岄潰
+        /// </summary>
+        public override void CloseFormBefore()
+        {
+            this.AddDeviceEvent = null;
+            base.CloseFormBefore();
+        }
+
+        #endregion
+    }
+}
diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/SenesorEnvironment/AddSensorEnvironmentPage.cs b/HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/SenesorEnvironment/AddSensorEnvironmentPage.cs
new file mode 100644
index 0000000..0d1da43
--- /dev/null
+++ b/HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/SenesorEnvironment/AddSensorEnvironmentPage.cs
@@ -0,0 +1,203 @@
+锘縰sing HDL_ON.DAL.Server;
+using HDL_ON.Entity;
+using HDL_ON.Stan;
+using Shared;
+using System;
+
+namespace HDL_ON.UI
+{
+    /// <summary>
+    /// 娣诲姞鐜浼犳劅鍣ㄦ楠�1鐣岄潰
+    /// </summary>
+    public class AddSensorEnvironmentPage : EditorCommonForm
+    {
+        #region 鈻� 鍙橀噺澹版槑___________________________
+
+        /// <summary>
+        /// 娣诲姞璁惧瀹屾垚涔嬪悗鐨勫洖璋冧簨浠�
+        /// </summary>
+        public Action<Function> AddDeviceEvent = null;
+
+        IntegratedBrandDevice integratedDevice = null;
+
+        #endregion
+
+        #region 鈻� 鍒濆鍖朹____________________________
+        /// <summary>
+        /// 鐢婚潰鏄剧ず(搴曞眰浼氬浐瀹氳皟鐢ㄦ鏂规硶锛屽�熶互瀹屾垚鐢婚潰鍒涘缓)
+        /// </summary>
+        public void ShowForm(IntegratedBrandDevice device)
+        {
+            integratedDevice = device;
+            if (Language.CurrentLanguage == "Chinese")
+            {
+                //璁剧疆澶撮儴淇℃伅
+                base.SetTitleText(Language.StringByID(StringId.Add) + device.productName);
+            }
+            else
+            {
+                base.SetTitleText(Language.StringByID(StringId.Add) + " " + device.productName);
+            }
+            //杩欎釜鐣岄潰鐨勮儗鏅渶瑕佺櫧鑹�
+            bodyFrameLayout.BackgroundColor = UI.CSS.CSS_Color.MainBackgroundColor;
+
+            //鍒濆鍖栦腑閮ㄤ俊鎭�
+            this.InitMiddleFrame();
+        }
+
+        /// <summary>
+        /// 鍒濆鍖栦腑閮ㄤ俊鎭�
+        /// </summary>
+        private void InitMiddleFrame()
+        {
+            //鍥剧墖
+            var btnPic = new PicViewControl(132, 132);
+            btnPic.Y = Application.GetRealHeight(69);
+            btnPic.Gravity = Gravity.CenterHorizontal;
+            if (integratedDevice.spk == SPK.SensorEnvironment3)
+            {
+                btnPic.UnSelectedImagePath = "PersonalCenter/AddDevice/EnvirSensorQingpingLitebg.png";
+            }
+            else if (integratedDevice.spk == SPK.SensorEnvironment2)
+            {
+                btnPic.UnSelectedImagePath = "PersonalCenter/AddDevice/EnvirSensorQingpingCGS1bg.png";
+            }
+            else
+            {
+                btnPic.UnSelectedImagePath = "PersonalCenter/AddDevice/EnvironmentalSensorbg.png";
+            }
+            bodyFrameLayout.AddChidren(btnPic);
+
+            //璇疯緭鍏ヨ澶囨満涓婄殑sn鐮�
+            var textView = new FrameLayout()
+            {
+                Y = Application.GetRealHeight(309 - 64),
+                Gravity = Gravity.CenterHorizontal,
+                Width = Application.GetRealWidth(319),
+                Height = Application.GetRealHeight(44),
+            };
+            bodyFrameLayout.AddChidren(textView);
+            textView.AddChidren(new Button() { Y = Application.GetRealHeight(43), Height = 1, BackgroundColor = CSS.CSS_Color.DividingLineColor });
+
+            EditText editText = new EditText()
+            {
+                TextAlignment = TextAlignment.Center,
+                TextColor = CSS.CSS_Color.FirstLevelTitleColor,
+                PlaceholderText = Language.StringByID(StringId.PlsEntrySNCode),
+                PlaceholderTextColor = CSS.CSS_Color.PromptingColor1,
+                TextSize = CSS.CSS_FontSize.TextFontSize,
+            };
+            textView.AddChidren(editText);
+
+            if (integratedDevice.spk == SPK.SensorEnvironment2 || integratedDevice.spk == SPK.SensorEnvironment3)
+            {
+                editText.PlaceholderText = Language.StringByID(StringId.PlsEntryMacCode);
+            }
+            if (integratedDevice.spk == SPK.SensorEnvironment)
+            {
+                Button btnScan = new Button()
+                {
+                    Width = Application.GetRealWidth(32),
+                    Height = Application.GetRealWidth(32),
+                    Gravity = Gravity.CenterVertical,
+                    X = Application.GetRealWidth(275),
+                    UnSelectedImagePath = "Public/Scan.png"
+                };
+                textView.AddChidren(btnScan);
+                btnScan.MouseUpEventHandler = (sender, e) =>
+                {
+                    Scan.OpenScan((scanString) =>
+                    {
+                        editText.Text = scanString;
+                    });
+                };
+            }
+            //涓嬩竴姝�
+            var btnNext = this.AddBottomClickButton(Language.StringByID(StringId.Next));
+            btnNext.ButtonClickEvent += (sender, e) =>
+            {
+                var snCode = editText.Text.Trim();
+                if (string.IsNullOrEmpty(snCode))
+                {
+                    editText.PlaceholderTextColor = CSS.CSS_Color.WarningColor;
+                }
+                else
+                {
+
+                    var waitPage = new Loading();
+                    waitPage.Start();
+                    new System.Threading.Thread(() => {
+                        try
+                        {
+                            var pm = new HttpServerRequest();
+                            var pack = pm.IndependentRegister3TyDevcie(integratedDevice.spk, snCode, Language.StringByID(StringId.SensorEnvironment));
+                            if (pack.Code == StateCode.SUCCESS)
+                            {
+                                //var revData = Newtonsoft.Json.JsonConvert.DeserializeObject<List<IntegratedBrandDevice>>(pack.Data.ToString());
+                                Application.RunOnMainThread(() =>
+                                {
+                                    waitPage.Hide();
+                                    var tipDialog = new OperationResultDisPalyPage();
+                                    tipDialog.LoadPage(true, Language.StringByID(StringId.AddSuccess), "", Language.StringByID(StringId.CanStartUsingEnvironmentalSensor), Language.StringByID(StringId.Next));
+                                    tipDialog.Show();
+                                    AddDeviceEvent?.Invoke(new Function());
+                                    this.CloseForm();
+                                });
+                            }
+                            else if (pack.Code == "10801" || pack.Code == "9")
+                            {
+                                var mes = "";
+                                if (Language.CurrentLanguage == "Chinese")
+                                {
+                                    mes = "璇ヨ澶囧凡缁忚娣诲姞銆�";
+                                }
+                                else
+                                {
+                                    mes = "This device has been added.";
+                                }
+                                Application.RunOnMainThread(() =>
+                                {
+                                    var tip = new Tip()
+                                    {
+                                        Text = mes,
+                                        CloseTime = 2,
+                                        Direction = AMPopTipDirection.None
+                                    };
+                                    tip.Show(MainPage.BaseView);
+                                });
+                            }
+                            else
+                            {
+                                IMessageCommon.Current.ShowErrorInfoAlter(pack.Code);
+                            }
+                        }
+                        catch (Exception ex)
+                        {
+                            MainPage.Log("2--::" + ex.Message);
+                        }
+                        finally
+                        {
+                            Application.RunOnMainThread(() => { waitPage.Hide(); });
+                        }
+                    })
+                    { IsBackground = true }.Start();
+                }
+            };
+        }
+
+        #endregion
+
+        #region 鈻� 鍏抽棴鐣岄潰___________________________
+
+        /// <summary>
+        /// 鍏抽棴鐣岄潰
+        /// </summary>
+        public override void CloseFormBefore()
+        {
+            this.AddDeviceEvent = null;
+            base.CloseFormBefore();
+        }
+
+        #endregion
+    }
+}
diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/SenesorEnvironment/SensorEnvironmentManagerPage.cs b/HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/SenesorEnvironment/SensorEnvironmentManagerPage.cs
new file mode 100644
index 0000000..b952725
--- /dev/null
+++ b/HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/SenesorEnvironment/SensorEnvironmentManagerPage.cs
@@ -0,0 +1,133 @@
+锘縰sing HDL_ON.DAL.Server;
+using HDL_ON.Entity;
+using HDL_ON.Stan;
+using HDL_ON.UI.UI2.PersonalCenter.PirDevice;
+using Shared;
+using System;
+
+namespace HDL_ON.UI
+{
+    /// <summary>
+    /// 娣诲姞姣背娉㈡楠�1鐣岄潰
+    /// </summary>
+    public class SensorEnvironmentManagerPage : EditorCommonForm
+    {
+        #region 鈻� 鍙橀噺澹版槑___________________________
+
+        /// <summary>
+        /// 娣诲姞璁惧瀹屾垚涔嬪悗鐨勫洖璋冧簨浠�
+        /// </summary>
+        public Action DelDeviceEvent = null;
+
+        Function function = null;
+        #endregion
+
+        #region 鈻� 鍒濆鍖朹____________________________
+        /// <summary>
+        /// 鐢婚潰鏄剧ず(搴曞眰浼氬浐瀹氳皟鐢ㄦ鏂规硶锛屽�熶互瀹屾垚鐢婚潰鍒涘缓)
+        /// </summary>
+        public void ShowForm(Function device)
+        {
+            function = device;
+            //璁剧疆澶撮儴淇℃伅
+            base.SetTitleText(Language.StringByID(StringId.Add) + device.name);
+            //杩欎釜鐣岄潰鐨勮儗鏅渶瑕佺櫧鑹�
+            bodyFrameLayout.BackgroundColor = CSS.CSS_Color.BackgroundColor;
+
+            //鍒濆鍖栦腑閮ㄤ俊鎭�
+            this.InitMiddleFrame();
+        }
+
+        /// <summary>
+        /// 鍒濆鍖栦腑閮ㄤ俊鎭�
+        /// </summary>
+        private void InitMiddleFrame()
+        {
+            //鍥剧墖
+            var btnPic = new PicViewControl(132, 132);
+            btnPic.Y = Application.GetRealHeight(69);
+            btnPic.Gravity = Gravity.CenterHorizontal;
+            btnPic.UnSelectedImagePath = "PersonalCenter/AddDevice/SenesorMegahealthBg.png";
+            bodyFrameLayout.AddChidren(btnPic);
+
+            var btnTip = new Button()
+            {
+                Y = Application.GetRealHeight(309 - 44),
+                Gravity = Gravity.CenterHorizontal,
+                Width = Application.GetRealWidth(319),
+                Height = Application.GetRealHeight(84),
+                IsMoreLines = true,
+                TextAlignment = TextAlignment.Center,
+                TextColor = CSS.CSS_Color.FirstLevelTitleColor,
+                TextSize = CSS.CSS_FontSize.SubheadingFontSize,
+            };
+            bodyFrameLayout.AddChidren(btnTip);
+
+            if (Language.CurrentLanguage == "Chinese")
+            {
+                btnTip.Text = "璇ヨ澶囧凡娣诲姞鍒颁紶鎰熷櫒绫诲埆锛屽彲鍒板搴斿姛鑳芥澘鍧楁煡鐪�";
+            }
+            else
+            {
+                btnTip.Text = "The device has been added to the sensor category, which can be viewed in the corresponding function block.";
+            }
+
+            var btnDel = new Button()
+            {
+                Y = Application.GetRealHeight(617 - 64),
+                Height = Application.GetRealHeight(50),
+                TextAlignment = TextAlignment.Center,
+                TextColor = CSS.CSS_Color.WarningColor,
+                TextSize = CSS.CSS_FontSize.SubheadingFontSize,
+                TextID = StringId.DeleteDevice,
+                BackgroundColor = CSS.CSS_Color.MainBackgroundColor,
+            };
+            bodyFrameLayout.AddChidren(btnDel);
+
+            btnDel.MouseUpEventHandler = (sender, e) => {
+                var pack = PirSend.DeleteDevice(function.deviceId);
+                if (pack.Code == StateCode.SUCCESS)
+                {
+                    DelDeviceEvent?.Invoke();
+                    this.CloseForm();
+                    var mes = "";
+                    if (Language.CurrentLanguage == "Chinese")
+                    {
+                        mes = "璁惧鍒犻櫎鎴愬姛銆�";
+                    }
+                    else
+                    {
+                        mes = "Device deleted successfully.";
+                    }
+                    var tip = new Tip()
+                    {
+                        Text = mes,
+                        CloseTime = 2,
+                        Direction = AMPopTipDirection.None
+                    };
+                    tip.Show(MainPage.BaseView);
+                }
+                else
+                {
+                    IMessageCommon.Current.ShowErrorInfoAlter(pack.Code);
+                }
+            };
+
+        }
+
+        #endregion
+
+        #region 鈻� 鍏抽棴鐣岄潰___________________________
+
+        /// <summary>
+        /// 鍏抽棴鐣岄潰
+        /// </summary>
+        public override void CloseFormBefore()
+        {
+            this.DelDeviceEvent = null;
+            base.CloseFormBefore();
+        }
+
+        #endregion
+    }
+}
diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/SenesorMegahealth/AddSenesorMegahealthDirection1Page.cs b/HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/SenesorMegahealth/AddSenesorMegahealthDirection1Page.cs
index b45f8ee..69f180e 100644
--- a/HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/SenesorMegahealth/AddSenesorMegahealthDirection1Page.cs
+++ b/HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/SenesorMegahealth/AddSenesorMegahealthDirection1Page.cs
@@ -3,8 +3,6 @@
 using HDL_ON.Stan;
 using Shared;
 using System;
-using System.Collections.Generic;
-using System.Text;
 
 namespace HDL_ON.UI
 {
diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/SenesorMegahealth/SenesorMegahealthManagerPage.cs b/HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/SenesorMegahealth/SenesorMegahealthManagerPage.cs
index 4c24a2c..367b0a9 100644
--- a/HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/SenesorMegahealth/SenesorMegahealthManagerPage.cs
+++ b/HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/SenesorMegahealth/SenesorMegahealthManagerPage.cs
@@ -4,8 +4,6 @@
 using HDL_ON.UI.UI2.PersonalCenter.PirDevice;
 using Shared;
 using System;
-using System.Collections.Generic;
-using System.Text;
 
 namespace HDL_ON.UI
 {
diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/AddFunction/AddDevciePage.cs b/HDL_ON/UI/UI2/4-PersonalCenter/AddFunction/AddDevciePage.cs
index 19fe9ea..8f56b86 100644
--- a/HDL_ON/UI/UI2/4-PersonalCenter/AddFunction/AddDevciePage.cs
+++ b/HDL_ON/UI/UI2/4-PersonalCenter/AddFunction/AddDevciePage.cs
@@ -154,6 +154,23 @@
                                 this.RemoveFromParent();
                             };
                             break;
+                        case SPK.SensorEnvironment:
+                            var form2 = new AddSensorEnvironmentPage();
+                            form2.AddForm(device);
+                            form2.AddDeviceEvent = (functionObj) => {
+                                refreshView.BeginHeaderRefreshing();
+                                this.RemoveFromParent();
+                            };
+                            break;
+                        case SPK.SensorEnvironment2:
+                        case SPK.SensorEnvironment3:
+                            var form3 = new AddQingpingSensorEnvirTipPage();
+                            form3.AddForm(device);
+                            form3.AddDeviceEvent = (functionObj) => {
+                                refreshView.BeginHeaderRefreshing();
+                                this.RemoveFromParent();
+                            };
+                            break;
                     }
                 };
             }
diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/AddFunction/DeviceListPage.cs b/HDL_ON/UI/UI2/4-PersonalCenter/AddFunction/DeviceListPage.cs
index a2c9567..b73791d 100644
--- a/HDL_ON/UI/UI2/4-PersonalCenter/AddFunction/DeviceListPage.cs
+++ b/HDL_ON/UI/UI2/4-PersonalCenter/AddFunction/DeviceListPage.cs
@@ -173,6 +173,16 @@
                                 contentView.BeginHeaderRefreshing();
                             };
                             break;
+                        case SPK.SensorEnvironment:
+                        case SPK.SensorEnvironment2:
+                        case SPK.SensorEnvironment3:
+                            var smPage1 = new SensorEnvironmentManagerPage();
+                            smPage1.AddForm(device);
+                            smPage1.DelDeviceEvent = () =>
+                            {
+                                contentView.BeginHeaderRefreshing();
+                            };
+                            break;
                     }
                 };
             }
diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/FaceManagement/FacePassagePage.cs b/HDL_ON/UI/UI2/4-PersonalCenter/FaceManagement/FacePassagePage.cs
new file mode 100644
index 0000000..3285aae
--- /dev/null
+++ b/HDL_ON/UI/UI2/4-PersonalCenter/FaceManagement/FacePassagePage.cs
@@ -0,0 +1,156 @@
+锘縰sing System;
+using HDL_ON.UI.CSS;
+using Shared;
+
+namespace HDL_ON.UI
+{
+    public class FacePassagePage : FrameLayout
+    {
+        FrameLayout bodyView;
+        /// <summary>
+        /// 闈㈠id
+        /// </summary>
+        string faceid = "";
+
+        public FacePassagePage()
+        {
+            bodyView = this;
+        }
+
+        public void LoadPage()
+        {
+            new TopViewDiv(bodyView, Language.StringByID(StringId.FacePassage)).LoadTopView();
+            bodyView.BackgroundColor = CSS_Color.BackgroundColor;
+
+
+            var contentView = new FrameLayout()
+            {
+                Y = Application.GetRealHeight(64),
+                Height = Application.GetRealHeight(667-64),
+            };
+            bodyView.AddChidren(contentView);
+
+            var topView = new FrameLayout()
+            {
+                Height = Application.GetRealHeight(189),
+                BackgroundColor = CSS_Color.MainBackgroundColor,
+            };
+            contentView.AddChidren(topView);
+
+            var btnFaceIcon = new Button()
+            {
+                Gravity = Gravity.CenterHorizontal,
+                Y = Application.GetRealHeight(20),
+                Width = Application.GetRealWidth(102),
+                Height = Application.GetRealWidth(102),
+                UnSelectedImagePath = "PersonalCenter/FacePassage/FaceIcon.png",
+            };
+            topView.AddChidren(btnFaceIcon);
+
+            var btnText1 = new Button()
+            {
+                X = Application.GetRealWidth(16),
+                Y = Application.GetRealWidth(54),
+                TextAlignment = TextAlignment.CenterLeft,
+                TextColor = CSS_Color.FirstLevelTitleColor,
+                TextSize = CSS_FontSize.SubheadingFontSize,
+                TextID = StringId.ApplyFaceIdTo,
+                IsBold = true,
+            };
+            topView.AddChidren(btnText1);
+
+            topView.AddChidren(new Button() { Height = 1,BackgroundColor = CSS_Color.DividingLineColor,Y = Application.GetRealHeight(188) ,X = Application.GetRealWidth(16),Width = Application.GetRealWidth(359)});
+
+            #region 绀惧尯闂ㄧ閫氳
+            var communityRow = new FrameLayout()
+            {
+                Y = topView.Bottom,
+                Height = Application.GetRealHeight(50),
+                BackgroundColor = CSS_Color.MainBackgroundColor,
+            };
+            contentView.AddChidren(communityRow);
+
+            var btnCommunityTitle = new Button()
+            {
+                X = Application.GetRealWidth(16),
+                Width = Application.GetRealWidth(300),
+                TextAlignment = TextAlignment.CenterLeft,
+                TextColor = CSS_Color.FirstLevelTitleColor,
+                TextSize = CSS_FontSize.TextFontSize,
+                TextID = StringId.CommunityAccessControl,
+            };
+            communityRow.AddChidren(btnCommunityTitle);
+
+
+            var btnCommunityAccessControlIcon = new Button()
+            {
+                X = Application.GetRealWidth(314),
+                Gravity = Gravity.CenterVertical,
+                Width = Application.GetMinRealAverage(48),
+                Height = Application.GetMinRealAverage(36),
+                UnSelectedImagePath = "Public/Switch.png",
+                SelectedImagePath = "Public/SwitchOn.png",
+            };
+            communityRow.AddChidren(btnCommunityAccessControlIcon);
+
+
+
+            #endregion
+
+
+            var btnTip = new Button()
+            {
+                Y = Application.GetRealHeight(270),
+                Height = Application.GetRealHeight(48),
+                TextAlignment = TextAlignment.Center,
+                TextColor = CSS_Color.MainColor,
+                TextSize = CSS_FontSize.TextFontSize,
+                TextID = StringId.AboutFaceIdAndPrivacy
+            };
+            contentView.AddChidren(btnTip);
+
+
+            var btnSetFaceId = new Button()
+            {
+                Y = Application.GetRealHeight(539),
+                Gravity = Gravity.CenterHorizontal,
+                Width = Application.GetRealWidth(220),
+                Height = Application.GetRealWidth(44),
+                Radius = (uint)Application.GetRealWidth(22),
+                BackgroundColor = CSS_Color.MainColor,
+                TextID = StringId.SetFace,
+                TextSize = CSS_FontSize.SubheadingFontSize,
+                TextColor = CSS_Color.MainBackgroundColor,
+                TextAlignment = TextAlignment.Center,
+                IsBold = true,
+            };
+            contentView.AddChidren(btnSetFaceId);
+
+            if (string.IsNullOrEmpty(faceid))
+            {
+            }
+            else
+            {
+                btnSetFaceId.TextID = StringId.ResetFace;
+
+                var btnEraseData = new Button()
+                {
+                    Y = Application.GetRealHeight(481),
+                    Gravity = Gravity.CenterHorizontal,
+                    Width = Application.GetRealWidth(220),
+                    Height = Application.GetRealWidth(44),
+                    Radius = (uint)Application.GetRealWidth(22),
+                    BackgroundColor = CSS_Color.WarningColor,
+                    TextID = StringId.EraseData,
+                    TextSize = CSS_FontSize.SubheadingFontSize,
+                    TextColor = CSS_Color.MainBackgroundColor,
+                    TextAlignment = TextAlignment.Center,
+                    IsBold = true,
+                };
+                contentView.AddChidren(btnEraseData);
+            }
+
+
+        }
+    }
+}
diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/PersonalCenterPage.cs b/HDL_ON/UI/UI2/4-PersonalCenter/PersonalCenterPage.cs
index 6c82a05..1ffbbce 100644
--- a/HDL_ON/UI/UI2/4-PersonalCenter/PersonalCenterPage.cs
+++ b/HDL_ON/UI/UI2/4-PersonalCenter/PersonalCenterPage.cs
@@ -239,7 +239,7 @@
             {
                 Button btnExit = new Button()
                 {
-                    Y = Application.GetRealHeight(258) + personalInfoView.Bottom,
+                    Y = Application.GetRealHeight(288) + personalInfoView.Bottom,
                     Gravity = Gravity.CenterHorizontal,
                     Height = Application.GetRealHeight(60),
                     Width = Application.GetRealWidth(330),
diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/PersonalCenterPageBLL.cs b/HDL_ON/UI/UI2/4-PersonalCenter/PersonalCenterPageBLL.cs
index 9ddce15..ff66821 100644
--- a/HDL_ON/UI/UI2/4-PersonalCenter/PersonalCenterPageBLL.cs
+++ b/HDL_ON/UI/UI2/4-PersonalCenter/PersonalCenterPageBLL.cs
@@ -292,8 +292,6 @@
         {
             btnSupportText.MouseUpEventHandler = (sender, e) =>
             {
-                //throw new Exception("寮傚父娴嬭瘯");
-                
                 var getsupportPage = new FAQHelpPage();
                 MainPage.BasePageView.AddChidren(getsupportPage);
                 getsupportPage.LoadPage();
diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/PersonalDataPage.cs b/HDL_ON/UI/UI2/4-PersonalCenter/PersonalDataPage.cs
index 36b8206..8c65a3e 100644
--- a/HDL_ON/UI/UI2/4-PersonalCenter/PersonalDataPage.cs
+++ b/HDL_ON/UI/UI2/4-PersonalCenter/PersonalDataPage.cs
@@ -1,4 +1,4 @@
-锘縰sing System;
+锘�    using System;
 using HDL_ON.UI;
 using HDL_ON.UI.CSS;
 using Shared;
@@ -161,6 +161,19 @@
         Button btnAddResidenceScan;
         #endregion
 
+
+        #region 涓汉閫夐」-浜鸿劯閫氳绠$悊
+        /// <summary>
+        /// 涓汉閫夐」-浜鸿劯閫氳绠$悊琛�
+        /// </summary>
+        FrameLayout faceManagementView;
+        /// <summary>
+        /// 浜鸿劯閫氳绠$悊鏂囨湰
+        /// </summary>
+        Button btnFaceManagementText;
+        #endregion
+
+
         #endregion
 
         #endregion
@@ -246,7 +259,7 @@
             /// </summary>
             optionListView = new VerticalScrolViewLayout()
             {
-                Height = Application.GetRealHeight(51 * 6),
+                Height = Application.GetRealHeight(51 * (6+1)),
                 BackgroundColor = CSS_Color.MainBackgroundColor,
                 ScrollEnabled = false,
             };
@@ -547,9 +560,50 @@
                 });
             };
 
+            optionListView.AddChidren(new Button() { X = Application.GetRealWidth(16), Height = Application.GetRealHeight(1), Width = Application.GetRealWidth(343), BackgroundColor = CSS_Color.DividingLineColor });
             #endregion
 
 
+            #region 涓汉閫夐」-浜鸿劯閫氳绠$悊
+            faceManagementView = new FrameLayout()
+            {
+                Height = Application.GetRealHeight(50),
+            };
+            optionListView.AddChidren(faceManagementView);
+
+            var btnFaceManagementRight = new Button()
+            {
+                X = Application.GetRealWidth(339),
+                Gravity = Gravity.CenterVertical,
+                Width = Application.GetMinRealAverage(16),
+                Height = Application.GetMinRealAverage(16),
+                UnSelectedImagePath = "Public/Right.png",
+            };
+            faceManagementView.AddChidren(btnFaceManagementRight);
+
+            btnFaceManagementText = new Button()
+            {
+                X = Application.GetRealWidth(16),
+                TextAlignment = TextAlignment.CenterLeft,
+                TextColor = CSS_Color.FirstLevelTitleColor,
+                TextSize = CSS_FontSize.SubheadingFontSize,
+                TextID = StringId.FacePassageSetting,
+            };
+            faceManagementView.AddChidren(btnFaceManagementText);
+
+            btnFaceManagementText.MouseUpEventHandler = (sender, e) =>
+            {
+                var page = new FacePassagePage();
+                MainPage.BasePageView.AddChidren(page);
+                page.LoadPage();
+                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+                
+            };
+
+            #endregion
+
+
+
             #endregion
 
             #region 瑙i攣璁剧疆鍖哄煙
diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/RoomListManage/Transfer/TransferUserConfirmPage.cs b/HDL_ON/UI/UI2/4-PersonalCenter/RoomListManage/Transfer/TransferUserConfirmPage.cs
index 4c40acb..5bd2aea 100644
--- a/HDL_ON/UI/UI2/4-PersonalCenter/RoomListManage/Transfer/TransferUserConfirmPage.cs
+++ b/HDL_ON/UI/UI2/4-PersonalCenter/RoomListManage/Transfer/TransferUserConfirmPage.cs
@@ -105,7 +105,7 @@
                         //纭杩囨埛{0}鐨勭鐞嗗憳璐﹀彿缁欒处鍙穥1}
                         string msg = Language.StringByID(StringId.TransferreConfirmMsg2).Replace("{0}", Entity.DB_ResidenceData.Instance.CurrentRegion.homeName);
                         msg = msg.Replace("{1}", btnName.Text);
-                        HdlMessageLogic.Current.ShowMassage(ShowMsgType.Confirm, Language.StringByID(StringId.TransferreConfirmMsg2), () =>
+                        HdlMessageLogic.Current.ShowMassage(ShowMsgType.Confirm, msg, () =>
                         {
                             var form = new TransferingResidenceForm();
                             form.AddForm(this.accountInfo);
diff --git a/HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/AcControlPage.cs b/HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/AcControlPage.cs
index a097bcd..5b8f65b 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/AcControlPage.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/AcControlPage.cs
@@ -410,9 +410,9 @@
                 Button btnModeIcon = new Button()
                 {
                     X = btnTitle.X,
-                    Y = Application.GetRealHeight(41 * (modeList.IndexOf(m) + 1) + 10 + 8),
-                    Width = Application.GetRealWidth(30),
-                    Height = Application.GetRealWidth(30),
+                    Y = Application.GetRealHeight(44 * (modeList.IndexOf(m) + 1) + 10 + 8),
+                    Width = Application.GetRealWidth(24),
+                    Height = Application.GetRealWidth(24),
                     IsSelected = device.GetAttrState(FunctionAttributeKey.Swing) == m,
                 };
                 modeChangeView.AddChidren(btnModeIcon);
@@ -431,10 +431,6 @@
                 };
                 modeChangeView.AddChidren(btnModeText);
 
-                btnModeIcon.UnSelectedImagePath = acFunction.GetSwingIconPath(m, false);
-                btnModeIcon.SelectedImagePath = acFunction.GetSwingIconPath(m);
-                btnModeText.Text = acFunction.GetSwingAttrText(m);
-
                 if (modeList.IndexOf(m) < modeList.Count - 1)
                 {
                     modeChangeView.AddChidren(new Button()
@@ -446,6 +442,11 @@
                         BackgroundColor = CSS_Color.BackgroundColor,
                     });
                 }
+
+                btnModeIcon.UnSelectedImagePath = acFunction.GetSwingIconPath(m, false);
+                btnModeIcon.SelectedImagePath = acFunction.GetSwingIconPath(m);
+                btnModeText.Text = acFunction.GetSwingAttrText(m);
+
                 EventHandler<MouseEventArgs> eventHandler = (sender, e) =>
                 {
                     dialog.Close();
diff --git a/HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/AcControlPage_AddIrButton.cs b/HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/AcControlPage_AddIrButton.cs
index 341c300..58df0a8 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/AcControlPage_AddIrButton.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/AcControlPage_AddIrButton.cs
@@ -133,6 +133,18 @@
 
                 //娣诲姞鏁版嵁瀵硅薄
                 AttributesStatus buttonObj = new AttributesStatus();
+
+                //闃叉key涓嶅敮涓�
+                var attrCount = control.attributes.Count;
+                var keyString = "key" + attrCount;
+                while (true)
+                {
+                    if (control.attributes.Find((obj) => obj.key == keyString) == null)
+                    {
+                        break;
+                    }
+                    keyString = "key" + (++attrCount);
+                }
                 buttonObj.key = "key" + control.attributes.Count.ToString();
                 buttonObj.value = texts;
 
diff --git a/HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/AirFreshRelayControlPage.cs b/HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/AirFreshRelayControlPage.cs
new file mode 100644
index 0000000..b2d0460
--- /dev/null
+++ b/HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/AirFreshRelayControlPage.cs
@@ -0,0 +1,304 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Text;
+using HDL_ON.DriverLayer;
+using HDL_ON.Entity;
+using HDL_ON.Stan;
+using HDL_ON.UI.CSS;
+using Shared;
+
+namespace HDL_ON.UI
+{
+    public class AirFreshRelayControlPage : DeviceFunctionCardCommonForm
+    {
+        #region 鈻� 鍙橀噺澹版槑___________________________
+        /// <summary>
+        /// 椋庨�熷浘鏍囨帶浠�
+        /// </summary>
+        private IconViewControl btnFan = null;
+        /// <summary>
+        /// 椋庨�熸枃鏈帶浠�
+        /// </summary>
+        private NormalViewControl btnFanView = null;
+        /// <summary>
+        /// 寮�鍏冲浘鏍�
+        /// </summary>
+        private IconViewControl btnSwitch = null;
+        #endregion
+
+        #region 鈻� 鍒濆鍖朹____________________________
+
+        /// <summary>
+        /// 鍒濆鍖栫櫧鑹插尯鍩熺殑鍐呭
+        /// </summary>
+        public override void InitFrameWhiteContent()
+        {
+            base.SetTitleText(Language.StringByID(StringId.AirFresh));
+
+            //鍒锋柊褰撳墠璁惧鐨勭姸鎬佺紦瀛�
+            this.RefreshNowDeviceStatuMemory(this.device);
+            //鍒濆鍖栫涓�涓储寮曢〉鐨勫唴瀹�
+            this.InitFrameWhiteContent1();
+
+            Control.Ins.SendReadCommand(device);
+        }
+
+        /// <summary>
+        /// 鍒濆鍖栫涓�涓储寮曢〉鐨勫唴瀹�
+        /// </summary>
+        private void InitFrameWhiteContent1()
+        {
+            //涓�涓儗鏅浘鐗�
+            var framePic = new FrameLayout();
+            framePic.Y = Application.GetRealHeight(87);
+            framePic.Width = this.GetPictrueRealSize(247);
+            framePic.Height = this.GetPictrueRealSize(247);
+            framePic.Gravity = Gravity.CenterHorizontal;
+            framePic.BackgroundImagePath = "FunctionIcon/AirFresh/AirFreshBgIcon.png";
+            this.FrameWhiteCentet1.AddChidren(framePic);
+
+            //椋庨�熷浘鏍�
+            this.btnFan = new IconViewControl(28);
+            btnFan.Gravity = Gravity.CenterHorizontal;
+            btnFan.Y = Application.GetRealHeight(367);
+            this.FrameWhiteCentet1.AddChidren(btnFan);
+            List<string> fanSpeedList = new List<string>();
+            fanSpeedList = device.GetAttribute(FunctionAttributeKey.FanSpeed).value;
+            btnFan.MouseUpEventHandler += (sender, e) =>
+            {
+                if( !btnSwitch.IsSelected){return;}
+                var curFanSpeedIndex = fanSpeedList.IndexOf(device.GetAttrState(FunctionAttributeKey.FanSpeed));
+                var sendFanSpeedIndex = curFanSpeedIndex == fanSpeedList.Count - 1 ? 0 : 1+curFanSpeedIndex;
+
+                device.SetAttrState(FunctionAttributeKey.FanSpeed, fanSpeedList[sendFanSpeedIndex]);
+                new System.Threading.Thread(() =>
+                {
+                    Dictionary<string, string> d = new Dictionary<string, string>();
+                    d.Add(FunctionAttributeKey.FanSpeed, fanSpeedList[sendFanSpeedIndex]);
+                    Control.Ins.SendWriteCommand(device, d);
+                })
+                { IsBackground = true }.Start();
+                RefreshFanSpeed();
+            };
+            //椋庨�熸枃鏈�
+            this.btnFanView = new NormalViewControl(this.FrameWhiteCentet1.Width / 3, Application.GetRealHeight(18), false);
+            btnFanView.Gravity = Gravity.CenterHorizontal;
+            btnFanView.Y = btnFan.Bottom + Application.GetRealHeight(6);
+            btnFanView.TextAlignment = TextAlignment.Center;
+            btnFanView.TextSize = CSS_FontSize.PromptFontSize_FirstLevel;
+            btnFanView.TextColor = CSS_Color.TextualColor;
+            this.FrameWhiteCentet1.AddChidren(btnFanView);
+
+            //寮�鍏冲浘鏍�
+            this.btnSwitch = new IconViewControl(32);
+            btnSwitch.Gravity = Gravity.CenterHorizontal;
+            btnSwitch.Y = Application.GetRealHeight(468);
+            btnSwitch.UnSelectedImagePath = "Public/PowerClose.png";
+            btnSwitch.SelectedImagePath = "Public/PowerOpen.png";
+            FrameWhiteCentet1.AddChidren(btnSwitch);
+            btnSwitch.MouseUpEventHandler = (sender, e) =>
+            {
+                btnSwitch.IsSelected = !btnSwitch.IsSelected;
+                device.trait_on_off.curValue = btnSwitch.IsSelected ? "on" : "off";
+                new System.Threading.Thread(() =>
+                {
+                    Dictionary<string, string> d = new Dictionary<string, string>();
+                    d.Add(FunctionAttributeKey.OnOff, device.trait_on_off.curValue.ToString());
+                    Control.Ins.SendWriteCommand(device, d);
+                })
+                { IsBackground = true }.Start();
+            };
+
+            //鍒锋柊鐣岄潰鐘舵��
+            this.RefreshFormStatu();
+
+            if (fanSpeedList.Count > 0)
+            {
+                this.btnFan.UnSelectedImagePath = "FunctionIcon/AirFresh/Fan1.png";
+                this.btnFan.SelectedImagePath = "FunctionIcon/AirFresh/Fan1Select.png";
+                this.btnFanView.Text = Language.StringByID(StringId.LowWindSpeed);
+            }
+        }
+
+        #endregion
+
+        #region 鈻� 鏄剧ず椋庨�熼�夋嫨鐣岄潰___________________
+
+        /// <summary>
+        /// 鏄剧ず椋庨�熼�夋嫨鐣岄潰
+        /// </summary>
+        private void ShowFanSelectView()
+        {
+            //鏁翠釜鐏拌壊鐣岄潰
+            var frameBack = new Dialog();
+
+            var dialogBody = new NormalFrameLayout();
+            frameBack.AddChidren(dialogBody);
+            dialogBody.ButtonClickEvent = (sender, e) =>
+            {
+                frameBack.Close();
+            };
+            frameBack.Show();
+
+            //鑿滃崟鎺т欢(椋庨��)
+            var menuContr = new DialogTitleMenuControl(3, Language.StringByID(StringId.FanSpeed));
+            menuContr.X = Application.GetRealWidth(209);
+            menuContr.Y = Application.GetRealHeight(231);
+            menuContr.Width = Application.GetRealWidth(160);
+            menuContr.Height = Application.GetRealHeight(199);
+            dialogBody.AddChidren(menuContr);
+
+            //1妗�
+            var iconPath = this.device.GetAttrState(FunctionAttributeKey.FanSpeed) == "low" ? "FunctionIcon/AirFresh/Fan1Select.png" : "FunctionIcon/AirFresh/Fan1.png";
+            menuContr.AddRowMenu(Language.StringByID(StringId.FanOneGear), iconPath, this.device.GetAttrState(FunctionAttributeKey.FanSpeed) == "low", () =>
+            {
+                frameBack.Close();
+                //鍙戦�佹。浣嶅懡浠�
+                this.SendOtherComand(this.btnFan, FunctionAttributeKey.FanSpeed, "low");
+            });
+
+            //2妗�
+            iconPath = this.device.GetAttrState(FunctionAttributeKey.FanSpeed) == "medium" ? "FunctionIcon/AirFresh/Fan2Select.png" : "FunctionIcon/AirFresh/Fan2.png";
+            menuContr.AddRowMenu(Language.StringByID(StringId.FanTwoGear), iconPath, this.device.GetAttrState(FunctionAttributeKey.FanSpeed) == "medium", () =>
+            {
+                frameBack.Close();
+                //鍙戦�佹。浣嶅懡浠�
+                this.SendOtherComand(this.btnFan, FunctionAttributeKey.FanSpeed, "medium");
+            });
+
+            //3妗�
+            iconPath = this.device.GetAttrState(FunctionAttributeKey.FanSpeed) == "high" ? "FunctionIcon/AirFresh/Fan3Select.png" : "FunctionIcon/AirFresh/Fan3.png";
+            menuContr.AddRowMenu(Language.StringByID(StringId.FanThreeGear), iconPath, this.device.GetAttrState(FunctionAttributeKey.FanSpeed) == "high", () =>
+            {
+                frameBack.Close();
+                //鍙戦�佹。浣嶅懡浠�
+                this.SendOtherComand(this.btnFan, FunctionAttributeKey.FanSpeed, "high");
+            });
+        }
+
+        #endregion
+
+        #region 鈻� 璁惧鐘舵�佸弽棣坃______________________
+
+        /// <summary>
+        /// 璁惧鐘舵�佸弽棣�
+        /// </summary>
+        /// <param name="i_LocalDevice"></param>
+        public override void DeviceStatuPush(Function i_LocalDevice)
+        {
+            //涓嶆槸鍚屼竴涓笢瑗�
+            if (this.device.sid != i_LocalDevice.sid) { return; }
+
+            //鍒锋柊褰撳墠璁惧鐨勭姸鎬佺紦瀛�
+            this.RefreshNowDeviceStatuMemory(i_LocalDevice);
+            //鍒锋柊鐣岄潰鐘舵��
+            this.RefreshFormStatu();
+        }
+
+        #endregion
+
+        #region 鈻� 鍒锋柊鐣岄潰鐘舵�乢______________________
+
+        /// <summary>
+        /// 鍒锋柊鐣岄潰鐘舵��
+        /// </summary>
+        private void RefreshFormStatu()
+        {
+            //寮�鍏�
+            this.btnSwitch.IsSelected = this.device.GetAttrState(FunctionAttributeKey.OnOff) == "on";
+
+            this.RefreshFanSpeed();
+        }
+
+        /// <summary>
+        /// 鍒锋柊椋庨�熺姸鎬�
+        /// </summary>
+        private void RefreshFanSpeed()
+        {
+            //椋庨��
+            if (this.device.GetAttrState(FunctionAttributeKey.FanSpeed) == "low")
+            {
+                this.btnFan.UnSelectedImagePath = "FunctionIcon/AirFresh/Fan1.png";
+                this.btnFan.SelectedImagePath = "FunctionIcon/AirFresh/Fan1Select.png";
+                this.btnFanView.Text = Language.StringByID(StringId.LowWindSpeed);
+            }
+            else if (this.device.GetAttrState(FunctionAttributeKey.FanSpeed) == "medium")
+            {
+                this.btnFan.UnSelectedImagePath = "FunctionIcon/AirFresh/Fan2.png";
+                this.btnFan.SelectedImagePath = "FunctionIcon/AirFresh/Fan2Select.png";
+                this.btnFanView.Text = Language.StringByID(StringId.MiddleWindSpeed);
+            }
+            else if (this.device.GetAttrState(FunctionAttributeKey.FanSpeed) == "high")
+            {
+                this.btnFan.UnSelectedImagePath = "FunctionIcon/AirFresh/Fan3.png";
+                this.btnFan.SelectedImagePath = "FunctionIcon/AirFresh/Fan3Select.png";
+                this.btnFanView.Text = Language.StringByID(StringId.HighWindSpeed);
+            }
+            this.btnFan.CanClick = this.btnFan.IsSelected = this.device.GetAttrState(FunctionAttributeKey.OnOff) == "on";
+        }
+
+        #endregion
+
+        #region 鈻� 鍙戦�佸悇绉嶅懡浠______________________
+
+        /// <summary>
+        /// 鍙戦�佸叾浠栧懡浠�
+        /// </summary>
+        /// <param name="btnIcon">鎸夐挳</param>
+        /// <param name="comadKey">鍛戒护涓婚敭</param>
+        /// <param name="comadValue">鍛戒护</param>
+        private void SendOtherComand(IconViewControl btnIcon, string comadKey, string comadValue)
+        {
+            btnIcon.CanClick = false;
+
+            HdlThreadLogic.Current.RunThread(() =>
+            {
+                //鑾峰彇鍙戦�佸懡浠ょ殑鏍锋澘(bus鍗忚鏄渶瑕佷竴娆℃�ф妸鍏ㄩ儴鍛戒护涓�璧峰彂閫佺殑)
+                var dic = this.GetSendComandSample();
+                dic[comadKey] = comadValue;
+                Control.Ins.SendWriteCommand(this.device, dic);
+                HdlThreadLogic.Current.RunMain(() =>
+                {
+                    btnIcon.CanClick = true;
+                });
+            });
+        }
+
+        /// <summary>
+        /// 鑾峰彇鍙戦�佸懡浠ょ殑鏍锋澘(bus鍗忚鏄渶瑕佷竴娆℃�ф妸鍏ㄩ儴鍛戒护涓�璧峰彂閫佺殑)
+        /// </summary>
+        /// <returns></returns>
+        private Dictionary<string, string> GetSendComandSample()
+        {
+            var dic = new Dictionary<string, string>();
+            //寮�鍏�
+            dic[FunctionAttributeKey.OnOff] = this.device.GetAttrState(FunctionAttributeKey.OnOff);
+            //椋庨��
+            dic[FunctionAttributeKey.FanSpeed] = this.device.GetAttrState(FunctionAttributeKey.FanSpeed);
+
+            return dic;
+        }
+
+        #endregion
+
+        #region 鈻� 涓�鑸柟娉昣__________________________
+
+        /// <summary>
+        /// 鍒锋柊褰撳墠璁惧鐨勭姸鎬佺紦瀛�
+        /// </summary>
+        private void RefreshNowDeviceStatuMemory(Function i_LocalDevice)
+        {
+            for (int i = 0; i < i_LocalDevice.attributes.Count; i++)
+            {
+                var data = i_LocalDevice.attributes[i];
+                //寮�鍏�
+                if (data.key == FunctionAttributeKey.OnOff) { this.device.SetAttrState(FunctionAttributeKey.OnOff, data.state); }
+                //椋庨��
+                else if (data.key == FunctionAttributeKey.FanSpeed) { this.device.SetAttrState(FunctionAttributeKey.FanSpeed, data.state); }
+            }
+        }
+
+        #endregion
+
+    }
+}
diff --git a/HDL_ON/UI/UI2/FuntionControlView/ArmCenter/AddAlarmDeploymentPage.cs b/HDL_ON/UI/UI2/FuntionControlView/ArmCenter/AddAlarmDeploymentPage.cs
new file mode 100644
index 0000000..d47f84d
--- /dev/null
+++ b/HDL_ON/UI/UI2/FuntionControlView/ArmCenter/AddAlarmDeploymentPage.cs
@@ -0,0 +1,627 @@
+锘縰sing System;
+using System.Collections.Generic;
+using HDL_ON.DAL.Server;
+using HDL_ON.Entity;
+using HDL_ON.UI.CSS;
+using Shared;
+namespace HDL_ON.UI
+{
+    public class AddAlarmDeploymentPage : FrameLayout
+    {
+        FrameLayout bodyView;
+        /// <summary>
+        /// 涓婚鐣岄潰
+        /// </summary>
+        VerticalScrolViewLayout contentView;
+        /// <summary>
+        /// 杈撳叆鏉′欢鍒楄〃鍖哄煙鐣岄潰
+        /// </summary>
+        VerticalScrolViewLayout inputTargetView;
+        /// <summary>
+        /// 鍛婅鐩爣鍒楄〃鍖哄煙鐣岄潰
+        /// </summary>
+        VerticalScrolViewLayout outputTargetView;
+
+
+        SecurityAlarm securityAlarm;
+        Action refreshAction;
+
+        public AddAlarmDeploymentPage(SecurityAlarm alarm, Action action)
+        {
+            bodyView = this;
+            securityAlarm = alarm;
+            refreshAction = action;
+        }
+
+        public void LoadPage()
+        {
+            new TopViewDiv(bodyView, Language.StringByID(StringId.Setting)).LoadTopView();
+
+            bodyView.BackgroundColor = CSS_Color.BackgroundColor;
+
+            contentView = new VerticalScrolViewLayout()
+            {
+                Y = Application.GetRealHeight(64),
+                Height = Application.GetRealHeight(527),
+            };
+            bodyView.AddChidren(contentView);
+
+            #region 甯冮槻淇℃伅
+            var deploymentTitleRow = new FrameLayout()
+            {
+                Height = Application.GetRealHeight(44),
+                BackgroundColor = CSS_Color.MainBackgroundColor,
+            };
+            contentView.AddChidren(deploymentTitleRow);
+
+            var btnDeploymentTitle = new Button()
+            {
+                X = Application.GetRealWidth(16),
+                TextColor = CSS_Color.MainColor,
+                TextAlignment = TextAlignment.CenterLeft,
+                TextSize = CSS_FontSize.SubheadingFontSize,
+                TextID = StringId.DeploymentInformation,
+                IsBold = true,
+            };
+            deploymentTitleRow.AddChidren(btnDeploymentTitle);
+
+            deploymentTitleRow.AddChidren(new Button() { Gravity = Gravity.CenterHorizontal, Y = Application.GetRealHeight(43), Height = 1, BackgroundColor = CSS_Color.DividingLineColor });
+
+            #region 甯冮槻鍚嶇О
+            var deploymentNameRow = new FrameLayout()
+            {
+                Height = Application.GetRealHeight(50),
+                BackgroundColor = CSS_Color.MainBackgroundColor,
+            };
+            contentView.AddChidren(deploymentNameRow);
+
+            var btnDeploymentNameTitle = new Button()
+            {
+                X = Application.GetRealWidth(16),
+                Width = Application.GetRealWidth(72),
+                TextAlignment = TextAlignment.CenterLeft,
+                TextColor = CSS_Color.FirstLevelTitleColor,
+                TextSize = CSS_FontSize.TextFontSize,
+                TextID = StringId.Name,
+            };
+            deploymentNameRow.AddChidren(btnDeploymentNameTitle);
+            btnDeploymentNameTitle.Text += ":";
+
+            var btnDeploymentName = new Button()
+            {
+                X = Application.GetRealWidth(88),
+                Width = Application.GetRealWidth(230),
+                TextAlignment = TextAlignment.CenterLeft,
+                TextColor = CSS_Color.TextualColor,
+                TextSize = CSS_FontSize.TextFontSize,
+                Text = securityAlarm.name
+            };
+            deploymentNameRow.AddChidren(btnDeploymentName);
+            deploymentNameRow.AddChidren(new Button() { Gravity = Gravity.CenterHorizontal, Y = Application.GetRealHeight(49), Height = 1, BackgroundColor = CSS_Color.DividingLineColor });
+
+            LoadEvent_EditSecurityAlarmName(btnDeploymentName);
+            #endregion
+
+            /*
+            #region 瑙﹀彂寤舵椂
+            var delayedRow = new FrameLayout()
+            {
+                Height = Application.GetRealHeight(50),
+                BackgroundColor = CSS_Color.MainBackgroundColor,
+            };
+            contentView.AddChidren(delayedRow);
+
+            var btnDelayedTitle = new Button()
+            {
+                X = Application.GetRealWidth(16),
+                Width = Application.GetRealWidth(72),
+                TextAlignment = TextAlignment.CenterLeft,
+                TextColor = CSS_Color.FirstLevelTitleColor,
+                TextSize = CSS_FontSize.TextFontSize,
+                TextID = StringId.TriggerDelay,
+            };
+            delayedRow.AddChidren(btnDelayedTitle);
+            btnDelayedTitle.Text += ":";
+
+            var btnDelayedText = new Button()
+            {
+                X = Application.GetRealWidth(88),
+                Width = Application.GetRealWidth(230),
+                TextAlignment = TextAlignment.CenterLeft,
+                TextColor = CSS_Color.TextualColor,
+                TextSize = CSS_FontSize.TextFontSize,
+                Text = securityAlarm.name
+            };
+            delayedRow.AddChidren(btnDelayedText);
+
+            var btnDelayedRight = new Button()
+            {
+                X = Application.GetRealWidth(343),
+                Gravity = Gravity.CenterVertical,
+                Width = Application.GetMinRealAverage(16),
+                Height = Application.GetMinRealAverage(16),
+                UnSelectedImagePath = "Public/RightIcon.png",
+            };
+            delayedRow.AddChidren(btnDelayedRight);
+
+            //delayedRow.AddChidren(new Button() { Gravity = Gravity.CenterHorizontal, Y = Application.GetRealHeight(49), Height = 1, BackgroundColor = CSS_Color.DividingLineColor });
+            #endregion
+            */
+
+            #endregion
+            contentView.AddChidren(new Button() { Height = Application.GetRealHeight(8), BackgroundColor = CSS_Color.BackgroundColor });
+
+            //甯冮槻鍔熻兘
+            iniDefenseView();
+            //鍛婅鐩爣
+            iniAlarmView();
+
+            #region 搴曢儴鍖哄煙
+            var bottomView = new FrameLayout()
+            {
+                Y = Application.GetRealHeight(591),
+                Height = Application.GetRealHeight(100),
+                BackgroundColor = CSS_Color.MainBackgroundColor,
+                Radius = (uint)Application.GetRealWidth(22),
+            };
+            this.AddChidren(bottomView);
+
+            var btnConfrim = new Button()
+            {
+                X = Application.GetRealWidth(78),
+                Y = Application.GetRealHeight(12),
+                Width = Application.GetRealWidth(220),
+                Height = Application.GetRealWidth(44),
+                Radius = (uint)Application.GetRealWidth(22),
+                BackgroundColor = CSS_Color.MainColor,
+                TextID = StringId.Confirm,
+                TextSize = CSS_FontSize.SubheadingFontSize,
+                TextColor = CSS_Color.MainBackgroundColor,
+                TextAlignment = TextAlignment.Center,
+            };
+            bottomView.AddChidren(btnConfrim);
+
+            btnConfrim.MouseUpEventHandler = (sender, e) =>
+            {
+                if (securityAlarm.input.Count == 0)
+                {
+                    var tip = new Tip()
+                    {
+                        Text = "璇烽�夋嫨甯冮槻鐩爣",
+                        CloseTime = 3,
+                        Direction = AMPopTipDirection.None
+                    };
+                    tip.Show(MainPage.BaseView);
+                    return;
+                }
+                if (securityAlarm.output.Count == 0)
+                {
+                    var tip = new Tip()
+                    {
+                        Text = "璇烽�夋嫨鍛婅鐩爣",
+                        CloseTime = 3,
+                        Direction = AMPopTipDirection.None
+                    };
+                    tip.Show(MainPage.BaseView);
+
+                    return;
+                }
+
+                var waitPage = new Loading();
+                waitPage.Start();
+                new System.Threading.Thread(() =>
+                {
+                    try
+                    {
+                        var code = securityAlarm.SaveInfo();
+                        if (code == StateCode.SUCCESS)
+                        {
+                            SecurityCenter.Security.GetSecurityAlarmList();
+                            Application.RunOnMainThread(() =>
+                            {
+                                this.RemoveFromParent();
+                                refreshAction?.Invoke();
+                            });
+                        }
+                        else
+                        {
+                            Application.RunOnMainThread(() =>
+                            {
+                                IMessageCommon.Current.ShowErrorInfoAlter(code);
+                            });
+                        }
+                    }
+                    catch { }
+                    finally
+                    {
+                        Application.RunOnMainThread(() => {
+                            waitPage.Hide();
+                        });
+                    }
+                })
+                { IsBackground = true }.Start();
+            };
+            #endregion
+
+        }
+
+        /// <summary>
+        /// 鍒濆鍖栭儴鍒嗗姛鑳藉尯鍩�
+        /// </summary>
+        private void iniDefenseView()
+        {
+
+            #region 甯冮槻鍔熻兘
+            var deploymentFunctionRow = new FrameLayout()
+            {
+                Height = Application.GetRealHeight(44),
+                BackgroundColor = CSS_Color.MainBackgroundColor,
+            };
+            contentView.AddChidren(deploymentFunctionRow);
+
+            var btnFunctionTitle = new Button()
+            {
+                X = Application.GetRealWidth(16),
+                TextColor = CSS_Color.MainColor,
+                TextAlignment = TextAlignment.CenterLeft,
+                TextSize = CSS_FontSize.SubheadingFontSize,
+                TextID = StringId.DefenseFunctionArmState,
+                IsBold = true,
+            };
+            deploymentFunctionRow.AddChidren(btnFunctionTitle);
+
+            var btnAddTarget = new Button()
+            {
+                X = Application.GetRealWidth(337),
+                Y = Application.GetRealHeight(6),
+                Width = Application.GetRealWidth(32),
+                Height = Application.GetRealWidth(32),
+                UnSelectedImagePath = "FunctionIcon/ArmCenter/AddTargetIcon.png",
+            };
+            deploymentFunctionRow.AddChidren(btnAddTarget);
+            ///娣诲姞杈撳叆鐩爣
+            btnAddTarget.MouseUpEventHandler = (sender, e) => {
+                Action<SecurityAlarm> action = (outTemp) => {
+                    securityAlarm = outTemp;
+                    iniInputTargetView();
+                };
+                var page = new AddInputPage(securityAlarm, action);
+                MainPage.BasePageView.AddChidren(page);
+                page.LoadPage();
+                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+            };
+
+            deploymentFunctionRow.AddChidren(new Button() { Gravity = Gravity.CenterHorizontal, Y = Application.GetRealHeight(43), Height = 1, BackgroundColor = CSS_Color.DividingLineColor });
+
+            inputTargetView = new VerticalScrolViewLayout()
+            {
+                ScrollEnabled = false,
+            };
+            contentView.AddChidren(inputTargetView);
+
+            iniInputTargetView();
+
+            #endregion
+            contentView.AddChidren(new Button() { Height = Application.GetRealHeight(8), BackgroundColor = CSS_Color.BackgroundColor });
+
+        }
+
+        /// <summary>
+        /// 鍒濆鍖栬緭鍏ユ潯浠跺尯鍩熺晫闈�
+        /// </summary>
+        /// <param name=""></param>
+        private void iniInputTargetView()
+        {
+            inputTargetView.RemoveAll();
+            if (securityAlarm.input.Count > 0)
+            {
+                foreach (var target in securityAlarm.input)
+                {
+                    inputTargetView.AddChidren(new InputRow(target.GetFunction().name, target.GetFunction().GetRoomListName(),target.StateText()));
+                }
+                inputTargetView.Height = Application.GetRealHeight(65 * securityAlarm.input.Count);
+                //if (outputTargetView != null)
+                //{
+                //    contentView.AddChidren(outputTargetView);
+                //}
+            }
+            else
+            {
+                inputTargetView.AddChidren(new Button()
+                {
+                    Height = Application.GetRealHeight(65),
+                    TextAlignment = TextAlignment.Center,
+                    TextSize = CSS_FontSize.TextFontSize,
+                    TextColor = CSS_Color.PromptingColor1,
+                    TextID = StringId.ThereIsNoAssociatedTaskDeploymentStatus,
+                    IsMoreLines = true,
+                    BackgroundColor = CSS_Color.MainBackgroundColor,
+                });
+
+                inputTargetView.Height = Application.GetRealHeight(68);
+                //if(outputTargetView!= null)
+                //{
+                //    contentView.AddChidren(outputTargetView);
+                //}
+            }
+
+
+        }
+
+        /// <summary>
+        /// 鍒濆鍖栧憡璀︾洰鏍囧尯鍩�
+        /// </summary>
+        private void iniAlarmView()
+        {
+            #region 鍛婅鐩爣
+            var outputRow = new FrameLayout()
+            {
+                Height = Application.GetRealHeight(44),
+                BackgroundColor = CSS_Color.MainBackgroundColor,
+            };
+            contentView.AddChidren(outputRow);
+
+            var btnOutputRowTitle = new Button()
+            {
+                X = Application.GetRealWidth(16),
+                TextColor = CSS_Color.MainColor,
+                TextAlignment = TextAlignment.CenterLeft,
+                TextSize = CSS_FontSize.SubheadingFontSize,
+                TextID = StringId.AlarmTargetAfterTriggering,
+                IsBold = true,
+            };
+            outputRow.AddChidren(btnOutputRowTitle);
+
+            var btnAddOutTarget = new Button()
+            {
+                X = Application.GetRealWidth(337),
+                Y = Application.GetRealHeight(6),
+                Width = Application.GetRealWidth(32),
+                Height = Application.GetRealWidth(32),
+                UnSelectedImagePath = "FunctionIcon/ArmCenter/AddTargetIcon.png",
+            };
+            outputRow.AddChidren(btnAddOutTarget);
+
+            btnAddOutTarget.MouseUpEventHandler = (sender, e) => {
+                Action<SecurityAlarm> action = (outTemp) => {
+                    securityAlarm = outTemp;
+                    iniAlarmListView();
+                };
+                var page = new AddOutputPage(securityAlarm, action);
+                MainPage.BasePageView.AddChidren(page);
+                page.LoadPage();
+                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+            };
+
+            outputRow.AddChidren(new Button() { Gravity = Gravity.CenterHorizontal, Y = Application.GetRealHeight(43), Height = 1, BackgroundColor = CSS_Color.DividingLineColor });
+
+
+            outputTargetView = new VerticalScrolViewLayout()
+            {
+                ScrollEnabled = false,
+            };
+            contentView.AddChidren(outputTargetView);
+
+            iniAlarmListView();
+
+            #endregion
+            contentView.AddChidren(new Button() { Height = Application.GetRealHeight(8), BackgroundColor = CSS_Color.BackgroundColor });
+
+        }
+
+        /// <summary>
+        /// 鍒濆鍖栧憡璀﹀垪琛ㄥ尯鍩�
+        /// </summary>
+        private void iniAlarmListView()
+        {
+            outputTargetView.RemoveAll();
+            if (securityAlarm.output.Count > 0)
+            {
+                foreach (var outTarget in securityAlarm.output)
+                {
+                    outputTargetView.AddChidren(new OutputRow(outTarget.GetFunction().name, outTarget.GetFunction().GetRoomListName(), "鎵撳紑"));
+                }
+                outputTargetView.Height = Application.GetRealHeight(65 * securityAlarm.output.Count);
+            }
+            else
+            {
+                outputTargetView.AddChidren(new Button()
+                {
+                    Height = Application.GetRealHeight(65),
+                    TextAlignment = TextAlignment.Center,
+                    TextSize = CSS_FontSize.TextFontSize,
+                    TextColor = CSS_Color.PromptingColor1,
+                    TextID = StringId.ThereIsNoAssociatedTaskDeploymentStatus,
+                    IsMoreLines = true,
+                    BackgroundColor = CSS_Color.MainBackgroundColor,
+                });
+            }
+        }
+
+
+        /// <summary>
+        /// 淇敼瀹夐槻鍚嶇О
+        /// </summary>
+        void LoadEvent_EditSecurityAlarmName(Button btnDeploymentName)
+        {
+            EventHandler<MouseEventArgs> eventHandler = (sender, e) =>
+            {
+                Action<string> callBack = (str) =>
+                {
+                    //鍚嶇О涓嶈兘涓虹┖
+                    if (string.IsNullOrEmpty(str))
+                    {
+                        new Tip()
+                        {
+                            CloseTime = 1,
+                            Text = Language.StringByID(StringId.NameCannotBeEmpty),
+                            Direction = AMPopTipDirection.None,
+                        }.Show(bodyView);
+                        return;
+                    }
+
+
+                    btnDeploymentName.Text = securityAlarm.name = str;
+
+                };
+                new PublicAssmebly().LoadDialog_EditParater(StringId.Name, securityAlarm.name, callBack, StringId.NameCannotBeEmpty, 0, new List<string>());
+            };
+            btnDeploymentName.MouseUpEventHandler = eventHandler;
+        }
+
+        /// <summary>
+        /// 娣诲姞瀹夐槻
+        /// </summary>
+        void LoadEvent_AddDefense()
+        {
+            var responsePack = new HttpServerRequest().AddSecurity(new List<SecurityAlarm>() { securityAlarm});
+            if (responsePack.Code == StateCode.SUCCESS)
+            {
+                Application.RunOnMainThread(() =>
+                {
+                    this.RemoveFromParent();
+                });
+            }
+            else
+            {
+                IMessageCommon.Current.ShowErrorInfoAlter(responsePack.Code);
+            }
+        }
+
+    }
+
+    /// <summary>
+    /// 杈撳叆鏉′欢琛屾帶浠�
+    /// </summary>
+    public class InputRow : RowLayout
+    {
+        Button btnTitle;
+
+        Button btnSubTitle;
+
+        public InputRow(string title, string subtitle,string state)
+        {
+            this.LineColor = 0x00000000;
+            this.Height = Application.GetRealHeight(65);
+            this.BackgroundColor = CSS_Color.MainBackgroundColor;
+
+            btnTitle = new Button()
+            {
+                X = Application.GetRealWidth(16),
+                Height = Application.GetRealHeight(44),
+                Width = Application.GetRealWidth(320),
+                Text = title,
+                TextAlignment = TextAlignment.CenterLeft,
+                TextColor = CSS_Color.FirstLevelTitleColor,
+                TextSize = CSS_FontSize.TextFontSize,
+            };
+            this.AddChidren(btnTitle);
+
+            btnSubTitle = new Button()
+            {
+                X = Application.GetRealWidth(16),
+                Y = Application.GetRealHeight(24),
+                Height = Application.GetRealHeight(44),
+                Width = Application.GetRealWidth(320),
+                Text = subtitle,
+                TextAlignment = TextAlignment.CenterLeft,
+                TextColor = CSS_Color.PromptingColor1,
+                TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
+            };
+            this.AddChidren(btnSubTitle);
+
+
+            Button btnState = new Button()
+            {
+                Width = Application.GetRealWidth(369),
+                TextAlignment = TextAlignment.CenterRight,
+                TextSize = CSS_FontSize.TextFontSize,
+                TextColor = CSS_Color.FirstLevelTitleColor,
+                Text = state
+            };
+            this.AddChidren(btnState);
+
+
+        }
+
+        public void SetClickEvent(EventHandler<MouseEventArgs> eventHandler)
+        {
+            this.MouseUpEventHandler = eventHandler;
+            btnTitle.MouseUpEventHandler = eventHandler;
+            btnSubTitle.MouseUpEventHandler = eventHandler;
+        }
+    }
+
+    /// <summary>
+    /// 杈撳嚭鏉′欢鎺т欢
+    /// </summary>
+    public class OutputRow : RowLayout
+    {
+        Button btnTitle;
+
+        Button btnSubTitle;
+
+        Button btnState;
+
+        Button btnRightIcon;
+
+        public OutputRow(string title, string subtitle, string state)
+        {
+            this.LineColor = 0x00000000;
+            this.Height = Application.GetRealHeight(65);
+            this.BackgroundColor = CSS_Color.MainBackgroundColor;
+
+            btnTitle = new Button()
+            {
+                X = Application.GetRealWidth(16),
+                Height = Application.GetRealHeight(44),
+                Width = Application.GetRealWidth(320),
+                Text = title,
+                TextAlignment = TextAlignment.CenterLeft,
+                TextColor = CSS_Color.FirstLevelTitleColor,
+                TextSize = CSS_FontSize.TextFontSize,
+            };
+            this.AddChidren(btnTitle);
+
+            btnSubTitle = new Button()
+            {
+                X = Application.GetRealWidth(16),
+                Y = Application.GetRealHeight(24),
+                Height = Application.GetRealHeight(44),
+                Width = Application.GetRealWidth(320),
+                Text = subtitle,
+                TextAlignment = TextAlignment.CenterLeft,
+                TextColor = CSS_Color.PromptingColor1,
+                TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
+            };
+            this.AddChidren(btnSubTitle);
+
+            btnState = new Button()
+            {
+                Width = Application.GetRealWidth(323),
+                TextAlignment = TextAlignment.CenterRight,
+                TextSize = CSS_FontSize.TextFontSize,
+                TextColor = CSS_Color.PromptingColor1,
+                Text = state
+            };
+            this.AddChidren(btnState);
+
+            btnRightIcon = new Button()
+            {
+                X = Application.GetRealWidth(339),
+                Gravity = Gravity.CenterVertical,
+                Width = Application.GetRealWidth(16),
+                Height = Application.GetRealWidth(16),
+                UnSelectedImagePath = "FunctionIcon/ArmCenter/RightIcon.png",
+            };
+            this.AddChidren(btnRightIcon);
+        }
+
+        public void SetClickEvent(EventHandler<MouseEventArgs> eventHandler)
+        {
+            btnState.MouseUpEventHandler = eventHandler;
+            btnTitle.MouseUpEventHandler = eventHandler;
+            btnSubTitle.MouseUpEventHandler = eventHandler;
+        }
+    }
+}
diff --git a/HDL_ON/UI/UI2/FuntionControlView/ArmCenter/AddInputPage.cs b/HDL_ON/UI/UI2/FuntionControlView/ArmCenter/AddInputPage.cs
new file mode 100644
index 0000000..9d0a8c2
--- /dev/null
+++ b/HDL_ON/UI/UI2/FuntionControlView/ArmCenter/AddInputPage.cs
@@ -0,0 +1,388 @@
+锘縰sing System;
+using System.Collections.Generic;
+using HDL_ON.DAL.Server;
+using HDL_ON.Entity;
+using HDL_ON.UI.CSS;
+using Shared;
+
+namespace HDL_ON.UI
+{
+    public class AddInputPage : FrameLayout
+    {
+        FrameLayout bodyView;
+        VerticalScrolViewLayout functionListView;
+
+        Action<SecurityAlarm> refreshAction;
+
+        SecurityAlarm securityAlarm;
+        List<SecurityInput> inputList = new List<SecurityInput>();
+
+        public AddInputPage(SecurityAlarm alarm,Action<SecurityAlarm> action)
+        {
+            bodyView = this;
+            securityAlarm = alarm;
+            refreshAction = action;
+        }
+
+
+        /// <summary>
+        /// 鍔犺浇鐣岄潰
+        /// </summary>
+        public void LoadPage()
+        {
+            bodyView.BackgroundColor = CSS_Color.BackgroundColor;
+            new TopViewDiv(bodyView, Language.StringByID(StringId.AddDefenseFunction)).LoadTopView();
+
+            #region 鏄剧ず鐨勫姛鑳界被鍨嬪垏鎹㈠尯鍩�
+            var showdFunctionTypeRow = new FrameLayout()
+            {
+                Y = Application.GetRealHeight(64),
+                Height = Application.GetRealHeight(53),
+                BackgroundColor = CSS_Color.MainBackgroundColor,
+            };
+            bodyView.AddChidren(showdFunctionTypeRow);
+
+
+            var btnFloorDownIcon = new Button()
+            {
+                Width = Application.GetMinRealAverage(16),
+                Height = Application.GetMinRealAverage(16),
+                X = Application.GetRealWidth(16),
+                Y = Application.GetRealHeight(18),
+                UnSelectedImagePath = "Public/DownIcon.png",
+            };
+            showdFunctionTypeRow.AddChidren(btnFloorDownIcon);
+
+            var btnFloor = new Button()
+            {
+                X = btnFloorDownIcon.Right,
+                Y = Application.GetRealHeight(18),
+                Width = Application.GetRealWidth(200),
+                Height = Application.GetMinRealAverage(16),
+                TextColor = CSS_Color.FirstLevelTitleColor,
+                TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
+                TextAlignment = TextAlignment.CenterLeft,
+                Text = DB_ResidenceData.Instance.CurFloor.roomName,
+            };
+            showdFunctionTypeRow.AddChidren(btnFloor);
+            btnFloor.MouseUpEventHandler += (sender, e) =>
+            {
+                string nowSelectId = null;
+                var listAllFun = FunctionList.List.GetArmSensorList();
+
+                //鏄剧ず涓嬫媺鐣岄潰
+                var form = new FloorRoomSelectPopupView();
+                form.ShowDeviceFunctionView(btnFloor, listAllFun, (selectId, listFun) =>
+                {
+                    nowSelectId = selectId;
+                    //閲嶆柊鍒锋柊璁惧鍒楄〃
+                    this.LoadFunctionListRow(listFun);
+                }, nowSelectId);
+            };
+
+
+            #endregion
+
+            functionListView = new VerticalScrolViewLayout()
+            {
+                Y = showdFunctionTypeRow.Bottom,
+                Height = Application.GetRealHeight(530),
+                BackgroundColor = CSS_Color.BackgroundColor,
+            };
+            bodyView.AddChidren(functionListView);
+
+
+
+            LoadFunctionListRow(FunctionList.List.GetArmSensorList());
+
+
+
+            var bottomView = new FrameLayout()
+            {
+                Y = Application.GetRealHeight(591),
+                Height = Application.GetRealHeight(100),
+                BackgroundColor = CSS_Color.MainBackgroundColor,
+                Radius = (uint)Application.GetRealWidth(22),
+            };
+            this.AddChidren(bottomView);
+
+            var btnConfrim = new Button()
+            {
+                X = Application.GetRealWidth(78),
+                Y = Application.GetRealHeight(12),
+                Width = Application.GetRealWidth(220),
+                Height = Application.GetRealWidth(44),
+                Radius = (uint)Application.GetRealWidth(22),
+                BackgroundColor = CSS_Color.MainColor,
+                TextID = StringId.Confirm,
+                TextSize = CSS_FontSize.SubheadingFontSize,
+                TextColor = CSS_Color.MainBackgroundColor,
+                TextAlignment = TextAlignment.Center,
+            };
+            bottomView.AddChidren(btnConfrim);
+            btnConfrim.MouseUpEventHandler = (sender, e) =>
+            {
+                securityAlarm.input = new List<SecurityInput>();
+                foreach (var input in inputList)
+                {
+                    if (input.addCondition)
+                    {
+                        securityAlarm.input.Add(input);
+                    }
+                }
+                this.RemoveFromParent();
+                refreshAction?.Invoke(securityAlarm);
+            };
+
+            
+
+        }
+
+
+        // <summary>
+        /// 鏄剧ず鍔熻兘Row
+        /// </summary>
+        void LoadFunctionListRow(List<Function> functions)
+        {
+            functionListView.RemoveAll();
+            if (functions == null)
+            {
+                //鍒濆鍊�
+                functions = FunctionList.List.GetArmSensorList();
+            }
+            foreach (var function in functions)
+            {
+                var input = securityAlarm.input.Find((obj) => obj.sid == function.sid);
+                if (input == null)
+                {
+                    input = new SecurityInput();
+                    input.sid = function.sid;
+                }
+                else
+                {
+                    input.addCondition = true;
+                }
+                inputList.Add(input);
+
+                FrameLayout functionRow = new FrameLayout()
+                {
+                    Height = Application.GetRealHeight(65),
+                    BackgroundColor = CSS_Color.MainBackgroundColor,
+                };
+                functionListView.AddChidren(functionRow);
+
+                var btnFunctionName = new Button()
+                {
+                    X = Application.GetRealWidth(16),
+                    Width = Application.GetRealWidth(200),
+                    Height = Application.GetRealHeight(44),
+                    Text = function.name,
+                    TextAlignment = TextAlignment.CenterLeft,
+                    TextColor = CSS_Color.FirstLevelTitleColor,
+                    TextSize = CSS_FontSize.TextFontSize,
+                };
+                functionRow.AddChidren(btnFunctionName);
+
+                var btnFunctionFloorName = new Button()
+                {
+                    X = Application.GetRealWidth(16),
+                    Y = Application.GetRealHeight(24),
+                    Width = Application.GetRealWidth(200),
+                    Height = Application.GetRealHeight(41),
+                    Text = function.GetRoomListName(),
+                    TextAlignment = TextAlignment.CenterLeft,
+                    TextColor = CSS_Color.PromptingColor1,
+                    TextSize = CSS_FontSize.PromptFontSize_SecondaryLevel,
+                };
+                functionRow.AddChidren(btnFunctionFloorName);
+
+                Button btnState = new Button()
+                {
+                    Width = Application.GetRealWidth(317),
+                    TextAlignment = TextAlignment.CenterRight,
+                    TextSize = CSS_FontSize.TextFontSize,
+                    TextColor = CSS_Color.PromptingColor1,
+                };
+                functionRow.AddChidren(btnState);
+
+
+                Button btnChooseIcon = new Button()
+                {
+                    X = Application.GetRealWidth(333),
+                    Gravity = Gravity.CenterVertical,
+                    Width = Application.GetMinRealAverage(32),
+                    Height = Application.GetMinRealAverage(32),
+                    UnSelectedImagePath = "Public/ChooseIcon.png",
+                    SelectedImagePath = "Public/ChooseOnIcon.png",
+                };
+                functionRow.AddChidren(btnChooseIcon);
+
+                btnChooseIcon.MouseUpEventHandler = (sender, e) => {
+                    btnChooseIcon.IsSelected = !btnChooseIcon.IsSelected;
+                    if(btnChooseIcon.IsSelected)
+                    {
+                        input.addCondition = true;
+                        if (input.condition.Count==0)
+                        {
+                            ShowStateDialog(input, btnState,btnChooseIcon);
+                        }
+                    }
+                    else
+                    {
+                        input.addCondition = false;
+                    }
+                };
+                btnState.MouseUpEventHandler = (sender, e) =>
+                {
+                    ShowStateDialog(input, btnState, btnChooseIcon);
+                };
+
+
+                if (input.addCondition)
+                {
+                    btnChooseIcon.IsSelected = true;
+                    btnState.Text = input.StateText();
+                }
+
+
+                functionListView.AddChidren(new Button()
+                {
+                    Gravity = Gravity.CenterHorizontal,
+                    Width = Application.GetRealWidth(343),
+                    Height = Application.GetRealWidth(1),
+                    BackgroundColor = CSS_Color.DividingLineColor,
+                });
+
+
+            }
+        }
+
+
+        private void ShowStateDialog(SecurityInput input,Button btnState,Button btnChoose = null)
+        {
+            Dialog dialog = new Dialog();
+
+            FrameLayout contentView = new FrameLayout();
+            dialog.AddChidren(contentView);
+            contentView.MouseUpEventHandler = (sender, e) =>
+            {
+                dialog.Close();
+                if (input.condition.Count == 0)
+                {
+                    if (btnChoose != null)
+                    {
+                        btnChoose.IsSelected = false;
+                    }
+                }
+            };
+
+            VerticalScrolViewLayout optinView = new VerticalScrolViewLayout()
+            {
+                Gravity = Gravity.CenterHorizontal,
+                Y = Application.GetRealHeight(515),
+                Width = Application.GetRealWidth(343),
+                Height = Application.GetRealHeight(88),
+                Radius = (uint)Application.GetRealHeight(13),
+                BackgroundColor = CSS_Color.MainBackgroundColor,
+            };
+            contentView.AddChidren(optinView);
+
+            Button btnOpen = new Button()
+            {
+                Height = Application.GetRealHeight(44),
+                TextAlignment = TextAlignment.Center,
+                TextColor = CSS_Color.MainColor,
+                TextSize = CSS_FontSize.SubheadingFontSize,
+                Text = input.GetStateText("true")
+            };
+            optinView.AddChidren(btnOpen);
+
+            optinView.AddChidren(new Button()
+            {
+                Height = 1,
+                BackgroundColor = CSS_Color.DividingLineColor
+            });
+
+            Button btnClose = new Button()
+            {
+                Height = Application.GetRealHeight(44),
+                TextAlignment = TextAlignment.Center,
+                TextColor = CSS_Color.PromptingColor1,
+                Text = input.GetStateText("false"),
+                TextSize = CSS_FontSize.SubheadingFontSize,
+            };
+            optinView.AddChidren(btnClose);
+
+
+            Button btnCancel = new Button()
+            {
+                Gravity = Gravity.CenterHorizontal,
+                Y = optinView.Bottom + Application.GetRealHeight(8),
+                Width = Application.GetRealWidth(343),
+                Height = Application.GetRealHeight(44),
+                Radius = (uint)Application.GetRealHeight(13),
+                BackgroundColor = CSS_Color.MainBackgroundColor,
+                TextID = StringId.Cancel,
+                TextColor = CSS_Color.WarningColor,
+                IsBold = true,
+            };
+            contentView.AddChidren(btnCancel);
+
+            dialog.Show();
+
+            btnOpen.MouseUpEventHandler = (sender, e) => {
+                btnState.Text = btnOpen.Text;
+                input.condition = new List<SecurityInputCondition>()
+                {
+                    new SecurityInputCondition()
+                    {
+                        key = "status",
+                        value = "true",
+                    }
+                };
+                input.addCondition = true;
+                if (btnChoose != null)
+                {
+                    btnChoose.IsSelected = true;
+                }
+                dialog.Close();
+            };
+
+            btnClose.MouseUpEventHandler = (sender, e) =>
+            {
+                btnState.Text = btnClose.Text;
+                input.condition = new List<SecurityInputCondition>()
+                {
+                    new SecurityInputCondition()
+                    {
+                        key = "status",
+                        value = "false",
+                    }
+                };
+                input.addCondition = true;
+                if (btnChoose != null)
+                {
+                    btnChoose.IsSelected = true;
+                }
+                dialog.Close();
+            };
+
+            btnCancel.MouseUpEventHandler = (sender, e) =>
+            {
+                dialog.Close();
+                if (input.condition.Count == 0)
+                {
+                    if (btnChoose != null)
+                    {
+                        btnChoose.IsSelected = false;
+                    }
+                }
+
+            };
+
+        }
+
+
+    }
+
+}
\ No newline at end of file
diff --git a/HDL_ON/UI/UI2/FuntionControlView/ArmCenter/AddOutputPage.cs b/HDL_ON/UI/UI2/FuntionControlView/ArmCenter/AddOutputPage.cs
new file mode 100644
index 0000000..9aac9de
--- /dev/null
+++ b/HDL_ON/UI/UI2/FuntionControlView/ArmCenter/AddOutputPage.cs
@@ -0,0 +1,441 @@
+锘縰sing System;
+using Shared;
+using System.Text.RegularExpressions;
+using System.Collections.Generic;
+using HDL_ON.Entity;
+using HDL_ON.UI.CSS;
+
+namespace HDL_ON.UI
+{
+    public class AddOutputPage : FrameLayout
+    {
+        FrameLayout bodyView;
+
+        FrameLayout showdFunctionTypeRow;
+
+        /// <summary>
+        /// 妤煎眰閫夋嫨涓嬫媺鍥炬爣
+        /// </summary>
+        Button btnFloorDownIcon;
+        /// <summary>
+        /// 妤煎眰鏄剧ず
+        /// </summary>
+        Button btnFloor;
+
+        /// <summary>
+        /// 绛涢�夋枃鏈樉绀�
+        /// </summary>
+        Button btnScreenText;
+
+        VerticalScrolViewLayout functionListView;
+
+        SecurityAlarm securityAlarm;
+        Action<SecurityAlarm> refreshAction;
+        List<SecurityOutput> outputList = new List<SecurityOutput>();
+
+        List<Function> allocatedList = new List<Function>();
+
+        public AddOutputPage(SecurityAlarm function, Action<SecurityAlarm> action)
+        {
+            bodyView = this;
+            securityAlarm = function;
+            refreshAction = action;
+        }
+
+
+        /// <summary>
+        /// 鍔犺浇鐣岄潰
+        /// </summary>
+        public void LoadPage()
+        {
+            bodyView.BackgroundColor = CSS_Color.BackgroundColor;
+            new TopViewDiv(bodyView, Language.StringByID(StringId.AddFunction)).LoadTopView();
+
+            #region 鏄剧ず鐨勫姛鑳界被鍨嬪垏鎹㈠尯鍩�
+            showdFunctionTypeRow = new FrameLayout()
+            {
+                Y = Application.GetRealHeight(64),
+                Height = Application.GetRealHeight(62),
+                BackgroundColor = CSS_Color.MainBackgroundColor,
+            };
+            bodyView.AddChidren(showdFunctionTypeRow);
+
+
+            btnFloorDownIcon = new Button()
+            {
+                Width = Application.GetMinRealAverage(16),
+                Height = Application.GetMinRealAverage(16),
+                X = Application.GetRealWidth(16),
+                Y = Application.GetRealHeight(18),
+                UnSelectedImagePath = "Public/DownIcon.png",
+            };
+            showdFunctionTypeRow.AddChidren(btnFloorDownIcon);
+
+            btnFloor = new Button()
+            {
+                X = btnFloorDownIcon.Right,
+                Y = Application.GetRealHeight(18),
+                Width = Application.GetRealWidth(200),
+                Height = Application.GetMinRealAverage(16),
+                TextColor = CSS_Color.FirstLevelTitleColor,
+                TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
+                TextAlignment = TextAlignment.CenterLeft,
+                Text = DB_ResidenceData.Instance.CurFloor.roomName,
+            };
+            showdFunctionTypeRow.AddChidren(btnFloor);
+
+            #endregion
+
+            functionListView = new VerticalScrolViewLayout()
+            {
+                Y = showdFunctionTypeRow.Bottom,
+                Height = Application.GetRealHeight(530 -100),
+                BackgroundColor = CSS_Color.BackgroundColor,
+            };
+            bodyView.AddChidren(functionListView);
+
+
+
+
+
+
+            foreach (var function in FunctionList.List.Functions)
+            {
+                if (!MainPage.SceneSupportFunctionList.Contains(function.spk))
+                {
+                    continue;
+                }
+                if (function == null)
+                {
+                    continue;
+                }
+                function.roomIds.Remove(null);
+                    allocatedList.Add(function);
+            }
+
+            LoadFunctionListRow(null);
+
+
+
+
+
+
+
+            var bottomView = new FrameLayout()
+            {
+                Y = Application.GetRealHeight(591),
+                Height = Application.GetRealHeight(100),
+                BackgroundColor = CSS_Color.MainBackgroundColor,
+                Radius = (uint)Application.GetRealWidth(22),
+            };
+            this.AddChidren(bottomView);
+
+            var btnConfrim = new Button()
+            {
+                X = Application.GetRealWidth(78),
+                Y = Application.GetRealHeight(12),
+                Width = Application.GetRealWidth(220),
+                Height = Application.GetRealWidth(44),
+                Radius = (uint)Application.GetRealWidth(22),
+                BackgroundColor = CSS_Color.MainColor,
+                TextID = StringId.Confirm,
+                TextSize = CSS_FontSize.SubheadingFontSize,
+                TextColor = CSS_Color.MainBackgroundColor,
+                TextAlignment = TextAlignment.Center,
+            };
+            bottomView.AddChidren(btnConfrim);
+            btnConfrim.MouseUpEventHandler = (sender, e) =>
+            {
+                securityAlarm.output = new List<SecurityOutput>();
+                foreach (var output in outputList)
+                {
+                    if (output.addCondition)
+                    {
+                        securityAlarm.output.Add(output);
+                    }
+                }
+                this.RemoveFromParent();
+                refreshAction?.Invoke(securityAlarm);
+            };
+
+
+
+
+
+
+        }
+
+
+
+
+        // <summary>
+        /// 鏄剧ず鍔熻兘Row
+        /// </summary>
+        void LoadFunctionListRow(List<Function> functions)
+        {
+            functionListView.RemoveAll();
+            if (functions == null)
+            {
+                functions = allocatedList;
+            }
+            foreach (var function in functions)
+            {
+                var output = securityAlarm.output.Find((obj) => obj.sid == function.sid);
+                if (output == null)
+                {
+                    output = new SecurityOutput();
+                    output.sid = function.sid;
+                }
+                else
+                {
+                    output.addCondition = true;
+                }
+                outputList.Add(output);
+
+                FrameLayout functionRow = new FrameLayout()
+                {
+                    Height = Application.GetRealHeight(65),
+                    BackgroundColor = CSS_Color.MainBackgroundColor,
+                };
+                functionListView.AddChidren(functionRow);
+
+                var btnFunctionName = new Button()
+                {
+                    X = Application.GetRealWidth(16),
+                    Width = Application.GetRealWidth(200),
+                    Height = Application.GetRealHeight(44),
+                    Text = function.name,
+                    TextAlignment = TextAlignment.CenterLeft,
+                    TextColor = CSS_Color.FirstLevelTitleColor,
+                    TextSize = CSS_FontSize.TextFontSize,
+                };
+                functionRow.AddChidren(btnFunctionName);
+
+                var btnFunctionFloorName = new Button()
+                {
+                    X = Application.GetRealWidth(16),
+                    Y = Application.GetRealHeight(24),
+                    Width = Application.GetRealWidth(200),
+                    Height = Application.GetRealHeight(41),
+                    Text = function.GetRoomListName(),
+                    TextAlignment = TextAlignment.CenterLeft,
+                    TextColor = CSS_Color.PromptingColor1,
+                    TextSize = CSS_FontSize.PromptFontSize_SecondaryLevel,
+                };
+                functionRow.AddChidren(btnFunctionFloorName);
+
+                Button btnState = new Button()
+                {
+                    Width = Application.GetRealWidth(317),
+                    TextAlignment = TextAlignment.CenterRight,
+                    TextSize = CSS_FontSize.TextFontSize,
+                    TextColor = CSS_Color.PromptingColor1,
+                };
+                functionRow.AddChidren(btnState);
+              
+
+                Button btnChooseIcon = new Button()
+                {
+                    X = Application.GetRealWidth(333),
+                    Gravity = Gravity.CenterVertical,
+                    Width = Application.GetMinRealAverage(32),
+                    Height = Application.GetMinRealAverage(32),
+                    UnSelectedImagePath = "Public/ChooseIcon.png",
+                    SelectedImagePath = "Public/ChooseOnIcon.png",
+                };
+                functionRow.AddChidren(btnChooseIcon);
+
+                btnChooseIcon.MouseUpEventHandler = (sender, e) => {
+                    btnChooseIcon.IsSelected = !btnChooseIcon.IsSelected;
+                    if (btnChooseIcon.IsSelected)
+                    {
+                        output.addCondition = true;
+                        if (output.status.Count == 0)
+                        {
+                            ShowStateDialog(output, btnState,btnChooseIcon);
+                        }
+                    }
+                    else
+                    {
+                        output.addCondition = false;
+                    }
+                };
+                btnState.MouseUpEventHandler = (sender, e) =>
+                {
+                    ShowStateDialog(output, btnState, btnChooseIcon);
+                };
+
+
+                if (output.addCondition)
+                {
+                    btnChooseIcon.IsSelected = true;
+                    btnState.Text = output.StateText();
+                }
+
+
+                functionListView.AddChidren(new Button()
+                {
+                    Gravity = Gravity.CenterHorizontal,
+                    Width = Application.GetRealWidth(343),
+                    Height = Application.GetRealWidth(1),
+                    BackgroundColor = CSS_Color.DividingLineColor,
+                });
+
+
+            }
+        }
+
+
+
+        private void ShowStateDialog(SecurityOutput output, Button btnState, Button btnChoose = null)
+        {
+            Dialog dialog = new Dialog();
+
+            FrameLayout contentView = new FrameLayout();
+            dialog.AddChidren(contentView);
+            contentView.MouseUpEventHandler = (sender, e) =>
+            {
+                dialog.Close();
+                if (output.status.Count == 0)
+                {
+                    if (btnChoose != null)
+                    {
+                        btnChoose.IsSelected = false;
+                    }
+                }
+            };
+
+            VerticalScrolViewLayout optinView = new VerticalScrolViewLayout()
+            {
+                Gravity = Gravity.CenterHorizontal,
+                Y = Application.GetRealHeight(515),
+                Width = Application.GetRealWidth(343),
+                Height = Application.GetRealHeight(88),
+                Radius = (uint)Application.GetRealHeight(13),
+                BackgroundColor = CSS_Color.MainBackgroundColor,
+            };
+            contentView.AddChidren(optinView);
+
+            Button btnOpen = new Button()
+            {
+                Height = Application.GetRealHeight(44),
+                TextAlignment = TextAlignment.Center,
+                TextColor = CSS_Color.MainColor,
+                TextSize = CSS_FontSize.SubheadingFontSize,
+                TextID = StringId.On
+            };
+            optinView.AddChidren(btnOpen);
+
+            optinView.AddChidren(new Button()
+            {
+                Height = 1,
+                BackgroundColor = CSS_Color.DividingLineColor
+            });
+
+            Button btnClose = new Button()
+            {
+                Height = Application.GetRealHeight(44),
+                TextAlignment = TextAlignment.Center,
+                TextColor = CSS_Color.PromptingColor1,
+                TextID = StringId.OFF,
+                TextSize = CSS_FontSize.SubheadingFontSize,
+            };
+            optinView.AddChidren(btnClose);
+
+
+            Button btnCancel = new Button()
+            {
+                Gravity = Gravity.CenterHorizontal,
+                Y = optinView.Bottom + Application.GetRealHeight(8),
+                Width = Application.GetRealWidth(343),
+                Height = Application.GetRealHeight(44),
+                Radius = (uint)Application.GetRealHeight(13),
+                BackgroundColor = CSS_Color.MainBackgroundColor,
+                TextID = StringId.Cancel,
+                TextColor = CSS_Color.WarningColor,
+                IsBold = true,
+            };
+            contentView.AddChidren(btnCancel);
+
+            dialog.Show();
+
+            btnOpen.MouseUpEventHandler = (sender, e) => {
+                btnState.Text = btnOpen.Text;
+                output.status = new List<SecurityOutputStatus>()
+                {
+                    new SecurityOutputStatus()
+                    {
+                        key = FunctionAttributeKey.OnOff,
+                        value = "on",
+                    }
+                };
+                output.addCondition = true;
+                if (btnChoose != null)
+                {
+                    btnChoose.IsSelected = true;
+                }
+                dialog.Close();
+            };
+
+            btnClose.MouseUpEventHandler = (sender, e) =>
+            {
+                btnState.Text = btnClose.Text;
+                output.status = new List<SecurityOutputStatus>()
+                {
+                    new SecurityOutputStatus()
+                    {
+                        key = FunctionAttributeKey.OnOff,
+                        value = "off",
+                    }
+                };
+                output.addCondition = true;
+                if (btnChoose != null)
+                {
+                    btnChoose.IsSelected = true;
+                }
+                dialog.Close();
+            };
+
+            btnCancel.MouseUpEventHandler = (sender, e) =>
+            {
+                dialog.Close();
+                if (output.status.Count == 0)
+                {
+                    if (btnChoose != null)
+                    {
+                        btnChoose.IsSelected = false;
+                    }
+                }
+
+            };
+
+        }
+
+
+
+
+        /// <summary>
+        /// 浣忓畢鍒楄〃鐐瑰嚮浜嬩欢
+        /// </summary>
+        void LoadDialog_ChangeFloor()
+        {
+            string nowSelectId = null;
+            btnFloor.MouseUpEventHandler += (sender, e) =>
+            {
+                var listAllFun = new List<Function>();
+                listAllFun.AddRange(allocatedList);
+
+                //鏄剧ず涓嬫媺鐣岄潰
+                var form = new FloorRoomSelectPopupView();
+                form.ShowDeviceFunctionView(btnFloor, listAllFun, (selectId, listFun) =>
+                {
+                    nowSelectId = selectId;
+                    //閲嶆柊鍒锋柊璁惧鍒楄〃
+                    this.LoadFunctionListRow(listFun);
+                }, nowSelectId);
+            };
+        }
+
+
+    }
+}
diff --git a/HDL_ON/UI/UI2/FuntionControlView/ArmCenter/AddOutputSettingPage.cs b/HDL_ON/UI/UI2/FuntionControlView/ArmCenter/AddOutputSettingPage.cs
new file mode 100644
index 0000000..5f6e9d6
--- /dev/null
+++ b/HDL_ON/UI/UI2/FuntionControlView/ArmCenter/AddOutputSettingPage.cs
@@ -0,0 +1,995 @@
+锘�//using System;
+//using System.Collections.Generic;
+//using HDL_ON.Entity;
+//using HDL_ON.UI.CSS;
+//using Shared;
+
+//namespace HDL_ON.UI
+//{
+//    public class AddOutputSettingPage : FrameLayout
+//    {
+//        FrameLayout bodyView;
+//        VerticalScrolViewLayout contentView;
+//        Button btnOnText;
+//        Button btnBrightnessText;
+
+//        SecurityAlarm securityAlarm;
+//        Function alarmFunction;
+//        Action refreshAction;
+
+
+//        List<SecurityOutput> outputList = new List<SecurityOutput>();
+
+
+//        public AddOutputSettingPage(SecurityAlarm alarm,Function function, Action action)
+//        {
+//            bodyView = this;
+//            securityAlarm = alarm;
+//            refreshAction = action;
+//            alarmFunction = function;
+//        }
+
+//        public void LoadPage()
+//        {
+//            bodyView.BackgroundColor = CSS_Color.BackgroundColor;
+
+//            new TopViewDiv(bodyView, Language.StringByID(StringId.AddAlarmTarget)).LoadTopView();
+
+//            contentView = new VerticalScrolViewLayout()
+//            {
+//                Y = Application.GetRealHeight(64),
+//                Height = Application.GetRealHeight(520),
+//                ScrollEnabled = false,
+//            };
+//            bodyView.AddChidren(contentView);
+
+//                var output = securityAlarm.output.Find((obj) => obj.sid == alarmFunction.sid);
+//            if (output == null)
+//            {
+//                output = new SecurityOutput();
+//                output.sid = alarmFunction.sid;
+//            }
+//            else
+//            {
+//                output.addCondition = true;
+//            }
+//            inputList.Add(output);
+
+//            LoadFunctionRow(alarmFunction.attributes.Find((obj) => obj.key == FunctionAttributeKey.OnOff));
+
+//            foreach (var attr in alarmFunction.attributes)
+//            {
+
+
+
+//                switch (attr.key)
+//                {
+//                    case FunctionAttributeKey.SetTemp:
+//                        LoadFunctionRow(alarmFunction.attributes.Find((obj) => obj.key == FunctionAttributeKey.SetTemp));
+//                        break;
+//                    case FunctionAttributeKey.Mode:
+
+//                        LoadFunctionRow(alarmFunction.attributes.Find((obj) => obj.key == FunctionAttributeKey.Mode));
+//                        break;
+//                    case FunctionAttributeKey.FanSpeed:
+//                        LoadFunctionRow(alarmFunction.attributes.Find((obj) => obj.key == FunctionAttributeKey.FanSpeed));
+//                        break;
+//                    case FunctionAttributeKey.Percent:
+//                        LoadFunctionRow(alarmFunction.attributes.Find((obj) => obj.key == FunctionAttributeKey.Percent));
+//                        break;
+//                    case FunctionAttributeKey.Brightness:
+//                        LoadFunctionRow(alarmFunction.attributes.Find((obj) => obj.key == FunctionAttributeKey.Brightness));
+//                        break;
+//                    case FunctionAttributeKey.FadeTime:
+//                        LoadFunctionRow(alarmFunction.attributes.Find((obj) => obj.key == FunctionAttributeKey.FadeTime));
+//                        break;
+//                }
+//            }
+
+//            var bottomView = new FrameLayout()
+//            {
+//                Y = Application.GetRealHeight(591),
+//                Height = Application.GetRealHeight(106),
+//                BackgroundColor = CSS_Color.MainBackgroundColor,
+//                Radius = (uint)Application.GetRealWidth(16),
+//            };
+//            bodyView.AddChidren(bottomView);
+
+//            var btnConfrim = new Button()
+//            {
+//                Gravity = Gravity.CenterHorizontal,
+//                Y = Application.GetRealHeight(12),
+//                Width = Application.GetRealWidth(220),
+//                Height = Application.GetRealWidth(44),
+//                TextAlignment = TextAlignment.Center,
+//                TextColor = CSS_Color.MainBackgroundColor,
+//                BackgroundColor = CSS_Color.MainColor,
+//                TextSize = CSS_FontSize.SubheadingFontSize,
+//                IsBold = true,
+//                Radius = (uint)Application.GetRealWidth(22),
+//                TextID = StringId.Complete
+//            };
+//            bottomView.AddChidren(btnConfrim);
+
+//            btnConfrim.MouseUpEventHandler = (sender, e) =>
+//            {
+//            };
+//        }
+
+
+//        /// <summary>
+//        /// 鍔犺浇鍔熻兘Row
+//        /// </summary>
+//        void LoadFunctionRow(FunctionAttributes sceneStatus)
+//        {
+//            if (sceneStatus == null)
+//                return;
+//            #region Row code
+//            var row = new FrameLayout()
+//            {
+//                Height = Application.GetRealHeight(50),
+//                BackgroundColor = CSS_Color.MainBackgroundColor,
+//            };
+//            contentView.AddChidren(row);
+
+
+//            if (sceneStatus.key != FunctionAttributeKey.OnOff)
+//            {
+//                row.AddChidren(new Button() { X = Application.GetRealWidth(16), Height = Application.GetRealHeight(1), Width = Application.GetRealWidth(343), BackgroundColor = CSS_Color.DividingLineColor });
+//            }
+//            else
+//            {
+//                if (sceneStatus.state == "stop")
+//                {
+//                    sceneStatus.state = "on";
+//                }
+//            }
+//            Button btnRight = new Button()
+//            {
+//                X = Application.GetRealWidth(339),
+//                Gravity = Gravity.CenterVertical,
+//                Width = Application.GetMinRealAverage(16),
+//                Height = Application.GetMinRealAverage(16),
+//                UnSelectedImagePath = "Public/Right.png",
+//            };
+//            row.AddChidren(btnRight);
+
+
+//            var showCode = "";
+
+//            var btnFunctionText = new Button()
+//            {
+//                Width = Application.GetRealWidth(330),
+//                TextAlignment = TextAlignment.CenterRight,
+//                TextColor = CSS_Color.PromptingColor1,
+//                TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
+//                Text = sceneFunctionStatus.GetValueText(showCode) + sceneFunctionStatus.GetUintString()
+//            };
+//            row.AddChidren(btnFunctionText);
+
+
+
+//            if (sceneStatus.key == FunctionAttributeKey.OnOff)
+//            {
+//                btnOnText = btnFunctionText;
+//            }
+//            else if (sceneStatus.key == FunctionAttributeKey.Brightness || sceneStatus.key == FunctionAttributeKey.Percent)
+//            {
+//                btnBrightnessText = btnFunctionText;
+//            }
+
+//            var btnFunctionName = new Button()
+//            {
+//                X = Application.GetRealWidth(16),
+//                TextAlignment = TextAlignment.CenterLeft,
+//                TextColor = CSS_Color.FirstLevelTitleColor,
+//                TextSize = CSS_FontSize.SubheadingFontSize,
+//                Text = sceneStatus.GetNameText()
+//            };
+//            row.AddChidren(btnFunctionName);
+//            btnFunctionName.MouseUpEventHandler = (sender, e) =>
+//            {
+//                switch (sceneStatus.key)
+//                {
+//                    case FunctionAttributeKey.OnOff:
+//                        LoadEditDialog_OnOff(sceneStatus, btnFunctionText);
+//                        break;
+//                    case FunctionAttributeKey.Brightness:
+//                        LoadEditDialog_Percent(sceneStatus, btnFunctionText);
+//                        break;
+//                    case FunctionAttributeKey.Mode:
+//                        var statusList = new List<string>();
+//                        var tr = alarmFunction.localFunction.attributes.Find((obj) => obj.key == FunctionAttributeKey.Mode);
+//                        foreach (var t in tr.value)
+//                        {
+//                            statusList.Add(t);
+//                        }
+//                        LoadEditDialog_FunctionPar(sceneStatus, btnFunctionText, statusList);
+//                        break;
+//                    case FunctionAttributeKey.FanSpeed:
+//                        var fanStatusList = new List<string>();
+//                        var tr1 = alarmFunction.localFunction.attributes.Find((obj) => obj.key == FunctionAttributeKey.FanSpeed);
+//                        foreach (var t in tr1.value)
+//                        {
+//                            fanStatusList.Add(t);
+//                        }
+//                        LoadEditDialog_FunctionPar(sceneStatus, btnFunctionText, fanStatusList);
+//                        break;
+//                    case FunctionAttributeKey.SetTemp:
+//                        LoadEditDialog_Temp(sceneStatus, btnFunctionText);
+//                        break;
+//                    case FunctionAttributeKey.FadeTime:
+
+//                        break;
+//                    case "cct":
+//                        break;
+//                    case FunctionAttributeKey.Percent:
+//                        LoadEditDialog_Percent(sceneStatus, btnFunctionText);
+//                        break;
+//                }
+//            };
+
+//            #endregion
+//        }
+
+
+
+//        #region 灞炴�ч�夋嫨寮圭獥
+//        /// <summary>
+//        /// 鍔犺浇寮�鍏抽�夋嫨寮圭獥
+//        /// </summary>
+//        /// <param name="function"></param>
+//        /// <param name="btn"></param>
+//        void LoadEditDialog_OnOff(SceneFunctionStatus trait, Button btn)
+//        {
+//            Dialog dialog = new Dialog();
+
+//            var pView = new FrameLayout()
+//            {
+//                BackgroundColor = CSS_Color.DialogTransparentColor1,
+//            };
+//            dialog.AddChidren(pView);
+
+//            var optionBaseView = new FrameLayout()
+//            {
+//                Y = Application.GetRealHeight(500),
+//                Height = Application.GetRealHeight(160),
+//                AnimateSpeed = 0.3f,
+//                Animate = Animate.DownToUp,
+//            };
+//            pView.AddChidren(optionBaseView);
+
+//            var optionView = new VerticalScrolViewLayout()
+//            {
+//                Gravity = Gravity.CenterHorizontal,
+//                Width = Application.GetRealWidth(343),
+//                Height = Application.GetRealHeight(100),
+//                BackgroundColor = CSS_Color.MainBackgroundColor,
+//                Radius = (uint)Application.GetRealWidth(12),
+//                ScrollEnabled = false,
+//            };
+//            optionBaseView.AddChidren(optionView);
+
+//            var btnOn = new Button()
+//            {
+//                Height = Application.GetRealHeight(50),
+//                TextAlignment = TextAlignment.Center,
+//                TextColor = CSS_Color.TextualColor,
+//                SelectedTextColor = CSS_Color.MainColor,
+//                TextSize = CSS_FontSize.SubheadingFontSize,
+//                TextID = StringId.On,
+//                IsSelected = trait.value.ToString() == "on"
+//            };
+//            optionView.AddChidren(btnOn);
+
+//            optionView.AddChidren(new Button() { Height = Application.GetRealHeight(1), BackgroundColor = CSS_Color.DividingLineColor });
+
+//            var btnOff = new Button()
+//            {
+//                Height = Application.GetRealHeight(50),
+//                TextAlignment = TextAlignment.Center,
+//                TextColor = CSS_Color.TextualColor,
+//                SelectedTextColor = CSS_Color.MainColor,
+//                TextSize = CSS_FontSize.SubheadingFontSize,
+//                TextID = StringId.OFF,
+//                IsSelected = trait.value.ToString() == "off"
+//            };
+//            optionView.AddChidren(btnOff);
+
+//            var btnCancel = new Button()
+//            {
+//                Gravity = Gravity.CenterHorizontal,
+//                Y = Application.GetRealHeight(8) + optionView.Bottom,
+//                Width = Application.GetRealWidth(343),
+//                Height = Application.GetRealHeight(50),
+//                BackgroundColor = CSS_Color.MainBackgroundColor,
+//                Radius = (uint)Application.GetRealWidth(12),
+//                TextID = StringId.Cancel,
+//                TextColor = CSS_Color.WarningColor,
+//                TextSize = CSS_FontSize.SubheadingFontSize,
+//            };
+//            optionBaseView.AddChidren(btnCancel);
+
+//            dialog.Show();
+
+//            pView.MouseUpEventHandler = (sender, e) => {
+//                dialog.Close();
+//            };
+
+//            btnCancel.MouseUpEventHandler = (sender, e) => {
+//                dialog.Close();
+//            };
+//            btnOn.MouseUpEventHandler = (sender, e) => {
+//                dialog.Close();
+//                trait.value = "on";
+//                alarmFunction.status.Find((obj) => obj.key == FunctionAttributeKey.OnOff).value = "on";
+//                btn.Text = trait.GetValueText() + trait.GetUintString();
+
+//                var temp = alarmFunction.status.Find((obj) => obj.key == FunctionAttributeKey.Brightness);
+//                if (temp == null)
+//                {
+//                    temp = alarmFunction.status.Find((obj) => obj.key == FunctionAttributeKey.Percent);
+//                }
+//                if (temp != null)
+//                {
+//                    if (temp.value == "0")
+//                    {
+//                        temp.value = "100";
+//                    }
+//                    btnBrightnessText.Text = temp.GetValueText() + "%";
+//                }
+//            };
+//            btnOff.MouseUpEventHandler = (sender, e) => {
+//                dialog.Close();
+//                trait.value = "off";
+//                alarmFunction.status.Find((obj) => obj.key == FunctionAttributeKey.OnOff).value = "off";
+//                btn.Text = trait.GetValueText() + trait.GetUintString();
+
+//                var temp = alarmFunction.status.Find((obj) => obj.key == FunctionAttributeKey.Brightness);
+//                if (temp == null)
+//                {
+//                    temp = alarmFunction.status.Find((obj) => obj.key == FunctionAttributeKey.Percent);
+//                }
+//                if (temp != null)
+//                {
+//                    if (temp.value != "0")
+//                    {
+//                        temp.value = "0";
+//                    }
+//                    btnBrightnessText.Text = temp.GetValueText() + "%";
+//                }
+//            };
+
+//        }
+
+//        /// <summary>
+//        /// 鍔犺浇娓╁害閫夋嫨寮圭獥
+//        /// </summary>
+//        /// <param name="function"></param>
+//        /// <param name="btn"></param>
+//        void LoadEditDialog_Temp(SceneFunctionStatus trait, Button btn)
+//        {
+//            double temp = 16;
+//            double.TryParse(trait.value, out temp);
+//            trait.value = temp.ToString();
+
+//            List<string> pickerItems = new List<string>();
+//            if (trait == null)
+//            {
+//                return;
+//            }
+
+//            Dialog dialog = new Dialog();
+
+//            var pView = new FrameLayout()
+//            {
+//                BackgroundColor = CSS_Color.DialogTransparentColor1,
+//            };
+//            dialog.AddChidren(pView);
+
+//            var optionBaseView = new FrameLayout()
+//            {
+//                Y = Application.GetRealHeight(456 - 60),
+//                Gravity = Gravity.CenterHorizontal,
+//                Width = Application.GetRealWidth(343),
+//                Height = Application.GetRealHeight(260),
+//                AnimateSpeed = 0.3f,
+//                Animate = Animate.DownToUp,
+//                BackgroundColor = CSS_Color.MainBackgroundColor,
+//                Radius = (uint)Application.GetRealWidth(12),
+//            };
+//            pView.AddChidren(optionBaseView);
+
+//            var topView = new FrameLayout()
+//            {
+//                Gravity = Gravity.CenterHorizontal,
+//                Width = Application.GetRealWidth(343),
+//                Height = Application.GetRealHeight(40),
+//                BackgroundColor = CSS_Color.MainBackgroundColor,
+//                Radius = (uint)Application.GetRealWidth(12),
+//            };
+//            optionBaseView.AddChidren(topView);
+//            topView.AddChidren(new Button() { Y = Application.GetRealHeight(39), Height = Application.GetRealHeight(1), BackgroundColor = CSS_Color.DividingLineColor });
+
+//            var btnCancel = new Button()
+//            {
+//                X = Application.GetRealWidth(21),
+//                Width = Application.GetRealWidth(100),
+//                TextAlignment = TextAlignment.CenterLeft,
+//                TextColor = CSS_Color.PromptingColor1,
+//                TextSize = CSS_FontSize.TextFontSize,
+//                TextID = StringId.Cancel,
+//            };
+//            topView.AddChidren(btnCancel);
+
+//            var btnConfrim = new Button()
+//            {
+//                Width = Application.GetRealWidth(320),
+//                TextAlignment = TextAlignment.CenterRight,
+//                TextColor = CSS_Color.MainColor,
+//                TextSize = CSS_FontSize.TextFontSize,
+//                TextID = StringId.Confirm,
+//            };
+//            topView.AddChidren(btnConfrim);
+
+//            UIPickerView uIPickerView = new UIPickerView()
+//            {
+//                Y = Application.GetRealHeight(40),
+//                Height = Application.GetRealHeight(210),
+//                Radius = (uint)Application.GetRealWidth(12),
+//            };
+//            for (int i = 16; i <= 32; i += 1)
+//            {
+//                pickerItems.Add(i.ToString() + trait.GetUintString());
+//            }
+//            uIPickerView.setNPicker(pickerItems, null, null);
+//            optionBaseView.AddChidren(uIPickerView);
+//            uIPickerView.setCurrentItems(pickerItems.IndexOf(trait.value.ToString()), 4, 5);
+
+//            string selectItem = pickerItems[0];
+//            if (pickerItems.Contains(trait.value + trait.GetUintString()))
+//            {
+//                selectItem = trait.value.ToString() + trait.GetUintString();
+//            }
+
+//            dialog.Show();
+
+//            pView.MouseUpEventHandler = (sender, e) => {
+//                dialog.Close();
+//            };
+
+//            btnCancel.MouseUpEventHandler = (sender, e) => {
+//                dialog.Close();
+//            };
+//            uIPickerView.OnSelectChangeEvent = (int1, int2, int3) => {
+//                selectItem = pickerItems[int1];
+//            };
+//            btnConfrim.MouseUpEventHandler = (sender, e) => {
+//                dialog.Close();
+//                btn.Text = selectItem;
+//                //sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.OnOff).value = trait.value.ToString() ;
+//                trait.value = selectItem.Replace(trait.GetUintString(), "");
+//            };
+
+//        }
+
+//        /// <summary>
+//        /// 鍔犺浇浜害閫夋嫨寮圭獥
+//        /// </summary>
+//        /// <param name="function"></param>
+//        /// <param name="btn"></param>
+//        void LoadEditDialog_Percent(SceneFunctionStatus trait, Button btn)
+//        {
+//            if (trait == null)
+//            {
+//                return;
+//            }
+
+//            Dialog dialog = new Dialog();
+
+//            var pView = new FrameLayout()
+//            {
+//                BackgroundColor = CSS_Color.DialogTransparentColor1,
+//            };
+//            dialog.AddChidren(pView);
+
+//            var optionBaseView = new FrameLayout()
+//            {
+//                Y = Application.GetRealHeight(467),
+//                Gravity = Gravity.CenterHorizontal,
+//                Width = Application.GetRealWidth(343),
+//                Height = Application.GetRealHeight(180),
+//                AnimateSpeed = 0.3f,
+//                Animate = Animate.DownToUp,
+//                BackgroundColor = CSS_Color.MainBackgroundColor,
+//                Radius = (uint)Application.GetRealWidth(12),
+//            };
+//            pView.AddChidren(optionBaseView);
+
+//            var topView = new FrameLayout()
+//            {
+//                Gravity = Gravity.CenterHorizontal,
+//                Width = Application.GetRealWidth(343),
+//                Height = Application.GetRealHeight(40),
+//                BackgroundColor = CSS_Color.MainBackgroundColor,
+//                Radius = (uint)Application.GetRealWidth(12),
+//            };
+//            optionBaseView.AddChidren(topView);
+//            topView.AddChidren(new Button() { Y = Application.GetRealHeight(39), Height = Application.GetRealHeight(1), BackgroundColor = CSS_Color.DividingLineColor });
+
+//            var btnTitle = new Button()
+//            {
+//                Gravity = Gravity.CenterHorizontal,
+//                TextAlignment = TextAlignment.Center,
+//                Width = Application.GetRealWidth(100),
+//                Text = trait.GetNameText(),
+//                IsBold = true,
+//                TextColor = CSS_Color.FirstLevelTitleColor,
+//                TextSize = CSS_FontSize.SubheadingFontSize,
+//            };
+//            topView.AddChidren(btnTitle);
+
+//            var btnCancel = new Button()
+//            {
+//                X = Application.GetRealWidth(21),
+//                Width = Application.GetRealWidth(100),
+//                TextAlignment = TextAlignment.CenterLeft,
+//                TextColor = CSS_Color.PromptingColor1,
+//                TextSize = CSS_FontSize.TextFontSize,
+//                TextID = StringId.Cancel,
+//            };
+//            topView.AddChidren(btnCancel);
+
+//            var btnConfrim = new Button()
+//            {
+//                Width = Application.GetRealWidth(320),
+//                TextAlignment = TextAlignment.CenterRight,
+//                TextColor = CSS_Color.MainColor,
+//                TextSize = CSS_FontSize.TextFontSize,
+//                TextID = StringId.Confirm,
+//            };
+//            topView.AddChidren(btnConfrim);
+
+//            Button btnMinusSignIcon = new Button()
+//            {
+//                X = Application.GetRealWidth(26),
+//                Y = Application.GetRealHeight(118),
+//                Width = Application.GetMinRealAverage(24),
+//                Height = Application.GetMinRealAverage(24),
+//                UnSelectedImagePath = "Public/MinusSignIcon.png",
+//            };
+//            optionBaseView.AddChidren(btnMinusSignIcon);
+
+//            DiyImageSeekBar controlBar = new DiyImageSeekBar()
+//            {
+//                X = btnMinusSignIcon.Right + Application.GetRealWidth(12),
+//                Y = Application.GetRealHeight(100),//414,璁捐鏁版嵁
+//                Width = Application.GetRealWidth(220),
+//                Height = Application.GetRealHeight(54),
+//                SeekBarViewHeight = Application.GetRealHeight(8),
+//                ThumbImagePath = "Public/ThumbImage.png",
+//                ThumbImageHeight = Application.GetRealHeight(54),
+//                ProgressBarColor = CSS_Color.MainColor,
+//                ProgressTextColor = CSS_Color.FirstLevelTitleColor,
+//                ProgressTextSize = CSS_FontSize.PromptFontSize_FirstLevel,
+//                MaxValue = 100,
+//                Progress = trait.value.ToString().Replace("{}", "") == "" ? 0 : Convert.ToInt32(trait.value.Replace("{}", "")),
+//                SeekBarPadding = Application.GetRealWidth(20),
+//            };
+//            optionBaseView.AddChidren(controlBar);
+
+//            Button btnPlusSgnIcon = new Button()
+//            {
+//                X = controlBar.Right + Application.GetRealWidth(12),
+//                Y = Application.GetRealHeight(118),
+//                Width = Application.GetMinRealAverage(24),
+//                Height = Application.GetMinRealAverage(24),
+//                UnSelectedImagePath = "Public/PlusSignIcon.png",
+//            };
+//            optionBaseView.AddChidren(btnPlusSgnIcon);
+
+//            btnMinusSignIcon.MouseUpEventHandler = (sender, e) =>
+//            {
+//                controlBar.Progress--;
+//            };
+//            btnPlusSgnIcon.MouseUpEventHandler = (sender, e) =>
+//            {
+//                controlBar.Progress++;
+//            };
+
+//            dialog.Show();
+//            pView.MouseUpEventHandler = (sender, e) =>
+//            {
+//                dialog.Close();
+//            };
+
+//            btnCancel.MouseUpEventHandler = (sender, e) =>
+//            {
+//                dialog.Close();
+//            };
+//            btnConfrim.MouseUpEventHandler = (sender, e) =>
+//            {
+//                dialog.Close();
+//                trait.value = controlBar.Progress.ToString();
+//                btn.Text = trait.value + trait.GetUintString();
+
+//                var temp = alarmFunction.status.Find((obj) => obj.key == FunctionAttributeKey.OnOff);
+//                if (temp != null)
+//                {
+//                    if (controlBar.Progress > 0)
+//                    {
+//                        temp.value = "on";
+//                    }
+//                    else
+//                    {
+//                        temp.value = "off";
+//                    }
+//                    btnOnText.Text = temp.GetValueText();
+//                }
+//            };
+//        }
+
+
+//        /// <summary>
+//        /// 鍔犺浇鍙樺寲閫熷害閫夋嫨寮圭獥
+//        /// </summary>
+//        /// <param name="function"></param>
+//        /// <param name="btn"></param>
+//        void LoadEditDialog_FadeTime(SceneFunctionStatus trait, Button btn)
+//        {
+//            if (trait == null)
+//            {
+//                return;
+//            }
+
+//            Dialog dialog = new Dialog();
+
+//            var pView = new FrameLayout()
+//            {
+//                BackgroundColor = CSS_Color.DialogTransparentColor1,
+//            };
+//            dialog.AddChidren(pView);
+
+//            var optionBaseView = new FrameLayout()
+//            {
+//                Y = Application.GetRealHeight(467),
+//                Gravity = Gravity.CenterHorizontal,
+//                Width = Application.GetRealWidth(343),
+//                Height = Application.GetRealHeight(180),
+//                AnimateSpeed = 0.3f,
+//                Animate = Animate.DownToUp,
+//                BackgroundColor = CSS_Color.MainBackgroundColor,
+//                Radius = (uint)Application.GetRealWidth(12),
+//            };
+//            pView.AddChidren(optionBaseView);
+
+//            var topView = new FrameLayout()
+//            {
+//                Gravity = Gravity.CenterHorizontal,
+//                Width = Application.GetRealWidth(343),
+//                Height = Application.GetRealHeight(40),
+//                BackgroundColor = CSS_Color.MainBackgroundColor,
+//                Radius = (uint)Application.GetRealWidth(12),
+//            };
+//            optionBaseView.AddChidren(topView);
+//            topView.AddChidren(new Button() { Y = Application.GetRealHeight(39), Height = Application.GetRealHeight(1), BackgroundColor = CSS_Color.DividingLineColor });
+
+//            var btnTitle = new Button()
+//            {
+//                Gravity = Gravity.CenterHorizontal,
+//                TextAlignment = TextAlignment.Center,
+//                Width = Application.GetRealWidth(100),
+//                Text = trait.GetNameText(),
+//                IsBold = true,
+//                TextColor = CSS_Color.FirstLevelTitleColor,
+//                TextSize = CSS_FontSize.SubheadingFontSize,
+//            };
+//            topView.AddChidren(btnTitle);
+
+//            var btnCancel = new Button()
+//            {
+//                X = Application.GetRealWidth(21),
+//                Width = Application.GetRealWidth(100),
+//                TextAlignment = TextAlignment.CenterLeft,
+//                TextColor = CSS_Color.PromptingColor1,
+//                TextSize = CSS_FontSize.TextFontSize,
+//                TextID = StringId.Cancel,
+//            };
+//            topView.AddChidren(btnCancel);
+
+//            var btnConfrim = new Button()
+//            {
+//                Width = Application.GetRealWidth(320),
+//                TextAlignment = TextAlignment.CenterRight,
+//                TextColor = CSS_Color.MainColor,
+//                TextSize = CSS_FontSize.TextFontSize,
+//                TextID = StringId.Confirm,
+//            };
+//            topView.AddChidren(btnConfrim);
+
+//            Button btnMinusSignIcon = new Button()
+//            {
+//                X = Application.GetRealWidth(26),
+//                Y = Application.GetRealHeight(118),
+//                Width = Application.GetMinRealAverage(24),
+//                Height = Application.GetMinRealAverage(24),
+//                Text = "0s",
+//                TextColor = CSS_Color.PromptingColor1,
+//                TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
+//            };
+//            optionBaseView.AddChidren(btnMinusSignIcon);
+
+//            DiyImageSeekBar controlBar = new DiyImageSeekBar()
+//            {
+//                X = btnMinusSignIcon.Right + Application.GetRealWidth(12),
+//                Y = Application.GetRealHeight(100),//414,璁捐鏁版嵁
+//                Width = Application.GetRealWidth(220),
+//                Height = Application.GetRealHeight(54),
+//                SeekBarViewHeight = Application.GetRealHeight(8),
+//                ThumbImagePath = "Public/ThumbImage.png",
+//                ThumbImageHeight = Application.GetRealHeight(54),
+//                ProgressBarColor = CSS_Color.MainColor,
+//                ProgressTextColor = CSS_Color.FirstLevelTitleColor,
+//                ProgressTextSize = CSS_FontSize.PromptFontSize_FirstLevel,
+//                MaxValue = 100,
+//                Progress = trait.value.ToString().Replace("{}", "") == "" ? 0 : Convert.ToInt32(trait.value.Replace("{}", "")),
+//                SeekBarPadding = Application.GetRealWidth(20),
+//            };
+//            optionBaseView.AddChidren(controlBar);
+
+//            Button btnPlusSgnIcon = new Button()
+//            {
+//                X = controlBar.Right + Application.GetRealWidth(12),
+//                Y = Application.GetRealHeight(118),
+//                Width = Application.GetMinRealAverage(24),
+//                Height = Application.GetMinRealAverage(24),
+//                Text = "10s",
+//                TextColor = CSS_Color.PromptingColor1,
+//                TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
+//            };
+//            optionBaseView.AddChidren(btnPlusSgnIcon);
+
+//            btnMinusSignIcon.MouseUpEventHandler = (sender, e) =>
+//            {
+//                controlBar.Progress--;
+//            };
+//            btnPlusSgnIcon.MouseUpEventHandler = (sender, e) =>
+//            {
+//                controlBar.Progress++;
+//            };
+
+//            dialog.Show();
+//            pView.MouseUpEventHandler = (sender, e) =>
+//            {
+//                dialog.Close();
+//            };
+
+//            btnCancel.MouseUpEventHandler = (sender, e) =>
+//            {
+//                dialog.Close();
+//            };
+//            btnConfrim.MouseUpEventHandler = (sender, e) =>
+//            {
+//                dialog.Close();
+//                trait.value = controlBar.Progress.ToString();
+//                btn.Text = trait.value + trait.GetUintString();
+//            };
+//        }
+
+
+//        /// <summary>
+//        /// 鍔犺浇鍔熻兘灞炴�ф暟鎹�夋嫨寮圭獥
+//        /// </summary>
+//        void LoadEditDialog_FunctionPar(SceneFunctionStatus trait, Button btn, List<string> statusList)
+//        {
+//            Button lastButton = new Button();
+//            var lastData = "";
+//            var lastText = "";
+//            Dialog dialog = new Dialog();
+
+//            if (DB_ResidenceData.Instance.GatewayType == 0)
+//            {
+//                if (SPK.AcSpkList().Contains(alarmFunction.localFunction.spk))
+//                {
+//                    //0 鍒跺喎1鍒剁儹锛�2閫氶锛�3鑷姩锛�4闄ゆ箍
+//                    for (int i = 0; i < statusList.Count; i++)
+//                    {
+//                        if (statusList[i] == "0")
+//                        {
+//                            statusList[i] = "cool";
+//                        }
+//                        else if (statusList[i] == "1")
+//                        {
+//                            statusList[i] = "heat";
+//                        }
+//                        else if (statusList[i] == "2")
+//                        {
+//                            statusList[i] = "fan";
+//                        }
+//                        else if (statusList[i] == "3")
+//                        {
+//                            statusList[i] = "auto";
+//                        }
+//                        else if (statusList[i] == "4")
+//                        {
+//                            statusList[i] = "dry";
+//                        }
+//                    }
+//                }
+//                else if (SPK.FhSpkList().Contains(alarmFunction.localFunction.spk))
+//                {
+//                    //1:鏅��,2:鐧藉ぉ,3:澶滄櫄,4:绂诲紑,5:鏃堕棿
+//                    for (int i = 0; i < statusList.Count; i++)
+//                    {
+//                        if (statusList[i] == "5")
+//                        {
+//                            statusList[i] = "timer";
+//                        }
+//                        else if (statusList[i] == "1")
+//                        {
+//                            statusList[i] = "normal";
+//                        }
+//                        else if (statusList[i] == "2")
+//                        {
+//                            statusList[i] = "day";
+//                        }
+//                        else if (statusList[i] == "3")
+//                        {
+//                            statusList[i] = "night";
+//                        }
+//                        else if (statusList[i] == "4")
+//                        {
+//                            statusList[i] = "away";
+//                        }
+//                    }
+
+//                }
+//            }
+
+//            var pView = new FrameLayout()
+//            {
+//                BackgroundColor = CSS_Color.DialogTransparentColor1,
+//            };
+//            dialog.AddChidren(pView);
+
+//            var optionBaseView = new FrameLayout()
+//            {
+//                Y = Application.GetRealHeight(579 - 50 * statusList.Count),
+//                Gravity = Gravity.CenterHorizontal,
+//                Width = Application.GetRealWidth(343),
+//                Height = Application.GetRealHeight(50 * statusList.Count + 50),
+//                AnimateSpeed = 0.3f,
+//                Animate = Animate.DownToUp,
+//                BackgroundColor = CSS_Color.MainBackgroundColor,
+//                Radius = (uint)Application.GetRealWidth(12),
+//            };
+//            pView.AddChidren(optionBaseView);
+
+//            var topView = new FrameLayout()
+//            {
+//                Gravity = Gravity.CenterHorizontal,
+//                Width = Application.GetRealWidth(343),
+//                Height = Application.GetRealHeight(50),
+//                BackgroundColor = CSS_Color.MainBackgroundColor,
+//                Radius = (uint)Application.GetRealWidth(12),
+//            };
+//            optionBaseView.AddChidren(topView);
+
+//            var btnTitle = new Button()
+//            {
+//                Gravity = Gravity.CenterHorizontal,
+//                TextAlignment = TextAlignment.Center,
+//                Width = Application.GetRealWidth(100),
+//                Text = trait.GetNameText(),
+//                IsBold = true,
+//                TextColor = CSS_Color.FirstLevelTitleColor,
+//                TextSize = CSS_FontSize.SubheadingFontSize,
+//            };
+//            topView.AddChidren(btnTitle);
+
+//            var btnCancel = new Button()
+//            {
+//                X = Application.GetRealWidth(21),
+//                Width = Application.GetRealWidth(100),
+//                TextAlignment = TextAlignment.CenterLeft,
+//                TextColor = CSS_Color.PromptingColor1,
+//                TextSize = CSS_FontSize.TextFontSize,
+//                TextID = StringId.Cancel,
+//            };
+//            topView.AddChidren(btnCancel);
+
+//            var btnConfrim = new Button()
+//            {
+//                Width = Application.GetRealWidth(320),
+//                TextAlignment = TextAlignment.CenterRight,
+//                TextColor = CSS_Color.MainColor,
+//                TextSize = CSS_FontSize.TextFontSize,
+//                TextID = StringId.Complete,
+//            };
+//            topView.AddChidren(btnConfrim);
+//            int hei = 1;
+//            foreach (var m in statusList)
+//            {
+//                var row = new FrameLayout()
+//                {
+//                    Y = Application.GetRealHeight(50 * hei),
+//                    Height = Application.GetRealHeight(50),
+//                };
+//                optionBaseView.AddChidren(row);
+//                if (statusList.Count > hei)
+//                {
+//                    optionBaseView.AddChidren(new Button()
+//                    {
+//                        Gravity = Gravity.CenterHorizontal,
+//                        Y = row.Bottom,
+//                        Width = Application.GetRealWidth(343),
+//                        BackgroundColor = CSS_Color.DividingLineColor,
+//                        Height = 1,
+//                    });
+//                }
+//                hei++;
+
+//                var btnChoose = new Button()
+//                {
+//                    X = Application.GetRealWidth(303),
+//                    Gravity = Gravity.CenterVertical,
+//                    Width = Application.GetMinRealAverage(28),
+//                    Height = Application.GetMinRealAverage(28),
+//                    UnSelectedImagePath = "Public/ChooseIcon.png",
+//                    SelectedImagePath = "Public/ChooseOnIcon.png",
+
+//                };
+//                row.AddChidren(btnChoose);
+//                if (trait.value == m)
+//                {
+//                    lastButton = btnChoose;
+//                    btnChoose.IsSelected = true;
+//                }
+//                var btnPropertyTitle = new Button()
+//                {
+//                    X = Application.GetRealWidth(16),
+//                    TextAlignment = TextAlignment.CenterLeft,
+//                    TextColor = CSS_Color.FirstLevelTitleColor,
+//                    TextSize = CSS_FontSize.TextFontSize,
+//                    Tag = m,
+//                    Text = trait.GetValueText(m)
+//                };
+//                row.AddChidren(btnPropertyTitle);
+
+//                btnPropertyTitle.MouseUpEventHandler = (sender, e) => {
+//                    btnChoose.IsSelected = true;
+//                    if (lastButton != null)
+//                    {
+//                        lastButton.IsSelected = false;
+//                    }
+//                    lastButton = btnChoose;
+//                    lastData = btnPropertyTitle.Tag.ToString();
+//                    lastText = btnPropertyTitle.Text;
+//                };
+//            }
+
+
+
+
+//            dialog.Show();
+
+//            pView.MouseUpEventHandler = (sender, e) => {
+//                dialog.Close();
+//            };
+
+//            btnCancel.MouseUpEventHandler = (sender, e) => {
+//                dialog.Close();
+//            };
+//            btnConfrim.MouseUpEventHandler = (sender, e) => {
+//                dialog.Close();
+//                trait.value = lastData;
+//                //sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.OnOff).value = trait.curValue.ToString() ;
+//                btn.Text = lastText;
+//            };
+
+//        }
+
+//        #endregion
+
+//    }
+//}
diff --git a/HDL_ON/UI/UI2/FuntionControlView/ArmCenter/ArmCenterPage.cs b/HDL_ON/UI/UI2/FuntionControlView/ArmCenter/ArmCenterPage.cs
index cefa915..a883705 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/ArmCenter/ArmCenterPage.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/ArmCenter/ArmCenterPage.cs
@@ -1,4 +1,5 @@
 锘縰sing System;
+using HDL_ON.DriverLayer;
 using HDL_ON.Entity;
 using HDL_ON.UI.CSS;
 using Shared;
@@ -10,6 +11,11 @@
         /// 涓荤獥浣�
         /// </summary>
         FrameLayout bodyView;
+        /// <summary>
+        /// 鑷畾涔夊竷闃插尯鍩�
+        /// </summary>
+        HorizontalScrolViewLayout customDeploymentView;
+
         public ArmCenterPage()
         {
             bodyView = this;
@@ -21,7 +27,7 @@
 
             };
 
-            new TopViewDiv(bodyView, Language.StringByID(StringId.Setting)).LoadTopView_ArmCenter(skipAction);
+            new TopViewDiv(bodyView, Language.StringByID(StringId.SecurityCenter)).LoadTopView_ArmCenter(skipAction);
 
             VerticalScrolViewLayout contentView = new VerticalScrolViewLayout()
             {
@@ -53,6 +59,33 @@
                 Height = Application.GetRealWidth(16),
             });
 
+
+            #region 鎾ら槻鍖哄煙
+            var disarmView = new FrameLayout()
+            {
+                Height = 0,
+            };
+            contentView.AddChidren(disarmView);
+
+            var btnDisarm = new Button()
+            {
+                Width = Application.GetRealWidth(120),
+                Height = Application.GetRealHeight(44),
+                BackgroundColor = CSS_Color.WarningColor,
+                TextAlignment = TextAlignment.Center,
+                TextColor = CSS_Color.MainBackgroundColor,
+                Text = "鎾ら槻"
+            };
+            disarmView.AddChidren(btnDisarm);
+            btnDisarm.MouseUpEventHandler = (sender, e) => {
+                if (SecurityCenter.Security.CurrentDefenseMode != null)
+                {
+                    Control.Ins.ControlSecurity(SecurityCenter.Security.CurrentDefenseMode, "disable");
+                }
+            };
+
+            #endregion
+
             #region 鑷畾涔夊竷闃�
             //鑷畾涔夊竷闃叉爣棰�
             Button btnCustomDeploymentTitle = new Button()
@@ -67,7 +100,7 @@
             };
             contentView.AddChidren(btnCustomDeploymentTitle);
 
-            HorizontalScrolViewLayout customDeploymentView = new HorizontalScrolViewLayout()
+            customDeploymentView = new HorizontalScrolViewLayout()
             {
                 X = Application.GetRealWidth(23),
                 Height = Application.GetRealWidth(80),
@@ -75,24 +108,9 @@
             };
             contentView.AddChidren(customDeploymentView);
 
-            //customDeploymentView.AddChidren(new Button()
-            //{
-            //    Width = Application.GetRealWidth(23),
-            //});
+            iniCustomDeploymentView();
 
-            var adv = new ArmDiyView();
-            var view = adv.DiyArmView("FunctionIcon/ArmCenter/AtHomeDefenseIcon.png", "FunctionIcon/ArmCenter/AtHomeDefenseIconOn.png",
-                Language.StringByID(StringId.HouseDefense));
-            customDeploymentView.AddChidren(view);
 
-            if(FunctionList.List.securities.Count>3)
-            {
-                customDeploymentView.ScrollEnabled = true;
-            }
-
-            foreach (var mode in FunctionList.List.securities)
-            {
-            }
             #endregion
 
             contentView.AddChidren(new Button()
@@ -100,6 +118,8 @@
                 Height = Application.GetRealHeight(20),
             });
 
+            #region 鍥哄畾甯冮槻鍖哄煙
+            /*
             var fixedDeploymentView = new FrameLayout()
             {
                 Height = Application.GetRealHeight(133),
@@ -130,7 +150,6 @@
             };
             fixedDeploymentView.AddChidren(btnFixedDeploymentTip);
 
-            //鍥哄畾甯冮槻鍖哄煙
             var fixedDeploymentTypeView = new HorizontalScrolViewLayout()
             {
                 Y = btnFixedDeploymentTip.Bottom + Application.GetRealHeight(15),
@@ -144,11 +163,11 @@
                 Width = Application.GetRealWidth(24),
             });
 
-
+            #endregion
 
 
             //鐏惧鎶ヨ
-            var disasterAlarmView = adv.FixedArmView("FunctionIcon/ArmCenter/DisasterAlarmIcon.png", Language.StringByID(StringId.DisasterDefense), Language.StringByID(StringId.Defense24Hour));
+            var disasterAlarmView = new FixedArmView("FunctionIcon/ArmCenter/DisasterAlarmIcon.png", Language.StringByID(StringId.DisasterDefense), Language.StringByID(StringId.Defense24Hour));
             fixedDeploymentTypeView.AddChidren(disasterAlarmView);
 
             fixedDeploymentTypeView.AddChidren(new Button()
@@ -157,34 +176,171 @@
             });
 
             //闃茬洍鎶ヨ
-            var burglarAlarmView = adv.FixedArmView("FunctionIcon/ArmCenter/BurglarAlarmIcon.png", Language.StringByID(StringId.BurglarAlarm), Language.StringByID(StringId.AlarmMute));
+            var burglarAlarmView = new FixedArmView("FunctionIcon/ArmCenter/BurglarAlarmIcon.png", Language.StringByID(StringId.BurglarAlarm), Language.StringByID(StringId.AlarmMute));
             fixedDeploymentTypeView.AddChidren(burglarAlarmView);
+            */
+            #endregion
+
+
+
+
+
+
 
         }
+
+        /// <summary>
+        /// 鍒濆鍖栬嚜瀹氫箟甯冮槻鍖哄煙
+        /// </summary>
+        private void iniCustomDeploymentView()
+        {
+            customDeploymentView.RemoveAll();
+
+            foreach (var mode in FunctionList.List.securities)
+            {
+                var armDiyView = new ArmDiyView("FunctionIcon/ArmCenter/AddDefenseIcon.png", "FunctionIcon/ArmCenter/AddDefenseIcon.png",
+                mode.name);
+                customDeploymentView.AddChidren(armDiyView);
+                EventHandler<MouseEventArgs> event2 = (sender, e) =>
+                        {
+                            ShowArmDialog(mode);
+                        };
+                armDiyView.SetClickEvent(event2);
+            }
+
+            if (FunctionList.List.securities.Count < 4)
+            {
+                var view = new ArmDiyView("FunctionIcon/ArmCenter/AddDefenseIcon.png", "FunctionIcon/ArmCenter/AddDefenseIcon.png",
+                  Language.StringByID(StringId.Custom));
+                customDeploymentView.AddChidren(view);
+                EventHandler<MouseEventArgs> event1 = (sender, e) =>
+                {
+                    Action refreshAction = () =>
+                    {
+                        iniCustomDeploymentView();
+                    };
+
+                    var addDefensePage = new AddAlarmDeploymentPage(new SecurityAlarm(), refreshAction);
+                    MainPage.BasePageView.AddChidren(addDefensePage);
+                    addDefensePage.LoadPage();
+                    MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+                };
+                view.SetClickEvent(event1);
+            }
+
+        }
+
+        private void ShowArmDialog(SecurityAlarm alarm)
+        {
+            Dialog dialog = new Dialog();
+
+            FrameLayout contentView = new FrameLayout();
+            dialog.AddChidren(contentView);
+            contentView.MouseUpEventHandler = (sender, e) =>
+            {
+                dialog.Close();
+            };
+
+           VerticalScrolViewLayout optinView = new VerticalScrolViewLayout() {
+                Gravity = Gravity.CenterHorizontal,
+                Y = Application.GetRealHeight(515),
+                Width = Application.GetRealWidth(343),
+                Height = Application.GetRealHeight(88),
+                Radius = (uint)Application.GetRealHeight(13),
+                BackgroundColor = CSS_Color.MainBackgroundColor,
+            };
+            contentView.AddChidren(optinView);
+
+            Button btnOpen = new Button()
+            {
+                Height = Application.GetRealHeight(44),
+                TextAlignment = TextAlignment.Center,
+                TextColor = CSS_Color.MainColor,
+                TextSize = CSS_FontSize.SubheadingFontSize,
+                TextID = StringId.OpenArm
+            };
+            optinView.AddChidren(btnOpen);
+
+            optinView.AddChidren(new Button() {
+                Height = 1,
+                BackgroundColor = CSS_Color.DividingLineColor
+            });
+
+            Button btnCheckModify = new Button()
+            {
+                Height = Application.GetRealHeight(44),
+                TextAlignment = TextAlignment.Center,
+                TextColor = CSS_Color.PromptingColor1,
+                TextID = StringId.CheckModify,
+                TextSize = CSS_FontSize.SubheadingFontSize,
+            };
+            optinView.AddChidren(btnCheckModify);
+
+
+            Button btnCancel = new Button()
+            {
+                Gravity = Gravity.CenterHorizontal,
+                Y = optinView.Bottom + Application.GetRealHeight(8),
+                Width = Application.GetRealWidth(343),
+                Height = Application.GetRealHeight(44),
+                Radius = (uint)Application.GetRealHeight(13),
+                BackgroundColor = CSS_Color.MainBackgroundColor,
+                TextID = StringId.Cancel,
+                TextColor = CSS_Color.WarningColor,
+                IsBold = true,
+            };
+            contentView.AddChidren(btnCancel);
+
+            dialog.Show();
+
+            btnOpen.MouseUpEventHandler = (sender, e) => {
+                Control.Ins.ControlSecurity(alarm,  "enable");  
+                dialog.Close();  
+            };
+
+
+            btnCheckModify.MouseUpEventHandler = (sender, e) => {
+                dialog.Close();
+                Action refreshAction = () =>
+                {
+                    iniCustomDeploymentView();
+                };
+                var armSetPage = new ArmDeploymentSettingPage(alarm,refreshAction);
+                MainPage.BasePageView.AddChidren(armSetPage);
+                armSetPage.LoadPage();
+                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+            };
+
+            btnCancel.MouseUpEventHandler = (sender, e) =>
+            {
+                dialog.Close();
+            };
+
+        }
+
+
     }
 
 
     /// <summary>
     /// 瀹夐槻鑷畾涔夋帶浠�
     /// </summary>
-    public class ArmDiyView
+    public class ArmDiyView : FrameLayout
     {
-
+        Button btnIcon;
+        Button btnText;
         /// <summary>
-        /// 
+        /// 鑷畾涔夊竷闃茬晫闈�
         /// </summary>
         /// <param name="UnSelectedIconPath">鍥剧墖璺緞</param>
         /// <param name="SelectedIconPath">鍥剧墖璺緞</param>
         /// <param name="Text">鏄剧ず鏂囨湰</param>
-        public FrameLayout DiyArmView(string UnSelectedIconPath, string SelectedIconPath, string Text)
+        public ArmDiyView(string UnSelectedIconPath, string SelectedIconPath, string Text)
         {
-            var view = new FrameLayout()
-            {
-                Width = Application.GetRealWidth(82),
-                Height = Application.GetRealWidth(80),
-            };
+            this.Width = Application.GetRealWidth(82);
+            this.Height = Application.GetRealWidth(80);
 
-            Button btnIcon = new Button()
+            btnIcon = new Button()
             {
                 Gravity = Gravity.CenterHorizontal,
                 Width = Application.GetRealWidth(40),
@@ -192,9 +348,9 @@
                 UnSelectedImagePath = UnSelectedIconPath,
                 SelectedImagePath = SelectedIconPath,
             };
-            view.AddChidren(btnIcon);
+            this.AddChidren(btnIcon);
 
-            Button btnText = new Button()
+            btnText = new Button()
             {
                 Y = Application.GetRealWidth(40),
                 Height = Application.GetRealWidth(41),
@@ -203,28 +359,34 @@
                 TextColor = CSS_Color.TextualColor,
                 TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
             };
-            view.AddChidren(btnText);
-
-
-            return view;
+            this.AddChidren(btnText);
         }
 
+        public void SetClickEvent(EventHandler<MouseEventArgs> eventHandler)
+        {
+            this.MouseUpEventHandler = eventHandler;
+            btnIcon.MouseUpEventHandler = eventHandler;
+            btnText.MouseUpEventHandler = eventHandler;
+        }
+
+
+    }
+
+    public class FixedArmView : FrameLayout
+    {
         /// <summary>
-        /// 
+        /// 鍥哄畾甯冮槻鎺т欢
         /// </summary>
         /// <param name="iconPath"></param>
         /// <param name="title"></param>
         /// <param name="titleTip"></param>
-        public FrameLayout FixedArmView(string iconPath,string title,string titleTip)
+        public FixedArmView(string iconPath, string title, string titleTip)
         {
-            var view = new FrameLayout()
-            {
-                Width = Application.GetRealWidth(144),
-                Height = Application.GetRealHeight(66),
-                Radius = (uint)Application.GetRealWidth(6),
-                BorderColor = CSS_Color.MainColor,
-                BorderWidth = 1,
-            };
+            this.Width = Application.GetRealWidth(144);
+            this.Height = Application.GetRealHeight(66);
+            this.Radius = (uint)Application.GetRealWidth(6);
+            this.BorderColor = CSS_Color.MainColor;
+            this.BorderWidth = 1;
 
             var btnIcon = new Button()
             {
@@ -234,7 +396,7 @@
                 Gravity = Gravity.CenterVertical,
                 UnSelectedImagePath = iconPath,// "FunctionIcon/ArmCenter/DisasterAlarmIcon.png",
             };
-            view.AddChidren(btnIcon);
+            this.AddChidren(btnIcon);
 
             var btnTitle = new Button()
             {
@@ -247,7 +409,7 @@
                 Text = title,
                 IsBold = true,
             };
-            view.AddChidren(btnTitle);
+            this.AddChidren(btnTitle);
 
             var btnTitleTip = new Button()
             {
@@ -260,9 +422,9 @@
                 TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
                 Text = titleTip,
             };
-            view.AddChidren(btnTitleTip);
+            this.AddChidren(btnTitleTip);
 
-            return view;
         }
     }
+
 }
diff --git a/HDL_ON/UI/UI2/FuntionControlView/ArmCenter/ArmDeploymentSettingPage.cs b/HDL_ON/UI/UI2/FuntionControlView/ArmCenter/ArmDeploymentSettingPage.cs
index b3fbc04..5de018c 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/ArmCenter/ArmDeploymentSettingPage.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/ArmCenter/ArmDeploymentSettingPage.cs
@@ -9,12 +9,28 @@
     public class ArmDeploymentSettingPage : FrameLayout
     {
         FrameLayout bodyView;
-        SecurityAlarm securityAlarm; 
+        /// <summary>
+        /// 涓婚鐣岄潰
+        /// </summary>
+        VerticalScrolViewLayout contentView;
+        /// <summary>
+        /// 杈撳叆鏉′欢鍒楄〃鍖哄煙鐣岄潰
+        /// </summary>
+        VerticalScrolViewLayout inputTargetView;
+        /// <summary>
+        /// 鍛婅鐩爣鍒楄〃鍖哄煙鐣岄潰
+        /// </summary>
+        VerticalScrolViewLayout outputTargetView;
 
-        public ArmDeploymentSettingPage(SecurityAlarm alarm )
+
+        SecurityAlarm securityAlarm;
+        Action refreshAction;
+
+        public ArmDeploymentSettingPage(SecurityAlarm alarm, Action action)
         {
             bodyView = this;
             securityAlarm = alarm;
+            refreshAction = action;
         }
 
         public void LoadPage()
@@ -23,9 +39,10 @@
 
             bodyView.BackgroundColor = CSS_Color.BackgroundColor;
 
-            VerticalScrolViewLayout contentView = new VerticalScrolViewLayout()
+            contentView = new VerticalScrolViewLayout()
             {
-                Height = Application.GetRealHeight(667 - 64),
+                Y = Application.GetRealHeight(64),
+                Height = Application.GetRealHeight(527),
             };
             bodyView.AddChidren(contentView);
 
@@ -44,6 +61,7 @@
                 TextAlignment = TextAlignment.CenterLeft,
                 TextSize = CSS_FontSize.SubheadingFontSize,
                 TextID = StringId.DeploymentInformation,
+                IsBold = true,
             };
             deploymentTitleRow.AddChidren(btnDeploymentTitle);
 
@@ -67,6 +85,7 @@
                 TextID = StringId.Name,
             };
             deploymentNameRow.AddChidren(btnDeploymentNameTitle);
+            btnDeploymentNameTitle.Text += ":";
 
             var btnDeploymentName = new Button()
             {
@@ -83,6 +102,7 @@
             LoadEvent_EditSecurityAlarmName(btnDeploymentName);
             #endregion
 
+            /*
             #region 瑙﹀彂寤舵椂
             var delayedRow = new FrameLayout()
             {
@@ -98,9 +118,10 @@
                 TextAlignment = TextAlignment.CenterLeft,
                 TextColor = CSS_Color.FirstLevelTitleColor,
                 TextSize = CSS_FontSize.TextFontSize,
-                TextID = StringId.Name,
+                TextID = StringId.TriggerDelay,
             };
             delayedRow.AddChidren(btnDelayedTitle);
+            btnDelayedTitle.Text += ":";
 
             var btnDelayedText = new Button()
             {
@@ -124,11 +145,111 @@
             delayedRow.AddChidren(btnDelayedRight);
 
             //delayedRow.AddChidren(new Button() { Gravity = Gravity.CenterHorizontal, Y = Application.GetRealHeight(49), Height = 1, BackgroundColor = CSS_Color.DividingLineColor });
-            LoadEvent_EditSecurityAlarmName(btnDelayedTitle);
             #endregion
+            */
 
             #endregion
             contentView.AddChidren(new Button() { Height = Application.GetRealHeight(8), BackgroundColor = CSS_Color.BackgroundColor });
+
+            //甯冮槻鍔熻兘
+            iniDefenseView();
+            //鍛婅鐩爣
+            iniAlarmView();
+
+            #region 搴曢儴鍖哄煙
+            var bottomView = new FrameLayout()
+            {
+                Y = Application.GetRealHeight(591),
+                Height = Application.GetRealHeight(100),
+                BackgroundColor = CSS_Color.MainBackgroundColor,
+                Radius = (uint)Application.GetRealWidth(22),
+            };
+            this.AddChidren(bottomView);
+
+            var btnConfrim = new Button()
+            {
+                X = Application.GetRealWidth(78),
+                Y = Application.GetRealHeight(12),
+                Width = Application.GetRealWidth(220),
+                Height = Application.GetRealWidth(44),
+                Radius = (uint)Application.GetRealWidth(22),
+                BackgroundColor = CSS_Color.MainColor,
+                TextID = StringId.Confirm,
+                TextSize = CSS_FontSize.SubheadingFontSize,
+                TextColor = CSS_Color.MainBackgroundColor,
+                TextAlignment = TextAlignment.Center,
+            };
+            bottomView.AddChidren(btnConfrim);
+
+            btnConfrim.MouseUpEventHandler = (sender, e) =>
+            {
+                if (securityAlarm.input.Count == 0)
+                {
+                    var tip = new Tip()
+                    {
+                        Text = "璇烽�夋嫨甯冮槻鐩爣",
+                        CloseTime = 3,
+                        Direction = AMPopTipDirection.None
+                    };
+                    tip.Show(MainPage.BaseView);
+                    return;
+                }
+                if (securityAlarm.output.Count == 0)
+                {
+                    var tip = new Tip()
+                    {
+                        Text = "璇烽�夋嫨鍛婅鐩爣",
+                        CloseTime = 3,
+                        Direction = AMPopTipDirection.None
+                    };
+                    tip.Show(MainPage.BaseView);
+
+                    return;
+                }
+
+                var waitPage = new Loading();
+                waitPage.Start();
+                new System.Threading.Thread(() =>
+                {
+                    try
+                    {
+                        var code = securityAlarm.SaveInfo();
+                        if (code == StateCode.SUCCESS)
+                        {
+                            SecurityCenter.Security.GetSecurityAlarmList();
+                            Application.RunOnMainThread(() =>
+                            {
+                                this.RemoveFromParent();
+                                refreshAction?.Invoke();
+                            });
+                        }
+                        else
+                        {
+                            Application.RunOnMainThread(() =>
+                            {
+                                IMessageCommon.Current.ShowErrorInfoAlter(code);
+                            });
+                        }
+                    }
+                    catch { }
+                    finally
+                    {
+                        Application.RunOnMainThread(() => {
+                            waitPage.Hide();
+                        });
+                    }
+                })
+                { IsBackground = true }.Start();
+            };
+            #endregion
+
+        }
+
+        /// <summary>
+        /// 鍒濆鍖栭儴鍒嗗姛鑳藉尯鍩�
+        /// </summary>
+        private void iniDefenseView()
+        {
 
             #region 甯冮槻鍔熻兘
             var deploymentFunctionRow = new FrameLayout()
@@ -144,15 +265,179 @@
                 TextColor = CSS_Color.MainColor,
                 TextAlignment = TextAlignment.CenterLeft,
                 TextSize = CSS_FontSize.SubheadingFontSize,
-                TextID = StringId.DeploymentInformation,
+                TextID = StringId.DefenseFunctionArmState,
+                IsBold = true,
             };
             deploymentFunctionRow.AddChidren(btnFunctionTitle);
 
+            var btnAddTarget = new Button()
+            {
+                X = Application.GetRealWidth(337),
+                Y = Application.GetRealHeight(6),
+                Width = Application.GetRealWidth(32),
+                Height = Application.GetRealWidth(32),
+                UnSelectedImagePath = "FunctionIcon/ArmCenter/AddTargetIcon.png",
+            };
+            deploymentFunctionRow.AddChidren(btnAddTarget);
+            ///娣诲姞杈撳叆鐩爣
+            btnAddTarget.MouseUpEventHandler = (sender, e) => {
+                Action<SecurityAlarm> action = (outTemp) => {
+                    securityAlarm = outTemp;
+                    iniInputTargetView();
+                };
+                var page = new AddInputPage(securityAlarm, action);
+                MainPage.BasePageView.AddChidren(page);
+                page.LoadPage();
+                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+            };
+
             deploymentFunctionRow.AddChidren(new Button() { Gravity = Gravity.CenterHorizontal, Y = Application.GetRealHeight(43), Height = 1, BackgroundColor = CSS_Color.DividingLineColor });
 
+            inputTargetView = new VerticalScrolViewLayout()
+            {
+                ScrollEnabled = false,
+            };
+            contentView.AddChidren(inputTargetView);
+
+            iniInputTargetView();
 
             #endregion
+            contentView.AddChidren(new Button() { Height = Application.GetRealHeight(8), BackgroundColor = CSS_Color.BackgroundColor });
+
         }
+
+        /// <summary>
+        /// 鍒濆鍖栬緭鍏ユ潯浠跺尯鍩熺晫闈�
+        /// </summary>
+        /// <param name=""></param>
+        private void iniInputTargetView()
+        {
+            inputTargetView.RemoveAll();
+            if (securityAlarm.input.Count > 0)
+            {
+                foreach (var target in securityAlarm.input)
+                {
+                    inputTargetView.AddChidren(new InputRow(target.GetFunction().name, target.GetFunction().GetRoomListName(), target.StateText()));
+                }
+                inputTargetView.Height = Application.GetRealHeight(65 * securityAlarm.input.Count);
+                //if (outputTargetView != null)
+                //{
+                //    contentView.AddChidren(outputTargetView);
+                //}
+            }
+            else
+            {
+                inputTargetView.AddChidren(new Button()
+                {
+                    Height = Application.GetRealHeight(65),
+                    TextAlignment = TextAlignment.Center,
+                    TextSize = CSS_FontSize.TextFontSize,
+                    TextColor = CSS_Color.PromptingColor1,
+                    TextID = StringId.ThereIsNoAssociatedTaskDeploymentStatus,
+                    IsMoreLines = true,
+                    BackgroundColor = CSS_Color.MainBackgroundColor,
+                });
+
+                inputTargetView.Height = Application.GetRealHeight(68);
+                //if(outputTargetView!= null)
+                //{
+                //    contentView.AddChidren(outputTargetView);
+                //}
+            }
+
+
+        }
+
+        /// <summary>
+        /// 鍒濆鍖栧憡璀︾洰鏍囧尯鍩�
+        /// </summary>
+        private void iniAlarmView()
+        {
+            #region 鍛婅鐩爣
+            var outputRow = new FrameLayout()
+            {
+                Height = Application.GetRealHeight(44),
+                BackgroundColor = CSS_Color.MainBackgroundColor,
+            };
+            contentView.AddChidren(outputRow);
+
+            var btnOutputRowTitle = new Button()
+            {
+                X = Application.GetRealWidth(16),
+                TextColor = CSS_Color.MainColor,
+                TextAlignment = TextAlignment.CenterLeft,
+                TextSize = CSS_FontSize.SubheadingFontSize,
+                TextID = StringId.AlarmTargetAfterTriggering,
+                IsBold = true,
+            };
+            outputRow.AddChidren(btnOutputRowTitle);
+
+            var btnAddOutTarget = new Button()
+            {
+                X = Application.GetRealWidth(337),
+                Y = Application.GetRealHeight(6),
+                Width = Application.GetRealWidth(32),
+                Height = Application.GetRealWidth(32),
+                UnSelectedImagePath = "FunctionIcon/ArmCenter/AddTargetIcon.png",
+            };
+            outputRow.AddChidren(btnAddOutTarget);
+
+            btnAddOutTarget.MouseUpEventHandler = (sender, e) => {
+                Action<SecurityAlarm> action = (outTemp) => {
+                    securityAlarm = outTemp;
+                    iniAlarmListView();
+                };
+                var page = new AddOutputPage(securityAlarm, action);
+                MainPage.BasePageView.AddChidren(page);
+                page.LoadPage();
+                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+            };
+
+            outputRow.AddChidren(new Button() { Gravity = Gravity.CenterHorizontal, Y = Application.GetRealHeight(43), Height = 1, BackgroundColor = CSS_Color.DividingLineColor });
+
+
+            outputTargetView = new VerticalScrolViewLayout()
+            {
+                ScrollEnabled = false,
+            };
+            contentView.AddChidren(outputTargetView);
+
+            iniAlarmListView();
+
+            #endregion
+            contentView.AddChidren(new Button() { Height = Application.GetRealHeight(8), BackgroundColor = CSS_Color.BackgroundColor });
+
+        }
+
+        /// <summary>
+        /// 鍒濆鍖栧憡璀﹀垪琛ㄥ尯鍩�
+        /// </summary>
+        private void iniAlarmListView()
+        {
+            outputTargetView.RemoveAll();
+            if (securityAlarm.output.Count > 0)
+            {
+                foreach (var outTarget in securityAlarm.output)
+                {
+                    outputTargetView.AddChidren(new OutputRow(outTarget.GetFunction().name, outTarget.GetFunction().GetRoomListName(), "鎵撳紑"));
+                }
+                outputTargetView.Height = Application.GetRealHeight(65 * securityAlarm.output.Count);
+            }
+            else
+            {
+                outputTargetView.AddChidren(new Button()
+                {
+                    Height = Application.GetRealHeight(65),
+                    TextAlignment = TextAlignment.Center,
+                    TextSize = CSS_FontSize.TextFontSize,
+                    TextColor = CSS_Color.PromptingColor1,
+                    TextID = StringId.ThereIsNoAssociatedTaskDeploymentStatus,
+                    IsMoreLines = true,
+                    BackgroundColor = CSS_Color.MainBackgroundColor,
+                });
+            }
+        }
+
 
         /// <summary>
         /// 淇敼瀹夐槻鍚嶇О
@@ -163,51 +448,65 @@
             {
                 Action<string> callBack = (str) =>
                 {
-                    var waitPage = new Loading();
-                    bodyView.AddChidren(waitPage);
-                    waitPage.Start(Language.StringByID(StringId.PleaseWait));
-                    new System.Threading.Thread(() =>
+                    //鍚嶇О涓嶈兘涓虹┖
+                    if (string.IsNullOrEmpty(str))
                     {
-                        try
+                        new Tip()
                         {
-                            securityAlarm.name = str;
-                            var responsePack = new HttpServerRequest().EditSecurity(new List<SecurityAlarm>() { securityAlarm});
+                            CloseTime = 1,
+                            Text = Language.StringByID(StringId.NameCannotBeEmpty),
+                            Direction = AMPopTipDirection.None,
+                        }.Show(bodyView);
+                        return;
+                    }
 
-                            if (responsePack.Code == StateCode.SUCCESS)
-                            {
-                                Application.RunOnMainThread(() =>
-                                {
-                                    btnDeploymentName.Text = str;
-                                });
-                            }
-                            else
-                            {
-                                IMessageCommon.Current.ShowErrorInfoAlter(responsePack.Code);
-                            }
-                        }
-                        catch (Exception ex)
-                        {
-                            MainPage.Log($"update user name error : {ex.Message}");
-                        }
-                        finally
-                        {
-                            Application.RunOnMainThread(() =>
-                            {
-                                if (waitPage != null)
-                                {
-                                    waitPage.RemoveFromParent();
-                                    waitPage = null;
-                                }
-                            });
-                        }
-                    })
-                    { IsBackground = true }.Start();
+
+                    btnDeploymentName.Text = securityAlarm.name = str;
+
+                    //var waitPage = new Loading();
+                    //bodyView.AddChidren(waitPage);
+                    //waitPage.Start(Language.StringByID(StringId.PleaseWait));
+                    //new System.Threading.Thread(() =>
+                    //{
+                    //    try
+                    //    {
+                    //        securityAlarm.name = str;
+                    //        var responsePack = new HttpServerRequest().EditSecurity(new List<SecurityAlarm>() { securityAlarm});
+                    //        if (responsePack.Code == StateCode.SUCCESS)
+                    //        {
+                    //            Application.RunOnMainThread(() =>
+                    //            {
+                    //                btnDeploymentName.Text = str;
+                    //            });
+                    //        }
+                    //        else
+                    //        {
+                    //            IMessageCommon.Current.ShowErrorInfoAlter(responsePack.Code);
+                    //        }
+                    //    }
+                    //    catch (Exception ex)
+                    //    {
+                    //        MainPage.Log($"update user name error : {ex.Message}");
+                    //    }
+                    //    finally
+                    //    {
+                    //        Application.RunOnMainThread(() =>
+                    //        {
+                    //            if (waitPage != null)
+                    //            {
+                    //                waitPage.RemoveFromParent();
+                    //                waitPage = null;
+                    //            }
+                    //        });
+                    //    }
+                    //})
+                    //{ IsBackground = true }.Start();
                 };
                 new PublicAssmebly().LoadDialog_EditParater(StringId.Name, securityAlarm.name, callBack, StringId.NameCannotBeEmpty, 0, new List<string>());
             };
             btnDeploymentName.MouseUpEventHandler = eventHandler;
         }
 
-
     }
+
 }
diff --git a/HDL_ON/UI/UI2/FuntionControlView/ArmSensor/ArmSensorHistroyPaging.cs b/HDL_ON/UI/UI2/FuntionControlView/ArmSensor/ArmSensorHistroyPaging.cs
index bd249f2..5ca7239 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/ArmSensor/ArmSensorHistroyPaging.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/ArmSensor/ArmSensorHistroyPaging.cs
@@ -48,6 +48,8 @@
                     var pack = pm.GetArmSensorHistory(device.deviceId, "20", "1");
                     var revData = Newtonsoft.Json.JsonConvert.DeserializeObject<Cloud_ArmSensorHistory>(pack.Data.ToString());
                     List<string> years = new List<string>();
+                    if (revData == null)
+                        return;
                     Application.RunOnMainThread(() =>
                     {
                         var startTime = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1)); // 褰撳湴鏃跺尯
diff --git a/HDL_ON/UI/UI2/FuntionControlView/ArmSensor/SenesorMegahealthPage.cs b/HDL_ON/UI/UI2/FuntionControlView/ArmSensor/SenesorMegahealthPage.cs
index 7e35058..74924ef 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/ArmSensor/SenesorMegahealthPage.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/ArmSensor/SenesorMegahealthPage.cs
@@ -2,8 +2,6 @@
 using HDL_ON.Stan;
 using HDL_ON.UI.CSS;
 using HDL_ON.Entity;
-using System.Collections.Generic;
-using System;
 
 namespace HDL_ON.UI
 {
diff --git a/HDL_ON/UI/UI2/FuntionControlView/ArmSensor/SensorGasPage.cs b/HDL_ON/UI/UI2/FuntionControlView/ArmSensor/SensorGasPage.cs
new file mode 100644
index 0000000..ac4b459
--- /dev/null
+++ b/HDL_ON/UI/UI2/FuntionControlView/ArmSensor/SensorGasPage.cs
@@ -0,0 +1,177 @@
+锘縰sing Shared;
+using HDL_ON.Stan;
+using HDL_ON.UI.CSS;
+using HDL_ON.Entity;
+
+namespace HDL_ON.UI
+{
+    public class SensorGasPage : DeviceFunctionCardCommonForm
+    {
+        #region 鈻� 鍙橀噺澹版槑___________________________
+
+        /// <summary>
+        /// 鍥炬爣
+        /// </summary>
+        private IconViewControl btnIcon = null;
+        /// <summary>
+        /// 鏂囨湰鎺т欢
+        /// </summary>
+        private NormalViewControl btnSuctionView = null;
+
+        #endregion
+
+        #region 鈻� 鍒濆鍖朹____________________________
+
+        /// <summary>
+        /// 鍒濆鍖栫櫧鑹插尯鍩熺殑鍐呭
+        /// </summary>
+        public override void InitFrameWhiteContent()
+        {
+            base.SetTitleText(Language.StringByID(StringId.SensorGas));
+
+            //娣诲姞绗簩绱㈠紩椤�
+            this.AddSecondPage();
+            //鍒濆鍖栫涓�涓储寮曢〉鐨勫唴瀹�
+            this.InitFrameWhiteContent1();
+            //鍒濆鍖栫浜屼釜绱㈠紩椤电殑鍐呭
+            this.InitFrameWhiteContent2();
+
+            //鍒锋柊褰撳墠璁惧鐨勭姸鎬佺紦瀛�
+            this.RefreshNowDeviceStatuMemory(this.device);
+            //鍒锋柊鐣岄潰鐘舵��
+            this.RefreshFormStatu();
+            //璇诲彇鐘舵��
+            new System.Threading.Thread(() =>
+            {
+                if (device.spk == SPK.SenesorMegahealth)
+                {
+                    DriverLayer.Control.Ins.SendReadCommand(device, true);
+                }
+            })
+            { IsBackground = true }.Start();
+        }
+
+        /// <summary>
+        /// 鍒濆鍖栫涓�涓储寮曢〉鐨勫唴瀹�
+        /// </summary>
+        private void InitFrameWhiteContent1()
+        {
+            btnIcon = new IconViewControl(198)
+            {
+                Gravity = Gravity.CenterHorizontal,
+                Y = Application.GetRealWidth(146),
+                UnSelectedImagePath = "FunctionIcon/ArmSensor/UnderProtectionBgIcon.png",
+            };
+            FrameWhiteCentet1.AddChidren(btnIcon);
+
+            btnSuctionView = new NormalViewControl(300, 84, true)
+            {
+                Gravity = Gravity.CenterHorizontal,
+                Y = btnIcon.Bottom,
+                TextAlignment = TextAlignment.Center,
+                TextSize = CSS_FontSize.TextFontSize,
+                TextColor = CSS_Color.TextualColor,
+                SelectedTextColor = CSS_Color.MainColor,
+            };
+            FrameWhiteCentet1.AddChidren(btnSuctionView);
+            RefreshFormStatu();
+        }
+
+        /// <summary>
+        /// 鍒濆鍖栫浜屼釜绱㈠紩椤电殑鍐呭
+        /// </summary>
+        private void InitFrameWhiteContent2()
+        {
+            var paging = new ArmSensorHistroyPaging(device);
+            paging.InitFrame(FrameWhiteCentet2);
+        }
+
+        #endregion
+
+        #region 鈻� 璁惧鐘舵�佸弽棣坃______________________
+
+        /// <summary>
+        /// 璁惧鐘舵�佸弽棣�
+        /// </summary>
+        /// <param name="i_LocalDevice"></param>
+        public override void DeviceStatuPush(Function i_LocalDevice)
+        {
+            //涓嶆槸鍚屼竴涓笢瑗�
+            if (this.device.sid != i_LocalDevice.sid) { return; }
+
+            //鍒锋柊褰撳墠璁惧鐨勭姸鎬佺紦瀛�
+            this.RefreshNowDeviceStatuMemory(i_LocalDevice);
+            //鍒锋柊鐣岄潰鐘舵��
+            this.RefreshFormStatu();
+        }
+
+        #endregion
+
+        #region 鈻� 鍙戦�佸悇绉嶅懡浠______________________
+
+        #endregion
+
+        #region 鈻� 鍒锋柊鐣岄潰鐘舵�乢______________________
+
+        /// <summary>
+        /// 鍒锋柊鐣岄潰鐘舵��
+        /// </summary>
+        private void RefreshFormStatu()
+        {
+            Application.RunOnMainThread(() => {
+                foreach(var temp in device.attributes) { 
+                    if (temp != null)
+                    {
+                        if (temp.state == "alarm")   
+                        {
+                            btnIcon.UnSelectedImagePath = "FunctionIcon/ArmSensor/ArmSensorSmokeStateBgIconOn.png";
+                            btnSuctionView.TextID = StringId.InAlarm;
+                            btnSuctionView.IsSelected = true;
+                        }
+                        else if (temp.state == "normal")
+                        {
+                            btnIcon.UnSelectedImagePath = "FunctionIcon/ArmSensor/UnderProtectionBgIcon.png";
+                            btnSuctionView.TextID = StringId.SensorNormalState;
+                            btnSuctionView.IsSelected = false;
+                        }
+                    }
+                }
+            });
+        }
+
+        #endregion
+
+        #region 鈻� 涓�鑸柟娉昣__________________________
+
+        /// <summary>
+        /// 鍒锋柊褰撳墠璁惧鐨勭姸鎬佺紦瀛�
+        /// </summary>
+        private void RefreshNowDeviceStatuMemory(Function i_LocalDevice)
+        {
+            //foreach (var data in i_LocalDevice.status)
+            //{
+            //    if (data.key == FunctionAttributeKey.Status)
+            //    {
+            //        Application.RunOnMainThread(() =>
+            //        {
+            //            if (data.value.ToLower() == "open")
+            //            {
+            //                this.btnIcon.IsSelected = true;
+            //                this.btnSuctionView.IsSelected = true;
+            //                this.btnSuctionView.TextID = StringId.Open;
+            //            }
+            //            else
+            //            {
+            //                this.btnIcon.IsSelected = false;
+            //                this.btnSuctionView.IsSelected = false;
+            //                this.btnSuctionView.TextID = StringId.Close;
+            //            }
+            //        });
+            //    }
+            //}
+        }
+
+        #endregion
+    }
+
+}
diff --git a/HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalPage.cs b/HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalPage.cs
index cd99561..7801755 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalPage.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalPage.cs
@@ -29,6 +29,8 @@
         /// </summary>
         FrameLayout sensorListView;
 
+        VerticalScrolViewLayout sensorListContentView;
+
         /// <summary>
         /// 澶╂皵鍚嶇О鏂囨湰
         /// </summary>
@@ -237,17 +239,18 @@
             contentView.AddChidren(btnRoomClickRow);
 
             #endregion
-
-            sensorListView = new FrameLayout()
+            sensorListContentView = new VerticalScrolViewLayout()
             {
                 Gravity = Gravity.CenterHorizontal,
                 Y = Application.GetRealHeight(50),
-                Height = Application.GetRealHeight(456),
+                Height = Application.GetRealHeight(400),
                 Radius = (uint)Application.GetRealWidth(12),
                 BorderColor = 0x00000000,
                 BorderWidth = 0,
             };
-            contentView.AddChidren(sensorListView);
+            contentView.AddChidren(sensorListContentView);
+            sensorListView = new FrameLayout();
+            sensorListContentView.AddChidren(sensorListView);
 
             LoadSenesorList();
 
@@ -271,7 +274,7 @@
             int index = 0;
             foreach (var sensor in FunctionList.List.GetEnvirSensorsList())
             {
-                if(sensor.spk == SPK.SensorEnvironment)
+                if(SPK.EvironmentSensorList().Contains(sensor.spk))
                 {
                     foreach (var seTemp in sensor.attributes)
                     {
@@ -280,37 +283,51 @@
                             name = sensor.name,
                             sid = sensor.sid,
                             deviceId = sensor.deviceId,
-                            attributes = new List<FunctionAttributes> { new FunctionAttributes { key = "value", state = seTemp.state, curValue = seTemp.curValue } },
+                            roomIds = sensor.roomIds,
+                            attributes = new List<FunctionAttributes> { new FunctionAttributes { key = "value", state = seTemp.state, curValue = seTemp.curValue }
+                            ,new FunctionAttributes { key = "spk"} }
                         };
                         switch (seTemp.key)
                         {
                             case "co2":
                                 newTemp.spk = SPK.SensorCO2;
+                                newTemp.SetAttrState("spk", "co2");
                                 break;
                             case "pm25":
                                 newTemp.spk = SPK.SensorPm25;
+                                newTemp.SetAttrState("spk", "pm25");
                                 break;
                             case "humidity":
                                 newTemp.spk = SPK.SensorHumidity;
+                                newTemp.SetAttrState("spk", "humidity");
                                 break;
                             case "temperature":
                                 newTemp.spk = SPK.SensorTemperature;
+                                newTemp.SetAttrState("spk", "temperature");
                                 break;
                             case "tvoc":
                                 newTemp.spk = SPK.SensorTVOC;
+                                newTemp.SetAttrState("spk", "tvoc");
+                                break;
+                            default:
+                                continue;
                                 break;
                         }
-                        LoadSensorDiv(newTemp, index);
-                        index++;
+
+                        if (room.roomId == "" || sensor.roomIds.Contains(room.roomId))
+                        {
+                            LoadSensorDiv(newTemp, index);
+                            index++;
+                        }
                     }
                 }
                 else
                 {
-#if DEBUG
-                    continue;
-#endif
-                    LoadSensorDiv(sensor, index);
-                    index++;
+                    if (room.roomId == "" || sensor.roomIds.Contains(room.roomId))
+                    {
+                        LoadSensorDiv(sensor, index);
+                        index++;
+                    }
                 }
 
                 new System.Threading.Thread(() =>
@@ -319,16 +336,16 @@
                 })
                 { IsBackground = true }.Start();
             }
+            sensorListView.Height = Application.GetRealWidth(124 * (index + 1) / 2);
         }
 
         /// <summary>
         /// 鍔犺浇浼犳劅鍣ㄥ垪琛�
         /// </summary>
-        void LoadSensorDiv(Function sensor, int index)
+        void LoadSensorDiv(Function sensor,int index)
         {
             var levelColorList = sensorTemp.GetLevelColorList(sensor.spk);
             var levelTextList = sensorTemp.GetLevelTextList(sensor.spk);
-            if (room.roomId == "" || sensor.roomIds.Contains(room.roomId))
             {
                 var sensorTag = sensor.spk + sensor.sid + sensor.deviceId;
                 FrameLayout sensorView = new FrameLayout()
@@ -748,7 +765,7 @@
                 {
                     if (bodyView != null)
                     {
-                        if (updateTemp.spk == SPK.SensorEnvironment)
+                        if (SPK.EvironmentSensorList().Contains(updateTemp.spk ))
                         {
                             foreach (var seTemp in updateTemp.attributes)
                             {
diff --git a/HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalSensorPage.cs b/HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalSensorPage.cs
index f2c2ae5..5adc74f 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalSensorPage.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalSensorPage.cs
@@ -595,18 +595,18 @@
             };
             selfInfoView.AddChidren(btnSeltSensorValue);
 
-            Button btnShowData;
-            btnShowData = new Button()
-            {
-                X = Application.GetRealWidth(291),
-                Y = Application.GetRealWidth(62),
-                Width = Application.GetMinRealAverage(32),
-                Height = Application.GetMinRealAverage(32),
-                UnSelectedImagePath = "FunctionIcon/EnvironmentalScience/DiagramIcon.png",
-                SelectedImagePath = "FunctionIcon/EnvironmentalScience/DiagramIconOn.png",
-                IsSelected = true,
-            };
-            selfInfoView.AddChidren(btnShowData);
+            //Button btnShowData;
+            //btnShowData = new Button()
+            //{
+            //    X = Application.GetRealWidth(291),
+            //    Y = Application.GetRealWidth(62),
+            //    Width = Application.GetMinRealAverage(32),
+            //    Height = Application.GetMinRealAverage(32),
+            //    UnSelectedImagePath = "FunctionIcon/EnvironmentalScience/DiagramIcon.png",
+            //    SelectedImagePath = "FunctionIcon/EnvironmentalScience/DiagramIconOn.png",
+            //    IsSelected = true,
+            //};
+            //selfInfoView.AddChidren(btnShowData);
             //btnShowData.MouseUpEventHandler = (sender, e) => {
             //    btnShowData.IsSelected = !btnShowData.IsSelected;
             //    if(btnShowData.IsSelected)
@@ -644,7 +644,9 @@
 
             bool initTitleButton = true;
 
-            foreach (var tempSensor in FunctionList.List.GetEnvirSensorsList())
+            var tempList = FunctionList.List.GetEnvirSensorsList();
+
+            foreach (var tempSensor in tempList)
             {
                 if (tempSensor.sid == function.sid)
                 {
@@ -675,7 +677,7 @@
                 #region 鍏跺畠浼犳劅鍣ㄤ俊鎭爮
                 FrameLayout otherInfoView = new FrameLayout()
                 {
-                    Gravity = Gravity.CenterVertical,
+                    Gravity = Gravity.CenterHorizontal,
                     Width = Application.GetRealWidth(343),
                     Height = Application.GetRealWidth(100),
                     BackgroundColor = CSS_Color.MainBackgroundColor,
@@ -739,7 +741,11 @@
                 {
                     Action backAction = () =>
                     {
-                        btnSeltSensorName.Text = tempSensor.name;
+                        MainPage.Log("45678i");
+                        Application.RunOnMainThread(() =>
+                        {
+                            btnSeltSensorName.Text = tempSensor.name;
+                        });
                     };
                     var infoView = new FunctionBaseInfoSetPage(tempSensor, backAction);
                     MainPage.BasePageView.AddChidren(infoView);
@@ -774,21 +780,26 @@
                     btnShowData1.IsSelected = !btnShowData1.IsSelected;
                     if (btnShowData1.IsSelected)
                     {
-                        if (!showFunctions.Contains(function))
+                        if (!showFunctions.Contains(tempSensor))
                         {
-                            showFunctions.Add(function);
+                            showFunctions.Add(tempSensor);
                         }
                     }
                     else
                     {
-                        if (showFunctions.Contains(function))
+                        if (showFunctions.Contains(tempSensor))
                         {
-                            showFunctions.Remove(function);
+                            showFunctions.Remove(tempSensor);
                         }
                     }
                     LoadMothed_GetSensorHistoryData();
                 };
                 #endregion
+
+                contentView.AddChidren(new Button()
+                {
+                    Height = Application.GetRealHeight(12),
+                });
 
             }
             #endregion
@@ -826,7 +837,7 @@
 
                     string yDataString = "";
 
-                    foreach (var sr in FunctionList.List.GetEnvirSensorsList())
+                    foreach (var sr in showFunctions)
                     {
                         if (sr.spk != function.spk)
                         {
@@ -839,7 +850,9 @@
                         }
 
                         var sensorType = sr.spk.Split(".")[1];
-                        var revertObj = new HttpServerRequest().GetSensorHistory(curQueryType, sr.deviceId,"value");
+                        var queryType = sr.GetAttrState("spk")==null? "value": sr.GetAttrState("spk");
+
+                        var revertObj = new HttpServerRequest().GetSensorHistory(curQueryType, sr.deviceId, queryType);
                         if (revertObj != null)
                         {
                             if (revertObj.Code == StateCode.SUCCESS)
diff --git a/HDL_ON/UI/UI2/FuntionControlView/FoolHeating/FloorHeatingPageBLL.cs b/HDL_ON/UI/UI2/FuntionControlView/FoolHeating/FloorHeatingPageBLL.cs
index 950bbd0..4170d64 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/FoolHeating/FloorHeatingPageBLL.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/FoolHeating/FloorHeatingPageBLL.cs
@@ -107,7 +107,7 @@
                 }
 
                 var temp = Convert.ToInt32(function.GetAttrState(FunctionAttributeKey.SetTemp));
-                if (temp < Convert.ToInt32(function.GetAttribute(FunctionAttributeKey.SetTemp).min))
+                if (temp <= Convert.ToInt32(function.GetAttribute(FunctionAttributeKey.SetTemp).min))
                 {
                     return;
                 }
@@ -126,7 +126,7 @@
                     return;
                 }
                 var temp =(int) Convert.ToDouble(function.GetAttrState(FunctionAttributeKey.SetTemp));
-                if (temp > Convert.ToDouble(function.GetAttribute(FunctionAttributeKey.SetTemp).max))
+                if (temp >= Convert.ToDouble(function.GetAttribute(FunctionAttributeKey.SetTemp).max))
                 {
                     return;
                 }
diff --git a/HDL_ON/UI/UI2/FuntionControlView/FunctionBaseInfoSetPageBLL.cs b/HDL_ON/UI/UI2/FuntionControlView/FunctionBaseInfoSetPageBLL.cs
index 2742514..d8c32aa 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/FunctionBaseInfoSetPageBLL.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/FunctionBaseInfoSetPageBLL.cs
@@ -38,6 +38,7 @@
                         function.name = name;
                         btnFunctionName.Text = name;
                         function.UpdataFuncitonInfo();
+                        actionRefresh?.Invoke();
                     }
                 };
                 new PublicAssmebly().LoadDialog_EditParater(StringId.ChangeName, function.name, callBackAction,StringId.DeviceNameCannotBeEmpty,0,new System.Collections.Generic.List<string>());
diff --git a/HDL_ON/UI/UI2/FuntionControlView/Light/LightScene/AddLightScene.cs b/HDL_ON/UI/UI2/FuntionControlView/Light/LightScene/AddLightScene.cs
new file mode 100644
index 0000000..e5aba0b
--- /dev/null
+++ b/HDL_ON/UI/UI2/FuntionControlView/Light/LightScene/AddLightScene.cs
@@ -0,0 +1,90 @@
+锘縰sing System;
+using System.Collections.Generic;
+using HDL_ON.Entity;
+using HDL_ON.UI.CSS;
+using Shared;
+
+namespace HDL_ON.UI
+{
+    public class AddLightScene : FrameLayout
+    {
+        #region 鎺т欢鍒楄〃
+        /// <summary>
+        /// 褰撳墠绐椾綋
+        /// </summary>
+        static FrameLayout bodyView;
+        /// <summary>
+        /// 妤煎眰閫夋嫨涓嬫媺鍥炬爣
+        /// </summary>
+        Button btnFloorDownIcon;
+        /// <summary>
+        /// 妤煎眰鏄剧ず
+        /// </summary>
+        Button btnFloor;
+        /// <summary>
+        /// 鍔熻兘鍒楄〃闆嗗悎鏄剧ず鍖哄煙
+        /// </summary>
+        static VerticalScrolViewLayout functionListView;
+        #endregion
+
+        List<Function> functionList;
+
+        public AddLightScene()
+        {
+            bodyView = this;
+            functionList = new List<Function>();
+        }
+
+        public void LoadPage(int titleId)
+        {
+            bodyView.BackgroundColor = CSS_Color.BackgroundColor;
+            new TopViewDiv(bodyView, Language.StringByID(titleId)).LoadTopView();
+
+            /// <summary>
+            /// 鎴块棿鍐呭鏄剧ず鍖哄煙
+            /// </summary>
+            var roomFloorChangeView = new FrameLayout()
+            {
+                Y = Application.GetRealHeight(64),
+                Height = Application.GetRealHeight(52),
+            };
+            bodyView.AddChidren(roomFloorChangeView);
+            #region 鎴块棿椤堕儴鍒囨崲鏄剧ず鍖哄煙
+            btnFloorDownIcon = new Button()
+            {
+                Width = Application.GetMinRealAverage(16),
+                Height = Application.GetMinRealAverage(16),
+                X = Application.GetRealWidth(16),
+                Y = Application.GetRealHeight(18),
+                UnSelectedImagePath = "Public/DownIcon.png",
+            };
+            roomFloorChangeView.AddChidren(btnFloorDownIcon);
+
+            btnFloor = new Button()
+            {
+                X = btnFloorDownIcon.Right,
+                Y = Application.GetRealHeight(18),
+                Width = Application.GetRealWidth(200),
+                Height = Application.GetMinRealAverage(16),
+                TextColor = CSS_Color.FirstLevelTitleColor,
+                TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
+                TextAlignment = TextAlignment.CenterLeft,
+                Text = DB_ResidenceData.Instance.CurFloor.roomName,
+            };
+            roomFloorChangeView.AddChidren(btnFloor);
+            #endregion
+
+            functionListView = new VerticalScrolViewLayout()
+            {
+                Y = Application.GetRealHeight(64 + 52),
+                Height = Application.GetRealHeight(603 - 12 - 52),
+            };
+            bodyView.AddChidren(functionListView);
+
+                functionList.AddRange(FunctionList.List.GetLightList());
+
+
+        }
+
+    }
+}
\ No newline at end of file
diff --git a/HDL_ON/UI/UI2/FuntionControlView/Light/RGBPageBLL.cs b/HDL_ON/UI/UI2/FuntionControlView/Light/RGBPageBLL.cs
index b0c2522..d46bdd0 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/Light/RGBPageBLL.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/Light/RGBPageBLL.cs
@@ -49,6 +49,7 @@
                             bodyView.btnWhiteRound.Visible = false;
                         }
                         bodyView.btnCurColor.BackgroundColor = (uint)(0xFF000000 + bodyView.lightTemp.GetRGBcolor(updateTemp));
+                        bodyView.lastColor = bodyView.lightTemp.GetRGBbytes(updateTemp);
                         if (bodyView.lightTemp.GetRGBcolor(updateTemp) == 16777215 && bodyView.btnCurColor.BorderColor != 0x00000000)
                         {
                             bodyView.btnCurColor.BorderColor = CSS.CSS_Color.PromptingColor2;
@@ -158,7 +159,7 @@
 
                     for (int i = 0; i < 3; i++)
                     {
-                        if (lightTemp.GetRGBbytes(function)[i] != lastColor[i])
+                        if (lightTemp.GetRGBbytes(function)[i].ToString() != lastColor[i].ToString())
                         {
                             function.SetAttrState(FunctionAttributeKey.RGB, lastColor);
                             lightTemp.SetRGBcolor(lastColor, function);
@@ -309,6 +310,7 @@
                 System.Collections.Generic.Dictionary<string, string> d = new System.Collections.Generic.Dictionary<string, string>();
                 d.Add(FunctionAttributeKey.RGB, lightTemp.GetRGBcolorString(function));
                 Control.Ins.SendWriteCommand(function, d);
+                lastColor = new byte[] { 255, 255, 255 };
             };
         }
 
diff --git a/HDL_ON/UI/UI2/FuntionControlView/Video/VideoMainView.cs b/HDL_ON/UI/UI2/FuntionControlView/Video/VideoMainView.cs
index 42628ff..5198364 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/Video/VideoMainView.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/Video/VideoMainView.cs
@@ -475,6 +475,7 @@
             var dateTime = TimeZoneInfo.ConvertTimeFromUtc(utcTime, TimeZoneInfo.Local);
             return dateTime.ToString("MM-dd HH:mm");
         }
+
         /// <summary>
         /// 鑾峰彇鍛煎彨鐘舵�佹枃鏈�
         /// </summary>
diff --git a/HDL_ON/UI/UI2/UserPage.cs b/HDL_ON/UI/UI2/UserPage.cs
index 2da462c..0cca652 100644
--- a/HDL_ON/UI/UI2/UserPage.cs
+++ b/HDL_ON/UI/UI2/UserPage.cs
@@ -129,6 +129,11 @@
                 //2020-12-07 澧炲姞鐗堟湰妫�娴嬫洿鏂版柟娉�
                 HDLCommon.Current.CheckIfNeedForceUpdate();
 
+#if __Android__
+                //寮�鍚畾浣嶆湇鍔�
+                Shared.Application.StartGPSLocationService();
+#endif
+
             }
             catch (Exception ex)
             {
@@ -169,7 +174,7 @@
             };
             navigationView.AddChidren(NavigationSubView);
 
-            #region 鏀惰棌鍖哄煙
+#region 鏀惰棌鍖哄煙
             collectionView = new FrameLayout() {
                 Width  = Application.GetRealWidth(94),
             };
@@ -197,9 +202,9 @@
                 IsSelected = true,
             };
             collectionView.AddChidren(btnCollectionText);
-            #endregion
+#endregion
 
-            #region 鍒嗙被鍖哄煙
+#region 鍒嗙被鍖哄煙
             classificationView = new FrameLayout()
             {
                 Width = Application.GetRealWidth(94),
@@ -228,9 +233,9 @@
                 TextAlignment = TextAlignment.Center,
             };
             classificationView.AddChidren(btnClassificationText);
-            #endregion
+#endregion
 
-            #region 鏅鸿兘鍖哄煙
+#region 鏅鸿兘鍖哄煙
             intellectualizationView = new FrameLayout()
             {
                 Width = Application.GetRealWidth(94),
@@ -259,9 +264,9 @@
                 TextAlignment = TextAlignment.Center,
             };
             intellectualizationView.AddChidren(btnIntellectualizationText);
-            #endregion
+#endregion
             
-            #region 涓汉涓績
+#region 涓汉涓績
             personalCenterView = new FrameLayout()
             {
                 Width = Application.GetRealWidth(94),
@@ -292,7 +297,7 @@
                 TextAlignment = TextAlignment.Center,
             };
             personalCenterView.AddChidren(btnPersonalCenterText);
-            #endregion
+#endregion
 
             var homePage = new HomePage();
             ContextView.AddChidren(homePage);
@@ -315,7 +320,7 @@
             btnClassificationText.IsSelected = false;
             btnIntellectualizationText.IsSelected = false;
             btnPersonalCenterText.IsSelected = false;
-            #region 绉诲姩鍔ㄧ敾
+#region 绉诲姩鍔ㄧ敾
             //绉诲姩璺濈
             var distance = navigationSelectionView.X - collectionView.X + Application.GetRealWidth(94*3);
             int total = 10;
@@ -375,7 +380,7 @@
                     btnNavigationSelectionIcon.SetRotation(0f);
                 });
             }) { IsBackground = true ,Priority = System.Threading.ThreadPriority.Highest}.Start();
-            #endregion
+#endregion
             ContextView.RemoveAll();
             var homePage = new HomePage();
             ContextView.AddChidren(homePage);
@@ -397,7 +402,7 @@
             btnClassificationText.IsSelected = false;
             btnIntellectualizationText.IsSelected = false;
             btnPersonalCenterText.IsSelected = false;
-            #region 绉诲姩鍔ㄧ敾
+#region 绉诲姩鍔ㄧ敾
             var distance = navigationSelectionView.X - classificationView.X + Application.GetRealWidth(94 * 3);
             int total = 10;
             int sleepTime = 300;
@@ -464,7 +469,7 @@
                 });
             })
             { IsBackground = true, Priority = System.Threading.ThreadPriority.Highest }.Start();
-            #endregion
+#endregion
             ContextView.RemoveAll();
             var classificaitionView = new ClassificationPage();
             ContextView.AddChidren(classificaitionView);
@@ -488,7 +493,7 @@
             btnCollectionIcon.IsSelected = false;
             btnClassificationIcon.IsSelected = false;
             btnPersonalCenterIcon.IsSelected = false;
-            #region 绉诲姩鍔ㄧ敾
+#region 绉诲姩鍔ㄧ敾
             var distance = navigationSelectionView.X - intellectualizationView.X + Application.GetRealWidth(94 * 3);
             int total = 10;
             int sleepTime = 300;
@@ -554,7 +559,7 @@
                 });
             })
             { IsBackground = true, Priority = System.Threading.ThreadPriority.Highest }.Start();
-            #endregion
+#endregion
             ContextView.RemoveAll();
             var intelligenceView = new IntelligencePage();
             ContextView.AddChidren(intelligenceView);
@@ -579,7 +584,7 @@
             btnCollectionIcon.IsSelected = false;
             btnClassificationIcon.IsSelected = false;
             btnIntellectualizationIcon.IsSelected = false;
-            #region 绉诲姩鍔ㄧ敾
+#region 绉诲姩鍔ㄧ敾
             var distance = navigationSelectionView.X - personalCenterView.X + Application.GetRealWidth(94 * 3);
             int total = 10;
             int sleepTime = 300;
@@ -638,7 +643,7 @@
                 });
             })
             { IsBackground = true, Priority = System.Threading.ThreadPriority.Highest }.Start();
-            #endregion
+#endregion
 
             ContextView.RemoveAll();
             var personalCenterPage = new UI.PersonalCenterPage();
diff --git a/ys/Jars/app-release.aar b/ys/Jars/app-release.aar
index f612de8..8277f9d 100644
--- a/ys/Jars/app-release.aar
+++ b/ys/Jars/app-release.aar
Binary files differ

--
Gitblit v1.8.0