CN104461611A - 一种rack机柜批量刷新节点bios的方法 - Google Patents

一种rack机柜批量刷新节点bios的方法 Download PDF

Info

Publication number
CN104461611A
CN104461611A CN201410615983.XA CN201410615983A CN104461611A CN 104461611 A CN104461611 A CN 104461611A CN 201410615983 A CN201410615983 A CN 201410615983A CN 104461611 A CN104461611 A CN 104461611A
Authority
CN
China
Prior art keywords
node
rack
refresh
refreshing
bios
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201410615983.XA
Other languages
English (en)
Inventor
孙玉超
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur Electronic Information Industry Co Ltd
Original Assignee
Inspur Electronic Information Industry Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Inspur Electronic Information Industry Co Ltd filed Critical Inspur Electronic Information Industry Co Ltd
Priority to CN201410615983.XA priority Critical patent/CN104461611A/zh
Publication of CN104461611A publication Critical patent/CN104461611A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

本发明公开了一种RACK机柜批量刷新节点BIOS的方法,其具体实现过程为:将机柜中的全部节点按照物理位置从下到上顺序设置节点名称并分配IP地址,分配完成后配置好ssh并自动登陆;登陆至各个节点,并执行指定命令后转入后台;将刷新工具与待刷BIOS固件rom文件拷入待测节点;执行BIOS刷新工具,进行BIOS刷新升级作业;重启节点,抓取节点BIOS版本信息,验证是否刷新成功。该一种RACK机柜批量刷新节点BIOS的方法与现有技术相比,大量节省了逐个节点刷新BIOS的时间,避免重复操作造成的错误,实用性强,适用范围广泛。

Description

