restructure prog