

unsigned int NOIDEA_binrandlonglongseed(unsigned long long int noidea_seed)
//seed is 64bits
//result vary betweed 0-64
//good for card shuffle
{
	unsigned long long int noidea_tmp = noidea_seed;
	int noidea_result = 0;
	while(noidea_tmp != 0)
	{
		int tmp = noidea_tmp %2;
		noidea_tmp /= 2;
		noidea_result += tmp;
	}
	return tmp;
}

unsigned int NOIDEA_binrandlongseed(unsigned long int noidea_seed)
//seed is 32bits
//result vary between 0-32
//good for some small value
{
	unsigned long long int noidea_tmp = noidea_seed;
	int noidea_result = 0;
	while(noidea_tmp != 0)
	{
		int tmp = noidea_tmp %2;
		noidea_tmp /= 2;
		noidea_result += tmp;
	}
	return tmp;
}
