�
�Udac @ sf y d d l Z e Z Wn e k
r/ e Z n XyB d d l Z d d l Z d d l m Z d d l
m Z e Z Wn e k
r� e Z n Xd d l
m Z m Z d d l m Z d d l m Z m Z d d l Z d d l Z d d l Z d d � Z d e f d � � YZ d
� Z d � Z d e f d
� � YZ d e f d � � YZ d e f d � � YZ! d S( i����N( t service_account( t AuthorizedSession( t
AnsibleModulet env_fallback( t string_types( t to_textt to_nativec C sV | s
d S| d } | d } | | k r. | S| | } | rN t | | | � S| Sd S( Ni i ( t Nonet
navigate_hash( t sourcet patht defaultt keyt result( ( sB /usr/lib/python2.7/site-packages/ansible/module_utils/gcp_utils.pyR s
t GcpRequestExceptionc B s e Z RS( ( t __name__t
__module__( ( ( sB /usr/lib/python2.7/site-packages/ansible/module_utils/gcp_utils.pyR * s c C s` i } xI | D]A } | | } | d k r
| i k r
| g k r
| | | <q
q
W| s\ d S| S( N( R ( t objt new_objR t value( ( sB /usr/lib/python2.7/site-packages/ansible/module_utils/gcp_utils.pyt remove_nones_from_dict. s
$c C s[ t | t � r@ g } x$ | D] } | j t | | � � q W| S| sJ | S| j | � Sd S( N( t
isinstancet listt appendt replace_resource_dictt get( t itemR t itemst i( ( sB /usr/lib/python2.7/site-packages/ansible/module_utils/gcp_utils.pyR <