knapsack module