#include<bits/stdc++.h>
using namespace std;
int n,m;
int fx[2]={1,0};
int fy[2]={0,1};
int vx[1000],vy[1000],k=1;
void dfs(int x,int y,int step){
if(x==n&&y==m){
printf("%d:",k++);
for(int i=1;i<=step;i++){
printf("%d,%d",vx[i],vy[i]);
if(i<step) printf("->");
}
printf("\n");
return;
}
for(int i=0;i<=1;i++){
int tx=x+fx[i];
int ty=y+fy[i];
if(tx>=1&&tx<=n&&ty>=1&&ty<=m){
vx[step+1]=tx;
vy[step+1]=ty;
dfs(tx,ty,step+1);
}
}
}
int main(){
scanf("%d%d",&n,&m);
vx[1]=1;
vy[1]=1;
dfs(1,1,1);
}
/**************************************************************
Problem: 1360
User: admin
Language: C++
Result: Accepted
Time:9 ms
Memory:2084 kb
****************************************************************/