             cudaclaw_fluxes_t* fluxes = &(array_fluxes_struct[i]);
             int I_q = i*fluxes->num;
 
+            printf("here ...5\n");
             memcpy(fluxes->qold,&s_membuffer[I_q],fluxes->num_bytes);
+            printf("here ...6\n");
+
         }        
     }
 

            int I_q = i*fluxes->num;
            int I_aux = batch_size*fluxes->num + i*fluxes->num_aux;

            memcpy(&s_membuffer[I_q]  ,fluxes->qold ,fluxes->num_bytes);
            memcpy(&s_membuffer[I_aux],fluxes->aux  ,fluxes->num_bytes_aux);

            /* Assign gpu pointers */

        }        

        {
            PROFILE_CUDA_GROUP("Copy buffer to device",7);              
            printf("here ...2\n");
            CHECK(cudaMemcpy(s_membuffer_dev, s_membuffer, bytes, cudaMemcpyHostToDevice));            
        }
    }        

    printf("here ...3\n");

    /* -------------------------------- Work with array --------------------------------*/ 

    //cudaclaw_fluxes_t* array_fluxes_struct_dev = NULL;
    //CHECK(cudaMalloc(&array_fluxes_struct_dev, batch_size*sizeof(cudaclaw_fluxes_t)));

    FCLAW_ASSERT(s_array_fluxes_struct_dev != NULL);

    printf("here ...4\n");
    CHECK(cudaMemcpy(s_array_fluxes_struct_dev, array_fluxes_struct, 
                     batch_size*sizeof(cudaclaw_fluxes_t), 
                     cudaMemcpyHostToDevice));

    printf("here ...5\n");

    dim3 block(128,1,1);
    dim3 grid(1,1,batch_size);
