Ë
    7^(h~e  ã            #       óR  — d dl mZmZmZmZmZmZmZmZ d dl	m
Z
mZ d dlmZmZ d dlmZ d dlmZmZmZ d dlZ ed«      \  ZZZZ e
g d¢g d	¢g d
¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢ge«      Zeddz   ej                  de«      z  z   Zg d e
g d¢ge«       e
g d¢ge«       ed«      f‘d eg de«       eg de«       ed«      f‘d e
ddgddgge«       e
dd gd dgge«       ed«      f‘d e
dd gddgge«       e
dd gd dgge«       ed«      f‘d  e
d dgddgge«       e
dd gd dgge«       ed«      f‘d! e
g d¢g d"¢g d#¢ge«       e
g d$¢g d%¢g d&¢ge«       ed«      f‘d' e
g d&¢g d&¢g d(¢ge«       e
g d(¢g d&¢g d&¢ge«       ed«      f‘d) e
g d&¢g d&¢g d&¢ge«       e
g d&¢g d&¢g d&¢ge«       ed«      f‘d* e
g d+¢g d,¢g d&¢ge«       e
g d+¢g d-¢g d&¢ge«       ed«      f‘d. e
g d/¢g d,¢g d&¢ge«       e
g d+¢g d-¢g d&¢ge«       ed«      f‘d0 e
g d/¢g d1¢g d,¢ge«       e
g d(¢g d2¢g d-¢ge«       ed«      f‘d3 e
g d¢g d"¢g d#¢g d4¢ge«       e
g d$¢g d%¢g d&¢g d&¢ge«       ed«      f‘d5 e
g d¢g d"¢g d#¢g d6¢ge«       e
g d(¢g d2¢g d-¢g d&¢ge«       ed«      f‘d7 e
g d8¢g d9¢g d:¢ge«       e
g d;¢g d<¢g d=¢ge«       ed«      f‘d> e
g d8¢g d9¢g d?¢ge«       e
g d;¢g d@¢g dA¢ge«       ed«      f‘dB e
g dC¢g dD¢ge«       e
g dE¢g dF¢ge«       ed«      f‘dG e
g dH¢g dI¢ge«       e
g d(¢g dJ¢ge«       ed«      f‘dK e
g dL¢g dM¢g dN¢g dO¢g dP¢ge«       e
g dQ¢g dR¢g dS¢g dT¢g dU¢ge«       ed«      f‘dV e
g dW¢g d"¢ge«       e
g dX¢g dY¢ge«       ed«      f‘dZ e
g dU¢g dU¢g d[¢ge«       e
g d\¢g dU¢g dU¢ge«       ed«      f‘d] e
g d^¢g d_¢g d`¢g da¢g db¢ge«       e
g d_¢g d`¢g da¢g db¢g d^¢ge«       ed«      f‘dc e
g dd¢g de¢g df¢g de¢g dQ¢ge«       e
g dQ¢g dR¢g dg¢g dT¢g dU¢ge«       ed«      f‘dh e
g di¢g dj¢g dk¢g dl¢g dm¢g dn¢g do¢g dp¢g dq¢g dr¢g ds¢g dt¢g du¢g dv¢g dw¢g dx¢g dy¢g dz¢g d{¢g d|¢ge«       e
g d}¢g d~¢g d¢g d€¢g d�¢g d‚¢g dƒ¢g d„¢g d…¢g d†¢g d‡¢g dˆ¢g d‰¢g dŠ¢g d‹¢g dŒ¢g d�¢g dŽ¢g d�¢g d�¢ge«       ed«      f‘d‘ e
g d’¢g d“¢g d”¢g d•¢g d–¢g d—¢g d˜¢g d™¢g dš¢g d›¢g dœ¢g d�¢g dž¢g dŸ¢g d ¢g d¡¢g d¢¢g d£¢g d¤¢g d¥¢ge«       e
g d}¢g d~¢g d¢g d€¢g d�¢g d‚¢g dƒ¢g d„¢g d…¢g d†¢g d‡¢g dˆ¢g d‰¢g dŠ¢g d‹¢g dŒ¢g d�¢g dŽ¢g d�¢g d�¢ge«       ed«      f‘d¦ e
g d§¢g d¨¢g d©¢g dª¢g d«¢g d¬¢g d­¢g d®¢g d¯¢g d°¢g d±¢g d²¢g d³¢g d´¢g dµ¢g d¶¢g d·¢g d¸¢g d¹¢g dº¢g d»¢g d¼¢g d½¢g d¾¢g d¿¢g dÀ¢g dÁ¢g dÂ¢g dÃ¢g dÄ¢ge«       e edÅ«      dÆz   eg dÇ¢«      g eddÅ«       edd«      gg«      j9                  «       j;                  «        edÆ«      f‘dÈ e
dÉd gd dgge«       e
dd gd dgge«       ed«      f‘dÊ e
d dgddgge«       e
dd gd dgge«       ed«      f‘dË e
g dÌ¢g dÍ¢ge«       e
g d$¢g dJ¢ge«       ed«      f‘dÎ e
g dÍ¢g dÌ¢ge«       e
g d$¢g dJ¢ge«       ed«      f‘dÏ e
dd gddgd dgge«       e
dd gd dgd d gge«       ed«      f‘dÐ e
g dÑ¢g dÒ¢ge«       e
g d(¢g d-¢ge«       ed«      f‘dÓe ej                  de«      j;                  «        ed«      f‘dÔe ej                  de«      j;                  «        ed«      f‘dÕ e
d dgd dgdd gge«       e
dd gd dgd d gge«       ed«      f‘dÖ e
g d×¢g dH¢ge«       e
g d(¢g dJ¢ge«       ed«      f‘dØ e
eedgeedgge«       e
eez  eez  z
  d e ez   gd eez  eez  z
  eez
  gge«       eeez  eez  z
  «      f‘ZdÙ„ ZdÚ„ Z dÛ„ Z!dÜ„ Z"ejF                  jI                  dÝe«      dÞ„ «       Z%ejF                  jI                  dÝe«      dß„ «       Z&ejF                  jI                  dÝe«      dà„ «       Z'ejF                  jI                  dÝe«      dá„ «       Z(ejF                  jI                  dÝe«      dâ„ «       Z)ejF                  jI                  dÝe«      dã„ «       Z*ejF                  jI                  dÝe«      dä„ «       Z+ejF                  jI                  dÝe«      då„ «       Z,ejF                  jI                  dÝe«      dæ„ «       Z-ejF                  jI                  dÝe«      dç„ «       Z.ejF                  jI                  dÝe«      dè„ «       Z/ejF                  jI                  dÝe«      dé„ «       Z0ejF                  jI                  dÝe«      dê„ «       Z1ejF                  jI                  dÝe«      dë„ «       Z2ejF                  jI                  dÝe«      dì„ «       Z3ejF                  jI                  dÝe«      dí„ «       Z4y)îé    )ÚZZÚQQÚZZ_IÚEXÚMatrixÚeyeÚzerosÚsymbols)ÚDMÚDomainMatrix)Úddm_irref_denÚ	ddm_irref)ÚDDM)ÚSDMÚ	sdm_irrefÚsdm_rref_denNz
a, b, c, d)©é   é   )r   é   )r   é   )r   é   )r   é   )r   é   )r   é   )r   é   )r   é   )r   é   )r   é   ))r   é%   )r   é)   )r   é+   )r   é/   )r   é5   )r   é;   )r   é=   )r   éC   )r   éG   )r   éI   )r   éO   ))r   éS   )r   éY   )r   éa   )r   ée   )r   ég   )r   ék   )r   ém   )r   éq   )r   é   )r   éƒ   )r   é‰   ))r   é‹   )r   é•   )r   é—   )r   é�   )r   é£   )r   é§   )r   é­   )r   é³   )r   éµ   )r   é¿   )r   éÁ   ))r   éÅ   )r   éÇ   )r   éÓ   )r   éß   )r   éã   )r   éå   )r   éé   )r   éï   )r   éñ   )r   éû   )r   i  ))r   i  )r   i  )r   i  )r   i  )r   i  )r   i  )r   i%  )r   i3  )r   i7  )r   i9  )r   i=  ))r   iK  )r   iQ  )r   i[  )r   i]  )r   ia  )r   ig  )r   io  )r   iu  )r   i{  )r   i  )r   i…  ))r   i�  )r   i‘  )r   i™  )r   i£  )r   i¥  )r   i¯  )r   i±  )r   i·  )r   i»  )r   iÁ  )r   iÉ  ))r   iÍ  )r   iÏ  )r   iÓ  )r   iß  )r   iç  )r   ië  )r   ió  )r   i÷  )r   iý  )r   i	  )r   i  ))r   i  )r   i#  )r   i-  )r   i3  )r   i9  )r   i;  )r   iA  )r   iK  )r   iQ  )r   iW  )r   iY  ))r   i_  )r   ie  )r   ii  )r   ik  )r   iw  )r   i�  )r   iƒ  )r   i‡  )r   i�  )r   i“  )r   i•  é
   éd   r   Úzz_1)r   r   r   r   Úzz_2)r   r   Úzz_3r   r   é   Úzz_4Úzz_5Úzz_6)rP   r   é   )r   é   é	   )r   r   éÿÿÿÿ)r   r   r   )r   r   r   Úzz_7)r   r   r   Úzz_8Úzz_9)r   r   r   )r   r   r   )r   r   r   Úzz_10)r   r   r   Úzz_11)r   r   r   )r   r   r   Úzz_12)rK   r   é   Úzz_13)rK   r   r   Úzz_14)r   r   rP   r   )rP   r   rK   rT   )r   rU   é   rV   )r   r   r   rW   )r   r   r   r   )r   r   r   r   Úzz_15)r   rU   r   rV   )r   r   r   r   )r   r   r   r   Úzz_16)r   r   r   r   )r   r   rV   r   )r   r   é   rW   )r   r   i÷ÿÿÿr   Úzz_17)r   r   r   )r   r   r   )r   r   r   Úzz_18)é^   é   r   é   r   )r*   r   r   r   r   )éU   ra   r(   éQ   r   )r   r   éH   éM   r   )é   r   é"   r   r   )r   r   r   r   r   )r   r   r   r   r   )r   r   r   r   r   )r   r   r   r   r   )r   r   r   r   r   Úzz_19)r   r   rP   )r   r   iøÿÿÿ)r   r   rK   Úzz_20)r   r   r   r   rP   )r   r   r   r   r   Úzz_21)
