Ë
    g^(h?  ã                   óD   — d dl Z d dlmZ  G d„ de«      Z G d„ de«      Zy)é    N)ÚActionc                   ó.   ‡ — e Zd ZdZddˆ fd„Zdd„Zˆ xZS )Úenva   
    Get argument values from ``PET_{dest}`` before defaulting to the given ``default`` value.

    For flags (e.g. ``--standalone``)
    use ``check_env`` instead.

    .. note:: when multiple option strings are specified, ``dest`` is
              the longest option string (e.g. for ``"-f", "--foo"``
              the env var to set is ``PET_FOO`` not ``PET_F``)

    Example:
    ::

     parser.add_argument("-f", "--foo", action=env, default="bar")

     ./program                                      -> args.foo="bar"
     ./program -f baz                               -> args.foo="baz"
     ./program --foo baz                            -> args.foo="baz"
     PET_FOO="env_bar" ./program -f baz    -> args.foo="baz"
     PET_FOO="env_bar" ./program --foo baz -> args.foo="baz"
     PET_FOO="env_bar" ./program           -> args.foo="env_bar"

     parser.add_argument("-f", "--foo", action=env, required=True)

     ./program                                      -> fails
     ./program -f baz                               -> args.foo="baz"
     PET_FOO="env_bar" ./program           -> args.foo="env_bar"
     PET_FOO="env_bar" ./program -f baz    -> args.foo="baz"
    c                 óš   •— d|j                  «       › �}t        j                  j                  ||«      }|rd}t	        ‰| �  d|||dœ|¤Ž y )NÚPET_F)ÚdestÚdefaultÚrequired© )ÚupperÚosÚenvironÚgetÚsuperÚ__init__)Úselfr   r	   r
   ÚkwargsÚenv_nameÚ	__class__s         €ú]/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/torch/distributed/argparse_util.pyr   zenv.__init__,   sL   ø€ Ø˜$Ÿ*™*›,˜Ð(ˆÜ—*‘*—.‘. ¨7Ó3ˆñ ØˆHä‰ÑÐQ˜d¨G¸hÑQÈ&ÓQó    c                 ó2   — t        || j                  |«       y ©N)Úsetattrr   ©r   ÚparserÚ	namespaceÚvaluesÚoption_strings        r   Ú__call__zenv.__call__9   s   € Ü�	˜4Ÿ9™9 fÕ-r   )NF©ÚreturnNr   ©Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r    Ú__classcell__©r   s   @r   r   r      s   ø„ ñö<R÷.r   r   c                   ó.   ‡ — e Zd ZdZddˆ fd„Zdd„Zˆ xZS )Ú	check_envaè  
    Check whether the env var ``PET_{dest}`` exists before defaulting to the given ``default`` value.

    Equivalent to
    ``store_true`` argparse built-in action except that the argument can
    be omitted from the commandline if the env var is present and has a
    non-zero value.

    .. note:: it is redundant to pass ``default=True`` for arguments
              that use this action because a flag should be ``True``
              when present and ``False`` otherwise.

    Example:
    ::

     parser.add_argument("--verbose", action=check_env)

     ./program                                  -> args.verbose=False
     ./program --verbose                        -> args.verbose=True
     PET_VERBOSE=1 ./program           -> args.verbose=True
     PET_VERBOSE=0 ./program           -> args.verbose=False
     PET_VERBOSE=0 ./program --verbose -> args.verbose=True

    Anti-pattern (don't do this):

    ::

     parser.add_argument("--verbose", action=check_env, default=True)

     ./program                                  -> args.verbose=True
     ./program --verbose                        -> args.verbose=True
     PET_VERBOSE=1 ./program           -> args.verbose=True
     PET_VERBOSE=0 ./program           -> args.verbose=False

    c                 óÀ   •— d|j                  «       › �}t        t        t        j                  j                  ||rdnd«      «      «      }t        ‰| �  d|d|ddœ|¤Ž y )Nr   Ú1Ú0Tr   )r   Úconstr	   Únargsr   )r   ÚboolÚintr   r   r   r   r   )r   r   r	   r   r   r   s        €r   r   zcheck_env.__init__b   sR   ø€ Ø˜$Ÿ*™*›,˜Ð(ˆÜ”sœ2Ÿ:™:Ÿ>™>¨(¹7±CÈÓLÓMÓNˆÜ‰ÑÐS˜d¨$¸ÀqÑSÈFÓSr   c                 óF   — t        || j                  | j                  «       y r   )r   r   r/   r   s        r   r    zcheck_env.__call__g   s   € Ü�	˜4Ÿ9™9 d§j¡jÕ1r   )Fr!   r   r#   r)   s   @r   r+   r+   =   s   ø„ ñ"öHT÷
2r   r+   )r   Úargparser   r   r+   r   r   r   ú<module>r5      s&   ðó 
Ý ô-.ˆ&ô -.ô`+2�õ +2r   