€cdocutils.nodes document q)q}q(U nametypesq}q(Xdescribing severity levelsqNXdescribing existing casesqNXcreating a connectionqNXresolving a caseq NXdescribing service codesq NXcreating a caseq NXadding to a caseq NX&fetching all communications for a caseq NX support_tutqˆX+an introduction to boto's support interfaceqNuUsubstitution_defsq}qUparse_messagesq]qUcurrent_sourceqNU decorationqNUautofootnote_startqKUnameidsq}q(hUdescribing-severity-levelsqhUdescribing-existing-casesqhUcreating-a-connectionqh Uresolving-a-caseqh Udescribing-service-codesqh Ucreating-a-caseqh Uadding-to-a-caseqh U&fetching-all-communications-for-a-caseq hU support-tutq!hU+an-introduction-to-boto-s-support-interfaceq"uUchildrenq#]q$(cdocutils.nodes target q%)q&}q'(U rawsourceq(X.. _support_tut:Uparentq)hUsourceq*XA/Users/kyleknap/Documents/GitHub/boto/docs/source/support_tut.rstq+Utagnameq,Utargetq-U attributesq.}q/(Uidsq0]Ubackrefsq1]Udupnamesq2]Uclassesq3]Unamesq4]Urefidq5h!uUlineq6KUdocumentq7hh#]ubcdocutils.nodes section q8)q9}q:(h(Uh)hh*h+Uexpect_referenced_by_nameq;}q(h2]h3]h1]h0]q?(h"h!eh4]q@(hheuh6Kh7hUexpect_referenced_by_idqA}qBh!h&sh#]qC(cdocutils.nodes title qD)qE}qF(h(X+An Introduction to boto's Support interfaceqGh)h9h*h+h,UtitleqHh.}qI(h2]h3]h1]h0]h4]uh6Kh7hh#]qJcdocutils.nodes Text qKX+An Introduction to boto's Support interfaceqL…qM}qN(h(hGh)hEubaubcdocutils.nodes paragraph qO)qP}qQ(h(XåThis tutorial focuses on the boto interface to Amazon Web Services Support, allowing you to programmatically interact with cases created with Support. This tutorial assumes that you have already downloaded and installed ``boto``.h)h9h*h+h,U paragraphqRh.}qS(h2]h3]h1]h0]h4]uh6Kh7hh#]qT(hKXÜThis tutorial focuses on the boto interface to Amazon Web Services Support, allowing you to programmatically interact with cases created with Support. This tutorial assumes that you have already downloaded and installed qU…qV}qW(h(XÜThis tutorial focuses on the boto interface to Amazon Web Services Support, allowing you to programmatically interact with cases created with Support. This tutorial assumes that you have already downloaded and installed h)hPubcdocutils.nodes literal qX)qY}qZ(h(X``boto``h.}q[(h2]h3]h1]h0]h4]uh)hPh#]q\hKXbotoq]…q^}q_(h(Uh)hYubah,Uliteralq`ubhKX.…qa}qb(h(X.h)hPubeubh8)qc}qd(h(Uh)h9h*h+h,h=h.}qe(h2]h3]h1]h0]qfhah4]qghauh6K h7hh#]qh(hD)qi}qj(h(XCreating a Connectionqkh)hch*h+h,hHh.}ql(h2]h3]h1]h0]h4]uh6K h7hh#]qmhKXCreating a Connectionqn…qo}qp(h(hkh)hiubaubhO)qq}qr(h(X„The first step in accessing Support is to create a connection to the service. There are two ways to do this in boto. The first is:qsh)hch*h+h,hRh.}qt(h2]h3]h1]h0]h4]uh6Kh7hh#]quhKX„The first step in accessing Support is to create a connection to the service. There are two ways to do this in boto. The first is:qv…qw}qx(h(hsh)hqubaubcdocutils.nodes doctest_block qy)qz}q{(h(X~>>> from boto.support.connection import SupportConnection >>> conn = SupportConnection('', '')h)hch*h+h,U doctest_blockq|h.}q}(U xml:spaceq~Upreserveqh0]h1]h2]h3]h4]uh6Kh7hh#]q€hKX~>>> from boto.support.connection import SupportConnection >>> conn = SupportConnection('', '')q…q‚}qƒ(h(Uh)hzubaubhO)q„}q…(h(XæAt this point the variable ``conn`` will point to a ``SupportConnection`` object. In this example, the AWS access key and AWS secret key are passed in to the method explicitly. Alternatively, you can set the environment variables:h)hch*h+h,hRh.}q†(h2]h3]h1]h0]h4]uh6Kh7hh#]q‡(hKXAt this point the variable qˆ…q‰}qŠ(h(XAt this point the variable h)h„ubhX)q‹}qŒ(h(X``conn``h.}q(h2]h3]h1]h0]h4]uh)h„h#]qŽhKXconnq…q}q‘(h(Uh)h‹ubah,h`ubhKX will point to a q’…q“}q”(h(X will point to a h)h„ubhX)q•}q–(h(X``SupportConnection``h.}q—(h2]h3]h1]h0]h4]uh)h„h#]q˜hKXSupportConnectionq™…qš}q›(h(Uh)h•ubah,h`ubhKX object. In this example, the AWS access key and AWS secret key are passed in to the method explicitly. Alternatively, you can set the environment variables:qœ…q}qž(h(X object. In this example, the AWS access key and AWS secret key are passed in to the method explicitly. Alternatively, you can set the environment variables:h)h„ubeubcdocutils.nodes definition_list qŸ)q }q¡(h(Uh)hch*h+h,Udefinition_listq¢h.}q£(h2]h3]h1]h0]h4]uh6Nh7hh#]q¤(cdocutils.nodes definition_list_item q¥)q¦}q§(h(X-**AWS_ACCESS_KEY_ID** Your AWS Access Key ID h)h h*h+h,Udefinition_list_itemq¨h.}q©(h2]h3]h1]h0]h4]uh6Kh#]qª(cdocutils.nodes term q«)q¬}q­(h(X**AWS_ACCESS_KEY_ID**q®h)h¦h*h+h,Utermq¯h.}q°(h2]h3]h1]h0]h4]uh6Kh#]q±cdocutils.nodes strong q²)q³}q´(h(h®h.}qµ(h2]h3]h1]h0]h4]uh)h¬h#]q¶hKXAWS_ACCESS_KEY_IDq·…q¸}q¹(h(Uh)h³ubah,Ustrongqºubaubcdocutils.nodes definition q»)q¼}q½(h(Uh.}q¾(h2]h3]h1]h0]h4]uh)h¦h#]q¿hO)qÀ}qÁ(h(XYour AWS Access Key IDqÂh)h¼h*h+h,hRh.}qÃ(h2]h3]h1]h0]h4]uh6Kh#]qÄhKXYour AWS Access Key IDqÅ…qÆ}qÇ(h(hÂh)hÀubaubah,U definitionqÈubeubh¥)qÉ}qÊ(h(X5**AWS_SECRET_ACCESS_KEY** Your AWS Secret Access Key h)h h*h+h,h¨h.}qË(h2]h3]h1]h0]h4]uh6Kh7hh#]qÌ(h«)qÍ}qÎ(h(X**AWS_SECRET_ACCESS_KEY**qÏh)hÉh*h+h,h¯h.}qÐ(h2]h3]h1]h0]h4]uh6Kh#]qÑh²)qÒ}qÓ(h(hÏh.}qÔ(h2]h3]h1]h0]h4]uh)hÍh#]qÕhKXAWS_SECRET_ACCESS_KEYqÖ…q×}qØ(h(Uh)hÒubah,hºubaubh»)qÙ}qÚ(h(Uh.}qÛ(h2]h3]h1]h0]h4]uh)hÉh#]qÜhO)qÝ}qÞ(h(XYour AWS Secret Access Keyqßh)hÙh*h+h,hRh.}qà(h2]h3]h1]h0]h4]uh6Kh#]qáhKXYour AWS Secret Access Keyqâ…qã}qä(h(hßh)hÝubaubah,hÈubeubeubhO)qå}qæ(h(X?and then call the constructor without any arguments, like this:qçh)hch*h+h,hRh.}qè(h2]h3]h1]h0]h4]uh6Kh7hh#]qéhKX?and then call the constructor without any arguments, like this:qê…që}qì(h(hçh)håubaubhy)qí}qî(h(X>>> conn = SupportConnection()qïh)hch*h+h,h|h.}qð(h~hh0]h1]h2]h3]h4]uh6K h7hh#]qñhKX>>> conn = SupportConnection()qò…qó}qô(h(Uh)híubaubhO)qõ}qö(h(X[There is also a shortcut function in boto that makes it easy to create Support connections:q÷h)hch*h+h,hRh.}qø(h2]h3]h1]h0]h4]uh6K"h7hh#]qùhKX[There is also a shortcut function in boto that makes it easy to create Support connections:qú…qû}qü(h(h÷h)hõubaubhy)qý}qþ(h(XN>>> import boto.support >>> conn = boto.support.connect_to_region('us-west-2')h)hch*h+h,h|h.}qÿ(h~hh0]h1]h2]h3]h4]uh6K&h7hh#]rhKXN>>> import boto.support >>> conn = boto.support.connect_to_region('us-west-2')r…r}r(h(Uh)hýubaubhO)r}r(h(X~In either case, ``conn`` points to a ``SupportConnection`` object which we will use throughout the remainder of this tutorial.h)hch*h+h,hRh.}r(h2]h3]h1]h0]h4]uh6K(h7hh#]r(hKXIn either case, r…r }r (h(XIn either case, h)jubhX)r }r (h(X``conn``h.}r (h2]h3]h1]h0]h4]uh)jh#]rhKXconnr…r}r(h(Uh)j ubah,h`ubhKX points to a r…r}r(h(X points to a h)jubhX)r}r(h(X``SupportConnection``h.}r(h2]h3]h1]h0]h4]uh)jh#]rhKXSupportConnectionr…r}r(h(Uh)jubah,h`ubhKXD object which we will use throughout the remainder of this tutorial.r…r}r(h(XD object which we will use throughout the remainder of this tutorial.h)jubeubeubh8)r}r (h(Uh)h9h*h+h,h=h.}r!(h2]h3]h1]h0]r"hah4]r#hauh6K-h7hh#]r$(hD)r%}r&(h(XDescribing Existing Casesr'h)jh*h+h,hHh.}r((h2]h3]h1]h0]h4]uh6K-h7hh#]r)hKXDescribing Existing Casesr*…r+}r,(h(j'h)j%ubaubhO)r-}r.(h(XŠIf you have existing cases or want to fetch cases in the future, you'll use the ``SupportConnection.describe_cases`` method. For example::h)jh*h+h,hRh.}r/(h2]h3]h1]h0]h4]uh6K/h7hh#]r0(hKXPIf you have existing cases or want to fetch cases in the future, you'll use the r1…r2}r3(h(XPIf you have existing cases or want to fetch cases in the future, you'll use the h)j-ubhX)r4}r5(h(X$``SupportConnection.describe_cases``h.}r6(h2]h3]h1]h0]h4]uh)j-h#]r7hKX SupportConnection.describe_casesr8…r9}r:(h(Uh)j4ubah,h`ubhKX method. For example:r;…r<}r=(h(X method. For example:h)j-ubeubcdocutils.nodes literal_block r>)r?}r@(h(X”>>> cases = conn.describe_cases() >>> len(cases['cases']) 1 >>> cases['cases'][0]['title'] 'A test case.' >>> cases['cases'][0]['caseId'] 'case-...'h)jh*h+h,U literal_blockrAh.}rB(h~hh0]h1]h2]h3]h4]uh6K2h7hh#]rChKX”>>> cases = conn.describe_cases() >>> len(cases['cases']) 1 >>> cases['cases'][0]['title'] 'A test case.' >>> cases['cases'][0]['caseId'] 'case-...'rD…rE}rF(h(Uh)j?ubaubhO)rG}rH(h(X^You can also fetch a set of cases (or single case) by providing a ``case_id_list`` parameter::h)jh*h+h,hRh.}rI(h2]h3]h1]h0]h4]uh6K:h7hh#]rJ(hKXBYou can also fetch a set of cases (or single case) by providing a rK…rL}rM(h(XBYou can also fetch a set of cases (or single case) by providing a h)jGubhX)rN}rO(h(X``case_id_list``h.}rP(h2]h3]h1]h0]h4]uh)jGh#]rQhKX case_id_listrR…rS}rT(h(Uh)jNubah,h`ubhKX parameter:rU…rV}rW(h(X parameter:h)jGubeubj>)rX}rY(h(X«>>> cases = conn.describe_cases(case_id_list=['case-1']) >>> len(cases['cases']) 1 >>> cases['cases'][0]['title'] 'A test case.' >>> cases['cases'][0]['caseId'] 'case-...'h)jh*h+h,jAh.}rZ(h~hh0]h1]h2]h3]h4]uh6K=h7hh#]r[hKX«>>> cases = conn.describe_cases(case_id_list=['case-1']) >>> len(cases['cases']) 1 >>> cases['cases'][0]['title'] 'A test case.' >>> cases['cases'][0]['caseId'] 'case-...'r\…r]}r^(h(Uh)jXubaubeubh8)r_}r`(h(Uh)h9h*h+h,h=h.}ra(h2]h3]h1]h0]rbhah4]rch auh6KGh7hh#]rd(hD)re}rf(h(XDescribing Service Codesrgh)j_h*h+h,hHh.}rh(h2]h3]h1]h0]h4]uh6KGh7hh#]rihKXDescribing Service Codesrj…rk}rl(h(jgh)jeubaubhO)rm}rn(h(XˆIn order to create a new case, you'll need to fetch the service (& category) codes available to you. Fetching them is a simple call to::h)j_h*h+h,hRh.}ro(h2]h3]h1]h0]h4]uh6KIh7hh#]rphKX‡In order to create a new case, you'll need to fetch the service (& category) codes available to you. Fetching them is a simple call to:rq…rr}rs(h(X‡In order to create a new case, you'll need to fetch the service (& category) codes available to you. Fetching them is a simple call to:h)jmubaubj>)rt}ru(h(X`>>> services = conn.describe_services() >>> services['services'][0]['code'] 'amazon-cloudsearch'h)j_h*h+h,jAh.}rv(h~hh0]h1]h2]h3]h4]uh6KLh7hh#]rwhKX`>>> services = conn.describe_services() >>> services['services'][0]['code'] 'amazon-cloudsearch'rx…ry}rz(h(Uh)jtubaubhO)r{}r|(h(XOIf you only care about certain services, you can pass a list of service codes::r}h)j_h*h+h,hRh.}r~(h2]h3]h1]h0]h4]uh6KPh7hh#]rhKXNIf you only care about certain services, you can pass a list of service codes:r€…r}r‚(h(XNIf you only care about certain services, you can pass a list of service codes:h)j{ubaubj>)rƒ}r„(h(X€>>> service_details = conn.describe_services(service_code_list=[ ... 'amazon-cloudsearch', ... 'amazon-dynamodb', ... ])h)j_h*h+h,jAh.}r…(h~hh0]h1]h2]h3]h4]uh6KRh7hh#]r†hKX€>>> service_details = conn.describe_services(service_code_list=[ ... 'amazon-cloudsearch', ... 'amazon-dynamodb', ... ])r‡…rˆ}r‰(h(Uh)jƒubaubeubh8)rŠ}r‹(h(Uh)h9h*h+h,h=h.}rŒ(h2]h3]h1]h0]rhah4]rŽhauh6KYh7hh#]r(hD)r}r‘(h(XDescribing Severity Levelsr’h)jŠh*h+h,hHh.}r“(h2]h3]h1]h0]h4]uh6KYh7hh#]r”hKXDescribing Severity Levelsr•…r–}r—(h(j’h)jubaubhO)r˜}r™(h(XyIn order to create a new case, you'll also need to fetch the severity levels available to you. Fetching them looks like::h)jŠh*h+h,hRh.}rš(h2]h3]h1]h0]h4]uh6K[h7hh#]r›hKXxIn order to create a new case, you'll also need to fetch the severity levels available to you. Fetching them looks like:rœ…r}rž(h(XxIn order to create a new case, you'll also need to fetch the severity levels available to you. Fetching them looks like:h)j˜ubaubj>)rŸ}r (h(Xb>>> severities = conn.describe_severity_levels() >>> severities['severityLevels'][0]['code'] 'low'h)jŠh*h+h,jAh.}r¡(h~hh0]h1]h2]h3]h4]uh6K^h7hh#]r¢hKXb>>> severities = conn.describe_severity_levels() >>> severities['severityLevels'][0]['code'] 'low'r£…r¤}r¥(h(Uh)jŸubaubeubh8)r¦}r§(h(Uh)h9h*h+h,h=h.}r¨(h2]h3]h1]h0]r©hah4]rªh auh6Kdh7hh#]r«(hD)r¬}r­(h(XCreating a Caser®h)j¦h*h+h,hHh.}r¯(h2]h3]h1]h0]h4]uh6Kdh7hh#]r°hKXCreating a Caser±…r²}r³(h(j®h)j¬ubaubhO)r´}rµ(h(XUpon creating a connection to Support, you can now work with existing Support cases, create new cases or resolve them. We'll start with creating a new case::h)j¦h*h+h,hRh.}r¶(h2]h3]h1]h0]h4]uh6Kfh7hh#]r·hKXœUpon creating a connection to Support, you can now work with existing Support cases, create new cases or resolve them. We'll start with creating a new case:r¸…r¹}rº(h(XœUpon creating a connection to Support, you can now work with existing Support cases, create new cases or resolve them. We'll start with creating a new case:h)j´ubaubj>)r»}r¼(h(XÞ>>> new_case = conn.create_case( ... subject='This is a test case.', ... service_code='', ... category_code='', ... communication_body="", ... severity_code='low' ... ) >>> new_case['caseId'] 'case-...'h)j¦h*h+h,jAh.}r½(h~hh0]h1]h2]h3]h4]uh6Kih7hh#]r¾hKXÞ>>> new_case = conn.create_case( ... subject='This is a test case.', ... service_code='', ... category_code='', ... communication_body="", ... severity_code='low' ... ) >>> new_case['caseId'] 'case-...'r¿…rÀ}rÁ(h(Uh)j»ubaubhO)rÂ}rÃ(h(XâFor the ``service_code/category_code`` parameters, you'll need to do a ``SupportConnection.describe_services`` call, then select the appropriate service code (& appropriate category code within that service) from the response.h)j¦h*h+h,hRh.}rÄ(h2]h3]h1]h0]h4]uh6Ksh7hh#]rÅ(hKXFor the rÆ…rÇ}rÈ(h(XFor the h)jÂubhX)rÉ}rÊ(h(X``service_code/category_code``h.}rË(h2]h3]h1]h0]h4]uh)jÂh#]rÌhKXservice_code/category_coderÍ…rÎ}rÏ(h(Uh)jÉubah,h`ubhKX! parameters, you'll need to do a rÐ…rÑ}rÒ(h(X! parameters, you'll need to do a h)jÂubhX)rÓ}rÔ(h(X'``SupportConnection.describe_services``h.}rÕ(h2]h3]h1]h0]h4]uh)jÂh#]rÖhKX#SupportConnection.describe_servicesr×…rØ}rÙ(h(Uh)jÓubah,h`ubhKXt call, then select the appropriate service code (& appropriate category code within that service) from the response.rÚ…rÛ}rÜ(h(Xt call, then select the appropriate service code (& appropriate category code within that service) from the response.h)jÂubeubhO)rÝ}rÞ(h(XªFor the ``severity_code`` parameter, you'll need to do a ``SupportConnection.describe_severity_levels`` call, then select the appropriate severity code from the response.h)j¦h*h+h,hRh.}rß(h2]h3]h1]h0]h4]uh6Kxh7hh#]rà(hKXFor the rá…râ}rã(h(XFor the h)jÝubhX)rä}rå(h(X``severity_code``h.}ræ(h2]h3]h1]h0]h4]uh)jÝh#]rçhKX severity_coderè…ré}rê(h(Uh)jäubah,h`ubhKX parameter, you'll need to do a rë…rì}rí(h(X parameter, you'll need to do a h)jÝubhX)rî}rï(h(X.``SupportConnection.describe_severity_levels``h.}rð(h2]h3]h1]h0]h4]uh)jÝh#]rñhKX*SupportConnection.describe_severity_levelsrò…ró}rô(h(Uh)jîubah,h`ubhKXC call, then select the appropriate severity code from the response.rõ…rö}r÷(h(XC call, then select the appropriate severity code from the response.h)jÝubeubeubh8)rø}rù(h(Uh)h9h*h+h,h=h.}rú(h2]h3]h1]h0]rûhah4]rüh auh6K~h7hh#]rý(hD)rþ}rÿ(h(XAdding to a Caserh)jøh*h+h,hHh.}r(h2]h3]h1]h0]h4]uh6K~h7hh#]rhKXAdding to a Caser…r}r(h(jh)jþubaubhO)r}r(h(X«Since the purpose of a support case involves back-and-forth communication, you can add additional communication to the case as well. Providing a response might look like::h)jøh*h+h,hRh.}r(h2]h3]h1]h0]h4]uh6K€h7hh#]r hKXªSince the purpose of a support case involves back-and-forth communication, you can add additional communication to the case as well. Providing a response might look like:r …r }r (h(XªSince the purpose of a support case involves back-and-forth communication, you can add additional communication to the case as well. Providing a response might look like:h)jubaubj>)r }r(h(X>>> result = conn.add_communication_to_case( ... communication_body="This is a followup. It's working now." ... case_id='case-...' ... )h)jøh*h+h,jAh.}r(h~hh0]h1]h2]h3]h4]uh6K„h7hh#]rhKX>>> result = conn.add_communication_to_case( ... communication_body="This is a followup. It's working now." ... case_id='case-...' ... )r…r}r(h(Uh)j ubaubeubh8)r}r(h(Uh)h9h*h+h,h=h.}r(h2]h3]h1]h0]rh ah4]rh auh6K‹h7hh#]r(hD)r}r(h(X&Fetching all Communications for a Caserh)jh*h+h,hHh.}r(h2]h3]h1]h0]h4]uh6K‹h7hh#]rhKX&Fetching all Communications for a Caser…r }r!(h(jh)jubaubhO)r"}r#(h(X8Getting all communications for a given case looks like::r$h)jh*h+h,hRh.}r%(h2]h3]h1]h0]h4]uh6Kh7hh#]r&hKX7Getting all communications for a given case looks like:r'…r(}r)(h(X7Getting all communications for a given case looks like:h)j"ubaubj>)r*}r+(h(X=>>> communications = conn.describe_communications('case-...')h)jh*h+h,jAh.}r,(h~hh0]h1]h2]h3]h4]uh6Kh7hh#]r-hKX=>>> communications = conn.describe_communications('case-...')r.…r/}r0(h(Uh)j*ubaubeubh8)r1}r2(h(Uh)h9h*h+h,h=h.}r3(h2]h3]h1]h0]r4hah4]r5h auh6K“h7hh#]r6(hD)r7}r8(h(XResolving a Caser9h)j1h*h+h,hHh.}r:(h2]h3]h1]h0]h4]uh6K“h7hh#]r;hKXResolving a Caser<…r=}r>(h(j9h)j7ubaubhO)r?}r@(h(XfOnce a case is finished, you should mark it as resolved to close it out. Resolving a case looks like::h)j1h*h+h,hRh.}rA(h2]h3]h1]h0]h4]uh6K•h7hh#]rBhKXeOnce a case is finished, you should mark it as resolved to close it out. Resolving a case looks like:rC…rD}rE(h(XeOnce a case is finished, you should mark it as resolved to close it out. Resolving a case looks like:h)j?ubaubj>)rF}rG(h(XL>>> closed = conn.resolve_case(case_id='case-...') >>> closed['result'] Trueh)j1h*h+h,jAh.}rH(h~hh0]h1]h2]h3]h4]uh6K˜h7hh#]rIhKXL>>> closed = conn.resolve_case(case_id='case-...') >>> closed['result'] TruerJ…rK}rL(h(Uh)jFubaubeubeubeh(UU transformerrMNU footnote_refsrN}rOUrefnamesrP}rQUsymbol_footnotesrR]rSUautofootnote_refsrT]rUUsymbol_footnote_refsrV]rWU citationsrX]rYh7hU current_linerZNUtransform_messagesr[]r\cdocutils.nodes system_message r])r^}r_(h(Uh.}r`(h2]UlevelKh0]h1]Usourceh+h3]h4]UlineKUtypeUINFOrauh#]rbhO)rc}rd(h(Uh.}re(h2]h3]h1]h0]h4]uh)j^h#]rfhKX1Hyperlink target "support-tut" is not referenced.rg…rh}ri(h(Uh)jcubah,hRubah,Usystem_messagerjubaUreporterrkNUid_startrlKU autofootnotesrm]rnU citation_refsro}rpUindirect_targetsrq]rrUsettingsrs(cdocutils.frontend Values rtoru}rv(Ufootnote_backlinksrwKUrecord_dependenciesrxNU rfc_base_urlryUhttp://tools.ietf.org/html/rzU tracebackr{ˆUpep_referencesr|NUstrip_commentsr}NU toc_backlinksr~UentryrU language_coder€UenrU datestampr‚NU report_levelrƒKU _destinationr„NU halt_levelr…KU strip_classesr†NhHNUerror_encoding_error_handlerr‡UbackslashreplacerˆUdebugr‰NUembed_stylesheetrŠ‰Uoutput_encoding_error_handlerr‹UstrictrŒU sectnum_xformrKUdump_transformsrŽNU docinfo_xformrKUwarning_streamrNUpep_file_url_templater‘Upep-%04dr’Uexit_status_levelr“KUconfigr”NUstrict_visitorr•NUcloak_email_addressesr–ˆUtrim_footnote_reference_spacer—‰Uenvr˜NUdump_pseudo_xmlr™NUexpose_internalsršNUsectsubtitle_xformr›‰U source_linkrœNUrfc_referencesrNUoutput_encodingržUutf-8rŸU source_urlr NUinput_encodingr¡U utf-8-sigr¢U_disable_configr£NU id_prefixr¤UU tab_widthr¥KUerror_encodingr¦UUTF-8r§U_sourcer¨h+Ugettext_compactr©ˆU generatorrªNUdump_internalsr«NU smart_quotesr¬‰U pep_base_urlr­Uhttp://www.python.org/dev/peps/r®Usyntax_highlightr¯Ulongr°Uinput_encoding_error_handlerr±jŒUauto_id_prefixr²Uidr³Udoctitle_xformr´‰Ustrip_elements_with_classesrµNU _config_filesr¶]Ufile_insertion_enabledr·ˆU raw_enabledr¸KU dump_settingsr¹NubUsymbol_footnote_startrºKUidsr»}r¼(h jhjhj1hjŠhjøh"h9hj_hj¦hhch!h9uUsubstitution_namesr½}r¾h,h7h.}r¿(h2]h0]h1]Usourceh+h3]h4]uU footnotesrÀ]rÁUrefidsrÂ}rÃh!]rÄh&asub.