const int iend = Layout::outerSitesOnNode(); for(int i=0; i < iend; ++i)
OLattice<T2>& dest = d.field(); const OrderedSubset& s = d.subset();  const int istart = s.start() >> INNER_LOG; const int iend   = s.end()   >> INNER_LOG;  for(int i=istart; i <= iend; ++i)
copymask(OLattice<T2>& dest, const OLattice<T1>& mask, const OLattice<T2>& s1) {  const int iend = Layout::outerSitesOnNode();  for(int i=0; i < iend; ++i)     copymask(dest.elem(i), mask.elem(i), s1.elem(i));}