added uniform data generation with range tests