better KeyValuesCollectionField & more randomized