added ability to create non-random distribution