void foo(void)
{
   if (cond_a) {
       fcn_a();
       fcn_b();
   } else {
       fcn_c();
   }

   if (cond_b) {
       fcn_d();
   } else {
       fcn_e();
   }

   if (cond_c) {
       fcn_f();
       fcn_g();
   } else
       fcn_h();

   if (cond_d)
       fcn_i();
   else {
       fcn_j();
       fcn_k();
   }

   if (cond_e)
       fcn_l();
   else
       fcn_m();

   	if (cond_f)
		fcn_n();
	else if (cond_g) {
                fcn_o();
		while (cond_g) {
			fcn_p();
		}
	} else if (cond_h)
		while (cond_i) {
			fcn_q();
			fcn_r();
		}
	else
		fcn_s();
}

/* this next bit test whether vbraces can be successfully converted
 * when the closing brace is in an #ifdef.
 * Note that the author should have braced the code to begin with.
 */
void bar(void)
{
			 if (jiffies >= hw_priv->Counter[ port ].time) {
				hw_priv->Counter[ port ].fRead = 1;
				if (port == MAIN_PORT) {
					hw_priv->Counter[ MAIN_PORT ].time = jiffies + HZ * 6;
				} else
					hw_priv->Counter[ port ].time =

#ifdef SOME_DEFINE
						hw_priv->Counter[ port - 1 ].time + HZ * 2;

#else /* ifdef SOME_DEFINE */
						hw_priv->Counter[ MAIN_PORT ].time + HZ * 2;
#endif /* ifdef SOME_DEFINE */
			}
}

void funct(int v1, int v2, int v3)
{
    if ( v1 )
    {
	if ( v2 ) f1();
    }
    else
    {
	if ( v3 ) f2();
    }
}
