function dz=p2ajbs(jm,im,z)
	
  %zi=sqrt(-1);
  [lm,km]=size(z);
  lm=(lm-1)/2;
  km=(km-1)/2; 

  k=-km:km;
  l=-lm:lm;

  for k=-km:km
    for l=-lm:lm
      dz(lm+1+l,km+1+k)=-(k*k+l*l);
    end
  end
  dz(lm+1,km+1)=1;

  %for k=-km:km
  %  for l=-lm:lm
  %    dz(lm+1+l,km+1+k)=z(lm+1+l,km+1+k)/dz(lm+1+l,km+1+k);
  %  end
  %end
  dz = z./dz;
	  
  l=-lm:lm;
  for k=-km:km
    %for l=-lm:lm
    %  ws(lm+1+l,km+1+k)=-k*dz(lm+1-l,km+1-k);
    %end
	ws(lm+1+l,km+1+k)=-k*dz(lm+1-l,km+1-k);
  end
  
  v=p2s2ga(jm,im,ws);

  %for k=-km:km
  %  for l=-lm:lm
  %    ws(lm+1+l,km+1+k)=l*dz(lm+1-l,km+1-k);
  %  end
  %end
  k=-km:km;
  for l=-lm:lm
	ws(lm+1+l,km+1+k)=l*dz(lm+1-l,km+1-k);
  end
  
  u=p2s2ga(jm,im,ws);

  %for i=1:im
  %  for j=1:jm
  %     w1(j,i)=v(j,i)*v(j,i)-u(j,i)*u(j,i);
  %     w2(j,i)=v(j,i)*u(j,i);
  %  end
  %end
  w1 = v.*v-u.*u;
  w2 = v.*u;
  
  ws=p2g2sa(lm,km,w1);
  dz=p2g2sa(lm,km,w2);
  
  for k=-km:km
    for l=-lm:lm
      dz(lm+1+l,km+1+k)=(k*k-l*l)*dz(lm+1+l,km+1+k)+k*l*ws(lm+1+l,km+1+k);
    end
  end
