added distributeSupply function