L i,jddlmZddlmZGddeZddZddZddZdd Z dd Z dd Z gd Z y ))generator_stop)FeedParserDictceZdZddddZfdZdZeZeZeZeZ dZ dZ d Z d Z d Zd ZeZd ZdZdZdZdZdZdZdZdZdZdZeZeZeZeZeZ dZ!e!Z"xZ#S) Namespacegeogeorssgml)z(http://www.w3.org/2003/01/geo/wgs84_pos#zhttp://www.georss.org/georsszhttp://www.opengis.net/gmlc8d|_tt|y)Nr) ingeometrysuperr__init__)self __class__s b/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/feedparser/namespaces/georss.pyrzNamespace.__init__*s i')cb|jdd|j}t|d<y)Ngeometryrwherepush _get_contextrrattrs_dcontexts r_start_georssgeomzNamespace._start_georssgeom.s+ *a ##%)+rcL|j}|dj|yNr)rupdate)rrrs r _save_wherezNamespace._save_where8s###%)rc`t|jd}|r|j|yyNr)_parse_georss_pointpopr rrs r_end_georss_pointzNamespace._end_georss_point<s+&txx ';<    X & rc`t|jd}|r|j|yyr")_parse_georss_liner$r r%s r_end_georss_linezNamespace._end_georss_lineAs+%dhhz&:;    X & rcd|jd}t|}|r|j|yyr")r$_parse_georss_polygonr )rthisrs r_end_georss_polygonzNamespace._end_georss_polygonFs0xx #(.    X & rc`t|jd}|r|j|yyr")_parse_georss_boxr$r r%s r_end_georss_boxzNamespace._end_georss_boxLs+$TXXj%9:    X & rcb|jdd|j}t|d<y)Nrrrrs r _start_wherezNamespace._start_whereQs+ '1##%)+rc|jd} t|jdd}|j}d|vri|d<||dd<||dd<y#t$rd}Y7wxYw)Nsrsname srsdimension2rrsrsName srsDimension)getint ValueErrorr)rrsrs_name srs_dimensionrs r_parse_srs_attrszNamespace._parse_srs_attrsWs;;y)  NC @AM##% ' !!GG &.#+8(  M sA A&%A&cX|j|d|_|jddy)Nrrr>r rrrs r_start_gml_pointzNamespace._start_gml_pointcs% g& *a rcX|j|d|_|jddy)N linestringrrrArBs r_start_gml_linestringzNamespace._start_gml_linestringhs% g&& *a rcJ|j||jddyNrr)r>rrBs r_start_gml_polygonzNamespace._start_gml_polygonms g& *a rc(|jddyrHrrBs r_start_gml_exteriorzNamespace._start_gml_exteriorqs *a rc6d|_|jddy)Npolygonrr)r rrBs r_start_gml_linearringzNamespace._start_gml_linearringts# *a rc(|jddyNposrrKrBs r_start_gml_poszNamespace._start_gml_posx %rcH|jd}|j}|djd}|djdd}d}|r2d|vr.t|j dd }t |t v}t||| }|r|j|yy NrRrr7r8rTEPSG:)swapdims) r$rr9r:splitbool_geogCSr#r rr,rr<r=rZepsgrs r _end_gml_poszNamespace._end_gml_pos{sxx##%7#'' 2(,,^Q?  (*x~~c*2./D(D&t$]K    X & rc(|jddyrQrKrBs r_start_gml_poslistzNamespace._start_gml_poslistrTrc^|jd}|j}|djd}|djdd}d}|r2d|vr.t|j dd }t |t v}t||j|| }|r|j|yyrV) r$rr9r:r\r]r^_parse_poslistr r r_s r_end_gml_poslistzNamespace._end_gml_poslistsxx##%7#'' 2(,,^Q?  (*x~~c*2./D(D! $//=B    X & rc4d|_|jdy)Nrr)r r$rs r _end_geomzNamespace._end_geoms rc&|jdyr)r$rhs r _end_wherezNamespace._end_wheres r)$__name__ __module__ __qualname__supported_namespacesrr_start_georss_point_start_georss_line_start_georss_polygon_start_georss_boxr r&r)r-r0r2_start_georss_wherer>rCrFrIrLrOrSrarcrfri_end_gml_point_end_gml_linestring_end_gml_linearring_end_gml_exterior_end_gml_polygonrk_end_georss_where __classcell__)rs@rrr#s49(0&+ *, ,*-)*' ' ' ' ,' 9! ! !!! ' 'N##! "rrc^|dk(r t|||S|dk(rt|||}d|dfdSy)NrErNPolygon coordinatestyper~)r()value geom_typerZr[rings rreresEL !%t44 i !%t4!4 3F2HIIrc#Kd|jddjD} t|t|gdd|xrdxsd}|dk(r|jt|t |R#t $rYywxYww)Nc32K|]}t|yw)N)float).0lls r z%_gen_georss_coords..sCRuRyCs, rYr@)replacer\nextappendtuple StopIteration)rrZr[latlonsts r_gen_georss_coordsrsD5==c#:#@#@#BCG  gW ./A"1A/ABAqyg'(N     s))B AA=<B = B B B  B cj tt|||}d|ddS#ttf$rYywxYw)NPointrrlistr IndexErrorr;rrZr[coordss rr#r#sA(d;<q ::  #s  22cd tt|||}d|dS#ttf$rYywxYw)N LineStringrrrs rr(r(s=(d;<$V<<  #s //c tt|||}t |dkryd|fdS#ttf$rYywxYw)Nr}r)rrrr;len)rrZr[rs rr+r+sQ &udD9: 4y1}tg 66  #s -??cv tt|||}dt|dS#ttf$rYywxYw)NBoxr)rrrrr;rs rr/r/sA (d;<eFm<<  #s #&88(iiii1iBiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii i!i"i#i$i%i&i'i(i)i*i+i,i-i.i/i0i1i2i3i4i5i6i7i8i9i:i;i<i=i>i?i@iAiBiCiDiEiFiGiHiIiJiKiLiMiNiOiPiRiSiTiUiViWiXiYi\i]i^i_i`iaibicidieifigihiiijikiliminioipiqirisitiuiviwixizi{i|i}i~iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiioivi{iiiiiiiiiiiiiiiiiiiiii i i i i iiiiiiiiiiiiiiiiiii i!i"i#i$i%i&i1i2i3i4i5i6i7i8i9i:i;i<i=i>i?i@iAiBiCiDiEiFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZi[i\i]i^i_i`iaibicidieifigihiiijikiliminioipiqirisitiuiviwixiyizi{i|i}i~iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii%i&i'i(isN)Tr) __future__rutilrobjectrrerr#r(r+r/r^rrrsA<&!A#A#N  7 # r