OLattice<T1> d;  #if QDP_DEBUG >= 3 QDP_info("Map()"); #endif    #if INNER_LOG == 2 const int vvol = Layout::sitesOnNode(); for(int i=0; i < vvol; i+= INNER_LEN) { int ii = i >> INNER_LOG; int o0 = goffsets[i+0] >> INNER_LOG; int i0 = goffsets[i+0] & (INNER_LEN - 1);  int o1 = goffsets[i+1] >> INNER_LOG; int i1 = goffsets[i+1] & (INNER_LEN - 1);  int o2 = goffsets[i+2] >> INNER_LOG; int i2 = goffsets[i+2] & (INNER_LEN - 1);  int o3 = goffsets[i+3] >> INNER_LOG; int i3 = goffsets[i+3] & (INNER_LEN - 1);  #if QDP_DEBUG >= 3 QDP_info("Map(lattice[%d]=lattice([%d,%d],[%d,%d],[%d,%d],[%d,%d])", ii,o0,i0,o1,i1,o2,i2,o3,i3); #endif   gather_sites(d.elem(ii), l.elem(o0),i0, l.elem(o1),i1, l.elem(o2),i2, l.elem(o3),i3); }  #else #error "Map: this inner grid length is not supported - easy to fix" #endif  #if QDP_DEBUG >= 3 QDP_info("exiting Map()"); #endif  return d;
return l;
  operator()(const OLattice<T1> & l)    {      OLattice<T1> d;#if QDP_DEBUG >= 3      QDP_info("Map()");#endif      // *** SHOULD IMPROVE THIS - JUST GET IT TO WORK FIRST ***      // For now, use the all subset#if INNER_LOG == 2      const int vvol = Layout::sitesOnNode();      for(int i=0; i < vvol; i+= INNER_LEN)       {	int ii = i >> INNER_LOG;	int o0 = goffsets[i+0] >> INNER_LOG;	int i0 = goffsets[i+0] & (INNER_LEN - 1);	int o1 = goffsets[i+1] >> INNER_LOG;	int i1 = goffsets[i+1] & (INNER_LEN - 1);	int o2 = goffsets[i+2] >> INNER_LOG;	int i2 = goffsets[i+2] & (INNER_LEN - 1);	int o3 = goffsets[i+3] >> INNER_LOG;	int i3 = goffsets[i+3] & (INNER_LEN - 1);#if QDP_DEBUG >= 3	QDP_info("Map(lattice[%d]=lattice([%d,%d],[%d,%d],[%d,%d],[%d,%d])",		 ii,o0,i0,o1,i1,o2,i2,o3,i3);#endif	// Gather 4 inner-grid sites together	gather_sites(d.elem(ii),		     l.elem(o0),i0,		     l.elem(o1),i1,		     l.elem(o2),i2,		     l.elem(o3),i3);      }#else#error "Map: this inner grid length is not supported - easy to fix"#endif#if QDP_DEBUG >= 3      QDP_info("exiting Map()");#endif      return d;    }