Diffrent distribution algorithm (very unclean)