控制切片灵敏度分布的方法及装置制造方法

文档序号:1257928阅读:308来源:国知局
控制切片灵敏度分布的方法及装置制造方法
【专利摘要】一种控制切片灵敏度分布的方法及装置,所述方法包括:根据获得的窗函数系数序列,生成滤波器的窗函数,所述窗函数中窗函数系数序数值与窗函数系数值具有一一对应关系;根据获得的准直器探测器单元的宽度,生成探测器模拟函数;对所生成的滤波器窗函数与探测器模拟函数进行卷积运算,生成切片灵敏度分布函数,获得所述切片的灵敏度分布。所述方法及装置可以快速地对图像层厚进行精确控制。
【专利说明】控制切片灵敏度分布的方法及装置

【技术领域】
[0001]本发明涉及医疗设备设计【技术领域】,尤其涉及一种控制切片灵敏度分布的方法及
>J-U ρ?α装直。

【背景技术】
[0002]在医用X射线CT中,多排螺旋CT在临床上得到了越来越广泛的使用。多排螺旋CT最重要的特点是具有多排平行的探测器,可以同时采集多个切片的数据。并且探测器的排数呈增加的趋势,最终会成为使用二维探测器阵列的锥形束螺旋CT。随着探测器排数的增加,其体积包容速度性能也越来越好,这使得短时间内进行大范围扫描成为可能。然而临床不仅要求有快的成像速度,而且还要有好的成像质量。在基于多排螺旋CT三维及四维(空间三维加上时间)可视化成像中,纵向(Z轴)分辨力是一个非常重要的因素,探测器排数越多,对其要求越高。CT成像纵向(Ζ轴)分辨力是就是其切片厚度,也就是常说的层厚,而表征层厚的物理量就是切片灵敏度分布曲线(Sect1n Sensitivity Profiles, SSP)的半高全宽(FWHM)。
[0003]目前业界控制切片灵敏度分布的方法是借助切片方向的滤波器实现,为获得具有大的层厚的图像,可以采用如下的方法实现:在Z轴方向多排探测器测量厚度的两倍或三倍的基础上,通过轴向扫描或螺旋扫描使用的探测器收集原始数据,三个或更多的相邻排探测器收集使用一个具有三或多排探测器乘以锥束重建权重和切向权重多排探测器的原始数据,并加权到获得的投影数据上,对投影数据经过滤波反投影处理,以获得图像的像素数据。其中切向权重因子由一个三点或更多点的插值滤波器确定。
[0004]但是,目前通常是由设计人员根据经验,手工调节滤波器的参数,来判断切片方向滤波器的设计效果,进而控制切片的灵敏度分布情况,需要反复调试,效率很低。


【发明内容】

