§
    JŠtjÒ  ã                   ó:   — d dl mZ d dl mZ  G d„ de¦  «        ZdS )é   )Úencode)Únumber_typesc                   ó^   — e Zd ZdZdZd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ Zd„ Zd„ Zd„ ZdS )ÚTablez�Table wraps a byte slice and provides read access to its data.

  The variable `Pos` indicates the root of the FlatBuffers object therein.
  )ÚBytesÚPosc                 ó`   — t          j        |t           j        ¦  «         || _        || _        d S )N)ÚNÚenforce_numberÚUOffsetTFlagsr   r   )ÚselfÚbufÚposs      úO/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/flatbuffers/table.pyÚ__init__zTable.__init__   s)   € ÝÔ�S�!œ/Ñ*Ô*Ð*à€D„JØ€D„H€H€Hó    c                 óò   — | j         |                      t          j        | j         ¦  «        z
  }|                      t          j        |¦  «        }||k     r#|                      t          j        ||z   ¦  «        S dS )zxOffset provides access into the Table's vtable.

    Deprecated fields are ignored by checking the vtable's length.
    é    )r   ÚGetr
   ÚSOffsetTFlagsÚVOffsetTFlags)r   ÚvtableOffsetÚvtableÚ	vtableEnds       r   ÚOffsetzTable.Offset!   sb   € ð ŒX˜Ÿš¥¤°$´(Ñ;Ô;Ñ;€FØ—’�œ¨&Ñ1Ô1€IØ�iÒÐØ�XŠX•a”o v°Ñ'<Ñ=Ô=Ð=Øˆ1r   c                 óš   — t          j        |t           j        ¦  «         |t          j        t           j        j        | j        |¦  «        z   S )z:Indirect retrieves the relative offset stored at `offset`.)r
   r   r   r   r   Úpacker_typer   )r   Úoffs     r   ÚIndirectzTable.Indirect-   s7   € åÔ�S�!œ/Ñ*Ô*Ð*Ø•”�AœOÔ7¸¼ÀSÑIÔIÑIÐIr   c                 óT  — t          j        |t           j        ¦  «         |t          j        t           j        j        | j        |¦  «        z  }|t           j        j        z   }t          j        t           j        j        | j        |¦  «        }t          | j        |||z   …         ¦  «        S )z<String gets a string from data stored inside the flatbuffer.)	r
   r   r   r   r   r   r   Ú	bytewidthÚbytes)r   r   ÚstartÚlengths       r   ÚStringzTable.String2   s}   € åÔ�S�!œ/Ñ*Ô*Ð*Ø�6Œ:•a”oÔ1°4´:¸sÑCÔCÑC€CØ•!”/Ô+Ñ+€EÝŒZ�œÔ3°T´ZÀÑEÔE€FÝ�”˜E E¨F¡NÐ2Ô3Ñ4Ô4Ð4r   c                 ó  — t          j        |t           j        ¦  «         || j        z  }|t	          j        t           j        j        | j        |¦  «        z  }t	          j        t           j        j        | j        |¦  «        }|S )zfVectorLen retrieves the length of the vector whose offset is stored

    at "off" in this object.
    )r
   r   r   r   r   r   r   r   )r   r   Úrets      r   Ú	VectorLenzTable.VectorLen:   sb   € õ
 Ô�S�!œ/Ñ*Ô*Ð*àˆ4Œ8�O€CØ�6Œ:•a”oÔ1°4´:¸sÑCÔCÑC€CÝ
Œ*•Q”_Ô0°$´*¸cÑ
BÔ
B€CØ€Jr   c                 óÆ   — t          j        |t           j        ¦  «         || j        z  }||                      t           j        |¦  «        z   }|t           j        j        z  }|S )zjVector retrieves the start of data of the vector whose offset is

    stored at "off" in this object.
    )r
   r   r   r   r   r!   )r   r   Úxs      r   ÚVectorzTable.VectorF   sR   € õ
 Ô�S�!œ/Ñ*Ô*Ð*àˆ4Œ8�O€CØˆd�hŠh•q”¨Ñ,Ô,Ñ,€Aà�ŒÔ	"Ñ"€AØ€Hr   c                 óð   — t          |¦  «        t          u sJ ‚t          j        |t          j        ¦  «         || j        z  }||                      t          j        |¦  «        z   |_        | j        |_        dS )z]Union initializes any Table-derived type to point to the union at

    the given offset.
    N)Útyper   r
   r   r   r   r   r   )r   Út2r   s      r   ÚUnionzTable.UnionS   sd   € õ
 �‰8Œ8•uÐÐÐÐÝÔ�S�!œ/Ñ*Ô*Ð*àˆ4Œ8�O€CØ�4—8’8�AœO¨SÑ1Ô1Ñ1€B„FØŒz€B„H€H€Hr   c                 ó¦   — t          j        |t           j        ¦  «         |                     t	          j        |j        | j        |¦  «        ¦  «        S )zVGet retrieves a value of the type specified by `flags`  at the

    given offset.
    )r
   r   r   Úpy_typer   r   r   r   )r   Úflagsr   s      r   r   z	Table.Get_   s>   € õ
 Ô�S�!œ/Ñ*Ô*Ð*Ø�=Š=�œ EÔ$5°t´zÀ3ÑGÔGÑHÔHÐHr   c                 óä   — t          j        |t           j        ¦  «         |�t          j        ||¦  «         |                      |¦  «        }|dk    r|S |                      || j        |z   ¦  «        S )Nr   )r
   r   r   r   r   r   )r   ÚslotÚdÚvalidator_flagsr   s        r   ÚGetSlotzTable.GetSlotg   si   € ÝÔ�T�1œ?Ñ+Ô+Ð+ØÐ"ÝÔ�q˜/Ñ*Ô*Ð*Ø
�+Š+�dÑ
Ô
€CØ
ˆa‚x€xØ€hØ�8Š8�O T¤X°¡^Ñ4Ô4Ð4r   c                 ó¶   — |                       |¦  «        }|                      |¦  «        }t          j        |¦  «        }t	          j        || j        ||¦  «        S )zåGetVectorAsNumpy returns the vector that starts at `Vector(off)`

    as a numpy array with the type specified by `flags`. The array is
    a `view` into Bytes, so modifying the returned array will
    modify Bytes in place.
    )r+   r(   r
   Úto_numpy_typer   ÚGetVectorAsNumpyr   )r   r2   r   Úoffsetr$   Únumpy_dtypes         r   r:   zTable.GetVectorAsNumpyp   sN   € ð �[Š[˜ÑÔ€FØ�^Š^˜CÑ Ô €FÝ”/ %Ñ(Ô(€KÝÔ" ;°´
¸FÀFÑKÔKÐKr   c                 ób   — t          j        |¦  «        }t          j        || j        ||¦  «        S )a	  GetArrayAsNumpy returns the array with fixed width that starts at `Vector(offset)`

    with length `length` as a numpy array with the type specified by `flags`.
    The
    array is a `view` into Bytes so modifying the returned will modify Bytes in
    place.
    )r
   r9   r   r:   r   )r   r2   r   r$   r<   s        r   ÚGetArrayAsNumpyzTable.GetArrayAsNumpy|   s,   € õ ”/ %Ñ(Ô(€KÝÔ" ;°´
¸FÀCÑHÔHÐHr   c                 ó¼   — t          j        |t           j        ¦  «         t          j        |t           j        ¦  «         |                      |¦  «        }|dk    r|S |S )z£GetVOffsetTSlot retrieves the VOffsetT that the given vtable location

    points to. If the vtable value is zero, the default value `d`
    will be returned.
    r   )r
   r   r   r   )r   r4   r5   r   s       r   ÚGetVOffsetTSlotzTable.GetVOffsetTSlot‡   sR   € õ Ô�T�1œ?Ñ+Ô+Ð+ÝÔ�Q�œÑ(Ô(Ð(à
�+Š+�dÑ
Ô
€CØ
ˆa‚x€xØ€hØ€Jr   N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ú	__slots__r   r   r   r%   r(   r+   r/   r   r7   r:   r>   r@   © r   r   r   r      så   € € € € € ðð ð
 €)ðð ð ð
ð 
ð 
ðJð Jð Jð
5ð 5ð 5ð
ð 
ð 
ðð ð ð
ð 
ð 
ðIð Ið Ið5ð 5ð 5ð
Lð 
Lð 
Lð	Ið 	Ið 	Iðð ð ð ð r   r   N)Ú r   r   r
   Úobjectr   rF   r   r   ú<module>rI      si   ðð Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð ðAð Að Að Að AˆFñ Aô Að Að Að Ar   