一种RACK机柜批量刷新节点BIOS的方法
技术领域
本发明涉及服务器BIOS刷新技术,具体地说是一种实用性强、RACK机柜批量刷新节点BIOS的方法。
背景技术
随着目前测试技术的不断发展,各种测试工具、测试软件及方法被越来越多的应用于服务器产品及各种部件的测试。
高密度服务器机柜-Smart Rack通常包含20至40个相同结构与配置的服务器节点,在测试和日常维护的过程中,需要对这些节点的BIOS进行固件升级刷。通常情况下,刷新升级一个4M的BIOS固件,在Linux系统下大约需要3至5分钟,如果在每个节点逐个进行刷新,则会需要一个小时以上的甚至两小时的时间,而且在大量重复操作的情况下,难免会出现一些难以避免的错误。
基于此,现提供一种RACK机柜批量刷新节点BIOS的方法,该刷新方法可以在Linux系统下快速简便高效的对整个机柜的全部节点,进行BIOS同步刷新作业,由于刷新命令已经整合在脚本中,也避免了在重复操作中出现的错误。
发明内容
本发明的技术任务是针对以上不足之处,提供一种实用性强、RACK机柜批量刷新节点BIOS的方法。
一种RACK机柜批量刷新节点BIOS的方法,其具体实现过程为:
一、前置工作:将机柜中的全部节点按照物理位置从下到上顺序设置节点名称并分配IP地址,分配完成后配置好ssh并自动登陆;依次点亮所有节点的BMC标识LED,检测各节点网络是否通畅,通常后则进入下一步;
二、批量刷新节点BIOS:
1)登陆至各个节点,并执行指定命令后转入后台;
2)将刷新工具与待刷BIOS固件rom文件拷入待测节点;
3)执行BIOS刷新工具,进行BIOS刷新升级作业;
4)重启节点,抓取节点BIOS版本信息,验证是否刷新成功。
所述登陆至各个节点的详细过程为:执行登陆脚本程序,通过该脚本程序为ssh远程登陆至当前循环到的节点ip地址,最后通过命令转入后台操作,直接循环至下一步。
所述步骤2)的详细过程为:将BIOS刷新工具afulnx与待刷新升级的BIOS固件rom文件拷贝到目标节点的具体目录下,此处目标节点即为上述步骤中当前循环至的节点ip。
所述步骤3)的详细过程为:加载刷新工具afulnx所需驱动amifldrv_mod.o;执行刷新工具afulnx刷入需要的rom文件;将上述部分整合为一个脚本,在登陆后使用,完成刷新作业。
所述步骤4)中通过dmidecode命令读取节点BIOS版本信息后,将节点号和节点信息顺序存入文档以便检查刷新是否成功。
本发明的一种RACK机柜批量刷新节点BIOS的方法,具有以下优点:
该发明的一种RACK机柜批量刷新节点BIOS的方法可以快速、高效、准确的对RACK机柜上的全部节点进行同步刷新作业,大大节省了操作工时,并且由于全部指令已预先写入脚本,还避免了在手动刷新时,由于大量重复操作造成的指令输入错误;不仅在测试工作中提高了工作效率,对服务器后期的维护工作也提供了便捷,实用性强,适用范围广泛,易于推广。
具体实施方式
本发明提供一种RACK机柜批量刷新节点BIOS的方法,该方法基于Linux操作系统下的bash脚本编写而成。采用其中一个节点作为控制节点,将所需固件文件与刷新工具,以及刷新工具所需要的驱动文件拷贝到全部节点。随后执行刷新工作。刷新完成后重新启动操作系统,自动检查全部节点的BIOS版本并生成文档,以便于对升级结果进行检查。至此完成全部刷新工作。其具体实现过程为:
一、前置工作:将机柜中的全部节点按照物理位置从下到上顺序设置节点名称并分配IP地址,例如cu1/192.168.1.1;cu2/192.168.1.2;……;cu40/192.168.1.40。分配完成后配置好ssh自动登陆。由于本方法的核心内容不在于此,所以具体配置方法略过。
然后通过命令:
For i in {1..40}
dosshcu$iipmitool chassis identify。
依次点亮所有节点的BMC标识LED,检测各节点网络是否通畅。检测完成后即可应用本文中介绍的方法进行BIOS刷新作业。
二、批量刷新节点BIOS:
1)登陆至各个节点,并执行指定命令后转入后台;
2)将刷新工具与待刷BIOS固件rom文件拷入待测节点;
3)执行BIOS刷新工具,进行BIOS刷新升级作业;
4)重启节点,抓取节点BIOS版本信息,验证是否刷新成功。
所述登陆至各个节点的详细过程为:
#!/bin/bash
functionlogon()。
此处命名程序为logon。
{ssh $1  $2  }。
logon程序主体为ssh远程登陆至$1($1此部分定义为节点ip地址),执行$2($2为实现后续各部分功能的具体程序)。
fori in {1..40}。
定义参数“i”从1循环至40。
Do
执行以下操作:
echo  "-----------$i--------" 。
显示循环至当前“i”的值:
logon  192.168.1.$i "$1" &。
执行logon程序,登陆至当前循环至节点的ip,并执行“$1”(此处$1不同于前面定义程序时的$1,而是代表前面的$2),最后的“&”符号则表示此命令转入后台操作,可直接循环至下一步,此处比较重要,如果没有这个命令,本程序则会完成所执行的命令才会继续循环程序,造成运行时间上的增加。
Done。
程序结束。
所述步骤2)中将刷新工具与待刷BIOS固件rom文件拷入待测节点的具体过程为:
#!/bin/bash
functionscopy()。
命名程序为scopy。
{scp $1 $2 $3}。
scopy程序主体为远程拷贝scp,将$1(BIOS刷新工具afulnx,如果当前机柜的全部节点已经预装了相同版本的afulnx工具,则此项可略过)与$2(刷新升级的BIOS固件rom文件)拷贝到$3(目标节点的具体目录下,此处$3延用第一部分中当前循环至的节点ip)。
scopyafulnx rom 192.168.1.$i:/root/BIOS/。
执行scopy程序,将本地的BIOS刷新工具afulnx和rom文件远程拷贝到当前循环至节点的根目录BIOS文件夹内。
Done。
程序结束。
所述步骤3)中执行BIOS刷新工具,进行BIOS刷新升级作业的详细过程为:此步骤必须结合logon程序使用,作为logon程序的$2部分。
cd /root/BIOS/。
进入到根目录BIOS文件夹内。
/sbin/insmod amifldrv_mod.o。
加载刷新工具afulnx所需驱动amifldrv_mod.o,如有需要在第二部分中可预先将此驱动文件拷贝到文件夹内。
/afulnxrom /n /b /p /x。
执行刷新工具afulnx刷入需要的rom文件,其中/n /b /p /x为刷新工具afulnx运行所需参数,/n为编写NVRAM文件,/b为编写启动模块,/p为编写全部BIOS,/x为不检查rom文件的识别信息。
将上述部分整合为一个脚本,在logon部分后使用,即可完成刷新作业。
所述步骤4)中重启节点后抓取节点BIOS版本信息,以验证是否刷新成功的详细步骤为:
首先将脚本放置在etc/rc.d/rc.local中,作为开机自启动部分,reboot节点后执行以下操作。
fori in {1..40}
定义参数“i”从1循环至40。
do echo“cu$i”>> check.txt。
将当前循环至节点的名称写入check.txt文档。
ssh 192.168.1.$i dmidecode | grep“BIOS Information” –A 5 |grep Version>> check.txt。
在dmidecode中抓取BIOS版本号信息,写入check.txt。
Done。
完成操作。
由于节点号与节点信息是顺序写入check.txt,所以在check.txt中可以很直观的检查所有节点的BIOS版本号以验证刷新作业是否成功。
将上述四部分整合为一个脚本,即可完成全部刷新作业并检查刷新是否成功。
上述方法是一种快捷方便、易操作、并能避免人工出错的批量刷新各节点BIOS的方法。它可以实现自动将BIOS的BIN文件传输到各个节点,并且完成BIOS的刷新。能帮助我们快速准确的完成大量节点的BIOS刷新升级工作。
上述具体实施方式仅是本发明的具体个案,本发明的专利保护范围包括但不限于上述具体实施方式,任何符合本发明的一种RACK机柜批量刷新节点BIOS的方法的权利要求书的且任何所述技术领域的普通技术人员对其所做的适当变化或替换,皆应落入本发明的专利保护范围。

