       mask = 1
       muchmo = N/P
       do idim = 1, CUBEDIM  
         XI(1+XOR(myProc,mask)*muchmo :
     1     (1+XOR(myProc,mask))*muchmo) 
     2     = XI(1+XOR(myProc,mask)*muchmo :
     3          (XOR(myProc,mask)+1)*muchmo )@XOR(myProc,mask)
         mask = mask*2
         muchmo = muchmo*2
       enddo