r   r   r   r   r   r   r   r   r   r   )
r   r   r   r   r   r   r   r   r   r   )
r   r   r   r   r   r   r   r   r   r   )
r   r   r   r   r   r   r   r   r   r   )
r   r   r   r   r   r   r   r   r   r   Úzz_22)r   r   r   r   r   )r   r   r   r   r   )r   r   r   r   r   )r   r   r   r   r   Ú
zz_large_1)r   r   r   rk   r   r   éK   r   r   r   r   r   r   ri   r   r   r   r   r   r   )r   r   r   r   r   éV   r   é\   r*   é6   r   r   r   r   r   r   r*   r   r   r   )r,   rx   rk   r   r   é   r   r   r   r   r   r   é3   r   rg   r   r   rm   r   r   )r   r   r   é`   r   r   r   r   r   r   r   r   é0   r   r   r   r   r   é    r   )r   éF   r   r   r   r   r   r   r   r   r   r   r   r   r   é<   r   r   r   r   )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r    r   r"   r   r   )r   r   r   r   r   é&   é[   r   r   r   r   r€   r   r   r   r   r   é   r   r   )éE   r   r   r   r   r   rg   r   r   r   r   r   r   r   r   r   r   r   r   é7   )r   r   rd   é1   r…   éX   r   r   é#   rx   r   r   rz   r   r   r   r   r   r   éW   )r   r   r   r   r   r   é(   r   r   r   r   r   r   é2   r   r   r   r   r†   r   )r   r   r   r   r   r   r   r   éb   r   r   r   é   r$   r   rw   r   r   r   r   )r   r   r   é_   r   r   r   é$   r   r   r   r   r   rl   r   r   r   r   r)   r   )r   éA   é   r{   r   r   r   r   r   r   r   r   r   éZ   r   r   r   ro   r   r   )r   r   r   ra   é'   é,   r   r   r   r   r   r   r   r   r   r   r   rz   r   r   )r   r   r   r   r   éc   éT   r   rŠ   r•   r   r   r   r   r�   r   r"   é!   ry   r   )r*   r   r   é4   r”   r^   rƒ   r   r‹   r   éD   r   r   r   r   r   r   r   r   r   )r   r   r   éR   r   r“   r   r   r   r-   r   r   r   r   r   rK   r   r   r   r   )r   r   rn   r   r'   r   r   r   r   r   rP   r   rŠ   r   r   r   r–   r   r   r   )r   r   r   r   rV   é*   r   r   r   r   r   r   r   r   r   r   r   r   r   rU   )r   rm   r   r   r   r   r   r   r   r   ro   é]   r   r   r   r   r#   r   r   r   )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   Ú
zz_large_2)r   r   r   r   rŠ   r   rT   rk   r   r   rv   r   r   r‹   r™   rg   rP   r   r   r   )r   r“   r"   r   é>   r   r   r   r   r   r   r   r   r(   rV   r   é9   r!   r   r›   )r   r   é   r   éJ   r,   rš   r   rŸ   r   rT   r   r   r   r“   r   r   r   rm   r   )r   rn   r™   r   é   r†   r   r,   r˜   r   r   r   r*   r!   r   r   r”   r   r   r   )r   r   r   r   r   é@   r   r   r*   r   r   r   rl   rK   r   r}   r¢   r%   r   rh   )r   r   r   r   r   rž   r   rg   r   r+   ry   r   r   rV   r   r   r…   r‚   é:   r   )r   r�   é8   r   r¢   r   r   r   r   r   r   r—   rj   r   r   r   r   rz   r   r   )r   r‡   r   r   r   rƒ   r   r   r¢   r   r   r   r   r~   r   r   r‘   r   ru   éL   )rƒ   r   r   r‘   r   r   r•   r   r#   rƒ   r   ry   rš   r   r   r}   r(   r‡   r   r   )r’   r   r‘   r   r   rP   rj   r   r   r„   r   r   r   r‡   r'   r‰   r   r‰   r   rm   )r‹   é?   r   r(   r   rŠ   r   r   r&   r   r€   r   r   r   r   ru   r   r‰   r–   r¤   )r   r)   r   r¢   r   r€   r   r‡   r&   r   r   r—   r   r   r   rz   r   r   r   ro   )r   r   rŸ   r   ro   r   r¦   é-   r�   rš   r   ra   r¥   rx   r”   r   rŸ   r¡   r   r   )r£   r    r�   r   r   r   rg   r   r   r‘   r   r   r   r   r   r   r   rU   r‘   r$   )rv   r    rg   r   r…   rK   r   r   r‰   rd   r   r   r   r   r   rh   r   r   r   r   )r$   r   r   r-   r   r   r£   r   r   r’   r“   r#   r   r   r   r^   rŠ   r   r   r   )rP   r   rw   rK   rŸ   r   r   r,   r   r   rd   rx   r   r’   r   r   r   r|   r   rw   )r   r   r‘   rm   r�   r–   r   r   r…   é   r’   r   r   r   r   r   r   r‰   r   r   )r{   r   r   r   r   r€   rv   r   r¨   r¥   r   r   r   r   r+   r†   r�   r�   rl   r   )rk   r�   r   rP   r   r   r   r   r   r˜   r   r   r,   r   r'   r¨   r   r   r„   r–   Ú
zz_large_3)r�   r‡   r,   r£   r¨   r#   r¡   rŸ   r—   rl   r   r¤   éP   r‚   r¢   rn   rK   r‡   rh   rš   r{   r}   r   rŠ   rw   r    r¥   rg   r¦   éB   )ry   r#   r{   ro   rK   r‹   r   rT   r   r   r   rw   r&   rg   r€   r!   r}   rV   r   rg   r   r£   ri   r!   rl   rj   r&   r�   r‰   é.   )rƒ   r‚   r‡   r˜   é   r—   rg   r   r€   r�   rk   rK   r   rŒ   r   rP   r   r”   rj   r   rª   rz   r   r   r‚   rm   rj   r   rˆ   r­   )r”   r£   rƒ   rŒ   r—   r^   rd   r   ri   r¤   r^   rx   rn   rw   r€   r�   r–   r+   rŸ   r   r“   rU   r   r•   rw   r^   r   r­   r¬   r¬   )r›   r   r„   r|   r‡   rˆ   rh   r‰   r   r‡   r­   r}   r   r   r   rj   rP   r*   r‚   r   r¬   ru   r   r{   r¥   r   r   rž   r”   ru   )é€   rj   r‚   rz   é¡   r<   rm   éN   rj   r/   é{   r£   r�   é“   r€   r�   r¯   rŽ   r±   rk   éf   r­   ru   r%   r   é–   ép   r�   rm   é�   )rŒ   r%   r&   r™   r^   r+   ro   rU   rg   r(   r«   r   r�   rn   r|   rƒ   r‚   r^   r¢   r€   r-   rˆ   r€   rŒ   rz   r–   r›   r"   r«   r,   )r    r    r$   r’   rƒ   r‘   r!   rª   r}   r«   r‰   r+   rˆ   rˆ   r&   r€   r^   rª   rh   r…   r    r‘   r   r–   r¤   r   r¬   rž   r¤   r   )r™   r   r   r­   r¤   r£   r’   r…   rw   r›   rª   r€   r   r�   r–   rj   r   r&   r�   r¡   r§   r�   r-   ro   r-   r$   rw   rŸ   r–   r"   )r+   r*   r!   ra   r�   r‡   r$   r§   r‚   rP   r(   r¥   r&   rƒ   rƒ   rl   rˆ   rw   r%   rl   rx   r   r¨   r+   rU   rž   rm   r„   r   r¨   )r…   ro   r   r   rl   rm   r—   r~   r¬   r!   r    rT   rš   r«   r‡   rT   ru   r–   r�   rž   r¡   r�   r‚   r   rV   r�   r,   r   r^   r‘   )r   r   r…   r¡   rz   r}   rm   r!   r€   rŠ   ra   r   rˆ   rk   r›   r†   r£   r�   r+   r   r€   r'   r   r¢   r   r•   r   r   r   rŸ   )r*   rz   r   ry   r,   r{   r­   rU   r’   r�   rv   r—   r…   rk   r   rj   rv   r   r&   rh   rl   r   r…   rŸ   rU   r„   r   r—   r�   r$   )r{   rv   r)   ry   r!   ry   r    rd   rK   r&   rj   rh   r‰   r+   rƒ   r!   rP   rw   r   r”   r¢   r–   rd   rŽ   r}   r¤   r   r‹   r’   rh   )r}   r�   r#   rª   rz   r«   r   r   rV   r¡   r�   ru   ru   r†   r”   rw   r¢   r$   r$   rv   r€   rz   r!   r�   r‡   rd   r’   r­   r‚   r}   )r’   rn   rU   ra   r–   rT   r‡   rj   ru   r�   r"   ro   rd   r˜   r(   rŸ   r}   rd   r^   r   rk   r$   r   r”   r   r   r§   r”   r‡   r–   )r   r�   r,   r§   ru   rg   rw   r   r•   r›   ro   r   rŠ   r¤   r*   r‹   r˜   r™   r�   rk   rz   r‘   r   r�   r–   r(   r¬   r&   r�   r   )r$   rw   rU   r…   r'   r•   rn   r*   r…   r�   r«   r|   rŽ   r�   r�   r-   r‚   r§   r£   r   r+   r|   r   r,   r'   rl   r�   ro   r¤   r,   )r¤   r¥   r”   rw   r‰   rU   r   ra   rŒ   r|   r‡   rl   r�   r¬   rk   r�   rv   r   rz   r   r–   r^   r$   r°   r|   rn   r   r,   rŒ   r*   )rk   r"   r–   r…   rT   r…   rŽ   r}   rž   r    rˆ   r�   r   r    r   r   r'   r   r‰   r€   rƒ   rU   r   r|   r%   r    r¢   r-   r   r   )r‹   r|   rm   ra   r   r|   rž   r€   r¦   r%   r*   r‡   ra   r(   r   rv   r(   r!   r�   r¥   rª   r-   rm   rƒ   rP   r£   r¨   r„   r‚   r)   )rª   r#   r°   r“   r   r|   r#   r   r   r�   r   rn   r   rh   r   r   r$   r›   r-   rž   r   rx   r^   rK   rm   r«   r   ru   r}   rn   )rv   r¦   r   r   r(   r€   rv   r   rd   rŒ   r�   r�   rm   r�   rV   rw   rŠ   r   r   rš   r”   rª   r”   ri   rK   r”   rw   rV   rˆ   r•   )r«   ri   rl   r   r   rŒ   rl   ru   r’   r   r�   r(   rŒ   r˜   rK   r   r…   rx   r   r   r#   ry   r¦   r   r-   r#   rh   r�   ra   r{   )rš   r¦   r+   r   r…   r˜   rV   r$   ru   rˆ   r‰   r­   r^   r¦   r   r^   r   r�   r¬   r¬   r„   r­   r,   r   rz   r   r   r{   rª   r—   )r‡   rV   r-   r   rv   r’   r«   r|   r!   rž   r   r€   r   rV   r‡   rl   r†   r   r!   r   rK   r¢   r(   r   r   r   r   rž   rT   r   )r~   r&   r   rŠ   rl   r   rm   r   r!   rg   r   r§   r—   r¨   r”   r#   ri   rd   r”   rš   ra   r|   r‚   rV   r†   rm   rK   rg   r   rw   )r„   r˜   r£   r   rl   r¤   rk   r—   r*   r    r   r‰   rn   r¬   ri   r   r    r   r-   rš   rj   r‹   rƒ   r   r¥   r“   rš   r¬   r   r)   )r)   r   r"   r   r,   r-   r§   r   r˜   r�   r„   r   r�   r   r    rj   r†   r˜   r›   r¥   r€   r¥   r   rz   r§   r¥   rŠ   r*   r¤   rd   )rl   r£   r!   r’   rh   rª   r   r*   r“   r   r‹   ru   r¡   rT   rj   r   ry   r£   rm   r(   r‘   rz   r€   rª   r¡   rŒ   r–   rK   r™   rU   r   l   }#"
‹<T—vl;(ÕCƒVéóŒW+)l   )'K	
)!08¬c9mJ"~(åÜ
l   „[OvàNeMÑ"Ôb³y;qÀyX-ÿsî/n l   r9¿Oª/Ø]�/GW©m4±9°lxi‡l   °0™"M'’Y#«h­	í¥v)B•l   ¶mŠRC.N”R™%�y¼ë?^�j<l   Go+Ç5;¾#Õ)%P“öFK©.öaê lóÿÿÿÙ»8`w†!ZYg"T¢WMcW_CX#l   6I±5æA° ßQÌFµ~ŒtÓ,U;�'¢9fl   ÿ1x ?Ð”QÊ?Éf·NÇBüzL	lóÿÿÿyòJT{ân'W�Q8Ü
�%É(9*v
lóÿÿÿÎÚ]|âFílq‚Ulz>jV% )ätËl   uð,×ß bvÔCü•*\lc]á\.lóÿÿÿ(ÞWlnGâOßÿ~³rØZ^
l   �~Qõ7Ö1GºtÐy4…=†GrrY l   ™	ÇLüR'"‡[pµhî]dQ¥US|l   x²`w'ähýY‹|òhœ/äXSÙOùílóÿÿÿ]: [Z6Î8:Š?{oéLô¹Œhc	lóÿÿÿS/dblR6	wÁº(˜MèBTÇ:Æ`TlóÿÿÿÎt®hBBæ^ÞòÍ{|6üÆ9>(¾Ãlóÿÿÿ€-…SEk{¾L?]�6*øuÌ#5[(‚l   ™/æû3‘N?¶³2Ô	GKøts‚úl   Iä4[,Jt®QÓ£&9÷/Qrdæ^ÉlóÿÿÿTjÚeºD0nv
ÊA�Oø@;uM6F~Olóÿÿÿ%df8xh6ÄwOå«ÐiýVlóÿÿÿ²"B'[A(2gÎ4,™U´n‹!¥FQl   v¸½Ÿg€,ŠVvJEºNjifÀlóÿÿÿDþ_zR·#s%”0[eùRæØKÛ*olóÿÿÿ¤TÓ^ZîH<UF*dä7,jÊq˜CLlóÿÿÿ×elGÝzÔ;—VGCm"2Y#?5,`+z	Úqq_1r   Úqq_2Úqq_3)r   r   r   )r   rP   r   Úqq_4Úqq_5Úqq_6)r   r   r   )r   r   r   Ú
qq_large_1Ú
qq_large_2Úqq_7Úzz_i_1))r   r   r   r   ÚEX_1c                 ó2  — t        | t        «      r| j                  «       S t        | t        «      r)| j	                  |j
                  «      j                  «       S t        | d«      rt        | d«      s|j                  |j
                  }}n| j                  | j
                  }}t        | t        t        f«      r$t        t        | «      ||«      j                  «       S t        | t        t        f«      r$t        t        | «      ||«      j                  «       S J ‚)z#Convert the answer to DomainMatrix.ÚshapeÚdomain)Ú
