+
    Z4iW  ã            
       ó¾   € R t . ROt^ RIHt ^ RIt^ RIHt RtRtRt	Rt
RtR	tR
tRtRtRtRtRtRtRt]! ]]]]	]]
]R7      t]! ]]]]]]]R7      tR tR tR tR tR# )z¡Launchpad-specific URIs and convenience lookup functions.

The code in this module lets users say "staging" when they mean
"https://api.staging.launchpad.net/".
)ÚurlparseN)ÚURIzhttps://api.launchpad.net/z$https://api.qastaging.launchpad.net/z"https://api.staging.launchpad.net/zhttps://api.launchpad.test/zhttps://api.dogfood.paddev.net/zhttp://api.launchpad.test:8085/zhttps://launchpad.net/z https://qastaging.launchpad.net/zhttps://staging.launchpad.net/zhttps://launchpad.test/zhttps://dogfood.paddev.net/zhttp://launchpad.test:8085/zhttps://api.edge.launchpad.net/zhttps://edge.launchpad.net/)Ú
productionÚedgeÚ	qastagingÚstagingÚdogfoodÚdevÚtest_devc                óÄ   € V R8X  d   \         P                  ! R\        4       W9   d	   W,          # \        V 4      w  r#rErgVR8w  d
   VR8w  d   V # \	        RV ,          4      h)z3Dereference what might a URL or an alias for a URL.r   zCLaunchpad edge server no longer exists. Using 'production' instead.Ú z:%s is not a valid URL or an alias for any Launchpad server)ÚwarningsÚwarnÚDeprecationWarningr   Ú
ValueError)ÚrootÚaliasesÚschemeÚnetlocÚpathÚ
parametersÚqueryÚfragments   &&      Ú3/usr/lib/python3/dist-packages/launchpadlib/uris.pyÚ_dereference_aliasr   L   sj   € àˆv„~Ü�Šð.ô ô	
ð „Ø�}Ðô ;CÀ4».Ñ7€V�T uØ�„|˜ "œØˆô ØGÈ$ÕNóð ó    c                ó<   € V \         8X  d   Rp \        V \        4      # )z¼Dereference an alias to a service root.

A recognized server alias such as "staging" gets turned into the
appropriate URI. A URI gets returned as is. Any other string raises a
ValueError.
r   )ÚEDGE_SERVICE_ROOTr   Úservice_roots)Úservice_roots   &r   Úlookup_service_rootr    d   s   € ð Ô(Ô(àˆÜ˜l¬MÓ:Ð:r   c                ó<   € V \         8X  d   Rp \        V \        4      # )z¼Dereference an alias to a website root.

A recognized server alias such as "staging" gets turned into the
appropriate URI. A URI gets returned as is. Any other string raises a
ValueError.
r   )ÚEDGE_WEB_ROOTr   Ú	web_roots)Úweb_roots   &r   Úlookup_web_rootr%   q   s   € ð ”=Ô àˆÜ˜h¬	Ó2Ð2r   c                ó¶   € \        V 4      p \        V 4      pRVn        VP                  P	                  RR^4      Vn        \        VP                  4       4      pV# )z]Turn a service root URL into a web root URL.

This is done heuristically, not with a lookup.
r   zapi.)r    r   r   ÚhostÚreplaceÚstrÚensureSlash)r   Úweb_root_urir$   s   &  r   Úweb_root_for_service_rootr,   ~   sU   € ô
 ' |Ó4€LÜ�|Ó$€LØ€LÔØ$×)Ñ)×1Ñ1°&¸"¸aÓ@€LÔÜ�<×+Ñ+Ó-Ó.€HØ€Or   )r    r%   r,   )Ú__doc__Ú__all__Úurllib.parser   r   Úlazr.urir   ÚLPNET_SERVICE_ROOTÚQASTAGING_SERVICE_ROOTÚSTAGING_SERVICE_ROOTÚDEV_SERVICE_ROOTÚDOGFOOD_SERVICE_ROOTÚTEST_DEV_SERVICE_ROOTÚLPNET_WEB_ROOTÚQASTAGING_WEB_ROOTÚSTAGING_WEB_ROOTÚDEV_WEB_ROOTÚDOGFOOD_WEB_ROOTÚTEST_DEV_WEB_ROOTr   r"   Údictr   r#   r   r    r%   r,   © r   r   Ú<module>r?      sÃ   ðñ"ò€õ "Û å à1Ð Ø?Ð Ø;Ð Ø0Ð Ø8Ð Ø9Ð à)€Ø7Ð Ø3Ð Ø(€Ø0Ð Ø1Ð ð
 6Ð Ø-€áØ!Ø	Ø$Ø Ø ØØ"ô€ñ ØØ	Ø ØØØØô€	òò0
;ò
3ô
r   