correct strategy impl