supports composite modules