Claims (5)

1.一种RACK机柜批量刷新节点BIOS的方法,其特征在于,其具体实现过程为:
一、前置工作:将机柜中的全部节点按照物理位置从下到上顺序设置节点名称并分配IP地址,分配完成后配置好ssh并自动登陆;依次点亮所有节点的BMC标识LED,检测各节点网络是否通畅,通常后则进入下一步;
二、批量刷新节点BIOS:
1)登陆至各个节点,并执行指定命令后转入后台;
2)将刷新工具与待刷BIOS固件rom文件拷入待测节点;
3)执行BIOS刷新工具,进行BIOS刷新升级作业;
4)重启节点,抓取节点BIOS版本信息,验证是否刷新成功。
2.根据权利要求1所述的一种RACK机柜批量刷新节点BIOS的方法,其特征在于,所述登陆至各个节点的详细过程为:执行登陆脚本程序,通过该脚本程序为ssh远程登陆至当前循环到的节点ip地址,最后通过命令转入后台操作,直接循环至下一步。
3.根据权利要求1所述的一种RACK机柜批量刷新节点BIOS的方法,其特征在于,所述步骤2)的详细过程为:将BIOS刷新工具afulnx与待刷新升级的BIOS固件rom文件拷贝到目标节点的具体目录下,此处目标节点即为上述步骤中当前循环至的节点ip。
4.根据权利要求1所述的一种RACK机柜批量刷新节点BIOS的方法,其特征在于,所述步骤3)的详细过程为:加载刷新工具afulnx所需驱动amifldrv_mod.o;执行刷新工具afulnx刷入需要的rom文件;将上述部分整合为一个脚本,在登陆后使用,完成刷新作业。
5.根据权利要求1所述的一种RACK机柜批量刷新节点BIOS的方法,其特征在于,所述步骤4)中通过dmidecode命令读取节点BIOS版本信息后,将节点号和节点信息顺序存入文档以便检查刷新是否成功。
CN201410615983.XA 2014-11-05 2014-11-05 一种rack机柜批量刷新节点bios的方法 Pending CN104461611A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410615983.XA CN104461611A (zh) 2014-11-05 2014-11-05 一种rack机柜批量刷新节点bios的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410615983.XA CN104461611A (zh) 2014-11-05 2014-11-05 一种rack机柜批量刷新节点bios的方法

