comments
working
wtf
add shuffle algorithm