copyright(C)2007-2010 usagi all rights
 reserved since 2008