implement module strategy dependency