copyright(c) 2009 Baba Shunsuke