updated entire process