added random generators, and fill() for untouched properties