corridor generation