int RandInt(int max) { return (FastRand() % (max + 1)); }
float RandFloat() { return (static_cast<float>(FastRand()) / static_cast<float>(RAND_MAX)); }
T RandSelect<T>::Select() { return(min_value+(FastRand()%gap)*pre); }