function [B0,B1,B2,B3]=findm4p6oct(L01,L02,L03,L12,L13,L23)
if nargin == 0
 L01=1;
 L02=1;
 L03=1;
 L12=1;
 L13=1;
 L23=1;
end
e=2*eye(2);
t=2^4-1;
for i0=0:t
 B0=m4(i0);
 if norm(B0*B0'-e)==0
  disp(i0)
  for i1=i0:t
   B1=m4(i1);
   if (norm(B1*B1'-e)==0) & (norm(B1*B0'-L01*B0*B1')==0)
    disp(i1)
    for i2=i1:t
     B2=m4(i2);
     if (norm(B2*B2'-e)==0) & (norm(B2*B0'-L02*B0*B2')==0) & (norm(B2*B1'-L12*B1*B2')==0)
      disp(i2)
      for i3=i1:t
       B3=m4(i3);
       if (norm(B3*B3'-e)==0) & (norm(B3*B0'-L03*B0*B3')==0) & (norm(B3*B1'-L13*B1*B3')==0) & (norm(B3*B2'-L23*B2*B3')==0)
        disp(i3)
        fprintf(' Found %6d, %6d, %6d, %6d.\n',i0,i1,i2,i3);
          disp('B0==')
          disp(B0)
          disp('B1==')
          disp(B1)
          disp('B2==')
          disp(B2)
          disp('B3==')
          disp(B3)
        return;
       end
      end
     end
    end
   end
  end
 end
end
fprintf(' Search failed.\n');
B0=0;
B1=0;
B2=0;
B3=0;
