             for (mq = 0; mq < meqn; mq++) 
             {
                 I_q = I + mq*zs;
+                fm[I_q] = amdq[mq];
                 fp[I_q] = -apdq[mq]; 
-                fm[I_q] = amdq[mq];
-                //if (order[1] > 0)
-                {
+                if (order[1] > 0)
+                {
+                    amdq_trans[I_q] = amdq[mq];                                        
                     apdq_trans[I_q] = apdq[mq];  
-                    amdq_trans[I_q] = amdq[mq];                                        
                 }
             }
 

            {
                maxcfl = max(maxcfl,fabs(s[mw])*dtdy);

                //if (order[0] == 2)
                {                    
                    I_speeds = I + (mwaves + mw)*zs;
                    speeds[I_speeds] = s[mw];


    */              


    for(thread_index = threadIdx.x; thread_index < num_ifaces; thread_index += blockDim.x)
    { 
        ix = thread_index % ifaces_x;
        iy = thread_index/ifaces_y;

        I =  + (iy + mbc)*ys + (ix + mbc + 1);

        /* Lower left face */
        //if (0 < ix && ix < mx + 1 && iy < my)   
        {
            for(mq = 0; mq < meqn; mq++)
            {
