d.elem(1) = s0.elem(i1);
d.elem(1) = s1.elem(i1); d.elem(2) = s2.elem(i2); d.elem(3) = s3.elem(i3);
gather_sites(ILattice<T,2>& d, 	     const ILattice<T1,2>& s0, int i0, 	     const ILattice<T1,2>& s1, int i1){  d.elem(0) = s0.elem(i0);  d.elem(1) = s0.elem(i1);}