adapt to multiple strategies