From 5b4a4bb53c4ca851d96af8df5bdb52a2d4142d7d Mon Sep 17 00:00:00 2001 From: Daisy <> Date: Wed, 20 Dec 2023 13:46:05 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E5=88=A0=E9=99=A4=E6=97=A0=E7=94=A8?= =?UTF-8?q?=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- star_lock/ios/Podfile.lock | 50 +++++++++++-- .../ios/Runner.xcodeproj/project.pbxproj | 2 +- .../xcshareddata/xcschemes/Runner.xcscheme | 2 +- star_lock/lib/talk/call/callTalk.dart | 71 ++----------------- 4 files changed, 53 insertions(+), 72 deletions(-) diff --git a/star_lock/ios/Podfile.lock b/star_lock/ios/Podfile.lock index 900a4a92..d9f86221 100644 --- a/star_lock/ios/Podfile.lock +++ b/star_lock/ios/Podfile.lock @@ -27,6 +27,10 @@ PODS: - AMapFoundation (1.8.2) - AMapLocation (2.10.0): - AMapFoundation (>= 1.8.0) + - audio_session (0.0.1): + - Flutter + - audioplayers_darwin (0.0.1): + - Flutter - auto_orientation (0.0.1): - Flutter - camera_avfoundation (0.0.1): @@ -37,12 +41,18 @@ PODS: - Flutter (1.0.0) - flutter_native_contact_picker (0.0.1): - Flutter + - flutter_sound (9.2.13): + - Flutter + - flutter_sound_core (= 9.2.13) + - flutter_sound_core (9.2.13) - fluttertoast (0.0.2): - Flutter - Toast - FMDB (2.7.5): - FMDB/standard (= 2.7.5) - FMDB/standard (2.7.5) + - g711_flutter (0.0.1): + - Flutter - google_maps_flutter_ios (0.0.1): - Flutter - GoogleMaps (< 8.0) @@ -51,8 +61,12 @@ PODS: - GoogleMaps/Base (5.2.0) - GoogleMaps/Maps (5.2.0): - GoogleMaps/Base + - image_gallery_saver (2.0.2): + - Flutter - image_picker_ios (0.0.1): - Flutter + - just_audio (0.0.1): + - Flutter - network_info_plus (0.0.1): - Flutter - package_info_plus (0.4.5): @@ -62,7 +76,7 @@ PODS: - FlutterMacOS - permission_handler_apple (9.1.1): - Flutter - - Protobuf (3.25.1) + - Protobuf (3.25.0) - reactive_ble_mobile (0.0.1): - Flutter - Protobuf (~> 3.5) @@ -88,14 +102,20 @@ DEPENDENCIES: - aliyun_push (from `.symlinks/plugins/aliyun_push/ios`) - amap_flutter_location (from `.symlinks/plugins/amap_flutter_location/ios`) - amap_flutter_map (from `.symlinks/plugins/amap_flutter_map/ios`) + - audio_session (from `.symlinks/plugins/audio_session/ios`) + - audioplayers_darwin (from `.symlinks/plugins/audioplayers_darwin/ios`) - auto_orientation (from `.symlinks/plugins/auto_orientation/ios`) - camera_avfoundation (from `.symlinks/plugins/camera_avfoundation/ios`) - device_info_plus (from `.symlinks/plugins/device_info_plus/ios`) - Flutter (from `Flutter`) - flutter_native_contact_picker (from `.symlinks/plugins/flutter_native_contact_picker/ios`) + - flutter_sound (from `.symlinks/plugins/flutter_sound/ios`) - fluttertoast (from `.symlinks/plugins/fluttertoast/ios`) + - g711_flutter (from `.symlinks/plugins/g711_flutter/ios`) - google_maps_flutter_ios (from `.symlinks/plugins/google_maps_flutter_ios/ios`) + - image_gallery_saver (from `.symlinks/plugins/image_gallery_saver/ios`) - image_picker_ios (from `.symlinks/plugins/image_picker_ios/ios`) + - just_audio (from `.symlinks/plugins/just_audio/ios`) - network_info_plus (from `.symlinks/plugins/network_info_plus/ios`) - package_info_plus (from `.symlinks/plugins/package_info_plus/ios`) - path_provider_foundation (from `.symlinks/plugins/path_provider_foundation/darwin`) @@ -119,6 +139,7 @@ SPEC REPOS: - AMap3DMap - AMapFoundation - AMapLocation + - flutter_sound_core - FMDB - GoogleMaps - Protobuf @@ -134,6 +155,10 @@ EXTERNAL SOURCES: :path: ".symlinks/plugins/amap_flutter_location/ios" amap_flutter_map: :path: ".symlinks/plugins/amap_flutter_map/ios" + audio_session: + :path: ".symlinks/plugins/audio_session/ios" + audioplayers_darwin: + :path: ".symlinks/plugins/audioplayers_darwin/ios" auto_orientation: :path: ".symlinks/plugins/auto_orientation/ios" camera_avfoundation: @@ -144,12 +169,20 @@ EXTERNAL SOURCES: :path: Flutter flutter_native_contact_picker: :path: ".symlinks/plugins/flutter_native_contact_picker/ios" + flutter_sound: + :path: ".symlinks/plugins/flutter_sound/ios" fluttertoast: :path: ".symlinks/plugins/fluttertoast/ios" + g711_flutter: + :path: ".symlinks/plugins/g711_flutter/ios" google_maps_flutter_ios: :path: ".symlinks/plugins/google_maps_flutter_ios/ios" + image_gallery_saver: + :path: ".symlinks/plugins/image_gallery_saver/ios" image_picker_ios: :path: ".symlinks/plugins/image_picker_ios/ios" + just_audio: + :path: ".symlinks/plugins/just_audio/ios" network_info_plus: :path: ".symlinks/plugins/network_info_plus/ios" package_info_plus: @@ -184,31 +217,38 @@ SPEC CHECKSUMS: amap_flutter_map: 979e54d227cedac6c7504a2151bfbf3bcf96760a AMapFoundation: 9885c48fc3a78fdfb84a0299a2293e56ea3c9fec AMapLocation: 5248aec2455ebb5d104b367813c946430a2ee033 + audio_session: 4f3e461722055d21515cf3261b64c973c062f345 + audioplayers_darwin: 877d9a4d06331c5c374595e46e16453ac7eafa40 auto_orientation: 102ed811a5938d52c86520ddd7ecd3a126b5d39d camera_avfoundation: 3125e8cd1a4387f6f31c6c63abb8a55892a9eeeb device_info_plus: e5c5da33f982a436e103237c0c85f9031142abed EMASRest: 8df6f87836767a9415ad5cc4af739bc9d215b475 Flutter: f04841e97a9d0b0a8025694d0796dd46242b2854 flutter_native_contact_picker: bd430ba0fbf82768bb50c2c52a69a65759a8f907 - fluttertoast: 31b00dabfa7fb7bacd9e7dbee580d7a2ff4bf265 + flutter_sound: c60effa2a350fb977885f0db2fbc4c1ad5160900 + flutter_sound_core: 26c10e5832e76aaacfae252d8925232281c486ae + fluttertoast: fafc4fa4d01a6a9e4f772ecd190ffa525e9e2d9c FMDB: 2ce00b547f966261cd18927a3ddb07cb6f3db82a + g711_flutter: 8f2769052d2cf3549f83d11e1c42d81d94441123 google_maps_flutter_ios: abdac20d6ce8931f6ebc5f46616df241bfaa2cfd GoogleMaps: 025272d5876d3b32604e5c080dc25eaf68764693 + image_gallery_saver: cb43cc43141711190510e92c460eb1655cd343cb image_picker_ios: 4a8aadfbb6dc30ad5141a2ce3832af9214a705b5 + just_audio: baa7252489dbcf47a4c7cc9ca663e9661c99aafa network_info_plus: 6d0c3eb8367b8164fa3fb0c19875e3f59d49697f package_info_plus: 6c92f08e1f853dc01228d6f553146438dafcd14e path_provider_foundation: 29f094ae23ebbca9d3d0cec13889cd9060c0e943 permission_handler_apple: e76247795d700c14ea09e3a2d8855d41ee80a2e6 - Protobuf: d94761c33f1239c0a43a0817ca1a5f7f7c900241 + Protobuf: 6a4183ec1d51649eb2be7b86ccc286e5c539219c reactive_ble_mobile: 9ce6723d37ccf701dbffd202d487f23f5de03b4c shared_preferences_foundation: 5b919d13b803cadd15ed2dc053125c68730e5126 sqflite: 31f7eba61e3074736dff8807a9b41581e4f7f15a SwiftProtobuf: 69f02cd54fb03201c5e6bf8b76f687c5ef7541a3 Toast: 91b396c56ee72a5790816f40d3a94dd357abc196 - url_launcher_ios: 08a3dfac5fb39e8759aeb0abbd5d9480f30fc8b4 + url_launcher_ios: bf5ce03e0e2088bad9cc378ea97fa0ed5b49673b video_player_avfoundation: 81e49bb3d9fb63dccf9fa0f6d877dc3ddbeac126 webview_flutter_wkwebview: 2e2d318f21a5e036e2c3f26171342e95908bd60a PODFILE CHECKSUM: adf6d8caf5faa9ea4ee2a2ea37f5aea37a6520d7 -COCOAPODS: 1.14.3 +COCOAPODS: 1.12.1 diff --git a/star_lock/ios/Runner.xcodeproj/project.pbxproj b/star_lock/ios/Runner.xcodeproj/project.pbxproj index c4056a2b..382e887c 100644 --- a/star_lock/ios/Runner.xcodeproj/project.pbxproj +++ b/star_lock/ios/Runner.xcodeproj/project.pbxproj @@ -666,7 +666,7 @@ 97C146E61CF9000F007C117D /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 1300; + LastUpgradeCheck = 1430; ORGANIZATIONNAME = ""; TargetAttributes = { 97C146ED1CF9000F007C117D = { diff --git a/star_lock/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/star_lock/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme index 77bd9a21..2820dca7 100644 --- a/star_lock/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme +++ b/star_lock/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -1,6 +1,6 @@ data = iframe!.bb!.sublist(0, iframe!.cur_len); - print('播放第${iframe!.iframeIndex}帧 一帧图片的Data: $growableList'); - String hexString = - uint8ListToHexString(Uint8List.fromList(growableList)); - // print('播放第${iframe!.iframeIndex}帧 hexStringLength:${hexString.length} 一帧图片的hexStringData: $hexString'); // 输出: 0a141e28 - - // if (iframe!.iframeIndex == 1) { - print('下面就是你要的'); - printByteArray('播放第${iframe!.iframeIndex}帧 一帧图片的hexStringData: ', - Uint8List.fromList(growableList)); + print( + '播放第${iframe!.iframeIndex}帧 一帧图片的hexStringData: ${Uint8List.fromList(growableList)}'); eventBus.fire(GetTVDataRefreshUI(growableList)); - // } - // eventBus.fire(GetTVDataRefreshUI(growableList)); } - - // Get.toNamed(Routers.lockMonitoringPage, arguments: { - // "lockId": "111" - // }); - // 打印拷贝后的目标数据 - // print(iframe.bb); } } +//视频相关处理 void printByteArray(String printTitle, Uint8List byteArray) { final int chunkSize = byteArray.length; // 每行显示的字节数 int length = byteArray.length; @@ -164,29 +127,7 @@ class CallTalk { } } - String uint8ListToHexString(Uint8List uint8List) { - return hex.encode(uint8List); - } - - int getShortFromByte(Uint8List bb, int pos) { - ByteData byteData = ByteData.sublistView(bb, pos, pos + 2); - return byteData.getInt16(0, Endian.little); - } - - void copyBytes(Uint8List destination, int destStart, Uint8List source, - int sourceStart, int length) { - if (destination.length < destStart + length || - source.length < sourceStart + length) { - // 处理越界的情况,这里你可以抛出异常或者进行其他处理 - print('Error: Index out of range'); - return; - } - - for (int i = 0; i < length; i++) { - destination[destStart + i] = source[sourceStart + i]; - } - } - + //音频相关处理 Future _initializeAudioPlayer() async { await _audioPlayer.openPlayer(); } From 962c7cfdedf395362a8685e5fce415008587fb7c Mon Sep 17 00:00:00 2001 From: Daisy <> Date: Wed, 20 Dec 2023 16:52:18 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E8=A7=A3=E5=86=B3=E6=94=B6=E5=88=B0?= =?UTF-8?q?=E8=A7=86=E9=A2=91=E6=95=B0=E6=8D=AE=E5=90=8E=E5=8A=A0=E8=BD=BD?= =?UTF-8?q?=E5=88=B7=E6=96=B0=E7=99=BD=E5=B1=8F=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../monitoring/lockMonitoring_logic.dart | 17 ++- .../monitoring/lockMonitoring_page.dart | 105 +++++++++--------- .../monitoring/lockMonitoring_state.dart | 4 +- star_lock/lib/talk/call/callTalk.dart | 12 +- star_lock/lib/talk/udp/udp_help.dart | 23 ++-- star_lock/lib/talk/udp/udp_talkClass.dart | 41 ++++--- star_lock/lib/tools/eventBusEventManage.dart | 30 +++-- 7 files changed, 132 insertions(+), 100 deletions(-) diff --git a/star_lock/lib/main/lockDetail/monitoring/monitoring/lockMonitoring_logic.dart b/star_lock/lib/main/lockDetail/monitoring/monitoring/lockMonitoring_logic.dart index 8efa1e76..e02602e2 100644 --- a/star_lock/lib/main/lockDetail/monitoring/monitoring/lockMonitoring_logic.dart +++ b/star_lock/lib/main/lockDetail/monitoring/monitoring/lockMonitoring_logic.dart @@ -1,6 +1,7 @@ - import 'dart:async'; +import 'package:flutter/services.dart'; + import '../../../../tools/baseGetXController.dart'; import '../../../../tools/eventBusEventManage.dart'; import 'lockMonitoring_state.dart'; @@ -12,8 +13,14 @@ class LockMonitoringLogic extends BaseGetXController { StreamSubscription? _getTVDataRefreshUIEvent; void _getTVDataRefreshUIAction() { // 蓝牙协议通知传输跟蓝牙之外的数据传输类不一样 eventBus - _getTVDataRefreshUIEvent = eventBus.on().listen((event) { - state.listData.value = event.tvList; + _getTVDataRefreshUIEvent = + eventBus.on().listen((event) { + if (event.tvList.isNotEmpty) { + // 预加载图片数据 + Uint8List imageData = Uint8List.fromList(event.tvList); + // 更新状态 + state.listData.value = imageData; + } }); } @@ -30,7 +37,6 @@ class LockMonitoringLogic extends BaseGetXController { void onInit() { // TODO: implement onInit super.onInit(); - } @override @@ -39,5 +45,4 @@ class LockMonitoringLogic extends BaseGetXController { print("锁详情界面销毁了"); _getTVDataRefreshUIEvent!.cancel(); } - -} \ No newline at end of file +} diff --git a/star_lock/lib/main/lockDetail/monitoring/monitoring/lockMonitoring_page.dart b/star_lock/lib/main/lockDetail/monitoring/monitoring/lockMonitoring_page.dart index 4bb5d31c..6bf7186b 100644 --- a/star_lock/lib/main/lockDetail/monitoring/monitoring/lockMonitoring_page.dart +++ b/star_lock/lib/main/lockDetail/monitoring/monitoring/lockMonitoring_page.dart @@ -1,3 +1,5 @@ +import 'dart:convert'; + import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; @@ -23,63 +25,60 @@ class _LockMonitoringPageState extends State { return SizedBox( width: 1.sw, height: 1.sh, - // color: Colors.transparent, child: Stack( - // alignment: Alignment.bottomCenter, - children: [ - // state.listData.value.isEmpty ? Image.asset("images/icon_test20231113.png", width: 1.sw, height: 1.sh, fit: BoxFit.cover) : - Obx(() => - state.listData.value.isEmpty - ? Container(color: Colors.red) - :Image.memory( - Uint8List.fromList(state.listData.value), - width: 1.sw, - height: 1.sh, - fit: BoxFit.cover, - )), - Positioned( - top: ScreenUtil().statusBarHeight + 30.h, - child: Row(children: [ - SizedBox(width: 30.w), - GestureDetector( - onTap: () { - Get.back(); - }, - child: Container( - decoration: BoxDecoration( - color: Colors.white, - borderRadius: BorderRadius.circular(25.h)), - padding: EdgeInsets.all(10.w), - child: Image( - width: 40.w, - height: 40.w, - image: const AssetImage("images/icon_left_black.png"), - ), - ), + children: [ + Obx(() => state.listData.value.isEmpty + ? Container(color: Colors.transparent) + : Image.memory( + state.listData.value, + gaplessPlayback: true, + width: 1.sw, + height: 1.sh, + fit: BoxFit.cover, + )), + Positioned( + top: ScreenUtil().statusBarHeight + 30.h, + child: Row(children: [ + SizedBox(width: 30.w), + GestureDetector( + onTap: () { + Get.back(); + }, + child: Container( + decoration: BoxDecoration( + color: Colors.white, + borderRadius: BorderRadius.circular(25.h)), + padding: EdgeInsets.all(10.w), + child: Image( + width: 40.w, + height: 40.w, + image: const AssetImage("images/icon_left_black.png"), ), - ]), + ), ), - Positioned( - bottom: 10.w, - child: Container( - width: 1.sw - 30.w * 2, - // height: 300.h, - margin: EdgeInsets.all(30.w), - decoration: BoxDecoration( - color: const Color(0xC83C3F41), - borderRadius: BorderRadius.circular(20.h)), - child: Column( - children: [ - SizedBox(height: 20.h), - bottomTopBtnWidget(), - SizedBox(height: 20.h), - bottomBottomBtnWidget(), - SizedBox(height: 20.h), - ], - ), - )) - ], + ]), ), + Positioned( + bottom: 10.w, + child: Container( + width: 1.sw - 30.w * 2, + // height: 300.h, + margin: EdgeInsets.all(30.w), + decoration: BoxDecoration( + color: const Color(0xC83C3F41), + borderRadius: BorderRadius.circular(20.h)), + child: Column( + children: [ + SizedBox(height: 20.h), + bottomTopBtnWidget(), + SizedBox(height: 20.h), + bottomBottomBtnWidget(), + SizedBox(height: 20.h), + ], + ), + )) + ], + ), ); } diff --git a/star_lock/lib/main/lockDetail/monitoring/monitoring/lockMonitoring_state.dart b/star_lock/lib/main/lockDetail/monitoring/monitoring/lockMonitoring_state.dart index ed1135ca..977559ef 100644 --- a/star_lock/lib/main/lockDetail/monitoring/monitoring/lockMonitoring_state.dart +++ b/star_lock/lib/main/lockDetail/monitoring/monitoring/lockMonitoring_state.dart @@ -5,9 +5,9 @@ import 'package:get/get.dart'; class LockMonitoringState { var isOpenVoice = false.obs; - var listData = [].obs; + var listData = Uint8List(0).obs; - Uint8List imageData = Uint8List.fromList([ + Uint8List imageData = Uint8List.fromList([ 255, 216, 255, diff --git a/star_lock/lib/talk/call/callTalk.dart b/star_lock/lib/talk/call/callTalk.dart index f09379aa..ceb81f90 100644 --- a/star_lock/lib/talk/call/callTalk.dart +++ b/star_lock/lib/talk/call/callTalk.dart @@ -1,6 +1,9 @@ import 'dart:typed_data'; import 'package:flutter/material.dart'; import 'package:flutter_sound/flutter_sound.dart'; +import 'package:get/get.dart'; +import 'package:get/get_core/src/get_main.dart'; +import 'package:star_lock/appRouters.dart'; import 'package:star_lock/main/lockDetail/monitoring/monitoring/lockMonitoring_page.dart'; import 'package:star_lock/talk/call/g711Decoder.dart'; import 'package:star_lock/talk/call/iFrameInfo.dart'; @@ -21,7 +24,7 @@ class CallTalk { int status = 0; // 假设有这个成员变量 IframeInfo? iframe; // 假设有这个成员变量 var growableList; - LockMonitoringPage callOut = const LockMonitoringPage(); + bool getFirstFrame = false; //是否得到了第一帧 final FlutterSoundPlayer _audioPlayer = FlutterSoundPlayer(); CallTalk._init() { @@ -107,6 +110,13 @@ class CallTalk { if (iframe!.bagNum == iframe!.bagReceive) { print( '播放第${iframe!.iframeIndex}帧 一帧图片的hexStringData: ${Uint8List.fromList(growableList)}'); + + //判断第一帧是否接收到 + if (iframe!.iframeIndex == 0) { + getFirstFrame = true; + eventBus.fire(GetFirstFrameGoPush(getFirstFrame)); + } + eventBus.fire(GetTVDataRefreshUI(growableList)); } } diff --git a/star_lock/lib/talk/udp/udp_help.dart b/star_lock/lib/talk/udp/udp_help.dart index c6bea328..6b47e50b 100644 --- a/star_lock/lib/talk/udp/udp_help.dart +++ b/star_lock/lib/talk/udp/udp_help.dart @@ -1,5 +1,3 @@ - - import 'dart:async'; import 'dart:io'; @@ -10,32 +8,33 @@ import '../../tools/storage.dart'; import 'udp_manage.dart'; import 'udp_senderManage.dart'; -class UdpHelp{ - +class UdpHelp { openUDP() async { // 从服务器获取ip跟端口 var entity = await ApiRepository.to.getWifiLockServiceIpAndPort(); - if(entity.errorCode! == 0){ + if (entity.errorCode! == 0) { UDPManage(); // UDPManage().initUdp(); // UDPManage().host = entity.data!.serviceList![0].serviceIp!; // UDPManage().port = int.parse(entity.data!.serviceList![0].port!); var serversList = []; - for(int i = 0; i addresses = await InternetAddress.lookup(item.serviceIp!); + } else { + List addresses = + await InternetAddress.lookup(item.serviceIp!); var itemList = addresses.first.address.split("."); for (var element in itemList) { serversList.add(int.parse(element)); } - print('Resolved google.com to address: ${addresses.first.address} serversList:${serversList}'); + print( + 'Resolved google.com to address: ${addresses.first.address} serversList:${serversList}'); } } @@ -51,9 +50,7 @@ class UdpHelp{ Future getWifiLockServiceIpAndPort() async { var entity = await ApiRepository.to.getWifiLockServiceIpAndPort(); - if(entity.errorCode! == 0){ - - } + if (entity.errorCode! == 0) {} } } diff --git a/star_lock/lib/talk/udp/udp_talkClass.dart b/star_lock/lib/talk/udp/udp_talkClass.dart index 05d0739b..cf47132b 100644 --- a/star_lock/lib/talk/udp/udp_talkClass.dart +++ b/star_lock/lib/talk/udp/udp_talkClass.dart @@ -1,28 +1,29 @@ - import 'dart:async'; import 'package:fast_gbk/fast_gbk.dart'; import 'package:flutter/material.dart'; import 'package:get/get.dart'; +import 'package:star_lock/tools/eventBusEventManage.dart'; import '../../appRouters.dart'; import '../../main/lockDetail/monitoring/monitoring/lockMonitoring_page.dart'; import '../../tools/storage.dart'; import 'udp_manage.dart'; -class UDPTalkClass{ +class UDPTalkClass { static UDPTalkClass? _manager; - static UDPTalkClass _share(){ + static UDPTalkClass _share() { _manager ??= UDPTalkClass._init(); return _manager!; } + factory UDPTalkClass() => _share(); UDPTalkClass get manager => _share(); UDPTalkClass._init(); - var status = 0;// 0空闲 - var remoteEquid;// 手机号 + var status = 0; // 0空闲 + var remoteEquid; // 手机号 late Timer timer; // 该字段是为了判断是否跳转到接听界面 挂断或者退出接听界面要记得变更状态 var isBeCall = false; @@ -33,7 +34,7 @@ class UDPTalkClass{ // return; // } - if(status == 0){ + if (status == 0) { // 空闲 // 响铃 // [[Pub getApp] ring]; @@ -65,22 +66,36 @@ class UDPTalkClass{ data[8] = 9; UDPManage().sendData(data); }); + + // _getFirstFrameGoPushAction(); + Future.delayed(const Duration(seconds: 1), () { + // 在这里写要延迟执行的代码 + Get.toNamed(Routers.lockMonitoringPage, arguments: {"lockId": "111"}); + }); } - - Get.toNamed(Routers.lockMonitoringPage, arguments: { - "lockId": "111" - }); - }else{ + } else { // 忙 - } } + void _getFirstFrameGoPushAction() { + // 蓝牙协议通知传输跟蓝牙之外的数据传输类不一样 eventBus + StreamSubscription _GetFirstFrameGoPushEvent = + eventBus.on().listen((event) { + if (event.isFirstFrame == true) { + Future.delayed(const Duration(seconds: 1), () { + // 在这里写要延迟执行的代码 + Get.toNamed(Routers.lockMonitoringPage, arguments: {"lockId": "111"}); + }); + } + }); + } + // 判断是否是call的本人 Future isCallMe(List? data) async { final loginData = await Storage.getLoginData(); print("getEquidFrombb(data, 1000):${getEquidFrombb(data, 12)}"); - if(loginData!.mobile == getEquidFrombb(data, 12)){ + if (loginData!.mobile == getEquidFrombb(data, 12)) { return true; } return false; diff --git a/star_lock/lib/tools/eventBusEventManage.dart b/star_lock/lib/tools/eventBusEventManage.dart index 7958e493..84b58165 100644 --- a/star_lock/lib/tools/eventBusEventManage.dart +++ b/star_lock/lib/tools/eventBusEventManage.dart @@ -6,58 +6,64 @@ import '../main/lockDetail/lcokSet/lockSet/lockSetInfo_entity.dart'; EventBus eventBus = EventBus(); /// 刷新锁列表数据 -class RefreshLockListInfoDataEvent{ +class RefreshLockListInfoDataEvent { RefreshLockListInfoDataEvent(); } /// 刷新考勤员工列表 -class RefreshCheckInStaffListDataEvent{ +class RefreshCheckInStaffListDataEvent { RefreshCheckInStaffListDataEvent(); } /// 传递当前锁信息 -class PassCurrentLockInformationEvent{ +class PassCurrentLockInformationEvent { LockSetInfoData lockSetInfoData; PassCurrentLockInformationEvent(this.lockSetInfoData); } /// 卡、密码、指纹修改之后刷新列表 -class OtherTypeRefreshListEvent{ +class OtherTypeRefreshListEvent { OtherTypeRefreshListEvent(); } /// 考情添加员工卡、指纹之后回调卡、指纹number -class ChickInAddStaffCardAndFingerprintBlockNumberEvent{ +class ChickInAddStaffCardAndFingerprintBlockNumberEvent { String number; ChickInAddStaffCardAndFingerprintBlockNumberEvent(this.number); } /// Uuid删除当前锁时 有可能锁被初始化了 但后台没被初始化 当打开APP的时候扫描如果未被连接就传uuid过去 判断直接删除数据 -class ScanAllDeviceFindCurrentDeviceConnectedEvent{ +class ScanAllDeviceFindCurrentDeviceConnectedEvent { String uuid; ScanAllDeviceFindCurrentDeviceConnectedEvent(this.uuid); } /// 多语言 切换之后传值到上一级界面 -class ChangeLanguageBlockLastLanguageEvent{ +class ChangeLanguageBlockLastLanguageEvent { String languageTitle; ChangeLanguageBlockLastLanguageEvent(this.languageTitle); } /// 锁分组添加或者删除锁之后刷新首页数据 -class LockGroupEditGroupLockRefreshEvent{ +class LockGroupEditGroupLockRefreshEvent { LockGroupEditGroupLockRefreshEvent(); } /// 锁设置里面开启关闭刷新锁详情 -class LockSetChangeSetRefreshLockDetailWithType{ - int type;// 0 考勤 1开锁时是否需联网 +class LockSetChangeSetRefreshLockDetailWithType { + int type; // 0 考勤 1开锁时是否需联网 int setResult; LockSetChangeSetRefreshLockDetailWithType(this.type, this.setResult); } /// 获取到视频流数据然后刷新界面 -class GetTVDataRefreshUI{ +class GetTVDataRefreshUI { List tvList; GetTVDataRefreshUI(this.tvList); -} \ No newline at end of file +} + +/// 获取到第一帧图片数据后跳转 +class GetFirstFrameGoPush { + bool isFirstFrame; + GetFirstFrameGoPush(this.isFirstFrame); +} From ca3e9a62c716cc68c8dc91f0f0b1eaf8a4bf8009 Mon Sep 17 00:00:00 2001 From: Daisy <> Date: Thu, 21 Dec 2023 10:18:02 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E5=BD=95=E9=9F=B3?= =?UTF-8?q?=E6=96=B9=E6=B3=95=EF=BC=88=E5=BE=85=E9=AA=8C=E8=AF=81=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../monitoring/lockMonitoring_page.dart | 49 +- .../monitoring/lockMonitoring_state.dart | 14165 +--------------- 2 files changed, 47 insertions(+), 14167 deletions(-) diff --git a/star_lock/lib/main/lockDetail/monitoring/monitoring/lockMonitoring_page.dart b/star_lock/lib/main/lockDetail/monitoring/monitoring/lockMonitoring_page.dart index 6bf7186b..797f9c5d 100644 --- a/star_lock/lib/main/lockDetail/monitoring/monitoring/lockMonitoring_page.dart +++ b/star_lock/lib/main/lockDetail/monitoring/monitoring/lockMonitoring_page.dart @@ -1,11 +1,9 @@ -import 'dart:convert'; - import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; +import 'package:flutter_sound/flutter_sound.dart'; import 'package:get/get.dart'; -import '../../../../appRouters.dart'; import '../../../../app_settings/app_colors.dart'; import 'lockMonitoring_logic.dart'; @@ -20,6 +18,17 @@ class _LockMonitoringPageState extends State { final logic = Get.put(LockMonitoringLogic()); final state = Get.find().state; + late FlutterSoundRecorder recorder; + late FlutterSoundPlayer player; + late String filePath; + + @override + void initState() { + super.initState(); + + _initRecorder(); + } + @override Widget build(BuildContext context) { return SizedBox( @@ -31,6 +40,7 @@ class _LockMonitoringPageState extends State { ? Container(color: Colors.transparent) : Image.memory( state.listData.value, + // key: ValueKey(state.listData.value.hashCode), gaplessPlayback: true, width: 1.sw, height: 1.sh, @@ -177,4 +187,37 @@ class _LockMonitoringPageState extends State { )), ); } + + //录音处理 + _initRecorder() { + recorder = FlutterSoundRecorder(); + } + +//开始录音 + _startRecording() async { + filePath = 'your_output_file.wav'; + await recorder.startRecorder( + toFile: filePath, + codec: Codec.pcm16WAV, + ); + } + +//停止录音 + _stopRecording() async { + await recorder.stopRecorder(); + } + +//播放录音 + _playRecording() async { + player = FlutterSoundPlayer(); + await player.startPlayer( + fromURI: filePath, + codec: Codec.pcm16WAV, + ); + } + +//停止播放 + _stopPlaying() async { + await player.stopPlayer(); + } } diff --git a/star_lock/lib/main/lockDetail/monitoring/monitoring/lockMonitoring_state.dart b/star_lock/lib/main/lockDetail/monitoring/monitoring/lockMonitoring_state.dart index 977559ef..113b1393 100644 --- a/star_lock/lib/main/lockDetail/monitoring/monitoring/lockMonitoring_state.dart +++ b/star_lock/lib/main/lockDetail/monitoring/monitoring/lockMonitoring_state.dart @@ -5,14168 +5,5 @@ import 'package:get/get.dart'; class LockMonitoringState { var isOpenVoice = false.obs; - var listData = Uint8List(0).obs; - - Uint8List imageData = Uint8List.fromList([ - 255, - 216, - 255, - 224, - 0, - 17, - 74, - 70, - 73, - 70, - 0, - 1, - 1, - 0, - 0, - 1, - 0, - 1, - 0, - 0, - 204, - 255, - 225, - 0, - 166, - 69, - 120, - 105, - 102, - 0, - 0, - 77, - 77, - 0, - 42, - 0, - 0, - 0, - 8, - 0, - 8, - 1, - 15, - 0, - 2, - 0, - 0, - 0, - 7, - 0, - 0, - 0, - 122, - 1, - 16, - 0, - 2, - 0, - 0, - 0, - 8, - 0, - 0, - 0, - 130, - 1, - 18, - 0, - 3, - 0, - 0, - 0, - 1, - 0, - 1, - 0, - 0, - 1, - 26, - 0, - 5, - 0, - 0, - 0, - 1, - 0, - 0, - 0, - 38, - 1, - 27, - 0, - 5, - 0, - 0, - 0, - 1, - 0, - 0, - 0, - 38, - 1, - 40, - 0, - 3, - 0, - 0, - 0, - 1, - 0, - 2, - 0, - 0, - 2, - 19, - 0, - 3, - 0, - 0, - 0, - 1, - 0, - 1, - 0, - 0, - 135, - 105, - 0, - 4, - 0, - 0, - 0, - 1, - 0, - 0, - 0, - 138, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 4, - 105, - 112, - 112, - 0, - 0, - 0, - 3, - 194, - 74, - 76, - 68, - 86, - 0, - 0, - 0, - 0, - 65, - 67, - 53, - 52, - 0, - 0, - 0, - 0, - 0, - 1, - 144, - 0, - 0, - 7, - 0, - 0, - 0, - 4, - 48, - 50, - 50, - 48, - 0, - 0, - 0, - 0, - 0, - 0, - 255, - 219, - 0, - 67, - 0, - 40, - 28, - 30, - 35, - 30, - 25, - 40, - 35, - 33, - 35, - 45, - 43, - 40, - 48, - 60, - 100, - 65, - 60, - 55, - 55, - 60, - 123, - 88, - 93, - 73, - 100, - 145, - 128, - 153, - 150, - 143, - 128, - 140, - 138, - 160, - 180, - 230, - 195, - 160, - 170, - 218, - 173, - 138, - 140, - 200, - 255, - 203, - 218, - 238, - 245, - 255, - 255, - 255, - 155, - 193, - 255, - 255, - 255, - 250, - 255, - 230, - 253, - 255, - 248, - 255, - 219, - 0, - 67, - 1, - 43, - 45, - 45, - 60, - 53, - 60, - 118, - 65, - 65, - 118, - 248, - 165, - 140, - 165, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 248, - 255, - 192, - 0, - 17, - 8, - 1, - 224, - 2, - 128, - 3, - 1, - 34, - 0, - 2, - 17, - 1, - 3, - 17, - 1, - 255, - 196, - 0, - 31, - 0, - 0, - 1, - 5, - 1, - 1, - 1, - 1, - 1, - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 255, - 196, - 0, - 31, - 1, - 0, - 3, - 1, - 1, - 1, - 1, - 1, - 1, - 1, - 1, - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 255, - 196, - 0, - 181, - 16, - 0, - 2, - 1, - 3, - 3, - 2, - 4, - 3, - 5, - 5, - 4, - 4, - 0, - 0, - 1, - 125, - 1, - 2, - 3, - 0, - 4, - 17, - 5, - 18, - 33, - 49, - 65, - 6, - 19, - 81, - 97, - 7, - 34, - 113, - 20, - 50, - 129, - 145, - 161, - 8, - 35, - 66, - 177, - 193, - 21, - 82, - 209, - 240, - 36, - 51, - 98, - 114, - 130, - 9, - 10, - 22, - 23, - 24, - 25, - 26, - 37, - 38, - 39, - 40, - 41, - 42, - 52, - 53, - 54, - 55, - 56, - 57, - 58, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 83, - 84, - 85, - 86, - 87, - 88, - 89, - 90, - 99, - 100, - 101, - 102, - 103, - 104, - 105, - 106, - 115, - 116, - 117, - 118, - 119, - 120, - 121, - 122, - 131, - 132, - 133, - 134, - 135, - 136, - 137, - 138, - 146, - 147, - 148, - 149, - 150, - 151, - 152, - 153, - 154, - 162, - 163, - 164, - 165, - 166, - 167, - 168, - 169, - 170, - 178, - 179, - 180, - 181, - 182, - 183, - 184, - 185, - 186, - 194, - 195, - 196, - 197, - 198, - 199, - 200, - 201, - 202, - 210, - 211, - 212, - 213, - 214, - 215, - 216, - 217, - 218, - 225, - 226, - 227, - 228, - 229, - 230, - 231, - 232, - 233, - 234, - 241, - 242, - 243, - 244, - 245, - 246, - 247, - 248, - 249, - 250, - 255, - 196, - 0, - 181, - 17, - 0, - 2, - 1, - 2, - 4, - 4, - 3, - 4, - 7, - 5, - 4, - 4, - 0, - 1, - 2, - 119, - 0, - 1, - 2, - 3, - 17, - 4, - 5, - 33, - 49, - 6, - 18, - 65, - 81, - 7, - 97, - 113, - 19, - 34, - 50, - 129, - 8, - 20, - 66, - 145, - 161, - 177, - 193, - 9, - 35, - 51, - 82, - 240, - 21, - 98, - 114, - 209, - 10, - 22, - 36, - 52, - 225, - 37, - 241, - 23, - 24, - 25, - 26, - 38, - 39, - 40, - 41, - 42, - 53, - 54, - 55, - 56, - 57, - 58, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 83, - 84, - 85, - 86, - 87, - 88, - 89, - 90, - 99, - 100, - 101, - 102, - 103, - 104, - 105, - 106, - 115, - 116, - 117, - 118, - 119, - 120, - 121, - 122, - 130, - 131, - 132, - 133, - 134, - 135, - 136, - 137, - 138, - 146, - 147, - 148, - 149, - 150, - 151, - 152, - 153, - 154, - 162, - 163, - 164, - 165, - 166, - 167, - 168, - 169, - 170, - 178, - 179, - 180, - 181, - 182, - 183, - 184, - 185, - 186, - 194, - 195, - 196, - 197, - 198, - 199, - 200, - 201, - 202, - 210, - 211, - 212, - 213, - 214, - 215, - 216, - 217, - 218, - 226, - 227, - 228, - 229, - 230, - 231, - 232, - 233, - 234, - 242, - 243, - 244, - 245, - 246, - 247, - 248, - 249, - 250, - 255, - 218, - 0, - 12, - 3, - 1, - 0, - 2, - 17, - 3, - 17, - 0, - 63, - 0, - 207, - 162, - 138, - 41, - 0, - 81, - 69, - 20, - 192, - 40, - 162, - 138, - 0, - 41, - 105, - 41, - 104, - 0, - 162, - 138, - 40, - 0, - 162, - 138, - 40, - 0, - 162, - 138, - 40, - 0, - 162, - 138, - 40, - 0, - 162, - 138, - 40, - 0, - 162, - 138, - 40, - 0, - 162, - 138, - 40, - 0, - 162, - 138, - 40, - 0, - 162, - 138, - 40, - 0, - 162, - 138, - 40, - 0, - 165, - 164, - 165, - 164, - 1, - 69, - 20, - 80, - 48, - 164, - 165, - 162, - 128, - 18, - 150, - 138, - 40, - 16, - 81, - 69, - 20, - 12, - 40, - 162, - 138, - 0, - 40, - 162, - 138, - 4, - 20, - 81, - 69, - 0, - 20, - 148, - 180, - 80, - 48, - 164, - 165, - 164, - 160, - 2, - 138, - 40, - 160, - 66, - 210, - 82, - 209, - 64, - 9, - 69, - 45, - 37, - 3, - 10, - 90, - 74, - 40, - 16, - 81, - 69, - 20, - 0, - 180, - 82, - 82, - 208, - 1, - 69, - 20, - 80, - 1, - 73, - 75, - 69, - 0, - 20, - 81, - 69, - 48, - 10, - 41, - 40, - 160, - 5, - 162, - 146, - 138, - 0, - 40, - 162, - 138, - 0, - 40, - 162, - 146, - 129, - 5, - 45, - 37, - 45, - 0, - 20, - 162, - 146, - 148, - 80, - 3, - 197, - 58, - 154, - 41, - 192, - 80, - 4, - 20, - 81, - 69, - 3, - 10, - 40, - 162, - 128, - 10, - 40, - 162, - 128, - 22, - 138, - 74, - 90, - 0, - 40, - 162, - 138, - 0, - 40, - 162, - 138, - 0, - 40, - 162, - 138, - 0, - 40, - 162, - 138, - 0, - 40, - 162, - 138, - 0, - 40, - 162, - 138, - 0, - 40, - 162, - 138, - 0, - 40, - 162, - 150, - 129, - 137, - 69, - 45, - 37, - 2, - 10, - 41, - 104, - 160, - 98, - 81, - 75, - 69, - 33, - 5, - 20, - 81, - 76, - 2, - 138, - 40, - 160, - 97, - 69, - 20, - 80, - 1, - 69, - 20, - 80, - 1, - 69, - 20, - 82, - 0, - 162, - 138, - 40, - 16, - 81, - 69, - 20, - 192, - 40, - 162, - 138, - 6, - 20, - 81, - 69, - 0, - 20, - 81, - 69, - 2, - 10, - 40, - 162, - 144, - 9, - 75, - 69, - 20, - 0, - 81, - 69, - 20, - 12, - 41, - 41, - 105, - 40, - 16, - 180, - 82, - 81, - 64, - 11, - 69, - 37, - 45, - 0, - 20, - 81, - 73, - 64, - 5, - 20, - 81, - 64, - 5, - 20, - 81, - 76, - 2, - 138, - 92, - 81, - 64, - 9, - 69, - 20, - 80, - 2, - 81, - 75, - 73, - 64, - 130, - 150, - 146, - 150, - 128, - 10, - 81, - 73, - 74, - 40, - 1, - 235, - 82, - 129, - 81, - 173, - 74, - 40, - 2, - 165, - 20, - 81, - 64, - 194, - 138, - 40, - 164, - 1, - 69, - 45, - 20, - 192, - 40, - 162, - 138, - 0, - 40, - 162, - 138, - 0, - 40, - 162, - 138, - 0, - 40, - 165, - 162, - 128, - 18, - 138, - 90, - 40, - 1, - 40, - 165, - 164, - 160, - 2, - 138, - 90, - 49, - 64, - 5, - 20, - 98, - 138, - 0, - 40, - 162, - 138, - 0, - 40, - 165, - 2, - 157, - 182, - 128, - 25, - 70, - 42, - 77, - 180, - 161, - 40, - 2, - 60, - 81, - 138, - 147, - 109, - 24, - 160, - 87, - 35, - 197, - 20, - 242, - 41, - 166, - 129, - 137, - 69, - 20, - 162, - 128, - 19, - 20, - 184, - 167, - 1, - 78, - 2, - 128, - 35, - 219, - 70, - 218, - 151, - 20, - 98, - 128, - 185, - 22, - 218, - 93, - 181, - 38, - 40, - 160, - 87, - 35, - 197, - 38, - 41, - 230, - 154, - 104, - 1, - 180, - 81, - 69, - 3, - 12, - 82, - 237, - 165, - 20, - 240, - 40, - 1, - 155, - 104, - 219, - 82, - 224, - 81, - 138, - 5, - 114, - 29, - 180, - 109, - 169, - 182, - 209, - 138, - 66, - 185, - 14, - 218, - 66, - 42, - 82, - 41, - 132, - 83, - 26, - 99, - 40, - 165, - 197, - 24, - 160, - 98, - 81, - 78, - 219, - 70, - 218, - 0, - 109, - 20, - 165, - 72, - 164, - 164, - 1, - 69, - 20, - 80, - 48, - 164, - 165, - 164, - 160, - 66, - 210, - 81, - 69, - 0, - 20, - 81, - 69, - 0, - 20, - 82, - 82, - 208, - 2, - 209, - 73, - 70, - 105, - 128, - 180, - 98, - 129, - 75, - 64, - 13, - 162, - 148, - 210, - 80, - 33, - 41, - 104, - 162, - 128, - 10, - 81, - 73, - 78, - 2, - 128, - 30, - 181, - 42, - 212, - 74, - 42, - 85, - 226, - 128, - 42, - 209, - 69, - 20, - 12, - 40, - 162, - 138, - 6, - 20, - 81, - 69, - 2, - 10, - 40, - 162, - 128, - 10, - 90, - 40, - 160, - 2, - 138, - 49, - 75, - 138, - 0, - 74, - 41, - 104, - 160, - 2, - 140, - 82, - 129, - 78, - 2, - 128, - 25, - 182, - 151, - 109, - 60, - 10, - 118, - 40, - 2, - 61, - 180, - 109, - 169, - 49, - 72, - 104, - 16, - 204, - 83, - 77, - 60, - 211, - 77, - 0, - 54, - 148, - 81, - 138, - 90, - 6, - 40, - 20, - 225, - 77, - 20, - 241, - 64, - 10, - 41, - 192, - 83, - 105, - 232, - 9, - 25, - 160, - 45, - 112, - 197, - 53, - 170, - 109, - 148, - 141, - 23, - 20, - 13, - 65, - 149, - 141, - 52, - 213, - 143, - 39, - 52, - 162, - 220, - 30, - 180, - 138, - 228, - 101, - 90, - 81, - 87, - 214, - 210, - 16, - 57, - 92, - 159, - 173, - 50, - 72, - 99, - 31, - 117, - 64, - 250, - 83, - 14, - 86, - 85, - 6, - 156, - 13, - 59, - 203, - 197, - 33, - 90, - 87, - 14, - 70, - 25, - 164, - 221, - 72, - 69, - 38, - 40, - 23, - 40, - 237, - 212, - 155, - 169, - 184, - 162, - 130, - 108, - 41, - 52, - 211, - 75, - 138, - 93, - 180, - 192, - 101, - 21, - 38, - 204, - 209, - 229, - 154, - 0, - 104, - 52, - 224, - 104, - 242, - 205, - 27, - 13, - 0, - 46, - 234, - 93, - 212, - 205, - 164, - 81, - 131, - 233, - 64, - 135, - 110, - 163, - 117, - 51, - 6, - 146, - 128, - 176, - 226, - 212, - 220, - 210, - 81, - 64, - 210, - 22, - 148, - 83, - 104, - 205, - 3, - 37, - 81, - 82, - 5, - 6, - 161, - 86, - 169, - 85, - 168, - 37, - 138, - 83, - 138, - 141, - 163, - 169, - 195, - 2, - 41, - 9, - 20, - 137, - 43, - 21, - 197, - 52, - 138, - 153, - 170, - 38, - 160, - 105, - 140, - 163, - 52, - 81, - 138, - 101, - 5, - 20, - 237, - 180, - 133, - 77, - 32, - 27, - 69, - 46, - 41, - 41, - 128, - 81, - 69, - 20, - 0, - 180, - 80, - 41, - 104, - 0, - 165, - 164, - 160, - 80, - 1, - 73, - 78, - 164, - 52, - 0, - 148, - 81, - 69, - 2, - 20, - 84, - 138, - 42, - 49, - 79, - 83, - 64, - 19, - 1, - 197, - 6, - 154, - 166, - 159, - 140, - 208, - 50, - 165, - 20, - 82, - 208, - 2, - 82, - 209, - 75, - 64, - 9, - 69, - 45, - 0, - 80, - 49, - 40, - 2, - 165, - 84, - 169, - 86, - 49, - 233, - 64, - 136, - 2, - 26, - 119, - 150, - 106, - 200, - 64, - 41, - 74, - 208, - 23, - 42, - 109, - 164, - 197, - 74, - 194, - 163, - 52, - 8, - 109, - 37, - 45, - 24, - 160, - 96, - 41, - 194, - 140, - 26, - 80, - 166, - 128, - 20, - 26, - 92, - 208, - 16, - 211, - 196, - 102, - 128, - 35, - 205, - 24, - 38, - 166, - 17, - 84, - 139, - 21, - 0, - 86, - 17, - 19, - 235, - 75, - 246, - 126, - 249, - 53, - 117, - 99, - 160, - 165, - 49, - 20, - 124, - 172, - 83, - 132, - 85, - 107, - 203, - 165, - 9, - 64, - 238, - 87, - 88, - 135, - 165, - 57, - 98, - 201, - 171, - 1, - 105, - 225, - 104, - 17, - 7, - 146, - 41, - 66, - 96, - 99, - 29, - 42, - 198, - 41, - 49, - 65, - 73, - 145, - 5, - 164, - 97, - 206, - 42, - 99, - 128, - 42, - 34, - 50, - 106, - 90, - 54, - 140, - 144, - 220, - 82, - 138, - 93, - 180, - 187, - 105, - 88, - 110, - 104, - 66, - 213, - 11, - 181, - 78, - 87, - 138, - 173, - 50, - 28, - 113, - 79, - 81, - 115, - 161, - 140, - 226, - 155, - 184, - 26, - 174, - 229, - 129, - 193, - 20, - 138, - 228, - 81, - 98, - 92, - 203, - 36, - 83, - 77, - 52, - 62, - 69, - 52, - 181, - 22, - 5, - 49, - 244, - 10, - 64, - 185, - 239, - 74, - 84, - 47, - 66, - 77, - 52, - 153, - 18, - 104, - 92, - 10, - 51, - 81, - 151, - 166, - 150, - 162, - 196, - 19, - 6, - 169, - 20, - 138, - 169, - 184, - 210, - 172, - 132, - 119, - 166, - 5, - 224, - 160, - 211, - 182, - 85, - 120, - 166, - 171, - 11, - 32, - 52, - 132, - 2, - 47, - 106, - 67, - 21, - 74, - 172, - 41, - 220, - 80, - 50, - 185, - 139, - 218, - 155, - 229, - 123, - 85, - 154, - 118, - 40, - 2, - 153, - 134, - 163, - 49, - 85, - 242, - 5, - 70, - 202, - 40, - 11, - 148, - 76, - 102, - 147, - 97, - 171, - 155, - 40, - 49, - 138, - 2, - 229, - 61, - 166, - 128, - 72, - 171, - 6, - 58, - 97, - 74, - 7, - 114, - 61, - 196, - 81, - 190, - 148, - 173, - 33, - 90, - 65, - 97, - 11, - 83, - 9, - 167, - 21, - 164, - 197, - 48, - 18, - 156, - 41, - 180, - 103, - 20, - 1, - 50, - 129, - 78, - 41, - 80, - 135, - 197, - 76, - 175, - 145, - 64, - 152, - 198, - 142, - 152, - 80, - 213, - 140, - 138, - 105, - 197, - 34, - 28, - 138, - 229, - 113, - 77, - 169, - 159, - 165, - 68, - 104, - 26, - 98, - 10, - 80, - 105, - 40, - 166, - 89, - 32, - 165, - 197, - 52, - 26, - 118, - 104, - 1, - 166, - 146, - 156, - 105, - 40, - 1, - 180, - 82, - 209, - 64, - 130, - 156, - 180, - 220, - 83, - 212, - 80, - 50, - 69, - 28, - 212, - 234, - 6, - 42, - 21, - 226, - 165, - 86, - 160, - 10, - 84, - 180, - 184, - 163, - 20, - 0, - 148, - 81, - 69, - 0, - 45, - 57, - 105, - 180, - 229, - 160, - 9, - 148, - 84, - 171, - 80, - 169, - 169, - 3, - 80, - 4, - 162, - 152, - 198, - 144, - 18, - 105, - 226, - 50, - 105, - 138, - 197, - 118, - 4, - 211, - 54, - 19, - 86, - 204, - 84, - 162, - 33, - 233, - 64, - 202, - 130, - 35, - 82, - 44, - 85, - 103, - 203, - 20, - 161, - 61, - 168, - 2, - 1, - 21, - 60, - 69, - 197, - 78, - 20, - 83, - 130, - 208, - 4, - 2, - 58, - 112, - 142, - 166, - 43, - 73, - 138, - 4, - 48, - 32, - 167, - 5, - 2, - 150, - 138, - 0, - 81, - 72, - 122, - 209, - 72, - 104, - 1, - 40, - 162, - 148, - 80, - 2, - 83, - 133, - 54, - 156, - 40, - 1, - 212, - 220, - 210, - 154, - 109, - 0, - 45, - 38, - 41, - 105, - 40, - 1, - 69, - 46, - 40, - 20, - 80, - 2, - 26, - 97, - 64, - 105, - 230, - 129, - 64, - 21, - 38, - 128, - 30, - 213, - 81, - 237, - 202, - 244, - 173, - 98, - 51, - 81, - 180, - 96, - 208, - 51, - 32, - 171, - 14, - 162, - 144, - 31, - 99, - 90, - 166, - 0, - 123, - 83, - 77, - 184, - 244, - 160, - 10, - 8, - 222, - 185, - 167, - 51, - 130, - 56, - 205, - 90, - 54, - 227, - 251, - 181, - 20, - 176, - 145, - 210, - 157, - 198, - 149, - 202, - 189, - 77, - 61, - 98, - 45, - 222, - 151, - 111, - 53, - 60, - 56, - 21, - 55, - 27, - 129, - 92, - 219, - 181, - 70, - 200, - 203, - 214, - 181, - 70, - 210, - 57, - 166, - 73, - 10, - 176, - 166, - 77, - 140, - 176, - 216, - 169, - 82, - 67, - 235, - 73, - 60, - 69, - 14, - 69, - 70, - 185, - 6, - 144, - 172, - 94, - 73, - 13, - 72, - 37, - 245, - 53, - 90, - 35, - 82, - 26, - 5, - 98, - 202, - 56, - 53, - 40, - 35, - 21, - 68, - 54, - 13, - 74, - 178, - 80, - 4, - 228, - 211, - 77, - 51, - 125, - 25, - 160, - 7, - 80, - 104, - 205, - 52, - 154, - 4, - 6, - 152, - 105, - 73, - 166, - 208, - 2, - 98, - 147, - 109, - 62, - 138, - 2, - 228, - 101, - 105, - 133, - 42, - 108, - 81, - 138, - 101, - 92, - 174, - 82, - 154, - 86, - 172, - 145, - 77, - 42, - 13, - 0, - 86, - 193, - 160, - 18, - 166, - 167, - 41, - 77, - 217, - 72, - 6, - 249, - 148, - 134, - 67, - 74, - 99, - 166, - 148, - 52, - 172, - 43, - 33, - 11, - 102, - 155, - 154, - 92, - 26, - 74, - 99, - 176, - 229, - 25, - 171, - 240, - 91, - 43, - 32, - 56, - 172, - 244, - 59, - 79, - 181, - 104, - 89, - 92, - 99, - 228, - 99, - 211, - 165, - 0, - 19, - 89, - 113, - 149, - 224, - 213, - 70, - 70, - 66, - 67, - 14, - 149, - 184, - 10, - 186, - 228, - 84, - 19, - 66, - 27, - 156, - 83, - 11, - 152, - 230, - 146, - 172, - 203, - 6, - 210, - 72, - 226, - 171, - 145, - 138, - 66, - 184, - 218, - 81, - 73, - 74, - 40, - 24, - 224, - 42, - 69, - 20, - 197, - 169, - 86, - 129, - 139, - 70, - 121, - 167, - 129, - 78, - 218, - 61, - 40, - 2, - 2, - 184, - 166, - 17, - 83, - 61, - 68, - 104, - 1, - 134, - 146, - 157, - 183, - 52, - 245, - 140, - 208, - 3, - 0, - 167, - 170, - 154, - 153, - 98, - 169, - 22, - 58, - 0, - 133, - 80, - 212, - 170, - 149, - 32, - 74, - 122, - 173, - 0, - 53, - 35, - 169, - 213, - 40, - 81, - 79, - 20, - 196, - 52, - 168, - 166, - 237, - 167, - 181, - 54, - 128, - 19, - 20, - 134, - 157, - 72, - 104, - 0, - 20, - 240, - 41, - 131, - 173, - 72, - 40, - 0, - 199, - 20, - 211, - 79, - 166, - 181, - 0, - 54, - 138, - 40, - 160, - 4, - 164, - 165, - 162, - 128, - 18, - 138, - 40, - 160, - 4, - 52, - 162, - 131, - 64, - 160, - 7, - 83, - 105, - 105, - 13, - 0, - 45, - 37, - 3, - 165, - 20, - 0, - 225, - 69, - 2, - 138, - 0, - 67, - 74, - 41, - 41, - 104, - 1, - 13, - 37, - 41, - 160, - 80, - 1, - 138, - 41, - 105, - 13, - 0, - 32, - 20, - 199, - 64, - 69, - 74, - 41, - 13, - 1, - 114, - 140, - 144, - 227, - 145, - 76, - 198, - 42, - 241, - 80, - 106, - 39, - 136, - 82, - 177, - 170, - 151, - 114, - 1, - 33, - 20, - 225, - 45, - 35, - 68, - 69, - 70, - 80, - 142, - 162, - 150, - 165, - 89, - 49, - 37, - 195, - 84, - 59, - 42, - 112, - 167, - 210, - 151, - 103, - 181, - 23, - 11, - 34, - 21, - 24, - 167, - 243, - 235, - 65, - 227, - 173, - 52, - 184, - 164, - 14, - 195, - 179, - 64, - 106, - 104, - 96, - 105, - 88, - 99, - 189, - 2, - 208, - 120, - 122, - 112, - 122, - 175, - 186, - 156, - 14, - 105, - 153, - 202, - 37, - 144, - 244, - 22, - 168, - 51, - 138, - 55, - 83, - 51, - 37, - 205, - 45, - 70, - 26, - 141, - 212, - 8, - 150, - 138, - 96, - 106, - 112, - 160, - 7, - 1, - 75, - 73, - 70, - 104, - 1, - 13, - 54, - 156, - 105, - 180, - 202, - 66, - 81, - 138, - 49, - 75, - 64, - 195, - 20, - 210, - 153, - 167, - 210, - 208, - 4, - 70, - 58, - 141, - 163, - 171, - 52, - 220, - 102, - 128, - 42, - 20, - 52, - 131, - 42, - 65, - 29, - 69, - 92, - 216, - 41, - 141, - 22, - 105, - 88, - 9, - 32, - 187, - 32, - 243, - 86, - 126, - 212, - 58, - 26, - 205, - 104, - 200, - 166, - 229, - 128, - 198, - 120, - 160, - 86, - 46, - 205, - 34, - 158, - 65, - 170, - 140, - 115, - 76, - 220, - 125, - 104, - 160, - 74, - 33, - 140, - 154, - 127, - 146, - 253, - 70, - 41, - 189, - 8, - 62, - 245, - 171, - 2, - 171, - 160, - 97, - 206, - 104, - 40, - 205, - 216, - 203, - 247, - 133, - 72, - 166, - 181, - 26, - 221, - 72, - 224, - 85, - 9, - 173, - 138, - 28, - 175, - 79, - 74, - 0, - 23, - 145, - 154, - 112, - 53, - 10, - 57, - 80, - 84, - 211, - 139, - 226, - 129, - 129, - 92, - 209, - 229, - 26, - 156, - 71, - 78, - 242, - 232, - 2, - 5, - 142, - 164, - 84, - 197, - 72, - 22, - 157, - 138, - 0, - 98, - 173, - 72, - 22, - 146, - 156, - 40, - 1, - 49, - 69, - 41, - 164, - 160, - 7, - 169, - 167, - 84, - 64, - 211, - 193, - 166, - 0, - 105, - 40, - 52, - 148, - 0, - 180, - 180, - 218, - 81, - 64, - 130, - 164, - 6, - 153, - 74, - 13, - 0, - 62, - 154, - 105, - 115, - 77, - 52, - 0, - 218, - 90, - 67, - 69, - 0, - 20, - 81, - 69, - 0, - 37, - 20, - 82, - 80, - 2, - 209, - 69, - 37, - 0, - 58, - 144, - 208, - 40, - 52, - 0, - 10, - 40, - 20, - 26, - 0, - 81, - 75, - 72, - 40, - 160, - 5, - 162, - 129, - 65, - 160, - 6, - 154, - 81, - 77, - 61, - 105, - 227, - 165, - 0, - 20, - 148, - 19, - 64, - 160, - 5, - 20, - 134, - 150, - 146, - 128, - 12, - 82, - 26, - 119, - 106, - 109, - 0, - 52, - 168, - 166, - 20, - 6, - 165, - 61, - 41, - 180, - 135, - 113, - 130, - 58, - 82, - 131, - 20, - 252, - 80, - 104, - 11, - 149, - 37, - 135, - 34, - 168, - 200, - 174, - 135, - 145, - 197, - 108, - 227, - 34, - 161, - 146, - 16, - 195, - 165, - 1, - 115, - 36, - 57, - 20, - 227, - 38, - 106, - 121, - 109, - 121, - 202, - 241, - 80, - 52, - 46, - 59, - 102, - 128, - 184, - 221, - 212, - 161, - 241, - 64, - 70, - 238, - 40, - 43, - 237, - 69, - 135, - 113, - 222, - 97, - 52, - 133, - 207, - 189, - 52, - 10, - 93, - 132, - 208, - 72, - 162, - 74, - 145, - 100, - 205, - 66, - 80, - 138, - 104, - 36, - 80, - 43, - 22, - 212, - 212, - 202, - 106, - 172, - 109, - 154, - 152, - 26, - 9, - 177, - 54, - 104, - 205, - 70, - 26, - 141, - 217, - 160, - 7, - 117, - 165, - 2, - 144, - 26, - 118, - 104, - 0, - 197, - 38, - 41, - 212, - 98, - 152, - 13, - 162, - 148, - 241, - 77, - 205, - 5, - 11, - 75, - 138, - 65, - 75, - 64, - 197, - 162, - 138, - 74, - 0, - 66, - 51, - 76, - 104, - 243, - 82, - 82, - 208, - 5, - 70, - 143, - 20, - 208, - 42, - 225, - 80, - 106, - 54, - 142, - 144, - 200, - 113, - 197, - 75, - 107, - 112, - 97, - 125, - 164, - 252, - 167, - 165, - 49, - 144, - 138, - 137, - 135, - 173, - 0, - 205, - 184, - 238, - 20, - 212, - 140, - 21, - 197, - 97, - 44, - 174, - 184, - 193, - 233, - 86, - 224, - 188, - 199, - 90, - 46, - 78, - 168, - 154, - 123, - 117, - 228, - 138, - 162, - 224, - 171, - 98, - 174, - 181, - 192, - 110, - 42, - 9, - 227, - 207, - 43, - 215, - 210, - 129, - 43, - 151, - 194, - 226, - 130, - 41, - 212, - 134, - 153, - 99, - 49, - 69, - 41, - 164, - 164, - 1, - 74, - 40, - 165, - 160, - 2, - 154, - 105, - 198, - 154, - 104, - 1, - 41, - 65, - 164, - 162, - 128, - 29, - 154, - 41, - 185, - 165, - 166, - 2, - 209, - 73, - 75, - 64, - 133, - 20, - 82, - 102, - 150, - 128, - 29, - 154, - 66, - 105, - 185, - 165, - 160, - 0, - 210, - 81, - 73, - 64, - 14, - 162, - 146, - 138, - 0, - 13, - 37, - 6, - 146, - 128, - 22, - 138, - 40, - 160, - 5, - 20, - 26, - 65, - 74, - 104, - 1, - 5, - 41, - 164, - 165, - 160, - 0, - 82, - 211, - 105, - 104, - 1, - 69, - 6, - 138, - 67, - 64, - 9, - 222, - 159, - 218, - 152, - 41, - 212, - 0, - 135, - 173, - 40, - 166, - 247, - 167, - 10, - 0, - 83, - 77, - 165, - 52, - 130, - 128, - 20, - 210, - 80, - 105, - 40, - 0, - 52, - 82, - 210, - 80, - 1, - 64, - 162, - 148, - 10, - 0, - 41, - 166, - 148, - 211, - 77, - 0, - 49, - 134, - 106, - 50, - 128, - 212, - 134, - 144, - 210, - 2, - 22, - 140, - 84, - 47, - 29, - 88, - 106, - 105, - 25, - 160, - 105, - 148, - 202, - 226, - 156, - 132, - 10, - 149, - 210, - 162, - 43, - 138, - 70, - 154, - 50, - 76, - 6, - 21, - 4, - 177, - 227, - 145, - 79, - 12, - 69, - 12, - 217, - 167, - 114, - 92, - 72, - 17, - 182, - 181, - 90, - 67, - 145, - 85, - 138, - 243, - 82, - 33, - 34, - 130, - 92, - 73, - 169, - 69, - 71, - 184, - 210, - 111, - 164, - 46, - 86, - 78, - 41, - 115, - 81, - 7, - 167, - 131, - 154, - 100, - 181, - 98, - 64, - 105, - 217, - 168, - 179, - 138, - 80, - 212, - 18, - 60, - 210, - 98, - 141, - 212, - 103, - 52, - 20, - 152, - 162, - 150, - 144, - 80, - 77, - 49, - 129, - 162, - 146, - 148, - 80, - 49, - 104, - 162, - 138, - 0, - 41, - 40, - 205, - 20, - 0, - 48, - 205, - 68, - 209, - 230, - 165, - 162, - 128, - 42, - 50, - 17, - 77, - 239, - 87, - 25, - 65, - 168, - 26, - 63, - 74, - 67, - 22, - 35, - 205, - 94, - 136, - 2, - 167, - 214, - 179, - 134, - 84, - 212, - 209, - 205, - 182, - 128, - 52, - 168, - 162, - 138, - 96, - 33, - 164, - 165, - 52, - 148, - 0, - 82, - 138, - 74, - 81, - 64, - 5, - 52, - 211, - 169, - 13, - 0, - 51, - 52, - 180, - 134, - 147, - 52, - 128, - 90, - 40, - 162, - 128, - 22, - 150, - 144, - 82, - 211, - 16, - 82, - 211, - 105, - 104, - 0, - 52, - 102, - 138, - 74, - 0, - 90, - 41, - 40, - 160, - 5, - 20, - 180, - 218, - 117, - 0, - 6, - 155, - 75, - 73, - 64, - 5, - 45, - 37, - 20, - 0, - 180, - 166, - 155, - 74, - 40, - 1, - 41, - 212, - 134, - 129, - 64, - 5, - 45, - 37, - 45, - 0, - 20, - 134, - 150, - 131, - 64, - 8, - 41, - 104, - 20, - 26, - 0, - 65, - 214, - 157, - 72, - 41, - 77, - 0, - 38, - 104, - 164, - 165, - 52, - 0, - 148, - 148, - 80, - 41, - 0, - 180, - 148, - 166, - 155, - 64, - 14, - 20, - 164, - 224, - 82, - 10, - 70, - 60, - 208, - 0, - 77, - 48, - 210, - 230, - 154, - 104, - 0, - 205, - 53, - 141, - 6, - 152, - 78, - 77, - 2, - 18, - 138, - 92, - 81, - 76, - 119, - 26, - 121, - 166, - 148, - 205, - 72, - 5, - 46, - 41, - 14, - 246, - 42, - 180, - 120, - 166, - 109, - 53, - 105, - 133, - 33, - 81, - 69, - 138, - 230, - 43, - 109, - 52, - 157, - 42, - 206, - 193, - 81, - 201, - 22, - 69, - 43, - 7, - 49, - 17, - 97, - 73, - 156, - 211, - 29, - 89, - 79, - 52, - 208, - 196, - 81, - 97, - 92, - 144, - 154, - 150, - 39, - 207, - 94, - 181, - 88, - 181, - 10, - 196, - 28, - 138, - 44, - 15, - 82, - 254, - 51, - 205, - 55, - 165, - 64, - 39, - 32, - 82, - 25, - 205, - 51, - 59, - 22, - 5, - 58, - 170, - 172, - 245, - 58, - 48, - 122, - 5, - 97, - 251, - 169, - 65, - 166, - 26, - 1, - 197, - 5, - 34, - 81, - 75, - 81, - 238, - 163, - 125, - 49, - 146, - 82, - 19, - 76, - 221, - 154, - 112, - 160, - 2, - 150, - 147, - 52, - 153, - 205, - 0, - 59, - 52, - 82, - 1, - 78, - 197, - 0, - 38, - 41, - 112, - 41, - 105, - 40, - 2, - 55, - 140, - 30, - 149, - 11, - 41, - 90, - 181, - 138, - 99, - 224, - 210, - 25, - 127, - 52, - 102, - 152, - 13, - 25, - 166, - 33, - 212, - 83, - 115, - 70, - 104, - 24, - 234, - 41, - 51, - 75, - 154, - 0, - 90, - 67, - 70, - 105, - 51, - 64, - 8, - 105, - 180, - 166, - 146, - 144, - 5, - 45, - 54, - 148, - 80, - 2, - 210, - 210, - 10, - 90, - 0, - 40, - 162, - 150, - 152, - 9, - 69, - 20, - 80, - 33, - 41, - 105, - 41, - 69, - 3, - 10, - 81, - 73, - 69, - 2, - 22, - 138, - 5, - 20, - 0, - 148, - 80, - 104, - 160, - 5, - 165, - 20, - 130, - 148, - 117, - 160, - 4, - 52, - 14, - 148, - 166, - 129, - 64, - 9, - 75, - 65, - 162, - 128, - 10, - 67, - 210, - 150, - 144, - 208, - 2, - 138, - 70, - 165, - 20, - 134, - 128, - 20, - 80, - 104, - 20, - 134, - 128, - 20, - 83, - 77, - 40, - 164, - 61, - 104, - 0, - 165, - 20, - 218, - 90, - 64, - 6, - 144, - 10, - 94, - 244, - 80, - 2, - 246, - 166, - 26, - 113, - 52, - 194, - 104, - 0, - 166, - 147, - 65, - 52, - 210, - 104, - 1, - 24, - 211, - 69, - 7, - 154, - 112, - 20, - 0, - 82, - 80, - 77, - 40, - 20, - 8, - 81, - 77, - 38, - 148, - 154, - 105, - 160, - 98, - 19, - 69, - 20, - 184, - 166, - 48, - 20, - 238, - 212, - 152, - 160, - 208, - 34, - 55, - 140, - 53, - 87, - 120, - 57, - 226, - 173, - 209, - 138, - 0, - 207, - 48, - 176, - 247, - 166, - 148, - 35, - 168, - 173, - 45, - 163, - 210, - 152, - 241, - 2, - 40, - 25, - 68, - 10, - 112, - 140, - 183, - 74, - 145, - 227, - 218, - 104, - 70, - 218, - 121, - 165, - 113, - 242, - 144, - 188, - 108, - 189, - 105, - 98, - 147, - 99, - 123, - 85, - 167, - 42, - 233, - 84, - 221, - 112, - 77, - 2, - 177, - 125, - 126, - 97, - 72, - 86, - 162, - 182, - 147, - 229, - 193, - 169, - 201, - 20, - 10, - 196, - 102, - 129, - 79, - 192, - 166, - 154, - 6, - 38, - 113, - 73, - 184, - 210, - 227, - 52, - 108, - 197, - 0, - 56, - 26, - 112, - 168, - 233, - 115, - 64, - 18, - 131, - 75, - 81, - 110, - 167, - 6, - 166, - 33, - 249, - 164, - 205, - 55, - 52, - 229, - 92, - 154, - 6, - 39, - 38, - 148, - 33, - 53, - 42, - 160, - 21, - 32, - 90, - 4, - 68, - 31, - 222, - 157, - 190, - 170, - 134, - 165, - 15, - 64, - 22, - 119, - 82, - 238, - 170, - 251, - 233, - 119, - 208, - 4, - 251, - 169, - 67, - 84, - 27, - 233, - 67, - 251, - 208, - 50, - 124, - 209, - 154, - 132, - 61, - 59, - 117, - 0, - 63, - 52, - 83, - 55, - 81, - 186, - 128, - 29, - 75, - 76, - 13, - 75, - 154, - 64, - 58, - 151, - 52, - 204, - 210, - 230, - 128, - 29, - 154, - 90, - 102, - 105, - 65, - 160, - 7, - 81, - 73, - 154, - 51, - 76, - 5, - 164, - 165, - 164, - 52, - 8, - 90, - 81, - 72, - 41, - 104, - 0, - 165, - 164, - 162, - 128, - 3, - 72, - 41, - 105, - 40, - 24, - 180, - 119, - 162, - 138, - 4, - 58, - 147, - 189, - 3, - 165, - 33, - 160, - 5, - 52, - 148, - 238, - 212, - 134, - 128, - 10, - 67, - 75, - 218, - 147, - 189, - 0, - 40, - 233, - 72, - 122, - 211, - 135, - 74, - 111, - 122, - 0, - 112, - 166, - 181, - 58, - 152, - 122, - 208, - 1, - 69, - 6, - 138, - 64, - 20, - 81, - 69, - 0, - 20, - 82, - 226, - 154, - 78, - 40, - 1, - 24, - 211, - 77, - 41, - 52, - 210, - 104, - 1, - 9, - 166, - 19, - 74, - 77, - 37, - 0, - 20, - 19, - 69, - 24, - 160, - 1, - 69, - 41, - 52, - 180, - 210, - 104, - 0, - 205, - 37, - 2, - 150, - 128, - 0, - 41, - 104, - 20, - 180, - 8, - 67, - 73, - 75, - 138, - 40, - 24, - 152, - 165, - 197, - 20, - 83, - 0, - 165, - 164, - 160, - 154, - 0, - 99, - 160, - 53, - 93, - 163, - 32, - 241, - 86, - 186, - 208, - 84, - 82, - 101, - 41, - 88, - 170, - 20, - 210, - 249, - 89, - 169, - 138, - 138, - 80, - 49, - 83, - 99, - 69, - 36, - 68, - 176, - 227, - 165, - 56, - 198, - 64, - 167, - 25, - 54, - 212, - 77, - 113, - 158, - 49, - 70, - 163, - 109, - 13, - 36, - 138, - 64, - 248, - 60, - 211, - 131, - 3, - 214, - 163, - 124, - 3, - 193, - 166, - 77, - 211, - 44, - 166, - 8, - 167, - 98, - 171, - 195, - 38, - 14, - 13, - 88, - 200, - 245, - 20, - 204, - 216, - 155, - 105, - 8, - 197, - 56, - 178, - 250, - 138, - 122, - 174, - 104, - 2, - 29, - 140, - 123, - 82, - 133, - 34, - 172, - 236, - 20, - 108, - 20, - 1, - 92, - 3, - 82, - 47, - 20, - 242, - 148, - 155, - 40, - 1, - 85, - 170, - 64, - 213, - 14, - 49, - 74, - 51, - 76, - 69, - 32, - 212, - 224, - 106, - 46, - 65, - 165, - 230, - 128, - 37, - 205, - 4, - 212, - 91, - 141, - 46, - 250, - 0, - 126, - 227, - 75, - 186, - 153, - 154, - 76, - 208, - 4, - 161, - 233, - 68, - 149, - 14, - 105, - 51, - 64, - 203, - 30, - 101, - 46, - 250, - 173, - 186, - 141, - 212, - 1, - 104, - 61, - 59, - 125, - 84, - 223, - 74, - 36, - 164, - 5, - 176, - 244, - 187, - 170, - 168, - 146, - 156, - 36, - 160, - 11, - 1, - 169, - 115, - 85, - 252, - 202, - 80, - 244, - 1, - 100, - 53, - 46, - 106, - 184, - 122, - 120, - 122, - 0, - 155, - 52, - 185, - 168, - 67, - 211, - 131, - 83, - 16, - 252, - 211, - 129, - 168, - 243, - 64, - 106, - 6, - 73, - 154, - 51, - 76, - 13, - 75, - 154, - 4, - 62, - 146, - 147, - 52, - 102, - 128, - 22, - 129, - 73, - 154, - 1, - 160, - 99, - 168, - 164, - 205, - 58, - 129, - 0, - 164, - 61, - 105, - 65, - 164, - 99, - 205, - 0, - 56, - 83, - 123, - 211, - 135, - 74, - 105, - 235, - 64, - 14, - 166, - 142, - 180, - 189, - 168, - 29, - 104, - 1, - 79, - 74, - 104, - 20, - 227, - 210, - 146, - 128, - 16, - 210, - 80, - 122, - 208, - 41, - 12, - 40, - 29, - 104, - 52, - 10, - 0, - 92, - 211, - 24, - 211, - 141, - 70, - 79, - 52, - 0, - 134, - 154, - 77, - 41, - 52, - 195, - 64, - 131, - 189, - 7, - 165, - 2, - 142, - 180, - 0, - 10, - 119, - 74, - 49, - 72, - 77, - 0, - 33, - 52, - 222, - 166, - 148, - 210, - 168, - 160, - 2, - 150, - 138, - 90, - 0, - 40, - 163, - 52, - 153, - 160, - 66, - 210, - 81, - 69, - 0, - 45, - 38, - 104, - 164, - 235, - 64, - 192, - 154, - 0, - 245, - 165, - 2, - 130, - 113, - 76, - 5, - 233, - 77, - 38, - 147, - 57, - 162, - 144, - 1, - 164, - 205, - 20, - 1, - 64, - 198, - 178, - 110, - 170, - 237, - 17, - 86, - 207, - 106, - 186, - 5, - 46, - 192, - 221, - 104, - 2, - 159, - 24, - 168, - 159, - 173, - 95, - 54, - 234, - 121, - 168, - 154, - 219, - 39, - 138, - 161, - 20, - 128, - 57, - 205, - 56, - 150, - 245, - 53, - 57, - 183, - 101, - 167, - 165, - 179, - 55, - 53, - 37, - 40, - 54, - 83, - 220, - 222, - 181, - 61, - 181, - 201, - 86, - 10, - 221, - 42, - 211, - 89, - 169, - 82, - 49, - 205, - 103, - 75, - 25, - 141, - 202, - 159, - 194, - 128, - 105, - 163, - 104, - 124, - 192, - 17, - 78, - 11, - 138, - 169, - 97, - 56, - 120, - 182, - 158, - 163, - 138, - 180, - 77, - 2, - 3, - 138, - 76, - 81, - 69, - 48, - 19, - 104, - 164, - 34, - 157, - 73, - 72, - 12, - 236, - 211, - 131, - 0, - 42, - 51, - 72, - 104, - 1, - 204, - 71, - 106, - 101, - 20, - 148, - 192, - 51, - 70, - 234, - 67, - 69, - 0, - 46, - 234, - 55, - 83, - 77, - 33, - 160, - 7, - 238, - 163, - 53, - 29, - 38, - 105, - 1, - 38, - 104, - 205, - 71, - 154, - 93, - 212, - 1, - 38, - 104, - 221, - 81, - 238, - 165, - 205, - 0, - 73, - 190, - 151, - 125, - 69, - 154, - 51, - 64, - 19, - 9, - 41, - 194, - 74, - 175, - 154, - 80, - 104, - 2, - 208, - 146, - 156, - 36, - 170, - 129, - 169, - 193, - 205, - 0, - 92, - 18, - 82, - 239, - 170, - 98, - 74, - 112, - 146, - 128, - 45, - 135, - 167, - 7, - 170, - 98, - 74, - 120, - 150, - 128, - 45, - 134, - 163, - 117, - 86, - 18, - 83, - 132, - 148, - 8, - 177, - 186, - 151, - 53, - 95, - 127, - 189, - 40, - 122, - 6, - 88, - 205, - 56, - 30, - 42, - 184, - 122, - 112, - 122, - 98, - 38, - 205, - 33, - 166, - 110, - 160, - 181, - 32, - 37, - 7, - 138, - 66, - 121, - 166, - 134, - 226, - 147, - 119, - 52, - 192, - 147, - 60, - 80, - 180, - 132, - 241, - 66, - 244, - 160, - 7, - 26, - 15, - 74, - 76, - 243, - 72, - 199, - 138, - 0, - 67, - 75, - 208, - 82, - 82, - 147, - 72, - 97, - 214, - 131, - 66, - 243, - 72, - 79, - 52, - 0, - 140, - 105, - 148, - 164, - 210, - 30, - 148, - 0, - 195, - 73, - 74, - 104, - 160, - 65, - 64, - 20, - 80, - 120, - 20, - 0, - 140, - 123, - 82, - 81, - 69, - 0, - 40, - 162, - 138, - 81, - 64, - 11, - 70, - 105, - 51, - 69, - 0, - 20, - 82, - 81, - 154, - 0, - 92, - 210, - 81, - 74, - 40, - 0, - 162, - 130, - 105, - 40, - 0, - 205, - 37, - 24, - 165, - 197, - 0, - 37, - 20, - 224, - 185, - 167, - 170, - 122, - 208, - 49, - 129, - 105, - 225, - 105, - 248, - 20, - 102, - 128, - 16, - 10, - 56, - 163, - 52, - 98, - 128, - 14, - 180, - 160, - 98, - 140, - 82, - 226, - 128, - 16, - 174, - 69, - 75, - 22, - 7, - 20, - 202, - 51, - 233, - 65, - 81, - 149, - 139, - 91, - 21, - 133, - 85, - 158, - 193, - 101, - 52, - 244, - 144, - 173, - 72, - 38, - 205, - 35, - 68, - 251, - 20, - 225, - 176, - 48, - 190, - 65, - 169, - 153, - 8, - 21, - 41, - 157, - 7, - 83, - 81, - 189, - 196, - 126, - 180, - 21, - 107, - 238, - 136, - 139, - 17, - 66, - 182, - 69, - 13, - 34, - 176, - 227, - 165, - 68, - 14, - 27, - 61, - 168, - 184, - 156, - 19, - 216, - 155, - 147, - 64, - 197, - 38, - 105, - 165, - 169, - 152, - 20, - 240, - 49, - 76, - 35, - 52, - 19, - 64, - 52, - 0, - 155, - 105, - 10, - 210, - 150, - 163, - 52, - 0, - 194, - 40, - 197, - 41, - 164, - 160, - 4, - 197, - 33, - 20, - 236, - 210, - 26, - 0, - 110, - 40, - 197, - 20, - 185, - 160, - 6, - 17, - 73, - 74, - 105, - 40, - 0, - 162, - 151, - 20, - 80, - 2, - 102, - 140, - 209, - 73, - 64, - 11, - 154, - 92, - 211, - 104, - 160, - 7, - 102, - 151, - 52, - 202, - 51, - 64, - 18, - 102, - 140, - 211, - 51, - 70, - 104, - 17, - 38, - 234, - 3, - 83, - 51, - 70, - 104, - 25, - 32, - 122, - 112, - 146, - 161, - 205, - 25, - 160, - 9, - 196, - 180, - 225, - 45, - 86, - 205, - 46, - 104, - 17, - 104, - 75, - 79, - 18, - 85, - 45, - 212, - 224, - 244, - 1, - 120, - 73, - 75, - 191, - 53, - 68, - 72, - 105, - 226, - 90, - 0, - 188, - 175, - 75, - 191, - 154, - 166, - 37, - 167, - 9, - 40, - 2, - 222, - 250, - 120, - 108, - 10, - 168, - 36, - 230, - 159, - 230, - 10, - 0, - 177, - 186, - 130, - 213, - 8, - 146, - 147, - 126, - 104, - 2, - 112, - 105, - 73, - 168, - 85, - 169, - 219, - 168, - 25, - 42, - 156, - 10, - 97, - 106, - 105, - 110, - 41, - 3, - 80, - 3, - 179, - 77, - 38, - 130, - 105, - 185, - 160, - 5, - 160, - 243, - 72, - 79, - 20, - 10, - 4, - 56, - 83, - 73, - 205, - 12, - 123, - 83, - 73, - 197, - 0, - 25, - 165, - 166, - 129, - 78, - 160, - 2, - 151, - 52, - 148, - 80, - 2, - 209, - 154, - 76, - 210, - 103, - 52, - 0, - 185, - 160, - 10, - 5, - 25, - 160, - 5, - 163, - 52, - 128, - 19, - 205, - 56, - 10, - 0, - 74, - 80, - 13, - 56, - 10, - 81, - 64, - 8, - 22, - 156, - 22, - 138, - 92, - 208, - 2, - 241, - 70, - 64, - 164, - 205, - 39, - 214, - 129, - 139, - 146, - 104, - 197, - 25, - 163, - 4, - 208, - 1, - 74, - 5, - 20, - 100, - 10, - 0, - 117, - 55, - 52, - 18, - 77, - 37, - 0, - 47, - 214, - 151, - 52, - 153, - 164, - 205, - 0, - 41, - 57, - 163, - 52, - 153, - 166, - 231, - 52, - 0, - 147, - 13, - 195, - 138, - 130, - 220, - 1, - 57, - 73, - 122, - 30, - 149, - 99, - 32, - 84, - 82, - 168, - 111, - 241, - 161, - 104, - 59, - 182, - 93, - 146, - 202, - 54, - 79, - 221, - 146, - 167, - 235, - 84, - 138, - 188, - 124, - 54, - 13, - 42, - 207, - 112, - 139, - 140, - 238, - 30, - 245, - 28, - 146, - 187, - 117, - 171, - 178, - 96, - 164, - 208, - 166, - 82, - 56, - 197, - 48, - 220, - 98, - 153, - 147, - 233, - 77, - 49, - 150, - 228, - 82, - 208, - 45, - 39, - 168, - 210, - 105, - 51, - 75, - 73, - 80, - 32, - 205, - 37, - 20, - 83, - 0, - 162, - 150, - 146, - 128, - 12, - 82, - 17, - 78, - 164, - 52, - 0, - 218, - 67, - 78, - 160, - 142, - 40, - 2, - 58, - 5, - 46, - 40, - 20, - 0, - 80, - 105, - 113, - 73, - 64, - 9, - 69, - 46, - 40, - 197, - 0, - 54, - 146, - 156, - 69, - 37, - 0, - 38, - 40, - 197, - 45, - 20, - 0, - 148, - 82, - 226, - 140, - 80, - 3, - 105, - 104, - 162, - 128, - 12, - 209, - 154, - 40, - 160, - 3, - 52, - 185, - 166, - 209, - 64, - 14, - 205, - 25, - 166, - 210, - 208, - 2, - 230, - 148, - 26, - 110, - 104, - 205, - 0, - 72, - 13, - 40, - 106, - 143, - 52, - 185, - 160, - 68, - 161, - 141, - 59, - 204, - 53, - 14, - 104, - 205, - 0, - 79, - 230, - 82, - 137, - 42, - 12, - 209, - 154, - 6, - 90, - 18, - 251, - 211, - 132, - 158, - 245, - 83, - 117, - 46, - 234, - 0, - 183, - 190, - 148, - 61, - 84, - 13, - 75, - 190, - 129, - 22, - 183, - 210, - 131, - 85, - 119, - 211, - 188, - 202, - 6, - 88, - 13, - 147, - 75, - 187, - 21, - 2, - 189, - 59, - 125, - 0, - 73, - 158, - 244, - 148, - 205, - 249, - 167, - 3, - 64, - 15, - 20, - 102, - 155, - 186, - 147, - 52, - 8, - 126, - 104, - 206, - 41, - 185, - 164, - 201, - 38, - 128, - 23, - 57, - 167, - 1, - 72, - 56, - 165, - 28, - 208, - 3, - 168, - 3, - 214, - 147, - 112, - 20, - 110, - 160, - 99, - 233, - 105, - 180, - 185, - 160, - 7, - 10, - 90, - 102, - 113, - 73, - 147, - 64, - 15, - 38, - 138, - 109, - 40, - 160, - 7, - 81, - 140, - 209, - 70, - 104, - 1, - 104, - 205, - 38, - 105, - 40, - 1, - 73, - 205, - 2, - 146, - 130, - 212, - 0, - 185, - 163, - 52, - 220, - 209, - 154, - 0, - 113, - 52, - 220, - 210, - 82, - 80, - 3, - 179, - 73, - 187, - 210, - 147, - 25, - 165, - 2, - 128, - 27, - 131, - 78, - 197, - 46, - 40, - 160, - 4, - 197, - 5, - 70, - 58, - 82, - 224, - 154, - 92, - 80, - 2, - 219, - 198, - 164, - 242, - 42, - 219, - 90, - 161, - 31, - 47, - 6, - 170, - 3, - 138, - 179, - 20, - 248, - 24, - 106, - 70, - 188, - 215, - 90, - 24, - 152, - 163, - 20, - 180, - 26, - 102, - 66, - 98, - 147, - 20, - 185, - 164, - 205, - 0, - 24, - 162, - 140, - 209, - 64, - 9, - 69, - 45, - 20, - 0, - 148, - 134, - 150, - 138, - 0, - 105, - 20, - 218, - 147, - 20, - 210, - 40, - 0, - 83, - 65, - 2, - 155, - 74, - 40, - 0, - 197, - 4, - 98, - 156, - 40, - 52, - 0, - 218, - 76, - 83, - 177, - 70, - 40, - 1, - 184, - 164, - 197, - 59, - 20, - 184, - 160, - 6, - 80, - 105, - 77, - 20, - 0, - 218, - 41, - 113, - 69, - 0, - 37, - 37, - 45, - 37, - 0, - 20, - 82, - 226, - 140, - 80, - 2, - 81, - 75, - 69, - 0, - 54, - 138, - 90, - 40, - 1, - 41, - 105, - 113, - 73, - 64, - 6, - 104, - 205, - 20, - 98, - 128, - 12, - 210, - 230, - 146, - 146, - 128, - 31, - 154, - 51, - 76, - 165, - 160, - 7, - 230, - 140, - 211, - 51, - 70, - 104, - 1, - 249, - 165, - 13, - 81, - 230, - 151, - 52, - 1, - 46, - 234, - 55, - 212, - 89, - 163, - 52, - 1, - 48, - 122, - 112, - 144, - 212, - 25, - 165, - 205, - 2, - 44, - 9, - 41, - 67, - 138, - 173, - 186, - 148, - 53, - 0, - 90, - 15, - 154, - 118, - 225, - 85, - 55, - 210, - 239, - 52, - 1, - 103, - 117, - 27, - 170, - 0, - 244, - 224, - 244, - 12, - 155, - 117, - 40, - 53, - 14, - 250, - 55, - 208, - 5, - 141, - 254, - 244, - 190, - 103, - 165, - 86, - 221, - 78, - 221, - 64, - 19, - 230, - 157, - 154, - 128, - 61, - 56, - 61, - 0, - 76, - 41, - 217, - 168, - 60, - 202, - 93, - 244, - 1, - 46, - 105, - 115, - 81, - 110, - 165, - 6, - 128, - 31, - 156, - 209, - 154, - 110, - 105, - 104, - 1, - 104, - 164, - 205, - 25, - 160, - 5, - 205, - 37, - 37, - 40, - 20, - 0, - 180, - 119, - 162, - 140, - 226, - 128, - 23, - 20, - 82, - 82, - 208, - 1, - 74, - 5, - 37, - 45, - 0, - 45, - 20, - 82, - 226, - 128, - 18, - 148, - 113, - 69, - 37, - 0, - 102, - 102, - 140, - 210, - 81, - 64, - 5, - 20, - 81, - 64, - 9, - 69, - 20, - 80, - 1, - 154, - 51, - 69, - 20, - 0, - 81, - 69, - 20, - 0, - 185, - 164, - 52, - 81, - 138, - 0, - 109, - 40, - 163, - 20, - 80, - 2, - 138, - 90, - 74, - 40, - 0, - 162, - 150, - 146, - 128, - 18, - 138, - 13, - 37, - 0, - 20, - 148, - 81, - 64, - 1, - 164, - 165, - 164, - 160, - 4, - 165, - 3, - 52, - 83, - 150, - 128, - 19, - 20, - 148, - 243, - 77, - 197, - 0, - 20, - 152, - 167, - 98, - 140, - 80, - 3, - 49, - 69, - 56, - 138, - 109, - 0, - 20, - 98, - 138, - 90, - 0, - 76, - 81, - 75, - 138, - 40, - 1, - 40, - 197, - 45, - 20, - 0, - 218, - 49, - 78, - 197, - 37, - 0, - 38, - 40, - 197, - 45, - 24, - 160, - 4, - 162, - 151, - 20, - 98, - 128, - 27, - 75, - 75, - 138, - 76, - 80, - 1, - 70, - 104, - 162, - 128, - 12, - 210, - 230, - 155, - 69, - 0, - 59, - 52, - 185, - 166, - 82, - 208, - 3, - 247, - 82, - 238, - 168, - 232, - 205, - 0, - 73, - 154, - 112, - 53, - 14, - 105, - 119, - 80, - 4, - 185, - 167, - 3, - 80, - 238, - 165, - 221, - 64, - 18, - 238, - 167, - 110, - 168, - 119, - 81, - 190, - 129, - 19, - 239, - 165, - 15, - 85, - 247, - 81, - 186, - 129, - 150, - 131, - 138, - 112, - 122, - 167, - 188, - 210, - 135, - 52, - 1, - 112, - 61, - 47, - 152, - 42, - 160, - 115, - 78, - 18, - 80, - 5, - 173, - 212, - 160, - 213, - 97, - 37, - 60, - 73, - 239, - 64, - 22, - 5, - 46, - 106, - 0, - 227, - 214, - 148, - 73, - 233, - 64, - 19, - 102, - 138, - 136, - 62, - 105, - 226, - 128, - 31, - 69, - 38, - 69, - 46, - 234, - 96, - 59, - 20, - 188, - 83, - 55, - 81, - 147, - 64, - 15, - 205, - 38, - 105, - 180, - 102, - 128, - 29, - 146, - 122, - 10, - 79, - 169, - 164, - 205, - 46, - 40, - 3, - 54, - 138, - 90, - 74, - 64, - 20, - 81, - 69, - 0, - 20, - 81, - 74, - 5, - 0, - 38, - 41, - 113, - 78, - 2, - 151, - 20, - 0, - 221, - 185, - 160, - 47, - 173, - 60, - 10, - 13, - 0, - 51, - 20, - 109, - 167, - 98, - 151, - 20, - 1, - 25, - 90, - 77, - 166, - 164, - 163, - 20, - 1, - 17, - 20, - 84, - 165, - 105, - 187, - 115, - 64, - 12, - 162, - 159, - 178, - 154, - 84, - 138, - 0, - 109, - 24, - 162, - 150, - 128, - 19, - 20, - 152, - 167, - 138, - 49, - 64, - 12, - 197, - 38, - 42, - 77, - 180, - 190, - 94, - 122, - 26, - 0, - 139, - 20, - 229, - 20, - 237, - 148, - 109, - 34, - 128, - 19, - 20, - 98, - 164, - 85, - 207, - 74, - 93, - 180, - 1, - 22, - 40, - 197, - 76, - 83, - 142, - 105, - 152, - 197, - 2, - 35, - 52, - 211, - 82, - 17, - 154, - 110, - 218, - 6, - 51, - 20, - 83, - 241, - 73, - 138, - 0, - 5, - 33, - 20, - 184, - 165, - 20, - 128, - 76, - 80, - 69, - 56, - 12, - 210, - 149, - 226, - 152, - 12, - 2, - 140, - 84, - 138, - 51, - 74, - 83, - 61, - 40, - 2, - 44, - 82, - 133, - 6, - 164, - 85, - 193, - 228, - 83, - 138, - 103, - 154, - 4, - 67, - 182, - 147, - 21, - 57, - 92, - 10, - 105, - 90, - 0, - 139, - 109, - 33, - 21, - 54, - 195, - 138, - 97, - 90, - 6, - 69, - 138, - 92, - 83, - 246, - 211, - 130, - 113, - 64, - 16, - 226, - 147, - 21, - 49, - 90, - 54, - 80, - 34, - 26, - 42, - 66, - 148, - 220, - 80, - 49, - 184, - 163, - 20, - 236, - 81, - 138, - 0, - 110, - 40, - 197, - 63, - 20, - 160, - 80, - 4, - 116, - 84, - 187, - 65, - 163, - 101, - 0, - 69, - 69, - 60, - 165, - 38, - 202, - 0, - 110, - 104, - 205, - 46, - 211, - 73, - 180, - 208, - 1, - 154, - 92, - 210, - 96, - 210, - 80, - 3, - 247, - 82, - 238, - 168, - 232, - 160, - 9, - 119, - 81, - 186, - 162, - 165, - 205, - 0, - 74, - 26, - 156, - 31, - 21, - 6, - 104, - 220, - 104, - 2, - 200, - 152, - 138, - 81, - 63, - 174, - 106, - 182, - 234, - 55, - 80, - 5, - 193, - 61, - 40, - 153, - 125, - 106, - 158, - 234, - 3, - 80, - 5, - 241, - 40, - 167, - 9, - 1, - 239, - 89, - 225, - 169, - 194, - 66, - 58, - 26, - 0, - 208, - 7, - 52, - 241, - 129, - 212, - 214, - 112, - 149, - 255, - 0, - 189, - 78, - 23, - 12, - 58, - 80, - 6, - 134, - 71, - 108, - 81, - 154, - 162, - 46, - 143, - 112, - 105, - 226, - 235, - 212, - 145, - 64, - 16, - 209, - 69, - 20, - 0, - 81, - 75, - 138, - 80, - 40, - 0, - 2, - 151, - 20, - 82, - 226, - 128, - 16, - 82, - 226, - 148, - 10, - 90, - 0, - 65, - 70, - 41, - 113, - 78, - 81, - 154, - 0, - 102, - 40, - 197, - 72, - 20, - 131, - 200, - 167, - 4, - 207, - 74, - 4, - 68, - 22, - 156, - 20, - 131, - 210, - 164, - 9, - 159, - 106, - 112, - 66, - 58, - 242, - 40, - 2, - 45, - 185, - 228, - 82, - 21, - 252, - 42, - 113, - 16, - 7, - 57, - 165, - 49, - 43, - 0, - 121, - 205, - 0, - 86, - 35, - 29, - 105, - 54, - 102, - 173, - 42, - 1, - 195, - 12, - 138, - 99, - 197, - 142, - 87, - 183, - 106, - 0, - 172, - 209, - 122, - 84, - 108, - 164, - 28, - 17, - 86, - 192, - 207, - 4, - 98, - 134, - 140, - 227, - 145, - 145, - 64, - 20, - 241, - 74, - 42, - 82, - 189, - 197, - 38, - 40, - 24, - 139, - 205, - 72, - 19, - 34, - 145, - 87, - 154, - 157, - 70, - 70, - 59, - 208, - 34, - 185, - 86, - 7, - 145, - 82, - 44, - 109, - 212, - 98, - 167, - 80, - 113, - 200, - 167, - 4, - 83, - 200, - 52, - 1, - 92, - 41, - 207, - 60, - 26, - 118, - 56, - 228, - 228, - 84, - 254, - 82, - 158, - 185, - 165, - 88, - 130, - 244, - 230, - 152, - 16, - 36, - 106, - 71, - 77, - 194, - 145, - 237, - 129, - 63, - 40, - 252, - 42, - 206, - 0, - 57, - 65, - 131, - 78, - 228, - 143, - 152, - 99, - 222, - 139, - 1, - 156, - 96, - 113, - 198, - 204, - 123, - 210, - 27, - 121, - 113, - 194, - 230, - 180, - 88, - 28, - 122, - 251, - 83, - 20, - 140, - 245, - 160, - 12, - 243, - 19, - 255, - 0, - 118, - 147, - 103, - 168, - 173, - 22, - 68, - 110, - 163, - 6, - 161, - 104, - 121, - 228, - 100, - 122, - 210, - 2, - 145, - 90, - 54, - 85, - 179, - 26, - 142, - 212, - 194, - 128, - 30, - 40, - 25, - 92, - 3, - 82, - 162, - 83, - 246, - 110, - 232, - 106, - 72, - 227, - 35, - 169, - 252, - 168, - 1, - 133, - 9, - 31, - 119, - 241, - 164, - 242, - 88, - 115, - 144, - 69, - 91, - 10, - 0, - 192, - 52, - 129, - 121, - 226, - 152, - 138, - 202, - 138, - 79, - 244, - 167, - 52, - 64, - 253, - 213, - 199, - 210, - 172, - 50, - 17, - 252, - 31, - 136, - 160, - 131, - 140, - 142, - 148, - 1, - 92, - 167, - 24, - 52, - 198, - 32, - 13, - 180, - 242, - 75, - 103, - 28, - 84, - 123, - 79, - 122, - 6, - 48, - 211, - 74, - 212, - 187, - 9, - 233, - 79, - 72, - 115, - 157, - 199, - 240, - 160, - 8, - 22, - 61, - 222, - 212, - 255, - 0, - 40, - 127, - 123, - 53, - 58, - 109, - 7, - 0, - 83, - 138, - 131, - 212, - 98, - 129, - 21, - 76, - 100, - 159, - 148, - 126, - 116, - 155, - 8, - 225, - 134, - 42, - 210, - 198, - 1, - 228, - 230, - 134, - 69, - 206, - 49, - 145, - 239, - 64, - 21, - 74, - 119, - 164, - 242, - 131, - 115, - 147, - 86, - 152, - 42, - 253, - 209, - 138, - 140, - 224, - 115, - 72, - 8, - 76, - 4, - 143, - 148, - 31, - 198, - 154, - 97, - 112, - 50, - 203, - 129, - 235, - 86, - 87, - 6, - 158, - 67, - 145, - 128, - 163, - 31, - 90, - 96, - 81, - 219, - 218, - 141, - 181, - 113, - 226, - 82, - 159, - 195, - 159, - 106, - 132, - 196, - 223, - 195, - 243, - 123, - 82, - 25, - 14, - 49, - 74, - 58, - 243, - 210, - 165, - 242, - 159, - 25, - 101, - 219, - 245, - 166, - 99, - 214, - 128, - 2, - 3, - 30, - 56, - 160, - 197, - 142, - 167, - 63, - 74, - 49, - 74, - 164, - 175, - 67, - 64, - 12, - 242, - 206, - 122, - 99, - 235, - 65, - 136, - 142, - 184, - 252, - 42, - 98, - 225, - 254, - 247, - 90, - 80, - 85, - 184, - 166, - 34, - 182, - 206, - 105, - 193, - 20, - 241, - 142, - 106, - 103, - 141, - 71, - 1, - 178, - 105, - 86, - 54, - 3, - 56, - 11, - 64, - 202, - 230, - 46, - 51, - 180, - 143, - 173, - 55, - 203, - 207, - 74, - 178, - 120, - 61, - 115, - 77, - 145, - 193, - 198, - 209, - 131, - 64, - 21, - 74, - 81, - 229, - 228, - 84, - 164, - 82, - 162, - 130, - 121, - 206, - 61, - 169, - 1, - 1, - 67, - 73, - 138, - 180, - 209, - 131, - 247, - 120, - 250, - 212, - 102, - 50, - 78, - 0, - 160, - 8, - 113, - 70, - 41, - 228, - 96, - 224, - 209, - 182, - 128, - 25, - 73, - 79, - 218, - 71, - 81, - 138, - 49, - 64, - 12, - 165, - 167, - 109, - 163, - 109, - 0, - 55, - 52, - 102, - 151, - 109, - 38, - 40, - 1, - 115, - 70, - 234, - 76, - 81, - 138, - 0, - 178, - 5, - 40, - 90, - 114, - 173, - 72, - 171, - 147, - 64, - 13, - 88, - 201, - 237, - 79, - 242, - 137, - 28, - 26, - 153, - 23, - 21, - 38, - 206, - 244, - 8, - 167, - 179, - 156, - 26, - 81, - 30, - 42, - 217, - 136, - 17, - 158, - 244, - 221, - 184, - 56, - 52, - 236, - 4, - 34, - 60, - 210, - 133, - 245, - 21, - 46, - 220, - 116, - 20, - 161, - 115, - 72, - 8, - 246, - 17, - 200, - 20, - 1, - 147, - 83, - 40, - 35, - 173, - 43, - 71, - 200, - 34, - 152, - 17, - 109, - 207, - 90, - 112, - 140, - 131, - 198, - 13, - 74, - 34, - 207, - 6, - 147, - 105, - 83, - 235, - 64, - 13, - 49, - 231, - 4, - 112, - 104, - 85, - 3, - 131, - 82, - 133, - 200, - 226, - 129, - 131, - 212, - 114, - 40, - 1, - 133, - 48, - 55, - 45, - 3, - 147, - 192, - 169, - 240, - 7, - 65, - 72, - 16, - 246, - 166, - 3, - 0, - 33, - 112, - 86, - 154, - 209, - 19, - 202, - 99, - 233, - 86, - 62, - 180, - 210, - 187, - 79, - 20, - 1, - 88, - 197, - 187, - 131, - 193, - 160, - 38, - 222, - 181, - 100, - 128, - 227, - 220, - 83, - 72, - 219, - 212, - 100, - 82, - 2, - 163, - 219, - 130, - 73, - 67, - 248, - 84, - 5, - 118, - 182, - 8, - 193, - 173, - 32, - 128, - 125, - 209, - 74, - 209, - 164, - 131, - 230, - 94, - 104, - 3, - 61, - 69, - 72, - 160, - 103, - 154, - 115, - 69, - 181, - 182, - 159, - 192, - 210, - 136, - 246, - 251, - 208, - 49, - 203, - 25, - 60, - 245, - 20, - 255, - 0, - 37, - 122, - 130, - 71, - 181, - 73, - 22, - 7, - 227, - 74, - 192, - 30, - 148, - 8, - 132, - 12, - 28, - 48, - 228, - 83, - 182, - 19, - 247, - 106, - 78, - 15, - 222, - 28, - 208, - 85, - 147, - 145, - 200, - 160, - 8, - 204, - 36, - 243, - 158, - 105, - 216, - 227, - 6, - 159, - 156, - 138, - 137, - 139, - 2, - 104, - 1, - 192, - 1, - 77, - 114, - 131, - 156, - 12, - 212, - 126, - 97, - 106, - 105, - 1, - 186, - 154, - 0, - 25, - 134, - 105, - 133, - 179, - 74, - 87, - 3, - 173, - 38, - 5, - 3, - 27, - 130, - 77, - 52, - 173, - 72, - 160, - 83, - 188, - 160, - 123, - 156, - 80, - 4, - 75, - 193, - 167, - 100, - 131, - 197, - 73, - 246, - 96, - 57, - 70, - 39, - 216, - 209, - 229, - 51, - 28, - 99, - 20, - 0, - 198, - 57, - 226, - 145, - 88, - 169, - 20, - 243, - 4, - 138, - 62, - 108, - 99, - 212, - 82, - 152, - 14, - 220, - 238, - 6, - 128, - 20, - 205, - 198, - 48, - 106, - 51, - 33, - 60, - 98, - 155, - 223, - 25, - 231, - 210, - 148, - 174, - 6, - 72, - 34, - 128, - 27, - 182, - 128, - 189, - 169, - 249, - 226, - 152, - 71, - 52, - 128, - 145, - 32, - 92, - 103, - 113, - 250, - 83, - 182, - 237, - 224, - 45, - 68, - 11, - 118, - 98, - 42, - 69, - 155, - 3, - 4, - 26, - 96, - 60, - 163, - 109, - 237, - 138, - 140, - 143, - 194, - 156, - 36, - 220, - 112, - 122, - 83, - 129, - 80, - 221, - 65, - 160, - 67, - 23, - 7, - 168, - 252, - 105, - 78, - 112, - 70, - 120, - 167, - 121, - 101, - 185, - 86, - 3, - 218, - 155, - 142, - 126, - 108, - 208, - 4, - 123, - 65, - 228, - 208, - 0, - 207, - 3, - 20, - 227, - 215, - 138, - 81, - 19, - 147, - 157, - 202, - 40, - 1, - 143, - 31, - 28, - 224, - 125, - 41, - 84, - 46, - 222, - 73, - 167, - 16, - 7, - 4, - 146, - 105, - 60, - 183, - 110, - 49, - 129, - 235, - 64, - 9, - 193, - 29, - 63, - 58, - 69, - 136, - 131, - 184, - 56, - 247, - 24, - 167, - 178, - 149, - 31, - 49, - 7, - 233, - 76, - 235, - 192, - 4, - 226, - 128, - 6, - 59, - 142, - 58, - 147, - 72, - 99, - 11, - 213, - 113, - 82, - 4, - 118, - 25, - 82, - 23, - 235, - 77, - 127, - 66, - 104, - 2, - 35, - 18, - 30, - 115, - 249, - 84, - 126, - 75, - 103, - 10, - 15, - 53, - 97, - 75, - 39, - 240, - 126, - 52, - 52, - 133, - 65, - 201, - 164, - 5, - 115, - 19, - 171, - 109, - 32, - 103, - 218, - 153, - 180, - 231, - 161, - 63, - 74, - 121, - 102, - 39, - 36, - 210, - 198, - 223, - 62, - 115, - 138, - 6, - 69, - 140, - 118, - 197, - 1, - 201, - 24, - 221, - 86, - 153, - 98, - 56, - 222, - 9, - 111, - 106, - 26, - 53, - 101, - 229, - 66, - 251, - 208, - 5, - 77, - 180, - 5, - 45, - 192, - 4, - 212, - 206, - 129, - 23, - 33, - 183, - 10, - 95, - 52, - 21, - 192, - 24, - 62, - 180, - 1, - 8, - 136, - 247, - 227, - 218, - 165, - 216, - 241, - 167, - 32, - 5, - 61, - 233, - 86, - 93, - 189, - 84, - 100, - 119, - 164, - 89, - 20, - 185, - 50, - 130, - 104, - 0, - 27, - 79, - 33, - 73, - 247, - 166, - 237, - 94, - 167, - 39, - 29, - 133, - 56, - 186, - 179, - 99, - 36, - 39, - 181, - 72, - 21, - 148, - 145, - 8, - 3, - 212, - 181, - 0, - 66, - 202, - 28, - 114, - 2, - 168, - 168, - 74, - 16, - 51, - 142, - 42, - 209, - 76, - 54, - 0, - 44, - 253, - 233, - 172, - 14, - 127, - 123, - 249, - 10, - 0, - 175, - 214, - 144, - 174, - 49, - 206, - 106, - 207, - 148, - 178, - 13, - 216, - 84, - 81, - 211, - 21, - 23, - 150, - 78, - 72, - 25, - 3, - 189, - 0, - 68, - 69, - 38, - 42, - 78, - 71, - 61, - 40, - 52, - 1, - 30, - 41, - 164, - 83, - 205, - 24, - 160, - 6, - 98, - 140, - 83, - 177, - 74, - 171, - 154, - 0, - 180, - 22, - 165, - 142, - 51, - 78, - 68, - 201, - 169, - 214, - 50, - 41, - 128, - 44, - 124, - 117, - 169, - 21, - 7, - 122, - 2, - 241, - 214, - 156, - 41, - 136, - 105, - 92, - 30, - 40, - 218, - 24, - 116, - 169, - 0, - 245, - 163, - 110, - 57, - 20, - 1, - 14, - 54, - 156, - 83, - 177, - 232, - 42, - 92, - 6, - 20, - 152, - 218, - 104, - 1, - 138, - 51, - 71, - 151, - 143, - 165, - 61, - 151, - 184, - 160, - 28, - 245, - 226, - 128, - 26, - 23, - 158, - 180, - 237, - 160, - 240, - 105, - 8, - 32, - 245, - 165, - 200, - 34, - 128, - 27, - 179, - 105, - 224, - 241, - 78, - 42, - 15, - 56, - 230, - 148, - 17, - 208, - 211, - 198, - 59, - 82, - 2, - 28, - 149, - 59, - 72, - 167, - 138, - 121, - 195, - 112, - 105, - 188, - 138, - 0, - 5, - 33, - 227, - 173, - 59, - 131, - 222, - 140, - 250, - 208, - 3, - 112, - 185, - 200, - 52, - 225, - 130, - 48, - 105, - 10, - 103, - 165, - 52, - 49, - 7, - 4, - 80, - 2, - 149, - 218, - 114, - 180, - 236, - 2, - 41, - 172, - 91, - 210, - 133, - 203, - 15, - 122, - 0, - 141, - 212, - 129, - 134, - 25, - 30, - 180, - 205, - 190, - 134, - 172, - 158, - 7, - 205, - 80, - 50, - 224, - 252, - 163, - 35, - 218, - 152, - 4, - 106, - 195, - 210, - 166, - 35, - 112, - 207, - 67, - 80, - 161, - 203, - 99, - 161, - 169, - 198, - 113, - 235, - 72, - 6, - 131, - 216, - 138, - 81, - 156, - 83, - 179, - 158, - 13, - 48, - 144, - 58, - 80, - 3, - 25, - 128, - 205, - 51, - 120, - 45, - 232, - 105, - 204, - 65, - 60, - 210, - 50, - 130, - 189, - 63, - 26, - 0, - 107, - 70, - 173, - 200, - 224, - 212, - 91, - 31, - 56, - 219, - 248, - 212, - 225, - 88, - 244, - 25, - 169, - 16, - 99, - 130, - 104, - 2, - 37, - 132, - 227, - 231, - 193, - 20, - 191, - 102, - 67, - 200, - 39, - 233, - 83, - 48, - 3, - 154, - 77, - 195, - 176, - 52, - 1, - 25, - 137, - 7, - 85, - 230, - 149, - 120, - 198, - 41, - 228, - 228, - 114, - 42, - 50, - 141, - 156, - 169, - 160, - 7, - 158, - 123, - 96, - 210, - 5, - 231, - 45, - 64, - 4, - 240, - 212, - 125, - 223, - 113, - 64, - 14, - 36, - 99, - 174, - 106, - 34, - 6, - 120, - 24, - 53, - 38, - 213, - 60, - 175, - 6, - 130, - 72, - 224, - 129, - 249, - 80, - 3, - 54, - 142, - 232, - 51, - 65, - 25, - 92, - 46, - 62, - 148, - 243, - 156, - 117, - 226, - 155, - 176, - 30, - 173, - 131, - 64, - 16, - 125, - 152, - 183, - 42, - 216, - 246, - 197, - 66, - 200, - 200, - 112, - 213, - 112, - 54, - 211, - 200, - 205, - 46, - 65, - 232, - 50, - 40, - 2, - 144, - 247, - 165, - 32, - 118, - 169, - 158, - 220, - 185, - 202, - 28, - 31, - 74, - 134, - 68, - 104, - 200, - 221, - 210, - 144, - 198, - 209, - 154, - 92, - 3, - 72, - 87, - 154, - 0, - 114, - 200, - 203, - 208, - 212, - 139, - 48, - 35, - 7, - 131, - 80, - 80, - 56, - 52, - 1, - 51, - 38, - 91, - 32, - 226, - 164, - 1, - 118, - 243, - 218, - 160, - 220, - 123, - 26, - 124, - 114, - 168, - 63, - 53, - 49, - 11, - 131, - 191, - 129, - 79, - 96, - 196, - 112, - 216, - 164, - 97, - 188, - 102, - 50, - 40, - 85, - 0, - 97, - 207, - 229, - 64, - 13, - 1, - 27, - 140, - 157, - 223, - 90, - 104, - 18, - 198, - 79, - 203, - 242, - 250, - 138, - 113, - 218, - 167, - 228, - 25, - 167, - 229, - 153, - 49, - 145, - 143, - 122, - 0, - 133, - 139, - 55, - 57, - 207, - 176, - 164, - 13, - 216, - 41, - 207, - 189, - 74, - 60, - 180, - 231, - 146, - 212, - 143, - 190, - 78, - 113, - 192, - 160, - 6, - 59, - 184, - 79, - 152, - 243, - 233, - 85, - 219, - 230, - 230, - 159, - 46, - 73, - 35, - 176, - 168, - 199, - 6, - 144, - 198, - 129, - 154, - 149, - 33, - 92, - 101, - 152, - 147, - 237, - 79, - 22, - 234, - 169, - 184, - 185, - 207, - 165, - 57, - 79, - 31, - 42, - 17, - 239, - 64, - 11, - 181, - 143, - 240, - 128, - 61, - 106, - 50, - 170, - 8, - 220, - 219, - 190, - 148, - 246, - 12, - 7, - 206, - 220, - 123, - 82, - 40, - 39, - 148, - 76, - 123, - 154, - 98, - 20, - 161, - 100, - 33, - 84, - 1, - 250, - 213, - 76, - 114, - 71, - 165, - 93, - 216, - 1, - 203, - 49, - 111, - 97, - 73, - 247, - 129, - 1, - 0, - 30, - 167, - 173, - 32, - 41, - 208, - 69, - 78, - 246, - 227, - 105, - 216, - 249, - 111, - 74, - 132, - 130, - 14, - 24, - 96, - 251, - 208, - 49, - 167, - 167, - 53, - 40, - 92, - 40, - 50, - 183, - 30, - 149, - 30, - 42, - 80, - 217, - 69, - 80, - 9, - 110, - 148, - 0, - 226, - 206, - 192, - 5, - 27, - 23, - 212, - 212, - 108, - 155, - 142, - 21, - 137, - 35, - 185, - 169, - 72, - 0, - 15, - 53, - 179, - 254, - 205, - 46, - 9, - 28, - 97, - 19, - 222, - 128, - 42, - 82, - 228, - 129, - 193, - 198, - 122, - 211, - 156, - 46, - 236, - 168, - 33, - 71, - 20, - 210, - 40, - 0, - 221, - 129, - 142, - 212, - 246, - 141, - 54, - 239, - 251, - 163, - 29, - 61, - 106, - 44, - 22, - 59, - 64, - 201, - 171, - 8, - 21, - 122, - 229, - 136, - 233, - 232, - 40, - 2, - 22, - 140, - 99, - 112, - 224, - 30, - 213, - 30, - 218, - 178, - 120, - 147, - 156, - 51, - 118, - 29, - 170, - 41, - 0, - 15, - 199, - 92, - 115, - 64, - 17, - 237, - 193, - 230, - 151, - 56, - 167, - 2, - 51, - 146, - 51, - 67, - 38, - 56, - 7, - 62, - 166, - 128, - 52, - 80, - 84, - 224, - 102, - 161, - 78, - 181, - 97, - 65, - 21, - 66, - 0, - 164, - 123, - 138, - 8, - 167, - 81, - 138, - 0, - 104, - 60, - 210, - 150, - 226, - 148, - 40, - 235, - 138, - 118, - 6, - 48, - 105, - 0, - 204, - 250, - 83, - 179, - 145, - 77, - 35, - 109, - 3, - 52, - 0, - 163, - 32, - 244, - 165, - 49, - 238, - 28, - 80, - 15, - 173, - 60, - 26, - 0, - 104, - 24, - 63, - 53, - 33, - 65, - 156, - 138, - 123, - 115, - 70, - 40, - 1, - 187, - 70, - 58, - 102, - 147, - 238, - 158, - 58, - 83, - 241, - 233, - 70, - 120, - 160, - 4, - 24, - 52, - 26, - 66, - 10, - 156, - 142, - 148, - 236, - 230, - 128, - 26, - 83, - 184, - 160, - 1, - 208, - 210, - 242, - 40, - 192, - 34, - 128, - 20, - 12, - 116, - 165, - 235, - 76, - 201, - 83, - 207, - 74, - 119, - 81, - 197, - 0, - 20, - 155, - 115, - 210, - 150, - 151, - 189, - 0, - 48, - 145, - 222, - 153, - 183, - 186, - 156, - 212, - 216, - 7, - 168, - 164, - 32, - 14, - 69, - 0, - 67, - 128, - 88, - 100, - 115, - 82, - 128, - 71, - 74, - 92, - 231, - 181, - 28, - 131, - 64, - 13, - 96, - 77, - 68, - 192, - 158, - 149, - 59, - 114, - 42, - 50, - 188, - 231, - 173, - 0, - 66, - 65, - 199, - 52, - 228, - 7, - 56, - 235, - 78, - 242, - 137, - 229, - 79, - 224, - 105, - 200, - 172, - 56, - 35, - 20, - 0, - 187, - 50, - 56, - 226, - 141, - 189, - 143, - 90, - 95, - 152, - 82, - 131, - 158, - 15, - 90, - 0, - 136, - 252, - 167, - 173, - 57, - 72, - 110, - 148, - 243, - 142, - 252, - 211, - 72, - 83, - 208, - 98, - 128, - 6, - 56, - 166, - 210, - 225, - 186, - 19, - 70, - 195, - 234, - 49, - 64, - 9, - 156, - 31, - 155, - 243, - 164, - 97, - 198, - 84, - 230, - 159, - 181, - 69, - 48, - 237, - 29, - 51, - 64, - 8, - 9, - 60, - 98, - 148, - 150, - 252, - 40, - 7, - 52, - 29, - 223, - 133, - 0, - 40, - 0, - 142, - 180, - 16, - 160, - 83, - 8, - 25, - 206, - 72, - 160, - 63, - 175, - 52, - 0, - 224, - 222, - 212, - 125, - 48, - 41, - 1, - 61, - 168, - 41, - 187, - 189, - 0, - 33, - 124, - 54, - 15, - 233, - 75, - 149, - 97, - 207, - 205, - 76, - 101, - 10, - 121, - 230, - 148, - 31, - 238, - 228, - 208, - 4, - 18, - 198, - 51, - 149, - 226, - 163, - 53, - 101, - 129, - 144, - 115, - 193, - 237, - 80, - 188, - 50, - 40, - 201, - 193, - 250, - 80, - 3, - 58, - 210, - 98, - 133, - 235, - 205, - 43, - 41, - 28, - 246, - 164, - 49, - 49, - 138, - 76, - 211, - 199, - 78, - 105, - 184, - 20, - 0, - 35, - 21, - 60, - 84, - 233, - 40, - 35, - 230, - 21, - 95, - 161, - 165, - 205, - 1, - 98, - 125, - 165, - 254, - 233, - 20, - 190, - 88, - 3, - 231, - 110, - 125, - 170, - 5, - 145, - 148, - 96, - 84, - 177, - 144, - 195, - 47, - 205, - 49, - 6, - 236, - 125, - 212, - 220, - 62, - 148, - 141, - 159, - 92, - 122, - 138, - 151, - 126, - 56, - 141, - 106, - 38, - 206, - 114, - 253, - 104, - 2, - 6, - 251, - 198, - 152, - 7, - 204, - 1, - 227, - 222, - 156, - 79, - 204, - 113, - 66, - 161, - 119, - 199, - 64, - 58, - 210, - 25, - 96, - 34, - 162, - 142, - 174, - 105, - 126, - 118, - 24, - 24, - 81, - 233, - 72, - 172, - 7, - 202, - 131, - 7, - 214, - 148, - 163, - 30, - 101, - 108, - 125, - 41, - 136, - 104, - 10, - 135, - 131, - 185, - 141, - 12, - 36, - 63, - 120, - 109, - 30, - 212, - 133, - 206, - 112, - 131, - 61, - 179, - 79, - 25, - 85, - 38, - 71, - 200, - 244, - 52, - 1, - 24, - 96, - 56, - 141, - 115, - 239, - 75, - 34, - 182, - 3, - 72, - 195, - 3, - 210, - 140, - 238, - 111, - 220, - 174, - 208, - 41, - 101, - 104, - 193, - 27, - 185, - 97, - 216, - 82, - 1, - 170, - 236, - 231, - 8, - 56, - 245, - 166, - 179, - 41, - 202, - 182, - 29, - 187, - 84, - 152, - 46, - 191, - 63, - 200, - 190, - 162, - 163, - 24, - 13, - 132, - 27, - 135, - 77, - 216, - 160, - 8, - 10, - 178, - 144, - 24, - 99, - 52, - 232, - 207, - 205, - 180, - 16, - 62, - 181, - 44, - 167, - 247, - 100, - 49, - 220, - 199, - 167, - 168, - 170, - 196, - 118, - 60, - 28, - 80, - 50, - 195, - 109, - 13, - 251, - 176, - 88, - 247, - 39, - 165, - 14, - 118, - 242, - 231, - 115, - 31, - 225, - 20, - 136, - 92, - 199, - 132, - 199, - 190, - 105, - 99, - 63, - 43, - 5, - 1, - 155, - 222, - 128, - 26, - 195, - 41, - 150, - 96, - 190, - 139, - 80, - 14, - 149, - 58, - 5, - 25, - 36, - 239, - 99, - 219, - 210, - 160, - 29, - 40, - 1, - 241, - 171, - 16, - 72, - 56, - 7, - 189, - 63, - 36, - 166, - 19, - 229, - 78, - 237, - 64, - 24, - 1, - 164, - 60, - 14, - 138, - 40, - 56, - 206, - 249, - 56, - 95, - 225, - 81, - 222, - 128, - 19, - 39, - 110, - 212, - 59, - 87, - 187, - 30, - 244, - 96, - 5, - 194, - 168, - 219, - 220, - 158, - 244, - 188, - 145, - 190, - 81, - 133, - 236, - 163, - 189, - 35, - 101, - 176, - 207, - 199, - 247, - 80, - 80, - 4, - 76, - 160, - 30, - 58, - 123, - 208, - 14, - 70, - 14, - 6, - 58, - 154, - 145, - 135, - 24, - 97, - 151, - 61, - 20, - 118, - 168, - 200, - 218, - 196, - 100, - 28, - 80, - 6, - 138, - 14, - 213, - 105, - 79, - 2, - 171, - 168, - 230, - 167, - 166, - 33, - 196, - 103, - 165, - 0, - 82, - 102, - 138, - 0, - 112, - 24, - 165, - 164, - 165, - 160, - 6, - 159, - 74, - 48, - 125, - 41, - 72, - 205, - 40, - 160, - 4, - 198, - 105, - 6, - 71, - 90, - 119, - 52, - 14, - 104, - 0, - 57, - 236, - 104, - 205, - 46, - 13, - 27, - 104, - 1, - 164, - 226, - 151, - 173, - 46, - 5, - 46, - 40, - 1, - 51, - 142, - 180, - 148, - 238, - 180, - 152, - 197, - 0, - 24, - 163, - 4, - 26, - 5, - 28, - 208, - 2, - 230, - 154, - 114, - 14, - 69, - 41, - 28, - 230, - 148, - 123, - 208, - 3, - 65, - 205, - 4, - 48, - 52, - 236, - 3, - 69, - 0, - 10, - 217, - 20, - 81, - 176, - 117, - 20, - 116, - 235, - 64, - 6, - 40, - 231, - 165, - 7, - 167, - 20, - 110, - 245, - 160, - 6, - 237, - 207, - 122, - 94, - 157, - 69, - 7, - 218, - 148, - 28, - 245, - 160, - 4, - 60, - 114, - 41, - 51, - 158, - 180, - 236, - 1, - 73, - 128, - 104, - 0, - 230, - 154, - 72, - 61, - 120, - 52, - 165, - 72, - 250, - 83, - 74, - 131, - 200, - 56, - 160, - 5, - 227, - 240, - 160, - 173, - 3, - 142, - 8, - 205, - 3, - 158, - 148, - 0, - 220, - 145, - 215, - 165, - 46, - 15, - 81, - 138, - 11, - 122, - 241, - 70, - 211, - 216, - 138, - 0, - 92, - 122, - 138, - 107, - 47, - 25, - 90, - 9, - 199, - 13, - 249, - 210, - 103, - 142, - 40, - 1, - 171, - 147, - 214, - 156, - 84, - 143, - 122, - 64, - 75, - 122, - 83, - 249, - 29, - 104, - 2, - 63, - 151, - 61, - 77, - 56, - 176, - 199, - 74, - 12, - 106, - 199, - 32, - 144, - 105, - 172, - 74, - 117, - 228, - 122, - 208, - 2, - 0, - 217, - 200, - 20, - 187, - 185, - 230, - 133, - 37, - 134, - 70, - 40, - 42, - 15, - 12, - 40, - 1, - 14, - 59, - 115, - 245, - 164, - 70, - 231, - 128, - 5, - 59, - 229, - 94, - 135, - 34, - 155, - 184, - 30, - 128, - 10, - 0, - 115, - 22, - 61, - 120, - 166, - 152, - 219, - 174, - 65, - 165, - 195, - 30, - 189, - 41, - 192, - 109, - 31, - 122, - 128, - 41, - 202, - 48, - 217, - 198, - 40, - 7, - 214, - 167, - 149, - 193, - 224, - 143, - 210, - 160, - 3, - 210, - 129, - 136, - 125, - 169, - 188, - 131, - 78, - 57, - 205, - 29, - 104, - 1, - 54, - 228, - 83, - 64, - 231, - 6, - 159, - 130, - 13, - 52, - 140, - 154, - 64, - 27, - 127, - 42, - 17, - 252, - 179, - 207, - 74, - 90, - 67, - 215, - 20, - 1, - 54, - 237, - 231, - 229, - 32, - 82, - 144, - 168, - 9, - 124, - 49, - 168, - 71, - 29, - 42, - 85, - 92, - 124, - 196, - 228, - 250, - 83, - 17, - 93, - 128, - 12, - 113, - 78, - 136, - 46, - 236, - 147, - 73, - 39, - 223, - 38, - 132, - 42, - 15, - 205, - 210, - 144, - 201, - 67, - 18, - 112, - 171, - 248, - 226, - 134, - 249, - 78, - 93, - 183, - 122, - 10, - 114, - 187, - 50, - 254, - 237, - 69, - 52, - 5, - 86, - 221, - 38, - 115, - 76, - 64, - 185, - 111, - 245, - 96, - 39, - 214, - 154, - 64, - 86, - 253, - 233, - 201, - 246, - 52, - 247, - 119, - 124, - 97, - 72, - 95, - 92, - 83, - 64, - 69, - 25, - 39, - 123, - 30, - 212, - 128, - 114, - 179, - 184, - 192, - 27, - 87, - 214, - 154, - 140, - 145, - 228, - 70, - 60, - 195, - 222, - 148, - 43, - 57, - 201, - 59, - 87, - 210, - 149, - 153, - 84, - 237, - 136, - 96, - 158, - 244, - 192, - 137, - 216, - 177, - 253, - 225, - 192, - 254, - 237, - 46, - 230, - 113, - 182, - 33, - 180, - 122, - 154, - 10, - 224, - 239, - 148, - 131, - 233, - 205, - 11, - 190, - 94, - 167, - 108, - 116, - 0, - 131, - 17, - 30, - 153, - 126, - 153, - 237, - 76, - 156, - 63, - 14, - 227, - 31, - 74, - 144, - 48, - 7, - 108, - 63, - 55, - 169, - 52, - 174, - 171, - 26, - 146, - 88, - 179, - 159, - 225, - 164, - 5, - 81, - 203, - 1, - 146, - 7, - 122, - 155, - 59, - 134, - 216, - 184, - 29, - 218, - 161, - 32, - 142, - 8, - 193, - 169, - 144, - 121, - 145, - 141, - 164, - 34, - 175, - 95, - 122, - 6, - 11, - 133, - 249, - 87, - 230, - 61, - 218, - 160, - 31, - 46, - 125, - 141, - 78, - 6, - 236, - 249, - 64, - 34, - 142, - 254, - 181, - 95, - 156, - 227, - 223, - 173, - 0, - 77, - 194, - 224, - 147, - 186, - 67, - 208, - 10, - 14, - 85, - 178, - 223, - 52, - 135, - 160, - 20, - 12, - 110, - 11, - 0, - 231, - 185, - 165, - 140, - 17, - 33, - 84, - 249, - 143, - 241, - 19, - 64, - 9, - 146, - 62, - 83, - 243, - 59, - 118, - 236, - 41, - 0, - 108, - 144, - 184, - 103, - 247, - 237, - 78, - 80, - 75, - 21, - 139, - 156, - 253, - 227, - 233, - 76, - 254, - 31, - 151, - 59, - 65, - 193, - 110, - 244, - 192, - 48, - 67, - 225, - 14, - 230, - 238, - 231, - 181, - 53, - 192, - 207, - 28, - 227, - 248, - 189, - 105, - 229, - 178, - 51, - 247, - 19, - 177, - 199, - 90, - 36, - 192, - 10, - 72, - 192, - 236, - 190, - 180, - 128, - 208, - 79, - 189, - 82, - 212, - 0, - 242, - 13, - 76, - 173, - 218, - 152, - 133, - 165, - 218, - 125, - 104, - 167, - 14, - 156, - 208, - 0, - 7, - 20, - 102, - 142, - 148, - 184, - 205, - 0, - 20, - 14, - 105, - 58, - 83, - 133, - 0, - 38, - 105, - 104, - 34, - 129, - 64, - 6, - 104, - 233, - 70, - 40, - 20, - 0, - 30, - 69, - 25, - 199, - 90, - 8, - 193, - 165, - 24, - 52, - 0, - 134, - 140, - 158, - 244, - 99, - 20, - 238, - 40, - 2, - 50, - 15, - 81, - 78, - 235, - 75, - 70, - 56, - 160, - 4, - 165, - 192, - 52, - 99, - 7, - 154, - 62, - 148, - 0, - 152, - 199, - 74, - 92, - 102, - 140, - 250, - 138, - 90, - 0, - 78, - 69, - 28, - 55, - 90, - 40, - 32, - 142, - 69, - 0, - 24, - 199, - 74, - 92, - 3, - 76, - 4, - 154, - 83, - 145, - 212, - 80, - 2, - 226, - 130, - 41, - 55, - 118, - 52, - 160, - 208, - 3, - 119, - 96, - 224, - 209, - 201, - 228, - 83, - 136, - 83, - 214, - 142, - 7, - 74, - 0, - 104, - 111, - 90, - 25, - 7, - 80, - 105, - 73, - 6, - 140, - 80, - 4, - 123, - 187, - 26, - 112, - 245, - 20, - 226, - 138, - 195, - 154, - 97, - 5, - 15, - 6, - 128, - 28, - 72, - 35, - 4, - 83, - 54, - 227, - 233, - 75, - 203, - 12, - 83, - 66, - 48, - 235, - 64, - 14, - 194, - 158, - 13, - 38, - 0, - 232, - 105, - 216, - 226, - 163, - 221, - 131, - 214, - 128, - 29, - 146, - 125, - 41, - 165, - 91, - 189, - 56, - 29, - 221, - 5, - 41, - 86, - 199, - 122, - 0, - 106, - 128, - 59, - 210, - 151, - 29, - 14, - 13, - 55, - 142, - 230, - 151, - 35, - 166, - 1, - 160, - 4, - 199, - 57, - 81, - 75, - 180, - 30, - 9, - 32, - 210, - 16, - 216, - 200, - 31, - 149, - 32, - 60, - 252, - 192, - 138, - 0, - 70, - 93, - 167, - 189, - 46, - 119, - 14, - 0, - 167, - 238, - 3, - 190, - 105, - 187, - 183, - 28, - 40, - 20, - 0, - 221, - 174, - 15, - 56, - 199, - 181, - 59, - 11, - 140, - 247, - 164, - 101, - 113, - 247, - 135, - 30, - 212, - 223, - 148, - 115, - 146, - 40, - 1, - 73, - 227, - 30, - 190, - 213, - 93, - 198, - 211, - 193, - 171, - 27, - 201, - 224, - 12, - 254, - 21, - 28, - 177, - 28, - 103, - 60, - 208, - 4, - 38, - 144, - 210, - 209, - 154, - 6, - 38, - 104, - 197, - 12, - 59, - 210, - 102, - 128, - 16, - 245, - 162, - 148, - 138, - 74, - 64, - 37, - 73, - 27, - 144, - 121, - 168, - 205, - 40, - 160, - 5, - 147, - 239, - 115, - 72, - 172, - 170, - 114, - 70, - 69, - 13, - 210, - 133, - 24, - 96, - 79, - 52, - 1, - 42, - 22, - 147, - 238, - 124, - 163, - 233, - 74, - 192, - 33, - 249, - 240, - 199, - 174, - 105, - 85, - 153, - 254, - 80, - 54, - 138, - 113, - 81, - 16, - 201, - 59, - 137, - 166, - 33, - 138, - 100, - 114, - 56, - 249, - 127, - 42, - 107, - 24, - 195, - 254, - 236, - 18, - 198, - 128, - 90, - 98, - 71, - 221, - 20, - 23, - 88, - 120, - 0, - 22, - 245, - 160, - 5, - 42, - 118, - 230, - 83, - 143, - 161, - 166, - 238, - 99, - 196, - 99, - 143, - 90, - 112, - 4, - 229, - 228, - 32, - 175, - 165, - 55, - 113, - 144, - 149, - 136, - 5, - 2, - 128, - 16, - 132, - 67, - 144, - 75, - 183, - 161, - 165, - 144, - 23, - 140, - 18, - 118, - 123, - 82, - 22, - 72, - 206, - 54, - 130, - 244, - 121, - 100, - 229, - 230, - 60, - 118, - 20, - 128, - 68, - 195, - 169, - 88, - 198, - 204, - 119, - 164, - 192, - 70, - 199, - 223, - 127, - 90, - 112, - 220, - 227, - 8, - 54, - 167, - 122, - 64, - 66, - 29, - 144, - 140, - 183, - 114, - 104, - 2, - 57, - 145, - 131, - 2, - 196, - 18, - 105, - 139, - 142, - 132, - 241, - 79, - 145, - 2, - 41, - 220, - 196, - 201, - 233, - 81, - 175, - 108, - 250, - 208, - 50, - 93, - 219, - 192, - 254, - 24, - 135, - 235, - 80, - 176, - 228, - 254, - 149, - 54, - 210, - 231, - 124, - 167, - 106, - 142, - 131, - 214, - 162, - 144, - 29, - 231, - 182, - 121, - 160, - 9, - 20, - 177, - 140, - 5, - 32, - 39, - 115, - 77, - 85, - 224, - 133, - 108, - 39, - 118, - 161, - 20, - 178, - 252, - 255, - 0, - 44, - 107, - 250, - 210, - 150, - 87, - 60, - 141, - 136, - 58, - 40, - 239, - 64, - 133, - 36, - 96, - 1, - 149, - 140, - 119, - 245, - 166, - 225, - 74, - 130, - 217, - 8, - 15, - 3, - 214, - 156, - 79, - 241, - 200, - 48, - 7, - 221, - 74, - 67, - 156, - 111, - 97, - 243, - 31, - 186, - 148, - 198, - 39, - 250, - 198, - 203, - 2, - 49, - 247, - 82, - 145, - 88, - 231, - 36, - 100, - 250, - 30, - 212, - 230, - 249, - 78, - 7, - 205, - 35, - 127, - 227, - 180, - 155, - 121, - 216, - 167, - 221, - 156, - 210, - 2, - 237, - 75, - 31, - 165, - 69, - 78, - 83, - 138, - 160, - 39, - 165, - 20, - 138, - 114, - 41, - 212, - 8, - 57, - 199, - 52, - 14, - 41, - 105, - 13, - 32, - 23, - 25, - 160, - 113, - 64, - 165, - 60, - 208, - 1, - 239, - 64, - 52, - 131, - 129, - 75, - 138, - 0, - 90, - 74, - 1, - 165, - 197, - 0, - 20, - 152, - 238, - 41, - 104, - 160, - 3, - 52, - 81, - 214, - 147, - 56, - 235, - 64, - 11, - 214, - 140, - 145, - 212, - 82, - 230, - 147, - 61, - 168, - 0, - 235, - 74, - 5, - 52, - 244, - 165, - 6, - 128, - 29, - 138, - 111, - 78, - 148, - 180, - 80, - 1, - 184, - 119, - 163, - 52, - 214, - 233, - 77, - 220, - 7, - 122, - 0, - 115, - 117, - 200, - 165, - 6, - 155, - 156, - 210, - 131, - 138, - 0, - 14, - 15, - 81, - 70, - 7, - 165, - 33, - 60, - 230, - 148, - 48, - 245, - 160, - 3, - 104, - 236, - 105, - 6, - 115, - 79, - 164, - 34, - 128, - 2, - 185, - 28, - 83, - 73, - 35, - 174, - 126, - 180, - 236, - 226, - 151, - 57, - 160, - 6, - 2, - 125, - 104, - 220, - 58, - 26, - 93, - 184, - 233, - 72, - 85, - 79, - 90, - 0, - 48, - 59, - 80, - 73, - 236, - 105, - 54, - 224, - 240, - 77, - 25, - 61, - 141, - 0, - 24, - 39, - 144, - 105, - 216, - 7, - 168, - 20, - 132, - 55, - 108, - 83, - 3, - 115, - 134, - 20, - 0, - 21, - 32, - 252, - 180, - 161, - 137, - 224, - 241, - 71, - 211, - 52, - 187, - 129, - 226, - 128, - 26, - 83, - 156, - 228, - 82, - 49, - 0, - 114, - 41, - 219, - 91, - 61, - 50, - 40, - 33, - 72, - 195, - 12, - 80, - 3, - 1, - 56, - 200, - 6, - 141, - 129, - 186, - 177, - 20, - 191, - 119, - 149, - 205, - 33, - 5, - 135, - 7, - 6, - 128, - 26, - 87, - 103, - 70, - 200, - 247, - 161, - 91, - 158, - 20, - 125, - 105, - 192, - 50, - 253, - 236, - 26, - 9, - 83, - 208, - 115, - 64, - 10, - 114, - 70, - 14, - 113, - 81, - 236, - 92, - 231, - 38, - 148, - 171, - 147, - 192, - 56, - 165, - 242, - 240, - 114, - 92, - 208, - 2, - 135, - 219, - 208, - 83, - 95, - 230, - 83, - 158, - 41, - 75, - 129, - 199, - 90, - 66, - 132, - 130, - 73, - 160, - 10, - 204, - 57, - 52, - 222, - 244, - 231, - 200, - 115, - 73, - 158, - 104, - 24, - 148, - 132, - 0, - 41, - 230, - 152, - 69, - 0, - 47, - 106, - 109, - 45, - 3, - 175, - 52, - 0, - 218, - 41, - 197, - 70, - 105, - 41, - 0, - 210, - 77, - 57, - 78, - 14, - 105, - 27, - 173, - 47, - 27, - 148, - 251, - 208, - 4, - 163, - 205, - 99, - 128, - 8, - 30, - 180, - 226, - 162, - 32, - 14, - 226, - 73, - 236, - 105, - 217, - 148, - 175, - 24, - 2, - 144, - 4, - 207, - 114, - 223, - 90, - 98, - 26, - 21, - 165, - 57, - 108, - 168, - 20, - 214, - 125, - 132, - 170, - 2, - 199, - 215, - 20, - 230, - 18, - 49, - 249, - 242, - 171, - 77, - 221, - 180, - 226, - 32, - 88, - 247, - 160, - 5, - 84, - 219, - 150, - 145, - 176, - 61, - 41, - 9, - 121, - 78, - 20, - 108, - 95, - 92, - 80, - 0, - 206, - 233, - 137, - 221, - 233, - 74, - 198, - 70, - 224, - 169, - 11, - 64, - 3, - 58, - 161, - 10, - 163, - 121, - 246, - 20, - 133, - 8, - 249, - 229, - 111, - 248, - 14, - 40, - 141, - 246, - 41, - 17, - 169, - 99, - 72, - 121, - 249, - 164, - 206, - 238, - 194, - 128, - 26, - 164, - 202, - 216, - 251, - 139, - 233, - 73, - 149, - 221, - 182, - 17, - 131, - 221, - 169, - 78, - 73, - 204, - 131, - 106, - 251, - 82, - 225, - 152, - 109, - 136, - 97, - 123, - 154, - 64, - 53, - 194, - 15, - 151, - 27, - 220, - 247, - 244, - 168, - 15, - 12, - 71, - 165, - 90, - 80, - 35, - 82, - 35, - 249, - 152, - 245, - 38, - 170, - 183, - 82, - 79, - 83, - 64, - 201, - 49, - 136, - 247, - 202, - 114, - 49, - 192, - 205, - 49, - 198, - 2, - 251, - 246, - 167, - 66, - 160, - 225, - 137, - 201, - 236, - 180, - 78, - 122, - 19, - 214, - 128, - 4, - 32, - 69, - 243, - 13, - 222, - 130, - 148, - 141, - 160, - 52, - 131, - 39, - 248, - 86, - 155, - 17, - 11, - 200, - 229, - 207, - 74, - 94, - 67, - 101, - 142, - 100, - 63, - 165, - 48, - 23, - 44, - 24, - 110, - 27, - 156, - 244, - 30, - 148, - 143, - 144, - 121, - 59, - 152, - 247, - 244, - 160, - 112, - 74, - 169, - 203, - 159, - 188, - 222, - 148, - 152, - 249, - 72, - 92, - 0, - 62, - 241, - 245, - 164, - 0, - 62, - 102, - 249, - 120, - 3, - 171, - 122, - 210, - 156, - 2, - 88, - 140, - 15, - 79, - 90, - 0, - 202, - 131, - 140, - 39, - 101, - 245, - 164, - 96, - 88, - 131, - 220, - 244, - 30, - 148, - 192, - 188, - 69, - 37, - 57, - 78, - 69, - 4, - 12, - 211, - 16, - 248, - 219, - 7, - 6, - 166, - 206, - 106, - 184, - 52, - 224, - 230, - 128, - 39, - 162, - 145, - 78, - 105, - 123, - 210, - 1, - 7, - 20, - 238, - 180, - 152, - 165, - 197, - 0, - 2, - 150, - 146, - 138, - 0, - 13, - 25, - 162, - 148, - 80, - 2, - 26, - 81, - 239, - 75, - 73, - 64, - 6, - 49, - 71, - 90, - 78, - 115, - 75, - 64, - 5, - 47, - 90, - 5, - 24, - 244, - 160, - 2, - 146, - 148, - 28, - 209, - 64, - 5, - 55, - 56, - 62, - 212, - 180, - 109, - 244, - 52, - 0, - 157, - 104, - 218, - 58, - 226, - 151, - 111, - 190, - 41, - 57, - 7, - 6, - 128, - 19, - 111, - 167, - 20, - 21, - 108, - 117, - 167, - 80, - 77, - 0, - 70, - 16, - 17, - 212, - 230, - 158, - 20, - 119, - 163, - 56, - 57, - 236, - 105, - 119, - 80, - 2, - 17, - 183, - 233, - 74, - 61, - 65, - 165, - 164, - 28, - 116, - 160, - 5, - 164, - 42, - 59, - 81, - 197, - 29, - 58, - 80, - 3, - 78, - 84, - 250, - 138, - 94, - 13, - 46, - 105, - 8, - 160, - 0, - 113, - 212, - 208, - 77, - 3, - 29, - 13, - 38, - 0, - 233, - 64, - 10, - 121, - 166, - 152, - 243, - 222, - 151, - 119, - 189, - 47, - 94, - 134, - 128, - 25, - 146, - 15, - 90, - 66, - 217, - 237, - 82, - 96, - 119, - 20, - 194, - 6, - 120, - 20, - 0, - 139, - 187, - 184, - 56, - 165, - 33, - 72, - 235, - 65, - 221, - 138, - 64, - 55, - 115, - 186, - 128, - 27, - 187, - 105, - 235, - 78, - 35, - 127, - 66, - 40, - 200, - 29, - 112, - 104, - 251, - 221, - 5, - 0, - 38, - 54, - 245, - 230, - 147, - 229, - 61, - 23, - 154, - 126, - 209, - 252, - 64, - 211, - 112, - 131, - 238, - 231, - 52, - 0, - 208, - 204, - 56, - 228, - 82, - 224, - 30, - 119, - 82, - 150, - 99, - 198, - 8, - 166, - 152, - 243, - 206, - 234, - 0, - 93, - 192, - 116, - 193, - 166, - 177, - 102, - 29, - 64, - 165, - 12, - 171, - 193, - 2, - 154, - 84, - 158, - 69, - 0, - 64, - 192, - 131, - 243, - 117, - 166, - 211, - 156, - 115, - 77, - 160, - 98, - 245, - 20, - 148, - 10, - 13, - 33, - 8, - 71, - 20, - 152, - 52, - 166, - 128, - 104, - 24, - 135, - 154, - 76, - 98, - 134, - 246, - 162, - 128, - 18, - 129, - 74, - 1, - 160, - 241, - 64, - 18, - 39, - 152, - 252, - 14, - 149, - 47, - 238, - 227, - 28, - 0, - 90, - 160, - 135, - 115, - 146, - 162, - 164, - 37, - 99, - 249, - 112, - 25, - 168, - 16, - 184, - 119, - 251, - 220, - 45, - 55, - 32, - 124, - 176, - 142, - 105, - 89, - 100, - 43, - 150, - 96, - 23, - 210, - 145, - 27, - 156, - 32, - 25, - 245, - 166, - 1, - 229, - 42, - 252, - 243, - 242, - 223, - 90, - 8, - 146, - 81, - 129, - 194, - 125, - 105, - 91, - 8, - 115, - 41, - 14, - 105, - 88, - 22, - 94, - 8, - 85, - 244, - 164, - 4, - 97, - 130, - 157, - 144, - 140, - 159, - 90, - 14, - 212, - 59, - 165, - 249, - 155, - 235, - 78, - 5, - 73, - 217, - 24, - 25, - 238, - 113, - 72, - 72, - 135, - 169, - 12, - 199, - 218, - 152, - 8, - 99, - 45, - 251, - 201, - 72, - 10, - 59, - 80, - 3, - 74, - 48, - 132, - 34, - 10, - 82, - 55, - 15, - 50, - 86, - 224, - 116, - 90, - 102, - 76, - 135, - 146, - 99, - 94, - 220, - 82, - 0, - 56, - 13, - 178, - 46, - 189, - 218, - 160, - 144, - 109, - 56, - 206, - 125, - 234, - 198, - 75, - 157, - 145, - 130, - 23, - 185, - 170, - 242, - 112, - 248, - 7, - 32, - 119, - 166, - 49, - 98, - 96, - 132, - 128, - 9, - 115, - 210, - 157, - 42, - 237, - 143, - 107, - 16, - 92, - 156, - 147, - 233, - 77, - 133, - 153, - 88, - 132, - 93, - 196, - 254, - 148, - 167, - 141, - 216, - 201, - 56, - 249, - 137, - 237, - 72, - 67, - 35, - 36, - 31, - 151, - 25, - 60, - 15, - 106, - 123, - 15, - 151, - 106, - 243, - 207, - 204, - 213, - 26, - 240, - 195, - 21, - 55, - 12, - 49, - 157, - 136, - 189, - 125, - 232, - 24, - 132, - 0, - 161, - 87, - 132, - 238, - 221, - 205, - 33, - 33, - 134, - 78, - 118, - 142, - 130, - 128, - 70, - 55, - 21, - 194, - 142, - 21, - 125, - 105, - 64, - 43, - 254, - 241, - 237, - 233, - 76, - 0, - 183, - 115, - 247, - 143, - 79, - 106, - 111, - 183, - 62, - 231, - 214, - 156, - 188, - 130, - 7, - 221, - 31, - 120, - 210, - 96, - 158, - 71, - 115, - 197, - 2, - 47, - 20, - 199, - 214, - 144, - 19, - 222, - 166, - 32, - 48, - 199, - 113, - 77, - 217, - 235, - 76, - 6, - 98, - 138, - 113, - 27, - 126, - 148, - 209, - 64, - 18, - 198, - 120, - 169, - 55, - 14, - 42, - 184, - 200, - 167, - 6, - 160, - 11, - 2, - 138, - 98, - 183, - 62, - 212, - 239, - 113, - 72, - 5, - 34, - 138, - 77, - 212, - 188, - 26, - 0, - 90, - 76, - 210, - 142, - 40, - 32, - 26, - 0, - 1, - 162, - 138, - 51, - 64, - 5, - 29, - 13, - 25, - 160, - 208, - 1, - 205, - 0, - 208, - 13, - 6, - 128, - 3, - 73, - 154, - 50, - 123, - 208, - 13, - 0, - 24, - 30, - 166, - 148, - 28, - 112, - 104, - 205, - 33, - 52, - 0, - 185, - 164, - 220, - 41, - 41, - 195, - 165, - 0, - 37, - 40, - 52, - 187, - 65, - 164, - 42, - 49, - 197, - 0, - 4, - 83, - 74, - 250, - 82, - 227, - 212, - 209, - 183, - 253, - 170, - 0, - 81, - 210, - 151, - 173, - 51, - 37, - 78, - 15, - 231, - 79, - 7, - 34, - 128, - 16, - 169, - 52, - 46, - 123, - 210, - 209, - 248, - 208, - 2, - 26, - 51, - 199, - 52, - 166, - 154, - 15, - 98, - 40, - 0, - 219, - 232, - 105, - 14, - 69, - 41, - 207, - 106, - 76, - 3, - 212, - 80, - 1, - 156, - 246, - 20, - 210, - 24, - 30, - 5, - 60, - 40, - 237, - 77, - 109, - 195, - 166, - 104, - 0, - 250, - 211, - 73, - 11, - 222, - 156, - 57, - 239, - 138, - 82, - 7, - 126, - 104, - 0, - 86, - 220, - 41, - 172, - 132, - 28, - 209, - 184, - 14, - 0, - 165, - 25, - 244, - 160, - 6, - 124, - 189, - 10, - 131, - 73, - 143, - 64, - 71, - 210, - 164, - 40, - 167, - 147, - 197, - 53, - 155, - 104, - 226, - 128, - 26, - 51, - 252, - 89, - 167, - 0, - 163, - 248, - 169, - 23, - 230, - 254, - 42, - 95, - 44, - 142, - 226, - 128, - 17, - 164, - 236, - 40, - 216, - 91, - 161, - 165, - 200, - 61, - 134, - 105, - 54, - 190, - 120, - 198, - 40, - 1, - 62, - 85, - 28, - 168, - 164, - 47, - 199, - 2, - 156, - 85, - 8, - 249, - 133, - 67, - 38, - 209, - 247, - 73, - 160, - 8, - 216, - 243, - 76, - 52, - 226, - 121, - 164, - 52, - 12, - 64, - 113, - 70, - 40, - 227, - 20, - 80, - 3, - 79, - 90, - 80, - 61, - 104, - 60, - 80, - 41, - 0, - 210, - 57, - 163, - 165, - 41, - 164, - 32, - 145, - 197, - 0, - 75, - 22, - 29, - 72, - 197, - 66, - 192, - 134, - 34, - 167, - 135, - 1, - 54, - 168, - 25, - 238, - 106, - 39, - 31, - 53, - 0, - 53, - 88, - 131, - 197, - 79, - 188, - 40, - 206, - 1, - 53, - 94, - 164, - 142, - 86, - 81, - 128, - 50, - 79, - 165, - 0, - 72, - 84, - 177, - 203, - 176, - 3, - 174, - 41, - 55, - 151, - 59, - 99, - 24, - 30, - 184, - 161, - 148, - 99, - 116, - 132, - 250, - 208, - 142, - 207, - 194, - 41, - 3, - 214, - 152, - 133, - 218, - 145, - 13, - 206, - 119, - 55, - 165, - 32, - 67, - 48, - 221, - 35, - 21, - 29, - 133, - 35, - 42, - 198, - 217, - 220, - 75, - 30, - 212, - 187, - 90, - 69, - 253, - 225, - 42, - 191, - 149, - 0, - 2, - 79, - 224, - 136, - 113, - 211, - 118, - 40, - 194, - 68, - 119, - 12, - 187, - 154, - 64, - 95, - 27, - 98, - 82, - 87, - 214, - 154, - 112, - 48, - 20, - 18, - 231, - 222, - 128, - 23, - 3, - 62, - 100, - 199, - 158, - 203, - 65, - 204, - 167, - 50, - 252, - 177, - 138, - 70, - 1, - 57, - 151, - 150, - 236, - 1, - 164, - 101, - 112, - 161, - 164, - 198, - 222, - 195, - 52, - 128, - 93, - 197, - 134, - 212, - 24, - 143, - 161, - 230, - 171, - 190, - 55, - 156, - 116, - 169, - 240, - 206, - 155, - 142, - 17, - 123, - 15, - 90, - 172, - 79, - 38, - 129, - 143, - 136, - 178, - 177, - 217, - 140, - 159, - 90, - 119, - 1, - 74, - 103, - 147, - 247, - 141, - 50, - 48, - 75, - 112, - 113, - 234, - 106, - 64, - 60, - 204, - 246, - 65, - 252, - 84, - 196, - 64, - 69, - 76, - 191, - 188, - 80, - 207, - 247, - 71, - 79, - 122, - 133, - 185, - 39, - 210, - 159, - 27, - 149, - 24, - 235, - 233, - 72, - 100, - 132, - 97, - 242, - 220, - 159, - 225, - 30, - 148, - 206, - 237, - 147, - 207, - 115, - 75, - 158, - 56, - 57, - 99, - 212, - 250, - 82, - 140, - 99, - 0, - 124, - 163, - 245, - 166, - 33, - 9, - 249, - 64, - 3, - 129, - 211, - 222, - 149, - 88, - 134, - 254, - 116, - 133, - 139, - 18, - 113, - 255, - 0, - 214, - 164, - 206, - 6, - 122, - 208, - 6, - 167, - 90, - 81, - 239, - 77, - 35, - 184, - 165, - 28, - 208, - 2, - 145, - 216, - 244, - 166, - 108, - 193, - 226, - 159, - 245, - 165, - 197, - 48, - 27, - 129, - 76, - 35, - 7, - 21, - 45, - 24, - 12, - 57, - 160, - 8, - 195, - 96, - 212, - 129, - 169, - 166, - 58, - 110, - 13, - 0, - 60, - 228, - 210, - 171, - 17, - 193, - 166, - 161, - 206, - 69, - 59, - 25, - 95, - 165, - 0, - 59, - 119, - 165, - 40, - 106, - 137, - 179, - 218, - 144, - 54, - 120, - 52, - 1, - 54, - 239, - 90, - 42, - 29, - 220, - 226, - 156, - 9, - 198, - 40, - 176, - 15, - 39, - 156, - 82, - 110, - 56, - 164, - 60, - 138, - 50, - 8, - 160, - 7, - 6, - 7, - 189, - 40, - 166, - 109, - 230, - 157, - 130, - 5, - 0, - 41, - 165, - 2, - 155, - 78, - 232, - 40, - 1, - 254, - 212, - 220, - 123, - 209, - 187, - 52, - 134, - 144, - 10, - 22, - 151, - 24, - 233, - 64, - 163, - 52, - 0, - 153, - 197, - 46, - 234, - 111, - 227, - 71, - 78, - 180, - 0, - 81, - 206, - 57, - 165, - 29, - 121, - 167, - 99, - 138, - 0, - 143, - 56, - 165, - 20, - 16, - 59, - 138, - 64, - 48, - 120, - 233, - 64, - 18, - 83, - 78, - 105, - 115, - 197, - 55, - 112, - 52, - 0, - 191, - 90, - 66, - 5, - 47, - 214, - 140, - 15, - 90, - 0, - 79, - 166, - 104, - 235, - 214, - 130, - 113, - 212, - 82, - 99, - 61, - 232, - 0, - 233, - 222, - 148, - 62, - 105, - 54, - 99, - 173, - 33, - 218, - 59, - 80, - 2, - 176, - 39, - 167, - 90, - 78, - 71, - 222, - 20, - 12, - 246, - 20, - 191, - 90, - 0, - 105, - 11, - 219, - 52, - 153, - 97, - 235, - 138, - 83, - 242, - 255, - 0, - 21, - 46, - 252, - 244, - 160, - 4, - 224, - 255, - 0, - 21, - 46, - 118, - 142, - 198, - 153, - 181, - 179, - 235, - 79, - 200, - 28, - 17, - 64, - 9, - 184, - 183, - 221, - 2, - 155, - 181, - 191, - 139, - 165, - 7, - 175, - 202, - 166, - 148, - 19, - 223, - 52, - 0, - 223, - 145, - 79, - 124, - 210, - 249, - 135, - 160, - 6, - 149, - 130, - 158, - 123, - 211, - 55, - 145, - 192, - 34, - 128, - 28, - 70, - 71, - 39, - 21, - 89, - 243, - 187, - 25, - 200, - 169, - 25, - 207, - 214, - 163, - 61, - 121, - 160, - 6, - 226, - 145, - 169, - 73, - 244, - 164, - 193, - 52, - 0, - 130, - 142, - 41, - 113, - 77, - 160, - 97, - 72, - 105, - 115, - 197, - 39, - 52, - 0, - 152, - 167, - 70, - 55, - 62, - 59, - 14, - 180, - 132, - 154, - 145, - 98, - 108, - 124, - 220, - 45, - 33, - 14, - 101, - 78, - 21, - 23, - 147, - 214, - 163, - 145, - 10, - 158, - 106, - 80, - 169, - 159, - 144, - 28, - 251, - 154, - 142, - 101, - 101, - 31, - 49, - 20, - 192, - 139, - 20, - 228, - 109, - 141, - 145, - 77, - 160, - 241, - 72, - 100, - 216, - 71, - 230, - 66, - 105, - 203, - 41, - 111, - 146, - 53, - 192, - 245, - 168, - 99, - 218, - 220, - 62, - 113, - 82, - 128, - 231, - 136, - 215, - 11, - 245, - 160, - 66, - 226, - 40, - 206, - 121, - 103, - 247, - 166, - 182, - 231, - 57, - 151, - 33, - 71, - 106, - 113, - 17, - 167, - 65, - 151, - 250, - 211, - 66, - 156, - 150, - 155, - 242, - 205, - 48, - 23, - 204, - 98, - 54, - 196, - 48, - 61, - 105, - 187, - 145, - 14, - 20, - 2, - 254, - 180, - 108, - 105, - 63, - 213, - 168, - 85, - 164, - 98, - 171, - 242, - 42, - 169, - 111, - 90, - 0, - 77, - 222, - 91, - 101, - 128, - 102, - 63, - 141, - 59, - 149, - 59, - 228, - 108, - 183, - 101, - 164, - 255, - 0, - 85, - 208, - 150, - 115, - 218, - 148, - 133, - 140, - 111, - 144, - 146, - 244, - 1, - 28, - 178, - 22, - 28, - 140, - 31, - 74, - 128, - 210, - 187, - 23, - 109, - 198, - 155, - 64, - 199, - 40, - 235, - 233, - 222, - 164, - 99, - 242, - 3, - 209, - 7, - 111, - 90, - 141, - 61, - 250, - 103, - 165, - 76, - 184, - 99, - 185, - 184, - 199, - 69, - 197, - 2, - 43, - 177, - 201, - 205, - 38, - 113, - 79, - 124, - 238, - 36, - 140, - 26, - 142, - 144, - 201, - 84, - 238, - 60, - 113, - 74, - 122, - 250, - 84, - 64, - 224, - 212, - 155, - 242, - 57, - 166, - 33, - 194, - 163, - 144, - 224, - 224, - 80, - 92, - 227, - 142, - 190, - 180, - 206, - 248, - 234, - 104, - 25, - 177, - 210, - 148, - 117, - 166, - 231, - 20, - 28, - 246, - 166, - 34, - 65, - 207, - 20, - 157, - 40, - 7, - 32, - 30, - 244, - 19, - 64, - 1, - 28, - 100, - 82, - 7, - 193, - 164, - 45, - 76, - 205, - 0, - 77, - 188, - 83, - 115, - 233, - 81, - 231, - 138, - 65, - 158, - 212, - 0, - 254, - 141, - 145, - 79, - 6, - 162, - 206, - 105, - 69, - 0, - 73, - 193, - 164, - 49, - 231, - 165, - 55, - 36, - 84, - 138, - 224, - 253, - 104, - 2, - 53, - 82, - 15, - 53, - 40, - 81, - 138, - 24, - 12, - 230, - 149, - 79, - 24, - 160, - 6, - 142, - 188, - 210, - 149, - 29, - 169, - 74, - 130, - 115, - 74, - 56, - 235, - 205, - 0, - 2, - 158, - 41, - 185, - 244, - 165, - 205, - 32, - 17, - 151, - 29, - 40, - 3, - 214, - 151, - 173, - 37, - 0, - 35, - 47, - 165, - 0, - 227, - 173, - 46, - 61, - 233, - 49, - 64, - 15, - 4, - 118, - 163, - 173, - 71, - 208, - 210, - 140, - 250, - 208, - 3, - 240, - 41, - 132, - 226, - 148, - 26, - 48, - 40, - 1, - 1, - 165, - 44, - 64, - 165, - 227, - 218, - 146, - 128, - 16, - 55, - 168, - 167, - 6, - 166, - 237, - 193, - 226, - 148, - 17, - 233, - 64, - 8, - 205, - 131, - 210, - 147, - 118, - 123, - 83, - 138, - 228, - 83, - 72, - 24, - 160, - 5, - 7, - 214, - 157, - 81, - 169, - 29, - 233, - 192, - 250, - 80, - 3, - 179, - 158, - 180, - 194, - 15, - 97, - 79, - 200, - 164, - 39, - 20, - 0, - 131, - 36, - 115, - 70, - 7, - 90, - 51, - 158, - 244, - 184, - 199, - 106, - 0, - 51, - 138, - 67, - 150, - 233, - 70, - 239, - 106, - 105, - 7, - 168, - 20, - 0, - 5, - 199, - 45, - 74, - 72, - 199, - 2, - 128, - 71, - 113, - 77, - 125, - 189, - 69, - 0, - 33, - 207, - 96, - 105, - 64, - 7, - 239, - 102, - 132, - 99, - 211, - 154, - 115, - 12, - 142, - 180, - 0, - 222, - 159, - 116, - 211, - 75, - 147, - 214, - 151, - 36, - 119, - 163, - 37, - 190, - 148, - 0, - 4, - 98, - 115, - 144, - 104, - 108, - 40, - 232, - 41, - 174, - 219, - 71, - 21, - 17, - 144, - 55, - 20, - 0, - 210, - 220, - 159, - 74, - 24, - 241, - 72, - 105, - 9, - 226, - 128, - 17, - 121, - 228, - 208, - 79, - 52, - 40, - 61, - 168, - 97, - 206, - 104, - 0, - 25, - 52, - 16, - 41, - 115, - 73, - 64, - 12, - 39, - 154, - 90, - 24, - 142, - 180, - 42, - 22, - 228, - 130, - 22, - 144, - 0, - 28, - 140, - 12, - 158, - 213, - 40, - 89, - 31, - 151, - 4, - 1, - 78, - 64, - 131, - 238, - 228, - 147, - 74, - 219, - 255, - 0, - 139, - 129, - 76, - 0, - 108, - 78, - 17, - 126, - 106, - 142, - 120, - 206, - 222, - 88, - 28, - 212, - 129, - 129, - 251, - 184, - 30, - 244, - 215, - 140, - 128, - 73, - 108, - 154, - 0, - 172, - 41, - 15, - 52, - 234, - 105, - 164, - 48, - 206, - 41, - 203, - 43, - 1, - 142, - 212, - 218, - 105, - 52, - 1, - 97, - 89, - 113, - 194, - 130, - 105, - 74, - 56, - 249, - 159, - 110, - 61, - 51, - 85, - 178, - 71, - 74, - 145, - 102, - 61, - 232, - 17, - 38, - 246, - 147, - 42, - 8, - 69, - 20, - 155, - 136, - 27, - 83, - 167, - 174, - 41, - 143, - 41, - 106, - 67, - 41, - 198, - 40, - 24, - 230, - 217, - 23, - 59, - 137, - 53, - 11, - 185, - 115, - 150, - 164, - 235, - 214, - 146, - 128, - 3, - 73, - 75, - 73, - 76, - 9, - 16, - 113, - 156, - 243, - 216, - 83, - 200, - 206, - 50, - 126, - 99, - 250, - 83, - 19, - 166, - 59, - 154, - 147, - 27, - 125, - 253, - 232, - 17, - 28, - 170, - 87, - 169, - 207, - 189, - 69, - 82, - 200, - 114, - 189, - 120, - 168, - 141, - 3, - 18, - 140, - 226, - 133, - 86, - 115, - 133, - 31, - 141, - 92, - 130, - 203, - 39, - 47, - 201, - 161, - 33, - 92, - 173, - 28, - 79, - 39, - 65, - 129, - 87, - 173, - 236, - 130, - 224, - 183, - 90, - 181, - 28, - 33, - 71, - 2, - 165, - 11, - 79, - 68, - 0, - 255, - 217 - ]); + var listData = Uint8List(0).obs; //得到的视频流字节数据 }