Publications (1)

Publication Number Publication Date
CN104461611A true CN104461611A (zh) 2015-03-25

Family

ID=52907716

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410615983.XA Pending CN104461611A (zh) 2014-11-05 2014-11-05 一种rack机柜批量刷新节点bios的方法

Country Status (1)

Country Link
CN (1) CN104461611A (zh)

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105068920A (zh) * 2015-07-17 2015-11-18 浪潮电子信息产业股份有限公司 一种基于shell测试rack资产信息稳定性的方法
CN105183497A (zh) * 2015-07-21 2015-12-23 浪潮电子信息产业股份有限公司 一种通用服务器自动批量刷新bios的方法
CN105242947A (zh) * 2015-10-08 2016-01-13 浪潮集团有限公司 一种批量升级bios的方法
CN105260208A (zh) * 2015-10-10 2016-01-20 浪潮电子信息产业股份有限公司 一种服务器自动批量刷新raid卡驱动的方法
CN105373400A (zh) * 2015-10-14 2016-03-02 浪潮电子信息产业股份有限公司 一种基于RACK机柜节点中板的手动刷新firmware的方法
CN105589717A (zh) * 2015-12-10 2016-05-18 浪潮电子信息产业股份有限公司 一种基于ssh服务的批量bios刷新方法
CN105867975A (zh) * 2016-04-01 2016-08-17 浪潮电子信息产业股份有限公司 一种基于linux平台的批量刷新bmc的方法
CN105893097A (zh) * 2016-04-25 2016-08-24 浪潮电子信息产业股份有限公司 一种处理bios的选项信息的方法及装置
CN106445591A (zh) * 2016-09-19 2017-02-22 郑州云海信息技术有限公司 一种服务器自动批量刷raid卡fw的方法
CN106681738A (zh) * 2017-01-05 2017-05-17 郑州云海信息技术有限公司 一种基于Map String对Rack服务器修改BIOS当前值的方法
CN106713053A (zh) * 2017-02-19 2017-05-24 郑州云海信息技术有限公司 基于Linux的批量升级服务器固件的方法及其装置
CN106775877A (zh) * 2016-12-22 2017-05-31 郑州云海信息技术有限公司 一种固件刷新方法及一种服务器
CN106919078A (zh) * 2015-12-26 2017-07-04 昆达电脑科技(昆山)有限公司 机柜韧体自动同步系统及其方法
CN107153557A (zh) * 2017-05-05 2017-09-12 郑州云海信息技术有限公司 一种基于linux系统下对BIOS进行操作的装置及方法
CN107402753A (zh) * 2017-06-30 2017-11-28 郑州云海信息技术有限公司 一种硬盘固件的刷新方法及装置
CN107562584A (zh) * 2017-07-25 2018-01-09 郑州云海信息技术有限公司 一种校验刷新整机柜中存储设备成功率的方法
CN107943498A (zh) * 2017-11-27 2018-04-20 郑州云海信息技术有限公司 一种批量刷新sr整机柜中jbod节点固件的方法
CN108089875A (zh) * 2017-11-23 2018-05-29 郑州云海信息技术有限公司 一种批量刷新nvme盘fw的方法
CN108718255A (zh) * 2018-06-11 2018-10-30 郑州云海信息技术有限公司 一种快速读取服务器系统资产信息的方法及系统
CN109189441A (zh) * 2018-09-28 2019-01-11 郑州云海信息技术有限公司 一种升级基本输入输出系统bios的方法和装置
CN109491909A (zh) * 2018-11-07 2019-03-19 郑州云海信息技术有限公司 一种cpld刷新验证方法、装置、终端及存储介质
CN111290774A (zh) * 2020-02-24 2020-06-16 深圳忆联信息系统有限公司 基于Windows系统的固态硬盘固件批量升级方法和装置
CN114253618A (zh) * 2021-12-20 2022-03-29 东莞记忆存储科技有限公司 基于不同厂商的bios修改方法、装置、计算机设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6990577B2 (en) * 2001-08-10 2006-01-24 Intel Corporation Updating a BIOS image by replacing a portion of the BIOS image with a portion of another BIOS image
CN101604246A (zh) * 2009-07-16 2009-12-16 浪潮电子信息产业股份有限公司 一种通用主板bios的自动批量刷新方法
CN103593211A (zh) * 2013-11-01 2014-02-19 浪潮电子信息产业股份有限公司 一种带外隔离刷写固件程序的方法
CN103984584A (zh) * 2014-06-05 2014-08-13 浪潮电子信息产业股份有限公司 一种BIOS firmware的远程带外更新方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6990577B2 (en) * 2001-08-10 2006-01-24 Intel Corporation Updating a BIOS image by replacing a portion of the BIOS image with a portion of another BIOS image
CN101604246A (zh) * 2009-07-16 2009-12-16 浪潮电子信息产业股份有限公司 一种通用主板bios的自动批量刷新方法
CN103593211A (zh) * 2013-11-01 2014-02-19 浪潮电子信息产业股份有限公司 一种带外隔离刷写固件程序的方法
CN103984584A (zh) * 2014-06-05 2014-08-13 浪潮电子信息产业股份有限公司 一种BIOS firmware的远程带外更新方法

