tune initialize value
refine performance
reduce redundancy codes
refine codes
support random from value and add warning message
separate gui and logic
remove useless codes
first commit