用于报警的方法、适配器和服务器的制造方法

文档序号:10492006阅读:206来源:国知局
用于报警的方法、适配器和服务器的制造方法
【专利摘要】一种适配器,包括:采集单元,用于接收与所述适配器相关联的设备的运行数据;发送单元,用于向服务器发送信息;触发单元,用于被用户操作以触发报警事件;和,计时单元,用于在所述触发单元被触发后开始计时;所述计时单元的计时达到或超过设定时间阈值时,触发所述发送单元发送报警消息;所述报警消息包括所述适配器的标识ID以及所述设备的当前运行数据。用户在判断设备可能发生故障的情况下,利用上述实施例公开的技术方案,可以一键报警的方式向网络侧的控制平台发送设备的运行信息。控制平台收到适配器发送的报警消息后,通过分析设备的当前运行数据,能够判断该设备是否发生故障。本发明还公开一种服务器和一种用于报警的方法。
【专利说明】
用于报譬的方法、适配器和服务器
技术领域
[0001] 本发明属于通信技术领域,尤其设及一种用于报警的方法和一种适配器及一种服 务器。
【背景技术】
[0002] 工业物联网,简单的说就是要把工业设备(多个工业设备构成的工业装置)联网。 联网的目的是要把设备(装置)的各种运行状态和数据发送到某个平台,平台负责接收数 据、保存数据、处理数据,并对数据进行统计和分析。今天,随着微处理器技术的不断发展, 绝大多数工业设备都带有自控和伺服功能,并通过本端控制器方式实现,可W说已经非常 强大。但是运些设备(装置)的设计本身还是W传统的模式,并没有考虑到联网的需求。
[0003] 适配器就是为了解决传统设备的物联网需要,应运而生的一个中间适配设备。所 谓适配就是说,在维持原有设备不做任何改动的前提条件下,用适配的方式与设备(控制 器)对话,并把设备的运行状态和数据发送到物联网平台。
[0004] 现有适配器虽然能够将设备的运行状态和数据发送到物联网平台,但当设备发生 故障时,无法通过适配器向网络侧的控制平台发送报警消息,通知控制平台设备发生故障。

【发明内容】

