diff --git a/README.rst b/README.rst index 4d6b5c3..62d5318 100644 --- a/README.rst +++ b/README.rst @@ -1,3 +1,4 @@ +========= portfolyo ========= @@ -28,6 +29,8 @@ portfolyo Portfolyo is a Python package to analyse and manipulate timeseries related to power and gas offtake portfolios. + +------------ Installation ------------ @@ -45,6 +48,7 @@ NB: this package is under active development and the API will change without pri portfolyo = "x.y.z" +------------- Documentation ------------- @@ -52,6 +56,8 @@ Documentation is hosted on readthedocs: https://portfolyo.readthedocs.io/ + +---------- Repository ---------- @@ -60,6 +66,7 @@ The git repository is hosted on github: http://www.github.com/rwijtvliet/portfolyo +---------- Developing ---------- @@ -74,6 +81,16 @@ the commit hooks. Feature branches are merged into the ``develop`` branch via pull request. + +Internal dependencies +--------------------- + +Inside the package, modules depend on each other in the following chain. A module may depend on another module if it is further to the left: + +tools >> pfline >> pfstate >> tools2 + + +---------- Publishing ---------- diff --git a/dev_scripts/sphinx_autorun.sh b/dev_scripts/sphinx_autorun.sh old mode 100644 new mode 100755 diff --git a/docs/core/pfline.rst b/docs/core/pfline.rst index e4ccb54..3cb34a9 100644 --- a/docs/core/pfline.rst +++ b/docs/core/pfline.rst @@ -758,7 +758,7 @@ Using the ``.hedge_with()`` method, the volume timeseries in a portfolio line is Peak and offpeak ---------------- -For portfolio lines with (quarter)hourly data, the ``.po()`` method splits the values in peak and offpeak. We can again specify if we want monthly, quarterly, or yearly values. +For markets that have a concept of "peak" and "offpeak" periods, the ``.po()`` method splits the values in peak and offpeak. We need to specifiy a ``PeakFunction`` to determine which periods are peak - we can create one with ``portfolyo.create_peakfn()``, or we use the one for the German power market which is provided under ``portfolyo.germanpower_peakfn``. We can again specify if we want monthly, quarterly, or yearly values. .. exec_code:: @@ -768,9 +768,9 @@ For portfolio lines with (quarter)hourly data, the ``.po()`` method splits the v offtake = pf.PfLine(pf.dev.w_offtake(index)) # mock offtake volumes # --- hide: stop --- # continuation of previous code example - offtake.po() + offtake.po(pf.germanpower_peakfn) # --- hide: start --- - print(repr(offtake.po())) + print(repr(offtake.po(pf.germanpower_peakfn))) NB: be cautious in using the output of this method. The values in the "sub-dataframes" do not apply to the entire time period, so the usual relations (e.g. energy = power * duration) do not hold if the duration of the entire time period is used. For convenience, the relevant duration (of only the peak or only the offpeak hours) is included in the dataframe. diff --git a/docs/savefig/fig_hedge.png b/docs/savefig/fig_hedge.png index 13bb208..0d1ca13 100644 Binary files a/docs/savefig/fig_hedge.png and b/docs/savefig/fig_hedge.png differ diff --git a/docs/savefig/fig_offtake.png b/docs/savefig/fig_offtake.png index 160a93e..6b01520 100644 Binary files a/docs/savefig/fig_offtake.png and b/docs/savefig/fig_offtake.png differ diff --git a/docs/savefig/fig_plot_pfl.png b/docs/savefig/fig_plot_pfl.png index a379a06..c870ace 100644 Binary files a/docs/savefig/fig_plot_pfl.png and b/docs/savefig/fig_plot_pfl.png differ diff --git a/docs/savefig/fig_plot_pfs.png b/docs/savefig/fig_plot_pfs.png index 8ac43f3..a3022e3 100644 Binary files a/docs/savefig/fig_plot_pfs.png and b/docs/savefig/fig_plot_pfs.png differ diff --git a/portfolyo/__init__.py b/portfolyo/__init__.py index 25efc59..8fe3f38 100644 --- a/portfolyo/__init__.py +++ b/portfolyo/__init__.py @@ -1,28 +1,27 @@ """Package to analyse and manipulate timeseries related to power and gas offtake portfolios.""" -from . import _version, dev, testing, tools +from . import _version, dev, tools from .core import extendpandas # extend functionalty of pandas from .core import suppresswarnings -from .tools2.plot import plot_pfstates from .core.pfline import Kind, PfLine, Structure, create from .core.pfstate import PfState +from .tools import testing +from .tools2.changeyear import map_to_year from .tools2.concat import general as concat +from .tools2.intersect import indexable as intersection from .tools2.plot import plot_pfstates -from .prices.hedge import hedge -from .prices.utils import is_peak_hour from .tools.changefreq import averagable as asfreq_avg from .tools.changefreq import summable as asfreq_sum from .tools.changeyear import characterize_index, map_frame_to_year from .tools.freq import FREQUENCIES +from .tools.hedge import hedge +from .tools.peakfn import PeakFunction +from .tools.peakfn import factory as create_peakfn +from .tools.product import germanpower_peakfn, is_peak_hour from .tools.standardize import frame as standardize from .tools.tzone import force_agnostic, force_aware from .tools.unit import Q_, Unit, ureg from .tools.wavg import general as wavg -from .tools2.concat import general as concat -from .tools2.intersect import indexable as intersection - -# from .core.shared.concat import general as concat - VOLUME = Kind.VOLUME PRICE = Kind.PRICE @@ -33,4 +32,4 @@ suppresswarnings.apply() __version__ = _version.get_versions()["version"] -__all__ = ["tools", "dev", "testing", "PfLine", "PfState"] +__all__ = ["tools", "dev", "PfLine", "PfState"] diff --git a/portfolyo/core/pfline/arithmatic.py b/portfolyo/core/pfline/arithmatic.py index bf0d41f..7acea4f 100644 --- a/portfolyo/core/pfline/arithmatic.py +++ b/portfolyo/core/pfline/arithmatic.py @@ -2,12 +2,12 @@ from __future__ import annotations -from typing import TYPE_CHECKING, Any, Union +from typing import TYPE_CHECKING, Any import numpy as np import pandas as pd -from ... import testing, tools +from ... import tools from . import classes, create, interop from .enums import Kind, Structure @@ -23,7 +23,7 @@ def assert_objects_indexcompatibility(fn): def wrapper(o1, o2, *args, **kwargs): try: - testing.assert_indices_compatible(o1.index, o2.index) + tools.testing.assert_indices_compatible(o1.index, o2.index) except AssertionError as e: raise NotImplementedError from e return fn(o1, o2, *args, **kwargs) @@ -185,7 +185,7 @@ def __rmul__(self: PfLine, other: Any) -> PfLine: @Prep.standardize_other # other converted to None, a PfLine, or dimless Series @Prep.raiseerror_if_otherNone # other is now a PfLine or dimless Series... @Prep.assert_objects_indexcompatibility # ... with a compatible index - def __truediv__(self: PfLine, other: Any) -> Union[PfLine, pd.Series]: + def __truediv__(self: PfLine, other: Any) -> PfLine | pd.Series: if isinstance(other, pd.Series): return Multiply.pfline_and_series(self, 1 / other) else: @@ -195,7 +195,7 @@ def __truediv__(self: PfLine, other: Any) -> Union[PfLine, pd.Series]: @Prep.raiseerror_if_otherNone # other is now a PfLine or dimless Series @Prep.raiseerror_if_otherdimlessseries # other is now a PfLine... @Prep.assert_objects_indexcompatibility # ... with a compatible index - def __rtruediv__(self: PfLine, other: Any) -> Union[PfLine, pd.Series]: + def __rtruediv__(self: PfLine, other: Any) -> PfLine | pd.Series: return Divide.two_pflines(other, self) # NB order! @Prep.standardize_other # other converted to None, a PfLine, or dimless Series @@ -285,12 +285,10 @@ def nestedpfline_and_series(pfl: NestedPfLine, s: pd.Series) -> NestedPfLine: class Divide: @Prep.ensure_pflines_flat # pfl1 and pfl2 are now both flat - def two_pflines(pfl1: PfLine, pfl2: PfLine) -> Union[pd.Series, PfLine]: + def two_pflines(pfl1: PfLine, pfl2: PfLine) -> pd.Series | PfLine: return Divide.two_flatpflines(pfl1, pfl2) - def two_flatpflines( - pfl1: FlatPfLine, pfl2: FlatPfLine - ) -> Union[pd.Series, FlatPfLine]: + def two_flatpflines(pfl1: FlatPfLine, pfl2: FlatPfLine) -> pd.Series | FlatPfLine: if pfl1.kind is pfl2.kind: if pfl1.kind is Kind.COMPLETE: raise NotImplementedError( diff --git a/portfolyo/core/pfline/children.py b/portfolyo/core/pfline/children.py index 18942ec..c118f34 100644 --- a/portfolyo/core/pfline/children.py +++ b/portfolyo/core/pfline/children.py @@ -1,9 +1,9 @@ from __future__ import annotations import warnings -from typing import TYPE_CHECKING, Any, Mapping, Union +from typing import TYPE_CHECKING, Any, Mapping -from ... import testing, tools +from ... import tools from . import create if TYPE_CHECKING: @@ -11,9 +11,7 @@ class ChildFunctionality(Mapping): - def set_child( - self: NestedPfLine, name: str, child: Union[PfLine, Any] - ) -> NestedPfLine: + def set_child(self: NestedPfLine, name: str, child: PfLine | Any) -> NestedPfLine: """Set/add/update child; returns new pfline instance without changing current instance.""" if name in ["w", "q", "p", "r"]: raise ValueError("Name cannot be one of 'w', 'q', 'p', 'r'.") @@ -28,7 +26,7 @@ def set_child( f"Incompatible kinds; the portfolio line has {self.kind} but the child has {child.kind}." ) try: - testing.assert_indices_compatible(self.index, child.index) + tools.testing.assert_indices_compatible(self.index, child.index) except AssertionError as e: raise ValueError( "Index of new child is not compatible with the existing data." diff --git a/portfolyo/core/pfline/classes.py b/portfolyo/core/pfline/classes.py index 1408218..7e0b2bc 100644 --- a/portfolyo/core/pfline/classes.py +++ b/portfolyo/core/pfline/classes.py @@ -2,25 +2,19 @@ import abc import dataclasses -from typing import Any, Callable, Dict, Iterable, Mapping, Union # noqa +from typing import Callable, Dict # noqa import numpy as np import pandas as pd from ... import tools -from ..ndframelike import NDFrameLike -from ..shared import ExcelClipboardOutput, PfLinePlot, PfLineText -from . import ( - children, - create, - dataframeexport, - decorators, - flat_methods, - nested_methods, - prices, -) +from ..shared.excelclipboard import ExcelClipboardOutput +from ..shared.ndframelike import NDFrameLike +from . import children, create, dataframeexport, flat_methods, nested_methods from .arithmatic import PfLineArithmatic from .enums import Kind, Structure +from .plot import PfLinePlot +from .text import PfLineText def constructor(structure: Structure, kind: Kind) -> type: @@ -86,43 +80,60 @@ def __post_init__(self): err = f"Expected columns {self.kind.available}, received {self.df.columns}." assert set(self.df.columns) == set(self.kind.available), err + @property + @abc.abstractmethod + def kind(self) -> Kind: + ... + + @property + @abc.abstractmethod + def structure(self) -> Structure: + ... + @property def index(self) -> pd.DatetimeIndex: """Index of the data, containing the left-bound timestamps of the delivery periods.""" return self.df.index - @abc.abstractproperty - def w(self) -> pd.Series: # override if applicable + @property + @abc.abstractmethod + def w(self) -> pd.Series: """Return (flat) volume timeseries in [MW].""" ... - @abc.abstractproperty - def q(self) -> pd.Series: # override if applicable + @property + @abc.abstractmethod + def q(self) -> pd.Series: """Return (flat) volume timeseries in [MWh].""" ... - @abc.abstractproperty - def p(self) -> pd.Series: # override if applicable + @property + @abc.abstractmethod + def p(self) -> pd.Series: """Return (flat) price timeseries in [Eur/MWh].""" ... - @abc.abstractproperty - def r(self) -> pd.Series: # override if applicable + @property + @abc.abstractmethod + def r(self) -> pd.Series: """Return (flat) revenue timeseries in [Eur].""" ... - @abc.abstractproperty - def volume(self) -> PfLine: # override if applicable + @property + @abc.abstractmethod + def volume(self) -> PfLine: """Return volume-only PfLine.""" ... - @abc.abstractproperty - def price(self) -> PfLine: # override if applicable + @property + @abc.abstractmethod + def price(self) -> PfLine: """Return price-only PfLine.""" ... - @abc.abstractproperty - def revenue(self) -> PfLine: # override if applicable + @property + @abc.abstractmethod + def revenue(self) -> PfLine: """Return revenue-only PfLine""" ... @@ -132,40 +143,16 @@ def flatten(self) -> PfLine: ... @abc.abstractmethod - def map_to_year(self, year: int, holiday_country: str = None) -> PfLine: - """Transfer the data to a hypothetical other year. - - Parameters - ---------- - year : int - Year to transfer the data to. - holiday_country : str, optional (default: None) - Country or region for which to assume the holidays. E.g. 'DE' (Germany), 'NL' - (Netherlands), or 'USA'. See ``holidays.list_supported_countries()`` for - allowed values. - - Returns - ------- - PfLine - - Notes - ----- - Useful for daily (and shorter) data. Copies over the data but takes weekdays (and - holidays) of target year into consideration. See ``portfolyo.map_frame_as_year()`` - for more information. - Inaccurate for monthly data and longer, because we only have one value per month, - and can therefore not take different number of holidays/weekends (i.e., offpeak - hours) into consideration. - """ - ... - - @abc.abstractmethod - def po(self: PfLine, freq: str = "MS") -> pd.DataFrame: - """Decompose the portfolio line into peak and offpeak values. Takes simple averages - of volume [MW] and price [Eur/MWh] - does not hedge! + def po( + self: PfLine, peak_fn: tools.peakfn.PeakFunction, freq: str = "MS" + ) -> pd.DataFrame: + """Decompose the portfolio line into peak and offpeak values. Takes simple (duration- + weighted) averages of volume [MW] and price [Eur/MWh] - does not hedge! Parameters ---------- + peak_fn : PeakFunction + Function that returns boolean Series indicating if timestamps in index lie in peak period. freq : {'MS' (months, default), 'QS' (quarters), 'AS' (years)} Frequency of resulting dataframe. @@ -185,8 +172,8 @@ def hedge_with( self: PfLine, p: PricePfLine, how: str = "val", + peak_fn: tools.peakfn.PeakFunction = None, freq: str = "MS", - po: bool = None, ) -> PfLine: """Hedge the volume in the portfolio line with a price curve. @@ -196,11 +183,17 @@ def hedge_with( Portfolio line with prices to be used in the hedge. how : str, optional (Default: 'val') Hedge-constraint. 'vol' for volumetric hedge, 'val' for value hedge. + peak_fn : PeakFunction, optional (default: None) + To hedge with peak and offpeak products: function that returns boolean + Series indicating if timestamps in index lie in peak period. + If None, hedge with base products. freq : {'D' (days), 'MS' (months, default), 'QS' (quarters), 'AS' (years)} Frequency of hedging products. E.g. 'QS' to hedge with quarter products. - po : bool, optional - Type of hedging products. Set to True to split hedge into peak and offpeak. - (Default: split if volume timeseries has hourly values or shorter.) + + See also + -------- + portfolyo.create_peakfn + portfolyo.germanpower_peakfn Returns ------- @@ -211,7 +204,7 @@ def hedge_with( Notes ----- - - If the PfLine contains prices, these are ignored. + If the PfLine contains prices, these are ignored. """ ... @@ -267,24 +260,13 @@ class CompletePfLine: r: pd.Series = property(lambda self: self.df["r"]) -class FlatPfLine(PfLine): - """Flat portfolio line, i.e., without children. Only has a single dataframe. - - Notes - ----- - * If the timeseries or values in ``data`` do not have a ``pint`` data type, the - standard units are assumed (MW, MWh, Eur, Eur/MWh). - * If the timeseries or values in ``data`` do have a ``pint`` data type, they are - converted into the standard units. - """ - +class FlatPfLine: structure = Structure.FLAT dataframe = dataframeexport.Flat.dataframe flatten = flat_methods.flatten - po = prices.Flat.po - hedge_with = prices.Flat.hedge_with - # map_to_year => on child classes + po = flat_methods.po + hedge_with = flat_methods.hedge_with loc = flat_methods.loc slice = flat_methods.slice __getitem__ = flat_methods.__getitem__ @@ -292,14 +274,13 @@ class FlatPfLine(PfLine): __eq__ = flat_methods.__eq__ -class NestedPfLine(PfLine, children.ChildFunctionality): +class NestedPfLine(children.ChildFunctionality): structure = Structure.NESTED dataframe = dataframeexport.Nested.dataframe flatten = nested_methods.flatten - po = prices.Nested.po - hedge_with = prices.Nested.hedge_with - map_to_year = nested_methods.map_to_year + po = nested_methods.po + hedge_with = nested_methods.hedge_with loc = nested_methods.loc slice = nested_methods.slice __bool__ = nested_methods.__bool__ @@ -321,13 +302,6 @@ def asfreq(self, freq: str = "MS") -> FlatVolumePfLine: newdf["w"] = newdf["q"] / tools.duration.index(newdf.index) # TODO: check unit return FlatVolumePfLine(newdf) - @decorators.map_to_year_warning - def map_to_year(self, year: int, holiday_country: str = None) -> FlatVolumePfLine: - df = self.df[["w"]] # Averageble data to allow mapping unequal-length periods - newdf = tools.changeyear.map_frame_to_year(df, year, holiday_country) - newdf["q"] = newdf["w"] * tools.duration.index(newdf.index) - return FlatVolumePfLine(newdf) - def __bool__(self) -> bool: return not np.allclose(self.df["w"].pint.magnitude, 0.0) @@ -362,12 +336,6 @@ def asfreq(self, freq: str = "MS") -> FlatPricePfLine: ) return FlatPricePfLine(newdf) - @decorators.map_to_year_warning - def map_to_year(self, year: int, holiday_country: str = None) -> FlatVolumePfLine: - df = self.df[["p"]] # Averageble data to allow mapping unequal-length periods - newdf = tools.changeyear.map_frame_to_year(df, year, holiday_country) - return FlatPricePfLine(newdf) - def __bool__(self) -> bool: return not np.allclose(self.df["p"].pint.magnitude, 0.0) @@ -402,15 +370,6 @@ def asfreq(self, freq: str = "MS") -> FlatRevenuePfLine: ) return FlatRevenuePfLine(newdf) - @decorators.map_to_year_warning - def map_to_year(self, year: int, holiday_country: str = None) -> FlatVolumePfLine: - # Assume that revenue is scales proportionately with duration of period. - # E.g. 290 Eur in leapyear Feb --> 280 Eur in non-leapyear Feb. - df = self.df[["r"]] * tools.duration.index(self.df.index) # Make averageble - newdf = tools.changeyear.map_frame_to_year(df, year, holiday_country) - newdf = newdf / tools.duration.index(newdf.index) # Make summable again - return FlatRevenuePfLine(newdf) - def __bool__(self) -> bool: return not np.allclose(self.df["r"].pint.magnitude, 0.0) @@ -459,14 +418,6 @@ def asfreq(self, freq: str = "MS") -> FlatCompletePfLine: newdf["p"] = newdf["r"] / newdf["q"] return FlatCompletePfLine(newdf) - @decorators.map_to_year_warning - def map_to_year(self, year: int, holiday_country: str = None) -> FlatVolumePfLine: - df = self.df[["w", "p"]] # Averagable - newdf = tools.changeyear.map_frame_to_year(df, year, holiday_country) - newdf["q"] = newdf["w"] * tools.duration.index(newdf.index) - newdf["r"] = newdf["q"] * newdf["p"] - return FlatCompletePfLine(newdf) - def __bool__(self) -> bool: return not ( np.allclose(self.df["w"].pint.magnitude, 0.0) diff --git a/portfolyo/core/pfline/concat.py b/portfolyo/core/pfline/concat.py deleted file mode 100644 index e69de29..0000000 diff --git a/portfolyo/core/pfline/decorators.py b/portfolyo/core/pfline/decorators.py index dfbf707..06e9d37 100644 --- a/portfolyo/core/pfline/decorators.py +++ b/portfolyo/core/pfline/decorators.py @@ -1,15 +1,12 @@ """Module with decorators to catch (and possibly correct) common situations.""" - -import warnings - from ... import tools def assert_longest_allowed_freq(freq): def decorator(fn): def wrapped(self, *args, **kwargs): - if tools.freq.longer_or_shorter(self.index.freq, freq) == 1: + if tools.freq.up_or_down(self.index.freq, freq) == 1: raise ValueError( "The frequency of the index is too long; longest allowed:" f" {freq}; passed: {self.index.freq}." @@ -24,7 +21,7 @@ def wrapped(self, *args, **kwargs): def assert_shortest_allowed_freq(freq): def decorator(fn): def wrapped(self, *args, **kwargs): - if tools.freq.longer_or_shorter(self.index.freq, freq) == -1: + if tools.freq.up_or_down(self.index.freq, freq) == -1: raise ValueError( "The frequency of the index is too short; shortest allowed:" f" {freq}; passed: {self.index.freq}." @@ -34,15 +31,3 @@ def wrapped(self, *args, **kwargs): return wrapped return decorator - - -def map_to_year_warning(map_to_year): - def wrapped(self, *args, **kwargs): - if tools.freq.shortest(self.index.freq, "MS") == "MS": - warnings.warn( - "This PfLine has a monthly frequency or longer; changing the year is inaccurate, as" - " details (number of holidays, weekends, offpeak hours, etc) cannot be taken into account." - ) - return map_to_year(self, *args, **kwargs) - - return wrapped diff --git a/portfolyo/core/pfline/flat_methods.py b/portfolyo/core/pfline/flat_methods.py index 5511f02..ed8a117 100644 --- a/portfolyo/core/pfline/flat_methods.py +++ b/portfolyo/core/pfline/flat_methods.py @@ -2,24 +2,77 @@ from typing import TYPE_CHECKING, Any -from portfolyo import tools - -from ... import testing import pandas as pd +from ... import tools +from ...tools.peakconvert import tseries2poframe +from . import classes +from .enums import Kind + if TYPE_CHECKING: - from .classes import FlatPfLine + from .classes import FlatPfLine, PfLine, PricePfLine def flatten(self: FlatPfLine) -> FlatPfLine: return self +def po( + self: PfLine, peak_fn: tools.peakfn.PeakFunction, freq: str = "MS" +) -> pd.DataFrame: + df_dict = {} + + # Always include duration. + duration = tools.duration.index(self.df.index) + df_dict["duration"] = tseries2poframe(duration, peak_fn, freq, True) + + # Add volume. + if self.kind in [Kind.VOLUME, Kind.COMPLETE]: + df_dict["q"] = tseries2poframe(self.q, peak_fn, freq, True) + df_dict["w"] = df_dict["q"] / df_dict["duration"] + + # Add revenue. + if self.kind in [Kind.REVENUE, Kind.COMPLETE]: + df_dict["r"] = tseries2poframe(self.r, peak_fn, freq, True) + + # Add price. + if self.kind is Kind.PRICE: + df_dict["p"] = tseries2poframe(self.p, peak_fn, freq, False) + elif self.kind is Kind.COMPLETE: + df_dict["p"] = df_dict["r"] / df_dict["q"] + + # Turn into dataframe. + return pd.DataFrame({k: df.stack() for k, df in df_dict.items()}) + + +def hedge_with( + self: PfLine, + prices: PricePfLine, + how: str = "val", + peak_fn: tools.peakfn.PeakFunction = None, + freq: str = "MS", +) -> FlatPfLine: + if self.kind not in [Kind.VOLUME, Kind.COMPLETE]: + raise ValueError( + "Cannot hedge a PfLine that does not contain volume information." + ) + if self.index.freq not in ["15T", "H", "D"]: + raise ValueError( + "Can only hedge a PfLine with daily or (quarter)hourly information." + ) + + wout, pout = tools.hedge.hedge(self.w, prices.p, how, peak_fn, freq) + df = pd.DataFrame({"w": wout, "p": pout}) + df["q"] = df["w"] * tools.duration.index(df.index) + df["r"] = df["p"] * df["q"] + return classes.FlatCompletePfLine(df) + + def __eq__(self: FlatPfLine, other: Any) -> bool: if not isinstance(other, self.__class__): return False try: - testing.assert_frame_equal(self.df, other.df, rtol=1e-7) + tools.testing.assert_frame_equal(self.df, other.df, rtol=1e-7) return True except AssertionError: return False diff --git a/portfolyo/core/pfline/interop.py b/portfolyo/core/pfline/interop.py index d0c7534..22bfd41 100644 --- a/portfolyo/core/pfline/interop.py +++ b/portfolyo/core/pfline/interop.py @@ -4,12 +4,12 @@ from __future__ import annotations from dataclasses import dataclass -from typing import TYPE_CHECKING, Any, Dict, Iterable, Mapping, Union +from typing import TYPE_CHECKING, Any, Dict, Iterable, Mapping import numpy as np import pandas as pd -from ... import testing, tools +from ... import tools from . import classes, create if TYPE_CHECKING: # needed to avoid circular imports @@ -44,12 +44,12 @@ class InOp: inop = inop.to_df() """ - w: Union[tools.unit.Q_, pd.Series] = None - q: Union[tools.unit.Q_, pd.Series] = None - p: Union[tools.unit.Q_, pd.Series] = None - r: Union[tools.unit.Q_, pd.Series] = None - nodim: Union[tools.unit.Q_, pd.Series] = None # explicitly dimensionless - agn: Union[float, pd.Series] = None # agnostic + w: tools.unit.Q_ | pd.Series = None + q: tools.unit.Q_ | pd.Series = None + p: tools.unit.Q_ | pd.Series = None + r: tools.unit.Q_ | pd.Series = None + nodim: tools.unit.Q_ | pd.Series = None # explicitly dimensionless + agn: float | pd.Series = None # agnostic def __post_init__(self): # Add correct units and check type. @@ -116,7 +116,9 @@ def make_consistent(self) -> InOp: # Volumes. if w is not None and q is not None: try: - testing.assert_series_equal(w, q / q.index.duration, check_names=False) + tools.testing.assert_series_equal( + w, q / q.index.duration, check_names=False + ) except AssertionError as e: raise ValueError("Values for w and q are not consistent.") from e elif w is not None and q is None: @@ -157,7 +159,7 @@ def make_consistent(self) -> InOp: ign2 = np.isclose(p.pint.m, 0) & (q.isna() | np.isinf(q.pint.m)) ignore = ign1 | ign2 try: - testing.assert_series_equal( + tools.testing.assert_series_equal( r[~ignore], p[~ignore] * q[~ignore], check_names=False ) except AssertionError as e: @@ -217,8 +219,8 @@ def __eq__(self, other) -> bool: def _set_unit( - v: Union[float, int, tools.unit.Q_, pd.Series], attr: str -) -> Union[float, tools.unit.Q, pd.Series]: + v: float | int | tools.unit.Q_ | pd.Series, attr: str +) -> float | tools.unit.Q | pd.Series: """Set unit (if none set yet) or convert to unit.""" if v is None: return None @@ -303,7 +305,7 @@ def _unit2attr(unit) -> str: def _from_data( - data: Union[float, tools.unit.Q_, pd.Series, Dict, pd.DataFrame, Iterable, Mapping] + data: float | tools.unit.Q_ | pd.Series | Dict | pd.DataFrame | Iterable | Mapping, ) -> InOp: """Turn ``data`` into a InterOp object.""" @@ -399,7 +401,7 @@ def _equal(inop1: InOp, inop2: InOp) -> InOp: return False if isinstance(val1, pd.Series): try: - testing.assert_series_equal(val1, val2, check_names=False) + tools.testing.assert_series_equal(val1, val2, check_names=False) except AssertionError: return False elif val1 != val2: @@ -409,7 +411,7 @@ def _equal(inop1: InOp, inop2: InOp) -> InOp: def pfline_or_nodimseries( data: Any, ref_index: pd.DatetimeIndex, agn_default: str = None -) -> Union[None, pd.Series, FlatPfLine]: +) -> None | pd.Series | FlatPfLine: """Turn ``data`` into PfLine if dimension-aware. If not, turn into Series.""" # Already a PfLine. diff --git a/portfolyo/core/pfline/nested_methods.py b/portfolyo/core/pfline/nested_methods.py index 33d37b1..7a04946 100644 --- a/portfolyo/core/pfline/nested_methods.py +++ b/portfolyo/core/pfline/nested_methods.py @@ -2,23 +2,35 @@ from typing import TYPE_CHECKING, Any -if TYPE_CHECKING: - from .classes import NestedPfLine, FlatPfLine +import pandas as pd +from ... import tools from . import classes from .enums import Structure +if TYPE_CHECKING: + from .classes import FlatPfLine, NestedPfLine, PricePfLine + def flatten(self: NestedPfLine) -> FlatPfLine: constructor = classes.constructor(Structure.FLAT, self.kind) return constructor(self.df) # use flattened toplevel dataframe for initialisation -def map_to_year(self: NestedPfLine, year: int, holiday_country: str) -> NestedPfLine: - newchildren = { - name: child.map_to_year(year, holiday_country) for name, child in self.items() - } - return self.__class__(newchildren) +def po( + self: NestedPfLine, peak_fn: tools.peakfn.PeakFunction, freq: str = "MS" +) -> pd.DataFrame: + return self.flatten().po(peak_fn, freq) + + +def hedge_with( + self: NestedPfLine, + p: PricePfLine, + how: str = "val", + peak_fn: tools.peakfn.PeakFunction = None, + freq: str = "MS", +) -> FlatPfLine: + return self.flatten().hedge_with(p, how, peak_fn, freq) def __bool__(self: NestedPfLine) -> bool: diff --git a/portfolyo/core/shared/plot.py b/portfolyo/core/pfline/plot.py similarity index 57% rename from portfolyo/core/shared/plot.py rename to portfolyo/core/pfline/plot.py index caa414e..a59ff1c 100644 --- a/portfolyo/core/shared/plot.py +++ b/portfolyo/core/pfline/plot.py @@ -7,18 +7,15 @@ import hashlib from typing import TYPE_CHECKING, Dict, Tuple -import matplotlib import pandas as pd from matplotlib import pyplot as plt from ... import tools -from ... import visualize as vis -from ..pfline import classes -from ..pfline.enums import Kind +from . import classes +from .enums import Kind -if TYPE_CHECKING: # needed to avoid circular imports - from ..pfline import PfLine - from ..pfstate import PfState +if TYPE_CHECKING: + from .classes import PfLine DEFAULTFMT = { @@ -34,7 +31,7 @@ def defaultkwargs(name: str, col: str): # Get plot default kwargs. if name is None: # no children kwargs = { - "color": getattr(vis.Colors.Wqpr, col, "grey"), + "color": getattr(tools.visualize.Colors.Wqpr, col, "grey"), "alpha": 0.7, "labelfmt": DEFAULTFMT.get(col, "{:.2f}"), } @@ -47,9 +44,9 @@ def defaultkwargs(name: str, col: str): else: # child with name hashed_value = hashlib.sha256(name.encode()).hexdigest() hashed_int = int(hashed_value, 16) - index = hashed_int % len(vis.Colors.General) + index = hashed_int % len(tools.visualize.Colors.General) kwargs = { - "color": list(vis.Colors.General)[index].value, + "color": list(tools.visualize.Colors.General)[index].value, "alpha": 0.9, "labelfmt": "", # no labels on children "label": name, @@ -61,27 +58,27 @@ def defaultkwargs(name: str, col: str): def plotfn_and_kwargs( col: str, freq: str, name: str -) -> Tuple[vis.PlotTimeseriesToAxFunction, Dict]: +) -> Tuple[tools.visualize.PlotTimeseriesToAxFunction, Dict]: """Get correct function to plot as well as default kwargs. ``col``: one of 'qwprf', ``freq``: frequency; ``name``: name of the child. If name is emptystring, it is the parent of a plot which also has children. If it is None, there are no children.""" # Get plot function. if tools.freq.shortest(freq, "MS") == "MS": # categorical if name == "" or name is None: # parent - fn = vis.plot_timeseries_as_bar + fn = tools.visualize.plot_timeseries_as_bar else: # child - fn = vis.plot_timeseries_as_hline + fn = tools.visualize.plot_timeseries_as_hline else: # timeaxis if col in ["w", "q"]: if name == "" or name is None: # parent - fn = vis.plot_timeseries_as_area + fn = tools.visualize.plot_timeseries_as_area else: # child - fn = vis.plot_timeseries_as_step + fn = tools.visualize.plot_timeseries_as_step else: # col in ['p', 'r'] if name == "" or name is None: # parent - fn = vis.plot_timeseries_as_step + fn = tools.visualize.plot_timeseries_as_step else: # child - fn = vis.plot_timeseries_as_step + fn = tools.visualize.plot_timeseries_as_step kwargs = defaultkwargs(name, col) @@ -90,7 +87,11 @@ def plotfn_and_kwargs( class PfLinePlot: def plot_to_ax( - self: PfLine, ax: plt.Axes, children: bool = False, kind: Kind = None, **kwargs + self: PfLine, + ax: plt.Axes, + children: bool = False, + kind: Kind = None, + **kwargs, ) -> None: """Plot a specific dimension (i.e., kind) of the PfLine to a specific axis. @@ -120,7 +121,7 @@ def plot_to_ax( ) # Create function to select correct series of the pfline. - def col_and_series(pfl: PfLine) -> Tuple[str, pd.Series]: + def col_and_series(pfl: classes.PfLine) -> Tuple[str, pd.Series]: if kind is Kind.PRICE: return "p", pfl.p elif kind is Kind.REVENUE: @@ -171,76 +172,3 @@ def plot(self, children: bool = False) -> plt.Figure: self.plot_to_ax(ax, children, kind) return fig - - -class PfStatePlot: - def plot(self: PfState, children: bool = False) -> plt.Figure: - """Plot the portfolio state. - - Parameters - ---------- - None - - Returns - ------- - plt.Figure - The figure object to which the series was plotted. - """ - gridspec = {"width_ratios": [1, 1, 1], "height_ratios": [4, 1]} - fig, (volumeaxes, priceaxes) = plt.subplots( - 2, 3, sharex=True, sharey="row", gridspec_kw=gridspec, figsize=(10, 6) - ) - - so, ss, usv = ( - -1 * self.offtakevolume, - self.sourced, - self.unsourced, - ) - - so.plot_to_ax(volumeaxes[0], children=children, kind=so.kind, labelfmt="") - ss.plot_to_ax(volumeaxes[1], children=children, kind=Kind.VOLUME, labelfmt="") - # Unsourced volume. - usv.plot_to_ax(volumeaxes[2], kind=Kind.VOLUME, labelfmt="") - # Procurement Price. - self.pnl_cost.plot_to_ax(priceaxes[0], kind=Kind.PRICE, labelfmt="") - self.sourced.plot_to_ax( - priceaxes[1], children=children, kind=Kind.PRICE, labelfmt="" - ) - # Unsourced price - self.unsourced.plot_to_ax(priceaxes[2], kind=Kind.PRICE, labelfmt="") - # Set titles. - volumeaxes[0].set_title("Offtake volume") - volumeaxes[1].set_title("Sourced volume") - volumeaxes[2].set_title("Unsourced volume") - priceaxes[0].set_title("Procurement price") - priceaxes[1].set_title("Sourced price") - priceaxes[2].set_title("Unsourced price") - - limits_vol = [ax.get_ylim() for ax in volumeaxes] - limits_pr = [ax.get_ylim() for ax in priceaxes] - PfStatePlot.set_max_min_limits(volumeaxes, limits_vol) - PfStatePlot.set_max_min_limits(priceaxes, limits_pr) - - # Format tick labels. - formatter = matplotlib.ticker.FuncFormatter( - lambda x, p: "{:,.0f}".format(x).replace(",", " ") - ) - volumeaxes[0].yaxis.set_major_formatter(formatter) - priceaxes[0].yaxis.set_major_formatter(formatter) - # axes[3].yaxis.set_major_formatter(matplotlib.ticker.PercentFormatter(1.0)) - - # Set ticks. - for ax in volumeaxes: - ax.xaxis.set_tick_params(labeltop=False, labelbottom=True) - for ax in priceaxes: - ax.xaxis.set_tick_params(labeltop=False, labelbottom=False) - - fig.tight_layout() - return fig - - def set_max_min_limits(axes: plt.Axes, limit: int): - mins_vol, maxs_vol = zip(*limit) - - themin, themax = min(mins_vol), max(maxs_vol) - for ax in axes: - ax.set_ylim(themin * 1.1, themax * 1.1) diff --git a/portfolyo/core/pfline/prices.py b/portfolyo/core/pfline/prices.py deleted file mode 100644 index df00b61..0000000 --- a/portfolyo/core/pfline/prices.py +++ /dev/null @@ -1,97 +0,0 @@ -from __future__ import annotations - -from typing import TYPE_CHECKING - -import pandas as pd - -from ... import tools -from ...prices import convert, hedge -from ...prices.utils import duration_bpo -from . import classes -from .enums import Kind, Structure - -if TYPE_CHECKING: - from .classes import FlatPfLine, NestedPfLine, PfLine, PricePfLine - - -class Flat: - def po(self: FlatPfLine, freq: str = "MS") -> pd.DataFrame: - if self.index.freq not in ["15T", "H"]: - raise ValueError( - "Only PfLines with (quarter)hourly values can be turned into peak and offpeak values." - ) - if freq not in ["MS", "QS", "AS"]: - raise ValueError( - f"Value of paramater ``freq`` must be one of {'MS', 'QS', 'AS'} (got: {freq})." - ) - - prods = ("peak", "offpeak") - - # Get values. - dfs = [] - for col in ("w", "p"): - if col in self.kind.available: - vals = convert.tseries2bpoframe(self.df[col], freq) - vals.columns = pd.MultiIndex.from_product([vals.columns, [col]]) - dfs.append(vals) - df = pd.concat(dfs, axis=1) - - # Add duration. - durs = duration_bpo(df.index) - durs.columns = pd.MultiIndex.from_product([durs.columns, ["duration"]]) - df = pd.concat([df, durs], axis=1) - - # Add additional values and sort. - for prod in prods: - if "q" in self.kind.available: - df[(prod, "q")] = df[(prod, "w")] * df[(prod, "duration")] - if "r" in self.kind.available: - df[(prod, "r")] = ( - df[(prod, "q")] * df[(prod, "p")] - ).pint.to_base_units() - colidx = pd.MultiIndex.from_product([prods, ("duration", *self.kind.available)]) - return df[colidx] - - def hedge_with( - self: FlatPfLine, - p: PricePfLine, - how: str = "val", - freq: str = "MS", - po: bool = None, - ) -> FlatPfLine: - if self.kind is Kind.PRICE: - raise ValueError( - "Cannot hedge a PfLine that does not contain volume information." - ) - if self.index.freq not in ["15T", "H", "D"]: - raise ValueError( - "Can only hedge a PfLine with daily or (quarter)hourly information." - ) - if po is None: - po = self.index.freq in ["15T", "H"] # default: peak/offpeak if possible - if po and self.index.freq not in ["15T", "H"]: - raise ValueError( - "Can only hedge with peak and offpeak products if PfLine has (quarter)hourly information." - ) - - wout, pout = hedge.hedge(self.w, p.p, how, freq, po) - df = pd.DataFrame({"w": wout, "p": pout}) - df["q"] = df["w"] * tools.duration.index(df.index) - df["r"] = df["p"] * df["q"] - constructor = classes.constructor(Structure.FLAT, Kind.COMPLETE) - return constructor(df) - # TODO: move to tools or elsewhere, and reference from there. - - -class Nested: - def po(self: NestedPfLine, freq: str = "MS") -> pd.DataFrame: - return self.flatten().po(freq) - - def hedge_with( - self: NestedPfLine, - p: PfLine, - how: str = "val", - freq: str = "MS", - po: bool = None, - ) -> FlatPfLine: - return self.flatten().hedge_with(p, how, freq, po) diff --git a/portfolyo/core/pfline/text.py b/portfolyo/core/pfline/text.py new file mode 100644 index 0000000..a8c196a --- /dev/null +++ b/portfolyo/core/pfline/text.py @@ -0,0 +1,135 @@ +from __future__ import annotations + +from typing import TYPE_CHECKING, Iterable + +import colorama +import pandas as pd + +from ..shared import text as shared_text +from . import classes +from .enums import Kind + +if TYPE_CHECKING: + from .classes import PfLine + + +def _what(pfl: PfLine) -> str: + return { + Kind.VOLUME: "volume", + Kind.PRICE: "price", + Kind.REVENUE: "revenue", + Kind.COMPLETE: "complete", + }[pfl.kind] + + +def _children_info(pfl: PfLine) -> Iterable[str]: + """Info about the children of the portfolio line.""" + childtxt = [f"'{name}' ({_what(child)})" for name, child in pfl.items()] + return [". Children: " + ("none" if not childtxt else ", ".join(childtxt))] + + +def _flatdatablock(pfl: PfLine, cols: Iterable[str], num_of_ts: int) -> Iterable[str]: + """The timestamps and data to be shown in a block, next to the tree.""" + # Obtain dataframe with index = timestamp as string and columns = one or more of 'qwpr'. + df = pfl.df[list(cols)] + # . (roughly) reduce number of timestamps to increase speed of conversion to strings. + if len(df.index) > num_of_ts * 2: + df = pd.concat([df.iloc[:num_of_ts, :], df.iloc[-num_of_ts:, :]], axis=0) + # . turn values into strings. + df = shared_text.df_with_strvalues(df) + # . turn index into strings and reduce to wanted number of datapoints + df = shared_text.df_with_strindex(df, num_of_ts) + # . column withs + col_space = {k: v for k, v in shared_text.COLWIDTHS.items() if k in df} + # Turn into list of strings. + df_str = df.to_string(col_space=col_space, index_names=False, header=False) + return df_str.split("\n") + + +def _childrenlines( + pfl: PfLine, cols: Iterable[str], num_of_ts: int, depth: int +) -> Iterable[str]: + """Treeview of only the children.""" + out = [] + if isinstance(pfl, classes.FlatPfLine): + return out + for c, (name, child) in enumerate(pfl.items()): + is_last, is_only = (c == len(pfl) - 1), (len(pfl) == 1) + out.extend( + nestedtree(name, child, cols, num_of_ts, depth + 1, is_last, is_only) + ) + return out + + +# Highest-level functions. + + +def nestedtree( + name: str, + pfl: PfLine, + cols: Iterable[str], + num_of_ts: int, + depth: int = 0, + is_last: bool = True, + is_only: bool = False, +) -> Iterable[str]: + """Treeview of the portfolio line.""" + out = [] + tree = shared_text.treedict(depth, is_last, isinstance(pfl, classes.NestedPfLine)) + # Name. + out.append(tree["00"] + tree["01"] + name) + # Top-level body block. + if is_only and depth > 0: + txtlines = ["(only contributor to parent data; has same values)"] + else: + txtlines = _flatdatablock(pfl, cols, num_of_ts) + for txtline in txtlines: + out.append(tree["10"] + tree["11"] + colorama.Style.RESET_ALL + txtline) + # Add children if any. + for txtline in _childrenlines(pfl, cols, num_of_ts, depth): + out.append(tree["10"] + txtline) + return out + + +def pfl_as_string(pfl: PfLine, flatten: bool, num_of_ts: int, color: bool) -> str: + lines = [f"PfLine object with {_what(pfl)} information."] + lines.extend(shared_text.index_info(pfl.index)) + if isinstance(pfl, classes.NestedPfLine): + lines.extend(_children_info(pfl)) + cols = pfl.kind.available + if flatten: + lines.extend(shared_text.dataheader(cols)) + lines.extend([""]) + lines.extend(_flatdatablock(pfl, cols, num_of_ts)) + else: + spaces = " " * (shared_text.MAX_DEPTH + 5) + lines.extend([spaces + txtline for txtline in shared_text.dataheader(cols)]) + lines.extend(nestedtree("(this pfline)", pfl, cols, num_of_ts)) + txt = "\n".join(lines) + return txt if color else shared_text.remove_color(txt) + + +class PfLineText: + def __repr__(self): + return pfl_as_string(self, True, 20, False) + + def print( + self: PfLine, flatten: bool = False, num_of_ts: int = 5, color: bool = True + ) -> None: + """Treeview of the portfolio line. + + Parameters + ---------- + flatten : bool, optional (default: False) + if True, show only the top-level (aggregated) information. + num_of_ts : int, optional (default: 5) + How many timestamps to show for each PfLine. + color : bool, optional (default: True) + Make tree structure clearer by including colors. May not work on all output + devices. + + Returns + ------- + None + """ + print(pfl_as_string(self, flatten, num_of_ts, color)) diff --git a/portfolyo/core/pfstate/arithmatic.py b/portfolyo/core/pfstate/arithmatic.py index b31f925..dec9526 100644 --- a/portfolyo/core/pfstate/arithmatic.py +++ b/portfolyo/core/pfstate/arithmatic.py @@ -2,7 +2,7 @@ from __future__ import annotations -from typing import TYPE_CHECKING, Any, Union +from typing import TYPE_CHECKING, Any import pandas as pd @@ -13,8 +13,6 @@ if TYPE_CHECKING: # needed to avoid circular imports from . import PfState -from ... import testing - class Prep: def assert_objects_indexcompatibility(fn): @@ -22,7 +20,7 @@ def assert_objects_indexcompatibility(fn): def wrapper(o1, o2, *args, **kwargs): try: - testing.assert_indices_compatible(o1.index, o2.index) + tools.testing.assert_indices_compatible(o1.index, o2.index) except AssertionError as e: raise NotImplementedError from e return fn(o1, o2, *args, **kwargs) @@ -38,9 +36,7 @@ def wrapper(pfs: PfState, other: Any): return wrapper - def _prep_data( - value, refindex: pd.DatetimeIndex - ) -> Union[pd.Series, PfLine, PfState]: + def _prep_data(value, refindex: pd.DatetimeIndex) -> pd.Series | PfLine | PfState: """Turn ``value`` into PfLine or PfState if possible. If not, turn into (normal or unit-aware) Series.""" # None. diff --git a/portfolyo/core/pfstate/pfstate.py b/portfolyo/core/pfstate/pfstate.py index cd634ac..0a0407a 100644 --- a/portfolyo/core/pfstate/pfstate.py +++ b/portfolyo/core/pfstate/pfstate.py @@ -12,11 +12,13 @@ import pandas as pd from ... import tools -from ..shared import ExcelClipboardOutput, PfStatePlot, PfStateText -from ..ndframelike import NDFrameLike from ..pfline import PfLine, create +from ..shared.excelclipboard import ExcelClipboardOutput +from ..shared.ndframelike import NDFrameLike from . import pfstate_helper from .arithmatic import PfStateArithmatic +from .plot import PfStatePlot +from .text import PfStateText @dataclasses.dataclass(frozen=True, repr=False) @@ -222,26 +224,56 @@ def asfreq(self, freq: str = "MS") -> PfState: # from ABC return PfState(offtakevolume, unsourcedprice, sourced) def hedge_of_unsourced( - self: PfState, how: str = "val", freq: str = "MS", po: bool = None + self: PfState, + how: str = "val", + peak_fn: tools.peakfn.PeakFunction = None, + freq: str = "MS", ) -> PfLine: """Hedge the unsourced volume, at unsourced prices in the portfolio. + Parameters + ---------- + how : str, optional (Default: 'val') + Hedge-constraint. 'vol' for volumetric hedge, 'val' for value hedge. + peak_fn : PeakFunction, optional (default: None) + To hedge with peak and offpeak products: function that returns boolean + Series indicating if timestamps in index lie in peak period. + If None, hedge with base products. + freq : {'D' (days), 'MS' (months, default), 'QS' (quarters), 'AS' (years)} + Frequency of hedging products. E.g. 'QS' to hedge with quarter products. + See also -------- - PfLine.hedge + PfLine.hedge_with + portfolyo.create_peakfn + portfolyo.germanpower_peakfn Returns ------- PfLine Hedge (volumes and prices) of unsourced volume. """ - return self.unsourced.volume.hedge_with(self.unsourcedprice, how, freq, po) + return self.unsourced.volume.hedge_with(self.unsourcedprice, how, peak_fn, freq) def source_unsourced( - self: PfState, how: str = "val", freq: str = "MS", po: bool = None + self: PfState, + how: str = "val", + peak_fn: tools.peakfn.PeakFunction = None, + freq: str = "MS", ) -> PfState: """Simulate PfState if unsourced volume is hedged and sourced at market prices. + Parameters + ---------- + how : str, optional (Default: 'val') + Hedge-constraint. 'vol' for volumetric hedge, 'val' for value hedge. + peak_fn : PeakFunction, optional (default: None) + To hedge with peak and offpeak products: function that returns boolean + Series indicating if timestamps in index lie in peak period. + If None, hedge with base products. + freq : {'D' (days), 'MS' (months, default), 'QS' (quarters), 'AS' (years)} + Frequency of hedging products. E.g. 'QS' to hedge with quarter products. + See also -------- .hedge_of_unsourced() @@ -249,9 +281,9 @@ def source_unsourced( Returns ------- PfState - which is fully hedged at time scales of `freq` or longer. + which is fully hedged at time scales of ``freq`` or longer. """ - tosource = self.hedge_of_unsourced(how, freq, po) + tosource = self.hedge_of_unsourced(how, peak_fn, freq) return self.__class__( self.offtakevolume, self.unsourcedprice, self.sourced + tosource ) diff --git a/portfolyo/core/pfstate/pfstate_helper.py b/portfolyo/core/pfstate/pfstate_helper.py index 550ad70..4500540 100644 --- a/portfolyo/core/pfstate/pfstate_helper.py +++ b/portfolyo/core/pfstate/pfstate_helper.py @@ -1,12 +1,11 @@ """Prepare/verify input data for PfState initialisation.""" - import warnings from typing import Any, Iterable import pandas as pd -from ... import testing, tools +from ... import tools from ..pfline import Kind, PfLine, create @@ -55,7 +54,7 @@ def prepare_unsourcedprice(unsourcedprice: Any, ref_idx: pd.DatetimeIndex) -> Pf ) unsourcedprice = unsourcedprice.price try: - testing.assert_indices_compatible(ref_idx, unsourcedprice.index) + tools.testing.assert_indices_compatible(ref_idx, unsourcedprice.index) except AssertionError as e: raise ValueError from e if len(tools.intersect.indices(ref_idx, unsourcedprice.index)) < len(ref_idx): @@ -74,7 +73,7 @@ def prepare_sourced(sourced: Any, ref_idx: pd.DatetimeIndex) -> PfLine: if sourced.kind is not Kind.COMPLETE: raise ValueError("Parameter ``sourced`` does not contain price and volume.") try: - testing.assert_indices_compatible(ref_idx, sourced.index) + tools.testing.assert_indices_compatible(ref_idx, sourced.index) except AssertionError as e: raise ValueError from e # HACK: Workaround for error in pandas intersection (#46702): diff --git a/portfolyo/core/pfstate/plot.py b/portfolyo/core/pfstate/plot.py new file mode 100644 index 0000000..975dac9 --- /dev/null +++ b/portfolyo/core/pfstate/plot.py @@ -0,0 +1,83 @@ +from __future__ import annotations + +from typing import TYPE_CHECKING + +import matplotlib +from matplotlib import pyplot as plt + +from ..pfline import Kind + +if TYPE_CHECKING: + from .pfstate import PfState + + +class PfStatePlot: + def plot(self: PfState, children: bool = False) -> plt.Figure: + """Plot the portfolio state. + + Parameters + ---------- + None + + Returns + ------- + plt.Figure + The figure object to which the series was plotted. + """ + gridspec = {"width_ratios": [1, 1, 1], "height_ratios": [4, 1]} + fig, (volumeaxes, priceaxes) = plt.subplots( + 2, 3, sharex=True, sharey="row", gridspec_kw=gridspec, figsize=(10, 6) + ) + + so, ss, usv = ( + -1 * self.offtakevolume, + self.sourced, + self.unsourced, + ) + + so.plot_to_ax(volumeaxes[0], children=children, kind=so.kind, labelfmt="") + ss.plot_to_ax(volumeaxes[1], children=children, kind=Kind.VOLUME, labelfmt="") + # Unsourced volume. + usv.plot_to_ax(volumeaxes[2], kind=Kind.VOLUME, labelfmt="") + # Procurement Price. + self.pnl_cost.plot_to_ax(priceaxes[0], kind=Kind.PRICE, labelfmt="") + self.sourced.plot_to_ax( + priceaxes[1], children=children, kind=Kind.PRICE, labelfmt="" + ) + # Unsourced price + self.unsourced.plot_to_ax(priceaxes[2], kind=Kind.PRICE, labelfmt="") + # Set titles. + volumeaxes[0].set_title("Offtake volume") + volumeaxes[1].set_title("Sourced volume") + volumeaxes[2].set_title("Unsourced volume") + priceaxes[0].set_title("Procurement price") + priceaxes[1].set_title("Sourced price") + priceaxes[2].set_title("Unsourced price") + + PfStatePlot.set_max_min_limits(volumeaxes) + PfStatePlot.set_max_min_limits(priceaxes) + + # Format tick labels. + formatter = matplotlib.ticker.FuncFormatter( + lambda x, p: "{:,.0f}".format(x).replace(",", " ") + ) + volumeaxes[0].yaxis.set_major_formatter(formatter) + priceaxes[0].yaxis.set_major_formatter(formatter) + # axes[3].yaxis.set_major_formatter(matplotlib.ticker.PercentFormatter(1.0)) + + # Set ticks. + for ax in volumeaxes: + ax.xaxis.set_tick_params(labeltop=False, labelbottom=True) + for ax in priceaxes: + ax.xaxis.set_tick_params(labeltop=False, labelbottom=False) + + fig.tight_layout() + return fig + + def set_max_min_limits(axes: plt.Axes): + limit = [ax.get_ylim() for ax in axes] + mins_vol, maxs_vol = zip(*limit) + + themin, themax = min(mins_vol), max(maxs_vol) + for ax in axes: + ax.set_ylim(themin * 1.1, themax * 1.1) diff --git a/portfolyo/core/pfstate/text.py b/portfolyo/core/pfstate/text.py new file mode 100644 index 0000000..0c70036 --- /dev/null +++ b/portfolyo/core/pfstate/text.py @@ -0,0 +1,42 @@ +from __future__ import annotations + +from typing import TYPE_CHECKING + +from ..pfline import text as pfline_text +from ..shared import text as shared_text + +if TYPE_CHECKING: + from .pfstate import PfState + + +def pfs_as_string(pfs: PfState, num_of_ts: int, color: bool) -> str: + lines = ["PfState object."] + lines.extend(shared_text.index_info(pfs.index)) + spaces = " " * (shared_text.MAX_DEPTH + 5) + lines.extend([spaces + txtline for txtline in shared_text.dataheader("wqpr")]) + lines.extend(pfline_text.nestedtree("offtake", pfs.offtakevolume, "wq", num_of_ts)) + lines.extend(pfline_text.nestedtree("pnl_cost", pfs.pnl_cost, "wqpr", num_of_ts)) + txt = "\n".join(lines) + return txt if color else shared_text.remove_color(txt) + + +class PfStateText: + def __repr__(self): + return pfs_as_string(self, 5, False) + + def print(self: PfState, num_of_ts: int = 5, color: bool = True) -> None: + """Treeview of the portfolio state. + + Parameters + ---------- + num_of_ts : int, optional (default: 5) + How many timestamps to show for each PfLine. + color : bool, optional (default: True) + Make tree structure clearer by including colors. May not work on all output + devices. + + Returns + ------- + None + """ + print(pfs_as_string(self, num_of_ts, color)) diff --git a/portfolyo/core/shared/__init__.py b/portfolyo/core/shared/__init__.py index 70a6808..8b13789 100644 --- a/portfolyo/core/shared/__init__.py +++ b/portfolyo/core/shared/__init__.py @@ -1,4 +1 @@ -from . import text -from .excelclipboard import ExcelClipboardOutput -from .plot import PfLinePlot, PfStatePlot -from .text import PfLineText, PfStateText + diff --git a/portfolyo/core/shared/excelclipboard.py b/portfolyo/core/shared/excelclipboard.py index 6dd81f0..80d77ad 100644 --- a/portfolyo/core/shared/excelclipboard.py +++ b/portfolyo/core/shared/excelclipboard.py @@ -5,25 +5,22 @@ from __future__ import annotations import functools -from typing import TYPE_CHECKING, Union import pandas as pd -if TYPE_CHECKING: # needed to avoid circular imports - from ..pfline import PfLine - from ..pfstate import PfState +from .ndframelike import NDFrameLike -def prepare_df(pfl_or_pfs: Union[PfLine, PfState]) -> pd.DataFrame: +def prepare_df(ndframelike: NDFrameLike) -> pd.DataFrame: """Prepare dataframe so it can easily be saved to excel or copied to clipboard.""" - return pfl_or_pfs.dataframe().pint.dequantify().tz_localize(None) + return ndframelike.dataframe().pint.dequantify().tz_localize(None) class ExcelClipboardOutput: # for both PfLine and PfState @functools.wraps(pd.DataFrame.to_clipboard) - def to_clipboard(self: Union[PfLine, PfState], *args, **kwargs) -> None: + def to_clipboard(self: NDFrameLike, *args, **kwargs) -> None: prepare_df(self).to_clipboard(*args, **kwargs) @functools.wraps(pd.DataFrame.to_excel) - def to_excel(self: Union[PfLine, PfState], *args, **kwargs) -> None: + def to_excel(self: NDFrameLike, *args, **kwargs) -> None: prepare_df(self).to_excel(*args, *kwargs) diff --git a/portfolyo/core/ndframelike.py b/portfolyo/core/shared/ndframelike.py similarity index 94% rename from portfolyo/core/ndframelike.py rename to portfolyo/core/shared/ndframelike.py index 60f4aa0..ad9e512 100644 --- a/portfolyo/core/ndframelike.py +++ b/portfolyo/core/shared/ndframelike.py @@ -14,7 +14,8 @@ class NDFrameLike(abc.ABC): # Abstract methods to be implemented by descendents. - @abc.abstractproperty + @property + @abc.abstractmethod def index(self) -> pd.DatetimeIndex: """Left timestamp of time period corresponding to each data row.""" ... @@ -36,13 +37,15 @@ def asfreq(self, freq: str = "MS") -> NDFrameLike: """ ... - @abc.abstractproperty + @property + @abc.abstractmethod def loc(self): """Create a new instance with a subset of the rows (selection by row label(s) or a boolean array.)""" ... - @abc.abstractproperty + @property + @abc.abstractmethod def slice(self): """Create a new instance with a subset of the rows. Different from loc since performs slicing with right-open interval.""" diff --git a/portfolyo/core/shared/text.py b/portfolyo/core/shared/text.py index 5945006..91332f8 100644 --- a/portfolyo/core/shared/text.py +++ b/portfolyo/core/shared/text.py @@ -1,17 +1,11 @@ """String representation of PfLine and PfState objects.""" -from __future__ import annotations -from typing import TYPE_CHECKING, Dict, Iterable +from typing import Dict, Iterable import colorama import pandas as pd from ... import tools -from .. import pfline - -if TYPE_CHECKING: - from ..pfline import PfLine - from ..pfstate import PfState COLORS = ["WHITE", "YELLOW", "CYAN", "GREEN", "RED", "BLUE", "MAGENTA", "BLACK"] TREECOLORS = [colorama.Style.BRIGHT + getattr(colorama.Fore, f) for f in COLORS] @@ -22,14 +16,14 @@ MAX_DEPTH = 6 -def _remove_color(text: str) -> str: +def remove_color(text: str) -> str: """Remove all color from text.""" for color in [colorama.Style.RESET_ALL, *TREECOLORS]: text = text.replace(color, "") return text -def _df_with_strvalues(df: pd.DataFrame, units: Dict = _UNITS): +def df_with_strvalues(df: pd.DataFrame, units: Dict = _UNITS): """Turn dataframe with single column names ('w', 'p', etc) into text strings.""" if isinstance(df.columns, pd.MultiIndex): raise ValueError("Dataframe must have single column index; has MultiIndex.") @@ -42,7 +36,7 @@ def _df_with_strvalues(df: pd.DataFrame, units: Dict = _UNITS): return pd.DataFrame(str_series) -def _df_with_strindex(df: pd.DataFrame, num_of_ts: int): +def df_with_strindex(df: pd.DataFrame, num_of_ts: int): """Turn datetime index of dataframe into text, and reduce number of rows.""" df.index = df.index.map( lambda ts: ts.strftime(DATETIMEFORMAT).ljust(COLWIDTHS["ts"]) @@ -54,16 +48,7 @@ def _df_with_strindex(df: pd.DataFrame, num_of_ts: int): return df -def _what(pfl: PfLine) -> str: - return { - pfline.Kind.VOLUME: "volume", - pfline.Kind.PRICE: "price", - pfline.Kind.REVENUE: "revenue", - pfline.Kind.COMPLETE: "complete", - }[pfl.kind] - - -def _index_info(i: pd.DatetimeIndex) -> Iterable[str]: +def index_info(i: pd.DatetimeIndex) -> Iterable[str]: """Info about the index.""" return [ f". Start: {i[0] } (incl) . Timezone : {i.tz or 'none'} ", @@ -72,13 +57,7 @@ def _index_info(i: pd.DatetimeIndex) -> Iterable[str]: ] -def _children_info(pfl: PfLine) -> Iterable[str]: - """Info about the children of the portfolio line.""" - childtxt = [f"'{name}' ({_what(child)})" for name, child in pfl.items()] - return [". Children: " + ("none" if not childtxt else ", ".join(childtxt))] - - -def _treedict(depth: int, is_last_child: bool, has_children: bool) -> Dict[str, str]: +def treedict(depth: int, is_last_child: bool, has_children: bool) -> Dict[str, str]: """Dictionary with 4 strings ('00', '01', '10', '11') that are used in drawing the tree.""" colors = {"0": TREECOLORS[depth], "1": TREECOLORS[depth + 1]} tree = {} @@ -96,153 +75,10 @@ def _treedict(depth: int, is_last_child: bool, has_children: bool) -> Dict[str, return tree -def _dataheader(cols: Iterable[str] = "wqpr", units: Dict = _UNITS) -> Iterable[str]: +def dataheader(cols: Iterable[str] = "wqpr", units: Dict = _UNITS) -> Iterable[str]: out = [" " * 25] * 2 # width of timestamps for c in cols: width = COLWIDTHS[c] + 1 out[0] += f"{c:>{width}}" out[1] += f"{units[c]:>{width}}" return out - - -# Main 3 functions that recursively call each other. - - -def _nestedtree( - name: str, - pfl: PfLine, - cols: Iterable[str], - num_of_ts: int, - depth: int = 0, - is_last: bool = True, - is_only: bool = False, -) -> Iterable[str]: - """Treeview of the portfolio line.""" - out = [] - tree = _treedict(depth, is_last, isinstance(pfl, pfline.NestedPfLine)) - # Name. - out.append(tree["00"] + tree["01"] + name) - # Top-level body block. - if is_only and depth > 0: - txtlines = ["(only contributor to parent data; has same values)"] - else: - txtlines = _flatdatablock(pfl, cols, num_of_ts) - for txtline in txtlines: - out.append(tree["10"] + tree["11"] + colorama.Style.RESET_ALL + txtline) - # Add children if any. - for txtline in _childrenlines(pfl, cols, num_of_ts, depth): - out.append(tree["10"] + txtline) - return out - - -def _flatdatablock(pfl: PfLine, cols: Iterable[str], num_of_ts: int) -> Iterable[str]: - """The timestamps and data to be shown in a block, next to the tree.""" - # Obtain dataframe with index = timestamp as string and columns = one or more of 'qwpr'. - df = pfl.df[list(cols)] - # . (roughly) reduce number of timestamps to increase speed of conversion to strings. - if len(df.index) > num_of_ts * 2: - df = pd.concat([df.iloc[:num_of_ts, :], df.iloc[-num_of_ts:, :]], axis=0) - # . turn values into strings. - df = _df_with_strvalues(df) - # . turn index into strings and reduce to wanted number of datapoints - df = _df_with_strindex(df, num_of_ts) - # . column withs - col_space = {k: v for k, v in COLWIDTHS.items() if k in df} - # Turn into list of strings. - df_str = df.to_string(col_space=col_space, index_names=False, header=False) - return df_str.split("\n") - - -def _childrenlines( - pfl: PfLine, cols: Iterable[str], num_of_ts: int, depth: int -) -> Iterable[str]: - """Treeview of only the children.""" - out = [] - if isinstance(pfl, pfline.FlatPfLine): - return out - for c, (name, child) in enumerate(pfl.items()): - is_last, is_only = (c == len(pfl) - 1), (len(pfl) == 1) - out.extend( - _nestedtree(name, child, cols, num_of_ts, depth + 1, is_last, is_only) - ) - return out - - -# Highest-level functions. - - -def pfl_as_string(pfl: PfLine, flatten: bool, num_of_ts: int, color: bool) -> str: - lines = [f"PfLine object with {_what(pfl)} information."] - lines.extend(_index_info(pfl.index)) - if isinstance(pfl, pfline.NestedPfLine): - lines.extend(_children_info(pfl)) - cols = pfl.kind.available - if flatten: - lines.extend(_dataheader(cols)) - lines.extend([""]) - lines.extend(_flatdatablock(pfl, cols, num_of_ts)) - else: - spaces = " " * (MAX_DEPTH + 5) - lines.extend([spaces + txtline for txtline in _dataheader(cols)]) - lines.extend(_nestedtree("(this pfline)", pfl, cols, num_of_ts)) - txt = "\n".join(lines) - return txt if color else _remove_color(txt) - - -def pfs_as_string(pfs: PfState, num_of_ts: int, color: bool) -> str: - lines = ["PfState object."] - lines.extend(_index_info(pfs.index)) - spaces = " " * (MAX_DEPTH + 5) - lines.extend([spaces + txtline for txtline in _dataheader("wqpr")]) - lines.extend(_nestedtree("offtake", pfs.offtakevolume, "wq", num_of_ts)) - lines.extend(_nestedtree("pnl_cost", pfs.pnl_cost, "wqpr", num_of_ts)) - txt = "\n".join(lines) - return txt if color else _remove_color(txt) - - -class PfLineText: - def __repr__(self): - return pfl_as_string(self, True, 20, False) - - def print( - self: PfLine, flatten: bool = False, num_of_ts: int = 5, color: bool = True - ) -> None: - """Treeview of the portfolio line. - - Parameters - ---------- - flatten : bool, optional (default: False) - if True, show only the top-level (aggregated) information. - num_of_ts : int, optional (default: 5) - How many timestamps to show for each PfLine. - color : bool, optional (default: True) - Make tree structure clearer by including colors. May not work on all output - devices. - - Returns - ------- - None - """ - print(pfl_as_string(self, flatten, num_of_ts, color)) - - -class PfStateText: - def __repr__(self): - return pfs_as_string(self, 5, False) - - def print(self: PfState, num_of_ts: int = 5, color: bool = True) -> None: - """Treeview of the portfolio state. - - Parameters - ---------- - num_of_ts : int, optional (default: 5) - How many timestamps to show for each PfLine. - color : bool, optional (default: True) - Make tree structure clearer by including colors. May not work on all output - devices. - - Returns - ------- - None - """ - print(pfs_as_string(self, num_of_ts, color)) diff --git a/portfolyo/dev/develop.py b/portfolyo/dev/develop.py index edc7658..9a2e6b0 100644 --- a/portfolyo/dev/develop.py +++ b/portfolyo/dev/develop.py @@ -3,7 +3,7 @@ """ import datetime as dt -from typing import Callable, Dict, Tuple, Union +from typing import Callable, Dict, Tuple import numpy as np import pandas as pd @@ -68,7 +68,7 @@ def _shorten_index_if_necessary(i, start_of_day) -> pd.DatetimeIndex: def get_value( name: str = None, has_unit: bool = True, magn: float = None, *, _seed: int = None -) -> Union[float, tools.unit.Q_]: +) -> float | tools.unit.Q_: """Get a single value.""" if _seed: np.random.seed(_seed) diff --git a/portfolyo/dev/mockup.py b/portfolyo/dev/mockup.py index bb1bed7..210e69f 100644 --- a/portfolyo/dev/mockup.py +++ b/portfolyo/dev/mockup.py @@ -1,11 +1,12 @@ """Create somewhat realistic curves.""" + from typing import Tuple import numpy as np import pandas as pd -from ..prices.utils import is_peak_hour from ..tools import unit # noqa # ensure we use current ureg +from ..tools.product import germanpower_peakfn def w_offtake( @@ -106,7 +107,7 @@ def p_marketprices( if i.freq == "15T": # repeat every value 4 times b = np.array([[bb, bb, bb, bb] for bb in b]).flatten() b = b[: len(i)] # slice in case i is very short - pa = np.convolve(-1 + 2 * is_peak_hour(i), b / sum(b), mode="same") + pa = np.convolve(-1 + 2 * germanpower_peakfn(i), b / sum(b), mode="same") else: pa = np.zeros(len(i)) # Values @@ -167,7 +168,7 @@ def group_and_calc(s): return s.resample(freq, group_keys=False).apply(calc_wp) if sin.index.freq in ["15T", "H"]: - is_peak = is_peak_hour(sin.index) # avoid running on each ts individually + is_peak = germanpower_peakfn(sin.index) # avoid running on each ts individually df = sin.groupby(is_peak, group_keys=False).apply(group_and_calc) else: df = group_and_calc(sin) diff --git a/portfolyo/prices/__init__.py b/portfolyo/prices/__init__.py deleted file mode 100644 index 99a9527..0000000 --- a/portfolyo/prices/__init__.py +++ /dev/null @@ -1 +0,0 @@ -from . import convert diff --git a/portfolyo/prices/convert.py b/portfolyo/prices/convert.py deleted file mode 100644 index 36fd045..0000000 --- a/portfolyo/prices/convert.py +++ /dev/null @@ -1,502 +0,0 @@ -""" -Convert volume [MW] and price [Eur/MWh] timeseries using base, peak, offpeak times. - -. Conversions without loss of information: -.. Base and peak values <--> Peak and offpeak values -.. Peak and offpeak values in dataframe with yearly/quarterly/monthly index <--> - peak and offpeak values in series with hourly (or shorter) index - -. Conversions with information loss: -.. Hourly varying values --> Peak and offpeak values. -""" - -import datetime as dt -import warnings -from typing import Iterable, Union - -import numpy as np -import pandas as pd - -from .. import tools -from . import utils - -Stamp = Union[dt.datetime, pd.Timestamp] -Value = Union[float, int, tools.unit.Q_] - -BPO = ("base", "peak", "offpeak") - - -def group_function(freq: str, po: bool = False): - """Function to group all rows that belong to same 'product'.""" - if freq == "MS": - if po: - return lambda ts: (ts.year, ts.month, utils.is_peak_hour(ts)) - else: - return lambda ts: (ts.year, ts.month) - elif freq == "QS": - if po: - return lambda ts: (ts.year, ts.quarter, utils.is_peak_hour(ts)) - else: - return lambda ts: (ts.year, ts.quarter) - elif freq == "AS": - if po: - return lambda ts: (ts.year, utils.is_peak_hour(ts)) - else: - return lambda ts: (ts.year,) - - raise ValueError( - f"Parameter ``freq`` must be one of 'MS', 'QS', 'AS'; got '{freq}'." - ) - - -def offpeak( - base: Union[Value, Iterable[Value]], - peak: Union[Value, Iterable[Value]], - ts_left: Union[Stamp, Iterable[Stamp]], - freq: str = None, -) -> Union[Value, pd.Series]: - """Offpeak value, given base and peak value and time interval they apply to. - - Parameters - ---------- - base : Union[Value, Iterable[Value]] - Base value - peak : Union[Value, Iterable[Value]] - Peak value - ts_left : Union[Stamp, Iterable[Stamp]] - (Left-bound) timestamp of period. - freq : {'MS' (month), 'QS' (quarter), 'AS' (year)}, optional - Length of delivery period. If none specified, use ``.freq`` attribute of - ``ts_left``. - - Returns - ------- - offpeak value(s) - """ - fr = utils.duration_bpo(ts_left, freq) # Series or DataFrame - b, p, o = fr["base"], fr["peak"], fr["offpeak"] - if isinstance(fr, pd.DataFrame): - b, p, o = b.values, p.values, o.values - return (base * b - peak * p) / o - - -def peak( - base: Union[Value, Iterable[Value]], - offpeak: Union[Value, Iterable[Value]], - ts_left: Union[Stamp, Iterable[Stamp]], - freq: str = None, -) -> Union[Value, pd.Series]: - """Peak value, given base and offpeak value and time interval they apply to. - - See also - -------- - .offpeak - """ - fr = utils.duration_bpo(ts_left, freq) # Series or DataFrame - b, p, o = fr["base"], fr["peak"], fr["offpeak"] - if isinstance(fr, pd.DataFrame): - b, p, o = b.values, p.values, o.values - - return (base * b - offpeak * o) / p - - -def base( - peak: Union[Value, Iterable[Value]], - offpeak: Union[Value, Iterable[Value]], - ts_left: Union[Stamp, Iterable[Stamp]], - freq: str = None, -) -> Union[Value, pd.Series]: - """Base value, given peak and offpeak value and time interval they apply to. - - See also - -------- - .offpeak - """ - fr = utils.duration_bpo(ts_left, freq) # Series or DataFrame - b, p, o = fr["base"], fr["peak"], fr["offpeak"] - if isinstance(fr, pd.DataFrame): - b, p, o = b.values, p.values, o.values - return (peak * p + offpeak * o) / b - - -def complete_bpoframe(partial_bpoframe: pd.DataFrame, prefix: str = "") -> pd.DataFrame: - """ - Add missing information to bpoframe (Dataframe with base, peak, offpeak values). - - Parameters - ---------- - partial_bpoframe : DataFrame - Dataframe with at least 2 columns with names in {'base', 'peak', 'offpeak'}. - Datetimeindex with frequency in {'MS', 'QS', 'AS'}. - prefix : str, optional (default: '') - If specified, add this to the column names to search for in the provided dataframe - (and to the column names in the returned dataframes). - - Returns - ------- - DataFrame - If exactly one of {'base', 'peak', 'offpeak'} is missing, calculate value - of missing column from other two columns and return complete dataframe. - - Notes - ----- - Can only be used for values that are 'averagable' over a time period, like power [MW] - and price [Eur/MWh]. Not for e.g. energy [MWh], revenue [Eur], and duration [h]. - - In: - - peak offpeak - ts_left - 2020-01-01 00:00:00+01:00 42.530036 30.614701 - 2020-02-01 00:00:00+01:00 33.295167 15.931557 - ... ... - 2020-11-01 00:00:00+01:00 49.110873 33.226004 - 2020-12-01 00:00:00+01:00 57.872246 35.055449 - 12 rows × 2 columns - - Out: - - base peak offpeak - ts_left - 2020-01-01 00:00:00+01:00 35.034906 42.530036 30.614701 - 2020-02-01 00:00:00+01:00 21.919009 33.295167 15.931557 - ... ... ... - 2020-11-01 00:00:00+01:00 38.785706 49.110873 33.226004 - 2020-12-01 00:00:00+01:00 43.519745 57.872246 35.055449 - 12 rows × 3 columns - """ - col2bpo = {f"{prefix}{bpo}": bpo for bpo in BPO} - series = {col2bpo[c]: s for c, s in partial_bpoframe.iteritems() if c in col2bpo} - - if len(series) > 2: # i.e., 3 - return partial_bpoframe - if len(series) < 2: - raise ValueError( - f"At least 2 of {', '.join(col2bpo.keys())} must be present as columns." - ) - df = partial_bpoframe.copy() - durations = utils.duration_bpo(df.index) - b, p, o = durations["base"], durations["peak"], durations["offpeak"] - if "offpeak" not in series: - df[f"{prefix}offpeak"] = (series["base"] * b - series["peak"] * p) / o - elif "peak" not in series: - df[f"{prefix}peak"] = (series["base"] * b - series["offpeak"] * o) / p - else: - df[f"{prefix}base"] = (series["peak"] * p + series["offpeak"] * o) / b - - return df[col2bpo.keys()] # correct order - - -def tseries2singlebpo(s: pd.Series, prefix: str = "") -> pd.Series: - """ - Aggregate timeseries with varying values to a single base, peak and offpeak value. - - Parameters - ---------- - s : Series - Timeseries with hourly or quarterhourly frequency. - prefix : str, optional (default: '') - If specified, add this to the index of the returned Series. - - Returns - ------- - Series - Index: base, peak, offpeak. - - Notes - ----- - Can only be used for values that are 'averagable' over a time period, like power [MW] - and price [Eur/MWh]. Not for e.g. energy [MWh], revenue [Eur], and duration [h]. - - In: - - ts_left - 2020-01-01 00:00:00+01:00 41.88 - 2020-01-01 01:00:00+01:00 38.60 - 2020-01-01 02:00:00+01:00 36.55 - ... - 2020-12-31 21:00:00+01:00 52.44 - 2020-12-31 22:00:00+01:00 51.86 - 2020-12-31 23:00:00+01:00 52.26 - Freq: H, Name: p, Length: 8784, dtype: float64 - - Out: - - base 31.401369 - peak 51.363667 - offpeak 20.311204 - dtype: float64 - """ - # Handle possible units. - sin, units = (s.pint.magnitude, s.pint.units) if hasattr(s, "pint") else (s, None) - - # Do calculations. Use normal mean, because all rows have same duration. - is_peak = utils.is_peak_hour(sin.index) - sout = pd.Series( - { - f"{prefix}base": sin.mean(), - f"{prefix}peak": sin[is_peak].mean(), - f"{prefix}offpeak": sin[~is_peak].mean(), - } - ) - - # Handle possible units. - if units is not None: - sout = sout.astype(f"pint[{units}]") - return sout - - -def tseries2bpoframe(s: pd.Series, freq: str = "MS", prefix: str = "") -> pd.DataFrame: - """ - Aggregate timeseries with varying values to a dataframe with base, peak and offpeak - timeseries, grouped by provided time interval. - - Parameters - ---------- - s : Series - Timeseries with hourly or quarterhourly frequency. - freq : {'MS' (month, default) 'QS' (quarter), 'AS' (year)} - Target frequency. - prefix : str, optional (default: '') - If specified, add this to the column names of the returned dataframe. - - Returns - ------- - DataFrame - Dataframe with base, peak and offpeak values (as columns). Index: downsampled - timestamps at provided frequency. - - Notes - ----- - Can only be used for values that are 'averagable' over a time period, like power [MW] - and price [Eur/MWh]. Not for e.g. energy [MWh], revenue [Eur], and duration [h]. - - In: - - ts_left - 2020-01-01 00:00:00+01:00 41.88 - 2020-01-01 01:00:00+01:00 38.60 - 2020-01-01 02:00:00+01:00 36.55 - ... - 2020-12-31 21:00:00+01:00 52.44 - 2020-12-31 22:00:00+01:00 51.86 - 2020-12-31 23:00:00+01:00 52.26 - Freq: H, Name: p, Length: 8784, dtype: float64 - - Out: - - base peak offpeak - ts_left - 2020-01-01 00:00:00+01:00 35.034906 42.530036 30.614701 - 2020-02-01 00:00:00+01:00 21.919009 33.295167 15.931557 - ... ... ... - 2020-11-01 00:00:00+01:00 38.785706 49.110873 33.226004 - 2020-12-01 00:00:00+01:00 43.519745 57.872246 35.055449 - 12 rows × 3 columns - """ - if freq not in ("MS", "QS", "AS"): - raise ValueError( - f"Parameter ``freq`` must be one of 'MS', 'QS', 'AS'; got '{freq}'." - ) - - # Remove partial data - s = tools.trim.frame(s, freq) - - # Handle possible units. - sin, units = (s.pint.magnitude, s.pint.units) if hasattr(s, "pint") else (s, None) - - # Do calculations. Use normal mean, because all rows have same duration. - sout = sin.resample(freq, group_keys=True).apply( - lambda s: tseries2singlebpo(s, prefix) - ) - - # Handle possible units. - if units is not None: - sout = sout.astype(f"pint[{units}]") - return sout.unstack() - - -def bpoframe2tseries( - bpoframe: pd.DataFrame, freq: str = "H", prefix: str = "" -) -> pd.Series: - """ - Convert a dataframe with base, peak and/or offpeak values, to a single (quarter)hourly - timeseries. - - Parameters - ---------- - bpoframe : DataFrame - Dataframe with values. Columns must include at least 2 of {'peak', 'offpeak', - 'base'}. Datetimeindex with frequency in {'MS', 'QS', 'AS'}. - freq : {'H' (hour, default) '15T' (quarterhour)} - Target frequency. - prefix : str, optional (default: '') - If specified, add this to the column names to search for in the provided dataframe. - - Returns - ------- - Series - Timeseries with values as provided in `bpoframe`. - - Notes - ----- - Can only be used for values that are 'averagable' over a time period, like power [MW] - and price [Eur/MWh]. Not for e.g. energy [MWh], revenue [Eur], and duration [h]. - - In: - - peak offpeak - ts_left - 2020-01-01 00:00:00+01:00 42.530036 30.614701 - 2020-02-01 00:00:00+01:00 33.295167 15.931557 - ... ... - 2020-11-01 00:00:00+01:00 49.110873 33.226004 - 2020-12-01 00:00:00+01:00 57.872246 35.055449 - 12 rows × 2 columns - - Out: - - ts_left - 2020-01-01 00:00:00+01:00 30.614701 - 2020-01-01 01:00:00+01:00 30.614701 - 2020-01-01 02:00:00+01:00 30.614701 - ... - 2020-12-31 21:00:00+01:00 35.055449 - 2020-12-31 22:00:00+01:00 35.055449 - 2020-12-31 23:00:00+01:00 35.055449 - Freq: H, Length: 8784, dtype: float64 - """ - if freq not in ("H", "15T"): - raise ValueError(f"Parameter ``freq`` must be 'H' or '15T'; got '{freq}'.") - - df = bpoframe.rename({f"{prefix}{bpo}": bpo for bpo in BPO}, axis=1) # remove prefx - df = complete_bpoframe(df) # make sure we have peak and offpeak columns - df = tools.changefreq.averagable(df[["peak", "offpeak"]], freq) - df["ispeak"] = utils.is_peak_hour(df.index) - - return df["offpeak"].where(df["ispeak"], df["peak"]) - - -def tseries2tseries(s: pd.Series, freq: str = "MS") -> pd.Series: - """ - Transform timeseries (with possibly variable values) to one with (at certain - frequency) uniform peak and offpeak values. - - Parameters - ---------- - s : Series - Timeseries with hourly or quarterhourly frequency. - freq : {'MS' (month, default) 'QS' (quarter), 'AS' (year)} - Target frequency within which peak and offpeak values will be uniform. - - Returns - ------- - Series - Timeseries where each peak hour within the target frequency has the same - value. Idem for offpeak hours. Index: as original series. - - Notes - ----- - Can only be used for values that are 'averagable' over a time period, like power [MW] - and price [Eur/MWh]. Not for e.g. energy [MWh], revenue [Eur], and duration [h]. - - In: - - ts_left - 2020-01-01 00:00:00+01:00 41.88 - 2020-01-01 01:00:00+01:00 38.60 - 2020-01-01 02:00:00+01:00 36.55 - ... - 2020-12-31 21:00:00+01:00 52.44 - 2020-12-31 22:00:00+01:00 51.86 - 2020-12-31 23:00:00+01:00 52.26 - Freq: H, Name: p, Length: 8784, dtype: float64 - - Out: - - ts_left - 2020-01-01 00:00:00+01:00 30.614701 - 2020-01-01 01:00:00+01:00 30.614701 - 2020-01-01 02:00:00+01:00 30.614701 - ... - 2020-12-31 21:00:00+01:00 35.055449 - 2020-12-31 22:00:00+01:00 35.055449 - 2020-12-31 23:00:00+01:00 35.055449 - Freq: H, Name: p, Length: 8784, dtype: float64 - """ - if s.index.freq not in ("H", "15T"): - raise ValueError( - f"Frequency of provided timeseries must be hourly or quarterhourly; got '{s.index.freq}'." - ) - - # Handle possible units. - sin, units = (s.pint.magnitude, s.pint.units) if hasattr(s, "pint") else (s, None) - - # Return normal mean, because all rows have same duration. - sout = sin.groupby(group_function(freq, True)).transform(np.mean) - - # Handle possible units. - if units is not None: - sout = sout.astype(f"pint[{units}]") - return sout - - -def bpoframe2bpoframe( - bpoframe: pd.DataFrame, freq: str = "AS", prefix: str = "" -) -> pd.DataFrame: - """ - Convert a dataframe with base, peak and/or offpeak values to a similar dataframe - with a different frequency. - - Parameters - ---------- - bpoframe : DataFrame - Columns must include at least 2 of {'peak', 'offpeak', 'base'}. Datetimeindex - with frequency in {'MS', 'QS', 'AS'}. - freq : {'MS' (month), 'QS' (quarter), 'AS' (year, default)} - Target frequency. - prefix : str, optional (default: '') - If specified, add this to the column names to search for in the provided dataframe - (and to the column names in the returned dataframes). - - Returns - ------- - DataFrame - Dataframe with base, peak and offpeak values (as columns). Index: timestamps at - provided frequency. - - Notes - ----- - Can only be used for values that are 'averagable' over a time period, like power [MW] - and price [Eur/MWh]. Not for e.g. energy [MWh], revenue [Eur], and duration [h]. - - In: - - base peak offpeak - ts_left - 2020-01-01 00:00:00+01:00 35.034906 42.530036 30.614701 - 2020-02-01 00:00:00+01:00 21.919009 33.295167 15.931557 - ... ... ... - 2020-11-01 00:00:00+01:00 38.785706 49.110873 33.226004 - 2020-12-01 00:00:00+01:00 43.519745 57.872246 35.055449 - 12 rows × 3 columns - - Out: - - base peak offpeak - ts_left - 2020-01-01 00:00:00+01:00 30.490036 38.003536 26.312894 - 2020-04-01 00:00:00+02:00 25.900919 35.295167 20.681892 - 2020-07-01 00:00:00+02:00 32.706785 44.033511 26.371498 - 2020-10-01 00:00:00+02:00 39.455197 54.468722 31.063728 - """ - if freq not in ("MS", "QS", "AS"): - raise ValueError( - f"Parameter ``freq`` must be one of 'MS', 'QS', 'AS'; got {freq}." - ) - if tools.freq.up_or_down(bpoframe.index.freq, freq) == 1: - warnings.warn( - "This conversion includes upsampling, e.g. from yearly to monthly values." - ) - - return tseries2bpoframe(bpoframe2tseries(bpoframe, "H", prefix), freq, prefix) diff --git a/portfolyo/prices/hedge.py b/portfolyo/prices/hedge.py deleted file mode 100644 index 30e9f7e..0000000 --- a/portfolyo/prices/hedge.py +++ /dev/null @@ -1,146 +0,0 @@ -"""Functionality to hedge an offtake profile with a price profile.""" - -from typing import Tuple - -import pandas as pd - -from .. import tools -from . import convert, utils - - -def _hedge(df: pd.DataFrame, how: str, po: bool) -> pd.Series: - """ - Hedge a power timeseries, for given price timeseries. - - Parameters - ---------- - df : pd.DataFrame - with 'w' [MW] and 'p' [Eur/MWh] columns. - how : str. One of {'vol', 'val'} - Hedge-constraint. 'vol' for volumetric hedge, 'val' for value hedge. - po : bool - Set to True to split hedge into peak and offpeak values. (Only sensible - for timeseries with freq=='H' or shorter.) - - Returns - ------- - pd.Series - With float values or quantities. - If po==False, Series with index ['w', 'p'] (power and price in entire period). - If po==True, Series with multiindex ['peak', 'offpeak'] x ['w', 'p'] (power and - price, split between peak and offpeak intervals in the period.) - - Notes - ----- - If the index of `df` doesn't have a .duration attribute, all rows are assumed to be - of equal duration. - """ - - # Split into peak and offpeak. - - if po: - apply_f = lambda df: _hedge(df, how, po=False) # noqa - # s = df.groupby(utils.is_peak_hour).apply(apply_f) # calls group_f on EACH ts - is_peak_hour = utils.is_peak_hour(df.index) - s = df.groupby(is_peak_hour).apply(apply_f) # calls group_f on index - return s.rename(index={True: "peak", False: "offpeak"}).stack() - - # Don't split into peak and offpeak. - - if df.index.freq: - # Use magnitude only, so that, if w and p are float series, their return - # series are also floats (instead of dimensionless Quantities). - df["dur"] = df.index.duration.pint.m - else: - df["dur"] = 1 - - # Get single power and price values. - p_hedge = (df.p * df.dur).sum() / df.dur.sum() - if how == "vol": # volume hedge - # solve for w_hedge: sum (w * duration) == w_hedge * sum (duration) - w_hedge = (df.w * df.dur).sum() / df.dur.sum() - elif how == "val": # value hedge - # solve for w_hedge: sum (w * duration * p) == w_hedge * sum (duration * p) - w_hedge = (df.w * df.dur * df.p).sum() / (df.dur * df.p).sum() - else: - raise ValueError(f"Parameter `how` must be 'val' or 'vol'; got {how}.") - return pd.Series({"w": w_hedge, "p": p_hedge}) - - -def hedge( - w: pd.Series, - p: pd.Series, - how: str = "val", - freq: str = "MS", - po: bool = None, -) -> Tuple[pd.Series]: - """ - Make hedge of power timeseries, for given price timeseries. - - Parameters - ---------- - w : Series - Power timeseries with hourly or quarterhourly frequency. - p: Series - Price timeseries with same frequency. - how : str, optional (Default: 'val') - Hedge-constraint. 'vol' for volumetric hedge, 'val' for value hedge. - freq : {'D' (days), 'MS' (months, default), 'QS' (quarters), 'AS' (years)} - Frequency of hedging products. E.g. 'QS' to hedge with quarter products. - po : bool, optional - Type of hedging products. Set to True to split hedge into peak and offpeak. - (Default: split if volume timeseries has hourly values or shorter and hedging - products have monthly frequency or longer.) - - Returns - ------- - Tuple[pd.Series] - Power timeseries and price timeseries with hedge of `w` (with same index). - """ - if w.index.freq is None or p.index.freq is None: - raise ValueError( - "Parameters ``w`` and ``p`` must have a DatetimeIndex with a set frequency attribute." - ) - if w.index.freq != p.index.freq: - raise ValueError( - f"Parameters ``w`` and ``p`` must have same frequency; got {w.index.freq} and {p.index.freq}." - ) - if w.index.freq not in ["15T", "H", "D"]: - raise ValueError("Can only hedge a timeseries with daily (or shorter) values.") - if freq not in ["D", "MS", "QS", "AS"]: - raise ValueError( - f"Parameter ``freq`` must be one of 'D', 'MS', 'QS', 'AS'; got '{freq}'." - ) - if po is None: # default: split in peak/offpeak if frequency is short enough - po = w.index.freq in ["15T", "H"] and freq != "D" - if po and not (w.index.freq in ["15T", "H"] and freq != "D"): - raise ValueError( - "Split into peak and offpeak only possible when (a) hedging with monthly (or " - "longer) products, and (b) if timeseries have hourly (or shorter) values." - ) - - # Handle possible units. - win, wunits = (w.pint.magnitude, w.pint.units) if hasattr(w, "pint") else (w, None) - pin, punits = (p.pint.magnitude, p.pint.units) if hasattr(p, "pint") else (p, None) - - # Only keep full periods of overlapping timestamps. - i = win.index.intersection(pin.index) - df = tools.trim.frame(pd.DataFrame({"w": win, "p": pin}).loc[i, :], freq) - if len(df) == 0: - return df["w"], df["p"] # No full periods; don't do hedge; return empty series - - # Do actual hedge. - group_f = convert.group_function(freq, po) - grouped_i = pd.MultiIndex.from_arrays(group_f(df.index)) # calls group_f on index - apply_f = lambda df: _hedge(df, how, False) # noqa - # vals = df.groupby(group_f).apply(apply_f) # calls group_f on EACH ts - vals = df.groupby(grouped_i).apply(apply_f) - vals.index = pd.MultiIndex.from_tuples(vals.index) - for c in ["w", "p"]: - df[c] = df[c].groupby(grouped_i).transform(lambda gr: vals.loc[gr.name, c]) - - # Handle possible units. - if wunits or punits: - df = df.astype({"w": f"pint[{wunits:P}]", "p": f"pint[{punits:P}]"}) - - return df["w"], df["p"] diff --git a/portfolyo/prices/utils.py b/portfolyo/prices/utils.py deleted file mode 100644 index e872d42..0000000 --- a/portfolyo/prices/utils.py +++ /dev/null @@ -1,190 +0,0 @@ -"""Utilities for calculating / manipulating price data.""" - -import datetime as dt -import warnings -from typing import Tuple, Union - -import pandas as pd - -from .. import tools -from ..tools.unit import Q_ - -german_peakperiod = tools.peakperiod.factory(dt.time(8), dt.time(20), [1, 2, 3, 4, 5]) - - -def is_peak_hour( - ts_left: Union[pd.Timestamp, pd.DatetimeIndex] -) -> Union[bool, pd.Series]: - """ - Boolean value indicating if a timestamp is in a peak period or not. - - Parameters - ---------- - ts_left : Union[pd.Timestamp, pd.DatetimeIndex] - Timestamp(s) for which to calculate if it falls in a peak period. - - More precisely: if timestamp lies in one of the (left-closed) time intervals that - define the peak hour periods. - - Returns - ------- - bool (if ts_left is Timestamp) or Series (if ts_left is DatetimeIndex). - """ - if isinstance(ts_left, pd.Timestamp): - warnings.warn( - "Calling this function with a single timestamp is deprecated and will be removed in a future version", - FutureWarning, - ) - return is_peak_hour(pd.DatetimeIndex([ts_left], freq="15T"))[0] - - return german_peakperiod(ts_left) - - -def duration_base( - ts_left: Union[pd.Timestamp, pd.DatetimeIndex], freq: str = None -) -> Union[Q_, pd.Series]: - """ - Total duration of base periods in a timestamp. - - See also - -------- - .tools.duration - """ - if isinstance(ts_left, pd.DatetimeIndex): - hours = (duration_base(ts, freq) for ts in ts_left) # has unit - return pd.Series(hours, ts_left, dtype="pint[h]") - - # Assume it's a single timestamp. - return tools.duration.stamp(ts_left, freq) - - -def duration_peak( - ts_left: Union[pd.Timestamp, pd.DatetimeIndex], freq: str = None -) -> Union[Q_, pd.Series]: - """ - Total duration of peak periods in a timestamp. - - See also - -------- - .tools.duration - """ - if freq is None: - freq = ts_left.freq - - if freq not in tools.freq.FREQUENCIES: - raise ValueError( - f"Parameter ``freq`` must be one of {', '.join(tools.freq.FREQUENCIES)}; got {freq}." - ) - - if isinstance(ts_left, pd.DatetimeIndex): - if freq in ["15T", "H"]: - return tools.duration.index(ts_left, freq) * is_peak_hour(ts_left) - elif freq == "D": - hours = ts_left.map(lambda ts: ts.isoweekday() < 6) * 12.0 # no unit - return pd.Series(hours, ts_left, dtype="pint[h]") # works even during dst - else: - # dur = ts_left.map(duration_peak) # crashes due to behaviour of .map method - hours = (duration_peak(ts, freq) for ts in ts_left) # has unit - return pd.Series(hours, ts_left, dtype="pint[h]") - - # Assume it's a single timestamp. - if freq in ["15T", "H"]: - return tools.duration.stamp(ts_left, freq) * is_peak_hour(ts_left) - elif freq == "D": - return Q_(0.0 if ts_left.isoweekday() >= 6 else 12.0, "h") - else: - ts_right = tools.right.stamp(ts_left, freq) - days = pd.date_range(ts_left, ts_right, freq="D", inclusive="left") - return Q_(sum(days.map(lambda day: day.isoweekday() < 6) * 12.0), "h") - - -def duration_offpeak( - ts_left: Union[pd.Timestamp, pd.DatetimeIndex], freq: str = None -) -> Union[Q_, pd.Series]: - """ - Total duration of offpeak periods in a timestamp. - - See also - -------- - .tools.duration - """ - return duration_base(ts_left, freq) - duration_peak(ts_left, freq) - - -def duration_bpo( - ts_left: Union[pd.Timestamp, pd.DatetimeIndex], freq: str = None -) -> Union[pd.Series, pd.DataFrame]: - """ - Duration of base, peak and offpeak periods in a timestamp. - - Parameters - ---------- - ts_left : Union[pd.Timestamp, pd.DatetimeIndex] - Timestamp(s) for which to calculate the base, peak and offpeak durations. - freq : {'15T' (quarter-hour), 'H' (hour), 'D' (day), 'MS' (month), 'QS' (quarter), - 'AS' (year)}, optional - Frequency to use in determining the durations. - If none specified, use ``.freq`` attribute of ``ts_left``. - - Returns - ------- - Series (if ts_left is Timestamp) or DataFrame (if ts_left is DatetimeIndex). - """ - if freq is None and isinstance(ts_left, pd.DatetimeIndex): - freq = ts_left.freq - - b = duration_base(ts_left, freq) # quantity or pint-series - p = duration_peak(ts_left, freq) # quantity or pint-series - - if isinstance(ts_left, pd.DatetimeIndex): - return pd.DataFrame({"base": b, "peak": p, "offpeak": b - p}, dtype="pint[h]") - - # Assume it's a single timestamp. - return pd.Series({"base": b, "peak": p, "offpeak": b - p}, dtype="pint[h]") - - -def delivery_period( - ts_trade: pd.Timestamp, - period_type: str = "m", - front_count: int = 1, - start_of_day: dt.time = None, -) -> Tuple[pd.Timestamp]: - """ - Find start and end of delivery period. - - Parameters - ---------- - ts_trade : pd.Timestamp - Trading day. The time part of the timestamp is ignored and assumed to be after - the start_of_day of the market. - period_type : {'d' (day), 'm' (month, default), 'q' (quarter), 's' (season), 'a' (year)} - front_count : int, optional (default: 1) - 1 = next/coming (full) period, 2 = period after that, etc. - start_of_day : dt.time, optional (default: midnight) - Start of day for delivery periods with a longer-than-daily frequency. - - Returns - ------- - (pd.Timestamp, pd.Timestamp) - Left (inclusive) and right (exclusive) timestamp of delivery period. - """ - ts_trade = ts_trade.replace(hour=23, minute=59) # ensure after start_of_day - if period_type in ["m", "q", "a"]: - freq = period_type.upper() + "S" - ts_left = tools.floor.stamp(ts_trade, freq, front_count, start_of_day) - ts_right = tools.right.stamp(ts_left, freq) - elif period_type == "d": - ts_left = tools.floor.stamp(ts_trade, "D", front_count, start_of_day) - ts_right = tools.right.stamp(ts_left, "D") - elif period_type == "s": - front_count_q = front_count * 2 - 1 - ts_left, ts_right = delivery_period(ts_trade, "q", front_count_q, start_of_day) - ts_right = tools.right.stamp(ts_right, "QS") # make 6 months long - if ts_left.month % 2 == 1: # season must start on even month - ts_left = tools.right.stamp(ts_left, "QS") - ts_right = tools.right.stamp(ts_right, "QS") - else: - raise ValueError( - f"Parameter ``period_type`` must be one of 'd', 'm', 'q', 's', 'a'; got '{period_type}'." - ) - return ts_left, ts_right diff --git a/portfolyo/testing/__init__.py b/portfolyo/testing/__init__.py deleted file mode 100644 index 98cdf23..0000000 --- a/portfolyo/testing/__init__.py +++ /dev/null @@ -1,7 +0,0 @@ -from .testing import ( - assert_frame_equal, - assert_index_equal, - assert_indices_compatible, - assert_series_equal, - assert_value_equal, -) diff --git a/portfolyo/tools/__init__.py b/portfolyo/tools/__init__.py index 8e6f519..694d064 100644 --- a/portfolyo/tools/__init__.py +++ b/portfolyo/tools/__init__.py @@ -1,6 +1,6 @@ """General tools; mainly to use on pandas objects.""" -# Unsure why this is needed, but remove and can no longer import portfolyo +# Unsure why this is needed. from . import ( ceil, changefreq, @@ -9,16 +9,23 @@ floor, frame, freq, + hedge, intersect, isboundary, leftandright, - peakperiod, + peakconvert, + peakfn, + product, right, righttoleft, + round, + stamp, standardize, + startofday, trim, + types, tzone, unit, + visualize, wavg, - startofday, ) diff --git a/portfolyo/tools/changefreq.py b/portfolyo/tools/changefreq.py index 72d3477..dd6a0f9 100644 --- a/portfolyo/tools/changefreq.py +++ b/portfolyo/tools/changefreq.py @@ -1,14 +1,15 @@ """Functions to change frequency of a pandas dataframe.""" -from typing import Any, Union +from typing import Any import pandas as pd - -from . import startofday as tools_startofday +from . import duration as tools_duration from . import freq as tools_freq from . import right as tools_right +from . import startofday as tools_startofday from . import trim as tools_trim +from .types import Series_or_DataFrame def _astype(s: pd.Series, dtype: Any) -> pd.Series: @@ -28,9 +29,11 @@ def _emptyseries(s_ref: pd.Series, freq) -> pd.Series: def _downsample_avgable(s: pd.Series, freq: str) -> pd.Series: """Downsample averagble series.""" # For averagable series: first make summable. - summable = s.mul(s.index.duration, axis=0) # now has a pint dtype + duration = tools_duration.frame(s) + summable = s.mul(duration, axis=0) # now has a pint dtype summable2 = _downsample_summable(summable, freq) - s2 = summable2.div(summable2.index.duration, axis=0) + duration2 = tools_duration.frame(summable2) + s2 = summable2.div(duration2, axis=0) s2 = _astype(s2, s.dtype) return s2.rename(s.name) @@ -69,9 +72,11 @@ def _downsample_summable(s: pd.Series, freq: str) -> pd.Series: def _upsample_summable(s: pd.Series, freq: str) -> pd.Series: """Upsample summable series.""" # For summable series: first make averagable. - avgable = s.div(s.index.duration, axis=0) # now has a pint dtype + duration = tools_duration.frame(s) + avgable = s.div(duration, axis=0) # now has a pint dtype avgable2 = _upsample_avgable(avgable, freq) - s2 = avgable2.mul(avgable2.index.duration, axis=0) + duration2 = tools_duration.frame(avgable2) + s2 = avgable2.mul(duration2, axis=0) s2 = _astype(s2, s.dtype) return s2.rename(s.name) @@ -190,22 +195,20 @@ def index(i: pd.DatetimeIndex, freq: str = "MS") -> pd.DatetimeIndex: return _upsample_avgable(pd.Series(0, i), freq).index -def summable( - fr: Union[pd.Series, pd.DataFrame], freq: str = "MS" -) -> Union[pd.Series, pd.DataFrame]: +def summable(fr: Series_or_DataFrame, freq: str = "MS") -> Series_or_DataFrame: f""" Resample and aggregate a DataFrame or Series with 'time-summable' quantities. Parameters ---------- - fr : pd.Series or pd.DataFrame + fr : Series or DataFrame Pandas Series or DataFrame to be resampled. freq : {{{', '.join(tools_freq.FREQUENCIES)}}}, optional (default: 'MS') Target frequency. Returns ------- - DataFrame or Series + Series or DataFrame Notes ----- @@ -228,22 +231,20 @@ def summable( return _general(True, fr, freq) -def averagable( - fr: Union[pd.Series, pd.DataFrame], freq: str = "MS" -) -> Union[pd.Series, pd.DataFrame]: +def averagable(fr: Series_or_DataFrame, freq: str = "MS") -> Series_or_DataFrame: f""" Resample and aggregate a DataFrame or Series with 'time-averagable' quantities. Parameters ---------- - fr : pd.Series or pd.DataFrame + fr : Series or DataFrame Pandas Series or DataFrame to be resampled. freq : {{{', '.join(tools_freq.FREQUENCIES)}}}, optional (default: 'MS') Target frequency. Returns ------- - DataFrame or Series + Series or DataFrame Notes ----- diff --git a/portfolyo/tools/changeyear.py b/portfolyo/tools/changeyear.py index 22a9485..00f7617 100644 --- a/portfolyo/tools/changeyear.py +++ b/portfolyo/tools/changeyear.py @@ -7,7 +7,7 @@ # . Daylight-savings time will likely start and end at a different day. # . Weekdays and holidays are not at the same date. -from typing import Callable, Union +from typing import Callable import holidays import pandas as pd @@ -16,6 +16,7 @@ from . import freq as tools_freq from . import right as tools_right from . import unit as tools_unit +from .types import Series_or_DataFrame docstringliteral_notes = """ * Function is meant for data that spans full months. Using partial months may lead @@ -364,10 +365,10 @@ def map_index_to_year( @additional_notes def map_frame_to_index( - source: Union[pd.Series, pd.DataFrame], + source: Series_or_DataFrame, idx_target: pd.DatetimeIndex, holiday_country: str = None, -) -> Union[pd.Series, pd.DataFrame]: +) -> Series_or_DataFrame: """Transfer the data in a Series or DataFrame to a hypothetical other index according to certain rules (see Notes). What would the data have looked like if it had occured in a different year? @@ -406,10 +407,10 @@ def map_frame_to_index( @additional_notes def map_frame_to_year( - source: Union[pd.Series, pd.DataFrame], + source: Series_or_DataFrame, target_year: int, holiday_country: str = None, -) -> Union[pd.Series, pd.DataFrame]: +) -> Series_or_DataFrame: """Transfer the data in a Series or DataFrame to a hypothetical other year according to certain rules (see Notes). What would the data have looked like if it had occured in a different year? diff --git a/portfolyo/tools/duration.py b/portfolyo/tools/duration.py index b003717..cc5dded 100644 --- a/portfolyo/tools/duration.py +++ b/portfolyo/tools/duration.py @@ -1,7 +1,4 @@ -""" -Duration of delivery periods. -""" - +"""Duration of delivery periods.""" import pandas as pd @@ -41,11 +38,11 @@ def stamp(ts: pd.Timestamp, freq: str) -> tools_unit.Q_: def index(i: pd.DatetimeIndex) -> pd.Series: - """Duration of a timestamp. + """Duration of the timestamps in an index. Parameters ---------- - i : pd.DatetimeIndex + i : DatetimeIndex Index for which to calculate the duration. Returns @@ -60,4 +57,20 @@ def index(i: pd.DatetimeIndex) -> pd.Series: # Individual calculations for non-fixed-duration frequencies. h = (tools_right.index(i) - i).map(lambda td: td.total_seconds() / 3600) - return pd.Series(h, i).astype("pint[h]").rename("duration") + return pd.Series(h, i, dtype="pint[h]").rename("duration") + + +def frame(fr: pd.Series | pd.DataFrame) -> pd.Series: + """Duration of the timestamps in the index of a Series or DataFrame. + + Parameters + ---------- + fr : Series or DataFrame + Object with index for which to calculate the duration. + + Returns + ------- + pint-Series + With ``i`` as its index, and the corresponding duration as the values. + """ + return index(fr.index) diff --git a/portfolyo/tools/frame.py b/portfolyo/tools/frame.py index af2ca9d..512b085 100644 --- a/portfolyo/tools/frame.py +++ b/portfolyo/tools/frame.py @@ -3,15 +3,15 @@ """ import functools -from typing import Any, Iterable, Union +from typing import Any, Iterable import numpy as np import pandas as pd +from .types import Series_or_DataFrame -def fill_gaps( - fr: Union[pd.Series, pd.DataFrame], maxgap: int = 2 -) -> Union[pd.Series, pd.DataFrame]: + +def fill_gaps(fr: Series_or_DataFrame, maxgap: int = 2) -> Series_or_DataFrame: """Fill gaps in series by linear interpolation. Parameters diff --git a/portfolyo/tools/freq.py b/portfolyo/tools/freq.py index 302f367..d2f3e34 100644 --- a/portfolyo/tools/freq.py +++ b/portfolyo/tools/freq.py @@ -2,11 +2,11 @@ Tools for dealing with frequencies. """ -from typing import Union - import numpy as np import pandas as pd +from .types import Series_or_DataFrame + # Allowed frequencies. # Perfect containment; a short-frequency time period always entirely falls within a single high-frequency time period. # AS -> 4 QS; QS -> 3 MS; MS -> 28-31 D; D -> 23-25 H; H -> 4 15T @@ -53,6 +53,7 @@ def up_or_down( backup_common_ts = pd.Timestamp("2020-02-03 04:05:06") if common_ts is None: common_ts = standard_common_ts + ts1 = common_ts + pd.tseries.frequencies.to_offset(freq_source) ts2 = common_ts + pd.tseries.frequencies.to_offset(freq_target) if ts1 > ts2: @@ -65,40 +66,6 @@ def up_or_down( return 0 # only if both give the same answer. -def longer_or_shorter(freq: str, freq_ref: str, common_ts: pd.Timedelta = None) -> int: - """ - Compare frequency with reference frequency to see if it is longer or shorter. - - Parameters - ---------- - freq, freq_ref : frequencies to compare. - common_ts : timestamp, optional - Timestamp to use as anchor from which to compare the two. - - Returns - ------- - * 1 if frequency ``freq`` is longer than the reference frequency ``freq_ref``. - * 0 if frequencies are the same. - * -1 if frequency ``freq`` is shorter than the reference frequency ``freq_ref``. - - Notes - ----- - Arbitrarily using a time point as anchor to calculate the length of the time period - from. May have influence on the ratio (duration of a month, quarter, year etc are - influenced by this), but, for most common frequencies, not on which is longer. - - Examples - -------- - >>> freq.longer_or_shorter('D', 'MS') - -1 - >>> freq.longer_or_shorter('MS', 'D') - 1 - >>> freq.longer_or_shorter('MS', 'MS') - 0 - """ - return up_or_down(freq, freq_ref, common_ts) - - def _longestshortest(shortest: bool, *freqs: str): """Determine which frequency denotes the shortest or longest time period.""" common_ts = pd.Timestamp("2020-01-01") @@ -147,7 +114,7 @@ def longest(*freqs: str) -> str: return _longestshortest(False, *freqs) -def to_offset(freq: str) -> Union[pd.Timedelta, pd.DateOffset]: +def to_offset(freq: str) -> pd.Timedelta | pd.DateOffset: """Object that can be added to a left-bound timestamp to find corresponding right-bound timestamp. Parameters @@ -270,8 +237,8 @@ def set_to_index( def set_to_frame( - fr: Union[pd.Series, pd.DataFrame], wanted: str = None, strict: bool = False -) -> Union[pd.Series, pd.DataFrame]: + fr: Series_or_DataFrame, wanted: str = None, strict: bool = False +) -> Series_or_DataFrame: """Try to read, infer, or force frequency of frame's index. Parameters @@ -284,7 +251,7 @@ def set_to_frame( Returns ------- - Union[pd.Series, pd.DataFrame] + pd.Series | pd.DataFrame Same type as ``fr``, with, if possible, a valid value for ``fr.index.freq``. """ # Handle non-datetime-indices. diff --git a/portfolyo/tools/hedge.py b/portfolyo/tools/hedge.py new file mode 100644 index 0000000..b728bbc --- /dev/null +++ b/portfolyo/tools/hedge.py @@ -0,0 +1,114 @@ +"""Functionality to hedge an offtake profile with a price profile.""" + +from typing import Tuple + +import pandas as pd + +from . import duration as tools_duration +from . import intersect as tools_intersect +from . import peakconvert as tools_peakconvert +from . import peakfn as tools_peakfn +from . import trim as tools_trim +from . import wavg as tools_wavg + + +def one_hedge(df: pd.DataFrame, how: str) -> pd.Series: + """Hedge over all timestamps in dataframe. Dataframe must have columns + 'w', 'p', 'duration'. Returns Series with index 'w', 'p', with hedge values. + for the entire period.""" + # Prepare weights. + if how == "val": # value hedge + # solve for w_hedge: sum(w * duration * p) == w_hedge * sum(duration * p) + # so: w_hedge = sum(w * duration * p) / sum(duration * p) + weights = df["p"] * df["duration"] + else: # how == "vol": # volume hedge + # solve for w_hedge: sum(w * duration) == w_hedge * sum(duration) + # so: w_hedge = sum(w * duration) / sum(duration) + weights = df["duration"] + + p_hedge = tools_wavg.series(df["p"], df["duration"]) + w_hedge = tools_wavg.series(df["w"], weights) + return pd.Series({"w": w_hedge, "p": p_hedge}) + + +def hedge( + w: pd.Series, + p: pd.Series, + how: str = "val", + peak_fn: tools_peakfn.PeakFunction = None, + freq: str = "MS", +) -> Tuple[pd.Series, pd.Series]: + """ + Make hedge of power timeseries, for given price timeseries. + + Parameters + ---------- + w : Series + Power timeseries with spot market frequency. + p: Series + Price timeseries with same frequency. + how : str, optional (Default: 'val') + Hedge-constraint. 'vol' for volumetric hedge, 'val' for value hedge. + peak_fn : PeakFunction, optional (default: None) + Function that returns boolean Series indicating if timestamps in index lie in peak period. + If None, hedge with base products. + freq : {'D' (days), 'MS' (months), 'QS' (quarters), 'AS' (years)}, optional (default: 'MS') + Frequency of hedging products. E.g. 'QS' to hedge with quarter products. + + Returns + ------- + Tuple[Series, Series] + Power timeseries and price timeseries with hedge of ``w`` (with same index). + """ + if w.index.freq is None or p.index.freq is None: + raise ValueError( + "Parameters ``w`` and ``p`` must have a DatetimeIndex with a set frequency attribute." + ) + if w.index.freq != p.index.freq: + raise ValueError( + f"Parameters ``w`` and ``p`` must have same frequency; got {w.index.freq} and {p.index.freq}." + ) + if w.index.freq not in ["15T", "H", "D"]: + raise ValueError("Can only hedge a timeseries with daily (or shorter) values.") + if freq not in ["D", "MS", "QS", "AS"]: + raise ValueError( + f"Parameter ``freq`` must be one of 'D', 'MS', 'QS', 'AS'; got '{freq}'." + ) + if peak_fn is not None and not (w.index.freq in ["15T", "H"] and freq != "D"): + raise ValueError( + "Split into peak and offpeak only possible when (a) hedging with monthly (or " + "longer) products, and (b) if timeseries have hourly (or shorter) values." + ) + if how not in ["vol", "val"]: + raise ValueError(f"Parameter `how` must be 'val' or 'vol'; got {how}.") + + # Handle possible units. + win, wunits = (w.pint.magnitude, w.pint.units) if hasattr(w, "pint") else (w, None) + pin, punits = (p.pint.magnitude, p.pint.units) if hasattr(p, "pint") else (p, None) + + # Only keep full periods of overlapping timestamps. + + win, pin = tools_intersect.frames(win, pin) + dfin = tools_trim.frame(pd.DataFrame({"w": win, "p": pin}), freq) + if len(dfin) == 0: + return ( + dfin["w"], + dfin["p"], + ) # No full periods; don't do hedge; return empty series + + # Do actual hedge. + # . helper values + dfin["duration"] = tools_duration.index(dfin.index) + grouping = tools_peakconvert.group_index(dfin.index, peak_fn, freq) + # . calculation + vals = dfin.groupby(grouping).apply(lambda subdf: one_hedge(subdf, how)) + vals.index = pd.MultiIndex.from_tuples(vals.index) + # . broadcast to original timeseries + dfout = vals.loc[grouping, :].set_axis(dfin.index) + wout, pout = dfout["w"], dfout["p"] + + # Handle possible units. + if wunits or punits: + wout, pout = wout.astype(f"pint[{wunits}]"), pout.astype(f"pint[{punits}]") + + return wout, pout diff --git a/portfolyo/tools/intersect.py b/portfolyo/tools/intersect.py index d28cdac..c953d38 100644 --- a/portfolyo/tools/intersect.py +++ b/portfolyo/tools/intersect.py @@ -1,10 +1,12 @@ -from typing import List, Union, Tuple +from datetime import datetime +from typing import List, Tuple + import pandas as pd -from portfolyo import tools -from portfolyo.tools.right import stamp -from portfolyo.tools.freq import longest, longer_or_shorter -from datetime import datetime +from . import freq as tools_freq +from . import right as tools_right +from . import trim as tools_trim +from .types import Series_or_DataFrame def indices(*idxs: pd.DatetimeIndex) -> pd.DatetimeIndex: @@ -120,7 +122,7 @@ def indices_flex( if len(distinct_sod) != 1 and ignore_start_of_day is False: raise ValueError(f"Indices must have equal start-of-day; got {distinct_sod}.") for i in range(len(idxs)): - if len(distinct_sod) != 1 and longer_or_shorter(idxs[i].freq, "D") == -1: + if len(distinct_sod) != 1 and tools_freq.up_or_down(idxs[i].freq, "D") == -1: raise ValueError( "Downsample all indices to daily-or-longer, or trim them so they have the same start-of-day, before attempting to calculate the intersection" ) @@ -134,12 +136,12 @@ def indices_flex( longest_freq = freq[0] if ignore_freq is True and len(distinct_freqs) != 1: # Find the longest frequency - longest_freq = longest(*freq) + longest_freq = tools_freq.longest(*freq) # trim datetimeindex for i in range(len(idxs)): # if idxs[i].freq is not the same as longest freq, we trim idxs[i] if idxs[i].freq != longest_freq: - idxs[i] = tools.trim.index(idxs[i], longest_freq) + idxs[i] = tools_trim.index(idxs[i], longest_freq) if ignore_tz is True and len(distinct_tzs) != 1: # set timezone to none for all values @@ -160,14 +162,14 @@ def indices_flex( values = sorted(values) if len(values) == 0: - return tuple([pd.DatetimeIndex([]) for _i in idxs]) + return tuple([pd.DatetimeIndex([]) for _ in idxs]) idxs_out = [] for i in range(len(idxs)): start = min(values) # end = stamp(start, longest_freq._prefix) end = max(values) - end = stamp(end, longest_freq) + end = tools_right.stamp(end, longest_freq) if ignore_start_of_day is True: start = datetime.combine(pd.to_datetime(start).date(), start_of_day[i]) @@ -189,11 +191,11 @@ def indices_flex( def frames( - *frames: Union[pd.Series, pd.DataFrame], + *frames: Series_or_DataFrame, ignore_freq: bool = False, ignore_tz: bool = False, ignore_start_of_day: bool = False, -) -> List[Union[pd.Series, pd.DataFrame]]: +) -> List[Series_or_DataFrame]: """Intersect several dataframes and/or series. Parameters @@ -212,8 +214,7 @@ def frames( Returns ------- - list of series and/or dataframes - As input, but trimmed to their intersection. + As input, but trimmed to their intersection. Notes ----- @@ -226,4 +227,4 @@ def frames( ignore_tz=ignore_tz, ignore_start_of_day=ignore_start_of_day, ) - return [fr.loc[idx] for idx, fr in zip(new_idxs, frames)] + return [fr.loc[i] for i, fr in zip(new_idxs, frames)] diff --git a/portfolyo/tools/isboundary.py b/portfolyo/tools/isboundary.py index e6208ef..001a5e4 100644 --- a/portfolyo/tools/isboundary.py +++ b/portfolyo/tools/isboundary.py @@ -3,7 +3,7 @@ """ import datetime as dt -from typing import Union +from typing import overload import numpy as np import pandas as pd @@ -17,23 +17,59 @@ # i = pd.date_range('2020-01-01', freq='MS', periods=12) # i.is_year_start # array([False, False, False, False, False, False, False, False, False, False, False, True]) -def is_year_start(i: Union[pd.Timestamp, pd.DatetimeIndex]) -> Union[bool, np.ndarray]: +@overload +def is_year_start(i: pd.Timestamp) -> bool: + ... + + +@overload +def is_year_start(i: pd.DatetimeIndex) -> np.ndarray: + ... + + +def is_year_start(i: pd.Timestamp | pd.DatetimeIndex) -> bool | np.ndarray: return (i.day == 1) & (i.month == 1) -def is_quarter_start( - i: Union[pd.Timestamp, pd.DatetimeIndex] -) -> Union[bool, np.ndarray]: +@overload +def is_quarter_start(i: pd.Timestamp) -> bool: + ... + + +@overload +def is_quarter_start(i: pd.DatetimeIndex) -> np.ndarray: + ... + + +def is_quarter_start(i: pd.Timestamp | pd.DatetimeIndex) -> bool | np.ndarray: return (i.day == 1) & ((i.month - 1) % 3 == 0) -def is_month_start(i: Union[pd.Timestamp, pd.DatetimeIndex]) -> Union[bool, np.ndarray]: +@overload +def is_month_start(i: pd.Timestamp) -> bool: + ... + + +@overload +def is_month_start(i: pd.DatetimeIndex) -> np.ndarray: + ... + + +def is_month_start(i: pd.Timestamp | pd.DatetimeIndex) -> bool | np.ndarray: return i.day == 1 -def is_X_start( - i: Union[pd.Timestamp, pd.DatetimeIndex], freq: str -) -> Union[bool, np.ndarray]: +@overload +def is_X_start(i: pd.Timestamp) -> bool: + ... + + +@overload +def is_X_start(i: pd.DatetimeIndex) -> np.ndarray: + ... + + +def is_X_start(i: pd.Timestamp | pd.DatetimeIndex, freq: str) -> bool | np.ndarray: if freq == "MS": return is_month_start(i) elif freq == "QS": diff --git a/portfolyo/tools/peakconvert.py b/portfolyo/tools/peakconvert.py new file mode 100644 index 0000000..7729f64 --- /dev/null +++ b/portfolyo/tools/peakconvert.py @@ -0,0 +1,426 @@ +"""Module to convert between timeseries and base/peak/offpeak-values.""" + +import warnings + +import pandas as pd + +from . import changefreq as tools_changefreq +from . import duration as tools_duration +from . import freq as tools_freq +from . import peakfn as tools_peakfn +from . import trim as tools_trim +from . import wavg as tools_wavg + +BPO = ["base", "peak", "offpeak"] + + +def group_index( + i: pd.DatetimeIndex, peak_fn: tools_peakfn.PeakFunction, freq: str +) -> pd.MultiIndex: + """Multiindex, that is the same for all rows that belong to same delivery period.""" + # Grouping due to delivery period. + groups = [i.year] + if freq == "MS": + groups.append(i.month) + elif freq == "QS": + groups.append(i.quarter) + elif freq == "AS": + pass + else: + raise ValueError( + f"Parameter ``freq`` must be one of 'MS', 'QS', 'AS'; got '{freq}'." + ) + + # Add grouping due to peak. + if peak_fn is not None: + groups.append(peak_fn(i)) + + return pd.MultiIndex.from_arrays(groups) + + +def complete_bpoframe( + df: pd.DataFrame, peak_fn: tools_peakfn.PeakFunction, is_summable: bool = False +) -> pd.DataFrame: + """Complete a dataframe so it contains arbitrage-free base, peak, and offpeak values. + + Parameters + ---------- + df : DataFrame + With at least 2 of following columns: {'base', 'peak', 'offpeak'}. If all 3 are + present, no verification is done. Additional columns are dropped. DatetimeIndex + with freq in {'MS', 'QS', 'AS'}. + peak_fn : PeakFunction + Function that returns boolean Series indicating if timestamps in index lie in peak period. + is_summable : bool, optional (default: False) + True if data is summable, False if it is averagable. + + Returns + ------- + DataFrame + Same as ``df``, with all 3 columns ('base', 'peak', 'offpeak'). + + In: + + peak offpeak + ts_left + 2020-01-01 00:00:00+01:00 42.530036 30.614701 + 2020-02-01 00:00:00+01:00 33.295167 15.931557 + ... ... + 2020-11-01 00:00:00+01:00 49.110873 33.226004 + 2020-12-01 00:00:00+01:00 57.872246 35.055449 + 12 rows × 2 columns + + Out: + + base peak offpeak + ts_left + 2020-01-01 00:00:00+01:00 35.034906 42.530036 30.614701 + 2020-02-01 00:00:00+01:00 21.919009 33.295167 15.931557 + ... ... ... + 2020-11-01 00:00:00+01:00 38.785706 49.110873 33.226004 + 2020-12-01 00:00:00+01:00 43.519745 57.872246 35.055449 + 12 rows × 3 columns + """ + # Guard clauses. + found = [c for c in df if c in BPO] + if len(found) <= 1: # too few present + raise ValueError( + f"At least 2 of 'base', 'peak', 'offpeak' must be in columns; found {found}." + ) + elif len(found) == 3: # all present, nothing to do + return df[BPO] # correct order + + # Make copy of relevant columns, and fill. + df = df[found].copy() + if is_summable: + # Solve: peak + offpeak = base + if "peak" not in df: + df["peak"] = df["base"] - df["offpeak"] + elif "offpeak" not in df: + df["offpeak"] = df["base"] - df["peak"] + else: # 'base' not in df + df["base"] = df["peak"] + df["offpeak"] + else: + # Solve: peak * duration_peak + offpeak * duration_offpeak = base * duration_base + # (with: duration_offpeak = duration_base - duration_peak) + b = tools_duration.index(df.index).pint.m # as float + p = tools_peakfn.peak_duration(df.index, peak_fn).pint.m # as float + if "peak" not in df: + # df["peak"] = (df["base"] * b - df["offpeak"] * (b - p)) / p + df["peak"] = (df["base"] - df["offpeak"]) * b / p + df["offpeak"] + elif "offpeak" not in df: + df["offpeak"] = (df["base"] * b - df["peak"] * p) / (b - p) + else: # 'base' not in df + # df["base"] = (df["peak"] * p + df["offpeak"] * (b - p)) / b + df["base"] = (df["peak"] - df["offpeak"]) * p / b + df["offpeak"] + + return df[BPO] # correct order + + +def _tseries2po( + s: pd.Series, peak_fn: tools_peakfn.PeakFunction, is_summable: bool +) -> pd.Series: + """ + Aggregate timeseries with varying (float) values to a single base, peak and offpeak + (float) value. + + In: + + ts_left + 2020-01-01 00:00:00+01:00 41.88 + 2020-01-01 01:00:00+01:00 38.60 + 2020-01-01 02:00:00+01:00 36.55 + ... + 2020-12-31 21:00:00+01:00 52.44 + 2020-12-31 22:00:00+01:00 51.86 + 2020-12-31 23:00:00+01:00 52.26 + Freq: H, Name: p, Length: 8784, dtype: float64 + + Out: + + peak 51.363667 + offpeak 20.311204 + dtype: float64 + """ + is_peak = peak_fn(s.index) + duration = tools_duration.index(s.index).pint.m # floats + if is_summable: + return pd.Series( + { + "peak": s[is_peak].sum(), + "offpeak": s[~is_peak].sum(), + } + ) + else: + return pd.Series( + { + "peak": tools_wavg.series(s[is_peak], duration[is_peak]), + "offpeak": tools_wavg.series(s[~is_peak], duration[~is_peak]), + } + ) + + +def tseries2poframe( + s: pd.Series, + peak_fn: tools_peakfn.PeakFunction, + freq: str = "MS", + is_summable: bool = False, +) -> pd.DataFrame: + """ + Aggregate timeseries with varying values to a dataframe with peak and offpeak + timeseries, grouped by specified frequency. + + Parameters + ---------- + s : Series + Timeseries with hourly or quarterhourly frequency. + peak_fn : PeakFunction + Function that returns boolean Series indicating if timestamps in index lie in peak period. + freq : str, optional (default: 'MS') + Target frequency; monthly-or-longer. + is_summable : bool, optional (default: False) + True if data is summable, False if it is averagable. + + Returns + ------- + DataFrame + Dataframe with base, peak and offpeak values (as columns). Index: downsampled + timestamps at provided frequency. + + In: + + ts_left + 2020-01-01 00:00:00+01:00 41.88 + 2020-01-01 01:00:00+01:00 38.60 + 2020-01-01 02:00:00+01:00 36.55 + ... + 2020-12-31 21:00:00+01:00 52.44 + 2020-12-31 22:00:00+01:00 51.86 + 2020-12-31 23:00:00+01:00 52.26 + Freq: H, Name: p, Length: 8784, dtype: float64 + + Out: + + peak offpeak + ts_left + 2020-01-01 00:00:00+01:00 42.530036 30.614701 + 2020-02-01 00:00:00+01:00 33.295167 15.931557 + ... ... + 2020-11-01 00:00:00+01:00 49.110873 33.226004 + 2020-12-01 00:00:00+01:00 57.872246 35.055449 + 12 rows × 3 columns + """ + if tools_freq.up_or_down(freq, "MS") < 0: + raise ValueError(f"Parameter ``freq`` be monthly-or-longer; got '{freq}'.") + + # Remove partial data. + s = tools_trim.frame(s, freq) + + # Handle possible units. + sin, units = (s.pint.magnitude, s.pint.units) if hasattr(s, "pint") else (s, None) + + # Do calculations. + sout = sin.resample(freq, group_keys=True).apply( + lambda s: _tseries2po(s, peak_fn, is_summable) + ) + + # Handle possible units. + if units is not None: + sout = sout.astype(f"pint[{units}]") + return sout.unstack() # peak, offpeak as columns + + +def poframe2tseries( + df: pd.DataFrame, + peak_fn: tools_peakfn.PeakFunction, + freq: str = "H", + is_summable: bool = False, +) -> pd.Series: + """ + Convert a dataframe with peak and offpeak values, to a single timeseries. + + Parameters + ---------- + df : DataFrame + Dataframe with values. Columns must include at least {'peak', 'offpeak'}. + Datetimeindex with monthly-or-longer frequency. + peak_fn : PeakFunction + Function that returns boolean Series indicating if timestamps in index lie in peak period. + freq : str + Target frequency; short enough for ``peak_fn``. + is_summable : bool, optional (default: False) + True if data is summable, False if it is averagable. + + Returns + ------- + Series + Timeseries with values as provided in ``df``. + + In: + + peak offpeak + ts_left + 2020-01-01 00:00:00+01:00 42.530036 30.614701 + 2020-02-01 00:00:00+01:00 33.295167 15.931557 + ... ... + 2020-11-01 00:00:00+01:00 49.110873 33.226004 + 2020-12-01 00:00:00+01:00 57.872246 35.055449 + 12 rows × 2 columns + + Out: + + ts_left + 2020-01-01 00:00:00+01:00 30.614701 + 2020-01-01 01:00:00+01:00 30.614701 + 2020-01-01 02:00:00+01:00 30.614701 + ... + 2020-12-31 21:00:00+01:00 35.055449 + 2020-12-31 22:00:00+01:00 35.055449 + 2020-12-31 23:00:00+01:00 35.055449 + Freq: H, Length: 8784, dtype: float64 + """ + # Prep. + if "peak" not in df or "offpeak" not in df: # ensure peak and offpeak available + df = complete_bpoframe(df, peak_fn) + df = df[["peak", "offpeak"]] + + # Stretch the dataframe to higher frequency + if is_summable: + df2 = tools_changefreq.summable(df, freq) + else: + df2 = tools_changefreq.averagable(df, freq) + df2["ispeak"] = peak_fn(df2.index) # will raise error if frequency not short enough + + return df2["offpeak"].where(df2["ispeak"], df2["peak"]) + + +# def tseries2tseries( +# s: pd.Series, +# peak_fn: tools_peakfn.PeakFunction, +# freq: str = "MS", +# is_summable: bool = False, +# ) -> pd.Series: +# """ +# Transform timeseries (with possibly variable values) to one with (at certain +# frequency) uniform peak and offpeak values. +# +# Parameters +# ---------- +# s : Series +# Timeseries with hourly or quarterhourly frequency. +# peak_fn : PeakFunction, optional (default: None) +# Function that returns boolean Series indicating if timestamps in index lie in peak period. +# freq : {'MS' (month, default) 'QS' (quarter), 'AS' (year)} +# Target frequency within which peak and offpeak values will be uniform. +# is_summable : bool, optional (default: False) +# True if data is summable, False if it is averagable. +# +# Returns +# ------- +# Series +# Timeseries where each peak hour within the target frequency has the same +# value. Idem for offpeak hours. Index: as original series. +# +# In: +# +# ts_left +# 2020-01-01 00:00:00+01:00 41.88 +# 2020-01-01 01:00:00+01:00 38.60 +# 2020-01-01 02:00:00+01:00 36.55 +# ... +# 2020-12-31 21:00:00+01:00 52.44 +# 2020-12-31 22:00:00+01:00 51.86 +# 2020-12-31 23:00:00+01:00 52.26 +# Freq: H, Name: p, Length: 8784, dtype: float64 +# +# Out: +# +# ts_left +# 2020-01-01 00:00:00+01:00 30.614701 +# 2020-01-01 01:00:00+01:00 30.614701 +# 2020-01-01 02:00:00+01:00 30.614701 +# ... +# 2020-12-31 21:00:00+01:00 35.055449 +# 2020-12-31 22:00:00+01:00 35.055449 +# 2020-12-31 23:00:00+01:00 35.055449 +# Freq: H, Name: p, Length: 8784, dtype: float64 +# """ +# # Remove partial data. +# s = tools_trim.frame(s, freq) +# +# # Handle possible units. +# sin, units = (s.pint.magnitude, s.pint.units) if hasattr(s, "pint") else (s, None) +# +# # Calculate. +# # grouping will raise error if frequency not short enough +# grouping = group_arrays(sin.index, freq, peak_fn) +# fn = tools_changefreq.summable if is_summable else tools_changefreq.averagable +# sout = sin.groupby(grouping).transform( +# +# # Handle possible units. +# if units is not None: +# sout = sout.astype(f"pint[{units}]") +# return sout +# + + +def poframe2poframe( + df: pd.DataFrame, + peak_fn: tools_peakfn.PeakFunction, + freq: str = "AS", + is_summable: bool = False, +) -> pd.DataFrame: + """ + Convert a dataframe with peak and offpeak values to a similar dataframe + with a different frequency. + + Parameters + ---------- + df : DataFrame + Columns must include at least {'peak', 'offpeak'}. Datetimeindex with monthly- + or-longer frequency. + peak_fn : PeakFunction + Function that returns boolean Series indicating if timestamps in index lie in peak period. + freq : str, optional (default: 'AS') + Target frequency; monthly-or-longer. + is_summable : bool, optional (default: False) + True if data is summable, False if it is averagable. + + Returns + ------- + DataFrame + Dataframe with base, peak and offpeak values (as columns). Index: timestamps at + specified frequency. + + In: + + peak offpeak + ts_left + 2020-01-01 00:00:00+01:00 42.530036 30.614701 + 2020-02-01 00:00:00+01:00 33.295167 15.931557 + ... ... + 2020-11-01 00:00:00+01:00 49.110873 33.226004 + 2020-12-01 00:00:00+01:00 57.872246 35.055449 + 12 rows × 3 columns + + Out: + + peak offpeak + ts_left + 2020-01-01 00:00:00+01:00 38.003536 26.312894 + 2020-04-01 00:00:00+02:00 35.295167 20.681892 + 2020-07-01 00:00:00+02:00 44.033511 26.371498 + 2020-10-01 00:00:00+02:00 54.468722 31.063728 + """ + if tools_freq.up_or_down(freq, "MS") < 0: + raise ValueError(f"Parameter ``freq`` be monthly-or-longer; got '{freq}'.") + + if tools_freq.up_or_down(df.index.freq, freq) == 1: + warnings.warn( + "This conversion includes upsampling, e.g. from yearly to monthly values." + " The result will be uniform at the frequency of the original frame ``df``." + ) + + upsampled = poframe2tseries(df, peak_fn, "H", is_summable) + downsampled = tseries2poframe(upsampled, peak_fn, freq, is_summable) + return downsampled diff --git a/portfolyo/tools/peakperiod.py b/portfolyo/tools/peakfn.py similarity index 58% rename from portfolyo/tools/peakperiod.py rename to portfolyo/tools/peakfn.py index 3ce1bf1..7e933d7 100644 --- a/portfolyo/tools/peakperiod.py +++ b/portfolyo/tools/peakfn.py @@ -1,17 +1,20 @@ -""" -Module to work with peak and offpeak hours. -""" +""" Module to work with peak and offpeak periods. """ + import datetime as dt from typing import Callable, Iterable import numpy as np import pandas as pd +from . import changefreq as tools_changefreq +from . import duration as tools_duration from . import freq as tools_freq from . import right as tools_right PeakFunction = Callable[[pd.DatetimeIndex], pd.Series] +MIDNIGHT = dt.time(hour=0) + def factory( peak_left: dt.time = None, @@ -48,26 +51,25 @@ def factory( - If they are both None, each day is entirely peak or entirely offpeak. The function can be used for indices with a daily frequency or shorter. """ - midnight = dt.time(hour=0) if peak_left is None: - peak_left = midnight + peak_left = MIDNIGHT if peak_right is None: - peak_right = midnight + peak_right = MIDNIGHT if isoweekdays is None: isoweekdays = [1, 2, 3, 4, 5] # Characterize the input. - check_time = not (peak_left == midnight and peak_right == midnight) + must_check_time = not (peak_left == MIDNIGHT and peak_right == MIDNIGHT) weekday_count = sum(wd in isoweekdays for wd in (1, 2, 3, 4, 5, 6, 7)) - check_date = 0 < weekday_count < 7 - if not check_time and not check_date: + must_check_date = 0 < weekday_count < 7 + if not must_check_time and not must_check_date: raise ValueError( "Input specifies no special cases; all time periods included or all time periods " f"excluded; got {peak_left}-{peak_right} on {weekday_count} days of the week." ) # Find longest frequency for which peak and offpeak can be calculated - if not check_time: + if not must_check_time: longest_freq = "D" elif peak_left.minute == 0 and peak_right.minute == 0: longest_freq = "H" @@ -85,7 +87,7 @@ def filter_time(i: pd.DatetimeIndex) -> np.ndarray: time_left = i.time time_right = tools_right.index(i).time mask = True - if peak_left != midnight: + if peak_left != MIDNIGHT: cond1 = time_left >= peak_left cond2 = time_right > peak_left if any(offenders := ~cond1 & cond2): @@ -93,7 +95,7 @@ def filter_time(i: pd.DatetimeIndex) -> np.ndarray: f"Found timestamps that are partly peak and partly offpeak: {i[offenders]}" ) mask &= cond1 - if peak_right != midnight: + if peak_right != MIDNIGHT: cond1 = time_left < peak_right cond2 = time_right <= peak_right if any(offenders := cond1 & ~cond2): @@ -103,17 +105,81 @@ def filter_time(i: pd.DatetimeIndex) -> np.ndarray: mask &= cond1 return mask - def is_peakhour(i: pd.DatetimeIndex) -> pd.Series: + def peak_fn(i: pd.DatetimeIndex) -> pd.Series: # Check if function works for this frequency. if tools_freq.up_or_down(i.freq, longest_freq) > 0: raise ValueError( f"Peak periods can only be calculated for indices with frequency of {longest_freq} or shorter." ) mask = True - if check_time: + if must_check_time: mask &= filter_time(i) - if check_date: + if must_check_date: mask &= filter_date(i) return pd.Series(mask, i) - return is_peakhour + return peak_fn + + +def peak_duration(i: pd.DatetimeIndex, peak_fn: PeakFunction) -> pd.Series: + """ + Duration of peak periods in each element of a datetimeindex. + + Parameters + ---------- + i : pd.DatetimeIndex + Index for which to calculate the durations. May be in any frequency. + peak_fn : PeakFunction + Function that returns boolean Series indicating if timestamps in index lie in peak period. + + Returns + ------- + Series + with ``i`` as index, and duration of peak hours during each timeperiod in ``i``. + + Notes + ----- + ``peak_fn`` might only work on indices with daily-or-shorter, hourly-or-shorter, or + quarterhourly-or-shorter frequency. ``i`` is resampled to account for this; the returned + Series has the original index. + """ + eval_i = i # index to evaluate if peak or offpeak + for eval_freq in ("D", "H", "15T"): + if tools_freq.up_or_down(eval_i.freq, eval_freq) > 0: # upsampling necessary + eval_i = tools_changefreq.index(eval_i, eval_freq) + try: + eval_bool = peak_fn(eval_i) # boolean series + except ValueError: + pass # maybe we need to upsample more + else: + eval_duration = eval_bool * tools_duration.index(eval_i) # pint-series + return tools_changefreq.summable(eval_duration, i.freq).rename("duration") + + # Couldn't determine the duration. + raise ValueError( + "Couldn't calculate the duration of the peak period for the provided index." + ) + + +def offpeak_duration(i: pd.DatetimeIndex, peak_fn: PeakFunction) -> pd.Series: + """ + Duration of offpeak periods in each element of a datetimeindex. + + Parameters + ---------- + i : pd.DatetimeIndex + Index for which to calculate the durations. + peak_fn : PeakFunction + Function that returns boolean Series indicating if timestamps in index lie in peak period. + + Returns + ------- + Series + with ``i`` as index, and duration of offpeak hours during each timeperiod in ``i``. + + Notes + ----- + ``peak_fn`` might only work on indices with daily-or-shorter, hourly-or-shorter, or + quarterhourly-or-shorter frequency. ``i`` is resampled to account for this. + """ + return tools_duration.index(i) - peak_duration(i, peak_fn) diff --git a/portfolyo/tools/product.py b/portfolyo/tools/product.py new file mode 100644 index 0000000..c9fbb0e --- /dev/null +++ b/portfolyo/tools/product.py @@ -0,0 +1,67 @@ +"""Utilities for calculating / manipulating price data.""" + +import datetime as dt +from typing import Tuple + +import pandas as pd + +from . import floor as tools_floor +from . import peakfn as tools_peakfn +from . import right as tools_right + +germanpower_peakfn = tools_peakfn.factory(dt.time(8), dt.time(20), [1, 2, 3, 4, 5]) + + +def is_peak_hour(i: pd.DatetimeIndex) -> pd.Series: + raise DeprecationWarning( + "``pf.is_peak_hour`` has been deprecated and will be removed in a future version." + " Use ``pf.germanpower_peakfn`` instead, or create your own peak function with" + " ``pf.create_peakfn()``." + ) + + +def delivery_period( + ts_trade: pd.Timestamp, + period_type: str = "m", + front_count: int = 1, + start_of_day: dt.time = None, +) -> Tuple[pd.Timestamp, pd.Timestamp]: + """ + Find start and end of delivery period. + + Parameters + ---------- + ts_trade : pd.Timestamp + Trading day. The time part of the timestamp is ignored and assumed to be after + the start_of_day of the market. + period_type : {'d' (day), 'm' (month, default), 'q' (quarter), 's' (season), 'a' (year)} + front_count : int, optional (default: 1) + 1 = next/coming (full) period, 2 = period after that, etc. + start_of_day : dt.time, optional (default: midnight) + Start of day for delivery periods with a daily-or-longer frequency. + + Returns + ------- + (pd.Timestamp, pd.Timestamp) + Left (inclusive) and right (exclusive) timestamp of delivery period. + """ + ts_trade = ts_trade.replace(hour=23, minute=59) # ensure after start_of_day + if period_type in ["m", "q", "a"]: + freq = period_type.upper() + "S" + ts_left = tools_floor.stamp(ts_trade, freq, front_count, start_of_day) + ts_right = tools_right.stamp(ts_left, freq) + elif period_type == "d": + ts_left = tools_floor.stamp(ts_trade, "D", front_count, start_of_day) + ts_right = tools_right.stamp(ts_left, "D") + elif period_type == "s": + front_count_q = front_count * 2 - 1 + ts_left, ts_right = delivery_period(ts_trade, "q", front_count_q, start_of_day) + ts_right = tools_right.stamp(ts_right, "QS") # make 6 months long + if ts_left.month % 2 == 1: # season must start on even month + ts_left = tools_right.stamp(ts_left, "QS") + ts_right = tools_right.stamp(ts_right, "QS") + else: + raise ValueError( + f"Parameter ``period_type`` must be one of 'd', 'm', 'q', 's', 'a'; got '{period_type}'." + ) + return ts_left, ts_right diff --git a/portfolyo/tools/standardize.py b/portfolyo/tools/standardize.py index 24925f4..054811c 100644 --- a/portfolyo/tools/standardize.py +++ b/portfolyo/tools/standardize.py @@ -2,8 +2,6 @@ Standardizing series and dataframes to use as input for PfLine. """ -from typing import Union - import pandas as pd from pytz import AmbiguousTimeError, NonExistentTimeError @@ -11,16 +9,17 @@ from . import right as tools_right from . import righttoleft as tools_righttoleft from . import tzone as tools_tzone +from .types import Series_or_DataFrame def frame( - fr: Union[pd.Series, pd.DataFrame], + fr: Series_or_DataFrame, force: str = None, bound: str = "left", *, tz: str = None, floating: bool = True, -) -> Union[pd.Series, pd.DataFrame]: +) -> Series_or_DataFrame: """Standardize a series or dataframe. Parameters @@ -53,7 +52,7 @@ def frame( Returns ------- - Union[pd.Series, pd.DataFrame] + pd.Series | pd.DataFrame Same type as ``fr``, with a left-bound DatetimeIndex, a valid frequency, and wanted timezone. @@ -151,11 +150,11 @@ def _fix_timezone(fr, force, tz, floating): ) -def _standardize_index_name(fr: Union[pd.Series, pd.DataFrame]): +def _standardize_index_name(fr: Series_or_DataFrame) -> Series_or_DataFrame: return fr.rename_axis(index="ts_left") -def assert_frame_standardized(fr: Union[pd.Series, pd.DataFrame]): +def assert_frame_standardized(fr: Series_or_DataFrame) -> None: """Assert that series or dataframe is standardized.""" assert_index_standardized(fr.index) diff --git a/portfolyo/tools/startofday.py b/portfolyo/tools/startofday.py index 2cc3415..50e6cf7 100644 --- a/portfolyo/tools/startofday.py +++ b/portfolyo/tools/startofday.py @@ -3,7 +3,6 @@ """ import datetime as dt -from typing import Union import pandas as pd @@ -11,9 +10,7 @@ from . import right as tools_right -def get( - i: pd.DatetimeIndex, returntype: str = "time" -) -> Union[dt.time, str, dt.timedelta]: +def get(i: pd.DatetimeIndex, returntype: str = "time") -> dt.time | str | dt.timedelta: """Get start-of-day of an index. Parameters @@ -27,7 +24,7 @@ def get( Returns ------- - Union[dt.time, str, dt.timedelta] + dt.time | str | dt.timedelta """ start_of_day = i[0].time() if returntype == "time": diff --git a/portfolyo/testing/testing.py b/portfolyo/tools/testing.py similarity index 76% rename from portfolyo/testing/testing.py rename to portfolyo/tools/testing.py index a90f901..b3a9933 100644 --- a/portfolyo/testing/testing.py +++ b/portfolyo/tools/testing.py @@ -6,8 +6,8 @@ import numpy as np import pandas as pd import pint -from .. import tools -from ..tools.unit import Q_ + +from . import unit as tools_unit def assert_value_equal(left: Any, right: Any): @@ -35,8 +35,8 @@ def assert_frame_equal(left: pd.DataFrame, right: pd.DataFrame, *args, **kwargs) @functools.wraps(pd.testing.assert_series_equal) def assert_series_equal(left: pd.Series, right: pd.Series, *args, **kwargs): - leftm, leftu = tools.unit.split_magn_unit(left) - rightm, rightu = tools.unit.split_magn_unit(right) + leftm, leftu = tools_unit.split_magn_unit(left) + rightm, rightu = tools_unit.split_magn_unit(right) # Magnitudes must be the same. leftm = leftm.replace([np.inf, -np.inf], np.nan) @@ -65,21 +65,21 @@ def assert_indices_compatible(left: pd.DatetimeIndex, right: pd.DatetimeIndex): def assert_w_q_compatible(freq: str, w: pd.Series, q: pd.Series): """Assert if timeseries with power- and energy-values are consistent.""" if freq == "15T": - assert_series_equal(q, w * Q_(0.25, "h"), check_names=False) + assert_series_equal(q, w * tools_unit.Q_(0.25, "h"), check_names=False) elif freq == "H": - assert_series_equal(q, w * Q_(1.0, "h"), check_names=False) + assert_series_equal(q, w * tools_unit.Q_(1.0, "h"), check_names=False) elif freq == "D": - assert (q >= w * Q_(22.99, "h")).all() - assert (q <= w * Q_(25.01, "h")).all() + assert (q >= w * tools_unit.Q_(22.99, "h")).all() + assert (q <= w * tools_unit.Q_(25.01, "h")).all() elif freq == "MS": - assert (q >= w * 27 * Q_(24.0, "h")).all() - assert (q <= w * 32 * Q_(24.0, "h")).all() + assert (q >= w * 27 * tools_unit.Q_(24.0, "h")).all() + assert (q <= w * 32 * tools_unit.Q_(24.0, "h")).all() elif freq == "QS": - assert (q >= w * 89 * Q_(24.0, "h")).all() - assert (q <= w * 93 * Q_(24.0, "h")).all() + assert (q >= w * 89 * tools_unit.Q_(24.0, "h")).all() + assert (q <= w * 93 * tools_unit.Q_(24.0, "h")).all() elif freq == "AS": - assert (q >= w * Q_(8759.9, "h")).all() - assert (q <= w * Q_(8784.1, "h")).all() + assert (q >= w * tools_unit.Q_(8759.9, "h")).all() + assert (q <= w * tools_unit.Q_(8784.1, "h")).all() else: raise ValueError(f"Uncaught value for freq: {freq}.") diff --git a/portfolyo/tools/trim.py b/portfolyo/tools/trim.py index 01f8ca9..2322f86 100644 --- a/portfolyo/tools/trim.py +++ b/portfolyo/tools/trim.py @@ -2,7 +2,7 @@ Trim objects to only contain 'full' delivery periods. """ -from typing import Union +from typing import overload import pandas as pd @@ -47,21 +47,29 @@ def index(i: pd.DatetimeIndex, freq: str) -> pd.DatetimeIndex: return i[mask_start & mask_end] -def frame( - fr: Union[pd.Series, pd.DataFrame], freq: str -) -> Union[pd.Series, pd.DataFrame]: +@overload +def frame(fr: pd.Series, freq: str) -> pd.Series: + ... + + +@overload +def frame(fr: pd.DataFrame, freq: str) -> pd.DataFrame: + ... + + +def frame(fr: pd.Series | pd.DataFrame, freq: str) -> pd.Series | pd.DataFrame: f"""Trim index of series or dataframe to only keep full periods of certain frequency. Parameters ---------- - fr : Union[pd.Series, pd.DataFrame] + fr : Series or DataFrame The (untrimmed) pandas series or dataframe. freq : {{{', '.join(tools_freq.FREQUENCIES)}}} Frequency to trim to. E.g. 'MS' to only keep full months. Returns ------- - Union[pd.Series, pd.DataFrame] + Series or DataFrame Subset of ``fr``, with same frequency. Notes diff --git a/portfolyo/tools/types.py b/portfolyo/tools/types.py new file mode 100644 index 0000000..5e9ba5d --- /dev/null +++ b/portfolyo/tools/types.py @@ -0,0 +1,7 @@ +"""Help the type checker.""" + +from typing import TypeVar + +import pandas as pd + +Series_or_DataFrame = TypeVar("Series_or_DataFrame", pd.Series, pd.DataFrame) diff --git a/portfolyo/tools/tzone.py b/portfolyo/tools/tzone.py index 41d563a..6a2b381 100644 --- a/portfolyo/tools/tzone.py +++ b/portfolyo/tools/tzone.py @@ -1,11 +1,10 @@ """Tools to deal with timezones.""" -from typing import Union - import pandas as pd import pytz from . import freq as tools_freq +from .types import Series_or_DataFrame """ (hourly means: hourly or shorter) @@ -56,8 +55,8 @@ def force_aware( - fr: Union[pd.Series, pd.DataFrame], tz: str, *, floating: bool = True -) -> Union[pd.Series, pd.DataFrame]: + fr: Series_or_DataFrame, tz: str, *, floating: bool = True +) -> Series_or_DataFrame: """Convert/set series or dataframe to a specific timezone. Parameters @@ -136,9 +135,7 @@ def force_aware( return fr_out -def force_agnostic( - fr: Union[pd.Series, pd.DataFrame] -) -> Union[pd.Series, pd.DataFrame]: +def force_agnostic(fr: Series_or_DataFrame) -> Series_or_DataFrame: """Turn a frame (series or dataframe) into timezone-agnostic frame. Parameters @@ -195,9 +192,7 @@ def force_agnostic( return fr_out -def _A_to_A( - fr: Union[pd.Series, pd.DataFrame], *, tz, floating -) -> Union[pd.Series, pd.DataFrame]: +def _A_to_A(fr: Series_or_DataFrame, *, tz: str, floating: bool) -> Series_or_DataFrame: if isinstance(tz, str): # convert to make comparison (below) possible tz = pytz.timezone(tz) @@ -215,17 +210,15 @@ def _A_to_A( return _B_to_A(_A_to_B(fr), tz=tz) -def _A_to_B(fr: Union[pd.Series, pd.DataFrame]) -> Union[pd.Series, pd.DataFrame]: +def _A_to_B(fr: Series_or_DataFrame) -> Series_or_DataFrame: return _aware_to_agnostic(fr) -def _B_to_A( - fr: Union[pd.Series, pd.DataFrame], *, tz -) -> Union[pd.Series, pd.DataFrame]: +def _B_to_A(fr: Series_or_DataFrame, *, tz) -> Series_or_DataFrame: return _agnostic_to_aware(fr, tz) -def _idx_after_conversion(fr: Union[pd.Series, pd.DataFrame], tz) -> pd.DatetimeIndex: +def _idx_after_conversion(fr: Series_or_DataFrame, tz) -> pd.DatetimeIndex: fr = tools_freq.set_to_frame(fr) freq_input = fr.index.freq if not freq_input: @@ -238,9 +231,7 @@ def _idx_after_conversion(fr: Union[pd.Series, pd.DataFrame], tz) -> pd.Datetime return idx -def _agnostic_to_aware( - fr: Union[pd.Series, pd.DataFrame], tz: str -) -> Union[pd.Series, pd.DataFrame]: +def _agnostic_to_aware(fr: Series_or_DataFrame, tz: str) -> Series_or_DataFrame: """Recalculate values in tz-agnostic series or dataframe, to get a tz-aware one. (i.e., B to A).""" if tz_input := fr.index.tz: @@ -263,9 +254,7 @@ def _agnostic_to_aware( return fr.loc[mapping_onto_input_index].set_axis(idx_out) -def _aware_to_agnostic( - fr: Union[pd.Series, pd.DataFrame] -) -> Union[pd.Series, pd.DataFrame]: +def _aware_to_agnostic(fr: Series_or_DataFrame) -> Series_or_DataFrame: """Recalculate values in tz-aware series or dataframe, to get a tz-agnostic one. (i.e., A to B).""" if not fr.index.tz: diff --git a/portfolyo/tools/unit.py b/portfolyo/tools/unit.py index b6175a7..6da956a 100644 --- a/portfolyo/tools/unit.py +++ b/portfolyo/tools/unit.py @@ -3,7 +3,7 @@ """ from pathlib import Path -from typing import Tuple, Union +from typing import Tuple, overload import pandas as pd import pint @@ -53,9 +53,29 @@ def from_name(name: str) -> pint.Unit: raise ValueError(f"No standard unit found for name '{name}'.") +@overload +def defaultunit(val: int | float) -> float: + ... + + +@overload +def defaultunit(val: pint.Quantity) -> pint.Quantity: + ... + + +@overload +def defaultunit(val: pd.Series) -> pd.Series: + ... + + +@overload +def defaultunit(val: pd.DataFrame) -> pd.DataFrame: + ... + + def defaultunit( - val: Union[int, float, pint.Quantity, pd.Series, pd.DataFrame], -) -> Union[float, pint.Quantity, pd.Series, pd.DataFrame]: + val: int | float | pint.Quantity | pd.Series | pd.DataFrame, +) -> float | pint.Quantity | pd.Series | pd.DataFrame: """Convert ``val`` to base units. Also turns dimensionless values into floats. Parameters @@ -101,15 +121,26 @@ def defaultunit( raise TypeError("``val`` must be an int, float, Quantity, Series, or DataFrame.") +@overload +def split_magn_unit(val: int | float) -> Tuple[float, None]: + ... + + +@overload +def split_magn_unit(val: pint.Quantity) -> Tuple[float, None | pint.Unit]: + ... + + +@overload +def split_magn_unit( + val: pd.Series, +) -> Tuple[pd.Series, None | pint.Unit | pd.Series]: + ... + + def split_magn_unit( - val: Union[int, float, pint.Quantity, pd.Series] -) -> Union[ - Tuple[float, None], - Tuple[float, pint.Unit], - Tuple[pd.Series, None], - Tuple[pd.Series, pint.Unit], - Tuple[pd.Series, pd.Series], -]: + val: int | float | pint.Quantity | pd.Series, +) -> Tuple[float, None | pint.Unit] | Tuple[pd.Series, None | pint.Unit | pd.Series]: """Split ``val`` into magnitude and units. If ``val`` is a Series with uniform dimension, the unit is returned as a pint Unit. If not, it is returned as a Series. """ diff --git a/portfolyo/visualize/__init__.py b/portfolyo/tools/visualize/__init__.py similarity index 84% rename from portfolyo/visualize/__init__.py rename to portfolyo/tools/visualize/__init__.py index c678a33..bfbe431 100644 --- a/portfolyo/visualize/__init__.py +++ b/portfolyo/tools/visualize/__init__.py @@ -1,5 +1,6 @@ from .colors import Color, Colors from .plot import ( + PlotTimeseriesToAxFunction, plot_timeseries_as_area, plot_timeseries_as_bar, plot_timeseries_as_hline, diff --git a/portfolyo/visualize/categories.py b/portfolyo/tools/visualize/categories.py similarity index 93% rename from portfolyo/visualize/categories.py rename to portfolyo/tools/visualize/categories.py index 7fc7efa..0136710 100644 --- a/portfolyo/visualize/categories.py +++ b/portfolyo/tools/visualize/categories.py @@ -1,10 +1,10 @@ from dataclasses import dataclass -from typing import Any, Iterable, Union +from typing import Any, Iterable import numpy as np import pandas as pd -from .. import tools +from .. import unit as tools_unit @dataclass @@ -35,16 +35,16 @@ def categories(self, max_count: int = None) -> Iterable[Category]: def _get_subset(self, attr: str, max_count: int = None) -> Iterable: values = [getattr(cat, attr) for cat in self.categories(max_count)] - if not isinstance(values[0], tools.unit.Q_): + if not isinstance(values[0], tools_unit.Q_): return np.array(values) unit = values[0].units magnitudes = [value.to(unit).m for value in values] - return tools.unit.PA_(magnitudes, unit) + return tools_unit.PA_(magnitudes, unit) def x(self, max_count: int = None) -> Iterable[int]: return self._get_subset("x", max_count) - def y(self, max_count: int = None) -> Iterable[Union[float, tools.unit.Q_]]: + def y(self, max_count: int = None) -> Iterable[float | tools_unit.Q_]: return self._get_subset("y", max_count) def ts(self, max_count: int = None) -> Iterable[pd.Timestamp]: diff --git a/portfolyo/visualize/colors.py b/portfolyo/tools/visualize/colors.py similarity index 100% rename from portfolyo/visualize/colors.py rename to portfolyo/tools/visualize/colors.py index 20c27c4..3a86c12 100644 --- a/portfolyo/visualize/colors.py +++ b/portfolyo/tools/visualize/colors.py @@ -1,8 +1,8 @@ """Creating colors for use in plotting.""" import colorsys -from enum import Enum from collections import namedtuple +from enum import Enum import matplotlib as mpl import numpy as np diff --git a/portfolyo/visualize/plot.py b/portfolyo/tools/visualize/plot.py similarity index 92% rename from portfolyo/visualize/plot.py rename to portfolyo/tools/visualize/plot.py index 4d79233..09c27f4 100644 --- a/portfolyo/visualize/plot.py +++ b/portfolyo/tools/visualize/plot.py @@ -8,10 +8,10 @@ import pandas as pd from matplotlib import pyplot as plt -from portfolyo.tools.unit import to_name -from portfolyo.visualize.colors import Colors -from ..tools import freq as tools_freq -from .categories import Categories, Category # noqa +from .. import freq as tools_freq +from .. import unit as tools_unit +from .categories import Categories +from .colors import Colors mpl.style.use("seaborn-v0_8") @@ -209,7 +209,7 @@ def get_portfolyo_attr(ax, name, default_val=None): def is_categorical(s: pd.Series) -> bool: """The function checks whether frequency of panda Series falls into continous or categorical group""" - return tools_freq.longer_or_shorter(s.index.freq, "D") == 1 + return tools_freq.up_or_down(s.index.freq, "D") == 1 def prepare_ax_and_s(ax: plt.Axes, s: pd.Series, unit=None) -> pd.Series: @@ -255,7 +255,7 @@ def prepare_ax_and_s(ax: plt.Axes, s: pd.Series, unit=None) -> pd.Series: set_portfolyo_attr(ax, "unit", s.pint.units) # Get unit attribute unit = get_portfolyo_attr(ax, "unit") - name_unit = to_name(unit) + name_unit = tools_unit.to_name(unit) # Define color mapping based on 'Wqpr' class attributes unit_colors = { "w": Colors.Wqpr.w, @@ -317,28 +317,8 @@ def set_data_labels( rotation=90, ) - # # Add labels only to every third data point. - # for i in range(0, len(xx), 3): # Iterate every third index - # x = xx[i] - # y = yy[i] - # lbl = labelfmt.format(y.magnitude).replace(",", " ") - # xytext = (0, -10) if outside and y.magnitude < 0 else (0, 10) - # ax.annotate( - # lbl, - # (x, y), - # textcoords="offset points", - # xytext=xytext, - # ha="center", - # rotation=90, - # ) - # Increase axis range to give label space to stay inside box. - # ylim = list(ax.get_ylim()) miny, maxy = ax.get_ylim() delta = 0.5 miny2, maxy2 = (1 + delta) * miny - delta * maxy, (1 + delta) * maxy - delta * miny - # if not np.isclose(ylim[0], 0) and ylim[0] < 0: - # ylim[0] *= 1.1 - # if not np.isclose(ylim[1], 0) and ylim[1] > 0: - # ylim[1] *= 1.1 ax.set_ylim(miny2, maxy2) diff --git a/portfolyo/tools/wavg.py b/portfolyo/tools/wavg.py index add0d43..6b01092 100644 --- a/portfolyo/tools/wavg.py +++ b/portfolyo/tools/wavg.py @@ -1,4 +1,4 @@ -from typing import Iterable, Mapping, Union +from typing import Iterable, Mapping, overload import numpy as np import pandas as pd @@ -13,64 +13,80 @@ # Developer notes: # The following behaviour is wanted in calculating the weighted average: -# weights values rule | result +# weights values rule result # sum of weights != 0 -# 1, -1, 2 10, 20, 30 normal | (10*1 + 20*-1 + 30*2 ) / (1 + -1 + 2) -# 1, -1, 2 10, NaN, 30 NaN if values include NaN | NaN -# 1, 0, 2 10, NaN, 30 ignore NaN if weight = 0 | (10*1 + 30*2) / (1 + 2) +# 1, -1, 2 10, 20, 30 "normal" (10*1 + 20*-1 + 30*2 ) / (1 + -1 + 2) +# 1, -1, 2 10, NaN, 30 NaN if values include NaN NaN +# 1, 0, 2 10, NaN, 30 ignore NaN if weight = 0 (10*1 + 30*2) / (1 + 2) # --> Remove all values for which weight == 0. # --> If remaining values conain NaN --> result is NaN. # --> Otherwise, calculate the result normally. # sum of weights == 0 but not all 0 -# 1, 1, -2 10, 20, 30 Inf if values distinct | Inf -# 1, 1, -2 10, 10, 10 value if values identical | 10 -# 1, -1, 0 10, 10, 30 ignore value if weight = 0 | 10 -# 1, 1, -2 10, 10, NaN NaN if values include NaN | NaN (done) -# 1, -1, 0 10, 10, NaN ignore NaN if weight = 0 | 10 -# 1, -1, 0 NaN, NaN, NaN NaN if values are all NaN | NaN +# 1, 1, -2 10, 20, 30 NaN if values distinct NaN +# 1, 1, -2 10, 10, 10 value if values identical 10 +# 1, -1, 0 10, 10, 30 ignore value if weight = 0 10 +# 1, 1, -2 10, 10, NaN NaN if values include NaN NaN +# 1, -1, 0 10, 10, NaN ignore NaN if weight = 0 10 +# 1, -1, 0 NaN, NaN, NaN NaN if values are all NaN NaN # --> Remove all values for which weight == 0. # --> If remaining values contain NaN --> result is NaN # --> Otherwise, if remaining values are identical --> result is that value # --> Otherwise, result is Inf. # all weights are 0 -# 0, 0, 0 10, 20, 30 Inf if values distinct | Inf -# 0, 0, 0 10, 10, 10 value if values identical | 10 -# 0, 0, 0 10, 10, NaN NaN if values include NaN | NaN +# 0, 0, 0 10, 20, 30 NaN if values distinct NaN +# 0, 0, 0 10, 10, 10 Value if values identical 10 +# 0, 0, 0 10, 10, NaN NaN if values include NaN NaN # --> If values contain NaN --> result is NaN # --> Otherwise, if values are identical --> result is that value -# --> Otherwise, result is Inf. +# --> Otherwise, result is NaN. RESULT_IF_WEIGHTSUM0_VALUESNOTUNIFORM = np.nan +@overload +def general( + fr: pd.Series, weights: Iterable | Mapping | pd.Series = None, axis: int = 0 +) -> float: + ... + + +@overload +def general( + fr: pd.DataFrame, + weights: Iterable | Mapping | pd.Series | pd.DataFrame = None, + axis: int = 0, +) -> pd.Series: + ... + + def general( - fr: Union[pd.Series, pd.DataFrame], - weights: Union[Iterable, pd.Series, pd.DataFrame] = None, + fr: pd.Series | pd.DataFrame, + weights: Iterable | Mapping | pd.Series | pd.DataFrame = None, axis: int = 0, -) -> Union[pd.Series, float]: +) -> float | tools_unit.Q_ | pd.Series: """ Weighted average of series or dataframe. Parameters ---------- - fr : Union[pd.Series, pd.DataFrame] + fr : pd.Series | pd.DataFrame The input values. - weights : Union[Iterable, pd.Series, pd.DataFrame], optional - The weights. If provided as a Series, the weights and values are aligned along - its index. If no weights are provided, the normal (unweighted) average is returned - instead. + weights : Iterable | Mapping | pd.Series | pd.DataFrame, optional + The weights. If provided as a Mapping or Series, the weights and values + are aligned along its index. If no weights are provided, the normal + (unweighted) average is returned instead. axis : int, optional Calculate each column's average over all rows (if axis==0, default) or each row's average over all columns (if axis==1). Ignored for Series. Returns ------- - Union[pd.Series, float] - The weighted average. A single float if `fr` is a Series; a Series if - `fr` is a Dataframe. + float | Q_ | pd.Series + The weighted average. A single float or single Quantitiy if ``fr`` is a Series; + a Series if ``fr`` is a Dataframe. """ if isinstance(fr, pd.DataFrame): return dataframe(fr, weights, axis) @@ -83,8 +99,8 @@ def general( def series( - s: pd.Series, weights: Union[Iterable, Mapping, pd.Series] = None -) -> Union[float, tools_unit.Q_]: + s: pd.Series, weights: Iterable | Mapping | pd.Series = None +) -> float | tools_unit.Q_: """ Weighted average of series. @@ -92,14 +108,14 @@ def series( ---------- s : pd.Series The input values. - weights : Union[Iterable, Mapping, pd.Series], optional + weights : Iterable | Mapping | pd.Series, optional The weights. If provided as a Mapping or Series, the weights and values are aligned along their indices/keys. If no weights are provided, the normal (unweighted) average is returned instead. Returns ------- - Union[float, Quantity] + float | Quantity The weighted average. Notes @@ -117,6 +133,11 @@ def series( s = s.loc[weights.index] except KeyError as e: # more weights than values raise ValueError("No values found for one or more weights.") from e + + # Unweighted average if all weights the same but not all 0. + if weights.nunique() == 1 and not np.isclose(weights.iloc[0], 0): + return s.mean() + # Replace NaN with 0 in locations where it doesn't change the result. replaceable = s.isna() & (weights == 0.0) s[replaceable] = 0.0 @@ -153,7 +174,7 @@ def series( def dataframe( df: pd.DataFrame, - weights: Union[Iterable, Mapping, pd.Series, pd.DataFrame] = None, + weights: Iterable | Mapping | pd.Series | pd.DataFrame = None, axis: int = 0, ) -> pd.Series: """ @@ -163,7 +184,7 @@ def dataframe( ---------- df : pd.DataFrame The input values. - weights : Union[Iterable, Mapping, pd.Series, pd.DataFrame], optional + weights : Iterable | Mapping | pd.Series | pd.DataFrame, optional The weights. If provided as a Series or Mapping, its index are is used for alignment (with ``df``'s index if axis==0, or its columns if axis==1). If no weights are provided, the normal (unweighted) average is returned instead. @@ -306,8 +327,8 @@ def dataframe_columnwavg_with_weightsseries( def _dataframe_columnwavg_with_weightssumnot0( df: pd.DataFrame, - weights: Union[pd.Series, pd.DataFrame], - weightssum: Union[float, tools_unit.Q_, pd.Series], + weights: pd.Series | pd.DataFrame, + weightssum: float | tools_unit.Q_ | pd.Series, ) -> Iterable[pd.Series]: # Calculate the weighted average if sum of weights != 0. weight_is0 = weights == 0.0 @@ -320,7 +341,7 @@ def _dataframe_columnwavg_with_weightssumnot0( def _dataframe_columnwavg_with_weightssum0notall0( - df: pd.DataFrame, weights: Union[pd.Series, pd.DataFrame] + df: pd.DataFrame, weights: pd.Series | pd.DataFrame ) -> Iterable[pd.Series]: # Calculate the weighted average if sum of weights == 0, but not all weights are 0. @@ -399,7 +420,7 @@ def rowvalue_uniformity(df: pd.DataFrame) -> pd.Series: # or uniform NaN, this value/NaN is found in buffer. uniform = pd.Series(True, df.index) buffer = pd.Series(np.nan, df.index) # define to ensure exists even if df empty - for i, (c, s) in enumerate(df.items()): + for i, (_, s) in enumerate(df.items()): if i == 0: # define here to ensure ``values`` has pint dtype if df does too to_type = float if pd.api.types.is_integer_dtype(s.dtype) else s.dtype @@ -416,9 +437,7 @@ def rowvalue_uniformity(df: pd.DataFrame) -> pd.Series: return buffer -def weights_as_series( - weights: Union[Iterable, Mapping], refindex: Iterable -) -> pd.Series: +def weights_as_series(weights: Iterable | Mapping, refindex: Iterable) -> pd.Series: if isinstance(weights, pd.Series): return weights if isinstance(weights, Mapping): diff --git a/portfolyo/tools2/changeyear.py b/portfolyo/tools2/changeyear.py new file mode 100644 index 0000000..b3274ab --- /dev/null +++ b/portfolyo/tools2/changeyear.py @@ -0,0 +1,79 @@ +"""Map series with quarterhourly, hourly, or daily values onto another index or year, +trying to align weekdays, holidays, and dst-changeover days. Always takes values from +same calender month (but different year).""" + +import warnings + +from .. import tools +from ..core.pfline import Kind, PfLine, Structure + + +def map_to_year(pfl: PfLine, year: int, holiday_country: str) -> PfLine: + """Transfer the data to a hypothetical other year. + + Parameters + ---------- + pfl : PfLine + Portfolio line that must be mapped. + year : int + Year to transfer the data to. + holiday_country : str, optional (default: None) + Country or region for which to assume the holidays. E.g. 'DE' (Germany), 'NL' + (Netherlands), or 'USA'. See ``holidays.list_supported_countries()`` for + allowed values. + + Returns + ------- + PfLine + + Notes + ----- + Useful for daily (and shorter) data. Copies over the data but takes weekdays (and + holidays) of target year into consideration. See ``portfolyo.map_frame_as_year()`` + for more information. + Inaccurate for monthly data and longer, because we only have one value per month, + and can therefore not take different number of holidays/weekends (i.e., offpeak + hours) into consideration. + """ + + # Guard clause. + if tools.freq.shortest(pfl.index.freq, "MS") == "MS": + warnings.warn( + "This PfLine has a monthly frequency or longer; changing the year is inaccurate, as" + " details (number of holidays, weekends, offpeak hours, etc) cannot be taken into account." + ) + + # Do mapping. + + if pfl.structure is Structure.NESTED: + return PfLine( + { + name: map_to_year(child, year, holiday_country) + for name, child in pfl.items() + } + ) + + # pfl is FlatPfLine. + + if pfl.kind is Kind.VOLUME: + df = pfl.dataframe( + "w" + ) # Averageble data to allow mapping unequal-length periods + df2 = tools.changeyear.map_frame_to_year(df, year, holiday_country) + elif pfl.kind is Kind.PRICE: + df = pfl.dataframe( + "p" + ) # Averageble data to allow mapping unequal-length periods + df2 = tools.changeyear.map_frame_to_year(df, year, holiday_country) + elif pfl.kind is Kind.REVENUE: + # Assume that revenue is scales proportionately with duration of period. + # E.g. 290 Eur in leapyear Feb --> 280 Eur in non-leapyear Feb. + df = pfl.dataframe("r") + df *= tools.duration.index(df.index) # Make averageble + df2 = tools.changeyear.map_frame_to_year(df, year, holiday_country) + df2 /= tools.duration.index(df2.index) # Make summable again + else: # CompletePfLine + df = pfl.dataframe(["w", "p"]) # Averagable + df2 = tools.changeyear.map_frame_to_year(df, year, holiday_country) + + return PfLine(df2) diff --git a/portfolyo/tools2/concat.py b/portfolyo/tools2/concat.py index bcb5dce..ff13e1b 100644 --- a/portfolyo/tools2/concat.py +++ b/portfolyo/tools2/concat.py @@ -1,15 +1,16 @@ # import pandas as pd # import portfolyo as pf from __future__ import annotations + from typing import Iterable -import pandas as pd -from portfolyo import tools -from ..core.pfstate import PfState -from ..core.pfline.enums import Structure +import pandas as pd -from ..core.pfline import PfLine, create +from .. import tools from ..core import pfstate +from ..core.pfline import PfLine, create +from ..core.pfline.enums import Structure +from ..core.pfstate import PfState def general(pfl_or_pfs: Iterable[PfLine | PfState]) -> None: diff --git a/portfolyo/tools2/intersect.py b/portfolyo/tools2/intersect.py index 8b0664c..41d2278 100644 --- a/portfolyo/tools2/intersect.py +++ b/portfolyo/tools2/intersect.py @@ -1,23 +1,21 @@ -from portfolyo.tools.intersect import indices_flex -from ..core.pfline import PfLine -from ..core.pfstate import PfState -from typing import List, Union +from typing import List -import pandas as pd +from ..tools import intersect as tools_intersect +from .types import Indexable def indexable( - *frames: Union[pd.Series, pd.DataFrame, PfLine, PfState], + *objs: Indexable, ignore_freq: bool = False, ignore_tz: bool = False, ignore_start_of_day: bool = False, -) -> List[Union[pd.Series, pd.DataFrame, PfLine, PfState]]: +) -> List[Indexable]: """Intersect several dataframes and/or series. Parameters ---------- - *frames : pd.Series and/or pd.DataFrame and/or PfLines and/or PfStates - The frames to intersect. + *objs : pd.Series and/or pd.DataFrame and/or PfLines and/or PfStates + The indexable objects to intersect. ignore_freq: bool, optional (default: False) If True, do the intersection even if the frequencies do not match; drop the time periods that do not (fully) exist in either of the frames. @@ -30,18 +28,17 @@ def indexable( Returns ------- - list of series and/or dataframes - As input, but trimmed to their intersection. + As input, but trimmed to their intersection. Notes ----- The indices must have equal frequency, timezone, start-of-day. Otherwise, an error is raised. If there is no overlap, empty frames are returned. """ - new_idxs = indices_flex( - *[fr.index for fr in frames], + new_idxs = tools_intersect.indices_flex( + *[o.index for o in objs], ignore_freq=ignore_freq, ignore_tz=ignore_tz, ignore_start_of_day=ignore_start_of_day, ) - return [fr.loc[idx] for idx, fr in zip(new_idxs, frames)] + return [o.loc[i] for i, o in zip(new_idxs, objs)] diff --git a/portfolyo/tools2/plot.py b/portfolyo/tools2/plot.py index 59fcaa6..9117b36 100644 --- a/portfolyo/tools2/plot.py +++ b/portfolyo/tools2/plot.py @@ -6,12 +6,10 @@ import numpy as np from matplotlib import pyplot as plt -from portfolyo.core.shared.plot import defaultkwargs - from .. import tools -from .. import visualize as vis - +from ..core.pfline.plot import defaultkwargs from ..core.pfstate import PfState +from ..tools import visualize as vis def plot_pfstates(dic: Dict[str, PfState], freq: str = "MS") -> plt.Figure: diff --git a/portfolyo/tools2/types.py b/portfolyo/tools2/types.py new file mode 100644 index 0000000..8805c4d --- /dev/null +++ b/portfolyo/tools2/types.py @@ -0,0 +1,12 @@ +"""Help the type checker.""" + +from typing import TypeVar + +import pandas as pd + +from ..core.pfline import PfLine +from ..core.pfstate import PfState + +Indexable = TypeVar( + "Series_DataFrame_PfLine_PfState", pd.Series, pd.DataFrame, PfLine, PfState +) diff --git a/profile_data b/profile_data new file mode 100755 index 0000000..79ac965 Binary files /dev/null and b/profile_data differ diff --git a/profile_output.txt b/profile_output.txt new file mode 100755 index 0000000..a38061e --- /dev/null +++ b/profile_output.txt @@ -0,0 +1,4735 @@ + 1247635 function calls (1225710 primitive calls) in 1.007 seconds + + Ordered by: internal time + + ncalls tottime percall cumtime percall filename:lineno(function) + 88 0.179 0.002 0.183 0.002 {built-in method _imp.create_dynamic} + 698 0.173 0.000 0.173 0.000 {built-in method io.open_code} + 707 0.140 0.000 0.140 0.000 {method 'read' of '_io.BufferedReader' objects} + 698 0.040 0.000 0.040 0.000 {built-in method marshal.loads} + 102 0.036 0.000 0.036 0.000 {built-in method posix.listdir} + 7303 0.025 0.000 0.043 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/inspect.py:626(cleandoc) + 88/54 0.021 0.000 0.133 0.002 {built-in method _imp.exec_dynamic} +1846/1732 0.015 0.000 0.198 0.000 {built-in method builtins.__build_class__} + 3077 0.013 0.000 0.013 0.000 {built-in method posix.stat} + 6826 0.012 0.000 0.013 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/enum.py:358(__call__) + 452 0.011 0.000 0.011 0.000 {built-in method builtins.dir} + 9965 0.011 0.000 0.011 0.000 {method 'search' of 're.Pattern' objects} + 2 0.010 0.005 0.010 0.005 {method 'poll' of 'select.poll' objects} + 1464 0.008 0.000 0.008 0.000 {method 'sub' of 're.Pattern' objects} + 734 0.007 0.000 0.007 0.000 {method '__exit__' of '_io._IOBase' objects} + 861/1 0.007 0.000 1.007 1.007 {built-in method builtins.exec} + 975/300 0.007 0.000 0.017 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_parse.py:494(_parse) + 117088 0.006 0.000 0.006 0.000 {method 'startswith' of 'str' objects} + 72506 0.006 0.000 0.006 0.000 {built-in method builtins.getattr} + 223 0.006 0.000 0.018 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/artist.py:1517(get_setters) + 45 0.005 0.000 0.006 0.000 {built-in method io.open} + 405 0.005 0.000 0.005 0.000 {method 'findall' of 're.Pattern' objects} + 223 0.005 0.000 0.009 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/artist.py:1453() +157553/155565 0.005 0.000 0.005 0.000 {built-in method builtins.len} + 5 0.005 0.001 0.005 0.001 {built-in method _posixsubprocess.fork_exec} + 4252 0.004 0.000 0.062 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/artist.py:1470(get_valid_values) + 1 0.004 0.004 0.006 0.006 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/generic.py:226(NDFrame) + 223 0.004 0.000 0.029 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/artist.py:1442(get_aliases) + 56522 0.004 0.000 0.004 0.000 {built-in method builtins.min} + 83972 0.004 0.000 0.005 0.000 {built-in method builtins.isinstance} + 1081 0.004 0.000 0.057 0.000 :1514(find_spec) +21198/21189 0.004 0.000 0.005 0.000 {method 'join' of 'str' objects} + 8 0.004 0.000 0.004 0.000 {built-in method posix.read} + 77916 0.004 0.000 0.004 0.000 {method 'lstrip' of 'str' objects} + 3516 0.003 0.000 0.003 0.000 {built-in method __new__ of type object at 0x1003ab388} + 9629 0.003 0.000 0.003 0.000 {method 'split' of 'str' objects} + 30 0.003 0.000 0.016 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/__init__.py:847(_rc_params_in_file) + 1803/284 0.003 0.000 0.007 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_compile.py:87(_compile) + 1 0.003 0.003 0.003 0.003 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/linalg/linalg.py:2191(lstsq) + 6212 0.003 0.000 0.015 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/inspect.py:2498(__init__) + 45 0.003 0.000 0.005 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/enum.py:179(__new__) + 819 0.003 0.000 0.066 0.000 :901(_find_spec) + 7443 0.003 0.000 0.034 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/re.py:289(_compile) + 7317 0.003 0.000 0.003 0.000 {method 'expandtabs' of 'str' objects} + 1 0.002 0.002 0.006 0.006 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/scimath.py:1() + 954 0.002 0.000 0.003 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/inspect.py:2781(__init__) + 7315 0.002 0.000 0.041 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/inspect.py:607(getdoc) + 833/1 0.002 0.000 1.007 1.007 :1002(_find_and_load) + 698 0.002 0.000 0.329 0.000 :916(get_code) + 1396 0.002 0.000 0.006 0.000 :361(cache_from_source) + 701 0.002 0.000 0.016 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/inspect.py:2152(_signature_from_function) + 746 0.002 0.000 0.003 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/enum.py:88(__setitem__) + 14602 0.002 0.000 0.002 0.000 {built-in method builtins.hasattr} + 117 0.002 0.000 0.076 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/artist.py:1598(pprint_setters) + 12710 0.002 0.000 0.002 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_parse.py:234(__next) + 5863 0.002 0.000 0.005 0.000 :121(_path_join) + 45160 0.002 0.000 0.002 0.000 {method 'append' of 'list' objects} + 4252 0.002 0.000 0.004 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/artist.py:1555(aliased_name) + 5863 0.002 0.000 0.002 0.000 :123() + 385 0.002 0.000 0.002 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_compile.py:292(_optimize_charset) + 1845 0.002 0.000 0.003 0.000 :166(_get_module_lock) + 794 0.002 0.000 0.008 0.000 :486(_init_module_attrs) + 556 0.002 0.000 0.002 0.000 {built-in method numpy.array} + 2129/633 0.002 0.000 0.002 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_parse.py:175(getwidth) + 11722 0.002 0.000 0.002 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_parse.py:165(__getitem__) + 794/1 0.001 0.000 1.007 1.007 :659(_load_unlocked) + 829/1 0.001 0.000 1.007 1.007 :967(_find_and_load_unlocked) + 965 0.001 0.000 0.003 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/functools.py:35(update_wrapper) + 62 0.001 0.000 0.002 0.000 {built-in method builtins.eval} + 1845 0.001 0.000 0.002 0.000 :112(release) + 1845 0.001 0.000 0.002 0.000 :87(acquire) + 793/715 0.001 0.000 0.019 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/inspect.py:2246(_signature_from_callable) + 5771 0.001 0.000 0.019 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/re.py:198(search) + 814 0.001 0.000 0.060 0.000 :1383(_get_spec) + 10485 0.001 0.000 0.003 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_parse.py:255(get) + 405 0.001 0.000 0.015 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/textwrap.py:414(dedent) + 698 0.001 0.000 0.279 0.000 :1036(get_data) + 1162 0.001 0.000 0.003 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:137(_type_check) + 1 0.001 0.001 0.004 0.004 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:1() + 3451 0.001 0.000 0.002 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:713(__setattr__) + 1679 0.001 0.000 0.001 0.000 {method 'format' of 'str' objects} + 711/284 0.001 0.000 0.018 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_parse.py:436(_parse_sub) + 175 0.001 0.000 0.001 0.000 {built-in method builtins.compile} + 44 0.001 0.000 0.002 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/collections/__init__.py:345(namedtuple) + 7447 0.001 0.000 0.001 0.000 {built-in method builtins.setattr} + 4442 0.001 0.000 0.001 0.000 {built-in method builtins.sorted} + 786 0.001 0.000 0.001 0.000 :696(spec_from_file_location) + 12986 0.001 0.000 0.001 0.000 {method 'get' of 'dict' objects} + 105 0.001 0.000 0.004 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/artist.py:170() + 31390 0.001 0.000 0.001 0.000 {built-in method builtins.callable} + 538 0.001 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:191(_collect_type_vars) + 1396 0.001 0.000 0.002 0.000 :127(_path_split) + 6320 0.001 0.000 0.001 0.000 :231(_verbose_message) + 5 0.001 0.000 0.001 0.000 {method 'readlines' of '_io._IOBase' objects} + 1678/210 0.001 0.000 0.001 0.000 {built-in method _abc._abc_subclasscheck} + 698/1 0.001 0.000 1.007 1.007 :844(exec_module) + 3783 0.001 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_parse.py:173(append) + 2674 0.001 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/cbook.py:405(_strip_comment) + 15436 0.001 0.000 0.001 0.000 {method 'rstrip' of 'str' objects} + 794/792 0.001 0.000 0.193 0.000 :558(module_from_spec) + 1099/5 0.001 0.000 0.943 0.189 :1033(_handle_fromlist) + 515 0.001 0.000 0.004 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:739(__init__) + 5 0.001 0.000 0.011 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/subprocess.py:1677(_execute_child) + 698 0.001 0.000 0.041 0.000 :645(_compile_bytecode) + 31 0.001 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/function_base.py:24(linspace) + 2094 0.001 0.000 0.001 0.000 :79(_unpack_uint32) + 284 0.001 0.000 0.030 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_compile.py:783(compile) + 3451 0.001 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:665(_is_dunder) + 3061 0.001 0.000 0.013 0.000 :135(_path_stat) + 698 0.001 0.000 0.001 0.000 :560(_classify_pyc) + 284 0.001 0.000 0.002 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_compile.py:560(_compile_info) + 2 0.001 0.000 0.001 0.000 {built-in method _ctypes.POINTER} + 6817 0.001 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/enum.py:670(__new__) + 3 0.001 0.000 0.001 0.000 {built-in method posix.open} + 586 0.001 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_utils/_inspect.py:65(getargs) + 4 0.001 0.000 0.001 0.000 {method 'read' of '_io.TextIOWrapper' objects} + 3283 0.001 0.000 0.001 0.000 :878(__exit__) + 5095 0.001 0.000 0.001 0.000 {method 'rpartition' of 'str' objects} + 195 0.001 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:1110() + 6447 0.001 0.000 0.001 0.000 {method 'group' of 're.Match' objects} + 2086 0.001 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:947() + 9321 0.001 0.000 0.001 0.000 {method 'pop' of 'list' objects} + 830 0.001 0.000 0.001 0.000 :185(cb) + 272 0.001 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_parse.py:433(_uniq) + 1738 0.001 0.000 0.001 0.000 {built-in method builtins.max} + 220 0.001 0.000 0.001 0.000 {built-in method _abc._abc_init} + 959/871 0.001 0.000 0.010 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:271(inner) + 1012 0.000 0.000 0.003 0.000 :203(_lock_unlock_module) + 317 0.000 0.000 0.003 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/overrides.py:142(decorator) + 786 0.000 0.000 0.004 0.000 :491(_get_cached) + 816 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/enum.py:462(__setattr__) + 1484 0.000 0.000 0.005 0.000 :385(cached) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/linalg/linalg.py:492(inv) + 786 0.000 0.000 0.002 0.000 :1509(_get_spec) + 792 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/inspect.py:494(unwrap) + 3283 0.000 0.000 0.001 0.000 :874(__enter__) +2349/2179 0.000 0.000 0.001 0.000 {method 'update' of 'dict' objects} + 284 0.000 0.000 0.019 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_parse.py:944(parse) + 3902 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_parse.py:161(__len__) + 3984 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_parse.py:250(match) + 830 0.000 0.000 0.001 0.000 :58(__init__) + 462 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/copy.py:66(copy) + 1427 0.000 0.000 0.001 0.000 :398(parent) + 1190 0.000 0.000 0.005 0.000 :145(_path_is_mode_type) + 1017 0.000 0.000 0.006 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/__init__.py:711(__setitem__) + 24 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/util.py:186(_collapse_string_to_ranges) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/axis.py:596(Axis) + 814 0.000 0.000 0.061 0.000 :1415(find_spec) + 1981 0.000 0.000 0.000 0.000 {method 'match' of 're.Pattern' objects} + 92 0.000 0.000 0.035 0.000 :1565(_fill_cache) + 2 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/json/decoder.py:343(raw_decode) + 2792 0.000 0.000 0.001 0.000 :129() + 1879 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_parse.py:112(__init__) + 6 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/getlimits.py:34(__init__) + 3538/834 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_api/__init__.py:353(recursive_subclasses) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/holidays/calendars/islamic.py:42(_IslamicLunar) + 566/4 0.000 0.000 0.943 0.236 {built-in method builtins.__import__} + 33 0.000 0.000 0.009 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:809(_process_class) + 5422 0.000 0.000 0.000 0.000 {method 'find' of 'str' objects} + 5958 0.000 0.000 0.000 0.000 {built-in method _imp.acquire_lock} + 5 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/subprocess.py:1207(_close_pipe_fds) + 3024 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/inspect.py:2830() + 243 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:461(__init__) + 3637 0.000 0.000 0.000 0.000 {method 'endswith' of 'str' objects} + 5958 0.000 0.000 0.000 0.000 {built-in method _imp.release_lock} + 833 0.000 0.000 0.003 0.000 :156(__enter__) + 278 0.000 0.000 0.002 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/overrides.py:83(verify_matching_signatures) + 276 0.000 0.000 0.007 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/util/_decorators.py:360(decorator) + 1126/1 0.000 0.000 1.007 1.007 :220(_call_with_frames_removed) + 1210 0.000 0.000 0.002 0.000 :1346(_path_importer_cache) + 819 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/_distutils_hack/__init__.py:89(find_spec) + 2386 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_parse.py:287(tell) + 698 0.000 0.000 0.001 0.000 :593(_validate_timestamp_pyc) + 461 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/copy.py:258(_reconstruct) + 136 0.000 0.000 0.013 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_docstring.py:38(__call__) + 173 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:310(_to_rgba_no_colorcycle) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:2978(__array_finalize__) + 1081 0.000 0.000 0.000 0.000 :64(_relax_case) + 94 0.000 0.000 0.005 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/__init__.py:1391(_preprocess_data) + 1 0.000 0.000 0.008 0.008 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_testing/__init__.py:1() + 160 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/shape_base.py:612(column_stack) + 5981 0.000 0.000 0.000 0.000 {method 'strip' of 'str' objects} + 6769 0.000 0.000 0.000 0.000 {method 'isidentifier' of 'str' objects} + 306/12 0.000 0.000 0.002 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:809(_parseNoCache) + 1096 0.000 0.000 0.005 0.000 :154(_path_isfile) + 7715 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/inspect.py:2548(name) + 4798 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/artist.py:1563() + 3698 0.000 0.000 0.000 0.000 {method '__exit__' of '_thread.lock' objects} + 356 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/inspect.py:545(_finddoc) + 605 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_utils/_inspect.py:96(getargspec) + 162 0.000 0.000 0.006 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:377(_create_fn) + 1 0.000 0.000 0.000 0.000 {method 'dot' of 'numpy.ndarray' objects} + 2686 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/util.py:189(is_consecutive) + 45 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/enum.py:221() + 16 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_type_aliases.py:58(bitname) + 698 0.000 0.000 0.000 0.000 :523(_check_name_wrapper) + 822 0.000 0.000 0.000 0.000 :351(__init__) + 1 0.000 0.000 0.004 0.004 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/polynomial.py:453(polyfit) + 1 0.000 0.000 0.000 0.000 {method 'accumulate' of 'numpy.ufunc' objects} + 220 0.000 0.000 0.005 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:434(Union) + 1673 0.000 0.000 0.000 0.000 {built-in method _thread.allocate_lock} + 105 0.000 0.000 0.112 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/artist.py:159(_update_set_signature_and_docstring) + 425 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_parse.py:356(_escape) + 487 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/font_manager.py:928(_json_decode) + 833 0.000 0.000 0.001 0.000 :160(__exit__) + 698 0.000 0.000 0.003 0.000 :1077(path_stats) + 723 0.000 0.000 0.000 0.000 {method 'replace' of 'str' objects} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/getlimits.py:540(_init) + 1 0.000 0.000 0.003 0.003 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_methods.py:1() + 385 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_compile.py:265(_compile_charset) + 223 0.000 0.000 0.030 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/artist.py:1422(__init__) + 5 0.000 0.000 0.011 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/subprocess.py:756(__init__) + 6560 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/inspect.py:2560(kind) + 92 0.000 0.000 0.000 0.000 :1594() + 12 0.000 0.000 0.002 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/importlib/metadata.py:462(search) + 284 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/enum.py:977(__and__) + 700 0.000 0.000 0.000 0.000 :35(_new_module) + 3711 0.000 0.000 0.000 0.000 {built-in method _thread.get_ident} + 10 0.000 0.000 0.000 0.000 {pandas._libs.hashtable.object_hash} + 220 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:232(_remove_dups_flatten) + 746 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/enum.py:44(_is_private) + 1835 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/inspect.py:159(isfunction) + 6345 0.000 0.000 0.000 0.000 {built-in method builtins.ord} + 831 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_compile.py:447(_simple) + 954 0.000 0.000 0.005 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/artist.py:1542(is_alias) + 1507 0.000 0.000 0.000 0.000 {method 'rfind' of 'str' objects} + 4253 0.000 0.000 0.000 0.000 {method 'lower' of 'str' objects} + 1664 0.000 0.000 0.001 0.000 {built-in method _abc._abc_instancecheck} + 1215 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:128(_type_convert) + 284 0.000 0.000 0.010 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_compile.py:622(_code) + 437 0.000 0.000 0.005 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/artist.py:1536(number_of_parameters) + 356 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/inspect.py:535(_findclass) + 2826 0.000 0.000 0.000 0.000 {method 'add' of 'set' objects} + 757 0.000 0.000 0.004 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/re.py:203(sub) + 424 0.000 0.000 0.002 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:307(validate_color) + 715 0.000 0.000 0.019 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/inspect.py:3111(signature) + 626 0.000 0.000 0.007 0.000 {built-in method builtins.next} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/helpers.py:643() + 515 0.000 0.000 0.002 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:677(__init__) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_typing/_scalars.py:1() + 1333 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/__init__.py:670(_set) + 317 0.000 0.000 0.004 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/function_base.py:497(add_newdoc) + 18 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/arrayprint.py:1588(_guarded_repr_or_str) + 316/273 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_compile.py:485(_get_literal_prefix) + 276 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/util/_decorators.py:376() + 1 0.000 0.000 0.064 0.064 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/_version.py:248(git_pieces_from_vcs) + 322 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/posixpath.py:71(join) + 3780 0.000 0.000 0.000 0.000 {built-in method posix.fspath} + 461 0.000 0.000 0.002 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:522(copy) + 458 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:268(to_rgba) + 1207 0.000 0.000 0.000 0.000 {method 'extend' of 'list' objects} + 92 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:671(_get_field) + 715 0.000 0.000 0.019 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/inspect.py:2859(from_callable) + 2230 0.000 0.000 0.000 0.000 {method 'setdefault' of 'dict' objects} + 295 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_parse.py:225(__init__) + 345 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_parse.py:85(opengroup) + 909 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/functools.py:65(wraps) + 220 0.000 0.000 0.003 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/abc.py:105(__new__) + 88 0.000 0.000 0.184 0.002 :1171(create_module) + 117 0.000 0.000 0.088 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/artist.py:1837(kwdoc) + 256/18 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ast.py:409(generic_visit) + 65 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_api/deprecation.py:128(deprecate) + 814 0.000 0.000 0.000 0.000 :811(find_spec) + 5 0.000 0.000 0.063 0.013 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/_version.py:73(run_command) + 1 0.000 0.000 0.009 0.009 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/numeric.py:1() + 75 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/inspect.py:3065(__str__) + 1262 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_parse.py:82(groups) + 705 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/re.py:188(match) + 1664 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/abc.py:117(__instancecheck__) + 835 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/__init__.py:690(_get) + 1 0.000 0.000 0.000 0.000 {built-in method utcfromtimestamp} + 744 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/enum.py:22(_is_dunder) + 286 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:218(_deduplicate) + 91 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_compile.py:437() + 92 0.000 0.000 0.000 0.000 :1475(__init__) + 2 0.000 0.000 0.000 0.000 {method 'readline' of '_io.BufferedReader' objects} + 70 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_config/config.py:452(register_option) + 885 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:216(_is_nth_color) + 175 0.000 0.000 0.003 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/tokenize.py:429(_tokenize) + 1610 0.000 0.000 0.000 0.000 {method 'pop' of 'dict' objects} + 432/357 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:933(__hash__) + 155 0.000 0.000 0.007 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/util/_decorators.py:481(__call__) + 2223 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:743() + 746 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/enum.py:33(_is_sunder) + 61 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_utils/_inspect.py:144() + 104 0.000 0.000 0.111 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/artist.py:126(__init_subclass__) + 833 0.000 0.000 0.000 0.000 :152(__init__) + 2095 0.000 0.000 0.000 0.000 {built-in method from_bytes} + 5 0.000 0.000 0.052 0.010 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/subprocess.py:1090(communicate) + 17 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/dtypes/generic.py:36(create_pandas_abc_type) + 849 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/inspect.py:514(_is_wrapper) + 92 0.000 0.000 0.001 0.000 :63(__init__) + 418 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/holidays/registry.py:172(__init__) + 650 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/os.py:804(fsencode) + 92 0.000 0.000 0.002 0.000 :1333(_path_hooks) + 167 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:958(__hash__) + 134 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:333(__init__) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/contextlib.py:452(callback) + 1317 0.000 0.000 0.000 0.000 {method 'find' of 'bytearray' objects} + 241 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_compile.py:516(_get_charset_prefix) + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/frame.py:490(DataFrame) + 284 0.000 0.000 0.000 0.000 {built-in method _sre.compile} + 48 0.000 0.000 0.003 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/__init__.py:1347(_add_data_doc) + 698 0.000 0.000 0.000 0.000 :1006(__init__) + 312 0.000 0.000 0.000 0.000 {built-in method fromkeys} + 1 0.000 0.000 0.227 0.227 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/pyplot.py:4() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_cm_listed.py:1() +1598/1159 0.000 0.000 0.000 0.000 {built-in method builtins.hash} + 66 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:481(Literal) + 32 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:1036(from_list) + 19 0.000 0.000 0.003 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:799(validate_cycler) + 863 0.000 0.000 0.002 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:466() + 1 0.000 0.000 0.000 0.000 {function SeedSequence.generate_state at 0x101314dc0} + 461 0.000 0.000 0.000 0.000 {method '__reduce_ex__' of 'object' objects} + 88/54 0.000 0.000 0.133 0.002 :1179(exec_module) + 66 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4540(__init__) + 71 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:832(__getitem__) + 99 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/enum.py:582(_find_data_type) + 1678/210 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/abc.py:121(__subclasscheck__) + 78/4 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:962(_parseCache) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/strings/accessor.py:147(StringMethods) + 698 0.000 0.000 0.000 0.000 {built-in method _imp._fix_co_filename} + 802 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/types.py:171(__get__) + 574 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/enum.py:12(_is_descriptor) + 261 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/inspect.py:2582(__str__) + 495 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/posixpath.py:60(isabs) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/html/entities.py:1() + 52 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:894(__init__) + 2636 0.000 0.000 0.000 0.000 {built-in method builtins.issubclass} + 61 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:628(__init__) + 568 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_compile.py:619(isstring) + 80 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:1122(_parse_unit_name) + 1 0.000 0.000 0.005 0.005 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/fromnumeric.py:1() + 306 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/results.py:148(__new__) + 424 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/function_base.py:348(iterable) + 814 0.000 0.000 0.000 0.000 {built-in method _imp.is_frozen} + 1013 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/importlib/metadata.py:455(is_egg) + 1510 0.000 0.000 0.000 0.000 {method 'items' of 'dict' objects} + 1 0.000 0.000 0.030 0.030 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/multiarray.py:1() + 158 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:612(_is_type) + 342 0.000 0.000 0.000 0.000 {built-in method numpy.core._multiarray_umath.add_docstring} + 22/3 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3983(streamline) + 728/559 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:756(__hash__) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/series.py:244(Series) + 284 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_parse.py:928(fix_flags) + 427 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:221(is_color_like) + 980 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:750(__eq__) + 518 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/__init__.py:741(__getitem__) + 67 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3948(__init__) + 150 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_parse.py:868(_parse_flags) + 33 0.000 0.000 0.002 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:489(_init_fn) + 819 0.000 0.000 0.000 0.000 :736(find_spec) + 91 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_compile.py:435(_mk_bitmap) + 52 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/util/_decorators.py:440(__call__) + 1 0.000 0.000 0.215 0.215 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/__init__.py:1() + 53 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/util.py:240(_make_synonym_function) + 18 0.000 0.000 0.000 0.000 {method 'split' of 're.Pattern' objects} + 284 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_parse.py:76(__init__) + 18 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:1866(__new__) + 798 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/__init__.py:966() + 177 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_parse.py:296(_class_escape) + 519 0.000 0.000 0.000 0.000 {built-in method builtins.repr} + 45/12 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:759(__getitem__) + 511 0.000 0.000 0.000 0.000 {built-in method numpy.asanyarray} + 609 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/inspect.py:73(isclass) + 846 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/posixpath.py:41(_get_sep) + 847 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_parse.py:169(__setitem__) + 273 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/re.py:325(_subx) + 605 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_utils/_inspect.py:13(ismethod) + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/os.py:619(get_exec_path) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/getlimits.py:162(_register_known_types) + 564 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:180(validator) + 936 0.000 0.000 0.000 0.000 {built-in method builtins.iter} + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/contextlib.py:489(__exit__) + 247 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:279(validate_color_for_prop_cycle) + 78 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/inspect.py:1840(_signature_bound_method) + 136 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/holidays/registry.py:254() + 45 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/enum.py:618(_find_new_) + 19 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cycler/__init__.py:416(by_key) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/holidays/calendars/chinese.py:26(_ChineseLunisolar) + 29 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:556(_select_from) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/holidays/calendars/hebrew.py:18(_HebrewLunisolar) + 306 0.000 0.000 0.000 0.000 {built-in method builtins.any} + 276 0.000 0.000 0.003 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/util/_decorators.py:384() + 7 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/enum.py:545() + 1 0.000 0.000 0.000 0.000 {built-in method posix.scandir} + 76 0.000 0.000 0.000 0.000 {method 'strftime' of 'datetime.date' objects} + 2 0.000 0.000 0.012 0.006 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/style/core.py:206(read_style_directory) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pickle.py:407(_Pickler) + 605 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_utils/_inspect.py:26(isfunction) + 345 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_parse.py:97(closegroup) + 32 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:409(to_rgba_array) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_color_data.py:989() + 44/29 0.000 0.000 0.003 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/pint_eval.py:125(build_eval_tree) + 1 0.000 0.000 0.007 0.007 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:5() + 30 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_utils/_inspect.py:140(formatargspec) + 675 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:928(__eq__) + 92 0.000 0.000 0.001 0.000 :1606(path_hook_for_FileFinder) + 86 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3754(__init__) + 737 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:565(__eq__) + 47 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:1007(__init_subclass__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/base.py:303(Index) + 126/115 0.000 0.000 0.012 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_docstring.py:79(__call__) + 256/18 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ast.py:403(visit) + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/reshape/merge.py:1() + 115 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:88(f) + 1 0.000 0.000 0.092 0.092 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/__init__.py:1() + 586 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_utils/_inspect.py:41(iscode) + 45 0.000 0.000 0.002 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/enum.py:164(__prepare__) + 1 0.000 0.000 0.008 0.008 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/axes/_axes.py:46(Axes) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/six.py:21() + 422 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_compile.py:81(_combine_flags) + 34 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/numeric.py:136(ones) + 8 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sysconfig.py:154(_subst_vars) + 1 0.000 0.000 0.007 0.007 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ctypes/__init__.py:1() + 2403 0.000 0.000 0.000 0.000 {built-in method builtins.chr} + 12 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_api/__init__.py:223(define_aliases) + 317 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/function_base.py:465(_needs_add_docstring) + 698 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ast.py:244(iter_fields) + 79 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_parse.py:268(getuntil) + 34 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:64(parse_parts) + 55 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/warnings.py:458(__enter__) + 133/64 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3880(copy) + 29 0.000 0.000 0.004 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:597(from_string) + 794 0.000 0.000 0.000 0.000 :406(has_location) + 93 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_utils/_inspect.py:131(strseq) + 153 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:524(__init__) + 124 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/expr.py:192() + 1199 0.000 0.000 0.000 0.000 {built-in method builtins.id} + 461 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/copyreg.py:94(__newobj__) + 40 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:1149(__init__) + 132 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ast.py:419(visit_Constant) + 12 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_docstring.py:57() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_exceptions.py:71(_UFuncCastingError) + 72/12 0.000 0.000 0.002 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4034(parseImpl) + 66 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:249(_flatten_literal_params) + 50 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_internal.py:872(_ufunc_doc_signature_formatter) + 62/9 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3788(leave_whitespace) + 26 0.000 0.000 0.000 0.000 {built-in method posix.lstat} + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/expr.py:283(disallowed) + 134 0.000 0.000 0.000 0.000 {built-in method _imp.is_builtin} + 1 0.000 0.000 0.020 0.020 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/__init__.py:25() + 771 0.000 0.000 0.000 0.000 {method 'encode' of 'str' objects} + 7 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:2810(__init__) + 11 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/accessor.py:63(_add_delegate_accessors) + 822 0.000 0.000 0.000 0.000 {method '__subclasses__' of 'type' objects} + 1 0.000 0.000 0.010 0.010 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/subprocess.py:1942(_communicate) + 70 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_api/deprecation.py:257(rename_parameter) + 248/220 0.000 0.000 0.005 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:352(__getitem__) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/expr.py:1() + 51 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:909(__getitem__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/text.py:80(Text) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/unicode.py:63() + 200 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/pyplot.py:164(_copy_docstring_and_deprecators) + 460 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:348() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/ExifTags.py:294() + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/contextlib.py:408(__init__) + 42 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:985(__class_getitem__) + 76 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:91() + 557 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_compile.py:477(_get_iscased) + 30/4 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3828(streamline) + 317 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/function_base.py:483(_add_docstring) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:661(_build_cache) + 1876 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/__init__.py:847() + 927 0.000 0.000 0.000 0.000 {method 'get' of 'mappingproxy' objects} + 698 0.000 0.000 0.000 0.000 :1031(get_filename) + 67 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:1108() + 99 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/enum.py:571(_get_mixins_) + 1 0.000 0.000 0.000 0.000 {built-in method numpy.core._multiarray_umath.set_typeDict} + 736 0.000 0.000 0.000 0.000 :1481() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/stata.py:822(StataMissingValue) + 356 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/inspect.py:81(ismethod) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/subprocess.py:1901(_wait) + 1 0.000 0.000 0.008 0.008 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/__init__.py:1() + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/cm.py:32(_gen_cmap_registry) + 146 0.000 0.000 0.003 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/compat.py:29(tokenizer) + 111 0.000 0.000 0.000 0.000 {built-in method _codecs.utf_8_decode} + 137 0.000 0.000 0.000 0.000 {built-in method builtins.locals} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/datetimelike.py:187(DatetimeLikeArrayMixin) + 915 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/inspect.py:2865(parameters) + 301 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/feedparser.py:78(readline) + 585 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:391() + 1 0.000 0.000 0.011 0.011 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pickle.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/packaging/_structures.py:6(InfinityType) + 24 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/dviread.py:220(decorate) + 122 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/numpy_func.py:242(implement_func) + 122 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:841(copy_with) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/internals/managers.py:1() + 22 0.000 0.000 0.000 0.000 {built-in method posix.readlink} + 214/116 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:1872(default_name) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:2697(MaskedArray) + 58 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3110(parseImpl) + 170 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:677(__init__) + 48 0.000 0.000 0.000 0.000 {method 'issuperset' of 'set' objects} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cycler/__init__.py:1() + 196 0.000 0.000 0.019 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/re.py:250(compile) + 306/282 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/results.py:171(__init__) + 792 0.000 0.000 0.000 0.000 {built-in method sys.getrecursionlimit} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/locale.py:1() + 1 0.000 0.000 0.008 0.008 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/hmac.py:1() + 26 0.000 0.000 0.010 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_api/deprecation.py:416(make_keyword_only) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/feedparser.py:218(_parsegen) + 109 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/extension.py:35(_inherit_from_data) + 1 0.000 0.000 0.082 0.082 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/__init__.py:805(copy) + 148 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/inspect.py:2873(replace) + 37 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/getlimits.py:111(_float_to_str) + 147 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/TiffTags.py:26(__new__) + 39 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:107() + 1 0.000 0.000 0.005 0.005 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/random.py:1() + 111 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/codecs.py:319(decode) + 169 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:2422(__new__) + 88 0.000 0.000 0.000 0.000 :1155(__init__) + 29 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:1284(getLogger) + 12 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/extension.py:128(wrapper) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:1814(Parser) + 698 0.000 0.000 0.000 0.000 :841(create_module) + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_typing.py:1() + 27 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_api/deprecation.py:154(_deprecated_property) + 190 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/subprocess.py:1765() + 373 0.000 0.000 0.000 0.000 {built-in method sys.intern} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/range.py:57(RangeIndex) + 29 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:778(string_preprocessor) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/_mixins.py:97(NDArrayBackedExtensionArray) + 231 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/inspect.py:1748(_signature_get_user_defined_method) + 33 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:998(dataclass) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/_iotools.py:229(NameValidator) + 1 0.000 0.000 0.004 0.004 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/helpers.py:2() + 1 0.000 0.000 0.057 0.057 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:1() + 45 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/enum.py:197() + 20 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/mixins.py:16(_binary_method) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sysconfig.py:163(_extend_dict) + 317 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/overrides.py:105(array_function_dispatch) + 165 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:140(validate_bool) + 9 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/enum.py:475(_create_) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/config_init.py:1() + 110 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:416(_field_init) + 269/169 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:1899(name) + 45 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/enum.py:561(_check_for_existing_members) + 1 0.000 0.000 0.073 0.073 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/frame.py:1() + 1 0.000 0.000 0.009 0.009 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/series.py:1() + 42 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/contextlib.py:234(contextmanager) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/uuid.py:84(UUID) + 77 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/os.py:674(__getitem__) + 32 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:497() + 1 0.000 0.000 0.019 0.019 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/Image.py:27() + 133/64 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3883() + 44 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/axes/_base.py:66(__set_name__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/strings/object_array.py:33(ObjectStringArrayMixin) + 84 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_api/__init__.py:244(make_alias) + 1 0.000 0.000 0.045 0.045 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/__init__.py:1() + 180 0.000 0.000 0.000 0.000 :175(_path_isabs) + 837 0.000 0.000 0.000 0.000 {method '__getitem__' of 'dict' objects} + 52 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/ops/common.py:40(_unpack_zerodim_and_defer) + 1 0.000 0.000 0.003 0.003 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/parsers/readers.py:1() + 6 0.000 0.000 0.002 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:2257() + 20 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/getlimits.py:685(__init__) + 130 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:967(__init__) + 1 0.000 0.000 0.137 0.137 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/api.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/rrule.py:2() + 276 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/util/_decorators.py:340(doc) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/contextlib.py:402(_create_cb_wrapper) + 1 0.000 0.000 0.044 0.044 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/axes/_axes.py:1() + 77 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/inspect.py:1866(_signature_is_builtin) + 1015 0.000 0.000 0.000 0.000 {method 'isupper' of 'str' objects} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/numpy_func.py:1() + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/numeric.py:2507(extend_all) + 1 0.000 0.000 0.006 0.006 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/groupby/groupby.py:1() + 166 0.000 0.000 0.000 0.000 {method 'translate' of 'str' objects} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/dates.py:1839(ConciseDateConverter) + 38 0.000 0.000 0.000 0.000 {method 'remove' of 'list' objects} + 60 0.000 0.000 0.004 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/__init__.py:829(_open_file_or_url) + 1 0.000 0.000 0.057 0.057 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/generic.py:2() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/TiffTags.py:420(_populate) + 1 0.000 0.000 0.003 0.003 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/common.py:8(pyparsing_common) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/__init__.py:982() + 30 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/tokenize.py:295(detect_encoding) + 1 0.000 0.000 0.003 0.003 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/socket.py:4() + 1 0.000 0.000 0.005 0.005 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/common.py:1() + 28 0.000 0.000 0.002 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:550(_frozen_get_del_attr) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/transforms.py:84(TransformNode) + 843 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/inspect.py:2552(default) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/importlib/_common.py:1() + 1 0.000 0.000 0.009 0.009 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_typing/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/artist.py:117(Artist) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_tools.py:73(ToolBase) + 1 0.000 0.000 0.024 0.024 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/numerictypes.py:1() + 162 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/expr.py:256(_node_not_implemented) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/contour.py:716(ContourSet) + 81 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/accessor.py:94(_create_delegator_property) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/feedparser.py:471(_parse_headers) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/excel/_openpyxl.py:39(OpenpyxlWriter) + 44 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/axes/_base.py:51(__init__) + 10 0.000 0.000 0.002 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_fontconfig_pattern.py:80(parse_fontconfig_pattern) + 34 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:880(_get_root_units) + 6 0.000 0.000 0.000 0.000 {method 'close' of '_io.BufferedReader' objects} + 163 0.000 0.000 0.000 0.000 {built-in method builtins.all} + 1 0.000 0.000 0.313 0.313 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/__init__.py:1() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/tools/datetimes.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/babel/core.py:134(Locale) + 11 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/packaging/version.py:186(__init__) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/function_base.py:1() + 12 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/datetime.py:492(__new__) + 365 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:419(__hash__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/tarfile.py:331(_Stream) + 170 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:771(__copy__) + 18 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:1846(_make_nmtuple) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:394(ParserElement) + 1 0.000 0.000 0.009 0.009 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/base.py:1() + 142 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:753(_set_new_attribute) + 12 0.000 0.000 0.010 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_docstring.py:51(__missing__) + 91 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:432(__eq__) + 42 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:2438(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:78() + 67 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:1089(reversed) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_typing/_array_like.py:1() + 18 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/posixpath.py:334(normpath) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/__init__.py:351(_sanity_check) + 28 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:1335(_fixupParents) + 1 0.000 0.000 0.009 0.009 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/categorical.py:1() + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/unicode.py:55(_chars_for_ranges) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/polynomial/chebyshev.py:1995(Chebyshev) + 58 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/contextlib.py:86(__init__) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:857(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_color_data.py:2() + 66 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:1410(__add__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/holidays/calendars/hindu.py:22(_HinduLunisolar) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/mpl_toolkits/mplot3d/axes3d.py:42(Axes3D) + 154 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:790(preParse) + 10 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_api/deprecation.py:316(delete_parameter) + 384 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/enum.py:438() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/groupby/groupby.py:826(GroupBy) + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_ufunc_config.py:1() + 1 0.000 0.000 0.006 0.006 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/formats/format.py:1() + 75 0.000 0.000 0.000 0.000 {built-in method builtins.sum} + 31 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:682(_parse_args) + 19 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/definitions.py:44(from_string) + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/internals/blocks.py:1() + 29/15 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:952(_get_root_units_recurse) + 17 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/posixpath.py:150(dirname) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/path.py:24(Path) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/tseries/frequencies.py:1() + 33 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3043(__init__) + 1 0.000 0.000 0.003 0.003 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/font_manager.py:1() + 45 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/enum.py:81(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/markers.py:155(MarkerStyle) + 18 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/transforms.py:56(_make_str_method) + 5 0.000 0.000 0.000 0.000 {built-in method posix.waitpid} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/sample.py:1() + 18 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:662(cycler) + 18 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/dtypes/common.py:1656(pandas_dtype) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/groupby/ops.py:1028(BinGrouper) + 40/12 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:805(_get_dimensionality_recurse) + 79 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:546(__init__) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:1() + 55 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/warnings.py:477(__exit__) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/dtypes/cast.py:1() + 1 0.000 0.000 0.004 0.004 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_add_newdocs.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/category.py:52(CategoricalIndex) + 3 0.000 0.000 0.000 0.000 {built-in method posix.uname} + 99 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:66(__call__) + 447 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_collections_abc.py:825(__iter__) + 32 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:894(__getitem_inner__) + 65 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/results.py:442(__iadd__) + 10 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/path.py:191(_create_closed) + 423 0.000 0.000 0.000 0.000 {method '__contains__' of 'frozenset' objects} + 604 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:1375(cast) + 301 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/feedparser.py:128(__next__) + 1 0.000 0.000 0.022 0.022 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_type_aliases.py:1() + 24 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_add_newdocs_scalars.py:71(add_newdoc_for_scalar_type) + 60 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:742(__str__) + 347/1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/__config__.py:19(_cleanup) + 29 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:1404(__init__) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/window/rolling.py:1737(Rolling) + 72 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:344(_tuple_str) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext_data.py:1() + 53 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/functools.py:478(lru_cache) + 148 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:656(__hash__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/nanops.py:1() + 462 0.000 0.000 0.000 0.000 {built-in method builtins.vars} + 316 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:878(_convert_validator_spec) + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/subprocess.py:250(_cleanup) + 92 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:322(field) + 29 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:2034(getLogger) + 42 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/functools.py:517(decorating_function) + 1 0.000 0.000 0.016 0.016 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/linalg/linalg.py:1() + 11 0.000 0.000 0.000 0.000 {built-in method posix.pipe} + 257 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/hmac.py:18() + 24 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:539(_repr_fn) + 37 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/transforms.py:1324(__init_subclass__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/stata.py:1() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/json/_json.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pickle.py:197() + 183 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/textwrap.py:477(prefixed_lines) + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:17() + 28 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:472(Optional) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint_pandas/pint_array.py:1() + 1 0.000 0.000 0.131 0.131 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/tools/unit.py:1() + 12 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/definitions.py:223(from_string) + 590 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:509() + 16 0.000 0.000 0.000 0.000 {built-in method posix.close} + 10 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:1205(_parse_units) + 68 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/_policybase.py:293(header_source_parse) + 1 0.000 0.000 0.007 0.007 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:1() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/datetime.py:1() + 166 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/window/doc.py:11(create_section_header) + 227 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/collections/__init__.py:419() + 479 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:202() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/groupby/generic.py:139(SeriesGroupBy) + 92 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:244(__init__) + 78 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/util.py:113(set_) + 1 0.000 0.000 0.004 0.004 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/quiver.py:1() + 49 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:131(get_object_signature) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/multi.py:216(MultiIndex) + 94 0.000 0.000 0.000 0.000 :159(_path_isdir) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/interval.py:186(IntervalArray) + 33 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_collections_abc.py:933(update) + 14 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ctypes/__init__.py:142(_check_size) + 32 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_compile.py:456(_generate_overlap_table) + 91 0.000 0.000 0.000 0.000 {method 'translate' of 'bytearray' objects} + 72 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:353() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/defchararray.py:1() + 19 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/path.py:99(__init__) + 26 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:6860(getdoc) + 120 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/expr.py:181() + 235 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/socket.py:78() + 31 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/warnings.py:181(_add_filter) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/pytables.py:1() + 259 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/collections/__init__.py:935(__getitem__) + 137 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:1745(set_whitespace_chars) + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/datetimelike.py:1() + 236 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/socket.py:83() + 234 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:407(__iter__) + 1 0.000 0.000 0.064 0.064 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/_version.py:637(get_versions) + 52 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/strings/accessor.py:118(_forbid_nonstring_types) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:1345() + 11 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:1192(__init_subclass__) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/textwrap.py:233(_wrap_chunks) + 48 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:572(_define_single_adder) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/interval.py:1() + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/holidays/registry.py:248(load) + 36 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/ops/docstrings.py:7(make_flex_doc) + 1 0.000 0.000 0.008 0.008 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/excel/_base.py:1() + 222 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/transforms.py:1329() + 39/1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/__config__.py:25() + 250 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:952(__eq__) + 91 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:2384(__init__) + 1 0.000 0.000 1.007 1.007 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/__init__.py:1() + 5 0.000 0.000 0.000 0.000 {built-in method _imp.create_builtin} + 468 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/enum.py:792(value) + 14 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:115(doc_note) + 36 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:880(__getitem__) + 1 0.000 0.000 0.030 0.030 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/overrides.py:1() + 148 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:206(_check_generic) + 58 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/contextlib.py:123(__exit__) + 1 0.000 0.000 0.033 0.033 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:1() + 29 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/tokenize.py:404(tokenize) + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/tz.py:2() + 192 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/numpy_func.py:224(implements) + 18 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/dtypes/base.py:494(find) + 1 0.000 0.000 0.000 0.000 {function Random.seed at 0x1013bb3a0} + 70 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_config/config.py:772(inner) + 55 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/warnings.py:437(__init__) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:1937(__new__) + 238 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/socket.py:93() + 66 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:358(__getitem__) + 237 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/socket.py:88() + 1 0.000 0.000 0.252 0.252 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/classes.py:1() + 263 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3767() + 41 0.000 0.000 0.000 0.000 {built-in method numpy.asarray} + 1 0.000 0.000 0.006 0.006 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/algorithms.py:1() + 39 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:1153(_dedup_candidates) + 13 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_api/deprecation.py:457() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/axes/_base.py:542(_AxesBase) + 1 0.000 0.000 0.006 0.006 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/shape_base.py:1() + 106 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:470(_init_param) + 227 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:410(__len__) + 8 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/util/version/__init__.py:334(__init__) + 185 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:574(__hash__) + 73 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:707(get_name) + 106 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:404(_field_assign) + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/npyio.py:1() + 26/14 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4287(parseImpl) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/internals/array_manager.py:1() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/dates.py:1() + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/generic.py:11304(_add_numeric_operations) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/quantity.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/quoprimime.py:55() + 18 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:269(_trim_arity) + 139 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:1964(__eq__) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/window/expanding.py:44(Expanding) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/arrayprint.py:1() + 24 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:358(_recursive_repr) + 53/29 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/pint_eval.py:87(evaluate) + 170 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/cm.py:89(__getitem__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_compat_pickle.py:9() + 83 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/os.py:754(encode) + 26 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:1013(__next__) + 257 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/hmac.py:19() + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/window/rolling.py:1() + 1 0.000 0.000 0.087 0.087 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/groupby/generic.py:1() + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/contextlib.py:470(_push_exit_callback) + 171 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:837() + 75 0.000 0.000 0.000 0.000 {method 'copy' of 'numpy.ndarray' objects} + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/lzma.py:1() + 1 0.000 0.000 0.005 0.005 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/compat.py:1() + 233 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:946(_value_and_type_iter) + 31 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:779(_get_dimensionality) + 157 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:597(_is_classvar) + 18 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:1848() + 207 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/abc.py:7(abstractmethod) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexers/objects.py:234(FixedForwardWindowIndexer) + 38/18 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4566(parseImpl) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/sql.py:1() + 155 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/util/_decorators.py:474(__init__) + 30 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:64() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/extras.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3940(_ErrorStop) + 26 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:921(__init__) + 76 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:670(__eq__) + 248 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:2271() + 194 0.000 0.000 0.000 0.000 {method 'decode' of 'bytes' objects} + 1 0.000 0.000 0.054 0.054 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_bases.py:1() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_typing/_dtype_like.py:1() + 33 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:863() + 60 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/inspect.py:2564(replace) + 1 0.000 0.000 0.018 0.018 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/secrets.py:1() + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/cbook.py:1() + 23 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_api/__init__.py:213(__getattr__) + 11 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_parse.py:981(parse_template) + 88 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/six.py:146(__init__) + 44 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/results.py:547(copy) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/shutil.py:1() + 222 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:2264() + 33 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:507() + 40 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/posixpath.py:228(expanduser) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/umath.py:1() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/groupby/ops.py:1() + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/enum.py:1017(_decompose) + 67 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/results.py:204(__getitem__) + 30/9 0.000 0.000 0.002 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4577(leave_whitespace) + 160 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/shape_base.py:608(_column_stack_dispatcher) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_add_newdocs_scalars.py:1() + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/interval.py:1() + 7 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/enum.py:528(_convert_) + 47 0.000 0.000 0.000 0.000 {built-in method numpy.empty} + 18 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cycler/__init__.py:226(_from_iter) + 77 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/inspect.py:1878(_signature_is_functionlike) + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/polynomial/polynomial.py:1() + 1 0.000 0.000 0.003 0.003 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/sparse/array.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pickle.py:1136(_Unpickler) + 34 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_api/deprecation.py:187(finalize) + 99 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/re.py:270(escape) + 1 0.000 0.000 0.045 0.045 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/random/_pickle.py:1() + 160 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/shape_base.py:207(_arrays_for_stack_dispatcher) + 222 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/transforms.py:1335() + 58 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/contextlib.py:261(helper) + 43 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:715(_from_parsed_parts) + 24 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/dtypes.py:66(_add_dtype_helper) + 103 0.000 0.000 0.000 0.000 {method 'setter' of 'property' objects} + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/urllib/parse.py:1() + 20 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:5100(parseImpl) + 33 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/results.py:213(__setitem__) + 135 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:920() + 1 0.000 0.000 0.021 0.021 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:1() + 2 0.000 0.000 0.000 0.000 {built-in method posix.access} + 1 0.000 0.000 0.110 0.110 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/figure.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/quantity.py:174(Quantity) + 4/3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/posixpath.py:397(_joinrealpath) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ctypeslib.py:371() + 14 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/hashlib.py:126(__get_openssl_constructor) + 1 0.000 0.000 0.004 0.004 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/PngImagePlugin.py:34() + 18 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/arrayprint.py:506(wrapper) + 237 0.000 0.000 0.000 0.000 {method 'values' of 'mappingproxy' objects} + 1 0.000 0.000 0.058 0.058 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/contour.py:1() + 1 0.000 0.000 0.013 0.013 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/arrow/array.py:1() + 58 0.000 0.000 0.004 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/contextlib.py:114(__enter__) + 157 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:605(_is_initvar) + 140 0.000 0.000 0.000 0.000 {method 'pop' of 'collections.deque' objects} + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/base64.py:3() + 46 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:725(_format_parsed_parts) + 61 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:550(from_word) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/array_algos/take.py:1() + 27 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/artist.py:45(allow_rasterization) + 1 0.000 0.000 0.935 0.935 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/dev/develop.py:1() + 134/34 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:1904(__str__) + 43 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3107(_generateDefaultName) + 10 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/message.py:462(get) + 26 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:6855(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/holidays/calendars/buddhist.py:22(_BuddhistLunisolar) + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/subprocess.py:1841(_handle_exitstatus) + 52 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:357(validate_fontsize) + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/subprocess.py:1888(_try_wait) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_strptime.py:238(pattern) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/ExifTags.py:20(Base) + 17 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:1079(__new__) + 28 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:866(stem) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/compat/numpy/function.py:1() + 19 0.000 0.000 0.004 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/definitions.py:126(from_string) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/tri/_tricontour.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/parsers/base_parser.py:1() + 1 0.000 0.000 0.011 0.011 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/widgets.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/arrow/array.py:184(ArrowExtensionArray) + 45 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/enum.py:415(__getattr__) + 78 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_internal.py:883() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/common.py:1() + 1 0.000 0.000 0.077 0.077 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_libs/tslibs/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/importlib/resources.py:1() + 1 0.000 0.000 0.003 0.003 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/datetimes.py:1() + 1 0.000 0.000 0.003 0.003 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pytz/__init__.py:1() + 24/19 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:472(_define) + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/legend.py:1() + 16 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/copyreg.py:103(_slotnames) + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/base.py:1() + 20 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:1189(reversed) + 1 0.000 0.000 0.020 0.020 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/mpl_toolkits/mplot3d/axes3d.py:1() + 145 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cycler/__init__.py:259(__iter__) + 41 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:571(eval_token) + 1 0.000 0.000 0.006 0.006 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/multi.py:1() + 10 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/importlib/metadata.py:438(children) + 102 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/exceptions.py:44(__init__) + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_testing/asserters.py:1() + 265 0.000 0.000 0.000 0.000 {built-in method _sre.unicode_iscased} + 1 0.000 0.000 0.006 0.006 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/lines.py:1() + 1 0.000 0.000 0.019 0.019 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexing.py:1() + 25 0.000 0.000 0.000 0.000 {built-in method unicodedata.name} + 170 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/textwrap.py:474(predicate) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/selectors.py:348(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:282(__init__) + 11 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/packaging/version.py:503(_cmpkey) + 6 0.000 0.000 0.002 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:2253(pprint_styles) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/internals/construction.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/accessors.py:1() + 1 0.000 0.000 0.009 0.009 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/window/ewm.py:1() + 22 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4989(parseImpl) + 33 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:532() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/zipfile.py:1() + 27 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/warnings.py:165(simplefilter) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/six.py:882(wrapper) + 1 0.000 0.000 0.122 0.122 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/compat/__init__.py:1() + 1 0.000 0.000 0.004 0.004 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/dtypes/common.py:1() + 1 0.000 0.000 0.005 0.005 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:1() + 215 0.000 0.000 0.000 0.000 {method 'startswith' of 'bytes' objects} + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/util/version/__init__.py:9() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/reshape/melt.py:1() + 1 0.000 0.000 0.022 0.022 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/axes/_base.py:1() + 1 0.000 0.000 0.003 0.003 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/cm.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/figure.py:181(FigureBase) + 62 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3796() + 192 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/numpy_func.py:230(decorator) + 1 0.000 0.000 0.037 0.037 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/text.py:1() + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/colorama/ansi.py:26(__init__) + 50 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:1884(set_name) + 22 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/ops/__init__.py:176(flex_method_SERIES) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/categorical.py:246(Categorical) + 22 0.000 0.000 0.004 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/parser.py:339(yield_from_source_iterator) + 36 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/codecs.py:309(__init__) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_strptime.py:107(__calc_date_time) + 52 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/strings/accessor.py:68(forbid_nonstring_types) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/legend.py:342(Legend) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/warnings.py:130(filterwarnings) + 13 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:8406(_replace_return_type) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/uuid.py:1() + 298 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:1617(overload) + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:271() + 36 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/inspect.py:1233(formatannotation) + 29 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:575(_cmp_fn) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:331(_resolve) + 1 0.000 0.000 0.008 0.008 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_internal.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/internals/blocks.py:144(Block) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/dtypes/missing.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/period.py:1() + 1 0.000 0.000 0.005 0.005 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/tri/__init__.py:1() + 1 0.000 0.000 0.024 0.024 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/index_tricks.py:1() + 1 0.000 0.000 0.004 0.004 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_testing/_io.py:1() + 32 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:876(copy_with) + 228 0.000 0.000 0.000 0.000 {method 'items' of 'mappingproxy' objects} + 48 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_config/config.py:741(config_prefix) + 23 0.000 0.000 0.000 0.000 {built-in method _struct.calcsize} + 18 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:997(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/interval.py:148(IntervalIndex) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/compat/pickle_compat.py:1() + 31 0.000 0.000 0.000 0.000 {built-in method numpy.arange} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/polynomial.py:705(polyval) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:242(solve_dependencies) + 22 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:1013(reset_cache) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/twodim_base.py:1() + 12 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_api/__init__.py:64(check_isinstance) + 24 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:553(_define_adder) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/quoprimime.py:5() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/tri/_triinterpolate.py:578(_ReducedHCT_Element) + 363 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/__init__.py:781(__iter__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/figure.py:2360(Figure) + 1 0.000 0.000 0.006 0.006 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/polynomial/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:62(__init__) + 11 0.000 0.000 0.000 0.000 {method 'sort' of 'list' objects} + 45 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/numpy_func.py:730(implement_consistent_units_by_argument) + 33 0.000 0.000 0.009 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:1012(wrap) + 1 0.000 0.000 0.005 0.005 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/scale.py:1() + 111 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:554() + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/holidays/holiday_base.py:12() + 1 0.000 0.000 0.038 0.038 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/__init__.py:1() + 1 0.000 0.000 0.003 0.003 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/common.py:2() + 1 0.000 0.000 0.006 0.006 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/ops/__init__.py:1() + 170 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:953(copy) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ctypes/_endian.py:1() + 105 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_docstring.py:86(copy) + 18 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cycler/__init__.py:62(_process_keys) + 156 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:1973(__hash__) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/ops.py:1() + 2 0.000 0.000 0.002 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/ops/methods.py:73(_create_methods) + 1 0.000 0.000 0.007 0.007 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/image.py:1() + 98 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/os.py:758(decode) + 23 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/overrides.py:177(decorator) + 2 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:1170(make_dataclass) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/groupby/grouper.py:1() + 441 0.000 0.000 0.000 0.000 {built-in method builtins.globals} + 19 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:702(_from_parts) + 1 0.000 0.000 0.041 0.041 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/__init__.py:1() + 14 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/ops/__init__.py:438(flex_arith_method_FRAME) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/types.py:69(new_class) + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/subprocess.py:1045(__del__) + 1 0.000 0.000 0.000 0.000 {built-in method _hashlib.openssl_sha3_224} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/json/encoder.py:1() + 13 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:8394(getdoc) + 4 0.000 0.000 0.000 0.000 {method 'fileno' of '_io.BufferedReader' objects} + 1 0.000 0.000 0.141 0.141 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/tools/changeyear.py:1() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/helpers.py:541(_makeTags) + 16 0.000 0.000 0.000 0.000 {method 'splitlines' of 'str' objects} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/ops/docstrings.py:1() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/_mixins.py:1() + 1 0.000 0.000 0.003 0.003 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/datetimes.py:1() + 1 0.000 0.000 0.021 0.021 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/api.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/holidays/holiday_base.py:51(HolidayBase) + 2 0.000 0.000 0.002 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/parser.py:59(parsestr) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/streamplot.py:1() + 1 0.000 0.000 0.006 0.006 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/projections/polar.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sysconfig.py:1() + 81 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_utils/__init__.py:25(decorator) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/subprocess.py:1184(wait) + 47 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:752(__fspath__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_type_aliases.py:94(_add_aliases) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint_pandas/pint_array.py:202() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_config/config.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/html.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/polynomial.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/datetimes.py:155(DatetimeArray) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/timedeltas.py:1() + 32 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/__init__.py:667(__init__) + 22 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:804(__mro_entries__) + 245 0.000 0.000 0.000 0.000 {built-in method _sre.unicode_tolower} + 65 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_api/deprecation.py:205() + 13 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:8389(__init__) + 16 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4263(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/period.py:114(PeriodArray) + 73 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_collections_abc.py:775(keys) + 1 0.000 0.000 0.004 0.004 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/parser.py:299(parse_single) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/plotting/_core.py:1() + 1 0.000 0.000 0.020 0.020 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/compat/__init__.py:1() + 8 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/weakref.py:105(__init__) + 1 0.000 0.000 0.029 0.029 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/collections.py:1() + 2 0.000 0.000 0.010 0.005 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/selectors.py:403(select) + 18 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cycler/__init__.py:150(__init__) + 24/19 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:2119(_define) + 7 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/parser/_parser.py:309(_convert) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/style/core.py:49(use) + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/importlib_resources/_common.py:1() + 388 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:1646(final) + 1 0.000 0.000 0.045 0.045 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/random/__init__.py:1() + 201 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:59(func) + 1 0.000 0.000 0.005 0.005 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:613(load_definitions) + 54 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:2477(parseImpl) + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/datetimelike.py:1() + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/type_check.py:1() + 8 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_ufunc_config.py:33(seterr) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/tarfile.py:29() + 22 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4077(_generateDefaultName) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:1969() + 5 0.000 0.000 0.000 0.000 {built-in method _imp.exec_builtin} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/base.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/base.py:102(ExtensionArray) + 19 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_api/__init__.py:132(check_shape) + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/_vendor/flexcache.py:1() + 14 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:618(set_parse_action) + 12 0.000 0.000 0.002 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:1132(parse_string) + 13 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_api/deprecation.py:440() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/reshape/concat.py:1() + 28 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:1098(_make_child_relpath) + 10 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_compile.py:440(_bytes_to_codes) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/function_base.py:2285(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/reshape/pivot.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/TiffTags.py:20() + 1 0.000 0.000 0.008 0.008 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/projections/geo.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_string_helpers.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/period.py:1() + 24 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:543() + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/selectors.py:235(register) + 72 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_config/config.py:771(wrap) + 1 0.000 0.000 0.004 0.004 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/ticker.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/timedeltas.py:103(TimedeltaArray) + 36 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:218(_acquireLock) + 334 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/enum.py:787(name) + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/masked.py:1() + 12 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_api/__init__.py:264(get_aliased_and_aliases) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_cm.py:1() + 17/10 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/unit.py:42(__init__) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_tools.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/groupby/generic.py:1164(DataFrameGroupBy) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/apply.py:1() + 2 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_strptime.py:173(__init__) + 1 0.000 0.000 0.013 0.013 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/definitions.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/masked.py:100(BaseMaskedArray) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/xml.py:1() + 39 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:303(splitroot) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/threading.py:1() + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/artist.py:1() + 19 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/artist.py:24(_prevent_rasterization) + 223 0.000 0.000 0.000 0.000 {method 'keys' of 'dict' objects} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/prices/utils.py:1() + 18 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/arrayprint.py:1595(_array_str_implementation) + 114 0.000 0.000 0.000 0.000 {built-in method _struct.unpack} + 22 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:5233(parseImpl) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/babel/numbers.py:1() + 1 0.000 0.000 0.005 0.005 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/__init__.py:377(_mac_os_check) + 1 0.000 0.000 0.004 0.004 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/ops/array_ops.py:1() + 37 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/getlimits.py:16(_fr0) + 53 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/six.py:182(_add_module) + 77 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/inspect.py:91(ismethoddescriptor) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/hashlib.py:5() + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/internals/concat.py:1() + 6 0.000 0.000 0.000 0.000 {method 'append' of 'collections.deque' objects} + 22 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint_pandas/pint_array.py:637(_create_method) + 30 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:1166(glob) + 78 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4078() + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:2271() + 16 0.000 0.000 0.000 0.000 {built-in method time.strftime} + 168 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/expr.py:183() + 69 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/signal.py:9() + 10/3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/unicode.py:14(__get__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/dviread.py:1() + 204 0.000 0.000 0.000 0.000 {method 'ljust' of 'str' objects} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/nanfunctions.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/random.py:101(Random) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/tempfile.py:1() + 1 0.000 0.000 0.004 0.004 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/parser.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/base.py:269(IndexOpsMixin) + 1 0.000 0.000 0.015 0.015 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/style/core.py:1() + 119 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/expr.py:196() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/selectors.py:210(__init__) + 33 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:924() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/align.py:1() + 171 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:1734(leave_whitespace) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/unicode.py:111() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_testing/contexts.py:1() + 172 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/multiarray.py:153(concatenate) + 65 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_collections_abc.py:849(__iter__) + 1 0.000 0.000 0.018 0.018 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/compat/py3k.py:1() + 27 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_api/deprecation.py:176(finalize) + 65 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_api/deprecation.py:99(deprecated) + 20 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:589(_hash_fn) + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/packaging/version.py:4() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/expressions.py:1() + 130 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:413(__getitem__) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/visualize/plot.py:1() + 23/6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4607(streamline) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/signal.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/shape_base.py:1() + 29 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:831(name) + 1 0.000 0.000 0.005 0.005 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/subprocess.py:10() + 1 0.000 0.000 0.003 0.003 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/transforms.py:1() + 1 0.000 0.000 0.007 0.007 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/compat/compressors.py:1() + 59 0.000 0.000 0.002 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/tokenize.py:98(_compile) + 185 0.000 0.000 0.000 0.000 {method 'endswith' of 'bytes' objects} + 41 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:431(UnitsContainer) + 10/5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/functools.py:973(__get__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/pickle.py:1() + 9 0.000 0.000 0.017 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/axes/_base.py:729(__init_subclass__) + 22 0.000 0.000 0.000 0.000 {built-in method _abc._abc_register} + 1 0.000 0.000 0.007 0.007 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/offsetbox.py:1() + 53 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/util.py:284() + 1 0.000 0.000 0.015 0.015 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/context.py:1() + 2 0.000 0.000 0.000 0.000 {built-in method posix.mkdir} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/dviread.py:238(Dvi) + 1 0.000 0.000 0.016 0.016 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/api.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/Image.py:467(Image) + 85 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:993() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/dtypes/dtypes.py:1() + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/importlib/metadata.py:1() + 28 0.000 0.000 0.000 0.000 {method 'fullmatch' of 're.Pattern' objects} + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/utils.py:5() + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/bz2.py:1() + 100 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_strptime.py:234() + 77 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/inspect.py:286(isbuiltin) + 102 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:767() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/polynomial/polynomial.py:1472(Polynomial) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:6133() + 10 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/enum.py:971(__or__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/pytables.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cffi/model.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/records.py:1() + 1 0.000 0.000 0.008 0.008 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/methods/describe.py:1() + 1 0.000 0.000 0.068 0.068 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/axes/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/formats/info.py:1() + 1 0.000 0.000 0.006 0.006 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/axis.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/parquet.py:1() + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pytz/lazy.py:139(__new__) + 95 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cycler/__init__.py:185(keys) + 81 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_utils/__init__.py:14(set_module) + 31 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/tokenize.py:325(find_cookie) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/reshape/encoding.py:1() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/construction.py:1() + 143 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3970() + 26 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/posixpath.py:164(islink) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/gettext.py:1() + 29 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:5682(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_sysconfigdata__darwin_darwin.py:2() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/bezier.py:1() + 1 0.000 0.000 0.005 0.005 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/holidays/calendars/__init__.py:14() + 22 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ast.py:33(parse) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/polynomial/_polybase.py:18(ABCPolyBase) + 8 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/util.py:119(clear) + 1 0.000 0.000 0.105 0.105 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/projections/__init__.py:1() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/category.py:1() + 21 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_docstring.py:43(update) + 52 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/calendar.py:58(__getitem__) + 38 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/getlimits.py:24(_fr1) + 1 0.000 0.000 0.010 0.010 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/mpl_toolkits/mplot3d/art3d.py:5() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/parser/_parser.py:2() + 34 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/traceback.py:272(__getitem__) + 8 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:2928(_generateDefaultName) + 1 0.000 0.000 0.009 0.009 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/holidays/__init__.py:14() + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:1411(get_type_hints) + 10 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/importlib/metadata.py:483(__init__) + 2 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/importlib/metadata.py:526(read_text) + 29 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:462(_validate_linestyle) + 28 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/calendar.py:77(__getitem__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/sparse/array.py:292(SparseArray) + 82 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:903() + 39 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:1097(parse_unit_name) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/errors/__init__.py:1() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/interchange/from_dataframe.py:1() + 17 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/six.py:194(find_spec) + 33 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:300(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/missing.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/visualize/categories.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry_helpers.py:1() + 33 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:783(copy_with) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/parsers/python_parser.py:1() + 134 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/_distutils_hack/__init__.py:96() + 33 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:940() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/calendar.py:1() + 12 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:736(_make_child) + 8 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_ufunc_config.py:132(geterr) + 4 0.000 0.000 0.000 0.000 {built-in method posix.register_at_fork} + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/fft/_pocketfft.py:1() + 84 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/enum.py:244() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/numerictypes.py:441(_construct_lookups) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/selectors.py:21(_fileobj_to_fd) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:680(operate) + 105 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_docstring.py:88(do_copy) + 138 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cycler/__init__.py:247() + 1 0.000 0.000 0.009 0.009 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/util/hashing.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/range.py:1() + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pytz/lazy.py:84(__new__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/contextlib.py:76(inner) + 1 0.000 0.000 0.003 0.003 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/struct.py:1() + 31 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:771(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/getlimits.py:484(__new__) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:1955() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/reshape/tile.py:1() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfstate/pfstate.py:1() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/integer.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/string_.py:1() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/strings/accessor.py:1() + 14 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/getlimits.py:709(max) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/holidays/utils.py:12() + 18 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cycler/__init__.py:482(cycler) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/babel/localedata.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_typing/_nested_sequence.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/lines.py:216(Line2D) + 105 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/__init__.py:331(wrapper) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/testing/testing.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/formatting.py:1() + 36 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:227(_releaseLock) + 62 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:1089(_init) + 20 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:770(_hash_add) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/mlab.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/os.py:711(copy) + 19 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/path.py:202(_update_values) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/systems.py:454(from_definition) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/tz.py:488(_read_tzfile) + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/parser/__init__.py:2() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/systems.py:1() + 8 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_api/deprecation.py:506(suppress_matplotlib_deprecation_warning) + 30 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/collections/__init__.py:955(__contains__) + 24/19 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:1441(_define) + 1 0.000 0.000 0.097 0.097 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/util/_decorators.py:1() + 35 0.000 0.000 0.000 0.000 {method 'astype' of 'numpy.ndarray' objects} + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/header.py:5() + 52 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/ops/common.py:34(wrapper) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:673() + 85 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:1910(streamline) + 34 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/accessor.py:110(_create_delegator_method) + 1 0.000 0.000 0.004 0.004 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/utils.py:1() + 10/4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4271(streamline) + 1 0.000 0.000 0.003 0.003 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/mixins/text.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/fnmatch.py:1() + 1 0.000 0.000 0.004 0.004 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/eval.py:1() + 23 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:5225(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/polynomial/chebyshev.py:1() + 31 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_collections_abc.py:596(__sub__) + 38 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/getlimits.py:91(_float_to_float) + 20 0.000 0.000 0.000 0.000 {built-in method _functools.reduce} + 16 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_type_aliases.py:44(_bits_of) + 18 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cycler/__init__.py:546(_cycler) + 8 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/weakref.py:368(__init__) + 1 0.000 0.000 0.083 0.083 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/matplotlib.py:1() + 16 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:1561(__or__) + 62 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:2285(_register_style) + 141 0.000 0.000 0.000 0.000 {built-in method _warnings._filters_mutated} + 91 0.000 0.000 0.000 0.000 {built-in method sys._getframe} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/datetimelike.py:81(DatetimeIndexOpsMixin) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/tokenize.py:388(open) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/getlimits.py:1() + 30 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:52(__init__) + 1 0.000 0.000 0.110 0.110 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/compat/numpy/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/window/ewm.py:124(ExponentialMovingWindow) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/helpers.py:1027() + 13 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_dtype_ctypes.py:100(dtype_from_ctypes_type) + 17 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/dtypes/dtypes.py:911(construct_from_string) + 18 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_collections_abc.py:760(get) + 84 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pytz/lazy.py:149(lazy) + 97 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:6025() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/mpl_toolkits/mplot3d/proj3d.py:1() + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:260() + 127 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:2435(__getnewargs__) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/prices/convert.py:1() + 10 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/dtypes/base.py:135(__hash__) + 1 0.000 0.000 0.005 0.005 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/textpath.py:1() + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/functools.py:799(singledispatch) + 1 0.000 0.000 0.003 0.003 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/compat/_optional.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/tools/wavg.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/arithmatic.py:149(PfLineArithmatic) + 7 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:1689(isEnabledFor) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/tools/numeric.py:1() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/platform.py:3() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/util.py:2() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/results.py:2() + 19 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/dtypes/base.py:423(register_extension_dtype) + 42 0.000 0.000 0.000 0.000 {method 'update' of 'set' objects} + 39 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_add_newdocs_scalars.py:83() + 8 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:1630(make_norm_from_scale) + 3 0.000 0.000 0.002 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:2211(__init_subclass__) + 1 0.000 0.000 0.006 0.006 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/__init__.py:240(_check_versions) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pprint.py:103(PrettyPrinter) + 14 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/results.py:450() + 31 0.000 0.000 0.000 0.000 {method 'reshape' of 'numpy.ndarray' objects} + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/interop.py:1() + 10 0.000 0.000 0.002 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:5706(__init__) + 51 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:2448(_generateDefaultName) + 129 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/results.py:24(__getitem__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/bz2.py:27(BZ2File) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/enum.py:938(_create_pseudo_member_) + 12 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_strptime.py:219(__seqToRE) + 6 0.000 0.000 0.000 0.000 :415(spec_from_loader) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/function_base.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/util/_exceptions.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/internals/managers.py:95(BaseBlockManager) + 1 0.000 0.000 0.004 0.004 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/ExifTags.py:12() + 20 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_config/config.py:843(is_one_of_factory) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/markers.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/sorting.py:1() + 29 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/cbook.py:1337(_to_unmasked_float_array) + 46 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/six.py:110(__init__) + 17 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/dtypes/dtypes.py:1179(construct_from_string) + 1 0.000 0.000 0.091 0.091 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colorbar.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_fontconfig_pattern.py:57(_make_fontconfig_parser) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/datetimelike.py:404(DatetimeTimedeltaMixin) + 5 0.000 0.000 0.003 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/definitions.py:178(from_string) + 34 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:920() + 31 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/tokenize.py:319(read_or_stop) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/__init__.py:290(__getattr__) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/bisect.py:1() + 36 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:744() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:6550(__new__) + 1 0.000 0.000 0.093 0.093 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/__config__.py:3() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ntpath.py:2() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/importlib_resources/_compat.py:3() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/gridspec.py:26(GridSpecBase) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arraylike.py:31(OpsMixin) + 161 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/util.py:200(escape_re_range_char) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:2952(_update_from) + 92 0.000 0.000 0.000 0.000 {method 'insert' of 'list' objects} + 1 0.000 0.000 0.000 0.000 {method 'reduce' of 'numpy.ufunc' objects} + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/decimal.py:2() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/contour.py:72(ContourLabeler) + 15 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:468(__copy__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext_data.py:464() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/visualize/colors.py:14(lighten) + 62 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/definitions.py:49() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_afm.py:1() + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/dtypes/base.py:1() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/traceback.py:321(extract) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/__init__.py:514(_get_config_or_cache_dir) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/scope.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/methods/selectn.py:1() + 15 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:85(_listify_validator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/strings/base.py:19(BaseStringArrayMethods) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/numeric.py:67(zeros_like) + 68 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/message.py:479(set_raw) + 14 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/ops/array_ops.py:408(get_array_op) + 12 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/importlib/metadata.py:511() + 12 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:336(_validate_cmap) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/numpy_.py:1() + 134 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/six.py:93(__init__) + 1 0.000 0.000 0.003 0.003 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/json/__init__.py:1() + 1 0.000 0.000 0.021 0.021 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_fontconfig_pattern.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_bases.py:1671(FigureCanvasBase) + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/exceptions.py:3() + 48 0.000 0.000 0.000 0.000 {method 'clear' of 'dict' objects} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/arraysetops.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/stata.py:1115(StataReader) + 76 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:640() + 14 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/re.py:223(split) + 30 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_type_aliases.py:203(_add_array_type) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/mpl_toolkits/mplot3d/axis3d.py:38(Axis) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/ExifTags.py:340() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/selectors.py:1() + 32 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_type_aliases.py:46() + 13 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/expr.py:188(_filter_nodes) + 16 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/window/doc.py:93(window_agg_numba_parameters) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:2808(__new__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_testing/__init__.py:182() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/json/_table_schema.py:1() + 11 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/posixpath.py:140(basename) + 1 0.000 0.000 0.003 0.003 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/engines.py:1() + 1 0.000 0.000 0.000 0.000 {built-in method _hashlib.openssl_sha3_256} + 8 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/util/version/__init__.py:515(_cmpkey) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:206(BaseRegistry) + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/cbook.py:849(__init__) + 10 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/extras.py:237(getdoc) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/os.py:688(__delitem__) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/csv.py:2() + 297 0.000 0.000 0.000 0.000 {method 'popleft' of 'collections.deque' objects} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:434(BakomaFonts) + 17 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/inspect.py:2607(__hash__) + 108 0.000 0.000 0.000 0.000 {built-in method _struct.pack} + 70 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:794(_is_dim) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/zipp/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/dtypes/generic.py:1() + 7 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_collections_abc.py:78(_check_methods) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/babel/plural.py:1() + 1 0.000 0.000 0.004 0.004 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/reshape/api.py:1() + 47 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/os.py:697(__iter__) + 8 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/weakref.py:290(update) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/scale.py:737(_get_scale_docs) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/expr.py:327(f) + 53 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/pint_eval.py:69(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/unit.py:1() + 11 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/nanops.py:78(__init__) + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/json/decoder.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/string_arrow.py:1() + 32 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:193(_checkLevel) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:1479(__mul__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_type_aliases.py:74(_add_types) + 11 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_parse.py:259(getwhile) + 7 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:2544(_arraymethod) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/functools.py:843(register) + 28 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:337(__repr__) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/textwrap.py:17(TextWrapper) + 2 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/json/__init__.py:299(loads) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:255(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/results.py:34(ParseResults) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/zipfile.py:1215(__init__) + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/boolean.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ctypeslib.py:1() + 10 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/importlib/metadata.py:431(__init__) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/json/decoder.py:284(__init__) + 9 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:725(__truediv__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/parsers/c_parser_wrapper.py:1() + 78 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/util.py:110(get) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/dtypes/astype.py:1() + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/importlib/metadata.py:435(joinpath) + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint_pandas/__init__.py:1() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_constrained_layout.py:1() + 59 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_collections_abc.py:601() + 1 0.000 0.000 0.005 0.005 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/_version.py:10() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/sas/sasreader.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/polynomial/legendre.py:1() + 13 0.000 0.000 0.002 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:401(validate_font_properties) + 156 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:805(postParse) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/timedeltas.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/babel/core.py:1041(default_locale) + 119 0.000 0.000 0.000 0.000 {method 'values' of 'dict' objects} + 36 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/codecs.py:260(__init__) + 1 0.000 0.000 0.238 0.238 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/mixins/plot.py:1() + 20 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:771() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_type_aliases.py:123(_add_integer_aliases) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/pytables.py:479(HDFStore) + 57 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/inspect.py:2275() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cffi/api.py:1() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_typing/_char_codes.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/relativedelta.py:2() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/texmanager.py:1() + 10 0.000 0.000 0.000 0.000 {method 'tolist' of 'memoryview' objects} + 52 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/util/_decorators.py:434(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/nested_helper.py:1() + 55 0.000 0.000 0.000 0.000 {method 'mro' of 'type' objects} + 22 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/abc.py:110(register) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/babel/core.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/datetimes.py:103(DatetimeIndex) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/os.py:48() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/flags.py:6(Flags) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/groupby/base.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/feather_format.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/base64mime.py:5() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/visualize/categories.py:22(Categories) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/transforms.py:2106(IdentityTransform) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/period.py:70(PeriodIndex) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/_policybase.py:99(_extend_docstrings) + 65 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/results.py:257(__bool__) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/configparser.py:560(RawConfigParser) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/groupby/groupby.py:612(BaseGroupBy) + 11 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:2929(charsAsStr) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/window/rolling.py:870(Window) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/formats/printing.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/lzma.py:38(LZMAFile) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/category.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/twodim_base.py:534(vander) + 24 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/numerictypes.py:514(_scalar_type_key) + 9 0.000 0.000 0.000 0.000 {built-in method numpy.seterrobj} + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexers/objects.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/polynomial/laguerre.py:1() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/packaging/version.py:159(Version) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/html/__init__.py:1() + 12 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_parse.py:1066(expand_template) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:120(_WindowsFlavour) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/pytables.py:95(BinOp) + 52 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_add_newdocs.py:6754(refer_to_array_attribute) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/arrow/dtype.py:1() + 1 0.000 0.000 0.936 0.936 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/dev/__init__.py:1() + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/uuid.py:138(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/excel/_openpyxl.py:1() + 7 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:381(__getattr__) + 1 0.000 0.000 0.003 0.003 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/__init__.py:2() + 1 0.000 0.000 0.020 0.020 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/matrixlib/defmatrix.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:3086(ArrowStyle) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/configparser.py:1() + 2 0.000 0.000 0.002 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/importlib/metadata.py:180(from_name) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sysconfig.py:171(_expand_vars) + 89 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_collections_abc.py:802(__init__) + 18 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:1927(_namedtuple_mro_entries) + 1 0.000 0.000 0.019 0.019 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/linalg/__init__.py:1() + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/table.py:9() + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/prices.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/compat/py3k.py:92(contextlib_nullcontext) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/numeric.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/numpy_.py:39(PandasArray) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/mixins.py:59(NDArrayOperatorsMixin) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/textwrap.py:146(_munge_whitespace) + 19 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/dtypes/base.py:465(register) + 62 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pytz/lazy.py:96(lazy) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pytz/tzinfo.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/internals/array_manager.py:99(BaseArrayManager) + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:212(_validate_pathlike) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/numeric.py:841(outer) + 17 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/dtypes/dtypes.py:752(construct_from_string) + 55 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:394() + 17 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:273(validate_color_or_auto) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/systems.py:313(from_lines) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ctypes/__init__.py:76(CFUNCTYPE) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/message.py:5() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/tarfile.py:843(TarInfo) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/groupby/ops.py:667(BaseGrouper) + 12 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:5979() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/json/scanner.py:1() + 25 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/dtypes/base.py:106(__eq__) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_ufunc_config.py:430(__enter__) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/contextvars.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/_iotools.py:450(StringConverter) + 1 0.000 0.000 0.004 0.004 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/sparse/accessor.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colorbar.py:195(Colorbar) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexers/utils.py:1() + 44 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3986() + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_strptime.py:90() + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/excel/_base.py:1404(ExcelFile) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/groupby/numba_.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/GimpGradientFile.py:16() + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/colorama/ansitowin32.py:2() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/window/numba_.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:2293(BoxStyle) + 41 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/packaging/version.py:205() + 27 0.000 0.000 0.000 0.000 {method 'rsplit' of 'str' objects} + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/util/version/__init__.py:331(Version) + 57 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_api/__init__.py:152() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/internals/base.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/json/_normalize.py:3() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/tools/changefreq.py:1() + 28 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/definitions.py:249() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/fnmatch.py:80(translate) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/orc.py:1() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_strptime.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/strings/object_array.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/internals/managers.py:972(BlockManager) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:1146(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/plotting/_core.py:613(PlotAccessor) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/datetimelike.py:1789(TimelikeOps) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/gzip.py:1() + 31 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_collections_abc.py:818(_from_iterable) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/selectors.py:269(close) + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/holidays/calendars/custom.py:24(__new__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_cm.py:158() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/numbers.py:4() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/format.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/util/_validators.py:1() + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/contextlib.py:75(__call__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:1086(enable_packrat) + 52 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/ops/common.py:21(unpack_zerodim_and_defer) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/tools/tzone.py:1() + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/visualize/colors.py:1() + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/fft/__init__.py:1() + 1 0.000 0.000 0.000 0.000 {built-in method _hashlib.openssl_md5} + 36 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/traceback.py:285(line) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/random.py:126(seed) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_enums.py:1() + 11 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/functools.py:650(cache) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/tri/_triinterpolate.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/getlimits.py:307(_get_machar) + 3 0.000 0.000 0.000 0.000 {built-in method _csv.register_dialect} + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/charset.py:5() + 11 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/accessor.py:176(add_delegate_accessors) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/axis.py:43(Tick) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/platform.py:830(uname) + 64 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_collections_abc.py:805(__len__) + 25 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:949() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/pytables.py:2578(Fixed) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/pytables.py:3237(Table) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/holidays/calendars/thai.py:21(_ThaiLunisolar) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/tools/isboundary.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/base.py:1712(_add_arithmetic_ops) + 31 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/numeric.py:1855(isscalar) + 9 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:360(add) + 20 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_config/config.py:845() + 1 0.000 0.000 0.007 0.007 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arraylike.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/window/rolling.py:110(BaseWindow) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/transforms.py:211(BboxBase) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pprint.py:11() + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:747(get_symbol) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/polynomial/hermite_e.py:1() + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:1697(Norm) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_strptime.py:83() + 36 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:262() + 7 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:1174(parse_units) + 57 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_api/__init__.py:265() + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/subprocess.py:1584(_get_handles) + 1 0.000 0.000 0.005 0.005 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/zoneinfo/__init__.py:1() + 20 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_config/config.py:844() + 11 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/nanops.py:85(__call__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfstate/arithmatic.py:1() + 1 0.000 0.000 0.006 0.006 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/internals/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/widgets.py:996(CheckButtons) + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_api/deprecation.py:350() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/dtypes/dtypes.py:631(DatetimeTZDtype) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/arithmatic.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/internals/array_manager.py:695(ArrayManager) + 10 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_api/__init__.py:44(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/twodim_base.py:158(eye) + 1 0.000 0.000 0.243 0.243 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/mixins/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/axes/_secondary_axes.py:11(SecondaryAxis) + 20 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:815(__new__) + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/importlib_resources/abc.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/tools/timedeltas.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint_pandas/pint_array.py:205(PintArray) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/exceptions.py:25(ParseBaseException) + 96 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:778() + 30 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4332() + 29 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/nanops.py:80() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/texmanager.py:56(TexManager) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/dtypes/concat.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/util/_print_versions.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/window/doc.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/__init__.py:588(matplotlib_fname) + 38 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/colorama/ansi.py:12(code_to_chars) + 17 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/arrow/dtype.py:195(construct_from_string) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/accessor.py:1() + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/axes/_secondary_axes.py:1() + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:1434(is_dir) + 4/3 0.000 0.000 0.000 0.000 {method 'view' of 'numpy.ndarray' objects} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/extension.py:1() + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:2264() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_testing/_warnings.py:1() + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/importlib/metadata.py:445(zip_children) + 36 0.000 0.000 0.000 0.000 {method 'acquire' of '_thread.RLock' objects} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/api/types/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/excel/_util.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/dtypes/dtypes.py:123(CategoricalDtype) + 7 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:1446(__radd__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/collections.py:27(Collection) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/inspect.py:2888(_hash_basis) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/table.py:37(Cell) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/parsers/base_parser.py:99(ParserBase) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/unicode.py:85(identchars) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/actions.py:3() + 12/2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:1538(makeOptionalList) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/excel/_odfreader.py:1() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/holidays/calendars/islamic.py:12() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/ImageFile.py:30() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/polynomial/hermite.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/holidays/registry.py:12() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/datetime.py:1594(datetime) + 14 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:5899(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/histograms.py:1() + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/nanops.py:114(__call__) + 1 0.000 0.000 0.000 0.000 {method 'close' of '_io.TextIOWrapper' objects} + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/linalg/linalg.py:159(_commonType) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/formats/format.py:558(DataFrameFormatter) + 24 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:943() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ctypes/__init__.py:340(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/fractions.py:38(Fraction) + 1 0.000 0.000 0.005 0.005 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/feedparser.py:5() + 2 0.000 0.000 0.002 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/parser.py:41(parse) + 60 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/collections/__init__.py:956() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/visualize/colors.py:43(Wqpr) + 36 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_string_helpers.py:16(english_lower) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_strptime.py:49(__init__) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:1209(resolve) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/hmac.py:27(HMAC) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/feedparser.py:101(push) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_api/deprecation.py:139(finalize) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/classes.py:69(PfLine) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_text_helpers.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/stata.py:2231(StataWriter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/babel_names.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/transforms.py:677(Bbox) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_bases.py:153(RendererBase) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/path.py:1() + 60 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:404() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/sparse/dtype.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/plotting/_misc.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/common.py:1() + 18 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:1847() + 11 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/util.py:251(_inner) + 92 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/inspect.py:2869(return_annotation) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/selectors.py:248(unregister) + 59 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_collections_abc.py:409(__subclasshook__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/hatch.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:653(PurePath) + 17 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/dtypes/dtypes.py:308(construct_from_string) + 11 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/re.py:315(_compile_repl) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/util/_decorators.py:489(indent) + 2 0.000 0.000 0.002 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/feedparser.py:139(__init__) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_api/deprecation.py:242(__set_name__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/tools/standardize.py:1() + 2/1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sysconfig.py:535(get_config_vars) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_strptime.py:91() + 16/4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ast.py:79(_convert) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_osx_support.py:86(_get_system_version) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_config/dates.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/matrixlib/defmatrix.py:73(matrix) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/unit.py:30(Unit) + 34 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/collections/__init__.py:989(__setitem__) + 8 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4968(__init__) + 44 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/getlimits.py:101(_float_conv) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/expr.py:341(BaseExprVisitor) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/einsumfunc.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/polynomial/polyutils.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/dtypes/inference.py:1() + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/ops/methods.py:118() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/groupby/ops.py:102(WrappedCythonOp) + 28 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/cbook.py:1851(_str_equal) + 21 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:461(readlink) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/matplotlib.py:60(setup_matplotlib_handlers) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/defchararray.py:1922(chararray) + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/internals/api.py:1() + 29 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/definitions.py:112(__post_init__) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/window/expanding.py:1() + 53 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/util.py:280(replaced_by_pep8) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:27(Patch) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/platform.py:1008(_sys_version) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/tools/freq.py:1() + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint_pandas/pint_array.py:720(_create_comparison_method) + 1 0.000 0.000 0.011 0.011 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/excel/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/fractions.py:4() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/colorama/ansitowin32.py:16(StreamWrapper) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/tools/trim.py:1() + 13 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_dtype_ctypes.py:71(_from_ctypes_scalar) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/tseries/offsets.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:334(_init_dynamic_classes) + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_api/deprecation.py:363() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/legend_handler.py:1() + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/types.py:100(prepare_class) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/tarfile.py:1604(TarFile) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_type_aliases.py:151(_set_up_aliases) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/clipboards.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/unicode.py:99(identbodychars) + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/flat_helper.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/stride_tricks.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_asarray.py:1() + 10 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_parse.py:990(addgroup) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/tz.py:1552(__call__) + 8 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:584(_setResultsName) + 44 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/unicode.py:17() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/groupby/indexing.py:1() + 2 0.000 0.000 0.000 0.000 {built-in method time.tzset} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/gzip.py:120(GzipFile) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/groupby/grouper.py:468(Grouping) + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/create.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/dev/mockup.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/memmap.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/parser/_parser.py:294(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/tri/_tripcolor.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/array_algos/putmask.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/tools/frame.py:1() + 32 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/cbook.py:1862(_str_lower_equal) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/importlib/metadata.py:378(DistributionFinder) + 72 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/enum.py:551() + 1 0.000 0.000 0.149 0.149 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/tools/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_bases.py:2793(NavigationToolbar2) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/units.py:1() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/parsers/arrow_parser_wrapper.py:1() + 10 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:1429(_parse_units) + 14 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:698() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/linecache.py:80(updatecache) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/ops/common.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/_typing.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/tools/intersect.py:1() + 8 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_config/config.py:817(is_instance_factory) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_api/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/colorama/win32.py:4() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/extendpandas.py:10(apply) + 17 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/enum.py:715(_generate_next_value_) + 56 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4031() + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/definitions.py:302(from_string) + 8 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_collections_abc.py:767(__contains__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/groupby/categorical.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/_vendor/flexcache.py:102(BasicPythonHeader) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/projections/polar.py:18(PolarTransform) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/excel/_odswriter.py:1() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/spines.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/win.py:2() + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:445() + 55 0.000 0.000 0.000 0.000 {method '__exit__' of '_thread.RLock' objects} + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:694(__mro_entries__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/array_algos/masked_reductions.py:1() + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/measurement.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/window/common.py:1() + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/mathtext.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/genericpath.py:39(isdir) + 10 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4633(_generateDefaultName) + 63 0.000 0.000 0.000 0.000 {method 'pop' of 'set' objects} + 23 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/overrides.py:173(array_function_from_dispatcher) + 22 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/compat/__init__.py:37(set_function_name) + 16 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint_pandas/pint_array.py:716(_create_arithmetic_method) + 47 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4266() + 1 0.000 0.000 0.004 0.004 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/_policybase.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/string.py:1() + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ast.py:54(literal_eval) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_bootlocale.py:33(getpreferredencoding) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/_encoded_words.py:1() + 5 0.000 0.000 0.000 0.000 {built-in method posix.waitstatus_to_exitcode} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/sparse/dtype.py:42(SparseDtype) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/internals/managers.py:1835(SingleBlockManager) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/__init__.py:213(_get_version) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_exceptions.py:1() + 7 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:634() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ctypes/__init__.py:262(_reset_cache) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/ops/methods.py:122(_add_methods) + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/font_manager.py:1564(_load_fontmanager) + 1 0.000 0.000 0.010 0.010 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/widgets.py:344(Slider) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/tools/floor.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_type_aliases.py:211(_set_array_types) + 60 0.000 0.000 0.000 0.000 {method 'removeprefix' of 'str' objects} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/widgets.py:3809(PolygonSelector) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/ufunclike.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_typing/_shape.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pytz/lazy.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/_vendor/appdirs.py:6() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/threading.py:802(__init__) + 56 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:530(_select_from) + 14 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/enum.py:434(__iter__) + 9 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/overrides.py:23(set_array_function_like_doc) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_testing/_random.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/compat.py:62(_test_array_function_protocol) + 1 0.000 0.000 0.009 0.009 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/visualize/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/flat_methods.py:1() + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/six.py:96(__get__) + 7 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:956(getattr_maybe_raise) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/tools/leftandright.py:1() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/babel/units.py:1() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/layout_engine.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/gridspec.py:1() + 31 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/fromnumeric.py:3176(ndim) + 13 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/mixins.py:44(_numeric_methods) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/nested_methods.py:1() + 24 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:2269() + 12 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/systems.py:195(add_units) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/quiver.py:445(Quiver) + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_config/__init__.py:1() + 1 0.000 0.000 0.003 0.003 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/kiwisolver/__init__.py:8() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/artist.py:1416(ArtistInspector) + 19 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cycler/__init__.py:438() + 46 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_collections_abc.py:315(__subclasshook__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_distributor_init.py:1() + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/categorical.py:122(_cat_compare_op) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:851(get_root_units) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:1066(Path) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_strptime.py:152(__calc_timezone) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/dtypes/dtypes.py:1324(__init__) + 10 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/axis.py:2259(_make_getset_interval) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/interchange/dataframe_protocol.py:1() + 2 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/json/decoder.py:332(decode) + 2 0.000 0.000 0.008 0.004 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/__init__.py:32(message_from_string) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/compat/_optional.py:91(import_optional_dependency) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_layoutgrid.py:1() + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:1138(home) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/text.py:1615(Annotation) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfstate/pfstate_helper.py:1() + 8 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/threading.py:82(RLock) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/message.py:105(Message) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/__init__.py:582(get_data_path) + 7 0.000 0.000 0.004 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/importlib/__init__.py:109(import_module) + 16 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_collections_abc.py:779(items) + 2 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:1262(read_text) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:861(_DomainGreater) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/numeric.py:238(NumericArray) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:327(resolve) + 11 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/packaging/version.py:45(parse) + 57 0.000 0.000 0.000 0.000 {method 'copy' of 'dict' objects} + 12 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/re.py:331(filter) + 8 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_typing/__init__.py:56(__init_subclass__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/parser/isoparser.py:2() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/excel/_xlrd.py:1() + 5 0.000 0.000 0.003 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/definitions.py:67(numeric_parse) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_bases.py:763(GraphicsContextBase) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/ops/__init__.py:480(flex_comp_method_FRAME) + 33 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4563(recurse) + 47 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4267() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/parsing.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/parser.py:31(DefinitionFile) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/feedparser.py:178(_call_parse) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/_datasource.py:1() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/holidays/calendars/buddhist.py:12() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/ImageColor.py:20() + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_strptime.py:95(__calc_am_pm) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/apply.py:600(FrameApply) + 13 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/mixins.py:36(_inplace_binary_method) + 96 0.000 0.000 0.000 0.000 {built-in method builtins.abs} + 13 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/textwrap.py:465(indent) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/linalg/linalg.py:97(_determine_error_states) + 14 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_internal.py:920(npy_ctypes_check) + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/plotting/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/spss.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cycler/__init__.py:119(Cycler) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:1419(exists) + 1 0.000 0.000 0.000 0.000 {built-in method _hashlib.openssl_sha3_512} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3018(Regex) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/selectors.py:366(unregister) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_globals.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/_common.py:1() + 1 0.000 0.000 0.084 0.084 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:2323(setup_matplotlib) + 28 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:696() + 12 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/legend_handler.py:62(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/fft/helper.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/subprocess.py:700(Popen) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:6540(MaskedConstant) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/tz.py:458(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/ops.py:70(Term) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/reshape/merge.py:638(_MergeOperation) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/parsers/python_parser.py:62(PythonParser) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:508(Formatter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:264() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/tools/peakperiod.py:16(factory) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/ticker.py:2242(LogLocator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/visualize/colors.py:31(General) + 4 0.000 0.000 0.000 0.000 {method 'read' of '_io.StringIO' objects} + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/functools.py:958(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/dtypes/api.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfstate/pfstate.py:22(PfState) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexers/__init__.py:1() + 1 0.000 0.000 0.003 0.003 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/colorama/__init__.py:2() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_config/display.py:1() + 52 0.000 0.000 0.000 0.000 {method 'removesuffix' of 'str' objects} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_config/localization.py:1() + 2 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/hashlib.py:82(__get_builtin_constructor) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/base.py:181(SelectionMixin) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/pytables.py:2750(GenericFixed) + 16 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/array_algos/take.py:352(_view_wrapper) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/excel/_base.py:900(ExcelWriter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/string_arrow.py:63(ArrowStringArray) + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cffi/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/tools/peakperiod.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/util/numba_.py:1() + 7 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:5904(__add__) + 1 0.000 0.000 0.004 0.004 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/mpl_toolkits/mplot3d/axis3d.py:5() + 27 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/util/version/__init__.py:343() + 10 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/extras.py:233(__init__) + 7 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/legend_handler.py:171(__init__) + 1 0.000 0.000 0.000 0.000 {built-in method posix.urandom} + 1 0.000 0.000 1.007 1.007 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/dev_scripts/heaviness.py:6(main) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/parser/isoparser.py:22(_takes_ascii) + 1 0.000 0.000 0.011 0.011 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/window/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/ndframelike.py:1() + 5 0.000 0.000 0.000 0.000 :241(_requires_builtin_wrapper) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexing.py:664(_LocationIndexer) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/excel/_pyxlsb.py:18(PyxlsbReader) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:1679(_make_norm_from_scale) + 11 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:1697(__call__) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:771() + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/selectors.py:352(register) + 1 0.000 0.000 0.000 0.000 {built-in method _hashlib.openssl_shake_128} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/stackplot.py:1() + 2 0.000 0.000 0.000 0.000 {built-in method posix.unsetenv} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/holidays/calendars/chinese.py:12() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_api/deprecation.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/polynomial.py:1077(poly1d) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/random.py:217(__init_subclass__) + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:877(to_units_container) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/zipfile.py:1814(__del__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/shlex.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/errors.py:5() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/util/_tester.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/offsetbox.py:208(OffsetBox) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfstate/arithmatic.py:102(PfStateArithmatic) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/__init__.py:273() + 1 0.000 0.000 0.000 0.000 {built-in method _hashlib.openssl_shake_256} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:191() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/compat/_constants.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/array_algos/replace.py:1() + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:441(_validate_papersize) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3533() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/api/extensions/__init__.py:1() + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/font_manager.py:970(json_load) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/tools/duration.py:1() + 59 0.000 0.000 0.000 0.000 {method 'span' of 're.Match' objects} + 36 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_api/__init__.py:78() + 34 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/ops/invalid.py:40(make_invalid_op) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/excel/_pyxlsb.py:2() + 7 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/fractions.py:276(_operator_fallbacks) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_strptime.py:84() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/groupby/grouper.py:57(Grouper) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/interchange/utils.py:1() + 1 0.000 0.000 0.003 0.003 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/zoneinfo/_tzpath.py:1() + 1 0.000 0.000 0.000 0.000 {built-in method _hashlib.openssl_sha3_384} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/internals/ops.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:1991(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/numbers.py:32(Complex) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sre_parse.py:289(seek) + 35 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/datetime.py:383(_check_int_field) + 1 0.000 0.000 0.000 0.000 {method 'sum' of 'numpy.ndarray' objects} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/util/version/__init__.py:181(LegacyVersion) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/dtypes/base.py:39(ExtensionDtype) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/frozen.py:21(FrozenList) + 1 0.000 0.000 0.005 0.005 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/holidays/constants.py:14() + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/colorama/initialise.py:2() + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/datetime.py:415(_check_date_fields) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:174(_make_type_validator) + 60 0.000 0.000 0.000 0.000 {built-in method builtins.divmod} + 36 0.000 0.000 0.000 0.000 {method 'release' of '_thread.RLock' objects} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/_numba/executor.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/tempfile.py:627(SpooledTemporaryFile) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:1615(__init__) + 22 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/parser.py:64(_iter_definitions) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/charset.py:211(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/image.py:1034(NonUniformImage) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/excel/_base.py:518(BaseExcelReader) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/prices/hedge.py:1() + 18 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:523() + 2 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:5996(srange) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/widgets.py:2533(SpanSelector) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:6023() + 7 0.000 0.000 0.004 0.001 :1018(_gcd_import) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/excel/_xlsxwriter.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/holidays/calendars/gregorian.py:12() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/holidays/registry.py:167(EntityLoader) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:3001(Bar) + 2 0.000 0.000 0.011 0.006 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/importlib/metadata.py:562(version) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/widgets.py:1341(TextBox) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/_version.py:390(render_pep440) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/traceback.py:1() + 2 0.000 0.000 0.000 0.000 {built-in method numpy.zeros} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pytz/tzfile.py:1() + 1 0.000 0.000 0.096 0.096 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_libs/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/_binary.py:15() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/ImageChops.py:18() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:5111(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/__future__.py:1() + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/accessor.py:306(decorator) + 24 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/definitions.py:156(has_symbol) + 14 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:152(validate_axisbelow) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:665(Colormap) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3749(ParseExpression) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_ufunc_config.py:435(__exit__) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/six.py:131(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/array_algos/masked_accumulations.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/stata.py:3158(StataWriter117) + 1 0.000 0.000 0.006 0.006 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/parser.py:5() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/table.py:239(Table) + 10 0.000 0.000 0.000 0.000 {method 'cast' of 'memoryview' objects} + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:5249(_generateDefaultName) + 27 0.000 0.000 0.000 0.000 {method 'partition' of 'str' objects} + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/_mixins.py:77(ravel_compat) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_api/__init__.py:188(caching_module_getattr) + 1 0.000 0.000 0.000 0.000 {built-in method _hashlib.openssl_sha224} + 1 0.000 0.000 0.000 0.000 {built-in method math.sqrt} + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/nanops.py:465(maybe_operate_rowwise) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/string_.py:230(StringArray) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/inspect.py:2897(__hash__) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/colorama/winterm.py:2() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/floating.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/tools/times.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/api/indexers/__init__.py:1() + 26 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4279() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/common.py:430() + 24 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/dviread.py:221() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/_iotools.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/threading.py:791(Thread) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/children.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/string.py:69(__init_subclass__) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfstate/arithmatic.py:93(raiseerror_if_otherNone) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/babel/core.py:1150(parse_locale) + 35 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/multiarray.py:1080(copyto) + 38 0.000 0.000 0.000 0.000 {method 'groupdict' of 're.Match' objects} + 92 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/accessor.py:141() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/widgets.py:615(RangeSlider) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/formats/info.py:716(TableBuilderAbstract) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/feedparser.py:53(__init__) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/datetime.py:1602(__new__) + 1 0.000 0.000 0.000 0.000 {method 'newbyteorder' of 'numpy.generic' objects} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:315(UnitsContainer) + 8 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/message.py:564(get_content_type) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/_policybase.py:94(_append_doc) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/dtypes/dtypes.py:821(PeriodDtype) + 8 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4331(_generateDefaultName) + 47 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/accessors.py:151() + 16 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_add_newdocs_scalars.py:19(type_aliases_gen) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3641(__init__) + 19 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cycler/__init__.py:190(change_key) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/strings/base.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_cm_listed.py:2061() + 2 0.000 0.000 0.000 0.000 {built-in method posix.putenv} + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:1318(mkdir) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/sql.py:844(SQLTable) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/tools/startofday.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/importlib/metadata.py:162(Distribution) + 8 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/classes.py:46(dont_init_twice) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:2658(ConnectionStyle) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/importlib_resources/abc.py:59(Traversable) + 1 0.000 0.000 0.021 0.021 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/matrixlib/__init__.py:1() + 24 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/compat/numpy/function.py:48(__init__) + 56 0.000 0.000 0.000 0.000 {method '__init_subclass__' of 'object' objects} + 5 0.000 0.000 0.000 0.000 :1233(_get_parent_path) + 2 0.000 0.000 0.002 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/ops/methods.py:48(add_flex_arithmetic_methods) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:670(Rectangle) + 5 0.000 0.000 0.000 0.000 :757(create_module) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_fontconfig_pattern.py:59(comma_separated) + 22 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/parser.py:94(iter_definitions) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/unicode.py:128(pyparsing_unicode) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3612(__init__) + 2 0.000 0.000 0.000 0.000 {built-in method math.log} + 1 0.000 0.000 0.000 0.000 {method 'view' of 'numpy.generic' objects} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/pytables.py:1942(IndexCol) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/tools/round.py:1() + 2 0.000 0.000 0.002 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/importlib/metadata.py:536(distribution) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/cbook.py:120(CallbackRegistry) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cffi/api.py:23(FFI) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/projections/polar.py:804(PolarAxes) + 20 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/inspect.py:2889() + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/locale.py:386(normalize) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/locale.py:577(getlocale) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/holidays/calendars/hindu.py:12() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint_pandas/pint_array.py:31(PintType) + 10 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:974(__truediv__) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/missing.py:873(_datetimelike_compat) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/unicode.py:3() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/spines.py:14(Spine) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/rrule.py:80(_invalidates_cache) + 38 0.000 0.000 0.000 0.000 {method 'reverse' of 'list' objects} + 85 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_compat_pickle.py:167() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/selectors.py:584(_can_use) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/excel/_odswriter.py:30(ODSWriter) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4103(__init__) + 1 0.000 0.000 0.016 0.016 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/style/__init__.py:1() + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/internals/blocks.py:127(maybe_split) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/quantity.py:144(method_wraps) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_tight_layout.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/ExifTags.py:304(GPS) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/tz.py:1590(nocache) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/parser/_parser.py:241(parserinfo) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/_ranges.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/socket.py:214(socket) + 15 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:311(copy) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:97(ColorSequenceRegistry) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/dtypes/dtypes.py:1037(IntervalDtype) + 1 0.000 0.000 0.088 0.088 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/groupby/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:526(ParserHelper) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/getlimits.py:696(min) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/widgets.py:3205(RectangleSelector) + 2 0.000 0.000 0.000 0.000 {built-in method _locale.nl_langinfo} + 12 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:281(__set_name__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_machar.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:5322(__init__) + 1 0.000 0.000 0.004 0.004 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/parser.py:214(parse) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/json/_json.py:787(JsonReader) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/importlib/metadata.py:508(_search_paths) + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3089(re) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/arraypad.py:1() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_osx_support.py:117(_get_system_version_tuple) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/six.py:169(_SixMetaPathImporter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/ops/missing.py:1() + 12 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:289(wrapper) + 33 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/results.py:21(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/internals/base.py:37(DataManager) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/traceback.py:200(extract_stack) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/threading.py:1314(__init__) + 38 0.000 0.000 0.000 0.000 {built-in method _ctypes.sizeof} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/array_algos/quantile.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/image.py:231(_ImageBase) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/colorsys.py:1() + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:516(select_from) + 9 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/strings/accessor.py:137(_map_and_wrap) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:5412(Forward) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_bases.py:1339(LocationEvent) + 1 0.000 0.000 0.003 0.003 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/importlib_resources/__init__.py:1() + 19 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/datetimes.py:115(_field_accessor) + 74 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/util.py:203(no_escape_re_range_char) + 19 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/definitions.py:51() + 2 0.000 0.000 0.000 0.000 :1216(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/pint_eval.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/testing.py:3() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/offsetbox.py:1212(AnnotationBbox) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/ndframelike.py:11(NDFrameLike) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/posixpath.py:388(realpath) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:3127(view) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/reshape/concat.py:388(_Concatenator) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/__init__.py:312(_logged_cached) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/mixins/excelclipboard.py:22(ExcelClipboardOutput) + 71 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/signal.py:21() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/tz.py:386(tzfile) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/util.py:102(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/dataframeexport.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/calendar.py:52() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pytz/lazy.py:118() + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/_common.py:132(_validate_fromutc_inputs) + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/api/interchange/__init__.py:1() + 23 0.000 0.000 0.000 0.000 {method 'discard' of 'set' objects} + 70 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/signal.py:16() + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/textwrap.py:381(fill) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/polynomial/_polybase.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_config/display.py:17(detect_console_encoding) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/tseries/frequencies.py:178(_FrequencyInferer) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/string_.py:68(StringDtype) + 2 0.000 0.000 0.009 0.005 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/importlib/metadata.py:263(version) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/quiver.py:235(QuiverKey) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/tri/_triplot.py:1() + 10 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/importlib/metadata.py:229() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4535(ParseElementEnhance) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/__init__.py:609(gen_candidates) + 23 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_config/config.py:810(inner) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/array_algos/datetimelike_accumulations.py:1() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/tools/ceil.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/holidays/holiday_base.py:970(HolidaySum) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/colorama/ansi.py:2() + 17 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/dtypes/inference.py:328(is_hashable) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/compat/pyarrow.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_docstring.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/check.py:1() + 29 0.000 0.000 0.000 0.000 {method 'readline' of '_io.BytesIO' objects} + 43 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_compat_pickle.py:165() + 1 0.000 0.000 0.000 0.000 {built-in method _hashlib.openssl_sha1} + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/json/__init__.py:274(load) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/ImagePalette.py:19() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:1693(Annulus) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:6643(__setattr__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:848(Handler) + 10 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3685(parseImpl) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/zipfile.py:2197(make) + 23 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/definitions.py:152(symbol) + 21 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:996() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/selectors.py:64(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_dtype.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/boolean.py:232(BooleanArray) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/frozen.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/internals/array_manager.py:1147(SingleArrayManager) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/plotting/_misc.py:553(_Options) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/sql.py:1505(SQLDatabase) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/PngImagePlugin.py:345(PngStream) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/tri/_trirefine.py:1() + 3 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:1118(_opener) + 10 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/importlib/metadata.py:489() + 31 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/fromnumeric.py:3172(_ndim_dispatcher) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/formatting.py:471(remove_custom_flags) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/_factories.py:1() + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/datetime.py:428(_check_time_fields) + 26 0.000 0.000 0.000 0.000 {method 'index' of 'str' objects} + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_collections_abc.py:925(clear) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/_version.py:595(render) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:6345(mvoid) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_osx_support.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/reshape/util.py:1() + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/legend_handler.py:214(__init__) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/nanops.py:400(_datetimelike_compat) + 30 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/results.py:251(__contains__) + 18 0.000 0.000 0.000 0.000 {built-in method numpy.geterrobj} + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/parser.py:201(register_class) + 7 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/rrule.py:70(__init__) + 15 0.000 0.000 0.000 0.000 :1() + 17 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/results.py:260(__iter__) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/generic.py:11879(_doc_params) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/container.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/function_base.py:2117(vectorize) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/formats/console.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/formats/info.py:358(BaseInfo) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/pytables.py:2263(DataCol) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:5090(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:1513(Ellipse) + 12 0.000 0.000 0.000 0.000 {built-in method builtins.round} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/arrow/dtype.py:39(ArrowDtype) + 30 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4278() + 12 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:925(copy_with) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:409(_NormalAccessor) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_strptime.py:80(__calc_weekday) + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:6033(token_map) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pytz/lazy.py:172() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/calendar.py:148(Calendar) + 1 0.000 0.000 0.014 0.014 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/arrow/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/window/rolling.py:669(BaseWindowGroupby) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/excel/_xlsxwriter.py:175(XlsxWriter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3173(QuotedString) + 5 0.000 0.000 0.000 0.000 {method 'rfind' of 'bytes' objects} + 33 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/packaging/version.py:452(_parse_letter_version) + 21 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3780(recurse) + 14 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/classes.py:61(series_property_raising_typeerror) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pickle.py:200(_Framer) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/numeric.py:2123(identity) + 1 0.000 0.000 0.109 0.109 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/util/__init__.py:2() + 1 0.000 0.000 0.005 0.005 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/converters.py:1() + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_api/deprecation.py:239(__init__) + 26 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4277() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/quiver.py:866(Barbs) + 27 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:1197() + 1 0.000 0.000 0.000 0.000 {method 'squeeze' of 'numpy.ndarray' objects} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/_version.py:14(NumpyVersion) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:648(__copy__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_pylab_helpers.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/interchange/dataframe_protocol.py:169(Column) + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3099(re_match) + 1 0.000 0.000 0.000 0.000 {built-in method select.poll} + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_config/config.py:116(_get_single_key) + 7 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3552(__init__) + 24 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:2265() + 33 0.000 0.000 0.000 0.000 {built-in method _operator.index} + 3 0.000 0.000 0.000 0.000 {method 'toordinal' of 'datetime.date' objects} + 7 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/getlimits.py:157(_register_type) + 1 0.000 0.000 0.000 0.000 {built-in method time.localtime} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/datetime.py:2216(timezone) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pickle.py:263(_Unframer) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ctypes/__init__.py:445(LibraryLoader) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/window/online.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/collections.py:1302(RegularPolyCollection) + 12 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:102(join_parsed_parts) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/zipfile.py:2303(__init__) + 2 0.000 0.000 0.009 0.005 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/importlib/metadata.py:246(metadata) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/classes.py:229(VolumePfLine) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/importlib_resources/abc.py:13(ResourceReader) + 14 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/contextlib.py:382(__exit__) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:221(validate_fonttype) + 11 0.000 0.000 0.000 0.000 {method 'index' of 'tuple' objects} + 8 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:1227(stat) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/parser/__init__.py:36(__deprecate_private_class) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/gbq.py:1() + 15 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:915() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:2007(_init_dynamic_classes) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/testing.py:15(pyparsing_test) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/datetime.py:793(date) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/transforms.py:2338(CompositeGenericTransform) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/classes.py:295(NestedPfLine) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/widgets.py:1602(RadioButtons) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/tri/_triangulation.py:8(Triangulation) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/projections/geo.py:15(GeoAxes) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/numbers.py:294(Integral) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_collections_abc.py:362(__subclasshook__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:4054(FancyArrowPatch) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/relativedelta.py:18(relativedelta) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/_util.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/ops/dispatch.py:1() + 1 0.000 0.000 0.005 0.005 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/sparse/__init__.py:1() + 10 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_docstring.py:33(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/classes.py:270(FlatPfLine) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/zipp/__init__.py:186(Path) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/interop.py:21(InOp) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ctypes/__init__.py:319(CDLL) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/parsers/arrow_parser_wrapper.py:15(ArrowParserWrapper) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/mixins/excelclipboard.py:1() + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/weakref.py:511(update) + 20 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_config/config.py:847(inner) + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_ufunc_config.py:426(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/enums.py:4(Kind) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/figure.py:2149(SubFigure) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/enum.py:928(_missing_) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/textwrap.py:115(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:977(_MaskedBinaryOperation) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/interchange/dataframe_protocol.py:360(DataFrame) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/excel/_openpyxl.py:532(OpenpyxlReader) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:1514(findCaller) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/encoders.py:5() + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/genericpath.py:27(isfile) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/threading.py:950(_set_tstate_lock) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4949(__init__) + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:996(__new__) + 7 0.000 0.000 0.000 0.000 :948(_sanity_check) + 31 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/function_base.py:19(_linspace_dispatcher) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/axis.py:2289(XAxis) + 31 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/multiarray.py:669(result_type) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_exceptions.py:17(_display_as_base) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/unicode.py:31(unicode_set) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3510(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/axis.py:33() + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/textwrap.py:179() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/util/version/__init__.py:26(InfinityType) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/pytables.py:396(PyTablesExprVisitor) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/_parseaddr.py:207(AddrlistClass) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/_parseaddr.py:4() + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:512(to_rgb) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/widgets.py:2177(_SelectorWidget) + 12 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/extension.py:113(inherit_names) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/tools/righttoleft.py:1() + 38 0.000 0.000 0.000 0.000 {method 'end' of 're.Match' objects} + 3 0.000 0.000 0.000 0.000 :1251(__iter__) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/inspect.py:2892() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/threading.py:228(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_type_aliases.py:41() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_ufunc_config.py:441(_setdef) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:1283(_replace_dtype_fields_recursive) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:2372(_MaskedPrintOption) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/zipfile.py:1189(ZipFile) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:1424(debug) + 1 0.000 0.000 0.006 0.006 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:159(__call__) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:421(validate_whiskers) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/textwrap.py:342(wrap) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:3417(dtype) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/context.py:405(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/cm.py:390(ScalarMappable) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:716(add_condition) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/datetime.py:1270(__new__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/datetime.py:1245(time) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/zoneinfo/_common.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/_factories.py:26(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/Image.py:3588(_apply_env_variables) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/colorama/ansitowin32.py:72(AnsiToWin32) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:3807(FancyBboxPatch) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/widgets.py:2940(ToolLineHandles) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/arithmatic.py:212(Add) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:1259(Arrow) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:1386(_get_defaults) + 34 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint_pandas/pint_array.py:953(__init__) + 3 0.000 0.000 0.000 0.000 :1237(_recalculate) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_weakrefset.py:37(__init__) + 2 0.000 0.000 0.000 0.000 {method 'unregister' of 'select.poll' objects} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/ops/methods.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/__init__.py:5() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_managers.py:32(ToolManager) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:2589(MaskedIterator) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_strptime.py:26(_getlang) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/base.py:1737(_add_comparison_ops) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/window/rolling.py:1348(RollingAndExpandingMixin) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_testing/compat.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/collections.py:1565(EventCollection) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:876(with_name) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/polynomial/legendre.py:1619(Legendre) + 1 0.000 0.000 0.252 0.252 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:97() + 8 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4983(stopOn) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/datetime.py:473(timedelta) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/numbers.py:147(Real) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/textwrap.py:160(_split) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:190() + 8 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/relativedelta.py:13() + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/ops/methods.py:16(_get_method_wrappers) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/expr.py:127(_compose) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/sql.py:1346(PandasSQL) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/tools/changeyear.py:44(additional_notes) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/holidays/calendars/thai.py:12() + 17 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/converters.py:36(__init__) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/feedparser.py:197(_new_message) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:2698(_Base) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/base.py:1697(ExtensionOpsMixin) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/datetimelike.py:162(_period_dispatch) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/internals/blocks.py:2123(NDArrayBackedExtensionBlock) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/tarfile.py:573(_StreamProxy) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/scope.py:123(Scope) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:1041(__next__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/collections.py:1176(PolyCollection) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:704(add_parse_action) + 11 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/results.py:211() + 21 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_api/deprecation.py:171(__set_name__) + 9 0.000 0.000 0.000 0.000 {built-in method _operator.truediv} + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/signal.py:49(decorator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/holidays/calendars/hebrew.py:12() + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/importlib/metadata.py:495(find_distributions) + 24 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/dviread.py:188(_dispatch) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/_version.py:383(plus_or_dot) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/selectors.py:216(_fileobj_lookup) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_utils/_inspect.py:1() + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/__init__.py:2() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/datetimelike.py:1583(DatelikeOps) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/numeric.py:47(NumericDtype) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/excel/_odfreader.py:28(ODFReader) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/quopri.py:3() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:131(_validate_date) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/font_manager.py:982(FontManager) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/projections/geo.py:249(AitoffTransform) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/mpl_toolkits/mplot3d/art3d.py:844(Poly3DCollection) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/zoneinfo/_tzpath.py:31(_parse_python_tzpath) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:704(__mul__) + 10 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/results.py:337(get) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_tools.py:29(Cursors) + 1 0.000 0.000 0.021 0.021 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/mpl_toolkits/mplot3d/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:324(compile_pattern) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/errors.py:1() + 12 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/systems.py:173(invalidate_members) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_pylab_helpers.py:9(Gcf) + 2 0.000 0.000 0.000 0.000 :1452(find_distributions) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/ops/mask_ops.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/sql.py:2026(SQLiteTable) + 9 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:357(copy) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:1260(Manager) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/message.py:945(MIMEPart) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/font_manager.py:532(FontProperties) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_afm.py:358(AFM) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/mpl_toolkits/mplot3d/art3d.py:641(Path3DCollection) + 4 0.000 0.000 0.000 0.000 {built-in method _locale.setlocale} + 1 0.000 0.000 0.006 0.006 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:348(_after_init) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/scale.py:754() + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/posixpath.py:373(abspath) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/weakref.py:496(popitem) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:136() + 9 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_pytesttester.py:76(__init__) + 14 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/_common.py:9(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/internals/blocks.py:1828(ExtensionBlock) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/feedparser.py:70(close) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/packaging/version.py:36(_Version) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_bases.py:1090(TimerBase) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/textwrap.py:1() + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/feedparser.py:184(close) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/ImagePalette.py:24(ImagePalette) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_utils/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/offsetbox.py:906(AnchoredOffsetbox) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/version.py:2() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/polynomial/hermite_e.py:1650(HermiteE) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/parser/isoparser.py:42(isoparser) + 10 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/accessor.py:216(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexing.py:1467(_iLocIndexer) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/figure.py:73(_AxesStack) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/axis.py:2527(YAxis) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/rrule.py:1418(_rrulestr) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/container.py:5(Container) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/testing/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/projections/polar.py:188(InvertedPolarTransform) + 34 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:1915(recurse) + 14 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/contextlib.py:376(__init__) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/feedparser.py:122(pushlines) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sysconfig.py:341(get_makefile_filename) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/uu.py:27() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3415(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/tri/_triangulation.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/colorsys.py:75(rgb_to_hls) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/timedeltas.py:33(TimedeltaIndex) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3450(_generateDefaultName) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:5765(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:486(_make_selector) + 10 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/definitions.py:251() + 14 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/mixins.py:26(_reflected_binary_method) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/formats/info.py:841(TableBuilderVerboseMixin) + 16 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/traceback.py:282(__len__) + 17 0.000 0.000 0.000 0.000 {method 'index' of 'list' objects} + 2 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/linecache.py:36(getlines) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/platform.py:785(uname_result) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/random.py:117(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pytz/tzinfo.py:18(memorized_timedelta) + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/dtypes/generic.py:46(_subclasscheck) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/arrays/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_version.py:20(get_versions) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/definitions.py:92(Definition) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:1675(getEffectiveLevel) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:2043() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:221(Fonts) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/weakref.py:165(__setitem__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:4394(ConnectionPatch) + 26 0.000 0.000 0.000 0.000 {built-in method _stat.S_ISLNK} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/tri/_trifinder.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/tseries/api.py:1() + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/os.py:682(__setitem__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/numerictypes.py:229(obj2sctype) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:2274(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:1216(Normalize) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/ticker.py:375(ScalarFormatter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:2486(Keyword) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/widgets.py:3051(ToolHandles) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/exceptions.py:1() + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:384(gethomedir) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/unicode.py:70(alphas) + 10 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:374(validate_fontweight) + 8 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/rrule.py:77() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/os.py:44(_get_exports_list) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:8376(_convert2ma) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexing.py:1126(_LocIndexer) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/tools/right.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/formatting.py:225(format_default) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/quantity.py:156(check_dask_array) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/mathtext.py:37(MathTextParser) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfstate/__init__.py:1() + 3 0.000 0.000 0.000 0.000 {built-in method maketrans} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/datetime.py:1145(tzinfo) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/arrayterator.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/holidays/calendars/persian.py:12() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/context.py:197(Context) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/systems.py:106(Group) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/systems.py:367(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/__init__.py:645(RcParams) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/colorsys.py:98(hls_to_rgb) + 8 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/functools.py:840(_is_valid_dispatch_type) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:266(validate_color_or_inherit) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/transforms.py:1153(LockableBbox) + 12 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:5770(postParse) + 9 0.000 0.000 0.000 0.000 {method 'count' of 'list' objects} + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/linecache.py:147(lazycache) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/_version.py:177(git_versions_from_keywords) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:1315(_replace_dtype_fields) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/roperator.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:1601(ContextRegistry) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:1976(SystemRegistry) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/collections.py:1378(LineCollection) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_bases.py:2579(FigureManagerBase) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_managers.py:1() + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/nanops.py:1073(_nanminmax) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:1677(_build_cache) + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/os.py:816(fsdecode) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/tri/_tritools.py:1() + 5 0.000 0.000 0.000 0.000 :765(exec_module) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/excel/_xlrd.py:19(XlrdReader) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4245(MatchFirst) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:1073(Polygon) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_ufunc_config.py:367(errstate) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/mixins.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/linalg/linalg.py:39(EigResult) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/dtypes/dtypes.py:1305(PandasDtype) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/babel/plural.py:535(_Compiler) + 12 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:2052(get_group) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/_vendor/flexcache.py:248(DiskCache) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cffi/model.py:102(PrimitiveType) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/GimpPaletteFile.py:17() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3922(And) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/tools/stamp.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/decorators.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/polynomial/hermite.py:1658(Hermite) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/importlib/metadata.py:41(EntryPoint) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:116(__diag__) + 22 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3514() + 9 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_config/config.py:860(is_nonnegative_int) + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:1350(runtime_checkable) + 3 0.000 0.000 0.000 0.000 {built-in method _operator.mul} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/selectors.py:203(__exit__) + 16 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_dtype.py:24(_kind_name) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_add_newdocs_scalars.py:18(numeric_type_aliases) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/polynomial/laguerre.py:1606(Laguerre) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/parser/_parser.py:58(_timelex) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/accessor.py:19(DirNamesMixin) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/array_algos/transforms.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/extension.py:138(ExtensionIndex) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/feedparser.py:173(feed) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/PaletteFile.py:19(PaletteFile) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/scale.py:261(LogScale) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/classes.py:335(NestedVolumePfLine) + 12 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/period.py:103(_field_accessor) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/apply.py:100(Apply) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/groupby/indexing.py:31(GroupByIndexingMixin) + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/json/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/babel/numbers.py:1071(NumberPattern) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:838(_addHandlerRef) + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/packaging/version.py:76(__lt__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_enums.py:27(JoinStyle) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/gridspec.py:531(SubplotSpec) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/message.py:588(get_content_maintype) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/definitions.py:313() + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/contextlib.py:404(_exit_wrapper) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_internal.py:217(_getintp_ctype) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/random.py:778(SystemRandom) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/locale.py:469(_parse_localename) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/shared_docs.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexers/objects.py:285(GroupbyIndexer) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/_vendor/flexcache.py:399(DiskCacheByHash) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/extendpandas.py:1() + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/index_tricks.py:320(__init__) + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/zoneinfo/_tzpath.py:5(reset_tzpath) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/tz.py:41(tzutc) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexers/objects.py:43(BaseIndexer) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/parsers/c_parser_wrapper.py:56(CParserWrapper) + 1 0.000 0.000 0.006 0.006 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:2012(_after_init) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:2379(Token) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/axes/_base.py:554() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/axis.py:32() + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:451(define) + 10 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/_policybase.py:104() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/_policybase.py:112(Policy) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_api/__init__.py:209() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/_common.py:267(tzrangebase) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/methods/selectn.py:40(SelectN) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cffi/model.py:264(__init__) + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/os.py:771(getenv) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/genericpath.py:16(exists) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/numerictypes.py:589(_register_types) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_internal.py:249(_ctypes) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_config/config.py:596(_get_root) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/internals/blocks.py:1576(EABackedBlock) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/formats/format.py:200(CategoricalFormatter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/systems.py:29(GroupDefinition) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/iterators.py:5() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/packaging/version.py:67(_BaseVersion) + 8 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/tools/peakperiod.py:61() + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/getlimits.py:62(smallest_subnormal) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/ExifTags.py:359(LightSource) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/transforms.py:1763(AffineBase) + 16 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_add_newdocs_scalars.py:79() + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/os.py:1073(__subclasshook__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/selectors.py:81(BaseSelector) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/tz.py:482(_set_tzdata) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/calendar.py:50(_localized_month) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/window/ewm.py:850(OnlineExponentialMovingWindow) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/accessors.py:49(Properties) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/ops.py:596(MathCall) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:2743(Word) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/style/core.py:238(reload_library) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/mpl_toolkits/mplot3d/axis3d.py:732(XAxis) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:2047() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/_version.py:38(get_config) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/selectors.py:67(__len__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_pytesttester.py:1() + 10 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/__future__.py:83(__init__) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:846(__init__) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/generic.py:11882() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/internals/array_manager.py:1317(NullArrayProxy) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:411(PercentStyle) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:1448(warning) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:1389(Logger) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/parser.py:147(Parser) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/_vendor/flexcache.py:414(DiskCacheByMTime) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/cbook.py:815(Grouper) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:543(validate_bbox) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/ticker.py:815(LogFormatter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_enums.py:115() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/cm.py:83(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/widgets.py:1949(Cursor) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/visualize/plot.py:79(decorator) + 1 0.000 0.000 0.003 0.003 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/parsers/__init__.py:1() + 8 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/unicode.py:9(__init__) + 19 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/definitions.py:55() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/classes.py:240(PricePfLine) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/tz.py:381(__init__) + 1 0.000 0.000 0.000 0.000 {method 'tobytes' of 'numpy.generic' objects} + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:806(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/expr.py:779(Expr) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/json/_json.py:1075(Parser) + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/holidays/calendars/custom.py:25() + 12 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:799() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:1413(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/transforms.py:1276(Transform) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/util.py:14(__config_flags) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/colorama/initialise.py:9(_wipe_internal_state_for_tests) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:1922(Arc) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:329(TruetypeFonts) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/widgets.py:3733(LassoSelector) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_layoutgrid.py:31(LayoutGrid) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/rrule.py:1307(rruleset) + 1 0.000 0.000 0.000 0.000 {built-in method _ctypes.dlopen} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_typing.py:200(BaseBuffer) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/boolean.py:41(BooleanDtype) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:1565(_log) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/kiwisolver/exceptions.py:8() + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/projections/__init__.py:75(register) + 16 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/accessors.py:158() + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:1224(__init__) + 19 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/converters.py:18(is_multiplicative) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/parser.py:175(register_directive) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ctypes/__init__.py:510(CFunctionType) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sysconfig.py:515(get_paths) + 1 0.000 0.000 0.003 0.003 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/api/__init__.py:1() + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/parser.py:195() + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/linalg/linalg.py:135(_makearray) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/dtypes/dtypes.py:75(PandasExtensionDtype) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/dtypes/dtypes.py:1403(BaseMaskedDtype) + 11 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/accessor.py:136(delegate_names) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/interchange/dataframe_protocol.py:116(Buffer) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/sql.py:2170(SQLiteDatabase) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:1760(LoggerAdapter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/_vendor/appdirs.py:407(AppDirs) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/_util.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cffi/lock.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/ticker.py:1305(EngFormatter) + 15 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/results.py:448() + 4 0.000 0.000 0.000 0.000 {method 'extend' of 'collections.deque' objects} + 3 0.000 0.000 0.001 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:1246(open) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:406(_validate_mathtext_fallback) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/widgets.py:2042(MultiCursor) + 22 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/expr.py:297(_op_maker) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sysconfig.py:434(_init_posix) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/_factories.py:56(__init__) + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/babel/__init__.py:1() + 12 0.000 0.000 0.000 0.000 {method 'remove' of 'set' objects} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/posixpath.py:117(splitext) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:534(_PreciseSelector) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/arrayprint.py:503(decorating_function) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pytz/__init__.py:213(UTC) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_config/config.py:134(_get_option) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/csv.py:80(DictReader) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/flags.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/json/_json.py:207(Writer) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/pytables.py:4715(AppendableMultiFrameTable) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/babel/plural.py:83(PluralRule) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:1230(append) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/formatting.py:253(formatter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:138(Diagnostics) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/classes.py:434(FlatCompletePfLine) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_bases.py:3371(_Backend) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/style/core.py:198(update_user_library) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/dates.py:208(__getattr__) + 7 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/enum.py:443(__members__) + 12 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/dtypes/base.py:138() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:5260(SkipTo) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_bases.py:1401(MouseButton) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/offsetbox.py:595(DrawingArea) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/transforms.py:2177(BlendedGenericTransform) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4967(_MultipleMatch) + 5 0.000 0.000 0.000 0.000 :1223(_find_parent_path_names) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/threading.py:393(Semaphore) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/platform.py:1112(python_implementation) + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/dtypes/generic.py:37(_check) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/timedeltas.py:81(_field_accessor) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/socket.py:661(SocketIO) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/importlib/metadata.py:401(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:1645(callHandlers) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/systems.py:356(System) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/ticker.py:304(FuncFormatter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/zipp/__init__.py:87(CompleteDirs) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/zipp/py310compat.py:1() + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ctypes/__init__.py:509(PYFUNCTYPE) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/linalg/linalg.py:153(_realType) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_config/config.py:260(__call__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/dtypes/base.py:446(Registry) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/formats/info.py:592(DataFrameInfoPrinter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/parsers/readers.py:1355(TextFileReader) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/mathtext.py:48(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/visualize/categories.py:10(Category) + 18 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:1879() + 5 0.000 0.000 0.000 0.000 {built-in method sys.exc_info} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/__init__.py:221() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sysconfig.py:124(_is_python_source_dir) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/babel/core.py:1244(get_locale_identifier) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:653(copy) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:256(_validate_toolbar) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:1587(__xor__) + 1 0.000 0.000 0.000 0.000 {built-in method _hashlib.openssl_sha256} + 24 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/util/version/__init__.py:465(_parse_letter_version) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_strptime.py:88(__calc_month) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/ops/invalid.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/integer.py:14(IntegerDtype) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/formats/info.py:441(DataFrameInfo) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/ticker.py:2854(AutoLocator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_tight_bbox.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/projections/polar.py:258(_AxisWrapper) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/mpl_toolkits/mplot3d/art3d.py:76(Text3D) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/textwrap.py:356(fill) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/Image.py:136(Transpose) + 2 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/linecache.py:26(getline) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/six.py:493(Module_six_moves_urllib) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/collections/__init__.py:925(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/parser/__init__.py:21(__deprecated_private_func) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/floating.py:14(FloatingDtype) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/Image.py:3624(Exif) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/classes.py:477(NestedCompletePfLine) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/textpath.py:20(TextToPath) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/projections/geo.py:297(HammerTransform) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:552(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_ufunc_config.py:30() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/random.py:791(getrandbits) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sysconfig.py:193(_getuserbase) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/tz.py:1545(__init__) + 1 0.000 0.000 0.008 0.008 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/testing.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/xml.py:57(_XMLFrameParser) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/systems.py:119(__init__) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/systems.py:429(add_groups) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/unit.py:82(__format__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:286(_validate_color_or_linecolor) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/transforms.py:1685(TransformWrapper) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/unicode.py:80(alphanums) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_tools.py:420(AxisScaleBase) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/image.py:848(AxesImage) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/importlib_resources/abc.py:150(TraversableResources) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/offsetbox.py:45(_compat_get_offset) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/message.py:120(__init__) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3457(parseImpl) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:1751(ParserState) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/datetime.py:823(__new__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/accessor.py:322(register_dataframe_accessor) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/systems.py:285(SystemDefinition) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/classes.py:251(RevenuePfLine) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_add_newdocs_scalars.py:54(_get_platform_and_machine) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_typing/_nbit.py:1() + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:6544(__has_singleton) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/string.py:57(Template) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/common.py:96(IOHandles) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/html.py:164(_HtmlFrameParser) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/configparser.py:297(ParsingError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:439(StrFormatStyle) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/__init__.py:764(_get_backend_or_none) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/shlex.py:19(shlex) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:1512(CenteredNorm) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:2464(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/mixins/text.py:17() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_bases.py:2780(_Mode) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:749(StixFonts) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/layout_engine.py:27(LayoutEngine) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/legend_handler.py:433(__init__) + 1 0.000 0.000 0.000 0.000 {built-in method _hashlib.openssl_sha384} + 9 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_config/config.py:836(inner) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/interchange/dataframe_protocol.py:20(DlpackDeviceType) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/gettext.py:111() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:1395(NonMultiplicativeRegistry) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:1034(__new__) + 1 0.000 0.000 0.000 0.000 {built-in method math.exp} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:6568(__array_finalize__) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:6744(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/tz.py:132(tzoffset) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/parser/_parser.py:394(_ymd) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/formats/format.py:1008(DataFrameRenderer) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/_vendor/flexcache.py:49(BaseHeader) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/packaging/_structures.py:35(NegativeInfinityType) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:576(_validate_greaterequal0_lessequal1) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3474(White) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/mixins/plot.py:50(PfLinePlot) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/projections/geo.py:416(LambertTransform) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/sas/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/uuid.py:78(SafeUUID) + 8 0.000 0.000 0.000 0.000 {built-in method builtins.delattr} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ctypes/__init__.py:154(py_object) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/formats/info.py:772(DataFrameTableBuilder) + 17 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/quantity.py:130(check_implemented) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/visualize/colors.py:11(Color) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/threading.py:1312(_MainThread) + 2 0.000 0.000 0.000 0.000 {method 'register' of 'select.poll' objects} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/urllib/parse.py:155(_NetlocResultMixinBase) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ctypeslib.py:360(_get_scalar_type_map) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pytz/exceptions.py:1() + 11 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/packaging/version.py:491(_parse_local_version) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/unicode.py:241(Japanese) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3676(StringEnd) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:5076(ZeroOrMore) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_enums.py:119(CapStyle) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/projections/geo.py:344(MollweideTransform) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_compression.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/parser.py:49() + 8 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:6028() + 9 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_globals.py:58(__repr__) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:966(joinpath) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ctypes/__init__.py:405(PyDLL) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:195() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/configparser.py:1240(SectionProxy) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/measurement.py:17(Measurement) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/parser.py:164(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/transforms.py:1884(Affine2D) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/collections.py:1748(CircleCollection) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_bases.py:3216(ToolContainerBase) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:610(Shadow) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/enums.py:34(Structure) + 5 0.000 0.000 0.000 0.000 {method 'popitem' of 'dict' objects} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ast.py:65(_raise_malformed_node) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/threading.py:596(Barrier) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/urllib/parse.py:367(_fix_result_transcoding) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_typing/_dtype_like.py:65(_DTypeDictBase) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:903(_MaskedUnaryOperation) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:1125(_DomainedBinaryOperation) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/context.py:400(ContextChain) + 13 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/babel/plural.py:522(_binary_compiler) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/formatting.py:478(split_format) + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:568(_validate_greaterthan_minushalf) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_tools.py:158(ToolToggleBase) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:1314(FancyArrow) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/enums.py:1() + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_config/config.py:610(_get_deprecated_option) + 5 0.000 0.000 0.000 0.000 {method 'strip' of 'bytes' objects} + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_weakrefset.py:86(add) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/util.py:260(_inner) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:5110(DelimitedList) + 1 0.000 0.000 0.000 0.000 {method 'union' of 'set' objects} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_globals.py:65(_CopyMode) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:137() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:84(MaskedArrayFutureWarning) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:6735(_extrema_operation) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/parser/_parser.py:568(parser) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/multi.py:197(names_compat) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/internals/concat.py:398(JoinUnit) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/zipfile.py:775(ZipExtFile) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/excel/_util.py:32(register_writer) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/excel/_xlsxwriter.py:19(_XlsxStyler) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:553(__init__) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:858(validate_hist_bins) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/PngImagePlugin.py:698(PngImageFile) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/bezier.py:181(BezierSegment) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:1627(__invert__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:936(PathPatch) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:964(StepPatch) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:1362(getmask) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_typing/_dtype_like.py:71(_DTypeDict) + 1 0.000 0.000 0.005 0.005 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/api.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:361(_register_directives) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/results.py:17(_ParseResultsWithOffset) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_enums.py:181() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:887(RegularPolygon) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/offsetbox.py:1458(DraggableBase) + 1 0.000 0.000 0.000 0.000 {built-in method _hashlib.openssl_sha512} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:797(_DomainCheckInterval) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/tz.py:201(tzlocal) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/internals/base.py:157(SingleDataManager) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/importlib/metadata.py:226(_discover_resolvers) + 2 0.000 0.000 0.000 0.000 :2(__init__) + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:596(_register_directive) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/__init__.py:99(version_info) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:93(__compat__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:456(DebugActions) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/helpers.py:654(OpAssoc) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_tools.py:709(ToolZoom) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:540(UnicodeFonts) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/importlib_resources/_common.py:21(package_to_anchor) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/offsetbox.py:1141(OffsetImage) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/tri/_triinterpolate.py:232(LinearTriInterpolator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/tri/_triinterpolate.py:286(CubicTriInterpolator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfstate/arithmatic.py:183(Divide) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:686() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:1172(Wedge) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/widgets.py:4177(Lasso) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/selectors.py:276(_key_from_fd) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/types.py:79(resolve_bases) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/__init__.py:192() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:996(parents) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ctypes/__init__.py:446(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/compat/compressors.py:44(BZ2File) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sysconfig.py:354(_get_sysconfigdata_name) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/dtypes/base.py:394(StorageExtensionDtype) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/ops.py:206(Op) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/interchange/utils.py:18(ArrowCTypes) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/holidays/calendars/persian.py:17(_Persian) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/traceback.py:227(FrameSummary) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:326(condition_as_parse_action) + 9 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:1508() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/spines.py:522(Spines) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/mpl_toolkits/mplot3d/axis3d.py:740(YAxis) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/colorsys.py:108(_v) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:1504(_strip_annotations) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/threading.py:775(_maintain_shutdown_locks) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_typing/_nested_sequence.py:18(_NestedSequence) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/npyio.py:106(NpzFile) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/matplotlib.py:25(PintConverter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/PaletteFile.py:16() + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:5106(_generateDefaultName) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:1823(_MathStyle) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/collections/__init__.py:949(__iter__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/threading.py:542(set) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/six.py:85(_import_module) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4646(IndentedBlock) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/index_tricks.py:310(AxisConcatenator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/_datasource.py:196(DataSource) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/arrayterator.py:16(Arrayterator) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_strptime.py:128() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/base.py:100(PandasObject) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/sas/sasreader.py:33(ReaderBase) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/context.py:55(ContextDefinition) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/ticker.py:1962(MaxNLocator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4085(Or) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4963(_generateDefaultName) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/classes.py:309(FlatVolumePfLine) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/collections.py:1768(EllipseCollection) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/collections.py:1972(_MeshData) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/widgets.py:66(Widget) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/axis.py:523(Ticker) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/legend_handler.py:633(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/projections/geo.py:413(LambertAxes) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/mpl_toolkits/mplot3d/art3d.py:534(Patch3DCollection) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/suppresswarnings.py:8(apply) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/cbook.py:539(_get_data_path) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/ImageMode.py:16() + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/linalg/linalg.py:140(isComplexType) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:285(_eval_type) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:1501() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/base.py:244(_maybe_return_indexers) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/zipfile.py:2236(Path) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/groupby/ops.py:1203(DataSplitter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/tempfile.py:770(TemporaryDirectory) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:1417(TwoSlopeNorm) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/scale.py:201(LogTransform) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/__init__.py:106(__version__) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:710() + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:1717(suppress) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/lines.py:1467(AxLine) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/tri/_tritools.py:11(TriAnalyzer) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/projections/polar.py:498(_ThetaShift) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/mpl_toolkits/mplot3d/art3d.py:183(Line3D) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/mpl_toolkits/mplot3d/axis3d.py:748(ZAxis) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/collections/__init__.py:932(__missing__) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/datetime.py:45(_days_before_year) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/linalg/linalg.py:130(get_linalg_error_extobj) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/platform.py:919(system) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_compression.py:33(DecompressReader) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/tz.py:1167(_tzicalvtz) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexing.py:143(IndexingMixin) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/window/rolling.py:2686(RollingGroupby) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/engines.py:47(AbstractEngine) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/gettext.py:254(NullTranslations) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/babel/plural.py:618(_UnicodeCompiler) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:1550(makeRecord) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:2237(UnitRegistry) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/scale.py:499(AsinhScale) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/cm.py:59(ColormapRegistry) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:1880(Circle) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/dviread.py:65(Text) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/axes/_base.py:210(_process_plot_var_args) + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/six.py:186(_get_module) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/scale.py:583(LogitTransform) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/numpy_func.py:830(implement_atleast_nd) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cffi/error.py:2() + 3 0.000 0.000 0.000 0.000 {method 'copy' of 'mappingproxy' objects} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/linalg/linalg.py:43(EighResult) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:194() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/extras.py:1607(MAxisConcatenator) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_osx_support.py:129() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/six.py:164(_resolve) + 10 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_strptime.py:210() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/calendar.py:72() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/apply.py:911(FrameColumnApply) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/align.py:67(_filter_special_cases) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/reshape/merge.py:1867(_AsOfMerge) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:246(_register_at_fork_reinit_lock) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/traceback.py:292(walk_stack) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:168(__init__) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/_vendor/appdirs.py:17() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/__init__.py:235() + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3886(_setResultsName) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/classes.py:375(NestedPricePfLine) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/colorama/winterm.py:28(WinTerm) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/collections.py:1909(TriMesh) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/collections.py:2126(QuadMesh) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/textpath.py:293(TextPath) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:643(__getitem__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/html.py:587(_BeautifulSoupHtml5LibFrameParser) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/Image.py:424(_E) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:1068(Char) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/projections/geo.py:272(InvertedAitoffTransform) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/children.py:13(ChildFunctionality) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/transforms.py:1814(Affine2DBase) + 15 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:308(__missing__) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/numpy_func.py:859(implement_single_dimensionless_argument_func) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:2039(_register_directives) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/_policybase.py:281(_sanitize_header) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/_encoded_words.py:73(_QByteMap) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/subprocess.py:108(CalledProcessError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/threading.py:216(Condition) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/getlimits.py:32(MachArLike) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sysconfig.py:198(joinuser) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/six.py:205(load_module) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/calendar.py:55(__init__) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/parser/__init__.py:43(private_class) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/string.py:159(Formatter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/categorical.py:2321(CategoricalAccessor) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/csv.py:23(Dialect) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/sparse/accessor.py:226(SparseFrameAccessor) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/formats/info.py:514(SeriesInfo) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/pytables.py:53(Term) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/babel/plural.py:400(_Parser) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:1359(_fixupChildren) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/packaging/version.py:420(major) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_version.py:3() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:548(ColorConverter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/scale.py:243(InvertedLogTransform) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/testing.py:124(TestParseResultsAsserts) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_enums.py:17(_AutoStringNameEnum) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/classes.py:351(FlatPricePfLine) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/collections.py:2239(PolyQuadMesh) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_tools.py:830(ToolPan) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/offsetbox.py:707(TextArea) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/category.py:26(StrCategoryConverter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/rrule.py:94(rrulebase) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/projections/geo.py:246(AitoffAxes) + 2 0.000 0.000 0.000 0.000 {method 'write' of '_io.StringIO' objects} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_dtype_ctypes.py:1() + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_osx_support.py:439(customize_config_vars) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/nanops.py:110(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/configparser.py:1310(ConverterMapping) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:1265(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/Image.py:147(Transform) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/util/version/__init__.py:144(__lt__) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/copyreg.py:12(pickle) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/threading.py:95(_RLock) + 2 0.000 0.000 0.000 0.000 {method 'ravel' of 'numpy.ndarray' objects} + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:3433(shape) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/parsers/base_parser.py:100(BadLineHandleMethod) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/babel/plural.py:106(__init__) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/numpy_func.py:682(implement_prod_func) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:2412(__setattr__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/header.py:541(_Accumulator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/ImageFile.py:85(ImageFile) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/classes.py:391(FlatRevenuePfLine) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/classes.py:418(NestedRevenuePfLine) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/projections/geo.py:386(InvertedMollweideTransform) + 9 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/enum.py:1040() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_exceptions.py:116(_ArrayMemoryError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ctypes/__init__.py:376(_FuncPtr) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/util/version/__init__.py:135(_BaseVersion) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_config/config.py:212(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/formats/format.py:264(SeriesFormatter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/pytables.py:4584(AppendableSeriesTable) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/traceback.py:440(TracebackException) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/formatting.py:394(format_unit) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/_vendor/flexcache.py:200(NameByPath) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/feedparser.py:136(FeedParser) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/charset.py:167(Charset) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_api/__init__.py:167(check_getitem) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/cbook.py:570(Stack) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:958(LinearSegmentedColormap) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:2278(LightSource) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/Image.py:156(Resampling) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cffi/model.py:12(qualify) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/transforms.py:1077(TransformedBbox) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/lines.py:1601(VertexSelector) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:903(FontConstantsBase) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/legend_handler.py:319(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/streamplot.py:259(DomainMap) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/prices/__init__.py:1() + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_config/config.py:256(__init__) + 8 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/ops/methods.py:68() + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/util.py:225() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:128() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:129() + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/datetime.py:50(_days_in_month) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/textwrap.py:336(_split_chunks) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:886(createLock) + 4 0.000 0.000 0.000 0.000 {method 'truncate' of '_io.StringIO' objects} + 14 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/contextlib.py:379(__enter__) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/datetime.py:2236(_create) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:295(_PosixFlavour) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/records.py:223(record) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/records.py:308(recarray) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/memmap.py:22(memmap) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:883(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_typing.py:246(ReadCsvBuffer) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/util/_decorators.py:405(Substitution) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/util/_decorators.py:452(Appender) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/_common.py:149(_tzinfo) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/easter.py:2() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/apply.py:987(SeriesApply) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/datetimes.py:105() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/gzip.py:401(_GzipReader) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/tarfile.py:603(_FileInFile) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/zipfile.py:317(ZipInfo) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/series.py:215(_coerce_method) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/formats/info.py:934(DataFrameTableBuilderVerbose) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/expr.py:753(PandasExprVisitor) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/interchange/dataframe_protocol.py:33(DtypeKind) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_testing/__init__.py:808(SubclassedSeries) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/pytables.py:4649(GenericTable) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/importlib/metadata.py:404(path) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/errors.py:30(DefinitionSyntaxError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/_vendor/flexcache.py:138(InvalidateByMultiPathsMtime) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/Image.py:3414(register_open) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cffi/model.py:25(BaseTypeByIdentity) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cffi/model.py:345(StructOrUnion) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/ticker.py:2706(LogitLocator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_tools.py:457(ToolViewsPositions) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/projections/polar.py:140(PolarAffine) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/arithmatic.py:251(Multiply) + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/subprocess.py:1853(_internal_poll) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/datetime.py:665(__neg__) + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_utils/_inspect.py:143() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/linalg/linalg.py:47(QRResult) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/linalg/linalg.py:55(SVDResult) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/calendar.py:410(HTMLCalendar) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/string_.py:218(BaseStringArray) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/tempfile.py:411(_TemporaryFileCloser) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:1591(handle) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/formatting.py:156(wrapper) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:1630(_register_directives) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/_vendor/flexcache.py:123(InvalidateByPathMTime) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/matplotlib.py:28(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/packaging/__init__.py:5() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/scale.py:464(AsinhTransform) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/colorama/ansi.py:49(AnsiFore) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/contour.py:1478(QuadContourSet) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:2204(_Style) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/projections/geo.py:316(InvertedHammerTransform) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/projections/geo.py:294(HammerAxes) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/parser.py:48(filter_by) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:2631(CaselessKeyword) + 8 0.000 0.000 0.000 0.000 {method 'seek' of '_io.StringIO' objects} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/selectors.py:291(SelectSelector) + 1 0.000 0.000 0.000 0.000 {method 'close' of 'select.kqueue' objects} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_methods.py:47(_sum) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:822(_DomainTan) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pytz/tzinfo.py:79(StaticTzInfo) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pytz/tzinfo.py:159(DstTzInfo) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/util/version/__init__.py:58(NegativeInfinityType) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/_factories.py:13(__call__) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_config/config.py:578(_select_options) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/accessor.py:49(PandasDelegate) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/formats/format.py:2029(EngFormatter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexers/objects.py:129(VariableOffsetWindowIndexer) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/parsers/python_parser.py:1166(FixedWidthReader) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_version.py:7() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/gettext.py:358(GNUTranslations) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/definitions.py:333(AliasDefinition) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/_vendor/flexcache.py:171(NameByFileContent) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:765(_validate_legend_loc) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/ticker.py:1458(PercentFormatter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:2338(_PendingSkip) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:2406(Literal) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:2656(CloseMatch) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4361(Each) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:5687(Combine) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/text.py:1444(_AnnotationBase) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:1488(CirclePolygon) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/image.py:1325(FigureImage) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/zipp/glob.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/offsetbox.py:824(AuxTransformBox) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/axis.py:405(XTick) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/projections/geo.py:456(InvertedLambertTransform) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/arithmatic.py:20(Prep) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sysconfig.py:103(_safe_realpath) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/importlib/metadata.py:494(MetadataPathFinder) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:5183(Opt) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/util/version/__init__.py:162(__ge__) + 9 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4106() + 12 0.000 0.000 0.000 0.000 {method 'islower' of 'str' objects} + 17 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/inspect.py:2556(annotation) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_type_aliases.py:92() + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:1001(is_absolute) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/config_init.py:295(is_terminal) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/json/decoder.py:254(JSONDecoder) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/pytables.py:1830(TableIterator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/pytables.py:37(PyTablesScope) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/traceback.py:243(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:2375(ApplicationRegistry) + 11 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/packaging/version.py:518() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/ExifTags.py:343(Interop) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/PngImagePlugin.py:150(ChunkStream) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/scale.py:483(InvertedAsinhTransform) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/ticker.py:1109(LogitFormatter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/ticker.py:1752(LinearLocator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:5868(Suppress) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/collections.py:961(_CollectionWithSizes) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:1033(Box) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/legend_handler.py:524(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/tri/_triinterpolate.py:1215(_Sparse_Matrix_coo) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/projections/polar.py:699(RadialAxis) + 1 0.000 0.000 0.000 0.000 {built-in method atexit.unregister} + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/functools.py:852() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/selectors.py:207(_BaseSelectorImpl) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/numbers.py:267(Rational) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/linalg/linalg.py:51(SlogdetResult) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pytz/__init__.py:398(_FixedOffset) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/_common.py:6(weekday) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/apply.py:854(FrameRowApply) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/json/encoder.py:104(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/common.py:954(_BytesTarFile) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/tempfile.py:128(_RandomNameSequence) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/pytables.py:2547(DataIndexableCol) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/pytables.py:4485(AppendableFrameTable) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/feedparser.py:45(BufferedSubFile) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/header.py:413(_ValueFormatter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:134(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/scale.py:381(InvertedSymmetricalLogTransform) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/scale.py:609(LogisticTransform) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/ticker.py:198(Formatter) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3532(_generateDefaultName) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3681(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4800(PrecededBy) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:5346(_update_ignorer) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_tools.py:245(ToolSetCursor) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/text.py:1370(OffsetFrom) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:1010(Node) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:1308(Vlist) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/image.py:1188(PcolorImage) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/projections/polar.py:748(_WedgeBbox) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/visualize/colors.py:18() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/packaging/_structures.py:6() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:2996(Char) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/results.py:254(__len__) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_utils/_inspect.py:142() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/configparser.py:376(BasicInterpolation) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/babel/plural.py:564(_PythonCompiler) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/weakref.py:348(__new__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/selectors.py:342(_PollLikeSelector) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/__config__.py:14(DisplayModes) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_globals.py:52(__new__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/_version.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:840(_DomainSafeDivide) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:867(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/json/encoder.py:73(JSONEncoder) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/internals/blocks.py:2189(DatetimeLikeBlock) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/zipfile.py:2168(CompleteDirs) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/tools/datetimes.py:113(FulldatetimeDict) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/groupby/indexing.py:287(GroupByNthSelector) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/stata.py:3541(StataWriterUTF8) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/configparser.py:1195(ConfigParser) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/definitions.py:201(UnitDefinition) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:424(validate) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/cbook.py:677(_Stack) + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:2387(_generateDefaultName) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/classes.py:262(CompletePfLine) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:179(FontMetrics) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/layout_engine.py:132(TightLayoutEngine) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/tri/_trirefine.py:47(UniformTriRefiner) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/projections/geo.py:223(_GeoTransform) + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/functools.py:964(__set_name__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:986(parent) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/tz.py:1470(__get_gettz) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/calendar.py:69(_localized_day) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/apply.py:583(NDFrameApply) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/pytables.py:3105(SeriesFixed) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/configparser.py:522(LegacyInterpolation) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/converters.py:15(Converter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/babel/localedata.py:216(LocaleDataDict) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/_policybase.py:271(Compat32) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/Image.py:188(Quantize) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/Image.py:3479(register_extensions) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/scale.py:348(SymmetricalLogTransform) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/rrule.py:1112(_iterinfo) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/streamplot.py:322(Grid) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/projections/geo.py:341(MollweideAxes) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/projections/polar.py:402(ThetaAxis) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/PngImagePlugin.py:98(Disposal) + 9 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4107() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/Image.py:175(Dither) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ctypes/__init__.py:102(CFunctionType) + 8 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_api/__init__.py:56(fget) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:432(validate_ps_distiller) + 1 0.000 0.000 0.000 0.000 {built-in method builtins.format} + 5 0.000 0.000 0.000 0.000 {built-in method posix.WIFSTOPPED} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/threading.py:528(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/threading.py:1229(_make_invoke_excepthook) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/__config__.py:95() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:507(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_ufunc_config.py:360(_unspecified) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/getlimits.py:630(iinfo) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_typing/_dtype_like.py:81(_SupportsDType) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/_datasource.py:536(Repository) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:2378(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/extras.py:1655(__init__) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_osx_support.py:178(_supports_universal_builds) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/tz.py:1475(GettzFunc) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/_factories.py:9(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_config/config.py:255(CallableDynamicDoc) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/nanops.py:77(disallow) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/sparse/accessor.py:37(SparseAccessor) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/window/ewm.py:817(ExponentialMovingWindowGroupby) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/ops.py:186(Constant) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/json/_json.py:306(JSONTableWriter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/stata.py:2977(StataStrLWriter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:2343(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/_vendor/flexcache.py:189(NameByObj) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_api/__init__.py:27(classproperty) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:61(_ColorMapping) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/ImageFile.py:358(Parser) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/units.py:108(ConversionInterface) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:3207(_Curve) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/layout_engine.py:211(ConstrainedLayoutEngine) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/image.py:1388(BboxImage) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/offsetbox.py:527(PaddedBox) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/axis.py:462(YTick) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/dates.py:1116(DateLocator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/prices.py:17(Flat) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/suppresswarnings.py:1() + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:1024(block_iter) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/Image.py:3468(register_extension) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/unicode.py:75(nums) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_config/config.py:649(_warn_if_deprecated) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:110() + 3 0.000 0.000 0.000 0.000 {built-in method atexit.register} + 6 0.000 0.000 0.000 0.000 {built-in method _stat.S_ISDIR} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/genericpath.py:121(_splitext) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:46(_ignore_error) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pickle.py:73(PickleError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_machar.py:17(MachAr) + 8 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/util/version/__init__.py:529() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/accessor.py:329(register_series_accessor) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/formats/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/internals/blocks.py:2097(NumpyBlock) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexers/objects.py:378(ExponentialMovingWindowIndexer) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/window/expanding.py:797(ExpandingGroupby) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/ops.py:547(UnaryOp) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/html.py:708(_LxmlFrameParser) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/pytables.py:4258(AppendableTable) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/pytables.py:506(PyTablesExpr) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:551(set_results_name) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/textpath.py:26(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/dviread.py:831(PsfontsMap) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/dates.py:1778(DateConverter) + 7 0.000 0.000 0.000 0.000 {method 'upper' of 'str' objects} + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/posixpath.py:52(normcase) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/datetime.py:1214(IsoCalendarDate) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:61(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/records.py:87(format_parser) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_internal.py:616(_Stream) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:877(_DomainGreaterEqual) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/compat/compressors.py:59(LZMAFile) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/zoneinfo/_common.py:127(_TZifHeader) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/tz.py:874(tzrange) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/tseries/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/integer.py:155(Int8Dtype) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/common.py:928(_BufferedWriter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexers/objects.py:73(FixedWindowIndexer) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/plotting/_misc.py:566(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/parquet.py:131(PyArrowImpl) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/pytables.py:3138(BlockManagerFixed) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/_vendor/flexcache.py:218(NameByMultiPaths) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/feedparser.py:210(_pop_message) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/message.py:303(set_payload) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_cm.py:66(cubehelix) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/transforms.py:2445(CompositeAffine2D) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3394(CharsNotIn) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_bases.py:1409(MouseEvent) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/_common.py:13(tzname_in_python2) + 8 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/message.py:606(get_default_type) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:130() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/formats/info.py:1000(SeriesTableBuilder) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:1840(SymLogNorm) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_collections_abc.py:262(__subclasshook__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/weakref.py:353(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/subprocess.py:428(CompletedProcess) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/threading.py:1358(current_thread) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pickle.py:97(_Stop) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/index_tricks.py:255(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/linalg/linalg.py:209(_assert_stacked_square) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pytz/lazy.py:16(LazyDict) + 1 0.000 0.000 0.002 0.002 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sysconfig.py:614(get_config_var) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/floating.py:142(Float32Dtype) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/accessors.py:232(DatetimeProperties) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/formats/info.py:1046(SeriesTableBuilderVerbose) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/ops.py:362(BinOp) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/reshape/merge.py:1782(_OrderedMerge) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/parquet.py:118(BaseImpl) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/pytables.py:2234(GenericIndexCol) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/configparser.py:448(ExtendedInterpolation) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/definitions.py:185() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/definitions.py:288(DimensionDefinition) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/babel/localedata.py:183(Alias) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:798(SharedRegistryObject) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/traceback.py:318(StackSummary) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/__init__.py:552(get_configdir) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:83() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/ExifTags.py:351(IFD) + 1 0.000 0.000 0.001 0.001 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/helpers.py:599(make_html_tags) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colorbar.py:123(_ColorbarSpine) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/collections.py:1008(PathCollection) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/collections.py:1368(StarPolygonCollection) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/dviread.py:664(Vf) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:75(VectorParse) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/widgets.py:28(LockDraw) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/gridspec.py:318(GridSpec) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/dates.py:1192(RRuleLocator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/legend_handler.py:46(HandlerBase) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/tri/_tricontour.py:8(TriContourSet) + 2 0.000 0.000 0.000 0.000 {built-in method time.time} + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/_version.py:63(decorate) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/urllib/parse.py:809(Quoter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/getlimits.py:378(finfo) + 3 0.000 0.000 0.000 0.000 {method '__array_prepare__' of 'numpy.ndarray' objects} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:1329(make_mask_descr) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/tz.py:332(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/interchange/dataframe_protocol.py:64(ColumnNullType) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/header.py:179(Header) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/scale.py:409(SymmetricalLogScale) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4710(AtStringStart) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:672(DejaVuFonts) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/widgets.py:163(Button) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/mlab.py:770(GaussianKDE) + 7 0.000 0.000 0.000 0.000 {built-in method sys.audit} + 8 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/util/version/__init__.py:503(_parse_local_version) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/arrayprint.py:1367(StructuredVoidFormat) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_internal.py:205(dummy_ctype) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ctypes/__init__.py:238(c_char_p) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/platform.py:747(_Processor) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ctypeslib.py:202(_concrete_ndptr) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:893(_MaskedUFunc) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:6844(_frommethod) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/calendar.py:293(TextCalendar) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_config/config.py:209(DictWrapper) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/parser/_parser.py:569(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/base.py:1760(ExtensionScalarOpsMixin) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/extension.py:180(NDArrayBackedExtensionIndex) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/internals/blocks.py:2241(DatetimeTZBlock) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/formats/format.py:424(TextAdjustment) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/common.py:1045(_IOWrapper) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/zipfile.py:1104(_ZipWriteFile) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexers/objects.py:216(ExpandingIndexer) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/methods/selectn.py:159(SelectNFrame) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/groupby/groupby.py:577(GroupByPlot) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/holidays/calendars/custom.py:13() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/definitions.py:21(PreprocessedDefinition) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:123(DefaultsDefinition) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:2342(LazyRegistry) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/systems.py:489() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/__init__.py:233(__getattr__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cffi/model.py:160(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/PngImagePlugin.py:119(Blend) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/transforms.py:2159(_BlendedMixin) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3558(GoToColumn) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/testing.py:20(reset_pyparsing_context) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/colorama/ansi.py:71(AnsiBack) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/artist.py:88(_finalize_rasterization) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:1206(Hlist) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:1390(Rule) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/rrule.py:305(rrule) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/legend.py:54(DraggableLegend) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/projections/polar.py:449(RadialLocator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/mpl_toolkits/mplot3d/art3d.py:412(Patch3D) + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/platform.py:779(_unknown_as_blank) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:557(validate_sketch) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_utils/_convertions.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:830(__init__) + 8 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/six.py:80(_add_doc) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/six.py:880(add_metaclass) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_config/config.py:637(_translate_key) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_config/config.py:796(is_type_factory) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/formats/format.py:440(EastAsianTextAdjustment) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/tools/datetimes.py:107(YearMonthDayDict) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/context.py:46(Relation) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:1601(addHandler) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/_policybase.py:18(_PolicyBase) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/cbook.py:92(_StrongRef) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/PngImagePlugin.py:261(PngInfo) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/colorama/winterm.py:12(WinColor) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/collections.py:1849(PatchCollection) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:120(Output) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/widgets.py:3691(EllipseSelector) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/zipp/__init__.py:69(InitializedState) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/dates.py:995(rrulewrapper) + 1 0.000 0.000 0.000 0.000 {method 'rindex' of 'str' objects} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/arrayprint.py:905(FloatingFormat) + 1 0.000 0.000 0.000 0.000 {built-in method numpy.promote_types} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/_datasource.py:99(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/_datasource.py:74(_FileOpeners) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/_iotools.py:133(LineSplitter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_osx_support.py:331(_check_for_unavailable_sdk) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/tz.py:328(_ttinfo) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/six.py:219(is_package) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_config/config.py:76(DeprecatedOption) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/_common.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/integer.py:162(Int16Dtype) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexing.py:2389(_AtIndexer) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/internals/blocks.py:2256(ObjectBlock) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/internals/ops.py:18(BlockPairInfo) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/formats/format.py:1333(GenericArrayFormatter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/common.py:1009(_BytesZipFile) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexers/objects.py:103(VariableWindowIndexer) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/accessors.py:147(ArrowTemporalProperties) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/accessors.py:371(TimedeltaProperties) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/json/_json.py:261(SeriesWriter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/pytables.py:262(FilterBinOp) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/xml.py:435(_EtreeFrameParser) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/holidays/calendars/custom.py:13(_CustomCalendarType) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/importlib/metadata.py:473(Prepared) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/definitions.py:167(PrefixDefinition) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/babel/plural.py:577(_GettextCompiler) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:439(default_format) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/parser.py:61(DefinitionFiles) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/utils.py:51(_has_surrogates) + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/cbook.py:851() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/cbook.py:1295() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cffi/model.py:298(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/ImageFile.py:670(PyDecoder) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:97(RasterParse) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:211(FontInfo) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:1162(List) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/legend_handler.py:361(HandlerStepPatch) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/legend_handler.py:724(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/tri/_trifinder.py:27(TrapezoidMapTriFinder) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/tri/_triinterpolate.py:985(_DOF_estimator) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfstate/arithmatic.py:32(standardize_other) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfstate/arithmatic.py:19(Prep) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/six.py:119(_resolve) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/arithmatic.py:103(standardize_other) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:1231() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/subprocess.py:145(TimeoutExpired) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/subprocess.py:1164(_remaining_time) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/nanops.py:1706(make_nancomp) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:1276(disable) + 5 0.000 0.000 0.000 0.000 :782(is_package) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_collections_abc.py:381(__subclasshook__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ast.py:71(_convert_signed_num) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/selectors.py:61(_SelectorMapping) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/selectors.py:507(KqueueSelector) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_exceptions.py:38(_UFuncNoLoopError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:148(MAError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_osx_support.py:314(_override_all_archs) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_strptime.py:30(LocaleTime) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_strptime.py:170(TimeRE) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/methods/describe.py:98(NDFrameDescriberAbstract) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/methods/describe.py:133(DataFrameDescriber) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/formats/format.py:1445(FloatArrayFormatter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/common.py:83(IOArgs) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/gzip.py:74(_PaddedFile) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pprint.py:77(_safe_key) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/unit.py:73(__str__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/_parseaddr.py:508(AddressList) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:51(ValidateInStrings) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/TiffTags.py:23(TagInfo) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/transforms.py:2568(BboxTransformTo) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:940(_CacheType) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:2604(CaselessLiteral) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/colorama/ansi.py:36(AnsiCursor) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/spines.py:487(SpinesProxy) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/projections/__init__.py:69(ProjectionRegistry) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/gridspec.py:476(GridSpecFromSubplotSpec) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/dates.py:626(DateFormatter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/dates.py:656(ConciseDateFormatter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/mpl_toolkits/mplot3d/art3d.py:372(Line3DCollection) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/arithmatic.py:328(Unite) + 1 0.000 0.000 0.000 0.000 {method 'title' of 'str' objects} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/threading.py:947(_set_native_id) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ctypes/__init__.py:184(c_int) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/_compression.py:9(BaseStream) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/tz.py:1253(tzical) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/parser/_parser.py:1373(_result) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/apply.py:1092(GroupByApply) + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/expr.py:120(_compose2) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/tempfile.py:454(_TemporaryFileWrapper) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/stata.py:667(StataValueLabel) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/importlib/metadata.py:517(PathDistribution) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/converters.py:86(LogarithmicConverter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:2380(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/parser.py:134(ImportDefinition) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3696(WordStart) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_tools.py:896(ToolHelpBase) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/dviread.py:573(DviFont) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:1496(Kern) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/importlib_resources/_compat.py:32(TraversableResourcesLoader) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/category.py:138(StrCategoryFormatter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/legend_handler.py:430(HandlerRegularPolyCollection) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/tri/_triinterpolate.py:15(TriInterpolator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/mpl_toolkits/mplot3d/art3d.py:462(PathPatch3D) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/threading.py:381(notify_all) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:611(_validate_minor_tick_ndivs) + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/contextlib.py:486(__enter__) + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/datetime.py:445(_check_tzinfo_arg) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/getlimits.py:86(_str_smallest_subnormal) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/zipfile.py:662(_check_compression) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/_policybase.py:311(header_fetch_parse) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/visualize/plot.py:78(append_to_doc) + 1 0.000 0.000 0.000 0.000 {method 'seek' of '_io.BufferedReader' objects} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/weakref.py:195(get) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/linecache.py:52(checkcache) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/threading.py:256(__enter__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/threading.py:517(Event) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:630(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ctypes/__init__.py:259(c_wchar) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_typing/__init__.py:10(NBitBase) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/__future__.py:81(_Feature) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/six.py:108(MovedModule) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/base.py:1689(ExtensionArraySupportsAnyAll) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/compat/numpy/function.py:47(CompatValidator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexing.py:2351(_ScalarAccessIndexer) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/zipfile.py:1818(close) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/window/online.py:89(EWMMeanState) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/scope.py:28(DeepChainMap) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/expr.py:273(disallow) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/xml.py:546(_LxmlFrameParser) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/configparser.py:168(Error) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/context.py:38(Expression) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:469(StringTemplateStyle) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:1200(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:2162(NullHandler) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/formatting.py:456(extract_custom_flags) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/measurement.py:174(build_measurement_class) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/parser.py:16(Parser) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/cbook.py:915(GrouperView) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_docstring.py:6(Substitution) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:1878(AsinhNorm) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cffi/model.py:490(EnumType) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/ticker.py:159(_DummyAxis) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/transforms.py:2627(BboxTransformFrom) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/transforms.py:2663(ScaledTranslation) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4924(NotAny) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:5072(_generateDefaultName) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:5823(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colorbar.py:146(_ColorbarAxesLocator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_tools.py:360(ToolQuit) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:3136(_Base) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/layout_engine.py:106(PlaceHolderLayoutEngine) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/axes/_base.py:1399(ArtistList) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/offsetbox.py:1592(DraggableAnnotation) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/rrule.py:66(weekday) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/streamplot.py:380(StreamMask) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/projections/polar.py:310(ThetaTick) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfstate/arithmatic.py:20(assert_objects_indexcompatibility) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sysconfig.py:527(get_path) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/__init__.py:571(get_cachedir) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/scale.py:702(get_scale_names) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/visualize/colors.py:30(Colors) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/types.py:132(_calculate_meta) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/enum.py:774(__hash__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/arrayprint.py:1304(DatetimeFormat) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/index_tricks.py:618(ndindex) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/extras.py:213(_fromnxfunction) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_config/config.py:83(RegisteredOption) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/csv.py:54(excel) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/csv.py:165(Sniffer) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/json/decoder.py:20(JSONDecodeError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/formats/info.py:574(InfoPrinterAbstract) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/formats/info.py:673(SeriesInfoPrinter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/interchange/dataframe_protocol.py:89(ColumnBuffers) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/json/_json.py:1286(SeriesParser) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/pytables.py:5175(Selection) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/importlib/metadata.py:383(Context) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/errors.py:52(RedefinitionError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:766(Filterer) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:1194(_StderrHandler) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_api/deprecation.py:223(deprecate_privatize_attribute) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/Image.py:183(Palette) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/PngImagePlugin.py:239(iTXt) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/ticker.py:1568(Locator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/ticker.py:2440(SymmetricalLogLocator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/util.py:129(LRUMemo) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3589(LineStart) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:5744(Group) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/results.py:429(__getattr__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/collections.py:1373(AsteriskPolygonCollection) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_bases.py:1246(Event) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_tools.py:600(ToolHome) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:713(DejaVuSerifFonts) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:1139(Accent) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/rrule.py:1315(_genitem) + 1 0.000 0.000 0.000 0.000 {method 'pop' of 'collections.OrderedDict' objects} + 5 0.000 0.000 0.000 0.000 {built-in method _operator.sub} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/selectors.py:434(PollSelector) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_globals.py:32(_NoValueType) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/urllib/parse.py:139(_ResultMixinStr) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/urllib/parse.py:194(_NetlocResultMixinStr) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pickle.py:77(PicklingError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ctypes/__init__.py:254(c_wchar_p) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/mixins.py:51(_unary_method) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/linalg/linalg.py:197(_assert_2d) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/linalg/linalg.py:203(_assert_stacked_2d) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ctypeslib.py:181(_ndptr) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_typing.py:220(ReadBuffer) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/six.py:199(__get_module) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/calendar.py:154(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_config/config.py:419(option_context) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/parser/_parser.py:219(_resultbase) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/errors/__init__.py:185(AbstractMethodError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/expressions.py:42(set_use_numexpr) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/integer.py:197(UInt32Dtype) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/floating.py:54(FloatingArray) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/apply.py:1118(ResamplerWindowApply) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/common.py:1074(_BytesIOWrapper) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/groupby/indexing.py:247(GroupByPositionalSelector) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_testing/__init__.py:825(SubclassedDataFrame) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_testing/_io.py:88(optional_args) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/parsers/python_parser.py:1284(FixedWidthFieldParser) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/json/_json.py:276(FrameWriter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/json/_json.py:1310(FrameParser) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/importlib/metadata.py:425(FastPath) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/converters.py:56(OffsetConverter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:687(BufferingFormatter) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/formatting.py:125(register_unit_format) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:414(set_fmt_locale) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/cbook.py:2055(_OrderedSet) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:1991(BoundaryNorm) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cffi/model.py:294(ArrayType) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/ImageFile.py:719(PyEncoder) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/scale.py:123(FuncTransform) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/transforms.py:2525(BboxTransform) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/actions.py:7(OnlyOnce) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4731(AtLineStart) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:5677(TokenConverter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_tools.py:642(ZoomPanBase) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/widgets.py:110(AxesWidget) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/zipp/__init__.py:162(FastLookup) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/figure.py:121(SubplotParams) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/axes/_base.py:34(_axis_method_wrapper) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/category.py:118(StrCategoryLocator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/dates.py:1707(MicrosecondLocator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/dates.py:1866(_SwitchableDateConverter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/tri/_trifinder.py:7(TriFinder) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/projections/polar.py:548(RadialTick) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/decorators.py:39(map_to_year_warning) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/arithmatic.py:140(raiseerror_if_otherdimlessseries) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/signal.py:48(_wraps) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/parser.py:17(__init__) + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/arithmatic.py:21(assert_objects_indexcompatibility) + 6 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_enums.py:20(_generate_next_value_) + 1 0.000 0.000 0.000 0.000 {method 'difference_update' of 'set' objects} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/typing.py:845(__repr__) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/selectors.py:273(get_map) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/exceptions.py:98(AxisError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/multiarray.py:741(dot) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:57(_Flavour) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:625(_PathParents) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/urllib/parse.py:147(_ResultMixinBytes) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_internal.py:240(_missing_ctypes) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ctypes/__init__.py:163(c_short) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ctypes/__init__.py:192(c_float) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ctypes/__init__.py:196(c_double) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/index_tricks.py:530(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pytz/tzinfo.py:69(BaseTzInfo) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_typing.py:226(WriteBuffer) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/six.py:91(_LazyDescr) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/six.py:178(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/parser/_parser.py:1371(_tzparser) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/accessor.py:220(__get__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/integer.py:204(UInt64Dtype) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/tarfile.py:307(_LowLevelFile) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/pytables.py:4228(WORMTable) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/pytables.py:612(TermValue) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/importlib/metadata.py:518(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/converters.py:33(ScaleConverter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/errors.py:86(DimensionalityError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:853(PrettyIPython) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:983(SourceIterator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:791(filter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:1040(StreamHandler) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/formatting.py:21(_join) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/pint_eval.py:60(EvalTreeNode) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/quantity.py:2134(build_quantity_class) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/matplotlib.py:17(PintAxisInfo) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_docstring.py:64(_ArtistPropertiesSubstitution) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/ImageSequence.py:19(Iterator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/transforms.py:2719(TransformedPath) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:2459(Empty) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3722(WordEnd) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:5781(Dict) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_tools.py:332(RubberbandBase) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/widgets.py:1877(SubplotTool) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_managers.py:13(ToolTriggerEvent) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/axis.py:572(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/legend_handler.py:719(HandlerTuple) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/dataframeexport.py:13(Flat) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfstate/pfstate.py:288(_LocIndexer) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfstate/arithmatic.py:85(returnself_if_otherNone) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ctypes/__init__.py:188(c_uint) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_typing/_array_like.py:44(_SupportsArrayFunc) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sysconfig.py:141(is_python_build) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/calendar.py:24(IllegalMonthError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/errors/__init__.py:379(UndefinedVariableError) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/accessor.py:233(_register_accessor) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/integer.py:190(UInt16Dtype) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/groupby/generic.py:109(NamedAgg) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/multi.py:117(MultiIndexUIntEngine) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/groupby/base.py:10(OutputKey) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/message.py:382(__getitem__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/ImageFile.py:598(PyCodec) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/scale.py:310(FuncScaleLog) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/scale.py:628(LogitScale) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/transforms.py:2689(AffineDeltaTransform) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:3473(BracketA) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/dviread.py:1033(_LuatexKpsewhich) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:939(ComputerModernFontConstants) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:1448(Glue) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:1523(AutoHeightChar) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/widgets.py:266(SliderBase) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/offsetbox.py:1567(DraggableOffsetBox) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/dates.py:1268(AutoDateLocator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/legend_handler.py:166(HandlerNpoints) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/flat_methods.py:41(LocIndexer) + 2 0.000 0.000 0.000 0.000 {method 'join' of 'bytes' objects} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ast.py:67(_convert_num) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/threading.py:351(notify) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/style/core.py:217(update_nested_dict) + 1 0.000 0.000 0.000 0.000 {method 'groups' of 're.Match' objects} + 1 0.000 0.000 0.000 0.000 {built-in method _operator.iadd} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/threading.py:1093(name) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/threading.py:1282(Timer) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/threading.py:1333(_DummyThread) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/numerictypes.py:425(_typedict) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ctypes/__init__.py:167(c_ushort) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ctypes/__init__.py:175(c_ulong) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ctypes/__init__.py:221(c_ubyte) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ctypes/_endian.py:23(_swapped_meta) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_pytesttester.py:46(PytestTester) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/index_tricks.py:144(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/index_tricks.py:562(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/utils.py:104(_Deprecate) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/npyio.py:42(BagObj) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/core.py:156(MaskError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/six.py:129(_LazyModule) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/six.py:236(create_module) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/calendar.py:74(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/calendar.py:558(LocaleTextCalendar) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/parser/_parser.py:1589(ParserError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/csv.py:130(DictWriter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/base.py:147(NoNewAttributesMixin) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/methods/describe.py:121(SeriesDescriber) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/formats/format.py:1849(Timedelta64Formatter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/zipfile.py:591(LZMACompressor) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/zipfile.py:715(_SharedFile) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/zipfile.py:1941(PyZipFile) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/zipfile.py:2218(FastLookup) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/interchange/dataframe_protocol.py:106(CategoricalDescription) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/parsers/readers.py:466(_DeprecationConfig) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/parquet.py:240(FastParquetImpl) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/pytables.py:86(Constant) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/pytables.py:327(ConditionBinOp) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/configparser.py:360(Interpolation) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/definitions.py:60(_NotNumeric) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/babel/numbers.py:37(UnknownCurrencyError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/babel/numbers.py:856(NumberFormatError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/errors.py:68(UndefinedUnitError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:416(__contains__) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:1010(__iter__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:270(LogRecord) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:1749(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/_vendor/flexcache.py:116(InvalidateByExist) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/_vendor/flexcache.py:238(NameByHashIter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/feedparser.py:532(BytesFeedParser) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/errors.py:93(NonPrintableDefect) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint_pandas/pint_array.py:930(PintSeriesAccessor) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_docstring.py:76(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/_util.py:14(DeferredError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cffi/model.py:88(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cffi/model.py:279(ConstPointerType) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/ImageFile.py:328(StubImageFile) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/GimpPaletteFile.py:22(GimpPaletteFile) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/ImageSequence.py:19() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/scale.py:159(FuncScale) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/ticker.py:2594(AsinhLocator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4764(FollowedBy) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/mixins/text.py:203(PfLineText) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/colorama/ansi.py:93(AnsiStyle) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/mixins/plot.py:214(PfStatePlot) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_tools.py:304(ToolCursorPosition) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_tools.py:934(ToolCopyToClipboardBase) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:2763(Arc3) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:1563(AutoWidthChar) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/offsetbox.py:420(PackerBase) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/offsetbox.py:1098(AnchoredText) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/category.py:168(UnitData) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/container.py:42(BarContainer) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/legend_handler.py:628(HandlerStem) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/tri/_triinterpolate.py:1156(_DOF_estimator_min_E) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/tri/_trirefine.py:12(TriRefiner) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/projections/geo.py:18(ThetaFormatter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/projections/polar.py:281(ThetaLocator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/dataframeexport.py:43(Nested) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/nested_methods.py:45(LocIndexer) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/prices.py:86(Nested) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/arithmatic.py:112(returnself_if_otherNone) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/arithmatic.py:120(returnself_if_otherzerofloatseries) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/arithmatic.py:286(Divide) + 4 0.000 0.000 0.000 0.000 {built-in method _sre.ascii_iscased} + 2 0.000 0.000 0.000 0.000 {method 'acquire' of '_thread.lock' objects} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/contextlib.py:63(_recreate_cm) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/subprocess.py:650(_use_posix_spawn) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/numeric.py:63(_zeros_like_dispatcher) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ctypes/__init__.py:228(c_byte) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/index_tricks.py:569(ndenumerate) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/stride_tricks.py:15(DummyArray) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pytz/lazy.py:71(LazyList) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/tz.py:1036(tzstr) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/calendar.py:53() + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/dtypes/base.py:130() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/dtypes/base.py:462(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/integer.py:62(IntegerArray) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexing.py:96(_IndexSlice) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/zipfile.py:755(_Tellable) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/methods/selectn.py:72(SelectNSeries) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/expr.py:771(PythonExprVisitor) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/pytables.py:2754() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/pytables.py:4632(AppendableMultiSeriesTable) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:119(getLevelName) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:305(udict) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:165(RegistryCache) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/unit.py:374(Unit) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint_pandas/pint_array.py:857(PintDataFrameAccessor) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:341(validate_aspect) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/ImageMode.py:22(ModeDescriptor) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/scale.py:29(ScaleBase) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/ticker.py:1833(MultipleLocator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/transforms.py:2271(BlendedAffine2D) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/exceptions.py:288(RecursiveGrammarException) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:2391(NoMatch) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4652(_Indent) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:731(DejaVuSansFonts) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:1054(Vbox) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/axes/_base.py:95(_TransformedBoundsLocator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/dates.py:1501(YearLocator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/streamplot.py:249(StreamplotSet) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/tri/_triinterpolate.py:1071(_DOF_estimator_geom) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/_version.py:60(register_vcs_handler) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/numbers.py:12(Number) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:637(__len__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pickle.py:84(UnpicklingError) + 1 0.000 0.000 0.000 0.000 {built-in method numpy._set_promotion_state} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ctypes/_endian.py:46(BigEndianStructure) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/index_tricks.py:109(nd_grid) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_typing/_array_like.py:39(_SupportsArray) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/polynomial.py:449(_polyfit_dispatcher) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/_factories.py:8(_TzSingleton) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/calendar.py:589(LocaleHTMLCalendar) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/nanops.py:109(bottleneck_switch) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/integer.py:169(Int32Dtype) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/floating.py:149(Float64Dtype) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/sparse/accessor.py:26(BaseAccessor) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/formats/printing.py:500(PrettyDict) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/formats/format.py:1628(Datetime64Formatter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/interchange/utils.py:52(Endianness) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/compat/pickle_compat.py:144(Unpickler) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/importlib/metadata.py:138(PackagePath) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/babel/plural.py:598(_JavaScriptCompiler) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/util.py:1029(BlockIterator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:418(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:1123(FileHandler) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/_vendor/flexcache.py:159(NameByFields) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/errors.py:33(MessageDefect) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_api/deprecation.py:20(MatplotlibDeprecationWarning) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:387(validate_fontstretch) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:1121(ListedColormap) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:1910(PowerNorm) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/scale.py:89(LinearScale) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/transforms.py:2790(TransformedPatchPath) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4658(_IndentGreater) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4787(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/kiwisolver/exceptions.py:19(DuplicateConstraint) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/colorama/ansi.py:25(AnsiCodes) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/collections.py:1275(BrokenBarHCollection) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/hatch.py:148(SmallFilledCircles) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_tools.py:618(ToolForward) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/font_manager.py:910(_JSONEncoder) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:1428(_GlueSpec) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_managers.py:4(ToolEvent) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/legend_handler.py:208(HandlerNpointsYoffsets) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/legend_handler.py:314(HandlerPatch) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/flat_methods.py:52(SliceIndexer) + 5 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:767(_hash_set_none) + 4 0.000 0.000 0.000 0.000 {built-in method _sre.ascii_tolower} + 1 0.000 0.000 0.000 0.000 {built-in method sys.getfilesystemencoding} + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/subprocess.py:1172(_check_timeout) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/__config__.py:98() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_exceptions.py:32(UFuncTypeError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_exceptions.py:56(_UFuncBinaryResolutionError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/urllib/parse.py:224(_NetlocResultMixinBytes) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ctypes/__init__.py:171(c_long) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ctypes/__init__.py:233(c_char) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/index_tricks.py:303(__init__) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/index_tricks.py:761(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/linalg/linalg.py:2187(_lstsq_dispatcher) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/twodim_base.py:529(_vander_dispatcher) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/polynomial.py:701(_polyval_dispatcher) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/platform.py:1125(python_version) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/extras.py:1637(mr_class) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/sysconfig.py:184(_get_default_scheme) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/engines.py:124(PythonEngine) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/expr.py:169(_is_type) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/sql.py:1440(SQLAlchemyEngine) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:160() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:154(RegistryMeta) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/systems.py:506(Lister) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/parser.py:71(HeaderParser) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/feedparser.py:125(__iter__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/message.py:1168(EmailMessage) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:163(validate_dpi) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:874(_ignorecase) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cffi/model.py:178(UnknownIntegerType) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/ticker.py:1658(IndexLocator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/ticker.py:1915(_Edge_integer) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/ticker.py:2874(AutoMinorLocator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/unicode.py:140(BasicMultilingualPlane) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:197(_should_enable_warnings) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3636(LineEnd) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3664(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3659(StringStart) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/units.py:135(DecimalConverter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/artist.py:111(_Unset) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/hatch.py:9(HatchPatternBase) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/hatch.py:14(HorizontalHatch) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/hatch.py:132(SmallCircles) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_bases.py:1533(KeyEvent) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_tools.py:609(ToolBack) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:2325(Square) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:3595(Simple) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:1061(Hbox) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/axes/__init__.py:14(SubplotBase) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/offsetbox.py:467(VPacker) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/axis.py:564(_LazyTickList) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/legend_handler.py:398(HandlerLineCollection) + 1 0.000 0.000 0.000 0.000 {built-in method _thread._set_sentinel} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/threading.py:271(_is_owned) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/multiarray.py:85(empty_like) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/dtypes.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ctypes/__init__.py:200(c_longdouble) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ctypes/__init__.py:249(c_bool) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pytz/__init__.py:313(_CountryTimezoneDict) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/zoneinfo/_tzpath.py:170(InvalidTZPathWarning) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/errors/__init__.py:434(PyperclipWindowsException) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/csv.py:69(unix_dialect) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/accessor.py:196(CachedAccessor) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/stata.py:791(StataNonCatValueLabel) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/systems.py:425(invalidate_members) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/systems.py:529(build_system_class) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/unit.py:373(build_unit_class) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/Image.py:3445(register_save) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cffi/model.py:328(StructOrUnionOrEnum) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/ticker.py:270(FixedFormatter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/mixins/text.py:229(PfStateText) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/contour.py:29(ClabelText) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_tools.py:437(ToolYScale) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_tools.py:447(ToolXScale) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:2583(Sawtooth) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/projections/__init__.py:72(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/dates.py:876(AutoDateFormatter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/legend_handler.py:521(HandlerErrorbar) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/mpl_toolkits/mplot3d/art3d.py:347(Collection3D) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/arithmatic.py:73(ensure_pflines_flat) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/arithmatic.py:132(raiseerror_if_otherNone) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfstate/arithmatic.py:157(Add) + 2 0.000 0.000 0.000 0.000 {method 'copy' of 'list' objects} + 1 0.000 0.000 0.000 0.000 {built-in method posix.getpid} + 2 0.000 0.000 0.000 0.000 {built-in method from_iterable} + 1 0.000 0.000 0.000 0.000 {method 'disable' of '_lsprof.Profiler' objects} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_exceptions.py:80(_UFuncInputCastingError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_exceptions.py:98(_UFuncOutputCastingError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/urllib/parse.py:329(DefragResult) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/arrayprint.py:1222(IntegerFormat) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/ctypes/__init__.py:244(c_void_p) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/index_tricks.py:211(MGridClass) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_typing/_array_like.py:160(_UnknownType) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/extras.py:263(_fromnxfunction_single) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pytz/lazy.py:121(LazySet) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pytz/tzfile.py:12(_byte_string) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_typing.py:236(ReadPickleBuffer) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_typing.py:241(WriteExcelBuffer) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/six.py:144(MovedAttribute) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/six.py:245(_MovedItems) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/six.py:340(Module_six_moves_urllib_parse) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/_factories.py:55(_TzStrFactory) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/calendar.py:31(IllegalWeekdayError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/calendar.py:546(different_locale) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/parser/isoparser.py:43(__init__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/errors/__init__.py:18(IntCastingNaNError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/errors/__init__.py:24(NullFrequencyError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/errors/__init__.py:548(InvalidColumnName) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/tseries/frequencies.py:430(_TimedeltaFrequencyInferer) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/integer.py:176(Int64Dtype) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/arrays/integer.py:183(UInt8Dtype) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/zipfile.py:614(LZMADecompressor) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/formats/info.py:823(DataFrameTableBuilderNonVerbose) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/ops.py:518(Div) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/ops.py:612(FuncNode) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_testing/__init__.py:837(SubclassedCategorical) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/stata.py:956(StataParser) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/holidays/helpers.py:13() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/configparser.py:1227(SafeConfigParser) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/babel/core.py:118(UnknownLocaleError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/babel/units.py:13(UnknownUnitError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:1218(PlaceHolder) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:1280(disable) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/measurement.py:178(Measurement) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/registry.py:190(ContextCacheOverlay) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/parser.py:79(BytesParser) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/errors.py:8(MessageError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/_policybase.py:41(__init__) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/packaging/version.py:276(release) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/cbook.py:333(silent_list) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:2119(NoNorm) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/__init__.py:75(UnidentifiedImageError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/Image.py:3456(register_save_all) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cffi/error.py:2(FFIError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cffi/model.py:72(BaseType) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cffi/model.py:85(VoidType) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cffi/model.py:224(RawFunctionType) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/GimpGradientFile.py:66(GradientFile) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/GimpGradientFile.py:101(GimpGradientFile) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/ticker.py:1687(FixedLocator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/unicode.py:146(Latin1) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/unicode.py:165(Greek) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/unicode.py:244(Kanji) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/unicode.py:251(Hiragana) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:5044(OneOrMore) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:5175(_NullToken) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/results.py:98(List) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/kiwisolver/exceptions.py:15(BadRequiredStrength) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/units.py:161(Registry) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/hatch.py:87(Shapes) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/hatch.py:124(Circles) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/hatch.py:157(Stars) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_bases.py:1288(DrawEvent) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_bases.py:1484(PickEvent) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_bases.py:3475(ShowBase) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_tools.py:370(ToolQuitAll) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_tools.py:380(ToolGrid) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_tools.py:395(ToolMinorGrid) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_tools.py:410(ToolFullScreen) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_tools.py:588(ViewsPositionsBase) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_tools.py:634(SaveFigureBase) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:2439(DArrow) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:3434(Curve) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:3492(BracketB) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:3674(Fancy) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:3762(Wedge) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:950(STIXFontConstants) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:1410(Hrule) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/axes/__init__.py:8(_SubplotBaseMeta) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/container.py:77(ErrorbarContainer) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/projections/polar.py:241(ThetaFormatter) + 2 0.000 0.000 0.000 0.000 :1299(exec_module) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/threading.py:259(__exit__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/systems.py:522(build_group_class) + 1 0.000 0.000 0.000 0.000 {built-in method _stat.S_ISREG} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/exceptions.py:47(ComplexWarning) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:581(_RecursiveWildcardSelector) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:1043(PurePosixPath) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:1053(PureWindowsPath) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/arrayprint.py:1336(TimedeltaFormat) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/arrayprint.py:1341(SubArrayFormat) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/polynomial.py:29(RankWarning) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/zoneinfo/_common.py:164(ZoneInfoNotFoundError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/_factories.py:25(_TzOffsetFactory) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexing.py:2433(_iAtIndexer) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/formats/format.py:1836(Datetime64TZFormatter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/tarfile.py:707(ExFileObject) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/accessors.py:545(CombinedDatetimelikeProperties) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/groupby/ops.py:1257(FrameSplitter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/pytables.py:3232(FrameFixed) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/pytables.py:377(UnaryOp) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/sql.py:1421(BaseEngine) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/errors.py:81(HeaderDefect) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/uu.py:39(Error) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/packaging/version.py:57(InvalidVersion) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cffi/model.py:97(BasePrimitiveType) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/PngImagePlugin.py:1077(_fdat) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/ticker.py:1732(NullLocator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/util.py:168(UnboundedMemo) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:3551(PositionToken) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/units.py:72(AxisInfo) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/hatch.py:31(VerticalHatch) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/hatch.py:140(LargeCircles) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:2369(Ellipse) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:2801(Angle3) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:3511(BracketAB) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:959(STIXSansFontConstants) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:1486(VCentered) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_blocking_input.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/dates.py:1551(MonthLocator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/dates.py:1578(WeekdayLocator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/_version.py:21(get_keywords) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:503(_Selector) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/arrayprint.py:493(_recursive_guard) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/arrayprint.py:1245(ComplexFloatingFormat) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/arrayprint.py:1278(_TimelikeFormat) + 1 0.000 0.000 0.000 0.000 {built-in method numpy.core._multiarray_umath._reload_guard} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/_internal.py:244(c_void_p) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/index_tricks.py:262(OGridClass) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/index_tricks.py:717(IndexExpression) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pytz/exceptions.py:11(Error) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/tz.py:373(_tzfile) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/calendar.py:160(setfirstweekday) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/multi.py:156(MultiIndexPyIntEngine) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/internals/blocks.py:2118(NumericBlock) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/formats/format.py:1617(IntArrayFormatter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/tarfile.py:735(SpecialFileError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/groupby/ops.py:1249(SeriesSplitter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/importlib/metadata.py:154(FileHash) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/configparser.py:181(NoSectionError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/configparser.py:190(DuplicateSectionError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/configparser.py:243(NoOptionError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/compat.py:36(BehaviorChangeWarning) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/babel/plural.py:527(_unary_compiler) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/babel/numbers.py:559(UnknownCurrencyFormatError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/errors.py:114(OffsetUnitCalculusError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/errors.py:127(LogarithmicUnitCalculusError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:729(Filter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:1743(RootLogger) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/quantity.py:98(_Exception) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/quantity.py:117(ireduce_dimensions) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/quantity.py:2135(Quantity) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/systems.py:523(Group) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint_pandas/pint_array.py:948(Delegated) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/__init__.py:1285(is_interactive) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_docstring.py:50(_ArtistKwdocLoader) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:747(_DunderChecker) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/colors.py:1796(FuncNorm) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/Image.py:2860(ImageTransformHandler) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/Image.py:3430(register_mime) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cffi/error.py:5(CDefError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cffi/model.py:204(BaseFunctionType) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cffi/model.py:239(FunctionPtrType) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/PngImagePlugin.py:1066(_idat) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/ticker.py:262(NullFormatter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/transforms.py:2607(BboxTransformToMaxOnly) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/util.py:80(_UnboundedCache) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/unicode.py:8(_lazyclassproperty) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/unicode.py:153(LatinA) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/unicode.py:218(Chinese) + 3 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:2469(_generateDefaultName) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/cm.py:95(__iter__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_bases.py:1315(ResizeEvent) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:2348(Circle) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:2711(SimpleEvent) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:2905(Arc) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:3533(BarAB) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:3551(BracketCurve) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/dviread.py:782(Tfm) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_managers.py:20(ToolManagerMessageEvent) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/projections/__init__.py:85(get_projection_names) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/offsetbox.py:499(HPacker) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/dates.py:1633(HourLocator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/dates.py:1683(SecondLocator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/container.py:109(StemContainer) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/nested_methods.py:56(SliceIndexer) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/arithmatic.py:33(assert_pflines_samekind) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfstate/pfstate.py:301(_SliceIndexer) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfstate/arithmatic.py:175(Multiply) + 4 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:5916(postParse) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/copyreg.py:22(constructor) + 2 0.000 0.000 0.000 0.000 {method '__prepare__' of 'type' objects} + 1 0.000 0.000 0.000 0.000 {built-in method _thread.get_native_id} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/threading.py:1147(daemon) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:51(_is_wildcard_pattern) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/urllib/parse.py:337(SplitResult) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/urllib/parse.py:356(SplitResultBytes) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/arrayprint.py:1235(BoolFormat) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/index_tricks.py:435(RClass) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/index_tricks.py:537(CClass) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/polynomial/polyutils.py:47(RankWarning) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/random.py:805(seed) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pytz/__init__.py:372(_CountryNameDict) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/_version.py:4() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/_factories.py:19(_TzFactory) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/parser/_parser.py:661(_result) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/parser/_parser.py:1378(_attr) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/errors/__init__.py:47(UnsortedIndexError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/errors/__init__.py:55(ParserError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/array_algos/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/shutil.py:69(Error) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/tarfile.py:740(AbsoluteLinkError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/tarfile.py:745(LinkOutsideDestinationError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/formats/info.py:1032(SeriesTableBuilderNonVerbose) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/engines.py:107(NumExprEngine) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/pytables.py:319(JointFilterBinOp) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/holidays/calendars/islamic.py:3398(_CustomIslamicCalendar) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/__init__.py:102(get_application_registry) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/configparser.py:216(DuplicateOptionError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/errors.py:26(PintError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:2178(createLock) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/parser.py:126(BytesHeaderParser) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/errors.py:12(MessageParseError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/errors.py:50(FirstHeaderLineIsContinuationDefect) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint_pandas/pint_array.py:957(DelegatedProperty) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_api/deprecation.py:308(_deprecated_parameter_class) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/Image.py:2851(ImagePointHandler) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cffi/error.py:17(VerificationError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cffi/model.py:261(PointerType) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cffi/model.py:486(UnionType) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/ticker.py:187(TickHelper) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/ticker.py:332(FormatStrFormatter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/ticker.py:355(StrMethodFormatter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/ticker.py:1030(LogFormatterExponent) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/ticker.py:1093(LogFormatterSciNotation) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/unicode.py:205(Cyrillic) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/unicode.py:263(Katakana) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/unicode.py:287(Hangul) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/unicode.py:319(Arabic) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/unicode.py:327(Hebrew) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:2476(_SingleCharLiteral) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/results.py:14() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/kiwisolver/exceptions.py:47(UnsatisfiableConstraint) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/colorama/winterm.py:23(WinStyle) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:2397(LArrow) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:2429(RArrow) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:2534(Round4) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:2642(Roundtooth) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:2841(Angle) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:3573(CurveBracket) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:1420(Vrule) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/dates.py:1658(MinuteLocator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/legend_handler.py:503(HandlerPathCollection) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/streamplot.py:434(InvalidIndexError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/tri/_triinterpolate.py:1061(_DOF_estimator_user) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/visualize/plot.py:56(ContinuousValuesNotSupported) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/_version.py:34(VersioneerConfig) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/dataclasses.py:959() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/subprocess.py:105(SubprocessError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/subprocess.py:2044(_save_input) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/threading.py:476(BoundedSemaphore) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/urllib/parse.py:348(DefragResultBytes) + 1 0.000 0.000 0.000 0.000 {built-in method numpy.core._multiarray_umath._set_madvise_hugepage} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/_iotools.py:421(ConverterError) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pytz/lazy.py:91(LazyList) + 2 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pytz/lazy.py:144(LazySet) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/util/version/__init__.py:129(InvalidVersion) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/errors/__init__.py:33(PerformanceWarning) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/errors/__init__.py:39(UnsupportedFunctionCall) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/dtypes/dtypes.py:117(CategoricalDtypeType) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/gzip.py:116(BadGzipFile) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/tarfile.py:270(TarError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/tarfile.py:723(AbsolutePathError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/holidays/calendars/custom.py:32(_CustomCalendar) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/compat.py:66(FakeArray) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/babel/plural.py:325(RuleError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/quantity.py:148(wrapper) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/__init__.py:346(ExecutableNotFoundError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/rcsetup.py:350(validate_fontsize_None) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cffi/model.py:285(NamedPointerType) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/ImageFile.py:587(PyCodecState) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/ticker.py:1046(LogFormatterMathtext) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/bezier.py:25(NonIntersectingPathException) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/exceptions.py:252(ParseException) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/core.py:4882(Located) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/kiwisolver/exceptions.py:26(DuplicateEditVariable) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/kiwisolver/exceptions.py:33(UnknownConstraint) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/kiwisolver/exceptions.py:40(UnknownEditVariable) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_bases.py:1335(CloseEvent) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_bases.py:2574(NonGuiException) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:2476(Round) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:864(StixSansFonts) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:1476(HCentered) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/dates.py:1605(DayLocator) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/legend_handler.py:772(HandlerPolyCollection) + 2 0.000 0.000 0.000 0.000 {method 'clear' of 'list' objects} + 1 0.000 0.000 0.000 0.000 {built-in method sys.getdefaultencoding} + 1 0.000 0.000 0.000 0.000 {method '__exit__' of 'posix.ScandirIterator' objects} + 1 0.000 0.000 0.000 0.000 {method '__enter__' of '_thread.lock' objects} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/threading.py:750(BrokenBarrierError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/threading.py:785() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/threading.py:943(_set_ident) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/exceptions.py:85(TooHardError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/exceptions.py:189(DTypePromotionError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:404(_Accessor) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:528(_TerminatingSelector) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:550(_WildcardSelector) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:1578(PosixPath) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/pathlib.py:1585(WindowsPath) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/urllib/parse.py:342(ParseResult) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/urllib/parse.py:361(ParseResultBytes) + 1 0.000 0.000 0.000 0.000 {built-in method numpy._using_numpy2_behavior} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/linalg/linalg.py:67(LinAlgError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_typing/__init__.py:79(_64Bit) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/_iotools.py:429(ConverterLockError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/extras.py:281(_fromnxfunction_seq) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/extras.py:294(_fromnxfunction_args) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/ma/extras.py:319(_fromnxfunction_allargs) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pytz/exceptions.py:15(UnknownTimeZoneError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pytz/exceptions.py:38(InvalidTimeError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pytz/exceptions.py:42(AmbiguousTimeError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/util/version/__init__.py:412(dev) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/tz.py:1156(_tzicalvtzcomp) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/six.py:239(exec_module) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/six.py:454(Module_six_moves_urllib_response) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_config/config.py:104(OptionError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/parser/_parser.py:1608(UnknownTimezoneWarning) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/dtypes/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/errors/__init__.py:124(EmptyDataError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/errors/__init__.py:207(NumbaUtilError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/errors/__init__.py:213(DuplicateLabelError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/errors/__init__.py:301(SettingWithCopyWarning) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/errors/__init__.py:323(ChainedAssignmentError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/errors/__init__.py:360(NumExprClobberingError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/errors/__init__.py:405(IndexingError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/errors/__init__.py:448(CSSWarning) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/errors/__init__.py:467(PossibleDataLossError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/errors/__init__.py:479(ClosedFileError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/errors/__init__.py:492(IncompatibilityWarning) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/errors/__init__.py:498(AttributeConflictWarning) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/errors/__init__.py:508(DatabaseError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/errors/__init__.py:521(PossiblePrecisionLoss) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/errors/__init__.py:536(ValueLabelTypeMismatch) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/csv.py:64(excel_tab) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/shutil.py:72(SameFileError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/shutil.py:82(ReadError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/formats/format.py:1656(ExtensionArrayFormatter) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/tarfile.py:273(ExtractError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/tarfile.py:288(EmptyHeaderError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/tarfile.py:294(EOFHeaderError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/tarfile.py:297(InvalidHeaderError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/tarfile.py:728(OutsideDestinationError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/zipfile.py:42(BadZipFile) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/zipfile.py:46(LargeZipFile) + 1 0.000 0.000 0.000 0.000 :1(__create_fn__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/_libs/window/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/accessors.py:478(PeriodProperties) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/socket.py:211(_GiveupOnSendfile) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/pytables.py:371(JointConditionBinOp) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/holidays/calendars/buddhist.py:440(_CustomBuddhistCalendar) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/holidays/calendars/chinese.py:1264(_CustomChineseCalendar) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/holidays/calendars/hindu.py:440(_CustomHinduCalendar) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/holidays/calendars/julian_revised.py:12() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/importlib/metadata.py:37(PackageNotFoundError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/configparser.py:254(InterpolationError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/configparser.py:264(InterpolationMissingOptionError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/configparser.py:284(InterpolationDepthError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/configparser.py:340(MissingSectionHeaderError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/errors.py:140(UnitStrippedWarning) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/logging/__init__.py:2172(handle) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/_vendor/flexcache.py:404(Header) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/_vendor/flexcache.py:420(Header) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/errors.py:16(HeaderParseError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/errors.py:20(BoundaryError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/errors.py:24(MultipartConversionError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/errors.py:28(CharsetError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/errors.py:41(NoBoundaryInMultipartDefect) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/errors.py:44(StartBoundaryNotFoundDefect) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/errors.py:47(CloseBoundaryNotFoundDefect) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/errors.py:67(UndecodableBytesDefect) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/errors.py:107(NonASCIILocalPartDefect) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint_pandas/pint_array.py:974(DelegatedMethod) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/Image.py:64(DecompressionBombWarning) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cffi/error.py:28(PkgConfigError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cffi/model.py:192(UnknownFloatType) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cffi/model.py:482(StructType) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/util.py:101(_FifoCache) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/exceptions.py:272(ParseFatalException) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/unicode.py:159(LatinB) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/unicode.py:309(CJK) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/unicode.py:312(Thai) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/unicode.py:341(Devanagari) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/hatch.py:48(NorthEastHatch) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/hatch.py:67(SouthEastHatch) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/backend_tools.py:627(ConfigureSubplotsBase) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:3443(CurveA) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:3448(CurveB) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:3453(CurveAB) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:3463(CurveFilledB) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:966(DejaVuSerifFontConstants) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/_mathtext.py:970(DejaVuSansFontConstants) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/importlib_resources/abc.py:55(TraversalError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/legend_handler.py:238(HandlerLine2DCompound) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/legend_handler.py:275(HandlerLine2D) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/legend_handler.py:513(HandlerCircleCollection) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/streamplot.py:438(TerminateTrajectory) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/streamplot.py:510(OutOfBounds) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/arithmatic.py:45(assert_pflines_distinctkind) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/pfline/arithmatic.py:57(ensure_pflines_samestructure) + 2 0.000 0.000 0.000 0.000 {method 'isalpha' of 'str' objects} + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/_version.py:52(NotThisMethod) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/selectors.py:200(__enter__) + 1 0.000 0.000 0.000 0.000 :1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/exceptions.py:58(ModuleDeprecationWarning) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/urllib/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/core/numeric.py:837(_outer_dispatcher) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/linalg/linalg.py:488(_unary_dispatcher) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_typing/__init__.py:88(_8Bit) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/six.py:382(Module_six_moves_urllib_error) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/errors/__init__.py:130(ParserWarning) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/errors/__init__.py:179(AccessorRegistrationWarning) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/shutil.py:75(SpecialFileError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/tools/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/reshape/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/tarfile.py:285(HeaderError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/_numba/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/interchange/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/configparser.py:276(InterpolationSyntaxError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/compat.py:67(__array_function__) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/errors.py:53(MisplacedEnvelopeHeaderDefect) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/errors.py:64(InvalidMultipartContentTransferEncodingDefect) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/errors.py:73(InvalidBase64CharactersDefect) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/errors.py:76(InvalidBase64LengthDefect) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/cffi/error.py:22(VerificationMissing) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/units.py:52(ConversionError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:3458(CurveFilledA) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/exceptions.py:74(VisibleDeprecationWarning) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_typing/__init__.py:70(_128Bit) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_typing/__init__.py:76(_80Bit) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_typing/__init__.py:82(_32Bit) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_typing/__init__.py:85(_16Bit) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/lib/_iotools.py:437(ConversionWarning) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pytz/exceptions.py:53(NonExistentTimeError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/__init__.py:11(DeprecatedTzFormatWarning) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/tz.py:627() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/dateutil/tz/tz.py:1818(_get_supported_offset) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/six.py:402(Module_six_moves_urllib_request) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/six.py:475(Module_six_moves_urllib_robotparser) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/util/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/errors/__init__.py:69(DtypeWarning) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/errors/__init__.py:171(MergeError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/errors/__init__.py:234(InvalidIndexError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/errors/__init__.py:242(DataError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/errors/__init__.py:251(SpecificationError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/errors/__init__.py:279(SettingWithCopyError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/errors/__init__.py:426(PyperclipException) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/errors/__init__.py:563(CategoricalConversionWarning) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/errors/__init__.py:577(LossySetitemError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/errors/__init__.py:583(NoBufferPresent) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/config_init.py:637(register_plotting_backend_cb) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/strings/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/nanops.py:67(set_use_bottleneck) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/shutil.py:79(ExecError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/shutil.py:85(RegistryError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/shutil.py:89(_GiveupOnFastCopy) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/indexes/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/methods/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/tarfile.py:276(ReadError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/tarfile.py:279(CompressionError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/tarfile.py:282(StreamError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/tarfile.py:291(TruncatedHeaderError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/tarfile.py:300(SubsequentHeaderError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/tarfile.py:720(FilterError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/core/computation/expr.py:322(add_ops) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/io/pytables.py:2574(GenericDataIndexableCol) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/errors.py:82(PintTypeError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint/systems.py:530(System) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/errors.py:61(MultipartInvariantViolationDefect) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/errors.py:70(InvalidBase64PaddingDefect) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/errors.py:87(InvalidHeaderDefect) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/errors.py:90(HeaderMissingRequiredValue) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/errors.py:104(ObsoleteHeaderDefect) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint_pandas/pint_array.py:970(DelegatedScalarProperty) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pint_pandas/pint_array.py:991(DelegatedScalarMethod) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/_version.py:2() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/PIL/Image.py:68(DecompressionBombError) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/exceptions.py:17(ExceptionWordUnicode) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pyparsing/exceptions.py:279(ParseSyntaxException) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/core/__init__.py:1() + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/matplotlib/patches.py:3468(CurveFilledAB) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/Library/CloudStorage/OneDrive-LichtBlickSE/Desktop/portfolyo/portfolyo/portfolyo/visualize/plot.py:60(CategoricalValuesNotSupported) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_typing/__init__.py:67(_256Bit) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/email/errors.py:56(MissingHeaderBodySeparatorDefect) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/numpy/_typing/__init__.py:73(_96Bit) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/pandas/errors/__init__.py:589(InvalidComparison) + 1 0.000 0.000 0.000 0.000 /Users/alina.voilova/miniconda3/envs/env-portfolyo/lib/python3.9/site-packages/holidays/calendars/julian.py:12() + + diff --git a/tests/core/pfline/test_pfline_excelclipboard.py b/tests/core/pfline/test_pfline_excelclipboard.py index 08c0829..f6b092f 100644 --- a/tests/core/pfline/test_pfline_excelclipboard.py +++ b/tests/core/pfline/test_pfline_excelclipboard.py @@ -1,9 +1,9 @@ """Test if portfolio line can be exported.""" +import pandas as pd import pytest import portfolyo as pf -import pandas as pd @pytest.mark.parametrize("levels", [1, 2, 3]) diff --git a/tests/core/pfline/test_pfline_init.py b/tests/core/pfline/test_pfline_init.py index a3b8d0d..62632d9 100644 --- a/tests/core/pfline/test_pfline_init.py +++ b/tests/core/pfline/test_pfline_init.py @@ -3,7 +3,7 @@ import random from dataclasses import dataclass from enum import Enum -from typing import Any, Callable, Iterable, Union +from typing import Any, Callable, Iterable import pandas as pd import pytest @@ -187,7 +187,7 @@ def test_init_A( columns: Iterable[str], inputtype: InputTypeA, has_unit: bool, - constructor: Union[Callable, type], + constructor: Callable | type, ): """Test if pfline can be initialized correctly from a flat testcase.""" diff --git a/tests/core/pfline/test_pfline_text.py b/tests/core/pfline/test_pfline_text.py index 5f8c980..5e62e82 100644 --- a/tests/core/pfline/test_pfline_text.py +++ b/tests/core/pfline/test_pfline_text.py @@ -1,6 +1,7 @@ """Test if portfolio line can be printed.""" import pytest + import portfolyo as pf diff --git a/tests/core/pfline/test_slice.py b/tests/core/pfline/test_slice.py index 63447d2..87b8f6e 100644 --- a/tests/core/pfline/test_slice.py +++ b/tests/core/pfline/test_slice.py @@ -1,7 +1,8 @@ """Test if slice attributes works properly with portfolio line.""" -import pytest import pandas as pd +import pytest + from portfolyo import dev diff --git a/tests/core/pfstate/test_pfstate_excelclipboard.py b/tests/core/pfstate/test_pfstate_excelclipboard.py index d2a2a47..61b3853 100644 --- a/tests/core/pfstate/test_pfstate_excelclipboard.py +++ b/tests/core/pfstate/test_pfstate_excelclipboard.py @@ -1,8 +1,9 @@ """Test if portfolio line can be exported.""" +import pandas as pd import pytest + import portfolyo as pf -import pandas as pd def test_pfstate_toexcel(): diff --git a/tests/core/pfstate/test_slice_state.py b/tests/core/pfstate/test_slice_state.py index 7a472c3..a3e0e0c 100644 --- a/tests/core/pfstate/test_slice_state.py +++ b/tests/core/pfstate/test_slice_state.py @@ -1,7 +1,8 @@ """Test if slice attributes works properly with portfolio state.""" -import pytest import pandas as pd +import pytest + from portfolyo import dev diff --git a/tests/core/test-output.xml b/tests/core/test-output.xml deleted file mode 100644 index aeb9a15..0000000 --- a/tests/core/test-output.xml +++ /dev/null @@ -1,1961 +0,0 @@ -/Users/ruud.wijtvliet/.local/share/nvim/lazy/neotest-python/neotest.py --results-file /var/folders/4l/jxhd2x_x0x15bwll5w9f_5rr0000gq/T/nvim.ruud.wijtvliet/bxjGD4/9 --stream-file /var/folders/4l/jxhd2x_x0x15bwll5w9f_5rr0000gq/T/nvim.ruud.wijtvliet/bxjGD4/10 --runner pytest -- /Users/ruud.wijtvliet/python/portfolyo/tests/core/pfstate/test_slice_state.py/Users/ruud.wijtvliet/python/portfolyo/tests/core/pfstate/test_slice_state.py \ No newline at end of file diff --git a/tests/prices/test_hedge.py.bak b/tests/prices/test_hedge.py.bak deleted file mode 100644 index 1a080b7..0000000 --- a/tests/prices/test_hedge.py.bak +++ /dev/null @@ -1,86 +0,0 @@ -from portfolyo import dev -from portfolyo.prices import hedge -from portfolyo.prices import utils as putils -from portfolyo import testing -from portfolyo.tools import stamps -from pathlib import Path -import numpy as np -import pandas as pd -import pytest - - -@pytest.mark.parametrize("po", [True, False]) -@pytest.mark.parametrize( - ("values", "start", "result_base", "result_po"), - [ - ([1, 2, 3], "2020-01-01", 2, (np.nan, 2)), - (range(12), "2020-01-01", 5.5, (9.5, 3.5)), - ([*[10] * (23 + 8), *[15] * 5], "2020-03-29", 10.69444, (15, 10)), - ([*[10] * (25 + 8), *[15] * 5], "2020-10-25", 10.65789, (15, 10)), - ], -) -def test_basic_volhedge(values, start, result_base, result_po, po): - """Test if basic volume hedge with single values is calculated correctly.""" - index = pd.date_range(start, freq="H", periods=len(values), tz="Europe/Berlin") - df = pd.DataFrame({"w": values, "p": 100.0}, index) - result = hedge._hedge(df, how="vol", po=po) - if not po: - # Result for base hedge - expected_result = pd.Series({"w": result_base, "p": 100.0}) - else: - # Result for peak/offpeak hedge - values = {} - if not np.isnan(result_po[0]): - values[("peak", "w")] = result_po[0] - values[("peak", "p")] = 100.0 - if not np.isnan(result_po[1]): - values[("offpeak", "w")] = result_po[1] - values[("offpeak", "p")] = 100.0 - - expected_result = pd.Series(values) - testing.assert_series_equal(result.sort_index(), expected_result.sort_index()) - - -@pytest.mark.parametrize("withunit", [True, False]) -@pytest.mark.parametrize("how", ["vol", "val"]) -@pytest.mark.parametrize("po", [True, False]) -@pytest.mark.parametrize("aggfreq", ["MS", "QS", "AS"]) -@pytest.mark.parametrize("freq", ["H", "D"]) -@pytest.mark.parametrize("tz", [None, "Europe/Berlin"]) -def test_hedge_fromexcel(tz, freq, aggfreq, po, how, withunit): - """Test if hedge results are correctly calculated, by comparing against previously calculated results.""" - if freq == "D" and po: - return # Only decompose in peak and offpeak if hourly values - - if tz is None: - return # TODO: allow hedging with dataframes without timezone information, and remove this block so that they are also checked - - path = Path(__file__).parent / "test_hedge_data.xlsx" - sheetname = f'{freq}_{"None" if tz is None else tz.replace("/", "")}' - - # Input data. - df_in = pd.read_excel(path, sheetname, header=6, index_col=0, usecols="A,B:C") - if tz: - df_in = df_in.tz_localize(tz, ambiguous="infer") - df_in.index.freq = pd.infer_freq(df_in.index) - w_in, p_in = df_in.w, df_in.p - if withunit: - w_in = w_in.astype("pint[MW]") - p_in = p_in.astype("pint[Eur/MWh]") - - # Expected output data. - df_out = pd.read_excel(path, f"{sheetname}_out", header=[3, 4, 5, 6], index_col=0) - if tz: - df_out = df_out.tz_localize(tz, ambiguous="infer") - df_out.index.freq = pd.infer_freq(df_out.index) - w_expected = df_out[aggfreq][po][how]["w"] - p_expected = df_out[aggfreq][po].iloc[:, 0] # price is first column - if withunit: - w_expected = w_expected.astype("pint[MW]") - p_expected = p_expected.astype("pint[Eur/MWh]") - - # Test output data. - w_test, p_test = hedge.hedge(w_in, p_in, how, aggfreq, po) - - testing.assert_series_equal(p_test, p_expected, check_names=False) - testing.assert_series_equal(w_test, w_expected, check_names=False) diff --git a/tests/prices/test_convert.py.bak b/tests/tools/prices/test_convert.py.bak similarity index 66% rename from tests/prices/test_convert.py.bak rename to tests/tools/prices/test_convert.py.bak index 4e5557e..77ad906 100644 --- a/tests/prices/test_convert.py.bak +++ b/tests/tools/prices/test_convert.py.bak @@ -1,88 +1,13 @@ import functools -from portfolyo.prices import convert -from portfolyo.tools import nits -from portfolyo import testing from pathlib import Path + import numpy as np import pandas as pd import pytest - -@pytest.mark.parametrize("tz", [None, "Europe/Berlin"]) -@pytest.mark.parametrize("withunit", [True, False]) -@pytest.mark.parametrize( - ("b", "p", "o", "o_EuropeBerlin", "ts_left", "freq"), - [ - (100, 100, 100, None, "2020-01-01", "MS"), # 31 days, 23 working days - (100, 200, 41.02564103, None, "2020-01-01", "MS"), - (100, 300, -17.94871795, None, "2020-01-01", "MS"), - (100, 100, 100, None, "2020-01-01", "QS"), # 91 days, 65 working days - (100, 200, 44.44444444, 44.40484676, "2020-01-01", "QS"), - (100, 300, -11.11111111, -11.19030649, "2020-01-01", "QS"), - (100, 100, 100, None, "2020-01-01", "D"), # weekday - (100, 200, 0, None, "2020-01-01", "D"), # weekday - (100, 300, -100, None, "2020-01-01", "D"), # weekday - (100, np.nan, 100, None, "2020-01-04", "D"), # weekend only - ], -) -def test_pbaseppeakpoffpeak_explicit( - b: float, - p: float, - o: float, - ts_left: str, - freq: str, - withunit: bool, - tz: str, - o_EuropeBerlin: float, -): - """Test if base, peak and offpeak values can be calculated from single values.""" - # Handle timezone. - ts_left = pd.Timestamp(ts_left, tz=tz) - if tz is not None and o_EuropeBerlin is not None: - o = o_EuropeBerlin - - # Handle units. - if withunit: # add a (random) unit to see if conversion still works. - b, p, o = nits.Q_(b, "MW"), nits.Q_(p, "MW"), nits.Q_(o, "MW") - - # Do testing. - assert np.isclose(convert.peak(b, o, ts_left, freq), p, equal_nan=True) - if np.isnan(p): - p = 0 if not withunit else nits.Q_(0, "MW") - assert np.isclose(convert.offpeak(b, p, ts_left, freq), o) - assert np.isclose(convert.base(p, o, ts_left, freq), b) - - -@pytest.mark.parametrize("withunits", [True, False]) -@pytest.mark.parametrize("testcol", ["base", "peak", "offpeak"]) -@pytest.mark.parametrize( - "bpoframe", - [ - pd.DataFrame( - { - "peak": [100.0, 100, 100, 100], - "base": [80.0, 80, 80, 80], - "offpeak": [68.2051282, 69.4736842, 68.9770355, 68.421053], - }, - pd.date_range("2020", periods=4, freq="MS", tz="Europe/Berlin"), - ), - pd.DataFrame( - { - "peak": [100.0, 100, 100, 100], - "base": [80.0, 80, 80, 80], - "offpeak": [68.8510638, 68.8699360, 68.9361702, 68.9361702], - }, - pd.date_range("2020", periods=4, freq="AS", tz="Europe/Berlin"), - ), - ], -) -def test_completebpoframe_explicit(bpoframe, testcol: str, withunits: bool): - """Test if missing column can be reconstructed.""" - if withunits: - bpoframe = bpoframe.astype("pint[Eur/MWh]") - df = bpoframe.drop(columns=testcol) - result = convert.complete_bpoframe(df) - testing.assert_frame_equal(bpoframe, result) +from portfolyo import testing +from portfolyo.prices import convert +from portfolyo.tools import nits @functools.lru_cache() diff --git a/tests/prices/test_convert_data.xlsx b/tests/tools/prices/test_convert_data.xlsx similarity index 100% rename from tests/prices/test_convert_data.xlsx rename to tests/tools/prices/test_convert_data.xlsx diff --git a/tests/tools/test_changefreq_fromexcel.py.bak b/tests/tools/test_changefreq_fromexcel.py.bak index fa80891..1d7d70b 100644 --- a/tests/tools/test_changefreq_fromexcel.py.bak +++ b/tests/tools/test_changefreq_fromexcel.py.bak @@ -1,6 +1,6 @@ import functools from pathlib import Path -from typing import Tuple, Union +from typing import Tuple import pandas as pd import pytest @@ -578,7 +578,7 @@ def get_testframes( avg_or_sum: str, series_or_df: str, with_units: str, -) -> Tuple[Union[pd.DataFrame, pd.Series]]: +) -> Tuple[pd.DataFrame | pd.Series]: source_s = get_df_from_excel(source_freq, tz)[source_freq] if target_freq is None: target_s = source_s diff --git a/tests/tools/test_freq.py b/tests/tools/test_freq.py index a6224e2..545e8ba 100644 --- a/tests/tools/test_freq.py +++ b/tests/tools/test_freq.py @@ -1,5 +1,3 @@ -from typing import Union - import numpy as np import pandas as pd import pytest @@ -19,12 +17,11 @@ def test_longestshortestfreq(count): @pytest.mark.parametrize("freq1", freqs_small_to_large) @pytest.mark.parametrize("freq2", freqs_small_to_large) -def test_frequpordown_freqlongerorshorter(freq1, freq2): +def test_frequpordown(freq1, freq2): i1 = freqs_small_to_large.index(freq1) i2 = freqs_small_to_large.index(freq2) outcome = np.sign(i1 - i2) assert tools.freq.up_or_down(freq1, freq2) == outcome - assert tools.freq.longer_or_shorter(freq1, freq2) == outcome @pytest.mark.parametrize("tz", [None, "Europe/Berlin", "Asia/Kolkata"]) @@ -148,7 +145,7 @@ def test_setfreq( num: int, wanted: str, strict: bool, - expected: Union[str, Exception], + expected: str | Exception, indexorframe: str, ): i = pd.date_range("2020", periods=num, freq=freq) diff --git a/tests/tools/test_hedge.py b/tests/tools/test_hedge.py new file mode 100644 index 0000000..38b9dba --- /dev/null +++ b/tests/tools/test_hedge.py @@ -0,0 +1,148 @@ +from pathlib import Path + +import numpy as np +import pandas as pd +import pytest + +from portfolyo import testing, tools + + +@pytest.mark.parametrize("how", ["vol", "val"]) +@pytest.mark.parametrize( + "w_vals,start,w_expected", + [ + ([1, 2, 3], "2020-01-01", 2), + (range(12), "2020-01-01", 5.5), + ([*[10] * (23 + 8), *[15] * 5], "2020-03-29", 10.69444), + ([*[10] * (25 + 8), *[15] * 5], "2020-10-25", 10.65789), + ], +) +def test_onehedge_uniformpricesandduration(w_vals, start, w_expected, how): + """Test hedge with uniform prices and durations.""" + i = pd.date_range(start, freq="H", periods=len(w_vals), tz="Europe/Berlin") + df = pd.DataFrame({"w": w_vals, "p": 100.0}, i) + df["duration"] = tools.duration.index(i) + + result = tools.hedge.one_hedge(df, how=how) + expected = pd.Series({"w": w_expected, "p": 100.0}) + testing.assert_series_equal(result, expected) + + +@pytest.mark.parametrize("how", ["vol", "val"]) +@pytest.mark.parametrize( + "w_vals,start,w_expected,tz", + [ + ([1, 2], "2020-01-01", 1.483333333, None), # 29 days in Feb + ([1, 2], "2021-01-01", 1.474576271, None), # 28 days in Feb + (range(12), "2020-01-01", 5.51366120, None), # no DST + (range(12), "2020-01-01", 5.514458106, "Europe/Berlin"), # DST + ], +) +def test_onehedge_uniformprices(w_vals, start, w_expected, how, tz): + """Test hedge with uniform prices but distinct durations.""" + i = pd.date_range(start, freq="MS", periods=len(w_vals), tz=tz) + df = pd.DataFrame({"w": w_vals, "p": 100.0}, i) + df["duration"] = tools.duration.index(i) + + result = tools.hedge.one_hedge(df, how=how) + expected = pd.Series({"w": w_expected, "p": 100.0}) + testing.assert_series_equal(result, expected) + + +@pytest.mark.parametrize("how", ["vol", "val"]) +@pytest.mark.parametrize( + "w_vals,p_vals,start,p_expected,w_expected_vol,w_expected_val,tz", + [ + ( + [1, 2], + [100, 200], + "2020-01-01", + 148.333333333, + 1.4833333, + 1.651685393, + None, + ), # 29 days in Feb + ( + [1, 2], + [100, 200], + "2021-01-01", + 147.4576271, + 1.474576271, + 1.643678161, + None, + ), # 28 days in Feb + ( + np.arange(12), + np.arange(12) * 100, + "2020-01-01", + 551.366120, + 5.51366120, + 7.673934589, + None, + ), # no DST + ( + np.arange(12), + np.arange(12) * 100, + "2020-01-01", + 551.4458106, + 5.514458106, + 7.674415244, + "Europe/Berlin", + ), # DST + ], +) +def test_onehedge( + w_vals, p_vals, start, w_expected_val, w_expected_vol, p_expected, how, tz +): + """Test value hedge.""" + i = pd.date_range(start, freq="MS", periods=len(w_vals), tz=tz) + df = pd.DataFrame({"w": w_vals, "p": p_vals}, i) + df["duration"] = tools.duration.index(i) + + result = tools.hedge.one_hedge(df, how=how) + w_expected = w_expected_val if how == "val" else w_expected_vol + expected = pd.Series({"w": w_expected, "p": p_expected}) + testing.assert_series_equal(result, expected) + + +@pytest.mark.parametrize("withunits", ["units", "nounits"]) +@pytest.mark.parametrize("how", ["vol", "val"]) +@pytest.mark.parametrize("bpo", ["b", "po"]) +@pytest.mark.parametrize("aggfreq", ["MS", "QS", "AS"]) +@pytest.mark.parametrize("freq", ["H", "D"]) +@pytest.mark.parametrize("tz", [None, "Europe/Berlin"]) +def test_hedge_fromexcel(tz, freq, aggfreq, bpo, how, withunits): + """Test if hedge results are correctly calculated, by comparing against previously calculated results.""" + if freq == "D" and bpo == "po": + pytest.skip("Don't decompose in peak and offpeak if daily values") + + path = Path(__file__).parent / "test_hedge_data.xlsx" + sheetname = f'{freq}_{"None" if tz is None else tz.replace("/", "")}' + peak_fn = tools.product.germanpower_peakfn if bpo == "po" else None + + # Input data. + dfin = pd.read_excel(path, sheetname, header=6, index_col=0, usecols="A,B:C") + if tz: + dfin = dfin.tz_localize(tz, ambiguous="infer") + dfin.index.freq = pd.infer_freq(dfin.index) + win, pin = dfin.w, dfin.p + if withunits == "units": + win = win.astype("pint[MW]") + pin = pin.astype("pint[Eur/MWh]") + + # Expected output data. + dfout = pd.read_excel(path, f"{sheetname}_out", header=[3, 4, 5, 6], index_col=0) + if tz: + dfout = dfout.tz_localize(tz, ambiguous="infer") + dfout.index.freq = pd.infer_freq(dfout.index) + w_expected = dfout[aggfreq][bpo == "po"][how]["w"] + p_expected = dfout[aggfreq][bpo == "po"].iloc[:, 0] # price is first column + if withunits == "units": + w_expected = w_expected.astype("pint[MW]") + p_expected = p_expected.astype("pint[Eur/MWh]") + + # Test output data. + w_result, p_result = tools.hedge.hedge(win, pin, how, peak_fn, aggfreq) + + testing.assert_series_equal(p_result, p_expected, check_names=False) + testing.assert_series_equal(w_result, w_expected, check_names=False) diff --git a/tests/prices/test_hedge_data.xlsx b/tests/tools/test_hedge_data.xlsx similarity index 100% rename from tests/prices/test_hedge_data.xlsx rename to tests/tools/test_hedge_data.xlsx diff --git a/tests/tools/test_intersect.py b/tests/tools/test_intersect.py index fed0837..4a7c6a6 100644 --- a/tests/tools/test_intersect.py +++ b/tests/tools/test_intersect.py @@ -1,4 +1,4 @@ -from typing import Iterable, List, Union +from typing import Iterable, List import pandas as pd import pytest @@ -45,7 +45,7 @@ def get_idx( def get_frames( idxs: Iterable[pd.DatetimeIndex], ref_idx: pd.DatetimeIndex = None -) -> List[Union[pd.Series, pd.DataFrame]]: +) -> List[pd.Series | pd.DataFrame]: frames = [] for i, idx in enumerate(idxs): # Get data. @@ -160,7 +160,7 @@ def test_intersect_nooverlap(indexorframe: str, tz: str, freq: str, starttime: s def do_test_intersect( indexorframe: str, idxs: Iterable[pd.DatetimeIndex], - expected_startdate: Union[str, Exception], + expected_startdate: str | Exception, expected_starttime: str = None, expected_tz: str = None, expected_freq: str = None, @@ -183,7 +183,7 @@ def do_test_intersect( def do_test_intersect_index( idxs: Iterable[pd.DatetimeIndex], - expected_startdate: Union[str, Exception], + expected_startdate: str | Exception, expected_starttime: str = None, expected_tz: str = None, expected_freq: str = None, @@ -205,7 +205,7 @@ def do_test_intersect_index( def do_test_intersect_frame( idxs: Iterable[pd.DatetimeIndex], - expected_startdate: Union[str, Exception], + expected_startdate: str | Exception, expected_starttime: str = None, expected_tz: str = None, expected_freq: str = None, diff --git a/tests/tools/test_intersect_flex.py b/tests/tools/test_intersect_flex.py index 29e1281..fab118a 100644 --- a/tests/tools/test_intersect_flex.py +++ b/tests/tools/test_intersect_flex.py @@ -1,4 +1,4 @@ -from typing import Iterable, Union +from typing import Iterable import pandas as pd import pytest @@ -211,7 +211,7 @@ def test_ignore_all( # indexorframe: str, def do_test_intersect( indexorframe: str, idxs: Iterable[pd.DatetimeIndex], - expected_startdate: Union[str, Exception], + expected_startdate: str | Exception, expected_starttime: str = None, expected_tz: str = None, expected_freq: str = None, @@ -242,7 +242,7 @@ def do_test_intersect( def do_test_intersect_index( idxs: Iterable[pd.DatetimeIndex], - expected_startdate: Union[str, Exception], + expected_startdate: str | Exception, expected_starttime: str = None, expected_tz: str = None, expected_freq: str = None, diff --git a/tests/tools/test_isboundary.py b/tests/tools/test_isboundary.py index c75dd90..ce1f505 100644 --- a/tests/tools/test_isboundary.py +++ b/tests/tools/test_isboundary.py @@ -1,5 +1,5 @@ import datetime as dt -from typing import Iterable, Union +from typing import Iterable import pandas as pd import pytest @@ -257,7 +257,7 @@ def test_isboundary_index( periods: int, tz: str, freq: str, - expected_repeat: Union[int, Iterable[int]], + expected_repeat: int | Iterable[int], ): """Test if boundary timestamps are correctly identified in index.""" ts = f"{date} {start_time}" @@ -272,7 +272,7 @@ def test_isboundary_index_dst( i_freq: str, periods: int, freq: str, - expected_repeat: Union[int, Iterable[int]], + expected_repeat: int | Iterable[int], ): """Test if boundary timestamps are correctly identified in index during dst-transition.""" do_test_index(ts, i_freq, periods, "Europe/Berlin", freq, expected_repeat, 0) @@ -288,7 +288,7 @@ def test_isboundary_index_midyear( i_freq: str, periods: int, freq: str, - expected_repeat: Union[int, Iterable[int]], + expected_repeat: int | Iterable[int], ): """Test if boundary timestamps are correctly identified in index when we don't start at beginning of year.""" ts = f"{date} {start_time}" @@ -308,7 +308,7 @@ def test_isboundary_index_leadingzero( periods: int, tz: str, freq: str, - expected_repeat: Union[int, Iterable[int]], + expected_repeat: int | Iterable[int], leading_zeros: int, ): """Test if boundary timestamps are correctly identified in index when we first have some zeros.""" diff --git a/tests/tools/test_peakconvert.py b/tests/tools/test_peakconvert.py new file mode 100644 index 0000000..0b7eff9 --- /dev/null +++ b/tests/tools/test_peakconvert.py @@ -0,0 +1,119 @@ +import datetime as dt + +import pandas as pd +import pytest + +from portfolyo import tools + +f_germanpower = tools.peakfn.factory(dt.time(hour=8), dt.time(hour=20)) + + +@pytest.mark.parametrize("withunits", ["units", "nounits"]) +@pytest.mark.parametrize("testcol", ["base", "peak", "offpeak"]) +@pytest.mark.parametrize( + "bpoframe", + [ + pd.DataFrame( + { + "peak": [100.0, 100, 100, 100], + "base": [80.0, 80, 80, 80], + "offpeak": [68.2051282, 69.4736842, 68.9770355, 68.421053], + }, + pd.date_range("2020", periods=4, freq="MS", tz="Europe/Berlin"), + ), + pd.DataFrame( + { + "peak": [100.0, 100, 100, 100], + "base": [80.0, 80, 80, 80], + "offpeak": [68.8510638, 68.8699360, 68.9361702, 68.9361702], + }, + pd.date_range("2020", periods=4, freq="AS", tz="Europe/Berlin"), + ), + ], +) +def test_completebpoframe_averagable(bpoframe, testcol: str, withunits: str): + """Test if missing column can be reconstructed.""" + if withunits == "units": + bpoframe = bpoframe.astype("pint[Eur/MWh]") + df = bpoframe.drop(columns=testcol) + result = tools.peakconvert.complete_bpoframe(df, f_germanpower, is_summable=False) + tools.testing.assert_frame_equal(result, bpoframe) + + +@pytest.mark.parametrize("withunits", ["units", "nounits"]) +@pytest.mark.parametrize("testcol", ["base", "peak", "offpeak"]) +@pytest.mark.parametrize( + "bpoframe", + [ + pd.DataFrame( + { + "peak": [100.0, 100, 100, 100], + "base": [280.0, 180, 80, 380], + "offpeak": [180, 80, -20, 280], + }, + pd.date_range("2020", periods=4, freq="MS", tz="Europe/Berlin"), + ), + pd.DataFrame( + { + "peak": [100.0, 100, 100, 100], + "base": [280.0, 180, 80, 380], + "offpeak": [180, 80, -20, 280], + }, + pd.date_range("2020", periods=4, freq="AS", tz="Europe/Berlin"), + ), + ], +) +def test_completebpoframe_summable(bpoframe, testcol: str, withunits: str): + """Test if missing column can be reconstructed.""" + if withunits == "units": + bpoframe = bpoframe.astype("pint[Eur/MWh]") + df = bpoframe.drop(columns=testcol) + result = tools.peakconvert.complete_bpoframe(df, f_germanpower, is_summable=True) + tools.testing.assert_frame_equal(result, bpoframe) + + +@pytest.mark.parametrize("tz", [None, "Europe/Berlin"]) +@pytest.mark.parametrize("withunits", ["units", "nounits"]) +@pytest.mark.parametrize("testcol", ["base", "peak", "offpeak"]) +@pytest.mark.parametrize( + ("b", "p", "o", "o_EuropeBerlin", "ts_left", "freq"), + [ + (100, 100, 100, None, "2020-01-01", "MS"), # 31 days, 23 working days + (100, 200, 41.02564103, None, "2020-01-01", "MS"), + (100, 300, -17.94871795, None, "2020-01-01", "MS"), + (100, 100, 100, None, "2020-01-01", "QS"), # 91 days, 65 working days + (100, 200, 44.44444444, 44.40484676, "2020-01-01", "QS"), + (100, 300, -11.11111111, -11.19030649, "2020-01-01", "QS"), + (100, 100, 100, None, "2020-01-01", "D"), # weekday + (100, 200, 0, None, "2020-01-01", "D"), # weekday + (100, 300, -100, None, "2020-01-01", "D"), # weekday + ], +) +def test_moreconversions_averagable( + b: float, + p: float, + o: float, + ts_left: str, + freq: str, + withunits: str, + tz: str, + o_EuropeBerlin: float, + testcol: str, +): + """Test if base, peak and offpeak values can be calculated from single values.""" + # Handle timezone. + i = pd.date_range(ts_left, freq=freq, tz=tz, periods=1) + if tz is not None and o_EuropeBerlin is not None: + o = o_EuropeBerlin + + expected = pd.DataFrame({"peak": [p], "base": [b], "offpeak": [o]}, i).astype(float) + + # Handle units. + if withunits == "units": + expected = expected.astype("pint[MW]") + + df = expected.drop(columns=testcol) + + # Do testing. + result = tools.peakconvert.complete_bpoframe(df, f_germanpower, is_summable=False) + tools.testing.assert_frame_equal(result, expected) diff --git a/tests/tools/test_peakperiod.py b/tests/tools/test_peakfn.py similarity index 54% rename from tests/tools/test_peakperiod.py rename to tests/tools/test_peakfn.py index 4aa4066..df8a9e4 100644 --- a/tests/tools/test_peakperiod.py +++ b/tests/tools/test_peakfn.py @@ -15,7 +15,7 @@ def index(start: str, end: str, freq: str, tz: str) -> pd.DatetimeIndex: return pd.date_range(start, end, freq=freq, inclusive="left", tz=tz) -f_germanpower = tools.peakperiod.factory(dt.time(hour=8), dt.time(hour=20)) +f_germanpower = tools.peakfn.factory(dt.time(hour=8), dt.time(hour=20)) TESTCASES_GERMANPOWER = [ # end, freq, count, stretch ("2020-01-08", "15T", 5 * 12 * 4, (32, 79)), ("2020-01-08", "H", 5 * 12, (8, 19)), @@ -29,7 +29,7 @@ def index(start: str, end: str, freq: str, tz: str) -> pd.DatetimeIndex: ("2021", "AS", ValueError, None), ] -f_everyday_13half = tools.peakperiod.factory( +f_everyday_13half = tools.peakfn.factory( dt.time(hour=8), dt.time(hour=21, minute=30), [1, 2, 3, 4, 5, 6, 7] ) TESTCASES_13HALF = [ # end, freq, count, stretch @@ -43,7 +43,7 @@ def index(start: str, end: str, freq: str, tz: str) -> pd.DatetimeIndex: ("2021", "AS", ValueError, None), ] -f_workingdays_full = tools.peakperiod.factory(None, None, [1, 2, 3, 4, 5]) +f_workingdays_full = tools.peakfn.factory(None, None, [1, 2, 3, 4, 5]) TESTCASES_WORKINGDAYS = [ # end, freq, count, stretch ("2020-01-08", "15T", 5 * 24 * 4, (0, 72 * 4 - 1)), ("2020-01-08", "H", 5 * 24, (0, 72 - 1)), @@ -59,9 +59,7 @@ def index(start: str, end: str, freq: str, tz: str) -> pd.DatetimeIndex: ("2021", "AS", ValueError, None), ] -f_everyday_until6 = tools.peakperiod.factory( - None, dt.time(hour=6), [1, 2, 3, 4, 5, 6, 7] -) +f_everyday_until6 = tools.peakfn.factory(None, dt.time(hour=6), [1, 2, 3, 4, 5, 6, 7]) TESTCASES_EVERYDAY6 = [ # month, freq, tz, count, stretch (1, "15T", None, 31 * 6 * 4, (24 * 4, 30 * 4 - 1)), (1, "15T", "Europe/Berlin", 31 * 6 * 4, (24 * 4, 30 * 4 - 1)), @@ -111,14 +109,14 @@ def test_functioncreation( """Test if an error is raised when creating impossible functions.""" if type(expected) is type and issubclass(expected, Exception): with pytest.raises(expected): - tools.peakperiod.factory(peak_left, peak_right, isoweekdays) + tools.peakfn.factory(peak_left, peak_right, isoweekdays) else: - tools.peakperiod.factory(peak_left, peak_right, isoweekdays) + tools.peakfn.factory(peak_left, peak_right, isoweekdays) @pytest.mark.parametrize("tz", [None, "Europe/Berlin", "Asia/Kolkata"]) @pytest.mark.parametrize(("end", "freq", "count", "stretch"), TESTCASES_GERMANPOWER) -def test_peakperiod_germanpower( +def test_peakfn_germanpower( end: str, freq: str, tz: str, count: int, stretch: Iterable[int] ): """Test if the peak periods are correctly calculated.""" @@ -129,7 +127,7 @@ def test_peakperiod_germanpower( @pytest.mark.parametrize("tz", [None, "Europe/Berlin", "Asia/Kolkata"]) @pytest.mark.parametrize(("end", "freq", "count", "stretch"), TESTCASES_13HALF) -def test_peakperiod_everyday13half( +def test_peakfn_everyday13half( end: str, freq: str, tz: str, count: int, stretch: Iterable[int] ): """Test if the peak periods are correctly calculated.""" @@ -140,7 +138,7 @@ def test_peakperiod_everyday13half( @pytest.mark.parametrize("tz", [None, "Europe/Berlin", "Asia/Kolkata"]) @pytest.mark.parametrize(("end", "freq", "count", "stretch"), TESTCASES_WORKINGDAYS) -def test_peakperiod_workingdaysfull( +def test_peakfn_workingdaysfull( end: str, freq: str, tz: str, count: int, stretch: Iterable[int] ): """Test if the peak periods are correctly calculated.""" @@ -152,7 +150,7 @@ def test_peakperiod_workingdaysfull( @pytest.mark.parametrize( ("month", "freq", "tz", "count", "stretch"), TESTCASES_EVERYDAY6 ) -def test_peakperiod_everydayuntil6( +def test_peakfn_everydayuntil6( month: int, tz: str, freq: str, count: int, stretch: Iterable[int] ): """Test if the peak periods are correctly calculated.""" @@ -162,7 +160,7 @@ def test_peakperiod_everydayuntil6( def do_test( i: pd.DatetimeIndex, - f: tools.peakperiod.PeakFunction, + f: tools.peakfn.PeakFunction, count: int, stretch: Iterable[int] = None, ): @@ -182,3 +180,148 @@ def do_test( assert not peak.iloc[first - 1] if last != -1: assert not peak.iloc[last + 1] + + +@pytest.mark.parametrize(("tz", "mar_b_corr"), [(None, 0), ("Europe/Berlin", -1)]) +@pytest.mark.parametrize("month", [1, 2, 3]) +@pytest.mark.parametrize("freq", ["D", "MS", "QS", "AS"]) +@pytest.mark.parametrize( + ("year", "bp", "jan_1_weekday", "jan_p", "feb_p", "mar_p"), + [ + (2020, (366, 262), True, 23, 20, 22), + (2021, (365, 261), True, 21, 20, 23), + (2022, (365, 260), False, 21, 20, 23), + ], +) +def test_peakduration_longfreqs( + year, bp, jan_1_weekday, jan_p, feb_p, mar_p, tz, mar_b_corr, freq, month +): + """Test if the correct number of base, peak and offpeak hours are calculated. + bp = tuple with number of base days and days with peak hours; jan_p, feb_p, mar_p = + number of days with peak hours in each month; mar_b_corr = correction to number of + base HOURS.""" + + if month > 1 and freq != "MS": + pytest.skip("Feb and Mar are only checked on month-level here.") + + start = pd.Timestamp(f"{year}-{month}", tz=tz) + i = pd.date_range(start, freq=freq, periods=1) + + # Expected values. + if freq == "AS": + b = 24 * bp[0] + p = 12 * bp[1] + elif freq == "QS": + b = 24 * (31 + 28 + 31 + (bp[0] - 365)) + mar_b_corr + p = 12 * (jan_p + feb_p + mar_p) + elif freq == "MS": + if month == 1: + b = 24 * 31 + p = 12 * jan_p + elif month == 2: + b = 24 * (28 + (bp[0] - 365)) + p = 12 * feb_p + else: # month == 3: + b = 24 * 31 + mar_b_corr + p = 12 * mar_p + else: # freq == 'D' + b = 24 + p = 12 * jan_1_weekday + expected_b = pd.Series([float(b)], i, dtype="pint[h]", name="duration") + expected_p = pd.Series([float(p)], i, dtype="pint[h]", name="duration") + expected_o = expected_b - expected_p + + result_b = tools.duration.index(i) + result_p = tools.peakfn.peak_duration(i, f_germanpower) + result_o = tools.peakfn.offpeak_duration(i, f_germanpower) + + # Test values. + tools.testing.assert_series_equal(expected_b, result_b) + tools.testing.assert_series_equal(expected_p, result_p) + tools.testing.assert_series_equal(expected_o, result_o) + + +@pytest.mark.parametrize( + "i,duration,peakduration", + [ + # Quarters + ( + pd.date_range("2020", freq="QS", periods=2, tz=None), + [(31 + 29 + 31) * 24, (30 + 31 + 30) * 24], + [(23 + 20 + 22) * 12, (22 + 21 + 22) * 12], + ), + ( + pd.date_range("2020", freq="QS", periods=2, tz="Europe/Berlin"), + [(31 + 29 + 31) * 24 - 1, (30 + 31 + 30) * 24], + [(23 + 20 + 22) * 12, (22 + 21 + 22) * 12], + ), + # Months + ( + pd.date_range("2020", freq="MS", periods=3, tz=None), + [31 * 24, 29 * 24, 31 * 24], + [23 * 12, 20 * 12, 22 * 12], + ), + ( + pd.date_range("2020", freq="MS", periods=3, tz="Europe/Berlin"), + [31 * 24, 29 * 24, 31 * 24 - 1], + [23 * 12, 20 * 12, 22 * 12], + ), + # Days + ( + pd.date_range("2020", freq="D", periods=7, tz=None), + [24] * 7, + [12, 12, 12, 0, 0, 12, 12], + ), + # . End-of-March: DST (if observed in tz) + ( + pd.date_range("2020-03-25", freq="D", periods=7, tz=None), + [24, 24, 24, 24, 24, 24, 24], + [12, 12, 12, 0, 0, 12, 12], + ), + ( + pd.date_range("2020-03-25", freq="D", periods=7, tz="Europe/Berlin"), + [24, 24, 24, 24, 23, 24, 24], + [12, 12, 12, 0, 0, 12, 12], + ), + # Hours + ( + pd.date_range("2020", freq="H", periods=48, tz=None), + [1] * 48, + [*[0] * 8, *[1] * 12, *[0] * 12, *[1] * 12, *[0] * 4], + ), + # . End-of-March: DST (if observed in tz) + ( + pd.date_range("2020-03-29", freq="H", periods=48, tz=None), + [1] * 48, + [*[0] * 32, *[1] * 12, *[0] * 4], + ), + ( + pd.date_range("2020-03-29", freq="H", periods=47, tz="Europe/Berlin"), + [1] * 47, + [*[0] * 31, *[1] * 12, *[0] * 4], + ), + # Quarterhours + ( + pd.date_range("2020", freq="15T", periods=192, tz=None), + [0.25] * 192, + [*[0] * 32, *[0.25] * 48, *[0] * 48, *[0.25] * 48, *[0] * 16], + ), + ], +) +@pytest.mark.parametrize("what", ["base", "peak", "offpeak"]) +def test_peakduration_allfreqs( + i: pd.DatetimeIndex, duration: Iterable, peakduration: Iterable, what: str +): + """Test if peak duration is correctly calculated for all frequencies.""" + if what == "duration": + values = duration + result = tools.duration.index(i) + elif what == "peak": + values = peakduration + result = tools.peakfn.peak_duration(i, f_germanpower) + else: # 'offpeak' + values = (b - p for b, p in zip(duration, peakduration)) + result = tools.peakfn.offpeak_duration(i, f_germanpower) + + expected = pd.Series(values, i, dtype=float).astype("pint[h]").rename("duration") + tools.testing.assert_series_equal(result, expected) diff --git a/tests/prices/test_utils.py b/tests/tools/test_product.py similarity index 54% rename from tests/prices/test_utils.py rename to tests/tools/test_product.py index 866b888..aabaa15 100644 --- a/tests/prices/test_utils.py +++ b/tests/tools/test_product.py @@ -4,99 +4,6 @@ import pytest from portfolyo import tools -from portfolyo.prices import utils - -# TODO: where are the hedge and conversion tests?? --> check git history - -TESTCASES_ISPEAK = [ # ts, ispeak - ("2020-01-01 01:00", False), - ("2020-01-01 07:00", False), - ("2020-01-01 08:00", True), - ("2020-01-01 19:00", True), - ("2020-01-01 20:00", False), - ("2020-01-03 07:45", False), - ("2020-01-03 08:00", True), - ("2020-01-03 19:45", True), - ("2020-01-03 20:00", False), - ("2020-01-04 07:45", False), - ("2020-01-04 08:00", False), - ("2020-01-04 19:45", False), - ("2020-01-04 20:00", False), - ("2020-01-05 07:45", False), - ("2020-01-05 08:00", False), - ("2020-01-05 19:45", False), - ("2020-01-05 20:00", False), - ("2020-03-29 01:00", False), - ("2020-03-29 03:00", False), - ("2020-10-25 01:00", False), - ("2020-10-25 03:00", False), -] - - -@pytest.mark.parametrize("tz", [None, "Europe/Berlin"]) -@pytest.mark.parametrize(("ts", "ispeak"), TESTCASES_ISPEAK) -def test_is_peak_hour(ts, tz, ispeak): - """Test if individual timestamps are correctly identified as laying inside the peak - hour periods.""" - ts = pd.Timestamp(ts, tz=tz) - assert utils.is_peak_hour(ts) == ispeak - - -@pytest.mark.parametrize(("tz", "mar_b_corr"), [(None, 0), ("Europe/Berlin", -1)]) -@pytest.mark.parametrize("month", [1, 2, 3]) -@pytest.mark.parametrize("freq", ["D", "MS", "QS", "AS"]) -@pytest.mark.parametrize( - ("year", "bp", "jan_1_weekday", "jan_p", "feb_p", "mar_p"), - [ - (2020, (366, 262), True, 23, 20, 22), - (2021, (365, 261), True, 21, 20, 23), - (2022, (365, 260), False, 21, 20, 23), - ], -) -def test_duration( - year, bp, jan_1_weekday, jan_p, feb_p, mar_p, tz, mar_b_corr, freq, month -): - """Test if the correct number of base, peak and offpeak hours are calculated. - bp = tuple with number of base days and days with peak hours; jan_p, feb_p, mar_p = - number of days with peak hours in each month; mar_b_corr = correction to number of - base HOURS.""" - - if tz is None: - return # TODO: make sure the duration_base, duration_peak etc functions accept timezone-agnostic data - - if month > 1 and freq != "MS": - return - - start = pd.Timestamp(f"{year}-{month}", tz=tz) - - # Expected values. - if freq == "AS": - b = 24 * bp[0] - p = 12 * bp[1] - elif freq == "QS": - b = 24 * (31 + 28 + 31 + (bp[0] - 365)) + mar_b_corr - p = 12 * (jan_p + feb_p + mar_p) - elif freq == "MS": - if month == 1: - b = 24 * 31 - p = 12 * jan_p - elif month == 2: - b = 24 * (28 + (bp[0] - 365)) - p = 12 * feb_p - else: # month == 3: - b = 24 * 31 + mar_b_corr - p = 12 * mar_p - else: # freq == 'D' - b = 24 - p = 12 * jan_1_weekday - b = tools.unit.Q_(b, "hours") - p = tools.unit.Q_(p, "hours") - o = b - p - - # Test values. - assert b == utils.duration_base(start, freq) - assert p == utils.duration_peak(start, freq) - assert o == utils.duration_offpeak(start, freq) @pytest.mark.parametrize( @@ -183,7 +90,9 @@ def test_deliveryperiod( else: start_of_day = dt.time(hour=0) expected_left = pd.Timestamp(f"{expected_left} {starttime}", tz=tz) - ts_deliv = utils.delivery_period(ts_trade, period_type, period_start, start_of_day) + ts_deliv = tools.product.delivery_period( + ts_trade, period_type, period_start, start_of_day + ) assert ts_deliv[0] == expected_left try: add = {"m": 1, "q": 3, "s": 6, "a": 12}[period_type] diff --git a/tests/tools/test_wavg.py b/tests/tools/test_wavg.py index 2fe2e5d..120dd0f 100644 --- a/tests/tools/test_wavg.py +++ b/tests/tools/test_wavg.py @@ -1,4 +1,4 @@ -from typing import Any, Iterable, Union +from typing import Any, Iterable import numpy as np import pandas as pd @@ -57,7 +57,7 @@ def get_index(number: int, indextype: str) -> Iterable: def do_test_series( - values: Union[pd.Series, pd.DataFrame], weights: Any, expected: Any, **kwargs + values: pd.Series | pd.DataFrame, weights: Any, expected: Any, **kwargs ): if isinstance(expected, type) and issubclass(expected, Exception): with pytest.raises(expected): diff --git a/tests/visualize/test_plot.py b/tests/tools/visualize/test_plot.py similarity index 82% rename from tests/visualize/test_plot.py rename to tests/tools/visualize/test_plot.py index 1b15d8a..16913c7 100644 --- a/tests/visualize/test_plot.py +++ b/tests/tools/visualize/test_plot.py @@ -1,20 +1,20 @@ """Test if portfolio line can be plotted.""" -import pytest +import matplotlib.pyplot as plt import pandas as pd +import pytest + import portfolyo as pf -from portfolyo.core.pfline.enums import Kind -from portfolyo.core.pfstate.pfstate import PfState -import matplotlib.pyplot as plt +from portfolyo import Kind, PfState @pytest.mark.parametrize("levels", [1, 2, 3]) @pytest.mark.parametrize("childcount", [1, 2, 3]) -@pytest.mark.parametrize("children", ["True", "False"]) +@pytest.mark.parametrize("children", [True, False]) @pytest.mark.parametrize("kind", [Kind.VOLUME, Kind.PRICE, Kind.REVENUE, Kind.COMPLETE]) @pytest.mark.parametrize("freq", ["MS", "D"]) def test_pfline_plot( - levels: int, childcount: int, children: str, kind: Kind, freq: str + levels: int, childcount: int, children: bool, kind: Kind, freq: str ): """Test if data can be plotted with plot() function.""" index = pd.date_range("2020-01-01", "2021-01-01", freq=freq, tz=None) @@ -23,11 +23,11 @@ def test_pfline_plot( @pytest.mark.parametrize("childcount", [1, 2, 3]) -@pytest.mark.parametrize("children", ["True", "False"]) +@pytest.mark.parametrize("children", [True, False]) @pytest.mark.parametrize("freq", ["MS", "D"]) def test_pfstate_plot( childcount: int, - children: str, + children: bool, freq: str, ): """Test if pfstate can be plotted with plot() function.""" @@ -45,18 +45,18 @@ def test_pfstate_plot( pfs.plot(children=children) -@pytest.mark.parametrize("children", ["True", "False"]) -def test_flatpfline_plot(children: str): +@pytest.mark.parametrize("children", [True, False]) +def test_flatpfline_plot(children: bool): """Test if plotting flatpfline with children attribute gives an error.""" pfl = pf.dev.get_flatpfline() pfl.plot(children=children) @pytest.mark.parametrize("freq", ["MS", "D"]) -@pytest.mark.parametrize("children", ["True", "False"]) +@pytest.mark.parametrize("children", [True, False]) @pytest.mark.parametrize("levels", [1, 2, 3]) @pytest.mark.parametrize("childcount", [1, 2, 3]) -def test_plot_to_ax(levels: int, childcount: int, children: str, freq: str): +def test_plot_to_ax(levels: int, childcount: int, children: bool, freq: str): """Test if frunction plot_to_ax works with every kind of pfline.""" index = pd.date_range("2020-01-01", "2021-01-01", freq=freq, tz=None) pfl_compl = pf.dev.get_pfline( @@ -71,7 +71,7 @@ def test_plot_to_ax(levels: int, childcount: int, children: str, freq: str): pfl_rev = pf.dev.get_pfline( index, nlevels=levels, childcount=childcount, kind=Kind.REVENUE ) - fig, axs = plt.subplots(2, 2) + _, axs = plt.subplots(2, 2) with pytest.raises(ValueError): _ = pfl_compl.plot_to_ax(axs[0][0], children=children, kind=Kind.COMPLETE) pfl_vol.plot_to_ax(axs[0][1], children=children, kind=Kind.VOLUME) diff --git a/tests/core/shared/test_concat_error_cases.py b/tests/tools2/test_concat_error_cases.py similarity index 99% rename from tests/core/shared/test_concat_error_cases.py rename to tests/tools2/test_concat_error_cases.py index 4c8e8ff..e250fed 100644 --- a/tests/core/shared/test_concat_error_cases.py +++ b/tests/tools2/test_concat_error_cases.py @@ -3,7 +3,6 @@ import pandas as pd import pytest - from portfolyo import dev from portfolyo.core.pfline.enums import Kind from portfolyo.core.pfstate.pfstate import PfState diff --git a/tests/core/shared/test_concat_pfline.py b/tests/tools2/test_concat_pfline.py similarity index 100% rename from tests/core/shared/test_concat_pfline.py rename to tests/tools2/test_concat_pfline.py index 0a862dc..5e30722 100644 --- a/tests/core/shared/test_concat_pfline.py +++ b/tests/tools2/test_concat_pfline.py @@ -2,10 +2,10 @@ import pandas as pd import pytest + from portfolyo import dev from portfolyo.tools2 import concat - TESTCASES2 = [ # whole idx, freq, where ( ("2020-01-01", "2023-04-01"), diff --git a/tests/core/shared/test_concat_pfstate.py b/tests/tools2/test_concat_pfstate.py similarity index 100% rename from tests/core/shared/test_concat_pfstate.py rename to tests/tools2/test_concat_pfstate.py index 8f2c2de..6ca378b 100644 --- a/tests/core/shared/test_concat_pfstate.py +++ b/tests/tools2/test_concat_pfstate.py @@ -2,10 +2,10 @@ import pandas as pd import pytest + from portfolyo import dev from portfolyo.tools2 import concat - TESTCASES2 = [ # whole idx, freq, where ( ("2020-01-01", "2023-04-01"), diff --git a/tests/tools2/test_indexable.py b/tests/tools2/test_indexable.py index 6ca46ab..d757e31 100644 --- a/tests/tools2/test_indexable.py +++ b/tests/tools2/test_indexable.py @@ -1,4 +1,3 @@ -from typing import Union import pandas as pd import pytest @@ -23,7 +22,7 @@ def get_idx( def create_obj( series: pd.Series, name_obj: str -) -> Union[pd.DataFrame, pf.PfLine, pf.PfState]: +) -> pd.DataFrame | pf.PfLine | pf.PfState: if name_obj == "pfline": return pf.PfLine({"w": series}) elif name_obj == "pfstate": diff --git a/tests/utils.py b/tests/utils.py index bd14c9e..730ca65 100644 --- a/tests/utils.py +++ b/tests/utils.py @@ -1,4 +1,5 @@ """Create uniform ids for testcases.""" + from typing import Any, Dict import pandas as pd