allow strategies and fallback to be specified (rather than custom logic)