Suraromu a.k.a. Slalom is a puzzle invented by Nikoli. You can find Nikoli’s explanation page here.
Rules
1. Create a single looping path through white cells. The path cannot branch or intersect or occupy a cell more than once. The path must move orthogonally (not diagonally) between cells.
2. Gates drawn as a dashed line must be passed through once and only once. The path must pass straight through the gate without turning.
3. The number in the circle indicates the total number of gates. This circle must be part of the looping path.
4. Starting from the circle, gates must be passed through in a specific order, indicated by numbers in black cells next to certain gates.