use cleaner way to divide call strategies