ver 1.1 - first modify