Hard speed up (16/30)

Hard speed up