ปรับโดย copy มาจาก m81r02