§ 5z!£n+|qãóD—dZgd¢ZddlZddlmZd„Zd d„Zd d „Zd d „ZdS)z1Various types of useful iterators and generators.)Úbody_line_iteratorÚtyped_subpart_iteratorÚwalkéN)ÚStringIOc#ó K—|V—| ¦«r1| ¦«D]}| ¦«Ed{V—†ŒdSdS)z‰Walk over the message tree, yielding each subpart. The walk is performed in depth-first order. This method is a generator. N)Ú is_multipartÚ get_payloadr)ÚselfÚsubparts úØ—’Ñ(Ô(ð >ð >ˆGÝ �w  E¨!¡G¨_Ñ =Ô =Ð =Ð =ð>ð>ð >ð >r )F)rN)NrF) Ú__doc__Ú__all__r!Úiorrrrr&©r r úr/s�ðð 8Ð7ð ð ð €ð € € € ØÐÐÐÐÐð &ð &ð &ð)ð)ð)ð)ð ð ð ð ð >ð >ð >ð >ð >ð >r