revise software rev rec algo