1.国际网站怎么打开
2.开放源码有利于系统安全
3.csdn开源是互联互联什么意思?
4.TDengine 资深研发整理:基于 SpringBoot 多语言实现 API 返回消息国际化
5.开源运动发展史与开源许可证(BSD、GPL、国际国际Apache、源码样MIT、互联互联木兰(中国))的国际国际那些事儿
6.linux-ansi
国际网站怎么打开
访问国际网站可以通过谷歌浏览器、火狐浏览器、源码样linux 进程调度源码分析Edge浏览器等。互联互联1、国际国际谷歌浏览器
谷歌浏览器是源码样一款由Google公司开发的网页浏览器,该浏览器基于其他开源软件撰写,互联互联包括WebKit,国际国际目标是源码样提升稳定性、速度和安全性,互联互联并创造出简单且有效率的国际国际使用者界面。
2、源码样火狐浏览器
火狐浏览器是一个由Mozilla开发的自由及开放源代码的网页浏览器。其使用Gecko排版引擎,支持多种操作系统,如Windows、macOS及GNU、Linux等。
3、Edge浏览器
Edge浏览器是由微软开发的基于Chromium开源项目及其他开源软件的网页浏览器。支持内置Cortana语音功能,内置了阅读器、笔记和分享功能。设计注重实用和极简主义。渲染引擎被称为EdgeHTML。
国外网站的特点
1、速度快
百度和我们人一样,都不喜欢浪费时间和精力,如果你的网站每个页面打开的速度都很慢,这会严重浪费百度蜘蛛的时间,加大百度对网页的收录难度。所以我们必须得选用响应速度快的网站空间,同时也要用响应速度快的网站程序。
2、内容原创
百度上搜索到的所有内容都是百度在互联网上抓取过来的,衡量一个搜索引擎的党员考评系统源码好坏,就是看这个搜索引擎收录的内容全不全、信息快不快。百度为了更快更全的收录各类内容,就特别喜欢能源源不断提供内容的网站,同时提供的内容是最新的。
3、文题一致
文题一致是指网站的所有页面标题和正文内容都是相一致的,比如某一页面的标题是网络推广、网站优化,那么这个页面也一定要是介绍网络推广和网站优化的。
4、结构合理
结构合理是网站分级要层次分明,每个栏目下的子页面里的内容都是和这个栏目是相一致的。
开放源码有利于系统安全
开放源码是近来人们的一个热点话题。这会对信息安全带来什么影响?开放源码和封闭源码相比,哪个更安全?本文作者明确提出:开放源码会改善信息安全。
近年来,随着Linux和Apache等开放源码软件受到越来越多的人的关注和喜爱,开放源码运动在世界范围内引起了一场风暴。但是,我们也经常可以看到有人对开放源码软件的安全性表示怀疑:"所有的源代码都被黑客们看到了,还有什么安全可言?""开放源代码意味着黑客们可以找出代码中存在的所有缺陷。"有人甚至列出等式:"开放源码 = 打开信息系统之门 = 不安全"。
开放源码到底安不安全
那些认为开放源码不安全的人,一般是出于如下的考虑。
一、黑客可以找到其中的安全漏洞
这种观点成立的前提是:黑客们不会找出封闭源码软件中的安全漏洞。但是我们只需要到网上去查找一下与封闭源码软件相关的安全警告和安全建议,就会知道这明显不是事实。例如,年月,Todd Sabin在Bugtraq邮件列表上宣布,他发现了一个Windows NT的SYSKEY缺陷,而这个缺陷就是在没有源码的情况下(众所周知,微软不提供源代码),利用反汇编器发现的。实际上,大多数黑客们在破解程序时并不一定需要有源代码。
二、心情纸条源码2023开放的就是不安全的
因为对大多数人来说,安全指的就是隐藏的、秘密的、不开放的。在加密学中有一句谚语:一个加密算法的安全不应当依赖于它是秘密的。历史证明,秘密的加密算法终究会被破解。现在的加密算法(如AES)大都是公开的,而其安全强度依赖于所用密钥的长度。这句话同样可以应用于一般的安全软件。算法可以被人采用反向工程攻破,协议可以通过分析技术去解析。隐藏的和秘密的东西最终会被发现并公布于众。因此,靠封闭和隐秘达到安全的目的,在很大程度上可以说是不可能的。
三、开放代码没人注意
有个例子,在PGP 2.6发布以后,有人就在Bugtraq邮件列表上宣布,在检查代码时发现,其中一个随机数生成器中有一个"臭虫"。这个错误很细小,在进行异或操作的代码中,却使用了赋值运算符号(=)。这表明,"即便代码开放了,也没有人会真正去检查"的想法是站不住脚的,在开放源码模型中,这样细小的错误都能被发现,所以说,严重错误或后门不被发现的可能性极小。
四、开放源码中可放置后门
这在理论上是成立的,但是如何在其中放置后门或陷阱?因为开放源码软件使用代码控制系统来管理代码树,而且有许多人在检查和分析代码,更重要的是,代码本身意味着作者的element官网源码个人名誉。谁愿意冒险在开放的代码中放置后门而丧失个人名誉和声望呢? 对比而言,封闭源码的软件中更容易放置后门或者陷阱,在Windows操作系统中发现的NSA密钥即是有力的证据。
开放源码可以带来安全
封闭源码软件并不比开放源的软件的安全性好,相反,开放源码软件更有能力和潜力提供更好的安全,有以下例子证明:
● openBSD,目前世界上最安全的操作系统之一,是开放源码的项目。它是BSD Uinx的一个分支,安全是它的主要设计目标,它是在NetBSD的基础上,花了几十个人年的时间审查代码形成的。更为重要的是,它在缺省安装方式下,三年中从未出现过一个远程漏洞。
● Linux,这个信息时代的软件骄子,在年就已经占领了%的服务器市场。已经广泛应用在像Yahoo这样的性能要求较高的站点上,并且已经得到了IBM、HP等大厂商的明确支持。
事实表明,开源软件比之封闭软件更具有稳定性和安全性。而且,开放源代码还会带来如下好处:
一、开放代码有助于快速修改错误
由于开放代码软件会得到世界上成千上万的开发者的审查,所以发现并修正它们的错误的时间很快。国外有人对Linux、Windows NT、Solaris三个操作系统做过统计,从发现其中的错误直到错误得到修正,不同的软件开发商所花的平均时间如下:
软件开发商 red hat microsoft sun
软件名称 linux windows NT solaris
改错平均时间 天 天 天
二、开放代码有助于改善代码质量
在典型的封闭开发项目中,开发者的个人责任和职业名誉是相对有限的,更重要的是,因为源码是封闭的,错误或失误可能会被开发者悄悄掩盖过去;相反,开源软件的开发者写的每一行代码都体现着自己的声望和名誉。混乱糟糕的断头铡刀形态源码代码会受到同行们的批评甚至讥笑。发布源码并让同行审查,这在封闭源码开发中是不可能的。
三、开源有助于促进安全代码开发技术
开放源码的编程者经常会就开发中遇到的问题交换想法和解决办法,他们乐于创新并实践有关代码安全的新理论,如果某个技术被发现有缺点,就会出现新的技术替代它,随着旧的安全性较差的代码逐渐被修正,新的代码的安全性逐渐得到改善;而在封闭开发中,软件的安全性可能会让步于商业利益。开发者们可能因为任务时间紧或是编程习惯等因素,而不重视采纳或创造新的安全代码开发技术。
开放源码并非百分百安全
以上这些并不说明开放源码就可以解决安全问题了,开放源码模型也有不足之处。
打补丁 ≠ 安全
有人认为,只要我们开放源代码,并对软件不停地审查代码和修改漏洞,最终这个软件会变成绝对安全的。显然,这种看法有失偏颇,因为它把软件看成是一个静止不变的事物。实际上,软件是不断进化的,是动态发展的。通过调查Java的安全漏洞情况,我们可以看出,发现的安全漏洞会被修正,但是随着功能的增加,又会引进新的安全漏洞,显然只依赖于对软件打补丁,是达不到安全目的的。
多眼球效应 ≠ 安全
从安全角度来看,开放源码软件的一个主要好处是"多眼球效应",即众多的开发者可以审查代码,从而较快地发现和修改其中的"臭虫"。但是,发布源代码并不意味着就可以去除所有的"臭虫",而且,即使经过广泛审查的开源软件也可能存在重要的未被发现的"臭虫"。例如,被发现存在缓冲区溢出问题 的Wu-ftp(一个文件传输工具),它在公布之前,实际上已经由程序高手审查了它的代码。另外,单纯依赖不相干的外部人士检查安全相关的代码会带来很多问题。例如,在某些情况下,第一个发现错误的人可能不作声张,而把这个错误用于不良甚至是破坏性的目的。
开放的安全模型
安全系统不应当依赖于源码封闭,而且单纯的开放源码也不是万能良方,那么怎样才能达到安全目的呢?我们建议构建如下的开放安全模型:开放安全模型 = 开放的设计 + 安全代码技术 + 开放的源码 + 市场激励机制
开放设计
现在的信息发展趋势是系统体系结构具有高度可扩展能力。如果缺少安全功能设计,与现存的错误所带来的攻击相比,可能会导致更多的攻击。例如Web浏览器支持插件(plug-ins),因为通过开放设计,可以让同行们对设计进行审查,利用形式化理论,错误假设方法,以及阅读设计文档,可以发现设计中存在的错误,这是开发安全系统和软件的一个非常重要环节。
安全代码技术
现在来看,计算机紧急事故反应小组(CERT)发现的多数错误都是由缓冲溢出问题引起的,因为好多软件是由C语言 + glib C库编写的,而它们提供的一些特性和函数都存在有安全漏洞。事实上,使用具有类型纠正检查特性的编程语言(如C++)即可防止此类错误。使用支持例外处理的现代编程语言也可以去除许多因为竞争条件导致的错误。
市场激励机制
国外曾经有所大学在国际互联网上作过安全评价试验,他们开放软件源码,但是后来并没有得到任何软件安全特性的反馈。这也说明了在开放源码模型中写代码对大多数人来说是很有趣的,但是读别人的代码则相反,枯燥乏味。开源模型中缺乏非开源模型中所具有的经济激励机制,如何吸引人来审查代码呢?这就要让市场激励机制起作用,一个比较好的办法是花钱雇人读代码。
csdn开源是什么意思?
CSDN开源是指国内知名IT专业社区CSDN所推行的开放源代码的理念和行动。在CSDN开源社区中,不仅仅发表技术文章、交流技术问题,还可以分享自己的开源代码和项目,让更多人了解、使用、修改和优化。这样不仅可以提高软件开发效率和质量,也可以促进技术交流和共享。此外,CSDN还推崇开放数据、开放硬件、开放文化等开源理念,推动国内的开源社区生态环境的发展。
CSDN开源的优势在于,通过社区平台的规模和影响力,可以促进更广泛、更深入的代码交流和技术合作。CSDN开源还提供了比较完善的技术支持和社区管理服务,可以帮助开源项目更好地维护和更新。此外,CSDN开源还在不断引入更多的开源人才、开发者和企业,让开源社区更加多元化、开放和具有活力。
CSDN开源的意义在于,它反映了中国互联网技术社区的自我发展和进步。开源并不等同于无偿贡献,它需要更加多元化、更加专业的社区支持和参与。通过CSDN开源,可以更好的促进开源文化和开源社区的发展,更好地推动创新和技术进步。同时,CSDN开源也为广大开发者和企业提供了一个更加丰富、便捷的技术交流和合作的平台,帮助中国互联网技术更快速地与国际接轨。
TDengine 资深研发整理:基于 SpringBoot 多语言实现 API 返回消息国际化
SpringBoot,作为Java开发领域广受欢迎的技术框架,在构建Web应用程序和微服务方面发挥着重要作用。它通过简化开发流程、提供约定大于配置的原则以及集成常用库和组件,助力开发者高效构建应用程序。
为了帮助开发者更好地掌握SpringBoot,我们整理了TDengine资深研发的内部分享——《SpringBoot 多语言支持方案》,供开发者参考。
在项目依赖中引入spring-boot-starter和spring-boot-autoconfigure两个包,即可使用SpringBoot提供的多语言定义和解析工具。在spring-boot-autoconfigure的源码中,可以看到MessageSourceAutoConfiguration类已自动装配了MessageSource对象。
在IDEA中,在resources资源包上右键新建资源包,填写资源包名如:messages,选择区域设置,包括en、zh_CN、zh_TC等选项。在resources包内即可看到绑定的多语言文件。
在配置文件中添加message,格式为:{ code}={ message}。在业务模块中使用多语言消息,首先分析API服务请求响应流程,包括身份认证、API接口鉴权认证、权限识别等,验证通过后进入业务逻辑,最后通过接口返回。
异常国际化配置可以通过定义多语言message和获取LocaleMessageProvider实现。SpringBoot框架通过LocaleContextHolder.getLocale()获取Locale,并在RequestContextFilter中设置LocaleContext。
客户端在请求中添加Accept-Language=zh-CN头,即可验证返回的结果。例如,登录出错时,客户端接收到的信息为国际化后的错误信息。
以上就是基于SpringBoot多语言支持方案的完整分享,希望对开发者有所帮助。如有其他技术问题或时序数据处理难题,可联系TDengine的技术研发人员进行沟通。
TDengine是一款高性能、集群开源、云原生的时序数据库,专为物联网、工业互联网、电力、IT运维等场景设计。它具有内建的缓存、流式计算、数据订阅等系统功能,降低系统设计复杂度和研发运营成本。TDengine提供TDengine Enterprise和TDengine Cloud两个版本,用户可根据需求选择。
开源运动发展史与开源许可证(BSD、GPL、Apache、MIT、木兰(中国))的那些事儿
开源运动始于上世纪年代末期,随着Unix系统的诞生,源代码的开放成为了可能。Unix的发明者之一肯·汤普森,为了提高编程效率,设计了C语言。随后,Unix逐渐商业化,自由软件的概念随之诞生。理查德·斯托曼于年发起自由软件运动,创建了GNU项目,并引入了Copyleft的概念,通过GPL(GNU通用公共许可证)来保护软件的自由使用和分发。年,Linux的诞生标志着开源软件进入了新的阶段,它遵循了GPL许可,并于年加入GNU项目。开放源代码(Open Source)的概念在年由埃里克·雷蒙德提出,他倡导共享源代码可以产生更好的结果,促使了开放源代码促进会(OSI)的成立,以协调不同的开源许可标准,使得商业公司也能使用开源软件,而无需公开源代码。
开源许可证大致分为两大类:Copyleft(如GPL)和Permissive(如MIT、BSD)。Copyleft许可证要求任何基于该许可证软件的修改和衍生作品也必须遵循相同的许可证,以保持代码的自由性和可访问性。Permissive许可证则给予用户更大的灵活性,允许软件被自由地使用、修改和分发,但不强制要求开源或提供源代码。常见的Copyleft许可证有GPL,而MIT、BSD和Apache许可证属于Permissive类型。
在中国互联网出海背景下,开源合规成为重要议题。无论是使用开源代码还是计划将自己的软件以开源方式发布,都需要了解开源软件及其许可证的相关知识。中国开放原子基金会和木兰(中国)开源许可证的出现,旨在为中国开发者提供一个既符合国际标准又适应当地法律和文化背景的开源许可选择。木兰许可证的引入,为解决中国开发者在使用开源代码时遇到的特定法律问题提供了解决方案,同时满足了国际开源社区的需求,促进了全球开源生态的发展。
linux-ansi
crtè¦åé¢è²ï¼ææºå±åºç°crtè¦åé¢è²ï¼æå¦ä¸æ¹æ³:
1ãéå¯ææºï¼å¯å¨åä»ç»è§å¯å±å¹é¢è²æ¯å¦æ¢å¤å°æ£å¸¸ã
2ãæ´æ¢ææºå£çº¸å°è¯ï¼è§å¯å±å¹é¢è²æ¯å¦æ¢å¤å°æ£å¸¸ã
3ãæ£æ¥ç³»ç»è®¾ç½®å¦æéå¯ææºåï¼å±å¹ä»ç¶åè²ï¼ä¸æ¯æ£å¸¸çé¢è²ï¼æ£æ¥ä¸ä¸ç³»ç»ç¸å ³é¢è²è®¾ç½®ãå¨ææºæ¡é¢ä¸æ¾å°è®¾å®ï¼è¿å ¥è¾ å©åè½ï¼å¦ææç±»å«çè¯ï¼éæ©è§è§ï¼å¨è§è§éé¢æ¾å°è´è²ï¼ççè¿ä¸é¡¹æ¯å¦è¢«å¾éãå¨æ£å¸¸æ åµä¸ï¼æ¯ä¸åºè¯¥è¢«å¾éãææºå±å¹é¢è²é½æ¯ç±çº¢ç»¿èä¸åè²ç»æçé¢è²ï¼å³ä¸ºæ£è²ãè´è²ï¼è´è²æ¯å¨æ£è²åºç¡ä¸ï¼è¿æ»¤äºç½å ï¼é常被ç¨æå°ãæ¥çä¸æ¯å¦å¼å¯äºè´è²çåè½ï¼å ³éç¶åéå¯ææºæ¥çã
4ãæ¾ç¤ºæ线æ¾ç¤ºæ线æ¯ä¸»æ¿æ¾ç¤ºICä¸æ¾ç¤ºå±ä¹é´çè§é¢ä¿¡å·ä¼ è¾çº¿ï¼å¦ææ¾ç¤ºæ线èçæè æ¾å¨äºï¼ä¹ä¼å¯¼è´ææºå±å¹åè²æè åºç°åç´çº¿ã
5ãå¤ä»½æ°æ®ï¼è系人ãçä¿¡ãç §ççï¼ï¼æ¢å¤åºå设å®ã
6ãé®é¢ä¾ç¶åå¨ï¼å»ºè®®æºå¸¦ææºè³å½å°ç该ææºå®åæå¡ä¸å¿è¿è¡æ£æµã
crtç»å½äº¤æ¢æºè®¾ç½®è¿æ¥åæ°ï¼
1ãé¦å æå¼è®¡ç®æºï¼å¨è®¡ç®æºå æå¼SecureCRTã
2ãç¶å使ç¨é¼ æ ç¹å»å¿«éè¿æ¥é项ã
3ãåºç°é ç½®çªå£ï¼åè®®éæ©Serialï¼ç«¯å£ä¸è¬éæ©com1ï¼æ³¢ç¹çéæ©ï¼æµæ§æRTSåé¢çå¾å»æï¼å ¶ä»çä¿æé»è®¤å°±å¯ä»¥äºã
4ãæå使ç¨é¼ æ åå»è¿æ¥å³å¯ãæ©å±èµæSecureCRTä¸æ¬¾ç¨äºè¿æ¥è¿è¡å æ¬WindowsãUNIXåVMSççæ³å·¥å ·ãéè¿ä½¿ç¨å å«çVCPå½ä»¤è¡ç¨åºå¯ä»¥è¿è¡å å¯æ件çä¼ è¾ãææµè¡CRTTelnet客æ·æºçææç¹ç¹ï¼å æ¬:èªå¨æ³¨åã对ä¸å主æºä¿æä¸åçç¹æ§ãæå°åè½ãé¢è²è®¾ç½®ãå¯åå±å¹å°ºå¯¸ãç¨æ·å®ä¹çé®ä½å¾åä¼è¯çVT,VT,VTåANSIç«äº.è½ä»å½ä»¤è¡ä¸è¿è¡æä»æµè§å¨ä¸è¿è¡ãå ¶å®ç¹ç¹å æ¬ææ¬æ稿ãæäºä½¿ç¨çå·¥å ·æ¡ãç¨æ·çé®ä½å¾ç¼è¾å¨ãå¯å®å¶çANSIé¢è²çãSecureCRTçSSHåè®®æ¯æDES,3DESåRC4å¯ç åå¯ç ä¸RSAé´å«ã广æ³çç»ç«¯ä»¿çï¼VTï¼VTï¼VTï¼ANSIï¼SCOANSIï¼Xtermï¼Wyse/åLinuxconsole仿çï¼å¸¦æANSIé¢è²ï¼ãä¼ç§çä¼è¯ç®¡çç¹æ§ï¼æ°ç带æ ç¾çç¨æ·çé¢åActivatoræçå·¥å ·ï¼æå°åæ¡é¢çæä¹±ãä¼è¯è®¾ç½®å¯ä»¥ä¿åå¨å½åçä¼è¯ä¸ãåè®®æ¯æ:æ¯æSSH1ï¼SSH2ï¼Telnetï¼RLoginï¼Serialï¼åTAPIåè®®ã
linuxå¾åç¹ç¹ï¼
æ7个ç¹ç¹ï¼
1ãLinuxç³»ç»æ¯å è´¹çèªç±è½¯ä»¶ï¼éè¿å ¬å ±è®¸å¯åè®®GPLçèªç±è½¯ä»¶ã
2ãè¯å¥½ç硬件åå°å¯ç§»æ¤æ§ï¼
硬件平å°å¯ç§»æ¤æ§æå°æä½ç³»ç»ä»ä¸ä¸ªç¡¬ä»¶å¹³å°è½¬ç§»å°å¦ä¸ä¸ªç¡¬ä»¶å¹³å°æ¶ï¼åªéè¦ä¿®æ¹åºå±å°é代ç ï¼æ éæ¹åèªèº«çè¿è¡æ¹å¼ã
3ã符åPOSIXæ åï¼
称为å¯ç§»æ¤çLinuxæä½ç³»ç»æ¥å£ï¼æ¯ç±ANSIåISOå¶è®¢çä¸ç§å½é æ åï¼å¨æºä»£ç 级å«ä¸å®ä¹äºä¸ç»æå°çLinuxæä½ç³»ç»æ¥å£ãLinuxç³»ç»éµå¾ªè¿ä¸æ åï¼ä½¿å¾å®åå ¶ä»ç±»åçLinuxç³»ç»ä¹é´å¯ä»¥å¾æ¹ä¾¿å°ç¸äºç§»æ¤å¹³å°ä¸çåºç¨è½¯ä»¶ã
4ãè¯å¥½çå¾å½¢ç¨æ·çé¢ï¼
å ·æ类似äºWindowsæä½ç³»ç»çå¾å½¢çé¢ï¼å称æ¯X-Windowç³»ç»ï¼å®èµ·æºäºLinuxæä½ç³»ç»çæ åå¾å½¢çé¢ï¼å¯ä»¥ä¸ºç¨æ·æä¾ä¸ç§å ·æå¤ç§çªå£ç®¡çåè½ç对象éæç¯å¢ã
5ã强大çç½ç»åè½ï¼
Linuxç³»ç»æ¯ä¾é äºèç½å¹³å°åå±èµ·æ¥çï¼å ·æ强大çç½ç»åè½ãå¨å æ ¸ä¸å®ç°äºTCP/TPåè®®ç°ï¼æä¾äºå¯¹TCP/TPåè®®ç°çæ¯æã
6ã丰å¯çåºç¨ç¨åºåå¼åå·¥å ·ï¼
Linuxç³»ç»å ·æè¯å¥½çå¯ç§»æ¤æ§ï¼ç®åç»å¤§é¨åå ¶ä»Linuxç³»ç»ä¸ä½¿ç¨çæµè¡è½¯ä»¶é½å·²ç»ç§»æ¤å°Linuxç³»ç»ä¸ã
7ãå®å ¨æ§å稳å®æ§ï¼
Linuxç³»ç»éåäºå¤ç§å®å ¨æªæ½ï¼æ¯å¦è¯´ä»»å¡ä¿æ¤æºå¶ã审计è·è¸ªãæ ¸å¿æ¥æ ¡ã访é®ææçï¼ä¸ºç½ç»å¤ç¨æ·ç¯å¢ä¸çç¨æ·æä¾äºå¼ºå¤§çå®å ¨ä¿é;å¦å¤Linuxç³»ç»å ·ææ强ç稳å®æ§ï¼å¯ä»¥é¿æ¶é´ç¨³å®è¿è¥ã
linuxåcè¯è¨æä»ä¹åºå«ï¼
Cè¯è¨åLinuxåºæ¬ä¸æ²¡æä»ä¹åºå«ã
æ们æä¹ä¸çCè¯è¨ï¼æ¯æ åANSICï¼æ¯ä»»ä½Cç¼è¯å¨é½åºè¯¥éµå¾ªçCè¯è¨åè®®ã
èLinuxå ¶å®ç¹æçæ¯Linuxä¸çGCCç¼è¯å¨ï¼GCCç¼è¯å¨å®å ¨éµå¾ªANSICï¼å¹¶å¨æ¤åºç¡ä¸ååäºä¸äºæ©å±ï¼ä¾å¦ï¼
1ï¼å¯¹ASMè¯æ³çæ¯æ
2ï¼ç¼è¯å¨æ¯æå èå½æ°
3ï¼æ¯æ__attribute__æºå¶
2024-12-24 20:22
2024-12-24 20:13
2024-12-24 20:10
2024-12-24 19:50
2024-12-24 19:27
2024-12-24 19:24
2024-12-24 18:31
2024-12-24 18:01