dispersion weighting - first commit