# Language
c

# Context

    1 5
    1    0    0    0    1
0

# Number of statments
3

1
# { (i,j,k,l,m,n) | i-2 >= 0, -i+n-1 >= 0, j-2 >= 0, -j+m-1 >= 0, k-1 >= 0, -k+l >= 0, 1 >= 0 }

    7 8
    1    1    0    0    0    0    0   -2
    1   -1    0    0    0    0    1   -1
    1    0    1    0    0    0    0   -2
    1    0   -1    0    0    1    0   -1
    1    0    0    1    0    0    0   -1
    1    0    0   -1    1    0    0    0
    1    0    0    0    0    0    0    1

0 0 0
1
# { (i,j,k,l,m,n) | i-2 >= 0, -i+n-1 >= 0, j-2 >= 0, -j+m-1 >= 0, k-1 >= 0, -k+l >= 0, 1 >= 0 }

    7 8
    1    1    0    0    0    0    0   -2
    1   -1    0    0    0    0    1   -1
    1    0    1    0    0    0    0   -2
    1    0   -1    0    0    1    0   -1
    1    0    0    1    0    0    0   -1
    1    0    0   -1    1    0    0    0
    1    0    0    0    0    0    0    1

0 0 0
1
# { (i,j,k,l,m,n) | i-2 >= 0, -i+n-1 >= 0, j-2 >= 0, -j+m-1 >= 0, k-2 >= 0, -k+l-1 >= 0, 1 >= 0 }

    7 8
    1    1    0    0    0    0    0   -2
    1   -1    0    0    0    0    1   -1
    1    0    1    0    0    0    0   -2
    1    0   -1    0    0    1    0   -1
    1    0    0    1    0    0    0   -2
    1    0    0   -1    1    0    0   -1
    1    0    0    0    0    0    0    1

0 0 0
0
# Scattering functions
3

    8 15
    0    1    0    0    0    0    0    0    0    0    0    0    0    0    0
    0    0    1    0    0    0    0    0   -1    0    0    0    0    0    0
    0    0    0    1    0    0    0    0    0    0    0    0    0    0    0
    0    0    0    0    1    0    0    0    0   -2    0    0    0    0    1
    0    0    0    0    0    1    0    0    0    0    0    0    0    0    0
    0    0    0    0    0    0    1    0    0    0   -1    0    0    0    0
    0    0    0    0    0    0    0    1    0    0    0    0    0    0    0
    1    0    0    0    0    0    0    0    0    0    0    0    0    0    1


    8 15
    0    1    0    0    0    0    0    0    0    0    0    0    0    0    0
    0    0    1    0    0    0    0    0   -1    0    0    0    0    0    0
    0    0    0    1    0    0    0    0    0    0    0    0    0    0    0
    0    0    0    0    1    0    0    0    0   -2    0    0    0    0    1
    0    0    0    0    0    1    0    0    0    0    0    0    0    0    0
    0    0    0    0    0    0    1    0    0    0   -1    0    0    0    0
    0    0    0    0    0    0    0    1    0    0    0    0    0    0   -1
    1    0    0    0    0    0    0    0    0    0    0    0    0    0    1


    8 15
    0    1    0    0    0    0    0    0    0    0    0    0    0    0    0
    0    0    1    0    0    0    0    0   -1    0    0    0    0    0    0
    0    0    0    1    0    0    0    0    0    0    0    0    0    0    0
    0    0    0    0    1    0    0    0    0   -2    0    0    0    0    0
    0    0    0    0    0    1    0    0    0    0    0    0    0    0   -1
    0    0    0    0    0    0    1    0    0    0   -1    0    0    0    0
    0    0    0    0    0    0    0    1    0    0    0    0    0    0    0
    1    0    0    0    0    0    0    0    0    0    0    0    0    0    1

0
