add replace func