function ind = zigzag(N)
    % Credit:
    % https://uk.mathworks.com/matlabcentral/newsreader/view_thread/4414
    K = 2;
    M = N-1;
    ind = zeros(1,N*N);
    for i=1:M;
      ind(K:K+i) = [(1+M*rem(i,2)), (-1)^i*M*ones(1,i)];
      K = K+i+1;
    end
    for i=M-1:-1:0
      ind(K:K+i) = [(N-M*rem(i,2)), (-1)^i*M*ones(1,i)];
      K = K+i+1;
    end
    ind = cumsum(ind)+1;

    %% Slides index
%     ind =[
%            1   2   6   7  15  16  28  29
%            3   5   8  14  17  27  30  43
%            4   9  13  18  26  31  42  44
%           10  12  19  25  32  41  45  54
%           11  20  24  33  40  46  53  55
%           21  23  34  39  47  52  56  61
%           22  35  38  48  51  57  60  62
%           36  37  49  50  58  59  63  64];
return