#include<stdio.h>
int d,e;
int rl;
int res[4][3];
int rev=0;
void pushd(int i,int j,int f){
// if(f==0)return;
// if(res[rl-1][2]==f)return;
res[rl][0]=i;
res[rl][1]=j;
res[rl][2]=f;
rl++;
}
void process(int x,int y){
int p,q;
bool usey;
if(y+e>=1 && y+e-x>=0){
usey=true;
p=y+e;
q=p-x;
}
else{
usey=false;
p=x+e;
q=p-y;
}
pushd(0,0,p);
pushd(1,1,q);
pushd(usey,!usey,e);
}
int main(){
int x,y;
scanf("%d%d",&x,&y);
scanf("%d%d",&d,&e);
scanf("%d%d",&x,&y);
rev=0;
res[0][2]=d;
rl=1;
if(y+e>=1 || (x+e>=1&&x+e-y>=0)){
process(x,y);
}
else{
rev=1;
process(d-x-e,d-y-e);
}
printf("%d\n", rl-1);
for(int i=1;i<rl;i++){
printf("%d %d %d\n",
(res[i][0]^rev)+1,
(res[i][1]^rev)+1,
res[i][2]);
}
}
I2luY2x1ZGU8c3RkaW8uaD4KaW50IGQsZTsKaW50IHJsOwppbnQgcmVzWzRdWzNdOwppbnQgcmV2PTA7CnZvaWQgcHVzaGQoaW50IGksaW50IGosaW50IGYpewogIC8vICBpZihmPT0wKXJldHVybjsKICAvLyBpZihyZXNbcmwtMV1bMl09PWYpcmV0dXJuOwogICAgcmVzW3JsXVswXT1pOwogICAgcmVzW3JsXVsxXT1qOwogICAgcmVzW3JsXVsyXT1mOwogICAgcmwrKzsKfQp2b2lkIHByb2Nlc3MoaW50IHgsaW50IHkpewogICAgaW50IHAscTsKICAgIGJvb2wgdXNleTsKICAgIGlmKHkrZT49MSAmJiB5K2UteD49MCl7CiAgICAgICAgdXNleT10cnVlOwogICAgICAgIHA9eStlOwogICAgICAgIHE9cC14OwogICAgfQogICAgZWxzZXsKICAgICAgICB1c2V5PWZhbHNlOwogICAgICAgIHA9eCtlOwogICAgICAgIHE9cC15OwogICAgfQogICAgcHVzaGQoMCwwLHApOwogICAgcHVzaGQoMSwxLHEpOwogICAgcHVzaGQodXNleSwhdXNleSxlKTsKfQppbnQgbWFpbigpewogICAgaW50IHgseTsKICAgIHNjYW5mKCIlZCVkIiwmeCwmeSk7CiAgICBzY2FuZigiJWQlZCIsJmQsJmUpOwogICAgc2NhbmYoIiVkJWQiLCZ4LCZ5KTsKICAgIHJldj0wOwogICAgcmVzWzBdWzJdPWQ7CiAgICBybD0xOwogICAgaWYoeStlPj0xIHx8ICh4K2U+PTEmJngrZS15Pj0wKSl7CiAgICAgICAgcHJvY2Vzcyh4LHkpOwogICAgfQogICAgZWxzZXsKICAgICAgICByZXY9MTsKICAgICAgICBwcm9jZXNzKGQteC1lLGQteS1lKTsKICAgIH0KICAgIHByaW50ZigiJWRcbiIsIHJsLTEpOwogICAgZm9yKGludCBpPTE7aTxybDtpKyspewogICAgICAgIHByaW50ZigiJWQgJWQgJWRcbiIsCiAgICAgICAgICAgICAgIChyZXNbaV1bMF1ecmV2KSsxLAogICAgICAgICAgICAgICAocmVzW2ldWzFdXnJldikrMSwKICAgICAgICAgICAgICAgcmVzW2ldWzJdKTsKICAgIH0KfQ==