20231114在HP笔记本的ubuntu20.04系统下向RealmeQ手机发送PDF文件
20231114在HP笔记本的ubuntu20.04系统下向RealmeQ手机发送PDF文件
2023/11/14 14:11
手机:Realme Q
笔记本电脑:HP
https://item.jd.com/100012583174.html
惠普(HP)战66 三代AMD版 14英寸轻薄笔记本电脑(锐龙7nm 六核 R5-4500U 8G 256G 一年上门+意外 2年电池)



百度:ubuntu BT蓝牙扫描 传输
https://download.csdn.net/blog/column/10505902/125683989
Ubuntu蓝牙Bluetooth命令行连接发送文件完整流程


1.确保bluez已安装好
$sudo apt install bluez
2.查看当前蓝牙阻塞状态
$sudo rfkill list
如果上面阻塞状态为yes,表示蓝牙关闭,则需要unblock打开蓝牙:
$sudo rfkill unblock bluetooth


3.执行bluetoothctl
$bluetoothctl
4.扫描其他蓝牙设备
$scan on
5.配对指定的蓝牙设备
$pair AA:AA:xxxxxx
$trust dev_address
pair 58:85:e9:2e:52:2a
trust 58:85:e9:2e:52:2a
connect 58:85:e9:2e:52:2a




6.如果没有安装bluez-tools则需要安装
$sudo apt install bluez-tools
使用bt-obex发送文件:
$bt-obex -p [remote_mac] [file]
譬如:
$bt-obex -p F0:6B:CA:A2:C4:69 ~/xxx.pdf
bt-obex -p 58:85:e9:2e:52:2a ~/readme.pdf
命令行监听接收则可以先执行命令:
$bt-obex -s [path]
譬如:
$bt-obex -s ~/Downloads


RealmeQ手机相关截图:









参考资料:
百度:bluetoothctl connect pair
https://blog.csdn.net/qq_28877125/article/details/134130625
【RP-RV1126】配置一套简单的板级配置
https://www.python100.com/html/82170.html
Bluetoothctl全解析
rootroot@rootroot-HP-ZHAN-66-Pro-A-14-G3:~$
rootroot@rootroot-HP-ZHAN-66-Pro-A-14-G3:~$
rootroot@rootroot-HP-ZHAN-66-Pro-A-14-G3:~$ uname -r
5.15.0-88-generic
rootroot@rootroot-HP-ZHAN-66-Pro-A-14-G3:~$
rootroot@rootroot-HP-ZHAN-66-Pro-A-14-G3:~$
rootroot@rootroot-HP-ZHAN-66-Pro-A-14-G3:~$ sudo apt install bluez
[sudo] password for rootroot:
Reading package lists... Done
Building dependency tree
Reading state information... Done
bluez is already the newest version (5.53-0ubuntu3.6).
bluez set to manually installed.
0 upgraded, 0 newly installed, 0 to remove and 102 not upgraded.
rootroot@rootroot-HP-ZHAN-66-Pro-A-14-G3:~$
rootroot@rootroot-HP-ZHAN-66-Pro-A-14-G3:~$
rootroot@rootroot-HP-ZHAN-66-Pro-A-14-G3:~$ sudo rfkill list
0: hci0: Bluetooth
Soft blocked: no
Hard blocked: no
1: phy0: Wireless LAN
Soft blocked: no
Hard blocked: no
rootroot@rootroot-HP-ZHAN-66-Pro-A-14-G3:~$
rootroot@rootroot-HP-ZHAN-66-Pro-A-14-G3:~$ bluetoothctl
Agent registered
[CHG] Device 48:B8:A6:3A:04:6D RSSI: -73
[CHG] Device 43:4C:5D:C5:0B:1F RSSI: -82
[CHG] Device 4C:E1:73:B8:8C:0F RSSI: -97
[CHG] Device 49:3C:99:18:0A:1B RSSI: -83
[CHG] Device 53:98:AF:96:B5:34 RSSI: -92
[CHG] Device 45:C9:70:CD:02:20 RSSI: -85
[CHG] Device 59:B2:26:FF:62:53 RSSI: -57
[CHG] Device 65:8F:BE:BC:26:29 RSSI: -89
[CHG] Device 98:DA:B0:07:6D:32 RSSI: -77
[NEW] Device 4E:EE:7C:E2:63:5D 4E-EE-7C-E2-63-5D
[CHG] Device 45:C9:70:CD:02:20 RSSI: -85
[CHG] Device 7A:1B:5D:D7:A2:FB RSSI: -87
[CHG] Device 52:BC:9A:84:72:0E RSSI: -93
[CHG] Device 53:98:AF:96:B5:34 RSSI: -90
[CHG] Device 49:3C:99:18:0A:1B RSSI: -88
[CHG] Device 54:28:76:FE:F0:88 RSSI: -86
[NEW] Device 6D:BB:E1:6C:93:CB 6D-BB-E1-6C-93-CB
[CHG] Device DC:F0:90:3F:BC:78 RSSI: -71
[CHG] Device 52:89:F4:C9:74:A7 RSSI: -74
[CHG] Device 52:89:F4:C9:74:A7 ManufacturerData Key: 0x004c
[CHG] Device 52:89:F4:C9:74:A7 ManufacturerData Value:
01 00 00 00 00 00 40 00 00 00 00 00 00 00 00 00 ......@.........
00 .
[CHG] Device 7A:1B:5D:D7:A2:FB RSSI: -97
[CHG] Device 90:E4:68:E2:FE:43 RSSI: -59
[CHG] Device 61:22:DF:10:F5:72 RSSI: -82
[CHG] Device 65:8F:BE:BC:26:29 RSSI: -89
[CHG] Device 24:8D:0C:DE:34:AB RSSI: -99
[CHG] Device 47:18:94:BC:80:8F RSSI: -93
[CHG] Device 4C:E1:73:B8:8C:0F RSSI: -96
[CHG] Device 5F:C0:39:33:B1:99 RSSI: -93
[CHG] Device 98:DA:B0:07:6D:32 RSSI: -72
[CHG] Device 36:7E:54:84:FD:F5 RSSI: -63
[CHG] Device 52:BC:9A:84:72:0E RSSI: -91
[CHG] Device 36:7E:54:84:FD:F5 RSSI: -61
[CHG] Device 43:72:FC:CA:8F:37 RSSI: -93
[CHG] Device 52:BC:9A:84:72:0E RSSI: -89
[CHG] Device 52:89:F4:C9:74:A7 RSSI: -79
[CHG] Device 52:89:F4:C9:74:A7 ManufacturerData Key: 0x004c
[CHG] Device 52:89:F4:C9:74:A7 ManufacturerData Value:
01 00 00 00 00 00 40 00 00 00 00 00 00 00 00 00 ......@.........
00 .
[CHG] Device 56:E8:2E:9D:A3:52 RSSI: -62
[CHG] Device 04:7F:0E:4B:F7:F4 RSSI: -83
[CHG] Device 49:3C:99:18:0A:1B RSSI: -89
[bluetooth]# pair 58:85:e9:2e:52:2a
Attempting to pair with 58:85:E9:2E:52:2A
Failed to pair: org.bluez.Error.AlreadyExists
[CHG] Device 6A:9C:5C:AC:BE:C6 RSSI: -71
[CHG] Device 78:4F:5F:A4:D0:7D RSSI: -84
[CHG] Device C8:76:25:6F:1E:36 RSSI: -75
[CHG] Device 34:5B:B4:1C:4A:48 RSSI: -95
[CHG] Device 1D:8F:FD:E3:96:99 RSSI: -64
[bluetooth]# trust 58:85:e9:2e:52:2a
Changing 58:85:E9:2E:52:2A trust succeeded
[CHG] Device 4A:92:48:B6:27:1F RSSI: -61
[CHG] Device 98:DA:B0:07:6D:32 RSSI: -70
[CHG] Device 9C:77:01:D3:8F:F2 RSSI: -80
[CHG] Device 9C:97:89:80:29:C1 RSSI: -90
[NEW] Device 42:61:52:B5:27:10 42-61-52-B5-27-10
[CHG] Device 50:58:94:C2:95:42 RSSI: -97
[CHG] Device 5B:80:5F:E4:B5:01 RSSI: -63
[CHG] Device 41:12:BF:5A:CF:50 RSSI: -90
[CHG] Device 11:4F:6E:39:E3:BE RSSI: -66
[bluetooth]# connect 58:85:e9:2e:52:2a
Attempting to connect to 58:85:e9:2e:52:2a
[CHG] Device 23:46:31:3B:23:62 RSSI: -89
[CHG] Device 66:66:11:EE:D5:FB RSSI: -88
[CHG] Device 9C:97:89:80:29:C1 RSSI: -90
[CHG] Device 1D:8F:FD:E3:96:99 RSSI: -67
[CHG] Device 5A:52:DD:82:B0:3B RSSI: -79
[CHG] Device 41:12:BF:5A:CF:50 RSSI: -86
[CHG] Device 71:A2:CF:F1:C4:35 RSSI: -87
[CHG] Device 90:E4:68:E2:FE:43 RSSI: -57
[CHG] Device 9C:97:89:80:29:C1 RSSI: -93
[CHG] Device 41:12:BF:5A:CF:50 RSSI: -85
[CHG] Device 3D:B5:F6:A6:A1:44 RSSI: -76
[CHG] Device 3D:B5:F6:A6:A1:44 ManufacturerData Key: 0x004c
[CHG] Device 3D:B5:F6:A6:A1:44 ManufacturerData Value:
13 07 02 07 77 fa 26 70 6b ....w.&pk
[CHG] Device 90:E4:68:E2:FE:43 RSSI: -56
[CHG] Device 4A:92:48:B6:27:1F RSSI: -76
[CHG] Device 9C:97:89:80:29:C1 RSSI: -94
[CHG] Device 7F:F4:25:34:0C:F8 RSSI: -75
[CHG] Device 11:4F:6E:39:E3:BE RSSI: -71
[CHG] Device 67:46:4A:79:15:04 RSSI: -93
[CHG] Device 90:E4:68:E2:FE:43 RSSI: -56
[NEW] Device 71:B0:FA:94:A7:2A 71-B0-FA-94-A7-2A
[CHG] Device 48:8B:F9:30:5F:64 RSSI: -91
[CHG] Device 5B:80:5F:E4:B5:01 RSSI: -74
[CHG] Device 4A:92:48:B6:27:1F RSSI: -76
[CHG] Device 52:23:C7:0A:67:1E RSSI: -53
[CHG] Device 5A:52:DD:82:B0:3B RSSI: -76
[CHG] Device 67:46:4A:79:15:04 RSSI: -80
[CHG] Device 11:4F:6E:39:E3:BE RSSI: -66
[CHG] Device 3D:B5:F6:A6:A1:44 RSSI: -77
[CHG] Device 52:5D:B9:9D:B6:33 RSSI: -80
[CHG] Device 5E:2C:7B:1A:25:51 RSSI: -94
[CHG] Device 5B:80:5F:E4:B5:01 RSSI: -71
[CHG] Device 41:12:BF:5A:CF:50 RSSI: -82
[CHG] Device 64:1D:CD:1E:A4:12 RSSI: -67
[CHG] Device 24:01:0E:9B:AC:56 RSSI: -68
[CHG] Device 6A:15:10:B9:3D:87 RSSI: -72
[CHG] Device 4B:F3:ED:9B:02:46 RSSI: -78
[CHG] Device 6A:15:10:B9:3D:87 RSSI: -73
[CHG] Device 36:D5:15:8A:8C:57 RSSI: -95
[CHG] Device 90:E4:68:E2:FE:43 RSSI: -55
[CHG] Device 66:66:11:EE:D5:FB RSSI: -89
[CHG] Device 3D:B5:F6:A6:A1:44 RSSI: -72
[CHG] Device 23:46:31:3B:23:62 RSSI: -86
[CHG] Device 11:4F:6E:39:E3:BE RSSI: -66
[CHG] Device 24:01:0E:9B:AC:56 RSSI: -68
[CHG] Device 5B:2B:52:0A:A7:EA RSSI: -89
[CHG] Device 1D:8F:FD:E3:96:99 RSSI: -57
[CHG] Device 58:85:E9:2E:52:2A Connected: yes
[CHG] Device 7B:3C:96:A7:E7:3D RSSI: -75
[CHG] Device E8:D1:E2:C2:F9:7D RSSI: -96
[CHG] Device 64:1D:CD:1E:A4:12 RSSI: -75
[CHG] Device 23:46:31:3B:23:62 RSSI: -85
[CHG] Device 71:A2:CF:F1:C4:35 RSSI: -88
[CHG] Device 52:5D:B9:9D:B6:33 RSSI: -71
[CHG] Device 1D:8F:FD:E3:96:99 RSSI: -57
rootroot@rootroot-HP-ZHAN-66-Pro-A-14-G3:~$
rootroot@rootroot-HP-ZHAN-66-Pro-A-14-G3:~$ sudo apt install bluez-tools
[sudo] password for rootroot:
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
bluez-tools
0 upgraded, 1 newly installed, 0 to remove and 102 not upgraded.
Need to get 153 kB of archives.
After this operation, 1,048 kB of additional disk space will be used.
Get:1 http://mirrors.tuna.tsinghua.edu.cn/ubuntu focal/universe amd64 bluez-tools amd64 2.0~20170911.0.7cb788c-2build1 [153 kB]
Fetched 153 kB in 1s (104 kB/s)
Selecting previously unselected package bluez-tools.
(Reading database ... 213456 files and directories currently installed.)
Preparing to unpack .../bluez-tools_2.0~20170911.0.7cb788c-2build1_amd64.deb ...
Unpacking bluez-tools (2.0~20170911.0.7cb788c-2build1) ...
Setting up bluez-tools (2.0~20170911.0.7cb788c-2build1) ...
Processing triggers for man-db (2.9.1-1) ...
rootroot@rootroot-HP-ZHAN-66-Pro-A-14-G3:~$
rootroot@rootroot-HP-ZHAN-66-Pro-A-14-G3:~$ bt-obex -p 58:85:e9:2e:52:2a ~/readme.pdf
[Transfer#readme.pdf] Waiting...
[Transfer#readme.pdf] Progress: 100%
[Transfer#readme.pdf] Completed
(bt-obex:3062): GLib-CRITICAL **: 14:53:07.194: g_atomic_ref_count_dec: assertion 'g_atomic_int_get (arc) > 0' failed
rootroot@rootroot-HP-ZHAN-66-Pro-A-14-G3:~$
相关文章:
20231114在HP笔记本的ubuntu20.04系统下向RealmeQ手机发送PDF文件
20231114在HP笔记本的ubuntu20.04系统下向RealmeQ手机发送PDF文件 2023/11/14 14:11 手机:Realme Q 笔记本电脑:HP https://item.jd.com/100012583174.html 惠普(HP)战66 三代AMD版 14英寸轻薄笔记本电脑(锐龙7nm 六核…...
【0234】PgBackendStatus 记录当前postgres进程的活动状态
1. 关于PgBackendStatus 每个存活的后端进场在共享内存中维护一个PgBackendStatus结构体,显示其当前活动状态。(结构体是根据BackendId分配的,但这并不重要。) 请注意: 进场状态收集器进程不参与、甚至不访问这些结构。 每个辅助进程还在共享内存中维护一个PgBackendStatu…...
存钱虚拟计划,嘚
存钱计划—虚拟 2024年 (第一年) 1月 2月 3月 4月 5月 6 月 7月 8月 9月 10月 11月 12月 1w 1w 1w 1w 1w 1w 1w 1w 1w 1w 1w 1w 2025年(第二年) 1w1w*102.5% A 懒得写A代替 A A A A A A A A A A 2026年(第三年) (1w1w*10…...
基于IDEA进行Maven工程构建
Java全能学习面试指南:https://javaxiaobear.cn 1. 构建概念和构建过程 项目构建是指将源代码、依赖库和资源文件等转换成可执行或可部署的应用程序的过程,在这个过程中包括编译源代码、链接依赖库、打包和部署等多个步骤。 项目构建是软件开发过程中…...
Openssl X509 v3 AuthorityKeyIdentifier实验与逻辑分析
Openssl是X509的事实标准,目前主流OS或个别安全性要求较高的设计场景,对X509的证书链验证已经不在停留在只从数字签名校验了,也就是仅仅从公钥验签的角度,在这些场景中,往往还会校验AuthorityKeyIdentifier和SubjectKe…...
聊聊logback的MDCFilter
序 本文主要研究一下logback的MDCFilter MatchingFilter ch/qos/logback/classic/turbo/MatchingFilter.java public abstract class MatchingFilter extends TurboFilter {protected FilterReply onMatch FilterReply.NEUTRAL;protected FilterReply onMismatch FilterR…...
Windows10安装麒麟桌面V10双系统
概述 想要在Windows10操作系统中安装麒麟V10的桌面操作系统(Kylin-Desktop-V10-Professional-Release-Build1-210203-X86_64) 安装前准备 1、先搞清楚自己的电脑类型 A MBR传统bios单硬盘 B MBR 传统bios双硬盘(SSD固态硬盘机械硬盘&…...
file_put_contents锁的问题
记一次线上生产file_put_contents锁的问题 php项目,很多地方加了日志记录,方法为 function logstr($namelog,$str"",$type"Ymd"){$file date("$type")._.$name..log;$add __DIR__./../runtime/cuslog/.date("Ym&q…...
工作中积累的对K8s的就绪和存活探针的一些认识
首先,我的项目是基于 Spring Boot 2.3.5 的,并依赖 spring-boot-starter-actuator 提供的 endpoints 来实现就绪和存活探针,POM 文件如下图: 下面,再让我们来看下与该项目对应的Deployment的YAML文件,如下…...
什么是会话固定以及如何在 Node.js 中防止它
什么是会话固定以及如何在 Node.js 中防止它 在深入讨论之前,我们需要了解会话是什么以及会话身份验证如何工作。 什么是会话? 正如我们所知,HTTP 请求是无状态的,这意味着当我们发送登录请求时,并且我们有有效的用…...
代码随想录算法训练营第五十二天|300. 最长递增子序列、674. 最长连续递增序列、718. 最长重复子数组
第九章 动态规划part13 300. 最长递增子序列 给你一个整数数组 nums ,找到其中最长严格递增子序列的长度。 子序列 是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其余元素的顺序。例如,[3,6,2,7] 是数…...
使用 Hugging Face Transformer 微调 BERT
微调 BERT有助于将其语言理解能力扩展到更新的文本领域。BERT 的与众不同之处在于它能够掌握句子的上下文关系,理解每个单词相对于其邻居的含义。我们将使用 Hugging Face Transformers 训练 BERT,还将教 BERT 分析 Arxiv 的摘要并将其分类为 11 个类别之一。 为什么微调 BER…...
Vue原型对象
原型对象 prototype 称为:显示的原型属性,用法:函数.prototype,例如:Vue.prototype __proto__称为:隐式的原型属性,用户:实例.proto,例如:vm.proto 不管如何 …...
向量数据库的分类概况
保存和检索矢量数据的五种方法: 像 Pinecone 这样的纯矢量数据库 全文搜索数据库,例如 ElasticSearch 矢量库,如 Faiss、Annoy 和 Hnswlib 支持矢量的NoSQL 数据库,例如 MongoDB、Cosmos DB 和 Cassandra 支持矢量的SQL 数据库&am…...
工业镜头的类别
工业镜头的类别 按照等效焦距分为: 广角镜头 中焦距镜头 长焦距镜头 广角镜头 等效焦距小于标准镜头(等效焦距为50mm)的镜头。特点是最小工作距离短,景深大,视角大。常常表现为桶形畸变。 中焦距镜头 焦距介于广角镜…...
实验11 SQL互联网业务查询-2
这就是SQL题带给我的自信😕 可能发题解到博客上,主要是写完一遍实在不想看第二遍,太长了,优化都不想优化,看着头疼。 技术栈 – WhiteNights Site 一 USE mydata; #请在此处添加实现代码 ########## Begin #######…...
C++知识点梳理:C++ templates
c模板包括:类模板、类(非模板类和模板类)方法模板、函数模板、别名模板、变量模板。 类模板模板参数列表说明: 1)类定义 仅模板参数列表声明,template<>行。 类名后无需参数说明<>。 2…...
uniapp form表单提交事件手动调用
背景: UI把提交的按钮弄成了图片,之前的button不能用了。 <button form-type"submit">搜索</button> 实现: html: 通过 this.$refs.fd 获取到form的vue对象。手动调用里面的_onSubmit()方法。 methods:…...
Accelerate 0.24.0文档 三:超大模型推理(内存估算、Sharded checkpoints、bitsandbytes量化、分布式推理)
文章目录 一、内存估算1.1 Gradio Demos1.2 The Command 二、使用Accelerate加载超大模型2.1 模型加载的常规流程2.2 加载空模型2.3 分片检查点(Sharded checkpoints)2.4 示例:使用Accelerate推理GPT2-1.5B2.5 device_map 三、bitsandbytes量…...
HackTheBox-Starting Point--Tier 2---Markup
文章目录 一 Markup测试过程1.1 打点1.2 权限获取1.3 权限升级 二 题目 一 Markup测试过程 1.1 打点 1.端口扫描 nmap -A -Pn -sC 10.129.95.1922.访问web网站,登录口爆破发现存在弱口令admin:password 3.抓包,发现请求体是XML格式 4.尝试使…...
观成科技:隐蔽隧道工具Ligolo-ng加密流量分析
1.工具介绍 Ligolo-ng是一款由go编写的高效隧道工具,该工具基于TUN接口实现其功能,利用反向TCP/TLS连接建立一条隐蔽的通信信道,支持使用Let’s Encrypt自动生成证书。Ligolo-ng的通信隐蔽性体现在其支持多种连接方式,适应复杂网…...
FFmpeg 低延迟同屏方案
引言 在实时互动需求激增的当下,无论是在线教育中的师生同屏演示、远程办公的屏幕共享协作,还是游戏直播的画面实时传输,低延迟同屏已成为保障用户体验的核心指标。FFmpeg 作为一款功能强大的多媒体框架,凭借其灵活的编解码、数据…...
如何在看板中体现优先级变化
在看板中有效体现优先级变化的关键措施包括:采用颜色或标签标识优先级、设置任务排序规则、使用独立的优先级列或泳道、结合自动化规则同步优先级变化、建立定期的优先级审查流程。其中,设置任务排序规则尤其重要,因为它让看板视觉上直观地体…...
【位运算】消失的两个数字(hard)
消失的两个数字(hard) 题⽬描述:解法(位运算):Java 算法代码:更简便代码 题⽬链接:⾯试题 17.19. 消失的两个数字 题⽬描述: 给定⼀个数组,包含从 1 到 N 所有…...
多种风格导航菜单 HTML 实现(附源码)
下面我将为您展示 6 种不同风格的导航菜单实现,每种都包含完整 HTML、CSS 和 JavaScript 代码。 1. 简约水平导航栏 <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport&qu…...
MySQL用户和授权
开放MySQL白名单 可以通过iptables-save命令确认对应客户端ip是否可以访问MySQL服务: test: # iptables-save | grep 3306 -A mp_srv_whitelist -s 172.16.14.102/32 -p tcp -m tcp --dport 3306 -j ACCEPT -A mp_srv_whitelist -s 172.16.4.16/32 -p tcp -m tcp -…...
Linux 内存管理实战精讲:核心原理与面试常考点全解析
Linux 内存管理实战精讲:核心原理与面试常考点全解析 Linux 内核内存管理是系统设计中最复杂但也最核心的模块之一。它不仅支撑着虚拟内存机制、物理内存分配、进程隔离与资源复用,还直接决定系统运行的性能与稳定性。无论你是嵌入式开发者、内核调试工…...
LangFlow技术架构分析
🔧 LangFlow 的可视化技术栈 前端节点编辑器 底层框架:基于 (一个现代化的 React 节点绘图库) 功能: 拖拽式构建 LangGraph 状态机 实时连线定义节点依赖关系 可视化调试循环和分支逻辑 与 LangGraph 的深…...
系统掌握PyTorch:图解张量、Autograd、DataLoader、nn.Module与实战模型
本文较长,建议点赞收藏,以免遗失。更多AI大模型应用开发学习视频及资料,尽在聚客AI学院。 本文通过代码驱动的方式,系统讲解PyTorch核心概念和实战技巧,涵盖张量操作、自动微分、数据加载、模型构建和训练全流程&#…...
AxureRP-Pro-Beta-Setup_114413.exe (6.0.0.2887)
Name:3ddown Serial:FiCGEezgdGoYILo8U/2MFyCWj0jZoJc/sziRRj2/ENvtEq7w1RH97k5MWctqVHA 注册用户名:Axure 序列号:8t3Yk/zu4cX601/seX6wBZgYRVj/lkC2PICCdO4sFKCCLx8mcCnccoylVb40lP...