[0005]本发明实施例解决的是现有控制切片灵敏度分布的方法效率低下的技术问题。
[0006]为解决上述问题,本发明实施例提供了一种控制切片灵敏度分布的方法,所述方法包括:根据获得的窗函数系数序列,生成滤波器的窗函数,所述窗函数中窗函数系数序数值与窗函数系数值具有一一对应关系;根据获得的准直器探测器单元的宽度,生成探测器模拟函数;对所生成的滤波器窗函数与探测器模拟函数进行卷积运算,生成切片灵敏度分布函数,获得所述切片的灵敏度分布。
[0007]可选的,所述方法还包括:根据所生成的滤波器的窗函数,生成所述滤波器在频域的响应函数。
[0008]可选的,获得窗函数系数序列包括以下其中至少一种:接收用户输入的窗函数系数序列并存储;接收用户从预设的窗函数系数值中所选择窗函数系数值并存储。
[0009]可选的,所述方法还包括:显示所生成的滤波器的窗函数、探测器模拟函数、切片灵敏度分布函数及所述滤波器在频域的响应函数所对应的函数曲线。
[0010]可选的,所述方法还包括:根据检测到的用户对滤波器的窗函数曲线的拖动动作指令,生成所述拖动动作指令所对应的滤波器的窗函数。
[0011]可选的,所述窗函数序列中处于奇数位置的窗函数系数之和为1,所述窗函数序列中处于偶数位置的窗函数系数之和为I。
[0012]可选的,所述窗函数曲线是对称的或者是非对称的。
[0013]可选的,所述窗函系数序列中窗函数系数的数目小于探测器的排数。
[0014]可选的,所述探测器模拟函数为矩形函数,所述矩形函数的宽度为所述准直器探测单元的宽度。
[0015]为解决上述问题,本发明实施例还提供一种控制切片灵敏度分布的装置,所述装置包括:滤波器单元,用于根据获得的窗函数系数序列,生成滤波器的窗函数,所述窗函数中窗函数系数序数值与窗函数系数值具有一一对应关系;数学模型探测器单元,用于根据获得的准直器探测器单元的宽度,生成探测器模拟函数;切片灵敏度分布生成单元,用于对所述滤波器单元所生成的滤波器窗函数与所述数学模型探测器单元所生成的探测器模拟函数进行卷积运算,生成切片灵敏度分布函数,获得所述切片的灵敏度分布。
[0016]可选的,所述装置还包括:频率响应单元,用于根据所述滤波器单元所生成的滤波器的窗函数,生成所述滤波器在频域的响应函数。
[0017]可选的,所述滤波器单元包括:输入子单元,用于接收用户输入的窗函数系数序列;第一存储子单元,用于存储用户输入的窗函数系数序列。
[0018]可选的,所述滤波器单元包括:第二存储子单元,用于存储可选择的窗函数系数值;选择子单元,用于用户从所述第二存储子单元中存储的窗函数系数值中选择窗函数系数值;第三存储子单元,用于存储用户所选择的窗函数系数值形成的窗函数序列。
[0019]可选的,所述装置还包括:显示单元,用于显示所述滤波器单元、数学模型探测器单元、切片灵敏度分布生成单元以及频率响应单元生成的函数所对应的函数曲线。
[0020]可选的,所述滤波器单元包括:自适应调节子单元,用于根据检测到的用户对滤波器窗函数曲线的拖动动作指令,调节滤波器窗函数曲线的形状。
[0021]可选的,所述窗函系数序列中窗函数系数的数目小于探测器的排数。
[0022]可选的,所述数学模型探测器单元生成的探测器模拟函数为矩形函数,所述矩形函数的宽度为所述准直器探测单元的宽度。
[0023]与现有技术相比,本发明实施例的技术方案具有以下优点:
[0024]由于可以根据获得的窗函数系数序列所生成滤波器的窗函数,以及根据获得的准直器探测器单元的宽度所生成的探测器模拟函数,通过卷积处理,自动生成切片灵敏度分布函数,获得所述切片的灵敏度分布,从而可以快速地对图像层厚进行精确控制。
[0025]进一步地,根据所生成的滤波器的窗函数,自动生成所述滤波器在频域的响应函数,可以便于用户做出更准确迅速的判断。
[0026]而对于所生成的滤波器的窗函数、探测器模拟函数、切片灵敏度分布函数及所述滤波器在频域的响应函数等函数所对应的函数曲线进行显示,可以向用户更直观地模拟出控制切片灵敏度分布的实现效果,因此可以进一步提高效率,也使得系统资源的利用效率更高。
[0027]而通过接收用户输入窗函数系数序列,提供预设的窗函数系数值供用户选择,或者根据检测到的用户对滤波器的窗函数曲线的拖动动作指令等各种途径,自动生成所述拖动指令所对应的滤波器的窗函数,可以提高用户的设计效率,也使得系统资源的利用效率更高。

【专利附图】

【附图说明】
[0028]图1是本发明实施例一中控制切片灵敏度分布的方法流程图;
[0029]图2是本发明实施例二中控制切片灵敏度分布的方法流程图;
[0030]图3是本发明实施例二中的滤波器的窗函数曲线示意图;
[0031]图4a_4b是本发明实施例二中的频率响应曲线示意图;
[0032]图5是本发明实施例二中的矩形函数曲线示意图;
[0033]图6是本发明实施例二中的切片灵敏度分布函数曲线示意图;
[0034]图7是本发明实施例三中控制切片灵敏度分布的装置结构示意图。

