use std::collections::{HashMap, HashSet};
use std::num::{NonZeroU128, NonZeroU16, NonZeroU32, NonZeroU64, NonZeroU8, NonZeroUsize, Wrapping};
use enum_derived::Rand;
#[derive(Rand)]
pub enum RandomTypes {
Empty,
Unit(()),
Integers(u8, u16, u32, u64, usize, i8, i16, i32, i64, isize),
Character(char),
Boolean(bool),
FloatingPoint(f32, f64),
EmptyArray([u8; 0]),
Arrays([u8; 32]),
LongTuple((u8, u16, u32, u64, usize, i8, i16, i32, i64, isize, f32, f64)),
Options(Option<char>),
Wrapping(Wrapping<u32>),
String(String),
Vec(Vec<usize>),
NonZero(NonZeroU128, NonZeroU16, NonZeroU32, NonZeroU64, NonZeroU8, NonZeroUsize),
Map(HashMap<u64, Vec<String>>),
Set(HashSet<u64>),
}
fn main() {
for _ in 0..500 {
let _rt = RandomTypes::rand();
}
}