modified add proccess