isinstancer   Úto_denser   Úto_DMrÄ   ÚhasattrrÃ   r   Úlistr   Údict)ÚAÚansrÃ   rÄ   s       úb/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/sympy/polys/matrices/tests/test_rref.pyÚ_to_DMrÎ   E  sÌ   € ä�!”\Ô"Ø�z‰z‹|ÐÜ	�A”vÔ	Ø�w‰w�s—z‘zÓ"×+Ñ+Ó-Ð-ä�A�wÔ¤G¨A¨xÔ$8ØŸ	™	 3§:¡:ˆv‰àŸ™ §¡ˆvˆä�!”cœ4�[Ô!ÜœD ›G U¨FÓ3×<Ñ<Ó>Ð>Ü	�AœœT�{Ô	#ÜœD ›G U¨FÓ3×<Ñ<Ó>Ð>àˆuó    c           	      ó~   — t        t        t        t        | j	                  «       j                  «       «      «      «      S )z%Return the pivots from the rref of A.)ÚtupleÚsortedÚmapÚminÚto_sdmÚvalues)ÚA_rrefs    rÍ   Ú_pivotsrØ   Y  s(   € ä”œœC §¡£×!7Ñ!7Ó!9Ó:Ó;Ó<Ð<rÏ   c                 ó  — | \  }}}t        |t        t        t        t        f«      rt        |«      t        u sJ ‚t        |«      }t        ||«      }|j                  |«      \  }}||k(  sJ ‚||k(  sJ ‚|t        |«      k(  sJ ‚y)zCheck the cancelled result.N)
rÅ   r   r   rÉ   rÊ   ÚtyperÑ   rÎ   Úcancel_denomrØ   )ÚresultÚrref_ansÚden_ansÚrrefÚdenÚpivotsÚrref2Úden2s           rÍ   Ú_check_cancelrä   ^  sˆ   € àÑ€Dˆ#ˆvÜ�$œœc¤4¬Ð.Ô/Ü�F‹|œtÑ#Ð#Ð#Ü�v“ˆÜ�$˜Ó!€DØ×#Ñ# CÓ(�K€Eˆ4Ø�HÒÐÐØ�7Š?Ðˆ?Ø”W˜T“]Ò"Ð"Ñ"rÏ   c                 óö   — | \  }}t        |t        t        t        t        f«      rt        |«      t        u sJ ‚t        |«      }|j                  «       |z  }t        ||«      }||k(  sJ ‚t        |«      |k(  sJ ‚y)zCheck the divided result.N)
rÅ   r   r   rÉ   rÊ   rÚ   rÑ   Úto_fieldrÎ   rØ   )rÜ   rÝ   rÞ   rß   rá   s        rÍ   Ú_check_dividerç   k  sx   € à�L€Dˆ&Ü�$œœc¤4¬Ð.Ô/Ü�F‹|œtÑ#Ð#Ð#Ü�v“ˆØ× Ñ Ó" WÑ,€HÜ�$˜Ó!€DØ�8ÒÐÐÜ�4‹=˜FÒ"Ð"Ñ"rÏ   zname, A, A_rref, denc                 ó¸   — |j                   }|j                  «       }|j                  «       \  }}|j                  r|j	                  «       }t        ||f||«       y ©N)rÄ   Ú	to_Matrixrß   Úis_EXÚexpandrç   )ÚnamerË   r×   rà   ÚKÚA_rref_foundrá   s          rÍ   Útest_Matrix_rrefrð   w  sL   € à	�‰€AØ	�‰‹€AØŸ6™6›8Ñ€L�&Ø‡w‚wØ#×*Ñ*Ó,ˆÜ�< Ð(¨&°#Õ6rÏ   c                 óZ   — |j                  «       }t        |j                  «       ||«       y ré   )ræ   rç   rß   ©rí   rË   r×   rà   s       rÍ   Útest_dm_dense_rrefró   �  s   € à	�
‰
‹€AÜ�!—&‘&“(˜F CÕ(rÏ   c                 ó:   — t        |j                  «       ||«       y ré   )rä   Úrref_denrò   s       rÍ   Útest_dm_dense_rref_denrö   ‡  s   € ä�!—*‘*“, ¨Õ,rÏ   c                 óv   — |j                  «       j                  «       }t        |j                  «       ||«       y ré   )ræ   Ú	to_sparserç   rß   rò   s       rÍ   Útest_dm_sparse_rrefrù   Œ  s(   € à	�
‰
‹×ÑÓ €AÜ�!—&‘&“(˜F CÕ(rÏ   c                 óZ   — |j                  «       }t        |j                  «       ||«       y ré   )rø   rä   rõ   rò   s       rÍ   Útest_dm_sparse_rref_denrû   ’  s   € à	�‰‹€AÜ�!—*‘*“, ¨Õ,rÏ   c                 ó”   — |j                  «       }|j                  d¬«      \  }}}|j                  «       |z  }t        ||f||«       y )NF)Úkeep_domain©rø   rõ   ræ   rç   ©rí   rË   r×   rà   ÚA_rref_fÚden_fÚpivots_fs          rÍ   Ú#test_dm_sparse_rref_den_keep_domainr  ˜  sH   € à	�‰‹€AØ !§
¡
°u 
Ó =Ñ€Hˆe�XØ× Ñ Ó" UÑ*€HÜ�8˜XÐ&¨°Õ4rÏ   c                 ó–   — |j                  «       }|j                  dd¬«      \  }}}|j                  «       |z  }t        ||f||«       y )NFÚCD©rý   Úmethodrþ   rÿ   s          rÍ   Ú&test_dm_sparse_rref_den_keep_domain_CDr     óJ   € à	�‰‹€AØ !§
¡
°uÀT 
Ó JÑ€Hˆe�XØ× Ñ Ó" UÑ*€HÜ�8˜XÐ&¨°Õ4rÏ   c                 ó–   — |j                  «       }|j                  dd¬«      \  }}}|j                  «       |z  }t        ||f||«       y )NFÚGJr  rþ   rÿ   s          rÍ   Ú&test_dm_sparse_rref_den_keep_domain_GJr  ¨  r	  rÏ   c                 óZ   — |j                  «       }t        |j                  «       ||«       y ré   )Úto_ddmrä   rõ   rò   s       rÍ   Útest_ddm_rref_denr  °  ó   € à	�‰‹
€AÜ�!—*‘*“, ¨Õ,rÏ   c                 óZ   — |j                  «       }t        |j                  «       ||«       y ré   )rÕ   rä   rõ   rò   s       rÍ   Útest_sdm_rref_denr  ¶  r  rÏ   c                 óv   — |j                  «       j                  «       }t        |j                  «       ||«       y ré   )ræ   r  rç   rß   rò   s       rÍ   Útest_ddm_rrefr  ¼  ó(   € à	�
‰
‹×ÑÓ€AÜ�!—&‘&“(˜F CÕ(rÏ   c                 óv   — |j                  «       j                  «       }t        |j                  «       ||«       y ré   )ræ   rÕ   rç   rß   rò   s       rÍ   Útest_sdm_rrefr  Â  r  rÏ   c                 ó�   — |j                  «       j                  «       j                  «       }t        |«      }t	        ||f||«       y ré   )ræ   r  Úcopyr   rç   )rí   rË   r×   rà   Úpivots_founds        rÍ   Útest_ddm_irrefr  È  s9   € à	�
‰
‹×ÑÓ×"Ñ"Ó$€AÜ˜Q“<€LÜ�1�lÐ# V¨SÕ1rÏ   c                 ó–   — |j                  «       j                  «       }t        ||j                  «      \  }}|||f}t	        |||«       y ré   )r  r  r   rÄ   rä   )rí   rË   r×   rà   Ú	den_foundr  rÜ   s          rÍ   Útest_ddm_irref_denr  Ï  sA   € à	�‰‹
�‰Ó€AÜ -¨a°·±Ó :Ñ€Y�Ø�˜LÐ)€FÜ�&˜& #Õ&rÏ   c                 ór   — |j                  «       j                  «       }t        t        |«      d d ||«       y )Nr   )ræ   rÕ   rç   r   rò   s       rÍ   Útest_sparse_sdm_rrefr   ×  s-   € à	�
‰
‹×ÑÓ€AÜ”)˜A“,˜r Ð" F¨CÕ0rÏ   c                 ó†   — |j                  «       j                  «       }|j                  }t        t	        ||«      ||«       y ré   )rÕ   r  rÄ   rä   r   )rí   rË   r×   rà   rî   s        rÍ   Útest_sparse_sdm_rref_denr"  Ý  s0   € à	�‰‹
�‰Ó€AØ	�‰€AÜ”,˜q !Ó$ f¨cÕ2rÏ   )5Úsympyr   r   r   r   r   r   r	   r
   Úsympy.polys.matricesr   r   Úsympy.polys.matrices.denser   r   Úsympy.polys.matrices.ddmr   Úsympy.polys.matrices.sdmr   r   r   ÚpytestÚaÚbÚcÚdr½   r¾   rÇ   rÆ   ÚRREF_EXAMPLESrÎ   rØ   rä   rç   ÚmarkÚparametrizerð   ró   rö   rù   rû   r  r  r  r  r  r  r  r  r  r   r"  © rÏ   rÍ   ú<module>r1     s|  ðß ?× ?Ó ?ß 1ß ?Ý (ß AÑ Aã ñ �\Ó"�
