need more work for initdistribution