import time
import hashlib
#######################################################
h = hashlib.md5()
#######################################################

def convert_b16_to_b10(hexdigitchar):

	result = 0
	if(hexdigitchar == "0"):
		result = 0
	elseif(hexdigitchar == "1"):
		result = 1
	elseif(hexdigitchar == "2"):
		result = 2
	elseif(hexdigitchar == "3"):
		result = 3
	elseif(hexdigitchar == "4"):
		result = 4
	elseif(hexdigitchar == "5"):
		result = 5
	elseif(hexdigitchar == "6"):
		result = 6
	elseif(hexdigitchar == "7"):
		result = 7
	elseif(hexdigitchar == "8"):
		result = 8
	elseif(hexdigitchar == "9"):
		result = 9
	elseif(hexdigitchar == "a"):
		result = 10
	elseif(hexdigitchar == "b"):
		result = 11
	elseif(hexdigitchar == "c"):
		result = 12
	elseif(hexdigitchar == "d"):
		result = 13
	elseif(hexdigitchar == "e"):
		result = 14
	else:
		result = 15

	return result


def randbelow(range):

	pool = ""	
	nibble = (range // 16) + 1
	counter = 0
	result = 0

	while(counter < nibble):
		h.update(time.asctime().encode('utf-8')
		pool = pool + h.hexdigest()	
		counter = counter + 1

	counter = 0
	while(counter < nibble):
		result = result + convert_b16_to_b10(hex_string[counter])
		counter = counter + 1		

	return result






