 
 // main routine that executes on the host
 int main(void) {
-    unsigned char x = 6;
-    unsigned char y = 6;
+    unsigned char x = 5;
+    unsigned char y = 5;
 
     std::set_new_handler(outOfMemHandler);
 

    
    CUDA_SAFE_CALL(cudaMemcpy(output, dev_output, outputSize, cudaMemcpyDeviceToHost));

    
    LOG_PRINTF("gpu done...\n");

    bool next = false;

        printf("\n");
    }
}

struct is_valid_struct {
    __host__ __device__ bool operator()(const Board b) {
        return !is_valid(&b);
    }
};


__device__ inline void copy_left(Board *board, int x_max, int y_max) {
    int middle = y_max / 2;