[0005] 有鉴于此,本发明的一个目的是提出一种具有报警功能的适配器。为了对披露的 实施例的一些方面有一个基本的理解,下面给出了简单的概括。该概括部分不是泛泛评述, 也不是要确定关键/重要组成元素或描绘运些实施例的保护范围。其唯一目的是用简单的 形式呈现一些概念,W此作为后面的详细说明的序言。
[0006] 在一些可选的实施例中,所述适配器包括:采集单元,用于接收与所述适配器相关 联的设备的运行数据;发送单元,用于向服务器发送信息;
[0007] 触发单元,用于被用户操作W触发报警事件;和,计时单元,用于在所述触发单元 被触发后开始计时;所述计时单元的计时达到或超过设定时间阔值时,触发所述发送单元 发送报警消息;所述报警消息包括所述适配器的标识IDW及所述设备的当前运行数据。
[000引本发明的另一个目的是提出一种服务器。
[0009] 在一些说明性实施例中,所述服务器包括:第一单元,用于接收适配器发送的报警 消息,所述报警消息包括一设备的标识IDW及该设备的当前运行数据;第二单元,用于解析 所述报警消息获得所述设备的当前运行数据;第=单元,用于根据所述设备的当前运行数 据判断所述设备的运行状态;和,显示单元,用于当所述设备运行状态异常时,显示所述报 警消息、所述适配器的标识ID及所述设备的当前运行数据。
[0010] 本发明的另一个目的是提出一种用于报警的方法。
[0011] 在一些可选实施例中,所述用于报警的方法用于适配器,该方法包括:报警事件被 触发;检测报警事件被持续触发的时长;触发时长达到或超过设定时间阔值时,向网络侧发 送报警消息;所述报警消息包括适配器的标识IDW及与所述适配器相关联的设备的当前运 行数据。
[0012] 在一些可选实施例中,所述用于报警的方法用于服务器,该方法包括:接收适配器 发送的报警消息,所述报警消息包括所述适配器的标识IDW及与所述适配器相关联的设备 的当前运行数据;解析所述报警消息获得所述设备的当前运行数据;根据所述设备的当前 运行数据判断所述设备的运行状态;当所述设备运行状态异常时,显示所述报警消息、所述 适配器的ID及所述设备的当前运行数据。
[0013] 为了上述W及相关的目的,一个或多个实施例包括后面将详细说明并在权利要求 中特别指出的特征。下面的说明W及附图详细说明某些示例性方面,并且其指示的仅仅是 各个实施例的原则可W利用的各种方式中的一些方式。其它的益处和新颖性特征将随着下 面的详细说明结合附图考虑而变得明显,所公开的实施例是要包括所有运些方面W及它们 的等同。
[0014] 说明书附图
[0015] 图1是适配器的一个可选实施例结构示意图;
[0016] 图2是服务器的一个可选实施例结构示意图;
[0017] 图3是设备的一个可选实施例结构示意图;
[0018] 图4是用于报警的方法的一个可选实施例流程示意图;
[0019] 图5是报警消息一种可选的消息数据结构示意图。
【具体实施方式】
[0020] W下描述和附图充分地示出本发明的具体实施方案,W使本领域的技术人员能够 实践它们。其他实施方案可W包括结构的、逻辑的、电气的、过程的W及其他的改变。实施例 仅代表可能的变化。除非明确要求,否则单独的部件和功能是可选的,并且操作的顺序可W 变化。一些实施方案的部分和特征可W被包括在或替换其他实施方案的部分和特征。本发 明的实施方案的范围包括权利要求书的整个范围,W及权利要求书的所有可获得的等同 物。在本文中,本发明的运些实施方案可W被单独地或总地用术语"发明"来表示,运仅仅是 为了方便,并且如果事实上公开了超过一个的发明,不是要自动地限制该应用的范围为任 何单个发明或发明构思。
[0021] 适配器作为中间适配设备,通常不具备报警功能。本文提出一种具有报警功能的 适配器,在一些说明性实施例中,所述适配器如图1所示,包括触发单元SOl,计时单元S02, 采集单元S03和发送单元S04。
[0022] 采集单元03用于接收与适配器相关联的设备的运行数据。发送单元S04用于向服 务器发送信息。触发单元SOl用于被用户操作W触发报警事件。计时单元S02用于在触发单 元SOl被触发后开始计时,计时达到或超过设定时间阔值时,触发发送单元S04发送报警消 息;所述报警消息包括适配器的标识(IDJdentity) W及所述设备的当前运行数据。
[0023] 在一些可选实施例中,触发单元SOl可W是一个按钮,也可W是一个开关。当用户 对适配器的触发单元SOl进行操作时,例如按下按钮或者闭合开关,将直接触发计时单元 S02开始计时。如果用户持续按下按钮或闭合开关,则计时单元S02持续计时。如果用户持续 按下按钮或闭合开关的时间达到或超过设定时间阔值时,例如达到或超过3秒,则触发发送 单元S04发送报警消息。
[0024] 在一些说明性实施例中,适配器发送的报警消息包括一个或多个子信息,如图5所 示,每一子信息都包括该子信息的描述信息化ey)和参数信息(Value)。每一消息的示例如 下:
[0025] 化巧1,化11161;1(巧2,化11162;......!Keyni^luenl
[0026] 其中,适配器发送每一消息都会通过子信息携带该适配器ID,W使服务器能够获 知该消息的来源。设备的每一种运行数据,例如溫度、湿度、压力、电压、电流等等,可W用 Key表示,每种运行数据的值用Value表示。也就是说,设备的当前运行数据由各子信息承 载。
[0027] 此外,本文还提出一种用于网络侧的服务器,在一些说明性实施例中,所述服务器 如图2所示,包括接收报警消息的第一单元Sll,解析报警消息的第二单元S12,判断设备运 行状态的第=单元S13和显示单元S14。
[00%]第一单元Sll收到包括适配器IDW及与该适配器相关联的设备的当前运行数据的 报警消息后,第二单元S12解析报警消息并获得设备的当前运行数据,第=单元S13根据设 备的当前运行数据判断设备运行状态。在设备运行状态异常时,通过显示单元S14将报警消 息、适配器ID及所述设备的当前运行数据进行呈现。
[0029] 在一些说明性实施例中,服务器收到一个或多个适配器发送的消息后,可W通过 各消息中的子信息获得各消息的来源适配器。例如,服务器收到3条消息,分别如下:
[0030] 消息数据 1 = {ID,Wl 23 ; K44,1; K45,0; K46,1; K47,1; K48,0};消息数据2 = {ID, W234;K45,1;K47,1};
[0031] 消息数据3= {ID,W345 ;K44,1 ;K46,0}。
[0032] 服务器可W根据每一消息数据中的子信息,获得该消息数据的来源适配器。例如, 消息数据1来自ID为W123的适配器,消息数据2来自ID为W234的适配器,消息数据3来自ID为 W345的适配器。
[0033] 在一些可选实施例中,当设备运行状态正常时,通过显示单元S14显示报警信息, 但不显示适配器的ID及所述设备的当前运行数据。
[0034] 用户在判断设备可能发生故障的情况下,利用上述实施例公开的技术方案,可W 一键报警的方式向网络侧的控制平台发送设备的运行信息。控制平台收到适配器发送的报 警消息后,通过分析设备的当前运行数据,能够判断该设备是否发生故障。
[0035] 用户在对一个故障设备进行维修后,但无法确定故障是否被排除的情况下,利用 上述实施例公开的技术方案,W-键报警的方式向网络侧的控制平台发送设备的运行信 息。控制平台收到适配器发送的报警消息后,通过分析设备的当前运行数据,能够判断该设 备的故障是否依然存在。
[0036] 在一些优选实施例中,报警消息还包括设备的位置信息,经度、缔度和高度等信 息。运样,控制平台就能够获得适配器的位置,并通过显示单元S14将适配器的位置一并呈 现。
[0037] 在一些可选实施例中国,第=单元S13根据设备的当前运行数据之间的逻辑合理 性判断所述设备的运行状态。
[0038] 如果所述设备的当前运行数据之间符合正常运行的逻辑关系,则判断所述设备的 运行状态正常;否则,判断所述设备的运行状态异常。
[0039] 在一些示例性实施例中,假设设备包括一个由灯泡01、电阻02、开关04和电源03串 联而成的电路,如图3所示,对于与该设备相关联的适配器,在一键报警时,会将灯泡Ol和开 关04的当前运行数据发送给网络侧。灯泡Ol和开关04的各种运行数据如表1所示。
[0040] 表 1
[0041]
[0042] 设备如果正常运行,则灯泡Ol和开关04运两者运行数据的逻辑关系应该如下: [00创如果"灯泡=0",则。开关=0";
[0044] 如果。开关=r,则"灯泡=r。
[0045] 换句话说,当灯泡和开关运二者的数值(Value)相同时,都为"0"或都为"r时,表 明设备的当前运行数据符合正常运行的逻辑关系,设备处于正常状态。反之,当灯泡和开关 运二者的Value不同时,表明设备的当前运行数据违反正常运行的逻辑关系,设备处于异常 状态,发生故障。例如:
[0046] 如果"灯泡=0"且"开关=T,表示开关虽然闭合但灯泡没有亮,则可能灯泡发生 故障或者电源的电量耗尽了;
[0047] 如果"灯泡=T且"开关= 0",表示开关虽然断开但灯泡依然亮着,则可能开关发 生故障,实际没有断开。
[004引在一些可选实施例中,所述服务器还包括:
[0049] 第四单元,用于确定报警信息中每一子信息的数据类型;
[0050] 第五单元,用于建立所述每一子信息及其数据类型与所述报警消息接收时刻及所 述适配器的关联关系;和,
[0051 ]第六单元,用于保存所述报警消息和所述关联关系。
[0052] 该可选实施例中,服务器能够对报警消息中的子信息按数据类型进行分类管理, 并能够从接收时间和数据来源等多个方面对数据信息进行综合管理,从而使得系统能够有 序地管理来自大量适配器的报警信息,进而能够提高系统对数据信息的处理效率。
[0053] 在一些实施例中,公开了用于报警的方法,如图4所示。
[0054] 步骤SOl,在适配器端报警事件被触发。
[0055] 步骤S02,检测报警事件被持续触发的时长。
[0056] 步骤S03,触发时长达到或超过设定的时间阔值,例如超过2秒。
[0057] 步骤S04,适配器向网络侧的服务器发送报警消息。
[0058] 在一些可选实施例中,所述报警消息包括适配器的ID、与该适配器相关联的设备 的当前运行数据。
[0059] 在一些优选实施例中,所述报警消息还包括该适配器的位置信息,经度、缔度和高 度等信息。
[0060] 步骤S05,服务器收到报警消息后解析报警消息,获得设备的当前运行数据。其中, 设备的当前运行数据由各子信息承载。
[0061] 步骤S06,根据设备的当前运行数据判断设备的运行状态。
[0062] 在一些可选实施例中,可W根据设备当前运行数据之间的逻辑合理性判断设备的 运行状态;如果设备当前运行数据之间符合正常运行的逻辑关系,则判断设备的运行状态 正常;否则,判断设备的运行状态异常。
[0063] 步骤S07,当设备运行状态异常时,显示报警消息、适配器的ID及所述设备的当前 运行数据。
[0064] 在一些优选实施例中,所述报警消息还包括该适配器的位置信息,经度、缔度和高 度等信息。运样,服务器就能够获得适配器的位置,并将适配器的位置一并显示。
[0065] 在一些可选实施例中,当设备运行状态正常时,显示报警信息,但不显示适配器的 ID及其所述设备当前运行数据。
[0066] 在一些可选实施例中,服务器收到报警消息后,除执行步骤S05、步骤S06和步骤 S07外,还会执行下述流程:
[0067] 步骤11,确定报警消息中每一子信息的数据类型;
[0068] 步骤12,建立每一子信息及其数据类型与所述报警消息接收时刻及适配器的关联 关系;
[0069] 步骤13,保存所述关联关系。
[0070] 在一些可选实施例中,所述用于报警的方法包括:
[0071 ]接收适配器发送的报警消息,所述报警消息包括所述适配器ID W及与所述适配器 相关联的设备的当前运行数据;
[0072] 解析所述报警消息获得所述设备的当前运行数据;
[0073] 根据所述设备的当前运行数据判断所述设备的运行状态;
[0074] 当所述设备运行状态异常时,显示所述报警消息、所述适配器的ID及所述设备的 当前运行数据;
[0075] 其中,所述报警消息包括一个或多个子信息;
[0076] 所述用于报警的方法还包括:
[0077] 确定报警消息中每一子信息的数据类型;
[0078] 建立每一子信息及其数据类型与所述报警消息接收时刻及适配器的关联关系;
[0079] 保存所述关联关系。
[0080] 在一些说明性实施例中,子信息的数据类型包括但不限于W下几种:
[0081] 状态(STA)类型数据;
[0082] 事件化VNT)类型数据;
[0083] 故障(FLT)类型数据;
[0084] 报警(ALT)类型数据;
[00化]设置(SET)类型数据。
[0086] 在一些可选实施例中,每一适配器可能上传的子信息是被预先知道的,从而可W 根据实际需要,为部分或全部子信息设置数据类型,预先建立该适配器每一子信息的Key与 数据类型之间的对应关系。
[0087] 采用本文实施例所述的方法,服务器能够对报警消息中的子信息按数据类型进行 分类管理,并能够从接收时间和数据来源等多个方面对数据信息进行综合管理,从而使得 系统能够有序地管理来自大量适配器的报警信息,进而能够提高系统对数据信息的处理效 率。
[0088] 在另一些可选实施例中,服务器收到报警消息后,除执行步骤S05、步骤S06和步骤 S07外,还会执行下述流程:
[0089] 步骤11,确定报警消息中每一子信息的数据类型;
[0090] 步骤22,建立每一子信息及其数据类型与所述报警消息接收时刻的关联关系;
[0091] 步骤13,保存所述关联关系。
[0092] 在一些可选实施例中,所述用于报警的方法包括:
[0093] 接收适配器发送的报警消息,所述报警消息包括所述适配器IDW及与所述适配器 相关联的设备的当前运行数据;
[0094] 解析所述报警消息获得所述设备的当前运行数据;
[0095] 根据所述设备的当前运行数据判断所述设备的运行状态;
[0096] 当所述设备运行状态异常时,显示所述报警消息、所述适配器的ID及所述设备的 当前运行数据;
[0097] 其中,所述报警消息包括一个或多个子信息;
[0098] 所述用于报警的方法还包括:
[0099] 确定报警消息中每一子信息的数据类型;
[0100] 建立每一子信息及其数据类型与所述报警消息接收时刻的关联关系;
[0101] 保存所述关联关系。
[0102] 在另一些可选实施例中,服务器收到报警消息后,除执行步骤S05、步骤S06和步骤 S07外,还会执行下述流程:
[0103] 步骤11,确定报警消息中每一子信息的数据类型;
[0104] 步骤32,建立每一子信息及其数据类型与适配器的关联关系;
[0105] 步骤13,保存所述关联关系。
[0106] 在一些可选实施例中,所述用于报警的方法包括:
[0107] 接收适配器发送的报警消息,所述报警消息包括所述适配器IDW及与所述适配器 相关联的设备的当前运行数据;
[0108] 解析所述报警消息获得所述设备的当前运行数据;
[0109] 根据所述设备的当前运行数据判断所述设备的运行状态;
[0110] 当所述设备运行状态异常时,显示所述报警消息、所述适配器的ID及所述设备的 当前运行数据;
[0111] 其中,所述报警消息包括一个或多个子信息;
[0112] 所述用于报警的方法还包括:
[0113] 确定报警消息中每一子信息的数据类型;
[0114] 建立每一子信息及其数据类型与适配器的关联关系;
[0115] 保存所述关联关系。
[0116] 采用上述可选实施例的方法,服务器能够对报警消息中的子信息按数据类型进行 分类管理,并能够从接收时间或数据来源等方面对数据信息进行综合管理,从而使得系统 能够有序地管理来自大量适配器的海量报警消息,进而能够提高系统对数据信息的处理效 率。
[0117] 本领域普通技术人员可W意识到,结合本文中所公开的实施例描述的各示例的单 元及算法步骤,能够W电子硬件、或者计算机软件和电子硬件的结合来实现。运些功能究竟 W硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员 可W对每个特定的应用来使用不同方法来实现所描述的功能,但是运种实现不应认为超出 本发明的范围。所属领域的技术人员可W清楚地了解到,为描述的方便和简洁,上述描述的 系统、装置和单元的具体工作过程,可W参考前述方法实施例中的对应过程,在此不再寶 述。
[0118] 在本申请所提供的几个实施例中,应该理解到,所掲露的方法、适配器和服务器实 施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可W 有另外的划分方式,例如多个单元或组件可W结合或者可W集成到另一个系统,或一些特 征可W忽略,或不执行。另一点,所显示或讨论的相互之间的禪合或直接禪合或通信连接可 W是通过一些接口,装置或单元的间接禪合或通信连接,可W是电性,机械或其它的形式。 所述作为分离部件说明的单元可W是或者也可W不是物理上分开的,作为单元显示的部件 可W是或者也可W不是物理单元,即可W位于一个地方,或者也可W分布到多个网络单元 上。可W根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。另外, 在本发明各个实施例中的各功能单元可W集成在一个处理单元中,也可W是各个单元单独 物理存在,也可W两个或两个W上单元集成在一个单元中。
[0119] 所述功能如果W软件功能单元的形式实现并作为独立的产品销售或使用时,可W 存储在一个计算机可读取存储介质中。基于运样的理解,本发明的技术方案本质上或者说 对现有技术做出贡献的部分或者该技术方案的部分可W软件产品的形式体现出来,该计算 机软件产品存储在一个存储介质中,包括若干指令用W使得一台计算机设备(可W是个人 计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而 前述的存储介质包括:U盘、移动硬盘、只读存储器(R0M,ReacK)nly Memo巧)、随机存取存储 器(RAM,Random Access Memory)、磁碟或者光盘等各种可W存储程序代码的介质。
[0120] 最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将 一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示运些实体或操作 之间存在任何运种实际的关系或者顺序。而且,术语"包括"、"包含"或者其任何其他变体意 在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法或者设备不仅包括那些要 素,而且还包括没有明确列出的其他要素,或者是还包括为运种过程、方法或者设备所固有 的要素。在没有更多限制的情况下,由语句"包括一个……"限定的要素,并不排除在包括所 述要素的过程、方法或者设备中还存在另外的相同要素。本说明书中各个实施例采用递进 的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同 相似部分互相参见即可。对于实施例公开的方法、适配器和服务器而言,由于其与实施例公 开的方法部分相对应,所W描述的比较简单,相关之处参见方法部分说明即可。
[0121] 对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。 对运些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的 一般原理可W在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明 将不会被限制于本文所示的运些实施例,而是要符合与本文所公开的原理和新颖特点相一 致的最宽的范围。
【主权项】
1. 一种适配器,其特征在于,包括: 采集单元,用于接收与所述适配器相关联的设备的运行数据; 发送单元,用于向服务器发送信息; 触发单元,用于被用户操作以触发报警事件;和, 计时单元,用于在所述触发单元被触发后开始计时; 所述计时单元的计时达到或超过设定时间阈值时,触发所述发送单元发送报警消息; 所述报警消息包括所述适配器的标识ID以及所述设备的当前运行数据。2. 如权利要求1所述的适配器,其特征在于,所述报警消息还包括所述适配器的位置信 息。3. -种服务器,其特征在于,包括: 第一单元,用于接收适配器发送的报警消息,所述报警消息包括一设备的标识ID以及 该设备的当前运行数据; 第二单元,用于解析所述报警消息获得所述设备的当前运行数据; 第三单元,用于根据所述设备的当前运行数据判断所述设备的运行状态;和, 显示单元,用于当所述设备运行状态异常时,显示所述报警消息、所述适配器的标识ID 及所述设备的当前运行数据。4. 如权利要求3所述的服务器,其特征在于,所述报警消息还包括所述适配器的位置信 息;当所述设备运行状态异常时,所述显示单元还显示所述适配器的位置信息。5. 如权利要求3或4所述的服务器,其特征在于,所述第三单元根据所述设备的当前运 行数据之间的逻辑合理性判断所述设备的运行状态; 如果所述设备的当前运行数据之间符合正常运行的逻辑关系,则判断所述设备的运行 状态正常;否则,判断所述设备的运行状态异常。6. -种用于报警的方法,用于适配器,其特征在于,包括: 报警事件被触发; 检测报警事件被持续触发的时长; 触发时长达到或超过设定时间阈值时,向网络侧发送报警消息; 所述报警消息包括适配器的标识ID以及与所述适配器相关联的设备的当前运行数据。7. 如权利要求6所述的方法,其特征在于,所述报警消息还包括所述适配器的位置信 息。8. -种用于报警的方法,其特征在于,包括: 接收适配器发送的报警消息,所述报警消息包括所述适配器的标识ID以及与所述适配 器相关联的设备的当前运行数据; 解析所述报警消息获得所述设备的当前运行数据; 根据所述设备的当前运行数据判断所述设备的运行状态; 当所述设备运行状态异常时,显示所述报警消息、所述适配器的ID及所述设备的当前 运行数据。9. 如权利要求8所述的方法,其特征在于,所述报警消息还包括所述适配器的位置信 息;当所述设备运行状态异常时,还显示所述适配器的位置信息。10. 如权利要求8或9所述的方法,其特征在于,根据所述设备的当前运行数据之间的逻 辑合理性判断所述设备的运行状态; 如果所述设备的当前运行数据之间符合正常运行的逻辑关系,则判断所述设备的运行 状态正常;否则,判断所述设备的运行状态异常。
【文档编号】H04L12/24GK105847064SQ201610328962
【公开日】2016年8月10日
【申请日】2016年5月17日
【发明人】吴刚, 刘往, 秦国庆
【申请人】深圳市智物联网络有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1