#!/bin/sh
exec_dir=${YAPBINDIR:-/usr/bin}
exec $exec_dir/yap $0 "$@"
YAPVYap-5.1.3            >   0  ,       o4       >        hhH   ` (      p     T | D | Ў  ̕ p ܑ 4   < ܐ    č P H d  h L      4    0 X   |    \ |   и     8 \    p d x  $  (  d , | 8 8 l   ̮    $   l ܲ d ̳  ̵ @      8 X  @ |   0   , \   `       l   T  4      <   4   ( 8 D    d  X  ( Ĺ ؝  T  P  , 4 ( 8 x   < 0 L   | ,  @   H        D  p X T          p   $ `  ( ̾     l @ d  $     x  8  \  ̦ \ l   P  ( Խ , `  l p |    x    |  О 8 ȥ   @  Ԥ D  , d    h 0  ؠ  H  `  Т   (  (  `         ؅   t  $ `     D L  x @   | 
































								

































    .               ?           []          .           
0	 dE  |  8#        x  (                                                                                                                                                                                                                                                                            >         d龀@    q          7           h      )5                                                                                                                                                                                                                                                                                                                                                                                                                                                @p    I                                                                                                          )(    `     hXhX|     hXhX                                                                                                                                                           `     ؗؗ`                             `     H                                                                                                   /   P"x                                           Q                   P   |:                                                                                                                                                                                                                                                           T     fg                                                                                                                          #Hl            8 8xЄ脀 8P`xЅx 8HXpІ膀  8P`pȇ 8PЈ    o 舀Hh    (@XpЊ芀0Hȁ` x苀 P@pHp؎ 8PhЏ@x8Pojoooop*pBpZpprpp`p @(ȕ0Ж蘀            X                                                                                '                      X                         X    e        ɍ        K               7                        7#        

#$







$$,,44<<DDLLTT\\ddlltt||$$,,44<<DDLLTT\\ddlltt||







$
$
,
,
4
4
<
<
D
D
L
L
T
T
\
\
d
d
l
l
t
t
|
|


















                                      0  0      0         i           $      ``     H                                   ƍ$?i           T                    ȍ                                     0ʌi                     ȍH                                   b         Ў 4 Ў 4 0 4 D D  4  4  4  H `      1      (         H  !   B    $thread_exit_status !   ]p$run_at_thread_exit !    $erase_thread_info              0             Pi                 pPpP8S    pH                                   ii                     H                                   PЧ       H 4 x    X 4 Ў 4 Ў 4  D  4 | 4 Ĺ   4 0 4  pP9 4 ` t 4  4 ҈ X 4   ( H                        Ў 4 Ў 4 Ў 4  $ Lx ( 4 | 4 Ĺ  4 0 4  x8 4      @ ( d (  4 | 4 Ĺ  ̅   Ĺ 0 4  P9 4 `   4  4 ҈  4   ( H                         `!   Ȑ $thread_options >   8detached !   ~$thread_new_tid #!   H$create_thread \!       `resource_error =           memory ෆ             X                 8x             p   xÍ       ׆H                              i                 88     H                                   8)i           T                                                         x    оi            Ў             0H                                   pCi           T                    H                                     H    8)        н    Ў 4 0 4 H 4 p      4 D XAн| 4      ҈  "  4 " 0 4 0 4 0 4 0 4 0 4  4 `  xн0 4 ` н 4 ` н 4 | 4 Ĺ P Ĺ P Ĺ  "  4  4 ` Hн 4 ` Íнl $ нx ( 4  4  4  4  4  4 ` н `  н 0 ( н( н 4 | 4 Ĺ  ̅    `     4 4      P9н ( нH (@                                      C     x  p    Ў 4 Ў 4 0 4 H 4 X    p    4 D tXAp  4 p    bˇĹ  4 ` |pd  4 "  4 " 0 4 0 4 0 4 0 4 0 4  4 ` xp 4 ` p 4 ` p 4 | 4 Ĺ P Ĺ P Ĺ  "  4  4 ` Hp 4 ` Ípl $ px  4  4  4  4  4  4 ` p ` p  ( p( p 4 | 4 Ĺ  ̅    `     4 4      P9p ( pH PA  A  A                                                                                                                                                                                                                                                                                                                                                                                                                                                              A                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              	@                                      (                                    P                                             @                                                                                    ?                                                                     4                           @                                    h $                                                                                                                                                                                               4                                                                                                                                                             #                                                                               ,                                    T                                    |                                                                                                                                                                                                 L %                   d                                                                                                                                                                                             (                    D                            `                                                                                                                ؅                                                                      0            D    D                                                                                                                                                                                          x                                                                                           p             P                                                                                                                z                                                                                                                                                                                                                                                                                    Q                                                                           l y   p                                                                                                         {                                                                                                                   X    ` s                                                                                                                                                                                                                <            L                    `                                                                                                                                                 -                                                   0 .                                   X /                           | 2                                                    0                        1                                                                           $    (                                    T                                                                                                        č                                                     ,                                                           8                                                                                                                                                 +   Ў                                                                                        <                                                                                                                                                                                                                            (            8            H !                                                                                        &                                           ܐ                                                               (                                           P                                                                                                                                 ܑ                     )        '                                                                                           d "                   x                                                                                                                                                               (                                                   `                                                                                                                                                          d                                                                                               p 
                                                                                                                                                                                                                   P                                    |                                                                        ̕                                     !                                                  0 l                                                           p                                                                                                                                                                                                                        d    l O                                                                                                                                                                                                   8 M                                                                                                                                                                                                                   j                   4                    H                             l                                                                                                                                                                                (                                            \                                                                                                 k                                                                                      $                                                   \ p                                                                                                                                                                                                   ,                                            X                            | L                    r                                                                                                                                                      8 e   8 N                                   l                                                                                                            ؝                                                     g    n                                   @ h   L $                                          | i    %                                           m    3                   О                                                                     )                  4 ~                   H                            l                                                                                                                                                                                        0                                                   h                                                                                                      ؠ                                                                                                  H           \                                                                                                                                       	                                                  ( 
          8                                    `                                                                                                  Т 
                                                      a                                           @                                                    x                                                                                                                                 `                                   ,                                                    d                    x             (                                                              Ԥ                                                                                                        D                                                    | *  |                                                                    ȥ                                                                                                         8                                                    p                                                                                ̦             q                                                               $ F   , o                                                                                                                                                                           G                                    "                          ( H                   D #                                          p B   x &                                               A                                                    I                                                                                                                   `   d J                                                                                       b                                                                                           , K                   @ '                                          t                            
                                                                                                                                                               @                                                                                                                                                                                 c     u    t                                                                   T                                                                                                                                                                                             	                                                                                                   |                     }                                                                            v                                                    w                                                   T |                                                                                                                   ̮ R                                                                                                                                                                                    S                                                                                                                    T                                                                                                                                            U                                                                                                                                                   $ V                                                                                                                            W                                                                                            X                                                                                                   l Y                                                                                                           ܲ Z                                                                                                                                   d [                                                                                                   ̳ \                                                                                                                                                                                                                                            ]                                                                                                                                                                                                                                                                           ̵ ^                                                                                                                   @ _                                                                                                                                                                                                                                           4                                                                    |                                                                                                                                                                                                                    X f                                                                                                                   и 9                                             :                                   (                                                                                                             ;                                   Ĺ                                                                             <                                   8 =                           \ >                                    7                                                            8                                                                                                                                           \ 5                           | 6                                                                                                                                                               $                                                                                                                                                                                                                                                                        4 *                                                                                                                                                           Խ                                                                                    ,                                                    `                                                                                                ̾                                                                                                    <                                    d C                   x D            E                                                                                                                      Xprolog             puser               pidb        pattributes          qcharsio        qterms              system         Hqreadutil           `qyap_hacks          qnb         xarg        `swi          #o             p&op         op          ׏op         ́op         @1p q         #(pq         @p0q         HXpHq             p`q         ppxq	                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          _^(ۈP݈܈ڈp·׈׈pֈPԈӈ`҈ш(ˈpȈƈ0ň0ȼصp  	 H@X`ࡈx 蘈ؖ(Ј0X= 90p!43 |bʎFӎ@ˎhz00 P(XՏߏHޏ8؏׏h׏q͏HɏP̏xǏh0h(hP(P(pXȔ` &ppآ0rXp#PߐߐhސiHʆhg^0# -ؗ              PXȀ$creep                   i           쁀      0V0VV    ȁP                                                  `$undefp                  Hxi           EP      EEE    `Hi                                              T`$spy                     i                 --/    8                                   x               fail        i                       x                                              V8i$abol              Xnot        ,append         HW    $array         o@$array_arg         ->         д:-     $alarm      !       $sig_pending               Њ{}     Ȭ    $att        !   @/<$last_choice_pt        `mP|$break         (call           $catch             ,          ;cputime         o$csult             !        $cut_by            $dbref             P;e          x=              end_of_file        ؗfalse              $fast              >      @|$gc        $gc_margin     0    $gc_trace      hƃ    $gc_verbose !        $gc_very_verbose           訐var        ;global_sp      0;heapused           h;inf        8<          0local_sp       p-$call              -      ΋$mf        ;nan        8\+         otherwise          8;pi     Px+      ޏP$portray       S$profile           ?-         ;random             0read               xrepeat      !   3t$restore_regs              h;      ȝ<stackfree          $stream     !       $stream_position           true               user_error             user_input             user_output        P$VAR        !   H($version_name              Hwrite                  %.15g              AF_INET                             AF_LOCAL                 ȉ       AF_UNIX                                   0)             Pр             h`ԃ             x                          xL$att_do                                                     X             X*   ]($when                                     PhX             x                 h!   @$execute_in_mod                  a!   舆苀$execute_wo_mod                  ȋb!   = $execute_within                              Patom                     8       atomic                   h`       compound                 (       @float                    ȌȠ   @m$format@                 (       x@integer                  (        pnumber                   Xp       primitive                             )   v$last_execute_within                     Ѝ                 0     !   訄H$mega_clause                     (           ࠀ:                `@   $mf_clause                   !   ߄؎$mutable_variable                           queue                                     `q             pk             ȇ ^                 !   ?$static_clause                                                     !       end_of_stream                    菀    !   <@$top_thread_goal                  xƍ!   hx$change_module                   X
!   ܌	$current_module                  @
   throw                    Ȑ0             P                            |                (#             0    )          $I_FOUND_THE_VARIABLE_AGAIN              i            i(         i i i    ЈHi                                                        8 i           t      t.=    Hi                                                        8i           }      }uu    Hi                                            !   @($recorded_with_key               @i           f  D    fff     (                                             !   ؄$do_log_upd_clause               i           ܟ̮      ܟx    ȓJ                                   @        )   @p$do_log_upd_clause_erase                 Hi           ̮      (    pJ                                           !   U$do_log_upd_clause0              (i           ̮       `    J                                           !   p$do_static_clause                ȕi           d̮      dء8    J                                   (        i           u0       uuu    Hi                                   ȕ        !   b$handle_throw                    Жi                 uv    Hi                                   0        !       Xgoal_expansion                   8pi           |   (   |             X  o                                           i                                                          Ж        i           LT        L             p                                     ؗ        A                                                              9       "  0                       8                ȓ      8i           DT       D                                                   @        !   p  x        $4           xm--> !               4    !   h      Й$             0dynamic     !             ~$      !       thread_local        !         H    (~$      !   ("(]initialization      !             h~$             mode        !         Ț    ~$             pކpublic      !              ~$         (!multifile   !         8    ~$      !       ݆meta_predicate      !         p    P~$      !       ކmodule_transparent  !             ~$      !   p8܆discontiguous       !             Л~$             huncutable   !         0    ~$      !   8  p    H  L    !   8  (    h  L    !   X  h                  *-> !         Ȝ          !   H  P    ؜      !     0           !                !   (      8      !   x      X  2       ߄\=  !             x  2           PEis  !         ȝ      2           в=.. !             ؝  2           ==  !         (      2           \== !         X    8  2           H@<  !             h  2           @>  !               2           @=< !         螀    Ȟ  2       i @>= !               2           X=@= !         H    (  2           \=@=        !         x    X  2           8=:= !               2           =\= !               2    !               2    !         8      2           x=<  !         P    0  2       >=  !             `  2           xBas  !               X2    !   p  `      X    !         ࠀ!!    !     P     !!           Ɔ/\  !         @       !       ІƆ\/  !         p    P  !           ǆ#   !               !           \   !         С    !             rdiv        !              ࡀ  !       NÆ*   !         8      !           /   !         h    H  !           ǆ<<  !             x  !           Ȇ>>  !         Ȣ      !           mod !             آ  !       (ņrem !         (      !           //  !         X    8  !           Ɇ**  !             h  0       Ȇ^   !                       $leash                             Yap-5.1.3            )       system_library_directory    !           /usr/share/Yap               b       set_value                i           8  X    	                                                   8        9      4            ( H 8   Kxget_value                `i             X    	              x                                             9      4            ( H    ՉH$values                  0`i           ئ  X   	              H                                             9      4   `         ``( `H ئ   ׄ$opdec                    0i             X   D	                                                   `        9      4   0         00( 0H        觀name                     Ч i           x  P     H2
              觀                                     0        A      <                 (  H x       char_code                بi           P  X     	                                                            9      4   ب         بب( بH P       atom_chars               xi              P     *
                                                   ب        A      <              ( H         hatom_codes               Pi             P     
              h                                             A      <              ( H        @atom_length              (Xi           Ы  X     	              @                                             9      4   X         XX( XH Ы   p7$atom_split              (i             X    
                                                   X        9      4   (         ((( (H !   `謀$sub_atom_extract                Ȭ i           x  P    
              謀                                     (        A      <                 (  H x!       ȭnumber_chars                     ୀi           X  P     $
              ȭ                                              A      <   ୀ          ୀୀ ( ୀH X       number_atom              i           0  P     p	                                                   ୀ        A      <              ( H 0!       number_codes                     `i             P     

                                                           A      <              ( H        Xatom_number              @pi           谀  P     X	              X                                             A      <   p          pp ( pH 谀       (atom_concat              Hi             P     E
              0                                     p        A      <   H          HH ( HH !       h,atomic_concat                    (i             P     \	                                                   H        A      <   (          (( ( (H          貀i           `  P     L;
              в                                     (        A      <   貀          貀貀 ( 貀H `)   $statistics_trail_max                    гi           H  X   	                                                   貀        9      4   г         гг( гH H)    $statistics_heap_max                     pi           (  X   	                                                   г        9      4            ( H ()   x$statistics_global_max                   Pi             X   	              x                                             9      4            ( H )   oX$statistics_local_max                    0pi           趀  X   p	              X                                             9      4   p         pp( pH 趀)   8$statistics_heap_info                    Pi           ȷ  X   P	              8                                     p        9      4   P         PP( PH ȷ)   轀$statistics_stacks_info                  0i             X   |	                                                   P        9      4   0         00( 0H )   `ۃ$statistics_trail_info                   иi             X    	                                                   0        9      4            ( H )   ع$statistics_atom_info                    i           h  X   h	              ع                                             9      4            ( H h!   $statistics_db_size              Ⱥi           @  X    
                                                           9      4   Ⱥ         ȺȺ( ȺH @)   0$statistics_lu_db_size                   hi              X   B
                                                   Ⱥ        9      4            ( H     0w`$argv                    Hxi             X    	              `                                             9      4   x         xx( xH    8Í0$runtime                 Hi             X   	              0                                     x        9      4   H         HH( HH    u $cputime                 轀i             X   l	                                                    H        9      4            ( H    0о$walltime                辀i           `  X   	              о                                             9      4   辀         辀辀( 辀H `!   $access_yap_flags                i           8  X    8	                                                   辀        9      4            ( H 8!   ԁ$set_yap_flags                   `i             X   J
                                                           9      4            ( H !   苃X$p_system_mode                   8pi             X   D	              X                                             9      4   p         pp( pH    nhabort       i             P     	                                                   p        A      <   (          (( ( (H !   $max_tagged_integer              Ài           À  X     	                                                   (        9      4   À         ÀÀ( ÀH À!   À$min_tagged_integer              ÀÀi           XĀ  X    	              À                                     À        9      4   À         ÀÀ( ÀH XĀ   Ā$halt                    ĀĀi           (ŀ  P   	              Ā                                     À        A      <   Ā          ĀĀ ( ĀH (ŀ!    txŀ$lock_system        i           ŀ  X     D	              Xŀ                                     Ā        9      4   xŀ         xŀxŀ( xŀH ŀ!    8ƀ$unlock_system      i           ƀ  X     L	              ƀ                                     xŀ        9      4   8ƀ         8ƀ8ƀ( 8ƀH ƀ!   	ƀ$enter_undefp       i           pǀ  X     T	              ƀ                                     8ƀ        9      4   ƀ         ƀƀ( ƀH pǀ!   @Hǀ$exit_undefp        i           0Ȁ  X     p	              ǀ                                     ƀ        9      4   ǀ         ǀǀ( ǀH 0Ȁi   ȁ    Ȁ  X    	                                                   ǀ        9      4   XȀ         XȀXȀ( XȀH Ȁ   P3ɀ$late_creep i           ɀ  X    	              Ȁ                                     XȀ        9      4   ɀ         ɀɀ( ɀH ɀ!   @ɀ$do_not_creep       i           Hʀ  X     	              ɀ                                     ɀ        9      4   ɀ         ɀɀ( ɀH Hʀ    P$flags                   pʀʀi           ˀ  P   h
              ʀ                                     ɀ        A      <   ʀ          ʀʀ ( ʀH ˀ       `ˀhide                     Hˀxˀi           ˀ  X    	              `ˀ                                     ʀ        9      4   xˀ         xˀxˀ( xˀH ˀ       0̀unhide                   ̀H̀i           ̀  X    	              0̀                                     xˀ        9      4   H̀         H̀H̀( H̀H ̀   h ̀$hidden                  ̀̀i           ̀  X   	               ̀                                     H̀        9      4   ̀         ̀̀( ̀H ̀   (̀$has_yap_or i           H΀  X    4	              ̀                                     ̀        9      4   ̀         ̀̀( ̀H H΀   ΀$has_eam    i            π  X    <	              p΀                                     ̀        9      4   ΀         ΀΀( ΀H  π!   8ڐHπ$default_sequential              (π`πi           π  X   	              Hπ                                     ΀        9      4   `π         `π`π( `πH π!   `3 Ѐ$create_array                     Ѐ8Ѐi           Ѐ  P   $               Ѐ                                     `π        A      <   8Ѐ          8Ѐ8Ѐ ( 8ЀH Ѐ!   h_ р$array_references                Ѐрi           р  X                   р                                     8Ѐ        9      4   р         рр( рH рi           0Ҁ  X                  @                                     р        9      4   р         рр( рH 0Ҁ!       xҀstatic_array                     XҀҀi           Ӏ  X    T              xҀ                                     р        9      4   Ҁ         ҀҀ( ҀH Ӏ!       PӀresize_static_array              0ӀhӀi           Ӏ  X                  PӀ                                     Ҁ        9      4   hӀ         hӀhӀ( hӀH Ӏ!       (Ԁmmapped_array                    Ԁ@Ԁi           Ԁ  X                  (Ԁ                                     hӀ        9      4   @Ԁ         @Ԁ@Ԁ( @ԀH Ԁ!        Հupdate_array                     ԀՀi           Հ  X                    Հ                                     @Ԁ        9      4   Հ         ՀՀ( ՀH Հ)       Հdynamic_update_array                     ՀՀi           pր  X     }              Հ                                     Հ        9      4   Հ         ՀՀ( ՀH pր)       րadd_to_array_element                     րրi           P׀  X                   ր                                     Հ        9      4   ր         րր( րH P׀!       ׀array_element                    x׀׀i           (؀  P     $              ׀                                     ր        A      <   ׀          ׀׀ ( ׀H (؀!       x؀reset_static_array               X؀؀i           ـ  X     x              x؀                                     ׀        9      4   ؀         ؀؀( ؀H ـ!       Pـclose_static_array               0ـhـi           ـ  X     v              Pـ                                     ؀        9      4   hـ         hـhـ( hـH ـ)   0Ҋ0ڀ$sync_mmapped_arrays        i           ڀ  X     v              ڀ                                     hـ        9      4   0ڀ         0ڀ0ڀ( 0ڀH ڀ!   ڀ$compile_array_refs i           hۀ  X     dv              ڀ                                     0ڀ        9      4   ڀ         ڀڀ( ڀH hۀ)   вۀ$array_refs_compiled        i           0܀  X     tv              ۀ                                     ڀ        9      4   ۀ         ۀۀ( ۀH 0܀)   ܀$static_array_properties                 X܀܀i           ݀  X                  ܀                                     ۀ        9      4   ܀         ܀܀( ܀H ݀)   `݀static_array_to_term                     8݀x݀i           ݀  P                   `݀                                     ܀        A      <   x݀          x݀x݀ ( x݀H ݀)       Hހstatic_array_location                     ހ`ހi           ހ  P     ȥ              Hހ                                     x݀        A      <   `ހ          `ހ`ހ ( `ހH ހ        ߀bb_put                   ߀8߀i           ߀  P     ?               ߀                                     `ހ        A      <   8߀          8߀8߀ ( 8߀H ߀       ߀bb_get                   ߀i             P     G              ߀                                     8߀        A      <              ( H        bb_delete                i           `  P     H                                                           A      <              ( H `   Pbb_update                i           8  P     <                                                           A      <              ( H 8!   $resize_bb_int_keys              hi             X   D                                                           9      4            ( H !   `$has_bignums        i             X     $:              @                                             9      4   `         ``( `H    0Ȉ$bignum                   0i             X    :                                                   `        9      4   0         00( 0H !   $compile_mode                    i             X   t                                                   0        9      4            ( H !   $start_consult                   i           X  X   t                                                           9      4            ( H X!   (π$show_consult_level              i           0  X    hs                                                           9      4            ( H 0!   Cx$end_consult        i             X    4              X                                             9      4   x         xx( xH    `0$set_spy                 Hi             P                 0                                     x        A      <   H          HH ( HH    $rm_spy                   i             X   @T                                                   H        9      4               (  H    x:$compile                 i           h  P                                                               A      <              ( H h!   0$compile_dynamic                 i           H  P   Ħ                                                           A      <              ( H H!   $purge_clauses                   xi           (  X                                                              9      4            ( H (   :h$in_use                  Pi             X   X~              h                                             9      4            ( H    X8$is_dynamic               Pi             X   =              8                                             9      4   P         PP( PH !   r$is_metapredicate                (i             X   <=                                                   P        9      4   (         ((( (H 1   $is_expand_goal_or_meta_predicate                i             X   O                                                   (        9      4            ( H !    $is_log_updatable                i           `  X   <                                                           9      4            ( H `   ܈$is_source               i           0  X   d<                                                           9      4            ( H 0   ؇p$mk_d                    Xi              X    ;              p                                             9      4            ( H  !   H$pred_exists                     (`i             X   L;              H                                             9      4   `         ``( `H !   s $number_of_clauses                8i             X   ̌                                                    `        9      4   8         88( 8H    ($undefined               i             X   :                                                   8        9      4            ( H !   Ѐ$optimizer_on       i           @  X    4                                                           9      4            ( H @)   $clean_up_dead_clauses      i             P    PQ              h                                             A      <              ( H !   X$optimizer_off      i             X    4              8                                             9      4   X         XX( XH !    =$kill_dynamic                    0i             X   9                                                   X        9      4   0         00( 0H )    $in_this_file_before                     i             X    N                                                   0        9      4            ( H )   V$first_clause_in_file                    i           h  X    M                                                           9      4            ( H h!    ~$mk_cl_not_first                 i           @  X    ԫ                                                           9      4            ( H @!   $new_multifile                   hi             X   L                                                           9      4            ( H !   xՅ`$is_multifile                    @xi             X   p9              `                                             9      4   x         xx( xH !   h8$is_profiled                     Pi             X   H              8                                     x        9      4   P         PP( PH !   $profile_info                    (i             X   HJ                                                   P        9      4   (         ((( (H !   $$profile_reset                    i           x  X   8A                                                   (        9      4               (  H x!   $is_call_counted                 i           P  X   F                                                            9      4            ( H P!   ؀$call_count_info                 xi           (   X                                                              9      4            ( H ( !   `҇p $call_count_set                  P  i              X   6              p                                              9      4               (  H  !   JH$call_count_reset   i             X    h6              (                                              9      4   H         HH( HH 1   $toggle_static_predicates_in_use    i             X    ,|                                                   H        9      4            ( H !   Ю$set_pred_module                 i           h  X    8                                                           9      4            ( H h!   $parent_pred                     i           @  X    p                                                           9      4            ( H @!   b$system_predicate                hi             X    E                                                           9      4            ( H )   Xh$all_system_predicate                    @i             X    LC              h                                             9      4            ( H !   P@$hide_predicate                   Xi             X    ?              @                                             9      4   X         XX( XH !   $hidden_predicate                0i             X    >                                                   X        9      4   0         00( 0H !   2$pred_for_code                   i             P                                                      0        A      <              ( H !   $current_stack                   i           `	  P                                                              A      <              ( H `	!   o 
$log_update_clause               		i           @
  P   pz              	                                             A      <   	          		 ( 	H @
)   Ɏ
$continue_log_update_clause              p

i           (  X   y              
                                     	        9      4   
         

( 
H ()   x$log_update_clause_erase                 Pi             P                 x                                     
        A      <              ( H 1   hh$continue_log_update_clause_erase                8i             X                 h                                             9      4            ( H    	      	8
i           
  P                  
                                             A      <   8
          8
8
 ( 8
H 
   
      p

i           p  X                 
                                     8
        9      4   
         

( 
H p         i           (  P   0                                                   
        A      <              ( H ()   P$continue_static_clause                  Xi             X                                                              9      4            ( H )   i`$static_pred_statistics                  8xi             P   L              `                                             A      <   x          xx ( xH !   (@$p_nth_clause                     Xi             P   t              @                                     x        A      <   X          XX ( XH )   Ή($program_continuation                     @i             X                 (                                     X        9      4   @         @@( @H )       current_choicepoints                      i             P    h                Zp                                           A      <                 (  H )   current_continuations                    i             P    P                Zp                                        A      <              ( H        choicepoint              i           X  P                    Zp                                       A      <              ( H X!       continuation                     i           8  P    P                Zp                                       A      <              ( H 8!       cp_to_predicate                  hi             P                    Zp                                       A      <              ( H 1   x$predicate_erased_statistics                     Hi             P   \              x                                     @        A      <              ( H          Pi           | X                   8                                             A      8   P    | P4 4    ( PH              i           | X                                                        P        A      8       | 4 4    ( H        0      8i           H| X     
                                                           A      8       | 4 4    ( H H       `      Pi           | X                   x                                             A      8       | 4 4    ( H              Pi           | X     	              8                                             A      8   P    | P4 4    ( PH              i           | X                                                        P        A      8       | 4 4    ( H        `$a_compare               i           `  X    (                                                           9      4            ( H `   h      Xi           | X      !                                                           A      8       | 4 4    ( H              `i           | X                   H                                             A      8   `    | `4 4    ( `H              螀 i           | X                                                        `        A      8        |  4 4    (  H        Ȟ      i           X | X                                                                 A      8       | 4 4    ( H X        (       i           !| X     L                                                            A      8        |  4 4    (  H !           `!compare                  H!x!i           !  X    4$              `!                                              9      4   x!         x!x!( x!H !!    p8"$wake_up_goal                    "P"i           xuP      xuxuxu    8"j                                   x!               "get_att                  ""i           `#  X     8               "  o                                           9      4   "         ""( "H `#!       #get_module_atts                  ##i           8$  X                   #  o                               "        9      4   #         ##( #H 8$!   @$has_module_atts                  `$$i           %  X                   $  o                               #        9      4   $         $$( $H %!       X%get_all_atts                     8%p%i           %  X                   X%  o                               $        9      4   p%         p%p%( p%H %!       0&get_all_swi_atts                 &H&i           &  X     \$              0&  o                               p%        9      4   H&         H&H&( H&H &        'free_att                 &'i           '  X                    '  o                               H&        9      4   '         ''( 'H '       'put_att                  ''i           `(  P     <              '  o                               '        A      <   '          '' ( 'H `(!       (put_att_term                     ((i           @)  P     4              (  o                               '        A      <   (          (( ( (H @)!       )put_module_atts                  p))i            *  P     *              )  o                               (        A      <   )          )) ( )H  *!       p*del_all_module_atts              P**i            +  P     
              p*  o                               )        A      <   *          ** ( *H  +       H+rm_att                   0+`+i           +  P     T.              H+  o                               *        A      <   `+          `+`+ ( `+H +        ,bind_attvar              ,8,i           ,  X                    ,  o                               `+        9      4   8,         8,8,( 8,H ,)       (Տmodules_with_attributes                  ,-i           -  X      "               -  o                               8,        9      4   -         --( -H -       -void_term                --i           `.  X     8              -  o                               -        9      4   -         --( -H `.       .free_term                ..i           0/  X                   .  o                               -        9      4   .         ..( .H 0/       p/all_attvars              X//i            0  P                   p/  o                               .        A      <   /          // ( /H  0       H0attvar                   00`0i           0  X    @              H0                                     P"        9      4   `0         `0`0( `0H 0   H1$att_bound                101i           1  X                 1                                     `0        9      4   01         0101( 01H 1)   hK1$yap_has_rational_trees     i           p2  X     Ԧ              1                                     01        9      4   1         11( 1H p2)   82$yap_has_coroutining        i           83  X     ܦ              2                                     1        9      4   2         22( 2H 83!   33$read_svar_list                  `33i           4  X                  3                                     2        9      4   3         33( 3H 4!   `X4$set_svar_list                   84p4i           4  X                  X4                                     3        9      4   p4         p4p4( p4H 4   (5$can_unify               5@5i           5  X                  (5                                     p4        9      4   @5         @5@5( @5H 5   5$non_ground              56i           6  X    4              5                                     @5        9      4   6         66( 6H 6!   ʎ6$coroutining        i           H7  X     ̦              6                                     6        9      4   6         66( 6H H7!   0ц7$awoken_goals                    p77i            8  X                  7                                     6        9      4   7         77( 7H  8       @recorded                 H8x8i           8  P                  `8                                     7        A      <   x8          x8x8 ( x8H 8       89recorda                   9P9i           9  P    h              89                                     x8        A      <   P9          P9P9 ( P9H 9       :recordz                  9(:i           :  P                  :                                     P9        A      <   (:          (:(: ( (:H :!   (܇:$still_variant                   :;i           ;  P                 :                                     (:        A      <   ;          ;; ( ;H ;       ;recorda_at               ;;i           X<  P                  ;                                     ;        A      <   ;          ;; ( ;H X<       <recordz_at               <<i           0=  P    <              <                                     ;        A      <   <          << ( <H 0=   ?$recordap                `==i           >  P                 x=                                     <        A      <   =          == ( =H >   ?$recordzp                8>h>i           >  P                 P>                                     =        A      <   h>          h>h> ( h>H >   x=      `=(?i           ?  P   
              ?                                     h>        A      <   (?          (?(? ( (?H ?   P>      8>?i           `@  P                 ?                                     (?        A      <   ?          ?? ( ?H `@       @erase                    @@i           8A  X    dL              @                                     ?        9      4   @         @@( @H 8A!   PA$erase_clause                    `AAi           B  X   xF              A                                     @        9      4   A         AA( AH B       PBerased                   8BhBi           B  X    ܶ              PB                                     A        9      4   hB         hBhB( hBH B        Cinstance                 C8Ci           C  P    $N               C                                     hB        A      <   8C          8C8C ( 8CH C!    D$instance_module                 CDi           D  P   |
               D                                     8C        A      <   D          DD ( DH D   Deraseall                 DDi           hE  X    I              D                                     D        9      4   D         DD( DH hE!   (E$record_stat_source              EEi           @F  X   *              E                                     D        9      4   E         EE( EH @F!   ߁F$some_recordedp                  hFFi           G  X                 F                                     E        9      4   F         FF( FH G!   5`G$first_instance                  @GxGi           G  X                 `G                                     F        9      4   xG         xGxG( xGH G!   8H$init_db_queue                   HPHi           H  X   x              8H                                     xG        9      4   PH         PHPH( PHH H   H҇I$db_key                  H Ii           I  P                  I                                     PH        A      <    I           I I (  IH I   nI$db_enqueue              IIi           pJ  P   x              I                                      I        A      <   I          II ( IH pJ   @GJ$db_dequeue              JJi           HK  P   ?              J                                     I        A      <   J          JJ ( JH HK!   K$db_clean_queues                 xKKi           (L  P   $              K                                     J        A      <   K          KK ( KH (L!   MxL$switch_log_upd                  XLLi           M  X   \              xL                                     K        9      4   L         LL( LH M   DHM$log_upd                 0M`Mi           M  X                 HM                                     L        9      4   `M         `M`M( `MH M   8ڊN$hold_index               N0Ni           N  X   4              N                                     `M        9      4   0N         0N0N( 0NH N)    XN$fetch_reference_from_index              NOi           O  X   \              N                                     0N        9      4   O         OO( OH O!   xO$resize_int_keys                 OOi           `P  X   `              O                                     O        9      4   O         OO( OH `P!   pȐkey_statistics                   PPi           8Q  P    9              P                                     O        A      <   P          PP ( PH 8Q!   ăQ$lu_statistics                   hQQi           R  P   4              Q                                     P        A      <   Q          QQ ( QH R!       hRtotal_erased                     HRRi           R  P    #              hR                                     Q        A      <   R          RR ( RH R)       PSkey_erased_statistics                    (ShSi           S  P    t               PS                                     R        A      <   hS          hShS ( hSH S!       0Theap_space_info                  THTi           T  P                  0T                                     hS        A      <   HT          HTHT ( HTH T!   U$nth_instance                    T(Ui           U  P   l,              U                                     HT        A      <   (U          (U(U ( (UH U!   U$nth_instancep                   UVi           V  P                 U                                     (U        A      <   V          VV ( VH V1   xځV$jump_to_next_dynamic_clause        i           XW  P                  V                                     V        A      <   V          VV ( VH XW)   0W$install_thread_local                    WWi           @X  X    ,              W                                     V        9      4   W         WW( WH @Xi                      H ȇ                                   W           xY(a$execute                 X Yi           xY  P                  X                                     hX        A      <    Y           Y Y (  YH xY   X      XYi           8Z  P    x              Y                                      Y        A      <   Y          YY ( YH 8Z   Y      XZi           Z  P    p              hZ                                     Y        A      <   Z          ZZ ( ZH Z   hZ      X@[i           [  P                  ([                                     Z        A      <   @[          @[@[ ( @[H [   ([      X \i           x\  P    @              [                                     @[        A      <    \           \ \ (  \H x\   [      X\i           8]  P                  \                                      \        A      <   \          \\ ( \H 8]   \      X]i           ]  P                  h]                                     \        A      <   ]          ]] ( ]H ]   h]      X@^i           ^  P                  (^                                     ]        A      <   @^          @^@^ ( @^H ^   (^   	   X _i           x_  P 	   `
              ^                                     @^        A      <    _           _ _ (  _H x_   ^   
   X_i           8`  P 
   	              _                                      _        A      <   _          __ ( _H 8`   _      X`i           `  P                  h`                                     _        A      <   `          `` ( `H `   h`      X@ai           a  P    H              (a                                     `        A      <   @a          @a@a ( @aH ai           `b  P    H                                                   @a        A      <   a          aa ( aH `bi           c  P    H              苀                                     a        A      <   b          bb ( bH c!   (j$call_with_args                  8cpci           c  P                  Xc                                     b        A      <   pc          pcpc ( pcH c   Xc      8c0di           d  P    ܥ              d                                     pc        A      <   0d          0d0d ( 0dH d   d      8cdi           he  P                  d                                     0d        A      <   d          dd ( dH he   d      8cei           (f  P    H              e                                     d        A      <   e          ee ( eH (f   e      8cpfi           f  P                  Xf                                     e        A      <   pf          pfpf ( pfH f   Xf      8c0gi           g  P    8              g                                     pf        A      <   0g          0g0g ( 0gH g   g      8cgi           hh  P                  g                                     0g        A      <   g          gg ( gH hh   g   	   8chi           (i  P 	   ع              h                                     g        A      <   h          hh ( hH (i   h   
   8cpii           i  P 
                 Xi                                     h        A      <   pi          pipi ( piH i   Xi      8c0ji           j  P                   j                                     pi        A      <   0j          0j0j ( 0jH j   j      8cji           hk  P                   j                                     0j        A      <   j          jj ( jH hk)   fk$execute_under_depth_limit               kki           Pl  P                  k                                     j        A      <   k          kk ( kH Pl   l$execute0                lli           (m  P                  l                                     k        A      <   l          ll ( lH (m!   xm$execute_nonstop                 Xmmi           n  P    4              xm                                     l        A      <   m          mm ( mH n!   8Xn$execute_clause                  8npni           n  P                  Xn                                     m        A      <   pn          pnpn ( pnH n)       @ocurrent_choice_point                     oXoi           o  P                  @o  Zp                                       A      <   Xo          XoXo ( XoH o!        pcurrent_choicepoint               p8pi           p  P                   p  Zp                               Xo        A      <   8p          8p8p ( 8pH p!        qenv_choice_point                 pqi           q  P                   q  Zp                               8p        A      <   q          qq ( qH q)       qtrail_suspension_marker                  q ri           xr  P    X              q  Zp                               q        A      <    r           r r (  rH xr       rcut_at                   rri           Ps  X                   r  Zp                                r        9      4   r         rr( rH Ps)    s$pred_goal_expansion_on     i           t  X     ܜ              xs                                     pn        9      4   s         ss( sH t             PXti           t  X    h              @t                                     s        9      4   Xt         XtXt( XtH t   @t      Pui           u  X    $              t                                     Xt        9      4   u         uu( uH u   Hu$clean_ifcp              uui           Xv  X                  u                                     u        9      4   u         uu( uH Xv1   vqpack_clean_up_to_disjunction       i           (w  X      l              v                                     u        9      4   v         vv( vH (w)   xw$jump_env_and_store_ball                 Pwwi           x  P    @              xw                                     v        A      <   w          ww ( wH x!   XÍXx$generate_pred_info              8xpxi           x  P                  Xx                                     w        A      <   px          pxpx ( pxH x!    8y$uncaught_throw     i           y  P                   y                                     px        A      <   8y          8y8y ( 8yH y!   Xń z$allocate_arena                  yzi           z  P    0`               z                                     8y        A      <   z          zz ( zH z)   z$allocate_default_arena                  z {i           x{  P    R              z                                     z        A      <    {           { { (  {H x{       {arena_size               {{i           P|  P     [              {                                      {        A      <   {          {{ ( {H P|       |b_setval                 ||i           (}  X     m              |                                     {        9      4   |         ||( |H (}       h}b_getval                 P}}i           }  X     b              h}                                     |        9      4   }         }}( }H }       8~nb_setval                 ~P~i           ~  P     X              8~                                     }        A      <   P~          P~P~ ( P~H ~!       nb_set_shared_val                ~0i             P                                                        P~        A      <   0          00 ( 0H        nb_linkval               i             P     dp                                                   0        A      <              ( H        Ȁnb_getval                i           X  X     b              Ȁ                                             9      4            ( H X       nb_setarg                i           (  P                                                                A      <              ( H (!       xnb_set_shared_arg                Xi             P     H              x                                             A      <              ( H        Pnb_linkarg               8hi             P     J              P                                             A      <   h          hh ( hH        (nb_delete                @i             P     N              (                                     h        A      <   @          @@ ( @H        nb_create                脁i             P     c                                                    @        A      <              ( H           脁؅i           P  P     Pg                                                           A      <   ؅          ؅؅ ( ؅H P   xq$nb_current              i           (  D    (((                                          ؅        I      <           pZ        dY    H (           xnb_queue                 `i             P     [              x  rp                                           A      <              ( H !       Xnb_queue_close                   8pi           舁  X     P{              X  rp                                       9      4   p         pp( pH 舁!       0nb_queue_enqueue                 Hi             P                   0  rp                               p        A      <   H          HH ( HH !       nb_queue_dequeue                 (i             X     8k                rp                               H        9      4   (         ((( (H !       芁nb_queue_peek                    Ȋ i           x  X     4a              芁  rp                               (        9      4               (  H x!       nb_queue_empty                   ؋i           P  X     W                rp                                        9      4   ؋         ؋؋( ؋H P!       nb_queue_size                    xi           (  X     0_                rp                               ؋        9      4            ( H (       hnb_heap                  Pi             P     u              h  rp                                       A      <              ( H !       Hnb_heap_close                    (`i           ؎  X     dX              H  rp                                       9      4   `         ``( `H ؎       nb_heap_add               0i             P     8                rp                               `        A      <   0          00 ( 0H        nb_heap_del              ؏i             X     0~                rp                               0        9      4            ( H !       Ȑnb_heap_peek                     i           X  X     y              Ȑ  rp                                       9      4            ( H X!       nb_heap_empty                    i           0  X     W                rp                                       9      4            ( H 0!       xnb_heap_size                     Xi             X     \^              x  rp                                       9      4            ( H        Hnb_beam                  0`i           ؓ  P     r              H  rp                                       A      <   `          `` ( `H ؓ!   (nb_beam_close                    @i             X     J              (  rp                               `        9      4   @         @@( @H        nb_beam_add              i             P     P                rp                               @        A      <              ( H        Еnb_beam_del              蕁i           `  X                   Е  rp                                       9      4   蕁         蕁蕁( 蕁H `!       nb_beam_peek                     i           8  X     x                rp                               蕁        9      4            ( H 8!       nb_beam_empty                    `i             X     |V                rp                                       9      4            ( H !       Xnb_beam_keys                     8pi           蘁  P                   X  rp                                       A      <   p          pp ( pH 蘁!       8nb_beam_size                     Pi           ș  X     ]              8  rp                               p        9      4   P         PP( PH ș   e$$cut_by                  i                |                                                           9      ,               (  H i           8       p              P                                              9      ,            ( H 8i           ؛                                                                 9      ,   `         ``( `H ؛i           x                     @                                     `        9      ,               (  H x         nonvar                   Мi           H      l                                                            9      ,   М         ММ( МH Hi           蝁                    p                                     М        9      ,   p         pp( pH 蝁i                                                                    p        9      ,            ( H !       Оdb_reference                     螁i           ` 	                   О                                             9      ,   螁         螁螁( 螁H `i             
     P                                                   螁        9      ,            ( H  i                                                                            9      ,   (         ((( (H i           @                                                         (        9      ,   Ƞ         ȠȠ( ȠH @i           ࡁ 
                   x                                     Ƞ        9      ,   h         hh( hH ࡁ          i                 <                                                   h        9      ,               (  H    8      (آi           P                                                                  9      ,   آ         آآ( آH P   xq      pi                 X              x                                     آ        9      ,            ( H        Hfunctor                  0`i           ؤ                    H                                             9      ,   `         ``( `H ؤ   `&$plus                     0i                                                                   `        9      ,   0         00( 0H     c襁$minus                   Х i           x                   襁                                     0        9      ,               (  H x   8ڈ$times                   Цi           H                                                                 9      ,   Ц         ЦЦ( ЦH H   8$div                     pi                                                                   Ц        9      ,            ( H    OX$and                     @pi           訁                   X                                             9      ,   p         pp( pH 訁   1 $or              8i                                                                    p        9      ,   8         88( 8H    $sll                     ةi                                                                   8        9      ,            ( H    U$slr                     تi           P                                                                9      ,   ت         تت( تH P       genarg                   xi              D               rp                               P        I      <                   |    H      	   0*@    B           @     8 : 9   \/            *@                @     8 : 9   \/            舀ꈀp*@      H        @     8 : 9   \/            P                 /   8  9   \/              ܐ"ܐxQ     0            /   8  9   \/                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             !    ߄8$check_stream                    `i             X                                                      ت        9      4            ( H          `Pi           ȿ  X   P              8                                             9      4   P         PP( PH ȿ!   P$stream_flags                    (i             X   H                                                   P        9      4   (         ((( (H    $close                   i           p  X   0$                                                   (        9      4            ( H p!       `flush_output                     i           H  X    P,                                                           9      4            ( H H!   g$flush_all_streams  i           Á  X    8,              p                                             9      4            ( H Á       `get              0ÁXÁi           Á  X   ,              @Á                                             9      4   XÁ         XÁXÁ( XÁH Á       ȕget0                     Á(āi           ā  X                 ā                                     XÁ        9      4   (ā         (ā(ā( (āH ā!   pā$get0_line_codes                 ā Łi           xŁ  X   ,              ā                                     (ā        9      4    Ł          Ł Ł(  ŁH xŁ   1Ł$get_byte                ŁŁi           HƁ  X                  Ł                                      Ł        9      4   Ł         ŁŁ( ŁH HƁ   nƁ$access                  pƁƁi           ǁ  X                 Ɓ                                     Ł        9      4   Ɓ         ƁƁ( ƁH ǁ   Xǁ$open                    @ǁpǁi           ǁ  X   0              Xǁ                                     Ɓ        9      4   pǁ         pǁpǁ( pǁH ǁ!   Ί0ȁ$file_expansion                  ȁHȁi           ȁ  X                 0ȁ                                     pǁ        9      4   Hȁ         HȁHȁ( HȁH ȁ!   XɁ$open_null_stream                ȁ Ɂi           Ɂ  X   Dz              Ɂ                                     Hȁ        9      4    Ɂ          Ɂ Ɂ(  ɁH Ɂ!   hɁ$open_pipe_stream                ɁɁi           pʁ  X   (              Ɂ                                      Ɂ        9      4   Ɂ         ɁɁ( ɁH pʁ)       ʁopen_mem_read_stream                     ʁʁi           Pˁ  P    U              ʁ  o                                           A      <   ʁ          ʁʁ ( ʁH Pˁ)   pwˁopen_mem_write_stream                    ˁˁi           8́  P    p              ˁ  o                               ʁ        A      <   ˁ          ˁˁ ( ˁH 8́)       ́peek_mem_write_stream                    h́́i            ́  P    }              ́  o                               ˁ        A      <   ́          ́́ ( ́H  ́   h́$put                     Ṕ́i           ́  X                 h́                                     Ɂ        9      4   ́         ́́( ́H ́   88΁$put_byte                 ΁P΁i           ΁  X   X              8΁                                     ́        9      4   P΁         P΁P΁( P΁H ΁)   ӄρ$set_read_error_handler                  ΁0ρi           ρ  X                 ρ                                     P΁        9      4   0ρ         0ρ0ρ( 0ρH ρ)   Hρ$get_read_error_handler                  ρЁi           Ё  X   ĳ              ρ                                     0ρ        9      4   Ё         ЁЁ( ЁH Ё   Pс$read                    ЁЁi           Xс  P                 Ё                                     Ё        A      <   Ё          ЁЁ ( ЁH Xс   Ё      Ёсi           ҁ  P   Ԙ              с                                     Ё        A      <   с          сс ( сH ҁ   `ҁ$set_input               Hҁxҁi           ҁ  X                 `ҁ                                     с        9      4   xҁ         xҁxҁ( xҁH ҁ   :0Ӂ$set_output              ӁHӁi           Ӂ  X                 0Ӂ                                     xҁ        9      4   HӁ         HӁHӁ( HӁH Ӂ    ԁ$skip                    Ӂԁi           ԁ  X   X               ԁ                                     HӁ        9      4   ԁ         ԁԁ( ԁH ԁ   0MՁ$write                   ԁԁi           `Ձ  P   x5              ԁ                                     ԁ        A      <   ԁ          ԁԁ ( ԁH `Ձ   ԁ      ԁՁi            ց  P   h+              Ձ                                     ԁ        A      <   Ձ          ՁՁ ( ՁH  ց       (ׁformat                   Pցցi           ց  P0    v              hց                                     Ձ        A      <   ց          ցց ( ցH ց   hց      Pց@ׁi           ׁ  P0    $v              (ׁ                                     ց        A      <   @ׁ          @ׁ@ׁ ( @ׁH ׁ)   ؁$current_line_number                     ׁ(؁i           ؁  X   H              ؁                                     @ׁ        9      4   (؁         (؁(؁( (؁H ؁!   x؁$line_position                   ؁ فi           xف  X   (              ؁                                     (؁        9      4    ف          ف ف(  فH xف!   Xف$character_count                 ففi           Pځ  X                 ف                                      ف        9      4   ف         فف( فH Pځ   虆ځ$start_line              xځځi            ہ  X                 ځ                                     ف        9      4   ځ         ځځ( ځH  ہ!   p،hہ$show_stream_flags               Hہہi           ہ  X   0              hہ                                     ځ        9      4   ہ         ہہ( ہH ہ)   @H܁$show_stream_position                     ܁`܁i           ܁  X                 H܁                                     ہ        9      4   `܁         `܁`܁( `܁H ܁)   (݁$set_stream_position                      ݁@݁i           ݁  X   '              (݁                                     `܁        9      4   @݁         @݁@݁( @݁H ݁!    ݁ ށ$user_file_name                  ݁ށi           ށ  X                  ށ                                     @݁        9      4   ށ         ށށ( ށH ށ    ߄ށ$file_name               ށށi           `߁  X   `              ށ                                     ށ        9      4   ށ         ށށ( ށH `߁   ڎ߁$past_eof                ߁߁i           0  X   l              ߁                                     ށ        9      4   ߁         ߁߁( ߁H 0   @p$peek                    Xi              X   8              p                                     ߁        9      4            ( H     ~@$peek_byte               (Xi             X   \              @                                             9      4   X         XX( XH    ҉$has_bom                 (i             X    $                                                   X        9      4   (         ((( (H 1   x֏$stream_representation_error                     i             X                                                      (        9      4            ( H !       current_input                    i           `  X    J                                                           9      4            ( H `!       current_output                   i           8  X    hI                                                           9      4            ( H 8       prompt                   `i             X                  x                                             9      4            ( H !   hdP$is_same_tty                     0hi             X   ,U              P                                             9      4   h         hh( hH    x      ` i             X    D                                                   h        9      4               (  H !       always_prompt_user  i           X  X     $                                                            9      4            ( H X       write_depth              i           (  X                                                               9      4            ( H ()   ʌx$change_type_of_char                     Pi             X   	              x                                             9      4            ( H !   h P$type_of_char                    0hi             X   |              P                                             9      4   h         hh( hH !       (char_conversion                  @i             P    |$              (                                     h        A      <   @          @@ ( @H )   $current_char_conversion                 (i             P                                                      @        A      <   (          (( ( (H )   8$all_char_conversions                    i             P   {                                                   (        A      <              ( H )   $force_char_conversion      i           X  P    
                                                           A      <              ( H X)   k$disable_char_conversion    i           (  P    ,                                                           A      <              ( H ()   $add_alias_to_stream                     Xi             X   !                                                           9      4            ( H )   `$change_alias_to_stream                  8xi             X                 `                                             9      4   x         xx( xH )   l@$check_if_valid_new_alias                Xi             X                 @                                     x        9      4   X         XX( XH !   8$fetch_stream_alias              0i             X   X                                                   X        9      4   0         00( 0H i           H  X   d                                                   0        9      4            ( H H)   7$get_default_encoding                    pi           (  X   w                                                           9      4            ( H (   0h$encoding                Pi             X   ȍ              h                                             9      4            ( H !   /@stream_select                     Xi             X    L              @                                             9      4   X         XX( XH    $same_file               (i             X   h                                                   X        9      4   (         ((( (H !   W$float_format                     i           x  X                                                      (        9      4               (  H x!   $has_readline       i           8  X                                                                 9      4            ( H 8   pĆx$toupper                 `i             X    y              x                                             9      4            ( H     1H$tolower                 0`i             X    w              H                                             9      4   `         ``( `H !   8ŉ file_base_name                    8i             X                                                         `        9      4   8         88( 8H !       read_line_to_codes               i             X    	                Bp                                           9      4            ( H          i           @  X    	                Bp                                       9      4            ( H @)       read_stream_to_codes                     hi              P    	                Bp                                       A      <              ( H  )       xread_stream_to_terms                     Pi             X    	              x  Bp                                       9      4            ( H        Ȍsocket                   0`i             X                  H                                     8        9      4   `         ``( `H !        socket_close                      8i             X    p                                                    `        9      4   8         88( 8H        socket_bind               i              X    1                                                   8        9      4               (  H  !        socket_connect                     i           X  X    -                                                             9      4               (  H X!       socket_listen                    i           0  X    4                                                            9      4            ( H 0!       `Ɍsocket_accept                    Xi             X    *              x                                             9      4            ( H !   HP$socket_buffering                0hi             X   L$              P                                             9      4   h         hh( hH !   @Ǐ($socket_select                   @i             X   &              (                                     h        9      4   @         @@( @H !        current_host                     i             X                                                          @        9      4            ( H !   ?hostname_address                 i           h  X     "                                                           9      4            ( H hI           舀   (n                                        	                                                                                                                                                                                                                                                                      !   @ $load_foreign_files              i             X   t:                                                            9      4            ( H    a$obj_suffix              i           `	  X    9                                                           9      4            ( H `	         	i           
  X   (              	                                             9      4   	         		( 	H 
i           
  X   l                                                   	        9      4   @
         @
@
( @
H 
i           X  X                 x                                     @
        9      4   
         

( 
H X!       strip_module                     i           0  X   |                                                   
        9      4            ( H 0!       xcontext_module                   Xi           
  P                   x                                             A      <              ( H 
)   肃`
$all_current_modules                     8
x
i           
  D    


     `
                                             I      <   x
        x
T        x
\    H 
       x$save                    (Xi             X   Dj	              @                                     x
        9      4   X         XX( XH    @      (i             X   j	                                                   X        9      4            ( H !   Ā$save_program                    i           `  X   l	                                                           9      4            ( H `   ة$restore                 i           0  P   	                                                           A      <              ( H 0   {N            srandom                  pi             X     r
                                                           9      4            ( H        Psh  i             X     Pg
              @                                             9      4   P         PP( PH    $shell                    i             X   c
                                                   P        9      4               (  H    0q      (pi           P  X    b
                                                            9      4            ( H P       rename                   xi              X    pa
                                                           9      4            ( H         Xcd               Hpi             X   L`
              X                                             9      4   p         pp( pH    t($yap_home                @i             X   n
              (                                     p        9      4   @         @@( @H        getcwd                   i             X    Lo
                                                   @        9      4            ( H !   ȣ$dir_separator                   i           `  X    Dr
                                                           9      4            ( H `             i             X   v
                                                           9      4            ( H    0yX$getenv                  @pi             X    Lf
              X                                             9      4   p         pp( pH    n($putenv                  @i             X   ^
              (                                     p        9      4   @         @@( @H    @$file_age                i             X   @t
                                                   @        9      4            ( H !   <$set_fpu_exceptions i           H  X    l
                                                           9      4            ( H H!   ֆ$first_signal                    pi              X   lz
                                                           9      4            ( H     ˅`$host_type               Hxi             X   Tn
              `                                             9      4   x         xx( xH !   8$continue_signals   i             X    ]
                                                   x        9      4   8         88( 8H !       file_directory_name              i             X     x
                                                   8        9      4            ( H !   @$env_separator                   i           `   X    m
                                                           9      4            ( H `     $unix       i           !  X     X
                                                            9      4               (  H !   X!$win32      i           !  X     X
              @!                                              9      4   X!         X!X!( X!H !   C"$ld_path                 !("i           "  X    `m
              "                                     X!        9      4   ("         ("("( ("H "!       #true_file_name                   " #i           x#  P    Dq
              "  *p                                           A      <    #           # # (  #H x#   "      "#i           8$  P    p
              #  *p                                #        A      <   #          ## ( #H 8$)       $unify_with_occurs_check                  h$$i            %  X     0
              $                                     ("        9      4   $         $$( $H  %       `%cyclic_term              H%x%i           %  X    
              `%  p                                           9      4   x%         x%x%( x%H %!       8&acyclic_term                     &P&i           &  X    $
              8&  p                               x%        9      4   P&         P&P&( P&H &       'copy_term                & 'i           '  P     0
              '                                     $        A      <    '           ' ' (  'H '!       'duplicate_term                   ' (i           x(  P     
              '                                      '        A      <    (           ( ( (  (H x(!       (copy_term_nat                    ((i           X)  P     
              (                                      (        A      <   (          (( ( (H X)   )ground                   ))i           0*  X     d
              )                                     (        9      4   )         ))( )H 0*!   jx*$variables_in_term               X**i           +  P    ,
              x*                                     )        A      <   *          ** ( *H +)   ȍ`+$non_singletons_in_term                  8+x+i           +  X    
              `+                                     *        9      4   x+         x+x+( x+H +!       ,term_variables                   ,P,i           ,  P     $
              8,  p                               P&        A      <   P,          P,P, ( P,H ,   8,      ,-i           -  P     
              ,  p                               P,        A      <   -          -- ( -H -!   e-variable_in_term                 --i           h.  X     $
              -  p                               -        9      4   -         --( -H h.       .term_hash                ..i           8/  X     <
              .  p                               -        9      4   .         ..( .H 8/   諈x/variant                  `//i           0  P     
              x/  p                               .        A      <   /          // ( /H 0       P0subsumes                 80h0i           0  X     
              P0  p                               /        9      4   h0         h0h0( h0H 0!   ߄(1protected_unifiable              1@1i           1  P     
              (1  p                               h0        A      <   @1          @1@1 ( @1H 1   E 2$sort                    12i           2  P    (               2                                     x+        A      <   2          22 ( 2H 2   X2$msort                   22i           h3  P    ,              2                                     2        A      <   2          22 ( 2H h3   ȇ3$keysort                 33i           @4  P                  3                                     2        A      <   3          33 ( 3H @4       4setarg                   p44i           5  X                   4                                     3        9      4   4         44( 4H 5!       `5create_mutable                   @5x5i           5  X     |              `5                                     4        9      4   x5         x5x5( x5H 5   S06get_mutable              6H6i           6  X                   06                                     x5        9      4   H6         H6H6( H6H 6!       7update_mutable                   6 7i           7  X     T              7                                     H6        9      4    7          7 7(  7H 7       7is_mutable               77i           h8  X                    7                                      7        9      4   7         77( 7H h8!       8get_depth_limit                  88i           @9  X                   8                                     7        9      4   8         88( 8H @9!   Х9$set_depth_limit                 h99i           :  P                  9                                     8        A      <   9          99 ( 9H :1   0Wx:$set_depth_limit_for_next_call                   H::i           ;  P    0              x:                                     9        A      <   :          :: ( :H ;                 `                  |                  8                                                                        l                                    (                      P@<$env                              h<$tr                                    L                          H    ࡀ        <        Ɇexp                        log                        `log10                               иsqrt                       d        @sin                        cos                         tan                0        Psinh                       t        cosh                               0tanh                               asin                                acos                       8        patan                           )asinh                      L        acosh                              atanh                          "floor                      l        ceiling                    |        Hround                              truncate                       @                            `abs                8    (msb                p )   pĎfloat_fractional_part                      $ !   Ďfloat_integer_part                         sign                           8	Algamma                         ؝      ȝAi           `B  X                  A                                     :        9      4   A         AA( AH `B   <            <        @    H            x                    \#    8        ,2    h        0            P4    آ        h-    P        x+            )            '        ໆatan2                      \    ȣ                        <                ˆgcd                x%        ʆmin                `        ʆmax                    A      ȝDi           (E  X    (              D                                     A        9      4   D         DD( DH (E   D      ȝhEi           E  X                  PE                                     D        9      4   hE         hEhE( hEH E    F$grow_heap               F8Fi           F  X    d}               F                                     hE        9      4   8F         8F8F( 8FH F   pF$grow_stack              FGi           G  X                  F                                     8F        9      4   G         GG( GH G)   ̉G$inform_trail_overflows                  GGi           `H  X                  G                                     G        9      4   G         GG( GH `H)   HH$inform_heap_overflows                   HHi           @I  X    ̏              H                                     G        9      4   H         HH( HH @I)   I$inform_stack_overflows                  hIIi            J  X                  I                                     H        9      4   I         II( IH  Ji           J  P                   H                                     I        A      <   HJ          HJHJ ( HJH J   VK$inform_gc               J Ki           K  P                  K                                     HJ        A      <    K           K K (  KH K   یK$atom_gc    i           XL  P     u              K                                      K        A      <   K          KK ( KH XL   'L$inform_agc              LLi           0M  P    C              L                                     K        A      <   L          LL ( LH 0M!   pƁM$agc_threshold                   `MMi           N  X    lE              M                                     L        9      4   M         MM( MH N       Nprofinit    i           N  X      Z              8N                                     M        9      4   PN         PNPN( PNH N   PN      8NOi           O  X     Z              N                                     PN        9      4   O         OO( OH O   O$proftype                OOi           PP  X    @              O                                     O        9      4   O         OO( OH PP       Pprofend     i           Q  X      1              xP                                     O        9      4   P         PP( PH Q       Qprofon      i           Q  X      8Z              0Q                                     P        9      4   HQ         HQHQ( HQH Q   HQ      0Q Ri           xR  X     Z              Q                                     HQ        9      4    R          R R(  RH xR       Rprofoff     i           0S  X      1              R                                      R        9      4   R         RR( RH 0S       pSprofalt     i           S  X      @Z              XS                                     R        9      4   pS         pSpS( pSH S)   T$offline_showprofres        i           T  X     ,X              T                                     pS        9      4   8T         8T8T( 8TH T   8T      TTi           hU  X    W              T                                     8T        9      4   T         TT( TH hU   nU$profnode                UUi           8V  X    4D              U                                     T        9      4   U         UU( UH 8V   0\xV$profglobs               `VVi           W  X    G              xV                                     U        9      4   V         VV( VH W   ņHW$profison   i           W  X     l1              0W                                     V        9      4   HW         HWHW( HWH W!   X$get_pred_pinfo                  W Xi           X  X    A              X                                     HW        9      4    X          X X(  XH X       showprofres              XXi           hY  X     A              X                                      X        9      4   X         XX( XH hY!   Y$max_workers                     YYi           @Z  P    
              Y                                     X        A      <   Y          YY ( YH @Z!   Z$thread_self                     pZZi            [  X    t
              Z                                     Y        9      4   Z         ZZ( ZH  [   `[$no_threads i           [  X     d
              H[                                     Z        9      4   `[         `[`[( `[H [!   I \$max_threads                      \8\i           \  X    
               \                                     `[        9      4   8\         8\8\( 8\H \!   p\$nof_threads                     \]i           ]  X    4
              \                                     8\        9      4   ]         ]]( ]H ])   ̀]$nof_threads_created                     ]]i           h^  X    Ċ
              ]                                     ]        9      4   ]         ]]( ]H h^!    ^$thread_runtime                  ^^i           @_  X    T
              ^                                     ]        9      4   ^         ^^( ^H @_!   _$thread_unlock                   h__i           `  X    l
              _                                     ^        9      4   _         __( _H `       X`ctime                    @`p`i            a  P    D
              X`  p                                                    8DpqA      <   p`     d     p`p` ( p`H  a!   H[Pa$current_atom                    0ahai           a  D    aaa     Pa                                     _        I      <   ha        ha4	        hat	    H a    !   H8b$current_wide_atom               bPbi           b  D    bbb     8b                                     ha        I      <   Pb        Pb	        Pb,	    H b    !   p΃ c$current_predicate                c8ci           c  D    ccc      c                                     Pb        I      <   8c        8c	        8c	    H c    )   d$current_predicate_for_atom              c(di           d  D    ddd     d                                     8c        I      <   (d        (d	        (d\	    H d       Pd$current_op              dei           e  D    eee     d                                     (d        I      <   e        e
        e
    H e    !   XFe$current_stream                  eei           hf  D    hfhfhf     e                                     e        I      <   e        e        e    H hf    I      <   @        @l        @*    H f       x g$recordedp               fgi           g  D    ggg      g                                     e        I      <   g        g        g*    H g    )   (g$current_immediate_key                   ghi           h  D    hhh     g                                     g        I      <   h        h8        h2    H h                	  startup gram ath ag k _atom ~q: ~d( ? ; ? )~n .3/pl/hacki&   oQ,6   x֐(i,ip=iIii*pDi@bDi8i<iא6     si6  {iV  iF  i  iF  i  i  iV  i  i  i  i  " """"""""""""""""""""""""  ;j  Cj6  Kj  Sjv  [j  cj  kj6  sj  {j  j6  j  j  j  jV  j6  jF  jV  jF  j  j  jF  j  j&  j  jF  kV  k6  k  k  " wxxoppghh_``WXXOPPGHH?@@788/00'((    3l  ;l  Cl  Kl  Sl  [l&  cl  kl  sl  "       {||sttkllcdd[\\STTKLLCDD;<<344+,,#$$                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       L               bk         @use_module               h)             ( H  i             " !           ../pl/boot.yap         XHz$live       !   ߏ j$init_system           @j$do_live    i            kD        k k k    hiHi                                   h        i           u0       uuu    iHi                                   i        i           l       lll    iHi                                    j        A      <   i    D      ji jiH  k               [~w]~n      !   k$system_catch       !   `$enter_top_level       k$Error                   k@             Hk8li           \       \"    8Hi                                   j        i           `tЎ      `t`t`t    kHi                                   k               j     $ nljx nd l nlj0 4      @
j 4  4 o `m0 4  4         jd m 4 ꈀ 4 2k| 4 Ĺ  "  n@ׁj 4 jk 4  4 4  4 p    o k   ( 4  8ljH l                          !       $loop_stream           {$version       Px{$verbose       ȉ    on             off        pretractall  !       plibrary_directory   )   8 q$system_library_directories        assert      !   hhs$enter_system_mode         pfileerrors  !   s$init_consult                    ?-        )   Xӊh|$open_expands_filename         ƀH$debug         pC$trace         0|$spy_glist  !   ې$user_module               0qexists             ~/.yaprc           Hqload_files             ~/.prologrc !           ~/prolog.ini        !   `u$startup_reconsult  !   pu$startup_goals                   n             n0r             nr             n s             p8t             @pti           (l       (((     Hi                                   8l        i           lz̮       lzH    HnHi                                   `q        i           |̮       |P    pJ                                   q        i           r      iiHi     q                                   0r        i           l̮       lXPP    qJ                                   r        i           x       xxx    oHi                                    s        i                      HoHi                                   hs        i           8$       8$8$8$    0q ȇ                                   s        i                      Hq                                   8t        i           |̮       |X    pHi                                   t        i           }̮       }X    pHi                                   u             
   j    0 4 0 4 0 4 0 4  4 *n 4              x jl $ tw jx H 4     4          j 4 f        jl $ ,w jx P 8y j `  j X (  j(  j `  j `` q jd |w(  j 4 $ $x jx h 4 f   4          j 4 `  j p 4 bn 4 zn      jd Xx(  j 4 bn 4 n      j$ (y jx x 4 p    o p    4 ` 0r j0 4 ` r j 4 p    o p   Ĺ `  s j (  jd 0y(  j 4  4          j 4       j 4 ꈀ      j 4 @   4     { j` hs j 4 2o 4          j` s j 4 J 4 zn      j 4 $ z jx      ǀ j 4 `  j d z(  j 4 jo      j 4 
 4     P~ j 4 o 4 ҈ P~ j 4 o 4 n P~ j 4 o 4 n P~ j 4 o 4 "      | j 4 o0 4       j 4  4 "  0|0 4  4 o     	 jd ~0 4  4      	 j0 4  4          jl $ ~ jx  4         j `  j l $ } jx  4 *p` 8t j `  j  4 *p 4 " ` t jd }(  jl $ 0~ jx  4 Zp` 8t j `   j  4 Zp 4 " ` $t jd 8~(  jl $ ,~ jx  4 rp` 08t j `      j Ȁ 4 rp 4 " `     t jd ~(  jd ~(  j 4         K j`     u j`     pu j 4      xҁ j 4 o     HӁ j (  jH u                                                                                                                                                                                                                              Ѐ{$lf_verbose !           informational          @{$if_level      V@{$endif      !   {$consulting_file       0|$consulting !   (|$included_file      Q     H  s     4 ڀ 4       P~s 4  4         P~s 4 * 4 n     P~s 4 B 4 "      P~s 4 b 4 
     P~s 4 z 4 "      P~s ( sH                                ƃ8$read_vars  !       Pprint_message              Herror                    肃h              Ѓi           H|      HHH    8Hi                                   pu        i           T       T	    P                                   h                 h    | 4 4 | 4 4 | 4 4  4 ҈X 4 4 0 4    сh 섃 4 " 4 `     Ѓh ( h ( hH H         i           ,~̮       ,~    hkHi                                   Ѓ        q      h   腃 4     4     4 4  4 4       ( H     I      @          ( H         !   س~$restore_goal          o       |           P{$do_yes_no               h`I     D   4 20 4 0 4   ԇx8 4      @0 4  4 R       4     X   Ĺ  ҈  o 4 o 4 4  4 p    o k   ( 4 ` ؇8l ( H          P*trace              Xdebug              0 4  4 
0 4       l $ ԉx 艃 4 o 4 zn      ` ؉  4 p 4 ⇃d | ܉t 4 o 4 zn      `   4 p 4 d |(  4  4    Ĺ Ĺ `     Ѓ ( H                                          !   Ї    $top_level_goal     !   Ǆ`$run_atom_goal         `A    $false                   (xi           8j|      8j8j8j    ``                                                    x 4 
 4 4       X 4 4  4 " | D  4 
     X 4 4 `     x 4 ji 4 J      ( H                       ?-       !   hQ$run_toplevel_hooks    $spy_gn        $debug_run     $debug_zip                |:          ($$command               top              hi           ̮       `wx    苃Hi                                   x        i           $      $H    Hi                                           )     $      0 4  4 ҋ        4 R     `  4 0 4 0 4 0 4 0 4 ` h 4 
 4     P~ 4 " 4 n P~ 4 : 4 n P~0 4  4 R       4 h   Ĺ  4  4 `      0ڀ 4 ji 4 J      ( H     >   >   >   >   ?   )   Տȏ$extend_file_search_path                 i           ۈ0      ۈۈۈ    ȏ ȇ                                                    pu 4  4 4       puX 4 4  4 " |  4      puX 4 4 `     pu ( puH X        !   xx}$startup_goal          p$query             Xonce                     @D             (	       pu 4 
0 4 0 4   x8pu 4 4      @
pu 4 p    X   Ĺ   "  4 4  4 p    o k   ( 4 `     8lpu ( puH          Xƍ    $init_goal           pu( 4  4 4       puX 4 4  4 " |  4      puX 4 4 `     xpu ( puH         !    D    $myddas_goal        !   I    $myddas_user           F    $myddas_db  !   `    $myddas_host                   localhost   !       $myddas_pass                              library                myddas             ؔdb_open                mysql       !    $myddas_import_all               (       B      h                 X    i           `ք|       `ք`ք`ք    h                                           i           @       @@@    芀Hi                                           i           ̕       Ȝ    Hi                                   X               pu0 4 0 4  4 j 4 4       puX 4 4  4 " |  4 j     pu 4 0 4      pu 4  4 " |  4      pu 4 0 4      pu 4  4 " |  4      pu 4  4 4      puX 4 4  4 " | $ 4  4 4  4      pud < 4 p 4 Ⓝ 4  4 4      puX 4 4  4 " | Ș 4  4 4  4      pud  4 p 4  4     B` pu 4 ؔ    r B    Ĺ Ĺ  Ĺ Ĺ `     Xpu`     pu ( puH 8               )         pu    ( puH     !   Є    $consult_on_boot    )   8 $do_startup_reconsult                    8i           Ў                                                               uH 4 ڙ 4 4      uX 4 4  4 " |   4 ڙ     uX 4 4  8uH     )         u    ( uH X    !       ؛db_my_show_tables          table              db_import                0             p                               4 ؛    B    и D X 4     B  `     X ( H           )             ( H Ȝ       X$erase_sets    2    $      :($$set          PS    $$one       !   `
$reconsulted        i           d       НН    Hi                                   8                 X 4      DX 4 
     DX 4 "     DX 4 :     DX ( XH Н   H\    $path       !       Xl  $ x Xx  4 j0 4 0 4  |x8X `     X  ( X( X 4 j 4 "  4 4      P9X ( XH                                    )         X    ( XH                help               gversion     )   H    $myddas_version_name        !       Xmyddas_version                   a                  1     (  q 4 J 4 4       q 4 ʟ 4 @   ( 4 `     Ѓq 4  4 4      q 4 4 p 4 " | 4 4     4 ʟ 4 X   ( 4 `     Ѓq ( qH                      q8 4 Jn0 4 0 4   ,x8q 4 ʟ 4 `     Ѓq ( qH       )         q    ( qH H       ȏࢃ$repeat     i           X        XXX    8Hi                                   X        i           좃       褃
    `Hi                                   x        )      $   x     ࢃxH X)         ࢃ( ࢃH     )         ࢃ( ࢃH     )         ࢃ裃( ࢃH У    )         ࢃ( ࢃH     )         ࢃ8( ࢃH      )         ࢃ`( ࢃH H    )         ࢃ( ࢃH p    )         ࢃ( ࢃH     )         ࢃؤ( ࢃH     )      $   ࢃ     ࢃࢃH 褃!   _$start_corouts         ҅$corout                main        !       finish_corout                                      Pi                  Ȩ     Hi                                   ࢃ        i           T                                                                           h 4 " 4 p   и  4  4 0 4   ,x8 4  4 :|  4 `      ( H          pH    $result            $actual               4 "     D 4 :     D 4 R     D ( H x           going          p                         1p::A" " " " " " " " " " " " " " " " " " "                               @         4 R 4 :0 4   P9 4 " 4 10 4  (: 4 : 4  4 4      P9 ( H Ȩ         !   ؅$execute_command                 Щi           ܀      ܀调    Hi                                                    | 4 4 | 4 4  4     4          | 4 4 4 4  ЩH H           expand_term !   $execute_commands                (             تi           kЎ       kkk    Hi                                   Щ        i           ԃ      ԃ    Hi                                   (        !           Ў 4 Ў 4 Ў 4 l  $ ح\x $ ୃx   4 p 4 d 䬃 䭃` d 䬃(  4 P 4 |  4 4  ` 譃  4  4  4  4 ` 쭃Щ  ( (  4 0 4 ` ( 4  4  4  4  H                                                       $do_error   !           instantiation_error        hmeta_call                P                 i           pЎ      ppp                                               a      X   `, 4   4 2 4 h   ( 4  H     9      4   p 4 "   ( H p       P 4 d , 4 , T Ў 4 Ў 4 Ў 4  D $ ,x ` Щd x(  4  4  4  4 `      ( H                          )      $        ЩH i      d   Щp 4 , 4   4 2 4 h   ( 4  ЩH 调       wtype_error         callable                 @             Щ| 4 4 p 4 ( 4   4 p    Z( 4  4 h   ( 4  ЩH          Щ| 4 4 p 4  4   4 p    Z( 4  4 h   ( 4  ЩH  9      0   Щp 4  ( ЩH     !   8׈@p$if_skip_mode              虈skip        !   ݁($if_directive                    @i           L      p    (                                           	       Щh| 4 4  4 Ҳ 4       Щl $ hЩx X 4 4 ` @Щ `     Щ  ( Щ( ЩD  ( ЩH                              !   贃$process_directive           x              i           D      Dؼ    贃Hi                                   @               ЩxH 4 д    ̾ 4  X 4 Ў 4  D 0 4      @
ЩX 4 4 0 4 ` l(Щ 4 H 4 д    X 4  4  4 `      Щ ( ЩH x         Y      P   ЩxH 4 h    X 4   4  ЩЩH     )   0a$continue_with_command                   жi           쁄      쁄Ⱦ     Hi                                            Q      H   Щ    | 4 4 | 4 4 X 4 4  ЩH            consult               и| 4 4 p 4  4     4           X 4 4  4 ʷ   H !   Xtcontext_error              clause             query                    h          |    P| 4 4 p 4   4     д   ( 4    4   H ฃQ      H    ຃H 4 p   |  4 4     H `    !   ใ$all_directives     !    /$exec_directives                              xi                 8چۆ    ใ8׆                                           i           ,      ,    8׆                                                     Ў 4 Ў 4 Ў 4 D d D  4  4  4  x H                  directive             ȼ| 4 4  4     4            4     д    p   ( 4 ( 4    4 r  H     !           :- ~w:~w failed.~n  i                 X    Hi                                   x        9     0       Ў 4 Ў 4 l  $ ؽh x 轃 4 ` ܽ`  ` གྷ   (  (   4 ꈀ 4 B| 4 Ĺ P Ĺ  "      @ׁ  (  H ؼ                  
                      Մreconsult   !   Ӄ0$go_compile_clause               Pi           t      tă    8Hi                                   `        i      `    p 4 | 4 4  4 V   D     P ( H Ⱦ        i      `   p 4 ʷ| 4 4  4    D     P ( H 0        i           4      4 փރ    pHi                                   P        A      <       p 4 | 4 4  H     8      Hi           ŃЎ      ŃŃŃ    0Hi                                           q      h   PH 4 p   |  4 4 | 4 4  | 4 4 4 4  HPH     9   'X$preprocess_clause_before_mod_change                      pi           ,H      ,,,    X@                                   H        )        P ăH 4 p     p     , T  , T Ў 4 Ў 4 Ў 4 0 4  D 0 4      @
P 4 $ Ã$ÃPx Ã 4 ̕ 4  4 ` ÃP Ã 4 H 4 p   L   (   d Ã( P 4 p      4  4  4 ` ÃpP 4  4  4  4  4  HPH                                y      t   P    | 4 4 | 4 4  4 4      @
PX 4 4 X 4 4  HPH ă!   ă$prepare_term          8ă$$compile                xăă             ăHŃi           ǃЎ      ǃǃǃ    ăHi                                   p        i           h˃Ў      h˃h˃h˃    ăHi                                   ă                 H    Ў 4 Ў 4 | 4 4 0 4 0 4  4 D `ƃăH 4  4  4  4  HŃHH Ń   !   xă    $syntaxcheckflag       Xƃ$check_term !   `Vƃ$precompile_term                 ƃƃ             ƃXǃi           ƃ      ωωՉ    ƃX                                   HŃ        i           hЎ      hhh    ƃHi                                   ƃ        	       ă    Ў 4 | 4 4 Ў 4 Ў 4 Ў 4   4 jƃ 4 zn,     xȃ| 4 4 4 4  4 ` ȃƃăd xȃ 4  4  4  4  XǃăH ǃ      !   nXɃ$head_and_body      !   ބpɃ$assertz_dynamic       q(p$assert_all    `Ƀ$dynamic    !   Ƀ$not_imported                    ȃɃ             ȃ ʃ              Ƀʃ             8Ƀʃi           L      L^P_    XɃHi                                   Xǃ        i           ,ʃ      ЂЂ    pɃJ                                   Ƀ        i           ܠ      ܠp    ɃJ                                    ʃ        i                  σxЃ    ɃHi                                   ʃ               HŃ    Ў 4 Ў 4 Ў 4 Ў 4 0 4 0 4 D 4΃ɃHŃ 4  4 0 4  4  8΃ʀHŃ 4 4  4 B 4  4        DHŃ 4  4    | ̃ 4  4  4  4   ʃHŃ$ D΃̓HŃx X΃ 4 
Ƀ 4 zn     HŃ 4 ` H΃HŃ `΃ 4 L 4 4 4  4    ( 4 ( 4  4 ` L΃ʃHŃ 4  4  4  4   ʃHŃ( HŃ 4  4 ` P΃ʃHŃ 4  4  4  4      HŃ ( HŃH h˃_                              `      f          x`$import     !       ΃permission_error               modify      !           static_procedure                 p΃                 ΃    Y     P  ʃhЃ| 4 4 Ў 4  4 r΃ 4 ΃   и Ĺ и ( 4  4  4 0 4   XЃx8ʃ 4  4 | D  4 L 4 4 4  4 ΃    ΃ ΃ p        ( 4 ( 4  4 ʷ ʃH  σ          )         ʃ    ( ʃH xЃ    )   (Ѓ$check_if_reconsulted                    ЃЃi           HуЎ      HуHуHу    ЃHi                                   ʃ        A     <  Ѓ    Ў 4 Ў 4  4 :0 4 0 4   T҃x8Ѓ$ \҃уЃx l҃ 4 H 4     p     ( Ѓ d҃8҃Ѓ 4 p 4 D  ( Ѓ( Ѓ ( ЃH Hу                          )   ҃$inform_as_reconsulted                   x҃҃i           0Ӄ|      0Ӄ0Ӄ0Ӄ    ҃Hi                                   Ѓ                 ҃    | 4 4 | 4 4  4 : 4    ( 4 ( 4  4 4       P9҃ ( ҃H 0Ӄ        !   8Ӄ$clear_reconsulting !    $reconsulting       i           ԃ       ԃԃԃ    ӃHi                                   ҃        i           %Ў       %%%    XHi                                   Ӄ        I     @  Ӄ     4 :0 4 0 4   Ճx8Ӄ 4      @Ӄ 4  4  D l  4 Ӄ0 4 0 4  Ճx8Ӄ ` ՃӃ  փ 4      @Ӄ ( ӃH ԃ                        1     ,    ؃p 4 ( H  փ   @Xփ$yapor_on   !   ΊA$start_yapor        !   0փ$parallelizable     !   փ$parallel_query                  xփP׃             փ׃i           փT        փ             @փ                                     `ԃ        i           \׃      VVZ    փ@                                   փ        i           ׃      BBC    փ@                                   P׃               ڃЎ 4 Ў 4  4  $ ك؃x ك 4 Bփ 4 o      4 ` ك ڃ ( ( ` كփ 4 $ كhكx ڃ 4 Zփ 4 o      4 ` ك ڃ ( (  4 ` كP׃D  4  4 `     ׃ ( H 0؃                                                         8ڃ$yes_no                   ڃPڃi           |      |H@    8ڃHi                                   ׃        I      @   xރp 4 "   4  PڃH ڃ    !   Y܃$exit_system_mode   !   0aۃ$output_frozen      !   ۃ$write_answer       )   ؁ۃ$write_query_answer_true       Ή݃$another    !   ރ$out_neg_answer                   ۃp܃             @ۃ܃             `ۃ@݃i           @y       @y@y@y     ۃHi                                   Pڃ        i           t#      t#    ۃHi                                   ܃        i           -      -    ۃHi                                   p܃        i           L݃      0    ۃHi                                   ܃        i           P       PPP    ۃHi                                   @݃        i                      ۃHi                                   ݃                   Ў 4 Ў 4  $ <x p` @܃ 4  D Y$ L,߃x x` Phsd T߃( ` T܃ (  4  4 0 4 ` Xp܃ 4  4 0 4 ` \܃ 4 `     @݃`     ݃D  ( ( `     hs ރH ރ                                                            !   0$present_answer                yes              i           /      /(    Hi                                   ރ               Pڃ0Ў 4 Ў 4  4 4       @
Pڃ 4 ` `Pڃ 4  4 " 0 4 ` p܃Pڃ 4 "  4 0 4 ` ܃Pڃl $  Pڃx  4 p 4 "  ` Pڃ  D l  4  4 ` Pڃd ( Pڃ` ݃PڃD l  ( PڃH H                                                  A      <   Pڃ    D     hsPڃ ރPڃH @    !   P$add_env_and_fail   i                      pHi                                           )      $        ( H            no           Hi           TT       T             0                                                    ރ      4 P    4  4  4 o,     t 4 ꈀ| 4    P    P    P     "  4 " `     Hރd  4 ʟ 4 "`     Ѓރ ( ރH                    `      xi           <      <`܄ބ                                       H        Y      T   `P 4   4 L       X 4 4  `H X         `    Ў 4 Ў 4 D h܃` 4 p   Ĺ Ĺ       Y`$ t8`x | hs`( ``     ܃` ( `H                                   ~ntrue            x   @݃ p 4 "  D  4 ꈀ 4  4 "      @ׁ@݃ ( @݃H             )         @݃    ( @݃H 0    !       hbindings_message                 Hi           T                     h  p                               p`        I     D  p܃xЎ 4 Ў 4  4  $ p܃x  4 h    4  4  4  4 p     p܃ 4 ` p܃ $ ( p܃( p܃ 4  4  4 " `     p܃  ( p܃H                            )   vx$extract_goal_vars_for_dump !   H$show_frozen                     0             Xi           \-@      \- P    xHi                                           i           -8      -opq    j                                                    p܃    Ў 4 | 4 4 Ў 4 0 4 D p܃ 4  4  4  p܃H        1     ,   @ܑ " " ( H  y      p       P 4      X 4   X 4 ( 4 4  X 4  H P    A      8         ( H                [~p]        !   H$print_options         ($toplevel          `write_term     #    ~w             ~n               0                 Hi           0       0RS     ȇ                                           a     \      p 4 Ў 4  4 
 4 4       X 4 4  4    |  4 ꈀ 4 | 4 ( 4  "  D@ׁd l $ Lx d 4  4    и 0 4  Px8 ` T l 4 ꈀ 4  4 ` Xd (  4 ꈀ 4 b| 4 Ĺ  "      @ׁ 4 ꈀ 4 r 4 "      @ׁ ( H (                                                       ?  )    $add_nl_outside_console                yes~n               fhalt        )   @փ$ask_again_for_another      i                      Hi                                           i           f        fff    `                                           i                      Hi                                   p        Q     L  ݃     4 ꈀ 4 z 4 "   l@ׁ݃ 4 0 4      (ā݃ 4  4    $ 4  4         ԁ݃` t݃ ( ݃ 4  4      ` |݃ 4 P    4  4  4 o,      4 ꈀ 4  4 "  @ׁ݃ ( ݃ 4 ʟ 4  Ѓ݃ 4  4  , p݃ 4  4         ԁ݃ ݃H P                         Y      P    4  4 ꈀ     h ( H     i      d        4 ꈀ 4 r 4 "       @ׁ ( H     A           Action (";" for more choices, <return> for exit)    i      d        4 ꈀ 4 R 4 "       @ׁ ݃H     A      8   ܃     ܃ ( ܃H     !   $purge_dontcares    )   `$prep_answer_var_by_var     !   L$name_vars_in_goals )   6($write_vars_and_goals                  first                    8@             X                          xi           .      .0    Hi                                           i           .@      .8    Hi                                   @        i           X|      XXX    Hi                                           i           /      /    (Hi                                           A     8  ܃    Ў 4 Ў 4 Ў 4 0 4 D @܃ 4 0 4  2܃ 4 0 4  4 ` ܃ 4  4 0 4 ` ܃ 4  4  4  x܃H U   u   }          1     ,   @Pܑ " " ( @H 0      x   @P 4      H    X 4   X 4   X 4   @@H `    Y      T   @    P 4 |  4 4 ( 4 4  X 4  @@H A     8   p 4 "  4 4 ( H 8    )   x$delete_identical_answers   !    $prep_answer_var                 h             Hi                     Hi                                   x        i           T      (     Hi                                           1     (      P 4     , T   X 4 Ў 4 Ў 4  4 0 4 0 4 D | 4  Ĺ  4  4 0 4 ` H 4  4  4  H }          I     D   (p 4 " p 4 " p 4 " ( H          P 4   |  4 4   X 4 ( 4 4  X 4   X 4 4  H 8Y      T       P 4 |  4 4 ( 4 4  X 4  H )   Pʌ0$prep_answer_unbound_var                 Hi           T             0Hi                                   H        Q      H   H , 4  | 4 4 4 4  HHH                  q     l   H    P 4        X  4  p 4   X 4  4 4 ( HH ( Q      L   H P 4   8  "  4 4  ( HH  i     `   H    P 4       p 4   X 4  4 4 ( HH      !   A`$gen_name_string                 @   B          i                     `Hi                                   H                 | 4 4 P 4 d , 4  p 4  4 4 p 4   | P4 4      4 x   ( 4         hE( H    B             C      X    )            | 4 4 | 4 4  4 4  4    ( 4         hE 4 4  4    ( 4         hE 4 4  4 x   ( 4         hEX 4 4 | 4 ( 4 ( 4  H     A     8   xxp 4 " p 4 " ( xH        hFnl  !   H%$write_goal_output               H             Xi           F       FFF    x ȇ                                           i                 P
P
    Hi                                           !       xP 4  H JT $   , T Ў 4 Ў 4  D  4 ꈀ` x 4  4  4 0 4 0 4 ` x 4  4  4  xxH <   <   ?                x    P 4 d , 4 , T 0 4 0 4 D ,x 4  4  4  xxH        !   tp$goal_to_string            Їclose                    8             Xi           Ў          pHi                                           i                  ͇͇xЇ     ȇ                                                        Ў 4 Ў 4 Ў 4 0 4   X	ˁ 4  4  4  \	@ׁ 4  4 "  4  `	́ 4  H                     next                   ,~n            ~s  !   O	$write_output_vars               		i           	      XX    	Hi                                                  H 4     ̾ 4 T $   , T ( 4 4  X 4 p 4 j	 4 4  4  $ (x X 4 4 p 4  4 `  d h(  4 ꈀ 4 	 4 "  @ׁ 4 ꈀ 4 	| 4   "  @ׁ 4  	H P
                  |      |                   =  I     @  PH 4       ̾ 4     , T  , T ( 4 4  X 4 p 4 j	 4 4  4  $  
x (X 4 4 p 4  4 `   0d @
(  4 ꈀ 4 	 4 "  @ׁ 4 ꈀ 4 	| 4   "  @ׁ 4 ` 	 4 ꈀ 4  4 "  @ׁl $ x 8 4  4    и 0 4  x8 `   @ 4 ꈀ 4  4  (  4 ꈀ 4 b| 4   "      @ׁ ( H 1   1   1   1   1   1   1   5   5   ?   ?   5      |      |                                 p 4 J 4 4  4 4  D  4 ꈀ 4 r 4 "      @ׁ ( H `               B      P         |  H 4    d , 4 , T Ў 4 Ў 4 Ў 4 Ў 4 0 4  4 P 4 |  4 4  D  4 0 4 ` P 4  4 "  ( 4 ̕ 4  4 ̕ 4  ( l $ \x l 4 p 4  ` ` td (  4 ꈀ 4 	 4 "  d@ׁ 4 ꈀ 4 	| 4 Ĺ  "  h@ׁ 4 8 4    ( H w                                        y     p      H 4      , T 8 4  X 4 p 4 j	 4 4  4  $ Px X 4 4 p 4  4 `  d (  4 ꈀ 4 	 4 "  @ׁl $ Lx  4  4    и 0 4  x8 `   4 ꈀ 4  4  (  4 ꈀ 4 b| 4   "      @ׁ ( H                               |      |                       )   BH$name_well_known_vars       )   ȋ`$name_vars_in_goals1                     x              i           .      .xH    HHi                                   	        i           ,/      ,/    `Hi                                   x        !           | 4 4 Ў 4  4 x   ( 4 ( 4  4 x   Ĺ и   X( 4 ` \x 4  4 " 0 4  `* 4  4     4 4  H X         1     ,   xp 4 " ( xH x         x8P 4   |  4 4   X 4 , 4  X 4 4 H 4 P   4  4 X 4 4  xxH     I      @   x    P 4    X 4  xxH H    A     8   p 4 "  4 4 ( H     9     0  P 4   P   T $  H    X 4  , T | 4 4 Ў 4 0 4  4 x   ( 4           hEX 4 4  4 " X 4 4 ` D  4  4  4  H           Q      H       P 4 |  4 4 P 4  H     1     ,   	p 4 " ( 	H X            = ~s                	    P 4 d , 4 , T  4 ꈀ 4 z| 4   4  "   (@ׁ	 4  		H    I      @   X           YX ( XH @               incore                   xi                          Hi                                           I      @              Y ( H             ,$meta_call               Xi            Ў             pHi                                                        Ў 4 Ў 4 0 4   Xo 4  4  4  4   H     !       hXЎ 4 Ў 4 0 4   qhX0 4      @
hX 4  4  4 H   <  Ĺ Ĺ  4 `  hX 4  4  4  4   hXH              k H 4 X   <    , T Ў 4  D 0 4  \ qk0 4      @
kl $ d kx p  4  h  Yk ` l k x  4  4  4 8    Ĺ  4   k( k 4  4  4 8    Ĺ  4   kH V   ^                                    ؜      Ȝ&       k"H 4     <    , T Ў 4  D 0 4  h"qk0 4      @
k$ p""kx |"0 4  t"8pk 4  x" Yk 4      rk 4  4  4 H    Ĺ  4   k( k 4  4  4 H    Ĺ  4   kH  V   ^   _   _               Q     L  k    Ў 4 Ў 4 0 4   #qk0 4      @
k$ #`#kx # 4  4  4 8   Ĺ Ĺ  4   k( k 4  4  4 8   Ĺ Ĺ  4   kH "               i           P$Ў       P$P$P$    8Hi                                           Q     L  #    Ў 4 Ў 4 0 4   x%q#0 4      @
#$ %%#x % 4  4  4 8   Ĺ Ĺ  4   #( # 4  4  4 8   Ĺ Ĺ  4   #H P$               Y     T  `ԃ    Ў 4 Ў 4 0 4   &q`ԃ0 4      @
`ԃl  4  4  4 X   <  Ĺ Ĺ  4 ` & `ԃ ` &`ԃ & 4  4  4  4   `ԃH %,   ?   ?           i           `'Ў       `'`'`'     Hi                                   #        !       &    Ў 4 Ў 4 0 4   d(q&0 4      @
& 4  4  4     <  Ĺ Ĺ  4 ` h( & 4  4  4  4   &H `'               `q    l  $ )(`qx ) ) Y`q `     `q  ) ( `q( `q ( `qH (                              i           )l       )))    (Hi                                   &                 0)    l  $ 4**0)x @* 8* Y0) `     0) H* ( 0)( 0) ( 0)H )                              i           *      ***     Hi                                   0)        1      ,   X*     4 ( X*H *!   I(+$iso_check_goal        p      X@+             *+i            ,Ў       , , ,    +Hi                                   X*        i           +      PP@    (+                                   @+                 @+    Ў 4 Ў 4  4 D ,+@+0 4  ,Xo@+ 4  4  4  4   @+H  ,         +      X,i           X-      X-X-X-    ,Hi                                   +        )      $   ,      ,H X-         8-i            .Ў       . . .    p-Hi                                   ,                 -    Ў 4 Ў 4 Ў 4 Ў 4  4 D .+- 4  4  4  4   -H  .                 (/H 4 p   d , 4  X 4 , 4   4 2 4 芀   ( 4   H .    Q      H    x/H 4 p   |  4 4     H 8/              @0H 4 H   d , 4 , T Ў 4 Ў 4 Ў 4  D ` 80   4  4  4  4    H /               @1H 4 X   d , 4 , T Ў 4 Ў 4 Ў 4  D l  ,1 Y  ` 01  41 4  4  4  4    H P0                           2H 4     d , 4 , T Ў 4 Ў 4 Ў 4  D   2 Y  4  4  4  4    H P1              3H 4 8     X   d , 4 , T  , T Ў 4 Ў 4 Ў 4  D l $ x3$3 x 3 |3 Y  ` 3  3 4  4  4  4    (   4  4  4  4    H 2   ?   ?   ?   ?                         @5H 4 8           , T  , T Ў 4 Ў 4 Ў 4  D $ (54 x 450 4  ,58p  4  05 Y  4      r  4  4  4  4    (   4  4  4  4    H 3_   _   _                         06H 4 8   d , 4 , T Ў 4 Ў 4 Ў 4  D $  65 x $6   (   4  4  4  4    H P5                       7H 4 8     X   d , 4 , T  , T Ў 4 Ў 4 Ў 4  D l $ 7L7 x 7 7 Y  ` 7  7 4  4  4  4    (   4  4  4  4    H @6   ?   ?   ?   ?                         h9H 4 8           , T  , T Ў 4 Ў 4 Ў 4  D $ P98 x \90 4  T98p  4  X9 Y  4      r  4  4  4  4    (   4  4  4  4    H 7_   _   _                         X:H 4 8   d , 4 , T Ў 4 Ў 4 Ў 4  D $ H:9 x L:   (   4  4  4  4    H x9                        X;H 4      X 4  D l $ 8;; x D; 4 p   ( 4   4  <; Y  `       L; (  (   (  H h:                   0                    X<H 4 (    X 4  D l $ 8<< x D< 4 p   ( 4   4  << Y  `       L< (  (   (  H h;                   0           A      <    <p 4   4 (  H h<i      `    =P 4   4 L      | 4 4  X 4 4   H <    !    =$meta_expansion                   =8=i           ċ|      ċċċ     =@                                   -             x       Ў 4 Ў 4 Ў 4 Ў 4 0 4 0 4 0 4   4 ,     t@l $ @> x @ 4 ` @p  ` @  @ 4  4  4  4     @4@  4  4      (  ` @   Al $ @? x A 4  4  4  4 " ` @8=  ` @  A 4  4  @l  (  (   4  4  @l  (  (   4  4  @l  (   4  4      l  (  H =                                                                                   !   xʌ@A$check_callable                   AXAi           dA      AAC    @AHi                                   8=        I      @   XAB, 4   4 2 XAH A    q      h   XAxBH 4 p   d , 4  X 4 , 4   4 2 XAH B    Q      L   XABH 4 p      X 4   XAXAH Bi      `   XA0C| 4 4 ( 4   4 p    Z( 4  XAH B    i      `   XAC| 4 4  4   4 p    Z( 4  XAH @C    )         XA    ( XAH C    !       Dswi_predicate_table )    D$find_undefp_handler                     C8D             C8Hi           DDT  @    DD             D  p                                       i                      X`                                   XA               x    P 4   , T 0 4 0 4 0 4 l  $ tGFxx G 4 r΃ 4 ΃   Ĺ  Ĺ   4  4 0 4  xGx8x ` |Gx Gd ,G( x     ƀxl $ GFxx G 4  4  4  4 ` G8Dx ` Gx G     ǀxd ,G( x 4  D     Ĺ Ĺ ` GDxD  4  4      lx ( xH E?   ?         ?   ?   ?   ?   ?   ?   ?                                   )       Hunknown_predicate_handler   !   
 H$leave_undefp                    G                 GKi           t8      tH`K     DHi                                   D               8HxJЎ 4 Ў 4 Ў 4 p 4 o 4  $ $JI8Hx 4J 4 H    4  4  4  4 o     8H 4 ` (J8H <J ( 8H( 8H 4 H   Ĺ Ĺ Ĺ  4 o 4 4  4  H   ( 4 `     8l8HD      ǀ8H ( 8HH H                              x$unknown                 HJ             8HPK| 4 4 | 4 4 p 4 o 4 JJ 4 `J    p   ( 4 ( 4  ( 4 0 4   @Kx88HD      ǀ8H ( 8HH J          A      8   8H         ǀ8H ( 8HH `K    i           L      LLL     HHi                                   8H        A      8   K         ǀK 0KH L           Lbreak       )           % Break (level ~w)~n           8    $true       i           M        MMM    8LHi                                   K               L     4 o0 4       L 4 n PP~L 4 o0 4      L 4 n PP~L 4 
0 4      L0 4  4 x   Ĺ          hEL 4 
0 4      L 4 o0 4      }L 4 "      |L 4 
 4  PP~L0 4      L0 4      L 4 ꈀ 4 RL| 4 Ĺ  "  P@ׁL` PjLD  4 ji 4 zL     L 4 o 4      |L 4 
 4  PP~L 4      xҁL 4      HӁL 4 o 4  PP~L 4 o 4  PP~L 4 
 4      P~L ( LH M                              !   P(Q$silent_bootstrap          silent         (@Qbootstrap                PXQ             QQi           8RЎ      8R8R8R    (QHi                                   L        i           TЎ      TTT    @QHi                                   XQ        Y     P  XQ    Ў 4  4 @   4     `S {XQ` dSsXQ 4  4     hSP~XQ 4 ڀ0 4      XQ 4 P lSP~XQ 4 ` pSQXQ 4 ڀ 4      P~XQ ( XQH 8R                      )           ~*|% consulting ~w...~n        S$loop       9   P    ~*|% ~w consulted ~w bytes in ~d msecs~n                 STi           ZЎ      ZZZ    SHi                                   Q               Q    Ў 4 0 4 0 4  4 z0 4  4     4          pǁQ0 4 0 4 `  YeQ 4 ʷ 4 0 4      Q 4  4 4      Q0 4      QX 4 4      pQ 4 $ (Y@VQx LY 4 ڀ 4 P     Q 4 ` ,YQ TYd V( Q 4  4 ꆀ     hEQ 4 0 4      Q 4 ꈀ 4 S| 4 Ĺ P Ĺ  "  0Y@ׁQ 4  4 ʷ` 4YTQ 4      pQ     xQ 4 $ <YWQx \Y 4 ڀ 4 P     Q 4 ` @YQ dYd X( Q 4 4  4     ꆀĹ      hEQ 4 4 0 4      Q 4 4  4    ( 4 Ĺ      hEQ 4 ꈀ 4 S| 4 Ĺ P Ĺ P ( 4 P ( 4  "  DY@ׁQD  4      Q ( QH T5  }  }  }    }  }  }  }    }                 
            0Y$abort_loop            |                      |   !    Z$enter_command         =Z$LoopError               pY0Z             Y ]             Yi           ^|      ^^^    YHi                                   T               T    Ў 4 Ў 4  4 *n 4       xT$ \[Tx ]d ([ \[Tl $ \[Tx ]0 4 0 4  4 ` \eT ` \T ]d [( T 4 ` \0ZT 4 Y     T0 4  4 Y      T 4 4      @
T 4  Z   Ĺ Ĺ X 4 4  4 4  4 p    o Z   ( 4 Ĺ ` \8lT  ( TH Z               >   >                                  i           ]Ў      ]]]     ZHi                                   0Z                  ]    Ў 4 0 4 0 4 0 4 0 4 D  ^h ] 4  4  4   ]H ]              input       !           closed_stream                  loop        i      d   0Z    | 4 4  4 ΃    *^ B^( 4  4 b^ 0ZH ^a      \   Ƀ@_H 4 p   |  4 4  4 4  4 4  ( ɃH ^A     8   Ƀ     4 4 p 4 ҈( ɃH P_    )   _$check_head_and_body           ΁_$check_head              __             _X`i           m      m`@a    _Hi                                    ]        i           m      mab    _Hi                                   _        q      l   _0aH 4 p   |  4 4  4 4  4 4 | 4 4   X`_H `Q      H   _     4 4 p 4 ҈| 4 4  X`_H @a    I      @   X`a, 4   4 2 X`H a    i      `   X`0b| 4 4 ( 4   4 p    Z( 4  X`H a    i      `   X`b| 4 4  4   4 p    Z( 4  X`H @b    )         X`    ( X`H b           baccess_file    Ђc$exists                  b c             bci            d        d d d    bHi                                   X`        i           ,      ,@dd    cHi                                    c        )      $    c     c cH  d           none        9      0   cdp 4 d ( cH @d               exist       I      D   cdp 4 jd      Ɓc( cH d       c    | 4 4 Ў 4  4 2o0 4       c 4         cX 4 4 0 4  f #c 4 $ f\fcx f 4  4  4 4  4     4         pǁc 4 ` fc fX 4 4      c 4 2o 4      c ( c( c 4 2o 4      c ( cH d               @         )    ۃHg$expand_term_modules        )   h`g$check_iso_strict_clause    1   xg$expand_array_accesses_in_term                   fg             fg             g`hi           ܄      ܄rr    HgHi                                   c        i           h      ```    `g                                   g        i                 xqq    xgHi                                   g               Xǃ    Ў 4 Ў 4 Ў 4 Ў 4  4  $ LjiXǃx \j 4     4         Xǃ 4 ` PjXǃ dj 4  4  4 ` TjgXǃ 4  gXǃ( Xǃ 4  4 0 4  4 ` XjgXǃ 4  4  `hXǃH h                           !       jterm_expansion      )   ׁj$expand_term_grammar                     pjj             jPki           j   (   j             j  o                               p        i           t      t nn    jHi                                   `h               (    Ў 4 Ў 4  $  ml(x <m 4 $ (ml(x Dm 4 j    4  4  4 o     ( 4 ` ,m( Lm ( (( ( 4  4 ` 0mj(d m( ( 4  4 `     Pk(  ( (H k                                          !   0m$translate_rule        Й                       Xmmi            H             mH                                   Pk              x   PknH 4 xm    ̾ 4 L      X 4 4 D     mPk  ( PkH  n            1     ,   Pk     4 4 ( PkH n!   0n$expand_term_arith     pŇ$c_arith                 n(o             noi           4o      ppp    nHi                                   m        i           oT       o             o                                     (o                 (op| 4 4 | 4 4  4 n 4 ҈      (o| 4 4 4 4 `     o(o  ( (oH p            1     ,   (o     4 4 ( (oH p   p$c_arrays                p qi           q          p@                                   o        a      \   `hq      ۀ`h`      q`h  ( `hH xq        1     ,   `h     4 4 ( `hH q!   Xŀ8z$module_expansion                q0ri                  |}    r@                                    q        I      D   grD     0rg  ( gH r        A     8   g     4 4  4 4 ( gH r           8scatch                     sPsi           sЎ       sss    8sHi                                   0r                 Ps    Ў 4 | 4 4 | 4 4 0 4 D @tPs 4       YPs ( PsH s                   8l    Ў 4 Ў 4 | 4 4 | 4 4 0 4 D t8l 4  4      m8l ( 8lH `t          y      p   0    0 4   hu (0 4      w0 ( 0H u          )         u( H u    )      $        ( H u)         Жv( ЖH u       P:    $abort      )     $  Ж    Ў 4  4  $ wvЖx w 4 4 p 4 u8 4    X 4 4 ̕ 4  4 ` wЖ $wX 4 4  w YЖ ( Ж( Ж 4  0ЖH v                        !   `@$toplevel_hooks     9     4  x 4 
 4           4 2w0 4 0 4  \xx8D l $ hx@xx tx 4  lx Y `      |x ( (  ( H `w                                  )             ( H x    !   {$system_mode        a      X   hs     4 x 4 zn      P~hs ( hsH x               ܃     4 x 4 n      P~܃ 4 $ (zz܃x 0z 4 o 4 zn     ܃ 4 `     ܃ 8z     XȀ܃ ( ܃( ܃ ( ܃H @y                                   i  zLQ      L           q̮     q$     qܲ     qHH lzi   ΃    Ԑ|     ԐҐ    p΃  o                                           i   q                       Hn  o                               z                 zn         x    n                     ؀{         {            ({n         @{"          `{
         x|"    HJ  zn   h  (|            oP|҈         oh|n         o|n         o|" A      <           u̮     uܲ     uXH |q      l           pu̮     puX$     pu$     pu$     pu8ܲ     puH }i                                o                               {        9      4            uܲ    uH }      |           ̮     $     $     $      $     ܲ     H ,~i                              0  o                               x}        A      <           ̮     `wܲ     xH i                              0w  o                               ~        !           ../pl/init.yap               |             n         8n9      4            Hܲ    H $)      $           Щ        )      $   H    Щ    1      ,   p    Щhдx                 Щ      Щ<| 4 <(           \           l     Щ| 4 l,           ܲ    ЩH ܀    9      4           ʷ<Ծ    I      D         80           H 쁄I      D             փ 0؃ ڃܲ    ރH 49      4           Pڃ Hܲ    Pڃ@H |9      4           ` Xܲ    `H A           /build/buildd-yap_5.1.3-6-armel-lOi67J/yap-5.1.3/pl I           /build/buildd-yap_5.1.3-6-armel-lOi67J/yap-5.1.3/arch       9      4           Pk  nܲ    PknH t)      $           " |    q      l                         ܲ    H ԃ1      ,           Ppp    i      d       0P    P x,           Dܲ    PăH t9      4           g rܲ    grH ܄9      4           `h xqܲ    `hqH 9      4           Ƀ ^ܲ    ɃP_H L9      4           ʃ  σܲ    ʃxЃH )      $        ( H )      $   ؗ     ( ؗH i           p(        ppp                                       Ps        )             ( H p    i            (                                                          )             ( H      i                      д                                           Q      H              Y  ( H                h!$$!              Їi           p      ppp                                               )      $        X*H pi            (                                                            )             ( H         @$doindex    a      \              ฃd \ `  ܲ     ؼH D         ҈             l          P1    8H8H        (h;XP0pl     h:H/        )      $        t<          x       8       <H                      Lܲ     =H t    9      4           Ж uܲ    ЖvH            errors.yap     ;                                          Ў 4 Ў 4  4 0    4 и и и   4 4 H   Ĺ P Ĺ  0   Ĺ     0H p       i                         k                                           i                 XX8    Z                                   @        9      0   @     4  @H      i      d   P 4       4 ꈀ      ( H X!   Ѝ$process_error                   荄i                 ؑ    Ѝ                                           Q      H   ( D `     荄 ( H `            !       flush_all_streams   i           ̎T         ̎                                                  荄        A      <       D      ( H 8       (          a      X   荄ܑ   4  4 h    o Ѓ荄H     I      @   荄`p 4   4 u 0荄H     !       Hthread_cancel                    (XIq      l   荄АH 4 H     H    X 4   X 4 p 4  ( 荄H p      |   荄PH 4 H    ̾ 4   H    X 4   X 4  X 4 4  0荄H y      p   荄ȑH 4 H    ̾ 4 L            荄 4 " Ѓ荄H `    A      <   荄    | 4 4  4 " Ѓ荄H ؑ   8force              `\print                                      hi           t       x]x]]    P ȇ                                           Y      P   Ѓ@H 4 8    X 4   4 ꈀ hЃH                sp_info     i     d  Ѓxp 4 "H 4 H     T $    ` 0   ؝  4 4 |  4 4  D  4 * 4 0     4   4   4   4  P~Ѓ 4 " 4 H     `     ЃЃ 4 * 4 "      P~Ѓ ( ЃH P               H@=$notrace    !       portray_message                                   i           |?      |?(; >    J                                   h                 Ѓ8| 4 4 P 4 P 4  4 p    o    ( 4 ( 4 D     Ѓ  ( ЃH         )       ؖgenerate_message_hook              message        k$message    !       Pgenerate_message    !        message_hook        )   8$print_system_message                    p&             @#             pP                              Зi           ܼ       ܼx"
    0Z                                                    pX`i           |      |0    8                                           I     @  ЃЎ 4 Ў 4 0 4 l l  $ Ѓx H 4 p    o ؖ   Ĺ  " Ĺ ` Ѓ ` Ѓ Pd 虄 Ѓ 4 p    o    Ĺ Ĺ  " `  Ѓ ` $Ѓ Xd 虄( Ѓ 4  4  4 " ` (PЃ ` ,Ѓ `l $ 4Ѓx h  4 p    o     Ĺ Ĺ Ĺ ` 8Ѓ ` <Ѓ p  ( Ѓ( ЃD l  4  4  4  ЗЃH H7   7   7   7   7   7   7   7   7   ?   ?   ?   ?   ?   ?                                                     9      0   ЃPp 4 P ( ЃH     !       8syntax_error                between     1           SYNTAX ERROR at ~a, close to ~d~n                ؛                            ЃH 4 H     8             d , 4  X 4   D     X 4   X 4  D  4 ꈀ 4 | 4   4 P   4  "      @ׁЃ ( ЃH `                   loading                  % ~a ~a~n              `             ЃH 4    |  4 4  D  4 ꈀ 4 z| 4   4 P   4  "      @ׁЃ ( ЃH                loaded      1             % ~a ~a ~d bytes in ~d msecs~n                 P             ЃH 4    ؝  4 4   |  4 4  D  4 ꈀ 4 j| 4   4 P   4 P   4 P   4  "      @ׁЃ ( ЃH                    ~q~n              |   Ѓ    | 4 4  4 ꈀ 4 | 4 ( 4  "       @ׁЃ ( ЃH     9      0   Зp 4 P ( ЗH 0    !       current_prolog_flag            verbose                  Xi           ܽ       ܽ    8׆                                   З        q      h   Зp 4  4 z 4 PD     З  ( ЗH                         banner      q      h   З@p 4  4 z 4 PD     З  ( ЗH                    hӐprefix      !       Xprint_message_lines              p              آi           ϐ       ϐ೐    @0Z                               P        i           $А       $А    X0                                           y     t  ЗإЎ 4 X 4 4 H 4 H     8   ؝  4 4 ؝  4 4 ؝  4 4  X 4   X 4  D  4      З 4 ꈀ     ЗX 4 4 0 4 0 4 0 4  4 ` pЗD  4  4  4  آЗH P         !       file_location          @                   pi           ΐ       ΐ0    ؤ0Z                               p        i           Ў           0Z                                       )        З | 4 4 Ў 4 0 4 0 4 0 4 D 즄З 4 0 4  4 ` pЗD  4      З 4 ꈀ     З 4  4  4  آЗH 襄                      З    | 4 4  4       З 4 ꈀ     ЗX 4 4 0 4 0 4 0 4 ` ৄpЗD  4  4  4  آЗH              (p    consult.yap    Ӂ $load_files              8i           `Ў      ```                                        آ        I      D   t     4 Hq   ( 4 ( 4  8tH !   HP$process_lf_opts    !   h$check_use_module      @ۃ $lf    y$close_lf                訄                          (             8誄i                 ph    P                                   8        i           d      dx    h                                           i           L      L˄                                               i           r̮      rXττ                                                      8    Ў 4 | 4 4 Ў 4 0 4 0 4 0 4 0 4 0 4 0 4 0 4 0 4 0  5 0 5 0 5  5  5 D P8 4 0 4 ` T8 4 4      @
8 4  4  4  4  4  4  4  4   5  5  5  5  5 ` X8 4  誄8H `?  ?  ?  Q      L   P| 4 5 , 4   4 2 H p!   Э$default_encoding                譄i           솅̮      솅P-8.    Э                                   誄        Y      P   Hp 4 " | 4 4 , 4  譄( H `    !   8Ȯ$process_lf_opt                  ஄i           d      d0迄    Ȯ                                   譄               XP 4 d , 4 , T Ў 4 Ў 4 Ў 4 Ў 4 Ў 4 Ў 4 Ў 4 Ў 4 Ў  5 Ў 5 Ў 5 Ў 5 Ў 5 D 谄஄D  4  4  4  4  4  4  4  4  4   5  5  5  5  5  H X?  ?      !       (@domain_error        )           unimplemented_option                         y      p       P 4 d , 5  X 4 | 4 5  4 @      5  H h       0ʌautoload    !    >    $verbose_auto_load               б    A     <  ஄`H 4    8  ҈Ў 4  4 걄 4 4       ஄ 4 $ D஄x LX 4 4 p 4 ҈ 4 ` H஄ T 4 p 4  ( ஄( ஄ 4 p 4 P ( ஄H 0                     A     <   ஄سH 4    8  
( ஄H p!       derived_from                         I     @  ஄H 4    , T Ў 5 Ў 5  ̦ 4d t 4 p    :  4 ` ஄̦ d ȴ 4 p    :Ĺ  4 ` ஄ 4 @      4  ஄H 賄                       pencoding    !   X܀$valid_encoding                io_mode                                    8i                 p+p+ -                                       ஄        i     `  ஄H 4 p   <   X 5 Ў 5 l  , 5  4 2 4  ஄$ L஄x X| 5  5 4 4 ` P஄ ` T஄ ` ( ஄( ஄ 4 @    Z  4  ஄H                                         expand                   p          x   ஄ H 4    8  ҈p 4 ҈| 4 5  4 @     r ஄H     Q     H   ஄H 4    8  
p 4 
( ஄H 0           if     W    changed                  p    Q     H   ஄ H 4    8  p 4 ( ஄H     Q     H   ஄hH 4    8  ҈p 4 ҈( ஄H                not_loaded  Q     H   ஄H 4    8  Rp 4 R( ஄H x       7ไimports            all                  A     <   ஄8H 4 ไ   8  ҹ( ஄H Q     H   ஄H 4 ไ    X 4  4 4 ( ஄H H           qcompile                           x   ஄8H 4    8  ҈p 4 ҈| 4 5  4 @      ஄H Ⱥ    Q     H   ஄H 4    8  
p 4 
( ஄H H                 P    A     8  ஄ H 4    8  ҈Ў 4 p 4 P 4  $ X஄x ȼ 4 ڀ     ஄ 4 ` ஄ мd x( ஄ 4 p 4  4 ڀ 4 P     P~஄ ( ஄H                             !           skip_unix_comments  A     8   ஄p 4 ⼄p  5 ⼄( ஄H     !   lxcompilation_mode           source                   @    Q     H   ஄H 4 x   8  bp 5 b( ஄H            Єcompile     Q     H   ஄`H 4 x   8  ⽄p 5 ⽄( ஄H                assert_all  Q     H   ஄H 4 x   8  Jp 5 J( ஄H p    A     <   ஄H 4    8  
( ஄H              ȷфQ     H   ஄XH 4    8  p 5 ( ஄H     Q     H   ஄ؿH 4    8  ʷp 5 ʷ( ஄H h           stream                                ஄    H 4     X 5  5 4 | 4 5  5 0( ஄ 4 p    :( 5  ஄H 迄a      \   H 4 h    X 4 H 4 h    X 4  ( H x   h      hքa      \   XH 4    L      H 4 h    X 4  ( H          hׄq      h   H 4 @   d , 4 L      H 4 h   4  4  ( H h    9      0       p 4 Bp ( H           
   (i           |   
                                                   Q      L       | 4 4 , 4   4 2 H 9      0   Äp 4 "  ( H              ÄH 4 p   |  4 4   4 TÄ  4 p    :  4 X 4 4  H Ä       ńP 4 d , 4 , T Ў 4 Ў 4 Ў 4 Ў 4 Ў 4 Ў 4 Ў 4 Ў 4 Ў  5 Ў 5 Ў 5 Ў 5 Ў 5  D 0 5 ` Lń 4  4  4  4  4  4  4  4  4   5  5  5  5  5  H Ä?           Fpń$do_lf                	   Xńńi           Ў   	       pń                                                    Ƅ| 4 4 | 4 4 | 4 4 | 4 4 | 4 4 | 4 5 | 4 5 | 4 5 | 4 5 P 4   ńH  Ƅ             @Ǆp 4 o| 4 4 | 4 4 | 4 4 | 4 4 | 4 5 | 4 5 | 4 5 | 4 5   4  ńH Ƅ             Ʉp 4 | 4 4 | 4 4 | 4 4 | 4 4 | 4 5 | 4 5 | 4 5 | 4 5   4  ńH PǄ    !   X8$find_in_path       !    XȄ$set_changed_lfmode    ̀pȄ$start_lf                ǄȄ             ȄȄ             (ȄXɄi           5|      555    @Ȅ                                   ń        i           8      @̄x̄    XȄ                                   Ȅ        i           ̮      @̈́΄    pȄ                                   Ȅ        	       ˄Ў 4 Ў 4 Ў 4 Ў 4 Ў 4 Ў 4 Ў  5 Ў 5 Ў 5 Ў 5 Ў 5 0 4 D ˄Ȅ 4  4 z0 4  4     4      pǁD  4 ` ˄Ȅ 4  4  4  4  4  4  4  4  4   5  5 ` ˄XɄ 4       ( H Ʉ        i      d       | 4 4 | 4 4  4 ΃    *^ ( 4  H ˄9      0   Ȅh̄p 4 ҈ ( ȄH @̄    )         Ȅ    ( ȄH x̄    !   8Ƀ̄$file_loaded                     ̄̄i            |             ̄                                   XɄ        q      h   XɄ@΄| 4 4 | 4 4 p 4 RD     ̄XɄ  ( XɄH @̈́            !   p̈́$file_unchanged                  ̈́̈́i           |          ̈́                                   ̄        q      h   XɄ΄| 4 4 | 4 4 p 4 D     ̈́XɄ  ( XɄH P΄                     XɄ    | 4 4 | 4 4 | 4 4 | 4 4 | 4 4 | 4 4 | 4 4 | 4  5 | 4 5  ńXɄH ΄    q      l   誄τ| 4 4 P 4  D  4 ڀ     P~誄 ( 誄H Xτ        )         誄    ( 誄H τ    !        Єensure_loaded                    τЄi           Є|       ЄЄЄ     Є                                   ̈́        i      d   Є    | 4        "  4  Є   ( 4  8ЄH Є             ང фi           xф       xфxфxф    Є                                   Є        Q      H    ф     4 "  4 Є   ( 4  8 фH xф    i           ф       0҄0҄Ԅ                                        ф                 ф҄| 4 4      ̀ф 4        ( 4    4  фH 0҄    i      d   фӄ| 4 4 , 4   4 2 4    ( 4  фH ҄   xs(ӄ$consult                 ӄ@ӄi                 pԄՄ    (ӄ                                   ф        Q      H   фӄH 4 p   |  4 4   @ӄфH ӄ    i      d   ф    | 4 4  4 4      @
ф| 4 4 4 4  @ӄфH Ԅ         @ӄ Մ| 4 4 | 4 4  4     4 &        @ӄ  4 p   ( 4 ( 4  4 "  8@ӄH pԄ          x   @ӄ    | 4 4  4 p   ( 4 ( 4 | 4      ʷ  "  8@ӄH Մ                  Մi           ք       քքք    Մ                                   @ӄ        Q      H   Մ     4 "  4 Մ   ( 4  8ՄH ք    i      d       | 4      R  "  4 h   ( 4  8H `քi           0ׄ|       0ׄ0ׄ0ׄ                                       Մ                 ք    | 4 4 | 4      R P  ไ   ( 4   "  4    ( 4 ( 4  8քH 0ׄ   G$use_module              ׄP؄i           ؄       ؄؄؄    @                                   ք        i           \؄      للۄ    ׄ                                   ׄ        )      $   ׄ     P؄ׄH ؄)   >ل$import_to_current_module                ؄ لi           q      q    ل                                   P؄        i      d   P؄ ڄP 4 X 4 4 p 4 o  4  4 o  لP؄H ل    
$module                  ل@i     `  P؄ۄЎ 4 Ў 4 Ў 4   D  4 ل 4 ڄ   и Ĺ  4 0 4  xۄx8P؄ 4 | 4      R P  ไ   Ĺ   "  4 @   Ĺ Ĺ Ĺ ` |ۄ8P؄ 4 ̕ 4  ( P؄H 0ڄ
                      P؄    | 4 4 | 4 4 | 4 4 P 4 | 4      R P  ไ   ( 4   "  4 @   ( 4 ( 4 ( 4  8P؄H ۄ    i      d   ܄| 4 4 , 4   4 2 4    ( 4  H `܄1     ,   ܄p 4 " ( H ܄       ݄P 4       X 4  , T Ў 4  D  4 p   Ĺ   4  4 " | 4  p       Ĺ    4   " ` ݄8 4  4  H ܄                   P 4 d , 4 , T Ў 4 D tބ@ӄ 4  4  H ބ       !   _H$record_loaded      )   p`$set_consulting_file        !   Xփx$consult_infolevel     0$comp_mode  !    @$initialisation     !   $start_reconsulting )   S$remove_multifile_clauses   !           reconsulting                   reconsulted            consulting         consulted   !   $skip_unix_comments            run !   $bind_module        )   8H$exec_initialisation_goals               ބ             ބp             ބ             ބ@              ߄             @߄             ߄x              i           \      \h)0+    H                                    ل        i                  '(    `                                           i           8      8    x                                   p        i           Ў                                                     i           Ў                                             @        i           ̮      0%&                                               i                 (                                               i           p|      p8                                       x        i           q̮       q@                                                 I     D  ń    Ў 4 Ў 4 Ў 4 Ў 4 Ў 4 Ў 4 Ў 4 Ў 4 0 4 0 4 0 4  4 0 4       ń 4     x@P~ń 4 x0 4      ń 4  4 n ` xHhsńd  4  4 ` xLń0 4  4      	ń0 4      ń 4 B0 4      ń 4 ` xPpń0 4  4 ꆀ     hEń0 4 0 4      ń0 4 0 4  4 ` xTeń0 4  4 *n     0ń 4 *n 4      xń 4 b0 4      ń 4 
 XP~ń 4 &  0 4      ń 4 ` \ń0 4  4 ` `@ń 4 ߄ 4 0 4  dP9ń 4 $ lńx  4 p 4  4 ` pń  4 ` tń 4  4  4      ń 4 ` xń 4 p 4 j߄ 4 p 4 ߄d $( ń 4  4  4      ń 4 p 4 ߄ 4 p 4 ߄ 4  4    Ĺ Ĺ ` |Ѓń 4  4 ⼄  4 ` xńd  4  4 ` Tń 4 4  4     ꆀĹ      hEń 4 4 0 4      ń 4 4  4    ( 4 Ĺ      hEń0 4  4      	ń 4  4    Ĺ Ĺ Ĺ ( 4 ( 4 ` Ѓń     xń 4 $ ńx  4 p 4  4 ` ń ` Ӄńd ( ń 4 *n 4      xń 4 &   4      ń0 4  4 ` @ń 4 b 4  P~ń 4 B 4  P~ń 4      pń 4  4  P~ń 4 Ҳ 4 ߄ P~ń 4  4  P~ń 4  4 ` ń 4  4  4 `  لń 4  4     0 4  4 R      ńd  4  4 n `     ܃ńd `     Hń  ( ńH \]]]]};};};};}?}?}?}?}?}?}?}?}?}???????????????????                        1     ,   (p 4 Bp( H A     <       H 4 h    p 4 ( H 8   h$use_preds               hi           4ѐ8      4ѐc`e    @                                   H                 ل | 4 4 Ў 4 Ў 4  4 ل 4 ڄ   ( 4 и и 0 4   x8 ل 4  4 | D  4  4  4  4   لH       )          ل    (  لH     9      0   `P 4  ( H 8    y      p   | 4 4  4 ڀ     X 4 4  4 " |  ( H p    1     ,       p 4 ( H              Ў 4  4 : 4 0 4   P9 4 Ӄ 4  4 4      P9 ( H       !   x$initialization                               i                                                                i      d   | 4 4 , 4   4 2 4    ( 4  H       x   X| 4 4 ( 4   4 p    Z( 4  4    ( 4  H           x    | 4 4  4   4 p    Z( 4  4    ( 4  H h           do                            | 4 4  4 4        4 4  4    ( 4          hE 4 ߄ 4    ( 4 ( 4 0 4  P9 ( H    )             ( H     !   8r$blocking_code               H 4 0 4 0 4   x8H 4      @H ( HH @   )   Xpr$system_initialisation               H 4 0 4 0 4   x8H 4      @H 4  4 | `     XH ( HH       q     h  H 4 4       H 4 ߄ 4    ( 4 и 0 4  x8H 4      @H 4  4 | 0 4      @
H 4 x0 4      H 4  4 zn ` ܃Hd $ Hx   4 X    p   Ĺ   4  4 4  4 p    o Z   ( 4  ` 8lH ( H( H 4 p 4 zn`     hsH ( HH                                  )         H    ( HH          h$include           include                  8             P    i                 p    h                                           i      d   h| 4 4 , 4   4 2 4    ( 4  H 9      0   p 4 "  ( H x             `P 4 d , 4 , T Ў 4  D ` ( 4  4  H                  including              included    a     X      | 4 4 Ў 4  4 ڀ0 4       X 4 4 0 4  4    <  ( 4 ` Ȅ 4 z0 4       4  P~0 4      @
0 4  4 ꆀ     hE0 4 0 4      0 4 ` 譄$ x  4  4 z0 4  4     4      pǁD  4  4     2Ĺ ` Ѓ 4  4 ` T 4      d @ (  4 ΃    *^ Ĺ  4 `  4 4  4     ꆀĹ      hE 4 4 0 4       4 4  4    ( 4 Ĺ      hE 4  4     JĹ Ĺ ( 4 ( 4 ` Ѓ 4 z 4      P~ ( H p                                         8    Ў 4 0 4  4  $ \8x  4     4         8 4 ` `8  4 Hq   Ĺ P      ҈  "  4  4 4  4 k   ( 4 ` d8l8d  h8 4 bn 4 n     8 4 Hq   Ĺ P      ҈ P  ⼄ "  4 0 4  4 z` l8l8d ( 8D  4 $ x<8x  4     4         8 4 `     8  ( 8( 8 p8H                                  
                         q      h   x 4 6       x  4 4       Łx xxH     )         x    ( xH (    !       `prolog_load_context              @xi                  
    `                                           Y      T   xP 4 B 4 "      x  ( xH            directory   Q      L   xp 4 :| 4 4      x( xH `   ߆    file        i     `  x8p 4 Ў 4  4 z0 4       x 4 $  xx  4 p 4 "  4 ` x  4 B 4      x 4  4 " |  ( x( x 4 ̕ 4  ( xH                                  zmodule      Q      L   xp 4 "| 4 4      @
x( xH HQ      L   xp 4 b 4 B     x( xH a      X   x	p 4 | 4 4  4 *n     0x( xH     !       @term_position       !       hstream_position                  X		i           	       @    x	 ȇ                                   x        y      t   x    p 4 :	| 4 4  4 4  4 *n     0xX 4 4  	xH 
!   Ѝ
$ensure_file_loaded              p

i                  
    
                                   	        i      d   ̄    | 4 4  4 4      ށ̄| 4 4 4 4  
̄H     pY$lf_loaded               x    i     `  

Ў 4 Ў 4 Ў 4  4 ل 4 ڄ   и и и 0 4   x8
 4 z 4      4  4 0 4   
x8
 4  4      (
D  4  4  4  4  
H                       
    Ў 4 | 4 4  4 z 4    и ( 4  4 0 4   
x8
 4  4      (
  ( 
H  
      )    $ensure_file_unchanged                   
 i           ,      @                                       
        i      d   ̈́    | 4 4  4 4      ށ̈́| 4 4 4 4   ̈́H !   и$file_is_unchanged               (i           8Ў      888                                                        0Ў 4 Ў 4 Ў 4  4 ل 4 ڄ   и и и 0 4   x8  4 z 4      4 и 0 4   x8  4  4      ( D  4  4  4 ` ((  4  4  4  4   H                       Ў 4 | 4 4  4 z 4    и ( 4 и 0 4   x8  4  4      ( D  4  4  4  ( H @          i     d  (    Ў 4 Ў 4  4 4       (l $ d$(x t$ l(x |X 4 4 ̕ 4 d ( ( 4 p 4  ` p(  ( (( ( 4      @( ( (H 8                                      dpath                findall        O$in_path                               H             i            |                                                 (        i           Ў                                                       Y      T        | 4 4  4 4  4    ( 4   H  i           Ў                                                          x  H    Ў 4  4 j0 4 0 4    x8H 4 0 4  H 4 $ Hx  4 p 4 "  4 ` H   4 p 4 2  ( H( H 4  4      H ( HH                                          xadd_to_path            last                     0   `      0i           p       ppp    `                                   H        i           Ў           x                                           9      0        4 J H p       $check_path !   ʌ$add_to_path                                   hi                 pp8                                               i           t                                                                   Ў 4  4  D 0 4 ` | 0 4  4   4  4  hH                   h| 4 4  4 j0 4   x8h 4      @h ( hH             h| 4 4 p 4 J D  4 jX 4 4  4 4      (:h ( hH                |   h    | 4 4 p 4  4 jX 4 4  4 4       P9h ( hH     !       8remove_from_path                 Pi           0           8                                   h                 P    0 4 D T P 4 j 4 0 4  Xx8P 4      @P ( PH                 Ў 4  4  D 0 4    4  4    H p      1     ,    ܑ " " (  H y      p    P 4   4 d , 4 8  "  4 4        (  H (              (P 4 d , 4 8  " ( 4 4 T $ d , 4 8  "   4       (  H     i      `        P 4 |  4 4 ( 4 4  X 4  4    H 8    !   Í$add_multifile                            H i            |                                                P        i           4      4("%                                                            | 4 4 | 4 4 | 4 4  4 B 4 4      | 4 4 4 4 | 4 4 4 4  H H  !   8 h$multifile_defs        X!$defined               warning         "declaration            ignored                  p!       P      8h
             !    )     $  H @#| 4 4 Ў 4 Ў 4 Ў 4  4 R! 4 !   ( 4 Ĺ Ĺ Ĺ 0 4   4#x8H D  4 ! 4  "    !    p   Ĺ     Ĺ Ĺ   ! ЃH H ("               H #| 4 4 | 4 4  4 R! 4 !   ( 4 ( 4 ( 4 ( 4 0 4   #(:H D  ( H H P#          	        H $| 4 4 | 4 4 Ў 4  4 b 4    ( 4 ( 4 ( 4 Ĺ и 0 4   $x8H  4      @H  4  4      AH  ( H H  $       )         H     ( H H %             %| 4 4  4 R! 4 !   ( 4  4  4  4 0 4   %x8 4      @ ( H 0%            &| 4 4  4 b 4    ( 4  4  4 и и 0 4   &x8 4  4      A 4      @ ( H %       )             ( H &    q      l   p`'p 4 o D  4 B 4      P~p ( pH  '        q      l   pp(p 4  D  4 B 4      P~p ( pH p'        !   (<'$set_consulting_dir              '(i            )       ) ) )    '                                   H               x   p    0 4       ށp 4 B (P~p 4  (pH (       i      `   (     4 4      (X 4 4      p(( (H  )            +Ў 4  4 o|  4 | 0 4       ށ$ +d*x + 4 z 4    Ĺ Ĺ  4 0 4  +x8 4      @ ( d l*(  4  4 4       4 z 4    Ĺ Ĺ ( 4 0 4  +P9 ( H h)                      )             ( H 0+               octet       1     ,   +ܑ J+   ( H p+           ascii       1     ,   +ܑ +&   ( H +           iso_latin_1 1     ,   8,ܑ +   ( H  ,           utf8        1     ,   ,ܑ ",   ( H H,           unicode_be  1     ,   ,ܑ j,  ( H ,           unicode_le  1     ,   -ܑ ,  ( H ,           text        1     ,       ܑ ,F   ( H  -         譄(.| 4 4 P 4   4             譄 4             譄 4     &        譄 4      譄( 譄H P-             譄    | 4 4  4  4 4      譄X 4 4  4 "  .X 4 4      譄( 譄X 4 4  4 4 ( 譄H 8.    !   */$set_encoding                    . /i           ,/      // 1    /                                   (        i      d    //| 4 4 , 4   4 2 4 p   ( 4   /H /          /00 4 D 0 /D  4 4  4 *n     0 / 4       / (  /H  0            x    /1| 4 4  4   4 @    "( 4  4 p   ( 4   /H 0    q      h    /    | 4 4  4 p    : 4  4 p   ( 4   /H  1    !       (6absolute_file_name               11i           1       02024    1                                    /              x   12| 4 4 | 4 4 , 4   4 2 4 1   ( 4 ( 4  1H 02    9      0   14ܑ oo ( 1H 2    !   3$absolute_file_name        h3access             3file_type              txt        3file_errors        3solutions                2                 3                 83                 P3                 23i           $      $h7h9    3                                   1        y              [4a4k4h3dq4{43*3443z4" 3            	   
   
              H4\   1    a    @ \   1    | 4 4  4 [4 4 1   ( 4 ( 4  31H 4y              K5Q5[5h3"a5k53bq5{53z5" 3            	   
   
              85\   Ȅ4    a    @ \   Ȅ    | 4 4 | 4 4  4 K5| 4 4 4 4  3ȄH 5   1      1@6i           L6       667    (6                                   3        a      X   @67| 4 4 | 4 4 , 4  X 4 4  @6@6H 6    Q      L   @6     4 (6   ( 4 ( 4 ( 4  3@6H 7Q      L   3X9| 4 4 , 4   4 2 3H h7!   8$process_fn_opts           (8a          @8opts        !       p8existence_error               
   78             7                 7       @Ȅ      Ǆ8             7    i           |   
   |<?    8                                   @6        i                 T ]    X8                                   8        Q     H  3    Ў 4 | 4 4 Ў 4 Ў 4 0 4 0 4 0 4 0 4 0 4 0 4 0 4 0 4 0 4   5 D X<830 4 H 4 (8   <  8  
$ `<;3x < 4  4 @8   Ĺ Ĺ Ĺ Ĺ Ĺ Ĺ Ĺ  4  4 ` d<83l $ l<h;3x < 4 p 4  ` p<3 <D l d p;( 3 4     4  4 ҈ x<3 ( 3( 3 4  4 p 4 " 4 ̕ 4  4 ` |<3 < 4 p8    Ĺ  4  3H h9?  ?  ?  ?  ?  ?  ?  ?  ?  ?                                    Q      L   8<| 4  5 , 4   4 2 8H <      x   8>ܑ " " p 4 bp 4 "p 4 "p 4 p 4 
p 4 
 ( 8H =    !   謉=$process_fn_opt                  x==i                 ?J
    =                                   8        a     X  8?P 4 d , 4 , T Ў  5  D 0  5 0 5 0 5 0 5 0 5 0 5 0 5 0 5   5 ` l?=8 4  4  4  4  4  4  4  4  4   5  88H (>                   list        Y      T   8    | 4  5   4 p    z? 4  8H ?         =pA 4  5  4 5  4 5  4 5  4 5  4 5  4 5  4 5 | 4  5 , 4   4 2 =H ?       @extensions  )    c@$check_fn_extensions                     @                 @Ai           A      KKL    @                                   =                 =BH 4 @    X $5  $5 4  4 5  4 5  4 5  4 5  4 5  4 5  4 5 | 4  5   4 4  A=H A       `Brelative_to    xB$check_atom              0B                 HBBi                 MM    xB                                   A                 =CH 4 `B    X 4  4 4  4  5  4 5  4 5  4 5  4 5  4 5  4 5 | 4  5   B=H C             =EH 4 h3    X 4  4 4  4  5  4 5  4 5  4 5  4 5  4 5  4 5 | 4  5   B=H C    !   OD$check_fn_type                   hDDi                 MP	    D                                   B                 =`FH 4 3    X 4  4 4  4  5  4 5  4 5  4 5  4 5  4 5  4 5 | 4  5   D=H E    !   E$check_fn_errors                 EEi           4      4`PQ    E                                   D                 =GH 4 3    X 4  4 4  4  5  4 5  4 5  4 5  4 5  4 5  4 5 | 4  5   E=H pF    !   ػ8G$check_fn_solutions              GPGi           ܌      ܌QR    8G                                   E                 =IH 4 3    X 4  4 4  4  5  4 5  4 5  4 5  4 5  4 5  4 5 | 4  5   PG=H G    !   xH$check_true_false                pHHi           H      PSPST    H                                   PG                 = JH 4     X 4  4 4  4  5  4 5  4 5  4 5  4 5  4 5  4 5 | 4  5   H                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    