K if BdZddlmZddlmZddlmZGddeZy)zA Contains the base class for series Made using sequences in mind )Expr)S)cacheitceZdZdZedZedZedZedZedZ edZ e dZ d Z d Zd Zd Zy ) SeriesBasezBase Class for seriesctd|z)z+The interval on which the series is definedz (%s).intervalNotImplementedErrorselfs _/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/sympy/series/series_class.pyintervalzSeriesBase.intervals"/D"899ctd|z)z8The starting point of the series. This point is includedz (%s).startr r s r startzSeriesBase.starts","566rctd|z)z6The ending point of the series. This point is includedz (%s).stopr r s r stopzSeriesBase.stops"+"455rctd|z)zLength of the series expansionz (%s).lengthr r s r lengthzSeriesBase.lengths"-$"677rcy)z-Returns a tuple of variables that are boundedrr s r variableszSeriesBase.variables"src|jDchc]}|jD]}|c}}j|jScc}}w)z This method returns the symbols in the object, excluding those that take on a specific value (i.e. the dummy symbols). )args free_symbols differencer)r ijs r rzSeriesBase.free_symbols's< !II>qq~~>!>>DNN+ ->sAc||jks||jkDrtd|d|j|j |S)zTerm at point pt of a serieszIndex z out of bounds )rr IndexErrorr _eval_termr pts r termzSeriesBase.term0s<  ?b499nB NO Or""rc2td|jz)NzhThe _eval_term method should be added to%s to return series term so it is availablewhen 'term' calls it.)r funcr"s r r!zSeriesBase._eval_term7s"!#:%)II#./ /rc|jtjur|j}d}n|j}d}|||zzS)z Returns the i'th point of a series If start point is negative infinity, point is returned from the end. Assumes the first point to be indexed zero. Examples ======== TODO )rrNegativeInfinityr)r rinitialsteps r _ith_pointzSeriesBase._ith_point=sA ::++ +iiGDjjGD4rc#Kd}||jkr:|j|}|j||dz }||jkr9yywNrr))rr-r$)r rr#s r __iter__zSeriesBase.__iter__QsH $++o#B))B-  FA$++os A A Actt|tr"|j|}|j|St|trq|j |j }}|d}| |j}t|||jxsdDcgc]"}|j|j|$c}Sycc}wr/) isinstanceintr-r$slicerrrranger,)r indexrrrs r __getitem__zSeriesBase.__getitem__Xs eS !OOE*E99U# # u %++uzz4E}|{{%uzzQ79aDIIdooa019 9 & 9s 'B5N)__name__ __module__ __qualname____doc__propertyrrrrrrrr$r!r-r0r7rrr rr s ::776688-- # # /  ( 9rrN)r;sympy.core.exprrsympy.core.singletonrsympy.core.cacherrrrr r@s# !"$X9X9r