update randomize
remove some of arguments/call/apply to avoid gc
update doc
refactoring o
update randomize