- Android Camera Framework Stream(一)
miliang1688
androidstreamjni通讯servicejava
现在我们尝试从最开始的启动流程来熟悉androidcamera的整体framework流程:首先从上图的各个步骤来逐一分析流程,后续会根据具体的一些点进行内容的添加和扩充:?Camera.javapackages/apps/camera/src/com/android/最上层的应用就是从这个文件开始。该文件集中了整个android上层应用的所有相关内容,当然更多的则为界面的代码实现。如果出现了ca
- SVM模型实战1
浊酒南街
#支持向量机机器学习python
目录前言实战前言这里有一份手写体字母识别的数据,我们采用网格搜索法,分别测试LinearSVC和SVC模型,最终选择SVC模型,并计算预测结果的准确性。实战#导入第三方模块fromsklearnimportsvmimportpandasaspdfromsklearnimportmodel_selectionfromsklearnimportmetrics#读取外部数据letters=pd.read
- IOS越狱源集合(2024)
CIb0la
ios运维
常用源https://wwg135.github.iohttps://huayuarc.cn/https://cydia.akemi.ai/https://laileld.github.io/repohttps://themepro.yourepo.com/https://apt.geometricsoftware.se/https://repo.anthopak.devhttps://www.y
- springboot 根据UUID生成唯一的短链接
iteye_10392
网站设计springbootjavaspring
为了生成唯一的短链接,我们可以利用UUID(通用唯一识别码)来确保每个短链接的唯一性。然后,我们将这个UUID进行Base62编码以缩短其长度。以下是完整的SpringBoot应用程序示例,展示了如何实现这一功能。1.添加依赖首先,在你的pom.xml文件中添加必要的依赖项:org.springframework.bootspring-boot-starter-webcom.h2databaseh
- 如何优化爬虫以提高效率
数据小小爬虫
爬虫
在使用Python爬虫获取数据时,遵循一些最佳实践可以提高爬虫的效率和稳定性,同时避免潜在的法律和道德风险。以下是一些推荐的最佳实践:一、遵守robots.txt协议robots.txt文件是网站用来告诉爬虫哪些页面可以爬取,哪些不可以的规则文件。遵守robots.txt协议是爬虫的基本道德准则,可以避免对网站造成不必要的负担。二、使用合适的库和框架根据项目需求选择合适的爬虫库和框架。常用的库有r
- python超时退出进程_长时间运行进程的超时和Windows服务(Python)
拉菲雪球兔
python超时退出进程
将服务用作具有多个线程的控制器。一个线程(Main)应该同步和排队命令,并使用win32serviceframework进行通信、注册到系统等。另一个线程(Worker)应该等待来自队列的命令并执行它们。如果您将任意代码作为单独的进程执行,那么您可以从工作线程中派生这些代码,并在它们完成后简单地读回结果并进行清理。在这样,当一个stop到达时,您的主线程将把它注册到它队列中的worker,它将唤醒
- 微信小程序实现个人中心页面
浩宇软件开发
微信小程序开发入门微信小程序小程序
文章目录1.官方文档教程2.编写静态页面3.关于作者其它项目视频教程介绍1.官方文档教程https://developers.weixin.qq.com/miniprogram/dev/framework/2.编写静态页面mine.wxml布局文件wangwu这个家伙很懒,什么都没有留下~官方客服积分兑换帮助中心系统设置修改密码关于APP清理缓存用户条款隐私协议退出登录navigation-bar
- 使用jenkins启动SpringBoot报错
杭州·晨光
遇到的问题JavajenkinsspringbootJavaasyncTask
jenkins启动SringBoot偶然报错!!!jenkins启动SpringBoot偶尔会报错!1、环境2、代码3、错误日志4、解决办法jenkins启动SpringBoot偶尔会报错!启动SpringBoot的项目的时候。1、环境springboot;jdk1.8;jenkins部署。2、代码1.使用了AsyncTask;importorg.springframework.beans.fac
- @EnableFeignClients 和 @FeignClient 在自动装配时失败 ‘FeignContext’ NoSuchBeanDefinitionException
肉三
Javajava开发语言
我正在编写的微服务需要与我们平台中的其他微服务进行通信。对于这一尝试,对我们来说理想的解决方案是SpringCloudNetflixFeign,它实现了@FeignClient。但是,当我尝试时遇到以下异常@AutowiredReviewProvider:Causedby:org.springframework.beans.factory.NoSuchBeanDefinitionException
- mac环境下安装webdriver/selenium/python
hp15
macpythonmacwebdriverselenium
1、安装python3.9https://www.python.org/downloads/2、添加环境变量cd~vim.bash_profile3、.bash_profile添加如下内容:PATH="/Library/Frameworks/Python.framework/Versions/3.9/bin:${PATH}"exportPATHaliaspython="/Library/Frame
- 异常检测的评价指标:ROCAUC等【tips】
太简单了
tips计算机视觉深度学习pytorch
准确率Precision&召回率Recallfromsklearn.metricsimportprecision_recall_curveprecision,recall,thresholds=precision_recall_curve(gt_mask.flatten(),scores.flatten())混淆矩阵:实际预测正负正TP(真正类)FN(假负类)负FP(假正类)TN(真负类)prec
- ios storekit_在iOS 14中的应用购买和storekit中
weixin_26745865
iospython
iosstorekitMuchofthebuzzatWWDC2020wasgivenovertoSwiftUI2.0andARKit,soyoushouldforgiveyourselfformissingaseismicchangetotheStoreKitframework—achangethatwillmakeyourlifeasanappdeveloperfareasier.WWDC202
- 深入理解 Go 高性能网络框架 nbio
程序员
本文深入探讨了高性能网络框架nbio在Golang中的应用,包括其架构、配置、事件处理机制、核心组件等,并与Evio做了比较。原文:AnalyzingHigh-PerformanceNetworkFrameworknbioinGo前言nbio项目还包括建立在nbio基础上的nbhttp,但这不在我们的讨论范围之内。与evio一样,nbio也采用经典的Reactor模式。事实上,Go中的许多异步网络
- Science Robotics最新封面:外骨骼“外挂”让手指弹奏钢琴更灵巧
xwz小王子
多模态变形金刚具身智能强化学习及自动驾驶外骨骼
最近来自日本的研究团队开发了一款专门的手部外骨骼机器人,通过被动训练的方式,帮助专业钢琴家突破了技能天花板。这项研究刚刚登上了机器人领域顶刊ScienceRobotics最新一期的封面。研究团队制作了一个精密的手部外骨骼系统。这个系统可以精确控制手指的弯曲和伸展,让钢琴家体验到比他们主动演奏更快速、更复杂的手指动作。系统的关键在于采用了“远程运动中心”机制,可以在高速重复运动时保持精确性,同时将手
- ros 机器人地图转化为gis地图
Sunday_ding
问题集地图arcgisjava图论
ROS(RobotOperatingSystem)和CloudLibrary的结合可以通过生成的文件构建地理信息系统(GIS),尤其是当涉及到机器人、传感器数据以及地图构建时。下面将详细说明ROS和CloudLibrary如何生成的数据文件能够被用来构建GIS系统,以及如何通过这些数据进一步进行地理空间分析。1.ROSCloudLibrary生成的文件ROS提供了多种与地图构建和机器人定位相关的工
- Flutter核心原理(Flutter UI 框架(Framework)+Element、BuildContext和RenderObject )
彳饕餮亍
flutter
什么是UI框架?UI框架是在特定平台上实现快速开发图形用户界面(GUI)的框架。它解决了如何基于基础的图形API(如Canvas)来封装一套高效创建UI的工具集的问题。每个平台的UI框架实现原理基本相通,无论是Android还是iOS,它们将用户界面展示到屏幕的流程都是类似的。UI框架的作用是简化开发人员在特定平台上创建GUI的过程,提供高效且易于使用的工具和组件,使开发者能够快速构建各种用户界面
- IDEA新建maven、SprintBoot项目出现报错:未解析的插件 ‘org.springframework.bootspring-boot-maven-plugin3.4.1‘解决和原因
m0_74824002
面试学习路线阿里巴巴intellij-ideamavenjava
问题使用IDEA创建SpringBoot项目时出现报错未解析的插件:'org.springframework.boot:spring-boot-maven-plugin:3.4.1'未解析的插件:'org.apache.maven.plugins:maven-clean-plugin:3.4.0'未解析的插件:'org.apache.maven.plugins:maven-jar-plugin:3
- Spring boot技术文档
灰色橡皮糖
springbootjavaspring
SpringBoot技术文档简介SpringBoot是一个快速构建Java应用程序的框架,它基于SpringFramework,并通过自动配置和简化的开发流程来简化应用程序的开发。SpringBoot可以帮助开发者快速创建独立的、生产级别的Spring应用程序,并减少了开发者配置应用程序所需的时间和精力。SpringBoot最大的优势是提供了一种快速开发体验,可以实现零配置启动。文章目录Sprin
- github go star前50的项目
可乐泡枸杞·
githubgolang开发语言开源软件开源
以下是按星标数排序的前50个Go语言的GitHub仓库。1.avelino/awesome-go星标数:126619简介:AcuratedlistofawesomeGoframeworks,librariesandsoftware语言:Go项目Logo:2.golang/go星标数:121848简介:TheGoprogramminglanguage语言:Go项目Logo:3.kubernetes/
- springboot3配置日志logback
cq_run
logbackjavaspringboot
当前springboot版本为3.3.4之后版本与之前版本配置不同1.引入依赖org.springframework.bootspring-boot-starter-logging3.3.42.配置文件application.ymllogging:file:name:spring_log.logpath:./logsconfig:classpath:logback-spring.xmlsrc/ma
- 深入浅出 SQLSugar:快速掌握高效 .NET ORM 框架
m0_74823595
.net
SQLSugar是一个高效、易用的.NETORM框架,支持多种数据库(如SQLServer、MySQL、PostgreSQL等)。它提供了丰富的功能,包括CRUD操作、事务管理、动态表名、多表联查等,开发者可以通过简单的链式操作实现复杂的数据库逻辑。本文将以完整的示例,详细介绍SQLSugar的安装、配置和功能使用,适用于.NETFramework和.NETCore项目。一、SQLSugar简介1
- 精通爬虫技术:从入门到入狱——网络数据爬虫的合法性与法律边界
了解数据爬虫的原理、用途、法律风险与合规性。本文深入解析网络爬虫的工作机制,探讨其在数据采集、搜索引擎等领域的应用。同时,重点关注Robots协议、反爬虫技术、开放数据等合规性问题,并分析相关法律案例,助您合法安全地使用爬虫技术。文章目录什么是网络数据爬虫?数据爬虫的工作原理数据爬虫的应用与影响数据爬虫的广泛用途数据爬虫带来的负面影响和潜在风险数据爬虫的合规性问题开放数据与非开放数据Robots协
- 四大.NET ORM框架深度对比:EF Core、SqlSugar、FreeSql与Dapper的性能、功能与适用场景
m0_74823983
.net
在对比EntityFrameworkCore(EFCore)、SqlSugar、FreeSql和Dapper这四种常用的.NETORM框架时,我们可以从多个维度进行详细的梳理和总结。以下是对这些框架的对比,包括应用场景、优势、劣势,并尝试通过表格形式展示关键数据(尽管ORM框架的对比通常难以直接量化到具体的数据点,但我会尽量通过描述性信息来呈现)。ORM框架对比总结框架名称应用场景优势劣势EFCo
- VictoriaMetrics 中文教程(10)集群版简介
prometheus
VictoriaMetrics中文教程系列文章:VictoriaMetrics中文教程(01)简介VictoriaMetrics中文教程(02)安装VictoriaMetrics中文教程(03)如何配置Prometheus使其把数据远程写入VictoriaMetricsVictoriaMetrics中文教程(04)对接Grafana同时介绍vmuiVictoriaMetrics中文教程(05)对接
- 使用arthas监控诊断java应用
handsomestWei
后端java开发语言
使用arthas监控诊断java应用简介arthas是阿里的一款线上监控诊断产品,通过全局视角实时查看应用load、内存、gc、线程的状态信息,并能在不修改应用代码的情况下,对业务问题进行诊断,包括查看方法调用的出入参、异常,监测方法执行耗时,类加载信息等,大大提升线上问题排查效率。安装使用参考常用命令使用dashboard查看当前应用整体信息dashboard命令详解包含有jvm信息,查看各代内
- 微软开源AI Agent AutoGen 详解
培根芝士
AImicrosoft人工智能
AutoGen是微软发布的一个用于构建AIAgent系统的开源框架,旨在简化事件驱动、分布式、可扩展和弹性Agent应用程序的创建过程。开源地址:GitHub-microsoft/autogen:AprogrammingframeworkforagenticAIPyPi:autogen-agentchatDiscord:https://aka.ms/autogen-discordOfficeHou
- IDEA出现URI is not registered (Settings | Languages & Frameworks | Schemas and DTDs)
Monly21
IDEAintellij-ideajavaide
在IDEA的xml资源文件中出现URIisnotregistered错误在Settings中增加一个新的DTDs
- YOLOv8 修改 IoU(CIOU, DIOU, SIOU, EIOU, Focal_EIOU)
有一个好名字
YOLOYOLO深度学习计算机视觉
这里简单介绍下怎么修改YOLOV8中的IOU,首先找到ultralytics/yolo/utils/metrics.py文件中的bbox_iou()方法。defbbox_iou(box1,box2,xywh=True,GIoU=False,DIoU=False,CIoU=False,eps=1e-7):"""CalculateIntersectionoverUnion(IoU)ofbox1(1,4
- 【Block总结】CDFA,对比驱动特征聚合模块|即插即用,极大增强特征表达!
AI浩
Block总结计算机视觉深度学习目标检测
论文信息标题:ConDSeg:AGeneralMedicalImageSegmentationFrameworkviaContrast-DrivenFeatureEnhancement作者:MengqiLei,HaochenWu,XinhuaLv,XinWang机构:中国地质大学(武汉),百度公司发表时间:2024年12月11日会议:AAAI2025论文:https://arxiv.org/pdf
- FrameWork层WiFi模块架构剖析
刘争Stanley
Java编程深度挖掘Android开发巅峰之路Framework框架大师C++魔法学院
1.系统架构AndroidWiFi系统引入了wpa_supplicant,它的整个WiFi系统以wpa_supplicant为核心来定义上层用户接口和下层驱动接口。整个WiFi系统架构如下图所示:一切尽在上图中,下面将对每部分进行详细分析。1.1WifiService由SystemServer启动的时候生成的ConnecttivityService创建,负责启动关闭wpa_supplicant,启
- ASM系列四 利用Method 组件动态注入方法逻辑
lijingyao8206
字节码技术jvmAOP动态代理ASM
这篇继续结合例子来深入了解下Method组件动态变更方法字节码的实现。通过前面一篇,知道ClassVisitor 的visitMethod()方法可以返回一个MethodVisitor的实例。那么我们也基本可以知道,同ClassVisitor改变类成员一样,MethodVIsistor如果需要改变方法成员,注入逻辑,也可以
- java编程思想 --内部类
百合不是茶
java内部类匿名内部类
内部类;了解外部类 并能与之通信 内部类写出来的代码更加整洁与优雅
1,内部类的创建 内部类是创建在类中的
package com.wj.InsideClass;
/*
* 内部类的创建
*/
public class CreateInsideClass {
public CreateInsideClass(
- web.xml报错
crabdave
web.xml
web.xml报错
The content of element type "web-app" must match "(icon?,display-
name?,description?,distributable?,context-param*,filter*,filter-mapping*,listener*,servlet*,s
- 泛型类的自定义
麦田的设计者
javaandroid泛型
为什么要定义泛型类,当类中要操作的引用数据类型不确定的时候。
采用泛型类,完成扩展。
例如有一个学生类
Student{
Student(){
System.out.println("I'm a student.....");
}
}
有一个老师类
- CSS清除浮动的4中方法
IT独行者
JavaScriptUIcss
清除浮动这个问题,做前端的应该再熟悉不过了,咱是个新人,所以还是记个笔记,做个积累,努力学习向大神靠近。CSS清除浮动的方法网上一搜,大概有N多种,用过几种,说下个人感受。
1、结尾处加空div标签 clear:both 1 2 3 4
.div
1
{
background
:
#000080
;
border
:
1px
s
- Cygwin使用windows的jdk 配置方法
_wy_
jdkwindowscygwin
1.[vim /etc/profile]
JAVA_HOME="/cgydrive/d/Java/jdk1.6.0_43" (windows下jdk路径为D:\Java\jdk1.6.0_43)
PATH="$JAVA_HOME/bin:${PATH}"
CLAS
- linux下安装maven
无量
mavenlinux安装
Linux下安装maven(转) 1.首先到Maven官网
下载安装文件,目前最新版本为3.0.3,下载文件为
apache-maven-3.0.3-bin.tar.gz,下载可以使用wget命令;
2.进入下载文件夹,找到下载的文件,运行如下命令解压
tar -xvf apache-maven-2.2.1-bin.tar.gz
解压后的文件夹
- tomcat的https 配置,syslog-ng配置
aichenglong
tomcathttp跳转到httpssyslong-ng配置syslog配置
1) tomcat配置https,以及http自动跳转到https的配置
1)TOMCAT_HOME目录下生成密钥(keytool是jdk中的命令)
keytool -genkey -alias tomcat -keyalg RSA -keypass changeit -storepass changeit
- 关于领号活动总结
alafqq
活动
关于某彩票活动的总结
具体需求,每个用户进活动页面,领取一个号码,1000中的一个;
活动要求
1,随机性,一定要有随机性;
2,最少中奖概率,如果注数为3200注,则最多中4注
3,效率问题,(不能每个人来都产生一个随机数,这样效率不高);
4,支持断电(仍然从下一个开始),重启服务;(存数据库有点大材小用,因此不能存放在数据库)
解决方案
1,事先产生随机数1000个,并打
- java数据结构 冒泡排序的遍历与排序
百合不是茶
java
java的冒泡排序是一种简单的排序规则
冒泡排序的原理:
比较两个相邻的数,首先将最大的排在第一个,第二次比较第二个 ,此后一样;
针对所有的元素重复以上的步骤,除了最后一个
例题;将int array[]
- JS检查输入框输入的是否是数字的一种校验方法
bijian1013
js
如下是JS检查输入框输入的是否是数字的一种校验方法:
<form method=post target="_blank">
数字:<input type="text" name=num onkeypress="checkNum(this.form)"><br>
</form>
- Test注解的两个属性:expected和timeout
bijian1013
javaJUnitexpectedtimeout
JUnit4:Test文档中的解释:
The Test annotation supports two optional parameters.
The first, expected, declares that a test method should throw an exception.
If it doesn't throw an exception or if it
- [Gson二]继承关系的POJO的反序列化
bit1129
POJO
父类
package inheritance.test2;
import java.util.Map;
public class Model {
private String field1;
private String field2;
private Map<String, String> infoMap
- 【Spark八十四】Spark零碎知识点记录
bit1129
spark
1. ShuffleMapTask的shuffle数据在什么地方记录到MapOutputTracker中的
ShuffleMapTask的runTask方法负责写数据到shuffle map文件中。当任务执行完成成功,DAGScheduler会收到通知,在DAGScheduler的handleTaskCompletion方法中完成记录到MapOutputTracker中
- WAS各种脚本作用大全
ronin47
WAS 脚本
http://www.ibm.com/developerworks/cn/websphere/library/samples/SampleScripts.html
无意中,在WAS官网上发现的各种脚本作用,感觉很有作用,先与各位分享一下
获取下载
这些示例 jacl 和 Jython 脚本可用于在 WebSphere Application Server 的不同版本中自
- java-12.求 1+2+3+..n不能使用乘除法、 for 、 while 、 if 、 else 、 switch 、 case 等关键字以及条件判断语句
bylijinnan
switch
借鉴网上的思路,用java实现:
public class NoIfWhile {
/**
* @param args
*
* find x=1+2+3+....n
*/
public static void main(String[] args) {
int n=10;
int re=find(n);
System.o
- Netty源码学习-ObjectEncoder和ObjectDecoder
bylijinnan
javanetty
Netty中传递对象的思路很直观:
Netty中数据的传递是基于ChannelBuffer(也就是byte[]);
那把对象序列化为字节流,就可以在Netty中传递对象了
相应的从ChannelBuffer恢复对象,就是反序列化的过程
Netty已经封装好ObjectEncoder和ObjectDecoder
先看ObjectEncoder
ObjectEncoder是往外发送
- spring 定时任务中cronExpression表达式含义
chicony
cronExpression
一个cron表达式有6个必选的元素和一个可选的元素,各个元素之间是以空格分隔的,从左至右,这些元素的含义如下表所示:
代表含义 是否必须 允许的取值范围 &nb
- Nutz配置Jndi
ctrain
JNDI
1、使用JNDI获取指定资源:
var ioc = {
dao : {
type :"org.nutz.dao.impl.NutDao",
args : [ {jndi :"jdbc/dataSource"} ]
}
}
以上方法,仅需要在容器中配置好数据源,注入到NutDao即可.
- 解决 /bin/sh^M: bad interpreter: No such file or directory
daizj
shell
在Linux中执行.sh脚本,异常/bin/sh^M: bad interpreter: No such file or directory。
分析:这是不同系统编码格式引起的:在windows系统中编辑的.sh文件可能有不可见字符,所以在Linux系统下执行会报以上异常信息。
解决:
1)在windows下转换:
利用一些编辑器如UltraEdit或EditPlus等工具
- [转]for 循环为何可恨?
dcj3sjt126com
程序员读书
Java的闭包(Closure)特征最近成为了一个热门话题。 一些精英正在起草一份议案,要在Java将来的版本中加入闭包特征。 然而,提议中的闭包语法以及语言上的这种扩充受到了众多Java程序员的猛烈抨击。
不久前,出版过数十本编程书籍的大作家Elliotte Rusty Harold发表了对Java中闭包的价值的质疑。 尤其是他问道“for 循环为何可恨?”[http://ju
- Android实用小技巧
dcj3sjt126com
android
1、去掉所有Activity界面的标题栏
修改AndroidManifest.xml 在application 标签中添加android:theme="@android:style/Theme.NoTitleBar"
2、去掉所有Activity界面的TitleBar 和StatusBar
修改AndroidManifes
- Oracle 复习笔记之序列
eksliang
Oracle 序列sequenceOracle sequence
转载请出自出处:http://eksliang.iteye.com/blog/2098859
1.序列的作用
序列是用于生成唯一、连续序号的对象
一般用序列来充当数据库表的主键值
2.创建序列语法如下:
create sequence s_emp
start with 1 --开始值
increment by 1 --増长值
maxval
- 有“品”的程序员
gongmeitao
工作
完美程序员的10种品质
完美程序员的每种品质都有一个范围,这个范围取决于具体的问题和背景。没有能解决所有问题的
完美程序员(至少在我们这个星球上),并且对于特定问题,完美程序员应该具有以下品质:
1. 才智非凡- 能够理解问题、能够用清晰可读的代码翻译并表达想法、善于分析并且逻辑思维能力强
(范围:用简单方式解决复杂问题)
- 使用KeleyiSQLHelper类进行分页查询
hvt
sql.netC#asp.nethovertree
本文适用于sql server单主键表或者视图进行分页查询,支持多字段排序。KeleyiSQLHelper类的最新代码请到http://hovertree.codeplex.com/SourceControl/latest下载整个解决方案源代码查看。或者直接在线查看类的代码:http://hovertree.codeplex.com/SourceControl/latest#HoverTree.D
- SVG 教程 (三)圆形,椭圆,直线
天梯梦
svg
SVG <circle> SVG 圆形 - <circle>
<circle> 标签可用来创建一个圆:
下面是SVG代码:
<svg xmlns="http://www.w3.org/2000/svg" version="1.1">
<circle cx="100" c
- 链表栈
luyulong
java数据结构
public class Node {
private Object object;
private Node next;
public Node() {
this.next = null;
this.object = null;
}
public Object getObject() {
return object;
}
public
- 基础数据结构和算法十:2-3 search tree
sunwinner
Algorithm2-3 search tree
Binary search tree works well for a wide variety of applications, but they have poor worst-case performance. Now we introduce a type of binary search tree where costs are guaranteed to be loga
- spring配置定时任务
stunizhengjia
springtimer
最近因工作的需要,用到了spring的定时任务的功能,觉得spring还是很智能化的,只需要配置一下配置文件就可以了,在此记录一下,以便以后用到:
//------------------------定时任务调用的方法------------------------------
/**
* 存储过程定时器
*/
publi
- ITeye 8月技术图书有奖试读获奖名单公布
ITeye管理员
活动
ITeye携手博文视点举办的8月技术图书有奖试读活动已圆满结束,非常感谢广大用户对本次活动的关注与参与。
8月试读活动回顾:
http://webmaster.iteye.com/blog/2102830
本次技术图书试读活动的优秀奖获奖名单及相应作品如下(优秀文章有很多,但名额有限,没获奖并不代表不优秀):
《跨终端Web》
gleams:http