Hard speed up (18/30)

Hard speed up