HMS-Core / hms-3d-modeling-demo-ios

14 stars 7 forks source link

Failed to connect server #2

Open craigstar opened 2 years ago

craigstar commented 2 years ago

I don't know why I couldn't connect to server? what server? I'm really confused.

I followed the official tutorial, turned on my 3d modeling service, downloaded new plist. changed my Bundle ID. however this error drove me crazy. please help! 大神求指教~

2022-05-17 23:03:38.605302+0800 Modeling3dDemo[2242:145973] Succeeded to load agconnect config file!
----------[2022-05-17 15:03:38.660][DEBUG][grs_client_helper.cpp:162] Parser SDK Router Configure File: grs_sdk_global_route_config_threeDModeling.json
----------[2022-05-17 15:03:38.662][INFO][grs_client_helper.cpp:135] the current app_name: 
----------[2022-05-17 15:03:38.662][DEBUG][grs_client_helper.cpp:137] Parser Router Configure Get Service Size: 1
----------[2022-05-17 15:03:38.662][INFO][grs_server_logic.cpp:22] GrsServerLogic::GetAllServiceUrl, enter to get all url from cache, server or local.
----------[2022-05-17 15:03:38.662][INFO][grs_server_logic.cpp:26] GrsServerLogic::GetAllServiceUrl, enter to get all service url from local cache file.
----------[2022-05-17 15:03:38.714][INFO][grs_client_helper.cpp:357] enter to get service url by key and service name logic
----------[2022-05-17 15:03:38.714][INFO][grs_client_helper.cpp:363] GetServiceUrlByKey: go on to get GRS from Memory
2022-05-17 23:03:38.715|hianalytics 1.0.0.302|INFO|Begin to configure...
2022-05-17 23:03:38.716|hianalytics 1.0.0.302|INFO|Analytics collection enable: YES
2022-05-17 23:03:38.717|hianalytics 1.0.0.302|INFO|Init cache: YES
2022-05-17 23:03:38.717|hianalytics 1.0.0.302|ERROR|https:// is not a valid collect url
2022-05-17 23:03:38.717|hianalytics 1.0.0.302|ERROR|No valid collect url, configuration failed.
2022-05-17 23:03:40.039389+0800 Modeling3dDemo[2242:145973] [core] "Error returned from daemon: Error Domain=com.apple.accounts Code=7 "(null)""
2022-05-17 23:03:40.052942+0800 Modeling3dDemo[2242:146270] [PAAccessLogger] Failed to log access with error: access=<PATCCAccess 0x281c07d20> accessor:<<PAApplication 0x2831900f0 identifierType:auditToken identifier:{pid:2242, version:6509}>> identifier:7423056D-6791-4F02-8E04-0800C7D87856 kind:intervalEnd timestampAdjustment:0 tccService:kTCCServicePhotos, error=Error Domain=PAErrorDomain Code=10 "Possibly incomplete access interval automatically ended by daemon"
2022-05-17 23:03:40.410104+0800 Modeling3dDemo[2242:145973] Metal API Validation Enabled
----------[2022-05-17 15:03:57.65][INFO][grs_client_helper.cpp:357] enter to get service url by key and service name logic
----------[2022-05-17 15:03:57.65][INFO][grs_client_helper.cpp:363] GetServiceUrlByKey: go on to get GRS from Memory
2022-05-17 23:03:57.235157+0800 Modeling3dDemo[2242:146309] [connection] nw_socket_handle_socket_event [C1.1:3] Socket SO_ERROR [61: Connection refused]
2022-05-17 23:03:57.239694+0800 Modeling3dDemo[2242:146309] [connection] nw_socket_handle_socket_event [C1.2:3] Socket SO_ERROR [61: Connection refused]
2022-05-17 23:03:59.120714+0800 Modeling3dDemo[2242:146275] [connection] nw_resolver_start_query_timer_block_invoke [C1] Query fired: did not receive all answers in time for localhost:443
2022-05-17 23:03:59.123949+0800 Modeling3dDemo[2242:146275] Connection 1: received failure notification
2022-05-17 23:03:59.124177+0800 Modeling3dDemo[2242:146275] Connection 1: failed to connect 1:61, reason -1
2022-05-17 23:03:59.124352+0800 Modeling3dDemo[2242:146275] Connection 1: encountered error(1:61)
2022-05-17 23:03:59.126616+0800 Modeling3dDemo[2242:146275] Task <74460078-AE2D-4356-8D1E-9D4FDDEAF348>.<1> HTTP load failed, 0/0 bytes (error code: -1004 [1:61])
2022-05-17 23:03:59.137302+0800 Modeling3dDemo[2242:146272] Task <74460078-AE2D-4356-8D1E-9D4FDDEAF348>.<1> finished with error [-1004] Error Domain=NSURLErrorDomain Code=-1004 "Could not connect to the server." UserInfo={_kCFStreamErrorCodeKey=61, NSUnderlyingError=0x281dbfae0 {Error Domain=kCFErrorDomainCFNetwork Code=-1004 "(null)" UserInfo={_NSURLErrorNWPathKey=satisfied (Path is satisfied), interface: lo0, _kCFStreamErrorCodeKey=61, _kCFStreamErrorDomainKey=1}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <74460078-AE2D-4356-8D1E-9D4FDDEAF348>.<1>, _NSURLErrorRelatedURLSessionTaskErrorKey=(
    "LocalDataTask <74460078-AE2D-4356-8D1E-9D4FDDEAF348>.<1>"
), NSLocalizedDescription=Could not connect to the server., NSErrorFailingURLStringKey=https://localhost/v1/3dmagic/createTask, NSErrorFailingURLKey=https://localhost/v1/3dmagic/createTask, _kCFStreamErrorDomainKey=1}
2022-05-17 23:03:59.138135+0800 Modeling3dDemo[2242:146272] json解析失败:Error Domain=NSCocoaErrorDomain Code=3840 "Unable to parse empty data." UserInfo={NSDebugDescription=Unable to parse empty data.}
=================================================================
Main Thread Checker: UI API called on a background thread: -[UIApplication delegate]
PID: 2242, TID: 146272, Thread name: (none), Queue name: com.apple.NSURLSession-delegate, QoS: 0
Backtrace:
4   Modeling3dDemo                      0x0000000104708210 __27+[SVProgressHUD sharedView]_block_invoke + 84
5   libdispatch.dylib                   0x0000000104a7a7bc _dispatch_client_callout + 20
6   libdispatch.dylib                   0x0000000104a7c360 _dispatch_once_callout + 136
7   Modeling3dDemo                      0x0000000104708194 +[SVProgressHUD sharedView] + 136
8   Modeling3dDemo                      0x0000000104709c74 +[SVProgressHUD showErrorWithStatus:] + 64
9   Modeling3dDemo                      0x000000010476a768 -[UIViewController(CustomAlert) showErrorWithStatus:] + 76
10  Modeling3dDemo                      0x0000000104739d28 __104-[Modeling3dDemoHomeVC imagePickerController:didFinishPickingPhotos:sourceAssets:isSelectOriginalPhoto:]_block_invoke.102 + 88
11  Modeling3dKit                       0x0000000106001258 -[Modeling3dReconstructNetworkManager handleSessionTaskResponse:data:error:requestDates:successBlock:failureBlock:] + 740
12  Modeling3dKit                       0x0000000105fffad4 __109-[Modeling3dReconstructNetworkManager sendRequestWithHTTPMethod:apiUrl:parameters:successBlock:failureBlock:]_block_invoke + 216
13  CFNetwork                           0x00000001a2d700bc CFURLRequestSetMainDocumentURL + 3000
14  CFNetwork                           0x00000001a2d81208 _CFNetworkErrorCopyLocalizedDescriptionWithHostname + 11944
15  libdispatch.dylib                   0x0000000104a78c6c _dispatch_call_block_and_release + 32
16  libdispatch.dylib                   0x0000000104a7a7bc _dispatch_client_callout + 20
17  libdispatch.dylib                   0x0000000104a828a4 _dispatch_lane_serial_drain + 984
18  libdispatch.dylib                   0x0000000104a83614 _dispatch_lane_invoke + 480
19  libdispatch.dylib                   0x0000000104a90168 _dispatch_workloop_worker_thread + 908
20  libsystem_pthread.dylib             0x0000000213cfa0bc _pthread_wqthread + 288
21  libsystem_pthread.dylib             0x0000000213cf9e5c start_wqthread + 8
2022-05-17 23:03:59.152407+0800 Modeling3dDemo[2242:146272] [reports] Main Thread Checker: UI API called on a background thread: -[UIApplication delegate]
PID: 2242, TID: 146272, Thread name: (none), Queue name: com.apple.NSURLSession-delegate, QoS: 0
Backtrace:
4   Modeling3dDemo                      0x0000000104708210 __27+[SVProgressHUD sharedView]_block_invoke + 84
5   libdispatch.dylib                   0x0000000104a7a7bc _dispatch_client_callout + 20
6   libdispatch.dylib                   0x0000000104a7c360 _dispatch_once_callout + 136
7   Modeling3dDemo                      0x0000000104708194 +[SVProgressHUD sharedView] + 136
8   Modeling3dDemo                      0x0000000104709c74 +[SVProgressHUD showErrorWithStatus:] + 64
9   Modeling3dDemo                      0x000000010476a768 -[UIViewController(CustomAlert) showErrorWithStatus:] + 76
10  Modeling3dDemo                      0x0000000104739d28 __104-[Modeling3dDemoHomeVC imagePickerController:didFinishPickingPhotos:sourceAssets:isSelectOriginalPhoto:]_block_invoke.102 + 88
11  Modeling3dKit                       0x0000000106001258 -[Modeling3dReconstructNetworkManager handleSessionTaskResponse:data:error:requestDates:successBlock:failureBlock:] + 740
12  Modeling3dKit                       0x0000000105fffad4 __109-[Modeling3dReconstructNetworkManager sendRequestWithHTTPMethod:apiUrl:parameters:successBlock:failureBlock:]_block_invoke + 216
13  CFNetwork                           0x00000001a2d700bc CFURLRequestSetMainDocumentURL + 3000
14  CFNetwork                           0x00000001a2d81208 _CFNetworkErrorCopyLocalizedDescriptionWithHostname + 11944
15  libdispatch.dylib                   0x0000000104a78c6c _dispatch_call_block_and_release + 32
16  libdispatch.dylib                   0x0000000104a7a7bc _dispatch_client_callout + 20
17  libdispatch.dylib                   0x0000000104a828a4 _dispatch_lane_serial_drain + 984
18  libdispatch.dylib                   0x0000000104a83614 _dispatch_lane_invoke + 480
19  libdispatch.dylib                   0x0000000104a90168 _dispatch_workloop_worker_thread + 908
20  libsystem_pthread.dylib             0x0000000213cfa0bc _pthread_wqthread + 288
21  libsystem_pthread.dylib             0x0000000213cf9e5c start_wqthread + 8
=================================================================
Main Thread Checker: UI API called on a background thread: -[UIView bounds]
PID: 2242, TID: 146272, Thread name: (none), Queue name: com.apple.NSURLSession-delegate, QoS: 0
Backtrace:
4   Modeling3dDemo                      0x0000000104708240 __27+[SVProgressHUD sharedView]_block_invoke + 132
5   libdispatch.dylib                   0x0000000104a7a7bc _dispatch_client_callout + 20
6   libdispatch.dylib                   0x0000000104a7c360 _dispatch_once_callout + 136
7   Modeling3dDemo                      0x0000000104708194 +[SVProgressHUD sharedView] + 136
8   Modeling3dDemo                      0x0000000104709c74 +[SVProgressHUD showErrorWithStatus:] + 64
9   Modeling3dDemo                      0x000000010476a768 -[UIViewController(CustomAlert) showErrorWithStatus:] + 76
10  Modeling3dDemo                      0x0000000104739d28 __104-[Modeling3dDemoHomeVC imagePickerController:didFinishPickingPhotos:sourceAssets:isSelectOriginalPhoto:]_block_invoke.102 + 88
11  Modeling3dKit                       0x0000000106001258 -[Modeling3dReconstructNetworkManager handleSessionTaskResponse:data:error:requestDates:successBlock:failureBlock:] + 740
12  Modeling3dKit                       0x0000000105fffad4 __109-[Modeling3dReconstructNetworkManager sendRequestWithHTTPMethod:apiUrl:parameters:successBlock:failureBlock:]_block_invoke + 216
13  CFNetwork                           0x00000001a2d700bc CFURLRequestSetMainDocumentURL + 3000
14  CFNetwork                           0x00000001a2d81208 _CFNetworkErrorCopyLocalizedDescriptionWithHostname + 11944
15  libdispatch.dylib                   0x0000000104a78c6c _dispatch_call_block_and_release + 32
16  libdispatch.dylib                   0x0000000104a7a7bc _dispatch_client_callout + 20
17  libdispatch.dylib                   0x0000000104a828a4 _dispatch_lane_serial_drain + 984
18  libdispatch.dylib                   0x0000000104a83614 _dispatch_lane_invoke + 480
19  libdispatch.dylib                   0x0000000104a90168 _dispatch_workloop_worker_thread + 908
20  libsystem_pthread.dylib             0x0000000213cfa0bc _pthread_wqthread + 288
21  libsystem_pthread.dylib             0x0000000213cf9e5c start_wqthread + 8
2022-05-17 23:04:05.558368+0800 Modeling3dDemo[2242:146272] [reports] Main Thread Checker: UI API called on a background thread: -[UIView bounds]
PID: 2242, TID: 146272, Thread name: (none), Queue name: com.apple.NSURLSession-delegate, QoS: 0
Backtrace:
4   Modeling3dDemo                      0x0000000104708240 __27+[SVProgressHUD sharedView]_block_invoke + 132
5   libdispatch.dylib                   0x0000000104a7a7bc _dispatch_client_callout + 20
6   libdispatch.dylib                   0x0000000104a7c360 _dispatch_once_callout + 136
7   Modeling3dDemo                      0x0000000104708194 +[SVProgressHUD sharedView] + 136
8   Modeling3dDemo                      0x0000000104709c74 +[SVProgressHUD showErrorWithStatus:] + 64
9   Modeling3dDemo                      0x000000010476a768 -[UIViewController(CustomAlert) showErrorWithStatus:] + 76
10  Modeling3dDemo                      0x0000000104739d28 __104-[Modeling3dDemoHomeVC imagePickerController:didFinishPickingPhotos:sourceAssets:isSelectOriginalPhoto:]_block_invoke.102 + 88
11  Modeling3dKit                       0x0000000106001258 -[Modeling3dReconstructNetworkManager handleSessionTaskResponse:data:error:requestDates:successBlock:failureBlock:] + 740
12  Modeling3dKit                       0x0000000105fffad4 __109-[Modeling3dReconstructNetworkManager sendRequestWithHTTPMethod:apiUrl:parameters:successBlock:failureBlock:]_block_invoke + 216
13  CFNetwork                           0x00000001a2d700bc CFURLRequestSetMainDocumentURL + 3000
14  CFNetwork                           0x00000001a2d81208 _CFNetworkErrorCopyLocalizedDescriptionWithHostname + 11944
15  libdispatch.dylib                   0x0000000104a78c6c _dispatch_call_block_and_release + 32
16  libdispatch.dylib                   0x0000000104a7a7bc _dispatch_client_callout + 20
17  libdispatch.dylib                   0x0000000104a828a4 _dispatch_lane_serial_drain + 984
18  libdispatch.dylib                   0x0000000104a83614 _dispatch_lane_invoke + 480
19  libdispatch.dylib                   0x0000000104a90168 _dispatch_workloop_worker_thread + 908
20  libsystem_pthread.dylib             0x0000000213cfa0bc _pthread_wqthread + 288
21  libsystem_pthread.dylib             0x0000000213cf9e5c start_wqthread + 8
=================================================================
Main Thread Checker: UI API called on a background thread: -[UIView initWithFrame:]
PID: 2242, TID: 146272, Thread name: (none), Queue name: com.apple.NSURLSession-delegate, QoS: 0
Backtrace:
4   Modeling3dDemo                      0x000000010470a504 -[SVProgressHUD initWithFrame:] + 104
5   Modeling3dDemo                      0x0000000104708278 __27+[SVProgressHUD sharedView]_block_invoke + 188
6   libdispatch.dylib                   0x0000000104a7a7bc _dispatch_client_callout + 20
7   libdispatch.dylib                   0x0000000104a7c360 _dispatch_once_callout + 136
8   Modeling3dDemo                      0x0000000104708194 +[SVProgressHUD sharedView] + 136
9   Modeling3dDemo                      0x0000000104709c74 +[SVProgressHUD showErrorWithStatus:] + 64
10  Modeling3dDemo                      0x000000010476a768 -[UIViewController(CustomAlert) showErrorWithStatus:] + 76
11  Modeling3dDemo                      0x0000000104739d28 __104-[Modeling3dDemoHomeVC imagePickerController:didFinishPickingPhotos:sourceAssets:isSelectOriginalPhoto:]_block_invoke.102 + 88
12  Modeling3dKit                       0x0000000106001258 -[Modeling3dReconstructNetworkManager handleSessionTaskResponse:data:error:requestDates:successBlock:failureBlock:] + 740
13  Modeling3dKit                       0x0000000105fffad4 __109-[Modeling3dReconstructNetworkManager sendRequestWithHTTPMethod:apiUrl:parameters:successBlock:failureBlock:]_block_invoke + 216
14  CFNetwork                           0x00000001a2d700bc CFURLRequestSetMainDocumentURL + 3000
15  CFNetwork                           0x00000001a2d81208 _CFNetworkErrorCopyLocalizedDescriptionWithHostname + 11944
16  libdispatch.dylib                   0x0000000104a78c6c _dispatch_call_block_and_release + 32
17  libdispatch.dylib                   0x0000000104a7a7bc _dispatch_client_callout + 20
18  libdispatch.dylib                   0x0000000104a828a4 _dispatch_lane_serial_drain + 984
19  libdispatch.dylib                   0x0000000104a83614 _dispatch_lane_invoke + 480
20  libdispatch.dylib                   0x0000000104a90168 _dispatch_workloop_worker_thread + 908
21  libsystem_pthread.dylib             0x0000000213cfa0bc _pthread_wqthread + 288
22  libsystem_pthread.dylib             0x0000000213cf9e5c start_wqthread + 8
2022-05-17 23:04:05.654926+0800 Modeling3dDemo[2242:146272] [reports] Main Thread Checker: UI API called on a background thread: -[UIView initWithFrame:]
PID: 2242, TID: 146272, Thread name: (none), Queue name: com.apple.NSURLSession-delegate, QoS: 0
Backtrace:
4   Modeling3dDemo                      0x000000010470a504 -[SVProgressHUD initWithFrame:] + 104
5   Modeling3dDemo                      0x0000000104708278 __27+[SVProgressHUD sharedView]_block_invoke + 188
6   libdispatch.dylib                   0x0000000104a7a7bc _dispatch_client_callout + 20
7   libdispatch.dylib                   0x0000000104a7c360 _dispatch_once_callout + 136
8   Modeling3dDemo                      0x0000000104708194 +[SVProgressHUD sharedView] + 136
9   Modeling3dDemo                      0x0000000104709c74 +[SVProgressHUD showErrorWithStatus:] + 64
10  Modeling3dDemo                      0x000000010476a768 -[UIViewController(CustomAlert) showErrorWithStatus:] + 76
11  Modeling3dDemo                      0x0000000104739d28 __104-[Modeling3dDemoHomeVC imagePickerController:didFinishPickingPhotos:sourceAssets:isSelectOriginalPhoto:]_block_invoke.102 + 88
12  Modeling3dKit                       0x0000000106001258 -[Modeling3dReconstructNetworkManager handleSessionTaskResponse:data:error:requestDates:successBlock:failureBlock:] + 740
13  Modeling3dKit                       0x0000000105fffad4 __109-[Modeling3dReconstructNetworkManager sendRequestWithHTTPMethod:apiUrl:parameters:successBlock:failureBlock:]_block_invoke + 216
14  CFNetwork                           0x00000001a2d700bc CFURLRequestSetMainDocumentURL + 3000
15  CFNetwork                           0x00000001a2d81208 _CFNetworkErrorCopyLocalizedDescriptionWithHostname + 11944
16  libdispatch.dylib                   0x0000000104a78c6c _dispatch_call_block_and_release + 32
17  libdispatch.dylib                   0x0000000104a7a7bc _dispatch_client_callout + 20
18  libdispatch.dylib                   0x0000000104a828a4 _dispatch_lane_serial_drain + 984
19  libdispatch.dylib                   0x0000000104a83614 _dispatch_lane_invoke + 480
20  libdispatch.dylib                   0x0000000104a90168 _dispatch_workloop_worker_thread + 908
21  libsystem_pthread.dylib             0x0000000213cfa0bc _pthread_wqthread + 288
22  libsystem_pthread.dylib             0x0000000213cf9e5c start_wqthread + 8
2022-05-17 23:04:05.766958+0800 Modeling3dDemo[2242:146272] [Animation] +[UIView setAnimationsEnabled:] being called from a background thread. Performing any operation from a background thread on UIView or a subclass is not supported and may result in unexpected and insidious behavior. trace=(
    0   UIKitCore                           0x00000001a5c483d4 E6E89BB5-B586-3725-BF8F-4C85DCD443BD + 19559380
    1   libdispatch.dylib                   0x0000000104a7a7bc _dispatch_client_callout + 20
    2   libdispatch.dylib                   0x0000000104a7c360 _dispatch_once_callout + 136
    3   UIKitCore                           0x00000001a4b13044 E6E89BB5-B586-3725-BF8F-4C85DCD443BD + 1515588
    4   UIKitCore                           0x00000001a4e71e1c E6E89BB5-B586-3725-BF8F-4C85DCD443BD + 5049884
    5   UIKitCore                           0x00000001a4cdb5f0 E6E89BB5-B586-3725-BF8F-4C85DCD443BD + 3384816
    6   Modeling3dDemo                      0x0000000104711f6c -[SVProgressHUD imageView] + 480
    7   Modeling3dDemo                      0x000000010470a5c8 -[SVProgressHUD initWithFrame:] + 300
    8   Modeling3dDemo                      0x0000000104708278 __27+[SVProgressHUD sharedView]_block_invoke + 188
    9   libdispatch.dylib                   0x0000000104a7a7bc _dispatch_client_callout + 20
    10  libdispatch.dylib                   0x0000000104a7c360 _dispatch_once_callout + 136
    11  Modeling3dDemo                      0x0000000104708194 +[SVProgressHUD sharedView] + 136
    12  Modeling3dDemo                      0x0000000104709c74 +[SVProgressHUD showErrorWithStatus:] + 64
    13  Modeling3dDemo                      0x000000010476a768 -[UIViewController(CustomAlert) showErrorWithStatus:] + 76
    14  Modeling3dDemo                      0x0000000104739d28 __104-[Modeling3dDemoHomeVC imagePickerController:didFinishPickingPhotos:sourceAssets:isSelectOriginalPhoto:]_block_invoke.102 + 88
    15  Modeling3dKit                       0x0000000106001258 -[Modeling3dReconstructNetworkManager handleSessionTaskResponse:data:error:requestDates:successBlock:failureBlock:] + 740
    16  Modeling3dKit                       0x0000000105fffad4 __109-[Modeling3dReconstructNetworkManager sendRequestWithHTTPMethod:apiUrl:parameters:successBlock:failureBlock:]_block_invoke + 216
    17  CFNetwork                           0x00000001a2d700bc CFURLRequestSetMainDocumentURL + 3000
    18  CFNetwork                           0x00000001a2d81208 _CFNetworkErrorCopyLocalizedDescriptionWithHostname + 11944
    19  libdispatch.dylib                   0x0000000104a78c6c _dispatch_call_block_and_release + 32
    20  libdispatch.dylib                   0x0000000104a7a7bc _dispatch_client_callout + 20
    21  libdispatch.dylib                   0x0000000104a828a4 _dispatch_lane_serial_drain + 984
    22  libdispatch.dylib                   0x0000000104a83614 _dispatch_lane_invoke + 480
    23  libdispatch.dylib                   0x0000000104a90168 _dispatch_workloop_worker_thread + 908
    24  libsystem_pthread.dylib             0x0000000213cfa0bc _pthread_wqthread + 288
    25  libsystem_pthread.dylib             0x0000000213cf9e5c start_wqthread + 8
)
2022-05-17 23:04:05.800|hianalytics 1.0.0.302|ERROR|IE-003|The Analytics Kit is not initialized.
2022-05-17 23:04:05.800|hianalytics 1.0.0.302|ERROR|IE-003|The Analytics Kit is not initialized.
Xuejiao-Shi commented 2 years ago

Check whether the region abbreviation in the agconnect-services.plist file is correct. Like following: image

craigstar commented 2 years ago

Thank you and YES!!! It's working now! I don't know why my plist was missing that region part. But all in all, Thank you very much! great help. 多谢大佬