int f (int a, int b){
  int w;
  struct t1 { int x; int y;} v1,v2;
  v1.x = w;
  if (w) w=1;
  v1=v2;
  if (v1.y) v1.x = a;
  v1.y = b;
  a = b;
  return v1.x;
  }
int GG;
int simple (int a, int b){
  int w=3;
  struct t1 { int x; int y;} v1,v2;
  v2.x=3;
  v2.y=5;
  v1=v2;
  return v1.x;
}


int less_simple (int a, int b){
  int w=3;
  struct t1 { int x; int y;} v1,v2,v3;
  v2.x=3;
  v2.y=5;
  v3.x=7;
  v3.y=9;
  v1=a?v2:v3;
  return v1.x;
}

  int w; 
struct t1 { int x; int y;} v1;
 struct t1 v2;
  struct t2 { int x; int y;} v3;

int T[2] = { 1, 1 };
int R1, R2;

int main (int a, int b){
  R1 = 1 + *(int*)((char*)T+2);
  *(char*)T = 2;
  R2 = 1 + T[0];
  v1 = v2;
  v1.x = a+b;
  w =  v1.x;
    if (a) 
{
   
  
    v2.x = a;
    /*  v3.x = b;
    w = w + v2.x + v3.x;*/
    }
  return w;
}

int fonc2 (int a, int b){
  int w;
  struct t1 { int x; int y;} v1;
  v1.x = a+b;
  w =  v1.x;
  return w;
}

void mune (int a, int b){
  v1=v2;
  v1.x = a;
}

int G;

void mtwo (int c1,int c2) {
  if (c1) v1.x = G;
   v1.y = v1.x;
}
