minimize the use of pr1 and pr2 as much as possible