1. 关于 一个基于 SeetaFace6 的 .NET 人脸识别解决方案 本项目受到了 SeetaFaceEngine.Net 的启发 开源、免费、跨平台 (win/linux) 2. 快速开始 2.1 受支持的 .NET 框架 和 操作系统 目标框架 最低版本 操作系统 .NET Framework 4.0 win ( x64/x86 ) .NET Standard 2.0 win ( x64/x86 ) .NET / .NET Core 3.1、5.0、6.0、7.0 win ( x64/x86 )、linux ( arm/arm64/x64 ) 2.2 简单的人脸信息检测 以 Windows x64平台 为例,一个简单的人脸检测Demo。 使用 nuget 安装依赖 包名称 最小版本 生成文件夹 说明 ViewFaceCore —— ViewFaceCore .NET 核心库 ViewFaceCore.all_models viewfacecore\models 人脸检测的模型支持(图省事可以直接安装这个) ViewFaceCore.runtime.win.x64 vi
2026-05-30 09:35:51 298.92MB
1
淘宝IP地址库与API服务详解 一、淘宝IP地址库简介 淘宝IP地址库是阿里巴巴集团为满足广大开发者对IP地址解析的需求而推出的在线服务。它不仅提供了丰富的IP地址信息查询功能,还支持高精度的地理位置定位,以及运营商信息识别等服务。此服务通过API接口的形式对外开放,使得开发者可以轻松地在自己的应用中集成并使用。 二、服务功能详解 1. **IP地址基本信息查询** - 通过输入目标IP地址,开发者可以获得该IP地址所在国家、地区、城市、县区以及互联网服务提供商(ISP)等详细信息。 - 淘宝IP地址库能够提供全球范围内的IP地址解析,覆盖范围广泛,数据准确度高。 2. **地理位置定位** - 提供精确到市一级的地理位置定位,对于中国境内的IP地址,定位精度可达99.8%,国际IP地址定位精度达到96.8%。 - 地理位置信息包括国家、省份、城市、县区等多层次的地理信息,满足不同场景下的需求。 3. **运营商信息识别** - 能够识别出IP地址所归属的互联网服务提供商(ISP),这对于网络监控、流量分析等领域具有重要意义。 - 支持识别多种类型的ISP,包括但不限于电信、移动、联通等主流运营商。 三、API调用方式 1. **HTTP GET请求** - 开发者可以通过发送HTTP GET请求至指定URL来调用API服务,URL格式为:`http://ip.taobao.com/service/getIpInfo.php?ip=[目标IP地址]`。 - 将目标IP地址替换为实际需要查询的IP地址即可。 2. **响应数据格式** - API返回的数据采用JSON格式,便于程序解析处理。 - 响应数据包含一个状态码`code`,当`code`值为0时,表示查询成功;若为1,则表示查询失败。 四、响应数据结构示例 ```json { "code": 0, "data": { "ip": "210.75.225.254", "country": "中国", "area": "华北", "region": "北京市", "city": "北京市", "county": "", "isp": "电信", "country_id": "86", "area_id": "100000", "region_id": "110000", "city_id": "110000", "county_id": "-1", "isp_id": "100017" } } ``` - `code`字段用于表示查询结果的状态,0代表成功,1代表失败。 - `data`字段包含了查询结果的具体信息,如IP地址、国家、地区、城市、ISP等。 五、使用场景 1. **网络安全** - 可以用于检测和防御来自特定地理位置或ISP的攻击行为。 - 通过分析IP地址信息,可以帮助企业构建更精准的安全策略。 2. **用户行为分析** - 在电商、社交、广告等行业中,通过分析用户的IP地址,可以获取其大致地理位置,进而进行个性化推荐或定向广告投放。 - 例如,根据用户所在的地理位置推送当地热门商品或活动信息。 3. **数据统计与分析** - 对于大型网站或应用而言,分析用户访问来源的IP地址,可以了解用户分布情况,优化服务器资源分配。 - 同时,基于IP地址的统计分析有助于发现潜在的市场机会或风险。 六、总结 淘宝IP地址库及其API服务,为开发者提供了强大的IP地址解析能力,无论是在网络安全防护、用户行为分析,还是数据统计与分析等方面,都有着广泛的应用前景。通过简单的API调用,即可获取详尽的IP地址相关信息,极大地简化了开发流程,提高了工作效率。对于需要处理大量网络数据的项目来说,淘宝IP地址库无疑是一个值得信赖的选择。
2026-05-30 08:43:40 985B IP IP地址库
1
SQL SERVER数据库MDF文件页查看器是一款专门设计用于查看SQL Server数据库主数据文件(MDF)内容的工具。MDF文件是SQL Server数据库的核心组成部分,它存储了数据库的表、索引、视图等对象的实际数据和元数据。在深入讨论这款查看器之前,我们先了解一下SQL Server数据库的基本结构。 SQL Server数据库由多个文件组成,主要包括MDF(主数据文件)和NDF(辅助数据文件),以及LDF(日志文件)。MDF文件是每个数据库的主文件,其中包含了数据库的系统信息、数据库对象(如表、索引)以及用户数据。当数据库服务运行时,这些文件是受保护的,无法直接通过常规方式访问或编辑。 SQL SERVER数据库MDF文件页查看器允许用户在SQL Server服务停止的情况下查看MDF文件的内部结构。这在某些情况下非常有用,例如进行数据恢复、分析或调试工作。通常,直接操作MDF文件是不推荐的,因为这可能会破坏数据库的完整性,但这个工具提供了一个安全的环境来检查文件内容。 该程序可能包含以下功能: 1. **页查看**:用户可以查看MDF文件中的数据页和元数据页,了解数据如何在物理层面上存储。数据页包含实际的行数据,而元数据页则包含关于表结构、索引和其他数据库对象的信息。 2. **页解析**:程序可能有内置的解析机制,能够解释和呈现页中的二进制数据,将其转换为可读的格式,如列名、行数据和数据类型。 3. **搜索功能**:用户可能能够搜索特定的记录或者值,这对于查找特定信息或者验证数据状态非常有用。 4. **导出功能**:如果需要,用户可能能够将查看到的数据导出到CSV或其他格式,以便进一步分析或备份。 5. **安全警告**:由于直接操作MDF文件可能对数据库造成损害,该工具可能包含明显的警告提示,强调在使用前需要停止SQL Server服务。 使用MDF文件查看器需要注意的是,虽然它可以提供数据库内部的洞察,但它并不适用于常规的数据库管理和操作。数据库的维护和修复应始终依赖于SQL Server提供的正常管理工具和过程,如备份、还原和事务日志处理。 SQL SERVER数据库MDF文件页查看器是一个专业的技术工具,主要针对数据库管理员、开发人员和IT专业人士,他们在排查问题、分析数据或进行数据恢复时,需要深入了解数据库的底层结构。使用这款工具需要具备一定的SQL Server知识,以确保正确且安全地操作数据库文件。
2026-05-29 23:47:02 200KB
1
全国手机号码段归属地数据库包含了中国移动、中国联通以及中国电信三大运营商的大量手机号码归属地信息,总计360570条记录。这个数据库对于各种业务分析、市场研究、客户服务优化等场景具有重要的实用价值。例如,企业可以通过这些数据了解客户的大致分布区域,从而进行精准营销;又如,网络安全机构可以利用它来识别潜在的欺诈电话。 数据库中的"移动号段"指的是中国移动通信集团的手机号码段,中国移动是中国最大的移动通信运营商,拥有众多的号段,包括但不限于139、138、137等传统号段以及147这样的新号段。这些号段的分配通常基于不同地区的用户需求和网络覆盖情况。 "联通号段"则指的是中国联通公司的手机号码范围,中国联通在竞争激烈的市场中提供了多样化的服务,包括4G、3G和2G网络,其号段如130、131、145等。中国联通近年来还推出了170号段,这是针对虚拟运营商开放的号段,允许其他非基础电信运营商通过租用联通的网络设施提供通信服务。 "电信号段"涵盖了中国电信的手机号码,中国电信作为中国主要的固定电话和宽带互联网服务提供商,也在移动通信领域有显著影响力,其号段如133、153、189等。中国电信在网络质量和覆盖范围上有着显著优势,尤其是在农村地区。 201704.sql文件很可能是一个SQL数据库文件,其中存储了这些手机号码段的详细信息,包括但不限于号段起始号码、结束号码、所属省份、城市、区县、运营商类型等字段。使用SQL语言,我们可以查询和分析这些数据,例如找出某个特定地区的用户数量、统计各运营商的市场份额,甚至分析号段的使用趋势。 在处理这类数据时,需要注意保护个人隐私,因为手机号码可以关联到具体的个人。根据中国的《个人信息保护法》,未经用户同意,不得泄露或滥用其个人信息。因此,在使用该数据库时,必须遵守相关法律法规,确保数据安全和合规使用。同时,由于手机号码归属地可能会随着时间变化而更新,所以这类数据库需要定期更新以保持准确性。
2026-05-29 22:57:29 2.71MB
1
在PHP中,将Excel文件的内容导入到数据库是一个常见的任务,特别是在数据处理和分析场景下。这篇博客“php上传excel并将excel中的内容插入到数据库中”提供了实现这一功能的方法。这里我们将详细探讨涉及的关键知识点。 我们需要一个可以读取Excel文件的PHP库。在给定的`excel_reader2.php`文件中,很可能使用的是PHP的旧版Excel reader库,如PHPExcel或新版本的phpspreadsheet。这些库允许开发者处理多种格式的Excel文件,包括.xls和.xlsx。 1. **PHPExcel/PHPSpreadsheet**: 这是两个非常流行的PHP库,用于读取、写入和操作Excel文件。PHPSpreadsheet是PHPExcel的升级版,提供了更多的功能和更好的性能。它们支持多种工作表格式,包括Excel2007 (.xlsx)、Excel5 (.xls) 和 CSV 等。 2. **文件上传**:在PHP中,文件上传通常使用`$_FILES`全局变量来处理。用户上传Excel文件后,需要确保文件是安全的(例如,检查文件类型和大小),然后将其保存到服务器的一个特定目录。 3. **读取Excel文件**:使用PHPExcel或PHPSpreadsheet库读取上传的Excel文件。创建一个类实例,加载文件,然后遍历每个工作表和单元格以获取数据。 4. **数据验证**:在将Excel数据插入数据库之前,应进行数据验证。这可能包括检查数据类型、格式和完整性,确保数据符合数据库表结构的要求。 5. **数据库连接**:使用PHP的PDO (PHP Data Objects) 或MySQLi扩展建立与数据库的连接。设置合适的数据库连接参数,如主机名、用户名、密码和数据库名称。 6. **SQL语句**:根据Excel中的数据构造SQL INSERT语句。如果数据量很大,可以考虑使用批量插入以提高性能。 7. **插入数据**:循环遍历读取到的Excel数据,用每行数据替换INSERT语句中的占位符,然后执行SQL语句将数据插入到对应的数据库表中。 8. **错误处理**:在整个过程中,必须捕获并处理可能出现的任何错误,例如文件上传失败、文件格式不正确、数据库连接问题或SQL执行错误。 9. **事务处理**:为了保持数据的一致性,尤其是在处理大量数据时,可以使用数据库事务。如果在插入过程中出现错误,事务可以回滚,防止部分数据被不完整地插入。 10. **性能优化**:如果Excel文件非常大,可以考虑先将数据存储在内存或临时文件中,然后再分批插入数据库,以减轻数据库的压力。 总结起来,这个过程涉及了文件上传、Excel文件处理、数据库交互等多个环节,需要对PHP、文件I/O、数据库操作和数据处理有深入理解。在实际应用中,还应考虑代码的可维护性和安全性,比如使用预编译的SQL语句防止SQL注入攻击。
2026-05-29 21:31:31 14KB 源码
1
在数据库表丢失或损坏的情况下,备份你的数据库是很重要的。如果发生系统崩溃,你肯定想能够将你的表尽可能丢失最少的数据恢复到崩溃发生时的状态。有时,正是MySQL管理员造成破坏。管理员已经知道表以破坏,用诸如vi或Emacs等编辑器试 图直接编辑它们。备份数据库两个主要方法是用mysqldump程序或直接拷贝数据库文件(如用cp、cpio或tar等)。每种方法都有其优缺点。本文将为大家介绍MySQL数据库备份的简单知识。 MySQL数据库备份是保护数据安全的重要步骤,特别是在面临数据丢失或系统崩溃时,备份能帮助恢复到最近的状态。本文主要讨论两种常见的MySQL备份方法:使用mysqldump程序和直接复制数据库文件。 mysqldump是MySQL自带的一个实用工具,它与MySQL服务器交互,生成可移植的文本文件,包含了创建数据库、表以及插入数据的SQL语句。这种备份方式虽然较慢,但优点在于备份文件可以在不同的硬件结构上恢复,只要目标机器运行的是相同或兼容版本的MySQL。此外,mysqldump的输出还可以用于在其他服务器上重建数据库,便于数据迁移。 直接复制数据库文件,如使用cp、cpio或tar命令,是一种快速备份的方法,但需确保在备份期间没有数据写入,否则会导致备份文件不一致。对于MyISAM存储引擎的表,直接复制是可行的,但旧版本的MyISAM表不支持跨平台迁移,而在MySQL 3.23及以后版本,MyISAM格式变为机器无关,允许在不同硬件结构之间复制。 在实施备份时,遵循一些最佳实践至关重要: 1. 定期备份:制定备份计划并严格执行,以减少数据丢失的风险。 2. 开启数据库的二进制日志:二进制日志记录所有更改,有助于在恢复后应用后续更新,从而达到崩溃前的状态。 3. 统一命名备份文件:使用有意义的命名规则,如包含数据库名和日期,以便于管理和恢复。 4. 压缩备份文件:节省存储空间,同时考虑设置备份文件的过期策略。 5. 文件系统备份:为备份文件做额外的文件系统备份,防止主磁盘故障导致双重损失。 6. 存储位置:将备份文件存放在与数据库文件系统不同的地方,减少因备份导致的存储压力。 在恢复过程中,确保遵循正确的顺序,先用备份文件恢复基础数据,然后应用二进制日志中的更改。这需要熟悉如何使用mysql命令行工具来导入mysqldump生成的SQL文件,以及如何处理和应用二进制日志。 总结来说,MySQL数据库备份是多方面的,涉及选择合适的备份策略、理解不同备份方法的优缺点,以及在恢复过程中的最佳实践。无论选择哪种方式,定期备份、日志记录和妥善存储备份文件都是确保数据安全的关键步骤。
2026-05-29 20:29:55 49KB
1
"MySQL数据库中部分数据损坏恢复过程" MySQL数据库中部分数据损坏恢复过程是一个复杂的过程,需要对MySQL数据库的结构和工作原理有深入的了解。本文将介绍MySQL数据库中部分数据损坏恢复过程的环境、步骤和注意事项。 环境: * 操作系统:Windows2003 * 数据库管理系统:MySQL 损坏数据文件名:function_products MySQL数据库的文件结构: * 每一个数据库对应一个子目录 * 每个子目录中包含了对应于这个数据库中的数据表的文件 * 每一个数据表对应三个文件,它们和表名相同,但是具有不同的扩展名 + tblname.frm 文件是表的定义,它保存了表中包含的数据列的内容和类型 + tblname.myd 文件包含了表中的数据 + tblname.myi 文件包含了表的索引(例如,它可能包含lookup表以帮助提高对表的主键列的查询) 恢复过程: 1. 需要关闭MySQL服务,以避免myisamchk工具与MySQL服务之间的冲突 2. 使用myisamchk工具检查和修复损坏的数据文件 * myisamchk工具可以检查和修复表的错误 * 可以使用通配符来检查所有表或所有数据库中的所有表 * 可以使用--extend-check选项来执行更彻底的检查 3. 使用myisamchk工具检查损坏的数据文件 * myisamchk工具可以检查表文件的错误 * 可以使用myisamchk工具来检查表的索引文件 4. 修复损坏的数据文件 * 可以使用myisamchk工具来修复损坏的表文件 * 需要在修复之前制作备份,以避免数据文件的丢失 注意事项: * 在使用myisamchk工具之前,需要关闭MySQL服务,以避免冲突 * 在修复损坏的数据文件之前,需要制作备份,以避免数据文件的丢失 * myisamchk工具的修复选项虽然通常是安全的,但是它对数据文件的更改是无法撤消的 * 需要在使用myisamchk工具之前,了解MySQL数据库的结构和工作原理 MySQL数据库中部分数据损坏恢复过程是一个复杂的过程,需要对MySQL数据库的结构和工作原理有深入的了解,并需要遵守一定的注意事项,以避免数据文件的丢失和冲突。
2026-05-29 19:46:00 55KB
1
随着数字时代的到来,信息技术已经渗透到我们生活的方方面面。尤其是在教育领域,数字化管理工具的应用变得越来越普遍。其中一个非常实用的例子就是自习室座位预约系统的开发。本系统采用了流行的SpringBoot框架结合MySQL数据库,以及Vue前端技术,形成了一个功能完备的座位预约平台。通过这个系统,学生可以非常方便地在线预约或取消自习室座位,大大提高了自习室座位的使用效率,同时降低了传统管理方式中可能出现的混乱和不公平现象。 在技术实现上,SpringBoot框架以其轻量级、易部署的优势成为了很多后端开发者的首选。它简化了基于Spring的应用开发过程,能快速创建独立的、生产级别的Spring基础的应用。MySQL作为一个开源的关系型数据库管理系统,被广泛使用,其稳定性和高性能为本系统的数据存储提供了可靠的保障。Vue.js则是一个构建用户界面的渐进式框架,它易于上手且高效,特别适合构建单页应用程序(SPA),使得系统的前端界面响应迅速、交互友好。 开发一套自习室座位预约系统不仅仅是一个技术挑战,也是一个涉及管理理念、用户体验和数据安全的综合问题。系统需要有一个直观易用的用户界面,让用户可以快速上手预约或取消操作。系统后端需要处理高并发的预约请求,并确保数据的一致性和准确性,这涉及到数据库事务和并发控制等高级技术。此外,系统的安全性也不容忽视,需要采取措施保护用户数据不被未授权访问或篡改。 本套项目文件中除了包含了完整的系统源代码,还包括了毕业论文和开题报告,这些都是系统开发过程中形成的文档资料。毕业论文通常会详细介绍系统设计的理念、技术选型的理由、系统架构的组成、关键技术的实现方法以及项目的测试情况。开题报告则记录了项目的初期构思、需求分析、可行性研究等。这些文档对于理解系统开发的全过程至关重要,也对后来者具有很好的参考价值。 至于答辩PPT,则是项目完成后的成果展示。它通常包括项目的背景、目标、实现功能、技术路线、测试结果以及实际运行情况等。通过精心制作的PPT,可以让答辩评审更直观地了解项目的精华所在。 这个自习室座位预约系统是一个集成了前端、后端以及数据库技术的综合性项目,它不仅仅是一个技术实现,更是一个面向实际问题提供解决方案的案例。通过这个系统的设计与实现,可以体会到软件工程中系统分析、设计、编码、测试和部署的各个环节,对于学生来说,是一个很好的实践机会,能够将理论知识与实际问题相结合,为未来的专业工作打下坚实的基础。
2026-05-29 15:16:41 14.83MB java
1
在现代物流配送体系中,多仓库机器人送货系统扮演着重要角色。随着电商行业的迅速成长与物流自动化技术的提升,对于多仓库环境下的机器人送货路径规划提出了更高的要求。研究指出,合理规划机器人的送货路径可以有效提高物流配送效率、减少运营成本、增加客户满意度。然而,多仓库环境下的路径规划面临仓库布局复杂、订单任务多样化、障碍物动态变化等诸多挑战,传统路径规划方法很难满足实际需求。 针对这一挑战,本论文提出了一种基于A_Star算法和灰狼算法GWO的融合策略,用于求解多仓库机器人送货路径规划问题。A_Star算法是一种启发式搜索算法,具有高搜索效率和快速找到局部最优解的特点,而灰狼算法GWO模拟狼群狩猎行为,在全局寻优方面表现突出。通过将A_Star算法的启发式搜索特性与GWO算法的全局寻优能力相结合,构建的融合算法旨在解决多仓库机器人送货路径规划中的复杂问题,提供一个高效的路径规划解决方案。 论文中详细分析了A_Star算法与GWO算法的原理及优缺点,并设计了相应的融合策略。在此基础上,构建了一个包含多仓库、多机器人、多订单的路径规划模型,并考虑了仓库布局、障碍物分布、机器人容量等约束条件。仿真实验显示,这种融合算法在路径规划效率、路径长度优化及全局寻优能力方面均优于传统A_Star算法、GWO算法以及其他路径规划算法,为多仓库机器人送货系统的路径规划提供了新的研究方向和实践工具。 该研究内容包括分析A_Star算法和GWO算法的原理及优缺点,设计融合策略,构建多仓库机器人送货路径规划模型,以及通过仿真实验验证融合算法的有效性。研究方法上采用了理论分析与仿真实验相结合的手段,运用算法原理推导和数学建模方法构建规划模型,并利用MATLAB等软件进行算法实现和仿真实验。 本论文的研究填补了现有研究中关于A_Star算法与GWO算法融合应用于多仓库机器人送货路径规划的空白,并为物流自动化领域提供了新的思路。在实际应用中,这种融合策略有望帮助相关企业实现更加高效和智能的物流配送过程。 此外,论文作者还提供了完整的Matlab代码及仿真咨询内容,以帮助读者更好地理解和复现实验过程。作者的个人信条“格物致知”不仅体现在研究态度上,也通过开放性的分享传递给每一个对科研和仿真感兴趣的人。通过关注个人主页,读者可以获取更多Matlab科研工作室提供的科研仿真资料和电子书,为科研梦想提供有力支持。 本论文提出的基于A_Star融合灰狼算法GWO的多仓库机器人送货路径规划方法,为处理复杂的多仓库环境下的路径规划问题提供了有效工具,具有重要的理论价值和实际应用潜力。通过理论与实践相结合的研究方法,不仅为物流自动化领域贡献了新的研究成果,也为其他相关领域的路径规划问题提供了借鉴和参考。
2026-05-29 10:18:04 336KB
1
Unity3D是一款强大的跨平台游戏开发引擎,广泛应用于2D和3D游戏、虚拟现实(VR)、增强现实(AR)以及互动体验等项目。在Unity3D中,汉字字库是至关重要的,特别是对于面向中国市场或者有中文内容的游戏和应用。"Unity3D常用3500汉字字库"是一个专门为Unity3D准备的资源,包含了最常见的3500个汉字,这些汉字覆盖了日常生活中99%以上的汉字使用频率。 1. **汉字字库的必要性**:在Unity3D中,如果没有合适的汉字字库,中文字符可能无法正确显示,导致游戏或应用的用户体验大打折扣。这个字库确保了在各种设备和操作系统上都能正确渲染中文文字。 2. **3500汉字的覆盖率**:中国的教育系统中,基础教育阶段要求学生掌握的汉字数量就是3500个。因此,这个字库几乎涵盖了所有常见的汉字,能满足大多数中文文本的显示需求。 3. **3500.txt**:这个文本文件很可能包含的是3500个汉字的列表,每个汉字以Unicode编码形式表示,可以用于验证字库是否完整,或者作为编程时的参考。 4. **3500.unitypackage**:这是Unity3D的资源包文件,用于导入到Unity编辑器中。它可能包含了一个预处理好的字体资源,可以直接在游戏中使用,确保所有的3500个汉字都能正确显示。 5. **使用方法**:将`3500.unitypackage`导入到Unity工程中,通常会自动添加到项目的Assets目录下。然后可以在UI系统中选择这个字体,设置Text组件的Font属性,确保文本对象能使用这个字库来显示汉字。 6. **字体优化**:为了提高性能,开发者可能会对字库进行进一步的优化,例如只加载游戏中实际使用的汉字,减少内存占用。此外,还可以调整字体大小、样式和颜色,以匹配游戏的整体视觉风格。 7. **跨平台兼容**:Unity3D支持多种平台,如iOS、Android、Windows、Mac等。在不同平台上,汉字的显示可能会有所不同,因此测试和优化字库在各个平台上的表现是必要的。 8. **Unicode支持**:由于Unity3D使用Unicode编码,所以这个字库中的每个汉字都是以Unicode码点表示的,确保了在各种语言环境下的通用性。 9. **本地化与国际化**:虽然这个字库主要针对中文,但考虑到游戏可能需要支持多语言,开发者还需要考虑其他语言的字库和排版规则,以实现完善的本地化功能。 10. **性能考虑**:在大型项目中,大型字体文件可能会影响加载时间和运行时性能。通过使用字节流加载技术或者动态加载汉字,可以有效地解决这个问题。 "Unity3D常用3500汉字字库"为开发者提供了一种便捷的方式,确保他们的项目能够正确地显示中文,提高了中国市场的适用性和用户体验。同时,这也展示了Unity3D在处理多语言内容方面的灵活性和强大能力。
2026-05-28 22:07:18 6.8MB
1