/* Generated from ../../../git/cloog/test/./reservoir/lim-lam5.cloog by CLooG 0.14.0-136-gb91ef26 gmp bits in 0.01s. */
if (M >= 1) {
  for (c2=1;c2<=M;c2++) {
    for (c4=1;c4<=M;c4++) {
      S1(c2,c4) ;
    }
  }
  for (c2=1;c2<=M;c2++) {
    for (c4=1;c4<=M;c4++) {
      S2(c2,c4) ;
    }
  }
  for (c2=1;c2<=M;c2++) {
    for (c4=1;c4<=M;c4++) {
      S3(c2,c4) ;
    }
  }
}
