Solving the free rider problem