improve link implement