ÿØÿàJFIFÿþ ÿÛC       ÿÛC ÿÀÿÄÿÄ"#QrÿÄÿÄ&1!A"2qQaáÿÚ ?Øy,æ/3JæÝ¹È߲؋5êXw²±ÉyˆR”¾I0ó2—PI¾IÌÚiMö¯–þrìN&"KgX:Šíµ•nTJnLK„…@!‰-ý ùúmë;ºgµŒ&ó±hw’¯Õ@”Ü— 9ñ-ë.²1<yà‚¹ïQÐU„ہ?.’¦èûbß±©Ö«Âw*VŒ) `$‰bØÔŸ’ëXÖ-ËTÜíGÚ3ð«g Ÿ§¯—Jx„–’U/ÂÅv_s(Hÿ@TñJÑãõçn­‚!ÈgfbÓc­:él[ðQe 9ÀPLbÃãCµm[5¿ç'ªjglå‡Ûí_§Úõl-;"PkÞÞÁQâ¼_Ñ^¢SŸx?"¸¦ùY騐ÒOÈ q’`~~ÚtËU¹CڒêV  I1Áß_ÿÙ 4]c@swdZddlZddlZddlmZddlmZddlmZdZ d efd YZ e Z dS( sv .. dialect:: mysql+gaerdbms :name: Google Cloud SQL :dbapi: rdbms :connectstring: mysql+gaerdbms:///?instance= :url: https://developers.google.com/appengine/docs/python/cloud-sql/developers-guide This dialect is based primarily on the :mod:`.mysql.mysqldb` dialect with minimal changes. .. deprecated:: 1.0 This dialect is **no longer necessary** for Google Cloud SQL; the MySQLdb dialect can be used directly. Cloud SQL now recommends creating connections via the mysql dialect using the URL format ``mysql+mysqldb://root@/?unix_socket=/cloudsql/:`` Pooling ------- Google App Engine connections appear to be randomly recycled, so the dialect does not pool connections. The :class:`.NullPool` implementation is installed within the :class:`.Engine` by default. iN(twarn_deprecatedi(tMySQLDialect_mysqldbi(tNullPoolcCstjjddjdS(NtSERVER_SOFTWAREts Development/(tostenvirontgett startswith(((sU/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/dialects/mysql/gaerdbms.pyt_is_dev_environment+stMySQLDialect_gaerdbmscBs8eZedZedZdZdZRS(cCsutdddlm}tr7ddlm}|S|jjdr]ddlm}|Sddlm }|SdS(NsGoogle Cloud SQL now recommends creating connections via the MySQLdb dialect directly, using the URL format mysql+mysqldb://root@/?unix_socket=/cloudsql/:i(tapiproxy_stub_map(t rdbms_mysqldbtrdbms(trdbms_apiproxy(trdbms_googleapi( Rtgoogle.appengine.apiR R R tapiproxytGetStubt!google.storage.speckle.python.apiRR(tclsR R RR((sU/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/dialects/mysql/gaerdbms.pytdbapi0s  cCstS(N(R(Rturl((sU/opt/alt/python27/lib64/python2.7/site-packages/sqlalchemy/dialects/mysql/gaerdbms.pytget_pool_classOscCs=|j}ts3d|d<|jd|d!s   7