【具体实施方式】
[0035]本发明实施例中,可以根据获得的窗函数系数序列,自动生成滤波器的窗函数,根据获得的准直器探测器单元的宽度,自动生成探测器模拟函数,并对所生成的滤波器的窗函数及探测器模拟函数进行卷积运算,自动生成切片灵敏度分布函数,获得所述切片的灵敏度分布,因此从而可以快速地对图像层厚进行精确控制。
[0036]为使本发明的上述目的、特征和优点能够更为明显易懂,下面结合附图对本发明的具体实施例做详细的说明。
[0037]实施例一
[0038]参照图1所示的控制切片灵敏度分布的方法流程图,本实施例具体包括以下步骤:
[0039]S101,根据获得的窗函数系数序列,生成滤波器的窗函数,所述窗函数中窗函数系数序数值与窗函数系数值具有一一对应关系。
[0040]其中,所述窗函数系数序列,是指一组顺序组成的窗函数系数值。
[0041]在具体实施中,可以通过多种方式获取窗函数系数序列。例如,通过接收用户输入的一组顺序组成的窗函数系数值并存储,也可以接收用户从预设的窗函数系数值中所选择窗函数系数值并存储。用户可以从预设的窗函数系数值中进行选择,在具体应用过程中,也可以自定义一些窗函数系数值并存储,以供后续选择使用。
[0042]在具体实施中,所述窗函系数序列中窗函数系数的数目可以小于探测器的排数。其中,窗函数系数序列中窗函数的系数的数目越多,最终所生成的切片灵敏度分布会越精确,但相应的生成速度也会较慢。为兼顾生成速度及生成的灵敏度分布的准确性,用户可以根据经验,确定所需要的窗函数系数的数目。
[0043]所生成的滤波器的窗函数可以采用多种形式的窗函数,例如可以是汉宁(Hanning)窗函数,汉宁窗又称升余弦窗。
[0044]S102,根据获得的准直器探测器单元的宽度,生成探测器模拟函数。
[0045]在具体实施中,采用矩形函数作为一种优选的探测器模拟函数,其中,所述矩形函数的宽度可以为准直器探测器单元的宽度。例如,准直器探测器单元的宽度为2_,则所生成的矩形函数的宽度也为2mm。
[0046]可以理解的是,步骤S102和SlOl并无明确的先后步骤。
[0047]S103,对所生成的滤波器的窗函数与探测器模拟函数进行卷积运算,生成切片灵敏度分布函数,获得所述切片的灵敏度分布。
[0048]例如,对所生成的滤波器的窗函数与矩形函数进行卷积运算,即可生成切片的灵敏度分布函数,用户根据所述切片灵敏度分布函数即可获得所述切片的灵敏度分布,即切片的层厚。
[0049]本实施例中,可以根据获得的窗函数系数序列所生成滤波器的窗函数,以及根据获得的准直器探测器单元的宽度所生成的探测器模拟函数,通过卷积处理,自动生成切片灵敏度分布函数,获得所述切片的灵敏度分布,不需要用户反复的手工调试,因此可以提高控制切片灵敏度分布的效率,并且可以减少多排螺旋CT的滤波器设计中对用户经验的要求。
[0050]在具体实施中,为更加方便用户,还可以在上述实施例基础上作进一步的扩展,例如,可以根据所生成的滤波器的窗函数,生成所述滤波器在频域的响应函数。通过所述滤波器在频域的响应函数可以准确判定出所选择的滤波器的低通效果,便于用户更准确迅速地选择出更合适的低通滤波器。
[0051]为使本领域技术人员更好地理解和实现本发明实施例,以下通过一个具体的应用场景进行详细说明。
[0052]实施例二
[0053]参照图2所示的控制切片灵敏度分布的方法流程图,与前述实施例的不同之处在于,在生成切片灵敏度分布的过程中,还可以实时显示出滤波器的窗函数、矩形函数、切片灵敏度分布函数及所述滤波器在频域的响应函数等各个函数所对应的函数曲线,以更直观地模拟出控制切片灵敏度分布的实现效果,从而进一步提高效率,也使得系统资源的利用效率得到提高。
[0054]例如,用户采用尺寸为80*1.0mm的准直器(其中1.0mm为准直器探测器单元的宽度,80为准直器探测器单元的排数),重建的目标图像的层厚为2_,则可以执行以下步骤:
[0055]S201,根据获得的窗函数系数序列,生成滤波器的窗函数并显示所述窗函数对应的曲线,所述窗函数中窗函数系数序数值与窗函数系数值具有一一对应关系。
[0056]同样可以通过多种方式获取窗函数系数序列。如前所述,可以通过接收用户输入的一组顺序组成的窗函数系数值并存储,或者接收用户从预设的窗函数系数值中所选择窗函数系数值并存储的方式外。此外,由于可以在显示界面上直观显示出滤波器的窗函数对应的曲线,为方便用户操作,可以根据检测到的用户对滤波器的窗函数曲线的拖动动作指令,生成所述拖动动作指令所对应的滤波器的窗函数,从而可以避免用户进行复杂的数据输入或选择。
[0057]在具体实施中,所述窗函数曲线可以是对称的,也可以是非对称的。
[0058]在具体实施中,根据不同情况,窗函数系数值可以有不同的设置。本实施例中,采用增采样的方式,所有窗函数系数之和为2,所述窗函数序列中处于奇数位置的窗函数系数之和为1,所述窗函数序列中处于偶数位置的窗函数系数之和也为I。
[0059]以下为两组窗函数曲线对称的系数序列:
[0060]I) [O, O, O, O, O, 0.25,0.5,0.5,0.5,0.25,O, O, O, O, O];
[0061]2) [0.2,0.1, 0.2,0.4,0.2,0.4,0.2,0.1, 0.2]。
[0062]以下为两组窗函数曲线非对称的系数序列:
[0063]I) [O, O, O, O, O, 0.35,0.5,0.4,0.5,0.25,O, O, O, O, O];
[0064]2) [0.2,0.4,0.2,0.1, 0.2,0.4,0.2,0.1, 0.2]。
[0065]其中,需求说明的是,对称的窗函数曲线,曲线形式较简单,调整半边系数,应用对称的规则即可自适应获得完整的系数,因此可以较快地生成新的窗函数系数。而采用非对称的窗函数曲线,则可以增加生成更多有效合理的窗函数系数的可能性,获得能够满足用户更多需求的灵敏度分布。
[0066]如图3所示的根据用户输入或者选择的窗函数系数序列生成的滤波器的窗函数曲线,其中横坐标表示每个窗函数系数序列值,纵坐标表示窗函数系数值。从图3可以看出,所述窗函数曲线是对称的,所述窗函数系数的数目共有15个,小于准直器中探测器单元的排数。
[0067]S202,根据所生成的滤波器的窗函数,生成所述滤波器在频域的响应函数并显示所述滤波器在频域的响应函数对应的曲线。
[0068]频率响应曲线与窗函数是一一对应的,可以快速直观地判断所采用的滤波器的低通效果。参照图4a_4b所示的频率响应曲线,其中图4a是频域响应振幅曲线图,图4b是频域响应相位曲线图。从图4a中可以看出,低频率段振幅较大,因此低频率段信号允许通过,而高频率段振幅降到零附近,因此高频率段信号被抑制。总体可以看出,所采用的滤波器具有较好的低通效果。结合图4a和图4b,可以看出系统噪声被抑制的程度。
[0069]S203,根据获得的准直器探测器单元的宽度,生成矩形函数并显示所述矩形函数对应的曲线,所述矩形函数的宽度为准直器探测器单元的宽度。
[0070]本实施例中,由于选择的准直器的尺寸为80*1.0mm,因此矩形函数的宽度为1mm,如图5所示。
[0071]S204,对所生成的滤波器窗函数与矩形函数进行卷积运算,生成切片灵敏度分布函数并显示切片灵敏度分布函数对应的曲线,获得所述切片的灵敏度分布。
[0072]参照图6所示的切片灵敏度分布曲线,可以看出,所述曲线的半高全宽(FMHM)为2.0mm,十分之一高宽为3.10556mm,因此采用图3中的窗函数曲线所对应的窗函数系数序列值,模拟得到图像层厚为2mm的设计结果,整个过程由计算机根据输入的参数自动生成,因此可以提高设计效率,并且可以减少多排螺旋CT的滤波器设计中对用户经验的要求。
[0073]而通过接收用户输入窗函数系数序列,提供预设的窗函数系数值供用户选择,或者根据检测到的用户对滤波器的窗函数曲线的拖动动作指令等各种途径,自动生成所述拖动指令所对应的滤波器的窗函数,可以提高用户的设计效率,也使得系统资源的利用效率更高。
[0074]为使本领域技术人员更好地理解和实现本发明实施例,以下参照附图,对实现上述控制切片灵敏度分布的方法的装置进行详细描述。
[0075]实施例三
[0076]本实施例中,参照图7,控制灵敏度切片分布的装置700包括:滤波器单元701、数学模型探测器单元702和切片灵敏度分布生成单元703,其中:
[0077]滤波器单元701,用于根据获得的窗函数系数序列,生成滤波器的窗函数,所述窗函数中窗函数系数序数值与窗函数系数值具有一一对应关系;
[0078]数学模型探测器单元702,用于根据获得的准直器探测器单元的宽度,生成探测器模拟函数;
[0079]切片灵敏度分布生成单元703,用于对滤波器单元701所生成的滤波器窗函数与数学模型探测器单元702所生成的探测器模拟函数进行卷积运算,生成切片灵敏度分布函数,获得所述切片的灵敏度分布。
[0080]在具体实施中,所述窗函系数序列中窗函数系数的数目小于探测器的排数。数学模型探测器单元702所生成的探测器模拟函数可以为矩形函数,所述矩形函数曲线的宽度可以为准直器探测器单元的宽度。
[0081]采用本实施例所述的装置可以自动生成切片灵敏度分布函数,获得所述切片的灵敏度分布,不需要用户反复的手工调整,因此可以提高控制切片灵敏度分布的效率,并且可以减少多排螺旋CT的滤波器设计中对用户经验的要求。
[0082]参照图7,在具体实施中,所述控制切片灵敏度分布的装置还可包括:频率响应单元704,用于根据滤波器单元701所生成的滤波器的窗函数,生成所述滤波器在频域的响应函数。
[0083]其中所述滤波器在频域的响应函数可以包括振幅响应函数和相位响应函数。
[0084]用户通过自动生成所述滤波器在频域的响应函数,对于所采用的滤波器的低通滤波效果可以做出更准确迅速的判断,提高设计效率。
[0085]在具体实施中,滤波器单元701可以包括:输入子单元(图中未示出)和第一存储子单元(图中未示出),其中:
[0086]输入子单元,用于接收用户输入的窗函数系数序列;
[0087]第一存储子单元,用于存储用户输入的窗函数系数序列。
[0088]在具体实施中,所述滤波器单元可以包括:第二存储子单元(图中未示出)、选择子单元(图中未示出)和第三存储子单元(图中未示出),其中:
[0089]第二存储子单元,用于存储可选择的窗函数系数值;
[0090]选择子单元,用于用户从所述第二存储子单元中存储的窗函数系数值中选择窗函数系数值;
[0091]第三存储子单元,用于存储用户所选择的窗函数系数值形成的窗函数序列。
[0092]滤波器单元可以通过上述输入子单元或选择子单元,与用户进行交互,获得用户所确定的窗函数系数序列。
[0093]在具体实施中,为进一步提高设计效率,更直观地模拟出切片灵敏度分布的实际效果,所述控制切片灵敏度分布的装置还可包括:显示单元705,用于显示滤波器单元701、数学模型探测器单元702、切片灵敏度分布生成单元703以及频率响应单元704生成的函数所对应的函数曲线。
[0094]在具体实施中,滤波器单元701还可包括:自适应调节子单元(图中未示出),用于根据检测到的用户对滤波器的窗函数曲线的拖动动作指令,调节滤波器的窗函数曲线的形状,从而可以自动生成用户所需要的窗函数。
[0095]为描述方便,存在多个实施例采用一幅附图进行说明的情况,例如图7中为进行区分,对于一些可选的实施方式采用了虚线形式进行表示,本领域技术人员可以理解,上述方式并不用于限定本发明。
[0096]虽然本发明披露如上,但本发明并非限定于此。任何本领域技术人员,在不脱离本发明的精神和范围内,均可作各种更动与修改,因此本发明的保护范围应当以权利要求所限定的范围为准。
【权利要求】
1.一种控制切片灵敏度分布的方法,其特征在于,包括: 根据获得的窗函数系数序列,生成滤波器的窗函数,所述窗函数中窗函数系数序数值与窗函数系数值具有一一对应关系; 根据获得的准直器探测器单元的宽度,生成探测器模拟函数; 对所生成的滤波器窗函数与探测器模拟函数进行卷积运算,生成切片灵敏度分布函数,获得所述切片的灵敏度分布。
2.如权利要求1所述的控制切片灵敏度分布的方法,其特征在于,还包括: 根据所生成的滤波器的窗函数,生成所述滤波器在频域的响应函数。
3.如权利要求1或2所述的控制切片灵敏度分布的方法,其特征在于,获得窗函数系数序列包括以下其中至少一种: 接收用户输入的窗函数系数序列并存储; 接收用户从预设的窗函数系数值中所选择窗函数系数值并存储。
4.如权利要求2所述的控制切片灵敏度分布的方法,其特征在于,还包括: 显示所生成的滤波器的窗函数、探测器模拟函数、切片灵敏度分布函数及所述滤波器在频域的响应函数所对应的函数曲线。
5.如权利要求4所述的控制切片灵敏度分布的方法,其特征在于,还包括: 根据检测到的用户对滤波器的窗函数曲线的拖动动作指令,生成所述拖动动作指令所对应的滤波器的窗函数。
6.如权利要求4所述的控制切片灵敏度分布的方法,其特征在于,所述窗函数序列中处于奇数位置的窗函数系数之和为1,所述窗函数序列中处于偶数位置的窗函数系数之和为I。
7.如权利要求4所述的控制切片灵敏度分布的方法,其特征在于,所述窗函数曲线是对称的或者是非对称的。
8.如权利要求1所述的控制切片灵敏度分布的方法,其特征在于,所述窗函系数序列中窗函数系数的数目小于探测器的排数。
9.如权利要求1或4所述的控制切片灵敏度分布的方法,其特征在于,所述探测器模拟函数为矩形函数,所述矩形函数的宽度为所述准直器探测单元的宽度。
10.一种控制切片灵敏度分布的装置,其特征在于,包括: 滤波器单元,用于根据获得的窗函数系数序列,生成滤波器的窗函数,所述窗函数中窗函数系数序数值与窗函数系数值具有一一对应关系; 数学模型探测器单元,用于根据获得的准直器探测器单元的宽度,生成探测器模拟函数; 切片灵敏度分布生成单元,用于对所述滤波器单元所生成的滤波器窗函数与所述数学模型探测器单元所生成的探测器模拟函数进行卷积运算,生成切片灵敏度分布函数,获得所述切片的灵敏度分布。
11.如权利要求10所述的控制切片灵敏度分布的装置,其特征在于,还包括: 频率响应单元,用于根据所述滤波器单元所生成的滤波器的窗函数,生成所述滤波器在频域的响应函数。
12.如权利要求10或11所述的控制切片灵敏度分布的装置,其特征在于,所述滤波器单元包括: 输入子单元,用于接收用户输入的窗函数系数序列; 第一存储子单元,用于存储用户输入的窗函数系数序列。
13.如权利要求10或11所述的控制切片灵敏度分布的装置,其特征在于,所述滤波器单元包括: 第二存储子单元,用于存储可选择的窗函数系数值; 选择子单元,用于用户从所述第二存储子单元中存储的窗函数系数值中选择窗函数系数值; 第三存储子单元,用于存储用户所选择的窗函数系数值形成的窗函数序列。
14.如权利要求11所述的控制切片灵敏度分布的装置,其特征在于,还包括: 显示单元,用于显示所述滤波器单元、数学模型探测器单元、切片灵敏度分布生成单元以及频率响应单元生成的函数所对应的函数曲线。
15.如权利要求14所述的控制切片灵敏度分布的装置,其特征在于,所述滤波器单元包括: 自适应调节子单元,用于根据检测到的用户对滤波器窗函数曲线的拖动动作指令,调节滤波器窗函数曲线的形状。
16.如权利要求12所述的控制切片灵敏度分布的装置,其特征在于,所述窗函系数序列中窗函数系数的数目小于探测器的排数。
17.如权利要求12所述的控制切片灵敏度分布的装置,其特征在于,所述数学模型探测器单元生成的探测器模拟函数为矩形函数,所述矩形函数的宽度为所述准直器探测单元的宽度。
【文档编号】A61B6/00GK104337527SQ201310342969
【公开日】2015年2月11日 申请日期:2013年8月7日 优先权日:2013年8月7日
【发明者】周培, 李翔, 其他发明人请求不公开姓名 申请人:上海联影医疗科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1