€€1€aˆñ Ú YÚ YÚ YÚ YÚ YÚ YÚ YÚ YÚ YÚ YÚ Yð[ð 	ó€
ð ˜"˜c™'Ð$4 L×$4Ñ$4°R¸Ó$<Ñ<Ñ<€
ðXàÙ	ŠYˆK˜Ó	Ù	ŠYˆK˜Ó	Ù	ˆA‹ð	ðXð 	Ù	�b˜& "Ó	%Ù	�b˜& "Ó	%Ù	ˆA‹ð	ðXð  	Ù
ˆQ�ˆFØ�ˆFðØó	á
ˆQ�ˆFØ�ˆFðØó	á
ˆ1‹ððXð2 	Ù
ˆQ�ˆFØ�ˆFðØó	á
ˆQ�ˆFØ�ˆFðØó	á
ˆ1‹ðð1XðD 	Ù
ˆQ�ˆFØ�ˆFðØó	á
ˆQ�ˆFØ�ˆFðØó	á
ˆ1‹ððCXðV 	Ù
ŠIÚÚðàó	ñ 	ŠJÚÚðàó	ñ 	ˆ1‹ð	ðUXðl 	Ù
ŠIÚÚðàó	ñ 	ŠIÚÚðàó	ñ 	ˆ1‹ð	ðkXðB 	Ù
ŠIÚÚðàó	ñ 	ŠIÚÚðàó	ñ 	ˆ1‹ð	ðAXðX 	Ù
ŠIÚÚðàó	ñ 	ŠIÚÚðàó	ñ 	ˆ1‹ð	ðWXðn 	Ù
ŠIÚÚðàó	ñ 	ŠIÚÚðàó	ñ 	ˆ1‹ð	ðmXðD 	Ù
ŠIÚÚðàó	ñ 	ŠIÚÚðàó	ñ 	ˆ1‹ð	ðCXðZ 	Ù
ŠLÚÚÚðð ó	ñ 	ŠKÚÚÚðð ó	ñ 	ˆ1‹ððYXðt 	Ù
ŠLÚÚÚðð ó	ñ 	ŠLÚÚÚðð ó	ñ 	ˆ1‹ððsXðN 	Ù
ŠMÚÚðàó	 ñ 	ŠMÚÚðàó	 ñ 	ˆ1‹ð	ðMXðd 	Ù
ŠMÚÚðàó	 ñ 	ŠMÚÚðàó	 ñ 	ˆ1‹ð	ðcXðz 	Ù
ŠLÚðØó	á
ŠNÚðØó	!á
ˆ1‹ððyXðL 	Ù
ŠIÚðØó	á
ŠIÚðØó	á
ˆ1‹ððKXðb 	Ù
ÒÚÚÚÚð	!ð #%ó		&ñ
 	ÒÚÚÚÚð	!ð #%ó		&ñ
 	ˆ1‹ðð]XðB 	Ù
