Sfoglia il codice sorgente

ERP Mobile iOS 26 compatible update not finished
Complete common editor module

Ray Zhang 5 mesi fa
parent
commit
c3dc19d02e
67 ha cambiato i file con 4233 aggiunte e 527 eliminazioni
  1. 17 3
      RedAnt ERP Mobile/HMLG Scan Order.xcodeproj/project.pbxproj
  2. 2 2
      RedAnt ERP Mobile/HMLG Scan Order/ChangePasswordViewController.m
  3. 19 0
      RedAnt ERP Mobile/HMLG Scan Order/HMLG Scan Order-Info.plist
  4. 5 5
      RedAnt ERP Mobile/HMLG Scan Order/MainViewController.m
  5. 24 24
      RedAnt ERP Mobile/HMLG Scan Order/SO.storyboard
  6. 2980 0
      RedAnt ERP Mobile/HMLG Scan Order/SO_5价格.storyboard
  7. 1 1
      RedAnt ERP Mobile/HMLG Scan Order/ScanHistoryViewController.m
  8. 5 2
      RedAnt ERP Mobile/HMLG Scan Order/ScanListCell.h
  9. 16 3
      RedAnt ERP Mobile/HMLG Scan Order/ScanListCell.m
  10. 3 1
      RedAnt ERP Mobile/HMLG Scan Order/ScanModelListCell.h
  11. 16 3
      RedAnt ERP Mobile/HMLG Scan Order/ScanModelListCell.m
  12. 3 3
      RedAnt ERP Mobile/HMLG Scan Order/ScanOrderModelListViewController.m
  13. 2 2
      RedAnt ERP Mobile/HMLG Scan Order/ScanSearchViewController.m
  14. 17 0
      RedAnt ERP Mobile/HMLG Scan Order/SceneDelegate.h
  15. 13 0
      RedAnt ERP Mobile/HMLG Scan Order/SceneDelegate.m
  16. 2 2
      RedAnt ERP Mobile/HMLG Scan Order/ServerSettingViewController.m
  17. 5 1
      RedAnt ERP Mobile/HMLG Scan Order/config.h
  18. 6 6
      RedAnt ERP Mobile/RedAnt ERP Mobile.xcworkspace/contents.xcworkspacedata
  19. 13 77
      RedAnt ERP Mobile/common/AppDelegateBase.h
  20. 57 32
      RedAnt ERP Mobile/common/AppDelegateBase.m
  21. 16 16
      RedAnt ERP Mobile/common/Functions/OLO/ScanOrderListViewController.m
  22. 4 2
      RedAnt ERP Mobile/common/Functions/order/CreateOrderViewController.m
  23. 79 0
      RedAnt ERP Mobile/common/Functions/signature/RASingleton.h
  24. 143 0
      RedAnt ERP Mobile/common/Functions/signature/RASingleton.m
  25. 12 0
      RedAnt ERP Mobile/common/RASingleton.h
  26. 11 0
      RedAnt ERP Mobile/common/SceneDelegateBase.h
  27. 64 0
      RedAnt ERP Mobile/common/SceneDelegateBase.m
  28. 1 1
      RedAnt ERP Mobile/common/qrcode/QRCodeGenerator.m
  29. 19 3
      RedAnt ERP Mobile/iSales-CONTRAST.xcodeproj/project.pbxproj
  30. 1 1
      RedAnt ERP Mobile/iSales-CONTRAST.xcodeproj/xcuserdata/ruizhang.xcuserdatad/xcschemes/xcschememanagement.plist
  31. 17 0
      RedAnt ERP Mobile/iSales-CONTRAST/SceneDelegate.h
  32. 13 0
      RedAnt ERP Mobile/iSales-CONTRAST/SceneDelegate.m
  33. 21 0
      RedAnt ERP Mobile/iSales-CONTRAST/iSales-CONTRAST-Info.plist
  34. 19 3
      RedAnt ERP Mobile/iSales-NPD.xcodeproj/project.pbxproj
  35. 1 0
      RedAnt ERP Mobile/iSales-NPD/GoogleService-Info.plist
  36. 17 0
      RedAnt ERP Mobile/iSales-NPD/SceneDelegate.h
  37. 13 0
      RedAnt ERP Mobile/iSales-NPD/SceneDelegate.m
  38. 1 1
      RedAnt ERP Mobile/iSales-NPD/config.h
  39. 21 0
      RedAnt ERP Mobile/iSales-NPD/iSales-NPD-Info.plist
  40. 19 3
      RedAnt ERP Mobile/iSales-TRADESHOW.xcodeproj/project.pbxproj
  41. 17 0
      RedAnt ERP Mobile/iSales-TRADESHOW/SceneDelegate.h
  42. 13 0
      RedAnt ERP Mobile/iSales-TRADESHOW/SceneDelegate.m
  43. 19 0
      RedAnt ERP Mobile/iSales-TRADESHOW/iSales-TRADESHOW-Info.plist
  44. 17 39
      RedAnt ERP Mobile/iSales-UNITED WAVER.xcodeproj/project.pbxproj
  45. 50 39
      RedAnt ERP Mobile/iSales-USAI.xcodeproj/project.pbxproj
  46. 17 0
      RedAnt ERP Mobile/iSales-USAI/SceneDelegate.h
  47. 13 0
      RedAnt ERP Mobile/iSales-USAI/SceneDelegate.m
  48. 1 0
      RedAnt ERP Mobile/iSales-USAI/config.h
  49. 19 0
      RedAnt ERP Mobile/iSales-USAI/iSales-USAI-Info.plist
  50. BIN
      RedAnt ERP Mobile/iSales-USAI/softScanBeep.wav
  51. 17 0
      RedAnt ERP Mobile/iSales-UWAVER/SceneDelegate.h
  52. 13 0
      RedAnt ERP Mobile/iSales-UWAVER/SceneDelegate.m
  53. 19 0
      RedAnt ERP Mobile/iSales-UWAVER/iSales-UWAVER-Info.plist
  54. 1 1
      common/MenuViewController.h
  55. 13 1
      common/NetworkUtils.m
  56. 6 1
      common/QRCode/RAQRCodeScannerViewController.m
  57. 1 1
      common/ScannerControllerView.h
  58. 112 55
      common/ScannerViewController.m
  59. 12 13
      common/customUI/CommonEditoriPad/iPadCommonEditorCellEdit.xib
  60. 14 11
      common/customUI/CommonEditoriPad/iPadCommonEditorCellEnum.xib
  61. 7 20
      common/customUI/CommonEditoriPad/iPadCommonEditorCellLabel.xib
  62. 16 15
      common/customUI/CommonEditoriPad/iPadCommonEditorCellModel.xib
  63. 10 8
      common/customUI/CommonEditoriPad/iPadCommonEditorCellTextView.xib
  64. 90 89
      common/customUI/commoneditor/CommonEditor.storyboard
  65. 14 14
      common/customUI/commoneditor/EnumSelectAndSort/EnumSelectAndSort.storyboard
  66. 18 18
      common/upload/RAUploadListViewController.m
  67. 6 5
      common/upload/RAUploadOperation.m

+ 17 - 3
RedAnt ERP Mobile/HMLG Scan Order.xcodeproj/project.pbxproj

@@ -86,6 +86,8 @@
 		3C8855A427E2D9CC005DC3FA /* ScanOrderModelListViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C8855A327E2D9CC005DC3FA /* ScanOrderModelListViewController.m */; };
 		3C8855A727E2DB1A005DC3FA /* ScanModelListCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C8855A627E2DB1A005DC3FA /* ScanModelListCell.m */; };
 		3C8855AA27E85A0C005DC3FA /* ScanCartItemCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C8855A927E85A0C005DC3FA /* ScanCartItemCell.m */; };
+		3C97F3172EC1DC1200BD9260 /* SceneDelegateBase.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C97F3162EC1DC1200BD9260 /* SceneDelegateBase.m */; };
+		3C97F31A2EC1DC3700BD9260 /* SceneDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C97F3192EC1DC3700BD9260 /* SceneDelegate.m */; };
 		3C9F81D427F6E04300B4C511 /* SetupServerViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C9F81D327F6E04300B4C511 /* SetupServerViewController.m */; };
 		3C9F81D727F831A500B4C511 /* ScanServerListViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C9F81D627F831A500B4C511 /* ScanServerListViewController.m */; };
 		3CA6DDC128E54D1C003655FF /* CartViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 3CA6DDBF28E54D1C003655FF /* CartViewController.m */; };
@@ -461,6 +463,10 @@
 		3C8855A627E2DB1A005DC3FA /* ScanModelListCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ScanModelListCell.m; sourceTree = "<group>"; };
 		3C8855A827E85A0B005DC3FA /* ScanCartItemCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ScanCartItemCell.h; sourceTree = "<group>"; };
 		3C8855A927E85A0C005DC3FA /* ScanCartItemCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ScanCartItemCell.m; sourceTree = "<group>"; };
+		3C97F3152EC1DC1200BD9260 /* SceneDelegateBase.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = SceneDelegateBase.h; path = common/SceneDelegateBase.h; sourceTree = SOURCE_ROOT; };
+		3C97F3162EC1DC1200BD9260 /* SceneDelegateBase.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; name = SceneDelegateBase.m; path = common/SceneDelegateBase.m; sourceTree = SOURCE_ROOT; };
+		3C97F3182EC1DC3700BD9260 /* SceneDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SceneDelegate.h; sourceTree = "<group>"; };
+		3C97F3192EC1DC3700BD9260 /* SceneDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = SceneDelegate.m; sourceTree = "<group>"; };
 		3C9F81D227F6E04300B4C511 /* SetupServerViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SetupServerViewController.h; sourceTree = "<group>"; };
 		3C9F81D327F6E04300B4C511 /* SetupServerViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = SetupServerViewController.m; sourceTree = "<group>"; };
 		3C9F81D527F831A500B4C511 /* ScanServerListViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ScanServerListViewController.h; sourceTree = "<group>"; };
@@ -1313,6 +1319,10 @@
 				428980221E2492D2005F1BD8 /* Price Setting */,
 				713F76B81929F4A7006A7305 /* AppDelegate.h */,
 				713F76B91929F4A7006A7305 /* AppDelegate.m */,
+				3C97F3182EC1DC3700BD9260 /* SceneDelegate.h */,
+				3C97F3192EC1DC3700BD9260 /* SceneDelegate.m */,
+				3C97F3152EC1DC1200BD9260 /* SceneDelegateBase.h */,
+				3C97F3162EC1DC1200BD9260 /* SceneDelegateBase.m */,
 				714036F821646B8C0029B10F /* AppDelegateBase.h */,
 				714036F721646B8C0029B10F /* AppDelegateBase.m */,
 				428980701E24B1E9005F1BD8 /* RASingleton.h */,
@@ -1983,7 +1993,7 @@
 			isa = PBXProject;
 			attributes = {
 				BuildIndependentTargetsInParallel = YES;
-				LastUpgradeCheck = 1500;
+				LastUpgradeCheck = 2610;
 				ORGANIZATIONNAME = "United Software Applications, Inc";
 				TargetAttributes = {
 					713F76A51929F4A7006A7305 = {
@@ -2107,6 +2117,7 @@
 				714036F921646B8C0029B10F /* AppDelegateBase.m in Sources */,
 				71FFBBEA1C60894900D91DC2 /* RANetwork.m in Sources */,
 				428980161E24924D005F1BD8 /* SortItemCell.m in Sources */,
+				3C97F3172EC1DC1200BD9260 /* SceneDelegateBase.m in Sources */,
 				3C51495C273D099600F78617 /* EnumSelectorCell.m in Sources */,
 				3C51494C273D095900F78617 /* CommonEditorCellMAction.m in Sources */,
 				7162A59D1C58733400AB630E /* OrderDetailViewController.m in Sources */,
@@ -2165,6 +2176,7 @@
 				42DC12F11F0CD98E00A4C011 /* OrderDetailPickInfoCell.m in Sources */,
 				3CABE0232861A5E000CF0DC1 /* StockTableViewCell.m in Sources */,
 				3C51494A273D095900F78617 /* CommonEditorCellEdit.m in Sources */,
+				3C97F31A2EC1DC3700BD9260 /* SceneDelegate.m in Sources */,
 				7141DD621C5747CE00F7DF59 /* NSData+CommonCrypto.m in Sources */,
 				712AFED71DBA050200254965 /* BasicDrawable.m in Sources */,
 				3C51494E273D095900F78617 /* CommonEditorCellImg.m in Sources */,
@@ -2395,6 +2407,7 @@
 				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
 				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
 				COPY_PHASE_STRIP = NO;
+				DEVELOPMENT_TEAM = HXWLAA5YN5;
 				ENABLE_STRICT_OBJC_MSGSEND = YES;
 				ENABLE_TESTABILITY = YES;
 				ENABLE_USER_SCRIPT_SANDBOXING = YES;
@@ -2416,6 +2429,7 @@
 				IPHONEOS_DEPLOYMENT_TARGET = 15.0;
 				ONLY_ACTIVE_ARCH = YES;
 				SDKROOT = iphoneos;
+				STRING_CATALOG_GENERATE_SYMBOLS = YES;
 				TARGETED_DEVICE_FAMILY = 2;
 			};
 			name = Debug;
@@ -2451,6 +2465,7 @@
 				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
 				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
 				COPY_PHASE_STRIP = YES;
+				DEVELOPMENT_TEAM = HXWLAA5YN5;
 				ENABLE_NS_ASSERTIONS = NO;
 				ENABLE_STRICT_OBJC_MSGSEND = YES;
 				ENABLE_USER_SCRIPT_SANDBOXING = YES;
@@ -2464,6 +2479,7 @@
 				GCC_WARN_UNUSED_VARIABLE = YES;
 				IPHONEOS_DEPLOYMENT_TARGET = 15.0;
 				SDKROOT = iphoneos;
+				STRING_CATALOG_GENERATE_SYMBOLS = YES;
 				TARGETED_DEVICE_FAMILY = 2;
 				VALIDATE_PRODUCT = YES;
 			};
@@ -2478,7 +2494,6 @@
 				CODE_SIGN_IDENTITY = "iPhone Developer";
 				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
 				CURRENT_PROJECT_VERSION = 57133;
-				DEVELOPMENT_TEAM = HXWLAA5YN5;
 				FRAMEWORK_SEARCH_PATHS = (
 					"$(inherited)",
 					"$(PROJECT_DIR)/GoogleAnalytics/FirebaseAnalytics/Frameworks",
@@ -2525,7 +2540,6 @@
 				CODE_SIGN_IDENTITY = "iPhone Developer";
 				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
 				CURRENT_PROJECT_VERSION = 57133;
-				DEVELOPMENT_TEAM = HXWLAA5YN5;
 				FRAMEWORK_SEARCH_PATHS = (
 					"$(inherited)",
 					"$(PROJECT_DIR)/GoogleAnalytics/FirebaseAnalytics/Frameworks",

+ 2 - 2
RedAnt ERP Mobile/HMLG Scan Order/ChangePasswordViewController.m

@@ -22,8 +22,8 @@
 }
 - (IBAction)onChangeClick:(id)sender {
     
-    UIApplication * app = [UIApplication sharedApplication];
-    AppDelegate *appDelegate = (AppDelegate *)[app delegate];
+//    UIApplication * app = [UIApplication sharedApplication];
+//    AppDelegate *appDelegate = (AppDelegate *)[app delegate];
 
     NSString* opwd = self.editopwd.text;
     

+ 19 - 0
RedAnt ERP Mobile/HMLG Scan Order/HMLG Scan Order-Info.plist

@@ -2,6 +2,25 @@
 <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
 <plist version="1.0">
 <dict>
+    <key>UIApplicationSceneManifest</key>
+    <dict>
+        <key>UIApplicationSupportsMultipleScenes</key>
+        <false/>
+        <key>UISceneConfigurations</key>
+        <dict>
+            <key>UIWindowSceneSessionRoleApplication</key>
+            <array>
+                <dict>
+                    <key>UISceneConfigurationName</key>
+                    <string>Default Configuration</string>
+                    <key>UISceneDelegateClassName</key>
+                    <string>SceneDelegate</string>
+                    <key>UISceneStoryboardFile</key>
+                    <string>Main</string>
+                </dict>
+            </array>
+        </dict>
+    </dict>
 	<key>CFBundleDevelopmentRegion</key>
 	<string>en</string>
 	<key>CFBundleDisplayName</key>

+ 5 - 5
RedAnt ERP Mobile/HMLG Scan Order/MainViewController.m

@@ -1316,7 +1316,7 @@
 - (IBAction)onUserButtonClick:(id)sender {
     
     DebugLog(@"header view login");
-    AppDelegate *appDelegate = (AppDelegate*)[[UIApplication sharedApplication] delegate];
+//    AppDelegate *appDelegate = (AppDelegate*)[[UIApplication sharedApplication] delegate];
     if( RASingleton.sharedInstance.user ==nil /*|| [RASingleton.sharedInstance.user isEqualToString:@"GUEST"]*/)
     {
 
@@ -2962,8 +2962,8 @@
     } else if ([title isEqualToString:@"Price Setting"]) {
         
 
-        UIApplication * app = [UIApplication sharedApplication];
-        AppDelegate *appDelegate = (AppDelegate *)[app delegate];
+//        UIApplication * app = [UIApplication sharedApplication];
+//        AppDelegate *appDelegate = (AppDelegate *)[app delegate];
         
         if ([RASingleton sharedInstance].global_lock) {
             
@@ -3005,8 +3005,8 @@
         
     } else if ([title isEqualToString:@"Lock"] || [title isEqualToString:@"Unlock"]) {
         
-        UIApplication * app = [UIApplication sharedApplication];
-        AppDelegate *appDelegate = (AppDelegate *)[app delegate];
+//        UIApplication * app = [UIApplication sharedApplication];
+//        AppDelegate *appDelegate = (AppDelegate *)[app delegate];
         
         JKLockController *lockVC = [[JKLockController alloc] init];
         [lockVC setPasswordKey:[NSString stringWithFormat:@"%@_password",RASingleton.sharedInstance.user]];

+ 24 - 24
RedAnt ERP Mobile/HMLG Scan Order/SO.storyboard

@@ -1,9 +1,9 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="23504" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="24128" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
     <device id="ipad10_2" orientation="portrait" layout="fullscreen" appearance="light"/>
     <dependencies>
         <deployment version="5696" identifier="iOS"/>
-        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="23506"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="24063"/>
         <capability name="Safe area layout guides" minToolsVersion="9.0"/>
         <capability name="System colors in document resources" minToolsVersion="11.0"/>
         <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
@@ -155,20 +155,20 @@
                                 <rect key="frame" x="10" y="50.5" width="546" height="500.5"/>
                                 <prototypes>
                                     <tableViewCell clipsSubviews="YES" contentMode="scaleToFill" restorationIdentifier="StockTableViewCell" insetsLayoutMarginsFromSafeArea="NO" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="StockTableViewCell" id="cCT-oh-Vaw" customClass="StockTableViewCell">
-                                        <rect key="frame" x="0.0" y="50" width="546" height="44.5"/>
+                                        <rect key="frame" x="0.0" y="50.5" width="546" height="52"/>
                                         <autoresizingMask key="autoresizingMask"/>
                                         <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" insetsLayoutMarginsFromSafeArea="NO" tableViewCell="cCT-oh-Vaw" id="H4K-HT-ycL">
-                                            <rect key="frame" x="0.0" y="0.0" width="546" height="44.5"/>
+                                            <rect key="frame" x="0.0" y="0.0" width="546" height="52"/>
                                             <autoresizingMask key="autoresizingMask"/>
                                             <subviews>
                                                 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="MODEL" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Ztx-qv-ZYJ">
-                                                    <rect key="frame" x="16" y="12" width="131" height="20.5"/>
+                                                    <rect key="frame" x="16" y="16" width="131" height="20.5"/>
                                                     <fontDescription key="fontDescription" type="boldSystem" pointSize="17"/>
                                                     <nil key="textColor"/>
                                                     <nil key="highlightedColor"/>
                                                 </label>
                                                 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="ETD" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Uak-UG-HYK">
-                                                    <rect key="frame" x="187" y="12.5" width="96" height="19.5"/>
+                                                    <rect key="frame" x="187" y="16.5" width="96" height="19.5"/>
                                                     <constraints>
                                                         <constraint firstAttribute="width" constant="96" id="CXF-TE-lvU"/>
                                                     </constraints>
@@ -177,7 +177,7 @@
                                                     <nil key="highlightedColor"/>
                                                 </label>
                                                 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="QTY" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="e7Z-1N-Xb1">
-                                                    <rect key="frame" x="323" y="12.5" width="42" height="19.5"/>
+                                                    <rect key="frame" x="323" y="16.5" width="42" height="19.5"/>
                                                     <constraints>
                                                         <constraint firstAttribute="width" constant="42" id="1Nc-3Q-pnz"/>
                                                     </constraints>
@@ -186,7 +186,7 @@
                                                     <nil key="highlightedColor"/>
                                                 </label>
                                                 <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="bzB-Zs-Ggl">
-                                                    <rect key="frame" x="385" y="5" width="145" height="34.5"/>
+                                                    <rect key="frame" x="385" y="9" width="145" height="34.5"/>
                                                     <constraints>
                                                         <constraint firstAttribute="width" constant="145" id="XtK-g7-iX0"/>
                                                     </constraints>
@@ -442,7 +442,7 @@
                                 <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                                 <prototypes>
                                     <tableViewCell clipsSubviews="YES" contentMode="scaleToFill" restorationIdentifier="ScanListCell" insetsLayoutMarginsFromSafeArea="NO" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="ScanListCell" rowHeight="166" id="YfV-Cl-5Tu" customClass="ScanListCell">
-                                        <rect key="frame" x="0.0" y="50" width="810" height="166"/>
+                                        <rect key="frame" x="0.0" y="50.5" width="810" height="166"/>
                                         <autoresizingMask key="autoresizingMask"/>
                                         <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" insetsLayoutMarginsFromSafeArea="NO" tableViewCell="YfV-Cl-5Tu" id="exp-Hy-y0g">
                                             <rect key="frame" x="0.0" y="0.0" width="810" height="166"/>
@@ -837,9 +837,9 @@ line 3</string>
                                             <outlet property="labelPrice2" destination="2me-vx-6M3" id="eZ6-c4-fs1"/>
                                             <outlet property="labelPrice3" destination="Pyr-9z-nFr" id="F8m-bX-DQj"/>
                                             <outlet property="labelPriceCTNR" destination="Snb-I4-W0D" id="fR4-hp-1GC"/>
+                                            <outlet property="labelPriceDisplay1" destination="e4y-a4-rZx" id="I9o-XJ-uGM"/>
                                             <outlet property="labelPriceNCA" destination="fkA-kv-8ja" id="xAX-Ba-wYC"/>
-                                            <outlet property="labelPriceNet" destination="e4y-a4-rZx" id="Prz-Ev-JeU"/>
-                                            <outlet property="labelPriceSpecial" destination="JzP-1G-jcR" id="L5Y-kt-tMD"/>
+                                            <outlet property="labelPriceSpecial" destination="JzP-1G-jcR" id="CZa-9X-ZLN"/>
                                             <outlet property="labelStock" destination="1X6-wZ-4ID" id="LH0-U1-Xt1"/>
                                         </connections>
                                     </tableViewCell>
@@ -930,7 +930,7 @@ line 3</string>
                                 <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                                 <prototypes>
                                     <tableViewCell clipsSubviews="YES" contentMode="scaleToFill" restorationIdentifier="ScanModelListCell" insetsLayoutMarginsFromSafeArea="NO" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="ScanModelListCell" rowHeight="166" id="di6-XI-avZ" customClass="ScanModelListCell">
-                                        <rect key="frame" x="0.0" y="50" width="810" height="166"/>
+                                        <rect key="frame" x="0.0" y="50.5" width="810" height="166"/>
                                         <autoresizingMask key="autoresizingMask"/>
                                         <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" insetsLayoutMarginsFromSafeArea="NO" tableViewCell="di6-XI-avZ" id="Ajw-zF-nXf">
                                             <rect key="frame" x="0.0" y="0.0" width="810" height="166"/>
@@ -1345,8 +1345,8 @@ line 3</string>
                                             <outlet property="labelPrice2" destination="9hH-Br-ZKJ" id="PkD-Cf-ujv"/>
                                             <outlet property="labelPrice3" destination="1kO-eZ-rr3" id="14T-b5-Ymx"/>
                                             <outlet property="labelPriceCTNR" destination="N3z-jY-g8U" id="lCb-SO-DXC"/>
+                                            <outlet property="labelPriceDisplay1" destination="NfL-2K-HAE" id="aQ2-3q-Vbv"/>
                                             <outlet property="labelPriceNCA" destination="IEa-T1-E8F" id="TZm-Xx-1VY"/>
-                                            <outlet property="labelPriceNet" destination="NfL-2K-HAE" id="GNR-hm-VP6"/>
                                             <outlet property="labelPriceSpecial" destination="6jj-I8-3Vs" id="fDM-Ps-CfE"/>
                                             <outlet property="labelStock" destination="k8U-Ey-RSG" id="QFV-eg-36Y"/>
                                             <outlet property="steper" destination="Nnj-5b-sBF" id="Lba-IX-lJj"/>
@@ -1409,7 +1409,7 @@ line 3</string>
                                         <color key="sectionIndexBackgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
                                         <prototypes>
                                             <tableViewCell clipsSubviews="YES" contentMode="scaleToFill" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="CartItemCell" rowHeight="146" id="fdn-6O-9Xe" customClass="ModelItemCell">
-                                                <rect key="frame" x="0.0" y="50" width="810" height="146"/>
+                                                <rect key="frame" x="0.0" y="50.5" width="810" height="146"/>
                                                 <autoresizingMask key="autoresizingMask"/>
                                                 <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="fdn-6O-9Xe" id="dsP-tF-cWg">
                                                     <rect key="frame" x="0.0" y="0.0" width="810" height="146"/>
@@ -1534,7 +1534,7 @@ line 3</string>
                                                             <nil key="highlightedColor"/>
                                                         </label>
                                                         <label hidden="YES" opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="No Such Model" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="faS-8H-H1x">
-                                                            <rect key="frame" x="61" y="56" width="337" height="42"/>
+                                                            <rect key="frame" x="61" y="60" width="337" height="42"/>
                                                             <constraints>
                                                                 <constraint firstAttribute="width" constant="337" id="BzO-dn-cAj"/>
                                                                 <constraint firstAttribute="height" constant="42" id="Zqx-xO-eue"/>
@@ -1626,7 +1626,7 @@ Stock</string>
                                                 </connections>
                                             </tableViewCell>
                                             <tableViewCell clipsSubviews="YES" contentMode="scaleToFill" restorationIdentifier="ScanCartItemCell" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="ScanCartItemCell" rowHeight="120" id="Bb2-X4-qir" customClass="ScanCartItemCell">
-                                                <rect key="frame" x="0.0" y="196" width="810" height="120"/>
+                                                <rect key="frame" x="0.0" y="196.5" width="810" height="120"/>
                                                 <autoresizingMask key="autoresizingMask"/>
                                                 <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="Bb2-X4-qir" id="6UY-HP-ApY">
                                                     <rect key="frame" x="0.0" y="0.0" width="810" height="120"/>
@@ -1765,7 +1765,7 @@ Stock</string>
                                                 </connections>
                                             </tableViewCell>
                                             <tableViewCell clipsSubviews="YES" contentMode="scaleToFill" preservesSuperviewLayoutMargins="YES" selectionStyle="default" indentationWidth="10" reuseIdentifier="section_header_cell" rowHeight="50" id="PUX-MI-ptL">
-                                                <rect key="frame" x="0.0" y="316" width="810" height="50"/>
+                                                <rect key="frame" x="0.0" y="316.5" width="810" height="50"/>
                                                 <autoresizingMask key="autoresizingMask"/>
                                                 <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" preservesSuperviewLayoutMargins="YES" insetsLayoutMarginsFromSafeArea="NO" tableViewCell="PUX-MI-ptL" id="eIK-df-kd8">
                                                     <rect key="frame" x="0.0" y="0.0" width="810" height="50"/>
@@ -2182,7 +2182,7 @@ Stock</string>
                                 <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                                 <prototypes>
                                     <tableViewCell clipsSubviews="YES" contentMode="scaleToFill" restorationIdentifier="ScanListCell" insetsLayoutMarginsFromSafeArea="NO" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="ScanListCell" rowHeight="166" id="RBD-TT-DqV" customClass="ScanListCell">
-                                        <rect key="frame" x="0.0" y="50" width="810" height="166"/>
+                                        <rect key="frame" x="0.0" y="50.5" width="810" height="166"/>
                                         <autoresizingMask key="autoresizingMask"/>
                                         <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="RBD-TT-DqV" translatesAutoresizingMaskIntoConstraints="NO" id="h6v-P5-Y6J">
                                             <rect key="frame" x="0.0" y="0.0" width="810" height="166"/>
@@ -2582,8 +2582,8 @@ line 3</string>
                                             <outlet property="labelPrice2" destination="CZn-lW-zFb" id="QRy-G3-hY5"/>
                                             <outlet property="labelPrice3" destination="qux-TP-f6L" id="TNX-DN-ZDt"/>
                                             <outlet property="labelPriceCTNR" destination="dPf-p7-b3A" id="gw6-pI-QFm"/>
+                                            <outlet property="labelPriceDisplay1" destination="Ua7-Qu-TE2" id="Uq7-5M-Dlv"/>
                                             <outlet property="labelPriceNCA" destination="dvh-cr-GdM" id="jEe-lE-SjP"/>
-                                            <outlet property="labelPriceNet" destination="Ua7-Qu-TE2" id="3aE-lD-fYf"/>
                                             <outlet property="labelPriceSpecial" destination="Fgw-LJ-KR5" id="x2v-ab-5WD"/>
                                             <outlet property="labelStock" destination="yG2-aU-fHH" id="zrg-82-hkh"/>
                                         </connections>
@@ -2772,10 +2772,10 @@ line 3</string>
                                 <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                                 <prototypes>
                                     <tableViewCell clipsSubviews="YES" contentMode="scaleToFill" insetsLayoutMarginsFromSafeArea="NO" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="cell" id="hO3-NR-b05">
-                                        <rect key="frame" x="0.0" y="50" width="810" height="44.5"/>
+                                        <rect key="frame" x="0.0" y="50.5" width="810" height="52"/>
                                         <autoresizingMask key="autoresizingMask"/>
                                         <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" insetsLayoutMarginsFromSafeArea="NO" tableViewCell="hO3-NR-b05" id="jg4-JD-jFQ">
-                                            <rect key="frame" x="0.0" y="0.0" width="810" height="44.5"/>
+                                            <rect key="frame" x="0.0" y="0.0" width="810" height="52"/>
                                             <autoresizingMask key="autoresizingMask"/>
                                         </tableViewCellContentView>
                                     </tableViewCell>
@@ -2809,14 +2809,14 @@ line 3</string>
                         <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
                         <subviews>
                             <tableView clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="plain" separatorStyle="default" rowHeight="-1" estimatedRowHeight="-1" sectionHeaderHeight="-1" estimatedSectionHeaderHeight="-1" sectionFooterHeight="-1" estimatedSectionFooterHeight="-1" translatesAutoresizingMaskIntoConstraints="NO" id="P62-AP-fR0">
-                                <rect key="frame" x="0.0" y="70" width="810" height="1010"/>
+                                <rect key="frame" x="0.0" y="74" width="810" height="1006"/>
                                 <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                                 <prototypes>
                                     <tableViewCell clipsSubviews="YES" contentMode="scaleToFill" insetsLayoutMarginsFromSafeArea="NO" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="cell" id="k1t-dv-O2g">
-                                        <rect key="frame" x="0.0" y="50" width="810" height="44.5"/>
+                                        <rect key="frame" x="0.0" y="50.5" width="810" height="52"/>
                                         <autoresizingMask key="autoresizingMask"/>
                                         <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" insetsLayoutMarginsFromSafeArea="NO" tableViewCell="k1t-dv-O2g" id="JR5-7G-JCb">
-                                            <rect key="frame" x="0.0" y="0.0" width="810" height="44.5"/>
+                                            <rect key="frame" x="0.0" y="0.0" width="810" height="52"/>
                                             <autoresizingMask key="autoresizingMask"/>
                                         </tableViewCellContentView>
                                     </tableViewCell>

+ 2980 - 0
RedAnt ERP Mobile/HMLG Scan Order/SO_5价格.storyboard

@@ -0,0 +1,2980 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="24128" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
+    <device id="ipad10_2" orientation="portrait" layout="fullscreen" appearance="light"/>
+    <dependencies>
+        <deployment version="5696" identifier="iOS"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="24063"/>
+        <capability name="Safe area layout guides" minToolsVersion="9.0"/>
+        <capability name="System colors in document resources" minToolsVersion="11.0"/>
+        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
+    </dependencies>
+    <scenes>
+        <!--Set Quantity-->
+        <scene sceneID="s0d-6b-0kx">
+            <objects>
+                <viewController storyboardIdentifier="ScanOrderScanModelViewController" title="Set Quantity" useStoryboardIdentifierAsRestorationIdentifier="YES" id="Y6W-OH-hqX" customClass="ScanOrderScanModelViewController" sceneMemberID="viewController">
+                    <view key="view" contentMode="scaleToFill" id="5EZ-qb-Rvc">
+                        <rect key="frame" x="0.0" y="0.0" width="480" height="320"/>
+                        <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
+                        <subviews>
+                            <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="name aaaaaaaaaaaaa aaaaaaaaaa BBBBB  CCCCC" lineBreakMode="wordWrap" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="PRk-Ka-jS0" userLabel="name ">
+                                <rect key="frame" x="148" y="20" width="308" height="100"/>
+                                <fontDescription key="fontDescription" name="HelveticaNeue" family="Helvetica Neue" pointSize="15"/>
+                                <nil key="highlightedColor"/>
+                            </label>
+                            <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="cgR-Wk-NQr">
+                                <rect key="frame" x="376" y="265.5" width="80" height="34.5"/>
+                                <state key="normal" title="Button"/>
+                                <buttonConfiguration key="configuration" style="plain" title="Update"/>
+                                <connections>
+                                    <action selector="onUpdate:" destination="Y6W-OH-hqX" eventType="touchUpInside" id="czo-ja-q2a"/>
+                                </connections>
+                            </button>
+                            <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="mGr-dd-c4r">
+                                <rect key="frame" x="24" y="265.5" width="47.5" height="34.5"/>
+                                <state key="normal" title="Button"/>
+                                <buttonConfiguration key="configuration" style="plain" title="OK"/>
+                                <connections>
+                                    <action selector="onOK:" destination="Y6W-OH-hqX" eventType="touchUpInside" id="5pr-zY-3wo"/>
+                                </connections>
+                            </button>
+                            <stepper opaque="NO" clipsSubviews="YES" contentMode="scaleToFill" horizontalHuggingPriority="750" verticalHuggingPriority="750" contentHorizontalAlignment="center" contentVerticalAlignment="center" value="1" maximumValue="99999" translatesAutoresizingMaskIntoConstraints="NO" id="jKb-jW-Rds">
+                                <rect key="frame" x="366" y="175.5" width="94" height="32"/>
+                                <constraints>
+                                    <constraint firstAttribute="height" constant="32" id="8rX-l5-A6F"/>
+                                    <constraint firstAttribute="width" constant="94" id="gvx-w5-P7c"/>
+                                </constraints>
+                            </stepper>
+                            <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="G7K-ET-ViD" userLabel="imgbtn detail">
+                                <rect key="frame" x="24" y="20" width="100" height="100"/>
+                                <constraints>
+                                    <constraint firstAttribute="width" constant="100" id="9yV-y3-PVn"/>
+                                    <constraint firstAttribute="height" constant="100" id="ZUL-Ix-psD"/>
+                                </constraints>
+                                <state key="normal" image="notfound_s">
+                                    <color key="titleShadowColor" red="0.5" green="0.5" blue="0.5" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                </state>
+                            </button>
+                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="QTY:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="j28-du-bFd">
+                                <rect key="frame" x="240" y="181" width="41" height="21"/>
+                                <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                                <nil key="textColor"/>
+                                <nil key="highlightedColor"/>
+                            </label>
+                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Price:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="gGe-DV-etn">
+                                <rect key="frame" x="20" y="140" width="44" height="21"/>
+                                <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                                <nil key="textColor"/>
+                                <nil key="highlightedColor"/>
+                            </label>
+                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="6Gl-5w-SXW">
+                                <rect key="frame" x="84" y="140" width="42" height="21"/>
+                                <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                                <nil key="textColor"/>
+                                <nil key="highlightedColor"/>
+                            </label>
+                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="z2t-CO-48M">
+                                <rect key="frame" x="316" y="140" width="42" height="21"/>
+                                <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                                <nil key="textColor"/>
+                                <nil key="highlightedColor"/>
+                            </label>
+                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Mpack:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="zIY-Ho-SNj">
+                                <rect key="frame" x="240" y="140" width="56" height="21"/>
+                                <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                                <nil key="textColor"/>
+                                <nil key="highlightedColor"/>
+                            </label>
+                            <textField opaque="NO" clipsSubviews="YES" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" text="9999" borderStyle="roundedRect" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="gOI-tN-7Fh" userLabel="qty">
+                                <rect key="frame" x="296" y="174.5" width="55" height="34"/>
+                                <constraints>
+                                    <constraint firstAttribute="width" constant="55" id="Lfa-9S-dCt"/>
+                                </constraints>
+                                <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                <fontDescription key="fontDescription" type="system" pointSize="14"/>
+                                <textInputTraits key="textInputTraits" keyboardType="numberPad"/>
+                            </textField>
+                        </subviews>
+                        <viewLayoutGuide key="safeArea" id="j2n-WV-y9L"/>
+                        <color key="backgroundColor" systemColor="systemBackgroundColor"/>
+                        <constraints>
+                            <constraint firstItem="gGe-DV-etn" firstAttribute="top" secondItem="G7K-ET-ViD" secondAttribute="bottom" constant="20" id="3GU-k4-ifh"/>
+                            <constraint firstItem="zIY-Ho-SNj" firstAttribute="centerY" secondItem="gGe-DV-etn" secondAttribute="centerY" id="4LP-ex-cNh"/>
+                            <constraint firstItem="j2n-WV-y9L" firstAttribute="bottom" secondItem="mGr-dd-c4r" secondAttribute="bottom" constant="20" id="58c-Jv-wgG"/>
+                            <constraint firstItem="jKb-jW-Rds" firstAttribute="centerY" secondItem="j28-du-bFd" secondAttribute="centerY" id="5Pu-Nk-VwB"/>
+                            <constraint firstItem="gGe-DV-etn" firstAttribute="leading" secondItem="j2n-WV-y9L" secondAttribute="leading" constant="20" id="6fi-Oz-HkC"/>
+                            <constraint firstItem="j2n-WV-y9L" firstAttribute="trailing" relation="greaterThanOrEqual" secondItem="z2t-CO-48M" secondAttribute="trailing" constant="20" id="8jD-tF-gTK"/>
+                            <constraint firstItem="cgR-Wk-NQr" firstAttribute="centerY" secondItem="mGr-dd-c4r" secondAttribute="centerY" id="9xE-KH-OIN"/>
+                            <constraint firstItem="6Gl-5w-SXW" firstAttribute="leading" secondItem="gGe-DV-etn" secondAttribute="trailing" constant="20" id="GSW-ov-hBX"/>
+                            <constraint firstItem="zIY-Ho-SNj" firstAttribute="leading" secondItem="j28-du-bFd" secondAttribute="leading" id="HmV-uz-Xuf"/>
+                            <constraint firstItem="PRk-Ka-jS0" firstAttribute="top" secondItem="G7K-ET-ViD" secondAttribute="top" id="KV3-yY-Wg6"/>
+                            <constraint firstItem="PRk-Ka-jS0" firstAttribute="leading" secondItem="G7K-ET-ViD" secondAttribute="trailing" constant="24" id="QLn-1y-I6u"/>
+                            <constraint firstItem="j28-du-bFd" firstAttribute="top" secondItem="zIY-Ho-SNj" secondAttribute="bottom" constant="20" id="RVa-FV-loq"/>
+                            <constraint firstItem="PRk-Ka-jS0" firstAttribute="bottom" secondItem="G7K-ET-ViD" secondAttribute="bottom" id="aRe-X1-y7i"/>
+                            <constraint firstItem="mGr-dd-c4r" firstAttribute="leading" secondItem="j2n-WV-y9L" secondAttribute="leading" constant="24" id="aUg-jz-E4l"/>
+                            <constraint firstItem="gOI-tN-7Fh" firstAttribute="centerY" secondItem="j28-du-bFd" secondAttribute="centerY" id="cIa-HA-X5q"/>
+                            <constraint firstItem="G7K-ET-ViD" firstAttribute="leading" secondItem="j2n-WV-y9L" secondAttribute="leading" constant="24" id="fMj-BF-B9w"/>
+                            <constraint firstItem="j2n-WV-y9L" firstAttribute="trailing" secondItem="PRk-Ka-jS0" secondAttribute="trailing" constant="24" id="gn5-Dq-cBI"/>
+                            <constraint firstItem="j2n-WV-y9L" firstAttribute="trailing" secondItem="cgR-Wk-NQr" secondAttribute="trailing" constant="24" id="hQT-d0-UO8"/>
+                            <constraint firstItem="j2n-WV-y9L" firstAttribute="trailing" secondItem="jKb-jW-Rds" secondAttribute="trailing" constant="20" id="iSh-ii-5V7"/>
+                            <constraint firstItem="z2t-CO-48M" firstAttribute="leading" secondItem="zIY-Ho-SNj" secondAttribute="trailing" constant="20" id="jda-JG-ryM"/>
+                            <constraint firstItem="G7K-ET-ViD" firstAttribute="top" secondItem="j2n-WV-y9L" secondAttribute="top" id="kwA-bE-daq"/>
+                            <constraint firstItem="jKb-jW-Rds" firstAttribute="leading" secondItem="gOI-tN-7Fh" secondAttribute="trailing" constant="15" id="sGw-T2-LQO"/>
+                            <constraint firstItem="zIY-Ho-SNj" firstAttribute="leading" relation="greaterThanOrEqual" secondItem="6Gl-5w-SXW" secondAttribute="trailing" constant="20" id="t5O-Yw-eva"/>
+                            <constraint firstItem="zIY-Ho-SNj" firstAttribute="leading" secondItem="j2n-WV-y9L" secondAttribute="leading" constant="240" id="u1d-JP-AUm"/>
+                            <constraint firstItem="6Gl-5w-SXW" firstAttribute="centerY" secondItem="gGe-DV-etn" secondAttribute="centerY" id="uD0-dH-GtW"/>
+                            <constraint firstItem="gOI-tN-7Fh" firstAttribute="leading" secondItem="j28-du-bFd" secondAttribute="trailing" constant="15" id="wUj-99-2IP"/>
+                            <constraint firstItem="z2t-CO-48M" firstAttribute="centerY" secondItem="zIY-Ho-SNj" secondAttribute="centerY" id="yMs-sK-Llu"/>
+                        </constraints>
+                    </view>
+                    <value key="contentSizeForViewInPopover" type="size" width="480" height="320"/>
+                    <freeformSimulatedSizeMetrics key="simulatedDestinationMetrics"/>
+                    <size key="freeformSize" width="480" height="320"/>
+                    <connections>
+                        <outlet property="descriptionLabel" destination="PRk-Ka-jS0" id="YwR-We-n0U"/>
+                        <outlet property="imagebtn" destination="G7K-ET-ViD" id="xjy-Hz-MCI"/>
+                        <outlet property="mpackLabel" destination="z2t-CO-48M" id="DMk-ZO-xt9"/>
+                        <outlet property="priceLabel" destination="6Gl-5w-SXW" id="4ce-5A-rx5"/>
+                        <outlet property="qtyEdit" destination="gOI-tN-7Fh" id="iOb-AJ-xr0"/>
+                        <outlet property="qtystepper" destination="jKb-jW-Rds" id="gTc-Er-Thz"/>
+                    </connections>
+                </viewController>
+                <placeholder placeholderIdentifier="IBFirstResponder" id="Ief-a0-LHa" userLabel="First Responder" customClass="UIResponder" sceneMemberID="firstResponder"/>
+            </objects>
+            <point key="canvasLocation" x="93" y="107"/>
+        </scene>
+        <!--Confirm Order Information-->
+        <scene sceneID="BF2-87-Ewe">
+            <objects>
+                <viewController storyboardIdentifier="StockViewController" title="Confirm Order Information" modalPresentationStyle="formSheet" useStoryboardIdentifierAsRestorationIdentifier="YES" id="bEl-nR-52q" customClass="StockViewController" sceneMemberID="viewController">
+                    <view key="view" contentMode="scaleToFill" id="y1k-XP-C08">
+                        <rect key="frame" x="0.0" y="0.0" width="566" height="601"/>
+                        <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
+                        <subviews>
+                            <tableView clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="plain" separatorStyle="default" rowHeight="-1" estimatedRowHeight="-1" sectionHeaderHeight="28" estimatedSectionHeaderHeight="-1" sectionFooterHeight="28" estimatedSectionFooterHeight="-1" translatesAutoresizingMaskIntoConstraints="NO" id="sPq-7c-wJs">
+                                <rect key="frame" x="10" y="50.5" width="546" height="500.5"/>
+                                <prototypes>
+                                    <tableViewCell clipsSubviews="YES" contentMode="scaleToFill" restorationIdentifier="StockTableViewCell" insetsLayoutMarginsFromSafeArea="NO" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="StockTableViewCell" id="cCT-oh-Vaw" customClass="StockTableViewCell">
+                                        <rect key="frame" x="0.0" y="50.5" width="546" height="52"/>
+                                        <autoresizingMask key="autoresizingMask"/>
+                                        <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" insetsLayoutMarginsFromSafeArea="NO" tableViewCell="cCT-oh-Vaw" id="H4K-HT-ycL">
+                                            <rect key="frame" x="0.0" y="0.0" width="546" height="52"/>
+                                            <autoresizingMask key="autoresizingMask"/>
+                                            <subviews>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="MODEL" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Ztx-qv-ZYJ">
+                                                    <rect key="frame" x="16" y="16" width="131" height="20.5"/>
+                                                    <fontDescription key="fontDescription" type="boldSystem" pointSize="17"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="ETD" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Uak-UG-HYK">
+                                                    <rect key="frame" x="187" y="16.5" width="96" height="19.5"/>
+                                                    <constraints>
+                                                        <constraint firstAttribute="width" constant="96" id="CXF-TE-lvU"/>
+                                                    </constraints>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="16"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="QTY" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="e7Z-1N-Xb1">
+                                                    <rect key="frame" x="323" y="16.5" width="42" height="19.5"/>
+                                                    <constraints>
+                                                        <constraint firstAttribute="width" constant="42" id="1Nc-3Q-pnz"/>
+                                                    </constraints>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="16"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                </label>
+                                                <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="bzB-Zs-Ggl">
+                                                    <rect key="frame" x="385" y="9" width="145" height="34.5"/>
+                                                    <constraints>
+                                                        <constraint firstAttribute="width" constant="145" id="XtK-g7-iX0"/>
+                                                    </constraints>
+                                                    <state key="normal" title="Button"/>
+                                                    <buttonConfiguration key="configuration" style="plain" title="Move to BO"/>
+                                                    <connections>
+                                                        <action selector="onMovebackorder:" destination="bEl-nR-52q" eventType="touchUpInside" id="s7D-GE-kiB"/>
+                                                    </connections>
+                                                </button>
+                                            </subviews>
+                                            <constraints>
+                                                <constraint firstItem="e7Z-1N-Xb1" firstAttribute="centerY" secondItem="Ztx-qv-ZYJ" secondAttribute="centerY" id="9Ew-HK-a5F"/>
+                                                <constraint firstItem="bzB-Zs-Ggl" firstAttribute="centerY" secondItem="H4K-HT-ycL" secondAttribute="centerY" id="H8m-7W-w0t"/>
+                                                <constraint firstItem="Uak-UG-HYK" firstAttribute="leading" secondItem="Ztx-qv-ZYJ" secondAttribute="trailing" constant="40" id="JAe-1c-N6I"/>
+                                                <constraint firstItem="e7Z-1N-Xb1" firstAttribute="leading" secondItem="Uak-UG-HYK" secondAttribute="trailing" constant="40" id="N2m-HZ-wXS"/>
+                                                <constraint firstItem="bzB-Zs-Ggl" firstAttribute="centerY" secondItem="Ztx-qv-ZYJ" secondAttribute="centerY" id="OuD-xo-X4A"/>
+                                                <constraint firstItem="Uak-UG-HYK" firstAttribute="centerY" secondItem="Ztx-qv-ZYJ" secondAttribute="centerY" id="PMY-Nu-ax9"/>
+                                                <constraint firstItem="Ztx-qv-ZYJ" firstAttribute="leading" secondItem="H4K-HT-ycL" secondAttribute="leadingMargin" id="QGs-9J-FlB"/>
+                                                <constraint firstAttribute="trailing" secondItem="bzB-Zs-Ggl" secondAttribute="trailing" constant="16" id="RyW-HX-rNp"/>
+                                                <constraint firstItem="bzB-Zs-Ggl" firstAttribute="leading" secondItem="e7Z-1N-Xb1" secondAttribute="trailing" constant="20" id="czp-tt-FuT"/>
+                                            </constraints>
+                                        </tableViewCellContentView>
+                                        <connections>
+                                            <outlet property="btnMove" destination="bzB-Zs-Ggl" id="iQ2-Mm-6xj"/>
+                                            <outlet property="labelETD" destination="Uak-UG-HYK" id="6To-9p-Uqk"/>
+                                            <outlet property="labelModel" destination="Ztx-qv-ZYJ" id="pjH-Lz-bi2"/>
+                                            <outlet property="labelQTY" destination="e7Z-1N-Xb1" id="dFu-1b-oKY"/>
+                                        </connections>
+                                    </tableViewCell>
+                                </prototypes>
+                                <connections>
+                                    <outlet property="dataSource" destination="bEl-nR-52q" id="7i0-8s-Ef7"/>
+                                    <outlet property="delegate" destination="bEl-nR-52q" id="Ig1-VX-cSe"/>
+                                </connections>
+                            </tableView>
+                            <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="mWZ-UV-2uq">
+                                <rect key="frame" x="409" y="555.5" width="78" height="34.5"/>
+                                <state key="normal" title="Button"/>
+                                <buttonConfiguration key="configuration" style="plain" title="Submit"/>
+                                <connections>
+                                    <action selector="onSubmit:" destination="bEl-nR-52q" eventType="touchUpInside" id="Sto-pE-f6o"/>
+                                </connections>
+                            </button>
+                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="MODEL" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="sCj-Br-UXR">
+                                <rect key="frame" x="26" y="30" width="131" height="20.5"/>
+                                <fontDescription key="fontDescription" type="boldSystem" pointSize="17"/>
+                                <nil key="textColor"/>
+                                <nil key="highlightedColor"/>
+                            </label>
+                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="ETD" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="grH-Ll-jqG">
+                                <rect key="frame" x="197" y="30" width="96" height="20.5"/>
+                                <constraints>
+                                    <constraint firstAttribute="width" relation="greaterThanOrEqual" constant="96" id="X08-UY-RPk"/>
+                                    <constraint firstAttribute="width" constant="96" id="vxm-nu-MCO"/>
+                                </constraints>
+                                <fontDescription key="fontDescription" type="boldSystem" pointSize="17"/>
+                                <nil key="textColor"/>
+                                <nil key="highlightedColor"/>
+                            </label>
+                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="QTY" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="qvG-pb-38K">
+                                <rect key="frame" x="333" y="30" width="42" height="20.5"/>
+                                <constraints>
+                                    <constraint firstAttribute="width" relation="greaterThanOrEqual" constant="42" id="44c-SH-kha"/>
+                                    <constraint firstAttribute="width" constant="42" id="Pk7-Jf-lcp"/>
+                                </constraints>
+                                <fontDescription key="fontDescription" type="boldSystem" pointSize="17"/>
+                                <nil key="textColor"/>
+                                <nil key="highlightedColor"/>
+                            </label>
+                            <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="GSH-xU-ZC2">
+                                <rect key="frame" x="79" y="555.5" width="76.5" height="34.5"/>
+                                <state key="normal" title="Button"/>
+                                <buttonConfiguration key="configuration" style="plain" title="Cancel"/>
+                                <connections>
+                                    <action selector="onCancel:" destination="bEl-nR-52q" eventType="touchUpInside" id="Nep-Bx-40Y"/>
+                                </connections>
+                            </button>
+                        </subviews>
+                        <viewLayoutGuide key="safeArea" id="Ecz-Mj-Fo1"/>
+                        <color key="backgroundColor" systemColor="systemBackgroundColor"/>
+                        <constraints>
+                            <constraint firstItem="Ecz-Mj-Fo1" firstAttribute="bottom" secondItem="mWZ-UV-2uq" secondAttribute="bottom" constant="11" id="0Bx-r1-tWP"/>
+                            <constraint firstItem="qvG-pb-38K" firstAttribute="centerY" secondItem="sCj-Br-UXR" secondAttribute="centerY" id="3MW-AO-xnD"/>
+                            <constraint firstItem="grH-Ll-jqG" firstAttribute="leading" secondItem="sCj-Br-UXR" secondAttribute="trailing" constant="40" id="4LU-vF-cLU"/>
+                            <constraint firstItem="Ecz-Mj-Fo1" firstAttribute="bottom" secondItem="GSH-xU-ZC2" secondAttribute="bottom" constant="11" id="9RE-6A-fEs"/>
+                            <constraint firstItem="Ecz-Mj-Fo1" firstAttribute="trailing" secondItem="qvG-pb-38K" secondAttribute="trailing" constant="191" id="FFg-UJ-ykr"/>
+                            <constraint firstItem="sPq-7c-wJs" firstAttribute="leading" secondItem="Ecz-Mj-Fo1" secondAttribute="leading" constant="10" id="KSX-1U-dOP"/>
+                            <constraint firstItem="sCj-Br-UXR" firstAttribute="leading" secondItem="Ecz-Mj-Fo1" secondAttribute="leading" constant="26" id="NHY-bC-Z4F"/>
+                            <constraint firstItem="Ecz-Mj-Fo1" firstAttribute="trailing" secondItem="mWZ-UV-2uq" secondAttribute="trailing" constant="79" id="OQ1-mK-4Ok"/>
+                            <constraint firstItem="sPq-7c-wJs" firstAttribute="top" secondItem="sCj-Br-UXR" secondAttribute="bottom" id="RaJ-QC-85Q"/>
+                            <constraint firstItem="grH-Ll-jqG" firstAttribute="centerY" secondItem="sCj-Br-UXR" secondAttribute="centerY" id="SDu-WD-weN"/>
+                            <constraint firstItem="qvG-pb-38K" firstAttribute="leading" secondItem="grH-Ll-jqG" secondAttribute="trailing" constant="40" id="Vqg-24-M3L"/>
+                            <constraint firstItem="GSH-xU-ZC2" firstAttribute="leading" secondItem="Ecz-Mj-Fo1" secondAttribute="leading" constant="79" id="d8f-BY-CMF"/>
+                            <constraint firstItem="Ecz-Mj-Fo1" firstAttribute="trailing" secondItem="sPq-7c-wJs" secondAttribute="trailing" constant="10" id="ipE-3u-z1U"/>
+                            <constraint firstItem="sCj-Br-UXR" firstAttribute="top" secondItem="Ecz-Mj-Fo1" secondAttribute="top" constant="10" id="plf-xG-nMu"/>
+                            <constraint firstItem="Ecz-Mj-Fo1" firstAttribute="bottom" secondItem="sPq-7c-wJs" secondAttribute="bottom" constant="50" id="vyK-ij-CMW"/>
+                        </constraints>
+                    </view>
+                    <value key="contentSizeForViewInPopover" type="size" width="480" height="320"/>
+                    <freeformSimulatedSizeMetrics key="simulatedDestinationMetrics"/>
+                    <size key="freeformSize" width="566" height="601"/>
+                    <connections>
+                        <outlet property="table" destination="sPq-7c-wJs" id="M4a-cO-4hV"/>
+                    </connections>
+                </viewController>
+                <placeholder placeholderIdentifier="IBFirstResponder" id="O43-8K-C9L" userLabel="First Responder" customClass="UIResponder" sceneMemberID="firstResponder"/>
+            </objects>
+            <point key="canvasLocation" x="-37.096774193548384" y="390.02647837599289"/>
+        </scene>
+        <!--Choose a discount rate-->
+        <scene sceneID="MGa-qa-te4">
+            <objects>
+                <viewController storyboardIdentifier="ScanDiscountViewController" title="Choose a discount rate" useStoryboardIdentifierAsRestorationIdentifier="YES" id="OHW-L2-C58" customClass="ScanDiscountViewController" sceneMemberID="viewController">
+                    <view key="view" contentMode="scaleToFill" id="WFI-Em-MeJ">
+                        <rect key="frame" x="0.0" y="0.0" width="480" height="320"/>
+                        <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
+                        <subviews>
+                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Discount can’t be combined with others." textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="duu-Y5-mBR">
+                                <rect key="frame" x="86" y="45" width="308" height="21"/>
+                                <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                                <nil key="textColor"/>
+                                <nil key="highlightedColor"/>
+                            </label>
+                            <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="Yd7-ed-ROM">
+                                <rect key="frame" x="313.5" y="225.5" width="76.5" height="34.5"/>
+                                <state key="normal" title="Button"/>
+                                <buttonConfiguration key="configuration" style="plain" title="Cancel"/>
+                                <connections>
+                                    <action selector="onCancel:" destination="OHW-L2-C58" eventType="touchUpInside" id="TR8-xR-Q6m"/>
+                                </connections>
+                            </button>
+                            <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="c2l-a1-1N7">
+                                <rect key="frame" x="90" y="225.5" width="80" height="34.5"/>
+                                <state key="normal" title="Button"/>
+                                <buttonConfiguration key="configuration" style="plain" title="Update"/>
+                                <connections>
+                                    <action selector="onUpdate:" destination="OHW-L2-C58" eventType="touchUpInside" id="weC-Bt-Qkn"/>
+                                </connections>
+                            </button>
+                            <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="rGb-d5-ylx">
+                                <rect key="frame" x="116" y="126" width="75" height="34.5"/>
+                                <constraints>
+                                    <constraint firstAttribute="width" constant="75" id="EOy-tz-SaQ"/>
+                                </constraints>
+                                <color key="tintColor" red="0.59999999999999998" green="0.40000000000000002" blue="0.20000000000000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                <state key="normal" title="Button"/>
+                                <buttonConfiguration key="configuration" style="plain" title="3%"/>
+                                <connections>
+                                    <action selector="on3:" destination="OHW-L2-C58" eventType="touchUpInside" id="LYD-rg-2Mj"/>
+                                </connections>
+                            </button>
+                            <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="j4k-ge-lGR">
+                                <rect key="frame" x="30" y="126" width="75" height="34.5"/>
+                                <constraints>
+                                    <constraint firstAttribute="width" constant="75" id="7yC-hg-CCg"/>
+                                    <constraint firstAttribute="width" relation="greaterThanOrEqual" constant="75" id="shA-L7-Hr8"/>
+                                </constraints>
+                                <color key="tintColor" red="0.59999999999999998" green="0.40000000000000002" blue="0.20000000000000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                <state key="normal" title="Button"/>
+                                <buttonConfiguration key="configuration" style="plain" title="None"/>
+                                <connections>
+                                    <action selector="onnone:" destination="OHW-L2-C58" eventType="touchUpInside" id="vkr-Ld-pFe"/>
+                                </connections>
+                            </button>
+                            <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="XyX-ZJ-w5O">
+                                <rect key="frame" x="288" y="126" width="75" height="34.5"/>
+                                <constraints>
+                                    <constraint firstAttribute="width" constant="75" id="rWX-pU-Bpc"/>
+                                </constraints>
+                                <color key="tintColor" red="0.59999999999999998" green="0.40000000000000002" blue="0.20000000000000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                <state key="normal" title="Button"/>
+                                <buttonConfiguration key="configuration" style="plain" title="8%"/>
+                                <connections>
+                                    <action selector="on8:" destination="OHW-L2-C58" eventType="touchUpInside" id="WDA-z5-0Bx"/>
+                                </connections>
+                            </button>
+                            <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="TM5-qF-w8m">
+                                <rect key="frame" x="375" y="126" width="75" height="34.5"/>
+                                <constraints>
+                                    <constraint firstAttribute="width" constant="75" id="0JP-zW-FX3"/>
+                                </constraints>
+                                <color key="tintColor" red="0.59999999999999998" green="0.40000000000000002" blue="0.20000000000000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                <state key="normal" title="Button"/>
+                                <buttonConfiguration key="configuration" style="plain" title="10%"/>
+                                <connections>
+                                    <action selector="on10:" destination="OHW-L2-C58" eventType="touchUpInside" id="Ahz-5e-Y6n"/>
+                                </connections>
+                            </button>
+                            <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="C8q-nA-CQp">
+                                <rect key="frame" x="202" y="126" width="75" height="34.5"/>
+                                <constraints>
+                                    <constraint firstAttribute="width" constant="75" id="Vbq-K9-ykh"/>
+                                </constraints>
+                                <color key="tintColor" red="0.59999999999999998" green="0.40000000000000002" blue="0.20000000000000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                <state key="normal" title="Button"/>
+                                <buttonConfiguration key="configuration" style="plain" title="5%"/>
+                                <connections>
+                                    <action selector="on5:" destination="OHW-L2-C58" eventType="touchUpInside" id="4So-ka-U6z"/>
+                                </connections>
+                            </button>
+                        </subviews>
+                        <viewLayoutGuide key="safeArea" id="jcg-Mc-NdC"/>
+                        <color key="backgroundColor" systemColor="systemBackgroundColor"/>
+                        <constraints>
+                            <constraint firstItem="XyX-ZJ-w5O" firstAttribute="width" secondItem="j4k-ge-lGR" secondAttribute="width" id="23P-rg-3ir"/>
+                            <constraint firstItem="rGb-d5-ylx" firstAttribute="top" secondItem="duu-Y5-mBR" secondAttribute="bottom" constant="60" id="2ZE-eE-Bva"/>
+                            <constraint firstItem="XyX-ZJ-w5O" firstAttribute="leading" secondItem="C8q-nA-CQp" secondAttribute="trailing" constant="11" id="7uY-g4-bOK"/>
+                            <constraint firstItem="TM5-qF-w8m" firstAttribute="width" secondItem="j4k-ge-lGR" secondAttribute="width" id="K1i-4R-QlE"/>
+                            <constraint firstItem="Yd7-ed-ROM" firstAttribute="centerY" secondItem="c2l-a1-1N7" secondAttribute="centerY" id="M0h-dZ-Krs"/>
+                            <constraint firstItem="C8q-nA-CQp" firstAttribute="leading" secondItem="rGb-d5-ylx" secondAttribute="trailing" constant="11" id="OoD-kO-8ua"/>
+                            <constraint firstItem="C8q-nA-CQp" firstAttribute="centerY" secondItem="j4k-ge-lGR" secondAttribute="centerY" id="PAp-MT-OuU"/>
+                            <constraint firstItem="jcg-Mc-NdC" firstAttribute="bottom" secondItem="c2l-a1-1N7" secondAttribute="bottom" constant="60" id="PUW-RR-bBg"/>
+                            <constraint firstItem="duu-Y5-mBR" firstAttribute="top" secondItem="WFI-Em-MeJ" secondAttribute="top" constant="45" id="UcA-sh-ZlQ"/>
+                            <constraint firstItem="rGb-d5-ylx" firstAttribute="leading" secondItem="j4k-ge-lGR" secondAttribute="trailing" constant="11" id="WAO-6y-5ZS"/>
+                            <constraint firstItem="TM5-qF-w8m" firstAttribute="centerY" secondItem="j4k-ge-lGR" secondAttribute="centerY" id="YkY-ry-pd0"/>
+                            <constraint firstItem="jcg-Mc-NdC" firstAttribute="trailing" secondItem="Yd7-ed-ROM" secondAttribute="trailing" constant="90" id="ecW-xW-YfS"/>
+                            <constraint firstItem="c2l-a1-1N7" firstAttribute="leading" secondItem="jcg-Mc-NdC" secondAttribute="leading" constant="90" id="epF-ls-BLB"/>
+                            <constraint firstItem="rGb-d5-ylx" firstAttribute="centerY" secondItem="j4k-ge-lGR" secondAttribute="centerY" id="fYs-3Y-Ou9"/>
+                            <constraint firstItem="jcg-Mc-NdC" firstAttribute="trailing" secondItem="TM5-qF-w8m" secondAttribute="trailing" constant="30" id="g90-gR-zbZ"/>
+                            <constraint firstItem="rGb-d5-ylx" firstAttribute="width" secondItem="j4k-ge-lGR" secondAttribute="width" id="inh-LO-vrm"/>
+                            <constraint firstItem="C8q-nA-CQp" firstAttribute="width" secondItem="j4k-ge-lGR" secondAttribute="width" id="nA3-ez-FOO"/>
+                            <constraint firstItem="XyX-ZJ-w5O" firstAttribute="centerY" secondItem="j4k-ge-lGR" secondAttribute="centerY" id="s2J-Ra-NlF"/>
+                            <constraint firstItem="j4k-ge-lGR" firstAttribute="leading" secondItem="jcg-Mc-NdC" secondAttribute="leading" constant="30" id="wpy-Wq-lid"/>
+                            <constraint firstItem="TM5-qF-w8m" firstAttribute="leading" secondItem="XyX-ZJ-w5O" secondAttribute="trailing" priority="750" constant="11" id="ywr-th-P1g"/>
+                            <constraint firstItem="duu-Y5-mBR" firstAttribute="centerX" secondItem="jcg-Mc-NdC" secondAttribute="centerX" id="zZ0-pq-ceO"/>
+                        </constraints>
+                    </view>
+                    <value key="contentSizeForViewInPopover" type="size" width="480" height="320"/>
+                    <freeformSimulatedSizeMetrics key="simulatedDestinationMetrics"/>
+                    <size key="freeformSize" width="480" height="320"/>
+                    <connections>
+                        <outlet property="btn10" destination="TM5-qF-w8m" id="ODw-b1-8hM"/>
+                        <outlet property="btn3" destination="rGb-d5-ylx" id="4l4-tM-zGp"/>
+                        <outlet property="btn5" destination="C8q-nA-CQp" id="orJ-Cu-9QK"/>
+                        <outlet property="btn8" destination="XyX-ZJ-w5O" id="rmC-ak-1lY"/>
+                        <outlet property="btnnone" destination="j4k-ge-lGR" id="FeO-y1-Jkz"/>
+                    </connections>
+                </viewController>
+                <placeholder placeholderIdentifier="IBFirstResponder" id="VNW-8q-78U" userLabel="First Responder" customClass="UIResponder" sceneMemberID="firstResponder"/>
+            </objects>
+            <point key="canvasLocation" x="635" y="96"/>
+        </scene>
+        <!--Scan History View Controller-->
+        <scene sceneID="AyY-er-cCO">
+            <objects>
+                <viewController storyboardIdentifier="ScanHistoryViewController" useStoryboardIdentifierAsRestorationIdentifier="YES" id="15s-Fk-XvT" customClass="ScanHistoryViewController" sceneMemberID="viewController">
+                    <view key="view" contentMode="scaleToFill" id="mJj-rg-l2T">
+                        <rect key="frame" x="0.0" y="0.0" width="810" height="1080"/>
+                        <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
+                        <subviews>
+                            <tableView clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="plain" separatorStyle="none" rowHeight="-1" estimatedRowHeight="-1" sectionHeaderHeight="-1" estimatedSectionHeaderHeight="-1" sectionFooterHeight="-1" estimatedSectionFooterHeight="-1" translatesAutoresizingMaskIntoConstraints="NO" id="aHE-X4-VOt">
+                                <rect key="frame" x="0.0" y="67" width="810" height="998"/>
+                                <color key="backgroundColor" systemColor="systemBackgroundColor"/>
+                                <prototypes>
+                                    <tableViewCell clipsSubviews="YES" contentMode="scaleToFill" restorationIdentifier="ScanListCell" insetsLayoutMarginsFromSafeArea="NO" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="ScanListCell" rowHeight="166" id="YfV-Cl-5Tu" customClass="ScanListCell">
+                                        <rect key="frame" x="0.0" y="50.5" width="810" height="166"/>
+                                        <autoresizingMask key="autoresizingMask"/>
+                                        <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" insetsLayoutMarginsFromSafeArea="NO" tableViewCell="YfV-Cl-5Tu" id="exp-Hy-y0g">
+                                            <rect key="frame" x="0.0" y="0.0" width="810" height="166"/>
+                                            <autoresizingMask key="autoresizingMask"/>
+                                            <subviews>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="253" verticalHuggingPriority="251" text="Model" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="w8x-0O-3TJ" userLabel="item label">
+                                                    <rect key="frame" x="16" y="13" width="50.5" height="20.5"/>
+                                                    <fontDescription key="fontDescription" type="boldSystem" pointSize="17"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Port" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="bh0-td-ws6" userLabel="port 0">
+                                                    <rect key="frame" x="189" y="110" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Origin" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="xvy-YB-tpU" userLabel="origin 0">
+                                                    <rect key="frame" x="102.5" y="110" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="DDP" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="kwx-rV-AXC" userLabel="price0 0">
+                                                    <rect key="frame" x="275.5" y="110" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Special" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="2me-vx-6M3" userLabel="price2 0">
+                                                    <rect key="frame" x="448" y="110" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Net Price" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Pyr-9z-nFr" userLabel="price3 0">
+                                                    <rect key="frame" x="534.5" y="110" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Unit Price" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="w2F-g1-5dN" userLabel="price1 0">
+                                                    <rect key="frame" x="362" y="110" width="86" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Available" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Gl3-BN-9JK" userLabel="availble 0">
+                                                    <rect key="frame" x="707.5" y="110" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="N/A" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="dU0-HK-aHw" userLabel="price4 0">
+                                                    <rect key="frame" x="621" y="110" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" verticalHuggingPriority="251" text="CuFT" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="ybo-Ex-ZSL" userLabel="cuft 0">
+                                                    <rect key="frame" x="16" y="110" width="86.5" height="24"/>
+                                                    <constraints>
+                                                        <constraint firstAttribute="height" constant="24" id="K1M-dc-RIH"/>
+                                                    </constraints>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="123.45" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="7Cf-ao-6dF" userLabel="cuft 1">
+                                                    <rect key="frame" x="16" y="134" width="86.5" height="24"/>
+                                                    <constraints>
+                                                        <constraint firstAttribute="height" relation="greaterThanOrEqual" constant="24" id="L84-Ra-6ED"/>
+                                                        <constraint firstAttribute="height" constant="24" id="Pm7-GT-zCj"/>
+                                                    </constraints>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="ABCD" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="826-Bv-Afw" userLabel="origin 1">
+                                                    <rect key="frame" x="102.5" y="134" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="ABCD" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="xLb-sH-DDc" userLabel="port 1">
+                                                    <rect key="frame" x="189" y="134" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="123.45" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Snb-I4-W0D" userLabel="price0 1">
+                                                    <rect key="frame" x="275.5" y="134" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="234.56" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="fkA-kv-8ja" userLabel="pricd1 1">
+                                                    <rect key="frame" x="362" y="134" width="86" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="234.56" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="JzP-1G-jcR" userLabel="price2 1">
+                                                    <rect key="frame" x="448" y="134" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Now" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Pat-j4-mh1" userLabel="availble 1">
+                                                    <rect key="frame" x="707.5" y="134" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="234.56" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="xpS-4Z-kgN" userLabel="price4 1">
+                                                    <rect key="frame" x="621" y="134" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="qoy-vW-xRS">
+                                                    <rect key="frame" x="686.5" y="3" width="108.5" height="41"/>
+                                                    <constraints>
+                                                        <constraint firstAttribute="width" constant="108.5" id="WcD-3E-U81"/>
+                                                        <constraint firstAttribute="height" constant="41" id="qRl-e7-gJa"/>
+                                                    </constraints>
+                                                    <state key="normal" title="Button"/>
+                                                    <buttonConfiguration key="configuration" style="plain" title="Add to cart"/>
+                                                    <connections>
+                                                        <action selector="onAddToCart:" destination="YfV-Cl-5Tu" eventType="touchUpInside" id="Jm6-n3-clg"/>
+                                                    </connections>
+                                                </button>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="252" text="42.8 x 68.3 x 30.5H" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="qAW-4E-Lac" userLabel="item label">
+                                                    <rect key="frame" x="86.5" y="14.5" width="491.5" height="18"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="234.56" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="e4y-a4-rZx" userLabel="price3 1">
+                                                    <rect key="frame" x="534.5" y="134" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="252" verticalHuggingPriority="251" textAlignment="natural" lineBreakMode="wordWrap" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="ZgQ-DK-Xnp" userLabel="description">
+                                                    <rect key="frame" x="16" y="48" width="778" height="54"/>
+                                                    <string key="text">line 1
+line 2
+line 3</string>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="252" verticalHuggingPriority="251" text="Stock:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="1X6-wZ-4ID">
+                                                    <rect key="frame" x="608" y="13" width="48.5" height="21"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                </label>
+                                                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="lDs-CT-R5C" userLabel="bottom line">
+                                                    <rect key="frame" x="0.0" y="164" width="810" height="2"/>
+                                                    <color key="backgroundColor" systemColor="systemGrayColor"/>
+                                                    <constraints>
+                                                        <constraint firstAttribute="height" constant="2" id="VUG-wE-NsD"/>
+                                                    </constraints>
+                                                </view>
+                                            </subviews>
+                                            <constraints>
+                                                <constraint firstAttribute="trailing" secondItem="qoy-vW-xRS" secondAttribute="trailing" constant="15" id="0N9-nj-8aK"/>
+                                                <constraint firstItem="Pyr-9z-nFr" firstAttribute="height" secondItem="ybo-Ex-ZSL" secondAttribute="height" id="219-Ca-b6P"/>
+                                                <constraint firstItem="xpS-4Z-kgN" firstAttribute="width" secondItem="7Cf-ao-6dF" secondAttribute="width" id="4HO-wF-ila"/>
+                                                <constraint firstAttribute="trailing" secondItem="lDs-CT-R5C" secondAttribute="trailing" id="4hT-KB-sw8"/>
+                                                <constraint firstItem="dU0-HK-aHw" firstAttribute="leading" secondItem="Pyr-9z-nFr" secondAttribute="trailing" id="52h-Qi-eGw"/>
+                                                <constraint firstItem="bh0-td-ws6" firstAttribute="centerY" secondItem="ybo-Ex-ZSL" secondAttribute="centerY" id="5et-e0-MeZ"/>
+                                                <constraint firstAttribute="trailing" secondItem="Gl3-BN-9JK" secondAttribute="trailing" constant="16" id="6AC-6C-oeu"/>
+                                                <constraint firstItem="kwx-rV-AXC" firstAttribute="height" secondItem="ybo-Ex-ZSL" secondAttribute="height" id="6Qe-jE-RMu"/>
+                                                <constraint firstItem="ZgQ-DK-Xnp" firstAttribute="top" secondItem="qoy-vW-xRS" secondAttribute="bottom" constant="4" id="7kG-TP-8Np"/>
+                                                <constraint firstItem="dU0-HK-aHw" firstAttribute="centerY" secondItem="ybo-Ex-ZSL" secondAttribute="centerY" id="7qR-Go-lRN"/>
+                                                <constraint firstItem="lDs-CT-R5C" firstAttribute="leading" secondItem="exp-Hy-y0g" secondAttribute="leading" id="8Fq-d0-Sfb"/>
+                                                <constraint firstItem="JzP-1G-jcR" firstAttribute="top" secondItem="7Cf-ao-6dF" secondAttribute="top" id="8bg-Kk-zh5"/>
+                                                <constraint firstAttribute="bottom" secondItem="lDs-CT-R5C" secondAttribute="bottom" id="9Wa-30-D0m"/>
+                                                <constraint firstItem="xLb-sH-DDc" firstAttribute="top" secondItem="7Cf-ao-6dF" secondAttribute="top" id="9bF-pH-ksg"/>
+                                                <constraint firstItem="826-Bv-Afw" firstAttribute="height" secondItem="7Cf-ao-6dF" secondAttribute="height" id="9qz-Yc-L2Z"/>
+                                                <constraint firstItem="Pyr-9z-nFr" firstAttribute="leading" secondItem="2me-vx-6M3" secondAttribute="trailing" id="AIo-VQ-V3O"/>
+                                                <constraint firstItem="7Cf-ao-6dF" firstAttribute="leading" secondItem="ybo-Ex-ZSL" secondAttribute="leading" id="AoJ-Zy-W7D"/>
+                                                <constraint firstItem="w8x-0O-3TJ" firstAttribute="leading" secondItem="exp-Hy-y0g" secondAttribute="leading" constant="16" id="B28-7a-ruA"/>
+                                                <constraint firstItem="ZgQ-DK-Xnp" firstAttribute="leading" secondItem="w8x-0O-3TJ" secondAttribute="leading" id="B2X-Bf-Ii7"/>
+                                                <constraint firstItem="bh0-td-ws6" firstAttribute="width" secondItem="ybo-Ex-ZSL" secondAttribute="width" id="BDi-wY-Vut"/>
+                                                <constraint firstItem="kwx-rV-AXC" firstAttribute="centerY" secondItem="ybo-Ex-ZSL" secondAttribute="centerY" id="Ckk-QY-rUP"/>
+                                                <constraint firstItem="fkA-kv-8ja" firstAttribute="height" secondItem="7Cf-ao-6dF" secondAttribute="height" id="D3d-Es-XFH"/>
+                                                <constraint firstItem="Pat-j4-mh1" firstAttribute="trailing" secondItem="Gl3-BN-9JK" secondAttribute="trailing" id="DCo-UJ-gvD"/>
+                                                <constraint firstItem="fkA-kv-8ja" firstAttribute="top" secondItem="7Cf-ao-6dF" secondAttribute="top" id="Dj0-7l-Aj0"/>
+                                                <constraint firstItem="JzP-1G-jcR" firstAttribute="height" secondItem="7Cf-ao-6dF" secondAttribute="height" id="GY6-5v-Q2P"/>
+                                                <constraint firstItem="Snb-I4-W0D" firstAttribute="top" secondItem="7Cf-ao-6dF" secondAttribute="top" id="HCe-fu-Evg"/>
+                                                <constraint firstAttribute="bottom" secondItem="7Cf-ao-6dF" secondAttribute="bottom" constant="8" id="HdA-8V-nBR"/>
+                                                <constraint firstItem="xvy-YB-tpU" firstAttribute="width" secondItem="ybo-Ex-ZSL" secondAttribute="width" id="HfW-xg-Nit"/>
+                                                <constraint firstItem="826-Bv-Afw" firstAttribute="leading" secondItem="7Cf-ao-6dF" secondAttribute="trailing" id="IZM-5W-Tbf"/>
+                                                <constraint firstItem="w2F-g1-5dN" firstAttribute="leading" secondItem="kwx-rV-AXC" secondAttribute="trailing" id="IhS-Fq-qrb"/>
+                                                <constraint firstItem="e4y-a4-rZx" firstAttribute="top" secondItem="7Cf-ao-6dF" secondAttribute="top" id="JL4-5N-wB4"/>
+                                                <constraint firstItem="fkA-kv-8ja" firstAttribute="width" secondItem="7Cf-ao-6dF" secondAttribute="width" id="Lgf-eG-0mo"/>
+                                                <constraint firstItem="Pyr-9z-nFr" firstAttribute="width" secondItem="ybo-Ex-ZSL" secondAttribute="width" id="Mcz-JL-fKe"/>
+                                                <constraint firstItem="xLb-sH-DDc" firstAttribute="width" secondItem="7Cf-ao-6dF" secondAttribute="width" id="N92-Iw-1dK"/>
+                                                <constraint firstItem="dU0-HK-aHw" firstAttribute="width" secondItem="ybo-Ex-ZSL" secondAttribute="width" id="Oe1-W4-0QY"/>
+                                                <constraint firstItem="826-Bv-Afw" firstAttribute="top" secondItem="7Cf-ao-6dF" secondAttribute="top" id="SMH-xM-Uii"/>
+                                                <constraint firstItem="Gl3-BN-9JK" firstAttribute="width" secondItem="7Cf-ao-6dF" secondAttribute="width" id="Sh5-s5-3HX"/>
+                                                <constraint firstItem="1X6-wZ-4ID" firstAttribute="centerY" secondItem="qAW-4E-Lac" secondAttribute="centerY" id="Tan-HD-4bf"/>
+                                                <constraint firstItem="e4y-a4-rZx" firstAttribute="height" secondItem="7Cf-ao-6dF" secondAttribute="height" id="UEL-6b-SF9"/>
+                                                <constraint firstItem="2me-vx-6M3" firstAttribute="width" secondItem="ybo-Ex-ZSL" secondAttribute="width" id="V5D-Hs-R9w"/>
+                                                <constraint firstItem="xpS-4Z-kgN" firstAttribute="leading" secondItem="e4y-a4-rZx" secondAttribute="trailing" id="V63-7g-XlE"/>
+                                                <constraint firstItem="2me-vx-6M3" firstAttribute="leading" secondItem="w2F-g1-5dN" secondAttribute="trailing" id="VC4-m8-o3w"/>
+                                                <constraint firstItem="2me-vx-6M3" firstAttribute="height" secondItem="ybo-Ex-ZSL" secondAttribute="height" id="W7Z-Kk-N94"/>
+                                                <constraint firstItem="e4y-a4-rZx" firstAttribute="width" secondItem="7Cf-ao-6dF" secondAttribute="width" id="XWs-9I-Fyl"/>
+                                                <constraint firstItem="Gl3-BN-9JK" firstAttribute="centerY" secondItem="ybo-Ex-ZSL" secondAttribute="centerY" id="XeC-06-Lbk"/>
+                                                <constraint firstItem="kwx-rV-AXC" firstAttribute="leading" secondItem="bh0-td-ws6" secondAttribute="trailing" id="YIT-Lu-eaC"/>
+                                                <constraint firstItem="826-Bv-Afw" firstAttribute="width" secondItem="7Cf-ao-6dF" secondAttribute="width" id="YeQ-Nv-erp"/>
+                                                <constraint firstItem="e4y-a4-rZx" firstAttribute="leading" secondItem="JzP-1G-jcR" secondAttribute="trailing" id="YfP-0z-2bm"/>
+                                                <constraint firstItem="qoy-vW-xRS" firstAttribute="centerY" secondItem="w8x-0O-3TJ" secondAttribute="centerY" id="aRL-GM-1hN"/>
+                                                <constraint firstItem="bh0-td-ws6" firstAttribute="leading" secondItem="xvy-YB-tpU" secondAttribute="trailing" id="aRm-uC-g1A"/>
+                                                <constraint firstItem="bh0-td-ws6" firstAttribute="height" secondItem="ybo-Ex-ZSL" secondAttribute="height" id="bCc-51-eBw"/>
+                                                <constraint firstItem="xvy-YB-tpU" firstAttribute="centerY" secondItem="ybo-Ex-ZSL" secondAttribute="centerY" id="bq0-Ng-Hz1"/>
+                                                <constraint firstItem="Pat-j4-mh1" firstAttribute="top" secondItem="7Cf-ao-6dF" secondAttribute="top" id="bv7-pz-R5j"/>
+                                                <constraint firstItem="xvy-YB-tpU" firstAttribute="leading" secondItem="ybo-Ex-ZSL" secondAttribute="trailing" id="cCH-iw-Sfi"/>
+                                                <constraint firstItem="kwx-rV-AXC" firstAttribute="width" secondItem="ybo-Ex-ZSL" secondAttribute="width" id="cEm-h4-PlR"/>
+                                                <constraint firstItem="7Cf-ao-6dF" firstAttribute="top" secondItem="ybo-Ex-ZSL" secondAttribute="bottom" id="d0L-nE-KbY"/>
+                                                <constraint firstItem="Gl3-BN-9JK" firstAttribute="leading" secondItem="dU0-HK-aHw" secondAttribute="trailing" id="dUN-SZ-003"/>
+                                                <constraint firstItem="fkA-kv-8ja" firstAttribute="leading" secondItem="Snb-I4-W0D" secondAttribute="trailing" id="ddJ-3i-Bpe"/>
+                                                <constraint firstItem="JzP-1G-jcR" firstAttribute="width" secondItem="7Cf-ao-6dF" secondAttribute="width" id="dhm-Lz-BqX"/>
+                                                <constraint firstItem="dU0-HK-aHw" firstAttribute="height" secondItem="ybo-Ex-ZSL" secondAttribute="height" id="fAk-LI-YlK"/>
+                                                <constraint firstItem="xLb-sH-DDc" firstAttribute="height" secondItem="7Cf-ao-6dF" secondAttribute="height" id="fSg-pP-x6w"/>
+                                                <constraint firstItem="xLb-sH-DDc" firstAttribute="leading" secondItem="826-Bv-Afw" secondAttribute="trailing" id="gWM-yd-wfK"/>
+                                                <constraint firstItem="xpS-4Z-kgN" firstAttribute="height" secondItem="7Cf-ao-6dF" secondAttribute="height" id="ghD-ut-ufW"/>
+                                                <constraint firstItem="w2F-g1-5dN" firstAttribute="height" secondItem="ybo-Ex-ZSL" secondAttribute="height" id="gzf-dB-4kW"/>
+                                                <constraint firstItem="qAW-4E-Lac" firstAttribute="centerY" secondItem="w8x-0O-3TJ" secondAttribute="centerY" id="i1K-m7-fuH"/>
+                                                <constraint firstItem="Snb-I4-W0D" firstAttribute="width" secondItem="7Cf-ao-6dF" secondAttribute="width" id="j7b-J6-TX9"/>
+                                                <constraint firstItem="Snb-I4-W0D" firstAttribute="height" secondItem="7Cf-ao-6dF" secondAttribute="height" id="jGd-YU-YHw"/>
+                                                <constraint firstItem="w2F-g1-5dN" firstAttribute="width" secondItem="ybo-Ex-ZSL" secondAttribute="width" id="kbk-B2-LRl"/>
+                                                <constraint firstItem="Pyr-9z-nFr" firstAttribute="centerY" secondItem="ybo-Ex-ZSL" secondAttribute="centerY" id="lwH-y9-GqW"/>
+                                                <constraint firstItem="Pat-j4-mh1" firstAttribute="width" secondItem="7Cf-ao-6dF" secondAttribute="width" id="mpw-Wo-Ac6"/>
+                                                <constraint firstItem="Pat-j4-mh1" firstAttribute="leading" secondItem="xpS-4Z-kgN" secondAttribute="trailing" id="nHa-zD-lde"/>
+                                                <constraint firstItem="xvy-YB-tpU" firstAttribute="height" secondItem="ybo-Ex-ZSL" secondAttribute="height" id="o30-m8-2No"/>
+                                                <constraint firstItem="w8x-0O-3TJ" firstAttribute="top" secondItem="exp-Hy-y0g" secondAttribute="top" constant="13" id="pLi-gE-Jft"/>
+                                                <constraint firstItem="Gl3-BN-9JK" firstAttribute="width" secondItem="ybo-Ex-ZSL" secondAttribute="width" id="qB1-Hj-fcM"/>
+                                                <constraint firstItem="ybo-Ex-ZSL" firstAttribute="leading" secondItem="exp-Hy-y0g" secondAttribute="leading" constant="16" id="qR7-bb-I9Y"/>
+                                                <constraint firstAttribute="trailing" secondItem="ZgQ-DK-Xnp" secondAttribute="trailing" constant="16" id="qd6-zU-HDS"/>
+                                                <constraint firstItem="w2F-g1-5dN" firstAttribute="centerY" secondItem="ybo-Ex-ZSL" secondAttribute="centerY" id="qyK-RA-Y2e"/>
+                                                <constraint firstItem="Snb-I4-W0D" firstAttribute="leading" secondItem="xLb-sH-DDc" secondAttribute="trailing" id="s1L-QR-DcJ"/>
+                                                <constraint firstItem="qAW-4E-Lac" firstAttribute="leading" secondItem="w8x-0O-3TJ" secondAttribute="trailing" constant="20" id="sro-cg-Ruk"/>
+                                                <constraint firstItem="qoy-vW-xRS" firstAttribute="leading" secondItem="1X6-wZ-4ID" secondAttribute="trailing" constant="30" id="tEH-XQ-bvL"/>
+                                                <constraint firstItem="Pat-j4-mh1" firstAttribute="height" secondItem="7Cf-ao-6dF" secondAttribute="height" id="tme-Ds-cUD"/>
+                                                <constraint firstItem="2me-vx-6M3" firstAttribute="centerY" secondItem="ybo-Ex-ZSL" secondAttribute="centerY" id="vhW-qI-JaW"/>
+                                                <constraint firstItem="JzP-1G-jcR" firstAttribute="leading" secondItem="fkA-kv-8ja" secondAttribute="trailing" id="wQb-My-Pz4"/>
+                                                <constraint firstItem="Gl3-BN-9JK" firstAttribute="height" secondItem="ybo-Ex-ZSL" secondAttribute="height" id="x0d-9d-JjT"/>
+                                                <constraint firstItem="bh0-td-ws6" firstAttribute="top" secondItem="ZgQ-DK-Xnp" secondAttribute="bottom" constant="8" id="xCs-Bc-QH0"/>
+                                                <constraint firstItem="xpS-4Z-kgN" firstAttribute="centerY" secondItem="7Cf-ao-6dF" secondAttribute="centerY" id="xEN-gI-a0r"/>
+                                                <constraint firstItem="1X6-wZ-4ID" firstAttribute="leading" secondItem="qAW-4E-Lac" secondAttribute="trailing" constant="30" id="yF5-kX-CKx"/>
+                                            </constraints>
+                                        </tableViewCellContentView>
+                                        <connections>
+                                            <outlet property="labelAvailable" destination="Pat-j4-mh1" id="86V-bp-dJE"/>
+                                            <outlet property="labelCuft" destination="7Cf-ao-6dF" id="R6g-ng-EFh"/>
+                                            <outlet property="labelDescription" destination="ZgQ-DK-Xnp" id="Nyo-2X-HQg"/>
+                                            <outlet property="labelDimension" destination="qAW-4E-Lac" id="JH2-Tz-fXE"/>
+                                            <outlet property="labelModel" destination="w8x-0O-3TJ" id="jAJ-U7-sEQ"/>
+                                            <outlet property="labelOrigin" destination="826-Bv-Afw" id="Lcm-6u-kih"/>
+                                            <outlet property="labelPort" destination="xLb-sH-DDc" id="2LA-p6-VJp"/>
+                                            <outlet property="labelPrice0" destination="kwx-rV-AXC" id="pHX-Dd-bxk"/>
+                                            <outlet property="labelPrice1" destination="w2F-g1-5dN" id="kn4-a2-wly"/>
+                                            <outlet property="labelPrice2" destination="2me-vx-6M3" id="eZ6-c4-fs1"/>
+                                            <outlet property="labelPrice3" destination="Pyr-9z-nFr" id="F8m-bX-DQj"/>
+                                            <outlet property="labelPrice4" destination="dU0-HK-aHw" id="66J-Yf-a7L"/>
+                                            <outlet property="labelPriceCTNR" destination="Snb-I4-W0D" id="fR4-hp-1GC"/>
+                                            <outlet property="labelPriceDisplay1" destination="e4y-a4-rZx" id="Prz-Ev-JeU"/>
+                                            <outlet property="labelPriceDisplay2" destination="xpS-4Z-kgN" id="uw9-hi-QHP"/>
+                                            <outlet property="labelPriceNCA" destination="fkA-kv-8ja" id="xAX-Ba-wYC"/>
+                                            <outlet property="labelPriceSpecial" destination="JzP-1G-jcR" id="L5Y-kt-tMD"/>
+                                            <outlet property="labelStock" destination="1X6-wZ-4ID" id="LH0-U1-Xt1"/>
+                                        </connections>
+                                    </tableViewCell>
+                                </prototypes>
+                                <connections>
+                                    <outlet property="dataSource" destination="15s-Fk-XvT" id="XZz-CX-Iba"/>
+                                    <outlet property="delegate" destination="15s-Fk-XvT" id="Jhs-s8-iXH"/>
+                                </connections>
+                            </tableView>
+                            <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="DoD-YM-ccb">
+                                <rect key="frame" x="479" y="16" width="146" height="35"/>
+                                <state key="normal" title="Button"/>
+                                <buttonConfiguration key="configuration" style="plain" title="Sync Availability"/>
+                                <connections>
+                                    <action selector="onUpdateStock:" destination="p2v-UD-wPL" eventType="touchUpInside" id="dPW-aT-XeT"/>
+                                    <action selector="onUpdateStock:" destination="15s-Fk-XvT" eventType="touchUpInside" id="htz-4h-0Hb"/>
+                                </connections>
+                            </button>
+                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Last Update Unknown" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="i5z-Uy-CJa">
+                                <rect key="frame" x="641" y="23" width="169" height="21"/>
+                                <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                                <nil key="textColor"/>
+                                <nil key="highlightedColor"/>
+                            </label>
+                        </subviews>
+                        <viewLayoutGuide key="safeArea" id="yCO-Fp-1MS"/>
+                        <color key="backgroundColor" systemColor="systemBackgroundColor"/>
+                        <constraints>
+                            <constraint firstItem="aHE-X4-VOt" firstAttribute="leading" secondItem="yCO-Fp-1MS" secondAttribute="leading" id="Pp5-iB-lwc"/>
+                            <constraint firstItem="yCO-Fp-1MS" firstAttribute="trailing" secondItem="aHE-X4-VOt" secondAttribute="trailing" id="aFz-Ah-AWz"/>
+                            <constraint firstItem="yCO-Fp-1MS" firstAttribute="bottom" secondItem="aHE-X4-VOt" secondAttribute="bottom" constant="15" id="c3n-4O-S2T"/>
+                            <constraint firstItem="DoD-YM-ccb" firstAttribute="top" secondItem="mJj-rg-l2T" secondAttribute="top" constant="16" id="geP-Xg-Xx5"/>
+                            <constraint firstItem="i5z-Uy-CJa" firstAttribute="centerY" secondItem="DoD-YM-ccb" secondAttribute="centerY" id="gvY-Zz-a4d"/>
+                            <constraint firstItem="aHE-X4-VOt" firstAttribute="top" secondItem="DoD-YM-ccb" secondAttribute="bottom" constant="16" id="rzB-U7-7cs"/>
+                            <constraint firstItem="i5z-Uy-CJa" firstAttribute="trailing" secondItem="aHE-X4-VOt" secondAttribute="trailing" id="tAL-iT-IRB"/>
+                            <constraint firstItem="i5z-Uy-CJa" firstAttribute="leading" secondItem="DoD-YM-ccb" secondAttribute="trailing" constant="16" id="vJ3-QB-Fl5"/>
+                        </constraints>
+                    </view>
+                    <connections>
+                        <outlet property="labelStock" destination="i5z-Uy-CJa" id="jKT-dy-pWY"/>
+                        <outlet property="tableview" destination="aHE-X4-VOt" id="MNw-1b-ccZ"/>
+                    </connections>
+                </viewController>
+                <placeholder placeholderIdentifier="IBFirstResponder" id="zJm-0S-zhX" userLabel="First Responder" customClass="UIResponder" sceneMemberID="firstResponder"/>
+            </objects>
+            <point key="canvasLocation" x="-2201.4814814814813" y="95.555555555555557"/>
+        </scene>
+        <!--Scan Order Model List View Controller-->
+        <scene sceneID="yPs-Ny-frH">
+            <objects>
+                <viewController storyboardIdentifier="ScanOrderModelListViewController" useStoryboardIdentifierAsRestorationIdentifier="YES" id="p2v-UD-wPL" customClass="ScanOrderModelListViewController" sceneMemberID="viewController">
+                    <view key="view" contentMode="scaleToFill" id="IpQ-Py-Irh">
+                        <rect key="frame" x="0.0" y="0.0" width="810" height="1080"/>
+                        <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
+                        <subviews>
+                            <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="N1G-LR-2o5">
+                                <rect key="frame" x="661.5" y="1005.5" width="108.5" height="34.5"/>
+                                <state key="normal" title="Button"/>
+                                <buttonConfiguration key="configuration" style="plain" title="Add to cart"/>
+                                <connections>
+                                    <action selector="onAddToCart:" destination="p2v-UD-wPL" eventType="touchUpInside" id="uj2-9t-r7x"/>
+                                </connections>
+                            </button>
+                            <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="zM0-LF-q8I">
+                                <rect key="frame" x="522.5" y="1005.5" width="99" height="34.5"/>
+                                <state key="normal" title="Button"/>
+                                <buttonConfiguration key="configuration" style="plain" title="Scan next"/>
+                                <connections>
+                                    <action selector="onScanNext:" destination="p2v-UD-wPL" eventType="touchUpInside" id="OMw-WQ-nsL"/>
+                                </connections>
+                            </button>
+                            <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="wgc-2E-fLG">
+                                <rect key="frame" x="479" y="16" width="146" height="35"/>
+                                <state key="normal" title="Button"/>
+                                <buttonConfiguration key="configuration" style="plain" title="Sync Availability"/>
+                                <connections>
+                                    <action selector="onUpdateStock:" destination="p2v-UD-wPL" eventType="touchUpInside" id="w5p-7S-GOT"/>
+                                </connections>
+                            </button>
+                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Last Update Unknown" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="XSY-X8-3ee">
+                                <rect key="frame" x="641" y="23" width="169" height="21"/>
+                                <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                                <nil key="textColor"/>
+                                <nil key="highlightedColor"/>
+                            </label>
+                            <tableView clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="plain" separatorStyle="none" rowHeight="-1" estimatedRowHeight="-1" sectionHeaderHeight="-1" estimatedSectionHeaderHeight="-1" sectionFooterHeight="-1" estimatedSectionFooterHeight="-1" translatesAutoresizingMaskIntoConstraints="NO" id="bW9-lh-e8E">
+                                <rect key="frame" x="0.0" y="67" width="810" height="918.5"/>
+                                <color key="backgroundColor" systemColor="systemBackgroundColor"/>
+                                <prototypes>
+                                    <tableViewCell clipsSubviews="YES" contentMode="scaleToFill" restorationIdentifier="ScanModelListCell" insetsLayoutMarginsFromSafeArea="NO" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="ScanModelListCell" rowHeight="166" id="di6-XI-avZ" customClass="ScanModelListCell">
+                                        <rect key="frame" x="0.0" y="50.5" width="810" height="166"/>
+                                        <autoresizingMask key="autoresizingMask"/>
+                                        <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" insetsLayoutMarginsFromSafeArea="NO" tableViewCell="di6-XI-avZ" id="Ajw-zF-nXf">
+                                            <rect key="frame" x="0.0" y="0.0" width="810" height="166"/>
+                                            <autoresizingMask key="autoresizingMask"/>
+                                            <subviews>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="252" verticalHuggingPriority="251" text="Model" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Z2Y-LD-RFG" userLabel="item label">
+                                                    <rect key="frame" x="16" y="13" width="50.5" height="21"/>
+                                                    <fontDescription key="fontDescription" type="boldSystem" pointSize="17"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="QTY:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="oVz-hr-vFh" userLabel="qty">
+                                                    <rect key="frame" x="591" y="13" width="37" height="21"/>
+                                                    <constraints>
+                                                        <constraint firstAttribute="width" constant="37" id="aVb-zQ-bwK"/>
+                                                    </constraints>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Port" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="dpT-CT-Ret" userLabel="port 0">
+                                                    <rect key="frame" x="189" y="110" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Origin" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="vwr-od-ENo" userLabel="origin 0">
+                                                    <rect key="frame" x="102.5" y="110" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="DDP" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="bVe-RI-TAM" userLabel="price0 0">
+                                                    <rect key="frame" x="275.5" y="110" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Unit Price" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="uHg-xx-aR0" userLabel="price1 0">
+                                                    <rect key="frame" x="362" y="110" width="86" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Special" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="9hH-Br-ZKJ" userLabel="price2 0">
+                                                    <rect key="frame" x="448" y="110" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Net Price" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="1kO-eZ-rr3" userLabel="price3 0">
+                                                    <rect key="frame" x="534.5" y="110" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Available" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="pMY-tU-GDI" userLabel="available 0">
+                                                    <rect key="frame" x="707.5" y="110" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="N/A" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="C6T-0g-fvL" userLabel="price4 0">
+                                                    <rect key="frame" x="621" y="110" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" verticalHuggingPriority="251" text="CuFT" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="AK1-ap-AfF" userLabel="cuft 0">
+                                                    <rect key="frame" x="16" y="110" width="86.5" height="24"/>
+                                                    <constraints>
+                                                        <constraint firstAttribute="height" constant="24" id="9Sl-EW-9k1"/>
+                                                    </constraints>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <textField opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" text="9999" borderStyle="roundedRect" textAlignment="natural" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="gGf-Qb-Uc9">
+                                                    <rect key="frame" x="638" y="7.5" width="52" height="32"/>
+                                                    <constraints>
+                                                        <constraint firstAttribute="width" constant="52" id="fro-N7-6ZI"/>
+                                                        <constraint firstAttribute="height" constant="32" id="u5V-Kz-bd0"/>
+                                                    </constraints>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="14"/>
+                                                    <textInputTraits key="textInputTraits"/>
+                                                </textField>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" verticalHuggingPriority="251" text="42.8 x 68.3 x 30.5H" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="2JG-Qa-LOy" userLabel="item label">
+                                                    <rect key="frame" x="86.5" y="14.5" width="396" height="18"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="ABCD" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="dcE-Le-QMW" userLabel="origin 1">
+                                                    <rect key="frame" x="102.5" y="134" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="ABCD" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Mbc-CV-To1" userLabel="port 1">
+                                                    <rect key="frame" x="189" y="134" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="123.45" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="N3z-jY-g8U" userLabel="price0 1">
+                                                    <rect key="frame" x="275.5" y="134" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="234.56" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="IEa-T1-E8F" userLabel="price1 1">
+                                                    <rect key="frame" x="362" y="134" width="86" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="234.56" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="6jj-I8-3Vs" userLabel="price2 1">
+                                                    <rect key="frame" x="448" y="134" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="234.56" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="NfL-2K-HAE" userLabel="price3 1">
+                                                    <rect key="frame" x="534.5" y="134" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Now" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="4MP-XW-NEm" userLabel="available 1">
+                                                    <rect key="frame" x="707.5" y="134" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <stepper opaque="NO" contentMode="scaleToFill" horizontalHuggingPriority="750" verticalHuggingPriority="750" contentHorizontalAlignment="center" contentVerticalAlignment="center" maximumValue="100" translatesAutoresizingMaskIntoConstraints="NO" id="Nnj-5b-sBF">
+                                                    <rect key="frame" x="700" y="7.5" width="94" height="32"/>
+                                                    <connections>
+                                                        <action selector="stepChange:" destination="p2v-UD-wPL" eventType="valueChanged" id="dWZ-hh-P9l"/>
+                                                    </connections>
+                                                </stepper>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="123.45" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="ygm-0i-NY3" userLabel="cuft 1">
+                                                    <rect key="frame" x="16" y="134" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="249" verticalHuggingPriority="251" textAlignment="natural" lineBreakMode="wordWrap" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="DVA-Pi-NA3" userLabel="item label">
+                                                    <rect key="frame" x="16" y="43.5" width="778" height="58.5"/>
+                                                    <string key="text">line 1
+line 2
+line 3</string>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Stock:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="k8U-Ey-RSG">
+                                                    <rect key="frame" x="512.5" y="13" width="48.5" height="21"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                </label>
+                                                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Zys-QN-184" userLabel="bottom line">
+                                                    <rect key="frame" x="0.0" y="164" width="810" height="2"/>
+                                                    <color key="backgroundColor" systemColor="systemGrayColor"/>
+                                                    <constraints>
+                                                        <constraint firstAttribute="height" constant="2" id="Kir-lD-neX"/>
+                                                    </constraints>
+                                                </view>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="234.56" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Dxm-te-2So" userLabel="price4 1">
+                                                    <rect key="frame" x="621" y="134" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                            </subviews>
+                                            <constraints>
+                                                <constraint firstItem="dpT-CT-Ret" firstAttribute="height" secondItem="AK1-ap-AfF" secondAttribute="height" id="04f-dU-ROg"/>
+                                                <constraint firstAttribute="trailing" secondItem="Zys-QN-184" secondAttribute="trailing" id="0WJ-x2-E30"/>
+                                                <constraint firstItem="Z2Y-LD-RFG" firstAttribute="top" secondItem="Ajw-zF-nXf" secondAttribute="top" constant="13" id="1u2-sR-u0X"/>
+                                                <constraint firstItem="oVz-hr-vFh" firstAttribute="centerY" secondItem="Z2Y-LD-RFG" secondAttribute="centerY" id="2Cc-48-asa"/>
+                                                <constraint firstItem="6jj-I8-3Vs" firstAttribute="height" secondItem="AK1-ap-AfF" secondAttribute="height" id="3TU-H1-8vw"/>
+                                                <constraint firstItem="N3z-jY-g8U" firstAttribute="height" secondItem="AK1-ap-AfF" secondAttribute="height" id="4MW-Us-gV8"/>
+                                                <constraint firstItem="6jj-I8-3Vs" firstAttribute="height" secondItem="ygm-0i-NY3" secondAttribute="height" id="4hM-6e-5aq"/>
+                                                <constraint firstItem="NfL-2K-HAE" firstAttribute="centerY" secondItem="ygm-0i-NY3" secondAttribute="centerY" id="50y-va-qii"/>
+                                                <constraint firstAttribute="bottom" secondItem="4MP-XW-NEm" secondAttribute="bottom" constant="8" id="5lY-Ez-Nx9"/>
+                                                <constraint firstItem="IEa-T1-E8F" firstAttribute="leading" secondItem="N3z-jY-g8U" secondAttribute="trailing" id="6ar-gD-UXA"/>
+                                                <constraint firstItem="DVA-Pi-NA3" firstAttribute="top" secondItem="gGf-Qb-Uc9" secondAttribute="bottom" constant="4" id="6ep-gf-jcg"/>
+                                                <constraint firstItem="vwr-od-ENo" firstAttribute="leading" secondItem="AK1-ap-AfF" secondAttribute="trailing" id="6vE-R8-Q9Z"/>
+                                                <constraint firstItem="6jj-I8-3Vs" firstAttribute="width" secondItem="ygm-0i-NY3" secondAttribute="width" id="7fw-v9-MDG"/>
+                                                <constraint firstItem="Dxm-te-2So" firstAttribute="width" secondItem="ygm-0i-NY3" secondAttribute="width" id="9mM-c0-dRf"/>
+                                                <constraint firstItem="1kO-eZ-rr3" firstAttribute="centerY" secondItem="AK1-ap-AfF" secondAttribute="centerY" id="AzD-5f-CGX"/>
+                                                <constraint firstItem="ygm-0i-NY3" firstAttribute="height" secondItem="AK1-ap-AfF" secondAttribute="height" id="BNQ-XW-Kx6"/>
+                                                <constraint firstItem="uHg-xx-aR0" firstAttribute="centerY" secondItem="AK1-ap-AfF" secondAttribute="centerY" id="BP9-zJ-8Ua"/>
+                                                <constraint firstItem="4MP-XW-NEm" firstAttribute="width" secondItem="ygm-0i-NY3" secondAttribute="width" id="BVm-Cz-Dxe"/>
+                                                <constraint firstItem="dcE-Le-QMW" firstAttribute="height" secondItem="AK1-ap-AfF" secondAttribute="height" id="Be7-dQ-xAV"/>
+                                                <constraint firstItem="Dxm-te-2So" firstAttribute="height" secondItem="ygm-0i-NY3" secondAttribute="height" id="CBo-qA-eVn"/>
+                                                <constraint firstAttribute="trailing" secondItem="4MP-XW-NEm" secondAttribute="trailing" constant="16" id="CW8-UG-ujQ"/>
+                                                <constraint firstItem="Zys-QN-184" firstAttribute="leading" secondItem="Ajw-zF-nXf" secondAttribute="leading" id="DR1-Dy-wrD"/>
+                                                <constraint firstItem="4MP-XW-NEm" firstAttribute="height" secondItem="AK1-ap-AfF" secondAttribute="height" id="EnZ-HX-tye"/>
+                                                <constraint firstItem="Nnj-5b-sBF" firstAttribute="trailing" secondItem="Ajw-zF-nXf" secondAttribute="trailingMargin" id="HQH-Bw-1Rb"/>
+                                                <constraint firstItem="pMY-tU-GDI" firstAttribute="height" secondItem="AK1-ap-AfF" secondAttribute="height" id="Hae-sG-sj9"/>
+                                                <constraint firstItem="NfL-2K-HAE" firstAttribute="height" secondItem="ygm-0i-NY3" secondAttribute="height" id="Hhk-kU-xEg"/>
+                                                <constraint firstItem="2JG-Qa-LOy" firstAttribute="leading" secondItem="Z2Y-LD-RFG" secondAttribute="trailing" constant="20" id="Htb-lD-6o2"/>
+                                                <constraint firstItem="Mbc-CV-To1" firstAttribute="centerY" secondItem="ygm-0i-NY3" secondAttribute="centerY" id="Iod-6I-0YQ"/>
+                                                <constraint firstItem="dcE-Le-QMW" firstAttribute="width" secondItem="ygm-0i-NY3" secondAttribute="width" id="JyJ-18-O4p"/>
+                                                <constraint firstItem="vwr-od-ENo" firstAttribute="centerY" secondItem="AK1-ap-AfF" secondAttribute="centerY" id="LF2-9V-f02"/>
+                                                <constraint firstItem="dpT-CT-Ret" firstAttribute="centerY" secondItem="AK1-ap-AfF" secondAttribute="centerY" id="LUB-C9-aEV"/>
+                                                <constraint firstItem="Dxm-te-2So" firstAttribute="top" secondItem="ygm-0i-NY3" secondAttribute="top" id="NBL-rI-13Y"/>
+                                                <constraint firstItem="ygm-0i-NY3" firstAttribute="top" secondItem="AK1-ap-AfF" secondAttribute="bottom" id="Njq-Jy-icX"/>
+                                                <constraint firstItem="1kO-eZ-rr3" firstAttribute="width" secondItem="AK1-ap-AfF" secondAttribute="width" id="OLU-DB-cqj"/>
+                                                <constraint firstItem="gGf-Qb-Uc9" firstAttribute="leading" secondItem="oVz-hr-vFh" secondAttribute="trailing" constant="10" id="Ons-s6-Tr6"/>
+                                                <constraint firstItem="C6T-0g-fvL" firstAttribute="leading" secondItem="1kO-eZ-rr3" secondAttribute="trailing" id="PMu-0J-Epy"/>
+                                                <constraint firstItem="IEa-T1-E8F" firstAttribute="height" secondItem="ygm-0i-NY3" secondAttribute="height" id="QS4-jg-FTy"/>
+                                                <constraint firstItem="IEa-T1-E8F" firstAttribute="centerY" secondItem="ygm-0i-NY3" secondAttribute="centerY" id="RNH-TB-mMa"/>
+                                                <constraint firstItem="bVe-RI-TAM" firstAttribute="width" secondItem="AK1-ap-AfF" secondAttribute="width" id="Rf4-wO-9zn"/>
+                                                <constraint firstItem="oVz-hr-vFh" firstAttribute="leading" secondItem="k8U-Ey-RSG" secondAttribute="trailing" constant="30" id="SDY-5j-jAi"/>
+                                                <constraint firstItem="Nnj-5b-sBF" firstAttribute="trailing" secondItem="DVA-Pi-NA3" secondAttribute="trailing" id="T6f-bO-s8P"/>
+                                                <constraint firstItem="9hH-Br-ZKJ" firstAttribute="centerY" secondItem="AK1-ap-AfF" secondAttribute="centerY" id="Uxm-ni-sbR"/>
+                                                <constraint firstItem="vwr-od-ENo" firstAttribute="height" secondItem="AK1-ap-AfF" secondAttribute="height" id="UyU-FH-Q06"/>
+                                                <constraint firstItem="ygm-0i-NY3" firstAttribute="leading" secondItem="AK1-ap-AfF" secondAttribute="leading" id="V4p-9n-oLb"/>
+                                                <constraint firstItem="4MP-XW-NEm" firstAttribute="centerY" secondItem="ygm-0i-NY3" secondAttribute="centerY" id="VeQ-fd-Q7i"/>
+                                                <constraint firstItem="NfL-2K-HAE" firstAttribute="width" secondItem="ygm-0i-NY3" secondAttribute="width" id="X98-nL-fYu"/>
+                                                <constraint firstItem="bVe-RI-TAM" firstAttribute="height" secondItem="AK1-ap-AfF" secondAttribute="height" id="XAi-SX-GyE"/>
+                                                <constraint firstItem="pMY-tU-GDI" firstAttribute="centerY" secondItem="AK1-ap-AfF" secondAttribute="centerY" id="XDx-XK-843"/>
+                                                <constraint firstItem="6jj-I8-3Vs" firstAttribute="leading" secondItem="IEa-T1-E8F" secondAttribute="trailing" id="YD2-WJ-wL4"/>
+                                                <constraint firstItem="IEa-T1-E8F" firstAttribute="width" secondItem="ygm-0i-NY3" secondAttribute="width" id="YOx-Yp-ZNh"/>
+                                                <constraint firstItem="bVe-RI-TAM" firstAttribute="centerY" secondItem="AK1-ap-AfF" secondAttribute="centerY" id="Zav-cy-CJ2"/>
+                                                <constraint firstItem="1kO-eZ-rr3" firstAttribute="height" secondItem="AK1-ap-AfF" secondAttribute="height" id="aCz-0h-Qfg"/>
+                                                <constraint firstItem="Dxm-te-2So" firstAttribute="leading" secondItem="NfL-2K-HAE" secondAttribute="trailing" id="aNB-LK-Ney"/>
+                                                <constraint firstItem="k8U-Ey-RSG" firstAttribute="leading" secondItem="2JG-Qa-LOy" secondAttribute="trailing" constant="30" id="awj-pL-4yV"/>
+                                                <constraint firstItem="IEa-T1-E8F" firstAttribute="height" secondItem="AK1-ap-AfF" secondAttribute="height" id="axG-6D-yld"/>
+                                                <constraint firstItem="9hH-Br-ZKJ" firstAttribute="width" secondItem="AK1-ap-AfF" secondAttribute="width" id="cFb-2x-2cO"/>
+                                                <constraint firstItem="dpT-CT-Ret" firstAttribute="top" secondItem="DVA-Pi-NA3" secondAttribute="bottom" constant="8" id="cII-zH-9oV"/>
+                                                <constraint firstItem="N3z-jY-g8U" firstAttribute="centerY" secondItem="ygm-0i-NY3" secondAttribute="centerY" id="cO5-zK-6cw"/>
+                                                <constraint firstItem="dcE-Le-QMW" firstAttribute="leading" secondItem="ygm-0i-NY3" secondAttribute="trailing" id="cab-cl-aar"/>
+                                                <constraint firstItem="1kO-eZ-rr3" firstAttribute="leading" secondItem="9hH-Br-ZKJ" secondAttribute="trailing" id="ctc-qh-Aay"/>
+                                                <constraint firstItem="Mbc-CV-To1" firstAttribute="height" secondItem="ygm-0i-NY3" secondAttribute="height" id="cug-K3-UiG"/>
+                                                <constraint firstItem="dcE-Le-QMW" firstAttribute="centerY" secondItem="ygm-0i-NY3" secondAttribute="centerY" id="cxN-cp-q4H"/>
+                                                <constraint firstItem="Mbc-CV-To1" firstAttribute="width" secondItem="ygm-0i-NY3" secondAttribute="width" id="eaV-Th-LUt"/>
+                                                <constraint firstItem="dpT-CT-Ret" firstAttribute="leading" secondItem="vwr-od-ENo" secondAttribute="trailing" id="ega-gR-AJ6"/>
+                                                <constraint firstItem="DVA-Pi-NA3" firstAttribute="leading" secondItem="Z2Y-LD-RFG" secondAttribute="leading" id="ez6-iK-ITP"/>
+                                                <constraint firstItem="dcE-Le-QMW" firstAttribute="height" secondItem="ygm-0i-NY3" secondAttribute="height" id="gTw-tv-Eo0"/>
+                                                <constraint firstItem="gGf-Qb-Uc9" firstAttribute="centerY" secondItem="Z2Y-LD-RFG" secondAttribute="centerY" id="gct-pl-dCL"/>
+                                                <constraint firstItem="Nnj-5b-sBF" firstAttribute="centerY" secondItem="Z2Y-LD-RFG" secondAttribute="centerY" id="hwf-o2-abY"/>
+                                                <constraint firstItem="9hH-Br-ZKJ" firstAttribute="leading" secondItem="uHg-xx-aR0" secondAttribute="trailing" id="jHz-y3-3U5"/>
+                                                <constraint firstItem="dpT-CT-Ret" firstAttribute="width" secondItem="AK1-ap-AfF" secondAttribute="width" id="kYl-I4-Bc3"/>
+                                                <constraint firstItem="vwr-od-ENo" firstAttribute="width" secondItem="AK1-ap-AfF" secondAttribute="width" id="kqA-mF-S4J"/>
+                                                <constraint firstItem="N3z-jY-g8U" firstAttribute="leading" secondItem="Mbc-CV-To1" secondAttribute="trailing" id="ldj-n7-udx"/>
+                                                <constraint firstItem="N3z-jY-g8U" firstAttribute="height" secondItem="ygm-0i-NY3" secondAttribute="height" id="lm9-hK-V9h"/>
+                                                <constraint firstItem="Z2Y-LD-RFG" firstAttribute="leading" secondItem="Ajw-zF-nXf" secondAttribute="leading" constant="16" id="mHY-qN-zBd"/>
+                                                <constraint firstItem="oVz-hr-vFh" firstAttribute="centerY" secondItem="k8U-Ey-RSG" secondAttribute="centerY" id="mw2-L2-Gko"/>
+                                                <constraint firstItem="4MP-XW-NEm" firstAttribute="height" secondItem="ygm-0i-NY3" secondAttribute="height" id="nus-Gg-DnE"/>
+                                                <constraint firstItem="pMY-tU-GDI" firstAttribute="width" secondItem="AK1-ap-AfF" secondAttribute="width" id="nvI-dk-FGN"/>
+                                                <constraint firstAttribute="trailing" secondItem="pMY-tU-GDI" secondAttribute="trailing" constant="16" id="nyY-7h-uqk"/>
+                                                <constraint firstItem="Mbc-CV-To1" firstAttribute="leading" secondItem="dcE-Le-QMW" secondAttribute="trailing" id="o27-ZS-oat"/>
+                                                <constraint firstItem="2JG-Qa-LOy" firstAttribute="centerY" secondItem="Z2Y-LD-RFG" secondAttribute="centerY" id="oDb-Rf-nAi"/>
+                                                <constraint firstItem="NfL-2K-HAE" firstAttribute="leading" secondItem="6jj-I8-3Vs" secondAttribute="trailing" id="oTP-t3-IU4"/>
+                                                <constraint firstItem="6jj-I8-3Vs" firstAttribute="centerY" secondItem="ygm-0i-NY3" secondAttribute="centerY" id="pGI-G5-her"/>
+                                                <constraint firstItem="uHg-xx-aR0" firstAttribute="width" secondItem="AK1-ap-AfF" secondAttribute="width" id="pcX-bA-HIg"/>
+                                                <constraint firstItem="uHg-xx-aR0" firstAttribute="height" secondItem="AK1-ap-AfF" secondAttribute="height" id="pny-Nj-OAY"/>
+                                                <constraint firstItem="4MP-XW-NEm" firstAttribute="leading" secondItem="Dxm-te-2So" secondAttribute="trailing" id="q3x-KW-7Wm"/>
+                                                <constraint firstItem="C6T-0g-fvL" firstAttribute="width" secondItem="AK1-ap-AfF" secondAttribute="width" id="q8w-nL-buE"/>
+                                                <constraint firstItem="N3z-jY-g8U" firstAttribute="width" secondItem="ygm-0i-NY3" secondAttribute="width" id="rrG-f4-cUN"/>
+                                                <constraint firstItem="uHg-xx-aR0" firstAttribute="leading" secondItem="bVe-RI-TAM" secondAttribute="trailing" id="s6W-Wh-TOS"/>
+                                                <constraint firstItem="Mbc-CV-To1" firstAttribute="height" secondItem="AK1-ap-AfF" secondAttribute="height" id="sLB-7E-aoG"/>
+                                                <constraint firstItem="pMY-tU-GDI" firstAttribute="leading" secondItem="C6T-0g-fvL" secondAttribute="trailing" id="sLt-Ze-blX"/>
+                                                <constraint firstItem="Nnj-5b-sBF" firstAttribute="leading" secondItem="gGf-Qb-Uc9" secondAttribute="trailing" constant="10" id="sf4-ee-m7i"/>
+                                                <constraint firstItem="C6T-0g-fvL" firstAttribute="centerY" secondItem="AK1-ap-AfF" secondAttribute="centerY" id="tsm-z8-KDl"/>
+                                                <constraint firstItem="bVe-RI-TAM" firstAttribute="leading" secondItem="dpT-CT-Ret" secondAttribute="trailing" id="umv-BW-uAb"/>
+                                                <constraint firstItem="NfL-2K-HAE" firstAttribute="height" secondItem="AK1-ap-AfF" secondAttribute="height" id="xGf-YJ-qUO"/>
+                                                <constraint firstAttribute="bottom" secondItem="Zys-QN-184" secondAttribute="bottom" id="xcU-0r-0oF"/>
+                                                <constraint firstItem="C6T-0g-fvL" firstAttribute="height" secondItem="AK1-ap-AfF" secondAttribute="height" id="xlY-LK-cMh"/>
+                                                <constraint firstItem="AK1-ap-AfF" firstAttribute="leading" secondItem="Ajw-zF-nXf" secondAttribute="leading" constant="16" id="ySk-Qs-VCV"/>
+                                                <constraint firstItem="9hH-Br-ZKJ" firstAttribute="height" secondItem="AK1-ap-AfF" secondAttribute="height" id="z3y-Ch-THL"/>
+                                            </constraints>
+                                        </tableViewCellContentView>
+                                        <connections>
+                                            <outlet property="editQTY" destination="gGf-Qb-Uc9" id="QHu-a1-ys6"/>
+                                            <outlet property="labelAvailable" destination="4MP-XW-NEm" id="NkH-5q-A1b"/>
+                                            <outlet property="labelCuft" destination="ygm-0i-NY3" id="VRz-pZ-uYe"/>
+                                            <outlet property="labelDescription" destination="DVA-Pi-NA3" id="oD1-iG-Gvm"/>
+                                            <outlet property="labelDimension" destination="2JG-Qa-LOy" id="BFk-hZ-AOX"/>
+                                            <outlet property="labelModel" destination="Z2Y-LD-RFG" id="pej-PG-D8q"/>
+                                            <outlet property="labelOrigin" destination="dcE-Le-QMW" id="tTy-if-nuP"/>
+                                            <outlet property="labelPort" destination="Mbc-CV-To1" id="Tcm-RS-bae"/>
+                                            <outlet property="labelPrice0" destination="bVe-RI-TAM" id="pMi-Tx-KcI"/>
+                                            <outlet property="labelPrice1" destination="uHg-xx-aR0" id="yyD-Od-Dns"/>
+                                            <outlet property="labelPrice2" destination="9hH-Br-ZKJ" id="PkD-Cf-ujv"/>
+                                            <outlet property="labelPrice3" destination="1kO-eZ-rr3" id="14T-b5-Ymx"/>
+                                            <outlet property="labelPrice4" destination="C6T-0g-fvL" id="ID9-2o-YJp"/>
+                                            <outlet property="labelPriceCTNR" destination="N3z-jY-g8U" id="lCb-SO-DXC"/>
+                                            <outlet property="labelPriceDisplay1" destination="NfL-2K-HAE" id="GNR-hm-VP6"/>
+                                            <outlet property="labelPriceDisplay2" destination="Dxm-te-2So" id="sb7-71-tpb"/>
+                                            <outlet property="labelPriceNCA" destination="IEa-T1-E8F" id="TZm-Xx-1VY"/>
+                                            <outlet property="labelPriceSpecial" destination="6jj-I8-3Vs" id="fDM-Ps-CfE"/>
+                                            <outlet property="labelStock" destination="k8U-Ey-RSG" id="QFV-eg-36Y"/>
+                                            <outlet property="steper" destination="Nnj-5b-sBF" id="Lba-IX-lJj"/>
+                                        </connections>
+                                    </tableViewCell>
+                                </prototypes>
+                                <connections>
+                                    <outlet property="dataSource" destination="p2v-UD-wPL" id="4pz-n4-gQR"/>
+                                    <outlet property="delegate" destination="p2v-UD-wPL" id="kvt-ru-Td0"/>
+                                </connections>
+                            </tableView>
+                        </subviews>
+                        <viewLayoutGuide key="safeArea" id="kJK-2I-SQO"/>
+                        <color key="backgroundColor" systemColor="systemBackgroundColor"/>
+                        <constraints>
+                            <constraint firstItem="kJK-2I-SQO" firstAttribute="trailing" secondItem="bW9-lh-e8E" secondAttribute="trailing" id="9XJ-w6-Rom"/>
+                            <constraint firstItem="N1G-LR-2o5" firstAttribute="centerY" secondItem="zM0-LF-q8I" secondAttribute="centerY" id="CyQ-E6-Xas"/>
+                            <constraint firstItem="N1G-LR-2o5" firstAttribute="top" secondItem="bW9-lh-e8E" secondAttribute="bottom" constant="20" id="DjH-DK-l5t"/>
+                            <constraint firstItem="bW9-lh-e8E" firstAttribute="top" secondItem="wgc-2E-fLG" secondAttribute="bottom" constant="16" id="Dzd-6G-XNl"/>
+                            <constraint firstItem="kJK-2I-SQO" firstAttribute="trailing" secondItem="N1G-LR-2o5" secondAttribute="trailing" constant="40" id="JMN-mC-Jp7"/>
+                            <constraint firstItem="N1G-LR-2o5" firstAttribute="leading" secondItem="zM0-LF-q8I" secondAttribute="trailing" constant="40" id="Lk7-5c-XO9"/>
+                            <constraint firstItem="bW9-lh-e8E" firstAttribute="leading" secondItem="kJK-2I-SQO" secondAttribute="leading" id="NU7-9g-SxT"/>
+                            <constraint firstItem="XSY-X8-3ee" firstAttribute="trailing" secondItem="bW9-lh-e8E" secondAttribute="trailing" id="Ud8-aI-4EP"/>
+                            <constraint firstItem="kJK-2I-SQO" firstAttribute="bottom" secondItem="N1G-LR-2o5" secondAttribute="bottom" constant="40" id="ZGa-sj-pwl"/>
+                            <constraint firstItem="XSY-X8-3ee" firstAttribute="centerY" secondItem="wgc-2E-fLG" secondAttribute="centerY" id="ldh-Yn-10z"/>
+                            <constraint firstItem="wgc-2E-fLG" firstAttribute="top" secondItem="IpQ-Py-Irh" secondAttribute="top" constant="16" id="vCL-3M-6R2"/>
+                            <constraint firstItem="XSY-X8-3ee" firstAttribute="leading" secondItem="wgc-2E-fLG" secondAttribute="trailing" constant="16" id="xKM-41-YA3"/>
+                        </constraints>
+                    </view>
+                    <value key="contentSizeForViewInPopover" type="size" width="480" height="320"/>
+                    <freeformSimulatedSizeMetrics key="simulatedDestinationMetrics"/>
+                    <connections>
+                        <outlet property="btnUpdateStoc" destination="wgc-2E-fLG" id="P1G-S4-18m"/>
+                        <outlet property="labelStock" destination="XSY-X8-3ee" id="6vF-yn-yrd"/>
+                        <outlet property="tableView" destination="bW9-lh-e8E" id="N4g-Py-fjm"/>
+                    </connections>
+                </viewController>
+                <placeholder placeholderIdentifier="IBFirstResponder" id="Hy3-80-z6R" userLabel="First Responder" customClass="UIResponder" sceneMemberID="firstResponder"/>
+            </objects>
+            <point key="canvasLocation" x="-828.22580645161293" y="130.53839364518976"/>
+        </scene>
+        <!--Cart View Controller-->
+        <scene sceneID="202-v9-HZP">
+            <objects>
+                <viewController storyboardIdentifier="CartViewController" useStoryboardIdentifierAsRestorationIdentifier="YES" id="oRS-pB-8jo" customClass="CartViewController" sceneMemberID="viewController">
+                    <view key="view" contentMode="scaleToFill" id="Nru-ZY-H46">
+                        <rect key="frame" x="0.0" y="0.0" width="810" height="1080"/>
+                        <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
+                        <subviews>
+                            <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="RmD-zr-fSi" userLabel="cart item view">
+                                <rect key="frame" x="0.0" y="40" width="810" height="916"/>
+                                <subviews>
+                                    <activityIndicatorView opaque="NO" contentMode="scaleToFill" horizontalHuggingPriority="750" verticalHuggingPriority="750" hidesWhenStopped="YES" animating="YES" style="whiteLarge" translatesAutoresizingMaskIntoConstraints="NO" id="lpm-Ch-BkE" userLabel="mum">
+                                        <rect key="frame" x="386.5" y="439.5" width="37" height="37"/>
+                                        <color key="color" red="0.0" green="0.47843137250000001" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                    </activityIndicatorView>
+                                    <tableView clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="plain" separatorStyle="default" rowHeight="120" sectionHeaderHeight="28" sectionFooterHeight="28" translatesAutoresizingMaskIntoConstraints="NO" id="3W5-s1-uRe">
+                                        <rect key="frame" x="0.0" y="0.0" width="810" height="916"/>
+                                        <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
+                                        <color key="sectionIndexBackgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                        <prototypes>
+                                            <tableViewCell clipsSubviews="YES" contentMode="scaleToFill" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="CartItemCell" rowHeight="146" id="fdn-6O-9Xe" customClass="ModelItemCell">
+                                                <rect key="frame" x="0.0" y="50.5" width="810" height="146"/>
+                                                <autoresizingMask key="autoresizingMask"/>
+                                                <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="fdn-6O-9Xe" id="dsP-tF-cWg">
+                                                    <rect key="frame" x="0.0" y="0.0" width="810" height="146"/>
+                                                    <autoresizingMask key="autoresizingMask"/>
+                                                    <subviews>
+                                                        <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="name aaaaaaaaaaaaa aaaaaaaaaa BBBBB  CCCCC" lineBreakMode="wordWrap" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="oqD-9S-X3Y" userLabel="name and description">
+                                                            <rect key="frame" x="123" y="10" width="224" height="100"/>
+                                                            <fontDescription key="fontDescription" name="HelveticaNeue" family="Helvetica Neue" pointSize="15"/>
+                                                            <nil key="highlightedColor"/>
+                                                        </label>
+                                                        <textField opaque="NO" clipsSubviews="YES" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" text="9999" borderStyle="roundedRect" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="1eH-Ve-85d" userLabel="qty">
+                                                            <rect key="frame" x="480" y="41" width="60" height="32"/>
+                                                            <constraints>
+                                                                <constraint firstAttribute="height" constant="32" id="cJg-9M-hWQ"/>
+                                                                <constraint firstAttribute="width" constant="60" id="gBB-Cj-PZn"/>
+                                                            </constraints>
+                                                            <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                            <fontDescription key="fontDescription" type="system" pointSize="14"/>
+                                                            <textInputTraits key="textInputTraits" keyboardType="numberPad"/>
+                                                            <connections>
+                                                                <outlet property="delegate" destination="fdn-6O-9Xe" id="gSw-aO-tkP"/>
+                                                            </connections>
+                                                        </textField>
+                                                        <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="IiP-RS-RWr" userLabel="imgbtn detail">
+                                                            <rect key="frame" x="15" y="10" width="100" height="100"/>
+                                                            <constraints>
+                                                                <constraint firstAttribute="height" constant="100" id="Hke-5f-GAw"/>
+                                                                <constraint firstAttribute="width" constant="100" id="dZn-2v-NbT"/>
+                                                            </constraints>
+                                                            <state key="normal">
+                                                                <color key="titleShadowColor" red="0.5" green="0.5" blue="0.5" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                            </state>
+                                                            <connections>
+                                                                <action selector="imgbtnClick:" destination="oRS-pB-8jo" eventType="touchUpInside" id="tKi-4F-GnW"/>
+                                                            </connections>
+                                                        </button>
+                                                        <stepper opaque="NO" clipsSubviews="YES" contentMode="scaleToFill" horizontalHuggingPriority="750" verticalHuggingPriority="750" contentHorizontalAlignment="center" contentVerticalAlignment="center" value="1" maximumValue="99999" translatesAutoresizingMaskIntoConstraints="NO" id="6xs-Lv-Lz6">
+                                                            <rect key="frame" x="555" y="41" width="94" height="32"/>
+                                                            <constraints>
+                                                                <constraint firstAttribute="height" constant="32" id="axG-nU-ukL"/>
+                                                                <constraint firstAttribute="width" constant="94" id="nPK-gx-pbW"/>
+                                                            </constraints>
+                                                            <connections>
+                                                                <action selector="setpperChanged:" destination="fdn-6O-9Xe" eventType="touchUpInside" id="Oq0-fY-ryy"/>
+                                                            </connections>
+                                                        </stepper>
+                                                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="12345678.99" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="G3q-Ix-H24" userLabel="unit price">
+                                                            <rect key="frame" x="355" y="46.5" width="110" height="21"/>
+                                                            <constraints>
+                                                                <constraint firstAttribute="width" constant="110" id="xFT-aA-Bp3"/>
+                                                            </constraints>
+                                                            <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                                                            <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                            <nil key="highlightedColor"/>
+                                                        </label>
+                                                        <label hidden="YES" opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="30 bundle item with $xxx" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="1IO-bU-Oxa">
+                                                            <rect key="frame" x="123" y="87.5" width="490" height="21"/>
+                                                            <constraints>
+                                                                <constraint firstAttribute="height" constant="21" id="hez-sl-3Yv"/>
+                                                            </constraints>
+                                                            <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                                                            <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                            <nil key="highlightedColor"/>
+                                                        </label>
+                                                        <label hidden="YES" opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="12345678.99" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Q6c-K9-rlF" userLabel="price before discount" customClass="StrikethroughLabel">
+                                                            <rect key="frame" x="355" y="10" width="110" height="21"/>
+                                                            <constraints>
+                                                                <constraint firstAttribute="width" constant="110" id="7ER-mm-hzG"/>
+                                                                <constraint firstAttribute="height" constant="21" id="lEf-wa-bUr"/>
+                                                            </constraints>
+                                                            <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                                                            <color key="textColor" red="0.33333333329999998" green="0.33333333329999998" blue="0.33333333329999998" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                            <nil key="highlightedColor"/>
+                                                        </label>
+                                                        <label hidden="YES" opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="99.99% off" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="N1Z-2x-l0W" userLabel="discount">
+                                                            <rect key="frame" x="509" y="10" width="100" height="21"/>
+                                                            <constraints>
+                                                                <constraint firstAttribute="width" constant="100" id="Cr1-6y-5Ag"/>
+                                                            </constraints>
+                                                            <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                                                            <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                            <nil key="highlightedColor"/>
+                                                        </label>
+                                                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Sold in QTY of:9999" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="tLh-hg-C39">
+                                                            <rect key="frame" x="619" y="10" width="160" height="21"/>
+                                                            <constraints>
+                                                                <constraint firstAttribute="height" constant="21" id="ayf-7z-kaO"/>
+                                                                <constraint firstAttribute="width" constant="160" id="p0E-C7-5Od"/>
+                                                            </constraints>
+                                                            <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                                                            <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                            <nil key="highlightedColor"/>
+                                                        </label>
+                                                        <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="123456789.00" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="UkH-i1-iGl" userLabel="subtotal price">
+                                                            <rect key="frame" x="664" y="46.5" width="115" height="21"/>
+                                                            <constraints>
+                                                                <constraint firstAttribute="width" constant="115" id="Jcg-7F-KDZ"/>
+                                                            </constraints>
+                                                            <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                                                            <nil key="highlightedColor"/>
+                                                        </label>
+                                                        <button hidden="YES" opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="rWd-EH-8O4" customClass="BundleDetailButton">
+                                                            <rect key="frame" x="621" y="83" width="50" height="30"/>
+                                                            <constraints>
+                                                                <constraint firstAttribute="height" constant="30" id="ciL-EM-lOo"/>
+                                                                <constraint firstAttribute="width" constant="50" id="nKh-Cx-BM8"/>
+                                                            </constraints>
+                                                            <state key="normal" title="Detail">
+                                                                <color key="titleShadowColor" red="0.5" green="0.5" blue="0.5" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                            </state>
+                                                            <connections>
+                                                                <action selector="OnClick_BundleDetail:" destination="fdn-6O-9Xe" eventType="touchUpInside" id="Ql0-6Q-qbO"/>
+                                                            </connections>
+                                                        </button>
+                                                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="nhs-qX-bOm">
+                                                            <rect key="frame" x="15" y="117" width="780" height="21"/>
+                                                            <constraints>
+                                                                <constraint firstAttribute="height" constant="21" id="R3w-bO-5Ss"/>
+                                                            </constraints>
+                                                            <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                                                            <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                            <nil key="highlightedColor"/>
+                                                        </label>
+                                                        <label hidden="YES" opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="No Such Model" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="faS-8H-H1x">
+                                                            <rect key="frame" x="61" y="60" width="337" height="42"/>
+                                                            <constraints>
+                                                                <constraint firstAttribute="width" constant="337" id="BzO-dn-cAj"/>
+                                                                <constraint firstAttribute="height" constant="42" id="Zqx-xO-eue"/>
+                                                            </constraints>
+                                                            <fontDescription key="fontDescription" type="boldSystem" pointSize="35"/>
+                                                            <color key="textColor" red="1" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                            <nil key="highlightedColor"/>
+                                                        </label>
+                                                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" textAlignment="center" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="0Qp-mD-Agt">
+                                                            <rect key="frame" x="15" y="10" width="100" height="100"/>
+                                                            <constraints>
+                                                                <constraint firstAttribute="height" constant="100" id="ElE-td-g8R"/>
+                                                                <constraint firstAttribute="width" constant="100" id="YeG-4G-9ZU"/>
+                                                            </constraints>
+                                                            <string key="text"> Out
+of
+Stock</string>
+                                                            <fontDescription key="fontDescription" type="boldSystem" pointSize="20"/>
+                                                            <color key="textColor" red="1" green="0.0" blue="0.0" alpha="1" colorSpace="calibratedRGB"/>
+                                                            <nil key="highlightedColor"/>
+                                                        </label>
+                                                        <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="NbN-g8-LAY" customClass="BundleDetailButton">
+                                                            <rect key="frame" x="679" y="83" width="100" height="30"/>
+                                                            <constraints>
+                                                                <constraint firstAttribute="height" constant="30" id="IDL-jT-zy1"/>
+                                                                <constraint firstAttribute="width" constant="100" id="adt-KM-bK9"/>
+                                                            </constraints>
+                                                            <state key="normal" title="Master Model"/>
+                                                            <connections>
+                                                                <action selector="masterBundleClick:" destination="fdn-6O-9Xe" eventType="touchUpInside" id="Brs-ex-bpJ"/>
+                                                            </connections>
+                                                        </button>
+                                                    </subviews>
+                                                    <constraints>
+                                                        <constraint firstItem="UkH-i1-iGl" firstAttribute="trailing" secondItem="tLh-hg-C39" secondAttribute="trailing" id="2Hv-WB-Xh8"/>
+                                                        <constraint firstAttribute="trailing" secondItem="nhs-qX-bOm" secondAttribute="trailing" constant="15" id="38m-P6-eAH"/>
+                                                        <constraint firstItem="oqD-9S-X3Y" firstAttribute="leading" secondItem="IiP-RS-RWr" secondAttribute="trailing" constant="8" id="7TB-cB-yNr"/>
+                                                        <constraint firstItem="NbN-g8-LAY" firstAttribute="leading" secondItem="rWd-EH-8O4" secondAttribute="trailing" constant="8" id="84A-FG-xZt"/>
+                                                        <constraint firstItem="0Qp-mD-Agt" firstAttribute="top" secondItem="dsP-tF-cWg" secondAttribute="top" constant="10" id="8LD-fW-nVa"/>
+                                                        <constraint firstItem="oqD-9S-X3Y" firstAttribute="bottom" secondItem="0Qp-mD-Agt" secondAttribute="bottom" id="9O0-5x-DMI"/>
+                                                        <constraint firstItem="1eH-Ve-85d" firstAttribute="leading" secondItem="G3q-Ix-H24" secondAttribute="trailing" constant="15" id="9YX-qv-hp0"/>
+                                                        <constraint firstItem="nhs-qX-bOm" firstAttribute="top" secondItem="NbN-g8-LAY" secondAttribute="bottom" constant="4" id="F5s-nI-gu6"/>
+                                                        <constraint firstItem="oqD-9S-X3Y" firstAttribute="top" secondItem="0Qp-mD-Agt" secondAttribute="top" id="IIi-uM-Vfy"/>
+                                                        <constraint firstItem="NbN-g8-LAY" firstAttribute="firstBaseline" secondItem="rWd-EH-8O4" secondAttribute="firstBaseline" id="ILG-tk-zI3"/>
+                                                        <constraint firstItem="6xs-Lv-Lz6" firstAttribute="centerY" secondItem="G3q-Ix-H24" secondAttribute="centerY" id="PaN-wg-Z49"/>
+                                                        <constraint firstItem="nhs-qX-bOm" firstAttribute="leading" secondItem="dsP-tF-cWg" secondAttribute="leading" constant="15" id="R2v-HC-4jj"/>
+                                                        <constraint firstItem="IiP-RS-RWr" firstAttribute="top" secondItem="dsP-tF-cWg" secondAttribute="top" constant="10" id="Sd2-Sr-1F3"/>
+                                                        <constraint firstItem="tLh-hg-C39" firstAttribute="top" secondItem="0Qp-mD-Agt" secondAttribute="top" id="UL7-rf-qx7"/>
+                                                        <constraint firstItem="6xs-Lv-Lz6" firstAttribute="top" secondItem="N1Z-2x-l0W" secondAttribute="bottom" constant="10" id="UMA-jR-Cz0"/>
+                                                        <constraint firstItem="IiP-RS-RWr" firstAttribute="leading" secondItem="dsP-tF-cWg" secondAttribute="leading" constant="15" id="UOf-sk-VIp"/>
+                                                        <constraint firstItem="rWd-EH-8O4" firstAttribute="top" secondItem="6xs-Lv-Lz6" secondAttribute="bottom" constant="10" id="WnE-Hq-j0Q"/>
+                                                        <constraint firstItem="Q6c-K9-rlF" firstAttribute="leading" secondItem="oqD-9S-X3Y" secondAttribute="trailing" constant="8" id="Z2p-mN-s27"/>
+                                                        <constraint firstItem="1eH-Ve-85d" firstAttribute="centerY" secondItem="G3q-Ix-H24" secondAttribute="centerY" id="acw-1G-fUC"/>
+                                                        <constraint firstAttribute="trailingMargin" secondItem="NbN-g8-LAY" secondAttribute="trailing" constant="15" id="atw-OG-hhL"/>
+                                                        <constraint firstItem="UkH-i1-iGl" firstAttribute="centerY" secondItem="G3q-Ix-H24" secondAttribute="centerY" id="cQQ-qR-ejt"/>
+                                                        <constraint firstItem="rWd-EH-8O4" firstAttribute="leading" secondItem="1IO-bU-Oxa" secondAttribute="trailing" constant="8" id="gUn-As-Akd"/>
+                                                        <constraint firstItem="faS-8H-H1x" firstAttribute="top" secondItem="dsP-tF-cWg" secondAttribute="topMargin" constant="45" id="iZh-zK-76i"/>
+                                                        <constraint firstAttribute="bottom" secondItem="nhs-qX-bOm" secondAttribute="bottom" constant="8" id="j2y-zD-CVF"/>
+                                                        <constraint firstItem="0Qp-mD-Agt" firstAttribute="leading" secondItem="dsP-tF-cWg" secondAttribute="leading" constant="15" id="llo-6b-x0p"/>
+                                                        <constraint firstItem="UkH-i1-iGl" firstAttribute="leading" secondItem="6xs-Lv-Lz6" secondAttribute="trailing" constant="15" id="lyC-Yx-nun"/>
+                                                        <constraint firstItem="NbN-g8-LAY" firstAttribute="trailing" secondItem="UkH-i1-iGl" secondAttribute="trailing" id="nru-Ky-V4o"/>
+                                                        <constraint firstItem="Q6c-K9-rlF" firstAttribute="leading" secondItem="G3q-Ix-H24" secondAttribute="leading" id="qfh-b3-c7N"/>
+                                                        <constraint firstItem="rWd-EH-8O4" firstAttribute="firstBaseline" secondItem="1IO-bU-Oxa" secondAttribute="firstBaseline" id="rmY-BO-axC"/>
+                                                        <constraint firstItem="faS-8H-H1x" firstAttribute="leading" secondItem="dsP-tF-cWg" secondAttribute="leadingMargin" constant="45" id="sI4-Ut-sLv"/>
+                                                        <constraint firstItem="NbN-g8-LAY" firstAttribute="leading" secondItem="rWd-EH-8O4" secondAttribute="trailing" constant="8" id="sec-mG-24x"/>
+                                                        <constraint firstItem="1IO-bU-Oxa" firstAttribute="leading" secondItem="IiP-RS-RWr" secondAttribute="trailing" constant="8" id="tig-Bg-jEC"/>
+                                                        <constraint firstItem="tLh-hg-C39" firstAttribute="firstBaseline" secondItem="Q6c-K9-rlF" secondAttribute="firstBaseline" id="veh-bQ-a6g"/>
+                                                        <constraint firstItem="tLh-hg-C39" firstAttribute="leading" secondItem="N1Z-2x-l0W" secondAttribute="trailing" constant="10" id="wDE-ow-WN3"/>
+                                                        <constraint firstItem="N1Z-2x-l0W" firstAttribute="firstBaseline" secondItem="Q6c-K9-rlF" secondAttribute="firstBaseline" id="xeu-Kg-9Bn"/>
+                                                        <constraint firstItem="6xs-Lv-Lz6" firstAttribute="leading" secondItem="1eH-Ve-85d" secondAttribute="trailing" constant="15" id="zyP-H8-Wsf"/>
+                                                    </constraints>
+                                                </tableViewCellContentView>
+                                                <connections>
+                                                    <outlet property="btnImage" destination="IiP-RS-RWr" id="8fI-I9-kVy"/>
+                                                    <outlet property="bundleButton" destination="rWd-EH-8O4" id="ezu-J0-5aq"/>
+                                                    <outlet property="bundleLabel" destination="1IO-bU-Oxa" id="Dre-9S-k0R"/>
+                                                    <outlet property="editCount" destination="1eH-Ve-85d" id="Ebu-vK-uDR"/>
+                                                    <outlet property="labelDescription" destination="oqD-9S-X3Y" id="oyO-td-DtA"/>
+                                                    <outlet property="labelDiscount" destination="N1Z-2x-l0W" id="8uh-rG-4Rt"/>
+                                                    <outlet property="labelMasterpack" destination="tLh-hg-C39" id="lLF-dE-E3r"/>
+                                                    <outlet property="labelNoSuchModel" destination="faS-8H-H1x" id="Lsf-SM-8Tq"/>
+                                                    <outlet property="labelNotes" destination="nhs-qX-bOm" id="1UN-4y-LUV"/>
+                                                    <outlet property="labelOldPrice" destination="Q6c-K9-rlF" id="iLs-1P-SBQ"/>
+                                                    <outlet property="labelOutOfStock" destination="0Qp-mD-Agt" id="hYk-fi-cZ1"/>
+                                                    <outlet property="labelPrice" destination="UkH-i1-iGl" id="2oP-ZQ-yzl"/>
+                                                    <outlet property="labelUnitPrice" destination="G3q-Ix-H24" id="vNl-ty-SEj"/>
+                                                    <outlet property="masterBtn" destination="NbN-g8-LAY" id="HbA-Uh-mxf"/>
+                                                    <outlet property="stepper" destination="6xs-Lv-Lz6" id="8FR-ez-c8b"/>
+                                                </connections>
+                                            </tableViewCell>
+                                            <tableViewCell clipsSubviews="YES" contentMode="scaleToFill" restorationIdentifier="ScanCartItemCell" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="ScanCartItemCell" rowHeight="120" id="Bb2-X4-qir" customClass="ScanCartItemCell">
+                                                <rect key="frame" x="0.0" y="196.5" width="810" height="120"/>
+                                                <autoresizingMask key="autoresizingMask"/>
+                                                <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="Bb2-X4-qir" id="6UY-HP-ApY">
+                                                    <rect key="frame" x="0.0" y="0.0" width="810" height="120"/>
+                                                    <autoresizingMask key="autoresizingMask"/>
+                                                    <subviews>
+                                                        <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="name aaaaaaaaaaaaa aaaaaaaaaa BBBBB  CCCCC" lineBreakMode="wordWrap" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="6dX-9b-w6l" userLabel="name and description">
+                                                            <rect key="frame" x="15" y="37" width="336" height="54"/>
+                                                            <fontDescription key="fontDescription" name="HelveticaNeue" family="Helvetica Neue" pointSize="15"/>
+                                                            <nil key="highlightedColor"/>
+                                                        </label>
+                                                        <textField opaque="NO" clipsSubviews="YES" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" text="9999" borderStyle="roundedRect" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="V3e-A3-y8I" userLabel="qty">
+                                                            <rect key="frame" x="491" y="41.5" width="60" height="32"/>
+                                                            <constraints>
+                                                                <constraint firstAttribute="width" constant="60" id="W12-Fv-Xth"/>
+                                                                <constraint firstAttribute="height" constant="32" id="d8i-y9-e8i"/>
+                                                            </constraints>
+                                                            <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                            <fontDescription key="fontDescription" type="system" pointSize="14"/>
+                                                            <textInputTraits key="textInputTraits" keyboardType="numberPad"/>
+                                                            <connections>
+                                                                <outlet property="delegate" destination="Bb2-X4-qir" id="fWF-9f-MvK"/>
+                                                            </connections>
+                                                        </textField>
+                                                        <stepper opaque="NO" clipsSubviews="YES" contentMode="scaleToFill" horizontalHuggingPriority="750" verticalHuggingPriority="750" contentHorizontalAlignment="center" contentVerticalAlignment="center" value="1" maximumValue="99999" translatesAutoresizingMaskIntoConstraints="NO" id="S0K-Bu-637">
+                                                            <rect key="frame" x="566" y="41.5" width="94" height="32"/>
+                                                            <constraints>
+                                                                <constraint firstAttribute="height" constant="32" id="Bwt-Dk-y1D"/>
+                                                                <constraint firstAttribute="width" constant="94" id="NaB-Sw-2Cw"/>
+                                                            </constraints>
+                                                            <connections>
+                                                                <action selector="setpperChanged:" destination="Bb2-X4-qir" eventType="valueChanged" id="TUZ-RB-2lJ"/>
+                                                            </connections>
+                                                        </stepper>
+                                                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="12345678.99" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Hlt-a1-Obi" userLabel="unit price">
+                                                            <rect key="frame" x="366" y="47" width="110" height="21"/>
+                                                            <constraints>
+                                                                <constraint firstAttribute="width" constant="110" id="A1n-Bu-hvn"/>
+                                                            </constraints>
+                                                            <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                                                            <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                            <nil key="highlightedColor"/>
+                                                        </label>
+                                                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Sold in QTY of:9999" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="sfo-Yw-I0g">
+                                                            <rect key="frame" x="630" y="11" width="160" height="21"/>
+                                                            <constraints>
+                                                                <constraint firstAttribute="width" constant="160" id="4tF-dv-3cb"/>
+                                                                <constraint firstAttribute="height" constant="21" id="6HM-8j-A6Z"/>
+                                                            </constraints>
+                                                            <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                                                            <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                            <nil key="highlightedColor"/>
+                                                        </label>
+                                                        <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="123456789.00" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="8RN-F1-G0M" userLabel="subtotal price">
+                                                            <rect key="frame" x="675" y="47" width="115" height="21"/>
+                                                            <constraints>
+                                                                <constraint firstAttribute="width" constant="115" id="XTi-4B-GAs"/>
+                                                            </constraints>
+                                                            <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                                                            <nil key="highlightedColor"/>
+                                                        </label>
+                                                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="93p-eO-r5r">
+                                                            <rect key="frame" x="15" y="91" width="780" height="21"/>
+                                                            <constraints>
+                                                                <constraint firstAttribute="height" constant="21" id="xJC-Y7-ODb"/>
+                                                            </constraints>
+                                                            <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                                                            <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                            <nil key="highlightedColor"/>
+                                                        </label>
+                                                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="3Cs-3s-CCg">
+                                                            <rect key="frame" x="15" y="11" width="44.5" height="21"/>
+                                                            <constraints>
+                                                                <constraint firstAttribute="height" constant="21" id="jqE-UM-qLG"/>
+                                                            </constraints>
+                                                            <fontDescription key="fontDescription" type="boldSystem" pointSize="17"/>
+                                                            <nil key="textColor"/>
+                                                            <nil key="highlightedColor"/>
+                                                        </label>
+                                                        <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="ATy-eu-2mi">
+                                                            <rect key="frame" x="491" y="74.5" width="169" height="34.5"/>
+                                                            <state key="normal" title="Button"/>
+                                                            <buttonConfiguration key="configuration" style="plain" title="Discount"/>
+                                                            <connections>
+                                                                <action selector="onScanDiscount:" destination="oRS-pB-8jo" eventType="touchUpInside" id="d9h-lA-RcO"/>
+                                                            </connections>
+                                                        </button>
+                                                        <label hidden="YES" opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="12345678.99" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="boP-G8-Lp6" userLabel="price before discount" customClass="StrikethroughLabel">
+                                                            <rect key="frame" x="366" y="76" width="110" height="21"/>
+                                                            <constraints>
+                                                                <constraint firstAttribute="width" constant="110" id="v3j-Sh-hTs"/>
+                                                            </constraints>
+                                                            <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                                                            <color key="textColor" red="0.33333333329999998" green="0.33333333329999998" blue="0.33333333329999998" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                            <nil key="highlightedColor"/>
+                                                        </label>
+                                                    </subviews>
+                                                    <constraints>
+                                                        <constraint firstItem="ATy-eu-2mi" firstAttribute="leading" secondItem="V3e-A3-y8I" secondAttribute="leading" id="24u-kB-ZTW"/>
+                                                        <constraint firstItem="8RN-F1-G0M" firstAttribute="trailing" secondItem="sfo-Yw-I0g" secondAttribute="trailing" id="5gN-4E-b0J"/>
+                                                        <constraint firstItem="boP-G8-Lp6" firstAttribute="top" secondItem="Hlt-a1-Obi" secondAttribute="bottom" constant="8" symbolic="YES" id="5kv-xC-Mgl"/>
+                                                        <constraint firstItem="Hlt-a1-Obi" firstAttribute="leading" secondItem="boP-G8-Lp6" secondAttribute="leading" id="6CT-Ah-YWm"/>
+                                                        <constraint firstItem="V3e-A3-y8I" firstAttribute="leading" secondItem="Hlt-a1-Obi" secondAttribute="trailing" constant="15" id="6TO-z7-7Kt"/>
+                                                        <constraint firstItem="6dX-9b-w6l" firstAttribute="top" secondItem="3Cs-3s-CCg" secondAttribute="bottom" constant="5" id="87y-Z7-Hjd"/>
+                                                        <constraint firstItem="3Cs-3s-CCg" firstAttribute="leading" secondItem="6UY-HP-ApY" secondAttribute="leading" constant="15" id="8sb-DO-kZb"/>
+                                                        <constraint firstAttribute="bottom" secondItem="93p-eO-r5r" secondAttribute="bottom" constant="8" id="Bfi-UY-dkf"/>
+                                                        <constraint firstItem="S0K-Bu-637" firstAttribute="trailing" secondItem="ATy-eu-2mi" secondAttribute="trailing" id="D0a-fG-ado"/>
+                                                        <constraint firstAttribute="bottom" secondItem="ATy-eu-2mi" secondAttribute="bottom" constant="11" id="D1J-WH-H1j"/>
+                                                        <constraint firstItem="S0K-Bu-637" firstAttribute="leading" secondItem="V3e-A3-y8I" secondAttribute="trailing" constant="15" id="GZs-5w-tdj"/>
+                                                        <constraint firstItem="V3e-A3-y8I" firstAttribute="centerY" secondItem="Hlt-a1-Obi" secondAttribute="centerY" id="HZi-R1-rbC"/>
+                                                        <constraint firstAttribute="trailing" secondItem="93p-eO-r5r" secondAttribute="trailing" constant="15" id="Jrg-pz-XQM"/>
+                                                        <constraint firstItem="8RN-F1-G0M" firstAttribute="top" secondItem="sfo-Yw-I0g" secondAttribute="bottom" constant="15" id="OuW-Vh-JF4"/>
+                                                        <constraint firstAttribute="trailing" secondItem="8RN-F1-G0M" secondAttribute="trailing" constant="20" id="Q90-Vd-eCT"/>
+                                                        <constraint firstItem="8RN-F1-G0M" firstAttribute="centerY" secondItem="Hlt-a1-Obi" secondAttribute="centerY" id="R13-ks-goL"/>
+                                                        <constraint firstItem="3Cs-3s-CCg" firstAttribute="top" secondItem="6UY-HP-ApY" secondAttribute="top" constant="11" id="RWt-7Z-Ux1"/>
+                                                        <constraint firstItem="Hlt-a1-Obi" firstAttribute="trailing" secondItem="boP-G8-Lp6" secondAttribute="trailing" id="Reb-Rf-V7w"/>
+                                                        <constraint firstItem="93p-eO-r5r" firstAttribute="top" secondItem="6dX-9b-w6l" secondAttribute="bottom" id="U4m-dk-ipl"/>
+                                                        <constraint firstItem="sfo-Yw-I0g" firstAttribute="top" secondItem="3Cs-3s-CCg" secondAttribute="top" id="VHF-PX-bed"/>
+                                                        <constraint firstItem="8RN-F1-G0M" firstAttribute="leading" secondItem="S0K-Bu-637" secondAttribute="trailing" constant="15" id="c2w-AI-hFk"/>
+                                                        <constraint firstItem="S0K-Bu-637" firstAttribute="centerY" secondItem="Hlt-a1-Obi" secondAttribute="centerY" id="lLa-YW-blq"/>
+                                                        <constraint firstItem="Hlt-a1-Obi" firstAttribute="leading" secondItem="6dX-9b-w6l" secondAttribute="trailing" constant="15" id="lui-4P-z76"/>
+                                                        <constraint firstItem="93p-eO-r5r" firstAttribute="leading" secondItem="6UY-HP-ApY" secondAttribute="leading" constant="15" id="n1s-K8-fxD"/>
+                                                        <constraint firstItem="6dX-9b-w6l" firstAttribute="leading" secondItem="3Cs-3s-CCg" secondAttribute="leading" id="whO-dQ-M3N"/>
+                                                    </constraints>
+                                                </tableViewCellContentView>
+                                                <connections>
+                                                    <outlet property="btnScanDiscount" destination="ATy-eu-2mi" id="0Cf-UF-gCF"/>
+                                                    <outlet property="editQTY" destination="V3e-A3-y8I" id="FWb-DY-FqR"/>
+                                                    <outlet property="labelDescription" destination="6dX-9b-w6l" id="IFY-dj-vpy"/>
+                                                    <outlet property="labelModel" destination="3Cs-3s-CCg" id="bL7-Bb-deE"/>
+                                                    <outlet property="labelMpack" destination="sfo-Yw-I0g" id="Vmm-hZ-BfX"/>
+                                                    <outlet property="labelNotes" destination="93p-eO-r5r" id="jUe-eq-2M6"/>
+                                                    <outlet property="labelOldPrice" destination="boP-G8-Lp6" id="xzi-lI-1ZK"/>
+                                                    <outlet property="labelSubtotal" destination="8RN-F1-G0M" id="SmT-Mi-C57"/>
+                                                    <outlet property="labelUnitPrice" destination="Hlt-a1-Obi" id="shy-5B-Yxo"/>
+                                                    <outlet property="setpperQTY" destination="S0K-Bu-637" id="lcy-u9-jZk"/>
+                                                </connections>
+                                            </tableViewCell>
+                                            <tableViewCell clipsSubviews="YES" contentMode="scaleToFill" preservesSuperviewLayoutMargins="YES" selectionStyle="default" indentationWidth="10" reuseIdentifier="section_header_cell" rowHeight="50" id="PUX-MI-ptL">
+                                                <rect key="frame" x="0.0" y="316.5" width="810" height="50"/>
+                                                <autoresizingMask key="autoresizingMask"/>
+                                                <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" preservesSuperviewLayoutMargins="YES" insetsLayoutMarginsFromSafeArea="NO" tableViewCell="PUX-MI-ptL" id="eIK-df-kd8">
+                                                    <rect key="frame" x="0.0" y="0.0" width="810" height="50"/>
+                                                    <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
+                                                    <subviews>
+                                                        <label opaque="NO" userInteractionEnabled="NO" tag="8520" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Section" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="YoP-Cy-WJk">
+                                                            <rect key="frame" x="15" y="0.0" width="780" height="50"/>
+                                                            <fontDescription key="fontDescription" type="system" pointSize="21"/>
+                                                            <nil key="textColor"/>
+                                                            <nil key="highlightedColor"/>
+                                                        </label>
+                                                    </subviews>
+                                                    <constraints>
+                                                        <constraint firstAttribute="trailing" secondItem="YoP-Cy-WJk" secondAttribute="trailing" constant="15" id="091-qz-puJ"/>
+                                                        <constraint firstItem="YoP-Cy-WJk" firstAttribute="top" secondItem="eIK-df-kd8" secondAttribute="top" id="Bkd-Pt-YXu"/>
+                                                        <constraint firstAttribute="bottom" secondItem="YoP-Cy-WJk" secondAttribute="bottom" id="Dss-hw-R6w"/>
+                                                        <constraint firstItem="YoP-Cy-WJk" firstAttribute="leading" secondItem="eIK-df-kd8" secondAttribute="leading" constant="15" id="kES-cg-Wfo"/>
+                                                    </constraints>
+                                                </tableViewCellContentView>
+                                                <color key="backgroundColor" red="0.42482998700000002" green="0.29070497229999998" blue="0.040483503669999997" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                <constraints>
+                                                    <constraint firstItem="eIK-df-kd8" firstAttribute="leading" secondItem="PUX-MI-ptL" secondAttribute="leading" id="Nh0-lb-QhW"/>
+                                                    <constraint firstAttribute="bottom" secondItem="eIK-df-kd8" secondAttribute="bottom" id="QHC-gh-Kd2"/>
+                                                    <constraint firstItem="eIK-df-kd8" firstAttribute="top" secondItem="PUX-MI-ptL" secondAttribute="top" id="hUm-Qj-5yG"/>
+                                                    <constraint firstAttribute="trailing" secondItem="eIK-df-kd8" secondAttribute="trailing" id="zWk-kG-1oN"/>
+                                                </constraints>
+                                            </tableViewCell>
+                                        </prototypes>
+                                        <connections>
+                                            <outlet property="dataSource" destination="oRS-pB-8jo" id="h26-eI-fbc"/>
+                                            <outlet property="delegate" destination="oRS-pB-8jo" id="DgS-PD-uqt"/>
+                                        </connections>
+                                    </tableView>
+                                    <label hidden="YES" opaque="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Cannot get data from server.
Tap to try again." textAlignment="center" lineBreakMode="tailTruncation" numberOfLines="2" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Rac-Ya-aVK">
+                                        <rect key="frame" x="284.5" y="435.5" width="241.5" height="45.5"/>
+                                        <fontDescription key="fontDescription" type="system" pointSize="19"/>
+                                        <color key="textColor" red="0.33333333329999998" green="0.33333333329999998" blue="0.33333333329999998" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                        <nil key="highlightedColor"/>
+                                    </label>
+                                </subviews>
+                                <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                <constraints>
+                                    <constraint firstItem="Rac-Ya-aVK" firstAttribute="centerX" secondItem="RmD-zr-fSi" secondAttribute="centerX" id="2f6-mM-5YG"/>
+                                    <constraint firstItem="lpm-Ch-BkE" firstAttribute="centerY" secondItem="RmD-zr-fSi" secondAttribute="centerY" id="7hu-VN-Kwd"/>
+                                    <constraint firstItem="3W5-s1-uRe" firstAttribute="top" secondItem="RmD-zr-fSi" secondAttribute="top" id="Vmk-SF-Qhl"/>
+                                    <constraint firstItem="3W5-s1-uRe" firstAttribute="leading" secondItem="RmD-zr-fSi" secondAttribute="leading" id="ZHp-5v-V7S"/>
+                                    <constraint firstItem="lpm-Ch-BkE" firstAttribute="centerX" secondItem="RmD-zr-fSi" secondAttribute="centerX" id="buh-zJ-yWu"/>
+                                    <constraint firstAttribute="trailing" secondItem="3W5-s1-uRe" secondAttribute="trailing" id="qWD-9t-O8q"/>
+                                    <constraint firstItem="Rac-Ya-aVK" firstAttribute="centerY" secondItem="RmD-zr-fSi" secondAttribute="centerY" id="vvD-Fu-fyy"/>
+                                    <constraint firstAttribute="bottom" secondItem="3W5-s1-uRe" secondAttribute="bottom" id="wwS-rg-Sxa"/>
+                                </constraints>
+                            </view>
+                            <toolbar hidden="YES" opaque="NO" clearsContextBeforeDrawing="NO" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Rxh-S5-42X">
+                                <rect key="frame" x="0.0" y="1036" width="810" height="44"/>
+                                <constraints>
+                                    <constraint firstAttribute="height" constant="44" id="cVA-QF-XVg"/>
+                                </constraints>
+                                <items>
+                                    <barButtonItem title="Select All" id="1Dp-sO-suu">
+                                        <connections>
+                                            <action selector="OnEditSelectClick:" destination="oRS-pB-8jo" id="aR1-hD-nCf"/>
+                                        </connections>
+                                    </barButtonItem>
+                                    <barButtonItem width="42" style="plain" systemItem="fixedSpace" id="ZBW-XP-wIf"/>
+                                    <barButtonItem title="Move To Wish List" id="kpx-Gm-qig">
+                                        <connections>
+                                            <action selector="onEditAddWishClick:" destination="oRS-pB-8jo" id="p51-v9-QIr"/>
+                                        </connections>
+                                    </barButtonItem>
+                                    <barButtonItem width="42" style="plain" systemItem="fixedSpace" id="xxz-nF-LoK"/>
+                                    <barButtonItem title="Delete" id="XVs-gw-r3X">
+                                        <connections>
+                                            <action selector="onEditDelClick:" destination="oRS-pB-8jo" id="CY6-6x-6Or"/>
+                                        </connections>
+                                    </barButtonItem>
+                                    <barButtonItem style="plain" systemItem="flexibleSpace" id="iuu-yW-hGc"/>
+                                    <barButtonItem title="End Edit" id="m1v-Dw-xPT">
+                                        <connections>
+                                            <action selector="onEndEditClick:" destination="oRS-pB-8jo" id="Jec-QS-kEl"/>
+                                        </connections>
+                                    </barButtonItem>
+                                </items>
+                            </toolbar>
+                            <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="G78-MN-iaL">
+                                <rect key="frame" x="0.0" y="956" width="810" height="124"/>
+                                <subviews>
+                                    <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Total QTY:" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="DdS-4S-1zx" userLabel="total price">
+                                        <rect key="frame" x="375.5" y="6" width="74.5" height="20"/>
+                                        <constraints>
+                                            <constraint firstAttribute="height" constant="20" id="eFU-xu-5Ku"/>
+                                        </constraints>
+                                        <fontDescription key="fontDescription" type="system" pointSize="16"/>
+                                        <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                        <nil key="highlightedColor"/>
+                                    </label>
+                                    <label hidden="YES" opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" fixedFrame="YES" text="Subtotal Price:" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="lRq-Ow-fEk" userLabel="total price">
+                                        <rect key="frame" x="259" y="65" width="110" height="20"/>
+                                        <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
+                                        <fontDescription key="fontDescription" type="system" pointSize="16"/>
+                                        <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                        <nil key="highlightedColor"/>
+                                    </label>
+                                    <label hidden="YES" opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" fixedFrame="YES" text="" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="eiF-G7-95R" userLabel="val_subtotal">
+                                        <rect key="frame" x="230" y="61" width="124" height="20"/>
+                                        <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
+                                        <fontDescription key="fontDescription" type="system" pointSize="16"/>
+                                        <nil key="textColor"/>
+                                        <nil key="highlightedColor"/>
+                                    </label>
+                                    <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="8gM-ne-ChU" userLabel="val_cuft">
+                                        <rect key="frame" x="671" y="6" width="124" height="20"/>
+                                        <constraints>
+                                            <constraint firstAttribute="height" constant="20" id="5Nx-rU-92d"/>
+                                            <constraint firstAttribute="width" constant="124" id="LBs-do-I4g"/>
+                                        </constraints>
+                                        <fontDescription key="fontDescription" type="system" pointSize="16"/>
+                                        <nil key="highlightedColor"/>
+                                    </label>
+                                    <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="Prh-BQ-CkY" customClass="DefaultImageButton">
+                                        <rect key="frame" x="665" y="84" width="130" height="30"/>
+                                        <constraints>
+                                            <constraint firstAttribute="height" constant="30" id="3Ci-aJ-2hT"/>
+                                            <constraint firstAttribute="width" constant="130" id="ABv-Ui-RXU"/>
+                                        </constraints>
+                                        <state key="normal" title="Place Order" backgroundImage="continue">
+                                            <color key="titleColor" red="0.0" green="0.0" blue="0.0" alpha="0.0" colorSpace="custom" customColorSpace="sRGB"/>
+                                        </state>
+                                        <userDefinedRuntimeAttributes>
+                                            <userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius">
+                                                <integer key="value" value="15"/>
+                                            </userDefinedRuntimeAttribute>
+                                        </userDefinedRuntimeAttributes>
+                                        <connections>
+                                            <action selector="onPlaceOrder:" destination="oRS-pB-8jo" eventType="touchUpInside" id="6MN-HR-RET"/>
+                                        </connections>
+                                    </button>
+                                    <button hidden="YES" opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="3hY-G2-bAt" customClass="DefaultImageButton">
+                                        <rect key="frame" x="615" y="84" width="30" height="30"/>
+                                        <constraints>
+                                            <constraint firstAttribute="height" constant="30" id="8BN-db-j9R"/>
+                                            <constraint firstAttribute="width" constant="30" id="gd5-ss-Lfd"/>
+                                        </constraints>
+                                        <state key="normal" title="Cancel Order" backgroundImage="btn_cancelorder">
+                                            <color key="titleColor" red="0.0" green="0.0" blue="0.0" alpha="0.0" colorSpace="custom" customColorSpace="sRGB"/>
+                                        </state>
+                                        <connections>
+                                            <action selector="OnCancelOrderClicked:" destination="oRS-pB-8jo" eventType="touchUpInside" id="WoB-Fs-XvY"/>
+                                        </connections>
+                                    </button>
+                                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Total CuFt:" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="IpA-sg-I9m">
+                                        <rect key="frame" x="584.5" y="6" width="78.5" height="20"/>
+                                        <fontDescription key="fontDescription" type="system" pointSize="16"/>
+                                        <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                        <nil key="highlightedColor"/>
+                                    </label>
+                                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Total  Items:" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="UVG-on-4aI">
+                                        <rect key="frame" x="362" y="30.5" width="88" height="20"/>
+                                        <constraints>
+                                            <constraint firstAttribute="height" constant="20" id="tXP-jf-Jbq"/>
+                                        </constraints>
+                                        <fontDescription key="fontDescription" type="system" pointSize="16"/>
+                                        <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                        <nil key="highlightedColor"/>
+                                    </label>
+                                    <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="EcM-RL-hry">
+                                        <rect key="frame" x="15" y="84" width="140" height="30"/>
+                                        <constraints>
+                                            <constraint firstAttribute="width" constant="140" id="HV9-Om-2DM"/>
+                                            <constraint firstAttribute="height" constant="30" id="yag-60-1xF"/>
+                                        </constraints>
+                                        <state key="normal" title="Special Instructions"/>
+                                        <connections>
+                                            <action selector="onEditGeneralNotes:" destination="oRS-pB-8jo" eventType="touchUpInside" id="1M2-S8-TH2"/>
+                                        </connections>
+                                    </button>
+                                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="sS1-r0-cLw">
+                                        <rect key="frame" x="458" y="6" width="100" height="20"/>
+                                        <constraints>
+                                            <constraint firstAttribute="height" constant="20" id="QK3-oa-eZO"/>
+                                            <constraint firstAttribute="width" constant="100" id="r2b-D2-1Q0"/>
+                                        </constraints>
+                                        <fontDescription key="fontDescription" type="system" pointSize="16"/>
+                                        <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                        <nil key="highlightedColor"/>
+                                    </label>
+                                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="jbJ-5K-Qgr">
+                                        <rect key="frame" x="155" y="89" width="340" height="20"/>
+                                        <constraints>
+                                            <constraint firstAttribute="height" constant="20" id="2DQ-eN-zoh"/>
+                                        </constraints>
+                                        <fontDescription key="fontDescription" type="system" pointSize="16"/>
+                                        <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                        <nil key="highlightedColor"/>
+                                    </label>
+                                    <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="Fkc-Lk-5jB">
+                                        <rect key="frame" x="15" y="10" width="30" height="30"/>
+                                        <constraints>
+                                            <constraint firstAttribute="height" constant="30" id="BzR-8i-dR2"/>
+                                            <constraint firstAttribute="width" constant="30" id="NLz-kk-iSM"/>
+                                        </constraints>
+                                        <state key="normal" title="Edit"/>
+                                        <userDefinedRuntimeAttributes>
+                                            <userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius">
+                                                <integer key="value" value="15"/>
+                                            </userDefinedRuntimeAttribute>
+                                        </userDefinedRuntimeAttributes>
+                                        <connections>
+                                            <action selector="onEditClick:" destination="oRS-pB-8jo" eventType="touchUpInside" id="MZc-jt-K0w"/>
+                                        </connections>
+                                    </button>
+                                    <button hidden="YES" opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="g1j-nr-vEW">
+                                        <rect key="frame" x="565" y="84" width="30" height="30"/>
+                                        <constraints>
+                                            <constraint firstAttribute="height" constant="30" id="Mnb-qo-2cV"/>
+                                            <constraint firstAttribute="width" constant="30" id="xPm-1Y-ius"/>
+                                        </constraints>
+                                        <state key="normal" backgroundImage="btn_email_order"/>
+                                        <connections>
+                                            <action selector="emailButtonClick:" destination="oRS-pB-8jo" eventType="touchUpInside" id="rLH-tN-CcJ"/>
+                                        </connections>
+                                    </button>
+                                    <button hidden="YES" opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="XBV-xN-bZf">
+                                        <rect key="frame" x="515" y="84" width="30" height="30"/>
+                                        <constraints>
+                                            <constraint firstAttribute="width" constant="30" id="Sh8-0k-Ps7"/>
+                                            <constraint firstAttribute="height" constant="30" id="lju-as-nWm"/>
+                                        </constraints>
+                                        <state key="normal" backgroundImage="btn_print_order"/>
+                                        <connections>
+                                            <action selector="printCartButtonClick:" destination="oRS-pB-8jo" eventType="touchUpInside" id="cpf-MK-TYN"/>
+                                        </connections>
+                                    </button>
+                                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Price Type:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="ubF-HT-6Rg">
+                                        <rect key="frame" x="15" y="5.5" width="85" height="21"/>
+                                        <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                                        <nil key="textColor"/>
+                                        <nil key="highlightedColor"/>
+                                    </label>
+                                    <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="0i6-zY-RD3">
+                                        <rect key="frame" x="110" y="1" width="100" height="30"/>
+                                        <constraints>
+                                            <constraint firstAttribute="width" constant="100" id="zeS-YR-DtO"/>
+                                        </constraints>
+                                        <state key="normal" title="WHSE"/>
+                                        <userDefinedRuntimeAttributes>
+                                            <userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius">
+                                                <integer key="value" value="15"/>
+                                            </userDefinedRuntimeAttribute>
+                                        </userDefinedRuntimeAttributes>
+                                        <connections>
+                                            <action selector="onChangePrice:" destination="oRS-pB-8jo" eventType="touchUpInside" id="JO7-64-TIF"/>
+                                        </connections>
+                                    </button>
+                                    <button hidden="YES" opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="MkS-tT-MEd">
+                                        <rect key="frame" x="504.5" y="80.5" width="140.5" height="34.5"/>
+                                        <state key="normal" title="Button"/>
+                                        <buttonConfiguration key="configuration" style="tinted" title="Customer Type"/>
+                                        <connections>
+                                            <action selector="onScanChangeCustomerType:" destination="oRS-pB-8jo" eventType="touchUpInside" id="bfl-wr-XOX"/>
+                                        </connections>
+                                    </button>
+                                    <label hidden="YES" opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" fixedFrame="YES" text="Surcharge Fee:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="pfb-lq-2lh">
+                                        <rect key="frame" x="219" y="61" width="116" height="21"/>
+                                        <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
+                                        <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                                        <nil key="textColor"/>
+                                        <nil key="highlightedColor"/>
+                                    </label>
+                                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Total Price:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="y4m-c1-DFh">
+                                        <rect key="frame" x="578" y="30" width="85" height="21"/>
+                                        <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                                        <nil key="textColor"/>
+                                        <nil key="highlightedColor"/>
+                                    </label>
+                                    <label hidden="YES" opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" fixedFrame="YES" text="" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Dd5-g0-8Ub" userLabel="val_surcharge">
+                                        <rect key="frame" x="219" y="61" width="158" height="25"/>
+                                        <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
+                                        <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                                        <nil key="textColor"/>
+                                        <nil key="highlightedColor"/>
+                                    </label>
+                                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="DcE-qL-jJq">
+                                        <rect key="frame" x="458" y="30.5" width="100" height="20"/>
+                                        <constraints>
+                                            <constraint firstAttribute="height" constant="20" id="6he-ZG-y1N"/>
+                                            <constraint firstAttribute="width" constant="100" id="oco-zZ-8nm"/>
+                                        </constraints>
+                                        <fontDescription key="fontDescription" type="system" pointSize="16"/>
+                                        <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                        <nil key="highlightedColor"/>
+                                    </label>
+                                    <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="cPY-vO-WZ0">
+                                        <rect key="frame" x="15" y="46" width="149" height="30"/>
+                                        <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                        <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
+                                        <state key="normal" title="Bulk Update Discount"/>
+                                        <connections>
+                                            <action selector="onBulkDiscount:" destination="oRS-pB-8jo" eventType="touchUpInside" id="dcf-oc-bXG"/>
+                                        </connections>
+                                    </button>
+                                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Dx2-do-qf9" userLabel="val_total">
+                                        <rect key="frame" x="671" y="30.5" width="124" height="20"/>
+                                        <constraints>
+                                            <constraint firstAttribute="height" constant="20" id="APX-py-DFH"/>
+                                            <constraint firstAttribute="width" constant="124" id="SOB-al-OHg"/>
+                                        </constraints>
+                                        <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                                        <nil key="textColor"/>
+                                        <nil key="highlightedColor"/>
+                                    </label>
+                                </subviews>
+                                <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                <constraints>
+                                    <constraint firstItem="Dx2-do-qf9" firstAttribute="trailing" secondItem="8gM-ne-ChU" secondAttribute="trailing" id="08O-Yo-RZE"/>
+                                    <constraint firstAttribute="bottom" secondItem="MkS-tT-MEd" secondAttribute="bottom" constant="9" id="0NU-Hk-RyZ"/>
+                                    <constraint firstAttribute="trailing" secondItem="Prh-BQ-CkY" secondAttribute="trailing" constant="15" id="0by-01-SwR"/>
+                                    <constraint firstItem="3hY-G2-bAt" firstAttribute="leading" secondItem="g1j-nr-vEW" secondAttribute="trailing" constant="20" id="1Fc-Xk-22e"/>
+                                    <constraint firstItem="Prh-BQ-CkY" firstAttribute="leading" secondItem="MkS-tT-MEd" secondAttribute="trailing" constant="20" id="2Ei-HL-QLf"/>
+                                    <constraint firstAttribute="bottom" secondItem="EcM-RL-hry" secondAttribute="bottom" constant="10" id="2Z3-SC-CW7"/>
+                                    <constraint firstItem="cPY-vO-WZ0" firstAttribute="top" secondItem="Fkc-Lk-5jB" secondAttribute="bottom" constant="6" id="39l-Lx-DdN"/>
+                                    <constraint firstAttribute="height" constant="124" id="Adt-4W-5pA"/>
+                                    <constraint firstItem="3hY-G2-bAt" firstAttribute="bottom" secondItem="XBV-xN-bZf" secondAttribute="bottom" id="FJg-9B-RhK"/>
+                                    <constraint firstItem="y4m-c1-DFh" firstAttribute="leading" secondItem="DcE-qL-jJq" secondAttribute="trailing" constant="20" id="Fv6-oP-dvy"/>
+                                    <constraint firstItem="Prh-BQ-CkY" firstAttribute="leading" secondItem="3hY-G2-bAt" secondAttribute="trailing" constant="20" id="JNx-Ee-BQv"/>
+                                    <constraint firstItem="XBV-xN-bZf" firstAttribute="leading" secondItem="jbJ-5K-Qgr" secondAttribute="trailing" constant="20" id="Jh4-cl-d5N"/>
+                                    <constraint firstItem="IpA-sg-I9m" firstAttribute="centerY" secondItem="sS1-r0-cLw" secondAttribute="centerY" id="LdZ-ad-eXE"/>
+                                    <constraint firstItem="g1j-nr-vEW" firstAttribute="leading" secondItem="XBV-xN-bZf" secondAttribute="trailing" constant="20" id="MD2-e8-SCH"/>
+                                    <constraint firstItem="Fkc-Lk-5jB" firstAttribute="leading" secondItem="G78-MN-iaL" secondAttribute="leading" constant="15" id="MEJ-ty-xl7"/>
+                                    <constraint firstItem="sS1-r0-cLw" firstAttribute="leading" secondItem="DdS-4S-1zx" secondAttribute="trailing" constant="8" id="NDK-Jt-80j"/>
+                                    <constraint firstItem="Fkc-Lk-5jB" firstAttribute="top" secondItem="G78-MN-iaL" secondAttribute="top" constant="10" id="R0N-8I-YGp"/>
+                                    <constraint firstItem="UVG-on-4aI" firstAttribute="top" secondItem="DdS-4S-1zx" secondAttribute="bottom" constant="4.5" id="R6c-F3-2yS"/>
+                                    <constraint firstItem="EcM-RL-hry" firstAttribute="leading" secondItem="G78-MN-iaL" secondAttribute="leading" constant="15" id="U1h-9m-98l"/>
+                                    <constraint firstItem="DdS-4S-1zx" firstAttribute="top" secondItem="G78-MN-iaL" secondAttribute="top" constant="6" id="U5d-cg-ZkS"/>
+                                    <constraint firstItem="8gM-ne-ChU" firstAttribute="centerY" secondItem="DdS-4S-1zx" secondAttribute="centerY" id="VRS-T5-fLs"/>
+                                    <constraint firstAttribute="trailing" secondItem="Dx2-do-qf9" secondAttribute="trailing" constant="15" id="Vy3-wo-mWp"/>
+                                    <constraint firstItem="UVG-on-4aI" firstAttribute="trailing" secondItem="DdS-4S-1zx" secondAttribute="trailing" id="XuP-kL-6zS"/>
+                                    <constraint firstItem="g1j-nr-vEW" firstAttribute="bottom" secondItem="XBV-xN-bZf" secondAttribute="bottom" id="ZAm-rp-exn"/>
+                                    <constraint firstItem="IpA-sg-I9m" firstAttribute="centerY" secondItem="DdS-4S-1zx" secondAttribute="centerY" id="aHz-vB-UrV"/>
+                                    <constraint firstItem="Dx2-do-qf9" firstAttribute="leading" secondItem="y4m-c1-DFh" secondAttribute="trailing" constant="8" symbolic="YES" id="bE6-ie-m0t"/>
+                                    <constraint firstItem="0i6-zY-RD3" firstAttribute="leading" secondItem="ubF-HT-6Rg" secondAttribute="trailing" constant="10" id="cY6-Bd-slj"/>
+                                    <constraint firstAttribute="bottom" secondItem="Prh-BQ-CkY" secondAttribute="bottom" constant="10" id="d7A-oO-Jo6"/>
+                                    <constraint firstItem="ubF-HT-6Rg" firstAttribute="leading" secondItem="EcM-RL-hry" secondAttribute="leading" id="eRY-Ny-QmT"/>
+                                    <constraint firstItem="Prh-BQ-CkY" firstAttribute="bottom" secondItem="XBV-xN-bZf" secondAttribute="bottom" id="eSI-6t-C2i"/>
+                                    <constraint firstItem="DcE-qL-jJq" firstAttribute="trailing" secondItem="sS1-r0-cLw" secondAttribute="trailing" id="hDE-Fq-LAy"/>
+                                    <constraint firstItem="jbJ-5K-Qgr" firstAttribute="firstBaseline" secondItem="EcM-RL-hry" secondAttribute="firstBaseline" id="hvb-Hs-p0i"/>
+                                    <constraint firstItem="y4m-c1-DFh" firstAttribute="centerY" secondItem="DcE-qL-jJq" secondAttribute="centerY" id="nlm-qt-atO"/>
+                                    <constraint firstItem="jbJ-5K-Qgr" firstAttribute="leading" secondItem="EcM-RL-hry" secondAttribute="trailing" id="o2n-hY-mEQ"/>
+                                    <constraint firstItem="0i6-zY-RD3" firstAttribute="centerY" secondItem="ubF-HT-6Rg" secondAttribute="centerY" id="odm-FA-KLw"/>
+                                    <constraint firstItem="EcM-RL-hry" firstAttribute="leading" secondItem="cPY-vO-WZ0" secondAttribute="leading" id="rsP-6m-uiG"/>
+                                    <constraint firstItem="Dx2-do-qf9" firstAttribute="centerY" secondItem="y4m-c1-DFh" secondAttribute="centerY" id="tw4-Wi-3ZY"/>
+                                    <constraint firstItem="8gM-ne-ChU" firstAttribute="leading" secondItem="IpA-sg-I9m" secondAttribute="trailing" constant="8" id="uBl-rg-L3q"/>
+                                    <constraint firstItem="DdS-4S-1zx" firstAttribute="centerY" secondItem="ubF-HT-6Rg" secondAttribute="centerY" id="xuh-fD-gA1"/>
+                                    <constraint firstItem="Dx2-do-qf9" firstAttribute="centerY" secondItem="UVG-on-4aI" secondAttribute="centerY" id="znF-0k-lli"/>
+                                </constraints>
+                            </view>
+                        </subviews>
+                        <viewLayoutGuide key="safeArea" id="Rgg-vQ-7HT"/>
+                        <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                        <constraints>
+                            <constraint firstItem="G78-MN-iaL" firstAttribute="leading" secondItem="Rgg-vQ-7HT" secondAttribute="leading" id="Csg-gU-nMR"/>
+                            <constraint firstItem="Rxh-S5-42X" firstAttribute="trailing" secondItem="Rgg-vQ-7HT" secondAttribute="trailing" id="CzP-Jh-hTJ"/>
+                            <constraint firstItem="G78-MN-iaL" firstAttribute="trailing" secondItem="Rgg-vQ-7HT" secondAttribute="trailing" id="PsF-zy-5j9"/>
+                            <constraint firstItem="RmD-zr-fSi" firstAttribute="top" secondItem="Nru-ZY-H46" secondAttribute="top" constant="40" id="UKn-4r-EAA"/>
+                            <constraint firstAttribute="bottom" secondItem="Rxh-S5-42X" secondAttribute="bottom" id="VEG-dD-rtz"/>
+                            <constraint firstItem="RmD-zr-fSi" firstAttribute="trailing" secondItem="Rgg-vQ-7HT" secondAttribute="trailing" id="dlJ-VB-4yv"/>
+                            <constraint firstAttribute="bottom" secondItem="G78-MN-iaL" secondAttribute="bottom" id="hQL-5t-ea5"/>
+                            <constraint firstItem="G78-MN-iaL" firstAttribute="top" secondItem="RmD-zr-fSi" secondAttribute="bottom" id="i1b-ep-UGk"/>
+                            <constraint firstItem="Rxh-S5-42X" firstAttribute="leading" secondItem="Rgg-vQ-7HT" secondAttribute="leading" id="uIx-NR-Elx"/>
+                            <constraint firstItem="RmD-zr-fSi" firstAttribute="leading" secondItem="Rgg-vQ-7HT" secondAttribute="leading" id="wYp-iY-BFK"/>
+                        </constraints>
+                    </view>
+                    <connections>
+                        <outlet property="btnBulkDiscount" destination="cPY-vO-WZ0" id="dTl-Ta-8AA"/>
+                        <outlet property="btnPrice" destination="0i6-zY-RD3" id="ecM-tU-WKg"/>
+                        <outlet property="btn_addwish" destination="kpx-Gm-qig" id="Ot0-Qi-7Hn"/>
+                        <outlet property="btn_delete" destination="XVs-gw-r3X" id="xv7-gz-evt"/>
+                        <outlet property="btn_edit_select" destination="1Dp-sO-suu" id="piX-OA-FpF"/>
+                        <outlet property="cancelOrderButton" destination="3hY-G2-bAt" id="Ahl-gr-36S"/>
+                        <outlet property="cartItemView" destination="RmD-zr-fSi" id="grc-gh-lJO"/>
+                        <outlet property="editButton" destination="Fkc-Lk-5jB" id="F77-EH-va1"/>
+                        <outlet property="emailButton" destination="g1j-nr-vEW" id="FhI-0v-CCx"/>
+                        <outlet property="itemListTable" destination="3W5-s1-uRe" id="dc7-kL-vlD"/>
+                        <outlet property="labelTotal" destination="eiF-G7-95R" id="ZB7-6l-YLY"/>
+                        <outlet property="labelTotalPrice" destination="Dx2-do-qf9" id="oSu-rJ-PtB"/>
+                        <outlet property="labelTotalSurcharge" destination="Dd5-g0-8Ub" id="Sc1-ba-EIu"/>
+                        <outlet property="labelTotalcuft" destination="IpA-sg-I9m" id="gvT-Bh-Cug"/>
+                        <outlet property="label_cuft" destination="8gM-ne-ChU" id="Ovj-aG-Fj6"/>
+                        <outlet property="label_items" destination="DcE-qL-jJq" id="hBY-Ws-0Sw"/>
+                        <outlet property="label_net_err" destination="Rac-Ya-aVK" id="65D-vu-uGA"/>
+                        <outlet property="label_notes" destination="jbJ-5K-Qgr" id="frI-Qt-0d3"/>
+                        <outlet property="label_qty" destination="sS1-r0-cLw" id="LNQ-CK-pHN"/>
+                        <outlet property="mum" destination="lpm-Ch-BkE" id="vy3-7s-wna"/>
+                        <outlet property="placeOrderButton" destination="Prh-BQ-CkY" id="mzw-sB-X8J"/>
+                        <outlet property="printButton" destination="XBV-xN-bZf" id="2jT-L9-Rmr"/>
+                        <outlet property="toolbar" destination="Rxh-S5-42X" id="QjP-2w-fsT"/>
+                        <outlet property="toolpanel" destination="G78-MN-iaL" id="vRO-fo-YfC"/>
+                        <outlet property="valuecuft" destination="8gM-ne-ChU" id="Oxp-RD-uxc"/>
+                    </connections>
+                </viewController>
+                <placeholder placeholderIdentifier="IBFirstResponder" id="SMC-LY-nXG" userLabel="First Responder" sceneMemberID="firstResponder"/>
+            </objects>
+            <point key="canvasLocation" x="1800" y="609.79699911738749"/>
+        </scene>
+        <!--Scan Search View Controller-->
+        <scene sceneID="BMt-94-Jmb">
+            <objects>
+                <viewController storyboardIdentifier="ScanSearchViewController" useStoryboardIdentifierAsRestorationIdentifier="YES" id="lUM-3R-fk4" customClass="ScanSearchViewController" sceneMemberID="viewController">
+                    <view key="view" contentMode="scaleToFill" id="0fB-og-gMM">
+                        <rect key="frame" x="0.0" y="0.0" width="810" height="1080"/>
+                        <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
+                        <subviews>
+                            <tableView clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="plain" separatorStyle="none" rowHeight="-1" estimatedRowHeight="-1" sectionHeaderHeight="-1" estimatedSectionHeaderHeight="-1" sectionFooterHeight="-1" estimatedSectionFooterHeight="-1" translatesAutoresizingMaskIntoConstraints="NO" id="Zxn-QV-WBs">
+                                <rect key="frame" x="0.0" y="64" width="810" height="1016"/>
+                                <color key="backgroundColor" systemColor="systemBackgroundColor"/>
+                                <prototypes>
+                                    <tableViewCell clipsSubviews="YES" contentMode="scaleToFill" restorationIdentifier="ScanListCell" insetsLayoutMarginsFromSafeArea="NO" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="ScanListCell" rowHeight="166" id="RBD-TT-DqV" customClass="ScanListCell">
+                                        <rect key="frame" x="0.0" y="50.5" width="810" height="166"/>
+                                        <autoresizingMask key="autoresizingMask"/>
+                                        <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="RBD-TT-DqV" translatesAutoresizingMaskIntoConstraints="NO" id="h6v-P5-Y6J">
+                                            <rect key="frame" x="0.0" y="0.0" width="810" height="166"/>
+                                            <subviews>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="252" verticalHuggingPriority="251" text="Model" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="ToU-Mo-Rx3" userLabel="item label">
+                                                    <rect key="frame" x="16" y="13" width="50.5" height="21"/>
+                                                    <fontDescription key="fontDescription" type="boldSystem" pointSize="17"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="252" verticalHuggingPriority="251" textAlignment="natural" lineBreakMode="wordWrap" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="H92-P3-tCf" userLabel="description">
+                                                    <rect key="frame" x="16" y="45.5" width="778" height="56.5"/>
+                                                    <string key="text">line 1
+line 2
+line 3</string>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Port" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="56k-bL-ui2" userLabel="port 0">
+                                                    <rect key="frame" x="189" y="110" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Origin" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Raa-F8-Tim" userLabel="origin 0">
+                                                    <rect key="frame" x="102.5" y="110" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="DDP" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="6Or-u7-4VU" userLabel="price0 0">
+                                                    <rect key="frame" x="275.5" y="110" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Special" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="CZn-lW-zFb" userLabel="price2 0">
+                                                    <rect key="frame" x="448" y="110" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Net Price" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="qux-TP-f6L" userLabel="price3 0">
+                                                    <rect key="frame" x="534.5" y="110" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Unit Price" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="MB0-nt-BnH" userLabel="price1 0">
+                                                    <rect key="frame" x="362" y="110" width="86" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="N/A" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="1dF-TT-gPr" userLabel="price4 0">
+                                                    <rect key="frame" x="621" y="110" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" verticalHuggingPriority="251" text="CuFT" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="rL8-9w-zqg" userLabel="cuft 0">
+                                                    <rect key="frame" x="16" y="110" width="86.5" height="24"/>
+                                                    <constraints>
+                                                        <constraint firstAttribute="height" constant="24" id="u6k-Gf-9GP"/>
+                                                    </constraints>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="123.45" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="P0q-Yt-GXv" userLabel="cuft 1">
+                                                    <rect key="frame" x="16" y="134" width="86.5" height="24"/>
+                                                    <constraints>
+                                                        <constraint firstAttribute="height" relation="greaterThanOrEqual" constant="24" id="U5h-gl-ZBK"/>
+                                                        <constraint firstAttribute="height" constant="24" id="bil-dH-OnK"/>
+                                                    </constraints>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="ABCD" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="qLh-8g-4bz" userLabel="origin 1">
+                                                    <rect key="frame" x="102.5" y="134" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="ABCD" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="TEW-3R-q3j" userLabel="port 1">
+                                                    <rect key="frame" x="189" y="134" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="123.45" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="dPf-p7-b3A" userLabel="price0 1">
+                                                    <rect key="frame" x="275.5" y="134" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="234.56" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="dvh-cr-GdM" userLabel="price1 1">
+                                                    <rect key="frame" x="362" y="134" width="86" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="234.56" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Fgw-LJ-KR5" userLabel="price2 1">
+                                                    <rect key="frame" x="448" y="134" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Now" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="W0g-JU-H8J" userLabel="availble 1">
+                                                    <rect key="frame" x="707.5" y="134" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="234.56" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="tzH-DV-Xdg" userLabel="price4 1">
+                                                    <rect key="frame" x="621" y="134" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="LEh-OL-gzO">
+                                                    <rect key="frame" x="685.5" y="6.5" width="108.5" height="34"/>
+                                                    <constraints>
+                                                        <constraint firstAttribute="height" constant="34" id="THg-oZ-qqR"/>
+                                                        <constraint firstAttribute="width" constant="108.5" id="X0W-EQ-UiB"/>
+                                                    </constraints>
+                                                    <state key="normal" title="Button"/>
+                                                    <buttonConfiguration key="configuration" style="plain" title="Add to cart"/>
+                                                    <connections>
+                                                        <action selector="onAddToCart:" destination="RBD-TT-DqV" eventType="touchUpInside" id="rkh-1Q-1AH"/>
+                                                    </connections>
+                                                </button>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="234.56" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Ua7-Qu-TE2" userLabel="price3 1">
+                                                    <rect key="frame" x="534.5" y="134" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" verticalHuggingPriority="251" text="42.8 x 68.3 x 30.5H" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="CXZ-rU-fI4" userLabel="item label">
+                                                    <rect key="frame" x="76.5" y="14.5" width="500.5" height="18"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                </label>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Stock:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="yG2-aU-fHH">
+                                                    <rect key="frame" x="607" y="13" width="48.5" height="21"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                </label>
+                                                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Qpi-vL-Zo9" userLabel="bottom line">
+                                                    <rect key="frame" x="0.0" y="164" width="810" height="2"/>
+                                                    <color key="backgroundColor" systemColor="systemGrayColor"/>
+                                                    <constraints>
+                                                        <constraint firstAttribute="height" constant="2" id="cgm-ea-XuX"/>
+                                                    </constraints>
+                                                </view>
+                                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Available" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="51Y-wy-2ET" userLabel="availble 0">
+                                                    <rect key="frame" x="707.5" y="110" width="86.5" height="24"/>
+                                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
+                                                    <nil key="textColor"/>
+                                                    <nil key="highlightedColor"/>
+                                                    <userDefinedRuntimeAttributes>
+                                                        <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth">
+                                                            <integer key="value" value="1"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="color" keyPath="layer.borderUIColor">
+                                                            <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                        </userDefinedRuntimeAttribute>
+                                                        <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/>
+                                                    </userDefinedRuntimeAttributes>
+                                                </label>
+                                            </subviews>
+                                            <constraints>
+                                                <constraint firstItem="rL8-9w-zqg" firstAttribute="leading" secondItem="ToU-Mo-Rx3" secondAttribute="leading" id="0Eg-8G-CwM"/>
+                                                <constraint firstItem="dvh-cr-GdM" firstAttribute="top" secondItem="P0q-Yt-GXv" secondAttribute="top" id="0Y4-ez-Yv5"/>
+                                                <constraint firstItem="Raa-F8-Tim" firstAttribute="leading" secondItem="rL8-9w-zqg" secondAttribute="trailing" id="0yz-qa-W3N"/>
+                                                <constraint firstItem="6Or-u7-4VU" firstAttribute="height" secondItem="rL8-9w-zqg" secondAttribute="height" id="2j5-xK-hTt"/>
+                                                <constraint firstAttribute="bottom" secondItem="W0g-JU-H8J" secondAttribute="bottom" constant="8" id="3gf-R6-rDT"/>
+                                                <constraint firstItem="51Y-wy-2ET" firstAttribute="height" secondItem="rL8-9w-zqg" secondAttribute="height" id="47y-9B-Agq"/>
+                                                <constraint firstItem="1dF-TT-gPr" firstAttribute="centerY" secondItem="rL8-9w-zqg" secondAttribute="centerY" id="4qA-ca-B7G"/>
+                                                <constraint firstItem="dPf-p7-b3A" firstAttribute="top" secondItem="P0q-Yt-GXv" secondAttribute="top" id="56B-OM-0Va"/>
+                                                <constraint firstItem="LEh-OL-gzO" firstAttribute="leading" secondItem="yG2-aU-fHH" secondAttribute="trailing" constant="30" id="5Nb-dd-2lu"/>
+                                                <constraint firstItem="tzH-DV-Xdg" firstAttribute="width" secondItem="P0q-Yt-GXv" secondAttribute="width" id="71G-bk-FC5"/>
+                                                <constraint firstItem="tzH-DV-Xdg" firstAttribute="leading" secondItem="Ua7-Qu-TE2" secondAttribute="trailing" id="7tj-JA-iod"/>
+                                                <constraint firstItem="dPf-p7-b3A" firstAttribute="leading" secondItem="TEW-3R-q3j" secondAttribute="trailing" id="83R-5x-6dD"/>
+                                                <constraint firstItem="LEh-OL-gzO" firstAttribute="centerY" secondItem="yG2-aU-fHH" secondAttribute="centerY" id="8OT-bM-Vzv"/>
+                                                <constraint firstItem="MB0-nt-BnH" firstAttribute="leading" secondItem="6Or-u7-4VU" secondAttribute="trailing" id="8gj-lP-RRH"/>
+                                                <constraint firstItem="Ua7-Qu-TE2" firstAttribute="width" secondItem="P0q-Yt-GXv" secondAttribute="width" id="A9e-Ig-BKf"/>
+                                                <constraint firstItem="W0g-JU-H8J" firstAttribute="top" secondItem="P0q-Yt-GXv" secondAttribute="top" id="AgZ-NT-RlH"/>
+                                                <constraint firstItem="W0g-JU-H8J" firstAttribute="height" secondItem="P0q-Yt-GXv" secondAttribute="height" id="B3C-K6-RX7"/>
+                                                <constraint firstItem="Fgw-LJ-KR5" firstAttribute="leading" secondItem="dvh-cr-GdM" secondAttribute="trailing" id="C7O-Mr-ykC"/>
+                                                <constraint firstItem="MB0-nt-BnH" firstAttribute="height" secondItem="rL8-9w-zqg" secondAttribute="height" id="Cod-eG-vaK"/>
+                                                <constraint firstItem="CZn-lW-zFb" firstAttribute="centerY" secondItem="rL8-9w-zqg" secondAttribute="centerY" id="DGn-BE-YVL"/>
+                                                <constraint firstItem="56k-bL-ui2" firstAttribute="top" secondItem="H92-P3-tCf" secondAttribute="bottom" constant="8" id="DZi-NE-yda"/>
+                                                <constraint firstItem="Raa-F8-Tim" firstAttribute="centerY" secondItem="rL8-9w-zqg" secondAttribute="centerY" id="Dvz-DX-hzb"/>
+                                                <constraint firstItem="TEW-3R-q3j" firstAttribute="leading" secondItem="qLh-8g-4bz" secondAttribute="trailing" id="E6P-UU-Gab"/>
+                                                <constraint firstItem="6Or-u7-4VU" firstAttribute="leading" secondItem="56k-bL-ui2" secondAttribute="trailing" id="F3e-Ny-CuS"/>
+                                                <constraint firstItem="51Y-wy-2ET" firstAttribute="centerY" secondItem="rL8-9w-zqg" secondAttribute="centerY" id="FIH-2I-Es7"/>
+                                                <constraint firstAttribute="trailing" secondItem="LEh-OL-gzO" secondAttribute="trailing" constant="16" id="HfR-Cw-wP1"/>
+                                                <constraint firstItem="TEW-3R-q3j" firstAttribute="top" secondItem="P0q-Yt-GXv" secondAttribute="top" id="IDk-xT-nod"/>
+                                                <constraint firstItem="Ua7-Qu-TE2" firstAttribute="height" secondItem="P0q-Yt-GXv" secondAttribute="height" id="JUq-4I-DCn"/>
+                                                <constraint firstAttribute="bottom" secondItem="Qpi-vL-Zo9" secondAttribute="bottom" id="Jg4-ge-Odt"/>
+                                                <constraint firstItem="qux-TP-f6L" firstAttribute="centerY" secondItem="rL8-9w-zqg" secondAttribute="centerY" id="K0k-Lg-qaO"/>
+                                                <constraint firstItem="qux-TP-f6L" firstAttribute="width" secondItem="rL8-9w-zqg" secondAttribute="width" id="KBF-iC-HgH"/>
+                                                <constraint firstItem="CZn-lW-zFb" firstAttribute="width" secondItem="rL8-9w-zqg" secondAttribute="width" id="KHX-G1-Xk9"/>
+                                                <constraint firstItem="dvh-cr-GdM" firstAttribute="height" secondItem="P0q-Yt-GXv" secondAttribute="height" id="MXn-o5-K99"/>
+                                                <constraint firstItem="qLh-8g-4bz" firstAttribute="width" secondItem="P0q-Yt-GXv" secondAttribute="width" id="NDd-0W-VwO"/>
+                                                <constraint firstItem="CXZ-rU-fI4" firstAttribute="centerY" secondItem="ToU-Mo-Rx3" secondAttribute="centerY" id="P1J-ap-Uu3"/>
+                                                <constraint firstItem="LEh-OL-gzO" firstAttribute="trailing" secondItem="H92-P3-tCf" secondAttribute="trailing" id="Pw3-x1-Dk2"/>
+                                                <constraint firstItem="Ua7-Qu-TE2" firstAttribute="leading" secondItem="Fgw-LJ-KR5" secondAttribute="trailing" id="Qqx-oE-AZR"/>
+                                                <constraint firstItem="MB0-nt-BnH" firstAttribute="width" secondItem="rL8-9w-zqg" secondAttribute="width" id="RPU-Cm-wgK"/>
+                                                <constraint firstItem="qLh-8g-4bz" firstAttribute="height" secondItem="P0q-Yt-GXv" secondAttribute="height" id="RTS-bb-hpn"/>
+                                                <constraint firstItem="56k-bL-ui2" firstAttribute="width" secondItem="rL8-9w-zqg" secondAttribute="width" id="RxQ-cL-8X0"/>
+                                                <constraint firstItem="P0q-Yt-GXv" firstAttribute="top" secondItem="rL8-9w-zqg" secondAttribute="bottom" id="SMS-0E-NZU"/>
+                                                <constraint firstItem="Fgw-LJ-KR5" firstAttribute="top" secondItem="P0q-Yt-GXv" secondAttribute="top" id="T4c-AL-El7"/>
+                                                <constraint firstItem="qLh-8g-4bz" firstAttribute="leading" secondItem="P0q-Yt-GXv" secondAttribute="trailing" id="TJl-9o-SEn"/>
+                                                <constraint firstItem="Qpi-vL-Zo9" firstAttribute="leading" secondItem="h6v-P5-Y6J" secondAttribute="leading" id="UJk-sg-ofv"/>
+                                                <constraint firstItem="P0q-Yt-GXv" firstAttribute="leading" secondItem="rL8-9w-zqg" secondAttribute="leading" id="UWC-z1-Ln9"/>
+                                                <constraint firstItem="51Y-wy-2ET" firstAttribute="width" secondItem="rL8-9w-zqg" secondAttribute="width" id="VY5-j0-3Gd"/>
+                                                <constraint firstItem="CZn-lW-zFb" firstAttribute="height" secondItem="rL8-9w-zqg" secondAttribute="height" id="Vrp-1L-mgj"/>
+                                                <constraint firstItem="56k-bL-ui2" firstAttribute="height" secondItem="rL8-9w-zqg" secondAttribute="height" id="VvH-Ts-8Ws"/>
+                                                <constraint firstItem="yG2-aU-fHH" firstAttribute="leading" secondItem="CXZ-rU-fI4" secondAttribute="trailing" constant="30" id="XOs-n1-ApE"/>
+                                                <constraint firstItem="MB0-nt-BnH" firstAttribute="centerY" secondItem="rL8-9w-zqg" secondAttribute="centerY" id="XsH-re-zVi"/>
+                                                <constraint firstItem="TEW-3R-q3j" firstAttribute="height" secondItem="P0q-Yt-GXv" secondAttribute="height" id="YqC-Dt-t0c"/>
+                                                <constraint firstItem="Raa-F8-Tim" firstAttribute="width" secondItem="rL8-9w-zqg" secondAttribute="width" id="YuQ-r3-y0u"/>
+                                                <constraint firstItem="qLh-8g-4bz" firstAttribute="top" secondItem="P0q-Yt-GXv" secondAttribute="top" id="Z3D-B5-faG"/>
+                                                <constraint firstItem="W0g-JU-H8J" firstAttribute="width" secondItem="P0q-Yt-GXv" secondAttribute="width" id="a7h-hW-sLh"/>
+                                                <constraint firstItem="6Or-u7-4VU" firstAttribute="width" secondItem="rL8-9w-zqg" secondAttribute="width" id="aCz-bM-56r"/>
+                                                <constraint firstItem="ToU-Mo-Rx3" firstAttribute="top" secondItem="h6v-P5-Y6J" secondAttribute="top" constant="13" id="b8M-cn-QtL"/>
+                                                <constraint firstItem="Raa-F8-Tim" firstAttribute="height" secondItem="rL8-9w-zqg" secondAttribute="height" id="bjP-Lj-nA6"/>
+                                                <constraint firstItem="CZn-lW-zFb" firstAttribute="leading" secondItem="MB0-nt-BnH" secondAttribute="trailing" id="bkn-ff-dNy"/>
+                                                <constraint firstItem="51Y-wy-2ET" firstAttribute="leading" secondItem="1dF-TT-gPr" secondAttribute="trailing" id="cDk-Pq-hl3"/>
+                                                <constraint firstItem="Ua7-Qu-TE2" firstAttribute="top" secondItem="P0q-Yt-GXv" secondAttribute="top" id="cF0-l1-1TG"/>
+                                                <constraint firstItem="6Or-u7-4VU" firstAttribute="centerY" secondItem="rL8-9w-zqg" secondAttribute="centerY" id="eRm-dB-In8"/>
+                                                <constraint firstItem="H92-P3-tCf" firstAttribute="top" secondItem="LEh-OL-gzO" secondAttribute="bottom" constant="5" id="euM-1a-bUh"/>
+                                                <constraint firstItem="Fgw-LJ-KR5" firstAttribute="height" secondItem="P0q-Yt-GXv" secondAttribute="height" id="fb2-hx-RoW"/>
+                                                <constraint firstItem="tzH-DV-Xdg" firstAttribute="top" secondItem="P0q-Yt-GXv" secondAttribute="top" id="g3E-9c-Cmn"/>
+                                                <constraint firstItem="dPf-p7-b3A" firstAttribute="width" secondItem="P0q-Yt-GXv" secondAttribute="width" id="gko-un-oWF"/>
+                                                <constraint firstItem="tzH-DV-Xdg" firstAttribute="height" secondItem="P0q-Yt-GXv" secondAttribute="height" id="hQx-mr-1qa"/>
+                                                <constraint firstItem="H92-P3-tCf" firstAttribute="leading" secondItem="ToU-Mo-Rx3" secondAttribute="leading" id="hSy-MA-lRZ"/>
+                                                <constraint firstItem="1dF-TT-gPr" firstAttribute="leading" secondItem="qux-TP-f6L" secondAttribute="trailing" id="hkT-ji-aFg"/>
+                                                <constraint firstAttribute="trailing" secondItem="Qpi-vL-Zo9" secondAttribute="trailing" id="i8c-Yg-Qyb"/>
+                                                <constraint firstItem="dPf-p7-b3A" firstAttribute="height" secondItem="P0q-Yt-GXv" secondAttribute="height" id="iJg-7n-INN"/>
+                                                <constraint firstItem="56k-bL-ui2" firstAttribute="leading" secondItem="Raa-F8-Tim" secondAttribute="trailing" id="ikf-1J-Hsd"/>
+                                                <constraint firstItem="1dF-TT-gPr" firstAttribute="width" secondItem="rL8-9w-zqg" secondAttribute="width" id="jbq-C9-3Tw"/>
+                                                <constraint firstItem="ToU-Mo-Rx3" firstAttribute="leading" secondItem="h6v-P5-Y6J" secondAttribute="leading" constant="16" id="kXQ-AV-Tkp"/>
+                                                <constraint firstItem="W0g-JU-H8J" firstAttribute="leading" secondItem="tzH-DV-Xdg" secondAttribute="trailing" id="l3V-KF-TkK"/>
+                                                <constraint firstItem="Fgw-LJ-KR5" firstAttribute="width" secondItem="P0q-Yt-GXv" secondAttribute="width" id="lxe-GL-98Z"/>
+                                                <constraint firstItem="qux-TP-f6L" firstAttribute="height" secondItem="rL8-9w-zqg" secondAttribute="height" id="nDc-Jf-TfN"/>
+                                                <constraint firstItem="51Y-wy-2ET" firstAttribute="width" secondItem="P0q-Yt-GXv" secondAttribute="width" id="qTj-rg-CyA"/>
+                                                <constraint firstItem="56k-bL-ui2" firstAttribute="centerY" secondItem="rL8-9w-zqg" secondAttribute="centerY" id="qXl-33-iOh"/>
+                                                <constraint firstItem="dvh-cr-GdM" firstAttribute="leading" secondItem="dPf-p7-b3A" secondAttribute="trailing" id="rWo-Lx-ZIP"/>
+                                                <constraint firstItem="W0g-JU-H8J" firstAttribute="trailing" secondItem="51Y-wy-2ET" secondAttribute="trailing" id="syA-Ob-zLC"/>
+                                                <constraint firstItem="LEh-OL-gzO" firstAttribute="centerY" secondItem="ToU-Mo-Rx3" secondAttribute="centerY" id="uXH-JK-tUT"/>
+                                                <constraint firstItem="TEW-3R-q3j" firstAttribute="width" secondItem="P0q-Yt-GXv" secondAttribute="width" id="v1T-1w-70V"/>
+                                                <constraint firstItem="dvh-cr-GdM" firstAttribute="width" secondItem="P0q-Yt-GXv" secondAttribute="width" id="vpT-yK-eRT"/>
+                                                <constraint firstItem="LEh-OL-gzO" firstAttribute="trailing" secondItem="51Y-wy-2ET" secondAttribute="trailing" id="vtC-RL-aNd"/>
+                                                <constraint firstItem="qux-TP-f6L" firstAttribute="leading" secondItem="CZn-lW-zFb" secondAttribute="trailing" id="vxv-vd-l8B"/>
+                                                <constraint firstItem="1dF-TT-gPr" firstAttribute="height" secondItem="rL8-9w-zqg" secondAttribute="height" id="wsW-2B-9nT"/>
+                                                <constraint firstItem="CXZ-rU-fI4" firstAttribute="leading" secondItem="ToU-Mo-Rx3" secondAttribute="trailing" constant="10" id="xBH-HB-4VK"/>
+                                            </constraints>
+                                        </tableViewCellContentView>
+                                        <constraints>
+                                            <constraint firstItem="h6v-P5-Y6J" firstAttribute="leading" secondItem="RBD-TT-DqV" secondAttribute="leading" id="7nR-WY-aaD"/>
+                                            <constraint firstItem="h6v-P5-Y6J" firstAttribute="top" secondItem="RBD-TT-DqV" secondAttribute="top" id="MBy-89-eGL"/>
+                                            <constraint firstAttribute="trailing" secondItem="h6v-P5-Y6J" secondAttribute="trailing" id="ZqG-Al-qyp"/>
+                                            <constraint firstAttribute="bottom" secondItem="h6v-P5-Y6J" secondAttribute="bottom" id="kxl-8Q-8FR"/>
+                                        </constraints>
+                                        <connections>
+                                            <outlet property="labelAvailable" destination="W0g-JU-H8J" id="Wyr-yH-k7y"/>
+                                            <outlet property="labelCuft" destination="P0q-Yt-GXv" id="91a-pC-ldO"/>
+                                            <outlet property="labelDescription" destination="H92-P3-tCf" id="y8Y-Nd-qF3"/>
+                                            <outlet property="labelDimension" destination="CXZ-rU-fI4" id="8jf-KN-H7H"/>
+                                            <outlet property="labelModel" destination="ToU-Mo-Rx3" id="DrI-ba-gvb"/>
+                                            <outlet property="labelOrigin" destination="qLh-8g-4bz" id="EtH-bo-O7j"/>
+                                            <outlet property="labelPort" destination="TEW-3R-q3j" id="ts5-u7-rGb"/>
+                                            <outlet property="labelPrice0" destination="6Or-u7-4VU" id="C3K-Ca-sM7"/>
+                                            <outlet property="labelPrice1" destination="MB0-nt-BnH" id="L2q-Et-XGK"/>
+                                            <outlet property="labelPrice2" destination="CZn-lW-zFb" id="QRy-G3-hY5"/>
+                                            <outlet property="labelPrice3" destination="qux-TP-f6L" id="TNX-DN-ZDt"/>
+                                            <outlet property="labelPrice4" destination="1dF-TT-gPr" id="kzx-tO-5WZ"/>
+                                            <outlet property="labelPriceCTNR" destination="dPf-p7-b3A" id="gw6-pI-QFm"/>
+                                            <outlet property="labelPriceDisplay1" destination="Ua7-Qu-TE2" id="3aE-lD-fYf"/>
+                                            <outlet property="labelPriceDisplay2" destination="tzH-DV-Xdg" id="qZq-vD-0Wm"/>
+                                            <outlet property="labelPriceNCA" destination="dvh-cr-GdM" id="jEe-lE-SjP"/>
+                                            <outlet property="labelPriceSpecial" destination="Fgw-LJ-KR5" id="x2v-ab-5WD"/>
+                                            <outlet property="labelStock" destination="yG2-aU-fHH" id="zrg-82-hkh"/>
+                                        </connections>
+                                    </tableViewCell>
+                                </prototypes>
+                                <connections>
+                                    <outlet property="dataSource" destination="lUM-3R-fk4" id="SeB-wE-d8I"/>
+                                    <outlet property="delegate" destination="lUM-3R-fk4" id="5Hl-c5-5St"/>
+                                </connections>
+                            </tableView>
+                            <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="6GX-om-hTb" userLabel="searchbar">
+                                <rect key="frame" x="0.0" y="20" width="810" height="44"/>
+                                <subviews>
+                                    <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="4ma-Om-aYp">
+                                        <rect key="frame" x="0.0" y="4.5" width="146" height="35"/>
+                                        <state key="normal" title="Button"/>
+                                        <buttonConfiguration key="configuration" style="plain" title="Sync Availability"/>
+                                        <connections>
+                                            <action selector="onUpdateStock:" destination="lUM-3R-fk4" eventType="touchUpInside" id="DME-yR-0QG"/>
+                                            <action selector="onUpdateStock:" destination="p2v-UD-wPL" eventType="touchUpInside" id="cns-jN-A3D"/>
+                                        </connections>
+                                    </button>
+                                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Last Update Unknown" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="k4X-6G-CnI">
+                                        <rect key="frame" x="176" y="11.5" width="169" height="21"/>
+                                        <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                                        <nil key="textColor"/>
+                                        <nil key="highlightedColor"/>
+                                    </label>
+                                    <searchBar contentMode="redraw" searchBarStyle="minimal" placeholder="Enter keyword" translatesAutoresizingMaskIntoConstraints="NO" id="XiM-yi-Oqa">
+                                        <rect key="frame" x="555" y="0.0" width="240" height="44"/>
+                                        <constraints>
+                                            <constraint firstAttribute="width" constant="240" id="6hL-oJ-3XL"/>
+                                            <constraint firstAttribute="height" constant="44" id="EnJ-0T-fkB"/>
+                                        </constraints>
+                                        <textInputTraits key="textInputTraits"/>
+                                        <connections>
+                                            <outlet property="delegate" destination="lUM-3R-fk4" id="yNI-Ub-tGq"/>
+                                        </connections>
+                                    </searchBar>
+                                </subviews>
+                                <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                <constraints>
+                                    <constraint firstItem="k4X-6G-CnI" firstAttribute="leading" secondItem="4ma-Om-aYp" secondAttribute="trailing" constant="30" id="7N4-FO-rVO"/>
+                                    <constraint firstAttribute="height" constant="44" id="Jsa-vZ-v8r"/>
+                                    <constraint firstAttribute="trailing" secondItem="XiM-yi-Oqa" secondAttribute="trailing" constant="15" id="RcI-eJ-h3J"/>
+                                    <constraint firstItem="k4X-6G-CnI" firstAttribute="centerY" secondItem="4ma-Om-aYp" secondAttribute="centerY" id="STh-gi-m0K"/>
+                                    <constraint firstItem="XiM-yi-Oqa" firstAttribute="centerY" secondItem="6GX-om-hTb" secondAttribute="centerY" id="bHO-nA-5Hc"/>
+                                    <constraint firstItem="XiM-yi-Oqa" firstAttribute="centerY" secondItem="4ma-Om-aYp" secondAttribute="centerY" id="oCq-4i-OZP"/>
+                                </constraints>
+                            </view>
+                        </subviews>
+                        <viewLayoutGuide key="safeArea" id="Tvp-1a-lIR"/>
+                        <color key="backgroundColor" systemColor="systemBackgroundColor"/>
+                        <constraints>
+                            <constraint firstItem="Tvp-1a-lIR" firstAttribute="bottom" secondItem="Zxn-QV-WBs" secondAttribute="bottom" id="8Bl-lK-rgd"/>
+                            <constraint firstItem="4ma-Om-aYp" firstAttribute="leading" secondItem="Zxn-QV-WBs" secondAttribute="leading" id="T3Z-tw-rVJ"/>
+                            <constraint firstItem="6GX-om-hTb" firstAttribute="leading" secondItem="Tvp-1a-lIR" secondAttribute="leading" id="WAy-la-TKm"/>
+                            <constraint firstItem="Tvp-1a-lIR" firstAttribute="trailing" secondItem="Zxn-QV-WBs" secondAttribute="trailing" id="WF3-hF-mle"/>
+                            <constraint firstItem="Zxn-QV-WBs" firstAttribute="leading" secondItem="Tvp-1a-lIR" secondAttribute="leading" id="afS-hg-asP"/>
+                            <constraint firstItem="Zxn-QV-WBs" firstAttribute="top" secondItem="6GX-om-hTb" secondAttribute="bottom" id="eL1-cg-g69"/>
+                            <constraint firstItem="Tvp-1a-lIR" firstAttribute="trailing" secondItem="6GX-om-hTb" secondAttribute="trailing" id="ild-BP-4V2"/>
+                            <constraint firstItem="6GX-om-hTb" firstAttribute="top" secondItem="Tvp-1a-lIR" secondAttribute="top" id="nfF-ch-ag6"/>
+                        </constraints>
+                    </view>
+                    <connections>
+                        <outlet property="headerView" destination="6GX-om-hTb" id="Iqv-GJ-Dqy"/>
+                        <outlet property="labelStock" destination="k4X-6G-CnI" id="0mp-Kg-0Jg"/>
+                        <outlet property="searchBar" destination="XiM-yi-Oqa" id="NvG-2e-RVh"/>
+                        <outlet property="tableview" destination="Zxn-QV-WBs" id="D9e-aP-h09"/>
+                    </connections>
+                </viewController>
+                <placeholder placeholderIdentifier="IBFirstResponder" id="SgX-3r-9B0" userLabel="First Responder" customClass="UIResponder" sceneMemberID="firstResponder"/>
+            </objects>
+            <point key="canvasLocation" x="-2230" y="768"/>
+        </scene>
+        <!--Setup Server-->
+        <scene sceneID="RBm-Dh-AFt">
+            <objects>
+                <viewController storyboardIdentifier="SetupServerViewController" title="Setup Server" useStoryboardIdentifierAsRestorationIdentifier="YES" id="90X-Sr-PW7" customClass="SetupServerViewController" sceneMemberID="viewController">
+                    <view key="view" contentMode="scaleToFill" id="uQc-Lh-Rs6">
+                        <rect key="frame" x="0.0" y="0.0" width="810" height="1080"/>
+                        <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
+                        <subviews>
+                            <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="server_bg" translatesAutoresizingMaskIntoConstraints="NO" id="Fch-tn-bXo">
+                                <rect key="frame" x="0.0" y="0.0" width="810" height="1080"/>
+                            </imageView>
+                            <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="c9q-te-KHg">
+                                <rect key="frame" x="215" y="400" width="380" height="260"/>
+                                <subviews>
+                                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Homelegance Warehouse Location:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="5Vv-Np-lYi">
+                                        <rect key="frame" x="24" y="16" width="332" height="24"/>
+                                        <fontDescription key="fontDescription" type="boldSystem" pointSize="20"/>
+                                        <nil key="textColor"/>
+                                        <nil key="highlightedColor"/>
+                                    </label>
+                                    <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="pIX-gE-l1R">
+                                        <rect key="frame" x="121.5" y="56" width="137.5" height="34.5"/>
+                                        <state key="normal" title="Button"/>
+                                        <buttonConfiguration key="configuration" style="plain" title="Select a server"/>
+                                        <connections>
+                                            <action selector="onSelectServer:" destination="90X-Sr-PW7" eventType="touchUpInside" id="z7C-c4-hEC"/>
+                                        </connections>
+                                    </button>
+                                    <textField opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" borderStyle="roundedRect" placeholder="Password" textAlignment="natural" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="AcX-Su-5k5">
+                                        <rect key="frame" x="24" y="106.5" width="332" height="34"/>
+                                        <fontDescription key="fontDescription" type="system" pointSize="14"/>
+                                        <textInputTraits key="textInputTraits" secureTextEntry="YES"/>
+                                    </textField>
+                                    <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="cO1-GO-FNL">
+                                        <rect key="frame" x="295" y="156.5" width="61" height="34.5"/>
+                                        <state key="normal" title="Button"/>
+                                        <buttonConfiguration key="configuration" style="plain" title="Save"/>
+                                        <connections>
+                                            <action selector="onSaveClick:" destination="90X-Sr-PW7" eventType="touchUpInside" id="fjn-o6-gyF"/>
+                                        </connections>
+                                    </button>
+                                    <button hidden="YES" opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="ogl-HO-s1X">
+                                        <rect key="frame" x="279.5" y="223" width="76.5" height="34.5"/>
+                                        <state key="normal" title="Button"/>
+                                        <buttonConfiguration key="configuration" style="plain" title="Cancel"/>
+                                        <connections>
+                                            <action selector="onCancelClick:" destination="90X-Sr-PW7" eventType="touchUpInside" id="G4J-VR-nep"/>
+                                        </connections>
+                                    </button>
+                                    <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="j4q-WP-XaC">
+                                        <rect key="frame" x="24" y="156.5" width="114.5" height="34.5"/>
+                                        <state key="normal" title="Button"/>
+                                        <buttonConfiguration key="configuration" style="plain" title="Refresh List"/>
+                                        <connections>
+                                            <action selector="onreloadList:" destination="90X-Sr-PW7" eventType="touchUpInside" id="sqE-Vm-FnM"/>
+                                        </connections>
+                                    </button>
+                                </subviews>
+                                <color key="backgroundColor" systemColor="systemBackgroundColor"/>
+                                <constraints>
+                                    <constraint firstItem="5Vv-Np-lYi" firstAttribute="top" secondItem="c9q-te-KHg" secondAttribute="top" constant="16" id="ARj-my-hwI"/>
+                                    <constraint firstAttribute="height" constant="260" id="BJ3-kB-3bf"/>
+                                    <constraint firstItem="cO1-GO-FNL" firstAttribute="top" secondItem="AcX-Su-5k5" secondAttribute="bottom" constant="16" id="Oh4-1c-KcK"/>
+                                    <constraint firstItem="5Vv-Np-lYi" firstAttribute="centerX" secondItem="c9q-te-KHg" secondAttribute="centerX" id="R1y-Bw-fin"/>
+                                    <constraint firstItem="AcX-Su-5k5" firstAttribute="width" secondItem="5Vv-Np-lYi" secondAttribute="width" id="SC5-oR-IPR"/>
+                                    <constraint firstItem="cO1-GO-FNL" firstAttribute="trailing" secondItem="AcX-Su-5k5" secondAttribute="trailing" id="SXM-gU-yBR"/>
+                                    <constraint firstItem="AcX-Su-5k5" firstAttribute="top" secondItem="pIX-gE-l1R" secondAttribute="bottom" constant="16" id="Xcp-3c-nhg"/>
+                                    <constraint firstItem="cO1-GO-FNL" firstAttribute="centerY" secondItem="j4q-WP-XaC" secondAttribute="centerY" id="XxH-C6-aMa"/>
+                                    <constraint firstItem="pIX-gE-l1R" firstAttribute="top" secondItem="5Vv-Np-lYi" secondAttribute="bottom" constant="16" id="fSK-Dq-0A0"/>
+                                    <constraint firstItem="cO1-GO-FNL" firstAttribute="trailing" secondItem="ogl-HO-s1X" secondAttribute="trailing" id="h2C-fp-AmP"/>
+                                    <constraint firstItem="j4q-WP-XaC" firstAttribute="leading" secondItem="AcX-Su-5k5" secondAttribute="leading" id="iAe-VM-tsW"/>
+                                    <constraint firstItem="ogl-HO-s1X" firstAttribute="top" secondItem="cO1-GO-FNL" secondAttribute="bottom" constant="32" id="ibL-3W-jfL"/>
+                                    <constraint firstAttribute="width" constant="380" id="lEF-5e-SdY"/>
+                                    <constraint firstItem="AcX-Su-5k5" firstAttribute="centerX" secondItem="c9q-te-KHg" secondAttribute="centerX" id="pZ7-1p-8Yu"/>
+                                    <constraint firstItem="pIX-gE-l1R" firstAttribute="centerX" secondItem="c9q-te-KHg" secondAttribute="centerX" id="qrH-gh-mnJ"/>
+                                </constraints>
+                            </view>
+                        </subviews>
+                        <viewLayoutGuide key="safeArea" id="m60-Iy-Zef"/>
+                        <color key="backgroundColor" systemColor="systemBackgroundColor"/>
+                        <constraints>
+                            <constraint firstItem="c9q-te-KHg" firstAttribute="centerX" secondItem="m60-Iy-Zef" secondAttribute="centerX" id="5py-rA-UQR"/>
+                            <constraint firstItem="Fch-tn-bXo" firstAttribute="top" secondItem="uQc-Lh-Rs6" secondAttribute="top" id="SfD-fe-Ur7"/>
+                            <constraint firstItem="c9q-te-KHg" firstAttribute="centerY" secondItem="uQc-Lh-Rs6" secondAttribute="centerY" priority="750" id="dWN-tt-I2P"/>
+                            <constraint firstItem="Fch-tn-bXo" firstAttribute="leading" secondItem="m60-Iy-Zef" secondAttribute="leading" id="ecu-14-4j6"/>
+                            <constraint firstItem="m60-Iy-Zef" firstAttribute="bottom" relation="greaterThanOrEqual" secondItem="c9q-te-KHg" secondAttribute="bottom" constant="420" id="qJH-sf-KLA"/>
+                            <constraint firstAttribute="bottom" secondItem="Fch-tn-bXo" secondAttribute="bottom" id="rSE-qk-tFf"/>
+                            <constraint firstItem="m60-Iy-Zef" firstAttribute="trailing" secondItem="Fch-tn-bXo" secondAttribute="trailing" id="xc6-v5-vy7"/>
+                        </constraints>
+                    </view>
+                    <connections>
+                        <outlet property="btnCancel" destination="ogl-HO-s1X" id="Ms1-qy-7V3"/>
+                        <outlet property="btnSelectServer" destination="pIX-gE-l1R" id="PbD-qc-Ic9"/>
+                        <outlet property="editPassword" destination="AcX-Su-5k5" id="2tu-2E-xen"/>
+                    </connections>
+                </viewController>
+                <placeholder placeholderIdentifier="IBFirstResponder" id="eeH-R3-pfb" userLabel="First Responder" customClass="UIResponder" sceneMemberID="firstResponder"/>
+            </objects>
+            <point key="canvasLocation" x="-1426.6129032258063" y="777.6699029126213"/>
+        </scene>
+        <!--Scan Server List View Controller-->
+        <scene sceneID="4sh-Im-wPt">
+            <objects>
+                <viewController storyboardIdentifier="ScanServerListViewController" useStoryboardIdentifierAsRestorationIdentifier="YES" id="5Xm-sJ-ELC" customClass="ScanServerListViewController" sceneMemberID="viewController">
+                    <view key="view" contentMode="scaleToFill" id="2i6-bB-uDo">
+                        <rect key="frame" x="0.0" y="0.0" width="810" height="1080"/>
+                        <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
+                        <subviews>
+                            <tableView clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="plain" separatorStyle="default" rowHeight="-1" estimatedRowHeight="-1" sectionHeaderHeight="-1" estimatedSectionHeaderHeight="-1" sectionFooterHeight="-1" estimatedSectionFooterHeight="-1" translatesAutoresizingMaskIntoConstraints="NO" id="AOw-ME-gdy">
+                                <rect key="frame" x="0.0" y="20" width="810" height="1060"/>
+                                <color key="backgroundColor" systemColor="systemBackgroundColor"/>
+                                <prototypes>
+                                    <tableViewCell clipsSubviews="YES" contentMode="scaleToFill" insetsLayoutMarginsFromSafeArea="NO" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="cell" id="hO3-NR-b05">
+                                        <rect key="frame" x="0.0" y="50.5" width="810" height="52"/>
+                                        <autoresizingMask key="autoresizingMask"/>
+                                        <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" insetsLayoutMarginsFromSafeArea="NO" tableViewCell="hO3-NR-b05" id="jg4-JD-jFQ">
+                                            <rect key="frame" x="0.0" y="0.0" width="810" height="52"/>
+                                            <autoresizingMask key="autoresizingMask"/>
+                                        </tableViewCellContentView>
+                                    </tableViewCell>
+                                </prototypes>
+                                <connections>
+                                    <outlet property="dataSource" destination="5Xm-sJ-ELC" id="aGz-H2-4l4"/>
+                                    <outlet property="delegate" destination="5Xm-sJ-ELC" id="kc1-7Z-34e"/>
+                                </connections>
+                            </tableView>
+                        </subviews>
+                        <viewLayoutGuide key="safeArea" id="JPn-WP-YuD"/>
+                        <color key="backgroundColor" systemColor="systemBackgroundColor"/>
+                        <constraints>
+                            <constraint firstItem="AOw-ME-gdy" firstAttribute="leading" secondItem="JPn-WP-YuD" secondAttribute="leading" id="Hv8-2s-lzO"/>
+                            <constraint firstItem="JPn-WP-YuD" firstAttribute="bottom" secondItem="AOw-ME-gdy" secondAttribute="bottom" id="f2E-4b-Ds8"/>
+                            <constraint firstItem="AOw-ME-gdy" firstAttribute="top" secondItem="JPn-WP-YuD" secondAttribute="top" id="pN1-dS-LZR"/>
+                            <constraint firstItem="JPn-WP-YuD" firstAttribute="trailing" secondItem="AOw-ME-gdy" secondAttribute="trailing" id="qsG-wx-8MN"/>
+                        </constraints>
+                    </view>
+                </viewController>
+                <placeholder placeholderIdentifier="IBFirstResponder" id="Po2-Ch-srx" userLabel="First Responder" customClass="UIResponder" sceneMemberID="firstResponder"/>
+            </objects>
+            <point key="canvasLocation" x="-2868" y="716"/>
+        </scene>
+        <!--Price Group List View Controller-->
+        <scene sceneID="Oum-wJ-fMD">
+            <objects>
+                <viewController storyboardIdentifier="PriceGroupListViewController" useStoryboardIdentifierAsRestorationIdentifier="YES" id="Q9h-sX-dBy" customClass="PriceGroupListViewController" sceneMemberID="viewController">
+                    <view key="view" contentMode="scaleToFill" id="heg-1s-u69">
+                        <rect key="frame" x="0.0" y="0.0" width="810" height="1080"/>
+                        <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
+                        <subviews>
+                            <tableView clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="plain" separatorStyle="default" rowHeight="-1" estimatedRowHeight="-1" sectionHeaderHeight="-1" estimatedSectionHeaderHeight="-1" sectionFooterHeight="-1" estimatedSectionFooterHeight="-1" translatesAutoresizingMaskIntoConstraints="NO" id="P62-AP-fR0">
+                                <rect key="frame" x="0.0" y="74" width="810" height="1006"/>
+                                <color key="backgroundColor" systemColor="systemBackgroundColor"/>
+                                <prototypes>
+                                    <tableViewCell clipsSubviews="YES" contentMode="scaleToFill" insetsLayoutMarginsFromSafeArea="NO" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="cell" id="k1t-dv-O2g">
+                                        <rect key="frame" x="0.0" y="50.5" width="810" height="52"/>
+                                        <autoresizingMask key="autoresizingMask"/>
+                                        <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" insetsLayoutMarginsFromSafeArea="NO" tableViewCell="k1t-dv-O2g" id="JR5-7G-JCb">
+                                            <rect key="frame" x="0.0" y="0.0" width="810" height="52"/>
+                                            <autoresizingMask key="autoresizingMask"/>
+                                        </tableViewCellContentView>
+                                    </tableViewCell>
+                                </prototypes>
+                                <connections>
+                                    <outlet property="dataSource" destination="Q9h-sX-dBy" id="sHN-iW-vry"/>
+                                    <outlet property="delegate" destination="Q9h-sX-dBy" id="5qJ-6f-qy0"/>
+                                </connections>
+                            </tableView>
+                        </subviews>
+                        <viewLayoutGuide key="safeArea" id="QI8-Ar-oqS"/>
+                        <color key="backgroundColor" systemColor="systemBackgroundColor"/>
+                        <constraints>
+                            <constraint firstItem="P62-AP-fR0" firstAttribute="leading" secondItem="QI8-Ar-oqS" secondAttribute="leading" id="0Wy-zY-psD"/>
+                            <constraint firstItem="QI8-Ar-oqS" firstAttribute="trailing" secondItem="P62-AP-fR0" secondAttribute="trailing" id="R51-2a-S9F"/>
+                            <constraint firstItem="QI8-Ar-oqS" firstAttribute="bottom" secondItem="P62-AP-fR0" secondAttribute="bottom" id="jcD-Db-jtl"/>
+                            <constraint firstItem="P62-AP-fR0" firstAttribute="top" secondItem="QI8-Ar-oqS" secondAttribute="top" id="vX1-Ms-DjO"/>
+                        </constraints>
+                    </view>
+                    <simulatedNavigationBarMetrics key="simulatedTopBarMetrics" prompted="NO"/>
+                </viewController>
+                <placeholder placeholderIdentifier="IBFirstResponder" id="2SL-GM-xSC" userLabel="First Responder" customClass="UIResponder" sceneMemberID="firstResponder"/>
+            </objects>
+            <point key="canvasLocation" x="-3698" y="716"/>
+        </scene>
+    </scenes>
+    <resources>
+        <image name="btn_cancelorder" width="30" height="30"/>
+        <image name="btn_email_order" width="30" height="30"/>
+        <image name="btn_print_order" width="30" height="30"/>
+        <image name="continue" width="130" height="30"/>
+        <image name="notfound_s" width="180" height="180"/>
+        <image name="server_bg" width="1829" height="1372"/>
+        <systemColor name="systemBackgroundColor">
+            <color white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+        </systemColor>
+        <systemColor name="systemGrayColor">
+            <color red="0.5568627451" green="0.5568627451" blue="0.57647058819999997" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+        </systemColor>
+    </resources>
+</document>

+ 1 - 1
RedAnt ERP Mobile/HMLG Scan Order/ScanHistoryViewController.m

@@ -80,7 +80,7 @@
     label.numberOfLines=0;
 
     label.lineBreakMode = NSLineBreakByWordWrapping;
-    double s = label.font.pointSize;
+//    double s = label.font.pointSize;
     
     
 //        NSLog(label.text);

+ 5 - 2
RedAnt ERP Mobile/HMLG Scan Order/ScanListCell.h

@@ -21,8 +21,10 @@ NS_ASSUME_NONNULL_BEGIN
 @property (weak, nonatomic) IBOutlet UILabel *labelPriceCTNR;
 @property (weak, nonatomic) IBOutlet UILabel *labelPriceNCA;
 @property (weak, nonatomic) IBOutlet UILabel *labelPrice25p;
+@property (weak, nonatomic) IBOutlet UILabel *labelPriceSpecial;
 @property (weak, nonatomic) IBOutlet UILabel *labelAvailable;
-@property (weak, nonatomic) IBOutlet UILabel *labelPriceNet;
+@property (weak, nonatomic) IBOutlet UILabel *labelPriceDisplay1;
+@property (weak, nonatomic) IBOutlet UILabel *labelPriceDisplay2;
 
 @property (weak, nonatomic) IBOutlet UILabel *labelStock;
 
@@ -31,8 +33,9 @@ NS_ASSUME_NONNULL_BEGIN
 @property (weak, nonatomic) IBOutlet UILabel *labelPrice1;
 @property (weak, nonatomic) IBOutlet UILabel *labelPrice2;
 @property (weak, nonatomic) IBOutlet UILabel *labelPrice3;
+@property (weak, nonatomic) IBOutlet UILabel *labelPrice4;
+
 
-@property (weak, nonatomic) IBOutlet UILabel *labelPriceSpecial;
 
 @property (strong, nonatomic) NSMutableDictionary *modelJson;
 @end

+ 16 - 3
RedAnt ERP Mobile/HMLG Scan Order/ScanListCell.m

@@ -171,6 +171,8 @@
     self.labelPrice1.text = price_group[@"price_1"][@"display"];//appDelegate.price1_name;
     self.labelPrice2.text = price_group[@"price_2"][@"display"];//appDelegate.price2_name;
     self.labelPrice3.text = price_group[@"price_3"][@"display"];//appDelegate.price3_name;
+    self.labelPrice4.text = price_group[@"price_4"][@"display"];//appDelegate.price4_name;
+    
     //    remove net price
 //    if(price_group[@"price_4"])
 //    {
@@ -318,14 +320,25 @@
    
     
     
-    if([_modelJson[price_group[@"price_3"][@"name"]] isEqualToString:@"N/A"])
+    if([_modelJson[price_group[@"price_3"][@"name"]] isEqualToString:@"N/A"]||_modelJson[price_group[@"price_3"][@"name"]]==nil)
+    {
+        _labelPriceDisplay1.text=@"";//_modelJson[@"price3"];
+//            _labelPriceNCA.text=@"N/A";
+    }
+    else
+    {
+        _labelPriceDisplay1.text=[RAConvertor currencyNumber:[_modelJson[price_group[@"price_3"][@"name"]] floatValue]];
+//            _labelPriceNCA.text=@"N/A";
+    }
+    
+    if([_modelJson[price_group[@"price_4"][@"name"]] isEqualToString:@"N/A"]||_modelJson[price_group[@"price_4"][@"name"]]==nil )
     {
-        _labelPriceNet.text=@"";//_modelJson[@"price3"];
+        _labelPriceDisplay2.text=@"";//_modelJson[@"price3"];
 //            _labelPriceNCA.text=@"N/A";
     }
     else
     {
-        _labelPriceNet.text=[RAConvertor currencyNumber:[_modelJson[price_group[@"price_3"][@"name"]] floatValue]];
+        _labelPriceDisplay2.text=[RAConvertor currencyNumber:[_modelJson[price_group[@"price_4"][@"name"]] floatValue]];
 //            _labelPriceNCA.text=@"N/A";
     }
     

+ 3 - 1
RedAnt ERP Mobile/HMLG Scan Order/ScanModelListCell.h

@@ -23,7 +23,8 @@ NS_ASSUME_NONNULL_BEGIN
 @property (weak, nonatomic) IBOutlet UILabel *labelAvailable;
 @property (weak, nonatomic) IBOutlet UITextField *editQTY;
 @property (strong, nonatomic) NSMutableDictionary *modelJson;
-@property (weak, nonatomic) IBOutlet UILabel *labelPriceNet;
+@property (weak, nonatomic) IBOutlet UILabel *labelPriceDisplay1;
+@property (weak, nonatomic) IBOutlet UILabel *labelPriceDisplay2;
 @property (weak, nonatomic) IBOutlet UILabel *labelPriceSpecial;
 @property (weak, nonatomic) IBOutlet UIStepper *steper;
 @property (weak, nonatomic) IBOutlet UILabel *labelStock;
@@ -33,6 +34,7 @@ NS_ASSUME_NONNULL_BEGIN
 @property (weak, nonatomic) IBOutlet UILabel *labelPrice1;
 @property (weak, nonatomic) IBOutlet UILabel *labelPrice2;
 @property (weak, nonatomic) IBOutlet UILabel *labelPrice3;
+@property (weak, nonatomic) IBOutlet UILabel *labelPrice4;
 @end
 
 NS_ASSUME_NONNULL_END

+ 16 - 3
RedAnt ERP Mobile/HMLG Scan Order/ScanModelListCell.m

@@ -43,6 +43,7 @@
     self.labelPrice1.text = price_group[@"price_1"][@"display"];//appDelegate.price1_name;
     self.labelPrice2.text = price_group[@"price_2"][@"display"];//appDelegate.price2_name;
     self.labelPrice3.text = price_group[@"price_3"][@"display"];//appDelegate.price3_name;
+    self.labelPrice4.text = price_group[@"price_4"][@"display"];//appDelegate.price3_name;
     
     //    remove net price
 //    if(price_group[@"price_4"])
@@ -176,17 +177,29 @@
 //        _labelPriceNet.text=@"";//@"N/A";
 //    }
     
-    if([_modelJson[price_group[@"price_3"][@"name"]] isEqualToString:@"N/A"])
+    if([_modelJson[price_group[@"price_3"][@"name"]] isEqualToString:@"N/A"]||_modelJson[price_group[@"price_3"][@"name"]]==nil)
     {
-        _labelPriceNet.text=@"";//_modelJson[@"price3"];
+        _labelPriceDisplay1.text=@"";//_modelJson[@"price3"];
 //            _labelPriceNCA.text=@"N/A";
     }
     else
     {
-        _labelPriceNet.text=[RAConvertor currencyNumber:[_modelJson[price_group[@"price_3"][@"name"]] floatValue]];
+        _labelPriceDisplay1.text=[RAConvertor currencyNumber:[_modelJson[price_group[@"price_3"][@"name"]] floatValue]];
 //            _labelPriceNCA.text=@"N/A";
     }
         
+    
+    if([_modelJson[price_group[@"price_4"][@"name"]] isEqualToString:@"N/A"]||_modelJson[price_group[@"price_4"][@"name"]]==nil)
+    {
+        _labelPriceDisplay2.text=@"";//_modelJson[@"price3"];
+//            _labelPriceNCA.text=@"N/A";
+    }
+    else
+    {
+        _labelPriceDisplay2.text=[RAConvertor currencyNumber:[_modelJson[price_group[@"price_4"][@"name"]] floatValue]];
+//            _labelPriceNCA.text=@"N/A";
+    }
+    
 //    remove net price
 //    if(price_group[@"price_4"])
 //    {

+ 3 - 3
RedAnt ERP Mobile/HMLG Scan Order/ScanOrderModelListViewController.m

@@ -142,9 +142,9 @@
 
         if(![jitem [@"special_price"] boolValue]&& ![price1 isEqualToString: @"N/A"] && [price1 isEqual:price3])
         {
-            jitem [@"net_price"] = @true;
+//            jitem [@"net_price"] = @true;
             // remove net price
-//            jitem [@"net_price"] = @false;
+            jitem [@"net_price"] = @false;
         }
         
         
@@ -297,7 +297,7 @@
     label.numberOfLines=0;
 
     label.lineBreakMode = NSLineBreakByWordWrapping;
-    double s = label.font.pointSize;
+//    double s = label.font.pointSize;
     
     
 //        NSLog(label.text);

+ 2 - 2
RedAnt ERP Mobile/HMLG Scan Order/ScanSearchViewController.m

@@ -231,7 +231,7 @@
         label.numberOfLines=0;
 
         label.lineBreakMode = NSLineBreakByWordWrapping;
-        double s = label.font.pointSize;
+//        double s = label.font.pointSize;
         
         
 //        NSLog(label.text);
@@ -292,7 +292,7 @@
    
         cell.labelStock.text = [RADataProvider queryStock:cell.labelModel.text];
         
-        cell.labelDescription.frame.size;
+//        cell.labelDescription.frame.size;
     return cell;
     }
 }

+ 17 - 0
RedAnt ERP Mobile/HMLG Scan Order/SceneDelegate.h

@@ -0,0 +1,17 @@
+//
+//  SceneDelegate.h
+//  HMLG Scan Order
+//
+//  Created by Rui Zhang on 11/10/25.
+//  Copyright © 2025 United Software Applications, Inc. All rights reserved.
+//
+
+#import "SceneDelegateBase.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface SceneDelegate : SceneDelegateBase
+
+@end
+
+NS_ASSUME_NONNULL_END

+ 13 - 0
RedAnt ERP Mobile/HMLG Scan Order/SceneDelegate.m

@@ -0,0 +1,13 @@
+//
+//  SceneDelegate.m
+//  HMLG Scan Order
+//
+//  Created by Rui Zhang on 11/10/25.
+//  Copyright © 2025 United Software Applications, Inc. All rights reserved.
+//
+
+#import "SceneDelegate.h"
+
+@implementation SceneDelegate
+
+@end

+ 2 - 2
RedAnt ERP Mobile/HMLG Scan Order/ServerSettingViewController.m

@@ -785,8 +785,8 @@
 }
 
 - (IBAction)onChangePasswordClick:(id)sender {
-    UIApplication * app = [UIApplication sharedApplication];
-    AppDelegate *appDelegate = (AppDelegate *)[app delegate];
+//    UIApplication * app = [UIApplication sharedApplication];
+//    AppDelegate *appDelegate = (AppDelegate *)[app delegate];
     if(RASingleton.sharedInstance.user.length==0)
     {
         [RAUtils message_box:@"Change Password" message:@"You must sign in first." completion:nil];

+ 5 - 1
RedAnt ERP Mobile/HMLG Scan Order/config.h

@@ -28,7 +28,7 @@
 #define flat_price @"MSRP"
 #define given_price @"store price"
 
-#import "RASingleton.h"
+
 
 //离线模式开关
 //#define OFFLINE_MODE
@@ -40,6 +40,10 @@
 //#define URL_SO_ORDER @"scan_order"
 //#define URL_SO_CART @"scan_cart"
 #endif
+
+
+#import "RASingleton.h"
+
 //google analytics 开关
 //#define GOOGLE_ANALYTICS
 //pdf 调试开关

+ 6 - 6
RedAnt ERP Mobile/RedAnt ERP Mobile.xcworkspace/contents.xcworkspacedata

@@ -10,13 +10,13 @@
    <Group
       location = "container:"
       name = "not active">
+      <FileRef
+         location = "group:iSales-UNITED WAVER.xcodeproj">
+      </FileRef>
+      <FileRef
+         location = "group:iSales-TRADESHOW.xcodeproj">
+      </FileRef>
    </Group>
-   <FileRef
-      location = "group:iSales-TRADESHOW.xcodeproj">
-   </FileRef>
-   <FileRef
-      location = "group:iSales-UNITED WAVER.xcodeproj">
-   </FileRef>
    <FileRef
       location = "group:iSales-USAI.xcodeproj">
    </FileRef>

+ 13 - 77
RedAnt ERP Mobile/common/AppDelegateBase.h

@@ -16,23 +16,23 @@
 #import "iSalesDB.h"
 #import "SyncControlPanelViewController.h"
 #import <CoreBluetooth/CoreBluetooth.h>
-
 #ifdef SCANNER_ORDER
     #import "RAUploadManager.h"
 #endif
+
 @protocol ScannerEventsFeedback <NSObject>
 -(void) onDecodedData:(NSString*) value;
 -(void) onErrorInfo:(NSString*) errorInfo;
 -(void) onStatusChanged:(NSString*) status;
 -(void) onLogUpdate;
 -(void) OnUpdateDevicesList;
-//@required
-//-(void) showHidePrice;
 @end
+
 typedef enum {
     CustomerTypeStore     = 0,
     CustomerTypeCustomer  = 1
 } CustomerType;
+
 #ifdef USE_BLE_SCANNER
 @interface AppDelegateBase : UIResponder<UIApplicationDelegate , NSURLConnectionDataDelegate
 ,CBCentralManagerDelegate, CBPeripheralDelegate,NSURLSessionDataDelegate>
@@ -45,14 +45,10 @@ typedef enum {
     ,NSURLSessionDataDelegate>
     #endif
 #endif
-//{
-//        id<ScannerEventsFeedback> _eventsFeedback;
-//}
 
 #ifndef RA_NOTIFICATION
 @property (strong,nonatomic)UIViewController* active_controller;
 #else
-
 -(void)pushFeedback:(id<ScannerEventsFeedback>)feedback;
 -(void)popFeedback:(id<ScannerEventsFeedback>)feedback;
 -(void)setFeedback:(id<ScannerEventsFeedback>)feedback;
@@ -67,9 +63,9 @@ typedef enum {
 #ifdef USE_MFI_SCANNER
     @property (strong, nonatomic) ScanApiHelper* ScanApi;
     - (void)enableScanner:(bool)enable ;
-// scanner test
--(void) test_onDecodedDataResult:(NSString*) value;
+    - (void)test_onDecodedDataResult:(NSString*) value;
 #endif
+
 @property (strong, nonatomic) NSTimer* ScanApiConsumer;
 @property (nonatomic) BOOL doAppDataConfirmation;
 @property (strong, nonatomic) NSString *scanApiVersion;
@@ -77,71 +73,46 @@ typedef enum {
 @property BOOL softScannerEnabled;
 -(void) addlog:(NSString*) newtext;
 @property bool enable_ScannerLog;
-
 @property (strong,nonatomic) NSMutableArray* devices;
-
 @property int api_Status;
 @property (strong, nonatomic) NSString* Status_Text;
 
-
-//-(void) didRotated;
-
-
-
 //offline order
 -(void) backup_oc;
 -(void) restore_oc;
 
-
 @property (strong,nonatomic)NSMutableDictionary* recent_model;
 @property (nonatomic,assign) bool offline_mode;
 @property (strong , nonatomic) NSString* contact_id;
 @property bool bEnable_Cache;
 
-//@property (strong, nonatomic) NSMutableArray* arr_scannerReceiver;
-
+// Window property - 兼容旧接口,实际从 SceneDelegate 获取
 @property (strong, nonatomic) UIWindow *window;
-//@property (strong,nonatomic) NSString* user;
-//@property (strong,nonatomic) NSString * password;
+
 @property (strong,nonatomic) NSString * user_icon;
-//@property (strong,nonatomic) NSString * sessionid;
-//@property (strong,nonatomic) NSString * duid;
 @property bool bLogin;
-
 @property (nonatomic) long user_type;
 @property CustomerType customer_type;
 
-
 @property (strong , nonatomic) NSString* order_customer_id;
-//@property (strong , nonatomic) NSString* contact_name;
 @property (strong,nonatomic)NSDictionary* categoryMenu;
-
-
-
 @property (strong,nonatomic)NSMutableDictionary* customerInfo;
 
-
 @property (strong,nonatomic) NSString* order_code;
 @property  int order_status;
-//@property (strong,nonatomic) NSString* so;
 @property (strong,nonatomic) UIViewController* main_vc;
 
-
 -(void) Logout;
 -(void) SetMode:(NSString*)mode;
 @property (strong,nonatomic) NSString* mode;
 -(void) SetSo:(NSString*)So;
-
 -(void) switchToPreviousVC;
-
 -(void) closeOrder;
 
 @property long wish_count;
 @property long cart_count;
 @property long port_count;
 
-
-
 @property bool can_show_price;
 @property (nonatomic,assign) bool can_see_price;
 @property bool can_create_portfolio;
@@ -157,35 +128,21 @@ typedef enum {
 @property bool alert_sold_in_quantities;
 @property(readonly) bool price_hidden;
 
-
 -(void) set_priceHidden:(bool)price_hidden;
-
 -(void) set_main_button_panel;
-
-//@property bool can_show_price;
-//@property bool can_show_price;
-//@property bool can_show_price;
-
-
-
 -(void) update_count_mark;
+
 // downloader
 -(void) check_offline:(NSString*) ver useInternalAddress:(bool)buseinternaladdress parentvc:(UIViewController*) parent;
-//@property bool disable_trigger;
 
 @property (nonatomic, strong) SyncControlPanelViewController *settingUI;
 @property (nonatomic, strong) NSFileHandle *fileHandle;
-//@property (nonatomic, assign) long long currentLength; //>>写入文件的长度
-//@property (nonatomic, assign) long long fileLength; //>>文件长度
-//@property (nonatomic, strong) NSString *fileName;   //>>文件名
 @property (nonatomic, strong) NSURLConnection *connection;
 
 @property double file_progress;
 @property double overall_progress;
 @property (strong, nonatomic) NSString* downloadlog;
 
-
-
 @property (strong, nonatomic) NSString* vid;
 @property bool downloading;
 -(void) add_downloadlog:(NSString*) newtext;
@@ -193,52 +150,30 @@ typedef enum {
 @property int current_task;
 
 // printer
-
 @property (strong, nonatomic) NSString * printerURL;
 -(void) printPdf:(NSString*) url company:(NSString*)company send_to:(NSString*)send_to soid:(NSString*)soid content:(NSString*)content;
 @property (strong, nonatomic) NSMutableDictionary* OrderFilter;
 
-@property (nonatomic,strong) NSMutableDictionary *urgencyDic;///<程序闪退需要保存的数据
-
+@property (nonatomic,strong) NSMutableDictionary *urgencyDic;
 @property (nonatomic,assign) BOOL can_create_backorder;
 
-//#pragma mark - Global Param Begin
-//
-//- (void)setGlobalParameter:(id)param forKey:(NSString *)key;
-//- (id)globalParameterForKey:(NSString *)key;
-//
-//#pragma mark - Globale Param End
-
 - (void)checkLogin:(BOOL)reloadCurVC;
 
-//- (void)updateScanButton:(BOOL)enable;
-
 @property (strong, nonatomic) NSString* uploadurl;
 @property (strong, nonatomic) NSString* address;
 @property (strong, nonatomic) NSString* downloadurl;
-//#ifdef SCANNER_ORDER
-//
-//#endif
 @property (nonatomic,assign) BOOL compressFile;
 
 #ifdef SCANNER_ORDER
 @property (strong, nonatomic) NSDictionary* scan_model;
 @property (strong, nonatomic) NSArray* scan_model_key;
-//@property (strong, nonatomic) NSString* price0_name;
-//@property (strong, nonatomic) NSString* price1_name;
-//@property (strong, nonatomic) NSString* price2_name;
-//@property (strong, nonatomic) NSString* price3_name;
-@property (strong, nonatomic)  RAUploadManager *uploadManager;
 @property (strong, nonatomic)  NSString *price_group;
-
 @property (strong, nonatomic)  NSArray *available_price_group;
-
 #endif
 
 @property (nonatomic,strong) NSDate *forgroundDate;
 
 #ifdef USE_BLE_SCANNER
-
 @property (nonatomic, strong) CBCentralManager *manager;
 @property (nonatomic, strong) CBPeripheral *peripheral;
 @property (strong ,nonatomic) CBCharacteristic *writeCharacteristic;
@@ -258,14 +193,15 @@ typedef enum {
 -(void) stopScanBLE;
 -(void) disconnectDevice;
 -(void)setBLEAutoReconnect:(bool) bAutoReconnect;
-
-
 -(void) enableBLE:(bool) bEnable;
 #endif
 
-
 #pragma mark newdownload
 @property (strong,nonatomic) NSURLSession *session;
 @property (strong,nonatomic) NSURLSessionDataTask* curr_task;
 -(void)handle_download1:(NSString *)url start:(bool) start type:(NSString*) type taskid:(int)taskidx;
+
+
+
+-(void) download_offline:(bool)start checkdiskspace:(bool)checkdiskspace; // 添加这个方法声明
 @end

+ 57 - 32
RedAnt ERP Mobile/common/AppDelegateBase.m

@@ -71,6 +71,31 @@
 @synthesize ScanApiConsumer;
 @synthesize scanApiVersion;
 @synthesize price_hidden = _price_hidden;
+
+
+#pragma mark - Window Property
+
+// 重写 window 的 getter,从 SceneDelegate 获取
+- (UIWindow *)window {
+    if (@available(iOS 13.0, *)) {
+        // iOS 13+ 从 SceneDelegate 获取 window
+        NSSet *connectedScenes = [UIApplication sharedApplication].connectedScenes;
+        for (UIScene *scene in connectedScenes) {
+            if ([scene isKindOfClass:[UIWindowScene class]]) {
+                UIWindowScene *windowScene = (UIWindowScene *)scene;
+                for (UIWindow *window in windowScene.windows) {
+                    if (window.isKeyWindow) {
+                        return window;
+                    }
+                }
+                // 如果没有 key window,返回第一个 window
+                return windowScene.windows.firstObject;
+            }
+        }
+    }
+    return nil;
+}
+
 #pragma mark - Global Parameter
 
 //- (NSMutableDictionary *)globalParameters {
@@ -1080,16 +1105,16 @@ void UncaughtExceptionHandler(NSException *exception) {
 
 - (void)applicationDidEnterBackground:(UIApplication *)application
 {
-    [self download_offline:false checkdiskspace:false];
-    
-    // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later.
-    // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits.
-#if defined(GOOGLE_ANALYTICS) 
-    NSTimeInterval timing = [[NSDate date] timeIntervalSinceDate:self.forgroundDate];
-    self.forgroundDate = nil;
-
-    [GoogleAnalyst trackTimingWithCategory:@"foreground" interval:timing name:@"user used time" label:nil];
-#endif
+//    [self download_offline:false checkdiskspace:false];
+//    
+//    // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later.
+//    // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits.
+//#if defined(GOOGLE_ANALYTICS) 
+//    NSTimeInterval timing = [[NSDate date] timeIntervalSinceDate:self.forgroundDate];
+//    self.forgroundDate = nil;
+//
+//    [GoogleAnalyst trackTimingWithCategory:@"foreground" interval:timing name:@"user used time" label:nil];
+//#endif
 }
 
 - (void)applicationWillEnterForeground:(UIApplication *)application
@@ -1099,25 +1124,25 @@ void UncaughtExceptionHandler(NSException *exception) {
 
 - (void)applicationDidBecomeActive:(UIApplication *)application
 {
-    if(self.download_task!=nil)
-        [self download_offline:true checkdiskspace:false];
-    // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface.
-    
-    self.forgroundDate = [NSDate date];
-    
-    
-#ifdef SCANNER_ORDER
-    
-    [RAUploadManager configureUploadManager:^(RAUPloadManagerConfigure *configure) {
-       
-        configure.autoRemoveFinish = YES;
-    }];
-    
-    if (!self.uploadManager) {
-        self.uploadManager=[RAUploadManager sharedManager];
-    }
-    
-#endif
+//    if(self.download_task!=nil)
+//        [self download_offline:true checkdiskspace:false];
+//    // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface.
+//    
+//    self.forgroundDate = [NSDate date];
+//    
+//    
+//#ifdef SCANNER_ORDER
+//    
+//    [ RAUploadManager configureUploadManager:^(RAUPloadManagerConfigure *configure) {
+//       
+//        configure.autoRemoveFinish = YES;
+//    }];
+//    
+//    if (!self.uploadManager) {
+//        RASingleton.sharedInstance.uploadManager=[RAUploadManager sharedManager];
+//    }
+//    
+//#endif
 }
 #ifdef SCANNER_ORDER
 -(RAUploadManager *)uploadManager
@@ -1127,10 +1152,10 @@ void UncaughtExceptionHandler(NSException *exception) {
         configure.autoRemoveFinish = YES;
     }];
     
-    if (!_uploadManager) {
-        _uploadManager=[RAUploadManager sharedManager];
+    if (!RASingleton.sharedInstance.uploadManager) {
+        RASingleton.sharedInstance.uploadManager=[RAUploadManager sharedManager];
     }
-    return _uploadManager;
+    return RASingleton.sharedInstance.uploadManager;
 }
 
 #endif

+ 16 - 16
RedAnt ERP Mobile/common/Functions/OLO/ScanOrderListViewController.m

@@ -59,8 +59,8 @@
 
 - (void)dealloc {
     [[NSNotificationCenter defaultCenter] removeObserver:self];
-    AppDelegate* appdelegate=(AppDelegate*)[UIApplication sharedApplication].delegate;
-    [appdelegate.uploadManager removeObserver:self forKeyPath:@"arr_queue"];
+//    AppDelegate* appdelegate=(AppDelegate*)[UIApplication sharedApplication].delegate;
+    [RASingleton.sharedInstance.uploadManager removeObserver:self forKeyPath:@"arr_queue"];
 }
 
 - (NSMutableArray *)mergeList {
@@ -197,10 +197,10 @@
     [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(onShowList:) name:@"ShowUnSubmit" object:nil];
     
     
-    AppDelegate* appdelegate=(AppDelegate*)[UIApplication sharedApplication].delegate;
+//    AppDelegate* appdelegate=(AppDelegate*)[UIApplication sharedApplication].delegate;
     
     
-    [appdelegate.uploadManager addObserver:self
+    [RASingleton.sharedInstance.uploadManager addObserver:self
                                 forKeyPath:@"arr_queue"
                                    options:(NSKeyValueObservingOptionNew|NSKeyValueObservingOptionOld)
                                    context:@"arr_queue changed"];
@@ -1019,8 +1019,8 @@
     }
     else
     {
-        AppDelegate* Appdelegate=(AppDelegate*)[UIApplication sharedApplication].delegate;
-        return Appdelegate.uploadManager.arr_queue.count;
+//        AppDelegate* Appdelegate=(AppDelegate*)[UIApplication sharedApplication].delegate;
+        return RASingleton.sharedInstance.uploadManager.arr_queue.count;
     }
 }
 
@@ -1178,7 +1178,7 @@
     }
     else
     {
-        AppDelegate* Appdelegate=(AppDelegate*)[UIApplication sharedApplication].delegate;
+//        AppDelegate* Appdelegate=(AppDelegate*)[UIApplication sharedApplication].delegate;
         
         
         
@@ -1188,7 +1188,7 @@
             UploadCell * cell= [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
             
             
-            NSDictionary * item_json = Appdelegate.uploadManager.arr_queue[indexPath.row];
+            NSDictionary * item_json = RASingleton.sharedInstance.uploadManager.arr_queue[indexPath.row];
             //
             //        if (cell.operation) {
             //            cell.operation.updateUI = nil;
@@ -1783,8 +1783,8 @@
     }
     else
     {
-        AppDelegate* Appdelegate=(AppDelegate*)[UIApplication sharedApplication].delegate;
-        NSMutableDictionary * task = Appdelegate.uploadManager.arr_queue[indexPath.row];
+//        AppDelegate* Appdelegate=(AppDelegate*)[UIApplication sharedApplication].delegate;
+        NSMutableDictionary * task = RASingleton.sharedInstance.uploadManager.arr_queue[indexPath.row];
         
         
         __weak typeof(self) weakself = self;
@@ -1792,14 +1792,14 @@
         
         UIContextualAction* startAction = [UIContextualAction contextualActionWithStyle:UIContextualActionStyleNormal title:@"Restart" handler:^(UIContextualAction * _Nonnull action, __kindof UIView * _Nonnull sourceView, void (^ _Nonnull completionHandler)(BOOL)) {
             
-            if (Appdelegate.uploadManager.onlyWiFi && Appdelegate.uploadManager.reach.currentReachabilityStatus != ReachableViaWiFi) {
+            if (RASingleton.sharedInstance.uploadManager.onlyWiFi && RASingleton.sharedInstance.uploadManager.reach.currentReachabilityStatus != ReachableViaWiFi) {
                 [weakself.view makeToast:@"Current Network is not WiFi" duration:3.0 position:CSToastPositionCenter];
                 [tableView reloadRowsAtIndexPaths:@[indexPath]withRowAnimation:UITableViewRowAnimationMiddle];
                 return ;
             }
             DebugLog(@"Start click");
             task[@"retry"]=[NSNumber numberWithInt:0];
-            [Appdelegate.uploadManager startTask:task];
+            [RASingleton.sharedInstance.uploadManager startTask:task];
             
             [tableView reloadData];
             
@@ -1817,7 +1817,7 @@
         UIContextualAction* removeAction = [UIContextualAction contextualActionWithStyle:UIContextualActionStyleDestructive title:@"Remove" handler:^(UIContextualAction * _Nonnull action, __kindof UIView * _Nonnull sourceView, void (^ _Nonnull completionHandler)(BOOL)) {
             
             
-            [Appdelegate.uploadManager removeTask:task];
+            [RASingleton.sharedInstance.uploadManager removeTask:task];
             
             //  [tableView reloadRowsAtIndexPaths:@[indexPath]withRowAnimation:UITableViewRowAnimationMiddle];
             
@@ -1918,10 +1918,10 @@
     }
     else
     {
-        AppDelegate* Appdelegate=(AppDelegate*)[UIApplication sharedApplication].delegate;
-        if(Appdelegate.uploadManager.arr_queue.count==0)
+//        AppDelegate* Appdelegate=(AppDelegate*)[UIApplication sharedApplication].delegate;
+        if(RASingleton.sharedInstance.uploadManager.arr_queue.count==0)
             return false;
-        NSDictionary * item_json = Appdelegate.uploadManager.arr_queue[indexPath.row];
+        NSDictionary * item_json = RASingleton.sharedInstance.uploadManager.arr_queue[indexPath.row];
         
         bool ret=false;
         switch ([item_json[@"status"] intValue]) {

+ 4 - 2
RedAnt ERP Mobile/common/Functions/order/CreateOrderViewController.m

@@ -782,7 +782,7 @@
     
     
     // get customer info
-    AppDelegate *appDelegate = (AppDelegate*)[[UIApplication sharedApplication] delegate];
+ 
     
     
 #ifdef SCANNER_ORDER
@@ -892,7 +892,9 @@
     
     
     NSString* msg;
+    AppDelegate *appDelegate = (AppDelegate*)[[UIApplication sharedApplication] delegate];
 #ifdef OFFLINE_MODE
+
     if(appDelegate.offline_mode)
     {
         msg=@"Are you sure to mark offline order as ready for submit?";
@@ -2537,7 +2539,7 @@
 
     
     //    // add upload tasks;
-    [Appdelegate.uploadManager addTask:task];
+    [RASingleton.sharedInstance.uploadManager addTask:task];
     
 //    [self clear];
 }

+ 79 - 0
RedAnt ERP Mobile/common/Functions/signature/RASingleton.h

@@ -0,0 +1,79 @@
+//
+//  Singleton.h
+//  iSales-NPD
+//
+//  Created by Jack on 2016/10/12.
+//  Copyright © 2016年 United Software Applications, Inc. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+#import <sqlite3.h>
+
+@interface RASingleton : NSObject
+
+typedef enum {
+    Shop_Order = 0,
+    Sales_Order = 1
+}Customer_Oder_Type;
+
+@property (nonatomic,assign) sqlite3 *currentDB;///<当前打开的数据库
+
+@property (nonatomic,assign) BOOL homeItemClick;///<用于追踪“If user is browsing a particular category on home screen”
+@property (nonatomic,  copy) NSString *homeClickedItemName;
+
+#pragma mark - Customer
+
+@property (nonatomic,assign) BOOL permissions_price_setting;///<价格设置权限
+@property (nonatomic,assign) BOOL permissions_edit_order;///<编辑订单权限,Place Order
+@property (nonatomic,assign) BOOL permissions_submit_order;///<提交订单权限
+@property (nonatomic,assign) BOOL permissions_merge_order;///<合并订单权限
+@property (nonatomic,assign) NSInteger npd_shop_price_type;///<Shop设置的价格类型,0提货价、1统一卖价、 2计算价
+@property (nonatomic,  copy) NSString *deliveryString;///<登陆成功后接收的提货价名称
+// 使用枚举吗?Customer_Oder_Type
+@property (nonatomic,assign) NSInteger customer_order_type;///< 0 Shop Order/ 1 Sales Order,表示Order List Segment
+@property (nonatomic,assign) BOOL global_lock;///<全局锁,Yes表示订单不能查看Detail,需要密码验证Price Setting,Hide Price
+@property (nonatomic,assign) BOOL customer_can_see_sales_Order;///<是否有权查看Sales Order,控制Order List
+@property (nonatomic,strong) NSMutableDictionary *shop_order_status_filter;///<Shop Order Status
+@property (nonatomic,strong) NSMutableDictionary *sales_order_status_filter;///<Sales Order Status
+@property (nonatomic,  copy) NSString *specialInstruction;///<登陆时传的Special Instruction,在提交订单时显示
+@property (nonatomic,assign) BOOL currentOrderIsMerged;///<当前打开的订单是否为Purchas Order
+@property (nonatomic,strong) NSDictionary *customerInfo;///<登录账号信息
+///
+//@property bool enable_OfflineOrder; // 离线订单开关
+@property (nonatomic,strong) NSMutableDictionary *scan_cart;///<购物车
+@property (nonatomic,strong) NSMutableArray *scan_list;///<购物车
+//@property (nonatomic,strong) NSString *scan_temp_code;///<扫码订单创建前的零时单号
+//@property int price_index; //qr code 里的价格位置
+@property int price_type; //当前设置的价格类型
+
+
+@property (nonatomic,  strong) NSString *user;///替代appdelegate里的user访问
+@property (strong,nonatomic) NSString * password;
+@property (strong , nonatomic) NSString* ipad_perm;
+@property (strong,nonatomic) NSString* build;
+
+
+@property (strong,nonatomic) NSString * duid; //推送令牌
+///
+///
+///
+#pragma mark - Global Param Begin
+
+- (void)setGlobalParameter:(id)param forKey:(NSString *)key;
+- (id)globalParameterForKey:(NSString *)key;
+
+#pragma mark - Globale Param End
+
+///
+
+#pragma mark - Employee
+
+
+
+#pragma mark - Method
+
++ (instancetype)sharedInstance;
+
+- (void)resetGlobalLock;
+
+@end

+ 143 - 0
RedAnt ERP Mobile/common/Functions/signature/RASingleton.m

@@ -0,0 +1,143 @@
+//
+//  Singleton.m
+//  iSales-NPD
+//
+//  Created by Jack on 2016/10/12.
+//  Copyright © 2016年 United Software Applications, Inc. All rights reserved.
+//
+
+#import "RASingleton.h"
+#import "NotificationNameCenter.h"
+#import "AppDelegate.h"
+#import "RAUtils.h"
+@interface RASingleton ()
+
+@property (nonatomic,strong) NSMutableDictionary *globalParameters;
+
+
+@end
+
+@implementation RASingleton
+#pragma mark - Global Parameter
+
+- (NSMutableDictionary *)globalParameters {
+    if (!_globalParameters) {
+        _globalParameters = [NSMutableDictionary dictionary];
+    }
+    return _globalParameters;
+}
+
+
+- (void)setGlobalParameter:(id)param forKey:(NSString *)key {
+    if (param == nil || key == nil) {
+        return;
+    }
+    [self.globalParameters setObject:param forKey:key];
+}
+- (id)globalParameterForKey:(NSString *)key {
+    if (key == nil) {
+        return nil;
+    }
+    return [self.globalParameters objectForKey:key];
+}
+- (void)setUser:(NSString *)user {
+    _user = user;
+    
+    [self setGlobalParameter:_user forKey:@"user"];
+}
+- (void)setPassword:(NSString *)password {
+    _password = password;
+    [self setGlobalParameter:_password forKey:@"password"];
+}
+
+- (void)dealloc {
+    [[NSNotificationCenter defaultCenter] removeObserver:self];
+    
+    [self removeObserver:self forKeyPath:@"stack_contents"];
+}
+//- (instancetype)init {
+//    if (self = [super init]) {
+//        
+//        [self addObserver:self forKeyPath:@"scan_cart"
+//                                       options:(NSKeyValueObservingOptionNew|NSKeyValueObservingOptionOld)
+//                                       context:@"content changed"];
+//      
+//    }
+//    return self;
+//}
+
++ (instancetype)sharedInstance {
+    
+    static RASingleton *singleton = nil;
+    static dispatch_once_t onceToken;
+    dispatch_once(&onceToken, ^{
+        
+        singleton = [[RASingleton alloc] init];
+        [[NSNotificationCenter defaultCenter] addObserver:singleton selector:@selector(handleLogin:) name:User_LoginOK_Notification object:nil];
+        
+
+        
+//        self addObserver:self forKeyPath:self.scan_cart options:<#(NSKeyValueObservingOptions)#> context:<#(nullable void *)#>
+    });
+    return singleton;
+}
+
+//- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context
+//{
+//    if(self.enable_OfflineOrder)
+//    {
+//    if([keyPath isEqualToString:@"scan_cart"])
+//    {
+//        NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
+//        NSString *documents = [paths objectAtIndex:0];
+//        AppDelegate *appDelegate = (AppDelegate*)[[UIApplication sharedApplication] delegate];
+//            
+//            
+//        NSString *orderdir = [documents stringByAppendingPathComponent:appDelegate.order_code];
+//        
+//        NSString *cartpath = [orderdir stringByAppendingPathComponent:@"cart.json"];
+//        
+//        
+//        
+//        [RAUtils dicttofile:cartpath dict:self.scan_cart];
+//        
+//        
+//        self.scan_cart addObserver:<#(nonnull NSObject *)#> forKeyPath:<#(nonnull NSString *)#> options:<#(NSKeyValueObservingOptions)#> context:<#(nullable void *)#>
+//        
+//    }
+//    }
+//
+//}
+
+- (void)setGlobal_lock:(BOOL)global_lock {
+    _global_lock = global_lock;
+    if (global_lock) {
+        [[NSNotificationCenter defaultCenter] postNotificationName:Lock_Permission_Notification object:nil];
+    } else {
+        [[NSNotificationCenter defaultCenter] postNotificationName:unLock_Permission_Notification object:nil];
+    }
+}
+
+- (void)resetGlobalLock {
+    _global_lock = NO;
+}
+
+- (void)handleLogin:(NSNotification *)notification {
+    self.currentOrderIsMerged = NO;
+}
+
+- (NSString *)homeClickedItemName {
+    if (!_homeClickedItemName) {
+        _homeClickedItemName = @"";
+    }
+    return _homeClickedItemName;
+}
+
+- (NSString *)deliveryString {
+    if (!_deliveryString) {
+        _deliveryString = @"";
+    }
+    return _deliveryString;
+}
+
+@end

+ 12 - 0
RedAnt ERP Mobile/common/RASingleton.h

@@ -8,7 +8,11 @@
 
 #import <Foundation/Foundation.h>
 #import <sqlite3.h>
+#import "config.h"
 
+#ifdef SCANNER_ORDER
+    #import "RAUploadManager.h"
+#endif
 @interface RASingleton : NSObject
 
 typedef enum {
@@ -54,6 +58,14 @@ typedef enum {
 
 
 @property (strong,nonatomic) NSString * duid; //推送令牌
+
+#ifdef SCANNER_ORDER
+
+@property (strong, nonatomic)  RAUploadManager *uploadManager;
+
+#endif
+
+
 ///
 ///
 ///

+ 11 - 0
RedAnt ERP Mobile/common/SceneDelegateBase.h

@@ -0,0 +1,11 @@
+//
+//  SceneDelegateBase.h
+//
+
+#import <UIKit/UIKit.h>
+
+@interface SceneDelegateBase : UIResponder <UIWindowSceneDelegate>
+
+@property (strong, nonatomic) UIWindow *window;
+
+@end

+ 64 - 0
RedAnt ERP Mobile/common/SceneDelegateBase.m

@@ -0,0 +1,64 @@
+//
+//  SceneDelegateBase.m
+//
+
+#import "SceneDelegateBase.h"
+#import "AppDelegateBase.h"
+
+@implementation SceneDelegateBase
+
+- (void)scene:(UIScene *)scene willConnectToSession:(UISceneSession *)session options:(UISceneConnectionOptions *)connectionOptions {
+    // 系统会自动从 Main.storyboard 创建 window 和 rootViewController
+    // 这里不需要手动创建
+    
+    // 如果需要手动创建 window(不使用 storyboard):
+    // UIWindowScene *windowScene = (UIWindowScene *)scene;
+    // self.window = [[UIWindow alloc] initWithWindowScene:windowScene];
+    // [self.window makeKeyAndVisible];
+}
+
+- (void)sceneDidDisconnect:(UIScene *)scene {
+    // 场景断开连接时调用
+}
+
+- (void)sceneDidBecomeActive:(UIScene *)scene {
+    // 场景变为活跃状态时调用
+    AppDelegateBase *appDelegate = (AppDelegateBase *)[UIApplication sharedApplication].delegate;
+    if(appDelegate.download_task != nil) {
+        [appDelegate download_offline:true checkdiskspace:false];
+    }
+    
+    appDelegate.forgroundDate = [NSDate date];
+    
+#ifdef SCANNER_ORDER
+    [RAUploadManager configureUploadManager:^(RAUPloadManagerConfigure *configure) {
+        configure.autoRemoveFinish = YES;
+    }];
+    
+    if (!RASingleton.sharedInstance.uploadManager) {
+        RASingleton.sharedInstance.uploadManager = [RAUploadManager sharedManager];
+    }
+#endif
+}
+
+- (void)sceneWillResignActive:(UIScene *)scene {
+    // 场景即将变为非活跃状态时调用
+}
+
+- (void)sceneWillEnterForeground:(UIScene *)scene {
+    // 场景即将进入前台时调用
+}
+
+- (void)sceneDidEnterBackground:(UIScene *)scene {
+    // 场景进入后台时调用
+    AppDelegateBase *appDelegate = (AppDelegateBase *)[UIApplication sharedApplication].delegate;
+    [appDelegate download_offline:false checkdiskspace:false];
+    
+#if defined(GOOGLE_ANALYTICS)
+    NSTimeInterval timing = [[NSDate date] timeIntervalSinceDate:appDelegate.forgroundDate];
+    appDelegate.forgroundDate = nil;
+    [GoogleAnalyst trackTimingWithCategory:@"foreground" interval:timing name:@"user used time" label:nil];
+#endif
+}
+
+@end

+ 1 - 1
RedAnt ERP Mobile/common/qrcode/QRCodeGenerator.m

@@ -65,7 +65,7 @@ enum {
 	
 	// create context
 	CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB();
-	CGContextRef ctx = CGBitmapContextCreate(0, size, size, 8, size * 4, colorSpace, kCGImageAlphaPremultipliedLast);
+    CGContextRef ctx = CGBitmapContextCreate(0, size, size, 8, size * 4, colorSpace, kCGImageAlphaPremultipliedLast | kCGBitmapByteOrderDefault);
 	
 	CGAffineTransform translateTransform = CGAffineTransformMakeTranslation(0, -size);
 	CGAffineTransform scaleTransform = CGAffineTransformMakeScale(1, -1);

+ 19 - 3
RedAnt ERP Mobile/iSales-CONTRAST.xcodeproj/project.pbxproj

@@ -76,6 +76,8 @@
 		3C87DB6A2A0E3B1D00B44F61 /* SignatureViewM.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C87DB662A0E3B1D00B44F61 /* SignatureViewM.m */; };
 		3C87DB6B2A0E3B1D00B44F61 /* SViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C87DB682A0E3B1D00B44F61 /* SViewController.m */; };
 		3C87DB6F2A11C06400B44F61 /* SignatureRenderer.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C87DB6E2A11C06300B44F61 /* SignatureRenderer.m */; };
+		3C97F3122EBDD0EA00BD9260 /* SceneDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C97F3112EBDD0EA00BD9260 /* SceneDelegate.m */; };
+		3C97F3142EBDD15100BD9260 /* SceneDelegateBase.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C97F3132EBDD15100BD9260 /* SceneDelegateBase.m */; };
 		3CA6DDBE28E54B72003655FF /* ContrastModelItemCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 3CA6DDBC28E54B72003655FF /* ContrastModelItemCell.m */; };
 		3CA6DDC428E575FB003655FF /* ModelItemCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 3CA6DDC328E575FB003655FF /* ModelItemCell.m */; };
 		3CDDB25C273A564200681F78 /* DefaultTableHeaderView.m in Sources */ = {isa = PBXBuildFile; fileRef = 3CDDB25A273A564200681F78 /* DefaultTableHeaderView.m */; };
@@ -416,6 +418,10 @@
 		3C87DB6C2A0E3C2500B44F61 /* AAPLShaderTypes.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AAPLShaderTypes.h; path = common/Functions/signature/AAPLShaderTypes.h; sourceTree = SOURCE_ROOT; };
 		3C87DB6D2A11C06300B44F61 /* SignatureRenderer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SignatureRenderer.h; path = common/Functions/signature/SignatureRenderer.h; sourceTree = SOURCE_ROOT; };
 		3C87DB6E2A11C06300B44F61 /* SignatureRenderer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = SignatureRenderer.m; path = common/Functions/signature/SignatureRenderer.m; sourceTree = SOURCE_ROOT; };
+		3C97F30F2EBDD0C200BD9260 /* SceneDelegateBase.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = SceneDelegateBase.h; path = common/SceneDelegateBase.h; sourceTree = SOURCE_ROOT; };
+		3C97F3102EBDD0EA00BD9260 /* SceneDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SceneDelegate.h; sourceTree = "<group>"; };
+		3C97F3112EBDD0EA00BD9260 /* SceneDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = SceneDelegate.m; sourceTree = "<group>"; };
+		3C97F3132EBDD15100BD9260 /* SceneDelegateBase.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; name = SceneDelegateBase.m; path = common/SceneDelegateBase.m; sourceTree = SOURCE_ROOT; };
 		3CA6DDBC28E54B72003655FF /* ContrastModelItemCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ContrastModelItemCell.m; sourceTree = "<group>"; };
 		3CA6DDBD28E54B72003655FF /* ContrastModelItemCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ContrastModelItemCell.h; sourceTree = "<group>"; };
 		3CA6DDC228E575FB003655FF /* ModelItemCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ModelItemCell.h; path = common/Functions/cart/ModelItemCell.h; sourceTree = SOURCE_ROOT; };
@@ -1210,6 +1216,10 @@
 				713F76B91929F4A7006A7305 /* AppDelegate.m */,
 				714036F821646B8C0029B10F /* AppDelegateBase.h */,
 				714036F721646B8C0029B10F /* AppDelegateBase.m */,
+				3C97F3102EBDD0EA00BD9260 /* SceneDelegate.h */,
+				3C97F3112EBDD0EA00BD9260 /* SceneDelegate.m */,
+				3C97F30F2EBDD0C200BD9260 /* SceneDelegateBase.h */,
+				3C97F3132EBDD15100BD9260 /* SceneDelegateBase.m */,
 				428980701E24B1E9005F1BD8 /* RASingleton.h */,
 				428980711E24B1E9005F1BD8 /* RASingleton.m */,
 				428980021E2490C1005F1BD8 /* NotificationNameCenter.h */,
@@ -1878,7 +1888,7 @@
 			isa = PBXProject;
 			attributes = {
 				BuildIndependentTargetsInParallel = YES;
-				LastUpgradeCheck = 1430;
+				LastUpgradeCheck = 2610;
 				ORGANIZATIONNAME = "United Software Applications, Inc";
 				TargetAttributes = {
 					713F76A51929F4A7006A7305 = {
@@ -2056,6 +2066,7 @@
 				712AFED71DBA050200254965 /* BasicDrawable.m in Sources */,
 				3C51494E273D095900F78617 /* CommonEditorCellImg.m in Sources */,
 				71DF74891C57608F00F2789C /* RadioButton.m in Sources */,
+				3C97F3142EBDD15100BD9260 /* SceneDelegateBase.m in Sources */,
 				7162A5DF1C5876E300AB630E /* ScannerSettingViewController.m in Sources */,
 				71DF74831C57608F00F2789C /* ImageScrollerView.m in Sources */,
 				71DF74871C57608F00F2789C /* NIDropDown.m in Sources */,
@@ -2186,6 +2197,7 @@
 				3CE660602874167100DDB14A /* OrderDiscountViewController.m in Sources */,
 				7162A5C51C5873BB00AB630E /* SearchViewController.m in Sources */,
 				7162A5191C58704600AB630E /* EditModelPriceViewController.m in Sources */,
+				3C97F3122EBDD0EA00BD9260 /* SceneDelegate.m in Sources */,
 				3C514969273D0B1E00F78617 /* RADataProvider.m in Sources */,
 				7162A5721C58728D00AB630E /* DetailKVCell.m in Sources */,
 				7141DD501C57459B00F7DF59 /* QRCodeGenerator.m in Sources */,
@@ -2268,8 +2280,10 @@
 				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
 				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
 				COPY_PHASE_STRIP = NO;
+				DEVELOPMENT_TEAM = HXWLAA5YN5;
 				ENABLE_STRICT_OBJC_MSGSEND = YES;
 				ENABLE_TESTABILITY = YES;
+				ENABLE_USER_SCRIPT_SANDBOXING = YES;
 				GCC_C_LANGUAGE_STANDARD = gnu99;
 				GCC_DYNAMIC_NO_PIC = NO;
 				GCC_NO_COMMON_BLOCKS = YES;
@@ -2293,6 +2307,7 @@
 				LIBRARY_SEARCH_PATHS = "";
 				ONLY_ACTIVE_ARCH = YES;
 				SDKROOT = iphoneos;
+				STRING_CATALOG_GENERATE_SYMBOLS = YES;
 				TARGETED_DEVICE_FAMILY = 2;
 			};
 			name = Debug;
@@ -2328,8 +2343,10 @@
 				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
 				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
 				COPY_PHASE_STRIP = YES;
+				DEVELOPMENT_TEAM = HXWLAA5YN5;
 				ENABLE_NS_ASSERTIONS = NO;
 				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				ENABLE_USER_SCRIPT_SANDBOXING = YES;
 				GCC_C_LANGUAGE_STANDARD = gnu99;
 				GCC_NO_COMMON_BLOCKS = YES;
 				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
@@ -2345,6 +2362,7 @@
 				IPHONEOS_DEPLOYMENT_TARGET = 13.0;
 				LIBRARY_SEARCH_PATHS = "";
 				SDKROOT = iphoneos;
+				STRING_CATALOG_GENERATE_SYMBOLS = YES;
 				TARGETED_DEVICE_FAMILY = 2;
 				VALIDATE_PRODUCT = YES;
 			};
@@ -2358,7 +2376,6 @@
 				CODE_SIGN_IDENTITY = "iPhone Developer";
 				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
 				CURRENT_PROJECT_VERSION = 250801;
-				DEVELOPMENT_TEAM = HXWLAA5YN5;
 				FRAMEWORK_SEARCH_PATHS = (
 					"$(inherited)",
 					"$(PROJECT_DIR)/GoogleAnalytics/FirebaseAnalytics/Frameworks",
@@ -2406,7 +2423,6 @@
 				CODE_SIGN_IDENTITY = "iPhone Developer";
 				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
 				CURRENT_PROJECT_VERSION = 250801;
-				DEVELOPMENT_TEAM = HXWLAA5YN5;
 				FRAMEWORK_SEARCH_PATHS = (
 					"$(inherited)",
 					"$(PROJECT_DIR)/GoogleAnalytics/FirebaseAnalytics/Frameworks",

+ 1 - 1
RedAnt ERP Mobile/iSales-CONTRAST.xcodeproj/xcuserdata/ruizhang.xcuserdatad/xcschemes/xcschememanagement.plist

@@ -7,7 +7,7 @@
 		<key>iSales-CONTRAST.xcscheme_^#shared#^_</key>
 		<dict>
 			<key>orderHint</key>
-			<integer>1</integer>
+			<integer>4</integer>
 		</dict>
 	</dict>
 </dict>

+ 17 - 0
RedAnt ERP Mobile/iSales-CONTRAST/SceneDelegate.h

@@ -0,0 +1,17 @@
+//
+//  SceneDelegate.h
+//  iSales-CONTRAST
+//
+//  Created by Rui Zhang on 11/7/25.
+//  Copyright © 2025 United Software Applications, Inc. All rights reserved.
+//
+
+#import "SceneDelegateBase.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface SceneDelegate : SceneDelegateBase
+
+@end
+
+NS_ASSUME_NONNULL_END

+ 13 - 0
RedAnt ERP Mobile/iSales-CONTRAST/SceneDelegate.m

@@ -0,0 +1,13 @@
+//
+//  SceneDelegate.m
+//  iSales-CONTRAST
+//
+//  Created by Rui Zhang on 11/7/25.
+//  Copyright © 2025 United Software Applications, Inc. All rights reserved.
+//
+
+#import "SceneDelegate.h"
+
+@implementation SceneDelegate
+
+@end

+ 21 - 0
RedAnt ERP Mobile/iSales-CONTRAST/iSales-CONTRAST-Info.plist

@@ -2,6 +2,27 @@
 <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
 <plist version="1.0">
 <dict>
+    
+    <key>UIApplicationSceneManifest</key>
+    <dict>
+        <key>UIApplicationSupportsMultipleScenes</key>
+        <false/>
+        <key>UISceneConfigurations</key>
+        <dict>
+            <key>UIWindowSceneSessionRoleApplication</key>
+            <array>
+                <dict>
+                    <key>UISceneConfigurationName</key>
+                    <string>Default Configuration</string>
+                    <key>UISceneDelegateClassName</key>
+                    <string>SceneDelegate</string>
+                    <key>UISceneStoryboardFile</key>
+                    <string>Main</string>
+                </dict>
+            </array>
+        </dict>
+    </dict>
+    
 	<key>NSBluetoothAlwaysUsageDescription</key>
 	<string>Connect to BT scanner</string>
 	<key>CFBundleDevelopmentRegion</key>

+ 19 - 3
RedAnt ERP Mobile/iSales-NPD.xcodeproj/project.pbxproj

@@ -35,6 +35,8 @@
 		3C70C0802A2DC244008C2400 /* MessageBox.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C70C07D2A2DC244008C2400 /* MessageBox.m */; };
 		3C70C0812A2DC244008C2400 /* RAPopviewContainer.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C70C07E2A2DC244008C2400 /* RAPopviewContainer.m */; };
 		3C7E5A91237BDB26006D0105 /* PortfolioListViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C7E5A8F237BDB26006D0105 /* PortfolioListViewController.m */; };
+		3C97F3042EBB4E6D00BD9260 /* SceneDelegateBase.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C97F3032EBB4E6D00BD9260 /* SceneDelegateBase.m */; };
+		3C97F3072EBB501600BD9260 /* SceneDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C97F3062EBB501600BD9260 /* SceneDelegate.m */; };
 		3CA210A82761DA66000FC2F3 /* PhotoList.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 3CA2109F2761DA66000FC2F3 /* PhotoList.storyboard */; };
 		3CA210A92761DA66000FC2F3 /* ContentPreviewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 3CA210A12761DA66000FC2F3 /* ContentPreviewController.m */; };
 		3CA210AA2761DA66000FC2F3 /* VideoPreviewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 3CA210A42761DA66000FC2F3 /* VideoPreviewCell.m */; };
@@ -336,6 +338,10 @@
 		3C70C07E2A2DC244008C2400 /* RAPopviewContainer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RAPopviewContainer.m; sourceTree = "<group>"; };
 		3C7E5A8F237BDB26006D0105 /* PortfolioListViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = PortfolioListViewController.m; path = common/Functions/portfolio/PortfolioListViewController.m; sourceTree = SOURCE_ROOT; };
 		3C7E5A90237BDB26006D0105 /* PortfolioListViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PortfolioListViewController.h; path = common/Functions/portfolio/PortfolioListViewController.h; sourceTree = SOURCE_ROOT; };
+		3C97F3022EBB4E6D00BD9260 /* SceneDelegateBase.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = SceneDelegateBase.h; path = common/SceneDelegateBase.h; sourceTree = SOURCE_ROOT; };
+		3C97F3032EBB4E6D00BD9260 /* SceneDelegateBase.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; name = SceneDelegateBase.m; path = common/SceneDelegateBase.m; sourceTree = SOURCE_ROOT; };
+		3C97F3052EBB501600BD9260 /* SceneDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SceneDelegate.h; sourceTree = "<group>"; };
+		3C97F3062EBB501600BD9260 /* SceneDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = SceneDelegate.m; sourceTree = "<group>"; };
 		3CA2109F2761DA66000FC2F3 /* PhotoList.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; path = PhotoList.storyboard; sourceTree = "<group>"; };
 		3CA210A12761DA66000FC2F3 /* ContentPreviewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ContentPreviewController.m; sourceTree = "<group>"; };
 		3CA210A22761DA66000FC2F3 /* ContentPreviewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ContentPreviewController.h; sourceTree = "<group>"; };
@@ -1163,6 +1169,10 @@
 				716387CC1953D693006E65E6 /* sideMenu */,
 				710212821B8D59DE00E1788B /* watchlist */,
 				428980221E2492D2005F1BD8 /* Price Setting */,
+				3C97F3022EBB4E6D00BD9260 /* SceneDelegateBase.h */,
+				3C97F3032EBB4E6D00BD9260 /* SceneDelegateBase.m */,
+				3C97F3052EBB501600BD9260 /* SceneDelegate.h */,
+				3C97F3062EBB501600BD9260 /* SceneDelegate.m */,
 				713F76B81929F4A7006A7305 /* AppDelegate.h */,
 				713F76B91929F4A7006A7305 /* AppDelegate.m */,
 				3CA210B02761DAAB000FC2F3 /* RASingleton.h */,
@@ -1847,7 +1857,7 @@
 			isa = PBXProject;
 			attributes = {
 				BuildIndependentTargetsInParallel = YES;
-				LastUpgradeCheck = 1430;
+				LastUpgradeCheck = 2610;
 				ORGANIZATIONNAME = "United Software Applications, Inc";
 				TargetAttributes = {
 					713F76A51929F4A7006A7305 = {
@@ -2073,6 +2083,7 @@
 				7162A54A1C58719D00AB630E /* RATreeView+UIScrollView.m in Sources */,
 				7162A55D1C58724700AB630E /* ContactListViewController.m in Sources */,
 				3CA210FE2761DC95000FC2F3 /* SRMonthPicker.m in Sources */,
+				3C97F3042EBB4E6D00BD9260 /* SceneDelegateBase.m in Sources */,
 				3CC7E72E23BEDA5000BE5561 /* WebViewController.m in Sources */,
 				7162A5751C58728D00AB630E /* LineView.m in Sources */,
 				712AFEDD1DBA050200254965 /* RAPDFPage.m in Sources */,
@@ -2115,6 +2126,7 @@
 				71DF74971C57614C00F2789C /* PhotoStackView.m in Sources */,
 				7162A50B1C586FC100AB630E /* SliderPage.m in Sources */,
 				712BABF31C897E3A0007466B /* CategorySearchFilterViewController.m in Sources */,
+				3C97F3072EBB501600BD9260 /* SceneDelegate.m in Sources */,
 				3CA210BD2761DB42000FC2F3 /* TouchImageView.m in Sources */,
 				71DF74981C57614C00F2789C /* PhotoStackViewController.m in Sources */,
 				428980151E24924D005F1BD8 /* SortButton.m in Sources */,
@@ -2231,8 +2243,10 @@
 				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
 				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
 				COPY_PHASE_STRIP = NO;
+				DEVELOPMENT_TEAM = HXWLAA5YN5;
 				ENABLE_STRICT_OBJC_MSGSEND = YES;
 				ENABLE_TESTABILITY = YES;
+				ENABLE_USER_SCRIPT_SANDBOXING = YES;
 				GCC_C_LANGUAGE_STANDARD = gnu99;
 				GCC_DYNAMIC_NO_PIC = NO;
 				GCC_NO_COMMON_BLOCKS = YES;
@@ -2257,6 +2271,7 @@
 				LIBRARY_SEARCH_PATHS = "$(PROJECT_DIR)/ScanApiSDK-10.2.227-2/lib";
 				ONLY_ACTIVE_ARCH = YES;
 				SDKROOT = iphoneos;
+				STRING_CATALOG_GENERATE_SYMBOLS = YES;
 				TARGETED_DEVICE_FAMILY = 2;
 			};
 			name = Debug;
@@ -2292,8 +2307,10 @@
 				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
 				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
 				COPY_PHASE_STRIP = YES;
+				DEVELOPMENT_TEAM = HXWLAA5YN5;
 				ENABLE_NS_ASSERTIONS = NO;
 				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				ENABLE_USER_SCRIPT_SANDBOXING = YES;
 				GCC_C_LANGUAGE_STANDARD = gnu99;
 				GCC_NO_COMMON_BLOCKS = YES;
 				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
@@ -2310,6 +2327,7 @@
 				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				LIBRARY_SEARCH_PATHS = "$(PROJECT_DIR)/ScanApiSDK-10.2.227-2/lib";
 				SDKROOT = iphoneos;
+				STRING_CATALOG_GENERATE_SYMBOLS = YES;
 				TARGETED_DEVICE_FAMILY = 2;
 				VALIDATE_PRODUCT = YES;
 			};
@@ -2322,7 +2340,6 @@
 				CODE_SIGN_IDENTITY = "iPhone Developer";
 				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
 				CURRENT_PROJECT_VERSION = 2557411;
-				DEVELOPMENT_TEAM = HXWLAA5YN5;
 				FRAMEWORK_SEARCH_PATHS = (
 					"$(inherited)",
 					"$(PROJECT_DIR)/GoogleAnalytics/FirebaseAnalytics/Frameworks",
@@ -2371,7 +2388,6 @@
 				CODE_SIGN_IDENTITY = "iPhone Developer";
 				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
 				CURRENT_PROJECT_VERSION = 2557411;
-				DEVELOPMENT_TEAM = HXWLAA5YN5;
 				FRAMEWORK_SEARCH_PATHS = (
 					"$(inherited)",
 					"$(PROJECT_DIR)/GoogleAnalytics/FirebaseAnalytics/Frameworks",

+ 1 - 0
RedAnt ERP Mobile/iSales-NPD/GoogleService-Info.plist

@@ -2,6 +2,7 @@
 <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
 <plist version="1.0">
 <dict>
+    
 	<key>TRACKING_ID</key>
 	<string>UA-61172313-2</string>
 	<key>PLIST_VERSION</key>

+ 17 - 0
RedAnt ERP Mobile/iSales-NPD/SceneDelegate.h

@@ -0,0 +1,17 @@
+//
+//  SceneDelegate.h
+//  iSales-NPD
+//
+//  Created by Rui Zhang on 11/5/25.
+//  Copyright © 2025 United Software Applications, Inc. All rights reserved.
+//
+
+#import "SceneDelegateBase.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface SceneDelegate : SceneDelegateBase
+
+@end
+
+NS_ASSUME_NONNULL_END

+ 13 - 0
RedAnt ERP Mobile/iSales-NPD/SceneDelegate.m

@@ -0,0 +1,13 @@
+//
+//  SceneDelegate.m
+//  iSales-NPD
+//
+//  Created by Rui Zhang on 11/5/25.
+//  Copyright © 2025 United Software Applications, Inc. All rights reserved.
+//
+
+#import "SceneDelegate.h"
+
+@implementation SceneDelegate
+
+@end

+ 1 - 1
RedAnt ERP Mobile/iSales-NPD/config.h

@@ -18,7 +18,7 @@
 #define USE_MFI_SCANNER // stock mobile mfi 扫描枪
 
 # ifdef DEBUG
-#define test_server
+//#define test_server
 # endif
 
 #define exception_switch 1

+ 21 - 0
RedAnt ERP Mobile/iSales-NPD/iSales-NPD-Info.plist

@@ -2,6 +2,27 @@
 <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
 <plist version="1.0">
 <dict>
+    
+    <key>UIApplicationSceneManifest</key>
+    <dict>
+        <key>UIApplicationSupportsMultipleScenes</key>
+        <false/>
+        <key>UISceneConfigurations</key>
+        <dict>
+            <key>UIWindowSceneSessionRoleApplication</key>
+            <array>
+                <dict>
+                    <key>UISceneConfigurationName</key>
+                    <string>Default Configuration</string>
+                    <key>UISceneDelegateClassName</key>
+                    <string>SceneDelegate</string>
+                    <key>UISceneStoryboardFile</key>
+                    <string>Main</string>
+                </dict>
+            </array>
+        </dict>
+    </dict>
+    
 	<key>CFBundleDevelopmentRegion</key>
 	<string>en</string>
 	<key>CFBundleDisplayName</key>

+ 19 - 3
RedAnt ERP Mobile/iSales-TRADESHOW.xcodeproj/project.pbxproj

@@ -35,6 +35,8 @@
 		3C70C09E2A2DC277008C2400 /* MessageBox.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C70C09B2A2DC277008C2400 /* MessageBox.m */; };
 		3C70C09F2A2DC277008C2400 /* RAPopviewContainer.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C70C09C2A2DC277008C2400 /* RAPopviewContainer.m */; };
 		3C7E5A84237BDAA6006D0105 /* PortfolioListViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C7E5A83237BDAA6006D0105 /* PortfolioListViewController.m */; };
+		3C97F3232EC1DD6400BD9260 /* SceneDelegateBase.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C97F3222EC1DD6400BD9260 /* SceneDelegateBase.m */; };
+		3C97F3262EC1DD7E00BD9260 /* SceneDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C97F3252EC1DD7E00BD9260 /* SceneDelegate.m */; };
 		3C9FFA20274795690067830C /* RASingleton.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C9FFA1F274795690067830C /* RASingleton.m */; };
 		3C9FFA26274795C90067830C /* RAUtils.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C9FFA24274795C90067830C /* RAUtils.m */; };
 		3C9FFA45274796B40067830C /* PhotoList.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 3C9FFA3C274796B30067830C /* PhotoList.storyboard */; };
@@ -335,6 +337,10 @@
 		3C70C09C2A2DC277008C2400 /* RAPopviewContainer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RAPopviewContainer.m; sourceTree = "<group>"; };
 		3C7E5A82237BDAA6006D0105 /* PortfolioListViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PortfolioListViewController.h; path = common/Functions/portfolio/PortfolioListViewController.h; sourceTree = SOURCE_ROOT; };
 		3C7E5A83237BDAA6006D0105 /* PortfolioListViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = PortfolioListViewController.m; path = common/Functions/portfolio/PortfolioListViewController.m; sourceTree = SOURCE_ROOT; };
+		3C97F3212EC1DD6400BD9260 /* SceneDelegateBase.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = SceneDelegateBase.h; path = common/SceneDelegateBase.h; sourceTree = SOURCE_ROOT; };
+		3C97F3222EC1DD6400BD9260 /* SceneDelegateBase.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; name = SceneDelegateBase.m; path = common/SceneDelegateBase.m; sourceTree = SOURCE_ROOT; };
+		3C97F3242EC1DD7E00BD9260 /* SceneDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SceneDelegate.h; sourceTree = "<group>"; };
+		3C97F3252EC1DD7E00BD9260 /* SceneDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = SceneDelegate.m; sourceTree = "<group>"; };
 		3C9FFA1E274795690067830C /* RASingleton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = RASingleton.h; path = common/RASingleton.h; sourceTree = SOURCE_ROOT; };
 		3C9FFA1F274795690067830C /* RASingleton.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = RASingleton.m; path = common/RASingleton.m; sourceTree = SOURCE_ROOT; };
 		3C9FFA24274795C90067830C /* RAUtils.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = RAUtils.m; path = ../../common/RAUtils.m; sourceTree = "<group>"; };
@@ -1165,6 +1171,10 @@
 				3C9FFA1F274795690067830C /* RASingleton.m */,
 				428EF76021D365D5001C9A3B /* AppDelegateBase.h */,
 				428EF75F21D365D5001C9A3B /* AppDelegateBase.m */,
+				3C97F3212EC1DD6400BD9260 /* SceneDelegateBase.h */,
+				3C97F3222EC1DD6400BD9260 /* SceneDelegateBase.m */,
+				3C97F3242EC1DD7E00BD9260 /* SceneDelegate.h */,
+				3C97F3252EC1DD7E00BD9260 /* SceneDelegate.m */,
 				428980021E2490C1005F1BD8 /* NotificationNameCenter.h */,
 				428980031E2490C1005F1BD8 /* NotificationNameCenter.m */,
 				7162A5E71C5899F700AB630E /* MainViewController.h */,
@@ -1830,7 +1840,7 @@
 			isa = PBXProject;
 			attributes = {
 				BuildIndependentTargetsInParallel = YES;
-				LastUpgradeCheck = 1430;
+				LastUpgradeCheck = 2610;
 				ORGANIZATIONNAME = "United Software Applications, Inc";
 				TargetAttributes = {
 					713F76A51929F4A7006A7305 = {
@@ -1957,6 +1967,7 @@
 				3C9FFA8A274798810067830C /* MonthPickerViewController.m in Sources */,
 				71DF742B1C57560600F2789C /* Reachability.m in Sources */,
 				7162A5701C58728D00AB630E /* DetailHeaderCell.m in Sources */,
+				3C97F3262EC1DD7E00BD9260 /* SceneDelegate.m in Sources */,
 				71BBA2271CEAC16000C91DED /* ZipArchive.mm in Sources */,
 				3C9FFAA1274799040067830C /* RADataProvider.m in Sources */,
 				7162A5491C58719D00AB630E /* RATreeView+TableViewDelegate.m in Sources */,
@@ -2118,6 +2129,7 @@
 				3C7E5A84237BDAA6006D0105 /* PortfolioListViewController.m in Sources */,
 				71DF74861C57608F00F2789C /* ImageViewController.m in Sources */,
 				7162A5821C5872EF00AB630E /* HomeTableViewCellButtonBanner.m in Sources */,
+				3C97F3232EC1DD6400BD9260 /* SceneDelegateBase.m in Sources */,
 				713F76B61929F4A7006A7305 /* main.m in Sources */,
 				71BF06FE1D2F3CBA00981938 /* OfflineSettingViewController.m in Sources */,
 				71DF74341C5757DA00F2789C /* ActiveViewController.m in Sources */,
@@ -2211,8 +2223,10 @@
 				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
 				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
 				COPY_PHASE_STRIP = NO;
+				DEVELOPMENT_TEAM = HXWLAA5YN5;
 				ENABLE_STRICT_OBJC_MSGSEND = YES;
 				ENABLE_TESTABILITY = YES;
+				ENABLE_USER_SCRIPT_SANDBOXING = YES;
 				GCC_C_LANGUAGE_STANDARD = gnu99;
 				GCC_DYNAMIC_NO_PIC = NO;
 				GCC_NO_COMMON_BLOCKS = YES;
@@ -2237,6 +2251,7 @@
 				LIBRARY_SEARCH_PATHS = "$(PROJECT_DIR)/ScanApiSDK-10.2.227-2/lib";
 				ONLY_ACTIVE_ARCH = YES;
 				SDKROOT = iphoneos;
+				STRING_CATALOG_GENERATE_SYMBOLS = YES;
 				TARGETED_DEVICE_FAMILY = 2;
 			};
 			name = Debug;
@@ -2272,8 +2287,10 @@
 				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
 				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
 				COPY_PHASE_STRIP = YES;
+				DEVELOPMENT_TEAM = HXWLAA5YN5;
 				ENABLE_NS_ASSERTIONS = NO;
 				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				ENABLE_USER_SCRIPT_SANDBOXING = YES;
 				GCC_C_LANGUAGE_STANDARD = gnu99;
 				GCC_NO_COMMON_BLOCKS = YES;
 				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
@@ -2290,6 +2307,7 @@
 				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				LIBRARY_SEARCH_PATHS = "$(PROJECT_DIR)/ScanApiSDK-10.2.227-2/lib";
 				SDKROOT = iphoneos;
+				STRING_CATALOG_GENERATE_SYMBOLS = YES;
 				TARGETED_DEVICE_FAMILY = 2;
 				VALIDATE_PRODUCT = YES;
 			};
@@ -2302,7 +2320,6 @@
 				CODE_SIGN_IDENTITY = "iPhone Developer";
 				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
 				CURRENT_PROJECT_VERSION = 200116;
-				DEVELOPMENT_TEAM = HXWLAA5YN5;
 				FRAMEWORK_SEARCH_PATHS = (
 					"$(inherited)",
 					"$(PROJECT_DIR)/GoogleAnalytics/FirebaseAnalytics/Frameworks",
@@ -2350,7 +2367,6 @@
 				CODE_SIGN_IDENTITY = "iPhone Developer";
 				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
 				CURRENT_PROJECT_VERSION = 200116;
-				DEVELOPMENT_TEAM = HXWLAA5YN5;
 				FRAMEWORK_SEARCH_PATHS = (
 					"$(inherited)",
 					"$(PROJECT_DIR)/GoogleAnalytics/FirebaseAnalytics/Frameworks",

+ 17 - 0
RedAnt ERP Mobile/iSales-TRADESHOW/SceneDelegate.h

@@ -0,0 +1,17 @@
+//
+//  SceneDelegate.h
+//  iSales-TRADESHOW
+//
+//  Created by Rui Zhang on 11/10/25.
+//  Copyright © 2025 United Software Applications, Inc. All rights reserved.
+//
+
+#import "SceneDelegateBase.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface SceneDelegate : SceneDelegateBase
+
+@end
+
+NS_ASSUME_NONNULL_END

+ 13 - 0
RedAnt ERP Mobile/iSales-TRADESHOW/SceneDelegate.m

@@ -0,0 +1,13 @@
+//
+//  SceneDelegate.m
+//  iSales-TRADESHOW
+//
+//  Created by Rui Zhang on 11/10/25.
+//  Copyright © 2025 United Software Applications, Inc. All rights reserved.
+//
+
+#import "SceneDelegate.h"
+
+@implementation SceneDelegate
+
+@end

+ 19 - 0
RedAnt ERP Mobile/iSales-TRADESHOW/iSales-TRADESHOW-Info.plist

@@ -2,6 +2,25 @@
 <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
 <plist version="1.0">
 <dict>
+    <key>UIApplicationSceneManifest</key>
+    <dict>
+        <key>UIApplicationSupportsMultipleScenes</key>
+        <false/>
+        <key>UISceneConfigurations</key>
+        <dict>
+            <key>UIWindowSceneSessionRoleApplication</key>
+            <array>
+                <dict>
+                    <key>UISceneConfigurationName</key>
+                    <string>Default Configuration</string>
+                    <key>UISceneDelegateClassName</key>
+                    <string>SceneDelegate</string>
+                    <key>UISceneStoryboardFile</key>
+                    <string>Main</string>
+                </dict>
+            </array>
+        </dict>
+    </dict>
 	<key>CFBundleDevelopmentRegion</key>
 	<string>en</string>
 	<key>CFBundleDisplayName</key>

+ 17 - 39
RedAnt ERP Mobile/iSales-UNITED WAVER.xcodeproj/project.pbxproj

@@ -50,6 +50,8 @@
 		3C70C0942A2DC269008C2400 /* MessageBox.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C70C0912A2DC269008C2400 /* MessageBox.m */; };
 		3C70C0952A2DC269008C2400 /* RAPopviewContainer.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C70C0922A2DC269008C2400 /* RAPopviewContainer.m */; };
 		3C7E5A81237BD953006D0105 /* PortfolioListViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C7E5A7F237BD952006D0105 /* PortfolioListViewController.m */; };
+		3C97F3202EC1DD5400BD9260 /* SceneDelegateBase.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C97F31F2EC1DD5400BD9260 /* SceneDelegateBase.m */; };
+		3C97F3292EC1DD9300BD9260 /* SceneDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C97F3282EC1DD9300BD9260 /* SceneDelegate.m */; };
 		3C9BED082373FED40052241C /* iPadCommonEditorCellSignature.xib in Resources */ = {isa = PBXBuildFile; fileRef = 3C9BED072373FED40052241C /* iPadCommonEditorCellSignature.xib */; };
 		3C9BED0A2373FF1B0052241C /* iPadCommonEditorCellSwitch.xib in Resources */ = {isa = PBXBuildFile; fileRef = 3C9BED092373FF1B0052241C /* iPadCommonEditorCellSwitch.xib */; };
 		3C9BED0C2373FF550052241C /* iPadCommonEditorCellImg.xib in Resources */ = {isa = PBXBuildFile; fileRef = 3C9BED0B2373FF550052241C /* iPadCommonEditorCellImg.xib */; };
@@ -128,10 +130,6 @@
 		713F76BA1929F4A7006A7305 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 713F76B91929F4A7006A7305 /* AppDelegate.m */; };
 		713F76C21929F4A7006A7305 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 713F76C11929F4A7006A7305 /* Assets.xcassets */; };
 		7140370221646DCB0029B10F /* AppDelegateBase.m in Sources */ = {isa = PBXBuildFile; fileRef = 7140370021646DCB0029B10F /* AppDelegateBase.m */; };
-		7141DD341C57269B00F7DF59 /* include in Resources */ = {isa = PBXBuildFile; fileRef = 7141DD331C57269B00F7DF59 /* include */; };
-		7141DD3B1C5726B700F7DF59 /* DeviceInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = 7141DD361C5726B700F7DF59 /* DeviceInfo.m */; };
-		7141DD3C1C5726B700F7DF59 /* ScanApiHelper.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7141DD381C5726B700F7DF59 /* ScanApiHelper.mm */; };
-		7141DD3D1C5726B700F7DF59 /* softScanBeep.wav in Resources */ = {isa = PBXBuildFile; fileRef = 7141DD3A1C5726B700F7DF59 /* softScanBeep.wav */; };
 		7141DD4E1C57459B00F7DF59 /* bitstream.c in Sources */ = {isa = PBXBuildFile; fileRef = 7141DD3E1C57459B00F7DF59 /* bitstream.c */; };
 		7141DD4F1C57459B00F7DF59 /* mask.c in Sources */ = {isa = PBXBuildFile; fileRef = 7141DD401C57459B00F7DF59 /* mask.c */; };
 		7141DD501C57459B00F7DF59 /* QRCodeGenerator.m in Sources */ = {isa = PBXBuildFile; fileRef = 7141DD431C57459B00F7DF59 /* QRCodeGenerator.m */; };
@@ -257,7 +255,6 @@
 		718716251C433D8B00F25860 /* ExternalAccessory.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 718716241C433D8B00F25860 /* ExternalAccessory.framework */; };
 		718716271C433D9700F25860 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 718716261C433D9700F25860 /* AudioToolbox.framework */; };
 		718716291C433DA400F25860 /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 718716281C433DA400F25860 /* AVFoundation.framework */; };
-		7187162C1C43428100F25860 /* libScanApiCore.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 718716221C433D5000F25860 /* libScanApiCore.a */; };
 		7195623C1CF57D1800C74A49 /* CategoryHeaderView.m in Sources */ = {isa = PBXBuildFile; fileRef = 7195623B1CF57D1800C74A49 /* CategoryHeaderView.m */; };
 		71BBA2271CEAC16000C91DED /* ZipArchive.mm in Sources */ = {isa = PBXBuildFile; fileRef = 71BBA2221CEAC16000C91DED /* ZipArchive.mm */; };
 		71BBA2291CEAC17E00C91DED /* libz.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = 71BBA2281CEAC17E00C91DED /* libz.tbd */; };
@@ -382,6 +379,10 @@
 		3C70C0922A2DC269008C2400 /* RAPopviewContainer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RAPopviewContainer.m; sourceTree = "<group>"; };
 		3C7E5A7F237BD952006D0105 /* PortfolioListViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = PortfolioListViewController.m; path = common/Functions/portfolio/PortfolioListViewController.m; sourceTree = SOURCE_ROOT; };
 		3C7E5A80237BD953006D0105 /* PortfolioListViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PortfolioListViewController.h; path = common/Functions/portfolio/PortfolioListViewController.h; sourceTree = SOURCE_ROOT; };
+		3C97F31E2EC1DD5400BD9260 /* SceneDelegateBase.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = SceneDelegateBase.h; path = common/SceneDelegateBase.h; sourceTree = SOURCE_ROOT; };
+		3C97F31F2EC1DD5400BD9260 /* SceneDelegateBase.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; name = SceneDelegateBase.m; path = common/SceneDelegateBase.m; sourceTree = SOURCE_ROOT; };
+		3C97F3272EC1DD9300BD9260 /* SceneDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SceneDelegate.h; sourceTree = "<group>"; };
+		3C97F3282EC1DD9300BD9260 /* SceneDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = SceneDelegate.m; sourceTree = "<group>"; };
 		3C9BED072373FED40052241C /* iPadCommonEditorCellSignature.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = iPadCommonEditorCellSignature.xib; path = ../../common/customUI/CommonEditoriPad/iPadCommonEditorCellSignature.xib; sourceTree = "<group>"; };
 		3C9BED092373FF1B0052241C /* iPadCommonEditorCellSwitch.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = iPadCommonEditorCellSwitch.xib; path = ../../common/customUI/CommonEditoriPad/iPadCommonEditorCellSwitch.xib; sourceTree = "<group>"; };
 		3C9BED0B2373FF550052241C /* iPadCommonEditorCellImg.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = iPadCommonEditorCellImg.xib; path = ../../common/customUI/CommonEditoriPad/iPadCommonEditorCellImg.xib; sourceTree = "<group>"; };
@@ -536,13 +537,6 @@
 		713F76C81929F4A7006A7305 /* XCTest.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = XCTest.framework; path = Library/Frameworks/XCTest.framework; sourceTree = DEVELOPER_DIR; };
 		7140370021646DCB0029B10F /* AppDelegateBase.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = AppDelegateBase.m; path = common/AppDelegateBase.m; sourceTree = SOURCE_ROOT; };
 		7140370121646DCB0029B10F /* AppDelegateBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AppDelegateBase.h; path = common/AppDelegateBase.h; sourceTree = SOURCE_ROOT; };
-		7141DD331C57269B00F7DF59 /* include */ = {isa = PBXFileReference; lastKnownFileType = folder; name = include; path = "ScanApiSDK-10.2.227-2/include"; sourceTree = SOURCE_ROOT; };
-		7141DD351C5726B700F7DF59 /* DeviceInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DeviceInfo.h; path = "ScanApiSDK-10.2.227-2/DeviceInfo.h"; sourceTree = SOURCE_ROOT; };
-		7141DD361C5726B700F7DF59 /* DeviceInfo.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = DeviceInfo.m; path = "ScanApiSDK-10.2.227-2/DeviceInfo.m"; sourceTree = SOURCE_ROOT; };
-		7141DD371C5726B700F7DF59 /* ScanApiHelper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ScanApiHelper.h; path = "ScanApiSDK-10.2.227-2/ScanApiHelper.h"; sourceTree = SOURCE_ROOT; };
-		7141DD381C5726B700F7DF59 /* ScanApiHelper.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = ScanApiHelper.mm; path = "ScanApiSDK-10.2.227-2/ScanApiHelper.mm"; sourceTree = SOURCE_ROOT; };
-		7141DD391C5726B700F7DF59 /* ScanApiIncludes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ScanApiIncludes.h; path = "ScanApiSDK-10.2.227-2/ScanApiIncludes.h"; sourceTree = SOURCE_ROOT; };
-		7141DD3A1C5726B700F7DF59 /* softScanBeep.wav */ = {isa = PBXFileReference; lastKnownFileType = audio.wav; name = softScanBeep.wav; path = "ScanApiSDK-10.2.227-2/softScanBeep.wav"; sourceTree = SOURCE_ROOT; };
 		7141DD3E1C57459B00F7DF59 /* bitstream.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = bitstream.c; path = common/qrcode/bitstream.c; sourceTree = SOURCE_ROOT; };
 		7141DD3F1C57459B00F7DF59 /* bitstream.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = bitstream.h; path = common/qrcode/bitstream.h; sourceTree = SOURCE_ROOT; };
 		7141DD401C57459B00F7DF59 /* mask.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = mask.c; path = common/qrcode/mask.c; sourceTree = SOURCE_ROOT; };
@@ -758,11 +752,9 @@
 		7170BE43211D460200F44D2D /* UIResponder+Router.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; name = "UIResponder+Router.m"; path = "common/UIResponder+Router.m"; sourceTree = SOURCE_ROOT; };
 		7186C25B1C97A6EE00CB43F4 /* FunctionTestViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = FunctionTestViewController.h; path = common/Functions/sidemenu/FunctionTestViewController.h; sourceTree = SOURCE_ROOT; };
 		7186C25C1C97A6EE00CB43F4 /* FunctionTestViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = FunctionTestViewController.m; path = common/Functions/sidemenu/FunctionTestViewController.m; sourceTree = SOURCE_ROOT; };
-		718716221C433D5000F25860 /* libScanApiCore.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libScanApiCore.a; path = ../lib/libScanApiCore.a; sourceTree = "<group>"; };
 		718716241C433D8B00F25860 /* ExternalAccessory.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ExternalAccessory.framework; path = System/Library/Frameworks/ExternalAccessory.framework; sourceTree = SDKROOT; };
 		718716261C433D9700F25860 /* AudioToolbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = System/Library/Frameworks/AudioToolbox.framework; sourceTree = SDKROOT; };
 		718716281C433DA400F25860 /* AVFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AVFoundation.framework; path = System/Library/Frameworks/AVFoundation.framework; sourceTree = SDKROOT; };
-		7187162A1C43406300F25860 /* libScanApiCore.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libScanApiCore.a; path = "../../../ios_samples/ScanApiSDK-10.2.227/lib/libScanApiCore.a"; sourceTree = "<group>"; };
 		7195623A1CF57D1800C74A49 /* CategoryHeaderView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CategoryHeaderView.h; path = common/Functions/category/CategoryHeaderView.h; sourceTree = SOURCE_ROOT; };
 		7195623B1CF57D1800C74A49 /* CategoryHeaderView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CategoryHeaderView.m; path = common/Functions/category/CategoryHeaderView.m; sourceTree = SOURCE_ROOT; };
 		71BBA2211CEAC16000C91DED /* ZipArchive.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ZipArchive.h; path = common/zip/ZipArchive.h; sourceTree = SOURCE_ROOT; };
@@ -857,7 +849,6 @@
 				42BEF35F1E89FEE300632AB6 /* CoreData.framework in Frameworks */,
 				42BEF35D1E89FECD00632AB6 /* SystemConfiguration.framework in Frameworks */,
 				71BBA2291CEAC17E00C91DED /* libz.tbd in Frameworks */,
-				7187162C1C43428100F25860 /* libScanApiCore.a in Frameworks */,
 				718716291C433DA400F25860 /* AVFoundation.framework in Frameworks */,
 				718716271C433D9700F25860 /* AudioToolbox.framework in Frameworks */,
 				718716251C433D8B00F25860 /* ExternalAccessory.framework in Frameworks */,
@@ -1314,11 +1305,9 @@
 			isa = PBXGroup;
 			children = (
 				71BBA2281CEAC17E00C91DED /* libz.tbd */,
-				7187162A1C43406300F25860 /* libScanApiCore.a */,
 				718716281C433DA400F25860 /* AVFoundation.framework */,
 				718716261C433D9700F25860 /* AudioToolbox.framework */,
 				718716241C433D8B00F25860 /* ExternalAccessory.framework */,
-				718716221C433D5000F25860 /* libScanApiCore.a */,
 				716961B419594E1000B19FB4 /* libsqlite3.dylib */,
 				71DEE875192DE00E003F645F /* Accelerate.framework */,
 				71DEE873192DE003003F645F /* QuartzCore.framework */,
@@ -1339,7 +1328,6 @@
 				712AFEE31DBDAEA000254965 /* PDFResource */,
 				716387C71953CDB4006E65E6 /* utils */,
 				71DF74311C5757C800F2789C /* CommonUI */,
-				718716141C433B4300F25860 /* ScanAPI */,
 				7190F1091BBBCAF100B2F243 /* PDF+Web */,
 				714C6ADA1B83016A000123E3 /* address */,
 				71F731FC192F395000F2CF76 /* AutoScrollImage */,
@@ -1365,6 +1353,10 @@
 				713F76B91929F4A7006A7305 /* AppDelegate.m */,
 				7140370121646DCB0029B10F /* AppDelegateBase.h */,
 				7140370021646DCB0029B10F /* AppDelegateBase.m */,
+				3C97F31E2EC1DD5400BD9260 /* SceneDelegateBase.h */,
+				3C97F31F2EC1DD5400BD9260 /* SceneDelegateBase.m */,
+				3C97F3272EC1DD9300BD9260 /* SceneDelegate.h */,
+				3C97F3282EC1DD9300BD9260 /* SceneDelegate.m */,
 				3C3F4E9D276B326300B091AE /* RASingleton.h */,
 				3C3F4E9C276B326300B091AE /* RASingleton.m */,
 				428980021E2490C1005F1BD8 /* NotificationNameCenter.h */,
@@ -1730,20 +1722,6 @@
 			name = customUI;
 			sourceTree = "<group>";
 		};
-		718716141C433B4300F25860 /* ScanAPI */ = {
-			isa = PBXGroup;
-			children = (
-				7141DD351C5726B700F7DF59 /* DeviceInfo.h */,
-				7141DD361C5726B700F7DF59 /* DeviceInfo.m */,
-				7141DD371C5726B700F7DF59 /* ScanApiHelper.h */,
-				7141DD381C5726B700F7DF59 /* ScanApiHelper.mm */,
-				7141DD391C5726B700F7DF59 /* ScanApiIncludes.h */,
-				7141DD3A1C5726B700F7DF59 /* softScanBeep.wav */,
-				7141DD331C57269B00F7DF59 /* include */,
-			);
-			name = ScanAPI;
-			sourceTree = "<group>";
-		};
 		7190F1091BBBCAF100B2F243 /* PDF+Web */ = {
 			isa = PBXGroup;
 			children = (
@@ -2036,7 +2014,7 @@
 			isa = PBXProject;
 			attributes = {
 				BuildIndependentTargetsInParallel = YES;
-				LastUpgradeCheck = 1500;
+				LastUpgradeCheck = 2610;
 				ORGANIZATIONNAME = "United Software Applications, Inc";
 				TargetAttributes = {
 					713F76A51929F4A7006A7305 = {
@@ -2106,11 +2084,9 @@
 				3C9FFA33274796930067830C /* PhotoList.storyboard in Resources */,
 				7162A55F1C58724700AB630E /* customer_info_template.json in Resources */,
 				3CF55FA0238D2590009D9414 /* ytplayer.html in Resources */,
-				7141DD3D1C5726B700F7DF59 /* softScanBeep.wav in Resources */,
 				423CC86B21D22D7A008BD2C4 /* Launch Screen.storyboard in Resources */,
 				42ED85EE215B734E00C3B9FE /* UWA_Mobile.storyboard in Resources */,
 				4295AE1D1FE74D46007BE365 /* CommonEditorAutoCompleteView.xib in Resources */,
-				7141DD341C57269B00F7DF59 /* include in Resources */,
 				71D01ADD1E08CB1C006620CE /* signature.storyboard in Resources */,
 				7143E22F202FD3CD00451903 /* order_info.html in Resources */,
 				3CD8ACF12373F40400230A30 /* iPadCommonEditorCellTextView.xib in Resources */,
@@ -2153,7 +2129,6 @@
 				428980161E24924D005F1BD8 /* SortItemCell.m in Sources */,
 				7162A59D1C58733400AB630E /* OrderDetailViewController.m in Sources */,
 				42C72F67212A55090054722D /* RAPortfolioInputDialog.m in Sources */,
-				7141DD3B1C5726B700F7DF59 /* DeviceInfo.m in Sources */,
 				712AFEDC1DBA050200254965 /* PDFDrawable.m in Sources */,
 				7195623C1CF57D1800C74A49 /* CategoryHeaderView.m in Sources */,
 				3C3F4ED6276B334B00B091AE /* DatePickerViewController.m in Sources */,
@@ -2164,6 +2139,7 @@
 				3C3F4ED9276B335B00B091AE /* EnumSelectorCell.m in Sources */,
 				42BEF3581E89FE1200632AB6 /* GTMNSData+zlib.m in Sources */,
 				3C3F4EF0276B33EC00B091AE /* RTLabel.m in Sources */,
+				3C97F3202EC1DD5400BD9260 /* SceneDelegateBase.m in Sources */,
 				71DF742B1C57560600F2789C /* Reachability.m in Sources */,
 				7162A5701C58728D00AB630E /* DetailHeaderCell.m in Sources */,
 				71BBA2271CEAC16000C91DED /* ZipArchive.mm in Sources */,
@@ -2341,6 +2317,7 @@
 				7141DD501C57459B00F7DF59 /* QRCodeGenerator.m in Sources */,
 				715671331E10A0EF006324A0 /* RectDrawable.m in Sources */,
 				4289802B1E2492D2005F1BD8 /* CategoryPriceCell.m in Sources */,
+				3C97F3292EC1DD9300BD9260 /* SceneDelegate.m in Sources */,
 				7162A5DA1C5876E300AB630E /* AboutViewController.m in Sources */,
 				7141DD4E1C57459B00F7DF59 /* bitstream.c in Sources */,
 				71DF74851C57608F00F2789C /* ImageUploadViewController.m in Sources */,
@@ -2352,7 +2329,6 @@
 				3C9FFA39274796A00067830C /* ContentPreviewController.m in Sources */,
 				3C2F99AC237BE1320000808F /* PortfolioListTableViewCell.m in Sources */,
 				3C3F4EAA276B32C100B091AE /* EnumSelectAndSortCell.m in Sources */,
-				7141DD3C1C5726B700F7DF59 /* ScanApiHelper.mm in Sources */,
 				7162A5261C58706C00AB630E /* CategoryViewController.m in Sources */,
 				3CC7E75423C4133A00BE5561 /* RAPDFViewController.m in Sources */,
 				7162A50A1C586FC100AB630E /* NSTimer+Addition.m in Sources */,
@@ -2421,6 +2397,7 @@
 				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
 				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
 				COPY_PHASE_STRIP = NO;
+				DEVELOPMENT_TEAM = HXWLAA5YN5;
 				ENABLE_STRICT_OBJC_MSGSEND = YES;
 				ENABLE_TESTABILITY = YES;
 				ENABLE_USER_SCRIPT_SANDBOXING = YES;
@@ -2442,6 +2419,7 @@
 				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				ONLY_ACTIVE_ARCH = YES;
 				SDKROOT = iphoneos;
+				STRING_CATALOG_GENERATE_SYMBOLS = YES;
 				TARGETED_DEVICE_FAMILY = 2;
 			};
 			name = Debug;
@@ -2477,6 +2455,7 @@
 				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
 				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
 				COPY_PHASE_STRIP = YES;
+				DEVELOPMENT_TEAM = HXWLAA5YN5;
 				ENABLE_NS_ASSERTIONS = NO;
 				ENABLE_STRICT_OBJC_MSGSEND = YES;
 				ENABLE_USER_SCRIPT_SANDBOXING = YES;
@@ -2490,6 +2469,7 @@
 				GCC_WARN_UNUSED_VARIABLE = YES;
 				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				SDKROOT = iphoneos;
+				STRING_CATALOG_GENERATE_SYMBOLS = YES;
 				TARGETED_DEVICE_FAMILY = 2;
 				VALIDATE_PRODUCT = YES;
 			};
@@ -2503,7 +2483,6 @@
 				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
 				CODE_SIGN_STYLE = Automatic;
 				CURRENT_PROJECT_VERSION = 200502;
-				DEVELOPMENT_TEAM = HXWLAA5YN5;
 				FRAMEWORK_SEARCH_PATHS = (
 					"$(inherited)",
 					"$(PROJECT_DIR)/GoogleAnalytics/FirebaseAnalytics/Frameworks",
@@ -2549,7 +2528,6 @@
 				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
 				CODE_SIGN_STYLE = Automatic;
 				CURRENT_PROJECT_VERSION = 200502;
-				DEVELOPMENT_TEAM = HXWLAA5YN5;
 				FRAMEWORK_SEARCH_PATHS = (
 					"$(inherited)",
 					"$(PROJECT_DIR)/GoogleAnalytics/FirebaseAnalytics/Frameworks",

+ 50 - 39
RedAnt ERP Mobile/iSales-USAI.xcodeproj/project.pbxproj

@@ -64,6 +64,13 @@
 		3C70C08A2A2DC256008C2400 /* MessageBox.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C70C0872A2DC256008C2400 /* MessageBox.m */; };
 		3C70C08B2A2DC256008C2400 /* RAPopviewContainer.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C70C0882A2DC256008C2400 /* RAPopviewContainer.m */; };
 		3C7E5A8E237BDB0C006D0105 /* PortfolioListViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C7E5A8C237BDB0C006D0105 /* PortfolioListViewController.m */; };
+		3C97F31D2EC1DD3F00BD9260 /* SceneDelegateBase.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C97F31C2EC1DD3F00BD9260 /* SceneDelegateBase.m */; };
+		3C97F32C2EC1DDA900BD9260 /* SceneDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C97F32B2EC1DDA900BD9260 /* SceneDelegate.m */; };
+		3C97F3312EC1E2B300BD9260 /* commonScanner.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 3C97F32D2EC1E2B300BD9260 /* commonScanner.storyboard */; };
+		3C97F3322EC1E2B300BD9260 /* CommonScannerSettingViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C97F32F2EC1E2B300BD9260 /* CommonScannerSettingViewController.m */; };
+		3C97F3352EC1E2D900BD9260 /* wrong.wav in Resources */ = {isa = PBXBuildFile; fileRef = 3C97F3342EC1E2D900BD9260 /* wrong.wav */; };
+		3C97F3362EC1E2D900BD9260 /* add.wav in Resources */ = {isa = PBXBuildFile; fileRef = 3C97F3332EC1E2D900BD9260 /* add.wav */; };
+		3C97F33A2EC1E60200BD9260 /* softScanBeep.wav in Resources */ = {isa = PBXBuildFile; fileRef = 3C97F3392EC1E60200BD9260 /* softScanBeep.wav */; };
 		3CC1122B279163F4004ACA57 /* offline_order_new_contact.json in Resources */ = {isa = PBXBuildFile; fileRef = 3CC1122A279163F4004ACA57 /* offline_order_new_contact.json */; };
 		3CDDB25C273A564200681F78 /* DefaultTableHeaderView.m in Sources */ = {isa = PBXBuildFile; fileRef = 3CDDB25A273A564200681F78 /* DefaultTableHeaderView.m */; };
 		3CDDB262273A59DF00681F78 /* TouchImageView.m in Sources */ = {isa = PBXBuildFile; fileRef = 3CDDB260273A59DF00681F78 /* TouchImageView.m */; };
@@ -126,10 +133,6 @@
 		714036F921646B8C0029B10F /* AppDelegateBase.m in Sources */ = {isa = PBXBuildFile; fileRef = 714036F721646B8C0029B10F /* AppDelegateBase.m */; };
 		714036FC21646CFF0029B10F /* UIResponder+Router.m in Sources */ = {isa = PBXBuildFile; fileRef = 714036FA21646CFF0029B10F /* UIResponder+Router.m */; };
 		714037052164707E0029B10F /* MainHeaderViewColorPanel.m in Sources */ = {isa = PBXBuildFile; fileRef = 714037042164707D0029B10F /* MainHeaderViewColorPanel.m */; };
-		7141DD341C57269B00F7DF59 /* include in Resources */ = {isa = PBXBuildFile; fileRef = 7141DD331C57269B00F7DF59 /* include */; };
-		7141DD3B1C5726B700F7DF59 /* DeviceInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = 7141DD361C5726B700F7DF59 /* DeviceInfo.m */; };
-		7141DD3C1C5726B700F7DF59 /* ScanApiHelper.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7141DD381C5726B700F7DF59 /* ScanApiHelper.mm */; };
-		7141DD3D1C5726B700F7DF59 /* softScanBeep.wav in Resources */ = {isa = PBXBuildFile; fileRef = 7141DD3A1C5726B700F7DF59 /* softScanBeep.wav */; };
 		7141DD4E1C57459B00F7DF59 /* bitstream.c in Sources */ = {isa = PBXBuildFile; fileRef = 7141DD3E1C57459B00F7DF59 /* bitstream.c */; };
 		7141DD4F1C57459B00F7DF59 /* mask.c in Sources */ = {isa = PBXBuildFile; fileRef = 7141DD401C57459B00F7DF59 /* mask.c */; };
 		7141DD501C57459B00F7DF59 /* QRCodeGenerator.m in Sources */ = {isa = PBXBuildFile; fileRef = 7141DD431C57459B00F7DF59 /* QRCodeGenerator.m */; };
@@ -255,7 +258,6 @@
 		718716251C433D8B00F25860 /* ExternalAccessory.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 718716241C433D8B00F25860 /* ExternalAccessory.framework */; };
 		718716271C433D9700F25860 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 718716261C433D9700F25860 /* AudioToolbox.framework */; };
 		718716291C433DA400F25860 /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 718716281C433DA400F25860 /* AVFoundation.framework */; };
-		7187162C1C43428100F25860 /* libScanApiCore.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 718716221C433D5000F25860 /* libScanApiCore.a */; };
 		7195623C1CF57D1800C74A49 /* CategoryHeaderView.m in Sources */ = {isa = PBXBuildFile; fileRef = 7195623B1CF57D1800C74A49 /* CategoryHeaderView.m */; };
 		71BBA2271CEAC16000C91DED /* ZipArchive.mm in Sources */ = {isa = PBXBuildFile; fileRef = 71BBA2221CEAC16000C91DED /* ZipArchive.mm */; };
 		71BBA2291CEAC17E00C91DED /* libz.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = 71BBA2281CEAC17E00C91DED /* libz.tbd */; };
@@ -394,6 +396,16 @@
 		3C70C0882A2DC256008C2400 /* RAPopviewContainer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RAPopviewContainer.m; sourceTree = "<group>"; };
 		3C7E5A8C237BDB0C006D0105 /* PortfolioListViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = PortfolioListViewController.m; path = common/Functions/portfolio/PortfolioListViewController.m; sourceTree = SOURCE_ROOT; };
 		3C7E5A8D237BDB0C006D0105 /* PortfolioListViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PortfolioListViewController.h; path = common/Functions/portfolio/PortfolioListViewController.h; sourceTree = SOURCE_ROOT; };
+		3C97F31B2EC1DD3F00BD9260 /* SceneDelegateBase.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = SceneDelegateBase.h; path = common/SceneDelegateBase.h; sourceTree = SOURCE_ROOT; };
+		3C97F31C2EC1DD3F00BD9260 /* SceneDelegateBase.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; name = SceneDelegateBase.m; path = common/SceneDelegateBase.m; sourceTree = SOURCE_ROOT; };
+		3C97F32A2EC1DDA900BD9260 /* SceneDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SceneDelegate.h; sourceTree = "<group>"; };
+		3C97F32B2EC1DDA900BD9260 /* SceneDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = SceneDelegate.m; sourceTree = "<group>"; };
+		3C97F32D2EC1E2B300BD9260 /* commonScanner.storyboard */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; path = commonScanner.storyboard; sourceTree = "<group>"; };
+		3C97F32E2EC1E2B300BD9260 /* CommonScannerSettingViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CommonScannerSettingViewController.h; sourceTree = "<group>"; };
+		3C97F32F2EC1E2B300BD9260 /* CommonScannerSettingViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CommonScannerSettingViewController.m; sourceTree = "<group>"; };
+		3C97F3332EC1E2D900BD9260 /* add.wav */ = {isa = PBXFileReference; lastKnownFileType = audio.wav; name = add.wav; path = "iSales-CONTRAST/add.wav"; sourceTree = SOURCE_ROOT; };
+		3C97F3342EC1E2D900BD9260 /* wrong.wav */ = {isa = PBXFileReference; lastKnownFileType = audio.wav; name = wrong.wav; path = "iSales-CONTRAST/wrong.wav"; sourceTree = SOURCE_ROOT; };
+		3C97F3392EC1E60200BD9260 /* softScanBeep.wav */ = {isa = PBXFileReference; lastKnownFileType = audio.wav; name = softScanBeep.wav; path = "ScanApiSDK-10.2.227-2/softScanBeep.wav"; sourceTree = SOURCE_ROOT; };
 		3CBC872E2A4EBF0700978758 /* ScanRefreshStock.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = ScanRefreshStock.h; path = common/ScanRefreshStock.h; sourceTree = SOURCE_ROOT; };
 		3CC1122A279163F4004ACA57 /* offline_order_new_contact.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; name = offline_order_new_contact.json; path = common/Functions/contact/offline_order_new_contact.json; sourceTree = SOURCE_ROOT; };
 		3CDDB25A273A564200681F78 /* DefaultTableHeaderView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = DefaultTableHeaderView.m; path = ../../common/customUI/commoneditor/DefaultTableHeaderView.m; sourceTree = "<group>"; };
@@ -508,13 +520,6 @@
 		714036FB21646CFF0029B10F /* UIResponder+Router.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "UIResponder+Router.h"; path = "common/UIResponder+Router.h"; sourceTree = SOURCE_ROOT; };
 		714037032164707D0029B10F /* MainHeaderViewColorPanel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = MainHeaderViewColorPanel.h; path = common/Functions/MainHeaderViewColorPanel.h; sourceTree = SOURCE_ROOT; };
 		714037042164707D0029B10F /* MainHeaderViewColorPanel.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = MainHeaderViewColorPanel.m; path = common/Functions/MainHeaderViewColorPanel.m; sourceTree = SOURCE_ROOT; };
-		7141DD331C57269B00F7DF59 /* include */ = {isa = PBXFileReference; lastKnownFileType = folder; name = include; path = "ScanApiSDK-10.2.227-2/include"; sourceTree = SOURCE_ROOT; };
-		7141DD351C5726B700F7DF59 /* DeviceInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DeviceInfo.h; path = "ScanApiSDK-10.2.227-2/DeviceInfo.h"; sourceTree = SOURCE_ROOT; };
-		7141DD361C5726B700F7DF59 /* DeviceInfo.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = DeviceInfo.m; path = "ScanApiSDK-10.2.227-2/DeviceInfo.m"; sourceTree = SOURCE_ROOT; };
-		7141DD371C5726B700F7DF59 /* ScanApiHelper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ScanApiHelper.h; path = "ScanApiSDK-10.2.227-2/ScanApiHelper.h"; sourceTree = SOURCE_ROOT; };
-		7141DD381C5726B700F7DF59 /* ScanApiHelper.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = ScanApiHelper.mm; path = "ScanApiSDK-10.2.227-2/ScanApiHelper.mm"; sourceTree = SOURCE_ROOT; };
-		7141DD391C5726B700F7DF59 /* ScanApiIncludes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ScanApiIncludes.h; path = "ScanApiSDK-10.2.227-2/ScanApiIncludes.h"; sourceTree = SOURCE_ROOT; };
-		7141DD3A1C5726B700F7DF59 /* softScanBeep.wav */ = {isa = PBXFileReference; lastKnownFileType = audio.wav; name = softScanBeep.wav; path = "ScanApiSDK-10.2.227-2/softScanBeep.wav"; sourceTree = SOURCE_ROOT; };
 		7141DD3E1C57459B00F7DF59 /* bitstream.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = bitstream.c; path = common/qrcode/bitstream.c; sourceTree = SOURCE_ROOT; };
 		7141DD3F1C57459B00F7DF59 /* bitstream.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = bitstream.h; path = common/qrcode/bitstream.h; sourceTree = SOURCE_ROOT; };
 		7141DD401C57459B00F7DF59 /* mask.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = mask.c; path = common/qrcode/mask.c; sourceTree = SOURCE_ROOT; };
@@ -728,11 +733,9 @@
 		716AF8E61D7AA398001188E0 /* SelectOrderTableViewCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SelectOrderTableViewCell.h; path = common/Functions/offline/SelectOrderTableViewCell.h; sourceTree = SOURCE_ROOT; };
 		7186C25B1C97A6EE00CB43F4 /* FunctionTestViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = FunctionTestViewController.h; path = common/Functions/sidemenu/FunctionTestViewController.h; sourceTree = SOURCE_ROOT; };
 		7186C25C1C97A6EE00CB43F4 /* FunctionTestViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = FunctionTestViewController.m; path = common/Functions/sidemenu/FunctionTestViewController.m; sourceTree = SOURCE_ROOT; };
-		718716221C433D5000F25860 /* libScanApiCore.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libScanApiCore.a; path = ../lib/libScanApiCore.a; sourceTree = "<group>"; };
 		718716241C433D8B00F25860 /* ExternalAccessory.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ExternalAccessory.framework; path = System/Library/Frameworks/ExternalAccessory.framework; sourceTree = SDKROOT; };
 		718716261C433D9700F25860 /* AudioToolbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = System/Library/Frameworks/AudioToolbox.framework; sourceTree = SDKROOT; };
 		718716281C433DA400F25860 /* AVFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AVFoundation.framework; path = System/Library/Frameworks/AVFoundation.framework; sourceTree = SDKROOT; };
-		7187162A1C43406300F25860 /* libScanApiCore.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libScanApiCore.a; path = "../../../ios_samples/ScanApiSDK-10.2.227/lib/libScanApiCore.a"; sourceTree = "<group>"; };
 		7195623A1CF57D1800C74A49 /* CategoryHeaderView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CategoryHeaderView.h; path = common/Functions/category/CategoryHeaderView.h; sourceTree = SOURCE_ROOT; };
 		7195623B1CF57D1800C74A49 /* CategoryHeaderView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CategoryHeaderView.m; path = common/Functions/category/CategoryHeaderView.m; sourceTree = SOURCE_ROOT; };
 		71BBA2211CEAC16000C91DED /* ZipArchive.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ZipArchive.h; path = common/zip/ZipArchive.h; sourceTree = SOURCE_ROOT; };
@@ -823,7 +826,6 @@
 				42BEF35F1E89FEE300632AB6 /* CoreData.framework in Frameworks */,
 				42BEF35D1E89FECD00632AB6 /* SystemConfiguration.framework in Frameworks */,
 				71BBA2291CEAC17E00C91DED /* libz.tbd in Frameworks */,
-				7187162C1C43428100F25860 /* libScanApiCore.a in Frameworks */,
 				718716291C433DA400F25860 /* AVFoundation.framework in Frameworks */,
 				718716271C433D9700F25860 /* AudioToolbox.framework in Frameworks */,
 				718716251C433D8B00F25860 /* ExternalAccessory.framework in Frameworks */,
@@ -914,6 +916,17 @@
 			path = ../../common/MessageBox;
 			sourceTree = "<group>";
 		};
+		3C97F3302EC1E2B300BD9260 /* common Scanner */ = {
+			isa = PBXGroup;
+			children = (
+				3C97F32D2EC1E2B300BD9260 /* commonScanner.storyboard */,
+				3C97F32E2EC1E2B300BD9260 /* CommonScannerSettingViewController.h */,
+				3C97F32F2EC1E2B300BD9260 /* CommonScannerSettingViewController.m */,
+			);
+			name = "common Scanner";
+			path = "common/common Scanner";
+			sourceTree = SOURCE_ROOT;
+		};
 		4254CCDB1FB1AB6600C8B4B6 /* Order Editor */ = {
 			isa = PBXGroup;
 			children = (
@@ -1118,11 +1131,9 @@
 			isa = PBXGroup;
 			children = (
 				71BBA2281CEAC17E00C91DED /* libz.tbd */,
-				7187162A1C43406300F25860 /* libScanApiCore.a */,
 				718716281C433DA400F25860 /* AVFoundation.framework */,
 				718716261C433D9700F25860 /* AudioToolbox.framework */,
 				718716241C433D8B00F25860 /* ExternalAccessory.framework */,
-				718716221C433D5000F25860 /* libScanApiCore.a */,
 				716961B419594E1000B19FB4 /* libsqlite3.dylib */,
 				71DEE875192DE00E003F645F /* Accelerate.framework */,
 				71DEE873192DE003003F645F /* QuartzCore.framework */,
@@ -1138,11 +1149,14 @@
 		713F76AF1929F4A7006A7305 /* iSales-USAI */ = {
 			isa = PBXGroup;
 			children = (
+				3C97F3392EC1E60200BD9260 /* softScanBeep.wav */,
+				3C97F3332EC1E2D900BD9260 /* add.wav */,
+				3C97F3342EC1E2D900BD9260 /* wrong.wav */,
 				3CBC872E2A4EBF0700978758 /* ScanRefreshStock.h */,
+				3C97F3302EC1E2B300BD9260 /* common Scanner */,
 				71DF742C1C57567800F2789C /* USAI */,
 				712AFEE31DBDAEA000254965 /* PDFResource */,
 				716387C71953CDB4006E65E6 /* utils */,
-				718716141C433B4300F25860 /* ScanAPI */,
 				7190F1091BBBCAF100B2F243 /* PDF+Web */,
 				714C6ADA1B83016A000123E3 /* address */,
 				71F731FC192F395000F2CF76 /* AutoScrollImage */,
@@ -1168,6 +1182,10 @@
 				713F76B91929F4A7006A7305 /* AppDelegate.m */,
 				714036F821646B8C0029B10F /* AppDelegateBase.h */,
 				714036F721646B8C0029B10F /* AppDelegateBase.m */,
+				3C97F31B2EC1DD3F00BD9260 /* SceneDelegateBase.h */,
+				3C97F31C2EC1DD3F00BD9260 /* SceneDelegateBase.m */,
+				3C97F32A2EC1DDA900BD9260 /* SceneDelegate.h */,
+				3C97F32B2EC1DDA900BD9260 /* SceneDelegate.m */,
 				428980701E24B1E9005F1BD8 /* RASingleton.h */,
 				428980711E24B1E9005F1BD8 /* RASingleton.m */,
 				428980021E2490C1005F1BD8 /* NotificationNameCenter.h */,
@@ -1535,20 +1553,6 @@
 			name = customUI;
 			sourceTree = "<group>";
 		};
-		718716141C433B4300F25860 /* ScanAPI */ = {
-			isa = PBXGroup;
-			children = (
-				7141DD351C5726B700F7DF59 /* DeviceInfo.h */,
-				7141DD361C5726B700F7DF59 /* DeviceInfo.m */,
-				7141DD371C5726B700F7DF59 /* ScanApiHelper.h */,
-				7141DD381C5726B700F7DF59 /* ScanApiHelper.mm */,
-				7141DD391C5726B700F7DF59 /* ScanApiIncludes.h */,
-				7141DD3A1C5726B700F7DF59 /* softScanBeep.wav */,
-				7141DD331C57269B00F7DF59 /* include */,
-			);
-			name = ScanAPI;
-			sourceTree = "<group>";
-		};
 		7190F1091BBBCAF100B2F243 /* PDF+Web */ = {
 			isa = PBXGroup;
 			children = (
@@ -1848,7 +1852,7 @@
 			isa = PBXProject;
 			attributes = {
 				BuildIndependentTargetsInParallel = YES;
-				LastUpgradeCheck = 1430;
+				LastUpgradeCheck = 2610;
 				ORGANIZATIONNAME = "United Software Applications, Inc";
 				TargetAttributes = {
 					713F76A51929F4A7006A7305 = {
@@ -1910,6 +1914,8 @@
 				3C68316D2396094200AD5BD7 /* iPadCommonEditorCellTextView.xib in Resources */,
 				3C68315C2396082800AD5BD7 /* ERP_Mobile_Portfolio.storyboard in Resources */,
 				7143E221202FD28900451903 /* placeOrderTemplate.json in Resources */,
+				3C97F3352EC1E2D900BD9260 /* wrong.wav in Resources */,
+				3C97F3362EC1E2D900BD9260 /* add.wav in Resources */,
 				7161FEB51D61B24900157EE1 /* creditcardpayment.html in Resources */,
 				7143E227202FD2CA00451903 /* portfolio_3x2.json in Resources */,
 				7143E21A202FD1DC00451903 /* contactAdvanceSearch.json in Resources */,
@@ -1921,10 +1927,8 @@
 				3CC1122B279163F4004ACA57 /* offline_order_new_contact.json in Resources */,
 				3C6831562396082800AD5BD7 /* ERP_Mobile_Discard.storyboard in Resources */,
 				7162A55F1C58724700AB630E /* customer_info_template.json in Resources */,
-				7141DD3D1C5726B700F7DF59 /* softScanBeep.wav in Resources */,
 				3C68316F2396094200AD5BD7 /* iPadCommonEditorCellModel.xib in Resources */,
 				4295AE1D1FE74D46007BE365 /* CommonEditorAutoCompleteView.xib in Resources */,
-				7141DD341C57269B00F7DF59 /* include in Resources */,
 				7141DD601C5747CE00F7DF59 /* LICENSE in Resources */,
 				3C68314D239607B500AD5BD7 /* ytplayer.html in Resources */,
 				71D01ADD1E08CB1C006620CE /* signature.storyboard in Resources */,
@@ -1945,7 +1949,9 @@
 				7143E21B202FD1DC00451903 /* createContact.json in Resources */,
 				7162A55E1C58724700AB630E /* customer_advanced_search.json in Resources */,
 				3C514961273D09E700F78617 /* CommonEditor.storyboard in Resources */,
+				3C97F33A2EC1E60200BD9260 /* softScanBeep.wav in Resources */,
 				3C68316E2396094200AD5BD7 /* iPadCommonEditorCellAction.xib in Resources */,
+				3C97F3312EC1E2B300BD9260 /* commonScanner.storyboard in Resources */,
 				7143E22E202FD3CD00451903 /* more_info.html in Resources */,
 				7143E21D202FD21F00451903 /* editContact.json in Resources */,
 				7162A5A11C58733400AB630E /* offline_status_filter_cadedate.json in Resources */,
@@ -1970,7 +1976,6 @@
 				3C51495C273D099600F78617 /* EnumSelectorCell.m in Sources */,
 				3C51494C273D095900F78617 /* CommonEditorCellMAction.m in Sources */,
 				7162A59D1C58733400AB630E /* OrderDetailViewController.m in Sources */,
-				7141DD3B1C5726B700F7DF59 /* DeviceInfo.m in Sources */,
 				714037052164707E0029B10F /* MainHeaderViewColorPanel.m in Sources */,
 				712AFEDC1DBA050200254965 /* PDFDrawable.m in Sources */,
 				7195623C1CF57D1800C74A49 /* CategoryHeaderView.m in Sources */,
@@ -2074,6 +2079,7 @@
 				7162A54B1C58719D00AB630E /* RAViewController.m in Sources */,
 				71BBA2411CEAEF0700C91DED /* mztools.c in Sources */,
 				7162A59C1C58733400AB630E /* OrderDetailPriceCell.m in Sources */,
+				3C97F31D2EC1DD3F00BD9260 /* SceneDelegateBase.m in Sources */,
 				715850461CF6F0E500856B20 /* DefaultAppearance.m in Sources */,
 				3C7E5A8E237BDB0C006D0105 /* PortfolioListViewController.m in Sources */,
 				4295AE1C1FE74D46007BE365 /* CommonEditorAutoCompleteView.m in Sources */,
@@ -2085,6 +2091,7 @@
 				3C514995273E091500F78617 /* PhotoPreviewCell.m in Sources */,
 				7162A5751C58728D00AB630E /* LineView.m in Sources */,
 				712AFEDD1DBA050200254965 /* RAPDFPage.m in Sources */,
+				3C97F3322EC1E2B300BD9260 /* CommonScannerSettingViewController.m in Sources */,
 				428980481E249339005F1BD8 /* JKMessageBoxController.m in Sources */,
 				7162A5741C58728D00AB630E /* DetailViewController.m in Sources */,
 				71DF748E1C57608F00F2789C /* UILabel+FontAppearance.m in Sources */,
@@ -2116,6 +2123,7 @@
 				71DF74971C57614C00F2789C /* PhotoStackView.m in Sources */,
 				7162A50B1C586FC100AB630E /* SliderPage.m in Sources */,
 				712BABF31C897E3A0007466B /* CategorySearchFilterViewController.m in Sources */,
+				3C97F32C2EC1DDA900BD9260 /* SceneDelegate.m in Sources */,
 				71DF74981C57614C00F2789C /* PhotoStackViewController.m in Sources */,
 				428980151E24924D005F1BD8 /* SortButton.m in Sources */,
 				3C514980273E07D600F78617 /* EnumModel.m in Sources */,
@@ -2163,7 +2171,6 @@
 				7162A5181C58704600AB630E /* CartViewController.m in Sources */,
 				42BF67CC1E5179970081F90A /* ERPUtils.m in Sources */,
 				42FD1A031FBD1A3000C5D9A8 /* RAOrderPreviewController.m in Sources */,
-				7141DD3C1C5726B700F7DF59 /* ScanApiHelper.mm in Sources */,
 				7162A5261C58706C00AB630E /* CategoryViewController.m in Sources */,
 				7162A50A1C586FC100AB630E /* NSTimer+Addition.m in Sources */,
 				3C514949273D095900F78617 /* CommonEditorCellEnum.m in Sources */,
@@ -2232,8 +2239,10 @@
 				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
 				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
 				COPY_PHASE_STRIP = NO;
+				DEVELOPMENT_TEAM = HXWLAA5YN5;
 				ENABLE_STRICT_OBJC_MSGSEND = YES;
 				ENABLE_TESTABILITY = YES;
+				ENABLE_USER_SCRIPT_SANDBOXING = YES;
 				GCC_C_LANGUAGE_STANDARD = gnu99;
 				GCC_DYNAMIC_NO_PIC = NO;
 				GCC_NO_COMMON_BLOCKS = YES;
@@ -2258,6 +2267,7 @@
 				LIBRARY_SEARCH_PATHS = "$(PROJECT_DIR)/ScanApiSDK-10.2.227-2/lib";
 				ONLY_ACTIVE_ARCH = YES;
 				SDKROOT = iphoneos;
+				STRING_CATALOG_GENERATE_SYMBOLS = YES;
 				TARGETED_DEVICE_FAMILY = 2;
 			};
 			name = Debug;
@@ -2293,8 +2303,10 @@
 				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
 				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
 				COPY_PHASE_STRIP = YES;
+				DEVELOPMENT_TEAM = HXWLAA5YN5;
 				ENABLE_NS_ASSERTIONS = NO;
 				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				ENABLE_USER_SCRIPT_SANDBOXING = YES;
 				GCC_C_LANGUAGE_STANDARD = gnu99;
 				GCC_NO_COMMON_BLOCKS = YES;
 				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
@@ -2311,6 +2323,7 @@
 				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				LIBRARY_SEARCH_PATHS = "$(PROJECT_DIR)/ScanApiSDK-10.2.227-2/lib";
 				SDKROOT = iphoneos;
+				STRING_CATALOG_GENERATE_SYMBOLS = YES;
 				TARGETED_DEVICE_FAMILY = 2;
 				VALIDATE_PRODUCT = YES;
 			};
@@ -2323,7 +2336,6 @@
 				CODE_SIGN_IDENTITY = "iPhone Developer";
 				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
 				CURRENT_PROJECT_VERSION = 200119;
-				DEVELOPMENT_TEAM = HXWLAA5YN5;
 				FRAMEWORK_SEARCH_PATHS = (
 					"$(inherited)",
 					"$(PROJECT_DIR)/GoogleAnalytics/FirebaseAnalytics/Frameworks",
@@ -2370,7 +2382,6 @@
 				CODE_SIGN_IDENTITY = "iPhone Developer";
 				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
 				CURRENT_PROJECT_VERSION = 200119;
-				DEVELOPMENT_TEAM = HXWLAA5YN5;
 				FRAMEWORK_SEARCH_PATHS = (
 					"$(inherited)",
 					"$(PROJECT_DIR)/GoogleAnalytics/FirebaseAnalytics/Frameworks",

+ 17 - 0
RedAnt ERP Mobile/iSales-USAI/SceneDelegate.h

@@ -0,0 +1,17 @@
+//
+//  SceneDelegate.h
+//  iSales-USAI
+//
+//  Created by Rui Zhang on 11/10/25.
+//  Copyright © 2025 United Software Applications, Inc. All rights reserved.
+//
+
+#import "SceneDelegateBase.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface SceneDelegate : SceneDelegateBase
+
+@end
+
+NS_ASSUME_NONNULL_END

+ 13 - 0
RedAnt ERP Mobile/iSales-USAI/SceneDelegate.m

@@ -0,0 +1,13 @@
+//
+//  SceneDelegate.m
+//  iSales-USAI
+//
+//  Created by Rui Zhang on 11/10/25.
+//  Copyright © 2025 United Software Applications, Inc. All rights reserved.
+//
+
+#import "SceneDelegate.h"
+
+@implementation SceneDelegate
+
+@end

+ 1 - 0
RedAnt ERP Mobile/iSales-USAI/config.h

@@ -12,6 +12,7 @@
 #define BACKORDER_PROCESS // 允许backorder process
 #define JSON_TIMEOUT 60
 
+#define USE_BLE_SCANNER
 #define RA_NOTIFICATION
 
 # ifdef DEBUG

+ 19 - 0
RedAnt ERP Mobile/iSales-USAI/iSales-USAI-Info.plist

@@ -2,6 +2,25 @@
 <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
 <plist version="1.0">
 <dict>
+    <key>UIApplicationSceneManifest</key>
+    <dict>
+        <key>UIApplicationSupportsMultipleScenes</key>
+        <false/>
+        <key>UISceneConfigurations</key>
+        <dict>
+            <key>UIWindowSceneSessionRoleApplication</key>
+            <array>
+                <dict>
+                    <key>UISceneConfigurationName</key>
+                    <string>Default Configuration</string>
+                    <key>UISceneDelegateClassName</key>
+                    <string>SceneDelegate</string>
+                    <key>UISceneStoryboardFile</key>
+                    <string>Main</string>
+                </dict>
+            </array>
+        </dict>
+    </dict>
 	<key>CFBundleDevelopmentRegion</key>
 	<string>en</string>
 	<key>CFBundleDisplayName</key>

BIN
RedAnt ERP Mobile/iSales-USAI/softScanBeep.wav


+ 17 - 0
RedAnt ERP Mobile/iSales-UWAVER/SceneDelegate.h

@@ -0,0 +1,17 @@
+//
+//  SceneDelegate.h
+//  iSales-UWAVER
+//
+//  Created by Rui Zhang on 11/10/25.
+//  Copyright © 2025 United Software Applications, Inc. All rights reserved.
+//
+
+#import "SceneDelegateBase.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface SceneDelegate : SceneDelegateBase
+
+@end
+
+NS_ASSUME_NONNULL_END

+ 13 - 0
RedAnt ERP Mobile/iSales-UWAVER/SceneDelegate.m

@@ -0,0 +1,13 @@
+//
+//  SceneDelegate.m
+//  iSales-UWAVER
+//
+//  Created by Rui Zhang on 11/10/25.
+//  Copyright © 2025 United Software Applications, Inc. All rights reserved.
+//
+
+#import "SceneDelegate.h"
+
+@implementation SceneDelegate
+
+@end

+ 19 - 0
RedAnt ERP Mobile/iSales-UWAVER/iSales-UWAVER-Info.plist

@@ -2,6 +2,25 @@
 <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
 <plist version="1.0">
 <dict>
+    <key>UIApplicationSceneManifest</key>
+    <dict>
+        <key>UIApplicationSupportsMultipleScenes</key>
+        <false/>
+        <key>UISceneConfigurations</key>
+        <dict>
+            <key>UIWindowSceneSessionRoleApplication</key>
+            <array>
+                <dict>
+                    <key>UISceneConfigurationName</key>
+                    <string>Default Configuration</string>
+                    <key>UISceneDelegateClassName</key>
+                    <string>SceneDelegate</string>
+                    <key>UISceneStoryboardFile</key>
+                    <string>Main</string>
+                </dict>
+            </array>
+        </dict>
+    </dict>
 	<key>CFBundleDevelopmentRegion</key>
 	<string>en</string>
 	<key>CFBundleDisplayName</key>

+ 1 - 1
common/MenuViewController.h

@@ -8,7 +8,7 @@
 
 #import <UIKit/UIKit.h>
 
-@interface MenuViewController : UIViewController<UITableViewDelegate,UITableViewDataSource>
+@interface MenuViewController UIViewController<UITableViewDelegate,UITableViewDataSource>
 @property (strong, nonatomic) UITableView* tableView;
 //@property (assign, nonatomic) CGRect frame;
 @property (strong, nonatomic) NSMutableArray* arr_menuItems;

+ 13 - 1
common/NetworkUtils.m

@@ -369,7 +369,7 @@ repeat:
     [requestM addValue:[NSString stringWithFormat:@"%lu", (unsigned long)[data length]] forHTTPHeaderField:@"Content-Length"];
     
     // request body
-    requestM.HTTPBody = data;
+//    requestM.HTTPBody = data;
     
     
     
@@ -397,6 +397,18 @@ repeat:
     
     NSURLSessionDataTask *dataTask = [urlSession uploadTaskWithRequest:requestM fromData:data];
     
+    
+//    NSMutableURLRequest *requestM = [NSMutableURLRequest requestWithURL:url];
+//    requestM.HTTPMethod = @"POST";
+//    [requestM setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
+    // 不要设置 HTTPBody 和 HTTPBodyStream
+
+    // 数据通过参数传递
+//    NSURLSessionUploadTask *dataTask = [urlSession uploadTaskWithRequest:requestM fromData:data];
+    [dataTask resume];
+    
+    
+    
     [dataTask resume];
     
     return dataTask;

+ 6 - 1
common/QRCode/RAQRCodeScannerViewController.m

@@ -153,7 +153,12 @@
     [super viewWillAppear:animated];
     
     if (self.scannerInitial) {
-        [self.session startRunning];
+//        [self.session startRunning];
+        
+        
+        dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
+            [self.session startRunning];
+        });
     }
 }
 

+ 1 - 1
common/ScannerControllerView.h

@@ -8,6 +8,6 @@
 
 #import <UIKit/UIKit.h>
 
-@interface ScannerControllerView : UIView
+@interface ScannerControllerView: UIView
 @property CGRect highLightRect;
 @end

+ 112 - 55
common/ScannerViewController.m

@@ -59,65 +59,122 @@
     return false;
     
 }
+
 - (void)viewWillTransitionToSize:(CGSize)size withTransitionCoordinator:(id<UIViewControllerTransitionCoordinator>)coordinator
 {
-//    [coordinator animateAlongsideTransition:^(id<UIViewControllerTransitionCoordinatorContext> context)
-//    {
-//        UIInterfaceOrientation orientation = [[UIApplication sharedApplication] statusBarOrientation];
-//        // do whatever
-//    } completion:^(id<UIViewControllerTransitionCoordinatorContext> context)
-//    {
-//
-//    }];
-    CGRect rect=self.view.bounds;
-    
-    DebugLog(@"%@",NSStringFromCGRect(self.focusZone.frame));
-    //    rect.origin.y=rect.origin.y+40;
-    //    rect.size.height = rect.size.height-40;
-    
-    
-    
-    
-    
-    
-    
-    [CATransaction begin];
-    [CATransaction setAnimationDuration:0.5];
-    [CATransaction setAnimationTimingFunction:[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut]];
-//    [self updatePreviewLayerForOrientation:toInterfaceOrientation];
-    _previewLayer.position = CGPointMake(CGRectGetMidX(rect), CGRectGetMidY(rect));
-    
- //   self.backgroundView.highLightRect = CGRectInset(self.focusZone.frame,6,6);
-    _previewLayer.bounds = rect;
-    
-    UIInterfaceOrientation orientation = [[UIApplication sharedApplication]statusBarOrientation];
-    switch (orientation) {
-            
-            
-            
-        case UIInterfaceOrientationPortrait:
-           // [_previewLayer setAffineTransform:CGAffineTransformMakeRotation(0)];
-           
-            _previewLayer.connection.videoOrientation=AVCaptureVideoOrientationPortrait;
-            break;
-        case UIInterfaceOrientationPortraitUpsideDown:
-            //[_previewLayer setAffineTransform:CGAffineTransformMakeRotation(M_PI)];
-            _previewLayer.connection.videoOrientation=AVCaptureVideoOrientationPortraitUpsideDown;
-            break;
-        case UIInterfaceOrientationLandscapeLeft:
-           // [_previewLayer setAffineTransform:CGAffineTransformMakeRotation(M_PI/2)];
-            _previewLayer.connection.videoOrientation=AVCaptureVideoOrientationLandscapeLeft;
-            break;
-        case UIInterfaceOrientationLandscapeRight:
-           // [_previewLayer setAffineTransform:CGAffineTransformMakeRotation(-M_PI/2)];
-            _previewLayer.connection.videoOrientation=AVCaptureVideoOrientationLandscapeRight;
-            break;
-        default:
-            break;
-    }
-    [CATransaction commit];
     [super viewWillTransitionToSize:size withTransitionCoordinator:coordinator];
+    
+    [coordinator animateAlongsideTransition:^(id<UIViewControllerTransitionCoordinatorContext> context) {
+        
+        // 使用新的方法获取设备方向
+        UIInterfaceOrientation orientation;
+//        if (@available(iOS 13.0, *)) {
+            UIWindowScene *windowScene = (UIWindowScene *)self.view.window.windowScene;
+            orientation = windowScene.interfaceOrientation;
+//        } else {
+//            orientation = [[UIApplication sharedApplication] statusBarOrientation];
+//        }
+        
+        // 计算新的 rect
+        CGRect rect = CGRectMake(0, 0, size.width, size.height);
+        
+        DebugLog(@"%@", NSStringFromCGRect(self.focusZone.frame));
+        
+        [CATransaction begin];
+        [CATransaction setDisableActions:YES]; // 禁用隐式动画,使用 coordinator 的动画
+        
+        // 更新 previewLayer
+        self->_previewLayer.position = CGPointMake(CGRectGetMidX(rect), CGRectGetMidY(rect));
+        self->_previewLayer.bounds = rect;
+        
+        // 设置视频方向
+        switch (orientation) {
+            case UIInterfaceOrientationPortrait:
+                self->_previewLayer.connection.videoOrientation = AVCaptureVideoOrientationPortrait;
+                break;
+                
+            case UIInterfaceOrientationPortraitUpsideDown:
+                self->_previewLayer.connection.videoOrientation = AVCaptureVideoOrientationPortraitUpsideDown;
+                break;
+                
+            case UIInterfaceOrientationLandscapeLeft:
+                self->_previewLayer.connection.videoOrientation = AVCaptureVideoOrientationLandscapeLeft;
+                break;
+                
+            case UIInterfaceOrientationLandscapeRight:
+                self->_previewLayer.connection.videoOrientation = AVCaptureVideoOrientationLandscapeRight;
+                break;
+                
+            default:
+                break;
+        }
+        
+        [CATransaction commit];
+        
+    } completion:^(id<UIViewControllerTransitionCoordinatorContext> context) {
+        // 转场完成后的操作(如果需要)
+    }];
 }
+//
+//- (void)viewWillTransitionToSize:(CGSize)size withTransitionCoordinator:(id<UIViewControllerTransitionCoordinator>)coordinator
+//{
+////    [coordinator animateAlongsideTransition:^(id<UIViewControllerTransitionCoordinatorContext> context)
+////    {
+////        UIInterfaceOrientation orientation = [[UIApplication sharedApplication] statusBarOrientation];
+////        // do whatever
+////    } completion:^(id<UIViewControllerTransitionCoordinatorContext> context)
+////    {
+////
+////    }];
+//    CGRect rect=self.view.bounds;
+//    
+//    DebugLog(@"%@",NSStringFromCGRect(self.focusZone.frame));
+//    //    rect.origin.y=rect.origin.y+40;
+//    //    rect.size.height = rect.size.height-40;
+//    
+//    
+//    
+//    
+//    
+//    
+//    
+//    [CATransaction begin];
+//    [CATransaction setAnimationDuration:0.5];
+//    [CATransaction setAnimationTimingFunction:[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut]];
+////    [self updatePreviewLayerForOrientation:toInterfaceOrientation];
+//    _previewLayer.position = CGPointMake(CGRectGetMidX(rect), CGRectGetMidY(rect));
+//    
+// //   self.backgroundView.highLightRect = CGRectInset(self.focusZone.frame,6,6);
+//    _previewLayer.bounds = rect;
+//    
+////    UIInterfaceOrientation orientation = [[UIApplication sharedApplication]statusBarOrientation];
+////    switch (orientation) {
+////            
+////            
+////            
+////        case UIInterfaceOrientationPortrait:
+////           // [_previewLayer setAffineTransform:CGAffineTransformMakeRotation(0)];
+////           
+////            _previewLayer.connection.videoOrientation=AVCaptureVideoOrientationPortrait;
+////            break;
+////        case UIInterfaceOrientationPortraitUpsideDown:
+////            //[_previewLayer setAffineTransform:CGAffineTransformMakeRotation(M_PI)];
+////            _previewLayer.connection.videoOrientation=AVCaptureVideoOrientationPortraitUpsideDown;
+////            break;
+////        case UIInterfaceOrientationLandscapeLeft:
+////           // [_previewLayer setAffineTransform:CGAffineTransformMakeRotation(M_PI/2)];
+////            _previewLayer.connection.videoOrientation=AVCaptureVideoOrientationLandscapeLeft;
+////            break;
+////        case UIInterfaceOrientationLandscapeRight:
+////           // [_previewLayer setAffineTransform:CGAffineTransformMakeRotation(-M_PI/2)];
+////            _previewLayer.connection.videoOrientation=AVCaptureVideoOrientationLandscapeRight;
+////            break;
+////        default:
+////            break;
+////    }
+//    [CATransaction commit];
+//    [super viewWillTransitionToSize:size withTransitionCoordinator:coordinator];
+//}
 //-(void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation
 //{
 //    

+ 12 - 13
common/customUI/CommonEditoriPad/iPadCommonEditorCellEdit.xib

@@ -1,9 +1,8 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="15505" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
-    <device id="retina6_1" orientation="portrait" appearance="light"/>
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="24412" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
+    <device id="ipad10_9rounded" orientation="portrait" layout="fullscreen" appearance="light"/>
     <dependencies>
-        <deployment identifier="iOS"/>
-        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="15509"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="24405"/>
         <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
     </dependencies>
     <objects>
@@ -17,7 +16,7 @@
                 <autoresizingMask key="autoresizingMask"/>
                 <subviews>
                     <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="fL6-tx-Kra">
-                        <rect key="frame" x="20" y="11" width="150" height="22"/>
+                        <rect key="frame" x="16" y="12" width="150" height="20"/>
                         <constraints>
                             <constraint firstAttribute="width" constant="150" id="KZb-Fy-KQu"/>
                         </constraints>
@@ -26,12 +25,15 @@
                         <nil key="highlightedColor"/>
                     </label>
                     <textField opaque="NO" clipsSubviews="YES" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" borderStyle="roundedRect" textAlignment="right" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="M3G-Ug-G2R">
-                        <rect key="frame" x="176" y="7" width="577" height="30"/>
+                        <rect key="frame" x="172" y="5" width="581" height="34"/>
                         <fontDescription key="fontDescription" type="system" pointSize="14"/>
                         <textInputTraits key="textInputTraits"/>
                     </textField>
                     <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="*" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Fn3-wg-iDG">
-                        <rect key="frame" x="10" y="11" width="10" height="22"/>
+                        <rect key="frame" x="6" y="12" width="10" height="20"/>
+                        <constraints>
+                            <constraint firstAttribute="height" constant="20" id="HWe-Wv-dnt"/>
+                        </constraints>
                         <fontDescription key="fontDescription" type="system" pointSize="25"/>
                         <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                         <nil key="highlightedColor"/>
@@ -40,12 +42,9 @@
                 <constraints>
                     <constraint firstItem="fL6-tx-Kra" firstAttribute="leading" secondItem="Fn3-wg-iDG" secondAttribute="trailing" id="0Zo-MU-LmH"/>
                     <constraint firstItem="M3G-Ug-G2R" firstAttribute="leading" secondItem="fL6-tx-Kra" secondAttribute="trailing" constant="6" id="0Zt-QG-cFL"/>
-                    <constraint firstItem="fL6-tx-Kra" firstAttribute="centerY" secondItem="M3G-Ug-G2R" secondAttribute="centerY" id="89C-mF-brU"/>
-                    <constraint firstItem="Fn3-wg-iDG" firstAttribute="bottom" secondItem="fL6-tx-Kra" secondAttribute="bottom" id="Nje-Sd-oSw"/>
-                    <constraint firstItem="Fn3-wg-iDG" firstAttribute="centerY" secondItem="qaW-zg-uss" secondAttribute="centerY" id="NlI-uo-ncW"/>
-                    <constraint firstItem="Fn3-wg-iDG" firstAttribute="top" secondItem="qaW-zg-uss" secondAttribute="topMargin" id="UJh-sh-vQ6"/>
-                    <constraint firstItem="M3G-Ug-G2R" firstAttribute="top" secondItem="qaW-zg-uss" secondAttribute="topMargin" constant="-4" id="dZQ-qV-sbP"/>
-                    <constraint firstItem="Fn3-wg-iDG" firstAttribute="top" secondItem="fL6-tx-Kra" secondAttribute="top" id="hIk-6t-b6R"/>
+                    <constraint firstItem="fL6-tx-Kra" firstAttribute="centerY" secondItem="qaW-zg-uss" secondAttribute="centerY" id="2iz-5u-hIN"/>
+                    <constraint firstItem="M3G-Ug-G2R" firstAttribute="centerY" secondItem="fL6-tx-Kra" secondAttribute="centerY" id="K9W-7b-s3y"/>
+                    <constraint firstItem="fL6-tx-Kra" firstAttribute="centerY" secondItem="Fn3-wg-iDG" secondAttribute="centerY" id="Rrp-U3-VCy"/>
                     <constraint firstAttribute="trailing" secondItem="M3G-Ug-G2R" secondAttribute="trailing" constant="15" id="lau-4a-lYv"/>
                     <constraint firstItem="fL6-tx-Kra" firstAttribute="leading" secondItem="qaW-zg-uss" secondAttribute="leadingMargin" id="rw1-4F-tfQ"/>
                 </constraints>

+ 14 - 11
common/customUI/CommonEditoriPad/iPadCommonEditorCellEnum.xib

@@ -1,9 +1,8 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="15505" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
-    <device id="retina6_1" orientation="portrait" appearance="light"/>
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="24412" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
+    <device id="ipad10_9rounded" orientation="portrait" layout="fullscreen" appearance="light"/>
     <dependencies>
-        <deployment identifier="iOS"/>
-        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="15509"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="24405"/>
         <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
     </dependencies>
     <objects>
@@ -17,20 +16,27 @@
                 <autoresizingMask key="autoresizingMask"/>
                 <subviews>
                     <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="zfL-5h-iEw">
-                        <rect key="frame" x="176" y="11" width="577" height="22"/>
+                        <rect key="frame" x="172" y="12" width="581" height="20"/>
+                        <constraints>
+                            <constraint firstAttribute="height" constant="20" id="NKW-pq-XDn"/>
+                        </constraints>
                         <fontDescription key="fontDescription" type="system" pointSize="17"/>
                         <nil key="highlightedColor"/>
                     </label>
                     <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="1zr-en-PY0">
-                        <rect key="frame" x="20" y="11" width="150" height="22"/>
+                        <rect key="frame" x="16" y="12" width="150" height="20"/>
                         <constraints>
                             <constraint firstAttribute="width" constant="150" id="4dX-2E-Xxl"/>
+                            <constraint firstAttribute="height" constant="20" id="xHx-3S-L0e"/>
                         </constraints>
                         <fontDescription key="fontDescription" type="system" pointSize="17"/>
                         <nil key="highlightedColor"/>
                     </label>
                     <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="*" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="ICj-f8-Y0M">
-                        <rect key="frame" x="10" y="11" width="10" height="22"/>
+                        <rect key="frame" x="6" y="12" width="10" height="20"/>
+                        <constraints>
+                            <constraint firstAttribute="height" constant="20" id="WgZ-3X-nRl"/>
+                        </constraints>
                         <fontDescription key="fontDescription" type="system" pointSize="25"/>
                         <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                         <nil key="highlightedColor"/>
@@ -40,11 +46,8 @@
                     <constraint firstItem="1zr-en-PY0" firstAttribute="centerY" secondItem="6aK-hw-jaW" secondAttribute="centerY" id="3C4-hd-ahe"/>
                     <constraint firstItem="1zr-en-PY0" firstAttribute="leading" secondItem="6aK-hw-jaW" secondAttribute="leadingMargin" id="5Ua-j3-v9f"/>
                     <constraint firstAttribute="trailing" secondItem="zfL-5h-iEw" secondAttribute="trailing" constant="15" id="GBq-dZ-TJU"/>
-                    <constraint firstItem="1zr-en-PY0" firstAttribute="baseline" secondItem="zfL-5h-iEw" secondAttribute="baseline" id="I1E-BT-iNf"/>
-                    <constraint firstItem="ICj-f8-Y0M" firstAttribute="baseline" secondItem="zfL-5h-iEw" secondAttribute="firstBaseline" id="Jio-dY-HEL"/>
-                    <constraint firstItem="1zr-en-PY0" firstAttribute="top" secondItem="6aK-hw-jaW" secondAttribute="topMargin" id="RnP-DH-QJJ"/>
+                    <constraint firstItem="zfL-5h-iEw" firstAttribute="centerY" secondItem="6aK-hw-jaW" secondAttribute="centerY" id="HgO-lA-yTB"/>
                     <constraint firstItem="zfL-5h-iEw" firstAttribute="leading" secondItem="1zr-en-PY0" secondAttribute="trailing" constant="6" id="XOI-Lg-qT1"/>
-                    <constraint firstItem="ICj-f8-Y0M" firstAttribute="baseline" secondItem="1zr-en-PY0" secondAttribute="firstBaseline" id="ggI-Eg-R5l"/>
                     <constraint firstItem="ICj-f8-Y0M" firstAttribute="centerY" secondItem="6aK-hw-jaW" secondAttribute="centerY" id="t1d-lZ-l1L"/>
                     <constraint firstItem="1zr-en-PY0" firstAttribute="leading" secondItem="ICj-f8-Y0M" secondAttribute="trailing" id="xOD-rn-LqY"/>
                 </constraints>

+ 7 - 20
common/customUI/CommonEditoriPad/iPadCommonEditorCellLabel.xib

@@ -1,9 +1,8 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="15705" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
-    <device id="retina6_1" orientation="portrait" appearance="light"/>
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="24412" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
+    <device id="ipad10_9rounded" orientation="portrait" layout="fullscreen" appearance="light"/>
     <dependencies>
-        <deployment identifier="iOS"/>
-        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="15706"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="24405"/>
         <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
     </dependencies>
     <objects>
@@ -16,34 +15,22 @@
                 <rect key="frame" x="0.0" y="0.0" width="768" height="44"/>
                 <autoresizingMask key="autoresizingMask"/>
                 <subviews>
-                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="EgP-sJ-Rae">
-                        <rect key="frame" x="20" y="11" width="150" height="22"/>
+                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" verticalHuggingPriority="251" text="Label" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="B4j-tW-HM9">
+                        <rect key="frame" x="711.5" y="12" width="41.5" height="20"/>
                         <constraints>
-                            <constraint firstAttribute="width" relation="greaterThanOrEqual" constant="150" id="NZ1-Rj-XRd"/>
+                            <constraint firstAttribute="height" constant="20" id="q0m-fJ-qeU"/>
                         </constraints>
                         <fontDescription key="fontDescription" type="system" pointSize="17"/>
                         <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                         <nil key="highlightedColor"/>
                     </label>
-                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" verticalHuggingPriority="251" text="Label" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="B4j-tW-HM9">
-                        <rect key="frame" x="178" y="10" width="575" height="23"/>
-                        <fontDescription key="fontDescription" type="system" pointSize="17"/>
-                        <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
-                        <nil key="highlightedColor"/>
-                    </label>
                 </subviews>
                 <constraints>
-                    <constraint firstItem="EgP-sJ-Rae" firstAttribute="top" secondItem="1gG-px-9wA" secondAttribute="topMargin" id="8ZC-MS-lmC"/>
-                    <constraint firstItem="EgP-sJ-Rae" firstAttribute="centerY" secondItem="1gG-px-9wA" secondAttribute="centerY" id="IZS-VQ-x1U"/>
-                    <constraint firstItem="B4j-tW-HM9" firstAttribute="top" secondItem="1gG-px-9wA" secondAttribute="topMargin" constant="-1" id="L66-AC-ZXz"/>
-                    <constraint firstItem="EgP-sJ-Rae" firstAttribute="leading" secondItem="1gG-px-9wA" secondAttribute="leadingMargin" id="OKZ-xe-5iX"/>
-                    <constraint firstItem="B4j-tW-HM9" firstAttribute="leading" secondItem="EgP-sJ-Rae" secondAttribute="trailing" constant="8" id="XV2-RV-hwC"/>
-                    <constraint firstItem="B4j-tW-HM9" firstAttribute="baseline" secondItem="EgP-sJ-Rae" secondAttribute="baseline" id="mAO-iO-Ud0"/>
+                    <constraint firstItem="B4j-tW-HM9" firstAttribute="centerY" secondItem="1gG-px-9wA" secondAttribute="centerY" id="gNq-tD-5k4"/>
                     <constraint firstAttribute="trailing" secondItem="B4j-tW-HM9" secondAttribute="trailing" constant="15" id="wFb-Xo-7jS"/>
                 </constraints>
             </tableViewCellContentView>
             <connections>
-                <outlet property="labelTitle" destination="EgP-sJ-Rae" id="sDy-V2-8bG"/>
                 <outlet property="labelValue" destination="B4j-tW-HM9" id="l7Q-c4-eeu"/>
             </connections>
             <point key="canvasLocation" x="132" y="154"/>

+ 16 - 15
common/customUI/CommonEditoriPad/iPadCommonEditorCellModel.xib

@@ -1,8 +1,8 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="21225" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="24412" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
     <device id="ipad9_7" orientation="portrait" layout="fullscreen" appearance="light"/>
     <dependencies>
-        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="21207"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="24405"/>
         <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
     </dependencies>
     <objects>
@@ -11,12 +11,12 @@
         <tableViewCell contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" reuseIdentifier="CommonEditorCellModel" rowHeight="140" id="Vb5-DF-E1M" customClass="CommonEditorCellModel">
             <rect key="frame" x="0.0" y="0.0" width="768" height="140"/>
             <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
-            <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="Vb5-DF-E1M" id="eSO-cn-6Wf">
+            <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" ambiguous="YES" tableViewCell="Vb5-DF-E1M" id="eSO-cn-6Wf">
                 <rect key="frame" x="0.0" y="0.0" width="768" height="140"/>
                 <autoresizingMask key="autoresizingMask"/>
                 <subviews>
                     <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="hlq-ia-5c5">
-                        <rect key="frame" x="20" y="20" width="100" height="100"/>
+                        <rect key="frame" x="20" y="24" width="100" height="100"/>
                         <constraints>
                             <constraint firstAttribute="height" constant="100" id="2nB-jy-l3j"/>
                             <constraint firstAttribute="width" constant="100" id="hnj-4y-1UR"/>
@@ -24,12 +24,12 @@
                         </constraints>
                     </imageView>
                     <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="name&amp;description" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="4Eu-9D-ElM">
-                        <rect key="frame" x="128" y="15" width="318" height="81"/>
+                        <rect key="frame" x="128" y="19" width="318" height="81"/>
                         <fontDescription key="fontDescription" type="system" pointSize="17"/>
                         <nil key="highlightedColor"/>
                     </label>
                     <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="1234567.00" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="jXY-8A-c0T">
-                        <rect key="frame" x="617" y="45" width="129" height="21"/>
+                        <rect key="frame" x="617" y="49" width="129" height="21"/>
                         <constraints>
                             <constraint firstAttribute="width" constant="129" id="Pe3-Bx-PCD"/>
                         </constraints>
@@ -37,7 +37,7 @@
                         <nil key="highlightedColor"/>
                     </label>
                     <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="x9999" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Qde-5C-KXh">
-                        <rect key="frame" x="617" y="75" width="129" height="21"/>
+                        <rect key="frame" x="617" y="79" width="129" height="21"/>
                         <constraints>
                             <constraint firstAttribute="width" constant="129" id="ZYv-27-RoT"/>
                         </constraints>
@@ -45,7 +45,7 @@
                         <nil key="highlightedColor"/>
                     </label>
                     <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Masert pack:9999" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="DiR-zl-kj1">
-                        <rect key="frame" x="461.5" y="15" width="141" height="21"/>
+                        <rect key="frame" x="461.5" y="19" width="141" height="21"/>
                         <constraints>
                             <constraint firstAttribute="height" constant="21" id="wOR-Sp-CYC"/>
                         </constraints>
@@ -54,7 +54,7 @@
                         <nil key="highlightedColor"/>
                     </label>
                     <label hidden="YES" opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="$1234567.00" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="MWP-U1-4gi" customClass="StrikethroughLabel">
-                        <rect key="frame" x="481" y="45" width="102" height="21"/>
+                        <rect key="frame" x="481" y="49" width="102" height="21"/>
                         <constraints>
                             <constraint firstAttribute="width" constant="102" id="5bU-IV-Rxk"/>
                             <constraint firstAttribute="height" constant="21" id="XRD-Qo-vCb"/>
@@ -64,7 +64,7 @@
                         <nil key="highlightedColor"/>
                     </label>
                     <label hidden="YES" opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Discount 99.99% off" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="3a4-O9-TRc">
-                        <rect key="frame" x="454" y="75" width="156" height="21"/>
+                        <rect key="frame" x="454" y="79" width="156" height="21"/>
                         <constraints>
                             <constraint firstAttribute="width" constant="156" id="PU8-TM-Mdm"/>
                         </constraints>
@@ -73,7 +73,7 @@
                         <nil key="highlightedColor"/>
                     </label>
                     <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Price ($)" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="31Q-hs-9l0">
-                        <rect key="frame" x="617" y="15" width="129" height="21"/>
+                        <rect key="frame" x="617" y="19" width="129" height="21"/>
                         <constraints>
                             <constraint firstAttribute="width" constant="129" id="FhP-22-jAx"/>
                         </constraints>
@@ -82,28 +82,29 @@
                         <nil key="highlightedColor"/>
                     </label>
                     <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="123456789.00" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="N4y-kV-Abh">
-                        <rect key="frame" x="617" y="106" width="129" height="21"/>
+                        <rect key="frame" x="617" y="110" width="129" height="20"/>
                         <constraints>
+                            <constraint firstAttribute="height" constant="20" id="AO5-qr-0Q8"/>
                             <constraint firstAttribute="width" constant="129" id="qRX-yv-b8F"/>
                         </constraints>
                         <fontDescription key="fontDescription" type="system" pointSize="17"/>
                         <nil key="highlightedColor"/>
                     </label>
                     <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="cdV-EN-AC5">
-                        <rect key="frame" x="128" y="102" width="46" height="29"/>
+                        <rect key="frame" x="128" y="106" width="46" height="28"/>
                         <state key="normal" title="Button"/>
                         <connections>
                             <action selector="onClickBundle:" destination="Vb5-DF-E1M" eventType="touchUpInside" id="VBL-I9-GQ8"/>
                         </connections>
                     </button>
                     <label hidden="YES" opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Backorder" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="GqP-L3-Ygz">
-                        <rect key="frame" x="342.5" y="105.5" width="83" height="22"/>
+                        <rect key="frame" x="342.5" y="109" width="83" height="22"/>
                         <fontDescription key="fontDescription" type="system" pointSize="18"/>
                         <color key="textColor" red="1" green="0.14913141730000001" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                         <nil key="highlightedColor"/>
                     </label>
                     <label hidden="YES" opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Mpack:9999" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Ja9-Ui-f2b">
-                        <rect key="frame" x="461.5" y="106" width="141" height="21"/>
+                        <rect key="frame" x="461.5" y="109.5" width="141" height="21"/>
                         <fontDescription key="fontDescription" type="system" pointSize="17"/>
                         <nil key="textColor"/>
                         <nil key="highlightedColor"/>

+ 10 - 8
common/customUI/CommonEditoriPad/iPadCommonEditorCellTextView.xib

@@ -1,9 +1,8 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="15505" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
-    <device id="retina6_1" orientation="portrait" appearance="light"/>
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="24412" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
+    <device id="ipad10_9rounded" orientation="portrait" layout="fullscreen" appearance="light"/>
     <dependencies>
-        <deployment identifier="iOS"/>
-        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="15509"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="24405"/>
         <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
     </dependencies>
     <objects>
@@ -17,7 +16,7 @@
                 <autoresizingMask key="autoresizingMask"/>
                 <subviews>
                     <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="ynT-HB-xgE">
-                        <rect key="frame" x="15" y="59.5" width="150" height="21"/>
+                        <rect key="frame" x="16" y="59.5" width="150" height="21"/>
                         <constraints>
                             <constraint firstAttribute="width" constant="150" id="Q9a-IR-LoH"/>
                         </constraints>
@@ -26,13 +25,16 @@
                         <nil key="highlightedColor"/>
                     </label>
                     <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="*" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="DOT-zs-tpc">
-                        <rect key="frame" x="5" y="55" width="10" height="30"/>
+                        <rect key="frame" x="6" y="60" width="10" height="20"/>
+                        <constraints>
+                            <constraint firstAttribute="height" constant="20" id="UFP-1u-4Kc"/>
+                        </constraints>
                         <fontDescription key="fontDescription" type="system" pointSize="25"/>
                         <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                         <nil key="highlightedColor"/>
                     </label>
                     <textView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" showsHorizontalScrollIndicator="NO" textAlignment="natural" translatesAutoresizingMaskIntoConstraints="NO" id="0JA-ml-Kpn">
-                        <rect key="frame" x="171" y="6" width="582" height="128"/>
+                        <rect key="frame" x="172" y="6" width="581" height="128"/>
                         <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                         <string key="text">Lorem ipsum dolor sit er elit lamet, consectetaur cillium adipisicing pecu, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. Nam liber te conscient to factor tum poen legum odioque civiuda.</string>
                         <fontDescription key="fontDescription" type="system" pointSize="17"/>
@@ -42,7 +44,7 @@
                 </subviews>
                 <constraints>
                     <constraint firstAttribute="trailing" secondItem="0JA-ml-Kpn" secondAttribute="trailing" constant="15" id="1eA-3p-tba"/>
-                    <constraint firstItem="ynT-HB-xgE" firstAttribute="leading" secondItem="7fN-xI-RZM" secondAttribute="leadingMargin" constant="-5" id="Hqb-Hw-oj8"/>
+                    <constraint firstItem="ynT-HB-xgE" firstAttribute="leading" secondItem="7fN-xI-RZM" secondAttribute="leadingMargin" id="Hqb-Hw-oj8"/>
                     <constraint firstItem="0JA-ml-Kpn" firstAttribute="top" secondItem="7fN-xI-RZM" secondAttribute="top" constant="6" id="OEl-X2-s9C"/>
                     <constraint firstItem="ynT-HB-xgE" firstAttribute="centerY" secondItem="7fN-xI-RZM" secondAttribute="centerY" id="RIB-Jc-YPa"/>
                     <constraint firstItem="ynT-HB-xgE" firstAttribute="leading" secondItem="DOT-zs-tpc" secondAttribute="trailing" id="bwP-sV-hQK"/>

+ 90 - 89
common/customUI/commoneditor/CommonEditor.storyboard

@@ -1,9 +1,8 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="22505" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
-    <device id="retina6_12" orientation="portrait" appearance="light"/>
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="24412" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
+    <device id="ipad10_9rounded" orientation="portrait" layout="fullscreen" appearance="light"/>
     <dependencies>
-        <deployment identifier="iOS"/>
-        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="22504"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="24405"/>
         <capability name="Safe area layout guides" minToolsVersion="9.0"/>
         <capability name="System colors in document resources" minToolsVersion="11.0"/>
         <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
@@ -14,11 +13,11 @@
             <objects>
                 <viewController storyboardIdentifier="DatePickerViewController" title="Select Date" useStoryboardIdentifierAsRestorationIdentifier="YES" id="hDO-yf-YYU" customClass="DatePickerViewController" sceneMemberID="viewController">
                     <view key="view" contentMode="scaleToFill" id="SzR-aC-W21">
-                        <rect key="frame" x="0.0" y="0.0" width="393" height="852"/>
+                        <rect key="frame" x="0.0" y="0.0" width="820" height="1180"/>
                         <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
                         <subviews>
                             <datePicker contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" datePickerMode="dateAndTime" minuteInterval="1" translatesAutoresizingMaskIntoConstraints="NO" id="92Z-Po-m6V">
-                                <rect key="frame" x="36.666666666666657" y="132" width="320" height="216"/>
+                                <rect key="frame" x="250" y="97" width="320" height="216"/>
                                 <constraints>
                                     <constraint firstAttribute="height" constant="216" id="i19-IZ-5lG"/>
                                     <constraint firstAttribute="width" constant="320" id="kgj-3V-Kud"/>
@@ -28,7 +27,7 @@
                                 </connections>
                             </datePicker>
                             <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="cRS-hn-ulf">
-                                <rect key="frame" x="0.0" y="103" width="393" height="21"/>
+                                <rect key="frame" x="0.0" y="68" width="820" height="21"/>
                                 <constraints>
                                     <constraint firstAttribute="height" constant="21" id="wIP-4K-hIU"/>
                                 </constraints>
@@ -37,7 +36,7 @@
                                 <nil key="highlightedColor"/>
                             </label>
                             <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="pXA-kN-pBh">
-                                <rect key="frame" x="142.66666666666666" y="542" width="108" height="39"/>
+                                <rect key="frame" x="356" y="507" width="108" height="39"/>
                                 <constraints>
                                     <constraint firstAttribute="height" constant="39" id="MQB-L6-0h7"/>
                                     <constraint firstAttribute="width" constant="108" id="XQI-LU-ubc"/>
@@ -76,11 +75,11 @@
             <objects>
                 <viewController storyboardIdentifier="TearSheetParamViewController" autoresizesArchivedViewToFullSize="NO" title="TearSheetParamViewController" useStoryboardIdentifierAsRestorationIdentifier="YES" id="6QI-1v-YnK" customClass="TearSheetParamViewController" sceneMemberID="viewController">
                     <view key="view" contentMode="scaleToFill" id="5tu-uj-zDA">
-                        <rect key="frame" x="0.0" y="0.0" width="393" height="852"/>
+                        <rect key="frame" x="0.0" y="0.0" width="820" height="1180"/>
                         <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
                         <subviews>
                             <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="fRq-qQ-HYw" customClass="CommonEditorTableContainerView">
-                                <rect key="frame" x="0.0" y="59" width="393" height="759"/>
+                                <rect key="frame" x="0.0" y="24" width="820" height="1106"/>
                                 <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                             </view>
                         </subviews>
@@ -109,11 +108,11 @@
             <objects>
                 <viewController storyboardIdentifier="CustomerInfoViewController" title="CustomerInfoViewController" useStoryboardIdentifierAsRestorationIdentifier="YES" id="iDP-Ox-Rb4" customClass="CustomerInfoViewController" sceneMemberID="viewController">
                     <view key="view" contentMode="scaleToFill" id="XtO-XI-aMh">
-                        <rect key="frame" x="0.0" y="0.0" width="393" height="852"/>
+                        <rect key="frame" x="0.0" y="0.0" width="820" height="1180"/>
                         <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
                         <subviews>
                             <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="DDb-ec-Hh3" customClass="CommonEditorTableContainerView">
-                                <rect key="frame" x="0.0" y="59" width="393" height="759"/>
+                                <rect key="frame" x="0.0" y="24" width="820" height="1106"/>
                                 <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                             </view>
                         </subviews>
@@ -156,33 +155,33 @@
             <objects>
                 <viewController storyboardIdentifier="TearSheetParamViewController_bak" autoresizesArchivedViewToFullSize="NO" title="TearSheetParamViewController" useStoryboardIdentifierAsRestorationIdentifier="YES" id="4fm-pj-gzK" customClass="TearSheetParamViewController" sceneMemberID="viewController">
                     <view key="view" contentMode="scaleToFill" id="gVZ-mi-d3e">
-                        <rect key="frame" x="0.0" y="0.0" width="393" height="852"/>
+                        <rect key="frame" x="0.0" y="0.0" width="820" height="1180"/>
                         <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
                         <subviews>
                             <tableView clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="grouped" separatorStyle="default" rowHeight="44" sectionHeaderHeight="10" sectionFooterHeight="10" translatesAutoresizingMaskIntoConstraints="NO" id="cVR-ie-r6g">
-                                <rect key="frame" x="-4" y="59" width="401" height="759"/>
+                                <rect key="frame" x="0.0" y="24" width="820" height="1106"/>
                                 <color key="backgroundColor" red="0.93725490199999995" green="0.93725490199999995" blue="0.95686274510000002" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                 <prototypes>
                                     <tableViewCell contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" reuseIdentifier="CommonEditorCellModel" rowHeight="140" id="Oph-ee-jLz" customClass="CommonEditorCellModel">
-                                        <rect key="frame" x="0.0" y="55.333332061767578" width="401" height="140"/>
+                                        <rect key="frame" x="0.0" y="55.5" width="820" height="140"/>
                                         <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
                                         <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="Oph-ee-jLz" id="QtW-xN-XkR">
-                                            <rect key="frame" x="0.0" y="0.0" width="401" height="140"/>
+                                            <rect key="frame" x="0.0" y="0.0" width="820" height="140"/>
                                             <autoresizingMask key="autoresizingMask"/>
                                             <subviews>
                                                 <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="xyL-8k-wtS">
-                                                    <rect key="frame" x="20" y="20" width="51" height="100"/>
+                                                    <rect key="frame" x="20" y="24" width="92" height="92"/>
                                                     <constraints>
                                                         <constraint firstAttribute="width" secondItem="xyL-8k-wtS" secondAttribute="height" multiplier="1:1" id="dGT-ht-cQx"/>
                                                     </constraints>
                                                 </imageView>
                                                 <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="name&amp;description" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="kQY-cC-a1O">
-                                                    <rect key="frame" x="79" y="15" width="0.0" height="81"/>
+                                                    <rect key="frame" x="120" y="19" width="378" height="74"/>
                                                     <fontDescription key="fontDescription" type="system" pointSize="17"/>
                                                     <nil key="highlightedColor"/>
                                                 </label>
                                                 <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="1234567.00" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="JbR-cP-27F">
-                                                    <rect key="frame" x="250" y="45" width="129" height="21"/>
+                                                    <rect key="frame" x="669" y="45.5" width="129" height="21"/>
                                                     <constraints>
                                                         <constraint firstAttribute="width" constant="129" id="t8p-9t-a80"/>
                                                     </constraints>
@@ -190,7 +189,7 @@
                                                     <nil key="highlightedColor"/>
                                                 </label>
                                                 <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="x9999" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="upV-Ia-ppl">
-                                                    <rect key="frame" x="250" y="75" width="129" height="21"/>
+                                                    <rect key="frame" x="669" y="72" width="129" height="21"/>
                                                     <constraints>
                                                         <constraint firstAttribute="width" constant="129" id="PJs-pk-O8n"/>
                                                     </constraints>
@@ -198,7 +197,7 @@
                                                     <nil key="highlightedColor"/>
                                                 </label>
                                                 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Masert pack:9999" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="r8P-zz-ghp">
-                                                    <rect key="frame" x="94.666666666666686" y="15" width="141" height="21"/>
+                                                    <rect key="frame" x="513.5" y="19" width="141" height="17.5"/>
                                                     <constraints>
                                                         <constraint firstAttribute="height" constant="21" id="d98-wP-8OV"/>
                                                     </constraints>
@@ -207,7 +206,7 @@
                                                     <nil key="highlightedColor"/>
                                                 </label>
                                                 <label hidden="YES" opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="$1234567.00" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="jGx-Zc-PSC" customClass="StrikethroughLabel">
-                                                    <rect key="frame" x="114" y="45" width="102" height="21"/>
+                                                    <rect key="frame" x="533" y="45.5" width="102" height="21"/>
                                                     <constraints>
                                                         <constraint firstAttribute="width" constant="102" id="h0I-FO-Hjp"/>
                                                         <constraint firstAttribute="height" constant="21" id="xQ5-3U-Tdd"/>
@@ -217,7 +216,7 @@
                                                     <nil key="highlightedColor"/>
                                                 </label>
                                                 <label hidden="YES" opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Discount 99.99% off" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="qQ7-Xt-Okx">
-                                                    <rect key="frame" x="87" y="75" width="156" height="21"/>
+                                                    <rect key="frame" x="506" y="72" width="156" height="21"/>
                                                     <constraints>
                                                         <constraint firstAttribute="width" constant="156" id="Y2G-ca-pwa"/>
                                                     </constraints>
@@ -226,7 +225,7 @@
                                                     <nil key="highlightedColor"/>
                                                 </label>
                                                 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Price ($)" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="3Bs-vh-lne">
-                                                    <rect key="frame" x="250" y="15" width="129" height="21"/>
+                                                    <rect key="frame" x="669" y="15.5" width="129" height="21"/>
                                                     <constraints>
                                                         <constraint firstAttribute="width" constant="129" id="iQr-Bp-uSa"/>
                                                     </constraints>
@@ -235,7 +234,7 @@
                                                     <nil key="highlightedColor"/>
                                                 </label>
                                                 <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="123456789.00" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Zni-Ef-gpT">
-                                                    <rect key="frame" x="250" y="106" width="129" height="21"/>
+                                                    <rect key="frame" x="669" y="103" width="129" height="20"/>
                                                     <constraints>
                                                         <constraint firstAttribute="width" constant="129" id="xqH-Td-DCZ"/>
                                                     </constraints>
@@ -243,7 +242,7 @@
                                                     <nil key="highlightedColor"/>
                                                 </label>
                                                 <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="6Yw-LP-Zra">
-                                                    <rect key="frame" x="79" y="102" width="46" height="29"/>
+                                                    <rect key="frame" x="120" y="99" width="46" height="28"/>
                                                     <state key="normal" title="Button"/>
                                                     <connections>
                                                         <action selector="onClickBundle:" destination="Oph-ee-jLz" eventType="touchUpInside" id="2lX-bY-x79"/>
@@ -293,14 +292,14 @@
                                         </connections>
                                     </tableViewCell>
                                     <tableViewCell contentMode="scaleToFill" restorationIdentifier="CommonEditorCellAction" selectionStyle="default" indentationWidth="10" reuseIdentifier="CommonEditorCellAction" id="ssj-oz-bAi" customClass="CommonEditorCellAction">
-                                        <rect key="frame" x="0.0" y="195.33333206176758" width="401" height="44"/>
+                                        <rect key="frame" x="0.0" y="195.5" width="820" height="44"/>
                                         <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
                                         <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="ssj-oz-bAi" id="vUH-NQ-LZ9">
-                                            <rect key="frame" x="0.0" y="0.0" width="401" height="44"/>
+                                            <rect key="frame" x="0.0" y="0.0" width="820" height="44"/>
                                             <autoresizingMask key="autoresizingMask"/>
                                             <subviews>
                                                 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="GAc-U7-8pe">
-                                                    <rect key="frame" x="8" y="11" width="385" height="22"/>
+                                                    <rect key="frame" x="8" y="15" width="804" height="14"/>
                                                     <fontDescription key="fontDescription" type="system" pointSize="17"/>
                                                     <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                                     <nil key="highlightedColor"/>
@@ -319,27 +318,27 @@
                                         </connections>
                                     </tableViewCell>
                                     <tableViewCell contentMode="scaleToFill" restorationIdentifier="CommonEditorCellMAction" selectionStyle="default" indentationWidth="10" reuseIdentifier="CommonEditorCellMAction" id="07f-ff-k30" customClass="CommonEditorCellMAction">
-                                        <rect key="frame" x="0.0" y="239.33333206176758" width="401" height="44"/>
+                                        <rect key="frame" x="0.0" y="239.5" width="820" height="44"/>
                                         <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
                                         <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="07f-ff-k30" id="Ume-mi-cJc">
-                                            <rect key="frame" x="0.0" y="0.0" width="401" height="44"/>
+                                            <rect key="frame" x="0.0" y="0.0" width="820" height="44"/>
                                             <autoresizingMask key="autoresizingMask"/>
                                             <subviews>
                                                 <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="CnD-CA-7GQ" userLabel="action0">
-                                                    <rect key="frame" x="381" y="7" width="0.0" height="30"/>
+                                                    <rect key="frame" x="583" y="7" width="221" height="30"/>
                                                     <color key="backgroundColor" red="0.59999999999999998" green="0.40000000000000002" blue="0.20000000000000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                                     <state key="normal" title="Button">
                                                         <color key="titleColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                                     </state>
                                                 </button>
                                                 <button opaque="NO" tag="3" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="Hv6-Vm-wzL" userLabel="action3">
-                                                    <rect key="frame" x="20" y="7" width="165" height="30"/>
+                                                    <rect key="frame" x="16" y="7" width="169" height="30"/>
                                                     <color key="backgroundColor" red="0.59999999999999998" green="0.40000000000000002" blue="0.20000000000000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                                     <state key="normal" title="Button">
                                                         <color key="titleColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                                     </state>
                                                 </button>
-                                                <button opaque="NO" tag="1" contentMode="scaleToFill" ambiguous="YES" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="bPv-vc-eg3" userLabel="action1">
+                                                <button opaque="NO" tag="1" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="bPv-vc-eg3" userLabel="action1">
                                                     <rect key="frame" x="393" y="7" width="170" height="30"/>
                                                     <color key="backgroundColor" red="0.59999999999999998" green="0.40000000000000002" blue="0.20000000000000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                                     <constraints>
@@ -349,7 +348,7 @@
                                                         <color key="titleColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                                     </state>
                                                 </button>
-                                                <button opaque="NO" tag="2" contentMode="scaleToFill" ambiguous="YES" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="fb7-qu-iUy" userLabel="action2">
+                                                <button opaque="NO" tag="2" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="fb7-qu-iUy" userLabel="action2">
                                                     <rect key="frame" x="204" y="7" width="170" height="30"/>
                                                     <color key="backgroundColor" red="0.59999999999999998" green="0.40000000000000002" blue="0.20000000000000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                                     <constraints>
@@ -381,14 +380,14 @@
                                         </connections>
                                     </tableViewCell>
                                     <tableViewCell contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" reuseIdentifier="CommonEditorCellLabel" id="6Qk-ct-Qby" customClass="CommonEditorCellLabel">
-                                        <rect key="frame" x="0.0" y="283.33333206176758" width="401" height="44"/>
+                                        <rect key="frame" x="0.0" y="283.5" width="820" height="44"/>
                                         <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
                                         <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="6Qk-ct-Qby" id="RHD-Jr-MC2">
-                                            <rect key="frame" x="0.0" y="0.0" width="401" height="44"/>
+                                            <rect key="frame" x="0.0" y="0.0" width="820" height="44"/>
                                             <autoresizingMask key="autoresizingMask"/>
                                             <subviews>
                                                 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Eto-n8-WRZ">
-                                                    <rect key="frame" x="20" y="11" width="150" height="22"/>
+                                                    <rect key="frame" x="16" y="15" width="150" height="14"/>
                                                     <constraints>
                                                         <constraint firstAttribute="width" constant="150" id="kc1-sp-Hhv"/>
                                                     </constraints>
@@ -397,7 +396,7 @@
                                                     <nil key="highlightedColor"/>
                                                 </label>
                                                 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="XSt-jY-jcF">
-                                                    <rect key="frame" x="178" y="10" width="208" height="23"/>
+                                                    <rect key="frame" x="174" y="14" width="631" height="15"/>
                                                     <fontDescription key="fontDescription" type="system" pointSize="17"/>
                                                     <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                                     <nil key="highlightedColor"/>
@@ -419,14 +418,14 @@
                                         </connections>
                                     </tableViewCell>
                                     <tableViewCell contentMode="scaleToFill" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="CommonEditorCellEdit" rowHeight="44" id="PEs-Tx-N1l" customClass="CommonEditorCellEdit">
-                                        <rect key="frame" x="0.0" y="327.33333206176758" width="401" height="44"/>
+                                        <rect key="frame" x="0.0" y="327.5" width="820" height="44"/>
                                         <autoresizingMask key="autoresizingMask"/>
                                         <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="PEs-Tx-N1l" id="g6q-oB-WEG">
-                                            <rect key="frame" x="0.0" y="0.0" width="401" height="44"/>
+                                            <rect key="frame" x="0.0" y="0.0" width="820" height="44"/>
                                             <autoresizingMask key="autoresizingMask"/>
                                             <subviews>
                                                 <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="E0p-Rv-1zb">
-                                                    <rect key="frame" x="20" y="11" width="150" height="22"/>
+                                                    <rect key="frame" x="16" y="15" width="150" height="14"/>
                                                     <constraints>
                                                         <constraint firstAttribute="width" constant="150" id="fRO-qS-a7v"/>
                                                     </constraints>
@@ -435,12 +434,12 @@
                                                     <nil key="highlightedColor"/>
                                                 </label>
                                                 <textField opaque="NO" clipsSubviews="YES" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" borderStyle="roundedRect" textAlignment="right" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="HoV-0G-uys">
-                                                    <rect key="frame" x="176" y="7" width="210" height="30"/>
+                                                    <rect key="frame" x="172" y="11" width="633" height="22"/>
                                                     <fontDescription key="fontDescription" type="system" pointSize="14"/>
                                                     <textInputTraits key="textInputTraits"/>
                                                 </textField>
                                                 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="*" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Igi-Fb-ILh">
-                                                    <rect key="frame" x="10" y="11" width="10" height="22"/>
+                                                    <rect key="frame" x="6" y="15" width="10" height="14"/>
                                                     <fontDescription key="fontDescription" type="system" pointSize="25"/>
                                                     <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                                     <nil key="highlightedColor"/>
@@ -466,19 +465,19 @@
                                         </connections>
                                     </tableViewCell>
                                     <tableViewCell contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" reuseIdentifier="CommonEditorCellEnum" id="9AR-rS-Bcu" customClass="CommonEditorCellEnum">
-                                        <rect key="frame" x="0.0" y="371.33333206176758" width="401" height="44"/>
+                                        <rect key="frame" x="0.0" y="371.5" width="820" height="44"/>
                                         <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
                                         <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="9AR-rS-Bcu" id="jAQ-Sk-bhV">
-                                            <rect key="frame" x="0.0" y="0.0" width="401" height="44"/>
+                                            <rect key="frame" x="0.0" y="0.0" width="820" height="44"/>
                                             <autoresizingMask key="autoresizingMask"/>
                                             <subviews>
                                                 <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="fsV-Kc-L7Z">
-                                                    <rect key="frame" x="176" y="11" width="210" height="22"/>
+                                                    <rect key="frame" x="172" y="15" width="633" height="14"/>
                                                     <fontDescription key="fontDescription" type="system" pointSize="17"/>
                                                     <nil key="highlightedColor"/>
                                                 </label>
                                                 <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="68s-LN-X9p">
-                                                    <rect key="frame" x="20" y="11" width="150" height="22"/>
+                                                    <rect key="frame" x="16" y="15" width="150" height="14"/>
                                                     <constraints>
                                                         <constraint firstAttribute="width" constant="150" id="eEm-0D-Kmg"/>
                                                     </constraints>
@@ -486,7 +485,7 @@
                                                     <nil key="highlightedColor"/>
                                                 </label>
                                                 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="*" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="shN-OG-xWN">
-                                                    <rect key="frame" x="10" y="10.333333333333334" width="10" height="23.333333333333329"/>
+                                                    <rect key="frame" x="6" y="7" width="10" height="30"/>
                                                     <fontDescription key="fontDescription" type="system" pointSize="25"/>
                                                     <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                                     <nil key="highlightedColor"/>
@@ -512,14 +511,14 @@
                                         </connections>
                                     </tableViewCell>
                                     <tableViewCell contentMode="scaleToFill" restorationIdentifier="CommonEditorCellTextView" selectionStyle="default" indentationWidth="10" reuseIdentifier="CommonEditorCellTextView" rowHeight="140" id="dmX-be-8Su" customClass="CommonEditorCellTextView">
-                                        <rect key="frame" x="0.0" y="415.33333206176758" width="401" height="140"/>
+                                        <rect key="frame" x="0.0" y="415.5" width="820" height="140"/>
                                         <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
                                         <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="dmX-be-8Su" id="OGD-ef-ifx">
-                                            <rect key="frame" x="0.0" y="0.0" width="401" height="140"/>
+                                            <rect key="frame" x="0.0" y="0.0" width="820" height="140"/>
                                             <autoresizingMask key="autoresizingMask"/>
                                             <subviews>
                                                 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="GKX-OM-LDl">
-                                                    <rect key="frame" x="20" y="53" width="150" height="21"/>
+                                                    <rect key="frame" x="16" y="57" width="150" height="21"/>
                                                     <constraints>
                                                         <constraint firstAttribute="width" constant="150" id="ABR-Cl-OHU"/>
                                                     </constraints>
@@ -528,13 +527,13 @@
                                                     <nil key="highlightedColor"/>
                                                 </label>
                                                 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="*" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="pma-ii-OXW">
-                                                    <rect key="frame" x="178" y="59" width="10" height="22"/>
+                                                    <rect key="frame" x="174" y="63" width="10" height="14"/>
                                                     <fontDescription key="fontDescription" type="system" pointSize="25"/>
                                                     <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                                     <nil key="highlightedColor"/>
                                                 </label>
                                                 <textView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" showsHorizontalScrollIndicator="NO" editable="NO" textAlignment="natural" translatesAutoresizingMaskIntoConstraints="NO" id="Exn-gg-C5X">
-                                                    <rect key="frame" x="176" y="6" width="210" height="128"/>
+                                                    <rect key="frame" x="172" y="10" width="633" height="120"/>
                                                     <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                                     <string key="text">Lorem ipsum dolor sit er elit lamet, consectetaur cillium adipisicing pecu, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. Nam liber te conscient to factor tum poen legum odioque civiuda.</string>
                                                     <fontDescription key="fontDescription" type="system" pointSize="17"/>
@@ -561,14 +560,14 @@
                                         </connections>
                                     </tableViewCell>
                                     <tableViewCell contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" reuseIdentifier="CommonEditorCellSignature" rowHeight="140" id="1AQ-3f-NcM" customClass="CommonEditorCellSignature">
-                                        <rect key="frame" x="0.0" y="555.33333206176758" width="401" height="140"/>
+                                        <rect key="frame" x="0.0" y="555.5" width="820" height="140"/>
                                         <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
                                         <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="1AQ-3f-NcM" id="1Ve-Rc-Loo">
-                                            <rect key="frame" x="0.0" y="0.0" width="401" height="140"/>
+                                            <rect key="frame" x="0.0" y="0.0" width="820" height="140"/>
                                             <autoresizingMask key="autoresizingMask"/>
                                             <subviews>
                                                 <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="OZz-lo-hvF">
-                                                    <rect key="frame" x="20" y="59" width="150" height="22"/>
+                                                    <rect key="frame" x="16" y="63" width="150" height="14"/>
                                                     <constraints>
                                                         <constraint firstAttribute="width" constant="150" id="qRB-Az-nvx"/>
                                                     </constraints>
@@ -577,13 +576,13 @@
                                                     <nil key="highlightedColor"/>
                                                 </label>
                                                 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="*" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="VPO-Kk-Odn">
-                                                    <rect key="frame" x="10" y="58.333333333333336" width="10" height="23.333333333333336"/>
+                                                    <rect key="frame" x="6" y="55" width="10" height="30"/>
                                                     <fontDescription key="fontDescription" type="system" pointSize="25"/>
                                                     <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                                     <nil key="highlightedColor"/>
                                                 </label>
                                                 <imageView userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="l6i-Tj-KRU">
-                                                    <rect key="frame" x="176" y="10" width="210" height="120"/>
+                                                    <rect key="frame" x="172" y="14" width="633" height="112"/>
                                                 </imageView>
                                             </subviews>
                                             <constraints>
@@ -606,23 +605,23 @@
                                         </connections>
                                     </tableViewCell>
                                     <tableViewCell contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" reuseIdentifier="CommonEditorCellSwitch" rowHeight="44" id="Prk-wJ-Ou5" customClass="CommonEditorCellSwitch">
-                                        <rect key="frame" x="0.0" y="695.33333206176758" width="401" height="44"/>
+                                        <rect key="frame" x="0.0" y="695.5" width="820" height="44"/>
                                         <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
                                         <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="Prk-wJ-Ou5" id="gzm-zc-a8m">
-                                            <rect key="frame" x="0.0" y="0.0" width="401" height="44"/>
+                                            <rect key="frame" x="0.0" y="0.0" width="820" height="44"/>
                                             <autoresizingMask key="autoresizingMask"/>
                                             <subviews>
                                                 <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="7iy-PQ-jHE">
-                                                    <rect key="frame" x="20" y="11" width="309" height="22"/>
+                                                    <rect key="frame" x="16" y="15" width="720" height="14"/>
                                                     <fontDescription key="fontDescription" type="system" pointSize="17"/>
                                                     <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                                     <nil key="highlightedColor"/>
                                                 </label>
                                                 <switch opaque="NO" contentMode="scaleToFill" horizontalHuggingPriority="750" verticalHuggingPriority="750" contentHorizontalAlignment="center" contentVerticalAlignment="center" on="YES" translatesAutoresizingMaskIntoConstraints="NO" id="IY2-bX-GX2">
-                                                    <rect key="frame" x="337" y="6" width="51" height="32"/>
+                                                    <rect key="frame" x="744" y="10" width="63" height="24"/>
                                                 </switch>
                                                 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="*" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="alA-4a-5Hp">
-                                                    <rect key="frame" x="10" y="10.333333333333334" width="10" height="23.333333333333329"/>
+                                                    <rect key="frame" x="6" y="7" width="10" height="30"/>
                                                     <fontDescription key="fontDescription" type="system" pointSize="25"/>
                                                     <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                                     <nil key="highlightedColor"/>
@@ -648,14 +647,14 @@
                                         </connections>
                                     </tableViewCell>
                                     <tableViewCell contentMode="scaleToFill" restorationIdentifier="CommonEditorCellImg" selectionStyle="default" indentationWidth="10" reuseIdentifier="CommonEditorCellImg" rowHeight="120" id="z4d-pv-B8K" customClass="CommonEditorCellImg">
-                                        <rect key="frame" x="0.0" y="739.33333206176758" width="401" height="120"/>
+                                        <rect key="frame" x="0.0" y="739.5" width="820" height="120"/>
                                         <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
                                         <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="z4d-pv-B8K" id="8bH-ma-t1U">
-                                            <rect key="frame" x="0.0" y="0.0" width="401" height="120"/>
+                                            <rect key="frame" x="0.0" y="0.0" width="820" height="120"/>
                                             <autoresizingMask key="autoresizingMask"/>
                                             <subviews>
                                                 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="GS6-Z7-fOK">
-                                                    <rect key="frame" x="20" y="53" width="150" height="21"/>
+                                                    <rect key="frame" x="16" y="57" width="150" height="21"/>
                                                     <constraints>
                                                         <constraint firstAttribute="width" constant="150" id="VqM-TE-997"/>
                                                     </constraints>
@@ -664,7 +663,7 @@
                                                     <nil key="highlightedColor"/>
                                                 </label>
                                                 <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="HmT-qo-FM0">
-                                                    <rect key="frame" x="281" y="10" width="100" height="100"/>
+                                                    <rect key="frame" x="704" y="14" width="100" height="92"/>
                                                     <constraints>
                                                         <constraint firstAttribute="width" constant="100" id="Kiu-nx-sHs"/>
                                                     </constraints>
@@ -673,7 +672,7 @@
                                                     </connections>
                                                 </button>
                                                 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="dTl-qp-Cvg">
-                                                    <rect key="frame" x="176" y="53" width="97" height="21"/>
+                                                    <rect key="frame" x="172" y="57" width="524" height="21"/>
                                                     <fontDescription key="fontDescription" type="system" pointSize="17"/>
                                                     <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                                     <nil key="highlightedColor"/>
@@ -728,11 +727,11 @@
             <objects>
                 <viewController storyboardIdentifier="CommonEditorViewController" title="CommonEditorViewController" useStoryboardIdentifierAsRestorationIdentifier="YES" id="Jxb-UV-o22" customClass="CommonEditorViewController" sceneMemberID="viewController">
                     <view key="view" contentMode="scaleToFill" id="UkZ-Ir-leK">
-                        <rect key="frame" x="0.0" y="0.0" width="393" height="852"/>
+                        <rect key="frame" x="0.0" y="0.0" width="820" height="1180"/>
                         <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
                         <subviews>
                             <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="O2x-9a-T6K" customClass="CommonEditorTableContainerView">
-                                <rect key="frame" x="0.0" y="59" width="393" height="759"/>
+                                <rect key="frame" x="0.0" y="24" width="820" height="1106"/>
                                 <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                             </view>
                         </subviews>
@@ -761,11 +760,11 @@
             <objects>
                 <viewController storyboardIdentifier="MonthPickerViewController" useStoryboardIdentifierAsRestorationIdentifier="YES" id="7q7-QK-Sei" userLabel="MonthPickerViewController" customClass="MonthPickerViewController" sceneMemberID="viewController">
                     <view key="view" contentMode="scaleToFill" id="ibP-8e-BGj">
-                        <rect key="frame" x="0.0" y="0.0" width="393" height="852"/>
+                        <rect key="frame" x="0.0" y="0.0" width="820" height="1180"/>
                         <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
                         <subviews>
                             <pickerView contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="mUg-ig-66i" customClass="SRMonthPicker">
-                                <rect key="frame" x="0.0" y="132" width="393" height="216"/>
+                                <rect key="frame" x="0.0" y="97" width="820" height="216"/>
                                 <constraints>
                                     <constraint firstAttribute="height" constant="216" id="yOg-II-a5j"/>
                                 </constraints>
@@ -774,7 +773,7 @@
                                 </connections>
                             </pickerView>
                             <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="wXG-oN-rkI">
-                                <rect key="frame" x="0.0" y="103" width="393" height="21"/>
+                                <rect key="frame" x="0.0" y="68" width="820" height="21"/>
                                 <constraints>
                                     <constraint firstAttribute="height" constant="21" id="I25-D3-jtn"/>
                                 </constraints>
@@ -815,29 +814,31 @@
             <objects>
                 <viewController storyboardIdentifier="EnumSelectorViewController" useStoryboardIdentifierAsRestorationIdentifier="YES" id="J7q-vO-Muw" customClass="EnumSelectViewController" sceneMemberID="viewController">
                     <view key="view" contentMode="scaleToFill" id="bxp-Qn-bwL">
-                        <rect key="frame" x="0.0" y="0.0" width="393" height="852"/>
+                        <rect key="frame" x="0.0" y="0.0" width="820" height="1180"/>
                         <autoresizingMask key="autoresizingMask"/>
                         <subviews>
                             <tableView clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="plain" separatorStyle="default" rowHeight="44" sectionHeaderHeight="22" sectionFooterHeight="22" translatesAutoresizingMaskIntoConstraints="NO" id="z59-4h-cB2">
-                                <rect key="frame" x="0.0" y="0.0" width="393" height="852"/>
+                                <rect key="frame" x="0.0" y="0.0" width="820" height="1180"/>
                                 <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                 <prototypes>
                                     <tableViewCell contentMode="scaleToFill" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="EnumSelectorCell" id="b1D-ac-iWB" customClass="EnumSelectorCell">
-                                        <rect key="frame" x="0.0" y="50" width="393" height="44"/>
+                                        <rect key="frame" x="0.0" y="50.5" width="820" height="44"/>
                                         <autoresizingMask key="autoresizingMask"/>
                                         <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="b1D-ac-iWB" id="kPb-Xs-gEw">
-                                            <rect key="frame" x="0.0" y="0.0" width="393" height="44"/>
+                                            <rect key="frame" x="0.0" y="0.0" width="820" height="44"/>
                                             <autoresizingMask key="autoresizingMask"/>
                                             <subviews>
                                                 <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="ysV-pp-Th5" customClass="RTLabel">
-                                                    <rect key="frame" x="15" y="5" width="327" height="34"/>
+                                                    <rect key="frame" x="15" y="12" width="758" height="20"/>
                                                     <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                                                    <constraints>
+                                                        <constraint firstAttribute="height" constant="20" id="Ff6-uH-ta0"/>
+                                                    </constraints>
                                                 </view>
                                             </subviews>
                                             <constraints>
-                                                <constraint firstItem="ysV-pp-Th5" firstAttribute="top" secondItem="kPb-Xs-gEw" secondAttribute="top" constant="5" id="3f1-IU-MHD"/>
-                                                <constraint firstAttribute="bottom" secondItem="ysV-pp-Th5" secondAttribute="bottom" constant="5" id="77l-Rs-Upd"/>
                                                 <constraint firstAttribute="trailingMargin" secondItem="ysV-pp-Th5" secondAttribute="trailing" constant="31" id="7Ki-Ei-EHG"/>
+                                                <constraint firstItem="ysV-pp-Th5" firstAttribute="centerY" secondItem="kPb-Xs-gEw" secondAttribute="centerY" id="FyY-Nd-S0P"/>
                                                 <constraint firstItem="ysV-pp-Th5" firstAttribute="leading" secondItem="kPb-Xs-gEw" secondAttribute="leading" constant="15" id="iYw-Py-igH"/>
                                             </constraints>
                                         </tableViewCellContentView>
@@ -875,11 +876,11 @@
             <objects>
                 <viewController storyboardIdentifier="ImageViewController" title="View Image" useStoryboardIdentifierAsRestorationIdentifier="YES" id="sCm-H6-tjB" customClass="ImageViewController" sceneMemberID="viewController">
                     <view key="view" contentMode="scaleToFill" id="KOf-zj-yie">
-                        <rect key="frame" x="0.0" y="0.0" width="393" height="852"/>
+                        <rect key="frame" x="0.0" y="0.0" width="820" height="1180"/>
                         <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
                         <subviews>
                             <imageView userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="5ur-Z0-4eb">
-                                <rect key="frame" x="0.0" y="59" width="393" height="759"/>
+                                <rect key="frame" x="0.0" y="24" width="820" height="1106"/>
                             </imageView>
                         </subviews>
                         <viewLayoutGuide key="safeArea" id="tY9-HE-WIg"/>
@@ -904,7 +905,7 @@
             <objects>
                 <viewController storyboardIdentifier="EnumSelectOnlineViewController" useStoryboardIdentifierAsRestorationIdentifier="YES" id="A1a-tK-2BG" customClass="EnumSelectOnlineViewController" sceneMemberID="viewController">
                     <view key="view" contentMode="scaleToFill" id="U3R-Nq-VNq">
-                        <rect key="frame" x="0.0" y="0.0" width="393" height="852"/>
+                        <rect key="frame" x="0.0" y="0.0" width="820" height="1180"/>
                         <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
                         <subviews>
                             <label hidden="YES" opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="No Record" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="jes-xb-r2y">
@@ -915,18 +916,18 @@
                                 <nil key="highlightedColor"/>
                             </label>
                             <tableView clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="plain" separatorStyle="default" rowHeight="44" sectionHeaderHeight="22" sectionFooterHeight="22" translatesAutoresizingMaskIntoConstraints="NO" id="O1P-gK-hbP">
-                                <rect key="frame" x="0.0" y="115" width="393" height="703"/>
+                                <rect key="frame" x="0.0" y="88" width="820" height="1042"/>
                                 <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                 <prototypes>
                                     <tableViewCell contentMode="scaleToFill" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="EnumSelectorCell" id="bae-sl-DbK" customClass="EnumSelectorCell">
-                                        <rect key="frame" x="0.0" y="50" width="393" height="44"/>
+                                        <rect key="frame" x="0.0" y="50.5" width="820" height="44"/>
                                         <autoresizingMask key="autoresizingMask"/>
                                         <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="bae-sl-DbK" id="FgK-hs-kBJ">
-                                            <rect key="frame" x="0.0" y="0.0" width="393" height="44"/>
+                                            <rect key="frame" x="0.0" y="0.0" width="820" height="44"/>
                                             <autoresizingMask key="autoresizingMask"/>
                                             <subviews>
                                                 <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Qm5-av-MgR" customClass="RTLabel">
-                                                    <rect key="frame" x="15" y="5" width="327" height="34"/>
+                                                    <rect key="frame" x="15" y="5" width="758" height="34"/>
                                                     <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                                 </view>
                                             </subviews>
@@ -948,7 +949,7 @@
                                 </connections>
                             </tableView>
                             <searchBar contentMode="redraw" placeholder="KEYWORDS" translatesAutoresizingMaskIntoConstraints="NO" id="8tc-Zi-o4x">
-                                <rect key="frame" x="0.0" y="59" width="393" height="56"/>
+                                <rect key="frame" x="0.0" y="24" width="820" height="64"/>
                                 <textInputTraits key="textInputTraits"/>
                                 <connections>
                                     <outlet property="delegate" destination="A1a-tK-2BG" id="HpF-dm-AwJ"/>

+ 14 - 14
common/customUI/commoneditor/EnumSelectAndSort/EnumSelectAndSort.storyboard

@@ -1,10 +1,8 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13196" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" colorMatched="YES">
-    <device id="retina4_7" orientation="portrait">
-        <adaptation id="fullscreen"/>
-    </device>
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="24412" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" colorMatched="YES">
+    <device id="ipad10_9rounded" orientation="portrait" layout="fullscreen" appearance="light"/>
     <dependencies>
-        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13173"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="24405"/>
         <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
     </dependencies>
     <scenes>
@@ -17,28 +15,31 @@
                         <viewControllerLayoutGuide type="bottom" id="gJo-4E-M4C"/>
                     </layoutGuides>
                     <view key="view" contentMode="scaleToFill" id="MrG-Wj-VYV">
-                        <rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
+                        <rect key="frame" x="0.0" y="0.0" width="820" height="1180"/>
                         <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
                         <subviews>
                             <tableView clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="plain" separatorStyle="default" rowHeight="-1" estimatedRowHeight="-1" sectionHeaderHeight="28" sectionFooterHeight="28" translatesAutoresizingMaskIntoConstraints="NO" id="Ct6-5h-QWQ">
-                                <rect key="frame" x="0.0" y="76" width="375" height="591"/>
+                                <rect key="frame" x="0.0" y="88" width="820" height="1042"/>
                                 <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
                                 <prototypes>
                                     <tableViewCell clipsSubviews="YES" contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" reuseIdentifier="EnumSelectAndSortCell" rowHeight="60" id="g3N-ui-czx" customClass="EnumSelectAndSortCell">
-                                        <rect key="frame" x="0.0" y="28" width="375" height="60"/>
+                                        <rect key="frame" x="0.0" y="50.5" width="820" height="60"/>
                                         <autoresizingMask key="autoresizingMask"/>
                                         <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" insetsLayoutMarginsFromSafeArea="NO" tableViewCell="g3N-ui-czx" id="OHM-L7-XcY">
-                                            <rect key="frame" x="0.0" y="0.0" width="375" height="59.5"/>
+                                            <rect key="frame" x="0.0" y="0.0" width="820" height="60"/>
                                             <autoresizingMask key="autoresizingMask"/>
                                             <subviews>
                                                 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="8mU-R4-Mdm">
-                                                    <rect key="frame" x="10" y="0.0" width="42" height="59.5"/>
+                                                    <rect key="frame" x="10" y="20" width="42" height="20"/>
+                                                    <constraints>
+                                                        <constraint firstAttribute="height" constant="20" id="SD7-cb-biW"/>
+                                                    </constraints>
                                                     <fontDescription key="fontDescription" type="system" pointSize="17"/>
                                                     <nil key="textColor"/>
                                                     <nil key="highlightedColor"/>
                                                 </label>
                                                 <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="check_0" highlightedImage="check_1" translatesAutoresizingMaskIntoConstraints="NO" id="E5c-wk-DKK">
-                                                    <rect key="frame" x="340" y="17.5" width="25" height="25"/>
+                                                    <rect key="frame" x="785" y="17.5" width="25" height="25"/>
                                                     <constraints>
                                                         <constraint firstAttribute="width" constant="25" id="5nG-iR-itN"/>
                                                         <constraint firstAttribute="height" constant="25" id="d8d-VF-NCC"/>
@@ -46,11 +47,10 @@
                                                 </imageView>
                                             </subviews>
                                             <constraints>
-                                                <constraint firstItem="8mU-R4-Mdm" firstAttribute="height" secondItem="OHM-L7-XcY" secondAttribute="height" id="0hi-Pw-0xJ"/>
+                                                <constraint firstItem="8mU-R4-Mdm" firstAttribute="centerY" secondItem="OHM-L7-XcY" secondAttribute="centerY" id="2Kv-vf-04f"/>
                                                 <constraint firstAttribute="trailing" secondItem="E5c-wk-DKK" secondAttribute="trailing" constant="10" id="8Hz-bf-IBg"/>
                                                 <constraint firstAttribute="trailing" relation="greaterThanOrEqual" secondItem="8mU-R4-Mdm" secondAttribute="trailing" constant="50" id="C8z-Fd-JAU"/>
                                                 <constraint firstItem="E5c-wk-DKK" firstAttribute="centerY" secondItem="OHM-L7-XcY" secondAttribute="centerY" id="ace-hN-agS"/>
-                                                <constraint firstItem="8mU-R4-Mdm" firstAttribute="top" secondItem="OHM-L7-XcY" secondAttribute="top" id="gMs-Aj-Bwj"/>
                                                 <constraint firstItem="8mU-R4-Mdm" firstAttribute="leading" secondItem="OHM-L7-XcY" secondAttribute="leading" constant="10" id="u7p-De-eXr"/>
                                             </constraints>
                                         </tableViewCellContentView>
@@ -66,7 +66,7 @@
                                 </connections>
                             </tableView>
                             <searchBar contentMode="redraw" placeholder="search" translatesAutoresizingMaskIntoConstraints="NO" id="ZYh-Tv-EsJ">
-                                <rect key="frame" x="0.0" y="20" width="375" height="56"/>
+                                <rect key="frame" x="0.0" y="24" width="820" height="64"/>
                                 <offsetWrapper key="searchFieldBackgroundPositionAdjustment" horizontal="0.0" vertical="0.0"/>
                                 <textInputTraits key="textInputTraits" returnKeyType="search"/>
                                 <scopeButtonTitles>

+ 18 - 18
common/upload/RAUploadListViewController.m

@@ -23,11 +23,11 @@
     // Do any additional setup after loading the view.
     [self.view insertSubview:[UIView new] atIndex:0];
     
-    AppDelegate* appdelegate=(AppDelegate*)[UIApplication sharedApplication].delegate;
+//    AppDelegate* appdelegate=(AppDelegate*)[UIApplication sharedApplication].delegate;
     
     // 如果ViewController创建在UploadManager初始化之前,那么KVO失效,界面刷新不正确而导致数组越界
-    if (appdelegate.uploadManager != nil) {
-        [appdelegate.uploadManager addObserver:self
+    if (RASingleton.sharedInstance.uploadManager != nil) {
+        [RASingleton.sharedInstance.uploadManager addObserver:self
                                     forKeyPath:@"arr_queue"
                                        options:(NSKeyValueObservingOptionNew|NSKeyValueObservingOptionOld)
                                        context:@"arr_queue changed"];
@@ -47,8 +47,8 @@
 }
 - (void)clearList {
     
-    AppDelegate* appdelegate = (AppDelegate* )[UIApplication sharedApplication].delegate;
-    if(appdelegate.uploadManager.arr_queue.count==0)
+//    AppDelegate* appdelegate = (AppDelegate* )[UIApplication sharedApplication].delegate;
+    if(RASingleton.sharedInstance.uploadManager.arr_queue.count==0)
     {
         
         
@@ -62,12 +62,12 @@
     UIAlertAction *OK = [UIAlertAction actionWithTitle:NSLocalizedString(@"YES", nil) style:UIAlertActionStyleDestructive handler:^(UIAlertAction * _Nonnull action) {
         
         NSMutableArray* arr_tasks =[NSMutableArray new];
-        for(NSMutableDictionary* task in appdelegate.uploadManager.arr_queue)
+        for(NSMutableDictionary* task in RASingleton.sharedInstance.uploadManager.arr_queue)
         {
             if([task[@"status"] intValue]==TaskStatusFinish||[task[@"status"] intValue]==TaskStatusError)
                 [arr_tasks addObject:task];
         }
-        [appdelegate.uploadManager removeTasks:arr_tasks];
+        [RASingleton.sharedInstance.uploadManager removeTasks:arr_tasks];
         
     }];
     
@@ -84,8 +84,8 @@
 -(void) dealloc
 {
     [ [ UIApplication sharedApplication] setIdleTimerDisabled:NO ] ;
-    AppDelegate* appdelegate=(AppDelegate*)[UIApplication sharedApplication].delegate;
-    [appdelegate.uploadManager removeObserver:self forKeyPath:@"arr_queue"];
+//    AppDelegate* appdelegate=(AppDelegate*)[UIApplication sharedApplication].delegate;
+    [RASingleton.sharedInstance.uploadManager removeObserver:self forKeyPath:@"arr_queue"];
     
     [[NSNotificationCenter defaultCenter] removeObserver:self];
 }
@@ -114,8 +114,8 @@
 
 - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
     
-    AppDelegate* Appdelegate=(AppDelegate*)[UIApplication sharedApplication].delegate;
-    return Appdelegate.uploadManager.arr_queue.count;
+//    AppDelegate* Appdelegate=(AppDelegate*)[UIApplication sharedApplication].delegate;
+    return RASingleton.sharedInstance.uploadManager.arr_queue.count;
 }
 
 - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
@@ -129,22 +129,22 @@
 - (UISwipeActionsConfiguration *)tableView:(UITableView *)tableView trailingSwipeActionsConfigurationForRowAtIndexPath:(NSIndexPath *)indexPath
 
 {
-    AppDelegate* Appdelegate=(AppDelegate*)[UIApplication sharedApplication].delegate;
-    NSMutableDictionary * task = Appdelegate.uploadManager.arr_queue[indexPath.row];
+//    AppDelegate* Appdelegate=(AppDelegate*)[UIApplication sharedApplication].delegate;
+    NSMutableDictionary * task = RASingleton.sharedInstance.uploadManager.arr_queue[indexPath.row];
     
     
     __weak typeof(self) weakself = self;
 //    UITableViewRowAction *startAction = [UITableViewRowAction rowActionWithStyle:UITableViewRowActionStyleDefault title:NSLocalizedString(@"Restart", nil) handler:^(UITableViewRowAction *action, NSIndexPath *indexPath) {
         UIContextualAction* startAction = [UIContextualAction contextualActionWithStyle:UIContextualActionStyleNormal title:@"Restart" handler:^(UIContextualAction * _Nonnull action, __kindof UIView * _Nonnull sourceView, void (^ _Nonnull completionHandler)(BOOL)) {
         
-        if (Appdelegate.uploadManager.onlyWiFi && Appdelegate.uploadManager.reach.currentReachabilityStatus != ReachableViaWiFi) {
+        if (RASingleton.sharedInstance.uploadManager.onlyWiFi && RASingleton.sharedInstance.uploadManager.reach.currentReachabilityStatus != ReachableViaWiFi) {
             [weakself.view makeToast:NSLocalizedString(@"Current Network is not WiFi", nil) duration:3.0 position:CSToastPositionCenter];
             [tableView reloadRowsAtIndexPaths:@[indexPath]withRowAnimation:UITableViewRowAnimationMiddle];
             return ;
         }
         DebugLog(@"Start click");
         task[@"retry"]=[NSNumber numberWithInt:0];
-        [Appdelegate.uploadManager startTask:task];
+        [RASingleton.sharedInstance.uploadManager startTask:task];
         
         [tableView reloadRowsAtIndexPaths:@[indexPath]withRowAnimation:UITableViewRowAnimationMiddle];
     }];
@@ -157,7 +157,7 @@
     UIContextualAction* removeAction = [UIContextualAction contextualActionWithStyle:UIContextualActionStyleDestructive title:@"Remove" handler:^(UIContextualAction * _Nonnull action, __kindof UIView * _Nonnull sourceView, void (^ _Nonnull completionHandler)(BOOL)) {
         
         
-        [Appdelegate.uploadManager removeTask:task];
+        [RASingleton.sharedInstance.uploadManager removeTask:task];
         
         //  [tableView reloadRowsAtIndexPaths:@[indexPath]withRowAnimation:UITableViewRowAnimationMiddle];
         
@@ -189,8 +189,8 @@
 }
 
 - (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath {
-    AppDelegate* Appdelegate=(AppDelegate*)[UIApplication sharedApplication].delegate;
-    NSDictionary * item_json = Appdelegate.uploadManager.arr_queue[indexPath.row];
+//    AppDelegate* Appdelegate=(AppDelegate*)[UIApplication sharedApplication].delegate;
+    NSDictionary * item_json = RASingleton.sharedInstance.uploadManager.arr_queue[indexPath.row];
     
     bool ret=false;
     switch ([item_json[@"status"] intValue]) {

+ 6 - 5
common/upload/RAUploadOperation.m

@@ -12,6 +12,7 @@
 #import "AppDelegate.h"
 #import "RAUtils.h"
 #import "const.h"
+#import "RASingleton.h"
 
 
 //static const NSTimeInterval waitTimeIntervalDelta = 60 * 3;
@@ -122,9 +123,9 @@
         else
         {
             
-            AppDelegate* Appdelegate=(AppDelegate*)[UIApplication sharedApplication].delegate;
-            BOOL canUpload = [Appdelegate.uploadManager canUpload];
-            BOOL isReachable = [Appdelegate.uploadManager reachable];
+//            AppDelegate* Appdelegate=(AppDelegate*)[UIApplication sharedApplication].delegate;
+            BOOL canUpload = [RASingleton.sharedInstance.uploadManager canUpload];
+            BOOL isReachable = [RASingleton.sharedInstance.uploadManager reachable];
             
             DebugLog(@"can upload %@",@(canUpload));
             if (!canUpload) {
@@ -160,8 +161,8 @@
                 
                 // retry:
                 operation.joinTimeInterval = [[NSDate date] timeIntervalSince1970];
-                operation.waitTimeInterval = weakself.waitTimeInterval + Appdelegate.uploadManager.retryTimeInterval;
-                [Appdelegate.uploadManager addRetryOperation:operation];
+                operation.waitTimeInterval = weakself.waitTimeInterval + RASingleton.sharedInstance.uploadManager.retryTimeInterval;
+                [RASingleton.sharedInstance.uploadManager addRetryOperation:operation];
              //   [self upload:url];
             }
         }