modify by yuri