copyright (C) Motoe Yakiyama all rights reserved.