 
 
   typedef int GatherResult;
-  static int gatherZero; //this should be set to nVertices + 1
+  static const int gatherZero = INT_MAX - 100000; //this should be set to nVertices + 1
 
 
+  __host__ __device__
   static int gatherReduce(const int& left, const int& right)
   {
     return min(left, right);
   }
 
 
+  __host__ __device__
   static int gatherMap(const VertexData* dst, const VertexData *src, const EdgeData* edge)
   {
     return src->dist + edge->length;
   }
 
 
+  __host__ __device__
   static bool apply(VertexData* vert, int dist)
   {
     bool changed = dist < vert->dist;

#include "util.h"
#include "graphio.h"
#include "refgas.h"

struct SSSP
{

  }


  __host__ __device__
  static void scatter(const VertexData* src, const VertexData *dst, EdgeData* edge)
  {
    //nothing
  }
};


int main(int argc, char** argv)