Cited By (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105068920A (zh) * 2015-07-17 2015-11-18 浪潮电子信息产业股份有限公司 一种基于shell测试rack资产信息稳定性的方法
CN105068920B (zh) * 2015-07-17 2018-01-02 浪潮电子信息产业股份有限公司 一种基于shell测试rack资产信息稳定性的方法
CN105183497A (zh) * 2015-07-21 2015-12-23 浪潮电子信息产业股份有限公司 一种通用服务器自动批量刷新bios的方法
CN105242947A (zh) * 2015-10-08 2016-01-13 浪潮集团有限公司 一种批量升级bios的方法
CN105260208A (zh) * 2015-10-10 2016-01-20 浪潮电子信息产业股份有限公司 一种服务器自动批量刷新raid卡驱动的方法
CN105373400A (zh) * 2015-10-14 2016-03-02 浪潮电子信息产业股份有限公司 一种基于RACK机柜节点中板的手动刷新firmware的方法
CN105589717A (zh) * 2015-12-10 2016-05-18 浪潮电子信息产业股份有限公司 一种基于ssh服务的批量bios刷新方法
CN106919078A (zh) * 2015-12-26 2017-07-04 昆达电脑科技(昆山)有限公司 机柜韧体自动同步系统及其方法
CN106919078B (zh) * 2015-12-26 2019-03-01 昆达电脑科技(昆山)有限公司 机柜韧体自动同步系统及其方法
CN105867975A (zh) * 2016-04-01 2016-08-17 浪潮电子信息产业股份有限公司 一种基于linux平台的批量刷新bmc的方法
CN105893097A (zh) * 2016-04-25 2016-08-24 浪潮电子信息产业股份有限公司 一种处理bios的选项信息的方法及装置
CN106445591A (zh) * 2016-09-19 2017-02-22 郑州云海信息技术有限公司 一种服务器自动批量刷raid卡fw的方法
CN106775877A (zh) * 2016-12-22 2017-05-31 郑州云海信息技术有限公司 一种固件刷新方法及一种服务器
CN106681738A (zh) * 2017-01-05 2017-05-17 郑州云海信息技术有限公司 一种基于Map String对Rack服务器修改BIOS当前值的方法
CN106713053A (zh) * 2017-02-19 2017-05-24 郑州云海信息技术有限公司 基于Linux的批量升级服务器固件的方法及其装置
CN107153557A (zh) * 2017-05-05 2017-09-12 郑州云海信息技术有限公司 一种基于linux系统下对BIOS进行操作的装置及方法
CN107402753A (zh) * 2017-06-30 2017-11-28 郑州云海信息技术有限公司 一种硬盘固件的刷新方法及装置
CN107402753B (zh) * 2017-06-30 2020-11-27 苏州浪潮智能科技有限公司 一种硬盘固件的刷新方法及装置
CN107562584A (zh) * 2017-07-25 2018-01-09 郑州云海信息技术有限公司 一种校验刷新整机柜中存储设备成功率的方法
CN108089875A (zh) * 2017-11-23 2018-05-29 郑州云海信息技术有限公司 一种批量刷新nvme盘fw的方法
CN107943498A (zh) * 2017-11-27 2018-04-20 郑州云海信息技术有限公司 一种批量刷新sr整机柜中jbod节点固件的方法
CN108718255A (zh) * 2018-06-11 2018-10-30 郑州云海信息技术有限公司 一种快速读取服务器系统资产信息的方法及系统
CN109189441A (zh) * 2018-09-28 2019-01-11 郑州云海信息技术有限公司 一种升级基本输入输出系统bios的方法和装置
CN109491909A (zh) * 2018-11-07 2019-03-19 郑州云海信息技术有限公司 一种cpld刷新验证方法、装置、终端及存储介质
CN111290774A (zh) * 2020-02-24 2020-06-16 深圳忆联信息系统有限公司 基于Windows系统的固态硬盘固件批量升级方法和装置
CN114253618A (zh) * 2021-12-20 2022-03-29 东莞记忆存储科技有限公司 基于不同厂商的bios修改方法、装置、计算机设备及存储介质
CN114253618B (zh) * 2021-12-20 2024-06-18 东莞记忆存储科技有限公司 基于不同厂商的bios修改方法、装置、计算机设备及存储介质

Similar Documents

Publication Publication Date Title
CN104461611A (zh) 一种rack机柜批量刷新节点bios的方法
CN105183497A (zh) 一种通用服务器自动批量刷新bios的方法
CN105260208A (zh) 一种服务器自动批量刷新raid卡驱动的方法
CN106445591A (zh) 一种服务器自动批量刷raid卡fw的方法
US20070204262A1 (en) Facilitating the automated testing of daily builds of software
US7827548B1 (en) Environment-neutral application build
CN108923997B (zh) 一种基于python的云服务节点自动测试方法及装置
CN107402789A (zh) 一种服务器集群自动批量穿透raid卡刷新硬盘fw的方法
CN106775877A (zh) 一种固件刷新方法及一种服务器
US20090006493A1 (en) Method For Enabling Traceability And Recovery From Errors During Migration Of Software Applications
CN106681775A (zh) 一种Linux系统下透过RAID卡实现硬盘固件在线批量升级的方法
CN113515297B (zh) 一种版本更新方法、装置、电子设备及存储介质
US9043781B2 (en) Algorithm for automated enterprise deployments
US20080040633A1 (en) Traceability management apparatus, storage medium storing program, and tracing method
CN105260274A (zh) 一种基于linux下的硬盘随机热拔插稳定性检测方法
CN111831345A (zh) 服务器硬盘背板的管理方法、装置、存储介质和设备
CN110795356B (zh) 基于Ansible实现软件一键式部署与自动化测试的系统及其方法
CN111399861A (zh) 一种软件自动化部署方法及系统
CN106293829A (zh) 一种自动刷新lsi raid卡fw的方法
CN109445800A (zh) 一种基于分布式系统的版本自动部署方法及系统
CN103530142A (zh) 一种基于存储设备的Android系统升级方法和系统
CN111367735B (zh) 一种基于待测服务器和乌班图操作系统的测试方法及系统
CN105653408A (zh) 一种基于bmc ipmitool命令单节点批量控制进行power cycle开关机的测试方法
CN112463466B (zh) 电脑测试方法
CN107357700A (zh) 一种测试nvme硬盘顺序稳定性的方法及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20150325