local strategy refactor