remove 'step', use map instead
label without super call
Reimplement order step
reimplement as and start
reimplement shuffle and add usage