§
    _€h¼  ã                   ó¤   — d dl Z  e j        ¦   «         d„ ¦   «         Z e j        ¦   «         d„ ¦   «         Z e j        ¦   «         d„ ¦   «         Zd„ ZdS )é    Nc                 óx   — t          j        | t          j        dg| j        t           j        ¬¦  «        ¬¦  «        S )Nr   ©ÚdeviceÚdtype)Úprepend)ÚtorchÚdiffÚtensorr   Úlong)Úoffsets    ú</tmp/cameron/UniRig/src/model/pointcept/models/utils/misc.pyÚoffset2bincountr      s7   € åŒ:Øœ a S°´ÅeÄjÐQÑQÔQðñ ô ð ó    c                 ó¬   — t          | ¦  «        }t          j        t          |¦  «        | j        t          j        ¬¦  «                             |¦  «        S )Nr   )r   r   ÚarangeÚlenr   r   Úrepeat_interleave)r   Úbincounts     r   Úoffset2batchr      sG   € å˜vÑ&Ô&€HÝŒ<ÝˆH‰Œ˜fœmµ5´:ðñ ô çÒ˜Ñ!Ô!ð"r   c                 óv   — t          j        |                      ¦   «         d¬¦  «                             ¦   «         S )Nr   )Údim)r   Úcumsumr   r   )Úbatchs    r   Úbatch2offsetr      s-   € åŒ<˜ŸšÑ(Ô(¨aÐ0Ñ0Ô0×5Ò5Ñ7Ô7Ð7r   c                 óÎ   — | j         \  }}||k    sJ ‚|                      ¦   «         d d…                              |dz
  |dz   ¦  «        d d …dd …f                              ¦   «         S )Néÿÿÿÿé   )ÚshapeÚflattenÚview)ÚxÚnÚms      r   Úoff_diagonalr$      sf   € àŒ7D€A€qØŠ6ˆ6ˆ6ˆ6Ø9Š9‰;Œ;s˜sÔ× Ò   Q¡¨¨A©Ñ.Ô.¨q¨q¨q°!°"°"¨uÔ5×=Ò=Ñ?Ô?Ð?r   )r   Úinference_moder   r   r   r$   © r   r   ú<module>r'      s¡   ðØ €€€ð €ÔÑÔðð ñ Ôðð €ÔÑÔð"ð "ñ Ôð"ð €ÔÑÔð8ð 8ñ Ôð8ð@ð @ð @ð @ð @r   