revised persist system