Valera has got a rectangle table consisting of *n* rows and *m* columns. Valera numbered the table rows starting from one, from top to bottom and the columns – starting from one, from left to right. We will represent cell that is on the intersection of row *x* and column *y* by a pair of integers (*x*, *y*).

Valera wants to place exactly *k* tubes on his rectangle table. A tube is such sequence of table cells (*x*<sub class="lower-index">1</sub>, *y*<sub class="lower-index">1</sub>), (*x*<sub class="lower-index">2</sub>, *y*<sub class="lower-index">2</sub>), ..., (*x*<sub class="lower-index">*r*</sub>, *y*<sub class="lower-index">*r*</sub>), that: 
 -  *r* ≥ 2; -  for any integer *i* (1 ≤ *i* ≤ *r* - 1) the following equation |*x*<sub class="lower-index">*i*</sub> - *x*<sub class="lower-index">*i* + 1</sub>| + |*y*<sub class="lower-index">*i*</sub> - *y*<sub class="lower-index">*i* + 1</sub>| = 1 holds; -  each table cell, which belongs to the tube, must occur exactly once in the sequence. 
Valera thinks that the tubes are arranged in a fancy manner if the following conditions are fulfilled: 
 -  no pair of tubes has common cells; -  each cell of the table belongs to some tube. 
Help Valera to arrange *k* tubes on his rectangle table in a fancy manner.
The first line contains three space-separated integers *n*, *m*, *k* (2 ≤ *n*, *m* ≤ 300; 2 ≤ 2*k* ≤ *n*·*m*) — the number of rows, the number of columns and the number of tubes, correspondingly.
def solve() :
    l=[]
    l2=[]
    c=0
    it=0
    stn=1
    endn=n
    stm=1
    endm=m
    while True :
        if it%4==0 :
            
            l.extend([stn for x in range(stm,endm+1)])
            l2.extend([x for x in range(stm,endm+1)])
            c+=endm+1-stm
            stn+=1
        elif it%4==1:

            l.extend([x for x in range(stn,endn+1)])
            l2.extend([endm for x in range(stn,endn+1)])
            c+=endn+1-stn
            endm-=1
        elif it%4==2:
            
            l.extend([endn for x in range(endm,stm-1,-1)])
            l2.extend([x for x in range(endm,stm-1,-1)])
            c+=endm-stm+1
            endn-=1
        else :
           
            l.extend([x for x in range(endn,stn-1,-1)])
            l2.extend([stm for x in range(endn,stn-1,-1)])
            c+=endn-stn+1
            stm+=1
        it+=1
        if c>=n*m :
            break
    ans=[]
    for i in range(n*m):
        ans.append((l[i],l2[i]))
    c=0
    for i in range(0,2*(k-1),2):
        print(2,ans[i][0],ans[i][1],ans[i+1][0],ans[i+1][1])
        c+=2
    st=''
    for i in ans[c:]:
        st+=f'{i[0]} {i[1]} '
    print(n*m-c,st)







                    



 
from sys import stdin
input = stdin.readline     

n,m,k= [int(x) for x in input().split()]
solve()



'''

for _ in range(int(input())) :
    print(solve())


n=int(input())

x=input().strip()


n,m= [int(x) for x in input().split()]




n=int(input())
arr=[int(x) for x in input().split()]


n,m= [int(x) for x in input().split()]
arr=[]
for i in range(n):
    arr.append([int(x) for x in input().split()])

n,m= [int(x) for x in input().split()]
arr=[]
for i in range(n):
    arr.append([x for x in input().strip()])


n=int(input())
arr=[]
for i in range(n):
    arr.append([int(x) for x in input().split()])


'''
