We consider the problem of sharing water among agents located along a river. Each agent's benefit depends on the amount of water consumed. An allocation of water is efficient when it maximizes total benefits. To sustain an efficient water allocation the agents can compensate each other by monetary transfers. Every water allocation and transfer schedule yield a welfare distribution, where an agent's utility equals its benefit plus (possibly negative) monetary transfer. The problem of finding a fair welfare distribution can be modeled by a cooperative game. We consider river situations with satiable agents and multiple springs. We propose the class of weighted hierarchical solutions, including the downstream incremental solution of Ambec and ...