# language: C
c
# The context (no constraints on parameters)
1 4             # 1 lines and 4 columns
#  m  n  1
1  0  0  0
1
m n

1 # The number of statements

2 # First statement
# The first domain
3 5              # 3 lines and 5 columns
#  i  m  n  1 
1  1  0  0 -1    #  i >= 1
1 -1  0  1  0    #  i <= n
1  1 -1  0  0    #  i >= m
# The second domain
3 5              # 3 lines and 5 columns
#  i  m  n  1 
1  1  0  0 -1    #  i >= 1
1 -1  0  1  0    #  i <= n
1 -1  2  0  0    #  i <= 2*m
0 0 0
0

0