ŠIÚðØó	á
ŠJÚðØó	á
ˆ1‹ððXðT 	Ù
ŠOÚÚðà ó	"ñ 	ŠOÚÚðà ó	"ñ 	ˆ1‹ð	ðSXðj 	Ù
Ò*Ú*Ú*Ú*Ú*ð	,ð .0ó		1ñ
 	Ò*Ú*Ú*Ú*Ú*ð	,ð .0ó		1ñ
 	ˆ1‹ððiXðH 	Ù
ŠOÚÚÚÚð	ð !ó		"ñ
 	ŠOÚÚÚÚð	ð !ó		"ñ
 	ˆ1‹ððGXðf 	Ù
Ú PÚ PÚ PÚ PÚ PÚ PÚ PÚ PÚ PÚ PÚ PÚ PÚ PÚ PÚ PÚ PÚ PÚ PÚ PÚ Pð)Rð* ó+	ñ, 	ÒHÚHÚHÚHÚHÚHÚHÚHÚHÚHÚHÚHÚHÚHÚHÚHÚHÚHÚHÚHð'Jð& LNó'	Oñ( 	ˆ1‹ðY-ðeXðD	 	Ù
Ú PÚ PÚ PÚ PÚ PÚ PÚ PÚ PÚ PÚ PÚ PÚ PÚ PÚ PÚ PÚ PÚ PÚ PÚ PÚ Pð)Rð* ó+	ñ, 	Ú <Ú <Ú <Ú <Ú <Ú <Ú <Ú <Ú <Ú <Ú <Ú <Ú <Ú <Ú <Ú <Ú <Ú <Ú <Ú <ð)>ð* ó+	ñ, 	ˆ1‹ð]/ðC	Xðf
 	Ù
