ELF>@(Z@8 @``QtdpppPPPPtdD9D9x x x hؐRtdx x x p $$p   `a`aXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX^^ui ^x    n n ]n n ]n n ]o o ] o (o 0o 8o ¬`o ho po xo ¬o o o Lo o o Ŭo ʬo Ϭo Ԭo ٬o p p p Lp  p (p Ŭ0p ʬ8p Ϭ@p ԬHp ٬Pp `p hp pp Lxp p p Ŭp ʬp Ϭp Ԭp ٬p p p p Lp p p Ŭp ʬp Ϭq Ԭq ٬q  q (q 0q 8q @q ŬHq ʬPq ϬXq Ԭ`q ٬hq q q q q q Ŭq ʬq Ϭq Ԭq ٬q q q q q Ŭr ʬr Ϭr Ԭ r (r 0r 8r Ŭ@r ʬHr ϬPr Ԭ`r hr pr xr Ŭr ʬr Ϭr Ԭr r r r Ŭr ʬr Ϭr Ԭr r r r Ŭs ʬ s (s 0s 8s Ŭ@s ʬ`s hs ps xs Ŭs ʬs s s s Ŭs ʬs s s s Ŭt ʬt ٬ t (t 0t 8t Ŭ@t ʬHt ٬`t ht pt xt Ŭt ʬt Ϭt Ԭt t t t Ŭt ʬt Ϭt Ԭt t t t Ŭu ʬu Ϭu Ԭ u (u 0u 8u Ŭ@u ʬHu ϬPu Ԭ`u hu pu xu u Ŭu ʬu Ϭu Ԭu u u u u Ŭu ʬu Ϭu Ԭ v (v 0v 8v @v ŬHv ʬPv ϬXv Ԭv v v v v Ŭv ʬv Ϭv Ԭv v v v Ŭw ʬw Ϭw Ԭ w (w 0w 8w Ŭ@w ʬHw ϬPw Ԭ`w hw pw xw Ŭw ʬw Ϭw Ԭw w w w Ŭw ʬw Ϭw Ԭw w w w Ŭx ʬx Ϭx Ԭ x (x 0x 8x Ŭ@x ʬHx ϬPx Ԭ`x hx px Ŭxx ʬx x x Ŭx ʬx x x Ŭx ʬ y (y 0y Ŭ8y ʬ`y hy py Ŭxy ʬy y y Ŭy ʬy y y Ŭy ʬ z (z 0z Ŭ8z ʬ`z hz pz Ŭxz ʬz z z Ŭz ʬz z z Ŭz ʬ { ({ 0{ Ŭ8{ ʬ`{ h{ p{ x{ { { Ŭ{ ʬ{ Ϭ{ Ԭ{ { { { { { { { Ŭ{ ʬ{ Ϭ| Ԭ| |  | (| 0| 8| @| H| ŬP| ʬX| Ϭ`| Ԭh| p| | | | | | | Ŭ| ʬ| Ϭ| Ԭ| | | | | |  } } } } ʬ } Ŭ(} 0} 8} Ԭ@} ϬH} P} `} h} p} x}  } } } } ʬ} Ŭ} } } Ԭ} Ϭ} } } } } }  ~ ~ ~ ~ ʬ ~ Ŭ(~ 0~ 8~ Ԭ@~ ϬH~ P~ `~ h~ p~ x~  ~ ~ ~ ~ ʬ~ Ŭ~ ~ ~ Ԭ~ Ϭ~ ~ ~ 6~ ~ ~  ʬ Ŭ    Ԭ( Ϭ0 8 ` 6h p x  ʬ Ŭ   Ԭ Ϭ   6    ʬ Ŭ   Ԭ( Ϭ0 8 ` 6h p x  ʬ Ŭ   Ԭ Ϭ     *  ʬ Ŭ   Ԭ( Ϭ0 8 ` h p *x  ʬ Ŭ   Ԭ Ϭ     *  ʬ Ŭ   Ԭ( Ϭ0 8 ` h p *x  ʬ Ŭ   Ԭ Ϭ     *  ʬ Ŭ   Ԭ( Ϭ0 8 ` h p *x  ʬ Ŭ   Ԭ Ϭ        Ŭ ʬ Ϭ Ԭ( 0 @ H P X ` h Ŭp ʬx Ϭ Ԭ       Ȅ ŬЄ ʬ؄ Ϭ Ԭ       ( Ŭ0 ʬ8 Ϭ@ ԬH P ` h p x ʬ Ԭ  ٬   ȅ Ѕ ؅ ʬ Ԭ  ٬   ( 0 8 ʬ@ ԬH P ٬X `     ʬ Ԭ  ٬      ʬ Ԭ  ٬  @ H P X ʬ` Ԭh p ٬x      ʬ Ŭȇ Ї ؇     ʬ Ŭ( 0 8 ` h p x ʬ Ŭ    Ȉ Ј ؈ ʬ Ŭ    ( 0 8 ʬ@ ŬH P X     ʬ Ŭ        ʬ Ŭ Ԭ Ϭ ( 0 @ H P X ` ʬh Ŭp Ԭx Ϭ        ʬȊ ŬЊ Ԭ؊ Ϭ        ʬ( Ŭ0 Ԭ8 Ϭ@ H P ` h p x * ʬ Ŭ    ȋ Ћ ؋ * ʬ Ŭ    ( 0 8 *@ ʬH ŬP X      * ʬ Ŭ       * ʬ Ŭ   @ H P X *` ʬh Ŭp x       *ȍ ʬЍ Ŭ؍ Ԭ Ϭ        *( ʬ0 Ŭ8 Ԭ@ ϬH P  ` h p x  * ʬ Ŭ Ԭ Ϭ    Ȏ Ў ؎  * ʬ Ŭ Ԭ Ϭ    6( 0 8 ʬ@ ŬH P X -` ٬ 6   ʬ Ŭ   - ٬ 6   ʬ Ŭ   - ٬@ 6H P X ʬ` Ŭh p x - ٬  *  ʬ ŬȐ А ؐ - ٬  *  ʬ Ŭ( 0 8 -@ ٬` h *p x ʬ Ŭ   - ٬ ȑ *Б ؑ ʬ Ŭ   - ٬ ( 0 Ŭ8 ʬ@ H P -X ٬   Ŭ ʬ   - ٬   Ŭ ʬ   - ٬@ H P ŬX ʬ` h p -x ٬   ʬ Ŭ ȓ Г -ؓ ٬   ʬ Ŭ ( 0 -8 ٬` h p ʬx Ŭ   - ٬ Ȕ Д ʬؔ Ŭ   - ٬ 6( 0 8 ʬ@ ŬH P X -` ٬ 6   ʬ Ŭ   - ٬ 6   ʬ Ŭ   - ٬@ 6H P X ʬ` Ŭh p x - ٬  *  ʬ ŬȖ Ж ؖ - ٬  *  ʬ Ŭ( 0 8 -@ ٬` h *p x ʬ Ŭ   - ٬ ȗ *З ؗ ʬ Ŭ   - ٬ ( 0 ]8 @ LH 2P :X B   ]  L 2 : B   ]  L 2 : B@ H P ]X ` Lh 2p :x B   ]  Lș NЙ ؙ B   ]  L( N0 8 B` h p ]x  L N  B Ț К ]ؚ  L N  B ( 0 ]8 @ LH NP X B   ]  L N  B    L   B ( 0 8 L@ H P B` h p x L   B    L Ȝ М B    L   B ( 0 8 L@ H P B` h p ]x  L   B ȝ Н ]؝  L   B ( 0 ]8 @ LH P X B   ]  L   B   ]  L   B@ H P ]X ` Lh p x B   ] N ȟ 2П -؟ S   ] N ( 20 -8 S` h p ]x N  2 - S Ƞ Р ]ؠ N  2 - S ( 0 ]8 N@ H 2P -X S   ] N  2 - S   ] N  2 - S@ H P ]X N` h 2p -x SȢ _  ~ x 0   n t p  `m X ` Ph l p Ȩ Ш ب  l 8 P@ @H @k P p  0 `j    e( g 0 @ ` U d   ]  b  Ϗh p Nx `_ ز @ Щ \ H P X Y ` j|  `$ȵ W е {( 0 8 `U @ {  @ @S  {    Q x p ` O Q  `  N †X й` h L p {ȿ п ؿ  K ,8 @ H `I P  п  G g  0h( E 0 ԁ  m C A  s A  h p @yx ?  p  `= H кP  X  ; `    8 ( 0 p8 6 @    4   ~ 2 0x   1 V     / ÄX p` h @- p   Њ `+ ~8 @ pDH * P ~  G ( } P @=( @' 0 `  O %  ` pK $  @~h p @x  #    V ! H P RX ` ` : 0 Y  (  0 P]8  @   d @ Ѐ @ `  x  % @ V 0 P  X ` Ph  p h     58 н@  H  P ȇ    | и )(   0 r}  3    `  @  Ah p x `    `  H 0P ~X  `     ( л0 `8  @ >  `v @ |   e ` ݨx  m    ]   IX о` `7h  p    . `  08 @@ H  P   P    <  ( ` 0  @ P  N   `  ٗh  p x      `  H P X  `   p   v( 00 8  @    @   Ŋ 0  `  Sx P   @  ~ `    X ` uh  p  @ l   g8 `@ `-H  P  p p%   -  P(  0 ! ! з!  ! X" # Ь#  # h$ 0p$ `x$  $ t% % %  % H' P' PX'  `' ( ( PV(  ( Z(* 0* N8* ` @* + + pG+  + - -  @-  - x. 0. .  . / / / ` 0 ԓX1 P`1 h1  p1 A2 @2 `2  2 z84 P@4  H4 @ P4 fz5 5 5  5 z7 p 7 (7  07 y8 `8 08  8 F9 p: ;:  : čh; p; 5x;  ; Ȏ< < A<  < JH> P> GX>  `> v? ? ? ` ? D(A 0A P}8A  ~ @A B B B { B D D D y D xE  E E @w E F pF `F t G bXH @`H hH r pH ϖI 0I PI  p I Ly8K @@K PHK m PK xL L pL `k L xN ` N (N i 0N 2xO PO O f O ]P Q bQ `d Q  hR  pR ZxR  b R S S (S _ S HU PU P!XU ] `U ƞV V V [ V {(X 0X 8X `Y @X Y Y Y  W Y [ [ j[ T [ x\ 0\ \ R \ ] @]  r] `P ^ ЛX_ `_ Th_ `N p_ ` `` ?` `L ` x8b 0@b @Hb `J Pb c  c `c `H c <e  e 0(e `F 0e Ęf f  f `D f +g h 0h @B h Ehi Ppi `yxi  @ i j  j  Mj = j UHl Pl 0Xl ; `l 1m pm Em `9 m (o 0o  88o  7 @o ~p `p `p 5 p Xr r @r 2 r xs s Ps 0 s t pt t . u Xv `v hv `, pv ʣw мw w  * w 8y @y Hy ' Py -z z z % X| pp| .| `(|  A| .| 'p x     p    m          ( 0 8 @ H P X  `  h  p  x                     ! " #( $0 %8 &@ 'H (P )X *` +h ,p -x . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C( D0 E8 F@ GH HP IX J` Kh Lp Mx N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c( d0 e8 f@ gH hP iX j` kh lp mx n o p q r s t u v w x y z { | } ~     ( 0 8 @ H P X ` h p x                      ( 0 8 @ H P X ` h p x                      ( 0 8 @ H P X ` h p x                      ( 0 8 @ H P X ` h p x                      ( 0 8 @  H  P  X  `  h p x                  ! " # $ % &( '0 (8 )@ *H +P ,X -` .h /p 0x 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F( G0 H8 I@ JH KP LX M` Nh Op Px Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f( g0 h8 i@ jH kP lX m` nh op qx r s t u v w x y z { | } ~         ( 0 8 @ H P X ` h p x                      ( 0 8 @ H P X ` h p x                      ( 0 8 @ H P X ` h p x                      ( 0 8 @ H P X ` h p x                       (  0  8  @  H P X ` h p x              ! " # $ % & ' ( )  *( +0 ,8 -@ .H /P 0X 1` 2h 3p 4x 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I  J( K0 L8 M@ NH OP PX Q` Rh Sp Tx U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i  j( k0 l8 n@ oH pP qX r` sh tp ux v w x y z { | } ~              ( 0 8 @ H P X ` h p x                       ( 0 8 @ H P X ` h p x                       ( 0 8 @ H P X ` h p x                       ( 0 8 @ H P X ` h p x                           (  0 8 @ H P X ` h p x            ! " # $ % & ' ( ) * + ,( -0 .8 /@ 0H 1P 2X 3` 4h 5p 6x 7 8 9 : ; < = > ? @ A B C D E F G H I J K L( M0 N8 O@ PH QP RX S` Th Up Vx W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l( m0 n8 o@ pH qP rX s` th up vx w x y z { | } ~              ( 0 8 @ H P X ` h p x                      ( 0 8 @ H P X ` h p x                       ( 0 8 @ H P X ` h p x                       ( 0 8 @ H P X ` h p x                            ( 0 8 @ H P X ` h p x          ! " # $ % & ' ( ) * + , -  .( /0 08 1@ 2H 3P 4X 5` 6h 7p 8x 9 : ; < = > ? @ A B C D E F G H I J K L M  N( O0 P8 Q@ RH SP TX U` Vh Wp Xx Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m  n( o0 p8 q@ rH sP tX u` vh wp xx y z { | } ~                 ( 0 8 @ H P X ` h p x                       ( 0 8 @ H P X ` h p x                       ( 0 8 @ H P X ` h p x                       ( 0 8 @ H P X ` h p x                            ( 0 8 @ H P X ` h p x       ! " # $ % & ' ( ) * + , - . / 0  1( 20 38 4@ 5H 6P 7X 8` 9h :p ;x < = > ? @ A B C D E F G H I J K L M N O P  Q( R0 S8 T@ UH VP WX X` Yh Zp [x \ ] ^ _ ` a b c d e f g h i j k l m n o p  q( r0 s8 t@ uH vP wX x` yh zp {x | } ~                    ( 0 8 @ H P X ` h p x                       ( 0 8 @ H P X ` h p x                       ( 0 8 @ H P X ` h p x                       ( 0 8 @ H P X ` h p x                           ( 0 8 @ H P X ` h p x      ! " # $ % & ' ( ) * + , -! .! /! 0! 1 ! 2(! 30! 48! 5@! 6H! 7P! 8X! 9`! :h! ;p! <x! =! >! ?! @! A! B! C! D! E! F! G! H! I! J! K! L! M" N" O" P" Q " R(" S0" T8" U@" VH" WP" XX" Y`" Zh" [p" \x" ]" ^" _" `" a" b" c" d" e" f" g" h" i" j" k" l" m# n# o# p# q # r(# s0# t8# u@# vH# wP# xX# y`# zh# {p# |x# }# ~# # # # # # # # # # # # # # # $ $ $ $  $ ($ 0$ 8$ @$ H$ P$ X$ `$ h$ p$ x$ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ % % % %  % (% 0% 8% @% H% P% X% `% h% p% x% % HH}Ht H5%@%h%h%h%h%h%h%h%hp%h`%h P%h @%h 0%h %zh %rh%jh%bh%Zh%Rh%Jh%Bh%:h%2h%*hp%"h`%hP%h@% h0%h %~h%~h%~h%~h %~h!%~h"%~h#%~h$%~h%%~h&%~h'p%~h(`%~h)P%~h*@%~h+0%~h, %z~h-%r~h.%j~h/%b~h0%Z~h1%R~h2%J~h3%B~h4%:~h5%2~h6%*~h7p%"~h8`%~h9P%~h:@% ~h;0%~h< %}h=%}h>%}h?%}h@%}hA%}hB%}hC%}hD%}hE%}hF%}hGp%}hH`%}hIP%}hJ@%}hK0%}hL %z}hM%r}hN%j}hO%b}hP%Z}hQ%R}hR%J}hS%B}hT%:}hU%2}hV%*}hWp%"}hX`%}hYP%}hZ@% }h[0%}h\ %|h]%|h^%|h_%|h`%|ha%|hb%|hc%|hd%|he%|hf%|hgp%|hh`%|hiP%|hj@%|hk0%|hl %z|hm%r|hn%j|ho%b|hp%Z|hq%R|hr%J|hs%B|ht%:|hu%2|hv%*|hwp%"|hx`%|hyP%|hz@% |h{0%|h| %{h}%{h~%{h%{h%{h%{h%{h%{h%{h%{h%{hp%{h`%{hP%{h@%{h0%{h %z{h%r{h%j{h%b{h%Z{h%R{h%J{h%B{h%:{h%2{h%*{hp%"{h`%{hP%{h@% {h0%{h %zh%zh%zh%zh%zh%zh%zh%zh%zh%zh%zhp%zh`%zhP%zh@%zh0%zh %zzh%rzh%jzh%bzh%Zzh%Rzh%Jzh%Bzh%:zh%2zh%*zhp%"zh`%zhP%zh@% zh0%zh %yh%yh%yh%yh%yh%yh%yh%yh%yh%yh%yhp%yh`%yhP%yh@%yh0%yh %zyh%ryh%jyh%byh%Zyh%Ryh%Jyh%Byh%:yh%2yh%*yhp%"yh`%yhP%yh@% yh0%yh %xh%xh%xh%xh%xh%xh%xh%xh%xh%xh%xhp%xh`%xhP%xh@%xh0%xh %zxh%rxh%jxh%bxh%Zxh%Rxh%Jxh%Bxh%:xh%2xh%*xhp%"xh`%xhP%xh@% xh0%xh %wh%wh%wh%wh%wh%wh%wh%wh%wh%wh%whp%wh`%wh P%wh @%wh 0%wh  %zwh %rwh%jwh%bwh%Zwh%Rwh%Jwh%Bwh%:wh%2wh%*whp%"wh`%whP%wh@% wh0%wh %vh%vh%vh%vh %vh!%vh"%vh#%vh$%vh%%vh&%vh'p%vh(`%vh)P%vh*@%vh+0%vh, %zvh-%rvh.%jvh/%bvh0%Zvh1%Rvh2%Jvh3%Bvh4%:vh5%2vh6%*vh7p%"vh8`%vh9P%vh:@% vh;0%vh< %uh=%uh>%uh?%uh@%uhA%uhB%uhC%uhD%uhE%uhF%uhGp%uhH`%uhIP%uhJ@%uhK0%uhL %zuhM%ruhN%juhO%buhP%ZuhQ%RuhR%JuhS%BuhT%:uhU%2uhV%*uhWp%"uhX`%uhYP%uhZ@% uh[0%uh\ %th]%th^%th_%th`%tha%thb%thc%thd%the%thf%thgp%thh`%thiP%thj@%thk0%thl %zthm%rthn%jtho%bthp%Zthq%Rthr%Jths%Btht%:thu%2thv%*thwp%"thx`%thyP%thz@% th{0%th| %sh}%sh~%sh%sh%sh%sh%sh%sh%sh%sh%shp%sh`%shP%sh@%sh0%sh %zsh%rsh%jsh%bsh%Zsh%Rsh%Jsh%Bsh%:sh%2sh%*shp%"sh`%shP%sh@% sh0%sh %rh%rh%rh%rh%rh%rh%rh%rh%rh%rh%rhp%rh`%rhP%rh@%rh0%rh %zrh%rrh%jrh%brh%Zrh%Rrh%Jrh%Brh%:rh%2rh%*rhp%"rh`%rhP%rh@% rh0%rh %qh%qh%qh%qh%qh%qh%qh%qh%qh%qh%qhp%qh`%qhP%qh@%qh0%qh %zqh%rqh%jqh%bqh%Zqh%Rqh%Jqh%Bqh%:qh%2qh%*qhp%"qh`%qhP%qh@% qh0%qh %ph%ph%ph%ph%ph%ph%ph%ph%ph%ph%php%ph`%phP%ph@%ph0%ph %zph%rph%jph%bph%Zph%Rph%Jph%Bph%:ph%2ph%*php%"ph`%phP%ph@% ph0%ph %oh%oh%oh%oh%oh%oh%oh%oh%oh%oh%ohp%oh`%oh P%oh @%oh 0%oh  %zoh %roh%joh%boh%Zoh%Roh%Joh%Boh%:oh%2oh%*ohp%"oh`%ohP%oh@% oh0%oh %nh%nh%nh%nh %nh!%nh"%nh#%nh$%nh%%nh&%nh'p%nh(`%nh)P%nh*@%nh+0%nh, %znh-%rnh.%jnh/%bnh0%Znh1%Rnh2%Jnh3%Bnh4%:nh5%2nh6%*nh7p%"nh8`%nh9P%nh:@% nh;0%nh< %mh=%mh>%mh?%mh@%mhA%mhB%mhC%mhD%mhE%mhF%mhGp%mhH`%mhIP%mhJ@%mhK0%mhL %zmhM%rmhN%jmhO%bmhP%ZmhQ%RmhR%JmhS%BmhT%:mhU%2mhV%*mhWp%"mhX`%mhYP%mhZ@% mh[0%mh\ %lh]%lh^%lh_%lh`%lha%lhb%lhc%lhd%lhe%lhf%lhgp%lhh`%lhiP%lhj@%lhk0%lhl %zlhm%rlhn%jlho%blhp%Zlhq%Rlhr%Jlhs%Blht%:lhu%2lhv%*lhwp%"lhx`%lhyP%lhz@% lh{0%lh| %kh}%kh~%kh%kh%kh%kh%kh%kh%kh%kh%khp%kh`%khP%kh@%kh0%kh %zkh%rkh%jkh%bkh%Zkh%Rkh%Jkh%Bkh%:kh%2kh%*khp%"kh`%khP%kh@% kh0%kh %jh%jh%jh%jh%jh%jh%jh%jh%jh%jh%jhp%jh`%jhP%jh@%jh0%jh %zjh%rjh%jjh%bjh%Zjh%Rjh%Jjh%Bjh%:jh%2jh%*jhp%"jh`%jhP%jh@% jh0%jh %ih%ih%ih%ih%ih%ih%ih%ih%ih%ih%ihp%ih`%ihP%ih@%ih0%ih %zih%rih%jih%bih%Zih%Rih%Jih%Bih%:ih%2ih%*ihp%"ih`%ihP%ih@% ih0%ih %hh%hh%hh%hh%hh%hh%hh%hh%hh%hh%hhp%hh`%hhP%hh@%hh0%hh %zhh%rhh%jhh%bhh%Zhh%Rhh%Jhh%Bhh%:hh%2hh%*hhp%"hh`%hhP%hh@% hh0%hh %gh%gh%gh%gh%gh%gh%gh%gh%gh%gh%ghp%gh`%gh P%gh @%gh 0%gh  %zgh %rgh%jgh%bgh%Zgh%Rgh%Jgh%Bgh%:gh%2gh%*ghp%"gh`%ghP%gh@% gh0%gh %fh%fh%fh%fh %fh!%fh"%fh#%fh$%fh%%fh&%fh'p%fh(`%fh)P%fh*@%fh+0%fh, %zfh-%rfh.%jfh/%bfh0%Zfh1%Rfh2%Jfh3%Bfh4%:fh5%2fh6%*fh7p%"fh8`%fh9P%fh:@% fh;0%fh< %eh=%eh>%eh?%eh@%ehA%ehB%ehC%ehD%ehE%ehF%ehGp%ehH`%ehIP%ehJ@%ehK0%ehL %zehM%rehN%jehO%behP%ZehQ%RehR%JehS%BehT%:ehU%2ehV%*ehWp%"ehX`%ehYP%ehZ@% eh[0%eh\ %dh]%dh^%dh_%dh`%dha%dhb%dhc%dhd%dhe%dhf%dhgp%dhh`%dhiP%dhj@%dhk0%dhl %zdhm%rdhn%jdho%bdhp%Zdhq%Rdhr%Jdhs%Bdht%:dhu%2dhv%*dhwp%"dhx`%dhyP%dhz@% dh{0%dh| %ch}%ch~%ch%ch%ch%ch%ch%ch%ch%ch%chp%ch`%chP%ch@%ch0%ch %zch%rch%jch%bch%Zch%Rch%Jch%Bch%:ch%2ch%*chp%"ch`%chP%ch@% ch0%ch %bh%bh%bh%bh%bh%bh%bh%bh%bh%bh%bhp%bh`%bhP%bh@%bh0%bh %zbh%rbh%jbh%bbh%Zbh%Rbh%Jbh%Bbh%:bh%2bh%*bhp%"bh`%bhP%bh@% bh0%bh %ah%ah%ah%ah%ah%ah%ah%ah%ah%ah%ahp%ah`%ahP%ah@%ah0%ah %zah%rah%jah%bah%Zah%Rah%Jah%Bah%:ah%2ah%*ahp%"ah`%ahP%ah@% ah0%ah %`h%`h%`h%`h%`h%`h%`h%`h%`h%`h%`hp%`h`%`hP%`h@%`h0%`h %z`h%r`h%j`h%b`h%Z`h%R`h%J`h%B`h%:`h%2`h%*`hp%"`h`%`hP%`h@% `h0%`h %_h%_h%_h%_h%_hп%_h%_h鰿%_h頿%_h鐿%_h逿%_hp%_h`%_h P%_h @%_h 0%_h  %z_h %r_h%j_h%b_h%Z_hо%R_h%J_h鰾%B_h頾%:_h鐾%2_h逾%*_hp%"_h`%_hP%_h@% _h0%_h %^h%^h%^h%^h %^h!н%^h"%^h#鰽%^h$頽%^h%鐽%^h&逽%^h'p%^h(`%^h)P%^h*@%^h+0%^h, %z^h-%r^h.%j^h/%b^h0%Z^h1м%R^h2%J^h3鰼%B^h4頼%:^h5鐼%2^h6逼%*^h7p%"^h8`%^h9P%^h:@% ^h;0%^h< %]h=%]h>%]h?%]h@%]hAл%]hB%]hC鰻%]hD頻%]hE鐻%]hF逻%]hGp%]hH`%]hIP%]hJ@%]hK0%]hL %z]hM%r]hN%j]hO%b]hP%Z]hQк%R]hR%J]hS鰺%B]hT頺%:]hU鐺%2]hV逺%*]hWp%"]hX`%]hYP%]hZ@% ]h[0%]h\ %\h]%\h^%\h_%\h`%\haй%\hb%\hc鰹%\hd頹%\he鐹%\hf逹%\hgp%\hh`%\hiP%\hj@%\hk0%\hl %z\hm%r\hn%j\ho%b\hp%Z\hqи%R\hr%J\hs鰸%B\ht頸%:\hu鐸%2\hv逸%*\hwp%"\hx`%\hyP%\hz@% \h{0%\h| %[h}%[h~%[h%[h%[hз%[h%[h鰷%[h頷%[h鐷%[h逷%[hp%[h`%[hP%[h@%[h0%[h %z[h%r[h%j[h%b[h%Z[hж%R[h%J[h鰶%B[h頶%:[h鐶%2[h逶%*[hp%"[h`%[hP%[h@% [h0%[h %Zh%Zh%Zh%Zh%Zhе%Zh%Zh鰵%Zh頵%Zh鐵%Zh逵%Zhp%Zh`%ZhP%Zh@%Zh0%Zh %zZh%rZh%jZh%bZh%ZZhд%RZh%JZh鰴%BZh頴%:Zh鐴%2Zh逴%*Zhp%"Zh`%ZhP%Zh@% Zh0%Zh %Yh%Yh%Yh%Yh%Yhг%Yh%Yh鰳%Yh頳%Yh鐳%Yh逳%Yhp%Yh`%YhP%Yh@%Yh0%Yh %zYh%rYh%jYh%bYh%ZYhв%RYh%JYh鰲%BYh頲%:Yh鐲%2Yh進%*Yhp%"Yh`%YhP%Yh@% Yh0%Yh %Xh%Xh%Xh%Xh%Xhб%Xh%Xh鰱%Xh頱%Xh鐱%Xh週%Xhp%Xh`%XhP%Xh@%Xh0%Xh %zXh%rXh%jXh%bXh%ZXhа%RXh%JXh鰰%BXh頰%:Xh鐰%2Xh逰%*Xhp%"Xh`%XhP%Xh@% Xh0%Xh %Wh%Wh%Wh%Wh%WhЯ%Wh%Wh鰯%Wh頯%Wh鐯%Wh逯%Whp%Wh`%Wh P%Wh @%Wh 0%Wh  %zWh %rWh%jWh%bWh%ZWhЮ%RWh%JWh鰮%BWh頮%:Wh鐮%2Wh逮%*Whp%"Wh`%WhP%Wh@% Wh0%Wh %Vh%Vh%Vh%Vh %Vh!Э%Vh"%Vh#鰭%Vh$頭%Vh%鐭%Vh&逭%Vh'p%Vh(`%Vh)P%Vh*@%Vh+0%Vh, %zVh-%rVh.%jVh/%bVh0%ZVh1Ь%RVh2%JVh3鰬%BVh4頬%:Vh5鐬%2Vh6逬%*Vh7p%"Vh8`%Vh9P%Vh:@% Vh;0%Vh< %Uh=%Uh>%Uh?%Uh@%UhAЫ%UhB%UhC鰫%UhD頫%UhE鐫%UhF逫%UhGp%UhH`%UhIP%UhJ@%UhK0%UhL %zUhM%rUhN%jUhO%bUhP%ZUhQЪ%RUhR%JUhS鰪%BUhT頪%:UhU鐪%2UhV逪%*UhWp%"UhX`%UhYP%UhZ@% Uh[0%Uh\ %Th]%Th^%Th_%Th`%ThaЩ%Thb%Thc鰩%Thd頩%The鐩%Thf逩%Thgp%Thh`%ThiP%Thj@%Thk0%Thl %zThm%rThn%jTho%bThp%ZThqШ%RThr%JThs鰨%BTht頨%:Thu鐨%2Thv逨%*Thwp%"Thx`%ThyP%Thz@% Th{0%Th| %Sh}%Sh~%Sh%Sh%ShЧ%Sh%Sh鰧%Sh頧%Sh鐧%Sh逧%Shp%Sh`%ShP%Sh@%Sh0%Sh %zSh%rSh%jSh%bSh%ZShЦ%RSh%JSh鰦%BSh頦%:Sh鐦%2Sh逦%*Shp%"Sh`%ShP%Sh@% Sh0%Sh %Rh%Rh%Rh%Rh%RhХ%Rh%Rh鰥%Rh頥%Rh鐥%Rh逥%Rhp%Rh`%RhP%Rh@%Rh0%Rh %zRh%rRh%jRh%bRh%ZRhФ%RRh%JRh鰤%BRh頤%:Rh鐤%2Rh逤%*Rhp%"Rh`%RhP%Rh@% Rh0%Rh %Qh%Qh%Qh%Qh%QhУ%Qh%Qh鰣%Qh頣%Qh鐣%Qh連%Qhp%Qh`%QhP%Qh@%Qh0%Qh %zQh%rQh%jQh%bQh%ZQhТ%RQh%JQh鰢%BQh頢%:Qh鐢%2Qh逢%*Qhp%"Qh`%QhP%Qh@% Qh0%Qh %Ph%Ph%Ph%Ph%PhС%Ph%Ph鰡%Ph頡%Ph鐡%Ph逡%Php%Ph`%PhP%Ph@%Ph0%Ph %zPh%rPh%jPh%bPh%ZPhР%RPh%JPh鰠%BPh頠%:Ph鐠%2Ph造%*Php%"Ph`%PhP%Ph@% Ph0%Ph %Oh%Oh%Oh%Oh%OhП%Oh%Oh鰟%Oh頟%Oh鐟%Oh速%Ohp%Oh`%Oh P%Oh @%Oh 0%Oh  %zOh %rOh%jOh%bOh%ZOhО%ROh%JOh鰞%BOh頞%:Oh鐞%2Oh逞%*Ohp%"Oh`%OhP%Oh@% Oh0%Oh %Nh%Nh%Nh%Nh %Nh!Н%Nh"%Nh#鰝%Nh$頝%Nh%鐝%Nh&逝%Nh'p%Nh(`%Nh)P%Nh*@%Nh+0%Nh, %zNh-%rNh.%jNh/%bNh0%ZNh1М%RNh2%JNh3鰜%BNh4頜%:Nh5鐜%2Nh6逜%*Nh7p%"Nh8`%Nh9P%Nh:@% Nh;0%Nh< %Mh=%Mh>%Mh?%Mh@%MhAЛ%MhB%MhC鰛%MhD頛%MhE鐛%MhF逛%MhGp%MhH`%MhIP%MhJ@%MhK0%MhL %zMhM%rMhN%jMhO%bMhP%ZMhQК%RMhR%JMhS鰚%BMhT頚%:MhU鐚%2MhV通%*MhWp%"MhX`%MhYP%MhZ@% Mh[0%Mh\ %Lh]%Lh^%Lh_%Lh`%LhaЙ%Lhb%Lhc鰙%Lhd頙%Lhe鐙%Lhf這%Lhgp%Lhh`%LhiP%Lhj@%Lhk0%Lhl %zLhm%rLhn%jLho%bLhp%ZLhqИ%RLhr%JLhs鰘%BLht領%:Lhu鐘%2Lhv逘%*Lhwp%"Lhx`%LhyP%Lhz@% Lh{0%Lh| %Kh}%Kh~%Kh%Kh%KhЗ%Kh%Kh鰗%Kh頗%Kh鐗%Kh逗%Khp%Kh`%KhP%Kh@%Kh0%Kh %zKh%rKh%jKh%bKh%ZKhЖ%RKh%JKh鰖%BKh頖%:Kh鐖%2Kh逖%*Khp%"Kh`%KhP%Kh@% Kh0%Kh %Jh%Jh%Jh%Jh%JhЕ%Jh%Jh鰕%Jh頕%Jh鐕%Jh逕%Jhp%Jh`%JhP%Jh@%Jh0%Jh %zJhH=ɢ H¢ H9tHHt H= H5 H)HH?HHHtHMHtfD=Y u/UH=6Ht H=h1 ]{f.LGMUSHHoHHGHsALcSAHcH;tBDG LEHL[]fDACIXHH@HHA9dHLcIHI9tLcIcNLHOHHHL9HTAI9AAHDfLAHIL)HHBH9u@t]D)HcDAP9~T$1H$HJH5eH1pH=h H聴HD$ HD$ H[]A\A]A^A_@;}HuH=g LGDD$D$tHt$hH9tnH|$HID$D$tD$u]1H$HIH5qdJ@|HRH=[g Ló>fDD$D$$Ht$@H9tJH|$HID$D$L$Hcy6H$HIH5cD$D$11H9D$0~Ht$`H9tGH|$HID$D$L$Hcy3H$HIH5cFD$D$L11H9D$P~Ht$(H9H|$ HI2D$D$t$D$L$ HcT$LD$P1y)I)HI9DD$D$Hct$LL$0AD1I)D)HI9HHH|$ LD$I LHT$AzHtD$D$tLHH=b1谿HD$ VHcT$HD$0L$H)ЋT$1)HHcHD$ H$HHH5QbH$HHH56bAWHHH1bAVAUATIH YUSH HqHD$pHD$(D$D$H\$0HD$8H\$@D$H\$HD$H\$PHD$XH\$`D$ H\$hD$$H\$pPHD$pPHD$`PHD$`PHD$PP1LD$hL$葷H0A1Efofo ߓA`DŽ$t `xHT$0HfoHT$xfo$$fD$A$Ll$xAULL$HAYAZHfoHfo OfogLp`$foȒf$HT$PH$A$$DŽ$t `yL$AWLL$h^_IH Ht$HLxH9H|$HFD$D$t>T$1H$HDH5_H1H=b HHD$ HD$ H[]A\A]A^A_@wHuH=Ob L跮DD$D$tHt$hH9tnH|$HzFD$D$tD$u]1H$H@DH5Q_J@+wHRH=a L3>fDD$D$$Ht$@H9tJH|$H.FD$D$L$Hcy6H$HDH5^D$D$11H9D$0~Ht$`H9tGH|$HED$D$L$Hcy3H$H$DH5q^FD$D$L11H9D$P~Ht$(H9H|$ HED$D$t$D$L$ HcT$LD$P1y)I)HI9t$D$LcL$LD$01M))HI9I K4HT$H|$ LD$AhuHtD$D$LHH=/]1+HD$ aHcT$HD$0L$H)ЋT$1)HHcHD$ H$HUCH5<]H$HrCH5!]ff.AWHHH]AVAUATIH 1SUSH HHD$pHD$(D$D$H\$0HD$8H\$@D$H\$HD$H\$PHD$XH\$`D$ H\$hD$$H\$pPHD$pPHD$`PHD$`PHD$PP1LD$hL$H0A1Efofo OA`DŽ$t `xHT$0HfoT$xfo& $$fD$A$Ll$xAULL$H)AYAZHfoZHfo foLp`$fo8f$HT$PH$ A$$DŽ$t `yL$AWLL$h^_IH Ht$HLxH9H|$HB:D$D$t>T$1H$H>H5ZH1P|H=\ HaHD$ HD$ H[]A\A]A^A_@rHuH=\ L'DD$D$tHt$hH9tnH|$H*BD$D$tD$u]1H$H>H5.ZJ@qHRH=;\ L裨>fDD$D$$Ht$@H9tJH|$HAD$D$L$Hcy6H$H>H5YD$D$11H9D$0~Ht$`H9tGH|$HA膿D$D$L$Hcy3H$H>H5NYFD$D$L11H9D$P~Ht$(H9H|$ HwAD$D$t$D$L$ HcT$LD$P1y)I)HI9t$D$LcL$LD$01M))HI9I K4HT$H|$ LD$AoHtD$D$LHH=W1蛴HD$ aHcT$HD$0L$H)ЋT$1)HHcHD$ H$H=H5XH$H=H5Wff.AWHHHWAVAUATIH aMUSH HQHD$pHD$(D$D$H\$0HD$8H\$@D$H\$HD$H\$PHD$XH\$`D$ H\$hD$$H\$pPHD$pPHD$`PHD$`PHD$PP1LD$hL$qH0A1Efofo A`DŽ$t `xHT$0Hfo(T$xfo $$fD$A$Ll$xAULL$HAYAZHfoʇHfo /fogLp`$fof$HT$PH$ A$$DŽ$t `yL$AWLL$h ^_IH Ht$HLxH9H|$HO>誻D$D$t>T$1H$Ha9H5UH1vH=iW HѣHD$ HD$ H[]A\A]A^A_@lHuH=/W L藣DD$D$tHt$hH9tnH|$H=D$D$tD$u]1H$H 9H5 UJ@ lHRH=V L>fDD$D$$Ht$@H9tJH|$H=iD$D$L$Hcy6H$H8H5TD$D$11H9D$0~Ht$`H9tGH|$H[=D$D$L$Hcy3H$H9H5+TFD$D$L11H9D$P~Ht$(H9H|$ H'=肹D$D$t$D$L$ HcT$LD$P1y)I)HI9t$D$LcL$LD$01M))HI9I K4HT$H|$ LD$AHjHtD$D$LHH=R1 HD$ aHcT$HD$0L$H)ЋT$1)HHcHD$ H$H58H5RH$HR8H5Rff.AWfvHHAVHRAUATUSHH SHL=HD$`)$HD$pD$DD$@L|$xD$HL$D$LL$D$PL$L$L$D$THDŽ$L$D$XL$D$\L$L$HDŽ$D$`L$D$dL$D$hL$D$lL$PH$PH$PH$PH$PH$PH$PH$PH$PH$PH$PH$PH$P1L$L$HpRH$L9tuH|$dHY:tD$8D$8t8L$dv_H$Hp:H5PH1qH=8R H蠞HD$hHD$hHĸ[]A\A]A^A_@D$8D$dtH$Ld$DHD:LD$8D$8tL$DH$Hl$HHx:H谵D$8D$8pL$HH$L9twH|$PH:vD$8D$86t$Pub1H$H%H5P1fH$H9H5ODD$8D$PH$L9taH|$\HK:޴D$8D$8L$\uL1H$H3H5O`H$H9H5[OED$8D$\JH$L9qH|$TH:XD$8D$8H$L9LH|$`H:&D$8D$8L$H$fH#:L)$kt1fZ$$fZ$$D$8D$8vH$L9fH9L)$t1fZ$$fZ$$D$8D$8H$`FH$AH5;PH$hHD$PL$IXZM IFHt$pH9HD$HD$8D$@PaHtH=L L`D$`|$dpuD$Ht$$fHnH=DHD$fL$H H5>*uD=HH=( LufD$D$N11@H)ЋT$ L$ 1)HHcHD$L$DH H5)AUHHH)ATIH #USHHHD$8HD$D$$H\$HD$ H\$(D$H\$0D$ H\$8PHD$8P1LD$8LL$(z_AYA1E$`fo;Xf$HT$ HAD$HfoW DŽ$t `xD$XfoVD$hfoVD$xLl$HAULL$8'Y^HHHt$8LhH9H|$ H[֊$$t=D$ 1L$HH5b(L1EH=& LrH9l$(t HExHHEuHmfDHD$HD$HĘ[]A\A]Ë$D$ tHt$0H9;H|$H"$$tL$HcхHD$ H9Ht$H9H|$H܉$$?T$ D$ DD$Hct$HL$ 1)APH)HH9HT$ ItH|$AfH~:Ht$$fHnH=:AHD$L$HH5&}Dk:HH= % LsqfD$D$V11@H)ЋT$ L$ 1)HHcHD$L$DHH5z&AUHHHn&ATIH USHHHD$8HD$D$$H\$HD$ H\$(D$H\$0D$ H\$8PHD$8P1LD$8LL$(cw_AYA1E,x`foTDŽ$nt `f$HT$ HD$HA foTƄ$D$XfoSD$hfoSD$xLl$HAULL$8Y^HHHt$8LhH9H|$ H>$$t=D$ 1L$HH5%L1VBH=" LgoH9l$(t HExHHEuHvifDHD$HD$HĘ[]A\A]$D$ tHt$0H93H|$H肆$$}L$HcхHD$ H9Ht$H9 H|$H8$$3T$ D$ DD$Hct$HL$ 1)APH)HH9HT$ ItH|$Aԉ.7Ht$$sH=#1{HD$@L$HYH5#}D6HH=s! LmfD$D$V11@H)ЋT$ L$ 1)HHcHD$L$DHH5+#ff.@AUHHH#ATIH 5USHHeHD$8HD$D$$H\$HD$ H\$(D$H\$0D$ H\$8PHD$8P1LD$8LL$(s_AYA1E,x`foEQDŽ$nt `f$HT$ HD$HA foPƄ$D$XfoRPD$hfoUPD$xLl$HAULL$8Y^HHHt$8LhH9H|$ H螃$$t=D$ 1L$HWH5!L1>H=_ LkH9l$(t HExHHEuHefDHD$HD$HĘ[]A\A]$D$ tHt$0H93H|$H'$$}L$HcхHD$ H9Ht$H9 H|$H蘂$$3T$ D$ DD$Hct$HL$ 1)APH)HH9HT$ ItH|$Aԉ3Ht$$sH=T 1VxHD$@L$HH5R }D33HH= L;jfD$D$V11@H)ЋT$ L$ 1)HHcHD$L$DHSH5ff.@AUHHHATIH USHHŎHD$8HD$D$$H\$HD$ H\$(D$H\$0D$ H\$8PHD$8P1LD$8LL$(#p_AYA1E,x`foMDŽ$nt `f$HT$ HD$HAfoWMƄ$D$XfoLD$hfoLD$xLl$HAULL$8OY^HHHt$8LhH9H|$ H$$t=D$ 1L$HH5gL1;H= L'hH9l$(t HExHHEuH6bfDHD$HD$HĘ[]A\A]$D$ tHt$0H9;H|$HGB$$}L$HcхHD$ H9Ht$H9H|$H=~$$3T$ D$ DD$Hct$HL$ 1)APH)HH9HHT$ H|$LAԉ/Ht$$sH=1tHD$f.L$HH5uD/HH=+ LffD$D$N11@H)ЋT$ L$ 1)HHcHD$L$DHH5yAUHHHnATIH 5USHH%HD$8HD$D$$H\$HD$ H\$(D$H\$0D$ H\$8PHD$8P1LD$8LL$(l_AYA1E,x`fo%JDŽ$nt `f$HT$ HD$HAfoIƄ$D$XfoID$hfoID$xLl$HAULL$8Y^HHHt$8LhH9H|$ H^|$$t=D$ 1L$HH5L1v7H= LdH9l$(t HExHHEuH^fDHD$HD$HĘ[]A\A]$D$ tHt$0H93H|$Hg{$$}L$HcхHD$ H9Ht$H9 H|$H]X{$$3T$ D$ DD$Hct$HL$ 1)APH)HH9HT$ ItH|$AԉN,Ht$$sH=1qHD$@L$HyH5}D+HH= LbfD$D$V11@H)ЋT$ L$ 1)HHcHD$L$DHH5+ff.@AWHHHAVAUATIH  USH HHD$pHD$(D$D$H\$0HD$8H\$@D$H\$HD$H\$PHD$XH\$`D$ H\$hD$$H\$pPHD$pPHD$`PHD$`PHD$PP1LD$hL$hH0A1EfogEfo OFA`DŽ$t `xHT$0HfoXDT$xfoD $$fD$A$Ll$xAULL$HAYAZHfoCHfo EfoD1Lp`$foCf$HT$PH$ A$$DŽ$t `yL$AWLL$h+^_IH-Ht$HLxH9H|$HwD$D$t=T$1L$HH5L12H= L`H9l$8tHExHHE4@HD$ HD$ H[]A\A]A^A_@(HuH=? L_DD$D$tHt$hH9tnH|$H wD$D$dD$uY1L$H,H5&(H1H= L#_fDD$D$Ht$@H9tZH|$H> yvD$D$L$HcyFL$HH5HXD$D$11H9D$0~Ht$`H9tGH|$H uD$D$UL$Hcy3L$HH5(D$D$11H9D$P~Ht$(H9H|$ H uD$D$t$D$L$ HcT$LD$P1y)I)HI9t$D$LcL$LD$01M))HI9I K4HT$H|$ LD$AH&HtD$D$NLH=1kHD$ 3HcT$HD$0L$H)ЋT$1)HHcHD$ L$H8H5L$HUff.AWHHHAVAUATIH USH HсHD$pHD$(D$D$H\$0HD$8H\$@D$H\$HD$H\$PHD$XH\$`D$ H\$hD$$H\$pPHD$pPHD$`PHD$`PHD$PP1LD$hL$bH0A1Efo@fo @A`DŽ$t `xHT$0Hfo>T$xfo? $$fD$A$Ll$xAULL$HAYAZHfoJ>Hfo @fo@1Lp`$fo(>f$HT$PH$ A$$DŽ$t `yL$AWLL$h{^_IH-Ht$HLxH9H|$H *rD$D$t=T$1L$HH5L1@-H= LQZH9l$8tHExHHE4@HD$ HD$ H[]A\A]A^A_@"HuH= LYDD$D$tHt$hH9tnH|$H UqD$D$dD$uY1L$H|H5&k"H1H= LsYfDD$D$Ht$@H9tZH|$HpD$D$L$HcyFL$H_H5VH(SD$D$11H9D$0~Ht$`H9tGH|$HFpD$D$UL$Hcy3L$HTH5D$D$11H9D$P~Ht$(H9H|$ HWoD$D$t$D$L$ HcT$LD$P1y)I)HI9t$D$LcL$LD$01M))HI9I K4HT$H|$ LD$A HtD$D$NLH=c1^eHD$ 3HcT$HD$0L$H)ЋT$1)HHcHD$ L$HH5L$Hff.AWHHHAVAUATIH 1USH H!|HD$pHD$(D$D$H\$0HD$8H\$@D$H\$HD$H\$PHD$XH\$`D$ H\$hD$$H\$pPHD$pPHD$`PHD$`PHD$PP1LD$hL$A]H0A1Efo;fo :A`DŽ$t `xHT$0Hfo8T$xfof9$$fD$A$Ll$xAULL$HiAYAZHfo8Hfo _:fow:1Lp`$fox8f$HT$PH$A$$DŽ$t `yL$AWLL$h˾^_IH-Ht$HLxH9H|$H?zlD$D$t=T$1L$H1H5Q L1'H=9 LTH9l$8tHExHHE4@HD$ HD$ H[]A\A]A^A_@;HuH= LGTDD$D$tHt$hH9tnH|$HkD$D$dD$uY1L$HH5 &H1H=[ LSfDD$D$Ht$@H9tZH|$H^kD$D$L$HcyFL$HH5 HxMD$D$11H9D$0~Ht$`H9tGH|$HjD$D$UL$Hcy3L$HH5 D$D$11H9D$P~Ht$(H9H|$ H"jD$D$t$D$L$ HcT$LD$P1y)I)HI9t$D$LcL$LD$01M))HI9I K4HT$H|$ LD$AHtD$D$NLH=1_HD$ 3HcT$HD$0L$H)ЋT$1)HHcHD$ L$HH5p L$Hff.AWHHHO AVAUATIH USH HqvHD$pHD$(D$D$H\$0HD$8H\$@D$H\$HD$H\$PHD$XH\$`D$ H\$hD$$H\$pPHD$pPHD$`PHD$`PHD$PP1LD$hL$WH0A1Efow5fo ?5A`DŽ$t `xHT$0HfoH3T$xfo3$$fD$A$Ll$xAULL$H蹹AYAZHfo2Hfo 4fo41Lp`$fo2f$HT$PH$A$$DŽ$t `yL$AWLL$h^_IH-Ht$HLxH9H|$HfD$D$t=T$1L$HH5L1!H= LNH9l$8tHExHHE4@HD$ HD$ H[]A\A]A^A_@HuH=/ LNDD$D$tHt$hH9tnH|$H:eD$D$dD$uY1L$HH5K& H1H= LNfDD$D$Ht$@H9tZH|$HieD$D$L$HcyFL$HH5HGD$D$11H9D$0~Ht$`H9tGH|$HdD$D$UL$Hcy3L$HH5_D$D$11H9D$P~Ht$(H9H|$ HwrdD$D$t$D$L$ HcT$LD$P1y)I)HI9DD$D$Hct$LL$0AD1I)D)HI9HHH|$ LD$I LHT$A-HtD$D$CLH=1YHD$ (HcT$HD$0L$H)ЋT$1)HHcHD$ L$HH5"L$H:AWHHH AVAUIH ATUSH0HpH$HD$8D$$D$ H\$@HD$HH\$PD$(H\$XD$,H\$`HD$hH\$pD$0H\$xD$4H$PH$PHD$pPHD$pPHD$`P1LD$xL$QH0A1Efo/fo /DŽ$ `x`HT$@HA fo/fo/$$$$Ƅ$L$ATLL$X_AXHfoc/Hfo H/fo0/JLpHT$`$foQ/DŽ$ `y`H$A $$Ƅ$L$AWLL$xiY^IHSHt$XLxH9H|$$H]aD$D$t=T$$1L$ HH5L1.H=L?IL9d$htI$xHI$jfH9l$HtHExHHE;HD$0HD$0H([]A\A]A^A_@HuH=_LHDD$D$$mHt$xH9trH|$,H!`D$D$BD$,u]1L$ HHH5@3H*H=L;HfDD$D$,Ht$PH9tjH|$ HV_D$D$L$ HcyVL$ H'H5bsHALAD$D$ U11H9D$@~Ht$pH9tGH|$(H^D$D$L$(Hcy3L$ H H5D$D$(11H9D$`~Ht$8H9H|$H^D$D$t$,D$,L$HcT$(LD$`1y)I)HI9t$$D$$LcL$ LD$@1M))HI9I K4HT$$H|$LD$,AD$JD$HtD$D$ H= THD$0HcT$ HD$@L$$H)ЋT$$1)HHcHD$ L$ H4H5L$ HQAWHHHAVAUIH ATUSH0HjH$HD$8D$$D$ H\$@HD$HH\$PD$(H\$XD$,H\$`HD$hH\$pD$0H\$xD$4H$PH$PHD$pPHD$pPHD$`P1LD$xL$KH0A1Efo.*fo )DŽ$ `x`HT$@HA fo)fo)$$$$Ƅ$L$ATLL$X_AXHfos)Hfo X)fo)JLpHT$`$foa)DŽ$ `y`H$A $$Ƅ$L$AWLL$xyY^IHSHt$XLxH9H|$$H([D$D$t=T$$1L$ HH5?L1>H=LOCL9d$htI$xHI$jfH9l$HtHExHHE;HD$0HD$0H([]A\A]A^A_@ HuH=oLBDD$D$$mHt$xH9trH|$,H1ZD$D$BD$,u]1L$ HXH5Y@C H*H=LKBfDD$D$,Ht$PH9tjH|$ HYD$D$L$ HcyVL$ H7H5sH<L;D$D$ U11H9D$@~Ht$pH9tGH|$(HKYD$D$L$(Hcy3L$ HH5WD$D$(11H9D$`~Ht$8H9H|$HXD$D$t$,D$,L$HcT$(LD$`1y)I)HI9t$$D$$LcL$ LD$@1M))HI9I K4HT$$H|$LD$,AD$ Z D$ HtD$D$ H=3ZNHD$0HcT$ HD$@L$$H)ЋT$$1)HHcHD$ L$ H@H5L$ H]AWHHHAVAUIH 3ATUSH HdHD$pHD$(D$D$H\$0HD$8H\$@D$H\$HD$H\$PHD$XH\$`D$ H\$hD$$H\$pPHD$pPHD$`PHD$`PHD$PP1LD$hL$FH0A1EfoW$fo _$A`DŽ$t `xHT$0Hfo!T$xfo&"$$fD$A$Ld$xATLL$H)AYAZHfoZ!Hfo #fo#QLp`$fo8!f$HT$PH$A$$DŽ$t `yL$AWLL$h苧^_IHUHt$HLxH9H|$H:UD$D$t=T$1L$HH5L1PH=La=L9d$XtI$xHI$l@H9l$8tHExHHE;HD$ HD$ H[]A\A]A^A_@HuH=L<DD$D$kHt$hH9trH|$H6ATD$D$@D$u]1L$HhH5@SH*H=L[<fDD$D$Ht$@H9tjH|$HSD$D$L$HcyVL$HGH5SqH6L6D$D$S11H9D$0~Ht$`H9tGH|$HSD$D$L$Hcy3L$H,H5D$D$11H9D$P~Ht$(H9H|$ H_RD$D$t$D$L$ HcT$LD$P1y)I)HI9DD$D$Hct$LL$0AD1I)D)HI9HHHL$HHHt$ H$LLL$MAWHtD$D$$$H=H1HHD$ HcT$HD$0L$H)ЋT$1)HHcHD$ L$H0H5pjL$HMAWHHHWAVAUIH ATUSH H^HD$pHD$(D$D$H\$0HD$8H\$@D$H\$HD$H\$PHD$XH\$`D$ H\$hD$$H\$pPHD$pPHD$`PHD$`PHD$PP1LD$hL$?H0A1EfoGfo _A`DŽ$t `xHT$0HfoT$xfo$$fD$A$Ld$xATLL$HAYAZHfoJHfo foQLp`$fo(f$HT$PH$A$$DŽ$t `yL$AWLL$h{^_IHUHt$HLxH9H|$H*OD$D$t=T$1L$HH5L1@ H=LQ7L9d$XtI$xHI$l@H9l$8tHExHHE;HD$ HD$ H[]A\A]A^A_@HuH=oL6DD$D$kHt$hH9trH|$Hf1ND$D$@D$u]1L$HXH5/@CH*H=LK6fDD$D$Ht$@H9tjH|$HMD$D$L$HcyVL$H7H5qH0L/D$D$S11H9D$0~Ht$`H9tGH|$HMD$D$L$Hcy3L$HH5/D$D$11H9D$P~Ht$(H9H|$ HLD$D$t$D$L$ HcT$LD$P1y)I)HI9DD$D$Hct$LL$0AD1I)D)HI9HHHL$HHHt$ H$LLL$MAGHtD$D$$$H=H1AHD$ HcT$HD$0L$H)ЋT$1)HHcHD$ L$H H5jL$H=AWHHHAVAUIH ATUSH HXHD$pHD$(D$D$H\$0HD$8H\$@D$H\$HD$H\$PHD$XH\$`D$ H\$hD$$H\$pPHD$pPHD$`PHD$`PHD$PP1LD$hL$9H0A1Efogfo ?A`DŽ$t `xHT$0HfoT$xfo$$fD$A$Ld$xATLL$H AYAZHfo:Hfo foQLp`$fof$HT$PH$A$$DŽ$t `yL$AWLL$hk^_IHUHt$HLxH9H|$HOID$D$t=T$1L$HH5sL10H=LA1L9d$XtI$xHI$l@H9l$8tHExHHE;HD$ HD$ H[]A\A]A^A_@HuH=_L0DD$D$kHt$hH9trH|$H!HD$D$@D$u]1L$HHH5@3H*H=L;0fDD$D$Ht$@H9tjH|$HFGD$D$L$HcyVL$H'H5 qH)L)D$D$S11H9D$0~Ht$`H9tGH|$HFD$D$L$Hcy3L$H H5D$D$11H9D$P~Ht$(H9H|$ HFD$D$t$D$L$ HcT$LD$P1y)I)HI9t$D$LcL$LD$01M))HI9OMHL$Ht$ LH$LL$AEHtD$D$ ffZ$Z$}H=H1;HD$ HcT$HD$0L$H)ЋT$1)HHcHD$ L$HH50pL$H3fAWHHHAVAUIH CATUSH HRHD$pHD$(D$D$H\$0HD$8H\$@D$H\$HD$H\$PHD$XH\$`D$ H\$hD$$H\$pPHD$pPHD$`PHD$`PHD$PP1LD$hL$3H0A1EfoWfo ?A`DŽ$t `xHT$0HfoT$xfo$$fD$A$Ld$xATLL$HAYAZHfo*Hfo foQLp`$fof$HT$PH$A$$DŽ$t `yL$AWLL$h[^_IHUHt$HLxH9H|$H CD$D$t=T$1L$HH5L1 H=L1+L9d$XtI$xHI$l@H9l$8tHExHHE;HD$ HD$ H[]A\A]A^A_@HuH=OL*DD$D$kHt$hH9trH|$HBD$D$@D$u]1L$H8H5@#H*H=L+*fDD$D$Ht$@H9tjH|$HvAD$D$L$HcyVL$HH5jqH#L#D$D$S11H9D$0~Ht$`H9tGH|$H#@D$D$L$Hcy3L$HH5D$D$11H9D$P~Ht$(H9H|$ Hz@D$D$t$D$L$ HcT$LD$P1y)I)HI9t$D$LcL$LD$01M))HI9OMHL$Ht$ LH$LL$A5HtD$D$ ffZ$Z$mH=H15HD$ HcT$HD$0L$H)ЋT$1)HHcHD$ L$HH5pL$H#fAWHHHnAVAUATIH QUSHHLHD$$HD$0D$D$H\$8HD$@D$H\$HD$H\$PD$ H\$XHD$`D$$H\$hD$(H\$pD$,H\$xHDŽ$H$PHD$ PH$PH$PHD$xPHD$xPHD$hPH$P1L$L$-H@3fo  fo# A`DŽ$t `x|$HT$@fo@ fD$fo $H$ $D@ $L$AULL$X蟏A^A_HHH@fo%s A`DŽ$ t `y|$$HT$`fo-[ H$fo5Hfo fD$,$D@ $$$L$AULL$xAYAZIHSH@fo= `HDŽ$fo%fo f$xH$HD$HHt `param$8fo=~  A$X$H$hH$xL$8AUL$7^_IHHt$XLhH9H|$ H;D$D$t=T$ 1H$HH5H1H=H $L9$t1Ix*HIu!LfHHD$0HD$0HĈ[]A\A]A^A_fDD$D$ tHt$xH9tfH|$,H ;D$D$hD$,uQ1H$H<H5]*1@H=L9#b@D$D$,Ht$PH9tJH|$H:D$D$L$Hcy6H$H'H5D$D$11H9D$@~Ht$pH9tGH|$(H:D$D$qL$(Hcy3H$H,H52D$D$(711H9D$`~Ht$8H9H|$H_9D$D$|$,D$,L$Hct$(HT$`1DA)H)AHH9DL$ D$ Hc|$HT$@AD1H)D)AHH9HD$HT$ MLD$,H H$H4H|$A]HtD$D$WLHH=$1 /HD$09HcT$HD$@L$ H)ЋT$ 1)HHcHD$H$HJH5AH$Hgff.fAWHHHAVAUATIH 1USHHEHD$$HD$0D$D$H\$8HD$@D$H\$HD$H\$PD$ H\$XHD$`D$$H\$hD$(H\$pD$,H\$xHDŽ$H$PHD$ PH$PH$PHD$xPHD$xPHD$hPH$P1L$L$&H@3fo focA`DŽ$t `x|$HT$@fofD$fo$H$ $D@ $L$AULL$X߈A^A_HHH@fo%A`DŽ$ t `y|$$HT$`fo-H$fo5Hfo fD$,$D@ $$$L$AULL$x3AYAZIHSH@fo=7`HDŽ$fo%>fof$xH$HD$HHt `param$8fo= A$X$H$hH$xL$8AUL$w^_IHHt$XLhH9H|$ H&5D$D$t=T$ 1H$HݲH5H1I|$H9t ~6L$L$f($)T$`D$D$uHD$(HD$(H[]A\A]ú`foIf$HT$@HA)D$xfoDŽ$t `x)$fo)$fo)$Ll$xAULL$X<Y^IHHt$XLhH9tpH|$$Hl/D$D$'D$$u[1H$HH5f.H|$`HLl+D$D$$Ht$PH9H|$ H]/D$D$L$ HcхyzH$HH5H1rH=HVfDSHBH=L[.fDD$D$ 11HD$@H9xHt$0H9H|$H.D$D$L$$D$$DD$HcT$ Ht$@1)AHH)HH9~tHHL$$Ht$`LH|$HtD$D$nLH=Z1U$HD$(SH)ЋT$$L$$1)HHcHD$QH$DHH54f.AUHHH%ATUHH ľSHH5;HD$HHD$D$ D$H\$ H\$(HD$0H\$8D$H\$@D$H\$HPHD$HPHD$0P1LD$@LL$PH A1EtdLd$ H5u:f)$I|$H9t 2LZZD$HL$L$$uHD$HD$HĨ[]A\A]`foyf$HT$(HA)D$XfoDŽ$t `x)D$hfo)D$xfo)$Ll$XAULL$@B~Y^IHHt$@LhH9H|$ Hv+$$$D$ un1H$HH5KfDH$HLq'$$f$D$ Ht$8H9H|$HN+$$L$HcхytH$HH5H1eH=HvBKH3H=LSfD$D$11HD$(H9~Ht$H9H|$H*$$T$ D$ DD$Hct$HL$(1)APH)HH9~pITHL$ Ht$HH|$Ht$$fLH=Y1T HD$KH)ЋT$ L$ 1)HHcHD$VH$DHH5zfATHHHlUSHH eHpH:7LD$ LL$(HD$HD$ HD$(1D$A1Et^Ld$ H-6I|$H9tHL$L$f($)T$0D$D$uHD$HD$Hp[]A\DLd$(I|$H9HmH|$@HQL$D$D$tHL$`HT$PHt$@H|$0HtD$D$qL$XD$P0L$hD$`HHH=H1HD$.fDH|$0HlL#L$L$f($)\$@0ATHHHUSHH uHPHj5LD$LL$ HD$HD$HD$ 1D$ A1EtfLd$H-4f)D$@I|$H9tH%L-ZZD$(L$,D$ D$ uHD$HD$HP[]A\DLd$ f)D$@I|$H9HH|$@HL"D$ D$ tHL$@HT$8Ht$0H|$(HtD$ D$ `ffZD$8ZL$nA[IXMt||$dH$udD$4P|$\D$\HcL$`1)HH9~%x H9H=ɷH5-H=H5:D$8PH~H=LjD$`|$dpuD$4HT$\D$\1)MZLFH5LT$(H$L\$ AQL$AWL$m^_HL\$ LT$(IAL$dH$/D$8xDD$LD$LHcT$PAD1D)HH9H9HcD$`H=I4IEHtH=8H3HELT$ ILRHT$dRVHT$lRHT$lRPHD$xPt$@HT$XHt$PL$H@\LT$ HtD$0D$0u0L9$L|H=еH5!4LH=1HD$hH=H5룋D$4xfAWfvHHAVH۾AUATUSHH {HL=&HD$`)$HD$pD$DD$@L|$xD$HL$D$LL$D$PL$HDŽ$L$L$D$THDŽ$L$D$XL$D$\L$HDŽ$L$HDŽ$D$`L$D$dL$D$hL$D$lL$PH$PH$PH$PH$PH$PH$PH$PH$PH$PH$PH$PH$P1L$L$HpZH$L9tuH|$dHD$8D$8t8L$dv_H$HH5H1H=PHHD$hHD$hHĸ[]A\A]A^A_@D$8D$dtH$Ld$DH<LD$8D$8tL$DH$Hl$HHHHD$8D$8pL$HH$L9tH|$PHKD$8D$86t$Puj1H$H-H5f1 fH$HɚH5˻DD$8D$PH$L9taH|$\HD$8D$8L$\uL1H$HH5XH$HH5T=D$8D$\BH$L9H|$THhD$8D$8H$L9H|$`H6D$8D$8H$H$HHHD$RD$8D$8H$L9+H$HD$8D$8uH$`FH$AH5[P L$hAVL$fIXZMIEHt$pHH$HD$D$8D$8tCL$DŽ$nt `f$HT$@HD$hfo D@Ƅ$D$xfox$fox$Ll$hAULL$XXY^IH1Ht$XLhH9H|$HD$ D$ tBD$1H$HuH55H1H=}HDHD$ HD$ Hĸ[]A\A]H|$0HܶLl{HDD$ D$tHt$PH9tvH|$H D$ D$ mL$HcхybH$HH5v)H2H=LfDD$ D$11HD$@H9~Ht$(H9H|$HGD$ D$ L$D$DD$HcT$Ht$@1)AHH)HH9~tHHL$Ht$0LH|$;HtD$ D$ bLH=1HD$ GH)ЋT$L$1)HHcHD$QH$DHjH5HfDAUHHH>ATUHH SHHHD$ D$HD$H\$ $D$H\$(HD$0D$ H\$8D$H\$@D$H\$HPHD$PPHD$PPHD$8P1LD$HLL$X"H A1ELd$(H5$HDŽ$I|$H9t qL9 $f.z f/pZD$$$ |$ x`foDŽ$nt `f$HT$0HD$Xfo^ D@Ƅ$D$hfo3D$xfo6$Ll$XAULL$HSY^IH/Ht$HLhH9H|$HY|$$tBD$1H$H5H5AH1蔼H==HDHD$HD$HĨ[]A\A]H$HL)u1fD3Hu$x$D$tHt$@H9toH|$Hó$$hL$Hcхy\H$H>H5}$f軱H2H=[LfD$D$11HD$0H9~Ht$ H9H|$He$$T$D$DD$Hct$HL$01)APH)HH9~pITHL$Ht$H|$Ht$$iLH=͘1HD$NH)ЋT$L$1)HHcHD$VH$DH1H5[ff.fATHHHJUSHH H@H LD$LL$(HD$HD$HD$(1D$HD$HD$ HD$0HD$8A1EtgLd$H-$ I|$H9tH"LB D$f.z f/D$D$uHD$HD$H@[]A\Ld$(I|$H9HH|$ HL9D$D$tHL$8HT$0Ht$ H|$2HtD$D$vL$8D$0H=HD$OfH|$H,L(ˮHDL  D$ f.zf/t3@胮HDATHHHNUSHH eH@H LD$(LL$0HD$ HD$(HD$01D$ D$D$D$D$A1EtzLd$(H- HD$8I|$H9tH L- D$8f.z f/ZD$D$ D$ uHD$ HD$ H@[]A\ÐHD$8Ld$0I|$H9tpHudH|$8HHL1y@H|$8HLu1yfHuD$8LLP D$8f.z f/ZD$D$ D$ HL$HT$Ht$H|$般HtD$ D$ ffɸH=YZD$ZL$:HD$ ;HD$8eAWHHHAVAUATIH USH8HAHD$xHD$(D$D$H\$0H\$8HD$@H\$HD$H\$PD$H\$XHD$`H\$hD$ H\$pD$$H\$xPHD$xPHD$hPHD$hPHD$XPHD$XP1LD$xL$VH0A1E folfo tA`DŽ$t `xHT$@Hfo fo)$)$)$fD$A)$L$AULL$XxKAYAZHfoHfo fo@Lp`)$fof$$HT$`H)$A)$)$DŽ$(t `yL$AWLL$xJ^_IHLD$8LxI9IxH5H9L$ L$H$HL*D$D$:Ht$XH9H|$H+D$D$ T$1L$0HH5_f;HBHD$(HD$(H8[]A\A]A^A_fDL舥$L$f($$)$yHT$pHL|$HDPVLD$(蓔ZYHtD$D$L9d$@I$HI$LvH=~H5МS,HSH=~L4?HL$H)ЋT$1)HHcHD$ SH$HܜHH5'1ÝH=l~H7H$HLH={1{HD$( |HH=~Lff.@AWfvHHAVHAUATUHH SHHmHD$D$ HD$ H\$(D$HD$0H\$8H\$@D$H\$HD$H\$PD$H\$XD$H\$`)D$pPHD$hPHD$hPHD$hPHD$hPHD$hP1LL$hLD$XH0Ht$@H9txH|$ HD$D$t8L$ vbH$HH5H1"H=|H3HD$ HD$ H[]A\A]A^A_D$D$ tLd$(H5f)$I|$H9t L)ZZD$hL$lD$D$mHt$PH9H|$H.D$D$>Ht$HH9H|$H?D$D$D\$E1H$HkH51fH$HQLI1$$f.D$6D$D$iHT$0HfoADŽ$ `x`)$fo˭Ƅ$)$foc)$fos)$L$AULL$H0AYAZIHD$}HcHD$0H9lHt$XMl$H9H|$HVD$D$HD$0HcT$L$Hct$HH)ЋT$1)HHcHHH9_fHnƹ|$H$H5flE)D$pHT$pA AȅVL$AVLL$p/_AXIHOLHHcD$Ht$H=as|$ HT$hILHEsHDPVLD$ 諎ZYHtD$D$L9d$8rI$fHI$XL賿KH=yH5kDH(H=xLLHL$H)ЋT$1)HHcHD$[H$HHH51ۗH=xH7H$HLH=u1HD$ 蔍HH=4xLAWfvHHAVH AUATUHH ܂SHHHD$D$ HD$ H\$(D$HD$0H\$8H\$@D$H\$HD$H\$PD$H\$XD$H\$`)D$pPHD$hPHD$hPHD$hPHD$hPHD$hP1LL$hLD$XH0Ht$@H9txH|$ HD'D$D$t8L$ vbH$HH5H1BH=vHSHD$ HD$ H[]A\A]A^A_D$D$ tLd$(H5 f)$I|$H9t LIZZD$hL$lD$D$mHt$PH9H|$H֘1D$D$>Ht$HH9H|$HD$D$D\$E1H$HH51fH$HLi1$$f.D$6D$D$iHT$0Hfo&ADŽ$ `x`)$foۧƄ$)$fo)$fo)$L$AULL$H*AYAZIHD$}HcHD$0H9lHt$XMl$H9H|$HvD$D$HD$0HcT$L$Hct$HH)ЋT$1)HHcHHH9_fHnƹ|$H$H5^flE)D$pHT$pA AȅVL$AVLL$p)_AXIHOLHHcD$Ht$H=m|$ HT$hILHemHDPVLD$ ˈZYHtD$D$L9d$8rI$fHI$XLӹKH='sH5苿dH(H=sLlHL$H)ЋT$1)HHcHD$[H$HHH51H=rH 7H$HLH=o1HD$ 贇HH=TrL輾AWHHHzAVAUATIH iUSH8HH$HD$0D$D$H\$8HD$@H\$HHD$PH\$XD$ H\$`D$$H\$hHD$pH\$xD$(H$D$,H$PH$PHD$xPHD$xPHD$hPHD$`P1L$L$H0A1Efofo ̣A`DŽ$t `xHT$PHfoefoݠ$ $$fD$A$L$AULL$h&AYAZHfoHfo 6fo^HLp`$foߟf$$HT$pH$ A$$DŽ$(t `yL$AWL$/&^_IHLD$HLxI9IxH5dH9LD$aLD$H|$@HXLD$D$@Ht$hH9H|$$HfD$D$T$$1L$0HtH5|苄HZHD$0HD$0H8[]A\A]A^A_fDLȢ (D$@f.z f/0D$D$$tpH$H9H|$,HӒD$D$tBD$,1L$0HH5{L1čH=mnLպDH9l$X#HEHHE HӴfDHQHD$@k[HuH=mLgD;H-DH=mL9@D$D$,LHt$`H9tJH|$ HD$D$!L$ Hcy6L$0HgH5zD$D$ 11H9D$P~H$H9tDH|$(HD$D$L$(y1L$0HlH5zjD$D$(1ɅrHcH;D$p}Ht$8H9H|$HD$D$9t$,D$,L$HcT$(LD$p1y)I)HI9t$$D$$LcL$ LD$P1M))HI9OMHL$$Ht$@LH|$LL$,AgHtD$D$LH=2i1-HD$0HcT$ HD$PL$$H)ЋT$$1)HHcHD$L$0HOH5HyL$0HD$D$9t$4D$4L$ HcT$0LD$p1y)I)HI9t$,D$,LcL$(LD$P1M))HI9OMHL$,Ht$$LH|$ LL$4AzHtD$D$LH=bb1]HD$8HcT$(HD$PL$,H)ЋT$,1)HHcHD$ L$0HHH5rL$0HlHf.AWfvHHAVHrAUATUHH LnSHHHD$)D$pHD$ HD$(D$H\$0HD$8H\$@D$ H\$HD$H\$PD$H\$XD$H\$`D$H\$hPHD$pPHD$pPHD$pPHD$pPHD$pP1LL$pLD$`5H0yHt$HH9twH|$ HSD$D$t8L$ vaH$HBH5qH1ɂH=rcHگHD$ HD$ H[]A\A]A^A_fDD$D$ tLd$0H5I|$H9t 譍L͖ -D$(f.z f/D$D$pHt$XH9H|$HD$D$AHt$PH9H|$HD$D$D\$E1H$HH5p1fH|$(HL\=D$\[wHDD$D$zHT$8HfoΑA DŽ$ `x`)$foƄ$)$fo)$fo+)$L$AULL$PAYAZIHD$}HcHD$8H9lHt$`Ml$H9H|$HD$D$HD$8HcT$L$Hct$HH)ЋT$1)HHcHHH9_fHnƹ|$H$H5vflE)D$pHT$pA Aȅ VL$AVLL$x_AXIHOLHHcD$Ht$H=Z|$ HT$(ILHYHDPVLD$ cuZYHtD$D$L9d$@I$wHI$iLk\H=_H5}#tH9H=_L%HL$H)ЋT$1)HHcHD$[H$H}HH5m1~H=<_H褫7H$H}LH=P\1KHD$ LtHH=^LTff.@AWfvHHAVH'mAUATUHH hSHH=HD$$)D$pHD$(D$D$ H\$0HD$8H\$@D$H\$HD$H\$PD$H\$XD$ H\$`D$$H\$hPHD$pPHD$pPHD$pPHD$pPHD$pP1LL$pLD$`VH0Ht$HH9txH|$HD$ D$ t8L$vbH$HczH5&lH1|H=]HHD$(HD$(H[]A\A]A^A_D$ D$tLd$0H5HDŽ$I|$H9t L A$f.z f/ZD$D$ D$ VHt$XH9H|$HgD$ D$ 'Ht$PH9H|$HxD$ D$ D\$E1H$HzH5j1fH$HLYu'1-fDD$MSqHu$D$ D$QHT$8Hfo֋A DŽ$ `x`)$fo{Ƅ$)$fo)$fo#)$L$AULL$PwAYAZIHD$}HcHD$8H9lHt$`Ml$H9H|$ H+D$ D$ HD$8HcT$L$Hct$ HH)ЋT$1)HHcHHH9_fHnƹ|$$H$H5flE)D$pHT$pA Aȅ VL$AVLL$xw_AXIHOLHHcD$Ht$ H=T|$HT$ILHSHDPVLD$([oZYHtD$ D$ L9d$@ZI$NHI$@Lc3H=YH5wnHH=YLHL$H)ЋT$1)HHcHD$ [H$HwHH5g1xH=4YH蜥7H$HwLH=HV1CHD$( DnHH=XLLAWfvHHAVHngAUATUHH leSHpH=HD$HcD$,HcL$$Ht$0HbLMGH=]LHHH $|$HDH$AQM VAPLD$@APLD$@H gHtD$D$L9l$`L趱H= RH5c}nGgHmH=QLOYHD$HHcT$$|$ HH)ЋT$ 1)HHcHT$(HHAL$(L)1)HHcHPH9VT$0LH=N1謫HD$89fH+H=MQH赝H$`H}HH5+`1ppH=QH聝H$`H}H$`H|f.AWfvHHAVH_AUATUHH ]SH`HMHD$4HD$8)$D$H\$@HD$HH\$PHD$XH\$`D$H\$hD$ H\$pD$$H\$xD$(H$D$,H$D$0H$D$4H$PH$PH$PH$PH$PH$PH$PH$PH$P1L$L$HPKHt$`H9tqH|$H|耳D$D$t8L$v[H$PHlH5^H1nH=DOH講HD$0HD$0HX[]A\A]A^A_ËD$D$tLd$8H5lf)$PI|$H9t yyL`ZZɸ$$D$D$nHt$hH9H|$H |苲D$D$?DL$E1H$PHlH5]1fH$PHy{Lg$P$X1f.D$D$Ht$pH9tzH|$H{ѱD$D$Ht$xH9tYH|$ H{覱D$D$ZDD$ EuB1H$PHkxH5\D$둋D$D$ H$H9H|$$H}{(D$D$`HT$@Hfof$)$foADŽ$t `x)$fo|)$fo|)$L$AULL$X^_IHtHHcD$xH;D$@|ZH=mLH5NjјL9d$HL D$$aHH='LL菘HT$PH$M|$FH5zAPL$AVLL$hIXZMLcD$$EHL$PI9H$MuH9H|$(Hz耯D$D$eHD$PHcT$$t$ HcL$(HH)ЋT$ 1)HHcHHH9YHD$@HcT$t$HH)ЋT$1)HHcHHH9fHn|$,H$PEflH$H5yE)$A ARAȅH$XSL$A[IXM@HcT$MBHt$(H=MD|$HcD$$LT$I H-DHDH$AQM VAPLD$8APLD$8H y_LT$HtD$D$L9l$XL蘩H=IH5EuP)_HoH=IL1[HD$@HcT$|$HH)ЋT$1)HHcHT$ HHAL$ L)1)HHcHPH9VT$(LH=F1莣HD$09^H+H=/IH藕H$PHkuHH5mX1RhH=HHcH$PHtH$PHtff.AWfvHHAVHXAUATUHH \SH(H-HD$)D$pHD$(D$ D$H\$0HD$8D$H\$@D$H\$HD$H\$PD$H\$XD$ H\$`D$$H\$hPHD$pPHD$pPHD$pPHD$pPHD$pP1LL$pLD$`>H0RHt$`H9tHH|$ Hw跫D$D$t;L$ vRH$ H3wH5W}D$D$ u HD$(HD$(H([]A\A]A^A_@Ht$XH9t^H|$Hw5D$D$tL$vLH$ H)wH5VH1PfH=FHa|@D$D$dHt$hH9tZH|$$Hw蹪D$D$9L$$vDH$ H!wH5:V{D1fD$D$$Ht$PH9tRH|$HwAD$D$Dd$Eu;1H$ HcH5Uf.D$D$|fotufo xA`DŽ$t `x|$HT$8foufD$fou)$H)$ )$D@ )$L$AULL$PxAZA[HfotIfo NxfotLx`)$fotf$HT$pHA)$ )$)$DŽ$t `aL$AVLL$@_AXIHHD$xH9D$ptgH=DH5uL9l$0IEHIELYHH=EDL譐Ht$HMuH9tYH|$HVuD$D$tL$yJH$ HnuH5SH15cH=CHFED$D$11LD$8HcL9}T$D$Ht$p1Љt$ )ЍVHI9D$ |$$MH5@H@=HDօtH50=H+=HE|$H=H==HL$ HDHD$IPAPMjXZYHtD$D$sLH=3@1.HD$(X/XHfH=BL7RH$ HatH5RDAWfvHHAVHRAUATUHH \VSH(H HD$)D$pHD$(D$ D$H\$0HD$8D$H\$@D$H\$HD$H\$PD$H\$XD$ H\$`D$$H\$hPHD$pPHD$pPHD$pPHD$pPHD$pP1LL$pLD$`H0RHt$`H9tHH|$ Hs藥D$D$t;L$ vRH$ HqH5xQ}D$D$ u HD$(HD$(H([]A\A]A^A_@Ht$XH9t^H|$HBsD$D$tL$vLH$ H qH5 QH10`H=@HA|@D$D$dHt$hH9tZH|$$Hs虤D$D$9L$$vDH$ HqH5P{D1fD$D$$Ht$PH9tRH|$Hr!D$D$Dd$Eu;1H$ H]H53Pf.D$D$|fodofo rA`DŽ$t `x|$HT$8fonfD$fon)$H)$ )$D@ )$L$AULL$PXAZA[HfonIfo .rfonLx`)$fonf$HT$pHA)$ )$)$DŽ$t `aL$AVLL$@_AXIHHD$xH9D$ptgH=x>H5qo܊L9l$0IEHIEL߄SHH=%>L荊Ht$HMuH9tYH|$HpD$D$tL$yJH$ HNoH5%NH1]H==H&ED$D$11LD$8HcL9}T$D$Ht$p1Љt$ )ЍVHI9D$ |$$MH5:H 7HDօtH57H 7HE|$H6H=6HL$ HDHD$IPAPMJRZYHtD$D$sLH=:1HD$(XRHfH=<LRH$ HAnH5LDAWfvHHAVHLAUATUHH PSH(HHD$)D$pHD$(D$ D$H\$0HD$8D$H\$@D$H\$HD$H\$PD$H\$XD$ H\$`D$$H\$hPHD$pPHD$pPHD$pPHD$pPHD$pP1LL$pLD$`H0RHt$`H9tHH|$ HnwD$D$t;L$ vRH$ HjH5K}D$D$ u HD$(HD$(H([]A\A]A^A_@Ht$XH9t^H|$HbnD$D$tL$vLH$ HjH5kKH1ZH=:H!|@D$D$dHt$hH9tZH|$$H&nyD$D$9L$$vDH$ HjH5J{D1fD$D$$Ht$PH9tRH|$HmD$D$Dd$Eu;1H$ HWH5Jf.D$D$|fo$ifo lA`DŽ$t `x|$HT$8fohfD$foh)$H)$ )$D@)$L$AULL$P8AZA[HfoihIfo lfovhLx`)$fohf$HT$pHA)$)$)$DŽ$t `aL$AVLL$@_AXIHHD$xH9D$ptgH=X8H5Qi輄L9l$0IEHIEL~eMHH=8LmHt$HMuH9tYH|$HlٛD$D$tL$yJH$ H.iH5HH1VH=7HED$D$11LD$8HcL9}T$D$Ht$p1Љt$ )ЍVHI9D$ |$$MH5m4H1HDօtH50H0HE|$H0H=0HL$ HDHD$IPAPM*LZYHtD$D$sLH=31HD$(XKHfH=6LRH$ H!hH5TGDAWfvHHAVHDGAUATUHH HD$0HD$0HH[]A\A]A^A_fkBHuH=-LwyDL$IxL9tLL$sWL$'L` [$f.z f/D$D$[Ht$XL9H|$ HbzD$D$,|$ 1H$@H-H5=H1KH=5,HxH$HaL9j@1f;AHH=+LCxfDAHkDH$HaLi@D$D$ >Ht$xL9tbH|$,HaaD$D$t$,uM1H$@H H5<@s@HlDD$D$,Ht$PL9tGH|$HaD$D$L$Hcy3H$@Hw H5i<eD$D$Y11H9D$@~Ht$pL9tDH|$(H^aqD$D$#L$(y1H$@H H5<D$D$(1ɅHcH;D$`}Ht$8L9H|$H,aD$D$t$,D$,L$HcT$(LD$`1y)I)HI9DD$ D$ Hct$LL$@AD1I)D)HI9HL$HH|$HLHHT$ PH$PL$LD$<>ZYHtD$D$LHH=j&1fHD$0H$@H H5:HD$@HcT$L$ HH)ЋT$ 1)HHcHD$H$@H H5:lfAWHHH:AVAUATUSHH OHPL=!HD$,HD$8D$D$L|$@HD$HD$ L|$PD$$L|$XD$(L|$`HD$hD$,L|$pD$0L|$xD$4L$HDŽ$L$HDŽ$L$PHD$(PH$PH$PH$PH$PHD$pPH$PH$P1L$L$zHPfouYfo XDŽ$ `x`HT$@|$foXƄ$foX$H$  $D@$L$ATLL$XAZA[HfoaXHfo FXfoXHLp|$$$HT$`foJXH$$ $(D@ DŽ$8 `y`Ƅ$<L$AULL$x_AXAYIHL$H@L-IxHD$L9tLL$PL$VLY U$f.z f/D$D$uD$D$t8L$$v\H$HH5H1\H=Hm&HD$0HD$0H[]A\A]A^A_ÐD$D$$tHt$pH9tnH|$(Hj$=D$D$tHt$xH9t_H|$,H$=D$D$tL$,vMH$HH5HfDD$(fD1ND$D$,/Ht$XH9tRH|$HF$=D$D$D\$Eu;1H$HH5xf.D$D$Ht$`H9H|$ H$7D$D$tL$,vMH$HjH5HfDD$(fD1ND$D$,/Ht$XH9tRH|$H6D$D$D\$Eu;1H$H^H5f.D$D$Ht$`H9H|$ HM6D$D$A`foDŽ$t `aH$HfD$)$foE A)$fo:)$fo:)$L$ATLL$P·AYAZHHH$LhL$ Ht$8H$Lt$HO$HLD$R5D$D$FL$;L$F|$HT$HH$H5EA  AQL$AWLL$`^_IHL$t$D$ HcT$ H|$H1΃)HH9iH9`ID$H5|$,LD$(HFHDօtH56H1HE|$$HMH=HL$ HDPHD$$PAPMHD$,PH eHtD$D$H9\$@DH9HH,Hq@D$ rH$HH5H1H=HHH=uLH$HH5yHFH=;L2H='H5ȣH=H5xsLH=21-)HD$0AWfvHHAVHAUATUHH SHHM@HD$ )$HD$8D$D$D$H\$@H\$HD$HD$PD$ H\$XD$$H\$`D$(H\$hD$,H\$pD$0H\$xD$4H$PH$PH$PH$PH$PH$PH$P1L$LD$x(!H@Ht$hH9trH|$$H1D$D$t8L$$v\H$HH5H1H=eHHD$0HD$0H[]A\A]A^A_ÐD$D$$tHt$pH9tnH|$(HZ1D$D$tHt$xH9t_H|$,Hs0D$D$tL$,vMH$HH5$HfDD$(fD1ND$D$,/Ht$XH9tRH|$H6q0D$D$D\$Eu;1H$HH5f.D$D$Ht$`H9H|$ H/D$D$A`fooDŽ$t `aH$HfD$)$fo A)$fo)$fo)$L$ATLL$P~AYAZHHH$LhL$ Ht$8H$Lt$HO$HNLD$/D$D$FL$;L$F|$HT$HH$H5>EA  AQL$AWLL$`譀^_IHL$t$D$ HcT$ H|$H1΃)HH9iH9`ID$H5p|$,LЋD$(HHDօtH5HHE|$$HMH=HL$ HDPHD$$PAPMHD$,PH HtD$D$H9\$@DH9HH,H!@D$ rH$HH5H1H=DHHH=%LH$H9H5KHFH=LS2H=H5x;H=H5(#LH=1"HD$0AWfvHHAVHAUATUHH LSHH9HD$ )$HD$8D$D$D$H\$@H\$HD$HD$PD$ H\$XD$$H\$`D$(H\$hD$,H\$pD$0H\$xD$4H$PH$PH$PH$PH$PH$PH$P1L$LD$xH@Ht$hH9trH|$$HQ+D$D$t8L$$v\H$HřH5H1lH=H}HD$0HD$0H[]A\A]A^A_ÐD$D$$tHt$pH9tnH|$(H*D$D$tHt$xH9t_H|$,H*D$D$tL$,vMH$HʙH5AHfDD$(fD1ND$D$,/Ht$XH9tRH|$H!*D$D$D\$Eu;1H$HH5f.D$D$Ht$`H9H|$ Hz)D$D$A`fo/DŽ$t `aH$HfD$)$fo A)$fo)$fo)$L$ATLL$P.{AYAZHHH$LhL$ Ht$8H$Lt$HO$HLD$(D$D$FL$;L$F|$HT$HH$H5EA  AQL$AWLL$`]z^_IHL$t$D$ HcT$ H|$H1΃)HH9iH9`ID$H5 |$,LD$(HHDօtH5HHE|$$H}MH=yHL$ HDPHD$$PAPMHD$,PH HtD$D$H9\$@DH9HH,H @D$ rH$HMH5H1KH=H\5HH=L=H$H H5HFH=L2H=H5(H=oH5ؖLH=1HD$0AWfvHHAVH;AUATUHH SHH3HD$ )$HD$8D$D$D$H\$@H\$HD$HD$PD$ H\$XD$$H\$`D$(H\$hD$,H\$pD$0H\$xD$4H$PH$PH$PH$PH$PH$PH$P1L$LD$xH@Ht$hH9trH|$$H%D$D$t8L$$v\H$HuH5H1H=H- HD$0HD$0H[]A\A]A^A_ÐD$D$$tHt$pH9tnH|$(HJu$D$D$tHt$xH9t_H|$,HcN$D$D$tL$,vMH$HzH5^HfDD$(fD1ND$D$,/Ht$XH9tRH|$H&#D$D$D\$Eu;1H$HnH5f.D$D$Ht$`H9H|$ H]#D$D$A`foDŽ$t `aH$HfD$)$foeA)$foJ)$foJ)$L$ATLL$PtAYAZHHH$LhL$ Ht$8H$Lt$HO$H>LD$b"D$D$FL$;L$F|$HT$HH$H5.EA AQL$AWLL$` t^_IHL$t$D$ HcT$ H|$H1΃)HH9iH9`ID$H5к|$,LЋD$(HVHDօtH5FHAHE|$$H-MH=)HL$ HDPHD$$PAPMHD$,PH uHtD$D$H9\$@DH9HH,H@D$ rH$HH5H1H=H HH=LH$HH5HFH=KL2H=7H5ؐH=H5LH=B1=HD$0AWfvHHAVHXAUATUHH SHH]-HD$ )$HD$8D$D$D$H\$@H\$HD$HD$PD$ H\$XD$$H\$`D$(H\$hD$,H\$pD$0H\$xD$4H$PH$PH$PH$PH$PH$PH$P1L$LD$x8H@Ht$hH9trH|$$HD$D$t8L$$v\H$H%H5H1H=uHHD$0HD$0H[]A\A]A^A_ÐD$D$$tHt$pH9tnH|$(H %D$D$tHt$xH9t_H|$,H D$D$tL$,vMH$H*H5{HfDD$(fD1ND$D$,/Ht$XH9tRH|$H D$D$D\$Eu;1H$HH5 f.D$D$Ht$`H9H|$ Hj  D$D$A`fo/DŽ$t `aH$HfD$)$foA)$fo)$fo)$L$ATLL$PnAYAZHHH$LhL$ Ht$8H$Lt$HO$H LD$D$D$KL$;L$F|$HT$HH$H5 EA AQL$AWLL$`m^_IHL$t$D$ HcT$ H|$H1΃)HH9qH9hID$HH5|LHЋT$(|$,LDօtH5HHE|$$HڰMH=ְHL$ MHDRHT$$RLPHD$,PH HtD$D$H9\$@?H4HH'H,D$ jH$HH5)H1H=LHHH=-LH$HAH5SHCH=L[/H=ߵH5CH=ǵH50+LH=1HD$0ff.AWfvHHAVHeAUATUSHH HL=&HD$`)$HD$hD$DD$@D$HD$LL|$pHD$xD$PL$D$TL$HDŽ$D$XL$D$\L$D$`L$D$dPHD$`PHD$`PH$PH$PH$PH$P1L$L$H@A1EHl$hH5%HDŽ$H}H9t H E$f.z f/ZD$DD$8D$85|$HfoHDŽ$p `x`HT$pƄ$tH)$8fou D@ )$Hfo)$Xfo$)$hH$8UL$viAXAYIHVH$L`L9H|$LH D$8D$8tDL$LAH5H$1HH4H=ݲHEDL9t$xtIxHIuDHD$`HD$`H[]A\A]A^A_@H$HHu1yfDHu$LD$8D$Ll|$PfoDŽ$ `y`H$Ƅ$H)$fo D@)$foh)$foH)$H$UL$g^_IHlH$HhL9H|$THKvD$8D$8tBL$TAH5eH$1HHOH=3HL9$JIE>HIE0L#;H2H=۰HCfDD$8D$TtHD$p|$XDŽ$`a`H$ɿ D$HD$pH@ HH$HcL<$Lt$ DŽ$ HD$(蛶HH$HD$L}LD$HH$Ht$ ~LFVHt$(LD$HHL$(H)HT$ H|1~LD$HT$ 1IxiLD$HL$(H$ABD9L|$HD$AIH|$ HuLAH$H$H$H$H5HHD=H$H$H$H$H$H$HHH$L$H$HLHD$Ht$ H$H$H$dH$Ht)H$JH$Hx HHH$Hx HHHt$ H|$LH$H$+H$H$H$D$8H;Ht$H=W%H$H$H$b@L D$8f.zf/t&,@HDӽHDL( D$Hf.zf/t 菽H|HH=Lff.@AUHHH(ATUHH ĘSHHuHD$@D$HD$ H\$(D$ D$H\$0D$H\$8D$H\$@HD$HPHD$@P1LD$8LL$@Y^A1EtyLl$(L%HD$PI}L9tLL HD$Pf.z f/ZD$D$ D$ uHD$ HD$ HĨ[]A\A]HD$PLl$0I}L9tqLAueH|$PHYL_1zDH|$PHLu1nf諻HuD$PAL `D$Pf.z f/ZD$D$ D$ HD$PLl$8I}L9t,Ltu H|$PHL15Lx D$Pf.z f/zZD$D$ D$ HD$PLl$@I}L9`LPH|$PH|Lld1D$ D$ 3foZHT$HHD$HHƄ$IٹA D$X fo{DŽ$ram`D$hfo#D$xfof$Ll$XAUZIXZMMD$HL$HT$Ht$H|$ĹHtD$ D$ lLH=1HD$ Q苹HD$PkHND$PmL D$Pf.zf/u)HD$PZD$HH=L @AWfvHHAVHƼAUATUSHH kHL=HD$`)$HD$hD$HD$DD$LL|$pHD$xD$PL$D$TL$HDŽ$D$XL$D$\L$D$`L$D$dPHD$`PHD$`PH$PH$PH$PH$P1L$L$H@A1EHl$hH5H}H9t H $L$f($)$D$H$L`L9H|$LH @D$H$L`L9H|$LHD$HIE0L#SH2H=H[fDD$4D$LtHD$h|$PDŽ$ `a`H$Ƅ$ɿD$8H T$HIE0L@#H2H=yHfDD$4D$LtHD$h|$PDŽ$ `a`H$Ƅ$ɿD$8H T$H5H1ՒH=~sHHD$8HD$8H[]A\A]A^@D$D$0tHt$`H9tFH|$,H-D$D$tL$,v4H$H)H5nDD$D$,nLd$@L-@I|$L9LRzH|$pHLvD$D$ Ld$PI9xI|$L9LrH$HL#D$D$fofoSA`DŽ$@t `afo zfofD$DH$H)$)$A)$()$8L$AULL$X'AYAZHfo IfofoRL$,H$L$HXH$DŽ$ `c`ɉT$4DƄ$Eʃ|$()$D$ HHfHnL$, fl)$DL)$fo!)$)$L$AVLL$h&^_IHHcD$ H9$uH;$H=pH5L9d$HI$HI$LDH1[]A\A]A^fDL$L$f($$)d$psff)$L$L$f(,$)${HJH=oL!6HH=oLD$,H5ltH5KiHFiHEHT$ D$0HL$$IRH=+iAuHiHDH$PHD$LPL$H jHtD$D$rLH=5l10HD$8WfDAVfvHHAUH{ATUHH SHHOHD$0D$(HD$@D$,D$$H\$HH\$PH\$XD$0H\$`D$4H\$hD$8H\$pD$<)$)$PHD$xPHD$xPHD$xPHD$xP1LL$xLD$pqH0}Ht$hH9tsH|$0HD$D$t8L$0v]H$HnH5H1H=mHHD$8HD$8H[]A\A]A^@D$D$0tHt$`H9tFH|$,H]D$D$tL$,v4H$HYH5 nDD$D$,nLd$@L-pI|$L9L肗zH|$pHLD$D$ Ld$PI9xI|$L9L2rH$HLSD$D$fo+foA`DŽ$@t `afo fofD$DH$H)$)$A)$()$8L$AULL$X"AYAZHfo 5Ifo foL$,H$L$HXH$DŽ$ `c`ɉT$4DƄ$Eʃ|$()$D$ HHfHnL$, fl)$DL)$foQ)$)$L$AVLL$h!^_IHHcD$ H9$uH;$H=jH5/L9d$HI$HI$L2DH1[]A\A]A^fDL8|$L$f($$)d$psff)$L{$L$f(,$)${IHJH=iLQ6'HH=iL/D$,H5ftH5{cHvcHEHT$ D$0HL$$IRH=[cAuHHcHDH$PHD$LPL$H ~HtD$D$rLH=ef1`HD$8WfDAVfvHHAUHATUHH SHHHD$ D$HD$0D$D$H\$8H\$@H\$HD$ H\$PD$$H\$XD$(H\$`D$,)D$x)$PHD$hPHD$hPHD$hPHD$hP1LL$hLD$`褻H0Ht$XH9tvH|$ HjD$ D$ t8L$ v`H$HH5H18H=gHIHD$(HD$(H[]A\A]A^D$ D$ tHt$PH9tFH|$HD$ D$ tL$v4H$HH5wkDD$ D$kLl$0L%f)$I}L9L觑H$HLD$ D$ Ll$@I9I}f)$L9yLAiH$HLbiD$ D$ fobfoA`DŽ$ t `aHT$pHfo fo)$)$)$fD$,A)$L$AULL$HAYAZHfo ?IfofoL$HT$pL$HXHD$xDŽ$ `c`ɉT$$DƄ$Eʃ|$)$D$HHfHnL$ fl)$DL)$foa)$)$L$AVLL$X-^_IHHcD$H9$uH;$ H=dH5?L9d$8I$HI$LBDH1[]A\A]A^fDLHvZZD$`L$djf.HD$hfLvZZD$hL$l$$QyHH=cLY /yHH=cL7D$H5`tH5]H~]HEHT$D$ HL$IRH=c]AuHP]HDHD$xPHD$lfovpA`DŽ$ t `aHT$pHfo okfowk)$ )$)$fD$,A)$L$AULL$PAYAZHfo kIfoofokL$HT$xL$HXHD$pDŽ$ `c` Ƅ$D$$EDʃ|$)$D$HHfHnL$ fl)$DL)$fo-o)$)$L$AVLL$h^_IH<HcD$H9$uH;$AH=:H5 L9d$@I$ HI$LfH1[]A\A]A^fDLn `iD$0f.zf/tv@cOH_DHD$HfLm iD$Hf.zf/t nOH[NH,H=9LNHH=z9LD$H56tH5.3H)3HEHT$D$ HL$IRH=3AuH2HDHD$XPHD$p$P$X:fAVfvHHAUHFATUHH FSHHHD$ D$HD$0D$D$ D$H\$8H\$@D$H\$HD$ H\$PD$$H\$XD$(H\$`D$,)D$h)D$xPHD$hPHD$hPHD$hPHD$hP1LL$hLD$`|H0CHt$XH9tqH|$ H而D$D$t8L$ v[H$HH5EH1GH=D(HtHD$(HD$(H[]A\A]A^fD$D$ tHt$PH9tFH|$HRD$D$tL$v4H$HH5sEpDD$D$pLl$0L% HDŽ$I}L9tKLRu?H$HLe1T@H1[]A\A]A^fDLZ XV$f.z f/_ZD$D$D$Ll$@I9HDŽ$I}L99LYQ)H$HLd=1D$D$TfoVfoZA`DŽ$t `aHT$`Hfo UfoU)$ )$)$fD$A)$L$AULL$H$AYAZHfo UUIfo*ZfoUL$HT$`LT$pHXHD$hDŽ$ `c` ɉT$$DƄ$Eʃ|$)$D$HHfHnL$ fl)$DL)D$xfo}Y)$)$L$AVLL$XI^_IH HcD$H9D$pu H;D$xH=$H5aqL9d$8I$HI$Ldk:HJ$@LPX S$f.zf/u9H$ZD$D$~9HH=$Lp\9HH=#LdpD$H5"!tH5HHEHT$D$ HL$ IRH=AuH}HDHD$$PHD$ Ƅ$L$HD)$hfopCL)$xfo>)$foB)$L$hAWLL$hIXZMHcD$H9$uHcD$H9$H=ZH5qZL9l$HtIExHIEL9d$@I$HI$LT1L$L$f($$)d$pff)$Lw$L$f(,$)$"HnH=p LYZT$|$D9H{H$`1HH5+,H=+ HYi"HH= LqYDB"HH= LJY|$$HT$IHH5HL$HE|$ RArH=*HDH$LT$PHD$DPAVHD$PPL$H0!L$HtD$D$LH= 1fHD$0LRAWfvHHAVH*AUATUHH <)SHhH}HD$)$HD$0)$)$D$D$D$H\$8H\$@H\$HH\$PD$H\$XD$ H\$`D$$H\$hD$(D$,PHD$pPHD$pPHD$pPHD$pPHD$pP1LL$pLD$h^H0pHt$`H9tvH|$ Hy oD$D$t8L$ v`H$`HIxH5)H1(*H= H9WHD$0HD$0Hh[]A\A]A^A_DD$D$ tHt$hH9tFH|$$HZy}nD$D$tL$$v4H$`HgH5$)kDD$D$$kLd$8L-{I|$L9jL4ZH|$pHyLiD$D$Ld$PI9XI|$L9[LR4KH$HyLsiD$D$foK<fo =`DŽ$t `afo8fo8f$H$H)$)$A)$)$L$AULL$P&fo^8fo F=Ifo;XMZI\$)$0fo:A`DŽ$Pt `bH$HA)$)$()$HfD$\L$AVLL$X脾A[A_IHvH$H$H$DL$ LpT$(Hc‰t$,L$HcEt$DD$9GIcHcfHnfHn|$DŽ$ `c`flҹ)$fo: Ƅ$L$HD)$hfo;L)$xfo6)$fo;)$L$hAWLL$hqIXZMHcD$H9$uHcD$H9$H=H5Cj~SL9l$HtIExHIEL9d$@I$HI$LdM1Lx$L$f($$)d$pff)$L7$L$f(,$)$HnH=0LRZT$|$D9HstH$`1HH5$B%H=HSR)HH=L1RDHH=L R|$$HT$IH_H5RHL$HE|$ RArH=#HDH$LT$PHD$DPAVHD$PPL$H0}L$HtD$D$LH=D1?_HD$0LKAWfvHHAVH#AUATUHH <$SHXHMvHD$)$HD$0)$)$D$D$D$HD$8H\$@H\$HH\$PHD$XH\$`D$H\$hD$ H\$pD$$H\$xD$(D$,PH$PH$PH$PH$PHD$xP1LL$xLD$p6WH0jHt$xH9txH|$$HdsgD$D$t8L$$vbH$PH3`H5"H1"H=sHOHD$0HD$0HX[]A\A]A^A_D$D$$tHt$pH9tFH|$ HsgD$D$tL$ v4H$PH`H5"iDD$D$ iLd$@L-HtI|$L9jLB-ZH|$8HrL@D$D$Ld$`I9pI|$L9zL,jH|$XHrLv@D$D$fo.2fo 6Aa`DŽ$nt `fom2fou4fD$H$HA)$)$ )$)$Ƅ$L$AULL$X迷[A^Hfo1Ifo 5fo~1HXAb`)$ fo5fD$DH$HA)$ )$)$8DŽ$Hnt `Ƅ$NL$AVLL$`AYAZIHLpH$H$H$|$ HcщD$(At$, L$D$9+fHnƒ|$`DŽ$d `cfl)$foe0 f$H$HD)$Xfo4)$hfo0)$xfo4)$L$XAWLL$xY^IHHcD$H9$uH;$H=H5](LL9l$PtIExHIEQL9d$H%I$HI$ LFf1fL3 h.D$8f.zf/t@kHwDHD$Xf.L2 .D$Xf.zf/t ~HkH8H=LK$D$HcЉL$9$AH$PDHc1HH5H=JHJHH=(LJfHUH=LnJAD$ H5,tH5HHEHT$|$$IHL$RHArH=HDHD$hLT$PHD$DPAVHD$PPLD$hH0LT$HtD$D$LH=1WHD$0LCff.fAWfvHHAVH_AUATUHH SHXHnHD$)$HD$0)$)$D$D$D$H\$8H\$@H\$HH\$PD$H\$XD$ H\$`D$$H\$hD$(D$,PHD$pPHD$pPHD$pPHD$pPHD$pP1LL$pLD$hOH0Ht$`H9tvH|$ Hl`D$D$t8L$ v`H$PHYiH5MH18H=HIHHD$0HD$0HX[]A\A]A^A_DD$D$ tHt$hH9tFH|$$Hl_D$D$tL$$v4H$PHXH5kDD$D$$kLl$8L%lf)$PI}L9L%H$PH8lLZ+D$D$Ll$PI9rI}f)$PL9gLA%WH$PHlLbZD$D$fob-fo .`DŽ$t `afo)fo)f$H$H)$)$A)$)$L$AULL$P foE)fo -.Ifo,XMZI\$)$ fo+A`DŽ$@t `bH$HA)$)$)$8fD$LL$AVLL$XkA[A_IHH$H$H$DL$ LpT$(Hc‰t$,L$HcEt$DD$9^IcHcfHnfHn|$DŽ$ `c`flҹ)$fo+ Ƅ$L$HD)$Xfo,L)$hfo')$xfo,)$L$XAWLL$hXIXZMHcD$H9$uHcD$H9$H=H5*[eDL9l$HtIExHIEL9d$@I$HI$LK>fD1fLX ZZD$pL$tzf.HD$xL ZZD$xL$|w HEH=LC1T$|$D9HZeH$P1HH5^)H=H:C$P$X& HH=LCD HH=rLBp|$$HT$IH/H5"HL$HE|$ RArH=HDH$LT$PHD$DPAVHD$PPL$H0M LT$HtD$D$LH=1PHD$0L\<$P$XVAWfvHHAVHAUATUHH SHXH gHD$)$HD$0)$)$D$D$D$H\$8H\$@H\$HH\$PD$H\$XD$ H\$`D$$H\$hD$(D$,PHD$pPHD$pPHD$pPHD$pPHD$pP1LL$pLD$hHH0Ht$`H9tvH|$ HZfXD$D$t8L$ v`H$PHaH5H1H=QH@HD$0HD$0HX[]A\A]A^A_DD$D$ tHt$hH9tFH|$$H fWD$D$tL$$v4H$PHPH5kDD$D$$kLl$8L%ef)$PI}L9LH$PHeL8S+D$D$Ll$PI9rI}f)$PL9gLWH$PHeLRD$D$fo"fo z'`DŽ$t `afo""fo*"f$H$H)$)$A)$)$L$AULL$P}fo!fo &Ifo2"XMZI\$)$ foR$A`DŽ$@t `bH$HA)$)$)$8fD$LL$AVLL$XۧA[A_IHH$H$H$DL$ LpT$(Hc‰t$,L$HcEt$DD$9^IcHcfHnfHn|$DŽ$ `c`flҹ)$fo ! Ƅ$L$HD)$Xfo%L)$hfo4 )$xfo$)$L$XAWLL$hȦIXZMHcD$H9$uHcD$H9$H=qH5S XMZI\$)$ fo> A`DŽ$@t `bH$HA)$ )$)$8fD$LL$AVLL$hǐA[A_IHH$H$H$DL$0LpT$8Hc‰t$t$DD$ 9IcHcfHnfHn|$,DŽ$ `c`flҹ)$fo  Ƅ$L$HD)$XfosL)$hfo )$xfo )$L$XAWLL$x贏IXZMHcD$H9$uHcD$ H9$H=]H5<%L9l$XtIExHIEDL9d$PI$HI$Lf1fL  $Pf.z!f/uHm$P@ZD$$NLT  $Pf.zf/uH$PZD$(f@D$(YHH=&L$T$|$ D9HiFH$P1HH58H=HI$HH=L'$~DHNH=L$:|$4HT$IHUH5HHL$ HE|$0RArH=HDHD$8LT$PHD$TPAVHD$`PLD$TH0yLT$HtD$D$LH=?1:1HD$@LAWHHHAVAUATUHH SHHQHHD$(HD$0D$D$H\$8H\$@HD$HH\$PD$ H\$XD$$H\$`HD$hD$(H\$pD$,H\$xPH$PHD$pPHD$pPH$PHD$xP1LD$hLL$ph)H0A1EHt$8Ld$HKL9D$D$tkL$Ht$xH9t{H|$,HK9D$D$t8L$,veH$HH5cH1H=nH!HD$0HD$0H[]A\A]A^A_f.D$D$,tHt$XH9tfH|$ HK9D$D$tDD$ EuS1H$HH5cfH$HH5FDD$D$ FHt$`H9NH|$$H:K8D$D$Ll$@H5EI}H9!H$H0KL4D$D$HT$HHfoƄ$A)$foDŽ$ `x`)$fog)$foG)$L$AVLL$`ˉ^_IHT$ t$ D$HcL$$H|$H1փ)HH9lLH9C|$(H$HT$hI]H5JFEPA AL$AWL$&ZYIHIT$B™HH9D$hHcL$$MNLD$ LHH=HH$Hك|$,HDHtD$D$L9l$PIEHIELD$$L $L$f($)$H=H5vH=H5c^g4HuH=L<aH=H5H$-HH=L LH=1+HD$0fAWHHHhAVAUATUHH 0SHHBHD$HD$D$$H\$ H\$(HD$0H\$8D$H\$@D$ H\$HHD$PD$H\$XD$H\$`PHD$hPHD$XPHD$XPHD$xPHD$`P1LD$PLL$X#H0A1EHt$ Ld$H,HLt4$$tiL$Ht$`H9ttH|$H8HC4$$t8L$v_H$HH5EH1`H= HqHD$HD$H[]A\A]A^A_D$D$tHt$@H9tgH|$HG3$$tDD$EuU1H$HYH5kDH$HH5KD$D$LHt$HH9OH|$ HG.3$$Ll$(H5|@f)$I}H9 H$HGL.d$$HT$0HfoƄ$A)D$xfo6DŽ$ `x`)$fo)$fo)$Lt$xAVLL$Hb^_IHT$t$D$HcL$ H|$01փ)HH9_?H96|$H$HT$PMuH5FFEPA AL$AWLL$hZYHHqT$B™HH9D$PHcD$ LKHT$hL|$H=4LD$I HHDHt$$L9l$8IE HIELfD$ LZZD$hL$lH=H5WH=H5iH~H=xLj$$yH=MH5vCHH=p1k&HD$lHH= Ltff.@AWHHH/AVAUATUHH SHHa=HD$HD$D$$H\$ HD$(H\$0HD$8H\$@D$H\$HD$ H\$PHD$XD$H\$`D$H\$hPHD$pPHD$`PHD$`PH$PHD$hP1LD$PLL$`sH0A1EHt$ Ld$H0DL.$$tiL$Ht$hH9txH|$HGD$D$HHt$PH9?H|$ HC-$$Ll$0H5;I}H9H|$(HCL$$HT$8HfoƄ$AD$xfoDŽ$ `x`$fo$fob$Lt$xAVLL$P~^_IHT$t$D$HcL$ H|$81փ)HH9_H9V|$H$HT$XI]H5BFEPA AL$AWLL$pG~ZYIH_T$B™HH9D$X(HcL$ MNHT$(LHH=HLD$Hك|$HDHt$$L9l$@(IEHIELfDD$ L {D$(f.zf/t HH=H5dH=H5niL?HqH=LG]H=H5=/HH=L LH=1 HD$ff.fAWHHHAVAUATUHH SHH7HD$HD$D$$H\$ HD$(H\$0HD$8H\$@D$H\$HD$ H\$PHD$XD$H\$`D$H\$hPHD$pPHD$`PHD$`PH$PHD$hP1LD$PLL$`H0A1EHt$ Ld$H8@Lh)$$tiL$Ht$hH9txH|$HD@7)$$t8L$vcH$HH5H1TH=HeHD$HD$H[]A\A]A^A_f$D$tHt$HH9tgH|$H?($$tDD$EuU1H$HIH5EgDH$HH5GD$D$HHt$PH9?H|$ H?($$Ll$0H55I}H9H|$(H?L$$HT$8Hfo Ƅ$AD$xfo=DŽ$ `x`$fo$fo$Lt$xAVLL$Piy^_IHT$t$D$HcL$ H|$81փ)HH9_H9V|$H$HT$XMuH5>FEPA A L$AWLL$pxZYHH_T$B™HH9D$X(HcD$ LKHT$(L|$H=;LD$I H%HDHt$$L9l$@+IEHIELfD$ L D$(f.zf/t HH=H5>aH=H5 IHqH=_L ]H=KH5t8 HH=%L HH=L1GHD$ff.fAWHHHAVAUATUHH SHHa2HD$D$HD$ H\$(D$D$ H\$0HD$8H\$@D$H\$HD$H\$PHD$XD$H\$`D$H\$hPHD$pPHD$`PHD$`PH$PHD$hP1LD$XLL$`sH0A1EHt$(Ld$H@<L#D$D$tkL$Ht$hH9tvH|$HJ<#D$D$t8L$v`H$H)H5H1H=yH HD$ HD$ H[]A\A]A^A_DD$D$tHt$HH9tfH|$H;%#D$D$tDD$EuS1H$HƒH5 hfH$HH5KDD$D$KHt$PH9H|$H;"D$D$Ll$0H50HDŽ$I}H9 H$H;Lt1D$D$HT$8Hfo$ Ƅ$AD$xfoDŽ$ `x`$fod$foD$Lt$xAVLL$Ps^_IHT$t$D$HcL$H|$81փ)HH9rH9i|$H$HT$XMuH5:FEPA A L$AWLL$p)sZYHHT$B™HH9D$X;HcD$LKHT$ L|$H=LD$I HHDHtD$D$L9l$@IEHIELfL h$f.zf/uvH$ZD$ D$ZH=H5PPH=ԻH5=88HDH=L0H=H52HH=1HD$ HH=YLff.AWHHHTAVAUATUHH SHH,HD$D$HD$ H\$(D$D$ H\$0HD$8H\$@D$H\$HD$H\$PHD$XD$H\$`D$H\$hPHD$pPHD$`PHD$`PH$PHD$hP1LD$XLL$` H0A1EHt$(Ld$H8L8D$D$tkL$Ht$hH9tvH|$H"8D$D$t8L$v`H$HyH5!H1 H=ɹH1HD$ HD$ H[]A\A]A^A_DD$D$tHt$HH9tfH|$H7uD$D$tDD$EuS1H$HH5hfH$HaH5cKDD$D$KHt$PH9H|$H7D$D$Ll$0H5Q*HDŽ$I}H9C H$Ht7L1D$D$HT$8HfoTƄ$AD$xfoDŽ$ `x`$fo$fo$Lt$xAVLL$Pn^_IHT$t$D$HcL$H|$81փ)HH9rH9i|$H$HT$XMuH56FEPA AL$AWLL$pymZYHHT$B™HH9D$X;HcD$LKHT$ L|$H=LD$I HװHDDHtD$D$L9l$@IEHIELNfLX $f.zf/uH$ZD$ D$ZH=<H5݊PH=$H58^HDH=Lf0H=H5-NHH= 1HD$ HH=Lff.AWfvHHAVHAUATUHH SHXH&HD$$)$HD$@)$D$D$D$ H\$HH\$PD$$H\$XD$(D$,D$0H\$`D$4H\$hD$8H\$pD$<H\$xPH$PH$PH$PH$PH$P1L$LD$xH0FHt$`H9ttH|$0H3cD$D$t8L$0v^H$PH3H5H1~H='HHD$@HD$@HX[]A\A]A^A_D$D$0tHt$hH9tFH|$4H3D$D$tL$4v4H$PH3H5=mDD$D$4mHt$pH9tRH|$8H3qD$D$BL$8vH=*H5;-HcT$`H8H=Lh$HMD$LHNH|$<LD҉D$(D$8tHHHEЃ|$4H|H5oH=HELHDPHD$4PAUHD$@PAPH$PLL$PLD$LH0褾HtD$D$LH=o1jHD$@kHCH= Ls/ff.AWfvHHAVHAUATUHH SH8H]HD$ )D$pHD$()$$D$D$H\$0H\$8D$ H\$@D$D$D$H\$HD$H\$PD$ H\$XD$$H\$`PHD$hPHD$hPHD$hPHD$hPHD$hP1LL$hLD$``H04Ht$HH9trH|$H.+ $$t8L$v]H$0HW'H5H1H=HHD$(HD$(H8[]A\A]A^A_$D$tHt$PH9t?H|$H*N $$tL$v.H$0HD'H5p$D$vHt$XH9tSH|$ H* $$ML$ v>H$0HtH5@1,f$D$ Ht$`H9tCH|$$H* $$L$$v.H$0H,'H5$D$$Ld$0H5f)$0I|$H9H$0HK*L $$FfoUfo A`DŽ$t `aHT$pHfofo)$)$)$fD$A)$L$ATLL$Hq[AYAZHfoIfo foT$ LhE1`)$fo9f$$H$DŽ$ t `bAH)$A)$A)$L$AVLL$PZ^_IHHt$pL@H‹|$HL$xHHO։T$H$H҉T$HO…D$H$D$D9HcH9D$ He|$$H HDʅtHHޝHEЃ|$HНH5ÝHEH=:HDPHD$PAPHD$(PAUH$PLL$8LD$4H0Ht$$L9|$8L!LDZZD$hL$lkH$H$01HH5H=/HpHH=LxlNHaH=LVM$0$8VLH=1HD$(ff.@AWfvHHAVH<AUATUHH SHH HD$ )D$pHD$()$$D$D$H\$0H\$8D$ H\$@D$D$D$H\$HD$H\$PD$ H\$XD$$H\$`PHD$hPHD$hPHD$hPHD$hPHD$hP1LL$hLD$`H04Ht$HH9trH|$H&&$$t8L$v]H$H!H5(H1H=OHHD$(HD$(H[]A\A]A^A_$D$tHt$PH9t?H|$H%$$tL$v.H$H H5p$D$vHt$XH9tSH|$ H%$$ML$ v>H$H$H5b1,f$D$ Ht$`H9tCH|$$H%2$$L$$v.H$H H5$D$$Ld$0H5If)$I|$H9RH$HC%Ls$$Ffofo M`DŽ$t `bfofof$H$|$ )$)$H)$ )$L$D@ATLL$PUAXAYHfoIIfo foV7LhH$)$fo)$HD$AHO)$DŽ$ t `aT$H$)$T$`f$$HT$pHL$AVLL$HRTY^IH~L$HD$ptwHcT$H9tQH=H5 jL9d$8LL誯ZZD$hL$l!H;D$xt>H=H5 HcT$HDH=L0HMD$L;HNH|$$LD҉D$D$ tHHHEЃ|$HH5H=pHELHDPHD$PAUHD$(PAPH$PLL$8LD$4H0(Ht$$LH=1HD$(HQH=L=$$ff.fAWfvHHAVH_AUATUSHH {HL= HD$8)$HD$PD$0D$,D$4L|$XL|$`HD$hL|$pL|$xHDŽ$D$8L$D$<L$D$@L$D$DL$D$HL$D$LL$PH$PH$PH$PH$PH$PH$PH$PH$P1L$L$vHPZH$L9tuH|$DH D$$D$$t8L$DH$HH5vIH1H=HHD$HHD$HHĈ[]A\A]A^A_@D$$D$DtH$L9tKH|$8H ZD$$D$$tDL$8Eu81H$HSH5mfD$$D$8dH$L9t_H|$@HS D$$D$$6DD$@EuH1H$HSH51 fD$$D$@Hl$PL% H}L9LH$HHD$$D$$Hl$pL9H}L9LH$HHD$$D$$B`foDŽ$pt `aH$Hf$|)$8Afoy)$Hfo)$Xfo)$hL$8ATLL$h}N^_HHAH$LpL9H|$4Hf)D$$D$$eH$L9H|$H9IBH=L HcD$$MËD$4tH=HHEHt$L$HT$H$PHD$8PAQIH$PHD$HPAPMH0询L$HtD$D$L9l$XtLH9l$HHEHHEHLȞZZɸ$$HDŽ$WL苞ZZɸ$$'D$$$`$h{辡H'H=^LD$,H==H5`H=%H5$`$hBHHH=LPH=ԋH58LH=1HD$8fH=H5N۠H@H={L,T$0D$0 $1)ЍQ‹T$,DfAWfvHHAVHAUATUHH ܑSHHHD$()$HD$@D$$D$ H\$HH\$PHD$XH\$`H\$hHD$pD$(H\$xD$,H$D$0H$D$4H$D$8H$D$<H$PH$PH$PH$PH$PH$PH$PH$PH$P1L$L$dHP`H$H9t{H|$4H?D$D$t8L$4veH$pHVH5H1H=HHD$8HD$8Hx[]A\A]A^A_f.D$D$4tH$H9tKH|$(HBD$D$tDl$(Eu81H$pH;H5`D$D$(^H$H9tWH|$0HD$D$0Dd$0Eu@1H$pH;H51D$D$0Ld$@L-I|$L9LzH$HL D$D$Ld$`I9oI|$L9rL藲bH$HLD$D$BA`foDŽ$`t `aH$HAfD$l)$(foe)$8foն)$Hfoն)$XL$(AULL$Xi=AZA[IH,H$H9$H=H5- L9d$HoI$cHI$ULHfDL蠘$L$f($)$sf)$Le$L$f($)$Ht$xMt$H9FH|$$HDOD$D$/H$H9CH|$,HRD$D$FH$pH5H$HT$PAD$VL$xAWLL$h;_AXIHUD$t$(HcT$$H|$PHD$(1)HH9H9LL$pI9MUH|$ HT$hHD$hH$EEL$H5A PAȅL$AW";ZYHL$H<L$t$0HcD$,H|$hQL$01)HcH9H9xHcT$$HHCH r~H=q~Ht$H|$4L$IHDHL$0M LQLPH$PHD$@PH 蛙HtD$D$L9l$XL D$$XHiH=L`UD$,H=׃H5xX;H=ƒH5+X&HtH=L`T$0D$01)ЋT$,DHH=1HD$8&裘H:H=CL&H=/H5` H=H5{fDAWfvHHAVHAUATUHH SH8HmHD$ )D$pHD$()$$D$D$HD$0H\$8H\$@D$ H\$HD$D$D$H\$PD$H\$XD$ H\$`D$$H\$hPHD$pPHD$pPHD$pPHD$pPHD$pP1LL$pLD$hgH0;Ht$PH9tqH|$H$$t8L$v\H$0H^H5զH1H=HHD$(HD$(H8[]A\A]A^A_f$D$tHt$XH9tGH|$HV$$tL$v6H$0HLH5]q$D$oHt$`H9tSH|$ H$$FL$ v>H$0HtH5 1%f$D$ Ht$hH9tCH|$$H$$L$$v.H$0H,H5$D$$Ld$8H5I|$H9讪H|$0HBL2$$Vfo|fo A`DŽ$t `aHT$pHfofo%)$ )$)$fD$A)$L$ATLL$P5AYAZHfoIfo fo֮T$ LhE1`)$foP f$$H$DŽ$ t `bAH)$A)$A)$L$AVLL$X4^_IHHt$pL@H‹|$HL$xHHO։T$H$H҉T$HO…D$H$D$D9HcH9D$ H|{|$$H xHDʅtHwHwHEЃ|$HwH5wHEH=QHDPHD$PAPHD$(PAUHD$XPLL$8LD$4H0Ht$$L9|$@L;LN D$0f.zf/t h赒HUHH$01HH5臜H=0}HunHwH=}LvcLHEH=|LT1LH=z1HD$(@AWfvHHAVH$AUATUHH ܟSHH-HD$ )D$pHD$()$$D$D$HD$0H\$8H\$@D$ H\$HD$D$D$H\$PD$H\$XD$ H\$`D$$H\$hPHD$pPHD$pPHD$pPHD$pPHD$pP1LL$pLD$h'H0;Ht$PH9tqH|$H% $$t8L$v\H$HH5H1轚H=f{HHD$(HD$(H[]A\A]A^A_f$D$tHt$XH9tGH|$H $$tL$v6H$H H5q$D$oHt$`H9tSH|$ H $$FL$ v>H$H4H5: 1%f$D$ Ht$hH9tCH|$$H B$$L$$v.H$HH5ߟ$D$$Ld$8H5qI|$H9nH|$0HJ L$$Vfo<fo t`DŽ$t `bfofof$H$|$ )$)$H )$ )$L$D@ATLL$X?/AXAYHfopIfo խfoWLhH$)$foF)$HD$A HO)$DŽ$ t `aT$H$)$T$`f$$HT$pHL$AVLL$Py.Y^IHL$HD$pHcT$H9tjH=)xH5L9d$@LL轫 D$0f.zf/t $HH;D$xtAH=wH5HcT$kH4H=wL HMD$LBqHNHt|$$LD҉D$D$ tHqHqHEЃ|$HqH5pH=wHELHDPHD$PAUHD$(PAPHD$XPLL$8LD$4H02Ht$$LH=s1HD$(HDH=vL0ff.AWfvHHAVHGAUATUHH |SHpHHD$()$HD$@D$$D$ H\$HH\$PHD$XH\$`H\$hHD$pD$(H\$xD$,H$D$0H$D$4H$D$8H$D$<H$PH$PH$PH$PH$PH$PH$PH$PH$P1L$L$HP`H$H9t{H|$4HD$D$t8L$4veH$`HH5H15H=tHFHD$8HD$8Hh[]A\A]A^A_f.D$D$4tH$H9tKH|$(HD$D$tDl$(Eu81H$`H{H5]`D$D$(^H$H9tWH|$0HcD$D$0Dd$0Eu@1H$`H{H51D$D$0Ll$@L%f)$`I}L9LH$`HL@BD$D$Ll$`I9I}f)$`L9~L蹝nH$`HL"D$D$A`foԥDŽ$Pt `aH$HAfD$\)$fo)$(fo)$8fo)$HL$AULL$X(AZA[IHDH$H9$H=6rH5G蚾L9d$HII$=HI$/L蝸"L踃ZZɸ$$\HDŽ$L{ZZɸ$$Ht$xMt$H9AH|$$HcD$D$)H$H9UH|$,H1D$D$FH$`H5H$HT$PAD$VL$hAWLL$h&_AXIH(D$t$(HcT$$H|$PHD$(1)HH9H9LL$pI9eMUH|$ HT$hHD$hH$EELT$H5A PAȅL$AW5&ZYHLT$HL$0t$0D$HcT$,H|$h1΃)HH9nH9eHC|$4LD$0H=iHt$H HtiHcD$$HDH$APIQM H$QHL$@QLH 贄HtD$D$L9l$XL D$$$`$h'ZH+H=nLbD$,$`$hH=nH5cC&fH=nH5CNHaH=nLMHH=k1HD$8H=UnH5蹺H==nH5衺wHH=nLT$0D$01)ЋT$,D|ff.AWfvHHAVHAUATUHH SH8HMHD$)D$pHD$0)$D$D$D$ D$H\$8H\$@D$H\$HD$D$D$ H\$PD$$H\$XD$(H\$`D$,H\$hPHD$pPHD$pPHD$pPHD$pPHD$pP1LL$pLD$hGH0CHt$PH9tqH|$ HD$D$t8L$ v[H$0H<H5ْH1ۋH=lHHD$0HD$0H8[]A\A]A^A_ËD$D$ tHt$XH9tFH|$$H5D$D$tL$$v4H$0H)H5`pDD$D$$pHt$`H9tRH|$(H~D$D$EL$(vQD$D$EL$(vH5~vIH1uH=VHHD$HHD$HHh[]A\A]A^A_@D$D$DtH$L9tKH|$8H:D$D$tD$8u:1H$`H5oH5}hfD$D$8dH$L9t_H|$@HSιD$D$6D$@uJ1H$`H5oH50}f1 fD$D$@Ld$PH-HDŽ$`I|$H9HH$`HLO1D$D$}Ld$pM9cI|$HDŽ$`H9HeH$`HL1D$D$A`foDŽ$Pt `aH$HAfD$\)$ fo))$(fo)$8fo)$HL$ATLL$h- A]A^HHH$LpL9aH|$4H׷D$D$XH$L9^H|$OL HcD$4MD$DtH=KHKHEHt$ L$HL$(HT$$PHD$HPAQIHD$DPHD$XPAPMH0fL$HtD$D$L9l$htLH9l$XHEHHEHDL P$`f.z!f/u^fH$`@ZD$(L蜄 $`f.zf/u fH$`ZD$,D$,D$4eHH=ePL͜D$<H=DPH5$訜H=,PH5萜feHH=PLnH=OH5#VcLH=M1HD$HHH=OH5#0dH"H=OLT$@D$@ $1)ЍQ‹T$H5bH=>H5RM&THtH=>L.`T$0D$01)ЋT$,D#HH=;1ɘHD$8&SHH=j>LҊH=V>H5躊H=>>H5袊ff.fAWHHHWfAVAUATUHH NSHpHHD$@HD$HD$,D$(H\$PH\$XHD$`H\$hD$0H\$pD$4H\$xHDŽ$H$D$8H$D$<H$HDŽ$D$@H$D$DH$PH$PH$PH$PH$PH$PH$PH$PH$P1L$L$AHPA1EHt$HLd$$HL趠D$ D$ tnL$$H$H9tqH|$HeY1D$<]D$HLn $L$f($)$f)$L3 $L$f($)$L$Hs H5$L1qH=LE5XHpH=L`E\L$H AH5$IGH$HT$pFH5vAH$AQL$AVL$袮AZA[IHL$,|$8HcD$D$D$AD$4uJ1H$pHH5f1fD$D$4H$H9H|$,H:>D$D$H$H9H|$8H>D$D$Ll$XL%lKI}L9YLgIH|$PHLD$D$>L$I9SI}L9WLGH$HLD$D$H$ FH$AH5AT L$(AULL$p-A^A_IH=H@H$H$L$Ht$HH$Lt$ HO$H)LD$$  D$Pf.zf/t HHDŽ$L  N$f.zf/t>H$pH9H5/H17H=HH#HZ HEH=L#1H$pHH5M_FHT$hH$pH5AL\$ QH$xSL$V^_HL\$IL$(|$(D$HcT$,Ht$h1σ)HH9H9HcD$8|$<HL$PH=Ht$MIEHHHDRHT$^_HL\$IL$$|$$D$HcT$(Ht$`1σ)HH9H9HcD$8|$<HL$H=Ht$MIEHHtHDRHT$HDH$_HX@AWH1AVAUATUHSHHHL$PDd$HkHHH9L|H)A~HAD$Lt$XLl`L%@ILHL1kHHx>H9}9IIH)M9uH~%H$A)IGt2HH)[]A\A]A^A_HH[]A\A]A^A_f.H~foIGAGAUATUHSHH]HHpH9t zAąt;=]HE8D` HD[]A\A]@D`(H[]DA\A]fDHEHH菒H5HIHHXH~kH@1Ht/IEH<"A9DLHH9t:IEHuI|fDeH[]DA\A]fDIE HIELfAfDAWAVAUIATLcUHSHHH $OHH\IcMH4$IA9IE 1A%I~ M9zM MHH9t)LLLMyMMLDHH9uHHfDHDHA9~HLHyHcHA9xLHIHDLM9LLH5\HH81nHH[]A\A]A^A_@EtmIcLLM1MHrEH5ؒH81mHDf.AD1kHH5kH81amIHLH5H81fDL蠗L萗dME1HHL$LH5tH81蒤LO1LrH% fDLHD$ 3HD$ ]fHl$8II|$ LHDE1MMcDTII\$Cp\MG$HL$ HHLL1\HH HL$H9H)IIL-o$ID$11HXiIH1脗'IUHH HtHx HHtH]zf.H]bfATH5UHHHtxHEu3H=7RIHEx HHEt2HL]A\HH=_1\If.HhHL]A\DHH=3]A\QDHtBHHCHH5H81GcHt 踎CHfAVIAUATUHH节HLHI蓍IHtHKI[cHHIHHtdHLLBu?HEx HHEtHL]A\A]A^HPHL]A\A]A^H5ZH=n\H5H=Љ[\H5|H=H\H5H=5\DATI薁Ht.LH覌IHtH&JInbHuLA\H5 H=5[H59H="[ff.fATSHH=JH:XIHtSID$ HtcCI\$H=MAD$H3t:H=Au(ZI|$ H5H@HL[A\@H=1DLE1UAWAVAUATUSHHHtH=!JWIHfkID$ H=AD$H;*HpfDH1HpHHuAD$1E1I\$HXDPHTKHcTDhIAHID$L"KE1LHIzPLXHHjhAIXZMID$I|$ LH4(-?Ix HIAD$AHpA9}=I\$H<+)IHu@I$xHI$E1HL[]A\A]A^A_DHHNJIMtIx HIt@Mt=J~"I^(MfDLBA^ M@LL趐gIEHI8L萐+ff.AWAAVIAUMATAUSDHH $HvIDhHAH=HIRD`(LL;-H II}HpH9t sTAE@IM8IcD=HM AHq(H9~H$4$LLG t AEtAEHEHHEsH[MD<$E$MMlL HI9H8yfouD$ht (Hs but goLt$HD$`H~D$foUD$ foXD$0fo[D$@fo^D$PfLIT_IWHI<1BgM9uLA)/_fE,H LH88HExHHEE1HHL[]A\A]A^A_f.HQG1@HLE1E1HxjRT$^_IH=GI@8IcH9h(uHFApL$Ix L$1HIxH4>L$LHHFHtHUxHHUH=}FIcHP(H*LAąH$Lt$tH$LL]IUH5ҀI<1HReHLH8詒E1D` y L;-_HEI}HpH9gpZ1@HLE111DHE(IHAt!=\EH@8vLh(IcI94$LLL$H$L$D9` fo>AayD$BfDL$@D$fo0D$ fo3D$0Lch Hl$L$HI\LDH5H|10dHHH8>L$I HILJDD` H@H$4$LLމك@ YHDIM @AUE1E1@HxjVHA[A\IH\H$HHCLL$-?IEIPIUAPI@AEAUIP A@IE IU IP(I@ IE(IU(IP0I@(IE0IU0IP8I@0IE8IU8AP@I@8AE@AU@A@@Ix HItAEt AEMHcq !HHD$ÉHD$LH豉E1Z=BI}8HG(IcH9Go AG eIEdARAE@0%= {fo~IU8D$8Ht) arrayHD$0AE@D$fo~D$ %=z> =AHJ(IcH $Lt$H9t%L8YH $DH5|I<1aIU8B- `AA v*LH$XH$MH5|I<1R`IEA|LXDH5wI<1`Z@fo(~AayD$BfDT$@D$fo~D$ fo~D$0Lh(IEH5,|HPH1H81_SHE HEHHEHL$8L$fo}D$8Lt$He) arrayH\$0D$fo|D$ A~qLi(I9gLWLDH5zI<1q_BD9` fo|yD$0arrafT$4D$fo;}D$ Lch Lci foO|D$8He) arrayH\$0D$fo>|D$ Lt$HLHL$H$VHL$H$fo|L@ fo|@ HcG bA1IH ~u AW_AU eAG%fod{yD$0arrafL$4D$fo|D$ AW%=u z>foj{D$XD$8foh{D$H\D HcJ Vt  AOA kAA]fozD$PHntiguousHD$HD$8LwhAwt}%=91ɀ>+AG1A DAAA%1=%1=|ff.@AWIAVAUATUSHxHcoH|$H$HipLw1HpH9I4LM,yAąuE}AM`MH$H;0L-<3EIcHl$0HH3EPH<Dh=<Hp Hx HHHDDAjLL$H$Y^IHL|$Iu HL$,HIGHHx`MGIMcxIxJHQHD$HxHHXHX;HAuHuH=;AuI} H=;IU8HR(HL$HIuHIHX˒L;,$tIExHIEHxD[]A\A]A^A_f.HD$Hx Ht2H<$t[H$HxL[]A\A]A^A_.fDp(y HHD$Hx HuSDHcR >L|Aą^HH5vH8džCfE}IcHl$01LD$HH\1LD$HL$,I}HE1HAHD$L@IAHLc.LcHLD$JE11LD$E1H`AAAPHl9IUHT$h=L9HT$Hjp Hx HHHADjLL$pIXZMA(t$t$L p(HH5nAH8gfHl$0t$HT$xt$HT$_Hl$0L;,$tIEhHIEZL4Mff.@AVMAUAATIUSHH(8h=8H~>p(Hx HHt3HMADjLBH []A\A]A^Dp t$ ~t$ fH7IHLHAWAVAUIATUHSH8HH%HHV7HpPH9 bH57H}HpH9aH}H 7HpH9aH2lHEHILp`H5mLHL1@V"fDHOIHU1H5lLVLLAwH8[]A\A]A^A_f.H}=U6LGHE8#HcH PIH5l1LUDHH(fEtu(IL5lf $aHE=5H]8LpLc{ LcMSMLI<H5l1GU&fL8M fAL&MHU LI<1HH U9]zfDEEXfDL{(tHEIH5kLHP1THXHt$(HD$`HcT$(HD$HD$ wD$HD$t>HcH~H9HG RHHXÐHH5pH81Ȉ1HXÐH4H HXf.HH1NHt HHD$|HD$Hff.H1EHtHHD$N|HD$H@HH9GHHPython int too large to convert to C int_fblas.ztpmv() 1st argument (n) can't be converted to int(n>=0) failed for 1st argument n_fblas.ztpmv() 3rd keyword (lower) can't be converted to int(lower == 0 || lower == 1) failed for 3rd keyword lower_fblas.ztpmv() 4th keyword (trans) can't be converted to int_fblas.ztpmv() 5th keyword (diag) can't be converted to int(diag == 0 || diag == 1) failed for 5th keyword diag_fblas.ztpmv() 1st keyword (incx) can't be converted to int(incx>0||incx<0) failed for 1st keyword incx_fblas.ztpmv() 2nd keyword (offx) can't be converted to int(len(ap)>=(n*(n+1)/2)) failed for 2nd argument ap(len(x)>offx+(n-1)*abs(incx)) failed for 3rd argument x(offx>=0 && offx0||incx<0) failed for 3rd keyword incx_fblas.zswap() 5th keyword (incy) can't be converted to int(incy>0||incy<0) failed for 5th keyword incy_fblas.zswap() 2nd keyword (offx) can't be converted to int(offx>=0 && offx=0 && offy(n-1)*abs(incy)) failed for 1st keyword n(len(x)-offx>(n-1)*abs(incx)) failed for 1st keyword n_fblas.cswap() 3rd keyword (incx) can't be converted to int_fblas.cswap() 5th keyword (incy) can't be converted to int_fblas.cswap() 2nd keyword (offx) can't be converted to int_fblas.cswap() 4th keyword (offy) can't be converted to int_fblas.cswap() 1st keyword (n) can't be converted to int_fblas.dswap() 3rd keyword (incx) can't be converted to int_fblas.dswap() 5th keyword (incy) can't be converted to int_fblas.dswap() 2nd keyword (offx) can't be converted to int_fblas.dswap() 4th keyword (offy) can't be converted to int_fblas.dswap() 1st keyword (n) can't be converted to int_fblas.sswap() 3rd keyword (incx) can't be converted to int_fblas.sswap() 5th keyword (incy) can't be converted to int_fblas.sswap() 2nd keyword (offx) can't be converted to int_fblas.sswap() 4th keyword (offy) can't be converted to int_fblas.sswap() 1st keyword (n) can't be converted to int_fblas.cgbmv() 7th keyword (trans) can't be converted to int(trans>=0 && trans <=2) failed for 7th keyword trans_fblas.cgbmv() 3rd argument (kl) can't be converted to int(kl>=0) failed for 3rd argument kl_fblas.cgbmv() 4th argument (ku) can't be converted to int(ku>=0) failed for 4th argument ku_fblas.cgbmv() 1st keyword (incx) can't be converted to int_fblas.cgbmv() 5th keyword (incy) can't be converted to int_fblas.cgbmv() 2nd keyword (offx) can't be converted to int_fblas.cgbmv() 6th keyword (offy) can't be converted to int_fblas.cgbmv() 5th argument (alpha) can't be converted to complex_float_fblas.cgbmv() 3rd keyword (beta) can't be converted to complex_float_fblas.cgbmv() 1st argument (m) can't be converted to int(m>=ku+kl+1) failed for 1st argument m_fblas.cgbmv() 2nd argument (n) can't be converted to int(n>=0&&n==shape(a,1)) failed for 2nd argument n(len(y)>offy+(trans==0?m-1:n-1)*abs(incy)) failed for 4th keyword y(offy>=0 && offyoffx+(trans==0?n-1:m-1)*abs(incx)) failed for 7th argument x(offx>=0 && offx0) failed for 3rd keyword incx_fblas.dnrm2() 2nd keyword (offx) can't be converted to int_fblas.dnrm2() 1st keyword (n) can't be converted to int_fblas.scasum() 3rd keyword (incx) can't be converted to int_fblas.scasum() 2nd keyword (offx) can't be converted to int_fblas.scasum() 1st keyword (n) can't be converted to int_fblas.snrm2() 3rd keyword (incx) can't be converted to int_fblas.snrm2() 2nd keyword (offx) can't be converted to int_fblas.snrm2() 1st keyword (n) can't be converted to int_fblas.scnrm2() 3rd keyword (incx) can't be converted to int_fblas.scnrm2() 2nd keyword (offx) can't be converted to int_fblas.scnrm2() 1st keyword (n) can't be converted to int_fblas.sasum() 3rd keyword (incx) can't be converted to int_fblas.sasum() 2nd keyword (offx) can't be converted to int_fblas.sasum() 1st keyword (n) can't be converted to int_fblas.dznrm2() 3rd keyword (incx) can't be converted to int_fblas.dznrm2() 2nd keyword (offx) can't be converted to int_fblas.dznrm2() 1st keyword (n) can't be converted to int_fblas.dzasum() 3rd keyword (incx) can't be converted to int_fblas.dzasum() 2nd keyword (offx) can't be converted to int_fblas.dzasum() 1st keyword (n) can't be converted to int_fblas.dasum() 3rd keyword (incx) can't be converted to int_fblas.dasum() 2nd keyword (offx) can't be converted to int_fblas.dasum() 1st keyword (n) can't be converted to int_fblas.isamax() 3rd keyword (incx) can't be converted to int_fblas.isamax() 2nd keyword (offx) can't be converted to int_fblas.isamax() 1st keyword (n) can't be converted to int_fblas.idamax() 3rd keyword (incx) can't be converted to int_fblas.idamax() 2nd keyword (offx) can't be converted to int_fblas.idamax() 1st keyword (n) can't be converted to int_fblas.izamax() 3rd keyword (incx) can't be converted to int_fblas.izamax() 2nd keyword (offx) can't be converted to int_fblas.izamax() 1st keyword (n) can't be converted to int_fblas.icamax() 3rd keyword (incx) can't be converted to int_fblas.icamax() 2nd keyword (offx) can't be converted to int_fblas.icamax() 1st keyword (n) can't be converted to int_fblas.scopy() 3rd keyword (incx) can't be converted to int_fblas.scopy() 5th keyword (incy) can't be converted to int_fblas.scopy() 2nd keyword (offx) can't be converted to int_fblas.scopy() 4th keyword (offy) can't be converted to int_fblas.scopy() 1st keyword (n) can't be converted to int_fblas.dcopy() 3rd keyword (incx) can't be converted to int_fblas.dcopy() 5th keyword (incy) can't be converted to int_fblas.dcopy() 2nd keyword (offx) can't be converted to int_fblas.dcopy() 4th keyword (offy) can't be converted to int_fblas.dcopy() 1st keyword (n) can't be converted to int_fblas.ccopy() 3rd keyword (incx) can't be converted to int_fblas.ccopy() 5th keyword (incy) can't be converted to int_fblas.ccopy() 2nd keyword (offx) can't be converted to int_fblas.ccopy() 4th keyword (offy) can't be converted to int_fblas.ccopy() 1st keyword (n) can't be converted to int_fblas.zcopy() 3rd keyword (incx) can't be converted to int_fblas.zcopy() 5th keyword (incy) can't be converted to int_fblas.zcopy() 2nd keyword (offx) can't be converted to int_fblas.zcopy() 4th keyword (offy) can't be converted to int_fblas.zcopy() 1st keyword (n) can't be converted to int_fblas.ddot() 3rd keyword (incx) can't be converted to int_fblas.ddot() 5th keyword (incy) can't be converted to int_fblas.ddot() 2nd keyword (offx) can't be converted to int_fblas.ddot() 4th keyword (offy) can't be converted to int_fblas.ddot() 1st keyword (n) can't be converted to int_fblas.sdot() 3rd keyword (incx) can't be converted to int_fblas.sdot() 5th keyword (incy) can't be converted to int_fblas.sdot() 2nd keyword (offx) can't be converted to int_fblas.sdot() 4th keyword (offy) can't be converted to int_fblas.sdot() 1st keyword (n) can't be converted to int_fblas.zdotc() 3rd keyword (incx) can't be converted to int_fblas.zdotc() 5th keyword (incy) can't be converted to int_fblas.zdotc() 2nd keyword (offx) can't be converted to int_fblas.zdotc() 4th keyword (offy) can't be converted to int_fblas.zdotc() 1st keyword (n) can't be converted to int_fblas.zdotu() 3rd keyword (incx) can't be converted to int_fblas.zdotu() 5th keyword (incy) can't be converted to int_fblas.zdotu() 2nd keyword (offx) can't be converted to int_fblas.zdotu() 4th keyword (offy) can't be converted to int_fblas.zdotu() 1st keyword (n) can't be converted to int_fblas.cdotc() 3rd keyword (incx) can't be converted to int_fblas.cdotc() 5th keyword (incy) can't be converted to int_fblas.cdotc() 2nd keyword (offx) can't be converted to int_fblas.cdotc() 4th keyword (offy) can't be converted to int_fblas.cdotc() 1st keyword (n) can't be converted to int_fblas.cdotu() 3rd keyword (incx) can't be converted to int_fblas.cdotu() 5th keyword (incy) can't be converted to int_fblas.cdotu() 2nd keyword (offx) can't be converted to int_fblas.cdotu() 4th keyword (offy) can't be converted to int_fblas.cdotu() 1st keyword (n) can't be converted to int_fblas.drotm() 3rd keyword (incx) can't be converted to int_fblas.drotm() 5th keyword (incy) can't be converted to int_fblas.drotm() 2nd keyword (offx) can't be converted to int_fblas.drotm() 4th keyword (offy) can't be converted to int_fblas.drotm() 1st keyword (n) can't be converted to int_fblas.srotm() 3rd keyword (incx) can't be converted to int_fblas.srotm() 5th keyword (incy) can't be converted to int_fblas.srotm() 2nd keyword (offx) can't be converted to int_fblas.srotm() 4th keyword (offy) can't be converted to int_fblas.srotm() 1st keyword (n) can't be converted to int_fblas.zscal() 1st argument (a) can't be converted to complex_double_fblas.zscal() 3rd keyword (incx) can't be converted to int_fblas.zscal() 2nd keyword (offx) can't be converted to int_fblas.zscal() 1st keyword (n) can't be converted to int_fblas.cscal() 1st argument (a) can't be converted to complex_float_fblas.cscal() 3rd keyword (incx) can't be converted to int_fblas.cscal() 2nd keyword (offx) can't be converted to int_fblas.cscal() 1st keyword (n) can't be converted to int_fblas.zrotg() 1st argument (a) can't be converted to complex_double_fblas.zrotg() 2nd argument (b) can't be converted to complex_double_fblas.crotg() 1st argument (a) can't be converted to complex_float_fblas.crotg() 2nd argument (b) can't be converted to complex_float_fblas.sgbmv() 7th keyword (trans) can't be converted to int_fblas.sgbmv() 3rd argument (kl) can't be converted to int_fblas.sgbmv() 4th argument (ku) can't be converted to int_fblas.sgbmv() 1st keyword (incx) can't be converted to int_fblas.sgbmv() 5th keyword (incy) can't be converted to int_fblas.sgbmv() 2nd keyword (offx) can't be converted to int_fblas.sgbmv() 6th keyword (offy) can't be converted to int_fblas.sgbmv() 5th argument (alpha) can't be converted to float_fblas.sgbmv() 3rd keyword (beta) can't be converted to float_fblas.sgbmv() 1st argument (m) can't be converted to int_fblas.sgbmv() 2nd argument (n) can't be converted to int_fblas._fblas.sgbmv: failed to create array from the 6th argument `a`_fblas._fblas.sgbmv: failed to create array from the 4th keyword `y`_fblas._fblas.sgbmv: failed to create array from the 7th argument `x`_fblas.dgbmv() 7th keyword (trans) can't be converted to int_fblas.dgbmv() 3rd argument (kl) can't be converted to int_fblas.dgbmv() 4th argument (ku) can't be converted to int_fblas.dgbmv() 1st keyword (incx) can't be converted to int_fblas.dgbmv() 5th keyword (incy) can't be converted to int_fblas.dgbmv() 2nd keyword (offx) can't be converted to int_fblas.dgbmv() 6th keyword (offy) can't be converted to int_fblas.dgbmv() 5th argument (alpha) can't be converted to double_fblas.dgbmv() 3rd keyword (beta) can't be converted to double_fblas.dgbmv() 1st argument (m) can't be converted to int_fblas.dgbmv() 2nd argument (n) can't be converted to int_fblas._fblas.dgbmv: failed to create array from the 6th argument `a`_fblas._fblas.dgbmv: failed to create array from the 4th keyword `y`_fblas._fblas.dgbmv: failed to create array from the 7th argument `x`_fblas.dscal() 1st argument (a) can't be converted to double_fblas.dscal() 3rd keyword (incx) can't be converted to int_fblas.dscal() 2nd keyword (offx) can't be converted to int_fblas.dscal() 1st keyword (n) can't be converted to int_fblas.sscal() 1st argument (a) can't be converted to float_fblas.sscal() 3rd keyword (incx) can't be converted to int_fblas.sscal() 2nd keyword (offx) can't be converted to int_fblas.sscal() 1st keyword (n) can't be converted to int_fblas.zdscal() 1st argument (a) can't be converted to double_fblas.zdscal() 3rd keyword (incx) can't be converted to int_fblas.zdscal() 2nd keyword (offx) can't be converted to int_fblas.zdscal() 1st keyword (n) can't be converted to int_fblas.csscal() 1st argument (a) can't be converted to float_fblas.csscal() 3rd keyword (incx) can't be converted to int_fblas.csscal() 2nd keyword (offx) can't be converted to int_fblas.csscal() 1st keyword (n) can't be converted to int_fblas.drotg() 1st argument (a) can't be converted to double_fblas.drotg() 2nd argument (b) can't be converted to double_fblas.srotg() 1st argument (a) can't be converted to float_fblas.srotg() 2nd argument (b) can't be converted to float_fblas.zaxpy() 2nd keyword (a) can't be converted to complex_double_fblas.zaxpy() 4th keyword (incx) can't be converted to int(incx>0||incx<0) failed for 4th keyword incx_fblas.zaxpy() 6th keyword (incy) can't be converted to int(incy>0||incy<0) failed for 6th keyword incy_fblas.zaxpy() 3rd keyword (offx) can't be converted to int(offx>=0 && offx=0 && offy0||incx<0) failed for 2nd keyword incx(offx >= 0 && offx < len(x)) failed for 2nd argument x_fblas.zher() 4th keyword (n) can't be converted to int(n <= (len(x)-1-offx)/abs(incx)+1) failed for 4th keyword n(n >= 0) failed for 4th keyword n_fblas._fblas.zher: failed to create array from the 5th keyword `a`_fblas.zsyr() 1st keyword (lower) can't be converted to int_fblas.zsyr() 1st argument (alpha) can't be converted to complex_double_fblas.zsyr() 3rd keyword (offx) can't be converted to int_fblas.zsyr() 2nd keyword (incx) can't be converted to int_fblas.zsyr() 4th keyword (n) can't be converted to int_fblas._fblas.zsyr: failed to create array from the 5th keyword `a`_fblas.csyr() 1st keyword (lower) can't be converted to int_fblas.csyr() 1st argument (alpha) can't be converted to complex_float_fblas.csyr() 3rd keyword (offx) can't be converted to int_fblas.csyr() 2nd keyword (incx) can't be converted to int_fblas.csyr() 4th keyword (n) can't be converted to int_fblas._fblas.csyr: failed to create array from the 5th keyword `a`_fblas.cher() 1st keyword (lower) can't be converted to int_fblas.cher() 1st argument (alpha) can't be converted to complex_float_fblas.cher() 3rd keyword (offx) can't be converted to int_fblas.cher() 2nd keyword (incx) can't be converted to int_fblas.cher() 4th keyword (n) can't be converted to int_fblas._fblas.cher: failed to create array from the 5th keyword `a`_fblas.daxpy() 2nd keyword (a) can't be converted to double_fblas.daxpy() 4th keyword (incx) can't be converted to int_fblas.daxpy() 6th keyword (incy) can't be converted to int_fblas.daxpy() 3rd keyword (offx) can't be converted to int_fblas.daxpy() 5th keyword (offy) can't be converted to int_fblas.daxpy() 1st keyword (n) can't be converted to int_fblas.saxpy() 2nd keyword (a) can't be converted to float_fblas.saxpy() 4th keyword (incx) can't be converted to int_fblas.saxpy() 6th keyword (incy) can't be converted to int_fblas.saxpy() 3rd keyword (offx) can't be converted to int_fblas.saxpy() 5th keyword (offy) can't be converted to int_fblas.saxpy() 1st keyword (n) can't be converted to int_fblas.dsyr() 1st keyword (lower) can't be converted to int_fblas.dsyr() 1st argument (alpha) can't be converted to double_fblas.dsyr() 3rd keyword (offx) can't be converted to int_fblas.dsyr() 2nd keyword (incx) can't be converted to int_fblas.dsyr() 4th keyword (n) can't be converted to int_fblas._fblas.dsyr: failed to create array from the 5th keyword `a`_fblas.ssyr() 1st keyword (lower) can't be converted to int_fblas.ssyr() 1st argument (alpha) can't be converted to float_fblas.ssyr() 3rd keyword (offx) can't be converted to int_fblas.ssyr() 2nd keyword (incx) can't be converted to int_fblas.ssyr() 4th keyword (n) can't be converted to int_fblas._fblas.ssyr: failed to create array from the 5th keyword `a`_fblas.zher2() 1st keyword (lower) can't be converted to int_fblas.zher2() 1st argument (alpha) can't be converted to complex_double_fblas.zher2() 2nd keyword (incx) can't be converted to int_fblas.zher2() 3rd keyword (offx) can't be converted to int_fblas.zher2() 4th keyword (incy) can't be converted to int(incy>0||incy<0) failed for 4th keyword incy_fblas.zher2() 5th keyword (offy) can't be converted to int(offy >= 0 && offy < len(y)) failed for 3rd argument y_fblas.zher2() 6th keyword (n) can't be converted to int(n <= (len(y)-1-offy)/abs(incy)+1) failed for 6th keyword n(n <= (len(x)-1-offx)/abs(incx)+1) failed for 6th keyword n(n>=0) failed for 6th keyword n_fblas._fblas.zher2: failed to create array from the 3rd argument `y`_fblas._fblas.zher2: failed to create array from the 7th keyword `a`_fblas.cher2() 1st keyword (lower) can't be converted to int_fblas.cher2() 1st argument (alpha) can't be converted to complex_float_fblas.cher2() 2nd keyword (incx) can't be converted to int_fblas.cher2() 3rd keyword (offx) can't be converted to int_fblas.cher2() 4th keyword (incy) can't be converted to int_fblas.cher2() 5th keyword (offy) can't be converted to int_fblas.cher2() 6th keyword (n) can't be converted to int_fblas._fblas.cher2: failed to create array from the 3rd argument `y`_fblas._fblas.cher2: failed to create array from the 7th keyword `a`_fblas.dtrmv() 4th keyword (trans) can't be converted to int(trans>=0 && trans <=2) failed for 4th keyword trans_fblas.dtrmv() 3rd keyword (lower) can't be converted to int(lower==0||lower==1) failed for 3rd keyword lower_fblas.dtrmv() 5th keyword (diag) can't be converted to int(diag==0||diag==1) failed for 5th keyword diag_fblas.dtrmv() 2nd keyword (incx) can't be converted to int(shape(a,0)==shape(a,1)) failed for 1st argument a_fblas.dtrmv() 1st keyword (offx) can't be converted to int(offx>=0 && offxoffx+(n-1)*abs(incx)) failed for hidden n_fblas.strmv() 4th keyword (trans) can't be converted to int_fblas.strmv() 3rd keyword (lower) can't be converted to int_fblas.strmv() 5th keyword (diag) can't be converted to int_fblas.strmv() 2nd keyword (incx) can't be converted to int_fblas.strmv() 1st keyword (offx) can't be converted to int_fblas.ctrmv() 4th keyword (trans) can't be converted to int_fblas.ctrmv() 3rd keyword (lower) can't be converted to int_fblas.ctrmv() 5th keyword (diag) can't be converted to int_fblas.ctrmv() 2nd keyword (incx) can't be converted to int_fblas.ctrmv() 1st keyword (offx) can't be converted to int_fblas.ztrmv() 4th keyword (trans) can't be converted to int_fblas.ztrmv() 3rd keyword (lower) can't be converted to int_fblas.ztrmv() 5th keyword (diag) can't be converted to int_fblas.ztrmv() 2nd keyword (incx) can't be converted to int_fblas.ztrmv() 1st keyword (offx) can't be converted to int_fblas.zdrot() 3rd argument (c) can't be converted to double_fblas.zdrot() 4th argument (s) can't be converted to double_fblas.zdrot() 3rd keyword (incx) can't be converted to int_fblas.zdrot() 5th keyword (incy) can't be converted to int_fblas.zdrot() 2nd keyword (offx) can't be converted to int_fblas.zdrot() 4th keyword (offy) can't be converted to int_fblas.zdrot() 1st keyword (n) can't be converted to int_fblas.drot() 3rd argument (c) can't be converted to double_fblas.drot() 4th argument (s) can't be converted to double_fblas.drot() 3rd keyword (incx) can't be converted to int_fblas.drot() 5th keyword (incy) can't be converted to int_fblas.drot() 2nd keyword (offx) can't be converted to int_fblas.drot() 4th keyword (offy) can't be converted to int_fblas.drot() 1st keyword (n) can't be converted to int_fblas.csrot() 3rd argument (c) can't be converted to float_fblas.csrot() 4th argument (s) can't be converted to float_fblas.csrot() 3rd keyword (incx) can't be converted to int_fblas.csrot() 5th keyword (incy) can't be converted to int_fblas.csrot() 2nd keyword (offx) can't be converted to int_fblas.csrot() 4th keyword (offy) can't be converted to int_fblas.csrot() 1st keyword (n) can't be converted to int_fblas.srot() 3rd argument (c) can't be converted to float_fblas.srot() 4th argument (s) can't be converted to float_fblas.srot() 3rd keyword (incx) can't be converted to int_fblas.srot() 5th keyword (incy) can't be converted to int_fblas.srot() 2nd keyword (offx) can't be converted to int_fblas.srot() 4th keyword (offy) can't be converted to int_fblas.srot() 1st keyword (n) can't be converted to int_fblas.dsyr2() 1st keyword (lower) can't be converted to int_fblas.dsyr2() 1st argument (alpha) can't be converted to double_fblas.dsyr2() 2nd keyword (incx) can't be converted to int_fblas.dsyr2() 3rd keyword (offx) can't be converted to int_fblas.dsyr2() 4th keyword (incy) can't be converted to int_fblas.dsyr2() 5th keyword (offy) can't be converted to int_fblas.dsyr2() 6th keyword (n) can't be converted to int_fblas._fblas.dsyr2: failed to create array from the 3rd argument `y`_fblas._fblas.dsyr2: failed to create array from the 7th keyword `a`_fblas.ssyr2() 1st keyword (lower) can't be converted to int_fblas.ssyr2() 1st argument (alpha) can't be converted to float_fblas.ssyr2() 2nd keyword (incx) can't be converted to int_fblas.ssyr2() 3rd keyword (offx) can't be converted to int_fblas.ssyr2() 4th keyword (incy) can't be converted to int_fblas.ssyr2() 5th keyword (offy) can't be converted to int_fblas.ssyr2() 6th keyword (n) can't be converted to int_fblas._fblas.ssyr2: failed to create array from the 3rd argument `y`_fblas._fblas.ssyr2: failed to create array from the 7th keyword `a`_fblas.dtrsv() 3rd keyword (lower) can't be converted to int_fblas.dtrsv() 4th keyword (trans) can't be converted to int_fblas.dtrsv() 5th keyword (diag) can't be converted to int_fblas.dtrsv() 1st keyword (incx) can't be converted to int_fblas.dtrsv() 2nd keyword (offx) can't be converted to int(len(x)>offx+(n-1)*abs(incx)) failed for 2nd argument x(offx>=0 && offx=0&&k<=lda-1) failed for 1st argument k_fblas._fblas.ctbsv: failed to create array from the 3rd argument `x`_fblas.ztbsv() 3rd keyword (lower) can't be converted to int_fblas.ztbsv() 4th keyword (trans) can't be converted to int_fblas.ztbsv() 5th keyword (diag) can't be converted to int_fblas.ztbsv() 1st keyword (incx) can't be converted to int_fblas.ztbsv() 2nd keyword (offx) can't be converted to int_fblas.ztbsv() 1st argument (k) can't be converted to int_fblas._fblas.ztbsv: failed to create array from the 3rd argument `x`_fblas.dtbsv() 3rd keyword (lower) can't be converted to int_fblas.dtbsv() 4th keyword (trans) can't be converted to int_fblas.dtbsv() 5th keyword (diag) can't be converted to int_fblas.dtbsv() 1st keyword (incx) can't be converted to int_fblas.dtbsv() 2nd keyword (offx) can't be converted to int_fblas.dtbsv() 1st argument (k) can't be converted to int_fblas._fblas.dtbsv: failed to create array from the 3rd argument `x`_fblas.stbsv() 3rd keyword (lower) can't be converted to int_fblas.stbsv() 4th keyword (trans) can't be converted to int_fblas.stbsv() 5th keyword (diag) can't be converted to int_fblas.stbsv() 1st keyword (incx) can't be converted to int_fblas.stbsv() 2nd keyword (offx) can't be converted to int_fblas.stbsv() 1st argument (k) can't be converted to int_fblas._fblas.stbsv: failed to create array from the 3rd argument `x`_fblas.dtbmv() 3rd keyword (lower) can't be converted to int_fblas.dtbmv() 4th keyword (trans) can't be converted to int_fblas.dtbmv() 5th keyword (diag) can't be converted to int_fblas.dtbmv() 1st keyword (incx) can't be converted to int_fblas.dtbmv() 2nd keyword (offx) can't be converted to int_fblas.dtbmv() 1st argument (k) can't be converted to int_fblas._fblas.dtbmv: failed to create array from the 3rd argument `x`_fblas.stbmv() 3rd keyword (lower) can't be converted to int_fblas.stbmv() 4th keyword (trans) can't be converted to int_fblas.stbmv() 5th keyword (diag) can't be converted to int_fblas.stbmv() 1st keyword (incx) can't be converted to int_fblas.stbmv() 2nd keyword (offx) can't be converted to int_fblas.stbmv() 1st argument (k) can't be converted to int_fblas._fblas.stbmv: failed to create array from the 3rd argument `x`_fblas.ctbmv() 3rd keyword (lower) can't be converted to int_fblas.ctbmv() 4th keyword (trans) can't be converted to int_fblas.ctbmv() 5th keyword (diag) can't be converted to int_fblas.ctbmv() 1st keyword (incx) can't be converted to int_fblas.ctbmv() 2nd keyword (offx) can't be converted to int_fblas.ctbmv() 1st argument (k) can't be converted to int_fblas._fblas.ctbmv: failed to create array from the 3rd argument `x`_fblas.ztbmv() 3rd keyword (lower) can't be converted to int_fblas.ztbmv() 4th keyword (trans) can't be converted to int_fblas.ztbmv() 5th keyword (diag) can't be converted to int_fblas.ztbmv() 1st keyword (incx) can't be converted to int_fblas.ztbmv() 2nd keyword (offx) can't be converted to int_fblas.ztbmv() 1st argument (k) can't be converted to int_fblas._fblas.ztbmv: failed to create array from the 3rd argument `x`_fblas.sger() 1st argument (alpha) can't be converted to float_fblas.sger() 1st keyword (incx) can't be converted to int(incx==1||incx==-1) failed for 1st keyword incx_fblas.sger() 2nd keyword (incy) can't be converted to int(incy==1||incy==-1) failed for 2nd keyword incyInitialization of 3rd keyword a failed (initforcomb)._fblas.drotmg() 1st argument (d1) can't be converted to double_fblas.drotmg() 2nd argument (d2) can't be converted to double_fblas.drotmg() 3rd argument (x1) can't be converted to double_fblas.drotmg() 4th argument (y1) can't be converted to double_fblas.srotmg() 1st argument (d1) can't be converted to float_fblas.srotmg() 2nd argument (d2) can't be converted to float_fblas.srotmg() 3rd argument (x1) can't be converted to float_fblas.srotmg() 4th argument (y1) can't be converted to float_fblas.zgerc() 1st argument (alpha) can't be converted to complex_double_fblas.zgerc() 1st keyword (incx) can't be converted to int_fblas.zgerc() 2nd keyword (incy) can't be converted to int_fblas.zgeru() 1st argument (alpha) can't be converted to complex_double_fblas.zgeru() 1st keyword (incx) can't be converted to int_fblas.zgeru() 2nd keyword (incy) can't be converted to int_fblas.dger() 1st argument (alpha) can't be converted to double_fblas.dger() 1st keyword (incx) can't be converted to int_fblas.dger() 2nd keyword (incy) can't be converted to int_fblas.cgeru() 1st argument (alpha) can't be converted to complex_float_fblas.cgeru() 1st keyword (incx) can't be converted to int_fblas.cgeru() 2nd keyword (incy) can't be converted to int_fblas.cgerc() 1st argument (alpha) can't be converted to complex_float_fblas.cgerc() 1st keyword (incx) can't be converted to int_fblas.cgerc() 2nd keyword (incy) can't be converted to int_fblas.zherk() 4th keyword (lower) can't be converted to int(lower==0||lower==1) failed for 4th keyword lower_fblas.zherk() 3rd keyword (trans) can't be converted to int(trans>=0 && trans <=2) failed for 3rd keyword trans_fblas.zherk() 1st argument (alpha) can't be converted to complex_double_fblas.zherk() 1st keyword (beta) can't be converted to complex_double(shape(c,0)==n && shape(c,1)==n) failed for 2nd keyword c_fblas.zsyrk() 4th keyword (lower) can't be converted to int_fblas.zsyrk() 3rd keyword (trans) can't be converted to int_fblas.zsyrk() 1st argument (alpha) can't be converted to complex_double_fblas.zsyrk() 1st keyword (beta) can't be converted to complex_double_fblas.cherk() 4th keyword (lower) can't be converted to int_fblas.cherk() 3rd keyword (trans) can't be converted to int_fblas.cherk() 1st argument (alpha) can't be converted to complex_float_fblas.cherk() 1st keyword (beta) can't be converted to complex_float_fblas.csyrk() 4th keyword (lower) can't be converted to int_fblas.csyrk() 3rd keyword (trans) can't be converted to int_fblas.csyrk() 1st argument (alpha) can't be converted to complex_float_fblas.csyrk() 1st keyword (beta) can't be converted to complex_float_fblas.zgemm() 3rd keyword (trans_a) can't be converted to int(trans_a>=0 && trans_a <=2) failed for 3rd keyword trans_a_fblas.zgemm() 4th keyword (trans_b) can't be converted to int(trans_b>=0 && trans_b <=2) failed for 4th keyword trans_b_fblas.zgemm() 1st argument (alpha) can't be converted to complex_double_fblas.zgemm() 1st keyword (beta) can't be converted to complex_double(trans_b?kb==k:ldb==k) failed for hidden n(shape(c,0)==m && shape(c,1)==n) failed for 2nd keyword c_fblas.cgemm() 3rd keyword (trans_a) can't be converted to int_fblas.cgemm() 4th keyword (trans_b) can't be converted to int_fblas.cgemm() 1st argument (alpha) can't be converted to complex_float_fblas.cgemm() 1st keyword (beta) can't be converted to complex_float_fblas.zsyr2k() 4th keyword (lower) can't be converted to int_fblas.zsyr2k() 3rd keyword (trans) can't be converted to int_fblas.zsyr2k() 1st argument (alpha) can't be converted to complex_double_fblas.zsyr2k() 1st keyword (beta) can't be converted to complex_double(trans ? lda==ldb: ka==kb) failed for hidden k_fblas.zher2k() 4th keyword (lower) can't be converted to int_fblas.zher2k() 3rd keyword (trans) can't be converted to int_fblas.zher2k() 1st argument (alpha) can't be converted to complex_double_fblas.zher2k() 1st keyword (beta) can't be converted to complex_double_fblas.dsyrk() 4th keyword (lower) can't be converted to int_fblas.dsyrk() 3rd keyword (trans) can't be converted to int_fblas.dsyrk() 1st argument (alpha) can't be converted to double_fblas.dsyrk() 1st keyword (beta) can't be converted to double_fblas.cher2k() 4th keyword (lower) can't be converted to int_fblas.cher2k() 3rd keyword (trans) can't be converted to int_fblas.cher2k() 1st argument (alpha) can't be converted to complex_float_fblas.cher2k() 1st keyword (beta) can't be converted to complex_float_fblas.csyr2k() 4th keyword (lower) can't be converted to int_fblas.csyr2k() 3rd keyword (trans) can't be converted to int_fblas.csyr2k() 1st argument (alpha) can't be converted to complex_float_fblas.csyr2k() 1st keyword (beta) can't be converted to complex_float_fblas.ssyrk() 4th keyword (lower) can't be converted to int_fblas.ssyrk() 3rd keyword (trans) can't be converted to int_fblas.ssyrk() 1st argument (alpha) can't be converted to float_fblas.ssyrk() 1st keyword (beta) can't be converted to float_fblas.dgemm() 3rd keyword (trans_a) can't be converted to int_fblas.dgemm() 4th keyword (trans_b) can't be converted to int_fblas.dgemm() 1st argument (alpha) can't be converted to double_fblas.dgemm() 1st keyword (beta) can't be converted to double_fblas.sgemm() 3rd keyword (trans_a) can't be converted to int_fblas.sgemm() 4th keyword (trans_b) can't be converted to int_fblas.sgemm() 1st argument (alpha) can't be converted to float_fblas.sgemm() 1st keyword (beta) can't be converted to float_fblas.zsymm() 3rd keyword (side) can't be converted to int(side==0||side==1) failed for 3rd keyword side_fblas.zsymm() 4th keyword (lower) can't be converted to int_fblas.zsymm() 1st argument (alpha) can't be converted to complex_double_fblas.zsymm() 1st keyword (beta) can't be converted to complex_double(side? kb==lda : ka==ldb) failed for hidden n_fblas.zhemm() 3rd keyword (side) can't be converted to int_fblas.zhemm() 4th keyword (lower) can't be converted to int_fblas.zhemm() 1st argument (alpha) can't be converted to complex_double_fblas.zhemm() 1st keyword (beta) can't be converted to complex_double_fblas.dsyr2k() 4th keyword (lower) can't be converted to int_fblas.dsyr2k() 3rd keyword (trans) can't be converted to int_fblas.dsyr2k() 1st argument (alpha) can't be converted to double_fblas.dsyr2k() 1st keyword (beta) can't be converted to double_fblas.chemm() 3rd keyword (side) can't be converted to int_fblas.chemm() 4th keyword (lower) can't be converted to int_fblas.chemm() 1st argument (alpha) can't be converted to complex_float_fblas.chemm() 1st keyword (beta) can't be converted to complex_float_fblas.csymm() 3rd keyword (side) can't be converted to int_fblas.csymm() 4th keyword (lower) can't be converted to int_fblas.csymm() 1st argument (alpha) can't be converted to complex_float_fblas.csymm() 1st keyword (beta) can't be converted to complex_float_fblas.ssyr2k() 4th keyword (lower) can't be converted to int_fblas.ssyr2k() 3rd keyword (trans) can't be converted to int_fblas.ssyr2k() 1st argument (alpha) can't be converted to float_fblas.ssyr2k() 1st keyword (beta) can't be converted to float_fblas.dsymm() 3rd keyword (side) can't be converted to int_fblas.dsymm() 4th keyword (lower) can't be converted to int_fblas.dsymm() 1st argument (alpha) can't be converted to double_fblas.dsymm() 1st keyword (beta) can't be converted to double_fblas.ssymm() 3rd keyword (side) can't be converted to int_fblas.ssymm() 4th keyword (lower) can't be converted to int_fblas.ssymm() 1st argument (alpha) can't be converted to float_fblas.ssymm() 1st keyword (beta) can't be converted to float_fblas.zspr() 1st argument (n) can't be converted to int_fblas.zspr() 3rd keyword (lower) can't be converted to int_fblas.zspr() 1st keyword (incx) can't be converted to int_fblas.zspr() 2nd keyword (offx) can't be converted to int_fblas.zspr() 2nd argument (alpha) can't be converted to complex_double(len(ap)>=(n*(n+1)/2)) failed for 4th argument ap_fblas._fblas.zspr: failed to create array from the 4th argument `ap`_fblas.cspr() 1st argument (n) can't be converted to int_fblas.cspr() 3rd keyword (lower) can't be converted to int_fblas.cspr() 1st keyword (incx) can't be converted to int_fblas.cspr() 2nd keyword (offx) can't be converted to int_fblas.cspr() 2nd argument (alpha) can't be converted to complex_float_fblas._fblas.cspr: failed to create array from the 4th argument `ap`_fblas.zhpr() 1st argument (n) can't be converted to int_fblas.zhpr() 3rd keyword (lower) can't be converted to int_fblas.zhpr() 1st keyword (incx) can't be converted to int_fblas.zhpr() 2nd keyword (offx) can't be converted to int_fblas.zhpr() 2nd argument (alpha) can't be converted to double_fblas._fblas.zhpr: failed to create array from the 4th argument `ap`_fblas.dspr() 1st argument (n) can't be converted to int_fblas.dspr() 3rd keyword (lower) can't be converted to int_fblas.dspr() 1st keyword (incx) can't be converted to int_fblas.dspr() 2nd keyword (offx) can't be converted to int_fblas.dspr() 2nd argument (alpha) can't be converted to double_fblas._fblas.dspr: failed to create array from the 4th argument `ap`_fblas.sspr() 1st argument (n) can't be converted to int_fblas.sspr() 3rd keyword (lower) can't be converted to int_fblas.sspr() 1st keyword (incx) can't be converted to int_fblas.sspr() 2nd keyword (offx) can't be converted to int_fblas.sspr() 2nd argument (alpha) can't be converted to float_fblas._fblas.sspr: failed to create array from the 4th argument `ap`_fblas.chpr() 1st argument (n) can't be converted to int_fblas.chpr() 3rd keyword (lower) can't be converted to int_fblas.chpr() 1st keyword (incx) can't be converted to int_fblas.chpr() 2nd keyword (offx) can't be converted to int_fblas.chpr() 2nd argument (alpha) can't be converted to float_fblas._fblas.chpr: failed to create array from the 4th argument `ap`_fblas.ztrmm() 1st keyword (side) can't be converted to int(side==0 || side==1) failed for 1st keyword side_fblas.ztrmm() 2nd keyword (lower) can't be converted to int(lower==0 || lower==1) failed for 2nd keyword lower_fblas.ztrmm() 3rd keyword (trans_a) can't be converted to int_fblas.ztrmm() 4th keyword (diag) can't be converted to int(diag==0 || diag==1) failed for 4th keyword diag_fblas.ztrmm() 1st argument (alpha) can't be converted to complex_double(k>=(side?n:m) && k<=shape(a, 0)) failed for hidden k_fblas.ztrsm() 1st keyword (side) can't be converted to int_fblas.ztrsm() 2nd keyword (lower) can't be converted to int_fblas.ztrsm() 3rd keyword (trans_a) can't be converted to int_fblas.ztrsm() 4th keyword (diag) can't be converted to int_fblas.ztrsm() 1st argument (alpha) can't be converted to complex_double(shape(a,0)==(side?n:m)) failed for 2nd argument a(shape(a,0)==shape(a,1)) failed for 2nd argument a_fblas.ctrmm() 1st keyword (side) can't be converted to int_fblas.ctrmm() 2nd keyword (lower) can't be converted to int_fblas.ctrmm() 3rd keyword (trans_a) can't be converted to int_fblas.ctrmm() 4th keyword (diag) can't be converted to int_fblas.ctrmm() 1st argument (alpha) can't be converted to complex_float_fblas.ctrsm() 1st keyword (side) can't be converted to int_fblas.ctrsm() 2nd keyword (lower) can't be converted to int_fblas.ctrsm() 3rd keyword (trans_a) can't be converted to int_fblas.ctrsm() 4th keyword (diag) can't be converted to int_fblas.ctrsm() 1st argument (alpha) can't be converted to complex_float_fblas.zgemv() 7th keyword (trans) can't be converted to int_fblas.zgemv() 4th keyword (incx) can't be converted to int_fblas.zgemv() 6th keyword (incy) can't be converted to int_fblas.zgemv() 1st argument (alpha) can't be converted to complex_double_fblas.zgemv() 1st keyword (beta) can't be converted to complex_double_fblas.zgemv() 3rd keyword (offx) can't be converted to int_fblas.zgemv() 5th keyword (offy) can't be converted to int(len(x)>offx+(cols-1)*abs(incx)) failed for 3rd argument x(len(y)>offy+(rows-1)*abs(incy)) failed for 2nd keyword y(offy>=0 && offyoffy+(n-1)*abs(incy)) failed for 2nd keyword y_fblas._fblas.zhemv: failed to create array from the 3rd argument `x`_fblas._fblas.zhemv: failed to create array from the 2nd keyword `y`_fblas.dtrmm() 1st keyword (side) can't be converted to int_fblas.dtrmm() 2nd keyword (lower) can't be converted to int_fblas.dtrmm() 3rd keyword (trans_a) can't be converted to int_fblas.dtrmm() 4th keyword (diag) can't be converted to int_fblas.dtrmm() 1st argument (alpha) can't be converted to double_fblas.dtrsm() 1st keyword (side) can't be converted to int_fblas.dtrsm() 2nd keyword (lower) can't be converted to int_fblas.dtrsm() 3rd keyword (trans_a) can't be converted to int_fblas.dtrsm() 4th keyword (diag) can't be converted to int_fblas.dtrsm() 1st argument (alpha) can't be converted to double_fblas.chemv() 7th keyword (lower) can't be converted to int_fblas.chemv() 4th keyword (incx) can't be converted to int_fblas.chemv() 6th keyword (incy) can't be converted to int_fblas.chemv() 1st argument (alpha) can't be converted to complex_float_fblas.chemv() 1st keyword (beta) can't be converted to complex_float_fblas.chemv() 3rd keyword (offx) can't be converted to int_fblas.chemv() 5th keyword (offy) can't be converted to int_fblas._fblas.chemv: failed to create array from the 3rd argument `x`_fblas._fblas.chemv: failed to create array from the 2nd keyword `y`_fblas.strmm() 1st keyword (side) can't be converted to int_fblas.strmm() 2nd keyword (lower) can't be converted to int_fblas.strmm() 3rd keyword (trans_a) can't be converted to int_fblas.strmm() 4th keyword (diag) can't be converted to int_fblas.strmm() 1st argument (alpha) can't be converted to float_fblas.strsm() 1st keyword (side) can't be converted to int_fblas.strsm() 2nd keyword (lower) can't be converted to int_fblas.strsm() 3rd keyword (trans_a) can't be converted to int_fblas.strsm() 4th keyword (diag) can't be converted to int_fblas.strsm() 1st argument (alpha) can't be converted to float_fblas.dgemv() 7th keyword (trans) can't be converted to int_fblas.dgemv() 4th keyword (incx) can't be converted to int_fblas.dgemv() 6th keyword (incy) can't be converted to int_fblas.dgemv() 1st argument (alpha) can't be converted to double_fblas.dgemv() 1st keyword (beta) can't be converted to double_fblas.dgemv() 3rd keyword (offx) can't be converted to int_fblas.dgemv() 5th keyword (offy) can't be converted to int_fblas._fblas.dgemv: failed to create array from the 3rd argument `x`_fblas._fblas.dgemv: failed to create array from the 2nd keyword `y`_fblas.sgemv() 7th keyword (trans) can't be converted to int_fblas.sgemv() 4th keyword (incx) can't be converted to int_fblas.sgemv() 6th keyword (incy) can't be converted to int_fblas.sgemv() 1st argument (alpha) can't be converted to float_fblas.sgemv() 1st keyword (beta) can't be converted to float_fblas.sgemv() 3rd keyword (offx) can't be converted to int_fblas.sgemv() 5th keyword (offy) can't be converted to int_fblas._fblas.sgemv: failed to create array from the 3rd argument `x`_fblas._fblas.sgemv: failed to create array from the 2nd keyword `y`_fblas.dsymv() 7th keyword (lower) can't be converted to int_fblas.dsymv() 4th keyword (incx) can't be converted to int_fblas.dsymv() 6th keyword (incy) can't be converted to int_fblas.dsymv() 1st argument (alpha) can't be converted to double_fblas.dsymv() 1st keyword (beta) can't be converted to double_fblas.dsymv() 3rd keyword (offx) can't be converted to int_fblas.dsymv() 5th keyword (offy) can't be converted to int_fblas._fblas.dsymv: failed to create array from the 3rd argument `x`_fblas._fblas.dsymv: failed to create array from the 2nd keyword `y`_fblas.ssymv() 7th keyword (lower) can't be converted to int_fblas.ssymv() 4th keyword (incx) can't be converted to int_fblas.ssymv() 6th keyword (incy) can't be converted to int_fblas.ssymv() 1st argument (alpha) can't be converted to float_fblas.ssymv() 1st keyword (beta) can't be converted to float_fblas.ssymv() 3rd keyword (offx) can't be converted to int_fblas.ssymv() 5th keyword (offy) can't be converted to int_fblas._fblas.ssymv: failed to create array from the 3rd argument `x`_fblas._fblas.ssymv: failed to create array from the 2nd keyword `y`_fblas.zhpr2() 1st argument (n) can't be converted to int_fblas.zhpr2() 5th keyword (lower) can't be converted to int(lower == 0 || lower == 1) failed for 5th keyword lower_fblas.zhpr2() 1st keyword (incx) can't be converted to int_fblas.zhpr2() 3rd keyword (incy) can't be converted to int(incy>0||incy<0) failed for 3rd keyword incy_fblas.zhpr2() 2nd keyword (offx) can't be converted to int_fblas.zhpr2() 4th keyword (offy) can't be converted to int_fblas.zhpr2() 2nd argument (alpha) can't be converted to complex_double(len(y)>offy+(n-1)*abs(incy)) failed for 4th argument y(offy>=0 && offy=(n*(n+1)/2)) failed for 5th argument ap_fblas._fblas.zhpr2: failed to create array from the 3rd argument `x`_fblas._fblas.zhpr2: failed to create array from the 4th argument `y`_fblas._fblas.zhpr2: failed to create array from the 5th argument `ap`_fblas.chpr2() 1st argument (n) can't be converted to int_fblas.chpr2() 5th keyword (lower) can't be converted to int_fblas.chpr2() 1st keyword (incx) can't be converted to int_fblas.chpr2() 3rd keyword (incy) can't be converted to int_fblas.chpr2() 2nd keyword (offx) can't be converted to int_fblas.chpr2() 4th keyword (offy) can't be converted to int_fblas.chpr2() 2nd argument (alpha) can't be converted to complex_float_fblas._fblas.chpr2: failed to create array from the 3rd argument `x`_fblas._fblas.chpr2: failed to create array from the 4th argument `y`_fblas._fblas.chpr2: failed to create array from the 5th argument `ap`_fblas.dspr2() 1st argument (n) can't be converted to int_fblas.dspr2() 5th keyword (lower) can't be converted to int_fblas.dspr2() 1st keyword (incx) can't be converted to int_fblas.dspr2() 3rd keyword (incy) can't be converted to int_fblas.dspr2() 2nd keyword (offx) can't be converted to int_fblas.dspr2() 4th keyword (offy) can't be converted to int_fblas.dspr2() 2nd argument (alpha) can't be converted to double_fblas._fblas.dspr2: failed to create array from the 3rd argument `x`_fblas._fblas.dspr2: failed to create array from the 4th argument `y`_fblas._fblas.dspr2: failed to create array from the 5th argument `ap`_fblas.sspr2() 1st argument (n) can't be converted to int_fblas.sspr2() 5th keyword (lower) can't be converted to int_fblas.sspr2() 1st keyword (incx) can't be converted to int_fblas.sspr2() 3rd keyword (incy) can't be converted to int_fblas.sspr2() 2nd keyword (offx) can't be converted to int_fblas.sspr2() 4th keyword (offy) can't be converted to int_fblas.sspr2() 2nd argument (alpha) can't be converted to float_fblas._fblas.sspr2: failed to create array from the 3rd argument `x`_fblas._fblas.sspr2: failed to create array from the 4th argument `y`_fblas._fblas.sspr2: failed to create array from the 5th argument `ap`_fblas.zhpmv() 7th keyword (lower) can't be converted to int_fblas.zhpmv() 1st argument (n) can't be converted to int_fblas.zhpmv() 1st keyword (incx) can't be converted to int_fblas.zhpmv() 5th keyword (incy) can't be converted to int_fblas.zhpmv() 2nd keyword (offx) can't be converted to int_fblas.zhpmv() 6th keyword (offy) can't be converted to int_fblas.zhpmv() 2nd argument (alpha) can't be converted to complex_double_fblas.zhpmv() 3rd keyword (beta) can't be converted to complex_double(len(ap)>=(n*(n+1)/2)) failed for 3rd argument ap(len(y)>offy+(n-1)*abs(incy)) failed for 4th keyword y(len(x)>offx+(n-1)*abs(incx)) failed for 4th argument x(offx>=0 && offx=0) failed for hidden n%s: dtrsv:n=%dOO|OOOOOi:_fblas.ztrsv%s: ztrsv:lower=%d%s: ztrsv:diag=%d%s: ztrsv:incx=%d%s: ztrsv:n=%dOO|OOOOOi:_fblas.ctrsv%s: ctrsv:lower=%d%s: ctrsv:diag=%d%s: ctrsv:incx=%d%s: ctrsv:n=%dOO|OOOOOi:_fblas.strsv%s: strsv:lower=%d%s: strsv:diag=%d%s: strsv:incx=%d%s: strsv:n=%dOOO|OOOOOi:_fblas.ctbsv%s: ctbsv:lower=%d%s: ctbsv:diag=%d%s: ctbsv:incx=%d%s: ctbsv:n=%d%s: ctbsv:k=%dOOO|OOOOOi:_fblas.ztbsv%s: ztbsv:lower=%d%s: ztbsv:diag=%d%s: ztbsv:incx=%d%s: ztbsv:n=%d%s: ztbsv:k=%dOOO|OOOOOi:_fblas.dtbsv%s: dtbsv:lower=%d%s: dtbsv:diag=%d%s: dtbsv:incx=%d%s: dtbsv:n=%d%s: dtbsv:k=%dOOO|OOOOOi:_fblas.stbsv%s: stbsv:lower=%d%s: stbsv:diag=%d%s: stbsv:incx=%d%s: stbsv:n=%d%s: stbsv:k=%dOOO|OOOOOi:_fblas.dtbmv%s: dtbmv:lower=%d%s: dtbmv:diag=%d%s: dtbmv:incx=%d%s: dtbmv:n=%d%s: dtbmv:k=%dOOO|OOOOOi:_fblas.stbmv%s: stbmv:lower=%d%s: stbmv:diag=%d%s: stbmv:incx=%d%s: stbmv:n=%d%s: stbmv:k=%dOOO|OOOOOi:_fblas.ctbmv%s: ctbmv:lower=%d%s: ctbmv:diag=%d%s: ctbmv:incx=%d%s: ctbmv:n=%d%s: ctbmv:k=%dOOO|OOOOOi:_fblas.ztbmv%s: ztbmv:lower=%d%s: ztbmv:diag=%d%s: ztbmv:incx=%d%s: ztbmv:n=%d%s: ztbmv:k=%dOOO|OOOiii:_fblas.sger%s: sger:incx=%d%s: sger:incy=%dOOOO|:_fblas.drotmgOOOO|:_fblas.srotmgOOO|OOOiii:_fblas.zgerc%s: zgerc:incx=%d%s: zgerc:incy=%dOOO|OOOiii:_fblas.zgeru%s: zgeru:incx=%d%s: zgeru:incy=%dOOO|OOOiii:_fblas.dger%s: dger:incx=%d%s: dger:incy=%dOOO|OOOiii:_fblas.cgeru%s: cgeru:incx=%d%s: cgeru:incy=%dOOO|OOOiii:_fblas.cgerc%s: cgerc:incx=%d%s: cgerc:incy=%dOO|OOOOi:_fblas.zherk%s: zherk:lower=%d%s: zherk:trans=%dOO|OOOOi:_fblas.zsyrk%s: zsyrk:lower=%d%s: zsyrk:trans=%dOO|OOOOi:_fblas.cherk%s: cherk:lower=%d%s: cherk:trans=%dOO|OOOOi:_fblas.csyrk%s: csyrk:lower=%d%s: csyrk:trans=%dOOO|OOOOi:_fblas.zgemm%s: zgemm:trans_a=%d%s: zgemm:trans_b=%d%s: zgemm:n=%dOOO|OOOOi:_fblas.cgemm%s: cgemm:trans_a=%d%s: cgemm:trans_b=%d%s: cgemm:n=%dOOO|OOOOi:_fblas.zsyr2k%s: zsyr2k:lower=%d%s: zsyr2k:trans=%d%s: zsyr2k:k=%dOOO|OOOOi:_fblas.zher2k%s: zher2k:lower=%d%s: zher2k:trans=%d%s: zher2k:k=%dOO|OOOOi:_fblas.dsyrk%s: dsyrk:lower=%d%s: dsyrk:trans=%dOOO|OOOOi:_fblas.cher2k%s: cher2k:lower=%d%s: cher2k:trans=%d%s: cher2k:k=%dOOO|OOOOi:_fblas.csyr2k%s: csyr2k:lower=%d%s: csyr2k:trans=%d%s: csyr2k:k=%dOO|OOOOi:_fblas.ssyrk%s: ssyrk:lower=%d%s: ssyrk:trans=%dOOO|OOOOi:_fblas.dgemm%s: dgemm:trans_a=%d%s: dgemm:trans_b=%d%s: dgemm:n=%dOOO|OOOOi:_fblas.sgemm%s: sgemm:trans_a=%d%s: sgemm:trans_b=%d%s: sgemm:n=%dROOO|OOOOi:_fblas.zsymm%s: zsymm:side=%d%s: zsymm:lower=%d%s: zsymm:n=%dOOO|OOOOi:_fblas.zhemm%s: zhemm:side=%d%s: zhemm:lower=%d%s: zhemm:n=%dOOO|OOOOi:_fblas.dsyr2k%s: dsyr2k:lower=%d%s: dsyr2k:trans=%d%s: dsyr2k:k=%dOOO|OOOOi:_fblas.chemm%s: chemm:side=%d%s: chemm:lower=%d%s: chemm:n=%dOOO|OOOOi:_fblas.csymm%s: csymm:side=%d%s: csymm:lower=%d%s: csymm:n=%dOOO|OOOOi:_fblas.ssyr2k%s: ssyr2k:lower=%d%s: ssyr2k:trans=%d%s: ssyr2k:k=%dOOO|OOOOi:_fblas.dsymm%s: dsymm:side=%d%s: dsymm:lower=%d%s: dsymm:n=%dOOO|OOOOi:_fblas.ssymm%s: ssymm:side=%d%s: ssymm:lower=%d%s: ssymm:n=%dOOOO|OOOi:_fblas.zspr%s: zspr:n=%d%s: zspr:lower=%d%s: zspr:incx=%dOOOO|OOOi:_fblas.cspr%s: cspr:n=%d%s: cspr:lower=%d%s: cspr:incx=%dOOOO|OOOi:_fblas.zhpr%s: zhpr:n=%d%s: zhpr:lower=%d%s: zhpr:incx=%dOOOO|OOOi:_fblas.dspr%s: dspr:n=%d%s: dspr:lower=%d%s: dspr:incx=%dOOOO|OOOi:_fblas.sspr%s: sspr:n=%d%s: sspr:lower=%d%s: sspr:incx=%dOOOO|OOOi:_fblas.chpr%s: chpr:n=%d%s: chpr:lower=%d%s: chpr:incx=%dOOO|OOOOi:_fblas.ztrmm%s: ztrmm:side=%d%s: ztrmm:lower=%d%s: ztrmm:trans_a=%d%s: ztrmm:diag=%d%s: ztrmm:k=%dOOO|OOOOi:_fblas.ztrsm%s: ztrsm:side=%d%s: ztrsm:lower=%d%s: ztrsm:trans_a=%d%s: ztrsm:diag=%dOOO|OOOOi:_fblas.ctrmm%s: ctrmm:side=%d%s: ctrmm:lower=%d%s: ctrmm:trans_a=%d%s: ctrmm:diag=%d%s: ctrmm:k=%dOOO|OOOOi:_fblas.ctrsm%s: ctrsm:side=%d%s: ctrsm:lower=%d%s: ctrsm:trans_a=%d%s: ctrsm:diag=%dOOO|OOOOOOOi:_fblas.zgemv%s: zgemv:trans=%d%s: zgemv:incx=%d%s: zgemv:incy=%dOOO|OOOOOOOi:_fblas.cgemv%s: cgemv:trans=%d%s: cgemv:incx=%d%s: cgemv:incy=%dOOO|OOOOOOOi:_fblas.zhemv%s: zhemv:lower=%d%s: zhemv:incx=%d%s: zhemv:incy=%dOOO|OOOOi:_fblas.dtrmm%s: dtrmm:side=%d%s: dtrmm:lower=%d%s: dtrmm:trans_a=%d%s: dtrmm:diag=%d%s: dtrmm:k=%dOOO|OOOOi:_fblas.dtrsm%s: dtrsm:side=%d%s: dtrsm:lower=%d%s: dtrsm:trans_a=%d%s: dtrsm:diag=%dOOO|OOOOOOOi:_fblas.chemv%s: chemv:lower=%d%s: chemv:incx=%d%s: chemv:incy=%dOOO|OOOOi:_fblas.strmm%s: strmm:side=%d%s: strmm:lower=%d%s: strmm:trans_a=%d%s: strmm:diag=%d%s: strmm:k=%dOOO|OOOOi:_fblas.strsm%s: strsm:side=%d%s: strsm:lower=%d%s: strsm:trans_a=%d%s: strsm:diag=%dOOO|OOOOOOOi:_fblas.dgemv%s: dgemv:trans=%d%s: dgemv:incx=%d%s: dgemv:incy=%dOOO|OOOOOOOi:_fblas.sgemv%s: sgemv:trans=%d%s: sgemv:incx=%d%s: sgemv:incy=%dOOO|OOOOOOOi:_fblas.dsymv%s: dsymv:lower=%d%s: dsymv:incx=%d%s: dsymv:incy=%dOOO|OOOOOOOi:_fblas.ssymv%s: ssymv:lower=%d%s: ssymv:incx=%d%s: ssymv:incy=%dOOOOO|OOOOOi:_fblas.zhpr2%s: zhpr2:n=%d%s: zhpr2:lower=%d%s: zhpr2:incx=%d%s: zhpr2:incy=%dOOOOO|OOOOOi:_fblas.chpr2%s: chpr2:n=%d%s: chpr2:lower=%d%s: chpr2:incx=%d%s: chpr2:incy=%dOOOOO|OOOOOi:_fblas.dspr2%s: dspr2:n=%d%s: dspr2:lower=%d%s: dspr2:incx=%d%s: dspr2:incy=%dOOOOO|OOOOOi:_fblas.sspr2%s: sspr2:n=%d%s: sspr2:lower=%d%s: sspr2:incx=%d%s: sspr2:incy=%dOOOO|OOOOOOOi:_fblas.zhpmv%s: zhpmv:lower=%d%s: zhpmv:n=%d%s: zhpmv:incx=%d%s: zhpmv:incy=%dOOOO|OOOOOOOi:_fblas.zspmv%s: zspmv:lower=%d%s: zspmv:n=%d%s: zspmv:incx=%d%s: zspmv:incy=%dOOOO|OOOOOOOi:_fblas.chpmv%s: chpmv:lower=%d%s: chpmv:n=%d%s: chpmv:incx=%d%s: chpmv:incy=%dOOOO|OOOOOOOi:_fblas.cspmv%s: cspmv:lower=%d%s: cspmv:n=%d%s: cspmv:incx=%d%s: cspmv:incy=%dOOOO|OOOOOOOi:_fblas.zhbmv%s: zhbmv:lower=%d%s: zhbmv:incx=%d%s: zhbmv:incy=%d%s: zhbmv:n=%d%s: zhbmv:k=%dOOOO|OOOOOOOi:_fblas.chbmv%s: chbmv:lower=%d%s: chbmv:incx=%d%s: chbmv:incy=%d%s: chbmv:n=%d%s: chbmv:k=%dOOOO|OOOOOOOi:_fblas.dspmv%s: dspmv:lower=%d%s: dspmv:n=%d%s: dspmv:incx=%d%s: dspmv:incy=%dOOOO|OOOOOOOi:_fblas.sspmv%s: sspmv:lower=%d%s: sspmv:n=%d%s: sspmv:incx=%d%s: sspmv:incy=%dOOOO|OOOOOOOi:_fblas.dsbmv%s: dsbmv:lower=%d%s: dsbmv:incx=%d%s: dsbmv:incy=%d%s: dsbmv:n=%d%s: dsbmv:k=%dOOOO|OOOOOOOi:_fblas.ssbmv%s: ssbmv:lower=%d%s: ssbmv:incx=%d%s: ssbmv:incy=%d%s: ssbmv:n=%d%s: ssbmv:k=%dnumpy._core._multiarray_umathnumpy.core._multiarray_umath_ARRAY_API_ARRAY_API is NULL pointer2.3.4__version____doc____f2py_numpy_version___fblas.error__fblas_errord1d2x1y1offxincxoffyincyoverwrite_xoverwrite_yparamalphabetatransklkuloweroverwrite_aoverwrite_apdiagtrans_atrans_boverwrite_csideoverwrite_b_fblas?_fblas._fblas.ztpmv: failed to create array from the 2nd argumen_fblas._fblas.ct_fblas._fblas.dt_fblas._fblas.stpsv: failed to c_fblas._fblas.zswap: failed to c the 1st argumen_fblas._fblas.cs_fblas._fblas.ds_fblas._fblas.ss_fblas._fblas.dnrm2: failed to c_fblas._fblas.scasum: failed to create array from the 1st argume_fblas._fblas.snnrm2: failed to _fblas._fblas.sasum: failed to c_fblas._fblas.dz_fblas._fblas.da_fblas._fblas.isamax: failed to _fblas._fblas.id_fblas._fblas.iz_fblas._fblas.icopy: failed to c_fblas._fblas.dc_fblas._fblas.cc_fblas._fblas.zc_fblas._fblas.ddot: failed to create array from the 1st argumentthe 2nd argument_fblas._fblas.sd_fblas._fblas.zdotc: failed to cotu: failed to c_fblas._fblas.cd_fblas._fblas.drotm: failed to c the 3rd argumen_fblas._fblas.srcal: failed to cscal: failed to m the 2nd argume?_fblas._fblas.zaxpy: failed to c_fblas._fblas.ca_fblas._fblas.zher: failed to cryr: failed to cr_fblas._fblas.cher2: failed to crmv: failed to crot: failed to cyr2: failed to crsv: failed to cbsv: failed to cbmv: failed to c_fblas._fblas.sgthe 3rd argumentthe 3rd keyword otmg: failed to m the hidden `pa_fblas._fblas.zgerc: failed to c the 3rd keyworderu: failed to c_fblas._fblas.dg_fblas._fblas.cgerk: failed to c the 2nd keywordyrk: failed to cemm: failed to cyr2k: failed to m the 3rd argumem the 2nd keyworer2k: failed to ymm: failed to cpr: failed to crrmm: failed to crsm: failed to cemv: failed to cymv: failed to carray(%ld,%ld %ld ], arr.dims=[ ] no function to call__dict__%s - no docs available%s : '%c'-_cpointer__name__Error loading %s function %sscalar %sarray %s%ld, -- input not %d-alignedover-writing fortran routine%d-%s%c%ld-%s-scalar)-%c%ld-%s%s instancefortranf2py:fortranobject.c:get_elsize%d-th dimension must be fixed to %ld but got %ld %d-th dimension must be %ld but got 0 (not defined). unexpected array size: new_size=%ld, got array with arr_size=%ld (maybe too many free indices) -- %d-th dimension must be fixed to %ld but got %ldunexpected array size: new_size=%ld, got array with arr_size=%ld too many axes: %d (effrank=%d), expected rank=%d -- %d-th dimension must be fixed to %ld but got %ld (real index=%d) unexpected array size: size=%ld, arr_size=%ld, rank=%d, effrank=%d, arr.nd=%d, dims=[this fortran object is not callablefortranobject.c: fortran_doc: len(p)=%zd>%zd=size: too long docstring required, increase size F2PySwapThreadLocalCallbackPtr: PyThreadState_GetDict failedF2PySwapThreadLocalCallbackPtr: PyLong_AsVoidPtr failedF2PySwapThreadLocalCallbackPtr: PyLong_FromVoidPtr failedF2PySwapThreadLocalCallbackPtr: PyDict_SetItemString failedF2PyGetThreadLocalCallbackPtr: PyThreadState_GetDict failedF2PyGetThreadLocalCallbackPtr: PyLong_AsVoidPtr failed -- failed to determine element size from %s -- expected elsize=%d got %ld -- expected at least elsize=%d but got %ld -- expected elsize=%d but got %ld -- input '%c' not compatible to '%c'failed to initialize intent(inout|inplace|cache) array, input '%s' object is not an arraydelete non-existing fortran attributef2py_size: 2nd argument value=%ld fails to satisfy 1<=value<=%ld. Result will be 0. F2PyGetThreadLocalCallbackPtrF2PySwapThreadLocalCallbackPtr, not allocatedfailed to initialize intent(cach -- input must be in one segmentlize intent(inou -- input not co -- input not fortran contiguousfailed to create intent(cache|hide)|optional array-- must have defined dimensionlize intent(in) ;D9'`90 9@"9p"9 &D:&:):.;40<:<@x=pF>PL>0Rd?X@]@0cAhAPn(B x CC PDЈDPEЏpE`E0FFFPGPGHpH@HIJPJ@K0K@(LPL`8MpM0hNOpOOP8PPP QRSdS0#Sp',T)`T+T`2 U 9U>PVDVJW`P0X WX]HYcYiZqH[y\\ H]@]`^4_p_``@8a`abXcc@dp8ee fp0ggh`(ii xj4kkk`(l1lm;(nDnMoSLpYp_qeXr@m s us|tduvv wPDx0 y@yzL{p ||}pD~0L܀0l` `ȃt @&̅.`7\?EȈ LtT4@[aPjT@s{܍ЋX@А@@P@ؓ@h4P 0Tpԙ$8X@tК 0@,P@`Tph|̛0 D0X@lP`pМ 4H\p 0@P`ԝp$8L`t Ğ0؞@P`p(<Pdxȟܟ 0@,P@`Tph|̠0 D0X@lP`pС  4H\p 0@P`Ԣp$8L`t ģ0أ@P`p(<PdxȤܤ 0@,P@`Tph|̥0 D0X@lP`pЦ  4H\p 0@P`ԧp$8L`t Ĩ0ب@P`p(<Pdxȩ ܩ 0 @ ,P @` Tp h | ̪   0 D0 X@ lP ` p Ы 4 H \ p 0 @ P ` Ԭp  $ 8 L ` t  ĭ0 ح@ P ` p ( < P d x Ȯ ܮ 0 @ ,P @` Tp h | ̯ 0 D0X@lP`pа  4H\p 0@P`Աp$8L`t IJ0ز@P`p(<Pdxȳܳ 0@,P@`Tph|̴0 D0X@lP`pе  4H\p 0@P`Զp$8L`t ķ0ط@P`p(<Pdxȸܸ 0@,P@`Tph|̹0 D0X@lP`pк  4H\p 0@P`Իp$8L`t ļ0ؼ@P`p(<PdxȽܽ 0@,P@`Tph|̾0 D0X@lP`pп  4H\p 0@P`p$8L`t 0@P`p(<Pdx 0@,P@`Tph|0 D0X@lP`p  4H\p 0@P`p$8L`t  0 @ P ` p ( < P d x !! !0!@!,P!@`!Tp!h!|!!!!!!!""0 "D0"X@"lP"`"p"""""" " "4"H#\#p #0#@#P#`#p####$#8#L#`#t#$$ $0$@$P$`$p$($<$P$d$x$$$$%% %0%@%,P%@`%Tp%h%|%%%%%%%&&0 &D0&X@&lP&`&p&&&&&& & &4&H'\'p '0'@'P'`'p''''$'8'L'`'t'(( (0(@(P(`(p(((<(P(d(x(((()) )0)@),P)@`)Tp)h)|)))))))**0 *D0*X@*lP*`*p****** * *4*H+\+p +0+@+P+`+p++++$+8+L+`+t+,, ,0,@,P,`,p,(,<,P,d,x,,,,-- -0-@-,P-@`-Tp-h-|-------..0 .D0.X@.lP.`.p...... . .4.H/\/p /0/@/P/`/p////$/8/L/`/t/00 000@0P0`0p0(0<0P0d0x000011 101@1,P1@`1Tp1h1|1111111220 2D02X@2lP2`2p222222 2 242H3\3p 303@3P3`3p3333$383L3`3t344 404@4P4`4p4(4<4P4d4x444455 505@5,P5@`5Tp5h5|5555555660 6D06X@6lP6`6p666666 6 646H7\7p 707@7P7`7p7777$787L7`7t788 808@8P8`8p8(8<8P8d8x888899 909@9,P9@`9Tp9h9|9999999::0 :D0:X@:lP:`:p:::::: : :4:H;\;p ;0;@;P;`;p;;;;$;8;L;`;t;<< <0<@<P<`<p<(<<>0 >D0>X@>lP>`>p>>>>>> > >4>H?\?p ?0?@?P?`?p????$?8?L?`?t?@@ @0@@@P@`@p@(@<@P@d@x@@@@AA A0A@A,PA@`ATpAhA|AAAAAAABB0 BD0BX@BlPB`BpBBBBBB B B4BHC\Cp C0C@CPC`CpCCCC$C8CLC`CtCDD D0D@DPD`DpD(D<DPDdDxDDDDEE E0E@E,PE@`ETpEhE|EEEEEEEFF0 FD0FX@FlPF`FpFFFFFF F F4FHG\Gp G0G@GPG`GpGGGG$G8GLG`GtGHH H0H@HPH`HpH(H<HPHdHxHHHHII I0I@I,PI@`ITpIhI|IIIIIIIJJ0 JD0JX@JlPJ`JpJJJJJJ J J4JHK\Kp K0K@KPK`KpKKKK$K8KLK`KtKLL L0L@LPL`LpL(L<LPLdLxLLLLMM M0M@M,PM@`MTpMhM|MMMMMMMNN0 ND0NX@NlPN`NpNNNNNN N N4NHO\Op O0O@OPO`OpOOOO$O8OLO`OtOPP P0P@PPP`PpP(P<PPPdPxPPPPQQ Q0Q@Q,PQ@`QTpQhQ|QQQQQQQRR0 RD0RX@RlPR`RpRRRRRR R R4RHS\Sp S0S@SPS`SpSSSS$S8SLS`StSTT T0T@TPT`TpT(T<TPTdTxTTTTUU U 0U @U, PU@ `UT pUh U| U U U U U U U V V0  VD 0VX @Vl PV `V pV V V V V V V V4 VH W\ Wp  W 0W @W PW `W pW W W W$ W8 WL W` Wt W X X  X 0X @X PX `X pX( X< XP Xd Xx X X X X Y Y  Y0Y@Y,PY@`YTpYhY|YYYYYYYZZ0 ZD0ZX@ZlPZ`ZpZZZZZZ Z Z4ZH[\[p [0[@[P[`[p[[[[$[8[L[`[t[\\ \0\@\P\`\p\(\<\P\d\x\\\\]] ]0]@],P]@`]Tp]h]|]]]]]]]^^0 ^D0^X@^lP^`^p^^^^^^ ^ ^4^H_\_p _0_@_P_`_p____$_8_L_`_t_`` `0`@`P```p`(`<`P`d`x````aa a0a@a,Pa@`aTpaha|aaaaaaabb0 bD0bX@blPb`bpbbbbbb b b4bHc\cp c0c@cPc`cpccd`ePl0lPsPstPt4Puu`vx$ dЊx@Ѝ @( zRx ${jFJ w?;*3$"DDNAD A DAG D GAA CH h%\BBB D(G` (A BBBF y (D BBBE  (G EBBB <wBBD G0B  ABBJ D JBB`@fBBB D(G@ (C BBBJ V (F BBBF H (A EBBF  BOB B(A0K8GIIIIIIX 8A0A(B BBBF hLBfOKBFHAH\BOB B(A0K8GIIIIIIX 8A0A(B BBBF hLBfOKBFHABOB B(A0K8GIIIIIIX 8A0A(B BBBF hLBfOKBFHABOB B(A0K8GIIIIIIX 8A0A(B BBBF hLBfOKBFHA4BOB B(A0K8GIIIIIIX 8A0A(B BBBF hLBfOKBFHALBOB B(A0K8GIIIIIIX 8A0A(B BBBF hLBfOKBFHA| BOB B(A0K8GIIIIIIX 8A0A(B BBBF hLBfOKBFHA BOB B(A0K8GIIIIIIX 8A0A(B BBBF hLBfOKBFHABOB B(K0A8G{FFFFXxRLBNBKA 8A0A(B BBBE LBOB B(K0A8G{FFFFXxRLBNBKA 8A0A(B BBBE "BOB B(K0A8G{FFFFXxRLBNBKA 8A0A(B BBBE \'BOB B(K0A8G{FFFFXxRLBNBKA 8A0A(B BBBE  , BLI B(A0A8QIIIIIIIIIIII[{ 8A0A(B BBBE ]QAaGD ONAFAIFAFDX 5s BLI B(A0A8QIIIIIIIIIIII[{ 8A0A(B BBBE YQAaGD SNBIDIFAFDU\ =qBOK A(GRFRA\cKA (A ABBI \ @BOK A(GRFRBAFKA (A ABBI \l DyBOK A(GRFRA\cKA (A ABBI \ 8GyBOK A(GRFRAoXKA (A ABBA \, XJBOK A(GRFRBvIKA (A ABBA \ MyBOK A(GRFRAoXKA (A ABBA \ PBOK A(GRFRBAFKA (A ABBI \L SBOK A(GRFRBvIKA (A ABBA \ WBOK A(GRFRBAFKA (A ABBI \ XZBOK A(GRFRBAFKA (A ABBI \l]BOK A(GRFRBAFKA (A ABBI \`BOK A(GRFRBAFKA (A ABBI ,dBOB B(K0A8G{FFFFXxRLBNBKA 8A0A(B BBBE @iBOB B(K0A8G{FFFFXxRLBNBKA 8A0A(B BBBE <hnBOB B(K0A8G{FFFFXxRLBNBKA 8A0A(B BBBE sBOB B(K0A8G{FFFFXxRLBNBKA 8A0A(B BBBE LxBOB L(A0A8GIFFFXrWKBLKA 8A0A(B BBBE  ~BOB L(A0A8GIFFFXrWKBLKA 8A0A(B BBBE \ BOB L(A0A8G{FFFFXxRLBNBKA 8A0A(B BBBE  BOB L(A0A8G{FFFFXxRLBNBKA 8A0A(B BBBE lBOB L(A0A8G{FFFFXxRLBNBKA 8A0A(B BBBE  BOB L(A0A8G{FFFFXxRLBNBKA 8A0A(B BBBE |BOB B(K0A8GFIIFFFI[ZxLBRLLBRYNA 8A0A(B BBBG $BOB B(K0A8GFIIFFFI[ZxLBRLLBRYNA 8A0A(B BBBG \إBOA K(GXFFUl (A ABBA hRKA\,hBOA K(GXFFUu (A ABBH hLKA0BNA N  AABF 0BNA Np  AABF \BEH A(G0 (F BBBE t (C BBBC N (A EBBH @TPBBD B GBE J BBJ FBE BLI B(A0A8QIIIIIIIIIIII[{ 8A0A(B BBBE ]QAaGD ONAFAFFAFDX|X BLI B(A0A8QIIIIIIIIIIII[{ 8A0A(B BBBE YQAaGD SNALAIFAFDU\`BOA K(GaFFUs (A ABBA hLKA\4BOA K(G`FFU (A ABBG hLKA` *BOA K(GiFFFUWKA (A ABBI ``3BOA K(GgFFFUTKA (A ABBI 0< BNA N`  AABA 0IBNA N`  AABB P4BOB B(K0A8GFFFFFXxXLBNBKA 8A0A(B BBBG 8BOB B(K0A8GIFFFF[xXLBNBNA 8A0A(B BBBG lhBLI B(A0K8GzFFFFFUx 8A0A(B BBBE MrLBOKB~AMA BLI B(A0K8GzFFFFFUx 8A0A(B BBBE MrLBOKB~AMABLI B(A0K8GwFFFFFUx 8A0A(B BBBH }rLBOKB|AMALBLI B(A0K8GwFFFFFUx 8A0A(B BBBH }rLBOKB|AMA(BOB B(K0A8GIFFFF[xXLBNBNA 8A0A(B BBBG x\BOB B(K0A8GIFFFF[xXLBNBNA 8A0A(B BBBG  BLI B(A0K8GFFFFFUx 8A0A(B BBBG mrLBOKB|AMA BLI B(A0K8GFFFFFUx 8A0A(B BBBH rLBOKB|AMAD!@BLI B(A0K8GIIIIIIII[x 8A0A(B BBBF rKAONAWODIEBGK"pBLI B(A0K8GIIIIIIII[x 8A0A(B BBBA rKAYNAWODFEBGK"BLI B(A0K8GFFFFFU{ 8A0A(B BBBE xLBNBKBBKAd#P#BLI B(A0K8GFFFFFU{ 8A0A(B BBBE xLBNBKBBKA$(BLI B(A0K8GFFFFFU{ 8A0A(B BBBE xLBNBKBBKA$P.BLI B(A0K8GFFFFFU{ 8A0A(B BBBE xLBNBKBBHAD%3BOB B(A0A8QFIIIIFII[ZxLB_{LB 8A0A(B BBBC IUA%:tBOB B(A0A8QFIIIIFII[XsLBHKLB 8A0A(B BBBA IUA&ABOB B(A0A8QFIIIIIII[ZxLB_{OB 8A0A(B BBBE FRAH'HBOB B(A0A8QFIIIIIII[XsLBHKOB 8A0A(B BBBE FRA'PBLI B(A0K8GIIIIIIII[x 8A0A(B BBBE  rKAYNAWODCEBGK(`WLBLI B(A0K8GIIIIIIII[x 8A0A(B BBBF ArKAYNAWODCEBGKt)^$BLI B(A0K8GFFFFFUx 8A0A(B BBBH XLALBBPA*d)BLI B(A0K8GFFFFFUx 8A0A(B BBBH XLALBDMA*j$BLI B(A0K8GFFFFFUx 8A0A(B BBBH XLALBBPAT+o$BLI B(A0K8GFFFFFUx 8A0A(B BBBH XLALBBPA+0uMBLI B(A0K8GIIIIIIXx 8A0A(B BBBB x`LBOKAFBIF,zUBLI B(A0K8GIIIIIIXx 8A0A(B BBBB x`LBOKAFDFFD-MBLI B(A0K8GIIIIIIXx 8A0A(B BBBB x`LBOKAFBIF-8MBLI B(A0K8GIIIIIIXx 8A0A(B BBBB x`LBOKAFBIF.MBLI B(A0K8GIIIIIIXx 8A0A(B BBBB x`LBOKAFBIF!/BLI A(K0GFFFFUx 0A(A BBBC  0C(A BBBG XLBNKAnKSFK?'BLI B(A0K8GIIIII[| 8A0A(B BBBE hKBSBLBLNAHADNFBFAS?.BLI B(A0K8GIIIIIXw 8A0A(B BBBE KBSBLBLKAADKFBFAP@d58BLI B(A0K8GFFFFFUx 8A0A(B BBBF YfDx@LBLNADYFBFNLA;8BLI B(A0K8GFFFFFUx 8A0A(B BBBF YfDx@LBLNADYFBFNBlBBLI B(A0K8GIIIIFUx 8A0A(B BBBH XGKBSJLBIKA2KVFBFKB\IBLI B(A0K8GFFFFFUx 8A0A(B BBBF fDx@LBLNADYFBFNC0PBLI B(A0K8GFFFFFUx 8A0A(B BBBF fDx@LBLNADYFBFN@DWBLI B(A0K8GIIIIIXx 8A0A(B BBBD GKBSJLBIKAKVFBFKE$^}BLI B(A0K8GIIIIFUx 8A0A(B BBBH VfDx@LBLNADVFBFKEdBLI B(A0K8GIIIIIXx 8A0A(B BBBD fDx@LBLNA.DVFBFKxFknBOB B(A0K8G{IFFIFU 8A0A(B BBBK rKAuaNAGpqBOB B(A0K8GzFFFFFU 8A0A(B BBBF (lKAuaKAGusBOB B(A0K8GFFFIFU 8A0A(B BBBJ lKAuaKA(HzsBOB B(A0K8GFFFIFU 8A0A(B BBBJ lKAuaKAHBOB B(A0K8GFFFIFU 8A0A(B BBBF /lKAuaKAHĪBOB B(A0K8GFFFIFU 8A0A(B BBBF /lKAuaKAIPBLI B(A0K8GIIIIIXx 8A0A(B BBBD LBxjKAFBFBIPJBBLI B(A0K8GIIIIIXx 8A0A(B BBBD fLBJKA4FBFBIP0K4ABLI B(A0K8GFFFFFUv 8A0A(B BBBD XLBxjKAFBFBIPKؚ3BLI B(A0K8GFFFFFUv 8A0A(B BBBD fLBJKA*FBFBIPLleBLI B(A0A8QIIIIIIII[{ 8A0A(B BBBE _KAONA]GBJDIFAIPMBLI B(A0A8QIIIIIIII[{ 8A0A(B BBBC `LBULBOFAFBLFBIN:BLI B(A0K8GIIIIIIII[{ 8A0A(B BBBK `LBpOKB]FADIFFN|<BLI B(A0K8GFFFFFUv 8A0A(B BBBC XLBxjKAFBFBFPO2BLI B(A0K8GFFFFFUv 8A0A(B BBBC fLBJKAJFBFBFP0PBLI B(A0K8GIIIIIIII[{ 8A0A(B BBBK `LBvOKB]FADMFIPsBLI B(A0K8GFFFFFUx 8A0A(B BBBA XLBxjKAFBFBFPQXlBLI B(A0K8GFFFFFUx 8A0A(B BBBA fLBJKA^FBFBFPHRBLI B(A0A8QIIIIIIII[{ 8A0A(B BBBK `LBULBOFAFBLFBISBLI B(A0A8QIIIIIIII[{ 8A0A(B BBBE `LBULBOFAFBIFBISuBLI B(A0K8GIIIIIIII[{ 8A0A(B BBBC `LBOKB]FADJFITBLI B(A0K8GIIIIIIII[{ 8A0A(B BBBK `LBOKB]FADJFIXULBOB B(A0K8GIIIIIIII[ 8A0A(B BBBA YLBOOBONBlJPAVpkBOB B(A0K8GIIIIIIII[ 8A0A(B BBBD YLB YOBONBdOPAV$lBOB B(A0K8GIIIIIIII[ 8A0A(B BBBH YLBYOBONBaOPAW BOB B(A0K8GIIIIIIII[ 8A0A(B BBBI YLBDYOBONBaOPAHXBOB B(A0K8GIIIIIIIII[{ 8A0A(B BBBG ZYLDh]OBaONAFBIP YBOB B(A0K8GIIIIIIIII[{ 8A0A(B BBBG ZYLDh]OBaONAFBIPY$xBOB B(A0K8GIIIIIIIII[{ 8A0A(B BBBG YNAg]OBOOBMDIPZ&xBOB B(A0K8GIIIIIIIII[{ 8A0A(B BBBG YNAg]OBOOBMDIPX[.~BLI B(A0A8QIIIIIIIII[{ 8A0A(B BBBD "YNAaGDOOBGAIFDP$\P6BLI B(A0K8GIIIIIIIII[{ 8A0A(B BBBD KYLBaGANNAFBIFDP\>BOB B(A0K8GIIIIIIIII[{ 8A0A(B BBBE WYNAg]OB|OOB|MDIP]EbBOB B(A0K8GIIIIIIIII[{ 8A0A(B BBBE YNAg]OBOLB|MDFPx^MBLI B(A0K8GIIIIIIIII[{ 8A0A(B BBBB  YLBaGANNAFBIFDPD_U BLI B(A0K8GIIIIIIIII[{ 8A0A(B BBBJ LYLBaGANKAFBFFDPh`]@BNB A(A0  (D BBBF  (A IIBE r (D BBBD |`a`a`a`a`a`a`a=AV dAaa#Aa0aa=AV dAPaa#Aalaa4AM dAabAXabababa babbb$bb8baLba`batbababababababacaca(caA` O I<lVBHD D DBH l DBF DHBVGNxLWBEB A(G0u (D BBBH L (D BBBA @WcBz A (\XBAN d DBE TXUBBB B(A0A8G@HEPKHA@ 8D0A(B BBBF lZ BEE E(D0A8J 8D0A(B BBBK aAKA.AKBPfBEB B(A0A8GNNA 8D0A(B BBBK ` 8D0A(B BBBK QMNADjBEE D(C0F@pHKPN0A(A BBBF@ DkH4PkiBBB E(A0D8G 8F0A(B BBBK tmD`J B ^ B Um4D S I Sn,D P D Sn XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX 6pFpVpfpvpppppppppqq&q6qFqVqfqvqqqqqqqqqrr&r6rFrVrfrvrrrrrrrrrss&s6sFsVsfsvssssssssstt&t6tFtVtftvtttttttttuu&u6uFuVufuvuuuuuuuuuvv&v6vFvVvfvvvvvvvvvvvww&w6wFwVwfwvwwwwwwwwwxx&x6xFxVxfxvxxxxxxxxxyy&y6yFyVyfyvyyyyyyyyyzz&z6zFzVzfzvzzzzzzzzz{{&{6{F{V{f{v{{{{{{{{{||&|6|F|V|f|v|||||||||}}&}6}F}V}f}v}}}}}}}}}~~&~6~F~V~f~v~~~~~~~~~&6FVfv&6FVfvƀր&6FVfvƁց&6FVfvƂւ&6FVfvƃփ&6FVfvƄք&6FVfvƅօ&6FVfvƆֆ&6FVfvƇև&6FVfvƈֈ&6FVfvƉ։&6FVfvƊ֊&6FVfvƋ֋&6FVfvƌ֌&6FVfvƍ֍&6FVfvƎ֎&6FVfvƏ֏&6FVfvƐ֐&6FVfvƑ֑&6FVfvƒ֒&6FVfvƓ֓&6FVfvƔ֔&6FVfvƕ֕&6FVfvƖ֖&6FVfvƗ֗&6FVfvƘ֘&6FVfvƙ֙&6FVfvƚ֚&6FVfvƛ֛&6FVfvƜ֜&6FVfvƝ֝&6FVfvƞ֞&6FVfvƟ֟&6FVfvƠ֠&6FVfvơ֡&6FVfvƢ֢&6FVfvƣ֣&6FVfvƤ֤&6FVfvƥ֥&6FVfvƦ֦&6FVfvƧ֧&6FVfvƨ֨&6FVfvƩ֩&6FVfvƪ֪&6FVfvƫ֫&6FVfvƬ֬&6FVfvƭ֭&6FVfvƮ֮&6FVfvƯ֯&6FVfvưְ&6FVfvƱֱ&6FVfvƲֲ&6FVfvƳֳ&6FVfvƴִ&6FVfvƵֵ&6FVfvƶֶ&6FVfvƷַ&6FVfvƸָ&6FVfvƹֹ&6FVfvƺֺ&6FVfvƻֻ&6FVfvƼּ&6FVfvƽֽ&6FVfvƾ־&6FVfvƿֿ&6FVfv&6FVfv&6FVfv&6FVfv&6FVfv&6FVfv&6FVfv&6FVfv&6FVfv&6FVfv&6FVfv&6FVfv&6FVfv&6FVfv&6FVfv&6FVfv&6FVfv&6FVfv&6FVfv&6FVfv&6FVfv&6FVfv&6FVfv&6FVfv&6FVfv&6FVfv&6FVfvx = ztrsm(alpha,a,b,[side,lower,trans_a,diag,overwrite_b]) Wrapper for ``ztrsm``. Parameters ---------- alpha : input complex a : input rank-2 array('D') with bounds (lda,*) b : input rank-2 array('D') with bounds (ldb,n) Other Parameters ---------------- overwrite_b : input int, optional Default: 0 side : input int, optional Default: 0 lower : input int, optional Default: 0 trans_a : input int, optional Default: 0 diag : input int, optional Default: 0 Returns ------- x : rank-2 array('D') with bounds (ldb,n) and b storagex = ctrsm(alpha,a,b,[side,lower,trans_a,diag,overwrite_b]) Wrapper for ``ctrsm``. Parameters ---------- alpha : input complex a : input rank-2 array('F') with bounds (lda,*) b : input rank-2 array('F') with bounds (ldb,n) Other Parameters ---------------- overwrite_b : input int, optional Default: 0 side : input int, optional Default: 0 lower : input int, optional Default: 0 trans_a : input int, optional Default: 0 diag : input int, optional Default: 0 Returns ------- x : rank-2 array('F') with bounds (ldb,n) and b storagex = dtrsm(alpha,a,b,[side,lower,trans_a,diag,overwrite_b]) Wrapper for ``dtrsm``. Parameters ---------- alpha : input float a : input rank-2 array('d') with bounds (lda,*) b : input rank-2 array('d') with bounds (ldb,n) Other Parameters ---------------- overwrite_b : input int, optional Default: 0 side : input int, optional Default: 0 lower : input int, optional Default: 0 trans_a : input int, optional Default: 0 diag : input int, optional Default: 0 Returns ------- x : rank-2 array('d') with bounds (ldb,n) and b storagex = strsm(alpha,a,b,[side,lower,trans_a,diag,overwrite_b]) Wrapper for ``strsm``. Parameters ---------- alpha : input float a : input rank-2 array('f') with bounds (lda,*) b : input rank-2 array('f') with bounds (ldb,n) Other Parameters ---------------- overwrite_b : input int, optional Default: 0 side : input int, optional Default: 0 lower : input int, optional Default: 0 trans_a : input int, optional Default: 0 diag : input int, optional Default: 0 Returns ------- x : rank-2 array('f') with bounds (ldb,n) and b storageb = ztrmm(alpha,a,b,[side,lower,trans_a,diag,overwrite_b]) Wrapper for ``ztrmm``. Parameters ---------- alpha : input complex a : input rank-2 array('D') with bounds (lda,k) b : input rank-2 array('D') with bounds (ldb,n) Other Parameters ---------------- overwrite_b : input int, optional Default: 0 side : input int, optional Default: 0 lower : input int, optional Default: 0 trans_a : input int, optional Default: 0 diag : input int, optional Default: 0 Returns ------- b : rank-2 array('D') with bounds (ldb,n)b = ctrmm(alpha,a,b,[side,lower,trans_a,diag,overwrite_b]) Wrapper for ``ctrmm``. Parameters ---------- alpha : input complex a : input rank-2 array('F') with bounds (lda,k) b : input rank-2 array('F') with bounds (ldb,n) Other Parameters ---------------- overwrite_b : input int, optional Default: 0 side : input int, optional Default: 0 lower : input int, optional Default: 0 trans_a : input int, optional Default: 0 diag : input int, optional Default: 0 Returns ------- b : rank-2 array('F') with bounds (ldb,n)b = dtrmm(alpha,a,b,[side,lower,trans_a,diag,overwrite_b]) Wrapper for ``dtrmm``. Parameters ---------- alpha : input float a : input rank-2 array('d') with bounds (lda,k) b : input rank-2 array('d') with bounds (ldb,n) Other Parameters ---------------- overwrite_b : input int, optional Default: 0 side : input int, optional Default: 0 lower : input int, optional Default: 0 trans_a : input int, optional Default: 0 diag : input int, optional Default: 0 Returns ------- b : rank-2 array('d') with bounds (ldb,n)b = strmm(alpha,a,b,[side,lower,trans_a,diag,overwrite_b]) Wrapper for ``strmm``. Parameters ---------- alpha : input float a : input rank-2 array('f') with bounds (lda,k) b : input rank-2 array('f') with bounds (ldb,n) Other Parameters ---------------- overwrite_b : input int, optional Default: 0 side : input int, optional Default: 0 lower : input int, optional Default: 0 trans_a : input int, optional Default: 0 diag : input int, optional Default: 0 Returns ------- b : rank-2 array('f') with bounds (ldb,n)c = zher2k(alpha,a,b,[beta,c,trans,lower,overwrite_c]) Wrapper for ``zher2k``. Parameters ---------- alpha : input complex a : input rank-2 array('D') with bounds (lda,ka) b : input rank-2 array('D') with bounds (ldb,kb) Other Parameters ---------------- beta : input complex, optional Default: (0.0, 0.0) c : input rank-2 array('D') with bounds (n,n) overwrite_c : input int, optional Default: 0 trans : input int, optional Default: 0 lower : input int, optional Default: 0 Returns ------- c : rank-2 array('D') with bounds (n,n)c = cher2k(alpha,a,b,[beta,c,trans,lower,overwrite_c]) Wrapper for ``cher2k``. Parameters ---------- alpha : input complex a : input rank-2 array('F') with bounds (lda,ka) b : input rank-2 array('F') with bounds (ldb,kb) Other Parameters ---------------- beta : input complex, optional Default: (0.0, 0.0) c : input rank-2 array('F') with bounds (n,n) overwrite_c : input int, optional Default: 0 trans : input int, optional Default: 0 lower : input int, optional Default: 0 Returns ------- c : rank-2 array('F') with bounds (n,n)c = zsyr2k(alpha,a,b,[beta,c,trans,lower,overwrite_c]) Wrapper for ``zsyr2k``. Parameters ---------- alpha : input complex a : input rank-2 array('D') with bounds (lda,ka) b : input rank-2 array('D') with bounds (ldb,kb) Other Parameters ---------------- beta : input complex, optional Default: (0.0, 0.0) c : input rank-2 array('D') with bounds (n,n) overwrite_c : input int, optional Default: 0 trans : input int, optional Default: 0 lower : input int, optional Default: 0 Returns ------- c : rank-2 array('D') with bounds (n,n)c = csyr2k(alpha,a,b,[beta,c,trans,lower,overwrite_c]) Wrapper for ``csyr2k``. Parameters ---------- alpha : input complex a : input rank-2 array('F') with bounds (lda,ka) b : input rank-2 array('F') with bounds (ldb,kb) Other Parameters ---------------- beta : input complex, optional Default: (0.0, 0.0) c : input rank-2 array('F') with bounds (n,n) overwrite_c : input int, optional Default: 0 trans : input int, optional Default: 0 lower : input int, optional Default: 0 Returns ------- c : rank-2 array('F') with bounds (n,n)c = dsyr2k(alpha,a,b,[beta,c,trans,lower,overwrite_c]) Wrapper for ``dsyr2k``. Parameters ---------- alpha : input float a : input rank-2 array('d') with bounds (lda,ka) b : input rank-2 array('d') with bounds (ldb,kb) Other Parameters ---------------- beta : input float, optional Default: 0.0 c : input rank-2 array('d') with bounds (n,n) overwrite_c : input int, optional Default: 0 trans : input int, optional Default: 0 lower : input int, optional Default: 0 Returns ------- c : rank-2 array('d') with bounds (n,n)c = ssyr2k(alpha,a,b,[beta,c,trans,lower,overwrite_c]) Wrapper for ``ssyr2k``. Parameters ---------- alpha : input float a : input rank-2 array('f') with bounds (lda,ka) b : input rank-2 array('f') with bounds (ldb,kb) Other Parameters ---------------- beta : input float, optional Default: 0.0 c : input rank-2 array('f') with bounds (n,n) overwrite_c : input int, optional Default: 0 trans : input int, optional Default: 0 lower : input int, optional Default: 0 Returns ------- c : rank-2 array('f') with bounds (n,n)c = zherk(alpha,a,[beta,c,trans,lower,overwrite_c]) Wrapper for ``zherk``. Parameters ---------- alpha : input complex a : input rank-2 array('D') with bounds (lda,ka) Other Parameters ---------------- beta : input complex, optional Default: (0.0, 0.0) c : input rank-2 array('D') with bounds (n,n) overwrite_c : input int, optional Default: 0 trans : input int, optional Default: 0 lower : input int, optional Default: 0 Returns ------- c : rank-2 array('D') with bounds (n,n)c = cherk(alpha,a,[beta,c,trans,lower,overwrite_c]) Wrapper for ``cherk``. Parameters ---------- alpha : input complex a : input rank-2 array('F') with bounds (lda,ka) Other Parameters ---------------- beta : input complex, optional Default: (0.0, 0.0) c : input rank-2 array('F') with bounds (n,n) overwrite_c : input int, optional Default: 0 trans : input int, optional Default: 0 lower : input int, optional Default: 0 Returns ------- c : rank-2 array('F') with bounds (n,n)c = zsyrk(alpha,a,[beta,c,trans,lower,overwrite_c]) Wrapper for ``zsyrk``. Parameters ---------- alpha : input complex a : input rank-2 array('D') with bounds (lda,ka) Other Parameters ---------------- beta : input complex, optional Default: (0.0, 0.0) c : input rank-2 array('D') with bounds (n,n) overwrite_c : input int, optional Default: 0 trans : input int, optional Default: 0 lower : input int, optional Default: 0 Returns ------- c : rank-2 array('D') with bounds (n,n)c = csyrk(alpha,a,[beta,c,trans,lower,overwrite_c]) Wrapper for ``csyrk``. Parameters ---------- alpha : input complex a : input rank-2 array('F') with bounds (lda,ka) Other Parameters ---------------- beta : input complex, optional Default: (0.0, 0.0) c : input rank-2 array('F') with bounds (n,n) overwrite_c : input int, optional Default: 0 trans : input int, optional Default: 0 lower : input int, optional Default: 0 Returns ------- c : rank-2 array('F') with bounds (n,n)c = dsyrk(alpha,a,[beta,c,trans,lower,overwrite_c]) Wrapper for ``dsyrk``. Parameters ---------- alpha : input float a : input rank-2 array('d') with bounds (lda,ka) Other Parameters ---------------- beta : input float, optional Default: 0.0 c : input rank-2 array('d') with bounds (n,n) overwrite_c : input int, optional Default: 0 trans : input int, optional Default: 0 lower : input int, optional Default: 0 Returns ------- c : rank-2 array('d') with bounds (n,n)c = ssyrk(alpha,a,[beta,c,trans,lower,overwrite_c]) Wrapper for ``ssyrk``. Parameters ---------- alpha : input float a : input rank-2 array('f') with bounds (lda,ka) Other Parameters ---------------- beta : input float, optional Default: 0.0 c : input rank-2 array('f') with bounds (n,n) overwrite_c : input int, optional Default: 0 trans : input int, optional Default: 0 lower : input int, optional Default: 0 Returns ------- c : rank-2 array('f') with bounds (n,n)c = zhemm(alpha,a,b,[beta,c,side,lower,overwrite_c]) Wrapper for ``zhemm``. Parameters ---------- alpha : input complex a : input rank-2 array('D') with bounds (lda,ka) b : input rank-2 array('D') with bounds (ldb,kb) Other Parameters ---------------- beta : input complex, optional Default: (0.0, 0.0) c : input rank-2 array('D') with bounds (m,n) overwrite_c : input int, optional Default: 0 side : input int, optional Default: 0 lower : input int, optional Default: 0 Returns ------- c : rank-2 array('D') with bounds (m,n)c = chemm(alpha,a,b,[beta,c,side,lower,overwrite_c]) Wrapper for ``chemm``. Parameters ---------- alpha : input complex a : input rank-2 array('F') with bounds (lda,ka) b : input rank-2 array('F') with bounds (ldb,kb) Other Parameters ---------------- beta : input complex, optional Default: (0.0, 0.0) c : input rank-2 array('F') with bounds (m,n) overwrite_c : input int, optional Default: 0 side : input int, optional Default: 0 lower : input int, optional Default: 0 Returns ------- c : rank-2 array('F') with bounds (m,n)c = zsymm(alpha,a,b,[beta,c,side,lower,overwrite_c]) Wrapper for ``zsymm``. Parameters ---------- alpha : input complex a : input rank-2 array('D') with bounds (lda,ka) b : input rank-2 array('D') with bounds (ldb,kb) Other Parameters ---------------- beta : input complex, optional Default: (0.0, 0.0) c : input rank-2 array('D') with bounds (m,n) overwrite_c : input int, optional Default: 0 side : input int, optional Default: 0 lower : input int, optional Default: 0 Returns ------- c : rank-2 array('D') with bounds (m,n)c = csymm(alpha,a,b,[beta,c,side,lower,overwrite_c]) Wrapper for ``csymm``. Parameters ---------- alpha : input complex a : input rank-2 array('F') with bounds (lda,ka) b : input rank-2 array('F') with bounds (ldb,kb) Other Parameters ---------------- beta : input complex, optional Default: (0.0, 0.0) c : input rank-2 array('F') with bounds (m,n) overwrite_c : input int, optional Default: 0 side : input int, optional Default: 0 lower : input int, optional Default: 0 Returns ------- c : rank-2 array('F') with bounds (m,n)c = dsymm(alpha,a,b,[beta,c,side,lower,overwrite_c]) Wrapper for ``dsymm``. Parameters ---------- alpha : input float a : input rank-2 array('d') with bounds (lda,ka) b : input rank-2 array('d') with bounds (ldb,kb) Other Parameters ---------------- beta : input float, optional Default: 0.0 c : input rank-2 array('d') with bounds (m,n) overwrite_c : input int, optional Default: 0 side : input int, optional Default: 0 lower : input int, optional Default: 0 Returns ------- c : rank-2 array('d') with bounds (m,n)c = ssymm(alpha,a,b,[beta,c,side,lower,overwrite_c]) Wrapper for ``ssymm``. Parameters ---------- alpha : input float a : input rank-2 array('f') with bounds (lda,ka) b : input rank-2 array('f') with bounds (ldb,kb) Other Parameters ---------------- beta : input float, optional Default: 0.0 c : input rank-2 array('f') with bounds (m,n) overwrite_c : input int, optional Default: 0 side : input int, optional Default: 0 lower : input int, optional Default: 0 Returns ------- c : rank-2 array('f') with bounds (m,n)c = zgemm(alpha,a,b,[beta,c,trans_a,trans_b,overwrite_c]) Wrapper for ``zgemm``. Parameters ---------- alpha : input complex a : input rank-2 array('D') with bounds (lda,ka) b : input rank-2 array('D') with bounds (ldb,kb) Other Parameters ---------------- beta : input complex, optional Default: (0.0, 0.0) c : input rank-2 array('D') with bounds (m,n) overwrite_c : input int, optional Default: 0 trans_a : input int, optional Default: 0 trans_b : input int, optional Default: 0 Returns ------- c : rank-2 array('D') with bounds (m,n)c = cgemm(alpha,a,b,[beta,c,trans_a,trans_b,overwrite_c]) Wrapper for ``cgemm``. Parameters ---------- alpha : input complex a : input rank-2 array('F') with bounds (lda,ka) b : input rank-2 array('F') with bounds (ldb,kb) Other Parameters ---------------- beta : input complex, optional Default: (0.0, 0.0) c : input rank-2 array('F') with bounds (m,n) overwrite_c : input int, optional Default: 0 trans_a : input int, optional Default: 0 trans_b : input int, optional Default: 0 Returns ------- c : rank-2 array('F') with bounds (m,n)c = dgemm(alpha,a,b,[beta,c,trans_a,trans_b,overwrite_c]) Wrapper for ``dgemm``. Parameters ---------- alpha : input float a : input rank-2 array('d') with bounds (lda,ka) b : input rank-2 array('d') with bounds (ldb,kb) Other Parameters ---------------- beta : input float, optional Default: 0.0 c : input rank-2 array('d') with bounds (m,n) overwrite_c : input int, optional Default: 0 trans_a : input int, optional Default: 0 trans_b : input int, optional Default: 0 Returns ------- c : rank-2 array('d') with bounds (m,n)c = sgemm(alpha,a,b,[beta,c,trans_a,trans_b,overwrite_c]) Wrapper for ``sgemm``. Parameters ---------- alpha : input float a : input rank-2 array('f') with bounds (lda,ka) b : input rank-2 array('f') with bounds (ldb,kb) Other Parameters ---------------- beta : input float, optional Default: 0.0 c : input rank-2 array('f') with bounds (m,n) overwrite_c : input int, optional Default: 0 trans_a : input int, optional Default: 0 trans_b : input int, optional Default: 0 Returns ------- c : rank-2 array('f') with bounds (m,n)xout = ztpmv(n,ap,x,[incx,offx,lower,trans,diag,overwrite_x]) Wrapper for ``ztpmv``. Parameters ---------- n : input int ap : input rank-1 array('D') with bounds (*) x : input rank-1 array('D') with bounds (*) Other Parameters ---------------- overwrite_x : input int, optional Default: 0 incx : input int, optional Default: 1 offx : input int, optional Default: 0 lower : input int, optional Default: 0 trans : input int, optional Default: 0 diag : input int, optional Default: 0 Returns ------- xout : rank-1 array('D') with bounds (*) and x storagexout = ctpmv(n,ap,x,[incx,offx,lower,trans,diag,overwrite_x]) Wrapper for ``ctpmv``. Parameters ---------- n : input int ap : input rank-1 array('F') with bounds (*) x : input rank-1 array('F') with bounds (*) Other Parameters ---------------- overwrite_x : input int, optional Default: 0 incx : input int, optional Default: 1 offx : input int, optional Default: 0 lower : input int, optional Default: 0 trans : input int, optional Default: 0 diag : input int, optional Default: 0 Returns ------- xout : rank-1 array('F') with bounds (*) and x storagexout = dtpmv(n,ap,x,[incx,offx,lower,trans,diag,overwrite_x]) Wrapper for ``dtpmv``. Parameters ---------- n : input int ap : input rank-1 array('d') with bounds (*) x : input rank-1 array('d') with bounds (*) Other Parameters ---------------- overwrite_x : input int, optional Default: 0 incx : input int, optional Default: 1 offx : input int, optional Default: 0 lower : input int, optional Default: 0 trans : input int, optional Default: 0 diag : input int, optional Default: 0 Returns ------- xout : rank-1 array('d') with bounds (*) and x storagexout = stpmv(n,ap,x,[incx,offx,lower,trans,diag,overwrite_x]) Wrapper for ``stpmv``. Parameters ---------- n : input int ap : input rank-1 array('f') with bounds (*) x : input rank-1 array('f') with bounds (*) Other Parameters ---------------- overwrite_x : input int, optional Default: 0 incx : input int, optional Default: 1 offx : input int, optional Default: 0 lower : input int, optional Default: 0 trans : input int, optional Default: 0 diag : input int, optional Default: 0 Returns ------- xout : rank-1 array('f') with bounds (*) and x storagexout = ztbmv(k,a,x,[incx,offx,lower,trans,diag,overwrite_x]) Wrapper for ``ztbmv``. Parameters ---------- k : input int a : input rank-2 array('D') with bounds (lda,n) x : input rank-1 array('D') with bounds (*) Other Parameters ---------------- overwrite_x : input int, optional Default: 0 incx : input int, optional Default: 1 offx : input int, optional Default: 0 lower : input int, optional Default: 0 trans : input int, optional Default: 0 diag : input int, optional Default: 0 Returns ------- xout : rank-1 array('D') with bounds (*) and x storagexout = ctbmv(k,a,x,[incx,offx,lower,trans,diag,overwrite_x]) Wrapper for ``ctbmv``. Parameters ---------- k : input int a : input rank-2 array('F') with bounds (lda,n) x : input rank-1 array('F') with bounds (*) Other Parameters ---------------- overwrite_x : input int, optional Default: 0 incx : input int, optional Default: 1 offx : input int, optional Default: 0 lower : input int, optional Default: 0 trans : input int, optional Default: 0 diag : input int, optional Default: 0 Returns ------- xout : rank-1 array('F') with bounds (*) and x storagexout = dtbmv(k,a,x,[incx,offx,lower,trans,diag,overwrite_x]) Wrapper for ``dtbmv``. Parameters ---------- k : input int a : input rank-2 array('d') with bounds (lda,n) x : input rank-1 array('d') with bounds (*) Other Parameters ---------------- overwrite_x : input int, optional Default: 0 incx : input int, optional Default: 1 offx : input int, optional Default: 0 lower : input int, optional Default: 0 trans : input int, optional Default: 0 diag : input int, optional Default: 0 Returns ------- xout : rank-1 array('d') with bounds (*) and x storagexout = stbmv(k,a,x,[incx,offx,lower,trans,diag,overwrite_x]) Wrapper for ``stbmv``. Parameters ---------- k : input int a : input rank-2 array('f') with bounds (lda,n) x : input rank-1 array('f') with bounds (*) Other Parameters ---------------- overwrite_x : input int, optional Default: 0 incx : input int, optional Default: 1 offx : input int, optional Default: 0 lower : input int, optional Default: 0 trans : input int, optional Default: 0 diag : input int, optional Default: 0 Returns ------- xout : rank-1 array('f') with bounds (*) and x storagexout = ztrsv(a,x,[incx,offx,lower,trans,diag,overwrite_x]) Wrapper for ``ztrsv``. Parameters ---------- a : input rank-2 array('D') with bounds (n,n) x : input rank-1 array('D') with bounds (*) Other Parameters ---------------- overwrite_x : input int, optional Default: 0 incx : input int, optional Default: 1 offx : input int, optional Default: 0 lower : input int, optional Default: 0 trans : input int, optional Default: 0 diag : input int, optional Default: 0 Returns ------- xout : rank-1 array('D') with bounds (*) and x storagexout = ctrsv(a,x,[incx,offx,lower,trans,diag,overwrite_x]) Wrapper for ``ctrsv``. Parameters ---------- a : input rank-2 array('F') with bounds (n,n) x : input rank-1 array('F') with bounds (*) Other Parameters ---------------- overwrite_x : input int, optional Default: 0 incx : input int, optional Default: 1 offx : input int, optional Default: 0 lower : input int, optional Default: 0 trans : input int, optional Default: 0 diag : input int, optional Default: 0 Returns ------- xout : rank-1 array('F') with bounds (*) and x storagexout = dtrsv(a,x,[incx,offx,lower,trans,diag,overwrite_x]) Wrapper for ``dtrsv``. Parameters ---------- a : input rank-2 array('d') with bounds (n,n) x : input rank-1 array('d') with bounds (*) Other Parameters ---------------- overwrite_x : input int, optional Default: 0 incx : input int, optional Default: 1 offx : input int, optional Default: 0 lower : input int, optional Default: 0 trans : input int, optional Default: 0 diag : input int, optional Default: 0 Returns ------- xout : rank-1 array('d') with bounds (*) and x storagexout = strsv(a,x,[incx,offx,lower,trans,diag,overwrite_x]) Wrapper for ``strsv``. Parameters ---------- a : input rank-2 array('f') with bounds (n,n) x : input rank-1 array('f') with bounds (*) Other Parameters ---------------- overwrite_x : input int, optional Default: 0 incx : input int, optional Default: 1 offx : input int, optional Default: 0 lower : input int, optional Default: 0 trans : input int, optional Default: 0 diag : input int, optional Default: 0 Returns ------- xout : rank-1 array('f') with bounds (*) and x storagex = ztrmv(a,x,[offx,incx,lower,trans,diag,overwrite_x]) Wrapper for ``ztrmv``. Parameters ---------- a : input rank-2 array('D') with bounds (n,n) x : input rank-1 array('D') with bounds (*) Other Parameters ---------------- overwrite_x : input int, optional Default: 0 offx : input int, optional Default: 0 incx : input int, optional Default: 1 lower : input int, optional Default: 0 trans : input int, optional Default: 0 diag : input int, optional Default: 0 Returns ------- x : rank-1 array('D') with bounds (*)x = ctrmv(a,x,[offx,incx,lower,trans,diag,overwrite_x]) Wrapper for ``ctrmv``. Parameters ---------- a : input rank-2 array('F') with bounds (n,n) x : input rank-1 array('F') with bounds (*) Other Parameters ---------------- overwrite_x : input int, optional Default: 0 offx : input int, optional Default: 0 incx : input int, optional Default: 1 lower : input int, optional Default: 0 trans : input int, optional Default: 0 diag : input int, optional Default: 0 Returns ------- x : rank-1 array('F') with bounds (*)x = dtrmv(a,x,[offx,incx,lower,trans,diag,overwrite_x]) Wrapper for ``dtrmv``. Parameters ---------- a : input rank-2 array('d') with bounds (n,n) x : input rank-1 array('d') with bounds (*) Other Parameters ---------------- overwrite_x : input int, optional Default: 0 offx : input int, optional Default: 0 incx : input int, optional Default: 1 lower : input int, optional Default: 0 trans : input int, optional Default: 0 diag : input int, optional Default: 0 Returns ------- x : rank-1 array('d') with bounds (*)x = strmv(a,x,[offx,incx,lower,trans,diag,overwrite_x]) Wrapper for ``strmv``. Parameters ---------- a : input rank-2 array('f') with bounds (n,n) x : input rank-1 array('f') with bounds (*) Other Parameters ---------------- overwrite_x : input int, optional Default: 0 offx : input int, optional Default: 0 incx : input int, optional Default: 1 lower : input int, optional Default: 0 trans : input int, optional Default: 0 diag : input int, optional Default: 0 Returns ------- x : rank-1 array('f') with bounds (*)xout = ztpsv(n,ap,x,[incx,offx,lower,trans,diag,overwrite_x]) Wrapper for ``ztpsv``. Parameters ---------- n : input int ap : input rank-1 array('D') with bounds (*) x : input rank-1 array('D') with bounds (*) Other Parameters ---------------- overwrite_x : input int, optional Default: 0 incx : input int, optional Default: 1 offx : input int, optional Default: 0 lower : input int, optional Default: 0 trans : input int, optional Default: 0 diag : input int, optional Default: 0 Returns ------- xout : rank-1 array('D') with bounds (*) and x storagexout = ctpsv(n,ap,x,[incx,offx,lower,trans,diag,overwrite_x]) Wrapper for ``ctpsv``. Parameters ---------- n : input int ap : input rank-1 array('F') with bounds (*) x : input rank-1 array('F') with bounds (*) Other Parameters ---------------- overwrite_x : input int, optional Default: 0 incx : input int, optional Default: 1 offx : input int, optional Default: 0 lower : input int, optional Default: 0 trans : input int, optional Default: 0 diag : input int, optional Default: 0 Returns ------- xout : rank-1 array('F') with bounds (*) and x storagexout = dtpsv(n,ap,x,[incx,offx,lower,trans,diag,overwrite_x]) Wrapper for ``dtpsv``. Parameters ---------- n : input int ap : input rank-1 array('d') with bounds (*) x : input rank-1 array('d') with bounds (*) Other Parameters ---------------- overwrite_x : input int, optional Default: 0 incx : input int, optional Default: 1 offx : input int, optional Default: 0 lower : input int, optional Default: 0 trans : input int, optional Default: 0 diag : input int, optional Default: 0 Returns ------- xout : rank-1 array('d') with bounds (*) and x storagexout = stpsv(n,ap,x,[incx,offx,lower,trans,diag,overwrite_x]) Wrapper for ``stpsv``. Parameters ---------- n : input int ap : input rank-1 array('f') with bounds (*) x : input rank-1 array('f') with bounds (*) Other Parameters ---------------- overwrite_x : input int, optional Default: 0 incx : input int, optional Default: 1 offx : input int, optional Default: 0 lower : input int, optional Default: 0 trans : input int, optional Default: 0 diag : input int, optional Default: 0 Returns ------- xout : rank-1 array('f') with bounds (*) and x storagexout = ztbsv(k,a,x,[incx,offx,lower,trans,diag,overwrite_x]) Wrapper for ``ztbsv``. Parameters ---------- k : input int a : input rank-2 array('D') with bounds (lda,n) x : input rank-1 array('D') with bounds (*) Other Parameters ---------------- overwrite_x : input int, optional Default: 0 incx : input int, optional Default: 1 offx : input int, optional Default: 0 lower : input int, optional Default: 0 trans : input int, optional Default: 0 diag : input int, optional Default: 0 Returns ------- xout : rank-1 array('D') with bounds (*) and x storagexout = ctbsv(k,a,x,[incx,offx,lower,trans,diag,overwrite_x]) Wrapper for ``ctbsv``. Parameters ---------- k : input int a : input rank-2 array('F') with bounds (lda,n) x : input rank-1 array('F') with bounds (*) Other Parameters ---------------- overwrite_x : input int, optional Default: 0 incx : input int, optional Default: 1 offx : input int, optional Default: 0 lower : input int, optional Default: 0 trans : input int, optional Default: 0 diag : input int, optional Default: 0 Returns ------- xout : rank-1 array('F') with bounds (*) and x storagexout = dtbsv(k,a,x,[incx,offx,lower,trans,diag,overwrite_x]) Wrapper for ``dtbsv``. Parameters ---------- k : input int a : input rank-2 array('d') with bounds (lda,n) x : input rank-1 array('d') with bounds (*) Other Parameters ---------------- overwrite_x : input int, optional Default: 0 incx : input int, optional Default: 1 offx : input int, optional Default: 0 lower : input int, optional Default: 0 trans : input int, optional Default: 0 diag : input int, optional Default: 0 Returns ------- xout : rank-1 array('d') with bounds (*) and x storagexout = stbsv(k,a,x,[incx,offx,lower,trans,diag,overwrite_x]) Wrapper for ``stbsv``. Parameters ---------- k : input int a : input rank-2 array('f') with bounds (lda,n) x : input rank-1 array('f') with bounds (*) Other Parameters ---------------- overwrite_x : input int, optional Default: 0 incx : input int, optional Default: 1 offx : input int, optional Default: 0 lower : input int, optional Default: 0 trans : input int, optional Default: 0 diag : input int, optional Default: 0 Returns ------- xout : rank-1 array('f') with bounds (*) and x storageapu = zhpr2(n,alpha,x,y,ap,[incx,offx,incy,offy,lower,overwrite_ap]) Wrapper for ``zhpr2``. Parameters ---------- n : input int alpha : input complex x : input rank-1 array('D') with bounds (*) y : input rank-1 array('D') with bounds (*) ap : input rank-1 array('D') with bounds (*) Other Parameters ---------------- incx : input int, optional Default: 1 offx : input int, optional Default: 0 incy : input int, optional Default: 1 offy : input int, optional Default: 0 overwrite_ap : input int, optional Default: 0 lower : input int, optional Default: 0 Returns ------- apu : rank-1 array('D') with bounds (*) and ap storageapu = chpr2(n,alpha,x,y,ap,[incx,offx,incy,offy,lower,overwrite_ap]) Wrapper for ``chpr2``. Parameters ---------- n : input int alpha : input complex x : input rank-1 array('F') with bounds (*) y : input rank-1 array('F') with bounds (*) ap : input rank-1 array('F') with bounds (*) Other Parameters ---------------- incx : input int, optional Default: 1 offx : input int, optional Default: 0 incy : input int, optional Default: 1 offy : input int, optional Default: 0 overwrite_ap : input int, optional Default: 0 lower : input int, optional Default: 0 Returns ------- apu : rank-1 array('F') with bounds (*) and ap storageapu = dspr2(n,alpha,x,y,ap,[incx,offx,incy,offy,lower,overwrite_ap]) Wrapper for ``dspr2``. Parameters ---------- n : input int alpha : input float x : input rank-1 array('d') with bounds (*) y : input rank-1 array('d') with bounds (*) ap : input rank-1 array('d') with bounds (*) Other Parameters ---------------- incx : input int, optional Default: 1 offx : input int, optional Default: 0 incy : input int, optional Default: 1 offy : input int, optional Default: 0 overwrite_ap : input int, optional Default: 0 lower : input int, optional Default: 0 Returns ------- apu : rank-1 array('d') with bounds (*) and ap storageapu = sspr2(n,alpha,x,y,ap,[incx,offx,incy,offy,lower,overwrite_ap]) Wrapper for ``sspr2``. Parameters ---------- n : input int alpha : input float x : input rank-1 array('f') with bounds (*) y : input rank-1 array('f') with bounds (*) ap : input rank-1 array('f') with bounds (*) Other Parameters ---------------- incx : input int, optional Default: 1 offx : input int, optional Default: 0 incy : input int, optional Default: 1 offy : input int, optional Default: 0 overwrite_ap : input int, optional Default: 0 lower : input int, optional Default: 0 Returns ------- apu : rank-1 array('f') with bounds (*) and ap storageapu = zhpr(n,alpha,x,ap,[incx,offx,lower,overwrite_ap]) Wrapper for ``zhpr``. Parameters ---------- n : input int alpha : input float x : input rank-1 array('D') with bounds (*) ap : input rank-1 array('D') with bounds (*) Other Parameters ---------------- incx : input int, optional Default: 1 offx : input int, optional Default: 0 overwrite_ap : input int, optional Default: 0 lower : input int, optional Default: 0 Returns ------- apu : rank-1 array('D') with bounds (*) and ap storageapu = chpr(n,alpha,x,ap,[incx,offx,lower,overwrite_ap]) Wrapper for ``chpr``. Parameters ---------- n : input int alpha : input float x : input rank-1 array('F') with bounds (*) ap : input rank-1 array('F') with bounds (*) Other Parameters ---------------- incx : input int, optional Default: 1 offx : input int, optional Default: 0 overwrite_ap : input int, optional Default: 0 lower : input int, optional Default: 0 Returns ------- apu : rank-1 array('F') with bounds (*) and ap storageapu = zspr(n,alpha,x,ap,[incx,offx,lower,overwrite_ap]) Wrapper for ``zspr``. Parameters ---------- n : input int alpha : input complex x : input rank-1 array('D') with bounds (*) ap : input rank-1 array('D') with bounds (*) Other Parameters ---------------- incx : input int, optional Default: 1 offx : input int, optional Default: 0 overwrite_ap : input int, optional Default: 0 lower : input int, optional Default: 0 Returns ------- apu : rank-1 array('D') with bounds (*) and ap storageapu = cspr(n,alpha,x,ap,[incx,offx,lower,overwrite_ap]) Wrapper for ``cspr``. Parameters ---------- n : input int alpha : input complex x : input rank-1 array('F') with bounds (*) ap : input rank-1 array('F') with bounds (*) Other Parameters ---------------- incx : input int, optional Default: 1 offx : input int, optional Default: 0 overwrite_ap : input int, optional Default: 0 lower : input int, optional Default: 0 Returns ------- apu : rank-1 array('F') with bounds (*) and ap storageapu = dspr(n,alpha,x,ap,[incx,offx,lower,overwrite_ap]) Wrapper for ``dspr``. Parameters ---------- n : input int alpha : input float x : input rank-1 array('d') with bounds (*) ap : input rank-1 array('d') with bounds (*) Other Parameters ---------------- incx : input int, optional Default: 1 offx : input int, optional Default: 0 overwrite_ap : input int, optional Default: 0 lower : input int, optional Default: 0 Returns ------- apu : rank-1 array('d') with bounds (*) and ap storageapu = sspr(n,alpha,x,ap,[incx,offx,lower,overwrite_ap]) Wrapper for ``sspr``. Parameters ---------- n : input int alpha : input float x : input rank-1 array('f') with bounds (*) ap : input rank-1 array('f') with bounds (*) Other Parameters ---------------- incx : input int, optional Default: 1 offx : input int, optional Default: 0 overwrite_ap : input int, optional Default: 0 lower : input int, optional Default: 0 Returns ------- apu : rank-1 array('f') with bounds (*) and ap storagea = zher2(alpha,x,y,[lower,incx,offx,incy,offy,n,a,overwrite_a]) Wrapper for ``zher2``. Parameters ---------- alpha : input complex x : input rank-1 array('D') with bounds (*) y : input rank-1 array('D') with bounds (*) Other Parameters ---------------- lower : input int, optional Default: 0 incx : input int, optional Default: 1 offx : input int, optional Default: 0 incy : input int, optional Default: 1 offy : input int, optional Default: 0 n : input int, optional Default: ((len(x)-1-offx)/abs(incx)+1 <=(len(y)-1-offy)/abs(incy)+1 ?(len(x)-1-offx)/abs(incx)+1 :(len(y)-1-offy)/abs(incy)+1) a : input rank-2 array('D') with bounds (n,n) overwrite_a : input int, optional Default: 0 Returns ------- a : rank-2 array('D') with bounds (n,n)a = cher2(alpha,x,y,[lower,incx,offx,incy,offy,n,a,overwrite_a]) Wrapper for ``cher2``. Parameters ---------- alpha : input complex x : input rank-1 array('F') with bounds (*) y : input rank-1 array('F') with bounds (*) Other Parameters ---------------- lower : input int, optional Default: 0 incx : input int, optional Default: 1 offx : input int, optional Default: 0 incy : input int, optional Default: 1 offy : input int, optional Default: 0 n : input int, optional Default: ((len(x)-1-offx)/abs(incx)+1 <=(len(y)-1-offy)/abs(incy)+1 ?(len(x)-1-offx)/abs(incx)+1 :(len(y)-1-offy)/abs(incy)+1) a : input rank-2 array('F') with bounds (n,n) overwrite_a : input int, optional Default: 0 Returns ------- a : rank-2 array('F') with bounds (n,n)a = dsyr2(alpha,x,y,[lower,incx,offx,incy,offy,n,a,overwrite_a]) Wrapper for ``dsyr2``. Parameters ---------- alpha : input float x : input rank-1 array('d') with bounds (*) y : input rank-1 array('d') with bounds (*) Other Parameters ---------------- lower : input int, optional Default: 0 incx : input int, optional Default: 1 offx : input int, optional Default: 0 incy : input int, optional Default: 1 offy : input int, optional Default: 0 n : input int, optional Default: ((len(x)-1-offx)/abs(incx)+1 <=(len(y)-1-offy)/abs(incy)+1 ?(len(x)-1-offx)/abs(incx)+1 :(len(y)-1-offy)/abs(incy)+1) a : input rank-2 array('d') with bounds (n,n) overwrite_a : input int, optional Default: 0 Returns ------- a : rank-2 array('d') with bounds (n,n)a = ssyr2(alpha,x,y,[lower,incx,offx,incy,offy,n,a,overwrite_a]) Wrapper for ``ssyr2``. Parameters ---------- alpha : input float x : input rank-1 array('f') with bounds (*) y : input rank-1 array('f') with bounds (*) Other Parameters ---------------- lower : input int, optional Default: 0 incx : input int, optional Default: 1 offx : input int, optional Default: 0 incy : input int, optional Default: 1 offy : input int, optional Default: 0 n : input int, optional Default: ((len(x)-1-offx)/abs(incx)+1 <=(len(y)-1-offy)/abs(incy)+1 ?(len(x)-1-offx)/abs(incx)+1 :(len(y)-1-offy)/abs(incy)+1) a : input rank-2 array('f') with bounds (n,n) overwrite_a : input int, optional Default: 0 Returns ------- a : rank-2 array('f') with bounds (n,n)a = zher(alpha,x,[lower,incx,offx,n,a,overwrite_a]) Wrapper for ``zher``. Parameters ---------- alpha : input complex x : input rank-1 array('D') with bounds (*) Other Parameters ---------------- lower : input int, optional Default: 0 incx : input int, optional Default: 1 offx : input int, optional Default: 0 n : input int, optional Default: (len(x)-1-offx)/abs(incx)+1 a : input rank-2 array('D') with bounds (n,n) overwrite_a : input int, optional Default: 0 Returns ------- a : rank-2 array('D') with bounds (n,n)a = cher(alpha,x,[lower,incx,offx,n,a,overwrite_a]) Wrapper for ``cher``. Parameters ---------- alpha : input complex x : input rank-1 array('F') with bounds (*) Other Parameters ---------------- lower : input int, optional Default: 0 incx : input int, optional Default: 1 offx : input int, optional Default: 0 n : input int, optional Default: (len(x)-1-offx)/abs(incx)+1 a : input rank-2 array('F') with bounds (n,n) overwrite_a : input int, optional Default: 0 Returns ------- a : rank-2 array('F') with bounds (n,n)a = zsyr(alpha,x,[lower,incx,offx,n,a,overwrite_a]) Wrapper for ``zsyr``. Parameters ---------- alpha : input complex x : input rank-1 array('D') with bounds (*) Other Parameters ---------------- lower : input int, optional Default: 0 incx : input int, optional Default: 1 offx : input int, optional Default: 0 n : input int, optional Default: (len(x)-1-offx)/abs(incx)+1 a : input rank-2 array('D') with bounds (n,n) overwrite_a : input int, optional Default: 0 Returns ------- a : rank-2 array('D') with bounds (n,n)a = csyr(alpha,x,[lower,incx,offx,n,a,overwrite_a]) Wrapper for ``csyr``. Parameters ---------- alpha : input complex x : input rank-1 array('F') with bounds (*) Other Parameters ---------------- lower : input int, optional Default: 0 incx : input int, optional Default: 1 offx : input int, optional Default: 0 n : input int, optional Default: (len(x)-1-offx)/abs(incx)+1 a : input rank-2 array('F') with bounds (n,n) overwrite_a : input int, optional Default: 0 Returns ------- a : rank-2 array('F') with bounds (n,n)a = dsyr(alpha,x,[lower,incx,offx,n,a,overwrite_a]) Wrapper for ``dsyr``. Parameters ---------- alpha : input float x : input rank-1 array('d') with bounds (*) Other Parameters ---------------- lower : input int, optional Default: 0 incx : input int, optional Default: 1 offx : input int, optional Default: 0 n : input int, optional Default: (len(x)-1-offx)/abs(incx)+1 a : input rank-2 array('d') with bounds (n,n) overwrite_a : input int, optional Default: 0 Returns ------- a : rank-2 array('d') with bounds (n,n)a = ssyr(alpha,x,[lower,incx,offx,n,a,overwrite_a]) Wrapper for ``ssyr``. Parameters ---------- alpha : input float x : input rank-1 array('f') with bounds (*) Other Parameters ---------------- lower : input int, optional Default: 0 incx : input int, optional Default: 1 offx : input int, optional Default: 0 n : input int, optional Default: (len(x)-1-offx)/abs(incx)+1 a : input rank-2 array('f') with bounds (n,n) overwrite_a : input int, optional Default: 0 Returns ------- a : rank-2 array('f') with bounds (n,n)a = zgerc(alpha,x,y,[incx,incy,a,overwrite_x,overwrite_y,overwrite_a]) Wrapper for ``zgerc``. Parameters ---------- alpha : input complex x : input rank-1 array('D') with bounds (m) y : input rank-1 array('D') with bounds (n) Other Parameters ---------------- overwrite_x : input int, optional Default: 1 incx : input int, optional Default: 1 overwrite_y : input int, optional Default: 1 incy : input int, optional Default: 1 a : input rank-2 array('D') with bounds (m,n), optional Default: (0.0,0.0) overwrite_a : input int, optional Default: 0 Returns ------- a : rank-2 array('D') with bounds (m,n)a = cgerc(alpha,x,y,[incx,incy,a,overwrite_x,overwrite_y,overwrite_a]) Wrapper for ``cgerc``. Parameters ---------- alpha : input complex x : input rank-1 array('F') with bounds (m) y : input rank-1 array('F') with bounds (n) Other Parameters ---------------- overwrite_x : input int, optional Default: 1 incx : input int, optional Default: 1 overwrite_y : input int, optional Default: 1 incy : input int, optional Default: 1 a : input rank-2 array('F') with bounds (m,n), optional Default: (0.0,0.0) overwrite_a : input int, optional Default: 0 Returns ------- a : rank-2 array('F') with bounds (m,n)a = zgeru(alpha,x,y,[incx,incy,a,overwrite_x,overwrite_y,overwrite_a]) Wrapper for ``zgeru``. Parameters ---------- alpha : input complex x : input rank-1 array('D') with bounds (m) y : input rank-1 array('D') with bounds (n) Other Parameters ---------------- overwrite_x : input int, optional Default: 1 incx : input int, optional Default: 1 overwrite_y : input int, optional Default: 1 incy : input int, optional Default: 1 a : input rank-2 array('D') with bounds (m,n), optional Default: (0.0,0.0) overwrite_a : input int, optional Default: 0 Returns ------- a : rank-2 array('D') with bounds (m,n)a = cgeru(alpha,x,y,[incx,incy,a,overwrite_x,overwrite_y,overwrite_a]) Wrapper for ``cgeru``. Parameters ---------- alpha : input complex x : input rank-1 array('F') with bounds (m) y : input rank-1 array('F') with bounds (n) Other Parameters ---------------- overwrite_x : input int, optional Default: 1 incx : input int, optional Default: 1 overwrite_y : input int, optional Default: 1 incy : input int, optional Default: 1 a : input rank-2 array('F') with bounds (m,n), optional Default: (0.0,0.0) overwrite_a : input int, optional Default: 0 Returns ------- a : rank-2 array('F') with bounds (m,n)a = dger(alpha,x,y,[incx,incy,a,overwrite_x,overwrite_y,overwrite_a]) Wrapper for ``dger``. Parameters ---------- alpha : input float x : input rank-1 array('d') with bounds (m) y : input rank-1 array('d') with bounds (n) Other Parameters ---------------- overwrite_x : input int, optional Default: 1 incx : input int, optional Default: 1 overwrite_y : input int, optional Default: 1 incy : input int, optional Default: 1 a : input rank-2 array('d') with bounds (m,n), optional Default: 0.0 overwrite_a : input int, optional Default: 0 Returns ------- a : rank-2 array('d') with bounds (m,n)a = sger(alpha,x,y,[incx,incy,a,overwrite_x,overwrite_y,overwrite_a]) Wrapper for ``sger``. Parameters ---------- alpha : input float x : input rank-1 array('f') with bounds (m) y : input rank-1 array('f') with bounds (n) Other Parameters ---------------- overwrite_x : input int, optional Default: 1 incx : input int, optional Default: 1 overwrite_y : input int, optional Default: 1 incy : input int, optional Default: 1 a : input rank-2 array('f') with bounds (m,n), optional Default: 0.0 overwrite_a : input int, optional Default: 0 Returns ------- a : rank-2 array('f') with bounds (m,n)y = zhemv(alpha,a,x,[beta,y,offx,incx,offy,incy,lower,overwrite_y]) Wrapper for ``zhemv``. Parameters ---------- alpha : input complex a : input rank-2 array('D') with bounds (n,n) x : input rank-1 array('D') with bounds (*) Other Parameters ---------------- beta : input complex, optional Default: (0.0, 0.0) y : input rank-1 array('D') with bounds (ly) overwrite_y : input int, optional Default: 0 offx : input int, optional Default: 0 incx : input int, optional Default: 1 offy : input int, optional Default: 0 incy : input int, optional Default: 1 lower : input int, optional Default: 0 Returns ------- y : rank-1 array('D') with bounds (ly)y = chemv(alpha,a,x,[beta,y,offx,incx,offy,incy,lower,overwrite_y]) Wrapper for ``chemv``. Parameters ---------- alpha : input complex a : input rank-2 array('F') with bounds (n,n) x : input rank-1 array('F') with bounds (*) Other Parameters ---------------- beta : input complex, optional Default: (0.0, 0.0) y : input rank-1 array('F') with bounds (ly) overwrite_y : input int, optional Default: 0 offx : input int, optional Default: 0 incx : input int, optional Default: 1 offy : input int, optional Default: 0 incy : input int, optional Default: 1 lower : input int, optional Default: 0 Returns ------- y : rank-1 array('F') with bounds (ly)y = dsymv(alpha,a,x,[beta,y,offx,incx,offy,incy,lower,overwrite_y]) Wrapper for ``dsymv``. Parameters ---------- alpha : input float a : input rank-2 array('d') with bounds (n,n) x : input rank-1 array('d') with bounds (*) Other Parameters ---------------- beta : input float, optional Default: 0.0 y : input rank-1 array('d') with bounds (ly) overwrite_y : input int, optional Default: 0 offx : input int, optional Default: 0 incx : input int, optional Default: 1 offy : input int, optional Default: 0 incy : input int, optional Default: 1 lower : input int, optional Default: 0 Returns ------- y : rank-1 array('d') with bounds (ly)y = ssymv(alpha,a,x,[beta,y,offx,incx,offy,incy,lower,overwrite_y]) Wrapper for ``ssymv``. Parameters ---------- alpha : input float a : input rank-2 array('f') with bounds (n,n) x : input rank-1 array('f') with bounds (*) Other Parameters ---------------- beta : input float, optional Default: 0.0 y : input rank-1 array('f') with bounds (ly) overwrite_y : input int, optional Default: 0 offx : input int, optional Default: 0 incx : input int, optional Default: 1 offy : input int, optional Default: 0 incy : input int, optional Default: 1 lower : input int, optional Default: 0 Returns ------- y : rank-1 array('f') with bounds (ly)yout = zhpmv(n,alpha,ap,x,[incx,offx,beta,y,incy,offy,lower,overwrite_y]) Wrapper for ``zhpmv``. Parameters ---------- n : input int alpha : input complex ap : input rank-1 array('D') with bounds (*) x : input rank-1 array('D') with bounds (*) Other Parameters ---------------- incx : input int, optional Default: 1 offx : input int, optional Default: 0 beta : input complex, optional Default: (0.0, 0.0) y : input rank-1 array('D') with bounds (ly) overwrite_y : input int, optional Default: 0 incy : input int, optional Default: 1 offy : input int, optional Default: 0 lower : input int, optional Default: 0 Returns ------- yout : rank-1 array('D') with bounds (ly) and y storageyout = chpmv(n,alpha,ap,x,[incx,offx,beta,y,incy,offy,lower,overwrite_y]) Wrapper for ``chpmv``. Parameters ---------- n : input int alpha : input complex ap : input rank-1 array('F') with bounds (*) x : input rank-1 array('F') with bounds (*) Other Parameters ---------------- incx : input int, optional Default: 1 offx : input int, optional Default: 0 beta : input complex, optional Default: (0.0, 0.0) y : input rank-1 array('F') with bounds (ly) overwrite_y : input int, optional Default: 0 incy : input int, optional Default: 1 offy : input int, optional Default: 0 lower : input int, optional Default: 0 Returns ------- yout : rank-1 array('F') with bounds (ly) and y storageyout = zspmv(n,alpha,ap,x,[incx,offx,beta,y,incy,offy,lower,overwrite_y]) Wrapper for ``zspmv``. Parameters ---------- n : input int alpha : input complex ap : input rank-1 array('D') with bounds (*) x : input rank-1 array('D') with bounds (*) Other Parameters ---------------- incx : input int, optional Default: 1 offx : input int, optional Default: 0 beta : input complex, optional Default: (0.0, 0.0) y : input rank-1 array('D') with bounds (ly) overwrite_y : input int, optional Default: 0 incy : input int, optional Default: 1 offy : input int, optional Default: 0 lower : input int, optional Default: 0 Returns ------- yout : rank-1 array('D') with bounds (ly) and y storageyout = cspmv(n,alpha,ap,x,[incx,offx,beta,y,incy,offy,lower,overwrite_y]) Wrapper for ``cspmv``. Parameters ---------- n : input int alpha : input complex ap : input rank-1 array('F') with bounds (*) x : input rank-1 array('F') with bounds (*) Other Parameters ---------------- incx : input int, optional Default: 1 offx : input int, optional Default: 0 beta : input complex, optional Default: (0.0, 0.0) y : input rank-1 array('F') with bounds (ly) overwrite_y : input int, optional Default: 0 incy : input int, optional Default: 1 offy : input int, optional Default: 0 lower : input int, optional Default: 0 Returns ------- yout : rank-1 array('F') with bounds (ly) and y storageyout = dspmv(n,alpha,ap,x,[incx,offx,beta,y,incy,offy,lower,overwrite_y]) Wrapper for ``dspmv``. Parameters ---------- n : input int alpha : input float ap : input rank-1 array('d') with bounds (*) x : input rank-1 array('d') with bounds (*) Other Parameters ---------------- incx : input int, optional Default: 1 offx : input int, optional Default: 0 beta : input float, optional Default: 0.0 y : input rank-1 array('d') with bounds (ly) overwrite_y : input int, optional Default: 0 incy : input int, optional Default: 1 offy : input int, optional Default: 0 lower : input int, optional Default: 0 Returns ------- yout : rank-1 array('d') with bounds (ly) and y storageyout = sspmv(n,alpha,ap,x,[incx,offx,beta,y,incy,offy,lower,overwrite_y]) Wrapper for ``sspmv``. Parameters ---------- n : input int alpha : input float ap : input rank-1 array('f') with bounds (*) x : input rank-1 array('f') with bounds (*) Other Parameters ---------------- incx : input int, optional Default: 1 offx : input int, optional Default: 0 beta : input float, optional Default: 0.0 y : input rank-1 array('f') with bounds (ly) overwrite_y : input int, optional Default: 0 incy : input int, optional Default: 1 offy : input int, optional Default: 0 lower : input int, optional Default: 0 Returns ------- yout : rank-1 array('f') with bounds (ly) and y storageyout = zhbmv(k,alpha,a,x,[incx,offx,beta,y,incy,offy,lower,overwrite_y]) Wrapper for ``zhbmv``. Parameters ---------- k : input int alpha : input complex a : input rank-2 array('D') with bounds (lda,n) x : input rank-1 array('D') with bounds (*) Other Parameters ---------------- incx : input int, optional Default: 1 offx : input int, optional Default: 0 beta : input complex, optional Default: (0.0, 0.0) y : input rank-1 array('D') with bounds (ly) overwrite_y : input int, optional Default: 0 incy : input int, optional Default: 1 offy : input int, optional Default: 0 lower : input int, optional Default: 0 Returns ------- yout : rank-1 array('D') with bounds (ly) and y storageyout = chbmv(k,alpha,a,x,[incx,offx,beta,y,incy,offy,lower,overwrite_y]) Wrapper for ``chbmv``. Parameters ---------- k : input int alpha : input complex a : input rank-2 array('F') with bounds (lda,n) x : input rank-1 array('F') with bounds (*) Other Parameters ---------------- incx : input int, optional Default: 1 offx : input int, optional Default: 0 beta : input complex, optional Default: (0.0, 0.0) y : input rank-1 array('F') with bounds (ly) overwrite_y : input int, optional Default: 0 incy : input int, optional Default: 1 offy : input int, optional Default: 0 lower : input int, optional Default: 0 Returns ------- yout : rank-1 array('F') with bounds (ly) and y storageyout = dsbmv(k,alpha,a,x,[incx,offx,beta,y,incy,offy,lower,overwrite_y]) Wrapper for ``dsbmv``. Parameters ---------- k : input int alpha : input float a : input rank-2 array('d') with bounds (lda,n) x : input rank-1 array('d') with bounds (*) Other Parameters ---------------- incx : input int, optional Default: 1 offx : input int, optional Default: 0 beta : input float, optional Default: 0.0 y : input rank-1 array('d') with bounds (ly) overwrite_y : input int, optional Default: 0 incy : input int, optional Default: 1 offy : input int, optional Default: 0 lower : input int, optional Default: 0 Returns ------- yout : rank-1 array('d') with bounds (ly) and y storageyout = ssbmv(k,alpha,a,x,[incx,offx,beta,y,incy,offy,lower,overwrite_y]) Wrapper for ``ssbmv``. Parameters ---------- k : input int alpha : input float a : input rank-2 array('f') with bounds (lda,n) x : input rank-1 array('f') with bounds (*) Other Parameters ---------------- incx : input int, optional Default: 1 offx : input int, optional Default: 0 beta : input float, optional Default: 0.0 y : input rank-1 array('f') with bounds (ly) overwrite_y : input int, optional Default: 0 incy : input int, optional Default: 1 offy : input int, optional Default: 0 lower : input int, optional Default: 0 Returns ------- yout : rank-1 array('f') with bounds (ly) and y storageyout = zgbmv(m,n,kl,ku,alpha,a,x,[incx,offx,beta,y,incy,offy,trans,overwrite_y]) Wrapper for ``zgbmv``. Parameters ---------- m : input int n : input int kl : input int ku : input int alpha : input complex a : input rank-2 array('D') with bounds (lda,n) x : input rank-1 array('D') with bounds (*) Other Parameters ---------------- incx : input int, optional Default: 1 offx : input int, optional Default: 0 beta : input complex, optional Default: (0.0, 0.0) y : input rank-1 array('D') with bounds (ly) overwrite_y : input int, optional Default: 0 incy : input int, optional Default: 1 offy : input int, optional Default: 0 trans : input int, optional Default: 0 Returns ------- yout : rank-1 array('D') with bounds (ly) and y storageyout = cgbmv(m,n,kl,ku,alpha,a,x,[incx,offx,beta,y,incy,offy,trans,overwrite_y]) Wrapper for ``cgbmv``. Parameters ---------- m : input int n : input int kl : input int ku : input int alpha : input complex a : input rank-2 array('F') with bounds (lda,n) x : input rank-1 array('F') with bounds (*) Other Parameters ---------------- incx : input int, optional Default: 1 offx : input int, optional Default: 0 beta : input complex, optional Default: (0.0, 0.0) y : input rank-1 array('F') with bounds (ly) overwrite_y : input int, optional Default: 0 incy : input int, optional Default: 1 offy : input int, optional Default: 0 trans : input int, optional Default: 0 Returns ------- yout : rank-1 array('F') with bounds (ly) and y storageyout = dgbmv(m,n,kl,ku,alpha,a,x,[incx,offx,beta,y,incy,offy,trans,overwrite_y]) Wrapper for ``dgbmv``. Parameters ---------- m : input int n : input int kl : input int ku : input int alpha : input float a : input rank-2 array('d') with bounds (lda,n) x : input rank-1 array('d') with bounds (*) Other Parameters ---------------- incx : input int, optional Default: 1 offx : input int, optional Default: 0 beta : input float, optional Default: 0.0 y : input rank-1 array('d') with bounds (ly) overwrite_y : input int, optional Default: 0 incy : input int, optional Default: 1 offy : input int, optional Default: 0 trans : input int, optional Default: 0 Returns ------- yout : rank-1 array('d') with bounds (ly) and y storageyout = sgbmv(m,n,kl,ku,alpha,a,x,[incx,offx,beta,y,incy,offy,trans,overwrite_y]) Wrapper for ``sgbmv``. Parameters ---------- m : input int n : input int kl : input int ku : input int alpha : input float a : input rank-2 array('f') with bounds (lda,n) x : input rank-1 array('f') with bounds (*) Other Parameters ---------------- incx : input int, optional Default: 1 offx : input int, optional Default: 0 beta : input float, optional Default: 0.0 y : input rank-1 array('f') with bounds (ly) overwrite_y : input int, optional Default: 0 incy : input int, optional Default: 1 offy : input int, optional Default: 0 trans : input int, optional Default: 0 Returns ------- yout : rank-1 array('f') with bounds (ly) and y storagey = zgemv(alpha,a,x,[beta,y,offx,incx,offy,incy,trans,overwrite_y]) Wrapper for ``zgemv``. Parameters ---------- alpha : input complex a : input rank-2 array('D') with bounds (m,n) x : input rank-1 array('D') with bounds (*) Other Parameters ---------------- beta : input complex, optional Default: (0.0, 0.0) y : input rank-1 array('D') with bounds (ly) overwrite_y : input int, optional Default: 0 offx : input int, optional Default: 0 incx : input int, optional Default: 1 offy : input int, optional Default: 0 incy : input int, optional Default: 1 trans : input int, optional Default: 0 Returns ------- y : rank-1 array('D') with bounds (ly)y = cgemv(alpha,a,x,[beta,y,offx,incx,offy,incy,trans,overwrite_y]) Wrapper for ``cgemv``. Parameters ---------- alpha : input complex a : input rank-2 array('F') with bounds (m,n) x : input rank-1 array('F') with bounds (*) Other Parameters ---------------- beta : input complex, optional Default: (0.0, 0.0) y : input rank-1 array('F') with bounds (ly) overwrite_y : input int, optional Default: 0 offx : input int, optional Default: 0 incx : input int, optional Default: 1 offy : input int, optional Default: 0 incy : input int, optional Default: 1 trans : input int, optional Default: 0 Returns ------- y : rank-1 array('F') with bounds (ly)y = dgemv(alpha,a,x,[beta,y,offx,incx,offy,incy,trans,overwrite_y]) Wrapper for ``dgemv``. Parameters ---------- alpha : input float a : input rank-2 array('d') with bounds (m,n) x : input rank-1 array('d') with bounds (*) Other Parameters ---------------- beta : input float, optional Default: 0.0 y : input rank-1 array('d') with bounds (ly) overwrite_y : input int, optional Default: 0 offx : input int, optional Default: 0 incx : input int, optional Default: 1 offy : input int, optional Default: 0 incy : input int, optional Default: 1 trans : input int, optional Default: 0 Returns ------- y : rank-1 array('d') with bounds (ly)y = sgemv(alpha,a,x,[beta,y,offx,incx,offy,incy,trans,overwrite_y]) Wrapper for ``sgemv``. Parameters ---------- alpha : input float a : input rank-2 array('f') with bounds (m,n) x : input rank-1 array('f') with bounds (*) Other Parameters ---------------- beta : input float, optional Default: 0.0 y : input rank-1 array('f') with bounds (ly) overwrite_y : input int, optional Default: 0 offx : input int, optional Default: 0 incx : input int, optional Default: 1 offy : input int, optional Default: 0 incy : input int, optional Default: 1 trans : input int, optional Default: 0 Returns ------- y : rank-1 array('f') with bounds (ly)k = izamax(x,[n,offx,incx]) Wrapper for ``izamax``. Parameters ---------- x : input rank-1 array('D') with bounds (*) Other Parameters ---------------- n : input int, optional Default: (len(x)-offx)/abs(incx) offx : input int, optional Default: 0 incx : input int, optional Default: 1 Returns ------- k : intk = icamax(x,[n,offx,incx]) Wrapper for ``icamax``. Parameters ---------- x : input rank-1 array('F') with bounds (*) Other Parameters ---------------- n : input int, optional Default: (len(x)-offx)/abs(incx) offx : input int, optional Default: 0 incx : input int, optional Default: 1 Returns ------- k : intk = idamax(x,[n,offx,incx]) Wrapper for ``idamax``. Parameters ---------- x : input rank-1 array('d') with bounds (*) Other Parameters ---------------- n : input int, optional Default: (len(x)-offx)/abs(incx) offx : input int, optional Default: 0 incx : input int, optional Default: 1 Returns ------- k : intk = isamax(x,[n,offx,incx]) Wrapper for ``isamax``. Parameters ---------- x : input rank-1 array('f') with bounds (*) Other Parameters ---------------- n : input int, optional Default: (len(x)-offx)/abs(incx) offx : input int, optional Default: 0 incx : input int, optional Default: 1 Returns ------- k : ints = dzasum(x,[n,offx,incx]) Wrapper for ``dzasum``. Parameters ---------- x : input rank-1 array('D') with bounds (*) Other Parameters ---------------- n : input int, optional Default: (len(x)-offx)/abs(incx) offx : input int, optional Default: 0 incx : input int, optional Default: 1 Returns ------- s : floats = dasum(x,[n,offx,incx]) Wrapper for ``dasum``. Parameters ---------- x : input rank-1 array('d') with bounds (*) Other Parameters ---------------- n : input int, optional Default: (len(x)-offx)/abs(incx) offx : input int, optional Default: 0 incx : input int, optional Default: 1 Returns ------- s : floats = scasum(x,[n,offx,incx]) Wrapper for ``scasum``. Parameters ---------- x : input rank-1 array('F') with bounds (*) Other Parameters ---------------- n : input int, optional Default: (len(x)-offx)/abs(incx) offx : input int, optional Default: 0 incx : input int, optional Default: 1 Returns ------- s : floats = sasum(x,[n,offx,incx]) Wrapper for ``sasum``. Parameters ---------- x : input rank-1 array('f') with bounds (*) Other Parameters ---------------- n : input int, optional Default: (len(x)-offx)/abs(incx) offx : input int, optional Default: 0 incx : input int, optional Default: 1 Returns ------- s : floatn2 = dznrm2(x,[n,offx,incx]) Wrapper for ``dznrm2``. Parameters ---------- x : input rank-1 array('D') with bounds (*) Other Parameters ---------------- n : input int, optional Default: (len(x)-offx)/abs(incx) offx : input int, optional Default: 0 incx : input int, optional Default: 1 Returns ------- n2 : floatn2 = dnrm2(x,[n,offx,incx]) Wrapper for ``dnrm2``. Parameters ---------- x : input rank-1 array('d') with bounds (*) Other Parameters ---------------- n : input int, optional Default: (len(x)-offx)/abs(incx) offx : input int, optional Default: 0 incx : input int, optional Default: 1 Returns ------- n2 : floatn2 = scnrm2(x,[n,offx,incx]) Wrapper for ``scnrm2``. Parameters ---------- x : input rank-1 array('F') with bounds (*) Other Parameters ---------------- n : input int, optional Default: (len(x)-offx)/abs(incx) offx : input int, optional Default: 0 incx : input int, optional Default: 1 Returns ------- n2 : floatn2 = snrm2(x,[n,offx,incx]) Wrapper for ``snrm2``. Parameters ---------- x : input rank-1 array('f') with bounds (*) Other Parameters ---------------- n : input int, optional Default: (len(x)-offx)/abs(incx) offx : input int, optional Default: 0 incx : input int, optional Default: 1 Returns ------- n2 : floatxy = zdotc(x,y,[n,offx,incx,offy,incy]) Wrapper for ``zdotc``. Parameters ---------- x : input rank-1 array('D') with bounds (*) y : input rank-1 array('D') with bounds (*) Other Parameters ---------------- n : input int, optional Default: (len(x)-offx)/abs(incx) offx : input int, optional Default: 0 incx : input int, optional Default: 1 offy : input int, optional Default: 0 incy : input int, optional Default: 1 Returns ------- xy : complexxy = cdotc(x,y,[n,offx,incx,offy,incy]) Wrapper for ``cdotc``. Parameters ---------- x : input rank-1 array('F') with bounds (*) y : input rank-1 array('F') with bounds (*) Other Parameters ---------------- n : input int, optional Default: (len(x)-offx)/abs(incx) offx : input int, optional Default: 0 incx : input int, optional Default: 1 offy : input int, optional Default: 0 incy : input int, optional Default: 1 Returns ------- xy : complexxy = zdotu(x,y,[n,offx,incx,offy,incy]) Wrapper for ``zdotu``. Parameters ---------- x : input rank-1 array('D') with bounds (*) y : input rank-1 array('D') with bounds (*) Other Parameters ---------------- n : input int, optional Default: (len(x)-offx)/abs(incx) offx : input int, optional Default: 0 incx : input int, optional Default: 1 offy : input int, optional Default: 0 incy : input int, optional Default: 1 Returns ------- xy : complexxy = cdotu(x,y,[n,offx,incx,offy,incy]) Wrapper for ``cdotu``. Parameters ---------- x : input rank-1 array('F') with bounds (*) y : input rank-1 array('F') with bounds (*) Other Parameters ---------------- n : input int, optional Default: (len(x)-offx)/abs(incx) offx : input int, optional Default: 0 incx : input int, optional Default: 1 offy : input int, optional Default: 0 incy : input int, optional Default: 1 Returns ------- xy : complexxy = ddot(x,y,[n,offx,incx,offy,incy]) Wrapper for ``ddot``. Parameters ---------- x : input rank-1 array('d') with bounds (*) y : input rank-1 array('d') with bounds (*) Other Parameters ---------------- n : input int, optional Default: (len(x)-offx)/abs(incx) offx : input int, optional Default: 0 incx : input int, optional Default: 1 offy : input int, optional Default: 0 incy : input int, optional Default: 1 Returns ------- xy : floatxy = sdot(x,y,[n,offx,incx,offy,incy]) Wrapper for ``sdot``. Parameters ---------- x : input rank-1 array('f') with bounds (*) y : input rank-1 array('f') with bounds (*) Other Parameters ---------------- n : input int, optional Default: (len(x)-offx)/abs(incx) offx : input int, optional Default: 0 incx : input int, optional Default: 1 offy : input int, optional Default: 0 incy : input int, optional Default: 1 Returns ------- xy : floatz = zaxpy(x,y,[n,a,offx,incx,offy,incy]) Wrapper for ``zaxpy``. Parameters ---------- x : input rank-1 array('D') with bounds (*) y : input rank-1 array('D') with bounds (*) Other Parameters ---------------- n : input int, optional Default: (len(x)-offx)/abs(incx) a : input complex, optional Default: (1.0, 0.0) offx : input int, optional Default: 0 incx : input int, optional Default: 1 offy : input int, optional Default: 0 incy : input int, optional Default: 1 Returns ------- z : rank-1 array('D') with bounds (*) and y storagez = caxpy(x,y,[n,a,offx,incx,offy,incy]) Wrapper for ``caxpy``. Parameters ---------- x : input rank-1 array('F') with bounds (*) y : input rank-1 array('F') with bounds (*) Other Parameters ---------------- n : input int, optional Default: (len(x)-offx)/abs(incx) a : input complex, optional Default: (1.0, 0.0) offx : input int, optional Default: 0 incx : input int, optional Default: 1 offy : input int, optional Default: 0 incy : input int, optional Default: 1 Returns ------- z : rank-1 array('F') with bounds (*) and y storagez = daxpy(x,y,[n,a,offx,incx,offy,incy]) Wrapper for ``daxpy``. Parameters ---------- x : input rank-1 array('d') with bounds (*) y : input rank-1 array('d') with bounds (*) Other Parameters ---------------- n : input int, optional Default: (len(x)-offx)/abs(incx) a : input float, optional Default: 1.0 offx : input int, optional Default: 0 incx : input int, optional Default: 1 offy : input int, optional Default: 0 incy : input int, optional Default: 1 Returns ------- z : rank-1 array('d') with bounds (*) and y storagez = saxpy(x,y,[n,a,offx,incx,offy,incy]) Wrapper for ``saxpy``. Parameters ---------- x : input rank-1 array('f') with bounds (*) y : input rank-1 array('f') with bounds (*) Other Parameters ---------------- n : input int, optional Default: (len(x)-offx)/abs(incx) a : input float, optional Default: 1.0 offx : input int, optional Default: 0 incx : input int, optional Default: 1 offy : input int, optional Default: 0 incy : input int, optional Default: 1 Returns ------- z : rank-1 array('f') with bounds (*) and y storagey = zcopy(x,y,[n,offx,incx,offy,incy]) Wrapper for ``zcopy``. Parameters ---------- x : input rank-1 array('D') with bounds (*) y : input rank-1 array('D') with bounds (*) Other Parameters ---------------- n : input int, optional Default: (len(x)-offx)/abs(incx) offx : input int, optional Default: 0 incx : input int, optional Default: 1 offy : input int, optional Default: 0 incy : input int, optional Default: 1 Returns ------- y : rank-1 array('D') with bounds (*)y = ccopy(x,y,[n,offx,incx,offy,incy]) Wrapper for ``ccopy``. Parameters ---------- x : input rank-1 array('F') with bounds (*) y : input rank-1 array('F') with bounds (*) Other Parameters ---------------- n : input int, optional Default: (len(x)-offx)/abs(incx) offx : input int, optional Default: 0 incx : input int, optional Default: 1 offy : input int, optional Default: 0 incy : input int, optional Default: 1 Returns ------- y : rank-1 array('F') with bounds (*)y = dcopy(x,y,[n,offx,incx,offy,incy]) Wrapper for ``dcopy``. Parameters ---------- x : input rank-1 array('d') with bounds (*) y : input rank-1 array('d') with bounds (*) Other Parameters ---------------- n : input int, optional Default: (len(x)-offx)/abs(incx) offx : input int, optional Default: 0 incx : input int, optional Default: 1 offy : input int, optional Default: 0 incy : input int, optional Default: 1 Returns ------- y : rank-1 array('d') with bounds (*)y = scopy(x,y,[n,offx,incx,offy,incy]) Wrapper for ``scopy``. Parameters ---------- x : input rank-1 array('f') with bounds (*) y : input rank-1 array('f') with bounds (*) Other Parameters ---------------- n : input int, optional Default: (len(x)-offx)/abs(incx) offx : input int, optional Default: 0 incx : input int, optional Default: 1 offy : input int, optional Default: 0 incy : input int, optional Default: 1 Returns ------- y : rank-1 array('f') with bounds (*)x = zdscal(a,x,[n,offx,incx,overwrite_x]) Wrapper for ``zdscal``. Parameters ---------- a : input float x : input rank-1 array('D') with bounds (*) Other Parameters ---------------- n : input int, optional Default: (len(x)-offx)/abs(incx) overwrite_x : input int, optional Default: 0 offx : input int, optional Default: 0 incx : input int, optional Default: 1 Returns ------- x : rank-1 array('D') with bounds (*)x = csscal(a,x,[n,offx,incx,overwrite_x]) Wrapper for ``csscal``. Parameters ---------- a : input float x : input rank-1 array('F') with bounds (*) Other Parameters ---------------- n : input int, optional Default: (len(x)-offx)/abs(incx) overwrite_x : input int, optional Default: 0 offx : input int, optional Default: 0 incx : input int, optional Default: 1 Returns ------- x : rank-1 array('F') with bounds (*)x = zscal(a,x,[n,offx,incx]) Wrapper for ``zscal``. Parameters ---------- a : input complex x : input rank-1 array('D') with bounds (*) Other Parameters ---------------- n : input int, optional Default: (len(x)-offx)/abs(incx) offx : input int, optional Default: 0 incx : input int, optional Default: 1 Returns ------- x : rank-1 array('D') with bounds (*)x = cscal(a,x,[n,offx,incx]) Wrapper for ``cscal``. Parameters ---------- a : input complex x : input rank-1 array('F') with bounds (*) Other Parameters ---------------- n : input int, optional Default: (len(x)-offx)/abs(incx) offx : input int, optional Default: 0 incx : input int, optional Default: 1 Returns ------- x : rank-1 array('F') with bounds (*)x = dscal(a,x,[n,offx,incx]) Wrapper for ``dscal``. Parameters ---------- a : input float x : input rank-1 array('d') with bounds (*) Other Parameters ---------------- n : input int, optional Default: (len(x)-offx)/abs(incx) offx : input int, optional Default: 0 incx : input int, optional Default: 1 Returns ------- x : rank-1 array('d') with bounds (*)x = sscal(a,x,[n,offx,incx]) Wrapper for ``sscal``. Parameters ---------- a : input float x : input rank-1 array('f') with bounds (*) Other Parameters ---------------- n : input int, optional Default: (len(x)-offx)/abs(incx) offx : input int, optional Default: 0 incx : input int, optional Default: 1 Returns ------- x : rank-1 array('f') with bounds (*)x,y = zswap(x,y,[n,offx,incx,offy,incy]) Wrapper for ``zswap``. Parameters ---------- x : input rank-1 array('D') with bounds (*) y : input rank-1 array('D') with bounds (*) Other Parameters ---------------- n : input int, optional Default: (len(x)-offx)/abs(incx) offx : input int, optional Default: 0 incx : input int, optional Default: 1 offy : input int, optional Default: 0 incy : input int, optional Default: 1 Returns ------- x : rank-1 array('D') with bounds (*) y : rank-1 array('D') with bounds (*)x,y = cswap(x,y,[n,offx,incx,offy,incy]) Wrapper for ``cswap``. Parameters ---------- x : input rank-1 array('F') with bounds (*) y : input rank-1 array('F') with bounds (*) Other Parameters ---------------- n : input int, optional Default: (len(x)-offx)/abs(incx) offx : input int, optional Default: 0 incx : input int, optional Default: 1 offy : input int, optional Default: 0 incy : input int, optional Default: 1 Returns ------- x : rank-1 array('F') with bounds (*) y : rank-1 array('F') with bounds (*)x,y = dswap(x,y,[n,offx,incx,offy,incy]) Wrapper for ``dswap``. Parameters ---------- x : input rank-1 array('d') with bounds (*) y : input rank-1 array('d') with bounds (*) Other Parameters ---------------- n : input int, optional Default: (len(x)-offx)/abs(incx) offx : input int, optional Default: 0 incx : input int, optional Default: 1 offy : input int, optional Default: 0 incy : input int, optional Default: 1 Returns ------- x : rank-1 array('d') with bounds (*) y : rank-1 array('d') with bounds (*)x,y = sswap(x,y,[n,offx,incx,offy,incy]) Wrapper for ``sswap``. Parameters ---------- x : input rank-1 array('f') with bounds (*) y : input rank-1 array('f') with bounds (*) Other Parameters ---------------- n : input int, optional Default: (len(x)-offx)/abs(incx) offx : input int, optional Default: 0 incx : input int, optional Default: 1 offy : input int, optional Default: 0 incy : input int, optional Default: 1 Returns ------- x : rank-1 array('f') with bounds (*) y : rank-1 array('f') with bounds (*)x,y = drotm(x,y,param,[n,offx,incx,offy,incy,overwrite_x,overwrite_y]) Wrapper for ``drotm``. Parameters ---------- x : input rank-1 array('d') with bounds (*) y : input rank-1 array('d') with bounds (*) param : input rank-1 array('d') with bounds (5) Other Parameters ---------------- n : input int, optional Default: (len(x)-offx)/abs(incx) overwrite_x : input int, optional Default: 0 offx : input int, optional Default: 0 incx : input int, optional Default: 1 overwrite_y : input int, optional Default: 0 offy : input int, optional Default: 0 incy : input int, optional Default: 1 Returns ------- x : rank-1 array('d') with bounds (*) y : rank-1 array('d') with bounds (*)x,y = srotm(x,y,param,[n,offx,incx,offy,incy,overwrite_x,overwrite_y]) Wrapper for ``srotm``. Parameters ---------- x : input rank-1 array('f') with bounds (*) y : input rank-1 array('f') with bounds (*) param : input rank-1 array('f') with bounds (5) Other Parameters ---------------- n : input int, optional Default: (len(x)-offx)/abs(incx) overwrite_x : input int, optional Default: 0 offx : input int, optional Default: 0 incx : input int, optional Default: 1 overwrite_y : input int, optional Default: 0 offy : input int, optional Default: 0 incy : input int, optional Default: 1 Returns ------- x : rank-1 array('f') with bounds (*) y : rank-1 array('f') with bounds (*)x,y = zdrot(x,y,c,s,[n,offx,incx,offy,incy,overwrite_x,overwrite_y]) Wrapper for ``zdrot``. Parameters ---------- x : input rank-1 array('D') with bounds (*) y : input rank-1 array('D') with bounds (*) c : input float s : input float Other Parameters ---------------- n : input int, optional Default: (len(x)-1-offx)/abs(incx)+1 overwrite_x : input int, optional Default: 0 offx : input int, optional Default: 0 incx : input int, optional Default: 1 overwrite_y : input int, optional Default: 0 offy : input int, optional Default: 0 incy : input int, optional Default: 1 Returns ------- x : rank-1 array('D') with bounds (*) y : rank-1 array('D') with bounds (*)x,y = csrot(x,y,c,s,[n,offx,incx,offy,incy,overwrite_x,overwrite_y]) Wrapper for ``csrot``. Parameters ---------- x : input rank-1 array('F') with bounds (*) y : input rank-1 array('F') with bounds (*) c : input float s : input float Other Parameters ---------------- n : input int, optional Default: (len(x)-1-offx)/abs(incx)+1 overwrite_x : input int, optional Default: 0 offx : input int, optional Default: 0 incx : input int, optional Default: 1 overwrite_y : input int, optional Default: 0 offy : input int, optional Default: 0 incy : input int, optional Default: 1 Returns ------- x : rank-1 array('F') with bounds (*) y : rank-1 array('F') with bounds (*)x,y = drot(x,y,c,s,[n,offx,incx,offy,incy,overwrite_x,overwrite_y]) Wrapper for ``drot``. Parameters ---------- x : input rank-1 array('d') with bounds (*) y : input rank-1 array('d') with bounds (*) c : input float s : input float Other Parameters ---------------- n : input int, optional Default: (len(x)-1-offx)/abs(incx)+1 overwrite_x : input int, optional Default: 0 offx : input int, optional Default: 0 incx : input int, optional Default: 1 overwrite_y : input int, optional Default: 0 offy : input int, optional Default: 0 incy : input int, optional Default: 1 Returns ------- x : rank-1 array('d') with bounds (*) y : rank-1 array('d') with bounds (*)x,y = srot(x,y,c,s,[n,offx,incx,offy,incy,overwrite_x,overwrite_y]) Wrapper for ``srot``. Parameters ---------- x : input rank-1 array('f') with bounds (*) y : input rank-1 array('f') with bounds (*) c : input float s : input float Other Parameters ---------------- n : input int, optional Default: (len(x)-1-offx)/abs(incx)+1 overwrite_x : input int, optional Default: 0 offx : input int, optional Default: 0 incx : input int, optional Default: 1 overwrite_y : input int, optional Default: 0 offy : input int, optional Default: 0 incy : input int, optional Default: 1 Returns ------- x : rank-1 array('f') with bounds (*) y : rank-1 array('f') with bounds (*)param = drotmg(d1,d2,x1,y1) Wrapper for ``drotmg``. Parameters ---------- d1 : input float d2 : input float x1 : input float y1 : input float Returns ------- param : rank-1 array('d') with bounds (5)param = srotmg(d1,d2,x1,y1) Wrapper for ``srotmg``. Parameters ---------- d1 : input float d2 : input float x1 : input float y1 : input float Returns ------- param : rank-1 array('f') with bounds (5)c,s = zrotg(a,b) Wrapper for ``zrotg``. Parameters ---------- a : input complex b : input complex Returns ------- c : complex s : complexc,s = crotg(a,b) Wrapper for ``crotg``. Parameters ---------- a : input complex b : input complex Returns ------- c : complex s : complexc,s = drotg(a,b) Wrapper for ``drotg``. Parameters ---------- a : input float b : input float Returns ------- c : float s : floatc,s = srotg(a,b) Wrapper for ``srotg``. Parameters ---------- a : input float b : input float Returns ------- c : float s : float]]]]¬¬LŬʬϬԬ٬LŬʬϬԬ٬LŬʬϬԬ٬LŬʬϬԬ٬ŬʬϬԬ٬ŬʬϬԬ٬ŬʬϬԬŬʬϬԬŬʬϬԬŬʬϬԬŬʬŬʬŬʬŬʬŬʬ٬Ŭʬ٬ŬʬϬԬŬʬϬԬŬʬϬԬŬʬϬԬŬʬϬԬŬʬϬԬŬʬϬԬŬʬϬԬŬʬϬԬŬʬϬԬŬʬϬԬŬʬϬԬŬʬϬԬŬʬϬԬŬʬŬʬŬʬŬʬŬʬŬʬŬʬŬʬŬʬŬʬŬʬŬʬŬʬϬԬŬʬϬԬŬʬϬԬŬʬϬԬ ʬŬԬϬ ʬŬԬϬ ʬŬԬϬ ʬŬԬϬ6ʬŬԬϬ6ʬŬԬϬ6ʬŬԬϬ6ʬŬԬϬ*ʬŬԬϬ*ʬŬԬϬ*ʬŬԬϬ*ʬŬԬϬ*ʬŬԬϬ*ʬŬԬϬŬʬϬԬŬʬϬԬŬʬϬԬŬʬϬԬʬԬ٬ʬԬ٬ʬԬ٬ʬԬ٬ʬԬ٬ʬԬ٬ʬŬʬŬʬŬʬŬʬŬʬŬʬŬԬϬʬŬԬϬʬŬԬϬʬŬԬϬ*ʬŬ *ʬŬ *ʬŬ *ʬŬ *ʬŬ *ʬŬ *ʬŬԬϬ *ʬŬԬϬ *ʬŬԬϬ *ʬŬԬϬ 6ʬŬ-٬6ʬŬ-٬6ʬŬ-٬6ʬŬ-٬*ʬŬ-٬*ʬŬ-٬*ʬŬ-٬*ʬŬ-٬Ŭʬ-٬Ŭʬ-٬Ŭʬ-٬Ŭʬ-٬ʬŬ-٬ʬŬ-٬ʬŬ-٬ʬŬ-٬6ʬŬ-٬6ʬŬ-٬6ʬŬ-٬6ʬŬ-٬*ʬŬ-٬*ʬŬ-٬*ʬŬ-٬*ʬŬ-٬]L2:B]L2:B]L2:B]L2:B]LNB]LNB]LNB]LNB]LNB]LNBLBLBLBLBLBLB]LB]LB]LB]LB]LB]LB]N2-S]N2-S]N2-S]N2-S]N2-S]N2-S]N2-S]N2-S_ ~ 0 n tp`m Pl  l P@@k p0`j  eg @`Ud ] b ϏN`_ @Щ\ Y j|`$W {`U {@@S { Q p`O Q` N †йL { K ,`I пG g0hE ԁmC AsA @y? p`= к  ; 8 p6 4 ~2 01 V  / Äp@- Њ`+ ~pD* ~G( }P@=@' `O% `pK$ @~@ #  V! R` :0Y  P] d@ Ѐ@` %@ V0P P h  5н  ȇ |и)  r}3  `@ A`  ` 0~  л` >`v@ | e` ݨm ] Iо`7  .` 0@ P <` @P N` ٗ   `  p v0 @ Ŋ0` SP @ ~` u @l g``- pp% -P з XЬ 0` t P PV ZN` pG  @ 0 ` ԓP A@` zP @ fz zp y`0 Fp; č5 ȎA JG v` DP} ~ { y  @w p`t b@r ϖ0P p Ly@Pm xp`k x`i 2xPf ]b`d  Z b (_ P!] ƞ[ {`Y  W jT 0R @ r`P ЛT`N `?`L x0@`J  ``H <0`F Ę `D +0@B EP`y @   M= U0; 1pE`9  8 7 ~``5 X@2 P0 p. `, ʣм * ' -% p(.`( A.'GCC: (GNU) 10.2.1 20210130 (Red Hat 10.2.1-11) ( P  Hxp pI P   x    p  % }  @!7} C jv x %w@f@~  P"` Pp2 PnPB P0R Pb` Pr P  P r @ @`r @  r @| `$q @) } 3s `~ ;@=qx (@y (pDy `x (Gyx (rpK(`y (VOy7 y (RF z ( VUy (Yd`z (P]sz (4` { (dz ( 0h`t @ mt @ st @ @y u @~ ~ w @d v @ Њ  x @   w @ w @ '`w @a 6q XF ЩE q X9 Ts 0 c`s 0 ro n Pn p  |  `}  ` s 0 `4r 0p * t 8T 3s 8S  n 8  In I pv H.  v H" H1 Hv@@` H O H  ^u H m`u H\| HBp H/p% ``- `E5 H*; H`A H{G@ H+ Np ` Utp ` ]`p ` e"o `l0@ `uL? `P}$N H)^ H$n` H$~ HM P`U@ PmM PRM P`M PM P8M PSPU@ Pv ` P 0`o ( @l' o ('H 5@ PH D PPV S Pn b P  n q Po  @9` @T0 @@` @+P!@ H( H0[ H 8[@ H? @E H M  HT/0 @Z@ HbP Hj8` H r8p H`y H H|` H0` Ha} HF H`n H~Ьq HPs@ Hdзs  HJP` H+ HP: HBJ@ HhPAZ` H3j Hez| `P | `: `M@< H2 Hl `2`s Hl HkP{ `P% `{ `Q.u @ `6`7#  `7 @L2  `pGkA ` `NlP  `PV_  `]n ` he} ` hmx  h`vx  hy~~ ` h^`  h` ` hb  hC ` h( ~ h  h    ~ 4 n O `m j l  l @k `j g  d   b ' `_ B \ ] Y x W  `U  @S   Q  O s  N s L u5  K uP `I l G  E  C  A  ?  `= (  ; (* 8 1E 6 1` 4 z 2  1   /  @-  `+ * G( I7@' GR% In$ E # G! E` G E E@ E0 EL@ g           $@ ?` Z u   @ `   2 M` h  ` l l` v v` v# v> X r ` @     + F ` z     `  3 N Fi` F F F@ D D D  D& A \ w ` 4 ~ 4{ 4y 4@w Ft F4r FO p Fjm D`k Di Df D`d " b " _ -'] -B[ ]`Y x W #T #R #`P #`N `L `J 5`H P`F k`D @B  @ = '; '`9 ' 7 '.5 I2 d0 . `, ' * '' )% )2BKH~ T0_0 Zj!\'j`(I.>.  p A 1=b 13 Om  FaN=++@P@ [x@+L@W!K`:<PjT2Y6"`s$`Uй/ -<4? t0-QpQ[P:V]wd'y}Zt`lQ 7EPdp]* qMa/X@\Tp$?@si@0p2X~>$WfL$VPei# Cm``%PQp^5m0oj` _O@vI O%@1apG&IjTW48'@ ;FP= $0S@q,s4pH8fuV8o<^cP+ ]-!0[s^%i?k`[HH20QqAh*PhZ3_ 2P'gpU *bb&` ZPl#O CG]WIi5pR8Y%P,8@tU%76p$n8PQ5`[ReDs "f@9pGaVkB c7#@)H D ms c&1@ Z ()s$P0z@p(w=# W2p@ uz: %PoIO!3]@~n4p pm7@xsM&;N@N3r`/DPpb j<;L_S`lgpPt ?*?=\YzKYV@ 1Btd'@eP%s$J^ vU`P)@l@P(lP{q+'c{P,pf$i*w`D^f_`jW`:8e4 J>Z@jAMn+lxUr 20M U{olP?x`j)o PF@[dPL (oO3=i`j]gP0mw)Om -${p0*ofI$Y0COxPB@9y:497@.*` 9\H 8MH 56eQ@RE0G!!.@e0 :2`0c2;4u0P@k 7g?Hpz 5 qR'lк2;D_58.v /NY^g3G0gG$@B`!6z@h+`8p``EucPUQ ~+`R'`BZkGM`_qh {yh` p=~ t`rKp>-P;QPNPQ ~2+0f>$@>.`deUK@,d>`](JIL0 3:.lz4F05P &W M NivvP{ \3'u@;g"SmUCP j`o *R5U XPe[JPdtB0+\f?@X$`>|  > *L8>P<LP2nJ, { 0)E@ncwJ@w'm1/8 F@"N-<"$0zmet_EJA^@)Ze=D9+F+Pbr A(pg g0AHUw`bwи-A`isQpg0YD`.^:+yn`nP"@{P ,Pu`MIF!@xpD$-0$po0P4`W XlZ0[b~E` G.h0(z2P`e\PQOLP:K@u=f? Jd0% .xPc>0Ip``@{U@>v06$a g2,z0Z0yg2h hhkIQH@ ]*/Bir S/Px]081VFq UMHf`1 Z0o`wb\qpE0SXY@M)Pd2 7j3P SkneEZo2UnCK?Dowf0p,I_`h,TpTy0+MdJD(I3{fPpPC vN0E#02JP4B9`~ C7 7 @T0r0*#@q#C`1X,-@k60gRHApMbp7U!`@=//?d_Ca0`#{sMJP=0NT0|'#H-&0m0#|K1`xi0mSp#xx0o6Se2[V.ppuPODo/fB /F %qDz0)hvPj',PaS#l`CETj E6pOW&^Q`x@ y`T7 #uLE SAp"`H [o`2,r@| c41d; qpx jEpA]P65 eO"w3P@[P:Ap967@]y7. 8#p,43qnyp9K V^9%]29jUK@^tfpBP@LF@Yh!^PfpBA1yG k(c\v}/Ma@Md%\PD m)n&:{PJhlm`$JQq6_s?1xp{a 0#k`I.PmP(ePv.F [-cp)@\ZнDe W4o Z0'#0CprZ Rs / tnr@aI. 31)4Op;&I,7VD)@0kE0qf %xWPF+Pidyy crpTPFK<ps!*'4Th} n@Grm ]J?aal`;`b G{P8w`9&п%(UXp@r8 1P4t$A @pg1pA 00e!p}I5w`[)'@Y`w;KN [pEr0+ \> qeF =cwTo?)0+&09`S*IB LD+{El&T sh8 vpw@!06_W@+RP?ipFi+tZ@;@ mFyPMxP*s$Pt.WC#8V0C#9{zgI@ B@&wPcX0100v@\PVy `pg0#X@=z Q t0P99M Iw%|#0m~{|:90aa+3Pas,2e ]gDl`SZ@^@y0^pwPn#RpP`- #v*@LS0\1cR p`q>0a6@NXu"l00 nE]zs[C@u`'Pi-= HSI_6s Pn@|j@e`U&@8pstSP FYNptPY`Q`` &c,V,7bp{5gplUP]`\Bup}w^`"B8/`Tf,vo(t c@5 2-LV uNY0Fp`vk0uB`01``jl5p  ( >>@UR0<^ 8I7/G+.6C@`p`y^xY,$P l)&@EL#GnzEIPe[OpPJ_ ?0DUP[HV0iJ8L  м1 :N`1,QS9 &S [a+K*$[0 ?Jv0h`4 ?H #d`4:B@ @wq&iH`&`ib`Mp)7H02p! c%0md@CC-dK`T 7P6Qggp F`]Nq@ Oi;qz` " >B -.G\;4rgVOG0/nS+u1p' ?obpbp3t?"2R@#N<FM;q%PgpuDifcy<ap& 4W"`)@I`Ed<y  o"hwPl:X?PCgW0L$`{S0S-q\qXg'"zwY1 ?0KX_\{ {="оPeQ5"_P_ 3D5@V}p@cA%vh ~ \=)0ipv0d.@P A@*m=_08 LP/^*&o{p4 upi)0\@fYf]Gp|O+O].pbk @V`3( AGUp5`ay()U\p+0kvxPHV@ru0PY0!0Bop `C 9RprH()p [`&KM`a /p9~RY* WiRp TP@qPxLkkG@49@kPo+ VKi$s!De^Ycp}c "vp6KzzJ;sPTp6;!`23:pr<pNP'0mO\pN60 Yv}l\9 ^`2 F'`zp wHQtp YлMpR R#)]up=jY\PJ4RI[ 94<MRj`E'pG!jp4`q d80Upy(@/fo |e [`{5p -PIp00I! Q_@ q,{p["Y0wac_e0WQO( <_7 7Xkp )@ Wbv-p(hNv`=`PK*0GP!`E/0\:%p9r&+d` ULvoK`XG/[X#U@M@6IY `1kW  4SFw< Y93`j=aZ&90 =ipfP;ArnE`T0T on#=`\PI@7l`/ -(C`?0{@* 0[*LB@YB0@lF@=N B?-WF`-@M-7qrp0MY: h@@3`E]m`v;t'y`2oZ?>]]`[;M4*`R6pHKvV;.0a0I4pYgfKDEN>@^"0L S Dj855@ (@ jP@1|  sRj@io 5^ :+ x/$3`NnNP?$`b0yCn'RU$0FLusF. %jbPZ0%GpscM@U\[@ 9k=*p1HpG ( BSUPbPwzpSlpPz BPQCa 6/5Q@GRC"`hxlP`z;Q7 r7_70lP$>NpPp 7Z | }6@ 'P{1 V<#I<PWRSW^ QpDj0=104@/] Kcc7 $JI 1t@@o N@Kf0piazmA;< b` N0{C *@>P2>@ `pI4D>JO#`pp4  "P2r0"0=KYgu#1?N\jx9+9GUcq  $ 1 ? M [ i u            !!'!5!C!Q!_!m!{!!!!!!!!!""!"/"="K"a"o"}""""""""""##$#1#?#M#Z#h#v##########$$$*$8$F$R$`$m${$$$$$$$$$$%%#%4%B%O%]%k%y%%%%%%%%%% &&%&3&A&O&]&k&y&&&&&&&&&&''$'2'?'L'Z'h'v''''''''''(((-(;(I(W(e(s(((((((((()) )+)9)G)U)c)q))))))))))) **(*7*E*S*b*p*********** ++%+3+@+M+[+i+x++++++++++,,,,,:,H,],k,y,,,,,,,,,,---,-9-G-U-c-p-~---------- ..'.5.C.P.^.l.в@z..........//$/2/?/M/[/i/w//////////000*080F0T0a0o0~0000000000 11'171E1S1a1o1|1111111111 22&242B2P2j2x2222222222333,3:3H3V3d3q33333333333 44&444C4Q4_4m4{444444444455"505>5K5Y5f5u55555555555 6616?6L6[6i6w666666666677#707=7K7Y7g7s77777777777 88&848B8P8^8l8{888888888899 9.9<9J9X9f9{9999999999:: :.:<: X:f:t::::::::::;;;,;:;G;U;c;q;;;;;;;;;;; <<'<5<C<P<^<l<z<<<<<<<<<===+=:=H=V=d=q==========>>>,>:>H>V>d>x>>>>>>>>>>???+? E?R?`?n?|??????????@@"@/@<@J@X@f@t@@@@@@@@@@ AA'A5ABAPA]AkAyAAAAAAAAABBB*B8BFBSB`BnB|BBBBBBBBBB"C"C0C=CKCYChCuCCCCCCCCCCC DD)D7DDDSDaDoD}DDDDDDDDDDEE#E1E>ELEZEhExEEEEEEEEEE FF(F5FCFQF_FmF{FFFFFFFFFFGGG-G;GIGWGeGsGGGGGGGGGGHHH+H9HGHUHcHqHHHHHHHHHHHII$I2I?IMI[IiIwIIIIIIIIIIJJJ,J9JGJUJcJqJJJJJJJJJJJ KK%K3KBKPK^KlKzKKKKKKKKKK LL%L2L@LML`LoL}LLLLLLLLLL MM%M3MAMOM]MkMyMMMMMMMMMNNN)N7NENSNbNpN~NNNNNNNNNN OO.O=OKOYOgOvOOOOOOOOOOPPP,P:PHPVPdPqPPPPPPPPPPP QQ'Q5QCQQQ_QmQ{QQQQQQQQQQ RR%R3RAROR]RkRxRRRRRRRRRRSS S.SULUZUgUuUUUUUUUUUUVVV+V8VFVSVaVpV~VVVVVVVVVVWW W.W;WIWWWdWrWWWWWWWWWWXXX+X9XOX]XkXyXXXXXXXXXYYY,Y:YHYVYdYrYYYYYYYYYYYZZ#Z1Z?ZMZ[ZiZwZZZZZZZZZZ[[[,[:[H[_[m[{[[[[[[[[[[ \\%\3\A\O\]\k\y\\\\\\\\\\]]]-];]I]W]d]r]]]]]]]]]]^^^)^6^D^Q^_^m^z^^^^^^^^^^__"_6_C_R_`_n_|_________`` `.`<`J`X`f`t``````````aaa+a9aGaUacaqaaaaaaaaaaabb$b2bGbUbcbqbbbbbbbbbbbcc#c7cEcScbcwccccccccccddd+d9dGdUdcdqddddddddddee"e0e>eLeYeheveeeeeeeeeefff)f7fEfSfafnf|ffffffffffgg!g/g=gKgXgfgtggggggggggg hh(h6hDhRhkhyhhhhhhhhhhiii-iCiQi_imi{iiiiiiiiiijjj-j>jLjZjijvjjjjjjjjjjkkk+k9kFkTkbkpk~kkkkkkkkkk ll%l1l?lMl[lilwllllllllllmm!m/m=mImWmfmtmmmmmmmmmmnnn,n:nHnUninxnnnnnnnnnnoo o.o:oHoUocopo}oooooooooopp#p2p@pNp\pjpwppppppppppqqq-q:qHqVqcqqqqqqqqqqq rr&r3rArOr]rkryrrrrrrrrrrss#s0s>sLsYsgsussssssssstt"t.tzJzWzfztzzzzzzzzzzz {{%{3{A{O{]{j{x{{{{{{{{{{|||+|8|crtstuff.cderegister_tm_clones__do_global_dtors_auxcompleted.0__do_global_dtors_aux_fini_array_entryframe_dummy__frame_dummy_init_array_entry_fblasmodule.cnextforcombPy_XDECREFcomplex_double_from_pyobj.part.0complex_double_from_pyobjint_from_pyobj_fblas_errorcapi_kwlist.119capi_kwlist.118capi_kwlist.117capi_kwlist.116capi_kwlist.103capi_kwlist.102capi_kwlist.101capi_kwlist.100capi_kwlist.15capi_kwlist.14capi_kwlist.13capi_kwlist.12capi_kwlist.54capi_kwlist.55capi_kwlist.38capi_kwlist.41capi_kwlist.36capi_kwlist.37capi_kwlist.40capi_kwlist.39capi_kwlist.43capi_kwlist.42capi_kwlist.44capi_kwlist.45capi_kwlist.47capi_kwlist.46capi_kwlist.22capi_kwlist.23capi_kwlist.24capi_kwlist.25capi_kwlist.31capi_kwlist.30capi_kwlist.35capi_kwlist.33capi_kwlist.34capi_kwlist.32capi_kwlist.11capi_kwlist.10capi_kwlist.19capi_kwlist.18capi_kwlist.3capi_kwlist.2capi_kwlist.52capi_kwlist.53capi_kwlist.17capi_kwlist.16capi_kwlist.21capi_kwlist.20capi_kwlist.1capi_kwlist.0capi_kwlist.29capi_kwlist.28capi_kwlist.81capi_kwlist.79capi_kwlist.78capi_kwlist.80capi_kwlist.27capi_kwlist.26capi_kwlist.77capi_kwlist.76capi_kwlist.85capi_kwlist.84capi_kwlist.105capi_kwlist.104capi_kwlist.106capi_kwlist.107capi_kwlist.9capi_kwlist.7capi_kwlist.8capi_kwlist.6capi_kwlist.83capi_kwlist.82capi_kwlist.109capi_kwlist.111capi_kwlist.110capi_kwlist.108capi_kwlist.98capi_kwlist.99capi_kwlist.97capi_kwlist.96capi_kwlist.113capi_kwlist.112capi_kwlist.114capi_kwlist.115capi_kwlist.70capi_kwlist.5capi_kwlist.4capi_kwlist.75capi_kwlist.73capi_kwlist.71capi_kwlist.72capi_kwlist.74capi_kwlist.135capi_kwlist.133capi_kwlist.134capi_kwlist.132capi_kwlist.123capi_kwlist.122capi_kwlist.139capi_kwlist.141capi_kwlist.131capi_kwlist.140capi_kwlist.138capi_kwlist.130capi_kwlist.121capi_kwlist.120capi_kwlist.127capi_kwlist.129capi_kwlist.137capi_kwlist.128capi_kwlist.126capi_kwlist.136capi_kwlist.125capi_kwlist.124capi_kwlist.89capi_kwlist.88capi_kwlist.91capi_kwlist.87capi_kwlist.86capi_kwlist.90capi_kwlist.145capi_kwlist.149capi_kwlist.144capi_kwlist.148capi_kwlist.51capi_kwlist.50capi_kwlist.69capi_kwlist.143capi_kwlist.147capi_kwlist.68capi_kwlist.142capi_kwlist.146capi_kwlist.49capi_kwlist.48capi_kwlist.67capi_kwlist.66capi_kwlist.95capi_kwlist.94capi_kwlist.93capi_kwlist.92capi_kwlist.65capi_kwlist.63capi_kwlist.64capi_kwlist.62capi_kwlist.59capi_kwlist.58capi_kwlist.61capi_kwlist.60capi_kwlist.57capi_kwlist.56moduledeff2py_routine_defsf2py_module_methodsdoc_f2py_rout__fblas_srotgdoc_f2py_rout__fblas_drotgdoc_f2py_rout__fblas_crotgdoc_f2py_rout__fblas_zrotgdoc_f2py_rout__fblas_srotmgdoc_f2py_rout__fblas_drotmgdoc_f2py_rout__fblas_srotdoc_f2py_rout__fblas_drotdoc_f2py_rout__fblas_csrotdoc_f2py_rout__fblas_zdrotdoc_f2py_rout__fblas_srotmdoc_f2py_rout__fblas_drotmdoc_f2py_rout__fblas_sswapdoc_f2py_rout__fblas_dswapdoc_f2py_rout__fblas_cswapdoc_f2py_rout__fblas_zswapdoc_f2py_rout__fblas_sscaldoc_f2py_rout__fblas_dscaldoc_f2py_rout__fblas_cscaldoc_f2py_rout__fblas_zscaldoc_f2py_rout__fblas_csscaldoc_f2py_rout__fblas_zdscaldoc_f2py_rout__fblas_scopydoc_f2py_rout__fblas_dcopydoc_f2py_rout__fblas_ccopydoc_f2py_rout__fblas_zcopydoc_f2py_rout__fblas_saxpydoc_f2py_rout__fblas_daxpydoc_f2py_rout__fblas_caxpydoc_f2py_rout__fblas_zaxpydoc_f2py_rout__fblas_sdotdoc_f2py_rout__fblas_ddotdoc_f2py_rout__fblas_cdotudoc_f2py_rout__fblas_zdotudoc_f2py_rout__fblas_cdotcdoc_f2py_rout__fblas_zdotcdoc_f2py_rout__fblas_snrm2doc_f2py_rout__fblas_scnrm2doc_f2py_rout__fblas_dnrm2doc_f2py_rout__fblas_dznrm2doc_f2py_rout__fblas_sasumdoc_f2py_rout__fblas_scasumdoc_f2py_rout__fblas_dasumdoc_f2py_rout__fblas_dzasumdoc_f2py_rout__fblas_isamaxdoc_f2py_rout__fblas_idamaxdoc_f2py_rout__fblas_icamaxdoc_f2py_rout__fblas_izamaxdoc_f2py_rout__fblas_sgemvdoc_f2py_rout__fblas_dgemvdoc_f2py_rout__fblas_cgemvdoc_f2py_rout__fblas_zgemvdoc_f2py_rout__fblas_sgbmvdoc_f2py_rout__fblas_dgbmvdoc_f2py_rout__fblas_cgbmvdoc_f2py_rout__fblas_zgbmvdoc_f2py_rout__fblas_ssbmvdoc_f2py_rout__fblas_dsbmvdoc_f2py_rout__fblas_chbmvdoc_f2py_rout__fblas_zhbmvdoc_f2py_rout__fblas_sspmvdoc_f2py_rout__fblas_dspmvdoc_f2py_rout__fblas_cspmvdoc_f2py_rout__fblas_zspmvdoc_f2py_rout__fblas_chpmvdoc_f2py_rout__fblas_zhpmvdoc_f2py_rout__fblas_ssymvdoc_f2py_rout__fblas_dsymvdoc_f2py_rout__fblas_chemvdoc_f2py_rout__fblas_zhemvdoc_f2py_rout__fblas_sgerdoc_f2py_rout__fblas_dgerdoc_f2py_rout__fblas_cgerudoc_f2py_rout__fblas_zgerudoc_f2py_rout__fblas_cgercdoc_f2py_rout__fblas_zgercdoc_f2py_rout__fblas_ssyrdoc_f2py_rout__fblas_dsyrdoc_f2py_rout__fblas_csyrdoc_f2py_rout__fblas_zsyrdoc_f2py_rout__fblas_cherdoc_f2py_rout__fblas_zherdoc_f2py_rout__fblas_ssyr2doc_f2py_rout__fblas_dsyr2doc_f2py_rout__fblas_cher2doc_f2py_rout__fblas_zher2doc_f2py_rout__fblas_ssprdoc_f2py_rout__fblas_dsprdoc_f2py_rout__fblas_csprdoc_f2py_rout__fblas_zsprdoc_f2py_rout__fblas_chprdoc_f2py_rout__fblas_zhprdoc_f2py_rout__fblas_sspr2doc_f2py_rout__fblas_dspr2doc_f2py_rout__fblas_chpr2doc_f2py_rout__fblas_zhpr2doc_f2py_rout__fblas_stbsvdoc_f2py_rout__fblas_dtbsvdoc_f2py_rout__fblas_ctbsvdoc_f2py_rout__fblas_ztbsvdoc_f2py_rout__fblas_stpsvdoc_f2py_rout__fblas_dtpsvdoc_f2py_rout__fblas_ctpsvdoc_f2py_rout__fblas_ztpsvdoc_f2py_rout__fblas_strmvdoc_f2py_rout__fblas_dtrmvdoc_f2py_rout__fblas_ctrmvdoc_f2py_rout__fblas_ztrmvdoc_f2py_rout__fblas_strsvdoc_f2py_rout__fblas_dtrsvdoc_f2py_rout__fblas_ctrsvdoc_f2py_rout__fblas_ztrsvdoc_f2py_rout__fblas_stbmvdoc_f2py_rout__fblas_dtbmvdoc_f2py_rout__fblas_ctbmvdoc_f2py_rout__fblas_ztbmvdoc_f2py_rout__fblas_stpmvdoc_f2py_rout__fblas_dtpmvdoc_f2py_rout__fblas_ctpmvdoc_f2py_rout__fblas_ztpmvdoc_f2py_rout__fblas_sgemmdoc_f2py_rout__fblas_dgemmdoc_f2py_rout__fblas_cgemmdoc_f2py_rout__fblas_zgemmdoc_f2py_rout__fblas_ssymmdoc_f2py_rout__fblas_dsymmdoc_f2py_rout__fblas_csymmdoc_f2py_rout__fblas_zsymmdoc_f2py_rout__fblas_chemmdoc_f2py_rout__fblas_zhemmdoc_f2py_rout__fblas_ssyrkdoc_f2py_rout__fblas_dsyrkdoc_f2py_rout__fblas_csyrkdoc_f2py_rout__fblas_zsyrkdoc_f2py_rout__fblas_cherkdoc_f2py_rout__fblas_zherkdoc_f2py_rout__fblas_ssyr2kdoc_f2py_rout__fblas_dsyr2kdoc_f2py_rout__fblas_csyr2kdoc_f2py_rout__fblas_zsyr2kdoc_f2py_rout__fblas_cher2kdoc_f2py_rout__fblas_zher2kdoc_f2py_rout__fblas_strmmdoc_f2py_rout__fblas_dtrmmdoc_f2py_rout__fblas_ctrmmdoc_f2py_rout__fblas_ztrmmdoc_f2py_rout__fblas_strsmdoc_f2py_rout__fblas_dtrsmdoc_f2py_rout__fblas_ctrsmdoc_f2py_rout__fblas_ztrsmwrap_dummy_g77_abi.cblas_lapack_wrappers.cfortranobject.cset_datasave_defformat_defget_elsizecheck_and_fix_dimensionsfortran_callfortran_getattrfortran_deallocfortran_repr__func__.2__func__.1fortran_setattr__FRAME_END__zdotcwrp___GNU_EH_FRAME_HDR_finiF2PyGetThreadLocalCallbackPtrzladivwrp__npy_f2py_ARRAY_API_GLOBAL_OFFSET_TABLE_wzdotc_PyFortranObject_NewF2PyCapsule_Checkcladivwrp__npy_f2py_ARRAY_APIPyArray_RUNTIME_VERSIONPyFortran_TypeF2PyCapsule_AsVoidPtrcopy_ND_array__TMC_END__wcdotc___dso_handlef2py_describezdotuwrp_F2PyDict_SetItemStringPyFortranObject_NewAsAttrndarray_from_pyobjcdotuwrp_f2py_size_implwzdotu_cdotcwrp_wzladiv_wcdotu_wcladiv_F2PySwapThreadLocalCallbackPtr_DYNAMIC_initF2PyCapsule_FromVoidPtrscipy_zlapmt_scipy_cgbtrf_scipy_dgelsy_scipy_zgemm_scipy_dlantp_scipy_ztrcon_scipy_zpocon_scipy_dlaqr4_scipy_sspcon_scipy_slarrb_scipy_zpptrf_scipy_sdisna_scipy_cgemqrt_scipy_zher2k_scipy_slartgp_PyExc_ImportErrorscipy_zlarnv_scipy_clantb_scipy_ssbgvd_scipy_dtpqrt_scipy_slaqge_scipy_icamax_scipy_zhetrs2_scipy_cgesvd_scipy_zlartv_scipy_cptrfs_scipy_zbdsqr_scipy_dgelq2_scipy_cgebd2_scipy_slasd6_scipy_zposv_scipy_ztrsv_scipy_csptrs_scipy_zlaqr5_scipy_dggqrf_scipy_ssfrk_scipy_dormhr_scipy_dppequ_scipy_strevc_scipy_slaed7_scipy_dggrqf_scipy_chseqr_scipy_zgeqrt_scipy_dormtr_scipy_dpotri_scipy_cunm2r_scipy_checon_scipy_dlasdq_scipy_dtrmm_scipy_crotg_scipy_slamch_scipy_dsytrd_scipy_srotmg_scipy_sgbcon_scipy_dtrsm_scipy_dlaed6_scipy_dggesx_scipy_csyrk_scipy_cheevr_scipy_ztrtri_scipy_zpotri_scipy_dpotf2_scipy_cher_scipy_zhpr2_scipy_clarfb_scipy_cspcon_scipy_dpotrf_scipy_csymv_scipy_dlasda_scipy_ctrsen_scipy_ztpqrt_scipy_dlarrb_scipy_slagtm_scipy_spbcon_scipy_cgbequ_scipy_crot_scipy_strexc_scipy_cpbsvx_scipy_sormtr_scipy_dgeql2_scipy_cstemr_scipy_dlasyf_scipy_shsein_scipy_slauum_memset@@GLIBC_2.2.5scipy_dsygv_scipy_sorm2l_scipy_strrfs_scipy_dlaqsb_scipy_ssbgvx_PyException_SetCausescipy_ztprfb_scipy_cpotrs_scipy_shgeqz_scipy_dlaln2_scipy_slasd0_snprintf@@GLIBC_2.2.5scipy_ssbgst_scipy_cggglm_scipy_zlansp_scipy_sgsvj0_scipy_dspcon_scipy_dsbevx_scipy_sgelq2_scipy_ssymv_scipy_ztfttr_scipy_dlaqr1_scipy_sggglm_scipy_ssyr2k_scipy_clatrz_scipy_sorglq_scipy_ztbsv_scipy_iladlc_scipy_sgeql2_scipy_ccopy_scipy_sgebrd_scipy_sorgql_scipy_dlasq4_scipy_slaexc_scipy_zlantb_scipy_clarrv_scipy_slag2d_scipy_dsterf_scipy_drot_scipy_zlatrd_scipy_dpocon_scipy_cungrq_scipy_zgtrfs_scipy_slals0_scipy_dlarre_scipy_dlagtf_scipy_cgecon_scipy_zher_scipy_slarre_scipy_dtpsv_scipy_sptts2_scipy_zscal_scipy_sspgvx_scipy_izamax_scipy_clascl_scipy_cgghrd_scipy_cgesdd_scipy_dlaswp_scipy_clag2z_scipy_slaic1_scipy_sormqr_scipy_spftri_scipy_sgeqrfp_PyExc_ValueErrorscipy_cher2k_PyType_Readyscipy_slaed5_scipy_dtgsja_scipy_ctrrfs_scipy_sgbtrf_scipy_ztrti2_scipy_zlapll_scipy_dgeqrfp_PyLong_FromVoidPtrscipy_zpotrf_scipy_zlarzt_scipy_ctbsv_scipy_zppsvx_scipy_zhpevx_scipy_cgbcon_scipy_csysv_scipy_slaqr5_scipy_zdscal_scipy_dgerqf_scipy_ztptri_scipy_claqr4_scipy_slarrj_scipy_dsytrf_scipy_dgebak_scipy_sopmtr_scipy_sggbak_scipy_dormql_scipy_slacn2_PyLong_AsVoidPtrscipy_slasrt_scipy_zuncsd_scipy_dlanhs_scipy_slaln2_scipy_slar1v_scipy_dtrtri_scipy_chegv_scipy_ztrmm_scipy_zlaed0_scipy_sstedc_scipy_ilazlr_scipy_zsytri2x_scipy_zsprfs_scipy_dgetrs_scipy_dsgesv_scipy_dtzrzf_scipy_zsytri2_scipy_dlae2_scipy_dlanv2_scipy_dggbak_scipy_dpbcon_scipy_cgbsv_scipy_slaqr2_scipy_zhptri_scipy_zgecon_scipy_sspevd_scipy_stgsen_scipy_zhpgst_scipy_dlaruv_scipy_cpotrf_scipy_zlacon_scipy_zhfrk_scipy_dlaqps_PyMem_Freescipy_dtpqrt2_scipy_cpoequb_scipy_cgeev_PyExc_SystemErrorscipy_zpbtrf_scipy_slanv2___gmon_start__scipy_cptts2_scipy_dorgr2_scipy_zhecon_scipy_cunmr3_scipy_dgerq2_scipy_chegst_scipy_cbbcsd_scipy_slags2_scipy_ctrexc_scipy_zlasyf_scipy_zlartg_scipy_dlaeda_scipy_dgehd2_scipy_dlaqr2_scipy_dlauu2_scipy_stbcon_scipy_sgeequb_scipy_spttrf_scipy_zlaqps_scipy_zgeqr2p_scipy_sormr3_scipy_slarzt_scipy_zgeqrt2_scipy_slalsd_scipy_dsytri2_scipy_zlahr2_scipy_dlasd3_scipy_cgelss_scipy_zsptrs_scipy_zsyconv_scipy_dlartgp_scipy_zlaev2_scipy_zspmv_scipy_slatps_scipy_zgbsv_scipy_sasum_scipy_zhpev_scipy_dpbstf_scipy_chpsv_scipy_stpsv_scipy_zhegvx_scipy_cgetri_scipy_dgeqr2p_scipy_ssytrs_scipy_ssymm_scipy_dstev_scipy_dlarfgp_scipy_cpotri_scipy_clar2v_scipy_zgesv_scipy_zhetf2_scipy_zherfs_scipy_zggev_scipy_dorg2r_scipy_dsyevx_PyCapsule_Typescipy_ssyrfs_scipy_zposvx_PyUnicode_FromStringscipy_cbdsqr_scipy_clagtm_scipy_ssyevx_scipy_dgeqlf_scipy_sorghr_scipy_dlargv_scipy_sstein_scipy_zlaesy_scipy_dgeesx_scipy_dgsvj1_scipy_chbgv_scipy_ctrmm_scipy_zpptrs_scipy_dsbgv_scipy_dgbbrd_scipy_chpev_scipy_zlaqp2_scipy_dtftri_scipy_dsygvx_scipy_sgemm_scipy_dpttrs_PyErr_NoMemoryscipy_claqr5_scipy_clacrm_scipy_dtbsv_scipy_chegvd_scipy_ilauplo_scipy_cunghr_scipy_clalsa_scipy_ssyevr_scipy_slasd5_scipy_claswp_scipy_dgetf2_scipy_ssbevx_scipy_cgtts2_scipy_sgees_scipy_clarnv_scipy_clansp_PyInit__fblasscipy_slatrd_scipy_dormlq_scipy_sspgvd_scipy_dlapy3_scipy_cgelq2_scipy_ctpttr_scipy_slaed0_scipy_sgbtrs_scipy_ssyswapr_scipy_dlaqge_scipy_dpprfs_scipy_zgttrf_scipy_ssygvx_scipy_zhpsv_scipy_slabrd_scipy_sggrqf_scipy_zlanht_scipy_sgejsv_scipy_dorcsd_scipy_dormrz_scipy_sgesv_scipy_chprfs_scipy_stprfs_scipy_sptsvx_scipy_zlarfx_scipy_zcopy_scipy_ctpttf_scipy_sgtsvx_scipy_dlasd6_scipy_sgels_scipy_spocon_scipy_zhptrd_scipy_zungql_scipy_zggevx_scipy_cgemm_scipy_dlasdt_scipy_csytri2_malloc@@GLIBC_2.2.5scipy_cgtsv_scipy_zhpgvd_scipy_ctprfb_scipy_cgeru_scipy_dlansy_scipy_zdrscl_scipy_cgetrf_scipy_zdotu_scipy_ssyrk_scipy_dlalsa_scipy_cgesv_PyExc_TypeErrorscipy_sorgr2_scipy_dlarrk_scipy_dlacpy_scipy_sopgtr_scipy_spbsv_scipy_dlarrv_scipy_ztpmqrt_scipy_zhbgst_scipy_zhetrf_scipy_zgbbrd_scipy_sgemqrt_scipy_spotrf_scipy_slansy_scipy_sgesvd_scipy_dsygvd_scipy_csteqr_scipy_dsptrs_scipy_dlatbs_scipy_strsna_scipy_ztrttp_PyExc_ModuleNotFoundErrorscipy_slartv_scipy_claqr2_scipy_cheevx_scipy_sladiv_scipy_chbgvd_scipy_zlar2v_scipy_zsytrf_scipy_slamrg_scipy_zheev_scipy_zgeevx_scipy_sporfs_scipy_dggev_scipy_dpptrf_scipy_dgtsvx_scipy_clansb_scipy_dpotrs_scipy_dgbequ_scipy_cppequ_scipy_dnrm2_scipy_sptrfs_scipy_dswap_scipy_ssbev_scipy_zgebrd_scipy_slacon_scipy_dlaed5__PyObject_Newscipy_chegvx_scipy_ssteqr_scipy_cung2l_scipy_stpttr_scipy_sorgbr_scipy_ssytri2_scipy_chetd2_scipy_dlartgs_scipy_clags2_scipy_sbdsdc_scipy_spstrf_scipy_dtrsyl_PyComplex_Typescipy_zsyr2k_scipy_cpbtf2_scipy_ztrtrs_scipy_zpotrs_scipy_sgelss_scipy_ztfsm_scipy_slaqsy_scipy_zhpmv_scipy_dsptrd_scipy_zhbevx_scipy_cupgtr_PyOS_snprintfscipy_slargv_scipy_zhemm_scipy_sgbequ_scipy_ctrsv_scipy_zgbequb_scipy_zlauum_scipy_claed7_scipy_cppcon_scipy_zgees_scipy_slantb_scipy_dlasq3_scipy_dlaed0_scipy_cgglse_scipy_ilaclc_scipy_sstev_scipy_dtprfs_scipy_zsytrs2_PyUnicode_FromFormatscipy_sgetf2_scipy_sgeev_scipy_zhetri2_scipy_dsyevr_scipy_sstevd_scipy_zgeqp3_scipy_zlaqr1_scipy_sgesdd_scipy_cpftrf_scipy_cpbtrs_scipy_dlaexc_scipy_ctrmv__Py_FatalErrorFuncscipy_zpbtf2_scipy_zgeqlf_scipy_clangb_scipy_clarzt_scipy_dspgv_scipy_cptsv_scipy_dtrevc_scipy_zgerqf_scipy_slantr_scipy_dger_scipy_ctrtri_scipy_sgesvj_scipy_cgeevx_scipy_sspsvx_scipy_chptrd_scipy_dorm2r_scipy_chpr2_scipy_zunmrq_scipy_sger_scipy_scsum1_scipy_dormrq_scipy_zggbak_scipy_zlabrd_scipy_dlarrf_scipy_dcabs1_scipy_zpftrf_scipy_ssygvd_scipy_dgeqrf_scipy_zgeqrfp_scipy_dsyrfs_scipy_cgerfs_scipy_ztrsyl_scipy_drotg_scipy_cpoequ_scipy_csyr_scipy_claqsy_scipy_dlarfx_scipy_dlatrz_scipy_zlagtm_scipy_dlabrd_scipy_dorgql_scipy_zggrqf_scipy_slaqr1_scipy_dlar2v_scipy_zlansy_scipy_dlanst_PyComplex_AsCComplexscipy_dgglse_scipy_dpbrfs_scipy_zgbtrs_scipy_sstevx_scipy_zlarcm_scipy_clalsd_scipy_dzsum1_scipy_zsymm_scipy_zgelqf_scipy_sgeqr2_scipy_zpbsv_PyErr_Formatscipy_dlarra_scipy_dhseqr__ITM_deregisterTMCloneTablescipy_sgeevx_scipy_dgghrd_scipy_zgeqrt3_scipy_sppsvx_scipy_csyswapr_scipy_stgex2_scipy_cppsvx_scipy_chpgvd_scipy_sdot_scipy_dgelss_scipy_ztgsen_scipy_dgeqrt3_scipy_clahr2_scipy_slartg_PyNumber_Longscipy_dlabad_scipy_dsymm_scipy_clartv_scipy_dlatps_scipy_clatrd_scipy_claqsb_scipy_ztbtrs_scipy_zlaqr0_scipy_sorg2r_scipy_claed0_scipy_slae2_scipy_dspevd_scipy_slasv2_scipy_zgeequb_scipy_csyr2k_scipy_dspgvd_scipy_cgesc2_scipy_dorgl2_scipy_ctftri_scipy_ssptri_scipy_zhemv_scipy_zptrfs_scipy_dstevx_scipy_slasq6_PyErr_ExceptionMatchesscipy_dsptri_PyErr_Occurredscipy_dlaed3_scipy_dlaebz_scipy_slaed6_scipy_ctrsna_scipy_ddisna_scipy_sgehrd_scipy_claqhp_scipy_dtrmv_scipy_sgeesx_scipy_ztpqrt2_scipy_clacrt_scipy_csptri_scipy_dgtts2_scipy_cherk_scipy_zlanhb_scipy_zgebd2_free@@GLIBC_2.2.5scipy_dlapll_scipy_stfttp_scipy_ctgsen_scipy_spprfs_PyLong_AsDoublescipy_dlartv_scipy_zpbstf_scipy_sgelqf_scipy_ssbgv_scipy_dpptrs_scipy_slaqsb_scipy_dsteqr_scipy_zhetrd_scipy_dorgrq_strlen@@GLIBC_2.2.5scipy_clange_scipy_sormlq_scipy_clanhf_scipy_cunmhr_scipy_dsysvx_scipy_stptri_scipy_chptri_scipy_clarf_scipy_cggev_scipy_slatrs_scipy_dtfttp_scipy_strtri_scipy_chbev__ITM_registerTMCloneTablescipy_chesv_scipy_chgeqz_scipy_dgtrfs_scipy_dgsvj0_scipy_drscl_scipy_slarrv_scipy_dlaic1_scipy_cpotf2_scipy_shseqr_scipy_slaed9_scipy_cungbr_scipy_clarz_scipy_chegs2_scipy_zlacp2_scipy_sgsvj1_scipy_zgebak_scipy_chbmv_scipy_stbmv_scipy_ssytrd_scipy_zcposv_scipy_zlag2c_scipy_cggesx_scipy_dsygst_scipy_dgebrd_PyLong_AsLongAndOverflowscipy_dlaed4_scipy_dptts2_scipy_dtrcon_scipy_dorml2_scipy_zgghrd_scipy_zunmtr_scipy_clapll_PyCapsule_Newscipy_zunmlq_scipy_dgbtf2_scipy_dsbmv_scipy_ztpttr_PyFloat_Typescipy_zlanhs_scipy_sgeqrf_scipy_clauu2_scipy_claqp2_PyComplex_FromDoublesscipy_spptrf_scipy_cpbequ_scipy_ctpmqrt_scipy_slatdf_scipy_cgerc_scipy_zheequb_scipy_sgeqp3_scipy_slarzb_scipy_csscal_scipy_dlatrd_scipy_cunmql_scipy_stpmv_scipy_chpmv_scipy_zlaqr3_scipy_cgehrd_scipy_dlasd7_scipy_ztrsna_scipy_sptsv_scipy_zhpgvx_scipy_strcon_scipy_zsymv_scipy_dlarzb_scipy_cunmr2_scipy_slascl___cxa_finalize@@GLIBC_2.2.5scipy_slatbs_scipy_slapmr_scipy_cgges_scipy_slasy2_scipy_slassq_scipy_stpqrt2_scipy_cposv_scipy_claqgb_scipy_zgeqr2_scipy_cptcon_scipy_zhpgv_scipy_dsygs2_scipy_ilaver_scipy_zpstrf_scipy_clapmt_scipy_sspgv_scipy_dlapmt_scipy_cgeqr2_scipy_spptrs_scipy_cgtrfs_scipy_slaein_scipy_zptsv_scipy_cgeqr2p_scipy_cgerq2_scipy_sgebal_scipy_ilaslr_scipy_sgelsd_scipy_cung2r_scipy_dlasy2_scipy_clansy_scipy_ctrttf_scipy_sgerfs_scipy_sggesx_scipy_dgesv_scipy_cpptrs_scipy_dpoequ_scipy_zgeru_scipy_zunmrz_scipy_zhbgvx_scipy_cpbsv_scipy_spbtf2_scipy_csytrf_scipy_cpftri_scipy_csytri2x_scipy_ztgevc_scipy_ssyevd_scipy_ctgevc_sprintf@@GLIBC_2.2.5scipy_chptrf_scipy_ctptrs_scipy_claqr1_PyNumber_Floatscipy_dtptri_scipy_dgebal_scipy_dgtcon_scipy_sorgrq_scipy_dgeev_scipy_stgsy2_scipy_spbtrf_scipy_cpttrf_scipy_cgehd2_scipy_dlasq2_scipy_dlaqr3_scipy_dstegr_scipy_zsycon_scipy_zungqr_scipy_cggrqf_scipy_dgbmv_scipy_zsyrfs_scipy_dsytd2_scipy_slas2_scipy_srot_scipy_zlar1v_scipy_csprfs_scipy_clarfg_scipy_sgglse_scipy_zhseqr_scipy_dlasd0_scipy_zlange_scipy_zlalsa_scipy_zunm2l_scipy_zpteqr_scipy_ztgsy2_scipy_dgees_scipy_cgttrf_scipy_dormqr_scipy_zhetd2_scipy_dlasd2_PyUnicode_Concatscipy_sgetrf_scipy_chetrs_scipy_zhesvx_scipy_dgesc2_scipy_zung2l_scipy_idamax_scipy_cggbak_scipy_dstevr_scipy_dormbr_scipy_zspcon_scipy_ctpsv_scipy_dorgtr_scipy_dtgsen_scipy_ctbmv_scipy_clarfgp_scipy_cswap_scipy_zgehd2_scipy_zgerc_scipy_zlaqhp_scipy_slarrc_scipy_clahqr_scipy_sormql_scipy_slarft_scipy_sppsv_scipy_zlaqsb_scipy_zpbsvx_scipy_stfttr_scipy_csysvx_scipy_ztgsja_scipy_zgesvd_scipy_zhegv_scipy_cgebak_scipy_zgetc2_scipy_clarfx_scipy_stprfb_scipy_dlartg_scipy_slaset_scipy_zung2r_scipy_sbbcsd_scipy_dgebd2_scipy_sstevr_scipy_sspsv_scipy_zlarfg_scipy_dgbsvx_scipy_iladlr_scipy_zpprfs_scipy_ctrti2_scipy_slapy2_scipy_sormhr_scipy_dlagv2_scipy_dtfttr_scipy_clacon_scipy_slahqr_scipy_dsbev_scipy_slaqgb_scipy_dgels_scipy_stpqrt_scipy_zheevd_scipy_cstedc_scipy_cunmtr_scipy_csyequb_scipy_claqps_scipy_cgetrs_scipy_zsysvx_scipy_slasd1_scipy_zpttrs_scipy_zupmtr_scipy_cgeqrt3_scipy_chetf2_scipy_dscal_PyModule_GetDictscipy_zhegst_scipy_dlagts_scipy_chbtrd_scipy_dlatdf_scipy_dlarrj_scipy_sgesvx_scipy_dlag2_scipy_zhbtrd_scipy_cheev_PySequence_GetItemscipy_dgemqrt_scipy_zhegs2_scipy_clangt_scipy_dgeqrt_scipy_cgbrfs_scipy_dposvx_scipy_zlaein_PyErr_Restorescipy_dsbevd_scipy_zptts2_scipy_ctpqrt2_scipy_zgerfs_scipy_strtrs_scipy_dspsv_scipy_ssprfs_scipy_ssytrf_scipy_cgbtrs_scipy_ctrttp_scipy_zunmbr_scipy_dtbcon_scipy_dorm2l_scipy_chbgvx_scipy_dsbtrd_scipy_cpbtrf_PyObject_GenericGetAttrscipy_zgetrs_scipy_dlahqr_scipy_dstevd_scipy_dgttrf_scipy_srotm_scipy_slasyf_scipy_slarf_scipy_zhbgvd_scipy_zgbrfs_scipy_dlasd5_scipy_ssytrs2_scipy_dlaqp2_scipy_zlantp_scipy_ssytri2x_scipy_clasr_scipy_cungqr_scipy_ztrsen_scipy_sormrq_scipy_dtgsna_PySequence_Sizescipy_zupgtr_scipy_zsptrf_scipy_clacp2_scipy_spttrs_PyExc_RuntimeErrorscipy_dsytrs2_scipy_slasd7_scipy_spftrf_scipy_zsptri_scipy_chetri2_scipy_cgesvx_scipy_zggglm_scipy_zher2_PyType_IsSubtypescipy_dlarfg_scipy_sgttrs_scipy_dporfs_scipy_dsbgvx_scipy_dorglq_scipy_cgtsvx_PyType_Typescipy_cgelsy_scipy_dgeevx_scipy_ssygs2_scipy_zgglse_scipy_cgeql2_scipy_zlargv_scipy_dsyr2_scipy_ctptri_scipy_zgeqrf_scipy_csptrf_scipy_ssytd2_scipy_dhgeqz_scipy_slapy3_scipy_dtptrs_scipy_zheevx_scipy_zlatrs_scipy_zpstf2_scipy_clanhe_scipy_ztbcon_scipy_dpbsvx_scipy_zheevr_scipy_ztptrs_scipy_zstegr_scipy_dbdsdc_scipy_zbbcsd_scipy_dorbdb_scipy_cgbtf2_scipy_dpbequ_scipy_zggqrf_scipy_zunghr_scipy_clanht_scipy_cpftrs_scipy_spotri_scipy_csytf2_scipy_dtgsyl_scipy_zsyswapr_scipy_dlarft_scipy_dspgst_scipy_dtrsen_scipy_cgerqf_scipy_dsbgvd_scipy_ssytri_scipy_dlarfb_scipy_dlarz_scipy_cgeqrf_scipy_zggbal_scipy_ztrrfs_scipy_zporfs_scipy_dstemr_scipy_slaswp_scipy_slansp_scipy_dlaqgb_scipy_dlatrs_scipy_zlacrm_scipy_slarrk_scipy_cgetf2_scipy_dlascl_scipy_slarnv_scipy_cgbequb_scipy_sgerq2_scipy_classq_scipy_cgelsd_scipy_zlaqr4_scipy_zheswapr_scipy_dsytf2_scipy_zlansb_scipy_ztgsyl_scipy_zunm2r_scipy_zgbcon_scipy_dgelqf_scipy_sgeqrt3_scipy_stgsna_scipy_zpoequ_scipy_zgbsvx_scipy_zpftri_scipy_chpr_scipy_claein_scipy_dtrexc_scipy_dggbal_scipy_snrm2_scipy_zungl2_scipy_zlags2_scipy_dspevx_scipy_zgebal_scipy_zlahqr_PyErr_NormalizeExceptionscipy_sptcon_scipy_cungl2_scipy_dggevx_scipy_zgerq2_scipy_dgtsv_scipy_dsyr2k_scipy_cporfs_scipy_dtrsv_scipy_slaqsp_scipy_dbbcsd_scipy_cscal_scipy_dggglm_scipy_ztzrzf_scipy_slarrr_scipy_slarfgp_scipy_zspsvx_scipy_zlaqhb_scipy_dtpcon_scipy_cgttrs_scipy_dstebz_scipy_zstein_scipy_ctgsyl_scipy_slalsa_scipy_cgeqlf_scipy_lsame_scipy_dsysv_scipy_sgetrs_scipy_dsfrk_scipy_spteqr_scipy_cgeequb_scipy_sgebak_scipy_zrot_scipy_sspr2_scipy_cgeqrt2_scipy_zlascl_scipy_sgetc2_scipy_claic1_scipy_zlarf_scipy_sgetri_scipy_dgetrf_PyErr_Fetchscipy_sgbsv_scipy_sgecon_scipy_zlatps_scipy_zaxpy_scipy_cladiv_scipy_slansb_scipy_dlas2_scipy_slaev2_scipy_dpftrf_scipy_zhgeqz_scipy_ssbevd_scipy_ilatrans_scipy_clanhb_PyFloat_AsDoublescipy_slasq2_scipy_dlamch_scipy_ddot_scipy_slaed2_scipy_slasd4_scipy_zlanhf_scipy_cpbstf_scipy_cpbcon_PyThreadState_GetDictscipy_dlasq1_scipy_isamax_scipy_cgtcon_PySequence_Fastscipy_ctgex2_scipy_clantp_scipy_dlacn2_scipy_xerbla_array_scipy_dsytri2x_scipy_zlantr_scipy_drotm_PySequence_Checkscipy_dspmv_scipy_dlaqsp_scipy_ssbtrd_scipy_zlacn2_scipy_ilazlc_scipy_dsytri_scipy_stbtrs_scipy_clauum_scipy_slar2v_scipy_ztrsm_scipy_dposv_scipy_chemm_scipy_zlaed8_scipy_dgemv_scipy_clacn2_scipy_sggqrf_scipy_dopmtr_scipy_strmm_scipy_dlasd8_scipy_claqsp_scipy_chetrd_scipy_spstf2_scipy_dlansf_scipy_cspsvx_scipy_ctgsja_scipy_sormrz_scipy_dormr3_scipy_dsposv_scipy_slaeda_scipy_zgemqrt_scipy_dptrfs_scipy_zlaic1_scipy_slarrd_scipy_dlasd1_scipy_dladiv_scipy_dlaqsy_scipy_sgbmv_scipy_dgejsv_scipy_sggev_scipy_zgeequ_scipy_dlaein_scipy_dlag2s_PyObject_GetAttrStringscipy_cgetc2_scipy_zpotf2_scipy_zstedc_scipy_cgeqrfp_scipy_sspmv_scipy_ztgex2_scipy_zhetri2x_scipy_spotf2_scipy_zhetri_scipy_zsytri_scipy_dlauum_scipy_zsytrs_scipy_dtpttr_scipy_clarcm_scipy_cgebal_scipy_dpptri_scipy_slanhs_scipy_dpbtrs_scipy_slangb_scipy_csycon_scipy_cspmv_scipy_dtgsy2_scipy_dlaed8_scipy_sbdsqr_scipy_cgelqf_scipy_slaqtr_scipy_cherfs_scipy_zlalsd_scipy_stzrzf_scipy_dspev_scipy_cuncsd_scipy_scasum_scipy_dgesvx_scipy_dlasq6_scipy_dlangb_scipy_zlassq_scipy_cher2_scipy_zlaqhe_scipy_cpbrfs_scipy_chbevx_scipy_stpmqrt_scipy_cheevd_scipy_dlacon_scipy_dgeequ_scipy_spoequb_scipy_slahr2_scipy_dpteqr_scipy_dbdsqr_scipy_sspevx_scipy_zlasr_scipy_claqhe_scipy_slarz_scipy_slaed8_scipy_ssyev_scipy_zstemr_scipy_csyrfs_scipy_zppsv_scipy_ssygst_scipy_slaqr3_scipy_dsyrk_scipy_dpftrs_scipy_clar1v_scipy_dtfsm_scipy_zunmql_scipy_cheswapr_scipy_claset__Py_NoneStructscipy_cdotu_scipy_zpftrs_PyExc_OverflowErrorscipy_sgemv_scipy_dgeqrt2_scipy_dtgex2_scipy_cunmrq_scipy_sgesc2_scipy_stptrs_scipy_chptrs_scipy_scopy_scipy_dgemm_scipy_zhbevd_PyErr_NewExceptionstrcmp@@GLIBC_2.2.5scipy_ssyequb_scipy_dlat2s_scipy_dlaset_scipy_spptri_scipy_ztrttf_scipy_dgesdd_scipy_dlahr2_scipy_zhpevd_scipy_dpftri_scipy_ztrevc_scipy_slartgs_scipy_dtprfb_scipy_cungql_scipy_dlags2_scipy_dtpmqrt_scipy_claed8_scipy_dtpttf_scipy_csyconv_scipy_stgsyl_scipy_chemv_scipy_ztftri_scipy_clarft_scipy_ssyr2_scipy_dlaed1_scipy_sorg2l_scipy_dpstrf_scipy_zppcon_scipy_zhptrf_scipy_zlatbs_scipy_dsprfs_scipy_slabad_scipy_dsyr_scipy_chpgv_scipy_zsteqr_scipy_dgttrs_scipy_sorgqr_scipy_clatdf_scipy_dlassq_scipy_slarfx_scipy_cpptri_scipy_zggesx_scipy_stpttf_PyDict_GetItemStringscipy_dpbtf2_scipy_ztgexc_scipy_sstegr_scipy_cggqrf_scipy_zgesdd_scipy_sposv_scipy_stpcon_scipy_chpcon_scipy_dgecon_scipy_zgbequ_scipy_cspsv_scipy_clatps_scipy_ctbrfs_PyErr_Printscipy_ztfttp_scipy_dstedc_strcpy@@GLIBC_2.2.5scipy_zlangt_scipy_chpgvx_scipy_sgeqr2p_PyExc_AttributeErrorscipy_dlaev2_scipy_ctbcon_scipy_sgtcon_scipy_clatrs_scipy_spftrs_scipy_spoequ_scipy_cunmrz_scipy_dlarrc_scipy_zgbmv_scipy_zsysv_scipy_dlansp_scipy_cpocon_scipy_zlauu2_scipy_sgtts2_scipy_cungr2_scipy_ctrsyl_scipy_zunmhr_scipy_chetri_scipy_sorgl2_scipy_dpoequb_scipy_zgeesx_scipy_dlaqr0_PyDict_DelItemStringscipy_stfsm_scipy_dsyswapr_scipy_ssptrs_scipy_slapmt_scipy_sposvx_scipy_ztrexc_scipy_zgeql2_scipy_zlatrz_scipy_cunm2l_scipy_slaqr0_scipy_ztrmv_scipy_iladiag_scipy_sgbsvx_scipy_zgttrs_scipy_dpstf2_scipy_dtpmv_scipy_zlacrt_scipy_zpbrfs_scipy_slagtf_scipy_dlarzt_scipy_zlarz_scipy_clapmr_scipy_zgesvx_scipy_spotrs_scipy_zhpsvx_scipy_dptsv_scipy_chetrf_scipy_zptcon_scipy_dlapmr_scipy_zlarfb_scipy_strsm_scipy_slarrf_scipy_cggbal_scipy_dptcon_scipy_dasum_scipy_zptsvx_scipy_dlar1v_scipy_cgels_scipy_slange_scipy_slangt_scipy_slaed3_scipy_slasq3_scipy_slasr_scipy_dlamrg_scipy_csytrs_scipy_clanhs_scipy_clargv_scipy_srscl_scipy_dgeqr2_scipy_cpttrs_scipy_zhegvd_scipy_sgbrfs_scipy_dtgevc_scipy_cgbbrd_scipy_zlat2c_scipy_dspsvx_scipy_strmv_scipy_zgeev_scipy_claev2_scipy_stgsja_scipy_dorghr_scipy_zungtr_scipy_dlaqtr_scipy_claqge_scipy_sggbal_scipy_dorgbr_PyException_SetTracebackscipy_cposvx_scipy_cunmlq_scipy_ilaclr_scipy_ieeeck__Py_Deallocscipy_cpptrf_scipy_zgbtrf_scipy_zppequ_scipy_zgetrf_scipy_dgelsd_scipy_dsbgst_PyObject_Freescipy_ssptrd_scipy_slaqp2_PyImport_ImportModulescipy_dgbcon_scipy_ztbrfs_scipy_ctfttp_scipy_zpptri_scipy_cgbsvx_scipy_ztpsv_scipy_chbgst_scipy_dgbtrf_scipy_cpprfs_PyErr_Clearscipy_zlatdf_scipy_dgges_scipy_zlanhe_scipy_claqr3_scipy_dlagtm_scipy_dznrm2_scipy_sormbr_PyModule_Create2scipy_dgbrfs_scipy_dsytrs_scipy_zsyequb_scipy_zgtsv_scipy_sgeqlf_scipy_dsyev_scipy_dtrtrs_scipy_slasdq_scipy_cggevx_scipy_zunmqr_scipy_clanhp_scipy_dtrrfs_scipy_slasd2_scipy_sppcon_scipy_dtgexc_scipy_cgeesx_scipy_zlapmr_scipy_slasd3_scipy_sspev_scipy_zlaswp_scipy_cgeequ_scipy_zunglq_scipy_zlacpy_scipy_dgesvj_scipy_dlaqr5_scipy_ssytf2_scipy_zgtsvx_scipy_zpbcon_scipy_slarra_scipy_zladiv_scipy_dopgtr_scipy_zhetrs_scipy_sgges_scipy_slansf_scipy_slanst_scipy_sspr_scipy_zlaqsp_scipy_dtbtrs_scipy_dlasd4_scipy_sgbtf2_scipy_slapll_scipy_zswap_scipy_slarfg_scipy_daxpy_scipy_slaebz_scipy_chla_transtype_scipy_dptsvx_scipy_zrotg_scipy_dtrti2_scipy_dspr_scipy_slasda_scipy_dlarnv_scipy_zdrot_scipy_dspgvx_scipy_sggevx_scipy_zhpr_scipy_zgelsd_scipy_ilaprec_scipy_slacpy_scipy_zhptrs_scipy_dlalsd_scipy_sgerqf_scipy_dtrttp_scipy_chetrs2_PyErr_SetStringscipy_strttp_scipy_sgtrfs_scipy_cupmtr_scipy_dlasr_scipy_sdsdot_scipy_claesy_scipy_sgebd2_scipy_sormr2_scipy_clahef_scipy_dsdot_stderr@@GLIBC_2.2.5scipy_dgeequb_scipy_zlaqr2_scipy_zdotc_scipy_strsen_scipy_zpoequb_scipy_sorcsd_scipy_clacgv_scipy_cpstrf_scipy_csytri_scipy_dppsvx_scipy_dtbrfs_scipy_zpttrf_scipy_sgghrd_scipy_sgttrf_scipy_cspr_scipy_zungbr_scipy_dgbsv_scipy_dlange_scipy_zgges_scipy_dppsv_scipy_sswap_scipy_zhbmv_scipy_zlaed7_scipy_dsyequb_scipy_zlangb_scipy_ztpcon_scipy_zgehrd_scipy_caxpy_scipy_claqr0_scipy_sgehd2_scipy_dtrsna_scipy_cstegr_scipy_cheequb_scipy_sspgst_scipy_cstein_scipy_ctzrzf_scipy_dorgqr_scipy_ssysv_scipy_sgbbrd_scipy_sstemr_scipy_dgerfs_scipy_claqhb_scipy_csytrs2_scipy_dsptrf_scipy_dlarf_scipy_stftri_scipy_zlals0_scipy_cunbdb_scipy_cunml2_scipy_scnrm2_scipy_stgevc_scipy_ctrsm_scipy_dlapy2_scipy_zlaqge_scipy_saxpy_PyUnicode_FromStringAndSizescipy_cppsv_scipy_zungr2_scipy_sgbequb_scipy_slarfb_scipy_zgesc2_scipy_icmax1_scipy_dlantb_scipy_slantp_scipy_ssysvx_scipy_zgelsy_scipy_zunmr3_scipy_ztbmv_scipy_csrot_scipy_chpsvx_scipy_sppequ_scipy_dlarrd_scipy_ilaslc_scipy_clasyf_scipy_csrscl_scipy_slatrz_scipy_dgbequb_scipy_izmax1_scipy_dlansb_scipy_dlaed2_scipy_ctpqrt_scipy_ctrevc_scipy_chsein_scipy_zlarfgp_scipy_sgelsy_scipy_slaruv_scipy_zhesv_scipy_slasd8_scipy_cgeqrt_scipy_zhbev_scipy_cpstf2_scipy_zgelss_scipy_ztgsna_scipy_cgemv_scipy_ztpmv_scipy_slaqps_scipy_ssptrf_scipy_dlantr_scipy_ctfttr_scipy_chpevd__PyArg_ParseTupleAndKeywords_SizeTscipy_dpbtrf_scipy_dsyevd_scipy_ssyr_scipy_disnan_scipy_dgeqp3_scipy_zcgesv_fprintf@@GLIBC_2.2.5scipy_dormr2_scipy_ctgsy2_scipy_ssycon_scipy_stbsv_scipy_strti2_scipy_zhpcon_scipy_zlarzb_scipy_chbevd_scipy_zgemv_scipy_dgetri_scipy_ctprfs_scipy_dppcon_scipy_sorml2_scipy_slag2_scipy_ztprfs_scipy_zlaqsy_scipy_cdotc_scipy_ctfsm__PyDict_GetItemStringWithErrorscipy_zungrq_scipy_zherk_scipy_chpgst_scipy_cgebrd_scipy_stgexc_scipy_dtrttf_scipy_dlasrt_scipy_cptsvx_scipy_clabrd_scipy_slasq1_scipy_clals0_scipy_strsyl_scipy_drotmg_scipy_slaed1_scipy_csymm_scipy_sgeqrt2_scipy_zhprfs_scipy_sorgtr_scipy_ctpmv_scipy_cgees_scipy_dgetc2_scipy_zgelq2_scipy_dcopy_scipy_zlarrv_scipy_dlangt_scipy_chetri2x_scipy_zpbtrs_scipy_slagts_PyMem_Mallocscipy_dlaneg_scipy_spbstf_scipy_cunglq_scipy_ssyconv_scipy_ssbmv_scipy_cgbmv_scipy_sgeqrt_scipy_zlaqgb_scipy_dsycon_scipy_ctrtrs_scipy_dpttrf_scipy_zpbequ_memcpy@@GLIBC_2.14scipy_zlacgv_PyCapsule_GetPointerscipy_ctpcon_scipy_zgtcon_scipy_sorm2r_scipy_dgbtrs_scipy_slasdt_scipy_slasq4_scipy_ctgsna_scipy_chfrk_scipy_dgesvd_scipy_zunbdb_scipy_strttf_scipy_zspsv_scipy_dlasv2_scipy_dgehrd_scipy_slaed4_scipy_sgeequ_scipy_spbtrs_scipy_ctrcon_scipy_clarzb_scipy_dlals0_scipy_cgeqp3_scipy_zgtts2_scipy_zlanhp_scipy_sgtsv_scipy_spbrfs_scipy_zspr_scipy_ctbtrs_scipy_sscal_scipy_chesvx_scipy_zsytf2_scipy_ztpttf_scipy_zunmr2_scipy_clatbs_scipy_dlaed7_scipy_chpevx_scipy_zunml2_scipy_srotg_scipy_zgbtf2_scipy_zsyrk__Py_BuildValue_SizeTscipy_stbrfs_scipy_spbequ_scipy_zsyr_scipy_zgels_scipy_dsyconv_scipy_clartg_scipy_sorbdb_scipy_zhsein_scipy_cunmqr_scipy_slagv2_scipy_zgetri_scipy_dzasum_scipy_zlahef_scipy_dspr2_scipy_spbsvx_scipy_dstein_scipy_dlaed9_PyDict_Newscipy_ssygv_scipy_cungtr_scipy_zlaset_scipy_slauu2_scipy_zlarft_scipy_dpbsv_scipy_clacpy_scipy_ssterf_scipy_dlarrr_scipy_cunmbr_scipy_ctgexc_scipy_dorg2l_scipy_slaqr4_scipy_dhsein_scipy_sstebz_scipy_zgetf2_scipy_dtbmv_scipy_dsymv_scipy_strsv_scipy_clantr_scipy_zhbgv_scipy_cpteqr_.symtab.strtab.shstrtab.note.gnu.build-id.gnu.hash.dynsym.dynstr.gnu.version.gnu.version_r.rela.dyn.rela.plt.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.got.plt.data.bss.commentHo UoHH0dxxnBPxpps p pj~nII PPkD9x x   p p  5%  @X } m p 0m /n n  F|.Y p$.o( (p$8 P Pp @ p_GNU`5Q<˸^[ɥ@CrlR =  %ZV&Dz=V4 : >)TWDk2*<k\O STI >;V% eS)"DU+"-H97"K+, );1s45#![rV,^n p",(k&Zt'x:Aj H.AZ )8C@0#AH&eD:CZ8$>\K:A1{Q( XbX('QW?JO ,C N 4/A=F>]u!.D!5 @q+D& %}9I5F$&0-MFP9Y81R 6*+R7rHC T 8(66BP[L)O*%I  $ @'2#Q@B'ZMOIm6B;_70s/)H1[/$>T9sSX;4NJB!Y-"-*CD~J89#M^(EH@Go(4C03 <[VQ6bY<U I/MU\P= 4}IMUJ;P)i#3E2)Y]75/Oa0EK-SD7fX$c:^UyK].2L;m7e E9+\44+LqP'UF K0 Z)+<'/*QQ#*:Mb<&[R|%"+FJESO3 K6Uf'" 5 "KCC^GSt/ Y ="*TYS@}b9.?J. * AE 5W 0r?Ie/#[#9y5(54Zo"QpJU%G_(C(U(6JDu-</O+ ]kiA0Hcm@1(I/, Do"E".=$99!Pu8TJ7 FI5Q_0_M#.2c+M\/]I\ ?Zw#R6QC?%N6M>*6 IS (ZCOHXG(v>F"?;R??UHYKO}0M4 WKD% mC:CW)  e5 4C6) 770!}, \M!,B|tY/F5 2Ca"AH:Bs B)x&/TX[X0i>MSI~=8cP~(QQ\'WY+N(w]7N!i[y6/G+WI+2"J R= wA4=6CsSUGPYNLN jLdH',?w[4QE ES3V<MA$17:.< GHANG (X>lW\r }LyNr$)'{7-$ NK kNy  , QO(.zWK6I./DG \}1++{.J8]L$/"f?<MJ(JG2&wR,GBgZA$2^\WECln1>VBW M- f'8,m.*| YFM TKrF"<2]N#UV8Y&,ONmZXIu* +,M[Bn@2X.'.3 _.G':(8 LZ-V/?t;&!*P= p(^=x 7O WSN 1?RY\I 6HVJU2!@[CQ.bJmQC=! L}"B<q!?[=%=WRN2/*X: 07.C. W5Wc T7%S7!55U X;c(%:^,xO D.4H?$9>R]4)\C#nIP1R$f&sDP[431uG< ,DP)K8g*P ({C`%dmA+/ :\K-Q=(@#& 8J$:$6 VVXF Y>OB!OXK*Y2U g-J;P, ;022#4 <6Q`I.Y!l)%TjRJ8H$#{B:-DT@>9"F8X5VgF~<z,91W\_4zUf' 1+67HM1]F)&)_C#["!$Ol,Z>2YH$\22HQoYw#@-V+PT /9gFX"@)B=oLH^4,YyE3LB*H"mIW`}Y/]Q6^$8rBB9' Xn%?U8u-\@,JN&x^G0OE;BZkK1UT< 35M-PwUj:U(aT=\LBP-W%Sj =D-PW& .;<;9V??$D N51N T;/] JG*[&g7*!33Za8JVL! D.]%E8<FYV  X8*T!Qd$]?Ak`1qXdM6F0Z3?ze\3> C1J R>DT [PK!&FqM[Ul=Y*NO7f;;S1(-5; =o9 -{ >3s?X' /8b 2K4F9GP$(7v3RI8cz)s5AY];SHV{@K-1^W/88=[(%L>- P70Q ZJ5"3D*F4E uW/&GQGp%RP]F[4 =%L3%;FNK\ C'4k'@w4R%#AS_62>N>U M@KY F<3E%'=B,S0"v I]+E) IOnT< !-[AA:QZS][H Y Gh3) :?3 I196OA<= g! K7T6%U:] %BKF6R0-iU]PHM1A'?d?{=!M[DIW)95HB3 $ MR8AWQX{Zs\y#K;\Y*J gGAX%K(0m@UP:LO_QB/#[^uFT5@S,SE'Q*<"]ExLw !M]в@XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXW_9_^ p Ix  o(  P p_  Px oHooo9__gmon_start___ITM_deregisterTMCloneTable_ITM_registerTMCloneTable__cxa_finalizefree_Py_DeallocPyType_IsSubtypePyFloat_TypePySequence_CheckPyErr_OccurredPyErr_SetStringPyFloat_AsDoublePyLong_AsDoublePyExc_TypeErrorPySequence_GetItemPyComplex_TypePyComplex_AsCComplexPyNumber_LongPyErr_ClearPyObject_GetAttrStringPyLong_AsLongAndOverflowPyExc_OverflowError_Py_NoneStruct_PyArg_ParseTupleAndKeywords_SizeTsprintf_Py_BuildValue_SizeTPyComplex_FromDoublesPyNumber_FloatmallocmemsetPyErr_FetchPyErr_NormalizeExceptionPyException_SetTracebackPyException_SetCausePyErr_RestorePyInit__fblasPyModule_Create2PyType_TypePyImport_ImportModulePyCapsule_TypePyCapsule_GetPointerPyExc_ImportErrorPyModule_GetDictPyUnicode_FromStringPyDict_SetItemStringPyErr_NewExceptionPyType_ReadyPyExc_ModuleNotFoundErrorPyErr_ExceptionMatchesPyErr_PrintPyExc_RuntimeErrorPyErr_Formatscipy_cdotc_scipy_zdotc_scipy_cdotu_scipy_zdotu_scipy_cladiv_scipy_zladiv_scipy_caxpy_scipy_ccopy_scipy_cgbmv_scipy_cgemm_scipy_cgemv_scipy_cgerc_scipy_cgeru_scipy_chbmv_scipy_chemm_scipy_chemv_scipy_cher_scipy_cher2_scipy_cher2k_scipy_cherk_scipy_chpmv_scipy_chpr_scipy_chpr2_scipy_crotg_scipy_cscal_scipy_csrot_scipy_csscal_scipy_cswap_scipy_csymm_scipy_csyr2k_scipy_csyrk_scipy_ctbmv_scipy_ctbsv_scipy_ctpmv_scipy_ctpsv_scipy_ctrmm_scipy_ctrmv_scipy_ctrsm_scipy_ctrsv_scipy_dasum_scipy_daxpy_scipy_dcabs1_scipy_dcopy_scipy_ddot_scipy_dgbmv_scipy_dgemm_scipy_dgemv_scipy_dger_scipy_dnrm2_scipy_drot_scipy_drotg_scipy_drotm_scipy_drotmg_scipy_dsbmv_scipy_dscal_scipy_dsdot_scipy_dspmv_scipy_dspr_scipy_dspr2_scipy_dswap_scipy_dsymm_scipy_dsymv_scipy_dsyr_scipy_dsyr2_scipy_dsyr2k_scipy_dsyrk_scipy_dtbmv_scipy_dtbsv_scipy_dtpmv_scipy_dtpsv_scipy_dtrmm_scipy_dtrmv_scipy_dtrsm_scipy_dtrsv_scipy_dzasum_scipy_dznrm2_scipy_icamax_scipy_idamax_scipy_isamax_scipy_izamax_scipy_lsame_scipy_sasum_scipy_saxpy_scipy_scasum_scipy_scnrm2_scipy_scopy_scipy_sdot_scipy_sdsdot_scipy_sgbmv_scipy_sgemm_scipy_sgemv_scipy_sger_scipy_snrm2_scipy_srot_scipy_srotg_scipy_srotm_scipy_srotmg_scipy_ssbmv_scipy_sscal_scipy_sspmv_scipy_sspr_scipy_sspr2_scipy_sswap_scipy_ssymm_scipy_ssymv_scipy_ssyr_scipy_ssyr2_scipy_ssyr2k_scipy_ssyrk_scipy_stbmv_scipy_stbsv_scipy_stpmv_scipy_stpsv_scipy_strmm_scipy_strmv_scipy_strsm_scipy_strsv_scipy_zaxpy_scipy_zcopy_scipy_zdrot_scipy_zdscal_scipy_zgbmv_scipy_zgemm_scipy_zgemv_scipy_zgerc_scipy_zgeru_scipy_zhbmv_scipy_zhemm_scipy_zhemv_scipy_zher_scipy_zher2_scipy_zher2k_scipy_zherk_scipy_zhpmv_scipy_zhpr_scipy_zhpr2_scipy_zrotg_scipy_zscal_scipy_zswap_scipy_zsymm_scipy_zsyr2k_scipy_zsyrk_scipy_ztbmv_scipy_ztbsv_scipy_ztpmv_scipy_ztpsv_scipy_ztrmm_scipy_ztrmv_scipy_ztrsm_scipy_ztrsv_scipy_cbbcsd_scipy_cbdsqr_scipy_cgbbrd_scipy_cgbcon_scipy_cgbequ_scipy_cgbequb_scipy_cgbrfs_scipy_cgbsv_scipy_cgbsvx_scipy_cgbtf2_scipy_cgbtrf_scipy_cgbtrs_scipy_cgebak_scipy_cgebal_scipy_cgebd2_scipy_cgebrd_scipy_cgecon_scipy_cgeequ_scipy_cgeequb_scipy_cgees_scipy_cgeesx_scipy_cgeev_scipy_cgeevx_scipy_cgehd2_scipy_cgehrd_scipy_cgelq2_scipy_cgelqf_scipy_cgels_scipy_cgelsd_scipy_cgelss_scipy_cgelsy_scipy_cgemqrt_scipy_cgeql2_scipy_cgeqlf_scipy_cgeqp3_scipy_cgeqr2_scipy_cgeqr2p_scipy_cgeqrf_scipy_cgeqrfp_scipy_cgeqrt_scipy_cgeqrt2_scipy_cgeqrt3_scipy_cgerfs_scipy_cgerq2_scipy_cgerqf_scipy_cgesc2_scipy_cgesdd_scipy_cgesv_scipy_cgesvd_scipy_cgesvx_scipy_cgetc2_scipy_cgetf2_scipy_cgetrf_scipy_cgetri_scipy_cgetrs_scipy_cggbak_scipy_cggbal_scipy_cgges_scipy_cggesx_scipy_cggev_scipy_cggevx_scipy_cggglm_scipy_cgghrd_scipy_cgglse_scipy_cggqrf_scipy_cggrqf_scipy_cgtcon_scipy_cgtrfs_scipy_cgtsv_scipy_cgtsvx_scipy_cgttrf_scipy_cgttrs_scipy_cgtts2_scipy_chbev_scipy_chbevd_scipy_chbevx_scipy_chbgst_scipy_chbgv_scipy_chbgvd_scipy_chbgvx_scipy_chbtrd_scipy_checon_scipy_cheequb_scipy_cheev_scipy_cheevd_scipy_cheevr_scipy_cheevx_scipy_chegs2_scipy_chegst_scipy_chegv_scipy_chegvd_scipy_chegvx_scipy_cherfs_scipy_chesv_scipy_chesvx_scipy_cheswapr_scipy_chetd2_scipy_chetf2_scipy_chetrd_scipy_chetrf_scipy_chetri_scipy_chetri2_scipy_chetri2x_scipy_chetrs_scipy_chetrs2_scipy_chfrk_scipy_chgeqz_scipy_chla_transtype_scipy_chpcon_scipy_chpev_scipy_chpevd_scipy_chpevx_scipy_chpgst_scipy_chpgv_scipy_chpgvd_scipy_chpgvx_scipy_chprfs_scipy_chpsv_scipy_chpsvx_scipy_chptrd_scipy_chptrf_scipy_chptri_scipy_chptrs_scipy_chsein_scipy_chseqr_scipy_clabrd_scipy_clacgv_scipy_clacn2_scipy_clacon_scipy_clacp2_scipy_clacpy_scipy_clacrm_scipy_clacrt_scipy_claed0_scipy_claed7_scipy_claed8_scipy_claein_scipy_claesy_scipy_claev2_scipy_clag2z_scipy_clags2_scipy_clagtm_scipy_clahef_scipy_clahqr_scipy_clahr2_scipy_claic1_scipy_clals0_scipy_clalsa_scipy_clalsd_scipy_clangb_scipy_clange_scipy_clangt_scipy_clanhb_scipy_clanhe_scipy_clanhf_scipy_clanhp_scipy_clanhs_scipy_clanht_scipy_clansb_scipy_clansp_scipy_clansy_scipy_clantb_scipy_clantp_scipy_clantr_scipy_clapll_scipy_clapmr_scipy_clapmt_scipy_claqgb_scipy_claqge_scipy_claqhb_scipy_claqhe_scipy_claqhp_scipy_claqp2_scipy_claqps_scipy_claqr0_scipy_claqr1_scipy_claqr2_scipy_claqr3_scipy_claqr4_scipy_claqr5_scipy_claqsb_scipy_claqsp_scipy_claqsy_scipy_clar1v_scipy_clar2v_scipy_clarcm_scipy_clarf_scipy_clarfb_scipy_clarfg_scipy_clarfgp_scipy_clarft_scipy_clarfx_scipy_clargv_scipy_clarnv_scipy_clarrv_scipy_clartg_scipy_clartv_scipy_clarz_scipy_clarzb_scipy_clarzt_scipy_clascl_scipy_claset_scipy_clasr_scipy_classq_scipy_claswp_scipy_clasyf_scipy_clatbs_scipy_clatdf_scipy_clatps_scipy_clatrd_scipy_clatrs_scipy_clatrz_scipy_clauu2_scipy_clauum_scipy_cpbcon_scipy_cpbequ_scipy_cpbrfs_scipy_cpbstf_scipy_cpbsv_scipy_cpbsvx_scipy_cpbtf2_scipy_cpbtrf_scipy_cpbtrs_scipy_cpftrf_scipy_cpftri_scipy_cpftrs_scipy_cpocon_scipy_cpoequ_scipy_cpoequb_scipy_cporfs_scipy_cposv_scipy_cposvx_scipy_cpotf2_scipy_cpotrf_scipy_cpotri_scipy_cpotrs_scipy_cppcon_scipy_cppequ_scipy_cpprfs_scipy_cppsv_scipy_cppsvx_scipy_cpptrf_scipy_cpptri_scipy_cpptrs_scipy_cpstf2_scipy_cpstrf_scipy_cptcon_scipy_cpteqr_scipy_cptrfs_scipy_cptsv_scipy_cptsvx_scipy_cpttrf_scipy_cpttrs_scipy_cptts2_scipy_crot_scipy_cspcon_scipy_cspmv_scipy_cspr_scipy_csprfs_scipy_cspsv_scipy_cspsvx_scipy_csptrf_scipy_csptri_scipy_csptrs_scipy_csrscl_scipy_cstedc_scipy_cstegr_scipy_cstein_scipy_cstemr_scipy_csteqr_scipy_csycon_scipy_csyconv_scipy_csyequb_scipy_csymv_scipy_csyr_scipy_csyrfs_scipy_csysv_scipy_csysvx_scipy_csyswapr_scipy_csytf2_scipy_csytrf_scipy_csytri_scipy_csytri2_scipy_csytri2x_scipy_csytrs_scipy_csytrs2_scipy_ctbcon_scipy_ctbrfs_scipy_ctbtrs_scipy_ctfsm_scipy_ctftri_scipy_ctfttp_scipy_ctfttr_scipy_ctgevc_scipy_ctgex2_scipy_ctgexc_scipy_ctgsen_scipy_ctgsja_scipy_ctgsna_scipy_ctgsy2_scipy_ctgsyl_scipy_ctpcon_scipy_ctpmqrt_scipy_ctpqrt_scipy_ctpqrt2_scipy_ctprfb_scipy_ctprfs_scipy_ctptri_scipy_ctptrs_scipy_ctpttf_scipy_ctpttr_scipy_ctrcon_scipy_ctrevc_scipy_ctrexc_scipy_ctrrfs_scipy_ctrsen_scipy_ctrsna_scipy_ctrsyl_scipy_ctrti2_scipy_ctrtri_scipy_ctrtrs_scipy_ctrttf_scipy_ctrttp_scipy_ctzrzf_scipy_cunbdb_scipy_cuncsd_scipy_cung2l_scipy_cung2r_scipy_cungbr_scipy_cunghr_scipy_cungl2_scipy_cunglq_scipy_cungql_scipy_cungqr_scipy_cungr2_scipy_cungrq_scipy_cungtr_scipy_cunm2l_scipy_cunm2r_scipy_cunmbr_scipy_cunmhr_scipy_cunml2_scipy_cunmlq_scipy_cunmql_scipy_cunmqr_scipy_cunmr2_scipy_cunmr3_scipy_cunmrq_scipy_cunmrz_scipy_cunmtr_scipy_cupgtr_scipy_cupmtr_scipy_dbbcsd_scipy_dbdsdc_scipy_dbdsqr_scipy_ddisna_scipy_dgbbrd_scipy_dgbcon_scipy_dgbequ_scipy_dgbequb_scipy_dgbrfs_scipy_dgbsv_scipy_dgbsvx_scipy_dgbtf2_scipy_dgbtrf_scipy_dgbtrs_scipy_dgebak_scipy_dgebal_scipy_dgebd2_scipy_dgebrd_scipy_dgecon_scipy_dgeequ_scipy_dgeequb_scipy_dgees_scipy_dgeesx_scipy_dgeev_scipy_dgeevx_scipy_dgehd2_scipy_dgehrd_scipy_dgejsv_scipy_dgelq2_scipy_dgelqf_scipy_dgels_scipy_dgelsd_scipy_dgelss_scipy_dgelsy_scipy_dgemqrt_scipy_dgeql2_scipy_dgeqlf_scipy_dgeqp3_scipy_dgeqr2_scipy_dgeqr2p_scipy_dgeqrf_scipy_dgeqrfp_scipy_dgeqrt_scipy_dgeqrt2_scipy_dgeqrt3_scipy_dgerfs_scipy_dgerq2_scipy_dgerqf_scipy_dgesc2_scipy_dgesdd_scipy_dgesv_scipy_dgesvd_scipy_dgesvj_scipy_dgesvx_scipy_dgetc2_scipy_dgetf2_scipy_dgetrf_scipy_dgetri_scipy_dgetrs_scipy_dggbak_scipy_dggbal_scipy_dgges_scipy_dggesx_scipy_dggev_scipy_dggevx_scipy_dggglm_scipy_dgghrd_scipy_dgglse_scipy_dggqrf_scipy_dggrqf_scipy_dgsvj0_scipy_dgsvj1_scipy_dgtcon_scipy_dgtrfs_scipy_dgtsv_scipy_dgtsvx_scipy_dgttrf_scipy_dgttrs_scipy_dgtts2_scipy_dhgeqz_scipy_dhsein_scipy_dhseqr_scipy_disnan_scipy_dlabad_scipy_dlabrd_scipy_dlacn2_scipy_dlacon_scipy_dlacpy_scipy_dladiv_scipy_dlae2_scipy_dlaebz_scipy_dlaed0_scipy_dlaed1_scipy_dlaed2_scipy_dlaed3_scipy_dlaed4_scipy_dlaed5_scipy_dlaed6_scipy_dlaed7_scipy_dlaed8_scipy_dlaed9_scipy_dlaeda_scipy_dlaein_scipy_dlaev2_scipy_dlaexc_scipy_dlag2_scipy_dlag2s_scipy_dlags2_scipy_dlagtf_scipy_dlagtm_scipy_dlagts_scipy_dlagv2_scipy_dlahqr_scipy_dlahr2_scipy_dlaic1_scipy_dlaln2_scipy_dlals0_scipy_dlalsa_scipy_dlalsd_scipy_dlamch_scipy_dlamrg_scipy_dlaneg_scipy_dlangb_scipy_dlange_scipy_dlangt_scipy_dlanhs_scipy_dlansb_scipy_dlansf_scipy_dlansp_scipy_dlanst_scipy_dlansy_scipy_dlantb_scipy_dlantp_scipy_dlantr_scipy_dlanv2_scipy_dlapll_scipy_dlapmr_scipy_dlapmt_scipy_dlapy2_scipy_dlapy3_scipy_dlaqgb_scipy_dlaqge_scipy_dlaqp2_scipy_dlaqps_scipy_dlaqr0_scipy_dlaqr1_scipy_dlaqr2_scipy_dlaqr3_scipy_dlaqr4_scipy_dlaqr5_scipy_dlaqsb_scipy_dlaqsp_scipy_dlaqsy_scipy_dlaqtr_scipy_dlar1v_scipy_dlar2v_scipy_dlarf_scipy_dlarfb_scipy_dlarfg_scipy_dlarfgp_scipy_dlarft_scipy_dlarfx_scipy_dlargv_scipy_dlarnv_scipy_dlarra_scipy_dlarrb_scipy_dlarrc_scipy_dlarrd_scipy_dlarre_scipy_dlarrf_scipy_dlarrj_scipy_dlarrk_scipy_dlarrr_scipy_dlarrv_scipy_dlartg_scipy_dlartgp_scipy_dlartgs_scipy_dlartv_scipy_dlaruv_scipy_dlarz_scipy_dlarzb_scipy_dlarzt_scipy_dlas2_scipy_dlascl_scipy_dlasd0_scipy_dlasd1_scipy_dlasd2_scipy_dlasd3_scipy_dlasd4_scipy_dlasd5_scipy_dlasd6_scipy_dlasd7_scipy_dlasd8_scipy_dlasda_scipy_dlasdq_scipy_dlasdt_scipy_dlaset_scipy_dlasq1_scipy_dlasq2_scipy_dlasq3_scipy_dlasq4_scipy_dlasq6_scipy_dlasr_scipy_dlasrt_scipy_dlassq_scipy_dlasv2_scipy_dlaswp_scipy_dlasy2_scipy_dlasyf_scipy_dlat2s_scipy_dlatbs_scipy_dlatdf_scipy_dlatps_scipy_dlatrd_scipy_dlatrs_scipy_dlatrz_scipy_dlauu2_scipy_dlauum_scipy_dopgtr_scipy_dopmtr_scipy_dorbdb_scipy_dorcsd_scipy_dorg2l_scipy_dorg2r_scipy_dorgbr_scipy_dorghr_scipy_dorgl2_scipy_dorglq_scipy_dorgql_scipy_dorgqr_scipy_dorgr2_scipy_dorgrq_scipy_dorgtr_scipy_dorm2l_scipy_dorm2r_scipy_dormbr_scipy_dormhr_scipy_dorml2_scipy_dormlq_scipy_dormql_scipy_dormqr_scipy_dormr2_scipy_dormr3_scipy_dormrq_scipy_dormrz_scipy_dormtr_scipy_dpbcon_scipy_dpbequ_scipy_dpbrfs_scipy_dpbstf_scipy_dpbsv_scipy_dpbsvx_scipy_dpbtf2_scipy_dpbtrf_scipy_dpbtrs_scipy_dpftrf_scipy_dpftri_scipy_dpftrs_scipy_dpocon_scipy_dpoequ_scipy_dpoequb_scipy_dporfs_scipy_dposv_scipy_dposvx_scipy_dpotf2_scipy_dpotrf_scipy_dpotri_scipy_dpotrs_scipy_dppcon_scipy_dppequ_scipy_dpprfs_scipy_dppsv_scipy_dppsvx_scipy_dpptrf_scipy_dpptri_scipy_dpptrs_scipy_dpstf2_scipy_dpstrf_scipy_dptcon_scipy_dpteqr_scipy_dptrfs_scipy_dptsv_scipy_dptsvx_scipy_dpttrf_scipy_dpttrs_scipy_dptts2_scipy_drscl_scipy_dsbev_scipy_dsbevd_scipy_dsbevx_scipy_dsbgst_scipy_dsbgv_scipy_dsbgvd_scipy_dsbgvx_scipy_dsbtrd_scipy_dsfrk_scipy_dsgesv_scipy_dspcon_scipy_dspev_scipy_dspevd_scipy_dspevx_scipy_dspgst_scipy_dspgv_scipy_dspgvd_scipy_dspgvx_scipy_dsposv_scipy_dsprfs_scipy_dspsv_scipy_dspsvx_scipy_dsptrd_scipy_dsptrf_scipy_dsptri_scipy_dsptrs_scipy_dstebz_scipy_dstedc_scipy_dstegr_scipy_dstein_scipy_dstemr_scipy_dsteqr_scipy_dsterf_scipy_dstev_scipy_dstevd_scipy_dstevr_scipy_dstevx_scipy_dsycon_scipy_dsyconv_scipy_dsyequb_scipy_dsyev_scipy_dsyevd_scipy_dsyevr_scipy_dsyevx_scipy_dsygs2_scipy_dsygst_scipy_dsygv_scipy_dsygvd_scipy_dsygvx_scipy_dsyrfs_scipy_dsysv_scipy_dsysvx_scipy_dsyswapr_scipy_dsytd2_scipy_dsytf2_scipy_dsytrd_scipy_dsytrf_scipy_dsytri_scipy_dsytri2_scipy_dsytri2x_scipy_dsytrs_scipy_dsytrs2_scipy_dtbcon_scipy_dtbrfs_scipy_dtbtrs_scipy_dtfsm_scipy_dtftri_scipy_dtfttp_scipy_dtfttr_scipy_dtgevc_scipy_dtgex2_scipy_dtgexc_scipy_dtgsen_scipy_dtgsja_scipy_dtgsna_scipy_dtgsy2_scipy_dtgsyl_scipy_dtpcon_scipy_dtpmqrt_scipy_dtpqrt_scipy_dtpqrt2_scipy_dtprfb_scipy_dtprfs_scipy_dtptri_scipy_dtptrs_scipy_dtpttf_scipy_dtpttr_scipy_dtrcon_scipy_dtrevc_scipy_dtrexc_scipy_dtrrfs_scipy_dtrsen_scipy_dtrsna_scipy_dtrsyl_scipy_dtrti2_scipy_dtrtri_scipy_dtrtrs_scipy_dtrttf_scipy_dtrttp_scipy_dtzrzf_scipy_dzsum1_scipy_icmax1_scipy_ieeeck_scipy_ilaclc_scipy_ilaclr_scipy_iladiag_scipy_iladlc_scipy_iladlr_scipy_ilaprec_scipy_ilaslc_scipy_ilaslr_scipy_ilatrans_scipy_ilauplo_scipy_ilaver_scipy_ilazlc_scipy_ilazlr_scipy_izmax1_scipy_sbbcsd_scipy_sbdsdc_scipy_sbdsqr_scipy_scsum1_scipy_sdisna_scipy_sgbbrd_scipy_sgbcon_scipy_sgbequ_scipy_sgbequb_scipy_sgbrfs_scipy_sgbsv_scipy_sgbsvx_scipy_sgbtf2_scipy_sgbtrf_scipy_sgbtrs_scipy_sgebak_scipy_sgebal_scipy_sgebd2_scipy_sgebrd_scipy_sgecon_scipy_sgeequ_scipy_sgeequb_scipy_sgees_scipy_sgeesx_scipy_sgeev_scipy_sgeevx_scipy_sgehd2_scipy_sgehrd_scipy_sgejsv_scipy_sgelq2_scipy_sgelqf_scipy_sgels_scipy_sgelsd_scipy_sgelss_scipy_sgelsy_scipy_sgemqrt_scipy_sgeql2_scipy_sgeqlf_scipy_sgeqp3_scipy_sgeqr2_scipy_sgeqr2p_scipy_sgeqrf_scipy_sgeqrfp_scipy_sgeqrt_scipy_sgeqrt2_scipy_sgeqrt3_scipy_sgerfs_scipy_sgerq2_scipy_sgerqf_scipy_sgesc2_scipy_sgesdd_scipy_sgesv_scipy_sgesvd_scipy_sgesvj_scipy_sgesvx_scipy_sgetc2_scipy_sgetf2_scipy_sgetrf_scipy_sgetri_scipy_sgetrs_scipy_sggbak_scipy_sggbal_scipy_sgges_scipy_sggesx_scipy_sggev_scipy_sggevx_scipy_sggglm_scipy_sgghrd_scipy_sgglse_scipy_sggqrf_scipy_sggrqf_scipy_sgsvj0_scipy_sgsvj1_scipy_sgtcon_scipy_sgtrfs_scipy_sgtsv_scipy_sgtsvx_scipy_sgttrf_scipy_sgttrs_scipy_sgtts2_scipy_shgeqz_scipy_shsein_scipy_shseqr_scipy_slabad_scipy_slabrd_scipy_slacn2_scipy_slacon_scipy_slacpy_scipy_sladiv_scipy_slae2_scipy_slaebz_scipy_slaed0_scipy_slaed1_scipy_slaed2_scipy_slaed3_scipy_slaed4_scipy_slaed5_scipy_slaed6_scipy_slaed7_scipy_slaed8_scipy_slaed9_scipy_slaeda_scipy_slaein_scipy_slaev2_scipy_slaexc_scipy_slag2_scipy_slag2d_scipy_slags2_scipy_slagtf_scipy_slagtm_scipy_slagts_scipy_slagv2_scipy_slahqr_scipy_slahr2_scipy_slaic1_scipy_slaln2_scipy_slals0_scipy_slalsa_scipy_slalsd_scipy_slamch_scipy_slamrg_scipy_slangb_scipy_slange_scipy_slangt_scipy_slanhs_scipy_slansb_scipy_slansf_scipy_slansp_scipy_slanst_scipy_slansy_scipy_slantb_scipy_slantp_scipy_slantr_scipy_slanv2_scipy_slapll_scipy_slapmr_scipy_slapmt_scipy_slapy2_scipy_slapy3_scipy_slaqgb_scipy_slaqge_scipy_slaqp2_scipy_slaqps_scipy_slaqr0_scipy_slaqr1_scipy_slaqr2_scipy_slaqr3_scipy_slaqr4_scipy_slaqr5_scipy_slaqsb_scipy_slaqsp_scipy_slaqsy_scipy_slaqtr_scipy_slar1v_scipy_slar2v_scipy_slarf_scipy_slarfb_scipy_slarfg_scipy_slarfgp_scipy_slarft_scipy_slarfx_scipy_slargv_scipy_slarnv_scipy_slarra_scipy_slarrb_scipy_slarrc_scipy_slarrd_scipy_slarre_scipy_slarrf_scipy_slarrj_scipy_slarrk_scipy_slarrr_scipy_slarrv_scipy_slartg_scipy_slartgp_scipy_slartgs_scipy_slartv_scipy_slaruv_scipy_slarz_scipy_slarzb_scipy_slarzt_scipy_slas2_scipy_slascl_scipy_slasd0_scipy_slasd1_scipy_slasd2_scipy_slasd3_scipy_slasd4_scipy_slasd5_scipy_slasd6_scipy_slasd7_scipy_slasd8_scipy_slasda_scipy_slasdq_scipy_slasdt_scipy_slaset_scipy_slasq1_scipy_slasq2_scipy_slasq3_scipy_slasq4_scipy_slasq6_scipy_slasr_scipy_slasrt_scipy_slassq_scipy_slasv2_scipy_slaswp_scipy_slasy2_scipy_slasyf_scipy_slatbs_scipy_slatdf_scipy_slatps_scipy_slatrd_scipy_slatrs_scipy_slatrz_scipy_slauu2_scipy_slauum_scipy_sopgtr_scipy_sopmtr_scipy_sorbdb_scipy_sorcsd_scipy_sorg2l_scipy_sorg2r_scipy_sorgbr_scipy_sorghr_scipy_sorgl2_scipy_sorglq_scipy_sorgql_scipy_sorgqr_scipy_sorgr2_scipy_sorgrq_scipy_sorgtr_scipy_sorm2l_scipy_sorm2r_scipy_sormbr_scipy_sormhr_scipy_sorml2_scipy_sormlq_scipy_sormql_scipy_sormqr_scipy_sormr2_scipy_sormr3_scipy_sormrq_scipy_sormrz_scipy_sormtr_scipy_spbcon_scipy_spbequ_scipy_spbrfs_scipy_spbstf_scipy_spbsv_scipy_spbsvx_scipy_spbtf2_scipy_spbtrf_scipy_spbtrs_scipy_spftrf_scipy_spftri_scipy_spftrs_scipy_spocon_scipy_spoequ_scipy_spoequb_scipy_sporfs_scipy_sposv_scipy_sposvx_scipy_spotf2_scipy_spotrf_scipy_spotri_scipy_spotrs_scipy_sppcon_scipy_sppequ_scipy_spprfs_scipy_sppsv_scipy_sppsvx_scipy_spptrf_scipy_spptri_scipy_spptrs_scipy_spstf2_scipy_spstrf_scipy_sptcon_scipy_spteqr_scipy_sptrfs_scipy_sptsv_scipy_sptsvx_scipy_spttrf_scipy_spttrs_scipy_sptts2_scipy_srscl_scipy_ssbev_scipy_ssbevd_scipy_ssbevx_scipy_ssbgst_scipy_ssbgv_scipy_ssbgvd_scipy_ssbgvx_scipy_ssbtrd_scipy_ssfrk_scipy_sspcon_scipy_sspev_scipy_sspevd_scipy_sspevx_scipy_sspgst_scipy_sspgv_scipy_sspgvd_scipy_sspgvx_scipy_ssprfs_scipy_sspsv_scipy_sspsvx_scipy_ssptrd_scipy_ssptrf_scipy_ssptri_scipy_ssptrs_scipy_sstebz_scipy_sstedc_scipy_sstegr_scipy_sstein_scipy_sstemr_scipy_ssteqr_scipy_ssterf_scipy_sstev_scipy_sstevd_scipy_sstevr_scipy_sstevx_scipy_ssycon_scipy_ssyconv_scipy_ssyequb_scipy_ssyev_scipy_ssyevd_scipy_ssyevr_scipy_ssyevx_scipy_ssygs2_scipy_ssygst_scipy_ssygv_scipy_ssygvd_scipy_ssygvx_scipy_ssyrfs_scipy_ssysv_scipy_ssysvx_scipy_ssyswapr_scipy_ssytd2_scipy_ssytf2_scipy_ssytrd_scipy_ssytrf_scipy_ssytri_scipy_ssytri2_scipy_ssytri2x_scipy_ssytrs_scipy_ssytrs2_scipy_stbcon_scipy_stbrfs_scipy_stbtrs_scipy_stfsm_scipy_stftri_scipy_stfttp_scipy_stfttr_scipy_stgevc_scipy_stgex2_scipy_stgexc_scipy_stgsen_scipy_stgsja_scipy_stgsna_scipy_stgsy2_scipy_stgsyl_scipy_stpcon_scipy_stpmqrt_scipy_stpqrt_scipy_stpqrt2_scipy_stprfb_scipy_stprfs_scipy_stptri_scipy_stptrs_scipy_stpttf_scipy_stpttr_scipy_strcon_scipy_strevc_scipy_strexc_scipy_strrfs_scipy_strsen_scipy_strsna_scipy_strsyl_scipy_strti2_scipy_strtri_scipy_strtrs_scipy_strttf_scipy_strttp_scipy_stzrzf_scipy_xerbla_array_scipy_zbbcsd_scipy_zbdsqr_scipy_zcgesv_scipy_zcposv_scipy_zdrscl_scipy_zgbbrd_scipy_zgbcon_scipy_zgbequ_scipy_zgbequb_scipy_zgbrfs_scipy_zgbsv_scipy_zgbsvx_scipy_zgbtf2_scipy_zgbtrf_scipy_zgbtrs_scipy_zgebak_scipy_zgebal_scipy_zgebd2_scipy_zgebrd_scipy_zgecon_scipy_zgeequ_scipy_zgeequb_scipy_zgees_scipy_zgeesx_scipy_zgeev_scipy_zgeevx_scipy_zgehd2_scipy_zgehrd_scipy_zgelq2_scipy_zgelqf_scipy_zgels_scipy_zgelsd_scipy_zgelss_scipy_zgelsy_scipy_zgemqrt_scipy_zgeql2_scipy_zgeqlf_scipy_zgeqp3_scipy_zgeqr2_scipy_zgeqr2p_scipy_zgeqrf_scipy_zgeqrfp_scipy_zgeqrt_scipy_zgeqrt2_scipy_zgeqrt3_scipy_zgerfs_scipy_zgerq2_scipy_zgerqf_scipy_zgesc2_scipy_zgesdd_scipy_zgesv_scipy_zgesvd_scipy_zgesvx_scipy_zgetc2_scipy_zgetf2_scipy_zgetrf_scipy_zgetri_scipy_zgetrs_scipy_zggbak_scipy_zggbal_scipy_zgges_scipy_zggesx_scipy_zggev_scipy_zggevx_scipy_zggglm_scipy_zgghrd_scipy_zgglse_scipy_zggqrf_scipy_zggrqf_scipy_zgtcon_scipy_zgtrfs_scipy_zgtsv_scipy_zgtsvx_scipy_zgttrf_scipy_zgttrs_scipy_zgtts2_scipy_zhbev_scipy_zhbevd_scipy_zhbevx_scipy_zhbgst_scipy_zhbgv_scipy_zhbgvd_scipy_zhbgvx_scipy_zhbtrd_scipy_zhecon_scipy_zheequb_scipy_zheev_scipy_zheevd_scipy_zheevr_scipy_zheevx_scipy_zhegs2_scipy_zhegst_scipy_zhegv_scipy_zhegvd_scipy_zhegvx_scipy_zherfs_scipy_zhesv_scipy_zhesvx_scipy_zheswapr_scipy_zhetd2_scipy_zhetf2_scipy_zhetrd_scipy_zhetrf_scipy_zhetri_scipy_zhetri2_scipy_zhetri2x_scipy_zhetrs_scipy_zhetrs2_scipy_zhfrk_scipy_zhgeqz_scipy_zhpcon_scipy_zhpev_scipy_zhpevd_scipy_zhpevx_scipy_zhpgst_scipy_zhpgv_scipy_zhpgvd_scipy_zhpgvx_scipy_zhprfs_scipy_zhpsv_scipy_zhpsvx_scipy_zhptrd_scipy_zhptrf_scipy_zhptri_scipy_zhptrs_scipy_zhsein_scipy_zhseqr_scipy_zlabrd_scipy_zlacgv_scipy_zlacn2_scipy_zlacon_scipy_zlacp2_scipy_zlacpy_scipy_zlacrm_scipy_zlacrt_scipy_zlaed0_scipy_zlaed7_scipy_zlaed8_scipy_zlaein_scipy_zlaesy_scipy_zlaev2_scipy_zlag2c_scipy_zlags2_scipy_zlagtm_scipy_zlahef_scipy_zlahqr_scipy_zlahr2_scipy_zlaic1_scipy_zlals0_scipy_zlalsa_scipy_zlalsd_scipy_zlangb_scipy_zlange_scipy_zlangt_scipy_zlanhb_scipy_zlanhe_scipy_zlanhf_scipy_zlanhp_scipy_zlanhs_scipy_zlanht_scipy_zlansb_scipy_zlansp_scipy_zlansy_scipy_zlantb_scipy_zlantp_scipy_zlantr_scipy_zlapll_scipy_zlapmr_scipy_zlapmt_scipy_zlaqgb_scipy_zlaqge_scipy_zlaqhb_scipy_zlaqhe_scipy_zlaqhp_scipy_zlaqp2_scipy_zlaqps_scipy_zlaqr0_scipy_zlaqr1_scipy_zlaqr2_scipy_zlaqr3_scipy_zlaqr4_scipy_zlaqr5_scipy_zlaqsb_scipy_zlaqsp_scipy_zlaqsy_scipy_zlar1v_scipy_zlar2v_scipy_zlarcm_scipy_zlarf_scipy_zlarfb_scipy_zlarfg_scipy_zlarfgp_scipy_zlarft_scipy_zlarfx_scipy_zlargv_scipy_zlarnv_scipy_zlarrv_scipy_zlartg_scipy_zlartv_scipy_zlarz_scipy_zlarzb_scipy_zlarzt_scipy_zlascl_scipy_zlaset_scipy_zlasr_scipy_zlassq_scipy_zlaswp_scipy_zlasyf_scipy_zlat2c_scipy_zlatbs_scipy_zlatdf_scipy_zlatps_scipy_zlatrd_scipy_zlatrs_scipy_zlatrz_scipy_zlauu2_scipy_zlauum_scipy_zpbcon_scipy_zpbequ_scipy_zpbrfs_scipy_zpbstf_scipy_zpbsv_scipy_zpbsvx_scipy_zpbtf2_scipy_zpbtrf_scipy_zpbtrs_scipy_zpftrf_scipy_zpftri_scipy_zpftrs_scipy_zpocon_scipy_zpoequ_scipy_zpoequb_scipy_zporfs_scipy_zposv_scipy_zposvx_scipy_zpotf2_scipy_zpotrf_scipy_zpotri_scipy_zpotrs_scipy_zppcon_scipy_zppequ_scipy_zpprfs_scipy_zppsv_scipy_zppsvx_scipy_zpptrf_scipy_zpptri_scipy_zpptrs_scipy_zpstf2_scipy_zpstrf_scipy_zptcon_scipy_zpteqr_scipy_zptrfs_scipy_zptsv_scipy_zptsvx_scipy_zpttrf_scipy_zpttrs_scipy_zptts2_scipy_zrot_scipy_zspcon_scipy_zspmv_scipy_zspr_scipy_zsprfs_scipy_zspsv_scipy_zspsvx_scipy_zsptrf_scipy_zsptri_scipy_zsptrs_scipy_zstedc_scipy_zstegr_scipy_zstein_scipy_zstemr_scipy_zsteqr_scipy_zsycon_scipy_zsyconv_scipy_zsyequb_scipy_zsymv_scipy_zsyr_scipy_zsyrfs_scipy_zsysv_scipy_zsysvx_scipy_zsyswapr_scipy_zsytf2_scipy_zsytrf_scipy_zsytri_scipy_zsytri2_scipy_zsytri2x_scipy_zsytrs_scipy_zsytrs2_scipy_ztbcon_scipy_ztbrfs_scipy_ztbtrs_scipy_ztfsm_scipy_ztftri_scipy_ztfttp_scipy_ztfttr_scipy_ztgevc_scipy_ztgex2_scipy_ztgexc_scipy_ztgsen_scipy_ztgsja_scipy_ztgsna_scipy_ztgsy2_scipy_ztgsyl_scipy_ztpcon_scipy_ztpmqrt_scipy_ztpqrt_scipy_ztpqrt2_scipy_ztprfb_scipy_ztprfs_scipy_ztptri_scipy_ztptrs_scipy_ztpttf_scipy_ztpttr_scipy_ztrcon_scipy_ztrevc_scipy_ztrexc_scipy_ztrrfs_scipy_ztrsen_scipy_ztrsna_scipy_ztrsyl_scipy_ztrti2_scipy_ztrtri_scipy_ztrtrs_scipy_ztrttf_scipy_ztrttp_scipy_ztzrzf_scipy_zunbdb_scipy_zuncsd_scipy_zung2l_scipy_zung2r_scipy_zungbr_scipy_zunghr_scipy_zungl2_scipy_zunglq_scipy_zungql_scipy_zungqr_scipy_zungr2_scipy_zungrq_scipy_zungtr_scipy_zunm2l_scipy_zunm2r_scipy_zunmbr_scipy_zunmhr_scipy_zunml2_scipy_zunmlq_scipy_zunmql_scipy_zunmqr_scipy_zunmr2_scipy_zunmr3_scipy_zunmrq_scipy_zunmrz_scipy_zunmtr_scipy_zupgtr_scipy_zupmtr_PyOS_snprintfPySequence_FastPyExc_ValueErrorstrcpystrlen_PyDict_GetItemStringWithErrorstrcmpPyObject_GenericGetAttrPyUnicode_FromStringAndSizePyMem_FreePyUnicode_ConcatPyMem_MallocmemcpystderrfprintfPyErr_NoMemoryPyCapsule_NewPyObject_FreePyUnicode_FromFormatPyThreadState_GetDictPyDict_GetItemStringPyLong_AsVoidPtrPyLong_FromVoidPtr_Py_FatalErrorFunc_PyObject_NewPyDict_NewPyExc_SystemErrorPyDict_DelItemStringPyExc_AttributeErrorPySequence_Sizelibscipy_openblas.solibc.so.6GLIBC_2.14GLIBC_2.2.5/opt/_internal/cpython-3.12.11/lib/python3.12/site-packages/scipy_openblas32/liblibscipy_openblas-b75cc656.so$ORIGIN/../../scipy.libs