Ú [Ú WÚ WÚ WÚ VÚ gÚ YÚ ZÚ ZÚ YÚ XÚ WÚ WÚ ZÚ YÚ UÚ XÚ ZÚ WÚ VÚ YÚ ZÚ WÚ ZÚ UÚ VÚ XÚ YÚ WÚ Xð=Zð> ó?	ñ@ 	ÙˆƒWÐIÑIÙò ó ðñ> 
ˆq�"‹‘u˜Q “{Ð#ðA!
ó !	÷B ‰5‹7—8‘8“:Ù
ÐEÓFðIEðe
Xðv 	Ù
ˆU�AˆJ˜˜A˜Ð Ó$Ù
ˆQ�ˆF�Q˜�FÐ˜RÓ Ù
ˆ1‹ð	ðuXðF 	Ù
ˆQ�ˆFØ�ˆFðØó	á
ˆQ�ˆFØ�ˆFðØó	á
ˆ1‹ððCXðZ 	Ù
ŠIÚðØó	á
ŠJÚðØó	á
ˆ1‹ððWXðn 	Ù
ŠIÚðØó	á
ŠJÚðØó	á
ˆ1‹ððkXðB 	Ù
ˆQ�ˆFØ�ˆFØ�ˆFðàó	ñ 	ˆQ�ˆFØ�ˆFØ�ˆFðàó	ñ 	ˆ1‹ð
ðXðZ 	Ù
ŠIÚðØó	á
ŠIÚðØó	á
ˆ1‹ððWXðp 	ØØˆ×Ñ˜˜RÓ ×)Ñ)Ó+Ù
ˆ1‹ððkXðB 	ØØˆ×Ñ˜˜RÓ ×)Ñ)Ó+Ù
ˆ1‹ðð}Xðr 	Ù
ˆQ�ˆFØ�ˆFØ�ˆFðàó	ñ 	ˆQ�ˆFØ�ˆFØ�ˆFðàó	ñ 	ˆ1‹ð3ðOXðJ 	Ù
ŠMÚðØ ó	"á
ŠIÚðØó	áˆQ‹ððGXð^ 	Ù
Ø	
ˆAˆqˆ	Ø	
ˆAˆqˆ	ðàó	ñ 	ˆQˆq‰S�1�Q‘3‰Y  A 2¨¡6Ð*Ø˜˜!™˜a ™c™	 A¨¡EÐ*ð,Ø-/ó	1á
ˆ1ˆQ‰3��1‘‰9‹ð	ð[X€òvò(=ò

#ò	#ð ‡�×ÑÐ/°Ó?ñ7ó @ð7ð ‡�×ÑÐ/°Ó?ñ)ó @ð)ð
 ‡�×ÑÐ/°Ó?ñ-ó @ð-ð ‡�×ÑÐ/°Ó?ñ)ó @ð)ð
 ‡�×ÑÐ/°Ó?ñ-ó @ð-ð
 ‡�×ÑÐ/°Ó?ñ5ó @ð5ð ‡�×ÑÐ/°Ó?ñ5ó @ð5ð ‡�×ÑÐ/°Ó?ñ5ó @ð5ð ‡�×ÑÐ/°Ó?ñ-ó @ð-ð
 ‡�×ÑÐ/°Ó?ñ-ó @ð-ð
 ‡�×ÑÐ/°Ó?ñ)ó @ð)ð
 ‡�×ÑÐ/°Ó?ñ)ó @ð)ð
 ‡�×ÑÐ/°Ó?ñ2ó @ð2ð ‡�×ÑÐ/°Ó?ñ'ó @ð'ð ‡�×ÑÐ/°Ó?ñ1ó @ð1ð
 ‡�×ÑÐ/°Ó?ñ3ó @ñ3rÏ   