From 4594d935a36a50317d1fdfda4f09f544984bc89e Mon Sep 17 00:00:00 2001 From: Brett Elliot Date: Thu, 9 Jan 2025 06:56:31 -0500 Subject: [PATCH 1/7] added test to confirm hat shorting more, when already short works. --- tests/test_drift_rebalancer.py | 41 +++++++++++++++++++++++++++++++--- 1 file changed, 38 insertions(+), 3 deletions(-) diff --git a/tests/test_drift_rebalancer.py b/tests/test_drift_rebalancer.py index f1483126c..deec3dca9 100644 --- a/tests/test_drift_rebalancer.py +++ b/tests/test_drift_rebalancer.py @@ -22,8 +22,8 @@ class MockStrategyWithDriftCalculationLogic(Strategy): - def __init__(self, *args, **kwargs): - super().__init__(*args, **kwargs) + def __init__(self, broker: BacktestingBroker, *args, **kwargs): + super().__init__(broker=broker, *args, **kwargs) self.orders = [] self.target_weights = {} self.drift_rebalancer_logic = DriftRebalancerLogic( @@ -96,7 +96,7 @@ def mock_add_positions(self): def test_calculate_absolute_drift(self, mocker): strategy = MockStrategyWithDriftCalculationLogic( - broker= self.backtesting_broker, + broker=self.backtesting_broker, drift_threshold=Decimal("0.05"), drift_type=DriftType.ABSOLUTE ) @@ -650,6 +650,41 @@ def mock_add_positions(self): assert df["target_value"].tolist() == [Decimal("-500"), Decimal("500")] assert df["drift"].tolist() == [Decimal("-1.0"), Decimal("0")] + def test_shorting_more_when_price_goes_up_short_something(self, mocker): + strategy = MockStrategyWithDriftCalculationLogic( + broker=self.backtesting_broker, + drift_threshold=Decimal("0.05"), + drift_type=DriftType.ABSOLUTE + ) + # patch the strategy so get_last_price returns 110 + mocker.patch.object(strategy, "get_last_price", return_value=110.0) + + target_weights = { + "AAPL": Decimal("-0.50"), + "USD": Decimal("0.50") + } + + def mock_add_positions(self): + self._add_position( + symbol="USD", + is_quote_asset=True, + current_quantity=Decimal("1500"), # original $1000 plus $500 from the short + current_value=Decimal("1500") + ) + self._add_position( + symbol="AAPL", + is_quote_asset=False, + current_quantity=Decimal("-5"), + current_value=Decimal("-550") + ) + + mocker.patch.object(DriftCalculationLogic, "_add_positions", mock_add_positions) + df = strategy.drift_rebalancer_logic.calculate(target_weights=target_weights) + + assert df["current_weight"].tolist() == [Decimal('-0.5789473684210526315789473684'), Decimal('1.578947368421052631578947368')] + assert df["target_value"].tolist() == [Decimal("-475"), Decimal("475")] + assert df["drift"].tolist() == [Decimal('0.0789473684210526315789473684'), Decimal('0')] + def test_calculate_absolute_drift_when_we_want_a_100_percent_short_position(self, mocker): strategy = MockStrategyWithDriftCalculationLogic( broker=self.backtesting_broker, From 21e39eebbeade637f11147c0af0f23746be209fe Mon Sep 17 00:00:00 2001 From: Brett Elliot Date: Thu, 9 Jan 2025 06:59:06 -0500 Subject: [PATCH 2/7] Remove assumption about the columns in csv data. --- tests/fixtures.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/tests/fixtures.py b/tests/fixtures.py index 4d7679379..838cf9c8b 100644 --- a/tests/fixtures.py +++ b/tests/fixtures.py @@ -49,8 +49,6 @@ def pandas_data_fixture() -> Dict[Asset, Data]: parse_dates=True, index_col=0, header=0, - usecols=[0, 1, 2, 3, 4, 6, 7], - names=["Date", "Open", "High", "Low", "Close", "Volume", "Dividends"], ) df = df.rename( columns={ From 91a95a6501c1b6f6c5be731b3ffaeb3ddb2b0757 Mon Sep 17 00:00:00 2001 From: Robert Grzesik Date: Mon, 13 Jan 2025 13:46:01 -0600 Subject: [PATCH 3/7] numpy fix and deploy --- setup.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/setup.py b/setup.py index 9929622e7..9a965eb2f 100644 --- a/setup.py +++ b/setup.py @@ -5,7 +5,7 @@ setuptools.setup( name="lumibot", - version="3.8.24", + version="3.8.25", author="Robert Grzesik", author_email="rob@lumiwealth.com", description="Backtesting and Trading Library, Made by Lumiwealth", @@ -21,7 +21,8 @@ "yfinance>=0.2.46", "matplotlib>=3.3.3", "quandl", - "numpy>=1.20.0", + # Numpy greater than 1.20.0 and less than 2 because v2 has compatibility issues with a few libraries + "numpy>=1.20.0, <2", "pandas>=2.2.0", "pandas_market_calendars>=4.3.1", "plotly>=5.18.0", From a16216dfd282b5e21d2c628468e210382d164259 Mon Sep 17 00:00:00 2001 From: Robert Grzesik Date: Tue, 14 Jan 2025 15:40:08 -0600 Subject: [PATCH 4/7] improved yahoo downloads for large amounts of assets --- lumibot/data_sources/data_source.py | 40 +++++---- lumibot/entities/bars.py | 8 +- lumibot/tools/yahoo_helper.py | 129 +++++++++++++++++++++------- setup.py | 2 +- 4 files changed, 127 insertions(+), 52 deletions(-) diff --git a/lumibot/data_sources/data_source.py b/lumibot/data_sources/data_source.py index b36512302..be85f47cb 100644 --- a/lumibot/data_sources/data_source.py +++ b/lumibot/data_sources/data_source.py @@ -2,6 +2,7 @@ from abc import ABC, abstractmethod from concurrent.futures import ThreadPoolExecutor, as_completed from datetime import datetime, timedelta +import traceback import time import pandas as pd @@ -307,8 +308,8 @@ def get_bars( length, timestep="minute", timeshift=None, - chunk_size=10, - max_workers=200, + chunk_size=2, + max_workers=2, quote=None, exchange=None, include_after_hours=True, @@ -316,33 +317,38 @@ def get_bars( """Get bars for the list of assets""" def process_chunk(chunk): - """Process a chunk of assets.""" chunk_result = {} for asset in chunk: - chunk_result[asset] = self.get_historical_prices( - asset, - length, - timestep=timestep, - timeshift=timeshift, - quote=quote, - exchange=exchange, - include_after_hours=include_after_hours, - ) + try: + chunk_result[asset] = self.get_historical_prices( + asset, + length, + timestep=timestep, + timeshift=timeshift, + quote=quote, + exchange=exchange, + include_after_hours=include_after_hours, + ) + + # Sleep to prevent rate limiting + time.sleep(0.1) + except Exception as e: + # Log once per asset to avoid spamming with a huge traceback + logging.warning(f"Error retrieving data for {asset.symbol}: {e}") + tb = traceback.format_exc() + logging.warning(tb) # This prints the traceback + chunk_result[asset] = None return chunk_result # Convert strings to Asset objects assets = [Asset(symbol=a) if isinstance(a, str) else a for a in assets] - # Chunking the assets + # Chunk the assets chunks = [assets[i : i + chunk_size] for i in range(0, len(assets), chunk_size)] - # Initialize ThreadPoolExecutor results = {} with ThreadPoolExecutor(max_workers=max_workers) as executor: - # Submit tasks futures = [executor.submit(process_chunk, chunk) for chunk in chunks] - - # Collect results as they complete for future in as_completed(futures): results.update(future.result()) diff --git a/lumibot/entities/bars.py b/lumibot/entities/bars.py index 27654e647..f18579b6f 100644 --- a/lumibot/entities/bars.py +++ b/lumibot/entities/bars.py @@ -112,11 +112,11 @@ def __init__(self, df, source, asset, quote=None, raw=None): self._raw = raw if "dividend" in df.columns: - df["price_change"] = df["close"].pct_change() - df["dividend_yield"] = df["dividend"] / df["close"] - df["return"] = df["dividend_yield"] + df["price_change"] + df.loc[:, "price_change"] = df["close"].pct_change() + df.loc[:, "dividend_yield"] = df["dividend"] / df["close"] + df.loc[:, "return"] = df["dividend_yield"] + df["price_change"] else: - df["return"] = df["close"].pct_change() + df.loc[:, "return"] = df["close"].pct_change() self.df = df diff --git a/lumibot/tools/yahoo_helper.py b/lumibot/tools/yahoo_helper.py index 9167b3473..005c16aae 100644 --- a/lumibot/tools/yahoo_helper.py +++ b/lumibot/tools/yahoo_helper.py @@ -1,6 +1,7 @@ import logging import os import pickle +import time from datetime import datetime, timedelta import pandas as pd @@ -11,6 +12,7 @@ from .helpers import get_lumibot_datetime INFO_DATA = "info" +INVALID_SYMBOLS = set() class _YahooData: @@ -91,6 +93,10 @@ def dump_pickle_file(symbol, type, data): @staticmethod def format_df(df, auto_adjust): + # Check if df is empty + if df is None or df.empty: + return df + if auto_adjust: del df["Adj Ratio"] del df["Close"] @@ -169,41 +175,104 @@ def get_symbol_last_price(symbol): return df["Close"].iloc[-1] - @staticmethod def download_symbol_data(symbol, interval="1d"): - ticker = yf.Ticker(symbol) - try: - if interval == "1m": - # Yahoo only supports 1 minute interval for past 7 days - df = ticker.history(interval=interval, start=get_lumibot_datetime() - timedelta(days=7), auto_adjust=False) - elif interval == "15m": - # Yahoo only supports 15 minute interval for past 60 days - df = ticker.history(interval=interval, start=get_lumibot_datetime() - timedelta(days=60), auto_adjust=False) - else: - df = ticker.history(interval=interval, period="max", auto_adjust=False) - except Exception as e: - logging.debug(f"Error while downloading symbol day data for {symbol}, returning empty dataframe for now.") - logging.debug(e) + """ + Attempts to download historical data from yfinance for the specified symbol and interval. + Retries on empty/None data in case of transient rate limits. + If all attempts fail, marks the symbol as invalid (added to INVALID_SYMBOLS) to skip it in future. + If symbol info is unavailable, we just skip timezone adjustments (do not return None). + """ + + # If we've already marked this symbol invalid, skip further calls + if symbol in INVALID_SYMBOLS: + logging.debug(f"{symbol} is already marked invalid. Skipping yfinance calls.") return None - # Adjust the time when we are getting daily stock data to the beginning of the day - # This way the times line up when backtesting daily data - info = YahooHelper.get_symbol_info(symbol) - if info.get("info") and info.get("info").get("market") == "us_market": - # Check if the timezone is already set, if not set it to the default timezone - if df.index.tzinfo is None: - df.index = df.index.tz_localize(info.get("info").get("exchangeTimezoneName")) - else: - df.index = df.index.tz_convert(info.get("info").get("exchangeTimezoneName")) - df.index = df.index.map(lambda t: t.replace(hour=16, minute=0)) - elif info.get("info") and info.get("info").get("market") == "ccc_market": - # Check if the timezone is already set, if not set it to the default timezone - if df.index.tzinfo is None: - df.index = df.index.tz_localize(info.get("info").get("exchangeTimezoneName")) + ticker = yf.Ticker(symbol) + + # --- HISTORICAL DATA RETRY LOGIC --- + max_retries = 3 + sleep_sec = 1 + df = None + + for attempt in range(1, max_retries + 1): + try: + if interval == "1m": + df = ticker.history( + interval=interval, + start=get_lumibot_datetime() - timedelta(days=7), + auto_adjust=False + ) + elif interval == "15m": + df = ticker.history( + interval=interval, + start=get_lumibot_datetime() - timedelta(days=60), + auto_adjust=False + ) + else: + df = ticker.history( + interval=interval, + period="max", + auto_adjust=False + ) + except Exception as e: + logging.debug(f"{symbol}: Exception from ticker.history(): {e}") + if attempt < max_retries: + logging.debug(f"{symbol}: Attempt {attempt} failed. Sleeping {sleep_sec}s, then retry.") + time.sleep(sleep_sec) + sleep_sec *= 2 + continue + else: + logging.debug(f"{symbol}: All {max_retries} attempts failed. Marking invalid.") + INVALID_SYMBOLS.add(symbol) + return None + + if df is None or df.empty: + logging.debug(f"{symbol}: Attempt {attempt} returned empty or None data.") + if attempt < max_retries: + logging.debug(f"{symbol}: Sleeping {sleep_sec}s, then retry.") + time.sleep(sleep_sec) + sleep_sec *= 2 + else: + logging.debug(f"{symbol}: Data still empty after {max_retries} attempts. Marking invalid.") + INVALID_SYMBOLS.add(symbol) + return None else: - df.index = df.index.tz_convert(info.get("info").get("exchangeTimezoneName")) - df.index = df.index.map(lambda t: t.replace(hour=23, minute=59)) + # Successfully got data, so break out of the loop + break + # --- SYMBOL INFO (OPTIONAL) --- + info = None + try: + info = YahooHelper.get_symbol_info(symbol) + except Exception as e: + logging.debug(f"{symbol}: Exception from get_symbol_info(): {e}") + + # If we have valid info, handle timezone adjustments. + # Using sub_info to avoid accessing .get() on None. + if info and isinstance(info, dict): + sub_info = info.get("info", {}) + if isinstance(sub_info, dict): + market = sub_info.get("market", "") + tz_name = sub_info.get("exchangeTimezoneName", None) + + # US market + if market == "us_market" and tz_name: + if df.index.tzinfo is None: + df.index = df.index.tz_localize(tz_name) + else: + df.index = df.index.tz_convert(tz_name) + df.index = df.index.map(lambda t: t.replace(hour=16, minute=0)) + + # Crypto/CCC market + elif market == "ccc_market" and tz_name: + if df.index.tzinfo is None: + df.index = df.index.tz_localize(tz_name) + else: + df.index = df.index.tz_convert(tz_name) + df.index = df.index.map(lambda t: t.replace(hour=23, minute=59)) + + # Finally, run any custom DataFrame processing df = YahooHelper.process_df(df, asset_info=info) return df diff --git a/setup.py b/setup.py index 9a965eb2f..6ab0eb97a 100644 --- a/setup.py +++ b/setup.py @@ -5,7 +5,7 @@ setuptools.setup( name="lumibot", - version="3.8.25", + version="3.8.26", author="Robert Grzesik", author_email="rob@lumiwealth.com", description="Backtesting and Trading Library, Made by Lumiwealth", From b6651d07bc3088e0c02b4f225187948b1468980a Mon Sep 17 00:00:00 2001 From: Robert Grzesik Date: Tue, 14 Jan 2025 23:40:17 -0600 Subject: [PATCH 5/7] small change to trigger github tests --- tests/backtest/test_polygon.py | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/backtest/test_polygon.py b/tests/backtest/test_polygon.py index 3feb59e6b..03544d9cb 100644 --- a/tests/backtest/test_polygon.py +++ b/tests/backtest/test_polygon.py @@ -81,6 +81,7 @@ def before_market_opens(self): underlying_asset = Asset(self.parameters["symbol"]) self.market_opens_called = True self.chains = self.get_chains(underlying_asset) + self.log_message(f"PolygonBacktestStrat: Market Opens: {self.get_datetime()}") def after_market_closes(self): orders = self.get_orders() From 2a9e73e5a4fa3fbf4e77f085675ad927a59e76cb Mon Sep 17 00:00:00 2001 From: Robert Grzesik Date: Tue, 14 Jan 2025 23:50:58 -0600 Subject: [PATCH 6/7] added tests for polygon --- tests/backtest/test_polygon.py | 88 +++++++++++++++++++++++++++++++++- 1 file changed, 86 insertions(+), 2 deletions(-) diff --git a/tests/backtest/test_polygon.py b/tests/backtest/test_polygon.py index 03544d9cb..490963ddd 100644 --- a/tests/backtest/test_polygon.py +++ b/tests/backtest/test_polygon.py @@ -81,7 +81,6 @@ def before_market_opens(self): underlying_asset = Asset(self.parameters["symbol"]) self.market_opens_called = True self.chains = self.get_chains(underlying_asset) - self.log_message(f"PolygonBacktestStrat: Market Opens: {self.get_datetime()}") def after_market_closes(self): orders = self.get_orders() @@ -307,7 +306,6 @@ def test_polygon_legacy_backtest2(self): def test_pull_source_symbol_bars_with_api_call(self, polygon_data_backtesting, mocker): """Test that polygon_helper.get_price_data_from_polygon() is called with the right parameters""" - # Only simulate first date mocker.patch.object( polygon_data_backtesting, @@ -391,3 +389,89 @@ def test_get_historical_prices(self): assert prices is not None assert_frame_equal(prices.df, expected_df, check_dtype=False, check_index_type=False) + + ######################################################################################## + # Below are the NEW TESTS added to verify that get_chains(), get_last_price(), and + # get_historical_prices() data has not changed after code modifications. + # We have NOT modified existing tests or code, only appended these tests. + ######################################################################################## + + @pytest.mark.skipif(POLYGON_API_KEY == '', reason="This test requires a Polygon.io API key") + def test_get_chains_spy_expected_data(self): + """ + Test that get_chains() returns the expected option chain data for SPY when the backtesting date is 2025-01-13. + Verifies key components such as: + - A multiplier of 100. + - An exchange value of 'BATO'. + - For expiry "2025-01-13" in both CALL and PUT chains, the first five strike prices and the last strike. + """ + tzinfo = pytz.timezone("America/New_York") + # Set up a dummy backtesting period; in this test we only care about the 'current' datetime. + start = datetime.datetime(2025, 1, 13).astimezone(tzinfo) + end = datetime.datetime(2025, 1, 31).astimezone(tzinfo) + data_source = PolygonDataBacktesting(start, end, api_key=POLYGON_API_KEY) + # Patch get_datetime() to return January 13, 2025 (10:00 AM local) + data_source.get_datetime = lambda: datetime.datetime(2025, 1, 13, 10, 0, 0, tzinfo=tzinfo) + asset = Asset("SPY") + chains = data_source.get_chains(asset) + # Check that the chains structure is not None and contains required keys + assert chains is not None, "Expected chains data to be non-None" + assert chains.get("Multiplier") == 100, "Expected multiplier to be 100" + assert chains.get("Exchange") == "BATO", "Expected exchange to be 'BATO'" + # Check that the chains include an entry for expiry "2025-01-13" in both CALL and PUT + expected_expiry = "2025-01-13" + assert expected_expiry in chains["Chains"]["CALL"], f"Expected expiry {expected_expiry} in CALL chain" + assert expected_expiry in chains["Chains"]["PUT"], f"Expected expiry {expected_expiry} in PUT chain" + # Verify specific strike values for the 2025-01-13 entry on both sides. + expected_first_five = [497, 498, 499, 500, 505] + expected_last = 685 + call_strikes = chains["Chains"]["CALL"][expected_expiry] + put_strikes = chains["Chains"]["PUT"][expected_expiry] + assert call_strikes[:5] == expected_first_five, f"CALL strikes for {expected_expiry} expected first five {expected_first_five}, got {call_strikes[:5]}" + assert put_strikes[:5] == expected_first_five, f"PUT strikes for {expected_expiry} expected first five {expected_first_five}, got {put_strikes[:5]}" + assert call_strikes[-1] == expected_last, f"CALL strikes for {expected_expiry} expected last strike {expected_last}, got {call_strikes[-1]}" + assert put_strikes[-1] == expected_last, f"PUT strikes for {expected_expiry} expected last strike {expected_last}, got {put_strikes[-1]}" + + @pytest.mark.skipif(POLYGON_API_KEY == '', reason="This test requires a Polygon.io API key") + def test_get_last_price_unchanged(self): + """ + Additional test to ensure get_last_price() is unaffected by code changes. + We expect AMZN's last price (on 2023-08-02 ~10AM) to be in a certain known range + based on historical data from Polygon. + """ + tzinfo = pytz.timezone("America/New_York") + start = datetime.datetime(2023, 8, 1).astimezone(tzinfo) + end = datetime.datetime(2023, 8, 4).astimezone(tzinfo) + + data_source = PolygonDataBacktesting(start, end, api_key=POLYGON_API_KEY) + # Pick a known date/time within our backtest window + data_source._datetime = datetime.datetime(2023, 8, 2, 10).astimezone(tzinfo) + + last_price = data_source.get_last_price(Asset("AMZN")) + # As in the main test, we expect a price in the 130-140 range. + assert last_price is not None, "Expected to get a price, got None" + assert 130.0 < last_price < 140.0, f"Expected AMZN price between 130 and 140 on 2023-08-02, got {last_price}" + + @pytest.mark.skipif(POLYGON_API_KEY == '', reason="This test requires a Polygon.io API key") + def test_get_historical_prices_unchanged_for_amzn(self): + """ + Additional test to ensure get_historical_prices() is unaffected by code changes. + We'll check that we can retrieve day bars for AMZN for 2 days leading up to 2023-08-02. + """ + tzinfo = pytz.timezone("America/New_York") + start = datetime.datetime(2023, 8, 1).astimezone(tzinfo) + end = datetime.datetime(2023, 8, 4).astimezone(tzinfo) + + data_source = PolygonDataBacktesting(start, end, api_key=POLYGON_API_KEY) + # Set the 'current' backtesting datetime + data_source._datetime = datetime.datetime(2023, 8, 2, 15).astimezone(tzinfo) + + # Retrieve 2 day-bars for AMZN + historical_bars = data_source.get_historical_prices("AMZN", 2, "day") + assert historical_bars is not None, "Expected some historical bars, got None" + df = historical_bars.df + assert df is not None and not df.empty, "Expected non-empty DataFrame for historical AMZN day bars" + assert len(df) == 2, f"Expected 2 day bars for AMZN, got {len(df)}" + # Just a sanity check to make sure the close is within a plausible range + assert df['close'].mean() < 150, "Unexpectedly high close for AMZN, data might have changed" + assert df['close'].mean() > 50, "Unexpectedly low close for AMZN, data might have changed" From 7350feccd9b42c47057df832cb870d669c4a0111 Mon Sep 17 00:00:00 2001 From: Robert Grzesik Date: Thu, 16 Jan 2025 04:06:13 -0600 Subject: [PATCH 7/7] added LUMIWEALTH_API_KEY to docs --- docs/_sources/deployment.rst.txt | 3 +++ docs/deployment.html | 20 +++++++++++------- docs/searchindex.js | 2 +- docsrc/_build/doctrees/deployment.doctree | Bin 114315 -> 115839 bytes docsrc/_build/doctrees/environment.pickle | Bin 3729845 -> 3731774 bytes .../_build/html/_sources/deployment.rst.txt | 3 +++ docsrc/_build/html/deployment.html | 20 +++++++++++------- docsrc/_build/html/searchindex.js | 2 +- docsrc/deployment.rst | 3 +++ 9 files changed, 35 insertions(+), 18 deletions(-) diff --git a/docs/_sources/deployment.rst.txt b/docs/_sources/deployment.rst.txt index 9c309f114..001ee9759 100644 --- a/docs/_sources/deployment.rst.txt +++ b/docs/_sources/deployment.rst.txt @@ -414,6 +414,9 @@ In addition to broker-specific secrets, the following environment variables are * - **Secret** - **Description** - **Example** + * - LUMIWEALTH_API_KEY + - Your API key from the BotSpot.trade website so that you can track your bot's performance. To get this API key, visit the `BotSpot.trade `_ website and add/create a bot. After creating the bot, you will receive an API key. + - 694rr2c8d9234b43a40fab494a79f5634ghd4f39d44ccf2e * - LIVE_CONFIG - Your live config file, only needed for strategies that have multiple configurations (there will be a folder named "configurations" in the src/ folder) and if you are running the strategy live. - paper_1 diff --git a/docs/deployment.html b/docs/deployment.html index 855b56621..f9544cca6 100644 --- a/docs/deployment.html +++ b/docs/deployment.html @@ -855,35 +855,39 @@

General Environment Variables

LIVE_CONFIG

+

LUMIWEALTH_API_KEY

+

Your API key from the BotSpot.trade website so that you can track your bot’s performance. To get this API key, visit the BotSpot.trade website and add/create a bot. After creating the bot, you will receive an API key.

+

694rr2c8d9234b43a40fab494a79f5634ghd4f39d44ccf2e

+ +

LIVE_CONFIG

Your live config file, only needed for strategies that have multiple configurations (there will be a folder named “configurations” in the src/ folder) and if you are running the strategy live.

paper_1

-

IS_BACKTESTING

+

IS_BACKTESTING

(Optional) Set to “True” to run the strategy in backtesting mode, set to “False” to run the strategy live (defaults to False).

False

-

POLYGON_API_KEY

+

POLYGON_API_KEY

(Optional) Your API key from your Polygon account, only needed if you are backtesting.

a7py0zIdhxde6QkX8OjjKNp7cD87hwKU

-

DISCORD_WEBHOOK_URL

+

DISCORD_WEBHOOK_URL

(Optional) Your Discord webhook URL, only needed if you want to send notifications to Discord. Learn how to get a Discord webhook URL here: Discord Webhooks

https://discord.com/api/webhooks/123456789/

-

DB_CONNECTION_STR

+

DB_CONNECTION_STR

(Optional) Your connection string to your account history database, only needed if you want to save your account history to a database.

sqlite:///account_history.db

-

STRATEGY_NAME

+

STRATEGY_NAME

(Optional) The name of the strategy. This will change the strategy_id in the database and in the Discord messages.

My Strategy

-

MARKET

+

MARKET

(Optional) The market you want the bot to think it is. Eg. “24/7” will make the bot think it is trading in a 24/7 market.

24/7

-

POLYGON_MAX_MEMORY_BYTES

+

POLYGON_MAX_MEMORY_BYTES

(Optional) The maximum memory in bytes that the Polygon API can use. This is useful for limiting memory usage during backtesting.

512000000

diff --git a/docs/searchindex.js b/docs/searchindex.js index 42565beb0..ec2cb7cbe 100644 --- a/docs/searchindex.js +++ b/docs/searchindex.js @@ -1 +1 @@ -Search.setIndex({"docnames": ["backtesting", "backtesting.backtesting_function", "backtesting.how_to_backtest", "backtesting.indicators_files", "backtesting.logs_csv", "backtesting.pandas", "backtesting.polygon", "backtesting.tearsheet_html", "backtesting.thetadata", "backtesting.trades_files", "backtesting.yahoo", "brokers", "brokers.alpaca", "brokers.ccxt", "brokers.interactive_brokers", "brokers.interactive_brokers_legacy", "brokers.tradier", "deployment", "entities", "entities.asset", "entities.bars", "entities.data", "entities.order", "entities.position", "entities.trading_fee", "getting_started", "index", "lifecycle_methods", "lifecycle_methods.after_market_closes", "lifecycle_methods.before_market_closes", "lifecycle_methods.before_market_opens", "lifecycle_methods.before_starting_trading", "lifecycle_methods.initialize", "lifecycle_methods.on_abrupt_closing", "lifecycle_methods.on_bot_crash", "lifecycle_methods.on_canceled_order", "lifecycle_methods.on_filled_order", "lifecycle_methods.on_new_order", "lifecycle_methods.on_parameters_updated", "lifecycle_methods.on_partially_filled_order", "lifecycle_methods.on_trading_iteration", "lifecycle_methods.summary", "lifecycle_methods.trace_stats", "lumibot.backtesting", "lumibot.data_sources", "lumibot.strategies", "lumibot.traders", "strategy_methods", "strategy_methods.account", "strategy_methods.account/lumibot.strategies.strategy.Strategy.get_cash", "strategy_methods.account/lumibot.strategies.strategy.Strategy.get_parameters", "strategy_methods.account/lumibot.strategies.strategy.Strategy.get_portfolio_value", "strategy_methods.account/lumibot.strategies.strategy.Strategy.get_position", "strategy_methods.account/lumibot.strategies.strategy.Strategy.get_positions", "strategy_methods.account/lumibot.strategies.strategy.Strategy.set_parameters", "strategy_methods.account/strategies.strategy.Strategy.get_cash", "strategy_methods.account/strategies.strategy.Strategy.get_parameters", "strategy_methods.account/strategies.strategy.Strategy.get_portfolio_value", "strategy_methods.account/strategies.strategy.Strategy.get_position", "strategy_methods.account/strategies.strategy.Strategy.get_positions", "strategy_methods.account/strategies.strategy.Strategy.set_parameters", "strategy_methods.chart", "strategy_methods.chart/lumibot.strategies.strategy.Strategy.add_line", "strategy_methods.chart/lumibot.strategies.strategy.Strategy.add_marker", "strategy_methods.chart/lumibot.strategies.strategy.Strategy.get_lines_df", "strategy_methods.chart/lumibot.strategies.strategy.Strategy.get_markers_df", "strategy_methods.chart/strategies.strategy.Strategy.add_line", "strategy_methods.chart/strategies.strategy.Strategy.add_marker", "strategy_methods.chart/strategies.strategy.Strategy.get_lines_df", "strategy_methods.chart/strategies.strategy.Strategy.get_markers_df", "strategy_methods.data", "strategy_methods.data/lumibot.strategies.strategy.Strategy.cancel_realtime_bars", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_historical_prices", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_historical_prices_for_assets", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_last_price", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_last_prices", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_next_trading_day", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_quote", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_realtime_bars", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_yesterday_dividend", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_yesterday_dividends", "strategy_methods.data/lumibot.strategies.strategy.Strategy.start_realtime_bars", "strategy_methods.datetime", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_datetime", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_datetime_range", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_last_day", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_last_minute", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_round_day", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_round_minute", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_timestamp", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.localize_datetime", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.to_default_timezone", "strategy_methods.datetime/strategies.strategy.Strategy.get_datetime", "strategy_methods.datetime/strategies.strategy.Strategy.get_datetime_range", "strategy_methods.datetime/strategies.strategy.Strategy.get_last_day", "strategy_methods.datetime/strategies.strategy.Strategy.get_last_minute", "strategy_methods.datetime/strategies.strategy.Strategy.get_round_day", "strategy_methods.datetime/strategies.strategy.Strategy.get_round_minute", "strategy_methods.datetime/strategies.strategy.Strategy.get_timestamp", "strategy_methods.datetime/strategies.strategy.Strategy.localize_datetime", "strategy_methods.datetime/strategies.strategy.Strategy.to_default_timezone", "strategy_methods.misc", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.await_market_to_close", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.await_market_to_open", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.get_parameters", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.log_message", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.set_market", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.sleep", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.update_parameters", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.wait_for_order_execution", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.wait_for_order_registration", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.wait_for_orders_execution", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.wait_for_orders_registration", "strategy_methods.misc/strategies.strategy.Strategy.await_market_to_close", "strategy_methods.misc/strategies.strategy.Strategy.await_market_to_open", "strategy_methods.misc/strategies.strategy.Strategy.get_parameters", "strategy_methods.misc/strategies.strategy.Strategy.log_message", "strategy_methods.misc/strategies.strategy.Strategy.set_market", "strategy_methods.misc/strategies.strategy.Strategy.sleep", "strategy_methods.misc/strategies.strategy.Strategy.update_parameters", "strategy_methods.misc/strategies.strategy.Strategy.wait_for_order_execution", "strategy_methods.misc/strategies.strategy.Strategy.wait_for_order_registration", "strategy_methods.misc/strategies.strategy.Strategy.wait_for_orders_execution", "strategy_methods.misc/strategies.strategy.Strategy.wait_for_orders_registration", "strategy_methods.options", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_chain", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_chains", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_expiration", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_greeks", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_multiplier", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_next_trading_day", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_strikes", "strategy_methods.options/lumibot.strategies.strategy.Strategy.options_expiry_to_datetime_date", "strategy_methods.options/strategies.strategy.Strategy.get_chain", "strategy_methods.options/strategies.strategy.Strategy.get_chains", "strategy_methods.options/strategies.strategy.Strategy.get_expiration", "strategy_methods.options/strategies.strategy.Strategy.get_greeks", "strategy_methods.options/strategies.strategy.Strategy.get_multiplier", "strategy_methods.options/strategies.strategy.Strategy.get_next_trading_day", "strategy_methods.options/strategies.strategy.Strategy.get_option_expiration_after_date", "strategy_methods.options/strategies.strategy.Strategy.get_strikes", "strategy_methods.options/strategies.strategy.Strategy.options_expiry_to_datetime_date", "strategy_methods.orders", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.cancel_open_orders", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.cancel_order", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.cancel_orders", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.create_order", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.get_asset_potential_total", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.get_order", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.get_orders", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.get_selling_order", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.sell_all", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.submit_order", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.submit_orders", "strategy_methods.orders/strategies.strategy.Strategy.cancel_open_orders", "strategy_methods.orders/strategies.strategy.Strategy.cancel_order", "strategy_methods.orders/strategies.strategy.Strategy.cancel_orders", "strategy_methods.orders/strategies.strategy.Strategy.create_order", "strategy_methods.orders/strategies.strategy.Strategy.get_asset_potential_total", "strategy_methods.orders/strategies.strategy.Strategy.get_order", "strategy_methods.orders/strategies.strategy.Strategy.get_orders", "strategy_methods.orders/strategies.strategy.Strategy.get_selling_order", "strategy_methods.orders/strategies.strategy.Strategy.sell_all", "strategy_methods.orders/strategies.strategy.Strategy.submit_order", "strategy_methods.orders/strategies.strategy.Strategy.submit_orders", "strategy_methods.parameters", "strategy_properties", "strategy_properties/lumibot.strategies.strategy.Strategy.cash", "strategy_properties/lumibot.strategies.strategy.Strategy.first_iteration", "strategy_properties/lumibot.strategies.strategy.Strategy.initial_budget", "strategy_properties/lumibot.strategies.strategy.Strategy.is_backtesting", "strategy_properties/lumibot.strategies.strategy.Strategy.last_on_trading_iteration_datetime", "strategy_properties/lumibot.strategies.strategy.Strategy.minutes_before_closing", "strategy_properties/lumibot.strategies.strategy.Strategy.minutes_before_opening", "strategy_properties/lumibot.strategies.strategy.Strategy.name", "strategy_properties/lumibot.strategies.strategy.Strategy.portfolio_value", "strategy_properties/lumibot.strategies.strategy.Strategy.pytz", "strategy_properties/lumibot.strategies.strategy.Strategy.quote_asset", "strategy_properties/lumibot.strategies.strategy.Strategy.sleeptime", "strategy_properties/lumibot.strategies.strategy.Strategy.timezone", "strategy_properties/lumibot.strategies.strategy.Strategy.unspent_money", "strategy_properties/lumibot.strategies.strategy.pytz", "strategy_properties/strategies.strategy.Strategy.cash", "strategy_properties/strategies.strategy.Strategy.first_iteration", "strategy_properties/strategies.strategy.Strategy.initial_budget", "strategy_properties/strategies.strategy.Strategy.is_backtesting", "strategy_properties/strategies.strategy.Strategy.last_on_trading_iteration_datetime", "strategy_properties/strategies.strategy.Strategy.minutes_before_closing", "strategy_properties/strategies.strategy.Strategy.minutes_before_opening", "strategy_properties/strategies.strategy.Strategy.name", "strategy_properties/strategies.strategy.Strategy.portfolio_value", "strategy_properties/strategies.strategy.Strategy.pytz", "strategy_properties/strategies.strategy.Strategy.quote_asset", "strategy_properties/strategies.strategy.Strategy.sleeptime", "strategy_properties/strategies.strategy.Strategy.timezone", "strategy_properties/strategies.strategy.Strategy.unspent_money", "vars"], "filenames": ["backtesting.rst", "backtesting.backtesting_function.rst", "backtesting.how_to_backtest.rst", "backtesting.indicators_files.rst", "backtesting.logs_csv.rst", "backtesting.pandas.rst", "backtesting.polygon.rst", "backtesting.tearsheet_html.rst", "backtesting.thetadata.rst", "backtesting.trades_files.rst", "backtesting.yahoo.rst", "brokers.rst", "brokers.alpaca.rst", "brokers.ccxt.rst", "brokers.interactive_brokers.rst", "brokers.interactive_brokers_legacy.rst", "brokers.tradier.rst", "deployment.rst", "entities.rst", "entities.asset.rst", "entities.bars.rst", "entities.data.rst", "entities.order.rst", "entities.position.rst", "entities.trading_fee.rst", "getting_started.rst", "index.rst", "lifecycle_methods.rst", "lifecycle_methods.after_market_closes.rst", "lifecycle_methods.before_market_closes.rst", "lifecycle_methods.before_market_opens.rst", "lifecycle_methods.before_starting_trading.rst", "lifecycle_methods.initialize.rst", "lifecycle_methods.on_abrupt_closing.rst", "lifecycle_methods.on_bot_crash.rst", "lifecycle_methods.on_canceled_order.rst", "lifecycle_methods.on_filled_order.rst", "lifecycle_methods.on_new_order.rst", "lifecycle_methods.on_parameters_updated.rst", "lifecycle_methods.on_partially_filled_order.rst", "lifecycle_methods.on_trading_iteration.rst", "lifecycle_methods.summary.rst", "lifecycle_methods.trace_stats.rst", "lumibot.backtesting.rst", "lumibot.data_sources.rst", "lumibot.strategies.rst", "lumibot.traders.rst", "strategy_methods.rst", "strategy_methods.account.rst", "strategy_methods.account/lumibot.strategies.strategy.Strategy.get_cash.rst", "strategy_methods.account/lumibot.strategies.strategy.Strategy.get_parameters.rst", "strategy_methods.account/lumibot.strategies.strategy.Strategy.get_portfolio_value.rst", "strategy_methods.account/lumibot.strategies.strategy.Strategy.get_position.rst", "strategy_methods.account/lumibot.strategies.strategy.Strategy.get_positions.rst", "strategy_methods.account/lumibot.strategies.strategy.Strategy.set_parameters.rst", "strategy_methods.account/strategies.strategy.Strategy.get_cash.rst", "strategy_methods.account/strategies.strategy.Strategy.get_parameters.rst", "strategy_methods.account/strategies.strategy.Strategy.get_portfolio_value.rst", "strategy_methods.account/strategies.strategy.Strategy.get_position.rst", "strategy_methods.account/strategies.strategy.Strategy.get_positions.rst", "strategy_methods.account/strategies.strategy.Strategy.set_parameters.rst", "strategy_methods.chart.rst", "strategy_methods.chart/lumibot.strategies.strategy.Strategy.add_line.rst", "strategy_methods.chart/lumibot.strategies.strategy.Strategy.add_marker.rst", "strategy_methods.chart/lumibot.strategies.strategy.Strategy.get_lines_df.rst", "strategy_methods.chart/lumibot.strategies.strategy.Strategy.get_markers_df.rst", "strategy_methods.chart/strategies.strategy.Strategy.add_line.rst", "strategy_methods.chart/strategies.strategy.Strategy.add_marker.rst", "strategy_methods.chart/strategies.strategy.Strategy.get_lines_df.rst", "strategy_methods.chart/strategies.strategy.Strategy.get_markers_df.rst", "strategy_methods.data.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.cancel_realtime_bars.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_historical_prices.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_historical_prices_for_assets.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_last_price.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_last_prices.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_next_trading_day.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_quote.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_realtime_bars.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_yesterday_dividend.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_yesterday_dividends.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.start_realtime_bars.rst", "strategy_methods.datetime.rst", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_datetime.rst", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_datetime_range.rst", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_last_day.rst", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_last_minute.rst", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_round_day.rst", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_round_minute.rst", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_timestamp.rst", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.localize_datetime.rst", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.to_default_timezone.rst", "strategy_methods.datetime/strategies.strategy.Strategy.get_datetime.rst", "strategy_methods.datetime/strategies.strategy.Strategy.get_datetime_range.rst", "strategy_methods.datetime/strategies.strategy.Strategy.get_last_day.rst", "strategy_methods.datetime/strategies.strategy.Strategy.get_last_minute.rst", "strategy_methods.datetime/strategies.strategy.Strategy.get_round_day.rst", "strategy_methods.datetime/strategies.strategy.Strategy.get_round_minute.rst", "strategy_methods.datetime/strategies.strategy.Strategy.get_timestamp.rst", "strategy_methods.datetime/strategies.strategy.Strategy.localize_datetime.rst", "strategy_methods.datetime/strategies.strategy.Strategy.to_default_timezone.rst", "strategy_methods.misc.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.await_market_to_close.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.await_market_to_open.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.get_parameters.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.log_message.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.set_market.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.sleep.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.update_parameters.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.wait_for_order_execution.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.wait_for_order_registration.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.wait_for_orders_execution.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.wait_for_orders_registration.rst", "strategy_methods.misc/strategies.strategy.Strategy.await_market_to_close.rst", "strategy_methods.misc/strategies.strategy.Strategy.await_market_to_open.rst", "strategy_methods.misc/strategies.strategy.Strategy.get_parameters.rst", "strategy_methods.misc/strategies.strategy.Strategy.log_message.rst", "strategy_methods.misc/strategies.strategy.Strategy.set_market.rst", "strategy_methods.misc/strategies.strategy.Strategy.sleep.rst", "strategy_methods.misc/strategies.strategy.Strategy.update_parameters.rst", "strategy_methods.misc/strategies.strategy.Strategy.wait_for_order_execution.rst", "strategy_methods.misc/strategies.strategy.Strategy.wait_for_order_registration.rst", "strategy_methods.misc/strategies.strategy.Strategy.wait_for_orders_execution.rst", "strategy_methods.misc/strategies.strategy.Strategy.wait_for_orders_registration.rst", "strategy_methods.options.rst", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_chain.rst", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_chains.rst", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_expiration.rst", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_greeks.rst", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_multiplier.rst", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_next_trading_day.rst", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_strikes.rst", "strategy_methods.options/lumibot.strategies.strategy.Strategy.options_expiry_to_datetime_date.rst", "strategy_methods.options/strategies.strategy.Strategy.get_chain.rst", "strategy_methods.options/strategies.strategy.Strategy.get_chains.rst", "strategy_methods.options/strategies.strategy.Strategy.get_expiration.rst", "strategy_methods.options/strategies.strategy.Strategy.get_greeks.rst", "strategy_methods.options/strategies.strategy.Strategy.get_multiplier.rst", "strategy_methods.options/strategies.strategy.Strategy.get_next_trading_day.rst", "strategy_methods.options/strategies.strategy.Strategy.get_option_expiration_after_date.rst", "strategy_methods.options/strategies.strategy.Strategy.get_strikes.rst", "strategy_methods.options/strategies.strategy.Strategy.options_expiry_to_datetime_date.rst", "strategy_methods.orders.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.cancel_open_orders.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.cancel_order.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.cancel_orders.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.create_order.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.get_asset_potential_total.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.get_order.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.get_orders.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.get_selling_order.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.sell_all.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.submit_order.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.submit_orders.rst", "strategy_methods.orders/strategies.strategy.Strategy.cancel_open_orders.rst", "strategy_methods.orders/strategies.strategy.Strategy.cancel_order.rst", "strategy_methods.orders/strategies.strategy.Strategy.cancel_orders.rst", "strategy_methods.orders/strategies.strategy.Strategy.create_order.rst", "strategy_methods.orders/strategies.strategy.Strategy.get_asset_potential_total.rst", "strategy_methods.orders/strategies.strategy.Strategy.get_order.rst", "strategy_methods.orders/strategies.strategy.Strategy.get_orders.rst", "strategy_methods.orders/strategies.strategy.Strategy.get_selling_order.rst", "strategy_methods.orders/strategies.strategy.Strategy.sell_all.rst", "strategy_methods.orders/strategies.strategy.Strategy.submit_order.rst", "strategy_methods.orders/strategies.strategy.Strategy.submit_orders.rst", "strategy_methods.parameters.rst", "strategy_properties.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.cash.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.first_iteration.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.initial_budget.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.is_backtesting.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.last_on_trading_iteration_datetime.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.minutes_before_closing.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.minutes_before_opening.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.name.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.portfolio_value.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.pytz.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.quote_asset.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.sleeptime.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.timezone.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.unspent_money.rst", "strategy_properties/lumibot.strategies.strategy.pytz.rst", "strategy_properties/strategies.strategy.Strategy.cash.rst", "strategy_properties/strategies.strategy.Strategy.first_iteration.rst", "strategy_properties/strategies.strategy.Strategy.initial_budget.rst", "strategy_properties/strategies.strategy.Strategy.is_backtesting.rst", "strategy_properties/strategies.strategy.Strategy.last_on_trading_iteration_datetime.rst", "strategy_properties/strategies.strategy.Strategy.minutes_before_closing.rst", "strategy_properties/strategies.strategy.Strategy.minutes_before_opening.rst", "strategy_properties/strategies.strategy.Strategy.name.rst", "strategy_properties/strategies.strategy.Strategy.portfolio_value.rst", "strategy_properties/strategies.strategy.Strategy.pytz.rst", "strategy_properties/strategies.strategy.Strategy.quote_asset.rst", "strategy_properties/strategies.strategy.Strategy.sleeptime.rst", "strategy_properties/strategies.strategy.Strategy.timezone.rst", "strategy_properties/strategies.strategy.Strategy.unspent_money.rst", "vars.rst"], "titles": ["Backtesting", "Backtesting Function", "How To Backtest", "Indicators Files", "Logs CSV", "Pandas (CSV or other data)", "Polygon.io Backtesting", "Tearsheet HTML", "ThetaData Backtesting", "Trades Files", "Yahoo", "Brokers", "Alpaca", "Crypto Brokers (Using CCXT)", "Interactive Brokers", "Interactive Brokers Legacy", "Tradier", "Deployment Guide", "Entities", "Asset", "Bars", "Data", "Order", "Position", "Trading Fee", "What is Lumibot?", "Lumibot: Backtesting and Algorithmic Trading Library", "Lifecycle Methods", "def after_market_closes", "def before_market_closes", "def before_market_opens", "def before_starting_trading", "def initialize", "def on_abrupt_closing", "def on_bot_crash", "def on_canceled_order", "def on_filled_order", "def on_new_order", "def on_parameters_updated", "def on_partially_filled_order", "def on_trading_iteration", "Summary", "def trace_stats", "Backtesting", "Data Sources", "Strategies", "Traders", "Strategy Methods", "Account Management", "self.get_cash", "self.get_parameters", "self.get_portfolio_value", "self.get_position", "self.get_positions", "self.set_parameters", "self.get_cash", "self.get_parameters", "self.get_portfolio_value", "self.get_position", "self.get_positions", "self.set_parameters", "Chart Functions", "self.add_line", "self.add_marker", "self.get_lines_df", "self.get_markers_df", "self.add_line", "self.add_marker", "self.get_lines_df", "self.get_markers_df", "Data", "self.cancel_realtime_bars", "self.get_historical_prices", "self.get_historical_prices_for_assets", "self.get_last_price", "self.get_last_prices", "self.get_next_trading_day", "self.get_quote", "self.get_realtime_bars", "self.get_yesterday_dividend", "self.get_yesterday_dividends", "self.start_realtime_bars", "DateTime", "self.get_datetime", "self.get_datetime_range", "self.get_last_day", "self.get_last_minute", "self.get_round_day", "self.get_round_minute", "self.get_timestamp", "self.localize_datetime", "self.to_default_timezone", "self.get_datetime", "self.get_datetime_range", "self.get_last_day", "self.get_last_minute", "self.get_round_day", "self.get_round_minute", "self.get_timestamp", "self.localize_datetime", "self.to_default_timezone", "Miscellaneous", "self.await_market_to_close", "self.await_market_to_open", "self.get_parameters", "self.log_message", "self.set_market", "self.sleep", "self.update_parameters", "self.wait_for_order_execution", "self.wait_for_order_registration", "self.wait_for_orders_execution", "self.wait_for_orders_registration", "self.await_market_to_close", "self.await_market_to_open", "self.get_parameters", "self.log_message", "self.set_market", "self.sleep", "self.update_parameters", "self.wait_for_order_execution", "self.wait_for_order_registration", "self.wait_for_orders_execution", "self.wait_for_orders_registration", "Options", "self.get_chain", "self.get_chains", "self.get_expiration", "self.get_greeks", "self.get_multiplier", "self.get_next_trading_day", "self.get_strikes", "self.options_expiry_to_datetime_date", "self.get_chain", "self.get_chains", "self.get_expiration", "self.get_greeks", "self.get_multiplier", "self.get_next_trading_day", "self.get_option_expiration_after_date", "self.get_strikes", "self.options_expiry_to_datetime_date", "Order Management", "self.cancel_open_orders", "self.cancel_order", "self.cancel_orders", "self.create_order", "self.get_asset_potential_total", "self.get_order", "self.get_orders", "self.get_selling_order", "self.sell_all", "self.submit_order", "self.submit_orders", "self.cancel_open_orders", "self.cancel_order", "self.cancel_orders", "self.create_order", "self.get_asset_potential_total", "self.get_order", "self.get_orders", "self.get_selling_order", "self.sell_all", "self.submit_order", "self.submit_orders", "Parameters", "Strategy Properties", "self.cash", "self.first_iteration", "self.initial_budget", "self.is_backtesting", "self.last_on_trading_iteration_datetime", "self.minutes_before_closing", "self.minutes_before_opening", "self.name", "self.portfolio_value", "self.pytz", "self.quote_asset", "self.sleeptime", "self.timezone", "self.unspent_money", "self.pytz", "self.cash", "self.first_iteration", "self.initial_budget", "self.is_backtesting", "self.last_on_trading_iteration_datetime", "self.minutes_before_closing", "self.minutes_before_opening", "self.name", "self.portfolio_value", "self.pytz", "self.quote_asset", "self.sleeptime", "self.timezone", "self.unspent_money", "Variable Backup & Restore"], "terms": {"lumibot": [0, 1, 5, 6, 8, 10, 11, 12, 13, 14, 15, 16, 18, 19, 22, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 46, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 62, 63, 64, 65, 66, 67, 68, 69, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165], "ha": [0, 7, 15, 20, 22, 26, 35, 36, 37, 39, 45, 71, 74, 78, 196], "three": [0, 15, 20, 22], "mode": [0, 15, 17, 43, 170, 185], "yahoo": [0, 1, 2, 5, 20, 26, 72, 73, 106, 117], "daili": [0, 2, 5, 7, 10, 31, 72, 73], "stock": [0, 1, 2, 5, 6, 8, 9, 10, 12, 17, 19, 20, 21, 22, 23, 26, 32, 44, 106, 117, 126, 134, 146, 152, 157, 163], "data": [0, 1, 3, 6, 8, 10, 11, 13, 18, 19, 20, 23, 26, 30, 31, 40, 45, 47, 62, 66, 71, 72, 73, 78, 81, 83, 89, 90, 91, 92, 98, 99, 100, 176, 179, 181, 191, 194], "panda": [0, 2, 10, 20, 21, 26, 62, 63, 64, 65, 66, 67, 68, 69, 72, 73, 78, 106, 117], "intra": [0, 5, 10], "dai": [0, 1, 2, 5, 6, 8, 10, 17, 21, 22, 26, 30, 31, 32, 40, 44, 72, 73, 76, 79, 80, 84, 85, 86, 87, 93, 94, 95, 96, 130, 138, 146, 153, 157, 164, 178, 193], "inter": [0, 5], "test": [0, 2, 15, 17], "futur": [0, 5, 12, 14, 17, 19, 20, 26, 43, 44, 74, 146, 147, 152, 157, 158, 163, 180, 195], "us": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 15, 16, 17, 19, 20, 21, 22, 23, 24, 25, 26, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 55, 61, 62, 63, 66, 67, 70, 72, 73, 76, 82, 101, 105, 107, 116, 118, 127, 128, 129, 130, 131, 135, 136, 137, 138, 140, 142, 146, 157, 165, 166, 167, 177, 178, 180, 182, 192, 193, 195, 196], "csv": [0, 2, 3, 9, 21, 26, 44], "suppli": [0, 10, 21], "you": [0, 1, 2, 5, 6, 8, 10, 11, 12, 13, 14, 15, 16, 17, 20, 22, 25, 26, 29, 32, 44, 47, 48, 49, 51, 55, 57, 61, 62, 66, 70, 72, 73, 82, 101, 124, 142, 146, 157, 165, 166, 178, 193], "polygon": [0, 1, 5, 8, 10, 17, 26], "io": [0, 13, 20, 26], "It": [0, 4, 5, 6, 7, 8, 13, 14, 15, 17, 19, 22, 23, 25, 26, 41, 43, 44, 74, 77, 146, 157], "i": [0, 1, 2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 26, 28, 29, 30, 32, 34, 35, 36, 37, 39, 40, 41, 42, 43, 44, 46, 47, 49, 51, 52, 55, 57, 58, 62, 63, 66, 67, 72, 73, 74, 75, 76, 77, 82, 83, 85, 86, 87, 88, 89, 92, 94, 95, 96, 97, 98, 102, 103, 106, 113, 114, 117, 125, 126, 127, 129, 130, 132, 133, 134, 135, 137, 138, 141, 146, 147, 149, 151, 153, 157, 158, 160, 162, 164, 166, 167, 168, 170, 172, 173, 177, 178, 182, 183, 185, 187, 188, 192, 193, 196], "recommend": [0, 15, 17, 25], "option": [0, 2, 6, 8, 9, 12, 14, 16, 17, 19, 20, 22, 26, 32, 36, 39, 41, 43, 44, 47, 72, 74, 125, 126, 127, 128, 129, 131, 132, 133, 134, 135, 136, 137, 139, 140, 141, 146, 152, 157, 163], "crypto": [0, 1, 5, 7, 11, 17, 19, 20, 23, 26, 49, 51, 55, 57, 72, 74, 106, 117, 146, 152, 153, 157, 163, 164, 167, 175, 182, 190], "forex": [0, 2, 5, 6, 8, 12, 17, 19, 26, 44, 73, 74, 146, 152, 153, 157, 163, 164], "an": [0, 1, 2, 5, 6, 7, 8, 12, 13, 14, 15, 16, 17, 19, 22, 23, 26, 34, 35, 36, 39, 40, 41, 43, 44, 52, 58, 72, 74, 75, 81, 102, 103, 105, 113, 114, 116, 126, 127, 131, 132, 134, 135, 140, 141, 144, 146, 147, 148, 152, 155, 157, 158, 159, 163, 165, 178, 193, 196], "advanc": [0, 2, 5, 25, 26, 146, 157], "featur": [0, 2, 6, 8, 26], "allow": [0, 2, 4, 5, 6, 8, 14, 17, 20, 22, 25, 26, 81, 146, 157, 165], "ani": [0, 1, 2, 5, 6, 7, 8, 10, 13, 14, 15, 17, 21, 22, 25, 41, 43, 62, 66, 72, 73, 105, 116, 145, 156, 165], "type": [0, 1, 2, 5, 12, 14, 18, 19, 20, 21, 23, 25, 26, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 42, 43, 44, 46, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 64, 65, 68, 69, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 125, 126, 127, 129, 130, 131, 132, 133, 134, 135, 137, 138, 139, 140, 141, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194], "have": [0, 1, 2, 5, 6, 8, 10, 14, 16, 17, 20, 22, 23, 25, 26, 28, 43, 47, 49, 51, 55, 57, 72, 78], "format": [0, 5, 19, 21, 44, 76, 125, 126, 130, 132, 133, 134, 138, 141], "requir": [0, 1, 2, 10, 13, 14, 15, 17, 19, 22, 74, 75, 146, 153, 157, 164], "more": [0, 2, 3, 11, 13, 14, 16, 17, 18, 20, 25, 26, 43, 44, 47, 70, 72, 101, 124, 128, 136, 142], "work": [0, 2, 5, 11, 15, 17, 25, 26, 72, 73, 77, 166], "setup": [0, 2, 11, 26], "most": [0, 5, 7, 14, 17, 20, 25, 41, 72, 78, 128, 136], "user": [0, 2, 5, 10, 14, 17, 21, 25, 27, 41, 45, 46, 144, 146, 155, 157, 196], "when": [0, 1, 2, 5, 6, 8, 13, 14, 17, 19, 20, 22, 25, 26, 27, 30, 32, 33, 34, 35, 36, 37, 38, 39, 40, 62, 63, 66, 67, 82, 146, 157, 167, 172, 182, 187, 196], "run": [0, 5, 6, 8, 10, 11, 12, 14, 17, 21, 26, 30, 32, 33, 34, 37, 44, 46, 81, 102, 103, 113, 114, 143, 145, 154, 156, 170, 185], "sever": [0, 2, 10, 11, 45, 165], "import": [0, 1, 2, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16, 17, 19, 20, 26, 41, 42, 44, 45, 63, 67, 73, 80, 146, 152, 153, 157, 163, 164, 165], "ar": [0, 1, 2, 3, 5, 7, 8, 10, 11, 12, 13, 14, 15, 17, 18, 19, 20, 21, 22, 23, 25, 26, 38, 41, 44, 45, 47, 48, 53, 59, 61, 62, 63, 66, 67, 70, 73, 78, 81, 82, 101, 106, 117, 124, 125, 126, 128, 133, 134, 136, 142, 143, 146, 147, 149, 151, 153, 154, 157, 158, 160, 162, 164, 165, 167, 182, 196], "each": [0, 1, 2, 3, 5, 7, 9, 13, 14, 20, 22, 26, 30, 32, 40, 41, 44, 45, 47, 53, 59, 72, 80, 126, 134, 149, 151, 160, 162, 196], "prefix": [0, 105, 116], "strategi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 15, 22, 23, 24, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 46, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196], "name": [0, 1, 5, 10, 14, 17, 19, 21, 25, 26, 32, 44, 46, 62, 63, 66, 67, 74, 105, 116, 165, 196], "date": [0, 1, 2, 5, 6, 8, 10, 19, 21, 26, 32, 44, 74, 76, 82, 125, 126, 127, 128, 129, 130, 132, 133, 134, 135, 136, 137, 138, 139, 141, 146, 157], "These": [0, 1, 2, 3, 4, 7, 10, 32, 45, 54, 60, 82], "provid": [0, 2, 4, 5, 6, 8, 9, 17, 20, 21, 44, 74, 75, 131, 140, 144, 145, 155, 156], "detail": [0, 2, 3, 4, 9, 14, 17, 19, 72, 148, 159], "insight": [0, 2], "perform": [0, 2, 3, 7, 17, 26, 41], "behavior": [0, 2], "how": [0, 3, 11, 12, 13, 17, 25, 26, 45, 72, 81, 166], "To": [0, 6, 8, 10, 13, 14, 16, 17, 22, 25, 26, 72], "instal": [0, 5, 10, 13, 15, 17], "choos": [0, 15, 26], "sourc": [0, 5, 8, 13, 20, 83, 89, 90, 91, 92, 98, 99, 100, 176, 179, 181, 191, 194], "tearsheet": [0, 1, 26, 46], "html": [0, 1, 3, 9, 20, 26], "trade": [0, 1, 4, 5, 10, 11, 13, 15, 17, 18, 19, 20, 21, 22, 27, 30, 31, 32, 33, 40, 41, 43, 44, 45, 52, 58, 73, 74, 76, 78, 81, 82, 83, 85, 86, 87, 88, 89, 92, 94, 95, 96, 97, 98, 106, 117, 126, 130, 134, 138, 146, 157, 171, 186, 196], "indic": [0, 1, 5, 13, 46, 52, 53, 58, 59, 62, 63, 64, 65, 66, 67, 68, 69, 72, 73, 153, 164], "conclus": [0, 26], "function": [0, 2, 3, 13, 17, 21, 26, 32, 38, 41, 47, 48, 82, 142], "run_backtest": [0, 1, 2, 5, 6, 8, 10, 25], "other": [0, 2, 6, 8, 10, 13, 14, 15, 17, 20, 22, 25, 26, 41, 62, 66, 77, 101, 146, 157, 167, 182, 196], "In": [0, 6, 8, 13, 17, 22, 43, 74, 75, 83, 85, 86, 87, 88, 89, 92, 94, 95, 96, 97, 98], "summari": [0, 6, 8, 26, 27], "thetadata": [0, 2, 26], "log": [0, 1, 2, 7, 10, 14, 15, 16, 17, 19, 26, 42, 101, 105, 116], "here": [1, 2, 5, 6, 8, 11, 12, 13, 14, 15, 16, 17, 18, 25, 26, 41, 165, 166], "descript": [1, 14, 17], "all": [1, 4, 5, 13, 17, 20, 21, 22, 25, 30, 33, 34, 43, 45, 46, 51, 53, 57, 59, 72, 73, 125, 127, 128, 129, 131, 133, 135, 136, 137, 140, 143, 145, 146, 149, 150, 151, 154, 156, 157, 160, 161, 162, 165, 196], "its": [1, 6, 8, 22, 42], "paramet": [1, 2, 6, 8, 12, 19, 20, 21, 22, 23, 25, 26, 28, 29, 32, 33, 34, 35, 36, 37, 38, 39, 42, 43, 44, 45, 46, 47, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 62, 63, 66, 67, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 84, 87, 88, 90, 91, 93, 96, 97, 99, 100, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 143, 144, 145, 146, 147, 150, 151, 152, 153, 154, 155, 156, 157, 158, 161, 162, 163, 164, 172, 187], "thi": [1, 2, 5, 6, 8, 9, 12, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 25, 26, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 42, 43, 44, 45, 46, 49, 51, 55, 57, 62, 63, 66, 67, 72, 73, 74, 75, 77, 81, 83, 85, 86, 87, 88, 89, 92, 94, 95, 96, 97, 98, 107, 118, 146, 153, 157, 164, 167, 168, 177, 178, 182, 183, 192, 193], "true": [1, 5, 12, 13, 16, 17, 22, 24, 25, 26, 32, 43, 44, 46, 72, 73, 74, 105, 116, 151, 162, 168, 170, 183, 185], "kind": [1, 25], "do": [1, 5, 10, 13, 16, 20, 22, 25, 26, 38, 47, 101, 146, 157], "arg": [1, 21, 44], "minutes_before_clos": [1, 26, 29, 32, 40, 102, 113], "5": [1, 2, 5, 6, 8, 17, 26, 32, 44, 72, 73, 106, 107, 117, 118, 146, 157, 165, 172, 178, 187, 193, 196], "minutes_before_open": [1, 26, 30, 103, 114], "60": [1, 20, 173, 188], "sleeptim": [1, 2, 6, 8, 13, 25, 26, 32, 40, 107, 118], "1": [1, 2, 5, 6, 7, 8, 10, 12, 13, 15, 16, 17, 19, 20, 21, 22, 31, 44, 72, 73, 84, 90, 91, 93, 99, 100, 128, 136, 139, 146, 152, 153, 157, 163, 164, 178, 193, 196], "stats_fil": [1, 32], "none": [1, 12, 13, 17, 19, 20, 21, 22, 23, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 43, 44, 46, 49, 51, 52, 53, 54, 55, 57, 58, 59, 60, 62, 63, 66, 67, 71, 72, 73, 74, 75, 81, 84, 93, 102, 103, 105, 106, 107, 108, 113, 114, 116, 117, 118, 119, 128, 131, 136, 140, 143, 144, 145, 146, 148, 150, 151, 154, 155, 156, 157, 159, 161, 162], "risk_free_r": [1, 44, 128, 136], "logfil": [1, 46], "config": [1, 12, 13, 16, 17, 25, 43], "auto_adjust": [1, 44], "fals": [1, 12, 13, 16, 17, 22, 25, 26, 32, 43, 44, 46, 73, 74, 83, 92, 105, 116, 128, 136, 146, 151, 157, 162], "budget": [1, 5, 10, 17, 25, 32, 169, 184], "benchmark_asset": [1, 2, 6, 8, 25], "spy": [1, 2, 5, 6, 8, 19, 22, 25, 30, 31, 32, 36, 40, 44, 71, 72, 73, 74, 75, 79, 80, 109, 110, 111, 112, 120, 121, 122, 123, 125, 126, 127, 128, 129, 131, 133, 134, 135, 136, 137, 140, 144, 146, 150, 152, 153, 155, 157, 161, 163, 164, 165], "plot_file_html": 1, "trades_fil": 1, "settings_fil": 1, "pandas_data": [1, 5, 25, 43, 44], "quote_asset": [1, 13, 19, 23, 26, 152, 153, 163, 164], "usd": [1, 19, 21, 72, 73, 74, 146, 152, 153, 157, 163, 164], "starting_posit": 1, "show_plot": [1, 46], "tearsheet_fil": 1, "save_tearsheet": [1, 46], "show_tearsheet": [1, 46], "buy_trading_fe": [1, 25], "sell_trading_fe": [1, 25], "api_kei": [1, 12, 25, 26, 43, 44], "polygon_api_kei": [1, 2, 17], "polygon_has_paid_subscript": 1, "indicators_fil": 1, "show_ind": [1, 46], "save_logfil": 1, "kwarg": [1, 12, 19, 21, 43, 44, 153, 164], "datasource_class": 1, "class": [1, 2, 5, 6, 8, 10, 12, 13, 16, 17, 19, 20, 21, 22, 23, 24, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 165, 196], "The": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 12, 13, 14, 15, 17, 19, 20, 21, 22, 23, 27, 28, 34, 35, 36, 37, 38, 39, 41, 43, 44, 45, 49, 50, 51, 54, 55, 56, 57, 60, 62, 63, 64, 65, 66, 67, 68, 69, 72, 73, 75, 76, 77, 78, 79, 80, 81, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 104, 106, 108, 115, 117, 119, 125, 126, 127, 128, 129, 130, 131, 133, 134, 135, 136, 137, 138, 139, 140, 146, 147, 150, 151, 153, 157, 158, 161, 162, 164, 165, 167, 169, 171, 172, 173, 174, 175, 176, 177, 179, 181, 182, 184, 186, 187, 188, 189, 190, 191, 192, 194], "datasourc": [1, 8, 43, 44], "For": [1, 2, 3, 5, 7, 10, 13, 14, 17, 19, 20, 22, 26, 28, 44, 49, 51, 55, 57, 109, 110, 111, 112, 120, 121, 122, 123, 146, 152, 153, 157, 163, 164, 165], "exampl": [1, 2, 6, 8, 11, 12, 15, 19, 20, 25, 26, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 44, 52, 53, 58, 59, 62, 63, 66, 67, 71, 72, 73, 74, 75, 79, 80, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 102, 103, 105, 106, 107, 109, 110, 111, 112, 113, 114, 116, 117, 118, 120, 121, 122, 123, 125, 126, 127, 128, 129, 131, 132, 133, 134, 135, 136, 137, 139, 140, 141, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 196], "want": [1, 2, 5, 8, 10, 12, 13, 16, 17, 25, 26, 41, 44, 62, 66], "financ": [1, 2, 10, 26], "would": [1, 2, 5, 16, 19, 25, 26, 44, 51, 57, 146, 157, 178, 193], "pass": [1, 2, 5, 8, 10, 18, 22, 28, 36, 40, 41, 45, 102, 103, 113, 114, 128, 136, 146, 157], "yahoodatabacktest": [1, 10, 25, 26, 32], "backtesting_start": [1, 2, 5, 6, 8, 10, 25, 26, 32, 43], "datetim": [1, 2, 5, 6, 8, 10, 13, 19, 20, 21, 25, 26, 32, 43, 44, 47, 62, 63, 66, 67, 72, 76, 78, 81, 83, 84, 90, 91, 92, 93, 99, 100, 127, 130, 132, 135, 138, 139, 141, 146, 157, 171, 186], "start": [1, 2, 5, 6, 7, 8, 10, 11, 13, 17, 20, 21, 30, 32, 44, 72, 73, 78, 81, 102, 113, 173, 188], "period": [1, 2, 5, 7, 13, 21, 81, 196], "backtesting_end": [1, 2, 5, 6, 8, 10, 25, 26, 32], "end": [1, 2, 6, 7, 8, 10, 14, 20, 21, 26, 42], "int": [1, 12, 19, 20, 21, 22, 36, 39, 44, 62, 63, 66, 67, 72, 73, 81, 84, 85, 86, 87, 88, 89, 93, 94, 95, 96, 97, 98, 102, 103, 113, 114, 146, 147, 157, 158, 172, 173, 178, 187, 188, 193], "number": [1, 12, 15, 16, 17, 21, 22, 29, 32, 44, 72, 73, 84, 87, 88, 93, 96, 97, 146, 157, 172, 173, 178, 187, 188, 193], "minut": [1, 5, 13, 17, 20, 21, 25, 26, 29, 30, 32, 40, 43, 44, 72, 73, 84, 86, 88, 93, 95, 97, 102, 103, 113, 114, 172, 173, 178, 187, 188, 193], "befor": [1, 2, 5, 7, 10, 13, 14, 15, 17, 20, 22, 25, 26, 29, 30, 31, 32, 40, 41, 42, 44, 72, 73, 102, 103, 113, 114, 151, 162, 172, 173, 187, 188, 196], "close": [1, 5, 12, 13, 20, 21, 22, 28, 29, 32, 33, 40, 43, 51, 57, 72, 74, 75, 78, 81, 102, 103, 113, 114, 151, 162, 172, 187], "method": [1, 6, 8, 15, 19, 20, 22, 23, 26, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 70, 101, 124, 125, 127, 129, 131, 133, 135, 137, 140, 165, 168, 172, 173, 178, 183, 187, 188, 193, 196], "call": [1, 5, 6, 8, 19, 20, 22, 28, 32, 34, 35, 36, 38, 39, 40, 41, 42, 44, 72, 74, 75, 125, 126, 128, 133, 134, 136, 152, 163], "open": [1, 2, 5, 12, 17, 20, 21, 22, 25, 29, 30, 31, 40, 43, 63, 67, 72, 78, 81, 102, 103, 113, 114, 143, 144, 145, 149, 151, 154, 155, 156, 160, 162, 173, 188], "second": [1, 12, 22, 32, 40, 43, 73, 81, 101, 107, 118, 178, 193], "sleep": [1, 2, 26, 40, 47, 101, 102, 113, 178, 193], "between": [1, 2, 13, 20, 21, 26, 32, 72, 178, 193], "iter": [1, 2, 6, 8, 13, 21, 32, 40, 41, 168, 171, 183, 186, 196], "str": [1, 19, 20, 21, 22, 23, 44, 52, 58, 62, 63, 66, 67, 72, 73, 74, 75, 76, 84, 93, 105, 106, 116, 117, 125, 126, 127, 129, 130, 132, 133, 134, 135, 137, 138, 141, 146, 153, 157, 164, 174, 178, 179, 189, 193, 194], "file": [1, 4, 5, 7, 14, 15, 17, 25, 26, 101, 105, 116, 165, 196], "write": [1, 2, 6, 8], "stat": [1, 28, 42], "float": [1, 5, 19, 20, 22, 23, 36, 39, 43, 44, 49, 51, 55, 57, 62, 63, 66, 67, 74, 75, 79, 80, 102, 103, 107, 113, 114, 118, 128, 131, 136, 140, 146, 147, 153, 157, 158, 164, 167, 169, 175, 182, 184, 190], "risk": [1, 7, 14, 25, 128, 136], "free": [1, 2, 6, 8, 17, 23, 26, 128, 136], "rate": [1, 6, 8, 20, 128, 136], "dict": [1, 21, 38, 42, 44, 46, 50, 54, 56, 60, 77, 104, 108, 115, 119, 146, 157], "set": [1, 2, 6, 8, 11, 14, 15, 16, 17, 19, 20, 21, 22, 25, 26, 29, 32, 43, 44, 54, 60, 72, 73, 78, 106, 117, 125, 133, 146, 157, 165, 166, 172, 173, 178, 187, 188, 193, 196], "up": [1, 2, 5, 6, 11, 14, 15, 17, 19, 25, 26, 63, 67, 196], "broker": [1, 5, 12, 16, 19, 20, 22, 23, 24, 25, 26, 32, 35, 36, 37, 39, 45, 72, 73, 74, 77, 81, 109, 110, 111, 112, 120, 121, 122, 123, 128, 136, 146, 152, 153, 157, 163, 164, 167, 182], "live": [1, 2, 12, 14, 15, 17, 20, 25, 43, 44, 82, 83, 85, 86, 87, 88, 89, 92, 94, 95, 96, 97, 98, 106, 117], "bool": [1, 22, 43, 44, 46, 72, 73, 74, 105, 116, 128, 136, 153, 164, 168, 170, 183, 185], "whether": [1, 17, 22, 44, 46, 72, 82, 128, 136, 146, 157], "automat": [1, 6, 8, 22, 146, 147, 157, 158, 196], "adjust": [1, 7, 14, 20, 21, 44], "initi": [1, 2, 6, 8, 13, 15, 25, 26, 27, 41, 106, 117, 165, 169, 172, 173, 178, 184, 187, 188, 193], "asset": [1, 2, 5, 9, 12, 13, 17, 18, 20, 21, 22, 23, 26, 33, 34, 35, 36, 37, 39, 40, 43, 44, 49, 51, 52, 53, 55, 57, 58, 59, 62, 66, 71, 72, 73, 74, 75, 77, 78, 79, 80, 81, 125, 126, 127, 128, 129, 131, 133, 134, 135, 136, 137, 140, 146, 147, 152, 153, 157, 158, 163, 164, 167, 177, 182, 192], "benchmark": [1, 2, 7], "compar": [1, 7, 14, 17], "If": [1, 5, 6, 8, 12, 13, 14, 16, 17, 20, 21, 25, 26, 30, 32, 36, 40, 44, 72, 73, 74, 81, 102, 103, 105, 113, 114, 116, 131, 140, 143, 146, 151, 154, 157, 162], "string": [1, 17, 19, 20, 21, 22, 44, 72, 73, 105, 116, 132, 141, 146, 157, 178, 193, 196], "convert": [1, 19, 20, 22, 26, 43, 44, 132, 141, 146, 157], "object": [1, 5, 10, 12, 18, 19, 20, 21, 22, 23, 24, 35, 36, 37, 39, 43, 44, 46, 52, 53, 58, 59, 71, 72, 73, 74, 75, 77, 78, 79, 80, 81, 109, 110, 111, 112, 120, 121, 122, 123, 126, 131, 134, 140, 144, 145, 146, 147, 148, 149, 152, 153, 155, 156, 157, 158, 159, 160, 163, 164, 176, 181, 191, 196], "plot": [1, 10, 46, 63, 67], "list": [1, 2, 13, 18, 19, 20, 23, 25, 31, 43, 44, 47, 48, 53, 59, 61, 70, 73, 75, 80, 82, 84, 93, 101, 106, 111, 112, 117, 122, 123, 124, 127, 129, 131, 135, 137, 140, 142, 145, 149, 153, 156, 160, 164, 166], "A": [1, 5, 7, 10, 12, 14, 22, 26, 44, 46, 52, 53, 58, 59, 77, 84, 93, 146, 153, 157, 164, 196], "pandasdatabacktest": [1, 5, 25], "contain": [1, 3, 20, 21, 22, 40, 42, 78, 152, 153, 163, 164], "cryptocurr": [1, 2, 6, 8, 13, 17, 20, 72, 73, 74, 75, 146, 157], "get": [1, 2, 5, 6, 8, 10, 11, 12, 13, 14, 17, 18, 20, 21, 22, 30, 31, 33, 38, 43, 44, 45, 47, 48, 49, 50, 51, 52, 53, 55, 56, 57, 58, 59, 61, 70, 72, 73, 75, 77, 79, 80, 82, 104, 115, 124, 147, 148, 149, 150, 158, 159, 160, 161, 165, 166, 167, 172, 173, 175, 178, 182, 187, 188, 190, 193, 196], "valuat": 1, "measur": [1, 7], "overal": [1, 7], "porfolio": 1, "valu": [1, 3, 5, 9, 12, 13, 14, 17, 19, 20, 21, 23, 28, 43, 45, 46, 48, 49, 51, 55, 57, 61, 62, 63, 66, 67, 72, 73, 128, 136, 153, 164, 175, 190, 196], "usual": [1, 47, 178, 193], "usdt": [1, 19, 49, 51, 55, 57, 72, 74, 146, 157], "usdc": 1, "dictionari": [1, 5, 8, 16, 36, 42, 43, 44, 46, 73, 77, 125, 126, 127, 128, 129, 131, 133, 134, 135, 136, 137, 140, 146, 157, 165], "posit": [1, 13, 18, 22, 26, 36, 39, 43, 45, 51, 52, 53, 57, 58, 59, 147, 150, 151, 158, 161, 162, 167, 175, 182, 190], "100": [1, 5, 12, 13, 16, 19, 20, 25, 26, 32, 42, 44, 72, 73, 109, 110, 111, 112, 120, 121, 122, 123, 125, 126, 128, 133, 134, 136, 144, 145, 146, 152, 153, 155, 156, 157, 163, 164], "200": [1, 12, 36, 44, 73, 111, 112, 122, 123, 153, 164], "aapl": [1, 2, 5, 6, 8, 10, 12, 16, 19, 20, 23, 26, 32, 35, 36, 37, 39, 72, 73, 145, 156], "show": [1, 7, 52, 53, 58, 59, 147, 148, 149, 158, 159, 160], "save": [1, 5, 10, 17, 25, 46, 196], "must": [1, 2, 5, 6, 8, 10, 12, 16, 21, 22, 41, 72, 73, 131, 140, 146, 157], "within": [1, 17, 18, 107, 118, 143, 154], "tradingfe": [1, 24, 25, 26], "appli": [1, 17, 44], "bui": [1, 2, 5, 6, 7, 8, 9, 10, 12, 13, 16, 19, 22, 25, 26, 36, 40, 45, 49, 55, 105, 109, 110, 111, 112, 116, 120, 121, 122, 123, 144, 145, 146, 152, 153, 155, 156, 157, 163, 164, 167, 182], "order": [1, 2, 5, 6, 8, 9, 10, 12, 13, 18, 19, 23, 25, 26, 29, 30, 35, 36, 37, 39, 40, 41, 43, 47, 105, 109, 110, 111, 112, 116, 120, 121, 122, 123, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 167, 182], "dure": [1, 2, 4, 7, 17, 45, 73], "sell": [1, 7, 9, 22, 23, 29, 33, 34, 36, 40, 43, 45, 146, 150, 151, 152, 153, 157, 161, 162, 163, 164], "api": [1, 2, 6, 8, 10, 12, 13, 14, 15, 16, 17, 20, 26, 128, 136], "kei": [1, 2, 3, 5, 6, 8, 12, 14, 15, 16, 17, 21, 26, 46, 128, 136, 165, 196], "onli": [1, 5, 10, 13, 14, 15, 17, 19, 20, 21, 22, 23, 25, 26, 32, 41, 43, 44, 46, 72, 73, 74, 77, 81, 128, 136, 143, 153, 154, 164, 172, 187], "polygondatabacktest": [1, 2, 6, 8], "deprec": [1, 15, 146, 157, 180, 195], "pleas": [1, 2, 5, 6, 8, 10, 13, 15, 22, 72, 180, 195], "instead": [1, 5, 17, 20, 43, 107, 118, 128, 136, 180, 195], "paid": [1, 2, 167, 182], "subscript": [1, 11, 26], "default": [1, 5, 10, 17, 19, 20, 21, 32, 34, 44, 45, 54, 60, 62, 63, 66, 67, 72, 73, 74, 76, 91, 100, 106, 117, 125, 127, 128, 129, 130, 133, 135, 136, 137, 138, 146, 151, 153, 157, 162, 164, 172, 173, 176, 178, 179, 181, 187, 188, 191, 193, 194, 196], "return": [1, 7, 12, 19, 20, 21, 22, 23, 25, 26, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 42, 43, 44, 46, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 64, 65, 68, 69, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194], "from": [1, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16, 17, 19, 20, 21, 23, 25, 26, 41, 42, 44, 45, 72, 73, 76, 80, 125, 126, 127, 128, 129, 130, 131, 133, 134, 135, 136, 137, 138, 140, 146, 152, 153, 157, 163, 164, 196], "simpl": [1, 5, 6, 8, 10, 16, 22, 26, 146, 157], "first": [1, 5, 6, 8, 10, 13, 16, 17, 20, 21, 22, 25, 26, 30, 32, 73, 168, 178, 183, 193, 196], "mystrategi": [1, 2, 5, 6, 8, 10, 13, 16, 25, 26, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 45, 165], "def": [1, 2, 5, 6, 8, 10, 12, 13, 16, 25, 26, 27, 41, 106, 117, 165, 172, 173, 178, 187, 188, 193, 196], "on_trading_iter": [1, 2, 5, 6, 8, 10, 13, 16, 25, 26, 27, 28, 41, 42, 47, 102, 103, 113, 114, 165, 168, 172, 178, 183, 187, 193, 196], "self": [1, 2, 5, 6, 8, 10, 12, 13, 14, 16, 17, 19, 20, 22, 25, 26, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 47, 165], "first_iter": [1, 2, 5, 6, 8, 10, 26], "create_ord": [1, 2, 5, 6, 8, 10, 12, 13, 19, 22, 25, 26, 40, 47, 109, 110, 111, 112, 120, 121, 122, 123, 144, 145, 152, 153, 155, 156, 163, 164], "quantiti": [1, 2, 6, 7, 8, 10, 12, 13, 22, 23, 25, 26, 36, 39, 52, 53, 58, 59, 146, 157], "side": [1, 2, 6, 8, 12, 22, 25, 36, 43, 146, 157], "submit_ord": [1, 2, 5, 6, 8, 10, 13, 19, 22, 25, 26, 40, 43, 47, 109, 110, 111, 112, 120, 121, 122, 123, 144, 145, 146, 150, 155, 156, 157, 161], "creat": [1, 2, 5, 6, 7, 8, 10, 13, 14, 16, 17, 19, 21, 22, 36, 72, 125, 127, 129, 131, 133, 135, 137, 140, 142, 144, 145, 146, 155, 156, 157], "2018": [1, 20], "31": [1, 5, 10, 25, 26, 44, 125, 126, 133, 134], "symbol": [1, 2, 5, 6, 8, 12, 13, 19, 20, 21, 22, 23, 25, 36, 44, 63, 67, 72, 73, 74, 146, 152, 153, 157, 163, 164], "qqq": 1, "asset_typ": [1, 5, 13, 19, 20, 44, 72, 73, 74, 146, 147, 152, 153, 157, 158, 163, 164], "vital": 2, "step": [2, 5, 14], "valid": [2, 19, 21, 22, 44, 125, 126, 133, 134, 146, 157], "your": [2, 5, 6, 7, 8, 10, 11, 12, 14, 15, 18, 20, 22, 40, 41, 47, 48, 49, 51, 55, 57, 61, 70, 82, 101, 146, 157, 165, 166, 178, 193, 196], "histor": [2, 6, 8, 12, 13, 20, 26, 43, 44, 70, 72, 73], "With": [2, 6, 8, 26], "can": [2, 5, 6, 8, 10, 11, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 25, 26, 29, 32, 41, 44, 45, 48, 49, 55, 61, 62, 63, 66, 67, 70, 72, 73, 82, 101, 124, 128, 136, 142, 146, 157, 165, 166, 178, 193], "across": [2, 17], "variou": [2, 6, 7, 8, 14], "even": [2, 6, 8, 30, 153, 164], "own": [2, 5, 6, 8, 12, 13, 16, 17, 23, 25, 26, 150, 161], "custom": [2, 25, 32, 146, 157, 165], "guid": [2, 13, 16, 25, 26], "walk": [2, 17], "through": [2, 13, 14, 17], "explain": 2, "introduc": 2, "why": [2, 26], "see": [2, 13, 14, 15, 17, 19, 20, 25, 26, 44, 48, 61, 70, 82, 101, 124, 142], "past": [2, 22, 25], "help": [2, 3, 6, 8, 25], "identifi": [2, 13, 19, 22, 148, 159], "weak": 2, "strength": 2, "deploi": [2, 26], "them": [2, 11, 17, 20, 22, 25, 26, 47, 48, 61, 70, 82, 101, 124, 142, 145, 156], "market": [2, 11, 12, 13, 17, 22, 25, 26, 28, 29, 30, 31, 32, 40, 43, 74, 75, 102, 103, 106, 109, 110, 111, 112, 113, 114, 117, 120, 121, 122, 123, 146, 151, 152, 153, 157, 162, 163, 164, 172, 173, 175, 187, 188, 190], "begin": [2, 43], "make": [2, 4, 5, 6, 8, 17, 22, 25, 26, 74, 75], "sure": [2, 6, 8, 25, 26], "machin": 2, "follow": [2, 5, 6, 8, 13, 14, 15, 17, 19, 20, 22, 26, 27, 30, 41, 78, 165, 178, 193], "command": [2, 25, 26], "pip": [2, 5, 10, 13, 25, 26], "upgrad": [2, 5, 10, 25, 26], "latest": [2, 5, 10, 13, 17, 25, 26, 72], "version": [2, 5, 7, 10, 17, 25, 26], "onc": [2, 14, 15, 16, 17, 22, 25, 26, 32, 41, 146, 157, 196], "id": [2, 15, 17, 148, 159, 196], "like": [2, 5, 17, 21, 25, 26, 29, 30, 31, 32, 33, 43, 165], "visual": [2, 3, 7, 25], "studio": 2, "code": [2, 5, 6, 7, 8, 13, 14, 17, 25, 26, 28, 29, 30, 33, 34, 35, 36, 37, 38, 39, 62, 66, 102, 103, 113, 114, 165], "v": [2, 7, 19], "pycharm": 2, "quick": 2, "download": [2, 5, 6, 8, 25, 26], "offici": 2, "websit": [2, 7, 10, 13, 14, 16, 17], "http": [2, 6, 8, 12, 13, 14, 15, 16, 17, 20, 25, 26], "visualstudio": 2, "com": [2, 7, 15, 16, 17, 25, 26], "python": [2, 5, 25, 105, 116], "extens": 2, "go": [2, 5, 12, 15, 17, 25, 26], "search": [2, 26], "new": [2, 5, 7, 14, 17, 19, 20, 22, 26, 36, 37, 43, 54, 60, 146, 157, 167, 182], "project": [2, 6, 8, 17], "folder": [2, 5, 10, 13, 17], "termin": [2, 13, 25, 26], "re": [2, 11, 14, 17, 26, 82], "readi": [2, 14, 17, 41, 146, 157], "support": [2, 6, 7, 8, 13, 14, 17, 21, 25, 26, 44, 63, 67, 128, 136, 146, 157], "suit": [2, 26], "differ": [2, 3, 5, 7, 11, 13, 14, 17, 20, 25, 26, 45], "need": [2, 6, 8, 13, 14, 16, 17, 25, 27, 41, 43, 72, 73, 77], "": [2, 3, 6, 7, 8, 13, 14, 16, 17, 18, 21, 25, 26, 38, 41, 46, 52, 58, 82, 83, 85, 86, 87, 88, 89, 90, 91, 92, 94, 95, 96, 97, 98, 99, 100, 128, 136, 147, 158, 165, 178, 193, 196], "overview": 2, "avail": [2, 9, 10, 17, 20, 21, 23, 26, 47, 72, 73, 106, 117, 128, 136, 153, 164, 167, 182], "etf": [2, 10], "suitabl": [2, 17], "longer": 2, "term": 2, "ideal": [2, 17], "intradai": 2, "section": [2, 14, 17, 25, 47], "2": [2, 6, 17, 22, 30, 32, 62, 66, 72, 73, 111, 112, 122, 123, 153, 164, 178, 193], "offer": [2, 7, 14, 17, 26], "two": [2, 3, 11, 19, 22, 25, 26, 73, 145, 156], "year": [2, 6, 8], "plan": [2, 14, 17], "faster": [2, 6, 8], "retriev": [2, 19, 21, 74, 75, 78, 196], "coupon": [2, 6, 8], "lumi10": [2, 6], "10": [2, 6, 8, 13, 17, 19, 20, 32, 40, 44, 63, 67, 82, 127, 135, 152, 153, 163, 164, 165, 172, 173, 178, 187, 188, 193, 196], "off": [2, 6, 8], "3": [2, 12, 17, 146, 157], "design": [2, 17, 25, 27, 41], "look": [2, 5, 15, 26], "price": [2, 6, 8, 9, 13, 16, 17, 19, 20, 21, 22, 23, 31, 36, 39, 43, 44, 45, 47, 62, 63, 66, 67, 70, 72, 73, 74, 75, 78, 128, 136, 146, 152, 153, 157, 163, 164], "secur": [2, 5, 10, 14, 19, 22], "account": [2, 6, 8, 11, 12, 13, 15, 16, 17, 26, 43, 47, 49, 51, 53, 55, 57, 59, 61, 150, 161, 167, 182], "usernam": [2, 8, 11, 17, 26], "password": [2, 8, 13, 14, 17, 196], "net": [2, 8, 51, 57], "lumi": [2, 7, 8], "4": [2, 17, 26, 147, 158], "full": [2, 6, 8, 11, 14, 26, 125, 133], "flexibl": [2, 5, 6, 8, 25], "dataset": 2, "e": [2, 9, 17, 19, 20, 21, 22, 23, 25, 72, 73, 74, 146, 147, 152, 157, 158, 163], "g": [2, 9, 17, 20, 21, 22, 23, 25, 72, 73, 146, 157], "databas": [2, 5, 17, 26], "export": 2, "manual": [2, 14, 17], "configur": [2, 11, 15, 26], "ve": [2, 13, 16, 26], "select": [2, 14, 17], "built": [2, 5, 26], "addit": [2, 14, 17, 19, 22, 146, 157], "specif": [2, 7, 13, 14, 17, 19, 22, 41, 44, 62, 66, 109, 120, 125, 126, 133, 134, 146, 157, 166], "replac": [2, 6, 8, 13], "your_polygon_api_kei": [2, 6], "actual": [2, 13, 22, 41, 43, 175, 190], "1d": [2, 6, 8, 20, 21, 40, 44], "get_last_pric": [2, 6, 8, 10, 13, 16, 20, 21, 26, 44, 47], "qty": [2, 6, 8], "portfolio_valu": [2, 6, 8, 10, 13, 26, 28, 42, 177, 192], "__name__": [2, 6, 8, 13], "__main__": [2, 6, 8, 13], "2023": [2, 6, 8, 44, 125, 126, 133, 134, 196], "result": [2, 5, 6, 8, 10, 25, 26, 42], "inform": [2, 3, 5, 9, 10, 13, 17, 43, 44, 77, 78, 126, 131, 134, 140, 146, 157, 166], "about": [2, 9, 11, 26, 166], "refer": [2, 3, 17, 26, 27], "crucial": [2, 17, 25], "understand": [2, 4, 25], "aspect": 2, "execut": [2, 9, 17, 22, 23, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 45, 102, 103, 107, 109, 111, 113, 114, 118, 120, 122, 143, 152, 154, 163, 172, 173, 178, 187, 188, 193], "statist": 2, "analysi": [2, 4, 13, 46], "tear": 2, "sheet": 2, "includ": [2, 3, 7, 9, 10, 13, 17, 19, 20, 26, 32, 41, 44, 54, 60, 72, 124, 146, 148, 157, 159, 175, 190], "equiti": [2, 14, 51, 57], "curv": 2, "metric": [2, 7], "sharp": [2, 7], "ratio": [2, 7], "drawdown": [2, 7], "comparison": 2, "everi": [2, 25, 32, 40, 43, 47, 81, 196], "which": [2, 6, 7, 8, 9, 13, 14, 17, 20, 21, 22, 32, 41, 49, 51, 55, 57, 74, 75, 76, 77, 128, 130, 136, 138, 178, 193], "wa": [2, 12, 13, 27, 30, 33, 34, 41, 43, 72, 167, 182], "timestamp": [2, 12, 20, 44, 62, 63, 66, 67, 85, 86, 87, 88, 89, 94, 95, 96, 97, 98, 196], "essenti": [2, 17], "review": [2, 14], "potenti": [2, 25, 26, 147, 158], "issu": 2, "optim": [2, 7, 17, 26], "interpret": [2, 178, 193], "technic": [2, 13, 41], "move": [2, 7, 22, 26], "averag": [2, 7, 22, 23], "rsi": [2, 13], "respond": 2, "condit": [2, 22, 40], "base": [2, 7, 12, 13, 19, 20, 21, 22, 23, 24, 26, 40, 43, 44, 46, 72, 73, 74, 146, 157], "power": [2, 6, 8, 17, 25, 26], "framework": [2, 41], "multipl": [2, 17, 143, 154, 196], "By": [2, 17, 26, 34, 128, 136, 172, 173, 176, 178, 179, 181, 187, 188, 191, 193, 194], "quickli": [2, 14, 17, 25], "environ": [2, 14, 26, 196], "confid": 2, "further": [2, 17], "individu": [2, 26], "abov": [2, 15, 19, 20, 32], "uniqu": 3, "becaus": [3, 5, 6, 8, 10, 17, 43], "thei": [3, 5, 11, 17, 20, 26, 41, 81, 128, 136], "add_mark": [3, 26, 47], "add": [3, 5, 13, 14, 17, 19, 22, 25, 32, 43, 46, 62, 63, 66, 67], "marker": [3, 46, 63, 65, 67, 69], "add_lin": [3, 26, 47], "line": [3, 26, 46, 62, 63, 64, 66, 67, 68], "influenc": [3, 27, 41], "decis": [3, 4], "point": [3, 7, 9, 15, 22, 44, 62, 66, 72, 73, 147, 158], "time": [3, 5, 6, 8, 9, 12, 13, 14, 17, 20, 21, 25, 32, 41, 43, 44, 45, 71, 72, 73, 78, 81, 82, 87, 88, 96, 97, 102, 103, 107, 113, 114, 118, 128, 136, 146, 157, 168, 178, 183, 193], "event": [4, 26, 33, 34, 35, 36, 37, 38, 39, 43, 63, 67], "action": [4, 17], "taken": 4, "backtest": [4, 5, 7, 10, 17, 21, 22, 24, 32, 44, 46, 63, 67, 72, 73, 74, 75, 82, 83, 85, 86, 87, 88, 89, 92, 94, 95, 96, 97, 98, 106, 117, 170, 185], "debug": [4, 46, 196], "process": [4, 6, 8, 14, 17, 25, 37, 39, 152, 153, 163, 164, 196], "collect": [4, 5], "comprehens": [4, 25], "view": [4, 17], "refin": [4, 25], "note": [5, 10, 13, 14, 15, 17, 20, 22, 43, 77, 146, 157], "ensur": [5, 10, 14, 17, 21, 22, 25, 26, 146, 157], "proceed": [5, 10, 14, 25], "been": [5, 10, 15, 22, 23, 35, 36, 37, 39, 43, 74, 78], "some": [5, 10, 14, 25, 26, 44, 45, 74, 146, 157], "major": [5, 10], "chang": [5, 10, 12, 14, 16, 17, 20, 32], "modul": [5, 10, 26], "situat": 5, "much": [5, 6, 8, 12], "easier": [5, 17], "intend": [5, 17], "who": [5, 17, 52, 58, 147, 158], "after": [5, 6, 8, 13, 14, 17, 21, 26, 28, 30, 31, 40, 42, 44, 63, 67, 72, 76, 130, 138, 139, 196], "librari": [5, 7, 13, 16, 17, 25], "strictli": [5, 21], "parquet": 5, "etc": [5, 16, 20, 21, 40, 45, 48, 61, 63, 67, 77, 148, 159], "wish": [5, 26], "accept": [5, 19], "one": [5, 7, 13, 14, 17, 22, 25, 26, 41, 43, 47, 72, 109, 120, 146, 153, 157, 164], "frame": 5, "raw": [5, 20, 22], "addition": [5, 10, 20], "possibl": [5, 14, 32, 44, 62, 63, 66, 67, 153, 164], "contract": [5, 19, 20, 22, 32, 43], "also": [5, 10, 15, 17, 22, 25, 26, 32, 43, 72, 146, 151, 157, 162, 166], "difficult": 5, "backtestingbrok": [5, 6, 8, 10, 43], "next": [5, 6, 8, 12, 17, 26, 40, 76, 130, 138, 139], "normal": [5, 16, 131, 140], "someth": [5, 13], "0000": 5, "hr": [5, 21], "2359": [5, 21], "last": [5, 13, 20, 21, 22, 28, 30, 31, 42, 43, 44, 72, 73, 74, 75, 85, 86, 94, 95, 171, 186, 196], "consid": [5, 20, 177, 192], "zone": [5, 20], "unless": 5, "america": [5, 20, 44, 176, 179, 181, 191, 194], "york": [5, 17], "aka": 5, "est": 5, "receiv": [5, 14], "index": [5, 19, 20, 21, 26, 78], "datetime64": [5, 21], "column": [5, 20, 21, 78, 196], "high": [5, 20, 21, 25, 26, 43, 78, 81], "low": [5, 17, 20, 21, 43, 78, 81], "volum": [5, 20, 21, 78, 81], "should": [5, 10, 14, 16, 20, 22, 27, 40, 43, 45, 74, 107, 118, 128, 136], "2020": [5, 10, 25, 26, 72, 90, 91, 99, 100, 147, 152, 158, 163], "01": [5, 6, 8, 20, 25, 146, 147, 152, 157, 158, 163], "02": [5, 20], "09": 5, "00": [5, 44, 110, 121, 146, 152, 153, 157, 163, 164, 196], "3237": 5, "3234": 5, "75": 5, "3235": 5, "25": [5, 17], "16808": 5, "32": 5, "10439": 5, "33": 5, "50": [5, 22, 32, 146, 157, 178, 193], "3233": 5, "8203": 5, "04": [5, 44], "22": 5, "15": [5, 17, 20, 32, 44, 72, 73], "56": 5, "2800": 5, "2796": 5, "8272": 5, "57": 5, "2794": 5, "7440": 5, "58": 5, "2793": 5, "7569": 5, "yfinanc": [5, 44], "yf": [5, 44], "5d": 5, "interv": 5, "1m": [5, 21, 44], "to_csv": 5, "subsequ": [5, 6, 8], "ad": [5, 11, 13, 17, 19, 26, 72, 73], "One": [5, 17, 19, 22, 44, 146, 157], "load": [5, 18, 21, 63, 67, 196], "mai": [5, 13, 14, 17, 19, 22, 25, 72, 73, 81, 146, 157], "might": [5, 13, 14, 17], "entiti": [5, 13, 19, 20, 21, 22, 23, 24, 25, 26, 72, 73, 80, 146, 152, 153, 157, 163, 164], "assettyp": [5, 13, 19, 146, 152, 153, 157, 163, 164], "pd": [5, 20], "awar": [5, 20], "df": [5, 13, 20, 21, 30, 72, 73], "read_csv": 5, "third": 5, "we": [5, 6, 7, 8, 10, 11, 13, 17, 25, 26, 28, 47, 72, 146, 157], "least": [5, 41], "timestep": [5, 21, 43, 44, 72, 73, 84, 93], "either": [5, 19, 21, 22, 72, 73, 74, 75], "final": [5, 6, 8, 10, 14, 26], "trader": [5, 6, 8, 10, 12, 13, 14, 15, 16, 26, 33], "data_sourc": [5, 12, 43, 44, 72, 73], "datetime_start": [5, 43], "datetime_end": [5, 43], "strat": 5, "100000": 5, "add_strategi": [5, 12, 13, 14, 15, 16, 25, 26, 46], "run_al": [5, 13, 14, 15, 16, 25, 26, 46], "put": [5, 12, 16, 19, 25], "togeth": [5, 22, 25], "Then": [5, 13, 16, 72], "startegi": 5, "read": [5, 15, 25, 44], "same": [5, 14, 17, 22, 26, 73], "directori": [5, 14, 17], "script": 5, "pick": [5, 10, 17, 26], "rang": [5, 13, 17, 20, 21], "link": [6, 8, 14], "give": [6, 8, 13, 131, 140], "u": [6, 7, 8, 13, 14, 21, 26, 175, 190], "credit": [6, 8, 153, 164], "sale": [6, 8], "utm_sourc": 6, "affili": 6, "utm_campaign": 6, "robust": [6, 8], "fetch": [6, 8, 44, 126, 131, 134, 140], "simplifi": [6, 8], "simpli": [6, 8], "polygondatasourc": 6, "get_historical_pric": [6, 8, 13, 20, 26, 31, 44, 47, 73], "As": [6, 8, 17], "pai": [6, 8, 14], "mani": [6, 8, 13, 26, 32, 41, 81], "won": [6, 8], "t": [6, 8, 13, 14, 17, 26], "limit": [6, 8, 13, 14, 17, 22, 43, 72, 73, 81, 110, 121, 146, 152, 153, 157, 163, 164], "cach": [6, 8], "comput": [6, 8, 17, 25, 26], "so": [6, 8, 10, 13, 14, 17, 19, 22, 25, 26, 47, 82, 128, 136], "take": [6, 8, 17, 22, 25, 41, 44, 62, 63, 66, 67, 73, 74, 75, 125, 133], "bit": [6, 8], "obtain": [6, 8, 13, 44, 126, 127, 129, 131, 134, 135, 137, 140], "dashboard": [6, 8, 25], "necessari": [6, 8, 17, 43], "inherit": [6, 8, 45], "defin": [6, 7, 8, 13, 24, 27, 32, 41, 42, 43, 45, 165, 196], "hold": [6, 8, 20, 22, 23, 26, 36], "until": [6, 8, 12, 20, 102, 103, 113, 114, 146, 157], "determin": [6, 7, 8, 12, 22, 43, 106, 117, 146, 157, 166], "05": [6, 8, 146, 157, 196], "form": [6, 21, 81, 106, 117, 127, 129, 135, 137, 167, 182], "tool": [6, 8, 17, 26], "capabl": [6, 8], "easi": [6, 8, 14, 17, 25, 26], "integr": [6, 8], "versatil": [6, 8, 13, 17], "choic": [6, 8, 14, 17], "gener": [7, 10, 13, 16, 26, 151, 162], "quantstat": 7, "varieti": 7, "annual": [7, 25, 26], "yearli": 7, "total": [7, 20, 28, 51, 57, 147, 158, 175, 190], "romad": 7, "over": [7, 19, 20, 25, 26, 62, 63, 66, 67], "maximum": [7, 17], "sortino": 7, "variat": 7, "differenti": 7, "harm": 7, "volatil": [7, 22, 128, 136], "max": [7, 13], "observ": 7, "loss": [7, 22, 43, 62, 63, 66, 67, 146, 152, 153, 157, 163, 164], "peak": 7, "trough": 7, "portfolio": [7, 9, 13, 23, 28, 51, 57, 63, 67, 175, 190], "attain": [7, 146, 157], "longest": 7, "durat": [7, 32, 146, 153, 157, 164, 178, 193], "reach": [7, 25, 26, 43], "accompani": 7, "graph": [7, 62, 63, 66, 67], "cumul": 7, "scale": [7, 196], "better": [7, 22, 146, 157], "exponenti": 7, "growth": 7, "showcas": 7, "tailor": 7, "achiev": [7, 22, 25, 26], "goal": 7, "condor": [7, 17], "martingal": 7, "iron": 7, "delta": [7, 128, 136], "previou": [7, 79, 80], "dte": 7, "expir": [7, 14, 19, 22, 32, 44, 72, 74, 125, 126, 127, 128, 133, 134, 135, 136, 139, 146, 157], "bband": 7, "v2": 7, "bolling": [7, 62, 66], "band": [7, 62, 66], "interest": [7, 13, 128, 136], "implement": [7, 17, 26, 27, 41, 44, 46], "visit": [7, 16, 17, 25, 26], "our": [7, 13, 17, 25, 26, 28], "lumiwealth": [7, 15, 26], "access": [7, 14, 16, 17, 20, 25, 26, 165, 196], "invest": [7, 14, 26], "question": 7, "email": [7, 14], "www": [8, 16], "thetadatabacktest": 8, "altern": 8, "both": [8, 14, 22, 25, 30, 146, 157], "argument": [8, 128, 136], "thetadata_usernam": 8, "thetadata_password": 8, "were": [9, 26, 38], "place": [9, 13, 18, 146, 151, 157, 162], "along": 9, "involv": 9, "strike": [9, 19, 44, 72, 126, 128, 131, 134, 136, 140, 146, 157], "ticker": [9, 19, 20, 32, 44, 81], "cash": [9, 13, 22, 26, 28, 42, 43, 48, 49, 51, 55, 57, 61, 175, 177, 180, 190, 192, 195], "amount": [9, 13, 20, 22, 28, 44, 49, 51, 55, 57, 79, 80, 146, 157], "cannot": 10, "veri": [10, 17, 26], "easili": [10, 26, 32, 45], "modifi": [10, 25, 26], "anyth": 10, "There": [10, 11, 146, 157], "aapl_pric": [10, 26], "alloc": 10, "11": [10, 17, 19, 26], "12": [10, 17, 19, 25, 26, 74], "speak": [11, 41], "learn": [11, 17, 25, 26], "alpaca": [11, 20, 26, 72, 73], "document": [11, 13, 14, 17, 25, 26, 72], "interact": [11, 13, 20, 22, 26, 45, 72, 73, 74, 81], "factor": [11, 26], "authent": [11, 26], "2fa": [11, 26], "secondari": [11, 26], "paper": [11, 12, 15, 16, 17, 26, 44], "legaci": [11, 26], "ccxt": [11, 26], "tradier": [11, 26, 77, 153, 164], "max_work": [12, 43, 44, 73], "20": [12, 13, 22, 32, 43, 165], "chunk_siz": [12, 44, 73], "connect_stream": [12, 43], "connect": [12, 13, 14, 17, 105, 116], "tradeapi": 12, "rest": [12, 14, 17, 41], "get_timestamp": [12, 26, 44, 47], "current": [12, 13, 14, 17, 21, 36, 37, 42, 43, 44, 49, 51, 52, 55, 57, 58, 62, 63, 66, 67, 72, 73, 77, 78, 82, 83, 84, 85, 86, 87, 88, 89, 92, 93, 94, 95, 96, 97, 98, 128, 136, 143, 149, 153, 154, 160, 164, 167, 175, 178, 182, 190, 193, 196], "unix": 12, "represent": [12, 21, 22, 44, 72, 73], "is_market_open": [12, 43], "get_time_to_open": [12, 43], "remain": [12, 39, 43, 172, 187], "get_time_to_clos": [12, 43], "alpaca_config": [12, 25, 26], "your_api_kei": [12, 13], "secret": [12, 13, 14, 16, 25, 26], "api_secret": [12, 25, 26], "your_api_secret": 12, "endpoint": 12, "print": [12, 42, 196], "alpacastrategi": 12, "on_trading_inter": [12, 32], "order_typ": [12, 153, 164], "asset_type_map": 12, "us_equ": 12, "cancel_ord": [12, 26, 43, 47, 149, 160], "cancel": [12, 22, 30, 35, 43, 71, 109, 111, 120, 122, 142, 143, 144, 145, 146, 149, 151, 154, 155, 156, 157, 160, 162], "get_historical_account_valu": [12, 43], "1400": 12, "1600": 12, "7": [12, 13, 17, 26, 32, 106, 117], "0830": 12, "0930": 12, "600": 12, "sampl": [12, 26], "1612172730": 12, "000234": 12, "boolean": [12, 151, 153, 162, 164], "map_asset_typ": 12, "orderdata": 12, "to_request_field": 12, "cryoptocurr": 13, "popular": 13, "find": [13, 14, 15, 16, 17, 26, 44, 76, 127, 129, 130, 131, 135, 137, 138, 139, 140], "readthedoc": 13, "en": 13, "enabl": [13, 14, 15], "wide": [13, 17, 63, 67], "coinbas": [13, 26], "pro": 13, "binanc": [13, 26], "kraken": [13, 26, 146, 157], "kucoin": [13, 26], "constantli": [13, 26], "don": [13, 14, 17, 26], "let": 13, "know": [13, 18], "ll": [13, 14, 16, 26], "desir": [13, 14, 21, 81, 128, 136], "credenti": [13, 14, 15], "rememb": [13, 26], "under": [13, 14, 17, 25], "similar": [13, 17, 30], "alwai": [13, 30, 43, 106, 117, 167, 182], "24": [13, 17, 32, 106, 117], "set_market": [13, 26, 32, 47], "few": [13, 17, 26, 101], "common": [13, 14], "coinbase_config": 13, "exchange_id": 13, "apikei": 13, "your_secret_kei": 13, "sandbox": [13, 17], "kraken_config": 13, "margin": [13, 146, 157], "kucoin_config": 13, "your_passphras": 13, "NOT": 13, "your_secret": 13, "coinbasepro_config": 13, "coinbasepro": 13, "instanti": [13, 16, 26, 43], "chosen": [13, 16, 17], "correct": [13, 14, 16], "instanc": [13, 196], "strategy_executor": [13, 16], "complet": [13, 14, 15, 17, 22, 26, 74, 75], "demonstr": 13, "pandas_ta": 13, "error": [13, 17, 22, 34], "importantfunct": 13, "30": [13, 40, 72, 73, 81, 196], "sinc": 13, "those": [13, 17, 166], "hour": [13, 20, 21, 32, 40, 44, 72, 73, 106, 117, 178, 193], "quot": [13, 19, 20, 21, 22, 44, 49, 51, 55, 57, 72, 73, 74, 75, 77, 146, 152, 153, 157, 163, 164, 175, 177, 190, 192], "transact": [13, 22, 167, 182], "btc": [13, 19, 20, 72, 73, 74, 146, 152, 153, 157, 163, 164], "0": [13, 15, 17, 19, 21, 22, 23, 24, 25, 32, 42, 43, 44, 87, 88, 96, 97, 146, 152, 153, 157, 163, 164, 173, 188, 196], "mkt_order": 13, "000": [13, 25, 26], "lmt_order": 13, "limit_pric": [13, 22, 43, 110, 121, 146, 152, 153, 157, 163, 164], "10000": [13, 25], "pair": [13, 20, 22, 44, 74, 75, 125, 126, 133, 134, 146, 157], "bar": [13, 18, 21, 26, 43, 44, 63, 67, 71, 72, 73, 74, 75, 78, 81, 83, 85, 86, 87, 88, 89, 92, 94, 95, 96, 97, 98, 128, 136], "max_pric": 13, "log_messag": [13, 16, 20, 26, 28, 30, 33, 34, 35, 36, 37, 38, 39, 40, 42, 47, 52, 53, 58, 59, 72, 73, 74, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 132, 141, 147, 148, 149, 158, 159, 160, 167, 168, 169, 170, 171, 172, 174, 175, 176, 177, 179, 181, 182, 183, 184, 185, 186, 187, 189, 190, 191, 192, 194], "f": [13, 16, 28, 35, 36, 38, 39, 42, 72, 74, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 132, 141, 169, 171, 174, 176, 177, 179, 181, 184, 186, 189, 191, 192, 194, 196], "calcul": [13, 20, 22, 43, 44, 128, 136], "ta": 13, "length": [13, 21, 43, 44, 72, 73, 78, 84, 93], "current_rsi": 13, "iloc": [13, 72], "macd": 13, "current_macd": 13, "55": 13, "ema": 13, "current_ema": 13, "get_posit": [13, 23, 26, 47, 150, 161], "share": [13, 16, 20, 22, 29, 31, 36, 39, 44, 146, 157, 175, 190], "asset_to_get": 13, "outstand": 13, "get_ord": [13, 26, 47], "whatev": 13, "last_pric": [13, 74, 75, 196], "color": [13, 62, 63, 66, 67, 105, 116], "green": [13, 62, 63, 66, 67, 105, 116], "dt": [13, 21, 44, 62, 63, 66, 67, 90, 91, 99, 100, 139], "get_datetim": [13, 26, 43, 44, 47], "check": [13, 17, 22, 26, 40, 43, 47, 72, 148, 149, 159, 160, 168, 170, 183, 185], "certain": [13, 63, 67], "eg": [13, 17, 19, 20, 25, 44, 47, 49, 51, 55, 57, 62, 63, 66, 67, 70, 77, 82, 105, 116, 125, 126, 133, 134, 146, 157, 178, 193], "9": [13, 17, 32], "30am": 13, "entir": 13, "example_strategi": [13, 25, 26], "github": [13, 15, 17, 20, 25, 26], "repositori": [13, 17], "brokerag": [14, 17], "firm": 14, "oper": [14, 17, 32, 41], "countri": 14, "around": [14, 17, 18], "world": [14, 17], "great": [14, 17], "especi": [14, 82, 196], "platform": [14, 26], "fee": [14, 17, 18, 26], "structur": [14, 26], "best": [14, 17], "deal": [14, 26], "real": [14, 16, 17, 25, 71, 78, 81], "subscrib": 14, "appropri": [14, 20], "packag": [14, 26], "depend": [14, 17, 72, 73], "exchang": [14, 21, 22, 44, 72, 73, 74, 75, 76, 83, 85, 86, 87, 88, 89, 92, 94, 95, 96, 97, 98, 125, 126, 127, 129, 130, 131, 133, 134, 135, 137, 138, 140, 146, 157], "snapshot": [14, 42], "bundl": 14, "On": [14, 17], "stream": [14, 71, 78, 81], "nasdaq": [14, 32, 106, 117], "network": 14, "c": 14, "utp": 14, "totalview": 14, "nyse": [14, 32, 76, 106, 117, 130, 138], "cta": 14, "openbook": 14, "ultra": 14, "opra": 14, "top": [14, 17, 26], "relat": [14, 17, 36], "suffic": 14, "login": 14, "ibkr": 14, "client": [14, 15, 17], "portal": 14, "navig": [14, 15, 17], "menu": [14, 26], "click": [14, 17], "prompt": 14, "incur": 14, "cost": [14, 17, 43], "associ": 14, "notif": [14, 17], "ib": [14, 19, 132, 141], "mobil": 14, "app": 14, "approv": 14, "interrupt": [14, 33, 196], "autom": [14, 17], "handl": 14, "solut": 14, "fulli": 14, "doesn": 14, "approach": 14, "conveni": 14, "primari": [14, 196], "maintain": [14, 17], "without": [14, 17, 25, 131, 140], "separ": [14, 17], "control": [14, 178, 193], "twice": 14, "enhanc": [14, 25], "complex": [14, 25], "restrict": 14, "ip": [14, 15, 17], "address": [14, 17], "tw": [14, 17, 20], "ibgatewai": 14, "permiss": [14, 19], "what": [14, 26, 47, 82, 177, 192], "keep": [14, 17, 22, 23, 81, 146, 157], "below": [14, 45, 47, 48, 61, 70, 74, 82, 101, 124, 142], "instruct": [14, 17, 146, 152, 153, 157, 163, 164], "given": [14, 20, 21, 43, 44, 52, 58, 71, 72, 73, 76, 84, 93, 125, 127, 129, 130, 131, 133, 135, 137, 138, 139, 140, 143, 148, 154, 159], "attempt": [14, 175, 190], "while": [14, 17], "disconnect": 14, "caus": 14, "loop": [14, 31, 40, 103, 114, 172, 187], "stop": [14, 22, 25, 32, 33, 40, 43, 62, 63, 66, 67, 102, 103, 113, 114, 146, 152, 153, 157, 163, 164, 172, 187, 196], "tediou": 14, "upper": 14, "right": [14, 17, 19, 28, 63, 67, 72, 152, 163], "corner": [14, 17], "scroll": [14, 17], "down": [14, 17, 25, 33, 63, 67], "plu": [14, 105, 116, 175, 190], "sign": 14, "button": [14, 17], "header": 14, "fill": [14, 17, 21, 22, 23, 36, 39, 43, 146, 157, 167, 182], "out": [14, 26, 43, 47, 52, 58, 74], "field": [14, 20, 22], "page": [14, 16, 17, 26], "At": [14, 25], "confirm": [14, 17], "activ": [14, 17, 22, 26, 74, 75, 78, 152, 153, 163, 164], "back": [14, 196], "enter": [14, 17, 19, 22, 31, 146, 157, 178, 193], "via": 14, "act": 14, "promptli": 14, "ask": [14, 77], "proof": 14, "author": 14, "upload": 14, "request": 14, "eula": 14, "signatur": 14, "block": 14, "submit": [14, 22, 37, 43, 47, 142, 146, 152, 153, 157, 163, 164], "practic": 14, "monei": [14, 16, 17, 25, 49, 51, 55, 57, 167, 182], "avoid": 14, "conflict": [14, 196], "variabl": [14, 26, 31, 42, 166], "env": [14, 17, 196], "ib_usernam": [14, 17], "user123": [14, 17], "ib_password": [14, 17], "password123": [14, 17], "account_id": [14, 17], "subaccount": [14, 17], "u17369206": [14, 17], "ib_api_url": [14, 17], "url": [14, 17], "host": [14, 17], "localhost": [14, 17, 196], "8000": [14, 17], "strangl": [14, 15], "tutori": [15, 26], "workstat": 15, "global": [15, 17, 20, 45], "activex": 15, "socket": [15, 17], "disabl": 15, "port": [15, 17], "7496": 15, "7497": [15, 17], "highli": [15, 26], "thoroughli": 15, "algorithm": [15, 17, 25], "master": 15, "999": 15, "py": [15, 17, 25, 26], "interactive_brokers_config": 15, "socket_port": 15, "client_id": 15, "digit": 15, "127": [15, 17], "entri": [15, 22], "except": [15, 20, 25, 26, 34], "interactivebrok": [15, 20], "interactive_brok": 15, "simple_start_ib": 15, "bot": [15, 17, 25, 32, 34, 45, 196], "blob": [15, 25, 26], "getting_start": 15, "dash": [16, 62, 66], "tradier_config": 16, "access_token": 16, "qtrz3zurd9244ahuw2aoyapgvyra": 16, "account_numb": 16, "va22904793": 16, "your_access_token": 16, "your_account_numb": 16, "That": 16, "now": [16, 25, 44, 74], "abl": 16, "less": [16, 146, 147, 157, 158], "than": [16, 17, 44, 82, 146, 147, 157, 158], "cover": [17, 26], "topic": 17, "decid": [17, 72], "correctli": 17, "applic": [17, 106, 117], "success": 17, "skip": [17, 30], "repl": 17, "eas": 17, "afford": 17, "expens": [17, 128, 136], "browser": [17, 25, 46], "edit": 17, "directli": [17, 43], "tip": 17, "howev": [17, 22, 30, 32, 146, 157], "excel": 17, "develop": [17, 26], "month": [17, 85, 94], "fit": [17, 101], "scalabl": [17, 196], "figur": 17, "blueprint": 17, "worker": 17, "background": 17, "butterfli": 17, "afa": 17, "starter": 17, "itself": 17, "left": [17, 63, 67], "sidebar": 17, "delet": 17, "unnecessari": 17, "trashcan": 17, "mandatori": [17, 19, 45, 146, 157], "ones": [17, 41], "restart": [17, 40], "servic": [17, 105, 116], "commit": 17, "redeploi": 17, "tab": 17, "6": [17, 19, 26], "monitor": 17, "expect": [17, 25, 26, 128, 136], "regularli": 17, "profit": [17, 22, 25, 26, 43, 62, 63, 66, 67], "8": [17, 26], "bottom": 17, "press": 17, "consol": [17, 105, 116], "everyth": [17, 26], "part": [17, 22, 41, 153, 164, 165], "locat": 17, "reserv": 17, "vm": 17, "13": [17, 127, 135], "downgrad": 17, "vcpu": 17, "effect": 17, "reduc": 17, "todai": [17, 74, 82], "wait": [17, 22, 39, 109, 110, 111, 112, 120, 121, 122, 123], "messag": [17, 101, 105, 116], "14": [17, 196], "16": [17, 74], "17": [17, 19, 32], "proper": 17, "discord": [17, 26], "webhook": 17, "live_config": 17, "correspond": [17, 35, 36, 37], "soon": 17, "incred": 17, "commiss": 17, "lot": [17, 166], "engag": 17, "tradier_access_token": 17, "token": 17, "qtrz3zurl9244ahuw4aoyapgvyra": 17, "tradier_account_numb": 17, "va12204793": 17, "tradier_is_pap": 17, "align": 17, "perfectli": 17, "seamlessli": 17, "alpaca_api_kei": 17, "pk7t6yvax6pmh1em20yn": 17, "alpaca_api_secret": 17, "9wgjls3wixq54fcphwwzjcp8jcfjfkuwsryskkma": 17, "alpaca_is_pap": 17, "unit": [17, 44, 146, 157, 178, 193], "state": [17, 166, 196], "typic": [17, 22, 165], "challeng": 17, "friendli": 17, "coinbase_api_kei": 17, "steea9fhiszntmpihqjudeqolitj0javz": 17, "coinbase_api_secret": 17, "nuzcnprsxjxxouxrhqe5k2k1xnqlpckh2xcutifkcw": 17, "coinbase_is_sandbox": 17, "focus": 17, "competit": 17, "kraken_api_kei": 17, "xyz1234567890abcdef": 17, "kraken_api_secret": 17, "abcdef1234567890abcdef1234567890abcdef1234": 17, "intern": [17, 146, 157], "arrai": [17, 21], "cfd": 17, "Their": 17, "presenc": 17, "compat": 17, "purpos": 17, "newer": 17, "interactive_brokers_port": 17, "interactive_brokers_client_id": 17, "123456": 17, "interactive_brokers_ip": 17, "ib_subaccount": 17, "subaccount1": 17, "src": 17, "paper_1": 17, "is_backtest": [17, 26], "a7py0zidhxde6qkx8ojjknp7cd87hwku": 17, "discord_webhook_url": 17, "send": [17, 105, 116], "123456789": 17, "db_connection_str": [17, 196], "histori": 17, "sqlite": 17, "account_histori": 17, "db": 17, "strategy_nam": 17, "strategy_id": [17, 196], "my": [17, 25], "think": [17, 82], "polygon_max_memory_byt": 17, "memori": 17, "byte": 17, "usag": [17, 26], "512000000": 17, "main": [17, 18, 22, 26, 33, 40, 45, 146, 157], "smoothli": 17, "verifi": 17, "behav": 17, "ey": 17, "straightforward": 17, "happi": 17, "assist": 17, "repres": [19, 22, 44, 45, 72, 73, 126, 134], "attribut": [19, 196], "track": [19, 23, 26, 52, 53, 58, 59, 148, 149, 159, 160], "underli": [19, 21, 128, 131, 136, 140], "ibm": [19, 145, 156], "just": [19, 26, 32, 36, 43, 146, 157], "corpor": 19, "printout": 19, "multipli": [19, 20, 36, 39, 44, 125, 126, 129, 131, 133, 134, 137, 140, 152, 163], "nexpir": 19, "expiri": [19, 127, 132, 135, 141], "june": 19, "2021": [19, 32, 128, 136, 139], "18": 19, "currenc": [19, 72, 146, 157, 167, 175, 177, 182, 190, 192], "eur": [19, 72, 73, 146, 152, 153, 157, 163, 164], "convers": [19, 178, 193], "gbp": [19, 152, 163], "behind": 19, "scene": 19, "anytim": 19, "due": 19, "precis": [19, 128, 136], "underlying_asset": 19, "case": [19, 21, 22], "yyyymmdd": [19, 132, 141], "yyyymm": 19, "multileg": [19, 22, 153, 164], "leverag": [19, 146, 157], "_asset_typ": 19, "_right": 19, "asset_type_must_be_one_of": 19, "right_must_be_one_of": 19, "26": 19, "155": 19, "base_asset": [19, 152, 153, 163, 164], "optionright": 19, "classmethod": [19, 20, 22, 23, 44], "from_dict": [19, 22, 23], "is_valid": 19, "symbol2asset": 19, "particularli": 19, "to_dict": [19, 22, 23], "assetsmap": 19, "map": 19, "userdict": 19, "datafram": [20, 21, 44, 64, 65, 68, 69, 72, 78, 81], "dividend": [20, 44, 79, 80, 128, 136, 167, 182], "stock_split": 20, "local": [20, 21, 42, 44, 90, 91, 99, 100, 128, 136], "timezon": [20, 21, 26, 44, 90, 91, 99, 100, 176, 181, 191], "new_york": [20, 44, 176, 179, 181, 191, 194], "helper": [20, 22, 45], "row": [20, 42, 72, 73, 81], "get_last_dividend": 20, "per": [20, 44], "get_momentum": 20, "momentum": 20, "aggregate_bar": 20, "frequenc": [20, 21], "Will": [20, 25, 62, 63, 66, 67, 74, 75, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 125, 126, 127, 128, 129, 131, 132, 133, 134, 135, 136, 137, 139, 140, 141, 151, 162, 176, 179, 181, 191, 194], "timefram": 20, "min": 20, "15min": 20, "1h": [20, 40], "specifi": [20, 22, 44, 72, 73, 146, 157, 196], "filter": 20, "daterang": 20, "get_total_volum": 20, "sum": [20, 51, 57], "themselv": 20, "supplier": 20, "exce": 20, "pace": 20, "throttl": 20, "respect": 20, "mention": 20, "tick": 20, "frequent": 20, "accur": [20, 44], "updat": [20, 22, 26, 36, 38, 108, 119, 146, 157, 167, 182], "rule": 20, "historical_limit": 20, "financi": [20, 25], "ohlcv": [20, 21, 43], "split": [20, 45], "instrument": 20, "yield": 20, "coin": [20, 146, 157], "eth": [20, 73, 146, 153, 157, 164], "num_period": 20, "get_total_dividend": 20, "get_total_stock_split": 20, "get_total_return": 20, "get_total_return_pct": 20, "percentag": [20, 25], "get_total_return_pct_chang": 20, "recent": [20, 72, 78], "get_bar": [20, 21, 44], "ethereum": 20, "bitcoin": 20, "grouper_kwarg": 20, "bars_agg": 20, "inclus": 20, "parse_bar_list": 20, "bar_list": 20, "singl": [20, 144, 155], "nobardatafound": 20, "date_start": 21, "date_end": 21, "trading_hours_start": 21, "trading_hours_end": 21, "23": 21, "59": 21, "input": [21, 102, 103, 113, 114], "manag": [21, 22, 26, 47, 61, 124], "attach": 21, "0001": 21, "localize_timezon": 21, "tz_local": 21, "eastern": 21, "utc": 21, "sybmol": 21, "datalin": 21, "numpi": 21, "iter_index": 21, "count": [21, 32, 78, 81, 196], "seri": 21, "set_tim": 21, "repair_times_and_fil": 21, "merg": 21, "reindex": 21, "nan": 21, "lower": 21, "set_date_format": 21, "set_dat": 21, "trim_data": 21, "trim": 21, "match": [21, 44], "to_datalin": 21, "exist": [21, 54, 60], "get_iter_count": 21, "len": 21, "check_data": 21, "wrapper": 21, "timeshift": [21, 43, 44, 72, 73, 84, 87, 88, 93, 96, 97], "_get_bars_dict": 21, "min_timestep": [21, 44], "timestep_map": [21, 44], "shift": [21, 44, 72, 73, 84, 87, 88, 93, 96, 97], "get_bars_between_d": 21, "start_dat": 21, "end_dat": 21, "get_quot": [21, 26, 47], "idx": 21, "belong": 22, "construct": 22, "goog": [22, 42, 72, 73], "googl": 22, "to_posit": 22, "get_incr": 22, "wait_to_be_regist": 22, "regist": [22, 110, 112, 121, 123], "wait_to_be_clos": 22, "keyword": 22, "my_limit_pric": 22, "500": [22, 36], "particular": [22, 125, 127, 129, 133, 135, 137], "higher": 22, "probabl": 22, "predetermin": 22, "exit": 22, "stop_pric": [22, 43, 146, 152, 153, 157, 163, 164], "my_stop_pric": 22, "400": 22, "stop_limit": [22, 146, 157], "combin": 22, "405": 22, "trail": [22, 146, 152, 157, 163], "continu": [22, 146, 157], "threshold": [22, 146, 157], "movement": [22, 146, 157], "trailing_stop": [22, 146, 157], "trail_pric": [22, 146, 157], "trail_perc": [22, 146, 157], "my_trail_pric": 22, "order_1": 22, "my_trail_perc": 22, "order_2": 22, "bracket": [22, 146, 157], "chain": [22, 44, 124, 125, 126, 127, 129, 131, 133, 134, 135, 137, 140], "long": 22, "short": [22, 106, 117], "importantli": 22, "extrem": 22, "fast": [22, 25, 26], "occur": 22, "take_profit_pric": [22, 146, 152, 157, 163], "stop_loss_pric": [22, 146, 152, 157, 163], "stop_loss_limit_pric": [22, 146, 157], "my_take_profit_pric": 22, "420": 22, "my_stop_loss_pric": 22, "parent": 22, "oto": [22, 146, 157], "trigger": [22, 146, 157], "variant": 22, "oco": [22, 146, 152, 157, 163], "word": [22, 167, 182], "where": [22, 25, 42, 146, 157], "alreadi": [22, 30, 36, 41], "submiss": 22, "position_fil": [22, 146, 157], "time_in_forc": [22, 146, 157], "good_till_d": [22, 146, 157], "date_cr": 22, "order_class": 22, "trade_cost": 22, "custom_param": [22, 146, 157], "avg_fill_pric": [22, 23], "error_messag": 22, "child_ord": 22, "tag": [22, 153, 164], "statu": [22, 148, 149, 159, 160], "unprocess": 22, "orderclass": 22, "ordersid": 22, "buy_to_clos": 22, "buy_to_cov": 22, "buy_to_open": 22, "sell_short": 22, "sell_to_clos": 22, "sell_to_open": 22, "orderstatu": 22, "cash_settl": 22, "partially_fil": 22, "partial_fil": 22, "ordertyp": 22, "tupl": [22, 73], "alia": 22, "add_child_ord": 22, "o": 22, "child": [22, 43], "add_transact": 22, "properti": [22, 23, 26, 43, 45, 46, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195], "cash_pend": 22, "equivalent_statu": 22, "equival": 22, "order_dict": 22, "get_fill_pric": 22, "weight": 22, "often": 22, "encount": 22, "partial": [22, 39], "pnl": 22, "yet": [22, 46], "is_act": 22, "otherwis": [22, 36], "rtype": [22, 44], "is_buy_ord": 22, "is_cancel": 22, "is_equivalent_statu": 22, "status1": 22, "status2": 22, "status": 22, "is_fil": 22, "is_opt": 22, "is_par": 22, "settlement": 22, "balanc": 22, "is_sell_ord": 22, "set_cancel": 22, "set_error": 22, "set_fil": 22, "set_identifi": 22, "set_new": 22, "set_partially_fil": 22, "update_raw": 22, "update_trail_stop_pric": 22, "was_transmit": 22, "retreiv": 23, "appl": 23, "add_ord": 23, "decim": [23, 74, 75, 146, 147, 157, 158], "get_selling_ord": [23, 26, 47], "value_typ": 23, "trading_fe": 24, "flat_fe": [24, 25], "percent_fe": [24, 25], "maker": 24, "taker": 24, "made": [25, 70, 82], "beginn": 25, "join": [25, 26], "commun": [25, 26], "cours": [25, 26], "shown": [25, 26], "discov": [25, 26], "skill": 25, "expert": [25, 26], "guidanc": 25, "resourc": 25, "welcom": 25, "hope": 25, "enjoi": 25, "easiest": 25, "comfort": 25, "copi": 25, "your_alpaca_api_kei": [25, 26], "your_alpaca_secret": [25, 26], "180": 25, "180m": 25, "carri": 25, "familiar": 25, "And": [25, 72, 73], "try": [25, 146, 157], "Or": [25, 26, 165], "dev": [25, 26], "simple_start_single_fil": [25, 26], "flat": 25, "trading_fee_1": 25, "trading_fee_2": 25, "sometim": 25, "spend": 25, "yappi": 25, "machinelearninglongshort": 25, "tqqq": 25, "get_func_stat": 25, "print_al": 25, "get_thread_stat": 25, "prof": 25, "pstat": 25, "snakeviz": 25, "web": [25, 46], "slow": 25, "robot": 26, "well": 26, "found": 26, "super": 26, "being": [26, 35, 36, 37, 38, 39, 44, 46, 72, 126, 134, 146, 157, 168, 183], "bug": 26, "fix": [26, 81], "fortun": 26, "against": 26, "switch": 26, "industri": 26, "tradest": 26, "build": [26, 27, 45], "analy": 26, "box": 26, "analyt": 26, "analyz": 26, "chart": [26, 47, 62, 63, 64, 65, 66, 67, 68, 69], "engin": [26, 41], "complic": 26, "confus": 26, "vector": 26, "math": 26, "mac": 26, "powershel": 26, "window": 26, "notic": 26, "exactli": 26, "suggest": 26, "lifecycl": [26, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 45, 47, 168, 172, 173, 178, 183, 187, 188, 193], "describ": [26, 45], "sub": 26, "tree": 26, "good": [26, 146, 157], "luck": 26, "forget": 26, "swim": 26, "gain": 26, "wealth": 26, "expertis": 26, "level": [26, 63, 67, 105, 116], "proven": 26, "record": 26, "home": 26, "pre": [26, 153, 164], "deploy": 26, "render": 26, "replit": 26, "profil": 26, "improv": 26, "before_market_open": [26, 27, 173, 188], "before_starting_trad": [26, 27, 30], "before_market_clos": [26, 27], "after_market_clos": [26, 27], "on_abrupt_clos": [26, 27, 34], "on_bot_crash": [26, 27], "trace_stat": [26, 27, 178, 193], "on_new_ord": [26, 27], "on_partially_filled_ord": [26, 27], "on_filled_ord": [26, 27], "on_canceled_ord": [26, 27], "on_parameters_upd": [26, 27], "backup": 26, "restor": 26, "benefit": 26, "var": 26, "storag": 26, "cancel_open_ord": [26, 30, 47, 151, 162], "sell_al": [26, 29, 33, 34, 47], "get_asset_potential_tot": [26, 47], "get_portfolio_valu": [26, 47], "get_cash": [26, 47], "get_historical_prices_for_asset": [26, 30, 47], "get_yesterday_dividend": [26, 44, 47], "get_next_trading_dai": [26, 47], "get_markers_df": [26, 47], "get_lines_df": [26, 47], "get_paramet": [26, 47, 165], "set_paramet": [26, 47, 165], "get_chain": [26, 44, 47, 127, 129, 131, 135, 137, 140], "get_greek": [26, 47], "get_strik": [26, 44, 47], "get_expir": [26, 47], "get_multipli": [26, 47], "options_expiry_to_datetime_d": [26, 47], "get_round_minut": [26, 44, 47], "get_last_minut": [26, 44, 47], "get_round_dai": [26, 44, 47], "get_last_dai": [26, 44, 47], "get_datetime_rang": [26, 43, 44, 47], "localize_datetim": [26, 44, 47], "to_default_timezon": [26, 44, 47], "miscellan": [26, 47], "update_paramet": [26, 38, 47], "await_market_to_clos": [26, 47], "await_market_to_open": [26, 47], "wait_for_order_registr": [26, 47], "wait_for_order_execut": [26, 47], "wait_for_orders_registr": [26, 47], "wait_for_orders_execut": [26, 47], "initial_budget": 26, "last_on_trading_iteration_datetim": 26, "pytz": 26, "unspent_monei": 26, "leg": 26, "abstract": [27, 41, 43, 44, 45], "pattern": [27, 41], "greatli": [27, 41], "react": [27, 41], "j": [27, 41], "compon": [27, 41, 196], "overload": [27, 34, 41, 43], "logic": [27, 29, 30, 40, 41, 43, 45], "dump": [28, 42], "report": 28, "busi": [29, 30], "execud": [29, 30], "unlik": 30, "launch": 30, "tlt": [30, 52, 58, 73, 75, 80, 111, 112, 122, 123, 146, 147, 153, 157, 158, 164], "bars_list": 30, "asset_bar": 30, "reiniti": 31, "reset": 31, "blacklist": 31, "my_custom_paramet": 32, "5m": [32, 178, 193], "d": [32, 178, 193], "constructor": 32, "later": 32, "strategy_1": 32, "my_other_paramet": 32, "strategy_2": 32, "my_last_paramet": 32, "asset_symbol": 32, "mnq": 32, "calendar": [32, 76, 130, 138], "marketcalendar": [32, 106, 117], "asx": [32, 106, 117], "bmf": [32, 106, 117], "cfe": [32, 106, 117], "bat": [32, 106, 117], "cme_equ": [32, 106, 117], "cbot_equ": [32, 106, 117], "cme_agricultur": [32, 106, 117], "cbot_agricultur": [32, 106, 117], "comex_agricultur": [32, 106, 117], "nymex_agricultur": [32, 106, 117], "cme_rat": [32, 106, 117], "cbot_rat": [32, 106, 117], "cme_interestr": [32, 106, 117], "cbot_interestr": [32, 106, 117], "cme_bond": [32, 106, 117], "cbot_bond": [32, 106, 117], "eurex": [32, 106, 117], "hkex": [32, 106, 117], "ic": [32, 106, 117], "iceu": [32, 106, 117], "nyfe": [32, 106, 117], "jpx": [32, 106, 117], "lse": [32, 106, 117], "os": [32, 106, 117], "six": [32, 106, 117], "sse": [32, 106, 117], "tsx": [32, 106, 117], "tsxv": [32, 106, 117], "bse": [32, 106, 117], "tase": [32, 106, 117], "tradingcalendar": [32, 106, 117], "asex": [32, 106, 117], "bvmf": [32, 106, 117], "cme": [32, 74, 106, 117], "iepa": [32, 106, 117], "xam": [32, 106, 117], "xasx": [32, 106, 117], "xbkk": [32, 106, 117], "xbog": [32, 106, 117], "xbom": [32, 106, 117], "xbru": [32, 106, 117], "xbud": [32, 106, 117], "xbue": [32, 106, 117], "xcbf": [32, 106, 117], "xcse": [32, 106, 117], "xdub": [32, 106, 117], "xfra": [32, 106, 117], "xetr": [32, 106, 117], "xhel": [32, 106, 117], "xhkg": [32, 106, 117], "xice": [32, 106, 117], "xidx": [32, 106, 117], "xist": [32, 106, 117], "xjse": [32, 106, 117], "xkar": [32, 106, 117], "xkl": [32, 106, 117], "xkrx": [32, 106, 117], "xlim": [32, 106, 117], "xli": [32, 106, 117], "xlon": [32, 106, 117], "xmad": [32, 106, 117], "xmex": [32, 106, 117], "xmil": [32, 106, 117], "xmo": [32, 106, 117], "xny": [32, 106, 117], "xnze": [32, 106, 117], "xosl": [32, 106, 117], "xpar": [32, 106, 117], "xph": [32, 106, 117], "xpra": [32, 106, 117], "xse": [32, 106, 117], "xsgo": [32, 106, 117], "xshg": [32, 106, 117], "xsto": [32, 106, 117], "xswx": [32, 106, 117], "xtae": [32, 106, 117], "xtai": [32, 106, 117], "xtk": [32, 106, 117], "xtse": [32, 106, 117], "xwar": [32, 106, 117], "xwbo": [32, 106, 117], "us_futur": [32, 106, 117], "max_bar": 32, "10m": [32, 178, 193], "20h": 32, "48": 32, "2d": [32, 178, 193], "gracefulli": 33, "shut": 33, "keybord": 33, "interupt": [33, 40], "abrupt": 33, "crash": [34, 40, 196], "rais": 34, "successfulli": [35, 36, 37], "300": [36, 178, 193], "sold": [36, 51, 57, 146, 157], "elif": 36, "bought": [36, 146, 157], "r": 37, "miss": 39, "again": [40, 103, 114], "pull": [40, 72], "hello": 40, "task": 41, "core": 41, "perspect": 41, "care": 41, "he": 41, "illustr": 41, "context": 42, "scope": 42, "random": 42, "google_symbol": 42, "snapshot_befor": 42, "random_numb": 42, "randint": 42, "my_custom_stat": 42, "trace": 42, "my_stat": 42, "my_other_stat": 42, "backtesting_brok": 43, "is_backtesting_brok": 43, "calculate_trade_cost": 43, "cash_settle_options_contract": 43, "settl": 43, "todo": [43, 74], "docstr": 43, "get_last_bar": 43, "els": 43, "limit_ord": [43, 146, 157], "open_": 43, "process_expired_option_contract": 43, "expri": 43, "process_pending_ord": 43, "evalu": 43, "mostli": 43, "should_continu": 43, "product": 43, "stop_ord": 43, "data_source_backtest": 43, "datasourcebacktest": [43, 44], "abc": [43, 44], "doe": [43, 44, 77, 146, 157], "pandasdata": [43, 44], "is_backtesting_data_sourc": [43, 44], "adjust_for_delai": [43, 44, 83, 92], "Not": [43, 106, 117], "delai": 44, "default_pytz": 44, "dsttzinfo": 44, "lmt": 44, "19": 44, "std": 44, "default_timezon": 44, "calculate_greek": 44, "asset_pric": [44, 128, 136], "underlying_pric": [44, 128, 136], "greek": [44, 124, 128, 136], "static": 44, "convert_timestep_str_to_timedelta": 44, "timedelta": [44, 72, 73, 102, 103, 113, 114], "1minut": 44, "1hour": 44, "1dai": 44, "include_after_hour": [44, 72, 73], "info": [44, 105, 116, 125, 126, 133, 134], "guarente": [44, 125, 126, 133, 134], "exp_dat": [44, 125, 126, 133, 134], "strike1": [44, 125, 126, 133, 134], "strike2": [44, 125, 126, 133, 134], "07": [44, 125, 126, 133, 134], "ago": [44, 72], "known": [44, 74, 75], "round": [44, 87, 88, 96, 97], "param": 44, "get_timestep": 44, "query_greek": [44, 128, 136], "queri": [44, 128, 136], "clean_trading_tim": 44, "dt_index": 44, "pcal": 44, "find_asset_in_data_stor": 44, "get_asset_by_nam": 44, "get_asset_by_symbol": 44, "get_asset": 44, "whose": [44, 126, 134], "smart": [44, 125, 127, 129, 133, 135, 137, 146, 157], "strke": [44, 125, 133], "stike": [44, 125, 133], "get_start_datetime_and_ts_unit": 44, "start_dt": 44, "start_buff": 44, "get_trading_days_panda": 44, "load_data": 44, "update_date_index": 44, "yahoo_data": 44, "yahoodata": 44, "15m": 44, "becuas": 44, "chain_data": 44, "option_chain": 44, "categori": [45, 101], "flow": 45, "is_backtest_brok": 46, "async_": 46, "async": 46, "asynchron": 46, "displi": 46, "displai": [46, 62, 63, 66, 67], "run_all_async": 46, "stop_al": 46, "insid": [47, 166, 172, 187], "thing": 47, "divid": 47, "sens": 47, "preced": 47, "seek": [52, 58, 144, 155], "sought": [52, 58, 147, 158], "assset": [52, 58], "empti": [53, 59], "overwrit": [54, 60], "style": [62, 66], "solid": [62, 66], "width": [62, 66, 72, 73], "detail_text": [62, 63, 66, 67], "overbought": [62, 63, 66, 67], "oversold": [62, 63, 66, 67], "red": [62, 63, 66, 67, 105, 116], "blue": [62, 63, 66, 67], "yellow": [62, 63, 66, 67], "orang": [62, 63, 66, 67], "purpl": [62, 63, 66, 67], "pink": [62, 63, 66, 67], "brown": [62, 63, 66, 67], "black": [62, 63, 66, 67], "white": [62, 63, 66, 67], "grai": [62, 66], "lightgrai": [62, 66], "darkgrai": [62, 66], "lightblu": [62, 66], "darkblu": [62, 66], "lightgreen": [62, 66], "darkgreen": [62, 66], "lightr": [62, 66], "darkr": [62, 66], "hex": [62, 66], "dot": [62, 63, 66, 67], "text": [62, 63, 66, 67], "hover": [62, 63, 66, 67], "add_chart_lin": [62, 66], "80": [62, 66], "circl": [63, 67], "size": [63, 67, 81], "mark": [63, 67], "cross": [63, 67], "resist": [63, 67], "squar": [63, 67], "diamond": [63, 67], "x": [63, 67], "triangl": [63, 67], "ne": [63, 67], "se": [63, 67], "sw": [63, 67], "nw": [63, 67], "pentagon": [63, 67], "hexagon": [63, 67], "hexagon2": [63, 67], "octagon": [63, 67], "star": [63, 67], "hexagram": [63, 67], "tall": [63, 67], "hourglass": [63, 67], "bowti": [63, 67], "thin": [63, 67], "asterisk": [63, 67], "hash": [63, 67], "y": [63, 67], "ew": [63, 67], "n": [63, 67], "arrow": [63, 67], "add_chart_mark": [63, 67], "get_symbol_bar": 70, "create_asset": [71, 72, 79], "backward": [72, 73], "week": [72, 73], "1month": [72, 73], "present": [72, 73, 128, 136], "integ": [72, 73, 178, 193], "extract": 72, "24h": 72, "last_ohlc": 72, "asset_bas": [72, 73, 152, 163], "asset_quot": [72, 73, 152, 153, 163, 164], "regular": 73, "eurusd": 73, "should_use_last_clos": 74, "depric": 74, "comment": 74, "2022": [74, 127, 135], "yyyi": [76, 130, 138], "mm": [76, 130, 138], "dd": [76, 130, 138], "next_trading_dai": [76, 130, 138], "backtets": 77, "bid": 77, "vwap": [78, 81], "intial": 78, "keep_bar": 81, "arriv": 81, "extend": 81, "kept": 81, "datatim": 82, "regardless": 82, "accord": [82, 83, 89, 92, 98], "1990": 82, "tell": 82, "jan": 82, "1991": 82, "rather": 82, "last_dai": [85, 94], "last_minut": [86, 95], "nearest": [87, 88, 96, 97], "round_dai": [87, 96], "round_minut": [88, 97], "paus": [102, 103, 107, 113, 114, 118, 178, 193], "overrid": [102, 103, 113, 114], "infinit": [103, 114], "await": [103, 114, 143, 154], "broadcast": [105, 116], "goe": [105, 116], "origin": [105, 116], "program": [107, 118, 165, 178, 193], "order1": [111, 112, 122, 123, 145, 153, 156, 164], "order2": [111, 112, 122, 123, 145, 153, 156, 164], "meant": 124, "cboe": [125, 127, 129, 133, 135, 137], "sort": [127, 129, 131, 135, 137, 140], "expiry_d": [127, 132, 135, 141], "could": [128, 136], "theoret": [128, 136], "implied_volatil": [128, 136], "impli": [128, 136], "option_pric": [128, 136], "pv_dividend": [128, 136], "gamma": [128, 136], "vega": [128, 136], "theta": [128, 136], "opt_asset": [128, 136], "option_typ": [128, 136], "20221013": [129, 137], "20200101": [132, 141], "next_option_expir": 139, "get_next_option_expir": 139, "gtc": [146, 153, 157, 164], "still": [146, 157], "restric": [146, 157], "compound": [146, 157], "suffici": [146, 157], "213": [146, 157], "obect": [146, 157], "favor": [146, 157], "guarante": [146, 157], "penetr": [146, 157], "forc": [146, 157], "remaind": [146, 157], "gtd": [146, 157], "though": [146, 157], "dollar": [146, 157, 175, 190], "percent": [146, 157], "stop_loss": [146, 152, 157, 163], "stop_loss_limit": [146, 157], "2019": [146, 157], "chf": [146, 157], "aset": [146, 152, 153, 157, 163, 164], "41000": [146, 157], "expiration_d": [147, 152, 158, 163], "order_id": [148, 159], "get_tracked_ord": [149, 160], "system": [151, 162], "leav": [151, 162], "strike_pric": [152, 163], "trailing_stop_pric": [152, 163], "41250": [152, 163], "41325": [152, 163], "41300": [152, 163], "is_multileg": [153, 164], "debit": [153, 164], "post": [153, 164], "asset_btc": [153, 164], "asset_eth": [153, 164], "my_paramet": 165, "main_tick": 165, "ema_threshold": 165, "whenev": [167, 182], "therefor": [167, 182], "zero": [167, 182], "excut": [168, 183], "happen": [171, 186], "equal": [172, 173, 178, 187, 188, 193], "resov": [175, 190], "held": [175, 190], "speed": [178, 193], "m": [178, 193], "h": [178, 193], "2h": [178, 193], "remov": [180, 195], "store": 196, "runtim": 196, "persist": 196, "resum": 196, "namespac": 196, "prevent": 196, "effici": 196, "assign": 196, "notat": 196, "trade_count": 196, "current_count": 196, "all_vari": 196, "output": 196, "102": 196, "postgresql": 196, "5432": 196, "database_nam": 196, "tabl": 196, "backup_table_nam": 196, "vars_backup": 196, "last_upd": 196, "json": 196, "550e8400": 196, "var1": 196, "var2": 196, "optionscondormartingal": 196}, "objects": {"entities": [[19, 0, 0, "-", "asset"], [20, 0, 0, "-", "bars"], [21, 0, 0, "-", "data"], [22, 0, 0, "-", "order"], [23, 0, 0, "-", "position"], [24, 0, 0, "-", "trading_fee"]], "entities.asset": [[19, 1, 1, "", "Asset"], [19, 1, 1, "", "AssetsMapping"]], "entities.asset.Asset": [[19, 1, 1, "", "AssetType"], [19, 1, 1, "", "OptionRight"], [19, 2, 1, "", "_asset_types"], [19, 2, 1, "", "_right"], [19, 2, 1, "id0", "asset_type"], [19, 3, 1, "id1", "asset_type_must_be_one_of"], [19, 2, 1, "id2", "expiration"], [19, 3, 1, "", "from_dict"], [19, 3, 1, "", "is_valid"], [19, 2, 1, "id3", "multiplier"], [19, 2, 1, "id4", "precision"], [19, 2, 1, "id5", "right"], [19, 3, 1, "id6", "right_must_be_one_of"], [19, 2, 1, "id7", "strike"], [19, 2, 1, "id8", "symbol"], [19, 3, 1, "", "symbol2asset"], [19, 3, 1, "", "to_dict"], [19, 2, 1, "", "underlying_asset"]], "entities.asset.Asset.AssetType": [[19, 2, 1, "", "CRYPTO"], [19, 2, 1, "", "FOREX"], [19, 2, 1, "", "FUTURE"], [19, 2, 1, "", "INDEX"], [19, 2, 1, "", "MULTILEG"], [19, 2, 1, "", "OPTION"], [19, 2, 1, "", "STOCK"]], "entities.asset.Asset.OptionRight": [[19, 2, 1, "", "CALL"], [19, 2, 1, "", "PUT"]], "entities.bars": [[20, 1, 1, "", "Bars"], [20, 4, 1, "", "NoBarDataFound"]], "entities.bars.Bars": [[20, 3, 1, "id0", "aggregate_bars"], [20, 3, 1, "", "filter"], [20, 3, 1, "id1", "get_last_dividend"], [20, 3, 1, "id2", "get_last_price"], [20, 3, 1, "id3", "get_momentum"], [20, 3, 1, "", "get_total_dividends"], [20, 3, 1, "", "get_total_return"], [20, 3, 1, "", "get_total_return_pct"], [20, 3, 1, "", "get_total_return_pct_change"], [20, 3, 1, "", "get_total_stock_splits"], [20, 3, 1, "id4", "get_total_volume"], [20, 3, 1, "", "parse_bar_list"], [20, 3, 1, "", "split"]], "entities.data": [[21, 1, 1, "", "Data"]], "entities.data.Data": [[21, 2, 1, "", "MIN_TIMESTEP"], [21, 2, 1, "", "TIMESTEP_MAPPING"], [21, 3, 1, "", "_get_bars_dict"], [21, 2, 1, "", "asset"], [21, 3, 1, "id0", "check_data"], [21, 3, 1, "id1", "columns"], [21, 2, 1, "", "datalines"], [21, 2, 1, "", "date_end"], [21, 2, 1, "", "date_start"], [21, 2, 1, "", "df"], [21, 3, 1, "id2", "get_bars"], [21, 3, 1, "", "get_bars_between_dates"], [21, 3, 1, "id3", "get_iter_count"], [21, 3, 1, "id4", "get_last_price"], [21, 3, 1, "", "get_quote"], [21, 2, 1, "", "iter_index"], [21, 3, 1, "id5", "repair_times_and_fill"], [21, 3, 1, "id6", "set_date_format"], [21, 3, 1, "id7", "set_dates"], [21, 3, 1, "id8", "set_times"], [21, 2, 1, "", "sybmol"], [21, 2, 1, "", "timestep"], [21, 3, 1, "id9", "to_datalines"], [21, 2, 1, "", "trading_hours_end"], [21, 2, 1, "", "trading_hours_start"], [21, 3, 1, "id10", "trim_data"]], "entities.order": [[22, 1, 1, "", "Order"]], "entities.order.Order": [[22, 1, 1, "", "OrderClass"], [22, 1, 1, "", "OrderSide"], [22, 1, 1, "", "OrderStatus"], [22, 1, 1, "", "OrderType"], [22, 1, 1, "", "Transaction"], [22, 3, 1, "", "add_child_order"], [22, 3, 1, "", "add_transaction"], [22, 5, 1, "", "avg_fill_price"], [22, 3, 1, "", "cash_pending"], [22, 3, 1, "", "equivalent_status"], [22, 3, 1, "", "from_dict"], [22, 3, 1, "", "get_fill_price"], [22, 3, 1, "", "get_increment"], [22, 3, 1, "", "is_active"], [22, 3, 1, "", "is_buy_order"], [22, 3, 1, "", "is_canceled"], [22, 3, 1, "", "is_equivalent_status"], [22, 3, 1, "", "is_filled"], [22, 3, 1, "", "is_option"], [22, 3, 1, "", "is_parent"], [22, 3, 1, "", "is_sell_order"], [22, 5, 1, "", "quantity"], [22, 3, 1, "", "set_canceled"], [22, 3, 1, "", "set_error"], [22, 3, 1, "", "set_filled"], [22, 3, 1, "", "set_identifier"], [22, 3, 1, "", "set_new"], [22, 3, 1, "", "set_partially_filled"], [22, 5, 1, "", "status"], [22, 3, 1, "", "to_dict"], [22, 3, 1, "", "to_position"], [22, 3, 1, "", "update_raw"], [22, 3, 1, "", "update_trail_stop_price"], [22, 3, 1, "", "wait_to_be_closed"], [22, 3, 1, "", "wait_to_be_registered"], [22, 3, 1, "", "was_transmitted"]], "entities.order.Order.OrderClass": [[22, 2, 1, "", "BRACKET"], [22, 2, 1, "", "MULTILEG"], [22, 2, 1, "", "OCO"], [22, 2, 1, "", "OTO"]], "entities.order.Order.OrderSide": [[22, 2, 1, "", "BUY"], [22, 2, 1, "", "BUY_TO_CLOSE"], [22, 2, 1, "", "BUY_TO_COVER"], [22, 2, 1, "", "BUY_TO_OPEN"], [22, 2, 1, "", "SELL"], [22, 2, 1, "", "SELL_SHORT"], [22, 2, 1, "", "SELL_TO_CLOSE"], [22, 2, 1, "", "SELL_TO_OPEN"]], "entities.order.Order.OrderStatus": [[22, 2, 1, "", "CANCELED"], [22, 2, 1, "", "CANCELLING"], [22, 2, 1, "", "CASH_SETTLED"], [22, 2, 1, "", "ERROR"], [22, 2, 1, "", "EXPIRED"], [22, 2, 1, "", "FILLED"], [22, 2, 1, "", "NEW"], [22, 2, 1, "", "OPEN"], [22, 2, 1, "", "PARTIALLY_FILLED"], [22, 2, 1, "", "SUBMITTED"], [22, 2, 1, "", "UNPROCESSED"]], "entities.order.Order.OrderType": [[22, 2, 1, "", "BRACKET"], [22, 2, 1, "", "LIMIT"], [22, 2, 1, "", "MARKET"], [22, 2, 1, "", "OCO"], [22, 2, 1, "", "OTO"], [22, 2, 1, "", "STOP"], [22, 2, 1, "", "STOP_LIMIT"], [22, 2, 1, "", "TRAIL"]], "entities.order.Order.Transaction": [[22, 2, 1, "", "price"], [22, 2, 1, "", "quantity"]], "entities.position": [[23, 1, 1, "", "Position"]], "entities.position.Position": [[23, 3, 1, "", "add_order"], [23, 2, 1, "", "asset"], [23, 5, 1, "id0", "available"], [23, 2, 1, "", "avg_fill_price"], [23, 3, 1, "", "from_dict"], [23, 3, 1, "", "get_selling_order"], [23, 5, 1, "id1", "hold"], [23, 2, 1, "", "orders"], [23, 5, 1, "id2", "quantity"], [23, 2, 1, "", "strategy"], [23, 2, 1, "", "symbol"], [23, 3, 1, "", "to_dict"], [23, 3, 1, "", "value_type"]], "entities.trading_fee": [[24, 1, 1, "", "TradingFee"]], "lumibot.backtesting": [[43, 0, 0, "-", "backtesting_broker"]], "lumibot.backtesting.backtesting_broker": [[43, 1, 1, "", "BacktestingBroker"]], "lumibot.backtesting.backtesting_broker.BacktestingBroker": [[43, 2, 1, "", "IS_BACKTESTING_BROKER"], [43, 3, 1, "", "calculate_trade_cost"], [43, 3, 1, "", "cancel_order"], [43, 3, 1, "", "cash_settle_options_contract"], [43, 5, 1, "", "datetime"], [43, 3, 1, "", "get_historical_account_value"], [43, 3, 1, "", "get_last_bar"], [43, 3, 1, "", "get_time_to_close"], [43, 3, 1, "", "get_time_to_open"], [43, 3, 1, "", "is_market_open"], [43, 3, 1, "", "limit_order"], [43, 3, 1, "", "process_expired_option_contracts"], [43, 3, 1, "", "process_pending_orders"], [43, 3, 1, "", "should_continue"], [43, 3, 1, "", "stop_order"], [43, 3, 1, "", "submit_order"], [43, 3, 1, "", "submit_orders"]], "lumibot.brokers": [[12, 0, 0, "-", "alpaca"]], "lumibot.brokers.alpaca": [[12, 1, 1, "", "Alpaca"], [12, 1, 1, "", "OrderData"]], "lumibot.brokers.alpaca.Alpaca": [[12, 2, 1, "", "ASSET_TYPE_MAP"], [12, 2, 1, "", "api"], [12, 3, 1, "", "cancel_order"], [12, 3, 1, "", "get_historical_account_value"], [12, 3, 1, "id0", "get_time_to_close"], [12, 3, 1, "id1", "get_time_to_open"], [12, 3, 1, "id2", "get_timestamp"], [12, 3, 1, "id3", "is_market_open"], [12, 3, 1, "", "map_asset_type"]], "lumibot.brokers.alpaca.OrderData": [[12, 3, 1, "", "to_request_fields"]], "lumibot": [[44, 0, 0, "-", "data_sources"]], "lumibot.data_sources": [[44, 0, 0, "-", "data_source"], [43, 0, 0, "-", "data_source_backtesting"], [44, 0, 0, "-", "pandas_data"], [44, 0, 0, "-", "yahoo_data"]], "lumibot.data_sources.data_source": [[44, 1, 1, "", "DataSource"]], "lumibot.data_sources.data_source.DataSource": [[44, 2, 1, "", "DEFAULT_PYTZ"], [44, 2, 1, "", "DEFAULT_TIMEZONE"], [44, 2, 1, "", "IS_BACKTESTING_DATA_SOURCE"], [44, 2, 1, "", "MIN_TIMESTEP"], [44, 2, 1, "", "SOURCE"], [44, 2, 1, "", "TIMESTEP_MAPPING"], [44, 3, 1, "", "calculate_greeks"], [44, 3, 1, "", "convert_timestep_str_to_timedelta"], [44, 3, 1, "", "get_bars"], [44, 3, 1, "", "get_chains"], [44, 3, 1, "", "get_datetime"], [44, 3, 1, "", "get_datetime_range"], [44, 3, 1, "", "get_historical_prices"], [44, 3, 1, "", "get_last_day"], [44, 3, 1, "", "get_last_minute"], [44, 3, 1, "", "get_last_price"], [44, 3, 1, "", "get_last_prices"], [44, 3, 1, "", "get_round_day"], [44, 3, 1, "", "get_round_minute"], [44, 3, 1, "", "get_strikes"], [44, 3, 1, "", "get_timestamp"], [44, 3, 1, "", "get_timestep"], [44, 3, 1, "", "get_yesterday_dividend"], [44, 3, 1, "", "get_yesterday_dividends"], [44, 3, 1, "", "localize_datetime"], [44, 3, 1, "", "query_greeks"], [44, 3, 1, "", "to_default_timezone"]], "lumibot.data_sources.data_source_backtesting": [[43, 1, 1, "", "DataSourceBacktesting"]], "lumibot.data_sources.data_source_backtesting.DataSourceBacktesting": [[43, 2, 1, "", "IS_BACKTESTING_DATA_SOURCE"], [43, 3, 1, "", "get_datetime"], [43, 3, 1, "", "get_datetime_range"]], "lumibot.data_sources.pandas_data": [[44, 1, 1, "", "PandasData"]], "lumibot.data_sources.pandas_data.PandasData": [[44, 2, 1, "", "SOURCE"], [44, 2, 1, "", "TIMESTEP_MAPPING"], [44, 3, 1, "", "clean_trading_times"], [44, 3, 1, "", "find_asset_in_data_store"], [44, 3, 1, "", "get_asset_by_name"], [44, 3, 1, "", "get_asset_by_symbol"], [44, 3, 1, "", "get_assets"], [44, 3, 1, "", "get_chains"], [44, 3, 1, "", "get_historical_prices"], [44, 3, 1, "", "get_last_price"], [44, 3, 1, "", "get_last_prices"], [44, 3, 1, "", "get_start_datetime_and_ts_unit"], [44, 3, 1, "", "get_trading_days_pandas"], [44, 3, 1, "", "get_yesterday_dividend"], [44, 3, 1, "", "get_yesterday_dividends"], [44, 3, 1, "", "load_data"], [44, 3, 1, "", "update_date_index"]], "lumibot.data_sources.yahoo_data": [[44, 1, 1, "", "YahooData"]], "lumibot.data_sources.yahoo_data.YahooData": [[44, 2, 1, "", "MIN_TIMESTEP"], [44, 2, 1, "", "SOURCE"], [44, 2, 1, "", "TIMESTEP_MAPPING"], [44, 3, 1, "", "get_chains"], [44, 3, 1, "", "get_historical_prices"], [44, 3, 1, "", "get_last_price"], [44, 3, 1, "", "get_strikes"]], "lumibot.strategies.strategy": [[45, 0, 0, "-", "Strategy"]], "lumibot.strategies.strategy.Strategy": [[66, 6, 1, "", "add_line"], [67, 6, 1, "", "add_marker"], [28, 6, 1, "", "after_market_closes"], [113, 6, 1, "", "await_market_to_close"], [114, 6, 1, "", "await_market_to_open"], [29, 6, 1, "", "before_market_closes"], [30, 6, 1, "", "before_market_opens"], [31, 6, 1, "", "before_starting_trading"], [154, 6, 1, "", "cancel_open_orders"], [155, 6, 1, "", "cancel_order"], [156, 6, 1, "", "cancel_orders"], [71, 6, 1, "", "cancel_realtime_bars"], [182, 5, 1, "", "cash"], [157, 6, 1, "", "create_order"], [183, 5, 1, "", "first_iteration"], [158, 6, 1, "", "get_asset_potential_total"], [55, 6, 1, "", "get_cash"], [133, 6, 1, "", "get_chain"], [134, 6, 1, "", "get_chains"], [92, 6, 1, "", "get_datetime"], [93, 6, 1, "", "get_datetime_range"], [135, 6, 1, "", "get_expiration"], [136, 6, 1, "", "get_greeks"], [72, 6, 1, "", "get_historical_prices"], [73, 6, 1, "", "get_historical_prices_for_assets"], [94, 6, 1, "", "get_last_day"], [95, 6, 1, "", "get_last_minute"], [74, 6, 1, "", "get_last_price"], [75, 6, 1, "", "get_last_prices"], [68, 6, 1, "", "get_lines_df"], [69, 6, 1, "", "get_markers_df"], [137, 6, 1, "", "get_multiplier"], [138, 6, 1, "", "get_next_trading_day"], [139, 6, 1, "", "get_option_expiration_after_date"], [159, 6, 1, "", "get_order"], [160, 6, 1, "", "get_orders"], [115, 6, 1, "", "get_parameters"], [57, 6, 1, "", "get_portfolio_value"], [58, 6, 1, "", "get_position"], [59, 6, 1, "", "get_positions"], [77, 6, 1, "", "get_quote"], [78, 6, 1, "", "get_realtime_bars"], [96, 6, 1, "", "get_round_day"], [97, 6, 1, "", "get_round_minute"], [161, 6, 1, "", "get_selling_order"], [140, 6, 1, "", "get_strikes"], [98, 6, 1, "", "get_timestamp"], [79, 6, 1, "", "get_yesterday_dividend"], [80, 6, 1, "", "get_yesterday_dividends"], [184, 5, 1, "", "initial_budget"], [32, 6, 1, "", "initialize"], [185, 5, 1, "", "is_backtesting"], [186, 5, 1, "", "last_on_trading_iteration_datetime"], [99, 6, 1, "", "localize_datetime"], [116, 6, 1, "", "log_message"], [187, 5, 1, "", "minutes_before_closing"], [188, 5, 1, "", "minutes_before_opening"], [189, 5, 1, "", "name"], [33, 6, 1, "", "on_abrupt_closing"], [34, 6, 1, "", "on_bot_crash"], [35, 6, 1, "", "on_canceled_order"], [36, 6, 1, "", "on_filled_order"], [37, 6, 1, "", "on_new_order"], [38, 6, 1, "", "on_parameters_updated"], [39, 6, 1, "", "on_partially_filled_order"], [40, 6, 1, "", "on_trading_iteration"], [141, 6, 1, "", "options_expiry_to_datetime_date"], [190, 5, 1, "", "portfolio_value"], [191, 5, 1, "", "pytz"], [192, 5, 1, "", "quote_asset"], [1, 6, 1, "", "run_backtest"], [162, 6, 1, "", "sell_all"], [117, 6, 1, "", "set_market"], [60, 6, 1, "", "set_parameters"], [118, 6, 1, "", "sleep"], [193, 5, 1, "", "sleeptime"], [81, 6, 1, "", "start_realtime_bars"], [163, 6, 1, "", "submit_order"], [164, 6, 1, "", "submit_orders"], [194, 5, 1, "", "timezone"], [100, 6, 1, "", "to_default_timezone"], [42, 6, 1, "", "trace_stats"], [195, 5, 1, "", "unspent_money"], [119, 6, 1, "", "update_parameters"], [120, 6, 1, "", "wait_for_order_execution"], [121, 6, 1, "", "wait_for_order_registration"], [122, 6, 1, "", "wait_for_orders_execution"], [123, 6, 1, "", "wait_for_orders_registration"]], "lumibot.traders": [[46, 0, 0, "-", "trader"]], "lumibot.traders.trader": [[46, 1, 1, "", "Trader"]], "lumibot.traders.trader.Trader": [[46, 3, 1, "", "add_strategy"], [46, 5, 1, "", "is_backtest_broker"], [46, 3, 1, "", "run_all"], [46, 3, 1, "", "run_all_async"], [46, 3, 1, "", "stop_all"]]}, "objtypes": {"0": "py:module", "1": "py:class", "2": "py:attribute", "3": "py:method", "4": "py:exception", "5": "py:property", "6": "py:function"}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "class", "Python class"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "method", "Python method"], "4": ["py", "exception", "Python exception"], "5": ["py", "property", "Python property"], "6": ["py", "function", "Python function"]}, "titleterms": {"backtest": [0, 1, 2, 6, 8, 25, 26, 43], "file": [0, 2, 3, 9], "gener": [0, 2, 17], "from": [0, 2], "content": [0, 11, 18, 26, 27, 44, 47], "function": [1, 61], "how": [2, 196], "To": 2, "instal": [2, 25, 26], "lumibot": [2, 25, 26], "choos": [2, 17], "data": [2, 5, 14, 21, 43, 44, 70], "sourc": [2, 43, 44], "run": [2, 13, 16, 25], "polygon": [2, 6], "io": [2, 6], "tearsheet": [2, 7], "html": [2, 7], "trade": [2, 9, 14, 24, 25, 26], "indic": [2, 3, 26], "conclus": [2, 17], "log": 4, "csv": [4, 5], "panda": [5, 44], "other": 5, "exampl": [5, 13, 14, 16, 17], "datafram": 5, "In": 5, "summari": [5, 41], "thetadata": 8, "yahoo": [10, 44], "broker": [11, 13, 14, 15, 17, 43], "alpaca": [12, 17, 25], "document": [12, 19, 20, 22, 45], "crypto": 13, "us": [13, 14], "ccxt": 13, "configur": [13, 14, 16, 17, 25, 196], "set": 13, "your": [13, 16, 17, 25, 26], "strategi": [13, 14, 16, 17, 25, 26, 45, 47, 166], "full": [13, 16], "interact": [14, 15, 17], "market": 14, "subscript": 14, "two": 14, "factor": 14, "authent": 14, "2fa": 14, "secondari": 14, "usernam": 14, "paper": [14, 25], "account": [14, 25, 48], "setup": 14, "legaci": [15, 17], "tradier": [16, 17], "get": [16, 25, 26], "start": [16, 25, 26], "deploy": 17, "guid": [17, 196], "platform": 17, "deploi": 17, "render": 17, "replit": 17, "secret": 17, "coinbas": 17, "kraken": 17, "environ": 17, "variabl": [17, 196], "final": 17, "step": [17, 25, 26], "entiti": 18, "asset": 19, "bar": 20, "order": [22, 142], "advanc": 22, "type": 22, "With": [22, 25], "leg": 22, "posit": 23, "fee": [24, 25], "what": 25, "i": 25, "lumiwealth": 25, "1": [25, 26], "packag": 25, "2": [25, 26], "import": 25, "follow": 25, "modul": [25, 44], "3": [25, 26], "creat": [25, 26], "an": 25, "4": 25, "api": 25, "kei": 25, "5": 25, "class": 25, "6": 25, "instanti": 25, "trader": [25, 46], "7": 25, "option": [25, 124], "8": 25, "ad": 25, "profil": 25, "improv": 25, "perform": 25, "algorithm": 26, "librari": 26, "take": 26, "bot": 26, "live": 26, "all": 26, "togeth": 26, "addit": 26, "resourc": 26, "need": 26, "extra": 26, "help": 26, "tabl": 26, "lifecycl": 27, "method": [27, 47], "def": [28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 42], "after_market_clos": 28, "refer": [28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 42], "before_market_clos": 29, "before_market_open": 30, "before_starting_trad": 31, "initi": 32, "on_abrupt_clos": 33, "on_bot_crash": 34, "on_canceled_ord": 35, "on_filled_ord": 36, "on_new_ord": 37, "on_parameters_upd": 38, "on_partially_filled_ord": 39, "on_trading_iter": 40, "trace_stat": 42, "manag": [48, 142], "self": [49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 62, 63, 64, 65, 66, 67, 68, 69, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196], "get_cash": [49, 55], "get_paramet": [50, 56, 104, 115], "get_portfolio_valu": [51, 57], "get_posit": [52, 53, 58, 59], "set_paramet": [54, 60], "chart": 61, "add_lin": [62, 66], "add_mark": [63, 67], "get_lines_df": [64, 68], "get_markers_df": [65, 69], "cancel_realtime_bar": 71, "get_historical_pric": 72, "get_historical_prices_for_asset": 73, "get_last_pric": [74, 75], "get_next_trading_dai": [76, 130, 138], "get_quot": 77, "get_realtime_bar": 78, "get_yesterday_dividend": [79, 80], "start_realtime_bar": 81, "datetim": 82, "get_datetim": [83, 92], "get_datetime_rang": [84, 93], "get_last_dai": [85, 94], "get_last_minut": [86, 95], "get_round_dai": [87, 96], "get_round_minut": [88, 97], "get_timestamp": [89, 98], "localize_datetim": [90, 99], "to_default_timezon": [91, 100], "miscellan": 101, "await_market_to_clos": [102, 113], "await_market_to_open": [103, 114], "log_messag": [105, 116], "set_market": [106, 117], "sleep": [107, 118], "update_paramet": [108, 119], "wait_for_order_execut": [109, 120], "wait_for_order_registr": [110, 121], "wait_for_orders_execut": [111, 122], "wait_for_orders_registr": [112, 123], "get_chain": [125, 126, 133, 134], "get_expir": [127, 135], "get_greek": [128, 136], "get_multipli": [129, 137], "get_strik": [131, 140], "options_expiry_to_datetime_d": [132, 141], "get_option_expiration_after_d": 139, "cancel_open_ord": [143, 154], "cancel_ord": [144, 145, 155, 156], "create_ord": [146, 157], "get_asset_potential_tot": [147, 158], "get_ord": [148, 149, 159, 160], "get_selling_ord": [150, 161], "sell_al": [151, 162], "submit_ord": [152, 153, 163, 164], "paramet": 165, "properti": 166, "cash": [167, 182], "first_iter": [168, 183], "initial_budget": [169, 184], "is_backtest": [170, 185], "last_on_trading_iteration_datetim": [171, 186], "minutes_before_clos": [172, 187], "minutes_before_open": [173, 188], "name": [174, 189], "portfolio_valu": [175, 190], "pytz": [176, 181, 191], "quote_asset": [177, 192], "sleeptim": [178, 193], "timezon": [179, 194], "unspent_monei": [180, 195], "backup": 196, "restor": 196, "It": 196, "work": 196, "benefit": 196, "var": 196, "usag": 196, "databas": 196, "storag": 196, "structur": 196}, "envversion": {"sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx": 60}, "alltitles": {"Backtesting": [[0, "backtesting"], [43, "backtesting"]], "Files Generated from Backtesting": [[0, "files-generated-from-backtesting"], [2, "files-generated-from-backtesting"]], "Contents:": [[0, null], [11, null], [18, null], [27, null], [47, null]], "Backtesting Function": [[1, "backtesting-function"]], "How To Backtest": [[2, "how-to-backtest"]], "Installing LumiBot": [[2, "installing-lumibot"]], "Choosing a Data Source": [[2, "choosing-a-data-source"]], "Running a Backtest with Polygon.io": [[2, "running-a-backtest-with-polygon-io"]], "Tearsheet HTML": [[2, "tearsheet-html"], [7, "tearsheet-html"]], "Trades Files": [[2, "trades-files"], [9, "trades-files"]], "Indicators Files": [[2, "indicators-files"], [3, "indicators-files"]], "Conclusion": [[2, "conclusion"], [17, "conclusion"]], "Logs CSV": [[4, "logs-csv"]], "Pandas (CSV or other data)": [[5, "pandas-csv-or-other-data"]], "Example Dataframe": [[5, "id1"]], "In Summary": [[5, "in-summary"]], "Polygon.io Backtesting": [[6, "polygon-io-backtesting"]], "ThetaData Backtesting": [[8, "thetadata-backtesting"]], "Yahoo": [[10, "yahoo"], [44, "module-lumibot.data_sources.yahoo_data"]], "Brokers": [[11, "brokers"]], "Alpaca": [[12, "alpaca"]], "Documentation": [[12, "module-lumibot.brokers.alpaca"], [19, "module-entities.asset"], [20, "module-entities.bars"], [22, "module-entities.order"], [45, "module-lumibot.strategies.strategy.Strategy"]], "Crypto Brokers (Using CCXT)": [[13, "crypto-brokers-using-ccxt"]], "Configuration Settings": [[13, "configuration-settings"]], "Running Your Strategy": [[13, "running-your-strategy"], [16, "running-your-strategy"]], "Full Example Strategy": [[13, "full-example-strategy"], [16, "full-example-strategy"]], "Interactive Brokers": [[14, "interactive-brokers"]], "Market Data Subscriptions": [[14, "market-data-subscriptions"]], "Two-Factor Authentication (2FA)": [[14, "two-factor-authentication-2fa"]], "Using a Secondary Username": [[14, "using-a-secondary-username"]], "Using a Paper Trading Account": [[14, "using-a-paper-trading-account"]], "Strategy Setup": [[14, "strategy-setup"]], "Interactive Brokers Configuration": [[14, "id1"], [17, "interactive-brokers-configuration"], [17, "id25"]], "Example Strategy": [[14, "example-strategy"]], "Interactive Brokers Legacy": [[15, "interactive-brokers-legacy"]], "Tradier": [[16, "tradier"]], "Getting Started": [[16, "getting-started"], [26, "getting-started"]], "Configuration": [[16, "configuration"]], "Deployment Guide": [[17, "deployment-guide"]], "Example Strategy for Deployment": [[17, "example-strategy-for-deployment"]], "Choosing Your Deployment Platform": [[17, "id1"]], "Deploying to Render": [[17, "id2"]], "Deploying to Replit": [[17, "id3"]], "Secrets Configuration": [[17, "secrets-configuration"]], "Broker Configuration": [[17, "broker-configuration"]], "Tradier Configuration": [[17, "tradier-configuration"], [17, "id21"]], "Alpaca Configuration": [[17, "alpaca-configuration"], [17, "id22"]], "Coinbase Configuration": [[17, "coinbase-configuration"], [17, "id23"]], "Kraken Configuration": [[17, "kraken-configuration"], [17, "id24"]], "Interactive Brokers-Legacy Configuration": [[17, "interactive-brokers-legacy-configuration"], [17, "id26"]], "General Environment Variables": [[17, "general-environment-variables"], [17, "id27"]], "Final Steps": [[17, "final-steps"]], "Entities": [[18, "entities"]], "Asset": [[19, "asset"]], "Bars": [[20, "bars"]], "Data": [[21, "module-entities.data"], [70, "data"]], "Order": [[22, "order"]], "Advanced Order Types": [[22, "advanced-order-types"]], "Order With Legs": [[22, "order-with-legs"]], "Position": [[23, "module-entities.position"]], "Trading Fee": [[24, "module-entities.trading_fee"]], "What is Lumibot?": [[25, "what-is-lumibot"]], "Lumiwealth": [[25, "id1"]], "Getting Started With Lumibot": [[25, "getting-started-with-lumibot"]], "Step 1: Install the Package": [[25, "step-1-install-the-package"]], "Step 2: Import the Following Modules": [[25, "step-2-import-the-following-modules"]], "Step 3: Create an Alpaca Paper Trading Account": [[25, "step-3-create-an-alpaca-paper-trading-account"]], "Step 4: Configure Your API Keys": [[25, "step-4-configure-your-api-keys"]], "Step 5: Create a Strategy Class": [[25, "step-5-create-a-strategy-class"]], "Step 6: Instantiate the Trader, Alpaca, and Strategy Classes": [[25, "step-6-instantiate-the-trader-alpaca-and-strategy-classes"]], "Step 7: Backtest the Strategy (Optional)": [[25, "step-7-backtest-the-strategy-optional"]], "Step 8: Run the Strategy": [[25, "step-8-run-the-strategy"]], "Adding Trading Fees": [[25, "adding-trading-fees"]], "Profiling to Improve Performance": [[25, "profiling-to-improve-performance"]], "Lumibot: Backtesting and Algorithmic Trading Library": [[26, "lumibot-backtesting-and-algorithmic-trading-library"]], "Step 1: Install Lumibot": [[26, "step-1-install-lumibot"]], "Step 2: Create a Strategy for Backtesting": [[26, "step-2-create-a-strategy-for-backtesting"]], "Step 3: Take Your Bot Live": [[26, "step-3-take-your-bot-live"]], "All Together": [[26, "all-together"]], "Additional Resources": [[26, "additional-resources"]], "Need Extra Help?": [[26, "need-extra-help"]], "Table of Contents": [[26, "table-of-contents"]], "Indices and tables": [[26, "indices-and-tables"]], "Lifecycle Methods": [[27, "lifecycle-methods"]], "def after_market_closes": [[28, "def-after-market-closes"]], "Reference": [[28, "reference"], [29, "reference"], [30, "reference"], [31, "reference"], [32, "reference"], [33, "reference"], [34, "reference"], [35, "reference"], [36, "reference"], [37, "reference"], [38, "reference"], [39, "reference"], [40, "reference"], [42, "reference"]], "def before_market_closes": [[29, "def-before-market-closes"]], "def before_market_opens": [[30, "def-before-market-opens"]], "def before_starting_trading": [[31, "def-before-starting-trading"]], "def initialize": [[32, "def-initialize"]], "def on_abrupt_closing": [[33, "def-on-abrupt-closing"]], "def on_bot_crash": [[34, "def-on-bot-crash"]], "def on_canceled_order": [[35, "def-on-canceled-order"]], "def on_filled_order": [[36, "def-on-filled-order"]], "def on_new_order": [[37, "def-on-new-order"]], "def on_parameters_updated": [[38, "def-on-parameters-updated"]], "def on_partially_filled_order": [[39, "def-on-partially-filled-order"]], "def on_trading_iteration": [[40, "def-on-trading-iteration"]], "Summary": [[41, "summary"]], "def trace_stats": [[42, "def-trace-stats"]], "Backtesting Broker": [[43, "module-lumibot.backtesting.backtesting_broker"]], "Data Source Backtesting": [[43, "module-lumibot.data_sources.data_source_backtesting"]], "Data Sources": [[44, "data-sources"]], "Data Source": [[44, "module-lumibot.data_sources.data_source"]], "Pandas": [[44, "module-lumibot.data_sources.pandas_data"]], "Module contents": [[44, "module-lumibot.data_sources"]], "Strategies": [[45, "strategies"]], "Traders": [[46, "traders"]], "Trader": [[46, "module-lumibot.traders.trader"]], "Strategy Methods": [[47, "strategy-methods"]], "Account Management": [[48, "account-management"]], "self.get_cash": [[49, "self-get-cash"], [55, "self-get-cash"]], "self.get_parameters": [[50, "self-get-parameters"], [56, "self-get-parameters"], [104, "self-get-parameters"], [115, "self-get-parameters"]], "self.get_portfolio_value": [[51, "self-get-portfolio-value"], [57, "self-get-portfolio-value"]], "self.get_position": [[52, "self-get-position"], [58, "self-get-position"]], "self.get_positions": [[53, "self-get-positions"], [59, "self-get-positions"]], "self.set_parameters": [[54, "self-set-parameters"], [60, "self-set-parameters"]], "Chart Functions": [[61, "chart-functions"]], "self.add_line": [[62, "self-add-line"], [66, "self-add-line"]], "self.add_marker": [[63, "self-add-marker"], [67, "self-add-marker"]], "self.get_lines_df": [[64, "self-get-lines-df"], [68, "self-get-lines-df"]], "self.get_markers_df": [[65, "self-get-markers-df"], [69, "self-get-markers-df"]], "self.cancel_realtime_bars": [[71, "self-cancel-realtime-bars"]], "self.get_historical_prices": [[72, "self-get-historical-prices"]], "self.get_historical_prices_for_assets": [[73, "self-get-historical-prices-for-assets"]], "self.get_last_price": [[74, "self-get-last-price"]], "self.get_last_prices": [[75, "self-get-last-prices"]], "self.get_next_trading_day": [[76, "self-get-next-trading-day"], [130, "self-get-next-trading-day"], [138, "self-get-next-trading-day"]], "self.get_quote": [[77, "self-get-quote"]], "self.get_realtime_bars": [[78, "self-get-realtime-bars"]], "self.get_yesterday_dividend": [[79, "self-get-yesterday-dividend"]], "self.get_yesterday_dividends": [[80, "self-get-yesterday-dividends"]], "self.start_realtime_bars": [[81, "self-start-realtime-bars"]], "DateTime": [[82, "datetime"]], "self.get_datetime": [[83, "self-get-datetime"], [92, "self-get-datetime"]], "self.get_datetime_range": [[84, "self-get-datetime-range"], [93, "self-get-datetime-range"]], "self.get_last_day": [[85, "self-get-last-day"], [94, "self-get-last-day"]], "self.get_last_minute": [[86, "self-get-last-minute"], [95, "self-get-last-minute"]], "self.get_round_day": [[87, "self-get-round-day"], [96, "self-get-round-day"]], "self.get_round_minute": [[88, "self-get-round-minute"], [97, "self-get-round-minute"]], "self.get_timestamp": [[89, "self-get-timestamp"], [98, "self-get-timestamp"]], "self.localize_datetime": [[90, "self-localize-datetime"], [99, "self-localize-datetime"]], "self.to_default_timezone": [[91, "self-to-default-timezone"], [100, "self-to-default-timezone"]], "Miscellaneous": [[101, "miscellaneous"]], "self.await_market_to_close": [[102, "self-await-market-to-close"], [113, "self-await-market-to-close"]], "self.await_market_to_open": [[103, "self-await-market-to-open"], [114, "self-await-market-to-open"]], "self.log_message": [[105, "self-log-message"], [116, "self-log-message"]], "self.set_market": [[106, "self-set-market"], [117, "self-set-market"]], "self.sleep": [[107, "self-sleep"], [118, "self-sleep"]], "self.update_parameters": [[108, "self-update-parameters"], [119, "self-update-parameters"]], "self.wait_for_order_execution": [[109, "self-wait-for-order-execution"], [120, "self-wait-for-order-execution"]], "self.wait_for_order_registration": [[110, "self-wait-for-order-registration"], [121, "self-wait-for-order-registration"]], "self.wait_for_orders_execution": [[111, "self-wait-for-orders-execution"], [122, "self-wait-for-orders-execution"]], "self.wait_for_orders_registration": [[112, "self-wait-for-orders-registration"], [123, "self-wait-for-orders-registration"]], "Options": [[124, "options"]], "self.get_chain": [[125, "self-get-chain"], [133, "self-get-chain"]], "self.get_chains": [[126, "self-get-chains"], [134, "self-get-chains"]], "self.get_expiration": [[127, "self-get-expiration"], [135, "self-get-expiration"]], "self.get_greeks": [[128, "self-get-greeks"], [136, "self-get-greeks"]], "self.get_multiplier": [[129, "self-get-multiplier"], [137, "self-get-multiplier"]], "self.get_strikes": [[131, "self-get-strikes"], [140, "self-get-strikes"]], "self.options_expiry_to_datetime_date": [[132, "self-options-expiry-to-datetime-date"], [141, "self-options-expiry-to-datetime-date"]], "self.get_option_expiration_after_date": [[139, "self-get-option-expiration-after-date"]], "Order Management": [[142, "order-management"]], "self.cancel_open_orders": [[143, "self-cancel-open-orders"], [154, "self-cancel-open-orders"]], "self.cancel_order": [[144, "self-cancel-order"], [155, "self-cancel-order"]], "self.cancel_orders": [[145, "self-cancel-orders"], [156, "self-cancel-orders"]], "self.create_order": [[146, "self-create-order"], [157, "self-create-order"]], "self.get_asset_potential_total": [[147, "self-get-asset-potential-total"], [158, "self-get-asset-potential-total"]], "self.get_order": [[148, "self-get-order"], [159, "self-get-order"]], "self.get_orders": [[149, "self-get-orders"], [160, "self-get-orders"]], "self.get_selling_order": [[150, "self-get-selling-order"], [161, "self-get-selling-order"]], "self.sell_all": [[151, "self-sell-all"], [162, "self-sell-all"]], "self.submit_order": [[152, "self-submit-order"], [163, "self-submit-order"]], "self.submit_orders": [[153, "self-submit-orders"], [164, "self-submit-orders"]], "Parameters": [[165, "parameters"]], "Strategy Properties": [[166, "strategy-properties"]], "self.cash": [[167, "self-cash"], [182, "self-cash"]], "self.first_iteration": [[168, "self-first-iteration"], [183, "self-first-iteration"]], "self.initial_budget": [[169, "self-initial-budget"], [184, "self-initial-budget"]], "self.is_backtesting": [[170, "self-is-backtesting"], [185, "self-is-backtesting"]], "self.last_on_trading_iteration_datetime": [[171, "self-last-on-trading-iteration-datetime"], [186, "self-last-on-trading-iteration-datetime"]], "self.minutes_before_closing": [[172, "self-minutes-before-closing"], [187, "self-minutes-before-closing"]], "self.minutes_before_opening": [[173, "self-minutes-before-opening"], [188, "self-minutes-before-opening"]], "self.name": [[174, "self-name"], [189, "self-name"]], "self.portfolio_value": [[175, "self-portfolio-value"], [190, "self-portfolio-value"]], "self.pytz": [[176, "self-pytz"], [181, "self-pytz"], [191, "self-pytz"]], "self.quote_asset": [[177, "self-quote-asset"], [192, "self-quote-asset"]], "self.sleeptime": [[178, "self-sleeptime"], [193, "self-sleeptime"]], "self.timezone": [[179, "self-timezone"], [194, "self-timezone"]], "self.unspent_money": [[180, "self-unspent-money"], [195, "self-unspent-money"]], "Variable Backup & Restore": [[196, "variable-backup-restore"]], "How It Works": [[196, "how-it-works"]], "Benefits of self.vars": [[196, "benefits-of-self-vars"]], "Usage Guide": [[196, "usage-guide"]], "Database Configuration": [[196, "database-configuration"]], "Database Storage Structure": [[196, "database-storage-structure"]]}, "indexentries": {"run_backtest() (in module lumibot.strategies.strategy.strategy)": [[1, "lumibot.strategies.strategy.Strategy.run_backtest"]], "asset_type_map (lumibot.brokers.alpaca.alpaca attribute)": [[12, "lumibot.brokers.alpaca.Alpaca.ASSET_TYPE_MAP"]], "alpaca (class in lumibot.brokers.alpaca)": [[12, "lumibot.brokers.alpaca.Alpaca"]], "orderdata (class in lumibot.brokers.alpaca)": [[12, "lumibot.brokers.alpaca.OrderData"]], "api (lumibot.brokers.alpaca.alpaca attribute)": [[12, "lumibot.brokers.alpaca.Alpaca.api"]], "cancel_order() (lumibot.brokers.alpaca.alpaca method)": [[12, "lumibot.brokers.alpaca.Alpaca.cancel_order"]], "get_historical_account_value() (lumibot.brokers.alpaca.alpaca method)": [[12, "lumibot.brokers.alpaca.Alpaca.get_historical_account_value"]], "get_time_to_close() (lumibot.brokers.alpaca.alpaca method)": [[12, "id0"], [12, "lumibot.brokers.alpaca.Alpaca.get_time_to_close"]], "get_time_to_open() (lumibot.brokers.alpaca.alpaca method)": [[12, "id1"], [12, "lumibot.brokers.alpaca.Alpaca.get_time_to_open"]], "get_timestamp() (lumibot.brokers.alpaca.alpaca method)": [[12, "id2"], [12, "lumibot.brokers.alpaca.Alpaca.get_timestamp"]], "is_market_open() (lumibot.brokers.alpaca.alpaca method)": [[12, "id3"], [12, "lumibot.brokers.alpaca.Alpaca.is_market_open"]], "lumibot.brokers.alpaca": [[12, "module-lumibot.brokers.alpaca"]], "map_asset_type() (lumibot.brokers.alpaca.alpaca method)": [[12, "lumibot.brokers.alpaca.Alpaca.map_asset_type"]], "module": [[12, "module-lumibot.brokers.alpaca"], [19, "module-entities.asset"], [20, "module-entities.bars"], [21, "module-entities.data"], [22, "module-entities.order"], [23, "module-entities.position"], [24, "module-entities.trading_fee"], [43, "module-lumibot.backtesting.backtesting_broker"], [43, "module-lumibot.data_sources.data_source_backtesting"], [44, "module-lumibot.data_sources"], [44, "module-lumibot.data_sources.data_source"], [44, "module-lumibot.data_sources.pandas_data"], [44, "module-lumibot.data_sources.yahoo_data"], [45, "module-lumibot.strategies.strategy.Strategy"], [46, "module-lumibot.traders.trader"]], "to_request_fields() (lumibot.brokers.alpaca.orderdata method)": [[12, "lumibot.brokers.alpaca.OrderData.to_request_fields"]], "asset (class in entities.asset)": [[19, "entities.asset.Asset"]], "asset.assettype (class in entities.asset)": [[19, "entities.asset.Asset.AssetType"]], "asset.optionright (class in entities.asset)": [[19, "entities.asset.Asset.OptionRight"]], "assetsmapping (class in entities.asset)": [[19, "entities.asset.AssetsMapping"]], "call (entities.asset.asset.optionright attribute)": [[19, "entities.asset.Asset.OptionRight.CALL"]], "crypto (entities.asset.asset.assettype attribute)": [[19, "entities.asset.Asset.AssetType.CRYPTO"]], "forex (entities.asset.asset.assettype attribute)": [[19, "entities.asset.Asset.AssetType.FOREX"]], "future (entities.asset.asset.assettype attribute)": [[19, "entities.asset.Asset.AssetType.FUTURE"]], "index (entities.asset.asset.assettype attribute)": [[19, "entities.asset.Asset.AssetType.INDEX"]], "multileg (entities.asset.asset.assettype attribute)": [[19, "entities.asset.Asset.AssetType.MULTILEG"]], "option (entities.asset.asset.assettype attribute)": [[19, "entities.asset.Asset.AssetType.OPTION"]], "put (entities.asset.asset.optionright attribute)": [[19, "entities.asset.Asset.OptionRight.PUT"]], "stock (entities.asset.asset.assettype attribute)": [[19, "entities.asset.Asset.AssetType.STOCK"]], "_asset_types (entities.asset.asset attribute)": [[19, "entities.asset.Asset._asset_types"]], "_right (entities.asset.asset attribute)": [[19, "entities.asset.Asset._right"]], "asset_type (entities.asset.asset attribute)": [[19, "entities.asset.Asset.asset_type"], [19, "id0"]], "asset_type_must_be_one_of() (entities.asset.asset method)": [[19, "entities.asset.Asset.asset_type_must_be_one_of"], [19, "id1"]], "entities.asset": [[19, "module-entities.asset"]], "expiration (entities.asset.asset attribute)": [[19, "entities.asset.Asset.expiration"], [19, "id2"]], "from_dict() (entities.asset.asset class method)": [[19, "entities.asset.Asset.from_dict"]], "is_valid() (entities.asset.asset method)": [[19, "entities.asset.Asset.is_valid"]], "multiplier (entities.asset.asset attribute)": [[19, "entities.asset.Asset.multiplier"], [19, "id3"]], "precision (entities.asset.asset attribute)": [[19, "entities.asset.Asset.precision"], [19, "id4"]], "right (entities.asset.asset attribute)": [[19, "entities.asset.Asset.right"], [19, "id5"]], "right_must_be_one_of() (entities.asset.asset method)": [[19, "entities.asset.Asset.right_must_be_one_of"], [19, "id6"]], "strike (entities.asset.asset attribute)": [[19, "entities.asset.Asset.strike"], [19, "id7"]], "symbol (entities.asset.asset attribute)": [[19, "entities.asset.Asset.symbol"], [19, "id8"]], "symbol2asset() (entities.asset.asset class method)": [[19, "entities.asset.Asset.symbol2asset"]], "to_dict() (entities.asset.asset method)": [[19, "entities.asset.Asset.to_dict"]], "underlying_asset (entities.asset.asset attribute)": [[19, "entities.asset.Asset.underlying_asset"]], "bars (class in entities.bars)": [[20, "entities.bars.Bars"]], "nobardatafound": [[20, "entities.bars.NoBarDataFound"]], "aggregate_bars() (entities.bars.bars method)": [[20, "entities.bars.Bars.aggregate_bars"], [20, "id0"]], "entities.bars": [[20, "module-entities.bars"]], "filter() (entities.bars.bars method)": [[20, "entities.bars.Bars.filter"]], "get_last_dividend() (entities.bars.bars method)": [[20, "entities.bars.Bars.get_last_dividend"], [20, "id1"]], "get_last_price() (entities.bars.bars method)": [[20, "entities.bars.Bars.get_last_price"], [20, "id2"]], "get_momentum() (entities.bars.bars method)": [[20, "entities.bars.Bars.get_momentum"], [20, "id3"]], "get_total_dividends() (entities.bars.bars method)": [[20, "entities.bars.Bars.get_total_dividends"]], "get_total_return() (entities.bars.bars method)": [[20, "entities.bars.Bars.get_total_return"]], "get_total_return_pct() (entities.bars.bars method)": [[20, "entities.bars.Bars.get_total_return_pct"]], "get_total_return_pct_change() (entities.bars.bars method)": [[20, "entities.bars.Bars.get_total_return_pct_change"]], "get_total_stock_splits() (entities.bars.bars method)": [[20, "entities.bars.Bars.get_total_stock_splits"]], "get_total_volume() (entities.bars.bars method)": [[20, "entities.bars.Bars.get_total_volume"], [20, "id4"]], "parse_bar_list() (entities.bars.bars class method)": [[20, "entities.bars.Bars.parse_bar_list"]], "split() (entities.bars.bars method)": [[20, "entities.bars.Bars.split"]], "data (class in entities.data)": [[21, "entities.data.Data"]], "min_timestep (entities.data.data attribute)": [[21, "entities.data.Data.MIN_TIMESTEP"]], "timestep_mapping (entities.data.data attribute)": [[21, "entities.data.Data.TIMESTEP_MAPPING"]], "_get_bars_dict() (entities.data.data method)": [[21, "entities.data.Data._get_bars_dict"]], "asset (entities.data.data attribute)": [[21, "entities.data.Data.asset"]], "check_data() (entities.data.data method)": [[21, "entities.data.Data.check_data"], [21, "id0"]], "columns() (entities.data.data method)": [[21, "entities.data.Data.columns"], [21, "id1"]], "datalines (entities.data.data attribute)": [[21, "entities.data.Data.datalines"]], "date_end (entities.data.data attribute)": [[21, "entities.data.Data.date_end"]], "date_start (entities.data.data attribute)": [[21, "entities.data.Data.date_start"]], "df (entities.data.data attribute)": [[21, "entities.data.Data.df"]], "entities.data": [[21, "module-entities.data"]], "get_bars() (entities.data.data method)": [[21, "entities.data.Data.get_bars"], [21, "id2"]], "get_bars_between_dates() (entities.data.data method)": [[21, "entities.data.Data.get_bars_between_dates"]], "get_iter_count() (entities.data.data method)": [[21, "entities.data.Data.get_iter_count"], [21, "id3"]], "get_last_price() (entities.data.data method)": [[21, "entities.data.Data.get_last_price"], [21, "id4"]], "get_quote() (entities.data.data method)": [[21, "entities.data.Data.get_quote"]], "iter_index (entities.data.data attribute)": [[21, "entities.data.Data.iter_index"]], "repair_times_and_fill() (entities.data.data method)": [[21, "entities.data.Data.repair_times_and_fill"], [21, "id5"]], "set_date_format() (entities.data.data method)": [[21, "entities.data.Data.set_date_format"], [21, "id6"]], "set_dates() (entities.data.data method)": [[21, "entities.data.Data.set_dates"], [21, "id7"]], "set_times() (entities.data.data method)": [[21, "entities.data.Data.set_times"], [21, "id8"]], "sybmol (entities.data.data attribute)": [[21, "entities.data.Data.sybmol"]], "timestep (entities.data.data attribute)": [[21, "entities.data.Data.timestep"]], "to_datalines() (entities.data.data method)": [[21, "entities.data.Data.to_datalines"], [21, "id9"]], "trading_hours_end (entities.data.data attribute)": [[21, "entities.data.Data.trading_hours_end"]], "trading_hours_start (entities.data.data attribute)": [[21, "entities.data.Data.trading_hours_start"]], "trim_data() (entities.data.data method)": [[21, "entities.data.Data.trim_data"], [21, "id10"]], "bracket (entities.order.order.orderclass attribute)": [[22, "entities.order.Order.OrderClass.BRACKET"]], "bracket (entities.order.order.ordertype attribute)": [[22, "entities.order.Order.OrderType.BRACKET"]], "buy (entities.order.order.orderside attribute)": [[22, "entities.order.Order.OrderSide.BUY"]], "buy_to_close (entities.order.order.orderside attribute)": [[22, "entities.order.Order.OrderSide.BUY_TO_CLOSE"]], "buy_to_cover (entities.order.order.orderside attribute)": [[22, "entities.order.Order.OrderSide.BUY_TO_COVER"]], "buy_to_open (entities.order.order.orderside attribute)": [[22, "entities.order.Order.OrderSide.BUY_TO_OPEN"]], "canceled (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.CANCELED"]], "cancelling (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.CANCELLING"]], "cash_settled (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.CASH_SETTLED"]], "error (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.ERROR"]], "expired (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.EXPIRED"]], "filled (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.FILLED"]], "limit (entities.order.order.ordertype attribute)": [[22, "entities.order.Order.OrderType.LIMIT"]], "market (entities.order.order.ordertype attribute)": [[22, "entities.order.Order.OrderType.MARKET"]], "multileg (entities.order.order.orderclass attribute)": [[22, "entities.order.Order.OrderClass.MULTILEG"]], "new (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.NEW"]], "oco (entities.order.order.orderclass attribute)": [[22, "entities.order.Order.OrderClass.OCO"]], "oco (entities.order.order.ordertype attribute)": [[22, "entities.order.Order.OrderType.OCO"]], "open (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.OPEN"]], "oto (entities.order.order.orderclass attribute)": [[22, "entities.order.Order.OrderClass.OTO"]], "oto (entities.order.order.ordertype attribute)": [[22, "entities.order.Order.OrderType.OTO"]], "order (class in entities.order)": [[22, "entities.order.Order"]], "order.orderclass (class in entities.order)": [[22, "entities.order.Order.OrderClass"]], "order.orderside (class in entities.order)": [[22, "entities.order.Order.OrderSide"]], "order.orderstatus (class in entities.order)": [[22, "entities.order.Order.OrderStatus"]], "order.ordertype (class in entities.order)": [[22, "entities.order.Order.OrderType"]], "order.transaction (class in entities.order)": [[22, "entities.order.Order.Transaction"]], "partially_filled (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.PARTIALLY_FILLED"]], "sell (entities.order.order.orderside attribute)": [[22, "entities.order.Order.OrderSide.SELL"]], "sell_short (entities.order.order.orderside attribute)": [[22, "entities.order.Order.OrderSide.SELL_SHORT"]], "sell_to_close (entities.order.order.orderside attribute)": [[22, "entities.order.Order.OrderSide.SELL_TO_CLOSE"]], "sell_to_open (entities.order.order.orderside attribute)": [[22, "entities.order.Order.OrderSide.SELL_TO_OPEN"]], "stop (entities.order.order.ordertype attribute)": [[22, "entities.order.Order.OrderType.STOP"]], "stop_limit (entities.order.order.ordertype attribute)": [[22, "entities.order.Order.OrderType.STOP_LIMIT"]], "submitted (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.SUBMITTED"]], "trail (entities.order.order.ordertype attribute)": [[22, "entities.order.Order.OrderType.TRAIL"]], "unprocessed (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.UNPROCESSED"]], "add_child_order() (entities.order.order method)": [[22, "entities.order.Order.add_child_order"]], "add_transaction() (entities.order.order method)": [[22, "entities.order.Order.add_transaction"]], "avg_fill_price (entities.order.order property)": [[22, "entities.order.Order.avg_fill_price"]], "cash_pending() (entities.order.order method)": [[22, "entities.order.Order.cash_pending"]], "entities.order": [[22, "module-entities.order"]], "equivalent_status() (entities.order.order method)": [[22, "entities.order.Order.equivalent_status"]], "from_dict() (entities.order.order class method)": [[22, "entities.order.Order.from_dict"]], "get_fill_price() (entities.order.order method)": [[22, "entities.order.Order.get_fill_price"]], "get_increment() (entities.order.order method)": [[22, "entities.order.Order.get_increment"]], "is_active() (entities.order.order method)": [[22, "entities.order.Order.is_active"]], "is_buy_order() (entities.order.order method)": [[22, "entities.order.Order.is_buy_order"]], "is_canceled() (entities.order.order method)": [[22, "entities.order.Order.is_canceled"]], "is_equivalent_status() (entities.order.order class method)": [[22, "entities.order.Order.is_equivalent_status"]], "is_filled() (entities.order.order method)": [[22, "entities.order.Order.is_filled"]], "is_option() (entities.order.order method)": [[22, "entities.order.Order.is_option"]], "is_parent() (entities.order.order method)": [[22, "entities.order.Order.is_parent"]], "is_sell_order() (entities.order.order method)": [[22, "entities.order.Order.is_sell_order"]], "price (entities.order.order.transaction attribute)": [[22, "entities.order.Order.Transaction.price"]], "quantity (entities.order.order property)": [[22, "entities.order.Order.quantity"]], "quantity (entities.order.order.transaction attribute)": [[22, "entities.order.Order.Transaction.quantity"]], "set_canceled() (entities.order.order method)": [[22, "entities.order.Order.set_canceled"]], "set_error() (entities.order.order method)": [[22, "entities.order.Order.set_error"]], "set_filled() (entities.order.order method)": [[22, "entities.order.Order.set_filled"]], "set_identifier() (entities.order.order method)": [[22, "entities.order.Order.set_identifier"]], "set_new() (entities.order.order method)": [[22, "entities.order.Order.set_new"]], "set_partially_filled() (entities.order.order method)": [[22, "entities.order.Order.set_partially_filled"]], "status (entities.order.order property)": [[22, "entities.order.Order.status"]], "to_dict() (entities.order.order method)": [[22, "entities.order.Order.to_dict"]], "to_position() (entities.order.order method)": [[22, "entities.order.Order.to_position"]], "update_raw() (entities.order.order method)": [[22, "entities.order.Order.update_raw"]], "update_trail_stop_price() (entities.order.order method)": [[22, "entities.order.Order.update_trail_stop_price"]], "wait_to_be_closed() (entities.order.order method)": [[22, "entities.order.Order.wait_to_be_closed"]], "wait_to_be_registered() (entities.order.order method)": [[22, "entities.order.Order.wait_to_be_registered"]], "was_transmitted() (entities.order.order method)": [[22, "entities.order.Order.was_transmitted"]], "position (class in entities.position)": [[23, "entities.position.Position"]], "add_order() (entities.position.position method)": [[23, "entities.position.Position.add_order"]], "asset (entities.position.position attribute)": [[23, "entities.position.Position.asset"]], "available (entities.position.position attribute)": [[23, "entities.position.Position.available"]], "available (entities.position.position property)": [[23, "id0"]], "avg_fill_price (entities.position.position attribute)": [[23, "entities.position.Position.avg_fill_price"]], "entities.position": [[23, "module-entities.position"]], "from_dict() (entities.position.position class method)": [[23, "entities.position.Position.from_dict"]], "get_selling_order() (entities.position.position method)": [[23, "entities.position.Position.get_selling_order"]], "hold (entities.position.position attribute)": [[23, "entities.position.Position.hold"]], "hold (entities.position.position property)": [[23, "id1"]], "orders (entities.position.position attribute)": [[23, "entities.position.Position.orders"]], "quantity (entities.position.position attribute)": [[23, "entities.position.Position.quantity"]], "quantity (entities.position.position property)": [[23, "id2"]], "strategy (entities.position.position attribute)": [[23, "entities.position.Position.strategy"]], "symbol (entities.position.position attribute)": [[23, "entities.position.Position.symbol"]], "to_dict() (entities.position.position method)": [[23, "entities.position.Position.to_dict"]], "value_type() (entities.position.position method)": [[23, "entities.position.Position.value_type"]], "tradingfee (class in entities.trading_fee)": [[24, "entities.trading_fee.TradingFee"]], "entities.trading_fee": [[24, "module-entities.trading_fee"]], "after_market_closes() (in module lumibot.strategies.strategy.strategy)": [[28, "lumibot.strategies.strategy.Strategy.after_market_closes"]], "before_market_closes() (in module lumibot.strategies.strategy.strategy)": [[29, "lumibot.strategies.strategy.Strategy.before_market_closes"]], "before_market_opens() (in module lumibot.strategies.strategy.strategy)": [[30, "lumibot.strategies.strategy.Strategy.before_market_opens"]], "before_starting_trading() (in module lumibot.strategies.strategy.strategy)": [[31, "lumibot.strategies.strategy.Strategy.before_starting_trading"]], "initialize() (in module lumibot.strategies.strategy.strategy)": [[32, "lumibot.strategies.strategy.Strategy.initialize"]], "on_abrupt_closing() (in module lumibot.strategies.strategy.strategy)": [[33, "lumibot.strategies.strategy.Strategy.on_abrupt_closing"]], "on_bot_crash() (in module lumibot.strategies.strategy.strategy)": [[34, "lumibot.strategies.strategy.Strategy.on_bot_crash"]], "on_canceled_order() (in module lumibot.strategies.strategy.strategy)": [[35, "lumibot.strategies.strategy.Strategy.on_canceled_order"]], "on_filled_order() (in module lumibot.strategies.strategy.strategy)": [[36, "lumibot.strategies.strategy.Strategy.on_filled_order"]], "on_new_order() (in module lumibot.strategies.strategy.strategy)": [[37, "lumibot.strategies.strategy.Strategy.on_new_order"]], "on_parameters_updated() (in module lumibot.strategies.strategy.strategy)": [[38, "lumibot.strategies.strategy.Strategy.on_parameters_updated"]], "on_partially_filled_order() (in module lumibot.strategies.strategy.strategy)": [[39, "lumibot.strategies.strategy.Strategy.on_partially_filled_order"]], "on_trading_iteration() (in module lumibot.strategies.strategy.strategy)": [[40, "lumibot.strategies.strategy.Strategy.on_trading_iteration"]], "trace_stats() (in module lumibot.strategies.strategy.strategy)": [[42, "lumibot.strategies.strategy.Strategy.trace_stats"]], "backtestingbroker (class in lumibot.backtesting.backtesting_broker)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker"]], "datasourcebacktesting (class in lumibot.data_sources.data_source_backtesting)": [[43, "lumibot.data_sources.data_source_backtesting.DataSourceBacktesting"]], "is_backtesting_broker (lumibot.backtesting.backtesting_broker.backtestingbroker attribute)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.IS_BACKTESTING_BROKER"]], "is_backtesting_data_source (lumibot.data_sources.data_source_backtesting.datasourcebacktesting attribute)": [[43, "lumibot.data_sources.data_source_backtesting.DataSourceBacktesting.IS_BACKTESTING_DATA_SOURCE"]], "calculate_trade_cost() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.calculate_trade_cost"]], "cancel_order() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.cancel_order"]], "cash_settle_options_contract() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.cash_settle_options_contract"]], "datetime (lumibot.backtesting.backtesting_broker.backtestingbroker property)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.datetime"]], "get_datetime() (lumibot.data_sources.data_source_backtesting.datasourcebacktesting method)": [[43, "lumibot.data_sources.data_source_backtesting.DataSourceBacktesting.get_datetime"]], "get_datetime_range() (lumibot.data_sources.data_source_backtesting.datasourcebacktesting method)": [[43, "lumibot.data_sources.data_source_backtesting.DataSourceBacktesting.get_datetime_range"]], "get_historical_account_value() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.get_historical_account_value"]], "get_last_bar() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.get_last_bar"]], "get_time_to_close() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.get_time_to_close"]], "get_time_to_open() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.get_time_to_open"]], "is_market_open() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.is_market_open"]], "limit_order() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.limit_order"]], "lumibot.backtesting.backtesting_broker": [[43, "module-lumibot.backtesting.backtesting_broker"]], "lumibot.data_sources.data_source_backtesting": [[43, "module-lumibot.data_sources.data_source_backtesting"]], "process_expired_option_contracts() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.process_expired_option_contracts"]], "process_pending_orders() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.process_pending_orders"]], "should_continue() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.should_continue"]], "stop_order() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.stop_order"]], "submit_order() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.submit_order"]], "submit_orders() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.submit_orders"]], "default_pytz (lumibot.data_sources.data_source.datasource attribute)": [[44, "lumibot.data_sources.data_source.DataSource.DEFAULT_PYTZ"]], "default_timezone (lumibot.data_sources.data_source.datasource attribute)": [[44, "lumibot.data_sources.data_source.DataSource.DEFAULT_TIMEZONE"]], "datasource (class in lumibot.data_sources.data_source)": [[44, "lumibot.data_sources.data_source.DataSource"]], "is_backtesting_data_source (lumibot.data_sources.data_source.datasource attribute)": [[44, "lumibot.data_sources.data_source.DataSource.IS_BACKTESTING_DATA_SOURCE"]], "min_timestep (lumibot.data_sources.data_source.datasource attribute)": [[44, "lumibot.data_sources.data_source.DataSource.MIN_TIMESTEP"]], "min_timestep (lumibot.data_sources.yahoo_data.yahoodata attribute)": [[44, "lumibot.data_sources.yahoo_data.YahooData.MIN_TIMESTEP"]], "pandasdata (class in lumibot.data_sources.pandas_data)": [[44, "lumibot.data_sources.pandas_data.PandasData"]], "source (lumibot.data_sources.data_source.datasource attribute)": [[44, "lumibot.data_sources.data_source.DataSource.SOURCE"]], "source (lumibot.data_sources.pandas_data.pandasdata attribute)": [[44, "lumibot.data_sources.pandas_data.PandasData.SOURCE"]], "source (lumibot.data_sources.yahoo_data.yahoodata attribute)": [[44, "lumibot.data_sources.yahoo_data.YahooData.SOURCE"]], "timestep_mapping (lumibot.data_sources.data_source.datasource attribute)": [[44, "lumibot.data_sources.data_source.DataSource.TIMESTEP_MAPPING"]], "timestep_mapping (lumibot.data_sources.pandas_data.pandasdata attribute)": [[44, "lumibot.data_sources.pandas_data.PandasData.TIMESTEP_MAPPING"]], "timestep_mapping (lumibot.data_sources.yahoo_data.yahoodata attribute)": [[44, "lumibot.data_sources.yahoo_data.YahooData.TIMESTEP_MAPPING"]], "yahoodata (class in lumibot.data_sources.yahoo_data)": [[44, "lumibot.data_sources.yahoo_data.YahooData"]], "calculate_greeks() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.calculate_greeks"]], "clean_trading_times() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.clean_trading_times"]], "convert_timestep_str_to_timedelta() (lumibot.data_sources.data_source.datasource static method)": [[44, "lumibot.data_sources.data_source.DataSource.convert_timestep_str_to_timedelta"]], "find_asset_in_data_store() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.find_asset_in_data_store"]], "get_asset_by_name() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_asset_by_name"]], "get_asset_by_symbol() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_asset_by_symbol"]], "get_assets() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_assets"]], "get_bars() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_bars"]], "get_chains() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_chains"]], "get_chains() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_chains"]], "get_chains() (lumibot.data_sources.yahoo_data.yahoodata method)": [[44, "lumibot.data_sources.yahoo_data.YahooData.get_chains"]], "get_datetime() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_datetime"]], "get_datetime_range() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_datetime_range"]], "get_historical_prices() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_historical_prices"]], "get_historical_prices() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_historical_prices"]], "get_historical_prices() (lumibot.data_sources.yahoo_data.yahoodata method)": [[44, "lumibot.data_sources.yahoo_data.YahooData.get_historical_prices"]], "get_last_day() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_last_day"]], "get_last_minute() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_last_minute"]], "get_last_price() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_last_price"]], "get_last_price() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_last_price"]], "get_last_price() (lumibot.data_sources.yahoo_data.yahoodata method)": [[44, "lumibot.data_sources.yahoo_data.YahooData.get_last_price"]], "get_last_prices() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_last_prices"]], "get_last_prices() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_last_prices"]], "get_round_day() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_round_day"]], "get_round_minute() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_round_minute"]], "get_start_datetime_and_ts_unit() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_start_datetime_and_ts_unit"]], "get_strikes() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_strikes"]], "get_strikes() (lumibot.data_sources.yahoo_data.yahoodata method)": [[44, "lumibot.data_sources.yahoo_data.YahooData.get_strikes"]], "get_timestamp() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_timestamp"]], "get_timestep() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_timestep"]], "get_trading_days_pandas() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_trading_days_pandas"]], "get_yesterday_dividend() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_yesterday_dividend"]], "get_yesterday_dividend() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_yesterday_dividend"]], "get_yesterday_dividends() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_yesterday_dividends"]], "get_yesterday_dividends() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_yesterday_dividends"]], "load_data() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.load_data"]], "localize_datetime() (lumibot.data_sources.data_source.datasource class method)": [[44, "lumibot.data_sources.data_source.DataSource.localize_datetime"]], "lumibot.data_sources": [[44, "module-lumibot.data_sources"]], "lumibot.data_sources.data_source": [[44, "module-lumibot.data_sources.data_source"]], "lumibot.data_sources.pandas_data": [[44, "module-lumibot.data_sources.pandas_data"]], "lumibot.data_sources.yahoo_data": [[44, "module-lumibot.data_sources.yahoo_data"]], "query_greeks() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.query_greeks"]], "to_default_timezone() (lumibot.data_sources.data_source.datasource class method)": [[44, "lumibot.data_sources.data_source.DataSource.to_default_timezone"]], "update_date_index() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.update_date_index"]], "lumibot.strategies.strategy.strategy": [[45, "module-lumibot.strategies.strategy.Strategy"]], "trader (class in lumibot.traders.trader)": [[46, "lumibot.traders.trader.Trader"]], "add_strategy() (lumibot.traders.trader.trader method)": [[46, "lumibot.traders.trader.Trader.add_strategy"]], "is_backtest_broker (lumibot.traders.trader.trader property)": [[46, "lumibot.traders.trader.Trader.is_backtest_broker"]], "lumibot.traders.trader": [[46, "module-lumibot.traders.trader"]], "run_all() (lumibot.traders.trader.trader method)": [[46, "lumibot.traders.trader.Trader.run_all"]], "run_all_async() (lumibot.traders.trader.trader method)": [[46, "lumibot.traders.trader.Trader.run_all_async"]], "stop_all() (lumibot.traders.trader.trader method)": [[46, "lumibot.traders.trader.Trader.stop_all"]], "get_cash() (in module lumibot.strategies.strategy.strategy)": [[49, "lumibot.strategies.strategy.Strategy.get_cash"], [55, "lumibot.strategies.strategy.Strategy.get_cash"]], "get_parameters() (in module lumibot.strategies.strategy.strategy)": [[50, "lumibot.strategies.strategy.Strategy.get_parameters"], [56, "lumibot.strategies.strategy.Strategy.get_parameters"], [104, "lumibot.strategies.strategy.Strategy.get_parameters"], [115, "lumibot.strategies.strategy.Strategy.get_parameters"]], "get_portfolio_value() (in module lumibot.strategies.strategy.strategy)": [[51, "lumibot.strategies.strategy.Strategy.get_portfolio_value"], [57, "lumibot.strategies.strategy.Strategy.get_portfolio_value"]], "get_position() (in module lumibot.strategies.strategy.strategy)": [[52, "lumibot.strategies.strategy.Strategy.get_position"], [58, "lumibot.strategies.strategy.Strategy.get_position"]], "get_positions() (in module lumibot.strategies.strategy.strategy)": [[53, "lumibot.strategies.strategy.Strategy.get_positions"], [59, "lumibot.strategies.strategy.Strategy.get_positions"]], "set_parameters() (in module lumibot.strategies.strategy.strategy)": [[54, "lumibot.strategies.strategy.Strategy.set_parameters"], [60, "lumibot.strategies.strategy.Strategy.set_parameters"]], "add_line() (in module lumibot.strategies.strategy.strategy)": [[62, "lumibot.strategies.strategy.Strategy.add_line"], [66, "lumibot.strategies.strategy.Strategy.add_line"]], "add_marker() (in module lumibot.strategies.strategy.strategy)": [[63, "lumibot.strategies.strategy.Strategy.add_marker"], [67, "lumibot.strategies.strategy.Strategy.add_marker"]], "get_lines_df() (in module lumibot.strategies.strategy.strategy)": [[64, "lumibot.strategies.strategy.Strategy.get_lines_df"], [68, "lumibot.strategies.strategy.Strategy.get_lines_df"]], "get_markers_df() (in module lumibot.strategies.strategy.strategy)": [[65, "lumibot.strategies.strategy.Strategy.get_markers_df"], [69, "lumibot.strategies.strategy.Strategy.get_markers_df"]], "cancel_realtime_bars() (in module lumibot.strategies.strategy.strategy)": [[71, "lumibot.strategies.strategy.Strategy.cancel_realtime_bars"]], "get_historical_prices() (in module lumibot.strategies.strategy.strategy)": [[72, "lumibot.strategies.strategy.Strategy.get_historical_prices"]], "get_historical_prices_for_assets() (in module lumibot.strategies.strategy.strategy)": [[73, "lumibot.strategies.strategy.Strategy.get_historical_prices_for_assets"]], "get_last_price() (in module lumibot.strategies.strategy.strategy)": [[74, "lumibot.strategies.strategy.Strategy.get_last_price"]], "get_last_prices() (in module lumibot.strategies.strategy.strategy)": [[75, "lumibot.strategies.strategy.Strategy.get_last_prices"]], "get_next_trading_day() (in module lumibot.strategies.strategy.strategy)": [[76, "lumibot.strategies.strategy.Strategy.get_next_trading_day"], [130, "lumibot.strategies.strategy.Strategy.get_next_trading_day"], [138, "lumibot.strategies.strategy.Strategy.get_next_trading_day"]], "get_quote() (in module lumibot.strategies.strategy.strategy)": [[77, "lumibot.strategies.strategy.Strategy.get_quote"]], "get_realtime_bars() (in module lumibot.strategies.strategy.strategy)": [[78, "lumibot.strategies.strategy.Strategy.get_realtime_bars"]], "get_yesterday_dividend() (in module lumibot.strategies.strategy.strategy)": [[79, "lumibot.strategies.strategy.Strategy.get_yesterday_dividend"]], "get_yesterday_dividends() (in module lumibot.strategies.strategy.strategy)": [[80, "lumibot.strategies.strategy.Strategy.get_yesterday_dividends"]], "start_realtime_bars() (in module lumibot.strategies.strategy.strategy)": [[81, "lumibot.strategies.strategy.Strategy.start_realtime_bars"]], "get_datetime() (in module lumibot.strategies.strategy.strategy)": [[83, "lumibot.strategies.strategy.Strategy.get_datetime"], [92, "lumibot.strategies.strategy.Strategy.get_datetime"]], "get_datetime_range() (in module lumibot.strategies.strategy.strategy)": [[84, "lumibot.strategies.strategy.Strategy.get_datetime_range"], [93, "lumibot.strategies.strategy.Strategy.get_datetime_range"]], "get_last_day() (in module lumibot.strategies.strategy.strategy)": [[85, "lumibot.strategies.strategy.Strategy.get_last_day"], [94, "lumibot.strategies.strategy.Strategy.get_last_day"]], "get_last_minute() (in module lumibot.strategies.strategy.strategy)": [[86, "lumibot.strategies.strategy.Strategy.get_last_minute"], [95, "lumibot.strategies.strategy.Strategy.get_last_minute"]], "get_round_day() (in module lumibot.strategies.strategy.strategy)": [[87, "lumibot.strategies.strategy.Strategy.get_round_day"], [96, "lumibot.strategies.strategy.Strategy.get_round_day"]], "get_round_minute() (in module lumibot.strategies.strategy.strategy)": [[88, "lumibot.strategies.strategy.Strategy.get_round_minute"], [97, "lumibot.strategies.strategy.Strategy.get_round_minute"]], "get_timestamp() (in module lumibot.strategies.strategy.strategy)": [[89, "lumibot.strategies.strategy.Strategy.get_timestamp"], [98, "lumibot.strategies.strategy.Strategy.get_timestamp"]], "localize_datetime() (in module lumibot.strategies.strategy.strategy)": [[90, "lumibot.strategies.strategy.Strategy.localize_datetime"], [99, "lumibot.strategies.strategy.Strategy.localize_datetime"]], "to_default_timezone() (in module lumibot.strategies.strategy.strategy)": [[91, "lumibot.strategies.strategy.Strategy.to_default_timezone"], [100, "lumibot.strategies.strategy.Strategy.to_default_timezone"]], "await_market_to_close() (in module lumibot.strategies.strategy.strategy)": [[102, "lumibot.strategies.strategy.Strategy.await_market_to_close"], [113, "lumibot.strategies.strategy.Strategy.await_market_to_close"]], "await_market_to_open() (in module lumibot.strategies.strategy.strategy)": [[103, "lumibot.strategies.strategy.Strategy.await_market_to_open"], [114, "lumibot.strategies.strategy.Strategy.await_market_to_open"]], "log_message() (in module lumibot.strategies.strategy.strategy)": [[105, "lumibot.strategies.strategy.Strategy.log_message"], [116, "lumibot.strategies.strategy.Strategy.log_message"]], "set_market() (in module lumibot.strategies.strategy.strategy)": [[106, "lumibot.strategies.strategy.Strategy.set_market"], [117, "lumibot.strategies.strategy.Strategy.set_market"]], "sleep() (in module lumibot.strategies.strategy.strategy)": [[107, "lumibot.strategies.strategy.Strategy.sleep"], [118, "lumibot.strategies.strategy.Strategy.sleep"]], "update_parameters() (in module lumibot.strategies.strategy.strategy)": [[108, "lumibot.strategies.strategy.Strategy.update_parameters"], [119, "lumibot.strategies.strategy.Strategy.update_parameters"]], "wait_for_order_execution() (in module lumibot.strategies.strategy.strategy)": [[109, "lumibot.strategies.strategy.Strategy.wait_for_order_execution"], [120, "lumibot.strategies.strategy.Strategy.wait_for_order_execution"]], "wait_for_order_registration() (in module lumibot.strategies.strategy.strategy)": [[110, "lumibot.strategies.strategy.Strategy.wait_for_order_registration"], [121, "lumibot.strategies.strategy.Strategy.wait_for_order_registration"]], "wait_for_orders_execution() (in module lumibot.strategies.strategy.strategy)": [[111, "lumibot.strategies.strategy.Strategy.wait_for_orders_execution"], [122, "lumibot.strategies.strategy.Strategy.wait_for_orders_execution"]], "wait_for_orders_registration() (in module lumibot.strategies.strategy.strategy)": [[112, "lumibot.strategies.strategy.Strategy.wait_for_orders_registration"], [123, "lumibot.strategies.strategy.Strategy.wait_for_orders_registration"]], "get_chain() (in module lumibot.strategies.strategy.strategy)": [[125, "lumibot.strategies.strategy.Strategy.get_chain"], [133, "lumibot.strategies.strategy.Strategy.get_chain"]], "get_chains() (in module lumibot.strategies.strategy.strategy)": [[126, "lumibot.strategies.strategy.Strategy.get_chains"], [134, "lumibot.strategies.strategy.Strategy.get_chains"]], "get_expiration() (in module lumibot.strategies.strategy.strategy)": [[127, "lumibot.strategies.strategy.Strategy.get_expiration"], [135, "lumibot.strategies.strategy.Strategy.get_expiration"]], "get_greeks() (in module lumibot.strategies.strategy.strategy)": [[128, "lumibot.strategies.strategy.Strategy.get_greeks"], [136, "lumibot.strategies.strategy.Strategy.get_greeks"]], "get_multiplier() (in module lumibot.strategies.strategy.strategy)": [[129, "lumibot.strategies.strategy.Strategy.get_multiplier"], [137, "lumibot.strategies.strategy.Strategy.get_multiplier"]], "get_strikes() (in module lumibot.strategies.strategy.strategy)": [[131, "lumibot.strategies.strategy.Strategy.get_strikes"], [140, "lumibot.strategies.strategy.Strategy.get_strikes"]], "options_expiry_to_datetime_date() (in module lumibot.strategies.strategy.strategy)": [[132, "lumibot.strategies.strategy.Strategy.options_expiry_to_datetime_date"], [141, "lumibot.strategies.strategy.Strategy.options_expiry_to_datetime_date"]], "get_option_expiration_after_date() (in module lumibot.strategies.strategy.strategy)": [[139, "lumibot.strategies.strategy.Strategy.get_option_expiration_after_date"]], "cancel_open_orders() (in module lumibot.strategies.strategy.strategy)": [[143, "lumibot.strategies.strategy.Strategy.cancel_open_orders"], [154, "lumibot.strategies.strategy.Strategy.cancel_open_orders"]], "cancel_order() (in module lumibot.strategies.strategy.strategy)": [[144, "lumibot.strategies.strategy.Strategy.cancel_order"], [155, "lumibot.strategies.strategy.Strategy.cancel_order"]], "cancel_orders() (in module lumibot.strategies.strategy.strategy)": [[145, "lumibot.strategies.strategy.Strategy.cancel_orders"], [156, "lumibot.strategies.strategy.Strategy.cancel_orders"]], "create_order() (in module lumibot.strategies.strategy.strategy)": [[146, "lumibot.strategies.strategy.Strategy.create_order"], [157, "lumibot.strategies.strategy.Strategy.create_order"]], "get_asset_potential_total() (in module lumibot.strategies.strategy.strategy)": [[147, "lumibot.strategies.strategy.Strategy.get_asset_potential_total"], [158, "lumibot.strategies.strategy.Strategy.get_asset_potential_total"]], "get_order() (in module lumibot.strategies.strategy.strategy)": [[148, "lumibot.strategies.strategy.Strategy.get_order"], [159, "lumibot.strategies.strategy.Strategy.get_order"]], "get_orders() (in module lumibot.strategies.strategy.strategy)": [[149, "lumibot.strategies.strategy.Strategy.get_orders"], [160, "lumibot.strategies.strategy.Strategy.get_orders"]], "get_selling_order() (in module lumibot.strategies.strategy.strategy)": [[150, "lumibot.strategies.strategy.Strategy.get_selling_order"], [161, "lumibot.strategies.strategy.Strategy.get_selling_order"]], "sell_all() (in module lumibot.strategies.strategy.strategy)": [[151, "lumibot.strategies.strategy.Strategy.sell_all"], [162, "lumibot.strategies.strategy.Strategy.sell_all"]], "submit_order() (in module lumibot.strategies.strategy.strategy)": [[152, "lumibot.strategies.strategy.Strategy.submit_order"], [163, "lumibot.strategies.strategy.Strategy.submit_order"]], "submit_orders() (in module lumibot.strategies.strategy.strategy)": [[153, "lumibot.strategies.strategy.Strategy.submit_orders"], [164, "lumibot.strategies.strategy.Strategy.submit_orders"]], "cash (lumibot.strategies.strategy.strategy property)": [[167, "lumibot.strategies.strategy.Strategy.cash"], [182, "lumibot.strategies.strategy.Strategy.cash"]], "first_iteration (lumibot.strategies.strategy.strategy property)": [[168, "lumibot.strategies.strategy.Strategy.first_iteration"], [183, "lumibot.strategies.strategy.Strategy.first_iteration"]], "initial_budget (lumibot.strategies.strategy.strategy property)": [[169, "lumibot.strategies.strategy.Strategy.initial_budget"], [184, "lumibot.strategies.strategy.Strategy.initial_budget"]], "is_backtesting (lumibot.strategies.strategy.strategy property)": [[170, "lumibot.strategies.strategy.Strategy.is_backtesting"], [185, "lumibot.strategies.strategy.Strategy.is_backtesting"]], "last_on_trading_iteration_datetime (lumibot.strategies.strategy.strategy property)": [[171, "lumibot.strategies.strategy.Strategy.last_on_trading_iteration_datetime"], [186, "lumibot.strategies.strategy.Strategy.last_on_trading_iteration_datetime"]], "minutes_before_closing (lumibot.strategies.strategy.strategy property)": [[172, "lumibot.strategies.strategy.Strategy.minutes_before_closing"], [187, "lumibot.strategies.strategy.Strategy.minutes_before_closing"]], "minutes_before_opening (lumibot.strategies.strategy.strategy property)": [[173, "lumibot.strategies.strategy.Strategy.minutes_before_opening"], [188, "lumibot.strategies.strategy.Strategy.minutes_before_opening"]], "name (lumibot.strategies.strategy.strategy property)": [[174, "lumibot.strategies.strategy.Strategy.name"], [189, "lumibot.strategies.strategy.Strategy.name"]], "portfolio_value (lumibot.strategies.strategy.strategy property)": [[175, "lumibot.strategies.strategy.Strategy.portfolio_value"], [190, "lumibot.strategies.strategy.Strategy.portfolio_value"]], "pytz (lumibot.strategies.strategy.strategy property)": [[176, "lumibot.strategies.strategy.Strategy.pytz"], [181, "lumibot.strategies.strategy.Strategy.pytz"], [191, "lumibot.strategies.strategy.Strategy.pytz"]], "quote_asset (lumibot.strategies.strategy.strategy property)": [[177, "lumibot.strategies.strategy.Strategy.quote_asset"], [192, "lumibot.strategies.strategy.Strategy.quote_asset"]], "sleeptime (lumibot.strategies.strategy.strategy property)": [[178, "lumibot.strategies.strategy.Strategy.sleeptime"], [193, "lumibot.strategies.strategy.Strategy.sleeptime"]], "timezone (lumibot.strategies.strategy.strategy property)": [[179, "lumibot.strategies.strategy.Strategy.timezone"], [194, "lumibot.strategies.strategy.Strategy.timezone"]], "unspent_money (lumibot.strategies.strategy.strategy property)": [[180, "lumibot.strategies.strategy.Strategy.unspent_money"], [195, "lumibot.strategies.strategy.Strategy.unspent_money"]]}}) \ No newline at end of file +Search.setIndex({"docnames": ["backtesting", "backtesting.backtesting_function", "backtesting.how_to_backtest", "backtesting.indicators_files", "backtesting.logs_csv", "backtesting.pandas", "backtesting.polygon", "backtesting.tearsheet_html", "backtesting.thetadata", "backtesting.trades_files", "backtesting.yahoo", "brokers", "brokers.alpaca", "brokers.ccxt", "brokers.interactive_brokers", "brokers.interactive_brokers_legacy", "brokers.tradier", "deployment", "entities", "entities.asset", "entities.bars", "entities.data", "entities.order", "entities.position", "entities.trading_fee", "getting_started", "index", "lifecycle_methods", "lifecycle_methods.after_market_closes", "lifecycle_methods.before_market_closes", "lifecycle_methods.before_market_opens", "lifecycle_methods.before_starting_trading", "lifecycle_methods.initialize", "lifecycle_methods.on_abrupt_closing", "lifecycle_methods.on_bot_crash", "lifecycle_methods.on_canceled_order", "lifecycle_methods.on_filled_order", "lifecycle_methods.on_new_order", "lifecycle_methods.on_parameters_updated", "lifecycle_methods.on_partially_filled_order", "lifecycle_methods.on_trading_iteration", "lifecycle_methods.summary", "lifecycle_methods.trace_stats", "lumibot.backtesting", "lumibot.data_sources", "lumibot.strategies", "lumibot.traders", "strategy_methods", "strategy_methods.account", "strategy_methods.account/lumibot.strategies.strategy.Strategy.get_cash", "strategy_methods.account/lumibot.strategies.strategy.Strategy.get_parameters", "strategy_methods.account/lumibot.strategies.strategy.Strategy.get_portfolio_value", "strategy_methods.account/lumibot.strategies.strategy.Strategy.get_position", "strategy_methods.account/lumibot.strategies.strategy.Strategy.get_positions", "strategy_methods.account/lumibot.strategies.strategy.Strategy.set_parameters", "strategy_methods.account/strategies.strategy.Strategy.get_cash", "strategy_methods.account/strategies.strategy.Strategy.get_parameters", "strategy_methods.account/strategies.strategy.Strategy.get_portfolio_value", "strategy_methods.account/strategies.strategy.Strategy.get_position", "strategy_methods.account/strategies.strategy.Strategy.get_positions", "strategy_methods.account/strategies.strategy.Strategy.set_parameters", "strategy_methods.chart", "strategy_methods.chart/lumibot.strategies.strategy.Strategy.add_line", "strategy_methods.chart/lumibot.strategies.strategy.Strategy.add_marker", "strategy_methods.chart/lumibot.strategies.strategy.Strategy.get_lines_df", "strategy_methods.chart/lumibot.strategies.strategy.Strategy.get_markers_df", "strategy_methods.chart/strategies.strategy.Strategy.add_line", "strategy_methods.chart/strategies.strategy.Strategy.add_marker", "strategy_methods.chart/strategies.strategy.Strategy.get_lines_df", "strategy_methods.chart/strategies.strategy.Strategy.get_markers_df", "strategy_methods.data", "strategy_methods.data/lumibot.strategies.strategy.Strategy.cancel_realtime_bars", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_historical_prices", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_historical_prices_for_assets", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_last_price", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_last_prices", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_next_trading_day", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_quote", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_realtime_bars", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_yesterday_dividend", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_yesterday_dividends", "strategy_methods.data/lumibot.strategies.strategy.Strategy.start_realtime_bars", "strategy_methods.datetime", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_datetime", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_datetime_range", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_last_day", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_last_minute", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_round_day", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_round_minute", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_timestamp", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.localize_datetime", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.to_default_timezone", "strategy_methods.datetime/strategies.strategy.Strategy.get_datetime", "strategy_methods.datetime/strategies.strategy.Strategy.get_datetime_range", "strategy_methods.datetime/strategies.strategy.Strategy.get_last_day", "strategy_methods.datetime/strategies.strategy.Strategy.get_last_minute", "strategy_methods.datetime/strategies.strategy.Strategy.get_round_day", "strategy_methods.datetime/strategies.strategy.Strategy.get_round_minute", "strategy_methods.datetime/strategies.strategy.Strategy.get_timestamp", "strategy_methods.datetime/strategies.strategy.Strategy.localize_datetime", "strategy_methods.datetime/strategies.strategy.Strategy.to_default_timezone", "strategy_methods.misc", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.await_market_to_close", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.await_market_to_open", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.get_parameters", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.log_message", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.set_market", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.sleep", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.update_parameters", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.wait_for_order_execution", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.wait_for_order_registration", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.wait_for_orders_execution", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.wait_for_orders_registration", "strategy_methods.misc/strategies.strategy.Strategy.await_market_to_close", "strategy_methods.misc/strategies.strategy.Strategy.await_market_to_open", "strategy_methods.misc/strategies.strategy.Strategy.get_parameters", "strategy_methods.misc/strategies.strategy.Strategy.log_message", "strategy_methods.misc/strategies.strategy.Strategy.set_market", "strategy_methods.misc/strategies.strategy.Strategy.sleep", "strategy_methods.misc/strategies.strategy.Strategy.update_parameters", "strategy_methods.misc/strategies.strategy.Strategy.wait_for_order_execution", "strategy_methods.misc/strategies.strategy.Strategy.wait_for_order_registration", "strategy_methods.misc/strategies.strategy.Strategy.wait_for_orders_execution", "strategy_methods.misc/strategies.strategy.Strategy.wait_for_orders_registration", "strategy_methods.options", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_chain", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_chains", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_expiration", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_greeks", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_multiplier", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_next_trading_day", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_strikes", "strategy_methods.options/lumibot.strategies.strategy.Strategy.options_expiry_to_datetime_date", "strategy_methods.options/strategies.strategy.Strategy.get_chain", "strategy_methods.options/strategies.strategy.Strategy.get_chains", "strategy_methods.options/strategies.strategy.Strategy.get_expiration", "strategy_methods.options/strategies.strategy.Strategy.get_greeks", "strategy_methods.options/strategies.strategy.Strategy.get_multiplier", "strategy_methods.options/strategies.strategy.Strategy.get_next_trading_day", "strategy_methods.options/strategies.strategy.Strategy.get_option_expiration_after_date", "strategy_methods.options/strategies.strategy.Strategy.get_strikes", "strategy_methods.options/strategies.strategy.Strategy.options_expiry_to_datetime_date", "strategy_methods.orders", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.cancel_open_orders", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.cancel_order", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.cancel_orders", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.create_order", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.get_asset_potential_total", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.get_order", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.get_orders", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.get_selling_order", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.sell_all", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.submit_order", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.submit_orders", "strategy_methods.orders/strategies.strategy.Strategy.cancel_open_orders", "strategy_methods.orders/strategies.strategy.Strategy.cancel_order", "strategy_methods.orders/strategies.strategy.Strategy.cancel_orders", "strategy_methods.orders/strategies.strategy.Strategy.create_order", "strategy_methods.orders/strategies.strategy.Strategy.get_asset_potential_total", "strategy_methods.orders/strategies.strategy.Strategy.get_order", "strategy_methods.orders/strategies.strategy.Strategy.get_orders", "strategy_methods.orders/strategies.strategy.Strategy.get_selling_order", "strategy_methods.orders/strategies.strategy.Strategy.sell_all", "strategy_methods.orders/strategies.strategy.Strategy.submit_order", "strategy_methods.orders/strategies.strategy.Strategy.submit_orders", "strategy_methods.parameters", "strategy_properties", "strategy_properties/lumibot.strategies.strategy.Strategy.cash", "strategy_properties/lumibot.strategies.strategy.Strategy.first_iteration", "strategy_properties/lumibot.strategies.strategy.Strategy.initial_budget", "strategy_properties/lumibot.strategies.strategy.Strategy.is_backtesting", "strategy_properties/lumibot.strategies.strategy.Strategy.last_on_trading_iteration_datetime", "strategy_properties/lumibot.strategies.strategy.Strategy.minutes_before_closing", "strategy_properties/lumibot.strategies.strategy.Strategy.minutes_before_opening", "strategy_properties/lumibot.strategies.strategy.Strategy.name", "strategy_properties/lumibot.strategies.strategy.Strategy.portfolio_value", "strategy_properties/lumibot.strategies.strategy.Strategy.pytz", "strategy_properties/lumibot.strategies.strategy.Strategy.quote_asset", "strategy_properties/lumibot.strategies.strategy.Strategy.sleeptime", "strategy_properties/lumibot.strategies.strategy.Strategy.timezone", "strategy_properties/lumibot.strategies.strategy.Strategy.unspent_money", "strategy_properties/lumibot.strategies.strategy.pytz", "strategy_properties/strategies.strategy.Strategy.cash", "strategy_properties/strategies.strategy.Strategy.first_iteration", "strategy_properties/strategies.strategy.Strategy.initial_budget", "strategy_properties/strategies.strategy.Strategy.is_backtesting", "strategy_properties/strategies.strategy.Strategy.last_on_trading_iteration_datetime", "strategy_properties/strategies.strategy.Strategy.minutes_before_closing", "strategy_properties/strategies.strategy.Strategy.minutes_before_opening", "strategy_properties/strategies.strategy.Strategy.name", "strategy_properties/strategies.strategy.Strategy.portfolio_value", "strategy_properties/strategies.strategy.Strategy.pytz", "strategy_properties/strategies.strategy.Strategy.quote_asset", "strategy_properties/strategies.strategy.Strategy.sleeptime", "strategy_properties/strategies.strategy.Strategy.timezone", "strategy_properties/strategies.strategy.Strategy.unspent_money", "vars"], "filenames": ["backtesting.rst", "backtesting.backtesting_function.rst", "backtesting.how_to_backtest.rst", "backtesting.indicators_files.rst", "backtesting.logs_csv.rst", "backtesting.pandas.rst", "backtesting.polygon.rst", "backtesting.tearsheet_html.rst", "backtesting.thetadata.rst", "backtesting.trades_files.rst", "backtesting.yahoo.rst", "brokers.rst", "brokers.alpaca.rst", "brokers.ccxt.rst", "brokers.interactive_brokers.rst", "brokers.interactive_brokers_legacy.rst", "brokers.tradier.rst", "deployment.rst", "entities.rst", "entities.asset.rst", "entities.bars.rst", "entities.data.rst", "entities.order.rst", "entities.position.rst", "entities.trading_fee.rst", "getting_started.rst", "index.rst", "lifecycle_methods.rst", "lifecycle_methods.after_market_closes.rst", "lifecycle_methods.before_market_closes.rst", "lifecycle_methods.before_market_opens.rst", "lifecycle_methods.before_starting_trading.rst", "lifecycle_methods.initialize.rst", "lifecycle_methods.on_abrupt_closing.rst", "lifecycle_methods.on_bot_crash.rst", "lifecycle_methods.on_canceled_order.rst", "lifecycle_methods.on_filled_order.rst", "lifecycle_methods.on_new_order.rst", "lifecycle_methods.on_parameters_updated.rst", "lifecycle_methods.on_partially_filled_order.rst", "lifecycle_methods.on_trading_iteration.rst", "lifecycle_methods.summary.rst", "lifecycle_methods.trace_stats.rst", "lumibot.backtesting.rst", "lumibot.data_sources.rst", "lumibot.strategies.rst", "lumibot.traders.rst", "strategy_methods.rst", "strategy_methods.account.rst", "strategy_methods.account/lumibot.strategies.strategy.Strategy.get_cash.rst", "strategy_methods.account/lumibot.strategies.strategy.Strategy.get_parameters.rst", "strategy_methods.account/lumibot.strategies.strategy.Strategy.get_portfolio_value.rst", "strategy_methods.account/lumibot.strategies.strategy.Strategy.get_position.rst", "strategy_methods.account/lumibot.strategies.strategy.Strategy.get_positions.rst", "strategy_methods.account/lumibot.strategies.strategy.Strategy.set_parameters.rst", "strategy_methods.account/strategies.strategy.Strategy.get_cash.rst", "strategy_methods.account/strategies.strategy.Strategy.get_parameters.rst", "strategy_methods.account/strategies.strategy.Strategy.get_portfolio_value.rst", "strategy_methods.account/strategies.strategy.Strategy.get_position.rst", "strategy_methods.account/strategies.strategy.Strategy.get_positions.rst", "strategy_methods.account/strategies.strategy.Strategy.set_parameters.rst", "strategy_methods.chart.rst", "strategy_methods.chart/lumibot.strategies.strategy.Strategy.add_line.rst", "strategy_methods.chart/lumibot.strategies.strategy.Strategy.add_marker.rst", "strategy_methods.chart/lumibot.strategies.strategy.Strategy.get_lines_df.rst", "strategy_methods.chart/lumibot.strategies.strategy.Strategy.get_markers_df.rst", "strategy_methods.chart/strategies.strategy.Strategy.add_line.rst", "strategy_methods.chart/strategies.strategy.Strategy.add_marker.rst", "strategy_methods.chart/strategies.strategy.Strategy.get_lines_df.rst", "strategy_methods.chart/strategies.strategy.Strategy.get_markers_df.rst", "strategy_methods.data.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.cancel_realtime_bars.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_historical_prices.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_historical_prices_for_assets.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_last_price.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_last_prices.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_next_trading_day.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_quote.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_realtime_bars.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_yesterday_dividend.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_yesterday_dividends.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.start_realtime_bars.rst", "strategy_methods.datetime.rst", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_datetime.rst", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_datetime_range.rst", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_last_day.rst", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_last_minute.rst", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_round_day.rst", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_round_minute.rst", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_timestamp.rst", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.localize_datetime.rst", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.to_default_timezone.rst", "strategy_methods.datetime/strategies.strategy.Strategy.get_datetime.rst", "strategy_methods.datetime/strategies.strategy.Strategy.get_datetime_range.rst", "strategy_methods.datetime/strategies.strategy.Strategy.get_last_day.rst", "strategy_methods.datetime/strategies.strategy.Strategy.get_last_minute.rst", "strategy_methods.datetime/strategies.strategy.Strategy.get_round_day.rst", "strategy_methods.datetime/strategies.strategy.Strategy.get_round_minute.rst", "strategy_methods.datetime/strategies.strategy.Strategy.get_timestamp.rst", "strategy_methods.datetime/strategies.strategy.Strategy.localize_datetime.rst", "strategy_methods.datetime/strategies.strategy.Strategy.to_default_timezone.rst", "strategy_methods.misc.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.await_market_to_close.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.await_market_to_open.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.get_parameters.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.log_message.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.set_market.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.sleep.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.update_parameters.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.wait_for_order_execution.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.wait_for_order_registration.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.wait_for_orders_execution.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.wait_for_orders_registration.rst", "strategy_methods.misc/strategies.strategy.Strategy.await_market_to_close.rst", "strategy_methods.misc/strategies.strategy.Strategy.await_market_to_open.rst", "strategy_methods.misc/strategies.strategy.Strategy.get_parameters.rst", "strategy_methods.misc/strategies.strategy.Strategy.log_message.rst", "strategy_methods.misc/strategies.strategy.Strategy.set_market.rst", "strategy_methods.misc/strategies.strategy.Strategy.sleep.rst", "strategy_methods.misc/strategies.strategy.Strategy.update_parameters.rst", "strategy_methods.misc/strategies.strategy.Strategy.wait_for_order_execution.rst", "strategy_methods.misc/strategies.strategy.Strategy.wait_for_order_registration.rst", "strategy_methods.misc/strategies.strategy.Strategy.wait_for_orders_execution.rst", "strategy_methods.misc/strategies.strategy.Strategy.wait_for_orders_registration.rst", "strategy_methods.options.rst", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_chain.rst", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_chains.rst", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_expiration.rst", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_greeks.rst", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_multiplier.rst", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_next_trading_day.rst", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_strikes.rst", "strategy_methods.options/lumibot.strategies.strategy.Strategy.options_expiry_to_datetime_date.rst", "strategy_methods.options/strategies.strategy.Strategy.get_chain.rst", "strategy_methods.options/strategies.strategy.Strategy.get_chains.rst", "strategy_methods.options/strategies.strategy.Strategy.get_expiration.rst", "strategy_methods.options/strategies.strategy.Strategy.get_greeks.rst", "strategy_methods.options/strategies.strategy.Strategy.get_multiplier.rst", "strategy_methods.options/strategies.strategy.Strategy.get_next_trading_day.rst", "strategy_methods.options/strategies.strategy.Strategy.get_option_expiration_after_date.rst", "strategy_methods.options/strategies.strategy.Strategy.get_strikes.rst", "strategy_methods.options/strategies.strategy.Strategy.options_expiry_to_datetime_date.rst", "strategy_methods.orders.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.cancel_open_orders.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.cancel_order.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.cancel_orders.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.create_order.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.get_asset_potential_total.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.get_order.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.get_orders.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.get_selling_order.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.sell_all.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.submit_order.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.submit_orders.rst", "strategy_methods.orders/strategies.strategy.Strategy.cancel_open_orders.rst", "strategy_methods.orders/strategies.strategy.Strategy.cancel_order.rst", "strategy_methods.orders/strategies.strategy.Strategy.cancel_orders.rst", "strategy_methods.orders/strategies.strategy.Strategy.create_order.rst", "strategy_methods.orders/strategies.strategy.Strategy.get_asset_potential_total.rst", "strategy_methods.orders/strategies.strategy.Strategy.get_order.rst", "strategy_methods.orders/strategies.strategy.Strategy.get_orders.rst", "strategy_methods.orders/strategies.strategy.Strategy.get_selling_order.rst", "strategy_methods.orders/strategies.strategy.Strategy.sell_all.rst", "strategy_methods.orders/strategies.strategy.Strategy.submit_order.rst", "strategy_methods.orders/strategies.strategy.Strategy.submit_orders.rst", "strategy_methods.parameters.rst", "strategy_properties.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.cash.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.first_iteration.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.initial_budget.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.is_backtesting.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.last_on_trading_iteration_datetime.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.minutes_before_closing.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.minutes_before_opening.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.name.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.portfolio_value.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.pytz.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.quote_asset.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.sleeptime.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.timezone.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.unspent_money.rst", "strategy_properties/lumibot.strategies.strategy.pytz.rst", "strategy_properties/strategies.strategy.Strategy.cash.rst", "strategy_properties/strategies.strategy.Strategy.first_iteration.rst", "strategy_properties/strategies.strategy.Strategy.initial_budget.rst", "strategy_properties/strategies.strategy.Strategy.is_backtesting.rst", "strategy_properties/strategies.strategy.Strategy.last_on_trading_iteration_datetime.rst", "strategy_properties/strategies.strategy.Strategy.minutes_before_closing.rst", "strategy_properties/strategies.strategy.Strategy.minutes_before_opening.rst", "strategy_properties/strategies.strategy.Strategy.name.rst", "strategy_properties/strategies.strategy.Strategy.portfolio_value.rst", "strategy_properties/strategies.strategy.Strategy.pytz.rst", "strategy_properties/strategies.strategy.Strategy.quote_asset.rst", "strategy_properties/strategies.strategy.Strategy.sleeptime.rst", "strategy_properties/strategies.strategy.Strategy.timezone.rst", "strategy_properties/strategies.strategy.Strategy.unspent_money.rst", "vars.rst"], "titles": ["Backtesting", "Backtesting Function", "How To Backtest", "Indicators Files", "Logs CSV", "Pandas (CSV or other data)", "Polygon.io Backtesting", "Tearsheet HTML", "ThetaData Backtesting", "Trades Files", "Yahoo", "Brokers", "Alpaca", "Crypto Brokers (Using CCXT)", "Interactive Brokers", "Interactive Brokers Legacy", "Tradier", "Deployment Guide", "Entities", "Asset", "Bars", "Data", "Order", "Position", "Trading Fee", "What is Lumibot?", "Lumibot: Backtesting and Algorithmic Trading Library", "Lifecycle Methods", "def after_market_closes", "def before_market_closes", "def before_market_opens", "def before_starting_trading", "def initialize", "def on_abrupt_closing", "def on_bot_crash", "def on_canceled_order", "def on_filled_order", "def on_new_order", "def on_parameters_updated", "def on_partially_filled_order", "def on_trading_iteration", "Summary", "def trace_stats", "Backtesting", "Data Sources", "Strategies", "Traders", "Strategy Methods", "Account Management", "self.get_cash", "self.get_parameters", "self.get_portfolio_value", "self.get_position", "self.get_positions", "self.set_parameters", "self.get_cash", "self.get_parameters", "self.get_portfolio_value", "self.get_position", "self.get_positions", "self.set_parameters", "Chart Functions", "self.add_line", "self.add_marker", "self.get_lines_df", "self.get_markers_df", "self.add_line", "self.add_marker", "self.get_lines_df", "self.get_markers_df", "Data", "self.cancel_realtime_bars", "self.get_historical_prices", "self.get_historical_prices_for_assets", "self.get_last_price", "self.get_last_prices", "self.get_next_trading_day", "self.get_quote", "self.get_realtime_bars", "self.get_yesterday_dividend", "self.get_yesterday_dividends", "self.start_realtime_bars", "DateTime", "self.get_datetime", "self.get_datetime_range", "self.get_last_day", "self.get_last_minute", "self.get_round_day", "self.get_round_minute", "self.get_timestamp", "self.localize_datetime", "self.to_default_timezone", "self.get_datetime", "self.get_datetime_range", "self.get_last_day", "self.get_last_minute", "self.get_round_day", "self.get_round_minute", "self.get_timestamp", "self.localize_datetime", "self.to_default_timezone", "Miscellaneous", "self.await_market_to_close", "self.await_market_to_open", "self.get_parameters", "self.log_message", "self.set_market", "self.sleep", "self.update_parameters", "self.wait_for_order_execution", "self.wait_for_order_registration", "self.wait_for_orders_execution", "self.wait_for_orders_registration", "self.await_market_to_close", "self.await_market_to_open", "self.get_parameters", "self.log_message", "self.set_market", "self.sleep", "self.update_parameters", "self.wait_for_order_execution", "self.wait_for_order_registration", "self.wait_for_orders_execution", "self.wait_for_orders_registration", "Options", "self.get_chain", "self.get_chains", "self.get_expiration", "self.get_greeks", "self.get_multiplier", "self.get_next_trading_day", "self.get_strikes", "self.options_expiry_to_datetime_date", "self.get_chain", "self.get_chains", "self.get_expiration", "self.get_greeks", "self.get_multiplier", "self.get_next_trading_day", "self.get_option_expiration_after_date", "self.get_strikes", "self.options_expiry_to_datetime_date", "Order Management", "self.cancel_open_orders", "self.cancel_order", "self.cancel_orders", "self.create_order", "self.get_asset_potential_total", "self.get_order", "self.get_orders", "self.get_selling_order", "self.sell_all", "self.submit_order", "self.submit_orders", "self.cancel_open_orders", "self.cancel_order", "self.cancel_orders", "self.create_order", "self.get_asset_potential_total", "self.get_order", "self.get_orders", "self.get_selling_order", "self.sell_all", "self.submit_order", "self.submit_orders", "Parameters", "Strategy Properties", "self.cash", "self.first_iteration", "self.initial_budget", "self.is_backtesting", "self.last_on_trading_iteration_datetime", "self.minutes_before_closing", "self.minutes_before_opening", "self.name", "self.portfolio_value", "self.pytz", "self.quote_asset", "self.sleeptime", "self.timezone", "self.unspent_money", "self.pytz", "self.cash", "self.first_iteration", "self.initial_budget", "self.is_backtesting", "self.last_on_trading_iteration_datetime", "self.minutes_before_closing", "self.minutes_before_opening", "self.name", "self.portfolio_value", "self.pytz", "self.quote_asset", "self.sleeptime", "self.timezone", "self.unspent_money", "Variable Backup & Restore"], "terms": {"lumibot": [0, 1, 5, 6, 8, 10, 11, 12, 13, 14, 15, 16, 18, 19, 22, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 46, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 62, 63, 64, 65, 66, 67, 68, 69, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165], "ha": [0, 7, 15, 20, 22, 26, 35, 36, 37, 39, 45, 71, 74, 78, 196], "three": [0, 15, 20, 22], "mode": [0, 15, 17, 43, 170, 185], "yahoo": [0, 1, 2, 5, 20, 26, 72, 73, 106, 117], "daili": [0, 2, 5, 7, 10, 31, 72, 73], "stock": [0, 1, 2, 5, 6, 8, 9, 10, 12, 17, 19, 20, 21, 22, 23, 26, 32, 44, 106, 117, 126, 134, 146, 152, 157, 163], "data": [0, 1, 3, 6, 8, 10, 11, 13, 18, 19, 20, 23, 26, 30, 31, 40, 45, 47, 62, 66, 71, 72, 73, 78, 81, 83, 89, 90, 91, 92, 98, 99, 100, 176, 179, 181, 191, 194], "panda": [0, 2, 10, 20, 21, 26, 62, 63, 64, 65, 66, 67, 68, 69, 72, 73, 78, 106, 117], "intra": [0, 5, 10], "dai": [0, 1, 2, 5, 6, 8, 10, 17, 21, 22, 26, 30, 31, 32, 40, 44, 72, 73, 76, 79, 80, 84, 85, 86, 87, 93, 94, 95, 96, 130, 138, 146, 153, 157, 164, 178, 193], "inter": [0, 5], "test": [0, 2, 15, 17], "futur": [0, 5, 12, 14, 17, 19, 20, 26, 43, 44, 74, 146, 147, 152, 157, 158, 163, 180, 195], "us": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 15, 16, 17, 19, 20, 21, 22, 23, 24, 25, 26, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 55, 61, 62, 63, 66, 67, 70, 72, 73, 76, 82, 101, 105, 107, 116, 118, 127, 128, 129, 130, 131, 135, 136, 137, 138, 140, 142, 146, 157, 165, 166, 167, 177, 178, 180, 182, 192, 193, 195, 196], "csv": [0, 2, 3, 9, 21, 26, 44], "suppli": [0, 10, 21], "you": [0, 1, 2, 5, 6, 8, 10, 11, 12, 13, 14, 15, 16, 17, 20, 22, 25, 26, 29, 32, 44, 47, 48, 49, 51, 55, 57, 61, 62, 66, 70, 72, 73, 82, 101, 124, 142, 146, 157, 165, 166, 178, 193], "polygon": [0, 1, 5, 8, 10, 17, 26], "io": [0, 13, 20, 26], "It": [0, 4, 5, 6, 7, 8, 13, 14, 15, 17, 19, 22, 23, 25, 26, 41, 43, 44, 74, 77, 146, 157], "i": [0, 1, 2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 26, 28, 29, 30, 32, 34, 35, 36, 37, 39, 40, 41, 42, 43, 44, 46, 47, 49, 51, 52, 55, 57, 58, 62, 63, 66, 67, 72, 73, 74, 75, 76, 77, 82, 83, 85, 86, 87, 88, 89, 92, 94, 95, 96, 97, 98, 102, 103, 106, 113, 114, 117, 125, 126, 127, 129, 130, 132, 133, 134, 135, 137, 138, 141, 146, 147, 149, 151, 153, 157, 158, 160, 162, 164, 166, 167, 168, 170, 172, 173, 177, 178, 182, 183, 185, 187, 188, 192, 193, 196], "recommend": [0, 15, 17, 25], "option": [0, 2, 6, 8, 9, 12, 14, 16, 17, 19, 20, 22, 26, 32, 36, 39, 41, 43, 44, 47, 72, 74, 125, 126, 127, 128, 129, 131, 132, 133, 134, 135, 136, 137, 139, 140, 141, 146, 152, 157, 163], "crypto": [0, 1, 5, 7, 11, 17, 19, 20, 23, 26, 49, 51, 55, 57, 72, 74, 106, 117, 146, 152, 153, 157, 163, 164, 167, 175, 182, 190], "forex": [0, 2, 5, 6, 8, 12, 17, 19, 26, 44, 73, 74, 146, 152, 153, 157, 163, 164], "an": [0, 1, 2, 5, 6, 7, 8, 12, 13, 14, 15, 16, 17, 19, 22, 23, 26, 34, 35, 36, 39, 40, 41, 43, 44, 52, 58, 72, 74, 75, 81, 102, 103, 105, 113, 114, 116, 126, 127, 131, 132, 134, 135, 140, 141, 144, 146, 147, 148, 152, 155, 157, 158, 159, 163, 165, 178, 193, 196], "advanc": [0, 2, 5, 25, 26, 146, 157], "featur": [0, 2, 6, 8, 26], "allow": [0, 2, 4, 5, 6, 8, 14, 17, 20, 22, 25, 26, 81, 146, 157, 165], "ani": [0, 1, 2, 5, 6, 7, 8, 10, 13, 14, 15, 17, 21, 22, 25, 41, 43, 62, 66, 72, 73, 105, 116, 145, 156, 165], "type": [0, 1, 2, 5, 12, 14, 18, 19, 20, 21, 23, 25, 26, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 42, 43, 44, 46, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 64, 65, 68, 69, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 125, 126, 127, 129, 130, 131, 132, 133, 134, 135, 137, 138, 139, 140, 141, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194], "have": [0, 1, 2, 5, 6, 8, 10, 14, 16, 17, 20, 22, 23, 25, 26, 28, 43, 47, 49, 51, 55, 57, 72, 78], "format": [0, 5, 19, 21, 44, 76, 125, 126, 130, 132, 133, 134, 138, 141], "requir": [0, 1, 2, 10, 13, 14, 15, 17, 19, 22, 74, 75, 146, 153, 157, 164], "more": [0, 2, 3, 11, 13, 14, 16, 17, 18, 20, 25, 26, 43, 44, 47, 70, 72, 101, 124, 128, 136, 142], "work": [0, 2, 5, 11, 15, 17, 25, 26, 72, 73, 77, 166], "setup": [0, 2, 11, 26], "most": [0, 5, 7, 14, 17, 20, 25, 41, 72, 78, 128, 136], "user": [0, 2, 5, 10, 14, 17, 21, 25, 27, 41, 45, 46, 144, 146, 155, 157, 196], "when": [0, 1, 2, 5, 6, 8, 13, 14, 17, 19, 20, 22, 25, 26, 27, 30, 32, 33, 34, 35, 36, 37, 38, 39, 40, 62, 63, 66, 67, 82, 146, 157, 167, 172, 182, 187, 196], "run": [0, 5, 6, 8, 10, 11, 12, 14, 17, 21, 26, 30, 32, 33, 34, 37, 44, 46, 81, 102, 103, 113, 114, 143, 145, 154, 156, 170, 185], "sever": [0, 2, 10, 11, 45, 165], "import": [0, 1, 2, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16, 17, 19, 20, 26, 41, 42, 44, 45, 63, 67, 73, 80, 146, 152, 153, 157, 163, 164, 165], "ar": [0, 1, 2, 3, 5, 7, 8, 10, 11, 12, 13, 14, 15, 17, 18, 19, 20, 21, 22, 23, 25, 26, 38, 41, 44, 45, 47, 48, 53, 59, 61, 62, 63, 66, 67, 70, 73, 78, 81, 82, 101, 106, 117, 124, 125, 126, 128, 133, 134, 136, 142, 143, 146, 147, 149, 151, 153, 154, 157, 158, 160, 162, 164, 165, 167, 182, 196], "each": [0, 1, 2, 3, 5, 7, 9, 13, 14, 20, 22, 26, 30, 32, 40, 41, 44, 45, 47, 53, 59, 72, 80, 126, 134, 149, 151, 160, 162, 196], "prefix": [0, 105, 116], "strategi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 15, 22, 23, 24, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 46, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196], "name": [0, 1, 5, 10, 14, 17, 19, 21, 25, 26, 32, 44, 46, 62, 63, 66, 67, 74, 105, 116, 165, 196], "date": [0, 1, 2, 5, 6, 8, 10, 19, 21, 26, 32, 44, 74, 76, 82, 125, 126, 127, 128, 129, 130, 132, 133, 134, 135, 136, 137, 138, 139, 141, 146, 157], "These": [0, 1, 2, 3, 4, 7, 10, 32, 45, 54, 60, 82], "provid": [0, 2, 4, 5, 6, 8, 9, 17, 20, 21, 44, 74, 75, 131, 140, 144, 145, 155, 156], "detail": [0, 2, 3, 4, 9, 14, 17, 19, 72, 148, 159], "insight": [0, 2], "perform": [0, 2, 3, 7, 17, 26, 41], "behavior": [0, 2], "how": [0, 3, 11, 12, 13, 17, 25, 26, 45, 72, 81, 166], "To": [0, 6, 8, 10, 13, 14, 16, 17, 22, 25, 26, 72], "instal": [0, 5, 10, 13, 15, 17], "choos": [0, 15, 26], "sourc": [0, 5, 8, 13, 20, 83, 89, 90, 91, 92, 98, 99, 100, 176, 179, 181, 191, 194], "tearsheet": [0, 1, 26, 46], "html": [0, 1, 3, 9, 20, 26], "trade": [0, 1, 4, 5, 10, 11, 13, 15, 17, 18, 19, 20, 21, 22, 27, 30, 31, 32, 33, 40, 41, 43, 44, 45, 52, 58, 73, 74, 76, 78, 81, 82, 83, 85, 86, 87, 88, 89, 92, 94, 95, 96, 97, 98, 106, 117, 126, 130, 134, 138, 146, 157, 171, 186, 196], "indic": [0, 1, 5, 13, 46, 52, 53, 58, 59, 62, 63, 64, 65, 66, 67, 68, 69, 72, 73, 153, 164], "conclus": [0, 26], "function": [0, 2, 3, 13, 17, 21, 26, 32, 38, 41, 47, 48, 82, 142], "run_backtest": [0, 1, 2, 5, 6, 8, 10, 25], "other": [0, 2, 6, 8, 10, 13, 14, 15, 17, 20, 22, 25, 26, 41, 62, 66, 77, 101, 146, 157, 167, 182, 196], "In": [0, 6, 8, 13, 17, 22, 43, 74, 75, 83, 85, 86, 87, 88, 89, 92, 94, 95, 96, 97, 98], "summari": [0, 6, 8, 26, 27], "thetadata": [0, 2, 26], "log": [0, 1, 2, 7, 10, 14, 15, 16, 17, 19, 26, 42, 101, 105, 116], "here": [1, 2, 5, 6, 8, 11, 12, 13, 14, 15, 16, 17, 18, 25, 26, 41, 165, 166], "descript": [1, 14, 17], "all": [1, 4, 5, 13, 17, 20, 21, 22, 25, 30, 33, 34, 43, 45, 46, 51, 53, 57, 59, 72, 73, 125, 127, 128, 129, 131, 133, 135, 136, 137, 140, 143, 145, 146, 149, 150, 151, 154, 156, 157, 160, 161, 162, 165, 196], "its": [1, 6, 8, 22, 42], "paramet": [1, 2, 6, 8, 12, 19, 20, 21, 22, 23, 25, 26, 28, 29, 32, 33, 34, 35, 36, 37, 38, 39, 42, 43, 44, 45, 46, 47, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 62, 63, 66, 67, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 84, 87, 88, 90, 91, 93, 96, 97, 99, 100, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 143, 144, 145, 146, 147, 150, 151, 152, 153, 154, 155, 156, 157, 158, 161, 162, 163, 164, 172, 187], "thi": [1, 2, 5, 6, 8, 9, 12, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 25, 26, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 42, 43, 44, 45, 46, 49, 51, 55, 57, 62, 63, 66, 67, 72, 73, 74, 75, 77, 81, 83, 85, 86, 87, 88, 89, 92, 94, 95, 96, 97, 98, 107, 118, 146, 153, 157, 164, 167, 168, 177, 178, 182, 183, 192, 193], "true": [1, 5, 12, 13, 16, 17, 22, 24, 25, 26, 32, 43, 44, 46, 72, 73, 74, 105, 116, 151, 162, 168, 170, 183, 185], "kind": [1, 25], "do": [1, 5, 10, 13, 16, 20, 22, 25, 26, 38, 47, 101, 146, 157], "arg": [1, 21, 44], "minutes_before_clos": [1, 26, 29, 32, 40, 102, 113], "5": [1, 2, 5, 6, 8, 17, 26, 32, 44, 72, 73, 106, 107, 117, 118, 146, 157, 165, 172, 178, 187, 193, 196], "minutes_before_open": [1, 26, 30, 103, 114], "60": [1, 20, 173, 188], "sleeptim": [1, 2, 6, 8, 13, 25, 26, 32, 40, 107, 118], "1": [1, 2, 5, 6, 7, 8, 10, 12, 13, 15, 16, 17, 19, 20, 21, 22, 31, 44, 72, 73, 84, 90, 91, 93, 99, 100, 128, 136, 139, 146, 152, 153, 157, 163, 164, 178, 193, 196], "stats_fil": [1, 32], "none": [1, 12, 13, 17, 19, 20, 21, 22, 23, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 43, 44, 46, 49, 51, 52, 53, 54, 55, 57, 58, 59, 60, 62, 63, 66, 67, 71, 72, 73, 74, 75, 81, 84, 93, 102, 103, 105, 106, 107, 108, 113, 114, 116, 117, 118, 119, 128, 131, 136, 140, 143, 144, 145, 146, 148, 150, 151, 154, 155, 156, 157, 159, 161, 162], "risk_free_r": [1, 44, 128, 136], "logfil": [1, 46], "config": [1, 12, 13, 16, 17, 25, 43], "auto_adjust": [1, 44], "fals": [1, 12, 13, 16, 17, 22, 25, 26, 32, 43, 44, 46, 73, 74, 83, 92, 105, 116, 128, 136, 146, 151, 157, 162], "budget": [1, 5, 10, 17, 25, 32, 169, 184], "benchmark_asset": [1, 2, 6, 8, 25], "spy": [1, 2, 5, 6, 8, 19, 22, 25, 30, 31, 32, 36, 40, 44, 71, 72, 73, 74, 75, 79, 80, 109, 110, 111, 112, 120, 121, 122, 123, 125, 126, 127, 128, 129, 131, 133, 134, 135, 136, 137, 140, 144, 146, 150, 152, 153, 155, 157, 161, 163, 164, 165], "plot_file_html": 1, "trades_fil": 1, "settings_fil": 1, "pandas_data": [1, 5, 25, 43, 44], "quote_asset": [1, 13, 19, 23, 26, 152, 153, 163, 164], "usd": [1, 19, 21, 72, 73, 74, 146, 152, 153, 157, 163, 164], "starting_posit": 1, "show_plot": [1, 46], "tearsheet_fil": 1, "save_tearsheet": [1, 46], "show_tearsheet": [1, 46], "buy_trading_fe": [1, 25], "sell_trading_fe": [1, 25], "api_kei": [1, 12, 25, 26, 43, 44], "polygon_api_kei": [1, 2, 17], "polygon_has_paid_subscript": 1, "indicators_fil": 1, "show_ind": [1, 46], "save_logfil": 1, "kwarg": [1, 12, 19, 21, 43, 44, 153, 164], "datasource_class": 1, "class": [1, 2, 5, 6, 8, 10, 12, 13, 16, 17, 19, 20, 21, 22, 23, 24, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 165, 196], "The": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 12, 13, 14, 15, 17, 19, 20, 21, 22, 23, 27, 28, 34, 35, 36, 37, 38, 39, 41, 43, 44, 45, 49, 50, 51, 54, 55, 56, 57, 60, 62, 63, 64, 65, 66, 67, 68, 69, 72, 73, 75, 76, 77, 78, 79, 80, 81, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 104, 106, 108, 115, 117, 119, 125, 126, 127, 128, 129, 130, 131, 133, 134, 135, 136, 137, 138, 139, 140, 146, 147, 150, 151, 153, 157, 158, 161, 162, 164, 165, 167, 169, 171, 172, 173, 174, 175, 176, 177, 179, 181, 182, 184, 186, 187, 188, 189, 190, 191, 192, 194], "datasourc": [1, 8, 43, 44], "For": [1, 2, 3, 5, 7, 10, 13, 14, 17, 19, 20, 22, 26, 28, 44, 49, 51, 55, 57, 109, 110, 111, 112, 120, 121, 122, 123, 146, 152, 153, 157, 163, 164, 165], "exampl": [1, 2, 6, 8, 11, 12, 15, 19, 20, 25, 26, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 44, 52, 53, 58, 59, 62, 63, 66, 67, 71, 72, 73, 74, 75, 79, 80, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 102, 103, 105, 106, 107, 109, 110, 111, 112, 113, 114, 116, 117, 118, 120, 121, 122, 123, 125, 126, 127, 128, 129, 131, 132, 133, 134, 135, 136, 137, 139, 140, 141, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 196], "want": [1, 2, 5, 8, 10, 12, 13, 16, 17, 25, 26, 41, 44, 62, 66], "financ": [1, 2, 10, 26], "would": [1, 2, 5, 16, 19, 25, 26, 44, 51, 57, 146, 157, 178, 193], "pass": [1, 2, 5, 8, 10, 18, 22, 28, 36, 40, 41, 45, 102, 103, 113, 114, 128, 136, 146, 157], "yahoodatabacktest": [1, 10, 25, 26, 32], "backtesting_start": [1, 2, 5, 6, 8, 10, 25, 26, 32, 43], "datetim": [1, 2, 5, 6, 8, 10, 13, 19, 20, 21, 25, 26, 32, 43, 44, 47, 62, 63, 66, 67, 72, 76, 78, 81, 83, 84, 90, 91, 92, 93, 99, 100, 127, 130, 132, 135, 138, 139, 141, 146, 157, 171, 186], "start": [1, 2, 5, 6, 7, 8, 10, 11, 13, 17, 20, 21, 30, 32, 44, 72, 73, 78, 81, 102, 113, 173, 188], "period": [1, 2, 5, 7, 13, 21, 81, 196], "backtesting_end": [1, 2, 5, 6, 8, 10, 25, 26, 32], "end": [1, 2, 6, 7, 8, 10, 14, 20, 21, 26, 42], "int": [1, 12, 19, 20, 21, 22, 36, 39, 44, 62, 63, 66, 67, 72, 73, 81, 84, 85, 86, 87, 88, 89, 93, 94, 95, 96, 97, 98, 102, 103, 113, 114, 146, 147, 157, 158, 172, 173, 178, 187, 188, 193], "number": [1, 12, 15, 16, 17, 21, 22, 29, 32, 44, 72, 73, 84, 87, 88, 93, 96, 97, 146, 157, 172, 173, 178, 187, 188, 193], "minut": [1, 5, 13, 17, 20, 21, 25, 26, 29, 30, 32, 40, 43, 44, 72, 73, 84, 86, 88, 93, 95, 97, 102, 103, 113, 114, 172, 173, 178, 187, 188, 193], "befor": [1, 2, 5, 7, 10, 13, 14, 15, 17, 20, 22, 25, 26, 29, 30, 31, 32, 40, 41, 42, 44, 72, 73, 102, 103, 113, 114, 151, 162, 172, 173, 187, 188, 196], "close": [1, 5, 12, 13, 20, 21, 22, 28, 29, 32, 33, 40, 43, 51, 57, 72, 74, 75, 78, 81, 102, 103, 113, 114, 151, 162, 172, 187], "method": [1, 6, 8, 15, 19, 20, 22, 23, 26, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 70, 101, 124, 125, 127, 129, 131, 133, 135, 137, 140, 165, 168, 172, 173, 178, 183, 187, 188, 193, 196], "call": [1, 5, 6, 8, 19, 20, 22, 28, 32, 34, 35, 36, 38, 39, 40, 41, 42, 44, 72, 74, 75, 125, 126, 128, 133, 134, 136, 152, 163], "open": [1, 2, 5, 12, 17, 20, 21, 22, 25, 29, 30, 31, 40, 43, 63, 67, 72, 78, 81, 102, 103, 113, 114, 143, 144, 145, 149, 151, 154, 155, 156, 160, 162, 173, 188], "second": [1, 12, 22, 32, 40, 43, 73, 81, 101, 107, 118, 178, 193], "sleep": [1, 2, 26, 40, 47, 101, 102, 113, 178, 193], "between": [1, 2, 13, 20, 21, 26, 32, 72, 178, 193], "iter": [1, 2, 6, 8, 13, 21, 32, 40, 41, 168, 171, 183, 186, 196], "str": [1, 19, 20, 21, 22, 23, 44, 52, 58, 62, 63, 66, 67, 72, 73, 74, 75, 76, 84, 93, 105, 106, 116, 117, 125, 126, 127, 129, 130, 132, 133, 134, 135, 137, 138, 141, 146, 153, 157, 164, 174, 178, 179, 189, 193, 194], "file": [1, 4, 5, 7, 14, 15, 17, 25, 26, 101, 105, 116, 165, 196], "write": [1, 2, 6, 8], "stat": [1, 28, 42], "float": [1, 5, 19, 20, 22, 23, 36, 39, 43, 44, 49, 51, 55, 57, 62, 63, 66, 67, 74, 75, 79, 80, 102, 103, 107, 113, 114, 118, 128, 131, 136, 140, 146, 147, 153, 157, 158, 164, 167, 169, 175, 182, 184, 190], "risk": [1, 7, 14, 25, 128, 136], "free": [1, 2, 6, 8, 17, 23, 26, 128, 136], "rate": [1, 6, 8, 20, 128, 136], "dict": [1, 21, 38, 42, 44, 46, 50, 54, 56, 60, 77, 104, 108, 115, 119, 146, 157], "set": [1, 2, 6, 8, 11, 14, 15, 16, 17, 19, 20, 21, 22, 25, 26, 29, 32, 43, 44, 54, 60, 72, 73, 78, 106, 117, 125, 133, 146, 157, 165, 166, 172, 173, 178, 187, 188, 193, 196], "up": [1, 2, 5, 6, 11, 14, 15, 17, 19, 25, 26, 63, 67, 196], "broker": [1, 5, 12, 16, 19, 20, 22, 23, 24, 25, 26, 32, 35, 36, 37, 39, 45, 72, 73, 74, 77, 81, 109, 110, 111, 112, 120, 121, 122, 123, 128, 136, 146, 152, 153, 157, 163, 164, 167, 182], "live": [1, 2, 12, 14, 15, 17, 20, 25, 43, 44, 82, 83, 85, 86, 87, 88, 89, 92, 94, 95, 96, 97, 98, 106, 117], "bool": [1, 22, 43, 44, 46, 72, 73, 74, 105, 116, 128, 136, 153, 164, 168, 170, 183, 185], "whether": [1, 17, 22, 44, 46, 72, 82, 128, 136, 146, 157], "automat": [1, 6, 8, 22, 146, 147, 157, 158, 196], "adjust": [1, 7, 14, 20, 21, 44], "initi": [1, 2, 6, 8, 13, 15, 25, 26, 27, 41, 106, 117, 165, 169, 172, 173, 178, 184, 187, 188, 193], "asset": [1, 2, 5, 9, 12, 13, 17, 18, 20, 21, 22, 23, 26, 33, 34, 35, 36, 37, 39, 40, 43, 44, 49, 51, 52, 53, 55, 57, 58, 59, 62, 66, 71, 72, 73, 74, 75, 77, 78, 79, 80, 81, 125, 126, 127, 128, 129, 131, 133, 134, 135, 136, 137, 140, 146, 147, 152, 153, 157, 158, 163, 164, 167, 177, 182, 192], "benchmark": [1, 2, 7], "compar": [1, 7, 14, 17], "If": [1, 5, 6, 8, 12, 13, 14, 16, 17, 20, 21, 25, 26, 30, 32, 36, 40, 44, 72, 73, 74, 81, 102, 103, 105, 113, 114, 116, 131, 140, 143, 146, 151, 154, 157, 162], "string": [1, 17, 19, 20, 21, 22, 44, 72, 73, 105, 116, 132, 141, 146, 157, 178, 193, 196], "convert": [1, 19, 20, 22, 26, 43, 44, 132, 141, 146, 157], "object": [1, 5, 10, 12, 18, 19, 20, 21, 22, 23, 24, 35, 36, 37, 39, 43, 44, 46, 52, 53, 58, 59, 71, 72, 73, 74, 75, 77, 78, 79, 80, 81, 109, 110, 111, 112, 120, 121, 122, 123, 126, 131, 134, 140, 144, 145, 146, 147, 148, 149, 152, 153, 155, 156, 157, 158, 159, 160, 163, 164, 176, 181, 191, 196], "plot": [1, 10, 46, 63, 67], "list": [1, 2, 13, 18, 19, 20, 23, 25, 31, 43, 44, 47, 48, 53, 59, 61, 70, 73, 75, 80, 82, 84, 93, 101, 106, 111, 112, 117, 122, 123, 124, 127, 129, 131, 135, 137, 140, 142, 145, 149, 153, 156, 160, 164, 166], "A": [1, 5, 7, 10, 12, 14, 22, 26, 44, 46, 52, 53, 58, 59, 77, 84, 93, 146, 153, 157, 164, 196], "pandasdatabacktest": [1, 5, 25], "contain": [1, 3, 20, 21, 22, 40, 42, 78, 152, 153, 163, 164], "cryptocurr": [1, 2, 6, 8, 13, 17, 20, 72, 73, 74, 75, 146, 157], "get": [1, 2, 5, 6, 8, 10, 11, 12, 13, 14, 17, 18, 20, 21, 22, 30, 31, 33, 38, 43, 44, 45, 47, 48, 49, 50, 51, 52, 53, 55, 56, 57, 58, 59, 61, 70, 72, 73, 75, 77, 79, 80, 82, 104, 115, 124, 147, 148, 149, 150, 158, 159, 160, 161, 165, 166, 167, 172, 173, 175, 178, 182, 187, 188, 190, 193, 196], "valuat": 1, "measur": [1, 7], "overal": [1, 7], "porfolio": 1, "valu": [1, 3, 5, 9, 12, 13, 14, 17, 19, 20, 21, 23, 28, 43, 45, 46, 48, 49, 51, 55, 57, 61, 62, 63, 66, 67, 72, 73, 128, 136, 153, 164, 175, 190, 196], "usual": [1, 47, 178, 193], "usdt": [1, 19, 49, 51, 55, 57, 72, 74, 146, 157], "usdc": 1, "dictionari": [1, 5, 8, 16, 36, 42, 43, 44, 46, 73, 77, 125, 126, 127, 128, 129, 131, 133, 134, 135, 136, 137, 140, 146, 157, 165], "posit": [1, 13, 18, 22, 26, 36, 39, 43, 45, 51, 52, 53, 57, 58, 59, 147, 150, 151, 158, 161, 162, 167, 175, 182, 190], "100": [1, 5, 12, 13, 16, 19, 20, 25, 26, 32, 42, 44, 72, 73, 109, 110, 111, 112, 120, 121, 122, 123, 125, 126, 128, 133, 134, 136, 144, 145, 146, 152, 153, 155, 156, 157, 163, 164], "200": [1, 12, 36, 44, 73, 111, 112, 122, 123, 153, 164], "aapl": [1, 2, 5, 6, 8, 10, 12, 16, 19, 20, 23, 26, 32, 35, 36, 37, 39, 72, 73, 145, 156], "show": [1, 7, 52, 53, 58, 59, 147, 148, 149, 158, 159, 160], "save": [1, 5, 10, 17, 25, 46, 196], "must": [1, 2, 5, 6, 8, 10, 12, 16, 21, 22, 41, 72, 73, 131, 140, 146, 157], "within": [1, 17, 18, 107, 118, 143, 154], "tradingfe": [1, 24, 25, 26], "appli": [1, 17, 44], "bui": [1, 2, 5, 6, 7, 8, 9, 10, 12, 13, 16, 19, 22, 25, 26, 36, 40, 45, 49, 55, 105, 109, 110, 111, 112, 116, 120, 121, 122, 123, 144, 145, 146, 152, 153, 155, 156, 157, 163, 164, 167, 182], "order": [1, 2, 5, 6, 8, 9, 10, 12, 13, 18, 19, 23, 25, 26, 29, 30, 35, 36, 37, 39, 40, 41, 43, 47, 105, 109, 110, 111, 112, 116, 120, 121, 122, 123, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 167, 182], "dure": [1, 2, 4, 7, 17, 45, 73], "sell": [1, 7, 9, 22, 23, 29, 33, 34, 36, 40, 43, 45, 146, 150, 151, 152, 153, 157, 161, 162, 163, 164], "api": [1, 2, 6, 8, 10, 12, 13, 14, 15, 16, 17, 20, 26, 128, 136], "kei": [1, 2, 3, 5, 6, 8, 12, 14, 15, 16, 17, 21, 26, 46, 128, 136, 165, 196], "onli": [1, 5, 10, 13, 14, 15, 17, 19, 20, 21, 22, 23, 25, 26, 32, 41, 43, 44, 46, 72, 73, 74, 77, 81, 128, 136, 143, 153, 154, 164, 172, 187], "polygondatabacktest": [1, 2, 6, 8], "deprec": [1, 15, 146, 157, 180, 195], "pleas": [1, 2, 5, 6, 8, 10, 13, 15, 22, 72, 180, 195], "instead": [1, 5, 17, 20, 43, 107, 118, 128, 136, 180, 195], "paid": [1, 2, 167, 182], "subscript": [1, 11, 26], "default": [1, 5, 10, 17, 19, 20, 21, 32, 34, 44, 45, 54, 60, 62, 63, 66, 67, 72, 73, 74, 76, 91, 100, 106, 117, 125, 127, 128, 129, 130, 133, 135, 136, 137, 138, 146, 151, 153, 157, 162, 164, 172, 173, 176, 178, 179, 181, 187, 188, 191, 193, 194, 196], "return": [1, 7, 12, 19, 20, 21, 22, 23, 25, 26, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 42, 43, 44, 46, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 64, 65, 68, 69, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194], "from": [1, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16, 17, 19, 20, 21, 23, 25, 26, 41, 42, 44, 45, 72, 73, 76, 80, 125, 126, 127, 128, 129, 130, 131, 133, 134, 135, 136, 137, 138, 140, 146, 152, 153, 157, 163, 164, 196], "simpl": [1, 5, 6, 8, 10, 16, 22, 26, 146, 157], "first": [1, 5, 6, 8, 10, 13, 16, 17, 20, 21, 22, 25, 26, 30, 32, 73, 168, 178, 183, 193, 196], "mystrategi": [1, 2, 5, 6, 8, 10, 13, 16, 25, 26, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 45, 165], "def": [1, 2, 5, 6, 8, 10, 12, 13, 16, 25, 26, 27, 41, 106, 117, 165, 172, 173, 178, 187, 188, 193, 196], "on_trading_iter": [1, 2, 5, 6, 8, 10, 13, 16, 25, 26, 27, 28, 41, 42, 47, 102, 103, 113, 114, 165, 168, 172, 178, 183, 187, 193, 196], "self": [1, 2, 5, 6, 8, 10, 12, 13, 14, 16, 17, 19, 20, 22, 25, 26, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 47, 165], "first_iter": [1, 2, 5, 6, 8, 10, 26], "create_ord": [1, 2, 5, 6, 8, 10, 12, 13, 19, 22, 25, 26, 40, 47, 109, 110, 111, 112, 120, 121, 122, 123, 144, 145, 152, 153, 155, 156, 163, 164], "quantiti": [1, 2, 6, 7, 8, 10, 12, 13, 22, 23, 25, 26, 36, 39, 52, 53, 58, 59, 146, 157], "side": [1, 2, 6, 8, 12, 22, 25, 36, 43, 146, 157], "submit_ord": [1, 2, 5, 6, 8, 10, 13, 19, 22, 25, 26, 40, 43, 47, 109, 110, 111, 112, 120, 121, 122, 123, 144, 145, 146, 150, 155, 156, 157, 161], "creat": [1, 2, 5, 6, 7, 8, 10, 13, 14, 16, 17, 19, 21, 22, 36, 72, 125, 127, 129, 131, 133, 135, 137, 140, 142, 144, 145, 146, 155, 156, 157], "2018": [1, 20], "31": [1, 5, 10, 25, 26, 44, 125, 126, 133, 134], "symbol": [1, 2, 5, 6, 8, 12, 13, 19, 20, 21, 22, 23, 25, 36, 44, 63, 67, 72, 73, 74, 146, 152, 153, 157, 163, 164], "qqq": 1, "asset_typ": [1, 5, 13, 19, 20, 44, 72, 73, 74, 146, 147, 152, 153, 157, 158, 163, 164], "vital": 2, "step": [2, 5, 14], "valid": [2, 19, 21, 22, 44, 125, 126, 133, 134, 146, 157], "your": [2, 5, 6, 7, 8, 10, 11, 12, 14, 15, 18, 20, 22, 40, 41, 47, 48, 49, 51, 55, 57, 61, 70, 82, 101, 146, 157, 165, 166, 178, 193, 196], "histor": [2, 6, 8, 12, 13, 20, 26, 43, 44, 70, 72, 73], "With": [2, 6, 8, 26], "can": [2, 5, 6, 8, 10, 11, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 25, 26, 29, 32, 41, 44, 45, 48, 49, 55, 61, 62, 63, 66, 67, 70, 72, 73, 82, 101, 124, 128, 136, 142, 146, 157, 165, 166, 178, 193], "across": [2, 17], "variou": [2, 6, 7, 8, 14], "even": [2, 6, 8, 30, 153, 164], "own": [2, 5, 6, 8, 12, 13, 16, 17, 23, 25, 26, 150, 161], "custom": [2, 25, 32, 146, 157, 165], "guid": [2, 13, 16, 25, 26], "walk": [2, 17], "through": [2, 13, 14, 17], "explain": 2, "introduc": 2, "why": [2, 26], "see": [2, 13, 14, 15, 17, 19, 20, 25, 26, 44, 48, 61, 70, 82, 101, 124, 142], "past": [2, 22, 25], "help": [2, 3, 6, 8, 25], "identifi": [2, 13, 19, 22, 148, 159], "weak": 2, "strength": 2, "deploi": [2, 26], "them": [2, 11, 17, 20, 22, 25, 26, 47, 48, 61, 70, 82, 101, 124, 142, 145, 156], "market": [2, 11, 12, 13, 17, 22, 25, 26, 28, 29, 30, 31, 32, 40, 43, 74, 75, 102, 103, 106, 109, 110, 111, 112, 113, 114, 117, 120, 121, 122, 123, 146, 151, 152, 153, 157, 162, 163, 164, 172, 173, 175, 187, 188, 190], "begin": [2, 43], "make": [2, 4, 5, 6, 8, 17, 22, 25, 26, 74, 75], "sure": [2, 6, 8, 25, 26], "machin": 2, "follow": [2, 5, 6, 8, 13, 14, 15, 17, 19, 20, 22, 26, 27, 30, 41, 78, 165, 178, 193], "command": [2, 25, 26], "pip": [2, 5, 10, 13, 25, 26], "upgrad": [2, 5, 10, 25, 26], "latest": [2, 5, 10, 13, 17, 25, 26, 72], "version": [2, 5, 7, 10, 17, 25, 26], "onc": [2, 14, 15, 16, 17, 22, 25, 26, 32, 41, 146, 157, 196], "id": [2, 15, 17, 148, 159, 196], "like": [2, 5, 17, 21, 25, 26, 29, 30, 31, 32, 33, 43, 165], "visual": [2, 3, 7, 25], "studio": 2, "code": [2, 5, 6, 7, 8, 13, 14, 17, 25, 26, 28, 29, 30, 33, 34, 35, 36, 37, 38, 39, 62, 66, 102, 103, 113, 114, 165], "v": [2, 7, 19], "pycharm": 2, "quick": 2, "download": [2, 5, 6, 8, 25, 26], "offici": 2, "websit": [2, 7, 10, 13, 14, 16, 17], "http": [2, 6, 8, 12, 13, 14, 15, 16, 17, 20, 25, 26], "visualstudio": 2, "com": [2, 7, 15, 16, 17, 25, 26], "python": [2, 5, 25, 105, 116], "extens": 2, "go": [2, 5, 12, 15, 17, 25, 26], "search": [2, 26], "new": [2, 5, 7, 14, 17, 19, 20, 22, 26, 36, 37, 43, 54, 60, 146, 157, 167, 182], "project": [2, 6, 8, 17], "folder": [2, 5, 10, 13, 17], "termin": [2, 13, 25, 26], "re": [2, 11, 14, 17, 26, 82], "readi": [2, 14, 17, 41, 146, 157], "support": [2, 6, 7, 8, 13, 14, 17, 21, 25, 26, 44, 63, 67, 128, 136, 146, 157], "suit": [2, 26], "differ": [2, 3, 5, 7, 11, 13, 14, 17, 20, 25, 26, 45], "need": [2, 6, 8, 13, 14, 16, 17, 25, 27, 41, 43, 72, 73, 77], "": [2, 3, 6, 7, 8, 13, 14, 16, 17, 18, 21, 25, 26, 38, 41, 46, 52, 58, 82, 83, 85, 86, 87, 88, 89, 90, 91, 92, 94, 95, 96, 97, 98, 99, 100, 128, 136, 147, 158, 165, 178, 193, 196], "overview": 2, "avail": [2, 9, 10, 17, 20, 21, 23, 26, 47, 72, 73, 106, 117, 128, 136, 153, 164, 167, 182], "etf": [2, 10], "suitabl": [2, 17], "longer": 2, "term": 2, "ideal": [2, 17], "intradai": 2, "section": [2, 14, 17, 25, 47], "2": [2, 6, 17, 22, 30, 32, 62, 66, 72, 73, 111, 112, 122, 123, 153, 164, 178, 193], "offer": [2, 7, 14, 17, 26], "two": [2, 3, 11, 19, 22, 25, 26, 73, 145, 156], "year": [2, 6, 8], "plan": [2, 14, 17], "faster": [2, 6, 8], "retriev": [2, 19, 21, 74, 75, 78, 196], "coupon": [2, 6, 8], "lumi10": [2, 6], "10": [2, 6, 8, 13, 17, 19, 20, 32, 40, 44, 63, 67, 82, 127, 135, 152, 153, 163, 164, 165, 172, 173, 178, 187, 188, 193, 196], "off": [2, 6, 8], "3": [2, 12, 17, 146, 157], "design": [2, 17, 25, 27, 41], "look": [2, 5, 15, 26], "price": [2, 6, 8, 9, 13, 16, 17, 19, 20, 21, 22, 23, 31, 36, 39, 43, 44, 45, 47, 62, 63, 66, 67, 70, 72, 73, 74, 75, 78, 128, 136, 146, 152, 153, 157, 163, 164], "secur": [2, 5, 10, 14, 19, 22], "account": [2, 6, 8, 11, 12, 13, 15, 16, 17, 26, 43, 47, 49, 51, 53, 55, 57, 59, 61, 150, 161, 167, 182], "usernam": [2, 8, 11, 17, 26], "password": [2, 8, 13, 14, 17, 196], "net": [2, 8, 51, 57], "lumi": [2, 7, 8], "4": [2, 17, 26, 147, 158], "full": [2, 6, 8, 11, 14, 26, 125, 133], "flexibl": [2, 5, 6, 8, 25], "dataset": 2, "e": [2, 9, 17, 19, 20, 21, 22, 23, 25, 72, 73, 74, 146, 147, 152, 157, 158, 163], "g": [2, 9, 17, 20, 21, 22, 23, 25, 72, 73, 146, 157], "databas": [2, 5, 17, 26], "export": 2, "manual": [2, 14, 17], "configur": [2, 11, 15, 26], "ve": [2, 13, 16, 26], "select": [2, 14, 17], "built": [2, 5, 26], "addit": [2, 14, 17, 19, 22, 146, 157], "specif": [2, 7, 13, 14, 17, 19, 22, 41, 44, 62, 66, 109, 120, 125, 126, 133, 134, 146, 157, 166], "replac": [2, 6, 8, 13], "your_polygon_api_kei": [2, 6], "actual": [2, 13, 22, 41, 43, 175, 190], "1d": [2, 6, 8, 20, 21, 40, 44], "get_last_pric": [2, 6, 8, 10, 13, 16, 20, 21, 26, 44, 47], "qty": [2, 6, 8], "portfolio_valu": [2, 6, 8, 10, 13, 26, 28, 42, 177, 192], "__name__": [2, 6, 8, 13], "__main__": [2, 6, 8, 13], "2023": [2, 6, 8, 44, 125, 126, 133, 134, 196], "result": [2, 5, 6, 8, 10, 25, 26, 42], "inform": [2, 3, 5, 9, 10, 13, 17, 43, 44, 77, 78, 126, 131, 134, 140, 146, 157, 166], "about": [2, 9, 11, 26, 166], "refer": [2, 3, 17, 26, 27], "crucial": [2, 17, 25], "understand": [2, 4, 25], "aspect": 2, "execut": [2, 9, 17, 22, 23, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 45, 102, 103, 107, 109, 111, 113, 114, 118, 120, 122, 143, 152, 154, 163, 172, 173, 178, 187, 188, 193], "statist": 2, "analysi": [2, 4, 13, 46], "tear": 2, "sheet": 2, "includ": [2, 3, 7, 9, 10, 13, 17, 19, 20, 26, 32, 41, 44, 54, 60, 72, 124, 146, 148, 157, 159, 175, 190], "equiti": [2, 14, 51, 57], "curv": 2, "metric": [2, 7], "sharp": [2, 7], "ratio": [2, 7], "drawdown": [2, 7], "comparison": 2, "everi": [2, 25, 32, 40, 43, 47, 81, 196], "which": [2, 6, 7, 8, 9, 13, 14, 17, 20, 21, 22, 32, 41, 49, 51, 55, 57, 74, 75, 76, 77, 128, 130, 136, 138, 178, 193], "wa": [2, 12, 13, 27, 30, 33, 34, 41, 43, 72, 167, 182], "timestamp": [2, 12, 20, 44, 62, 63, 66, 67, 85, 86, 87, 88, 89, 94, 95, 96, 97, 98, 196], "essenti": [2, 17], "review": [2, 14], "potenti": [2, 25, 26, 147, 158], "issu": 2, "optim": [2, 7, 17, 26], "interpret": [2, 178, 193], "technic": [2, 13, 41], "move": [2, 7, 22, 26], "averag": [2, 7, 22, 23], "rsi": [2, 13], "respond": 2, "condit": [2, 22, 40], "base": [2, 7, 12, 13, 19, 20, 21, 22, 23, 24, 26, 40, 43, 44, 46, 72, 73, 74, 146, 157], "power": [2, 6, 8, 17, 25, 26], "framework": [2, 41], "multipl": [2, 17, 143, 154, 196], "By": [2, 17, 26, 34, 128, 136, 172, 173, 176, 178, 179, 181, 187, 188, 191, 193, 194], "quickli": [2, 14, 17, 25], "environ": [2, 14, 26, 196], "confid": 2, "further": [2, 17], "individu": [2, 26], "abov": [2, 15, 19, 20, 32], "uniqu": 3, "becaus": [3, 5, 6, 8, 10, 17, 43], "thei": [3, 5, 11, 17, 20, 26, 41, 81, 128, 136], "add_mark": [3, 26, 47], "add": [3, 5, 13, 14, 17, 19, 22, 25, 32, 43, 46, 62, 63, 66, 67], "marker": [3, 46, 63, 65, 67, 69], "add_lin": [3, 26, 47], "line": [3, 26, 46, 62, 63, 64, 66, 67, 68], "influenc": [3, 27, 41], "decis": [3, 4], "point": [3, 7, 9, 15, 22, 44, 62, 66, 72, 73, 147, 158], "time": [3, 5, 6, 8, 9, 12, 13, 14, 17, 20, 21, 25, 32, 41, 43, 44, 45, 71, 72, 73, 78, 81, 82, 87, 88, 96, 97, 102, 103, 107, 113, 114, 118, 128, 136, 146, 157, 168, 178, 183, 193], "event": [4, 26, 33, 34, 35, 36, 37, 38, 39, 43, 63, 67], "action": [4, 17], "taken": 4, "backtest": [4, 5, 7, 10, 17, 21, 22, 24, 32, 44, 46, 63, 67, 72, 73, 74, 75, 82, 83, 85, 86, 87, 88, 89, 92, 94, 95, 96, 97, 98, 106, 117, 170, 185], "debug": [4, 46, 196], "process": [4, 6, 8, 14, 17, 25, 37, 39, 152, 153, 163, 164, 196], "collect": [4, 5], "comprehens": [4, 25], "view": [4, 17], "refin": [4, 25], "note": [5, 10, 13, 14, 15, 17, 20, 22, 43, 77, 146, 157], "ensur": [5, 10, 14, 17, 21, 22, 25, 26, 146, 157], "proceed": [5, 10, 14, 25], "been": [5, 10, 15, 22, 23, 35, 36, 37, 39, 43, 74, 78], "some": [5, 10, 14, 25, 26, 44, 45, 74, 146, 157], "major": [5, 10], "chang": [5, 10, 12, 14, 16, 17, 20, 32], "modul": [5, 10, 26], "situat": 5, "much": [5, 6, 8, 12], "easier": [5, 17], "intend": [5, 17], "who": [5, 17, 52, 58, 147, 158], "after": [5, 6, 8, 13, 14, 17, 21, 26, 28, 30, 31, 40, 42, 44, 63, 67, 72, 76, 130, 138, 139, 196], "librari": [5, 7, 13, 16, 17, 25], "strictli": [5, 21], "parquet": 5, "etc": [5, 16, 20, 21, 40, 45, 48, 61, 63, 67, 77, 148, 159], "wish": [5, 26], "accept": [5, 19], "one": [5, 7, 13, 14, 17, 22, 25, 26, 41, 43, 47, 72, 109, 120, 146, 153, 157, 164], "frame": 5, "raw": [5, 20, 22], "addition": [5, 10, 20], "possibl": [5, 14, 32, 44, 62, 63, 66, 67, 153, 164], "contract": [5, 19, 20, 22, 32, 43], "also": [5, 10, 15, 17, 22, 25, 26, 32, 43, 72, 146, 151, 157, 162, 166], "difficult": 5, "backtestingbrok": [5, 6, 8, 10, 43], "next": [5, 6, 8, 12, 17, 26, 40, 76, 130, 138, 139], "normal": [5, 16, 131, 140], "someth": [5, 13], "0000": 5, "hr": [5, 21], "2359": [5, 21], "last": [5, 13, 20, 21, 22, 28, 30, 31, 42, 43, 44, 72, 73, 74, 75, 85, 86, 94, 95, 171, 186, 196], "consid": [5, 20, 177, 192], "zone": [5, 20], "unless": 5, "america": [5, 20, 44, 176, 179, 181, 191, 194], "york": [5, 17], "aka": 5, "est": 5, "receiv": [5, 14, 17], "index": [5, 19, 20, 21, 26, 78], "datetime64": [5, 21], "column": [5, 20, 21, 78, 196], "high": [5, 20, 21, 25, 26, 43, 78, 81], "low": [5, 17, 20, 21, 43, 78, 81], "volum": [5, 20, 21, 78, 81], "should": [5, 10, 14, 16, 20, 22, 27, 40, 43, 45, 74, 107, 118, 128, 136], "2020": [5, 10, 25, 26, 72, 90, 91, 99, 100, 147, 152, 158, 163], "01": [5, 6, 8, 20, 25, 146, 147, 152, 157, 158, 163], "02": [5, 20], "09": 5, "00": [5, 44, 110, 121, 146, 152, 153, 157, 163, 164, 196], "3237": 5, "3234": 5, "75": 5, "3235": 5, "25": [5, 17], "16808": 5, "32": 5, "10439": 5, "33": 5, "50": [5, 22, 32, 146, 157, 178, 193], "3233": 5, "8203": 5, "04": [5, 44], "22": 5, "15": [5, 17, 20, 32, 44, 72, 73], "56": 5, "2800": 5, "2796": 5, "8272": 5, "57": 5, "2794": 5, "7440": 5, "58": 5, "2793": 5, "7569": 5, "yfinanc": [5, 44], "yf": [5, 44], "5d": 5, "interv": 5, "1m": [5, 21, 44], "to_csv": 5, "subsequ": [5, 6, 8], "ad": [5, 11, 13, 17, 19, 26, 72, 73], "One": [5, 17, 19, 22, 44, 146, 157], "load": [5, 18, 21, 63, 67, 196], "mai": [5, 13, 14, 17, 19, 22, 25, 72, 73, 81, 146, 157], "might": [5, 13, 14, 17], "entiti": [5, 13, 19, 20, 21, 22, 23, 24, 25, 26, 72, 73, 80, 146, 152, 153, 157, 163, 164], "assettyp": [5, 13, 19, 146, 152, 153, 157, 163, 164], "pd": [5, 20], "awar": [5, 20], "df": [5, 13, 20, 21, 30, 72, 73], "read_csv": 5, "third": 5, "we": [5, 6, 7, 8, 10, 11, 13, 17, 25, 26, 28, 47, 72, 146, 157], "least": [5, 41], "timestep": [5, 21, 43, 44, 72, 73, 84, 93], "either": [5, 19, 21, 22, 72, 73, 74, 75], "final": [5, 6, 8, 10, 14, 26], "trader": [5, 6, 8, 10, 12, 13, 14, 15, 16, 26, 33], "data_sourc": [5, 12, 43, 44, 72, 73], "datetime_start": [5, 43], "datetime_end": [5, 43], "strat": 5, "100000": 5, "add_strategi": [5, 12, 13, 14, 15, 16, 25, 26, 46], "run_al": [5, 13, 14, 15, 16, 25, 26, 46], "put": [5, 12, 16, 19, 25], "togeth": [5, 22, 25], "Then": [5, 13, 16, 72], "startegi": 5, "read": [5, 15, 25, 44], "same": [5, 14, 17, 22, 26, 73], "directori": [5, 14, 17], "script": 5, "pick": [5, 10, 17, 26], "rang": [5, 13, 17, 20, 21], "link": [6, 8, 14], "give": [6, 8, 13, 131, 140], "u": [6, 7, 8, 13, 14, 21, 26, 175, 190], "credit": [6, 8, 153, 164], "sale": [6, 8], "utm_sourc": 6, "affili": 6, "utm_campaign": 6, "robust": [6, 8], "fetch": [6, 8, 44, 126, 131, 134, 140], "simplifi": [6, 8], "simpli": [6, 8], "polygondatasourc": 6, "get_historical_pric": [6, 8, 13, 20, 26, 31, 44, 47, 73], "As": [6, 8, 17], "pai": [6, 8, 14], "mani": [6, 8, 13, 26, 32, 41, 81], "won": [6, 8], "t": [6, 8, 13, 14, 17, 26], "limit": [6, 8, 13, 14, 17, 22, 43, 72, 73, 81, 110, 121, 146, 152, 153, 157, 163, 164], "cach": [6, 8], "comput": [6, 8, 17, 25, 26], "so": [6, 8, 10, 13, 14, 17, 19, 22, 25, 26, 47, 82, 128, 136], "take": [6, 8, 17, 22, 25, 41, 44, 62, 63, 66, 67, 73, 74, 75, 125, 133], "bit": [6, 8], "obtain": [6, 8, 13, 44, 126, 127, 129, 131, 134, 135, 137, 140], "dashboard": [6, 8, 25], "necessari": [6, 8, 17, 43], "inherit": [6, 8, 45], "defin": [6, 7, 8, 13, 24, 27, 32, 41, 42, 43, 45, 165, 196], "hold": [6, 8, 20, 22, 23, 26, 36], "until": [6, 8, 12, 20, 102, 103, 113, 114, 146, 157], "determin": [6, 7, 8, 12, 22, 43, 106, 117, 146, 157, 166], "05": [6, 8, 146, 157, 196], "form": [6, 21, 81, 106, 117, 127, 129, 135, 137, 167, 182], "tool": [6, 8, 17, 26], "capabl": [6, 8], "easi": [6, 8, 14, 17, 25, 26], "integr": [6, 8], "versatil": [6, 8, 13, 17], "choic": [6, 8, 14, 17], "gener": [7, 10, 13, 16, 26, 151, 162], "quantstat": 7, "varieti": 7, "annual": [7, 25, 26], "yearli": 7, "total": [7, 20, 28, 51, 57, 147, 158, 175, 190], "romad": 7, "over": [7, 19, 20, 25, 26, 62, 63, 66, 67], "maximum": [7, 17], "sortino": 7, "variat": 7, "differenti": 7, "harm": 7, "volatil": [7, 22, 128, 136], "max": [7, 13], "observ": 7, "loss": [7, 22, 43, 62, 63, 66, 67, 146, 152, 153, 157, 163, 164], "peak": 7, "trough": 7, "portfolio": [7, 9, 13, 23, 28, 51, 57, 63, 67, 175, 190], "attain": [7, 146, 157], "longest": 7, "durat": [7, 32, 146, 153, 157, 164, 178, 193], "reach": [7, 25, 26, 43], "accompani": 7, "graph": [7, 62, 63, 66, 67], "cumul": 7, "scale": [7, 196], "better": [7, 22, 146, 157], "exponenti": 7, "growth": 7, "showcas": 7, "tailor": 7, "achiev": [7, 22, 25, 26], "goal": 7, "condor": [7, 17], "martingal": 7, "iron": 7, "delta": [7, 128, 136], "previou": [7, 79, 80], "dte": 7, "expir": [7, 14, 19, 22, 32, 44, 72, 74, 125, 126, 127, 128, 133, 134, 135, 136, 139, 146, 157], "bband": 7, "v2": 7, "bolling": [7, 62, 66], "band": [7, 62, 66], "interest": [7, 13, 128, 136], "implement": [7, 17, 26, 27, 41, 44, 46], "visit": [7, 16, 17, 25, 26], "our": [7, 13, 17, 25, 26, 28], "lumiwealth": [7, 15, 26], "access": [7, 14, 16, 17, 20, 25, 26, 165, 196], "invest": [7, 14, 26], "question": 7, "email": [7, 14], "www": [8, 16], "thetadatabacktest": 8, "altern": 8, "both": [8, 14, 22, 25, 30, 146, 157], "argument": [8, 128, 136], "thetadata_usernam": 8, "thetadata_password": 8, "were": [9, 26, 38], "place": [9, 13, 18, 146, 151, 157, 162], "along": 9, "involv": 9, "strike": [9, 19, 44, 72, 126, 128, 131, 134, 136, 140, 146, 157], "ticker": [9, 19, 20, 32, 44, 81], "cash": [9, 13, 22, 26, 28, 42, 43, 48, 49, 51, 55, 57, 61, 175, 177, 180, 190, 192, 195], "amount": [9, 13, 20, 22, 28, 44, 49, 51, 55, 57, 79, 80, 146, 157], "cannot": 10, "veri": [10, 17, 26], "easili": [10, 26, 32, 45], "modifi": [10, 25, 26], "anyth": 10, "There": [10, 11, 146, 157], "aapl_pric": [10, 26], "alloc": 10, "11": [10, 17, 19, 26], "12": [10, 17, 19, 25, 26, 74], "speak": [11, 41], "learn": [11, 17, 25, 26], "alpaca": [11, 20, 26, 72, 73], "document": [11, 13, 14, 17, 25, 26, 72], "interact": [11, 13, 20, 22, 26, 45, 72, 73, 74, 81], "factor": [11, 26], "authent": [11, 26], "2fa": [11, 26], "secondari": [11, 26], "paper": [11, 12, 15, 16, 17, 26, 44], "legaci": [11, 26], "ccxt": [11, 26], "tradier": [11, 26, 77, 153, 164], "max_work": [12, 43, 44, 73], "20": [12, 13, 22, 32, 43, 165], "chunk_siz": [12, 44, 73], "connect_stream": [12, 43], "connect": [12, 13, 14, 17, 105, 116], "tradeapi": 12, "rest": [12, 14, 17, 41], "get_timestamp": [12, 26, 44, 47], "current": [12, 13, 14, 17, 21, 36, 37, 42, 43, 44, 49, 51, 52, 55, 57, 58, 62, 63, 66, 67, 72, 73, 77, 78, 82, 83, 84, 85, 86, 87, 88, 89, 92, 93, 94, 95, 96, 97, 98, 128, 136, 143, 149, 153, 154, 160, 164, 167, 175, 178, 182, 190, 193, 196], "unix": 12, "represent": [12, 21, 22, 44, 72, 73], "is_market_open": [12, 43], "get_time_to_open": [12, 43], "remain": [12, 39, 43, 172, 187], "get_time_to_clos": [12, 43], "alpaca_config": [12, 25, 26], "your_api_kei": [12, 13], "secret": [12, 13, 14, 16, 25, 26], "api_secret": [12, 25, 26], "your_api_secret": 12, "endpoint": 12, "print": [12, 42, 196], "alpacastrategi": 12, "on_trading_inter": [12, 32], "order_typ": [12, 153, 164], "asset_type_map": 12, "us_equ": 12, "cancel_ord": [12, 26, 43, 47, 149, 160], "cancel": [12, 22, 30, 35, 43, 71, 109, 111, 120, 122, 142, 143, 144, 145, 146, 149, 151, 154, 155, 156, 157, 160, 162], "get_historical_account_valu": [12, 43], "1400": 12, "1600": 12, "7": [12, 13, 17, 26, 32, 106, 117], "0830": 12, "0930": 12, "600": 12, "sampl": [12, 26], "1612172730": 12, "000234": 12, "boolean": [12, 151, 153, 162, 164], "map_asset_typ": 12, "orderdata": 12, "to_request_field": 12, "cryoptocurr": 13, "popular": 13, "find": [13, 14, 15, 16, 17, 26, 44, 76, 127, 129, 130, 131, 135, 137, 138, 139, 140], "readthedoc": 13, "en": 13, "enabl": [13, 14, 15], "wide": [13, 17, 63, 67], "coinbas": [13, 26], "pro": 13, "binanc": [13, 26], "kraken": [13, 26, 146, 157], "kucoin": [13, 26], "constantli": [13, 26], "don": [13, 14, 17, 26], "let": 13, "know": [13, 18], "ll": [13, 14, 16, 26], "desir": [13, 14, 21, 81, 128, 136], "credenti": [13, 14, 15], "rememb": [13, 26], "under": [13, 14, 17, 25], "similar": [13, 17, 30], "alwai": [13, 30, 43, 106, 117, 167, 182], "24": [13, 17, 32, 106, 117], "set_market": [13, 26, 32, 47], "few": [13, 17, 26, 101], "common": [13, 14], "coinbase_config": 13, "exchange_id": 13, "apikei": 13, "your_secret_kei": 13, "sandbox": [13, 17], "kraken_config": 13, "margin": [13, 146, 157], "kucoin_config": 13, "your_passphras": 13, "NOT": 13, "your_secret": 13, "coinbasepro_config": 13, "coinbasepro": 13, "instanti": [13, 16, 26, 43], "chosen": [13, 16, 17], "correct": [13, 14, 16], "instanc": [13, 196], "strategy_executor": [13, 16], "complet": [13, 14, 15, 17, 22, 26, 74, 75], "demonstr": 13, "pandas_ta": 13, "error": [13, 17, 22, 34], "importantfunct": 13, "30": [13, 40, 72, 73, 81, 196], "sinc": 13, "those": [13, 17, 166], "hour": [13, 20, 21, 32, 40, 44, 72, 73, 106, 117, 178, 193], "quot": [13, 19, 20, 21, 22, 44, 49, 51, 55, 57, 72, 73, 74, 75, 77, 146, 152, 153, 157, 163, 164, 175, 177, 190, 192], "transact": [13, 22, 167, 182], "btc": [13, 19, 20, 72, 73, 74, 146, 152, 153, 157, 163, 164], "0": [13, 15, 17, 19, 21, 22, 23, 24, 25, 32, 42, 43, 44, 87, 88, 96, 97, 146, 152, 153, 157, 163, 164, 173, 188, 196], "mkt_order": 13, "000": [13, 25, 26], "lmt_order": 13, "limit_pric": [13, 22, 43, 110, 121, 146, 152, 153, 157, 163, 164], "10000": [13, 25], "pair": [13, 20, 22, 44, 74, 75, 125, 126, 133, 134, 146, 157], "bar": [13, 18, 21, 26, 43, 44, 63, 67, 71, 72, 73, 74, 75, 78, 81, 83, 85, 86, 87, 88, 89, 92, 94, 95, 96, 97, 98, 128, 136], "max_pric": 13, "log_messag": [13, 16, 20, 26, 28, 30, 33, 34, 35, 36, 37, 38, 39, 40, 42, 47, 52, 53, 58, 59, 72, 73, 74, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 132, 141, 147, 148, 149, 158, 159, 160, 167, 168, 169, 170, 171, 172, 174, 175, 176, 177, 179, 181, 182, 183, 184, 185, 186, 187, 189, 190, 191, 192, 194], "f": [13, 16, 28, 35, 36, 38, 39, 42, 72, 74, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 132, 141, 169, 171, 174, 176, 177, 179, 181, 184, 186, 189, 191, 192, 194, 196], "calcul": [13, 20, 22, 43, 44, 128, 136], "ta": 13, "length": [13, 21, 43, 44, 72, 73, 78, 84, 93], "current_rsi": 13, "iloc": [13, 72], "macd": 13, "current_macd": 13, "55": 13, "ema": 13, "current_ema": 13, "get_posit": [13, 23, 26, 47, 150, 161], "share": [13, 16, 20, 22, 29, 31, 36, 39, 44, 146, 157, 175, 190], "asset_to_get": 13, "outstand": 13, "get_ord": [13, 26, 47], "whatev": 13, "last_pric": [13, 74, 75, 196], "color": [13, 62, 63, 66, 67, 105, 116], "green": [13, 62, 63, 66, 67, 105, 116], "dt": [13, 21, 44, 62, 63, 66, 67, 90, 91, 99, 100, 139], "get_datetim": [13, 26, 43, 44, 47], "check": [13, 17, 22, 26, 40, 43, 47, 72, 148, 149, 159, 160, 168, 170, 183, 185], "certain": [13, 63, 67], "eg": [13, 17, 19, 20, 25, 44, 47, 49, 51, 55, 57, 62, 63, 66, 67, 70, 77, 82, 105, 116, 125, 126, 133, 134, 146, 157, 178, 193], "9": [13, 17, 32], "30am": 13, "entir": 13, "example_strategi": [13, 25, 26], "github": [13, 15, 17, 20, 25, 26], "repositori": [13, 17], "brokerag": [14, 17], "firm": 14, "oper": [14, 17, 32, 41], "countri": 14, "around": [14, 17, 18], "world": [14, 17], "great": [14, 17], "especi": [14, 82, 196], "platform": [14, 26], "fee": [14, 17, 18, 26], "structur": [14, 26], "best": [14, 17], "deal": [14, 26], "real": [14, 16, 17, 25, 71, 78, 81], "subscrib": 14, "appropri": [14, 20], "packag": [14, 26], "depend": [14, 17, 72, 73], "exchang": [14, 21, 22, 44, 72, 73, 74, 75, 76, 83, 85, 86, 87, 88, 89, 92, 94, 95, 96, 97, 98, 125, 126, 127, 129, 130, 131, 133, 134, 135, 137, 138, 140, 146, 157], "snapshot": [14, 42], "bundl": 14, "On": [14, 17], "stream": [14, 71, 78, 81], "nasdaq": [14, 32, 106, 117], "network": 14, "c": 14, "utp": 14, "totalview": 14, "nyse": [14, 32, 76, 106, 117, 130, 138], "cta": 14, "openbook": 14, "ultra": 14, "opra": 14, "top": [14, 17, 26], "relat": [14, 17, 36], "suffic": 14, "login": 14, "ibkr": 14, "client": [14, 15, 17], "portal": 14, "navig": [14, 15, 17], "menu": [14, 26], "click": [14, 17], "prompt": 14, "incur": 14, "cost": [14, 17, 43], "associ": 14, "notif": [14, 17], "ib": [14, 19, 132, 141], "mobil": 14, "app": 14, "approv": 14, "interrupt": [14, 33, 196], "autom": [14, 17], "handl": 14, "solut": 14, "fulli": 14, "doesn": 14, "approach": 14, "conveni": 14, "primari": [14, 196], "maintain": [14, 17], "without": [14, 17, 25, 131, 140], "separ": [14, 17], "control": [14, 178, 193], "twice": 14, "enhanc": [14, 25], "complex": [14, 25], "restrict": 14, "ip": [14, 15, 17], "address": [14, 17], "tw": [14, 17, 20], "ibgatewai": 14, "permiss": [14, 19], "what": [14, 26, 47, 82, 177, 192], "keep": [14, 17, 22, 23, 81, 146, 157], "below": [14, 45, 47, 48, 61, 70, 74, 82, 101, 124, 142], "instruct": [14, 17, 146, 152, 153, 157, 163, 164], "given": [14, 20, 21, 43, 44, 52, 58, 71, 72, 73, 76, 84, 93, 125, 127, 129, 130, 131, 133, 135, 137, 138, 139, 140, 143, 148, 154, 159], "attempt": [14, 175, 190], "while": [14, 17], "disconnect": 14, "caus": 14, "loop": [14, 31, 40, 103, 114, 172, 187], "stop": [14, 22, 25, 32, 33, 40, 43, 62, 63, 66, 67, 102, 103, 113, 114, 146, 152, 153, 157, 163, 164, 172, 187, 196], "tediou": 14, "upper": 14, "right": [14, 17, 19, 28, 63, 67, 72, 152, 163], "corner": [14, 17], "scroll": [14, 17], "down": [14, 17, 25, 33, 63, 67], "plu": [14, 105, 116, 175, 190], "sign": 14, "button": [14, 17], "header": 14, "fill": [14, 17, 21, 22, 23, 36, 39, 43, 146, 157, 167, 182], "out": [14, 26, 43, 47, 52, 58, 74], "field": [14, 20, 22], "page": [14, 16, 17, 26], "At": [14, 25], "confirm": [14, 17], "activ": [14, 17, 22, 26, 74, 75, 78, 152, 153, 163, 164], "back": [14, 196], "enter": [14, 17, 19, 22, 31, 146, 157, 178, 193], "via": 14, "act": 14, "promptli": 14, "ask": [14, 77], "proof": 14, "author": 14, "upload": 14, "request": 14, "eula": 14, "signatur": 14, "block": 14, "submit": [14, 22, 37, 43, 47, 142, 146, 152, 153, 157, 163, 164], "practic": 14, "monei": [14, 16, 17, 25, 49, 51, 55, 57, 167, 182], "avoid": 14, "conflict": [14, 196], "variabl": [14, 26, 31, 42, 166], "env": [14, 17, 196], "ib_usernam": [14, 17], "user123": [14, 17], "ib_password": [14, 17], "password123": [14, 17], "account_id": [14, 17], "subaccount": [14, 17], "u17369206": [14, 17], "ib_api_url": [14, 17], "url": [14, 17], "host": [14, 17], "localhost": [14, 17, 196], "8000": [14, 17], "strangl": [14, 15], "tutori": [15, 26], "workstat": 15, "global": [15, 17, 20, 45], "activex": 15, "socket": [15, 17], "disabl": 15, "port": [15, 17], "7496": 15, "7497": [15, 17], "highli": [15, 26], "thoroughli": 15, "algorithm": [15, 17, 25], "master": 15, "999": 15, "py": [15, 17, 25, 26], "interactive_brokers_config": 15, "socket_port": 15, "client_id": 15, "digit": 15, "127": [15, 17], "entri": [15, 22], "except": [15, 20, 25, 26, 34], "interactivebrok": [15, 20], "interactive_brok": 15, "simple_start_ib": 15, "bot": [15, 17, 25, 32, 34, 45, 196], "blob": [15, 25, 26], "getting_start": 15, "dash": [16, 62, 66], "tradier_config": 16, "access_token": 16, "qtrz3zurd9244ahuw2aoyapgvyra": 16, "account_numb": 16, "va22904793": 16, "your_access_token": 16, "your_account_numb": 16, "That": 16, "now": [16, 25, 44, 74], "abl": 16, "less": [16, 146, 147, 157, 158], "than": [16, 17, 44, 82, 146, 147, 157, 158], "cover": [17, 26], "topic": 17, "decid": [17, 72], "correctli": 17, "applic": [17, 106, 117], "success": 17, "skip": [17, 30], "repl": 17, "eas": 17, "afford": 17, "expens": [17, 128, 136], "browser": [17, 25, 46], "edit": 17, "directli": [17, 43], "tip": 17, "howev": [17, 22, 30, 32, 146, 157], "excel": 17, "develop": [17, 26], "month": [17, 85, 94], "fit": [17, 101], "scalabl": [17, 196], "figur": 17, "blueprint": 17, "worker": 17, "background": 17, "butterfli": 17, "afa": 17, "starter": 17, "itself": 17, "left": [17, 63, 67], "sidebar": 17, "delet": 17, "unnecessari": 17, "trashcan": 17, "mandatori": [17, 19, 45, 146, 157], "ones": [17, 41], "restart": [17, 40], "servic": [17, 105, 116], "commit": 17, "redeploi": 17, "tab": 17, "6": [17, 19, 26], "monitor": 17, "expect": [17, 25, 26, 128, 136], "regularli": 17, "profit": [17, 22, 25, 26, 43, 62, 63, 66, 67], "8": [17, 26], "bottom": 17, "press": 17, "consol": [17, 105, 116], "everyth": [17, 26], "part": [17, 22, 41, 153, 164, 165], "locat": 17, "reserv": 17, "vm": 17, "13": [17, 127, 135], "downgrad": 17, "vcpu": 17, "effect": 17, "reduc": 17, "todai": [17, 74, 82], "wait": [17, 22, 39, 109, 110, 111, 112, 120, 121, 122, 123], "messag": [17, 101, 105, 116], "14": [17, 196], "16": [17, 74], "17": [17, 19, 32], "proper": 17, "discord": [17, 26], "webhook": 17, "live_config": 17, "correspond": [17, 35, 36, 37], "soon": 17, "incred": 17, "commiss": 17, "lot": [17, 166], "engag": 17, "tradier_access_token": 17, "token": 17, "qtrz3zurl9244ahuw4aoyapgvyra": 17, "tradier_account_numb": 17, "va12204793": 17, "tradier_is_pap": 17, "align": 17, "perfectli": 17, "seamlessli": 17, "alpaca_api_kei": 17, "pk7t6yvax6pmh1em20yn": 17, "alpaca_api_secret": 17, "9wgjls3wixq54fcphwwzjcp8jcfjfkuwsryskkma": 17, "alpaca_is_pap": 17, "unit": [17, 44, 146, 157, 178, 193], "state": [17, 166, 196], "typic": [17, 22, 165], "challeng": 17, "friendli": 17, "coinbase_api_kei": 17, "steea9fhiszntmpihqjudeqolitj0javz": 17, "coinbase_api_secret": 17, "nuzcnprsxjxxouxrhqe5k2k1xnqlpckh2xcutifkcw": 17, "coinbase_is_sandbox": 17, "focus": 17, "competit": 17, "kraken_api_kei": 17, "xyz1234567890abcdef": 17, "kraken_api_secret": 17, "abcdef1234567890abcdef1234567890abcdef1234": 17, "intern": [17, 146, 157], "arrai": [17, 21], "cfd": 17, "Their": 17, "presenc": 17, "compat": 17, "purpos": 17, "newer": 17, "interactive_brokers_port": 17, "interactive_brokers_client_id": 17, "123456": 17, "interactive_brokers_ip": 17, "ib_subaccount": 17, "subaccount1": 17, "src": 17, "paper_1": 17, "is_backtest": [17, 26], "a7py0zidhxde6qkx8ojjknp7cd87hwku": 17, "discord_webhook_url": 17, "send": [17, 105, 116], "123456789": 17, "db_connection_str": [17, 196], "histori": 17, "sqlite": 17, "account_histori": 17, "db": 17, "strategy_nam": 17, "strategy_id": [17, 196], "my": [17, 25], "think": [17, 82], "polygon_max_memory_byt": 17, "memori": 17, "byte": 17, "usag": [17, 26], "512000000": 17, "main": [17, 18, 22, 26, 33, 40, 45, 146, 157], "smoothli": 17, "verifi": 17, "behav": 17, "ey": 17, "straightforward": 17, "happi": 17, "assist": 17, "repres": [19, 22, 44, 45, 72, 73, 126, 134], "attribut": [19, 196], "track": [17, 19, 23, 26, 52, 53, 58, 59, 148, 149, 159, 160], "underli": [19, 21, 128, 131, 136, 140], "ibm": [19, 145, 156], "just": [19, 26, 32, 36, 43, 146, 157], "corpor": 19, "printout": 19, "multipli": [19, 20, 36, 39, 44, 125, 126, 129, 131, 133, 134, 137, 140, 152, 163], "nexpir": 19, "expiri": [19, 127, 132, 135, 141], "june": 19, "2021": [19, 32, 128, 136, 139], "18": 19, "currenc": [19, 72, 146, 157, 167, 175, 177, 182, 190, 192], "eur": [19, 72, 73, 146, 152, 153, 157, 163, 164], "convers": [19, 178, 193], "gbp": [19, 152, 163], "behind": 19, "scene": 19, "anytim": 19, "due": 19, "precis": [19, 128, 136], "underlying_asset": 19, "case": [19, 21, 22], "yyyymmdd": [19, 132, 141], "yyyymm": 19, "multileg": [19, 22, 153, 164], "leverag": [19, 146, 157], "_asset_typ": 19, "_right": 19, "asset_type_must_be_one_of": 19, "right_must_be_one_of": 19, "26": 19, "155": 19, "base_asset": [19, 152, 153, 163, 164], "optionright": 19, "classmethod": [19, 20, 22, 23, 44], "from_dict": [19, 22, 23], "is_valid": 19, "symbol2asset": 19, "particularli": 19, "to_dict": [19, 22, 23], "assetsmap": 19, "map": 19, "userdict": 19, "datafram": [20, 21, 44, 64, 65, 68, 69, 72, 78, 81], "dividend": [20, 44, 79, 80, 128, 136, 167, 182], "stock_split": 20, "local": [20, 21, 42, 44, 90, 91, 99, 100, 128, 136], "timezon": [20, 21, 26, 44, 90, 91, 99, 100, 176, 181, 191], "new_york": [20, 44, 176, 179, 181, 191, 194], "helper": [20, 22, 45], "row": [20, 42, 72, 73, 81], "get_last_dividend": 20, "per": [20, 44], "get_momentum": 20, "momentum": 20, "aggregate_bar": 20, "frequenc": [20, 21], "Will": [20, 25, 62, 63, 66, 67, 74, 75, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 125, 126, 127, 128, 129, 131, 132, 133, 134, 135, 136, 137, 139, 140, 141, 151, 162, 176, 179, 181, 191, 194], "timefram": 20, "min": 20, "15min": 20, "1h": [20, 40], "specifi": [20, 22, 44, 72, 73, 146, 157, 196], "filter": 20, "daterang": 20, "get_total_volum": 20, "sum": [20, 51, 57], "themselv": 20, "supplier": 20, "exce": 20, "pace": 20, "throttl": 20, "respect": 20, "mention": 20, "tick": 20, "frequent": 20, "accur": [20, 44], "updat": [20, 22, 26, 36, 38, 108, 119, 146, 157, 167, 182], "rule": 20, "historical_limit": 20, "financi": [20, 25], "ohlcv": [20, 21, 43], "split": [20, 45], "instrument": 20, "yield": 20, "coin": [20, 146, 157], "eth": [20, 73, 146, 153, 157, 164], "num_period": 20, "get_total_dividend": 20, "get_total_stock_split": 20, "get_total_return": 20, "get_total_return_pct": 20, "percentag": [20, 25], "get_total_return_pct_chang": 20, "recent": [20, 72, 78], "get_bar": [20, 21, 44], "ethereum": 20, "bitcoin": 20, "grouper_kwarg": 20, "bars_agg": 20, "inclus": 20, "parse_bar_list": 20, "bar_list": 20, "singl": [20, 144, 155], "nobardatafound": 20, "date_start": 21, "date_end": 21, "trading_hours_start": 21, "trading_hours_end": 21, "23": 21, "59": 21, "input": [21, 102, 103, 113, 114], "manag": [21, 22, 26, 47, 61, 124], "attach": 21, "0001": 21, "localize_timezon": 21, "tz_local": 21, "eastern": 21, "utc": 21, "sybmol": 21, "datalin": 21, "numpi": 21, "iter_index": 21, "count": [21, 32, 78, 81, 196], "seri": 21, "set_tim": 21, "repair_times_and_fil": 21, "merg": 21, "reindex": 21, "nan": 21, "lower": 21, "set_date_format": 21, "set_dat": 21, "trim_data": 21, "trim": 21, "match": [21, 44], "to_datalin": 21, "exist": [21, 54, 60], "get_iter_count": 21, "len": 21, "check_data": 21, "wrapper": 21, "timeshift": [21, 43, 44, 72, 73, 84, 87, 88, 93, 96, 97], "_get_bars_dict": 21, "min_timestep": [21, 44], "timestep_map": [21, 44], "shift": [21, 44, 72, 73, 84, 87, 88, 93, 96, 97], "get_bars_between_d": 21, "start_dat": 21, "end_dat": 21, "get_quot": [21, 26, 47], "idx": 21, "belong": 22, "construct": 22, "goog": [22, 42, 72, 73], "googl": 22, "to_posit": 22, "get_incr": 22, "wait_to_be_regist": 22, "regist": [22, 110, 112, 121, 123], "wait_to_be_clos": 22, "keyword": 22, "my_limit_pric": 22, "500": [22, 36], "particular": [22, 125, 127, 129, 133, 135, 137], "higher": 22, "probabl": 22, "predetermin": 22, "exit": 22, "stop_pric": [22, 43, 146, 152, 153, 157, 163, 164], "my_stop_pric": 22, "400": 22, "stop_limit": [22, 146, 157], "combin": 22, "405": 22, "trail": [22, 146, 152, 157, 163], "continu": [22, 146, 157], "threshold": [22, 146, 157], "movement": [22, 146, 157], "trailing_stop": [22, 146, 157], "trail_pric": [22, 146, 157], "trail_perc": [22, 146, 157], "my_trail_pric": 22, "order_1": 22, "my_trail_perc": 22, "order_2": 22, "bracket": [22, 146, 157], "chain": [22, 44, 124, 125, 126, 127, 129, 131, 133, 134, 135, 137, 140], "long": 22, "short": [22, 106, 117], "importantli": 22, "extrem": 22, "fast": [22, 25, 26], "occur": 22, "take_profit_pric": [22, 146, 152, 157, 163], "stop_loss_pric": [22, 146, 152, 157, 163], "stop_loss_limit_pric": [22, 146, 157], "my_take_profit_pric": 22, "420": 22, "my_stop_loss_pric": 22, "parent": 22, "oto": [22, 146, 157], "trigger": [22, 146, 157], "variant": 22, "oco": [22, 146, 152, 157, 163], "word": [22, 167, 182], "where": [22, 25, 42, 146, 157], "alreadi": [22, 30, 36, 41], "submiss": 22, "position_fil": [22, 146, 157], "time_in_forc": [22, 146, 157], "good_till_d": [22, 146, 157], "date_cr": 22, "order_class": 22, "trade_cost": 22, "custom_param": [22, 146, 157], "avg_fill_pric": [22, 23], "error_messag": 22, "child_ord": 22, "tag": [22, 153, 164], "statu": [22, 148, 149, 159, 160], "unprocess": 22, "orderclass": 22, "ordersid": 22, "buy_to_clos": 22, "buy_to_cov": 22, "buy_to_open": 22, "sell_short": 22, "sell_to_clos": 22, "sell_to_open": 22, "orderstatu": 22, "cash_settl": 22, "partially_fil": 22, "partial_fil": 22, "ordertyp": 22, "tupl": [22, 73], "alia": 22, "add_child_ord": 22, "o": 22, "child": [22, 43], "add_transact": 22, "properti": [22, 23, 26, 43, 45, 46, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195], "cash_pend": 22, "equivalent_statu": 22, "equival": 22, "order_dict": 22, "get_fill_pric": 22, "weight": 22, "often": 22, "encount": 22, "partial": [22, 39], "pnl": 22, "yet": [22, 46], "is_act": 22, "otherwis": [22, 36], "rtype": [22, 44], "is_buy_ord": 22, "is_cancel": 22, "is_equivalent_statu": 22, "status1": 22, "status2": 22, "status": 22, "is_fil": 22, "is_opt": 22, "is_par": 22, "settlement": 22, "balanc": 22, "is_sell_ord": 22, "set_cancel": 22, "set_error": 22, "set_fil": 22, "set_identifi": 22, "set_new": 22, "set_partially_fil": 22, "update_raw": 22, "update_trail_stop_pric": 22, "was_transmit": 22, "retreiv": 23, "appl": 23, "add_ord": 23, "decim": [23, 74, 75, 146, 147, 157, 158], "get_selling_ord": [23, 26, 47], "value_typ": 23, "trading_fe": 24, "flat_fe": [24, 25], "percent_fe": [24, 25], "maker": 24, "taker": 24, "made": [25, 70, 82], "beginn": 25, "join": [25, 26], "commun": [25, 26], "cours": [25, 26], "shown": [25, 26], "discov": [25, 26], "skill": 25, "expert": [25, 26], "guidanc": 25, "resourc": 25, "welcom": 25, "hope": 25, "enjoi": 25, "easiest": 25, "comfort": 25, "copi": 25, "your_alpaca_api_kei": [25, 26], "your_alpaca_secret": [25, 26], "180": 25, "180m": 25, "carri": 25, "familiar": 25, "And": [25, 72, 73], "try": [25, 146, 157], "Or": [25, 26, 165], "dev": [25, 26], "simple_start_single_fil": [25, 26], "flat": 25, "trading_fee_1": 25, "trading_fee_2": 25, "sometim": 25, "spend": 25, "yappi": 25, "machinelearninglongshort": 25, "tqqq": 25, "get_func_stat": 25, "print_al": 25, "get_thread_stat": 25, "prof": 25, "pstat": 25, "snakeviz": 25, "web": [25, 46], "slow": 25, "robot": 26, "well": 26, "found": 26, "super": 26, "being": [26, 35, 36, 37, 38, 39, 44, 46, 72, 126, 134, 146, 157, 168, 183], "bug": 26, "fix": [26, 81], "fortun": 26, "against": 26, "switch": 26, "industri": 26, "tradest": 26, "build": [26, 27, 45], "analy": 26, "box": 26, "analyt": 26, "analyz": 26, "chart": [26, 47, 62, 63, 64, 65, 66, 67, 68, 69], "engin": [26, 41], "complic": 26, "confus": 26, "vector": 26, "math": 26, "mac": 26, "powershel": 26, "window": 26, "notic": 26, "exactli": 26, "suggest": 26, "lifecycl": [26, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 45, 47, 168, 172, 173, 178, 183, 187, 188, 193], "describ": [26, 45], "sub": 26, "tree": 26, "good": [26, 146, 157], "luck": 26, "forget": 26, "swim": 26, "gain": 26, "wealth": 26, "expertis": 26, "level": [26, 63, 67, 105, 116], "proven": 26, "record": 26, "home": 26, "pre": [26, 153, 164], "deploy": 26, "render": 26, "replit": 26, "profil": 26, "improv": 26, "before_market_open": [26, 27, 173, 188], "before_starting_trad": [26, 27, 30], "before_market_clos": [26, 27], "after_market_clos": [26, 27], "on_abrupt_clos": [26, 27, 34], "on_bot_crash": [26, 27], "trace_stat": [26, 27, 178, 193], "on_new_ord": [26, 27], "on_partially_filled_ord": [26, 27], "on_filled_ord": [26, 27], "on_canceled_ord": [26, 27], "on_parameters_upd": [26, 27], "backup": 26, "restor": 26, "benefit": 26, "var": 26, "storag": 26, "cancel_open_ord": [26, 30, 47, 151, 162], "sell_al": [26, 29, 33, 34, 47], "get_asset_potential_tot": [26, 47], "get_portfolio_valu": [26, 47], "get_cash": [26, 47], "get_historical_prices_for_asset": [26, 30, 47], "get_yesterday_dividend": [26, 44, 47], "get_next_trading_dai": [26, 47], "get_markers_df": [26, 47], "get_lines_df": [26, 47], "get_paramet": [26, 47, 165], "set_paramet": [26, 47, 165], "get_chain": [26, 44, 47, 127, 129, 131, 135, 137, 140], "get_greek": [26, 47], "get_strik": [26, 44, 47], "get_expir": [26, 47], "get_multipli": [26, 47], "options_expiry_to_datetime_d": [26, 47], "get_round_minut": [26, 44, 47], "get_last_minut": [26, 44, 47], "get_round_dai": [26, 44, 47], "get_last_dai": [26, 44, 47], "get_datetime_rang": [26, 43, 44, 47], "localize_datetim": [26, 44, 47], "to_default_timezon": [26, 44, 47], "miscellan": [26, 47], "update_paramet": [26, 38, 47], "await_market_to_clos": [26, 47], "await_market_to_open": [26, 47], "wait_for_order_registr": [26, 47], "wait_for_order_execut": [26, 47], "wait_for_orders_registr": [26, 47], "wait_for_orders_execut": [26, 47], "initial_budget": 26, "last_on_trading_iteration_datetim": 26, "pytz": 26, "unspent_monei": 26, "leg": 26, "abstract": [27, 41, 43, 44, 45], "pattern": [27, 41], "greatli": [27, 41], "react": [27, 41], "j": [27, 41], "compon": [27, 41, 196], "overload": [27, 34, 41, 43], "logic": [27, 29, 30, 40, 41, 43, 45], "dump": [28, 42], "report": 28, "busi": [29, 30], "execud": [29, 30], "unlik": 30, "launch": 30, "tlt": [30, 52, 58, 73, 75, 80, 111, 112, 122, 123, 146, 147, 153, 157, 158, 164], "bars_list": 30, "asset_bar": 30, "reiniti": 31, "reset": 31, "blacklist": 31, "my_custom_paramet": 32, "5m": [32, 178, 193], "d": [32, 178, 193], "constructor": 32, "later": 32, "strategy_1": 32, "my_other_paramet": 32, "strategy_2": 32, "my_last_paramet": 32, "asset_symbol": 32, "mnq": 32, "calendar": [32, 76, 130, 138], "marketcalendar": [32, 106, 117], "asx": [32, 106, 117], "bmf": [32, 106, 117], "cfe": [32, 106, 117], "bat": [32, 106, 117], "cme_equ": [32, 106, 117], "cbot_equ": [32, 106, 117], "cme_agricultur": [32, 106, 117], "cbot_agricultur": [32, 106, 117], "comex_agricultur": [32, 106, 117], "nymex_agricultur": [32, 106, 117], "cme_rat": [32, 106, 117], "cbot_rat": [32, 106, 117], "cme_interestr": [32, 106, 117], "cbot_interestr": [32, 106, 117], "cme_bond": [32, 106, 117], "cbot_bond": [32, 106, 117], "eurex": [32, 106, 117], "hkex": [32, 106, 117], "ic": [32, 106, 117], "iceu": [32, 106, 117], "nyfe": [32, 106, 117], "jpx": [32, 106, 117], "lse": [32, 106, 117], "os": [32, 106, 117], "six": [32, 106, 117], "sse": [32, 106, 117], "tsx": [32, 106, 117], "tsxv": [32, 106, 117], "bse": [32, 106, 117], "tase": [32, 106, 117], "tradingcalendar": [32, 106, 117], "asex": [32, 106, 117], "bvmf": [32, 106, 117], "cme": [32, 74, 106, 117], "iepa": [32, 106, 117], "xam": [32, 106, 117], "xasx": [32, 106, 117], "xbkk": [32, 106, 117], "xbog": [32, 106, 117], "xbom": [32, 106, 117], "xbru": [32, 106, 117], "xbud": [32, 106, 117], "xbue": [32, 106, 117], "xcbf": [32, 106, 117], "xcse": [32, 106, 117], "xdub": [32, 106, 117], "xfra": [32, 106, 117], "xetr": [32, 106, 117], "xhel": [32, 106, 117], "xhkg": [32, 106, 117], "xice": [32, 106, 117], "xidx": [32, 106, 117], "xist": [32, 106, 117], "xjse": [32, 106, 117], "xkar": [32, 106, 117], "xkl": [32, 106, 117], "xkrx": [32, 106, 117], "xlim": [32, 106, 117], "xli": [32, 106, 117], "xlon": [32, 106, 117], "xmad": [32, 106, 117], "xmex": [32, 106, 117], "xmil": [32, 106, 117], "xmo": [32, 106, 117], "xny": [32, 106, 117], "xnze": [32, 106, 117], "xosl": [32, 106, 117], "xpar": [32, 106, 117], "xph": [32, 106, 117], "xpra": [32, 106, 117], "xse": [32, 106, 117], "xsgo": [32, 106, 117], "xshg": [32, 106, 117], "xsto": [32, 106, 117], "xswx": [32, 106, 117], "xtae": [32, 106, 117], "xtai": [32, 106, 117], "xtk": [32, 106, 117], "xtse": [32, 106, 117], "xwar": [32, 106, 117], "xwbo": [32, 106, 117], "us_futur": [32, 106, 117], "max_bar": 32, "10m": [32, 178, 193], "20h": 32, "48": 32, "2d": [32, 178, 193], "gracefulli": 33, "shut": 33, "keybord": 33, "interupt": [33, 40], "abrupt": 33, "crash": [34, 40, 196], "rais": 34, "successfulli": [35, 36, 37], "300": [36, 178, 193], "sold": [36, 51, 57, 146, 157], "elif": 36, "bought": [36, 146, 157], "r": 37, "miss": 39, "again": [40, 103, 114], "pull": [40, 72], "hello": 40, "task": 41, "core": 41, "perspect": 41, "care": 41, "he": 41, "illustr": 41, "context": 42, "scope": 42, "random": 42, "google_symbol": 42, "snapshot_befor": 42, "random_numb": 42, "randint": 42, "my_custom_stat": 42, "trace": 42, "my_stat": 42, "my_other_stat": 42, "backtesting_brok": 43, "is_backtesting_brok": 43, "calculate_trade_cost": 43, "cash_settle_options_contract": 43, "settl": 43, "todo": [43, 74], "docstr": 43, "get_last_bar": 43, "els": 43, "limit_ord": [43, 146, 157], "open_": 43, "process_expired_option_contract": 43, "expri": 43, "process_pending_ord": 43, "evalu": 43, "mostli": 43, "should_continu": 43, "product": 43, "stop_ord": 43, "data_source_backtest": 43, "datasourcebacktest": [43, 44], "abc": [43, 44], "doe": [43, 44, 77, 146, 157], "pandasdata": [43, 44], "is_backtesting_data_sourc": [43, 44], "adjust_for_delai": [43, 44, 83, 92], "Not": [43, 106, 117], "delai": 44, "default_pytz": 44, "dsttzinfo": 44, "lmt": 44, "19": 44, "std": 44, "default_timezon": 44, "calculate_greek": 44, "asset_pric": [44, 128, 136], "underlying_pric": [44, 128, 136], "greek": [44, 124, 128, 136], "static": 44, "convert_timestep_str_to_timedelta": 44, "timedelta": [44, 72, 73, 102, 103, 113, 114], "1minut": 44, "1hour": 44, "1dai": 44, "include_after_hour": [44, 72, 73], "info": [44, 105, 116, 125, 126, 133, 134], "guarente": [44, 125, 126, 133, 134], "exp_dat": [44, 125, 126, 133, 134], "strike1": [44, 125, 126, 133, 134], "strike2": [44, 125, 126, 133, 134], "07": [44, 125, 126, 133, 134], "ago": [44, 72], "known": [44, 74, 75], "round": [44, 87, 88, 96, 97], "param": 44, "get_timestep": 44, "query_greek": [44, 128, 136], "queri": [44, 128, 136], "clean_trading_tim": 44, "dt_index": 44, "pcal": 44, "find_asset_in_data_stor": 44, "get_asset_by_nam": 44, "get_asset_by_symbol": 44, "get_asset": 44, "whose": [44, 126, 134], "smart": [44, 125, 127, 129, 133, 135, 137, 146, 157], "strke": [44, 125, 133], "stike": [44, 125, 133], "get_start_datetime_and_ts_unit": 44, "start_dt": 44, "start_buff": 44, "get_trading_days_panda": 44, "load_data": 44, "update_date_index": 44, "yahoo_data": 44, "yahoodata": 44, "15m": 44, "becuas": 44, "chain_data": 44, "option_chain": 44, "categori": [45, 101], "flow": 45, "is_backtest_brok": 46, "async_": 46, "async": 46, "asynchron": 46, "displi": 46, "displai": [46, 62, 63, 66, 67], "run_all_async": 46, "stop_al": 46, "insid": [47, 166, 172, 187], "thing": 47, "divid": 47, "sens": 47, "preced": 47, "seek": [52, 58, 144, 155], "sought": [52, 58, 147, 158], "assset": [52, 58], "empti": [53, 59], "overwrit": [54, 60], "style": [62, 66], "solid": [62, 66], "width": [62, 66, 72, 73], "detail_text": [62, 63, 66, 67], "overbought": [62, 63, 66, 67], "oversold": [62, 63, 66, 67], "red": [62, 63, 66, 67, 105, 116], "blue": [62, 63, 66, 67], "yellow": [62, 63, 66, 67], "orang": [62, 63, 66, 67], "purpl": [62, 63, 66, 67], "pink": [62, 63, 66, 67], "brown": [62, 63, 66, 67], "black": [62, 63, 66, 67], "white": [62, 63, 66, 67], "grai": [62, 66], "lightgrai": [62, 66], "darkgrai": [62, 66], "lightblu": [62, 66], "darkblu": [62, 66], "lightgreen": [62, 66], "darkgreen": [62, 66], "lightr": [62, 66], "darkr": [62, 66], "hex": [62, 66], "dot": [62, 63, 66, 67], "text": [62, 63, 66, 67], "hover": [62, 63, 66, 67], "add_chart_lin": [62, 66], "80": [62, 66], "circl": [63, 67], "size": [63, 67, 81], "mark": [63, 67], "cross": [63, 67], "resist": [63, 67], "squar": [63, 67], "diamond": [63, 67], "x": [63, 67], "triangl": [63, 67], "ne": [63, 67], "se": [63, 67], "sw": [63, 67], "nw": [63, 67], "pentagon": [63, 67], "hexagon": [63, 67], "hexagon2": [63, 67], "octagon": [63, 67], "star": [63, 67], "hexagram": [63, 67], "tall": [63, 67], "hourglass": [63, 67], "bowti": [63, 67], "thin": [63, 67], "asterisk": [63, 67], "hash": [63, 67], "y": [63, 67], "ew": [63, 67], "n": [63, 67], "arrow": [63, 67], "add_chart_mark": [63, 67], "get_symbol_bar": 70, "create_asset": [71, 72, 79], "backward": [72, 73], "week": [72, 73], "1month": [72, 73], "present": [72, 73, 128, 136], "integ": [72, 73, 178, 193], "extract": 72, "24h": 72, "last_ohlc": 72, "asset_bas": [72, 73, 152, 163], "asset_quot": [72, 73, 152, 153, 163, 164], "regular": 73, "eurusd": 73, "should_use_last_clos": 74, "depric": 74, "comment": 74, "2022": [74, 127, 135], "yyyi": [76, 130, 138], "mm": [76, 130, 138], "dd": [76, 130, 138], "next_trading_dai": [76, 130, 138], "backtets": 77, "bid": 77, "vwap": [78, 81], "intial": 78, "keep_bar": 81, "arriv": 81, "extend": 81, "kept": 81, "datatim": 82, "regardless": 82, "accord": [82, 83, 89, 92, 98], "1990": 82, "tell": 82, "jan": 82, "1991": 82, "rather": 82, "last_dai": [85, 94], "last_minut": [86, 95], "nearest": [87, 88, 96, 97], "round_dai": [87, 96], "round_minut": [88, 97], "paus": [102, 103, 107, 113, 114, 118, 178, 193], "overrid": [102, 103, 113, 114], "infinit": [103, 114], "await": [103, 114, 143, 154], "broadcast": [105, 116], "goe": [105, 116], "origin": [105, 116], "program": [107, 118, 165, 178, 193], "order1": [111, 112, 122, 123, 145, 153, 156, 164], "order2": [111, 112, 122, 123, 145, 153, 156, 164], "meant": 124, "cboe": [125, 127, 129, 133, 135, 137], "sort": [127, 129, 131, 135, 137, 140], "expiry_d": [127, 132, 135, 141], "could": [128, 136], "theoret": [128, 136], "implied_volatil": [128, 136], "impli": [128, 136], "option_pric": [128, 136], "pv_dividend": [128, 136], "gamma": [128, 136], "vega": [128, 136], "theta": [128, 136], "opt_asset": [128, 136], "option_typ": [128, 136], "20221013": [129, 137], "20200101": [132, 141], "next_option_expir": 139, "get_next_option_expir": 139, "gtc": [146, 153, 157, 164], "still": [146, 157], "restric": [146, 157], "compound": [146, 157], "suffici": [146, 157], "213": [146, 157], "obect": [146, 157], "favor": [146, 157], "guarante": [146, 157], "penetr": [146, 157], "forc": [146, 157], "remaind": [146, 157], "gtd": [146, 157], "though": [146, 157], "dollar": [146, 157, 175, 190], "percent": [146, 157], "stop_loss": [146, 152, 157, 163], "stop_loss_limit": [146, 157], "2019": [146, 157], "chf": [146, 157], "aset": [146, 152, 153, 157, 163, 164], "41000": [146, 157], "expiration_d": [147, 152, 158, 163], "order_id": [148, 159], "get_tracked_ord": [149, 160], "system": [151, 162], "leav": [151, 162], "strike_pric": [152, 163], "trailing_stop_pric": [152, 163], "41250": [152, 163], "41325": [152, 163], "41300": [152, 163], "is_multileg": [153, 164], "debit": [153, 164], "post": [153, 164], "asset_btc": [153, 164], "asset_eth": [153, 164], "my_paramet": 165, "main_tick": 165, "ema_threshold": 165, "whenev": [167, 182], "therefor": [167, 182], "zero": [167, 182], "excut": [168, 183], "happen": [171, 186], "equal": [172, 173, 178, 187, 188, 193], "resov": [175, 190], "held": [175, 190], "speed": [178, 193], "m": [178, 193], "h": [178, 193], "2h": [178, 193], "remov": [180, 195], "store": 196, "runtim": 196, "persist": 196, "resum": 196, "namespac": 196, "prevent": 196, "effici": 196, "assign": 196, "notat": 196, "trade_count": 196, "current_count": 196, "all_vari": 196, "output": 196, "102": 196, "postgresql": 196, "5432": 196, "database_nam": 196, "tabl": 196, "backup_table_nam": 196, "vars_backup": 196, "last_upd": 196, "json": 196, "550e8400": 196, "var1": 196, "var2": 196, "optionscondormartingal": 196, "lumiwealth_api_kei": 17, "botspot": 17, "694rr2c8d9234b43a40fab494a79f5634ghd4f39d44ccf2": 17}, "objects": {"entities": [[19, 0, 0, "-", "asset"], [20, 0, 0, "-", "bars"], [21, 0, 0, "-", "data"], [22, 0, 0, "-", "order"], [23, 0, 0, "-", "position"], [24, 0, 0, "-", "trading_fee"]], "entities.asset": [[19, 1, 1, "", "Asset"], [19, 1, 1, "", "AssetsMapping"]], "entities.asset.Asset": [[19, 1, 1, "", "AssetType"], [19, 1, 1, "", "OptionRight"], [19, 2, 1, "", "_asset_types"], [19, 2, 1, "", "_right"], [19, 2, 1, "id0", "asset_type"], [19, 3, 1, "id1", "asset_type_must_be_one_of"], [19, 2, 1, "id2", "expiration"], [19, 3, 1, "", "from_dict"], [19, 3, 1, "", "is_valid"], [19, 2, 1, "id3", "multiplier"], [19, 2, 1, "id4", "precision"], [19, 2, 1, "id5", "right"], [19, 3, 1, "id6", "right_must_be_one_of"], [19, 2, 1, "id7", "strike"], [19, 2, 1, "id8", "symbol"], [19, 3, 1, "", "symbol2asset"], [19, 3, 1, "", "to_dict"], [19, 2, 1, "", "underlying_asset"]], "entities.asset.Asset.AssetType": [[19, 2, 1, "", "CRYPTO"], [19, 2, 1, "", "FOREX"], [19, 2, 1, "", "FUTURE"], [19, 2, 1, "", "INDEX"], [19, 2, 1, "", "MULTILEG"], [19, 2, 1, "", "OPTION"], [19, 2, 1, "", "STOCK"]], "entities.asset.Asset.OptionRight": [[19, 2, 1, "", "CALL"], [19, 2, 1, "", "PUT"]], "entities.bars": [[20, 1, 1, "", "Bars"], [20, 4, 1, "", "NoBarDataFound"]], "entities.bars.Bars": [[20, 3, 1, "id0", "aggregate_bars"], [20, 3, 1, "", "filter"], [20, 3, 1, "id1", "get_last_dividend"], [20, 3, 1, "id2", "get_last_price"], [20, 3, 1, "id3", "get_momentum"], [20, 3, 1, "", "get_total_dividends"], [20, 3, 1, "", "get_total_return"], [20, 3, 1, "", "get_total_return_pct"], [20, 3, 1, "", "get_total_return_pct_change"], [20, 3, 1, "", "get_total_stock_splits"], [20, 3, 1, "id4", "get_total_volume"], [20, 3, 1, "", "parse_bar_list"], [20, 3, 1, "", "split"]], "entities.data": [[21, 1, 1, "", "Data"]], "entities.data.Data": [[21, 2, 1, "", "MIN_TIMESTEP"], [21, 2, 1, "", "TIMESTEP_MAPPING"], [21, 3, 1, "", "_get_bars_dict"], [21, 2, 1, "", "asset"], [21, 3, 1, "id0", "check_data"], [21, 3, 1, "id1", "columns"], [21, 2, 1, "", "datalines"], [21, 2, 1, "", "date_end"], [21, 2, 1, "", "date_start"], [21, 2, 1, "", "df"], [21, 3, 1, "id2", "get_bars"], [21, 3, 1, "", "get_bars_between_dates"], [21, 3, 1, "id3", "get_iter_count"], [21, 3, 1, "id4", "get_last_price"], [21, 3, 1, "", "get_quote"], [21, 2, 1, "", "iter_index"], [21, 3, 1, "id5", "repair_times_and_fill"], [21, 3, 1, "id6", "set_date_format"], [21, 3, 1, "id7", "set_dates"], [21, 3, 1, "id8", "set_times"], [21, 2, 1, "", "sybmol"], [21, 2, 1, "", "timestep"], [21, 3, 1, "id9", "to_datalines"], [21, 2, 1, "", "trading_hours_end"], [21, 2, 1, "", "trading_hours_start"], [21, 3, 1, "id10", "trim_data"]], "entities.order": [[22, 1, 1, "", "Order"]], "entities.order.Order": [[22, 1, 1, "", "OrderClass"], [22, 1, 1, "", "OrderSide"], [22, 1, 1, "", "OrderStatus"], [22, 1, 1, "", "OrderType"], [22, 1, 1, "", "Transaction"], [22, 3, 1, "", "add_child_order"], [22, 3, 1, "", "add_transaction"], [22, 5, 1, "", "avg_fill_price"], [22, 3, 1, "", "cash_pending"], [22, 3, 1, "", "equivalent_status"], [22, 3, 1, "", "from_dict"], [22, 3, 1, "", "get_fill_price"], [22, 3, 1, "", "get_increment"], [22, 3, 1, "", "is_active"], [22, 3, 1, "", "is_buy_order"], [22, 3, 1, "", "is_canceled"], [22, 3, 1, "", "is_equivalent_status"], [22, 3, 1, "", "is_filled"], [22, 3, 1, "", "is_option"], [22, 3, 1, "", "is_parent"], [22, 3, 1, "", "is_sell_order"], [22, 5, 1, "", "quantity"], [22, 3, 1, "", "set_canceled"], [22, 3, 1, "", "set_error"], [22, 3, 1, "", "set_filled"], [22, 3, 1, "", "set_identifier"], [22, 3, 1, "", "set_new"], [22, 3, 1, "", "set_partially_filled"], [22, 5, 1, "", "status"], [22, 3, 1, "", "to_dict"], [22, 3, 1, "", "to_position"], [22, 3, 1, "", "update_raw"], [22, 3, 1, "", "update_trail_stop_price"], [22, 3, 1, "", "wait_to_be_closed"], [22, 3, 1, "", "wait_to_be_registered"], [22, 3, 1, "", "was_transmitted"]], "entities.order.Order.OrderClass": [[22, 2, 1, "", "BRACKET"], [22, 2, 1, "", "MULTILEG"], [22, 2, 1, "", "OCO"], [22, 2, 1, "", "OTO"]], "entities.order.Order.OrderSide": [[22, 2, 1, "", "BUY"], [22, 2, 1, "", "BUY_TO_CLOSE"], [22, 2, 1, "", "BUY_TO_COVER"], [22, 2, 1, "", "BUY_TO_OPEN"], [22, 2, 1, "", "SELL"], [22, 2, 1, "", "SELL_SHORT"], [22, 2, 1, "", "SELL_TO_CLOSE"], [22, 2, 1, "", "SELL_TO_OPEN"]], "entities.order.Order.OrderStatus": [[22, 2, 1, "", "CANCELED"], [22, 2, 1, "", "CANCELLING"], [22, 2, 1, "", "CASH_SETTLED"], [22, 2, 1, "", "ERROR"], [22, 2, 1, "", "EXPIRED"], [22, 2, 1, "", "FILLED"], [22, 2, 1, "", "NEW"], [22, 2, 1, "", "OPEN"], [22, 2, 1, "", "PARTIALLY_FILLED"], [22, 2, 1, "", "SUBMITTED"], [22, 2, 1, "", "UNPROCESSED"]], "entities.order.Order.OrderType": [[22, 2, 1, "", "BRACKET"], [22, 2, 1, "", "LIMIT"], [22, 2, 1, "", "MARKET"], [22, 2, 1, "", "OCO"], [22, 2, 1, "", "OTO"], [22, 2, 1, "", "STOP"], [22, 2, 1, "", "STOP_LIMIT"], [22, 2, 1, "", "TRAIL"]], "entities.order.Order.Transaction": [[22, 2, 1, "", "price"], [22, 2, 1, "", "quantity"]], "entities.position": [[23, 1, 1, "", "Position"]], "entities.position.Position": [[23, 3, 1, "", "add_order"], [23, 2, 1, "", "asset"], [23, 5, 1, "id0", "available"], [23, 2, 1, "", "avg_fill_price"], [23, 3, 1, "", "from_dict"], [23, 3, 1, "", "get_selling_order"], [23, 5, 1, "id1", "hold"], [23, 2, 1, "", "orders"], [23, 5, 1, "id2", "quantity"], [23, 2, 1, "", "strategy"], [23, 2, 1, "", "symbol"], [23, 3, 1, "", "to_dict"], [23, 3, 1, "", "value_type"]], "entities.trading_fee": [[24, 1, 1, "", "TradingFee"]], "lumibot.backtesting": [[43, 0, 0, "-", "backtesting_broker"]], "lumibot.backtesting.backtesting_broker": [[43, 1, 1, "", "BacktestingBroker"]], "lumibot.backtesting.backtesting_broker.BacktestingBroker": [[43, 2, 1, "", "IS_BACKTESTING_BROKER"], [43, 3, 1, "", "calculate_trade_cost"], [43, 3, 1, "", "cancel_order"], [43, 3, 1, "", "cash_settle_options_contract"], [43, 5, 1, "", "datetime"], [43, 3, 1, "", "get_historical_account_value"], [43, 3, 1, "", "get_last_bar"], [43, 3, 1, "", "get_time_to_close"], [43, 3, 1, "", "get_time_to_open"], [43, 3, 1, "", "is_market_open"], [43, 3, 1, "", "limit_order"], [43, 3, 1, "", "process_expired_option_contracts"], [43, 3, 1, "", "process_pending_orders"], [43, 3, 1, "", "should_continue"], [43, 3, 1, "", "stop_order"], [43, 3, 1, "", "submit_order"], [43, 3, 1, "", "submit_orders"]], "lumibot.brokers": [[12, 0, 0, "-", "alpaca"]], "lumibot.brokers.alpaca": [[12, 1, 1, "", "Alpaca"], [12, 1, 1, "", "OrderData"]], "lumibot.brokers.alpaca.Alpaca": [[12, 2, 1, "", "ASSET_TYPE_MAP"], [12, 2, 1, "", "api"], [12, 3, 1, "", "cancel_order"], [12, 3, 1, "", "get_historical_account_value"], [12, 3, 1, "id0", "get_time_to_close"], [12, 3, 1, "id1", "get_time_to_open"], [12, 3, 1, "id2", "get_timestamp"], [12, 3, 1, "id3", "is_market_open"], [12, 3, 1, "", "map_asset_type"]], "lumibot.brokers.alpaca.OrderData": [[12, 3, 1, "", "to_request_fields"]], "lumibot": [[44, 0, 0, "-", "data_sources"]], "lumibot.data_sources": [[44, 0, 0, "-", "data_source"], [43, 0, 0, "-", "data_source_backtesting"], [44, 0, 0, "-", "pandas_data"], [44, 0, 0, "-", "yahoo_data"]], "lumibot.data_sources.data_source": [[44, 1, 1, "", "DataSource"]], "lumibot.data_sources.data_source.DataSource": [[44, 2, 1, "", "DEFAULT_PYTZ"], [44, 2, 1, "", "DEFAULT_TIMEZONE"], [44, 2, 1, "", "IS_BACKTESTING_DATA_SOURCE"], [44, 2, 1, "", "MIN_TIMESTEP"], [44, 2, 1, "", "SOURCE"], [44, 2, 1, "", "TIMESTEP_MAPPING"], [44, 3, 1, "", "calculate_greeks"], [44, 3, 1, "", "convert_timestep_str_to_timedelta"], [44, 3, 1, "", "get_bars"], [44, 3, 1, "", "get_chains"], [44, 3, 1, "", "get_datetime"], [44, 3, 1, "", "get_datetime_range"], [44, 3, 1, "", "get_historical_prices"], [44, 3, 1, "", "get_last_day"], [44, 3, 1, "", "get_last_minute"], [44, 3, 1, "", "get_last_price"], [44, 3, 1, "", "get_last_prices"], [44, 3, 1, "", "get_round_day"], [44, 3, 1, "", "get_round_minute"], [44, 3, 1, "", "get_strikes"], [44, 3, 1, "", "get_timestamp"], [44, 3, 1, "", "get_timestep"], [44, 3, 1, "", "get_yesterday_dividend"], [44, 3, 1, "", "get_yesterday_dividends"], [44, 3, 1, "", "localize_datetime"], [44, 3, 1, "", "query_greeks"], [44, 3, 1, "", "to_default_timezone"]], "lumibot.data_sources.data_source_backtesting": [[43, 1, 1, "", "DataSourceBacktesting"]], "lumibot.data_sources.data_source_backtesting.DataSourceBacktesting": [[43, 2, 1, "", "IS_BACKTESTING_DATA_SOURCE"], [43, 3, 1, "", "get_datetime"], [43, 3, 1, "", "get_datetime_range"]], "lumibot.data_sources.pandas_data": [[44, 1, 1, "", "PandasData"]], "lumibot.data_sources.pandas_data.PandasData": [[44, 2, 1, "", "SOURCE"], [44, 2, 1, "", "TIMESTEP_MAPPING"], [44, 3, 1, "", "clean_trading_times"], [44, 3, 1, "", "find_asset_in_data_store"], [44, 3, 1, "", "get_asset_by_name"], [44, 3, 1, "", "get_asset_by_symbol"], [44, 3, 1, "", "get_assets"], [44, 3, 1, "", "get_chains"], [44, 3, 1, "", "get_historical_prices"], [44, 3, 1, "", "get_last_price"], [44, 3, 1, "", "get_last_prices"], [44, 3, 1, "", "get_start_datetime_and_ts_unit"], [44, 3, 1, "", "get_trading_days_pandas"], [44, 3, 1, "", "get_yesterday_dividend"], [44, 3, 1, "", "get_yesterday_dividends"], [44, 3, 1, "", "load_data"], [44, 3, 1, "", "update_date_index"]], "lumibot.data_sources.yahoo_data": [[44, 1, 1, "", "YahooData"]], "lumibot.data_sources.yahoo_data.YahooData": [[44, 2, 1, "", "MIN_TIMESTEP"], [44, 2, 1, "", "SOURCE"], [44, 2, 1, "", "TIMESTEP_MAPPING"], [44, 3, 1, "", "get_chains"], [44, 3, 1, "", "get_historical_prices"], [44, 3, 1, "", "get_last_price"], [44, 3, 1, "", "get_strikes"]], "lumibot.strategies.strategy": [[45, 0, 0, "-", "Strategy"]], "lumibot.strategies.strategy.Strategy": [[66, 6, 1, "", "add_line"], [67, 6, 1, "", "add_marker"], [28, 6, 1, "", "after_market_closes"], [113, 6, 1, "", "await_market_to_close"], [114, 6, 1, "", "await_market_to_open"], [29, 6, 1, "", "before_market_closes"], [30, 6, 1, "", "before_market_opens"], [31, 6, 1, "", "before_starting_trading"], [154, 6, 1, "", "cancel_open_orders"], [155, 6, 1, "", "cancel_order"], [156, 6, 1, "", "cancel_orders"], [71, 6, 1, "", "cancel_realtime_bars"], [182, 5, 1, "", "cash"], [157, 6, 1, "", "create_order"], [183, 5, 1, "", "first_iteration"], [158, 6, 1, "", "get_asset_potential_total"], [55, 6, 1, "", "get_cash"], [133, 6, 1, "", "get_chain"], [134, 6, 1, "", "get_chains"], [92, 6, 1, "", "get_datetime"], [93, 6, 1, "", "get_datetime_range"], [135, 6, 1, "", "get_expiration"], [136, 6, 1, "", "get_greeks"], [72, 6, 1, "", "get_historical_prices"], [73, 6, 1, "", "get_historical_prices_for_assets"], [94, 6, 1, "", "get_last_day"], [95, 6, 1, "", "get_last_minute"], [74, 6, 1, "", "get_last_price"], [75, 6, 1, "", "get_last_prices"], [68, 6, 1, "", "get_lines_df"], [69, 6, 1, "", "get_markers_df"], [137, 6, 1, "", "get_multiplier"], [138, 6, 1, "", "get_next_trading_day"], [139, 6, 1, "", "get_option_expiration_after_date"], [159, 6, 1, "", "get_order"], [160, 6, 1, "", "get_orders"], [115, 6, 1, "", "get_parameters"], [57, 6, 1, "", "get_portfolio_value"], [58, 6, 1, "", "get_position"], [59, 6, 1, "", "get_positions"], [77, 6, 1, "", "get_quote"], [78, 6, 1, "", "get_realtime_bars"], [96, 6, 1, "", "get_round_day"], [97, 6, 1, "", "get_round_minute"], [161, 6, 1, "", "get_selling_order"], [140, 6, 1, "", "get_strikes"], [98, 6, 1, "", "get_timestamp"], [79, 6, 1, "", "get_yesterday_dividend"], [80, 6, 1, "", "get_yesterday_dividends"], [184, 5, 1, "", "initial_budget"], [32, 6, 1, "", "initialize"], [185, 5, 1, "", "is_backtesting"], [186, 5, 1, "", "last_on_trading_iteration_datetime"], [99, 6, 1, "", "localize_datetime"], [116, 6, 1, "", "log_message"], [187, 5, 1, "", "minutes_before_closing"], [188, 5, 1, "", "minutes_before_opening"], [189, 5, 1, "", "name"], [33, 6, 1, "", "on_abrupt_closing"], [34, 6, 1, "", "on_bot_crash"], [35, 6, 1, "", "on_canceled_order"], [36, 6, 1, "", "on_filled_order"], [37, 6, 1, "", "on_new_order"], [38, 6, 1, "", "on_parameters_updated"], [39, 6, 1, "", "on_partially_filled_order"], [40, 6, 1, "", "on_trading_iteration"], [141, 6, 1, "", "options_expiry_to_datetime_date"], [190, 5, 1, "", "portfolio_value"], [191, 5, 1, "", "pytz"], [192, 5, 1, "", "quote_asset"], [1, 6, 1, "", "run_backtest"], [162, 6, 1, "", "sell_all"], [117, 6, 1, "", "set_market"], [60, 6, 1, "", "set_parameters"], [118, 6, 1, "", "sleep"], [193, 5, 1, "", "sleeptime"], [81, 6, 1, "", "start_realtime_bars"], [163, 6, 1, "", "submit_order"], [164, 6, 1, "", "submit_orders"], [194, 5, 1, "", "timezone"], [100, 6, 1, "", "to_default_timezone"], [42, 6, 1, "", "trace_stats"], [195, 5, 1, "", "unspent_money"], [119, 6, 1, "", "update_parameters"], [120, 6, 1, "", "wait_for_order_execution"], [121, 6, 1, "", "wait_for_order_registration"], [122, 6, 1, "", "wait_for_orders_execution"], [123, 6, 1, "", "wait_for_orders_registration"]], "lumibot.traders": [[46, 0, 0, "-", "trader"]], "lumibot.traders.trader": [[46, 1, 1, "", "Trader"]], "lumibot.traders.trader.Trader": [[46, 3, 1, "", "add_strategy"], [46, 5, 1, "", "is_backtest_broker"], [46, 3, 1, "", "run_all"], [46, 3, 1, "", "run_all_async"], [46, 3, 1, "", "stop_all"]]}, "objtypes": {"0": "py:module", "1": "py:class", "2": "py:attribute", "3": "py:method", "4": "py:exception", "5": "py:property", "6": "py:function"}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "class", "Python class"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "method", "Python method"], "4": ["py", "exception", "Python exception"], "5": ["py", "property", "Python property"], "6": ["py", "function", "Python function"]}, "titleterms": {"backtest": [0, 1, 2, 6, 8, 25, 26, 43], "file": [0, 2, 3, 9], "gener": [0, 2, 17], "from": [0, 2], "content": [0, 11, 18, 26, 27, 44, 47], "function": [1, 61], "how": [2, 196], "To": 2, "instal": [2, 25, 26], "lumibot": [2, 25, 26], "choos": [2, 17], "data": [2, 5, 14, 21, 43, 44, 70], "sourc": [2, 43, 44], "run": [2, 13, 16, 25], "polygon": [2, 6], "io": [2, 6], "tearsheet": [2, 7], "html": [2, 7], "trade": [2, 9, 14, 24, 25, 26], "indic": [2, 3, 26], "conclus": [2, 17], "log": 4, "csv": [4, 5], "panda": [5, 44], "other": 5, "exampl": [5, 13, 14, 16, 17], "datafram": 5, "In": 5, "summari": [5, 41], "thetadata": 8, "yahoo": [10, 44], "broker": [11, 13, 14, 15, 17, 43], "alpaca": [12, 17, 25], "document": [12, 19, 20, 22, 45], "crypto": 13, "us": [13, 14], "ccxt": 13, "configur": [13, 14, 16, 17, 25, 196], "set": 13, "your": [13, 16, 17, 25, 26], "strategi": [13, 14, 16, 17, 25, 26, 45, 47, 166], "full": [13, 16], "interact": [14, 15, 17], "market": 14, "subscript": 14, "two": 14, "factor": 14, "authent": 14, "2fa": 14, "secondari": 14, "usernam": 14, "paper": [14, 25], "account": [14, 25, 48], "setup": 14, "legaci": [15, 17], "tradier": [16, 17], "get": [16, 25, 26], "start": [16, 25, 26], "deploy": 17, "guid": [17, 196], "platform": 17, "deploi": 17, "render": 17, "replit": 17, "secret": 17, "coinbas": 17, "kraken": 17, "environ": 17, "variabl": [17, 196], "final": 17, "step": [17, 25, 26], "entiti": 18, "asset": 19, "bar": 20, "order": [22, 142], "advanc": 22, "type": 22, "With": [22, 25], "leg": 22, "posit": 23, "fee": [24, 25], "what": 25, "i": 25, "lumiwealth": 25, "1": [25, 26], "packag": 25, "2": [25, 26], "import": 25, "follow": 25, "modul": [25, 44], "3": [25, 26], "creat": [25, 26], "an": 25, "4": 25, "api": 25, "kei": 25, "5": 25, "class": 25, "6": 25, "instanti": 25, "trader": [25, 46], "7": 25, "option": [25, 124], "8": 25, "ad": 25, "profil": 25, "improv": 25, "perform": 25, "algorithm": 26, "librari": 26, "take": 26, "bot": 26, "live": 26, "all": 26, "togeth": 26, "addit": 26, "resourc": 26, "need": 26, "extra": 26, "help": 26, "tabl": 26, "lifecycl": 27, "method": [27, 47], "def": [28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 42], "after_market_clos": 28, "refer": [28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 42], "before_market_clos": 29, "before_market_open": 30, "before_starting_trad": 31, "initi": 32, "on_abrupt_clos": 33, "on_bot_crash": 34, "on_canceled_ord": 35, "on_filled_ord": 36, "on_new_ord": 37, "on_parameters_upd": 38, "on_partially_filled_ord": 39, "on_trading_iter": 40, "trace_stat": 42, "manag": [48, 142], "self": [49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 62, 63, 64, 65, 66, 67, 68, 69, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196], "get_cash": [49, 55], "get_paramet": [50, 56, 104, 115], "get_portfolio_valu": [51, 57], "get_posit": [52, 53, 58, 59], "set_paramet": [54, 60], "chart": 61, "add_lin": [62, 66], "add_mark": [63, 67], "get_lines_df": [64, 68], "get_markers_df": [65, 69], "cancel_realtime_bar": 71, "get_historical_pric": 72, "get_historical_prices_for_asset": 73, "get_last_pric": [74, 75], "get_next_trading_dai": [76, 130, 138], "get_quot": 77, "get_realtime_bar": 78, "get_yesterday_dividend": [79, 80], "start_realtime_bar": 81, "datetim": 82, "get_datetim": [83, 92], "get_datetime_rang": [84, 93], "get_last_dai": [85, 94], "get_last_minut": [86, 95], "get_round_dai": [87, 96], "get_round_minut": [88, 97], "get_timestamp": [89, 98], "localize_datetim": [90, 99], "to_default_timezon": [91, 100], "miscellan": 101, "await_market_to_clos": [102, 113], "await_market_to_open": [103, 114], "log_messag": [105, 116], "set_market": [106, 117], "sleep": [107, 118], "update_paramet": [108, 119], "wait_for_order_execut": [109, 120], "wait_for_order_registr": [110, 121], "wait_for_orders_execut": [111, 122], "wait_for_orders_registr": [112, 123], "get_chain": [125, 126, 133, 134], "get_expir": [127, 135], "get_greek": [128, 136], "get_multipli": [129, 137], "get_strik": [131, 140], "options_expiry_to_datetime_d": [132, 141], "get_option_expiration_after_d": 139, "cancel_open_ord": [143, 154], "cancel_ord": [144, 145, 155, 156], "create_ord": [146, 157], "get_asset_potential_tot": [147, 158], "get_ord": [148, 149, 159, 160], "get_selling_ord": [150, 161], "sell_al": [151, 162], "submit_ord": [152, 153, 163, 164], "paramet": 165, "properti": 166, "cash": [167, 182], "first_iter": [168, 183], "initial_budget": [169, 184], "is_backtest": [170, 185], "last_on_trading_iteration_datetim": [171, 186], "minutes_before_clos": [172, 187], "minutes_before_open": [173, 188], "name": [174, 189], "portfolio_valu": [175, 190], "pytz": [176, 181, 191], "quote_asset": [177, 192], "sleeptim": [178, 193], "timezon": [179, 194], "unspent_monei": [180, 195], "backup": 196, "restor": 196, "It": 196, "work": 196, "benefit": 196, "var": 196, "usag": 196, "databas": 196, "storag": 196, "structur": 196}, "envversion": {"sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx": 60}, "alltitles": {"Backtesting": [[0, "backtesting"], [43, "backtesting"]], "Files Generated from Backtesting": [[0, "files-generated-from-backtesting"], [2, "files-generated-from-backtesting"]], "Contents:": [[0, null], [11, null], [18, null], [27, null], [47, null]], "Backtesting Function": [[1, "backtesting-function"]], "How To Backtest": [[2, "how-to-backtest"]], "Installing LumiBot": [[2, "installing-lumibot"]], "Choosing a Data Source": [[2, "choosing-a-data-source"]], "Running a Backtest with Polygon.io": [[2, "running-a-backtest-with-polygon-io"]], "Tearsheet HTML": [[2, "tearsheet-html"], [7, "tearsheet-html"]], "Trades Files": [[2, "trades-files"], [9, "trades-files"]], "Indicators Files": [[2, "indicators-files"], [3, "indicators-files"]], "Conclusion": [[2, "conclusion"], [17, "conclusion"]], "Logs CSV": [[4, "logs-csv"]], "Pandas (CSV or other data)": [[5, "pandas-csv-or-other-data"]], "Example Dataframe": [[5, "id1"]], "In Summary": [[5, "in-summary"]], "Polygon.io Backtesting": [[6, "polygon-io-backtesting"]], "ThetaData Backtesting": [[8, "thetadata-backtesting"]], "Yahoo": [[10, "yahoo"], [44, "module-lumibot.data_sources.yahoo_data"]], "Brokers": [[11, "brokers"]], "Alpaca": [[12, "alpaca"]], "Documentation": [[12, "module-lumibot.brokers.alpaca"], [19, "module-entities.asset"], [20, "module-entities.bars"], [22, "module-entities.order"], [45, "module-lumibot.strategies.strategy.Strategy"]], "Crypto Brokers (Using CCXT)": [[13, "crypto-brokers-using-ccxt"]], "Configuration Settings": [[13, "configuration-settings"]], "Running Your Strategy": [[13, "running-your-strategy"], [16, "running-your-strategy"]], "Full Example Strategy": [[13, "full-example-strategy"], [16, "full-example-strategy"]], "Interactive Brokers": [[14, "interactive-brokers"]], "Market Data Subscriptions": [[14, "market-data-subscriptions"]], "Two-Factor Authentication (2FA)": [[14, "two-factor-authentication-2fa"]], "Using a Secondary Username": [[14, "using-a-secondary-username"]], "Using a Paper Trading Account": [[14, "using-a-paper-trading-account"]], "Strategy Setup": [[14, "strategy-setup"]], "Interactive Brokers Configuration": [[14, "id1"], [17, "interactive-brokers-configuration"], [17, "id25"]], "Example Strategy": [[14, "example-strategy"]], "Interactive Brokers Legacy": [[15, "interactive-brokers-legacy"]], "Tradier": [[16, "tradier"]], "Getting Started": [[16, "getting-started"], [26, "getting-started"]], "Configuration": [[16, "configuration"]], "Deployment Guide": [[17, "deployment-guide"]], "Example Strategy for Deployment": [[17, "example-strategy-for-deployment"]], "Choosing Your Deployment Platform": [[17, "id1"]], "Deploying to Render": [[17, "id2"]], "Deploying to Replit": [[17, "id3"]], "Secrets Configuration": [[17, "secrets-configuration"]], "Broker Configuration": [[17, "broker-configuration"]], "Tradier Configuration": [[17, "tradier-configuration"], [17, "id21"]], "Alpaca Configuration": [[17, "alpaca-configuration"], [17, "id22"]], "Coinbase Configuration": [[17, "coinbase-configuration"], [17, "id23"]], "Kraken Configuration": [[17, "kraken-configuration"], [17, "id24"]], "Interactive Brokers-Legacy Configuration": [[17, "interactive-brokers-legacy-configuration"], [17, "id26"]], "General Environment Variables": [[17, "general-environment-variables"], [17, "id27"]], "Final Steps": [[17, "final-steps"]], "Entities": [[18, "entities"]], "Asset": [[19, "asset"]], "Bars": [[20, "bars"]], "Data": [[21, "module-entities.data"], [70, "data"]], "Order": [[22, "order"]], "Advanced Order Types": [[22, "advanced-order-types"]], "Order With Legs": [[22, "order-with-legs"]], "Position": [[23, "module-entities.position"]], "Trading Fee": [[24, "module-entities.trading_fee"]], "What is Lumibot?": [[25, "what-is-lumibot"]], "Lumiwealth": [[25, "id1"]], "Getting Started With Lumibot": [[25, "getting-started-with-lumibot"]], "Step 1: Install the Package": [[25, "step-1-install-the-package"]], "Step 2: Import the Following Modules": [[25, "step-2-import-the-following-modules"]], "Step 3: Create an Alpaca Paper Trading Account": [[25, "step-3-create-an-alpaca-paper-trading-account"]], "Step 4: Configure Your API Keys": [[25, "step-4-configure-your-api-keys"]], "Step 5: Create a Strategy Class": [[25, "step-5-create-a-strategy-class"]], "Step 6: Instantiate the Trader, Alpaca, and Strategy Classes": [[25, "step-6-instantiate-the-trader-alpaca-and-strategy-classes"]], "Step 7: Backtest the Strategy (Optional)": [[25, "step-7-backtest-the-strategy-optional"]], "Step 8: Run the Strategy": [[25, "step-8-run-the-strategy"]], "Adding Trading Fees": [[25, "adding-trading-fees"]], "Profiling to Improve Performance": [[25, "profiling-to-improve-performance"]], "Lumibot: Backtesting and Algorithmic Trading Library": [[26, "lumibot-backtesting-and-algorithmic-trading-library"]], "Step 1: Install Lumibot": [[26, "step-1-install-lumibot"]], "Step 2: Create a Strategy for Backtesting": [[26, "step-2-create-a-strategy-for-backtesting"]], "Step 3: Take Your Bot Live": [[26, "step-3-take-your-bot-live"]], "All Together": [[26, "all-together"]], "Additional Resources": [[26, "additional-resources"]], "Need Extra Help?": [[26, "need-extra-help"]], "Table of Contents": [[26, "table-of-contents"]], "Indices and tables": [[26, "indices-and-tables"]], "Lifecycle Methods": [[27, "lifecycle-methods"]], "def after_market_closes": [[28, "def-after-market-closes"]], "Reference": [[28, "reference"], [29, "reference"], [30, "reference"], [31, "reference"], [32, "reference"], [33, "reference"], [34, "reference"], [35, "reference"], [36, "reference"], [37, "reference"], [38, "reference"], [39, "reference"], [40, "reference"], [42, "reference"]], "def before_market_closes": [[29, "def-before-market-closes"]], "def before_market_opens": [[30, "def-before-market-opens"]], "def before_starting_trading": [[31, "def-before-starting-trading"]], "def initialize": [[32, "def-initialize"]], "def on_abrupt_closing": [[33, "def-on-abrupt-closing"]], "def on_bot_crash": [[34, "def-on-bot-crash"]], "def on_canceled_order": [[35, "def-on-canceled-order"]], "def on_filled_order": [[36, "def-on-filled-order"]], "def on_new_order": [[37, "def-on-new-order"]], "def on_parameters_updated": [[38, "def-on-parameters-updated"]], "def on_partially_filled_order": [[39, "def-on-partially-filled-order"]], "def on_trading_iteration": [[40, "def-on-trading-iteration"]], "Summary": [[41, "summary"]], "def trace_stats": [[42, "def-trace-stats"]], "Backtesting Broker": [[43, "module-lumibot.backtesting.backtesting_broker"]], "Data Source Backtesting": [[43, "module-lumibot.data_sources.data_source_backtesting"]], "Data Sources": [[44, "data-sources"]], "Data Source": [[44, "module-lumibot.data_sources.data_source"]], "Pandas": [[44, "module-lumibot.data_sources.pandas_data"]], "Module contents": [[44, "module-lumibot.data_sources"]], "Strategies": [[45, "strategies"]], "Traders": [[46, "traders"]], "Trader": [[46, "module-lumibot.traders.trader"]], "Strategy Methods": [[47, "strategy-methods"]], "Account Management": [[48, "account-management"]], "self.get_cash": [[49, "self-get-cash"], [55, "self-get-cash"]], "self.get_parameters": [[50, "self-get-parameters"], [56, "self-get-parameters"], [104, "self-get-parameters"], [115, "self-get-parameters"]], "self.get_portfolio_value": [[51, "self-get-portfolio-value"], [57, "self-get-portfolio-value"]], "self.get_position": [[52, "self-get-position"], [58, "self-get-position"]], "self.get_positions": [[53, "self-get-positions"], [59, "self-get-positions"]], "self.set_parameters": [[54, "self-set-parameters"], [60, "self-set-parameters"]], "Chart Functions": [[61, "chart-functions"]], "self.add_line": [[62, "self-add-line"], [66, "self-add-line"]], "self.add_marker": [[63, "self-add-marker"], [67, "self-add-marker"]], "self.get_lines_df": [[64, "self-get-lines-df"], [68, "self-get-lines-df"]], "self.get_markers_df": [[65, "self-get-markers-df"], [69, "self-get-markers-df"]], "self.cancel_realtime_bars": [[71, "self-cancel-realtime-bars"]], "self.get_historical_prices": [[72, "self-get-historical-prices"]], "self.get_historical_prices_for_assets": [[73, "self-get-historical-prices-for-assets"]], "self.get_last_price": [[74, "self-get-last-price"]], "self.get_last_prices": [[75, "self-get-last-prices"]], "self.get_next_trading_day": [[76, "self-get-next-trading-day"], [130, "self-get-next-trading-day"], [138, "self-get-next-trading-day"]], "self.get_quote": [[77, "self-get-quote"]], "self.get_realtime_bars": [[78, "self-get-realtime-bars"]], "self.get_yesterday_dividend": [[79, "self-get-yesterday-dividend"]], "self.get_yesterday_dividends": [[80, "self-get-yesterday-dividends"]], "self.start_realtime_bars": [[81, "self-start-realtime-bars"]], "DateTime": [[82, "datetime"]], "self.get_datetime": [[83, "self-get-datetime"], [92, "self-get-datetime"]], "self.get_datetime_range": [[84, "self-get-datetime-range"], [93, "self-get-datetime-range"]], "self.get_last_day": [[85, "self-get-last-day"], [94, "self-get-last-day"]], "self.get_last_minute": [[86, "self-get-last-minute"], [95, "self-get-last-minute"]], "self.get_round_day": [[87, "self-get-round-day"], [96, "self-get-round-day"]], "self.get_round_minute": [[88, "self-get-round-minute"], [97, "self-get-round-minute"]], "self.get_timestamp": [[89, "self-get-timestamp"], [98, "self-get-timestamp"]], "self.localize_datetime": [[90, "self-localize-datetime"], [99, "self-localize-datetime"]], "self.to_default_timezone": [[91, "self-to-default-timezone"], [100, "self-to-default-timezone"]], "Miscellaneous": [[101, "miscellaneous"]], "self.await_market_to_close": [[102, "self-await-market-to-close"], [113, "self-await-market-to-close"]], "self.await_market_to_open": [[103, "self-await-market-to-open"], [114, "self-await-market-to-open"]], "self.log_message": [[105, "self-log-message"], [116, "self-log-message"]], "self.set_market": [[106, "self-set-market"], [117, "self-set-market"]], "self.sleep": [[107, "self-sleep"], [118, "self-sleep"]], "self.update_parameters": [[108, "self-update-parameters"], [119, "self-update-parameters"]], "self.wait_for_order_execution": [[109, "self-wait-for-order-execution"], [120, "self-wait-for-order-execution"]], "self.wait_for_order_registration": [[110, "self-wait-for-order-registration"], [121, "self-wait-for-order-registration"]], "self.wait_for_orders_execution": [[111, "self-wait-for-orders-execution"], [122, "self-wait-for-orders-execution"]], "self.wait_for_orders_registration": [[112, "self-wait-for-orders-registration"], [123, "self-wait-for-orders-registration"]], "Options": [[124, "options"]], "self.get_chain": [[125, "self-get-chain"], [133, "self-get-chain"]], "self.get_chains": [[126, "self-get-chains"], [134, "self-get-chains"]], "self.get_expiration": [[127, "self-get-expiration"], [135, "self-get-expiration"]], "self.get_greeks": [[128, "self-get-greeks"], [136, "self-get-greeks"]], "self.get_multiplier": [[129, "self-get-multiplier"], [137, "self-get-multiplier"]], "self.get_strikes": [[131, "self-get-strikes"], [140, "self-get-strikes"]], "self.options_expiry_to_datetime_date": [[132, "self-options-expiry-to-datetime-date"], [141, "self-options-expiry-to-datetime-date"]], "self.get_option_expiration_after_date": [[139, "self-get-option-expiration-after-date"]], "Order Management": [[142, "order-management"]], "self.cancel_open_orders": [[143, "self-cancel-open-orders"], [154, "self-cancel-open-orders"]], "self.cancel_order": [[144, "self-cancel-order"], [155, "self-cancel-order"]], "self.cancel_orders": [[145, "self-cancel-orders"], [156, "self-cancel-orders"]], "self.create_order": [[146, "self-create-order"], [157, "self-create-order"]], "self.get_asset_potential_total": [[147, "self-get-asset-potential-total"], [158, "self-get-asset-potential-total"]], "self.get_order": [[148, "self-get-order"], [159, "self-get-order"]], "self.get_orders": [[149, "self-get-orders"], [160, "self-get-orders"]], "self.get_selling_order": [[150, "self-get-selling-order"], [161, "self-get-selling-order"]], "self.sell_all": [[151, "self-sell-all"], [162, "self-sell-all"]], "self.submit_order": [[152, "self-submit-order"], [163, "self-submit-order"]], "self.submit_orders": [[153, "self-submit-orders"], [164, "self-submit-orders"]], "Parameters": [[165, "parameters"]], "Strategy Properties": [[166, "strategy-properties"]], "self.cash": [[167, "self-cash"], [182, "self-cash"]], "self.first_iteration": [[168, "self-first-iteration"], [183, "self-first-iteration"]], "self.initial_budget": [[169, "self-initial-budget"], [184, "self-initial-budget"]], "self.is_backtesting": [[170, "self-is-backtesting"], [185, "self-is-backtesting"]], "self.last_on_trading_iteration_datetime": [[171, "self-last-on-trading-iteration-datetime"], [186, "self-last-on-trading-iteration-datetime"]], "self.minutes_before_closing": [[172, "self-minutes-before-closing"], [187, "self-minutes-before-closing"]], "self.minutes_before_opening": [[173, "self-minutes-before-opening"], [188, "self-minutes-before-opening"]], "self.name": [[174, "self-name"], [189, "self-name"]], "self.portfolio_value": [[175, "self-portfolio-value"], [190, "self-portfolio-value"]], "self.pytz": [[176, "self-pytz"], [181, "self-pytz"], [191, "self-pytz"]], "self.quote_asset": [[177, "self-quote-asset"], [192, "self-quote-asset"]], "self.sleeptime": [[178, "self-sleeptime"], [193, "self-sleeptime"]], "self.timezone": [[179, "self-timezone"], [194, "self-timezone"]], "self.unspent_money": [[180, "self-unspent-money"], [195, "self-unspent-money"]], "Variable Backup & Restore": [[196, "variable-backup-restore"]], "How It Works": [[196, "how-it-works"]], "Benefits of self.vars": [[196, "benefits-of-self-vars"]], "Usage Guide": [[196, "usage-guide"]], "Database Configuration": [[196, "database-configuration"]], "Database Storage Structure": [[196, "database-storage-structure"]]}, "indexentries": {"run_backtest() (in module lumibot.strategies.strategy.strategy)": [[1, "lumibot.strategies.strategy.Strategy.run_backtest"]], "asset_type_map (lumibot.brokers.alpaca.alpaca attribute)": [[12, "lumibot.brokers.alpaca.Alpaca.ASSET_TYPE_MAP"]], "alpaca (class in lumibot.brokers.alpaca)": [[12, "lumibot.brokers.alpaca.Alpaca"]], "orderdata (class in lumibot.brokers.alpaca)": [[12, "lumibot.brokers.alpaca.OrderData"]], "api (lumibot.brokers.alpaca.alpaca attribute)": [[12, "lumibot.brokers.alpaca.Alpaca.api"]], "cancel_order() (lumibot.brokers.alpaca.alpaca method)": [[12, "lumibot.brokers.alpaca.Alpaca.cancel_order"]], "get_historical_account_value() (lumibot.brokers.alpaca.alpaca method)": [[12, "lumibot.brokers.alpaca.Alpaca.get_historical_account_value"]], "get_time_to_close() (lumibot.brokers.alpaca.alpaca method)": [[12, "id0"], [12, "lumibot.brokers.alpaca.Alpaca.get_time_to_close"]], "get_time_to_open() (lumibot.brokers.alpaca.alpaca method)": [[12, "id1"], [12, "lumibot.brokers.alpaca.Alpaca.get_time_to_open"]], "get_timestamp() (lumibot.brokers.alpaca.alpaca method)": [[12, "id2"], [12, "lumibot.brokers.alpaca.Alpaca.get_timestamp"]], "is_market_open() (lumibot.brokers.alpaca.alpaca method)": [[12, "id3"], [12, "lumibot.brokers.alpaca.Alpaca.is_market_open"]], "lumibot.brokers.alpaca": [[12, "module-lumibot.brokers.alpaca"]], "map_asset_type() (lumibot.brokers.alpaca.alpaca method)": [[12, "lumibot.brokers.alpaca.Alpaca.map_asset_type"]], "module": [[12, "module-lumibot.brokers.alpaca"], [19, "module-entities.asset"], [20, "module-entities.bars"], [21, "module-entities.data"], [22, "module-entities.order"], [23, "module-entities.position"], [24, "module-entities.trading_fee"], [43, "module-lumibot.backtesting.backtesting_broker"], [43, "module-lumibot.data_sources.data_source_backtesting"], [44, "module-lumibot.data_sources"], [44, "module-lumibot.data_sources.data_source"], [44, "module-lumibot.data_sources.pandas_data"], [44, "module-lumibot.data_sources.yahoo_data"], [45, "module-lumibot.strategies.strategy.Strategy"], [46, "module-lumibot.traders.trader"]], "to_request_fields() (lumibot.brokers.alpaca.orderdata method)": [[12, "lumibot.brokers.alpaca.OrderData.to_request_fields"]], "asset (class in entities.asset)": [[19, "entities.asset.Asset"]], "asset.assettype (class in entities.asset)": [[19, "entities.asset.Asset.AssetType"]], "asset.optionright (class in entities.asset)": [[19, "entities.asset.Asset.OptionRight"]], "assetsmapping (class in entities.asset)": [[19, "entities.asset.AssetsMapping"]], "call (entities.asset.asset.optionright attribute)": [[19, "entities.asset.Asset.OptionRight.CALL"]], "crypto (entities.asset.asset.assettype attribute)": [[19, "entities.asset.Asset.AssetType.CRYPTO"]], "forex (entities.asset.asset.assettype attribute)": [[19, "entities.asset.Asset.AssetType.FOREX"]], "future (entities.asset.asset.assettype attribute)": [[19, "entities.asset.Asset.AssetType.FUTURE"]], "index (entities.asset.asset.assettype attribute)": [[19, "entities.asset.Asset.AssetType.INDEX"]], "multileg (entities.asset.asset.assettype attribute)": [[19, "entities.asset.Asset.AssetType.MULTILEG"]], "option (entities.asset.asset.assettype attribute)": [[19, "entities.asset.Asset.AssetType.OPTION"]], "put (entities.asset.asset.optionright attribute)": [[19, "entities.asset.Asset.OptionRight.PUT"]], "stock (entities.asset.asset.assettype attribute)": [[19, "entities.asset.Asset.AssetType.STOCK"]], "_asset_types (entities.asset.asset attribute)": [[19, "entities.asset.Asset._asset_types"]], "_right (entities.asset.asset attribute)": [[19, "entities.asset.Asset._right"]], "asset_type (entities.asset.asset attribute)": [[19, "entities.asset.Asset.asset_type"], [19, "id0"]], "asset_type_must_be_one_of() (entities.asset.asset method)": [[19, "entities.asset.Asset.asset_type_must_be_one_of"], [19, "id1"]], "entities.asset": [[19, "module-entities.asset"]], "expiration (entities.asset.asset attribute)": [[19, "entities.asset.Asset.expiration"], [19, "id2"]], "from_dict() (entities.asset.asset class method)": [[19, "entities.asset.Asset.from_dict"]], "is_valid() (entities.asset.asset method)": [[19, "entities.asset.Asset.is_valid"]], "multiplier (entities.asset.asset attribute)": [[19, "entities.asset.Asset.multiplier"], [19, "id3"]], "precision (entities.asset.asset attribute)": [[19, "entities.asset.Asset.precision"], [19, "id4"]], "right (entities.asset.asset attribute)": [[19, "entities.asset.Asset.right"], [19, "id5"]], "right_must_be_one_of() (entities.asset.asset method)": [[19, "entities.asset.Asset.right_must_be_one_of"], [19, "id6"]], "strike (entities.asset.asset attribute)": [[19, "entities.asset.Asset.strike"], [19, "id7"]], "symbol (entities.asset.asset attribute)": [[19, "entities.asset.Asset.symbol"], [19, "id8"]], "symbol2asset() (entities.asset.asset class method)": [[19, "entities.asset.Asset.symbol2asset"]], "to_dict() (entities.asset.asset method)": [[19, "entities.asset.Asset.to_dict"]], "underlying_asset (entities.asset.asset attribute)": [[19, "entities.asset.Asset.underlying_asset"]], "bars (class in entities.bars)": [[20, "entities.bars.Bars"]], "nobardatafound": [[20, "entities.bars.NoBarDataFound"]], "aggregate_bars() (entities.bars.bars method)": [[20, "entities.bars.Bars.aggregate_bars"], [20, "id0"]], "entities.bars": [[20, "module-entities.bars"]], "filter() (entities.bars.bars method)": [[20, "entities.bars.Bars.filter"]], "get_last_dividend() (entities.bars.bars method)": [[20, "entities.bars.Bars.get_last_dividend"], [20, "id1"]], "get_last_price() (entities.bars.bars method)": [[20, "entities.bars.Bars.get_last_price"], [20, "id2"]], "get_momentum() (entities.bars.bars method)": [[20, "entities.bars.Bars.get_momentum"], [20, "id3"]], "get_total_dividends() (entities.bars.bars method)": [[20, "entities.bars.Bars.get_total_dividends"]], "get_total_return() (entities.bars.bars method)": [[20, "entities.bars.Bars.get_total_return"]], "get_total_return_pct() (entities.bars.bars method)": [[20, "entities.bars.Bars.get_total_return_pct"]], "get_total_return_pct_change() (entities.bars.bars method)": [[20, "entities.bars.Bars.get_total_return_pct_change"]], "get_total_stock_splits() (entities.bars.bars method)": [[20, "entities.bars.Bars.get_total_stock_splits"]], "get_total_volume() (entities.bars.bars method)": [[20, "entities.bars.Bars.get_total_volume"], [20, "id4"]], "parse_bar_list() (entities.bars.bars class method)": [[20, "entities.bars.Bars.parse_bar_list"]], "split() (entities.bars.bars method)": [[20, "entities.bars.Bars.split"]], "data (class in entities.data)": [[21, "entities.data.Data"]], "min_timestep (entities.data.data attribute)": [[21, "entities.data.Data.MIN_TIMESTEP"]], "timestep_mapping (entities.data.data attribute)": [[21, "entities.data.Data.TIMESTEP_MAPPING"]], "_get_bars_dict() (entities.data.data method)": [[21, "entities.data.Data._get_bars_dict"]], "asset (entities.data.data attribute)": [[21, "entities.data.Data.asset"]], "check_data() (entities.data.data method)": [[21, "entities.data.Data.check_data"], [21, "id0"]], "columns() (entities.data.data method)": [[21, "entities.data.Data.columns"], [21, "id1"]], "datalines (entities.data.data attribute)": [[21, "entities.data.Data.datalines"]], "date_end (entities.data.data attribute)": [[21, "entities.data.Data.date_end"]], "date_start (entities.data.data attribute)": [[21, "entities.data.Data.date_start"]], "df (entities.data.data attribute)": [[21, "entities.data.Data.df"]], "entities.data": [[21, "module-entities.data"]], "get_bars() (entities.data.data method)": [[21, "entities.data.Data.get_bars"], [21, "id2"]], "get_bars_between_dates() (entities.data.data method)": [[21, "entities.data.Data.get_bars_between_dates"]], "get_iter_count() (entities.data.data method)": [[21, "entities.data.Data.get_iter_count"], [21, "id3"]], "get_last_price() (entities.data.data method)": [[21, "entities.data.Data.get_last_price"], [21, "id4"]], "get_quote() (entities.data.data method)": [[21, "entities.data.Data.get_quote"]], "iter_index (entities.data.data attribute)": [[21, "entities.data.Data.iter_index"]], "repair_times_and_fill() (entities.data.data method)": [[21, "entities.data.Data.repair_times_and_fill"], [21, "id5"]], "set_date_format() (entities.data.data method)": [[21, "entities.data.Data.set_date_format"], [21, "id6"]], "set_dates() (entities.data.data method)": [[21, "entities.data.Data.set_dates"], [21, "id7"]], "set_times() (entities.data.data method)": [[21, "entities.data.Data.set_times"], [21, "id8"]], "sybmol (entities.data.data attribute)": [[21, "entities.data.Data.sybmol"]], "timestep (entities.data.data attribute)": [[21, "entities.data.Data.timestep"]], "to_datalines() (entities.data.data method)": [[21, "entities.data.Data.to_datalines"], [21, "id9"]], "trading_hours_end (entities.data.data attribute)": [[21, "entities.data.Data.trading_hours_end"]], "trading_hours_start (entities.data.data attribute)": [[21, "entities.data.Data.trading_hours_start"]], "trim_data() (entities.data.data method)": [[21, "entities.data.Data.trim_data"], [21, "id10"]], "bracket (entities.order.order.orderclass attribute)": [[22, "entities.order.Order.OrderClass.BRACKET"]], "bracket (entities.order.order.ordertype attribute)": [[22, "entities.order.Order.OrderType.BRACKET"]], "buy (entities.order.order.orderside attribute)": [[22, "entities.order.Order.OrderSide.BUY"]], "buy_to_close (entities.order.order.orderside attribute)": [[22, "entities.order.Order.OrderSide.BUY_TO_CLOSE"]], "buy_to_cover (entities.order.order.orderside attribute)": [[22, "entities.order.Order.OrderSide.BUY_TO_COVER"]], "buy_to_open (entities.order.order.orderside attribute)": [[22, "entities.order.Order.OrderSide.BUY_TO_OPEN"]], "canceled (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.CANCELED"]], "cancelling (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.CANCELLING"]], "cash_settled (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.CASH_SETTLED"]], "error (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.ERROR"]], "expired (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.EXPIRED"]], "filled (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.FILLED"]], "limit (entities.order.order.ordertype attribute)": [[22, "entities.order.Order.OrderType.LIMIT"]], "market (entities.order.order.ordertype attribute)": [[22, "entities.order.Order.OrderType.MARKET"]], "multileg (entities.order.order.orderclass attribute)": [[22, "entities.order.Order.OrderClass.MULTILEG"]], "new (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.NEW"]], "oco (entities.order.order.orderclass attribute)": [[22, "entities.order.Order.OrderClass.OCO"]], "oco (entities.order.order.ordertype attribute)": [[22, "entities.order.Order.OrderType.OCO"]], "open (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.OPEN"]], "oto (entities.order.order.orderclass attribute)": [[22, "entities.order.Order.OrderClass.OTO"]], "oto (entities.order.order.ordertype attribute)": [[22, "entities.order.Order.OrderType.OTO"]], "order (class in entities.order)": [[22, "entities.order.Order"]], "order.orderclass (class in entities.order)": [[22, "entities.order.Order.OrderClass"]], "order.orderside (class in entities.order)": [[22, "entities.order.Order.OrderSide"]], "order.orderstatus (class in entities.order)": [[22, "entities.order.Order.OrderStatus"]], "order.ordertype (class in entities.order)": [[22, "entities.order.Order.OrderType"]], "order.transaction (class in entities.order)": [[22, "entities.order.Order.Transaction"]], "partially_filled (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.PARTIALLY_FILLED"]], "sell (entities.order.order.orderside attribute)": [[22, "entities.order.Order.OrderSide.SELL"]], "sell_short (entities.order.order.orderside attribute)": [[22, "entities.order.Order.OrderSide.SELL_SHORT"]], "sell_to_close (entities.order.order.orderside attribute)": [[22, "entities.order.Order.OrderSide.SELL_TO_CLOSE"]], "sell_to_open (entities.order.order.orderside attribute)": [[22, "entities.order.Order.OrderSide.SELL_TO_OPEN"]], "stop (entities.order.order.ordertype attribute)": [[22, "entities.order.Order.OrderType.STOP"]], "stop_limit (entities.order.order.ordertype attribute)": [[22, "entities.order.Order.OrderType.STOP_LIMIT"]], "submitted (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.SUBMITTED"]], "trail (entities.order.order.ordertype attribute)": [[22, "entities.order.Order.OrderType.TRAIL"]], "unprocessed (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.UNPROCESSED"]], "add_child_order() (entities.order.order method)": [[22, "entities.order.Order.add_child_order"]], "add_transaction() (entities.order.order method)": [[22, "entities.order.Order.add_transaction"]], "avg_fill_price (entities.order.order property)": [[22, "entities.order.Order.avg_fill_price"]], "cash_pending() (entities.order.order method)": [[22, "entities.order.Order.cash_pending"]], "entities.order": [[22, "module-entities.order"]], "equivalent_status() (entities.order.order method)": [[22, "entities.order.Order.equivalent_status"]], "from_dict() (entities.order.order class method)": [[22, "entities.order.Order.from_dict"]], "get_fill_price() (entities.order.order method)": [[22, "entities.order.Order.get_fill_price"]], "get_increment() (entities.order.order method)": [[22, "entities.order.Order.get_increment"]], "is_active() (entities.order.order method)": [[22, "entities.order.Order.is_active"]], "is_buy_order() (entities.order.order method)": [[22, "entities.order.Order.is_buy_order"]], "is_canceled() (entities.order.order method)": [[22, "entities.order.Order.is_canceled"]], "is_equivalent_status() (entities.order.order class method)": [[22, "entities.order.Order.is_equivalent_status"]], "is_filled() (entities.order.order method)": [[22, "entities.order.Order.is_filled"]], "is_option() (entities.order.order method)": [[22, "entities.order.Order.is_option"]], "is_parent() (entities.order.order method)": [[22, "entities.order.Order.is_parent"]], "is_sell_order() (entities.order.order method)": [[22, "entities.order.Order.is_sell_order"]], "price (entities.order.order.transaction attribute)": [[22, "entities.order.Order.Transaction.price"]], "quantity (entities.order.order property)": [[22, "entities.order.Order.quantity"]], "quantity (entities.order.order.transaction attribute)": [[22, "entities.order.Order.Transaction.quantity"]], "set_canceled() (entities.order.order method)": [[22, "entities.order.Order.set_canceled"]], "set_error() (entities.order.order method)": [[22, "entities.order.Order.set_error"]], "set_filled() (entities.order.order method)": [[22, "entities.order.Order.set_filled"]], "set_identifier() (entities.order.order method)": [[22, "entities.order.Order.set_identifier"]], "set_new() (entities.order.order method)": [[22, "entities.order.Order.set_new"]], "set_partially_filled() (entities.order.order method)": [[22, "entities.order.Order.set_partially_filled"]], "status (entities.order.order property)": [[22, "entities.order.Order.status"]], "to_dict() (entities.order.order method)": [[22, "entities.order.Order.to_dict"]], "to_position() (entities.order.order method)": [[22, "entities.order.Order.to_position"]], "update_raw() (entities.order.order method)": [[22, "entities.order.Order.update_raw"]], "update_trail_stop_price() (entities.order.order method)": [[22, "entities.order.Order.update_trail_stop_price"]], "wait_to_be_closed() (entities.order.order method)": [[22, "entities.order.Order.wait_to_be_closed"]], "wait_to_be_registered() (entities.order.order method)": [[22, "entities.order.Order.wait_to_be_registered"]], "was_transmitted() (entities.order.order method)": [[22, "entities.order.Order.was_transmitted"]], "position (class in entities.position)": [[23, "entities.position.Position"]], "add_order() (entities.position.position method)": [[23, "entities.position.Position.add_order"]], "asset (entities.position.position attribute)": [[23, "entities.position.Position.asset"]], "available (entities.position.position attribute)": [[23, "entities.position.Position.available"]], "available (entities.position.position property)": [[23, "id0"]], "avg_fill_price (entities.position.position attribute)": [[23, "entities.position.Position.avg_fill_price"]], "entities.position": [[23, "module-entities.position"]], "from_dict() (entities.position.position class method)": [[23, "entities.position.Position.from_dict"]], "get_selling_order() (entities.position.position method)": [[23, "entities.position.Position.get_selling_order"]], "hold (entities.position.position attribute)": [[23, "entities.position.Position.hold"]], "hold (entities.position.position property)": [[23, "id1"]], "orders (entities.position.position attribute)": [[23, "entities.position.Position.orders"]], "quantity (entities.position.position attribute)": [[23, "entities.position.Position.quantity"]], "quantity (entities.position.position property)": [[23, "id2"]], "strategy (entities.position.position attribute)": [[23, "entities.position.Position.strategy"]], "symbol (entities.position.position attribute)": [[23, "entities.position.Position.symbol"]], "to_dict() (entities.position.position method)": [[23, "entities.position.Position.to_dict"]], "value_type() (entities.position.position method)": [[23, "entities.position.Position.value_type"]], "tradingfee (class in entities.trading_fee)": [[24, "entities.trading_fee.TradingFee"]], "entities.trading_fee": [[24, "module-entities.trading_fee"]], "after_market_closes() (in module lumibot.strategies.strategy.strategy)": [[28, "lumibot.strategies.strategy.Strategy.after_market_closes"]], "before_market_closes() (in module lumibot.strategies.strategy.strategy)": [[29, "lumibot.strategies.strategy.Strategy.before_market_closes"]], "before_market_opens() (in module lumibot.strategies.strategy.strategy)": [[30, "lumibot.strategies.strategy.Strategy.before_market_opens"]], "before_starting_trading() (in module lumibot.strategies.strategy.strategy)": [[31, "lumibot.strategies.strategy.Strategy.before_starting_trading"]], "initialize() (in module lumibot.strategies.strategy.strategy)": [[32, "lumibot.strategies.strategy.Strategy.initialize"]], "on_abrupt_closing() (in module lumibot.strategies.strategy.strategy)": [[33, "lumibot.strategies.strategy.Strategy.on_abrupt_closing"]], "on_bot_crash() (in module lumibot.strategies.strategy.strategy)": [[34, "lumibot.strategies.strategy.Strategy.on_bot_crash"]], "on_canceled_order() (in module lumibot.strategies.strategy.strategy)": [[35, "lumibot.strategies.strategy.Strategy.on_canceled_order"]], "on_filled_order() (in module lumibot.strategies.strategy.strategy)": [[36, "lumibot.strategies.strategy.Strategy.on_filled_order"]], "on_new_order() (in module lumibot.strategies.strategy.strategy)": [[37, "lumibot.strategies.strategy.Strategy.on_new_order"]], "on_parameters_updated() (in module lumibot.strategies.strategy.strategy)": [[38, "lumibot.strategies.strategy.Strategy.on_parameters_updated"]], "on_partially_filled_order() (in module lumibot.strategies.strategy.strategy)": [[39, "lumibot.strategies.strategy.Strategy.on_partially_filled_order"]], "on_trading_iteration() (in module lumibot.strategies.strategy.strategy)": [[40, "lumibot.strategies.strategy.Strategy.on_trading_iteration"]], "trace_stats() (in module lumibot.strategies.strategy.strategy)": [[42, "lumibot.strategies.strategy.Strategy.trace_stats"]], "backtestingbroker (class in lumibot.backtesting.backtesting_broker)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker"]], "datasourcebacktesting (class in lumibot.data_sources.data_source_backtesting)": [[43, "lumibot.data_sources.data_source_backtesting.DataSourceBacktesting"]], "is_backtesting_broker (lumibot.backtesting.backtesting_broker.backtestingbroker attribute)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.IS_BACKTESTING_BROKER"]], "is_backtesting_data_source (lumibot.data_sources.data_source_backtesting.datasourcebacktesting attribute)": [[43, "lumibot.data_sources.data_source_backtesting.DataSourceBacktesting.IS_BACKTESTING_DATA_SOURCE"]], "calculate_trade_cost() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.calculate_trade_cost"]], "cancel_order() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.cancel_order"]], "cash_settle_options_contract() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.cash_settle_options_contract"]], "datetime (lumibot.backtesting.backtesting_broker.backtestingbroker property)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.datetime"]], "get_datetime() (lumibot.data_sources.data_source_backtesting.datasourcebacktesting method)": [[43, "lumibot.data_sources.data_source_backtesting.DataSourceBacktesting.get_datetime"]], "get_datetime_range() (lumibot.data_sources.data_source_backtesting.datasourcebacktesting method)": [[43, "lumibot.data_sources.data_source_backtesting.DataSourceBacktesting.get_datetime_range"]], "get_historical_account_value() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.get_historical_account_value"]], "get_last_bar() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.get_last_bar"]], "get_time_to_close() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.get_time_to_close"]], "get_time_to_open() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.get_time_to_open"]], "is_market_open() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.is_market_open"]], "limit_order() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.limit_order"]], "lumibot.backtesting.backtesting_broker": [[43, "module-lumibot.backtesting.backtesting_broker"]], "lumibot.data_sources.data_source_backtesting": [[43, "module-lumibot.data_sources.data_source_backtesting"]], "process_expired_option_contracts() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.process_expired_option_contracts"]], "process_pending_orders() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.process_pending_orders"]], "should_continue() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.should_continue"]], "stop_order() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.stop_order"]], "submit_order() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.submit_order"]], "submit_orders() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.submit_orders"]], "default_pytz (lumibot.data_sources.data_source.datasource attribute)": [[44, "lumibot.data_sources.data_source.DataSource.DEFAULT_PYTZ"]], "default_timezone (lumibot.data_sources.data_source.datasource attribute)": [[44, "lumibot.data_sources.data_source.DataSource.DEFAULT_TIMEZONE"]], "datasource (class in lumibot.data_sources.data_source)": [[44, "lumibot.data_sources.data_source.DataSource"]], "is_backtesting_data_source (lumibot.data_sources.data_source.datasource attribute)": [[44, "lumibot.data_sources.data_source.DataSource.IS_BACKTESTING_DATA_SOURCE"]], "min_timestep (lumibot.data_sources.data_source.datasource attribute)": [[44, "lumibot.data_sources.data_source.DataSource.MIN_TIMESTEP"]], "min_timestep (lumibot.data_sources.yahoo_data.yahoodata attribute)": [[44, "lumibot.data_sources.yahoo_data.YahooData.MIN_TIMESTEP"]], "pandasdata (class in lumibot.data_sources.pandas_data)": [[44, "lumibot.data_sources.pandas_data.PandasData"]], "source (lumibot.data_sources.data_source.datasource attribute)": [[44, "lumibot.data_sources.data_source.DataSource.SOURCE"]], "source (lumibot.data_sources.pandas_data.pandasdata attribute)": [[44, "lumibot.data_sources.pandas_data.PandasData.SOURCE"]], "source (lumibot.data_sources.yahoo_data.yahoodata attribute)": [[44, "lumibot.data_sources.yahoo_data.YahooData.SOURCE"]], "timestep_mapping (lumibot.data_sources.data_source.datasource attribute)": [[44, "lumibot.data_sources.data_source.DataSource.TIMESTEP_MAPPING"]], "timestep_mapping (lumibot.data_sources.pandas_data.pandasdata attribute)": [[44, "lumibot.data_sources.pandas_data.PandasData.TIMESTEP_MAPPING"]], "timestep_mapping (lumibot.data_sources.yahoo_data.yahoodata attribute)": [[44, "lumibot.data_sources.yahoo_data.YahooData.TIMESTEP_MAPPING"]], "yahoodata (class in lumibot.data_sources.yahoo_data)": [[44, "lumibot.data_sources.yahoo_data.YahooData"]], "calculate_greeks() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.calculate_greeks"]], "clean_trading_times() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.clean_trading_times"]], "convert_timestep_str_to_timedelta() (lumibot.data_sources.data_source.datasource static method)": [[44, "lumibot.data_sources.data_source.DataSource.convert_timestep_str_to_timedelta"]], "find_asset_in_data_store() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.find_asset_in_data_store"]], "get_asset_by_name() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_asset_by_name"]], "get_asset_by_symbol() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_asset_by_symbol"]], "get_assets() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_assets"]], "get_bars() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_bars"]], "get_chains() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_chains"]], "get_chains() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_chains"]], "get_chains() (lumibot.data_sources.yahoo_data.yahoodata method)": [[44, "lumibot.data_sources.yahoo_data.YahooData.get_chains"]], "get_datetime() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_datetime"]], "get_datetime_range() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_datetime_range"]], "get_historical_prices() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_historical_prices"]], "get_historical_prices() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_historical_prices"]], "get_historical_prices() (lumibot.data_sources.yahoo_data.yahoodata method)": [[44, "lumibot.data_sources.yahoo_data.YahooData.get_historical_prices"]], "get_last_day() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_last_day"]], "get_last_minute() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_last_minute"]], "get_last_price() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_last_price"]], "get_last_price() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_last_price"]], "get_last_price() (lumibot.data_sources.yahoo_data.yahoodata method)": [[44, "lumibot.data_sources.yahoo_data.YahooData.get_last_price"]], "get_last_prices() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_last_prices"]], "get_last_prices() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_last_prices"]], "get_round_day() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_round_day"]], "get_round_minute() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_round_minute"]], "get_start_datetime_and_ts_unit() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_start_datetime_and_ts_unit"]], "get_strikes() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_strikes"]], "get_strikes() (lumibot.data_sources.yahoo_data.yahoodata method)": [[44, "lumibot.data_sources.yahoo_data.YahooData.get_strikes"]], "get_timestamp() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_timestamp"]], "get_timestep() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_timestep"]], "get_trading_days_pandas() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_trading_days_pandas"]], "get_yesterday_dividend() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_yesterday_dividend"]], "get_yesterday_dividend() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_yesterday_dividend"]], "get_yesterday_dividends() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_yesterday_dividends"]], "get_yesterday_dividends() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_yesterday_dividends"]], "load_data() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.load_data"]], "localize_datetime() (lumibot.data_sources.data_source.datasource class method)": [[44, "lumibot.data_sources.data_source.DataSource.localize_datetime"]], "lumibot.data_sources": [[44, "module-lumibot.data_sources"]], "lumibot.data_sources.data_source": [[44, "module-lumibot.data_sources.data_source"]], "lumibot.data_sources.pandas_data": [[44, "module-lumibot.data_sources.pandas_data"]], "lumibot.data_sources.yahoo_data": [[44, "module-lumibot.data_sources.yahoo_data"]], "query_greeks() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.query_greeks"]], "to_default_timezone() (lumibot.data_sources.data_source.datasource class method)": [[44, "lumibot.data_sources.data_source.DataSource.to_default_timezone"]], "update_date_index() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.update_date_index"]], "lumibot.strategies.strategy.strategy": [[45, "module-lumibot.strategies.strategy.Strategy"]], "trader (class in lumibot.traders.trader)": [[46, "lumibot.traders.trader.Trader"]], "add_strategy() (lumibot.traders.trader.trader method)": [[46, "lumibot.traders.trader.Trader.add_strategy"]], "is_backtest_broker (lumibot.traders.trader.trader property)": [[46, "lumibot.traders.trader.Trader.is_backtest_broker"]], "lumibot.traders.trader": [[46, "module-lumibot.traders.trader"]], "run_all() (lumibot.traders.trader.trader method)": [[46, "lumibot.traders.trader.Trader.run_all"]], "run_all_async() (lumibot.traders.trader.trader method)": [[46, "lumibot.traders.trader.Trader.run_all_async"]], "stop_all() (lumibot.traders.trader.trader method)": [[46, "lumibot.traders.trader.Trader.stop_all"]], "get_cash() (in module lumibot.strategies.strategy.strategy)": [[49, "lumibot.strategies.strategy.Strategy.get_cash"], [55, "lumibot.strategies.strategy.Strategy.get_cash"]], "get_parameters() (in module lumibot.strategies.strategy.strategy)": [[50, "lumibot.strategies.strategy.Strategy.get_parameters"], [56, "lumibot.strategies.strategy.Strategy.get_parameters"], [104, "lumibot.strategies.strategy.Strategy.get_parameters"], [115, "lumibot.strategies.strategy.Strategy.get_parameters"]], "get_portfolio_value() (in module lumibot.strategies.strategy.strategy)": [[51, "lumibot.strategies.strategy.Strategy.get_portfolio_value"], [57, "lumibot.strategies.strategy.Strategy.get_portfolio_value"]], "get_position() (in module lumibot.strategies.strategy.strategy)": [[52, "lumibot.strategies.strategy.Strategy.get_position"], [58, "lumibot.strategies.strategy.Strategy.get_position"]], "get_positions() (in module lumibot.strategies.strategy.strategy)": [[53, "lumibot.strategies.strategy.Strategy.get_positions"], [59, "lumibot.strategies.strategy.Strategy.get_positions"]], "set_parameters() (in module lumibot.strategies.strategy.strategy)": [[54, "lumibot.strategies.strategy.Strategy.set_parameters"], [60, "lumibot.strategies.strategy.Strategy.set_parameters"]], "add_line() (in module lumibot.strategies.strategy.strategy)": [[62, "lumibot.strategies.strategy.Strategy.add_line"], [66, "lumibot.strategies.strategy.Strategy.add_line"]], "add_marker() (in module lumibot.strategies.strategy.strategy)": [[63, "lumibot.strategies.strategy.Strategy.add_marker"], [67, "lumibot.strategies.strategy.Strategy.add_marker"]], "get_lines_df() (in module lumibot.strategies.strategy.strategy)": [[64, "lumibot.strategies.strategy.Strategy.get_lines_df"], [68, "lumibot.strategies.strategy.Strategy.get_lines_df"]], "get_markers_df() (in module lumibot.strategies.strategy.strategy)": [[65, "lumibot.strategies.strategy.Strategy.get_markers_df"], [69, "lumibot.strategies.strategy.Strategy.get_markers_df"]], "cancel_realtime_bars() (in module lumibot.strategies.strategy.strategy)": [[71, "lumibot.strategies.strategy.Strategy.cancel_realtime_bars"]], "get_historical_prices() (in module lumibot.strategies.strategy.strategy)": [[72, "lumibot.strategies.strategy.Strategy.get_historical_prices"]], "get_historical_prices_for_assets() (in module lumibot.strategies.strategy.strategy)": [[73, "lumibot.strategies.strategy.Strategy.get_historical_prices_for_assets"]], "get_last_price() (in module lumibot.strategies.strategy.strategy)": [[74, "lumibot.strategies.strategy.Strategy.get_last_price"]], "get_last_prices() (in module lumibot.strategies.strategy.strategy)": [[75, "lumibot.strategies.strategy.Strategy.get_last_prices"]], "get_next_trading_day() (in module lumibot.strategies.strategy.strategy)": [[76, "lumibot.strategies.strategy.Strategy.get_next_trading_day"], [130, "lumibot.strategies.strategy.Strategy.get_next_trading_day"], [138, "lumibot.strategies.strategy.Strategy.get_next_trading_day"]], "get_quote() (in module lumibot.strategies.strategy.strategy)": [[77, "lumibot.strategies.strategy.Strategy.get_quote"]], "get_realtime_bars() (in module lumibot.strategies.strategy.strategy)": [[78, "lumibot.strategies.strategy.Strategy.get_realtime_bars"]], "get_yesterday_dividend() (in module lumibot.strategies.strategy.strategy)": [[79, "lumibot.strategies.strategy.Strategy.get_yesterday_dividend"]], "get_yesterday_dividends() (in module lumibot.strategies.strategy.strategy)": [[80, "lumibot.strategies.strategy.Strategy.get_yesterday_dividends"]], "start_realtime_bars() (in module lumibot.strategies.strategy.strategy)": [[81, "lumibot.strategies.strategy.Strategy.start_realtime_bars"]], "get_datetime() (in module lumibot.strategies.strategy.strategy)": [[83, "lumibot.strategies.strategy.Strategy.get_datetime"], [92, "lumibot.strategies.strategy.Strategy.get_datetime"]], "get_datetime_range() (in module lumibot.strategies.strategy.strategy)": [[84, "lumibot.strategies.strategy.Strategy.get_datetime_range"], [93, "lumibot.strategies.strategy.Strategy.get_datetime_range"]], "get_last_day() (in module lumibot.strategies.strategy.strategy)": [[85, "lumibot.strategies.strategy.Strategy.get_last_day"], [94, "lumibot.strategies.strategy.Strategy.get_last_day"]], "get_last_minute() (in module lumibot.strategies.strategy.strategy)": [[86, "lumibot.strategies.strategy.Strategy.get_last_minute"], [95, "lumibot.strategies.strategy.Strategy.get_last_minute"]], "get_round_day() (in module lumibot.strategies.strategy.strategy)": [[87, "lumibot.strategies.strategy.Strategy.get_round_day"], [96, "lumibot.strategies.strategy.Strategy.get_round_day"]], "get_round_minute() (in module lumibot.strategies.strategy.strategy)": [[88, "lumibot.strategies.strategy.Strategy.get_round_minute"], [97, "lumibot.strategies.strategy.Strategy.get_round_minute"]], "get_timestamp() (in module lumibot.strategies.strategy.strategy)": [[89, "lumibot.strategies.strategy.Strategy.get_timestamp"], [98, "lumibot.strategies.strategy.Strategy.get_timestamp"]], "localize_datetime() (in module lumibot.strategies.strategy.strategy)": [[90, "lumibot.strategies.strategy.Strategy.localize_datetime"], [99, "lumibot.strategies.strategy.Strategy.localize_datetime"]], "to_default_timezone() (in module lumibot.strategies.strategy.strategy)": [[91, "lumibot.strategies.strategy.Strategy.to_default_timezone"], [100, "lumibot.strategies.strategy.Strategy.to_default_timezone"]], "await_market_to_close() (in module lumibot.strategies.strategy.strategy)": [[102, "lumibot.strategies.strategy.Strategy.await_market_to_close"], [113, "lumibot.strategies.strategy.Strategy.await_market_to_close"]], "await_market_to_open() (in module lumibot.strategies.strategy.strategy)": [[103, "lumibot.strategies.strategy.Strategy.await_market_to_open"], [114, "lumibot.strategies.strategy.Strategy.await_market_to_open"]], "log_message() (in module lumibot.strategies.strategy.strategy)": [[105, "lumibot.strategies.strategy.Strategy.log_message"], [116, "lumibot.strategies.strategy.Strategy.log_message"]], "set_market() (in module lumibot.strategies.strategy.strategy)": [[106, "lumibot.strategies.strategy.Strategy.set_market"], [117, "lumibot.strategies.strategy.Strategy.set_market"]], "sleep() (in module lumibot.strategies.strategy.strategy)": [[107, "lumibot.strategies.strategy.Strategy.sleep"], [118, "lumibot.strategies.strategy.Strategy.sleep"]], "update_parameters() (in module lumibot.strategies.strategy.strategy)": [[108, "lumibot.strategies.strategy.Strategy.update_parameters"], [119, "lumibot.strategies.strategy.Strategy.update_parameters"]], "wait_for_order_execution() (in module lumibot.strategies.strategy.strategy)": [[109, "lumibot.strategies.strategy.Strategy.wait_for_order_execution"], [120, "lumibot.strategies.strategy.Strategy.wait_for_order_execution"]], "wait_for_order_registration() (in module lumibot.strategies.strategy.strategy)": [[110, "lumibot.strategies.strategy.Strategy.wait_for_order_registration"], [121, "lumibot.strategies.strategy.Strategy.wait_for_order_registration"]], "wait_for_orders_execution() (in module lumibot.strategies.strategy.strategy)": [[111, "lumibot.strategies.strategy.Strategy.wait_for_orders_execution"], [122, "lumibot.strategies.strategy.Strategy.wait_for_orders_execution"]], "wait_for_orders_registration() (in module lumibot.strategies.strategy.strategy)": [[112, "lumibot.strategies.strategy.Strategy.wait_for_orders_registration"], [123, "lumibot.strategies.strategy.Strategy.wait_for_orders_registration"]], "get_chain() (in module lumibot.strategies.strategy.strategy)": [[125, "lumibot.strategies.strategy.Strategy.get_chain"], [133, "lumibot.strategies.strategy.Strategy.get_chain"]], "get_chains() (in module lumibot.strategies.strategy.strategy)": [[126, "lumibot.strategies.strategy.Strategy.get_chains"], [134, "lumibot.strategies.strategy.Strategy.get_chains"]], "get_expiration() (in module lumibot.strategies.strategy.strategy)": [[127, "lumibot.strategies.strategy.Strategy.get_expiration"], [135, "lumibot.strategies.strategy.Strategy.get_expiration"]], "get_greeks() (in module lumibot.strategies.strategy.strategy)": [[128, "lumibot.strategies.strategy.Strategy.get_greeks"], [136, "lumibot.strategies.strategy.Strategy.get_greeks"]], "get_multiplier() (in module lumibot.strategies.strategy.strategy)": [[129, "lumibot.strategies.strategy.Strategy.get_multiplier"], [137, "lumibot.strategies.strategy.Strategy.get_multiplier"]], "get_strikes() (in module lumibot.strategies.strategy.strategy)": [[131, "lumibot.strategies.strategy.Strategy.get_strikes"], [140, "lumibot.strategies.strategy.Strategy.get_strikes"]], "options_expiry_to_datetime_date() (in module lumibot.strategies.strategy.strategy)": [[132, "lumibot.strategies.strategy.Strategy.options_expiry_to_datetime_date"], [141, "lumibot.strategies.strategy.Strategy.options_expiry_to_datetime_date"]], "get_option_expiration_after_date() (in module lumibot.strategies.strategy.strategy)": [[139, "lumibot.strategies.strategy.Strategy.get_option_expiration_after_date"]], "cancel_open_orders() (in module lumibot.strategies.strategy.strategy)": [[143, "lumibot.strategies.strategy.Strategy.cancel_open_orders"], [154, "lumibot.strategies.strategy.Strategy.cancel_open_orders"]], "cancel_order() (in module lumibot.strategies.strategy.strategy)": [[144, "lumibot.strategies.strategy.Strategy.cancel_order"], [155, "lumibot.strategies.strategy.Strategy.cancel_order"]], "cancel_orders() (in module lumibot.strategies.strategy.strategy)": [[145, "lumibot.strategies.strategy.Strategy.cancel_orders"], [156, "lumibot.strategies.strategy.Strategy.cancel_orders"]], "create_order() (in module lumibot.strategies.strategy.strategy)": [[146, "lumibot.strategies.strategy.Strategy.create_order"], [157, "lumibot.strategies.strategy.Strategy.create_order"]], "get_asset_potential_total() (in module lumibot.strategies.strategy.strategy)": [[147, "lumibot.strategies.strategy.Strategy.get_asset_potential_total"], [158, "lumibot.strategies.strategy.Strategy.get_asset_potential_total"]], "get_order() (in module lumibot.strategies.strategy.strategy)": [[148, "lumibot.strategies.strategy.Strategy.get_order"], [159, "lumibot.strategies.strategy.Strategy.get_order"]], "get_orders() (in module lumibot.strategies.strategy.strategy)": [[149, "lumibot.strategies.strategy.Strategy.get_orders"], [160, "lumibot.strategies.strategy.Strategy.get_orders"]], "get_selling_order() (in module lumibot.strategies.strategy.strategy)": [[150, "lumibot.strategies.strategy.Strategy.get_selling_order"], [161, "lumibot.strategies.strategy.Strategy.get_selling_order"]], "sell_all() (in module lumibot.strategies.strategy.strategy)": [[151, "lumibot.strategies.strategy.Strategy.sell_all"], [162, "lumibot.strategies.strategy.Strategy.sell_all"]], "submit_order() (in module lumibot.strategies.strategy.strategy)": [[152, "lumibot.strategies.strategy.Strategy.submit_order"], [163, "lumibot.strategies.strategy.Strategy.submit_order"]], "submit_orders() (in module lumibot.strategies.strategy.strategy)": [[153, "lumibot.strategies.strategy.Strategy.submit_orders"], [164, "lumibot.strategies.strategy.Strategy.submit_orders"]], "cash (lumibot.strategies.strategy.strategy property)": [[167, "lumibot.strategies.strategy.Strategy.cash"], [182, "lumibot.strategies.strategy.Strategy.cash"]], "first_iteration (lumibot.strategies.strategy.strategy property)": [[168, "lumibot.strategies.strategy.Strategy.first_iteration"], [183, "lumibot.strategies.strategy.Strategy.first_iteration"]], "initial_budget (lumibot.strategies.strategy.strategy property)": [[169, "lumibot.strategies.strategy.Strategy.initial_budget"], [184, "lumibot.strategies.strategy.Strategy.initial_budget"]], "is_backtesting (lumibot.strategies.strategy.strategy property)": [[170, "lumibot.strategies.strategy.Strategy.is_backtesting"], [185, "lumibot.strategies.strategy.Strategy.is_backtesting"]], "last_on_trading_iteration_datetime (lumibot.strategies.strategy.strategy property)": [[171, "lumibot.strategies.strategy.Strategy.last_on_trading_iteration_datetime"], [186, "lumibot.strategies.strategy.Strategy.last_on_trading_iteration_datetime"]], "minutes_before_closing (lumibot.strategies.strategy.strategy property)": [[172, "lumibot.strategies.strategy.Strategy.minutes_before_closing"], [187, "lumibot.strategies.strategy.Strategy.minutes_before_closing"]], "minutes_before_opening (lumibot.strategies.strategy.strategy property)": [[173, "lumibot.strategies.strategy.Strategy.minutes_before_opening"], [188, "lumibot.strategies.strategy.Strategy.minutes_before_opening"]], "name (lumibot.strategies.strategy.strategy property)": [[174, "lumibot.strategies.strategy.Strategy.name"], [189, "lumibot.strategies.strategy.Strategy.name"]], "portfolio_value (lumibot.strategies.strategy.strategy property)": [[175, "lumibot.strategies.strategy.Strategy.portfolio_value"], [190, "lumibot.strategies.strategy.Strategy.portfolio_value"]], "pytz (lumibot.strategies.strategy.strategy property)": [[176, "lumibot.strategies.strategy.Strategy.pytz"], [181, "lumibot.strategies.strategy.Strategy.pytz"], [191, "lumibot.strategies.strategy.Strategy.pytz"]], "quote_asset (lumibot.strategies.strategy.strategy property)": [[177, "lumibot.strategies.strategy.Strategy.quote_asset"], [192, "lumibot.strategies.strategy.Strategy.quote_asset"]], "sleeptime (lumibot.strategies.strategy.strategy property)": [[178, "lumibot.strategies.strategy.Strategy.sleeptime"], [193, "lumibot.strategies.strategy.Strategy.sleeptime"]], "timezone (lumibot.strategies.strategy.strategy property)": [[179, "lumibot.strategies.strategy.Strategy.timezone"], [194, "lumibot.strategies.strategy.Strategy.timezone"]], "unspent_money (lumibot.strategies.strategy.strategy property)": [[180, "lumibot.strategies.strategy.Strategy.unspent_money"], [195, "lumibot.strategies.strategy.Strategy.unspent_money"]]}}) \ No newline at end of file diff --git a/docsrc/_build/doctrees/deployment.doctree b/docsrc/_build/doctrees/deployment.doctree index 3760f78a62fc77e13c4a9e06510dcf6db63bae7b..c9bcccd6a06c166e5543ae2c812feddc023744d7 100644 GIT binary patch delta 3207 zcmcIme^6A{73N%FS0{s#phm`J_w8=2t}YA0qLQ>#NX^6qCRSjoR>fu6by<~Nb{CW= z5t4u)NF{H{AsvH3;}1d_NP<~Kk|4DjO`YbC#+kHnI=1PgrD`;3%%sz%J@>x1yO4>~ z=}i02-F^3b=li~U?z#89wts5=)uL?(!@bOX?qn)l4chK2EG=5~YHYwj7 zas?zYS6Q`1aMQe1xZF{>ZJQKuIbD^tgs+PFu!*`X@XUUseb@h{0CMBgGj0EI&EckS zW4J!Nz%$qTLAvbtOjl?TWr!_Tx_cF(Tba!37E74Gconbt!6Hlgse8VG@xA~F3GK7L zy};ob&mwOd0fec9gqm{ii}Yksj3%|G-PM!g$iUZQ+!$_8RyQsql*79w?C_YW_vTHA zDD6an`4q5FKofAeYXX&F?~QaE)xk`v3O7IvTm1jn^hwokoSuWhS}5I&Du$3y} zC`S}bLg2f#U}hUsz%dS37XzGK3KneG2g`712P|g0Rn&2gs#8$4iV*sC!bOI9xp8e4 z$hfr*bWGOEXS34qa2;4!Uo`S{9juH-Ha$V^&qO05Pe1{W@RD~t2^u&sS)pYY7}!Uu zg+6ZK!x$iL)V~{Y*gsU%%N+HUg1Vy`&8Vk}+>fvqGUWHIi7eHCf3Jr!`sK>nqJEx} zg7@x+g>VN)pM;&Xd_w1HUg42k5n;p@*MtUm5Y}?g15m2O*BF%gpKkygKrk-nGvI=! zpo{qo{AAARpdTm>Sk6%@QYO$UrA0esW*unF`YYXBrSpu!aki9QU?BC;MD2+-p4L*5s7Ktx&|~NTNS+bU!4)EUXSwWv?ibr}jZ6 zTc*S{Z*YQK5og(ws2^6h!AVvu@wQ@*OSrxrcG0i0Q$rkII2m8IpIR!U5}xFM>KGut zVZ|L_WMS1-*|TJ;Q$cm8vR`+=2pbTx(2qBM3VT_C%yqc0O{;~RrM4HT#f)%pQr#b3|K*2a3cosf^dl0(8DzBcI#I#22mth}hv9}j;wZj~oXp}qeSlGB~ z@trWt2dk1ot)V@`F_su6DyxaqcM%cWV3d3QoCA)y#wH{B5sDf8ZtVsgUPCbOPVELe zpIh1u*=j7Gcc?o3$8K=LCdJk}Tyi~^G|4j-YH{FsSPRF50%j&cQpyoy^#1Z#J^G@t z$f}>gMxbUD3nkad=Qu?aCXbfrQF{${7I$C;Q4cu08vwoq$S9?hHrjmJqXO2(Ej8J9+u=`D-$5Ksb z?uB}mN{`cXrWU=+;WJE8AvR`|Z!S)g{mWD27Yk=;i-eIQ_~>C;`52b100WL4ru*(; zPG`leL`Y0|$TX=6??p1`9tT!p64&G4OE8aZ5bC-TLW&n#5`BhLNE2S$ad49SV3J{q zw@UF_V#2PY5awjU?`7`yArrcf!S7kKN!&5c7)K1RnT*qqaMLF!5<|H{a>s4=U;|WcrT*sr?&!| zVUB$AbLdSh_!H%N|GZxOkzBCl2Cw0JL}>kat0K&XA8qgM<=eVR$}8Dg_UE(mhtZeFid^_c~5{ N8+25Y@4gMLe*;VPGED#g delta 2257 zcmZ9NdrVYE7{ximvWsY|XvGK1?p@YLd9y_-)TW}*recj&F({SPwPMz-f)8jbmA4?s zs=(d$D_Q{sl&U<8rK=SXP*OB~XiORtYYkQtYpkhFYSOfp&fL2!;6F3To!>dn^0yfgD)aI0F?-!W?abK*o?I8=*{Vpn+Hf(~?|V zVY3Z#!J25J+2G}swZRtP@Re4jWlEVDlC#)Z;LLHp%yni1Z9fS;<>g@(i&q3N)6G0A zW@dxj6FrUM@)5?CDl2{-t4JEi!(_UUi|O=3KKwXLXR3HHjiMN7bTP9cU}Rg|)gBkX zW)EPgfRz#p5d#Nx=ioJzsY@m9jp&L{%}yxkW9x@D^0q`3FJcNs79n=r@LuZOH8hEc zy3szJd$5}IyKDGT0DT@nso_>J=CKEE;G_WVtH52g5?5UbA^~qYS_F&V;7}=r)LMc< za+G2$8#Kt)KlRjJiaq?@a4tla48HV18PfS0-6}&Xn`xwOJzf&5WqGjp#M)CL?B7vg zB$Z=67SZ~0EWn$pRep*OT`Px={~{y*p0+T1IlR2Ma-or~zlBiUX<;+pC{7CFH7lE{ zcVI5I2)%lmngz32VX%o7?8ooet855GWIcdNR%BE@qpn4O`6ECx?LLTQX!3Z`1P6Rr zqX%(d165TZ3jHIH{T%62kzNsJrlpl=$FE8zyJMs|Rro~A;_T?oh|r%$;qfxUpdnPL z8=%31@Bzp|2nBZ(p%G4)FvEjr&k7flf-r-mUWc1bbYQ+OZ70yOYI^oM*cAKwP12oCfgmj|8rc%VI`1}M8(zE2NH>~T9?3`qw(rP zn2nBM%X5M`?_qdslq>l#_h64Cx#mF(o~YK3B}zPkRgBNIM=+0{&YnXE_p_&Hm7~EQ z``6$V_p+X>HJHgy=JQNv4L0GiT3v@oekhX7^7v34mDOSmUKNrEiq=3gA;!e5^)_!? zkS*M1Sa#86u0tyLS>;HqwnxZgsN*P#kxUDZVFmALLM&ek*I+I69m6uV)};1|O9Ea^ zrbf)xtmL+GrEV%!)?+(%lXnAFqF`8>OQj7+Ww~zYWg*QTEp=^dL>h3yBVzR?dUhN+ zVpf_{pHS5*Dy*bmP9Q<6)DS~6n)o&^(t8Oo(icq#!B2{dy5$?Ax7_d2@dg5R&m>ys z8@yW&ZBT!YlS-@gk*w((NA_72Hc;RxNchjA5GEO?;1siR2d;_|ZS~Oj0Mgj{6rZyddpB4P8X)c1)9CQ9NL{3Sv%fO zbK1fknk}2t)0|6VMQ`@vYy3l6y+>XazO=zU!n~NhKI9uOeCP7a_-+Jhgj)Wwcrvqt zGP;rIlguCNlq-`=yx=6d+l{NdeK+?YV$4Q0D9Ox!CkA?W3H~&(7iM2!A<~3iPiuRT v$O@G(zd(DQx|T+_d+`-26r=HOBe5o~w(M`z3%iN@EiJ%2aTFC*=L^k&@N diff --git a/docsrc/_build/doctrees/environment.pickle b/docsrc/_build/doctrees/environment.pickle index 0de9cfb210b3045ada9dc0aadb780881fba8c699..2b5ff853e5d3ab674227e45b604d52a541e53c29 100644 GIT binary patch literal 3731774 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

General Environment Variables

LIVE_CONFIG

+

LUMIWEALTH_API_KEY

+

Your API key from the BotSpot.trade website so that you can track your bot’s performance. To get this API key, visit the BotSpot.trade website and add/create a bot. After creating the bot, you will receive an API key.

+

694rr2c8d9234b43a40fab494a79f5634ghd4f39d44ccf2e

+ +

LIVE_CONFIG

Your live config file, only needed for strategies that have multiple configurations (there will be a folder named “configurations” in the src/ folder) and if you are running the strategy live.

paper_1

-

IS_BACKTESTING

+

IS_BACKTESTING

(Optional) Set to “True” to run the strategy in backtesting mode, set to “False” to run the strategy live (defaults to False).

False

-

POLYGON_API_KEY

+

POLYGON_API_KEY

(Optional) Your API key from your Polygon account, only needed if you are backtesting.

a7py0zIdhxde6QkX8OjjKNp7cD87hwKU

-

DISCORD_WEBHOOK_URL

+

DISCORD_WEBHOOK_URL

(Optional) Your Discord webhook URL, only needed if you want to send notifications to Discord. Learn how to get a Discord webhook URL here: Discord Webhooks

https://discord.com/api/webhooks/123456789/

-

DB_CONNECTION_STR

+

DB_CONNECTION_STR

(Optional) Your connection string to your account history database, only needed if you want to save your account history to a database.

sqlite:///account_history.db

-

STRATEGY_NAME

+

STRATEGY_NAME

(Optional) The name of the strategy. This will change the strategy_id in the database and in the Discord messages.

My Strategy

-

MARKET

+

MARKET

(Optional) The market you want the bot to think it is. Eg. “24/7” will make the bot think it is trading in a 24/7 market.

24/7

-

POLYGON_MAX_MEMORY_BYTES

+

POLYGON_MAX_MEMORY_BYTES

(Optional) The maximum memory in bytes that the Polygon API can use. This is useful for limiting memory usage during backtesting.

512000000

diff --git a/docsrc/_build/html/searchindex.js b/docsrc/_build/html/searchindex.js index 42565beb0..ec2cb7cbe 100644 --- a/docsrc/_build/html/searchindex.js +++ b/docsrc/_build/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({"docnames": ["backtesting", "backtesting.backtesting_function", "backtesting.how_to_backtest", "backtesting.indicators_files", "backtesting.logs_csv", "backtesting.pandas", "backtesting.polygon", "backtesting.tearsheet_html", "backtesting.thetadata", "backtesting.trades_files", "backtesting.yahoo", "brokers", "brokers.alpaca", "brokers.ccxt", "brokers.interactive_brokers", "brokers.interactive_brokers_legacy", "brokers.tradier", "deployment", "entities", "entities.asset", "entities.bars", "entities.data", "entities.order", "entities.position", "entities.trading_fee", "getting_started", "index", "lifecycle_methods", "lifecycle_methods.after_market_closes", "lifecycle_methods.before_market_closes", "lifecycle_methods.before_market_opens", "lifecycle_methods.before_starting_trading", "lifecycle_methods.initialize", "lifecycle_methods.on_abrupt_closing", "lifecycle_methods.on_bot_crash", "lifecycle_methods.on_canceled_order", "lifecycle_methods.on_filled_order", "lifecycle_methods.on_new_order", "lifecycle_methods.on_parameters_updated", "lifecycle_methods.on_partially_filled_order", "lifecycle_methods.on_trading_iteration", "lifecycle_methods.summary", "lifecycle_methods.trace_stats", "lumibot.backtesting", "lumibot.data_sources", "lumibot.strategies", "lumibot.traders", "strategy_methods", "strategy_methods.account", "strategy_methods.account/lumibot.strategies.strategy.Strategy.get_cash", "strategy_methods.account/lumibot.strategies.strategy.Strategy.get_parameters", "strategy_methods.account/lumibot.strategies.strategy.Strategy.get_portfolio_value", "strategy_methods.account/lumibot.strategies.strategy.Strategy.get_position", "strategy_methods.account/lumibot.strategies.strategy.Strategy.get_positions", "strategy_methods.account/lumibot.strategies.strategy.Strategy.set_parameters", "strategy_methods.account/strategies.strategy.Strategy.get_cash", "strategy_methods.account/strategies.strategy.Strategy.get_parameters", "strategy_methods.account/strategies.strategy.Strategy.get_portfolio_value", "strategy_methods.account/strategies.strategy.Strategy.get_position", "strategy_methods.account/strategies.strategy.Strategy.get_positions", "strategy_methods.account/strategies.strategy.Strategy.set_parameters", "strategy_methods.chart", "strategy_methods.chart/lumibot.strategies.strategy.Strategy.add_line", "strategy_methods.chart/lumibot.strategies.strategy.Strategy.add_marker", "strategy_methods.chart/lumibot.strategies.strategy.Strategy.get_lines_df", "strategy_methods.chart/lumibot.strategies.strategy.Strategy.get_markers_df", "strategy_methods.chart/strategies.strategy.Strategy.add_line", "strategy_methods.chart/strategies.strategy.Strategy.add_marker", "strategy_methods.chart/strategies.strategy.Strategy.get_lines_df", "strategy_methods.chart/strategies.strategy.Strategy.get_markers_df", "strategy_methods.data", "strategy_methods.data/lumibot.strategies.strategy.Strategy.cancel_realtime_bars", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_historical_prices", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_historical_prices_for_assets", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_last_price", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_last_prices", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_next_trading_day", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_quote", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_realtime_bars", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_yesterday_dividend", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_yesterday_dividends", "strategy_methods.data/lumibot.strategies.strategy.Strategy.start_realtime_bars", "strategy_methods.datetime", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_datetime", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_datetime_range", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_last_day", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_last_minute", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_round_day", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_round_minute", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_timestamp", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.localize_datetime", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.to_default_timezone", "strategy_methods.datetime/strategies.strategy.Strategy.get_datetime", "strategy_methods.datetime/strategies.strategy.Strategy.get_datetime_range", "strategy_methods.datetime/strategies.strategy.Strategy.get_last_day", "strategy_methods.datetime/strategies.strategy.Strategy.get_last_minute", "strategy_methods.datetime/strategies.strategy.Strategy.get_round_day", "strategy_methods.datetime/strategies.strategy.Strategy.get_round_minute", "strategy_methods.datetime/strategies.strategy.Strategy.get_timestamp", "strategy_methods.datetime/strategies.strategy.Strategy.localize_datetime", "strategy_methods.datetime/strategies.strategy.Strategy.to_default_timezone", "strategy_methods.misc", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.await_market_to_close", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.await_market_to_open", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.get_parameters", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.log_message", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.set_market", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.sleep", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.update_parameters", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.wait_for_order_execution", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.wait_for_order_registration", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.wait_for_orders_execution", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.wait_for_orders_registration", "strategy_methods.misc/strategies.strategy.Strategy.await_market_to_close", "strategy_methods.misc/strategies.strategy.Strategy.await_market_to_open", "strategy_methods.misc/strategies.strategy.Strategy.get_parameters", "strategy_methods.misc/strategies.strategy.Strategy.log_message", "strategy_methods.misc/strategies.strategy.Strategy.set_market", "strategy_methods.misc/strategies.strategy.Strategy.sleep", "strategy_methods.misc/strategies.strategy.Strategy.update_parameters", "strategy_methods.misc/strategies.strategy.Strategy.wait_for_order_execution", "strategy_methods.misc/strategies.strategy.Strategy.wait_for_order_registration", "strategy_methods.misc/strategies.strategy.Strategy.wait_for_orders_execution", "strategy_methods.misc/strategies.strategy.Strategy.wait_for_orders_registration", "strategy_methods.options", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_chain", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_chains", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_expiration", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_greeks", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_multiplier", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_next_trading_day", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_strikes", "strategy_methods.options/lumibot.strategies.strategy.Strategy.options_expiry_to_datetime_date", "strategy_methods.options/strategies.strategy.Strategy.get_chain", "strategy_methods.options/strategies.strategy.Strategy.get_chains", "strategy_methods.options/strategies.strategy.Strategy.get_expiration", "strategy_methods.options/strategies.strategy.Strategy.get_greeks", "strategy_methods.options/strategies.strategy.Strategy.get_multiplier", "strategy_methods.options/strategies.strategy.Strategy.get_next_trading_day", "strategy_methods.options/strategies.strategy.Strategy.get_option_expiration_after_date", "strategy_methods.options/strategies.strategy.Strategy.get_strikes", "strategy_methods.options/strategies.strategy.Strategy.options_expiry_to_datetime_date", "strategy_methods.orders", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.cancel_open_orders", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.cancel_order", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.cancel_orders", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.create_order", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.get_asset_potential_total", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.get_order", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.get_orders", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.get_selling_order", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.sell_all", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.submit_order", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.submit_orders", "strategy_methods.orders/strategies.strategy.Strategy.cancel_open_orders", "strategy_methods.orders/strategies.strategy.Strategy.cancel_order", "strategy_methods.orders/strategies.strategy.Strategy.cancel_orders", "strategy_methods.orders/strategies.strategy.Strategy.create_order", "strategy_methods.orders/strategies.strategy.Strategy.get_asset_potential_total", "strategy_methods.orders/strategies.strategy.Strategy.get_order", "strategy_methods.orders/strategies.strategy.Strategy.get_orders", "strategy_methods.orders/strategies.strategy.Strategy.get_selling_order", "strategy_methods.orders/strategies.strategy.Strategy.sell_all", "strategy_methods.orders/strategies.strategy.Strategy.submit_order", "strategy_methods.orders/strategies.strategy.Strategy.submit_orders", "strategy_methods.parameters", "strategy_properties", "strategy_properties/lumibot.strategies.strategy.Strategy.cash", "strategy_properties/lumibot.strategies.strategy.Strategy.first_iteration", "strategy_properties/lumibot.strategies.strategy.Strategy.initial_budget", "strategy_properties/lumibot.strategies.strategy.Strategy.is_backtesting", "strategy_properties/lumibot.strategies.strategy.Strategy.last_on_trading_iteration_datetime", "strategy_properties/lumibot.strategies.strategy.Strategy.minutes_before_closing", "strategy_properties/lumibot.strategies.strategy.Strategy.minutes_before_opening", "strategy_properties/lumibot.strategies.strategy.Strategy.name", "strategy_properties/lumibot.strategies.strategy.Strategy.portfolio_value", "strategy_properties/lumibot.strategies.strategy.Strategy.pytz", "strategy_properties/lumibot.strategies.strategy.Strategy.quote_asset", "strategy_properties/lumibot.strategies.strategy.Strategy.sleeptime", "strategy_properties/lumibot.strategies.strategy.Strategy.timezone", "strategy_properties/lumibot.strategies.strategy.Strategy.unspent_money", "strategy_properties/lumibot.strategies.strategy.pytz", "strategy_properties/strategies.strategy.Strategy.cash", "strategy_properties/strategies.strategy.Strategy.first_iteration", "strategy_properties/strategies.strategy.Strategy.initial_budget", "strategy_properties/strategies.strategy.Strategy.is_backtesting", "strategy_properties/strategies.strategy.Strategy.last_on_trading_iteration_datetime", "strategy_properties/strategies.strategy.Strategy.minutes_before_closing", "strategy_properties/strategies.strategy.Strategy.minutes_before_opening", "strategy_properties/strategies.strategy.Strategy.name", "strategy_properties/strategies.strategy.Strategy.portfolio_value", "strategy_properties/strategies.strategy.Strategy.pytz", "strategy_properties/strategies.strategy.Strategy.quote_asset", "strategy_properties/strategies.strategy.Strategy.sleeptime", "strategy_properties/strategies.strategy.Strategy.timezone", "strategy_properties/strategies.strategy.Strategy.unspent_money", "vars"], "filenames": ["backtesting.rst", "backtesting.backtesting_function.rst", "backtesting.how_to_backtest.rst", "backtesting.indicators_files.rst", "backtesting.logs_csv.rst", "backtesting.pandas.rst", "backtesting.polygon.rst", "backtesting.tearsheet_html.rst", "backtesting.thetadata.rst", "backtesting.trades_files.rst", "backtesting.yahoo.rst", "brokers.rst", "brokers.alpaca.rst", "brokers.ccxt.rst", "brokers.interactive_brokers.rst", "brokers.interactive_brokers_legacy.rst", "brokers.tradier.rst", "deployment.rst", "entities.rst", "entities.asset.rst", "entities.bars.rst", "entities.data.rst", "entities.order.rst", "entities.position.rst", "entities.trading_fee.rst", "getting_started.rst", "index.rst", "lifecycle_methods.rst", "lifecycle_methods.after_market_closes.rst", "lifecycle_methods.before_market_closes.rst", "lifecycle_methods.before_market_opens.rst", "lifecycle_methods.before_starting_trading.rst", "lifecycle_methods.initialize.rst", "lifecycle_methods.on_abrupt_closing.rst", "lifecycle_methods.on_bot_crash.rst", "lifecycle_methods.on_canceled_order.rst", "lifecycle_methods.on_filled_order.rst", "lifecycle_methods.on_new_order.rst", "lifecycle_methods.on_parameters_updated.rst", "lifecycle_methods.on_partially_filled_order.rst", "lifecycle_methods.on_trading_iteration.rst", "lifecycle_methods.summary.rst", "lifecycle_methods.trace_stats.rst", "lumibot.backtesting.rst", "lumibot.data_sources.rst", "lumibot.strategies.rst", "lumibot.traders.rst", "strategy_methods.rst", "strategy_methods.account.rst", "strategy_methods.account/lumibot.strategies.strategy.Strategy.get_cash.rst", "strategy_methods.account/lumibot.strategies.strategy.Strategy.get_parameters.rst", "strategy_methods.account/lumibot.strategies.strategy.Strategy.get_portfolio_value.rst", "strategy_methods.account/lumibot.strategies.strategy.Strategy.get_position.rst", "strategy_methods.account/lumibot.strategies.strategy.Strategy.get_positions.rst", "strategy_methods.account/lumibot.strategies.strategy.Strategy.set_parameters.rst", "strategy_methods.account/strategies.strategy.Strategy.get_cash.rst", "strategy_methods.account/strategies.strategy.Strategy.get_parameters.rst", "strategy_methods.account/strategies.strategy.Strategy.get_portfolio_value.rst", "strategy_methods.account/strategies.strategy.Strategy.get_position.rst", "strategy_methods.account/strategies.strategy.Strategy.get_positions.rst", "strategy_methods.account/strategies.strategy.Strategy.set_parameters.rst", "strategy_methods.chart.rst", "strategy_methods.chart/lumibot.strategies.strategy.Strategy.add_line.rst", "strategy_methods.chart/lumibot.strategies.strategy.Strategy.add_marker.rst", "strategy_methods.chart/lumibot.strategies.strategy.Strategy.get_lines_df.rst", "strategy_methods.chart/lumibot.strategies.strategy.Strategy.get_markers_df.rst", "strategy_methods.chart/strategies.strategy.Strategy.add_line.rst", "strategy_methods.chart/strategies.strategy.Strategy.add_marker.rst", "strategy_methods.chart/strategies.strategy.Strategy.get_lines_df.rst", "strategy_methods.chart/strategies.strategy.Strategy.get_markers_df.rst", "strategy_methods.data.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.cancel_realtime_bars.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_historical_prices.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_historical_prices_for_assets.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_last_price.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_last_prices.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_next_trading_day.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_quote.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_realtime_bars.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_yesterday_dividend.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_yesterday_dividends.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.start_realtime_bars.rst", "strategy_methods.datetime.rst", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_datetime.rst", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_datetime_range.rst", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_last_day.rst", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_last_minute.rst", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_round_day.rst", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_round_minute.rst", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_timestamp.rst", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.localize_datetime.rst", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.to_default_timezone.rst", "strategy_methods.datetime/strategies.strategy.Strategy.get_datetime.rst", "strategy_methods.datetime/strategies.strategy.Strategy.get_datetime_range.rst", "strategy_methods.datetime/strategies.strategy.Strategy.get_last_day.rst", "strategy_methods.datetime/strategies.strategy.Strategy.get_last_minute.rst", "strategy_methods.datetime/strategies.strategy.Strategy.get_round_day.rst", "strategy_methods.datetime/strategies.strategy.Strategy.get_round_minute.rst", "strategy_methods.datetime/strategies.strategy.Strategy.get_timestamp.rst", "strategy_methods.datetime/strategies.strategy.Strategy.localize_datetime.rst", "strategy_methods.datetime/strategies.strategy.Strategy.to_default_timezone.rst", "strategy_methods.misc.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.await_market_to_close.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.await_market_to_open.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.get_parameters.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.log_message.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.set_market.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.sleep.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.update_parameters.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.wait_for_order_execution.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.wait_for_order_registration.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.wait_for_orders_execution.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.wait_for_orders_registration.rst", "strategy_methods.misc/strategies.strategy.Strategy.await_market_to_close.rst", "strategy_methods.misc/strategies.strategy.Strategy.await_market_to_open.rst", "strategy_methods.misc/strategies.strategy.Strategy.get_parameters.rst", "strategy_methods.misc/strategies.strategy.Strategy.log_message.rst", "strategy_methods.misc/strategies.strategy.Strategy.set_market.rst", "strategy_methods.misc/strategies.strategy.Strategy.sleep.rst", "strategy_methods.misc/strategies.strategy.Strategy.update_parameters.rst", "strategy_methods.misc/strategies.strategy.Strategy.wait_for_order_execution.rst", "strategy_methods.misc/strategies.strategy.Strategy.wait_for_order_registration.rst", "strategy_methods.misc/strategies.strategy.Strategy.wait_for_orders_execution.rst", "strategy_methods.misc/strategies.strategy.Strategy.wait_for_orders_registration.rst", "strategy_methods.options.rst", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_chain.rst", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_chains.rst", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_expiration.rst", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_greeks.rst", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_multiplier.rst", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_next_trading_day.rst", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_strikes.rst", "strategy_methods.options/lumibot.strategies.strategy.Strategy.options_expiry_to_datetime_date.rst", "strategy_methods.options/strategies.strategy.Strategy.get_chain.rst", "strategy_methods.options/strategies.strategy.Strategy.get_chains.rst", "strategy_methods.options/strategies.strategy.Strategy.get_expiration.rst", "strategy_methods.options/strategies.strategy.Strategy.get_greeks.rst", "strategy_methods.options/strategies.strategy.Strategy.get_multiplier.rst", "strategy_methods.options/strategies.strategy.Strategy.get_next_trading_day.rst", "strategy_methods.options/strategies.strategy.Strategy.get_option_expiration_after_date.rst", "strategy_methods.options/strategies.strategy.Strategy.get_strikes.rst", "strategy_methods.options/strategies.strategy.Strategy.options_expiry_to_datetime_date.rst", "strategy_methods.orders.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.cancel_open_orders.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.cancel_order.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.cancel_orders.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.create_order.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.get_asset_potential_total.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.get_order.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.get_orders.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.get_selling_order.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.sell_all.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.submit_order.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.submit_orders.rst", "strategy_methods.orders/strategies.strategy.Strategy.cancel_open_orders.rst", "strategy_methods.orders/strategies.strategy.Strategy.cancel_order.rst", "strategy_methods.orders/strategies.strategy.Strategy.cancel_orders.rst", "strategy_methods.orders/strategies.strategy.Strategy.create_order.rst", "strategy_methods.orders/strategies.strategy.Strategy.get_asset_potential_total.rst", "strategy_methods.orders/strategies.strategy.Strategy.get_order.rst", "strategy_methods.orders/strategies.strategy.Strategy.get_orders.rst", "strategy_methods.orders/strategies.strategy.Strategy.get_selling_order.rst", "strategy_methods.orders/strategies.strategy.Strategy.sell_all.rst", "strategy_methods.orders/strategies.strategy.Strategy.submit_order.rst", "strategy_methods.orders/strategies.strategy.Strategy.submit_orders.rst", "strategy_methods.parameters.rst", "strategy_properties.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.cash.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.first_iteration.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.initial_budget.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.is_backtesting.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.last_on_trading_iteration_datetime.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.minutes_before_closing.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.minutes_before_opening.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.name.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.portfolio_value.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.pytz.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.quote_asset.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.sleeptime.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.timezone.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.unspent_money.rst", "strategy_properties/lumibot.strategies.strategy.pytz.rst", "strategy_properties/strategies.strategy.Strategy.cash.rst", "strategy_properties/strategies.strategy.Strategy.first_iteration.rst", "strategy_properties/strategies.strategy.Strategy.initial_budget.rst", "strategy_properties/strategies.strategy.Strategy.is_backtesting.rst", "strategy_properties/strategies.strategy.Strategy.last_on_trading_iteration_datetime.rst", "strategy_properties/strategies.strategy.Strategy.minutes_before_closing.rst", "strategy_properties/strategies.strategy.Strategy.minutes_before_opening.rst", "strategy_properties/strategies.strategy.Strategy.name.rst", "strategy_properties/strategies.strategy.Strategy.portfolio_value.rst", "strategy_properties/strategies.strategy.Strategy.pytz.rst", "strategy_properties/strategies.strategy.Strategy.quote_asset.rst", "strategy_properties/strategies.strategy.Strategy.sleeptime.rst", "strategy_properties/strategies.strategy.Strategy.timezone.rst", "strategy_properties/strategies.strategy.Strategy.unspent_money.rst", "vars.rst"], "titles": ["Backtesting", "Backtesting Function", "How To Backtest", "Indicators Files", "Logs CSV", "Pandas (CSV or other data)", "Polygon.io Backtesting", "Tearsheet HTML", "ThetaData Backtesting", "Trades Files", "Yahoo", "Brokers", "Alpaca", "Crypto Brokers (Using CCXT)", "Interactive Brokers", "Interactive Brokers Legacy", "Tradier", "Deployment Guide", "Entities", "Asset", "Bars", "Data", "Order", "Position", "Trading Fee", "What is Lumibot?", "Lumibot: Backtesting and Algorithmic Trading Library", "Lifecycle Methods", "def after_market_closes", "def before_market_closes", "def before_market_opens", "def before_starting_trading", "def initialize", "def on_abrupt_closing", "def on_bot_crash", "def on_canceled_order", "def on_filled_order", "def on_new_order", "def on_parameters_updated", "def on_partially_filled_order", "def on_trading_iteration", "Summary", "def trace_stats", "Backtesting", "Data Sources", "Strategies", "Traders", "Strategy Methods", "Account Management", "self.get_cash", "self.get_parameters", "self.get_portfolio_value", "self.get_position", "self.get_positions", "self.set_parameters", "self.get_cash", "self.get_parameters", "self.get_portfolio_value", "self.get_position", "self.get_positions", "self.set_parameters", "Chart Functions", "self.add_line", "self.add_marker", "self.get_lines_df", "self.get_markers_df", "self.add_line", "self.add_marker", "self.get_lines_df", "self.get_markers_df", "Data", "self.cancel_realtime_bars", "self.get_historical_prices", "self.get_historical_prices_for_assets", "self.get_last_price", "self.get_last_prices", "self.get_next_trading_day", "self.get_quote", "self.get_realtime_bars", "self.get_yesterday_dividend", "self.get_yesterday_dividends", "self.start_realtime_bars", "DateTime", "self.get_datetime", "self.get_datetime_range", "self.get_last_day", "self.get_last_minute", "self.get_round_day", "self.get_round_minute", "self.get_timestamp", "self.localize_datetime", "self.to_default_timezone", "self.get_datetime", "self.get_datetime_range", "self.get_last_day", "self.get_last_minute", "self.get_round_day", "self.get_round_minute", "self.get_timestamp", "self.localize_datetime", "self.to_default_timezone", "Miscellaneous", "self.await_market_to_close", "self.await_market_to_open", "self.get_parameters", "self.log_message", "self.set_market", "self.sleep", "self.update_parameters", "self.wait_for_order_execution", "self.wait_for_order_registration", "self.wait_for_orders_execution", "self.wait_for_orders_registration", "self.await_market_to_close", "self.await_market_to_open", "self.get_parameters", "self.log_message", "self.set_market", "self.sleep", "self.update_parameters", "self.wait_for_order_execution", "self.wait_for_order_registration", "self.wait_for_orders_execution", "self.wait_for_orders_registration", "Options", "self.get_chain", "self.get_chains", "self.get_expiration", "self.get_greeks", "self.get_multiplier", "self.get_next_trading_day", "self.get_strikes", "self.options_expiry_to_datetime_date", "self.get_chain", "self.get_chains", "self.get_expiration", "self.get_greeks", "self.get_multiplier", "self.get_next_trading_day", "self.get_option_expiration_after_date", "self.get_strikes", "self.options_expiry_to_datetime_date", "Order Management", "self.cancel_open_orders", "self.cancel_order", "self.cancel_orders", "self.create_order", "self.get_asset_potential_total", "self.get_order", "self.get_orders", "self.get_selling_order", "self.sell_all", "self.submit_order", "self.submit_orders", "self.cancel_open_orders", "self.cancel_order", "self.cancel_orders", "self.create_order", "self.get_asset_potential_total", "self.get_order", "self.get_orders", "self.get_selling_order", "self.sell_all", "self.submit_order", "self.submit_orders", "Parameters", "Strategy Properties", "self.cash", "self.first_iteration", "self.initial_budget", "self.is_backtesting", "self.last_on_trading_iteration_datetime", "self.minutes_before_closing", "self.minutes_before_opening", "self.name", "self.portfolio_value", "self.pytz", "self.quote_asset", "self.sleeptime", "self.timezone", "self.unspent_money", "self.pytz", "self.cash", "self.first_iteration", "self.initial_budget", "self.is_backtesting", "self.last_on_trading_iteration_datetime", "self.minutes_before_closing", "self.minutes_before_opening", "self.name", "self.portfolio_value", "self.pytz", "self.quote_asset", "self.sleeptime", "self.timezone", "self.unspent_money", "Variable Backup & Restore"], "terms": {"lumibot": [0, 1, 5, 6, 8, 10, 11, 12, 13, 14, 15, 16, 18, 19, 22, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 46, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 62, 63, 64, 65, 66, 67, 68, 69, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165], "ha": [0, 7, 15, 20, 22, 26, 35, 36, 37, 39, 45, 71, 74, 78, 196], "three": [0, 15, 20, 22], "mode": [0, 15, 17, 43, 170, 185], "yahoo": [0, 1, 2, 5, 20, 26, 72, 73, 106, 117], "daili": [0, 2, 5, 7, 10, 31, 72, 73], "stock": [0, 1, 2, 5, 6, 8, 9, 10, 12, 17, 19, 20, 21, 22, 23, 26, 32, 44, 106, 117, 126, 134, 146, 152, 157, 163], "data": [0, 1, 3, 6, 8, 10, 11, 13, 18, 19, 20, 23, 26, 30, 31, 40, 45, 47, 62, 66, 71, 72, 73, 78, 81, 83, 89, 90, 91, 92, 98, 99, 100, 176, 179, 181, 191, 194], "panda": [0, 2, 10, 20, 21, 26, 62, 63, 64, 65, 66, 67, 68, 69, 72, 73, 78, 106, 117], "intra": [0, 5, 10], "dai": [0, 1, 2, 5, 6, 8, 10, 17, 21, 22, 26, 30, 31, 32, 40, 44, 72, 73, 76, 79, 80, 84, 85, 86, 87, 93, 94, 95, 96, 130, 138, 146, 153, 157, 164, 178, 193], "inter": [0, 5], "test": [0, 2, 15, 17], "futur": [0, 5, 12, 14, 17, 19, 20, 26, 43, 44, 74, 146, 147, 152, 157, 158, 163, 180, 195], "us": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 15, 16, 17, 19, 20, 21, 22, 23, 24, 25, 26, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 55, 61, 62, 63, 66, 67, 70, 72, 73, 76, 82, 101, 105, 107, 116, 118, 127, 128, 129, 130, 131, 135, 136, 137, 138, 140, 142, 146, 157, 165, 166, 167, 177, 178, 180, 182, 192, 193, 195, 196], "csv": [0, 2, 3, 9, 21, 26, 44], "suppli": [0, 10, 21], "you": [0, 1, 2, 5, 6, 8, 10, 11, 12, 13, 14, 15, 16, 17, 20, 22, 25, 26, 29, 32, 44, 47, 48, 49, 51, 55, 57, 61, 62, 66, 70, 72, 73, 82, 101, 124, 142, 146, 157, 165, 166, 178, 193], "polygon": [0, 1, 5, 8, 10, 17, 26], "io": [0, 13, 20, 26], "It": [0, 4, 5, 6, 7, 8, 13, 14, 15, 17, 19, 22, 23, 25, 26, 41, 43, 44, 74, 77, 146, 157], "i": [0, 1, 2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 26, 28, 29, 30, 32, 34, 35, 36, 37, 39, 40, 41, 42, 43, 44, 46, 47, 49, 51, 52, 55, 57, 58, 62, 63, 66, 67, 72, 73, 74, 75, 76, 77, 82, 83, 85, 86, 87, 88, 89, 92, 94, 95, 96, 97, 98, 102, 103, 106, 113, 114, 117, 125, 126, 127, 129, 130, 132, 133, 134, 135, 137, 138, 141, 146, 147, 149, 151, 153, 157, 158, 160, 162, 164, 166, 167, 168, 170, 172, 173, 177, 178, 182, 183, 185, 187, 188, 192, 193, 196], "recommend": [0, 15, 17, 25], "option": [0, 2, 6, 8, 9, 12, 14, 16, 17, 19, 20, 22, 26, 32, 36, 39, 41, 43, 44, 47, 72, 74, 125, 126, 127, 128, 129, 131, 132, 133, 134, 135, 136, 137, 139, 140, 141, 146, 152, 157, 163], "crypto": [0, 1, 5, 7, 11, 17, 19, 20, 23, 26, 49, 51, 55, 57, 72, 74, 106, 117, 146, 152, 153, 157, 163, 164, 167, 175, 182, 190], "forex": [0, 2, 5, 6, 8, 12, 17, 19, 26, 44, 73, 74, 146, 152, 153, 157, 163, 164], "an": [0, 1, 2, 5, 6, 7, 8, 12, 13, 14, 15, 16, 17, 19, 22, 23, 26, 34, 35, 36, 39, 40, 41, 43, 44, 52, 58, 72, 74, 75, 81, 102, 103, 105, 113, 114, 116, 126, 127, 131, 132, 134, 135, 140, 141, 144, 146, 147, 148, 152, 155, 157, 158, 159, 163, 165, 178, 193, 196], "advanc": [0, 2, 5, 25, 26, 146, 157], "featur": [0, 2, 6, 8, 26], "allow": [0, 2, 4, 5, 6, 8, 14, 17, 20, 22, 25, 26, 81, 146, 157, 165], "ani": [0, 1, 2, 5, 6, 7, 8, 10, 13, 14, 15, 17, 21, 22, 25, 41, 43, 62, 66, 72, 73, 105, 116, 145, 156, 165], "type": [0, 1, 2, 5, 12, 14, 18, 19, 20, 21, 23, 25, 26, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 42, 43, 44, 46, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 64, 65, 68, 69, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 125, 126, 127, 129, 130, 131, 132, 133, 134, 135, 137, 138, 139, 140, 141, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194], "have": [0, 1, 2, 5, 6, 8, 10, 14, 16, 17, 20, 22, 23, 25, 26, 28, 43, 47, 49, 51, 55, 57, 72, 78], "format": [0, 5, 19, 21, 44, 76, 125, 126, 130, 132, 133, 134, 138, 141], "requir": [0, 1, 2, 10, 13, 14, 15, 17, 19, 22, 74, 75, 146, 153, 157, 164], "more": [0, 2, 3, 11, 13, 14, 16, 17, 18, 20, 25, 26, 43, 44, 47, 70, 72, 101, 124, 128, 136, 142], "work": [0, 2, 5, 11, 15, 17, 25, 26, 72, 73, 77, 166], "setup": [0, 2, 11, 26], "most": [0, 5, 7, 14, 17, 20, 25, 41, 72, 78, 128, 136], "user": [0, 2, 5, 10, 14, 17, 21, 25, 27, 41, 45, 46, 144, 146, 155, 157, 196], "when": [0, 1, 2, 5, 6, 8, 13, 14, 17, 19, 20, 22, 25, 26, 27, 30, 32, 33, 34, 35, 36, 37, 38, 39, 40, 62, 63, 66, 67, 82, 146, 157, 167, 172, 182, 187, 196], "run": [0, 5, 6, 8, 10, 11, 12, 14, 17, 21, 26, 30, 32, 33, 34, 37, 44, 46, 81, 102, 103, 113, 114, 143, 145, 154, 156, 170, 185], "sever": [0, 2, 10, 11, 45, 165], "import": [0, 1, 2, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16, 17, 19, 20, 26, 41, 42, 44, 45, 63, 67, 73, 80, 146, 152, 153, 157, 163, 164, 165], "ar": [0, 1, 2, 3, 5, 7, 8, 10, 11, 12, 13, 14, 15, 17, 18, 19, 20, 21, 22, 23, 25, 26, 38, 41, 44, 45, 47, 48, 53, 59, 61, 62, 63, 66, 67, 70, 73, 78, 81, 82, 101, 106, 117, 124, 125, 126, 128, 133, 134, 136, 142, 143, 146, 147, 149, 151, 153, 154, 157, 158, 160, 162, 164, 165, 167, 182, 196], "each": [0, 1, 2, 3, 5, 7, 9, 13, 14, 20, 22, 26, 30, 32, 40, 41, 44, 45, 47, 53, 59, 72, 80, 126, 134, 149, 151, 160, 162, 196], "prefix": [0, 105, 116], "strategi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 15, 22, 23, 24, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 46, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196], "name": [0, 1, 5, 10, 14, 17, 19, 21, 25, 26, 32, 44, 46, 62, 63, 66, 67, 74, 105, 116, 165, 196], "date": [0, 1, 2, 5, 6, 8, 10, 19, 21, 26, 32, 44, 74, 76, 82, 125, 126, 127, 128, 129, 130, 132, 133, 134, 135, 136, 137, 138, 139, 141, 146, 157], "These": [0, 1, 2, 3, 4, 7, 10, 32, 45, 54, 60, 82], "provid": [0, 2, 4, 5, 6, 8, 9, 17, 20, 21, 44, 74, 75, 131, 140, 144, 145, 155, 156], "detail": [0, 2, 3, 4, 9, 14, 17, 19, 72, 148, 159], "insight": [0, 2], "perform": [0, 2, 3, 7, 17, 26, 41], "behavior": [0, 2], "how": [0, 3, 11, 12, 13, 17, 25, 26, 45, 72, 81, 166], "To": [0, 6, 8, 10, 13, 14, 16, 17, 22, 25, 26, 72], "instal": [0, 5, 10, 13, 15, 17], "choos": [0, 15, 26], "sourc": [0, 5, 8, 13, 20, 83, 89, 90, 91, 92, 98, 99, 100, 176, 179, 181, 191, 194], "tearsheet": [0, 1, 26, 46], "html": [0, 1, 3, 9, 20, 26], "trade": [0, 1, 4, 5, 10, 11, 13, 15, 17, 18, 19, 20, 21, 22, 27, 30, 31, 32, 33, 40, 41, 43, 44, 45, 52, 58, 73, 74, 76, 78, 81, 82, 83, 85, 86, 87, 88, 89, 92, 94, 95, 96, 97, 98, 106, 117, 126, 130, 134, 138, 146, 157, 171, 186, 196], "indic": [0, 1, 5, 13, 46, 52, 53, 58, 59, 62, 63, 64, 65, 66, 67, 68, 69, 72, 73, 153, 164], "conclus": [0, 26], "function": [0, 2, 3, 13, 17, 21, 26, 32, 38, 41, 47, 48, 82, 142], "run_backtest": [0, 1, 2, 5, 6, 8, 10, 25], "other": [0, 2, 6, 8, 10, 13, 14, 15, 17, 20, 22, 25, 26, 41, 62, 66, 77, 101, 146, 157, 167, 182, 196], "In": [0, 6, 8, 13, 17, 22, 43, 74, 75, 83, 85, 86, 87, 88, 89, 92, 94, 95, 96, 97, 98], "summari": [0, 6, 8, 26, 27], "thetadata": [0, 2, 26], "log": [0, 1, 2, 7, 10, 14, 15, 16, 17, 19, 26, 42, 101, 105, 116], "here": [1, 2, 5, 6, 8, 11, 12, 13, 14, 15, 16, 17, 18, 25, 26, 41, 165, 166], "descript": [1, 14, 17], "all": [1, 4, 5, 13, 17, 20, 21, 22, 25, 30, 33, 34, 43, 45, 46, 51, 53, 57, 59, 72, 73, 125, 127, 128, 129, 131, 133, 135, 136, 137, 140, 143, 145, 146, 149, 150, 151, 154, 156, 157, 160, 161, 162, 165, 196], "its": [1, 6, 8, 22, 42], "paramet": [1, 2, 6, 8, 12, 19, 20, 21, 22, 23, 25, 26, 28, 29, 32, 33, 34, 35, 36, 37, 38, 39, 42, 43, 44, 45, 46, 47, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 62, 63, 66, 67, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 84, 87, 88, 90, 91, 93, 96, 97, 99, 100, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 143, 144, 145, 146, 147, 150, 151, 152, 153, 154, 155, 156, 157, 158, 161, 162, 163, 164, 172, 187], "thi": [1, 2, 5, 6, 8, 9, 12, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 25, 26, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 42, 43, 44, 45, 46, 49, 51, 55, 57, 62, 63, 66, 67, 72, 73, 74, 75, 77, 81, 83, 85, 86, 87, 88, 89, 92, 94, 95, 96, 97, 98, 107, 118, 146, 153, 157, 164, 167, 168, 177, 178, 182, 183, 192, 193], "true": [1, 5, 12, 13, 16, 17, 22, 24, 25, 26, 32, 43, 44, 46, 72, 73, 74, 105, 116, 151, 162, 168, 170, 183, 185], "kind": [1, 25], "do": [1, 5, 10, 13, 16, 20, 22, 25, 26, 38, 47, 101, 146, 157], "arg": [1, 21, 44], "minutes_before_clos": [1, 26, 29, 32, 40, 102, 113], "5": [1, 2, 5, 6, 8, 17, 26, 32, 44, 72, 73, 106, 107, 117, 118, 146, 157, 165, 172, 178, 187, 193, 196], "minutes_before_open": [1, 26, 30, 103, 114], "60": [1, 20, 173, 188], "sleeptim": [1, 2, 6, 8, 13, 25, 26, 32, 40, 107, 118], "1": [1, 2, 5, 6, 7, 8, 10, 12, 13, 15, 16, 17, 19, 20, 21, 22, 31, 44, 72, 73, 84, 90, 91, 93, 99, 100, 128, 136, 139, 146, 152, 153, 157, 163, 164, 178, 193, 196], "stats_fil": [1, 32], "none": [1, 12, 13, 17, 19, 20, 21, 22, 23, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 43, 44, 46, 49, 51, 52, 53, 54, 55, 57, 58, 59, 60, 62, 63, 66, 67, 71, 72, 73, 74, 75, 81, 84, 93, 102, 103, 105, 106, 107, 108, 113, 114, 116, 117, 118, 119, 128, 131, 136, 140, 143, 144, 145, 146, 148, 150, 151, 154, 155, 156, 157, 159, 161, 162], "risk_free_r": [1, 44, 128, 136], "logfil": [1, 46], "config": [1, 12, 13, 16, 17, 25, 43], "auto_adjust": [1, 44], "fals": [1, 12, 13, 16, 17, 22, 25, 26, 32, 43, 44, 46, 73, 74, 83, 92, 105, 116, 128, 136, 146, 151, 157, 162], "budget": [1, 5, 10, 17, 25, 32, 169, 184], "benchmark_asset": [1, 2, 6, 8, 25], "spy": [1, 2, 5, 6, 8, 19, 22, 25, 30, 31, 32, 36, 40, 44, 71, 72, 73, 74, 75, 79, 80, 109, 110, 111, 112, 120, 121, 122, 123, 125, 126, 127, 128, 129, 131, 133, 134, 135, 136, 137, 140, 144, 146, 150, 152, 153, 155, 157, 161, 163, 164, 165], "plot_file_html": 1, "trades_fil": 1, "settings_fil": 1, "pandas_data": [1, 5, 25, 43, 44], "quote_asset": [1, 13, 19, 23, 26, 152, 153, 163, 164], "usd": [1, 19, 21, 72, 73, 74, 146, 152, 153, 157, 163, 164], "starting_posit": 1, "show_plot": [1, 46], "tearsheet_fil": 1, "save_tearsheet": [1, 46], "show_tearsheet": [1, 46], "buy_trading_fe": [1, 25], "sell_trading_fe": [1, 25], "api_kei": [1, 12, 25, 26, 43, 44], "polygon_api_kei": [1, 2, 17], "polygon_has_paid_subscript": 1, "indicators_fil": 1, "show_ind": [1, 46], "save_logfil": 1, "kwarg": [1, 12, 19, 21, 43, 44, 153, 164], "datasource_class": 1, "class": [1, 2, 5, 6, 8, 10, 12, 13, 16, 17, 19, 20, 21, 22, 23, 24, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 165, 196], "The": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 12, 13, 14, 15, 17, 19, 20, 21, 22, 23, 27, 28, 34, 35, 36, 37, 38, 39, 41, 43, 44, 45, 49, 50, 51, 54, 55, 56, 57, 60, 62, 63, 64, 65, 66, 67, 68, 69, 72, 73, 75, 76, 77, 78, 79, 80, 81, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 104, 106, 108, 115, 117, 119, 125, 126, 127, 128, 129, 130, 131, 133, 134, 135, 136, 137, 138, 139, 140, 146, 147, 150, 151, 153, 157, 158, 161, 162, 164, 165, 167, 169, 171, 172, 173, 174, 175, 176, 177, 179, 181, 182, 184, 186, 187, 188, 189, 190, 191, 192, 194], "datasourc": [1, 8, 43, 44], "For": [1, 2, 3, 5, 7, 10, 13, 14, 17, 19, 20, 22, 26, 28, 44, 49, 51, 55, 57, 109, 110, 111, 112, 120, 121, 122, 123, 146, 152, 153, 157, 163, 164, 165], "exampl": [1, 2, 6, 8, 11, 12, 15, 19, 20, 25, 26, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 44, 52, 53, 58, 59, 62, 63, 66, 67, 71, 72, 73, 74, 75, 79, 80, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 102, 103, 105, 106, 107, 109, 110, 111, 112, 113, 114, 116, 117, 118, 120, 121, 122, 123, 125, 126, 127, 128, 129, 131, 132, 133, 134, 135, 136, 137, 139, 140, 141, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 196], "want": [1, 2, 5, 8, 10, 12, 13, 16, 17, 25, 26, 41, 44, 62, 66], "financ": [1, 2, 10, 26], "would": [1, 2, 5, 16, 19, 25, 26, 44, 51, 57, 146, 157, 178, 193], "pass": [1, 2, 5, 8, 10, 18, 22, 28, 36, 40, 41, 45, 102, 103, 113, 114, 128, 136, 146, 157], "yahoodatabacktest": [1, 10, 25, 26, 32], "backtesting_start": [1, 2, 5, 6, 8, 10, 25, 26, 32, 43], "datetim": [1, 2, 5, 6, 8, 10, 13, 19, 20, 21, 25, 26, 32, 43, 44, 47, 62, 63, 66, 67, 72, 76, 78, 81, 83, 84, 90, 91, 92, 93, 99, 100, 127, 130, 132, 135, 138, 139, 141, 146, 157, 171, 186], "start": [1, 2, 5, 6, 7, 8, 10, 11, 13, 17, 20, 21, 30, 32, 44, 72, 73, 78, 81, 102, 113, 173, 188], "period": [1, 2, 5, 7, 13, 21, 81, 196], "backtesting_end": [1, 2, 5, 6, 8, 10, 25, 26, 32], "end": [1, 2, 6, 7, 8, 10, 14, 20, 21, 26, 42], "int": [1, 12, 19, 20, 21, 22, 36, 39, 44, 62, 63, 66, 67, 72, 73, 81, 84, 85, 86, 87, 88, 89, 93, 94, 95, 96, 97, 98, 102, 103, 113, 114, 146, 147, 157, 158, 172, 173, 178, 187, 188, 193], "number": [1, 12, 15, 16, 17, 21, 22, 29, 32, 44, 72, 73, 84, 87, 88, 93, 96, 97, 146, 157, 172, 173, 178, 187, 188, 193], "minut": [1, 5, 13, 17, 20, 21, 25, 26, 29, 30, 32, 40, 43, 44, 72, 73, 84, 86, 88, 93, 95, 97, 102, 103, 113, 114, 172, 173, 178, 187, 188, 193], "befor": [1, 2, 5, 7, 10, 13, 14, 15, 17, 20, 22, 25, 26, 29, 30, 31, 32, 40, 41, 42, 44, 72, 73, 102, 103, 113, 114, 151, 162, 172, 173, 187, 188, 196], "close": [1, 5, 12, 13, 20, 21, 22, 28, 29, 32, 33, 40, 43, 51, 57, 72, 74, 75, 78, 81, 102, 103, 113, 114, 151, 162, 172, 187], "method": [1, 6, 8, 15, 19, 20, 22, 23, 26, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 70, 101, 124, 125, 127, 129, 131, 133, 135, 137, 140, 165, 168, 172, 173, 178, 183, 187, 188, 193, 196], "call": [1, 5, 6, 8, 19, 20, 22, 28, 32, 34, 35, 36, 38, 39, 40, 41, 42, 44, 72, 74, 75, 125, 126, 128, 133, 134, 136, 152, 163], "open": [1, 2, 5, 12, 17, 20, 21, 22, 25, 29, 30, 31, 40, 43, 63, 67, 72, 78, 81, 102, 103, 113, 114, 143, 144, 145, 149, 151, 154, 155, 156, 160, 162, 173, 188], "second": [1, 12, 22, 32, 40, 43, 73, 81, 101, 107, 118, 178, 193], "sleep": [1, 2, 26, 40, 47, 101, 102, 113, 178, 193], "between": [1, 2, 13, 20, 21, 26, 32, 72, 178, 193], "iter": [1, 2, 6, 8, 13, 21, 32, 40, 41, 168, 171, 183, 186, 196], "str": [1, 19, 20, 21, 22, 23, 44, 52, 58, 62, 63, 66, 67, 72, 73, 74, 75, 76, 84, 93, 105, 106, 116, 117, 125, 126, 127, 129, 130, 132, 133, 134, 135, 137, 138, 141, 146, 153, 157, 164, 174, 178, 179, 189, 193, 194], "file": [1, 4, 5, 7, 14, 15, 17, 25, 26, 101, 105, 116, 165, 196], "write": [1, 2, 6, 8], "stat": [1, 28, 42], "float": [1, 5, 19, 20, 22, 23, 36, 39, 43, 44, 49, 51, 55, 57, 62, 63, 66, 67, 74, 75, 79, 80, 102, 103, 107, 113, 114, 118, 128, 131, 136, 140, 146, 147, 153, 157, 158, 164, 167, 169, 175, 182, 184, 190], "risk": [1, 7, 14, 25, 128, 136], "free": [1, 2, 6, 8, 17, 23, 26, 128, 136], "rate": [1, 6, 8, 20, 128, 136], "dict": [1, 21, 38, 42, 44, 46, 50, 54, 56, 60, 77, 104, 108, 115, 119, 146, 157], "set": [1, 2, 6, 8, 11, 14, 15, 16, 17, 19, 20, 21, 22, 25, 26, 29, 32, 43, 44, 54, 60, 72, 73, 78, 106, 117, 125, 133, 146, 157, 165, 166, 172, 173, 178, 187, 188, 193, 196], "up": [1, 2, 5, 6, 11, 14, 15, 17, 19, 25, 26, 63, 67, 196], "broker": [1, 5, 12, 16, 19, 20, 22, 23, 24, 25, 26, 32, 35, 36, 37, 39, 45, 72, 73, 74, 77, 81, 109, 110, 111, 112, 120, 121, 122, 123, 128, 136, 146, 152, 153, 157, 163, 164, 167, 182], "live": [1, 2, 12, 14, 15, 17, 20, 25, 43, 44, 82, 83, 85, 86, 87, 88, 89, 92, 94, 95, 96, 97, 98, 106, 117], "bool": [1, 22, 43, 44, 46, 72, 73, 74, 105, 116, 128, 136, 153, 164, 168, 170, 183, 185], "whether": [1, 17, 22, 44, 46, 72, 82, 128, 136, 146, 157], "automat": [1, 6, 8, 22, 146, 147, 157, 158, 196], "adjust": [1, 7, 14, 20, 21, 44], "initi": [1, 2, 6, 8, 13, 15, 25, 26, 27, 41, 106, 117, 165, 169, 172, 173, 178, 184, 187, 188, 193], "asset": [1, 2, 5, 9, 12, 13, 17, 18, 20, 21, 22, 23, 26, 33, 34, 35, 36, 37, 39, 40, 43, 44, 49, 51, 52, 53, 55, 57, 58, 59, 62, 66, 71, 72, 73, 74, 75, 77, 78, 79, 80, 81, 125, 126, 127, 128, 129, 131, 133, 134, 135, 136, 137, 140, 146, 147, 152, 153, 157, 158, 163, 164, 167, 177, 182, 192], "benchmark": [1, 2, 7], "compar": [1, 7, 14, 17], "If": [1, 5, 6, 8, 12, 13, 14, 16, 17, 20, 21, 25, 26, 30, 32, 36, 40, 44, 72, 73, 74, 81, 102, 103, 105, 113, 114, 116, 131, 140, 143, 146, 151, 154, 157, 162], "string": [1, 17, 19, 20, 21, 22, 44, 72, 73, 105, 116, 132, 141, 146, 157, 178, 193, 196], "convert": [1, 19, 20, 22, 26, 43, 44, 132, 141, 146, 157], "object": [1, 5, 10, 12, 18, 19, 20, 21, 22, 23, 24, 35, 36, 37, 39, 43, 44, 46, 52, 53, 58, 59, 71, 72, 73, 74, 75, 77, 78, 79, 80, 81, 109, 110, 111, 112, 120, 121, 122, 123, 126, 131, 134, 140, 144, 145, 146, 147, 148, 149, 152, 153, 155, 156, 157, 158, 159, 160, 163, 164, 176, 181, 191, 196], "plot": [1, 10, 46, 63, 67], "list": [1, 2, 13, 18, 19, 20, 23, 25, 31, 43, 44, 47, 48, 53, 59, 61, 70, 73, 75, 80, 82, 84, 93, 101, 106, 111, 112, 117, 122, 123, 124, 127, 129, 131, 135, 137, 140, 142, 145, 149, 153, 156, 160, 164, 166], "A": [1, 5, 7, 10, 12, 14, 22, 26, 44, 46, 52, 53, 58, 59, 77, 84, 93, 146, 153, 157, 164, 196], "pandasdatabacktest": [1, 5, 25], "contain": [1, 3, 20, 21, 22, 40, 42, 78, 152, 153, 163, 164], "cryptocurr": [1, 2, 6, 8, 13, 17, 20, 72, 73, 74, 75, 146, 157], "get": [1, 2, 5, 6, 8, 10, 11, 12, 13, 14, 17, 18, 20, 21, 22, 30, 31, 33, 38, 43, 44, 45, 47, 48, 49, 50, 51, 52, 53, 55, 56, 57, 58, 59, 61, 70, 72, 73, 75, 77, 79, 80, 82, 104, 115, 124, 147, 148, 149, 150, 158, 159, 160, 161, 165, 166, 167, 172, 173, 175, 178, 182, 187, 188, 190, 193, 196], "valuat": 1, "measur": [1, 7], "overal": [1, 7], "porfolio": 1, "valu": [1, 3, 5, 9, 12, 13, 14, 17, 19, 20, 21, 23, 28, 43, 45, 46, 48, 49, 51, 55, 57, 61, 62, 63, 66, 67, 72, 73, 128, 136, 153, 164, 175, 190, 196], "usual": [1, 47, 178, 193], "usdt": [1, 19, 49, 51, 55, 57, 72, 74, 146, 157], "usdc": 1, "dictionari": [1, 5, 8, 16, 36, 42, 43, 44, 46, 73, 77, 125, 126, 127, 128, 129, 131, 133, 134, 135, 136, 137, 140, 146, 157, 165], "posit": [1, 13, 18, 22, 26, 36, 39, 43, 45, 51, 52, 53, 57, 58, 59, 147, 150, 151, 158, 161, 162, 167, 175, 182, 190], "100": [1, 5, 12, 13, 16, 19, 20, 25, 26, 32, 42, 44, 72, 73, 109, 110, 111, 112, 120, 121, 122, 123, 125, 126, 128, 133, 134, 136, 144, 145, 146, 152, 153, 155, 156, 157, 163, 164], "200": [1, 12, 36, 44, 73, 111, 112, 122, 123, 153, 164], "aapl": [1, 2, 5, 6, 8, 10, 12, 16, 19, 20, 23, 26, 32, 35, 36, 37, 39, 72, 73, 145, 156], "show": [1, 7, 52, 53, 58, 59, 147, 148, 149, 158, 159, 160], "save": [1, 5, 10, 17, 25, 46, 196], "must": [1, 2, 5, 6, 8, 10, 12, 16, 21, 22, 41, 72, 73, 131, 140, 146, 157], "within": [1, 17, 18, 107, 118, 143, 154], "tradingfe": [1, 24, 25, 26], "appli": [1, 17, 44], "bui": [1, 2, 5, 6, 7, 8, 9, 10, 12, 13, 16, 19, 22, 25, 26, 36, 40, 45, 49, 55, 105, 109, 110, 111, 112, 116, 120, 121, 122, 123, 144, 145, 146, 152, 153, 155, 156, 157, 163, 164, 167, 182], "order": [1, 2, 5, 6, 8, 9, 10, 12, 13, 18, 19, 23, 25, 26, 29, 30, 35, 36, 37, 39, 40, 41, 43, 47, 105, 109, 110, 111, 112, 116, 120, 121, 122, 123, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 167, 182], "dure": [1, 2, 4, 7, 17, 45, 73], "sell": [1, 7, 9, 22, 23, 29, 33, 34, 36, 40, 43, 45, 146, 150, 151, 152, 153, 157, 161, 162, 163, 164], "api": [1, 2, 6, 8, 10, 12, 13, 14, 15, 16, 17, 20, 26, 128, 136], "kei": [1, 2, 3, 5, 6, 8, 12, 14, 15, 16, 17, 21, 26, 46, 128, 136, 165, 196], "onli": [1, 5, 10, 13, 14, 15, 17, 19, 20, 21, 22, 23, 25, 26, 32, 41, 43, 44, 46, 72, 73, 74, 77, 81, 128, 136, 143, 153, 154, 164, 172, 187], "polygondatabacktest": [1, 2, 6, 8], "deprec": [1, 15, 146, 157, 180, 195], "pleas": [1, 2, 5, 6, 8, 10, 13, 15, 22, 72, 180, 195], "instead": [1, 5, 17, 20, 43, 107, 118, 128, 136, 180, 195], "paid": [1, 2, 167, 182], "subscript": [1, 11, 26], "default": [1, 5, 10, 17, 19, 20, 21, 32, 34, 44, 45, 54, 60, 62, 63, 66, 67, 72, 73, 74, 76, 91, 100, 106, 117, 125, 127, 128, 129, 130, 133, 135, 136, 137, 138, 146, 151, 153, 157, 162, 164, 172, 173, 176, 178, 179, 181, 187, 188, 191, 193, 194, 196], "return": [1, 7, 12, 19, 20, 21, 22, 23, 25, 26, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 42, 43, 44, 46, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 64, 65, 68, 69, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194], "from": [1, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16, 17, 19, 20, 21, 23, 25, 26, 41, 42, 44, 45, 72, 73, 76, 80, 125, 126, 127, 128, 129, 130, 131, 133, 134, 135, 136, 137, 138, 140, 146, 152, 153, 157, 163, 164, 196], "simpl": [1, 5, 6, 8, 10, 16, 22, 26, 146, 157], "first": [1, 5, 6, 8, 10, 13, 16, 17, 20, 21, 22, 25, 26, 30, 32, 73, 168, 178, 183, 193, 196], "mystrategi": [1, 2, 5, 6, 8, 10, 13, 16, 25, 26, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 45, 165], "def": [1, 2, 5, 6, 8, 10, 12, 13, 16, 25, 26, 27, 41, 106, 117, 165, 172, 173, 178, 187, 188, 193, 196], "on_trading_iter": [1, 2, 5, 6, 8, 10, 13, 16, 25, 26, 27, 28, 41, 42, 47, 102, 103, 113, 114, 165, 168, 172, 178, 183, 187, 193, 196], "self": [1, 2, 5, 6, 8, 10, 12, 13, 14, 16, 17, 19, 20, 22, 25, 26, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 47, 165], "first_iter": [1, 2, 5, 6, 8, 10, 26], "create_ord": [1, 2, 5, 6, 8, 10, 12, 13, 19, 22, 25, 26, 40, 47, 109, 110, 111, 112, 120, 121, 122, 123, 144, 145, 152, 153, 155, 156, 163, 164], "quantiti": [1, 2, 6, 7, 8, 10, 12, 13, 22, 23, 25, 26, 36, 39, 52, 53, 58, 59, 146, 157], "side": [1, 2, 6, 8, 12, 22, 25, 36, 43, 146, 157], "submit_ord": [1, 2, 5, 6, 8, 10, 13, 19, 22, 25, 26, 40, 43, 47, 109, 110, 111, 112, 120, 121, 122, 123, 144, 145, 146, 150, 155, 156, 157, 161], "creat": [1, 2, 5, 6, 7, 8, 10, 13, 14, 16, 17, 19, 21, 22, 36, 72, 125, 127, 129, 131, 133, 135, 137, 140, 142, 144, 145, 146, 155, 156, 157], "2018": [1, 20], "31": [1, 5, 10, 25, 26, 44, 125, 126, 133, 134], "symbol": [1, 2, 5, 6, 8, 12, 13, 19, 20, 21, 22, 23, 25, 36, 44, 63, 67, 72, 73, 74, 146, 152, 153, 157, 163, 164], "qqq": 1, "asset_typ": [1, 5, 13, 19, 20, 44, 72, 73, 74, 146, 147, 152, 153, 157, 158, 163, 164], "vital": 2, "step": [2, 5, 14], "valid": [2, 19, 21, 22, 44, 125, 126, 133, 134, 146, 157], "your": [2, 5, 6, 7, 8, 10, 11, 12, 14, 15, 18, 20, 22, 40, 41, 47, 48, 49, 51, 55, 57, 61, 70, 82, 101, 146, 157, 165, 166, 178, 193, 196], "histor": [2, 6, 8, 12, 13, 20, 26, 43, 44, 70, 72, 73], "With": [2, 6, 8, 26], "can": [2, 5, 6, 8, 10, 11, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 25, 26, 29, 32, 41, 44, 45, 48, 49, 55, 61, 62, 63, 66, 67, 70, 72, 73, 82, 101, 124, 128, 136, 142, 146, 157, 165, 166, 178, 193], "across": [2, 17], "variou": [2, 6, 7, 8, 14], "even": [2, 6, 8, 30, 153, 164], "own": [2, 5, 6, 8, 12, 13, 16, 17, 23, 25, 26, 150, 161], "custom": [2, 25, 32, 146, 157, 165], "guid": [2, 13, 16, 25, 26], "walk": [2, 17], "through": [2, 13, 14, 17], "explain": 2, "introduc": 2, "why": [2, 26], "see": [2, 13, 14, 15, 17, 19, 20, 25, 26, 44, 48, 61, 70, 82, 101, 124, 142], "past": [2, 22, 25], "help": [2, 3, 6, 8, 25], "identifi": [2, 13, 19, 22, 148, 159], "weak": 2, "strength": 2, "deploi": [2, 26], "them": [2, 11, 17, 20, 22, 25, 26, 47, 48, 61, 70, 82, 101, 124, 142, 145, 156], "market": [2, 11, 12, 13, 17, 22, 25, 26, 28, 29, 30, 31, 32, 40, 43, 74, 75, 102, 103, 106, 109, 110, 111, 112, 113, 114, 117, 120, 121, 122, 123, 146, 151, 152, 153, 157, 162, 163, 164, 172, 173, 175, 187, 188, 190], "begin": [2, 43], "make": [2, 4, 5, 6, 8, 17, 22, 25, 26, 74, 75], "sure": [2, 6, 8, 25, 26], "machin": 2, "follow": [2, 5, 6, 8, 13, 14, 15, 17, 19, 20, 22, 26, 27, 30, 41, 78, 165, 178, 193], "command": [2, 25, 26], "pip": [2, 5, 10, 13, 25, 26], "upgrad": [2, 5, 10, 25, 26], "latest": [2, 5, 10, 13, 17, 25, 26, 72], "version": [2, 5, 7, 10, 17, 25, 26], "onc": [2, 14, 15, 16, 17, 22, 25, 26, 32, 41, 146, 157, 196], "id": [2, 15, 17, 148, 159, 196], "like": [2, 5, 17, 21, 25, 26, 29, 30, 31, 32, 33, 43, 165], "visual": [2, 3, 7, 25], "studio": 2, "code": [2, 5, 6, 7, 8, 13, 14, 17, 25, 26, 28, 29, 30, 33, 34, 35, 36, 37, 38, 39, 62, 66, 102, 103, 113, 114, 165], "v": [2, 7, 19], "pycharm": 2, "quick": 2, "download": [2, 5, 6, 8, 25, 26], "offici": 2, "websit": [2, 7, 10, 13, 14, 16, 17], "http": [2, 6, 8, 12, 13, 14, 15, 16, 17, 20, 25, 26], "visualstudio": 2, "com": [2, 7, 15, 16, 17, 25, 26], "python": [2, 5, 25, 105, 116], "extens": 2, "go": [2, 5, 12, 15, 17, 25, 26], "search": [2, 26], "new": [2, 5, 7, 14, 17, 19, 20, 22, 26, 36, 37, 43, 54, 60, 146, 157, 167, 182], "project": [2, 6, 8, 17], "folder": [2, 5, 10, 13, 17], "termin": [2, 13, 25, 26], "re": [2, 11, 14, 17, 26, 82], "readi": [2, 14, 17, 41, 146, 157], "support": [2, 6, 7, 8, 13, 14, 17, 21, 25, 26, 44, 63, 67, 128, 136, 146, 157], "suit": [2, 26], "differ": [2, 3, 5, 7, 11, 13, 14, 17, 20, 25, 26, 45], "need": [2, 6, 8, 13, 14, 16, 17, 25, 27, 41, 43, 72, 73, 77], "": [2, 3, 6, 7, 8, 13, 14, 16, 17, 18, 21, 25, 26, 38, 41, 46, 52, 58, 82, 83, 85, 86, 87, 88, 89, 90, 91, 92, 94, 95, 96, 97, 98, 99, 100, 128, 136, 147, 158, 165, 178, 193, 196], "overview": 2, "avail": [2, 9, 10, 17, 20, 21, 23, 26, 47, 72, 73, 106, 117, 128, 136, 153, 164, 167, 182], "etf": [2, 10], "suitabl": [2, 17], "longer": 2, "term": 2, "ideal": [2, 17], "intradai": 2, "section": [2, 14, 17, 25, 47], "2": [2, 6, 17, 22, 30, 32, 62, 66, 72, 73, 111, 112, 122, 123, 153, 164, 178, 193], "offer": [2, 7, 14, 17, 26], "two": [2, 3, 11, 19, 22, 25, 26, 73, 145, 156], "year": [2, 6, 8], "plan": [2, 14, 17], "faster": [2, 6, 8], "retriev": [2, 19, 21, 74, 75, 78, 196], "coupon": [2, 6, 8], "lumi10": [2, 6], "10": [2, 6, 8, 13, 17, 19, 20, 32, 40, 44, 63, 67, 82, 127, 135, 152, 153, 163, 164, 165, 172, 173, 178, 187, 188, 193, 196], "off": [2, 6, 8], "3": [2, 12, 17, 146, 157], "design": [2, 17, 25, 27, 41], "look": [2, 5, 15, 26], "price": [2, 6, 8, 9, 13, 16, 17, 19, 20, 21, 22, 23, 31, 36, 39, 43, 44, 45, 47, 62, 63, 66, 67, 70, 72, 73, 74, 75, 78, 128, 136, 146, 152, 153, 157, 163, 164], "secur": [2, 5, 10, 14, 19, 22], "account": [2, 6, 8, 11, 12, 13, 15, 16, 17, 26, 43, 47, 49, 51, 53, 55, 57, 59, 61, 150, 161, 167, 182], "usernam": [2, 8, 11, 17, 26], "password": [2, 8, 13, 14, 17, 196], "net": [2, 8, 51, 57], "lumi": [2, 7, 8], "4": [2, 17, 26, 147, 158], "full": [2, 6, 8, 11, 14, 26, 125, 133], "flexibl": [2, 5, 6, 8, 25], "dataset": 2, "e": [2, 9, 17, 19, 20, 21, 22, 23, 25, 72, 73, 74, 146, 147, 152, 157, 158, 163], "g": [2, 9, 17, 20, 21, 22, 23, 25, 72, 73, 146, 157], "databas": [2, 5, 17, 26], "export": 2, "manual": [2, 14, 17], "configur": [2, 11, 15, 26], "ve": [2, 13, 16, 26], "select": [2, 14, 17], "built": [2, 5, 26], "addit": [2, 14, 17, 19, 22, 146, 157], "specif": [2, 7, 13, 14, 17, 19, 22, 41, 44, 62, 66, 109, 120, 125, 126, 133, 134, 146, 157, 166], "replac": [2, 6, 8, 13], "your_polygon_api_kei": [2, 6], "actual": [2, 13, 22, 41, 43, 175, 190], "1d": [2, 6, 8, 20, 21, 40, 44], "get_last_pric": [2, 6, 8, 10, 13, 16, 20, 21, 26, 44, 47], "qty": [2, 6, 8], "portfolio_valu": [2, 6, 8, 10, 13, 26, 28, 42, 177, 192], "__name__": [2, 6, 8, 13], "__main__": [2, 6, 8, 13], "2023": [2, 6, 8, 44, 125, 126, 133, 134, 196], "result": [2, 5, 6, 8, 10, 25, 26, 42], "inform": [2, 3, 5, 9, 10, 13, 17, 43, 44, 77, 78, 126, 131, 134, 140, 146, 157, 166], "about": [2, 9, 11, 26, 166], "refer": [2, 3, 17, 26, 27], "crucial": [2, 17, 25], "understand": [2, 4, 25], "aspect": 2, "execut": [2, 9, 17, 22, 23, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 45, 102, 103, 107, 109, 111, 113, 114, 118, 120, 122, 143, 152, 154, 163, 172, 173, 178, 187, 188, 193], "statist": 2, "analysi": [2, 4, 13, 46], "tear": 2, "sheet": 2, "includ": [2, 3, 7, 9, 10, 13, 17, 19, 20, 26, 32, 41, 44, 54, 60, 72, 124, 146, 148, 157, 159, 175, 190], "equiti": [2, 14, 51, 57], "curv": 2, "metric": [2, 7], "sharp": [2, 7], "ratio": [2, 7], "drawdown": [2, 7], "comparison": 2, "everi": [2, 25, 32, 40, 43, 47, 81, 196], "which": [2, 6, 7, 8, 9, 13, 14, 17, 20, 21, 22, 32, 41, 49, 51, 55, 57, 74, 75, 76, 77, 128, 130, 136, 138, 178, 193], "wa": [2, 12, 13, 27, 30, 33, 34, 41, 43, 72, 167, 182], "timestamp": [2, 12, 20, 44, 62, 63, 66, 67, 85, 86, 87, 88, 89, 94, 95, 96, 97, 98, 196], "essenti": [2, 17], "review": [2, 14], "potenti": [2, 25, 26, 147, 158], "issu": 2, "optim": [2, 7, 17, 26], "interpret": [2, 178, 193], "technic": [2, 13, 41], "move": [2, 7, 22, 26], "averag": [2, 7, 22, 23], "rsi": [2, 13], "respond": 2, "condit": [2, 22, 40], "base": [2, 7, 12, 13, 19, 20, 21, 22, 23, 24, 26, 40, 43, 44, 46, 72, 73, 74, 146, 157], "power": [2, 6, 8, 17, 25, 26], "framework": [2, 41], "multipl": [2, 17, 143, 154, 196], "By": [2, 17, 26, 34, 128, 136, 172, 173, 176, 178, 179, 181, 187, 188, 191, 193, 194], "quickli": [2, 14, 17, 25], "environ": [2, 14, 26, 196], "confid": 2, "further": [2, 17], "individu": [2, 26], "abov": [2, 15, 19, 20, 32], "uniqu": 3, "becaus": [3, 5, 6, 8, 10, 17, 43], "thei": [3, 5, 11, 17, 20, 26, 41, 81, 128, 136], "add_mark": [3, 26, 47], "add": [3, 5, 13, 14, 17, 19, 22, 25, 32, 43, 46, 62, 63, 66, 67], "marker": [3, 46, 63, 65, 67, 69], "add_lin": [3, 26, 47], "line": [3, 26, 46, 62, 63, 64, 66, 67, 68], "influenc": [3, 27, 41], "decis": [3, 4], "point": [3, 7, 9, 15, 22, 44, 62, 66, 72, 73, 147, 158], "time": [3, 5, 6, 8, 9, 12, 13, 14, 17, 20, 21, 25, 32, 41, 43, 44, 45, 71, 72, 73, 78, 81, 82, 87, 88, 96, 97, 102, 103, 107, 113, 114, 118, 128, 136, 146, 157, 168, 178, 183, 193], "event": [4, 26, 33, 34, 35, 36, 37, 38, 39, 43, 63, 67], "action": [4, 17], "taken": 4, "backtest": [4, 5, 7, 10, 17, 21, 22, 24, 32, 44, 46, 63, 67, 72, 73, 74, 75, 82, 83, 85, 86, 87, 88, 89, 92, 94, 95, 96, 97, 98, 106, 117, 170, 185], "debug": [4, 46, 196], "process": [4, 6, 8, 14, 17, 25, 37, 39, 152, 153, 163, 164, 196], "collect": [4, 5], "comprehens": [4, 25], "view": [4, 17], "refin": [4, 25], "note": [5, 10, 13, 14, 15, 17, 20, 22, 43, 77, 146, 157], "ensur": [5, 10, 14, 17, 21, 22, 25, 26, 146, 157], "proceed": [5, 10, 14, 25], "been": [5, 10, 15, 22, 23, 35, 36, 37, 39, 43, 74, 78], "some": [5, 10, 14, 25, 26, 44, 45, 74, 146, 157], "major": [5, 10], "chang": [5, 10, 12, 14, 16, 17, 20, 32], "modul": [5, 10, 26], "situat": 5, "much": [5, 6, 8, 12], "easier": [5, 17], "intend": [5, 17], "who": [5, 17, 52, 58, 147, 158], "after": [5, 6, 8, 13, 14, 17, 21, 26, 28, 30, 31, 40, 42, 44, 63, 67, 72, 76, 130, 138, 139, 196], "librari": [5, 7, 13, 16, 17, 25], "strictli": [5, 21], "parquet": 5, "etc": [5, 16, 20, 21, 40, 45, 48, 61, 63, 67, 77, 148, 159], "wish": [5, 26], "accept": [5, 19], "one": [5, 7, 13, 14, 17, 22, 25, 26, 41, 43, 47, 72, 109, 120, 146, 153, 157, 164], "frame": 5, "raw": [5, 20, 22], "addition": [5, 10, 20], "possibl": [5, 14, 32, 44, 62, 63, 66, 67, 153, 164], "contract": [5, 19, 20, 22, 32, 43], "also": [5, 10, 15, 17, 22, 25, 26, 32, 43, 72, 146, 151, 157, 162, 166], "difficult": 5, "backtestingbrok": [5, 6, 8, 10, 43], "next": [5, 6, 8, 12, 17, 26, 40, 76, 130, 138, 139], "normal": [5, 16, 131, 140], "someth": [5, 13], "0000": 5, "hr": [5, 21], "2359": [5, 21], "last": [5, 13, 20, 21, 22, 28, 30, 31, 42, 43, 44, 72, 73, 74, 75, 85, 86, 94, 95, 171, 186, 196], "consid": [5, 20, 177, 192], "zone": [5, 20], "unless": 5, "america": [5, 20, 44, 176, 179, 181, 191, 194], "york": [5, 17], "aka": 5, "est": 5, "receiv": [5, 14], "index": [5, 19, 20, 21, 26, 78], "datetime64": [5, 21], "column": [5, 20, 21, 78, 196], "high": [5, 20, 21, 25, 26, 43, 78, 81], "low": [5, 17, 20, 21, 43, 78, 81], "volum": [5, 20, 21, 78, 81], "should": [5, 10, 14, 16, 20, 22, 27, 40, 43, 45, 74, 107, 118, 128, 136], "2020": [5, 10, 25, 26, 72, 90, 91, 99, 100, 147, 152, 158, 163], "01": [5, 6, 8, 20, 25, 146, 147, 152, 157, 158, 163], "02": [5, 20], "09": 5, "00": [5, 44, 110, 121, 146, 152, 153, 157, 163, 164, 196], "3237": 5, "3234": 5, "75": 5, "3235": 5, "25": [5, 17], "16808": 5, "32": 5, "10439": 5, "33": 5, "50": [5, 22, 32, 146, 157, 178, 193], "3233": 5, "8203": 5, "04": [5, 44], "22": 5, "15": [5, 17, 20, 32, 44, 72, 73], "56": 5, "2800": 5, "2796": 5, "8272": 5, "57": 5, "2794": 5, "7440": 5, "58": 5, "2793": 5, "7569": 5, "yfinanc": [5, 44], "yf": [5, 44], "5d": 5, "interv": 5, "1m": [5, 21, 44], "to_csv": 5, "subsequ": [5, 6, 8], "ad": [5, 11, 13, 17, 19, 26, 72, 73], "One": [5, 17, 19, 22, 44, 146, 157], "load": [5, 18, 21, 63, 67, 196], "mai": [5, 13, 14, 17, 19, 22, 25, 72, 73, 81, 146, 157], "might": [5, 13, 14, 17], "entiti": [5, 13, 19, 20, 21, 22, 23, 24, 25, 26, 72, 73, 80, 146, 152, 153, 157, 163, 164], "assettyp": [5, 13, 19, 146, 152, 153, 157, 163, 164], "pd": [5, 20], "awar": [5, 20], "df": [5, 13, 20, 21, 30, 72, 73], "read_csv": 5, "third": 5, "we": [5, 6, 7, 8, 10, 11, 13, 17, 25, 26, 28, 47, 72, 146, 157], "least": [5, 41], "timestep": [5, 21, 43, 44, 72, 73, 84, 93], "either": [5, 19, 21, 22, 72, 73, 74, 75], "final": [5, 6, 8, 10, 14, 26], "trader": [5, 6, 8, 10, 12, 13, 14, 15, 16, 26, 33], "data_sourc": [5, 12, 43, 44, 72, 73], "datetime_start": [5, 43], "datetime_end": [5, 43], "strat": 5, "100000": 5, "add_strategi": [5, 12, 13, 14, 15, 16, 25, 26, 46], "run_al": [5, 13, 14, 15, 16, 25, 26, 46], "put": [5, 12, 16, 19, 25], "togeth": [5, 22, 25], "Then": [5, 13, 16, 72], "startegi": 5, "read": [5, 15, 25, 44], "same": [5, 14, 17, 22, 26, 73], "directori": [5, 14, 17], "script": 5, "pick": [5, 10, 17, 26], "rang": [5, 13, 17, 20, 21], "link": [6, 8, 14], "give": [6, 8, 13, 131, 140], "u": [6, 7, 8, 13, 14, 21, 26, 175, 190], "credit": [6, 8, 153, 164], "sale": [6, 8], "utm_sourc": 6, "affili": 6, "utm_campaign": 6, "robust": [6, 8], "fetch": [6, 8, 44, 126, 131, 134, 140], "simplifi": [6, 8], "simpli": [6, 8], "polygondatasourc": 6, "get_historical_pric": [6, 8, 13, 20, 26, 31, 44, 47, 73], "As": [6, 8, 17], "pai": [6, 8, 14], "mani": [6, 8, 13, 26, 32, 41, 81], "won": [6, 8], "t": [6, 8, 13, 14, 17, 26], "limit": [6, 8, 13, 14, 17, 22, 43, 72, 73, 81, 110, 121, 146, 152, 153, 157, 163, 164], "cach": [6, 8], "comput": [6, 8, 17, 25, 26], "so": [6, 8, 10, 13, 14, 17, 19, 22, 25, 26, 47, 82, 128, 136], "take": [6, 8, 17, 22, 25, 41, 44, 62, 63, 66, 67, 73, 74, 75, 125, 133], "bit": [6, 8], "obtain": [6, 8, 13, 44, 126, 127, 129, 131, 134, 135, 137, 140], "dashboard": [6, 8, 25], "necessari": [6, 8, 17, 43], "inherit": [6, 8, 45], "defin": [6, 7, 8, 13, 24, 27, 32, 41, 42, 43, 45, 165, 196], "hold": [6, 8, 20, 22, 23, 26, 36], "until": [6, 8, 12, 20, 102, 103, 113, 114, 146, 157], "determin": [6, 7, 8, 12, 22, 43, 106, 117, 146, 157, 166], "05": [6, 8, 146, 157, 196], "form": [6, 21, 81, 106, 117, 127, 129, 135, 137, 167, 182], "tool": [6, 8, 17, 26], "capabl": [6, 8], "easi": [6, 8, 14, 17, 25, 26], "integr": [6, 8], "versatil": [6, 8, 13, 17], "choic": [6, 8, 14, 17], "gener": [7, 10, 13, 16, 26, 151, 162], "quantstat": 7, "varieti": 7, "annual": [7, 25, 26], "yearli": 7, "total": [7, 20, 28, 51, 57, 147, 158, 175, 190], "romad": 7, "over": [7, 19, 20, 25, 26, 62, 63, 66, 67], "maximum": [7, 17], "sortino": 7, "variat": 7, "differenti": 7, "harm": 7, "volatil": [7, 22, 128, 136], "max": [7, 13], "observ": 7, "loss": [7, 22, 43, 62, 63, 66, 67, 146, 152, 153, 157, 163, 164], "peak": 7, "trough": 7, "portfolio": [7, 9, 13, 23, 28, 51, 57, 63, 67, 175, 190], "attain": [7, 146, 157], "longest": 7, "durat": [7, 32, 146, 153, 157, 164, 178, 193], "reach": [7, 25, 26, 43], "accompani": 7, "graph": [7, 62, 63, 66, 67], "cumul": 7, "scale": [7, 196], "better": [7, 22, 146, 157], "exponenti": 7, "growth": 7, "showcas": 7, "tailor": 7, "achiev": [7, 22, 25, 26], "goal": 7, "condor": [7, 17], "martingal": 7, "iron": 7, "delta": [7, 128, 136], "previou": [7, 79, 80], "dte": 7, "expir": [7, 14, 19, 22, 32, 44, 72, 74, 125, 126, 127, 128, 133, 134, 135, 136, 139, 146, 157], "bband": 7, "v2": 7, "bolling": [7, 62, 66], "band": [7, 62, 66], "interest": [7, 13, 128, 136], "implement": [7, 17, 26, 27, 41, 44, 46], "visit": [7, 16, 17, 25, 26], "our": [7, 13, 17, 25, 26, 28], "lumiwealth": [7, 15, 26], "access": [7, 14, 16, 17, 20, 25, 26, 165, 196], "invest": [7, 14, 26], "question": 7, "email": [7, 14], "www": [8, 16], "thetadatabacktest": 8, "altern": 8, "both": [8, 14, 22, 25, 30, 146, 157], "argument": [8, 128, 136], "thetadata_usernam": 8, "thetadata_password": 8, "were": [9, 26, 38], "place": [9, 13, 18, 146, 151, 157, 162], "along": 9, "involv": 9, "strike": [9, 19, 44, 72, 126, 128, 131, 134, 136, 140, 146, 157], "ticker": [9, 19, 20, 32, 44, 81], "cash": [9, 13, 22, 26, 28, 42, 43, 48, 49, 51, 55, 57, 61, 175, 177, 180, 190, 192, 195], "amount": [9, 13, 20, 22, 28, 44, 49, 51, 55, 57, 79, 80, 146, 157], "cannot": 10, "veri": [10, 17, 26], "easili": [10, 26, 32, 45], "modifi": [10, 25, 26], "anyth": 10, "There": [10, 11, 146, 157], "aapl_pric": [10, 26], "alloc": 10, "11": [10, 17, 19, 26], "12": [10, 17, 19, 25, 26, 74], "speak": [11, 41], "learn": [11, 17, 25, 26], "alpaca": [11, 20, 26, 72, 73], "document": [11, 13, 14, 17, 25, 26, 72], "interact": [11, 13, 20, 22, 26, 45, 72, 73, 74, 81], "factor": [11, 26], "authent": [11, 26], "2fa": [11, 26], "secondari": [11, 26], "paper": [11, 12, 15, 16, 17, 26, 44], "legaci": [11, 26], "ccxt": [11, 26], "tradier": [11, 26, 77, 153, 164], "max_work": [12, 43, 44, 73], "20": [12, 13, 22, 32, 43, 165], "chunk_siz": [12, 44, 73], "connect_stream": [12, 43], "connect": [12, 13, 14, 17, 105, 116], "tradeapi": 12, "rest": [12, 14, 17, 41], "get_timestamp": [12, 26, 44, 47], "current": [12, 13, 14, 17, 21, 36, 37, 42, 43, 44, 49, 51, 52, 55, 57, 58, 62, 63, 66, 67, 72, 73, 77, 78, 82, 83, 84, 85, 86, 87, 88, 89, 92, 93, 94, 95, 96, 97, 98, 128, 136, 143, 149, 153, 154, 160, 164, 167, 175, 178, 182, 190, 193, 196], "unix": 12, "represent": [12, 21, 22, 44, 72, 73], "is_market_open": [12, 43], "get_time_to_open": [12, 43], "remain": [12, 39, 43, 172, 187], "get_time_to_clos": [12, 43], "alpaca_config": [12, 25, 26], "your_api_kei": [12, 13], "secret": [12, 13, 14, 16, 25, 26], "api_secret": [12, 25, 26], "your_api_secret": 12, "endpoint": 12, "print": [12, 42, 196], "alpacastrategi": 12, "on_trading_inter": [12, 32], "order_typ": [12, 153, 164], "asset_type_map": 12, "us_equ": 12, "cancel_ord": [12, 26, 43, 47, 149, 160], "cancel": [12, 22, 30, 35, 43, 71, 109, 111, 120, 122, 142, 143, 144, 145, 146, 149, 151, 154, 155, 156, 157, 160, 162], "get_historical_account_valu": [12, 43], "1400": 12, "1600": 12, "7": [12, 13, 17, 26, 32, 106, 117], "0830": 12, "0930": 12, "600": 12, "sampl": [12, 26], "1612172730": 12, "000234": 12, "boolean": [12, 151, 153, 162, 164], "map_asset_typ": 12, "orderdata": 12, "to_request_field": 12, "cryoptocurr": 13, "popular": 13, "find": [13, 14, 15, 16, 17, 26, 44, 76, 127, 129, 130, 131, 135, 137, 138, 139, 140], "readthedoc": 13, "en": 13, "enabl": [13, 14, 15], "wide": [13, 17, 63, 67], "coinbas": [13, 26], "pro": 13, "binanc": [13, 26], "kraken": [13, 26, 146, 157], "kucoin": [13, 26], "constantli": [13, 26], "don": [13, 14, 17, 26], "let": 13, "know": [13, 18], "ll": [13, 14, 16, 26], "desir": [13, 14, 21, 81, 128, 136], "credenti": [13, 14, 15], "rememb": [13, 26], "under": [13, 14, 17, 25], "similar": [13, 17, 30], "alwai": [13, 30, 43, 106, 117, 167, 182], "24": [13, 17, 32, 106, 117], "set_market": [13, 26, 32, 47], "few": [13, 17, 26, 101], "common": [13, 14], "coinbase_config": 13, "exchange_id": 13, "apikei": 13, "your_secret_kei": 13, "sandbox": [13, 17], "kraken_config": 13, "margin": [13, 146, 157], "kucoin_config": 13, "your_passphras": 13, "NOT": 13, "your_secret": 13, "coinbasepro_config": 13, "coinbasepro": 13, "instanti": [13, 16, 26, 43], "chosen": [13, 16, 17], "correct": [13, 14, 16], "instanc": [13, 196], "strategy_executor": [13, 16], "complet": [13, 14, 15, 17, 22, 26, 74, 75], "demonstr": 13, "pandas_ta": 13, "error": [13, 17, 22, 34], "importantfunct": 13, "30": [13, 40, 72, 73, 81, 196], "sinc": 13, "those": [13, 17, 166], "hour": [13, 20, 21, 32, 40, 44, 72, 73, 106, 117, 178, 193], "quot": [13, 19, 20, 21, 22, 44, 49, 51, 55, 57, 72, 73, 74, 75, 77, 146, 152, 153, 157, 163, 164, 175, 177, 190, 192], "transact": [13, 22, 167, 182], "btc": [13, 19, 20, 72, 73, 74, 146, 152, 153, 157, 163, 164], "0": [13, 15, 17, 19, 21, 22, 23, 24, 25, 32, 42, 43, 44, 87, 88, 96, 97, 146, 152, 153, 157, 163, 164, 173, 188, 196], "mkt_order": 13, "000": [13, 25, 26], "lmt_order": 13, "limit_pric": [13, 22, 43, 110, 121, 146, 152, 153, 157, 163, 164], "10000": [13, 25], "pair": [13, 20, 22, 44, 74, 75, 125, 126, 133, 134, 146, 157], "bar": [13, 18, 21, 26, 43, 44, 63, 67, 71, 72, 73, 74, 75, 78, 81, 83, 85, 86, 87, 88, 89, 92, 94, 95, 96, 97, 98, 128, 136], "max_pric": 13, "log_messag": [13, 16, 20, 26, 28, 30, 33, 34, 35, 36, 37, 38, 39, 40, 42, 47, 52, 53, 58, 59, 72, 73, 74, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 132, 141, 147, 148, 149, 158, 159, 160, 167, 168, 169, 170, 171, 172, 174, 175, 176, 177, 179, 181, 182, 183, 184, 185, 186, 187, 189, 190, 191, 192, 194], "f": [13, 16, 28, 35, 36, 38, 39, 42, 72, 74, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 132, 141, 169, 171, 174, 176, 177, 179, 181, 184, 186, 189, 191, 192, 194, 196], "calcul": [13, 20, 22, 43, 44, 128, 136], "ta": 13, "length": [13, 21, 43, 44, 72, 73, 78, 84, 93], "current_rsi": 13, "iloc": [13, 72], "macd": 13, "current_macd": 13, "55": 13, "ema": 13, "current_ema": 13, "get_posit": [13, 23, 26, 47, 150, 161], "share": [13, 16, 20, 22, 29, 31, 36, 39, 44, 146, 157, 175, 190], "asset_to_get": 13, "outstand": 13, "get_ord": [13, 26, 47], "whatev": 13, "last_pric": [13, 74, 75, 196], "color": [13, 62, 63, 66, 67, 105, 116], "green": [13, 62, 63, 66, 67, 105, 116], "dt": [13, 21, 44, 62, 63, 66, 67, 90, 91, 99, 100, 139], "get_datetim": [13, 26, 43, 44, 47], "check": [13, 17, 22, 26, 40, 43, 47, 72, 148, 149, 159, 160, 168, 170, 183, 185], "certain": [13, 63, 67], "eg": [13, 17, 19, 20, 25, 44, 47, 49, 51, 55, 57, 62, 63, 66, 67, 70, 77, 82, 105, 116, 125, 126, 133, 134, 146, 157, 178, 193], "9": [13, 17, 32], "30am": 13, "entir": 13, "example_strategi": [13, 25, 26], "github": [13, 15, 17, 20, 25, 26], "repositori": [13, 17], "brokerag": [14, 17], "firm": 14, "oper": [14, 17, 32, 41], "countri": 14, "around": [14, 17, 18], "world": [14, 17], "great": [14, 17], "especi": [14, 82, 196], "platform": [14, 26], "fee": [14, 17, 18, 26], "structur": [14, 26], "best": [14, 17], "deal": [14, 26], "real": [14, 16, 17, 25, 71, 78, 81], "subscrib": 14, "appropri": [14, 20], "packag": [14, 26], "depend": [14, 17, 72, 73], "exchang": [14, 21, 22, 44, 72, 73, 74, 75, 76, 83, 85, 86, 87, 88, 89, 92, 94, 95, 96, 97, 98, 125, 126, 127, 129, 130, 131, 133, 134, 135, 137, 138, 140, 146, 157], "snapshot": [14, 42], "bundl": 14, "On": [14, 17], "stream": [14, 71, 78, 81], "nasdaq": [14, 32, 106, 117], "network": 14, "c": 14, "utp": 14, "totalview": 14, "nyse": [14, 32, 76, 106, 117, 130, 138], "cta": 14, "openbook": 14, "ultra": 14, "opra": 14, "top": [14, 17, 26], "relat": [14, 17, 36], "suffic": 14, "login": 14, "ibkr": 14, "client": [14, 15, 17], "portal": 14, "navig": [14, 15, 17], "menu": [14, 26], "click": [14, 17], "prompt": 14, "incur": 14, "cost": [14, 17, 43], "associ": 14, "notif": [14, 17], "ib": [14, 19, 132, 141], "mobil": 14, "app": 14, "approv": 14, "interrupt": [14, 33, 196], "autom": [14, 17], "handl": 14, "solut": 14, "fulli": 14, "doesn": 14, "approach": 14, "conveni": 14, "primari": [14, 196], "maintain": [14, 17], "without": [14, 17, 25, 131, 140], "separ": [14, 17], "control": [14, 178, 193], "twice": 14, "enhanc": [14, 25], "complex": [14, 25], "restrict": 14, "ip": [14, 15, 17], "address": [14, 17], "tw": [14, 17, 20], "ibgatewai": 14, "permiss": [14, 19], "what": [14, 26, 47, 82, 177, 192], "keep": [14, 17, 22, 23, 81, 146, 157], "below": [14, 45, 47, 48, 61, 70, 74, 82, 101, 124, 142], "instruct": [14, 17, 146, 152, 153, 157, 163, 164], "given": [14, 20, 21, 43, 44, 52, 58, 71, 72, 73, 76, 84, 93, 125, 127, 129, 130, 131, 133, 135, 137, 138, 139, 140, 143, 148, 154, 159], "attempt": [14, 175, 190], "while": [14, 17], "disconnect": 14, "caus": 14, "loop": [14, 31, 40, 103, 114, 172, 187], "stop": [14, 22, 25, 32, 33, 40, 43, 62, 63, 66, 67, 102, 103, 113, 114, 146, 152, 153, 157, 163, 164, 172, 187, 196], "tediou": 14, "upper": 14, "right": [14, 17, 19, 28, 63, 67, 72, 152, 163], "corner": [14, 17], "scroll": [14, 17], "down": [14, 17, 25, 33, 63, 67], "plu": [14, 105, 116, 175, 190], "sign": 14, "button": [14, 17], "header": 14, "fill": [14, 17, 21, 22, 23, 36, 39, 43, 146, 157, 167, 182], "out": [14, 26, 43, 47, 52, 58, 74], "field": [14, 20, 22], "page": [14, 16, 17, 26], "At": [14, 25], "confirm": [14, 17], "activ": [14, 17, 22, 26, 74, 75, 78, 152, 153, 163, 164], "back": [14, 196], "enter": [14, 17, 19, 22, 31, 146, 157, 178, 193], "via": 14, "act": 14, "promptli": 14, "ask": [14, 77], "proof": 14, "author": 14, "upload": 14, "request": 14, "eula": 14, "signatur": 14, "block": 14, "submit": [14, 22, 37, 43, 47, 142, 146, 152, 153, 157, 163, 164], "practic": 14, "monei": [14, 16, 17, 25, 49, 51, 55, 57, 167, 182], "avoid": 14, "conflict": [14, 196], "variabl": [14, 26, 31, 42, 166], "env": [14, 17, 196], "ib_usernam": [14, 17], "user123": [14, 17], "ib_password": [14, 17], "password123": [14, 17], "account_id": [14, 17], "subaccount": [14, 17], "u17369206": [14, 17], "ib_api_url": [14, 17], "url": [14, 17], "host": [14, 17], "localhost": [14, 17, 196], "8000": [14, 17], "strangl": [14, 15], "tutori": [15, 26], "workstat": 15, "global": [15, 17, 20, 45], "activex": 15, "socket": [15, 17], "disabl": 15, "port": [15, 17], "7496": 15, "7497": [15, 17], "highli": [15, 26], "thoroughli": 15, "algorithm": [15, 17, 25], "master": 15, "999": 15, "py": [15, 17, 25, 26], "interactive_brokers_config": 15, "socket_port": 15, "client_id": 15, "digit": 15, "127": [15, 17], "entri": [15, 22], "except": [15, 20, 25, 26, 34], "interactivebrok": [15, 20], "interactive_brok": 15, "simple_start_ib": 15, "bot": [15, 17, 25, 32, 34, 45, 196], "blob": [15, 25, 26], "getting_start": 15, "dash": [16, 62, 66], "tradier_config": 16, "access_token": 16, "qtrz3zurd9244ahuw2aoyapgvyra": 16, "account_numb": 16, "va22904793": 16, "your_access_token": 16, "your_account_numb": 16, "That": 16, "now": [16, 25, 44, 74], "abl": 16, "less": [16, 146, 147, 157, 158], "than": [16, 17, 44, 82, 146, 147, 157, 158], "cover": [17, 26], "topic": 17, "decid": [17, 72], "correctli": 17, "applic": [17, 106, 117], "success": 17, "skip": [17, 30], "repl": 17, "eas": 17, "afford": 17, "expens": [17, 128, 136], "browser": [17, 25, 46], "edit": 17, "directli": [17, 43], "tip": 17, "howev": [17, 22, 30, 32, 146, 157], "excel": 17, "develop": [17, 26], "month": [17, 85, 94], "fit": [17, 101], "scalabl": [17, 196], "figur": 17, "blueprint": 17, "worker": 17, "background": 17, "butterfli": 17, "afa": 17, "starter": 17, "itself": 17, "left": [17, 63, 67], "sidebar": 17, "delet": 17, "unnecessari": 17, "trashcan": 17, "mandatori": [17, 19, 45, 146, 157], "ones": [17, 41], "restart": [17, 40], "servic": [17, 105, 116], "commit": 17, "redeploi": 17, "tab": 17, "6": [17, 19, 26], "monitor": 17, "expect": [17, 25, 26, 128, 136], "regularli": 17, "profit": [17, 22, 25, 26, 43, 62, 63, 66, 67], "8": [17, 26], "bottom": 17, "press": 17, "consol": [17, 105, 116], "everyth": [17, 26], "part": [17, 22, 41, 153, 164, 165], "locat": 17, "reserv": 17, "vm": 17, "13": [17, 127, 135], "downgrad": 17, "vcpu": 17, "effect": 17, "reduc": 17, "todai": [17, 74, 82], "wait": [17, 22, 39, 109, 110, 111, 112, 120, 121, 122, 123], "messag": [17, 101, 105, 116], "14": [17, 196], "16": [17, 74], "17": [17, 19, 32], "proper": 17, "discord": [17, 26], "webhook": 17, "live_config": 17, "correspond": [17, 35, 36, 37], "soon": 17, "incred": 17, "commiss": 17, "lot": [17, 166], "engag": 17, "tradier_access_token": 17, "token": 17, "qtrz3zurl9244ahuw4aoyapgvyra": 17, "tradier_account_numb": 17, "va12204793": 17, "tradier_is_pap": 17, "align": 17, "perfectli": 17, "seamlessli": 17, "alpaca_api_kei": 17, "pk7t6yvax6pmh1em20yn": 17, "alpaca_api_secret": 17, "9wgjls3wixq54fcphwwzjcp8jcfjfkuwsryskkma": 17, "alpaca_is_pap": 17, "unit": [17, 44, 146, 157, 178, 193], "state": [17, 166, 196], "typic": [17, 22, 165], "challeng": 17, "friendli": 17, "coinbase_api_kei": 17, "steea9fhiszntmpihqjudeqolitj0javz": 17, "coinbase_api_secret": 17, "nuzcnprsxjxxouxrhqe5k2k1xnqlpckh2xcutifkcw": 17, "coinbase_is_sandbox": 17, "focus": 17, "competit": 17, "kraken_api_kei": 17, "xyz1234567890abcdef": 17, "kraken_api_secret": 17, "abcdef1234567890abcdef1234567890abcdef1234": 17, "intern": [17, 146, 157], "arrai": [17, 21], "cfd": 17, "Their": 17, "presenc": 17, "compat": 17, "purpos": 17, "newer": 17, "interactive_brokers_port": 17, "interactive_brokers_client_id": 17, "123456": 17, "interactive_brokers_ip": 17, "ib_subaccount": 17, "subaccount1": 17, "src": 17, "paper_1": 17, "is_backtest": [17, 26], "a7py0zidhxde6qkx8ojjknp7cd87hwku": 17, "discord_webhook_url": 17, "send": [17, 105, 116], "123456789": 17, "db_connection_str": [17, 196], "histori": 17, "sqlite": 17, "account_histori": 17, "db": 17, "strategy_nam": 17, "strategy_id": [17, 196], "my": [17, 25], "think": [17, 82], "polygon_max_memory_byt": 17, "memori": 17, "byte": 17, "usag": [17, 26], "512000000": 17, "main": [17, 18, 22, 26, 33, 40, 45, 146, 157], "smoothli": 17, "verifi": 17, "behav": 17, "ey": 17, "straightforward": 17, "happi": 17, "assist": 17, "repres": [19, 22, 44, 45, 72, 73, 126, 134], "attribut": [19, 196], "track": [19, 23, 26, 52, 53, 58, 59, 148, 149, 159, 160], "underli": [19, 21, 128, 131, 136, 140], "ibm": [19, 145, 156], "just": [19, 26, 32, 36, 43, 146, 157], "corpor": 19, "printout": 19, "multipli": [19, 20, 36, 39, 44, 125, 126, 129, 131, 133, 134, 137, 140, 152, 163], "nexpir": 19, "expiri": [19, 127, 132, 135, 141], "june": 19, "2021": [19, 32, 128, 136, 139], "18": 19, "currenc": [19, 72, 146, 157, 167, 175, 177, 182, 190, 192], "eur": [19, 72, 73, 146, 152, 153, 157, 163, 164], "convers": [19, 178, 193], "gbp": [19, 152, 163], "behind": 19, "scene": 19, "anytim": 19, "due": 19, "precis": [19, 128, 136], "underlying_asset": 19, "case": [19, 21, 22], "yyyymmdd": [19, 132, 141], "yyyymm": 19, "multileg": [19, 22, 153, 164], "leverag": [19, 146, 157], "_asset_typ": 19, "_right": 19, "asset_type_must_be_one_of": 19, "right_must_be_one_of": 19, "26": 19, "155": 19, "base_asset": [19, 152, 153, 163, 164], "optionright": 19, "classmethod": [19, 20, 22, 23, 44], "from_dict": [19, 22, 23], "is_valid": 19, "symbol2asset": 19, "particularli": 19, "to_dict": [19, 22, 23], "assetsmap": 19, "map": 19, "userdict": 19, "datafram": [20, 21, 44, 64, 65, 68, 69, 72, 78, 81], "dividend": [20, 44, 79, 80, 128, 136, 167, 182], "stock_split": 20, "local": [20, 21, 42, 44, 90, 91, 99, 100, 128, 136], "timezon": [20, 21, 26, 44, 90, 91, 99, 100, 176, 181, 191], "new_york": [20, 44, 176, 179, 181, 191, 194], "helper": [20, 22, 45], "row": [20, 42, 72, 73, 81], "get_last_dividend": 20, "per": [20, 44], "get_momentum": 20, "momentum": 20, "aggregate_bar": 20, "frequenc": [20, 21], "Will": [20, 25, 62, 63, 66, 67, 74, 75, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 125, 126, 127, 128, 129, 131, 132, 133, 134, 135, 136, 137, 139, 140, 141, 151, 162, 176, 179, 181, 191, 194], "timefram": 20, "min": 20, "15min": 20, "1h": [20, 40], "specifi": [20, 22, 44, 72, 73, 146, 157, 196], "filter": 20, "daterang": 20, "get_total_volum": 20, "sum": [20, 51, 57], "themselv": 20, "supplier": 20, "exce": 20, "pace": 20, "throttl": 20, "respect": 20, "mention": 20, "tick": 20, "frequent": 20, "accur": [20, 44], "updat": [20, 22, 26, 36, 38, 108, 119, 146, 157, 167, 182], "rule": 20, "historical_limit": 20, "financi": [20, 25], "ohlcv": [20, 21, 43], "split": [20, 45], "instrument": 20, "yield": 20, "coin": [20, 146, 157], "eth": [20, 73, 146, 153, 157, 164], "num_period": 20, "get_total_dividend": 20, "get_total_stock_split": 20, "get_total_return": 20, "get_total_return_pct": 20, "percentag": [20, 25], "get_total_return_pct_chang": 20, "recent": [20, 72, 78], "get_bar": [20, 21, 44], "ethereum": 20, "bitcoin": 20, "grouper_kwarg": 20, "bars_agg": 20, "inclus": 20, "parse_bar_list": 20, "bar_list": 20, "singl": [20, 144, 155], "nobardatafound": 20, "date_start": 21, "date_end": 21, "trading_hours_start": 21, "trading_hours_end": 21, "23": 21, "59": 21, "input": [21, 102, 103, 113, 114], "manag": [21, 22, 26, 47, 61, 124], "attach": 21, "0001": 21, "localize_timezon": 21, "tz_local": 21, "eastern": 21, "utc": 21, "sybmol": 21, "datalin": 21, "numpi": 21, "iter_index": 21, "count": [21, 32, 78, 81, 196], "seri": 21, "set_tim": 21, "repair_times_and_fil": 21, "merg": 21, "reindex": 21, "nan": 21, "lower": 21, "set_date_format": 21, "set_dat": 21, "trim_data": 21, "trim": 21, "match": [21, 44], "to_datalin": 21, "exist": [21, 54, 60], "get_iter_count": 21, "len": 21, "check_data": 21, "wrapper": 21, "timeshift": [21, 43, 44, 72, 73, 84, 87, 88, 93, 96, 97], "_get_bars_dict": 21, "min_timestep": [21, 44], "timestep_map": [21, 44], "shift": [21, 44, 72, 73, 84, 87, 88, 93, 96, 97], "get_bars_between_d": 21, "start_dat": 21, "end_dat": 21, "get_quot": [21, 26, 47], "idx": 21, "belong": 22, "construct": 22, "goog": [22, 42, 72, 73], "googl": 22, "to_posit": 22, "get_incr": 22, "wait_to_be_regist": 22, "regist": [22, 110, 112, 121, 123], "wait_to_be_clos": 22, "keyword": 22, "my_limit_pric": 22, "500": [22, 36], "particular": [22, 125, 127, 129, 133, 135, 137], "higher": 22, "probabl": 22, "predetermin": 22, "exit": 22, "stop_pric": [22, 43, 146, 152, 153, 157, 163, 164], "my_stop_pric": 22, "400": 22, "stop_limit": [22, 146, 157], "combin": 22, "405": 22, "trail": [22, 146, 152, 157, 163], "continu": [22, 146, 157], "threshold": [22, 146, 157], "movement": [22, 146, 157], "trailing_stop": [22, 146, 157], "trail_pric": [22, 146, 157], "trail_perc": [22, 146, 157], "my_trail_pric": 22, "order_1": 22, "my_trail_perc": 22, "order_2": 22, "bracket": [22, 146, 157], "chain": [22, 44, 124, 125, 126, 127, 129, 131, 133, 134, 135, 137, 140], "long": 22, "short": [22, 106, 117], "importantli": 22, "extrem": 22, "fast": [22, 25, 26], "occur": 22, "take_profit_pric": [22, 146, 152, 157, 163], "stop_loss_pric": [22, 146, 152, 157, 163], "stop_loss_limit_pric": [22, 146, 157], "my_take_profit_pric": 22, "420": 22, "my_stop_loss_pric": 22, "parent": 22, "oto": [22, 146, 157], "trigger": [22, 146, 157], "variant": 22, "oco": [22, 146, 152, 157, 163], "word": [22, 167, 182], "where": [22, 25, 42, 146, 157], "alreadi": [22, 30, 36, 41], "submiss": 22, "position_fil": [22, 146, 157], "time_in_forc": [22, 146, 157], "good_till_d": [22, 146, 157], "date_cr": 22, "order_class": 22, "trade_cost": 22, "custom_param": [22, 146, 157], "avg_fill_pric": [22, 23], "error_messag": 22, "child_ord": 22, "tag": [22, 153, 164], "statu": [22, 148, 149, 159, 160], "unprocess": 22, "orderclass": 22, "ordersid": 22, "buy_to_clos": 22, "buy_to_cov": 22, "buy_to_open": 22, "sell_short": 22, "sell_to_clos": 22, "sell_to_open": 22, "orderstatu": 22, "cash_settl": 22, "partially_fil": 22, "partial_fil": 22, "ordertyp": 22, "tupl": [22, 73], "alia": 22, "add_child_ord": 22, "o": 22, "child": [22, 43], "add_transact": 22, "properti": [22, 23, 26, 43, 45, 46, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195], "cash_pend": 22, "equivalent_statu": 22, "equival": 22, "order_dict": 22, "get_fill_pric": 22, "weight": 22, "often": 22, "encount": 22, "partial": [22, 39], "pnl": 22, "yet": [22, 46], "is_act": 22, "otherwis": [22, 36], "rtype": [22, 44], "is_buy_ord": 22, "is_cancel": 22, "is_equivalent_statu": 22, "status1": 22, "status2": 22, "status": 22, "is_fil": 22, "is_opt": 22, "is_par": 22, "settlement": 22, "balanc": 22, "is_sell_ord": 22, "set_cancel": 22, "set_error": 22, "set_fil": 22, "set_identifi": 22, "set_new": 22, "set_partially_fil": 22, "update_raw": 22, "update_trail_stop_pric": 22, "was_transmit": 22, "retreiv": 23, "appl": 23, "add_ord": 23, "decim": [23, 74, 75, 146, 147, 157, 158], "get_selling_ord": [23, 26, 47], "value_typ": 23, "trading_fe": 24, "flat_fe": [24, 25], "percent_fe": [24, 25], "maker": 24, "taker": 24, "made": [25, 70, 82], "beginn": 25, "join": [25, 26], "commun": [25, 26], "cours": [25, 26], "shown": [25, 26], "discov": [25, 26], "skill": 25, "expert": [25, 26], "guidanc": 25, "resourc": 25, "welcom": 25, "hope": 25, "enjoi": 25, "easiest": 25, "comfort": 25, "copi": 25, "your_alpaca_api_kei": [25, 26], "your_alpaca_secret": [25, 26], "180": 25, "180m": 25, "carri": 25, "familiar": 25, "And": [25, 72, 73], "try": [25, 146, 157], "Or": [25, 26, 165], "dev": [25, 26], "simple_start_single_fil": [25, 26], "flat": 25, "trading_fee_1": 25, "trading_fee_2": 25, "sometim": 25, "spend": 25, "yappi": 25, "machinelearninglongshort": 25, "tqqq": 25, "get_func_stat": 25, "print_al": 25, "get_thread_stat": 25, "prof": 25, "pstat": 25, "snakeviz": 25, "web": [25, 46], "slow": 25, "robot": 26, "well": 26, "found": 26, "super": 26, "being": [26, 35, 36, 37, 38, 39, 44, 46, 72, 126, 134, 146, 157, 168, 183], "bug": 26, "fix": [26, 81], "fortun": 26, "against": 26, "switch": 26, "industri": 26, "tradest": 26, "build": [26, 27, 45], "analy": 26, "box": 26, "analyt": 26, "analyz": 26, "chart": [26, 47, 62, 63, 64, 65, 66, 67, 68, 69], "engin": [26, 41], "complic": 26, "confus": 26, "vector": 26, "math": 26, "mac": 26, "powershel": 26, "window": 26, "notic": 26, "exactli": 26, "suggest": 26, "lifecycl": [26, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 45, 47, 168, 172, 173, 178, 183, 187, 188, 193], "describ": [26, 45], "sub": 26, "tree": 26, "good": [26, 146, 157], "luck": 26, "forget": 26, "swim": 26, "gain": 26, "wealth": 26, "expertis": 26, "level": [26, 63, 67, 105, 116], "proven": 26, "record": 26, "home": 26, "pre": [26, 153, 164], "deploy": 26, "render": 26, "replit": 26, "profil": 26, "improv": 26, "before_market_open": [26, 27, 173, 188], "before_starting_trad": [26, 27, 30], "before_market_clos": [26, 27], "after_market_clos": [26, 27], "on_abrupt_clos": [26, 27, 34], "on_bot_crash": [26, 27], "trace_stat": [26, 27, 178, 193], "on_new_ord": [26, 27], "on_partially_filled_ord": [26, 27], "on_filled_ord": [26, 27], "on_canceled_ord": [26, 27], "on_parameters_upd": [26, 27], "backup": 26, "restor": 26, "benefit": 26, "var": 26, "storag": 26, "cancel_open_ord": [26, 30, 47, 151, 162], "sell_al": [26, 29, 33, 34, 47], "get_asset_potential_tot": [26, 47], "get_portfolio_valu": [26, 47], "get_cash": [26, 47], "get_historical_prices_for_asset": [26, 30, 47], "get_yesterday_dividend": [26, 44, 47], "get_next_trading_dai": [26, 47], "get_markers_df": [26, 47], "get_lines_df": [26, 47], "get_paramet": [26, 47, 165], "set_paramet": [26, 47, 165], "get_chain": [26, 44, 47, 127, 129, 131, 135, 137, 140], "get_greek": [26, 47], "get_strik": [26, 44, 47], "get_expir": [26, 47], "get_multipli": [26, 47], "options_expiry_to_datetime_d": [26, 47], "get_round_minut": [26, 44, 47], "get_last_minut": [26, 44, 47], "get_round_dai": [26, 44, 47], "get_last_dai": [26, 44, 47], "get_datetime_rang": [26, 43, 44, 47], "localize_datetim": [26, 44, 47], "to_default_timezon": [26, 44, 47], "miscellan": [26, 47], "update_paramet": [26, 38, 47], "await_market_to_clos": [26, 47], "await_market_to_open": [26, 47], "wait_for_order_registr": [26, 47], "wait_for_order_execut": [26, 47], "wait_for_orders_registr": [26, 47], "wait_for_orders_execut": [26, 47], "initial_budget": 26, "last_on_trading_iteration_datetim": 26, "pytz": 26, "unspent_monei": 26, "leg": 26, "abstract": [27, 41, 43, 44, 45], "pattern": [27, 41], "greatli": [27, 41], "react": [27, 41], "j": [27, 41], "compon": [27, 41, 196], "overload": [27, 34, 41, 43], "logic": [27, 29, 30, 40, 41, 43, 45], "dump": [28, 42], "report": 28, "busi": [29, 30], "execud": [29, 30], "unlik": 30, "launch": 30, "tlt": [30, 52, 58, 73, 75, 80, 111, 112, 122, 123, 146, 147, 153, 157, 158, 164], "bars_list": 30, "asset_bar": 30, "reiniti": 31, "reset": 31, "blacklist": 31, "my_custom_paramet": 32, "5m": [32, 178, 193], "d": [32, 178, 193], "constructor": 32, "later": 32, "strategy_1": 32, "my_other_paramet": 32, "strategy_2": 32, "my_last_paramet": 32, "asset_symbol": 32, "mnq": 32, "calendar": [32, 76, 130, 138], "marketcalendar": [32, 106, 117], "asx": [32, 106, 117], "bmf": [32, 106, 117], "cfe": [32, 106, 117], "bat": [32, 106, 117], "cme_equ": [32, 106, 117], "cbot_equ": [32, 106, 117], "cme_agricultur": [32, 106, 117], "cbot_agricultur": [32, 106, 117], "comex_agricultur": [32, 106, 117], "nymex_agricultur": [32, 106, 117], "cme_rat": [32, 106, 117], "cbot_rat": [32, 106, 117], "cme_interestr": [32, 106, 117], "cbot_interestr": [32, 106, 117], "cme_bond": [32, 106, 117], "cbot_bond": [32, 106, 117], "eurex": [32, 106, 117], "hkex": [32, 106, 117], "ic": [32, 106, 117], "iceu": [32, 106, 117], "nyfe": [32, 106, 117], "jpx": [32, 106, 117], "lse": [32, 106, 117], "os": [32, 106, 117], "six": [32, 106, 117], "sse": [32, 106, 117], "tsx": [32, 106, 117], "tsxv": [32, 106, 117], "bse": [32, 106, 117], "tase": [32, 106, 117], "tradingcalendar": [32, 106, 117], "asex": [32, 106, 117], "bvmf": [32, 106, 117], "cme": [32, 74, 106, 117], "iepa": [32, 106, 117], "xam": [32, 106, 117], "xasx": [32, 106, 117], "xbkk": [32, 106, 117], "xbog": [32, 106, 117], "xbom": [32, 106, 117], "xbru": [32, 106, 117], "xbud": [32, 106, 117], "xbue": [32, 106, 117], "xcbf": [32, 106, 117], "xcse": [32, 106, 117], "xdub": [32, 106, 117], "xfra": [32, 106, 117], "xetr": [32, 106, 117], "xhel": [32, 106, 117], "xhkg": [32, 106, 117], "xice": [32, 106, 117], "xidx": [32, 106, 117], "xist": [32, 106, 117], "xjse": [32, 106, 117], "xkar": [32, 106, 117], "xkl": [32, 106, 117], "xkrx": [32, 106, 117], "xlim": [32, 106, 117], "xli": [32, 106, 117], "xlon": [32, 106, 117], "xmad": [32, 106, 117], "xmex": [32, 106, 117], "xmil": [32, 106, 117], "xmo": [32, 106, 117], "xny": [32, 106, 117], "xnze": [32, 106, 117], "xosl": [32, 106, 117], "xpar": [32, 106, 117], "xph": [32, 106, 117], "xpra": [32, 106, 117], "xse": [32, 106, 117], "xsgo": [32, 106, 117], "xshg": [32, 106, 117], "xsto": [32, 106, 117], "xswx": [32, 106, 117], "xtae": [32, 106, 117], "xtai": [32, 106, 117], "xtk": [32, 106, 117], "xtse": [32, 106, 117], "xwar": [32, 106, 117], "xwbo": [32, 106, 117], "us_futur": [32, 106, 117], "max_bar": 32, "10m": [32, 178, 193], "20h": 32, "48": 32, "2d": [32, 178, 193], "gracefulli": 33, "shut": 33, "keybord": 33, "interupt": [33, 40], "abrupt": 33, "crash": [34, 40, 196], "rais": 34, "successfulli": [35, 36, 37], "300": [36, 178, 193], "sold": [36, 51, 57, 146, 157], "elif": 36, "bought": [36, 146, 157], "r": 37, "miss": 39, "again": [40, 103, 114], "pull": [40, 72], "hello": 40, "task": 41, "core": 41, "perspect": 41, "care": 41, "he": 41, "illustr": 41, "context": 42, "scope": 42, "random": 42, "google_symbol": 42, "snapshot_befor": 42, "random_numb": 42, "randint": 42, "my_custom_stat": 42, "trace": 42, "my_stat": 42, "my_other_stat": 42, "backtesting_brok": 43, "is_backtesting_brok": 43, "calculate_trade_cost": 43, "cash_settle_options_contract": 43, "settl": 43, "todo": [43, 74], "docstr": 43, "get_last_bar": 43, "els": 43, "limit_ord": [43, 146, 157], "open_": 43, "process_expired_option_contract": 43, "expri": 43, "process_pending_ord": 43, "evalu": 43, "mostli": 43, "should_continu": 43, "product": 43, "stop_ord": 43, "data_source_backtest": 43, "datasourcebacktest": [43, 44], "abc": [43, 44], "doe": [43, 44, 77, 146, 157], "pandasdata": [43, 44], "is_backtesting_data_sourc": [43, 44], "adjust_for_delai": [43, 44, 83, 92], "Not": [43, 106, 117], "delai": 44, "default_pytz": 44, "dsttzinfo": 44, "lmt": 44, "19": 44, "std": 44, "default_timezon": 44, "calculate_greek": 44, "asset_pric": [44, 128, 136], "underlying_pric": [44, 128, 136], "greek": [44, 124, 128, 136], "static": 44, "convert_timestep_str_to_timedelta": 44, "timedelta": [44, 72, 73, 102, 103, 113, 114], "1minut": 44, "1hour": 44, "1dai": 44, "include_after_hour": [44, 72, 73], "info": [44, 105, 116, 125, 126, 133, 134], "guarente": [44, 125, 126, 133, 134], "exp_dat": [44, 125, 126, 133, 134], "strike1": [44, 125, 126, 133, 134], "strike2": [44, 125, 126, 133, 134], "07": [44, 125, 126, 133, 134], "ago": [44, 72], "known": [44, 74, 75], "round": [44, 87, 88, 96, 97], "param": 44, "get_timestep": 44, "query_greek": [44, 128, 136], "queri": [44, 128, 136], "clean_trading_tim": 44, "dt_index": 44, "pcal": 44, "find_asset_in_data_stor": 44, "get_asset_by_nam": 44, "get_asset_by_symbol": 44, "get_asset": 44, "whose": [44, 126, 134], "smart": [44, 125, 127, 129, 133, 135, 137, 146, 157], "strke": [44, 125, 133], "stike": [44, 125, 133], "get_start_datetime_and_ts_unit": 44, "start_dt": 44, "start_buff": 44, "get_trading_days_panda": 44, "load_data": 44, "update_date_index": 44, "yahoo_data": 44, "yahoodata": 44, "15m": 44, "becuas": 44, "chain_data": 44, "option_chain": 44, "categori": [45, 101], "flow": 45, "is_backtest_brok": 46, "async_": 46, "async": 46, "asynchron": 46, "displi": 46, "displai": [46, 62, 63, 66, 67], "run_all_async": 46, "stop_al": 46, "insid": [47, 166, 172, 187], "thing": 47, "divid": 47, "sens": 47, "preced": 47, "seek": [52, 58, 144, 155], "sought": [52, 58, 147, 158], "assset": [52, 58], "empti": [53, 59], "overwrit": [54, 60], "style": [62, 66], "solid": [62, 66], "width": [62, 66, 72, 73], "detail_text": [62, 63, 66, 67], "overbought": [62, 63, 66, 67], "oversold": [62, 63, 66, 67], "red": [62, 63, 66, 67, 105, 116], "blue": [62, 63, 66, 67], "yellow": [62, 63, 66, 67], "orang": [62, 63, 66, 67], "purpl": [62, 63, 66, 67], "pink": [62, 63, 66, 67], "brown": [62, 63, 66, 67], "black": [62, 63, 66, 67], "white": [62, 63, 66, 67], "grai": [62, 66], "lightgrai": [62, 66], "darkgrai": [62, 66], "lightblu": [62, 66], "darkblu": [62, 66], "lightgreen": [62, 66], "darkgreen": [62, 66], "lightr": [62, 66], "darkr": [62, 66], "hex": [62, 66], "dot": [62, 63, 66, 67], "text": [62, 63, 66, 67], "hover": [62, 63, 66, 67], "add_chart_lin": [62, 66], "80": [62, 66], "circl": [63, 67], "size": [63, 67, 81], "mark": [63, 67], "cross": [63, 67], "resist": [63, 67], "squar": [63, 67], "diamond": [63, 67], "x": [63, 67], "triangl": [63, 67], "ne": [63, 67], "se": [63, 67], "sw": [63, 67], "nw": [63, 67], "pentagon": [63, 67], "hexagon": [63, 67], "hexagon2": [63, 67], "octagon": [63, 67], "star": [63, 67], "hexagram": [63, 67], "tall": [63, 67], "hourglass": [63, 67], "bowti": [63, 67], "thin": [63, 67], "asterisk": [63, 67], "hash": [63, 67], "y": [63, 67], "ew": [63, 67], "n": [63, 67], "arrow": [63, 67], "add_chart_mark": [63, 67], "get_symbol_bar": 70, "create_asset": [71, 72, 79], "backward": [72, 73], "week": [72, 73], "1month": [72, 73], "present": [72, 73, 128, 136], "integ": [72, 73, 178, 193], "extract": 72, "24h": 72, "last_ohlc": 72, "asset_bas": [72, 73, 152, 163], "asset_quot": [72, 73, 152, 153, 163, 164], "regular": 73, "eurusd": 73, "should_use_last_clos": 74, "depric": 74, "comment": 74, "2022": [74, 127, 135], "yyyi": [76, 130, 138], "mm": [76, 130, 138], "dd": [76, 130, 138], "next_trading_dai": [76, 130, 138], "backtets": 77, "bid": 77, "vwap": [78, 81], "intial": 78, "keep_bar": 81, "arriv": 81, "extend": 81, "kept": 81, "datatim": 82, "regardless": 82, "accord": [82, 83, 89, 92, 98], "1990": 82, "tell": 82, "jan": 82, "1991": 82, "rather": 82, "last_dai": [85, 94], "last_minut": [86, 95], "nearest": [87, 88, 96, 97], "round_dai": [87, 96], "round_minut": [88, 97], "paus": [102, 103, 107, 113, 114, 118, 178, 193], "overrid": [102, 103, 113, 114], "infinit": [103, 114], "await": [103, 114, 143, 154], "broadcast": [105, 116], "goe": [105, 116], "origin": [105, 116], "program": [107, 118, 165, 178, 193], "order1": [111, 112, 122, 123, 145, 153, 156, 164], "order2": [111, 112, 122, 123, 145, 153, 156, 164], "meant": 124, "cboe": [125, 127, 129, 133, 135, 137], "sort": [127, 129, 131, 135, 137, 140], "expiry_d": [127, 132, 135, 141], "could": [128, 136], "theoret": [128, 136], "implied_volatil": [128, 136], "impli": [128, 136], "option_pric": [128, 136], "pv_dividend": [128, 136], "gamma": [128, 136], "vega": [128, 136], "theta": [128, 136], "opt_asset": [128, 136], "option_typ": [128, 136], "20221013": [129, 137], "20200101": [132, 141], "next_option_expir": 139, "get_next_option_expir": 139, "gtc": [146, 153, 157, 164], "still": [146, 157], "restric": [146, 157], "compound": [146, 157], "suffici": [146, 157], "213": [146, 157], "obect": [146, 157], "favor": [146, 157], "guarante": [146, 157], "penetr": [146, 157], "forc": [146, 157], "remaind": [146, 157], "gtd": [146, 157], "though": [146, 157], "dollar": [146, 157, 175, 190], "percent": [146, 157], "stop_loss": [146, 152, 157, 163], "stop_loss_limit": [146, 157], "2019": [146, 157], "chf": [146, 157], "aset": [146, 152, 153, 157, 163, 164], "41000": [146, 157], "expiration_d": [147, 152, 158, 163], "order_id": [148, 159], "get_tracked_ord": [149, 160], "system": [151, 162], "leav": [151, 162], "strike_pric": [152, 163], "trailing_stop_pric": [152, 163], "41250": [152, 163], "41325": [152, 163], "41300": [152, 163], "is_multileg": [153, 164], "debit": [153, 164], "post": [153, 164], "asset_btc": [153, 164], "asset_eth": [153, 164], "my_paramet": 165, "main_tick": 165, "ema_threshold": 165, "whenev": [167, 182], "therefor": [167, 182], "zero": [167, 182], "excut": [168, 183], "happen": [171, 186], "equal": [172, 173, 178, 187, 188, 193], "resov": [175, 190], "held": [175, 190], "speed": [178, 193], "m": [178, 193], "h": [178, 193], "2h": [178, 193], "remov": [180, 195], "store": 196, "runtim": 196, "persist": 196, "resum": 196, "namespac": 196, "prevent": 196, "effici": 196, "assign": 196, "notat": 196, "trade_count": 196, "current_count": 196, "all_vari": 196, "output": 196, "102": 196, "postgresql": 196, "5432": 196, "database_nam": 196, "tabl": 196, "backup_table_nam": 196, "vars_backup": 196, "last_upd": 196, "json": 196, "550e8400": 196, "var1": 196, "var2": 196, "optionscondormartingal": 196}, "objects": {"entities": [[19, 0, 0, "-", "asset"], [20, 0, 0, "-", "bars"], [21, 0, 0, "-", "data"], [22, 0, 0, "-", "order"], [23, 0, 0, "-", "position"], [24, 0, 0, "-", "trading_fee"]], "entities.asset": [[19, 1, 1, "", "Asset"], [19, 1, 1, "", "AssetsMapping"]], "entities.asset.Asset": [[19, 1, 1, "", "AssetType"], [19, 1, 1, "", "OptionRight"], [19, 2, 1, "", "_asset_types"], [19, 2, 1, "", "_right"], [19, 2, 1, "id0", "asset_type"], [19, 3, 1, "id1", "asset_type_must_be_one_of"], [19, 2, 1, "id2", "expiration"], [19, 3, 1, "", "from_dict"], [19, 3, 1, "", "is_valid"], [19, 2, 1, "id3", "multiplier"], [19, 2, 1, "id4", "precision"], [19, 2, 1, "id5", "right"], [19, 3, 1, "id6", "right_must_be_one_of"], [19, 2, 1, "id7", "strike"], [19, 2, 1, "id8", "symbol"], [19, 3, 1, "", "symbol2asset"], [19, 3, 1, "", "to_dict"], [19, 2, 1, "", "underlying_asset"]], "entities.asset.Asset.AssetType": [[19, 2, 1, "", "CRYPTO"], [19, 2, 1, "", "FOREX"], [19, 2, 1, "", "FUTURE"], [19, 2, 1, "", "INDEX"], [19, 2, 1, "", "MULTILEG"], [19, 2, 1, "", "OPTION"], [19, 2, 1, "", "STOCK"]], "entities.asset.Asset.OptionRight": [[19, 2, 1, "", "CALL"], [19, 2, 1, "", "PUT"]], "entities.bars": [[20, 1, 1, "", "Bars"], [20, 4, 1, "", "NoBarDataFound"]], "entities.bars.Bars": [[20, 3, 1, "id0", "aggregate_bars"], [20, 3, 1, "", "filter"], [20, 3, 1, "id1", "get_last_dividend"], [20, 3, 1, "id2", "get_last_price"], [20, 3, 1, "id3", "get_momentum"], [20, 3, 1, "", "get_total_dividends"], [20, 3, 1, "", "get_total_return"], [20, 3, 1, "", "get_total_return_pct"], [20, 3, 1, "", "get_total_return_pct_change"], [20, 3, 1, "", "get_total_stock_splits"], [20, 3, 1, "id4", "get_total_volume"], [20, 3, 1, "", "parse_bar_list"], [20, 3, 1, "", "split"]], "entities.data": [[21, 1, 1, "", "Data"]], "entities.data.Data": [[21, 2, 1, "", "MIN_TIMESTEP"], [21, 2, 1, "", "TIMESTEP_MAPPING"], [21, 3, 1, "", "_get_bars_dict"], [21, 2, 1, "", "asset"], [21, 3, 1, "id0", "check_data"], [21, 3, 1, "id1", "columns"], [21, 2, 1, "", "datalines"], [21, 2, 1, "", "date_end"], [21, 2, 1, "", "date_start"], [21, 2, 1, "", "df"], [21, 3, 1, "id2", "get_bars"], [21, 3, 1, "", "get_bars_between_dates"], [21, 3, 1, "id3", "get_iter_count"], [21, 3, 1, "id4", "get_last_price"], [21, 3, 1, "", "get_quote"], [21, 2, 1, "", "iter_index"], [21, 3, 1, "id5", "repair_times_and_fill"], [21, 3, 1, "id6", "set_date_format"], [21, 3, 1, "id7", "set_dates"], [21, 3, 1, "id8", "set_times"], [21, 2, 1, "", "sybmol"], [21, 2, 1, "", "timestep"], [21, 3, 1, "id9", "to_datalines"], [21, 2, 1, "", "trading_hours_end"], [21, 2, 1, "", "trading_hours_start"], [21, 3, 1, "id10", "trim_data"]], "entities.order": [[22, 1, 1, "", "Order"]], "entities.order.Order": [[22, 1, 1, "", "OrderClass"], [22, 1, 1, "", "OrderSide"], [22, 1, 1, "", "OrderStatus"], [22, 1, 1, "", "OrderType"], [22, 1, 1, "", "Transaction"], [22, 3, 1, "", "add_child_order"], [22, 3, 1, "", "add_transaction"], [22, 5, 1, "", "avg_fill_price"], [22, 3, 1, "", "cash_pending"], [22, 3, 1, "", "equivalent_status"], [22, 3, 1, "", "from_dict"], [22, 3, 1, "", "get_fill_price"], [22, 3, 1, "", "get_increment"], [22, 3, 1, "", "is_active"], [22, 3, 1, "", "is_buy_order"], [22, 3, 1, "", "is_canceled"], [22, 3, 1, "", "is_equivalent_status"], [22, 3, 1, "", "is_filled"], [22, 3, 1, "", "is_option"], [22, 3, 1, "", "is_parent"], [22, 3, 1, "", "is_sell_order"], [22, 5, 1, "", "quantity"], [22, 3, 1, "", "set_canceled"], [22, 3, 1, "", "set_error"], [22, 3, 1, "", "set_filled"], [22, 3, 1, "", "set_identifier"], [22, 3, 1, "", "set_new"], [22, 3, 1, "", "set_partially_filled"], [22, 5, 1, "", "status"], [22, 3, 1, "", "to_dict"], [22, 3, 1, "", "to_position"], [22, 3, 1, "", "update_raw"], [22, 3, 1, "", "update_trail_stop_price"], [22, 3, 1, "", "wait_to_be_closed"], [22, 3, 1, "", "wait_to_be_registered"], [22, 3, 1, "", "was_transmitted"]], "entities.order.Order.OrderClass": [[22, 2, 1, "", "BRACKET"], [22, 2, 1, "", "MULTILEG"], [22, 2, 1, "", "OCO"], [22, 2, 1, "", "OTO"]], "entities.order.Order.OrderSide": [[22, 2, 1, "", "BUY"], [22, 2, 1, "", "BUY_TO_CLOSE"], [22, 2, 1, "", "BUY_TO_COVER"], [22, 2, 1, "", "BUY_TO_OPEN"], [22, 2, 1, "", "SELL"], [22, 2, 1, "", "SELL_SHORT"], [22, 2, 1, "", "SELL_TO_CLOSE"], [22, 2, 1, "", "SELL_TO_OPEN"]], "entities.order.Order.OrderStatus": [[22, 2, 1, "", "CANCELED"], [22, 2, 1, "", "CANCELLING"], [22, 2, 1, "", "CASH_SETTLED"], [22, 2, 1, "", "ERROR"], [22, 2, 1, "", "EXPIRED"], [22, 2, 1, "", "FILLED"], [22, 2, 1, "", "NEW"], [22, 2, 1, "", "OPEN"], [22, 2, 1, "", "PARTIALLY_FILLED"], [22, 2, 1, "", "SUBMITTED"], [22, 2, 1, "", "UNPROCESSED"]], "entities.order.Order.OrderType": [[22, 2, 1, "", "BRACKET"], [22, 2, 1, "", "LIMIT"], [22, 2, 1, "", "MARKET"], [22, 2, 1, "", "OCO"], [22, 2, 1, "", "OTO"], [22, 2, 1, "", "STOP"], [22, 2, 1, "", "STOP_LIMIT"], [22, 2, 1, "", "TRAIL"]], "entities.order.Order.Transaction": [[22, 2, 1, "", "price"], [22, 2, 1, "", "quantity"]], "entities.position": [[23, 1, 1, "", "Position"]], "entities.position.Position": [[23, 3, 1, "", "add_order"], [23, 2, 1, "", "asset"], [23, 5, 1, "id0", "available"], [23, 2, 1, "", "avg_fill_price"], [23, 3, 1, "", "from_dict"], [23, 3, 1, "", "get_selling_order"], [23, 5, 1, "id1", "hold"], [23, 2, 1, "", "orders"], [23, 5, 1, "id2", "quantity"], [23, 2, 1, "", "strategy"], [23, 2, 1, "", "symbol"], [23, 3, 1, "", "to_dict"], [23, 3, 1, "", "value_type"]], "entities.trading_fee": [[24, 1, 1, "", "TradingFee"]], "lumibot.backtesting": [[43, 0, 0, "-", "backtesting_broker"]], "lumibot.backtesting.backtesting_broker": [[43, 1, 1, "", "BacktestingBroker"]], "lumibot.backtesting.backtesting_broker.BacktestingBroker": [[43, 2, 1, "", "IS_BACKTESTING_BROKER"], [43, 3, 1, "", "calculate_trade_cost"], [43, 3, 1, "", "cancel_order"], [43, 3, 1, "", "cash_settle_options_contract"], [43, 5, 1, "", "datetime"], [43, 3, 1, "", "get_historical_account_value"], [43, 3, 1, "", "get_last_bar"], [43, 3, 1, "", "get_time_to_close"], [43, 3, 1, "", "get_time_to_open"], [43, 3, 1, "", "is_market_open"], [43, 3, 1, "", "limit_order"], [43, 3, 1, "", "process_expired_option_contracts"], [43, 3, 1, "", "process_pending_orders"], [43, 3, 1, "", "should_continue"], [43, 3, 1, "", "stop_order"], [43, 3, 1, "", "submit_order"], [43, 3, 1, "", "submit_orders"]], "lumibot.brokers": [[12, 0, 0, "-", "alpaca"]], "lumibot.brokers.alpaca": [[12, 1, 1, "", "Alpaca"], [12, 1, 1, "", "OrderData"]], "lumibot.brokers.alpaca.Alpaca": [[12, 2, 1, "", "ASSET_TYPE_MAP"], [12, 2, 1, "", "api"], [12, 3, 1, "", "cancel_order"], [12, 3, 1, "", "get_historical_account_value"], [12, 3, 1, "id0", "get_time_to_close"], [12, 3, 1, "id1", "get_time_to_open"], [12, 3, 1, "id2", "get_timestamp"], [12, 3, 1, "id3", "is_market_open"], [12, 3, 1, "", "map_asset_type"]], "lumibot.brokers.alpaca.OrderData": [[12, 3, 1, "", "to_request_fields"]], "lumibot": [[44, 0, 0, "-", "data_sources"]], "lumibot.data_sources": [[44, 0, 0, "-", "data_source"], [43, 0, 0, "-", "data_source_backtesting"], [44, 0, 0, "-", "pandas_data"], [44, 0, 0, "-", "yahoo_data"]], "lumibot.data_sources.data_source": [[44, 1, 1, "", "DataSource"]], "lumibot.data_sources.data_source.DataSource": [[44, 2, 1, "", "DEFAULT_PYTZ"], [44, 2, 1, "", "DEFAULT_TIMEZONE"], [44, 2, 1, "", "IS_BACKTESTING_DATA_SOURCE"], [44, 2, 1, "", "MIN_TIMESTEP"], [44, 2, 1, "", "SOURCE"], [44, 2, 1, "", "TIMESTEP_MAPPING"], [44, 3, 1, "", "calculate_greeks"], [44, 3, 1, "", "convert_timestep_str_to_timedelta"], [44, 3, 1, "", "get_bars"], [44, 3, 1, "", "get_chains"], [44, 3, 1, "", "get_datetime"], [44, 3, 1, "", "get_datetime_range"], [44, 3, 1, "", "get_historical_prices"], [44, 3, 1, "", "get_last_day"], [44, 3, 1, "", "get_last_minute"], [44, 3, 1, "", "get_last_price"], [44, 3, 1, "", "get_last_prices"], [44, 3, 1, "", "get_round_day"], [44, 3, 1, "", "get_round_minute"], [44, 3, 1, "", "get_strikes"], [44, 3, 1, "", "get_timestamp"], [44, 3, 1, "", "get_timestep"], [44, 3, 1, "", "get_yesterday_dividend"], [44, 3, 1, "", "get_yesterday_dividends"], [44, 3, 1, "", "localize_datetime"], [44, 3, 1, "", "query_greeks"], [44, 3, 1, "", "to_default_timezone"]], "lumibot.data_sources.data_source_backtesting": [[43, 1, 1, "", "DataSourceBacktesting"]], "lumibot.data_sources.data_source_backtesting.DataSourceBacktesting": [[43, 2, 1, "", "IS_BACKTESTING_DATA_SOURCE"], [43, 3, 1, "", "get_datetime"], [43, 3, 1, "", "get_datetime_range"]], "lumibot.data_sources.pandas_data": [[44, 1, 1, "", "PandasData"]], "lumibot.data_sources.pandas_data.PandasData": [[44, 2, 1, "", "SOURCE"], [44, 2, 1, "", "TIMESTEP_MAPPING"], [44, 3, 1, "", "clean_trading_times"], [44, 3, 1, "", "find_asset_in_data_store"], [44, 3, 1, "", "get_asset_by_name"], [44, 3, 1, "", "get_asset_by_symbol"], [44, 3, 1, "", "get_assets"], [44, 3, 1, "", "get_chains"], [44, 3, 1, "", "get_historical_prices"], [44, 3, 1, "", "get_last_price"], [44, 3, 1, "", "get_last_prices"], [44, 3, 1, "", "get_start_datetime_and_ts_unit"], [44, 3, 1, "", "get_trading_days_pandas"], [44, 3, 1, "", "get_yesterday_dividend"], [44, 3, 1, "", "get_yesterday_dividends"], [44, 3, 1, "", "load_data"], [44, 3, 1, "", "update_date_index"]], "lumibot.data_sources.yahoo_data": [[44, 1, 1, "", "YahooData"]], "lumibot.data_sources.yahoo_data.YahooData": [[44, 2, 1, "", "MIN_TIMESTEP"], [44, 2, 1, "", "SOURCE"], [44, 2, 1, "", "TIMESTEP_MAPPING"], [44, 3, 1, "", "get_chains"], [44, 3, 1, "", "get_historical_prices"], [44, 3, 1, "", "get_last_price"], [44, 3, 1, "", "get_strikes"]], "lumibot.strategies.strategy": [[45, 0, 0, "-", "Strategy"]], "lumibot.strategies.strategy.Strategy": [[66, 6, 1, "", "add_line"], [67, 6, 1, "", "add_marker"], [28, 6, 1, "", "after_market_closes"], [113, 6, 1, "", "await_market_to_close"], [114, 6, 1, "", "await_market_to_open"], [29, 6, 1, "", "before_market_closes"], [30, 6, 1, "", "before_market_opens"], [31, 6, 1, "", "before_starting_trading"], [154, 6, 1, "", "cancel_open_orders"], [155, 6, 1, "", "cancel_order"], [156, 6, 1, "", "cancel_orders"], [71, 6, 1, "", "cancel_realtime_bars"], [182, 5, 1, "", "cash"], [157, 6, 1, "", "create_order"], [183, 5, 1, "", "first_iteration"], [158, 6, 1, "", "get_asset_potential_total"], [55, 6, 1, "", "get_cash"], [133, 6, 1, "", "get_chain"], [134, 6, 1, "", "get_chains"], [92, 6, 1, "", "get_datetime"], [93, 6, 1, "", "get_datetime_range"], [135, 6, 1, "", "get_expiration"], [136, 6, 1, "", "get_greeks"], [72, 6, 1, "", "get_historical_prices"], [73, 6, 1, "", "get_historical_prices_for_assets"], [94, 6, 1, "", "get_last_day"], [95, 6, 1, "", "get_last_minute"], [74, 6, 1, "", "get_last_price"], [75, 6, 1, "", "get_last_prices"], [68, 6, 1, "", "get_lines_df"], [69, 6, 1, "", "get_markers_df"], [137, 6, 1, "", "get_multiplier"], [138, 6, 1, "", "get_next_trading_day"], [139, 6, 1, "", "get_option_expiration_after_date"], [159, 6, 1, "", "get_order"], [160, 6, 1, "", "get_orders"], [115, 6, 1, "", "get_parameters"], [57, 6, 1, "", "get_portfolio_value"], [58, 6, 1, "", "get_position"], [59, 6, 1, "", "get_positions"], [77, 6, 1, "", "get_quote"], [78, 6, 1, "", "get_realtime_bars"], [96, 6, 1, "", "get_round_day"], [97, 6, 1, "", "get_round_minute"], [161, 6, 1, "", "get_selling_order"], [140, 6, 1, "", "get_strikes"], [98, 6, 1, "", "get_timestamp"], [79, 6, 1, "", "get_yesterday_dividend"], [80, 6, 1, "", "get_yesterday_dividends"], [184, 5, 1, "", "initial_budget"], [32, 6, 1, "", "initialize"], [185, 5, 1, "", "is_backtesting"], [186, 5, 1, "", "last_on_trading_iteration_datetime"], [99, 6, 1, "", "localize_datetime"], [116, 6, 1, "", "log_message"], [187, 5, 1, "", "minutes_before_closing"], [188, 5, 1, "", "minutes_before_opening"], [189, 5, 1, "", "name"], [33, 6, 1, "", "on_abrupt_closing"], [34, 6, 1, "", "on_bot_crash"], [35, 6, 1, "", "on_canceled_order"], [36, 6, 1, "", "on_filled_order"], [37, 6, 1, "", "on_new_order"], [38, 6, 1, "", "on_parameters_updated"], [39, 6, 1, "", "on_partially_filled_order"], [40, 6, 1, "", "on_trading_iteration"], [141, 6, 1, "", "options_expiry_to_datetime_date"], [190, 5, 1, "", "portfolio_value"], [191, 5, 1, "", "pytz"], [192, 5, 1, "", "quote_asset"], [1, 6, 1, "", "run_backtest"], [162, 6, 1, "", "sell_all"], [117, 6, 1, "", "set_market"], [60, 6, 1, "", "set_parameters"], [118, 6, 1, "", "sleep"], [193, 5, 1, "", "sleeptime"], [81, 6, 1, "", "start_realtime_bars"], [163, 6, 1, "", "submit_order"], [164, 6, 1, "", "submit_orders"], [194, 5, 1, "", "timezone"], [100, 6, 1, "", "to_default_timezone"], [42, 6, 1, "", "trace_stats"], [195, 5, 1, "", "unspent_money"], [119, 6, 1, "", "update_parameters"], [120, 6, 1, "", "wait_for_order_execution"], [121, 6, 1, "", "wait_for_order_registration"], [122, 6, 1, "", "wait_for_orders_execution"], [123, 6, 1, "", "wait_for_orders_registration"]], "lumibot.traders": [[46, 0, 0, "-", "trader"]], "lumibot.traders.trader": [[46, 1, 1, "", "Trader"]], "lumibot.traders.trader.Trader": [[46, 3, 1, "", "add_strategy"], [46, 5, 1, "", "is_backtest_broker"], [46, 3, 1, "", "run_all"], [46, 3, 1, "", "run_all_async"], [46, 3, 1, "", "stop_all"]]}, "objtypes": {"0": "py:module", "1": "py:class", "2": "py:attribute", "3": "py:method", "4": "py:exception", "5": "py:property", "6": "py:function"}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "class", "Python class"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "method", "Python method"], "4": ["py", "exception", "Python exception"], "5": ["py", "property", "Python property"], "6": ["py", "function", "Python function"]}, "titleterms": {"backtest": [0, 1, 2, 6, 8, 25, 26, 43], "file": [0, 2, 3, 9], "gener": [0, 2, 17], "from": [0, 2], "content": [0, 11, 18, 26, 27, 44, 47], "function": [1, 61], "how": [2, 196], "To": 2, "instal": [2, 25, 26], "lumibot": [2, 25, 26], "choos": [2, 17], "data": [2, 5, 14, 21, 43, 44, 70], "sourc": [2, 43, 44], "run": [2, 13, 16, 25], "polygon": [2, 6], "io": [2, 6], "tearsheet": [2, 7], "html": [2, 7], "trade": [2, 9, 14, 24, 25, 26], "indic": [2, 3, 26], "conclus": [2, 17], "log": 4, "csv": [4, 5], "panda": [5, 44], "other": 5, "exampl": [5, 13, 14, 16, 17], "datafram": 5, "In": 5, "summari": [5, 41], "thetadata": 8, "yahoo": [10, 44], "broker": [11, 13, 14, 15, 17, 43], "alpaca": [12, 17, 25], "document": [12, 19, 20, 22, 45], "crypto": 13, "us": [13, 14], "ccxt": 13, "configur": [13, 14, 16, 17, 25, 196], "set": 13, "your": [13, 16, 17, 25, 26], "strategi": [13, 14, 16, 17, 25, 26, 45, 47, 166], "full": [13, 16], "interact": [14, 15, 17], "market": 14, "subscript": 14, "two": 14, "factor": 14, "authent": 14, "2fa": 14, "secondari": 14, "usernam": 14, "paper": [14, 25], "account": [14, 25, 48], "setup": 14, "legaci": [15, 17], "tradier": [16, 17], "get": [16, 25, 26], "start": [16, 25, 26], "deploy": 17, "guid": [17, 196], "platform": 17, "deploi": 17, "render": 17, "replit": 17, "secret": 17, "coinbas": 17, "kraken": 17, "environ": 17, "variabl": [17, 196], "final": 17, "step": [17, 25, 26], "entiti": 18, "asset": 19, "bar": 20, "order": [22, 142], "advanc": 22, "type": 22, "With": [22, 25], "leg": 22, "posit": 23, "fee": [24, 25], "what": 25, "i": 25, "lumiwealth": 25, "1": [25, 26], "packag": 25, "2": [25, 26], "import": 25, "follow": 25, "modul": [25, 44], "3": [25, 26], "creat": [25, 26], "an": 25, "4": 25, "api": 25, "kei": 25, "5": 25, "class": 25, "6": 25, "instanti": 25, "trader": [25, 46], "7": 25, "option": [25, 124], "8": 25, "ad": 25, "profil": 25, "improv": 25, "perform": 25, "algorithm": 26, "librari": 26, "take": 26, "bot": 26, "live": 26, "all": 26, "togeth": 26, "addit": 26, "resourc": 26, "need": 26, "extra": 26, "help": 26, "tabl": 26, "lifecycl": 27, "method": [27, 47], "def": [28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 42], "after_market_clos": 28, "refer": [28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 42], "before_market_clos": 29, "before_market_open": 30, "before_starting_trad": 31, "initi": 32, "on_abrupt_clos": 33, "on_bot_crash": 34, "on_canceled_ord": 35, "on_filled_ord": 36, "on_new_ord": 37, "on_parameters_upd": 38, "on_partially_filled_ord": 39, "on_trading_iter": 40, "trace_stat": 42, "manag": [48, 142], "self": [49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 62, 63, 64, 65, 66, 67, 68, 69, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196], "get_cash": [49, 55], "get_paramet": [50, 56, 104, 115], "get_portfolio_valu": [51, 57], "get_posit": [52, 53, 58, 59], "set_paramet": [54, 60], "chart": 61, "add_lin": [62, 66], "add_mark": [63, 67], "get_lines_df": [64, 68], "get_markers_df": [65, 69], "cancel_realtime_bar": 71, "get_historical_pric": 72, "get_historical_prices_for_asset": 73, "get_last_pric": [74, 75], "get_next_trading_dai": [76, 130, 138], "get_quot": 77, "get_realtime_bar": 78, "get_yesterday_dividend": [79, 80], "start_realtime_bar": 81, "datetim": 82, "get_datetim": [83, 92], "get_datetime_rang": [84, 93], "get_last_dai": [85, 94], "get_last_minut": [86, 95], "get_round_dai": [87, 96], "get_round_minut": [88, 97], "get_timestamp": [89, 98], "localize_datetim": [90, 99], "to_default_timezon": [91, 100], "miscellan": 101, "await_market_to_clos": [102, 113], "await_market_to_open": [103, 114], "log_messag": [105, 116], "set_market": [106, 117], "sleep": [107, 118], "update_paramet": [108, 119], "wait_for_order_execut": [109, 120], "wait_for_order_registr": [110, 121], "wait_for_orders_execut": [111, 122], "wait_for_orders_registr": [112, 123], "get_chain": [125, 126, 133, 134], "get_expir": [127, 135], "get_greek": [128, 136], "get_multipli": [129, 137], "get_strik": [131, 140], "options_expiry_to_datetime_d": [132, 141], "get_option_expiration_after_d": 139, "cancel_open_ord": [143, 154], "cancel_ord": [144, 145, 155, 156], "create_ord": [146, 157], "get_asset_potential_tot": [147, 158], "get_ord": [148, 149, 159, 160], "get_selling_ord": [150, 161], "sell_al": [151, 162], "submit_ord": [152, 153, 163, 164], "paramet": 165, "properti": 166, "cash": [167, 182], "first_iter": [168, 183], "initial_budget": [169, 184], "is_backtest": [170, 185], "last_on_trading_iteration_datetim": [171, 186], "minutes_before_clos": [172, 187], "minutes_before_open": [173, 188], "name": [174, 189], "portfolio_valu": [175, 190], "pytz": [176, 181, 191], "quote_asset": [177, 192], "sleeptim": [178, 193], "timezon": [179, 194], "unspent_monei": [180, 195], "backup": 196, "restor": 196, "It": 196, "work": 196, "benefit": 196, "var": 196, "usag": 196, "databas": 196, "storag": 196, "structur": 196}, "envversion": {"sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx": 60}, "alltitles": {"Backtesting": [[0, "backtesting"], [43, "backtesting"]], "Files Generated from Backtesting": [[0, "files-generated-from-backtesting"], [2, "files-generated-from-backtesting"]], "Contents:": [[0, null], [11, null], [18, null], [27, null], [47, null]], "Backtesting Function": [[1, "backtesting-function"]], "How To Backtest": [[2, "how-to-backtest"]], "Installing LumiBot": [[2, "installing-lumibot"]], "Choosing a Data Source": [[2, "choosing-a-data-source"]], "Running a Backtest with Polygon.io": [[2, "running-a-backtest-with-polygon-io"]], "Tearsheet HTML": [[2, "tearsheet-html"], [7, "tearsheet-html"]], "Trades Files": [[2, "trades-files"], [9, "trades-files"]], "Indicators Files": [[2, "indicators-files"], [3, "indicators-files"]], "Conclusion": [[2, "conclusion"], [17, "conclusion"]], "Logs CSV": [[4, "logs-csv"]], "Pandas (CSV or other data)": [[5, "pandas-csv-or-other-data"]], "Example Dataframe": [[5, "id1"]], "In Summary": [[5, "in-summary"]], "Polygon.io Backtesting": [[6, "polygon-io-backtesting"]], "ThetaData Backtesting": [[8, "thetadata-backtesting"]], "Yahoo": [[10, "yahoo"], [44, "module-lumibot.data_sources.yahoo_data"]], "Brokers": [[11, "brokers"]], "Alpaca": [[12, "alpaca"]], "Documentation": [[12, "module-lumibot.brokers.alpaca"], [19, "module-entities.asset"], [20, "module-entities.bars"], [22, "module-entities.order"], [45, "module-lumibot.strategies.strategy.Strategy"]], "Crypto Brokers (Using CCXT)": [[13, "crypto-brokers-using-ccxt"]], "Configuration Settings": [[13, "configuration-settings"]], "Running Your Strategy": [[13, "running-your-strategy"], [16, "running-your-strategy"]], "Full Example Strategy": [[13, "full-example-strategy"], [16, "full-example-strategy"]], "Interactive Brokers": [[14, "interactive-brokers"]], "Market Data Subscriptions": [[14, "market-data-subscriptions"]], "Two-Factor Authentication (2FA)": [[14, "two-factor-authentication-2fa"]], "Using a Secondary Username": [[14, "using-a-secondary-username"]], "Using a Paper Trading Account": [[14, "using-a-paper-trading-account"]], "Strategy Setup": [[14, "strategy-setup"]], "Interactive Brokers Configuration": [[14, "id1"], [17, "interactive-brokers-configuration"], [17, "id25"]], "Example Strategy": [[14, "example-strategy"]], "Interactive Brokers Legacy": [[15, "interactive-brokers-legacy"]], "Tradier": [[16, "tradier"]], "Getting Started": [[16, "getting-started"], [26, "getting-started"]], "Configuration": [[16, "configuration"]], "Deployment Guide": [[17, "deployment-guide"]], "Example Strategy for Deployment": [[17, "example-strategy-for-deployment"]], "Choosing Your Deployment Platform": [[17, "id1"]], "Deploying to Render": [[17, "id2"]], "Deploying to Replit": [[17, "id3"]], "Secrets Configuration": [[17, "secrets-configuration"]], "Broker Configuration": [[17, "broker-configuration"]], "Tradier Configuration": [[17, "tradier-configuration"], [17, "id21"]], "Alpaca Configuration": [[17, "alpaca-configuration"], [17, "id22"]], "Coinbase Configuration": [[17, "coinbase-configuration"], [17, "id23"]], "Kraken Configuration": [[17, "kraken-configuration"], [17, "id24"]], "Interactive Brokers-Legacy Configuration": [[17, "interactive-brokers-legacy-configuration"], [17, "id26"]], "General Environment Variables": [[17, "general-environment-variables"], [17, "id27"]], "Final Steps": [[17, "final-steps"]], "Entities": [[18, "entities"]], "Asset": [[19, "asset"]], "Bars": [[20, "bars"]], "Data": [[21, "module-entities.data"], [70, "data"]], "Order": [[22, "order"]], "Advanced Order Types": [[22, "advanced-order-types"]], "Order With Legs": [[22, "order-with-legs"]], "Position": [[23, "module-entities.position"]], "Trading Fee": [[24, "module-entities.trading_fee"]], "What is Lumibot?": [[25, "what-is-lumibot"]], "Lumiwealth": [[25, "id1"]], "Getting Started With Lumibot": [[25, "getting-started-with-lumibot"]], "Step 1: Install the Package": [[25, "step-1-install-the-package"]], "Step 2: Import the Following Modules": [[25, "step-2-import-the-following-modules"]], "Step 3: Create an Alpaca Paper Trading Account": [[25, "step-3-create-an-alpaca-paper-trading-account"]], "Step 4: Configure Your API Keys": [[25, "step-4-configure-your-api-keys"]], "Step 5: Create a Strategy Class": [[25, "step-5-create-a-strategy-class"]], "Step 6: Instantiate the Trader, Alpaca, and Strategy Classes": [[25, "step-6-instantiate-the-trader-alpaca-and-strategy-classes"]], "Step 7: Backtest the Strategy (Optional)": [[25, "step-7-backtest-the-strategy-optional"]], "Step 8: Run the Strategy": [[25, "step-8-run-the-strategy"]], "Adding Trading Fees": [[25, "adding-trading-fees"]], "Profiling to Improve Performance": [[25, "profiling-to-improve-performance"]], "Lumibot: Backtesting and Algorithmic Trading Library": [[26, "lumibot-backtesting-and-algorithmic-trading-library"]], "Step 1: Install Lumibot": [[26, "step-1-install-lumibot"]], "Step 2: Create a Strategy for Backtesting": [[26, "step-2-create-a-strategy-for-backtesting"]], "Step 3: Take Your Bot Live": [[26, "step-3-take-your-bot-live"]], "All Together": [[26, "all-together"]], "Additional Resources": [[26, "additional-resources"]], "Need Extra Help?": [[26, "need-extra-help"]], "Table of Contents": [[26, "table-of-contents"]], "Indices and tables": [[26, "indices-and-tables"]], "Lifecycle Methods": [[27, "lifecycle-methods"]], "def after_market_closes": [[28, "def-after-market-closes"]], "Reference": [[28, "reference"], [29, "reference"], [30, "reference"], [31, "reference"], [32, "reference"], [33, "reference"], [34, "reference"], [35, "reference"], [36, "reference"], [37, "reference"], [38, "reference"], [39, "reference"], [40, "reference"], [42, "reference"]], "def before_market_closes": [[29, "def-before-market-closes"]], "def before_market_opens": [[30, "def-before-market-opens"]], "def before_starting_trading": [[31, "def-before-starting-trading"]], "def initialize": [[32, "def-initialize"]], "def on_abrupt_closing": [[33, "def-on-abrupt-closing"]], "def on_bot_crash": [[34, "def-on-bot-crash"]], "def on_canceled_order": [[35, "def-on-canceled-order"]], "def on_filled_order": [[36, "def-on-filled-order"]], "def on_new_order": [[37, "def-on-new-order"]], "def on_parameters_updated": [[38, "def-on-parameters-updated"]], "def on_partially_filled_order": [[39, "def-on-partially-filled-order"]], "def on_trading_iteration": [[40, "def-on-trading-iteration"]], "Summary": [[41, "summary"]], "def trace_stats": [[42, "def-trace-stats"]], "Backtesting Broker": [[43, "module-lumibot.backtesting.backtesting_broker"]], "Data Source Backtesting": [[43, "module-lumibot.data_sources.data_source_backtesting"]], "Data Sources": [[44, "data-sources"]], "Data Source": [[44, "module-lumibot.data_sources.data_source"]], "Pandas": [[44, "module-lumibot.data_sources.pandas_data"]], "Module contents": [[44, "module-lumibot.data_sources"]], "Strategies": [[45, "strategies"]], "Traders": [[46, "traders"]], "Trader": [[46, "module-lumibot.traders.trader"]], "Strategy Methods": [[47, "strategy-methods"]], "Account Management": [[48, "account-management"]], "self.get_cash": [[49, "self-get-cash"], [55, "self-get-cash"]], "self.get_parameters": [[50, "self-get-parameters"], [56, "self-get-parameters"], [104, "self-get-parameters"], [115, "self-get-parameters"]], "self.get_portfolio_value": [[51, "self-get-portfolio-value"], [57, "self-get-portfolio-value"]], "self.get_position": [[52, "self-get-position"], [58, "self-get-position"]], "self.get_positions": [[53, "self-get-positions"], [59, "self-get-positions"]], "self.set_parameters": [[54, "self-set-parameters"], [60, "self-set-parameters"]], "Chart Functions": [[61, "chart-functions"]], "self.add_line": [[62, "self-add-line"], [66, "self-add-line"]], "self.add_marker": [[63, "self-add-marker"], [67, "self-add-marker"]], "self.get_lines_df": [[64, "self-get-lines-df"], [68, "self-get-lines-df"]], "self.get_markers_df": [[65, "self-get-markers-df"], [69, "self-get-markers-df"]], "self.cancel_realtime_bars": [[71, "self-cancel-realtime-bars"]], "self.get_historical_prices": [[72, "self-get-historical-prices"]], "self.get_historical_prices_for_assets": [[73, "self-get-historical-prices-for-assets"]], "self.get_last_price": [[74, "self-get-last-price"]], "self.get_last_prices": [[75, "self-get-last-prices"]], "self.get_next_trading_day": [[76, "self-get-next-trading-day"], [130, "self-get-next-trading-day"], [138, "self-get-next-trading-day"]], "self.get_quote": [[77, "self-get-quote"]], "self.get_realtime_bars": [[78, "self-get-realtime-bars"]], "self.get_yesterday_dividend": [[79, "self-get-yesterday-dividend"]], "self.get_yesterday_dividends": [[80, "self-get-yesterday-dividends"]], "self.start_realtime_bars": [[81, "self-start-realtime-bars"]], "DateTime": [[82, "datetime"]], "self.get_datetime": [[83, "self-get-datetime"], [92, "self-get-datetime"]], "self.get_datetime_range": [[84, "self-get-datetime-range"], [93, "self-get-datetime-range"]], "self.get_last_day": [[85, "self-get-last-day"], [94, "self-get-last-day"]], "self.get_last_minute": [[86, "self-get-last-minute"], [95, "self-get-last-minute"]], "self.get_round_day": [[87, "self-get-round-day"], [96, "self-get-round-day"]], "self.get_round_minute": [[88, "self-get-round-minute"], [97, "self-get-round-minute"]], "self.get_timestamp": [[89, "self-get-timestamp"], [98, "self-get-timestamp"]], "self.localize_datetime": [[90, "self-localize-datetime"], [99, "self-localize-datetime"]], "self.to_default_timezone": [[91, "self-to-default-timezone"], [100, "self-to-default-timezone"]], "Miscellaneous": [[101, "miscellaneous"]], "self.await_market_to_close": [[102, "self-await-market-to-close"], [113, "self-await-market-to-close"]], "self.await_market_to_open": [[103, "self-await-market-to-open"], [114, "self-await-market-to-open"]], "self.log_message": [[105, "self-log-message"], [116, "self-log-message"]], "self.set_market": [[106, "self-set-market"], [117, "self-set-market"]], "self.sleep": [[107, "self-sleep"], [118, "self-sleep"]], "self.update_parameters": [[108, "self-update-parameters"], [119, "self-update-parameters"]], "self.wait_for_order_execution": [[109, "self-wait-for-order-execution"], [120, "self-wait-for-order-execution"]], "self.wait_for_order_registration": [[110, "self-wait-for-order-registration"], [121, "self-wait-for-order-registration"]], "self.wait_for_orders_execution": [[111, "self-wait-for-orders-execution"], [122, "self-wait-for-orders-execution"]], "self.wait_for_orders_registration": [[112, "self-wait-for-orders-registration"], [123, "self-wait-for-orders-registration"]], "Options": [[124, "options"]], "self.get_chain": [[125, "self-get-chain"], [133, "self-get-chain"]], "self.get_chains": [[126, "self-get-chains"], [134, "self-get-chains"]], "self.get_expiration": [[127, "self-get-expiration"], [135, "self-get-expiration"]], "self.get_greeks": [[128, "self-get-greeks"], [136, "self-get-greeks"]], "self.get_multiplier": [[129, "self-get-multiplier"], [137, "self-get-multiplier"]], "self.get_strikes": [[131, "self-get-strikes"], [140, "self-get-strikes"]], "self.options_expiry_to_datetime_date": [[132, "self-options-expiry-to-datetime-date"], [141, "self-options-expiry-to-datetime-date"]], "self.get_option_expiration_after_date": [[139, "self-get-option-expiration-after-date"]], "Order Management": [[142, "order-management"]], "self.cancel_open_orders": [[143, "self-cancel-open-orders"], [154, "self-cancel-open-orders"]], "self.cancel_order": [[144, "self-cancel-order"], [155, "self-cancel-order"]], "self.cancel_orders": [[145, "self-cancel-orders"], [156, "self-cancel-orders"]], "self.create_order": [[146, "self-create-order"], [157, "self-create-order"]], "self.get_asset_potential_total": [[147, "self-get-asset-potential-total"], [158, "self-get-asset-potential-total"]], "self.get_order": [[148, "self-get-order"], [159, "self-get-order"]], "self.get_orders": [[149, "self-get-orders"], [160, "self-get-orders"]], "self.get_selling_order": [[150, "self-get-selling-order"], [161, "self-get-selling-order"]], "self.sell_all": [[151, "self-sell-all"], [162, "self-sell-all"]], "self.submit_order": [[152, "self-submit-order"], [163, "self-submit-order"]], "self.submit_orders": [[153, "self-submit-orders"], [164, "self-submit-orders"]], "Parameters": [[165, "parameters"]], "Strategy Properties": [[166, "strategy-properties"]], "self.cash": [[167, "self-cash"], [182, "self-cash"]], "self.first_iteration": [[168, "self-first-iteration"], [183, "self-first-iteration"]], "self.initial_budget": [[169, "self-initial-budget"], [184, "self-initial-budget"]], "self.is_backtesting": [[170, "self-is-backtesting"], [185, "self-is-backtesting"]], "self.last_on_trading_iteration_datetime": [[171, "self-last-on-trading-iteration-datetime"], [186, "self-last-on-trading-iteration-datetime"]], "self.minutes_before_closing": [[172, "self-minutes-before-closing"], [187, "self-minutes-before-closing"]], "self.minutes_before_opening": [[173, "self-minutes-before-opening"], [188, "self-minutes-before-opening"]], "self.name": [[174, "self-name"], [189, "self-name"]], "self.portfolio_value": [[175, "self-portfolio-value"], [190, "self-portfolio-value"]], "self.pytz": [[176, "self-pytz"], [181, "self-pytz"], [191, "self-pytz"]], "self.quote_asset": [[177, "self-quote-asset"], [192, "self-quote-asset"]], "self.sleeptime": [[178, "self-sleeptime"], [193, "self-sleeptime"]], "self.timezone": [[179, "self-timezone"], [194, "self-timezone"]], "self.unspent_money": [[180, "self-unspent-money"], [195, "self-unspent-money"]], "Variable Backup & Restore": [[196, "variable-backup-restore"]], "How It Works": [[196, "how-it-works"]], "Benefits of self.vars": [[196, "benefits-of-self-vars"]], "Usage Guide": [[196, "usage-guide"]], "Database Configuration": [[196, "database-configuration"]], "Database Storage Structure": [[196, "database-storage-structure"]]}, "indexentries": {"run_backtest() (in module lumibot.strategies.strategy.strategy)": [[1, "lumibot.strategies.strategy.Strategy.run_backtest"]], "asset_type_map (lumibot.brokers.alpaca.alpaca attribute)": [[12, "lumibot.brokers.alpaca.Alpaca.ASSET_TYPE_MAP"]], "alpaca (class in lumibot.brokers.alpaca)": [[12, "lumibot.brokers.alpaca.Alpaca"]], "orderdata (class in lumibot.brokers.alpaca)": [[12, "lumibot.brokers.alpaca.OrderData"]], "api (lumibot.brokers.alpaca.alpaca attribute)": [[12, "lumibot.brokers.alpaca.Alpaca.api"]], "cancel_order() (lumibot.brokers.alpaca.alpaca method)": [[12, "lumibot.brokers.alpaca.Alpaca.cancel_order"]], "get_historical_account_value() (lumibot.brokers.alpaca.alpaca method)": [[12, "lumibot.brokers.alpaca.Alpaca.get_historical_account_value"]], "get_time_to_close() (lumibot.brokers.alpaca.alpaca method)": [[12, "id0"], [12, "lumibot.brokers.alpaca.Alpaca.get_time_to_close"]], "get_time_to_open() (lumibot.brokers.alpaca.alpaca method)": [[12, "id1"], [12, "lumibot.brokers.alpaca.Alpaca.get_time_to_open"]], "get_timestamp() (lumibot.brokers.alpaca.alpaca method)": [[12, "id2"], [12, "lumibot.brokers.alpaca.Alpaca.get_timestamp"]], "is_market_open() (lumibot.brokers.alpaca.alpaca method)": [[12, "id3"], [12, "lumibot.brokers.alpaca.Alpaca.is_market_open"]], "lumibot.brokers.alpaca": [[12, "module-lumibot.brokers.alpaca"]], "map_asset_type() (lumibot.brokers.alpaca.alpaca method)": [[12, "lumibot.brokers.alpaca.Alpaca.map_asset_type"]], "module": [[12, "module-lumibot.brokers.alpaca"], [19, "module-entities.asset"], [20, "module-entities.bars"], [21, "module-entities.data"], [22, "module-entities.order"], [23, "module-entities.position"], [24, "module-entities.trading_fee"], [43, "module-lumibot.backtesting.backtesting_broker"], [43, "module-lumibot.data_sources.data_source_backtesting"], [44, "module-lumibot.data_sources"], [44, "module-lumibot.data_sources.data_source"], [44, "module-lumibot.data_sources.pandas_data"], [44, "module-lumibot.data_sources.yahoo_data"], [45, "module-lumibot.strategies.strategy.Strategy"], [46, "module-lumibot.traders.trader"]], "to_request_fields() (lumibot.brokers.alpaca.orderdata method)": [[12, "lumibot.brokers.alpaca.OrderData.to_request_fields"]], "asset (class in entities.asset)": [[19, "entities.asset.Asset"]], "asset.assettype (class in entities.asset)": [[19, "entities.asset.Asset.AssetType"]], "asset.optionright (class in entities.asset)": [[19, "entities.asset.Asset.OptionRight"]], "assetsmapping (class in entities.asset)": [[19, "entities.asset.AssetsMapping"]], "call (entities.asset.asset.optionright attribute)": [[19, "entities.asset.Asset.OptionRight.CALL"]], "crypto (entities.asset.asset.assettype attribute)": [[19, "entities.asset.Asset.AssetType.CRYPTO"]], "forex (entities.asset.asset.assettype attribute)": [[19, "entities.asset.Asset.AssetType.FOREX"]], "future (entities.asset.asset.assettype attribute)": [[19, "entities.asset.Asset.AssetType.FUTURE"]], "index (entities.asset.asset.assettype attribute)": [[19, "entities.asset.Asset.AssetType.INDEX"]], "multileg (entities.asset.asset.assettype attribute)": [[19, "entities.asset.Asset.AssetType.MULTILEG"]], "option (entities.asset.asset.assettype attribute)": [[19, "entities.asset.Asset.AssetType.OPTION"]], "put (entities.asset.asset.optionright attribute)": [[19, "entities.asset.Asset.OptionRight.PUT"]], "stock (entities.asset.asset.assettype attribute)": [[19, "entities.asset.Asset.AssetType.STOCK"]], "_asset_types (entities.asset.asset attribute)": [[19, "entities.asset.Asset._asset_types"]], "_right (entities.asset.asset attribute)": [[19, "entities.asset.Asset._right"]], "asset_type (entities.asset.asset attribute)": [[19, "entities.asset.Asset.asset_type"], [19, "id0"]], "asset_type_must_be_one_of() (entities.asset.asset method)": [[19, "entities.asset.Asset.asset_type_must_be_one_of"], [19, "id1"]], "entities.asset": [[19, "module-entities.asset"]], "expiration (entities.asset.asset attribute)": [[19, "entities.asset.Asset.expiration"], [19, "id2"]], "from_dict() (entities.asset.asset class method)": [[19, "entities.asset.Asset.from_dict"]], "is_valid() (entities.asset.asset method)": [[19, "entities.asset.Asset.is_valid"]], "multiplier (entities.asset.asset attribute)": [[19, "entities.asset.Asset.multiplier"], [19, "id3"]], "precision (entities.asset.asset attribute)": [[19, "entities.asset.Asset.precision"], [19, "id4"]], "right (entities.asset.asset attribute)": [[19, "entities.asset.Asset.right"], [19, "id5"]], "right_must_be_one_of() (entities.asset.asset method)": [[19, "entities.asset.Asset.right_must_be_one_of"], [19, "id6"]], "strike (entities.asset.asset attribute)": [[19, "entities.asset.Asset.strike"], [19, "id7"]], "symbol (entities.asset.asset attribute)": [[19, "entities.asset.Asset.symbol"], [19, "id8"]], "symbol2asset() (entities.asset.asset class method)": [[19, "entities.asset.Asset.symbol2asset"]], "to_dict() (entities.asset.asset method)": [[19, "entities.asset.Asset.to_dict"]], "underlying_asset (entities.asset.asset attribute)": [[19, "entities.asset.Asset.underlying_asset"]], "bars (class in entities.bars)": [[20, "entities.bars.Bars"]], "nobardatafound": [[20, "entities.bars.NoBarDataFound"]], "aggregate_bars() (entities.bars.bars method)": [[20, "entities.bars.Bars.aggregate_bars"], [20, "id0"]], "entities.bars": [[20, "module-entities.bars"]], "filter() (entities.bars.bars method)": [[20, "entities.bars.Bars.filter"]], "get_last_dividend() (entities.bars.bars method)": [[20, "entities.bars.Bars.get_last_dividend"], [20, "id1"]], "get_last_price() (entities.bars.bars method)": [[20, "entities.bars.Bars.get_last_price"], [20, "id2"]], "get_momentum() (entities.bars.bars method)": [[20, "entities.bars.Bars.get_momentum"], [20, "id3"]], "get_total_dividends() (entities.bars.bars method)": [[20, "entities.bars.Bars.get_total_dividends"]], "get_total_return() (entities.bars.bars method)": [[20, "entities.bars.Bars.get_total_return"]], "get_total_return_pct() (entities.bars.bars method)": [[20, "entities.bars.Bars.get_total_return_pct"]], "get_total_return_pct_change() (entities.bars.bars method)": [[20, "entities.bars.Bars.get_total_return_pct_change"]], "get_total_stock_splits() (entities.bars.bars method)": [[20, "entities.bars.Bars.get_total_stock_splits"]], "get_total_volume() (entities.bars.bars method)": [[20, "entities.bars.Bars.get_total_volume"], [20, "id4"]], "parse_bar_list() (entities.bars.bars class method)": [[20, "entities.bars.Bars.parse_bar_list"]], "split() (entities.bars.bars method)": [[20, "entities.bars.Bars.split"]], "data (class in entities.data)": [[21, "entities.data.Data"]], "min_timestep (entities.data.data attribute)": [[21, "entities.data.Data.MIN_TIMESTEP"]], "timestep_mapping (entities.data.data attribute)": [[21, "entities.data.Data.TIMESTEP_MAPPING"]], "_get_bars_dict() (entities.data.data method)": [[21, "entities.data.Data._get_bars_dict"]], "asset (entities.data.data attribute)": [[21, "entities.data.Data.asset"]], "check_data() (entities.data.data method)": [[21, "entities.data.Data.check_data"], [21, "id0"]], "columns() (entities.data.data method)": [[21, "entities.data.Data.columns"], [21, "id1"]], "datalines (entities.data.data attribute)": [[21, "entities.data.Data.datalines"]], "date_end (entities.data.data attribute)": [[21, "entities.data.Data.date_end"]], "date_start (entities.data.data attribute)": [[21, "entities.data.Data.date_start"]], "df (entities.data.data attribute)": [[21, "entities.data.Data.df"]], "entities.data": [[21, "module-entities.data"]], "get_bars() (entities.data.data method)": [[21, "entities.data.Data.get_bars"], [21, "id2"]], "get_bars_between_dates() (entities.data.data method)": [[21, "entities.data.Data.get_bars_between_dates"]], "get_iter_count() (entities.data.data method)": [[21, "entities.data.Data.get_iter_count"], [21, "id3"]], "get_last_price() (entities.data.data method)": [[21, "entities.data.Data.get_last_price"], [21, "id4"]], "get_quote() (entities.data.data method)": [[21, "entities.data.Data.get_quote"]], "iter_index (entities.data.data attribute)": [[21, "entities.data.Data.iter_index"]], "repair_times_and_fill() (entities.data.data method)": [[21, "entities.data.Data.repair_times_and_fill"], [21, "id5"]], "set_date_format() (entities.data.data method)": [[21, "entities.data.Data.set_date_format"], [21, "id6"]], "set_dates() (entities.data.data method)": [[21, "entities.data.Data.set_dates"], [21, "id7"]], "set_times() (entities.data.data method)": [[21, "entities.data.Data.set_times"], [21, "id8"]], "sybmol (entities.data.data attribute)": [[21, "entities.data.Data.sybmol"]], "timestep (entities.data.data attribute)": [[21, "entities.data.Data.timestep"]], "to_datalines() (entities.data.data method)": [[21, "entities.data.Data.to_datalines"], [21, "id9"]], "trading_hours_end (entities.data.data attribute)": [[21, "entities.data.Data.trading_hours_end"]], "trading_hours_start (entities.data.data attribute)": [[21, "entities.data.Data.trading_hours_start"]], "trim_data() (entities.data.data method)": [[21, "entities.data.Data.trim_data"], [21, "id10"]], "bracket (entities.order.order.orderclass attribute)": [[22, "entities.order.Order.OrderClass.BRACKET"]], "bracket (entities.order.order.ordertype attribute)": [[22, "entities.order.Order.OrderType.BRACKET"]], "buy (entities.order.order.orderside attribute)": [[22, "entities.order.Order.OrderSide.BUY"]], "buy_to_close (entities.order.order.orderside attribute)": [[22, "entities.order.Order.OrderSide.BUY_TO_CLOSE"]], "buy_to_cover (entities.order.order.orderside attribute)": [[22, "entities.order.Order.OrderSide.BUY_TO_COVER"]], "buy_to_open (entities.order.order.orderside attribute)": [[22, "entities.order.Order.OrderSide.BUY_TO_OPEN"]], "canceled (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.CANCELED"]], "cancelling (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.CANCELLING"]], "cash_settled (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.CASH_SETTLED"]], "error (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.ERROR"]], "expired (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.EXPIRED"]], "filled (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.FILLED"]], "limit (entities.order.order.ordertype attribute)": [[22, "entities.order.Order.OrderType.LIMIT"]], "market (entities.order.order.ordertype attribute)": [[22, "entities.order.Order.OrderType.MARKET"]], "multileg (entities.order.order.orderclass attribute)": [[22, "entities.order.Order.OrderClass.MULTILEG"]], "new (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.NEW"]], "oco (entities.order.order.orderclass attribute)": [[22, "entities.order.Order.OrderClass.OCO"]], "oco (entities.order.order.ordertype attribute)": [[22, "entities.order.Order.OrderType.OCO"]], "open (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.OPEN"]], "oto (entities.order.order.orderclass attribute)": [[22, "entities.order.Order.OrderClass.OTO"]], "oto (entities.order.order.ordertype attribute)": [[22, "entities.order.Order.OrderType.OTO"]], "order (class in entities.order)": [[22, "entities.order.Order"]], "order.orderclass (class in entities.order)": [[22, "entities.order.Order.OrderClass"]], "order.orderside (class in entities.order)": [[22, "entities.order.Order.OrderSide"]], "order.orderstatus (class in entities.order)": [[22, "entities.order.Order.OrderStatus"]], "order.ordertype (class in entities.order)": [[22, "entities.order.Order.OrderType"]], "order.transaction (class in entities.order)": [[22, "entities.order.Order.Transaction"]], "partially_filled (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.PARTIALLY_FILLED"]], "sell (entities.order.order.orderside attribute)": [[22, "entities.order.Order.OrderSide.SELL"]], "sell_short (entities.order.order.orderside attribute)": [[22, "entities.order.Order.OrderSide.SELL_SHORT"]], "sell_to_close (entities.order.order.orderside attribute)": [[22, "entities.order.Order.OrderSide.SELL_TO_CLOSE"]], "sell_to_open (entities.order.order.orderside attribute)": [[22, "entities.order.Order.OrderSide.SELL_TO_OPEN"]], "stop (entities.order.order.ordertype attribute)": [[22, "entities.order.Order.OrderType.STOP"]], "stop_limit (entities.order.order.ordertype attribute)": [[22, "entities.order.Order.OrderType.STOP_LIMIT"]], "submitted (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.SUBMITTED"]], "trail (entities.order.order.ordertype attribute)": [[22, "entities.order.Order.OrderType.TRAIL"]], "unprocessed (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.UNPROCESSED"]], "add_child_order() (entities.order.order method)": [[22, "entities.order.Order.add_child_order"]], "add_transaction() (entities.order.order method)": [[22, "entities.order.Order.add_transaction"]], "avg_fill_price (entities.order.order property)": [[22, "entities.order.Order.avg_fill_price"]], "cash_pending() (entities.order.order method)": [[22, "entities.order.Order.cash_pending"]], "entities.order": [[22, "module-entities.order"]], "equivalent_status() (entities.order.order method)": [[22, "entities.order.Order.equivalent_status"]], "from_dict() (entities.order.order class method)": [[22, "entities.order.Order.from_dict"]], "get_fill_price() (entities.order.order method)": [[22, "entities.order.Order.get_fill_price"]], "get_increment() (entities.order.order method)": [[22, "entities.order.Order.get_increment"]], "is_active() (entities.order.order method)": [[22, "entities.order.Order.is_active"]], "is_buy_order() (entities.order.order method)": [[22, "entities.order.Order.is_buy_order"]], "is_canceled() (entities.order.order method)": [[22, "entities.order.Order.is_canceled"]], "is_equivalent_status() (entities.order.order class method)": [[22, "entities.order.Order.is_equivalent_status"]], "is_filled() (entities.order.order method)": [[22, "entities.order.Order.is_filled"]], "is_option() (entities.order.order method)": [[22, "entities.order.Order.is_option"]], "is_parent() (entities.order.order method)": [[22, "entities.order.Order.is_parent"]], "is_sell_order() (entities.order.order method)": [[22, "entities.order.Order.is_sell_order"]], "price (entities.order.order.transaction attribute)": [[22, "entities.order.Order.Transaction.price"]], "quantity (entities.order.order property)": [[22, "entities.order.Order.quantity"]], "quantity (entities.order.order.transaction attribute)": [[22, "entities.order.Order.Transaction.quantity"]], "set_canceled() (entities.order.order method)": [[22, "entities.order.Order.set_canceled"]], "set_error() (entities.order.order method)": [[22, "entities.order.Order.set_error"]], "set_filled() (entities.order.order method)": [[22, "entities.order.Order.set_filled"]], "set_identifier() (entities.order.order method)": [[22, "entities.order.Order.set_identifier"]], "set_new() (entities.order.order method)": [[22, "entities.order.Order.set_new"]], "set_partially_filled() (entities.order.order method)": [[22, "entities.order.Order.set_partially_filled"]], "status (entities.order.order property)": [[22, "entities.order.Order.status"]], "to_dict() (entities.order.order method)": [[22, "entities.order.Order.to_dict"]], "to_position() (entities.order.order method)": [[22, "entities.order.Order.to_position"]], "update_raw() (entities.order.order method)": [[22, "entities.order.Order.update_raw"]], "update_trail_stop_price() (entities.order.order method)": [[22, "entities.order.Order.update_trail_stop_price"]], "wait_to_be_closed() (entities.order.order method)": [[22, "entities.order.Order.wait_to_be_closed"]], "wait_to_be_registered() (entities.order.order method)": [[22, "entities.order.Order.wait_to_be_registered"]], "was_transmitted() (entities.order.order method)": [[22, "entities.order.Order.was_transmitted"]], "position (class in entities.position)": [[23, "entities.position.Position"]], "add_order() (entities.position.position method)": [[23, "entities.position.Position.add_order"]], "asset (entities.position.position attribute)": [[23, "entities.position.Position.asset"]], "available (entities.position.position attribute)": [[23, "entities.position.Position.available"]], "available (entities.position.position property)": [[23, "id0"]], "avg_fill_price (entities.position.position attribute)": [[23, "entities.position.Position.avg_fill_price"]], "entities.position": [[23, "module-entities.position"]], "from_dict() (entities.position.position class method)": [[23, "entities.position.Position.from_dict"]], "get_selling_order() (entities.position.position method)": [[23, "entities.position.Position.get_selling_order"]], "hold (entities.position.position attribute)": [[23, "entities.position.Position.hold"]], "hold (entities.position.position property)": [[23, "id1"]], "orders (entities.position.position attribute)": [[23, "entities.position.Position.orders"]], "quantity (entities.position.position attribute)": [[23, "entities.position.Position.quantity"]], "quantity (entities.position.position property)": [[23, "id2"]], "strategy (entities.position.position attribute)": [[23, "entities.position.Position.strategy"]], "symbol (entities.position.position attribute)": [[23, "entities.position.Position.symbol"]], "to_dict() (entities.position.position method)": [[23, "entities.position.Position.to_dict"]], "value_type() (entities.position.position method)": [[23, "entities.position.Position.value_type"]], "tradingfee (class in entities.trading_fee)": [[24, "entities.trading_fee.TradingFee"]], "entities.trading_fee": [[24, "module-entities.trading_fee"]], "after_market_closes() (in module lumibot.strategies.strategy.strategy)": [[28, "lumibot.strategies.strategy.Strategy.after_market_closes"]], "before_market_closes() (in module lumibot.strategies.strategy.strategy)": [[29, "lumibot.strategies.strategy.Strategy.before_market_closes"]], "before_market_opens() (in module lumibot.strategies.strategy.strategy)": [[30, "lumibot.strategies.strategy.Strategy.before_market_opens"]], "before_starting_trading() (in module lumibot.strategies.strategy.strategy)": [[31, "lumibot.strategies.strategy.Strategy.before_starting_trading"]], "initialize() (in module lumibot.strategies.strategy.strategy)": [[32, "lumibot.strategies.strategy.Strategy.initialize"]], "on_abrupt_closing() (in module lumibot.strategies.strategy.strategy)": [[33, "lumibot.strategies.strategy.Strategy.on_abrupt_closing"]], "on_bot_crash() (in module lumibot.strategies.strategy.strategy)": [[34, "lumibot.strategies.strategy.Strategy.on_bot_crash"]], "on_canceled_order() (in module lumibot.strategies.strategy.strategy)": [[35, "lumibot.strategies.strategy.Strategy.on_canceled_order"]], "on_filled_order() (in module lumibot.strategies.strategy.strategy)": [[36, "lumibot.strategies.strategy.Strategy.on_filled_order"]], "on_new_order() (in module lumibot.strategies.strategy.strategy)": [[37, "lumibot.strategies.strategy.Strategy.on_new_order"]], "on_parameters_updated() (in module lumibot.strategies.strategy.strategy)": [[38, "lumibot.strategies.strategy.Strategy.on_parameters_updated"]], "on_partially_filled_order() (in module lumibot.strategies.strategy.strategy)": [[39, "lumibot.strategies.strategy.Strategy.on_partially_filled_order"]], "on_trading_iteration() (in module lumibot.strategies.strategy.strategy)": [[40, "lumibot.strategies.strategy.Strategy.on_trading_iteration"]], "trace_stats() (in module lumibot.strategies.strategy.strategy)": [[42, "lumibot.strategies.strategy.Strategy.trace_stats"]], "backtestingbroker (class in lumibot.backtesting.backtesting_broker)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker"]], "datasourcebacktesting (class in lumibot.data_sources.data_source_backtesting)": [[43, "lumibot.data_sources.data_source_backtesting.DataSourceBacktesting"]], "is_backtesting_broker (lumibot.backtesting.backtesting_broker.backtestingbroker attribute)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.IS_BACKTESTING_BROKER"]], "is_backtesting_data_source (lumibot.data_sources.data_source_backtesting.datasourcebacktesting attribute)": [[43, "lumibot.data_sources.data_source_backtesting.DataSourceBacktesting.IS_BACKTESTING_DATA_SOURCE"]], "calculate_trade_cost() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.calculate_trade_cost"]], "cancel_order() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.cancel_order"]], "cash_settle_options_contract() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.cash_settle_options_contract"]], "datetime (lumibot.backtesting.backtesting_broker.backtestingbroker property)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.datetime"]], "get_datetime() (lumibot.data_sources.data_source_backtesting.datasourcebacktesting method)": [[43, "lumibot.data_sources.data_source_backtesting.DataSourceBacktesting.get_datetime"]], "get_datetime_range() (lumibot.data_sources.data_source_backtesting.datasourcebacktesting method)": [[43, "lumibot.data_sources.data_source_backtesting.DataSourceBacktesting.get_datetime_range"]], "get_historical_account_value() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.get_historical_account_value"]], "get_last_bar() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.get_last_bar"]], "get_time_to_close() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.get_time_to_close"]], "get_time_to_open() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.get_time_to_open"]], "is_market_open() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.is_market_open"]], "limit_order() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.limit_order"]], "lumibot.backtesting.backtesting_broker": [[43, "module-lumibot.backtesting.backtesting_broker"]], "lumibot.data_sources.data_source_backtesting": [[43, "module-lumibot.data_sources.data_source_backtesting"]], "process_expired_option_contracts() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.process_expired_option_contracts"]], "process_pending_orders() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.process_pending_orders"]], "should_continue() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.should_continue"]], "stop_order() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.stop_order"]], "submit_order() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.submit_order"]], "submit_orders() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.submit_orders"]], "default_pytz (lumibot.data_sources.data_source.datasource attribute)": [[44, "lumibot.data_sources.data_source.DataSource.DEFAULT_PYTZ"]], "default_timezone (lumibot.data_sources.data_source.datasource attribute)": [[44, "lumibot.data_sources.data_source.DataSource.DEFAULT_TIMEZONE"]], "datasource (class in lumibot.data_sources.data_source)": [[44, "lumibot.data_sources.data_source.DataSource"]], "is_backtesting_data_source (lumibot.data_sources.data_source.datasource attribute)": [[44, "lumibot.data_sources.data_source.DataSource.IS_BACKTESTING_DATA_SOURCE"]], "min_timestep (lumibot.data_sources.data_source.datasource attribute)": [[44, "lumibot.data_sources.data_source.DataSource.MIN_TIMESTEP"]], "min_timestep (lumibot.data_sources.yahoo_data.yahoodata attribute)": [[44, "lumibot.data_sources.yahoo_data.YahooData.MIN_TIMESTEP"]], "pandasdata (class in lumibot.data_sources.pandas_data)": [[44, "lumibot.data_sources.pandas_data.PandasData"]], "source (lumibot.data_sources.data_source.datasource attribute)": [[44, "lumibot.data_sources.data_source.DataSource.SOURCE"]], "source (lumibot.data_sources.pandas_data.pandasdata attribute)": [[44, "lumibot.data_sources.pandas_data.PandasData.SOURCE"]], "source (lumibot.data_sources.yahoo_data.yahoodata attribute)": [[44, "lumibot.data_sources.yahoo_data.YahooData.SOURCE"]], "timestep_mapping (lumibot.data_sources.data_source.datasource attribute)": [[44, "lumibot.data_sources.data_source.DataSource.TIMESTEP_MAPPING"]], "timestep_mapping (lumibot.data_sources.pandas_data.pandasdata attribute)": [[44, "lumibot.data_sources.pandas_data.PandasData.TIMESTEP_MAPPING"]], "timestep_mapping (lumibot.data_sources.yahoo_data.yahoodata attribute)": [[44, "lumibot.data_sources.yahoo_data.YahooData.TIMESTEP_MAPPING"]], "yahoodata (class in lumibot.data_sources.yahoo_data)": [[44, "lumibot.data_sources.yahoo_data.YahooData"]], "calculate_greeks() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.calculate_greeks"]], "clean_trading_times() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.clean_trading_times"]], "convert_timestep_str_to_timedelta() (lumibot.data_sources.data_source.datasource static method)": [[44, "lumibot.data_sources.data_source.DataSource.convert_timestep_str_to_timedelta"]], "find_asset_in_data_store() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.find_asset_in_data_store"]], "get_asset_by_name() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_asset_by_name"]], "get_asset_by_symbol() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_asset_by_symbol"]], "get_assets() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_assets"]], "get_bars() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_bars"]], "get_chains() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_chains"]], "get_chains() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_chains"]], "get_chains() (lumibot.data_sources.yahoo_data.yahoodata method)": [[44, "lumibot.data_sources.yahoo_data.YahooData.get_chains"]], "get_datetime() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_datetime"]], "get_datetime_range() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_datetime_range"]], "get_historical_prices() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_historical_prices"]], "get_historical_prices() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_historical_prices"]], "get_historical_prices() (lumibot.data_sources.yahoo_data.yahoodata method)": [[44, "lumibot.data_sources.yahoo_data.YahooData.get_historical_prices"]], "get_last_day() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_last_day"]], "get_last_minute() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_last_minute"]], "get_last_price() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_last_price"]], "get_last_price() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_last_price"]], "get_last_price() (lumibot.data_sources.yahoo_data.yahoodata method)": [[44, "lumibot.data_sources.yahoo_data.YahooData.get_last_price"]], "get_last_prices() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_last_prices"]], "get_last_prices() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_last_prices"]], "get_round_day() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_round_day"]], "get_round_minute() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_round_minute"]], "get_start_datetime_and_ts_unit() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_start_datetime_and_ts_unit"]], "get_strikes() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_strikes"]], "get_strikes() (lumibot.data_sources.yahoo_data.yahoodata method)": [[44, "lumibot.data_sources.yahoo_data.YahooData.get_strikes"]], "get_timestamp() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_timestamp"]], "get_timestep() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_timestep"]], "get_trading_days_pandas() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_trading_days_pandas"]], "get_yesterday_dividend() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_yesterday_dividend"]], "get_yesterday_dividend() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_yesterday_dividend"]], "get_yesterday_dividends() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_yesterday_dividends"]], "get_yesterday_dividends() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_yesterday_dividends"]], "load_data() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.load_data"]], "localize_datetime() (lumibot.data_sources.data_source.datasource class method)": [[44, "lumibot.data_sources.data_source.DataSource.localize_datetime"]], "lumibot.data_sources": [[44, "module-lumibot.data_sources"]], "lumibot.data_sources.data_source": [[44, "module-lumibot.data_sources.data_source"]], "lumibot.data_sources.pandas_data": [[44, "module-lumibot.data_sources.pandas_data"]], "lumibot.data_sources.yahoo_data": [[44, "module-lumibot.data_sources.yahoo_data"]], "query_greeks() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.query_greeks"]], "to_default_timezone() (lumibot.data_sources.data_source.datasource class method)": [[44, "lumibot.data_sources.data_source.DataSource.to_default_timezone"]], "update_date_index() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.update_date_index"]], "lumibot.strategies.strategy.strategy": [[45, "module-lumibot.strategies.strategy.Strategy"]], "trader (class in lumibot.traders.trader)": [[46, "lumibot.traders.trader.Trader"]], "add_strategy() (lumibot.traders.trader.trader method)": [[46, "lumibot.traders.trader.Trader.add_strategy"]], "is_backtest_broker (lumibot.traders.trader.trader property)": [[46, "lumibot.traders.trader.Trader.is_backtest_broker"]], "lumibot.traders.trader": [[46, "module-lumibot.traders.trader"]], "run_all() (lumibot.traders.trader.trader method)": [[46, "lumibot.traders.trader.Trader.run_all"]], "run_all_async() (lumibot.traders.trader.trader method)": [[46, "lumibot.traders.trader.Trader.run_all_async"]], "stop_all() (lumibot.traders.trader.trader method)": [[46, "lumibot.traders.trader.Trader.stop_all"]], "get_cash() (in module lumibot.strategies.strategy.strategy)": [[49, "lumibot.strategies.strategy.Strategy.get_cash"], [55, "lumibot.strategies.strategy.Strategy.get_cash"]], "get_parameters() (in module lumibot.strategies.strategy.strategy)": [[50, "lumibot.strategies.strategy.Strategy.get_parameters"], [56, "lumibot.strategies.strategy.Strategy.get_parameters"], [104, "lumibot.strategies.strategy.Strategy.get_parameters"], [115, "lumibot.strategies.strategy.Strategy.get_parameters"]], "get_portfolio_value() (in module lumibot.strategies.strategy.strategy)": [[51, "lumibot.strategies.strategy.Strategy.get_portfolio_value"], [57, "lumibot.strategies.strategy.Strategy.get_portfolio_value"]], "get_position() (in module lumibot.strategies.strategy.strategy)": [[52, "lumibot.strategies.strategy.Strategy.get_position"], [58, "lumibot.strategies.strategy.Strategy.get_position"]], "get_positions() (in module lumibot.strategies.strategy.strategy)": [[53, "lumibot.strategies.strategy.Strategy.get_positions"], [59, "lumibot.strategies.strategy.Strategy.get_positions"]], "set_parameters() (in module lumibot.strategies.strategy.strategy)": [[54, "lumibot.strategies.strategy.Strategy.set_parameters"], [60, "lumibot.strategies.strategy.Strategy.set_parameters"]], "add_line() (in module lumibot.strategies.strategy.strategy)": [[62, "lumibot.strategies.strategy.Strategy.add_line"], [66, "lumibot.strategies.strategy.Strategy.add_line"]], "add_marker() (in module lumibot.strategies.strategy.strategy)": [[63, "lumibot.strategies.strategy.Strategy.add_marker"], [67, "lumibot.strategies.strategy.Strategy.add_marker"]], "get_lines_df() (in module lumibot.strategies.strategy.strategy)": [[64, "lumibot.strategies.strategy.Strategy.get_lines_df"], [68, "lumibot.strategies.strategy.Strategy.get_lines_df"]], "get_markers_df() (in module lumibot.strategies.strategy.strategy)": [[65, "lumibot.strategies.strategy.Strategy.get_markers_df"], [69, "lumibot.strategies.strategy.Strategy.get_markers_df"]], "cancel_realtime_bars() (in module lumibot.strategies.strategy.strategy)": [[71, "lumibot.strategies.strategy.Strategy.cancel_realtime_bars"]], "get_historical_prices() (in module lumibot.strategies.strategy.strategy)": [[72, "lumibot.strategies.strategy.Strategy.get_historical_prices"]], "get_historical_prices_for_assets() (in module lumibot.strategies.strategy.strategy)": [[73, "lumibot.strategies.strategy.Strategy.get_historical_prices_for_assets"]], "get_last_price() (in module lumibot.strategies.strategy.strategy)": [[74, "lumibot.strategies.strategy.Strategy.get_last_price"]], "get_last_prices() (in module lumibot.strategies.strategy.strategy)": [[75, "lumibot.strategies.strategy.Strategy.get_last_prices"]], "get_next_trading_day() (in module lumibot.strategies.strategy.strategy)": [[76, "lumibot.strategies.strategy.Strategy.get_next_trading_day"], [130, "lumibot.strategies.strategy.Strategy.get_next_trading_day"], [138, "lumibot.strategies.strategy.Strategy.get_next_trading_day"]], "get_quote() (in module lumibot.strategies.strategy.strategy)": [[77, "lumibot.strategies.strategy.Strategy.get_quote"]], "get_realtime_bars() (in module lumibot.strategies.strategy.strategy)": [[78, "lumibot.strategies.strategy.Strategy.get_realtime_bars"]], "get_yesterday_dividend() (in module lumibot.strategies.strategy.strategy)": [[79, "lumibot.strategies.strategy.Strategy.get_yesterday_dividend"]], "get_yesterday_dividends() (in module lumibot.strategies.strategy.strategy)": [[80, "lumibot.strategies.strategy.Strategy.get_yesterday_dividends"]], "start_realtime_bars() (in module lumibot.strategies.strategy.strategy)": [[81, "lumibot.strategies.strategy.Strategy.start_realtime_bars"]], "get_datetime() (in module lumibot.strategies.strategy.strategy)": [[83, "lumibot.strategies.strategy.Strategy.get_datetime"], [92, "lumibot.strategies.strategy.Strategy.get_datetime"]], "get_datetime_range() (in module lumibot.strategies.strategy.strategy)": [[84, "lumibot.strategies.strategy.Strategy.get_datetime_range"], [93, "lumibot.strategies.strategy.Strategy.get_datetime_range"]], "get_last_day() (in module lumibot.strategies.strategy.strategy)": [[85, "lumibot.strategies.strategy.Strategy.get_last_day"], [94, "lumibot.strategies.strategy.Strategy.get_last_day"]], "get_last_minute() (in module lumibot.strategies.strategy.strategy)": [[86, "lumibot.strategies.strategy.Strategy.get_last_minute"], [95, "lumibot.strategies.strategy.Strategy.get_last_minute"]], "get_round_day() (in module lumibot.strategies.strategy.strategy)": [[87, "lumibot.strategies.strategy.Strategy.get_round_day"], [96, "lumibot.strategies.strategy.Strategy.get_round_day"]], "get_round_minute() (in module lumibot.strategies.strategy.strategy)": [[88, "lumibot.strategies.strategy.Strategy.get_round_minute"], [97, "lumibot.strategies.strategy.Strategy.get_round_minute"]], "get_timestamp() (in module lumibot.strategies.strategy.strategy)": [[89, "lumibot.strategies.strategy.Strategy.get_timestamp"], [98, "lumibot.strategies.strategy.Strategy.get_timestamp"]], "localize_datetime() (in module lumibot.strategies.strategy.strategy)": [[90, "lumibot.strategies.strategy.Strategy.localize_datetime"], [99, "lumibot.strategies.strategy.Strategy.localize_datetime"]], "to_default_timezone() (in module lumibot.strategies.strategy.strategy)": [[91, "lumibot.strategies.strategy.Strategy.to_default_timezone"], [100, "lumibot.strategies.strategy.Strategy.to_default_timezone"]], "await_market_to_close() (in module lumibot.strategies.strategy.strategy)": [[102, "lumibot.strategies.strategy.Strategy.await_market_to_close"], [113, "lumibot.strategies.strategy.Strategy.await_market_to_close"]], "await_market_to_open() (in module lumibot.strategies.strategy.strategy)": [[103, "lumibot.strategies.strategy.Strategy.await_market_to_open"], [114, "lumibot.strategies.strategy.Strategy.await_market_to_open"]], "log_message() (in module lumibot.strategies.strategy.strategy)": [[105, "lumibot.strategies.strategy.Strategy.log_message"], [116, "lumibot.strategies.strategy.Strategy.log_message"]], "set_market() (in module lumibot.strategies.strategy.strategy)": [[106, "lumibot.strategies.strategy.Strategy.set_market"], [117, "lumibot.strategies.strategy.Strategy.set_market"]], "sleep() (in module lumibot.strategies.strategy.strategy)": [[107, "lumibot.strategies.strategy.Strategy.sleep"], [118, "lumibot.strategies.strategy.Strategy.sleep"]], "update_parameters() (in module lumibot.strategies.strategy.strategy)": [[108, "lumibot.strategies.strategy.Strategy.update_parameters"], [119, "lumibot.strategies.strategy.Strategy.update_parameters"]], "wait_for_order_execution() (in module lumibot.strategies.strategy.strategy)": [[109, "lumibot.strategies.strategy.Strategy.wait_for_order_execution"], [120, "lumibot.strategies.strategy.Strategy.wait_for_order_execution"]], "wait_for_order_registration() (in module lumibot.strategies.strategy.strategy)": [[110, "lumibot.strategies.strategy.Strategy.wait_for_order_registration"], [121, "lumibot.strategies.strategy.Strategy.wait_for_order_registration"]], "wait_for_orders_execution() (in module lumibot.strategies.strategy.strategy)": [[111, "lumibot.strategies.strategy.Strategy.wait_for_orders_execution"], [122, "lumibot.strategies.strategy.Strategy.wait_for_orders_execution"]], "wait_for_orders_registration() (in module lumibot.strategies.strategy.strategy)": [[112, "lumibot.strategies.strategy.Strategy.wait_for_orders_registration"], [123, "lumibot.strategies.strategy.Strategy.wait_for_orders_registration"]], "get_chain() (in module lumibot.strategies.strategy.strategy)": [[125, "lumibot.strategies.strategy.Strategy.get_chain"], [133, "lumibot.strategies.strategy.Strategy.get_chain"]], "get_chains() (in module lumibot.strategies.strategy.strategy)": [[126, "lumibot.strategies.strategy.Strategy.get_chains"], [134, "lumibot.strategies.strategy.Strategy.get_chains"]], "get_expiration() (in module lumibot.strategies.strategy.strategy)": [[127, "lumibot.strategies.strategy.Strategy.get_expiration"], [135, "lumibot.strategies.strategy.Strategy.get_expiration"]], "get_greeks() (in module lumibot.strategies.strategy.strategy)": [[128, "lumibot.strategies.strategy.Strategy.get_greeks"], [136, "lumibot.strategies.strategy.Strategy.get_greeks"]], "get_multiplier() (in module lumibot.strategies.strategy.strategy)": [[129, "lumibot.strategies.strategy.Strategy.get_multiplier"], [137, "lumibot.strategies.strategy.Strategy.get_multiplier"]], "get_strikes() (in module lumibot.strategies.strategy.strategy)": [[131, "lumibot.strategies.strategy.Strategy.get_strikes"], [140, "lumibot.strategies.strategy.Strategy.get_strikes"]], "options_expiry_to_datetime_date() (in module lumibot.strategies.strategy.strategy)": [[132, "lumibot.strategies.strategy.Strategy.options_expiry_to_datetime_date"], [141, "lumibot.strategies.strategy.Strategy.options_expiry_to_datetime_date"]], "get_option_expiration_after_date() (in module lumibot.strategies.strategy.strategy)": [[139, "lumibot.strategies.strategy.Strategy.get_option_expiration_after_date"]], "cancel_open_orders() (in module lumibot.strategies.strategy.strategy)": [[143, "lumibot.strategies.strategy.Strategy.cancel_open_orders"], [154, "lumibot.strategies.strategy.Strategy.cancel_open_orders"]], "cancel_order() (in module lumibot.strategies.strategy.strategy)": [[144, "lumibot.strategies.strategy.Strategy.cancel_order"], [155, "lumibot.strategies.strategy.Strategy.cancel_order"]], "cancel_orders() (in module lumibot.strategies.strategy.strategy)": [[145, "lumibot.strategies.strategy.Strategy.cancel_orders"], [156, "lumibot.strategies.strategy.Strategy.cancel_orders"]], "create_order() (in module lumibot.strategies.strategy.strategy)": [[146, "lumibot.strategies.strategy.Strategy.create_order"], [157, "lumibot.strategies.strategy.Strategy.create_order"]], "get_asset_potential_total() (in module lumibot.strategies.strategy.strategy)": [[147, "lumibot.strategies.strategy.Strategy.get_asset_potential_total"], [158, "lumibot.strategies.strategy.Strategy.get_asset_potential_total"]], "get_order() (in module lumibot.strategies.strategy.strategy)": [[148, "lumibot.strategies.strategy.Strategy.get_order"], [159, "lumibot.strategies.strategy.Strategy.get_order"]], "get_orders() (in module lumibot.strategies.strategy.strategy)": [[149, "lumibot.strategies.strategy.Strategy.get_orders"], [160, "lumibot.strategies.strategy.Strategy.get_orders"]], "get_selling_order() (in module lumibot.strategies.strategy.strategy)": [[150, "lumibot.strategies.strategy.Strategy.get_selling_order"], [161, "lumibot.strategies.strategy.Strategy.get_selling_order"]], "sell_all() (in module lumibot.strategies.strategy.strategy)": [[151, "lumibot.strategies.strategy.Strategy.sell_all"], [162, "lumibot.strategies.strategy.Strategy.sell_all"]], "submit_order() (in module lumibot.strategies.strategy.strategy)": [[152, "lumibot.strategies.strategy.Strategy.submit_order"], [163, "lumibot.strategies.strategy.Strategy.submit_order"]], "submit_orders() (in module lumibot.strategies.strategy.strategy)": [[153, "lumibot.strategies.strategy.Strategy.submit_orders"], [164, "lumibot.strategies.strategy.Strategy.submit_orders"]], "cash (lumibot.strategies.strategy.strategy property)": [[167, "lumibot.strategies.strategy.Strategy.cash"], [182, "lumibot.strategies.strategy.Strategy.cash"]], "first_iteration (lumibot.strategies.strategy.strategy property)": [[168, "lumibot.strategies.strategy.Strategy.first_iteration"], [183, "lumibot.strategies.strategy.Strategy.first_iteration"]], "initial_budget (lumibot.strategies.strategy.strategy property)": [[169, "lumibot.strategies.strategy.Strategy.initial_budget"], [184, "lumibot.strategies.strategy.Strategy.initial_budget"]], "is_backtesting (lumibot.strategies.strategy.strategy property)": [[170, "lumibot.strategies.strategy.Strategy.is_backtesting"], [185, "lumibot.strategies.strategy.Strategy.is_backtesting"]], "last_on_trading_iteration_datetime (lumibot.strategies.strategy.strategy property)": [[171, "lumibot.strategies.strategy.Strategy.last_on_trading_iteration_datetime"], [186, "lumibot.strategies.strategy.Strategy.last_on_trading_iteration_datetime"]], "minutes_before_closing (lumibot.strategies.strategy.strategy property)": [[172, "lumibot.strategies.strategy.Strategy.minutes_before_closing"], [187, "lumibot.strategies.strategy.Strategy.minutes_before_closing"]], "minutes_before_opening (lumibot.strategies.strategy.strategy property)": [[173, "lumibot.strategies.strategy.Strategy.minutes_before_opening"], [188, "lumibot.strategies.strategy.Strategy.minutes_before_opening"]], "name (lumibot.strategies.strategy.strategy property)": [[174, "lumibot.strategies.strategy.Strategy.name"], [189, "lumibot.strategies.strategy.Strategy.name"]], "portfolio_value (lumibot.strategies.strategy.strategy property)": [[175, "lumibot.strategies.strategy.Strategy.portfolio_value"], [190, "lumibot.strategies.strategy.Strategy.portfolio_value"]], "pytz (lumibot.strategies.strategy.strategy property)": [[176, "lumibot.strategies.strategy.Strategy.pytz"], [181, "lumibot.strategies.strategy.Strategy.pytz"], [191, "lumibot.strategies.strategy.Strategy.pytz"]], "quote_asset (lumibot.strategies.strategy.strategy property)": [[177, "lumibot.strategies.strategy.Strategy.quote_asset"], [192, "lumibot.strategies.strategy.Strategy.quote_asset"]], "sleeptime (lumibot.strategies.strategy.strategy property)": [[178, "lumibot.strategies.strategy.Strategy.sleeptime"], [193, "lumibot.strategies.strategy.Strategy.sleeptime"]], "timezone (lumibot.strategies.strategy.strategy property)": [[179, "lumibot.strategies.strategy.Strategy.timezone"], [194, "lumibot.strategies.strategy.Strategy.timezone"]], "unspent_money (lumibot.strategies.strategy.strategy property)": [[180, "lumibot.strategies.strategy.Strategy.unspent_money"], [195, "lumibot.strategies.strategy.Strategy.unspent_money"]]}}) \ No newline at end of file +Search.setIndex({"docnames": ["backtesting", "backtesting.backtesting_function", "backtesting.how_to_backtest", "backtesting.indicators_files", "backtesting.logs_csv", "backtesting.pandas", "backtesting.polygon", "backtesting.tearsheet_html", "backtesting.thetadata", "backtesting.trades_files", "backtesting.yahoo", "brokers", "brokers.alpaca", "brokers.ccxt", "brokers.interactive_brokers", "brokers.interactive_brokers_legacy", "brokers.tradier", "deployment", "entities", "entities.asset", "entities.bars", "entities.data", "entities.order", "entities.position", "entities.trading_fee", "getting_started", "index", "lifecycle_methods", "lifecycle_methods.after_market_closes", "lifecycle_methods.before_market_closes", "lifecycle_methods.before_market_opens", "lifecycle_methods.before_starting_trading", "lifecycle_methods.initialize", "lifecycle_methods.on_abrupt_closing", "lifecycle_methods.on_bot_crash", "lifecycle_methods.on_canceled_order", "lifecycle_methods.on_filled_order", "lifecycle_methods.on_new_order", "lifecycle_methods.on_parameters_updated", "lifecycle_methods.on_partially_filled_order", "lifecycle_methods.on_trading_iteration", "lifecycle_methods.summary", "lifecycle_methods.trace_stats", "lumibot.backtesting", "lumibot.data_sources", "lumibot.strategies", "lumibot.traders", "strategy_methods", "strategy_methods.account", "strategy_methods.account/lumibot.strategies.strategy.Strategy.get_cash", "strategy_methods.account/lumibot.strategies.strategy.Strategy.get_parameters", "strategy_methods.account/lumibot.strategies.strategy.Strategy.get_portfolio_value", "strategy_methods.account/lumibot.strategies.strategy.Strategy.get_position", "strategy_methods.account/lumibot.strategies.strategy.Strategy.get_positions", "strategy_methods.account/lumibot.strategies.strategy.Strategy.set_parameters", "strategy_methods.account/strategies.strategy.Strategy.get_cash", "strategy_methods.account/strategies.strategy.Strategy.get_parameters", "strategy_methods.account/strategies.strategy.Strategy.get_portfolio_value", "strategy_methods.account/strategies.strategy.Strategy.get_position", "strategy_methods.account/strategies.strategy.Strategy.get_positions", "strategy_methods.account/strategies.strategy.Strategy.set_parameters", "strategy_methods.chart", "strategy_methods.chart/lumibot.strategies.strategy.Strategy.add_line", "strategy_methods.chart/lumibot.strategies.strategy.Strategy.add_marker", "strategy_methods.chart/lumibot.strategies.strategy.Strategy.get_lines_df", "strategy_methods.chart/lumibot.strategies.strategy.Strategy.get_markers_df", "strategy_methods.chart/strategies.strategy.Strategy.add_line", "strategy_methods.chart/strategies.strategy.Strategy.add_marker", "strategy_methods.chart/strategies.strategy.Strategy.get_lines_df", "strategy_methods.chart/strategies.strategy.Strategy.get_markers_df", "strategy_methods.data", "strategy_methods.data/lumibot.strategies.strategy.Strategy.cancel_realtime_bars", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_historical_prices", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_historical_prices_for_assets", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_last_price", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_last_prices", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_next_trading_day", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_quote", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_realtime_bars", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_yesterday_dividend", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_yesterday_dividends", "strategy_methods.data/lumibot.strategies.strategy.Strategy.start_realtime_bars", "strategy_methods.datetime", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_datetime", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_datetime_range", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_last_day", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_last_minute", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_round_day", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_round_minute", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_timestamp", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.localize_datetime", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.to_default_timezone", "strategy_methods.datetime/strategies.strategy.Strategy.get_datetime", "strategy_methods.datetime/strategies.strategy.Strategy.get_datetime_range", "strategy_methods.datetime/strategies.strategy.Strategy.get_last_day", "strategy_methods.datetime/strategies.strategy.Strategy.get_last_minute", "strategy_methods.datetime/strategies.strategy.Strategy.get_round_day", "strategy_methods.datetime/strategies.strategy.Strategy.get_round_minute", "strategy_methods.datetime/strategies.strategy.Strategy.get_timestamp", "strategy_methods.datetime/strategies.strategy.Strategy.localize_datetime", "strategy_methods.datetime/strategies.strategy.Strategy.to_default_timezone", "strategy_methods.misc", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.await_market_to_close", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.await_market_to_open", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.get_parameters", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.log_message", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.set_market", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.sleep", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.update_parameters", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.wait_for_order_execution", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.wait_for_order_registration", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.wait_for_orders_execution", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.wait_for_orders_registration", "strategy_methods.misc/strategies.strategy.Strategy.await_market_to_close", "strategy_methods.misc/strategies.strategy.Strategy.await_market_to_open", "strategy_methods.misc/strategies.strategy.Strategy.get_parameters", "strategy_methods.misc/strategies.strategy.Strategy.log_message", "strategy_methods.misc/strategies.strategy.Strategy.set_market", "strategy_methods.misc/strategies.strategy.Strategy.sleep", "strategy_methods.misc/strategies.strategy.Strategy.update_parameters", "strategy_methods.misc/strategies.strategy.Strategy.wait_for_order_execution", "strategy_methods.misc/strategies.strategy.Strategy.wait_for_order_registration", "strategy_methods.misc/strategies.strategy.Strategy.wait_for_orders_execution", "strategy_methods.misc/strategies.strategy.Strategy.wait_for_orders_registration", "strategy_methods.options", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_chain", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_chains", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_expiration", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_greeks", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_multiplier", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_next_trading_day", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_strikes", "strategy_methods.options/lumibot.strategies.strategy.Strategy.options_expiry_to_datetime_date", "strategy_methods.options/strategies.strategy.Strategy.get_chain", "strategy_methods.options/strategies.strategy.Strategy.get_chains", "strategy_methods.options/strategies.strategy.Strategy.get_expiration", "strategy_methods.options/strategies.strategy.Strategy.get_greeks", "strategy_methods.options/strategies.strategy.Strategy.get_multiplier", "strategy_methods.options/strategies.strategy.Strategy.get_next_trading_day", "strategy_methods.options/strategies.strategy.Strategy.get_option_expiration_after_date", "strategy_methods.options/strategies.strategy.Strategy.get_strikes", "strategy_methods.options/strategies.strategy.Strategy.options_expiry_to_datetime_date", "strategy_methods.orders", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.cancel_open_orders", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.cancel_order", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.cancel_orders", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.create_order", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.get_asset_potential_total", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.get_order", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.get_orders", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.get_selling_order", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.sell_all", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.submit_order", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.submit_orders", "strategy_methods.orders/strategies.strategy.Strategy.cancel_open_orders", "strategy_methods.orders/strategies.strategy.Strategy.cancel_order", "strategy_methods.orders/strategies.strategy.Strategy.cancel_orders", "strategy_methods.orders/strategies.strategy.Strategy.create_order", "strategy_methods.orders/strategies.strategy.Strategy.get_asset_potential_total", "strategy_methods.orders/strategies.strategy.Strategy.get_order", "strategy_methods.orders/strategies.strategy.Strategy.get_orders", "strategy_methods.orders/strategies.strategy.Strategy.get_selling_order", "strategy_methods.orders/strategies.strategy.Strategy.sell_all", "strategy_methods.orders/strategies.strategy.Strategy.submit_order", "strategy_methods.orders/strategies.strategy.Strategy.submit_orders", "strategy_methods.parameters", "strategy_properties", "strategy_properties/lumibot.strategies.strategy.Strategy.cash", "strategy_properties/lumibot.strategies.strategy.Strategy.first_iteration", "strategy_properties/lumibot.strategies.strategy.Strategy.initial_budget", "strategy_properties/lumibot.strategies.strategy.Strategy.is_backtesting", "strategy_properties/lumibot.strategies.strategy.Strategy.last_on_trading_iteration_datetime", "strategy_properties/lumibot.strategies.strategy.Strategy.minutes_before_closing", "strategy_properties/lumibot.strategies.strategy.Strategy.minutes_before_opening", "strategy_properties/lumibot.strategies.strategy.Strategy.name", "strategy_properties/lumibot.strategies.strategy.Strategy.portfolio_value", "strategy_properties/lumibot.strategies.strategy.Strategy.pytz", "strategy_properties/lumibot.strategies.strategy.Strategy.quote_asset", "strategy_properties/lumibot.strategies.strategy.Strategy.sleeptime", "strategy_properties/lumibot.strategies.strategy.Strategy.timezone", "strategy_properties/lumibot.strategies.strategy.Strategy.unspent_money", "strategy_properties/lumibot.strategies.strategy.pytz", "strategy_properties/strategies.strategy.Strategy.cash", "strategy_properties/strategies.strategy.Strategy.first_iteration", "strategy_properties/strategies.strategy.Strategy.initial_budget", "strategy_properties/strategies.strategy.Strategy.is_backtesting", "strategy_properties/strategies.strategy.Strategy.last_on_trading_iteration_datetime", "strategy_properties/strategies.strategy.Strategy.minutes_before_closing", "strategy_properties/strategies.strategy.Strategy.minutes_before_opening", "strategy_properties/strategies.strategy.Strategy.name", "strategy_properties/strategies.strategy.Strategy.portfolio_value", "strategy_properties/strategies.strategy.Strategy.pytz", "strategy_properties/strategies.strategy.Strategy.quote_asset", "strategy_properties/strategies.strategy.Strategy.sleeptime", "strategy_properties/strategies.strategy.Strategy.timezone", "strategy_properties/strategies.strategy.Strategy.unspent_money", "vars"], "filenames": ["backtesting.rst", "backtesting.backtesting_function.rst", "backtesting.how_to_backtest.rst", "backtesting.indicators_files.rst", "backtesting.logs_csv.rst", "backtesting.pandas.rst", "backtesting.polygon.rst", "backtesting.tearsheet_html.rst", "backtesting.thetadata.rst", "backtesting.trades_files.rst", "backtesting.yahoo.rst", "brokers.rst", "brokers.alpaca.rst", "brokers.ccxt.rst", "brokers.interactive_brokers.rst", "brokers.interactive_brokers_legacy.rst", "brokers.tradier.rst", "deployment.rst", "entities.rst", "entities.asset.rst", "entities.bars.rst", "entities.data.rst", "entities.order.rst", "entities.position.rst", "entities.trading_fee.rst", "getting_started.rst", "index.rst", "lifecycle_methods.rst", "lifecycle_methods.after_market_closes.rst", "lifecycle_methods.before_market_closes.rst", "lifecycle_methods.before_market_opens.rst", "lifecycle_methods.before_starting_trading.rst", "lifecycle_methods.initialize.rst", "lifecycle_methods.on_abrupt_closing.rst", "lifecycle_methods.on_bot_crash.rst", "lifecycle_methods.on_canceled_order.rst", "lifecycle_methods.on_filled_order.rst", "lifecycle_methods.on_new_order.rst", "lifecycle_methods.on_parameters_updated.rst", "lifecycle_methods.on_partially_filled_order.rst", "lifecycle_methods.on_trading_iteration.rst", "lifecycle_methods.summary.rst", "lifecycle_methods.trace_stats.rst", "lumibot.backtesting.rst", "lumibot.data_sources.rst", "lumibot.strategies.rst", "lumibot.traders.rst", "strategy_methods.rst", "strategy_methods.account.rst", "strategy_methods.account/lumibot.strategies.strategy.Strategy.get_cash.rst", "strategy_methods.account/lumibot.strategies.strategy.Strategy.get_parameters.rst", "strategy_methods.account/lumibot.strategies.strategy.Strategy.get_portfolio_value.rst", "strategy_methods.account/lumibot.strategies.strategy.Strategy.get_position.rst", "strategy_methods.account/lumibot.strategies.strategy.Strategy.get_positions.rst", "strategy_methods.account/lumibot.strategies.strategy.Strategy.set_parameters.rst", "strategy_methods.account/strategies.strategy.Strategy.get_cash.rst", "strategy_methods.account/strategies.strategy.Strategy.get_parameters.rst", "strategy_methods.account/strategies.strategy.Strategy.get_portfolio_value.rst", "strategy_methods.account/strategies.strategy.Strategy.get_position.rst", "strategy_methods.account/strategies.strategy.Strategy.get_positions.rst", "strategy_methods.account/strategies.strategy.Strategy.set_parameters.rst", "strategy_methods.chart.rst", "strategy_methods.chart/lumibot.strategies.strategy.Strategy.add_line.rst", "strategy_methods.chart/lumibot.strategies.strategy.Strategy.add_marker.rst", "strategy_methods.chart/lumibot.strategies.strategy.Strategy.get_lines_df.rst", "strategy_methods.chart/lumibot.strategies.strategy.Strategy.get_markers_df.rst", "strategy_methods.chart/strategies.strategy.Strategy.add_line.rst", "strategy_methods.chart/strategies.strategy.Strategy.add_marker.rst", "strategy_methods.chart/strategies.strategy.Strategy.get_lines_df.rst", "strategy_methods.chart/strategies.strategy.Strategy.get_markers_df.rst", "strategy_methods.data.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.cancel_realtime_bars.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_historical_prices.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_historical_prices_for_assets.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_last_price.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_last_prices.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_next_trading_day.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_quote.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_realtime_bars.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_yesterday_dividend.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.get_yesterday_dividends.rst", "strategy_methods.data/lumibot.strategies.strategy.Strategy.start_realtime_bars.rst", "strategy_methods.datetime.rst", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_datetime.rst", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_datetime_range.rst", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_last_day.rst", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_last_minute.rst", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_round_day.rst", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_round_minute.rst", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.get_timestamp.rst", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.localize_datetime.rst", "strategy_methods.datetime/lumibot.strategies.strategy.Strategy.to_default_timezone.rst", "strategy_methods.datetime/strategies.strategy.Strategy.get_datetime.rst", "strategy_methods.datetime/strategies.strategy.Strategy.get_datetime_range.rst", "strategy_methods.datetime/strategies.strategy.Strategy.get_last_day.rst", "strategy_methods.datetime/strategies.strategy.Strategy.get_last_minute.rst", "strategy_methods.datetime/strategies.strategy.Strategy.get_round_day.rst", "strategy_methods.datetime/strategies.strategy.Strategy.get_round_minute.rst", "strategy_methods.datetime/strategies.strategy.Strategy.get_timestamp.rst", "strategy_methods.datetime/strategies.strategy.Strategy.localize_datetime.rst", "strategy_methods.datetime/strategies.strategy.Strategy.to_default_timezone.rst", "strategy_methods.misc.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.await_market_to_close.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.await_market_to_open.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.get_parameters.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.log_message.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.set_market.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.sleep.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.update_parameters.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.wait_for_order_execution.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.wait_for_order_registration.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.wait_for_orders_execution.rst", "strategy_methods.misc/lumibot.strategies.strategy.Strategy.wait_for_orders_registration.rst", "strategy_methods.misc/strategies.strategy.Strategy.await_market_to_close.rst", "strategy_methods.misc/strategies.strategy.Strategy.await_market_to_open.rst", "strategy_methods.misc/strategies.strategy.Strategy.get_parameters.rst", "strategy_methods.misc/strategies.strategy.Strategy.log_message.rst", "strategy_methods.misc/strategies.strategy.Strategy.set_market.rst", "strategy_methods.misc/strategies.strategy.Strategy.sleep.rst", "strategy_methods.misc/strategies.strategy.Strategy.update_parameters.rst", "strategy_methods.misc/strategies.strategy.Strategy.wait_for_order_execution.rst", "strategy_methods.misc/strategies.strategy.Strategy.wait_for_order_registration.rst", "strategy_methods.misc/strategies.strategy.Strategy.wait_for_orders_execution.rst", "strategy_methods.misc/strategies.strategy.Strategy.wait_for_orders_registration.rst", "strategy_methods.options.rst", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_chain.rst", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_chains.rst", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_expiration.rst", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_greeks.rst", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_multiplier.rst", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_next_trading_day.rst", "strategy_methods.options/lumibot.strategies.strategy.Strategy.get_strikes.rst", "strategy_methods.options/lumibot.strategies.strategy.Strategy.options_expiry_to_datetime_date.rst", "strategy_methods.options/strategies.strategy.Strategy.get_chain.rst", "strategy_methods.options/strategies.strategy.Strategy.get_chains.rst", "strategy_methods.options/strategies.strategy.Strategy.get_expiration.rst", "strategy_methods.options/strategies.strategy.Strategy.get_greeks.rst", "strategy_methods.options/strategies.strategy.Strategy.get_multiplier.rst", "strategy_methods.options/strategies.strategy.Strategy.get_next_trading_day.rst", "strategy_methods.options/strategies.strategy.Strategy.get_option_expiration_after_date.rst", "strategy_methods.options/strategies.strategy.Strategy.get_strikes.rst", "strategy_methods.options/strategies.strategy.Strategy.options_expiry_to_datetime_date.rst", "strategy_methods.orders.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.cancel_open_orders.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.cancel_order.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.cancel_orders.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.create_order.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.get_asset_potential_total.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.get_order.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.get_orders.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.get_selling_order.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.sell_all.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.submit_order.rst", "strategy_methods.orders/lumibot.strategies.strategy.Strategy.submit_orders.rst", "strategy_methods.orders/strategies.strategy.Strategy.cancel_open_orders.rst", "strategy_methods.orders/strategies.strategy.Strategy.cancel_order.rst", "strategy_methods.orders/strategies.strategy.Strategy.cancel_orders.rst", "strategy_methods.orders/strategies.strategy.Strategy.create_order.rst", "strategy_methods.orders/strategies.strategy.Strategy.get_asset_potential_total.rst", "strategy_methods.orders/strategies.strategy.Strategy.get_order.rst", "strategy_methods.orders/strategies.strategy.Strategy.get_orders.rst", "strategy_methods.orders/strategies.strategy.Strategy.get_selling_order.rst", "strategy_methods.orders/strategies.strategy.Strategy.sell_all.rst", "strategy_methods.orders/strategies.strategy.Strategy.submit_order.rst", "strategy_methods.orders/strategies.strategy.Strategy.submit_orders.rst", "strategy_methods.parameters.rst", "strategy_properties.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.cash.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.first_iteration.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.initial_budget.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.is_backtesting.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.last_on_trading_iteration_datetime.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.minutes_before_closing.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.minutes_before_opening.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.name.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.portfolio_value.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.pytz.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.quote_asset.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.sleeptime.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.timezone.rst", "strategy_properties/lumibot.strategies.strategy.Strategy.unspent_money.rst", "strategy_properties/lumibot.strategies.strategy.pytz.rst", "strategy_properties/strategies.strategy.Strategy.cash.rst", "strategy_properties/strategies.strategy.Strategy.first_iteration.rst", "strategy_properties/strategies.strategy.Strategy.initial_budget.rst", "strategy_properties/strategies.strategy.Strategy.is_backtesting.rst", "strategy_properties/strategies.strategy.Strategy.last_on_trading_iteration_datetime.rst", "strategy_properties/strategies.strategy.Strategy.minutes_before_closing.rst", "strategy_properties/strategies.strategy.Strategy.minutes_before_opening.rst", "strategy_properties/strategies.strategy.Strategy.name.rst", "strategy_properties/strategies.strategy.Strategy.portfolio_value.rst", "strategy_properties/strategies.strategy.Strategy.pytz.rst", "strategy_properties/strategies.strategy.Strategy.quote_asset.rst", "strategy_properties/strategies.strategy.Strategy.sleeptime.rst", "strategy_properties/strategies.strategy.Strategy.timezone.rst", "strategy_properties/strategies.strategy.Strategy.unspent_money.rst", "vars.rst"], "titles": ["Backtesting", "Backtesting Function", "How To Backtest", "Indicators Files", "Logs CSV", "Pandas (CSV or other data)", "Polygon.io Backtesting", "Tearsheet HTML", "ThetaData Backtesting", "Trades Files", "Yahoo", "Brokers", "Alpaca", "Crypto Brokers (Using CCXT)", "Interactive Brokers", "Interactive Brokers Legacy", "Tradier", "Deployment Guide", "Entities", "Asset", "Bars", "Data", "Order", "Position", "Trading Fee", "What is Lumibot?", "Lumibot: Backtesting and Algorithmic Trading Library", "Lifecycle Methods", "def after_market_closes", "def before_market_closes", "def before_market_opens", "def before_starting_trading", "def initialize", "def on_abrupt_closing", "def on_bot_crash", "def on_canceled_order", "def on_filled_order", "def on_new_order", "def on_parameters_updated", "def on_partially_filled_order", "def on_trading_iteration", "Summary", "def trace_stats", "Backtesting", "Data Sources", "Strategies", "Traders", "Strategy Methods", "Account Management", "self.get_cash", "self.get_parameters", "self.get_portfolio_value", "self.get_position", "self.get_positions", "self.set_parameters", "self.get_cash", "self.get_parameters", "self.get_portfolio_value", "self.get_position", "self.get_positions", "self.set_parameters", "Chart Functions", "self.add_line", "self.add_marker", "self.get_lines_df", "self.get_markers_df", "self.add_line", "self.add_marker", "self.get_lines_df", "self.get_markers_df", "Data", "self.cancel_realtime_bars", "self.get_historical_prices", "self.get_historical_prices_for_assets", "self.get_last_price", "self.get_last_prices", "self.get_next_trading_day", "self.get_quote", "self.get_realtime_bars", "self.get_yesterday_dividend", "self.get_yesterday_dividends", "self.start_realtime_bars", "DateTime", "self.get_datetime", "self.get_datetime_range", "self.get_last_day", "self.get_last_minute", "self.get_round_day", "self.get_round_minute", "self.get_timestamp", "self.localize_datetime", "self.to_default_timezone", "self.get_datetime", "self.get_datetime_range", "self.get_last_day", "self.get_last_minute", "self.get_round_day", "self.get_round_minute", "self.get_timestamp", "self.localize_datetime", "self.to_default_timezone", "Miscellaneous", "self.await_market_to_close", "self.await_market_to_open", "self.get_parameters", "self.log_message", "self.set_market", "self.sleep", "self.update_parameters", "self.wait_for_order_execution", "self.wait_for_order_registration", "self.wait_for_orders_execution", "self.wait_for_orders_registration", "self.await_market_to_close", "self.await_market_to_open", "self.get_parameters", "self.log_message", "self.set_market", "self.sleep", "self.update_parameters", "self.wait_for_order_execution", "self.wait_for_order_registration", "self.wait_for_orders_execution", "self.wait_for_orders_registration", "Options", "self.get_chain", "self.get_chains", "self.get_expiration", "self.get_greeks", "self.get_multiplier", "self.get_next_trading_day", "self.get_strikes", "self.options_expiry_to_datetime_date", "self.get_chain", "self.get_chains", "self.get_expiration", "self.get_greeks", "self.get_multiplier", "self.get_next_trading_day", "self.get_option_expiration_after_date", "self.get_strikes", "self.options_expiry_to_datetime_date", "Order Management", "self.cancel_open_orders", "self.cancel_order", "self.cancel_orders", "self.create_order", "self.get_asset_potential_total", "self.get_order", "self.get_orders", "self.get_selling_order", "self.sell_all", "self.submit_order", "self.submit_orders", "self.cancel_open_orders", "self.cancel_order", "self.cancel_orders", "self.create_order", "self.get_asset_potential_total", "self.get_order", "self.get_orders", "self.get_selling_order", "self.sell_all", "self.submit_order", "self.submit_orders", "Parameters", "Strategy Properties", "self.cash", "self.first_iteration", "self.initial_budget", "self.is_backtesting", "self.last_on_trading_iteration_datetime", "self.minutes_before_closing", "self.minutes_before_opening", "self.name", "self.portfolio_value", "self.pytz", "self.quote_asset", "self.sleeptime", "self.timezone", "self.unspent_money", "self.pytz", "self.cash", "self.first_iteration", "self.initial_budget", "self.is_backtesting", "self.last_on_trading_iteration_datetime", "self.minutes_before_closing", "self.minutes_before_opening", "self.name", "self.portfolio_value", "self.pytz", "self.quote_asset", "self.sleeptime", "self.timezone", "self.unspent_money", "Variable Backup & Restore"], "terms": {"lumibot": [0, 1, 5, 6, 8, 10, 11, 12, 13, 14, 15, 16, 18, 19, 22, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 46, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 62, 63, 64, 65, 66, 67, 68, 69, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165], "ha": [0, 7, 15, 20, 22, 26, 35, 36, 37, 39, 45, 71, 74, 78, 196], "three": [0, 15, 20, 22], "mode": [0, 15, 17, 43, 170, 185], "yahoo": [0, 1, 2, 5, 20, 26, 72, 73, 106, 117], "daili": [0, 2, 5, 7, 10, 31, 72, 73], "stock": [0, 1, 2, 5, 6, 8, 9, 10, 12, 17, 19, 20, 21, 22, 23, 26, 32, 44, 106, 117, 126, 134, 146, 152, 157, 163], "data": [0, 1, 3, 6, 8, 10, 11, 13, 18, 19, 20, 23, 26, 30, 31, 40, 45, 47, 62, 66, 71, 72, 73, 78, 81, 83, 89, 90, 91, 92, 98, 99, 100, 176, 179, 181, 191, 194], "panda": [0, 2, 10, 20, 21, 26, 62, 63, 64, 65, 66, 67, 68, 69, 72, 73, 78, 106, 117], "intra": [0, 5, 10], "dai": [0, 1, 2, 5, 6, 8, 10, 17, 21, 22, 26, 30, 31, 32, 40, 44, 72, 73, 76, 79, 80, 84, 85, 86, 87, 93, 94, 95, 96, 130, 138, 146, 153, 157, 164, 178, 193], "inter": [0, 5], "test": [0, 2, 15, 17], "futur": [0, 5, 12, 14, 17, 19, 20, 26, 43, 44, 74, 146, 147, 152, 157, 158, 163, 180, 195], "us": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 15, 16, 17, 19, 20, 21, 22, 23, 24, 25, 26, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 55, 61, 62, 63, 66, 67, 70, 72, 73, 76, 82, 101, 105, 107, 116, 118, 127, 128, 129, 130, 131, 135, 136, 137, 138, 140, 142, 146, 157, 165, 166, 167, 177, 178, 180, 182, 192, 193, 195, 196], "csv": [0, 2, 3, 9, 21, 26, 44], "suppli": [0, 10, 21], "you": [0, 1, 2, 5, 6, 8, 10, 11, 12, 13, 14, 15, 16, 17, 20, 22, 25, 26, 29, 32, 44, 47, 48, 49, 51, 55, 57, 61, 62, 66, 70, 72, 73, 82, 101, 124, 142, 146, 157, 165, 166, 178, 193], "polygon": [0, 1, 5, 8, 10, 17, 26], "io": [0, 13, 20, 26], "It": [0, 4, 5, 6, 7, 8, 13, 14, 15, 17, 19, 22, 23, 25, 26, 41, 43, 44, 74, 77, 146, 157], "i": [0, 1, 2, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 26, 28, 29, 30, 32, 34, 35, 36, 37, 39, 40, 41, 42, 43, 44, 46, 47, 49, 51, 52, 55, 57, 58, 62, 63, 66, 67, 72, 73, 74, 75, 76, 77, 82, 83, 85, 86, 87, 88, 89, 92, 94, 95, 96, 97, 98, 102, 103, 106, 113, 114, 117, 125, 126, 127, 129, 130, 132, 133, 134, 135, 137, 138, 141, 146, 147, 149, 151, 153, 157, 158, 160, 162, 164, 166, 167, 168, 170, 172, 173, 177, 178, 182, 183, 185, 187, 188, 192, 193, 196], "recommend": [0, 15, 17, 25], "option": [0, 2, 6, 8, 9, 12, 14, 16, 17, 19, 20, 22, 26, 32, 36, 39, 41, 43, 44, 47, 72, 74, 125, 126, 127, 128, 129, 131, 132, 133, 134, 135, 136, 137, 139, 140, 141, 146, 152, 157, 163], "crypto": [0, 1, 5, 7, 11, 17, 19, 20, 23, 26, 49, 51, 55, 57, 72, 74, 106, 117, 146, 152, 153, 157, 163, 164, 167, 175, 182, 190], "forex": [0, 2, 5, 6, 8, 12, 17, 19, 26, 44, 73, 74, 146, 152, 153, 157, 163, 164], "an": [0, 1, 2, 5, 6, 7, 8, 12, 13, 14, 15, 16, 17, 19, 22, 23, 26, 34, 35, 36, 39, 40, 41, 43, 44, 52, 58, 72, 74, 75, 81, 102, 103, 105, 113, 114, 116, 126, 127, 131, 132, 134, 135, 140, 141, 144, 146, 147, 148, 152, 155, 157, 158, 159, 163, 165, 178, 193, 196], "advanc": [0, 2, 5, 25, 26, 146, 157], "featur": [0, 2, 6, 8, 26], "allow": [0, 2, 4, 5, 6, 8, 14, 17, 20, 22, 25, 26, 81, 146, 157, 165], "ani": [0, 1, 2, 5, 6, 7, 8, 10, 13, 14, 15, 17, 21, 22, 25, 41, 43, 62, 66, 72, 73, 105, 116, 145, 156, 165], "type": [0, 1, 2, 5, 12, 14, 18, 19, 20, 21, 23, 25, 26, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 42, 43, 44, 46, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 64, 65, 68, 69, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 125, 126, 127, 129, 130, 131, 132, 133, 134, 135, 137, 138, 139, 140, 141, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194], "have": [0, 1, 2, 5, 6, 8, 10, 14, 16, 17, 20, 22, 23, 25, 26, 28, 43, 47, 49, 51, 55, 57, 72, 78], "format": [0, 5, 19, 21, 44, 76, 125, 126, 130, 132, 133, 134, 138, 141], "requir": [0, 1, 2, 10, 13, 14, 15, 17, 19, 22, 74, 75, 146, 153, 157, 164], "more": [0, 2, 3, 11, 13, 14, 16, 17, 18, 20, 25, 26, 43, 44, 47, 70, 72, 101, 124, 128, 136, 142], "work": [0, 2, 5, 11, 15, 17, 25, 26, 72, 73, 77, 166], "setup": [0, 2, 11, 26], "most": [0, 5, 7, 14, 17, 20, 25, 41, 72, 78, 128, 136], "user": [0, 2, 5, 10, 14, 17, 21, 25, 27, 41, 45, 46, 144, 146, 155, 157, 196], "when": [0, 1, 2, 5, 6, 8, 13, 14, 17, 19, 20, 22, 25, 26, 27, 30, 32, 33, 34, 35, 36, 37, 38, 39, 40, 62, 63, 66, 67, 82, 146, 157, 167, 172, 182, 187, 196], "run": [0, 5, 6, 8, 10, 11, 12, 14, 17, 21, 26, 30, 32, 33, 34, 37, 44, 46, 81, 102, 103, 113, 114, 143, 145, 154, 156, 170, 185], "sever": [0, 2, 10, 11, 45, 165], "import": [0, 1, 2, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16, 17, 19, 20, 26, 41, 42, 44, 45, 63, 67, 73, 80, 146, 152, 153, 157, 163, 164, 165], "ar": [0, 1, 2, 3, 5, 7, 8, 10, 11, 12, 13, 14, 15, 17, 18, 19, 20, 21, 22, 23, 25, 26, 38, 41, 44, 45, 47, 48, 53, 59, 61, 62, 63, 66, 67, 70, 73, 78, 81, 82, 101, 106, 117, 124, 125, 126, 128, 133, 134, 136, 142, 143, 146, 147, 149, 151, 153, 154, 157, 158, 160, 162, 164, 165, 167, 182, 196], "each": [0, 1, 2, 3, 5, 7, 9, 13, 14, 20, 22, 26, 30, 32, 40, 41, 44, 45, 47, 53, 59, 72, 80, 126, 134, 149, 151, 160, 162, 196], "prefix": [0, 105, 116], "strategi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 15, 22, 23, 24, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 46, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196], "name": [0, 1, 5, 10, 14, 17, 19, 21, 25, 26, 32, 44, 46, 62, 63, 66, 67, 74, 105, 116, 165, 196], "date": [0, 1, 2, 5, 6, 8, 10, 19, 21, 26, 32, 44, 74, 76, 82, 125, 126, 127, 128, 129, 130, 132, 133, 134, 135, 136, 137, 138, 139, 141, 146, 157], "These": [0, 1, 2, 3, 4, 7, 10, 32, 45, 54, 60, 82], "provid": [0, 2, 4, 5, 6, 8, 9, 17, 20, 21, 44, 74, 75, 131, 140, 144, 145, 155, 156], "detail": [0, 2, 3, 4, 9, 14, 17, 19, 72, 148, 159], "insight": [0, 2], "perform": [0, 2, 3, 7, 17, 26, 41], "behavior": [0, 2], "how": [0, 3, 11, 12, 13, 17, 25, 26, 45, 72, 81, 166], "To": [0, 6, 8, 10, 13, 14, 16, 17, 22, 25, 26, 72], "instal": [0, 5, 10, 13, 15, 17], "choos": [0, 15, 26], "sourc": [0, 5, 8, 13, 20, 83, 89, 90, 91, 92, 98, 99, 100, 176, 179, 181, 191, 194], "tearsheet": [0, 1, 26, 46], "html": [0, 1, 3, 9, 20, 26], "trade": [0, 1, 4, 5, 10, 11, 13, 15, 17, 18, 19, 20, 21, 22, 27, 30, 31, 32, 33, 40, 41, 43, 44, 45, 52, 58, 73, 74, 76, 78, 81, 82, 83, 85, 86, 87, 88, 89, 92, 94, 95, 96, 97, 98, 106, 117, 126, 130, 134, 138, 146, 157, 171, 186, 196], "indic": [0, 1, 5, 13, 46, 52, 53, 58, 59, 62, 63, 64, 65, 66, 67, 68, 69, 72, 73, 153, 164], "conclus": [0, 26], "function": [0, 2, 3, 13, 17, 21, 26, 32, 38, 41, 47, 48, 82, 142], "run_backtest": [0, 1, 2, 5, 6, 8, 10, 25], "other": [0, 2, 6, 8, 10, 13, 14, 15, 17, 20, 22, 25, 26, 41, 62, 66, 77, 101, 146, 157, 167, 182, 196], "In": [0, 6, 8, 13, 17, 22, 43, 74, 75, 83, 85, 86, 87, 88, 89, 92, 94, 95, 96, 97, 98], "summari": [0, 6, 8, 26, 27], "thetadata": [0, 2, 26], "log": [0, 1, 2, 7, 10, 14, 15, 16, 17, 19, 26, 42, 101, 105, 116], "here": [1, 2, 5, 6, 8, 11, 12, 13, 14, 15, 16, 17, 18, 25, 26, 41, 165, 166], "descript": [1, 14, 17], "all": [1, 4, 5, 13, 17, 20, 21, 22, 25, 30, 33, 34, 43, 45, 46, 51, 53, 57, 59, 72, 73, 125, 127, 128, 129, 131, 133, 135, 136, 137, 140, 143, 145, 146, 149, 150, 151, 154, 156, 157, 160, 161, 162, 165, 196], "its": [1, 6, 8, 22, 42], "paramet": [1, 2, 6, 8, 12, 19, 20, 21, 22, 23, 25, 26, 28, 29, 32, 33, 34, 35, 36, 37, 38, 39, 42, 43, 44, 45, 46, 47, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 62, 63, 66, 67, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 84, 87, 88, 90, 91, 93, 96, 97, 99, 100, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 143, 144, 145, 146, 147, 150, 151, 152, 153, 154, 155, 156, 157, 158, 161, 162, 163, 164, 172, 187], "thi": [1, 2, 5, 6, 8, 9, 12, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 25, 26, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 42, 43, 44, 45, 46, 49, 51, 55, 57, 62, 63, 66, 67, 72, 73, 74, 75, 77, 81, 83, 85, 86, 87, 88, 89, 92, 94, 95, 96, 97, 98, 107, 118, 146, 153, 157, 164, 167, 168, 177, 178, 182, 183, 192, 193], "true": [1, 5, 12, 13, 16, 17, 22, 24, 25, 26, 32, 43, 44, 46, 72, 73, 74, 105, 116, 151, 162, 168, 170, 183, 185], "kind": [1, 25], "do": [1, 5, 10, 13, 16, 20, 22, 25, 26, 38, 47, 101, 146, 157], "arg": [1, 21, 44], "minutes_before_clos": [1, 26, 29, 32, 40, 102, 113], "5": [1, 2, 5, 6, 8, 17, 26, 32, 44, 72, 73, 106, 107, 117, 118, 146, 157, 165, 172, 178, 187, 193, 196], "minutes_before_open": [1, 26, 30, 103, 114], "60": [1, 20, 173, 188], "sleeptim": [1, 2, 6, 8, 13, 25, 26, 32, 40, 107, 118], "1": [1, 2, 5, 6, 7, 8, 10, 12, 13, 15, 16, 17, 19, 20, 21, 22, 31, 44, 72, 73, 84, 90, 91, 93, 99, 100, 128, 136, 139, 146, 152, 153, 157, 163, 164, 178, 193, 196], "stats_fil": [1, 32], "none": [1, 12, 13, 17, 19, 20, 21, 22, 23, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 43, 44, 46, 49, 51, 52, 53, 54, 55, 57, 58, 59, 60, 62, 63, 66, 67, 71, 72, 73, 74, 75, 81, 84, 93, 102, 103, 105, 106, 107, 108, 113, 114, 116, 117, 118, 119, 128, 131, 136, 140, 143, 144, 145, 146, 148, 150, 151, 154, 155, 156, 157, 159, 161, 162], "risk_free_r": [1, 44, 128, 136], "logfil": [1, 46], "config": [1, 12, 13, 16, 17, 25, 43], "auto_adjust": [1, 44], "fals": [1, 12, 13, 16, 17, 22, 25, 26, 32, 43, 44, 46, 73, 74, 83, 92, 105, 116, 128, 136, 146, 151, 157, 162], "budget": [1, 5, 10, 17, 25, 32, 169, 184], "benchmark_asset": [1, 2, 6, 8, 25], "spy": [1, 2, 5, 6, 8, 19, 22, 25, 30, 31, 32, 36, 40, 44, 71, 72, 73, 74, 75, 79, 80, 109, 110, 111, 112, 120, 121, 122, 123, 125, 126, 127, 128, 129, 131, 133, 134, 135, 136, 137, 140, 144, 146, 150, 152, 153, 155, 157, 161, 163, 164, 165], "plot_file_html": 1, "trades_fil": 1, "settings_fil": 1, "pandas_data": [1, 5, 25, 43, 44], "quote_asset": [1, 13, 19, 23, 26, 152, 153, 163, 164], "usd": [1, 19, 21, 72, 73, 74, 146, 152, 153, 157, 163, 164], "starting_posit": 1, "show_plot": [1, 46], "tearsheet_fil": 1, "save_tearsheet": [1, 46], "show_tearsheet": [1, 46], "buy_trading_fe": [1, 25], "sell_trading_fe": [1, 25], "api_kei": [1, 12, 25, 26, 43, 44], "polygon_api_kei": [1, 2, 17], "polygon_has_paid_subscript": 1, "indicators_fil": 1, "show_ind": [1, 46], "save_logfil": 1, "kwarg": [1, 12, 19, 21, 43, 44, 153, 164], "datasource_class": 1, "class": [1, 2, 5, 6, 8, 10, 12, 13, 16, 17, 19, 20, 21, 22, 23, 24, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 165, 196], "The": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 12, 13, 14, 15, 17, 19, 20, 21, 22, 23, 27, 28, 34, 35, 36, 37, 38, 39, 41, 43, 44, 45, 49, 50, 51, 54, 55, 56, 57, 60, 62, 63, 64, 65, 66, 67, 68, 69, 72, 73, 75, 76, 77, 78, 79, 80, 81, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 104, 106, 108, 115, 117, 119, 125, 126, 127, 128, 129, 130, 131, 133, 134, 135, 136, 137, 138, 139, 140, 146, 147, 150, 151, 153, 157, 158, 161, 162, 164, 165, 167, 169, 171, 172, 173, 174, 175, 176, 177, 179, 181, 182, 184, 186, 187, 188, 189, 190, 191, 192, 194], "datasourc": [1, 8, 43, 44], "For": [1, 2, 3, 5, 7, 10, 13, 14, 17, 19, 20, 22, 26, 28, 44, 49, 51, 55, 57, 109, 110, 111, 112, 120, 121, 122, 123, 146, 152, 153, 157, 163, 164, 165], "exampl": [1, 2, 6, 8, 11, 12, 15, 19, 20, 25, 26, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 44, 52, 53, 58, 59, 62, 63, 66, 67, 71, 72, 73, 74, 75, 79, 80, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 102, 103, 105, 106, 107, 109, 110, 111, 112, 113, 114, 116, 117, 118, 120, 121, 122, 123, 125, 126, 127, 128, 129, 131, 132, 133, 134, 135, 136, 137, 139, 140, 141, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 196], "want": [1, 2, 5, 8, 10, 12, 13, 16, 17, 25, 26, 41, 44, 62, 66], "financ": [1, 2, 10, 26], "would": [1, 2, 5, 16, 19, 25, 26, 44, 51, 57, 146, 157, 178, 193], "pass": [1, 2, 5, 8, 10, 18, 22, 28, 36, 40, 41, 45, 102, 103, 113, 114, 128, 136, 146, 157], "yahoodatabacktest": [1, 10, 25, 26, 32], "backtesting_start": [1, 2, 5, 6, 8, 10, 25, 26, 32, 43], "datetim": [1, 2, 5, 6, 8, 10, 13, 19, 20, 21, 25, 26, 32, 43, 44, 47, 62, 63, 66, 67, 72, 76, 78, 81, 83, 84, 90, 91, 92, 93, 99, 100, 127, 130, 132, 135, 138, 139, 141, 146, 157, 171, 186], "start": [1, 2, 5, 6, 7, 8, 10, 11, 13, 17, 20, 21, 30, 32, 44, 72, 73, 78, 81, 102, 113, 173, 188], "period": [1, 2, 5, 7, 13, 21, 81, 196], "backtesting_end": [1, 2, 5, 6, 8, 10, 25, 26, 32], "end": [1, 2, 6, 7, 8, 10, 14, 20, 21, 26, 42], "int": [1, 12, 19, 20, 21, 22, 36, 39, 44, 62, 63, 66, 67, 72, 73, 81, 84, 85, 86, 87, 88, 89, 93, 94, 95, 96, 97, 98, 102, 103, 113, 114, 146, 147, 157, 158, 172, 173, 178, 187, 188, 193], "number": [1, 12, 15, 16, 17, 21, 22, 29, 32, 44, 72, 73, 84, 87, 88, 93, 96, 97, 146, 157, 172, 173, 178, 187, 188, 193], "minut": [1, 5, 13, 17, 20, 21, 25, 26, 29, 30, 32, 40, 43, 44, 72, 73, 84, 86, 88, 93, 95, 97, 102, 103, 113, 114, 172, 173, 178, 187, 188, 193], "befor": [1, 2, 5, 7, 10, 13, 14, 15, 17, 20, 22, 25, 26, 29, 30, 31, 32, 40, 41, 42, 44, 72, 73, 102, 103, 113, 114, 151, 162, 172, 173, 187, 188, 196], "close": [1, 5, 12, 13, 20, 21, 22, 28, 29, 32, 33, 40, 43, 51, 57, 72, 74, 75, 78, 81, 102, 103, 113, 114, 151, 162, 172, 187], "method": [1, 6, 8, 15, 19, 20, 22, 23, 26, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 70, 101, 124, 125, 127, 129, 131, 133, 135, 137, 140, 165, 168, 172, 173, 178, 183, 187, 188, 193, 196], "call": [1, 5, 6, 8, 19, 20, 22, 28, 32, 34, 35, 36, 38, 39, 40, 41, 42, 44, 72, 74, 75, 125, 126, 128, 133, 134, 136, 152, 163], "open": [1, 2, 5, 12, 17, 20, 21, 22, 25, 29, 30, 31, 40, 43, 63, 67, 72, 78, 81, 102, 103, 113, 114, 143, 144, 145, 149, 151, 154, 155, 156, 160, 162, 173, 188], "second": [1, 12, 22, 32, 40, 43, 73, 81, 101, 107, 118, 178, 193], "sleep": [1, 2, 26, 40, 47, 101, 102, 113, 178, 193], "between": [1, 2, 13, 20, 21, 26, 32, 72, 178, 193], "iter": [1, 2, 6, 8, 13, 21, 32, 40, 41, 168, 171, 183, 186, 196], "str": [1, 19, 20, 21, 22, 23, 44, 52, 58, 62, 63, 66, 67, 72, 73, 74, 75, 76, 84, 93, 105, 106, 116, 117, 125, 126, 127, 129, 130, 132, 133, 134, 135, 137, 138, 141, 146, 153, 157, 164, 174, 178, 179, 189, 193, 194], "file": [1, 4, 5, 7, 14, 15, 17, 25, 26, 101, 105, 116, 165, 196], "write": [1, 2, 6, 8], "stat": [1, 28, 42], "float": [1, 5, 19, 20, 22, 23, 36, 39, 43, 44, 49, 51, 55, 57, 62, 63, 66, 67, 74, 75, 79, 80, 102, 103, 107, 113, 114, 118, 128, 131, 136, 140, 146, 147, 153, 157, 158, 164, 167, 169, 175, 182, 184, 190], "risk": [1, 7, 14, 25, 128, 136], "free": [1, 2, 6, 8, 17, 23, 26, 128, 136], "rate": [1, 6, 8, 20, 128, 136], "dict": [1, 21, 38, 42, 44, 46, 50, 54, 56, 60, 77, 104, 108, 115, 119, 146, 157], "set": [1, 2, 6, 8, 11, 14, 15, 16, 17, 19, 20, 21, 22, 25, 26, 29, 32, 43, 44, 54, 60, 72, 73, 78, 106, 117, 125, 133, 146, 157, 165, 166, 172, 173, 178, 187, 188, 193, 196], "up": [1, 2, 5, 6, 11, 14, 15, 17, 19, 25, 26, 63, 67, 196], "broker": [1, 5, 12, 16, 19, 20, 22, 23, 24, 25, 26, 32, 35, 36, 37, 39, 45, 72, 73, 74, 77, 81, 109, 110, 111, 112, 120, 121, 122, 123, 128, 136, 146, 152, 153, 157, 163, 164, 167, 182], "live": [1, 2, 12, 14, 15, 17, 20, 25, 43, 44, 82, 83, 85, 86, 87, 88, 89, 92, 94, 95, 96, 97, 98, 106, 117], "bool": [1, 22, 43, 44, 46, 72, 73, 74, 105, 116, 128, 136, 153, 164, 168, 170, 183, 185], "whether": [1, 17, 22, 44, 46, 72, 82, 128, 136, 146, 157], "automat": [1, 6, 8, 22, 146, 147, 157, 158, 196], "adjust": [1, 7, 14, 20, 21, 44], "initi": [1, 2, 6, 8, 13, 15, 25, 26, 27, 41, 106, 117, 165, 169, 172, 173, 178, 184, 187, 188, 193], "asset": [1, 2, 5, 9, 12, 13, 17, 18, 20, 21, 22, 23, 26, 33, 34, 35, 36, 37, 39, 40, 43, 44, 49, 51, 52, 53, 55, 57, 58, 59, 62, 66, 71, 72, 73, 74, 75, 77, 78, 79, 80, 81, 125, 126, 127, 128, 129, 131, 133, 134, 135, 136, 137, 140, 146, 147, 152, 153, 157, 158, 163, 164, 167, 177, 182, 192], "benchmark": [1, 2, 7], "compar": [1, 7, 14, 17], "If": [1, 5, 6, 8, 12, 13, 14, 16, 17, 20, 21, 25, 26, 30, 32, 36, 40, 44, 72, 73, 74, 81, 102, 103, 105, 113, 114, 116, 131, 140, 143, 146, 151, 154, 157, 162], "string": [1, 17, 19, 20, 21, 22, 44, 72, 73, 105, 116, 132, 141, 146, 157, 178, 193, 196], "convert": [1, 19, 20, 22, 26, 43, 44, 132, 141, 146, 157], "object": [1, 5, 10, 12, 18, 19, 20, 21, 22, 23, 24, 35, 36, 37, 39, 43, 44, 46, 52, 53, 58, 59, 71, 72, 73, 74, 75, 77, 78, 79, 80, 81, 109, 110, 111, 112, 120, 121, 122, 123, 126, 131, 134, 140, 144, 145, 146, 147, 148, 149, 152, 153, 155, 156, 157, 158, 159, 160, 163, 164, 176, 181, 191, 196], "plot": [1, 10, 46, 63, 67], "list": [1, 2, 13, 18, 19, 20, 23, 25, 31, 43, 44, 47, 48, 53, 59, 61, 70, 73, 75, 80, 82, 84, 93, 101, 106, 111, 112, 117, 122, 123, 124, 127, 129, 131, 135, 137, 140, 142, 145, 149, 153, 156, 160, 164, 166], "A": [1, 5, 7, 10, 12, 14, 22, 26, 44, 46, 52, 53, 58, 59, 77, 84, 93, 146, 153, 157, 164, 196], "pandasdatabacktest": [1, 5, 25], "contain": [1, 3, 20, 21, 22, 40, 42, 78, 152, 153, 163, 164], "cryptocurr": [1, 2, 6, 8, 13, 17, 20, 72, 73, 74, 75, 146, 157], "get": [1, 2, 5, 6, 8, 10, 11, 12, 13, 14, 17, 18, 20, 21, 22, 30, 31, 33, 38, 43, 44, 45, 47, 48, 49, 50, 51, 52, 53, 55, 56, 57, 58, 59, 61, 70, 72, 73, 75, 77, 79, 80, 82, 104, 115, 124, 147, 148, 149, 150, 158, 159, 160, 161, 165, 166, 167, 172, 173, 175, 178, 182, 187, 188, 190, 193, 196], "valuat": 1, "measur": [1, 7], "overal": [1, 7], "porfolio": 1, "valu": [1, 3, 5, 9, 12, 13, 14, 17, 19, 20, 21, 23, 28, 43, 45, 46, 48, 49, 51, 55, 57, 61, 62, 63, 66, 67, 72, 73, 128, 136, 153, 164, 175, 190, 196], "usual": [1, 47, 178, 193], "usdt": [1, 19, 49, 51, 55, 57, 72, 74, 146, 157], "usdc": 1, "dictionari": [1, 5, 8, 16, 36, 42, 43, 44, 46, 73, 77, 125, 126, 127, 128, 129, 131, 133, 134, 135, 136, 137, 140, 146, 157, 165], "posit": [1, 13, 18, 22, 26, 36, 39, 43, 45, 51, 52, 53, 57, 58, 59, 147, 150, 151, 158, 161, 162, 167, 175, 182, 190], "100": [1, 5, 12, 13, 16, 19, 20, 25, 26, 32, 42, 44, 72, 73, 109, 110, 111, 112, 120, 121, 122, 123, 125, 126, 128, 133, 134, 136, 144, 145, 146, 152, 153, 155, 156, 157, 163, 164], "200": [1, 12, 36, 44, 73, 111, 112, 122, 123, 153, 164], "aapl": [1, 2, 5, 6, 8, 10, 12, 16, 19, 20, 23, 26, 32, 35, 36, 37, 39, 72, 73, 145, 156], "show": [1, 7, 52, 53, 58, 59, 147, 148, 149, 158, 159, 160], "save": [1, 5, 10, 17, 25, 46, 196], "must": [1, 2, 5, 6, 8, 10, 12, 16, 21, 22, 41, 72, 73, 131, 140, 146, 157], "within": [1, 17, 18, 107, 118, 143, 154], "tradingfe": [1, 24, 25, 26], "appli": [1, 17, 44], "bui": [1, 2, 5, 6, 7, 8, 9, 10, 12, 13, 16, 19, 22, 25, 26, 36, 40, 45, 49, 55, 105, 109, 110, 111, 112, 116, 120, 121, 122, 123, 144, 145, 146, 152, 153, 155, 156, 157, 163, 164, 167, 182], "order": [1, 2, 5, 6, 8, 9, 10, 12, 13, 18, 19, 23, 25, 26, 29, 30, 35, 36, 37, 39, 40, 41, 43, 47, 105, 109, 110, 111, 112, 116, 120, 121, 122, 123, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 167, 182], "dure": [1, 2, 4, 7, 17, 45, 73], "sell": [1, 7, 9, 22, 23, 29, 33, 34, 36, 40, 43, 45, 146, 150, 151, 152, 153, 157, 161, 162, 163, 164], "api": [1, 2, 6, 8, 10, 12, 13, 14, 15, 16, 17, 20, 26, 128, 136], "kei": [1, 2, 3, 5, 6, 8, 12, 14, 15, 16, 17, 21, 26, 46, 128, 136, 165, 196], "onli": [1, 5, 10, 13, 14, 15, 17, 19, 20, 21, 22, 23, 25, 26, 32, 41, 43, 44, 46, 72, 73, 74, 77, 81, 128, 136, 143, 153, 154, 164, 172, 187], "polygondatabacktest": [1, 2, 6, 8], "deprec": [1, 15, 146, 157, 180, 195], "pleas": [1, 2, 5, 6, 8, 10, 13, 15, 22, 72, 180, 195], "instead": [1, 5, 17, 20, 43, 107, 118, 128, 136, 180, 195], "paid": [1, 2, 167, 182], "subscript": [1, 11, 26], "default": [1, 5, 10, 17, 19, 20, 21, 32, 34, 44, 45, 54, 60, 62, 63, 66, 67, 72, 73, 74, 76, 91, 100, 106, 117, 125, 127, 128, 129, 130, 133, 135, 136, 137, 138, 146, 151, 153, 157, 162, 164, 172, 173, 176, 178, 179, 181, 187, 188, 191, 193, 194, 196], "return": [1, 7, 12, 19, 20, 21, 22, 23, 25, 26, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 42, 43, 44, 46, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 64, 65, 68, 69, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194], "from": [1, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16, 17, 19, 20, 21, 23, 25, 26, 41, 42, 44, 45, 72, 73, 76, 80, 125, 126, 127, 128, 129, 130, 131, 133, 134, 135, 136, 137, 138, 140, 146, 152, 153, 157, 163, 164, 196], "simpl": [1, 5, 6, 8, 10, 16, 22, 26, 146, 157], "first": [1, 5, 6, 8, 10, 13, 16, 17, 20, 21, 22, 25, 26, 30, 32, 73, 168, 178, 183, 193, 196], "mystrategi": [1, 2, 5, 6, 8, 10, 13, 16, 25, 26, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 45, 165], "def": [1, 2, 5, 6, 8, 10, 12, 13, 16, 25, 26, 27, 41, 106, 117, 165, 172, 173, 178, 187, 188, 193, 196], "on_trading_iter": [1, 2, 5, 6, 8, 10, 13, 16, 25, 26, 27, 28, 41, 42, 47, 102, 103, 113, 114, 165, 168, 172, 178, 183, 187, 193, 196], "self": [1, 2, 5, 6, 8, 10, 12, 13, 14, 16, 17, 19, 20, 22, 25, 26, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 47, 165], "first_iter": [1, 2, 5, 6, 8, 10, 26], "create_ord": [1, 2, 5, 6, 8, 10, 12, 13, 19, 22, 25, 26, 40, 47, 109, 110, 111, 112, 120, 121, 122, 123, 144, 145, 152, 153, 155, 156, 163, 164], "quantiti": [1, 2, 6, 7, 8, 10, 12, 13, 22, 23, 25, 26, 36, 39, 52, 53, 58, 59, 146, 157], "side": [1, 2, 6, 8, 12, 22, 25, 36, 43, 146, 157], "submit_ord": [1, 2, 5, 6, 8, 10, 13, 19, 22, 25, 26, 40, 43, 47, 109, 110, 111, 112, 120, 121, 122, 123, 144, 145, 146, 150, 155, 156, 157, 161], "creat": [1, 2, 5, 6, 7, 8, 10, 13, 14, 16, 17, 19, 21, 22, 36, 72, 125, 127, 129, 131, 133, 135, 137, 140, 142, 144, 145, 146, 155, 156, 157], "2018": [1, 20], "31": [1, 5, 10, 25, 26, 44, 125, 126, 133, 134], "symbol": [1, 2, 5, 6, 8, 12, 13, 19, 20, 21, 22, 23, 25, 36, 44, 63, 67, 72, 73, 74, 146, 152, 153, 157, 163, 164], "qqq": 1, "asset_typ": [1, 5, 13, 19, 20, 44, 72, 73, 74, 146, 147, 152, 153, 157, 158, 163, 164], "vital": 2, "step": [2, 5, 14], "valid": [2, 19, 21, 22, 44, 125, 126, 133, 134, 146, 157], "your": [2, 5, 6, 7, 8, 10, 11, 12, 14, 15, 18, 20, 22, 40, 41, 47, 48, 49, 51, 55, 57, 61, 70, 82, 101, 146, 157, 165, 166, 178, 193, 196], "histor": [2, 6, 8, 12, 13, 20, 26, 43, 44, 70, 72, 73], "With": [2, 6, 8, 26], "can": [2, 5, 6, 8, 10, 11, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 25, 26, 29, 32, 41, 44, 45, 48, 49, 55, 61, 62, 63, 66, 67, 70, 72, 73, 82, 101, 124, 128, 136, 142, 146, 157, 165, 166, 178, 193], "across": [2, 17], "variou": [2, 6, 7, 8, 14], "even": [2, 6, 8, 30, 153, 164], "own": [2, 5, 6, 8, 12, 13, 16, 17, 23, 25, 26, 150, 161], "custom": [2, 25, 32, 146, 157, 165], "guid": [2, 13, 16, 25, 26], "walk": [2, 17], "through": [2, 13, 14, 17], "explain": 2, "introduc": 2, "why": [2, 26], "see": [2, 13, 14, 15, 17, 19, 20, 25, 26, 44, 48, 61, 70, 82, 101, 124, 142], "past": [2, 22, 25], "help": [2, 3, 6, 8, 25], "identifi": [2, 13, 19, 22, 148, 159], "weak": 2, "strength": 2, "deploi": [2, 26], "them": [2, 11, 17, 20, 22, 25, 26, 47, 48, 61, 70, 82, 101, 124, 142, 145, 156], "market": [2, 11, 12, 13, 17, 22, 25, 26, 28, 29, 30, 31, 32, 40, 43, 74, 75, 102, 103, 106, 109, 110, 111, 112, 113, 114, 117, 120, 121, 122, 123, 146, 151, 152, 153, 157, 162, 163, 164, 172, 173, 175, 187, 188, 190], "begin": [2, 43], "make": [2, 4, 5, 6, 8, 17, 22, 25, 26, 74, 75], "sure": [2, 6, 8, 25, 26], "machin": 2, "follow": [2, 5, 6, 8, 13, 14, 15, 17, 19, 20, 22, 26, 27, 30, 41, 78, 165, 178, 193], "command": [2, 25, 26], "pip": [2, 5, 10, 13, 25, 26], "upgrad": [2, 5, 10, 25, 26], "latest": [2, 5, 10, 13, 17, 25, 26, 72], "version": [2, 5, 7, 10, 17, 25, 26], "onc": [2, 14, 15, 16, 17, 22, 25, 26, 32, 41, 146, 157, 196], "id": [2, 15, 17, 148, 159, 196], "like": [2, 5, 17, 21, 25, 26, 29, 30, 31, 32, 33, 43, 165], "visual": [2, 3, 7, 25], "studio": 2, "code": [2, 5, 6, 7, 8, 13, 14, 17, 25, 26, 28, 29, 30, 33, 34, 35, 36, 37, 38, 39, 62, 66, 102, 103, 113, 114, 165], "v": [2, 7, 19], "pycharm": 2, "quick": 2, "download": [2, 5, 6, 8, 25, 26], "offici": 2, "websit": [2, 7, 10, 13, 14, 16, 17], "http": [2, 6, 8, 12, 13, 14, 15, 16, 17, 20, 25, 26], "visualstudio": 2, "com": [2, 7, 15, 16, 17, 25, 26], "python": [2, 5, 25, 105, 116], "extens": 2, "go": [2, 5, 12, 15, 17, 25, 26], "search": [2, 26], "new": [2, 5, 7, 14, 17, 19, 20, 22, 26, 36, 37, 43, 54, 60, 146, 157, 167, 182], "project": [2, 6, 8, 17], "folder": [2, 5, 10, 13, 17], "termin": [2, 13, 25, 26], "re": [2, 11, 14, 17, 26, 82], "readi": [2, 14, 17, 41, 146, 157], "support": [2, 6, 7, 8, 13, 14, 17, 21, 25, 26, 44, 63, 67, 128, 136, 146, 157], "suit": [2, 26], "differ": [2, 3, 5, 7, 11, 13, 14, 17, 20, 25, 26, 45], "need": [2, 6, 8, 13, 14, 16, 17, 25, 27, 41, 43, 72, 73, 77], "": [2, 3, 6, 7, 8, 13, 14, 16, 17, 18, 21, 25, 26, 38, 41, 46, 52, 58, 82, 83, 85, 86, 87, 88, 89, 90, 91, 92, 94, 95, 96, 97, 98, 99, 100, 128, 136, 147, 158, 165, 178, 193, 196], "overview": 2, "avail": [2, 9, 10, 17, 20, 21, 23, 26, 47, 72, 73, 106, 117, 128, 136, 153, 164, 167, 182], "etf": [2, 10], "suitabl": [2, 17], "longer": 2, "term": 2, "ideal": [2, 17], "intradai": 2, "section": [2, 14, 17, 25, 47], "2": [2, 6, 17, 22, 30, 32, 62, 66, 72, 73, 111, 112, 122, 123, 153, 164, 178, 193], "offer": [2, 7, 14, 17, 26], "two": [2, 3, 11, 19, 22, 25, 26, 73, 145, 156], "year": [2, 6, 8], "plan": [2, 14, 17], "faster": [2, 6, 8], "retriev": [2, 19, 21, 74, 75, 78, 196], "coupon": [2, 6, 8], "lumi10": [2, 6], "10": [2, 6, 8, 13, 17, 19, 20, 32, 40, 44, 63, 67, 82, 127, 135, 152, 153, 163, 164, 165, 172, 173, 178, 187, 188, 193, 196], "off": [2, 6, 8], "3": [2, 12, 17, 146, 157], "design": [2, 17, 25, 27, 41], "look": [2, 5, 15, 26], "price": [2, 6, 8, 9, 13, 16, 17, 19, 20, 21, 22, 23, 31, 36, 39, 43, 44, 45, 47, 62, 63, 66, 67, 70, 72, 73, 74, 75, 78, 128, 136, 146, 152, 153, 157, 163, 164], "secur": [2, 5, 10, 14, 19, 22], "account": [2, 6, 8, 11, 12, 13, 15, 16, 17, 26, 43, 47, 49, 51, 53, 55, 57, 59, 61, 150, 161, 167, 182], "usernam": [2, 8, 11, 17, 26], "password": [2, 8, 13, 14, 17, 196], "net": [2, 8, 51, 57], "lumi": [2, 7, 8], "4": [2, 17, 26, 147, 158], "full": [2, 6, 8, 11, 14, 26, 125, 133], "flexibl": [2, 5, 6, 8, 25], "dataset": 2, "e": [2, 9, 17, 19, 20, 21, 22, 23, 25, 72, 73, 74, 146, 147, 152, 157, 158, 163], "g": [2, 9, 17, 20, 21, 22, 23, 25, 72, 73, 146, 157], "databas": [2, 5, 17, 26], "export": 2, "manual": [2, 14, 17], "configur": [2, 11, 15, 26], "ve": [2, 13, 16, 26], "select": [2, 14, 17], "built": [2, 5, 26], "addit": [2, 14, 17, 19, 22, 146, 157], "specif": [2, 7, 13, 14, 17, 19, 22, 41, 44, 62, 66, 109, 120, 125, 126, 133, 134, 146, 157, 166], "replac": [2, 6, 8, 13], "your_polygon_api_kei": [2, 6], "actual": [2, 13, 22, 41, 43, 175, 190], "1d": [2, 6, 8, 20, 21, 40, 44], "get_last_pric": [2, 6, 8, 10, 13, 16, 20, 21, 26, 44, 47], "qty": [2, 6, 8], "portfolio_valu": [2, 6, 8, 10, 13, 26, 28, 42, 177, 192], "__name__": [2, 6, 8, 13], "__main__": [2, 6, 8, 13], "2023": [2, 6, 8, 44, 125, 126, 133, 134, 196], "result": [2, 5, 6, 8, 10, 25, 26, 42], "inform": [2, 3, 5, 9, 10, 13, 17, 43, 44, 77, 78, 126, 131, 134, 140, 146, 157, 166], "about": [2, 9, 11, 26, 166], "refer": [2, 3, 17, 26, 27], "crucial": [2, 17, 25], "understand": [2, 4, 25], "aspect": 2, "execut": [2, 9, 17, 22, 23, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 45, 102, 103, 107, 109, 111, 113, 114, 118, 120, 122, 143, 152, 154, 163, 172, 173, 178, 187, 188, 193], "statist": 2, "analysi": [2, 4, 13, 46], "tear": 2, "sheet": 2, "includ": [2, 3, 7, 9, 10, 13, 17, 19, 20, 26, 32, 41, 44, 54, 60, 72, 124, 146, 148, 157, 159, 175, 190], "equiti": [2, 14, 51, 57], "curv": 2, "metric": [2, 7], "sharp": [2, 7], "ratio": [2, 7], "drawdown": [2, 7], "comparison": 2, "everi": [2, 25, 32, 40, 43, 47, 81, 196], "which": [2, 6, 7, 8, 9, 13, 14, 17, 20, 21, 22, 32, 41, 49, 51, 55, 57, 74, 75, 76, 77, 128, 130, 136, 138, 178, 193], "wa": [2, 12, 13, 27, 30, 33, 34, 41, 43, 72, 167, 182], "timestamp": [2, 12, 20, 44, 62, 63, 66, 67, 85, 86, 87, 88, 89, 94, 95, 96, 97, 98, 196], "essenti": [2, 17], "review": [2, 14], "potenti": [2, 25, 26, 147, 158], "issu": 2, "optim": [2, 7, 17, 26], "interpret": [2, 178, 193], "technic": [2, 13, 41], "move": [2, 7, 22, 26], "averag": [2, 7, 22, 23], "rsi": [2, 13], "respond": 2, "condit": [2, 22, 40], "base": [2, 7, 12, 13, 19, 20, 21, 22, 23, 24, 26, 40, 43, 44, 46, 72, 73, 74, 146, 157], "power": [2, 6, 8, 17, 25, 26], "framework": [2, 41], "multipl": [2, 17, 143, 154, 196], "By": [2, 17, 26, 34, 128, 136, 172, 173, 176, 178, 179, 181, 187, 188, 191, 193, 194], "quickli": [2, 14, 17, 25], "environ": [2, 14, 26, 196], "confid": 2, "further": [2, 17], "individu": [2, 26], "abov": [2, 15, 19, 20, 32], "uniqu": 3, "becaus": [3, 5, 6, 8, 10, 17, 43], "thei": [3, 5, 11, 17, 20, 26, 41, 81, 128, 136], "add_mark": [3, 26, 47], "add": [3, 5, 13, 14, 17, 19, 22, 25, 32, 43, 46, 62, 63, 66, 67], "marker": [3, 46, 63, 65, 67, 69], "add_lin": [3, 26, 47], "line": [3, 26, 46, 62, 63, 64, 66, 67, 68], "influenc": [3, 27, 41], "decis": [3, 4], "point": [3, 7, 9, 15, 22, 44, 62, 66, 72, 73, 147, 158], "time": [3, 5, 6, 8, 9, 12, 13, 14, 17, 20, 21, 25, 32, 41, 43, 44, 45, 71, 72, 73, 78, 81, 82, 87, 88, 96, 97, 102, 103, 107, 113, 114, 118, 128, 136, 146, 157, 168, 178, 183, 193], "event": [4, 26, 33, 34, 35, 36, 37, 38, 39, 43, 63, 67], "action": [4, 17], "taken": 4, "backtest": [4, 5, 7, 10, 17, 21, 22, 24, 32, 44, 46, 63, 67, 72, 73, 74, 75, 82, 83, 85, 86, 87, 88, 89, 92, 94, 95, 96, 97, 98, 106, 117, 170, 185], "debug": [4, 46, 196], "process": [4, 6, 8, 14, 17, 25, 37, 39, 152, 153, 163, 164, 196], "collect": [4, 5], "comprehens": [4, 25], "view": [4, 17], "refin": [4, 25], "note": [5, 10, 13, 14, 15, 17, 20, 22, 43, 77, 146, 157], "ensur": [5, 10, 14, 17, 21, 22, 25, 26, 146, 157], "proceed": [5, 10, 14, 25], "been": [5, 10, 15, 22, 23, 35, 36, 37, 39, 43, 74, 78], "some": [5, 10, 14, 25, 26, 44, 45, 74, 146, 157], "major": [5, 10], "chang": [5, 10, 12, 14, 16, 17, 20, 32], "modul": [5, 10, 26], "situat": 5, "much": [5, 6, 8, 12], "easier": [5, 17], "intend": [5, 17], "who": [5, 17, 52, 58, 147, 158], "after": [5, 6, 8, 13, 14, 17, 21, 26, 28, 30, 31, 40, 42, 44, 63, 67, 72, 76, 130, 138, 139, 196], "librari": [5, 7, 13, 16, 17, 25], "strictli": [5, 21], "parquet": 5, "etc": [5, 16, 20, 21, 40, 45, 48, 61, 63, 67, 77, 148, 159], "wish": [5, 26], "accept": [5, 19], "one": [5, 7, 13, 14, 17, 22, 25, 26, 41, 43, 47, 72, 109, 120, 146, 153, 157, 164], "frame": 5, "raw": [5, 20, 22], "addition": [5, 10, 20], "possibl": [5, 14, 32, 44, 62, 63, 66, 67, 153, 164], "contract": [5, 19, 20, 22, 32, 43], "also": [5, 10, 15, 17, 22, 25, 26, 32, 43, 72, 146, 151, 157, 162, 166], "difficult": 5, "backtestingbrok": [5, 6, 8, 10, 43], "next": [5, 6, 8, 12, 17, 26, 40, 76, 130, 138, 139], "normal": [5, 16, 131, 140], "someth": [5, 13], "0000": 5, "hr": [5, 21], "2359": [5, 21], "last": [5, 13, 20, 21, 22, 28, 30, 31, 42, 43, 44, 72, 73, 74, 75, 85, 86, 94, 95, 171, 186, 196], "consid": [5, 20, 177, 192], "zone": [5, 20], "unless": 5, "america": [5, 20, 44, 176, 179, 181, 191, 194], "york": [5, 17], "aka": 5, "est": 5, "receiv": [5, 14, 17], "index": [5, 19, 20, 21, 26, 78], "datetime64": [5, 21], "column": [5, 20, 21, 78, 196], "high": [5, 20, 21, 25, 26, 43, 78, 81], "low": [5, 17, 20, 21, 43, 78, 81], "volum": [5, 20, 21, 78, 81], "should": [5, 10, 14, 16, 20, 22, 27, 40, 43, 45, 74, 107, 118, 128, 136], "2020": [5, 10, 25, 26, 72, 90, 91, 99, 100, 147, 152, 158, 163], "01": [5, 6, 8, 20, 25, 146, 147, 152, 157, 158, 163], "02": [5, 20], "09": 5, "00": [5, 44, 110, 121, 146, 152, 153, 157, 163, 164, 196], "3237": 5, "3234": 5, "75": 5, "3235": 5, "25": [5, 17], "16808": 5, "32": 5, "10439": 5, "33": 5, "50": [5, 22, 32, 146, 157, 178, 193], "3233": 5, "8203": 5, "04": [5, 44], "22": 5, "15": [5, 17, 20, 32, 44, 72, 73], "56": 5, "2800": 5, "2796": 5, "8272": 5, "57": 5, "2794": 5, "7440": 5, "58": 5, "2793": 5, "7569": 5, "yfinanc": [5, 44], "yf": [5, 44], "5d": 5, "interv": 5, "1m": [5, 21, 44], "to_csv": 5, "subsequ": [5, 6, 8], "ad": [5, 11, 13, 17, 19, 26, 72, 73], "One": [5, 17, 19, 22, 44, 146, 157], "load": [5, 18, 21, 63, 67, 196], "mai": [5, 13, 14, 17, 19, 22, 25, 72, 73, 81, 146, 157], "might": [5, 13, 14, 17], "entiti": [5, 13, 19, 20, 21, 22, 23, 24, 25, 26, 72, 73, 80, 146, 152, 153, 157, 163, 164], "assettyp": [5, 13, 19, 146, 152, 153, 157, 163, 164], "pd": [5, 20], "awar": [5, 20], "df": [5, 13, 20, 21, 30, 72, 73], "read_csv": 5, "third": 5, "we": [5, 6, 7, 8, 10, 11, 13, 17, 25, 26, 28, 47, 72, 146, 157], "least": [5, 41], "timestep": [5, 21, 43, 44, 72, 73, 84, 93], "either": [5, 19, 21, 22, 72, 73, 74, 75], "final": [5, 6, 8, 10, 14, 26], "trader": [5, 6, 8, 10, 12, 13, 14, 15, 16, 26, 33], "data_sourc": [5, 12, 43, 44, 72, 73], "datetime_start": [5, 43], "datetime_end": [5, 43], "strat": 5, "100000": 5, "add_strategi": [5, 12, 13, 14, 15, 16, 25, 26, 46], "run_al": [5, 13, 14, 15, 16, 25, 26, 46], "put": [5, 12, 16, 19, 25], "togeth": [5, 22, 25], "Then": [5, 13, 16, 72], "startegi": 5, "read": [5, 15, 25, 44], "same": [5, 14, 17, 22, 26, 73], "directori": [5, 14, 17], "script": 5, "pick": [5, 10, 17, 26], "rang": [5, 13, 17, 20, 21], "link": [6, 8, 14], "give": [6, 8, 13, 131, 140], "u": [6, 7, 8, 13, 14, 21, 26, 175, 190], "credit": [6, 8, 153, 164], "sale": [6, 8], "utm_sourc": 6, "affili": 6, "utm_campaign": 6, "robust": [6, 8], "fetch": [6, 8, 44, 126, 131, 134, 140], "simplifi": [6, 8], "simpli": [6, 8], "polygondatasourc": 6, "get_historical_pric": [6, 8, 13, 20, 26, 31, 44, 47, 73], "As": [6, 8, 17], "pai": [6, 8, 14], "mani": [6, 8, 13, 26, 32, 41, 81], "won": [6, 8], "t": [6, 8, 13, 14, 17, 26], "limit": [6, 8, 13, 14, 17, 22, 43, 72, 73, 81, 110, 121, 146, 152, 153, 157, 163, 164], "cach": [6, 8], "comput": [6, 8, 17, 25, 26], "so": [6, 8, 10, 13, 14, 17, 19, 22, 25, 26, 47, 82, 128, 136], "take": [6, 8, 17, 22, 25, 41, 44, 62, 63, 66, 67, 73, 74, 75, 125, 133], "bit": [6, 8], "obtain": [6, 8, 13, 44, 126, 127, 129, 131, 134, 135, 137, 140], "dashboard": [6, 8, 25], "necessari": [6, 8, 17, 43], "inherit": [6, 8, 45], "defin": [6, 7, 8, 13, 24, 27, 32, 41, 42, 43, 45, 165, 196], "hold": [6, 8, 20, 22, 23, 26, 36], "until": [6, 8, 12, 20, 102, 103, 113, 114, 146, 157], "determin": [6, 7, 8, 12, 22, 43, 106, 117, 146, 157, 166], "05": [6, 8, 146, 157, 196], "form": [6, 21, 81, 106, 117, 127, 129, 135, 137, 167, 182], "tool": [6, 8, 17, 26], "capabl": [6, 8], "easi": [6, 8, 14, 17, 25, 26], "integr": [6, 8], "versatil": [6, 8, 13, 17], "choic": [6, 8, 14, 17], "gener": [7, 10, 13, 16, 26, 151, 162], "quantstat": 7, "varieti": 7, "annual": [7, 25, 26], "yearli": 7, "total": [7, 20, 28, 51, 57, 147, 158, 175, 190], "romad": 7, "over": [7, 19, 20, 25, 26, 62, 63, 66, 67], "maximum": [7, 17], "sortino": 7, "variat": 7, "differenti": 7, "harm": 7, "volatil": [7, 22, 128, 136], "max": [7, 13], "observ": 7, "loss": [7, 22, 43, 62, 63, 66, 67, 146, 152, 153, 157, 163, 164], "peak": 7, "trough": 7, "portfolio": [7, 9, 13, 23, 28, 51, 57, 63, 67, 175, 190], "attain": [7, 146, 157], "longest": 7, "durat": [7, 32, 146, 153, 157, 164, 178, 193], "reach": [7, 25, 26, 43], "accompani": 7, "graph": [7, 62, 63, 66, 67], "cumul": 7, "scale": [7, 196], "better": [7, 22, 146, 157], "exponenti": 7, "growth": 7, "showcas": 7, "tailor": 7, "achiev": [7, 22, 25, 26], "goal": 7, "condor": [7, 17], "martingal": 7, "iron": 7, "delta": [7, 128, 136], "previou": [7, 79, 80], "dte": 7, "expir": [7, 14, 19, 22, 32, 44, 72, 74, 125, 126, 127, 128, 133, 134, 135, 136, 139, 146, 157], "bband": 7, "v2": 7, "bolling": [7, 62, 66], "band": [7, 62, 66], "interest": [7, 13, 128, 136], "implement": [7, 17, 26, 27, 41, 44, 46], "visit": [7, 16, 17, 25, 26], "our": [7, 13, 17, 25, 26, 28], "lumiwealth": [7, 15, 26], "access": [7, 14, 16, 17, 20, 25, 26, 165, 196], "invest": [7, 14, 26], "question": 7, "email": [7, 14], "www": [8, 16], "thetadatabacktest": 8, "altern": 8, "both": [8, 14, 22, 25, 30, 146, 157], "argument": [8, 128, 136], "thetadata_usernam": 8, "thetadata_password": 8, "were": [9, 26, 38], "place": [9, 13, 18, 146, 151, 157, 162], "along": 9, "involv": 9, "strike": [9, 19, 44, 72, 126, 128, 131, 134, 136, 140, 146, 157], "ticker": [9, 19, 20, 32, 44, 81], "cash": [9, 13, 22, 26, 28, 42, 43, 48, 49, 51, 55, 57, 61, 175, 177, 180, 190, 192, 195], "amount": [9, 13, 20, 22, 28, 44, 49, 51, 55, 57, 79, 80, 146, 157], "cannot": 10, "veri": [10, 17, 26], "easili": [10, 26, 32, 45], "modifi": [10, 25, 26], "anyth": 10, "There": [10, 11, 146, 157], "aapl_pric": [10, 26], "alloc": 10, "11": [10, 17, 19, 26], "12": [10, 17, 19, 25, 26, 74], "speak": [11, 41], "learn": [11, 17, 25, 26], "alpaca": [11, 20, 26, 72, 73], "document": [11, 13, 14, 17, 25, 26, 72], "interact": [11, 13, 20, 22, 26, 45, 72, 73, 74, 81], "factor": [11, 26], "authent": [11, 26], "2fa": [11, 26], "secondari": [11, 26], "paper": [11, 12, 15, 16, 17, 26, 44], "legaci": [11, 26], "ccxt": [11, 26], "tradier": [11, 26, 77, 153, 164], "max_work": [12, 43, 44, 73], "20": [12, 13, 22, 32, 43, 165], "chunk_siz": [12, 44, 73], "connect_stream": [12, 43], "connect": [12, 13, 14, 17, 105, 116], "tradeapi": 12, "rest": [12, 14, 17, 41], "get_timestamp": [12, 26, 44, 47], "current": [12, 13, 14, 17, 21, 36, 37, 42, 43, 44, 49, 51, 52, 55, 57, 58, 62, 63, 66, 67, 72, 73, 77, 78, 82, 83, 84, 85, 86, 87, 88, 89, 92, 93, 94, 95, 96, 97, 98, 128, 136, 143, 149, 153, 154, 160, 164, 167, 175, 178, 182, 190, 193, 196], "unix": 12, "represent": [12, 21, 22, 44, 72, 73], "is_market_open": [12, 43], "get_time_to_open": [12, 43], "remain": [12, 39, 43, 172, 187], "get_time_to_clos": [12, 43], "alpaca_config": [12, 25, 26], "your_api_kei": [12, 13], "secret": [12, 13, 14, 16, 25, 26], "api_secret": [12, 25, 26], "your_api_secret": 12, "endpoint": 12, "print": [12, 42, 196], "alpacastrategi": 12, "on_trading_inter": [12, 32], "order_typ": [12, 153, 164], "asset_type_map": 12, "us_equ": 12, "cancel_ord": [12, 26, 43, 47, 149, 160], "cancel": [12, 22, 30, 35, 43, 71, 109, 111, 120, 122, 142, 143, 144, 145, 146, 149, 151, 154, 155, 156, 157, 160, 162], "get_historical_account_valu": [12, 43], "1400": 12, "1600": 12, "7": [12, 13, 17, 26, 32, 106, 117], "0830": 12, "0930": 12, "600": 12, "sampl": [12, 26], "1612172730": 12, "000234": 12, "boolean": [12, 151, 153, 162, 164], "map_asset_typ": 12, "orderdata": 12, "to_request_field": 12, "cryoptocurr": 13, "popular": 13, "find": [13, 14, 15, 16, 17, 26, 44, 76, 127, 129, 130, 131, 135, 137, 138, 139, 140], "readthedoc": 13, "en": 13, "enabl": [13, 14, 15], "wide": [13, 17, 63, 67], "coinbas": [13, 26], "pro": 13, "binanc": [13, 26], "kraken": [13, 26, 146, 157], "kucoin": [13, 26], "constantli": [13, 26], "don": [13, 14, 17, 26], "let": 13, "know": [13, 18], "ll": [13, 14, 16, 26], "desir": [13, 14, 21, 81, 128, 136], "credenti": [13, 14, 15], "rememb": [13, 26], "under": [13, 14, 17, 25], "similar": [13, 17, 30], "alwai": [13, 30, 43, 106, 117, 167, 182], "24": [13, 17, 32, 106, 117], "set_market": [13, 26, 32, 47], "few": [13, 17, 26, 101], "common": [13, 14], "coinbase_config": 13, "exchange_id": 13, "apikei": 13, "your_secret_kei": 13, "sandbox": [13, 17], "kraken_config": 13, "margin": [13, 146, 157], "kucoin_config": 13, "your_passphras": 13, "NOT": 13, "your_secret": 13, "coinbasepro_config": 13, "coinbasepro": 13, "instanti": [13, 16, 26, 43], "chosen": [13, 16, 17], "correct": [13, 14, 16], "instanc": [13, 196], "strategy_executor": [13, 16], "complet": [13, 14, 15, 17, 22, 26, 74, 75], "demonstr": 13, "pandas_ta": 13, "error": [13, 17, 22, 34], "importantfunct": 13, "30": [13, 40, 72, 73, 81, 196], "sinc": 13, "those": [13, 17, 166], "hour": [13, 20, 21, 32, 40, 44, 72, 73, 106, 117, 178, 193], "quot": [13, 19, 20, 21, 22, 44, 49, 51, 55, 57, 72, 73, 74, 75, 77, 146, 152, 153, 157, 163, 164, 175, 177, 190, 192], "transact": [13, 22, 167, 182], "btc": [13, 19, 20, 72, 73, 74, 146, 152, 153, 157, 163, 164], "0": [13, 15, 17, 19, 21, 22, 23, 24, 25, 32, 42, 43, 44, 87, 88, 96, 97, 146, 152, 153, 157, 163, 164, 173, 188, 196], "mkt_order": 13, "000": [13, 25, 26], "lmt_order": 13, "limit_pric": [13, 22, 43, 110, 121, 146, 152, 153, 157, 163, 164], "10000": [13, 25], "pair": [13, 20, 22, 44, 74, 75, 125, 126, 133, 134, 146, 157], "bar": [13, 18, 21, 26, 43, 44, 63, 67, 71, 72, 73, 74, 75, 78, 81, 83, 85, 86, 87, 88, 89, 92, 94, 95, 96, 97, 98, 128, 136], "max_pric": 13, "log_messag": [13, 16, 20, 26, 28, 30, 33, 34, 35, 36, 37, 38, 39, 40, 42, 47, 52, 53, 58, 59, 72, 73, 74, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 132, 141, 147, 148, 149, 158, 159, 160, 167, 168, 169, 170, 171, 172, 174, 175, 176, 177, 179, 181, 182, 183, 184, 185, 186, 187, 189, 190, 191, 192, 194], "f": [13, 16, 28, 35, 36, 38, 39, 42, 72, 74, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 132, 141, 169, 171, 174, 176, 177, 179, 181, 184, 186, 189, 191, 192, 194, 196], "calcul": [13, 20, 22, 43, 44, 128, 136], "ta": 13, "length": [13, 21, 43, 44, 72, 73, 78, 84, 93], "current_rsi": 13, "iloc": [13, 72], "macd": 13, "current_macd": 13, "55": 13, "ema": 13, "current_ema": 13, "get_posit": [13, 23, 26, 47, 150, 161], "share": [13, 16, 20, 22, 29, 31, 36, 39, 44, 146, 157, 175, 190], "asset_to_get": 13, "outstand": 13, "get_ord": [13, 26, 47], "whatev": 13, "last_pric": [13, 74, 75, 196], "color": [13, 62, 63, 66, 67, 105, 116], "green": [13, 62, 63, 66, 67, 105, 116], "dt": [13, 21, 44, 62, 63, 66, 67, 90, 91, 99, 100, 139], "get_datetim": [13, 26, 43, 44, 47], "check": [13, 17, 22, 26, 40, 43, 47, 72, 148, 149, 159, 160, 168, 170, 183, 185], "certain": [13, 63, 67], "eg": [13, 17, 19, 20, 25, 44, 47, 49, 51, 55, 57, 62, 63, 66, 67, 70, 77, 82, 105, 116, 125, 126, 133, 134, 146, 157, 178, 193], "9": [13, 17, 32], "30am": 13, "entir": 13, "example_strategi": [13, 25, 26], "github": [13, 15, 17, 20, 25, 26], "repositori": [13, 17], "brokerag": [14, 17], "firm": 14, "oper": [14, 17, 32, 41], "countri": 14, "around": [14, 17, 18], "world": [14, 17], "great": [14, 17], "especi": [14, 82, 196], "platform": [14, 26], "fee": [14, 17, 18, 26], "structur": [14, 26], "best": [14, 17], "deal": [14, 26], "real": [14, 16, 17, 25, 71, 78, 81], "subscrib": 14, "appropri": [14, 20], "packag": [14, 26], "depend": [14, 17, 72, 73], "exchang": [14, 21, 22, 44, 72, 73, 74, 75, 76, 83, 85, 86, 87, 88, 89, 92, 94, 95, 96, 97, 98, 125, 126, 127, 129, 130, 131, 133, 134, 135, 137, 138, 140, 146, 157], "snapshot": [14, 42], "bundl": 14, "On": [14, 17], "stream": [14, 71, 78, 81], "nasdaq": [14, 32, 106, 117], "network": 14, "c": 14, "utp": 14, "totalview": 14, "nyse": [14, 32, 76, 106, 117, 130, 138], "cta": 14, "openbook": 14, "ultra": 14, "opra": 14, "top": [14, 17, 26], "relat": [14, 17, 36], "suffic": 14, "login": 14, "ibkr": 14, "client": [14, 15, 17], "portal": 14, "navig": [14, 15, 17], "menu": [14, 26], "click": [14, 17], "prompt": 14, "incur": 14, "cost": [14, 17, 43], "associ": 14, "notif": [14, 17], "ib": [14, 19, 132, 141], "mobil": 14, "app": 14, "approv": 14, "interrupt": [14, 33, 196], "autom": [14, 17], "handl": 14, "solut": 14, "fulli": 14, "doesn": 14, "approach": 14, "conveni": 14, "primari": [14, 196], "maintain": [14, 17], "without": [14, 17, 25, 131, 140], "separ": [14, 17], "control": [14, 178, 193], "twice": 14, "enhanc": [14, 25], "complex": [14, 25], "restrict": 14, "ip": [14, 15, 17], "address": [14, 17], "tw": [14, 17, 20], "ibgatewai": 14, "permiss": [14, 19], "what": [14, 26, 47, 82, 177, 192], "keep": [14, 17, 22, 23, 81, 146, 157], "below": [14, 45, 47, 48, 61, 70, 74, 82, 101, 124, 142], "instruct": [14, 17, 146, 152, 153, 157, 163, 164], "given": [14, 20, 21, 43, 44, 52, 58, 71, 72, 73, 76, 84, 93, 125, 127, 129, 130, 131, 133, 135, 137, 138, 139, 140, 143, 148, 154, 159], "attempt": [14, 175, 190], "while": [14, 17], "disconnect": 14, "caus": 14, "loop": [14, 31, 40, 103, 114, 172, 187], "stop": [14, 22, 25, 32, 33, 40, 43, 62, 63, 66, 67, 102, 103, 113, 114, 146, 152, 153, 157, 163, 164, 172, 187, 196], "tediou": 14, "upper": 14, "right": [14, 17, 19, 28, 63, 67, 72, 152, 163], "corner": [14, 17], "scroll": [14, 17], "down": [14, 17, 25, 33, 63, 67], "plu": [14, 105, 116, 175, 190], "sign": 14, "button": [14, 17], "header": 14, "fill": [14, 17, 21, 22, 23, 36, 39, 43, 146, 157, 167, 182], "out": [14, 26, 43, 47, 52, 58, 74], "field": [14, 20, 22], "page": [14, 16, 17, 26], "At": [14, 25], "confirm": [14, 17], "activ": [14, 17, 22, 26, 74, 75, 78, 152, 153, 163, 164], "back": [14, 196], "enter": [14, 17, 19, 22, 31, 146, 157, 178, 193], "via": 14, "act": 14, "promptli": 14, "ask": [14, 77], "proof": 14, "author": 14, "upload": 14, "request": 14, "eula": 14, "signatur": 14, "block": 14, "submit": [14, 22, 37, 43, 47, 142, 146, 152, 153, 157, 163, 164], "practic": 14, "monei": [14, 16, 17, 25, 49, 51, 55, 57, 167, 182], "avoid": 14, "conflict": [14, 196], "variabl": [14, 26, 31, 42, 166], "env": [14, 17, 196], "ib_usernam": [14, 17], "user123": [14, 17], "ib_password": [14, 17], "password123": [14, 17], "account_id": [14, 17], "subaccount": [14, 17], "u17369206": [14, 17], "ib_api_url": [14, 17], "url": [14, 17], "host": [14, 17], "localhost": [14, 17, 196], "8000": [14, 17], "strangl": [14, 15], "tutori": [15, 26], "workstat": 15, "global": [15, 17, 20, 45], "activex": 15, "socket": [15, 17], "disabl": 15, "port": [15, 17], "7496": 15, "7497": [15, 17], "highli": [15, 26], "thoroughli": 15, "algorithm": [15, 17, 25], "master": 15, "999": 15, "py": [15, 17, 25, 26], "interactive_brokers_config": 15, "socket_port": 15, "client_id": 15, "digit": 15, "127": [15, 17], "entri": [15, 22], "except": [15, 20, 25, 26, 34], "interactivebrok": [15, 20], "interactive_brok": 15, "simple_start_ib": 15, "bot": [15, 17, 25, 32, 34, 45, 196], "blob": [15, 25, 26], "getting_start": 15, "dash": [16, 62, 66], "tradier_config": 16, "access_token": 16, "qtrz3zurd9244ahuw2aoyapgvyra": 16, "account_numb": 16, "va22904793": 16, "your_access_token": 16, "your_account_numb": 16, "That": 16, "now": [16, 25, 44, 74], "abl": 16, "less": [16, 146, 147, 157, 158], "than": [16, 17, 44, 82, 146, 147, 157, 158], "cover": [17, 26], "topic": 17, "decid": [17, 72], "correctli": 17, "applic": [17, 106, 117], "success": 17, "skip": [17, 30], "repl": 17, "eas": 17, "afford": 17, "expens": [17, 128, 136], "browser": [17, 25, 46], "edit": 17, "directli": [17, 43], "tip": 17, "howev": [17, 22, 30, 32, 146, 157], "excel": 17, "develop": [17, 26], "month": [17, 85, 94], "fit": [17, 101], "scalabl": [17, 196], "figur": 17, "blueprint": 17, "worker": 17, "background": 17, "butterfli": 17, "afa": 17, "starter": 17, "itself": 17, "left": [17, 63, 67], "sidebar": 17, "delet": 17, "unnecessari": 17, "trashcan": 17, "mandatori": [17, 19, 45, 146, 157], "ones": [17, 41], "restart": [17, 40], "servic": [17, 105, 116], "commit": 17, "redeploi": 17, "tab": 17, "6": [17, 19, 26], "monitor": 17, "expect": [17, 25, 26, 128, 136], "regularli": 17, "profit": [17, 22, 25, 26, 43, 62, 63, 66, 67], "8": [17, 26], "bottom": 17, "press": 17, "consol": [17, 105, 116], "everyth": [17, 26], "part": [17, 22, 41, 153, 164, 165], "locat": 17, "reserv": 17, "vm": 17, "13": [17, 127, 135], "downgrad": 17, "vcpu": 17, "effect": 17, "reduc": 17, "todai": [17, 74, 82], "wait": [17, 22, 39, 109, 110, 111, 112, 120, 121, 122, 123], "messag": [17, 101, 105, 116], "14": [17, 196], "16": [17, 74], "17": [17, 19, 32], "proper": 17, "discord": [17, 26], "webhook": 17, "live_config": 17, "correspond": [17, 35, 36, 37], "soon": 17, "incred": 17, "commiss": 17, "lot": [17, 166], "engag": 17, "tradier_access_token": 17, "token": 17, "qtrz3zurl9244ahuw4aoyapgvyra": 17, "tradier_account_numb": 17, "va12204793": 17, "tradier_is_pap": 17, "align": 17, "perfectli": 17, "seamlessli": 17, "alpaca_api_kei": 17, "pk7t6yvax6pmh1em20yn": 17, "alpaca_api_secret": 17, "9wgjls3wixq54fcphwwzjcp8jcfjfkuwsryskkma": 17, "alpaca_is_pap": 17, "unit": [17, 44, 146, 157, 178, 193], "state": [17, 166, 196], "typic": [17, 22, 165], "challeng": 17, "friendli": 17, "coinbase_api_kei": 17, "steea9fhiszntmpihqjudeqolitj0javz": 17, "coinbase_api_secret": 17, "nuzcnprsxjxxouxrhqe5k2k1xnqlpckh2xcutifkcw": 17, "coinbase_is_sandbox": 17, "focus": 17, "competit": 17, "kraken_api_kei": 17, "xyz1234567890abcdef": 17, "kraken_api_secret": 17, "abcdef1234567890abcdef1234567890abcdef1234": 17, "intern": [17, 146, 157], "arrai": [17, 21], "cfd": 17, "Their": 17, "presenc": 17, "compat": 17, "purpos": 17, "newer": 17, "interactive_brokers_port": 17, "interactive_brokers_client_id": 17, "123456": 17, "interactive_brokers_ip": 17, "ib_subaccount": 17, "subaccount1": 17, "src": 17, "paper_1": 17, "is_backtest": [17, 26], "a7py0zidhxde6qkx8ojjknp7cd87hwku": 17, "discord_webhook_url": 17, "send": [17, 105, 116], "123456789": 17, "db_connection_str": [17, 196], "histori": 17, "sqlite": 17, "account_histori": 17, "db": 17, "strategy_nam": 17, "strategy_id": [17, 196], "my": [17, 25], "think": [17, 82], "polygon_max_memory_byt": 17, "memori": 17, "byte": 17, "usag": [17, 26], "512000000": 17, "main": [17, 18, 22, 26, 33, 40, 45, 146, 157], "smoothli": 17, "verifi": 17, "behav": 17, "ey": 17, "straightforward": 17, "happi": 17, "assist": 17, "repres": [19, 22, 44, 45, 72, 73, 126, 134], "attribut": [19, 196], "track": [17, 19, 23, 26, 52, 53, 58, 59, 148, 149, 159, 160], "underli": [19, 21, 128, 131, 136, 140], "ibm": [19, 145, 156], "just": [19, 26, 32, 36, 43, 146, 157], "corpor": 19, "printout": 19, "multipli": [19, 20, 36, 39, 44, 125, 126, 129, 131, 133, 134, 137, 140, 152, 163], "nexpir": 19, "expiri": [19, 127, 132, 135, 141], "june": 19, "2021": [19, 32, 128, 136, 139], "18": 19, "currenc": [19, 72, 146, 157, 167, 175, 177, 182, 190, 192], "eur": [19, 72, 73, 146, 152, 153, 157, 163, 164], "convers": [19, 178, 193], "gbp": [19, 152, 163], "behind": 19, "scene": 19, "anytim": 19, "due": 19, "precis": [19, 128, 136], "underlying_asset": 19, "case": [19, 21, 22], "yyyymmdd": [19, 132, 141], "yyyymm": 19, "multileg": [19, 22, 153, 164], "leverag": [19, 146, 157], "_asset_typ": 19, "_right": 19, "asset_type_must_be_one_of": 19, "right_must_be_one_of": 19, "26": 19, "155": 19, "base_asset": [19, 152, 153, 163, 164], "optionright": 19, "classmethod": [19, 20, 22, 23, 44], "from_dict": [19, 22, 23], "is_valid": 19, "symbol2asset": 19, "particularli": 19, "to_dict": [19, 22, 23], "assetsmap": 19, "map": 19, "userdict": 19, "datafram": [20, 21, 44, 64, 65, 68, 69, 72, 78, 81], "dividend": [20, 44, 79, 80, 128, 136, 167, 182], "stock_split": 20, "local": [20, 21, 42, 44, 90, 91, 99, 100, 128, 136], "timezon": [20, 21, 26, 44, 90, 91, 99, 100, 176, 181, 191], "new_york": [20, 44, 176, 179, 181, 191, 194], "helper": [20, 22, 45], "row": [20, 42, 72, 73, 81], "get_last_dividend": 20, "per": [20, 44], "get_momentum": 20, "momentum": 20, "aggregate_bar": 20, "frequenc": [20, 21], "Will": [20, 25, 62, 63, 66, 67, 74, 75, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 125, 126, 127, 128, 129, 131, 132, 133, 134, 135, 136, 137, 139, 140, 141, 151, 162, 176, 179, 181, 191, 194], "timefram": 20, "min": 20, "15min": 20, "1h": [20, 40], "specifi": [20, 22, 44, 72, 73, 146, 157, 196], "filter": 20, "daterang": 20, "get_total_volum": 20, "sum": [20, 51, 57], "themselv": 20, "supplier": 20, "exce": 20, "pace": 20, "throttl": 20, "respect": 20, "mention": 20, "tick": 20, "frequent": 20, "accur": [20, 44], "updat": [20, 22, 26, 36, 38, 108, 119, 146, 157, 167, 182], "rule": 20, "historical_limit": 20, "financi": [20, 25], "ohlcv": [20, 21, 43], "split": [20, 45], "instrument": 20, "yield": 20, "coin": [20, 146, 157], "eth": [20, 73, 146, 153, 157, 164], "num_period": 20, "get_total_dividend": 20, "get_total_stock_split": 20, "get_total_return": 20, "get_total_return_pct": 20, "percentag": [20, 25], "get_total_return_pct_chang": 20, "recent": [20, 72, 78], "get_bar": [20, 21, 44], "ethereum": 20, "bitcoin": 20, "grouper_kwarg": 20, "bars_agg": 20, "inclus": 20, "parse_bar_list": 20, "bar_list": 20, "singl": [20, 144, 155], "nobardatafound": 20, "date_start": 21, "date_end": 21, "trading_hours_start": 21, "trading_hours_end": 21, "23": 21, "59": 21, "input": [21, 102, 103, 113, 114], "manag": [21, 22, 26, 47, 61, 124], "attach": 21, "0001": 21, "localize_timezon": 21, "tz_local": 21, "eastern": 21, "utc": 21, "sybmol": 21, "datalin": 21, "numpi": 21, "iter_index": 21, "count": [21, 32, 78, 81, 196], "seri": 21, "set_tim": 21, "repair_times_and_fil": 21, "merg": 21, "reindex": 21, "nan": 21, "lower": 21, "set_date_format": 21, "set_dat": 21, "trim_data": 21, "trim": 21, "match": [21, 44], "to_datalin": 21, "exist": [21, 54, 60], "get_iter_count": 21, "len": 21, "check_data": 21, "wrapper": 21, "timeshift": [21, 43, 44, 72, 73, 84, 87, 88, 93, 96, 97], "_get_bars_dict": 21, "min_timestep": [21, 44], "timestep_map": [21, 44], "shift": [21, 44, 72, 73, 84, 87, 88, 93, 96, 97], "get_bars_between_d": 21, "start_dat": 21, "end_dat": 21, "get_quot": [21, 26, 47], "idx": 21, "belong": 22, "construct": 22, "goog": [22, 42, 72, 73], "googl": 22, "to_posit": 22, "get_incr": 22, "wait_to_be_regist": 22, "regist": [22, 110, 112, 121, 123], "wait_to_be_clos": 22, "keyword": 22, "my_limit_pric": 22, "500": [22, 36], "particular": [22, 125, 127, 129, 133, 135, 137], "higher": 22, "probabl": 22, "predetermin": 22, "exit": 22, "stop_pric": [22, 43, 146, 152, 153, 157, 163, 164], "my_stop_pric": 22, "400": 22, "stop_limit": [22, 146, 157], "combin": 22, "405": 22, "trail": [22, 146, 152, 157, 163], "continu": [22, 146, 157], "threshold": [22, 146, 157], "movement": [22, 146, 157], "trailing_stop": [22, 146, 157], "trail_pric": [22, 146, 157], "trail_perc": [22, 146, 157], "my_trail_pric": 22, "order_1": 22, "my_trail_perc": 22, "order_2": 22, "bracket": [22, 146, 157], "chain": [22, 44, 124, 125, 126, 127, 129, 131, 133, 134, 135, 137, 140], "long": 22, "short": [22, 106, 117], "importantli": 22, "extrem": 22, "fast": [22, 25, 26], "occur": 22, "take_profit_pric": [22, 146, 152, 157, 163], "stop_loss_pric": [22, 146, 152, 157, 163], "stop_loss_limit_pric": [22, 146, 157], "my_take_profit_pric": 22, "420": 22, "my_stop_loss_pric": 22, "parent": 22, "oto": [22, 146, 157], "trigger": [22, 146, 157], "variant": 22, "oco": [22, 146, 152, 157, 163], "word": [22, 167, 182], "where": [22, 25, 42, 146, 157], "alreadi": [22, 30, 36, 41], "submiss": 22, "position_fil": [22, 146, 157], "time_in_forc": [22, 146, 157], "good_till_d": [22, 146, 157], "date_cr": 22, "order_class": 22, "trade_cost": 22, "custom_param": [22, 146, 157], "avg_fill_pric": [22, 23], "error_messag": 22, "child_ord": 22, "tag": [22, 153, 164], "statu": [22, 148, 149, 159, 160], "unprocess": 22, "orderclass": 22, "ordersid": 22, "buy_to_clos": 22, "buy_to_cov": 22, "buy_to_open": 22, "sell_short": 22, "sell_to_clos": 22, "sell_to_open": 22, "orderstatu": 22, "cash_settl": 22, "partially_fil": 22, "partial_fil": 22, "ordertyp": 22, "tupl": [22, 73], "alia": 22, "add_child_ord": 22, "o": 22, "child": [22, 43], "add_transact": 22, "properti": [22, 23, 26, 43, 45, 46, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195], "cash_pend": 22, "equivalent_statu": 22, "equival": 22, "order_dict": 22, "get_fill_pric": 22, "weight": 22, "often": 22, "encount": 22, "partial": [22, 39], "pnl": 22, "yet": [22, 46], "is_act": 22, "otherwis": [22, 36], "rtype": [22, 44], "is_buy_ord": 22, "is_cancel": 22, "is_equivalent_statu": 22, "status1": 22, "status2": 22, "status": 22, "is_fil": 22, "is_opt": 22, "is_par": 22, "settlement": 22, "balanc": 22, "is_sell_ord": 22, "set_cancel": 22, "set_error": 22, "set_fil": 22, "set_identifi": 22, "set_new": 22, "set_partially_fil": 22, "update_raw": 22, "update_trail_stop_pric": 22, "was_transmit": 22, "retreiv": 23, "appl": 23, "add_ord": 23, "decim": [23, 74, 75, 146, 147, 157, 158], "get_selling_ord": [23, 26, 47], "value_typ": 23, "trading_fe": 24, "flat_fe": [24, 25], "percent_fe": [24, 25], "maker": 24, "taker": 24, "made": [25, 70, 82], "beginn": 25, "join": [25, 26], "commun": [25, 26], "cours": [25, 26], "shown": [25, 26], "discov": [25, 26], "skill": 25, "expert": [25, 26], "guidanc": 25, "resourc": 25, "welcom": 25, "hope": 25, "enjoi": 25, "easiest": 25, "comfort": 25, "copi": 25, "your_alpaca_api_kei": [25, 26], "your_alpaca_secret": [25, 26], "180": 25, "180m": 25, "carri": 25, "familiar": 25, "And": [25, 72, 73], "try": [25, 146, 157], "Or": [25, 26, 165], "dev": [25, 26], "simple_start_single_fil": [25, 26], "flat": 25, "trading_fee_1": 25, "trading_fee_2": 25, "sometim": 25, "spend": 25, "yappi": 25, "machinelearninglongshort": 25, "tqqq": 25, "get_func_stat": 25, "print_al": 25, "get_thread_stat": 25, "prof": 25, "pstat": 25, "snakeviz": 25, "web": [25, 46], "slow": 25, "robot": 26, "well": 26, "found": 26, "super": 26, "being": [26, 35, 36, 37, 38, 39, 44, 46, 72, 126, 134, 146, 157, 168, 183], "bug": 26, "fix": [26, 81], "fortun": 26, "against": 26, "switch": 26, "industri": 26, "tradest": 26, "build": [26, 27, 45], "analy": 26, "box": 26, "analyt": 26, "analyz": 26, "chart": [26, 47, 62, 63, 64, 65, 66, 67, 68, 69], "engin": [26, 41], "complic": 26, "confus": 26, "vector": 26, "math": 26, "mac": 26, "powershel": 26, "window": 26, "notic": 26, "exactli": 26, "suggest": 26, "lifecycl": [26, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 45, 47, 168, 172, 173, 178, 183, 187, 188, 193], "describ": [26, 45], "sub": 26, "tree": 26, "good": [26, 146, 157], "luck": 26, "forget": 26, "swim": 26, "gain": 26, "wealth": 26, "expertis": 26, "level": [26, 63, 67, 105, 116], "proven": 26, "record": 26, "home": 26, "pre": [26, 153, 164], "deploy": 26, "render": 26, "replit": 26, "profil": 26, "improv": 26, "before_market_open": [26, 27, 173, 188], "before_starting_trad": [26, 27, 30], "before_market_clos": [26, 27], "after_market_clos": [26, 27], "on_abrupt_clos": [26, 27, 34], "on_bot_crash": [26, 27], "trace_stat": [26, 27, 178, 193], "on_new_ord": [26, 27], "on_partially_filled_ord": [26, 27], "on_filled_ord": [26, 27], "on_canceled_ord": [26, 27], "on_parameters_upd": [26, 27], "backup": 26, "restor": 26, "benefit": 26, "var": 26, "storag": 26, "cancel_open_ord": [26, 30, 47, 151, 162], "sell_al": [26, 29, 33, 34, 47], "get_asset_potential_tot": [26, 47], "get_portfolio_valu": [26, 47], "get_cash": [26, 47], "get_historical_prices_for_asset": [26, 30, 47], "get_yesterday_dividend": [26, 44, 47], "get_next_trading_dai": [26, 47], "get_markers_df": [26, 47], "get_lines_df": [26, 47], "get_paramet": [26, 47, 165], "set_paramet": [26, 47, 165], "get_chain": [26, 44, 47, 127, 129, 131, 135, 137, 140], "get_greek": [26, 47], "get_strik": [26, 44, 47], "get_expir": [26, 47], "get_multipli": [26, 47], "options_expiry_to_datetime_d": [26, 47], "get_round_minut": [26, 44, 47], "get_last_minut": [26, 44, 47], "get_round_dai": [26, 44, 47], "get_last_dai": [26, 44, 47], "get_datetime_rang": [26, 43, 44, 47], "localize_datetim": [26, 44, 47], "to_default_timezon": [26, 44, 47], "miscellan": [26, 47], "update_paramet": [26, 38, 47], "await_market_to_clos": [26, 47], "await_market_to_open": [26, 47], "wait_for_order_registr": [26, 47], "wait_for_order_execut": [26, 47], "wait_for_orders_registr": [26, 47], "wait_for_orders_execut": [26, 47], "initial_budget": 26, "last_on_trading_iteration_datetim": 26, "pytz": 26, "unspent_monei": 26, "leg": 26, "abstract": [27, 41, 43, 44, 45], "pattern": [27, 41], "greatli": [27, 41], "react": [27, 41], "j": [27, 41], "compon": [27, 41, 196], "overload": [27, 34, 41, 43], "logic": [27, 29, 30, 40, 41, 43, 45], "dump": [28, 42], "report": 28, "busi": [29, 30], "execud": [29, 30], "unlik": 30, "launch": 30, "tlt": [30, 52, 58, 73, 75, 80, 111, 112, 122, 123, 146, 147, 153, 157, 158, 164], "bars_list": 30, "asset_bar": 30, "reiniti": 31, "reset": 31, "blacklist": 31, "my_custom_paramet": 32, "5m": [32, 178, 193], "d": [32, 178, 193], "constructor": 32, "later": 32, "strategy_1": 32, "my_other_paramet": 32, "strategy_2": 32, "my_last_paramet": 32, "asset_symbol": 32, "mnq": 32, "calendar": [32, 76, 130, 138], "marketcalendar": [32, 106, 117], "asx": [32, 106, 117], "bmf": [32, 106, 117], "cfe": [32, 106, 117], "bat": [32, 106, 117], "cme_equ": [32, 106, 117], "cbot_equ": [32, 106, 117], "cme_agricultur": [32, 106, 117], "cbot_agricultur": [32, 106, 117], "comex_agricultur": [32, 106, 117], "nymex_agricultur": [32, 106, 117], "cme_rat": [32, 106, 117], "cbot_rat": [32, 106, 117], "cme_interestr": [32, 106, 117], "cbot_interestr": [32, 106, 117], "cme_bond": [32, 106, 117], "cbot_bond": [32, 106, 117], "eurex": [32, 106, 117], "hkex": [32, 106, 117], "ic": [32, 106, 117], "iceu": [32, 106, 117], "nyfe": [32, 106, 117], "jpx": [32, 106, 117], "lse": [32, 106, 117], "os": [32, 106, 117], "six": [32, 106, 117], "sse": [32, 106, 117], "tsx": [32, 106, 117], "tsxv": [32, 106, 117], "bse": [32, 106, 117], "tase": [32, 106, 117], "tradingcalendar": [32, 106, 117], "asex": [32, 106, 117], "bvmf": [32, 106, 117], "cme": [32, 74, 106, 117], "iepa": [32, 106, 117], "xam": [32, 106, 117], "xasx": [32, 106, 117], "xbkk": [32, 106, 117], "xbog": [32, 106, 117], "xbom": [32, 106, 117], "xbru": [32, 106, 117], "xbud": [32, 106, 117], "xbue": [32, 106, 117], "xcbf": [32, 106, 117], "xcse": [32, 106, 117], "xdub": [32, 106, 117], "xfra": [32, 106, 117], "xetr": [32, 106, 117], "xhel": [32, 106, 117], "xhkg": [32, 106, 117], "xice": [32, 106, 117], "xidx": [32, 106, 117], "xist": [32, 106, 117], "xjse": [32, 106, 117], "xkar": [32, 106, 117], "xkl": [32, 106, 117], "xkrx": [32, 106, 117], "xlim": [32, 106, 117], "xli": [32, 106, 117], "xlon": [32, 106, 117], "xmad": [32, 106, 117], "xmex": [32, 106, 117], "xmil": [32, 106, 117], "xmo": [32, 106, 117], "xny": [32, 106, 117], "xnze": [32, 106, 117], "xosl": [32, 106, 117], "xpar": [32, 106, 117], "xph": [32, 106, 117], "xpra": [32, 106, 117], "xse": [32, 106, 117], "xsgo": [32, 106, 117], "xshg": [32, 106, 117], "xsto": [32, 106, 117], "xswx": [32, 106, 117], "xtae": [32, 106, 117], "xtai": [32, 106, 117], "xtk": [32, 106, 117], "xtse": [32, 106, 117], "xwar": [32, 106, 117], "xwbo": [32, 106, 117], "us_futur": [32, 106, 117], "max_bar": 32, "10m": [32, 178, 193], "20h": 32, "48": 32, "2d": [32, 178, 193], "gracefulli": 33, "shut": 33, "keybord": 33, "interupt": [33, 40], "abrupt": 33, "crash": [34, 40, 196], "rais": 34, "successfulli": [35, 36, 37], "300": [36, 178, 193], "sold": [36, 51, 57, 146, 157], "elif": 36, "bought": [36, 146, 157], "r": 37, "miss": 39, "again": [40, 103, 114], "pull": [40, 72], "hello": 40, "task": 41, "core": 41, "perspect": 41, "care": 41, "he": 41, "illustr": 41, "context": 42, "scope": 42, "random": 42, "google_symbol": 42, "snapshot_befor": 42, "random_numb": 42, "randint": 42, "my_custom_stat": 42, "trace": 42, "my_stat": 42, "my_other_stat": 42, "backtesting_brok": 43, "is_backtesting_brok": 43, "calculate_trade_cost": 43, "cash_settle_options_contract": 43, "settl": 43, "todo": [43, 74], "docstr": 43, "get_last_bar": 43, "els": 43, "limit_ord": [43, 146, 157], "open_": 43, "process_expired_option_contract": 43, "expri": 43, "process_pending_ord": 43, "evalu": 43, "mostli": 43, "should_continu": 43, "product": 43, "stop_ord": 43, "data_source_backtest": 43, "datasourcebacktest": [43, 44], "abc": [43, 44], "doe": [43, 44, 77, 146, 157], "pandasdata": [43, 44], "is_backtesting_data_sourc": [43, 44], "adjust_for_delai": [43, 44, 83, 92], "Not": [43, 106, 117], "delai": 44, "default_pytz": 44, "dsttzinfo": 44, "lmt": 44, "19": 44, "std": 44, "default_timezon": 44, "calculate_greek": 44, "asset_pric": [44, 128, 136], "underlying_pric": [44, 128, 136], "greek": [44, 124, 128, 136], "static": 44, "convert_timestep_str_to_timedelta": 44, "timedelta": [44, 72, 73, 102, 103, 113, 114], "1minut": 44, "1hour": 44, "1dai": 44, "include_after_hour": [44, 72, 73], "info": [44, 105, 116, 125, 126, 133, 134], "guarente": [44, 125, 126, 133, 134], "exp_dat": [44, 125, 126, 133, 134], "strike1": [44, 125, 126, 133, 134], "strike2": [44, 125, 126, 133, 134], "07": [44, 125, 126, 133, 134], "ago": [44, 72], "known": [44, 74, 75], "round": [44, 87, 88, 96, 97], "param": 44, "get_timestep": 44, "query_greek": [44, 128, 136], "queri": [44, 128, 136], "clean_trading_tim": 44, "dt_index": 44, "pcal": 44, "find_asset_in_data_stor": 44, "get_asset_by_nam": 44, "get_asset_by_symbol": 44, "get_asset": 44, "whose": [44, 126, 134], "smart": [44, 125, 127, 129, 133, 135, 137, 146, 157], "strke": [44, 125, 133], "stike": [44, 125, 133], "get_start_datetime_and_ts_unit": 44, "start_dt": 44, "start_buff": 44, "get_trading_days_panda": 44, "load_data": 44, "update_date_index": 44, "yahoo_data": 44, "yahoodata": 44, "15m": 44, "becuas": 44, "chain_data": 44, "option_chain": 44, "categori": [45, 101], "flow": 45, "is_backtest_brok": 46, "async_": 46, "async": 46, "asynchron": 46, "displi": 46, "displai": [46, 62, 63, 66, 67], "run_all_async": 46, "stop_al": 46, "insid": [47, 166, 172, 187], "thing": 47, "divid": 47, "sens": 47, "preced": 47, "seek": [52, 58, 144, 155], "sought": [52, 58, 147, 158], "assset": [52, 58], "empti": [53, 59], "overwrit": [54, 60], "style": [62, 66], "solid": [62, 66], "width": [62, 66, 72, 73], "detail_text": [62, 63, 66, 67], "overbought": [62, 63, 66, 67], "oversold": [62, 63, 66, 67], "red": [62, 63, 66, 67, 105, 116], "blue": [62, 63, 66, 67], "yellow": [62, 63, 66, 67], "orang": [62, 63, 66, 67], "purpl": [62, 63, 66, 67], "pink": [62, 63, 66, 67], "brown": [62, 63, 66, 67], "black": [62, 63, 66, 67], "white": [62, 63, 66, 67], "grai": [62, 66], "lightgrai": [62, 66], "darkgrai": [62, 66], "lightblu": [62, 66], "darkblu": [62, 66], "lightgreen": [62, 66], "darkgreen": [62, 66], "lightr": [62, 66], "darkr": [62, 66], "hex": [62, 66], "dot": [62, 63, 66, 67], "text": [62, 63, 66, 67], "hover": [62, 63, 66, 67], "add_chart_lin": [62, 66], "80": [62, 66], "circl": [63, 67], "size": [63, 67, 81], "mark": [63, 67], "cross": [63, 67], "resist": [63, 67], "squar": [63, 67], "diamond": [63, 67], "x": [63, 67], "triangl": [63, 67], "ne": [63, 67], "se": [63, 67], "sw": [63, 67], "nw": [63, 67], "pentagon": [63, 67], "hexagon": [63, 67], "hexagon2": [63, 67], "octagon": [63, 67], "star": [63, 67], "hexagram": [63, 67], "tall": [63, 67], "hourglass": [63, 67], "bowti": [63, 67], "thin": [63, 67], "asterisk": [63, 67], "hash": [63, 67], "y": [63, 67], "ew": [63, 67], "n": [63, 67], "arrow": [63, 67], "add_chart_mark": [63, 67], "get_symbol_bar": 70, "create_asset": [71, 72, 79], "backward": [72, 73], "week": [72, 73], "1month": [72, 73], "present": [72, 73, 128, 136], "integ": [72, 73, 178, 193], "extract": 72, "24h": 72, "last_ohlc": 72, "asset_bas": [72, 73, 152, 163], "asset_quot": [72, 73, 152, 153, 163, 164], "regular": 73, "eurusd": 73, "should_use_last_clos": 74, "depric": 74, "comment": 74, "2022": [74, 127, 135], "yyyi": [76, 130, 138], "mm": [76, 130, 138], "dd": [76, 130, 138], "next_trading_dai": [76, 130, 138], "backtets": 77, "bid": 77, "vwap": [78, 81], "intial": 78, "keep_bar": 81, "arriv": 81, "extend": 81, "kept": 81, "datatim": 82, "regardless": 82, "accord": [82, 83, 89, 92, 98], "1990": 82, "tell": 82, "jan": 82, "1991": 82, "rather": 82, "last_dai": [85, 94], "last_minut": [86, 95], "nearest": [87, 88, 96, 97], "round_dai": [87, 96], "round_minut": [88, 97], "paus": [102, 103, 107, 113, 114, 118, 178, 193], "overrid": [102, 103, 113, 114], "infinit": [103, 114], "await": [103, 114, 143, 154], "broadcast": [105, 116], "goe": [105, 116], "origin": [105, 116], "program": [107, 118, 165, 178, 193], "order1": [111, 112, 122, 123, 145, 153, 156, 164], "order2": [111, 112, 122, 123, 145, 153, 156, 164], "meant": 124, "cboe": [125, 127, 129, 133, 135, 137], "sort": [127, 129, 131, 135, 137, 140], "expiry_d": [127, 132, 135, 141], "could": [128, 136], "theoret": [128, 136], "implied_volatil": [128, 136], "impli": [128, 136], "option_pric": [128, 136], "pv_dividend": [128, 136], "gamma": [128, 136], "vega": [128, 136], "theta": [128, 136], "opt_asset": [128, 136], "option_typ": [128, 136], "20221013": [129, 137], "20200101": [132, 141], "next_option_expir": 139, "get_next_option_expir": 139, "gtc": [146, 153, 157, 164], "still": [146, 157], "restric": [146, 157], "compound": [146, 157], "suffici": [146, 157], "213": [146, 157], "obect": [146, 157], "favor": [146, 157], "guarante": [146, 157], "penetr": [146, 157], "forc": [146, 157], "remaind": [146, 157], "gtd": [146, 157], "though": [146, 157], "dollar": [146, 157, 175, 190], "percent": [146, 157], "stop_loss": [146, 152, 157, 163], "stop_loss_limit": [146, 157], "2019": [146, 157], "chf": [146, 157], "aset": [146, 152, 153, 157, 163, 164], "41000": [146, 157], "expiration_d": [147, 152, 158, 163], "order_id": [148, 159], "get_tracked_ord": [149, 160], "system": [151, 162], "leav": [151, 162], "strike_pric": [152, 163], "trailing_stop_pric": [152, 163], "41250": [152, 163], "41325": [152, 163], "41300": [152, 163], "is_multileg": [153, 164], "debit": [153, 164], "post": [153, 164], "asset_btc": [153, 164], "asset_eth": [153, 164], "my_paramet": 165, "main_tick": 165, "ema_threshold": 165, "whenev": [167, 182], "therefor": [167, 182], "zero": [167, 182], "excut": [168, 183], "happen": [171, 186], "equal": [172, 173, 178, 187, 188, 193], "resov": [175, 190], "held": [175, 190], "speed": [178, 193], "m": [178, 193], "h": [178, 193], "2h": [178, 193], "remov": [180, 195], "store": 196, "runtim": 196, "persist": 196, "resum": 196, "namespac": 196, "prevent": 196, "effici": 196, "assign": 196, "notat": 196, "trade_count": 196, "current_count": 196, "all_vari": 196, "output": 196, "102": 196, "postgresql": 196, "5432": 196, "database_nam": 196, "tabl": 196, "backup_table_nam": 196, "vars_backup": 196, "last_upd": 196, "json": 196, "550e8400": 196, "var1": 196, "var2": 196, "optionscondormartingal": 196, "lumiwealth_api_kei": 17, "botspot": 17, "694rr2c8d9234b43a40fab494a79f5634ghd4f39d44ccf2": 17}, "objects": {"entities": [[19, 0, 0, "-", "asset"], [20, 0, 0, "-", "bars"], [21, 0, 0, "-", "data"], [22, 0, 0, "-", "order"], [23, 0, 0, "-", "position"], [24, 0, 0, "-", "trading_fee"]], "entities.asset": [[19, 1, 1, "", "Asset"], [19, 1, 1, "", "AssetsMapping"]], "entities.asset.Asset": [[19, 1, 1, "", "AssetType"], [19, 1, 1, "", "OptionRight"], [19, 2, 1, "", "_asset_types"], [19, 2, 1, "", "_right"], [19, 2, 1, "id0", "asset_type"], [19, 3, 1, "id1", "asset_type_must_be_one_of"], [19, 2, 1, "id2", "expiration"], [19, 3, 1, "", "from_dict"], [19, 3, 1, "", "is_valid"], [19, 2, 1, "id3", "multiplier"], [19, 2, 1, "id4", "precision"], [19, 2, 1, "id5", "right"], [19, 3, 1, "id6", "right_must_be_one_of"], [19, 2, 1, "id7", "strike"], [19, 2, 1, "id8", "symbol"], [19, 3, 1, "", "symbol2asset"], [19, 3, 1, "", "to_dict"], [19, 2, 1, "", "underlying_asset"]], "entities.asset.Asset.AssetType": [[19, 2, 1, "", "CRYPTO"], [19, 2, 1, "", "FOREX"], [19, 2, 1, "", "FUTURE"], [19, 2, 1, "", "INDEX"], [19, 2, 1, "", "MULTILEG"], [19, 2, 1, "", "OPTION"], [19, 2, 1, "", "STOCK"]], "entities.asset.Asset.OptionRight": [[19, 2, 1, "", "CALL"], [19, 2, 1, "", "PUT"]], "entities.bars": [[20, 1, 1, "", "Bars"], [20, 4, 1, "", "NoBarDataFound"]], "entities.bars.Bars": [[20, 3, 1, "id0", "aggregate_bars"], [20, 3, 1, "", "filter"], [20, 3, 1, "id1", "get_last_dividend"], [20, 3, 1, "id2", "get_last_price"], [20, 3, 1, "id3", "get_momentum"], [20, 3, 1, "", "get_total_dividends"], [20, 3, 1, "", "get_total_return"], [20, 3, 1, "", "get_total_return_pct"], [20, 3, 1, "", "get_total_return_pct_change"], [20, 3, 1, "", "get_total_stock_splits"], [20, 3, 1, "id4", "get_total_volume"], [20, 3, 1, "", "parse_bar_list"], [20, 3, 1, "", "split"]], "entities.data": [[21, 1, 1, "", "Data"]], "entities.data.Data": [[21, 2, 1, "", "MIN_TIMESTEP"], [21, 2, 1, "", "TIMESTEP_MAPPING"], [21, 3, 1, "", "_get_bars_dict"], [21, 2, 1, "", "asset"], [21, 3, 1, "id0", "check_data"], [21, 3, 1, "id1", "columns"], [21, 2, 1, "", "datalines"], [21, 2, 1, "", "date_end"], [21, 2, 1, "", "date_start"], [21, 2, 1, "", "df"], [21, 3, 1, "id2", "get_bars"], [21, 3, 1, "", "get_bars_between_dates"], [21, 3, 1, "id3", "get_iter_count"], [21, 3, 1, "id4", "get_last_price"], [21, 3, 1, "", "get_quote"], [21, 2, 1, "", "iter_index"], [21, 3, 1, "id5", "repair_times_and_fill"], [21, 3, 1, "id6", "set_date_format"], [21, 3, 1, "id7", "set_dates"], [21, 3, 1, "id8", "set_times"], [21, 2, 1, "", "sybmol"], [21, 2, 1, "", "timestep"], [21, 3, 1, "id9", "to_datalines"], [21, 2, 1, "", "trading_hours_end"], [21, 2, 1, "", "trading_hours_start"], [21, 3, 1, "id10", "trim_data"]], "entities.order": [[22, 1, 1, "", "Order"]], "entities.order.Order": [[22, 1, 1, "", "OrderClass"], [22, 1, 1, "", "OrderSide"], [22, 1, 1, "", "OrderStatus"], [22, 1, 1, "", "OrderType"], [22, 1, 1, "", "Transaction"], [22, 3, 1, "", "add_child_order"], [22, 3, 1, "", "add_transaction"], [22, 5, 1, "", "avg_fill_price"], [22, 3, 1, "", "cash_pending"], [22, 3, 1, "", "equivalent_status"], [22, 3, 1, "", "from_dict"], [22, 3, 1, "", "get_fill_price"], [22, 3, 1, "", "get_increment"], [22, 3, 1, "", "is_active"], [22, 3, 1, "", "is_buy_order"], [22, 3, 1, "", "is_canceled"], [22, 3, 1, "", "is_equivalent_status"], [22, 3, 1, "", "is_filled"], [22, 3, 1, "", "is_option"], [22, 3, 1, "", "is_parent"], [22, 3, 1, "", "is_sell_order"], [22, 5, 1, "", "quantity"], [22, 3, 1, "", "set_canceled"], [22, 3, 1, "", "set_error"], [22, 3, 1, "", "set_filled"], [22, 3, 1, "", "set_identifier"], [22, 3, 1, "", "set_new"], [22, 3, 1, "", "set_partially_filled"], [22, 5, 1, "", "status"], [22, 3, 1, "", "to_dict"], [22, 3, 1, "", "to_position"], [22, 3, 1, "", "update_raw"], [22, 3, 1, "", "update_trail_stop_price"], [22, 3, 1, "", "wait_to_be_closed"], [22, 3, 1, "", "wait_to_be_registered"], [22, 3, 1, "", "was_transmitted"]], "entities.order.Order.OrderClass": [[22, 2, 1, "", "BRACKET"], [22, 2, 1, "", "MULTILEG"], [22, 2, 1, "", "OCO"], [22, 2, 1, "", "OTO"]], "entities.order.Order.OrderSide": [[22, 2, 1, "", "BUY"], [22, 2, 1, "", "BUY_TO_CLOSE"], [22, 2, 1, "", "BUY_TO_COVER"], [22, 2, 1, "", "BUY_TO_OPEN"], [22, 2, 1, "", "SELL"], [22, 2, 1, "", "SELL_SHORT"], [22, 2, 1, "", "SELL_TO_CLOSE"], [22, 2, 1, "", "SELL_TO_OPEN"]], "entities.order.Order.OrderStatus": [[22, 2, 1, "", "CANCELED"], [22, 2, 1, "", "CANCELLING"], [22, 2, 1, "", "CASH_SETTLED"], [22, 2, 1, "", "ERROR"], [22, 2, 1, "", "EXPIRED"], [22, 2, 1, "", "FILLED"], [22, 2, 1, "", "NEW"], [22, 2, 1, "", "OPEN"], [22, 2, 1, "", "PARTIALLY_FILLED"], [22, 2, 1, "", "SUBMITTED"], [22, 2, 1, "", "UNPROCESSED"]], "entities.order.Order.OrderType": [[22, 2, 1, "", "BRACKET"], [22, 2, 1, "", "LIMIT"], [22, 2, 1, "", "MARKET"], [22, 2, 1, "", "OCO"], [22, 2, 1, "", "OTO"], [22, 2, 1, "", "STOP"], [22, 2, 1, "", "STOP_LIMIT"], [22, 2, 1, "", "TRAIL"]], "entities.order.Order.Transaction": [[22, 2, 1, "", "price"], [22, 2, 1, "", "quantity"]], "entities.position": [[23, 1, 1, "", "Position"]], "entities.position.Position": [[23, 3, 1, "", "add_order"], [23, 2, 1, "", "asset"], [23, 5, 1, "id0", "available"], [23, 2, 1, "", "avg_fill_price"], [23, 3, 1, "", "from_dict"], [23, 3, 1, "", "get_selling_order"], [23, 5, 1, "id1", "hold"], [23, 2, 1, "", "orders"], [23, 5, 1, "id2", "quantity"], [23, 2, 1, "", "strategy"], [23, 2, 1, "", "symbol"], [23, 3, 1, "", "to_dict"], [23, 3, 1, "", "value_type"]], "entities.trading_fee": [[24, 1, 1, "", "TradingFee"]], "lumibot.backtesting": [[43, 0, 0, "-", "backtesting_broker"]], "lumibot.backtesting.backtesting_broker": [[43, 1, 1, "", "BacktestingBroker"]], "lumibot.backtesting.backtesting_broker.BacktestingBroker": [[43, 2, 1, "", "IS_BACKTESTING_BROKER"], [43, 3, 1, "", "calculate_trade_cost"], [43, 3, 1, "", "cancel_order"], [43, 3, 1, "", "cash_settle_options_contract"], [43, 5, 1, "", "datetime"], [43, 3, 1, "", "get_historical_account_value"], [43, 3, 1, "", "get_last_bar"], [43, 3, 1, "", "get_time_to_close"], [43, 3, 1, "", "get_time_to_open"], [43, 3, 1, "", "is_market_open"], [43, 3, 1, "", "limit_order"], [43, 3, 1, "", "process_expired_option_contracts"], [43, 3, 1, "", "process_pending_orders"], [43, 3, 1, "", "should_continue"], [43, 3, 1, "", "stop_order"], [43, 3, 1, "", "submit_order"], [43, 3, 1, "", "submit_orders"]], "lumibot.brokers": [[12, 0, 0, "-", "alpaca"]], "lumibot.brokers.alpaca": [[12, 1, 1, "", "Alpaca"], [12, 1, 1, "", "OrderData"]], "lumibot.brokers.alpaca.Alpaca": [[12, 2, 1, "", "ASSET_TYPE_MAP"], [12, 2, 1, "", "api"], [12, 3, 1, "", "cancel_order"], [12, 3, 1, "", "get_historical_account_value"], [12, 3, 1, "id0", "get_time_to_close"], [12, 3, 1, "id1", "get_time_to_open"], [12, 3, 1, "id2", "get_timestamp"], [12, 3, 1, "id3", "is_market_open"], [12, 3, 1, "", "map_asset_type"]], "lumibot.brokers.alpaca.OrderData": [[12, 3, 1, "", "to_request_fields"]], "lumibot": [[44, 0, 0, "-", "data_sources"]], "lumibot.data_sources": [[44, 0, 0, "-", "data_source"], [43, 0, 0, "-", "data_source_backtesting"], [44, 0, 0, "-", "pandas_data"], [44, 0, 0, "-", "yahoo_data"]], "lumibot.data_sources.data_source": [[44, 1, 1, "", "DataSource"]], "lumibot.data_sources.data_source.DataSource": [[44, 2, 1, "", "DEFAULT_PYTZ"], [44, 2, 1, "", "DEFAULT_TIMEZONE"], [44, 2, 1, "", "IS_BACKTESTING_DATA_SOURCE"], [44, 2, 1, "", "MIN_TIMESTEP"], [44, 2, 1, "", "SOURCE"], [44, 2, 1, "", "TIMESTEP_MAPPING"], [44, 3, 1, "", "calculate_greeks"], [44, 3, 1, "", "convert_timestep_str_to_timedelta"], [44, 3, 1, "", "get_bars"], [44, 3, 1, "", "get_chains"], [44, 3, 1, "", "get_datetime"], [44, 3, 1, "", "get_datetime_range"], [44, 3, 1, "", "get_historical_prices"], [44, 3, 1, "", "get_last_day"], [44, 3, 1, "", "get_last_minute"], [44, 3, 1, "", "get_last_price"], [44, 3, 1, "", "get_last_prices"], [44, 3, 1, "", "get_round_day"], [44, 3, 1, "", "get_round_minute"], [44, 3, 1, "", "get_strikes"], [44, 3, 1, "", "get_timestamp"], [44, 3, 1, "", "get_timestep"], [44, 3, 1, "", "get_yesterday_dividend"], [44, 3, 1, "", "get_yesterday_dividends"], [44, 3, 1, "", "localize_datetime"], [44, 3, 1, "", "query_greeks"], [44, 3, 1, "", "to_default_timezone"]], "lumibot.data_sources.data_source_backtesting": [[43, 1, 1, "", "DataSourceBacktesting"]], "lumibot.data_sources.data_source_backtesting.DataSourceBacktesting": [[43, 2, 1, "", "IS_BACKTESTING_DATA_SOURCE"], [43, 3, 1, "", "get_datetime"], [43, 3, 1, "", "get_datetime_range"]], "lumibot.data_sources.pandas_data": [[44, 1, 1, "", "PandasData"]], "lumibot.data_sources.pandas_data.PandasData": [[44, 2, 1, "", "SOURCE"], [44, 2, 1, "", "TIMESTEP_MAPPING"], [44, 3, 1, "", "clean_trading_times"], [44, 3, 1, "", "find_asset_in_data_store"], [44, 3, 1, "", "get_asset_by_name"], [44, 3, 1, "", "get_asset_by_symbol"], [44, 3, 1, "", "get_assets"], [44, 3, 1, "", "get_chains"], [44, 3, 1, "", "get_historical_prices"], [44, 3, 1, "", "get_last_price"], [44, 3, 1, "", "get_last_prices"], [44, 3, 1, "", "get_start_datetime_and_ts_unit"], [44, 3, 1, "", "get_trading_days_pandas"], [44, 3, 1, "", "get_yesterday_dividend"], [44, 3, 1, "", "get_yesterday_dividends"], [44, 3, 1, "", "load_data"], [44, 3, 1, "", "update_date_index"]], "lumibot.data_sources.yahoo_data": [[44, 1, 1, "", "YahooData"]], "lumibot.data_sources.yahoo_data.YahooData": [[44, 2, 1, "", "MIN_TIMESTEP"], [44, 2, 1, "", "SOURCE"], [44, 2, 1, "", "TIMESTEP_MAPPING"], [44, 3, 1, "", "get_chains"], [44, 3, 1, "", "get_historical_prices"], [44, 3, 1, "", "get_last_price"], [44, 3, 1, "", "get_strikes"]], "lumibot.strategies.strategy": [[45, 0, 0, "-", "Strategy"]], "lumibot.strategies.strategy.Strategy": [[66, 6, 1, "", "add_line"], [67, 6, 1, "", "add_marker"], [28, 6, 1, "", "after_market_closes"], [113, 6, 1, "", "await_market_to_close"], [114, 6, 1, "", "await_market_to_open"], [29, 6, 1, "", "before_market_closes"], [30, 6, 1, "", "before_market_opens"], [31, 6, 1, "", "before_starting_trading"], [154, 6, 1, "", "cancel_open_orders"], [155, 6, 1, "", "cancel_order"], [156, 6, 1, "", "cancel_orders"], [71, 6, 1, "", "cancel_realtime_bars"], [182, 5, 1, "", "cash"], [157, 6, 1, "", "create_order"], [183, 5, 1, "", "first_iteration"], [158, 6, 1, "", "get_asset_potential_total"], [55, 6, 1, "", "get_cash"], [133, 6, 1, "", "get_chain"], [134, 6, 1, "", "get_chains"], [92, 6, 1, "", "get_datetime"], [93, 6, 1, "", "get_datetime_range"], [135, 6, 1, "", "get_expiration"], [136, 6, 1, "", "get_greeks"], [72, 6, 1, "", "get_historical_prices"], [73, 6, 1, "", "get_historical_prices_for_assets"], [94, 6, 1, "", "get_last_day"], [95, 6, 1, "", "get_last_minute"], [74, 6, 1, "", "get_last_price"], [75, 6, 1, "", "get_last_prices"], [68, 6, 1, "", "get_lines_df"], [69, 6, 1, "", "get_markers_df"], [137, 6, 1, "", "get_multiplier"], [138, 6, 1, "", "get_next_trading_day"], [139, 6, 1, "", "get_option_expiration_after_date"], [159, 6, 1, "", "get_order"], [160, 6, 1, "", "get_orders"], [115, 6, 1, "", "get_parameters"], [57, 6, 1, "", "get_portfolio_value"], [58, 6, 1, "", "get_position"], [59, 6, 1, "", "get_positions"], [77, 6, 1, "", "get_quote"], [78, 6, 1, "", "get_realtime_bars"], [96, 6, 1, "", "get_round_day"], [97, 6, 1, "", "get_round_minute"], [161, 6, 1, "", "get_selling_order"], [140, 6, 1, "", "get_strikes"], [98, 6, 1, "", "get_timestamp"], [79, 6, 1, "", "get_yesterday_dividend"], [80, 6, 1, "", "get_yesterday_dividends"], [184, 5, 1, "", "initial_budget"], [32, 6, 1, "", "initialize"], [185, 5, 1, "", "is_backtesting"], [186, 5, 1, "", "last_on_trading_iteration_datetime"], [99, 6, 1, "", "localize_datetime"], [116, 6, 1, "", "log_message"], [187, 5, 1, "", "minutes_before_closing"], [188, 5, 1, "", "minutes_before_opening"], [189, 5, 1, "", "name"], [33, 6, 1, "", "on_abrupt_closing"], [34, 6, 1, "", "on_bot_crash"], [35, 6, 1, "", "on_canceled_order"], [36, 6, 1, "", "on_filled_order"], [37, 6, 1, "", "on_new_order"], [38, 6, 1, "", "on_parameters_updated"], [39, 6, 1, "", "on_partially_filled_order"], [40, 6, 1, "", "on_trading_iteration"], [141, 6, 1, "", "options_expiry_to_datetime_date"], [190, 5, 1, "", "portfolio_value"], [191, 5, 1, "", "pytz"], [192, 5, 1, "", "quote_asset"], [1, 6, 1, "", "run_backtest"], [162, 6, 1, "", "sell_all"], [117, 6, 1, "", "set_market"], [60, 6, 1, "", "set_parameters"], [118, 6, 1, "", "sleep"], [193, 5, 1, "", "sleeptime"], [81, 6, 1, "", "start_realtime_bars"], [163, 6, 1, "", "submit_order"], [164, 6, 1, "", "submit_orders"], [194, 5, 1, "", "timezone"], [100, 6, 1, "", "to_default_timezone"], [42, 6, 1, "", "trace_stats"], [195, 5, 1, "", "unspent_money"], [119, 6, 1, "", "update_parameters"], [120, 6, 1, "", "wait_for_order_execution"], [121, 6, 1, "", "wait_for_order_registration"], [122, 6, 1, "", "wait_for_orders_execution"], [123, 6, 1, "", "wait_for_orders_registration"]], "lumibot.traders": [[46, 0, 0, "-", "trader"]], "lumibot.traders.trader": [[46, 1, 1, "", "Trader"]], "lumibot.traders.trader.Trader": [[46, 3, 1, "", "add_strategy"], [46, 5, 1, "", "is_backtest_broker"], [46, 3, 1, "", "run_all"], [46, 3, 1, "", "run_all_async"], [46, 3, 1, "", "stop_all"]]}, "objtypes": {"0": "py:module", "1": "py:class", "2": "py:attribute", "3": "py:method", "4": "py:exception", "5": "py:property", "6": "py:function"}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "class", "Python class"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "method", "Python method"], "4": ["py", "exception", "Python exception"], "5": ["py", "property", "Python property"], "6": ["py", "function", "Python function"]}, "titleterms": {"backtest": [0, 1, 2, 6, 8, 25, 26, 43], "file": [0, 2, 3, 9], "gener": [0, 2, 17], "from": [0, 2], "content": [0, 11, 18, 26, 27, 44, 47], "function": [1, 61], "how": [2, 196], "To": 2, "instal": [2, 25, 26], "lumibot": [2, 25, 26], "choos": [2, 17], "data": [2, 5, 14, 21, 43, 44, 70], "sourc": [2, 43, 44], "run": [2, 13, 16, 25], "polygon": [2, 6], "io": [2, 6], "tearsheet": [2, 7], "html": [2, 7], "trade": [2, 9, 14, 24, 25, 26], "indic": [2, 3, 26], "conclus": [2, 17], "log": 4, "csv": [4, 5], "panda": [5, 44], "other": 5, "exampl": [5, 13, 14, 16, 17], "datafram": 5, "In": 5, "summari": [5, 41], "thetadata": 8, "yahoo": [10, 44], "broker": [11, 13, 14, 15, 17, 43], "alpaca": [12, 17, 25], "document": [12, 19, 20, 22, 45], "crypto": 13, "us": [13, 14], "ccxt": 13, "configur": [13, 14, 16, 17, 25, 196], "set": 13, "your": [13, 16, 17, 25, 26], "strategi": [13, 14, 16, 17, 25, 26, 45, 47, 166], "full": [13, 16], "interact": [14, 15, 17], "market": 14, "subscript": 14, "two": 14, "factor": 14, "authent": 14, "2fa": 14, "secondari": 14, "usernam": 14, "paper": [14, 25], "account": [14, 25, 48], "setup": 14, "legaci": [15, 17], "tradier": [16, 17], "get": [16, 25, 26], "start": [16, 25, 26], "deploy": 17, "guid": [17, 196], "platform": 17, "deploi": 17, "render": 17, "replit": 17, "secret": 17, "coinbas": 17, "kraken": 17, "environ": 17, "variabl": [17, 196], "final": 17, "step": [17, 25, 26], "entiti": 18, "asset": 19, "bar": 20, "order": [22, 142], "advanc": 22, "type": 22, "With": [22, 25], "leg": 22, "posit": 23, "fee": [24, 25], "what": 25, "i": 25, "lumiwealth": 25, "1": [25, 26], "packag": 25, "2": [25, 26], "import": 25, "follow": 25, "modul": [25, 44], "3": [25, 26], "creat": [25, 26], "an": 25, "4": 25, "api": 25, "kei": 25, "5": 25, "class": 25, "6": 25, "instanti": 25, "trader": [25, 46], "7": 25, "option": [25, 124], "8": 25, "ad": 25, "profil": 25, "improv": 25, "perform": 25, "algorithm": 26, "librari": 26, "take": 26, "bot": 26, "live": 26, "all": 26, "togeth": 26, "addit": 26, "resourc": 26, "need": 26, "extra": 26, "help": 26, "tabl": 26, "lifecycl": 27, "method": [27, 47], "def": [28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 42], "after_market_clos": 28, "refer": [28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 42], "before_market_clos": 29, "before_market_open": 30, "before_starting_trad": 31, "initi": 32, "on_abrupt_clos": 33, "on_bot_crash": 34, "on_canceled_ord": 35, "on_filled_ord": 36, "on_new_ord": 37, "on_parameters_upd": 38, "on_partially_filled_ord": 39, "on_trading_iter": 40, "trace_stat": 42, "manag": [48, 142], "self": [49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 62, 63, 64, 65, 66, 67, 68, 69, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196], "get_cash": [49, 55], "get_paramet": [50, 56, 104, 115], "get_portfolio_valu": [51, 57], "get_posit": [52, 53, 58, 59], "set_paramet": [54, 60], "chart": 61, "add_lin": [62, 66], "add_mark": [63, 67], "get_lines_df": [64, 68], "get_markers_df": [65, 69], "cancel_realtime_bar": 71, "get_historical_pric": 72, "get_historical_prices_for_asset": 73, "get_last_pric": [74, 75], "get_next_trading_dai": [76, 130, 138], "get_quot": 77, "get_realtime_bar": 78, "get_yesterday_dividend": [79, 80], "start_realtime_bar": 81, "datetim": 82, "get_datetim": [83, 92], "get_datetime_rang": [84, 93], "get_last_dai": [85, 94], "get_last_minut": [86, 95], "get_round_dai": [87, 96], "get_round_minut": [88, 97], "get_timestamp": [89, 98], "localize_datetim": [90, 99], "to_default_timezon": [91, 100], "miscellan": 101, "await_market_to_clos": [102, 113], "await_market_to_open": [103, 114], "log_messag": [105, 116], "set_market": [106, 117], "sleep": [107, 118], "update_paramet": [108, 119], "wait_for_order_execut": [109, 120], "wait_for_order_registr": [110, 121], "wait_for_orders_execut": [111, 122], "wait_for_orders_registr": [112, 123], "get_chain": [125, 126, 133, 134], "get_expir": [127, 135], "get_greek": [128, 136], "get_multipli": [129, 137], "get_strik": [131, 140], "options_expiry_to_datetime_d": [132, 141], "get_option_expiration_after_d": 139, "cancel_open_ord": [143, 154], "cancel_ord": [144, 145, 155, 156], "create_ord": [146, 157], "get_asset_potential_tot": [147, 158], "get_ord": [148, 149, 159, 160], "get_selling_ord": [150, 161], "sell_al": [151, 162], "submit_ord": [152, 153, 163, 164], "paramet": 165, "properti": 166, "cash": [167, 182], "first_iter": [168, 183], "initial_budget": [169, 184], "is_backtest": [170, 185], "last_on_trading_iteration_datetim": [171, 186], "minutes_before_clos": [172, 187], "minutes_before_open": [173, 188], "name": [174, 189], "portfolio_valu": [175, 190], "pytz": [176, 181, 191], "quote_asset": [177, 192], "sleeptim": [178, 193], "timezon": [179, 194], "unspent_monei": [180, 195], "backup": 196, "restor": 196, "It": 196, "work": 196, "benefit": 196, "var": 196, "usag": 196, "databas": 196, "storag": 196, "structur": 196}, "envversion": {"sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx": 60}, "alltitles": {"Backtesting": [[0, "backtesting"], [43, "backtesting"]], "Files Generated from Backtesting": [[0, "files-generated-from-backtesting"], [2, "files-generated-from-backtesting"]], "Contents:": [[0, null], [11, null], [18, null], [27, null], [47, null]], "Backtesting Function": [[1, "backtesting-function"]], "How To Backtest": [[2, "how-to-backtest"]], "Installing LumiBot": [[2, "installing-lumibot"]], "Choosing a Data Source": [[2, "choosing-a-data-source"]], "Running a Backtest with Polygon.io": [[2, "running-a-backtest-with-polygon-io"]], "Tearsheet HTML": [[2, "tearsheet-html"], [7, "tearsheet-html"]], "Trades Files": [[2, "trades-files"], [9, "trades-files"]], "Indicators Files": [[2, "indicators-files"], [3, "indicators-files"]], "Conclusion": [[2, "conclusion"], [17, "conclusion"]], "Logs CSV": [[4, "logs-csv"]], "Pandas (CSV or other data)": [[5, "pandas-csv-or-other-data"]], "Example Dataframe": [[5, "id1"]], "In Summary": [[5, "in-summary"]], "Polygon.io Backtesting": [[6, "polygon-io-backtesting"]], "ThetaData Backtesting": [[8, "thetadata-backtesting"]], "Yahoo": [[10, "yahoo"], [44, "module-lumibot.data_sources.yahoo_data"]], "Brokers": [[11, "brokers"]], "Alpaca": [[12, "alpaca"]], "Documentation": [[12, "module-lumibot.brokers.alpaca"], [19, "module-entities.asset"], [20, "module-entities.bars"], [22, "module-entities.order"], [45, "module-lumibot.strategies.strategy.Strategy"]], "Crypto Brokers (Using CCXT)": [[13, "crypto-brokers-using-ccxt"]], "Configuration Settings": [[13, "configuration-settings"]], "Running Your Strategy": [[13, "running-your-strategy"], [16, "running-your-strategy"]], "Full Example Strategy": [[13, "full-example-strategy"], [16, "full-example-strategy"]], "Interactive Brokers": [[14, "interactive-brokers"]], "Market Data Subscriptions": [[14, "market-data-subscriptions"]], "Two-Factor Authentication (2FA)": [[14, "two-factor-authentication-2fa"]], "Using a Secondary Username": [[14, "using-a-secondary-username"]], "Using a Paper Trading Account": [[14, "using-a-paper-trading-account"]], "Strategy Setup": [[14, "strategy-setup"]], "Interactive Brokers Configuration": [[14, "id1"], [17, "interactive-brokers-configuration"], [17, "id25"]], "Example Strategy": [[14, "example-strategy"]], "Interactive Brokers Legacy": [[15, "interactive-brokers-legacy"]], "Tradier": [[16, "tradier"]], "Getting Started": [[16, "getting-started"], [26, "getting-started"]], "Configuration": [[16, "configuration"]], "Deployment Guide": [[17, "deployment-guide"]], "Example Strategy for Deployment": [[17, "example-strategy-for-deployment"]], "Choosing Your Deployment Platform": [[17, "id1"]], "Deploying to Render": [[17, "id2"]], "Deploying to Replit": [[17, "id3"]], "Secrets Configuration": [[17, "secrets-configuration"]], "Broker Configuration": [[17, "broker-configuration"]], "Tradier Configuration": [[17, "tradier-configuration"], [17, "id21"]], "Alpaca Configuration": [[17, "alpaca-configuration"], [17, "id22"]], "Coinbase Configuration": [[17, "coinbase-configuration"], [17, "id23"]], "Kraken Configuration": [[17, "kraken-configuration"], [17, "id24"]], "Interactive Brokers-Legacy Configuration": [[17, "interactive-brokers-legacy-configuration"], [17, "id26"]], "General Environment Variables": [[17, "general-environment-variables"], [17, "id27"]], "Final Steps": [[17, "final-steps"]], "Entities": [[18, "entities"]], "Asset": [[19, "asset"]], "Bars": [[20, "bars"]], "Data": [[21, "module-entities.data"], [70, "data"]], "Order": [[22, "order"]], "Advanced Order Types": [[22, "advanced-order-types"]], "Order With Legs": [[22, "order-with-legs"]], "Position": [[23, "module-entities.position"]], "Trading Fee": [[24, "module-entities.trading_fee"]], "What is Lumibot?": [[25, "what-is-lumibot"]], "Lumiwealth": [[25, "id1"]], "Getting Started With Lumibot": [[25, "getting-started-with-lumibot"]], "Step 1: Install the Package": [[25, "step-1-install-the-package"]], "Step 2: Import the Following Modules": [[25, "step-2-import-the-following-modules"]], "Step 3: Create an Alpaca Paper Trading Account": [[25, "step-3-create-an-alpaca-paper-trading-account"]], "Step 4: Configure Your API Keys": [[25, "step-4-configure-your-api-keys"]], "Step 5: Create a Strategy Class": [[25, "step-5-create-a-strategy-class"]], "Step 6: Instantiate the Trader, Alpaca, and Strategy Classes": [[25, "step-6-instantiate-the-trader-alpaca-and-strategy-classes"]], "Step 7: Backtest the Strategy (Optional)": [[25, "step-7-backtest-the-strategy-optional"]], "Step 8: Run the Strategy": [[25, "step-8-run-the-strategy"]], "Adding Trading Fees": [[25, "adding-trading-fees"]], "Profiling to Improve Performance": [[25, "profiling-to-improve-performance"]], "Lumibot: Backtesting and Algorithmic Trading Library": [[26, "lumibot-backtesting-and-algorithmic-trading-library"]], "Step 1: Install Lumibot": [[26, "step-1-install-lumibot"]], "Step 2: Create a Strategy for Backtesting": [[26, "step-2-create-a-strategy-for-backtesting"]], "Step 3: Take Your Bot Live": [[26, "step-3-take-your-bot-live"]], "All Together": [[26, "all-together"]], "Additional Resources": [[26, "additional-resources"]], "Need Extra Help?": [[26, "need-extra-help"]], "Table of Contents": [[26, "table-of-contents"]], "Indices and tables": [[26, "indices-and-tables"]], "Lifecycle Methods": [[27, "lifecycle-methods"]], "def after_market_closes": [[28, "def-after-market-closes"]], "Reference": [[28, "reference"], [29, "reference"], [30, "reference"], [31, "reference"], [32, "reference"], [33, "reference"], [34, "reference"], [35, "reference"], [36, "reference"], [37, "reference"], [38, "reference"], [39, "reference"], [40, "reference"], [42, "reference"]], "def before_market_closes": [[29, "def-before-market-closes"]], "def before_market_opens": [[30, "def-before-market-opens"]], "def before_starting_trading": [[31, "def-before-starting-trading"]], "def initialize": [[32, "def-initialize"]], "def on_abrupt_closing": [[33, "def-on-abrupt-closing"]], "def on_bot_crash": [[34, "def-on-bot-crash"]], "def on_canceled_order": [[35, "def-on-canceled-order"]], "def on_filled_order": [[36, "def-on-filled-order"]], "def on_new_order": [[37, "def-on-new-order"]], "def on_parameters_updated": [[38, "def-on-parameters-updated"]], "def on_partially_filled_order": [[39, "def-on-partially-filled-order"]], "def on_trading_iteration": [[40, "def-on-trading-iteration"]], "Summary": [[41, "summary"]], "def trace_stats": [[42, "def-trace-stats"]], "Backtesting Broker": [[43, "module-lumibot.backtesting.backtesting_broker"]], "Data Source Backtesting": [[43, "module-lumibot.data_sources.data_source_backtesting"]], "Data Sources": [[44, "data-sources"]], "Data Source": [[44, "module-lumibot.data_sources.data_source"]], "Pandas": [[44, "module-lumibot.data_sources.pandas_data"]], "Module contents": [[44, "module-lumibot.data_sources"]], "Strategies": [[45, "strategies"]], "Traders": [[46, "traders"]], "Trader": [[46, "module-lumibot.traders.trader"]], "Strategy Methods": [[47, "strategy-methods"]], "Account Management": [[48, "account-management"]], "self.get_cash": [[49, "self-get-cash"], [55, "self-get-cash"]], "self.get_parameters": [[50, "self-get-parameters"], [56, "self-get-parameters"], [104, "self-get-parameters"], [115, "self-get-parameters"]], "self.get_portfolio_value": [[51, "self-get-portfolio-value"], [57, "self-get-portfolio-value"]], "self.get_position": [[52, "self-get-position"], [58, "self-get-position"]], "self.get_positions": [[53, "self-get-positions"], [59, "self-get-positions"]], "self.set_parameters": [[54, "self-set-parameters"], [60, "self-set-parameters"]], "Chart Functions": [[61, "chart-functions"]], "self.add_line": [[62, "self-add-line"], [66, "self-add-line"]], "self.add_marker": [[63, "self-add-marker"], [67, "self-add-marker"]], "self.get_lines_df": [[64, "self-get-lines-df"], [68, "self-get-lines-df"]], "self.get_markers_df": [[65, "self-get-markers-df"], [69, "self-get-markers-df"]], "self.cancel_realtime_bars": [[71, "self-cancel-realtime-bars"]], "self.get_historical_prices": [[72, "self-get-historical-prices"]], "self.get_historical_prices_for_assets": [[73, "self-get-historical-prices-for-assets"]], "self.get_last_price": [[74, "self-get-last-price"]], "self.get_last_prices": [[75, "self-get-last-prices"]], "self.get_next_trading_day": [[76, "self-get-next-trading-day"], [130, "self-get-next-trading-day"], [138, "self-get-next-trading-day"]], "self.get_quote": [[77, "self-get-quote"]], "self.get_realtime_bars": [[78, "self-get-realtime-bars"]], "self.get_yesterday_dividend": [[79, "self-get-yesterday-dividend"]], "self.get_yesterday_dividends": [[80, "self-get-yesterday-dividends"]], "self.start_realtime_bars": [[81, "self-start-realtime-bars"]], "DateTime": [[82, "datetime"]], "self.get_datetime": [[83, "self-get-datetime"], [92, "self-get-datetime"]], "self.get_datetime_range": [[84, "self-get-datetime-range"], [93, "self-get-datetime-range"]], "self.get_last_day": [[85, "self-get-last-day"], [94, "self-get-last-day"]], "self.get_last_minute": [[86, "self-get-last-minute"], [95, "self-get-last-minute"]], "self.get_round_day": [[87, "self-get-round-day"], [96, "self-get-round-day"]], "self.get_round_minute": [[88, "self-get-round-minute"], [97, "self-get-round-minute"]], "self.get_timestamp": [[89, "self-get-timestamp"], [98, "self-get-timestamp"]], "self.localize_datetime": [[90, "self-localize-datetime"], [99, "self-localize-datetime"]], "self.to_default_timezone": [[91, "self-to-default-timezone"], [100, "self-to-default-timezone"]], "Miscellaneous": [[101, "miscellaneous"]], "self.await_market_to_close": [[102, "self-await-market-to-close"], [113, "self-await-market-to-close"]], "self.await_market_to_open": [[103, "self-await-market-to-open"], [114, "self-await-market-to-open"]], "self.log_message": [[105, "self-log-message"], [116, "self-log-message"]], "self.set_market": [[106, "self-set-market"], [117, "self-set-market"]], "self.sleep": [[107, "self-sleep"], [118, "self-sleep"]], "self.update_parameters": [[108, "self-update-parameters"], [119, "self-update-parameters"]], "self.wait_for_order_execution": [[109, "self-wait-for-order-execution"], [120, "self-wait-for-order-execution"]], "self.wait_for_order_registration": [[110, "self-wait-for-order-registration"], [121, "self-wait-for-order-registration"]], "self.wait_for_orders_execution": [[111, "self-wait-for-orders-execution"], [122, "self-wait-for-orders-execution"]], "self.wait_for_orders_registration": [[112, "self-wait-for-orders-registration"], [123, "self-wait-for-orders-registration"]], "Options": [[124, "options"]], "self.get_chain": [[125, "self-get-chain"], [133, "self-get-chain"]], "self.get_chains": [[126, "self-get-chains"], [134, "self-get-chains"]], "self.get_expiration": [[127, "self-get-expiration"], [135, "self-get-expiration"]], "self.get_greeks": [[128, "self-get-greeks"], [136, "self-get-greeks"]], "self.get_multiplier": [[129, "self-get-multiplier"], [137, "self-get-multiplier"]], "self.get_strikes": [[131, "self-get-strikes"], [140, "self-get-strikes"]], "self.options_expiry_to_datetime_date": [[132, "self-options-expiry-to-datetime-date"], [141, "self-options-expiry-to-datetime-date"]], "self.get_option_expiration_after_date": [[139, "self-get-option-expiration-after-date"]], "Order Management": [[142, "order-management"]], "self.cancel_open_orders": [[143, "self-cancel-open-orders"], [154, "self-cancel-open-orders"]], "self.cancel_order": [[144, "self-cancel-order"], [155, "self-cancel-order"]], "self.cancel_orders": [[145, "self-cancel-orders"], [156, "self-cancel-orders"]], "self.create_order": [[146, "self-create-order"], [157, "self-create-order"]], "self.get_asset_potential_total": [[147, "self-get-asset-potential-total"], [158, "self-get-asset-potential-total"]], "self.get_order": [[148, "self-get-order"], [159, "self-get-order"]], "self.get_orders": [[149, "self-get-orders"], [160, "self-get-orders"]], "self.get_selling_order": [[150, "self-get-selling-order"], [161, "self-get-selling-order"]], "self.sell_all": [[151, "self-sell-all"], [162, "self-sell-all"]], "self.submit_order": [[152, "self-submit-order"], [163, "self-submit-order"]], "self.submit_orders": [[153, "self-submit-orders"], [164, "self-submit-orders"]], "Parameters": [[165, "parameters"]], "Strategy Properties": [[166, "strategy-properties"]], "self.cash": [[167, "self-cash"], [182, "self-cash"]], "self.first_iteration": [[168, "self-first-iteration"], [183, "self-first-iteration"]], "self.initial_budget": [[169, "self-initial-budget"], [184, "self-initial-budget"]], "self.is_backtesting": [[170, "self-is-backtesting"], [185, "self-is-backtesting"]], "self.last_on_trading_iteration_datetime": [[171, "self-last-on-trading-iteration-datetime"], [186, "self-last-on-trading-iteration-datetime"]], "self.minutes_before_closing": [[172, "self-minutes-before-closing"], [187, "self-minutes-before-closing"]], "self.minutes_before_opening": [[173, "self-minutes-before-opening"], [188, "self-minutes-before-opening"]], "self.name": [[174, "self-name"], [189, "self-name"]], "self.portfolio_value": [[175, "self-portfolio-value"], [190, "self-portfolio-value"]], "self.pytz": [[176, "self-pytz"], [181, "self-pytz"], [191, "self-pytz"]], "self.quote_asset": [[177, "self-quote-asset"], [192, "self-quote-asset"]], "self.sleeptime": [[178, "self-sleeptime"], [193, "self-sleeptime"]], "self.timezone": [[179, "self-timezone"], [194, "self-timezone"]], "self.unspent_money": [[180, "self-unspent-money"], [195, "self-unspent-money"]], "Variable Backup & Restore": [[196, "variable-backup-restore"]], "How It Works": [[196, "how-it-works"]], "Benefits of self.vars": [[196, "benefits-of-self-vars"]], "Usage Guide": [[196, "usage-guide"]], "Database Configuration": [[196, "database-configuration"]], "Database Storage Structure": [[196, "database-storage-structure"]]}, "indexentries": {"run_backtest() (in module lumibot.strategies.strategy.strategy)": [[1, "lumibot.strategies.strategy.Strategy.run_backtest"]], "asset_type_map (lumibot.brokers.alpaca.alpaca attribute)": [[12, "lumibot.brokers.alpaca.Alpaca.ASSET_TYPE_MAP"]], "alpaca (class in lumibot.brokers.alpaca)": [[12, "lumibot.brokers.alpaca.Alpaca"]], "orderdata (class in lumibot.brokers.alpaca)": [[12, "lumibot.brokers.alpaca.OrderData"]], "api (lumibot.brokers.alpaca.alpaca attribute)": [[12, "lumibot.brokers.alpaca.Alpaca.api"]], "cancel_order() (lumibot.brokers.alpaca.alpaca method)": [[12, "lumibot.brokers.alpaca.Alpaca.cancel_order"]], "get_historical_account_value() (lumibot.brokers.alpaca.alpaca method)": [[12, "lumibot.brokers.alpaca.Alpaca.get_historical_account_value"]], "get_time_to_close() (lumibot.brokers.alpaca.alpaca method)": [[12, "id0"], [12, "lumibot.brokers.alpaca.Alpaca.get_time_to_close"]], "get_time_to_open() (lumibot.brokers.alpaca.alpaca method)": [[12, "id1"], [12, "lumibot.brokers.alpaca.Alpaca.get_time_to_open"]], "get_timestamp() (lumibot.brokers.alpaca.alpaca method)": [[12, "id2"], [12, "lumibot.brokers.alpaca.Alpaca.get_timestamp"]], "is_market_open() (lumibot.brokers.alpaca.alpaca method)": [[12, "id3"], [12, "lumibot.brokers.alpaca.Alpaca.is_market_open"]], "lumibot.brokers.alpaca": [[12, "module-lumibot.brokers.alpaca"]], "map_asset_type() (lumibot.brokers.alpaca.alpaca method)": [[12, "lumibot.brokers.alpaca.Alpaca.map_asset_type"]], "module": [[12, "module-lumibot.brokers.alpaca"], [19, "module-entities.asset"], [20, "module-entities.bars"], [21, "module-entities.data"], [22, "module-entities.order"], [23, "module-entities.position"], [24, "module-entities.trading_fee"], [43, "module-lumibot.backtesting.backtesting_broker"], [43, "module-lumibot.data_sources.data_source_backtesting"], [44, "module-lumibot.data_sources"], [44, "module-lumibot.data_sources.data_source"], [44, "module-lumibot.data_sources.pandas_data"], [44, "module-lumibot.data_sources.yahoo_data"], [45, "module-lumibot.strategies.strategy.Strategy"], [46, "module-lumibot.traders.trader"]], "to_request_fields() (lumibot.brokers.alpaca.orderdata method)": [[12, "lumibot.brokers.alpaca.OrderData.to_request_fields"]], "asset (class in entities.asset)": [[19, "entities.asset.Asset"]], "asset.assettype (class in entities.asset)": [[19, "entities.asset.Asset.AssetType"]], "asset.optionright (class in entities.asset)": [[19, "entities.asset.Asset.OptionRight"]], "assetsmapping (class in entities.asset)": [[19, "entities.asset.AssetsMapping"]], "call (entities.asset.asset.optionright attribute)": [[19, "entities.asset.Asset.OptionRight.CALL"]], "crypto (entities.asset.asset.assettype attribute)": [[19, "entities.asset.Asset.AssetType.CRYPTO"]], "forex (entities.asset.asset.assettype attribute)": [[19, "entities.asset.Asset.AssetType.FOREX"]], "future (entities.asset.asset.assettype attribute)": [[19, "entities.asset.Asset.AssetType.FUTURE"]], "index (entities.asset.asset.assettype attribute)": [[19, "entities.asset.Asset.AssetType.INDEX"]], "multileg (entities.asset.asset.assettype attribute)": [[19, "entities.asset.Asset.AssetType.MULTILEG"]], "option (entities.asset.asset.assettype attribute)": [[19, "entities.asset.Asset.AssetType.OPTION"]], "put (entities.asset.asset.optionright attribute)": [[19, "entities.asset.Asset.OptionRight.PUT"]], "stock (entities.asset.asset.assettype attribute)": [[19, "entities.asset.Asset.AssetType.STOCK"]], "_asset_types (entities.asset.asset attribute)": [[19, "entities.asset.Asset._asset_types"]], "_right (entities.asset.asset attribute)": [[19, "entities.asset.Asset._right"]], "asset_type (entities.asset.asset attribute)": [[19, "entities.asset.Asset.asset_type"], [19, "id0"]], "asset_type_must_be_one_of() (entities.asset.asset method)": [[19, "entities.asset.Asset.asset_type_must_be_one_of"], [19, "id1"]], "entities.asset": [[19, "module-entities.asset"]], "expiration (entities.asset.asset attribute)": [[19, "entities.asset.Asset.expiration"], [19, "id2"]], "from_dict() (entities.asset.asset class method)": [[19, "entities.asset.Asset.from_dict"]], "is_valid() (entities.asset.asset method)": [[19, "entities.asset.Asset.is_valid"]], "multiplier (entities.asset.asset attribute)": [[19, "entities.asset.Asset.multiplier"], [19, "id3"]], "precision (entities.asset.asset attribute)": [[19, "entities.asset.Asset.precision"], [19, "id4"]], "right (entities.asset.asset attribute)": [[19, "entities.asset.Asset.right"], [19, "id5"]], "right_must_be_one_of() (entities.asset.asset method)": [[19, "entities.asset.Asset.right_must_be_one_of"], [19, "id6"]], "strike (entities.asset.asset attribute)": [[19, "entities.asset.Asset.strike"], [19, "id7"]], "symbol (entities.asset.asset attribute)": [[19, "entities.asset.Asset.symbol"], [19, "id8"]], "symbol2asset() (entities.asset.asset class method)": [[19, "entities.asset.Asset.symbol2asset"]], "to_dict() (entities.asset.asset method)": [[19, "entities.asset.Asset.to_dict"]], "underlying_asset (entities.asset.asset attribute)": [[19, "entities.asset.Asset.underlying_asset"]], "bars (class in entities.bars)": [[20, "entities.bars.Bars"]], "nobardatafound": [[20, "entities.bars.NoBarDataFound"]], "aggregate_bars() (entities.bars.bars method)": [[20, "entities.bars.Bars.aggregate_bars"], [20, "id0"]], "entities.bars": [[20, "module-entities.bars"]], "filter() (entities.bars.bars method)": [[20, "entities.bars.Bars.filter"]], "get_last_dividend() (entities.bars.bars method)": [[20, "entities.bars.Bars.get_last_dividend"], [20, "id1"]], "get_last_price() (entities.bars.bars method)": [[20, "entities.bars.Bars.get_last_price"], [20, "id2"]], "get_momentum() (entities.bars.bars method)": [[20, "entities.bars.Bars.get_momentum"], [20, "id3"]], "get_total_dividends() (entities.bars.bars method)": [[20, "entities.bars.Bars.get_total_dividends"]], "get_total_return() (entities.bars.bars method)": [[20, "entities.bars.Bars.get_total_return"]], "get_total_return_pct() (entities.bars.bars method)": [[20, "entities.bars.Bars.get_total_return_pct"]], "get_total_return_pct_change() (entities.bars.bars method)": [[20, "entities.bars.Bars.get_total_return_pct_change"]], "get_total_stock_splits() (entities.bars.bars method)": [[20, "entities.bars.Bars.get_total_stock_splits"]], "get_total_volume() (entities.bars.bars method)": [[20, "entities.bars.Bars.get_total_volume"], [20, "id4"]], "parse_bar_list() (entities.bars.bars class method)": [[20, "entities.bars.Bars.parse_bar_list"]], "split() (entities.bars.bars method)": [[20, "entities.bars.Bars.split"]], "data (class in entities.data)": [[21, "entities.data.Data"]], "min_timestep (entities.data.data attribute)": [[21, "entities.data.Data.MIN_TIMESTEP"]], "timestep_mapping (entities.data.data attribute)": [[21, "entities.data.Data.TIMESTEP_MAPPING"]], "_get_bars_dict() (entities.data.data method)": [[21, "entities.data.Data._get_bars_dict"]], "asset (entities.data.data attribute)": [[21, "entities.data.Data.asset"]], "check_data() (entities.data.data method)": [[21, "entities.data.Data.check_data"], [21, "id0"]], "columns() (entities.data.data method)": [[21, "entities.data.Data.columns"], [21, "id1"]], "datalines (entities.data.data attribute)": [[21, "entities.data.Data.datalines"]], "date_end (entities.data.data attribute)": [[21, "entities.data.Data.date_end"]], "date_start (entities.data.data attribute)": [[21, "entities.data.Data.date_start"]], "df (entities.data.data attribute)": [[21, "entities.data.Data.df"]], "entities.data": [[21, "module-entities.data"]], "get_bars() (entities.data.data method)": [[21, "entities.data.Data.get_bars"], [21, "id2"]], "get_bars_between_dates() (entities.data.data method)": [[21, "entities.data.Data.get_bars_between_dates"]], "get_iter_count() (entities.data.data method)": [[21, "entities.data.Data.get_iter_count"], [21, "id3"]], "get_last_price() (entities.data.data method)": [[21, "entities.data.Data.get_last_price"], [21, "id4"]], "get_quote() (entities.data.data method)": [[21, "entities.data.Data.get_quote"]], "iter_index (entities.data.data attribute)": [[21, "entities.data.Data.iter_index"]], "repair_times_and_fill() (entities.data.data method)": [[21, "entities.data.Data.repair_times_and_fill"], [21, "id5"]], "set_date_format() (entities.data.data method)": [[21, "entities.data.Data.set_date_format"], [21, "id6"]], "set_dates() (entities.data.data method)": [[21, "entities.data.Data.set_dates"], [21, "id7"]], "set_times() (entities.data.data method)": [[21, "entities.data.Data.set_times"], [21, "id8"]], "sybmol (entities.data.data attribute)": [[21, "entities.data.Data.sybmol"]], "timestep (entities.data.data attribute)": [[21, "entities.data.Data.timestep"]], "to_datalines() (entities.data.data method)": [[21, "entities.data.Data.to_datalines"], [21, "id9"]], "trading_hours_end (entities.data.data attribute)": [[21, "entities.data.Data.trading_hours_end"]], "trading_hours_start (entities.data.data attribute)": [[21, "entities.data.Data.trading_hours_start"]], "trim_data() (entities.data.data method)": [[21, "entities.data.Data.trim_data"], [21, "id10"]], "bracket (entities.order.order.orderclass attribute)": [[22, "entities.order.Order.OrderClass.BRACKET"]], "bracket (entities.order.order.ordertype attribute)": [[22, "entities.order.Order.OrderType.BRACKET"]], "buy (entities.order.order.orderside attribute)": [[22, "entities.order.Order.OrderSide.BUY"]], "buy_to_close (entities.order.order.orderside attribute)": [[22, "entities.order.Order.OrderSide.BUY_TO_CLOSE"]], "buy_to_cover (entities.order.order.orderside attribute)": [[22, "entities.order.Order.OrderSide.BUY_TO_COVER"]], "buy_to_open (entities.order.order.orderside attribute)": [[22, "entities.order.Order.OrderSide.BUY_TO_OPEN"]], "canceled (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.CANCELED"]], "cancelling (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.CANCELLING"]], "cash_settled (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.CASH_SETTLED"]], "error (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.ERROR"]], "expired (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.EXPIRED"]], "filled (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.FILLED"]], "limit (entities.order.order.ordertype attribute)": [[22, "entities.order.Order.OrderType.LIMIT"]], "market (entities.order.order.ordertype attribute)": [[22, "entities.order.Order.OrderType.MARKET"]], "multileg (entities.order.order.orderclass attribute)": [[22, "entities.order.Order.OrderClass.MULTILEG"]], "new (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.NEW"]], "oco (entities.order.order.orderclass attribute)": [[22, "entities.order.Order.OrderClass.OCO"]], "oco (entities.order.order.ordertype attribute)": [[22, "entities.order.Order.OrderType.OCO"]], "open (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.OPEN"]], "oto (entities.order.order.orderclass attribute)": [[22, "entities.order.Order.OrderClass.OTO"]], "oto (entities.order.order.ordertype attribute)": [[22, "entities.order.Order.OrderType.OTO"]], "order (class in entities.order)": [[22, "entities.order.Order"]], "order.orderclass (class in entities.order)": [[22, "entities.order.Order.OrderClass"]], "order.orderside (class in entities.order)": [[22, "entities.order.Order.OrderSide"]], "order.orderstatus (class in entities.order)": [[22, "entities.order.Order.OrderStatus"]], "order.ordertype (class in entities.order)": [[22, "entities.order.Order.OrderType"]], "order.transaction (class in entities.order)": [[22, "entities.order.Order.Transaction"]], "partially_filled (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.PARTIALLY_FILLED"]], "sell (entities.order.order.orderside attribute)": [[22, "entities.order.Order.OrderSide.SELL"]], "sell_short (entities.order.order.orderside attribute)": [[22, "entities.order.Order.OrderSide.SELL_SHORT"]], "sell_to_close (entities.order.order.orderside attribute)": [[22, "entities.order.Order.OrderSide.SELL_TO_CLOSE"]], "sell_to_open (entities.order.order.orderside attribute)": [[22, "entities.order.Order.OrderSide.SELL_TO_OPEN"]], "stop (entities.order.order.ordertype attribute)": [[22, "entities.order.Order.OrderType.STOP"]], "stop_limit (entities.order.order.ordertype attribute)": [[22, "entities.order.Order.OrderType.STOP_LIMIT"]], "submitted (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.SUBMITTED"]], "trail (entities.order.order.ordertype attribute)": [[22, "entities.order.Order.OrderType.TRAIL"]], "unprocessed (entities.order.order.orderstatus attribute)": [[22, "entities.order.Order.OrderStatus.UNPROCESSED"]], "add_child_order() (entities.order.order method)": [[22, "entities.order.Order.add_child_order"]], "add_transaction() (entities.order.order method)": [[22, "entities.order.Order.add_transaction"]], "avg_fill_price (entities.order.order property)": [[22, "entities.order.Order.avg_fill_price"]], "cash_pending() (entities.order.order method)": [[22, "entities.order.Order.cash_pending"]], "entities.order": [[22, "module-entities.order"]], "equivalent_status() (entities.order.order method)": [[22, "entities.order.Order.equivalent_status"]], "from_dict() (entities.order.order class method)": [[22, "entities.order.Order.from_dict"]], "get_fill_price() (entities.order.order method)": [[22, "entities.order.Order.get_fill_price"]], "get_increment() (entities.order.order method)": [[22, "entities.order.Order.get_increment"]], "is_active() (entities.order.order method)": [[22, "entities.order.Order.is_active"]], "is_buy_order() (entities.order.order method)": [[22, "entities.order.Order.is_buy_order"]], "is_canceled() (entities.order.order method)": [[22, "entities.order.Order.is_canceled"]], "is_equivalent_status() (entities.order.order class method)": [[22, "entities.order.Order.is_equivalent_status"]], "is_filled() (entities.order.order method)": [[22, "entities.order.Order.is_filled"]], "is_option() (entities.order.order method)": [[22, "entities.order.Order.is_option"]], "is_parent() (entities.order.order method)": [[22, "entities.order.Order.is_parent"]], "is_sell_order() (entities.order.order method)": [[22, "entities.order.Order.is_sell_order"]], "price (entities.order.order.transaction attribute)": [[22, "entities.order.Order.Transaction.price"]], "quantity (entities.order.order property)": [[22, "entities.order.Order.quantity"]], "quantity (entities.order.order.transaction attribute)": [[22, "entities.order.Order.Transaction.quantity"]], "set_canceled() (entities.order.order method)": [[22, "entities.order.Order.set_canceled"]], "set_error() (entities.order.order method)": [[22, "entities.order.Order.set_error"]], "set_filled() (entities.order.order method)": [[22, "entities.order.Order.set_filled"]], "set_identifier() (entities.order.order method)": [[22, "entities.order.Order.set_identifier"]], "set_new() (entities.order.order method)": [[22, "entities.order.Order.set_new"]], "set_partially_filled() (entities.order.order method)": [[22, "entities.order.Order.set_partially_filled"]], "status (entities.order.order property)": [[22, "entities.order.Order.status"]], "to_dict() (entities.order.order method)": [[22, "entities.order.Order.to_dict"]], "to_position() (entities.order.order method)": [[22, "entities.order.Order.to_position"]], "update_raw() (entities.order.order method)": [[22, "entities.order.Order.update_raw"]], "update_trail_stop_price() (entities.order.order method)": [[22, "entities.order.Order.update_trail_stop_price"]], "wait_to_be_closed() (entities.order.order method)": [[22, "entities.order.Order.wait_to_be_closed"]], "wait_to_be_registered() (entities.order.order method)": [[22, "entities.order.Order.wait_to_be_registered"]], "was_transmitted() (entities.order.order method)": [[22, "entities.order.Order.was_transmitted"]], "position (class in entities.position)": [[23, "entities.position.Position"]], "add_order() (entities.position.position method)": [[23, "entities.position.Position.add_order"]], "asset (entities.position.position attribute)": [[23, "entities.position.Position.asset"]], "available (entities.position.position attribute)": [[23, "entities.position.Position.available"]], "available (entities.position.position property)": [[23, "id0"]], "avg_fill_price (entities.position.position attribute)": [[23, "entities.position.Position.avg_fill_price"]], "entities.position": [[23, "module-entities.position"]], "from_dict() (entities.position.position class method)": [[23, "entities.position.Position.from_dict"]], "get_selling_order() (entities.position.position method)": [[23, "entities.position.Position.get_selling_order"]], "hold (entities.position.position attribute)": [[23, "entities.position.Position.hold"]], "hold (entities.position.position property)": [[23, "id1"]], "orders (entities.position.position attribute)": [[23, "entities.position.Position.orders"]], "quantity (entities.position.position attribute)": [[23, "entities.position.Position.quantity"]], "quantity (entities.position.position property)": [[23, "id2"]], "strategy (entities.position.position attribute)": [[23, "entities.position.Position.strategy"]], "symbol (entities.position.position attribute)": [[23, "entities.position.Position.symbol"]], "to_dict() (entities.position.position method)": [[23, "entities.position.Position.to_dict"]], "value_type() (entities.position.position method)": [[23, "entities.position.Position.value_type"]], "tradingfee (class in entities.trading_fee)": [[24, "entities.trading_fee.TradingFee"]], "entities.trading_fee": [[24, "module-entities.trading_fee"]], "after_market_closes() (in module lumibot.strategies.strategy.strategy)": [[28, "lumibot.strategies.strategy.Strategy.after_market_closes"]], "before_market_closes() (in module lumibot.strategies.strategy.strategy)": [[29, "lumibot.strategies.strategy.Strategy.before_market_closes"]], "before_market_opens() (in module lumibot.strategies.strategy.strategy)": [[30, "lumibot.strategies.strategy.Strategy.before_market_opens"]], "before_starting_trading() (in module lumibot.strategies.strategy.strategy)": [[31, "lumibot.strategies.strategy.Strategy.before_starting_trading"]], "initialize() (in module lumibot.strategies.strategy.strategy)": [[32, "lumibot.strategies.strategy.Strategy.initialize"]], "on_abrupt_closing() (in module lumibot.strategies.strategy.strategy)": [[33, "lumibot.strategies.strategy.Strategy.on_abrupt_closing"]], "on_bot_crash() (in module lumibot.strategies.strategy.strategy)": [[34, "lumibot.strategies.strategy.Strategy.on_bot_crash"]], "on_canceled_order() (in module lumibot.strategies.strategy.strategy)": [[35, "lumibot.strategies.strategy.Strategy.on_canceled_order"]], "on_filled_order() (in module lumibot.strategies.strategy.strategy)": [[36, "lumibot.strategies.strategy.Strategy.on_filled_order"]], "on_new_order() (in module lumibot.strategies.strategy.strategy)": [[37, "lumibot.strategies.strategy.Strategy.on_new_order"]], "on_parameters_updated() (in module lumibot.strategies.strategy.strategy)": [[38, "lumibot.strategies.strategy.Strategy.on_parameters_updated"]], "on_partially_filled_order() (in module lumibot.strategies.strategy.strategy)": [[39, "lumibot.strategies.strategy.Strategy.on_partially_filled_order"]], "on_trading_iteration() (in module lumibot.strategies.strategy.strategy)": [[40, "lumibot.strategies.strategy.Strategy.on_trading_iteration"]], "trace_stats() (in module lumibot.strategies.strategy.strategy)": [[42, "lumibot.strategies.strategy.Strategy.trace_stats"]], "backtestingbroker (class in lumibot.backtesting.backtesting_broker)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker"]], "datasourcebacktesting (class in lumibot.data_sources.data_source_backtesting)": [[43, "lumibot.data_sources.data_source_backtesting.DataSourceBacktesting"]], "is_backtesting_broker (lumibot.backtesting.backtesting_broker.backtestingbroker attribute)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.IS_BACKTESTING_BROKER"]], "is_backtesting_data_source (lumibot.data_sources.data_source_backtesting.datasourcebacktesting attribute)": [[43, "lumibot.data_sources.data_source_backtesting.DataSourceBacktesting.IS_BACKTESTING_DATA_SOURCE"]], "calculate_trade_cost() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.calculate_trade_cost"]], "cancel_order() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.cancel_order"]], "cash_settle_options_contract() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.cash_settle_options_contract"]], "datetime (lumibot.backtesting.backtesting_broker.backtestingbroker property)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.datetime"]], "get_datetime() (lumibot.data_sources.data_source_backtesting.datasourcebacktesting method)": [[43, "lumibot.data_sources.data_source_backtesting.DataSourceBacktesting.get_datetime"]], "get_datetime_range() (lumibot.data_sources.data_source_backtesting.datasourcebacktesting method)": [[43, "lumibot.data_sources.data_source_backtesting.DataSourceBacktesting.get_datetime_range"]], "get_historical_account_value() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.get_historical_account_value"]], "get_last_bar() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.get_last_bar"]], "get_time_to_close() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.get_time_to_close"]], "get_time_to_open() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.get_time_to_open"]], "is_market_open() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.is_market_open"]], "limit_order() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.limit_order"]], "lumibot.backtesting.backtesting_broker": [[43, "module-lumibot.backtesting.backtesting_broker"]], "lumibot.data_sources.data_source_backtesting": [[43, "module-lumibot.data_sources.data_source_backtesting"]], "process_expired_option_contracts() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.process_expired_option_contracts"]], "process_pending_orders() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.process_pending_orders"]], "should_continue() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.should_continue"]], "stop_order() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.stop_order"]], "submit_order() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.submit_order"]], "submit_orders() (lumibot.backtesting.backtesting_broker.backtestingbroker method)": [[43, "lumibot.backtesting.backtesting_broker.BacktestingBroker.submit_orders"]], "default_pytz (lumibot.data_sources.data_source.datasource attribute)": [[44, "lumibot.data_sources.data_source.DataSource.DEFAULT_PYTZ"]], "default_timezone (lumibot.data_sources.data_source.datasource attribute)": [[44, "lumibot.data_sources.data_source.DataSource.DEFAULT_TIMEZONE"]], "datasource (class in lumibot.data_sources.data_source)": [[44, "lumibot.data_sources.data_source.DataSource"]], "is_backtesting_data_source (lumibot.data_sources.data_source.datasource attribute)": [[44, "lumibot.data_sources.data_source.DataSource.IS_BACKTESTING_DATA_SOURCE"]], "min_timestep (lumibot.data_sources.data_source.datasource attribute)": [[44, "lumibot.data_sources.data_source.DataSource.MIN_TIMESTEP"]], "min_timestep (lumibot.data_sources.yahoo_data.yahoodata attribute)": [[44, "lumibot.data_sources.yahoo_data.YahooData.MIN_TIMESTEP"]], "pandasdata (class in lumibot.data_sources.pandas_data)": [[44, "lumibot.data_sources.pandas_data.PandasData"]], "source (lumibot.data_sources.data_source.datasource attribute)": [[44, "lumibot.data_sources.data_source.DataSource.SOURCE"]], "source (lumibot.data_sources.pandas_data.pandasdata attribute)": [[44, "lumibot.data_sources.pandas_data.PandasData.SOURCE"]], "source (lumibot.data_sources.yahoo_data.yahoodata attribute)": [[44, "lumibot.data_sources.yahoo_data.YahooData.SOURCE"]], "timestep_mapping (lumibot.data_sources.data_source.datasource attribute)": [[44, "lumibot.data_sources.data_source.DataSource.TIMESTEP_MAPPING"]], "timestep_mapping (lumibot.data_sources.pandas_data.pandasdata attribute)": [[44, "lumibot.data_sources.pandas_data.PandasData.TIMESTEP_MAPPING"]], "timestep_mapping (lumibot.data_sources.yahoo_data.yahoodata attribute)": [[44, "lumibot.data_sources.yahoo_data.YahooData.TIMESTEP_MAPPING"]], "yahoodata (class in lumibot.data_sources.yahoo_data)": [[44, "lumibot.data_sources.yahoo_data.YahooData"]], "calculate_greeks() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.calculate_greeks"]], "clean_trading_times() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.clean_trading_times"]], "convert_timestep_str_to_timedelta() (lumibot.data_sources.data_source.datasource static method)": [[44, "lumibot.data_sources.data_source.DataSource.convert_timestep_str_to_timedelta"]], "find_asset_in_data_store() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.find_asset_in_data_store"]], "get_asset_by_name() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_asset_by_name"]], "get_asset_by_symbol() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_asset_by_symbol"]], "get_assets() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_assets"]], "get_bars() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_bars"]], "get_chains() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_chains"]], "get_chains() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_chains"]], "get_chains() (lumibot.data_sources.yahoo_data.yahoodata method)": [[44, "lumibot.data_sources.yahoo_data.YahooData.get_chains"]], "get_datetime() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_datetime"]], "get_datetime_range() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_datetime_range"]], "get_historical_prices() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_historical_prices"]], "get_historical_prices() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_historical_prices"]], "get_historical_prices() (lumibot.data_sources.yahoo_data.yahoodata method)": [[44, "lumibot.data_sources.yahoo_data.YahooData.get_historical_prices"]], "get_last_day() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_last_day"]], "get_last_minute() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_last_minute"]], "get_last_price() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_last_price"]], "get_last_price() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_last_price"]], "get_last_price() (lumibot.data_sources.yahoo_data.yahoodata method)": [[44, "lumibot.data_sources.yahoo_data.YahooData.get_last_price"]], "get_last_prices() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_last_prices"]], "get_last_prices() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_last_prices"]], "get_round_day() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_round_day"]], "get_round_minute() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_round_minute"]], "get_start_datetime_and_ts_unit() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_start_datetime_and_ts_unit"]], "get_strikes() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_strikes"]], "get_strikes() (lumibot.data_sources.yahoo_data.yahoodata method)": [[44, "lumibot.data_sources.yahoo_data.YahooData.get_strikes"]], "get_timestamp() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_timestamp"]], "get_timestep() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_timestep"]], "get_trading_days_pandas() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_trading_days_pandas"]], "get_yesterday_dividend() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_yesterday_dividend"]], "get_yesterday_dividend() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_yesterday_dividend"]], "get_yesterday_dividends() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.get_yesterday_dividends"]], "get_yesterday_dividends() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.get_yesterday_dividends"]], "load_data() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.load_data"]], "localize_datetime() (lumibot.data_sources.data_source.datasource class method)": [[44, "lumibot.data_sources.data_source.DataSource.localize_datetime"]], "lumibot.data_sources": [[44, "module-lumibot.data_sources"]], "lumibot.data_sources.data_source": [[44, "module-lumibot.data_sources.data_source"]], "lumibot.data_sources.pandas_data": [[44, "module-lumibot.data_sources.pandas_data"]], "lumibot.data_sources.yahoo_data": [[44, "module-lumibot.data_sources.yahoo_data"]], "query_greeks() (lumibot.data_sources.data_source.datasource method)": [[44, "lumibot.data_sources.data_source.DataSource.query_greeks"]], "to_default_timezone() (lumibot.data_sources.data_source.datasource class method)": [[44, "lumibot.data_sources.data_source.DataSource.to_default_timezone"]], "update_date_index() (lumibot.data_sources.pandas_data.pandasdata method)": [[44, "lumibot.data_sources.pandas_data.PandasData.update_date_index"]], "lumibot.strategies.strategy.strategy": [[45, "module-lumibot.strategies.strategy.Strategy"]], "trader (class in lumibot.traders.trader)": [[46, "lumibot.traders.trader.Trader"]], "add_strategy() (lumibot.traders.trader.trader method)": [[46, "lumibot.traders.trader.Trader.add_strategy"]], "is_backtest_broker (lumibot.traders.trader.trader property)": [[46, "lumibot.traders.trader.Trader.is_backtest_broker"]], "lumibot.traders.trader": [[46, "module-lumibot.traders.trader"]], "run_all() (lumibot.traders.trader.trader method)": [[46, "lumibot.traders.trader.Trader.run_all"]], "run_all_async() (lumibot.traders.trader.trader method)": [[46, "lumibot.traders.trader.Trader.run_all_async"]], "stop_all() (lumibot.traders.trader.trader method)": [[46, "lumibot.traders.trader.Trader.stop_all"]], "get_cash() (in module lumibot.strategies.strategy.strategy)": [[49, "lumibot.strategies.strategy.Strategy.get_cash"], [55, "lumibot.strategies.strategy.Strategy.get_cash"]], "get_parameters() (in module lumibot.strategies.strategy.strategy)": [[50, "lumibot.strategies.strategy.Strategy.get_parameters"], [56, "lumibot.strategies.strategy.Strategy.get_parameters"], [104, "lumibot.strategies.strategy.Strategy.get_parameters"], [115, "lumibot.strategies.strategy.Strategy.get_parameters"]], "get_portfolio_value() (in module lumibot.strategies.strategy.strategy)": [[51, "lumibot.strategies.strategy.Strategy.get_portfolio_value"], [57, "lumibot.strategies.strategy.Strategy.get_portfolio_value"]], "get_position() (in module lumibot.strategies.strategy.strategy)": [[52, "lumibot.strategies.strategy.Strategy.get_position"], [58, "lumibot.strategies.strategy.Strategy.get_position"]], "get_positions() (in module lumibot.strategies.strategy.strategy)": [[53, "lumibot.strategies.strategy.Strategy.get_positions"], [59, "lumibot.strategies.strategy.Strategy.get_positions"]], "set_parameters() (in module lumibot.strategies.strategy.strategy)": [[54, "lumibot.strategies.strategy.Strategy.set_parameters"], [60, "lumibot.strategies.strategy.Strategy.set_parameters"]], "add_line() (in module lumibot.strategies.strategy.strategy)": [[62, "lumibot.strategies.strategy.Strategy.add_line"], [66, "lumibot.strategies.strategy.Strategy.add_line"]], "add_marker() (in module lumibot.strategies.strategy.strategy)": [[63, "lumibot.strategies.strategy.Strategy.add_marker"], [67, "lumibot.strategies.strategy.Strategy.add_marker"]], "get_lines_df() (in module lumibot.strategies.strategy.strategy)": [[64, "lumibot.strategies.strategy.Strategy.get_lines_df"], [68, "lumibot.strategies.strategy.Strategy.get_lines_df"]], "get_markers_df() (in module lumibot.strategies.strategy.strategy)": [[65, "lumibot.strategies.strategy.Strategy.get_markers_df"], [69, "lumibot.strategies.strategy.Strategy.get_markers_df"]], "cancel_realtime_bars() (in module lumibot.strategies.strategy.strategy)": [[71, "lumibot.strategies.strategy.Strategy.cancel_realtime_bars"]], "get_historical_prices() (in module lumibot.strategies.strategy.strategy)": [[72, "lumibot.strategies.strategy.Strategy.get_historical_prices"]], "get_historical_prices_for_assets() (in module lumibot.strategies.strategy.strategy)": [[73, "lumibot.strategies.strategy.Strategy.get_historical_prices_for_assets"]], "get_last_price() (in module lumibot.strategies.strategy.strategy)": [[74, "lumibot.strategies.strategy.Strategy.get_last_price"]], "get_last_prices() (in module lumibot.strategies.strategy.strategy)": [[75, "lumibot.strategies.strategy.Strategy.get_last_prices"]], "get_next_trading_day() (in module lumibot.strategies.strategy.strategy)": [[76, "lumibot.strategies.strategy.Strategy.get_next_trading_day"], [130, "lumibot.strategies.strategy.Strategy.get_next_trading_day"], [138, "lumibot.strategies.strategy.Strategy.get_next_trading_day"]], "get_quote() (in module lumibot.strategies.strategy.strategy)": [[77, "lumibot.strategies.strategy.Strategy.get_quote"]], "get_realtime_bars() (in module lumibot.strategies.strategy.strategy)": [[78, "lumibot.strategies.strategy.Strategy.get_realtime_bars"]], "get_yesterday_dividend() (in module lumibot.strategies.strategy.strategy)": [[79, "lumibot.strategies.strategy.Strategy.get_yesterday_dividend"]], "get_yesterday_dividends() (in module lumibot.strategies.strategy.strategy)": [[80, "lumibot.strategies.strategy.Strategy.get_yesterday_dividends"]], "start_realtime_bars() (in module lumibot.strategies.strategy.strategy)": [[81, "lumibot.strategies.strategy.Strategy.start_realtime_bars"]], "get_datetime() (in module lumibot.strategies.strategy.strategy)": [[83, "lumibot.strategies.strategy.Strategy.get_datetime"], [92, "lumibot.strategies.strategy.Strategy.get_datetime"]], "get_datetime_range() (in module lumibot.strategies.strategy.strategy)": [[84, "lumibot.strategies.strategy.Strategy.get_datetime_range"], [93, "lumibot.strategies.strategy.Strategy.get_datetime_range"]], "get_last_day() (in module lumibot.strategies.strategy.strategy)": [[85, "lumibot.strategies.strategy.Strategy.get_last_day"], [94, "lumibot.strategies.strategy.Strategy.get_last_day"]], "get_last_minute() (in module lumibot.strategies.strategy.strategy)": [[86, "lumibot.strategies.strategy.Strategy.get_last_minute"], [95, "lumibot.strategies.strategy.Strategy.get_last_minute"]], "get_round_day() (in module lumibot.strategies.strategy.strategy)": [[87, "lumibot.strategies.strategy.Strategy.get_round_day"], [96, "lumibot.strategies.strategy.Strategy.get_round_day"]], "get_round_minute() (in module lumibot.strategies.strategy.strategy)": [[88, "lumibot.strategies.strategy.Strategy.get_round_minute"], [97, "lumibot.strategies.strategy.Strategy.get_round_minute"]], "get_timestamp() (in module lumibot.strategies.strategy.strategy)": [[89, "lumibot.strategies.strategy.Strategy.get_timestamp"], [98, "lumibot.strategies.strategy.Strategy.get_timestamp"]], "localize_datetime() (in module lumibot.strategies.strategy.strategy)": [[90, "lumibot.strategies.strategy.Strategy.localize_datetime"], [99, "lumibot.strategies.strategy.Strategy.localize_datetime"]], "to_default_timezone() (in module lumibot.strategies.strategy.strategy)": [[91, "lumibot.strategies.strategy.Strategy.to_default_timezone"], [100, "lumibot.strategies.strategy.Strategy.to_default_timezone"]], "await_market_to_close() (in module lumibot.strategies.strategy.strategy)": [[102, "lumibot.strategies.strategy.Strategy.await_market_to_close"], [113, "lumibot.strategies.strategy.Strategy.await_market_to_close"]], "await_market_to_open() (in module lumibot.strategies.strategy.strategy)": [[103, "lumibot.strategies.strategy.Strategy.await_market_to_open"], [114, "lumibot.strategies.strategy.Strategy.await_market_to_open"]], "log_message() (in module lumibot.strategies.strategy.strategy)": [[105, "lumibot.strategies.strategy.Strategy.log_message"], [116, "lumibot.strategies.strategy.Strategy.log_message"]], "set_market() (in module lumibot.strategies.strategy.strategy)": [[106, "lumibot.strategies.strategy.Strategy.set_market"], [117, "lumibot.strategies.strategy.Strategy.set_market"]], "sleep() (in module lumibot.strategies.strategy.strategy)": [[107, "lumibot.strategies.strategy.Strategy.sleep"], [118, "lumibot.strategies.strategy.Strategy.sleep"]], "update_parameters() (in module lumibot.strategies.strategy.strategy)": [[108, "lumibot.strategies.strategy.Strategy.update_parameters"], [119, "lumibot.strategies.strategy.Strategy.update_parameters"]], "wait_for_order_execution() (in module lumibot.strategies.strategy.strategy)": [[109, "lumibot.strategies.strategy.Strategy.wait_for_order_execution"], [120, "lumibot.strategies.strategy.Strategy.wait_for_order_execution"]], "wait_for_order_registration() (in module lumibot.strategies.strategy.strategy)": [[110, "lumibot.strategies.strategy.Strategy.wait_for_order_registration"], [121, "lumibot.strategies.strategy.Strategy.wait_for_order_registration"]], "wait_for_orders_execution() (in module lumibot.strategies.strategy.strategy)": [[111, "lumibot.strategies.strategy.Strategy.wait_for_orders_execution"], [122, "lumibot.strategies.strategy.Strategy.wait_for_orders_execution"]], "wait_for_orders_registration() (in module lumibot.strategies.strategy.strategy)": [[112, "lumibot.strategies.strategy.Strategy.wait_for_orders_registration"], [123, "lumibot.strategies.strategy.Strategy.wait_for_orders_registration"]], "get_chain() (in module lumibot.strategies.strategy.strategy)": [[125, "lumibot.strategies.strategy.Strategy.get_chain"], [133, "lumibot.strategies.strategy.Strategy.get_chain"]], "get_chains() (in module lumibot.strategies.strategy.strategy)": [[126, "lumibot.strategies.strategy.Strategy.get_chains"], [134, "lumibot.strategies.strategy.Strategy.get_chains"]], "get_expiration() (in module lumibot.strategies.strategy.strategy)": [[127, "lumibot.strategies.strategy.Strategy.get_expiration"], [135, "lumibot.strategies.strategy.Strategy.get_expiration"]], "get_greeks() (in module lumibot.strategies.strategy.strategy)": [[128, "lumibot.strategies.strategy.Strategy.get_greeks"], [136, "lumibot.strategies.strategy.Strategy.get_greeks"]], "get_multiplier() (in module lumibot.strategies.strategy.strategy)": [[129, "lumibot.strategies.strategy.Strategy.get_multiplier"], [137, "lumibot.strategies.strategy.Strategy.get_multiplier"]], "get_strikes() (in module lumibot.strategies.strategy.strategy)": [[131, "lumibot.strategies.strategy.Strategy.get_strikes"], [140, "lumibot.strategies.strategy.Strategy.get_strikes"]], "options_expiry_to_datetime_date() (in module lumibot.strategies.strategy.strategy)": [[132, "lumibot.strategies.strategy.Strategy.options_expiry_to_datetime_date"], [141, "lumibot.strategies.strategy.Strategy.options_expiry_to_datetime_date"]], "get_option_expiration_after_date() (in module lumibot.strategies.strategy.strategy)": [[139, "lumibot.strategies.strategy.Strategy.get_option_expiration_after_date"]], "cancel_open_orders() (in module lumibot.strategies.strategy.strategy)": [[143, "lumibot.strategies.strategy.Strategy.cancel_open_orders"], [154, "lumibot.strategies.strategy.Strategy.cancel_open_orders"]], "cancel_order() (in module lumibot.strategies.strategy.strategy)": [[144, "lumibot.strategies.strategy.Strategy.cancel_order"], [155, "lumibot.strategies.strategy.Strategy.cancel_order"]], "cancel_orders() (in module lumibot.strategies.strategy.strategy)": [[145, "lumibot.strategies.strategy.Strategy.cancel_orders"], [156, "lumibot.strategies.strategy.Strategy.cancel_orders"]], "create_order() (in module lumibot.strategies.strategy.strategy)": [[146, "lumibot.strategies.strategy.Strategy.create_order"], [157, "lumibot.strategies.strategy.Strategy.create_order"]], "get_asset_potential_total() (in module lumibot.strategies.strategy.strategy)": [[147, "lumibot.strategies.strategy.Strategy.get_asset_potential_total"], [158, "lumibot.strategies.strategy.Strategy.get_asset_potential_total"]], "get_order() (in module lumibot.strategies.strategy.strategy)": [[148, "lumibot.strategies.strategy.Strategy.get_order"], [159, "lumibot.strategies.strategy.Strategy.get_order"]], "get_orders() (in module lumibot.strategies.strategy.strategy)": [[149, "lumibot.strategies.strategy.Strategy.get_orders"], [160, "lumibot.strategies.strategy.Strategy.get_orders"]], "get_selling_order() (in module lumibot.strategies.strategy.strategy)": [[150, "lumibot.strategies.strategy.Strategy.get_selling_order"], [161, "lumibot.strategies.strategy.Strategy.get_selling_order"]], "sell_all() (in module lumibot.strategies.strategy.strategy)": [[151, "lumibot.strategies.strategy.Strategy.sell_all"], [162, "lumibot.strategies.strategy.Strategy.sell_all"]], "submit_order() (in module lumibot.strategies.strategy.strategy)": [[152, "lumibot.strategies.strategy.Strategy.submit_order"], [163, "lumibot.strategies.strategy.Strategy.submit_order"]], "submit_orders() (in module lumibot.strategies.strategy.strategy)": [[153, "lumibot.strategies.strategy.Strategy.submit_orders"], [164, "lumibot.strategies.strategy.Strategy.submit_orders"]], "cash (lumibot.strategies.strategy.strategy property)": [[167, "lumibot.strategies.strategy.Strategy.cash"], [182, "lumibot.strategies.strategy.Strategy.cash"]], "first_iteration (lumibot.strategies.strategy.strategy property)": [[168, "lumibot.strategies.strategy.Strategy.first_iteration"], [183, "lumibot.strategies.strategy.Strategy.first_iteration"]], "initial_budget (lumibot.strategies.strategy.strategy property)": [[169, "lumibot.strategies.strategy.Strategy.initial_budget"], [184, "lumibot.strategies.strategy.Strategy.initial_budget"]], "is_backtesting (lumibot.strategies.strategy.strategy property)": [[170, "lumibot.strategies.strategy.Strategy.is_backtesting"], [185, "lumibot.strategies.strategy.Strategy.is_backtesting"]], "last_on_trading_iteration_datetime (lumibot.strategies.strategy.strategy property)": [[171, "lumibot.strategies.strategy.Strategy.last_on_trading_iteration_datetime"], [186, "lumibot.strategies.strategy.Strategy.last_on_trading_iteration_datetime"]], "minutes_before_closing (lumibot.strategies.strategy.strategy property)": [[172, "lumibot.strategies.strategy.Strategy.minutes_before_closing"], [187, "lumibot.strategies.strategy.Strategy.minutes_before_closing"]], "minutes_before_opening (lumibot.strategies.strategy.strategy property)": [[173, "lumibot.strategies.strategy.Strategy.minutes_before_opening"], [188, "lumibot.strategies.strategy.Strategy.minutes_before_opening"]], "name (lumibot.strategies.strategy.strategy property)": [[174, "lumibot.strategies.strategy.Strategy.name"], [189, "lumibot.strategies.strategy.Strategy.name"]], "portfolio_value (lumibot.strategies.strategy.strategy property)": [[175, "lumibot.strategies.strategy.Strategy.portfolio_value"], [190, "lumibot.strategies.strategy.Strategy.portfolio_value"]], "pytz (lumibot.strategies.strategy.strategy property)": [[176, "lumibot.strategies.strategy.Strategy.pytz"], [181, "lumibot.strategies.strategy.Strategy.pytz"], [191, "lumibot.strategies.strategy.Strategy.pytz"]], "quote_asset (lumibot.strategies.strategy.strategy property)": [[177, "lumibot.strategies.strategy.Strategy.quote_asset"], [192, "lumibot.strategies.strategy.Strategy.quote_asset"]], "sleeptime (lumibot.strategies.strategy.strategy property)": [[178, "lumibot.strategies.strategy.Strategy.sleeptime"], [193, "lumibot.strategies.strategy.Strategy.sleeptime"]], "timezone (lumibot.strategies.strategy.strategy property)": [[179, "lumibot.strategies.strategy.Strategy.timezone"], [194, "lumibot.strategies.strategy.Strategy.timezone"]], "unspent_money (lumibot.strategies.strategy.strategy property)": [[180, "lumibot.strategies.strategy.Strategy.unspent_money"], [195, "lumibot.strategies.strategy.Strategy.unspent_money"]]}}) \ No newline at end of file diff --git a/docsrc/deployment.rst b/docsrc/deployment.rst index 9c309f114..001ee9759 100644 --- a/docsrc/deployment.rst +++ b/docsrc/deployment.rst @@ -414,6 +414,9 @@ In addition to broker-specific secrets, the following environment variables are * - **Secret** - **Description** - **Example** + * - LUMIWEALTH_API_KEY + - Your API key from the BotSpot.trade website so that you can track your bot's performance. To get this API key, visit the `BotSpot.trade `_ website and add/create a bot. After creating the bot, you will receive an API key. + - 694rr2c8d9234b43a40fab494a79f5634ghd4f39d44ccf2e * - LIVE_CONFIG - Your live config file, only needed for strategies that have multiple configurations (there will be a folder named "configurations" in the src/ folder) and if you are running the strategy live. - paper_1

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≫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 z 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 QlHOm}!6DPxR89H+0lcf~vj6}9 literal 3729845 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%0Aae5*ql^|9ZCH7JZ{ z`xM6G+M=F|ikE_4cuYc2IUa4r?hkTGe3WO+ zNd7=+nnJ-cI-JXm%7ZYmLNjYu<_DtvlHS%IEAmR|JJbJ#iR(87yYI$t0*2YC-ma>4 zMB>qEH3k#>J7d77K)W`%sNc%uS}Cw*wj4LGjF{*$!9=g;uA~@E`%ILi!_L4e$l4%X z*5iWN;A;AN11^$z-%1k6sbjHI%kZT@@NeMV<|&gX^0|MU%PlQEwB*f<+cq$O($ZMO z*tALf)(1X7KXm-E*v1Z;~ zw$M#|7q?ERHVEv7*}0cbX3yn@;q!|4*oM9_U0ZB!-Qh+wKz<&{{+Vwln4I8{_MX0$m{n#;^J7FZc zxfBXQt2-KpQg^3#=wUXWXtbBb($XAuyGyp`F30#!cKNLR(I-)$QgXwL`ZYqze$LcL zK~Syne;Q;=try@>CjlO#@tY^{NheFgCnnVWYrt(^LLa@l{+z|8dDED~T4S@E_Ny!XJX)hdQ0P+*WyH zIhKie)e!|D>BKQgTqxRg)VeGhQBF5$K~LNM;Lj5~1+BD?QtbksDeg~+(KP|f^)zFc z3cS$iIE7rC*>0N+OvW^jL_8%CwKAukD`noF2<2u6<1mns!dol2>`v}+ia~3IHyXrd zHx!=p1hg}}BB8ch8=~z>q1sLaG5aYb*KdU6{OT{#PD-E;k3bg^Ys^d8M&`ZhL7OmA zg?`zuLg_|Og+8B{#-~EB%1nh`l~9ESH|<}3D|R+h#I@$CN-tAHN6G$x2IdWNw}fQG zFJB)NCf93EA*Era&Y(cfYtT|EglozF{a|Me$q%?98*k-W5Ih4R{5(6?;A~U(6fK&W zyl56N>UurK?|4F5kmgj89*jZ04+JriHTl*H^1ZM7aSuXq`>l@$ z+&p5$99S`hETGV8F6wqeaB=)1pI|}B$~NUGbs(dNgOm?wnovv8zPWXJ>cD9TGu!d{Yj!qnM@ za9!_*-n=Msf)B*P<*QsU#L!3e_-$=x1oJ$!J{+d>S_F`_s<3T+?=WA$ygb!e@rzFNL*Q00GOsFGrm(fQZE2mwAsZ0>n=JqQS3#OOP-v?O-D83#ATbdECGXb z&J>+W!Z@YP4cJ68EsoQG;WKP6TC>&35{|6Q&&{E>(M$=dL1l@|<|}k=IiA$2*sMQb zjZq<_0@ho3U9C1hhm>8M>^jS;MQ*c^J9sD|TbmEOO!6PghXgFc9!+R4*z&Yp(aItP zTZSo%8-%hj`80$rcja>K*@#GKAPJPjoI(0-nKE^;`<=K5bO$4;YKl1CLT`^kR9y0( zOYh*sak|-(Db_u@6Q+ZBdA6w1Q^+L%416$K4s||kgT4g2%ag&zHtD+|m)l*f*GrRh zByF`kPkMEewUxHZLEtF`zlyU!Yl~D+xkd}UF=;IuX;@y1e;^rXld?C)ASs0qXv*He zluZF5Opb1B6VDGL!^f`V3C*;79m(&mAi0|lDOZJ5r#g?Eg1{2{C_2U1SDVdX(@AYF zPS&m3b=sz=)H38zs$$m6WXwT4d13%n;m-l?0lPv;5xy-kk95DEyyq}gPYod&$(BFD zh`Tw0xb1Ib**ZprYid|Nga|2;(b6Fu6oeBesrm>hPc>&VeHZLWR1E>4csrJ>GW}kF zllRM8CaoDrE_5Hsw+JMUrS!U8^jQa!34RbC(L{SYhj#BE zd8vq%zdH7eLPq5#WcHSDQW_C4no#%p36*uj2F>mZq9JS7`-y^P2aW*EZrOs(*GiP? zVqraeS!`Nf~1x{Cp3#tmE8du6nRzH${c8$-R!ee`;#%uF=6A zTW*6CEue8Z_3&qWt~43?6qJ-Y5~tpw3d3v(mLnaEiZm})mvlZO9udN9+2}A%IH!+I zEs9t&WL%U(m##SUlPVX^y1Fm;LnEo2qp| z!Dww_Qt2z*r_$|$N?+_6l|B)w9piOlKjPtuHDkY(UN80|s+L4629)Bj=O{VW^64W> zKuApV)W#3h~x zcNB$u$bdls0xIMe5!)hrgqId3ZItR~!$?>va0rnFHa~~BwkQx}M6YEM4>H6>Bc@(G zdv|oWFR*_0nD`F5GX@LG#nEFiyKr$#7g9`?I+#XdQ(@AqnygD{ zGEPY8$IJ9`OTW3?(!XIUA6O;3T)$3XJ#&R>D&L|6Wc*qgEfuxDRu;z(hItqFqCu6- z*)on^A=?xLtb;YfdqS2Xz8SVSgi>wQ1(X4z^R%f#7w;IfQ0pzv$8fU*=PQfWG#0xm zB*L^@fdDHX>z*%TEqtiau#tbk4vyF(NNR$2PpLp0*1Qn6rQ1F)20_)@e5FF)E|lQ6 z6-#v)DGGU;0!LyoE{{O1kFn74>YR=sv2_1$7_h-?!$F>KHF^py6&BJR6O*IKeId;D zrJ;&t=j&L-l8Yh~K!=-KZ(zH72q(y`q=LTmT=LF3YZB2xE+|cbC@PqRou(*u1;)d= zDt3bEP`tk_cO4*?GXn);9fo-u0Rz1jK#_d}63`q3fSmeZM_m?^Q&#h68mBpD-5tXX zfob#na2%P_<=H_rnoZ_onoPlfdYYuMsA=;0l!P-xB@Q_m&6anzDJrNkGTN}`SUg;o z4PrWOL;U@OcW?ONacw~~iFdGD#9L(IrJ#S90@@dW)u>%e!Hmo&nwyQWY#!L+jD>pM z=+4?f1so~FNSeb{0e&Odd8sCYR1dKmn_m`#@Gt=l>!(jZgRhu0enm`^DF~zml*Xb2 z^wL=58DbcRf{euQDS}}h;tr-5qYiAnIEXxLa)qsrZ4{dlkZDB|iFao#Z%5^A_IQ9Y zxTuC(D^1T(E#6uM!EcwW{y^ggs1HKYC5xSAG-8tbL%|-q20?(sl5gGpSPb|SnAY4x z{Z`y$wZxUdQE@}gh@+k=IO1ap0xyOLrw9Wd7&LX!wxHCLvBve?XQ^<4!Eh0O2<6d6*{ z#B-(-?$6kHI>H5}J=VkEHCB)pO*3UQ$DR3PKgadxhD}PJO|Q1QH}|Yu&ev&^wN5jh znhjkP(@+W`XqKW8D3&_IheWdriN=a7aY+Dkj3@D36Yy2bF}90i7{L&sxM5}_LiY#} zI-OCUf_fc@(2ciJ7=sd8NJ>Z!$YNwot=5vUQ{FBY#iB92)LLMMiGW_~zN1zQYTS`6 zZ-g1_PZ!kKaRjI_ru2%=$VLQM}LK;MS+4nkZO2 zM2GD_ED&_(_(rl&(;JByypz$IHsG23^rmj{)9cexGHl+O6x?B=7#M9o(DWnHN7ShtxE^ty?w8@zEG^1oR2`r>!2l z9cHg?O&i~so%%#fr#jL(G}-maCqIl=r zP;?o_S=_)gVkcX$)AzVzDaO`5J0 zf+8tcK(qH_0a&s3RY@>wa6LhZ>Ru8iicz9dg6l2rZ;BynuD>iXh_-U-Wd|=x3|$U7 zteTUA*|t3rVCUPAlFTLQv4}3D0!dkj+rdLXLOhNLWdBNLyhF6q0=Q|N#Q0FRX48N& z9i%;TK?GEDlGzu-bpa#hf`}ojmW5k%P6%4eMkit#O~IC05@|F_5-*G*gxQxk1Y{(3 z(?aaV(sH#HyC(+`XV@-DkQX!Ah=L)(x^|`v`Q4^zVBV*^n^?X;9Um0;ypQvoFzIkM zW89kj^J$D;N9nv!2qqN|1rg)gN=c9+^@!%E=cXlEm}^uLj9{V>Sc{rjgKO~juu$`g zXCUa2ukR-$llq}JPVeqo6~P~h|6nf=3|LALtWtr7UXPMeQPlVa`rp?yk=muN-Hw=a zdUXt)0_p~bRm2X$R6Cb{^MRK~4*8o8JZg62jWHeRh+$}iN(G(osvr~1#=IYgl8hA4 ze!+LI;I5?@omN1P1kq+FpupsLi%c33uKOZojbXV-ZcJ8je(+--)o`GRRL`17t6UrH zNPV1oVmMM~2b(f!{@20IyGkO!e5hC(?54?aXZl|-oBM1`b18_RbrOw3vDih?m@~L6 zZtNLxSy^z|$GCSX2G{|YeG%G-_AmM@wE4MmH4j@2Y(@M2vDpTeTd`W0M=AIQZE18< zK%i;F-+YQEjJv(!({1wQI&>y|AlsqSc@a6^zIW#kN1U*!6Dz)XIv&#Eg5LD*7!C>* zkwV0NxPpbImC^^aX%UasGL(X>8ag^ZIa_MPhTXsL>p5U0UviS!f>DYHe`>;-BKdDI zA{o#CI9{+dQ>Y#b)AzBMgW~xpFcJMCrb{V=NNWiitI`rTN!}I6Ovt?*pm4R~d=pLL zu!9lzAX`m}uQ}$G;fsSBT<-Afu^ZR!jvy z?*3Geq{D56Af&Anu+jaV&8LT^C@L%~XG-q|Iq;Zc=EO2<&11`Wc7BK*8&GJdbyQrW zKmyDlvHVICmATVnfa)KqNko|&9$>JXWR|4bGeT=71jn0~ZhoNR6TX%dyGq?Vx7_11 zC1YERWCS!d;u4{_QA3h(iI8{9Mt8FzwGNsq~bAjop1YK@jw7ixO0hIJ9tLNRKq z&@y$cBqA?R=w{LNRR{kue$rQ4p$xdTYw!&aid>UPh!-{`?iz|l}Gke}I*y{gspHmE5$9&!u#HZH& zVVi_*@}It!$v&ZPQa6mSVvAG$z7_1Zt1|(WM&nS77Ja^2qS3$Ne6`_oy=57 zLC6jy=_XHjeXFX3Nf8TL1KJ}3@>VE`;xadHC4w0m`ee5qleD+TkTxJeX^yel71KZp zRBM@`o-3JILHO!mU{|!nwJ9{0#Zt!XNPamG;E!L%ku@Wsd8QDWZA^v~l-MB?!Z0tNlP&SXyq0GPIy~zL(4oGIYMqj&!x<}7hDDu{ zM18XZbo|vf*+zY%ta5vt{%!9sg{>RG;ZSQzemtnCwUy4$()w zo54(fTIBuEQ$824`8qR0-sD#mD8r27PAgN$#uv;=!88?18$eC&I^~>zjjzOy2)@yr zg>opEoKO};SDa&Q!ezp}0s)E1AE=g4fdIwoAV`Rm(-s$GqBQg&Nx?&NlH}e0G+Q3h zlfaLdWyIp%D>?5z3q)e(>;@_gv7(+w`SwY;G$u0l93fUFZ-&*JRO?!dyM7s5@0Uy% zSlYTw@L1j#i`TC|j0LKDmYhfUNAzz-7JiAZI7tgU2isoVI(-y9ZP?R`RDFJa&QzEF zhX(G?-y4nl6myzhzd9!fSVu62pC6(Ib`GKR2gDVV+JStnM5pv{HM6`mF#sW*K*QoS+h`l;=A{{E_^C=U^F_3t0&(o0x;zg0LO;hHv!Cve5<*An%r{y(Qihh~c zUO{~|fv$@IngYkCpc{gnskh4R>raLrg9+kBosj?@5T8TmTD+!Tabf4n+&cykv=+$oE{L!@d3B&n|1kQgiEzI;dKP8vjes7+RsENV% z2mSb7CBHFo{o!um`u%C~5{By+3tYc1ElfYIQ_PKfTpip<+lxC~5K@i*C_TYbQPWPM#n% zUA^I&XlCuB@q3wdmHfnH)Lgb`(v14}v{(tl^g{yEYtq8>W4a@y_8r0NS?QhKL!+a2 z?b@>~nv_rWlkybk9rc+>&e3j>b5~l_hmmthkaK5Rn3|kB7(^C&M}_^{);szGL+@0x zr9c?^UMkR6UVikQHlaoxt9uR+4!pYO6whZS!@eL}bZPzb{Iu8!!}#wAj6WwWOh3aO zCHm*oiJ`4qckLY+8{ZM5e%|h{LB<4H2Ma;LRMSK`BUnYq8=Cm+1G2h4_+SfiC z`*yMKmoKlia2iIK`BR4_q0ZaJ(iZLG$LKm@Pe&dGq*GEsS|4bP0YO0gnk4)D7Ubd*xdg?oAF%yREhXuC(F)d6#Yacaw3I-3> zY{&QR*%?jCv+nZIvPXYq67w8-vm4&o833Hh6$m5d?+Id_nii%e=E)4AeLc0!qo>BO zwg|LSRS{k~uiNFR{+TLotPfLQd$x~`(UwM^%E|_$p}hvPrD7Nf9uXv1xBMiyaAKy> zn5%CZ94uE0`7$AV(-YROUmwl>w-Y+Ns_gu52&O1JDO)6Jy>@F_oQ2Wh<$?}d)57$N zLI!#*1&AN|f?7#HG*@7)qrNn(N;LJju*6D>A6E0kQt@hcEw_1wS}Cdb^Z9gm^0Jk@ zY#X+ED+^hh3t8r|mx1<9SId&vE=kL?d2@eB(|s+n3R<+j$1X<@bfb>lN-FxOJ+ z$8LO&153fjhLSm)t$gUUrVq@*B`6f;YDbLTAaJu^dn}#^Wq%=EM ztu=VFr(NqYUXc_j+4TWi1i{_c2^W>=vfa}o;8>d_gub;sijcUcUc+7S-T;oS7*{X! zsXyGOIHGVI=Op&6HF5ka)pJ39p>SRXBGo68tUNihtD%M~bomA7cX;MNbLHG3%5YVd zoL}O`!6mtj_KgG+tRJMlYw zobxXJnV004hcGB!(-e>8rzopCP=<<2Gypuj$aK3=QM`kV_alVK@kazG(8r1L8 zsR^u_k8^tU;hDDfxxfxzrR8M{w7`C20(|Lf5e{{>bLN7$C+0; zugA?1=MSij*U{zM^yYWy@`wE74RrI3bonRxaP`cq4?F)%kH1Tocj3Vy=k4_P9d!8~ zZXR~tj6V-M|3dE{@B9(}<5l$Z)pU6c|NFJL9&+A7f6q+O=E3jd?Gfh(xFR>{NBB9o zO#J*i|MWTUB8B{Ry8Pz|EGx|ahZ4i(*yW013k7RA4CpWeIm`esPJDNG-gyX2Ml8pj;S?(F z%rMCYcjg7uBkl|zFwC9d@+I6EP5|T1@B~hsaag6?OMkJs;QT_2{g>kBIH)UN=>+k! zLj0^0KdZ%0kN7ziKcK;B^mCkZI)0opaRF|LtA>xSKW}Nzl5;L@-Gc$-`d#r^#F*T~ zmp~H2rtK9}=%Vy4lz%VP8&F$$Olk-6<#`b<7d>XZMruJO$@ zHzxpu%1zgxIFkX)nESs(_%fA|n<$lJPLL{w4ciAv&wL($6RNV4%Ju=fyfl1#b43GH z#+ICIz^$p^nk#UAnY}c8f^2Us-VhTCbB;L>k5*j+Y3UB7uJusr+Ri9-twAXOGbr`b zZc*yTM-`>kc8yZkc_?*VXOz0mpcH@^lsbK1mt^V`06uzTYA^|puEBon?J^My$zJl`YNC<_ZoX2V4bhx-L($X<%^F{R^V?2Bv>Ue|FtZ;;^s5cq>WE++K{AN7y<5cE(mAo5TL44R zX*xNb+?lsabJen06%*Ye(mm;kl*+1z7besOx1ICZ5OglY&xmu8_{Syu57!!j%$;%~ z=7a+4^voxI{I@k2)OyI zL2Ndw)dy?UNxRmVuH9$XOZx}idbESv$O5d+(XO^ZiUJ)#b=z@-g2wUH0lPLRg8>Nl z@MAm~MCIFhtuQEE?*Wg`J}&Q#ml;0;wK@ufy%^(z`8er3>I*%Mj?G|i(yWa*M$wwV zMubTlyYPzk9QG!V(LP}9F57u*YCw(=@1U(>k3)EVS7RQV8A|!Gp0#{irJR=#ZoGl) zuC#8@`Jo^=I-#=;VZV?7Gg?m)rud6+Bbk{ZCb5}a;`+-B zmCJT<9jXr>C{2TCw98~n)QP{VTHBB3l$K0o&n6~tHm7a%-)!Ahu1=!DnXv1+z!@r)cOkd8RC`U8Vz)ITi7 z?}SOmsxa=xAlffhcE$Dz?WV$+-V~DD$NPRqVWHU#s`(9_S$B!&6A|aHi4tCg(*`U9 zL7&W)lwk-uSs>`+OxqOfp*LdxMX=gZS{ z7|6^lX?}Cx>?{s_#hi{F=~|c6H9blH2AHCGM$w)sRZ28Zj8m9y>7k`ilZ{_K*Z1;x zsbSBWUo_v7A!3dQUius!>k6!e_{a97?8c^KO>Xo&)eG62R94>&RmQe;&|nSBfU6ZN zD)?f~SV8=0f;}?^Yzk$h=PK&2nybzUkqEOJDMklr3Xbju6KwBtjP4R1UAR!2-H97z zis^PGjgCAQt>uSL5xVdMfqiD-9xbk>km{&?)S*RzBVhI)2@U0+)wj{Oy|enV_R5&u zZq1g#!t8@n1x2?oMN^2RwhwMe3_?`d-~U*Mvhyf0+SASmvYhPTO^KmPn41WPym}(I zHiaY{Mh47CX8Hb$F@y$ zWQ|q8VKtbmi!|3$d5{oKZ*tL^uJSPktz5o(sL!{K08=fVs(T7quct!=wz|=wURhh4 zx`aazsO$(<`w-(Gv&1UQRI3y?m=m7o#*G^%CI)y23niTIBLWIAbTAIiKcreErRjOB z6_U5gcT*@z5tm+Nrd@T6B8_aCNfXN zJrn3lmjgc=Q>y^8vvC+mF@uE7yr&8EzrfT@!632fU)yYm?Ir1Ol4@45F~#AN!LxT` zZufY4%{2o9NIc9>+nY8)?YfCzDyTd#SDDr|)e;o+IB~vKT5`UER1&9zCXrS`Rt4Xv zOFLj6-QWo~zT0P_+dh-9xe)4tBy6%+t+2noWH&rl}Mxs&yERLFusLH<^vbjV}r7N&GPZrs(AKdXcWxiwvS-)u_C2HHTX&7zy5lxvwcg)j;lJL|U0a8@kB#r%wP&n% zlSPr2b>hL+ojbPko;cj@WuwERm))5W)=v$G0v1ctrG_+UdL@7zyXniTH{39=9{;-< zx53F?SL7({pKw?Ne!mSWcRlUZU9}iKCxWVe@tyNZ9U{7@i8TiUwjr!Q$Z&qLdca<1 z+4mOgIS4wRh7+k;+tB+TW6Q>%A5kq$~Bpu2}x&4JYzv*~)a7cwG`f z2%mWEdozq_Bh#E0cmm1jYpfk2Io&fws5D?RQ(Z1bs$_N#&9;ctV)J#q(ixrD&i(V~ zNEddbX6Ok^hQ}Bv;7R9M(~6lp)w$#F+*8vZR7`LLebFjuZBJ;;Ztp8ZRuSKT3ufjp(Xt4 z`e7A^$d~I?EDVdx0QT7H*tJr&v5^E>zT>4y*jOAL&07mtiKdVQk{2vw5ZIe6wTTV0 z?9BY+0G2rhX$g4&CvP=o+(ZW)!8ohFP4>av(2CowvkD{J-?I|7#jqO=Ad1j+>85oVM5LNNyA zU^p-P&DG|`9z~(HyY!3HnZT|W@4HITSnj(qn_qaz#tf8b|Bv!=l3`J8eqqTyw)rLf z<`+ibuk+>?=LQnpYjLT|T`PR&a9wUi;YSYn+x6^sj(B#Aw8|GG0fD#o!i@3-S5Z*B zWY^SmAT*_W*HCT~gdvvAr_f*7Wdhz41l%llJrj^q4(ysQ?ax1h-^giy5g$e=YRJ|2qQZOk4zH2`d z^^Dtu4T24{uyE|6$zg$~#sDA4c7UFo(;#3+4|){_=%@cX#;O(_#mROW4a_eNUgVmlhTlcq24gX3KD`o3J8HyWc%pM_^iuFAS2#WopN7 zEnXNkdXvkdUo+V4cVe1OB2U_C`&~c`SZy>ya2O{go&Yi#eTW;r-xN!fV5r$!=Fc58 zMjOKNujd?8;`5n29lKC5I2!k_#9cam1pF_SB=u4&o?%%w?0Ow3S<@cY zF6Qeq25+m(+QIx>DZuBy*{a((jknJ(Abs5R(zF%j_OMulu1l&yb!n$_R*A%3rfXy`Uz5_#y)4d?^ww zv;fll(*6W`nvrsDQr`E>pzv2RqOhc?o;<%41nikSPY=-~TSJ1(MI5q%v<28l6mK?D z8LC_wjuxWi(d~B47l6(LBBAT0FFFnpT>MA7%y}*CyTReP6HpS#h_R~96fK#E1m1pd zu@MZ}cRso{wr6PDj_rH=OEzn)-8g)m)ogV^>|P+7gZ3S8ut+T5pgQ69(b4fSton@5 zI?OZ1_S|>PeS2%gjT^4LcIfuK3mb;2i$lAo58PeL%N3glz$*DxrmL83aNWd_y?1Qc zzK2@5b7;ecjq9(yVdFI}%pF`Z%UZ}|i2^w)l**zHjAvVFb{@&Og&CA$q2L%yAG~%e z!ezD?$?l=u41BCMZ~NDfj^Qa9PeLUKe*1TDcGuUkw3<6Rg3JA;_1Tc}SxUE_wks%n zP%ba}ggxv9L)EQ%YNj5kUJufPk&)h3BHKI|A+NoDQ6$kFhg8Ab8E>FwOhv7js*0jo zp46+=`ATD42%vg7PAraeU%ae$9w@Yotao`h>jkF$(~Nm15WWmNj)_>tPx&+}wm;>c zw`abB9qrSU`&Z-2Q*_vqIrT@pW5~t&Y~@0m0R2J09uuH1!~`h8`$S1BF=MG(P3~Eu zQzdM=bUkU_p;y65Biw18;gA?vM|!1LsnT&4_nbFx9;8oq?2l|0ZUDUZOj|aPe{&E= zS=$jg!R974f_6l6r?EmU7yQ&Ju#715^horI@@Ft6`h;+7HZ_{BB1X2Ly((kp@~Vt= z5xDfvR@aSDrZ3o%o!tOS%cIFqsi!teQyG@==F3GNQ>KJru-DVN&t4lMP~tOFn}27p z7sXRyiJHauysP?mERNzG(rA5xof{<;@whvw3Cs*xH)4qHeccz` z&EY5w7(nL%TV!eU(>xnpLs7kEPT!rxK*&Z&U=ZCpkGVR&dg*!L?--bWC|k^HgXqOU zz#fC>i6I8j?IAG{PP`L28e01`z>(xI*Y&~zoMWs72nO~|E!lxJ5cjI!__8);wg{Fr zF&Q*w_U%8xmvJZX;MQ{;6Dyf!nw-$NBV~K~cA%q1`*J(iC&kT&+|< zT3;RM83@3G=_=M^uU@~N8=#NH^UX+JDo+g{S~`wNxiQXn`+5mb?^^d=eg`W9Ut|>u8)Hz z#1!V{{+4B!&!gAe6mzL<7dtT_FslYSvx*cweAhrI$MYa2h{FjjW@?LP8c&^e#$m)` zX=mxv&KQBe&S__T&L_yi`Z!%aPYY0=rAvGi?5dX1I|o!u(qim*Lizz=t?|;q zE>g`n>o!W^GUKVi$A$s?GeQb$h9A*i*(JUGYY=dAx@$>qs8c6#&?4XM0Oz}jR5wm@ zTF968bJz=ey{MiJ8;u$qY`ZF_ZqS-72W?psBZjS1{eX3sEi$GG*qT)1@5N3-PHw8s zl?rvAGjpUmVNia>(=w&JUR*kn0DH6SOjZEzM^zc=^H)G9N$Ul&BwRbB~uD}TaUs_uDLW@>b#$7c5oWNMF0#EaF*6(v3N5(MBhaziU5vq z;=IDSiHDWqwh4M526T$dgz&MhAmW?tCLfYuoWPLiwh8))%Q2+meK~e<|qB7-$~d>bNnO|Mo9NHX%J&f z5d-0vgJP$b8R8HzrNW~k>83fpHW*@Jk7;+IT@dO-}OQeagx)Ne6i zQZbZ3jKNR@t;-CxT4<=}aKBRwy#oz(cP=OL-RovKU16X!@~F5=8O3C?h|)$-NHXQu zEm>h#4wP!u3S09B@~EPW)t`Dad;K9HG>W}0j_!}iVCRQ-+hnn~#?USWo;8cTnMoyB z>=sxg9U;nKH-g+{c9TixZ{RVcKtl)YHk8Y4;jQyQZrh_OGuLfw-)P8*urxJ={kCuu z<;p@dTYZWU7sXZ=MYd~l)p?=4GnwjhF%(LHP0duFVS)&z>cg}zD^<6^hrvArqRZSP z3)X&;JDXy>9dOTlE_a*AOSHCobk3bh=aAAGDi*mCEb4=Y>Luj5O1zSHOlx<_DJBnW zYQDl|7?PlCC|=trFGd${Yr-E}{_ZG#4LW(ft-GT>7CiQt_}-gb|6ehjm4XX2*ZpE(L@tjqEtw>kW4_vIsrIV*}`e)Lj`BtB{u!*o5EVd*IaVjsR(!@eSN;kSsg z%-U1oKvRAW78K52z-|I$0#)ksRJoZJ%_&KXw=R*yRcs1R(RPDy5mlL>bb`Ye-Vc9^ z7ETLrn@|OXcPFqc&vOM_Li7}m8F&|Rz>GwNgRiPjh?^j=uVQI_fph}}WRsi(Z1Tk*Kh z`Azdl^KySW4hw|v=}7_%Mr!@Gfq=nm5uo#Q)&&9UXv#1Z%6rmf1_GLI%;iMsCTv}y zxt`$(tu8aN%^^}x zqNeS@w#}<1+9#BW;wxHyXm;z)m~JJ}4b2sm{H(pyY@>bWnU~RdWyELd$Y#C6Qxfdi zc*UbPnyVyVx`Q=KUpB8O$mI%=c__q!)JFfDT&@T#;k%!RiB*4Mc|I`~_w`2XDPT<+ zArGLZ&Wmut;jJ9$_p+QnR2;_yNlc-@WL2uxXeTZ}9P43f+IW22RQcl0g`^78gMA&4@Yeosu(X~a0R zMQvtm2#O*NK139SnX%z!cR)UwI!DZ6;DP=|wI4xUU?Ct*`X%y--IpRH=`Uj>N%oSl zdJ?mkiO0@JXt1X{;!qOOt7g-G*JToNi<*SjBqZTAZIh52@|WlElTf}CLBj8~Ny4*3 zbb#Tf#?dn)eR^SpKIM~&PORk@%p;2S<*_~Dref&;l<8vG-rQR()nOjPsG2I<_ugnZ zD6>$STI@%-3szfWlU2aguH9%&=jS$A8`jU^o!NYCx>V^$;n7BQR^IHrnX~(E%3CP) zJ+--4&9g#UxZ;!$wOh!L+pHd^Fw=T1lwiRIgU!9;eA>5cnf4&uRGLLTS*;M-JQv}w z4~kxBY44X)LjAyWFXl^t721wOUCb!G3RMfGVq=EJ%UGDPah@Cyl*it{8`ba!^O1NU zmSa3r?1e!wZclmEc+)iDnBAr(^Tla9d1H(Qk=~Vb@HY*Dx3sL1@;SzGY@!@vISMO> zyIxZAI$}AYc!f4x@${ryA(|^;&LN#(skvgNF#DV_%Qta$}`A3KowRYB);;)f^Gr z#e75l%qC2qnRds? zG|kMl*^)so**+eC;Q+9;du|wF&3@49QS9Ix#G!oNVCA)Gh~lE+3s52+XwGJhNzvW& zLaA-`_m-IcMtE3#&R4Ot+B~t|C@wWu;R^p|YRPt9hB^73rO@-H*J2S>F!7Cy&Irh% zAUK#>tQMAdOGfi#G*+z6=1Y|&X9s{aSK&ruaSkEn6R97~Q*ebogCh@D%huhI?$H*2Zf^&%KN=oTX$K>LiYTGP3ODczP34Le5ybp?1PFl5ZA6 z;Md>b=H)8Xq*k2zp;`Kc>C9_)e*a2+;D%^;S~5N`d@a$%nWu{WnX8Px{_(0?`^%2) ztXBv%CWNnz_YJ}yNG^z>;v$Kpmmcduz@DYYbs-_LFJr@uYfr#}ph%Y9FyNyAN?;W7 zWMv3*0(J-01H`1GEDts?l=*>D88|*-4gvY1aD>>Uux_s|*w~x1&a?Z2Y!f~ks9=}N z@D(jA+|W*OF%=!K%hfp>rBfDWs;(8n7D&MQpvli~e8@=JIUxfz)#G!6$aB{lJKR;# zi~*fQKT3k@8H@U?W~_Uf5`4m^AqaGrPj{ zp3mkBvq?{+^b()lDV-RdEfSad@d*1pNi5HGG7kh=xqSmPeC^6>a)!QPknz&-XmylA zUuYxqq99<8k$GK+k+~>iS5?~d06~NWSo5c{%5vP4*G2)YMXO%OBZouAux{n!Vkx)* z>y!2ta_wf}8wh%NGIaIkLf>BRBiIjvG`S!KT}v|sX~N=2HwXzaX$8`}&CIa$EVM{=(q)5ROjVznBuuy@FPU5#A*pqiR|^;{JA*; zJv}(@m}66P;4vL6*C-VR<=Tr_3>p`tAD0U+bO18eZZ=`jVN-B5UvyKxP@1l&1*smo zmCM~q=iA%X)f7zI#$k57ZsX~z=%?N`(HBT{y0T4lxwD4PC~$^|FT7HIrA9xFEBAK} zN0p=67G)}!^Uc<5*-LvHw*YV&eeHyC=tjYzH!{osF7L>cqZG!aFL-`9a1)Dn#$Ykv z4xS&*>Z)B4COAKwhGw%*k7+iAZqUS|@jwBv<8_6Huft`~>{J{sGBOEnG}vJb$BujA zogOviKO6n!zY4m-mxdMR?KMw?5?g9s;1_l!=}mEH`#-LLs_-7#PB+vsqWaMG1H?^K zNX9cm6Bp3RzH@lhamPKhd2$T_mbL4`>L0o$+!rUxjB*lT`^?ScagTS}1olz{5_R4Z)v1$-&>Vj>en^=Kf> z3UPsJqqLPFvOyanWJrZTh%-Vi0aBxI?nG?vJ=}rcl;l z0b}*tfIL)0R15Q{HB*s^q1+{LvXv+l?4VsSEU7{1b zVT-onv~stuAuReoiu158&gJ}+5uba6*zaIHpM=EgV4WWh!W6ATF`|`XZqgRUb6Jv7 zfCw`$M}%}fz%V2It3Z6<_)rP>U&iCE*7sSy`{=~jAfNs3!j3{taOyp+*4^ z(^_xqPfYQ9UAM&V)k0L*J-$X7_(?Rl*-e5LH30`a?=6)72E( zNGmiiM(2;nbY%`SjwUILj4-vkTd3VvFfXM*o;F+_NerSbPepc6&I|2(DhFG8D$6kM zCwD~7^cxY%{rG#o`$0E??#EY2INESOE_dCJaMMM}Yfx=!kAuEc@0lLQH9n8yC*2a+ zA28R6#?KBKV5U6L%TYQmg*=5h8FvbKA}WMC8P}(GG9+vv3Mu-lWi^qLQ39WNmjkwk z6_-@r#;9G!4j^vlnZo zk!wy{+_+L!zF0)UIxjXI$irb#RktF_^{o>rFIa~f%^$G!+EdwvTer8OO9C1L_Lk<# zS5U{s^I~X~K0d~nkAp1&_vA6o*s~!CH`~P1J`|~`&%j?J?@i|0RP1}>OP#b!Zr z|0dypHjomGFhT-nZrn3`)3Nh%uXxYRQCH@4&ET}#|d{6$d>FDRET8kXoToKoZ; z$t0l>`UfEFqLC7dd%9^UEYa3XPZ3t;p@MO)G~s0y?473~M6@*%32}-hoiH)MprT5G zA}Ea{3L&{ou}F!B)CFO~<;z?n4kTCq4jmN{m>hJ<=eCQq;!3hYu>i@6*pm(=qNbBz zUeua4bddVmZ?HO-<$a#><$7r{l#J%YaXEdS-Ih&lab5zzndL(56LZf63^US&4j#$! zRH`c8CAIBR#OIniH)x6kO^gd7dgMZ5r{|oIUYm5gsatg0C~(Z(u*~U=&*U{GII~am zX%sK{`L=n6Z*nvdaEga@%|=FI8cAX0Ylig>{DO$7+U!c)cvBcLVNT3b1mj=FL`g9` zZ5VA3boDPyeqR_B;ToS5`mdAe;qsVYWGlo}BK#N>S@;vN)|m^HW#*EYcTM)GcZ-wf z1gW_@t0V!5nAGYDe4BUxxOQ&D=5D(*FR!y1y-5?s4|A$*zq3mjpcITij?ufQ0Yk6Ck>2 zg8h@^q>kJ894gq^eHFiEV<~}Y8u;j&hg~QOXu#GSE;;8m*IR9-oCSs z;R`+*xq4nNT%jvy16qpwryB& zk{JhUyx|xVkw`N0yvjX8I6H#aQqEBX1 zCrw7vB?X#JLFa^L;ziR{2?Abb_u?>-(G>JF(cdq#Or#jHe+o*{t+tkfq^l=m9PKX$ zy`|mdpra#l=yI)DCAN(%KacUm1W;VqAK+B0NniJ`Cee-HYSLPgh&EP}u6I|H5=BVW zFoRQxUSuMG>OFIj=~~|+)6Ln6ueJ*}0kBG?UE6l}*A!lY5vB8!NJ&hB+oTX)qFMOb z(+%m@o+NB3cfQIX`_>%Kc_zoA+wswDmyLafrZYjz5fxcE8EGm4v+nmCv^a_Hnp|eb za9Ij#ynM%mt)4I8SVUCBIjgp!!7sp%FG!esYCkk*as1|cx8&`*}+%LCLc-8E1?vXGlE}M zQ%ovhv2{tVrzd7K(JfVEMNAwi`lKz&L`e%3o{{#z#n0D7R`94@JAiUj22p`4)U=x|HE6FWSe~kmi1pyYOujOWsF6V;(j59xPc|pb3&w0bz4m2=U@}3A*X@u zXlPx}k%yUL37g%pqT_i-s6t8yNYImt*AThbz7I5s_jZ37gv- zLmb-=CcM3MFySaw&dKvpFH)*EFcqj!!aw*!33MYEN?2WhQg0)aaJw5y=x|0-5)c<$ zpeEFNW^my;UvS|v>V7v;fGz@Hr4nxJU;;L!hoDAvH-+?srMk`u=^?s?hZ~-dKHMN- zi-|Hte^XkGVu9?=lD)tuEAOmM*HvQc))`x#^F?>bR`PEI$>qfRI2C4+%r3T(D1{Xk z-T?whH-yQ?=Ps84hmA+?Nzix)%Pq9zQmI;YtyZnIXABZB(-5T2v~T@gPa~p%ljUcA z8fV&_mCO0CJ~HEg76%TJ1d|M%udj| zQ3^R=!y*@gWY9l1t)QDG*!yF^rr>fNMDUL7$(gG(a}aU3Num71M71GAHO~}FffzlZ zJUuapwidQz2c<4)-xhsVYg@Fu9CJf*%kp${no;KDKl#l`x)C%dUrCJLhB^5-*PM)- z;*>fGDj&TNMc=FUOk44KpRM?=ZVBbvnD<2E7e-CjrfktCQF~TiA^f2XrnMcKIliP(AiMA}i`PY>wed z2YiGTl`_Z|3aGchh9HXNGf1)pQS5;BLTSJOYfzq$aj#vN=N%{5k5i;g8FUObN+vYy zVyj3YRZt(7jgF&1(?(Pypt1{|ezXb|-ax~Y-;%xP`#fgji)t`@_%(ZazMQX7EEL9X zrA`HP`Ah(ThpG7rA1*~rBK9he3!`mbv-$mWbFNm!!2x_^x4=}K>539}syAEw^mWDD zZ^V9`q{(Z=0&v0YR46$^?eFH(X93h!4_=nJ|mHm6FXu$Q*-7Z zsV^B$YGK0gOd$;akygO;#PhSnAlfn*We26Swr?;#6l*XZnfb!y^2F&*uKxASLCTu^ zw%?kh8$oOGu_QHZSd-WYE2|E-ngi94g0ikHN`j%@GcC#+d=}-#Zb|iZ0IZ^qm&VQM zrU24s846&SRry>YfJB)Pt8xX-;8>sDtdzi|@c7c1n)kUGHwq&hy90~)?6vF-7MC4- zbC~l~!gv-bLK88h>u7?whbblaxb8<>U=HX4>WtGds5cpMXxJ2SNO0)gJnrPEQ>hVx z3A^UoBmwLUP*w3kx~#_q1@o__zc=6_monc4RXyZ# zRl-wr1k;Sy`25AVQ*_)WWj9*|7@j}@hHc^$9sRBDYsyn}Tu>Ta?tJU_^xsE(;q~-G zPtkE9B9TI!tzod&pJvNm+8uij04LjjDm8f6O!gwdq3>dt0d>;y6de}}l+UKAL_wY) zM=6XaIYsAFF<1;No_MNMdpoAu6$Xl@O11k^AQ|S1G0mn>>6&;n9%XeWJw+!D7fI&& z71*toG%k> zPjm{gUdiK(I`*-R^K&F{p<+{XSjUszPJ9$WAb+mGzB_p#W7iyVkVox8&Bl4Ns`3$A zd1NrC%4IcVACWOZadd~OxS?bdK0(4V>NWY(ppmi9&{P&RLqnabei<6f<;JSjGM2Da z`87`=H(9rbiu^DTyo7^)<(fdFIx8x_iS+8W7C0Kz)VS=Dxx^ud#GSGFZ&p}nWr1uY z3uLHJuCyMVE_Z$Vf4C zQRH(ToqaSW6=-7otrVb4mU~Lf&;uqJwy;TU;5N&UPvW~K;Cu|=6pW~iF6yzGf6nx4 zC9@B4gG-^i!|3{`pzEF7sTAYV^TDVXm!AO!l4)6&Fg|{0_9ud)z)0(UmHgO5?{i{E z9N?W(Jkx}NE-V-T=jp=){(oYCr@*u3AL_N@pG#sUEVDatW6g+_ULjcNS=_%AL-ey! zl5VxNR3&*`D*pEUiQj3xRCOe0{uG`>gf*g8tG)%t!SE#LM$nUZE3tSRoh))OQ$)^dw8voLZVHC_Yf8Q zZo_+!z=Z^*=&%;?MBc;g>^%$>i?DiSNm|!r@9Ehga@;-ones%}S*U%?#=Ndt9A4%& z>k`Z@HcgUiGmgGVKf!bpFh*K?z(Ju%)EABfnFvB&TR96?uV-%|4n&;4faH&G6uZLa z_Y{6i?CkXv&J6=#ion0dh(L--L(hvpWR6b(BFrp$osgpMG0cFE@ZzJ5HO{Q%bevJP($g6rj)lT}%Vf%d7NVr~mlBeFMAjkIrZ#znAeVwvm6&mhU|&dXw_ zH)VZ(&2N3ujiB|pgM^_C>$BgrKHHfewI=mVcFogGIO;`Vf%d3F;Me<1(5ELC+4iby zJcVUbw0^l2i&!7u)0bT~Lf;~!kVq6^gkBSofzgH$DuD~3N+GBzjnEgIK*goTsA|TZ zd0}!6p1EXH(dqCIZyvCDg;7B zVdiRxDx)L__l1i9c=Il-1v;}t)Gevu6b%{^EKzC%;Of<~Jz(7}k4~V&8t4J-@S&Fw ztS|RBN;vA?mq2eL3uF;TEfTCcpRmZNO1O^z-7&3ZjDY(`eV`&Hk|qf(=c~zbZV9HX zMS$QoC$*ndp{Gr2p3h?q|2EEy$I0r^OzLVapLTOzKuW=Dk6ai9#GFK%G0G%~;UGO) zZTB5w-H`%B*gX6;p^u)+FazfNYkw64S5Z!y_-otlvq`U4#?UL^1gw(ELA5Prn-d`? zCeYW%08K$b%>>k2W&Agegt|1x8Hcb8N2mIX3^+ElK;aN7B}`VUw9cKwo#+ zxp|)u0wPs}b8~Ha=SBjTmP-2)cBr+4Ew5pkT$s)ew{?{S{j*|*C~fwRFWxeb1Qqg1Vk<4I+* z11hGW)+m~|^A76A7=;J0AH88uQ}}@0dp_!tjzgsiO?iq1=x?ZKXa$EaS~y6P9P27B zHF>zA{G7gQ%O^&pfx9w(VAk~9gI(pgMqrFBm%jM)U;&Ln3Z8L<0~95xXe}Oy6j3LuEp#RFS+@3kgv6lI|33msob?GwTRgZTgKy$OIERh>UhAa}S4 z_tk_WlaNd@;Rr+m1pMch_5S z@!Iv)U0vNpf3CW_pt4@8tN-u!`(7R2datVMy{?)}{L8MDny#w%zVCZ}-uu1-M?>&% z%AwM2IEYe%Nsz_9KKx>L5!ScNbX|yg=p-G!fr`WQ&3!+NmYpqV*ul;`9Ly2=nn%r> zVmv`hUa5-=-=YXz-{>>KnQWvoBR2+650-r4K{iTHPN6wXPQ{m#8ed>fvydzC%ArYX zN3o||p7pHcxl8a~5Wrj;Cjj4z3N2xEZOruDB5&eUp|-r}yJL#BP&9wAA=tKKLjIYP zVAML3Nr$f;kGAES#h4Zv3yWS9x2NnMcD(uuukz9HU_(?|FiyA@AVcTKJ|`U65H!v$-ADH1h8?s@bkn@7moA|v@qO%nH6}(D|srWl9t?Wu<;ipgPxqSxaOy1 zxK9YfeUjv4(b}-#nvj)fimUW25+WrZKKNAg;e+ag#_(gWnsgY<5`_O;;A^~xOPlI4 z^?e6-MB=INhy?zijz~-$0HP9%>2>-e5-s#*TxX`bzrZ*jmhZk88nC!1G+=Q$QlG_u z#mP{xJ7BRC)*v;|>5zj3U*<(qd-Uen~h06luhG#-;Y-8M1I`yy4wo z_WHZQjBmfxQca|f+MK@E`Hk0F`R>lan2i? zqHgL?>`g_OV1ftN z6k!I8I~qfSE)^KTTHLQw`kO05VV z%~2l1b_L>l)}zO7+~a&iKUf~q(@SGHIE4qc^z>)Dh$3#vL$i=Nf5gYd{o*?sL4uXF zxTF*|tb{!-^E+YIOs)?moDY@CBXBHGI~=S=JR2Iu<6L3YEn1714+JxP^10dwtw_xc zK^gh}Vxl2HQ9B>~6EwQxWr4OB%-o@a9upK~KxB_(kB-kP;I zz$iRt9G<{4hz=%p%x?+zNaYxhWbQp2-|0G*4oG`c(bt4i>!UIa#{Av|V@ijH=kO#N z4zG9n5>>Tv5fgo}SMG_S?c z&^xIJWi)iTHw39buLQ`i(P=Tc=khxye)Iz=KL1SAgGTr2xMcd?R9} zyGWJSjjtqj&oI!cMY+7$C&OWIN|Tk%uV$8_D{jec2OAyM`ncAnr1jqvTK`L8y+uR( z-d2RxU#;X14f_+Gw8Dx%A4L+S_^qTZ7iA^u1yHa%)-+ABf$KNEkyyXMcgu5Bp-bkm ziOlCn?}S4|lUKx4VW9v%;10I#3MH`zcISh&&oF1^>zU__i>Dp0td>gsenKBMHD{A3J%{=&j9@Mna6bft2wY_3@P4I3IMb7`cfh)J+Bb zB%BJuAJkOPJ*aI7Qb8B_si4H;TW&*D2M|d7U}^4)p~TO{p~TN4F_vNB%KdQlAQ^(F z{d_r28O!8Qmju60(PVYgR=+Py7R42j=2>c==8=UPo7-4Yb2}L0m*&&Gj~C_@bn&h= z{VZ%v_=9RqpF%}QU`-2rYid3s>sm*w8L8*>dJDkA2ljp|Mq67lqpy*23Ntz@Fx-#Z zX42q3%or9cO+)sBA7*SnPYL@$0Y%tP3y1Q`!iD{q1VfqE^+Bakp6X26gh-t5*$s)I zb#yYOnDb3X$l?z;o)DbyjTt2O5KTJ05`^N;c0|pG*8#8Z&hS`X+HOdM;U0Ab2-585 z)0-wVBF-)p)2MyR31i~pp({!!&H8+EUk(rLI+GmG&R`znX#OdOZ%5$USRNPaNyMKQ%%Xt$5zf^D1bx;D;Nqb31J^#OqbQvFA~iq7$9 z9&9_+qL1c8$MMA?p6NW!PlU%gl@!oI&VGzM$+(C_eNIWBbcxCPoG(obg2yM=nd9ET zdBYetUCjIQFy_S{RLomKg-?Ka1IruZg0|}+wXW1%AE}-=?4jN8k;AuVWskR!8VX15 zFK^`VC4_VFlPHgBVP?91;(rMq2y!_<`y22NV2;Z(>=TT~8GbW;;|>Ejt3!t$ zMSBV&bMMg0kdp9d_jrsMT0|xvfxMHf&Y}oiz{9Q$azKzME~od!-0dbi*W~p z`^p%axz>REglihyow%O}ub<%1;V)*TYM&QsK^eY-edsXKl44lX8N)AxF?@zvZDC-3 zFBv4vwa`c#B2z97ZF4Zg5)DEd{9xyyLH_lLa4j95oZrDHBT4Kt^`8}|I zU%gaVR2qV5y0t}e>(EdW$Jkcye*%fAu=8nDx&*M(-|D?-yWM8TLQnN*Vh?(T&nBL{ zGukdJbl8tGhe5$^FW%s6V*D&cJJrF@-v~QJ;ppM#k`~S;mW4|j3$I4G?cm`WS8>Ao z_&FCK$D`(@n5;*+Fh+DOsZv`&l@9*d#7Iqw8mfyV|0^`~JZiT&>)bUdLJ2eL1DOWFPU3Od`HsuhUcFnhY(SLz>u4SHZBA6%xSKdpie z!xI|?<1!!YOv>dreItW%<`?Bup#)`#5KXNaf}Lk_rJ>sr4 z*f!YWxW8B~R^eZFyW&zGY;jzKEp^&G=Z;wWuj~r5hdHErpwvk@1G+&YAEZU7CbUWQ2%c*Q3-kKw0TXa%g9tTRSQ{=D zN`0k*t1e~%)VlyRPES z>7uNmQvX05_M5L&$Qxsc=;ZOk?d#Uu*x9pc1g}}cP()_QVd(6YB80690yggY^{+6`_RVzF;ZA@{g6&^Z3-&?i`k9lUts(nt zjC6ygj|?Ls%=MOFOTsGPe~I_t(26}pvGZZA2rJ_O8KS?!un7yr<*Igc5x7+(4F*Hh zg}q{iE9G7|m_jU~7lGXKIwI(EmK`J-m`t8hS(h@NT7RUpFD@k`{X4N6cAqQ(T#8Y^ zh<8|PpG~*5z6Sn6EjXZo$7nQgYd7?R+-5-!ryq~|hFvua`4IqWpk1RmgnJOZdO`c@ zmBLO?OWaBmln@U3gMA=s6$o*CBlQtbJvb;pa)@GC1r-|4OM!LwfTw#)I|hrn;X(Kt z!|Zt-i^Z-E3vlA(?h=Jd++CssM{ZZj3;U|D<$sb|ajfCh;@l2Vx-na)J!5i~ z?7beU#fF1}x-*1bPtNJJ&ubV@XEdfs9aZ9a-~o%^be7ymwKV3OiWE2xVTii};l<10 zvQ|1$NgYAQ8NS{#PZuY;FbZ*A1=YY{)@#H+j3P;c4mTYq$>F{a*!H{g8RU-}-f~r@ zMZbP=N?IdZOMacFe%7BLTiYR2W7Y*xZ9F#OiNUlfC%*-xeX6A97${KSoRy;P)M{9g zc@2?m*bv2~u80S1&P@?d6l@2Z>vmE1GSEK@_rZ3e#sp_}OckGSZ#0yyUilrE5=qj; zp~V>D$x=1@YzzI&G*`n4R77%C!i?u?vM8G75-}fLVgZ!Qq_>MFEUVJqo>R52h zXZitK{^-2lDU#`T+ZJli^jY)gcka#OPE|1se=N-KY4RJ+?009y?04DnMaS$@C9~gd zTWFZs79nu6=Z3f2QnB7ELVEINB3xRVlY$$Z-Mx9m>NTC4dseJk)!Eh6)4g$R=LQd| z5PHzR!hpp0(p3K4yLCgd2YN`=%8=We;@oQX zGUMB?vgh0Bl5fw9Ki|&S)xG()i*DOe9lU(W#TT!*Zp)sFS5!t*01c`%taCP5);C_ z?1gZq6v73q3*lTUBDuli0j^~5IKYtGFfz0QMwOyXzWM8ncUNc6yR#(kmXAO0X5P4> zW66@m7cag1BCc1#2aF##WzUbZB|o~;;>QFr=wn@jUendHX~m|nDXWheX zy>-U#q9T$TF>E-~g;}~vZccY~q$oFumE)$l;XKYQp`jNTZ(Oly%>r1FKv_L_{~8z{ z4S#@VH_LI%z*p_Cz?}BMr6GN+Cor@a>P|Lb3#br9+(M3%PhqPhEJ@iY>6Piq%kT5t zCs<2p?`-5)43~J%0KbgthAFEvVYzdd!<+%f%g4X~5`n^jx5iZ0Qm-$_flGoMNG^6} zT5)`_@Etmka*i~udq{W|t@lBSscB6{_2i-xKQSIWk*=_GJeVVS@R_uDU?Cg7%O`-E zMG;Sjx_l-@G$t1+gSD}>N64|CnO<395Heg=V{)l?Nryk!eA`Wj9hQ$7)g9;&!-{+W zm*#MIIY6b36Xlq8vy8QT%_L*Z6NI6;B=< z(p7XnVfY8N;6TFgd|kqD3uLlnqqO!vCT z)zRTPOvv#vm0s?W3WJkd17X zFO>9o37b68+dh=9?kv`8aT&u4oACLmJ6`u!PWzczjv9_E$DoFA%JAIn&85U+(NysP zuXA=xohHH4%^A9th?L>UZptvEL2A|z+pftPp5|u_Lq%NaH7=AmoGM=QUAaijHT>UM zlFm;Xo`)nvqzxr`v1!9N@r6TyW!iAA4D8$k8l?^Oj+>8V>K5LQ48$e%aCr)?793iYlfF6wK28mu4 ztT=b)E^@{hf6X}if7x@kLvr?i$DgyaH?3XTed)FvS8Tm>)B5W=I@d2*ye*uj*1p1c zG`o_j|JP~X63L_EpsE&AheG>W@+bc)6gY*{;c)?z@9JE&xwD%qujV;p{l(d{{vyfx zj@DVh)!iqkL~nbr#)nJtMBrFe14UFtdwekA+v!fug0->|RZx zv|xe{$xY2JS*r4@>B>yUgUcijzLFLXEM((%GzBoUD8f%wijJm95z(niG4vTOi&B+K z{PFFisY*U*+$2>wTa2PN$yCa>(o0lQ@-BIz@}yOjQkiyVh*<;^^%67p8N<=u(84nP zWaU(~;6SqSIl5$JCnV9lhC#X#5|fk=ER4WP*>Yi2F0~cQXW@A|3{F01)6bm?K0BO@LbEQ*XM z%%!QqYRMApH~>jY7&5_in9UNC9#_27LP8?al9I^Sv}Bw(!=c48ExB9KnAMW$584)L&-6s8 z$xnwFu1`&VHY;X-(v~keW_L9x&iJ{YfbpXv@EXi7B;HWvTLQ5O(A+MnryFS=X7-!i}}m@2G-PWD|fFSUUS_I z&X(TJT^k2W-PbR^e#P$RauFtYpK-4vUD@imcb(*3ds^JHkgD%_e=5v8g(U6?%sJ}P zxY{=u`)|me{c9xqH?+?FwNylM7uoH3FqzE75ulX4q+B5mvqZFYa8EW6!|oIu<#0^# z7GA@5lt_2Wjxw(C7AB=L_3Nds6^UMpCi{-kRM!@4*m7H;JY219b@uMvxMlC=fg3t6 z*|}tG$JX+$b(;!nuUoQp)t2rxeLGj}S-zb6OtVj!{k|eyiR*akZb5ZlT0FIob++yk z(%W4tHmqK`aVwXL?>+->F!sMcd-kuBD*c|;+5Z?7k=%Wb#U{C3KMI=zmV0+p_U77H zzI$GhWw>4$NwS@^h%^9F(_WDK<#dJVd(S5Y-w9?e38s3z=Et&-hY&0*YG^?TA+4{` z{XtB17XDSwl&iE%G0+KSlyMxg@I5-8xLz9N6C_y+KKOCQ)F`Kr8E{7>e`8$ubGm}l zabbhx!XMM(f`xR#k-?$}KM5{|G)#(!PJ)X;_HbF01P`2jk~9g-8toD-Y|~GIU!oQqNP^#>OM;&c$y!M< zrohX&;@(0LGtqUPQ1-Inlzql5_3mPI6n5C%lj|#D0vz(y`6e0Z1-Ze}&LX6thbpi- z6?UaYM#`KrCboe9$Y{ex7ufB=#B~ks3UC97_OhD^cNg)}5?xqHJY1~9{=Bf=?{KwL z0J;*Sw`F@-a(gEUwn=Kc@y!3vSj9v6HL7|=XROcN-ki-mDohn0@H#id)M;WXZm!y` zB(!iAlgt4XQ1jH-c1@l-uy8h1L}ZqFs;EcFQTx9~WT>BqBt&GWC3&$K>NxR*{k~;} zx=Th_?ud*s)O!EP@>u#;n2Q}vNo``X(_3U)cMHupDB04~z_zX&s2pPl|yR?L3dmM=PH-z=H^pSFdDnQajO z{jS{GY^m_G)6xrOnw>s+?dBD*zpg$v9e&8dX|9&41?nVvirIxa=uSJS!h)XdFSH-ZcmqW);wpdzax9r_ej?7Yn}DC3BDyhiDHxI zo&x#c6y4t$apiLd_?j3-r{DnJ7*o83KkywO(%qs1jBC1u8R^V>yVS8UqSm6pz5_JX zvH8O1g?*szZ|)aOK4dogsdQzn<7Zy-^W$mp(?ZT+cWF_CpG^=D)TD^$Y=RgR3719L zgp2)=ucX-oKAhAfn=pGP4dph;CCInZ%Oud~dh$%dIcv&rwlWB>T(R%L5@M!TsGccLVlF#n03eih|zzT?@6Z&QqI9mFXXFL zIKK}Tyya`SVRK;+|78p9-2FYh?L6fPgbOgSP~5v9x9XbJ@ByYQFcSe81KR1cf3UIx zsvd^33Ss$QF*gLM9wJ}}j^Ql9@ziiYp`V$^S7Cd8ahNvj4m#MIAn%~#0ZT#<4}?yL zDXz6935l&o{FSwM^diR*)9TT^Rb^$}728`73y)SOXiDOg9TP*DNkn$D8QK~}YUAAC zBD@I2QqvsBI!&760=^tCqPWPE#|eQC7D~HinwueHJB_rKFEBX_5iSg{4BX4oaHjI#G9qX_B;S zP}3x`hJ&3Z*@YSt9Jbe{NowipmEYB>kR(l9WlWl6P^#vjZJ~aTs6<61A975bCV2&N zGRW`fG|2<_Y8Gjdm)r73*KHb-OmEm0YR~jUX_EJc8Lm&0d@w6!zt@&8I%bz8vmduD zG|X&^(CGJ3`)sN3(Yel*WbE4sRF+PHZ&XEl4m*u5xwc2_04 z7qrgqc~nFihC2+SCNOT%o7iyu4;cTh$)0~T$-hZEc`7l3Qv zzzYRBDHOI1!^zRG8CW@F)h(36xILCVw|7f!zheBkJ!4D9(u*#=e97WVdGHAQ&baYd z_T1Pbx$(}lxG_--9U?Vu-@j$^I?n5vfd`D)U&@}@dnL1^i#@FlohRn}0l5(z&xtC4@$mmr z;-P;E7t$ez#_l~GNV*r+Ksmp+<)5yXahnv%Z)^+o`>Vp7Qt(|CMfmw~G4^0mM09>! zjE0BHqWt(Jer6tPM$e$(>TF}>x%t(*s(Qc zU0(9fnB`ruJJs&EpGUu3EjW-z->1o=H$L7yfGKmzN#_Pdi(wUBtpuy%AX;Fs(C{W# z8X6uf4#A2(O0K)R&%%%d6$D3IcHh(`0*F|HHg(;bmV$fl-|0ylu{Kh zl+KiEjZrQ!xdE{Fl>9Tslbh4!3E9odF-9G63taApyY+WUo@|AxfD;ELvse;!XP8+` zy9PD0C~G*_nZ;M4#sra(HnTXEu3q_>#rsK;DVgg_q-x%4Td0qHUPeVE?@A=jEPenv z8RU0#X7NM#Y8IKr_u2AC2RQGROn4e5oxJer8d6!AvuYr>xn~-MM+is_r#6cJ{2?ym4*k=B}Pi8#jke zGmCzWh1kRQq-vEqDesq3{eWilXsa&Hf1l8d!$I#w=R?+Ptuw8noXSPQ7i`M&S(^QLRcsjrhJn%c?#t+gJn~odzOKyBGEpAvy$?svM zhnbFo6mQp-m2#>FXLslsWBH%5XZb56%m2_i%YR2jBzL35E`K6Ngd0uYS)P}qQtl2< z+#B8LOu-$V8B@H4L-5@p(w(L|jN^laq3ImJE2TCbPo!J4-gk$l+BnNsj1F$0>=G@C@KefS(8;8T=#;WZgM`bXl=7wKDP^8$YLZfJgM^{G znAu(5w@@S~n`D-QU%HuP`DJoQAvU2;zGXtoGdC+9GLW>IiHY6h$?h|+ zEtY|^gSpP~?ozc<#x!p3#(cGetC4HmG@HE3jP-@-8mphyet}wWp!KiTrM2%^Q^p3mNx34k?d(L8_xftNcZkHo;YEV_4B}DxZ{HO-= zBJ0I|I=!`Tq+Fny3Kcl!wNM`%UB=mX@X2A4x>sdr+R5eDO1H{o2YULu^A9_0-koFn z#@d`w$hZzTGGEl@+y#FIo-~^19?LT|d6%{R;dEQCOC!Htw*C!J6}0)Fq>&#Nb!V7H zPP+y*jVx<8*lFZ%p~eK$n%Xq-chc1>A7_4pBxwQGba>}sshVH4E!0PVU!fwB_eT<^ zk$;Vx4DvfVjr?1DHH$Rzv$p)vG5w8_>A$co)Sl^y(#R){h8V6-BcF_~Wx?zdpkS*! zmX6tvNM;{vTWFZsVVq}_M*gC$$o(|3^n#hDk!P*L{PC)d8?IS%EyphG2@9m1>8gWH zmT!`>T&b1it0o@?d)2^y2_)hR^(rbWx!d{_tyCSv^8gB!a$l)G*H;=WE`TL5gQGMZ zUQTM1h_FO+AoKOyKpwsrf+6Y>%$4M5zm{tQ3<(Do>?sWn=5`ceA0hyuy)eNM7ryr9 z=7@?$0Ad1wt^bok$%)~#IMI@Oy@IH4Qpmd> z4F{aT2=dx)So^YOL&yn+A2OytkUi7iDw%$N>rB5_a4hj=o-dm}-(TDVN9lIK1RCg3 z&!0c1yE;;w1HZsu;CzIGa(l(#uwW74&U&#{N2fGY=>?C8d#j00=>VswZ^_lN{2skN z&vRsL%Bb+soJbzQX8QE=f#>(6D>xsqKPq@kiL&V~$9UcNN)(n-nm5zucBpCKT2Tz( zPzGX&*KNCYW5f>p z%2TF%C)^h8gDmt!$M$zfwjT>sS@rOIlsWLd) z52M6#$vemO0el?@XQ>CG_H+f|d+YgvXB3FmrOE-ONLWo&Fte}|og%$cD$-nPk%e~J zD^f1Mba-^}ZEJc5_VyMpy*&D8Pk zU6Oa}(&C+kOtbKPC#+u6wF)-o>A9(M<#ii3u2t9mYu{k(uVl~uM*|_)+-C$qORQD<62@`J%pE~s~x^$zFP>A9P?em zF}s{O7-HeL9Epo^=gMZsJ>w)&G41eJmrJhDIpq(=P;TN(-OZ5I>cmdSYuqgwT2@+h zzhtQzcb>`9q3hDL6xU9iS3uGgbFmM=zqgJxj+Mr@P%2@~pXDL9RCeERZ5!W+*iZR! z)bWV@ltm*g;)pK3JtiIOi^!-<9i7cT3j)qIK5)Hx-c_n%tvKV0Nuu(~I z*`h^@q#pH1HEi$Q!EHMJRmQVLF+8(qo{nell{{OJ7SAkXnT2OP3Vi8`?#^qs^{5*v zhn_K(Z_J+M?~^QF*E-ABP!Y*J>h6$7?Z$0$AfJpI`2?pd;^8!~;}7MY3j_Ibe~~@z zDZvJBBAw$pS&?fNzqtT>2v%q1`-`>Iou`wokbLLaC-_ORcK{FQ85iy_1w;}u_LJ|I z3Rs}lS~wElPns&=to5V0E|~%3Zjn7<9JwckBNoK#yx<2UNA{=1kqP1jr>v!G=6U=U&Wms0Q=62c|&^Hf0MSsMLY_gF`vT^;4Ck!B6auo`E+IFyT8u} zwvzj+k^3`Y669F1)i`s90*3{om`Wlw8GFJHNtOI0HQd6P_@2;IB_|`VxC<0NF&_L! z3=b^G)%m^;OCJ0sh%C=I(H&N594dG3^D>%9xTM zJ|YD%8LDbA5ju&ANbVnBqVxH2s_$|wv>6~#7CP_yN>lZmaY@G#*xop}!!hwb@H^wisu*rq5U%r@AC=s= zIxTLb;599Z@E3)ODdZ+aL@x>zi<-h^(W20$e!Aecn+`iH?}(%UPY{UV$blZQKQvz; z#utS;H=NFMAYYh2zq>TN4CWlJp`Fad(mdV7XBa@Falgu*GEBW58XkegqziI|Y7rLg z0f5`y4om&E(?o8!uUo^Oa&HOO@1aM8b7HsSuC?vMquZ(b3(E<~G3wU{g3E;I+@&&X zsh;n}4!793c5`tUMvii@hskD0qQd-caUi5LiW_9a z*-bQwlVsG+8J-sMrcRT}$%}q)JX+h8g*`AAAIG7v<4G|0UgzRJCSCk4;FuL2+XTKT z(uMi!lQ$Tx&7O5lsSGQ#yXwW^&`NCfgfZ*m>B`(+cl~#2!G62ee^R&Z`k@tl;Ap+Y zE{Fm1u)+laCFFH*#1LGo-h<-N*}dQ{E2H?8NZJg8_Y_l3V6~0-tpMjC6wA5c!F(O| zG#Od|rPW5j^%8I`!q(-Z*uRHy(04mm|VilbL z0J^>+Oh1EnNTq188T{;ZX7d3@vZII#^J)n2ihE%{2si`B8^cr3*b)0;6z${)vbd(5 zpdp>B+H|ZWi)FP_pkPS*%sbdwEDi&L$`wcPST!Zm z&4m(#T4PP^Gd*nz^%NR+9Bk5D%G7?!DN&@kpNRg$Y#nR4ZM4UzmxU(yZg_scHk{0a z31?Vwaq`w75g8lL6ViAt$liEN%-#9i8PN16;38)y-2y0sdjEbXSntN1FeC|A)R@(W zuz4YLz5zDpd5=Iog!x3`A)Bly$0BY{0OSSW-NzwM01Snw828xeIWl_wcr4kpVR^QX9R-NLUDlBxWK&BKY$Q?Pada|m+Av_SkSel`gJ2a zB#{x2thZ?iX*o?|>_!HsP7JWYTgWbSz9<6(cM>4vFy45@H2`B^PB0F20(!2&L`*~|3*fk} zKKKQY4R-Ul%Yn|-mBI+xKP?#Xr><9N7?jp_^i~QrSh9hGqw+&SND&|6+wE0y7xXoJ z>A`kswC5)xkZaXLFdbB1pPz$N}#DyD8VVN5`+ybu@;=}YeBe-E4`+xYJe0qR|BFu zp&EQAp&CqT=j@J?e@agF%MngCTzq3Dj9s{>F$`q+GiD1WI2Q4qQtz4lVpGtC0Z6sb z+X7QDQ1^BHST4LCLtXr4rnsGFn7X*g)|gs@RosQ*m_W4epC;BbeGvX#dzkYf`e#Hs zhY=it`Y`;o!TAVXADRq5{4LzdeJ4Lgzantn;C!6!KS9?|()Ckx{WM%1%65Mi?$%Cn zJ}3Tpf}Vb!uKz&SC-K4I&U>MfwNsog;9pamFVdqg(e=x4-S0dG&j;>zz5;(Z|A?1= z!pm3j@-^?bujAb}@bXQ(dJhwr7oRx)OxJ&* z>-XsTeY*ZDU4KB=AHr2I@Zad~f5*R{!pr-hp#9E|;1-(tWB6zNv2&ewz>gc8w_zP` z$IJi2H-CbcN9oBs@yB=Ju;*;QSOH{|ql5f(QGZ_v7Oa;N|D=;{oS!xIN(f zC%!+)c{ly>CVcv4yu5|}ek)w}JMY2!fj%54{4aQWgY(~Ty>-la2L9PM=KNCp^Q`#i z*W#bw(m!p^j-60g4_=0!2bUqd4Bv`(czHWs-h!8}_5@;`X_C0_m!Kl>71Msd@@ z-FW%k5L|wZmvaZVF2Kt!tf-8aKkkFe@A2{xTpIL2yxfF;cH`xL@bXK%d=f7o!^^+pPT@z0x3V6VhKNpwa0lSKD5yd%;50`Ew4r=k2vbbmmZ zlIYGy`H|?RdZJs5cO<$?Jkj;w9f^*PPA1XiP<|vj+WVSBM-v`Mbniy_k?3fEgG5It zoJ9ALeee`T=X@70Z^y>$#!G!WTsrYGD-W0NY;+=G{A@bW3Vyw-tB z2`^_M6Q9Prr;&9X$jRSV;Bp1>uML@VEpqK=sPMb-&jqOFcxbiLkIIdEjXQ&w8lVX# z&L2r%oj-|x4x3Ikez^E&viN7J_-DHKXQue)Ncaal$WizYGztE3j)e<&2K0$*Pp`dX z4A$YzhM#T)b(_D?bN-`K1KSZRy`R;qM*xdJG7@Haz~RTG0!-_u=c_o*fNLz4!Jd7v zn4XR+rg4WrrpwJ$&ha`dqU(NLvm$Zdyk>>MgxnCE$=wc3PA{E6ea3r%H_n+*uvw~{ zEHdAiG6;#;!LhZI8k6gz!w{-h1J`-rZcHA8)1k-KE|8&m9=st2<;b3SbNs<8cz;K7 z8D83q;d8uEA?(hIu1Z*H%bFDeQqvTp%IP^-$>}n4IibHalG7!MoXFco%IT6!<%GS2 z6y$`(sB*e7D>-$U%L${Ik(};P_lm|9L%E>a?d>uo&PIthn8n70wVwv@%>IQ~nEhAPN&qG3q?Ip80Us zGhek8JhSk{>-SCKK02UECR);n(+jrkLEMXMSoC$kwoF3YtN%ju>K$q76*9$7%^7yj zZ8c1&wC2bdKlp=!A~7cslygpje>OO$ia$=LKRho7>Y6_S8nGK-OyGzK-+v`f>rL-0 z*I~g!_@EU3XQrtC;3?{-T_$=t9t#KPr}RFj7ThQkMR;m6stVQK^$^3c1~I)uKc2YetqZe&taNq%P-N`v0!hQ`q@Guu)7 z>tlD1ZD<_j{k9`tt%ZIG2j0=dz56(eSoGIHZ2LiMV&Gr$AhvTV8tO@K zsmU>2`sF}P4x!Q`2MwZ@{uo+d?5r8?LbHHC^P-e+*OV3HFj;>={>FmIO5_gNLaeJ)Pfs3vqxMMCz{}{Ju6^S0%VU1wP2nE9G;C{8yB3xT3iIIx!Oo!0H-~} z23m!kHOz%qh6zFiB71voMIAQYf=OFJtOjwUuu~p$LKOi}fZaTKANinB!Q_8~DyCNC z?_;V>Sa1+iafJX?Prgv%zS`)}j>=#gAntj~a@{bo4VMPeZ!qd8Wk)lL0Yj6xP+DSO zg_g&_ygOHT?YXWBO|C2M&BMSn3{S&uKO*ku)~s9)bLR$OQZj;ZS;3yl$Y5{I83C9F zC(pnu{;+fi&^x`@=HSMJ6OC{t`o8Q%FLC4!sL3qCODyCsg6L6+bvzZ*ErPg_46g@! zQBrSKkjdi@G(i%CS%hhrs7Ywxu%$0q_X3!+RfiQ)@Gta?_O`>!$G$wAO0-P8=Gkyq z_RkN?J}Uy44EL#QN!xs<3CK8l5M<8UiTw4siD>TyJhF!2rGwg^g zX3(LGEX zm*)evD(x(`^}*<19Y7WiW1wgt>f!I`Kw)*2X9^*sasE9ljD+Pe4*y6cI_+R~l;H3W z4+4khRB;7}w2Ae3T-Qx&zj47gMkokQk?j3ln7v5~W4!&}?0I{%;O%b?0&lOC=SG%_ zRaJxiXNVop|M)$F_MCfg+Ok~7yy(S)*Z76BQh_I60t9Il$^?Df9T1e#>(J}m)GPbJ**PoLjDXvz%|qjXbJ)rBEK032!6;xz@l_z=?sZZRz%PN6skMQJ6fF~xc$|G zz-?XZN3Sp^I>el!g!(yv)8G?N8Wb1KP+mhsfG;Y5;6Jlx@tK0f|B*e5Q+Mdn7MnWs zi*6c#9qec?QXI|C!`66v+&t|l!f2Qshco2rdn)e8qCb*CBC{%i8OxMAGw)TO9pS&< z$48yLNtkWQzF!Y_iR3kG`a!wTWw|vpqzd~Z4V7R6f*p|Ugb@(fjhZ?iGS%(A4Vx>$ zb|HI^*KR&kWWM3ZN;%C?9Dzc9OYC|LhfD@iv6z{0GwZNzSPAASVkf6ofVHx0|cfhioza>2i9Fp(B;3-qsP17ql$ zz$vTcQA{gP>R*}BK?w-gdAJ#1m_`fTbn@(Mx(H3?fEvosk)fm2M#!vC)uAUuvuq(v z*;}mVOE8n5T7;c=s?a|I>wpbD6x2m{SqvA5WgU3G1TJ#M$9o~#=>nmcqv~gK&(TcE zehC?fV*FxjaWv2E+v$zAdE2+c`3v=d3XNKbA<7yYwk#iu=(#``J94NI60W(y|o&;QErsOaa3MVsjW}YC?a`9)|+^$XA<}x=% z*3eGZZkPwx-qpQv)!KP8X^BK`Iry`|zIK6`dg!+{DiFqI7ca=o*)cLYXWmSDr#7+! zjq!p`>~2gQhMm-L@5(>H5BuERplG!z zE#~k;*M$)h4~_LSjzoo(skM-~@kdN$AI)B6FN$bDSY@9ySJ|0!JG65({_|Q0;!ceZQFbL%0bY4#8ys?JAFpnA} z;?|fk`8Pyxz0J9iKWTiENNRIO&tU3XFnZz)@G3;fxiowLUdnet%W}6fCj@V8sFYz2 zxtKk-EJxGo;Mc|N5J_nwm|L27&!1kj3|LWzHz6qs3mXb0Oc3yQ{n<-B#22WXvraHd z(%=Q=Hs@NBx%J{+nA$#et<>LB8-@kN%W~c;xw%(f z3Ck4)>XV(DDfAsj&VN+Rz*nUkLL^Mexh0Cu1N_a5b@E-%#W0-BbSu;myAE;_ydcyb zX;oJ{#!fX3?~=hBxj_f5nr8fZihWMZ!3SN0;I1bMOr~Jye%7k>PxsckN0U*FB!KJ7@^~^_Dve$AmzE6u+HGFnXK@w=S5jJjD zsBuXb!_Bp6$UY?O_T&v2HfYF;LJj%KUzBTdb*#-f5NhYFKs)`n9tpiQRlMcCAUufs zBh%33=7Mz|huUJ@$Q$7Wp^=wE@t}6cUcvqAq!4O{zZq3)EvPyJ>WHQ47U?%oP+<1jYxsm3(; z3zv(HIS(I>OZ)Lp+QM$EK{PaG!7nv96Q|TyDvTXy%m5!OAlI0(b3tP|JQUG#gY;-G zfL01g^#lFU=@Vl`G#L|8{Oo>Dt1ls{6x$4B)?Hj85s@oD*!U`BsbXM)hEm;^ge-#( zm`Lxp5UBy98lr8c7W=RTRR$I-sWP?L$1SKbuvke|Sf(vm>?bTp&emd`+kvE5EB!lo zAr&jN6!Uj2cxEojm>shTUIsmKc!+%p%sX{gv` zL6t$Mur!YsT2N)qt8l28jN^Wuc~Ih9{KTx_UJKe<4-$fr*#?OdG$W%fJJbL%RlM!K zAcBMYBjecHEjVUik8g(JEds-bET}RF43a8SFYy@*sthz=QWXviQ)n#Q6J>m4kS{Y4 zf762O)8LMYxM7+hsR zl|e9&RG9{Y^%hha=)9yV91L0-MC!31xwSyhY}mJX&){a#nH0i+rI<%8cxEnU(=hN- z3#tslfF-Y9WkHoWufky=0doxUJV5^{kPqh@ua28HihP-S2Nk}4%Azzi5qnDPCCBk)xw-k)2L++t8b z8d~Zb{DgESg`i+5=E*O~6z@u^OoPJl7E~Do1xsG#ET}R!iEvPu)ZrNf^$g%|ruFR> zRJ9%s1Pikb2PbN0!MWT}1HugNefJ#^4+6h4&RuK4IfHPp3W~P~2U{$tG6)BfD${UK zu%OC7_a#+IIA~>R$cP2WErtUmx215fi*zQ1a9}Csms{}6T+F87;2{gD48nmWuO73Y z%A8l>aFDEz@V6GUwH_1%BeM+(XQ^|bY3g>J;4lMqaDsx`h1(4Miw6z{U1S3-oAa;d0r@;(ecMjEE-juYa z>kpLLo`sbmdAX{j%{dF_{hke%h?NiL!Xst=Fik;*iO}cc$MbM@+XZ-6LJwuS2vueu`w=hf-})kQzqzoC84yaI%bQtWb^!816~P5$Ynxu z<~{!4&B6pj2&?;z-2-qa0sMcS_Cd^%^l1|z0-U&Tu`oD-rv}Qs1%kT=iQ}Rc%%nYp zU@0N&`ctTm4%aK8{mHVbgn`%Bv8J|s(wE2739U2ztkEFfDz(`FxJ0^QPDE%uSH{~rErg7!66rqU5KrmWPbt8tq~8D&E)(~!WOY! zth&n4HkP@C3v*rKATD{f2Q7{b9lr&OdkYXXa9N_<&tQ=}0>m?fHmAf%gEJnfT+U+m zN5R?{g!X{xPy#)^08QhEcTs|Cs*T^oV2B+w_bj(FnU-yKUcT`y2G7Q@kT_( zxijT?YdKhzE*9Fm9zb;w!PR37`vo5`p`7&6Xrnc;1Iba}RU8imN4g4pI6ki8!kC&Y z+UL89HfoV3*o8E9GHi zuxSVEza()=Zq7FNZ~gk!tLMmKfA{u?);KAjI@goQ87hGX%t`G?*NA;5^*oYg z1fIc%tvjjEDjMdML(f>7_r%n0;&r6*`HrhjZ8j;Q6~{G-%}DOJf&vLUu2^|QI+M(Zi_;Bh6jWUKEmmPpICdLb<^@J)5@sukcU>{{p zOyp0xOyPgi)n(sSe?y#$uvL6GKDK(y{^*)a3{A1sBcWi!(e=O%FQ%Q6jx6n2jsACDVO&{7tvRpZA?>gPFP1W!QwL z*XH~u?SU?pH?vX$-Tg0k$PLaqXHM{%bXDCq<&~uB5vGg}Q!wS=v};mAb$0d5F*UVh z%3G;@CPlOoc5lUIBsb+C^TVbb%lk-EZvNGo@jA=2F0Qne?Dr~Tsk9t=FAvYq%C%9Z zjqG?!xwlvy9HnD`Xshc$7d-|xtJAtzzf^t9xcka6q>`-r;{HjNKkx9QM)D4~zU zPd2Vx6w!)ZzYCj@+^&NH2-|fm|0C_X`B!Jg>oC*2xYAm(>wAo) z5@FXCRNUgFpFU=r$hgTX0u!KCa{^X+MZD9NisfDrJj)zP1*X2~Gwq%{*UiF)_H8BG z_75e2U6fDPz0od{tGdmUV_TDaGi5hb>$=*|rmW842f$X@gdIr}Gl9wYmN!9zvo^x3 zv^n-$vL2>Z=ez?HL`)hvMbp{%1DKN8+%7R`3%8UM6S;6oSK~+$oGTW8a#uroa4#MH zQaRD~=nDJXi@8Z#-{^^$-V;_Y2ndY6Ps)DzVb%f@{ zW!=5`G68)$O$h09Ruc#*g-I%tMP@B%Uz0Io#l!v*R&yfjiff}kF=Y`JOcPUlmBjpL zXktp^I2`;e_vhN&W753s%EL3UoRwIlXb)I8*olk zVruS~0Y+IJLv{pojQu2@bJJZpaNa#Hh6oc|2=dO^0)-~e2{(MwQsrJ4_r)>K0`2I` zUY^-{HMCz7P?}E#@!=1enLYdo*{39H0h6^Afj%M8 zp>{L8W822`GkFIdp%7Pf-9~Ov&h&jSKVGQI=D8bWo6i#j|y9wEIP9Pv1xhFa{^>xWF(B8XreV1cO@e zBNo2j!_=5-UWChP1voycRu>5LXKT#pZSX}3!0}iC90MZKfX5)0TmboLs6Pfk%HxRN z!P;d6AaB}O_U4C)GZrDzFPpj0o!5nT0vFE3TRA0+ZfQ;!-no;);FiW>2aEl4IZUiX z)e@L010}&`A0$aR5peE#wiqPq3QC z6C{40)!cF$eUSLiSa2u^=|JLXIMo<*X8|0l+m|01gad1~QwL;wG+O*GEZaqkG+cAM zS_+rt(=qLIj)Y|s0l?XqCMn>`IEBdK#r`^`*a$}yry{d}5D`LN}>C_>9NR?~QbjbT=E%Wd?*#t;@93K2T6 zaV4KT>4kf+I1eqgWyO42EOw zilIJYFe~4rZyc3w8%MTzfEvL=z(mGT3}2^dFstkcSOdSKF<)%khu!0aU=eKG4;aci9N!v0r2QvmC1L&R z(3s8d;foZIwwrMlV$q;%mpd-PJ`orbgRnbo{zBtr60YZ*O#aClp$xyNG zD3H#Scn}0@rfAqb&m{S@vz0MaN1))?PvX&-6$-v3hC~zP3NqH|fP0RQUgS#PjK8=zQIu2=UMfMWEbbybg1oe(a_Jbn#L2g z{R^wP}L?K@a-0@Q|CP=C6eIx^-CFhygwpJPqQFdMDpWioyyrS=Dbg(+ea>x+}) zwf~BtIRdZ6ev$!Ro7w=Gm~~pUrW0hV^MBCpgNN5*S*XQpabHAW04)=wqtyA2=LrAt zQ{arox0~QKwAV;z5=WK}uSv4L$rRO!Kp(GhAIUwH1vh=X#-mKwXF<%2D7{T6WD>lF znk(?yax@IWYjk%=;k66><)_xUZoh~uN8W<#VO@w8hHu>{i6DFne#BzLjpoj*6%4mo ztuBD!mTSytJ$#V@hLcnG0wU6k!UehHqPY^(AA{zW3n#UawaW<2UEqzx4Z>=VYQ7&P z^1;8kI$Pfn0(eP3VzM4)L~<_^f!E`lqt0hvCD<{_hMFa%Wd>A-403PXzIzVrtt)F?W|_*A59{z6sHg5 zF2sV90J&y^cXGW@pfZj)R;ASbAmT6va!8fIl*6lIXpR`Xi~S@X$HgaG zy;Vh=t}G9ROxa(JY6o1=@IC_)PGzn{Kpl*8I6}WL2_uX zk)S1xEFF@QWVJCZup-b$a@xvz7q*2V-8)epK}g3xV|d_Erp{agBb-_*sP64* zb%8;=H5zkz6MT^ZsykkwI?g{eAImxAV!Mw64Kdhmjc{0RVQn+Qb|J2WXZ7N;Az|$1xxxP-|(HK1ye@>xIew1RA1ovL>JkO(YUO z#F3=~Rg$c)GqtfI&<9oAEpg{y!A&1jaR(oE6A-*2N^cYTlLSQiS%nLe!Vqc$az6;6+z(i&-DK`-S^-b%)anA@X`{w$u7xjB z08erag3B`%Ho4q!0aF3$jR8y>g)>^i+G7Nm&Ikae-TA?hqFCKaY8OIH@vky@I*cIh zIU>MtoWs-k;TuHL`&mun37u|dHMiVGA38lB3r-6<-G_x)L#GE)YGV)sWDcF~k0Ck| zI>mlu3Y{K}p}<7_gKTr&1chb@o#Ge}5spnwwo9070~(@nu_n+7O(YT}#F3?gPLiy> zOlVdF`p}8HCGH$7xamVD?&`yC0zy|r>1{%Pl0YX^Gy$Fd74HZ-(cK{hoi6u>qk4u$ zYW1ES#hywT{@2$wFJgEK&bS?@^uiXx?b@-a$O4n%D<5NQfIxKv?2;GQVaYp;vdy`X zKWVf@*4%dW9RJxIFALJS88=WGuLhb zZoVkQvtuGy;~WURcobuy$Bjply+)HXLPan}9rUtu=QP-=(%k^^F0aU@f>Yepe}kw~K-y=oz-=G{J2@(9uY&Iw z<(GK8aZZzB+vbhM!1XOcXwNWhj)CjpJ%Jl10Yoq1hApt~4z^D_x*7En)60u3^s?D$ zy&=qclW1)RtI14RB`^K($5|H+f8YodeG;%j?i)5$xcKNjP}d@{v}xEnyrbAhcd5oc z-*;gk$Y#U*i>V72()#A1Z=N>v>B`DF>Yb&l6udh992e_m>pt`xJ9%vVE6hNOOl>od zaCx;lUrW|*(?qzLDle4aHr-{H*Zgo?Q{Ny4`9CwJJYS{K+s`*5>^lb0Y!4J~<{)CC zS*?Y_BBEJSAt~PH79b*pXm*+iJ9@=d1DRgE-57R8bYbz~YnyQB&tpnp624CM!xuHB zrj1{bZ!uMT3!@^Dea1p6*by`wPHq~M;(2_nqy&gJE~A2adIzG`JCH#jm>+EJ-{9mZT~ zXt+|Xi%;n_fzy_YU)sb8ApxohJ)&f6DgO#nIUX$DEU-Xyf?h?v7~-0()OBXB#E9Em^#zV?nNC z3H)#AJg?_1BzefTBB&4F8*hE+Q}to%WZ1L0xk{AX9Z2!ad)l+K1)U&m%E5okRu_0b z2h~Jw=k7oBH)_?Z3#iPJOXvCT!>otW&f@ZpOD^$$qtLiKC(hs%KXd*1D_2~u1oic2 z4 z^uKZmT#3#d1oe5!{o{;CZwGzOW;AXd^(ETripSFB+6sdJByy#4jt{s&_DR3Y&HFUz zxSKaHV~}Y&E<`4b2Y8bQuDy)+@|N6u#kuw3UO1d&F12Oul?!rL^cHJ{o?5BDr#74~ z6qn_^S8{W&yb?~_aAzV=k8lco$0uvHfy|@wCC&{Y5+>!`5(VytzlHv^i7w6Jn8Knu zI=4a{`i_q5%Wr}gMDa*#WQScl*r4>4uJH;xPo=f-nnhb`uuyGLwX&mFt@l@NE7nRo z7p<-oMutFZYKvCGW(9+lVfmx?ud3{Sj&U9DRL zS_pZP;n8Kil>(wsIGhmXmAa2b0!8Spuf1d9c+g2;F5yJu3|~*#w6DPLOhlb(vpvO) z5K$|ML=Bgn)kwnqF#fX^8l()roDEOSM(`R(bMB2fp|elr!pH!pXb5i`)a31F7T}jV z7woz4TuCkkh!;wE4z|WiID&+dpMZMmO2C%2Ww~Xb4P=_jwu`}!?XH=%2|Jr6U*y)7 zXEpPoobUmbjpL&$aaLT&JdLvx3ubc&1zEiMp_u9;HR=0sx{#QVG<|qW1?)HfE~ijimPl_!JX!6W*B!uA&lYtg!jyAb*bF0px|SXHn+! z@Q0vDWE0~%R&Cz4se7Y-a*6Le*?~Rhb5{{|wC$ouZOG@X3YlB-$t5R+LcUw27plV^ zeyXI2TcrGv`S!OlzHo=*@H6EUz5!Bd^z?C=B*o(mb(;7P_~@=>CanGbq3TC3(Agx7lg4(s!VzHO$(~bc_nhI zo@AM|AmP53;?|;|k{Ev&gE2K0;(QRRb+u5b=RtUy3i_b{MJK;UIvfN+ZO*TtMjZ-j zxPGTD4}^afUR2;vpfy4r9>(SceSZ`ja$W&J(&%hJe^v^wghbbbuPmvTWK!njS3o-` zuQvtnD6dC%Y2@`Nlpsj(+(Sm);KgF#Q+uRFM1(xANra>lvkZ_Yh6ALiF)}_*Vb6sR zl)o{1KMUpPX(qS#45H&{YITi=CTet)EOgzH5*(*_n{BxR3a0+PLuH4j{1MzYiH!@P zc#GJ0l?7D>u~AZG%B%GjR2jrZNtKu+;0l(R3ce9#DoV(*3ym7{a28;-t_~{ooCr@- z4vkT+MnuM)P@y(5O7G$Z#zA;b35`PVS@%se_i zpjJ0=`;IOXUDu?9$H0kyw(;>%l_6=y$G1cA7V+_;7E~F;M@f}weEhrxRR-}`+ptP#3H2aQJVwM3? z0d%6q$oM#gJ(qn)@f(Yd$G$SCncUtZdM~YH&5l&7o49>P$wJpHDZz2t+)}w0Hve`< zDPgBJ!?g0bDm&7Qjb}sg7O}Czf+~a9D5)~#)m0W$8N^0OmFzo8!7@|9H+(0~O+^V= zcA-&Y9?n@F$sUj2ErnvaWm0y3T8jV&mK<kV6@gHD{%8fsRIQbH_y2c|Db&S<#r0b@XP&sohoz*f}>~A4jKBzJ!&1m^r zDBdDkK59XgL9~=qnMTWxT2N&WEhSYHErYUUHiIwu&Yjzg63FZVrp8X3*I>1-CMxyZ z0Z&s7m@&>r#LRC)o!Xe`I~zA_eg|Gv!e*dFB5dA;P0TuM@=8S53{a9r*!(HBgTm&| z@Q%VJ-5pY4vt#3??ll`X7zNE{({)6VS%yqy1VmOD88D~v7vzwu{E->{;SU7WlN){p z!SYYc8mPL7JLKvz(RENtsGRPeBWmBRJkgy0CMn6|pm>Wwd9DRj27yviWf~|uET}RF zl#(hr~5z^LwzVl*44C!x2GpBhaG_lCIxz zL*yoSQ3;WO)`$@K2j&z&U9*_3!z&RXGC)ZhAu^9*q7bVAy@Gmi;mAnIeOrY+j|DlagSQv#2s>#EOgzH5*(+^ zt<@`qoh@`C?^D^4W+(DxP`pKKe9(d_gV-pkGL4OoT2N&W8zoh8$W;oKnF_uUWhzR@ zvI~tG^KcGewXO~-^;F?$%AqmJ)riRWBvh!4jMC${f$}1Whg`&?Ursde zi1SmA6+iP>L3e4eg0{aIk14$uiZR@c!*w`MZ*!@CpdPojRll$>@Ua#eX!i2)yuZQf z))N#`$A5k6;bTEN<}kuI5jiuaun0_I(qlwgBbD5Aee0i4$2|u|4R5?|VvUUl)zAwh z$_m$6?6u&sMD~P5#Iwx>)k?lz!)xa(Bq1_7{vM>0N_3oe7gR&*Jmgw(#x0DD&P70p z7Z@4O+?B2uqvAOa!GZ*53vMM#8;b@SAp43;qhdm0o3f8;iz{896C=)+R=Rd#!9kUB zS93CLx;Ccz2(xcXHzs~jfYIPHB;9TXf8+nwmfvIAjGy7rl zSE}srz+nXUO+e6nP`t&^z#|q^84L|bs!WFl-eWDnKaE8sYQz zV)KGNKZ`+gUWtHY0ZJm{n88w>A7DFZY~Y7@M`HtYmqv$}LdbY@h!=0#(rp+S^@HX? z?SV4042*IlD_mn_Ts#8lVPTPeVYdD|rj^{*Bm8nJeV+eOtD9&8<_ddVm!t&6DRY6r zEew~>dR5RPB;vhEOq>SATg1duEvPbxiIOVQm^jyhDub9PsiK%D#mdYCpZm_6i%JPq zF{76;AyH!*&Qz?{)jy@4XTX?J4vA4NMnuF;ASWUsl4o%P;x+J|5)cDz5dra+%ooIr z479Sgl~*DHVt|q~0^&_5BnpUI@s0u_-DMLH6*Y)aHz@>vu>22fG)Ax^Fl5t=9nA*I ziykZbJXX+M8mt(mdT`FdtFsU964zDUF98E5^fpn%t1Co*y<-eMzLs zgAbTrdm)O+1Et)rWf1J)20rBvZPKofw8>vRU+pi} z#~LJC+S9K#Tr8CON`^oavPj)M$gJDMyWjr_2sO&EDun zjP1#oVs*-FpzR{$%tvN;wwqDN;gyJx6QHD7$Z2{W>uuNw8UcAe-ch`vyF)78T<9MQ zm8{#pB+CdRp^i_J>zy>+e)T2U?GHR)UTKVJUFO~X`_<|uTDL#IDbF`4-TtF*XQ#{g z5-}YCc!$c6rcuG58}k+@-eLsc!xmH-bYmn{@go3}k;6QMe%6Al)`kF%;$m)jFhI0i z33V|8w@Q@uk08+)lk;X|ksDGKwVk}7QudDdG~Y<)-!1rWpcelM#aoO7JYzwXfeA^f zOh*F#&w?s*UJ=q1Qe|!(iT1$+ckAP&eM&v|08uFeI!$b(VSv+L6F_h?11{Yi1~>y= zP=)~l#v?GvPF1=Z%=QjP;Z+T zfy?MbnA}jYK2Yh6JetcZCQH;N^QT^2Z4gQFfuVr#`4N|ej^`3>Fh8Vg7O_Bl&7kE z1-04Dpk*r)dNf>ib|48J8VQfHAi~SL(AfzOweY9m(H8zxgh48fv0&7k1&+a(%Lo*o z+L+6(77B|Pb7?9PB}6X=B2o^~^7OQT@=}C;9n|EFu>@4u9aE9ZQM}J!>6a3(1L`H> z^;J-)@8U9w*Sr!DuLG1sx-B`gvgsJgW7r59LwOwUC|J|oAr-9KO0}Nd`N2|eWUTh0 z^qJbN?cDFP4AK%lx>W_27lys>boV9CVUg4Ee`b#738siV)<%TKR($WL)#@6ro>&9% zKKml$!Qnpt4JLXi9pt-k2^yu|HEeOdfvj>#Q2gJ=;AzVK?`V-A^4m}D@5fM)=l*;p za=o9bn2PfYG(@!a6HEy*a(=uL;rs%WwCwzTgN-2P_glOp=SO#kl=Hig_F)_zEWtVK z+6}P7^TsY32QTN-7{qpjTN?)!Lvj(a`cx zv1qOmq3ni=HD=?Sg^Y0{p`xIZI(+psRfJnDSZ<&Q+n{(*PbJmTmDz?Q|g%pM5Te5(^^HpR_q=L4Xpg-ny z(GfkOGiH*NnFYmL0IxGGs4@Uvk}6Z+b)f}S26iK z$RO4l%6h5FfHYCoi=cQ5l=UhLstlrqq{t8LXGUrtk%0i-}eD`>1pHk0GASz{)#Umae ztUo|49>S7w%|%y#gl7u63Yd&QS3`_>8KEm)i9lBYO42}AN4_4EfY8-Zct_}p?hYw* zbumTV&?2_xb1Pu^yrV!ucZXCUfwNtzrJcoO*^#AL#*QO}QVDuo z->=R|naW=f!NL8Jg@gS}%Q8=jyjZQSF*dQnfy+AA@hEBjDSd;LdWK22?|1+MF@-7SV47wkJyzmzC1CAR~DL6_NGfn*)3%XkCxJxQpPLPNu zD*?=|>#ngN=heuXNPRtGar=nm1%aQWI%}o@Ny0q-{`` zI{?*qqYtjfal_op;Gq)c0%VIYcM-P3^FA4cIbMkfa{)@y2y?H;cF@4W8}N?89NisK zVQz_t8cXuHAztLjbZCYCIl9>b?ZJ|=jE8bRuwZp<;*VuHaMK5Mx&DWka`Vt??4Umu zQ&>ctHklZPv_=|&>2m$|skAm;Kf#7o$dL(64~(vdanzAP#d2f5KvVn?!&F~W+utn2 zw}PoO>~_A2B)9>>2_+30vjQgKwJMxF(7gl)`|-2C8m`}G119c|j4S_P&J~lT{6B)? zbzS!+aO~F>R2g*LB~_+y?1%@0agn=@6s%oR6_#ai+E0@qF?yAW_e2YlCjwSG4(N_f zMH%F@1XC3-W&-;B{X2h1+8iZn9pC&_)DbzYrfxzZ{V^aSWgL0D%os5DOK5Th$iYLC z+_}0rtl8?vy4+R3_X(8wZf4^#C{sPRv~N|Vyt`Pf=kht>GZ9sk%Kf=|C6_Pfh@f0$ zhf^%n+jHFmrCJXDe>h*QmkJ|;`Rd?kZlqT18yU>?RjRpyC<{NY(CN*x%v!tWglRNw zyeeh(dwojwD?z_^V&;!WP5EjbHp(bgYh1{| z2TTw>jErQyU*`~{Ag;v|fN3*@Td-g{+1Ixa44GRw$$s+V5jg!I(Ei3kX##DCtaA$& zg2ES7vyfWu>2#Y@;uRQRhI+cZ81Q&83XY^Kv@}=@v|3a!=jy zK+g25GvjrYNhOX3B}m4^_n<2z3mh_*iY($LPq1jjW*s$I#7eJ-ZB&Gl+=oruT&#~& z%OMBm{mOXvSrolDqQh;+L>(p7zW4eR7Tk*WIu12}1#Iq+HP2bgzL{>zC_s`{e2wH` z!5m*JkU8V66|;m^z~K z=!cz$p;?shPvnPP_-x>c4+pBFdp|L-!dKrvlkT;oz9_v^)Yrm0FZcW+$A8>)SrqJ_ z)W`cDVKto;+443a|EAO0P)o$<^W~_7H2O?;ht%lv+0?`hjbi0>li580_IE zYxR8|uSB6F+UJSBM^m5oB5VX@++K`#}bV5zD}*K@$kg*k19J|FQrTm zKJj*)y7+<1bo$EsRPHp(ZJBIb_c#;}9?3Lc@(By745qJ0s?0kDU$&r22fBlug7_m( zXKTgX@}yzG0VM{;41W0e2pJpvV^1^|<~)X+iqzs3*Zcn5LJS7#@e?Q>lvXjNCfnKl z&Vnj~)T5-z)Rd+^41zEmz%l0)jpS*LJwc+QY9BA{Q|cK5qEbeBks*{I-+3Sd5Avze z(Vb&;KD?&Dy?`MJxc6$t(v099uSCGT042@fUXrQAm!M)2;=2^@2=UQfHi%Erf*4|w2)!g&vC3lw-KD{bCy{pSIe2m1 zxr$Hv@H0fOfYDR+!uxBXz{XsHk+t>t;bBaPwuy;l zrE-pkFgOK9+u?UV)FNGK1ovVStdr}JPdc#yK~Dsi+ngKulZNmfZV7Eef`c)W-Ij#T zrZGR2MyezO=C`8qaVGmZV;XmgF@;5-e3J=oNNc1Q(%M-JfZ3+fI-#{|EsQZbw}h1F z7;a`>zEA8 z5(bG6@TrMjL}iqRECPz4h{~oVTpFZ28aCEU=sxNnzkBluR*SvhqTl=b& z3QTo^y?N_hXV*)$RdAHs8Yzkep&Ak(s>8?D0%~5e5!*YUy zk#i)SoSyH*&=YCFe!K_37MdF|XJl+~97yvT<|v>}w8J-{JUdZu&W0Hl{nfs4_ibB1 zu{htto1WqR05VhaF(h0J8z|gRtPPKE7PB%)f^L+eT$%M7v>syehCW+h-ySLggR>jfpfVRwFoFjB<etbaVB6sNqEX-Q z&%p)|JUb2VQOh4~lF*z*LF;j8@w}!{w_^%BBDSy@wz^WUj@J5MZW7UZ*OsDNau58j zp61?5Kck+Ej6%)b``}i$`&mkFm@gp6-5G{5%Rj-R@T?{VJtj!v{0mPeUQAXSrX;zh=4Lphw@N^jnZ_a_@lWgYR`8 zgFoDFWAYtLzKhA@{=M(v)f1RJiOGLpau0sE!F>v@y9amccE1l7;5|N!mAVO&r}2sV z14@5L>5nM=F{MAD^rw{m3{t_spVQyJz`vit~?R( zGCqdMv-sw(G5G{NxgBqQ9FyPRhjRvR+3fx&K7J09d*Q(*_bz;VHzvP@o15KF!sTZ7 zcliEv_fGobW_)@JCLf`{KMLt4_fvR1IDq}8-^1J8?(>jB7xa(tvvJ)0llb|w`1z~& zd69k!?lvEW%(lX0CMMG%8FgO@JlsqVHjh%j7W=pKGN}i?>{9O%wa>kLPhV`tKwu(! z#`vXg9O-Rnb`Uf5Buu>}2A;1(O19ytNn;JQdlcqrCC(MVHQO#AC=@I=u{!!*J>J z7TlcKr9GW-13{N|y~J&!T-t34_a<;@I}KdE>C&oCoPh7rynP&Oc4>?ngOM&p&=G68 z2vJAfmxX}8B7UYp{{mEDhWME&erAiGIpU{7{A>e1plEaPXPUb${J8TV*$7zajB$5I zxP*Lm7C*bdPq(|P_+xkaBjBvv4FFQy^`HZR8N*5)Hby)sxL5Ee&6!6R^{LY07VDTC zg=$E}FUKnuu1bL$(AW#PUSVe3bo19haN6}+-x9wI-V2rPs?}j1AM&-}{#+f8KTOLD z#99MfO3;9rx^<^msW>Awn4$|2G(0}lslsvvr%@g%bvotYzRGC7SZ+`n?sWPp)jHfB zgk7FHol12>r&DV5(buJVmvdfq)aipY4QpW(x&c!qYsC$)l3}>NSa()I#>e3_cBdB? zG+>Tv))2}418dgc!iN$SK0xmb!WWpq0CX0r8}MZSnWIC)b$=jd~osQ<#0dC0Nkk=XVxWqF*HzxBG(yMwINHvHK_2?H_vgYjBg`Y_j3DLX9GXnFGGOS zUAHgxk8VImdVwF#^gZWl&qH(69|FEF;1IVA(>5>0rM}exTL0pV^aI)g&|Pm7heiNf z_rbyGmz4V9)D(ikh{rFf4wnEnuN*1?TrV!^E^X*JuUcCN_*u542aAu-sVt5;cZ-n& z1JLdmMyDiGz{`1hMR;-ZV~R_G9u&mIdPs;ny^9wbS4SJsi9xR03R!O{Fbl97>#Yp0 zJA=jbC9O|1P%c&aRhLLGHSt$W#h2&H>o66c7g6oxfc-ELp&^yHLDOl|w$WK+oGnai#TY`FO``P&#!Oqnr%PG`B zbqr20iH+|V{FB`K1-t0pf^M{8@E7(~eI?hsRQ)=)TV=#VbigDt@6N;yf~UQ&0#6U@ z9}sfw#Y->{BVr+5oCbp+7^y)nzsU#+r1+k-)W-I=)Q+O1#@gRfHby@Y zUhovRrTOpD%)cHH8!S~uAWkQiwCP^J_G8w5*R;R=cFyb!j)fp&Po-FI^kD3=R9Lv& z@z$7=ieT>(RfZl)FM+QIqKvhe{`)782SLw}Q+bThpKL#)cM*)fJ-edZY7!goCeHL* zNOt1%Mw0g(6y*9~u~u@{7b~Ns6z%m8QWtEmwv^6V?-7$Bc{`+CMe98XCE1N;d+<{^ z`CCn5<6G}d*m^@%oE9)T1lzU1hD0m6q5lC9|KWbR0*yPSSiwz-8YN+z)>f*$MKPFA za^$zNF@2BbcUBBI_B0Y1Y{YgF!P@eNCVTR3%iTm34cdFwz8)1=-GDcE~B^ z;rX3#aRQ{U=hggWtLAt4#=S`S1$<*ybhzUu|EufGLECdvsIJdkc0IN7Gnd`a30v`8 zzw89Mg0{v#R>2=}?ae#ve`>$x?k+U<`SxpW?qJh%|1H7hZ_XVo4LkLbQePRO3jLiB zWg?TmW)197*AIVz(TD2|Xe>ZkVMn@tRQ-W+1-2!VeUehGIJ_1IZN(km0YD^+yaY@x z>vB#UaE39A1xAKSKn;h?9d!PF`IMvoy)0Gc17#1?szdbBKpBR-9YAu<=x_t6!~PNB zJiO=iN=?_}#mVOB)#kFb_08aqA_AXAz-ud?Wn3|5Q8jtSJH%w1qA#yPTS&1CZOx*l z;{{vQXiKlzd40CPXgqVC`%Oe`9{yh-e2i;xO<`jPVj_)u3d3b+fAWyqx7Vye9N4Hf zij^KQUL~-gv%>Mwpm)7+&6?#-P3-eUYFHl~k{T#J^=5H&Iiz;JzMz~g@ytNEzJyx> zFg2JNXuEH2gnsy5=_8Y+23ErMNlx(Hr5F}j>aIM zN$i#qjm2J=8Vv>1N)X<}iPzAP?RUgL4CK54`_N);b4ab73b3FPB4K^&MDf4@U==f4*%avkp1%qx*2&FKHUWXc6!3E{>F!C;{oIl!wYFvoXQ@%qjjNC$`d}egLz=saEvsb%TiP>Lx&O(jA-u||g-L%mGgh6s)%$_y=e|qN;=^El@lLQR z5!}V=)vi3)=NoVCDDE$2OPE6U;t8SL??dEIG;J-kCk-)$>?nk^!-hhyVN}z63wzR& z@7J>!$tm;?bUI?<8%%J+%|1Jwi$(!Bc_Xv1-b#$jN=r~MHgjyxHa=aq#Pp_YxA8eN zCbKB}Zn1qF(rT_lk6VRg>=>fXIuWZlo-*S)*mwawA!q*uZ$7xlV#_g5Ei>9AqiqL38GlK!M<(>}Sq!N82BmFrsLf&M|cxQW=@wN$IhPTs(#34E_w8z8>?;hjC zhuh1E>n4B`9m;7+{V!BFH>2v& z6jWUYWfbG~#(59CAYida)l(W(Y?EEVvXC8GpGZO5Gm*44cfd#x1d@8{Loi8=TCF|~ zJ8#g6orTjm$u_+MdwVlSA~4xFrdVwOugIr@Lv)8V-tSW|$l{pE|4b)Re@{V`g-Cf+ zr4y++ABhH_5tziyE>eQzTtzBfW)YjuwZt4oY5PGN%S~nq?myvjx4j^V*luwjc+{NB zfTTFuP3}E+K8no#n9D+JApBGAJ%`txj;ezu0=Q1tnFW}EKLZD_-T{zVzz+J`gMgxG z%lmgVH=h$bUnJXYt}8~O^b`D=uLX7-!Qk%-XdawImixt!#UCn^4Ra+9%>B_tN*#;$wm)lIFL zI|s7xdN(4^1Mo&r3v^lUJk8s`1&0L&%EQIszOp|G12b#HM42<`$Xqr3njoItr_4=V z$jHjPgO1OD$=kRs8{&quV8+p@C!BoDIS`^0+b38bDlbIh$k>j5{n-hsa0VW3=9lu zEkDU=WujJTlc>4td|lfjLf4{>@U=MoGI&rgGyTB_tiG4!TVHj`;YQ4uHsn;k7VK5@ z3BHNv3i__t@Wl7^4>*O>Kpnh&plA^Ro&LMZU*(8Ht;;()aQqTix_8M77^1{=@_5go z(I${`8JH zi+&t&Y^#VUOUQA=v0uIX#&8hqPCt)5XkMo)m{hAtrC(cWRBxwI%>~eS%H;3qeC2O8 zkS5HfaunWnI8Ty5y07QNE4|V&+Pfzq?}bX=mWHxtF8f!syD-F!OL+bjZLhor`ztTW z2FpK$9frTcEHUIEZLxemXpiwL-a~pW-i`K8@-i{!P7t^Z4 zr2B)=<{go)UXBGY)Fy8-!?VXnfvJ8UjXU2IqN7~?E|9Tw`C$jwmOs{sR3Ft6~yI8K_1n|Bp#QnNN zCdZz2!jhxUI%dAqxq_>QB4&%6hh?wSp+w@E`avyZ_h%xXr6b zcUb+t8dH*u;rC=%`HnAB{cN(x;yb>M)ky9;g3Q-_M=b9neMjrBhR|Vz$UN-bfKpGp zH)N7~$jFm?$crO{IO;Olk~^$h*%OrXwxo}yDg?3UaezR%xp1n(l`(HE2rLId+fjw2 z7J#gcS`qPShg^kI9jx@N7t=!Pe#GCj97(6Qyppe8DZBA^;&_DJz=zrGMpE3l!>!S! z*(knYJLW;gb}lrF?br#ck=%9!8$h=mvHXv;9j(7QqYWa?+&~-&nGD2>c^QZlR9t{F zC@8M-p0sh5bNwuE1Sr)2_0fJ7m!zd)g`Wi|K8@qE}lc^eE*P&sfeQ88NJ(T#raVxZNjrVjEW!ZYv^Ax6&bO&b_F;6#OI1x zoMOo8-Jmn3Pkf$H@D~HR$&ZINX6s$y&sJ-;+yPf@ z=u)F5M0qC_HTCB5PG@iK6!JOn#&a`j+LRib@HUw%GoAyBqoz$6W3>lm*+i2ZL#iB@ zfPR2c&uv2rcN`WM*h84p_p_4hJhj&fi+q#DnXY$$LC_5;6XAdFyvW(Y@=J7 zm>Ox4zl=>3G|3?!Gok+q6U9VApT#OaY!(-=%6mP31&=xqbzu;Dbm6Q<< zaMtT^0F0|4Wp;4jJxDC|;jY3ff&+9l<={Z4w%>S)Xd2I<-H>2cUR+=kd})qNK(H{%>benMnS#fP#;j#RWjY!VplfmA_rTUn?CDguJ3J8V`AeY)IffW6J|3 zoq6JbFF^Ko7C`wOFP@{E*k?0j7U9HNHj`mqJ`6K}QwfA1BZi4B6rzQHK_Eh{c`$ zK&&tw|Jy3Zbo|$>%@divP<-hrWLPBN03lt!WF^@tz7f9VqN=-oFrkKS+PVJ!L1M}E zzk*lf`sr%QxqceZU|YhsaQ^#5L<53(wA=mfkA3@Kfnxt+{Y)e23{5OBPtQQUDpcBh z%#`A_w?UgvT##S~v$y~rSQdf@b__e>NmkL^TBt+4u3pm7fp_!;i-U(9hq2hCHcwQr z5VD6F+eQaopMolj=zvF+9vw)wh02L3Xv-cW5F|&~!B86>1F!ZIt)hd@Ir4b1XtAOb zNSIKWXOi@$V35TYDsL9V+ltgk3aTtb%A+csNWC=$ZP`UikesVXrOPY=v9~m&Mrqpu zA9FzLYV1Ggv_e8prsI*Q{k4ANDwst)ZeJ#l)jTE)Hn@FJaDpn zSzG{q9y-b3=O0XJ^Ms$jh3r$n&zDnBWq}nus?uSFj@zw!GdXOxCPP0 z1V8sl!5|Cxxff)gLZp_Zpvpp|JgU-()EiRJmK}Zyl5-WQbeToK&z6SNDD68S*EzsX zHN8n-N98fi!Ou|lBSGkH8VL0>ipQac3dHp|GlDialubhwI8+wx6o;yCT4*aknkon8 zbq7<(^fj}mO@qCMt`$Gm(N9by^f1Av5-TYqGUZIyktuj@L+I>~=|3Z}giJ5PD?+Ap zHRX`$!3vrMH!EocP8Y_4(_l{R#;3F&f$FEC^hOOrZU$uL2f%x{eW3q z0I0rxk^$9Eo7CnBRPTW7Q=p3bQ&44rDm<#vp^9&&pe;M95F|%fNn4=K(0w5H93IpKvVMBEa$ zt`OYXpOusmw{q6&xD}kaA%k|f^(Z8kaO+CEBHT(>Qx3NV1iVIvrME(?@gw*mk9K3# zzzDuav}GVQFjC@C%mxw7$4n{S#6-32$n+euxBxOeYLX$-5tG_Hk!c08Pk~I|nu00| z7~xTs4n{On(3TyU3X&u2pe-^T6s^)GWO{1~23a7}n+5T<$n>5RR9T3WM^!qJdME{L z*+oi_oU2Hs%Paz!wlt(hX{Q4pb3ms02)^_=#;jY@@klhPkKlWLFLn!nqXe=#lL>4;t0{*!4^;6%Axb?XeT`O_b3tsBROQod+(`>xMT}GxY8xTlF^mH|J{tZCQ1)m60vPnzNrpj}nbhWqK^H^zDKO|8Qcz_97(A-d0ftjj(3TxA2$CagW2jw^ znMJx#v`U*W=s*evSzyp!LA)&nZKR;eLZm#Z(uvd+DQL?sQi9}MMJiop5g4?kAvH>S z4e&7s3<`(fc^gpa4lE=#8t#B37S#i-0bdx4M~@ZAYeyy+HhA=qGbltQcE1!O`J!yx z_oNR%LUAqZia9`=V@6FbO_>LCzIU)1v<0OeFL-r3D=8yN<&4)+DmZaN_UusV!$>Se zMIXT{LaB5$?t6p~P#;k!Uvr128RV>4%w3mu*K4d*u1U2?e zrb|C&5}rtxvdl+)+AJ;rWKWu8K=uWb+B|{mA0Yb_Kz7<4)_o7x0(E#)wMHEum_7~8 zbcTP;kfWuyO+jRK_#tSIu%ot!_P3&W+JtBqq+pN*qTL6wPa#`}q@c<|wmhm@%T}03 z9g~8#>>?#d&Q+w+Wfp;GTUu13v?oBWb3n9CB%<|Qk`Z8y^-B`p&To}*{P6!t0=oSN zv)wi@_lP7gSAdaLXg6C{%u!cTNWbM&fRhF1%B-Y}pqDp;4tl}i8{%mPdf$e`66pOG zyduy`S8W8nPwvXkteJD{#l@kKN~zAni0U?L$W4sBi4a$)=kj9gPXIBZ-C{SqUVR#< zz^^#rZ`>RF_mM{)>FnbiUusadZKzsrIJFXX=A2$UcniL^(xRmKn2xHm4U8Gb#2d3sa}T;Y@vVP{P}cR;`|HGU%c!>f0sg9 z;q`wk12JgLG9mCnEI$bHUhj?Cg6_XSB#WW)ZNwUXnNZTtF(tkEcmgp$_DpABv@u#M z)#2=)VK~jBuR#(b4y9Y+&^c)Zan8?*`Ny6)A5Ipp*Ksq8v60e>`Qlr+IW$^nl;J$_ zQf(QXhCVvcGIT+R4E;Tc4B?qDrO_ccEgSYdI=bAzQ>41$ z#OSOOG&vII&de8bAx@^zWe<;{;=;#1YPYcc|Ctd%sl0olrLqsCvOOEYTW%t_MY(@z z(#To!+9hY#OSSrvTD7-SYpktZQmU8NEm;L8u?+#ts4rPnT3@PENAQm&mC>Q{`cl2o z(_3xyz*p-_wIy)o7#v2wwp^;yV|e2K%2?kL6#1@^vE}{MK6o8YVM1gspLWsHqwy8K zbK1E3URc&;cNWOfkbKk@hMmr$MQdx-Q3#0ltlI#`P}Y6?U~Xij?_0=1c=|(zA)m6x zkXfR3-!qGw^sTyjIw*^Npvmt3UW;Z!N$_rNu@u-tQ8tmj!BWU8vD+^`Z*nxx$l`O5 zyv^4mdrah$6Zn&6$7#h{5e_l};Kj{a@BypvX^f1_ajE0|Rto3K8WRBXPhP7hpUcEICt_^E7Kga{M%MNjd%EP0Lk{Z#% z-->xZ@6)8|BWYtG?M zntP-F^2)JY-!t1IPe$sWCL>1NCIr=TtSY&k))4Ni#( zJRc=mMGrjZv@!k06b!NusWCyktw_B)1yvRz8FZ0TkT+X3UG(?nhXaGWXv7!;vPj zPZw?ZC0220%U37d{4^sYGyhfeJjM&}+GZoV)g4qb5XDFKEgQ4kGvdr2hE>FWVwvO?Voux?g?@2CGH1E9_;ioK~6QZ41&5r<& zTZ)oP`%wf z;q&A{Z1-HOMsoEIHjJ*`vF#G6-mSmd8`V2rikVc#<(Nsi54Ua^FL19bcM2*l@CW~X zoz}#t*gv9?$gpGFkeV9I`kt^-$;bZLkQK8l>62#o z*v}_GHjRttZBM_QdwKJ)gpStx-9R!=gegO0~^rJWM&yZc+o7bdHp0BKQOuF zN5G7sgc-1eS30Kmfknp|l2;4M9@7OdLd93WxRF5eAZ(T8=${b2iqQ{Ar+mf(d_N5@HplE6DjTa$sEQwd~K(XgS2` z{AMGRnfx=RIs0JC*lA82*if;zDWMOdu^h&OS1k;87$bu_Qk#yEF^TCA%vh6Cj3Y&c z;dI?LD z*gP3w+<~I{?d_K|VtAN>0jghe5oVl4K4%S7s>OyB&K5lq?`38MH|JEfU|+;Caz9>CFNCh9R4;_iOe45YQ}hyaK@MzZ7es9{9;8Vc2($mOtq&E6eEFj2 zeCQ9E<#-Ak%?>|h>3Mw5EN)UQ|J3;?F@O8J9U+`?e}&wVBp6oUF?gD9w_^w1?eJuY z`W%0S!epOA7bw}`h>%*Nw-Kn80I=U-QeoBG*iY|m5Yh2njfCGYJ$Z$Z$nA3q@Syq` zlW9qNxb%xQ`UhjctJcZb;WO6uDz3k$K-@gcm_VEoPlV(X-^nQCTSe8$*cUR6>tx{b zC|_V$pP1l^fztM-f>Wr8LTT7M8By9?QT_IIGER-*VG0H)`8*jj&LW=@pC=mj26uRw17Qf&G>bbul^8blozm=i~lHO4;X6R5o`fc zbNX^lANe*D=KR9y&V#8Pz{ zyuhf^TXhT2V4qtXw__x$d9l>Y^eSWIiz!GBo1Ym3A%kCPZdof0hy~lYH4Ht3jX}YV zj5mn}nwwQ0DfN{H%6;RTn_IyKVMEpa(F!c_UicCCVh-HsgJ2D8krBH1|IZ{h`3azH zQ*VElwRLmto7#4X%3dj`vRI;$QY{vzpvs8JhlV*WNWx$N~k#(xDS0X*8 zq56Omc52lP^)Bbc0Y?t%*PUXm&yM6ey3Ng!huQnMW+r6;`>US9YvVRTpsSL zjN%LBVam8h$NxC6CZ32XSBE<}JsZlE3asOCiv8|ry#XKM?$LgsU0hZEw^WMhdntv! zhpA978bk4ePbl>e($vdJN;M*hPXeSUXAHn>&$qsMpm? zI#f@(V(dH0Wi4^GY&UH*Ftsw~i@N0pA_lFcOgdJ5XIqd7rxPH65{ z(JFc$Kc_YI&!k|Gg-HEW5N|6||CNF&3z71uN+(jUq@XRkNC}d26{&QYMRX8CEWGt7FJ|d%0SJiVbcp9aFT_w`qtl*jD6{Z6s=G}VL9^gq0iRo}0ZSbD7E~atQ+{iDq9NWOR#Ms91D1xfYenk?bKu_A-j{)OYsy+d{f=J~X9+3LOAYTiX_Ousj(*N zwGkSlq}v!PkYC7Gj46O~j5ml;>NaE1)%Gm18Hc(GvbS@xhD58$Fz=?!jI;1&3u6<> z5dAr^L*8V}xTC$yxNQQMF^lG-MDjv=EP6TO6UK>0+RKRt^XG&OOi?lxF$B_5la12O zg&O5M1R^Fn>9&ssKz<2@$yrjm0hGfZVg!YM9yU`dV4y^}{5;n5F@qm&^37vB=cI5U zFGS$N040%5FzK9^zhWh5&dcBMif|!aO(|TsPaRG&kAj0f5ZomM2-1h`#DCiyji*F- z^htALE-aWO2w?$i?;f)^+uaMTWEYvs;;FYbi)+4j5=~<9xE6^Ua^J!!gdy&p$RtUE zVen?d(|iqHhY~4oHfR@=A?=(eHPXCs`Sa|H+MX#uyRd3=Sc}J4HFHS!5N}Ag=wRmz z2Xc{6Z!`5e%H#FU=Gk$wABO^2WRRHfq%$NdrN@@W#M~~m?0leHcYbxejMKwNhA!H0S5^yu* zSVnvvW&RDzW3!I>O;m6S?NAXqY@SFw5~pA)zD-W0O@r}f%i-y!AS*Z$h0ZEwfcjc^ELC78IuTwcd>o|# zEjUE3P`V?Y>%B3#+Q>wZQ|=v*Y4Q=fCMVCDW0}3ntDh=sXt18F6y76A}T=7 zeIR!}DKb_aF^-FLHIEC>lNhuN(BoU8Bla7-qK+6{wWlMNi5Cmt3}Q_O-IMTMBnXz< z4?l_v8fS^sjHOVYFnE)TF9}xs#b*Uw<-v---wc_fk@f?eZ5pfCwz~@OcNHvGI<7hj zX9P9(;N4H{@u1t?7%vK~8hnQUbVMuf>@~+HNAF9co?0H)vm`%0aZjE_A?ZlSp=u?DO$`nrRloYkfO zFVWuP=wiJD8{I6ITS_cnbFB2CYm^p}=xph|%Pq^hS=kzp(mJTkonp&zS02EOg8Ko? zJ80v!@`>X_ToXe?q_zI>9$@M*(?);a5X>cFNtH4ZD8ySNq1@ z4O>95ThU)b#WEbBcQa(BHU*JjIIN$zp;#Lp-|XIil0l+!qm&W%4_KK1dpwda#TO_7 zF&kMVyosm-Hk=(;@bdJ-pRSSTCM+Z%h!MOG#raf$4f4Y)#;Cm?zQ6B ziRgyqMjMe|z6zZ+B3^4Owg*s6$}jzHAj zwWT;<;~w~3JwNpGV=R+x-fqU#0YG_+W$% z1@3Kdv)jED%lH^3&*GcE#^e+9{4GEbffHHcXE%Yf8fPusN$-hn7DCLhIQ+uI=70h8}w@+2njy&aMdU~>A$Avp(=*L(t! z*JAPnCQoDXtvew39wvCOv`gnv;+zqerkdbj zs!Le1AhL7u2Py|Y?mS2~ z0@yfX+}#l_A)lSa&o1!O?d~f6*q#0eI6ik9@bd2Z*%5-ZG2%hNy@Ee!&ct|;1Y)A! zDsHjf>YUF)X;l0SykgO;6h0WurjU_YX2wl7e_00SSFiOg@jK+Wr%zW6MlXcV0!Na6 zOl~pE_iXMYHdcE*oF3UIH_D|t9_3pcZ|*4WFXp$yLUJJ-@&g6=6TKP)t+^-4gi|2I zikloUB4K{>YuJr0k|1l+lgI5ojRh2FDqN@2KLG#3j!!*m%Mb4cENt^Oc4^d#{V>|! zGYC_i>)wm_O`|+i>cXV3w9{F-5O!%|FJcD#wF3|8bPhQjUxbff=cbVr3x>+Wqm9yn zPUoW0YNI3zgvXb_PBQdo%$({2RV0y^Yad1QBH2timzz4IB*Zp?cyvr=QJQWMK}1?j zfXKlp_j#&&?KwRaK|Iu?wfV06jR$OJRPL=deCx3UgrwL79a^+1jT%TA4jP8&gbJ=j z#|Nb2vlS zVhf4f9FaTtuL(>D(+V+WgB^ky2WNxL7GLmS;Ok1GORyE7EB&y~VzD z4H#mC!6fZGm{d71r}ZXAWahzppB_4y%n(Mb06ASH8?t3!vWt83XUc$d6Ot#vUIk{pPBp`x@Wlx%$4* z+XR`$g@-?4;`8B{vLhT#+`Lz{E$sDFW1B33KE!f4u6r|9Bd{$jcP2siK?_xa&7p4# z8`~N}aza+HxBhCsWHQWJCoWe5ys^2qe0oFB#}EVFX5Bho7HUuE%P5QFdqRJse*iXm zmkx=vTK7^;Ulpbfmxpn(!>K2ne9SpcsnOR(6KG20%etJCt3~hBw9$I0)-h144mo}G z^<5n&4)>QXMst9%H{lB57&JT(ZN&G56um$6;I58i@bsu*aS|I&uIOu2#+>u#S4T?2 z^E;jSgXOh@_*CDnK4T-j~3#cK~`VxAD~ z5pH7eVN|KfP0Ut)^GOZ}ix#-g#P|0xrKYH>GA_?iU2U=m8W;Co_&jW7Lil;6?jNuk z$&E{}A#~#s+YXV&rS(_enq;c<%w^Z3GCgzI4V_>tuSbQF*PvALk`zn+A(RXLx{!Ov zxXNd;f#0%b6k?{N(s6gh~oAi=p> zOt*p$SUXhn)hq>m)=@h|^sn$?c3Uz>@|t5Gb(_`nUt-F%F#w*pC>wG))zl`7EH>mF zSdHX1#A^nRF_hX#G`p&IXN1U0m^*T*IJsGiG)TF1ZGnx)b3TjvdAoE6Lpg9cGSs!up)VUO~;S zWIjRNX6*k}zFMR_!q18Q5gq{_PP9jODW*&tb8dKqzfnzXvdH2Q{(;p zmre5+ExZ+EJaL_ZZLu2GEgWk0V>K?)?6>}^wb@rjj2WJ|tTUPYuUac%X0v~=TovOK zU}6K!vN*O30sWdYUu-HeA9?_#f#PVTu@F7L{QlzDd3&dreNtchXZlcV({8**hSFDsTDfP%@CZyD1zzxU#y#BiU z2uJp4OCelff_ulXVLhB505>|;me<4hpPxU>8HPiQXuFv%=PbxzeX%kMvxobN!#I_y zI6UTHc%WKql=_|CF{g1!k1VgVqtvyw%b9=nnM;l>!Zt=Vno4!{S;xT4DV)Y7mCH0T z+siEcddhc&B8EI?YI#+@YN^c5yQ$41%nm-B7_;-yn38O4h5;dNrux}rk;UwM46Bjc z?0C#i2NJ*7E|z&z6C9Z`nQ}55 zm`%DQ!^w9NpH`)rpFoYAWU}!l<6s=T1XinQ>fKGtS(jyDLYrvj8w5o5n*GJ zB{%{z*?r2|dKDv>tB(y}@mS+8CkwRTUV=3%SxLZ}9F}p-6f?<#0zLDrv5^w*tGtnw zoVJc1*kjuCY54ELaj&v!4cFON0dBIVN>;B0fec_ZCt)040T3nAU52lpn;#Pwxjcsqx4*<&haDdPXD;B2;>?Ac z@ruq|psVy}F3_ge1cJ!tVgvY_uC@s=>{lP_9jaEGR*+#=6H;`EPuqzZW_v|Qo1=q< ze?!g(ZLIu&8JsWRTN8&GK5G^i@HzX0sLWmPMGmN8YeEf@W&W-U5;jQQNZjxklp2E@ z_7P_29#$JG+;9MfkKlyBQmrzEvkoEHTyIqS);aaDpZT%!8ms^ya zP{V$LF^{v7CK5ILCo4H~9Tix37Bkk&ei&F_k#Zd){5NKj2qT!`_5aDKW?7(ts9bVH z@b{c(jzI(qgv9*~N(!+aHi!UQIMVrrdOD9R>KSXI;gR(WV?Zhb6(ZnT#brCfXUCDP z5COMix|D-ej>x^>Zhe13M1U^}M6e962occLltKi1<0@^_+p_?|PUiEj{(*KPf#9-g z9R-|#+zz4uV`uG?@QsN>0LPid1rWf(5EWSoU*v!Qwj=}qEnx-?kSEgfUkIhec>aaL z+#JJdVdeQhmuNBaTY}Vh9&C4%w+7_M>?IiM<7w zG8`O3f{ii+dFLJgnI_-js_AWckUZ`c$ASn<5GUPXqB*eDc;5XEmNT?D= zRv3Qs$eO`gEfs+Zzi}(Y?O_UTD*VR1i*7Z*XGY{+5CW8BBn%}@;J3ASMfi=brWAf# zK<=GZNtx)3p|{=5=K>qR$L+*!Y6Au7r*-7^R^)#Wxv5W>!MTiyE|<0lgOg<*&822> z0o-PnEY`LynXN{d}&P-lD z#HyP}UgC^un5}=kVC*%lq=`gppJF9vuA@S0cVNc3qO}Jw$4qGLk(??UL>#tra8jYQ zFU1fZiPmC2vPNq^j3FVyc!nxNkazCmkZC*7S{w@^5I`u=G10aog$92SY7%16ZO|HO zOe8RgBP$H8d1T$rS}hfU3axP~#cf3jZYs3K{fcfiz*9!#UJwG51g)W@3A8r%LAWBc zMpsh`tsTf0w|hIAn81tyxBboMT_O3j6T^k>eImWM4(Im81`5Kt(65=N-XA}ixQN_* zv$z1VJ1RuY_Jl8TKz6$jvI}cG6Xb<*P2#=7fu0z=ca$({d$D?2;l0+2l8sGugd?;0 zkjcPNj96}+Y#daKtv_0@Wd$o~BGKAetmMpfRA}vV%s2sB9Fk^*fc@d7V<4~*xzE}%_TCz zC}j!9ea$Q`0NRcVQLjhfiyT1P&LN;JJT4c)F$vgy2DHQgw&R2$dz95NXTYX*kzvi; z8nCGkS^NK*5u2#};|yt-eLq34<(I6ai3DtaXC-H@qXKL%V#fIcwvI3PO5AEhR0Bk; zX}7~{?D}J&O&i1;69?F~iJ?9cu*H644cPXNAtAyxwq&5YCuG`Az!t}X2oMlTbW9KI zB%#oApe7*(+Xk?q0!3nzII_Y3n@84Pn6{@PPyse>w7BU=!A%9&xRcP02spxs+zUd0 zk^nZ8Gy&Mo!z%)8bTy>_+XA(xn2Ez!h%IbvRDRsfxSF|5nU2avkpDqcraoa7yN2)C zS?nxeY}hO=0LD%ZQJpe;kpmbLW21iCm|-);9|^tQ4kgDxuakvITE}W+1-<4c->J@v zk)_=wtjUPvHpRxR#8~KV!H&(Wq=|%FH?fj4*HJ;P8!+PpkSlhb;Ab!sPaoq^fw@lb zzMN{71y$Lu6TCYonqwsHG$C=Hf|5e)h7Bgb7LIg(wwS;p>qCqIsR&ekQeIbb)&Q|I&3O$D z!>pk*Mb~u7jVp__QpfP<(8!omtksHR!J{jvy?2kvnNM-vBSr$;ZT6TpZQ`+wsv#zN;nsSD)i)X%XOy(&7$<{!QU^-F_tfsO+i;NyzL#XE%xE5OH{k}l}rXd`lmQ9Gz#BEW|)3cz;*UJ>AUBA1*I`p~*r2jjg3V4#>q~TGW#4G61|1Lw_BFu@78~U%oOcXJ(LY`t zb~W#(GcggC`P-BW$n>gEz+~{djD6hlrEu(F;N^VLP>->aCK9~-ij|zXjtac|0y9nk zUgmmxeVkbW!Kp{0n7?3liBOD|A#2f>a;j|>IHS>LF^lVOIZ+>jYu+s6@dYR;#OB%H z8f^ba7jBDdJhFbu7?6rUg=@IZamkNB9&uzVT*Ixdt^?ppB62UdTRxl+*Wil+*DS^> z!Zma?rEtxHdZ|I@PSgtvLxIgusWDjXhkdid;#mI2NkNTr=-pspPoKlW2L6%c1@|2O zq`8$U$+JKOR|ht$uo;5DCh!rnK*!;W6NhV#Hj7hiSiJ`L@HVZsGYSiRBm6#yr(j&= zYWRhXSYy=R9fEA!VMsjVas~cPJF2!M!BB@4Ky(h!O2pFwjb|XMKqGm;s);N2i(URl zz>FA}wMNwN4UEY#Fw52Y=FNp?mKt?B9Y(C9Ksbbx@(>PrNU4PQsHkBhi|?59tz(pO zo0k)!=@mQ~WF@6C)ykrB2J03Tq}UK4A*uy2VQ03mBhfnwUxCC<-wl$t;T4%vy2{m@ zD#b(l^9HVWzWs5ND_wI-K-YwtE(9fA4H-5Ms+C5H<(janJs?g!1LaDkm3a*rM(7I7 zsNJS^r|?oE&F+V=xq@alA_Jxb*E7*fqy$;!8T_kRoRWmq{S#q=TasYt&(%P54kmav zvZfJ@YMA4Q#*?ObkLb+e&2+yoNgrShVPmGxTsZ*!SEpF12+LfjzKSzcs;$Mdx{Lkp zXuUyZoQ~5Xi#l@XTe`LK#f%A7b@SB=>QE zH>^85AUOR1D=DM#=gp=Yf6yO8cjo@F+$f8P45;mD(rpQ zZUeuiEGN>W{}(nw(4_mHFkyayiC7|G&SJ#>U=|lJ;)4@m#9NYJ=)rS9bPh&*8?w88 z!x?7VZy;%?1@QKTF%Cfw3WM=G#$FrKe85U!d;uim8HxQ6nyict4SS>15Rt4@H-PEx zE7tY+qScp7_Fnr4h^Sp3&eo8+f-gI=k}?`n&Sc$?f(#o1WM@dbkXSOLOYn*eDP2uD zL%JCIe<)Es5Un06Hd^85`5^{X%c9+ebvwPhNCSHuHcrsM8lN&@KY@v0+YRk1v$%kv ztxSZWZApTmCvO0vb1<|!lA$#k(lEG2gGs|HmU(Fz#AD-%Ff=O}+pP@nvBUMz8bvAm z@gg4u)15;P#!v>Rkru=_z~)OPlS7Q!L^5e>fQJQNTvk#>1I(GM8(@%aL$K@&@V_9j zWPsm}S7dBggOhN z{g7E)z|f9NgrRLof~gNcbPk4AMTWh`GfZrtk)&}|kzr3T<8bYWFdx@2Cfk_RUCt~u z;LxUGtwE?3gThp-W<#T2W3u%Kqa%@Q*&586sPUIrNf`|$XP<5`K}Jmhp^=KDao-;z zv1BlRgjZxR>1yg3Oo#&yA!IGK!m42g)Bm{b22+(3X)s^FreFqBeZ++NFHF=D33V2O z`Cn#n0fX6?2!q*@1VbNw2Sn#)FjYI4Yu2_>54pkg@5kfNhAKF|ljA0Y1(wE?|H!o(Kcnk_1CHRszvE7~t(!;Uoawga&BkO(o6n4#ubP zmiS^}Q;uQWwz0%V98)V{G*+zrL2E1)s}0nuLr&@9vNF9egB0g9tFWy;ES4=RCahIf zpG3lH3xO{YoU5>sGFoHa47xQ2p*JMX&Kkc1i6v|NPP`&(OjlFR8h5URpe;?LrrF7@ z?D5_q_L%3;Zi~FFR$Qb_z7bm{Xp{9XnV{dq#4nMcXMx4no5cmJ@}(1Dm0OZv=*Trd zbPiTom{z?R4ZEy2m$b|~k!9we$J^#hg@w76@!ZBXAAClsF_XZy@QU4ngz(k^+#Tvh078kI_mxWm4ExlU%_1VlPCN_;1Zff-cam4?Ov16M@ zL9i|R#Gi!nin00+F9>y?1KHatxiN8hlb_kl44JvRZ8vS&W@9dN%jPjG$n(&kIe03u z%q%FqhL;M8u=G%(+o3*-_fD6IM))I>K^yOM`8m*4fDQxfY*8Mdpv_3Fy1v{GQ5(G5 z>40xq+ZgPmS$Orq@<0P7-+9xe>y6S##|E5V2W!y4#o-slF6WF0YM$Fy6R{UH?KQRk{t`KdwjFn`kQeN(A z`ZgB`-EV?XGNj(lZ>~mS$#0&FSL8S8YRdUd>cdou^+wM~t=v~i+lNs(wA+6Yv<(y& z*@x-FmNEJ;fiIb$mzemq-D?)j;sRdt?IB(>_f;}2NicNe0w6jE&!GA+fyOZ7`+7r5 z525-n>hpLn@pfTh-pqJz<0TdyFBi>Vkq&8!L&2rSAS_Lmi;lrzXgwF351BZ=i_w}$ z9Aohc7-8KCzEg1Jovfscc9*kQFA>DrkSRO6dovPCcJ~&%BD+ghQ_t@9U@yG4SgZHo zUMgwqF3+Luc2_Gd((Zm9TZY+P?Mo);|IWlOk)UVkt$fZbE?{>zPlVlVNrIsxcLUM6 z*g2DiKXVZ7blEG*2ujOR9XcOMx$LOsFFAJE+5%s!_&fT1E#9L?Y+`hp4I z&lz=z1kl#fzFY9&C#nvb6t=S7d4FYRXyK{iUI8Wn;tk zGnU`B+q%y23yQR>+kHi|tLhsj(A(pCb^(tp7Im&!T)?7UIT04MB?*Qu%mJcvu&82R zWz}>>ghMrvw4x#`B0q_@pH~XI(ZM)uV?PTm>?Z^!XxfTqM3aBU1n*ErXIm`kRe~c2 zv63=cQqEr8l7avm(qm^yPeEeIl6K=2SyH;1a+dUfQ%>yeIqSqzjy?0NV^0g+KBL%x z$ydFjjS}pj5jOoKm_bsL+U>q~_Oxks8)%3qA}cM*t~R#`drhp7<&T)KuVo^bNZ7Mj z**>$l<~2)T53E{!Nv#T_XpObCOJKU$x+SZseWOD#(p+D%3Ual)ziUJ9e)_x@}xOu!BBY^#AAVsdKTQ%wO6J)@|kD@_?t2Q5|b0YghXv9aUqlu z8_z!tUJ#~bJ!B7r&pUz>K7EBo)e274rW91|0cFHewH>^`sIukN2UAdG&npUCtCnT0 zh3t$1BN28r6kQvGCdc_L7NQ#NC>ATF&?x84@YK%xH|H{$A9rt@0R^o6EF}BEuuC({ z-VhkL7m8}mL=_p=42=f}-231SW5bsK{XziNV1;~87l#3oZ{}e{&3Pfh69y=0|M+IHvoBeS^Xb(6?Bn!J>z$#9U3^WU-nHZQ4_>L4(*ePw;Y za_9U7%T_JubQbg%#}-@&zw#s(ctrO$b~+KCor0fvK3D(JyS)+i*%IM8duRND$$4M* za&X3ffb3H^<7r>*kO6@Yrc?zE9>-eMWDmnj7XmRQMO^Yc3z+!mI004n{2mtUj<7b-y053!U zfB+?V0Du*!1q1+/>-bTy>_fW>UHEz12%+v(XuCd~NeT-!4;#bmN`v5|b-$<;W* zz-Q^^o@o}>{Jw(!_#~XUBq;*^-z#BacQS>1*#%! z-Dyk;+GOi^A;Q)LC~0NuTJG?;2`fQ{ZZlqyp`)uQW$2P_@C8SpMH+ZthvZiMt+7pk9gKa;sowoh;7#{8NheZ2finW+^y<(X+?;0jruaHrUz*OuNOJm%C z8hT}ZK;356XV%w(a@lrAFx@P!dG#c61hO$=JVB>TJ4v5W2yq&LbHrdFMDSd_8U5;+ z=QJAJY3yP0F;Azl3uK?0)7X(RGZ-*O%DUo_?mTCUSL6!<(8!xij1O)vKbDFrTs4Qc zQ>($Tqf=0I9h4C}IQAZRLHHDps;6|SmT`tnU&dwUv=mf56G>Hbhx+KqNVNu|t3$Ab z(nX_HSW_}C*W)al&WSagxlII2;gATC+Fr(oeWNKkQE+wHQYU|NGbyv+JS(T*nFUBI zLH2+NY~^c13aTvR%cDw{FE!%HIVT+z=iJ*<(3oA?1nKRSwyjB2aB0+vrO|S>mH(D} zN0_m|eP+pSOu;V;N&8SbN&939sw^bUqe_>w={{ct&){#yt1qOWD!Xh6Vsn+PbeTo; zs6sH7y9076vPbnYp!s}zRG||De*{FxE|r3#vQO1|f?%K$!U4XLv{MDQjBj+`M# z3-7&6tYC@{PPFbvSkASz_3KP9f0aToldK+`)L2=x$uC&d!Koby^F#vR)<1ov;2snC zPGC&v<~7A=I&T1dM|ZSPQ(w$Vk+$2_1&>2B_3wdw;`>>99Q|j_AAJ$Vv9A z>0TJ|py1xeWm0{j3+wCp8x9^tPka30<0{cutNvNl;MI~=0r4G z_b_(+I@Hq-SY&44AP^t~WFBM;{1W{dr@$>bK8z~W-N-AU_;m$;(A-|K$mbQ;=8)%1 zcoxP`5i$4^Cp?$?b>E-rZj(iZ;}6{fuo{80oYDTeHzF}Ofy}qYwVr*;DS9`|GFKd;!+-w}ES8+O2g^o>|Yuzed7WaYz3!(0yERt*Vp`vH& z6w1R5Uyr?QVZaN)))?h#KWrV7SfORFm_c%Rld-XgQqc~@zEJQWT(R+CRH?}odkbI} zS7o}x>bE|oBpc21+E^)Xo$6Ee+}xv$(9-`w01{%nkml*GJB zdL8y51{*%^UX0a9uDn6!>&hF;`$*+&{nh@cya|MsHBVf&nY8##*3FYyi^bV*5Ttbq zFiG6kB;~RSg zU%gNm{;$N*2))OLIp}=?SHJByqD!(-T0`%*hK%jTKeFikJgi1?y$>>9*ZWxBN9uj+ zuL_Z_UKd^_fN>dTQt21+Qt1>_T;TVZwoFUKxqcQHPKX?rkLy$(?Pu|4%EBU=vbBhP zIRbeGcdTGfSWBLnud1nd%4wLfO*};pj?5c@eaVV-T3T`(Mu~j15E(BZMKHf(6&}o~ z!Wj%h(};54235znm^KR~-`Kpl$ae}wUE!+;4@&Z2R*H<(err4et;;d2 z1dYhOAi9GsCsSglQOvlx4&{+%+|bpOnsIZmoL14(TWV}5m4@lWzm^A1Eeu&Z7M@c( zXX#wHDmY6=tAQLX_6M9hVcYe-!Q$}R(hA)0uu~i?MD_JVPCldp)L z-W>lnGcVJ=X>DFyix~?qr<1g8Q&43gX&zO&q|HR5&$%XUF^=t#g0}1uCP;3tgl$LX z=qdjuSz*q<>QHaWmxPoBA26;Rl7ed%a<&YzPhruHNkNr`oOx8Gle5!P(3V}!1j+4{ zGuW0QfTE-TnNl`Kz9(OimdyK{$C2F>{IZa+fpijfaSEy|B+R2KorJw31#Q_SOpu(b zgr&kfFD?+mQnW4bNlV)M(}pz-8u~7kRIXbj+m=egdOPp;kDxWV!2Z6t&|+Ek4cYOAM2WT=FDY% zCWU$=ng=#@`cq!(Ge$t`zdEzR9%W?kI8cfK0~N)57&E3QrV@Na6YZQ8HdRKSf1WSX z)hN`DA!Fb%MRRB9Gs*CwvNyb`^BsNuYfMQggi1{~d4cL@lSMGt+?+8oHf}ND+gpFNH;y^S%Pf<;xEwQS@cz~%I8{x(AVN|Kfy?DrcZ&vA$ z=dAAUiJ>Az-IdP2o9b?pMHZcZFIFSD&IcPt*ZJ6XiPZVlU+sfB-%6@k+r;IWN$YFY zZIfB+SITHroX*2LxI)QRknABOoXndpyC35mdX=pdkSj0 z4aOlNC!K_jB6<~3)5#tbosHy+^Vp;@=2zJh){=WY7Om+v3gS_(0x^4F#x{W%J=hpB z=gONQmuWiL!8uhpgGFdDovcNFe<@TT<8-pcX|quBjm?{je5X)UHJ$8EP?0Dr%70=CzY-Dp!DyADBK3_M3r! z{yBu7>RG>~GBcpsO-u7BS`-A}a2C zkR_30o*Uq4zGI&1fYpFdh_TMkL1A*NQ`ay##;FciRiB5AZ3e0(Mz_YWp1xK>kTPm) z)6H;51usPSh5#jzUa=qs0$TcpuVW=>bH8uk75N6bntHw=cs_3E2^FxF#9*}_&T0bR zaBw?)!@j<62+*_$miX2?okfe*ZNRHmjzWDI;wSlZwIYgB2luL-zjLbfz2_F?FCU$-Lub;x+W`I zF!oxTu}EtoyutY3q~L=^8|?wvhqTdbVI(BsLVV;+MqgJ7`YdLz3Howvr*xS`0FV$9 z~(L@aNjkJ|}K_VPiApi}d5F?eJvzjE9j z1@1GGbcwx5%7Q}Ho5lSf3b}lI<9NXxgRP31fI3)wR!1T4Gx?V%3b_)p5AkrxP{@Z< z&}QM?1Z{?kNVh%hW>L|$ppeg{;DZGUxhK4hB;a7;BX2U5e>4Ss7VRYH%e9@-Wfp-# zLQIgm30V?}LN0=*`JxbUIzhlx)1h3?LOBwE1njlM9`iJ(5OSzNpdJEt)LC1%Del1w z5wIgbNoLsbB36Q6$A9A$!4A5bQn2G7I6Sdfu8BFpJ+LD}&p^3SX$3(b{BcP8kw!Ra z<^GFfkj74-A942;@eVUb+kXez)JMjNIOT1y>EB1x#a|@X}88VCT6(Pdn?u9Io&0%<^Iq)=JU$GmR z{Rpujzi|STDg8!-#z`NtM|5Uk-Pk}~g+J-Q%KOUNCV#>U5&k4VNoIfYCaeVclk@S4 z{0Uu6DSxuK4&B&(m}b@klf#FKNd{RDZKo&Mg+xmyD)v0I?X zM7V|kC7E5r{a6Wd4G-WIxdytLQm$cvv<59Va00~lx^_ARF}kYAA%8`)$2)0?bPvpx zj_G4;<$uXtL*PDh3g2fk*mkGzgjrm3d=ff^xMMSS3~Lg}ZF3m4L%l9vG6pTf-XV_> ze8Af64<;k?^c=s1>~r%RzoyL0!_tT`AkL9&nPa>`Oi{NPOJ;vJXigJ}vdx(849Grb zmKg3WQD`>8nTDvA`z%UHq%-|CJk8gciYQ&c1W|8mf8d;SqX9c49jJ)X`5%S3&Okkc z>-;WOtlh4Y7b09|fRfCv^Dq=xa-E0c6}e8jntHC2c9TmGnLDhVuJh1UxT_%wk|3v1 zEB2R%*Y*rnM{D&S&xi7x37jeA<(nunKqSQCKC?h)U^DtsnaBcV3Cwky#Z5YA>Tyrn zAfs=!KW~qyMw0wD-Rlk^8OXN{KO6fpHErk{tdYwm*YoteCCENEH&dj{49~kg=UJQ! zj(L^%74n>M>+<$;Yh(W0%GD`{sHnRJSt1p}DD6ae+AgQ;DI+=Mo1q-$l*L2SDbxKh zryQtttc9#{sEysBB#J?eB@yB~Aw`4HQQ!4X0dp zmM&eo%o(iFxk3jXbjaa&?Qi@bW|rlhITP?tuu3Pg`EhI3XrpRe>ovJ8xoGg)Slyw) zU!5J09%N)>ZUVLN?u(c)Exc2*4#v5yJ0Pv*wpr+dIw%h{!atNpJj7e_R37hRhaiuy z2Ig5ip>B>%gb00uN&XM>WxHBW{S;&jTqgfw?16+2m673%oqYF%x!AKr#&u!h;{_^G zd&cVg$C%PntnpOqsDDp&w#g#6YSMOJq(5Ob0_&*J8N}?16l@TE9d&Gb5I@6C(QEzH zzG~Nm7y)OE6PKysXJfkB-U3{8X228HjbkjO{w`&ae7mFLxfwub7-0mYpR_drA;^sx zfRN{m+Y26#Rzw>)_E@FVe;>#=QvLDatEc`)#FU<*&Px3cr#jnY5mbM7CVXzOQPPoE zjpXVdY!F@jW7{KA{ab%EpEgSJAYg=OGjWW|GL!N<)=d+k{3)nV`zSn?)&!|_=7?q@ zV^(pPRPCeid11wp@1wA#x6LW{u>M`vf|sLI`rQZa*=;n#W50rNZ^evlV4S{x!ZbMy2?i+JHwlSPZ1!Xk!;7Fi=qy+h|-hddXXOcdM)_@U6v*GAC6 zrKB|iy(wRbx!*tf_6Eo}(goqeC^>a6#je|&($L6Yv0ko^Up*e!4!F6U#%5mMINW(} zOqnTk<8I83&Iu0I6q+5+JGKX2aU4lu_541t`)^=xM5ttrAop5om=rZu#~Oc-ve1!O z^AuesK{4YrBN^;6^x{e6e3V}76iNe^l2)+n2UtLUR#fT4Q-W_1y|S26-Fx6+K5Fp0 zm|{{0g;IlHa`O1OT}p9~*{wY*IVy@MsywHz_h!JM8edtB!Qy zcG#hQL(5$h@GUV;x%7K*MdOroHKoQW7d5Il`LkFl50{e6@;SVnLzQAz4^EM^^9A>! zIox1w6MRv=CgNlK5i>|9Vq@8Pf-Iwv$C|}8ubD(sdpHl}_=_><&L+n4 z{VSjeg|!ahi+e8eN|Ipc{!#EW-yxvwX=I#pfJT7^p(r^D#6?LC1cgefXWP!kN|Fl* zR7lkNXeJGSr4QJS$@HLW&t$JuW%zg@1|^XuKk4={mtZAmg2r3$iVPoJO)0~-piwIi zk?CtSL1SjQf7#M@n!VG69QyS14|tOrsUxZ;ICeTA{Z#!XfHPlJO`ExuUu$2T3AzUE zGiy1{1eSZ}2xytbTE5pTZc>f-1-K{elwm55%G!LgWz1O}!Kw51)9UXqnVaVnjoTo5 zJ5X!5hfThF_y}cYOwkBV{FIhbXGGXLB;&ycOvoQ;FJm5@0LG}vpHXZv-yo)_+l(bY zYA;K^KLIQW4U|Q3C-!AxROlOwXMb)l&;B?8JPQee<#s!UtNyyOs1=iY(>B>jp}+PmRtzW7(nOAh!n0>1|U=Op+IzygVU z#k^$yqp&GZfqDqodnMD1Ho;zAh=9ETN;1RV6)3O-dym8`g1vOr9@uNNe~h#lU4Vl= zYbcj{4&IBDE|Gh|z4zas^=I|Lu2l8$Qt0s4;7#m6?BycD`p{`*nRTBiO!0G zyAQn6oQZJ@Ad)f0yIXXxg&Zy%cdw%#!JxtOg*eU#;m*!JcV^g`jppn+Or-9E*)o*H zU0Y6@hP&|G1HY@Mx%bk~sMkQF7$Lk5Zgsn#rSyiGaO3lE=>>wnNOv!%%HL1d4^a9b zrC*}-AxPbaF?j@%)zjTCi=Ri~r`!DsrC+7=YxrP>`)Md-^(^=6_}47=8}#U#lzt1+ zP3|4=eDJ;QWAKOjZA`v{$#*e%+`sodym|tYCo%aCOzy!CH@Hv1b@$+I-R}3{0(!6? z#!B6U$w;LqvrU*O-*VDcHrXp{R(xP+?y3Vu$R zx4^v(Zg#u3Vi_O91(T1^-yel^llv*W9vtWfJNA2cyW4#pQV_L2!q3KW z_fO*I&*JB=;^#&2a~7)0>5$ajm(-ojb@ys$augeU=8^`Wh`X2X>5B$#>l7Itz?Y?O z2vyqVta5#*+CRR@lf=s)V^Xr_+b2aZN^Z?56qFd?V*}vxGGxY~nC$&UNcP9%E=)d) z$;$g7IS!M@F?kA;4G%zaDJFY92+4d*9>L^mn3TT+$uK4_Ve$$lcRmEk-I%O+7?Ptg zxf+vy#pF3m{(#9F9)V;PCLh4$Lzw&ylmEhG<(DBj4wGvzxgL|}F?j)#3m%1}h{@fU zd=8U2Ux8#UCU3^150j@b`4J}FUxnmMOs>V`MoeDDWct@2!NX)-I)fIsSaxY=X58!0 zr7aS1zaf{lDZzR=57l=?mS2~!d{zajJrF+CFHZS_}K-1 zy4_vHAG^~Z!S=s=3;1~b>$9-VEa~=q&diNMO-GpjL1YChv z%o|07Jwnya(>65dLbBg(X53ttzXtYK`|7p6CH}U9RjhVbtqwb)69NDqr;oulSD!Tq z6UVE)ZmF-~z&0VZQXRgpJH=r~eC`}u>>Cu!MuH9 zn$rjD>n%Bb)nQ=HXkVk$?-c7WcfV4pZm2Kkl9(40(Pxrk>67>tjQ` z)rzyinSbVK=gsf9XtX%oC^yF7#vw~P>gE0tKI$DEo8KW=wZf^FDg#}8wGwVdLiY+H zk4{H^+zCwXFZlsZAzy7RNw8Pc`5xeIz1K#t0{y_3fj^rE*EeU6jKP-V!{hENaAV`R zXCi(Ne~3Pd5+jz`)r9NR?*$A#N5;qZY>!I*Kf+7p`s z=*z<8-qGGQSg@#UQn694f>9cvhtN?0Wh-^9?Q-THf9k2n&!>ek$5*RsD{2P2Hg(N? z3ONyU0;i@g^_k1A$8w*!?1o^;jPXympYhuZ#y<%q+4WyM`BO829yf_~eVIhid!Oc1 zmrCVy3gzL3*Ji_`L%pRMHd1}C2(AQAtpr_P0xDkdt)AX2&+E-%pEcwAAI+-d?H*nu z`2M?Bf$!a9Lp?ni8m%|b(Uiax0N=^3k~{*_QF(-kg(YM2u?2*Z;FbTZBdS%Jr{r3W zUkrh-vt#lG#RB4`Ug`CKr%1ni%<95-bD#YrD0_ZjE(|2>Af#Xhl+>@0{ zAPG~77Rg`%PF}NSL$M5-+f;jcOFgyH+HxJvi!Ak{`^5(&(&$@Bk*OO}0&5^&b9%?f z^Y+%N>jIHMUAaGv%@C#ByGD}0g?y(_Lb+(&+phM$i`qsg`ax+}!@LUS7N!0<$<(ew zrtT!VCsw9PtU>!K)p`qg60dMsatfysV)lAuxJf$%|G+bemlsBNxIlITlG3K)rDzrm z)U#7)@$!8kLE9Syaxwm4jC`bMOJ%X23W)KkF=CviMR*mkq&AEAZbHPr*M1SV(aA*J zMi28D-Nxi&F*~m8U;qEH_a$(071iF^_mHsf(8@BMkW4}Zfk?m**-S_f0k%ycq+ z>6sq7dlE(o0zQ@S8aGB!Sw+QtM}4@WJe9|DeJbLDDDErnPv2Ag&N)?eZ=GBB-tMY< z@7VJ``Dx9~t?D|bPMtdcQ>T_&8t#WNA;!t(v5|6U))-xc8KS9QkMAW1MGIDHo;15Z za7EW28WDzFv~+2;G6aZ2NTYpZE_Be-+Y@=#qmT2o-*F|}JKN@c++T=V1Qk1lDxxL; zhYLOCB8!mFS!)YgOYxo}wYWsMJUWKv5#7&13FgddT?sT~q+aPq1cw=O6VN@F@RIAC zUA0WLj?Py0QG$C)hk`qObFCoOML;aN2*q;UvO;M9u7v_8=Zf;!PEfzXNU08?1Q3-d z-A4lCCOo4$naGaIUt~wbh%CJP^n#(WK9ZDZJFPmcv|edirps>)uX4#eP}Oa{jnSrj9bkM zvsJ^uYMuubXJ$2*bts?vU}YKQQxpr!ON5{jttS}K{?R%vw(cA(4;L!1j4w>+P;CdS z#f+3-u>j(brFyf{KUyu-AtVV)H_PC5xd!|U;*q7oU}ZZlB#hK+TT5FjRjdmZb6^KR zrMyFwfE@w@Xkv!o=pbH9*Q}HME?)%@NYp}RdJ?yT8M#Wf+7*Qhy&bB?vvgbtMuUvf zC&2<17M3y8OW9P(1hzAOfvt=YSQr(q0uvrI9YEo@l`fzVRDqZf{Hs$)_{XuKkyD7!UT5c%bGi`#%a( z&hD`Do)=(>Qd{yP1%@|->n@iLN_g(SQk4h-Q852S84e!7P7ovN6Y7w>i7_GnEq@`e zj}dYRSuR>Qb;=aL5nXy~3ag~U-*+sa3Po@_*l|p^ET}F(pI@sp*6Hs%cF8=%F+Jcr9V6Zb`@Oq()gGj6=C zzxs>S3y`^HW=3!bz!*HEH8skQtT|l7GW$7BLhZE`Kl&vWdwe9)T-c^!+|pF zu5B2ymnX}>s}~&uRJMY2l$?i3q649GUgi#$t?O=O67%P}{p|KK^FWh_&gK^6iRFyt7J?edL zVJ&;DEj`1J(0-Jv4LAY?+xx|7S%rO9h;d4WDzIf>3xzfY8%lf(EQ)CCnpBPB4$1a} zK8xBP79kkExnNJD1SeQaAn4%a1^dIWCE%lolik!=oUm0(Vc)XR(Y&3DLiwE7braFb z8K`=ku2myp_iE4xrnbDP`$m@Hgm0dR2A`49aAH;~No3(USkjrRgkut0VyspuYSH>O zh77`%2P5DRxqz&o8$_J0-5Tb+LZKj!QRAaJN3@LI!(nQAFz8WOAUd zP2yl)24{Hj$Qe!RVa|r`zwWJr4H_7jw`GfFKTt8We{R_l2Cz*TQ|G4WqY0+SfV9Js zIp>D(AgxuQMsgM&NMIoq$YI+Q$W86#M3dT`ks+&fs9sN9x^&a#O|TDsxV(IGy|R6K zx!zd531@S14^u)sN#3FJqGtS!4&``bY}0AlvZGY5 zz&sYWXR$a8%yFAE--h{dFjGZKA56fdm+8-;aRv%|Nom@Tu^F7i!oa7UU3i5I9|_&W z7(?^lW!wKzoj2NH=Y2$T(}xS#lfsDV6A(XK5k2Lg6(8M8BjAT=g}LtIFbjbm@5guq zUe$oBe>4ffc!uBEa>B99rX_qlPWeWBOxG~RaQ?(_N49L?n%8cAF(-kb!{`m>7uXVI zdS^jb0t}{TYT60LK@-u;{i5|OMYFSI1=;F(l#*W4p_2ZZ`-4hj+aEr_TR0*-ytvRhy+{353z&WK zEH%tewrts4ABE%E6CZwG?cREBxppV?r~z78_{OhHAn0J{0^b;0q9AH!MC{$FrD$=4@uI^6x}>W={2AA%s^%5)qZdyni;XgVAYpd`um@ohz94f#E>MijJ&jKV@!8= ziQx~EeTjiqB0_ku21iH7YY+c_ia=kKcnn6;1TIQkAETS$MF}t4WdX5DA(rVw(fW{| zIgx~!PxnN&CN0XRdquSH!)B+oh$a`yac;4^iW@h>8%sq2ai&ZbaNbjjTP{1_Q@Ze3 zwf<2&Z9sdOI539tm~`hn5+8eXaCd?mLS~v3Yx_xWhQ^%=7ujo{c=k8UdYyklvo#wh zT@|<)<#PBu#PSp2yC?g>ha5($2{MlW^Rcxzvgu{`vC(A(G?FNuZe!Iua{ zh~VAdfto$r>p>2!!#B}1uSnmPp`C7w{UzhAeK_O2^n=I`FDA18oEWJWy$gBHMSp_x z0Yn5Z(WRT~Vb>wvC%tAP%u9n?$K^lqu3Gu1$Gk*YT9&84yewkOa8xa!^>gj#w1jR} zt(`Scb&K;L@&tgWp;;L!!$pXFu=TIMyryTMG}g1Mu)S6r=z~p!Rs7PWV!nJ8Y|b6t zuKpQ@(KBGD5;Yz+C`x)GrAl2sVm*E0#KeH&2DYHfN7BST>SC2yFAcyCYK zCdV}e!EirZSzH_HqpM09YhJKxSpnn=IVp>w$o%!ns4#Da=l)w_YIXB4cIm; zslc@a)d6t_M?(=VZC}#^B7l!*Hb)z4dPav~Cs#lGsyxu+??WhhXTp%u#%OERr6(WJ zgiV;M3q90~o>P_;P97*X`uiG{?R|}rQh#}M!7oziIpq}iiiL<;$#oL>^(1D5PBLvp zFy5XMVqt1Q)hGfW@NZVx+JwsDEZXHjqm=ZGigTfWunov-?ANj)s|aqnm)l>?@GCnW zDhuuAZ{3vr2QR9lLlxKx>wocL1u0_h$k=N96b2Yj+>N{~WHF_I@jr^?UB>N0Yf;D` z@oq74Stng+Hr(&=m`*BsgTR1Sfh79VTZWu3#qu}drA`rY_AWpc)EB>u&u4e~EtCP5 zhU`MduIaoXBNh#L5tP+N>_tz275}IGu7TyJD+bs6e_+4WKr}y*J4b1PD&mE|4{Mg7 z&7#3;HjJNdul+WksoVk8+a1_3Y(VhQ+&Wceel$05X_QckhE!%!A(b!p&x&_U99t*L7`XYg;v)m;u;-3l}k5%FcdO_E$a9O7yQ`Xih%@rv>GZU^2TkL9hk zcVlz}Pp4L?Oe52tc7YXDS2E<5T2V8{l0v_O~bzKz?FrDNv_;9><13KrPnaQa=sci*Pn7J)iJee z29{CTLbJpxrd5A+kdcK}{n<^c=6w^!tL3LjEVN2;<)&2!IPjKUs|3sWYSrTK6kBPJ zsa)b_Rx$llrG$>L9Hwf=Itb1})s{o`5L>c^$WtA-vQRb2m7A)abRTC`dt7_tW zP!JYUI%H}ZU1k}jXnF?IvuzGiv(U4xZhF>q;L1YJBv)>FcD(~{>Ge#ooUfkk7aeVk zSGR}_v~2HHL_Sl#TOCAcp?tTvDc{>1xUx__$(5V(eb|Aw^vWk#&R6;Nq1bnD{;SP& zz&JC>6wkP3?Z^z*~B?6D;Seb_WG&*SSL%bBdLz zU`!dNh%>)s@3~tj;#8>K!O7d(fh!9|lw7$f;!_-WORtE6<$M)!ad?3)9(LzzMO7&| zpU`uds;zbqoQ0}A-A&cba^T8B)g)JLs&=6RZ|PM{u$-@|?IpEDTlrOLWKJm-vcjsI zP`6MXQ@EOg_$(Ce3O9w@<-nDN!bz^&6z*RgcuTKvg5`V_ZtsX~1xk~mG)~`ypvozY zV|h&D-sB)Z3yr(WP2=A0z?Fr@Nv^^gH%Q)$bw6?7%0lZTS7EK|Y%S}L4!ot;Il*$iI=7H*ic(5s zYTF!DP8AV)7QAK}w#T<~oh8hJ>K$eYhd6L$p<$9MHw|0rz*~9^6D;SeVf#kzvr}qh zYTBYuc~w#Y^EiBuqZhH3|2d*siPI492yP32fhD%SrV>0V=;4Z!938wSa zym_=spiNY6CKU>aNxWlXy2?RJ7OK^BQ>~XcaAl!dlB=+4bq1Q_4!osTEWvWViZ$2Y z7p(NgG-ETcjLH_aOT1!Q^)3e)S!mVU+_dVW4qRDimE_7ztNz1*xAa;iSk70g_B6Jb zEA=t8Yk^)?6%$&)A3_K$Ml%0jCoS8iJMGzZ?&Yn5O*U#(gkJ_w_<$24K{ zwW6w&uwX2QsoDky!C4rvv)oke5(lm#ukN{FyG_A_APMq2#&w86Tq#x_42j> z_{vyiczp2w)@=BffX_SN!xfa-EY-J{o8v9Xa%(;mk+-7vkMC~Hg;QJNB0I9UM!B{7YG|qGuXjKT;tx~UtD|klKja`m`;NEW`1yzfR~A;;aghAjfh&7i zxnad09C%BQ6+)2tV#VU{nOkKqOpI8_imGw~CPI14j4XUKS1))jRPW#gAMC)D#UPMe zh1G4^3wCkA;R`0MB@TS0S2e+IzN)q;beLNS!ql{RK}l6edLvo}liFzxQnN7sr?~0Z zxei=e=$PaxtYe+UAfM;JTY5bcEa$6ddq><6pw!6JwLN%gRZ!?#IFsqzP6r8E=v>21 z=U(i`_|Ll?&%p;LAO-LFD&Jn_T@*^COx;_^3afGw zQF$KIymvat(L(dy>ZW-gap1~A^CVYpn)jdsZ}yrORye_Oz6!UeanXs=BU9fN=w($g zp>8~jY1{W5WM`pmkGg5w6AoNiXq)89P22wFz*~B46D;SeZL^wmhmO)6Q^lr30hKE> zi{3DW+V8u$P6+mb>K!HoM>=q2p-_^mutH7i>EYtS7ff2K9QaDFOoH8fl?hG>nHMoB zX_%@tOB7cHgm$TyOl0dFL}p>J&U90-iygSKP%z0=Siu&uYp%HPLU~Mv+a0(~uXdsl znW~*zW!^y$L{yh(T<_l%(e_d$gW5{C2S8n!So99V(B$Ee#9Zfe1Y{W@P7mXx5U)K7 zf4mK^EjSvVZonSGf4*egE2=CR0=)n^emT0o+LcctCb|kM@NXCZLwOARR=YjP4-CTy zgbK8r)`6$NXJHzv3#(Pgb@dkU(Hj3-Eb_v$*|H$FWH%+Klotw5xAuxB621f5y9F!O zzY{P^u*J#0E`faP{afET1Uh8e$QZ?$my0-abl*wI2bW*J8tBCbpCbe1vnWvBKki*O zT}H-b*xY*~R2D?eTk=LZ3Y3?x8mU(LD@_QLV`zP6sXjcu+q>OYkvo)bc)!NRDB0-2 za@3SAy@X9DEvk;)4Ro@3!PTc9#O@b&pNTqe#25NN$oz6ny5(}|CcNcR+$^`Q3Ku99 z5-z+voUd+(UunOMy!(+pn$yEsibkAQgA8a7ffDTukET!5p^Yuzd~>x=@6+ocQy13=4brcY`L$zF}+mu z+%FT15VZFzWI^4EXaM+wkeda73*<%&Z!Hdwv~hvx(;kCNc?)Apm)J`s!cT_+2EuFX z3&Zvh6X`@E{5;?{p>Mbg-X|FY*Wbr=51*+I8zs-&`oR0rEnr33t$L z9c`B3n(Ll6g?nYKk?7A`78-M%qyGV6o8%LfbX7g6I_0@sOZ^lMk$#xX@|5n{?O%6Jz$NoW2?fr)*^u~XJQj|EQpJMSbUX1 zQeBF3ZMuG&6QS;FBU{mjMG*K?Cbhu&gF7I8~j;RMh@@{;Z=08n`r`_HRN@r3! zi_+PY&Y^TJrjqM(FkVCtn}H;i!7_kzUeC~I6+U-S-kt(E zzhz3r9~Cj3V1t|wL-h{G`BMk3ERa)jWs97Da^T7WIVD$woO<7~L4$=fd&aDo0cmc~ z88J}2uOnHdi3XidKyJp+nPh$hcJA}NIP47UjRMbop{xO(TAKte+|Oj25L`$Do}7pP zPmPn<$)N>!9u2J(;Ms#u1fKLXslamueGs|L^pVXqk7!f47i!ECGWRhc6A8wm<#a7q z?kB)EY`8xYJ1}rx*l>?A&uQkCC!6G2w{lKhlWGT?D$Pp!X}0vXRYWsxN^Zi4C^ zkg?>zl?5_Nu56L9=D?K&GD@z*X&%w7Y?NSr+$b@?$_*4FMuxW$$twLb=$rt#8G~Ys zff0Ck6VQvEOOl~cQ1~(^W>(1h7u$wo9u)j!pxWXg*ddm0PVyfw~)m~myh;E(c_DPp0W@HZCPRywVa~M zOSI|c`EYtLY4g=#@l#{`Y2>UpqrF#qhS;3=tyj;)PWDGIw~5wEjb|lP7BeHa378_U zvFdHR2zIi`YwMOSoX(R9`tV^a#?K`U5{2}QGTM8FftQ=jZs)F~3YwVYyvy)iEFPW! zxtZW0?U<&e#zmn~CbwN(36%Uvp(Zc2>#7d<1_Wx%%h@2d#veclv%$>wRgW>sp`n{* z*VT)#VqKZk-eIOmFHRsIGuVq>id|RN0lmz2UA-JCv)^@v8Y6aHp>DLca0G3%FH+0OcZ>A;o6tY2~^XZ_TzY>;4nV2$`7v6+Y^ zY^aJD7~X#(S*3ploqHiS6EBB=h`gL=^CBkw^B#|Oby{Ro)SQ1llrkJ1tsTO;e~8I5 z!Qn}>63mHEr?ru&m_l2u1Rnye6?6VW@rmaA^pwR!mmp&zCb}m8DD-XK)VFTKrt?p? zLc?R)qoH4Mp0IdG1S|%GWASl;-f#|-Jc}8Fr(;+9t_e2=IUwdLlU(afU5uET+?DAv zpmUENu(5s3T3vtWvvVd2~RR~^1|FZFe1q0*H$BzMfZtxm0X1tFhS*4K%oqHg6qTp2w z4gs%!1-i-bN~ION{tb#7@T#>;!0TJFsd>XICnDfg<0K1s-Qx$)4uaQ3_(bqZPm>B> zpDrhHo6bFbqZPU??QHUj_2vn#2gl4^iEb>m&evMaXRa)VS%xC^vah$?GUPCEJ<=rC zdSjPQT!qk;88d)&p_;eWM#{q}aP=9cXtKoB6QFtrTs_-?D+^qeT-oC4a~-&{z*Wf= z;cBRR+2Fx)af8QzJ2zO37%<+`k*v~3gU;cQn=z~=nwcPiQH~5SgEnX4HDs43A>D#58W|o|YfKrW+r6-ap zblPpStP?aB`FuL=LmpIVQR8-FC#J=9@DEV)yVNHs$i@;iho1MA(C&dIyAE?!c7=!b+}e5%w7l zTv;HjBo^SMMjrpumf&HZQ`%X zxEZ_JAIIEMT3?rOYeHo)Zi~$!QsgyO$!)L8c)7`I>vi22R}gCG!-{cX#(Yxv^JOvp zmIIc<@bSH7LA4&SI<;*3WU$j1!(R2OG_4d`Wd zamM3Nnf=8Xs59c?4AhM_7iV<8SrH11YGh|$<)8?z&iDgLLyT%s=YQY}eNg0cb;j}Q z)^1#P`i9e=mAFleMm@VlI%!RuO82UYBOL+Wy3oMu{2~pu6cr*H8(Em+bH+w!@S0it z#Xr{jfpZ!=M%{1LSYVRt&h_xHv=t&5@q~Fj{iWglaL(l|?K;a%CG!IMsnGi&%o>ied?R-?CAIg#zovM~%%?F5z@=#7OZDL$XQ}4LY+S zHxu88po^~BNHjnqif}nljrNjSfyq%Zgy%tF!(q}|C9q*GHdDujJicGViBK1|k*|mc zS)2^6VLK>>FoI7ML!hTDCe8#g6LRr}z>^JUZ%q7xk(g*O5KRiv>-H6^&J#viG|V6z z3#9XchVxZ$J%gEr-Ar-0S;zrQUu=@=&hWe`b7jN~I9(v&v|1TX^F^cEOwnWssIP_U z9RT(14qRCPs^rQRQ2)(=D+@rCToIu1-eqG4iv>oXj~xT*+(PpaVs|G|~cAe~RrOSp6A3 z5vbQ)%-LFIWu>tRMzos*6Q*9DA2HdEzU%t%c8 ziLS!jNaO&pPqGn1d1cfLh}{DqwlUb(C^wtwX07|$_lC`^bx)|?0c4MG z;K~AIC0Di}d#nRj79cCRk}Kf6f7uAaf&mEd5oExh8_Y(G8gDU@RT^o~`3sD*jA6E| zVG=;Q3HXWuT5g6E)Se4JFrZdzoq*c^WriamM*w<-BjE1IFO$?MT=F_vo06I}N|sedOrL^T#FXDhzg+|z%{EWjU_rsfWpzcI;m|%cZ#XRs7#dsnX`JfRZ`tdb*(9oET@=PL-h`L`7#Ht zEbvltWs8@$IdElxmy#>OOVzJztYCq-v0{Lj8(2n+5AOv?R%xI?X8>|D2FnD4Be3!# zKr;p_m61_U`B5lpK&93q0hQaZiM|!e2`V`e0hJmjSwQ9Iu^j}JU%)4VN_v`9P`PsB z>Cd&?h-O%&MiQVhO9n8` z>=`caOtIDWFQzcE#Kk{C^$xf=`)9hH>PRCz3tW_3+2Z294qRE_qU4HjQFbdECYT=> zZ!Q!AuH0ZTVrY1OK(b2z3_6cOZpN?}XJP~&#)#43 z4Ix>jfd-umAva@Sj5Ra@8Q%#MV~|mp7X^*)f`SG#YON90@gi)VZ+~)vMovUPqsB=V z(D(^#2SMW}@rj_3o+cGEt~qz@d7IB(yJ5q{eIi(9IdMF;Elh?9mXs$tsOB z=zIxsGltxb43&W2qo8YI;MX)s3W|@09~n@rwNgOwSD3VOf?`fYK(WS27EpWwYA-?Y ziTFfNOiz;vil2V|1*e^J_U6sjn}d=*UMJ23`ZebXzU*sJVY;!XJ2&7>mJx8Py=NBU zIoQL#`^YUs4%63jOmf}%;W|U$%A6ShJHMwfx^<}1Y^K^MG++uQOLW}=)jObT-GM6$ zbd_A$qU*H|Tv<$HC0B&5taI7G!BTMp$ACOHXpI;wULTTGx@gcj3vx4t)?_mzF!c@~ z8-uBu-BDnACzLk8RBM+2(`REteZ!O!m~tWlOf^oj0MqwkI|xkQhff5i^fal!^u!A` zo_pS=b*Go16UXKj1G^~YyIU$BNenhY6>SyX#FNs?*Og8aNx=US|wMu(E1k#t}LKcaz)S@ z>RvW{uv}pL`S3A7&kbB7hK%(D@YPW(=qKiWMwY1uM zhKj>xv)ef`Y3@0Wkg_*~EW{$@S&*9vLI(F7FA5ohaSt)kyB;X{Gfquj>W` z)~;KBdg3R4(J*#;xdoQ(m32mfK5tiOz;%ANv3}Z|(Tt5A%vM~nQR%;B2L6jo_?*eu zVd;LY@k1uLuDsxa3tFL%5igkAv$bC8zoMMx1Ha!lMbZvpZM>jIp?Zf{!4nQ#S;Pt? zSGKW&zd3Ma5i5{fQLI4gS~g&?Okl0}fU%jVCEREnF-W}cAX%k{2A$79ZYEw30Ttb7 z9B+0+gy7&`M!Q2T-_EGmz#&l5aE!F}2o(4nlWT%wl;$QVPDJ35#z`!)SzNlf99k=4 z1HJe}u>pF@VnR%iG7)zfuiS7pEMzC`Br~8g;Q$g@Q>rmfpwv$XXcS{%a;D&jfuwxL zM*NxBkG_AxM|=(txy~flm4}dY5i7%F0OahRY6TXmQyfFO#1u!C@OU9q?*Na34qREl zqvXmK9(Oo!WdVB5 zk3DDYdA5_tgo8+AL`9W(LZf~@KqncCjk6?A3>?)X|z_e#|7-m4}g-l$B{R z;BijRP^q47`uJ5-AX(z$m!NtFeEhxxR~Gmvxw6H_Cmgu4z(>gy;bYLVY_wpJz?k#V zVgQ#LKt_xZ?~6!QX`w;q!;qUXK*kyzfshM-6@!q<#3+c|0}2`tskKHx2uiLL2x7OgL4x^#(dL6BBM^)j7~cIzR_UKX=WURiI|$+k z5Fq$>AQuCIP)LE`lwU`Hpw_Xo&0pmZu60|t zP6veml_@fya8^&FSsO_)Aw0ztMwVE(8mf1|!VL~wSzw{$$`%VRap1}V3nf>Cg{oiK zIKcvOfgGjcxlj@_!;9ovyi|`J%d?;H!+pX9X0PV$+hn8X4I4&?HeouI~Ndk_NCo` z^I=mkSt95Mpn3-c{fq-w76>Z2vPICZI&fuyppq*>P~N+2XQCkzAo^RN8VRDh*-=pXJ1A^Gsn#md^xLtSc|$2DBA`^`Bnv2= z{sgpxpmYX45tP!?q=M3wo6lQ&_6DmtX1k55RAZh1YU~~p6k}(ZGg-cXP5F+E`$MrG zea+sLYcAmWz6t^-`r;8Q$KPa>lvR6ib$PxeTgzz{^t{xU#@Y z$(1c$ZgAkr0xu<3gqKDKv!R0}9|azAXGZ;o=Bb8;dAC^b&90LrVe9R!rS@QHwup7H@oLk$ul=_>M+Hlf+4~57{ zxAx;mS0SStALK2g8nxn;qov_yr8%~&FjBAdmzM-{?lVuEGG)ni1;@=Pmk;=GL)+uI?^b z3?&SQP8)SH@&P;tmOsIvD|&YU{^(G2z-gsMxv{#idSq-hVan<)&C!u+d5hA#qL|js zmgP9)><{b(ghP-MzPe=3SQ_5iV;EQ7Q?Op$3eF^^IPoJAh{r%ws*6hw$G+GaQ*)%@ zXw9mZw++<#$Gz*OLr>48e+`u?!{gp^sLcN25>yy*aS1AhxVS`$Mrz5`s8@IpxvLRS zs4Z%bofDueFf8rk_)ZWEg`DmzAyXR@-O>hn2X~ferF(?|kNWTx zZgx91FV+pa}|lGLrDX;JnR5{v|fNO z^wD|@m@f^U20f)>25zmbR!WV+wpzWgtx~QI6oyBKwwCLKV-;=**g7D#81s^z&-my_ z5hD%0VV^dKTfCD|vV#*@dk|FM;u988lX0wVwYW9omB=r}SYCxs6l0;MECLH;)X0we zaze|LkI6n>%`q&kcJ$i5K15W-k@1Eo!~JwS!|m7aV7ui~TqL_{Y=zBtFsV`{lIB|P zWE$Pk*hyo=-)fTUw(S7X!j84$cSDOZw&RJtE=>8SfNG2>5BgtO^G`!z!57oV`^nvAos=HEwt$(lcoPh`#M zDO+pq%L%NxF~PQpn%~YQwn8M@>^HV{32^PA=1=(I_>C_Pddfl^6BadJQ5qQN>mRIC z2l{IDfpWdLBpTrgL*?dRZD7fGD|(?lR81tBWfVO>Km__j6pJ-2W*!EmMWMpnG8nnc zy_@@6-7s}z5Yj-@Op{!ROn;`ai`XNNryv}T2?q*t7Vbz0RLt^QZPl-E_Q7b zpgjbtx3k7UBvImA5THFEMP)Hz$p{Vc_D7MZZZNFo6v)lQNeIG{a>?0H1qw|*6X^Nw zfib#dc(Nt$A`Ddlx1Sr%g4Q|_sF{Y%?ZjCyW0ps+9T+H-3S{yMWbz8lTA?{uF2Lt4 zVNp=L>-F`PG_cbjF*QA#G1-yf=*W|pB<4W$)EP_&Fh4sbZj!z(CZp(`#dBKo&MnnT zfJfzegLjjj!MfskjEmG=aV9V%ns+HyOq0++N5Ob_7jc&3LlGy|3Pr-RC57e73!6a= zLz)T0BT+$%UWL>04nm&v_;=WTHnNq*pf8OYR1A%$Av3K|g%aYu`)~AgA`y1ZqYwti4xxo!`cPp*Gr7p@;5U(?-U|Tk|27U%qOjTIsJe$9D&j zeD98FU^p?--z?R)mtg|68=G+(5Wm5@9a%ujDq{F(ilw2Xu>DOK*48^<>Jl!IMEO&f z%`7~A?ac+-Umatkv}{x+ab#dv`#z$}$Vm)U>pqf_e6HWkIIv@92uWu8G{1_AT)9}| zSHZ0(A2SXT3W9$eK*JVnYHZ7k-fhsT)+{j_7%xXkV(>01CFY7>fbwFlNKcb*a?}hq z6s4IQY1QO8IXXI+9BCAbv^KP?pn`$zrb^mRIl_`Nr{}T({bTHF-!0?n8e=ijOqCut z$#tV|q>Ib<(T%CnqEHtpxfk==-0?S4dRfk*{sPr!HjDZrRc1&ch&3vIAUu^cOAyip zubKYt`#Wp>wV7D%3DsvT5*rW*W~ng~%ZTyh{Q?#Q_(n^a(u9lS2eEz)BAUT*T*ZMS5E^+Op~Uycr4^kw>i=LcuPn2zr`S5V5Sk)EMj=DGv|8Hn#SYv!_I!`Oxdg6CMr`Gc%oB5jNnJ zn&s_)UOr5Om#!A*KTyR)h>d443-EEKrW^obY<3z8aGy!8_4;l(L}AKZJ4+Ehb}&bE zi7)E#!j)OVm~kG6f&%Nol@9Zt5ub;EgDYnp2lxgS%HBO`OLaL1+~&2WVr+3p(eRW(y{9y=x+oi zXNi9DMIOe&aDEsG!})}R>Lu%^6HUQoiGs&L^_ijI$`qBwpkRdFcq>pO3I)9;#F<(P z=$vo8+#IbBH^y%s*LJ(NX6OScenFMGK$K-2aFIg?+#+IMuM>Z6r9b*==ivPbYnzf` zS`2NBl=~~&D*dn+Iv3884b=ultL1U;hVMd~=cvPF<6h*N=jIf>A?JJNVcTitux&pW zQ`!CDw;6jQa$`({7cW zdKN0%Xj_diA%#k#5Hv{bXsF?q!-6Og+H&Jw4O8puSUWnh|B*2#sVTt+uMfnE#po0g zyM|G+Gd8mJAVkc?FWfe*k5apBuSI5Q{{K3BBDam6GIiTLUr70#%viClUK{EgsPs2u zT{b$J8f;)aEYflFtLfBX^Wn+jFx^H77GSCLD&D7YvM8=QFBI*a3|yLmrTx!9?>Td(qg0 zW4;g7+hK#Dy}{<{)BqQMb0DK}ir>9Ke+&2+99kT3& zEsxrYZ!DhsM^U0ze0eQ-!nyn&A}0u17aPpqgBMi=MJOYj$;{HR*ss1n&Jj8Xi@n?= z*KO;lVNu3n$+VzHyw1n4VRnOiVIqX%or(feEEqPj2)P;CNEvkwOMzyH=K?u@h8R{W zWi8{B*H{D9nkG!Q|$G? zlljd-m@<+Z&|BCvLif4#*M?!itiK8Gw>8VdaBD?>ZFCsU0pQtg zxtMimN5&=6(GE|NCx^)pN_`=d0Vs9cL6xG{`AL=8G8V!Oz5kYV!Z2eXbteR8RIb2^ z#f3NcL`DjH(9X}ORB?yDF_sbs?8@Gig`F^>aX^W1B@8MV5TY?XZxAlv7_K!7V_*=r zmSHf9`a*+jVo9_9cwx5v5u8rA8Y;G%0?2U{oKC7bTs zgmyp(p+Dh((7PbpN%sQveY%MCl5R`dcnlP zT)1AyO8SO|>`5q(*_9`;ODArk_dh1NZu`J$NRVohWh_=_KF^Dgjkn;B&^?L;!%F-S zq?z$NPkv}RBm|n~9SXeo)4Y&Qsaal(+8UEQtzE(&{%@uj36ngFIklu3SV~SrSW1nP zSd8d2F17-DineDlLDQ>d0_sm>B8}(}9%=H;2xi0Uj$bChbo9YO;co(6pVomikAva@FEtf4c z4I(pL0ZP7^*7Qi3=m_;R%(K=OVV>79MMyHw;r$t&+Mls=5UzBB*jW&0!%Z5((Dcq* zEvD^oyYuGyXqnC3gJR1HXOyZ92&iF2J1dPc{thRItJ$_b5#OFj!fcGznXI^@9}_!I znnMSBKu*Jog@%bV6ZB-d@{Ke!kbEaX3lh!BnUJ`|T?!I(t69&$5ACV9Sr%YeY?(?HAzC$3Nm zpQ07kfGDj|!WiDhlp+bDI$xDDW)Pf+Fp?T4sg2~A|Q;C-tBB6k}t{F7!GnKmiI7^$j;UDR46?BY+D zLL}HlbNReC!FR_6HCjj$?SPRUT1&J2F&i}dfix`VxgGh?lVB)_UfY`q0D5hr*N2Z` z40L3+l6oLmODkfm;byX*w4y zdZCzO-I1i83f63oqAGG;v%NT583uZGAy%A5&r+Un8qTO;X;y4y6SM_egqef|TMx3G z6fe--?XFb>x{Fq)VPA;n!ioBB7C*U6)lv@R1qN3>6r z)^R^Ax(M^azG=$E4{*fvVVdA$L^pVkAPZ_5Y0P97ixa28I8seCFWa0gi>eaFw`Gk2 zw8O)H%LMa;y=MJtN5|Q+5a7HIbsyW zMjq3l`i$ja<7NcHjX7)8UUAQd!%5nzLfSL_M>)v5E6(^oC4El@XZ+iW-RR`^!&t~T z>?A+36>V=RGJiU>*^kUeTU`~1l2?mGRR+ORBO;|4M-kijAhSye5h>#fz$;ZiO787m zB|VdJ1CC@g@FWF%R6{%X9|}p?|D4&=jTz~)lu)p+doKz^z=x2~dPd34s2FP&T-;*1 zq4i0uf70o$r!q22YZlw^iKZL$l<9QC^M#b(!Y=N766XTiuUf?Jd=eFOI<4?M6^mp2 zK@3?jtKiYx7m6D|Bu8rVIU%I>p6U1tndb3HZwyAJai(5ilIy|^MoNIO9$w}fj3VUX z-Gs7IEEu4%19CG4jbMY35&$8^9YD!P3Qdm`JVdCcfeBh$gvGmxDMA7!n5z`WC{T#l zVdMvfMGHcBVD(EjOy0uS?P!=J#aw+T=z8TBz4a#6{C~je#K#x|spTI;jqk&XDQX<3 zD0uaquTDHIVRb?%VY{UXry7`cej!`w1hL(RpkgO)B#7;zfMZ>bq%jh#OMHl`$a!7j z=h@0I(6FCi#c4Dw<+{Y*Giq42>k7RN~ z*O1V$hv9sv0%e}X4_uOjTT>W zX2h}Nd#3C6Fb(WT*VDwY?l#GFArdG7Dl=@XRAwH>ija$UFUrbiA>%ct2h5J}Rn*4D z>9d;&xmWs=z_^{E3>N%kcr93SYAbeQo^U&m&kcZ;-Vp%*04Om4mboSXi;O4$)>KFU z@SUvN69CugHH3|@m#C-mN?Z&(TaZ?zadK`u8!{Bx?{FG3kG&}%Te>DaRjdHVDr3)&cet3z$ z7gCVlj>i*|1-zH6R2inTlyH&QV68ep7mW=SfEBpw8V>IR_1<|KMu#d};m)JRU~RNI zK-V9QjtsyTfS~TN!bq)Ap^L^=5b3R@DxTON&W9P%2Hlm!J&=D&ty8HnRQe@T(~eN7 zBM+?Wu||y2pRwlu1H#5r{{qlsH$P00e-PAr5?e+=y}&eqIqy7de7qSprm?P%{&s<5 z$2ypX?v<^Cg7DiSsMrqQB&r4BHxzQLx1ZEcLFo8@sfwIK$1AdxVW4Hpu;MgYmNInw ztc)6_J6E=skeOTB(V<8P9Y51m@dDjl<61?ayV!M^=&s?p*@TX{0p|GQP;oFv=l)k% zN0UOw=Ye3_Z)wL;Vvc?lKG7VVo-&=I`!j`{Zk%2Ylh{TXJ~2#pQnsI?N8drlD#>%6 zE-!Op^pZ};E@UNDR9D=_5z1qj^GfVeJ5)|HSHH<5*KK!@g#_tOmc!pI$b7yYAsg>b zl$T<`uo5>wZpIVG;Gk;?9GYui;pwO zb=$34T#U*J<-d#-AsX)t6qjPbFoY{0H)BI6Z`I;5AY=GkAm)3;T%nXx9Idd1iPRb; zOysdlDRMHAoQN=y8Yk^cWZUmmRj?7{6MOhX29lm8m4RG>JzuWZYxVY#gXq&Keg%1& zM){#1pH`7rPWVdIT)!x{jM{r<7GK0vl6$;4I6*Ho$#vUuizYy2kPMqRle)o|@b1tx zk)iDHhYds7bc9I0V}0{_Q&{aBRGTBVuYv0A77>gIL~!KzRVgZqIbs{3E8Z(nB&u5s zoOnLuW{eZ^*p8+Y1QH(sN?*Tlo?o1&@x(TM=^4xf z{g|m_?(p!qNv`$U?g~TbB2PaOlU%obv@tA7 zWvvW@IWOoM1z*PXHBn{4u60xy@~`y_)@f&%Qq0oHeil@pnUnp@6qUs|*%3Bl>j8nwAdvGt?eOqZ0HaNlg9@U2ZmnqoWR_xE{V|&p$Z#S8WHe4v zgUs`>5#)2f0G|kC=xI`cOb=R%;quP*4)-Ck4mbQfPgv1rgT$z^Ri>*wTQ)|O5F0oA zx6A~MGabwwH(p_qYrVSroNVk$-wGLkk-3K*ArR87Shv*wwqw31j8p^B7qR1w#-|Z9i18ygyi!h`47*pchjpnyaa@}@cXtY?B z`O4pdMu^D!6^c!L#uI;+R!fkt1`5E;u9HKdYV**_GobzZ2KK>2S@vs%~Er;k*6_TAfaCn`iJa( zTZ;Yb&xN>2wch=Bu%G`a`~E(J0^5GYAW)9+mdnTCPa*cJx< z2yBNxVsbL@oQN>+8Yi)%pz}R%Rcr?N(nI(}CZ3)qm5J|Z*7^o2{T+OcK01CNf1an2 zmyTN z=5|4D#%4~&5B%nnoqIFT@$H zm_7Uo)6d-P;TKGD-S%ZXCPZbB44WA2{8yk8-q>cA2rs~yC209Ac+Gn1r>5xIxuP~Z z+W1=aAVHjG~8gLO<{*TTd4gs zYRye+k-(3Ku!(tl&76q94~>)5_;CBimWn%U`s$?)mffQFxdk=k zi5~JCYCx7SsP=emDPFZhCDNBGj6ROV)Al9X*ECwJVl*Bs?MWVXH0ElBCH)DX1+x~QIAbhw2 zNcr;$eOM`YklX%(A4Z{r)*OKj%dvg_ILv8w!HEcT&^Sqr4!f`sG`qM4p9mf3X;PuX z39{?pYPCugJ{nmY=^Lq6`pfNS8p|T1=rPshi5o|XSw{@zA~h!gM)r^Sp>OfXZpD^j zw(J(B*trAD%_h0lo4YHh9V=XA-VC&vNgd`(Ka4k_>@eblvZ?RnJJwV0Hbs{u>bxDQ z&kS|$Nl{r0>O^Rc_huA{>J|faUIw`tqt2m;16ST)@(9$yoQntDtvCOHUgJ#fI;n@w|Nk5sM}eAD<`*>3#0h)wPvj_ zP;Qp%LvT4I-lka+zrrgn>4&xY09;xrucL$?HS3k_+u@$ffkI^%3U4j-U(qZ#n*6HC ze;gNVfPI6B@zsl`z_p?9Uq?1Ea&b=vE&W@xCz+)a%JnrS74UpcS;RgeIq0dl%(|G2 zqIVY0Y0ZOsR!c*uM-AU^*JJ|WPj{izyrBK{f zt(BVa`Q+t=%`ld#rAAYXqC#yOUGj<_FKqS}&ZyO+hD>7_6oSD9|DzjWas0s(-2ECJ zegdATlrdnHFpFL#B=Jr`X6lo=DM>BoL106u(ceJMAXe(-X@w&HY%69428>hncJZbJ z`gT3fXw9T9P%;pt-;wE4Her#Xo_nRy#ufrw*m1RyxWllgq?&-67>$4 zy2L{M!XYU%-y4ag#H98ze4D`j|U?V6*_!fL3Yf4X(%9)8yPO?8i)U ztv7b9h1FERH*xt}*$5eVUqrdZTGI=16q7vHMWIG=%WC8@n>zpR(76-mwazxlwQlb=o5}<~k;iHyq~jfk5{tE_ z(;zovYbrO77&=9EbScpD?Wmzy%7VtKuwgs3)(P7=gDFT(wv!VPwo~IIwe36^8$q^n z4L*_Wq^Eprr!kXhA1MmrAgdlR41jk5zKhj4QM>fqXZAx#xiMaj39 z^pu4tW+I;$B=;8_!=fm9PlYnAg#)$z(IK$xCH(FfaLXhV&MtYcgE}uC_im*>LTLvt z6$<*|ubT3D4Zb6J-E8VkYbGr|jjLfQB^A6*Aa;Esv1yh;-C2#=XuZEY?h(K5n>}U9 zuJNMx0rb+6k6_m5MFKcK1Av5GvLL2@VMl!*7EF8+K5{%rIt}lZf&ZH6Jw#dmN$KYy zy}^42OBM;>)*T@)P{woWZ+ydq2hOpJ8$@WZdAr53}Eo z$$mY?dqi~jKj%)J|vH`2e~1nCXlyYYE&8-Dinmr#16_bW(2ub+TF zyT-lWia);>fBq=`{5Sn6dY9pFy%>|i!;l<`$ut~qfByy~n=#`#kc@hN(SER-3h$y$gjD`m-J!m!jlu7O)s5oD3 zY)n3Z$pe_2@I6RQ#^k-2d=QfpzK`!PxfhfBFj@XMB&#sF2a|VTa`+D*ITDlCVsbks zd;SoT{V=%^lb2&M{YQ|@!Q@6vUXID^A49SLlWQ?~F(!Y(D@cyVDNZpGv-O!j#Kk^?ch6_dL#Iqx@+T!hKpn7kE}DZhne zCMJ(!@;D|J{SK1LF}W9$`!L!6_mCWl$=fh_HzvhDK(ZW@KVtGfm^|~3keq?Z>oK_# zlOJL7b4=dnt=Czdvt9$ z-tg+t#jtq4p-0yu;)PV+a!l|>7LP7+!J7p6ygcmO)39{RGQ-d|^vrFl~PnKFmQ>@@LbhWIl}{Fx*E%oBeW zz#lMf3-QksZx8t6Erw(ltn{5X?(GAQF!uKoe-3~@8@&U?KMtmU=;P=7>G0znvtrE2 zu9%FXcRkN(%{fTu|75-#cotx^dH=5F5f%}pD*UFZk2=3Z}V6aE4!#vMimvrEQX2N^GW)i3Rv()lOQFHuB_4Ty_0%iG766=)C0 zvV!^`%rf~Y;WZm;!{uf4mESchq0|o8*jn0JEsK9_rwe$*9#<-B=dQm!xh~BML zm!5n?vwT%^b)ko3(sRnP!pQ^WMt@(Uvc0b{QtB_SF8DplTEq!oOK%4<%FY{ zS@3y)|E0Ke`({F`xg zu>)7Pwj0GS^GC7d>fsPqGtdv>jEPr_x9twRJs!(jYwyPB$Vjc;>}w3cjfYo`)?k17 zI7Cx!Mj4L@EObk9Wvg3Xao{SwZV6`d)vditJB(SW(jQaD_TZ&eL7`~jOr~u= zcaWfkw*A;m+y3mpm4&uRuEN^Z892_GYVUrh*Ezv*raI?VSq z93__}XjS-pPHV4tBHr3#7+>Dgv10wJ$g>1nocxIiWH-k~%Hu7$j^COOZ^~DV zR4e_J=J;+Zu(MPj9^Wkv^N@<%p>)IhH8w`cM)G?#=Ax!_dq_$M6?MoiFelsTAD{F# zqaKJDkf?JBzR*WRSnnUC6RdEku2fLr*n-fo-on{UJZ+~=wO&y!kKn<){wvghJvD{J zf0y9!DxTjf)OHT5v#cuq(K|0xHBhUU3-xldUastb(%b5_Av&+OwO+ddPREWmFq((Q z{I=sg>vFZD0S7+dY@q%M-oPQr!P-D0bYAxVPO})?U&^{O^;(XvIFn<57|MJqpB~39 z&9gl=Jht7M4WLx7z>M~C*cd>|CM%TQYPU`+9rPDQ3Z*9eZ0l&V3=1g1XS0lQy{fXv zl@#70-k)CQD=B6G@=7ilZxT+PNK` zKnn0PgoA;uMr%)Hk%ImSJP&PwwH3%oZYlI$1soWzh{m)qyjQW7S-B!d;h9jSHsXjg z7*#y>4A$6JFy)qrNkWIeVSW8N#v)g~7^fj=Vc0h&S`W?=!gvj%1j5MRg!~Nh7MM=Y z*o+PYYva2Z<ZDtN)gs0 z0SIKB!Kq{HVJCNtP929-L$dW2CIBY}g9FKYRB_!lrfcn69&E(rwkxdVV3lKPFM3~w z_O<5v&=|iN7YmAg$$!Ep+LugE?wfIGcMGZ6608zCz+ZyRX@kWw;qn%Zd2O_tkgz!2 zE0)Iwy^YQBl2FCLmqfYnp>}odBZL;^!Vbd1X@Mz!Ex z%!?R4v)~sQcn5p<-ht?rXxBhWRQUx@1=`Yx1R;vRFwGOaIfu2$$}cz){Q{wJbnglC z2XLmgtyT|BgF5>O!<8kB!H)Xa)+<;bL~%5uG?8Ax8b&#F8w0OkHC7xl{ZU@Q%(XaI zj`a)9!D>443uHyC2hYo>b!j{U)xgeugH0K6o!}enA@puNP>Qe}?GZBY4X~eMVK8Yp zMEM4itrM64oEQvz13tF6hR2|H65D}q!0lI9*TE*o)L!(qK>IrK4X~i_4PJsz&O|Jg|#CiRSYrI`mYE%3{EvL9k`FN&n-`kkCNW=c!$Vkc2mV81RN+yqq$BUaj4C{yQOnZ!4x(|Ldk&9f#B+k@u#eEV zZv&+Wt779hU=PQFWYR#0@*E^vpJM`WVleO=_^9H#9fR#jYzLkLw`*Z72WuTud(rz1 zw67!20SgMxVZZ6{M4kgZO)Ae}g}<)WX<#8~{Xtchr}tp)f(`o*%dtOn{~`DZLyr|$ zZsI(MV@z_I2eDtoP&yiZk%0#htUvhu6CGp--R$c^M&#Kr` zYrP`wK#RK}m!W-e*28Br#<+dS$Uithh~NxHX(IiD%Nga=Z4CT_OR(Y&{DaU%uiA^Qy6S(!s$cH#g2z`F>QwRh>paOG`@sjOTQ?-%{GR=Cv=V2 zjxz)0##@^Bqhz_w6g|L(z=1gk&RYzXM(w+e+5RE<%1ClCz#iG%2~Jo+4BY>PK8i5V zHcl80lvsZwiLEFnOtSS8raDdx22L0^PTWK|NHcK4I7Ebv1pr@6?M0zMoooO>RTECw z27DqXjGiWy6Lt(9H|*F23qHi@@8a_p66oAwjt&?<7#ViI`mqmm_bcMiWEsm$oby#O z$!X5lQzM4XW$=p(oUetvPol#zLO#mzx(X;KI9^W`Ch2*sMOKd28h`5tZUcpH-r)ZE z;aU@R&X?gUQ^T~>gJ*QN)vA?RZ=txZJ~q;O*2Pfhg{(>30%hcg z9Vvu&HKR0F zix<{)u;DSa7rhTb`#K8dU_s$WdW*Np>k}E6GwJv;~aPM0yuTFv{HaI(Sfl zcTvEK(|Z?B!)lzpixV?y-Nbqq$7jTKf_Je@=-shEDZ<*=co*2uu|S$M9HOEWlC49T z0Gt>MybC_IxQ55ze-hh)cfl=PSl7Xd$JAc*&VcrHTYNQG zZe#U*Tz?&cRunq^73=#u8JpZ9Ibd#-U$IgM_om#NEa7}e|sIs-z?Df4K%IKxV*WgNWC^%5=uMCx{ zz0VSV3u_AUso1l!XNezfH$Oi)*C)zhOnc9OYTsF)924iH>}ir~-Ie`?{!-5Vjs7cq zh3Wh<@1XnCH%kCq!d@|dt(VDtiaV{2$;NMIeS37WZ2+&BpxOx#35SS&ovb`<;EC;SE zZp)Wk89m8*y3M|qsQnw4IIw*STxkGbBVb?Y(mj~L`-5xL=wdy}RF`!el4Re;Y1>C* z1T5ONND4@|69raNTB)krY!>I^pIvtb;(W@F|Whi=D?N3Rkn_@dfb64ds&4q*j=Ezx&C+|FNSBavGE%RUejN=D+HSE0TN8=Al7tk|Lvmt$iY9Q%lB;IHA@q z;VbOHR3afx=!L$q*gk*}OyfBbF^$(aiJ!)cThL~Si$&wFusQ1mS9 z;nlaa5|;%=>a~$_y$O5CTGJ~7EAyP9YZ|FoQ?{n)g+J$YeDFCh#iIQez2>N&^7+mh z?ADmsw`c3zoSslw9OhbBY~(doqdRk&gO7ThWb)d*aezQal;t$OeWmTCU_QI{o*~vH zX8YSsztdcE79no$Vq`%z$bf?5AU9Vi2!u)pkA{JszDlGCPAw4Cpon4kwN?nj|8#7Y zKcsRp{G5m|{2C{*!$f{ZJg^4Qm!ZR_#9xTbps%W5i%(?w>1k4#{^Rl5?Y@CZf3r>a zmac~HEQsq@nI}RV;JY0@x#B>nS<)h}VVpQIzzJ%N0C#(+n6Lesqs8l(YV+j?YqWSn zLS-4C1@am@3~bTj)h4f9ix$4VXi?+PK7!U&Me2@%16Pf=OST&``G7y$kX zU?NWd*HoAQ{FgwF0eDcroXh!n#fZ6_rfLGxUjEgeI{+a18?c0wt{5?E)&9j z2}s{Vy%IBA+jzM#NFOm!y`xc5Y6uvtFM{0ck^Z1~GbuNAR)MaL_z@OQA^#!ql|^{~ zT6={DuqO(jlS#e#)wL7PD>p~$@NJXQu((%5oNn!he{L=NU!FopOT1IWy&7gEMp;8T zvigx~6yBdV`E0r9*gBI37`V94wiLZ}F&BRny|Z{uYu>q~dI_fA<$8l#Z#{!`%Z-eU z)ZG$nWqm1DOj}t4oklx;5obBL#Uym}wlxPo$6Q#xyr5cA^eX(ft#4EfPD83XflVbLdtQ%n!ycm#tyT63no!^0Xb~wM5v)_{u7ROV+V_VmmI#fu`f6Mgpvk9_uXn3HP4`9V<^ztOyQ-+GU*3qsOy-$QbkU4kh zQmS?7QZ5_0r;SPG+u2Iy zF<%Udg89WQmcwK?ZEn0_Ni{hBjw+C5aHw00Iy-zI_W7}0;L^0-KJ#mx=m1jKkpQ0C#Lsqh7G*fV;wBHJuvU z@}hSX$hOrsPKBjJoN7HjQJjjNCRLnjY1>`sFL>`Z?K z#r4s8?WmeiS)Apy*lB>g#_DmTS7uDngPjIjOkP{Jc4^>?Zs_tS`o<;$e!-SlDWRV* z?6}TsaJxWMn!sX&e7$Rth1ht-rI4F_ydpfvXi?(TKuQl$@H@3$1Gy5!g3qaGybFi$ za%_x0a$u%&44;1mbGH;b$v6>V)iq9HM?>cu3hu#X(E7t$@QLg?JxwaR-s@i)pY-7Z zZrfMoY1^Z2+5bn__xqWarnK)5CRCPzeMeqnHQLs`f6U~yb!V5_ccr`uTLXea9&9x! zc+G76qh{mtwDl3P_P&EG#M=4~LvHrAK5EdBz5gwc)9rmAHnoZDcTmEx`C1!<&A$&D zmAB33M1;-PIEfu0o!k6r^OVh>j!$Is>1k5g{N>GBCtJwGek*Y2pPI1JEUU^B5rWOd zKHn;wWggd^tr%jX-G9pl`ytqezEW}%A7ho%ICck^y%oPi_%lWGHNXn zmT_OE6*+msoQSZD8Yk^6W7`eyr$^pG1J^JI*w373Jvi=~Z>93x_Y~^;Qrn%e7ev@454P9z0by+G~WthvE zRLU3jZZLb=M;BV5?C_S(P_|ea6g9G5y2cb+JNMOQ&&>0odb@bEVefD7?fs4vmBnoJ zh|n5u6h)%C#ek6KL2mXCvbPT*x^57P+yMl26wwEq0+M|rejc@}Lu;DAk}cR)-=WC~ zOE?jMB^oEGvE;qj2*Q&0;S*sAJ>`QXhDx+wF%Q-bJ_@%g1OgYb_%6PSRX9<*oN>&g zlL_(16+hvN;*-88=qU?P+=P7MqMUCb!lEd8?|?FJi$twaX;x~(z$g=rmQ&(4TnM*k z@KT|cH%3V54qr;s>?}%aR--mr?=O#gRK@#dPnoi7yy$%Z{;r?m-AjK)rQ0=%i_jm0 zR~x+#QF{9fcyS**O56J}dV3uS;p6oD2}(an>HU;`3R3UWm^=W<`l;T(i$9-%KO4Qz zQu;YcAHi4^h^CQu=vFZ}8p$`Gc?Uz5xI5zKF?}F!?ejU-94l z7e0Lzldoa&bxb~hKiug(49^<}58CK`10En)dM7sOE=(T59PgWyev8s?Q~DiBAEorW zls*Qj5a9Rd-`~f7KaR`+bQR* z`0{O-`~-hEXYlUb-cK?6XPDdz88>+E!|eBC@^g5(+j}QG?)H9x<)?b@qJO*rbMMCF zjr8v~L3)GtZhRixwh`>vFQN2C?^lq*ohnbjpIzhLZ^fVAi$8x9fBswic@T%qXCP^K ze+k~~Zg@9Cm!sNXo<}1ARo%PpP+v91phRpW8Vf7fh>WkbW>y+-70dVyQWLL*ifOR5 zZt5y8Mg`8qKqW!w_;DW!z1W#CabT9*VV0yH16W2DpEtp{B z%cFo9&ig!?E+Tw;i29@6Uq$~uDgI0WHv?2;n)owA{Fx>G%n^U)i9ZYA4=CV5{4>Sd z1O9l6A=w2d#m*ZC9;lxE#GeD;&qnV+@sES)AG);epN@h8z0o|oK!tY2WE8#Yc}{Eo z=6Y!W&I1(AD1({P&oi+c=K1{Jkd{$f_#x-xqm9;o#< z>iz!xV!cfvg1&9#a&H~JKqe3su);eP6V`)FT1%zcfYua>;{0a?KJqu*1n@35bcsSt zFZiyJ*3RCbhR7*vM587of~B(?OnG%c52*_*fBq7o!8I#ChGr}<@uaiR~*Tcpl@3N5M?He^%L!a)BDZ|uZgDDl? z_{8*J(HjJ2yb2`IN9c`CxD?CN9Y8GT{yqFh^Fb;5f25ZtKE=}5nEMC)j zlSV9>6u!9fcqdDtS|4#erCwi9EF2k{ql&2_VoPoCnn`iQUWzvHp(<1lYHfR_>KX^G zEY4I(uEJ-krh`T2LZdfKUM&aC(x0dj42NgqeD2NX+s5Dw!fb=0Pr?DmMIk6tl889F zr>xLb!{u)fZL-y~4>)jTp=XjS7d`uw183>=Ofa0Up3Mt9B&9s2 zip``#DqkprET5 zpYWeA8TX1RO9pv@J-V8=E?oK|vm2nhaeH)O%!Q&?2cA}HlpCuHtJUSxtGCp)dgcD+ z7BvowVj#|z1^Jy!&q+|M@IAk+z2b>@YmZ@ZBJWbHSP!Pn5^QnumnV>qu>?i$JBL8G zOdA;+#~ZhoCoSqo$v+c#6N0`N=-DoS)XUo-TsH1uyiq@pbkPlVN7wdOs<7+QJ3sO4YIw#=YhshAH+OX)VUE~ z_<>d!8DaguIGEcONELbu7c|NPg=VcVP~KL7!^h1*_`eMCLTIT`*jB3-N`d0~++8(qqNuo83C0l*uGa%V< z!O|?ZV8k{LO2pLO;nM6aC>2_zel0%HDm6X1FU?Zmo&qWqXQlI!zKkG(8D_ZX?GF-c z&6ldQ98}3zp;eg$%uHOQCF;Ij3wh1+d&qf_ma6#YBCY!(EeY`d^djvWZ~)x_iN8pT zZ?r{P%=2hWpu%^&NQ;G)YZVz+j$fp`Ir{}J;|n@+*wPADCyN?7oDm zk6j8yGXmTUBrS!)CTi|8`irFITIk~E4wjmQN~5qreCg>_x%7GHPGK zr|ecm|I4hnRn1;$ zD_iTO`dDG8G*B*V9V=|XLOaW)YICq~@?f($(pbG>#m=2Odr?)z``-TA(27$>n?rqK z)6E)SXmkkXA0^xmbTnoRl?N)LLujW)_k*N~^=3V~s`}1cZHo55H@FHTLsp)ecw*bjgIW31NqG5ho(yUi$31V z4rY^~)~pF9@CpF<~;LMw5~7ktvKkSB_Ttuc(gs#+`hYe~Qmqd~6`> zvoKSiE@~jmiXI5zVb)r-6P(lKmBw=E=NLBf|FQQaaB>{g`SNYAZ(BYjAGB9C9*I39 z`M?OR&03OevAU3CEXSDj?Ck8$v}b3AIV7!(0ysdlFo21d5CR4#Kmy^$=8Q=QfrJ3z z3LznZ5KIUVuJ9)i_=S-F_g+b>v1I*SSrAISnY zMDM{_Nj23~TZt!u-#S;Ejm1tkd+Ij~!VacOSOpgd#fN z%ClX8fs8b~HET${YL<(QSx1yHKdf0JfLIo8R%`h}zFa5uj|w+yuuHQdSemZXpoq;B zbIuGvkCBoI9WGx-A=K}v%a|tCtU&^VsbV9G$;EksrYgK`$l7UYn}sZ1S1(i!0D5;Y zm#>nd3?;FauQyAL`hd^?>y?>2-c=~(_Y=;uf-}_dl67m>UV&DWn_QlgY_3_u&BClm z(;?JNJc9?CRhrQ7#K2m51{87TAlyZxob_C4lU6%gntIn${o|!HNpFt13&Y02X@l6P zEe{$j^R=5IUK>Z7EqS=&N7lI}i zNAbSdo>-*0C_-*bnp_YfU*^lF7lIg1Pfw!F*2f~<1tGJ6Nw#wXW(@PCvkO78iz4PI zvpKP7up)GRGpTT1;4Emq_@xU$hhv7!mqzv0t4kzQ*-sTSoVmhcu6w!}$g*!a7Sv}J z5yoXL>c*c|tx_JoM{A~1gPu-H?qso^;{_0Frn}1L%LP*U>AN!6)bB2qN@7z`tu)9B z4&%?PTu1X(p*UT@5-E~Xv!R6^&L4!$r(sPui<4X1idW5dMszLCa@;y%tuHiqkd-6W`hrs%*L$}V zax?F-zPuK?&Yklu*X;6V)Uyz?i|jS?^ec}%fi$)xQR0=-40@*E_BS#w#Nlg6->nqc z#{y$c!oq{I*@e5uL{5xf@gBe2UwY}+IyhOFDL+Td_iE|o9am06gWE;9+#+gBL`{;8i1 z?tU!+M+aF%mJ1d)DIP%JKe{Df!_F4}5y++9$XDw`Yn_tKI_+TT_Gqb^%{jOiSlp(V zo@9QbXUK4ug?2Cn#}d|h36D{RfI7n5sFqT(-XH@&y;-eR$UP=Y)~#lFlH5HgBcL^P zs}2|%_Ty^V=UMP*X|yru$DPr0GuZhdgWmasa?u`efVFOewY3aE;uAsg)-FJrveO>y za%4%P92}Q`cVYAD?cfIb|PuA}Yq{a_g^3G6)8L zQf*NNZ)9)WIC zR*+1z<7V`uJ`txMD&EQdCE7Sw*xx#SB3m!a+rPrsLyn{M`}pF~!^WNv)c1gu>%mMX7kz1=+#MTcAYO;j6%F3X~ol*D6+T|>3;Bq+zBx>$c zun-C^k3=m;3mtJ<=R!BcLU+{$Ym>mC0X!ggD7zRpMw~|MIVx~tCa=VO*bv0G`sJk? z%|;30ANecR1o7&CW$&%N&YNg833A(D-Q_^1grp74WNUZl8}(rYUGm%@&|ij>VgqW& zo=s{kscZ2#4l5D%H-94Q2ab`MgxT#crz)vBU^gaXb)k!*S^2r4u zWHVd!=Mk-nqZBx{*U+~L7+mOWsZ=Py8j%ZJ<29MC3?Fs3`yOc7awf!}V3I+}J-#U- zv}K-IL76^3M=cC7eahCeuC_g0W;EnEimANXNkYfZwPIp61so&e-J(8c&6@4VO9Sf& z*<>86N}x;=)}UcA_RO)_K+nbYR^T4kqaydJY!0gc=2|PlDT6tYfv__;Sy2N!dAFqB zC8iGBk`Baar^{13l9^6BXv)|RQ<5>sY-&6CJs~69wk_$9)Zi|vzsDQQ4T8JA%{_@T z;YgKOZZJ*m^r*x^7V$w=Bd!`0NbtdI*_j`hVFx8#Z%{5mzS&}k6$-52;(53i0pNr3 z9)kSF^NIC&T01*eEuO%t#nn(PD&?u-G|3`NJvD1|*H&vRKkHHD+m<%i;es>6*&+VW z*-Cj>?yp!=9!3I`hw)97>a5ryqi5q|TW)6$FMZy#Wz+60do9-FNzapu{3JH*6P0WY z$Se3|onez?5^6gPyqLep9Ol_=_xx=JnXm9u!&MX#kU40deuI!YlkOn1cc1?K(QUg% zH;s;O+PUMVtv6dE*1dfe{;jfhVMb>A1fkC)h40SK!lO~kZ{RZha$Nd1SpB!}ymj}u ztjhU$AfhH1&*5G7Rwf44Tc7;ZscsLRV}mAEpqqfH)s`ZT&X58vnz(Cp*OuL=kP=+< zA;G5(Ui|gyx?n)T6<2}(x;Bz^zVRCk=0&ge(z=vq?5hWJ&crrI3^6QL}Pd&Fp~#%>}+o&)8}!KQuigOKhKYD3WnLtj3Y=&UPKEYyKc2 zy?}}3X`L1{0h-08Z6I{oJ`x&a4A!&!G);SEm->)7dj6Sx-$lsb!6q*&i1uO%UuA7- z)*CR0Roz3`dEQiC-4%gWh5q{N%tWO`6ZD>4xA%(~nQu6UXW`a5?dLii;Z%B}Ior<_ zAL`>jNL~P=C~}ErOT~NgnR>o7g(wKFe5AjBwP+kwyb7=ZxcVrk6Ab3#QfV76!d}i{ zgE(7*qU!Q+fz4X$u3Kx(6w5HC*ZD0}0aZOzFXah54PX6;)sIr!`&BanYo({OR*072 zVXjRP=MIM;ce?L$2oY4+x!13X6M=$?GU4tNt)y;<1HEMfglaR+zhy+*1}vv?&=Ga6 zb{ixJ(43elHsllhoSRlu#E~p9%M!D=(h|Tdy7pi%toHB>p*?u#yAbW+8h5{k{hwHZ zWfC24%%RX8unN071?K^=WOcKnqs6mx?O`MD=&qH>27;nel9qIn-4oDoTp%<4Xw;ATY9CSz=4R` zIijzA6uLXozkSx#&ictpJPCX72+;3qk(60fJ0kw5C5cu$bH+SU+N2BS0}Csdwh&Bn zI0O7SPhqwGTH!Jk+|5oMF{qAJ277jo#DcfIGP{vAen<*?R5eKvbwNVdL?a}{DPu=L8N>JbCuUHe* z=YS+$3-KQV45X4wiHs4sS~CYdj{$rz3zOZLuyg=^z)B-=`fiSeS?fThS;FrW`3A5( zEXGI*f#GHfRuL`B(X<4sgx9tVTQRa=k(KhX9PzzN--i!Q0tMtmwS|kltzMyNO27;x3(i@$K0{rLsBO z$ZD+A*QXT}d0enEI#p)YuU(IYY#siORZ;Y~zP z6T}wJDF?9<&G7$>mx>?NrfEc27)jrDwoh_D$*(&!&}UAIOH`zxOF~6mH~0p4e*sN? z2ZY3#5)+^sT*11*lLsAEV#UB=#=(kQCw+QAhV=j}u+DS5JUGu;8Rx;(-6-+2z;(Xn zU&w3zbsMbRut$*cz6Ux9rCl`Fgz#dx%>2FxG23-=1 ztg`XZGK$qam#xv+H^OI&r5IsxwAPa=7wI+jP{4x-cQC!gPyz^qF_oPumWtV$C_+SI z>@$MqX*pNeXG1-x-HqG8b08KkM+vN4`g(oDry&tc=vt0=;?Q2XHS(f)K}b1s{XUys zW~N(6XZ=0{6+7$q3y%nT8;nZL3+uOci=Ggk&=PY=9}^-z^E<0|BWxEUz0vyIZxbgYv-CZqY%pm z(vVyU<+}lO*xG?O+Xm%TU}B+!|xgbVH{@l==+ zevZEtro5izH1e_MzlNJ>3hGS}3>%-hY^7*#V*V70_DFYxF(i!Y?XiTtN^rmp+=B!} zP;rYU6ZugZ-VImlLJsl*PXMCFK|K{L4Dc~~{PW?(3|dV_&?-T{f*k9w4v`j*V|^bT zbJ+vkpR1JN5<`KwV{=a-MG04-wba`qN`rPNcakO`tNN4cB2|F6D(ecAT;!;0wKJ2w++_F?Ua2 zgV-E*YbWDrR&_uFbC-5sgd*s_|-gh%B>c$9cK(6uw1V^&NqPP*Aanp_4k zxwt>b$;ENXV{#c3lM8;qB#$pNxeU_eGKk}w^_W;o?#cWi4xPIJ@F<{Z4}JR!Lg%-M$o1QKZ9IDq6ml5J^h2LOU5XrM?0o+X4# zj!sZPIuY`inK$V)Z#t`stpQ*HIvr?yo!q0~J6@G>PW&FZW;KDWFTchLd}_VuUJzDjViq zv)O93c$W;J<0Eu@gQAktIq9h|Fr1iyT=*(?j!X|oXj>jogkB-YDqC_rw9?3PK}cIn z!@`9T#IsMsalxx!Fi&ZtX8~Ysoh18V%FGGeIkQ?TqS^#waw-}khJe}&!t*xa**&JG z!DUf|@=lBifi>R^;WCfH+d5m%_UIai>(NaF}bN3>J_-e)}H8E|q^_dtRQjsOziOOpbXDigrk zL(v#iLY_QC96%-Ol2)(^jZZbpIdVHR>Y3F;)mpLK7-v|VR-{ot_&8zd{Dr6)0WZn& zYqTnix76`Ore6#fF(jh78nabIcva~Yo`9{T(f@TDeSHloq_GBdp7G+xAv2P96?)BH z0fg3Ni;fa>g%NXyxir4QXH92EoYO=vabiRFY8hqQK?zH{Pu&#O8_LeA3$LVS) zhX!a+g3HpY)?kX??LAYR8%8-VQ=IEkM=e_>PXw0GS>jC#$r9&ih5>rPmlx`Pi|)F(PeyYTGwQ?1!xj7NIU7%Rf)=Z&0w)|xfD zT+0zt7L=Bg(kPDMw?9b!-$cKPh>6R<9j?#V)0rP&SWl`%x2NkVGLzIm+W7s zVpoG>VrM|l-24Ocx@qi~yG&BxyTPr;o)ccVx6gEV)YV=)x@ji=sVsS$+mf~sXzqiJ3MDZ| zP68lgG!K9mDx;pDnLNPy-HrPKwtH_AqdMO@Q5Xg$=C_@-_W-c>`(EnPxJLNxE{9OhWmy4?Z3qr`?GZU z99=$7moK=#eUU!>9bLXem%pdW!}Q<*`^)&eqp)&^{SWw1uH|`#W^|yL5R3HxAqHq1*4J%YWd{W4u{p|4x$ z@;tgcmo9Ii%bV%)GrIhQE+3#uAEC>e=<)}2`59e)LYEB9Mpxj{w11&BZ;qRGn42}n zO`7B8%yCoZxEY7J33L4VIezsVzjlsaImfR%%&(f`*UUBT2f)0gKpe1hL6m>_gvf-vBU3Bt$aFhTe@1SSY)IA(%;o~XhE;ry*k5YB(a1mT1`Ob`yQ zXM%9t9TViWEDV;Yglkz8}fAXrGZq>%R@-*sWdQsTC z|K|m6g!syTtPs)EGn?tM`|(8Kd8}0Cq$_9F z)fg(Vx{4)?tFmcbZ`!{UV)!fZXW7Xtu*Zr&$BREFia#fdKYilQY50Tb;B@)}F~lGH zELUw_g3?s(tYaJ^w+^!N}7fNKb}*k|^yT@>fA@Fgw0l{4r1kEcj}$k8uWjGe*)J zVmb6YE+&Ve^h7^?s8PbiLRlf&v>U#HLvoF zw{mZ>fnX2Ld&RSAqXIw#`-7y`E(HBSbS|E!RL2nTMD_bjAD=PuS)84ub16vi$=m0%MqpovKRfId;>$(+ z#Z|UY_PxhJpV*IuQ8QGyGhrqMi0$nf`*NjrYkkX9LyAR93xJ@Z!1pJ zvNcbhrDRnY%H&UISh#;ba0aLw$hiXB{ina;*2M6wFqGGaVerY<8q>9V^7Z1~!<(f+ ztvmN2n*RSv*v(JZ-XES*u1SapZ;0E^XtSf8ynDg%Tj$lVQ~ zy2x>f4>vU%IHN?Qbh>Hh?k)S)tZ^3%&tbCm@#li%a!10mn!Rw%GVNz4QcKbsd}WwE z78S=+EA=)06&OML7-}1jy$Ew4ojQmQHAe;Y*G%sMIr!YM1tZuW*0hP4NeFrow6pWP6z{-yV9uNfFsY5 z(;Zb`30TQg1!@sI7nk*I97YS>R*D%wq!0xUmVo2U5+ebsh10p=Q<};GGb+vq0M}CU z+4}_02^=S~-DZ=_W{79#cyUL`Gd9H8DVygFblwIosO`;F1p+R0Vnb#XU!^QbY$O-cxN8& zoC6LOgg8w!rvZ>Th}8Jj|;EQOS zehV}2NIyfJikO1wxB4*O$3V;Ty2(5&SZ`>$IMqK4<{##Ixq7Ekly88N`C7kxA&NNn z;9a$*X9w2EI_$gsC`bM91d&{kJ26bx3RGP`kRC_)i(~~i+fmrYycM$ZQ+kv zZSE@}d4p0Uwdy@D9$c^8*J4`$2vH)Na&bs%YU48WWnqZi0Xv)K(iu zDp>|uxJU#qBkI!o>7Uj~{;KsZh*sBLe_Mre4zk!dtDJXrQ|lfzmS27uNPDe%E4}Kr z{FRt)C`wC$e5N4L?lC7~Lc-)m$Mn_>RY$(gjcK5lI4q9I0&@-8N0Tc4^86)^!ZhZt zA(sH$Yi)S7j~Xp{HPV<4a(8PZy^UtXAiZvD-MX<^EH$jHWqtTOt>>>=vxA3FRD_9y z-zN1J{{U^J%yxX12(N&c3+fp5Tmf@(<3Ju>bxL~~J_6f-dxVpF2r}*H9e`%IEyA4RZN?Pq!9$iShWf}ZtOycw)9M4f zh&Iw&H1$7dh-uQ%rsV<1rK1b!#htlI3R%}2p*M?~a5JpRpneU?Q4m*rX(iVW23yMUfWnx8m3h{qHM%K=m~1rG-#xLK>q4NRj+$_#Fj>{1qb z)--u(pqH{@2+gHt5pc)RH=*ML~H$){VUJkeKq7*bs4?0}|uru_fY}gOOJ3K9fh6;`~Dq z%eNmXuCWjT092p}C*;*pdV`ewh1gPHVy4_6+T@&QXQAyFJi7_)4l%}Fft`0Ia3-ZT z=MTu^r?u!tfYNy6h~PLS4xNYfm!WHur+%#zti=uQrE`1!;@F|PnTDISWsbt3G;FmlefjxRK3 zO7kvswsqz>{V+TO1jG>E@*#MS1=LA^ClxH}#1L3i=V|=T^cXV@yI9M2*T4-9r3)QX zxWOm+E7q`JeF3<>KOLPSGbc=%!tCtkyKp^~GS2js9`$23V@Hlqd-}O-O*rF<_9+CEx;%7+ALfUS3$(VepoiTvHN4 zOBo&Bo^FSgL_FPJu_h5`qQl-u_upT$W=ol|X8}UN-UFC?f#Q%DE%N%wj;~oWWZhbw zCg;E8d@AnClenR;Z)k{7ACyu*clQQ5q_$q@V{?3fncf;4Y>HYP%KC!VrN5bwu~wWgAB)sD~Z7So-4%q z4$)L^a+ymyVlUCdHf4qQinra1x5Zn})go>GawSC@aSRxzbD zu!PPQZ&*mSxG1<^UIuBM&qrpg8w1$P%O%}AI(=kGMUN9%1b&`XQsspY*rPodi;nw|>EwCJp@Zw(lp-nGw)>IcqirN(1Ig zS}=b%4~KBHY(gf;g6&U~(C{eo8Hb}N%jc*iPVZ6bJfm7BnzQg3jqch;6CNuxMT82W zS-|B(-7i#1lN1rs_Hfn7{1j?%PdNZ!3e1cwKp8qSP=iMRBEzQ$PSI<|-C`RIv_dvp zEsZ0GC{hcIh~n57j00rf5Wi;nsm1*Y-$px9=d@Pm5h5?Nvtng@f40=jTf@Vas@Hg3 z_(`VXJp*pt16Dr>=6SI=6*1^kz*W|+B0?mHtTfKjRYzRzq)KOQXG$Yog4i25W8dd| z027Gw+|VWoAP*yp)~!g5 z=v=p2$+{J?9qdIwBS9~rPgNQm`(Y|mQ3VZE;>YQ#5=wjep}%5Hd%D4|J?-0oEasel z)iq!^GzM4|ztz+VPb;{HuY|P@<~5*`wOB_i_@3ZAW&CRp;kYs&2^q>dWbLQ`$BiRP z$yA30#NiO3!2vyq0|RpuzsNU{_Qf^s0W>QQ6O@LN(Gqr9St~<5AV{stI&4eam8I~` zy)wu&n*;tHcwS1ku7UJ7s6$h;T-y+(H_tcf!|Iq$&kY<*y4p=XBXaidJMriuCTqaG zA*X4}_&+~ex~jA9{MD=7^H)6-j~WV75HE0oB0M#itvYFWxP>K-LhqbP8v0goj%es@ zX`y-9MQ}a5j3Tm$To6_7$)7933E+0$b5`eaaaN}w!=U78-=rJbGS4|j>Nv~`Kswp% z=U+k|6I_r9N^d<|zK(^67&BiKCwP~UsKkO1R;^Ld409?B*hFnWehKs7JrQ)~Y>`HJ zA~1JSa+bpBr8v<+?ytSOBco0fnnWO*QzuPBI1{38bla}cO{3$RcJ8=o>&;NG?-e@; zJ|UhCj7N^E+jri&dt88oNG!$(HAg5C8KG-NxIv$FsP|jG&USpiR;sSx9dL)>8XTS>LJ{$c;LVJ|MyvZ= zmK?FvHY_6^8WDetO`BVuf=l>ZM?~V_P&Dih1#d%-6CYMPcX1@FIEcfYaTwaaBuh)O zBzL1nrtRd&mL+{lH;kpVYyU{+Te?jltL4+NqHBqlTFBhJJ3o`3K|Udl9ixz05pRZb zWA#-8SxH#MUbBYE<%M??5pcEHMu7~F2RQu!!rPDu5bWKGjl@jMO`WFYn`l&uwPm$+(>_M?NeA05PgbdcE1rxUMaLj*Sc z{=I8AUL9<~eXTkZ=4kyGbYEMX0**H$x&dbTCJ$A{2-nlO>EpCfKsEMO&_HaMO#v}) z8BBB_f{79gxH4}v{1t2FjXb*MnIu{(q;rU@2;v9=gy2yU4Ub3YBG)4nP}1n!i~MbH z_p%8(7vy%G7VK^IHed&HinD`p?D)<$!})G*UL3;?&9WW4frQ%VZeXG}MNYMQq}ph{ zU#!7yReK}%LY-}eI^78w8=*dIXE?`_t|dE7md>Tlwj&nBX#e^+ppI-MO3(DSZ%H(k zL_>IY7sfYxWQ&Hrzjy%a*8=V@iXm&6ccK2tP5~??13sNoRjSCtfcWfhGS_Q1`f22B zZBB5G8-i0FK<}wkz)`5=iNC8lAc48hcw>Yv;q0uQD;rFl1u%8~P@G#K`SPJ+x2p-gGQS3X9_ih9NAbJ~2d&SPT!OKS{CyRtX zLyo20d2ysw-Q^>;7X=qFc8>p)(rh8eOKpq)!C$eqEq;lATfA=!j_R#b0ya}=mL_3x zgNL3>Z*;`C6F)OknJiAt8Ylqp_W%-7A&J>Ea?rw=M5)Ti@y-Z5`FM7MPVCuMoXY2B zbBN#B4)Z}}5)Wc;T~@$U_h$kYIQuVaR}CkA)*9qu<1|;K5KJL25(5FuBLT@#g(~5) z5;=V>LuALoJ<=0D})@?scrRir8 zBj{6Ff3HKOwS$iJhDJj9+}fG)*+DB!TKy`5R!J1h6x%73$P_E|DT>4>0gB?bGzZdM z#68O3&7CNNG@NaeL7&1GM6dvbuMxi0W0l5-N2s?{KEfVg@--tQS~Q zn66+gEj58;=Y^VKfn+|RwOQf~c=6xN`7N==L)!z=59_u#hnkX}BaikB^6SEm4Y(iT zAun^sk(IH0!uJ6X*C6 z4j#gT%EBf9y=6dn`Fwa|uRy{0q(xI{0rKTzl#o0dIqWI>H67qV*noVUvt4Jgiy*5V zg+v#M(*+=XH88Q8^tV35=eQ_r337^5uivR)$(SlcG6Ecchcp2BgSkAiBlAuTOx-Ls zXum=m0@lx<%@^|wGoYSY>(;Kl0yHW^i-!o{Jeab`j?CvB)bSIQ2ML;0+8eDKSWD&6 z4b77_WIY{e-f4bvcTWre#LzRs0XrE`hITm0k?hQNc!Ee)rh`!VNKdn~TFx2$qsD6O zS%^xpz@CO=th&W!M>t+i~4f6GDf z%@(K2BUBTZU>uvI{K0tJJHh zvEWyTlMOBjkftl)Ul(%JsBG}FI!?=yr@_!9GT21&gxOMlGJqT#OU3ISd)@qxKKKeZ z1Qa|6H!lu+rv%o#%<5_6m56N|#kb&esYeyK^PZFSq&#=ufS z7$8bX&JqgwN1|*>@(tafmd_!O4hPD#Z5v56A`vPLbQ8JsF_F-G;>xp=l0=;TL$nB} zbmMTdq)3nk!z`-c^+@D47wf!2Slelv3oDA^dxL%2NS`Ec-$rI;L3YeI?pkRTu5tj; zU`DKil^R7>W6xY{Jk=UrW8Es(8u=U42tG@iOImA&xh;qIYE)ZIyH+t*X|>Y2FkPb~ z$TnE3)~#MIPNUCK;wVCV*`j1zm*ud;gw3J6|Rzg9_uD^G903ROL5t;a>(6ZH&| z#@wuLu&&YXP2qSa*q`r#vuxea`uvP~iYSD=3WSOSX=O8rnlg_DtwgdzC7kId&Je?- zLz71~SF2#z1{UN19V_V2n5GKM?R9IJ&G(crk5LHJB*h{j5DNqq z=zLiPJPbfHnGA2N6EN#)ofbnykhexUb2Fjbe>tCrT;Nes3DRTh#Vse zFug=HO&cT8@IyEQO-?e#?qc7P&Q9v;lFq)QvoGoFg(aOmKqICZS=$0E>Fl24wo>0L zFX`+EGbFBalmyabtRUl;2Cz4GKfKUvmD6mHXvY%a#GRgnwhNL2t7s84-#F+X(=e z3cF$Yc%yutVu;_1_!_&4+U}gsw2r?8`Q?yOn!-KiUyP*EHy0bXG$-a;S9Ik2r$^3a z16pkoM4y>ymWz$q`PL=Q)01Ret4$6~PY>_EHd}wDy?4|80zI|rX81pM)$)Vl)M4PG zoa5ysW(qEl`Bv7cCw0XH@aW0>M7D;u>}d5(=BuU3ESXXHyAzrwkkt7}{_*UR1O0-V zfT3Uf^YQz$wK{(~OInL(jr-@izeBz8=6&JYC&?Hke97A{7Qa|5!hQig{zAI^HeFsq6-no99!0!?cdr#Z)j+Z4M3_VPcky7>el_5jch1`Zj#&FH zs`+IE*Nl{upy0=|8zl3Cl_?l$q|AHam7)l_Gi|JP-bh=nO;BOuUPBmJJ8KL&kUYbGxqyH6FnmQ z%nh*lZMbVX55E@Ne0RAkh$pne{#$yf2-LO@nbjNjzI?Lr0^=UTI!<=pWrC#s-ruQq z)XLajy?EKO)^YX5m>YulS8q*97pYFor)`5W2IuQ*qEQ=+XsNloj+{mHvOL9 zHs@U?x1DspujM`Ew&U@>)VS?zR2G}tTslN>+q=cE9uvE<5!@#0{NF|3w$sJjR)?oL zR|uck))6m+@S1+l%WL{Q=Cu>Wn@mo73e_HO73gYSyEgXVMa*lPP+43~bEpu(XYUbw zc2(@AM(~-eb2w?8ozH4sbtrNR@^MV{_T85+bK-NJ6+X$E%X)y?bq*#?Qb}0VVm;80 z2XxBlYKsSADv0Q4f6+P0UxlNeFJssA-en{-Lb#I*MH*cKlAmgeEk|< z|Ant#$5jyUU-|nt==)=Ic{eILY=09U(ba#$pY3N|Y5y^P++n|&-tk9t`4*M@ce?xu z-+2rD_*S}nn;ty5@P~8ucj)$a>GB9}9Jb#>x8F;b|GiKgNCsfB6Ht z`-gOSBY%Gru7~Y+(&xeyE%x6>=^geDaK*OgNBDDS-u|)p^Aqvsr{d3l^Pi0U2rcsO zq04g!Az!A;Ba~$FJ#_gVUA{w?BHfsx%Vl)AlrCSQ%NOYK3A%iYF4s_1>*;bKUCyJ+ zU39sVE^nvHTj^559AOt}qOgCVHD!*QF~?0n-|^--e)Sx`_AtM4j$e0}Up2?CIn1vB z#ZdDcS3TFX9{|%5<8$ZOJ4{}?O5D7-ceHLY?@D+_Adp^e*x{5e_t=@WlW!ykGWrreFpy6XW?=PtK05*dpSO$p7X_@3-M=%y+VAsh`+ci9vI_VvcT*INwkfJGW5i- zclmFyHu;giga0vrbEKecremN&< z*$rfFW5_0u5)M8nlL1pKTZMd)l2bi0LHoJHVW2oVd;t^2mFI$unJ+nDD?w@(D%xqkWyv3n5zT+#F47tCl}QUW&rjY z$Ta{0gNJ%C8)6L3dwV}P@|;57;M{(>F@Lr$!---*U{B|9n3yXn?u<|^PxrZ#W9Jt0 z)^W{Rao#@l1WedPybvom>8|`kUFvQ7=m*~Zn{5=P3&mxpfTMbE-RHGMTK9LfR`@AV zZ_W@-oo&n)`)>o!O?YE~ExE)K{Uw4XB5a()4T zM4eMo!dhY0oGSsaE~*Y_MV1bDbQ+-*UFB~DI+vZOHLHzrDu;IP`!5YFNQ+ahhBz%Q zbBVtUEiifVA;1wu7XRRC%J~E145H;SPx4oTHdT>yfl=U;&IM3;?SabzAMh0m?rScK zwa2XQ%E0>20A#BN8SCTCDkWkgpNR5He1+zLf2PaV=<;>Ce1k6Eq|3MH@@=|&moDF< z%Ma-CBf9*UETpABLt|Xt+!Y$&g0nw&@*5FKC&Q?8!8WiT73AXHt2$^|N#nQGl`L>nE z;PJd|wNJPJqI)bZb-8=wU*_s^)5o`L5|R3%?!8DrumZm)rM=e$luI#aVR0;{yaNj@ zWoS`DL_wC_41G#(ANC}F#jX1ma32;xpEi55r|rdYD@uQJl9cetDfwKJ5-Zmzen60( z0}X|8fqfjQ0G>Tj_thB#HR7jdI(w0gRI$DnF-H!3>ph%utdm@y0rdBtHCN5nJ$~F& zYZl}a>hTyl84v3ea7Jpo9N>zQa^v8mWasvkQ+8AM2W`*YtpiK7_PfCz&rX*;ls)AR zf5o=y=;>gO8(?G#v?j&a>zo9GLyhn#gaa8vg{_-{7-+SX!S)pHvnJBPNX&wBZU~-s zKF$v95f+=-)$^_EIw?04@V5Day`wRol_vTZ3q}ecN9&Q{Z30&@d=qJ^oR58Y7qYWg z%0pAmFT>A-0*f%}`tVgl>(;?=G%;M|BK#GRx5#D&>;>gka*a%Cm+zRMW|2;D1KFNH zEyRcdSCY7QEc0Y5en!anW$b5~cUmg~s3e5iVbYBKEYCAnbksoSd6E33!)FWuxX;h0 z?dHdfT|i^)A}+x|1vLjqjs6ZQ&-?A)^uO+C=7X_gzzEOr4Bfc_!)*>!U1YY2%lfUKZq<|kfn$uk5-G?IY^875SGf42q@kwC69dC++ zt-S#S1Sh@`)yLan`PllfTiF}BsLWmoe<~a<55o9u-{)2tASvdM_?(&t(FkWxnz1h> zFYOa>36arNxYfG6lUZioem#!)g}37hs`3FEmM7Auzot+0^~LjchH5)6fblb{=VjM! zrLHlaP2(&v7WYz3t~L#BdlIS(S{pMy&%oTEM z@n`9FvEX*`|Dj^^i0APWtjC`JfMvpm=)RI}leWG|>{XZr;gtI8F!4qyX3-f8YUos;?I>- zaX0*FGM@)ltJqqs^3144$JVFRF&)d=Iu;3zgRrZD;E#(hV-!g zAPp=pZLi0t9dfuC*vd>dga*gc8+?5Gq@-0SzNKMHg>MrG;E2om=H%^RBibW3c!5Md^#2J$Oe}|?7EjgZ6kCD&s-^^z3I~I`Z>#x5a=T>fpiXilZ zKKdcVqUcy`s0jVzlUd+BhHtZ8$5u7dPap%SiI7S`hOo*0)m&%b15^A&qtZZvu>Dy8 z5NHoesl7-?0j!}|A=Ttwev$jrIF~%szTWH%pGAx+DTg7YRpv~xZjJQoAj6_qw8drWzy<13vrksb?p0S^XuC`8|YL;`9 z<1Qp%q3{rwvyWK`(Yuet`B?YUariW6AJ5kl_!q_DJd%yb8FtBI1ioi=-fwVa@YSqb+hH4Dud9o_0Jaz1ZF+g!&sI zA+PLpP~>1Ds0JnW9dZ>*zQg3cLnh$k*>{++A0R=#pDr(@%VAs;2$gQm@eK_^%7s~k zsIbjqOU4SDY#fUV?<6_Gf^VhdV!V(PfRzgo%3>5NuIgkGC7@YcPKSOoHsmfmTDXLia zvYM<5(e-*+Z|lU%8pME((#{&YqqNiD2AnhA>e*X#eex^le7HUtWFk?Tr2R`$o(lV0 z?Yysw!qWTdqj2xMuisCXZPWz!U4O;4>L}Fa9(iAH4rHt(?$@VuVwoQbdR?IZHGm+k z_Z{*6*TC*2aKNq%s_01Zz@D`t_A1|v2lh1o>yBzp2z0?N4;paO=oDPUSk<23Csn&u zEn_El!Ul|teJM3z5uLEt#3w-@AJ3SoRyb)GP)^vvE-DLg!nPd}@4nwY5sh%R z_`P$&UPi;hPS{)N6Mc1@u;&M{evlVdV=ZA$Ifbfnw;Na^JNLrAy1n*{jJ@QAjnKev z$LVcAw{tewC|w?Y-8wwDq{Ek+GYCy1Tc}6Dmm0V!@<(hdjalaoV;H*L^(kHYWU5&A zz3wyKgaKb1-)qHaM%NuyzO52f%%(Bbb=vJOyzlje>2^{1UZ0PO(W6k`E8SNzZPL~^ zcg69&9^w}#a6Kv?77b6Ri8;!Up?t4J(f!`~Uf&i$!vq9S{P`BDxEucL()aq&lscBK z@0C}yVBhPbJlqLrt}p{1N?L{DTN<`h_%?w6D&MO)d3)HXTi@&VQsNAs?=`a3V<%%O z^Y~s{IpKKSq9M5)9m25Sx&GKd{fG34)f-IzYM50 zRenQLQxv?Xsgt3#XY9|StDX1_shsc|p0yI6*l)<6lKTzWhRzTUHinqGsEQ`ZnHFqLzW=lvFGdXL~<8-V$ev;_%1IPq`cUbkii`6PH>eMaY%(zG$Tt8tBqF%@1Y7n^iev%wGeGOypg?!z5}7Ec zLLiw8!Mfeg|LqLIQTteBn%PGc>uyd{(lF0>-JEyDcXKj32YNXLn{cuZk*1;!gP}3; z^!|0aLOcy}ge$};IX)H5rQ@?L%`ef=9ge&?Nl&~4Yg1P5?SX~utxToi>#Zm7VBh+v zsk2_3DVDM|nwNqmW$Tv80VD^j4Oq=GPecKQ0;a}n=|FZC$NS}-$qt#i#Ek5a+nwG} zd)X?AnOOm8^{H1)&F;)idA!7YTgn2uSfJ!iqm*ezn~B9V3sB<#&ey|ny)xSeP6ico zx15HZgikW37|k6bBaALKOEgSILu1nY?cPtiX9)+0Pb7MWeE7X|JEf2huku%HtC?;& zR+1jYod-yGCJFGNv$*qsw*}%J0?2U`#2W|oE&=ReML<1A3hLoeKcBW!rMf{qe9-^8 zqnQr^K@aB!47aJp1(q--+fV!H)P7i!LmmQ##r_mEVG$t@--u6wIFN_0q59My4`1n` zvJl8a+ad9qEbaHA5xs{z{4EU&LmrN~2%qSy19>*#~yjW>b#Vdw+9 zx9;7GjCOS0W98nxkSb<3gX%k(3_FG&bm`t*n^MQpb?>tD2D^6$(BODeqx3H-_wMSX zRVeo^4O^%OE6SXsU8s`SUdJr^gD`I_7#)g~oSdy*!Yv zC^N_p^2%|}cxntBvkd&a&V9qz<~PvwLM|K;?FJ^1`7xd)%USudkB zNxZE$m)0J6@J*YLAe3QG@v6fj@>gi2jt8HoCEw|Rq0YQW|2-4IRM0d7Ph$T)_i4$0 zpWJ`X1blq^@83Xz{5rb4nlAIWDE~d(oZ}ms|DFr82vK1nwzOTeX_vXU{(F)m%=a%z z$$x)Qgm1`PK_W{UYs)8zW-RI-qfhDi@jv0Oxb@>)D4dMgt6n_y_;E zwX@DeZCI4D@nx!5_dlB)0y**epPwDW|Lh&-Kp(VAeQ4=-AOn~@&5)7py?&Xlb$$z^ z2-iAO@;xhhOW(7P-o0}@{XAVJQm&_;`YX0oN6!Eg^~Uw|bZP$cu~`!L)5bV)x864f zx}XBc()!@h5_;?FVFEYQC1K;kplnCd7cT|!#TUn3X1j4kUFd(^(asNn?x+hwhTR!( z5wsLq%2@cGJzGU5oaPQecDyLO({Pznq*8V z(*}XN-drhNdO20BJGv%~H(@9j$*$=2uSnoC-Ra&*zKg&KOJ_KnKX)lAw7<>)e{!^1}1I=cQ8?NhU8*DS9b zU6HL0jAOh{Il9Q-M9zQL+2uO7V5#tWwtTBcP$*-dLn|YlSnC|;l{qIL2@TRW-hYF! z3g37qa`!}!Qnyi%<`OM9S6jzJMJr>!9$oFkheG9q59MF!6Z=s3Q*s{)TN2ra!uwKl z*6xuH#WZdRLK%huukO|&8>tfo=?K7})JA-Mlt_bWq%Vbu;VN0)h9&l;aNm}EDam~) zOu)ytFXhK1&_AThcj@x)xF}x=-JIhanlFV5vnWwvo5h#*I5usK7T1?Tas+*^k&-Xv z4DzKYYreT`d2bp@{mM%~4;JX<^eH`$$p!w3TeA!3F;UcL<0N@WV6-CuDs{CBtdy~5 zt03fUARtD@jensu_k8|Mq}xR`%u)vqb7EAS|Et^ZkEDhfJhR$AwC!w5QOdE}2xh2a z-KkgV)sq@`LwFJ`QcH~-8x-yZ)Kt|m4D@y41X3KrexCtrW_CQ+L^U&X zMz%PjdSq{{nMZyOGxw@P0(gY_ui4&j-VN>zimtoHQ_%l9lnQ8s!LLhWvAAQQ?+l&{ zK?>g)q~wxQ(kfkYK56wr!_Hf?W)t(VrH-3gv&QA3KLb!nJHyQ0O4ETpBcAPh+Ju&k zr8_Zwgn(15`QMC+lbauS%b=(wW9QmZ>tjxOzig>q;T(T7y{O5-iIK+?gXJGtwkrKT2<*^f&wovHm)rtFCeJ-PU7ibC49^iv*p^|&_IgK*l0)XRb+R~9 z5(PkpDIGgf9$@I*7~dSuifz=IIe>cs7^c`>94G4vCBq3)t=Z5eO1&rF@(}WQbcxpe z4n@Y-VY%Bry9X*lBR@Tx;nk5uVx(Uc=^x;qCz_KmC5?zb@~2wm?tE=zg8zu00@luv zn;->w_cj8j^EGXGzh-Tp2kCs|HBVo0?!h=N;EHp8hhzFmcfi)SAJg?+k0~i-?vN7r zUK>%iEqVv_2yCA|sxMjCQME!w)vHHbfSJmMBEeX-31HB0eg%Qk%tlraJQe(xus zH6h*dOhEhc*vwS0g~5CbX1#-%$>M3^PIeuNd$e@RQbPS#Gu4no3o&JpK6-n$P^oN2 zjL40OOoBt{u2UYg8|Tey@U47#Qr$qg20}lIrTmEcsBQ;Mb)vaOnLy#7CegouNp*D} zHf49oe%~e37v7=s>3FnRFIO6HtK!@$;f$>~TP}xKNT!UV-?KR!P;2nX64?dO7l7>g z)bf^vomvJ$WY9actiTqfkS$M>mb6_Qe0&Q|4Xj6OQ$9>Hh`voZFR%tvZG1G{X-92U zK8T7_+p28rkZSiJ@F^Ck1j67o>C=_!A)%zWTpJ2WQ`Y)hH`m~U-@J=w7ZO%_+o23RVSvyAeY#x0E zhiCFennlE1omw4~H`wk6y=S{E9d`AiU6p#hh@b*G0UkPp2>Z;Hnv;2t*hZE#y7xc5 z@7~QJ-SbG*zU$$n%pnAv6V1w(5c1DQSin}dD5-H`LgBK-CLLhw~UFuTQ_mv@#j|V>5kh4 zQJ%hwi)|C6*(v_)*~&le5#RO-V&cy;={+~fUq|I%k-E{OzIf-2&y@7vzJ=epb<3_% zs$t*gcK*Ik4%5CH$Hw^g8+YC;|85t5ci$@h-nv=-_n$8785$O=jNUK z+@4!RyZ7vs-)|G|**hxg+dI0I%k3Q#_3V}XxJ}l7+l~BO6MKawv22}6^AaKcUUQ`x zv$7;lOY%hWxg<}?W_hEd`pwZ$mz7NwU`s#%7ou($(pvXOKDicHS6so|* zphCUsJaTW_)^f2?%$ADx2wSt`?$u)NyhlTjNmw;dn=?Izw{)vEr0}Cghr0&dD%0?F zRIwgO_YvbwAg$LNxrNcM^0W<@Bw?v5A)5zbU7bwwWQ7+w;K>|pVn^@<&h+q5E~PpR zl6}_bNKZ(1oZvQX%#B?kcKTZLMm!`R>6l~P1*_-d}vCChmE=oKJ0&jz7TXR^urx?iNYD9$NdaUdfx1+@9J*cS6O>xURFmFVGlH) zB~^B^c8wRwy&_@~=**W{Ydx@;fTv7~EUlI&pn(`={T_o&a+PMef!{r2f7G>JAOGtY zdi?2Z5AXQDXHmv~-C8&FBxL^RU$++V9NNtg4mb+iuk*mRh30{k0X(osQnc1$|Gz%S zDu{`ufVH=D!U0EJ>-F*fjfEb6D`5OTuqbnYNYia)uD(w2!Rl~E*xU&p9JRgB`Ju4T z{P4s?Dz-`!ZQ3$~eykZhLTk_1C!njHq&T2*BE`Y;=o6w`0#W4>mh1>UL zZ=7>vA_MNSYjg6xK5-%g?!i(bgXD<}n1GM(Lv<5!fw8?Jp=D_R*WVEeErZPZK8=cXCeJTwE9s3!X z)WA7vIais4h1iUFx26$wk)LXo5QWG`o5BX-9vv)>4>1S$C~337aG&(^MLQR9l+8|= z^#7VF)^j4590=L-;8I(AJIOKN<0Hp@Id9L5XpS-rh^g|7I08Ql&y2Bj3i zu4pSG*nPC^9eU}z=`xH;D*f;Nifz@=)4?#kK`(9gvs99F(${tbV)DH!5X%%miq?CN zcr25@ZwVkx7x-!s0`APTiw9&n-HN?5cLQWP#s9jamj?pzOlSLs+8Ja4Q3<$jEL|7- zDb#N1>Lyimz<}5nQ4>PZO(t5Y7g(nC@ktN|%QS@Q<2eu`FeYods4N6y(soF^dvW_X zG@|zylS^q>7-O=VKG9bPV{)#K>4Tsq8efTh!HHClyDz|6*g4cB8=wHgdjmHN^j%&5 z?K?nmjD(t)$x@mX#Hhg8cL14D>V;;*nyefsTbZ%^>_nwDX>m{uG;9QYyC72`whQn+ zV;b0Jkf!S`lhR;Mpo(=+%B{wmFbH7?i%g7zO#4(yA#?iEZx|ge8O`Xr!wO(gq>33} zp}J0+0yI4RYgd810#pn@3`A)DN zd;SBKiRGjFO3qB$`X-YItep=?aSy*ZYrhgE#Y6KM`vGBLY+r=}Qqb^(+F_$MWeP|! zCA#0+V|L#XLBj+DQ2hC3s<<2eH1V8=Ox7&e?YQzIDRnGe01z)R!2qBS@o*=gIZuLY zSbu-gDiq(+u%*Jc2?S69fXvC;!$#c#fWDIwXUJ(o0e~V~J$4GFGA|GyM^3;%Youc- z5zcrC)+kk`$7k~OdUiUW=^th5r6sMG+8MZ!MwJD5qgWoqB>po{JKV;S2yhckXB-!s zfcKPh&D7om?`bMtXzdyM)97j^&NV70oNK3FhEMEV<4?(*Yixk#Ie^U(=DZ7m@lqrW z=bCB95`;2rK)#ofQGKvd9u$W6LC5g!==gG3Y=zj~BVBDw09WVsHYTyFjr+6YYD?~F zV*)^XYOfF3QzLH|O|<=4#`@EIw4&W|5`Mu1$O7#dWoj9ATl_o06;T zEV;NL2hVt}maP|@&4$qG{kM&s#mz(=7V1&@l%9iav%lijy$kDLb1Blsw^ohiTVopM z>qFL!v!qv04wwO}IK_F(kbJdPs=!V#iJuxAgi-gqK|Ns>3;%k91D@$0sCH(mDzYB_IM`j~D#J@FVIeJNL-koibICm(^K?L$;$@ty1$Q(GD^!89SPuzfITC zCP9pF9W5n4n4-A!gZU`lJ3rWgblFJx!5aRGZPn4<`N3`g1GzIuqB#C_ow~r>*93aM z0tnE0$I;;ZQr$}6_*!9*pEg{MoIC5=;<>(F>u1S!Q)V}=uUGqDcT_S!px5g(eVm=4 z6{?GQ%UHDj#7~m;Bal3jKVSsxw^9>AeO;$&9P9L|H}U%)jZca=KCeeneQG|h4{~L` z`27=j0e8sc3)=VG7RGAvh`|*9*jq|`DSb+Kx9^>WtA}|1+A^u{ZLdU+9Lqq)zLdNI zPrxM~sNdPEaI1BBCu`cg{rY2`#F80ua5Wc3|;tx9DkaS30v1Z zRpIVephI@<_}drH@kc5559a778XP%8@zL309TC-ZVl4RtvA9`sE8sFNb7t>eV=()# z3_^6haZ_sh15~l@=KCMxO(6N=xcScM*GInV4l6gxnN%^G^HkSqgWj>5?<$^)tjrdN zT~?FNZ!efcF;JtBZLsfHu#vk3^m_z5o$annmmbO|xC#}c`^?P8S{c(JNH>-InWJEb zdXVnJJfNKj(>lc^l_@*g?*_APjCgATcg_oFT4Gb~Q@F2js_4R5WnWL-cpYAT*nW_j z!1H0St4be)V^+r)gHTs)Zahrn;Ekpd9K1d%-A*K+ya=U|MR^cJ z#0RX~LJj69*EaT9gNWE52gW4y@I5+Bzp&6WJu8twE2p`+^AXahZI420&xrZ*WarF< z`QYtc;UO+3oaWyl;bf;de@gB&XQvWtT5QEMSE3#{%}t}XAe3P+_D+f|@{y6#9Kt^+ zTxia&*zuS9y=alHa_+Xdo@+Mi#IADg#geN$xvQKB`1p2}|AIvKXLR{7U4Dp*a+TA~ zIliH}%DFHL4HdRoP{}f6lR;^5UF9T4Sc;yOlB?W7z2G>-TpsE1#(~_<*UYs$q>Q1i z_pbtVSiCQ$Pw6?$pWv@}p`%hw+O+YUzms;1zQl|&_aMXPVMSviTLs|eC+O7XdNY>; zz)r-GI&ZTkW`$La4_gcjQVqoDi`ZBHOM>e)NBU@MyupI&{G8Ix0TO7{)pswvId8|TV&8KdjB&?k{tdlvzI1`NZT@D#pP8LB7p&gEcDr1qhJ!Au$mB)m zhlv7}2|J%dkO&#_TxNFo%;cT8xRrnRgct3-UXDHf^^M zcY_6ax&L)XFDnEBLMY7H9C2rmg-a^nzOhpNfuBO{2P8Q(Bw#@7ho}kdpdq}ko5v+I6kT=q>Ff`;x^ohPY&=3j?H>ZIhe26A#Li2ek)#Gl>p(J#U z582cyKE$)>+^F_EWjq{GcFlLTNtI-Jff zO_wSP`>_%gg9yRc54x#j%N&c&u^*@Hq>Z*Dn6v(gH=4H$#=k1!-3dJ83IVc~dmN_< z-51?DwmLiCxi8wjhPt77qIud2Mu6x;;YEN%jzlN|r2SKukv%V(ca2ers?oQk#KC@C z5PMXlAxrttNx(y$Vo|m*h5a~=tLQQIV}@A5U9n85io=#Z?1xPicQeCviT$`QrH<+H zX5WHJJD0Zr>_>#e{U+*;r_buvQ}%M+o3skWw=`_2@NEJCRM-!5`S-9x66^9X2>@+5kUx=k%$>i>dowM{~(U}eP2(g8|>W*~u* z_yT=mlmvfDj*?(6BF`Ue=`-i-9-$;mGru5|VP5r4ADlCQP!f)q46+>f(szeAP$TgY zOaOBY)NH+p@es(yaW^Q@r{>wjD+~>bonQ``~xluFF`lw_=bj;;KD3ERM=*b zC3A^QR+h!ZOOPC4`*tuTyu`T@&o@=1!vurS5`iU*EyAf+5M_|v%RYfV(cIR~92=#a zEC0~R{)$__xv&Wabh@-bO1vWwDZ!>AKB%!1u!MM>=>_c`DiKtxxh+4++HSDlNcTxOU2Bmoo6>SPw# zL`&52CH@_$H5;yJp*}k^Q7H{sTc`L(_k^`a=Un6(aI?m|K98m&4MtsOu#AEoU; znhr=|)+*-@xK9swzDr}3TUQS4q~202V3qa(2nnPPq9Snu>rkICq9g;Ah#vJ-YegL1 znwdgEk%lC*lvTdd=XNoJ{QhPE=T_egvXc}MBmsk)EVYvZ8qrYqjv?$z!;COJ$uf_# zVK(N)YkNPjNIa2mV)5XK_I(@^ONWpm!T-ko+?jC(#I}6EV&NFD91$4MI9HE}r5M`Zx56{d>qR9^fRW-b32tBoIqOVqVjLOLa_S7T{v{a+?lajtqiM^?9Hs zr6Iv>!9;U5c`fdB2<%R&hiE=lKg(Ww z3>izK>hRUkKB~GoXftMwaC1;fXf~x;ogs`+z8R!c%q?Ij>^W*eD9mj= zsTWYk;beAv2qe@qjd*T{0t7$bTS|OpAt=GSj8M)v!MrUf zA$~J>;yb;i#J?>7B~ErWX`#gMmk?s&K4_3+*%Ra2u-^_w%tl$V-{1=SFBgC$nk6Wd zC_!bIEcy+DFctJxK-w(X+md)sp`)V+t*wn&5-R(l-{5PfxEwS=D6 zb=e?Lt+uX<4OoNfbA342t8@;ky)_}I){U?ejrBM^Toz{b?9n?6PQN|@rw8qab;J<+ z`Rhbm9eDdx<4qv;;s9@V8_nq2Z>NB_JE>w%*U4!a3cS73OdjT*OOvtR2WO(T*t>Up zu9v4ddXwckF1(0cw}c7W73>!Q*;SgAqk@Q)#Hr6r-8GXgRTXfzh>Af(ezz}a8{Jg$ zYmQ~-z}+)3$D-LH$5-6d5zaT-dP}9w@w{|YnCgk3j z!pvI+-+V6O-3fZE#Q8Ja<2Y65;%vVfk9Up^w!c8#=uDjTq40`xBK;j(5 zxyG18)z_6QKOB2Zx|ZcDd0*=IzMX8U;zu~2;J>$MK8skEJKgP`cxAX0#bHCA>>i7X zLl?i0jc1G5oh~!0#dZfXbBG2_Hy2J| zrz74LN8041qy%=7`xvK+ZUnYS-RMkUb>e#kHj?(C0^9zn6(q31ylTj7R83vU>{#s4 z=z3vYr(j=RsnzauCbzm(&`=!p8wMp`pDtf3+5LT{WQgq2&4rWQha=t=NAP^I`)=-I zoGQAJ-S<&9I+Ilc=PfS{c;#(TFRQNW50IEP)(_HUiqizFbpPUkBNb;*d*~nIpQF1kJ zlJqZWfwIDu*bNLftkMB_Sdr5!~(xpz9DlRINoo>$Y4K0+N3$y4@VVlL3AWAkN zn-({eo#Y70!*wZzvO5QOAj~r;j@^ITFe1E(sKY}2diq2&T05|H)W%tbh5UiP;?}(j z8^rEXq)i0-pX{ahR$sFJTC-f22@zRw6aGpUzGYusBFU_;vH_;5z%JcTG@WY{bX{Y%@TPF3r ztq(oweSFasG%Orn^c?y`U!C}(Gj!n(3NF%wOz2UkQx)#s8hek~4^zc# zdRAR0gHmXik$20xL0B?6&+qSYl52lR9#Zg7x@1vEsn?-mP=TR0zBnPesYKBnj9!Nn zyf5P2aX=7qg;JQu_i~TpRH5Uh;zkI4fV!dKrg(x3ju6s^!i$@V9EnieRQsnmLP#*S z84RN_uQ4G-Rq0!O;zS6&Cibw%kyQW?67f(ESd{%$0heCHRrDCR^dsU4cZD;>Dh^*t z0;oCe`&4l^b6l6erQ_G6(=lD(>`$RnoyYJ50GA>}ZW$UJPxX~FSHPwJWsXTOY>IDb z*izx!1OljlOQr(gVWVz=OG7Dfh9tiNE=9I_tPe|@7r0c{fJ?6Z!ehux7mnn`6)j2& zbW`OA=IW+da}xs|xED)+ zhva|~mr1%!(?&!&V6ujt{Ryeyq&L5^j$Gl+SXc-0wY=qIO>fpI(=HXhi(RSW_i=o-c zQtu=jby-kLhP}$#EYsJsos<|+RbU|nzr(5FsiXUMxfMHwwQScs$og?us(RP?C-~v< z*g;(te-uL=u8OCG8c=*C0WvK$s}bLmQ|LJfSzU$Lz^dKQGGHyM;~fk#8Jt1C`P z-~$^vg%9}O7lY{XA;@c+uAG8!S{%UI_O}J@g@*;aX<&Q(TuKb8Ok9y zO%?OjPIaBOmmPx+o~kA;D?@RytKH;hYJbI^TiTTgRJF7sxXj{59q2Qf0p8bd7%cI; zbSb3p2lt|45F{9XKsUn}v2*;v@kBRw+UGZkpNt;PN4zUUC5v(?E4;xgxrcG8(A}SL z@dm$3-O%s`JOu{h4Rq3b@dlBU55*g_f9i>QOl#B7RjqH0iGw*f7<*{sBB*?~ zB;ld%rzi$dn1e~KqQ{tn&k|pxH>ay9?$cCpH&a}fn1gSo)G=M??6;!Qt}q7?V)u2_ z9Z%oY?S$-4{A$uF6yMUYrNXxf1W;iP%=O>HM%`i#PDf&i6j@$j4kBAUb_$j=FXo`E zVGh)a?%IyL`#G3m9Rz~UQaTl2S)~jnt~zkY3pZHkmy5YuXw4U448qNuiI4`-)IT*5 zQ!Au_spbog)b;|QwP(bf(E-wc<`#i8SWgVfNCW1+z+g2_d#z`fdhB=&#_VXktTO*k?3fcv$CJxGo{U;;kA zu?L$-n4dQrXV#p^9~E zfXSnfR&T({sk>aAaDz!@hzw8SVDLUS;d7=~Zphcj0?sWhf3YP??W|IUy1JHf)}-*!)_8*nUfp{pkQpg_ zOyI${?7Oh@v*6u%%vfA>V0Wiy!Os-y48R(Z2eLbSU=6zI!TX$Z+XMDz+L7??Br7;7 z3ISsrC4V4WY!C!&s#4>*xR#&E7R!A6x@??xm$yWzC`t+T7F*IcgS*4Gq$we8)NFma zc&m@odxyCBV7lU~w4(R$VZZJCk=zrbO&q0AW9m@L>yjYt$R75#L zUHP7$a_t8yd8UwnfwKRDnh=WDIpR(}KV~rgzB$JE#s3Rx#Pe_{tcmn>sDvWF;L3c6 z9{(|$-kc)-6708BKO0Q6qPHYD57qaYBq`-sS=U=i3@!vEc+=<3CSK0y^enioy`{vK z1)zlgEG;iF{3V2#IGY|b?jqY;lH9ofB++*Bp&SxahRLGeFy@ch-V&ynK4HB6nW#t= zH9v=70oyK$zPEi5^Sa~q$=H|D0X9#-B_C*@wO8R*>+((%_j&vE$1Yojqo1#!Dt|x= zGh+c?Ljy!#9W3BQp=wAF9#C81#fI+hsb<&qjJ;3ic)(|OiU*Wwiej2xc*TW`2pNts@6tXS@mIUmWD%!$vc@_CP3D&AX{$PuIyM6N(&sJe`XE z*>tI@(1xEv#ULUJhA-O@-Bc27j%DX)L*KdQ2EfvH*ASm?MzkOffKZB$!XW-D_d8A% zIvgr42Ju_e4Gn|HQ*ST^Q6CU51~GCxcnE_|MQ{I9>{HRBs`RaEaqx$K9eY^h$f{G( zKh9Mg4X2`CG!!mgaX3?wKne8)s5n%p>1OvrZ61AYNVIv&5a+cK?@rKTCC-D~<2Y65 z;%xsMJkvS4(Oys8=uDjTq40`x_or)e+UstlcJocD$Ez1jcD*AM~oUCLw z$5abhkm+XkvfJsY=+BLKTO3jIExxnd$2e7VBdxzl-RMkOb>e%aHInwB(%Sy1j!s37 zs-`O;y({)mbS|kq5ogHe68g6f0&XXa!WV6m)lO4+2zCGZ;K;%KG{7R6~}Y2bR)axQ#U%3U7h$| z*^Q)qsO+|Xs`K;Eqw4BPdVijl^d@MfAp6>m>hvXm|I znN)EcTcj6>+GU7eIi-$uA@2ccg(Iw5HX0mnDv}(d(h5%}twQlF4O=RFn?L|nh@WYw z_pnj7A%4G?5@$&As}R4)R*#(nbCWm3@4w6tzW`8`lW{E$3`zw87N;Z{HH+g78`j8( zB~FG`B|^?P*Wjr20nd;f~Rq z2+(B$=~Us4rWaF4r{?Mmtvw@*h#iDGlCe>QJAQ}4))>Ione>e%G9H9 zM-#s*2xVYjy~EI=KqeXPD5NaPmy7dOc2)>?QLA*ut)CSQrKhiutz4~<2&r} zvn14?rpsT^C{-H)P#b$m2Iefz4!VcSDh?RP*KffK_Z* z2a2TqFMoDXUzuaaUz-v9)VTNg+2=jKwNGe@zLck`ojjS6z zx5~;D^0~V$Y;Nj>O0$IE>jgyN9%NyNxi$^-PsFa)F|9&+oh zq7HMSJ-WN1?=zNT7{m7&L5MmH!P)6q(~4JQ$gYo9dKbfXWx4{O7Q4&+72B$#y*q3A zW}r>|B9bJ0?J1q0V26TU7Z|w~K#pY z$l0s;9a`pHZ$yZBmz_}JCxZml_#}vv6}p7#SwX3fo1mAmzXlGu5y!#e|F9dP_mp)$$4 zq}fWdhAoS+O{4u5Z|-C{9L+2<*yQ);YqMfAa1Eq z7KYRV|DU}t0h8mX4whtHUipx1u#Ih?En~EjSF6L9SW5z3mW6FemSiy4%4&9ZRy(cT znf1)98RbBP!)w}A|t5?w8ic8lWSkdRLSbq)u?ttHFd$@lUU-oo9@Jk8& zLwCIfz<=njd;2_iTz^gQw1b}HKp3&I}}vt;M( zm5Ism(5`0imVy08tg+l+>+Ky5rEr+)p)3Tj!`nN*Z*1>amWNvE#3pTAaSg0b8pi&L zNMy5F(DHDzT4`4Y>0R%N1N)u<qL2{pe9)vD@7N2OV zgr2f*m5{5Dwo1s(r>&BJ&`a7X;mbsUD7M53tHus`Kyj-?GS-^F#Rl0P*?9`8iHRXC z7EI0yNoWWZSQwTDk5hrMK|+;@ ziLkOyjElyjk2dEcyFr3{1j=!7(gw-PpEwV^^YEXa-aWMBz|;gdp{Iit3#~eWx6CM5 zxE@eJy!=0il;ZY5=GzT-Zkxq@ke0wfm#vQ{0dlXajaG-JhsVL&Po^~Z`O)()pM#wG z(rT9Z9Hq$gs`Vqadey76z1C!PxHeiF_Hc&+wk9Aq9ynj|c0Y8xwi{jz4Yi4Cz0EgK z#I^#IPga|-=P=D(Q0FFjb^(7y;#G;#ZA2>~M(D4!5T;uV?@f7OVbXhevF?wYYhI)2~q(Oh5)y zGNwGs=ACX1ktC~2FEGx;hRqEN&ZQuXLcxYNEdvI*y4je3y*r@eCSJ1&m)!!Xw`;dm z`>gD!f_DTt0Rb^4s#gUcz@}ip3e^!}6c0DlEE@G-ZCM!ybADvn{DQXO#9QDRfJ!uh z-~kasuh%fO~ zO~xpGCo1*nD5`9EK$FKnbi+>i&{P}$nwSzIT`CYzH{;a`yh2Vpd^pO4KYUnnUqG|+ zO5<;wz^LHqb=D@(pTG4I?nyZ}4vpN3O5x7FGNIcHXEL4wfQm&vjt4|ES#wK+*<~!3 zH01C?kuL`QS5ff1|7!ZjjG(4vuGSnf*=$#q`}9Ge&B_o)bPTsWvG08V{%BW^Onb0I z1+xhxFg&$tN9tgtv>|i@!zqBa0|5@IVzdFio@2m@V0fX3Un4$+C=St9P1;)FhK>P) z9YI$RFnp~(IzCmc4~tgzL*Plf-v>Wv18k%^7-WGas5NbV4ERSN{=^v;Bb>d(5^a>p z(Icq1E8*<925)ai-4F6|d>ka7FgTSWj@9EZdorcJUi z;xnGW#o508eo!`*Bh`TcP11wX9_yd1AEC&Ofy#J$z_S)Wstg!&z#9ezsWy88G5Ast z5P0V1WkOysj}jLmos*#Xna&wj`!k(Im2qf%rn6YIKGQjAs#%-yS1tlsSA(J4IpZIN zf9OR^3Zt9w1$o~%2?+;OAfWIRM97Nm+-Q(gRd~#inkq_&V2*x}JAqkBOQUXzHJ~i1 zSTE1i30GOqN}!+;Rn~J8y3M7sa6Dm^HIRPD1*xnvqsRup3P)%C;V7 zhlImT8(DavU{!Ho_?uo$jMzuSX zN4O7yylWV^-bES^+cjX#0iIUy&B}OkT=5J4u3#z%m9GzvPm#!vlRsfQ<8{C61L0!e za|!%dq8RvcLbtiZ0FFnQH1k8YOww2jBKOC~kbBsc`EjAPjAjEBouRI5xyakCS%gd& zxiFu$t(P9MW#Z29M6{g4Hu@DDziDgz5U6w(ZLJHVsWMFSoh5Qx&I&~^3L+d)V>gTT zX^)ccR{GlD%N%(?P5e6YAbaEiA@D?wJn-kiD#8DM$W;C>mXLn}-yCm|8w9)+SmdK$ zqUHa$DE}W>4Wfk)&G-w%KMTb_i^V@n#XmjbpHtwUYv=o?;y?5J)8HR}IsDuS>U95% z|0sBbcFq?6oD2W#@gF1pIG_Fq*aDQ(zNC->he(3cQC7q9Vz@d82j1GD6F^oeGyPT} z#t5j3@Ts`Sf+yMyckYfMpo!NWYjKBKOW6$S}FW8-&8mBGP@dm6?TX2^XIJlykgc5Ld;Wt&VOQBK?{NLh~ zCNv$a>x8#^PL6<);YOQUirGuQ5*s%6(m7oM7ls@Sou>y=)1-Vvp&6C?%(qpVwaU;q zY>ud%4vgo9>1qwb0w0f# zQxlWm+_gkjm%40-2g@I#+)J~D7&7K>dNQ~hqz|$QtI5Vhq60FGfqkUWI5G}WeR^W3 zG44V7n_YYN?po2)6B77jllLhh)aSM8l}R{T+Lp(r<$+YVAg12#m6B=|8Tl9Cg`jo3 zc2WNMEN=ztbH#w@@=hujqZ+JFO$ON{TkNmxamkKDo8SJ@QW z&4S8vaQ5YPcXN>S6aP~dan1zNV(r{9U^23<0Du{S~^%=cGCVz8E}ni+Jf6b7)THn|eR@0Qz;#zHw|aXqj7XgyEANK6 zx8StUf$P&Qg(v(|9k@Q#keyNItPLS0Y|`JwwgLwfDCqR(tpCi#anlp!Wl7_>iTn^E zKcxQ#mi^-xg%3kzUuEGmCc0@WY12U(5%HgRdEXD+_lNpHc*SylX%4#>86Cf zGVFls3$t#d5xO*C<_dSc|L&PM4C8J9QVh}e- zz|zqPvAAYHKgG~)a-KxlguX5BNz_F8+wzWt3_H(FMg+<*yMVB4LU#F_Rmx`KB}j+G z=_M^NIs%Q+0s{-I( zAu;d~IMvIo6UT2EM*gc?3G~j>GJZ3E+2?qwxW)uXZD zJXFO^**m#GAGpwkH63B&t|@3>IrL3O4k4Y!Sp@*QITR%)Yr1`6)+RLF;tgJCyD0rh8%cUL`y;omk0!bJ$yt&wzFi zW3ohmLpY}y2w*tp*J{DpzuwUm+eP@$fcGr9Fuyao{sFncF9X)$yO7atelK^|pA`U# zLBY5&kC7L!BQLwWIe2xb&#Fq%@KGNa1>w)|FczE(t~Ca4tH8lt=!vqqg78wy%J{=55#k6ZI?`19NN za}WIJJa<@loC=IQcT|~J1}po5O>xHqxB4F0Ja@=PU=}ScC@6i|w#x8Pxcvo#3z_Eb zuoAWadJp1+Sot0Jgz~Ff5Ji$RK!D z)@&TDHaRwT;wquskjKud+k#I4ylZ(gT=qA@ZxUcD+v0bt_U zcpe-Q=<2KyAFNTKa7G<-j#T|Ie@}a+B32Y*&lC1b#8?9)7C+2uArh^#-I#eX@m{Y; zXnPfbNx^+kK@c&*8f&;lHlZU_WTtr?K6gtf7<6UIHu(gn{)&;o+3sYJ zCzLZ{CjCbv2th32ts!KbVeu~?c0@TF;1jY8Fnh3M_W?dPG{9X2i6ey;JF0S-(SxdG zg%n0sB2mOj7;XpLaqALlc?C4@<{7nQh`ys_12txaTAmdl{}qmUEhL@BYpaSv!iEbO zs`i(Qsy$+KFAmYx{LLIh_?tm>I0IC#hCULNz>A=QPy!OFuZEynh)R|NCSEbv>KR~r zC>FNPS*@u_bO#Q$AQ5)^)~N=p7iM6!bT1hG{wnatnjnY$2j_1oae+}40M0LwsH zp${B>PA~>?0k!&tE2v-iQ4T9glUebW$ObqsJOKw1hBYwJrgym?)WE|C<+pLutX}^h{^z)pPRwoS=_9S!g_p$ ze90_kV*ncKEP>+o^kfzC%L+)Mq6Wd6Q=d8R-;2aWB!#iWg3KPq!8|r`hG*n3o{b+N z!JRO!3BfH$n{J*QWi+B?O&oX~(vf-2;zE28(0du)TXJhYbN7M4ZCkfrdvNE0gS+?a z8r-&j@3lMkd%eMY8cy>FSC8d+fHW!K_kjfbRq%H1$=XVPBvg?;P>v_QN#St1c%?Ox z7#IQ{WY`Py=xCUk2#Kk~lcg0kC`%_n>$4TpZ5;)dkQ;qUYjts33%%gvu3HugCzEJFdtp z7vV8MptV%x%w<_?2`57=FPiqmM=+Fs8+NOx&+2CoO3Sngg`P&ku#;ZQk@fg)fUFbY zKJLT_vggnEy{O~g1K(Ljrhx=OK^4S`sp8^{Oh0}4eA%mx9O9h_WotkZtG4BxnI{MO zY$n=58+)DqNgM}Vn)xYwqR=6F${spI8}1Z3MEZ?wy_dAXc@rF&9iAG;YhWQ7Xrwwg z3|Y4^$w^ivE{`699dLctCiBcrVq1K;V$hc-22ovwtB;s(W9a|Q;R;~`iQQ=?4o~U z(t?Zb7$w{5XSa*~&hG9+CMe3h65e;)l!qYH1lyZ!r^sfBo^-XaA8HX*Q{{qABLv5#oi2RYBEunl1=Rk(lW0;RH|WZ(?BNYve>Gsin8 zgRe_OHO-KF1pPX~`88uY+{phyT73l!DBg|ZOr4fV>0-L-&A5LRq<$Ryf@Y}BQYG;N zUJOsLU4sm8{hH0@Q!~t_14^z=#BCH=Sk`=3l$>I!K7|&0?`RQKQ{_^GiFXVmL*-)R zHwYv40Ho!0qiJRO)tVE z6uD(pho~pU#BvE%5vVOxR%L4}Wco``4g!mR9ahOlQM`zQG0f2Vu@4 z7w*x9wp_P&dee0hl}XA#lvv&WEn+U!>OOpE`bpc>N|aJK(`pprOT}f!aK9nhg>c7Z z6Owx$fg6?U!IC84Pf|ZQ+F`8wiGoI^Q9i=!l$Zc?~55_}Y=FtoEx8(zdD!_OJNrds6X@k#u| z?yhqJ&U~aVBIFGSuTet9mib1k&DBGcFX6O}rqW6^p)M9s4>a#4)f1K`i*qyC9tp3k!ph7pi@5n3l2w2xESAMtS2}6wX713EMb)x7|m^! z>_K43D%p!qWR=iUu~tcdr1Gqi!$E!d!G)b*xJf{AlM5m0@TDitWJBeM+z3S(>tF&dbC4#p;3*}fgd40)f>q#&b{E}(`>nWa_X zDPG6>%=O)1boXAciH}aXp2=oowANlb-e|S(h%Y8IRNvCo&6SZ6yl)NC8)6ZnT9?cE zYFA10rBbw0U-d@Y10!b&lDJP}nyPWpii8sGe{OqJ&xgCLJnV}4H$W2o_V9l3N@*B7 z2Nr6s>-YA+S+@a5pbg!jUvWq~Z31zLod0VaX2T)V93N#AoXTQIijCI`mkKs)E?gd9 zJ-Mk9YvIBfPb^#v?##V#`8oni3zxsaCtA4BQ?Uz|07>O7T&{z|)YW!vqM9Ri4CKpX zwb`DA=&`Mt7byykv+lOsfJD;BGD@;vG%8K&C;dM)O9rL)7e$Axs z=}$842TmR_Gn!|;7BMOQX$XQEj%9*=AEt4ZjKW0TrG3T-M{WkpYgDl09I%h~rk z4540wVCS|Q5Xf2?AFK=yH>T=sks!60eZcGNINm%|M_~sn;+PPEx7i?YEI#(i@<4 z0Jt4U2Y8euTe&vm%l@8&dw1*|@UE_bN1`z$JPA70*|A!C%$sQ7P4ji|B1}}!H6Oav zVRpJ?66F}fPb!HLX?jcJMz6PbVZ-KnyUlvax!&f}DvTIo?zW*;5hWOJ<`{_LG4SVL!bdF%+ygT%KsVoaQ;X5Ln?07`A= zd}*$`qwS#=XY7RLSn0}M%i(=S1Qe#{JEEM4jPsEr0)dxGWaKe>&au1eoT!8_JARc2 zjQXn(%dvX?3@Du?J%5qCAs9igr0fR(sz_xYLBUGn$E*~>%wz3D82Axt|51!AUDW<2 zq4p_`qFJ4&)asb%oi=|3 zUFQTPg4wYEA`t377m*xm0UU+WS+W3Dbf;_?UpfOoMH&D$`6~UNj%_UUZy-mg|2iW{ z7xjOYi~2`4j@ACTT4MZsFB?rNeom+SC$M2t`TsuaDW~%1lOUA8F;lsf|NRIoDgSrl z6DfasDpvUiNGebH@2|B6g;5Ddp^8%dyE3bO4ozys{}*#z@rTBpLG4EfN8YI3gtu4z zr}3&><%bKIfcQ(swy6X}9)5ddjK7IeLW(H|8L>3P0^CrNU3gCsN_`RICaQkW`)u z-#cELsI`ksva%zy{x(2Kt-L=s*Oj+9=nR@W;&8IjVy}3nX3ai&EN77CLJWsE zL{_3e2Ufxe;3@Wu6dCTY37U7)4hi878>unt4Dv$c6ooqLNH#AeY=~D34L6mGhJ&+! zhD9VQV(}0v7V$6Q6NZV&axpPJ3z%4l(lQniyi^bbeZbK0f^yODTeEVu2MB z66g)X!RyM!!E1`gffbyTDv57QC{%>9@~=dc#IBeg52drTVtTCYAZ6;GmP;Q2cp{fe z%pg!}rN<{W85IX*U_&gFRv>x;bHZhzbmnzv*~+|>5~ky5d29*^SB?Cv_>n(Hgl?h~Zcl@(BJr{)RARNFPeYYw{x5rTfrCj5*| zrhZ5@;V!||r$X~?;y7WoadM8vVl0XX0`!+6O4Jlt_REifWM|2u*x)WfDazb>fXqwWpd@ zo$jaQja6=|dZ3b;wdx4v?SUAr+aT{os|Q23AZt&^kSVZT##;kONP+E@jC?s}Q$`jtITY$B3~!P4Ccz6Uv0ItNTldB}MpWD`#h z<`VfjcD0za&9^ORVmCG6Al8G4j|m>N zqD0bxpoS#}U?@rh2GnR5O`$q}UE@QNq9cjG~X3sE?&4Ik&rV_VN zGBm7joaJVFn5pN-j=Wb8K=;H2NPFZIJ7Y6EkyDJG3U!KUKTbKhm!7HC{;)?p0_R6W zTtGo?u)Vq6U>vG4onHw{R}MsPOB$>RF0ZqrvC7q3TqP#qRwHe>X}Ub_ttZ;ub-sF{ zxVQK`&IBHlUjnDrRvYgD=f??ohr1XzL-U0>wVsrtu^6XT1ljo;5hbxstqY-amYiA< zx3R^sH|>~J0JKO~Rvg1C2iEF%2NoyYD7Te?F0n?x2=Nz44lv5%u0yfiRvT|@fgcK7 zPgP961X*OsCsn<@Iy?o>6m=-9F+5T*q?0sMbq^JzM){Y}p$Tl$*?Y`iZl zcD#D!|2x<)t^Bnl#ieX&m*(S?U1+&9$)l-kzq}sI*B6Tb?ZJF4G_02HmIo6HwKCyk z7Qb*0doWKAxhNG*gb&0jWfTA21PC%{0qwuMpT_Odgy~Un^Nv!`e>8lLuZS8)1wKEau$J&h`~siIBSBAd$|G?=7zY%RQ>#xElxFCf%&v$KIB9(loxhyx%jWRF z$r`}WtQ#P+Zj>v#*MAx>=|m)93ALJZ%<%M3-H^Hnmojy6))wG^VD-b9I7Zgz@td4( zcXxskK;*%M!c#U!;M2blaUAOqI2lT3$sur|y-p9)qPYHj1HcsN39u+zxd2izjMSU@ zdIJM9!d5?pkt48d+}ht-4NmW_W5mtK6y*?v<<$r*{>P71rdwXK3SletmWSsM`+N4l z0<48Tf+1KV!WwYAQGo?n_}V615DsGu42Hnqa*_g!J#|%vcMO(t&1wazjBxIL1mR$E zP_vk`jjSg(Z=IwFZEA1=5T=GfC9y`9yn3Rmsj(k{rOl56 z_(Y}#Jr!zdXe5;v5xfVkotP~0H01W|mPP&xfho>Hn(l%m145orSoq|a<(z2=sFhqqo_TFZL~Y<2s1OT+ zQAREc-s*ofmrOfo!~@oVWzo2%^Z=KfVR9Pvu|S&N%RG=ss+gpXB*io^Cus92h( z7(~G%vY%#SxXAU&erVoJs%tYs%6ENL&7K^M#n>bf1m<6lC{fd5SwNRV=`7hKQ6_{T zx208b8vqpPWaezF?2?Eyc_u+dStbTTq^lA!6l|`zSSA-7paDQUnKVx@Q$75_?_DBl zO|HtM(r+?&Qc0zB_R5vmu<4|IHtWfavMqaMBWq09D+aD}+bh3^?UTLo3Vb4ag`SGF zR{|uJXRq8~l4wD}=~rj>(;7_JN^P-xVa~g1*|0O1EbAlISZ15TW@+_#t5+XAR%sq- zC73U#GKvVaBuS1?850%nw0W+ZzRTmAeY@RV=R_og$X(&(B1l-zr6M$(}T22KRw zy@k<@i|u);v^|AX;v^a>W0ZOh3{zXX1zMMXqUT$T?NO{JH!)*bmmE>Tx-_tv+q&#W zV9B~%i%(=-(o?b4Wq>5GE?qd#!pFZ|W=*62=*!_m5d0zzP9>jNqxkbQ(ck;Y9LEevE{~lh_IcGSw`ru>8Xj!bjtsUYE5p?RFR0?J+_D7(g)r26 zh4m?gBje6HZ6-1>76M_ur&<&Z!r!d1-%e;Oj@1uAABooNKByoFA7OPuvA(38x3>P#t_=(o*)-2zQ^(os<#4P)-LJ*WWVcnPe=p9j_j?;Zi9X8N6XBp_7 z2>5f-4|LLDpwET6raT!2IxJh9DYV(HgwuHMs-l(DJ+2Rm02dd-2cUU3 z+utHny=U?sYRqymoDv`jG)ydtqH7U?co9R-SIb4uU(Et~&Nb{Srg9ak;LLo8=+BDy zMAa5LEwTo~+{5K!?gxSv!oH;Wn>n2DH-qZGGeG6wNs>@~HH6QFXyI_c#483{&sO&( zz(deev|Z3St2H$_*=V*0TX4x;`_`!j*w{12<@#V1L?;W`FF+12!T2(ZFR0u(beUn> zDKywrw^-Ct6$GKFmkd)EWx$k!zwPnRJgkdcX={B3s2pfZLY0lSo}2-;{In%NE|<1W zF_#L8c5LEWBCDwyg1UmYjJ$5jfGh{{I+%^TMl(R=Kwc86Y~09$_Y5+IjLUdzL4 zPenjBi7hj#s#=1~SP3Jw7iK`51F0R)MryCl0F?u&NvN`s+Mi^AEkCIVkP9WXY>mZi z!E{~0S-rKv5^~&v>2q0Y&rk+V@Sa|b=@H+8b{B25d=}>q|9swz->ZtGRid{_jMb+w zQ*L91Tf$Ze@MXwNd*ilBtJ)gy2EcVdKB0lb&*?T2!<%-vk9}Dg8t&h^ZTn%x;nHig zM0Uc>&A&__)^Mtk&c>_&Dp35bm$1dF|2NpZ+=ZrQRsMP8+{&%4< zooBft9e7cxVIdNuK66}TTP8xJY|BKP5944iai9yezefq0aX;gPb&QEALs|yDBRX2p z7xHO35&EM{LJ#wkMa2Juq-hfINx*)bdgpC}DsG!6y?zer{qG{Fw+DbPhI*GsTw0Xr z{~U2BoO$MCT1tU!uJKi$WMO^i+iLUk*hw%8Kq_HD{8P%#CU-;NygeMD9|F9^4cR*8?{w&T@d{Z zHSpk#cq4E{(lDl18>$Xhrl422U2CKPH&}q!g%M%#7&F-%AgR&xoQ6)SAn}mro8*Gz>ccT|#ei>z+_xd+D?i4@6Mr^ljK;L1f z_(o_R)b#RAY}L@|=0iV{0jdk2k7z%&6ym2t1!0;sVuT#@xFW|eUq0&EtEX%j9x8ftX%s+_TD(bWP*$k!SFY(3N9#{FD3__870xttVJ2BhEog}FzqcQy% zXh0H@_8}O^5tQ|0#FlBGUIIWHo4rA(m;X{&&fPiF>%R>Ch4_%}X0gsz#5*BM=rT<# zH1FgyKY`pYD)NilmV$NPTN&}ETJ1qtBMpvJ$1BsDuZC3+ zSWvM>#VHJWW=8NLCdM9M9Kyv|jI$<>;qU>wyUsUHG{b>Ugc8=)5!th&r&!If74^`i zzP&xMJlsLhG$}Q^m{G=8?5XN%ia2akdan_8zBeH5&Ros3sJk@N%Ed)V~ zuDahq`QSp%D~InGBb*Od(uP+mwGv5Nmc!>)LRpCEK9}JTraSJ+f^x56UB|%4J(c>- zf;HGM-C3Y19aTc=I}4`5`pxSdYBa{_!h${E;{~6uozfM}L&L#L4(dsDH7z=u8+C9Q z2cM4D;BI5~jnV@4RS331WmcG7%vfe;v3S;3BW#6+0j**iCw#dp7RE7Zc)wDwmcmyf zEJVC3#E726D>lMsCiLZ^aHLSsmmoZyM(EOnxtr*E3BoNn4C4|6)Cl4d1l(4X!0Ag| zP4tH^K}f_tO<2?=uHCKrYFl;1E6ys=me z=-WJAPxIy?5G?9JB+fSVuq%U^?qDShhaW2zhgv;<7#q$*MN2_#lB*|B49T|$>-ubf zUn^*UrpWgj&}dY+NX$*b8Z-yN|7GaIE#k$Jf?v$qgqDIhjfK#0263)$rQx<3oB7IUacQ#kM((Y$Q1%ZCO5By8v9eRvT@HkEw?De9w#+ z9245UdZFBeZ1XW=b;nXRVyYt;bPrYsp&vzJo|j#V$p`GU>(E?m(wCZ zy=3GtV9!sH{@E*_c{lB){eV)BX{X`_YRvLzpJ6eS!i(+9UaIP%$qKa&TTtsKUe{6r=|E|kc!H5Ri^5}|SZ z^@yq1eUkH_bXNCCdehoWa<}9`05CSrBg*1YdnT*Xb`-U9VjxZUaV}u=maub@Ck}*n zB9rAE4h4)9**<_oMLZe++*<4nNn<_a7Ah zd;u>tzoFm1 zrQdJR?>Fi9@96jM>GvPtS0M0P^!GpF-w)x>JD{N#_}_*{80vT6pX-;e^xp(8_xNwb zKK>YgzKb>g34h)~C2z);e}X^X!w;8^z5clW&sh9@{J9?rUf{nIi{FJmKY*9V{kOs6 zasP){f4={A`r{9=^!51j2KxJt;P(aopW^e_DCSfCzfgOR|0DQ?n7V&~f9{;|e=Pp_ ziTLNI;-8<>KfV6Xkez>mKUd@NzwP+*F#h>N_?hy5VN^R#RgP0JBssvqJq+NZk16LH zeN4IMFu9z6_hSPxnufZ1Gb86 z#`B=ae;1n}$*9_IJj>72N>`{zLR8>gfVuluMA}dBXYdO68Nr{g;m_aU&yTKzpP%5* z;70hV;?MW-=VAQW`6T$c7JvQ#f8K~cXAHp4IrwuFe{RK}PvFnz@aOSY!Oz9`^JDz^ z8U9>|_dq`pfAD%#pKevfOLcs@iw9HL`;-A6bBp?vk`$@LC;5#6I`x!e<&0DQ{<5YV zb&K-Jm695ZPe0EP2h)$Ig?&0?j6uad#Uf)^j!)4%Xn6W)uTJ^@Ejajp#6R=kr~~l& z0`bp6@y}xM&rl_y;7(srb)4|1|i=Uk*Qa!a=|NGybFC5!yLh{Bth+v&Vmo z_~U%~!z9%|hV!BRZNSu#p}pzTJD!3@r%dk{+QQ>SZ25QjPQV3$vlgG2<&a?uN+)vM zU^m>kb?uF)$y!XV)*M!Un*QHbf3ww=bOLJMAyMWs1Cx9a%}N*^ zciF@3>d<-xOgfNBgfZi5Jnpa?_P66ZT32BP(8AAEQ9{h#vOwhe3NZL_UeW6da26`SJGI7Oh8 zDaev=M#&4iZH$FNE>qNJV)NxT?gFBTnddy2BO|8DpFt3mlgi2*X{MlHJ6>i18`2xH z3@Lk#$nHZ5=ZHKvPGl%uXK(zJkhSXl?r3t!oxhR+ zw)}o)0dm+|<0LBeR@ytotb{LA>(OdU(_lEu<07i0%EhLJe8>3j;S6YU*wFZa7=kNd z{dWea90*H7m5s1^u6ADofva-oEkt+AL5jjn>#>a78DtXAT^{^KwZ^YQQ#li&Cv zDC%_02hHAXx5!fJ}c1>8r|9%RHz9clD^Rq#249$*Qus2P)}lLh?7VvGjn^F< z-1m%w&+MMC#IV}E;OI51OgDD5)AgFS-|RASP0q*8ok9*tN9ZaMvCigwN>=T)tnE`6 zXpEzI5!3i>HdP$lSk}&NaZlRab!Od@nrFQinv7uW6ZR8av1v!EeejOm_0fj6a_dC3 zSsSjb-BUd__>4yL=t}Rp>kqD3566q9`@Ho}8d!JPz`AwbfrC4?C=<;+fync1%ywH1 zx+D;JE;J7+&ozO_%QHabkU&I2hj)USwzKl;4FG5e*gCuB!gHA?~eq&o5 zC3%{!QTpuQ?(26xbMKxMDaqnA{H81#UUgfhmOnqjvIzQ()%455m{D3oEbQ%KCQSY> zqjD}xO3?WKY1kF7FUtUxgOZm}iR>F3no}T8EuHSL} z?mdIJDmrj*=f3RP-O2xMc3I}i-1NV*K4Vwqr$ki~D{@}MgvvJ=MVGFnzixLo$NcXc z%StXaLpq#l}^Us`-b|d4-zU;&3a}T zBViS-8aM=&*371zBbdkk0d}jX(CX*QP+Gcnju%y=k5|FeaDB|hkyL}*|Gk|H$l01_-|;H&V7G%!8QDGj_O?PVQtp79MXo^jDxnOgS@V-+oX zi`BP_c?F?q)k`KC4&n?4RwEY;C9H(^+1+*Sn^P-cg;^!nEbY2r$KAx?zT+LYHrO~{l@Cp<#AQzPP0|a1jy$Z zm6xt}KW%q6$99@6bOv(J*1$Kz=|>T@>%Ox62OCpGYT$1`^BFYok1{~zpn)Y+t{V8i zGC<{^fhANz1H+s$2EszECO89GnlYOOj$j)9Z?W504g7H^EnNdAi!0K_kJ%m8#kRCk zTKPPvYiVU;m_jRmf}y)4t;{InV#m9R^ByS86Tb+hePXw zN1D~@(N>y^qs(<~a6^=nQV#c;Rw>UhRbvg47#>r%q(4eMYOL17?e$h#t!lf^qkje` zA^f>I;Ej$qD)4TqK2mLtPea0_P(icSIyyKClMNX;+p4~C7(2XazC7HkQi;+$v5J{= z-HFT*7~x#Hmf#lHYIk=+(9E@vYuUQuYIkANucp*KSi6Y&P~}!a)ljk6))k*HGPuQ_ zm#)T;!F{k49hxP zFu>uPKfukSdon=fU@%IkTn)yTWPr-SV3bfft73}8nkVKL9% zjeSHPyz^hXKpxC%SDKI#d!{3ypltlD$?9-zv^G3*ymRv8^ngf;GUMYZyv|a1K{u|? z(7^y{$LV`kUQ5&yBe7l1y$jUlGOW9@>NzpWPtBaougk+14}pe~&I*BPL4;9LonE9X9x0V)U1l~5JVx&NL4>|YMf{a2!%0ytNowp`AAbfk5v zn9=6j(|CPVQE+Xzkn!xfPjxm-UBuj@p!q2GOc$PgVg{%jcveE?%CnbcfXabqB~*p; z?9~~-{^j7=ZA3i<@T@>>p*)+dv6vhd5$iSo0E*gJ&)8K^I;);BYke#7TQp&c_%4;b zP?nyt&SR6-@T+Dlr=L>~%a(W9M=5$~12mxp%x;-As`jN{-d7G83TB zDu}z}=yj%p&3gXD=x=8|xvleL>pFKfN2PEL8u;$!8ti(d(eEO#v|INwd?LRfJr(K~ z^aCWJH>sS=4}-&vIwZAh530LC1|hxWV7ozoL$0HC#noBZYFFB|VK49*UhfhZ(-oSu zPQ<|R;NXQbGBWme1*BIY%4YP^QMd1)!W+x-b#U$m0S9}O(WIT@L;QUWUw_^ zL0?`_$6L8&i?J6)ewM}JL%v*p8{-x3Z}VOC{{0D!#VIETy^pZQ@>}GE#g^AbCpmnx z4QuBw=2SpXSGqFNAcmc^7pC~wOh1&OJ`?tzv9TMlQ4A&Ixg9HFGW|~@2+Az5e4+ZL zBDrB}`S0u+VT04IL42lPGnD*;J4##@5Z{32-Bg{$9NJIvwH%GbSZ-aX$g&gP06>&( zx%HW*RyX}6uTlA50F0Y*DcD2VcE)B{3e6B<>=|?|%$+v^IC{$@!PtZ4aLC%5+AfCd zRf5~}JW$%O3FNgK@+E0*uQB9Thui($)s3cCy}dFqIbQAaR;(8{@2&8T)yBuYA-JYi zvrUNF1^-7BiDp6A}dnogzeK4 zRjUZ%Tg0#i#J2^q07fN#?{&Dhxo4lc0zQ=Y-7H{}_gDr-?#a{l?w*GY)4jWz@6b_m zQ_L_e7W)ll+u1UTfLJbJ?jWLH8@ z8Ms^DcE5wh=hB3^8RL4}{caqFaoatrB5~WjkuFp3!kEYp-*%sfdz!AO+wQx6b(0f$ zbMXyyjW3YMQJTv?fzaWve!g%?0>m;U62h=daZS0DE^(ev*@V938HI-1LPa*A@47#S znsAVr!L9a;+k>}^8SX|ZatpFZQgvEdJ_j4lBQ0O3Ed~&jTS-is28h?JPByD8xKD#@ z6hn~q_w-EFYi%xN=}lwQYnv5AHjFZ1P^N0>%7m+bh|AVM6!rS=4p~&2RtFVI}N004u-D zar}%*v9UNR&C20Kn`dLgv@%>GzHAI2odK}1q~;Yg$N9%kWXMU#Yu<{1$g?Hz*Dq2fQ50r`eCwP zLboS|6vPcn1t~v3Q&tycG_^$JnSnx}st;UZ z!()~D5%p)SK0H1(QXQ;}wyVuSl8E3PHN2Bo>?q7IUX6Ia)Au_k|Cp7E;1^!fQ&PgJ24Pv3NLmDoSR?p&T^46Ehg9X z@}d8e0V;>fha^>MP8@gEJB_F<(3J6{M*fEu zR#bI_AJ}-$Q1-42D02`?f0~WhK9T_{2V#>@g^6t;8WtRF;uXW#Uu1wSKamNL%O$c? znfavrx~DfpfU+nn93HcU&pbAFBrB?y58B+ z^z&1g0JmHUJ3VC4D@52dw#=xhY6&7^B@AyDWWbvPm7NRCgQwM1ajwn)l>?PYsKQis z60Dav-sla(*TxKx<)qDrb<5SM(%&~!rvG&zvf_1Va3FauN$ zWF?^rlT|tuIgtUj{DdVyE|;)QWnKqGJ2q`CRrORAL0tK zKw%Q9Y!vqT46x;=FadJ86n1W$BTG?|O>AdHe4=U#x{IvANbt`yAk={b-+zD9um&rL?eV*+Z8!(iYJ!I2>I%|D|RlTh0X;%2A^nGjGhYJ74rimm3J;^EADK-_DHRseQ)dv*S#^( zU)tTV!1?WP#Ahdj$4;QLKSEp^uB9OpH>E_9I^~Zs9aAQ-kk=jmoJz% ze;)qlzYJo~;7Ftl1$K}s5|biO{YN6I0@yYq9sF+wgu2s#>rTn3d)=3% z4&I)OxH>-rRPMO4d{C+OqE}^rEx!*+AhJ+hk*%>9A5?eq^}tW~d5(qVVy}x`A?h-- z;+hQ8kWW4dAaa`zI{badkhf3oqy&U zOu7Heo2B&HEy@9Ctday$E@6^3!2t+v{m{{o-`zXZMh}kHm~7V?bqJ1yzaTph_yZ>( zNejGDp1}%wIPe%&WBBMQZ?xH%@T!&Ju^xF0OYKFq$c-pkgXd;tr0PK{mHG&r@oG;s zp{okHJ)rGMbGiqc$995H+u-P{*j4yt1d#FNtp)LA*v~oVof3jJ>kK_Wn~%&v^5-!y z_$i7w6Ddl1%30D!BcF>6lV4i1C9cI|50a-oa~PaPw3zlv$&0kc367qLmyn+Uq=&(T zf~CpBuh&80L*;4x7=KtS8ufAVd!b>#8ZD}=Z= z22#;S%I~8wx-?{)9*$?^9prxSdWn&}XRCbykxD|8r9e+` zF4W@cl-`Ypku=;+okV)wB|bD)|3Kg)nyaxeuGiwZ`lNmFy}7WY9HZvydC;(%d24dD z|2e<{nb_6aC&z2UaA5a%LLP5_5e_3gSIY?qi^7wD)|4_3GMC;kK0CiGgh`lUv!;iE zO&1Qi_X?*3IDO6}CbiP2P2`fm%Y2Li6Y1KN= zv&OrAYP?+ofm&_K%puhy1K#>|>!4`mc8Xb8>8?xHqW3N8!9@&JO$X6vOU;V<+e* zxmi)qA$Zz)-E}Ju-3%BRL{uDt-KLubb*%5BbbCju8~VKd{{BNfa~C;R0CJwbb^ji? zsdMdyRo=F7aQ{f@U#*X{ATwVZ&Ox`qsWUWQsUL*^vU>F@NS6^14`j|D@_|G?J2mY< zkWCd6_JEUVz}v8H!=-E1UAgAc^~xx*9aX=h=xmL5STpxwgS!s{dmo++{?Ot6MJ$k&ngBK-qkU)@h{L$K-^vR(?fUtap)%0zbGGdrwi15mQa^LRDBHy zT3Cyk_+^`NIzou+tVmCqLh7dZfKl8(mXEgOCdFlt8Bu7HR2-HW8CoYEA^q{2S?5(R zgm67D+Y6y(;*t!nJv|vZn!!rgtoPgi3|XA-OfQI*V8b~UM4fYSzgg_EVMM?FO9>Z< z-i$jaAPgJh6E^0@7c}M^j<8OT0i1(F?0f)SSvCt1EnG)qaolWX#n$BsZMulQM+{rJ zM8Ua)aF=mPhlUmf$O(mrf(!%EdD!?yCO0TDG^|gY@ZI|`%O~YwBj0h?6DL?poH!Xn zN~9Af^i=4HlOR;Qq&#ffF(v|+*_fon^}?CprkRZ@QWjdO47MPF*DxI6F#a&p_?tbJ zdE#U(EQTuw2$p`c&)&+2Khw#sgQj(j&-~*IP&veBN~pq-kc)`3IQrx}hO_%KK$kxjQUL9uWUL4}eFw}- zXkOwbI4b5vHx?5M8Nt#1ixE@mD31mD?NC~JP+mBqPO~h9<$VQU;9+@OMykNP$Ha-} zh_kuIsKrw44n#w+JOF-(JDY2JJTFsM_TjnQ;i)EWM3B!NH6UK#hwn$KqZQcdpuCrN zSed1=HNhzU@7Vyj+2cY)(y9ymC?|l(7c=|~h9H>XM<&4SCk%|-^Q70I|B4OMI#d%k z3ij9lx3K5sXF&sUITZPEjA);2qPJ|BDkEC?4fcoK*m0HV# z|EF5j(W!CTdz-9GViOQ*ikAlfmsdP#+0m|D&t$W4TMfcc$%caMEUXbknc5eu*lLqG z-0Wh;FH85E44-=*bS%w6Xc*8=n%#HgInk05)nDNh2`((NuW zck`X6-0}{fe9Gw^_z^YX5HZ2rflNBE5{AR47t1zUKp(`0^9bmr+Axwk3(0;#U7rnb zyr2P^Ozm%gM$?DKbu?%WtUU&OxJB@p#tb>Ut67`SUM`%*Lg+XHLuxM2+HE>;2Ai0AKC`cDOIBZ(=(kLd*EKOq zDmmiR$^4CrmBV@W&$KbgEt{wcOrE_D=_pvbaaM>iQu4UP?zg+^e0a{f#Uu>{9snzu z$EwtmtftLQ(otNl_`kG~U!*VWbI`n-hS5G3scW}mH42%T=Cy47dhV+<8gHq z{xkzr4vsO-3CcH}D{QnD1n=6!;^~OYOfD&X37z55J6Dt(^}9C(n;m=SXH6SUIvDe7g(9W2r%`zz_|Q`VfcOS7XJ@>hUdE|C>_!O;E;XmTK|J=qBBa0aLx2unhhjj-w&V9QTf z0_1WDtDFmlo}U3<4ixs>Y!vqL3{W{xn1m`Dg}osIZ22infLtzxJwg`@eJ}$;9Z2wf z*+}rS8K80?K?#*bf~hVT`g#V~@{^zdxlj_!)>w@5xa;cI>h0NJf|u?*_PV*tr2qIA zFsa;s9OGe7F60&68jkWJ8}0z%MSc!jh9r2A?O5mYc9|CuRlFm$+p3T>6jP3>rJGn| zBvoWO1x{U6n=L+nW&xY8 zbBdiW9Uk{6Y?#91G{NE;C^mliP|Ts&-t>9>){3lsBClV3f=+ewRzfgx$hReeNd;dp z^lc~>eLC#89~uU1MTZ?@VcY^geb{l@#GJbldW&;(C$O{*Jl;WLbZNqjQFIMF-i^aB z0*_HzCj=gw6A%tOPQ-s~;Boh_9)~I31PvScWHq@m(o1U2(vvR1!IwBsixk#6sar2K zk)Cl^i>M^8w^nZld|RKI7=i-^a9Er$ATW}^vtchRO@w;MQ1_ci3XTr41d7&N`z$f; zXs*S=xL(t9?MZ+lF5Br18{bSqPcG~x=T&p;OKE&AO_&_(-vXbfk1F3T zIW`gZu^ij|tMia!V+fT^Nm5g}xb=4DDap;PgUZ7%Q&g=HiF1RuVcAt__hZg6NHt%X zm>jS6c`MdW)aq01>Ix6uu2>I=%$o9Xq%yrCfyLc+4L*nTQwE!Vif|sIoUt&jR|htS zjCLV5$2W|ozLn6E3y)fC{&zG!mnQPC`9nC2^lWY-Kg{NdxQ}J??q59v**racKXlh? zB!xe8*S$#N_yVci_!B4{{_5v5ngmHMDe<85jOLaSZz6n+)kfj=iV>MWq95PEdBAoh z(DIdu#uOZ|#p^8ad@ab17JUQf6NTO%g42ggdela}>Bf|ItOB0}wdi7u^&TSGs~l-y zJN3q~z8M7P@EQ#b5|oSD3DV}|pgQM7<2~cYbDkE@`7X>PQLoL4v!LPF#Q+xO zmp5nHQ^W@yRe_DZF9D7Wqt`~qDjK~@6M3XjKMo_kG%}|qER7OpCRQ4C|LV6<8a?uS z!)8AT>Rgg*x%2GjmRy&MEZZSBLQLvyy*iVT>GsLyMf53WC;5)yaJX0w((+@Fa2R8+ zU}1jwk=B`TdqQt6ENQ#3}GCh|y$J8&53rGz;FVJVS_|5z!}{i`RSl;}#di~y4w z&BesGI8RP)CcaeNjKvoz!Q1d61@avvm;y`Hcbtp$Ylg=^E0)MLBfpjK7{ka|n4ghP zO0n>GFrgqQj5_~g@)ata`Q0ynK+E}jBcVo z%;<^Ok7e}kUp>LdITBCKjQo-s&Bg2gUKFoqfZ`U|1r+Af>60nh}`uUx3(DAXpOTRwyk!gesg9Qlo})LcR)M z;E_|D7FEDh0>MkkeIsIm!cL4)3)Hk2QGq|TjMKKf6AO}9ZIt%3?OSmWblUc9_(U?9 zp5~NHz8X*G5e2abOtQvzf?X`AtAfF_A6Ki44w7Xe>r?xFj+_ zSY!FfHIcz7HmsdLpPO1okaZyOEnDC;&UD-q2p2L-V2zEWGIJJ0%!%KJASh*Kx2#b4>Lm8Sv$BMzE8O!d{yJDhCRa zP-UaAw`G7WKZOa93#G7Zjm4Z1JjKQe*EUvfOW=#rmrjwMDXHSg#q|Y%g0GyyI$SNB z&W|@oBd$K_LwpELE7naXGXy29o9yF&YY$fFigkGe(5uu(yk@mM)vUKD(h^t8-cg9F ztb1~3=9Q?NIc!jluhJQOqgWriY{*|-yfy`>%*{2>D)_e|*{ zga3>TlkZj&HJDMq3`Yiu+#yIgAw($ck-^2!h+n(KEw@q~K3V_`1GZ=r+PbL(3u9M| zvG)#yZz@R}<#&EUZyCm@V}Z}5F}gHi#tpb08GI}b!-yL|8J=)t(42s9+(07!W8((8 ze-(XXP?IZ@u}RHYYBRy6G-WK^!|=a=7`OF~Y(gIy{BLR^{gFYZAYF}*U|+Pxj~jQ= z2I(Fsmb7)y&t4+!81}`&*<;_agx*|uPfoIC-ztsKr3sUL{dMrU!}&oUhmoFr%?Svz zZzBF<*|+;wNkO`rXc-eHHJXcwuXCQ9+)V5cq^q$J%fdPum&LW|*9?z;fYcG=Lv^80 zi3H8auO>XkFfta#^;+!d!21(=$}m37#P6i>xipc7iQj|6NYBJ3^21D=i2GP3?*3J5 zkgld#MtMms=HlR2I?qfD2WNmn2k!kMt1+Mh_i!cPwr3y*q67E7E9{BwT+NU9f%LeB zmvolMdq0)$Suk+$md)TVisdc61o{~^?6L$3-}<-$1IEMabUIy$XT~tGPq2g$15EP) z8+*?)<0Y7jP>?f53w1Igmq5drj7Uv4h`!mT8+P>^Q#`DM;c#WKIMnp>1Z+4D{VWE7^-#T8IyP3Fu zCqu(JUYUC)!(^HiuS|x2*LY>DC4wy)NQ4w@K~Hlk*h0s~k@=AQ4vK8CaiY_-;TCf> z(osIEs5gjh!3a^3Y-7K$!UFBC&W95b`ysun*+%JaU8m{ok3{W|2CQGQYZ6^P9 z2H5g%CJT^Vj0ShYDkogwM;Y+t5U%k3Y!voi8K82YFbP#Q3Oo5`XC+j?trG&|LMbd; zV=>_h5xUZU1jTNxe{udo`XlgBGqHi!yXh>Y|WjYTCeHij?u zweMk64N5rnU{2WEu~7yrc;j$$8+ti}#_bxo5Xz35y&0yZFU`OK2|K$%2!nsOCK!RS zb*v{h)h+!ldRfNNFP3G-9K|k3(;iuRDgsL}@YmuKEz9Vs&}ErM658`m=2m-P&pRBl z>ny3(+s#_FHFF471=m7@ogEmG+k|{&Be~9!KFKu`SA=;Iap5;s<8Dm zUn8G*0sdyVdPN4P@>}KtSj+fG2>M8{%v&@caT6P*;&fv%c2fkK`c1@Ctle}ol$LHc zof{`4<@vbx0TA433W+{tGldPXfT5!-CS%}2{~tn31P-4Bi^-1he7)S}qJYlfsb&+j z945=DQu<8-qdJ0_hT5=U1Q`>^ma0rnj)NxjDn*&3jG;fuCMT6bOBcy{0;nlLz7H@A0r?gY$Qta_ zG7S~HWmEK320-p9()({;#)fJCP4g_Os@PjE!Yi6f_M>?T92hXkv08hKm@zQJJi(45 zfl?>E;`AlM#`lWFhTanU4m6x;aiX`x5TUUvkR-OzkpN$$CLBVd*}g5KCRW05xbPNJ zA{R(e^ReMP6tz@QQa~=ro4UF_8{lIK8lbta>llyQ(V&?TL8x;RqH-S%fM+5?O~+?u zZ9>yAPGcc->|(OXrM}+U<${+}X@-Wi4}lvbVR}v4+Fc2V>2%%N#ahCLa6LYe4}qQv z^&tdnl#=`hyYvz{XWo-d*<1*s*D}2by*n!H$^l5#I9%eRXWpl1KH?@elSd(fQ~fq# zD%PWL2ue%$D1=XY3P*rqMcRt_0KmbW3bqVXeuc*-$=`_MqXq`V+H4R}639;{*TP#} zTnl1^N!|rfqq~Da*308#m{X85b@y>LU8&Sv(yA%gb2>qkn4sy8FeE(!{)VqJ0CLZg z_BVV58>ZEvW@J=kztsMQ?-z>=y-xclXgJeSPp{Jup*h!Se??7{>~C0n$Q08BQq)P< za2|>>7U?pAF_XXH{DKBpyuSg}ae}|$8~{8M5o$VqRMsXm9pf|>LdPx!o#k)ff|pZi zhK9Ajfmt*P?Z_X{3)d*?n;1)g}jnKF5)v;h}^d;mC?maX6$RR7|cd`HoHAT{bq0bbLG;ns?Jy39I(o zb2Jtc2M|F_{xL*}TDAKJe!`A!bQWSPV89y5wuh+8@cr5h_>S^Nn0Ck5M>$t72V&RPmDhT&u< z#4f&ZCrp}uFC0|ypB>zn@%uTDFB{trs1z%vu4uQk_aJm%y0hf$kar^x#N;P=06^e= z5+)OsizFPwp+sX)2+g$}!+quwlV{0w)i$p4^0qBs^`{aRdv)&X|Q*lQwNI>fa-< z6pZ>0_(X;sJr!!$X(W{#j7mEyZMarDvw7znj2d*A+Q6H8aVvU^8BDxzXjjl!Qs#dO z6ANl`5fCb4Z2k+ze5u$xk8Sr;ySq6UJ!{}OFe6IO`5%Egf5~qIvNS@n{R<$wbd?&` zh6Zj(sh$fUa-|v~N2OMi$X<$heL0IUaG^y0jS-fMV%;9K>ky0r;t540V|BDLH7;%d zzXS67_6#)992@X>z5`OZg|x`H^g^6xw-s1AW&C4Ao2iT+$9l@CjQOMpWo*n`1j&l{ z;k3$lBLYjx_(}Lg%9x&tRmK65%2UR4$(SIzYIa@he94&VF|8^NR*nwmLc*DCRi8=P zjBamI6}d9wMT|@KGuka(m+i5;n}e5(X)Mp4DvQ9Je;Bc;K(JPayP>pnRTjQvOrwT0 z*{uKr*JPX)l_E2$RPmj}Zcgu#*8ZMBhVeI)ZrX`8Df-0nNA zobG&l&iTY62Ag5+bXmy3W49`jte81g63!%^9ZdpUBgIu>y6LryuS?fWzi)SU0?|aI zJN*pW0x>66O_QBjCFDHM>RW%ejpaZn#cYhY1Qos$ns>9n6MXA$r^c*k%R+B~`9it) z_>35W>#@ymWPr*c$WlTT4zd(izOd6D5x2m6KLc#}LoEf!mXVcULUbjpY>mZi+C)e% z|80n=So?4WN=vs7FYKyZ zL0LK8WVPwF#wyLKxxvswGM3(`8Vf~+YgXbp6_E%w2_rP;$(Y%L%WsQ(thv+ zu(V-I7$vJ)B+3|{J$y4}6i?yhqJ zQAniWeI_Xdmf}#&lx=yd^n^-ZgiY^oIXTqTOE$B&*r+bj_`V66cT)igHqt?AtX$)} zT`oQ*#SmPL?|U*p;DwO&Cgzk+;+200Qgax^UQIw1Qy|tVDEi=>!3%u3U z1TUaHCT%~!MwUvCrrUwsj13FY5;%M>>&Z<7TUI!q5MhNIvzFTm{}KXAR`_4x6ItQ( zRIC*qAgM$ve7rGS8L!<@h17H+nUAZZn}Q3yiE4YSF|ul=v)RQ8w>nR2e+MexVMo$4 zxZUcwcciUtR6l$v`^K9$UDU4L4ta)F(s0FSS8nO^HjPwU!-K8bk-^qvWf%ejf{NbC zEn8rNMl6tfWw5pJHBaaDLq`6b(VVYl|4Bk)aSqBu8|Q&Ej|xeZ+_euX2v$W{V_7J& z3Cl*hI%w>BHmsco=G5ZKq9r4_UN~L*84;CD7fM7qlgCRBgSc^v2+0$-6)`#f5(GgR z1=d;r1tU6$Ivm<=mW3ApW*Hg(_<{}naqdHR@w%S}&AVwGi>S4Ic6N@&V(hc7Q(;+y z4*_SDZl9S+d?RR^cF?x~Hn?RLLFURPdt9QFjtI6k=uwEL?=XpyWR2z6OXr;k3&VgU zRy?MSaoUH}P8P-u_(T>4Jr!zUXf;~SUi$W1r>f2A!6VIT^=Nj-o>P32*<)I3Vvfb{ zupwq};h8LEwk7t+4KpaLy-qP}E7L|;HoS-l?xRS+v!}C;*xk+f`HghIg?6*U+BQ@i zR=A;J(z)^-o4tE%bOur*&X#nz(cn4Id|_($jvS4}sND!^@~06c$^x>~ZUst9SG#7+ z8fQwBO=s)5W_z))IX;m6cpkfEYiTS)@QPJyHpiXBQ>>E|qv?z7&OqHKU5rv*CtoW}IXI5TK{|I!A-7JW6 zLj2`x2b|f$9R;ORL9BFk&Or{=e`YV8+th?!54M|)ebjp~J&3j`Y%Lb8!=V> z+Ykh$Vy!6C9?gY(q-Fsd(w}D;(wzw6bJ7oK(qTy9oD-L3kS1#EcBtkeYE740p?|AY znehD2U(GrFOYZ3M9YX)U0L_E?47;-zqKM>xiC1hY{~-fx4$f==TZ~ngP73Kg4syPf7hQxd9d z;iP9}fGvMGsQ|fTQVSa+YLX&I&8VtsNm4UQ7^(GTK%4_J_CoU@C|pTxAOlnmq$Z)V zNDXa0j<|*Niec=U46x-VH34$Dq_$L9xe5op*2FDX9a22_f}y990X+^=cSsOaSo16v z=D7k~P`!G|;A>=n&w=0te1*s48|vJv)IRdCk&mi|_ud+exu#JcpEmsX7}U`Ara%NhJ@FltUJcjcR=wV4 zwKC$3HX9S(_5)8_g~1Vc^jb&(a0m3DP>^S|l}zxOQ}uptciV%m>y5TI*=V(DL*o!W z(ZGJ70VoijGk61)q2qB#AnUc8l@atZfU^OjEsli4Do&VDF>U;DHksVl9V0g)mvCXS znafOL5qRNVYI5anIk5M}{o8kXy^-q9P}YWL)~mF^6*e^0u7XQJUiRpw!7=xHVQ9l(M#ArvUJ!~Oq`D6WZ4DK zN8*8>)1iXUr4lMvT%DZ(DtBB_&=1)w()<8-6|@y z`uTe(EoW6DmNU4p=|qVnTIXB_lhQGL-5n)-WUPUIIni2@4fsfb;4(l2Zmy`;_2YYy(d ze&>OMJNFG4kb~Bt+V;)QTG^~lHmj{_y$xaAje2Y4fOqrC z^*dJfc`G6J=E_6xugb;>MfC2@J}>68>+v&jtEcs)e0`^JAlFr!HSM`6QuEiL`3#!> zt_)B)XnqNmE3RIY0V)U0FQFpM|Hx1g6A}ncoRF}ze>N*4LNNFf*lnzp@iZtc-O5N7 z$z*T54dCGRhAncH|8LiEA@`&g|6VYGwM|51K`C<4XqPm7d6N9z- zNcDDz>VlI>MzmJg18`Op;B0vpS%Zn3uQ47d-7fjE-Q6r5Ofcs@k6jXpb0s{jnEliE zWU9rt9W1j{Ra8~1z!bZNSg-~kvUz>jMs!yr!(of?2hhCR-i5XD)d4F1M2%V5%@!j0 z$D)Im5-P+ihK9u>rif2P-YzE_7C`d_qamA~kJ%}WU^oA}NEwP?t=|3uN=w)FkJBPM zN&?C}Tu%h#a)lo$&VrK-$&E&xY%owEEP^j0ZpyX@cqhUlFd*q>5iAxtgW??#8wIEPZ6m~EUx{DKUU&p9A*k7S zF49t{Li2^G$O<)PSqg<-LU4Dv__$LH!8Mxj#TlS-2uYJrSY~e zXhH$9Wx%+&MYIVj2rFA-F}7EP{PGVYrWEsAz3qn5(rvGcv}%l1GSUEh0N~*USiGiC zR@lWUnvXKY49o~q>{>=tB{^q!C&CmnAjxfteGvyirr4M8iA*tinp39OHJDFbSYkud zgLQ~1%4~y0C-scB-1@C<%QU`L7=&we+>3)w@Wh;9eZhrhL^(69e!z&mbkpje?CxeM zRi-)9dAu+Y_*P=ovZ)s0S^rS?=dgRSX_p~iS-wdS`|U1a8QChWGmn`8S9Q5X#btflkL ziJ4WU2JH=q#o`N9!PPvx#+oFjL6l$@H-ixa_}!msIvJNUYP;5{Qd<2vSqqt^DhWG%hp(o z)fFMq{F@O|u~yd(C@tOUiZzmye4${D_X8;0?ut|@%JP!OTJSgwUloc*qiin&6~gwq zno&`L?PVXZJ90JbMTm1VBpC1!j@(RC+QVbwG!2;#aAaoGLj{WGW?GZg;o4}eI?{t~ zVD>S6N5^F7GY^jX&}X3}q_fs56HgywXiBvdjf{x3PP5ET{=rffn2K}-X9;rpFvAm& z)0Wutn%iSbuHhxf5qM||ZVV5lpfC&AbbXD1k$bv!0YGAWe~k@e#IYe%K=1lDagc*! zss5puf?ogK{Jg6EBz)?vS0LK!h4W*pyftgQgLqO+FbO2C!E z<8x`kWNH5b_&n;Uc??TG4Tq7QrA_3ASvnE-u`J#FtIM;|GNZ<%UUKpKM(5d*A|uT2 z8KAf&Py^r1Ds`S7G=VlotUEGE8Ep%i_>vG@=}oL<@}fjRn`Vv(R>EfTRY6E^LjDt53nq7t{ z30-qK5_%z=o?#%H17X3}Y@ClXG`u=!nEMvO96djFg0AKd6M0OOXeQNU!+@+0x0EQT@jY?qv3 zch`CEoQl0P5E(c`tzD7@dXgLtms=+p?g>(^M&QkV9O5$8C%XhnOZUk>I+8-=7Wi6# zfV*N%@>Cw!SR$9AULWu`#w*sACo^J7aJ)Lqf$UXFVBU$4zy>7o5?J^nx=P@!I0)MG z-iA*kf$3@PN#Nlz$QU+@5?J(CrUZUYh`!|rE9j3H@Pb@;a5}u!u2oz8RM1bRRNwz+ z?@a*gIEsT|S=PCdCHX$EVSMW8T3J58$hK_x1Z2y$Bp)D&_1oRq-8XuAZ~YEQ3kYO8 z7z-W*@B%Sl$ArUN2ErA>VTf_K0|W?HfPf(oJ{+46_<@{%Rdx6D)Ld`6XWmNdSeV&) zGdj$2MGo`FWcXGC92 zhwV2kpfVV?5-QVS`(q2J42G?Qs_S6mBF;xM>){+kvju|g~O%mlvs7&Lf zPOyN=AYRH6S0xLm%*Tvf6xY)&V9OuHB@o%$x#Fm}Re_oeqLaluRa_Mj^M!uQri^PW z&}J}YY=G)5G`;N>P#H`a5-QUvV}}J)2JA1P3Qrj<7$e>B5{=T>YXNe;>4IR$t;|gj z-xM$_Sd#h;7I-r!wdt(zb_=KsW(7-JeaHeTb6nZY3V&k(TmD%=AhOU|!LG7|*xnek zj8{R$Qdu}6t!;w0Q*K9Ab{7iieFP{OV@H-{lI+OhbzA^%pufV7yoG7jDR$&&0Piuv z>ED#GM~-OK4Ldp#Rk^8l(v%;-4s64(Us>@k4>rw+H6e&rZ2{B1mc5m zUQP*^4w54rU71Ra#OTWIUu~p->Ef83kuk0Lh}x90n=3d&QyA1K#$=RL=&;MDQ5D%Y zL|jUCWiBmNO3?tRLDd!sQHlgWzjK*8Qf^o2>>l)4rip@#R_k5JQN@KnYEjS-=!h2u z_%f;0WOqt2qTm%NZJUf^$pBgu+(|t)sUj!}yv^{rL7??3u^ZV%fh0#5g)>)%j^xG% zY{c`|FV*6XD=Nnd`P31XDCE0;brTBtqJ-Ha``%3A?2&!<^mAn+4Uk-O!_SO|ZNl7O0mU|d zE5V7jQ0UDTXxB&#culhfUE)JAkE-ypZ>yRsEv$UC?LTD`ORd-;sSP?iuwoN~PRKfW z)29!eF#{%9uteg{)vI9{Re`f}-GW;2;)|`1JyjprG1<@{bRypJ4O2Zv?F5fd= zfkRKh%D8%StFZ%eK!8mX4@@0xmm3gJ<>IlakTe2Kn{ev#4m_>3;X1p@)e0QX3KKiM z5J@A3rd_DLFsQFxbKY8~bor)D*KAsS_A=-C8f@_f`xama544bHGxftmi75xpo^|{C z6vq3eYq!rjGefug`UH};D&E-+ck8dZYU%c^fDue^?rw)bv#k(V4BWA1B}N#-%~>m* z{{H^$ebW~?YXCVnuHUo~4wGAb)-vakDjGS(V!*}BD7!1Iv3k1&X8OTuxwZpN60W)D zJ8jK8?V4bp{=Pmv%J7I|7d2uWtj<|yo^|%BGoP{Q>@`XNMV&x*Dn47~+^mQ8&4ICf zGYsyVdq280h&0>!{J$!+tiC-(PI?RBtnR?^@STOhKB*Rjj@_qw%cs&;q%>fm0WScM zgy#SuS2o@S0R;2rjrup6h{HQ}DA0>ndCyezXarc~k$rzArhrHG-QA-}fcGp7Sr!UM zoZDxyAl^$D4uOo{y_&Py3lb%`BR#8@GA_^PJ}wC;&N9ixn2Pe(3_O18}W+q_mu5;5P``)pgGwPRnkGi7->ON1X zvk+9@0frWOqV{>pIwd(mi0hn^oi&Bb&GG@`xF7W%ZAS+=&O&Cyp-pmeSY}w%uJ@b2 z$d;~p34|+wsa^uH{1I%Fu{VtBb9WSKgVIZ(Sy*w7rBLTM9W#NM74$D9Tws4OEEfYR zNGQofU*Hqg=MxL+a}J|fCkUK@@$5JNUFkJ32`BKix$ROYfl1gpE2T~o(RaYGl}i*H zO$ayXr?kmvQGg?%5K&;!kqdo;%D<#U?O0T-H$L;IxbToqOFco(#I75kv6R^O>>?-9 z#%H>lRvVwM!h8T@koBhCsKBX$1LN?=wci81UhR~FReO1$S#LL>w*GMlIx9EnsIuT0 zpRrA6-45M(XxbS?B50nZsIrY9IIn|D32`$<$-9BS>D;RQT$J%OQmHx!t?JfBTVpF7 zb-ee5OX2ix`Y~1+X;CV3xyM`HD+{&!S*ZAYZ;|otDL}@8 zfRs`giP<2gN~t1ZNjcAd%+T_=-lF9pK~~e9FyFF(%3vpqgett}WaiSP9B24|Ve1hK zxbp8e5#XBWdFBIc5ufxF9-{0u-!G`j2>uE@XDItm3zQk`K>WQOgUzodueFla3kD1( zp$apYIQ@{#^f3n_9%}(xekKzj_m;^DJ!$hy3p5!p)=H=zlmb)9wax-61ICh2*)i5t z7O>@KECF(F8S5~nmMg&&6<#`4jSWKmn29de0$&CkR<`4?rUg_6944W%8 z0_5Iu*l|fKy<}!PGUgLiTFjZTB^V37(E_0cEckjm7JR1#R0b?4p^C5|F045MXVD{u zv5#87mY)R$$c3_?U1bSdf@4qVnCr2^JEy zQ8;`aYt#U=Y*N~Kb?(UkLWHkt57S*i8(5L#vj}_qPPh`zG8im3Aod!9v&znBWtS^A z*>Mg|E6Diz#}<5@vcF7w@ONuA5WW5(YsqYdFLA03%p8Tnz#PDHqG`R9F|+3H5m?Hs z`3Jls12f$fYGC$!B%vMhB5rNeo~zfui5Pn)OWs}Zcl)H5vOTOb7XsQEkWF%OJCxr5 z6?QI1yI{54YzgzS^=Xo8O|8qi&8%i+--={ll083UlGUv$TPy{2#hF=CQe-aTNaJHG z{F05Q!*?350P~nn4~sU}`NXs{&TFCxt9-28RO}^AF`FwYMURmTSvGAApQR|WeU?pH z-5Y34r$O~*Vll-Y<4|Q0!)KvO<%@fZj|)T>Oqa?VEub>cA|+H2EfTl2Dh?ECc#I8Z zn+0t7wMYT7o#H2FUY(jUfw6kCRBl_~%V5OaV#i^(TR>&NVG=4k4ttFSZ237%fLtht z*;SUXPKlW&y{93j64xp7;BC*>DaR)&FLHtML4blUP{PWGTA4g0v8uQiV#Lnt1W!g8Ql6?e|+~D>RoZOuqwfgRwLjew4NE(05w5?AtuxT04bw6Er_Q0KS!Z|Y-`h8`ymf^mtascvRsHv(IqQHH0axOR;`lv8=6!?>SJh;-1Lx#h2!hzqZ5o>Xg<@#-1dy9=^|^KAKb!9KPPs@VP;H znrpBd*@thC0O8@AivPsn+x@H4aQJp*S~iH&D$O;B*BBEg_aHu7d1d7uK6xa!|I};- z)=t_izS}=R?&w9r{X?w5O@FTWE{llJj+IKT8+6z@LpreB#dASD0GI2AK5AcdQSze1QH!TX_}(W zF!3d!PxL0k#E*&{TY3rfk65wE5-7ZcKLvR)yiUgrRxPC``b!ugp|X6yxcBj5`>vJ9 zM{T)R^9`bJs`-X(zGD*)d&6+Ju%0{%m0F@P_ONkxskWzx5XjBmE6$rH2SMVosf za71j-!V0poWuvYlSu}oOj;KWyh;CO3y(gNhj~J<68pXXYnv!$~1BdFZP`%lVm=eOU zmn!RR2*W+S#mC*E3#K6q@3DZ&z`-n`vU4#1wFPYX9n1n`6Gg(Dv3e82@C^%m8H~8E z+Hu&AEub>sFbS0%hdpKiTYe4`AQ#GEubVmJkQw+dBE#mX8C{9=Qe;Qa%;n3~OKBB^ z2TYdF9XFn~Jp&pZ3e|&aAsj3>N2nqkHuaFfceDk32AnV8E0kb%l_kWS#Hcymi;%Sw zV@`(QZO>y)PDoZoWzfmFKsO$A5>X#j)X9m-mBodf1iCMR6Gquk2X4z834fl9I)TKD z5MBbNDxm_gBbLy56}D=D`X2N{+gHO_eVqlX$N8Ou_5m`;jA(`t7(1V}WTtD$+V$F+ zqhGA812jssDrAkKzaD|5DEb@lj@H(6SLoW>^O4lMDEjMhdDU!{8!gI-ikp=OAkb-` z)f|9Cpe^gD`sbJ~x07MWy88C@eS;|bW@wxzLs1H+wZN3Igf^A-MEo3VkBqpD3o*eg zBC{Va!)~=zE)AC_nirnCEM=|x)O2F-5#FsZ8^?7vy0{f9VR@8iCA=frT<6Qv&Nh|Ck}>qrFAU z2L*XeEea1?KxMF2kWksJ_r75PTmJQ)0NGCCmx`3$6p=9KmI@Z>I@c-2it^sVU=6C6 z;6MI~@!+p4Flr#LeqqOhf3$$gfCnX1VIDjoS;gS^Oe@H+JNFjzb$5P#72PY8U+pSO zSnkH?GTvUKc;a$*1m5<1xw|a0<|=}{dUtJ)na%>=BDD-#sOT3mEIT|E-7o{ z=$4Gru9P9HBt7Ur3!MJ_6Fo3NWGJE|+b3)stg#peSr)xdNEKMnw4b32XnJ5aV_d<& z$h6E!i=WbwB$r~vWVq1mj7G#>ZpK(6GSK zOj?a5GkVb0NJj}j&zLf@3cVlWMyewFQNo+ms+5Ov`%huO!Xc94j7fJ-dFOc5UFn>% zW@n|=Zn>v8kOSqEHJBY&-h$~U^`uEvFK7OQ74G|xRm`Fy(uAZQ;qMkmiXY+lGO1OA z5e~;R@lHlhn*3}^OD4lpGJzi9pP~MlR1qBE-Yej9gZ&zRi`~dR!h^^UkMLC7Cywy$ zUtNviwTky}5{mLPoGd808qO9(zQza0*@2(H-O+;w(^}6Z4emFlVuCcVfI^3bZ?T0! z$48=0lIY1u8?ibp{9>x2M+XniYb1|&lR+fWua&XcSh0yR77hzvtCr5{NO!)RfRoQa z%&2!hf1^LdSFyb938}40;Yp%%@^aPOa#d%jJzt`Q0QFA6o(i{K$@|dXvvlsAK3%V0 z0S)GPsy(jxEG?EE9|UlO@_!mstTemhNL4_&5bh(J>+zGM*}!64>Fit=0Y{6K`8)xf zL%><^o1Xkn68#Hp#_T+0IdF+j(gZdMQ}jygcoIctQ;nRM(fRGF6x><#Q`7O;qMyV= z$NF>(b&Qb_zvwX;=L<4kPOw>YFHA-g?(!bSGxm0zHe-gAK_tIP@DEYml(y z;itPoJ^a42tw+)G8_}WMYLtg7wNdczPc#R{>C_Z!xBjK3ZvB|Xd+EUX&!8p zz5u?3XC~|%n}9F%g|J>EmSVE;-Ao{G)=!XQd0g)Ah&I=Gc-pz#W9XIQYoDoU>1EF) z8SydS23#O!nHVH`A49|@+WOxDZ+mX*4`*kM#nKsg`qdW!9B$-KWL9O}&o*SFWY@`G z185Prdn;o=&<7Jk-m;TQwyMQGZ$yaw03?YMUe>^_f5c8uVAl`uj>JCQO)If~HHxtb zw+Uw~fzTfquI#G7f#Ac|QvVWDsUK}StI+R!cG}6Tn9h>CFgt?loY2e_tu>nWHDx9{ zCY}ZOM3z*D&13%`8`nLb$9@xS?g_*bv3scwrx4%ZMma^MXzW)guU0tpEA(2}_NaPp z3plI^(#_BYY!FB>AF4N70!1ce9fLBPDvJbu6`Jw&^xop*WYGoF;HI-JpfU(7kx+#L zOR}B1v)%%>{J|muWRsO+SH`ldEFoAVMtXU(5L1Z?B z<_M)ep4zqQxS)^#PK5UOI1~G6+GEI~)>*g7ZM7RUI5SyjInFrv$D3p2h6oFhX9@I? z5DWy0OgMusoHYn{wPYrFBRV!Gh0w7B^vbPc z--f`Fj(t1ck&aDwh3eRzkEGsho*?r|R8g}}QebReiD^8urak?v1982zP_>`lRb<5_ zFGx|gX^kBVTyRTPVkssx?qNf@=j!&|(dMS1*(etGYRZiqRC|QjQkPBPR@nwr$cLDV= zX?p}9)zrd~N%?-AW-Wok#jGVW5gbvzIYET-9iUon<$D2w84fZ1+6Hrb42DO)~Y4%_d~{@&ASd!sX&NKX=~wa&!@Db;XC-i1oGjL(p)gdyk`RXRgBSl zE}&l?ZLag+v=Y!U_*PP~_kubGecqc9r3!?IpnfU5?YW>1rZ0-Y53M>L06@6Fj$utD zxVsI9hyV{DK?v}dF-Gf=0OySe0Um%Pw*db%c7g=>XYh^$INkL|fJc}o<%HbGN@9N* zAmlDy@4fgeku^o_GE`>v5M-EYPP(xh3C8a8{?13mSAA5_T@k3*hHzq>tv{EAQBm?H zpiF1ZIK?vpm<%=k^RjohI9vEl^hY3RY^z|&vo4Qf=u&(}7+M58x|bgb=bv0$@^0gA zIf_Hi&Mq#W0DatWm$SFfFU~b{bL}S6J z)Vg(Y*<@!~m+tlZ)yAqXF=W&oy^e>g2H5ci{-(3iZ>6*x6D+TE%I#Ktpgiogo2?7C zG}^G;P^D@NI5w^XiY~i#63^tG0M6>1we^BiTkf9LT4yPtVClM*&IQA6b7-Jh869Yj zmxtW7j$g!Cx^5jD5ZUq5FZdZtZ>_9B2U&fcMMgAUyeWrO4X{7xGEsb_=KsoO%+fh*J;eSq|7N zdc-jH8VlI+JM{#}y=ApRl0m=Q0zC$#dxv1CusBe8pOx2Nc=ct5Xhyz|S-@u?5(IpO z(#fu}1m|nl$uiQ~Y(SWy0pw|2bd*W&-kCFIfI56S?twWUDMBWW@8TW)ykpWUsaI0P z)3)Zo+%6P=x%ipCMoTeOL=#lqa7nr8HrG09LCYe|ckRtDjs+h5Rs&7QgD~U{43>v> zv|zUeC}jP(-q=i!FVRnLRzjpC#P3|$3Kw!eWMK2gd=m@~-?cr7MXV-w$B3u1KRZZ+v2vSa-xLf06|*22cgX{~6jdbKG|3G~5x;qbI$0 z916|Or(ZkEmD;5D?@(E1E<9*WjJuN^X-J97`~hd*)F$_P_aJK$uimSe)O!p&6Tk1q zh;=4qUtfeZqeW#JE;s~@kiE@TVzTQxZg%!A;63S=snOsFTJ|L_K46^e&4{ZP|($Gu~=!R`Fk?o#WtbPt-u6|Dh(>Nt92d z9o7JXPQXOd;UY-7zPvgVi|CAjz6s7a0XyrLC*ecQbbF`IP#)XmgzpOdG>@ze1}LW?pzQoxAk8>z{SaH94l!_eL>P zD>|5Sc^+{SlMsYq5j9oT2(cfb~XcGMc-q9pVchhPTy+W;62d-X!?X}O|c%|)hx;FcC8g8)1=xZi84&NPQa4tA{u#!D2+Fa-3(`VX^qFM>R$OQb!tuI{KaK{^N)2+42 ztxCPtT)NiTx^&I((v=P^iMGREmC6ua(X+iPorKTM-HG3=IoA;xnVU<)p9fwg*CHyB zbwsKVRWIEe2$?XQ2~Ud>xJa$Rf$A-^hO;c7GSC_%RHnGP*a9j8twBOXTEq0_MkcYa zTY5_75-XyD*r_@(Qp$T8HmgQ^q@8*2w%4jo>g+&D&+`Earu0OGzfyk&plC$>3G`8@ zKYiHgUaLR65uyGBASpuqsbfD#{TatQQh(@fTB$!5VFsvW5=W_@cY<*?I+3B{% z>ce2MKPS81qua`=@pL{seJ1ii?`Tk)Wk%cUqqbjHB$A=6b$stC%=?vA#clS}=KlWm z&8FLuJN&zpaxQc>)@u+D>Fxn?*G3_v5z~K*r-9(eurs4iL&J^I!52)JzMKtkE=+r% z{@oF6ZaQ;KZ0@vCB6k-G7r+OK!qIrQg%SedI9)6pQIa(?+gqYU>#EWj#FN|u)yJuH zYZc^T9dpQ9?vQ`K1ylwqorKC%rTdfxR0b-YgepQwM(J>5g&&kH5II{EW@6xL7GTHi z0SHDNjD1Fj98fe2y@UgbK}bz@PE<2doRplT(1hl=J5(8|3{CFu%m?SAh}EB@u!Ii8 zQ;2AmNph}8O@=}WC}Q@@#8e3q%p`}2z<5O8Gtnz`0OZ{SRV0VWk+-z#Es*g<7%Aly z^G9PKXH#kQUeZ)NV>JDD3z`}X+s8#;BJR*G!}gFpL5(uggyR_uTM3ovuw85cmBFx; zP!&FGPqqO2pdPj-L5Gr~p3J$^ln>6gK&Uw%n8pe}+X56P_7eMtEnqJ2O zDuXFQLS-r{-e>`p0sBj+!czvFy`$od_CiESV2?~l&x;<@^Ii*(^Gz27LvCg6oy0c< zD07yi{+tEg%t>uJD}2iWDuY?U5?7B{KxK|AyIJAa7O>@?6$By+ofYgVOV}?FW0Udz z4A%~c#_oOaw%5k)qvA|#GO^F$6CpEq(7YuL+`&jYZ54~lKo{t%FnZt47EUl>tw@lw z(aje7u9T;N3o9)pcb4g%oif`0`WSf%N}f3GWlN7$A9l4m>zay*L5rro9Q-)_!sG zk6i8RDEiwpy9yE>%US{whEsI^@5D%@R;~@XjxZ|-3`^`fz%aP=#c9^zBzM@5j9CIJ zwUIi}XsF$20L6T~3sSFiASm9cz<&|S_V;aeU1wrMn&F#k`_`>n=fFRpKF|{0NKnd6 zxK}Tm;}c*Cm>B8bQW@IeHcF>#zV^ANEK_gYJ>!*z@G3(oDBCaDKouaUD9r(TFWd(@ zTM(&(HywJ&j2S)@(*+@LY%8Dyj%h6pDU4f7jE8!{t+V2})kM6@v7jSzx%48iyNGiZ zk=ykcx{DAkrHrg6n=^p@n;Zlg1p%9y~%1G-% z;Zq}1sk~RKWBIdE8>+U4-GTB5oKrP`XF@kAGf9fe?dVu0;;Ze1GECY$&s^H%Ih*f> zXmgz>24}_kq55RIYn%?2 zlIEd8l|{T9a|H4gsv`L=!tV(e>LD8|`+JLwmremP7O22K5K#&vG1fa(N)?gTJO435 z%UgPjmU{$QP0bYVw}8sPOd+8P8w6%*v-DKOi|&bU0BK;LJEU^ z%tY747WgvYunX)sY@-EK1{@}#vg5FA7O>^#FadIJIqbNkWnMC~9U1e9DlO*B*b(8LKR`bYf0^~wj(5|use@)EN-5WzaBhg=TExhfu zzvgLOOf=GU^Fbgf+o6zP8&O`Ile<(K=gj76LUxTFZbWYXbZ*_h4bbIM}{{$;ee&NSzXSo7~QrTN#K z%8GV9GwjZKVNaL7GoX4i(Vt>(`Y&J?m_5V!dk}os48nA%M zfUzW0c8s;t0=E2&B|z>iWA(<^bcY4L3^?pII}V$)fXaZwBvf`B_7@hg<>xQ~a&I}T zkc{J>ut1Li>HbPERCvD5o^kw(7VsG`ynwGzI@wj0V3CPYqrLw`)jH84^HX@+Ym3Zr zNoyWyiuolFjhSM?D-&gd3FMvN3!6COOQ7Gv4DoZe#xOCytlm=I0b#G@nh2eRn_;Kn zw%UzalOi&473b`z)pyq%3frm91Y%H^Z<|EU~ zK%=^6VVyaVODaVbTC}Hx-Yp1_kdJ-#hK=jfkZt{hHa$16IML=h)0wWZ)|F5UTi84h zdL7m>La!4e;LeYtvd9RyXF&C4!Z*cGa(0f&5_F6hPV&w|lqBjHC&1fY>ljDJj$El= zYy|+Ag29HR(k_mTts+jf2y|CWohM=c{lRRaS}fZ{dW2JUU{4P2@Q^Ymx?zV47K87Y z*coP!W)eHGC;3IZJ||+uf&~Ol%B&?bj*h4k9Kk}J2v8xnI`KjTmb^YM!aGtY=&o3G z!bcLQ6DEp(1Rwku9)XX*Sv`rhXFR}mzmJZW`{yN z=hw=|IgYQz6JN6*U%U8fI>pr)s>ANMS}SxCUgRwsZg(U4e8IqbowSWOMSIsr+P*$o zao|YXr$PsNbENHwVpCT9k+zear-;|F=h(*Tn=$?HC(|ffdG}nHG1GfLG_ql~_eK0Q+xrr|`Z8U= z0@pje_rUwHS9^a4KfJHvG}h@{*bOeqU%4wRUq)k^!q3H`w_f+04loE`zhQ) zSAPb7u3oa#yB{8I^xlqbyaO-)j3s}Lmv_^fcjCi$;pG?j;k>cG*zf%dzWya%J`6AJ z^!^fGe-JPK4<7FK-V3+;yPqy zE4Z}1KL$SCPoM3lPxe#s{Zw>++q(;x1{sekr(?va^2?Cd%XqokL=mzO*b zE-%H))~#^4886$n!DSFH1KZ)^;^lF?{0=YAem-0_;$;#qZ^X;_18`Z7mq+mO3%rzX zhRY~kzKNIb;)S?#8!{^%ai5u$u<$|6O5|wZU#LG|c@^idg=ECLKc$qs2mxXxQgqIuf(%u1=7vg2! zPPiO~m*F~GJiLsI!(|6v-qL`}JMi)-UVej@yP9yh8!u~7;9P{4m*VB+cp=e4$GxK> zn3>F2*pkeDJ|z-^6j}o+>++n)gqk3c@!(L8&Kt$EqdYot3J<;T=&TIP3GGoTX-t^m zQJxJ9#q=nG6I}ovc@A))?$P=lCB8?x8LC{F34nzy3Gmt}A;7>urB-PT3}hN)9Oqn9 zZ4b7+{}NN`|A;>`;4o>JwPuPxv&5e{;?F$sr%(J@2!CK|KMeoO@D{-zZwXxX!nUwY zlipEqyB+4w<*O2=$#4dVW3R745(ak&Q+HHq!>~l5bPS;k9EqjadgX|{Ky9C~a<5k? zF$Sfa(+}?k=}Fx#7^xEO}b!<(oELvuRQ*x-Yo~mIJe@70AQ3;V`KLECaL& z14PIHeA6=_x5O3o#?EqUZQm;A=BwM)R%N_eaT_-~C9t|IbKKFj&dqDiJo9FFz4TJb zZoSl5<&2jr4M6SXexi%jo5@-)5^=QZ&S<-gc{m`oMr*9xB9D-=;=l`MSGigdNmVd= zhsq_|=LG-hEE&&yxUUlX(R-L^@S)WSY9oGVjd<-t(by3<`?45iQbnG9XEa-8>|!P>%Wp9dCoSKqX4x$^$b_p4qE$^7Q=U#4AA^@q=V> zWRM^s0lArl&H0y9>q9#nN?qW%wc)0-y8&Nh8LXCTI~*L2=R0jJliD>Ql|lk3 zS4~W4ZRr&;uCph`OewUyi*AC$7Nv|@!l{y*7>P2SZA42f#gJI<6%woVNK}$P#L<5o z(_;UK2ol3${~1M!{T(v>Qj*k1C$94Z6#BP&Ae27>mmUdyB&iVki-pjC3AA;v3H{gg zYKXkHr$gkZ$Pht7PIsaIfnE{g0efP^3jL$C&_^y$AcpH5Lwdh=9Q@hn9WQ=7g?{*& z572DWp`bDC0s~oWy4CDXjXuy}LDL(BQ$dt!CxYOEFW3a}bsynh!aL@`$>qxUyJ*Fo z`s(YOZlk%nQ6F?0tdWdwZOl>FTzwfX4eI0gV>ND2+U3GFr@=Y|(zuOX zZeukly|Q=o8s4lPt`9XEL+WS0F45m;w&YR|Ozx4LcbBfOR-HD~>kPY)9}iXn`ctO~ zs!tV{U1M$oQtpj3>N`pQm)MsPBHjGg6WEaJoJxdsuAWf+Dyf@gYjJHg z4rJ$D&Gd!nu7Ke`p|{OJ6Y}Xm5bwVL-u+{{I&;P+Ks~QbdjA6t_D)La^Cw}ODbiCXs!*NeAifM^}qo)i@Zd?wx z-R4RPqNKEzah8KF4!L27w{*tbD!hhwbx3Skfx!k14`WWuYJIda z6dGCw8*q$$7rYn-6AAM|Bxu|yJuD*;FG3=U!?>CvuP9^-6)Y{$-vrYL-Q{QepO|}9hw-by3W;fc3E@za!8yD zXK9j}@9u%@xM+9-yU%cCWW=R}thBw%8E!X_P0{Ehiowa7Du*jfNd2-J|7cDsxf9M* zb4IH5-B=QWg2X&F0oEJL0E;V&o#-lnl)Do?>zBL-xkAu6Iu>p&j}DLYjHjhqQ7jog z1t1FMTnZJ##6j_OcOEpjWGsjvCXG~+6_6CSaU=Ecj3f0K%a{AoHI4%nhe$c826YN^ z92Hk1=Zz)dCOK zE7b`_m#D~I60S!T6@qeMun|tcm!u#g7Xe=wAmB-gfbrd8)WPq1Or2vhQs-h^yx|P2 zbRC#o-SW_woQGi+*Gdh|uETC~s8Jb&8GR5In7e&3DyWdZI)q#(+Ia&gnl@d=2^ zZYelSt-8sp$hk7~j&<&x#dc1IKE6F#abOv9BB&O<34L4{4tiMuuLe#wK#zIJ{T{ zEQdkp^ywZ(f+G35l#obT8SynzfVkEnk+jTxG9=PIB$5#L#14u4dz33*#mg7*@;SKZ zphtYUpI!t)9H}r36fEq~fW>i`IbH?}TgJ=W*Qg&Lr}0)#yAe|GU!nJn|@J4?Ea9{4qXTB$N9lZ z-VOXs=VH-B32eqAm8wg}aSWD+cC^56bm0}{Y7>sQA9e@Zqw0s2Y?O#Cu=>98Jl1IE ztgRQE+H&`_);dcG154MfbS}VU#6Yt$I?x<155a-Tei3Ksx^)mG_yP)XFNsyfZ2FEb z>Yf#4N=-=96C$rosVr&e7#xL%utxR4v~V!(sE{V0D*&lN>%A-rYiF`obDiYS)#7jB zG$)Jo%VJwd=BemVkPq8J+;(gNpDVfxvL}{eV$Y4@!)Js9+LgR90LZJr#f{y(8A1P6 zEKhNoG3fV(5d^in*9+$uRKl9Y9I1z_D@~iO>_yOCoV_dK23@%w$_C^|=R8~Spa>gH z&ex}_)P=%3&*#cQs)XPV|0zS_esd(6oHGAXs2(`lG(-IxETA&T3nZZmg?4qipRMtB z3%K&9a}waXubVvsV$a~87uwk*&N<6AG<8b4TLo#tSq&EPc}($8OrCmGP!$nuHqU>| z`0POo%o$`-`nc$fDW84C0xAPOlTd~EY&K~K9BuL$!`b&Opv%u~0_dsGznFh)3O~DbeRQg`T0zMTqvK} zRhE$SrmI>UY3(8qLdvvP@}3F@H+xTmOM*gvD!l3(6TfVj^zNNW+oVs&O4=wp&%iqu zDTP1pnDk2Om0V97TIllCkeX@s|PoB62=1t zys!adA;Te)Bm5Q9EZ)!9CX*dM&jAVVi8j}}EEffnF*aAI?KwOd#*X4hMyOlJXPLeNI|G44Ykb zL@tK%VPKIMD?Sqw19mCPxbkrZQ6@POYdDHbboXP$!HMos){+^k%G#HsvOsoXjz|K# z3pWX)mrOv{^%$l(w*vH(kZ&&DQ9?etv(G?B{#F8>=0wtteI)fRzwh~#=72J>4X9Ah z)JYwZNYjpp37G!ROfA_Ttvjm{;EO(k8TNQN>|$D#(`LyFyT{Je?lILZa}U`(^(oir z9b^rEH1o0JnL5czDU~HG4?F`W8NzC&x<;l4?Ib%f3Tx;7gV9MA$Dsa%6LBRSk<3_P zT^Cn?Nz)6Xi18UcfrxpuvKTse7a$0UbLz41wnuYn+UO*M!FABKo>}8?Dd$&j6O@!9 zUt1Ca9TRiF@z_&;_@!794E!IFiH0{KCYk^wi9y*dh0?w zq!qSC;O~|ThhUDmuK%#S%Z)z7l8|+z0@2;|Mw7lzSpm*fU1f_u|0$C&FJes3=bRo$ zm_5^#IRSES zdG08ZTp`U}@lurO7Ke(fl7j0ZZyDQ-S|HJY?S|~wu5AI80ozHa?AY#h3)u3rodCH| zwzI1&!LJgtLi1jZ)2LbpMOtgZ+aB3~7V!nObg8@z2&WA{{<>CqQ& zn<)w@wjUU@p(v6gV5R7Qr9ve)iKHNlE5L^C0~U;!a;l0S956jr)`9@tOMUn zd>GHAiEp08-*oz}^^-PnQ5t-~NbwK@Bb#cLLW(PW2h*pqV)D^w-ottPCJwS6t>kS_ zcv12`!WmG166VY@t@fSLV7*>l=B!%f+&Bg~e;|nm`1+7((cdS1%b2Z-N{=<_wR*c* zop9<6rzX<+KrSWt4}Lh1{H*F?mO4l%FyXfRbOI%>!olsp>2qNF;#il@7{Y&8EW*cp zgnthz2KlB2$qNfiwU@*h%AcHqvEY{19D_cdcVbPycrt5Q^aDS5cd37ENSPa=qvI`2GM`W zG6U=r!Dc&;?7Pb`{pz~n`I}KPjcX#aVv12lB8%iSA?w@5l$2F`7({`PpWmb^vde}l zshVi!iI)$<708%2K_Y?*!9GY77nnG5DP+KN2OaSJ?uK8O_e%(fdJR6HG{xG1G9iymrmaRK$vq>7-p z@aDqjaq*c6;$l5^BfGc=qCYGyQn8;XF1mm9ynwh!VfRP&-EGeBjA_$A$t5>VH703p zxzXgdxD?@07Sh9aa6zW9!o^3}_{U^O_$8ysF62+&*~>KmlQ9wzBn_fTg5H5IlUglW z?|4N@TNXXkg5*x>p-B~a1j#G08`%X(5dC36l8XIALDK!JZDB!@#QOO~Ng6P@L`mJ4 zsJTT+xyh`k@uCFFh`>bUD32^mZ1j#rylt+;hhH+m@ldhDN^2kw5(N?j2fmyt!SS7x zwoFF7WDqSlzC}GWsUnZy_#Sp6yWj|-KP)&>v7ab7x_|YofZ)i-=!`|v8qOsoK4DD2 z+(P1&A(ME#lpys@N?mPjcS<|U4M3-J(L*g#9O|J-6?sI;>DZ0zA|;6aut-V8exgX}{#835 zQtU=WekCOh%3Shit}(R}$e6&f=TVq(CC>HD5zPQVF+-QzP!c8^DE)cxw2oqCq zLo|ECaQOOSai}@>F042Y=gvaD^%okU{o&flK(b$yWgUA@K^@C6|8-;+vd@6`6W5qb z&r)D(-hG>G6`FUEbcOJ)#k6suFR;0XlUtlDD%N|~xbHg5qlYB+yd-S8UH7h`+EyT{&APdu^A`tm%)9IhMSPg;SwD@3UPxRk zSCH5Uk+N~&Fh(O^R+2~zy<@WR56G8h#@syHq<$N1Zu$^3cK3Qh(zVDQ_JnfLNVa*3 z=A4N7F{9t&mm1U0WCy|ms2-NVrlH{{SwLkFyC$Iu$F61Ffv~~?y8O{=0%()zDzfcU zX9bu`bTQEmbY%(AYcWI9n}e82j9z;T26K<1*N%#lhBAijDga8yu!V%1iex(`u7bFD zwm=s}IKaO#5e3Y@0`!o$aH<}Jvt4h&nJED;emI-=YwVODr0C@))>6(C032mPjSAp3 zS&b5rG+ouGDgsOUGI!z~sZn%Ss2Zh_)VmY_YnrY4xZ&o^Gt#vvRby5K%HN=7u-*S~ zIhs^kFp#8?wiMaA4XIc}7gZ7Am(h>e{B;N8L$2BAdgmMAF>UkL^pv_5Z%&d+%Aye0edmI#4Q ztn-#si2L@*lJ}~oFzvb%yZJsY{Qdvo$ew^Lu-Eqz|mlJP0$@<9fX~QAUSKzDjeQ9Sam1w zlz3kTDf>gFG4B)LIuzQ_p@OtBSf9&He_}9!Lbj^cY>~DW0+P*`T-K@W`SYm?3nnD* zDfw_BU?p!i!q&WGrVS6P1?a7cA62vI6&qB~gvw!1S<8?02wZ;o@ocQ-KVbOzV#vFP zwifu(0|8A`?qV4-GVq^HRYV3j-$fH1lg~rQf@3nc!$xrLHYm~@EQm{Ii8^m0SS{+* zTq?R-5SL1@&PHtb!xU8f?0mUch;)D3hm!bWVHZ_&k)!Sdliq<3zn|>kcA%u0bUDrl3J2 z!OAg+7Lf!`7(?Ng!6Ed4{6px0_#u=oK0gy?_o(=M$QHCX%Fhv8_8`HUi}Iqo1yNpt zm4os}1;nSnrG?AT_##0r_>nEDwIKaR!fZs4M)oo#Z9%Z#ycZFrj{zu5l=c#cRACx~ zprN=WyuR524Xbw)=TcmgsUkDj?jNT@WX_kG0kj3ft+ygmwzVn$ za1ne_&~TAp%?VdLYW{RyxSJpT4>%+xQz(SW_VFQg&VUXO6tb}Mm9hW z2z05UI0)k96pfVKKWk<6T_A>r+@921Q7qf~SpH!sxUHaJD8b4x43E;jj39bk5F<#iaxem% zVi&isN<9rC^zb`#FIN^p6*0?|o^MoAGBm_U-pK%udPi*3b4XHUX%L*3Ooc36B-k3a zZuMNPm2EwZSRj{5Be-#19|7H!IBJ&kgf< z%=WCXD>wMf&G5YmxvVDj#XV=g#e&suBovzTC*r^rR49o3Bv@hgv#33FuU61&9z=C} z5dY_)Bi3ztzneQ_#@nRB1xz) zg-u~$kHWMt4$HgsBo<<#Hw=c9MJ%j>8Dsr6o!OP<&ib$)A+QfBCNEIul?PP}=_CvF zCPetEDj*yWB=+bWV?5W-qvHVaG$QXrykJgRk5buUe7{HA0x-@A$QhE(SGS&Bl;=GcmAJ;GnygaOw`-3!yGdELQ+G>8`7){yH0&1bZFu*o|_2! z&YMoNJv0V^AMkf@XQc&ciiV-HD;>z52`AveiN>{2XBeV$C>hDldc*B^Zgib7%x^SY z*#&hEV`7q>&=90&ZNe$ku*bdWU@Ap~qlwK(n6O6tKb+p^)&MksX*a%e%K$*V2Cz2$ zJdA$sMd9cFKh<-_=^u?UWHAv=AHj-=)nt$cXZ;xV`~2m=%@Zp1?u0xXS+Lq5<=7k! zup1H-C=5){a7NlS$rr#D)yjxFG%-|lWd%*Aq<{JHQ$&sOx8Umm;%llzDQq%maCC~g z#nZw*oI+Rc!H}>#AsHpAGh&<^6OTFG^jA`vwh*45@`We%3HXNeU?-JUkL-Ihhsg*X z^L(P z(tF5ydxKb3o}MDq1F00sVDUI_{itb zs@tkSU^;>v1!`xdIRvj3CU+mt}ZaftOWyS&f%9aB;mm;e!o_di&u| zXa1#i$U_f$BQV@6;K6>cL)TZ*^;K{M75z`?$E)EAiur5dk9Q7KBp0ME{-$tXJvgL) z<`^uM7*qOs_^=$ixRN#Bj5SkgZ_ZAk)?kZfcuaSeC~U5hx@cr4j9)^{`%offOAIOY zT*dcvf33H~P!&&ZiLu`jLkN6gZHeLL4{tpV+;wniN}C5g+254L4tnL`0BIi31vw57 znEu>?7UV~)7ZTaI8j^~Q(rFodMvN=KCOZ%DMk96@?}}TLk47u*w5M)SE~lz4i}Rfd ze>;8r1=c;dP^U8nV3CY#U|JT*iba06mCjJPIkwVqTSNWMb7AQ`RIb578TMqrib<$2 zw9bxGR;IXZM)ip(af(@>?!k(K3slYq!1^s%d32V*#-Vn#+!z?DR|lHo?$G32ld*bF zcJ-z+i|Xkt*>=+l*X(`aS$oyrNjXox3_+uLlEXwi-?`&}u;$t|=dQh=+-}vI?VXT6 zc4D0{B*9!gc1Gv$z>5K~(~4o~rXyj$RUiBV-W(XOH(De0YNb9vi3dx|`ueT}mc>kj zL+wTbbQi}jB6!y+A@4dXoEnsKZ)sOr6U+KVW%wel2Ks>Nhm}7Y4)VkCdb2|7{&KVF zwj>N?2kZhvJ7B@DUOS^;Z-axZ;6E%!hNmE;N-YW1+Eg&%30SHwVYb4r)sXik;2%y; z(54rh5&xp(ElGG|kS?Gz514v)WwjQty=vHJo%Jgihj!x%b11^W&ttihUhgh9YLolv zjHb?MS;##}r#Nl&9>Z>)m*tB%22m3IMVRjpHI{=*dV|x3rkMwcB*L<_`;3CcyH6vR-h8 zafIar!H+MK2yQX-e5vGJfE5P?|Iq}7g{0Gh{|M2O%z}SKSn$)hjbAbNLx<$O(U(lj zUz>tZi_ZH9Jvhbu)kP82g4cQ>=C5ZmSS{*|77t>{Da1XkC)1V=&nd1wpMk@&e>ZYu zaIvsZEEWWyT>ej(b8n7SLfe>oQsn>bP+4C2zb3Q%SFABjl>b`@(_#*oTN36FPI)ZR zlZoJUSaEP7s1Ym{vQSS1J4AOfPXrg?M3BSq$=ssUg2WU_b+D-KQ;pC>RZN$UCkX7zC~Pe9(-hGLW{86 z)1iuNEEgVrog*aeSLuL-NX(WhPjle4?Ya@Rf(*8V5FN3kL`|?H?*AYHJaNgM*I0O*jOY?(e^x5#uem9q~aU zbuZo(7p=7~T5;#CQyvnNeMZCCCluRt5o~+Q8$&b~;$#{yk4|Eu?F~?2=X_j>VQYAb z8w9<;ZpJo*qi0!#ESu~Yx;MtWjjhSDP@l%`5K}}9W&BVrg9Awx`TaoV3&d7z<7n%g zo~3J{on9HgVJi9kQI7Nbm7tQByfFaQtH32bDk3t|ZpHF6ZND|zT<2ZA+Jh?f7+@rS zw_rbn%HReD>!Js9oMA@2MDc^E9|548c?3RpwxznKNdRbZF|8F>~KQLlwbQ9NQ@Jh9j=j^W^?$@Vy? z7pDlr4a}?Ji&b;5*G6uW9 z;Xew}-ibR1Q30Y7m~Md55`^N(S3;J73S=0Fe6|+(#=8^EM8)1P9Ntna4)wUNVa0jI z{p^uyy$mT(qz5w;tgq)WF&&7)tZR1^)U{v?y9lCR03q(~p7APVL}^X#*S<&ZUeG+L zc&priMb>0Tb>hu1iQP#N?LrTwSVcKWP}m_!_}hqSEci~d?n`W|(5#D;D};3|=3Je> zitB5+Cv$z|Ay?$XEP6;{&r7gb0UXWqR05NPEfiz-Q8{q{?3ixjoPKFUfKE0+55b|}34WHWeS3Lq*uR%?kR@&A!e5&F}8@{~_ zpAh(jw&8ykht6l<;@j}?iEqO%(L0Yu16mS1G(a5KtY|n^V0p5-Aanjv+MFNAWuc}+ zn)Uo5GX?@h*d+KUqLBvh&+(244vUFKXGi;Gv|_LgOj&j`b7!@`QlAn7|9Z5sYNA+~ z`OnU5%+(FWo<1H!E8je8VC+9C)Te{Qa{-9nI{{8cvXB$tdc4D*$_cO}B-55fT>$~65_ZV>ScyNU!jzxg6>#d6U=l(T zkse`aw8AGUN-1RV$@B#qhg%tVxu<+>`k$^+PEhS8h8Cb&5e@*~n9B4r|0$!(I0GOz zU9_oXCss_R7R{=tiDowauL^J@H~_X}cVWeOMgq^GpKf!ENumEY1$8Ws$x(J8U~!~LFW%z#DI&K8 z&b7tym?+kqS)$ zOH*Qwyn>dwykRSwqg7O_Il!9*v#8_E{>dn@(kvMxD zu{@TevIJvgSCWLaT<;P9LMgSqi&)-eG=1)S!(4)l2W_+*5FUM^}Oqm!R|C$<3&_mK}ZrXT* zR?{wuZXzI()U3W%5m96e%zIB2VA=_e7Kzyo;@%w+x_iXB_psQf#U2o}Rr%OxD1 zQ!SU6%Y#ju>Ywv*`_1;tUIV1~ts*ZRy+~H5yF6QcKh zSedUBfjr3`RBxBZy)Pl)K6h=5b&o^L_}$8_>-ml=?*YV@kWvDHN3)gyf#C!%H*9v@ z9Zfn69c{-Ax7BXcMEVS+r#f&Xn>(aWPLu~KqP@3I8fBHSIstpVYJ?&64A#}2Aazy( zQj6F$5Okrjc`^8cb$D&D9o9C&XJEx-Bh>tai>1uIwJSuHlhS%hb^=LKfG?I|79sgS z@YC+G`cmMuMtL}JTqh+@Y1Z4LV=aHrOEl+D);Z#uVo{`ha~q&yzz9uFGo2FOyMQl~ zhPRg(K7Ly$uhMKnmOo93c~CrKY%rYCT7r6-=EJ+y&#Y9YKAKdK!zAmCU^fEs=`?%9 z+hZm2!w8$@0H<+$iAM}wdwYd02~}qL9twkkLrYH>u&?SBu&>BPTWr%#$CVf#F$uuBe|2V9EIqRC?sUP#h?LeqL z4bGt|3^xDx8{OD6=09b)`#f?+ahi~x!yd+p^UPu6>-}S&!wOKjN%IFZEJ zuu1PCLmfH2kfCnT5$*Hli|EkELxcCXj^`;+=U%?2ymP!7%8KegWm4if1#yPN-8TW0 zxK(Nh>J5tl?4O0ee%rcr>zq@aD^)fEB_u{bN?_>KmaDc1>wF&;^e4It9p(J;U0bD7 zpzJBjsNAW}=CS&28M{@kwJNO%6|#mEs%oe#RaC8y!tpcBW_i>tski;Nw8f{sV?a!k z(*tBda6y)vfZol)q*3u}AW8gTMA{%IDgD!ols?jG0O`OCZi5qi6fo2!)?N}4JVRGDbq z#~>KEZtLCa8|bXlE?7ywX0zk zc9KZG^ZpY0B z`Ubbrtki4G)o1swS+lxY8C*S1Md&9W)rG`LLpwmZZK@-v)WJQ)oZ+KXW=Z?lFpSWl zzs#T!ddC(k{}9DWcOuvaV#E-^`xb(b7>LpPBYl2ljslYaj9)zG)H9#VFz7F z64tD}PXZ81mG0dJ+3z4(DC}UtYvB%ms<4B_p&2Eb%rC%GVv7DW*5=RspqONjJIHcg zFdJ`KK463JaO|KDTyDigM-M!Ry$(hXEMhGI8V-!3`*a3I?hb21>M2+;tqpb8Q4P)P z=q_v%>Dpqus2$Z$hl-&`iQX}MpTta&p={#3I-43!vU9uvwBhZOUQC)NPw#j^@)tJxz4KH=9VyDY&!fxaP~}W5s#+@}=vYYNbg>-(0J#cp{3Y=_qTSiq#P( z&7dEv4F894jG-Owu-!{!U!RE=QtSfsP=e|mj7wUqjiwL#6)SMSPE)4SDpCI zf(bPDBNI$D_cLb}o2A$rhQmKC7KeHibg<$)qhJCb|uO0Z8;LUN% zaDbXB?ibGB&hg6zDu(z9a6v(e0@GUQL*G_GO3#xB3VP8bf`ph8OPwDAFBj~OO6TGu ztb~L1NAb0p7}o1?x;`~vxUy%8u znvre7{+_~skvr8RMNsgSqxXJ)(P!823_#P>I67Wdj zJC6+RXfN{6%yeKqQaDy%zTH=lM@pQ^1oIkrq{{Kf1N%ji4{kc+F2D^9UI8bF3@lMp|1BJ?g!4Y%7w5oMZRn9sX3#F&H^)7KquE8yI?G z$#^MN;%gzGBxU!Gt=KGsONZT&a=Y3J%r`11RN19N=3}ET8B;#Mz|E~R`TnwLJ2wa_ zzMG*1sCZzUdk--%a#Kf}k3WqS(?VM_FlzLfoqPMWqVAMn<4%jVu!hcs0v`yBAWXFB zHep|nyF19yyDMOitM76fyBiSq(T6eA?jEp7S8AidVx>xLsM;RJr&vS{4X77OHkbJ$ zA-WMZD2bIAPZ!bODHh+_)A&uO7|=_tN4CV`OD!@um6LZCu$7 z612wDMUuZE_LtN{lPYqU{=LVr8v(;ViSBsAe-QQIO_QmZPjm}+|EhIB1_Bf8X+TD1 zS`**(*Nq7+E&19Dg3>3^6q&|u+IRg)s={F7CG*iSX~5nv9G)?mJTOf-T_Qk>-&3*T zJmObwSIU%UG-k)u`2}?>IE1}JpwjI7o;%SUS1E(|8Bn*G)-Q3cy?5u>R-yS8$yNy8 zS`0w#z2mwGpDrva*3JX2x`z2PEz2m8KEq}fEGL`?HM}F|0o~a<56IR>&I2<2Fsok} z8}igO&>bMm)VDLLC599{^3*jb6fmTLdm$zqXKbs`76}Gl=NE`O2WKc+lUutEsEQ|D z2llQ5Lf{kHb+8+UQ421<>j0kwTnG5hqmhBDX%83S2iA3fV+Azf3kz}`fZeV-g8R<4 z4PcIcuK)TkXNZ?c*g{X#pJF}SGy-#apz4_zlBAb3LtL2-?tiUhWLk; zJ32ud^$=fE;vhI5V~nviE7!oPYI|p8u-;O=NbgXrQy_*SzKPbrDL^UOs2>N(wvUIS zoaXl{fraz906r6K4*X!#VcUlg4Zel^mU(S95VBPx$ zg5Y=O_E2|vzt7{B<|r_+@&7YaZ>H^Q>$BAR^+9Mq$x&H?DZ494!iuN&2>?RrnZ4WR z@efEAGG)(y9o*qhWy)CdC#+Q~Oul3zaxwPS2RHXru8r8!Pr3>EEo2A*`W+ba^=S-@+;q|QlasMxvY%+y zMXfTk`MR*ZDbFmni`rs*E>sLXN;E>^`y`%^h#wRC-dWUeg8GnVoYQs^Bu`E|$x}u5 zd$Tv?<`mpnbX@c0cC0uLU;Ymoj-!&3pH-$$AS2ldB2^we#>H!fbIXRxHKz@(8F17L zwkJgXn(haY>Gshh6FhS)2^6ct$U6Vmk-_G;TZ-jbZ5OT4NV8yjJ>HS+r+U0It9?d$ z{;P_`p&s|Iz>4#Xdv)ekCWF2#%-G|t1$8ZG(Kp?XqdF1r%aI-$@0a^?Vj2s+)2#bu z+bT5cBIOEUU5hzaoAkN9#uX)tinU3fEAn9$O*85LB_JltegG^dO#0u!J2L6hoxMq) z>~Un$C&LZ1%!RShISg$vv=@LD`D&4+jQRB1H+Q9*@u^+DjPTxvE1`U5e5&F}GrqkU zpAh(jHsk*oht3b-;+ygDNx+Pc?>rg}Xi4zU0C8Z=_&8Qzd2&}lW_%Ie4>pQ!I{=_a z@(zIcuLs=F06rA&nBcIOXtYUxPPF3ATMj~#zV>QPiD7>|P$S?ZwKDH#i~Q#e#Txlz zXylt^4UGIp@um)z3{R_~9O(Bhfwl9P`jDd=V5!0Ox z_QwAhI(X+J2nW#kzsVd0CdU7bP<>&>|L5eWEW!BSl_X&m)jJJ@ND1W$E_n~aKGJ2kPU4A|6L8yEw0yb7{_^Fjps>^jL(Umq{-RjC zdbnZ*H{xWFODvgLY6X(L409rHQ9tj>sM#yQgc^OsFhrVu7U zV@va{=#lU_tT@j|5ZeOOVD6IohjtY(=J-)T9m`{ClwAl|8fnstw={mA$ZdghZE5_D zZ57(mh-52-Z!HF(wlwkyg3D)%inXPY>kDE2OtUmT3W&*KX~c5E(s;xh;EpVfbZ2jA zBr^e78s}i;%wQ14h72ACRVpx(MADATOIL9!0L$aJQ^9egz<3Yb6~BGI95RCn^}<6@dO<_JYH|KM(Wi{ zecQmUag(0V!nSgi&k>CWUrK@zk9x_D0GWvUs}?gac@#e5E-GOpKKK zp?b4*Y)XXkOLJ6~V5ICylCXB`4FC|mH&RX@S;$EF0N&wGWu!bhPR_*yD+f4BSU}2H zlRxLekjieUJm<<#u(B`LWyErcBJ5T`?t+%%-qMES*>u7IVO_DSf(_RXu@2-`8ni8Q zTFXX3+z&9^0C9^jXa-M>S7s2A7~)#rV$Bcn`~m|bH;J?{=WnrMGUjN$Min=+S+lT6 z<{uW@MIFifJ*XIZlo-j3@AdfQxQ&P@6Jz7Iso?}YB+b^QjW$T0oJO06ME83W$vo@N zl5uCzam|;9V8uE3@}_Gb_cGd?RWNf%vW9|_o9&&-MMM%8lj&=j%fp{r^;Wqmwdz3So%NbKfkmC&^>%ew#!J)3PO}aVFgdiS3G*w%nbiQmP_^E41FuvH=k5{G zDIj9%X!JA$!=_8_Xuos)=F7H-;|9ttJT;r336u&=JWnDxfd}#+m`%$^7dy7JG5H9n z*i3nhI6-iDPPJUJiMT$iSR88kv>GeUA)h)bSlK$_`pSa3md6dEIuY=LkX{|{2f37( z#$sB~tb4I-6?#fV$`!)87P^7gp8Hs2O*;sGh2qy+&RvVxc2AtRl;Vf){iRqno3gewO>*iG*Z*45H$XRPM~lT zDv9|#B2>kb9ua$w2qEwZ?GgDC98kBy#rKHdlYmDA-+44f&|c!9ndQKGL~yLY;_Af( zc|`nE6ZF}@Jix^-ppORTE9D0eLo|5r$2%rUET$gq0eN?{;?AERlpYXqIP8?TJ}weQ zGtr`z&tr{&&qFj58+{!|od>3gX!r(CD0+GLB3&@{D zQPQ0P_HLLM3V1(85E9)m3j!Rgdexhx@V_@lg^4@n-=TW56?KG@b;6j(sj^5?_}O$m zltPmi&IccQEv%j56UG#a?>3(w-wUIx96KOYmP>yaE`aI_#zc4lkaotXMr(p&swz-@Dx+!Pb`hF_!ONcKar33=cVl4pz z?+XQC->}(rcfj$hZ9o=SY8!5=-KaImu&OBKh%;S%R7nh?dACp6V3ln;0eih_gdz1( z*45nlavV};B_Q>{xYBMcw!_*axCJXFlc44&TpML}rCmYd+9|CUM=UmQHvpxzmk$O# zcc|s;9;+_}PHU8h!8f3ot%(-{3q?iZAGsgF~rnF|WPV^JeznJ=HQbi66tam$hBVc}|*(2WkDv=+_ z+mDAxb9~LBM+{wW>=n8sREfI)!r&eXgMvd#PZ+T8=@qc=%tc%8_3(N24CUSf*bO7v z61RsB8Au&hVtmjJ9d1YI{?(abvGmBkyVC^|BT`xe5hcvT?d}>ADdOHjQJ&LBa2-`) zu*b*W&&DD`{HF|eKSR#&6+A8~O(c)(xSqp)f)(eP!^YS9b5d9VDmQ6ftI$q2IL#hr zEML*|&!rEZXulDh=9n6+QiDxEkT=+=)gy|jKii2(W$K$}bopJebkTmV-w-!hkXHM> zkhD|H(>5;KBi`5}-d>Cq=i%)o*Vcul4Ve^~Q_VxAWc7sP>pb-#7qLqV>S<7aFq~sL z8nlcv&8YyiQsH9s1bm$&nYv&p=A4iVQ))9A40$jVJtrhZ#}e4dHGMgRV3XcOrZ435 zLWa6UN3@HZFQP*u5AEFFI-c)ro_qP8^3L(9KdgjE_n$IJJ6aHDNZfrBK#5zWhM?ZC z7{LBn2<*45Ter?R)ls3mYDwlV{I^`SMOaPxu%Q3?LO7dD939}F5MDY3%AT@}%AM+L z9;@$`p<3ly3qpTYgc??;s-dz}QMEogu+wce%fU0{Z)uB9eSd(!>GS|u5L}R@4fJjf zCXI?;14-fyl-eLDDgD!ols?jG0O>dkZi5qi6fo2!)?N}4Ji}o&xS9}g7#$o86o)}~ z_Hh{GG9`Bk`P2Ah2}3q44?2e<>rwVQ#gLI5sZ>M;VMtF`YV-xcz;#>i6TX4Y`Y;=+ z;>qX>`{)Zo;1fFf;&nKTUWIW! zLD3gSsu@W~Uo@4DD<%%Vgbu%Ga;5e`#1ReOkKrAPkZw-LG|!TbzxYJ7;?8{sar{Md zN&+x04tj>0RuLFy8Ao6=V?!|F2=u;b6@mfGj$R|@HLj>>N5QM}4jNYHrGw)62(}6*_ z!7Ql0uyBJJIVwvCH|R=|utx2D4+z%#aD(3>TTr+`2?>NhRk*=o#_VzN1_7QDi?bhK zZT_4O3Q6{OgHv$XjGLd-`l0Eso6AE(^>$7BGld3{iJzh^v@}vNI%12Y3;wGz{2#(FhIY8azWWM7f*O7_5Jm>MJIBFrN43X$ zviwg&o~(leCMHV%v{(vi_g07a&VmUv_ahTbHTT=Nx87SU4)rK_7gn5S6wE>{^_APi zfDDq2qAX*MzbU9=L0^sO2{5t?ftU$WZ{p)&K1Cd3!E~B$KW4EX~4`vg+@Tu zE43AOeXINCT6*okzXUIiTOJzoi~EH$xN-clfr=rn0(5AYyG(1P54mUPNdyJGXA(g| z%!#GWe*iBR?1xI{;v=ktgZ4x5wV4>%fdyP*?IrJP(A6yafw7$MLmmERxFbIl-P!x0 z$aGA8C^9PYSuM^FMcV?IAF3H~MEP3>eSa&Kxf=|A+b6v@(H|jU#4~!UL=gg?(4MFha3CEE7vB?wPXeAOeCN^FKzosgW~Kw{iNdi0^X;;N zJW=92CYaZ{oyP=4lFwth6tP4D_(HrxG1ATcn#~t=akS!t?mQ;IOdtpJlsKc-^ER!# zQQ6L8;tj>Rqhe^}6W?HqEkx-A@ksuim5x4v!PlQk-Zt0;7d)xq^h}O5f5k-$tBl{U zmDgyL8~vUpEN}AodWNFSO@p(UI2ltCpe_oRWM?ylUNSoDiXx^v9qipbF?8_S2tuN} zX9=z_g3POUuQ!`+JLdQ>*>rm+R9~3y=TE4z$fn!ic`7O{KfLoct_+Rk;0wkmZ|f~$ z?kgTKCdLIFa+lx~>&m#1)}9YN>b+BJ50ZtPVh`gT{!~se7&&Yfh{+2Z7VW9WommeaV>eOAOrH%96hkblT1hf{LGK zXaOo77^mJpF)(sdN1Kg*fECjMTQe|f@|m4_`?W6Ql<>43+Oirt?g@M!FoH0TrrU&l zJnrrwNAIqH9j?C1ZR~DTT5ccmy}Ji&(Usb0uvn>58>+U4@o8{qK)qP9sq<4tH@*fX zu@d9yBKo(*;#+$de+?A_da3ou7Fc|#MFyvG^6rW77D;}-615~AvGG3tp5(R?w8qrM zk?%yD0~MRi%Q;N`-U94Kz~E1!JKo?QM16RZWGdzfg|lNeNp}CLbwCCJBXk;&k(t)S zXZ^3l$`-t$y&ouj5>1e4?52Iz-xC8WyU*IjYjuBsM}1sNVk#p+FfT`h2~o%TOoXFF#xsKj_W3Ty0EBN zI}Nz%8s^WmB%(z644YT5oNyYv0`JIaKzH^|1G4dv(|}Ar%-R>mhCECSbcgPTsX?KD zAuZiyKrr|^zd+n|IH}W`+}dS8RXpi3uy+{{0-w+>gGn4luYrs2GQcMRmjS->Xk_4O z+QUWofpr<+SOHCVeL*gR#g~qi8!hLGc5SFtsnO!xt`~8(&dzcT_Kxm!Yb|F)A(4XI+IR{9tl%Ipn4NYY z&Olh{;E4$<9k(^q?>rYyI2bC|V6g}Baeh!8EZ25AgKo9Hd#$oKiUrUVx6Nq&l_+Vt zS!>f2Qs3U;eHkkzc`p-RaVEgU-~K~_jsicyr}rB0P~kz(cL}F-iZbrK7V7Zsf{Rpd zUWUJE_T$YFGk5;v0Px(}HRrCqpxkcN;c$(e<;KK1y}Rc19051&g0P%E_*Wht9)O}d z+(xNZ-sx^#>9bh9T5qg$niD$*>(!M`e}Dh>Wqp0?hleqTi1-3I6zu{sTS&dpbjGW7 zG^4?J7S(zgi;lG127E9GL7OeN+3FW9Rx34^+LO&evqQ4I)_PE#Pq8Dt_e* zms@2B@3=D_d>#18ds3Z#pZZ=AX~mcxf$d=4AO0p4+lB!!#H zps_0&fER!pD@6#xRh9{)5iF%Fg;Xq|er-Mc!|BX5Bn6!BLB$HM7-YXHLT% z8LkgalA^+vxhFwoow@M3H8Ji^b`C{2__Fs-dcC{cs7>zo?g0x~=d>&opY+Ipp9Qh*GW7RUg>4n|DdPtGqK{} zmY#V8r-cgm5Nse9UH$*r`w}p@j^g08EL*aCf)6k_FvvI>+1iyYa~Q!IWGo-Z$d`-- zmXT(6XSMUR+F8%cN?L=#HVIfTfH4c$nENm{<__UL!yO1QgamRKLI@;;ko*Ax!GBft zS^bWA-S5rr%8@>M_Py?Y)!o%~bXQkbA11n*TTpB$tkpDElHIZdcx>Kueg^Ub5T%j7 z7|C=)S;HSdl~;gf5frpUP*4daqrQk!X)CT3GWXZO&y3|43+(tToE!a;wus?COaxAW7PKf&%WF6+4#; zf96lX1+>NIyh$iSTYL+E71b8`+;jO*FV+>wD+UI@?gamsIQ|r&Tsmk#_yZ=sFtaaO z;a&u6YlV+fGXg}S(Fz|GJ;|*VHWao?X&w_RkK*tc^8Y&n`2mPp)Vkw8%NqVgqB|~Q z!W`!vXu0&z9O{$adgCeORi)|K)fs>AdPir_HB73FTxL8R%g&pH>!DCvX%?>40IaCS z$bZ3`M&E(3#&{6nIYmuiX4;SkFr=1L(c=-YttL*OW&}t-qb438dXigBoTJ2g@LmIH zhj1`VDO{R?>HxGDRR2(K<4K$4C1s&HfC5}&PymRZYkQK|R`CJRT?!VS_S~i=k~3Fm zSU;gHnlwbOc@g^Ur$?`u*e)zwKgxuX^u0M`Ae;1xto_eO4<^Pkcr3KaI;Ul}y2in1 zo0#FTFZ+CeaqV2Sdx3J$hoH=ziRM^)i1q`$t@+*aivmKiI@f(l5irhtzI#zoU|Q7I zqiKP#&CyGNzn(t_d+_q_%jDnN=x;r`1qwdpKKK{C2%a`a`|0;q`dku09bN=Q-3%Z3 zslgaUJqE}`087|WXB6eKQukOI>p|^C5j%@63K&0&Y_BqMO5rmI%gZ3xtBf2K4tkY^ zdzBFa@7G>sZvi%n-UvV1s|-`LR~cnR$R6$JcfflPGWqx7&j6f-g|G@s#Gj?&&*9?F za`9({_;VEefo;K~@y|eX4E%|XgP$8<5`D#7bOJmAoRh?#2g9Gu(aGZFq4c8J0tEYt zL*e5+u;rO3#BWH+s75#QoGu&zg~s;daST!JhJlNIeo4ASRRE(M=kEBHH>%TfHw+m1`e-kHzylotK^=b z%o?kAYK_V5o%+6xN)Zp1%gREXrvGJ}(|Y*@7CBA-^LTaL1C4+ZgC?8ZRwh18GF!$S z@&<3g3AZkR2#B5oKgr%du^HVomM0&{1gu8`*aWe*23_(zC~L{9?v>)~e5ur~%uD?_ ze*YkUl=>XMKOVproMD?gua6~QvE%nk5#0()u`926E*TX>5~HlO{YAqW^MHoK_S7b4 z((&MA6Cz|9!^DOC#l(~60TV08(}Z+}B8zH_E)JtYDqooBWE#WA_Wt7I8p22PQb&*+ zGR#{B@2pk316p+_)RARpiC&^5pKR54omTN1M05 zy$!pqo$F?r;FLYLU#{g>!`_?_)}qPoB0I~mFDChWN}8kDY(NY46XNWe8~c3^>tanI!bS zC2*l*z<&P*aWWF?%5g>!!ZN{S?09Z>q+U^{eZkBJ2YA6xr_!E*XytJJ5RP6#!cI6s zIRXa~+Ym^w)fk0*jDy~uu8%gx8>8Z;TgZd7+7w(_3r8|r1P6}}SN6hnw0Keyfy)Dv z;+Uk8C_)<@fbC~8ZchNmChc;|rI2w-_$kta?f=ncH35;Ng(r*h2gq4*Sq;yR!dY48 z5WStj`ujrGio)9-COpmy5HRkdM5gB`-czHKU7N}yALcxwxhKXvx1!OhQiUyU9m$MR zAi_SLFGilgKxV)(@SozAu||7(vNlU4L}_uJcW0|MJuy_-xO1qo@=^$KHqxBgIni0U zM!bP-d<>tj>@=qv$0EWR3 zdcIQSdLA>=w!-qqGCLH8LG@o$L@A8=K9*5anrBJ|x7~yXC&^0uC)7V55cc^{&&x}q zPhdB!NM@uyk|UYfh<78IW#V1f1`{Hg_5SL%EkOLGFv7hzzQ(Y^y*Ivg4YY?+kR8;! zW(k#Gv4u>!D?h=-<^ma^6>OnPWbis~GLRrXgo2Ae+({s!+%jm0EWVZMI0P<$yFFSE z)xgA66nVBdQXCSO5P5CGzeM6IZ{ym?h@Xp|C(8)TOsh4&j5v(2q;MdlgiK>{V%eM0 zYx7}pIl4wpECs-RTOqcbh`tF};OEBo8>idobxUBM`v^Q`UTc9L)?9Q1b|ashkjTH8 zE5+_oq$rLrk;KsT@P467w#tb~U=*_3+(Uu*d21`hJ;VeRt;8E_%uD!nw}I-jj3H!y4Bn(KZAfZ zn6h^Q0_5TYOe<&c?_>jJlj>y*BIl@Q%23r|hI*D?$Oef|r7IG8y zed3rm{EpQ#=A?Od-*%SEu}0&J633>@N-?vz#>q1)eRf7o0W@s1%`ElL2SgEV^Bn9( zK5b(o-jzt1cu$o`J-^y|1u!TIrJNiI6HTCMHKioJR4>RN>RIrodJ{aV-UOfOH{ezE zJc9hHUnYTP)eG^hdO;Rd&zgT#g5qKIuK8FcC|*|YhM!f6=4q9n_*%V7-iFsy?q&i# zYZM9z^c~)mTzF#r4BD&Z(p)6PTb4-7xoP~taz%y_ ziFXsCQ$!+W&W}j^az;%)@+>w1|04Cz2SgE(_*LviK9Oi6-W7?Ncuy6Hy}!B|-lHT3oWk&uDQ{H9QTow^?mO|U6|cz;|t956L_r%M6bm^ z848+tKQQMTmcuZ-sa#?=%zPmcdkQmSW(mxk!>Ya`qozX4d@c3Q2SgENJ%ZiH$ILe3 zU1rY2dnz;c{%Rd6Yfmy}WSCV&Ax1yndzcFA;fb*hTp?8J)H@9ba;qNDSScdl4sC(- zcBi&`TJOx6LiX<5`SRKovMh3_%5INv`& zV?aHqNsXvBA)gW3yE9th!_YAW{|@TA4~QZ%;l0?6d@?}}iffY2XF>l$ztAOHmD_@T zoXbCa*yGu3)W6fOZhU)QNByt7N1f!ls|hkWF;x@v{%SpH0>zeg?CzmTPjSYEE32wP z8sS#&;Y!g60j=1kH|1{+-32hW_n=ov!P|TOD6|#Bx+C0m$MJH(I2HGt%>2E&%Qo%< z)i-Gl0ui<8R7M1U@RoFa;Ui|{2>vBBMeJl}wtCa?(Ci;M&E9wJx#w0+tz3<_{Gs0$ z-U|V4X}0^<3M`_|Rc|McFgjdak5F8Lf!>_p2CbB@S~L453v8|osDk$9k z7FR)?heS(PLD5tARZw*Jo*Xaed^UF=1J-f{Q1@sgzCobQL8Q%CxDLvu80#|o4)E-N zumpF~AHgFN*N73Oy16Gs^nLBN7aXjEKpYI#5gx3A5O}{1*0BlM=OPp^(QiZ)4ouO( zI;xZx5l5gabc7z%3ws3=@(O5-$&%uB(Ea8jZifip>P&N$h8d9ev2cra2hm52JB3f> z#qPK+4!HZ~dA^XxH}2HDMDG{|fvfKOS&ioR%I@aa4ERvw2}!#b_QF4ygiPL-nb8s=#hZ?=xx}9)QBEW?;GVS zwbP%t9-s0@tWR8zj{$hUy|&oe#GJPO2m$L$T#xVe7Y*N@2Q;h@3tEb^AekzDqB5@s z_s{!_kDrQ>^gUPkyMR`CoU4?r3OiT1;;sG@zT)R9MU&kXXkavp6#gnTOv5qg245D{05OR-^XfFlp;+8;(;cLub|gSup^T+<0 zhP0Pw8Fs{`+ih%_3CoH6u~NRjq3A90iQ!YwI9qA##_)z1^Q6899MIb87IruSGz}NZ ztH3H0N2M~_!Xt!JJ7I%-v<_c^Ih^bRYv_V|ks$*nRwe=7q@B^Kw;SLYH#G{zbCFl? zjA}nOF*~|n_moZg)(6OejEE2>{>sac&g}Rrk7YFh;Vnq~mCdXbg}1Iu{FO}zm{`vA z99Qf8jK6YQcKj8w>v3R3U}=;)KE`LX4uD}e$Ps9X8-WEg(>65oM_0&m*7Z3VHKqBw zWbm6g>-sF}pAQJzFVr^z%Z=C#%P*AFQgQ?q8}Y7(U?$#EJp_AyHHRL8b_A9JtRN$< zh;T&e^cO~DDHekzs}r$VhEEKZ5pP0>`5ta35V>QpY(4hKfdOH};)hOTnmih&#vtkZ zzcS{msmQ0n=5&1uwolb793-{gFmq5QwXd6j2m+WXp7fXUl@+5*_2pQjw!1lnH!iG_ zkNR8nEYBmBgg8V>bz$nFu{KUZz!e4+6XH-Q)rG2y#-O$^UIPP5DRH^in#nRgxS~~$6q`A;!v3UAk*5&rzc-tT?22B);rB88a zQwh)@&4nh5sdQkqPHktC2uD5ZR_O!@M8Dhg2LUk@0QsoDSMTz3^_uYYIz)`jU*~?m zPBoSlP>Ib^-2wTizgO?Fe)VeC4{L=M){TGlcl07Z(iy5gY6Qdu)GdZ*{iVuu3sV7= zNFX(Z3L)U8X^625yImHLj2e_+;Gi_i>+Wl4wungii1o!1(uhV^Qd?&0nkBfY za$7v>wyH!Mph~mHSEY4olau(d{jPD$5+y{ImIM*Jt4TPhg7_YTNQn+aT~PIUqB+yr zIazDBiKNtvhBeaM+i6f$;z?%+FQh@Es>mxzyt{=+GszE(f|5g^A=vL4f=na`>RD&1 z-fIvnAy$lls3N8vLX&nT8e&pFDi`1M_xlD_rg+jBwKjz3Y_xYF>eRE&oPdZFgj4v- z5;f*khDw-~IvM}!FJ>WEs8;c0Whm`9JE(OXRyaGT6`Xw3-=O34V4Xy_eB@bELsrBl>7y+Rm#GEK2 z-V+M()?hIbMaX_Mz|@wdl zmB?%}AHhXdd2Y65E&Ks7zfWEZV`f^d<*tRlmQj<>LRPL{%v$)%)IT2(_F6c4IehLB zW$+u=jeKii8}aU1I1}%wYvG<>ZGFMfBJNZE#n`u={%H-G5A_sCg)h~W^iIX*SRQYW3aRqNX|*B zMSqgmPZG&7U`9}t*AQlPDKz=WtqHZ)uSsn2LJgdJcB77$&)hCn@s zC93*Jy~isSjKD`;m>HJW>jkaN>n4Y5qCrdXakO1ywA_~JPkwUTg5tyhcASYI6_ zXDw%AqmiKQoZ>O)j^d*p*=kJ<9LsQfVSixPpwe;qs{q+)3|lP2s)41uW1}*0a_rWi zC(MZ%2{q^s>^|t_v4Wx#SnI{&Se3Ds$|}iTE+?fiXlkkK6yy^DIofQpVW%;OGDFWP z)H^Gru*pEO#Khtns4B|aDW*HPg4W&POKg=a7T5fZRj8KOs)%}Lg>c!e3gB}rlZ~z_ zU?<}8TS3rEag$(60BcEZ3fQw2YiVu@unC8~L{~-R+T3|%J&|j4Rzxn@d79=6d+E-L zXx%G{2ve>qB37RUBkG;CMkLypF)0ZJZ48NmdWOcUWtb8r%@m6l#l^MTN|Bb(0L+ND zR;8wV5N|bpkkWF@N@%@Kj@QAvV+(iDaa+cj6a|N$qRm>m71{y3+k5$2bO*4zRfIav zaSMam1x$(5f?h!5a1VM@c=Tw$oVXn&?`fYUZ%eml_?QSJj*J!M_k`vYj{?jrZbiv^ zU&DjS?W3`zoB)9Rj<^-Eq@0Z1$Y)8B$PbG)wYFdAlC8=eZ7R=w4NvMwBzSx1{ zh>Ob|vUCGAS=r!)h)%lKd~dnDWpqQEcq>IWU}kaMkjLAsn^9AM?lXE}KlRTCL=nC4 z66{7ky4z2~eKZ!$QJp+M7xWPef0{ zqi#GtIi+x+t|UWzR+;ap+~>>XDG0m$LTy?mPC1^wj0Y>u3KbRdLv-Dn(%0)3JR=IFY99}6l)Zx}Z5l>TvEXVknXPxPU zC|{5k2%Z$j=>Hu?qvYu1+2c?&Iypc09}5nU$~;x!4x1x7Il9e?=;VjL1D+^4IX#6( zC#Uej6rG%6&+_BdNzuuV)zQfXsm0=xQvr%kt_x&DD5v_l2X=I`KG+@{p`1V*j8GmP zp_~wSzm8CTEV9s1@S`J?V~Q1_9P=W<6-ba6xnyA@lq0WzspEkqMJPX>LXhvQcec^} z7VT}@$HtY}R;;OXi2+e!086lW(>aJEV&8T6gyN%DVBIL|uswV)r2nJifV*#9lyS-d zfdV^#oOy{<{zSXRYDlc|v+~3=AF`{NONv&WFh+XtJpzC~(5|S8M5(7D)o7a&%JH;Z zP3L5s^BYFk+v4=6`rS!@J$#Zl6G1j1u>CyYQ8VG~4z9gw@vbGo$@NmWzY{>)rAA}Rlt z*1#f(q2MNe6!=8fz5&4dxgNzR*hJT!EdVSfR#?v=iLHsRghuo~R@iPF7K#=2Mts6o z6)Wr*o7Afb(ZVc}5}bb(g3uZi$Si-fuyd}ccV=2sZ3xl@R*>2_93H4EGYI;y>JVRz zsjgQ&%DfsPi#PlAAaJyf^I7F|) zCM=-c@4fyg@Ui>76Ttf|U^DD~cNGAZV)yGgB<_?ox)B0?``P%ksBDS^hd; zLy=sj;`uwqzDf=4gVS(61s?Qj*)ai@0FUwTJ*;bmCkw_Fc%Vv1G2(y0(6Rv5z<*&4 zC_FC4p7Ub_O!gc@<~WPZZ4EpXt%2E;?9gnkFBnz+Pr1D}R+C==U_XHxvj`#rQ*8%X zwj1MK_d^2FXN%y2-en7|5-I2e1YCrI63k|D&QZuBxTd5I_s=3o$|%_)ScS$15vHN- z(?UTQiy#hdDYPBa`#u&yE_^xV1^_k|L9WML8qTr^t_Q^Au?S*0VG-PcPh=6Kr*MlP zE#k={NUJ)woOiL&B|o4+nBojd37upU)XqZIdKCF~)}t?C z6H@J&SE4Q`nc5X*s!>1uB7fkIQXl*1_W-=#swu-hdJh4MqXF+uQ&@^(?x8GKxQ9{_ zqpbhxFB*O^4`^^g47zx5vI!9~jbY-bcl%FDJZ>jm4&eJu5G#y=QDhOnW?n|vVn>ma zqHaC1zxb#SKBAX8`ty)s)pFrj3h!)`)&;c6x#YDJ*AyIO zB8g$_odIntPFSMJ{Uxm9+|`uAMV!2jw2G=yg2-47L)_;B5a&T^pAI9nzX)iR2dT+c zg^}9d2ehp?sfi}{m(-SxiDkN?oj8T{j&t}7t5HR^Wn4aSf zPpZevwW&PvVSchsb5Gny?tVgbI+(Z8A!*q59#9@I|xLSTLul~ zzQ=~dkrLB!36a+}{3l3!da}W})rSFO&y9@upy+wBjKIvaTJy_@ytmVQJ)^dOKAPym zU!gwwfUxC6GzXu1-1GbA*o}O0LLxsb%IJ^!g)Z5uREI;ixp{7<`G5Ut>@NYZ->ycH zvHg|z*b-y8Iv|s;QguM@uTDZ8z;34z;)hK)vcMFQ!|(GRilTCO>xqX942T;ws^ICe zx-vKjGe75&4KX2{k4tA(iVJ68jtJArS)40QHefcXUdC#zUFw-KMkZ(KSPC=Lv;3l7 zpHewHTk?gnT6LO{;wShBi?}gb$iXG6@@|pQ=2$&rPMUZ3ZOwbrWxtOojcJ@J08X8i zVrFrTljqKx4H-2B^v`IUbE$tmAc{z&Cu2AAX&W2yu0+bjd#XfA{puB;901OQf9Sh} zpKrYa-aS}zA#T5cI@QfLH04EJRkK^o$SOfGvwGJItr8Sdt9QfLDn)<*=2i)c!PUED za(GQ;b0*nSha({bYS#9wWLY!AKFyn?i%RzHGicM6FY`qbTjwW=b#iGV@!9NjNM53p z1Tov5fVV8!m~;1dU%9fw%*H!}=#&*ZX3mdnd~rriK7vhBfsu_br2hGUC?XqQirvU3 z8*Rk9vN03ysj{*6S68Dv%t_NAn~18lXdud_H>7RI7Ss(X&aGWp?I<+eyUu$o3k!wQ zXsexH+a;20p^&lK&bfX6g>vcN@b_m3XDR%RnI-Udj(fZQI-@2Z=8W<8cd36qAd2w! z_puxK_}fOj%io!JPv!64U(sqTfjpVc&H_`2JwNF^6ouLILd$)DYwpzBj&O0-=S#be zyE~n&d?;0-$1w9z0629agPA2TGpuTrI1^HXmNtxnPRpn%pnpbLucZF@fGEPutFRmS znAt|W%gmX0Pi5xbU#&xB?McRLn6j!U#OOzO4^v@ApD2E1m$1t8^TMuellV z6eW(C#rZzrLN2z8n2^ti?YfLs_%L)#!B0`&eLxhE32p2~KA9i~#kEZ@MMnoNK}8Zn z*ZzK?OSUSvDP0}^-_qD!Z+B|Dr+L%k*{mC{?pHTnHLs)o8t+jjx$bI$OioPI1iimn zkD35NRo6Q(NOq*^p-NA2#)d1aszMs!D(~S+(Fg&p*rs>quMOP}FfkXMq;34_J57aeCINj0o;6muJm&U74*;ysm3s?7A+Ro!fq3 zE3k+~H4?>5Kc|B7n!T_rVhd@Svyg03LMuo_u-epf>j; zOR!pZk4EAf1ouP=>l+K{OWEc`cxK=Zs++r1L~qdkd%@v+3Bz{Y zh#g|wvk6bIz1Zt4dcNQtkBI~B-nr<4cZldk^Af&e7zC{xp`ZXBYjX$i5S>a4;gK{d z?>Zntc*stXLpaV8^9S*$TZl(yV1W%}NDgz<8e)0O?gsDw;Z@>pREXx$#_LcQe=v_{ z#yPGRD;Eh@{ET>Y-2;!562p1W*%d`_c9>#2gRMMv$C1$+_u(Nu5^x_)ViQtBdOW>v zl&{oHe*$|v&mXZqfjyoJ;Qc%vGmhIoi-7edu*aSKMZ>G+0Szm}Le@UO96wT-*M<9o z{l&-KVkCXTS$sC2RUQW`WvjvtR(>;}ZN(2(iYEJ*zWn*C)Ho?W2|$y_iQONC5!QbP zw9139WUImmYw7#_R}jSsOEkH^gmtVl6EvF6jY@R5D5(kv+nY*c6NNtrz?KJnoebb% za_lR(&Io9g2Yty_x%9PMO|d!NOftjV;{w`PoX$kk`%7m>=mmyCL|id0#WE^e(3ePJ zIJzPLM;_F*IgGk?1hmS7x@4dF@?Wh$U;#i>d(xxZA^=TIpx2tb?%sXZ@@)Ls$L zDi2bVtqLQxHwUz>IH`#y_m|Yl2$k}Q0PJ|s(?`ST>8k;)@}MW#sxW%`UO?N5)01d& zsq_>EEG1M*Pt!=OwkqSmQQHftDHWgJ3dKy;On+UTwhxX~oXPeE{% z#_s86tAjyL>U-)_9evk09Q~P|04u7DtU`fQDx)ok009A30Q6`bzG_UVu*wKaWVC0d z5n^Q$;7zWfyI@2{tKM#aN6*wKTo*0!>YY)26h+LA?$-WyL5{eL2>s?QTxtl?$unqyARC%a7HoT`x^Ss7*K<(O*)sszJQiU+u#$_UY35 zR7sJf-a4&DZEELaeQ;(P%UiGdOFK=r(oVAL)ahf*y@XSi5Qm7xVlAP>M5vSXaT*&9 z6%*o6Db;PME*h(^g#jB_=P4x)S0uZDP2m{iDIyl#+NpXRCZxFlWwBU#n?q|SK!Y?F znk*Ji-^;q(-WzWlq{X0#VzKlo4s9v{8l<_$*O2UQT?V-P9Pfv5|rUQaY?|XjE0BH40kA zs3n9a3z240&l-Xp0u8}_cMA~&S-_|`)q4$sC1@Bbm4N6Moh_Q&nP`Yf0jXSk(*^bo zs!Z{uGiq%xLNwaDu&e4>XHGyQ3c@M;Wr-T|DnljAN}Y^<^%t{{D^#m^vNDu*oE_A< z4lA4;)Cx{M>Tl53f3QxXTR!rvDWU?(nlkea@lHe_ADyoZKuZtQTCL_@*(3F=zY__n zXXec*pn50@uwIHJ-Bat;fiVI?L5Mj~M!Y8!;;q4AB#MyzXn?6dn9N(HQW79Kt;3RL z@}Obr2M2=UanWqexU1A|TRhO9+Sz5t2vs7p%{&ViS>?Icnzis=F~3h<3u9(lt>vzT zZ_TL5XCWI~3%{89=L5oC3rAbwbB{2Cw_!K(t%YsGyKCW0yr-^(dw#X`1xJf`Px%*P z_uhEB&;$40cn8K`l5a%$P7)|CCq*ejl`QlDe`AoO!muF86c>_I3JR3c5m?Mkvw+#f zP=>3bq)^xkYn9M9Zh0zVL)oVw2z_VXtS`;dPG#$9)Xa235^IN5)UMY~cJZY1P%_5g zYjK&JW3`*XiS=CPqM(hz(pn%nC#e?wNn$@qB*%amL7kG7RFU~8v8Jhd43=E`C8Z}- zU@aA6pS0u9NzY?)ko?*jxk)vTF_WQJATJ6H=WfG%d~2W<+-E8 z3)q4$o|9243CGlWwdjoX)lqWRayB*^3F^)%9)s>EKI)OJ*3`hU47V5d2X+lA9hbif zke$Y`#WJiKSh_nlDibHiZVh_EoS2bNgZ{wogI*phC^~_)UM!AP8EdJmlI-PjQW}G% zmdZ{+J`s?k%_bXm8iOb^^qfMyvqB1+3?xfTEUtm7qP(4Ax`Qid-5tKfR>@*<&EHss zYKg6isCQNfm))uWKF2cI=&AyCA}+rb1ichD3AO~VmgJ^@J!`R+=B5CfaM(+9RYb1M zombWqxkhJ2S-aQNxj ztfgC_9l(zF^0(*?V0UZoYZ%lnU`m7*^w}AQi_n|GqeuJY#O)|~Py2icm*@SkqI{mv zoZ?Y{nQ67=x1!{|u;B+8wfUGqVwRM@ratKD3Xt8zz~ z%5!1EVINGVB%gtajqMTu?00;z$k;B!Zg`C?*}PmUStehlTFH8U^(6EdVHY;|3Myv0 z&8o1FZ2ycmLl&0pxA(f&L18M%v16sYCPCkwpsrV#txrxi_hM}DW(#~B==z1}nHB_V z!nEne)Gqux0^1XG|H8;5_>e*h#Sa&^J7nnwYO=Dy3lW`kvH26q+ffAxNp9fC=6xH^G98SsP( zA5MIsUXVA`v)~W)CU``>2|m$pz$@yR_(i`U&(MpEOs+0fZ~~KO^{|kzdbBr{6c$#e z;ZZjpmz+}gz$nQOpH=2NDtAk{d}ZXu9}&h<8Pv+o_O9rYdFqfWBj)drcIn5qqWfAs{^21-Jy z=;XNt8XK^z$_i)UpFFeGiSfzXvH0Y2a?>k9xhPiUG0KHw;_ynbp$;}a5l>TE4sm@n zeAbyxXz~SVf#6ATjQ&F~8YM?1&mM=OQOWtae?gm8aDY_isS0=498t;9ZB|4j{~D4i zMJ1=F@TlYzR+yraQ|wuOygDf=`LP(OlA@9eQj5hUrven0ToKBp_9o~eQM&&iUS0P+i$37H zJ#cd-sP%Qum>tE-*^#<=78`*x<0#S8m16FwM&Yr#6Gk9fi%k%bbwJ)e&*|1uBvnmm z`!jRhNTmE*TKkG5hJp+HQQ#9*`#b>e=a!NY_4nKYz*1s_^&FDeTKK`xi2lb2TZh9! zF~Y|2313x=uw!geuO>tZvq(xPxQ8GJtvP|r@<$0f=Zbn~rZol8ztH+o8;3&!>~c08 z+DiuxtI+jT+K4OcwBcYFu}-p%6rKXS9;W~}k2pZ(pcvf-Lkf&;S}3k+^klG)tiEaP zhPi4q3*DZGq@l4IUBq*`%jCFg*+cR}r?OGGi8Y|`sF)~R&q2VnOf)2ov(nTkTyKC* zS^eui0oY_WDRZMNsxq|w$xsl6wsB}nq3xJK#x<#I0o@afuk z&GofQ!-u5yyc&HQ5Yx?J-NSOiy7y~*BI_PKgmGqPXx$69?hyj-*Ves5J_1zs zdmuG!-NO{ix`%lYaRn|OB3yGUtaT501?ExRlB|0t8tb00!zbAHbQyK|U^{N%I~@^8 zEc{4(Vj?6!ldAcPvUOAYH7OC+QD|pL*hA zCps0fx{u5w73ZSYEg=)kX$W#V4hz})UXD-rs_cEoIWjH5;%5<+unAp=K(r?HviNOK z7QYVIP9&FAnp1ESK)vD^`6@NE3r@p%6nN09WXJSZ0zAgUcd)J%o+KC>;DIV3#fZO> zp=ANAfbV4uC_FC4j`J=AOm-YY<~V!JZ3R3Pt$^8-?9gnkFBnyRy4>CyYsn`7u%AGU zSppG(sWyW|F(yG6OW@lHM4v5zKPVT6hJyYY0T-d51aq03a}=@!{zpk2?w=))lu@!J z@ZX3eQf9ANRAp%Ur=cK>B@l4@!IA{$Fw+0dd@7LDAA!MU7;73~nF~zb5VqQd?flG@BS0oE-4Mbjn`BbAM zYv58`3Fxgd;deqwY{GOkVu2X+a(rS!B0#AaTi=#A;BIUFY<*+UdB;W1-Ie|XVxzLV z-kE6PwQ4P#oQ}a+!)67cug9%sZy=)9IBjtIxZ%KkN$RujMc8LKK=C76o+GX zvsE`x+x0pu?Ir=1JnXW&GE#>SAM4e?R)u57^$XV*?j1TFA9iipi9Y4{1)P|O2h}yv zvj@a5#Vef3s4#$lKM73~D>>{5up=?fpx@Xq4$H!btA?ZAvmL!qj_TNR(xXd7i#f|- z+xH)0`(bE5ljvp8OY}Z@Is64L{ft_p+WAXpKQgm0eR1Q-?Uc?!s@23fl1+ zEZ~~QsSd1dtddnpThwBtjOdH3YYp7OIJL7g0aeOATnHk~6y_ocrChDDvjKNRR#ZT9 zNI|R&rBt&WzS%CCDto7@1bp?Xi;yNont&mzp#c!^B$%2Q6cWVvncb*axcsu-8mrB2 zA8YJ^FsM^w>{BeRGW7S;t@@rubEXZlcveQ9 z7PmH;-mr8o}KF+K0P}KNS;f!yUT%p60}ed*vE;$eDrYl@K$|% ztT{SI6Jgt=5`6`Lb(cXl`L%Tq#dh#3C2pbYy|vcV-2UjbK6?OAc60P|>}LMGR13wj zgLPH_uGY=P}9oI-wUvQGaFVje-&dpoWFR&G33_U{2&wPi${N`Kg1Z7#h#-#l z3gRe1+q6@Jdpk(ov@LzpPF6UXs^+q?TcfGmRW=X$sH1F-<=VE*MaRileBQLpiBOy0 zCQXL6ITe6;YMbb9kfF&=FLcSH0;V4AxdT9%Jb*AQl*vPdGD%$DaB9G>(x@STueH33 z9*ux)MRE+aFF=MGMRKI*Vs1rpj#MPxD>=<;q*21bFx7H#2C4(lqEWpFRm%lsjdcJC z_CvK?&xE;Iw96H~hk}WHYpEGn!3Y}xshggQnQi@Sl;!|e+e{-B+e@1hQQO42#idNk zpY#i?aHhPeFGJ@%8-NwnIqP%loH!m20L>E-zJ=yFNoXEL$;#Tr$pJs;i_&=s0=AXT zPHI|!bTvw6O!O|l(&=SuOS9`~mJ>=R7z|T7Z^}S*09qEa(s_MZW4%a}&I_{TyJhb! zqJJzfmMUr+U6f%?Yt4TPHIuk{=_^R+wqC+5!?<3uy31wK*Zdi!fQtH(H?3x5;(SX6x&peU z(X|LIT$h(MUIAp(4+~d=3E8+GhlgyBf1Fd$KeNAW&_wO3fM+4u+DnI%PzA)h!S%rn z{={Bj!7%GhZy5`Q7XYxL`rz@o^+5t64*=ybLkQ1O4p^cu%Ha+KY%7NrwIx7;8s*Rw z-N~&S{t%TzZ+|V#Q=};Je#DfAE_NKWE#qkdStf=C6 zTyDh?L*oIUHvXK@E!4&X<9@5060mSzG{`Rzu&qJ9M$HNkr$&Q(S@bNo26=oL9=fDf z3PEDJ=J1cDBRl{(TGvD`MK2Q@;fF#^e(QHh+%CdP5cL5dey;tqgg>$mi0)GGZ*I?R zS|WS2Lc^NN^f+7dA`B<-Dsa_=^AAbk%(e@Uv0F2tBz+$Xr16TZ6BA}I@xa1kp;cDk zOyeUy4*rda86GD&o)0jtovU^)mdBT7x689nL!kR=YjaCV%k8!Ml+s|e=em~_1Qy@V z?p{+iNPGXGdwxOa!g$raydao_HBa}_f-qz1upUhd`q>;^0OIEPbDN_J<=>0s-;3qn zr^vsXGxIwE7`XWFM{zN2Os&#v>4+(2DnK8OE{{; z7|)eB-KEG9u~>*IHA!B`%T4GMB{$q!2epF3AJSQ`g9o0&4?GhB@7D*OYrrtkGvP-c zc*Ycc;F+=_WQ2C~JK!?7{N(rI&j5t82PL>f{8=jg94`JW7k^fWKS#kII8Jah{uzjl zfj`l4@N)x9G_RP8PJl;%bCUS;VED5+I$69tlwLGjfTnv@NvE72N-+=N0Pbjga@+P+ zy*Alt?5=O4L$!J#MH4%_Kd23CJflLsa zAc{@oUgvT`(ztW6np}j*(@(`w)q7;Z!#yU9O!P@?f><&`H{I)9jzlFQDOvTd8ujCv zmwWtC;S=`pTL8Y`r1=(LeKBeNIsuEJ;V?Rbt6-H661{CNnR3EeN3H#ckK_9W6+ZEuAh^*;dSXK+|30OnC2hbMeh0WeQW5(Y^Z z-&o8hDCzA8R8OdY0rOvc^XMnj)D8n&!iu(D+l_HhaGF=ad0qu$r_d36<>xE{1Ze6c z@(YB)$n}AU4c&#pb3$XxdmG}$Hs&46Y64`r2i?~yl;Dn80xB?BL?cK-hWFPD4Hee7 zzM$byK{GKloC|!EG~x8QPG`ksHM~Fs!bY??iP#ye!;dPr!zLKwSqK=H7LlOO2nZ|KM#mq5P)34}b!3Wa)ZnP?=9S?W zmy4VUJUvgLWi|p}zy)#dl1i0tWMF0*D@INb24g|J+3h1?i&Md2B8?HiGc#&SnO0_) zm7|+!qX@)VpAbgw|b zMFic_&CRL2cRq=-j5yv?QparWi`oE`haTB)wyG(jI2G^ITHxI^*Ogt!$A9kt*nX4v z7~S3#3c}DW4qGX78^D0WT1fI)fI~)T!?@>UHY?~Z+qkc`dwSB)3yBw<$|&Qnpo=Av z{9i&-lIAW>t2Z49&Hj|+N z0fG67MvSnv>`8@Q6_O*z)nF)LL_px*;S&V}rl;_Lz+}xPy++ndE|YXnmsKe*B2GcmON17ig$)plyaKx8ktJ=NokA)C<|o^%ldIcglnK5t(nSZX zq64ZZQ>sIVR$}NXK9#q5c19d9+!uUR8`kn`Tg{PrtFyCpeZAe-wf6kx=*(`|T57L7 zzrF{e|#nwXTxpr$*<%Igk#9UG4W%ukN zJW3F&I%xZ>NEC^QXme+-CMKm5&leg#Y4kp_==aYO@oD1A=HEd3uS7`p4%+(4bCd@b zP-~-u!KG=UHzbzE&qhOzIy$@_LQ!|tkO>rGpiZyHJeUx!S|!sa8si-Rh(67zvWM_z ztUd|hr-v)Jnvwx6d)285E0<_hj{wn_8l9XOgQ@2@*weO8Kw#|l`pQVNISG|)Y0cCZ z!JgoiahcJ3=V=0s^bPn)j&T{Ab6%s3`j^J5>mJZVp13KP5`%}WCsN8VO)(P3R`0)AiBDcw=;KfAgNHi z^2b%`CK=K2p)i@`xcXf{tBO%DwSf%m;e_g%vy{KayJ5bTDH&d`Cv-wyr2$InqQ7=I zQiNfoDZL`uxLP?}lu`u*O{+vE!YiNjUx0g{=9>^ZNh(+1(ZVqU25~1eTCe++uUVIACOPXoloACO}ix0$wGG9@v zfr_)_a#dIr5lm^4*|@a=#?1peQ-o%3w!AT*RUT|9Tjk4^F9~Rs2V2Tk#n=+{o?6BB zV9S__d_zE!3$i7)A($;+L-bMtTLupC#{%%>Kg2HuO>X&&bq^WV158sLcxO!d<$zY* z*=suS5e|zvT7Aa7A7!k{V1Sa_oiYCt{|P6o^H0lI1kr&b?9tl zdro=It_D+uSgi>p_E!%)ltjC*qPn(Ig_O8LI6{A=$_R~Mr8E5fZvg&0RKjlne85cY z$WQstA3aopY?ZG{I60tI9y}mh<*Ec4IWnB<5zST%)(32;&j@IKG4=4kxbZ(+TdacS zr(4R$OBUMD|x> z98da6*@(r)nUWcCO>vkw`L8CM!gMIonAo@_0AC*5_(uRfKtsGTpj93kLbl3RM!Y4U zRUULNTjgp9=`yZHGFv+&`ImnrpxMPVL!Yd}A0T2XVMP%*{@)5fr2qK)>WIG!XqAVK z2*lOD2DHi_S7AEhe*)T8Tt^5*_E$%okmN^^t|XSL;;M+WFX?2aDvtlO|FqphRU8Z8 z160K$0$SyvDrBpCRmIwXR(X)WY?Z4jXip=bqKI$7YzSy_F*Q+a3uc(;r37sdIKPGWg)iHGPKo{a^5OV|PgQB5 zBoa$7eet>g#Cqt9R|EI}eev#qR(a?P*(zUs@v(qbc`%4j8}}rZGe#g102TOe9l+$_O0g9|s`Jf0TVy#(xF0%0p!Y;%dof{AZi~xQeL^bSu^z zA&g9v#0dYmfVLG^83K`|s*EsTDFH`%y1&M1yBNHF`X6v)41J3z;K*4xZuqJKjyx#Y zX@0f3Ao(iXSff*HmLIR!B)WuoEP*0AgCGCbaRETNLJS6bkMNue;c%rnL{XV;HAZ#x zgz;tzB9Vyb8tvKLBjD_gDR>}L$5Rj*I2;Tk=EnvQbCMLdj|daWHX(-WxFe5ZH37;T z#B5y-TX0v@J2S1R3P#6_$6j#}QmJg1nypOD?1sZR7`BCiwZIX<6(bn8gaA!8b~ifp zvC7D-i2sjpYkO*q$=b+deWRYY0JsYWP@hJ!%nP=H44`7r43i#yb`qJB)-kGQui+BFu!&F(fQw#>7Z?VPeKS zz1$9)Pzp~&zz+A~EPHE;aEq=@$*4vj=2B0~LznBjuOi`Ase-o&Qa|}OQ?!{a5N1en zJmet{wd&KYdK*qJ)jEylRHa%U+6kPt;j&BCR4%;q(hJvA;FjstT3)UYfog^-Pj1al zci_lgt5u&Gg=0^Z-7{^tD{8XctO(~%Asc9Wq#}#WY7PvKUehUem`wDVX#fnPLi3YY z^cu`eJ0F?uT<%7%VYVcyC~h*^pHWlVEIUJWn8-EHr~dhXu$>KkBiFnLyJ1DnplL#K z17g`>W>$ z$hmuOysJDp$A~nmy|D?rPo$&W-eWFjlpn$nW^_CxA`tmC%Q<4cQmMksOKTJ}scSX& zwkuWhuDosA*11wQaG7$5S5|f!ca_Kx`BS92@{Xw+;s0ZS1*$nF{4q1FRuAEC`;Sva zv~xGDAuG|BC+yDSggUKZ>3mot)vj0;u+Utu*d_AymG8IyK)7t zsNq2-kJZO(Gn1Xlp4#M0y)ssxu1~@03nr5Qjy~MphI8hl^-5Jhqt9!T)3wps8U#ZX z&DJKGO)=XXs#Go>ugo@QDpU3P*cy7mMV>ve+}jv~l_jiCu?||J!a}h&HilE$njBqN zvO+`aRK)a_Cb%mfEmxK8m1`<1&*E>`CQM#e*;}vg5+!ywr#cgmh_hieD~Zoy%`pNd z%uF()sK+3m^h2Dj1Hh?sS)42Q#aSlaQ^i^Dua-%+<@3zU@0>g8x<~EUp_qQh4nC^ORR#y&EO%(1bcULbB(yuy zCIgHeN0>S>Q8w`=CP31W3L+N+M*s$p>)q}jMyVX|O$*xht;d7x?xO(4Y4AJ<;CpX; zjTXB1-uT)zFwK9B5yLtKMX`F3;#j?&MIu?g-Q`@%oi+G{l=WI~(Nk1eci*Z{C{(KW zNUrUqurZ_yS~;Zx9zwM#kKTeIv@tc-7=>UmZLI)>jkGe}YVKZvdQ)0{=sU8TLSZtj zHl`|<)uzU3?KPE|b{!yf>N{a(plwBIFrEo`tgifee_#QMShg}>I0&Piu@#YBcF=22fSyff1vPTwi1Duk9ifxrf2;B)D6%ZL3XHjT9W9Sul|w8YHf(lW2n^u%)eXzU^n z1iq>}9FMWp0|up9ZLq>X%6N@n6dRZ8~$>bio|Pcuh9>SvUk)xtue&(JE6XCGs^pTyxT&)txTIW0Gs5H|Vzd-tf|Ax`;2s%qrpm%E|^(dx^TZ8w1p*a0VAi$T6}hBJGBl~E}N{^z&1BJQ6Jq!^T>@V0yX+nN=K~cYDV*Ppv_OKhy(0S8Okq?>5&MV*3nK61tsjc9`(XR`vnys(>gKJ5KnfLE}sz^N(K zWt9{rLTvxg*tq54MGSsnNqyrM_(MORA<|uo&jWVsV3=`DKS#4%UeS>m75NBbN$SQ1 zl+c3&8_*?Xjw0__LIboNC$>9s^o|{x23+(Vp>uczf3UEqduRr&@`ie0;>aC4B&EA} zSSHgs@U;tzg+qpTbF%sxpg_!>YXi_vKSPRS38O$zj?T9NIa0dD3op0p!7J+8IWdi7 zIZTl}t=u6sisVWJTtty9MX9XU`KhjpV)9C5S;uyj)Ug6H&#vr3zPablP@*$*I~EGU z&@B#IDRdjafWvz3#J%VpGAerK+AB(;49WB6&b7=|Z+awb_q&s&TQ=?k+c{j7x~@Ww zTi^i%*Qe3yS1fCBOB8*Iw8PIxy#sDMQ?UvbF?GA9jT+|(7H!W zRBAh$);?<$V6}(OTD=-Q9$_wor%UiFZE_RhV(~PKvGkkE9k`@Z9H$9CQa+L}aL#3U zTj4&m0dZd*9@Rqh3u7nDNO1tw&Im*?$FW7M(~WqjRpDw9acy4m(K5O}Z%t(#cx=IE z@+Q4g)$|o>(o+<47*pgz;K#-RxYXR3K#B0}M12ZwWf2o#KL|ioa9vSzVsaE9!-Tjo z*&MxQ@T_a$qCnMg>LXC1a$hset72Wdn}C8=eH6}Q@N;Z?!B$+`Q@5@PoNVsg4zX|B zwVn0q_{vKVceqG^BTwU%^R_%03`Mv-wZ8H!-Kc9;jZQY(^;Os20C!}F^Hh~4IPA&q z_QKICyD(-!*_E8!4-V!5KA1vC2+n;!$cU1!apc0lQAV52Opp#QPL~dN7Kw|8v(Hq{ zo4G{<0s-&Mv(E$}A>CVvjSljAE`C2aJc~^n+Z_Dq`R3qr5;(X5M})Y3kL_!Mss}G_ z;^*cxoi=1z-(hRvF_Cy-uHantG_NJ98aK zfV1Gg)oaiRqp_<#eAbze)N1UU=nStM1*@B!K;)QsQ2hsm3LVN0m_!_;7&z4~sO_K{ zN>f9&ocqRn%ef5+a_)?noCE1nqX~+caaZ_+#ahn@nKgozdnVed;#BtVN&o^<%oc6J z`)uXvHAE#MM>v%wLqLbLED(7oO{S@4aV77d9JX3^0U+FsW1}YaF@(?&X z^h-cav_wB03Qzl^rSy9k{T@!g%jkDG{T_k8(js{o1|>2l@#thUU4G2X@nA=FjkMi| z;C-WmV3`^;^W8x*!nEg9Af`xce~Yq1iB>EqdxzM5xRd^fhD}@}*64IAw`m`>>Ipg) z&=S9$m+s->IObeLAl|=hVBm(iYV<+)yJ;Z$5dE2vh?&8I;va^j&Cy5b_q9tQ;ZNaF zMql~_rQQU^Hbi!fr@O!PZZ^!MV=0B{%7wnY3{D*hZU{wx=NR){}G!5`?$ z(fDT|ItKnk$HC7Hu#0)cTyz3F0-Te?p9jOA&C$u?<)QSVIRrZT>OelcpODq{#(aRw0dl4Q{D?TN)vmYNYg{@%i z^ciWdJ-@!EKG~e!4W{U|cs=PJ*!kE#(uCW7>a9KX)>?Uv0Zv3vHsq`Yhm&?|ROQTq zdAc*v90T7Fm?f)1L*_g6I6HKuIuns79}!^^Uqh`n+{8yw&_MD82j&A-IDU$6iF0g8hebx=Q1Wg6r~>VXj6`<2l_o z_Z&Lwif}mLC?cA`c8|P9aCnul5U-L+7*}o>eel%bA_`EeZU4_%6|YNk4W4R zfcKl#$9V4+J$mB=EQW@|ooS03%G%8*RH#ITjOX_k88^=dGK3aLr3w{~iZQK9WXO13 zf06O(c|gVkVyaN#B_7t^#I|9mG06-$AL%c0K0wHce8Y8rA)r+r;ksq3+`!n&)jUHX zSGW?HWQMtK2eh$xfNarp*XWTom-d%K#}KvYS(d^^oYbs<5scQXbcV8@1)$7BM*njd zvHd2XRUX79Tjdg4zN`M0ebImMS)9m3llx3$eCnP~WGhTTRY>rqox#Yg5`Z)hGCKvp z!vxD$rVRzO%7e^gt6VZW6n4`&+9-wL>j?oZD^6sh!Tlw&W1aP&!bDt@9ch(RrKIDz zox|{URRG>R=4R>kNHR@)qJhhhrD*L49cD^6#k!TqJPqnVjO;UP|C z=9E9vmnNCv>xBXM@}RHhhtb#V0j=_&FWD-WzVfNdy8_x)oWewt`%7UDPP1I46I zZ$@{CB^U{QIsl;_B>3?#68uI$t2{_hwkk$~x$e#Ren8ublb~pFsU#Q%Eal#u1ZyL= zSH)_3BFxIwc5O9!7;a)e9DY*loToxo_mO!lwIX&pY&@NYAfJJAf4Vp4cQ|hNs_xBM z*~?y7O}IkGvcU;6>v?Q(0n^4apxUI}5l|MeEn?+#&%Ut76*}m(Fxh}324LJ5rXzjY zS4>@kATa)4@@M|*kBp<`=Df-V#EX4#&V7t;08tJ)w%!RI>GE_SIe3vjDEh0`G!lf% z7966MmkGg{>5BZMR)N@y=)3@%FDn3F*4N@5B85l^W2ka9Mdm;pw_#%jufRzph!rC< zaC)Y;i%N_)U@NRLUBj&$2REhK`DC)t{iru`# zC&b5Pa94EHDO?;ZS0k-7zTojhljnmo00-<@9|=tn;tX31yh)bl8yB49n5fD^W=y+e z>^)0InCL^VB)cbis(l3O7tW;4BV~Do3lmN#( z2M6)=Um2GqwTD(D-;!jHImG0TSHBboS|LFQ6p_SwIG#~gfFLvR;YO*4J|OH<^uD(*O<*^yGxRjs zOul_dqTapE=#VPM6}&SYe#0xii*W3GrDLKTX)ZI!kFO}Kpi^CEwgzEj(_X1>k(uGh9Ak*QF z$TX=Aw?=Zd%tA!yq=ejeo&w|I=Z_%gHRh(N3kk#la?{j38Fc6)#U&Pus{59}0+Dh| z)nR5T_2(9ebgvX+?f6Yo|B_KtK>v)Q`!V&;2ZXKYe8u3;up9ZrppAG}>SW?QRqFKq zD)6SMEWm}h_#57XQ=%0~h>!^P|Ac{z{$6`0~Ni!Sqt~ATUd#W_+{Z;ZsQ<>kn zu^9a?ntFP1CbT=!_6Kx0CrstJXet4c_Qj2bQuMiKYS)7Hed_~3boc$Dsea4f zKHoEyHTH#6^~v6nr>Ls_KX=d6t>v2a5}DDE zZ=$~XfGDCN--g}Dry=b@a5ZG+7^G^*%&%Ncm;aurFP1wrM#CkvH$lTK(tD;78n2aV zA;G%en_vqI){iDQ(^wZfpr40(+1CZN$u^ufqdOZ~_0CLdN^Bu_CTb9o8v}UHwD1zX zR(e{GxrEVtXQ>AX^R|!%V>E4aay_8(3 z*gn9+u}|e4vo=yUp}h%G_c)i~xg9qFh?agyO9~PfZm$ocR1Wy8h3)omA(6(r;)Nqn z$2ke($qS32Cl!|2jLfr;R7j2f&|3nfsL_B{Y(rN%+Lky!)Szj?ccb?~JgiIB2`AYR zb8pF+1foy(mh35)9*x^Y8v*;cT{s?c-B%hHH}slF@O<-eds~s|_LjrtO?lEOV_`M= zl;h!e%;~3_CZB$~DkvrjD@+!bGcPK406qzg62$w0IN$_L@nYKVTr|jK(j}n>T1^G; zwF%4rM}V53?MB1bNZ#|!*X+^=wgbm<7!E%Wrvi;bp9!9nN`}AhM!-e*`zZ1ss;nn2 z*36Q+4M{UN{tfHsmrCkrfthTVH!r6p;qydE0b^n4`7@y)3_as;mO{?~jA^c!;J%0s zd7;((o|Cy7>9URcYP-RsP16sNiB4q{@*gEph-3wG%|vFaH=PR2c5W-^eu9TG)*(Le z@&F8*zvYrGsUbee*E{pd0xJqg^%{A7!AbzR@>&yVQ$+bEhjVn}!%+SRcs)h$tiV5v zNik$!06-p$a0izTE+Z7%f!!5BAVOi@2lP>Lr21^iSd~B-UrwP63Tus|ap9$xUdU;~ z32g04A2QnYN(77)5({EawbAH@Q_20OTQV**YA%+d$mWp@jk zIn7uhgXz*eb=C+1l{Gqe1ASxnbhFhFKE769U>R9hxc;h`!cc(|5E$f2eV>eUPL#7< zMHJ>=Lc21)^rK`^4>r(9xwLq~aC3^en1$(%gXknYwyWXjv^nIV^UWb=2Tfv3R9Sw) zP0T>7V{oa^tHQS|M^ssK#T8Ly*8y@wR9Siok19){9LZuqQ5gBG9Hvd~oUD5qYWL)* zvV*|8gMtQP0cPp5-thx7W6e@qxn(q3r;pDC$C@P&2V>2K$C@Ps-mhcLJ|5Za927_@ z)-0x2v1TzZA`Zgix)Gl8UD#N&$Sa`n-&j(t*%N6_59dC&ZO03{WRzK^{<^x%0F{vu zWx2^}4Dm!P{7ig8aZ|*mU}DJD;()t%E!G&abmtjOwdN&a>;^oqYw8S&4|}$n=7G~A zTwb#iCVD9Wa!o~v(O{DX>h1#~8m!f^fY`5BID>!;C2!MEQ%w=cl|@j2yMSQhd~$62 zOuH_IkS@tvETLNW$GNT-I~NJn`p5C=x(6ohBnD&nr&u3LX84n)+UU4EjV(eJ6nT+cwCER(KZyi$zU6jHccSO|j^)PPTAs z5T7tw`m_FG;&bzWi4|lrph(vW9q|xUhfyJwFD#NWjp5_(`iqah5rgR)MDJe%TICV> zN46>!`3F@LN12F6#W40i0c|TD`A0O_U9Vn3vL|aN3#<&*+pw)vA&krNS zrvdh!&epL>^MI6P6}ye&2Yu8-_1vOJ`{YMmx8{Bf3pD(BoRO zvTLfjS6+Y4dD;7G#^o;xpxIoZ%x*$_*rCjBVKo7QTt}_vJXNCsVv_BtSMZu!yxkt7 zjqR?%^(7Eetckwja0d=#V=|#e7*AGQj9bs6yE<_B5BQuzXd3u>y4Bp%7!ze_v8*n$ zrw>P)xaZ#ixAt1g2@H39i!45iRz;eoUnx#J5wB|4dgf>)6tV+??hvC!jL!7?HG`918?v| zsvfDsi3-65W14Q`A(Qeh^1fUyw#^BLF92XbF0C$OC(JN2&H9@^V3Kr|64>K{k!LZ6 z`rC}U13akAIkUf^9{Yf>{lt6&DE&Ql!#Zb1iYz&Rk{k**F40mXM2Mdu*d$0unt!Cmn&^@ETiUGxs!0 zCYK4bPeP=k-d{bjsMKNvmQ`PDdYCgxA?;&-)|(&Yu$zEDpCSnZu_1FhQ5#ezab|atgu!q7G9+@MNDm;3BH9haFz@$x9 z0}Dx;$9fNPVQF)-+99-}7VR6Is7>vxSEevRv;TxLS;VxP0L)X)m>V3J&Nj(xSYB8z z?-^WP%X@i-?rA?lR$?G#}@(~QNiOFlIe?B0J$d)%^H}c6A8}Y7e$;5lAZ0Y^g z^v3xne@4Vv4J;&Ep65Ntg=NdViI!w5BmhLkkr4nI9kDXqjUnF?&gioc0bsaUAy%^( zqF-6P8sim!G650gN9y${9V(#H9IMR^RnD)E*JdU=U=V9o&=@C3!@^ zVi~4H&1no}51&`Y>IffPQ^uZHxfl*5v@2jetAM!&uZV^@Qxl@okHD4Dd)3k>zIaYC zkuyP-Qic)4cgy8^Bh|i51d$@uFtfN+%NIW2XBl<*2&I@@`w8{X2SgFM_HWpYd~(f3 zy(`x;F`p{edVlq~`vJ2t#>nb&AxZg7Z?Z{|lmV^Srq6tTJapx0&eEZ=GVXMpwTUe| za-MF*+r;Aa$*I??T*Py_%fu1hwi1j&zUWjof@gj`UC8)wt!%Zi(heeEA1kf9mGGEL zaLa@lPC>8K8=!gc`jPR;Cd8)!%h&n!(Z=rDq%_Lv6|?AcC=iCD4dvp$HhmsWARMRckLI==?+#R}IQa1}I z!R}$AT{-n&lL$y~OM=-Lv;8L_gr8-SGdYI#X8`mOI7Kj|TjqtM099gGeUi}Z)4>?4 zBc+$Z>H!@w$FlkEqQiMbk7a+bB;t^`Gsm(sTfOPQu)*aX%YL^we0w$S)rpOKvzsRt zK4_J}{cGA9H0L7WFd?0@rWD+w-Y$v{i(}M|TLOJ74q(%X4EvPz_)1cNrnYBM=^Jn@ z^ehAUhLz4S>;tRms3u-9FaRf4;ol8&!V}}OKnNwDzs@FsQ{p7B^(1|owg(l|q*2Wx zg~Y?La6gW7#8nvM>mwT#eIn z_h-4(G%OcqAhIbs=%J$ysb&(DOiWWU#XFhZJ<^;UUb*qgm1}e&eYw3eJ6#`MDWF-I z^?lO~I7SDi%VCJMP_M2#bKSZ%m9y~w$E+4Ggw*Xh7Z}#^cTJjJG{69Eq&79Da0+08FuB1Yll7+=1Ti5jx2)Y>WWp z70{7~mJ}o4B(<7gF#;U3vM$7e1hl!)=TV3$V&WluLSfSDIBS&Qp>CoCoD~P$ecR%X z640KPFahUrTSGf2PQarA;smr40|g|F)%y;xKmkDfcpd`nT$e9r;Rh!oX$h}JPvbe= zbKG%2zLKE=;Er9fGEayVpv^kfXqyA_v|OX2EZM@koAVnn)v5~Z`}8<}^Z~oHX$`6z^a^NtvcPGbN|orN0ZOF z|LXy~-@G%q#ngjN9e`8KoZme{X;B@lG+G zz6Y~E5zs1+^RTj2vGcIGj{bi&pl!v^!-^*R>{I!3S$~fH|1bbw9w)BRWi6)myVPU{hPF(j?zp>gb1w8iu#C3$DMJKK+e-2Ohs!m)#z?s}6 z9l5q<5MqLP1si>sR_8x*eU3bGU72ivqY%2GqHPz?V2{Zi+vKCy&H^?Z3{$m#i0CM9 ziEGaHUXB>D4`H9mY66tGo>K+SJ%jJ>;yHv}xG`*y9>q{s*bb32Nb(SNY>*b_5cWmo zcG$RGZA8Fi6gKpUwx@m`!j2?^R~5r=K!%r&e{DLScZn1QEGO^z86B1&>p-@eXRFD1 z`s91GT-+P4@$CQ@P)#+*j$~tInjA`ZXmbzgE=3fpg_?8@qa?;o`!ebZaCI`rbZ4lC zJ|Jv&FyABC*JC#SO3a_2Zz6k{G&P)-QC)R^>i|eKcba-fkz4b>L0? z>cHy@jd%27_}t@I_FJ$UUgJ%y=AIJB1`#Q(|j*?*11Sl+zRXo>F#oF;1t%uK5_zn0+9IhaP|S&R^Wo>8}t$d^=P zw8qb<$37rzt>G(0eu3S{Cq?X`aHUA*NTf=U-d`>7`RuF)7LqpK_8#QI(&kah567I( z-U5EVIu(vH!qS&~fywIuPBD(_b13msiRS1u;~107xaG8OrgN$fsY@&v`S1t;oH~od z%;NGP&xz{w88rp;&q#yEQvZBF6p;o`z;5J|1~%edX^@HcRB6!rtCcwjmXTc+$U^-4 zFz;bW;opE(Y}04zo)#)a%*iWU0jIidWqB`{lYQqAh(6us`rL9E%Pjq$jevcY{;qxM zqDxFLL_FVzk^ZFMv`_fqdJ`8>bkYxGs(aMWM8^>e)bhYGPPnyPJengxFAn7dLxVUJ z^G$>7j33irEQjInJ>}xi(BeB0a1mO3NGg?SGjXqTfWlV7`un+(`ddIFb)^X>pHBJ| z5t20Y#4Q(??LQqLeRa5CU+xd~y$pEsq_MlIVL7$7gCU5x$40yWhL+27l8(>Z&ldrX zOw+uu6rh@oSo}DVq7N0w34#%eC>2T(ivb-mCnfn7fFq@fo|Js>x6(N>0C(o3WM->3 zJpfh=?n%k(a~;9ZCnei-qC%SThb#P2TFNu7;qBxjZSqFKwsw#cf@>igB7}k1)BHmi zo01PNW{=7VLBwtjDDX{KL8;bGZ7Otd5`-CSH^%`5EGG^q3?t#v0R?&rKcGOK#B@M` z9838mAnAa@2?+-j+OZP~RLVJ_fTc2yC{Rnd2`@TN@7e|*Q6LZpk0^v6Q6L1~ua78P zfXwt{6gTP`Lrk%bC}3Vh{DJNv5qgy@>=6az70@AfmUKkn6mvvjs=g1dF@($P#$Y|U zZ97C9;~QJL=)iU?I-rUUP*FCSYa-T&p&R&wqNSIsZPtR{99Ni(1Ma?iu^v}IEGZ-* zj^^de!iDHWcuwQVQR~p>s?AToa^osJ z$62^T056YIt?qitT(ig_fS1Or>wfrvI49!LtvD=_coN`*Bs$;%E4c_0RBwu-s`to* zp9x49ndpt!gw!(u56z%#)!Y7@1Nf*vYJAQCd|6L zEh33g$hZ27hOf^98je*PZNow$DvZRh%`#hP%r0q?8ESsgU)20a465&8fd39?m4~ag zY?bS(eK<$0SWl}&hP9=C;XgMj?yfDG?PHF~I1nJ%Eeu$SyLL~>7_04tFwXsV*M199 z6S-@jhU12>%3b@UBn_10vu#OuVc+O75{21(exL2fU(lEu6K>h4EOmrnm|l{XCR&Mh z!o5*b6_kDC%B{Fx@2CsnECh*B^cevZopCr>I|U!$lNK@7RfZfG>xJ=SeiCa&;T4(L zKpIBCWIHlsjtkU&`Y~Tkv|UwqN8#2yrHr?lyVb=}&B{1%3i*_{jIyTEn5wLLI{X`a z>Qe{LKYtZ+&hA=AGf3R!B;Q=&nsSkBTurV9z<^Vlqr@DRF*9wko!=ELkE_XaMolT} zn9OCp_9oa({qq4~Z|wQHE4Q#4*0vr=_GEWu8}Y8INhaP?T}^s__0%AGzW2u44MpF3 z;~ko&nW)aHJ*HuOd|0=5k6_Fz<#Ga%--q=)rPxxu%HZb2`qWqrVoWwGGi@*ojEV61 z7>!TN)-o90OnLLngx`)7Ri3@eF#cNvPLdfPGt+7#>LFNb>!P6UN}%xy@#UZh;BebBJCXo zJIN4;gHAHxPBMhR`?ZtIoybzR!;f~7!4%6$2J<4~5;V$3Xv<$%CmG}wu$Nt0l9SA_ z#z}@^4XO<^p_X;-z;=<#W*=Wb+z{J-3ZIx53D6nF73Q;Xz}+`4R#zB8%)I!&JOOuQ zsJbAhm!aHFFJi1GqRpMTno#Hy&le{Dgptus1sJBAfuo<=2`OFH}s+pTsFo z_b-K{i@3A=C|+Inod<+Fiy#r>+;N=~hwunZt6ZX3=}eaVDvpWXh!6KxNkDw`-`Ipy zZhL39CtYHF_9sLOmRQ>WRj`=v2t+J~EG1n2TPw zWMBZo7@vk9e}jxdjsqKUfbdm04jif3KFM3a;xM63{t+SR83asg@_P$B!cxHWRKKFcY$q;j{3qu-X<7aTa}Sk zb636P9^;*d`WQ((gCU^s3|G5MjIKCRHN@a2=EC zOW~5*lZdw~)eTl$Hwx>9rhAcxm+tMIXpByf&7Ni`bTxRrK32~P+m=@yJ+EBkn61#~ z0${)e>A{!}1ZEl;$!ReERw$3T!wl>^i_!n>8Fi;jhZ9wevS%70R10RQnXL}D$%<7Bmo@)Ed zA`!C{IYA)$v=#YnqzFCn;7sL1m9pbT&V3UB7m;(1-%uHAjN)x!wbraqkhlXWrP-8l z=Ym`~46<{mGSV2s%OZBcTW8dn_!NS~DD8*kV$19=`~!_~0K&~?B_e#jDUEGOGFi%U z7!C*S=@Z5MZ&8X{iu9(}YT5gdqAcs!i6wQ+7Vyz~pi}w1U%Ijj`9%B!puv6%V9Di% zZjT8CVdxfztrWTq5cOtXj88kc91H+#_Qm+h&XtH+`(iZoIrhb{oY)t;2q}>E#po$~ zUyRJyv@b?>PG-<{vC%z7?~4grm|AzM%`nQR%`lapaZH?Q=K3i5HZG2f?SK)8gF9g1 zJ79#s`}Gdk<;Xmn;YaU)VT!c_hItY316r3NG)gV(4jA$Ztd>4e(hk^z%??3Qrg@y`|x?SN5=Y&#bM8MX+b~x;SO(ex{Iokv+3l z$E)jp;DFdO<0NCYn%uoJx-7*hd_7%%D@0L3K9fQ3iDRhufQ0X*B@9UPZfwFL*h~Ao zKPr4qdVdjLRdZgy` z{o6~s8;6DV(te9i_^S5Oj*koe)pL?+u0pCIGn2(>f{b2;aP$lWCQAAD)K*_n@3b2A zJ#{jmqXeqpbO>(zX~ES=Z9Ius8*kOXiCLQq$n5Fy9TQZCe8+BT;mMNTUOABUff&T! zyMyR%hujE5HPf0B$ED@gTZL}C8HcNC+<~iEL$?C0%{!Ej^bRmFPEJ-v>UeMz4UKTJ zw7zc$w)EpbChy3pp$F=vQj3`g%nHRiTs4E!H0HrF~omT|`Hn!tU1Xt}uO3 zZ4ymduKLJf zcP;GnufA#ShPi4q3xKUFj6V#oR!(qv>%Dh@rO<*_1i3yatJW9bTNK}*wH6<>wrcfXTPo+B`XE4qlD$Tf4?LK$*72K)J0C)DrUC_0iez@`l zx5W7qmS-Hgwfh|E6CApE1~|0Ojp(P6S#)olMbQh4NB4D~NBapLy=n${H2=n%D&vVt z_U<@`L~+KS_jI2>`wRZOa|ZZx=wN+ftW_%G>J}XMz>lSUN&IRrwv?8IX+&%-!T9-^ z?(_2i!OzFK&rg@JNbpxUV)`8X6V7F54K&SV)TktM*T$%1X0oE5EVi#yw!jleI5v&L zF=XbfsIxj}MYTpMt0J>|h)V5= z#Du8MZykrTPa)aK(#x!A8ci4DWFY-NCQ0<@T7~qZlIKMF|5@n6xruYK3;2`vf^a&{ zy^_4kc(=Y-nO4?q9TLuA-L{@Gcg`FYb?EOeofie5z(tR>Dzz~@9tfiryXtTrP@_5s z3CMI@5ZKhKjL*i8xL&BIzGI>fx; zvhft+9%fO6%XHqAGs^|DTxkvWwfeDv=pmw`uVh?+E-xxP_6j82Aw2df_HjPo@#q3u z_~&rZ%zNNVZljRUVXE-hT|~k$2=;b^3uX}Po!#fc5rPYE?HU(SLtUSUGr;^Nga z1)4&~XZZJ+Hny+q?pR%nU%T}YrYom*zt^8BdOglmm(DXL;+uUHPff&eK04hKakd~N zGW8T1VNX~OU0G}osR{XJB%EVH-ah!!3T!*uRP%5-*-Q?+QDZGHvL@e9P?PnbSWtrg zc34DWsbj_%*-ogvmwBV1I4w9B@+G0f8+*49@%GSDwW5TF?71uUAgorD@VutD7^kf$ zAvwsfq6Eu{6(#qhIMRv|y7FI9LP_A%!ITY*x+jtQI5*md%M~RU(ZS5Ce#%3Sve2TH zB~;Fmgq*s^8r6gkk%GH0%P8Lp6C$x^g^B+P6Jp?Qy~5;Os7!B%f8+`iyrZo!!Dj*K z$7@g^F;#PBSD2u#K#XTqK`Tt2p;nkoR-3S=FzlTOhY;3otPQ~~?mUDk%g)&@%fcyy zQCa3Rzk+-tmHr}LG2`M97gB3YzHAb1zrR=4nn*TDE=|jVlM69B*Zj8Es*|%auR1Y5 zXkB_@>%foAiZv3J29k%u#JbD)9%EWc;+6bK`?!S8>8*t`KR4A(4h|CZH_yVE|1v+< zp4~!WJw1{37PN_x9%WA|#O&+*Z#di6a^Sy?#?n8*URZ@5SVwcTJ1bn)(Hsus-6l{e z>u3%kV%=Itb4qtPF;F}w;`5AL>u5R(sqwWRg4u~?Fx^{6vk!I)t)sadukdHIj^@Y& zXJA=Oqp6z+Vf~2NOz=V37t@^hf)KKg25)kgy75N!##(&>*V9a@01CxPvcAOZ)K+Y9 zapORR5B?{%URWQ&jw{%gfE_cFk2lJyk$d2)0%SELOaU_0besuf&c|DwAs??^0)eDt z4qY;&Ao!=_-BB!CR65>mKp40{5^AL5;lm{9OO6V@IF_))Hz8wzQvQfZ{%cddoiKt* zTNt6z@$RD*yO7W$kFM!>e~Qh}((%ZI+0*g#u861OrS=4M-rkn|$vVHa1hJ1W9WP0E zS+}H-H2j0h&SbYZcT0#Ps3<9_c+M#4Fp=oe&SYOfSt!n!E8F&EB%H^#!Mu6sR%1C3+6(YJGI;fy5KH7~*5}Jyy z9mQ9|E?9qaW!LzqT8c)tMBZhhv7sQ*2-W_pP!-!4Jyz=teNgSEW7Q7Uu3cL?u4J9B zY`*mBK71_P{~E|c9vvPS1bnJh-A?z)OQ6V-rBo=2bKBygR9Nm-BdqLnepoPHu;^;w zeRD_B=6K)F-Z+?PE}W`eAa^FT;2Ja&!=d5F!wi3KIw_3rhe14yH=kYme&1 zM_9oVa;EEj+7yx4gM|7cp~S%58VQ|5)w&UlPw?vnbLQMO72q8W3B_jtX$wZp0t~jz zEE0;k0v_Z3f{@T>Mjm3DauEs%jqSK63tOSkCZ8|76*)&r{U*FZVO5M5A1Mk*&HBWFf-y4kX*oMM?p2d_89a?G^^B<2Yj1jXVqbI!}hJQ7)K%<%8Vp6%xLn>3og$f(}6t-W- zMo(g20*1^CHoBHoBlkd9;Rk0SVVcCNrsLcoGd6mzFg2y}Xsy}e=Q#0$oM2N!6J{bA z(IAFe3_y%*5(_#GaQ^Y8VgCN!@|xa z5?zAizh12DD3|&*B%H^ku8hLt%>+!I23FMy9EnKISM#57h#vP<2_gDs9HZY?KH*CB zAH_08f%M-u2?ui2Awl|b5=d{fnyG??xSYY}Qibn8t=*<5hAN;$Ot&g9WS$vO_Jr|p z@jrv)%F#a`&A1E?LIx<6ScHW0sKkCWx+LIU3uq;~z)2*bWDK*&O5X zP~m9s86V}~v!vci9(xK0B~l<*=dVp6=hFFkcw@T-dGjDf3lgS~cPbAewbs@=h_~4DAVhQmvK(j&xGfvEP_Dyp zqrR&YAr-LgT&-1uldWsJ#_O;#+c_9eS9uf7(wfq>bT7=7ST0JGmjJaTORwvcJkczR zsk1a_Vvacr>MQJqm^|JBJza3tMS33}=%qR;>w<^4gxqU!ute&x2ngJGJ44n5mJ?YQ z_o5n5)&*VpXI&8dNm&?PF82E}D=@!6pNubVAw%mQKmLpqlY9L-0Wv zMf1+PAQF4>F8uQ@h=IFx-o+bGxn76nC(66PJ6hfaJ_|@+Feo2jEPrP6E>KrsGH`AJ9Vd*z15DqK1ZQmA6C#D+$Im}pY%Q)w zcdaGZ9Q79_pE`Gof0}}&TY{fs6%x}Fj!G2j2;S*V&cgoRayQ%#F#SRx?-m0~$yu0B z#EhJU*zp7p#x{S5Jr-dMnn3aBg;_dDQBS@C|z|e;6-#B@__T)38>L$7(h2)Rnwic!Skzt4F<_ zN~~9VadToEg9zK3yTJ3(+40S(yTj@(g&pzr>c(ete744CV;vREk63UtV4P9?UM$(! z(IOgOdjjlbG~Mi8KFqJsDpNkpB=#HrjPhX)v-llbE{tZ_MPK|I(v*W?7`JE7g*j(4 zj<4`=7PX6icuWf(2~Zonp$cbj;_(F+j=|1R;^>yrx<(!D_tnQn;~NMRK#vLcA9)CO zmi(F7J!lc#ekj?g1rI>(=cy-f>>OakOWdTcF9*q zmPR;SOr(Oh;Meq_uzH0x_if#8Zg^zm1Mnrc5nt%b)R_TqGAkQMwj#h_9I2Ul<@zwbVO!XqQUoRvSXnKK7Q zKk(mmQ^6Y{-gI4b7@Wgz>M|bSW1o`yW*R|vmg(FFHO6#PCa|{TbNC!akk#~T~Mag8y$pP79A zpj+w*uatgzhc=CUgx+tE>IgysD7|-?38sYn+ zVtJ=B{r`Z(Iw8{^A0}DzA62hlazMX(Zqz!A;hG_Rvi(N?Q*s=AgzfSFm#Qf{dZyhT0uhkTOfCmNBh`3lReSSe%9XC67gfZQkAQJIORkGH; zUWSiL=>;gz0uk(cmk1;zGm%~s(wf& zd}>_ZaV%~kw9s}mHlq&L?z17-mr&x08-giQ@p-{)`na(u2p=YWHM^5o$+zQkjnQ&!_fJyJ9|VeSl6dj zJC`Z?oO9PFm?Do_Y?Eu!8osqq+l}E+$jppO!&1VAs0Ao5BoYn_P*`p~Gg0gb>&X+J zNH!NP8W`4IjRlWG!Y*UM_`q)druvxL_N+s;J(Xn*JFB3ED z{yDeAz}-6M_9j%Q7W^Y~Zt;$mbBoUc(h&sy1I!ng*_>O{6^MU4qoADIg>V#nbqmaH z_|RP4W*+cC;S(i$gk4y z#Moe~Rv!cC902fLl_3De5g!K-e6l`K8mx@T9rOn$8Vy){gA-2JqI_%!GA4jPRJ0)h zb+}ay|ElLccO|tES=6eIj#86|8_+;IGfEdh*;Ol- zm*C}9B}fEDPQWWbpbqC#oP?)Tw5m%7N>_)h$C_7w8O>HWAKwMjcF1txSp!>P=Y`#? zN1wX=^LoTYb6-8NMYCISCd z0jqoA7v8;(P~o(BTkt19Be)O#3FkmB!{0PqHw_@Slx-nV0A!H$8s=I-8EiLASMf#Hq4~ffD;3Tw(qKqO|+oC^y)}$ zxRq2~lmw_x)^*0cIYh- z5&)X5I>_K~Wn#3oJ-S==q#Dvu)aB6XS0}KY*p+G6??n59aYAFh9XTKvo!({|5#QtX9F_xhCm5KTc>*IoO=|ha0d^&P?L z>vcm@%Dz==B!_FS-&WdI-WFP@ZD^uk17NgK+pgQDE$4}aklGg&R{<$B=bX%BBlsD5 zAU(Hkf4#9B-}!~R8!QLkI(E(+0fp@|KG_fKoT{dwZ)ZdOged)#M9F0y(B7v}9UiI= zPSJdZ#l`0QD}>w^z~k2Bcy+417uJJ^;P0ZxH&q&AQ+Ee%hDdAs_$+J1rUHWKf*)Zs zS7mvF77|CI5v6n8ilJSc0QH#r-7r^l#*c(v6HIWZ&DU~C!Qx3XyLdn-ZRir}y~;FP z4E-3cFA^2|p|g~PH2)GdBNrsTFWQ#bF0A$+RY)}?M&=>J#-}GCSBjfROLq6DFdh%h z^$JAC``kkmF9+`-#O6CfYzlBRmoq!BhLqVojeI9`H7QPIW04<|@*H<7n@}Qkw{ifw z6clUOHOlG#a|Wpfg;|I%lRQme>I%jzvIf?#SG%q2s#OZYUbcDMposjqUrKHFG$GcEe zb^oyl{fGWdZc83=7wsG_kEmEuA^0>tvVkkd1}5XQn;;ziy<>=s_+02ZO*LV)GE z;!r+^gms5-e3s9HqF9 z{h{i4UB_veU5C!WS>icX=7A$xsN|f#{e(Bul#{A=Fq9vK# z#mTz6z@AINfTSi7pPb%gF5wh+O-c&|ONRF7{9*+(H)j}1^s0xjbz^?9omprxP(-LM zdl*W-<2bY6F)2yK@5@q}<9^|46iqRY-G1rKa-@;T}yg+A^#_IonsHxAJgs02T__c#FG zn6`k^zVJ1-S!#;+I0A^}^&V$r4mk17n=PqQdlSQj4|!IH>{Tup_-2w|cxb(}h`~}M ztUH)_R7Vdhs~pVl9UaWt$ievK=}P@0r<0c$b3|)W*zUn1$@U%%Tdgjt?>$7a8)2($ z(h)`Z*)o$mqrErY6K-gzm6n{lr5m4>QXcm*Lnx#A?Brmh(%hB|y9;%WDasCKnM!do z<3KF0lX*@iCu8z(mdsOLNcjGUMjTIcC-}H4?&P15 zuvZ%E z_>ZDGpa9G6LE=Ypb%t1o=t81B9~L$?r#8$Bm9|gP`rFhsM$7NPBRrDNe;C;=lFV9t{WeQbx+m@*_VI@cLI&;rpoON(b)~#cfoEFbvT|O zQlS-@#@~9RY^uGn0BSPBeyV**0ptX@EwU`9+M5cXNQg*8u!t5b{JoIwkcdtDvI1Hg zi9;9$ZC{#`ra572U!Ies&23kMaUtQGf)!8USvi}6mEqr2;onojzo&+OPYeH^9{zn! z`1cI@TMh04f*1WB{tNDbt4+b(^zW<u)MUMhhh-UD=pl!EJ1-}!2=D-fBSi1zncVRpsDH z{-nK3ClDRD8{0)_&H0tlW>s5Hy)8!MgiIq{u8$etVJiA2QrPB4dRFG@;y#iFpNK9J@8(WC7pY~|9D+X4+QVQDv0?yH0vcXQ9L$0Ue_wZkpy<< zgx$}$^CoaOVfQg0pL0Nb7cfg0yN?qw9{z6n#1k%jMOq#yg zU5@>uXr$|Tv)}WmmBV?nVXfll&F)P`ma{Ls$9VR0kJ{xwbyie5K21v7w#Jx^#f8t0 zSi-5Z9Sw!?wLbwqMsvIFojUtI>@7NV_V91R75 zu&xK=m;JceN1_O?zTsRn97^Ab0S=&reLv-Hq_ClCQye`C`=IL7;6RXY(@+dR!6_iH z*&H5C8f~MR_@b;vT^wRsy?GF}A>CP(2LTCN^3iE&g4`jqutqTLJr<>)xJibJVo#xL z=uzyW*q1<9ia5qnUwR0fMrCY%ST(huvi`{DY+I2=aG_w zrDQ}GQtD%y6slb(Dbiqhk%>*SpeE~^`#B!8)wa}8KVFBNmHphUI!T2u;zr^<>Pte2 zH}-BJ;%$rzQce*Jl}w$0!EJ0z+7N;I+EFZI(q6FsX4pt~G`2OoyvxMo{({6Lto2u+ zDqJD_vECoy8lpoiOwKk$&`HvFJx>4V+g#I?Q%@gq?7) z2;Cp8?*zoG*{s0!w!=$o78!PIFa1G8?zSZ|{vd_}JyIvpWrDE}Lyt9gB&o(vfT?zj z)EFv%J7ZtN*SUQ#%3D8-w)-Ptg0oYYnu{V#RMU@Fp*rwkT<}sk0`o?9h{PUr#~0NtJ($S7=T;MKn_qT>^Cg%TGo1bgXUV*WqMYaW<%-q@vu<6WFlS!TIY&q~pjx2o=l(7nl$k7T% zIgg?N-2s!H@6Ik4FzGBH?-pS)CMhbOe+CgVz@&Y|8s>;kK^!}ZKd0bHbd$->Ro!LA z=4oKY!6GZOIxg*I#Fw(cn1xZN_!dk^aw1tsV zig8ZfW}LgnqmKEZG*R{VER|141D09nu6hTO1mQ*jS{j?!wF8a-g+uA0Fex18 zRuAL-5*;lEHU9l}G-6}I7Tsh#Jp4PlCgkSfh>T+&0)&BOWP<0F%6#D_K2-Y0zZxVW zc`uH&axY*N7Ztk0+IMowmy%Ec+nT2kvAILGuT1T8A&~b&Y`Uv6KCZi|d{5Nf&Tl;v9Zia`vMxy@mrHNAId@5JyR9U;v82bSfl5Xhodx^0Lei$DnebqsiGx*`ZO8JtDB8I)Lbon#X zJ{J;sbosBb8QFAMXM9|jQ~92#%bnj^!3T|<<(J7|8vR_#{ch(zN>FZ(T5OXewtanT zp;DZ1Vqj)7q{WHChOCpd_&Jeq$l#NioXn2MyQ~NI{cf^8yQoN5Yc(U<2MN2(h~m?m zL(hTCW7xe_pUTLAkg!hnBCLH!7u!BHY&-%8yT#r^7Ae_47EQNo>?d-6OLTfLlMnWU z@$igdd8lOMG$foyM&_f0$U$M^G?470D9akQv7mk zD)kmLI>E2SE*^MCO9#bg0ci;WXaVAGGn)>Ix&pqczo2x`#VQ>Xw{60t&`CM0qtTlz zF^A4S#B|U}9{c+;@`%*;Z}1AuNvG7LY$>2$Gzs_i&L7dvSJRUGNjrZ;U-U}*%)awS z^qDDJ!l$j9X2(7cvRUM5+)_O$V=p2=JAd>*=H^dLjp?L{c``SDWPWaz?C=qFoY?cl znzP9dZ(=ic{)o+N=YG%G80N{-wDdqQ2dj{nr#T-jzBKW7$M*l=Pva?v{Hd7S6FJ6$ zBivcwl6$!r$h*aVQWC%p%0Vn4H>YEl7?bbsgBo=|H)k*G7Rt>z1F!IBl$&!P=H^5y z0cYHXlV`P;f+kX8$o@m7`7j{Ko|W@XeIo+=X!0>pZhI$)5IQUnb=W*XzEeuyJ>lJ5 zsWk1DAgfSJwV5ie!JaN|Xr}Uv{vG>Y&of%hz61hMM4pk1oHOey@3N*|#ww6|6slsS zn~*TgkyWE{2%eZ>6pyD<#znfIOM6Tps59ANPZ$sXs8}8<`MDJd=aCRG=OEtPr6!e0}ExDHUkvHZ>+gc?0dADo8MlKznMft@|T9Uw*fHVVV zx&cm*XEunAx&kBkTM7!IA07{)hlew;k*6#a#nHn;Y!G_*_klm8#EbB%xKR3HlW_aJ zy}X+O89l+GX^Ez1j(y1*Q@8ck2WQ153R=hcY^Z%$j61y&SwG8E zpl(Li&oDpNo~8Y74Xz&)>t-GRF`hCbd6CJR&RyZZ6@sNJf(x+v8s% zurJL(oc#@~0=b*2;-s%b!ZdYOjmA-W<~aLtxS|4wAEjhb=YA&B8_f5-x7gOJNc+2i zu$##>BJIe)#P~?INc$9#=yIg}^TqN|Nzmtza2^TD6>0yMf|^xmq@DbbJ<|S7>g!yQ z_Q!oms7O2ZSs_AexO|sLJGZJa8Oj@JU-$#vi|4kODy2QO*49Y-dr~6piAGa}+QTB+ z*2LOuFGIjR@e?ZIE{YgI_t{i&J^p?;^nJnc_w-)R8-M3RPN50fxHM5!%fSyple5I% zv7Cs%_oHG^{GG1+K zsq9n}Ibs*=J02TMV>s_9JdxNFh4+ub69aeaDExC!nNCG>6Q#1_9W4rv&jQj9oD2sz zho0FeJn9OJ?_XO`6kcj8>}On`7#p(Wvdbc{l`$5vB(rZvE|CIXjaS7*;J2BC+Yj|} z1YVvBJuUI~voSs*Kj{^HKP7YYU4F+Jd$;w}`)5V$UA2q+4Gvth?_FHtJ%Aok-&FI$qdP0Egq_i9^|9uPQwLV9S}|JNv0|Kx(9dSARqY?I4Bh}|cQm78Wmkk} zki+4w(dFd8_~h!L`XD^1jqSw1ori#{D0Tb<%L7<{^T0^#84H2jXL6-;C-{foEu9ej z305I7{7#t@Omw5hb!V^Phuj(B5{!Qbkavp=86vIr8h#5AGxi$ZkAk|i;ps}nta$pr zwjmCS+G_WiqU|#&Xs%>J7~af#;bqvs8#-bPDN#1 zLMI(%%a2$B(9==*jj!DTeC$5Z^BU|e0(yRjSNJmmdI-Cej@SnCXx2;kncI+t9CL!x z&c2x913F-$VLBzML3IeXphUQ5tXgSQ#ZrqNf_pyH-P(5@_L=|hddKCSEGXFLR+I=G z_Lf zg!7oRlTi{f`t)efE{ufJn~WQ;D3%*al3q@I=)q706(U2YTaws%F(ysy3FF~=ishk_ zsCOaZJQ9@)-~LoV&C+dma1{{EzCUl4bK^4B8TI&sfbQ)W>Jz~eVvl&ssx#i4FUsEP;reoaMK0{cy zq-Y@Bv$F}p0E+4CFF_s(#=O%d;Q%iMQ=7Q)`M1yxZIYfyy)4XEhE3ei%n8i)q;Wz03i9L9? zKi*9Y+^zBMBT$hJg?}X8jdwJ>8=nQF8yFJ|FqAm6csJ?__^gi>gm=rm7A4*tCaADs zsw^cT@30gbvYw5+A~jx(S7=N+VLEA3H+72d8k2DQ;oe8R1&^i$_@*Ocg|!u5^}@bS zcZ3E*A+T-dX6v#K%_7t@Y?=oGew;!?!>;H>5WH%tR3}}{v&UP-{9Jpsii342+M;-` z^H_@cm|4!2$)3)=;g5z}dLw9J6?z5@f4MtDT+r}4fxO$SJ_WISF%g?4H2kgIWz7Ae zEv{(z2R&-#fQE;)az(>G=~1ivXt=1XOQ5BrZ21vOK*KvKzwxzefsYamf6ZZY=FY+Y zf@k6pC(nX^5>ld$gGcS-vkWPw=nSoqAUFX@-iX~su=u~?75DrYD7nyq?gHfp{)evBx%s1j@;)F8?63pn z_)ysr{?%fE^5aszSSGC!Ml`!RD+V(oa(6f9} zL()ZY15DqI+9gb-m==EnB&T46JzZw?bOESs1zu2s;`?fw2D=uLxnM zD}RKYpfEz%2@>HB#D=gR7DL#DP#Vk1sh9?`%VH_(%Be0g5F!}331@>e{q@G#iNqe9 z-5+Ns2JY54`>#-)evSqwT33#DG@Kou1*9PuZ459-IkPxB>Iy^wE-MIUmj|G2+fLDw z7Mw7`Cl9j39IXT!+CKX~fitAO$KVy3l1?a5+H_Ch>(4X^_x7rC$--#?*J)L`{G=DM zo_$rh{El^1xvi&W$6{jDE)Pt7F`}!ILa*%RdcLVPo%AsehQ7}H+$>p0E_*KJpfp-6 zt`)omtlM={A_^OO#*E?>CRaLlf4ablRv{5O=f|Dh-G!slZg6LT3s}Ar$h%GD zQvl7u9K;d;&5m7SOx~Xdm5_jD*Ko|Muv-Ynya%uFXM|(Y@?I(Iw&lH=Oo`dr^O1&h z{xCAh4q{pXK>77jWpJ?G7{bjV!ezcgl~$$HtWPust33o`e%uCQ7T=1l1DW@-j?6uZ zQ$XfgB&-9OuVh~WktqVmlW(f0eJ<>0Q zNG{_QZYQY_YvV_YZKI0We*_4-nOy@3LN+BvMbf4Q3JH3ENH`!tEHckzggs$A{A#g0 zRC4kaB%DW1a>eYwUr@93n7t$XYOZx7Uu4H$pQgU{2pTJ)ebSeNirHhI6(Y2T+wY9S zs+c{uoiQ288?#^hBi)zhwu>repIU3{Ual`skJ(GpNYQrrOJCL|Z)RK8CW}+tUH&qH z?!8noVXVYB?Ag$F1xL-(doAx?tbE`oBv~6>CaPLF_yuTUmc3Z9oQRsAiGod0bGq`6 znp1#_qUIFw;3nJ_HCOA>q(~VdbG0r_FOw24r&`D{w_x20Y;3-GIg!{CFZYj^69aea zc=O|&RjhM(*MGCt zd(6+ZXRT~l7pfg>hyXXKmgmfv-fwcKbBFlH+btauycw&I7;isTEVr~vbkx@F?BV)| zJ8xV9@gD^8ZV{oBK>Wi*%viOyKk_Zof5ol%Ca&{_TG7KWQ66qEIr&m|dGUEs{YB54 zGiT`?Q@2f(gGm64+H+U)YQb+-tAFyS)v@r6N?Nq+ASfUvhheQQJ2O_RQmj@bUaRkW z)ap9;Mry4tg#xTr@jhG_@8;z73zT55$}^V!#-sAD6W|`3dg)QFkx#c5G^)d`$#EF) z-9HaHc3=EiX#fs9)jl|?xO7xgl*QT{uMXCRYlBmFxA%ojuXojlCPu4Mo7xNE#~>Wh z(VW^8hDdM4b!IfZ`~}HTQq1dNK0L-s4)>jqva=$LsUmG)DXN6r1s9|*g2zsR zB~CCYxurg)wg46OaE&7+2|Ec|Ov9EVV`PJJ&tDW`^fKg>juIv70+;M0UJOQ6_r(@7&AQ+6oJm2DQi~*mZF4N4%~uQHc2e72 zNa()F5rGLtu^HL|I5Kl~07mbW_yV}pK1o~v*ZHlZlI525Mj9oChImj_#+_du(Hik$BZWX+wdW`Ie93XO1%HgmxRL1v3Cm*Zx2hZ zFmpb7j7eKw%>3Y=6ly~iW}aGW>pHi`P0ZYVzCeI_WO-%4Is(>>2j!vGnrL(>r@iG< zR-UqQd1)2=zjP@Pw5*5Q7zV|abzfcj1B1SSzwfS%6t+jq6rTk$RWO#HE=_q?!11ZA z&@gTOn`i>c!XRc?0f&ZDVENBMg(EDVuKcll0^KOsLdXkuLN+Y_a9RNui70F_8-jXK zFd`h$wW*v1^r-|aup|s_bhawhhL6R9o8>&%dkq|s*n{c&WBSCv-5S$>J}T7n(Bwpz zKHkwVeS8*>j$r65z=++Kf&l1? zf?`P=6=Y+_5#$&t^A5a1)6xlyN}CR<6>(LQaQg$jitM-Q5ua#{6h#mlO#o=3G^ODA zeAS5>q2CJ}L-6E25s*)rx3?Em$KVLbYIEv3D8B&+w$HbG*bCi1GZVUR`I;5qxAom4 zJ&*6(TIYfAud>kTb&UTNrm}U?;ymlQsbGP^- z{g!SC-iTG`MWp}3?!0k9`ri-a-J%L9VB&j-Soe_rFLsv~e=Vx-iu8ZOqgD<`e^@J5 zr2o4fwQ@lE!&-F->Hn2StXLl@gb!D`2T_{{23wrhgsZ}4eQtZfr#MTi8SQ|0Ol&$SH+&|h|mMp zAI?USF#q+A6bbV;X})wyBs5XTWErwbHZb=LM`8ajMb7Ei|4Hmiz{(<4i|P7ZSR+a>f1wY=(yY3&RI+nVE>DcS;=lPwkUL?7#C{S+V~#N`^B@i6I!! z*GA{w2uUdD3)MO??wuCwQP}^PM50UB|65T6iZkHKo;`qs^VqXQRG%5@#8S*^f27z} zDsc3J)Hg2rYDfq&YPuzaA^eP=>dokVlm%d$6&0HYVEKZP3GjcT$-)$iS>-c8-U`kONSCy{c>#B_X|T{f zZLXYX9?HU4X2=Ubqbl+OPD5p+ya2lL&kG>PjwZQ;*l-7B%L_P?@&a1*{!owlquhIA zr9YJ%un2ehIkZ$GK2{5El=Eco+yEl6CpW-9H-H$pTjvI>L8V%aW+%!Gz&l!Q06q&y zPcT>)V2p2Oa|2LUAc*i_LAe2PZ;qs;{<1*QD*s{R5Gn8Vc!lPq6I_)xJyf{>gC^nj zgENo|&}=mz6KW?w@B`uHFVhKx0DomDm}s`P57!%z4>DSrTyuV9v{~(eMf~@e8q`TO^8oxWGd~C0 za%`;aXjB@LE6#6Jc2#exH*RRIxOB2LQXd-_j_$0uvf60Y>SN6nrw*)IwPLikW5qZX zp`XoKtJ*(a8N30`nP{#Eg?EM0%II=(0M?rh)d%4TZmL-yF1ZW30=-|vQ+L|?>mAP_ zeg25W7T#d8q;n7WWBHaI2wsm>=!E6lML23^cUJ9x(499fSpLI6-YrUy0vEoUh#6S^ z;hp#vM}!x}Ux-*NPyzEXlcvvimt%h=8tHln?c*M`ayW!GtX2FF+P%rha`uJy7|)*e zs9pZUXho%6B0C+0&yQFFR^8E17+<>s_}G1{`c2qdgjMhT-*AOLBdq#B-2mG_YR%Az zaKaz6u7^Q$c98m!2vTmrI=$#rqiEDsWeDuW{AUDniRu?pm#M=2QMSR_nQ9@S`^LS_cw55vW(aV3Z?RZS?vTDY><7Aml+ z9|*g-dIPLNCMAaJ(&noQ&OC}pIKY_Tr3Zjlw5>_^GHe8z^WYuHCYF% z91{v`Ti@vU1>~&kdkegfq{0J8RpNcEF9`)!Veb|q-p06~bJ~FdtGJDgNn2j9>J*mfcHNh&I11A_N8URGt6CdRyEiScLWZKv{B4?mUJyIuO%*6QYjnHES z!#(MJm3K>LKA;rxtBpDn6|5YLLsPSC>5SzB-1A|)BDjaH{NWyo$`af|5j$?;ZE(-Q z1owa(Ca(acA}scq4)9PN_%JSL$q|@0z(XYV06hKx4>54J26#S!YV>FDj|6z|jt21H zvw$=MXSe}QjAs_$L0y5-`No0(o}*~-Cup+*c(!eC;CzwCPGmWS^UMj$u>t7Q$S+dm zC-AB`xaUceaQmIT4EG4`Obh6Xtt{3Yfcg;1fLY%8mSGp)@*{M*FAs_?fWxl zUCx6K?QMRpJ$nVly8iPJQ!cofwH09Y^+=OR-9(HmeG(jjRY*jPRyfLe)c)>(NCWQd zasiQ+0eQE`Qc4{EL?UK@Nc#wr5%DRAV@C1kwD2Ih$zQO5P@GPuV96VbXIi(oqZ%X;k-d+M}_z2&erDUg6IOr#;jh0@=`7 zZIB_R6Z4n=IH9#`BdD`d8m%>3nEDgNL7OE=%OaR`CxEMC;qbgv8G~)bVFz&>p~sM{ zyu_GPKh7GJd$z3b%ehEc$1lIizElu?sjn7h0G0lLHTd6IHF7st;Zxs3!W6tzO~*J% zB8quk!tSW$;893X)i%slyD~k%noj)578agzN1sVxmzyyP1u^HMTW3q&H5Kw1)e35Y~-xC)ZcYbRLVniK;m32!RNyE)_hW!+N z`8!Zuw@Flp!94={D4fIp5Q*%XyD~EFr81<0O5K%r!9yS-C%r_9-m2*Y(_D3%G4b+Z zWn1a)CX($0-NlCm=q|8|kJI+TJFI;>Q@-S)cwrAK-5sL#xscFxH&_9$XJ338)UX-Z zbXRA5Tz6CXo~XN>-+CtMZi=w7E=ePoOK&$gcS&x&T}O?^30acUjkp3Qz|>1kDw$Q2 zwaFS&W$iv=?ENSt-SES2AjT%>GCoZDYO#L!BPm~UQA9(RKS=F!A(2OyAH`;5(`B9U zaa~U3d!jCPerpBy!=2@q$zU4&T+01A=RQhMZjV}QgQ2%a0H8mQDJoERi#US!MM zds>Vx&P|*#T)>~SWdJFB3E1FFNk(Wk zRJvwrtv4J9@sFpEV)38$d(Cvsv_PWDgr8&?oK0H_XPB%Z0!eG&#E{7UuURrwnOu^1 zddPX!tXbs_X|$_Oz-!Dz0_%$9H{WtVsQQIjRPwe$thH>L+DrQR*k<>To|`OZ_~;Nd4>=sbUeL5RRwXRFEZrhPgDU zXMj+B_=GC>DW-iB?j)+X`uI^O1&D5PPESl-qF%P@mWAxf&f~8 zxZBL8fugQ}ui8{l8t7t`1_~!KQ!?nJ9M;k7R+gBv9ZO&u=p>K*{RQ%f)c2!!h32GF zYEs(#OYQXWag%Uw?(~6-LB32&(kJco5q;4s-81`6AJJ#5JAK%?XLjuCAe-fp;z^l$ z5dqriqX#lJpENb4lM3d^*!&msbF*YekEr9q!+7R`DYfqCp~~rJXVQ)y@)4WS{={TS z=N|Ci(ZkXM!H=;DiTRoH(b7xPes^pe6aF-wYRI3GTM)Mx3-rjbk1l_%T{(p*MK{+`mVh7>RC@1GY%*l!5*_Mr?iIkY2 z{Sy+Cz8>h}}%4dPzae(j)Ay zyCaAOXaRO|K=xFqKcc?Q1q|KlOF{`P_E{l9Yxw%kiBT%R&TVQ;hVlm3-(Qem7ycN`l~XgwOT=#lm4UO6##j(~frIi{TwB05G;z2|EyT!R>={RQ-L!GZMj z{>{6G0v}iknb$_2iAq@x?uDji*+T)#i9q^S@rnZJbmbpNr+60y(kT|gjlC_9uJ%ws zF@ud1CXKza)gB6wB&P47Ky{EKa>2MS%2Aqk@SI5O37-20&xwJ%b@2RKs7Bv}e`N3+ z?`Xkud=`*q;7m8b3G&Pa&rw%k1bP0*TWjiuZA>4URk z(*(U`9^v%E;{AYO${vWQFEbUVb3AthqN+g+{;66gxJEqkS}afFhZD`uwP$JnTQ@*B zDAvu~MjB6`OBcU%#7GAa_$$eDqEvOjBmn zXdInqj;|jl13Jl~&izcLH<<5vL$R$_5%$*sVK#@DhYZ73FncZToLv!71XRkBkbgd>=E|QQ(xzbuz${%go?0ZpA{mshRb(}uyd;# zlcBs3_Fonx7)FFWwbs@M`+HI%?1@HGh1kO)Yf4d;phy-Fw=)FV6F;FM?V^YgY@baP z*W>Pc|GMzFdwQ?ujl1(9r_cm#T$-q=<=~${%(KMZv7Csz9}CP8ad*1%kGoTljONW0 zH{mY87I!}s1-KuE2GbbMJNix}_C(+P zqwmDP-8%Yy0xHuIG&fP|I^NNu@Axbr{lLj^fOF`XjlQF#_)JS&T(2$?KbtOQgUT;8k&v_YEfD_FH-}@=lzYw(Rw@F)kuM=@oT9C3DnW ze#aVfxAoBbXGP3iwaX*oUgAA~o>AX}cx4X+-4i0v#0Q%x--Nj2tNhn-6BFMLHJh_ zF=J2R{V3^}Ha19nE?PcxM!8$g!pqyz>DaD2WzJ;Q9%wK^1l_tb;z^v4Q-{_K>yTK}CKOYHGyhb%0Cxw|o zpEIQgOWFwzL_f9(9KIqqFfw;w)!Z86j&`3h=h$MIqxNz<5(on?Xf4RRQkgpre5i~E z?~-Eoe_NIEB@g&O?d3Q??Q9y?<+a< z7QJ->qL=zUtahnol9yH&!$Wq)Llhc$m~+n zNn(4jF==8?7!O}xEDx1Ly%q`Qk*Hj__WKKJmTtR)^MPpgeR$i(%CQvV{T?9gHg679 zSPAXBd`T#w#Xc)UXg%z>S~*A)_MaVoW|B{kJxeTY(|vu zZ8>w(*O1AZ>DYF*&k)8fDH;g(>}-NCfMPoPU66-@*O;YC!U0|irZ#Ki^KYRY+9W-Z zdRdsS44bu~nG;y|Z}E!On9-F#)=jV!VcmpRaJOK?x(|_9HwmA0kr|aCq+1GT`YJQ3 z1s^>H+vMcc8|NkxdvI=loSPW9TjSjO{0}J7Uht2^x$%yMbK|psbOU380frK17UxD? z!H`BlIJewWQR3WT`U)GS%2E>Q4ok5i>k8x*sqs?0LSxbi(@C4Usjb?Un}pkM?_IQ8 z@Mc;Tn$eN4!pe%TdSTwDJ7V5p=f7sooVj!GKifgQwm$pNEW*FTHhMtd$0P0;mwmkaq+Z=mOp-MI@-{6bo^_q6LU{06gs{U3G3+i-?J})xD>J3 zpbmnwDV6?!4F$f>s*$_FD)9duButv3nod(me$G(x$)sm>M8|~=bQd81ZL$1O0Qs+h zF!Z_|AjgNwmhfIF79c<5f0MuDfqW@|{2(CgHs;Ym7RT-Rfu@5Cr`TA)R(*nLWlmIl?yL_RYA?tO?hw<5Y2;^r`Ym)fV7vyDWSc~mxMBf*k^?Zt%prlcsUB;EnW0 zxbcx|MUPWmWFSN^a1BmqX!`4ouM>$q__{y7P7K_w@%8VaIz5dBCt632cQkw*p9Q2L z7-S4EHaWBSI_e5U0U8D2>+*oJZQCh&(t?vj_~b#Bn4^_oL)%5a1IayFdvg`JWZkrY>a>bne$oq3&%TOWe#g3s+}1<0WAU(Rmj{Ht7{OFYp;yj9 zJKa>5PI{OJGGAqWZk8+@mpzwq5E?BG*9z(XAHkv=B@TTP`v}@d1;DU``3FO_T@G1D^6sVy9R_1I^H2(97vJL9h^R?lr`OosBt>gWAV_vN|m zqKeh0*4nyf>&w$)_0lv_lwJPPm$Av4*_N@%;uLR}zl>meFI7w!D=`jR1btU4n z^6t6H2aZCLwb5mws+EK9fF@?ya}~>pX!%Jf*c2_NEB|OY1-2+!P7x1o!fnxVwGK^+ zlo2Xd>(KNvDRFYDg&cDW);$v&n=ejIB=*F~{o~}sz}-4dz7iFwA5BdZC&xQloE)D8 zq#HPy4R8)TvvG3N6&QiPt)Mu$SYb9=AFPblZmHsKtF0<(EsvG+Qn=x2Sc(lVuSQ;x z8gIs{;^O63nuOc$=(Tld5f3GErX^;6p7B|)xcPH3twb}vWsRNNdh5eIzXHu{n@9Y7 zg+Ya4=*vq(t<|MJjI?GTy6AyTS^v;ftk09Jq#1$;RchFPjr_T9~0GI^gIru%w5f^1;1IXzTi=-W8oW>v?$p@ zP(Vxy!&+T-W~^4FSgm6Fwtd~BR@cEdQfqZ76kxTA_u;~LHz%)GAjCACj{&|3p?TbGv4Zwe=+6PA!myT+RvR0ep)xp|uZE))D z_P*njt9R9hCPu4Mo7xNE#~>W8(VW^8hDL9Nr7eOt-yu0ligi5J#SG+ z(T&I{9Vt4JeW@U%NMF&$fB^jgYw!wIjob}ZIKXleF)%)XYC6tVGvh_44z)^U!~85Q z_4k($Ns68zf*Q$<1e44?U^{!!^NQt!TGVzn5Qc`^7q#KTB!NqI5-;ZK1#M=Ub-%@o zGby+_r4~sB+vZq8o39qUT}f?sA))&wN8}~A7Mr0hcq21s2VV3}i7$9d?UTd>Z=K&d zDp_t>Z=_K&Tt{bwML|VtoO{E-H&Lw<KeALq(tb&sB@9GjDb~uj7u!lDA#b6+anV;pLXc6@Eg=l&W>UhQ zFdlxUSRN`#`6Lp~BPkYZ9kuB;Zur$gaWYGm7g>`ZFR017jSj|usKZJ&OC2+s?07@?zz4=FBV7hAON)wbs^kZI7E+x%+&9 zfb_`n%9wlvs2dN;L#;K@=u%F5%crb7W##hHD)@itQX*(s|F$v2PLy?DUHSuqzJa^% zu8kD7N6Zut1eq!r!%vr{yer=L)K+MiHvdgD0cBwjGpu++!znQQ6Hws@!>22M44=R@ z!te=s;ZDeg;U7*b-Xal&tz<(mFA7G4Bf2(~gVmk_8^M}`7*pJ4$n0o ziK571qY1!Fl$I1cpRY1eBlCM928L@-?h}Fdl=*slL3OOvs8yR&*FpIWK(Kwj<-=a6 z{+XFjeaqLZxW28=9_e{p-_|-0WPg=~POoG8x0*`U8A|rY_HQ;n*Pg}lVMX^BTf~6d zR%;1nRPQnQ)VW*y5q?Xz1TV)b^diFl7I)sbApCCz@@~-;{nCucE z>!_T5#1atxj)v6uS_4=UO{&YmGchURS@2KQ3Yi4Q!K3!^S%z#PX9Gr?Cm_jJp!g8N zzj!WO;m-)+Kg{B;Y#6`h4@Bf<0%^*DKg?0GZ{d5cBQg&de>e+C!ur=cQY5V3q{*D{ zQOGLUz}zz%h55ITb2{dKIQtT?axHY4wlrN%8p;mnm=5hnFaek#HV+mWbxFRwb5Vt$b^-tyG}s1JpMz z`f5lBGHSXdgdzKkpX>?a;irn_p^}upK*D(>#RiLq`|;$%{J&OElXV*%i~`Z(F#i;j z{T29-+brEMfM50{p)h~!-9p6M!;&k^pN}46(v}zV{~a{3KpUzs|I}JrG5@FYVE*y3 zzF0(WM(-o^-!>~M7XP<=!N>skztLo2ip8vQ|9OSy1Efn@-h2Q)4Hnv`&6N|)Ls=Nh z4EX?PR7F0(aljmr4?tJ``2YmfQ9b}6Hrzqk@&S&de1KNHKh&fCDCgc-*-s@0EW(|h z6F@cMW3`|v=gHnV0YqX?PJn+-05Nd4&IwqKO0^WtPLvaXceI=Ud=`+NV6ZO07~jn1 z1fZ@!5aIW*C@Z)T&|_PqD7Y=*K{vV}s@^kT0aN zm*5o|kxn30+N4nJeS5h{xZRjOCYn5tauqdStB^sqc$f(*`M^JyDbaj0Kevg$Vn)EvSD+%BlmYwjE zcG9QAnUe3m-Y8W{!_}Kg&FWx%4C^vBRN7T>hOaSWGX4EfzX*RH79 z^FV?>0UE)5@J~3Ic^UpDH_ksty4Zfn^sCJ3Q%+g^yvjtY-kjLAtJ0WUD-vOF67pK! z{;gL)MpGaBr=JuN%K5d+OM~^%dSiKMN26XD8mu&1*DdYq+gRU;Vhvg}T#r z@QrFqC^p?EZG*4SMx7&|k4<=OVjPnsw~tpE@Yzs??%tZ->Fx;Ap*BEnkZb9;%MED#$<4?1`~fZL}m>R-$59 z`}q6y@#uGrgAEs4_A2K4EUNn#jC!41`hLAFX2veJZfwo$mN?ZQ4FCvAAFR zf}-jnCFh)znScZjp?A}F0pCw+G2h+cz3v{i9DM6ofVJn1PfoS>8K3M2mQLC6@35QC zhUy7%dKZb4ONhF?4>*jW`rs4|pIPwoQ6Q%FJZSHQ_29wGyXf&vmB!fA-NBn(uy`oD zDfkgKbET_%M5pP}h6y;x?jgs%VXo+hw^2U`So0Z?EL+_;mlk|4X$s*H6IJ7}&m&IwNNZ8&i8kyNXobEMXkxEG5q9+YD=>1j-lRX$BncRbN_|2kv*+cj) z2frb-;SEAi3UDzSq-m#-YDVWmWrbUj1KczR^1M7>k@6aM8hh;(a~gY7Ww-&@8w;`@-1fML|e%h3a_c@kI z>T?ghllCZhHVTt&^nXM3@vw2q=>JkQDYMZ(c5}+)QtAqED7`2%;itQ+Nm{5)vaAP9 z_$kghYB*}qXC9)|4HJI3GOjYPkkyXM7s5FLMIX{E`T50sOv-88rf)+z)F%R3w1g}9 z3*99)hhe|QS!hxW`v?%rYuHz0Gwia1XTu=>N@B7Y&~DXRB+#K;dxyK97jGunFNJz?@y z&^OKOZ|TP8r7*{xz@sRqx)V6qs64j{A9EM%9KPTq&a#!_3qAwH^7?{o8)ut5oCO2^ z4-l_~OW0orJh%X0v97po9jQ*_8?wH{9K`oh z*yz#ZUUm>q7uAnF;vkfT<^W$t@4#OYt|84KY?2Ovzv=loDZ6o3aNzuyD>#sUkDGx- zSbExmJ^RDg3Jdle4aD;Lfm1Wh31SSK1x{cgF*;n+1WN~*&BBLCeeR)~(q;wAk+5$1 z_oixi*g<9b=ZThNHvPxFpfffvb%*SJrZ*S^&rV^WM`I-edoc8~rl=nD5Ug&5e(KT+ z$I~k)?;@iyw!Ry>0F~g84iRtbW=*7o$GyW&6kUCyaG13%++ft)nOEBV6faSX4HeQN^b+_?Cs*#5!Rc_;2(WuOB<7j~q zu*|726HDq6d5g4y%t^dHgt!eL+M@caN1TMpB8n?DCewNP2z=GiMO>5UB68P5 z3U%B;d>X}8cMyl#c)%^gU%HEW4*&2;XK73E4_^XedHut4z5D}q;cS2y{+!s|**##n zuDFLMkg)C^K1Mb2u%XI5JR%yE**z>>pEc7~Di(PQhxeHC_-P6=JsRH2&f~{L^=6Ma zkES%*DJj<(eMkxg;YuhEIW6imGF`QiavygnN9`SRD95CEC^R3a4EnNNmAgU^U@XuXCPtSu`Hsxc-U9vSPl@) z$?RBGUFEvwLMj?L7?1avquG$cTn|P_=JsGH>w=!t*{z%>-AayScT(%f(-cFJIiI(ubb$xE zdfEBBr6?Kb5$AJbg3;$oGrbHyC!sl^X4*t2n7#^0y@-3GzeRc0z0tAU8}XKLkMw1C zUC7~)zThm5DIV$TKrF9EI>*B!#n?FuCOe-awhOPcP)v53F>oG>bj2y)1GG%&r=-?7D*BU4^5XAFj$9#bq8|{RmQ`rDhG3O@3=C72Es9nHR4~+b1fJor&8todLD7?k6`4`yf~! zWZxPlxD#l=5oYc4qYaO?hZ~&@;GS#Q*39WUkF?LuK}f8sZm-WnLapCxZ_Gi*T>H_! zFbBC<3UT|=9JJyI8I-3q)xM-al9Zg#zA^_zJ|tlqHchoR7e`pR=k`^FQH{+k+gl2x ztSVd$#)a~23SJAg`p&6MV0y&gKMnuBKK%QJ@b4SLzi$fvzB&ARfB5%-@b824w;J39 zAGqlE@LzBbTx|;Orhi{epABte6@Cb-b~n7_HefTX+H=5E31XJr@0eAKoAdSoXm8Y( zm(c+{p*1!izaF;Txo#?WBmEI=8M#(`oA$osmwSa-e=>?r&`wTk4 zmfX^|aGypv!xj#-6`qNOM76SW!m@CTZGBEymW`F4LT*xpzlB%D?PmM0CgJw`rgv-3 zY$GeHtB-Aj+nv*FFR*^v>pa^$`ST;erq)y?H1Br`^KR?CkM{hDwpMM z%fXfWN&93grSMc+xx46^O@RDqI}~ny6g-ChQj7deKB3Hh-SFJDkZaog2x8sB(OY z6{MU+XUyc{Lgq&-;Y`+!hQRpRZ(+n1O$obqChL*dTXZJt9e9O5qcd5LuzTI55h`#6 z$_tKAb&DpnbPkgNuyWZ?WldXc#;ko>K_-wdW0lE0rdILi-{Y8Ck3au0`w}!ezFG4} zE~Fz5qK(gM%@T&4mY2pWaOy%6_M0E7mSnVqZ)#p^_R-v8XrKf{XaoB3iB_pRJX)`` zmX?6jc%|8deZ(tx6>k5|DEBGK%@*iVZEPp(qK-s%)y8N~^&M5%E*;K&5c|tp7X!}9 z7BF#m4eO+?h{Ik&3k-3XnFDnnDz?GuSiyH9VKM+p6Ts7FKTvm6I^$9qP9<4d>hCXY zfx`koEK_9?_vj~;8R)y@#%iNc8v^CQ{0f?thtj-VNHfi{LDUB#$5jq${9NO<=KGn2 z(e5(|`ed;TRp;{lIS>Z^(Ku~hsmy&oK1>P?WIva8FW_^;3GpGi!`k=NlrMPzc6R`~ zg+hFV+UG(--x}TZ?A?FFW@u;cl7q9Ky{j`me)euE->IwiEnp4C~of-tiQRkYkV{| zbCq|Q$iJ{4$q3o64w_A^^@anX+E2%-eTO(`HgT7ZQn^01Jv{$uI~;^0PBwxQs76QO zC?_}*sWCA&hGTrO!v_wJ*uZ`%9X?C;J!zuH>_iXLM|72N3!~6e%^gW*=qJETd$7Zp z_J13S+Q#cK$=a~UOZ1n?!4IDk3+gNsn4lG9VOcU9(TWyG9MSp`6yteEL&NCG|A?lM8~w^9f@{hd>#sru3-Ewz_8!U9@C1t0^VhNLBRL1 z%3*NeoARfa!_bOy+?$FrxBDn^jTHI=c!g$0j@FY*ye;Q2bi3*h*AJV7+YiqM*c*8? zEvWYk;`SH6>;-z~*c8ZydE2_~(OHLi3$?%?F%C_$L*C1*-Ga&&#|C=<@%|@M%Q~rV z9>n``^KCptSdvNy;QTGY%-h%yxKO?yNaI43)pxv55 z6H@(EBq~R*Am7>1Zin6SnCW+TkNJaZJft;cpsld*e?T7SSol@!OTd&k7XGw>g$sO} zVb*ap98UTg9fox}gjYuhAC9pw&}E0Q@hP0xzOzyr8|cdqor`E%8g8zCkfSO8H=4`@ zZiICWi3=PvFFKfr#b;idr_f)@c zZ;KTjg}htZ7D(HJ;S4MCZh1>iIgL@D3-bPQXGsp{9}2-l8)||UX~X7_ghJkLBobXl z-hWzbmntXnV3Erb-5t;6mzu~RM>4= zAI*L-LzZU0b9_lC0ml9-M1VasQ9Rxv{353vr#i_PhhXGq<(%IeawigdAa{Srofx=VL+;yAt+t`zi6D2pqe1TYEFew6 z7-E2-$C-uPQCGm5{7FHOJFN&DfTY1~+vUQJCif4r$Q->03&h-oTp|U2F-LhO7)nrQ*o&*9(ng4Mka?6d*umX4AWGY4e)&{&($_sHQ&Ihd(c*AJUwC|j2> zp~!X+&KU8ZuG-e7w8OIE$y{$2tv zv)0OqUi%qi3-nqMDA9t;tF4K~SZq)x@3MZ`e?MJpa`%f0?d^+%X|AY56^Egj@u7Y- zx}=4euwX#DQx_|jqix|dXy=m<;L=U#fyLnOK!b7J9^I0ci$KVFH}_%xvfpbp^(J69t7H z52kcG*z6kC`c#|E%Ffs#TKOCn_=L}yC;Tk(hgA15ykh3V!`-NLJ)brSx8K%_K}T() z@M(!SuGK#16>eOaX_rLpD^s>uqpg1)?)mVT-YW7gZfkbV(B2O>rwp}XIc)7TT5r%^ ze#=Wc8uiN1V5QkwbADyC*$Z1%e&1B5&Otl>Ei0ckKL@MwHr94DDvik%=i}y8H`NZg$&b$L_m7!c*dP1? ztB@EoU50*Oc`1uDM{VxTR+R_r@9t0>)~DBXgAE~v>(TI|G~TEV*KUTb zPH(EUM#R34un$tJx^uEL217>)O$a6Sq``#uQ4itGv~2F*kT?3Wxev210kh((c*d^4 zonpnPw*+0W6Nj*nlnR%`ig0vMs&A5n8|SmtAEIMKgNA?gugP^%xX zw!nWHe67yGKqg3OEHG3(BW^@UhZ3Z4Ih-L#MF5?Bmqt4a$FNTQ0c-FNitQc+@_ZKw z$C{4)l?ZoUm#|K*96ZVa%;Xhx%Om9~!_<*>tKBT7kkNhEJ~`4!X@$)FX5~;mngOH? z@aG?(8&9q?9^$Rmz0Co_k$4+>&Ei94viVmX*1Z9jxc=^icbI$}mGUKz_Nl#Q52yCI zkjMeI1;=1BG_Z}lrX6h486RKwmdbaM65C$0o!>epO-@;Vq|x#)pa#Z8cR}H&&3!VhI?o)L=mqZD6QW)P+HQc4lRMxxl2oSHmcRJB`M0A zbtZaQv4X7>_hJ%k;g<}>#fQ_QxWg%5^5|uyxP#O_7ZSSS1_SVV_BCL^2sR^|;_8f# zD{d;^6BW1fTSq6$EVrYnq~c?%1=o|n$5x!~`_%1k0zG)@_BV6VFE6&I)d$KM9GRYS~JKdt4xlQtR z8Br;fchu{nG>C#tIkq$=VDh2aWwDR#j;aDnV7>=4mde;9U@2o`)xj3rh{j#bYU9S* zV6~ZIx3yRf8+K{;nIrs6u|lBi_hZEM1pAE-^V{$F$XY(~61P|jA5Zy~i}?+OLRs*y zQVU&3ni59%`TN{d$Zq|Qk-_B(h{@l6$66}IUEw;&xD}L!a zU{o1pI7dv(t4hlyRLlLpEykSZCQcqN;7{5z>z7#>d6)IzF$X4VyNmjS>{pZHBayJn zIyJJaa3TxL9aM0wG(I{Z&RVHAY7k4Rj7COSv%T?*;Qf{@3+ctvf#p<~@nvPP zd{Mc;%T2-45jcL5K*9a>-To)YQpKEz9$R3bOWvxF>YpjRUGvWQJ&NaV&C zhDhZ81d0YFa?_Q6A~)qJMGFk;zRZ2B1VFC+UYaPz@vu zDA@M*68`c|<0cY&(zyN8xQT(gbsG0yp%Q%t%}lg|1m4loxbay)dV%PAfS~-$rg5XL zfOT#bl*TPIwTU}Oh%;GuY(PGaj%nc0w*N%#km7z1uh4Yl8IGwW?teE4x8K@}N!-A> zka5$J!@Wj*&ntyHN_`ywv<+u&kop>3P7XxVngR6@YX-NibKcwYIl5Y-JQBE%RIf+* z+jJDJ9O}&6_7;a6}_!>kavr6q~wLJAYw)W_C7Hm7|%71Kd0bt zbdw3jCEaDlhT@swG6`0kO-NqsD5%EQ7D9`qBaCLhnr_0kSl$J44dk?cTe6J#Y;#>Yo%gOwelK&)Q66iQc`eR`?L@CkPINS#=hy@WBc zD_s_5|8?xL)6Q*7jsqWsa6*o4qgtwr-c*@vmQFcs#Tf&A*Kay!^Lgi7c73VVEDcqM zD-)wFEy7PWvDAqMpGVxA(s~26Ul@I#_v${PR-EwbQwV#6FI9p9))>T{8oNJZ1nbtc zh8ZT%C8<+s;sRlgjBcHoq|T2O%W#ETJ%WT|MhJT#F{v|ViMGB6X3U|zm1$p_N9v6h zT9#d8UX+b$LPB({*}{x4sRlPzYNKRhKp|EyxtK;&=T=4`{#j`(SzcOl&gQN7XWhl; zw9!m+!9H!NA+w?s%O6+CClW-58{`t9pqG*N3!(yw)wY>_|vmYfR@ z&)M0i4T6$QG^(;h{N5!OuiwfG!l$k_ZbH3);N>v&la#~{@udsLz$k-dWd)3zKw({d zYzSL(F4k83C@ook#pUaX1s7}(e=j_j+75rNpq6gBS}^6JOQBfbl8u5jmxw=`FQj)j zi(gv=GvUvbSkrak-E;77-;ynj3I?4y_r*8YT^aKK;`Q{+3)f$I4pP{9&c*P%5B>_u zTi0#aK=;>O@`CX1#p3VfSBSq?oEQG3Pi{ST9rf$hb469Qo_EDMdVc=pg8up~m(%YH z)^8MlHvnDuUdV*47oJD$+j`;VE%f}Nkj{p4#CsbyQhm2>xSW`?b>oGiJ{vC-_cva$ ziQc>T98oXmTk-os@x6;L5$ywsqx+k#A?9zrWV3jFY51K>FA&c!4ePxb`2_Xc{DMp9 zz0DU0er(Egyk`83JWG72#)aII z7n>mcWXhL3oSVwhd4k&KLP7@~T@MENHa0`U9cg54PmtCbAJ5WB4(Y z_099=%z^Y{KFow0%OL~lO)!RuE@8MCUBZwvy2N2;bWKA~{Lu$*3Wpm#S_ebW=o$xx zVi+p#sG(@|dTcn#N@_z=c|SfZjp!IdQ~5?XJe9w(4mcc*-ozT{BT`n-`XC&xN&?Z4 zHF}eVtuaketF{Z1ezzvUrKCh2d;;7lyRaB@AojrMe5_+UPD0aieP( z=0=xWV5p1NNI5p#jfy}CNdiY64 z)b$nTY1guvI7F8BVVEqhVW=#xVYn=>VaP16Vc4v$H&7k0={S6r_hAUFt~YOy*D#cp z*D#z`*Bd1ta9EA^i6#uKWf>S=tLsZP$!i#9t82yQtruUY>Ip+`EJHLw<79alddq7V ze#>hZf~)HbRCySR%lj}K$7`YqLvnTh0@W`tG*|bpQaphny1Wm=balN!(FDUJ@57K? zU9Xcg)zCe9ioQXe8LDituJUGo=~10#PTX z5cU|TsX!FgI0{6?hs0^EDJc5%jEtRfNb(d<1kr2-*id(Eu^fB=*AB+wNzbx3#+OyE zz)yV6c`g->#Z{gohQ1P0$Fk+Be~3tQdDq@bu|1?>e=kJBvA%MN{k8p$rjsYq-B?h= z^jUK73+R&Us}Z9nWSb{9pu%ogsXhTDxvl$>P;!giR*2ksD4@#E<$>{-80F2+eXt_w*-qt?kZe5DcZTX9{Dd&x?}r{KIA=J$FP2*R;(1AZA*Nr%bAzGcS)8T$ zNa>vUi|OXfatmk9OymsASQGdHPvTthC!=%Zi_^`K6)qeB1v}l&5qy%FBOS@;9Qnp{ zbL12YN6t%<5j8Qf^F=+6bEg=RI;Xxn-JCkz!l~6soT8YIok{d4&YwJlbgukty18cKm4Nlc+ zAD#gwMwVKdSR(bZ82e{f?Spd!vD)V(V2)VrLs$N*eJD|%M);J*&1Y4%)jkK&Y9AQ+ z^@~ghW3dkv&~wI9k8Ggt%d|PcwEw|ue@ZL+|LlDUoE%4Ww`5C}y^`ho#7A4U@kriX zU6?~g#=2|^$&xL}wroqRM!O?vTC+RrnOWIuFtNE}!vq4XG4~Zt;{<~-_YppF5eP>T z$VG4vkN^P^!WW#75BT1DRozvutGlPGx@QkX{`sfv>El(^tM^{LdjD5d&TD;$#L=}r z?rVLBfk*UOpJk{*eQ0EYwLW-9TkC_*eA0^JQSUH^b!yl8pss*5FBP=b2eQ~}`}&); zN@bK`O>O;wu*fAbnYtA@Ldv=wuh3X@N^eh#N2&EaH=BgpZ<&_sdyrd`vb5)!)Gs1%z44yuzo175GL9P<#<`L2wjXZQSn_Y?Pugb+PNO#TdUV~Y4o`=( z7G7v-MJIL3vy$g-vp6`OdAgsqAjDX$c!{2}Fju~CH^{~A2>~w1d(5`|j@kOo%ywV8 z6T@u3ja3lo^dP`5j)*DwRhobXHoH5kcYe>F9X6|X-Uj6DBGPJ&i42b35Bw3s(wm5w zv3lo(P?rN%`OyVDF|QCHsNH8m@~Q4}v#01H8yuyCn1N?oqK3s_UZ@`luMAuwOn7) z#pf1RGza(pjWwFH*8uky=+zGGiO3#M4dMknnNmP5kRNLfokXRd5zj*=NNFuKRQ5qJ zP-fbcUI~(1O=Jkt)GRwW<5XRhdDl8{UO~^NB4G-WsHS6AWL~CR{kA#rYp@v_)=$G+d``U1{AdDDD(}gf z#O1_y{_1iY`DOi+M%&dgQ8e>n>;5tFY*5z|gSKgL4YeoaNkpQ{c{bxH9HHOBHOfXn zB?FYPJA{Pu7`vQ#Hm@wGVY=q|JAi1eJew5VdpXdyo7G63lWRtD``fN0RGtlXTOo4m zpnxjRhI;}LG0K}~^Kocmfg-Q=!Aq_6rui_cMe}TEH#^9d2`2zo1f#eHq2a^Q6=B+` z@Z7Av6joDs>wf~RFF2Vkf;Rn1q+Sx*ngJO@trp1GKjIbbgGX2H z$QXsVNhc{D%I#nrGDczZKJxDjP)rZ0r{ZB$DmUi-ew;_-!^4QgQ9R5Y4;T;VR!)HF}0!DRw33NfTuy+tIts2)+7f6{_o1!z z*ewKY{VrbN&j8vw%`gpdFqfu%V)odJbVAnz{HN?N*HdpI=SYO7Lxl|hAOpY=)7-2d zF=>1qt7LBfDTKae^5`JC@3o9G(0x;buzY}3BXpyT_HFip0VhGJ0~->B-t-BaQ}ovH%I^F=RQ> zlS>L}n6793kDyC(p(iPt=0Sz+d}jkaIp39pLQk;U3Xxj}1ytw>ALY4CcOa}n@!b21 z%IECFmX}1=X9&fkh=@@9EhvE$il;00P&~!Z$S_ebg+Iyim;{}E1#g+qimaA|!4Q$c7Yk&?H+cgj-B68+HpCw+OrM=Ev zsRxjIq}VUUD`sLG+yJ$-~Ii*hCty?3T$~nnXJ3aL@ryP!qg#~?n3-9i||{4?MRe+C%Dxk*ML4vNqePQ=gAOwChwb+J)9>}x>3~t0`Xn+A3!g#(m8o0PH5h{Ue6?jA`(MPgCq6XTJwZn`9)5QGbfM3)hS2T(SOGxEyj zy$lKGv3XoCgGFKY@Do(Roe_lf;NLJ|d22xp)fLen0-_d(0QhnhU_K~E$Tq#+pCp;-a2M5$ z4{iQK;nc%5;2jO_!e>5d3aax>rMUZ zjIOw2U{{;PwT}Sth=swPk|G7%9;d#^?C^Gzf1SI_9Sn=&D? z`WM5a_9aukdF8hMk{c8shLUP3Odfdo@xF{V{MR zv*TgQZwc@)+?|JB2I=|~ zt48hytElhCkuXI8RMT-{ks0Y)FM2-{(v>6}1z=rYE0#eD>-sVf27bh2UHDL`5bu_5 zV_n}*Dcc69k^_xe9CMgjY(qj1vD;!@|ANiXur9K5@mQDM6;Z4!wI>p>uFhZeZq*Rn z4mPfzZ^)QN+!#)5(5^39caZF3g$|(FCk809pNUbO3Z1xbixze2lGYaNSry>1$yU3z>)B4d0)JY6fPV_r4r(}FRt^xg!_%fK$* zulHuH3V5SCblK|>fq~IRb+ED;AkF?|%QVEYX#r<;?BE$xZ@tg&p6ot9)yXibMSOgo zD6E<`nM|Z!65~$>oD;_>fpfkZjU3^ebmfk762w3_CqpgOo!T41CAz;O5#}0&ueo(Trvb zcN`Rg7+vda^T9AMSR?NBQiU>6dm;DBm6 z&NMQ^pIfA4l(?kOIZK;$;gO2~n^76cy67)3Yr(pjWLwuNmRSl49R1% zSoJU|R}|b%)h+rW?j)_wU#)bpP)xMa$}oHi8;pC{x}T&|sW3sb?TNwZG$&WB=)9Fk zbQ$CRF$ziOs&LC`V~QjL)Zq3*B%Eh(TgV5sz|fSE?Kuf!jK!XPPBCrN&8?*}w&mE8 zO&xzFdS0~0G^zMFsn0raCoqCckItF~{0SvQ-BK5xTa<>Ap905|$M3*lWRBx?#1 z5@{$@20&`9V>1ArP?+%wW4&urEqGn-S*&;^S9(SK7dtlZfHkr!I<1jymTo61%X`I? zZN+X4eNGHEnIG})IO1C?#7xYbw}O-voRg3)Ukjb|SK-rqsxNd-iw7i9FNpyp13ryj zpTMX0p$ZZ{O;_&tGyy||PZJWrM`9oMCwnQ>4xYo-HQy(G1}bXad10M?%|wXib|>JC_c!YrtW2`CXGaEepyp*yWg53(9zMWcVLqf+(Y~krW*bEIVAww4rPfOMt?8*dB-`Op8 z$y#**p1!|ZReou%9`>8?xdlA^a%_fG50i35;ptS}qA%j$>CRtWkp@pE+bCvj(n>L0 zht5ckTC}>>x~B|)8tuCo=}mK&Bnbsj_Y;XO1Js{KF)40DR|DK?t~h}Dn+3H| zH@KGS7z0qJnB2bDp2WSjOG zN{%vKh>|-rMB&ohRgUOfUR?UjrzFdo1Md_rom%TyT>9{lfJ^J4%1+Sq|Aq#O0bNXu zF9BIA7@ba+vb^XtpUVr)(qVG_UI4$HLlbz&!k zF9tjnFo|}b$;(%}%bPEW=DaFW%h{`W?cg`7)jvAa>P?+iw7)W3(JpKC%}A~0pn>HT z6Sr91{?(ywhZF18KCL-6I$CeE2AberweA?Jw<^tv2V`(*F|1P%vtdzXo5+w_DlUns zMfgI<+=wNtJMU-+jMDB0K6W3y|2^z2Lhl!x2UqwrK=03rHMw!Hy=KuwZ@hxZ0QlS4 zVf%Bp*D94!Z)~Jhtp)2T$eC`2n5)p(v=^B`o{9}C&X-m&{L8VGIt+gjD+!wYc33x~ zTc5`^?xSOH#Z1AgHof|2Wu(^|Esr%TO>eM16da!mr_693RGU4-hM|5Bh?GaX>d5F= z%PZ}x)yu8LNNTj)Y{F*aWxQ&Xhbyg0gHi4Y&#Lm8EzqUv$bLy=xH>WhY6XY)?yEN{ zsa&6tEnwo{u};c8wTcsmV}%wN;xI*78O1hOfmX|rFh#_aCg9{cb5=$z9E`nEbp)ii zug}{7?mUR4mnM_Aa{#GKf6vxKl}4jF1j371K9n&ozZ?+KOcO{D_0W2h{Ay(FxHk5) zY;x^Blc0^oGE~dk0K&jO!k)~$jg(T8aja+}!m+?-K7`X9*1qSZl;nV7XjvQ7J{uA` zh-jU)fz8k`eH!2rvNot-XLH{>M}dB<$TOn;XKc9wXCuopq+NJ83PDK zyP1e~WLu8kPb9jW?eK81U8)9-_afmu0|%dpB&IcqlmMEwFa!6wf*Php;nk?HbXaWGggz1cO%MdP*>Ujqx#%$TkwEncaqDZ<`ve*mL^I?N*QR&l0iX2a zk*QXEM(;mAoQyjI-bCUk;O!2069bQE!22vztkdD25b(x38sLr3e9{$+-}xB!n_9pd zbp=M3eFXvD=h1|K^qT|T7|7yt2kljkchjrPA-fv6Mhd+OuZn}aSDS>}@0!kVH}Ymu z(C%xagFcq*1a?2m3G5~zIN)z-O_aq1>A=gxz#i9SkIy))o0{hUbuWqS7F4=kFN~H= z7o@vlYF9YPPMGtTe0QX~Y!=s^$&wKZbe|q40Nk*~zrqY^%VbsOo^gk{V|vDKVil$n z%>8nEp4hJYPGus8Y;YRi8LW?Fp5#)I#(s^)gE73jGe z3F{d6VOA0_C5nN6&%nS1uFbG&Phr)>lAbsm0{Mdhu6U@BxaXDkm#ZWFJ^3MX(K7;c z?_3}su>W^7nF-v_nHY3M;3Ud!2;9`5?DHPaUa@RdSo_&P7`PaZwc|r&*?DIci?uILDJfwJm4*;1 zti7MwXG20qvuv^UmDmgo%c4;>9&6VbAH~{J`A%IGhqZV9YF#?ko=M(0+?`rxHpE>j zOBTdkzRIg`bFreM5cin2`JwGeMBHP(3a6Zg*Jp#cpJ6S@2I7u3G!bA)({p0;YOOb&1Y`gAB0JFEEfDuLxSB7($|2K` z93f}09lvg-VD0!EW}6IZpUR2|FJ4S={~Y?JV2nMzS59#fc7?I?8M%;DZQ7nly(DZ& z28;!#qD; z$SvVi-x*;i5=RkscZ8i7ctj)YKSH(o7c@MR zQxL*V3jq7~<3jRq9Y-Vz7``$~e}%cBaTE0cny zui<4nq3A0!q3FDz*tOy@9Td*P{2Td_z5~AWJ4*h|{7L(CUKB014&9WJzbo?krJ1VF z-JFcyFu8t)DSlz=65Pc+kn>8jxb_F9eKG>?x(S8C-Vy1wh0!|ocLI648E6XBw<8C! z1gNiLml$)-eyBwEp}y;|TL|iV0bb$H0O~uLi+dc%rwNsq11&=$;Xn%Ge0GrU;%h4{ zT9&59aoh%$7ODl?orDrfQkLlpCWJ3y)yqB3hrr&9wQ{1@ev7dMdaVdhXx_F;YpfB4 zWW&3xUmju=$lWh0k~e{bX^yBw72VIwa8REnjkw+t)&*#HlH{}Ge>Sp~dEt^J>boUN zxFGkaM?7f#NU?nR3{*<=`1?`_3zX*)@9@2^?bu${i)lm+^JWv%emB(C&bS*fZ4`vW zfJU~M_N$3Rmt)$0mC`W@9$Q-Nl_q=*3Fpy-IYZS!wHUU;Dl&SP3C9l#YM36=w#41q zvI!dUMuT2F^7cLIZU>&LnD%#ENvN1Mc3UBG>!5%trp*TkZl4_ps}Lmj7ozexJF(>@ z{};fREX#cGJrROD&x0!pLDH3b2$Et16oNb%iL+=ylpC-k3oh{iS4ta6jKCwkgi#D_ zE}p)qhw2bIT7q#GVQt98cMdrciK8J$_mCqo@Q4mMUW#h82>uB}j(A54IpQ;)Gy|tF zKF)lmHspx90zTi%3JN)%f*RdltM7*;J(Xs&yg#zbQ}`U#@yO?FB;11hA=SMOubBC8 z7;f$how`jX;r5%RQ?L%f<^7`3vtd$$7N9{CH#%_|cibi8!{Hh_h$ z*pCa`APE&Ni51ej@X7*N+yl!8>wCOfFP5YX6HtyOxxk-GS9 zus+hP*Ay>Hf|>nxrE_R!3u_yX0{GD-5yy#|bHg$RTf>RooI=zgw4fF_U~Pf_EyzLS*1EpO}m)l<^sl=Vj%Ems3YxY7OA{UHJEkA%VAml6p- zv%0RL38EJ&>pG0V1qn7%mHWL7`}@5`jmpp>4<0Vs->6hZ7Nsa})|u$HP$ELFhpUi{ zR7x%=#r<2s1(F6saq(eNsTS)}GbrxQQc7}YpHkePQu}O3=!)xq0zS{a=F9&%HY1zj z>Wq&nZYtjs6}R(O=O)W6x1*_~qQ2FTWu$XZFL{k(J`Cffh9h~x9;wuk=FW%alC~QSzHDk69Nnopt+lyK@;9tC zEw@P?2qP_CX>Yw=BPR;>-q_I?gUJVNK`UJ;T5`R&qQDZE@4<|vJTeYg%E(A%umv{) zf2>()9I6h&adCmWVLDw}EQh&W+I=<NRA2nX{D!+zt#{PueevNm9an8Ao! ztcB&2vK;hUS@7pk3vEc`vEYN)jBFNMXMNOyr*b~gf_MIEQ<2im`Y)~QTy|lDb^j&U z1&3Pff?1jf8@DdX)vEpxB4LpM8D{%3D-+&jJ@}qtHBe2Ce-8=U zOpc>brj>zZg#=)jJJ89S6kPL0Yh&Ulm3pHJv7|Db!6YoUW_zQV!1I?ZkuOElfWxUU zt?VA#_a~)IlXyegvv+2Te+)RO*0IG1=-cU!=r) zt?|)F&JcUTczD?CrI3drJqig0aKJ z<+#H|kn9&Eu9Ys^UKzntB)qb>cWfNyV?&k3W#L*+;b2;QDb!tz^Gl)i1@9q|-tJSK z#7QM^b39APf(CjeQZI?vM20;iFoq!#xUWIcpagEZa!=rjF z01oxZq1(vdrZ+GtG?0_@^lhpE4~Y4@Lio!$eVa%eP2YA;-zEkg(dpY;QHeIAnF)4` zz&l#{Ha_!7FA!b#5tN_W^lj7?u+Fb4D1BRKY7=*i5J#@?*g*I=IE8^n+wMZ{km5G* z3Qb2IcT6R3kC}wqZ=6oa+rTl&ut~|?UaiV=O5I+XDRo;F5}Ual*C`*E_L;2foY}g?>&}MG_^apGn`iRMl z&b)U|%Z}l_{{gH*Vp{eBnU+n$8Z@dqiP!(fo)s=+r)hj}lL^M(cb6I8ES?!QlV8Qzgrvoef@+lZT4+)ClNSE~yM>Y#e~DN4Ge}wl zO$n4gE@x3wGchTB9TEtA9&p97=PX{dU2f_j4^zaPAbAR-cc4DjP#~3Cbk%Zd~;o0)A34VnjJ=S`WBUL?A=?QL^ zM~3L;t>pvty0^DHco2@7N3#9i7RW{{kB-)=gXO(7AXfKofVa!d9{sJr@CkNKlRB|3 zTiE?BlUaWqyX+CMcr!Lgn9wNZ2;DVl*A8F(#8=m%3xX93&u^Lu(m!j zgsoYJwG}_SMH_C~wt-l1-6rvO<2q_P{JDu*y5&~El;_?6uk|e2ELgKu{Mo*dzTGZ< z?GVg_KR07d*UGzV@Ndte9pcDh&V5nl+M6Z+uirprZrpIg8l_pF{l0F)X7P6u z(1r3O6LxM~Pwm^ear+K>{#;3C(;D&Jrp;8}otw51b9QdtDC)C$qqx6$>lXU%`Zc0n z(6{3EMp54NTSfao;^_XC+lcu)w{92DZ;<8OaGiL5gRJ*<gWpoDEmHY8+co2F|71w>(Np1=%{#fRK(HLVN_%$V&_}t%$fyh$K1_? z8@-Tu^k(p3f=h5WgG+EZgG+QfgKKg<@kbAQDF)o&(OPgpgKKmQg&P{)QLbq4dBh!M zZ)z@Sct7fv26PP9H2gxkr{Qm`1G=NZmskVcBV{kfK9KHeNFZ=ogD=T#4St~O8eD_t zrd{3?athtp-~qU@c!{h9cQ&{SE^TlLZf$s}?t)(%+(j2RxCS>jxZDA*E?y($h`SrS z0&j#=(CrQG1B=4CqWc@%M;ACCiEeOsA6#K|z4cn{`g(P}?Iv}7(|YYXtR}k1;eBwE z!)tJr!)tJt!)tJv!)tJx)%7N-12!Gq=kPwb(CT{oj_?{>>F^rdX?49h1{YjiU#H#&S3JBA z?l@i(O>oK8{p(b}fNQSq-=cT|E_!$$+;nxlNznwu6y67yU0tsYX)4z}c#7`3c6|k2 z^FYg+y6=dbn9UJspQff4L8M4S>Btl8QLpf3yg#KGxdKriN+E3HXv>5}6^Ozb2Z5-l zOPto4f}&67XY7!?zb9KL1EC=6)YX&3nqzmI4oDJb7;R zrO8uzo1WEY$^L!NsO+l{gC=B~C;y7N+oo#Lu8>xc-2T#)gpynAwnF6AK><}>E)R@H z#3*lG?&SqZhGf6W%T2BIrc1%%M^By`6DQ9_phXC$;o#ka4ea;`fY^Ty?NH&_`J4JO6R!A7{XF-n?oGYB(7mH*1;@L@kA*Nr% zbAzGcS(K&uNa>upcCtCs8^f7rCUOR5tOrhAWB20mEJKOu;8np170IIr2M`&5$9;_tG4P09u_tW_$b3~OrZ4}?W7 ziOJOWkRzn5-^MF67M;@D)8bKTUC(z+!tDpA)w&+!(xfcuc_wv;(`ue2*;eyVhad2_ zv?j_T&T!ymqI=_d;XTuTA&(GXOhd--P4>eV&J>(RE$H>=x>X&X4reQz@KkFx%d>)K zu321rMs<7a;+?rMhE3jMHtlS)^_^^5$#-9}6T@u(EUZG}k{$A=Gyx54b$3?n^xLz; zX4TFTAYa(3ou?8pW7W}qe5a$(8m0XP z2K4SP-#Hh%g_iH^!z=t5EZ><&Jsh`kN7FVj>>Y#OhF%Q}A=y{%oVOhZA4(PvB??00 zu-)8HbkR=wt4!KztU|fnECp@OM#B1fohmB{njXpGYafK&yKxcCXn71TATPIaS7mUl zRfVm@<+-k-jr#sZdAJ{rL4^e%O<1s08}eWqKKNh=@P%fpQXay0_u%L%+|50-4|{cl z2*S>xv{{sv<4d~u+~SJnp#I&g(VV>osJ}q3c4$vT)_`gdFW^Nf1vr3k3f#wwK zWgklWYV~r9_OaXnDginYm<-YfsZY?owHoRXsos#L9nlPUZO~%Kymp^S#pA^?N#((R zNE1&Z4;~*XD;v?e#Er3{8-&j#-f=yY_gEYMJf$=T6;!$Ke@bn%A)%xEwz=?M#%5?3 zKMiy7x$rvkqlrJMyeDfCmkZzdtIKWVm-SB?ZCA@gQOrNE?jMP@t2_nN^~7LpntfDz zK)#VkSnL7GvS^qVvnPy)b1qBPC>sHl3{b{yHWJQb>~iMUoKsN4bj|ahfG)|EUz4JH zXF!GRW;K%MD!=AbR}xBYvD*rfTL%SH`8C`Vh=@_%{F-$INrq&<%CAYS^``kS(ns@a zX!knEk_jgOR|KQD2A$!<(iLI4sqoyaz7!fSCMq{V>kH0hNpJUwPU55xF+Q^rvY<`B z5~-Jjwq`)YP^$$Zb^t|#_PwJkcSMXr+ccI?Je1qPI7E!X<$dJe8DN+mN-xKq>~!FE z(YI7;I0+T3`VWkX({#-l2O|0vh@iQ@7dNXHBsT z8=Ei($pck=(k!n1;c1Uh8a+9o(4ITs4A;f?P24k4^2Z?n*FGiY<-0{>jwb3c&zS-G z3zI{gJH#E%is=yl%UFd(IE%Ip?S-fo#Efyzr|?+7?%-M9wdaQop7jKfx10GXutiQn z?hjA#{Rbju;8{H;uM9vd?i~@N);?x}@;}{W%#+14#%5ZoxSX&fT}Qz+N_!ky)O|?n ztJp0BX+5O`SNJo4v`#ZjLma%NX`h%`d<-duE(!Qe+2O6H-b7B32up_w8vs8Ba3iL- zSwBK)eDIiAvuELdX#Z%=brH5YtZi-wD#X5K@-QJda{=QF^yAb(EKg_E$lXCI>bMdK z(`;LbFuM7fA(nn+>b%lWbx=YqfLUq}0Lv6=lme*O8`Dk2GDSfu*8*YS0hw|GQo)Bw zx{`fsp*hGZj;M%RY`EByQdWYamli5lfXZ%ap$!Q=tZNIX?8RnifC?GectAyGeH2hh z<$NNb()p`%a9MP`w6fkvqht(R8G&6gzw51gLwYeP42^o67}-mc2?d`lBNAPPPu_^4 zP~1qP4B10SIFBLA37>qhpoZys=8plz(-#BJNU;~<6*Dn5Ua1_C)S8x4Ov3H=O{a)Gauhiv7^L_!DS`V< zNu@i*?^kDv-zOCr8^(|8zE4d1P;+7vX`HfKA9HCEF$qMF8cqWY;#sDmbq;wSz^H2# z{;9-HNmTq$>h4^pbxqRv{6X zm@gKBkyHmQ><%XJJbPByU=p_hdAsS9A?*s2xS5C zqj*k4XB~b@bVac>0fgu%q(*5=p+(&XA)brfLLkKJ@CtthAjG*zMj;N1&=gL@uvZ|t z(AfeXF*_Eq{uXdoXr)aZ4vA@wRtBs4s)OQWSzMt4nexIRgjFYSe$HTdWUx|$>%HRy zU+itv4^|q1UWKHW7yfc2ENqux5_y(4jv{F zT}BR0Uy`g|Hu5QJuWa5aNH~wp<9ZpaBS~CcMFPmbVZySwpoZ#-=>HpZkp+^#tCvwF zFNKQRxxj`zFLEWJf_yL+kvIx-xx-wN3rHJ1g zf|Di(_SRbi@YSJ8W2ww9tyY@!7@jO0st-0BgTa&W0mvXfP=~EnhO5o+F1+6#rlxKW zHW!JQL!CvFf_H66selvYb+rrRr8hek^@{7qPtP>ei?z}L_$sCKm4*^b1MKUorrvc% zRotA5G6k`GPrN6OT}AO#s0<3aL@r zA47Kplb(`)0Y-=~gntr{{EOjH`;si9<%Iv%V`j~QQ;;r2lK+GPN+4J-b`bsyK(O;u zOhX(Frsa`>K^uoVu{nrTn5 zKSiGC2-i|p5-@3M5Uy)jHFEpRD%!ga3DfLfH614unGvq_qW3c)TuH)F0LFEDu?$ie z*DXL8_z{nB;X|cDyj!}BagC;w?EnC%#W2IvVjB{AXx$d$YG5-ojEn4CJjSJWMHJ&o z?TJK;tMgaATQ%gigN^IwJ20jZH--}%lxv4|2T5l_p#rG(iGj(qAzh(dR}+aYqg)T8 zbcACRS1=n1l?+gJ@4ZMkkKKzvLUMV$Gs^Y3f*Pu;qW@ALS_sOOqLiP4GVDA%*%xZt zv5&iwQ1Xo3S%^G4D5gTWxU&!uue>PN521+#s)9nfQfnQHa=mUEpj>)#V{mYhVNM+Lk#_ZU^ zGpOErpU>@`B6UQlmZ=MIt5%?xux#ODzEfBs* z(PTc-$Kjg<$oJu#TEjPW88nvgsWm>@0+z@ZZxFlYyovsZfiKu>k7~$W8~@|s^wW8> zJtA=w<#b0miGfEn%6Ta&*&;MU0m_MYG?Wvc`J^`(IzQ63qml1^Gv+eH~sEhj4B(3Af)reG$&)B(LY&%tNAD@lNRGRaxS-ksKGT z%vfwQt_MFk!>~=gjSk4>Wy!sy;hN290Bkl*b?c0jxdWSZv$*z*myK9h^PEHx;B&Z? z_ZS}VB9n8SJIWo>jOi%)jxdFAQ$}NDU-UV}cY~WuFdpqLGaf0P88!hZ#n}W{v!kFIrB$It-G?<_g55%} z=GX8Fe+IB-B#%KGYvMpnP3r`xSwniE>jgezc2INeEdi)mhA2j}gBMcE?@KPr0S!`+=P5wgZcx*47F)>kOl*b*d6Er`hdd?gUj(@z`UcH& z&^ATbMYkBc`nts~S*t{_D_Y&`GJI9Hs(fXx9`+Z*=h=}o|7vW8RS%PLMM3RU-J&nz zj?C)()k+r&#Y8Ku48y0e!M6X4Y>k65D=ZLgdty*J8@ByDVe!^+wS%NA0rQsp>-dv4 zJ0OdhYW9Tj@XlgoT@7w6B%Eh(TgV5sz|g>v!@SucLlP}^yP!7e=GIaf+j4BlrjGYR zg@dt9SXtI*_}G55OCGb|nL^J-3G(nKw9Ymh%BAElB_`XnPtF{blB0|lqT~(@QGh>p zlOsBp7x4dbL9!uvrvU%dTE_zZPbi3Zg|V!)sn)eF_be8+k_Wva{)-)(cfeBE6`hvC zHcPh?mF2x+rnX|Y1~ww_Brbh+YFHSbB{UEUgzCi%iFLOl08TGS?Jga~n+Evwb*A=phCSW! z>GfuD?IS@#Vj=4D(gcCe7t&v4hWHkfg`IoM9jK1!G5=<)!gK(thwXV`15{Umyj@IR z!KnsNT_Iv!1gc-!U1r=@JTq(pCyKKPKy^n!HA=e*TGV}@`c~`~0;=DQSNJmksxL@0 z5OG+wrg&oNy#`5!UKu!**|F*sw***qxBxdm7{v(KX$7te0cOcQz$%~HrBqn-)ks*! zqTk0#0ya$z7X3L^job}Z;rdS_VTuT-rsEVNGZuY=BNm+`DJjcw!&tF?9Bgot$;V$8 z%PxgRe+>u&cjD1#e5h24cTzHX5ydOBq0v7~Da#?YtX!O5gGqlh@ z8M=5hTC(0?S0*(2n5D^GW7AeSHY;|?S|wsr(dq``$|lvpO(w&qb*suJ17SPgMDJn$ z*U)7aX!IG_467cFMWa)7D-n(E{M8j{XmqlTVm*~sis3rg;L(3!t&0X!h4wu$DxD3F z{sfWe@>=W7#Y(#x;5H)RJOf;Dcyzg-Hs(;r7(6<~YX%qfL(@+x5Tn1Dcoj!p| z{|PE0q0)5aj!F|4M5r_c|M?Idhf32zNCTDD1=(07t=3MeRnpCY$R{bwq^XW!kVG(c zIkF-jHccdsV$<%}G%@gq#-_iDYW8I`L;*I9cQkAopZTOY7>x8WhB>v^H0laCi=QtD zo1V9I6!&{p>#)dg4DYfD*nc4}NKO9(uZlyM|I;Mg9-BObxh_}`fr{S_OCj`p{1;13 zd2%mkuiU7>b$LV_7B*ZSDete2?Dr(KUavYbSQ{I{Tl*`mmU`q39w=8wn!VosMx}DF z>6J%@yy1GI((m0`AH(y+VAF|;r`9Jy^miCe9jn#vT*Wb|X;C94A@i0MDj_Ohd>j&{ z(O`~n9=OQh?CF8odUvU`u=+48asJ$B>L@_ zO^JlATCr@^v&&PQwpw-PCEat?7`vYt?J-dt=tH|=-22qOXX&>(n_Gwl&=ag7q3Fm z^oiI!sMqW7@7JqvJBXVy?U@B>jQ;| zhU%o1KFN1w6ZgY*@ZQ)69NktMM;)c=Nvf5*Myp~!e91YjrRteC1n0Xn1-TJBE)I{? zTGi27wbCf4YozgkJsF_p;{&bw09LM59j?$t34cK&*40N~Q%bz}%YD(FUh+mmktxpCqT^)E1dgbEtHa12~?ITHteGma5DW_3bXU%qMQ7W+}EjfWo=c)*6L@ML*Qo4+6DTIg%VS}-oj|NT4<5J1M=KNUW3e6_CAgm+ z-&t;qOg!Mf1=jLp-jW*L-Qxcgo7rzC4HL4>F8~VDaA@2#TXe)V)DZ$yJU!0daw);r zle}Gr0G{$?4kBS4{9Z>Dvyl+V@c%O}5VEU9+cMjLrIv$!sB|P7kiNBS?SO+GA zjGbN%Ss-;UD5`TEWNuqHeytYrQNZYNqiMsNw!=qLj34A`rHvQY6jN3xywMTkJt&F# zh@o8NCN~D}vzOT%L&m$TWhQ0F_%IN&95VbWHka}P#DEZ-ixix96o2$lINUa8$cXTE z;U8jC%wc>`roFo z$)QQp+@yb_sIHnOCf#RdR?fe(&j`c^x=F_wfiUi3o)14^qMtrD;I`hm5{b6{Hz=Zp ztrz8Rou9otS?3dkIft$Pm9;RX*!uZU^~tmKl6f=3`~Pp^v#|9~NeM=AS-`KlV*k%a zA=B;uFRbOjm<0S>G%>UNzcR4@4q>-Y&uEayMTw0h%k7mfExl@*k0kxjTDu&_dtCB083cXm0xWaa~bGhmswgE$l?m)JKr{=S;1w+{TQy2B~EqGSo+6 z)R1FE3JS5M*g`|0j*b@}LebR6i-kB|sQPky@tD0J=NK|RXe~%7L&j%-Sl%IHW#%D6 zW8lmfH9kPR7Nf@T0g%i)A7AOpVDVKXtPd9Nqsll~Mm1QxTeK(hU~z3QSg4+Jg3Loj zqtT-g zI5cp62?^^X&1|ZegV9tY&95y-8f#pdxo6g2vytQ3DU5YsLde+ZiE2NqsLpkexo)7^ zcZVZKhYY%mX1oIxF}7fCT^js7I@y&<9Bc+rxb>;bg&i8mN1uwlZsZt!%GR=(GWyhk zSl-cReWtlhCyvgH;b=E8UkpdbiF8vg3;04;2B7~!6 zLXnS7Xg-bdtB*0K$2Er=lh4}Ae2#(Tlh!hqGO+v^5X(ETJS)?{63fP!F`9goI4(w$ zQ_b}TTo~}>u8b^ykA(G+RgfrNa6XMUc}X zaP8gsYS(E>)!vqme(cCv@kfOmZt?q9;#QJd{H5~mGWmD8{JTQ_T`B)QP5!-t{#N|^ zfzWe*1ONH2fU7P31N86j5_ze675E_(`6BqpF6e3~^3y>(1+kd*u1t}m7OXu_^4i!N zLVFNrg>Dz+(SmXwpZ1RnM*-*435dke9U$CyfFK4Q(K|qF0=4n4gMY#uAn;DO0|Y(t zQ5~B8{{vmSXTtxr_%rKx8d{GLf98lk$B943i$6W$&jR=Z%YjbBKePOW@W($H{<#O- z*KHI2>2L`{^qJz%+3;tJe~$R^6#5aW1&p5`FKF9`ljukSuwT2x%J6VjMlNFbbe4R| z+`blaj4CyPSH*1uafeB`{jN!0WN+ytM0SmM4s=;gKc+no*0wibiOmE!GyWzZ*nT#S zG?dxmbee$edd>s>mexdBj4%gYCM^j}8d=rgllVF`}VJdvW-6NgN6w za*Nbz=hc^OzkbcO9hYgzM!O<3F3mJW=jxa78>W@mm9w%=yQTb+fnemsCz>JfF?K%R}7qF#d z@a6d6)!-GG0Ti;>^>P=8aTHwWhCA=WUR9UNU zMrt)r4lBHF;ayh4o~PM6V}}!K*gmZ}Hac2wz_JF|Tc~x%SRHn@nRr0XH5bq36^~8= zQ}A8@Zy;gy|Qp4sgdy2es2eS zNOUDZ+%8UhS{dru*QgJBYX6<)9=WSrxcIsxtmS=EUP*2cpToGy=YIYI*gHm>`?MG6 z4dliwaifK6Qwngv6y`&fgu-CWK?-PeK0f3&6V9~883rTc2J^JvsuIp)MP&@(oSNfK zD#bEe?FPRW2}hca+)q62WOu@$<0b!bKrl3+QiwrRpKp_TRvM}f;+B@MHy)~U_zNb~ zi@m-+(o6Yj_-x!8Y*YX;81nXx<8F;&uH6j9L|VX-U*+{|2Ywzik-<$ST=y2sYjsx2 z3pBw##w&4s#fM3;n(Sw#^e9F})L47KTKiy1xejWq4gz@%wbq7&zJHeOxhW4}Gqh7R zXw;5BH$`?s^dJ(kpFb0im@WSQpj+&cwTf)Srj#gJ-34KXV*H6!n?GW`{kd*c|I@j8 z+kY57=ewglpi(aUx5DI;VyymdvE8o5>KLo#hhr$h$Z4Z^%*SCs#&r~@Jz&SJg;9E`AAuoEjQfX(MD{W5 z`oQz_N`O?#y+zBla2yLCH^&AKz?Lf>#Up#Yb!)e7==auF_LX6SQLifR2l{LdV|H`( zWRDuk<^bWKca5P8ALbv*7U+Bo7$W3}KVk;%{FJgCTC9e%bE(BPB=q6T z*1%ne&B$ip^sa~+xYV9VG;p22Is*-yA=2EarBaC+wRw9;ANKHmo=Z15*)_#>urg&a z^^GxQ$Mi-oJBHed$3A>6cl>GoFRU>mL5;NFY=PDRxsiIag}bKH zNd||?wdzo~Nq2L!GFaVL9h^A;@2cfjtnx}5wr$(GZRyIz-c69S4sF0GJ#0x1%`Rh1 zpkL*x(Gv9jo`A_cGpVJ|$k5WB9x+w8J&=&yaJ6Rh=F4{94oslk;CFkgz1zVb0vTA| z>xqjMVo&~_8O4uh0zYn9vu(@9E!QqxvDjN%s}COZ2)ytrxF7wU)z*RfSPKHZdu!#9 zgI=vVQn?Z~{SQTCY(xkN>~y~&R3C3WM1(vkAl`~)D^~U`dq&^N<$+}Z$cx9O+V=<2 z)aUI{I=e?x+C8APd%CZ-s*2=}g;L%ZaWmeZVgL;{V}ahLpakJM_o&wLas5Ln1=x7K za)48Q71lhMD$Lgy%!{{b-(2b(-mqh#zc|S+Oh$|LfruQw_w~ZIAHMeuU9#@HWogWE z@Fe1}nFYeNcsJuAbmQM%&w{+|yA$oSCnF$^W-X6)pPf`GE;7llG2i0}#siL|IA}&3 zw@(t>{s*BdQ64`#&-f5FIbs6+f5T?!tGL$7VsvrdeLMbw!3adV<8XBN-uLY0g8H-W zv+fkZx}Om19J=FgK%k=zprk3gBf_}$qU@q6Y;Kkhn8eL_dU628p^0%4cd9ON4mKl> zZBmM(Hp78B)tKfs?{w`~HMc<*f3oK`^Tpi8qr*R#ma!+S*ZYd?bv4IXf`oI-aoT5x zSOW*@#slM0N=B%JTcZeY1F^QCHs^@7wHaoXE#`I=R6Fo#Vn8B%Y##tk=hV&=nl?6J zN;s9v1YAkXwrQjEL6r$W4JgC}I5cE+7$M=g1QCryu;j1L;m*~(4R@7?M{AWp&BSmL z-euO~MFq)+ zv;#d%aTmdjMRbQ;5x5g9evm2k^kSI9E!ffZ(gd5uc=@})<$_N_PUr7APGY+xlsTS# zCS*=aQA?y=5{N~HlaLX*6(=FT7e$axLZ&PClaOh(3Jw3XmVpmlpeRu-Y%fGP=>urE zj|9h9+D6a&!*mgNp0dJ?O6RL){1=5uYtAd&h{VwqZtg4Gh=E7+3b#j5fqoxNOmN0A z-U(N@mFSr-bOHqulV`ho#&OAC(#OW6FrIIO)Xqu>{;#On)R{9AdJkI?a-csamtBJC&|HcG4M=` z7m=4PjW_hSOMAR)Fq$7UpP6Bjst0F?d=7y)xb!z zR&JH|f=6|K&{dcz&m~QvzMHft82C9!uc7NUC2I1^ZmG$WT~(7)0^WyeA|ovkCO)`y z7W5AMmuz&d%z+?q!<35>GhSyrqf5r?R3PkVyp9Qs*K>A4DxEY}r*bQn&?}Wr3!c$m z0u6XeK?|Nw4t##O;5m}q7(SLOo+HQqT@f;WDPE!Lm}lg;FH8tqVG?e?d%7=qZcfUY z=hdNO-E>;?Y`KoRIT5$&Ij(;`Fms?{kaAoTgF{L7WzT16j2G*k`2@M-Pt_vl+e~fg zq=qHmeUbCcW^wJA*ZHxlob~lLERd`}VB=5KWJYJ+yRUPO;k|zVtB|@%zqx!o^?Ty8_c`l``SvXY>=QJD5MTlcog)sd#m z#g{8UF~ts(^&rJ8Oraxn!ORp$Mq2FAg3n5M@IVi&N#kou@t52^%Y)hE5d4BQsUt%& z$_?pxY7yIb4@S6=PM9biE*TYp>*-iQ)|p>oEbdBY%2k#|XHLy3%O{F$utH$Jg@j3M zl^mmrCa$uK3iCcGqidS9_Ia-l36tU45)xeR&I9#kAfAD+H@&@;>d1a?U!^s8pfc3& zZL5qnDoxBS9qNHaC}j{|jbbRE=DL%t5RHym-P#0BgT(~=XOnOwF*tWvEwISvThc^5jiYrBAQJ~l%`ziB**UqGpMMRdhU zYEKC7BxXrn=dZTlijx8bopoVa@rGlNaXC4`S3e=4b&vuDU8CtR5wEmJr;OvM%>2I- zs?(j!{B^~Ozp|NEBjFr2b0-F*RIFX)y=pnA*)sDX>pDF(AM>)0jNJU@s^w41kg{%o z1p%LDP%=6+_30U!`oAYT9~gqm6{bUa{>uY-%AKB{TXzFLKyLGrn4rHi#SRvdpuZ=j z0EZDqCFo<#1J5csLEox<*%I^{lhL9B858vL3kq{7(%9wdQbY#B`C{I`gK-f$GMYaA zzaT~bm5c}6|98-hxUj=Q!R?m|Wr^~*J1P2a#b$LmMgQ&HXWhwyb#ErtIdq50HCMA| zNmF)5bh?}+H~TivIF~EDcENNM_X<({Tb8CDeMq~seue8r{d z(`gkdO}}a6>4(Qz$ZZ|d6ZNV55b+dDTZc#h;e^hK`b6SrqP}~gJ~8l!PShVj721VH zCP>uBJ6fVXKJ!T{Za{&=^n)WZQUAr*POgHTa*fh<6H=3kdx5Ye_|+j%ALoui=IcTu z*EO1`|EwYt^>fFTc;3AceP@~ULFkm-oT^lP3WMPc*2XLAn5rM9_WCLyphd&L-{B&u zUYoL1{r7iEQQp&4MLF3}6d7@er0UPC4E;aqR%d+Py)$An^iNS4`Y7oMozXEvUnYdj zDkww$bd{m6Oi_T7hzyPJm01JYD{Qv>y|5F$jaTSB<{3Ivrv7(K!tM7@<4k?Uph?Nr zUxRsts!XSh{gs){%HjpZX6?uI)dy!p*1qDPOXmK0oHy*$vT*7=b?N&jtP0$^%(|H; zeSfZ5Tzh6pL2L^DLf+ZjQbr##8+o?Lm`*klwqn5?;TOU`l~`9>xpXh*W;Db5zi|Fv>+T}VD3t-=}WnD0IWyJR-SaY-XQD}EoOs+VC~+D5B7 zI94k+dV;;Z!;E0z))hvTS-Bc(W^PYVq4%?qu)b)Z%1Q!;MuFo8Z)#$`G$#7*5k_r~ zmeTLlX-NU>RBN6JwGZ|sZT6I5%NyeOxW;X@Y#`YD2A2(ZbPSc^G#z&%x67$jn{*gJ z6ApNTv~6Wr1puWg$#>Jbn>CL!(#SzNK4@S-U376^qgW5UD21>C>Z5Xxu*T30)U0!p zIh~`KE=OBUOh$8edtDV7)_-Y&VVKH{3C25_wyk+t(CdPrY+D;J4Y#D zY;vf@u5cUOKXe@-Re~$d924{SVk7mkA!;G-BVv&4&O+Yr7b{R|%6u3J+f13GLAj;d zDGUaO0YOv@4~nKZCL9Nkfi(zS4&zNY^=C!j@@0L?S8C1xS?o))e9oo$7b(0jY}A51 zs_e+oem&|5FW}cH1=tLkQbd$dj;VQ!QI2YF%vYgJcF-G@#`SY(r<3+7y+QGrY`tMC zK$s`Ro-jx1(q|_-aSmOo^k)$g&Z9qP=!(;-4p;h7gMzScr?VSiv&d$POYf?JnwrDm z!%RM?Rz{ca=}_Tdauu@}1RvY`-(*})L{=)EGKsh$g{+N4GsG%NYg z2JtE#Sjg6eCT;c&1R5;V*>k$Opl3o|Sd z!LXuOB=R;COj;yDSMG~MD1nHgOqA=z$FaCYBBxP8s_8q-tkH_uk9oIiIV^e3@C>mN2)XBc1cNMe5B;&PRl6%EA zjRT{N>R@H{mikDg7Y;=psx)fjkgmjTH>%Bp1N%VD1|aJzc=wL6N@HBoU42ct)~rl} zB;#M0`qxRZ^CTJnhgsYV*&|#Rr`QBz+6p{)OW!X>f543D+||}bHBVx34DbCpScSyI z;@w@9eii$8Ad-SR2g?l}8@p}urxXAXw-|GuV$WQgOy#qHyj@I9<R$&nl` zCzAGiYi`)+-H3r2IV;W*sSwd(8v&vDy$E z^#LpR;53gR*sLDnMP9kFe{2}o-0T^yi^Lf$m#}JX2Bu;CSXW-j7@Ru-9M_d{^^(z* zQ?q($Yq1ShsU(|`FhOuiiZL;wo2!?eBUHb%21HYwS+jMNmZOUM^^w{*8H+ostpkDa zKtUg>G^-7^_%WK=oiz&K7t2nS)V&V~1NSKWVI+0q!zA1y`~B)WOo;p;GwA1e@X&9v>!^YN7DN%!tB^drX?X zoKl*Nwn|Y@E7QJ6ZL}ewE4)7epIfX<`wBKAo5D-xN7o_Z0s|%&#)^aQb&FN9Mw!Pg?gdsaMpbr)pQCN$>ns{|>NC7KVy-Q5yMN zCjC+CF3N4vcSfVh8ST3IOn}rDw%v?SGetHZGv@a`C)wWGm@mmWW#vmiIMJ=chm&XJ z*QAu@&_-qDuc9{EkjP^L)?qWUS$WBPdn)FmtLcdOd_C$)!b);%0+u{=9+FP&JBH^1`4pbm$)9_k#kKWZW3)=h+o_c#5^@Ej0zqd9F z=Je|CVH7tQA^?@B)!|2N90rOp*xZhSLOp_lCv$L`UKPSfKzSU#8$mz=%dQfl(QH-9 zLvYA>b?|^UNO%XlSBL%bszeoE9)_PVm8%R^o0Sk(G9yYHFlK`ff5f`~%&U_J0UMiY z%r;I1!ilpDe3*aenS&k7V-DgLYvJW7WjVA^%{5BYLK_l!2A)1_Mz(=Rvfh5+S=TLA z$r^QO;MviwYTr1iJ$$ou562EXsk)Uo@O1v_^E2OeGP{u0;#>pYN!C)6Fz`9lVpj-o z?RE{dsfEf2t0u0#OiPJf8`feYk?^~-wZ|KZ)q8~}zYYo8;K`BHh@Jlc3ARD8g0f4zL*?2SY-L<-_VkF${+^!d@MsNOg@HqLoRQY5t#LWAUF`Ms z(dN4H4NtuRpAA)Nt#b5DiB*YbR06yyZZga(BrQLnI5NCCdT3y%dZ;>7ff@^REPNCE zlO`l(h$hf(Ci2B5rFIO$e!m`U4~*`WAbMG|N5v|D_Wttla8iZEv!KF^2o!I(94NPn*SJzs$3iM*w4N5mTxlvK`45Oh6iIHMu!Ll& z*`M4)e}$Y%=pp?X_0T*?jx+mjkwkI8uVVH$Tp1I`>@x(jzwS!2BeSnuvc$B8OO|-0 zB?Kfd35`*VMNCwnpR4XE`Jatw?V0f?Y_@IB?YVhlUSV)-ouAU zLgPnFMSGrPA#d5-7=XTKO)^=VxscRaC5w7v&R@x+s ze@5(fXkEeJ;!7>t%U{2?%6_i2Z+%Q&Fd(;dzLKGrZRD&n{zr7N@+yc+mlwZY5q@&G&-y! zY0`X+AzYE(TCD6TMS3IkZ-OG>!!9V&qbXz^Buy!j-k42Fk*wwD@V#$f6Jy>NXEWJi(hU9tot zODPho1)f5Iiwf+#wJ8F7d{9LAImzoBB+SKi0g@>$7@)-U1R$K~n&ZQyQgh5EFGwNl z(347B^~Rj1?6EX3dUr8tO>1UB(t4hd*15!Ohc-b@i!J^UF8TvT4K!oEo{ zu(FWwdtqSdE|=JK#dfli*sF<$2?iD)c0poqN+Ijen@VE!#+U|{^%xV`w00IGvgZqt zeKxV%p^+U$cI6TkU6=F80NqH6!S{r67m?fc3VUJ!t&(BNPBn=IFAKTrkj?%4Zi&mC z)ES}<7lqNXByMqq#BY;SqacyFK!{AUD3P(Lmj6fRL4@?+C9{H)lbrwDJ2xYs>wEouR>Z7!ZqlS9`R4wX_HxE$Y?IqFs&KrkCJ!gyp>+{=XPj zv$q=6gO%0Gmn{oY(FR)Mqm|W*Fu!Y250);=TJ7N`ZM6HZxKj#CTukqoID@xZeti2P z^Wmc1^p!w+)r<67J`--cdPcwHGxCwtBm60!h_OgLqTh>PhXLU%kWD(uTEepxlk%}v zjQGN){xRrJ!5e(1YtCXPgQPb2=38(GYohJbkx0EHR$XS;;2T$GiVeQMg~o+8_@*oO z4ZdktUb5=6VJja!;x_m`3AL9t_!io0Z0=1jXzC3wq-^X><@0Ht|3tV)$1!#zRr|PR zeXKDEyU-DdqZ@m>Z|qGBJfb)D{ywVEVKg$q#@={G+t?eQ`J@%N8<3Bi2uFTJT*X*8EM>U%4V*8axbu*=B7rR(d1Vym2`>nn#UwfZRTn?sveAA)sG1AFVR zJ!GYEsM1&pUJ7_F`>T~^u*db%q55F6F&I1<9~g$r`T9_^UxZM?_xjbR!R2`Wc0q2O ztexWFq-^rN2KSm)Wjby2y|OkoTm|+7Edss-mx+y=h}-NtuCG40baQoYqudx@dQGD| zT)DH}IM`fz!#Hqvq<>#B|1)%a_)wdzX&VEA+EjZB_b4%Yz5Y`?VfZ zJrVX=|LFKC>_~7zNA_b{o=d|VHvEosdsB`m*iUui3WavT3ku z_exW#I%#X3UAvc>#kFUqT*U6&y^!l5x1G_4%xbPR8PmBR?!oO@UkLwHVlAk#W$kFV zooh@#_-n8Vi92{-kS@wWQ%lC)(|nWd=qAhjsfhh!Njz|~)1EsvTX63H@^+4;!CJKi z_YFkMV8e0ZK?lPk`3CuV-Y6%0jm|KO~9r%2IcX{&?(YLny zZ@t&RuV8M3ccKOQxpA6 z2nc$6gq`1`uYRfTZI!Dduo8rp+U~(F3f|gR9T|c>LFF!@%6)G}cU%=8;98Qhw;%Qk z9q9>dXvox((C{8r89s{s9cu<>m~jm5@j*kl`G_5nzLP@OA+oKGzr`8@yGdBiP3CBh zW-icsgEy5d ziFXi8wNh>&5{@(-CAFJ7uihq2KxwEth1H^*S37}y1$0;j#+y0u$3^n2^& zmcvzfKhS4$lNh@w!bghjcQuqfD%eB4YYb)hF#k}tK<8t?5Ft?IC^G!~1zI z-Q;9{Qfvn+Qx;R-7*l3!;vDl?XvB=U=y7{c-y^M@gZFqNe>1g>Jds%>UNx)sX7AQh zHYD2&8>N$ao4s3e4K%-RZ4?p)8i!g?P9zO?7rNF$Wi8?~FfolM7L$<;Q9H%VClX!S zDdy^8#Y4@1S0iDY`EN90*0&uFX@u!$tt!s4!309sFHY=~vajA4#;GkN6s}mlZ23xU zeoEH&k}Mx{{kt)R6NbI%*%Oo;u{p;F_c`%fQ;6r%!kAje7}weTygD&og|^i}V<<36 z8nXr3X@`?ZaaS6Hf-~6~GhYO$Jop z9IBNSZ*uAOD~Y`}jWcu`MY|B)c4&yo;pd^}h^pny;r~WKf+2aQa`;ngz3F5K2}E-E z+xy}Z_!Wdi2vU&5A0+To>OSSiYcFaU`08$nJ_%ElgyKzBp+Xx4mhfHRdBJ(#>D)fe zNr+Y6H^)gB;|e6m3!Xz@d#?sC_f*s_y`r3_k9|s z=}_Lck{KiSn_h|}#ii$eQ$0d3TGZn_tPugS&iUU&;%NT2d;T{u@QBX;KK2@rvRUv? znE#D;wES;;=96|{num|sAyb?Gjk*FO!=nY|f1igMjmo-fV5D*v{0rI4Ly*_7Yhb86 z9=Muf90*^XMX$~ZUY$j+GGD3}xkd{8RJ=mN63#{(+zpivzStxTxunxK9~^la@Cn&8 zDOusyBG?-(*(o>tS(#I)qs7H$h{yC^C>H*Wkf^GGHz9riBP4&)ULM;%k*kU^1wH9{ z%dOitOoyE78%)6so1UN%d2+5do5i&spAotEh9If*s%`G|V-B^l$i0@eisoJ) z$5|_!rr;(MsLwmpFMsB>sJ2a6e+HS? zXU2^{arxJpg%=aea0N<>#0eM{S~W5?mklR#xIdD1&@@N;~ce{ ziLtkkY-0jZnEy(5DBE5fF$L#dVLElJqVyu{c-gJ+U*GlD_pM)l8EVdOxfLpinNF0= zS2+7xU9WR9S)~!34upZHmHPdh}tr3A(6x_>oek$J+6~FUWPh;7FY2pjYjx#w>^GGI0S|Pdg`+3$K zm7w1awNM#c^IdD9@=?%VNd)B5Mk|%U^(2w#QU=%OP)3V0CCX9zG!nLP)S?+&OHe$G zNk@4f941X}mYQ~ic2#&RHXq_>^`JKkwyT5x?wKeFC;Dr}GDRgg{Y8F(LcUJ6K(RC? zwiJgwVMG5v)wjrcL+z%kbqqgpwJ zptf1Xj04iINz4+a0QfM;Xe4_AG*q3)Sk1Gd&YlJgi`377ThZY=jad$(lQJg%LtSL! z%*ZiPjZUabg%}fuhNz4x9<$)?tOH?{D8mC^QKK19ZiL61-*%4|j9r9>IJ za!-^Y6q_bF1Yt5fJIamrIbo6v+M+%gp6f$AJqT7xCqukSsWOJyO5HG#>cc$*e-%by z@+Hg=iK7WK?g=x*z#}?gW+$rDP4G{cFoSorgc*G1la^p~-p8Q+)F#ZJu0Y`Ifr1id zPEiRn5PXE~jw36I!{@UGg6GTwxexh6s{4GrVy47l+)$}8FEk0a-!qLzN0g9+8yvvn@jc`s5KD9bq5B60PW`iSn| z?}}u3T$+jX0iZ3sfwB<0CE|Ro z%X!DJCyf1%oBZg^e)lw-820-g!73!C;hdc$yFm-PlY{dmd%oD@;QT3&FDwV=3q;Jw z!I?|?9 zqCaiZZ%)`~@8Vdb-^f};({JYBI1(^b3!*=)(b08dl75dKLR1}}z3?Mt!@N6m!(5Q2{&SMK2II%1e=yL zD=L>j2%{?zCcalWi0?y?eGdng#GJq2hj}*sTai0r>=W#|l9dGPiedpTP+JZL+Xg1@ z)~D~dm$=DYn7yQLEZNMp{o!WT3O?I1mVn!Af4C!su){P?ZNh*x25!?Rn0fm{t7f|F zinMPsn!COb$zb}D#u&q<-v!wcdbqN4cYvw|A`N-C2dB2F6-F zEx;{>$%e!)k?IAzDfWAaXEK_@W3V^HUd);d$cQ@NJ^~@8X(oqd^^Wuc?!4t{ zaJpT&7N(q~ZefV7s(e9izUpn<2ezx#Guo&hst#3#dMSNEJOrZ!TSM=wv|#r;v|I8^ zG;a8l>`{s-3MPu3XOBNd2@gGDZWe5`OtM@VqaO&ClXM%#2p=YunhaD&jgkHCt+St- zT&_cFm09{Vwbq7&ZkGHn!siwVY{z0VvY92>4N=x*+r9OiZm~<&D)X?zw`gTj%^xv~ zw4__rzYGZ51|kwmp5knD>=yyu#`>>*4L)s`d?&+QT=Gso`)c)as~LKeBJ7mmeI~n~Dz@b+o9^R4*lw(qva6&9nK#)| z!xC`W*vpcc#^z3mxG~!g{-mHb=5VNDwjWHH*Z+`& zM`B6l_JjD?ekMbM@o|!wOa_kKluU1urWfs?Vi~6xfp_yr%2v`FnCMbeo)?u-FvXhWeFBbzzaBB@Roz=ygkE7WK||L2Q-C^*HF(y z>Ln3!$dE~mp$U;my$!{WGO6jxJ(HS}9x1d($#8sNiraGVa;VwR$54 z>^yM0=x3?{k9zs93eivJ%?63Y(cEeG+-YLq5uH1IJ1WsmG&8|r^LR(goyKQA=>?`& z_?VS3wYk%%D=-2aEGT!Hj>ZlSRo^vGxofoA7>6wf>$uyXSnVaQ0w+_rUhK13@-x_e zu#P(qiqFIq4@JBLxk-xtLcBs#6Hcie+zpj!eV<9V{mE&XX)RB%mrMhmg)F0sNy)z6 z)}azk8QJTzWD^Clmel;%T?*s6_YbFimUagoPdH?5U*3VHJn25NK69$_x8HASWhZsd zv%})M&Enceh?K8w;8VRXOND2Q3vx7m!hlboS2%u6X}N@8#tcXQ*@WE ztB)M2G+Ir}+}gO-+d7KJ8uHS{rY|DV8Br2PaU5pV0SnfY3P%m}NU+tE}>hVMXr z=t;RJu#$j5Qoki;azDAchGds%G;wH;Pyj_lWum@2n0 zj!QegU4K37`=-o!^c3W5mg}hXx-eNnG|Enk@UhJvXH!mq`?6 z^;7ugT56vS2|es@o6NTvo1taRko}5J=F=G;McGsNo`|w{{_3eof-1LkLs5mDp7{JW zjjS<1WXx@*uIab#8Y3c)ikujL%m&t;OC&77S_ZCVgxy|(a#5V=R+j8OB%H^RMK?W> z+cGAmO_B6PK4PQP8wzTwu7>^q5Y3*v){fLKqeeamh1hwmQXUn^^cq(Z3Q5KuEkvXp zbW?#$+yjV67-p&D0hzu4O)O9w6v&iX>rE#>wWA=@XW~I78s39USmE2z!B%vCwYLb) zYFxGqj*nbKcf|`7=<+1s)X7anLW}8RobvV8>iY+VE6rwkf2Fi<(FWm6hLw0eUftut zQPj`Zin?b}xLcJNzGrw_bdc=pARz^VWa+YTqLa!gkc>|$guZC=jzsDuVcIf)WM~2f zNcID~B9M%(+(9ymSJO~Tu}D6Q#DQd&5J)CvyHChsU#kv#4vFwMT^PU_ebq5Unz|7Y z)s&B){%gWni!+!;B#wefCUG;nJDZ)G*_~x(HgQE1@I`d2C`;8U zitnoU#=osqs#RP2_fb&M+S=OUlU8kOtybl)|L^pad(Wf%A!8GI*&~&%t6ihpo6clVN*)8^#cq>_g=A+|jc zzvUMids4XL=9@bo8iPatkbL{frFyUYI@JqHEW9>FnF5s2+>zkdrT*q0t1wq@sxX)T zj>v#k6jI(d>jPS9P8Ol7RsPd5NF`F(^^?K2Z(hG`$80zn?D8GKoi4&oakT5rvOS@wVRPu1grfFB z_hyTF6*iH}`#b$&TDz&UP$(+66*3r%3bvCE#kjOE^`2>mOC=u_kq zgp1k92h;6^&0PYwrbUR}ZZRr@B1Cdj!6HP91F#jwn17Yg)Q2rbn7tH{7`TZKswLmq zbruu*Y$+u}Z@UoS*#6k(R>T&?J|D(!_|uDhQc*h+(os=PO~i}H$J6n7-}r_VfkBkh zD?}ug`eI|AtU)wUtToC*lNC7a#N+f}l+*NSMy}st!_K^BP*Ki{v12{T`3?3a08lW> zch8O@)Lq4}UeOtugw66$9t6XBLQx8Mz*XEW?|}m2!oyCj)R?S|*So6Y40Phy0`FE) z6@>bg9TsaP`Dkgli%ytg^^D}6ekD&ykK8`vgXH0&A26tL{Dn#(+3d{xX~GLk;(SuO ztDTuRa-af&>Jo4NW%|j51V+kO7`fdPamqSBA>y2w5d6|Dx)9;mv;ejWTrI(l15-!n z$A;kdKu9TPZB4lg;JNv(29dBD`LosDAzVF$2EK=xQ zWRmZkd||C({41bikFY~Aer!}~f@3&+jNiOY#w7{wwV*6jC*$cfTazyIP@`$YzaOWe zMf^!?M@Rf68tm$1>}VIb+4Xzib9MQk9gR3$k=Le3Zp&E zm>8uIqK+m!jk-u*MryNXPEt0SEGDNFjPjf7lThagw&K&GyxZAu#dRBdoh#Kjg>*e$ zjhU_0KbSAxl`4Cm01xp__ql|3o9H4*5K5hWhGuNi zg|5y_1>6^K8tDX_j*6gwOTks_iILwi_-3W0PajC2%gJE({Vl7fb&X=Xw7s zHn`JYHYv^f(j6at-R&Qhr$xSHOJ`t=?avTD7=$Vc#UUpvD`e68N+rgB=}P^#-0j z2^tDNiMEHs!y0{{ZYx5Kmv zBE6K=L|U%#*KgZ$&6cbC&RgYNQK=5?cW$1n!Y&Rtxx4Naa0W;3 zV5K;|AL{Rqmo9-)`#y6wB;u7p$%M-qqwNulTWthu=7{I#BBfipL_ zZ>o8xM@>D>Ud6L}HKyGQT)VgZY^#Py=9o|AJq}m9*ChzRkeRVepOg0nVLErI+42|M znDBy33K&Q3dA*iu0OqeZn%_b~4xiYOfG^%gdti-o1wt>g(GN zy5j`s?k3P#pyOLW&_M%G_9@X309;e-3rMASgv?Fz0He6~wI6K9>l9}pGorvIsW>Pz zEP7Wvd7fp9SGBf56Tj1I8=K8(U(XloYK`*{cAR02(>%ow&GA6plqXzTRfp8WQjF4n zoYR~$_}ZHK;8ObBzE312xLed$XS2d)a|fs}02QdYDE(bRpC)2&Mj(|*1pF%j+hmT? z$)ZF6azHL3z+xh5Gat_-2ykT9&3uKe@ib=vJGGfFanzem2AeRrnQtI^GoPNs1f_@* z>qe3(;%(yd^L!&~Mz;NJg0+Rdya=G2^M<%&_?~J-wrWEh&ps10r=_UH_FfPXixeB; zFmx+6#BD|rqz!TO&3;4NiI`eMk-R72H?F#(HpCr68{&XYdWdjBTi>W%?F51Lgo=^$ zc0XZHyuEWf1;Z1J#o7@P1Pv}iFayCO2$zi6<}%*2U!6 z_HJ@3xT|~Ef*+3RlxxP|vgk=Mj$F@16xLGgUCe-b0nU@NpdVDTP-bd5aS%E-+lJ6w zSScMSRi-x`*<669!cDt{Tj$SfE~-~2YeVo0vmLO^I2=a1=~!uatOA$``4vbQ-+A$T zJzAi<=`_z+hg^?cj{Yy?GSM47-ztA3qlbsRz{K4{?k`-Nn^1jy~#7i;+4!AtZ z)Dx3gf6*>v{Fyy6j__pGbT>v>3A}3|0L1@53E8@13nXoa-Ig;@t1A z$Ldylocql7IM*XLIY;5;{c|TW4AhOQ3Dg|V0hWqNn=iOG@RsJ2G{B3kqI5W78S3U~j*zIRf_XF*ta<*tGkWBj(M6RrA@{ z<#C7>+Euy-zu`}BSLrgv_)*(RH5L;q%U?4Y2zn&_w$hWMHiiaIg^Rn1$(|vc1zCfs z<$feUr46b=ICkWp9G%2Hg*@yKb<7`E}ko?!tqto&HW9XUv!*cERN~OAN|ex$!8 zk_gv1I9ja(K~mjoxw{z(6AqTJ05TmWUK;Lowv{Gor8=gP4tK$x6R4FfI<8WWK7kh8 z;BLvZdgf2^1)3JvJ{74((GeSzOVXWJpnXB3crkU+rbPV5kZ$tR_)2E}5IfEw zGk4ybS0X+nStn=WV;c4oBNe~CZtVprGSow{0WW)c4&|Q1R4+;~)jynMd;kdUPM8hZ z_^GJVU>BNji zQ|9AmClqEPzEP7WdG`}MKVS!h*$U$4b(~BINjQl(D#kyMTycjzU$aj=8u~oN%6yLs# z{MY9+XWcpBejX5>zPwLtMt*{m;%*qWXVpYxD`KxfAoCUL_S*k_F zInc3LYE7%Wd|W$v8L!7k6&jzH|BO8I@-zFEc$$64`_2;QJ=ZC_I8&MVCAk$UC7vHkBrF7{Nq$+ zK2mxNGFoQlBfkJsoSRc-{)w2siJK>P4=7RO#Yse%#J^>pehc%Uz0ya*OYs|8k6BcQ z%FusBxZ~#AW?_cDf?Y?l^w(oPp?arPrvCY9G8}1Jt$I;pwtf_jJ~St?^|gsvWbB_7 zK!V7G7Ik)JLE8R@!mQJZC$psOzd!uC=G>%$$khE~II_8f3^p>^_+S_?t?^)=!XJSL z_tQ9p*cAR{I^lW~YfldUH_TySlEeQHbZ@rMP|4;}AFFf7zD%8ka`?SdCA^SRFo{3d zPHtxJA|s5Sv=ihQESrOd5YnLJhs`T`;5er}2LV(L!nb%XYvw{OP6fFXuua zDwSVjHQ~PeQ|ykGFlZW~ z%gc55Gl7LUms_uln2$$T`P0m70jj9|dk}v5W`Sebn*g9eu-$Wg9rL6y-G8sp#(T9? zey2)X37{Zt`0%F@C_h^7D#CG71o0^i+Sr>8ZrF-|CsxsEQwq`!X10ohsi3-Py@AKc z*Q+(i(Dsqw#^g&)RBT? z1N2Y)W3lS_!dh+hs6xk{a0qSnz{WVG5g)h@9+t#P{OK81dIMvnI}_e(Aqv$tkC)MG zO}fzY15CGhyb`COZSx>|C3>5OL_-jCBALQ7Wl4fZgE z?!EAM`n(zU0i1>rwh5oXO+AS`M^8i@i`Dw6Gtl%A=9X>)4An|dzJ1skoC<6cO6)Os zf{cv;@XdVDuI!zNk-NSQ#h?U1G3HpTh=+Y|fUOp%uzkgt80Csr9g9__F47;1wZ&Uu zP#4BC)D*+!uZ%CJ6V|HD}55Ho9nKvr$z9vtaWhUM93lf|bk|?N~ zEJm^0-#R;DI|`NCjw{F5{JnG=c(+j(ZQ8*5s(cAbEt&7cj!l-#L8n~bc5;IWuNa;O z4OStY`i_n@a9xh!A<=NS&v`v-*YvDCUo!?sVxN`faZb%|PJl&7MlIW`-W@o>uS>P? z7rZm!1s1ffgmT2lBZP90dn2CmWwHg|sPwHj!aU840BJ`kzCrToG~d|l3HegKC{_IP zMeH~W|C~hbWXU*<@>r=CImmPSwmPB#ibK{LoO=Hyr>SNz_%MSHhLzIf`wr2NSX@Oo zDX`hx{wCpaG=fsWl$qAQOz75x$+LhdFg_!AW#asA6Ua@b8RC2-{9HKSVj^lQ$g!Yw z1H{24>NiehLAmDQjn6NRO+YDOwgmI9G7@oa2zBlYUJKZ%tsse`-gF#z8iHFv+~}fe~P@0XX{D zyZ7eFQf*51+kaKDQZLPdNkCqwzO=D;<{Q2sP@Z{|x=d9-qEtumDVoH`3- zC+tBUikRQe#|OXJsD5uTsyD$qib?T{KY|;CW|yN1oPE_?fQpR|Ok84PJNia*JMhui zu{BSqPfkogTw$O-25HYXPgWtOFnvh!$tpbji59J5$R-XXbEZ2fQl)zUDY!v;TOPdM zyHyZfxS7H691A$!9}7nbu($d+UIE>Mcgd9UF0dGt0p-b2*-_pV7Guj!d1A=zrMwd& ztVWNR!gO~GzuUV}P+hQ*(cCTz2pZ7bjdnCwwiuNG&B;;O(cD3cv1O+@G355r-0|T> ziAPCcl3S+V?A;~^jyExKyUPN22ISVXBe%C$jLLxA$CbLVtO=g&gAztYprXn{yk!kD{8?>crXtGv=Gbg$Ri#0z4KQo*DVP8_268DlMN$kO}T1U*)#%7-&OVydlNt~n85Pd8_TdS zOz!Q%En*tHiU*423Z6XL>#W~;jq@Dz*w9fOuqBV&KCr25eAq#!jwme;QIXPky?g*% zLG>#3H09JstCJPTlP8Rx*NMYv z#P#ZUWs0Q6!E$5NlOn}h$r&!y%Qd$9F__z()*Z2YC(Js(5Q56;UIrZl^vDkq%Ie0( zxVNU?p|p^|#`#rVV?1(p!rLq|2~-~U3Yw!y7ka*m>As|uI1Me2o77wMz9b#^!94Cn z*bBE+#PKt&pXxOvU528h?n8D&%3YY`q&UhLMba!#IkJnWi}d?9t|R6Z?lGq@QmGaj z-Qisvq`*AIqgw>sxT$BjG*XWe^U!^&kbfGi6yAB>V*qYYBX{2L#3H;zjMBHJ(=pwY` z;FawHl^jv(O^8bb4-_kW!0Ix?@SEB->^DHiW|4#}7{1pS!^B=ek)Ft1u_C?oQ@uN2 z@nRsT7>bg*&m_`sFh)^kk-jtNR!%9`)ng)BZ6Mpju4=}};bsQ>ujR`h%B=e;0YAp9 z!^X}@`5z^`%|t|pr2O}3jwW4XkpYk4G}1|V34C)Y|NC}z4aBeIdAKP$-ij|?sO0iL{j@J#uelS+VgnqD*Vd3h0nMH~G4a6)lA|D$& zC-QeEye*SJxQXUy(nS`L|2&*VI)Na8Z!Yp1?E;k?QJX~m%i1;UJ35NtR~TbBQsgIc zSFFfy{nUCC`Pn2GlRZgq%%lOHX^geZ8sJequIdy9tJO-teRJbz31SO1r%`q2UOi?( z)$gFy8LUlFK-Y6A^;n3&u(5N#+@ea7J3PF`J^@=x-!B1Gqm4?dok{@6Sdz5(O zm?$EY4`%&vMCAcDEiL0n=pd^q7Ov;VD!XL$dP#0~g?Q!{Yd@#IUf zW0QDtAT?s=KSI`qmqk+4i@&jGaNXHonu3G|NQ9s?6X!s&GKu*R^{y`QwYRIQ44baO zR2Vo=#T99#+?bLJ+f`0a4^`KdcR1<}cx<>-X%vHZ%2<_Xqc^~v;v$QA`CZEg$d3%S zP8=8*E*~flmte#qI_BRA_DLO*GQ<=xHs;+}$I8K_A*^@@^?}j65}mHBcPU>5^u4b* zHWoKv(dG^KKxtpxjnw4b2k(jnfoSvYR0EMcSD_4IUa&EMm*3HXS zXQ7AHzLgW8H1{SXRk=y#V-K@;vNjU@mu49QZ2zP$HQ7`jMs+65h(`S&FIM&-Yp zDEhq7woesF-a%aiBgxI9Ruc`?d*d-Qg^-HDklscZS}eQczSkze3f0s9tPz(fK2 zBmwM$wtcn)_9d%Vho#}_)lOkG1(H|$!YD!_#xl?w6?zKpg8{BRIr@!$XN0rk!-L}J zdrQ9P`!ozvfci}Y>X)QJ%QU|k}WB_clByg%2C7|p|pK01+~FLh#Vnn!o+-({}TUs zu^gaRbCP`|Uo0z<{TjhAhGem^4J7-cgl;XcsYq6zj7G9i7-J-xG|!w!_DOHfm}9h?G{c-|_Y^_93klE`(`!k)dsna4mNHSK zn{hegQ)z(Mn;m;|So|Lwn6y7e;-sY-KsX~^nJ?`rMtUaUH%1j;V;dOhhJ{ zl?k?ve2M?OuyyDv2kI^P(u5-L=MxNL2pk*RK;W-V=+*+8ioo^Bgl!#$F{Uq)=9v@8 zK1GmhgTQSu$(AJBy?QlzmJ%pdb3FM37bMsZAZp?Wc8T{2|8b(%1=uks*N^6lVMVSV zBKXCSD>k-)TtA=Ctpz3(x$2WSP03>^V03gbYE7DEPSkpupw{;jv@Pb?l3GE)l6y0O zTy^)SPjEqc{XXI*j$UCgDPQ70F9a-Iw&8z}a-3Ef&?Q&Frw znXrIm7-J-xG|!w!_NjtoA0=>GOtK}(p1)do*X4TBi*CgE;JbXf3(#%zJoC=Hz6zl= z+VSDeyqg8xwaDf^V|P3iT0l~f%Tu9aZy9=q?=6di7H3F&HjXuNBAL?#$(%}~w3uj+ zWK4$Te*QG@knTTgo_C}?MMVSgJQ*6;%6voifd|^Lw%OL(qGGNXddwx}Y637BLFxCy zwtT~IAQXxRI%TO2y(fYCEGR`)hfW;zrZZsJf$GpZuYovibb)AX-@jKH8f=FFvAMV3 zq3x>$DiYl-jz*<);eM=}UV!5f)^vUm4K$`EO8qM^ze`k@ zmhb9!uu2@2{}opX{u@_OCF*dT!ReP&o8L#o@}{_LaQ}fKTYk-mgLyx)X(rSJ@k{XqCOO z%_XkDvOq3Y6Pnq|-pDJU-Jg|HW$zO`J-mBh40iIDF#)T_v|H1^WuATuTbDh6P$CBY zAbvvu(yAzJQcj(!@cof+$IZ9(U0*NN>V389V5!#FS9<|e8QI@=WpzlD%IUkZbf8qJ zPGH>}s%Cuv_BjmjNtVESG)dQr#f`cU7s z<-uC9Hr01ktvFUXSgq}^_idd5sE+rJcvt#v05sypv%d3t*RJiWln47J=ob1}FE>g( z6UCwZ#eEv4H01f1n3!6J2n6GEd>^Lc*-Xr$;&%Y?1yT1{9D<96GJG4~SL$E6ee?Ql zJ66tuvfbYfGgB)r%~H1ek?`x9bCWJ2OLrf`d63J@U?Y>3KMn(?H6H9sct_yD{Sgi! zwuJZT$)xN}wLLYse`gLIlN#K=f$q&*9|`4ve@UH%YH%+SLcoJlsQhoRoxI83MMf$o z?=e@b26Zrxhwj@AjO9T|=z%3%E7a_y=ic_hW;MaaxD4{87Nat#5h_O&tP#3cY8el< z!e8rOWi<6{ixFn86DkI7;;C!NcXpk{)Cp}VB|~rfJ7E6y*9rYM6o*tNbU)$^e|mL7 zmvaqNh^Q5+$$7EV{u*}YTk5coNM9?o&&#NnfkhH>RQIn4RV!<-ixUb7)O^E7?HnNS zX8bgx*_$nBHdQImhY=onDbR8DCIC<{!mu_D3-@z2MBGk z-HRyl?iwkN4?`_bSv^#l@AY8GRq+7sAt^fhpiby`mnTDgpcVv&cd5bfu*ZwpH28`v zbpGuUZz5cLL~5j0By?=y(N^c);)nstAT>V78m{L3B9>9(RQ%6c|XT{a$N)b>PE)QXC z7FbD(jb`!}EY|%UAo5o2&Y@ZfJRDF?c*;@o#}Q5qO@aiAv3mTj$2OYYMMhj-%NN#a zC;eBUV^0W#%CTaj(p>?WmU_Q+mjYBk251dzwm(XEuZ74{bsE1~R_7 zKWC ziH^FSd{1eDS)pwTx!^Fu1`XN7^r?vj?->u!xh(U>~*e`rH0G$y2sDq;xJ}j zgy-gqccsd1Aa)nn4XHA0%&y9o>2UM_BHqZG7)@0Z-knK4S7^p2U1Sk(H{&$Y2{;`U zK>?SDiC6*G`l*vpz=cSf3$?^vfP(2VAr9<864sTpTdG}~d+W>!y(qOlkSnCmgZvVa^pPjUu9zbhxw9+TK|3zJ2qMW z1{HtLb~vRGmZO!jIKu`L2cb@!sE{&Jt&QQ*77_{1Tf1iM`P%xFr0-d29_IY_s{}}d z(uCU%^KbC!B61BRYAn?n3S6vQwK@EJ}d zm*h0T4CY!>3@fF5lc7(FwZ&PI~m$1SP`+x_vZ0b zA?&rFYi#cY;m=Ev?~Q&xk?(yU5+vn&(>MEkZ%Wc6El;_7Tth|Wd!OLvdn=j=<$Tjk zfuy+Pyl)zZAB+~j`zt>nYn}H^T^!E)w$J+}06wAfzTbrXv~6SCx5|2+J<=Evtm4t|J`R9f=Q0XjG_iVnD}ioS)(sD*otWfUyA@$~H%!AB|5 z(-%rroWT3Z!ivC*y8wp}n|=M11j_bi+n&_xrhALJu$sIlsMN=<5I&j`bo>{VPc#dJxH)bG@m(pt)Kg^)-NHO*J&< z_j}_P776@j2)oH*R0cWMa#X>b>qQ*2Vrbq)Hokop!;Z;mq{tlCrtM6Ky^&}e6Nmh~SGq!3_Toq>IOht}s3RGr8^et&Z-Re4 zn>Y7ddF4vvoUvlVXOM6jQ94`U!F++N(uY0?9Rp0sMhT@4VPo7nJ3c%VOy?9)2d$7v zGaMcHdcvDx)-jP5vUGy0WX^|ZekNV$0T$ET*GF&~TCxyH_UPPK9q_?qp+vY7s-m(X zTR*iKlZA}w`O(|npeP!Osrod{M0L{JLmD>aMgUsbe8L!mk_c1^;RDn~`V_(|JjF&S zguW#3uR@(6IIjgZA%QG_qfWb>VU;x~thEG&H_IDbT8w8w6RMUlQH;MBI*w(0Z0ro< zI|*;Hn4e<&r_%gPy3iTl{V|Y?K^pW5oJKmv*8v}7{6x6NGJfl)E?`-LN#qO6jw?A} z^FRhj(n~V&_X1-?#qhVqC{*UwM{K2xidCb%5*vt1(pD;S>s}$K+LO6e%9quYp*Dye zn;2@r%&pZ(o}ooYaRd&JCNoPdJAAn+EEbaonYKERFDz6(Q{9%D6&)csJ55I{Yst&3 zCxOFS7!2>u7lw+S?!u0<&=b*;9v^WEX!SJ8W2IjF;%6YVN^)8ravL)U{Ao@Q$e?+e z;UT8fL+>Oqi?RH%(cAzaf;pOjntRY5Oz5^ls=65%p9QpnT003?7D`D8leZCyOaLQQ zqY@^_OSuRWi;1WND(Qeyo2NZDPdtZ-Gw>XVD*{zVvS_wrY$s_HRv9%LQ)kp9y*e_x zCJM8kofA19iBl!zhWnz^CkU-;i8`55(OBoah*`nff@60e=zMl6%<;f<%4ZnoUmIr7 zc4i7aEBw0V6NPFb>oigclw^w2Lm;hhXV}{n24`#R*=G|)V9$Ln4k0$1=#)6p_b9hL zsYExM!^I?(Xbif~EtRNDorO|~mJEZq&^3HGdFF`Wh6hHuUWW^eJ`S}P4lff!Uw&yI zVP+j4*8FvRRIj%f)oJjKVv@J?Shzt1z~!i(^Yp-|oWQ6YKB{+FjA{?OBXLw);RZIU z`vP*F$9ZFm%aC;^?qvx6gvFqvG9h$V)97cKi)*D3v4`<3N6ec?jg4Xr^xSmNPeQ?v z`b24{JW?K-KGZx4${~+chbJqg=`GDA@MEX~yL+a$NDssd{ew?FMzj-WTpCmn73dBw zklln>VnU*kU`D&nViJv73eC{lt^m+@i}-?jI)dzJ@DY>zc_uV9&q`x1OuL9pNOe9N zyWE4MLy1P;!*BT0OEg;1(xQnd_NXZWLGc^0TYpgjCRO^Rqkga0W5bI82ol>m+po`jyzRUI_As>`ef?naSe$e{2|;C#;H1c%F}wL_vQ1D4dAXTFD+iq|(kO(8d^HWy0IzWO|g|k!nH3=g*=!n{=V8F4M%ERX7bTK2MS`Ix$B_ zM$prrhzmkrRANr+r!Mvra}24O;VS7pA>EUpHYKi99Ac?4u0nAL6a%r|_#|^r1;>9y zUAXNDju-Q#b0zF?R2I+y-h7hRDS?L=xx6!{sp?YSy%ai4pOqC{!lYCH_rXid7X2ZCd9Q63 zDsYP!&4r{bB)0Qu*SmFvU2_#>6m?;8&F|5=XtM3x*x6eDS{M$`_QA zWFU6M>5vULLz20F_2Vn)7K+b`ezi~pJm!Ui#6H{59fjeB?@AWt;#?ZIkPl+b_#MD~ z&J{S4v3|4_GpS4izQ`4vpsj>sdoKu~l_Jvsg`3DU_;371nFjRDKGT4Le3WTGQ5>!y zqAGBljRe>OUV$D#dp#-|*+ap|9`aOrP75#dfF7gFgAmDT@wMbC9W++oiy#1eAub-X zWg$=(hqDmuvk(Y?Pv|U!$C2HBjRMK5(t%gBECg(GiG$E%=c1!;X0s5GS3rxsBBv~b z<2<#qdjNJm!P&}zGUk5!JindUdS?#<)-7wy_iw3= z>)FLK73_a@m~UD!WR|iZSA}2KoP)Fw8P{K`p`6DRSqqbgH-+KR8vORr`Uvp5J8=lD zqV-|g^=8h-@EiX0 z!th6HIwq>jhbGL0_hbY1;2Yeq5=b9$zsQTY7yUx%(jcNLAL1lHXL5YFRI5zk34|oQ z{J5zgM%zvp`98`fk$KgiV(eF7$9jzYyX;K>u3(J$h3b4m?~KCuqXG5f{bEnl^Gl`( zhlqCuQI@k7|C7yv!z)y8-sG&s|4r!F!Vjxz&Etpx+9dN+pS5T-O`9W_x=K3pa5&~R z-79mU48|`>fCRMa#~{jssIiLXFKy*#mi0TBR_p zh~&q?*Adkc5;3nKIqDSF*XyMQm6V`wPIb^N4K?r_s&On8Q>jd0NeMXDwOWH3OY--ES`ZBOtq}RbXG3#?|5)Q%`#8OROH)0H!@aGHka3V}v z8+Jp!=uzn~mqW*%*a)S=V53rfoO{!!!z?5~aSKacV?4Jr;cXVOLZ!c4PjfWsLJx$R zroTKFr=g|4kOdN*{-OgvnEsLo``GlC)=#~Nk!|N$fuTHUxVB=JLNJ#aqg)0yRUw;a zP#5V7*}SXu`L5mJ6Y>(zOGHyu-XKqUb*>o!+12Qps8tV?hfBlVl#3!7L1@7_)FY(^ z9JPmXOFoIh4S$k6N)ScfLb3Jg@h+rr-y-H>!Gy~s$dxc^3Xl_ZhlCL}#=SMYFfuM-yjzT5(;Q}-^ zV<;&!euY1Z71TwWvZ1%+OPFfqy$L%uS$PLNb!P<5Y4m)TuxJ>mREv$eZ%qmsPjNq^ z-GO{(uCknWL&s*iR?@Db8U$Xasm3PD`GxtyP*KkmcASNJj`0pU6tv>$=2m6EBF;K| zZBBE{U{FPzb(pZOe>D-0V2X&d4zbyMB|~atkpw2=qxU5AXQJA&z{eX{$|Z(?kcDbc zO#Vs&vdR2HOpY|33zJ(+MCE;R4{(6zvgUn1oD*$G*r~kl#8GcL9_*fA-uIs9yl+pd zpr0cCxI^zQEp1y~iahAB&F>QICrp&@0)%tUu1<#SNmeAQva5MOQ_!0h^^EPkAY2Y9 zva8WGA+oD~iR4Gw)%49iyZUJuHzSj91%Bg-DJr{qxu0Dv=_FLbjqYH%cZrqTXawBr z<(`jY$(A!sT^!Dtw$GU+06w8}rhku2^f-zcFJ~IBXgSl^<`Q3EdWDNw88e$Rjl2RH zU` z-%!-}OKJ;qLuFW>9qzdK(OH&ZErBd{N=*T*s9GC>s&i%AwzU|9RVMb8sWP!!yg9OH zTNGM9GwZXnTg}uWWBc3|eG)&y0S>$>^i1V#Zw_-~D>l!Pw|!0cbVyfN^W^KTk!4~p>&Q0MN#A;jih;TM}sKZ5v=l?N7sf9-@WP zaNmdD@TZrCdqxZK5S5y%@tjx+UWL8-mKqqG=~Hw2HdMzClxmGSW^7$^g>&5mRspVy zT3Az9=!oqq4|uwbpJw9g!)(}@4NR4cyAeCqlW{-5-UI-endHLHvteYOuyRs=7CRX7S|5;QpQFXVQi4&NfZr`%j#P zmMuf_D>{i!2YfKPo(OkBRa6bD)=!-iN2v1rI3!g#R*Hw%le!Hlh?F_aQ$78x6?Ss^XL6Fua+*TNkXCxEalmJkY>}>2fizExw2l7&PV$-FF`T`FzE!CgX zRCP9VkAzOsC#@wF6-wa9XTVF$tX7E*622vAto;L<*r zVw_sB;06_3N*wj3qd?CEgG--|4la>;_cCCqzRHxS8-!}V-&t|qn)BAIS-WQK3c4z8 zAV-&1AE=d?iZ57250j6wQr$N&R;t&F`$~n86&vw*i78Q36$fz(-hHc6t~L1;@^!;FzRsQFmynr%|PXL+I;`t~^9f^|s)M$Lk{;?IAJKmQ~C z{7U?}2f6NbD3`ow8eY+&Y1rlxBcYeXMd!-QM$?dKV4^qW6ir)xT@5xIJDZE+pryu2 zlbH)=FYG zA^47lY9-M0-A;XSaID;biZ#XYp;E=E(mTN8H0+F3Yo%W2rs^cNK`BDmpX2Wl2j9aO z>?N#J4+hSB==|#$>c0}kP%F24($Y=&t-g#MlLlBI9DAG=(5-Q3e)QJQ*Ftpm*6D(K zH~a(*?q&4~Lh^Ct_n+eieciwsHE-g+rs`bgSv0`oNvS|Vf zin%}L5ZL)iICY>4{s~eWAkq@4P~FbWlg05yxiJL<2%E%qbvwPiy?a)5b!{NB1eYfq z+Imn>que_WCaHJc1nzeQ;@vmZ+tnrLS9VUXfL^u}QPWOW5+rEZ0u9stGX6-tASk}u zS-pDyK{)H8u08IPySN8tLQE2P*#^Nm&_CS+TjEoOmTwQ92XT=Q~V2h4-8v+xW z2jD%0UEUPbNDw>Qpe|d0s=t+Pzu-`DVJ*U-9-m5Hnbl$GSdx?IKmk~rtXwe z5TM3s(;y%&Usdn|M-#KBKM90AAW z{GR8=z2`q-=2LLD$F|%U(-PVWfAcyxE(Z3!uiL8&3g^;P*%108m+jr{>=vlstt1S5 zMG>=m7kmLBvwP2Oe=QqI^lm;ozp;33cz6A|j7;3)%b-g10~eO*li&`~6Y*X%Q>Ng4 z=QKDO=7@=@>E@z|sUCprbo3E265G#&@d>J04sSE_N;Mb3i9y5Fp=mPxm>=zQ=u90b z)I1W$!ToA?QZoqM@##bEz2HVqeVh&4yT$z(PIIj>l}yWNzYzWQXdBKdJqn8o()Y^< z6(Ux0da}~w6oU`OQH+I~PFX-}v12`QcN7iL!in}*u*wm$TqI_hT2%BIng>1)k}KKx zX=Yk(OaQC}5PZPSO7goRFWg#?+%`}gf;^5CR(ZWrF@K2_UnW z-s~3iZ^{d6vqaFBA_aZjLh{x%QD29(!|v6)rH3F%@L!wf`+X7)ivBMkiRz;NXkB*I zxd`|hb9&Ao`#)z)PzkdCVdyNY>_0En3W39KP6+?MBuES4e|*@D#fboKZi^oH9(Jtj zfltw}ECi*}1Ai`NmRb)y$$qqyl2^V$%Ot34pSg)a;i2zsL($vqbtUGvD)H zlKVHMD@k+iYO+5`+H3A2?ctQlMjzs3dwp6B%KFpYfUIApKghYJ{B#dK1O_vITz z;KYxx_`E`LJ>1L$`ql){SWLqQ&8+m>Y|aZi7DUqyzs*kHoYsY2T63N~qlxr-l1x_? zJbTw#t6!LKqA3`MbeP^f?;;eSJWUhC6wPz^kUG^(qC<2^B^ zM$L7>*UYIpgD&{0F@ zFzCzXP^w!>jSzZHCsg|t-4;i+Oqsg=Xo zSEor|^|^_(L&|5Edf1f!M2iW}ZuPJ;FFei?^|05M&|VgEO0D4CE>{OK^?COIrdPu! zZHP$D8oeU>t9{}Ps)9R^CUsS?#2YWy053JC-3%JwHe=#RSQq>ebe2^E^rX@NKIrCz z;C~?jSqT1}NcwLZ(@cV-{}FVSRnqsSlJp98b3)WVLQoc>ewn^~ilZKHYm0#Y zHFm5E_^;7`EF_>3@P8-flv=NkYf$80fHbI!eA>h*Rveu1FEXdr3^M;b zV{%E5`Ok#Tvda8EGnrqX8)-eg1m+lTKQ^{S)NjL%by0sV4Z}j_DdA8MGf6G#9TN3& zKXcUHUY})1#J9ekiT05M&{<4#c8m6*ys$S*M0=IV+{oSC21a+}^Fr`bQoC@%cwy2NyW5>Gscqxs=Lar+Hal4pKYV~mmst+uMk)^ByX_ibqF{SgD2>`bM zj<0mw@B5W!=FDqK}Qy>TtbRtS{1;)T}Z^#=i6|R@2RA zXBwB@SA9C;z`SfBjPzt3nBEr*?7B>|^g7dW!J1n#^@uhE20{EHLDS8RnL6|%D$T1h z^@9T=!klhioli#q{Tnj(6m27v+zG*5TioA+Fn;;;7I)s5_&ZfIpM8mOcm?%j%|<xvKu!5oV68=AwFavNlwj z7F`^!z-eEBlW@@13Y;@tcyk4CpZhfU@C$F^6~FK%HMz(jb@y@LJ}Be)JMm}U5;850 z5PuekKa0elCE`z)__GZDK#`xL@y|T>82IBZhmTvqeBUoszMv-#3raBjA(LBly~56GD*&x)HzSSAX+a z;f|a4ce)5-O2bKRGE}NNP`C4PKxal9uelg%-qoOT;4~O|?k4E4xiM@qSRF-Yon}4i zZfQ&xrB(fMA2s?z0iVvtvGZ{RJ>Q^MWQ8FN|Vdkj`Ma$`Ke_W>g*>(PwY`K39fSY3e*NPif@VOZ-5I?E181(EZ)+zInM0V@pu?o z06@{_$=Gog`V^Gr>6qkG%p$0=H>Zi|MVAfF5NygRXr~C0a*sYma5W6r%yJ6R?MmA& z6x|})a-mxb22^L3aeW;iBaH2Q<5b2J&BYs^UmOD!%Y~JHmC37{a-s|gesyM9;;1(* zgJB2HEL$heEEC3uusy(|Aq^09rdXr_=y3*#$1EKQ;0T$s4`7q?Xmt7$$$0YJa48Ao9UOD>Nw~D@ z5oFMV=4g*}40;O_FBCvGN?#+n5IqlKF)}VIBLXxYf2AORcoQmDvZ1Xb0@TIfh=6@W zfB^V}jtIO0S?Zm+v!s6c_ReNb>2Nf&<6%-~h$QnPk^* zknsQ>4)`#FkeK&<_zi_gE1y=9{dqh35=b_EAlz~D-LpF!fZ*#$AmDOOCF2{dLI4)U z6r-H~QAqm0oN@jOaz`zLMqPTh|EUc8$U@!1Xqp9n|3|`X(~2Ln`28OazpgnK2_Vwr z&ug(VxyYNCf&cw5NLpjS-pe0>0rz`2gjg^CQjKE06-&WwhqwPX=Aba~_Wu&PH(RqN zc>8}&orS=#kW5_jvr5kwb3EDHoe0iUrQnlz3oeY4sUtUzPQH^kw7W#aULQFe|m9`W0;VShL><&QhR#H-dH^V+qlHo$=$mue>sTq3k0L|I)(MpcjUlnaHSzk;)f6xX7W$g;k;isV|ITXPH0?} z?DbzPyYodZ(TIPQQ9(6dpeWz}e&`rrK(9W+Dexr^HYz^nwCBcpitpg?Y@U-2S{w{% zA7W5?X~K9dob0#z-mlvUN+w-oaA&(O$7yKJY?9c~&TJih^8>ZC60s-rxAW+2cRT5E z9@1SV!JbiL7>0s9$iZQ+U6Q_*U8rEs4(h^fZ?NZ+h(KRIa=tMkA~|{`!aji=XAxl; zgFSzj)5LV{aNh`>@)I==soit#TOfIZZg0S;#-+w|M6f4;KfVNgo0*Fe<|;_}McXb^ zum{nW3*A~UpbGYI{T?8rtihgN!xVEQc@^wQ95oy%91ixpMh1K62yS(FHmK)u?|Arf zgMvP^d~y0gVPoPj-7oz3g%#Vk-n63IS-WOUx3gk!a%#mY6(!O)?a0IGR3o#csej*9 zB9!c`8=cUg!mwXFk$YGw8Gl*BQhX&MXj)sY#4=q$NSzd6DU?nkEOj~nM}(#5n|)Y{ z{Kv}m%jJ1gSn4<=P(Lh1&OC3$=mn(c7C#^*Z%NpkLSx`6%6-sZ1X+iosEfm)DEm+p z0q_YOiduR2WM;2;?(0@Y?5jnl*mb{zZg4I{AH(uby6pUdUZAkkRs z+Zpx!JsVhNi%rFG#;{{OboB^(6M!HX$GBpH7rMf&F)9((4_na@X5&*%b%cT%a(_*i z+#dtmY65YsJUV2+`XQS_TYx2lULj!3Owj8$`A%4QjDLk4lZQdk2`*+*2ffY|^4BR; z%Jl|P#C7Ogkb$pyZ;Ke0Cx{v6co!MUkG)xE+{`Ff5w4}sF-$l*!i9}WT=2K1k8mwO z*!UWX-Xt!u8J?B!E{mvuicXzDGc@T!_rDu%ws6nEX=u?YlG@SHDGB;uKyU$)Q2<taqy{#EhFUr-lqjz_)(5$GF5T*{e<4G93HU2emU zvuKx$@yIviG%;Ns8gfTOJTgHdPTLZlibuZIwhKkKh_+nl)`9_5Jd&GU0W!)OkNm5g zC_|FGibp1nI&$;bZ&^IDaj>d3zN?5NL?_2oOmb~>Q1Y59Hb(>{$v`_V`ib@Hw_Y3Z z2zj9OIA*=Di@I4W^SjU6Ljg}3(V5;#NA1~^vL`M24iW)D{ zidVEqE4I1B8|dnD(L*@1kyhjtSgYTVQ>0b$Dkb*FNGn%J`VEnr{!Xm{T!?v3z;F4* zSx*jkJZm@oX^BxC3A0|#Qn6M!1*p?ARvn&%9Q!m?@mEbZQ*QdxCN>=vWQ{`79N6=v zPm8n+8q=va{q20_{CV>j21LAyY6y2bH%}JF8|B7SH*9+tE_FMV@>sbsFi|THmHM$} z4P0+jC)kBXd8{;09v>K~LIKZ3>O>TqmAPJ5&7ELYgw@=6KDFy4?u^-duk7=eM5hWoE7R_ZW=(({K#i{tyeQQbUQ z^+z~SEZ5}2jj0Lmj-g2y%hQqaWsNQ{MLQ-=2v5kU7zqMC=Ek z``jY-yQs5J#C{=Z3J*--jikI;IDW-7#y+>S7ZL|M0Es1@vWx{r_zr@Hy39awcY8td znht(kzD@l~LAg&$B1*~E*k(tM<6T2=9l5y!^{>~RlAVM>Dp z56^Pn@YAzEJkHOadK2aid#raX%0Jijlt|1i_vAL zIWg!q(_DlX!GlMb=8oZadp8QA3pO$c4q8Cafa;!SM|BexqcWg6IjSJlrPHS`vKU)- zniE5AFU_4C?WFRkDNJ_9g&y$k6_gjz&WP{z7N9gBzPs&+?_Cz7G9W%VDm&u)n8nz# z6Q3Azdx`Hv+q$g}Ybm4_b`M zfbQg|f^@f#qW&Cu@*0ELrz}R7o$|z>+e>*zvxEl^5@Cv4;@#)nB1lbLX7GB%0$v6* z_OKm|ea~W41~eu|6{N9rPLuz#7+ZD<6GLt|VM8jp6u!mPa>Xx>|tuc+G;W#3e>mms`Nd zKwMp7M^&3GMrA-%a#VIywaa2`*{Mnlxy@AN=k|GI6G2sYkJl`ziY_s#YFNO?fT||! zsOk=jQ5jH`9F-ka-DNSh>{KO&++M0$9!wMUs3%NZN3&bK`vjE*+8DXL*8+G3BnjGmwyRVPMEgcX@L7h`As#tty|&gE6h{VMRln{aH7p5`>L zfwG3-3}a`!bWm*ObRf4KYNeFxPJN;@R30f0K^lAw65IDp^*Yy$50xA-!r^XJkai4` z#^EkJpLh_?ES?;MMEXYP%z(DPjd8?JEI1<70Sgx)y!9$IkFhra0)k+E>h|hb$r*?A z+&Y}!>};q_O*E^^6GyAEKO?erOzE;RrYS! zcGK1!*RAUIpYOeJjry??3R16BKMA${{0-M{zj6nE#mXUKpp~*ye}{^&DW2F<6$B=* zelpNk&RefJA#suoiM4H1O{Pu?L!iWyX-*MXzg7ah0eh*2;rx(w&fdL3-tFDn4c{sB zD!z))DsH{nyVozqRS>xBHhBX#h|Wr2K6m}OTn~1s(Q#?KNDP{H-JQ_2MGcZ?!e9hK zam=7TD6#j5?!ajlMiV;92Qi<|LIOOW&SjmQj+$zHFocL>_U_f`fe&8f?ncaDYbRzf zzn6n82_GS|GG#R%+Sjj?@A4Sw9<(p+;L3NUSCs>~unzLQQtEYfjF#XRUKs~PTLqy% z30jycWq_qOIW!79P#vo7-3!-%K?iHaA+Sz>C7tz^dbQgbo&+1P4Au)2ypm60XIMz% z>Kz+`jC(a7(WAG$QGY1?m^jEs6Yv}&rNweSoQ95sIr2^?5<1Pq%{W?*o1sovEx^x4 zlUb@^gimO(#1x;@9i5oe%Cxk>tfHiO=fpS1$MDU}6hyo)UtFk?Rrg}Y0g-_e7h4c< zPwc|*<9uQ0FBwBR|6VfnoC2tJBxy3$sBj|47hwj1jSeS>9h7T9SUKY1an3bZe-qY} z@Slr|#Uk#l9@^iH7X3Juz zy52<#Ph1$#Kr|^-=2LA3cJh&mmDd<`{zbmXQnedD0UdkNAaptzHmW6j!0bw0-S0>M zBNq;Ih0X7wgg048J5{;yD>OfoF7!%erj;ANhSSjM_>mhWx^klgd_?6&kjSiog|vm5>1u=f<^u zsy~yo7pl$%*q_hB6q zTG5jNzHzi9m)UR*JROh#D{~0bp!$RoOO*tzm#*f?xALWBrR}~>u#@id-~r&+m|feY zSz`Yr;Y}vWNFrA0v&U$DCS7FFXFtPfq|;|Q;DbUW5$>@I3)HGv9tmz z4=x*ygloLh<`;C=eYnc@`GvEXQc>8LO^^a z1;X$PM$Ejw1M+GY?c#zp*8sM{O%V6Mdt|f#zg8R7mAzdzmc;U=QJcc0%`m1^jFn+= z1xi55e;QYL#F?s2I>S}WW09#rQ%)H?wbwLowLb<)9mPgf^a7~_^gKSd9UA@Ic|rlhaVmw=U`*#I5KE~~JyGm2(+!ka84 zky11_(fmxh$f9VThto)>Xmr2_6-^@CV--#7rwVCVlS|LUj)S^q+1|Y#V+RHE60d=G ze_Ot|R}Q|2aYtyOPoXY3GHaZO)KX5 zq)oW#f|;Fca7ms-$(feq&jhJqR@*!4lDzo~S~!bi7G!*q+@b58YcV%jxk4fNNVr8| zwXC^C9f)T_^igb?DGhf~O*8bF4whgmOpOvSSy!d;`Xt6SDP0Oy*RbC15*_0S4)tzW zTZ@%BuD9`$c!TJ-QmRAVb@4#8RvfI9x+oUufbmS zO~R=T5ZZ)HE$T7BmCFh;v(N-j$LnKW89h`{kgXbDWJt&3i2A8 z<9Nc`EM%-&bML1)nskw6%{_tBNVn$JfgfCRC&E5<&E5K`e|lnb9iyluXk-$i+l(nH zvk-kZCGQInC2~BZ4BZY+NG3wd%Y!qir#CS4 zy(?dVpoHGr2z@cpENtwY(EDV<+e{>uq%S4(K0$Ld=^~5J`xH(iozT;P9~63tu#Xjb zt)IGUy)(<$gb{ku1Tx8~w-^&aRynov3mAXVkMdH1nDt|@F$T;%Fv#Er5;cAl91d@z zgTJCNxAwvlc!HR7H5?!Y32v}| z+8M$y2_E1j8i!dU9xvA0cWoIw4z;PitKfvL(!pwNf4y((RAaO{-aF!5>ARs+tHWlU zdf)lIYuENw%7c9qbPN5gmm8&?3E1CL+*hji$#dxXKpx{JZ`cy*eVyu^m|8bn9g@j= z0FpFk*7fQe*wGas9R}*KE1E@4QuzIyX{=Og`L5R4KzgfYSJI9n4%9KG>=t z{wu}t{m?RAxHdOn!bAh0p{4`2t|0t)baakA2YKp4W>-})Jr;>79X4Lyb;2Of(SI`WR;z#Sxcywy>` zT^yLoI{T@3oeIXt(h+0ho_xuC5llF^)oP8%j9x`_?_R<|qR^gt(^c~V8=U&^3v3E? zHy{K=PGKRG1%gf|6rf=jE?(vS%4g*ZN)>9{C?H2{cCG;#^WkAHaiY`KE(vU^>l2t> zPvf-^k}8eq8h!I=fQ}@#j79P&PCg0AqF4WUA=1QQD~w;p5};@?V})c_%$Qz$ zapp%-*8EFDB5H1r0=%JUTCGa+8A=(5K!Bf&bR=HEwf|9}(pgkV|n*+v|Oi`>nuF2LIuj zlvcd{YF8~_$yD3{OSFBX&Xv%MaLLsZ!Uw@4sMzu=*vJIOWBDRjt-pRi^d7VR!p1mp zl|G1YoCjGS#9UfOw6nSYE@2cF#I5{nzoogGbdhCkHt!YyX1cYRj+EfqEDfgh9%iLj5A46UD9pPkAXWhT8blX&Pg##(0au!}-_ z>ijibI8fN4EwUkWt{amKp;iX{+w;Eq zB8yyj15P8IT+o3ZlnaTlkCh9ppL%9y0%wGo^ukPH;RVJ>%PbadR$?J0fr?;x$RtSq+8BwM1*37vy zN0TnH2&FYRjdVgu2Yyf}CBi;dD7Aj-RkMhtxN|pg?90H}uAg0SwAf=MBt{@C63<54 z@+GmQ7zQ8@Z^YQSFPt!TmXk(sFvgGQ*xxRaNyr~>%oLf0{NqxDmTE&FQS~L{ETYMc zz59BdHN9&tbPiT0Q8Qq={Do&@;W4F&dWGO0n2=NP(5mhd>tWCb@|FZ|dEi)8rV#>d zj5H4BOUz0q)QL1=3{`CGoK9#ayv;!aelssdFd4y9c9XJXMdP!wIbPXK%x@G)3IkHsLSUEuyxrw)FKE|O`! z#4C>n4#~oeq)>7nAB3Zs`Zn%(7RbYLy~{r?OYA8Hn|39%t#k@de+hQ9(%_uxpbPo- zs}d~LwC5W4M?V})Ytr}pXD8g1kjF5MEx6%?mX&PeiFP>3#;*Lmlo`4Wy2oe`sEqEpxr7sp8i z$hiZVfM@kYO9f`~M7%2>yRu+R{aHoy&J$rf7(1mFlI6-E2%VlDXT5`8VZRb=xx!sx z;y%Zhr*Z>7gsRX{KoKqQNlz3Z-c=kPrkzeu@Vq<@8^_QmjSgn0VGeSBuvXnK>H>%a zJa}|uvO*ii@M)Cb5%1EUg>JCu03GQBCHW>N@E|{ks0~gz*G`U=;poNQE^=nDx%J<& zqJk%@z~-+N>zwm%r8jP>75Br&TG(;B4-}8oAPIUPaBwfPkppdvYF?c$=_|c(h^QvU zP{zjWdSL+)g12H2ZxWZ-4BwvcE)$U+GL_#-Gc@TUi&l6iP9vRG&_N&63W<=9)e5bj z`ur1tExA@moOIBG@wB~(JRR_8oDsMg3SfI8019TK5a2`k>wIZgc{w8H7@?q^k|dHC zvqkimj}m&hF|)-eA&b?@Zrn;hF@+D>p4)Mw-vyo#W|g~sh2O=Wh@(F?zy&S-;%{&( zxX>KX$F<97sV?q6Ad7VQtd-n3>}+o(v@8(ibBA4nxd8pilVx~ zoT^w0gW<}2VW=qUEbKT7Wi2Gi^5+qI=!Vdb;$}9rOLLl91_Pn#O(LC*@N`?cQ>1&L zZ5N7k5p%hau7yJFh>BN6SmB7mitSr(f-{@eu36LV ztbnROD^}41bfc&iG(Zm*=+iF*A*637Uo3zxK-2)(xBoy2IGVk~)G>NTr!hJZfzkZ}quZe{ z3?j@w6>Y@XaqW&)d<3`ne1wNQ7%@^u->k#^u1>>!C<5*;)H#W=1}Tr3xTF=>gW{{3 z(he2F^v3f{lti1^q3D=-OQ$ijF9I{K4P!=C=`=@;kWwTQQJ4X4GNNl1j!(zo{hh|) z{sp0R-H1v-{1Qwp8Q?H@(LT=;yt)SXd8aw38NorXOX480`PEE+M=?*nnn73t zA`7}-+6LlRG|5Af0HCls;$t!|O%hJ76`?d)4(juHUw? z8}?*Ol%bwDO(#2QJ<{Ng+F9K=u~-Hr>XM2 zVXCCE`>})>Zz0WEYK=0`1O-R6#IAeDH52s&v&d4|XSy4^g=Hpu-M&f>nR{{ZyolJu zVYG&zhej3!ts`4zFIshpvAWX|;}a1Qql>Spz!^G0In;TmG7+I8evQ^;*KOT#&2?L1 zbs2_;YUTYU88H$Z(>c|)^Dt}(*j@sNPP8^jp z#_PAK%L$5;#wAUkj;qDPKpN?dN|4m4c}J(I`CAdx{L}z73)4=zDLnm1%NS8xjfm8K zE!bi0C^Vs#znamLvGXvvVv|heqEx5w!A?{7KSxk_z%-DHmjH#+Y7lpO;$nPm(YU8J zbOYe91$Y?EkzS9v?hl#hv_$zyghW{z(3wNEsfk9_v(SVo=&4SbQc0dZQ@Ju&te2G2 zAF3E6d;K?TyJ_o=>x8K%%ANQDgX_0nnf}>$?+Fg5o2v5pI}qqa{q$+#tvn3E3oSsX z>(&=_niGBz!3o=aPS^_7y-amL^5AeP$MZN+O5eL27+F>GX{%>%?MxUQGg3z zJr23-jwP=g267E{sud!HPc|Uy+|=weH$85(1#-2&fAQj4XmhfAEnd58(Y$$^=EwG4 zaDML(C0tW=XdDypXl?S>GQkrDFFB{^!s1&_oMjnVd&^i_j~Xaruu#O zvw8VS_dRfNi~BBo$Gh?42YBZX@#B5e@~3$5z4-AXd~nI=+Yh-v#^%TH;{j;6)BOlG ze-uCd4K5yX?}x94+<(XW=er-EA8*6fx8uh<==VF}^G^4J_+i&$dB98Xwj;!!1>(;l@n?zn(YIW=_~j&m=b|<*heCu|j*R#B+0%CV%)JTGT@W1o5Q0s~7nCY~{gF&{8omM@8_I)) zSkk33z3GVN0?f>rb}xr>I-3jN?1a+vrt_4zxQK9jFAUXP1vn5B`6eJmEAG+!iv5A! zUFZ$4JfGZuH0dy8^@4qk$Rl>U)G?xT$hE&0q2S`7r!Jl$YO;gBxeRw4 zrtg$ebro2k0px2tvwH+!<>B+3M$~P<%tiNP!4apxpDpgG;>T0yhyNJx{2Pyi*Bt<~ zX?Rjxb8AdP!M%gGG|!-{t9_-$?g283cMnWd8<+!Dtn40WR2#(#=NSL~dE)+g>i&81 ze#R5O^?Bld@LN`%K&2!=`M=?gn;+}DzFw-;`)bv}QmwJC_JUHqyua^CSP|oq9reB| zkteDX_@l1^HPH@~>Wu*?j5YvIK@GG%h~UF{ru$$aK+Vw7H(VX6*M_{7se!RlW3)P4 z?3yB*-7b2Y>ILWuU@2G$Q1#a8P(q9hCD8Zo<$&c#biNj5jdB^~GYCs& zcW@Jhs|qaUtd_|6rjG_Sao=^Qt}f3lcut2x_KD_4vWbp-4{RQ z=}~t}W4b6!p_j+w@{@hnmSHB&>!y|@vijU0O*FS!g}BN zy=&L@Rmy{X6Lbsxtd|?5o(b5v0>$loRC%aGB+DsG^-fH!Lqr4QVC4v9{W8vxP>P!Q zIWZV5xHs^Y<~i|LLJpN#mYVF^9q8cfRAc7MobnmQ(9Uh1l1t6d1$Pt%>z3go+Q@gu zuzegpq%hruzsWv7E&RIXoF@%j7P&XW95rrlo*GL59BB#nF+}x+A=kZ;A!?P~ffwc$e4g-j~=)Hl28YfnuXMDBSzuO~uG1 zsie`j!VQ8(*F*Pa=2?i~@ANzCr_MrPSV-DA77l@CQ7cM3!XUAyy^y#me@K{^W(utC zlfgmZt^4orfg2%BIFW|lb~4P!Tj>|v)6wnmH28>Nk29gEc~%-pJng>a2wLZyja{xq zw48(AZpCl-^X1cS0egE&tXL?lnwF$^Jx-9E7#hb3+B_BeBf}BJHHe*ap;Jxl_%>r9 zwA8xfYDo3R+O)n!2*ql_AQW}(;JWamij2Fub1vKm8W**(su?Z{FlFkA(eF#xbTXTh zR8NcmcM5haM3n&CZR|||xXWSzm%bKa*VZDME)B3+d{!o2)f?D^U(be-dBUo0-86O_ zm^#u&>WYY$N%XJBJs+YtGHnhKW#gTLqt%u55a~d1V{lYK1$)0hV)(F)w6g5}d_kkC z2mdK_43Hqi9N`prHB@X=48;**aMCwHjnjavG|$lg*@U-QxD-@X`3Gr^CSB;|0h>om zOieeJ)=DF=v!_xXDmSJNH5bEA;cGzAMz=Shf^-R%IG@95Xte=J%Dn{`YKxR$FNE)c z?{we?>jx*oUg$jM(cA8J3@}Dd^$|9_;+{acQ1v{Kb{US6MitU032QgcuJD(*?=r@b z>_XKzL@p1zvy)bkvI|x4^|jQ6n_kHIrCs&CwyF#)gWYeDFnsmIxygh$<*1c-`(Nxh zi+CHy<5v3HBM9+xUPSZ0hD$8h^wJ;d2$`^); zuFt`av(WWPKyBTEBq2e>BVmvHUt#93R97$VHv!G*)k~8`l~TW~ zBO;W_y*r>PurW>?wSde*;&Kj~9SPl;NVhDok>j#}&H|(lKA{ZoSuBMm@6eqE5b{T6 z1fxuv{bC|Q6A}nXLKFnKNJ5K=sOrUhl@t(6=m8B@FJ3IG7kdInFrt5z3DN1Ch(p3o z)h|pKUTg67@Rx4ttt}0f=lt?62%W`9T{4#z8)@0Rk)+*I~5N4>?!E0Th zE_|=A0M-nTMW9F+>u(1PLEPlAtSUe#Di+`FCi@{P9D@2_O$Tn5QCkBQgyoVJi&RfGOP#EEzORl*y zY#rkdb{gYPvQkwl%Z$4*g`UxTow2svXKQqi^8~) zxz!HJF{pW)r(>+62Q)Od4wMe>=v6Ii`lyq|} z@;UPDZgFY_S1Eq$JlV>O;>C9WM2KzY<2Mv4t-`uVQB0Lkvmo4Y^BuD{p@tH0I+8$h zDVpx|I;(`4-ZbGr65=ASI4VIV3ODbY6A3b6P8JC<6!#QR7kL8ZVN6RKDVJ*gdZ^&e zR2EEkm|0qJVU{eILilyfIfwtqte2yF=Hfz7yUxVlC1FUk2E2V%O9bHEbvT6Btd`|L zYW3#Tp467-n8U*)wPiDOZ|1UBIT+IIqEcI~q0U07EnSMUJy?bEe4_55(4F4E2&LR! zz?AX_OmI1n6s1#8j>&XsNw}f6t$-P|Khvcj(L$LnhwvNz^fFzR`l28zvqj@N;d?q8 zpZ5(R@F=9uYlUHfD)PTbhV7LAV z{Upr<2RRQ_CWpm#{bFOX4$g+gke}Kh+;#1K8Ke5wFrZ|%4pn~4S=h0jAJb%S0`TXN zA7c_aeg_*s=BcU>+kMzEE!NefK?tVLj5%|?cT9)Kg@Fh#L{iW-sYuJ0bR@-6J;4zD zK)$nALE4W%$7T{g6q-N)hP@j};!JjNg`Wj-FLhy%bihKfDTA~R=LScI<5bo_`}y@AFHGi|6Ja#QKyNa_c6{^0HYDqNU3vvrVy-G#|` zA>cIUaAh(!A(U)E;VSIGZCpX&njsw9dqK#c6k!jPRU+(hEfPG1J?NW#*n|9%6!svu z71x7NVUJ^w&M53b^c4zoP`lf&%%!#=D*0DMA+HLgbn z+J+*=3v1vNEv$iUF7X7ewOw4I&umx&c?I;%gE@sY$n~X#H3CVkezS~g)Ojk{ix4`* zxX;IL`2{v^33uFl=PVCw)H@Q{==VJ?b*s>Zw@bS9USJaJ^~lY?QRsR9+=*=fk)vio zb2I&J-{l(MQTh3{)XYUR-Vx@K){b@ieZ6lDzpgp=upSxG=u*h_R_?+?)*IL=^rK;5 zw1&NXP$L5N?niJ4u|W;K3AY_vbiZg00+Tq#=b?Kuua@$#hvFEY$<2U^2x$BoHGLQ1tYXl`0UvI_^eEkmMGQGdvxf=cTa27cFP(^u5 zIEr)v-1S1Q1U&AoZ)e>1Gd8fyhKKT*zX?0medhnp-UJ}%w9ovAm+CmkJXPiK{5{T$ zR(fjEXj-P;O?v)y!s9vUmWE)jl;_s)DsmW5o97bs#4Yl&E zL**=})x*eTV@^}e;#wEO(tXDyr=vaV>xm47EdrkPk-+92Y*qrA3x^h-buV5axR--z zcS5%&j#M2??sn+Zz{MUIpAo!5n%BhFei?z>WSSw)N5apA^DQQ#eC=Fy1sE}_ul?mY zk%)wy^0g<9I?~tv4&`engF|Q=3!2;4$eG zzJ0PdQ|6-xW5^@3|IgmLz)4b72jj~=*kxGWZ-iJ3;`YL9?*oWtWx!=w7Tk4r-5q3* z#o3;onwhTc=^pyA%kWSjQNgr=G6;wYL41Iq5m5hXV#G&$#i&tH6E*oz6BGSH;v=8$ z{LeY}R^5B6ZdKQJ)Wb2tjIhTfg*{pD9ghG-Ij;r6PXhcl~Px7 z%oa$?y-?^mX0~HQrO>>ysMJUC8%3q)Tk@zBIh83YMGi-GCaH@`(KdV$m8u8AQr<5DOqV6!)86qh=Yj2X<-c0;1qGNeEr)1JHWZd>5qragf36T}t?@{jOac5$j7 z2LXdieAZ^P<)~!JuPfoIi*T~7yf#tP>W^a|$Wh*<4PNPJ_Sl>VUa4bC5W_kxNDY7q znQGlMfZkkj=7L&BzQ$Nq(;U-T9(-ME&T@k`wslm1=&l2exs^2SiqGu1K@4>=(xoAY z^GDc)&`1~UH4;4Rj;=F@cg{7(hDp$CEr2(3J4Xb)RuQnk;hkl!w7ZxJ9Nh`tL0fyp zWraar+F6ubnmtNP+-d^9A#uRA3>$dc!7!rE#{o}6vQQjw0>9x;Hx77AKqctHfs)iQ zFVG}7@Snz z1jxuDFevAgRZc|64a$IDr*tFrfJN};&k!&zxy8_Nh95gTxWQF3R&EE+GE6CF2PjD+ zOFInNi7nto3K9o6!()eFzFDD(6fB9$3Xa~EEsjLi*}DNSpoElTAnPnP3TaU(6CRtn zSLQ zdp42+gvKSB+_UYUI@5rK74k%Z4p<43nAM%eInuS!qe&m z$|reg!_zO$h%*A=>BwGhIRs_{zOZHMZ6Z94d*K4p9BBef;XH5JBpn8GujP7o?YM#` zo@5bg=_U@D$Nt<$q@;)S=I}(x&5NUn4bJkeGE>TyBHMtz83&}JDSMcPvhU&f55YlA zTOD1LLv(k41(FmDPtnA-P%KuPl?D+P7d-B5xZ40|Mp>nx%os1kkz45neT^vW27ucV zdCv4&ruXh{)BET|3Q`1I)wMFyZqkA}6nc)?=@o3DBmYvsl`Ef+Lc4Sy9S2mDRCM^2dZW(toL^(WC0+QHK+K0 z^?DSjDO5Rb_!X~6;a6;PNJh|?=b#I4X2Y*2D`27iB%|;vJHCsu3N=Q{zIvjf5ekYz zqq4+(7h;Bl_CEZUU8wbeAmG*mvoq9+ctgx|CBph5_ic#+tE*xKR^3-<NDoZF$tjl1i)t&K>arY z76_o85F+pbasHa8M+cv9Z)VX0-3y2zLuM*{Ta;TAx9ih&-?NTv==qfcwy7);)fa}-I7qHjR0#SE{K4@^kfB8LCA zlD2+3NQ^5+c>dYrc3^#Q0>go5X&VHqMu{>gNdu#98bAtiUY{-bbZTg62y$j-XUsdY z9k2)#-;02Ke1Xy!duL1~s5`CPaJ5>t3l-WTvymN8BK1jU?BReI>eW7|Mq1bh2kKF; zVgpnttyq)gLJ{)Rj`my(s@294r=x{txq;dkAClB-$+x*gr@)jAHM$!Vu6jIMB#W&z z9{|9vh6`-1!A4=@eTw`Bb&y`QbjQE7W+_Lxs`{2OZ`@gKUeru|dfGG=^*gi)_gY8`0G|A;XO`BY9sy@nG}TJTO?a1e49W3#ZD4+Hs)iav^z;QWW*U9{UXsp zWUsdz3C7RAlVl^?Z*V!T+-S1s+jW4O3vgQLu3l-!0lNC~(h6F!@0mbkT9(cIwga{@ z-j@-Lr?hc;)m^}NNAf9zGIx$icZ@haY5^9fA4OK8I6Zw!9;c_!8p$vPUsS!Ri_;&5 zT(AncU=_?A1IMDN*<+IEs64&f^RF<3J??oT7MkfKQG<{`%tz&uN975D2Xs`visDm7 z1>;8L@ro3c$2Nx~0)3Vax;kezDvz=PdVDgYsQl4Pm(wmj?Qv-N2JJ!UyAeYqyl=*D zs5sh1rlMw_q7vbqLBOqd&(i3;vo6ch5f3nAf$@*EKH6%vdmPrF|dmKj8`55uv zBUva$eDbaE4S%{Z;=^U(*Tsn?A!94m4y%wlw<=6$;h4M*rJkFK0L_PRq;j12ROL-Dbbp-qJl1OnOSvPIN*7Jmsztj_(PHm_ zLjwviTEn&KUc2Un8(91*9Vi7sd8OMOK@bn`1rRhd5v&Wd9kB4WUVwnfYan<77b>wM zSVhM7x$RO0Xo_6P7p!8n0tGlLxUT@+QY0S0QX>$w0vA=Y*eF#iw8@~yzQ!}5w+ z+~cF*>F>B|{PJw^CxTPE05G77Bs>tD!p1N;4nN}P4^AzYF{$blwMh|?a>Tn6_~%8K zszf6;0U>+BO~X_b9EKF8B6Y71Q^}<8hp8ed!HmD={CE4Ow#c+e%jF9FqTU@ax-oY! zke_geG5rEDDpVSw?$9VN!G&Il(DMj{L5#|zxa_-;X|l7QLR-EQ0jJTHC+uJ*)2my| ztf{Brm?8B_PWc)FPQxjxYIj35 z(a}ux8HHK?J)?ojy4<-5fEq+K)$YaA>OX>an5`89(aoomf)LS7Bxff4oIrJp=%zXu z^|4pl=;kr6&s1rO=w@WEx9Cn&J1n|+F{Om!`%s6QQ*4Pvp-h?=x>?+dH5)dr^26?Q zEWXcLyJk(F)e8^tBl42JoZmW5ajY~N>$;fo4KmitCCCq8 zB}O`IPeTAhleJRO?gwJz*Q_x~KQP06k!iEK+q5|r))W4C|MfC$>W%881v^9`xd1M@ zOa-D3b_G-?6O(3UyCPGjzuS~KQA3$G1t~+KlaMq)u}Mj;S=c|BhFiK#!&5XgEXy?H z_6B!In9CPFWn^)>`)V2US9BZmmIm{$mNCz4P71`QwK_B28<{?1-KNj;g7g_Y(JQoq zlQEbMpkuCJjW!$2noWjhv{s$)g4cGXQEHTI*o!`a2jr{`^}0>jZs=C#_3LL>b94z( z)%0%K)!XO(pj(C-Qg!FeU{8xD=Y?61Ff-I{f4 zR;^hJ{|Rstu=%|-SuWW%oP)3lNchx|UY>C3IFG6G&u1x&l<*6mWXpWr>^5Jo*6{U7 z3SXnjnG=ldib)E-HnmWL^Qel;*?-z?&R(zK?6Vclb~QEx?Fv$1Lo1_x))`Eh=WF1BJS(9MC=SoMC(;z#pN0Y^amC9 zl4+pffnRk4PTWINjAo^0XS_2qbsp_DbuQOX=SD#tPg!M0o;VEaMw%!nKJ(p?DfIDf zQ)st_Lhlk3QsoEIXf(!QZOptF%%9F9U?Xf zXj*E|nO@8E{#Li?J*uHMFUG96y2v)VF3>$8j!k@VUk~$6QZ}(Dh?niU z2$tUXj<_IWI6V0hxzD24_e-5H2-?o0HDu9jj#gP>e%@_~nbJtiC5ptj#;_wIv+1&( zh72yTtG9Gfq_9&m!_9Rnp_#{Q=+Zi!+#K}hUEWjkI*r_1p~#K9U~t_}?zFYPaRl|HN6((!OmI$DxP)iXWJPwyHYpJb>$g0R|cp;nu#l^|-!VF9g> z*h@-|k>mSr6leY%>9ec}|D@Zr{(y$oA8P0EZ`2AU+CP*n&6#R(fe)pk{Tv;G%nO^l z%?nRxc;O?07eeITr5A0ow=(k;a|Pf+Psa^&b`&x{T-I%V_-K$H20x~qC0WJV)Fjk1 z=Mh1^qg?QU=`?8w-OR$Zg**uVdM_N<7;6{S#+_H}7}(A>Q89lma~+f4DhQT&%lJzo zoXkP6Z9L61j6Q2keyz{nEOp1-qnpp?$+U%o%(15sHGSL{P6JvgzrnC7uD=6UH4tX_HqhR4)~-8u4J@>ntG#pjLiLRC*P1Ai zd7_ircGWl>PXq%)>yzNxMq>}=4AEt6b9J}1&381~=BR}W7Kq8I>#y<6L}-CBuX4gH zn2-C;UU#nQ+W~!W_L><{L!n(U(M|I#;-3ebPjU`C7LhgCtGlhq{#~QVu!5e@WDwEW zzHxi3lelDgaAhR@W9cAtEtnxfcfFS_wRKI60v$}Lj(V95h#jnm3 zPCWKji&e3pa|dA};q$1Ym2phe$(;X&Zgc)G5~Y(l(@UVGCaq+-V5H2Jq0nVujb%z3w$7c+6y0s=8#wIF%b0z%*cUA5p*6r+bx(YRF$@QPHm0NWgr49ueIVDjCW zty+Mx0v5WMQPqNDXd%d?nO7~SD}hodtt&!Vylg>TEok`^;)uletN0C7NV_cEQ5gwE z-GZ+N0k_^W`|B3eyHdE|#d379o=Z}>V4ZR0g1WYJfsRh^pHrm^fafs>GbU_%nObGr zt5BG8Uaq#Z&QK|Ua>7%=*ZZt9&)mDeP#ddz>CAG@ZvXSK(63748S$QB^QasP&;K?k zM(yM?O&x>(7kpi7PI7~`kilUJ(N*I3+7u%6w2YNx&PiU%KtlxQ5bQ!|DTCwn{OgXe zGgS>NbF7$DH8=&pn`NpL>GyfgN>T6qL;@D5YH%>kfrZh$-zVk%b~?rBUQ}4*g`Gvl zIbA@;GFR;hwz5>Q4B^MHM#83QwejrJ(4|O2<<#KSXH` zfg)acB7mZqsXX!SYzHhdWWN&u`?v!ao1v8_t_rEsgsb=kE&4=;E_I5(M)hg%du;oqmC zu=5jmJbvbSXCV&5h{7aX{wgGqvPDlU(NrO6|I|yf)m;kHMZG;R_cEzN@-bryawd2J zR6LtDeS|>7SO52x>O+(|v22f7x#4QHOqze7Rv3X4p;on0p33)Zu&}{~xZ}P;xoKOl zkF!)6DHS2fs8t%3l)P1_+16wM(wyR?t72OoXfgu%o{h~~4KkvZr{JLy7!|R&|8ZqEPJx*~*=;9cKgJP}_lx8Q2cQzdF#xbV(WE z)`)kd(kz$K2u(o9w!>7jY{Oy1(=0OT{hB2b^P!rh{Zp@*9kQWNKC0KLG}0Pl%BR*y z_mHZfydYK%GGA)+(E!v-qq{8JBtSX?OQ`vjjkN=|8kA6}kk*2AQ_WuAlUu>|p0DV$ zR*cxgr3QY1jd&yMo4wDjtXP@1F0w}pkSQ58l>0!0KI##DR;5&KP$>4N*~+TWMz1D{ zh0J8JF}*fg1XNLnNmrEd-5v2J6Gal3<=jc*GXarC7rhmS5lc%|8b$mwS+nU+wchaSB)l;~AuV$|pvtMZtO)B@vK3aL zjJ`zV2~kGa*d1l`!-zMTXp(?3`ad*26A)>X(ZAv_;wd8;@qT3#iT6-t)c&bfP#L*g zXlSBQ`4pyHWdp+Ceg%Q>zJgHbR1ka6r+=b4pGyCH-k1SW>z^hanzM4F?V6^+pZL>fi24u=s>(a6a6E1F2$hbo%(PnCm; z#+c!y`3*5W{Pw0eD&s2zj_O=0MRKe$fm17z7d8su^3kubHdxpgGI??3An3_o1W&oG z%<9t>1%+eT%81YdMM7c7WCI)1>w!2cpX(#uWFo+U$;K3o&jdso9q=j~Mm!xLBi^qA zBJm!o1KK}zmZ}4y`BmY+DA=h)c#koCLPR)0FLryI;Gan9Ll%`?F$@{HSw3oy$Aw-m z?q_c3jiK?$OVpN@NiFLqvz0IrfBggkHi^IbL-f{GzTtpJ<9#))#Wad(srI)kocj;i zj$2f>{z_8L6+DBe>o(6Msc!vDwm1~L^HT(zhIfv01Mu4^F%*xryVex;BB~N2BKo97 zHKF9iw}qR$E?JQl4|>P5BMYFz?nIu2e--w}W^)rx*f~tasRH)o2(aBkldpdctDW1#CS zo<#>vw(}isbV8G25o@(M20|)<(-Z6TPYi4wfD_;A+SLxP=dNV$_w9mK>c{J5e*HHayGS%5yHwDqvj2?0&auY@fhaw$VV(H)8GRFZpKADI1 zbeo5A8Xo$J%tI{eg;y`VZmc+T2|fjon7Sksh&cxxaHEs?r_ycyS*78hUj_L`RCQ0n zK%~diqL!2)P`M;!&56xa27t{O?b(Y4nIo_7Hb<`0aO9&hNAkH45R})bH)BbBPOhIC zgW04<%-Lv;^$^?+7iehz4Vm_AMwE*5;j@{zb0T7ga4_a9a$pWo=A^s3%}M8J zI7yj%rkWRV4xqF)6cp`GGPjO~V$Mbf;P_-7dUv;ZXoH4_ej{rm#zRTxMx6WxbC}c$ zD#K~`vl$UGS3c2guGCffen`n0w$7s3WR}lyV32sZU1h)7Q>IMs{Sy7}voO_})eE@r zGN@7>RaR!O?V>}5BwS-|F4h1fW2HSfPrAI4992g6>?55l`Jd{x?nR#i$1rrEPHZ5Vk2y-%!*9*qd}Pq|2*|Z+ev>k%DYWHS^mG;ZTTP3$p2p{nUB|5 ztS*6M`dK9b0|mhH14DU*U~z=BH5WDwToMEd7e(Gr_Hs%Hx}mNXy$V)bU^kOQ2f>CH za!?A@(M&0j`d>e*@Gv76S#YNUQfJyuD%ia+aGag^CMN+n0j&~@zj1fGQZ_6w$M)qPpIthz^|LRGTr)&psE z=^iDmF5aU_^D}-W+dDwLP!n@HKlJkcB+jc#Am;PxCeN!&2t1(k>iz)*>9?qA+`PJY zMarv-Z4Su>CI@pcr`XKq)kRr>ne3w(<<&ijCP>9XrD&HSukNH>(P!6{?}O~RaGyTM z?uy$1OC-vt;Wtz$?Q(cV?UWWdcApmn+8jM+b@R?nP%CI(0X&i7rojd}R2N5u#ilpZAlW?@_iw6 zqVt(buR^j=rqVazH~i^lDm^yH_PTVX5@WHc{w4(E%@1HA6F*()^ET2f#VUYz9#ciQ z2H3*c2=~`}=dYRU#d}0y#k-Uark=ovES(o2U^$WLwDKlEh5wY)yV!ssA&(c2fPohp zls$|FU8sy$h5dz6qf{BQ>}%{|vr(#6sCaCt(o?X;N|1oWLsZ_nbkwRfD;2z(k^oIY z(jPIU>4OLHO^|7DONfMG=RUR}yXY!?bnWu|}{H%WT{ zCOLfg%Lp7MK!D)SpCRBh{HZcuo1=z7uIzbJICGc`Og^w~m~ytohaep_B;&46I(sm5 z*lgy+nNA#?Ta*-p;9DeHCVZPf0L9TcReAf^DDBa?b2H+Mz|pzLUT;|rs?2|MZav$i zC(X8`2^Iy*B%hJ&?SKiOlGZm3Ag0XOoN*)ICgY=J(O5Y=5wnR0A&R<`9m261y}%&Nj47$sG42AfyV*VM3ybY5DD*V@mqFbfLnurTkn{i zVE{}|(Ukze1&mTG=8(wszt+h0j|0;>{dL57bj~>aX;=x|{U<5tN2AEk_IuNzne+F5 zFeonVeaqum;;955wsuVzsN!@b-cK`!M}x0x%`pbJbI}6W6b%1_Km2N+$9uUW=#D8Ru36mwXKx;_gqb-vL-u50CQRf36pF*-w z;N$Q&!#Dit20jj#g-WH8wl29t3&hw!VbcxU_lbNeWek5#5cN_&nQFgRXWm< zA#+!LV8}D$%KzhR2P|BrXCq*80tjm38Y8wV{~RVLc`LVpb1$!p#$s3)!E4r`bWYv2 z_tv3Q4y9;z6>8A!zm$V>?_eHy@2bKDTe3xpaQ<%wz<>i%=YjHP*cc{m;aTZ!R@2qB zo*xfeDjMQGq+n@JM1M`3(cI-Ik}zLISTX^T!k_I7<1i#|Hfe0VH(Ms3KLKkb^+KaP zQBMVImr1neB4Zo|qCF_Vp{_>l%$|b~(VjH~!s%?Z=PgLU?97x4Q=2D(NZ^r*~iEDB`>?98zl z#iEWuY38D;Kbj)np+A(;hd3hfeLjB6E*iBm2)K3M?2Sg%yAqCiv24}riQ-Y~jN?&t zZ9qy#pZCwHfK+`tK}6~~Dg`9Jetj0iq+S*jn)ZQ^xt^l%TCfM~< zwgVQP;;$oM@+=5G!9`5$VAttf9CF&?MEN$cEmsk{+B;l3|0G)sh{)Ez0bm%gKC*?4 zLS3kg7C*AZYaDS4MQ_qnV_GmB{w|Y{61SWpD)oCBp$Q1t?{0X?!dZyJkfKtgwe?Xc zj(UF}kX3e4SVB|m>7-7fi}xz@h>O3whi^wW8V~XM3%L0k6*YEdr-rZs0Gmy`WQse- z!Q=5GElwW}!-(P}0{%E;q^!{sx>ILSPX%TyCUM9g8cPiqJQ2@9-1*kP#Yj5;|-qxPdt2L{bofZ;@=7@NEJC6mdv( z>g8jjv~kFHWW*U9{UQz-*=y~ov)?Ll$j1IEKhckKYcCQB-zP*YQlF%;_tFbrstHEY z1TCam$%YL(wrU)V`S32UbK3$jG*P%eXWjpEjXEi3+%z&*@ z9|7*nIKCRqm&YU$cX94dT~;$$mDb*&&~t3A5hK2ea}pL`{WN}~_$qx%9$%%92*p>) zTdvwEU3`_L0Ax;wup@u+0U^%z(Wm{W7oJCgp>91`eYR##9APC8^AXnM5mrLr0Ucre zI~1fZpsI0G0OA!X!isGU$;M`6Nc0fSY=jkM1=i{ZWfWoMvPv6(qE7qK4cgOwzeEg? z@IHgzvWu_&EC_hko%SQNFdf&G@ahFh!H1Pr4qUJk)sZIbsgL7UUOC;0dD>4Jm^Qeo zBhDN+>?IG&JhnRcVmKY9P=Lj$D3dp4GcQycrN$JL3W5_2YLzog2cnb^Viy{v345qi z85*tDigy2su|{!4pEXvkjtn&*8`IDTY|HECcNX^AQ1r1n3iDA`H%kIph9adQSLGT> z98#@NDl2zG4okdZLmw&){=Ug-9WqN*p=;0)d!+y3Lb(nju&*hO7b;_JuUKUW26wVh zs=1w=nso0dHlfth#L#4+R+y;wUw6YSh(Vuxr?JLLlLztm;OpkXxyXR1XhYD;WpPlK zGHR3J^;;Q4Nhbr)8VWc$>_S)odT<>G`n+scJ?#@uwq5#nCQ^TaIn$U#>R$xl&HPRx zp3Ge!B2xbX0v3qWFCk0eqA3ul_cb$zFMC80pUXRoiCta5#4^`dh9V<)2jN3pR!~yy zEK2rv0VRuZ))0ygwUto8E-7euU1!nor(Hn9k^UKri;`SGUJjLRb?;(POr=G^(0!f7 z(7l8q=Qdx~fP?zg{=sjhSC1y>)xGeJLR1Lljb3U7-m9m4y;4I9jHhrer}pjR3HtVQ zXy01L)SHu&)mmey4%Mg|G=Z#7-^w-UO0c`k|Hry);ypK4$45w2XldL$;2PvK*w|5> zWOHVfkaB}U(QhQc+9RP@b3+^+MZcPi&z?@uD+4~`y-LPs|COL`>G_OxxwCwBjAohV zvQd!N4pZ)S?_+w+*QRjXA#X8W)|kwXmH>EgJeg{?6B6{wfa7?t{2aH0meMNj_%#J* zXC&xddY)sQ?l8}3ya+Bnf;@M)dbfKcV>*AMg2D3>V9-F%txv{vTNCukfa`d#{9G5$ zp1vYM-_r9O>vCs#?)Zk*N#$}=knN5NJmB8TI8W2AFkd|ZDh-&gnvD5wO3*6<=HtCe z#(cLW=v#W`V_ohn^Bqf5G@mEbWv3wPvALhP-My1BUZ7QByZ0tQq5<1In2hZ{oS;_* zY{z?*jO{*?pl|8fj&-@SYsC2UL|A1Unl5WdPZbj?kpo7$)h;65=4@sSF?vox2jC1v?#20^j#fYT^tVJ z6Ra+*1idm~HQuXatd>vExAd&Wy4+b-J31IJblE7V>kdT9=&v#2G>aSvtUsG^)cY@xf=RDTw&T`&i%7zCQ6G4t!=HBPt!dOjQ zR`B(~1o$%Gu}72f*xw}Rl>v|OUio<}p3~&Z3Hp|v!&sL)%V9lY4~@$^LH1fgH@WSM zxA--MvHmpynhY50>12%civ+zgU@YFNWQ?`&Zu5Ct}rUM1tIa)Q34=PK6a&T`d}{%xWz_XL^iFy&VF zKE`FfHig|@lK^=J>~>Q!cDo}%uMF6Y_sY+13$MFDMI2sGu=N)S`jwv5Sa&mJwPe6T z62!FKNE&$Ck+7+u^9f?k!mSgOAm&p@H~i@)h&f!|psULdBW;9bJ8zCr_F;fwJ_~Zt zNJYOPD-BEI0I~@QhoqL)&_>!djG6u`_I`GV(}KP2aE`N7x9XF2u{2sLx(Q>Z^49iB z(Y9C*NBTqp+6mY+4tHTe;$bLKOs6m#ff@lFf14r^pHCnWcd>*_n&hI6$WC)K;#dmTI;&Ty2a4cMTWnz&BKlx;O=V1C_Ah_yr(DTm+0T#`4%IZ(R(m zXkSy9fYR4}Sb%_X_ps;afP&qCs$D(=&S*~*^8B##V$Xf z2u_Z`c@bd9(gg1Avo_T0Hl>c14nj*u3UYMWf`4>lu0Ay}TrKynxNu-2oPeP{&qFlR zq~<(*4#2E3zj5akI|jC|?DL+_pSwoSQn&NnD*qMel1iWY>b=)(F%KS#Ryx z!}Q&rJ$>+onZvUK7;w7jlB!|EcLBM13JV*u{xe5gm@M3$=w}}7;1euK#0Tl z?2-9F?L6DNs~JIGH%4$!UPW6JJp$9pm|1-2JinM<92uhB{qu{PRpYzD&Bjpx16&9F zUbgerz_<;+@Ja;?Z55P$6Ra>L+JKo}vp5biP%T#X?15__pu@F75oRYKlGcWDz1nAu zG;0MsUx*p>_)`cB6KHH6*ytDB&1#RHzVROUq4<4LQGQVbodc}2l#fT{p+zu873kIo zpsA!8d+SOwBm=AYRM=vz2 z{d_G5n+dR3oOLPY-GntI{O90e5lYK7s>Qv1IHRv%8cuAfH%DQ)S%Rr)-nyi^-`;1} zU~UN-hF%J5C%75crcn5Vp04-M!V?z;)DcMwmDHiO;vUtzD_dfToQ-z?U{@Ois*z!1 zSWbrcIU5%N8dc>$R}|@cB;rj8w4KP<_z;cH1caQS%rs-;`*9dj{yuV}=rcBQ#QReq zGL7ud*yvZ%pY0U7c&}n-Y+OPNu2Pp@Q|S9tr#k%gRP=S8gvSl?GkzO~VMJe=H2d>2 zM#>dEq07(M{;B>{+D>?yiS?SFqD$R*uOiw#% z)yH9x0fxV3H7lhCRvxuzMuDDa8@vru7EBi4)wr@VxzAIZ{WSk@f%mdYz2W~So|kSm(De%EMh!BR zsXo(~b5on@)tJYGR`g_mFCVx0G8^i?Q<`{KnM0Tc%_pQ-Do0qocsWlV&z6^kwfg|! zj=Rr6mnsy)#`M-M&Jz3c5pOavMx3z1o_&_aX96OPJ^LaKBc45z5${(bk$4YPBJH0# zPRpkTG}kPxfXn^MhDC5q1^Ux$$t#vtnlWpZRvJ&T=0R`W5O9kxgB2u5v45P4@uE7= zKg{ev{i~y>QKnM4j~I(pT9rH43u$vOS}wFMnnb$dhF4&PL&_H~g4?uGEH_8&_0|d& zkc5Ev3JQeb7mS#>e~0+h9y-MZYpx+|g_|Jmf%oue0e-DEsw?t6m)mT4)2L11(q;s= zR7{j$aRo+z>woH3Y1EpkHm#8=?qlIwgQlR`G%S`HxZ0n9O&x_sl|g~61oS*U*@OFu z3M2cl5)}_P(MVa;30%9OeRJoNImhqKU5tR;W~T7jB}L_*es8$SH_@V;+``a27XXJY ztFW;j@37UaNvpD$OX^!C^^b)$N4)()yeXxhYVBMLNf53-$E$W~@Ki3CM6oxsY zf51RtxT+5JA7^&3ubCC|S`{T4i3+!nCerlNnZq)In6#VyIg0}6YNm^Ty_ z$&xqJf-oio9ob14d!&a-J)o;}*lytA1l)J2fU+y~CWbU=mlQ0jVVT{-0At~XdLJyQ z*@7IG*?5V)fx#`?b=YoQ*jKF;hRb#j?Sz6=dCj6xK(S-kZrumngB5uLmg?{tgfiBI zVh#||gbi8*F~WnZZ+FNlL@s`>$^8HKgNZf}mwc9`Sy#rh76po6*Mk*zmH|D6+O7z|6 zW7O%;U2t7dp`{A!1Zfs&BRMEic2W@3lB7|4n1|DSY?Mxm?Z>*3=#hlIp0!n;y2Wjv zldvPCG&W|}xb6jCWTDY0fD047jTY2`w_#N#pGFM&6XmSniq?}G6!P7atwIn=?*<}Y zNDvDfyQlQt67e<@jm7y(D7`yqj3yw`D80LJ81a;zjC{Y+i^P4X(rf?J?HjCFCMF7_ zM-3pAp1RhU3DWAR!OvpYMXul_;x8K};5-aW_h3Q>H;}6Fg5OZHjp}{rLoz)*D@F=a zD_FRuZtW|SOC$UYwGGE$CqNTXt#z8}S#WC}p1{Ik)@G<12K(CJ*tEq8bVA)O);OXx zVpXyH>a8X4IMk+AUkru0?ETf+-umhtQ;qRzB|qw3S^aXmR);e>_0?zR*REY%E)B1q zq+94G)CaRyO~SFB!kArO&CAcN27L_R$KWKW`*kWmIkkSITI75703~rs)#c@L>+8>5 zv);;GzG3IKOSf%ay>2D!m>Vs@20lDLR4&2xf4eeLhiNW!ALgo{{>z2RUTCSGV{EiXd9i(~O)ltq_>Kn@Xh-X1PcCOpd7{9qWc|Af^Vwjp{6ya^VkFH%t=$R7KwRqLE2H1+W3I}7SO7ct=G z`|!u1(CLHTd$> z5xeJ4W<&Pvo^L%D$Pp!$p+vq22OmXb2Gx6>sWet&MUj_FBe0lY#Dd5dvk}vakJl?5 zm7e%Ohv~^B_d@Dgg3-05=gCCRNG0k&Q0bI#+|i^&fI(7@_~f+`fxrZV6{Ort_+pCs zD4CSZIw<^v_jZ_yYnfDzQLhpV%uhuVW#N406fg*%g%55ZcEd4Kzk%RtDm%mX_9G}gWz+(ONB=LL5`U@Mw z)K&a**GIXS^-!#8YfZZ{_J54%MFQp)eztGX*iAsBS(|+qhY@dWCKJWKHjAW5=-RCP zQ|Arv`~!(tULjc2%Tno!PZ$#{wZ3>|prn@^24z7|7JLNPJ9BLDoiAJ+kbfSEka8au z&(gqRno+t!Q!7kS7n*j32uHmmTy{-Zo?}pGjKctMXxI@O(`$^lVaMl3ye+{Pg=RRN z#%KZ}jb_NT&332f}1UZ_R9%|xgcy!UTw%Z=F+@ao}Fps=J31j$C z6Nw%c40F>x(ZVEZA`wz}Pf-~m_bBvvC|jWtisM~GpAf}?jonimpNM#yiPQ%a$H!@m zCLq!%j!)t+;wcUp`F_O_iThB+(f+9&nKQq_s8JnArAQtyCSqzu@-;d!5mX-owL%Hv z!DDQP57Pmdi>11sjv>O{A;`zlC{>!(W*xJ%R7QFV%|>+sa#R*6Z_8fWp0t{iurx;~ zxaLEZ#kNSoPuPMvUM-JMV(O6|2ut%jihKDj6V-k81ZAR=dk6;`$!FpnujF^b7J-p! zxm>74DJrE{qoSUa7KPTo%vNB9Qu=SAb%;{J#_lPlp8LYzW};C7N@*zoHrr2}Mky`F zVZ>8PGV=XODH8XgN~!%*e?E&uN_Fl=_I)`x+vSo4hp{tOOk?=MBH?0`&z8jw#V`PQ zcr|@jec?p0=UH(Sha&hIz}|6@R7(CoyRYPb$5p6ZD}qLqmyolFCpYEC^46OCnscrF z)h1d7+%A9a8JKTOSfV^r{6mv`C@xvWU2HuJ_JH3K;Vt)7Q&lX2uT5c%UD-0TunF5q zUxwHOZ0w#*7>{^cDw|-_7)?N=u?Y?iBc4r=k?*$&k+=`F3GJVHZ0^aQYC0l^=r%ug`cyNn9&iZWQK2)Bi~G5v6Ao9iai7jrrJWEI+B&2s_+btzx_G0L4k*Go6-99ZFo=YrcuMg3Pr8;i>dl0TR&TL?w` zC?PpS5o2R|MI2|-=-)=X$wY$&Cgz`}@tJ@~ql7e6Q-K;K5Wcysg>4atV~sok`V{C zTzI9h=ol!fE<7gyJ`MO7w$WoTjN2~o{Haw3KSdAeG*9D|D!$rSc#sq_?c;+`k!kg& zflELimg+rTl`M9q6y~%mplyYfgS1OdN zyepe|r4N^x4)ELQ?WXsudhZLshwoL7P)S9mIn-Di3Flpo-SP!&1~ zD53>E>B$1by9y&CbkYg(oR=zaa14FY=wOD_<)G(>Yt_9hF96$s2ak?6%XDB2pGFO? zd6)bwfWf2#RLKc4@iiy0ejh~ChNrBp&506JT+H{7Gea3$|8>1(ET{s9zk1hOXWu|? z+)^v-g@d(l;&u!S54Ru@cEDG!SD7RG+7zxSWy|`)F4)91Arob6Om7z!BO|yg2KFX) zNg3g*BHm@9(gRcF>u7`~AktWc8*v!%tb&Yszg39De5h4u|I}v=1hG`DLgb+R9*pPi ziIi!dN8>c#&5-xnRRNGE8A5lXOH z*^NgDD5miGq~$s;_dsB2uta;;FZ4j{V--I(!UZY*;vI0yIhUv{t))BdMzdC_tGd#= zs!;Ho*|M6biS`c&*msT#R}P^y(fnr>R&S@YyKGGa=eG+ZlowYnYt2q~v*ng&ESY66 zeplE6e70U9Caw;C`uQsa+T7e;Be7jgd2SmE6N31aMl6@oQAWO z5NCPg2(7ij>?6Bb8QO^%4K2k4q2&%D-W=gr=&@M-ZKb?xV z7jSI>b!2&hA4r5jb-xj9-tdpwxA(; zI7gpeA_%5^yZK^HL!J{ogBd} zo*ZFq2O~l1>YHV}m%EMkq6Y8R%aTO925BENNl81j`_)$;Z95bKlMj~}okpA4uE>N^;G@{>e1FrQ0;ztD#|8rXimlpn_t-dlMoW ztF`XFTE_fax{dj&2J^3$G0)}$DG(o+3mB@l8Sjlup9i~5ADGJq=FPWC^l`HdV~#Y~ zhp22qG?5XULPL>t+{2jI2+g8?$uxVc+ceuBq}kwdh#@It+rDvoEKNp4wA6oW@uO=2 z>(r;a-b*@A+Y~t0-A^K~y%#4rL*kHUzxP{vHx^&&?}dU=y@6(RvOkX{(Y&+zYv~;1d*^_k2BfTG9*oabuF`sg*^smRcN?s^j!^bHQOQ)OX3r_Ecrydx6pRko|$J zXfO-xXIFE*n|8q}lCBNW1ZV>`=jn3*Rs;EqFB`aQ=cYb5lQCI>eB!X*t-p8Onzetj zYRy{skNcjfBLEZDEWW4@L6)OF37iXeE?NMV82-tc|5=R@nLU5iZT5U9$exscKa@km zr%JPyZFMs>#>%>u&;=0rXmn2~Q?nQoHQArtW{Sp~-kxm_%=^Ludzv7{JXr(S!`T)^ zueB|+m#nhJIQW4s2em(<(HK4I;tIT?leC#S3!BD5btJEPqqcp=z@^)_g&H-C71c_6 zZ5}#e64O~5C!4mxdE5}P-JKvZ?;hK2-u;AzcfT3MyPdFhU1n&V#d;Q6zj-ptzJ&v6 zk|S%B-fnA@ztd=xV^ob|UA%qgrok-McdjVcrzVE0<^JA{ms~7d+wSSR{@zWO?G%?I z3@7!APkp*>7Uz*Pn%C`=l(~6Lx4HRS8g4$-$IWbN$Nd$qeWYa!OR`2xntUzTW$VZ+ zp|p`TflEV~?#-hsbhjyAl*$}_ez!UN`x*}SO%3?s#mC{a8pLCtxEP;XJnotec>*v$ z1Dq$b*6T6X{UKYstxs$?qnTh z-DbBa#~0xiWh|^4<5#jbQy)Zcs1J)g#4R*CDBC)?UTs1?-D!tFd~oT41vgCRoX6qs zmIcle^ry+u&_oP;2rg}NK1`o)Ukn#M3Sarj{=cHDH^FV&oWG{;pPJQ=1 zOOIUPyaz6BbKZsTcsG9h2=Dw?{CJpJ-isF>!jFH$2bYaMaI5oUZ2ourcmf)3aXyI6 zkKxCEz{OjgN8szN&QI|EgPcd{$6sLU1NiYy`u!k$-r~F;zmJasvpPS8ySF+27d}CH zo`F9%OgsP0{`{Q%`6c`F|Ja{fP>f!KipKf1xN>XVxdTX!Y=dnMNyd@LkjKME)A=2{ z^$+aN0+1zm+d}qdG5d2c`?HMw>0y7C!yg#SVfbf(b2$8Qj)V`)HnMZtITpSGoHJK> z+&2ZC@bXId3#7I#fQ*D`YR7vA?&(~8YG_P#=a@u4f@o7E+Dk-|AlZO8_5Kh5Hq-}8 zFtN7jP`USLR8?g0g0Y6S)^3leCrZ_>y+a8(2dketSWML9D1U1?_-HEia-mTeF5A<$ zaILx$W}rUeOGmUonSaHD)(<57D%E_t0duft$e!<=sP#YNJqACC0md0lR;JxPJk^ zUy+G#c{1@e{DxL8jZC0XVyOH^5OC{#t1qkDwfgE>b=a;o#%kBv_0rze7r}}cYj@OF zUxYGIox~rj%a9yxpIvVZL58#;cnXrCt%e9b6gC}$g#a}}%j%J8v0f{>EmK1ic4NFc zQqR*IpzdCWC-VH^sr)VmWhxI?Wk?b@VkpYj>X1W>CP-lCoeO}vS~9)~MvM9w^)e_) zWxkG7691V8v6R&N-GBm-X^Le&9d$702G4{4rS$Z>wH8QW|ND$ zFMP<;uskFDNXg7Xx$snr+P3KRDJYHe?Q^^PgPdL=*VURnKeATw+$ ztgk*hzjp2Fa%p(=B;7(k>!pUhY7$PaKz2JpNzreYYE${isr5);z#Oa?A+KM`F%n79 zBEKwzqB-Z~YD??+;Z#D&1}=x3t6_|iw6{(QoImvq_)v+l-67_jTYYye#=G2R=l;l6n#-{V6jYpMjtb`y zcvC^U6y-d6AKbur^i%+EHZ2P<{4E}^lL%M<4NJ%>hvLE4%#ua1M-)u_NoO%}ZuXck znUV>#Iwyl;!d>s*>>*d9O;jcgyzOV8f7}&*&iNyBcRUw9Ld4^AXlgw#jwYUVpx_R! zZ_YrFhap*>kKeAqZ}{`I(@qYdJttHxqVPkuRkWI^=5*QtrjMNEYTfYXZ};R)2?ov1^0o)MQbdQhO-PzsURu*JA~+= z`EP8c7AeCxjU>eV0`bID6+_%^P@r)fM#s>p*s6a8N-CdoM#`u-Zmk zU3N>hs1fOd{|o>FCWtT#t(=+;6&u4i&;R{pItMiUTn ze!$kk$*Jkqp*4FHj`oyG#ZqJX*49$^$$Si`+UWKMq>#2@iE|$gLrM-vTJ9ZylWkms zT@T-x+{wuIClHRrJ+pb%(>LB>8BmO#T1`C6D;`+Dxsdiel6Msmjp|jvolybxpQ*scFm==hGfPOyRotwJ0B0fwX>h~)l>j@7kw4S{rNGZpt}Io67taC=c|9}2 zQ7X%R3^Abz3j{PFDuPTjVS<5(^u_8b$)}jm1L{v-yp*Reb`=g&E8bN_iB4w392|Ed zd2wW~w;T%H_9rjCfgMn8w<3o0s%%wE8;ICynV)PAU&i-hQdViNTDdv~;e~n~yw*7a z;dy--vSzq1j6`g*{wknQ#wm`YX>+)SHg9IM*)tPCtb!(Iq6h?GcHP_tf zwoLK2cAMfSBr;WEcbV$OWOhdKb%sLEv8iN?-DNoCWV_2gh-Qa&m(jQ6yUWN$Nl`2c zQmeCeFphr9+xjDnb*utQv5Hj8DsTC@ia0c|)r{_sh_y!UJEPvIOK;~#o)sJ0h}a91%aF}{grAEYgYCcI9jaJ@9rM=4al5#eyh$T=1F9sz>HJapNtOvJ zI2X&!5q3Pk&}i1d$~uG245xPGsKl+?3AirLY6bpZmF_r;7WZvymZu`k9X zWc+HS1F459LdMr4VBer|)*pLE%;_84`W$Qz3`Bk*f`Tqd!CIcCBP|x|35C$NXFGZk zoP7fTHq-clkOU$y=+%f)XB@YQvUjlKc8TvC%Mps96RBMt2c1+qD*ZF4!Nh~FeJf&6F+#nw+d&|oY~q*Chly?cofhy<1l43H6etY zfWt+&L!IL?4wojvq0ncSm|BcD;Y zgZL{D-k^5LLlzm%ptpO=0*12xMwcc{UK58i2*i9iBY8N35O_d`GuEO2g*UaM?b#)8aD-b&*xC8hN)kZtd zUc7+DVq$PBY`5 z?mbdMJQ_W34mER;j8_Mxqn+5LiDXtIqp9@F4IV%g#zyIKFk07qQVrNrhxj|Wd zzA=c5_P9@eG*^Rr=MC6}&|rpo=(ZC_avwBDfl2)0egJRg%@UqEGADYmK&b#SvN3xKc{xkRuf4Xk^<$}$1etL9ML-HbIO|l1>N?Qe_!c9 z>Y)lx=RYA}TH%R7Roa%MAK&3nhqGq&QG%JBk z0sOJ`)PPy*w7zz`P#kA>diR+)+~-7(nc`%#ph=*1#@_d6Ixh#M=ZmEbp5rBkcITGT zd@_X2eA>bGfP%-QTlDtW;&i?bg-wQBHiLi-OohFhppp2Ghi9z*eybO6=oM_pSaD;a zQncBenjY{VU^8)Gk?!DoUg;jsQ9)K@9*aPcL|ByN;Z@z1hvO5O6A_J4S8~i2NXxxY z=s9M#V??9Syt8Q3o%oHSQS>c&G>V+bvdw1Y$lOl{_9r2t1(UQSU$zx)+s<8;`;(QalRV9FhujDmmzjn%Q_1 z$_m)*Gct-tok+$EW@@`3p=%jZ9gk_x*?6}taBtHdxcMAniv;;e{FYsO>N7#Wt#{78 z_!LJWQ+izqQ(c6UY~{6yqE&w!`v8veE^W|CN2|x?MEF7-TY}itX+dfLOvp&KL~r^8v%L6Wz%w@U1hm|SaR&%`+zOuc@x=mTKBMsB_5{4Bt5L+=ks=`YLmWF( zK@1sNl{W!0vIq#uxnq?R5ORYu;G)uv)Kgj!7Tkk?X{jxSjx+n%VZjZqnz3>_cs5~5 zEjvKT7+HE@$U7aZe{uu}h4&c*oJQffk;?QZzP_8$7-boB9sr;QaaVp4Ev6WL8-Tl-P;=r7 zo5P3}t_w*-H7CA)76HwK1=64=c;YKUNipoClJIX5f=xyjkZ@%1Oe8$PKtwcJoj3Ue zE^RdWl!wCkECKFBG&-`^TMhx%_eCjNZxhjI-1-)n-AMCZir#s%CF#tUdo9DdhMNn3W|TAvs)+GA8@ZKUjMs?5ZoIcG zk>^aWWqQA`+w?vn!4QhC zl5bp{1L@+c$0Pqze3dJokoviFAD#MBlvH%Im3pI2@SJaYtMA08{|LlhX-Ct?ZO8$|{r&E&IxZibkjt z3XRIj_9ny(3GH?GExX9-tAc=AZ=GF{Rm2x!q$>f{7rAds6h~bZD~{^ELK{BS5#*s+ zA3pVllpt!l!hJXgUm#fOZmoljd3^g&|3Iy2&w|+LyMw~gK2(=HcKSf@b*;I^3fhqA zGMC~$r>l2a(S08ZqM<$3lLtsOSa+VlE`$b1PmSbTcZ{8hmww3{IVOh#KL_A5iCwR_+?!djKzD<}Q$Oe|+Wwi1^fo9qDHV`x9n`OO6Mieb`tJn2 zx)EWY0dMbx@GE(o z*vUPk~Z6y z?GX>PIfmPpWYOUdi zG&+@Uzql4=yjM+!>wvHwBtOq+V6t#J9|fQW8*G9*NFv1Z8Gvo(=ip2yWim+$LX;p! zvSq@z2?S8=AW>&yJ~m3bgXGlrWy09#nJcZQA_E7Le)tkEb{9(uitB?y;!Q3%$`k9(NCW(&5)4Np@;N0eU zA`(aA3B-IfK6x~r5O_dG{ApNygCTD^^REQTLV8t+jFP%ge9PM(B0Kd35$i=p}k3$;*3^j29lMC#T6Qh|Av- z6qj~#m?lB*ox#_&<{|@VWAn>pI;*}MwMp>?yf=uF_7q4Sqt{Ttc@K6WG)8|YD*Ha> z=5t5YnTY%+%u!(yk^dNgH(RMjL_|MKzycBZB_!A`ngYj{ea*~6#U4?Z;;GJJ;vcfd zgvq*Dpfw~m+?GiLZ@Udf)cM%(!$=m24gU{*!=G+!_;6YHb@5?I$k+SLe zBtA?g3F`?G^H646_(28TJ?10sI%QYXtqRlqPU%qUIhhE|ya@rz@!?-9Z-SxwL1eu8NHBbK9i^&lIteFIdHD1?p;6a6bXMqewh}rA8oF z1+J-Pu~Dj4Xmdf2eT`jgHryKtxW`AqL*8-K_}SUwPXwh_17JWGNq8VAg^fb7sB9YU zkoE_qmdlt_b&A@gh{z=o?>31oaUZb=Pi>+Rn}Co#;HKfJm*6m@@D!WU6nf%#^nPS+Va&1IE}VEVFxprUO8fBO+5|A6iMh^3Wwa0?I=YQ=ysw_ z0z`=@5F)DE9Fn9q>|bV!L%}JJBH%QfqN;W`M010>U1QvF8%T$#&nV3D*^CA%>vHER z0BR7;RJ#{bt3L_vFk34IqMDyb3PSKRk~0&2PN2F)R8yUd`q(RNRPz}aVungnL^UIO zy+wC=+F?=6iz)LH-+wyXoMKBX3SrW`&`r`_tl6+(l^<@WWAJ^}+BIwXtX_DCABmUz z(nRv1l=XwloAVG+8SZ?S3Fe ze$5(_bOSTo7nwGPKH6p491H6Sf1Lk%nKt!Cb<%>Jp^!`f7hR?T(FeN$s*{OHGqYWh zDRWY{DRZKRGH(h}hD0YJX@X*tl3cT}e=-eMbeo2!XlPiLX~^vj?u;;(FMP_#;&k`b zGUm_iHs&o2=3gyip4prfh)-*EX1q5teKvNRKFy?Y&2^& z8J^Kvb;1i?+m%MCQLI zE!5yVs^W6?P`5dIy@s>TRyf<$*buy%L|sV?lwM_HsyR;+N9gSBI|eS@zRkNcmd=KF zP-(BNEKfWDwbIylqrbNZJ63h6?i5FWr_Ig%0E6>L(^7lR^jfC(?rP~rSrIDCR6p3+-VMjz}(`7pi8C+slZ|R~)VW(t=5-pmxk8Z}cfsJgpWJDMf635E2d&+ZVrsL=KbvyeJ2;POI)TBf zzC^lc5};bPNI&VeWZj{Wtlf%axfTgeDN&$fCPWKdX0uSXvRG3N&SRUO?`tPsNwF=< z*RQ)RU-xO`>qUxug;_4&g1D20Yj#Q(Af{KhLr*!UH8_t<1KSjIi11XlY_Igv_jh?e z?!!UpXh|Mb&-5@qy=!=UlA-zt!fLgJT5YaYf~X;f1++p!FDW@jj_w zE)A{kv=)F4gMUs1a=7zTAwM|DO_&_LLH+|8qJOBJ>%UPelxQPSw!~*T#sxlsUB``Y zCPE98d6g4p!F=3z_PTRbClBa@v)9as8Vc=-iEf%_5&t~ce3EnEv52h6uI#oZ`*)2d z!xDNzlR;=_`^N3Dj^vW%!IhEpkL88XwP30U-Su9!)YdgM3UorHI_jl3Aa>A#A$JX) z*5^|g@3;1DI{MgKEmp;X&K-n_gwLanR>m<=Cv$$O+noQ4M0sV-^fGCw*(+I67%9bN zDD)gl-xH%;0jBw3DBuM(wVEhNSFYeFoI0*zKJHbdtpgm~HdIWJdRT4$&fK>6Ug;Ol+XnP=|ZU#N}My?kalXSe_PSm;-!@QirR zu=!Jt#pk~j6rXl-nWm7z*MqNX%}H+1Rx&tDA-YN&Uz-<}`}z5jxM14pmm9{LjC z;of$5c%z4h9N{5Qf8t=KuhqV}7nT04PtZRDIf&%N|VPQgoS`>){mvtdEu3E#M= z#D-briIlJu6jhXtr(Sl5+8hE!y!1o>MKe=+;^u4zEK+2@8Ug#b0~eX0r6;ZmNq(Jk zJ_KB+n?(n>YMhx*E2qi|6|C5xGMdFwv)4nj`uF&2S5RpS_5v@Vd$44MYmAk>neIh} z)!v>h=0(wpdjK#XniNBzXazP3RirX_{Gt_$5y7f;W0#Z>J{Iw=1o`Jhk%|w{2u(o9 ziOo%mR6K#hkcw20MbHr#R`V*p>&Hj6l9;W3yI+l&Iw?c&G$PQ6XVB zyum8$gKgr4VJP}J3YkUt%Ofntp;E6^9ig-+R6FJ`!?n1HTI47fw&Mr@9BMnTF$3Fy z_*VzIm@X+J%tgE_!3c%zIDQJ>iau+_h&^0t;1}3{H^RQz`|Qe!m3iwTd$a(ll2Jps4@Bsr9?@r2O63NH zVnf-=s?bJP62(Ghve=kj8!ZB=sKcZy%J>=)Z!%FNoSlR&x|+sk0wRqr+K0o4r;B97 z`*l$y-a~a!`={2b>nPfbD<2`*a=enDu!~MY|#QlX*0^e0RkpbjYk7CqF zQt78bV{S;TpI$%GWLeguw3Bxa&SwmC(@0?o_0d?Ph<_$)HvOsA8-AUHH%2I=Wo`#l zITe=`VSQh=!YY)}dx$(C$_N{~ql`Wo@g@^Z5>Q5eP2)2GkwzJP3WpI-8OezEE2Buf zhbp7?Pql)|$mK#q6OGEJFy$&65C-=v2!!_)ghHo+*n>X(6V>@t`sYDo21u=cnsivs z%8iz*g+|EaNZQ99iu#@Q)y)#jd*}u}6`}&P?rcb!V$~y5%@XR5s%Q8$MalfXY=uxL znV%C4LX-?PrdKjc2-&_dvTMp1mwzz)Z6;bGplA*Oz-F<-G>YbM97a4vBO~9hXd-bR zs%Y9jRSqf|V}_UJH^lVt+neI3jIR(ls&lCn$$xcUk-V@`0GE$`g|)%L#*oR2D+fVO z{vvqFZDj&UR}>U(%vMH(9=L#HBt#EjV|qOhXXP^(@upNd;4&JY35Ya0;1xKGcsf8v zyk7@I;yqLcw14U>RR=`#tHOU#uv3ZfdB*e!nF}Q7#cpr&`|U}6$fC3>h9N^Y$w%#V zxzOvy^~?>uF*H7TiQ3XKDQ5llY$Z&@U*C#=P2#Wq5WTgPZ#dx5cwbR#F^ytcs{QQ> z=e|GNaf|ZS?@P+Lf@ctQ-R7Aj<*mPzEe-|md>#R(;hp2$0Q`2!48>#Zt~Jet2bxKX zYC_5XlF?98SdkVFddIUP-z6SmqQSzy3j1TTxd|ui9H!z_0sB7@V7p{&TfY9qw7U#n z39N;X{O=ITO@_&BmXLg8{7fW2!9YYIaCK{tPY}}<0=FIu=ez{C6NSJdd%fkk5LNV- zJ$_gm|6FJB>^X3vo$qj?lbIBYSgXw~5K;=9o>-@UVqoh4ob+DTu6TGocO`o--+{mG zDsSUG6X?0rai$+wKs^t%&$tkIG}TYnQ2lE%)!AA%1<}<^9&#yi6GjM!A{|s>`QO_z z#{oD#nTO8nHV@@AJoFWrhgh}?uV8xJSaIkwdr?=tO2yG{ESXlVZpnf7c(l#2A>vzfSaB4USdFy<_BU=C5{ zq(-+n={yZ5DRa+M^CHdxl+K2NqWwwc*3nSR+2{ZqpUguycbkVcXn5#1vNmEolyq*y z$!{=+Nv)tVoQ6M}5g~Ks?cL@|U8(Pflx$(^EGkZB`5XrZ376ZI_M1I*%JkkZ(f>XR zQ=D17fD12kD&B#Q%~{>$B!MiZ8=H9B-SIM2=V-0VuvoaAQNK76d(_Tjojn=?c< zT{RI8+gTxH>j{OPW9NQjWYfjW11y{F*8n*zn=XAzo=uk$U{W?+%8jV*%hF}jJsK6N zl1;ZBNT*BpDCuMT5W^rSgD` zAEk-OYOPVIG`zeXh02u0v!Fr|zv>u(rz13la=E(SnyNN2KS;3&Zt#iHwKiU;L0lis z%-Um+_M^%!luLU{m9f0#d*O&ZTB^XV=~9JG&3ccGmf#qFp)z6>p-aQ?wOF)aB`{(Q zVzz33#S4Zj!;F!-KtY#g0MG(jA#*jcAr1xcz^A;Ym4r#P%cB5IVV1_oxj?ySq zD}@?t%^S4QI(wpIw7nJlOU1?oMRd&Nq1KJhL3|%mT-2Q?QGo zT#pXwz%x09S4%nf%gXgV zSRv!|h=1$`Ob}A4xXJ>)HA;%Ovt89WOEtBce>DFeu(QxrA1|x2W z0K@u2@3LI{g31Qf=K)fcy#{~yw2UjjBKchWs{cwAqgROzTH9-64UxKu-Y%%&zTE46 z9bPM%d#{p49EBGg6#hHi+LbMK!6|2qT|%caBAGR>f-$dKqsM0Ax50yg`|G*uRNAeF z7v7+5Tc6h!0$=mmf=>Hw1)IF4%=h&8?1s2^Wlzs84gjV=4bM3(-ymYShaJ8pu(zO!aZRXI*Io~~H!2*`-8T8O9K;g6<<>h)Y^pLTS zP3&WG8nSh8%^n@87N^PSr<^jb1F+UoXvUcDbZZgzL(NTm3pGQ9pUU*D&f6iGK)UBf&Xb zu^xXd0+!1fyppv7S&6_|^ynCK#-Tz*);q zcV$J#1njjF^gd(iLBmC#W~K;Z@nryJXe^vR!{Hj60v`hBj4Ajyp_`e44!v9AdN}wl&QTPxWQ*5Jf)~*EebTSS`Pbx;@=Me}^FnG^MIDg_t=znE}&ZdfufwqZZGC zn3$&I1<)&P-JVgH4rv?Wum7Ca0*tGsbFHmzTy@9|mqI+X+N?BICz%na1?SVMwlm4P zxy?EI2`nMD%{hnu+RiP|@RI+9f6kx7w{6a?^m#ko&QWc{4@S4=!$W2%GlesT1N&nj z1_P#XdMI@BGi<9zXxYF%BDF1I{}63NP*-q{aQ`IUKSUtr_YWoCKST&Tp!W}51j6HN zfDdo~5MJ^24^fkYLQ!{q2NHJ!cq`eT1yJS@T#F0YpT+FY!R*g6_NRyaSq^_-t$G;# zS>PNFf1D%X;|7?Q?wodxg|7hTc=qQ+__NJ9iT!vE{qV#Bl;#PG;Ng9+7}qMu8$ud# z&dq8|>lil-Z0)F3C+%9JWczjxY41>M{sdx;y%Kt-^4%$=tB@1{M|ad0=Vh510w7 zK4}+AqopEL^r)4vUJ&ecsY2)+Ld_GfZ^#;l4M?)<*4kgK?S;)im%!E+Eaf38CxVN; z4o+WhaPSyxe{p-;tlR2-mjiEf3e#R6bB6V zUw3ZIAjRM+*qnlKiejNY-qW*_Zzn^RF0#s5AWZdfh)Ce3JcvV0C;3m=_SX!FH$3@EmTnQy-wscRt01-DO*Y zhK8FX;7L{=aX0#~Hr;DLs{txt#5O2Pd#G3j%Hg2V!wGx)P$yz%E6s^vtkyPa@dubX z!zQ=S*8UP~LZsXT_BA#j7%|Pjx_JZ6tymH+@LKF1Puqj9z&F>+ zwmpfI4!q3ef4alMTXgt>eO-+q-6o`=5wI%^uq;*XRhNbFdBNDwA$;UosAQ)S&b{hB z24D(S9X7fak*6Sld#!puUg6bK^^Y_wVA?8;p$T}^R8P-EHdMO6@_HkEjBc>ywPsIL z_ld2sqfOXqYI}7VoY@#syce{8H$sa1J!S@u z4%a7#>H>8Fj$gF7vg3C#cEjiHH8=Qa+`YsHCLS;0?!~#i5*z$705f#=CWsBLjO7U- z#ByhWhzQP>35FX9{5YYX+`r?FGVjBdu*Hhsr4hAVgrh(>DE|ckD;{6!g9!_8n3Bhr z4I{S4_as@-yXFHaCX^=mcO&jokoEHjWF;7whpg6YvMSV!10flNmoDCzk zYVX&nc8_@NR=b`^k@`;wOED2!B9NW{K_1d)or$<4E1D-@#m<@tpCcruiSRuY(?s~5 zO8PF3pZzO=8nUCj5;(&5M%6?#%(*v(iI_BIp$HT4Dgf3U6XD0;tTz#5!n4jqU`t0# z#O(-JHW4N2LjnybOvES~Mr;#tmun(~BXU+aFg;-<<1=e}shG8QMlebOqRw8kc7IlU zI!nyjc5gMJdd*{68ug(_qb9b%s}Ci7lP4v9llDbqMcJesuD(yTXn$wUxG5~!=Z(21 z!lFF|z|vZ@cpKb(2%Pl>?K6aCok7Evju^BbBVgH}JxP5?p!3kPoBu?qywdxhTle@JOO%UuW9&IRurElrr}c0G)N)PnA%!;BGM>alGQsr_Vt^C z-VgiC!J$&$R9o;oytQi%Fbm$6nFA~jz|z`+HL)CEGWKS@AvlF_tTP1I5=QF;^5vsdN?nAkjiGw{=vU*{B8$nh`o#!a)!)~fvtf$4{58hB5HXj3 zEdWcazvBg@32n1paW@FLI>n7G9Z}qOBVbu^Url{TpudFTuCQUmR@|q_ikpPTzg^4| z5K`DN?pGA``y!B+V4$;CQNK4U+RYM0ExBow-GVWv!rG@sj5!sNJemBM9Y;{Ljh2BIka@y|)&LDP&EfsjDElb6v*s!`( zoJKU{u$9uVoFayida2ma&bK&x{iCI&y9J=b)&@Ek$nsd?|Wfb^$k7if+j)Wid<9OQ5kSS&BSHPWz?kW@2~P zQiONfvJ~Bi4XaDh1ksSgR?4Mlj~GVkrD$jVr6}F2eZCITa@79r*pl>c%+%#z^YmSk z-dU97Op_()B7b+}zZjZw74n~tU3fMX(Y`O*!R6&UD0b@da->fcUs1l7T|Ny~ly7Ag zl9(0cC(xMbiqe;Ab0c{-?H7@+5r@MT5xmouMdXjzu)2tRnP|vi-Q*(juVNUf7m;%U zi-`Bm9nDPJV|!BBw3{b3Br`xo>3`O#^fP zg3R&}WA0xCjhUMJ-c;t^XWg_n>dzwvhZ%Le(-x!tCTv(W>bDXNIqaG=>VGeWk=m$t zt47_Mt*|OezP^w}PyaJ!&L4?kWsYG_UvvI}qGocMm~)xzO2xL)nR0wI){M(!*UYW@ z;utjFkD`dF=6fc#%}w`X*~QSnbpJ`%SDlzr4tPe5nl@__Zj8s)3)+DCCy@ z{OmGoVCm1xEI2Wi{$gm%)Y6}w%1P(^oAxIET;g(=$;UfU7Al7>`WDK$4jWcI_0>c} z4wqG${5~;^)F!_tN7+)c_*s6)4F2vIcIFtmWak}NK1^lja8c~cG0VYs!*Vns4_Fbk zQnNG>eZb1AV+#eQJz!-rwv~(rtb`Q&cKpfg*a0i+ysFFnvci12vsI{~XzSA4zxRuv zi3*3422BMk9knjWO;w=8L~B#-med!NTlv{c@5z}Ah`)@{x-$2GB64<%Ytc)+YHi3( zqYS;buFu^_invN^eeTvhU}(}nC}=;~x;Qrt+)Gi;F?uU39(az?+uXlzcmKY_{riyn z_nq$Fce#Jx?f!k({revG?|a?9?{ojY-~Iam`kV2bq+xaTrGspd}$OY2RKj2kyrzHJZ zZ@BfEP9FG@-pvb~r*t74YZZ2SL6!sFXTup1bv(2RPWf{-LxZhzaZar6G`noixK1pe zeC3R;8D02aD;*L`6F=-+(VQ%a&H33DGE<&}YYsXnpt;yP4$pd*@AZk>P= znMV7Dyl+-sYu6iiM9s=``c|)AS*;ALgyk6?p?|{hHFob9oB~tYWj8#IuXL9Z7{7Np z(Ffu_ktt_h|I-OeTFv8ipX zx&HjqoAyo3wbn9s)tgv$!3yjALAz1zZ&Y^mH(+e`TFZaRT6Vz&a2lGxl)4F6XwC6{ z%JHP7ABxs2=c)i9Gc2!B(I)(xscBD4V^RC-8=#L;9IUz(9uU%jw2lu1eS)}y1~k{> zV!yFdbXr>nlBjK-0kXCuAW=v962&J<`JPSKg*p?G4)W@DhM`lZ0v~qhv}ruQ9-n_P zXonNRbLRpiK|m)kpc?}N5@(UHH6rAAk}Y|Lu^-9$`}D&YOFs-vL{9_)ORk`HJEts! zo==632nL=Gw^}F1n4U@J-oxOLIo@nfI%ncfg7)MI*iQ+%R-OcO22XeShe@X!@0Q`N zi;rG| z;}h1Xz1O1ix!`d)3kzvj9yr=#x)aNE*I|=l>=Q{a^CWCo1v7WCo?!ZelRQXM=`ApL zGTZnV=F<&Ydxz~&dk@T0$%3_Rv{5SKL2}mKQUgwft5)HOfeD(tfqHE>9!Ul>3O}(1 zD|_H@$kD;Z+!7qcI993*2BxYrT{4E>#MsalhR+oGmdNnSHr6M`K(2*CmBEFvkWVF4 zm=W|_JPm_`Eb$~b`nNb5tW@1wn!uy;tbKO97T{`u?K0Ng)_&H_j$qvdk)~>6`rW$?6Xu*+>>3$i5+&l)iS81OHe4R-d-@gf%74~ zadkT%37GFWJw5oVo*wTJ;rNBD!4DNX?hoTaL{7t7^@bgv1L$y5OlYz7=q-1IjEv1q zNK?MMqpjJm1PZ{34htx_D<+vtqVY{YV>VFCZQ|){db2sVZW9~)CMJmrC%s(H6LM`e zC&p|(!R!v>;WzZ@@Oc>J#(tj$<{nD!}d*M)k?Y2oV;BI!G#}pB;0M5>bvabWXl`GYk~R~IQQV(q6bH36De+- zJNH!1i6ro+@K7!ZltTPi-X^3F;~W+u#5uHaov#Oc`3%SuT8ytP;ZEx8i*727j8y|V z;D5`6L0Ni4ZuXYeK>BpuRf$DZRtU*a*q(cK!sqp`b9~d%xlP=s9P`Ngx*Iqo^I`UmXrtw>vZG za~6FbL7%hfa}IqTiJz`<*oqrEDXC;82w>wz78D{#bBl1;UR?RL;EDp##)eb~sFl4_ zpYwnPVrP*%q(V&`3aR7|sSpDX>X6Dss5TqWusDC3-PN^!(!p>1kV-e*b4U{qmmySY z-1#5z=-fP$Q^t<(j0eiis0npCMdJT>yZ|v23<0BBIXsp}>FhaF9hW{W0 ze-9k!-ak-l_QS6LVDKP(MDtzbY$YQ3^|E(oB6D(0Afu%t0hkK|oo0^3w9*}28R%v* zEE*FwP4Arc(U{=KXu-)Am^sk{R{ONZyqHQSV>EZ@>f-BR<`~W0F^xs}VHsjHNUQEp zpZIKw$fWI5D<|;yGUdDik1~r7_hD?R*U$baw(Ww4+R)*nqVd*TD%%AKGcp zVT5x>Y>3+rTD8%Bh!_k)9A3I77+DywF*I-AR369p0)X4JyCpkKHDiJ?ooP!Y6aMeA zX)t!RWH9GN*svPR`4;O5CcM)C`EM8j#zU0=;;*n_+Gol^!&;OcAipHA+7nh@AGfW_ z5D1wJRtjN*oD#_1z-U&~u?#w#er!)qppPK3uBkHCIoqG_#uphyN>xKrR$iLYOE;*&G-RhyOV>(PkX}EPcj&9!B^Aaj^`k zM%~!3i5krusMV_eZZjT+7tb=`cxpidGeP0qAt)d`F1v{!{P{q7F7cBf{FC!GAte|m zun-B(p^6fO=j%*BpiDvdYC$sMs;&g#W2xRe2Ue3H2>)yW!fzb5%exa63c}uDEs^ky zbZyqsO$+|h!1<+WqD)}zSsDQBr<@w0%EGtY2eVW#xF0`1^Kyy31oyc!EM!*km?K;7 zcCLV-rUCcyIRWm!9Ipu6r>p$nK4EhN?h{_aEq55We;i6!F9}kw@5E?0KRu=4AF+@> zQNq0w=Vr8<2^jjq9_jKPVXoIFkV~Y%AI7WV0RNBb4YwYcet~Mds)4;;e{;)ZEXxgLwoPCoy!2T0_us_(=RABu-(>2B4)@8=}e;dG{w{t)gvGm(Tys6Ti@BU@{N zH`yw4Y@VUz2l^9-rfqY70HWA_pg-E~5YE30xTNCzL6&+j|8jUvgZY)I6I-z#GVKD# zBR$NY?U+F(2HAefgk)8AAqllOE^8zp{vXH*6%g-bJppSv4Tx`I1Q>f=63JVS4by&5 z4jP@#)EVPvV5YdcD#AN7=u`R;mxlN5BKI=W{e(^RHN}o!Vrf@H!@1x%iKQV6vn_EN z8himY(PlKbUMvr#4Arn<6B+Unn%x3t@o;chR`x#>G&B=D*c*fb2%~*Y1caXp59N|T zDa5zrZ9)n$&S4=!tgV#Eu^9;nb2}T5DN{iBVVsTPcCHc-j-`6@Y_O(5K=_i-4C|p~ z-Zmp(P}f?|BE*+(KK3sQ0K0{?Don5N3O)v0D;S`S=NACzIb=uzwA_smGNkxAk*#+- zuY{qd0ci0#0nmO6uLz)}tNZ{hVJQUA(iWQ=(=dScSOREWf#`Ly9M2(jy&R~7gC#V$ z)WjFLAv(B@IA8X?q1^B+HE{@@%@5BK0}pC=_J^oSKY$M(p2cqzcoy$Dq#d~Ta&XHw zweT$J3fT6MV&T~aAhS?~qzS3Zki^6tXBVDr05YpQ!W`wf9|7Kw0?)*&;^5iYdc)Ha zo^7bS=@2~2`fM9K%X$e-#txgK0{|c612cnX18q$OJiAiYl>G4QlVTbx0G>r!BR!%} zup|baJxizcK!9fhBIBc(riF7Z*V*CALB!OVz_TITcQzvl{(ypoa~1?@s4`qGc$2L% z&&)Hl{P1kz(6kN1nLwcD4Y#kDjsnjHgoxnTQ6PfDv-~L!o*jedG3Od@}G!7y@xhZ6Zi5z6KQ zXz=y(sfjkj*PqsB%;#amavJKuxYSD>`Xn}NqCQpJ6tN+ty3$I+p5C?D{2IGIMIH$da4+ zst}jke08*U63lI$Zp4XIKsa!VVGavM(&J}uZZ4&eNILg8g+wcEX=Ll&&M!bC(;(^i zoIuihQNRgFr>p!(I>BCqq|e62xm}Mz(i^>s=c{EpyGT0s-(wSVF$xJ`C&cRjU8I_e6z+#3o)($Au> z7ak6>qrWz~!+S?qsdKWU-#f~i1MKpbUGU2;@0UvTlP>v7=Hd4vPf6XMfmg-h?mP5` zTOXKyY0=3?v2+BBzdD(Y?D+g8F=dwfypVlga?hcdec1edV%n!vrx9C-)iv#MHIyLb3dCKaJSOO57@!Wp6BG1v_PS<{C7kH;et%RWTNy1My|0# zC8Gm3W5a56;IphJU`(f@1OLGYFdnKzHouPz(+*e;8XfJ_(Sg%3xjWN@r}_n(=>J#j z=q0lFYiKwZI4O}uWMH->RKv!E;Qkox^w+SiDIGKe=v$m`zhpZ${&dqH=xJ+^K zD+`hnSB)i39!qs7PVPkHc%wC-lT(X>qppB^zM~)<{PBc?yQhIeS~(r_ zw4=XVtu?gNa`r6bm(#Od{wNul{OGV-WzSlL4c8_0 zH9r=eI8<%Z{4pTV^SRrXqn>P+2!EdYF^)e+&4Y(I9|g~An6omqVoUf*HV2t7=N))t z6;$qSxF=VQj*q~h9|$_TlMm&VOX5%~Ka+hg92W|C?X@we{cS_>Z%km*U_Pe`p2tUsFd1gsAp_4p|QA}T|6d7=y_;3kw*7Yqex zqB7cmQ&+8$RjmP^X%3L%4JgK5oe&4JHsR1+s0reJ6|SrPEY|Ij61<@tHB;7x32V?E zDvej0mVM)RsoKD^de?YA56t92GA1T6r?H7N_O`=B=I{uSDIyRucWbF$0^x#ldwd9( zf{W@6HsCeI4p@TOXJf+zm`H8G{Z{I5$c+)Q3`b2jmwTtC>V_)J1f{cHzIb;#6*yi_ zJv2MYK(m*)q8?)Wep<2o9`?_{yBHb<_R?%0W_819SGP{?pX?UGhBu=up%WP+cus%| zhXd!iSkX7Er~a6pB7B}uZ_{1wZuQ5vgT|Mo34`#1Q^H{=fd^c%69W(G6wFwjVFqZ@ zW>GEwtiQSn7nWkRfX!!|<;7M zH}vWBd6;E+aczmz%CBO>CR)kX*T_|wq)lIVe_7D5)K$}ILZcbZ$`%6%TQ;4Wpe2`M zH~VY)Pw~sh!-iuHDVNL0V|km9f{XK3h~VbXKpCm$TgZSMnMUf5|9GJ*k&M*GQoZ>o zFpj}$Y+J+|ZQER=!Ce46^(aIoNb zdpz$Jgz)ZK!8`AK@o?TrwrK~7hp)DQ!glTIMCIn{PIGfn2sdv_D~YRDVXX!LTD(eu zm3Cu+y`3d@ge=-=*Y8sIa99TpHPW zw^;DzjMZynaOUyEWaOFfxG;)blWWnmQmzSI<z?DCi?YP6^T)>05=O{4wu9zFDXBz{@G|MaNIUFs*a=Ih`%OJVZ>PNlr<~ zEI6M<68r%L>l_BLTAu~#yN*#0u~q6@d4`%lrzCNx8ocv*Akg!(ry!@q=Pc!v{0fLs z-)W3uv6oZwYk1xTQz7<2{o=`fdJ?lE{FI8o7RY6ym*U{zP z-Tz`@W9(qcG>QkYVPSiOfc}p41Oi$_8igOuV<83qTQ<}qKT)VJEyD>%V8et0$U)=g zB6R{qAL>VBFiMkfzMaVWW5$z{isgw!`%i#|a|H|}+K+6_=A>vrfO46BgOZk zyiG{)#n~%Fd^K+-Ie9|{tGLw-NRw%>>ZXE3#AUw>R>e}i`AD#>!C=)69wJC>Ol1rv z!rjn;|MqqzOp91DZv*}o9LkF4ESv(barVxfoW;ms;o%t130!9dqA}B!N_9RbJ3XHZ za~U8Rp5dDcVLgc*d19 zt>k5Bct$>a7a+7ZOgeYdA7R&quNT@(ba5=#d6n-a=MK+M6Nkbx`NK2Bz=JwG^Bz>K zcfp4rp22UF@C@E_NLvsoaS&jc+VBkO3amxXDJVR1BqgVeLc%@YJ1O5Ym;U?64^q`{ z;#F~Bm+$Bew_Y>-UgbqjbtK4gF7}i?q_RBKYq~VwVF8q|S$J^TzmzM)7aaVQhrE?j~P`FqA0~4)R}^u7Hh8AHq1zJIV>cQk+b$45RlFYyk96 z@jRRQr)8h|P)nf#O|&ujGmcq>$uD6&0TVh6lm8tfz}WYZaOU;caA45r;z zJh?H?u}Q5JJ5q@rR-s`-@Ee(xZ4q)sOTIC69W~Kr@Viwk52du+jt!eg%i*BZI9E50Ti>tm!FtltNl(lQxyC!Hw^hzh<>Zlb*%+-R>7_oML z7r0R{R2|O;(<+DD*$}d!cqEa++wD9ALrnv1;&TGp{2g8qv`JU_p-n;~2->7AEH{r~ z&?W&Kz2x0`j-l(9v=rrSnrSG-mhApXyL$GCj*pe7{P{WpgLACiKeE6^> zextyac+VkCz@3kS8>Xp+Em2p%qkUaLu;uY&)5mJ{=1{F#sqN_BQ>u;!Ak4rsUG6i? zn>piCz#UTIQ}7DSMp7zb-0nqYk)NhF+1#>!rY+e}XG&{(7ZYq#7&`oF& z!mw$2=d{N=gCnDDayIDmM9%~2(;Ax!6!bD(U3@*vjDlVj(^vs0DAF3~1ch3M7!>p( zoz~U?Du9ImqC+}Ad_jnqI}<=Og#C_E>*X_}!{wh+KUTc-8cunM}qg!Kf>3swbO zud*n}8YsRfxiVHAZ&<`DcoY4aZPs9|S}oOswG|6!kFn}?YyfRxm0JxjkyV#&tWS(V z?w82xZ&*})veazaBV$mPvS!uoMs1IcSCTtcsR5-EZyc{R?YTk#%M$^?Dy~_^xVN{T zakGSiYK-eNu>Y}Qhbp1kk6^MMG~j&I%2SEd?7H~AH>JU;lN5o~K4M;RAFi1oc5ZIMpK zc_m=|Z@`6In70J1QHHa*yIQ>E5o)5%@s_{p6Yldc!gCCD)?MnQ68{++Hc{ePL)BVI zR-KHGxVR59@i^vRfPw;03X_Jm$JXnm}$A~D{p@f2ZN4t& zxg7XdaJ(j-g9~yArc6cW`x_xu$|fkX^=`+4p{9w~;Bz8gQ^qTb*U(k|cn!g=6t5u& zj+<9dg`l3bjzhud^;hR!0r+~GRWEcyPic@=Y!rtm;l|ZD8!a1cgK|f4sEI>SocvK7 zV&Fj?#i^n)Rp7&q;@~$*6bJ7)q#p>(IEd#=Z4?J}1zhKA3X0;0KZSU`%8T&;ioLb^?#9Zk6V2h;Xy1_c&B|-xTnYqvSDw?idiBa`Wnd*tA3Q?;1OV9X z9V?Z0mv-5Wm2Q-Br3p$XGEJm1ur;Lm=< zgqg%zLU`_c14-})6s*HDQ`HPN`JBFDtHO`-3?qM3C2<%**VTC^5a>Co?Tf0&iFef}>vi@u9wG(_Md93@+_ z8ny9y+3r&g?pa~2AF=C|a%tri_TK(yfFk+`q>zFF+hwA3*ryA1Fl1ci-N-{B=YpyK z8)RyyG4I924pqWs$6~{@pOb?|r!h6=eL5zyqYTFg3-=dO{en&OvSLRsv8pqm;aqT+ z#Hx^i*%mqta6OuuXfxotsaPIL30jX0n@G@nl%Bq3WyIcB8d8K6Yo zf`ml_Vq>WeO@FTmAol5a%wgSbj@LyA_;}+=xGX)gPNdG`bvRf%v=r|_{yhHKzchf; zcD#3?vtoh017@LM7&o5(b90HcgmJl>C1g_Z#Ufkpc6Px~)4;g+oPcrPf>#9N(p7#K zmv9(@acT3;jdmD}E7I;!T(tTj3hEOJ*ixSy1#({R`&YRETWaDEV4EMXB?cbUfbGMm zHt&QFAF#!56u=hmIiv}==W}qYIJJN+>I(SY?=J|jT}072%0}AJUuwWnyWA01?svKO znIH8%#+LU%EYUPB5k;IPO!F4zt6#t5ShdN*AFi_F+@=wrLNw zsiUHedp2(VW&-twu-HHAl)Dh6u3V%f&ZMOOe0<#K6iZZ;psojXp}p_ zha+5(Vm-$VS2G>SXqF5v{0TKv4K7^F#t4(s>EObxi~v(V|CNioW_00yj>L%n9(y3T zL5?29Fm;qcvot|l#3d{FaW>blD3k$?gkWC^4I9Q6kagLdEG@q9ENY_7@r8$q<)M_F zw_(F3vNLNv+xo`G72JoJczm*;p_#-Jyg?`l-RLbO#t}XW59N|TDa0Sn+k}iG;2ahr z#5pXlj3aPE8;~i}IKppnHi`pFWI}f=)tjMwj8^HKGOo$XQd6~umIl2wVMD=J^Bg+# z+nyysBLRJAfr8?j7uqHql)nKV3yuWDa}cWV=a4EH3E-Z#kSfI;k8Hi$`3ej*O(X!H z6On-9KMPkB381U|kpKepC=x(`4>zx2k$|I7EPBb;?-fv@w^j0zx#d)y9Fc%y{78V(%v8hys=7k>nwB{Z(2Qv; z3Qfuo2S8dQ-JDSUkBI{e>$J8GIH4;f3UIs5310*vX3ZoD5W;xp1xP|<6yQirM+B~@ ze9u;oJM#=Ee*_?LK$_b>00eq&ZTnKcLv0M<|8Ir+LI?0av@?ihWgvpmtk1~-_x5!V@^j|JX`6C_0ItTn5wy|rn{bcurl8`e;z-e|4>m9185dx03Y zjtq4_K3Zuu)@6%m)pEA8#ajIU}G*458p36XVt20OYtTMD_jF_ z=sx{u>FQNmynCzVfS852u6l^;nYj*;NaQ>GiQqik0p82|D)*WCeX0HGcZ67mH1+Fr zWb3hFhbn^-Kg5O!HIqvUZqZW*v>x<*CoB@BE;6H@6|f-O4)0q@4JX~tqTzF04c|t( z?W^e)uIiW4KZoJHuEsL#a})i0ur#4Y*@Km&=J)jYBM8=zQrs3Mcz-H(He~gv|I!bu}Ahn6@qNy(M)x#YYIS>fCRkqhVMg=DdwRrP<*vIAX!e z&uN|J&zT|o39}cz^zjvc4X__VtY6T;-X`Ay*V*yhi)i`@1y5LChc}$j>x2? ztNfX?ln6&a&nDc7bC4n|la>CeIrQSIr>|BF%P>?%!7A-Y#D2q0K z7A-OGpw6Pb0Tt+(Xkwf{&F<>jKk48%N)|2Nb4VvJt;WG@oT<&CMO^{g{hordXy=m` zfZjJNTSlR#z&&A=yTzveHslMb>@9dzTn_DX^@dybPQM&lk7FH4p*_#*EqexSZ>kJh zul>*j+OQdU^R!Q(^@o%re|FI}uabsrWh&BV->U0^j7DB{9!COaSloAqe>07JIHs{E z&@w~%EYce3+k|>DG3m2!)M;%UXd+ig_UvbLM)(pCF=-~*vmtzUK8++qX3x$EYKQ=p z<=0FGzmaD+`EzFzhoglU?gs+fpF107Unq6<7tp<$IxE@eWzPNzp3pL9l_?Ud^8<{} z;4Y-koV{4BLE%lVm$R9-c5+dTGGY2X8>F!dBJ*osj}5E&wZCOO0XsXL0XF*!g?d{u zBs~)wrrn+#G`g3mGr*`uL7bTIMJf4lHpM3vJ8t!NVVo0Lmukqpyw%Nmd-(=h#>f<(k+zYNpIQXN_p`DOvj2a6)d7*0Z3 z{rhfJWbfY+h7Ht4aQE?09oc(SD||4uqzLmayp-p`{1lux5I-}f<&wEuC8SmHy&~1A z+qn*gnx;qsJ}02vyYY&OB+ylUXqWIAf_7;m&kc4Mv`es0uO~kmvKv5!Vu4-io1;X| zr0-qj26m~5L%?o+V3!zpPy@RUp!(boA3m^)-zdN?-g8JJaL?!9R&i>9UDOruydNnD z*gckj-SN@J7`$<{qkjYrrI_HpID4YYeS*2)Uql{}`hFU(iUWB+r#IYs{qzHQUG53i zbOh;L$GXf8_nw^!?q!{XV!mM$^p0td`SNk)0Dc$yz;B?bsX%{!rz?q%{beqm@aLGu zqP8L#&|joA()|hD)5M^^zt(AO9gxCT2n4+FiU^iUcPV2z+)OLtW2BOaQ%`gRtzkx z6%csZCL7)ZFPGp=@D={+;dOhYwg=wEcJptC#^JCZI8$$H)hf8XD&dHlqDE%Vsc+89yN-cZb5$9O|b^HIh#RUKob8>T@VKrA`L)Ff_fn#d+& zFB0bd1xkYob3cg_oxRH$AH4_!w?RLKFPgd?-Gc|E& z*PMUXObk4zcg-WHNDh4XyJq}G*)`)mhjarMM+eu`sogcBu7CwSvY=hFavqrD1}21Y zriF}-5M##qRmcxg)tBK_aXaKY^oCn6pEf&WWJE{y!&7r8d>Hc&q?5WaaB^TB3jc^M z?)mq+pNMHJ%3aH_*F{<*-IuI;-S_LX{@*(k{#!Z|{MnC~Fq18A2+y5wA_$^4Y#uwmN5$w8y9 zm^!y9)e-MZ98&#)O>}p$qn9ZnXF|idw(v4V1R0oZp>uV3gI|(j5jD}~45y2V<)M_I z4cM@W1O?AePnGKw_z@GAXBIS6ldPuzeQFsOwDO7hPuG%6M6Bzf{*xN|SGjRoYT^)1n;)ko1|HNn?R!vd-US~%PK)0tI4$0DNE2|+=ipXxYH?cB z74W^ET_{dVCyp{pA9WJx_mLl@s^7$`;&9sU=nc1C(NUZhO4mVHc2@g7B}H}fm+eRR3s%G_HWUO zlsPGBZcJlQ`-2QXEz%n4t%PngVv>^n7NY0}lBgAui*#!C2{Qp|LwN3-f+R!(wW?-_ zyo#Ch728Gk<{3tQpf+(B+7|MUAZ(okY6aIQ;b=YZh5@y7&&xB~2zTA>;5Bm~^Md?r zWlDru{tMHUOhE0u>g%W8sVzuCpI_q=Yg$sK1yubLr?ijOnxf(*o&`EqYe2nAI%#>3;#EYh&t zPhJwDHQkA2LjSbvLLX`)RWOF8|IawvDx`b~>j|bmcpS|jl`HiM9nonqWAJJ*q>}9& zwnuF^GsG%c;MR;bN@Y4_W-lBQGE}Kn<GDVhvXIR0eH4-lJ59BW+3* znP(=Zsxw_OhF{0nVC-{B3|}&QrqH)UhF`X^J~4)e@r>8&_GlS=MGN^2V@^*G{wjEuM#vic(qhLgkI{IM-mv3q3_9GD z(6gA1(a=Z6#4w~OKQ67U*~zf4#IIifG#UnHaC);jx31xq!I>sC(dOXH`}FDXc^Kv6 z$K=jR`FB(}!3+V2{Oguhc(9leRG2S4QD)H#SB?e(W4G-m#Kq#(!O#V3#cvZYq2tkr=tHX} z-IDIFo6TP;muusr&G0wP{j~n&zWR_=ZA%YA=frY7>q~_PQ{wr!Fqe4BGh=B)nFy%~Co26)2yc(eRjS@`3dk$#=;xZ1xIa3=mp@I2u#Ekj{JHK`o@C zOrKbStBmX5e59`^dZ!oC*Dneactroq_7k}-wd*svPJ`2gz) zCcM+Y_`fj%jE5?L!!KaNw5OGWMt3?jFn&qEdg0mEQbtqDwjWE;Vf15rdIEg}5p_+S znV39QEbk<^{vUe7j?YCOTz|3v*R!j8A1~_=(wo1IX=XPI{{DR!MlSSILYF8-*&G-R zfB!5s(PsR8-j_kzi`$e*HJXDBo2b#ufm*HV?=ttpJ0r_)o!md!?M%SNZ`fgZed1Xr z<5ocfGeO_oAt>NGF1v}~`{RK0T;eCe_a%9okP?g&ScnAYP(=y8^K~X5P^RGfqnU_oKC8*DxVIi}M#~j&ux6=nhO#|xVa{|=A5wGYC z3A)M;>Jug>;WTc!!$AGxQ2u(!59##0#DrqM*N0J=WhBV^k?{bG2cW9 zUy__1XgA6K%nkKZ6NjMw{7^qJ@SukJ_n|WFg%2O<$8QvYfO`qkmw05Ko$Ct`>Ww%X@^mUavm!4)dRr3g+j%grfXmbMw%&NBIK-%K`GA;Dh|Zwx$B(|BS97{+2j1#{Z?5 z#v*WHCj-Whv_|?uSuy@k>a?~FOz|rO;{UPE4qpx;rp^T758=M^7?KbP@h=G17J={w zZ?e_p_j!hvAK*_Mnzp_D2oTtQfIr&q5WYYAD;(bsvebk3kA&wmcwd=1;gWxh@f;kE z^zi-)58lUZr#tEJ0tGr2KJ4zn`99<+#30*GnUEX}!z$1PkwExIrBn;n%x66TYdQ^t zpTP()_O>K~cN#WK`#?EpbT(51;b&~mJmu+r!lrsnvE!E*+S$->E*MT?Xvo5BOPq!R zpF&Nv83n$&SRP6lx)K{Uks&XEIaO(#uq^Cd1r5yv2lfV`0KsUV6M^6|Jd{fUr4aAT z+k_NioWnwdSX(KRV=@v5=5{t9Q>H-h9XK1s?N}uc97}a*DV$3X2qtJ(1#gFzdE1P@ z8VW~w(Zk%G+P^FS=oZ$hFuh{wyC1k#Ffbd>F96PS$dCkPxf>&7Nbz+dTkm$pVW??< zS$s|avmd}K0%qwdKQK!e3IVgU#pcE|449>ZdwN}g=yfq1&mnd9RV{J450{#FSeEGE zI^w*`_l9!Aved*OST;W_OAI`yVcCzNDt!b#d{`F0QD9lT=a6>b-pj!)+tk9cs4L(p z-%u33 zY#S`gdI^PP!{+7yz{U8$%wX9-TT=ncF8pe=>ScyyPl#zO0^7?1%Ob6jo={d;cAie_ zfdI<}M8-!kcR*1SB@3x_r010fkSpbTW`bAf>}V$}8^V3(EF{4n(2aosEvN*B?(Vzk z_08Z-Hng>QhL#_eO&prGQJ4h;dR}n*s+%jYY=Dyl%U%IQsA<WtFKD z8?ZTy=b2#H^F3HrW~SPfhr?pYmHPPTD5glm`@V`tVU5%V?SQbGHN}MJ>1;s8E{cS0 zXJf-c>ILhzv!12^w%yGLFdnLe+=j7X+9k?CqcfTsw!N6!0G_^_T}brwwR6oArhrpM{7pkr50gFK1u~8%9WP{!*aXu4JH0B7PGvj9j3hMEp>M zvbg{nY;98$ZHBGisLzDquwfG&GE83nr-BA%0$S_I%eZ(YV%8skhjNLZ zl;HQ~Z9+;gPGBJtoI@2QX3ZCwfIyjI)<479C~iA1G3!{WLow@@Xvxc|ts+Zi=Bq+n zF7wsV-bpZ*dAboNRsrFK{5Q;D!3cW%?3osS=N_k!XvHm!RJm^Fb1>922s%C|5cK(9 zgDXPN=_)^hPH-0?=!AxFyB>p}H+mJ%SIca65p?e5$0jxt9b99bKO%NUj%jWLotij= zpyx->iGc?-g1#74=~(#i5p?`ULD2D@L)wAcWCwTGQ;VRZu7Jz^wt^7!vqVI-)M)PL zuZ`~Lhw7n&u)9_2ne6Dt5~KL)F9+7;FT3EEUEVL1Dkoj?m(0Vz5P3@K{$#u=4sSnS zZy4$sT+@J3wkzwk0lVJZRo`bfD!W&1s+Gq_?9papF?BOZ5=#fT1fi!tvZW**@&1@TBTsO@O=N^%e zM8$22RF!UL5ezjAu8q$LTzflS5w1;F`EhN6l?c}+aC6Tx&2KK_m0 zDEK$tb4ZJDTj=0!a%%B!)D>{g=NE*3Kc4XKk;*8PyTmkdI>u>7f4K^$p#@XP*|U&O zPS1Av&oXE1Hsl+r^euQ*9LD`zz2Vja(+A^rIq5RT<4s3!?Tf?v&W>e2B^8z(-diYs z9X4n0pZ555!~k<()~EWIbyS;Efm6R#*CZc{%#2e%9Mf3To+blMjkHGkTA`bxn6lq* z)M;%U*y30SHvJi$ExtTNOrZ%j9Wo2fr;&t6YLIo|eIw6M^JCD7L)A9R z_XB~Ruid_!^kln4xbrW77!`MpVzGxc{|cVhux4dy#a8eEHV2uo<{fwx6;$SKxF=GL zj*mca8^LB*LI8Az6J8N{b_3EA;!w&)vo;2`y=^G&jVbKHgRw?R_1(}C`aEzLx(`B8 zR&RT|VnX?Q#t>tdNut@W$A(oj`?stoV14kQ)lU%sQ5mw!6J*b4gw^QLYuv<|E zn$>HJdWiA6r&xXu1EE5mo&XI4d&$NgW_9!W?RYb4^B8^J=5qpEI2<_7#frXRRUlik%p6P^VzV@(eRTlQxTL^=JLnRk*Me zs|9R6<0MCOvXUbbGPH7f=J|9*LWWk*#AMsUxJ}5DcNbC<83Ki~-Kad*1OHpbyL~7` z#X&aGw(iA-O>FD#2;1tOFgoStS>E=+wyI-7wHW<{+fod zGg9Ac{d25~<;7M`}FDbd6;E+ zaczmz%7?LG6Rl+HYkb6BUwA)X(6H21)7cJQz{z0XgoLbF1w0upDAGU?<9* zZe;cHz`K><4iAX(>Q&sOoGwJEvvq2xXY2S}c3GAo*cPOdElY(LAisocVY{-Uh6P|6@oE>mcd~bk7CYAVYPDN75i*-%%RWx%_ z$tzRLYEz2MkutSnQMirG0k|~jUts)A{-lyp9TE_NStW#Yh|CfkOQUZt z#=fe-qzbYB=@&UD{q!WJNBB7vfvu0rmLP_rcP4WqRw&64Ph92w(hnbtc)#>NsrJM6QhDR4WP^mKvvO9X2*GX%eTxwKFljqZ=sCC3{kQ&&=C| z6knXZLc~||W@6lQR|90Uid)@)G?_-Lt}94HT&iWXDwgWaM}ln)Myq!4&_HTqDq}AZ z?uHKdx3?={T7*wG1pF=dozZyC!ZGg}XYb6(Squ#p9)|Ipz;#w23Nvk~ROhqV>G@ok z%K*u+4Bu1;>!IvCB3tiv*1}NJyaSBSiLlIz@QU66rmOs68A3=YEJHvUUqDlbWn4+q zYFvhfW#q$m0Wy2Tq;og@5q53(dZEok7xxpKJ-D8cmz+B+LrokC%j6Hs5CaeDu*@W? z*303;56j>;N>~Q(IixL!lsE{mOl?>Obp_U<;ex_4M^ZAyC}iC8y_51ibLl^f{2*0* zKVB6VZuyYjaO)M*=N(?;P)C9*=VDLULn+Hsy`M|-92PhU3zkU@z zo@Utbvv#lLcUtrPcW*@tQxOz-RF`)j1kW54`9(})5r}%0Q=X94NRK8ott2KW@&ldL z)`28yg}hh$zd95A*^iholMqM<&z-*^36UX?nW|<8I9PneR)hK9&b%6QJNd&KiNnwU zfp5Ve+aKNt+7k+9oCds6gBgN-Ug+XOjJh?H?u}QtM*pW)q@N#H47w{-iLu6LAMaUH`33{JLO|%*Gt`^HfDJ>Oj z*hE?m2i5nz{DhY?@KGijw-z)kBhZ@$puC)cHZ~FT-VYDul07ND`|>s+#TRF<5b@R4 zxGbPIx1|ATG6lWgj<3s*$1Rw7<& z)ev*FAT&lSTaN%Y3WliT`CwYskUJYfHWZH}Qh2+am%>ofK$`fRfHc2?R|IL&Reng5 zPzZuFX$#BEV;H1Kz(y~5x1M9@<&`U#N9@r&)F+p7=kvbTk{hn1CJw=s`Qb`p;6V*n zeizl|Tkzq-mH3SUSK>W~Gy!)$4sMvH7Oq5H0gtw?Ah_~)vgu>BdUL2&t<-k(?- zRviqRo_9`roHIBwf^D)vo+o;qPoLJBbv5zvugvJ@>X^nNz_cvrC(;_}{Dfi} zG3e)+I<0UV*X5OgdZ|9K@?tD~w6|8@-B`JGqB&d}?HlsGS$Qo~M5@$A8!ON0TfKT^ zwKA}Bj2@wXHY!cKcdS(2UD~A_$_3jc^mdg)xF-6>Cf4FvUCla{(1Pk{xl~KyhNijT z7wi1+1tDVYOn}f3_B$6L36VhP!U%m4n5cG_tuov53@$%Bnm9OZ>v$><=y}2I%l?kB zJ%p4F0~IP#sxj3AO&xep15K6b6C1CkjO&>|({(CnS{|?0;RHO(7XXW#4Xe9cY7ARv z!S|qbsFC9P2-6Ml>e>kFJ-@aou}o&br#N>`foW>WUPVp%Us zT)kUw*zqR;ePt?fb(3G>%HxAS8o{=oY2rD!AeUgu)N{VS z5mKdWf+Ab*cDi7wY2q~aoQTtG#4C!^&{h684Z*AwriPic@=Z1jdG;dyy&C@6X(0;~XA?(@@7$SYUAXMWH)@`F^hhF8T!Y3h2z z(<#{;InW8_IOOXWOJJ5uw?Tv?oa;=U?H}+NTBDIC)r%IFcsmJ*XZ)@@0Bu# zTmCVov8at#h6+4LtL_ivtibasoz?>&*<6ZRA<5?N*O}nYe#C^C#8^Uj?z|64h>Wq! zR5im*Hm9%HYVfH%!^j^^NgPJdWp!Q#1bPl?`=Ti_*<5gqLMY#cuGJ8V;HVcj`7Yem z;wH+Jh>g%4jK5&x(kGi=#)1O4rql);y9@_14H4)FXT_GRMs2)aw)>P5dRAELN9=l~ zTv~aBy|@1v5cl+vM9gix$ufsHG+j0k!#oT4LZq4bkvJ!WV*wc{71{ zLs;+p6-kJMc;|)aiNN^S9kz-b_5IANh)H#k#6f9W(Qm?#+Yk6g*c!rpEnty~`!Z&F z@b6N1NP~Zs=@J{M?=TU{1phvu!oM`pkj4y7gEdsE6aMQZoAz0V`KeDpS@XTar6!g) zFGDIl92H-;2j?!uEYzh|HzY$t?)XmfM)0eh%U4*XQ8-kdet=1#sxG1BZD^*DYq;yh){-1QQ>C+vwg zzdEM*2n!Hua9u%}2LuVZK)OL1C{TZD0{=NlnMS-geD3(*!_$43(b(7tJ{;kS6ze%| zxSHumMzLg2;oH)(iYa*l8zW3kr-KS5Mu4$@FCpQ-!-ff6kb_3)OC40u3{21jae+#H zoK11P*l|n5wFV6vh7*u=*?cQ4oNzrg(dKZ%ON-^9l${nfY$7|e*0Y^%d>Fxfn2E;& z1r5z4eBcd2$=gOJAu()lA3T&x0;Le&leY;OHo!S7M2K@3Tp2dt_B9|=reT9G;cOI# zjmWS;EY+K#I*eApoD!?axl%K-hn5DNG+{%*Mf3bPbl09GF(QF@XmNq!n-|(97Qr6? z9}5Ql<2eY$^>av-1pc{$Eu>2E!XsPncHRv`O#}Sna{~DPFT5h)pRV!)|AgNW@J~1o zH?Lv9|IsKGz2xHe3gpn+A$d95^hBS!AB+tH5CvRcoX`0lQSN+gYT{5BAb%Ku7J z0se+c^cVQ>!vOe=5(dC~4(SCV0S*EPQyT_AT>(4)go45V3&_Mbs(1#D0PuO$5%~Yfes|fy|GreMsyeua@9*#Ba9L<9SkX%d^Kix{WDWk{dveNNy^RPSwHnrjRF1ReJ0 zo75CR`GrSQYf+OCVJe0>lOj zz3r_uhv(v*!Esl*#5sTsYp7ChG*^JiR;#tWK#W@^hPodgtuz~Jp=8Rdw>)~wU8L47 z0W0v!ZQhp+8$@xiF&Bx4@0XslYSp%-coT#bu7NjnpMJD-^{Or2z14C+%tBmOJ;e3Q zT!+9T@*Vy}a31ae@8x}!`%L}b*?#pqLM%g?`gJ;x^~qv~DuWRp!-fehlS>M2%~J=m z9`t=DtO2DiGNYaqupqh)uT@D6C*9AY;d5OL-$uIatLYZ5>X*_#hvD_D#xm@46a9Oz zG@%C7KLT6)<+o1mpX_!f;IcKpr^g>butb#NwlKl_cCoV|i$i@~Z`kqY1p$4EZV!Ua z-O+AV^ALFmVZIBmB?TP5bK6d4CtEYN@#cQ1kJE21Vn-0V{nC;ELg)-(-~uj2oVJiA zeA+^Wx+OT&ExftEPKTlTt0AW?<4`XR4)s#r+`@kcTT&dDCQ~~?=nR?FMN<87WdQ@g z$qQ*EZelkDN4tqPciPmBcCKRFm~o05rnXT`nchKxm9Ky#=Zd__uqm!K*#H(T_Wu!T zqRp}YON*Ubx!hia4Vx^tbHPnV(T3I3GqI3MxR9-B{)vKOxu7%TnTXs_(C|#+|KenO zCHjw;L1Og(89=$W49?V59B)Tipd>CKM;VvKV;ak{NU2H3un1A7@3jP?W`L)>Y zK$ZczR7f>PDKA9La|}dgM{uV-pmnC%5wC+GMoC%@-pTBUSgJQ44Z{D}5~l4fIsxc( z$Pn{T7pSdToe<~?WToP6x&j;IN~v1eXImpS)N3E~Y=^KAxmpmqBE;_Pz>R`)9OC(~ zD1;Ap@nh~4fCDh7HU4HKiY4?$>7YHNFsmEmip$qprz3h&S8iC<%8*^2C|5mx(vL0p zk4GY{b=I;qTb6NdPh&dOIenzlb9#KpoZcNbrvMDNTS1tba5-<+q^@4IEikLono@OM zKilbfT@o^{>q6#Lz|l2J;yv;uZ-0vp8nt>A*C)faRNj2E)4X|H2yZsT@J2x?!w z(ly(ba^@Jfrt)XTe{|SSI5UJlVfMn8oU<*$55whV>DiYCxMSFs%A19q=1q49Z(>#9 zYzwi}DAsHWu*R$@l{1g;G-uArwRw>lv^;7pb{A^JmWz0}tx#*>$KuYth6wf12IZwSUsVZm zw)?dOWzWthF95x7R-KGOO@VvDDtC)b{}A$pRCXs`6_-0()*EiUYWn2PdYtM=>g;)5 zZ`m_vdsAi3dhLfM&W6pzo2Px^tUsh2d9#bQxhHRH<@%tm)p;CvTXX&Sr#J1Jnrp3P z-ip2Kf)&>JaLiG;zfsxM-++@2;q-3*DQnpU7u?{v*Y5k>aL!M|B!cf>Rn1y*KAn?+h9eVR}YCMIq6A9Pw<2b#zgk~RA#oe{nSL`<4V)@%sh zoi`#0ky*2Iq@Ibyav^;3YbJy5%QKw(IkSnw(LxKi0)g$%nGLfqlrsA{=w3~km2C7f zX1@SWxS^J7=0L!QJalD>#H#!}#%FL7(r3(Gtd^SaCfCc=%v&0{s79GEeU%N;*!7Tk zwa>+d)x6p-v7UgPozDFFDI>sms4^7&7&c5YBnORdW$Mf?s!0$hCVWv!ew{VPg}MCV_dh--+o9PXNku$(|J7)AKeV!}BDZ;!9 zFJ%zsr{IKv_?a=ShRoe6A+3t<6{$|$&UrA@G({2cIRWWD3$Lgs0$t^YbP1OsNS8M9 z++c@6x&-(1dh(+ox&bsO7SN@>`P$<&(MFm9y41uWKsP_2OAI`y0o~`J`rHa1KA?-= zD1a{Bb4Vj_&*$J)acTiw)D`f&FDwYqJ(d97@zKT@ylJ(ge+15)nBcxRd!oyIg1O&s zM;?*-z7em`bR?k-I=(54?Tt=GzX9!x=tsRNmIAU4o(kSU6xOIUiI68J=o1?b4wCe!m;?dSbqoc}(jh z7=Dz4qP?b%SvdO^G8CD)efmC^vb%Cn(V-aS5M zJ;A!#ZZvE4KpnxD=a}){gZv^@9>c5RcFqmG;Z~__JLf&6dLyv^4VD!8(M3?&Wy0F& z?Vxsg2c!;DNtd12#7?W!gu)L4<4xP@7QO*}O$GXC`74clTJTevDlAw7PDsOoG}%gR5KiXBH{J$d{=heZDTEiksE7<4=R1Io z2_PZm%1}j?joG8r~6N*7?w8;*|47U)PCY z9i<8%??2O^T=$U#myb-Ga-k3JU7Z--;&3H080Zl~0r?nbUaQUCCps~_atG{y0k4h? zu_2ssi!>v{yZd@4xVSjNuCX;MP8*Ci9M8ic5{xiYY&iHL2KHw^ugBxpF6efi!|$|? zy0o?z*Mz6T`RfhNX?}|h?YG4;SpwPrsWhwR~5HDDVjAc7lbN7Kc;d{Xp!PkI~u0b?V3;73zJ-(oD0UVQ;y-sE~=_gk$?r zZlmTzWM7a@j%nV=jZpbAqc8oK3NkB43bQhUW+%r$-UFH_n)q9sK4U&gP-$P$(}Oz( zEL(WZ7}wkNLs;R^EujcvEl z6l{xWK8FTLXjA3MiY#)Qe)t7hjd?=lpG=dOW6bHTMizpdPvT*ApMnn;HQs@BeF%}1 zj)iORxc8w$tF5DkYkPYu&ECD_Ed>Eeyo;w3dUx*vGYD^{+)aN(@59%Jd2B&)(9cQl z!kw_e9<_&{SSxP$701L=Y&Sq~l=>JKj_1S(Zvo5X3uBtkAtzEdkZygJoMiA`I-Jke zX;U1|1(_Vqr}p%0g|fUAh|d80g03cDUgKC2yIvcig$W=ST$v#JW0hz%!}`GW`Z%1h z0mYzwTqGDaa$b*Ada?7Mk9TyiTW{ipAw5c^iO>6+^uhZWOOA<=hWtUA7}5W#%v@kw z4QwjPZfCIruJ+5Yjnw|5g-+g2MCTZ{G+g)U#7b!jb9XN3>A9jbV&gk);PRlzY^~dS z5G;eD$wN@f473`{H(NFEYrvPOjf_F!(J1OVm8%0u+Er1`H`OHPGe}X4=Vx240MeSDTeFKHaGiIX+JBQP;?+H@T?(K4$)N%#}29zfnZ>vclNTiN`+LEWF1E;r(U%g*S`2PUW__ zhMTY9x}cv!$H_w zyxARQ-IhKUEg(6hTRKLk>J7`KY%`XX3!+_sHEpw-O|&N}-sX=a;I}wuV-N1zN|d>A zjQ(@34d?1K6|?HBf`)VDX@t2GCkTb&3=HAdGB|OzvTGDj#_BkPndEyp^oa(i1?iAZWW=v%Ert?3*r`w13 zw2l~?fMTMflg{7Zi~WjK(g*CvH zvr?>x$#vF-h6__pD<#iXz-!y}3b^7*5Fn+7X8S2q)0>OsVVIgOjbK1fO>a)4rta}i zA?m4UCMon7oJ7;?9$LC_yk1A&lU zq@Er)my1^3_0?*+)%Ue1YO0Da4sU`h`Mt#os8sUTK*NP8c~45dop24Lv0%VpC+v;7 zm+y4zIQuKES53xyjPv4MF}%=Fv)OJJe07>d{qkl%7}IPHk4~axNH4e{o+(?=fJ@iio)h+Miv(ntt#A+yJb)^b^zO3X8&?T0VE~>DHCw&9QMbD$F}rYpq#f zEkpdRAAVT2m#u}8w`cdQfy!j65_GIr)vA0MCZ>Z{r7vOzt~!}JY8z4PJmKSC)NoOiWsCU(bF;m0wmV4z{YifPtJ!;oH2 z!_E^&iR54z)5tg$6r_<)67ujvB0k6Xw}RY+iB!N{1^6>aaBJQ;?s$85(T+E`9Tzt( z?OkgeuM z*jbB(PRpJOPtnA8QQ&03y442>oRB6{wY5djYm%$%={jxx7F|+F#g9KrST@F6AS_6Q181AoKbM853uf!@JVl()@SDYMKNZuh$z^tl7p8Yj&0oFIpwY%cFF5dV8*9Z52Yj?W)TykXglQ3AZ=X zFWK;`I+ea%%VB6jl=+oiU2yOz{I~fcA&s0dz=!myk6U|sw$s}e7{SA!&?ZO_7!{fN zB0~Vv`p3umiAki_JFRZmW|trkgh?ipaNaK-+POR?2kOd#d-9}Hj{q$U^yED$W_F%3 zUcMqdzu1|RTh?2lVVD)#PaUOlnD>v5MY#dmig;qw?C{YpCLC0oL*DV7F&*a+S-Cc< z1E0^th7*u!fV@fO8uf3wxR@+- z(p-L?L|OEGILspN7VoCEk~2{x`DhNS4Dtql7}H=5eUjEs9mgU~FE|mIMzw(J6d&JF zs=o0~e&30aE=^W(PF1F%&r{3;ANP^I-Qdm7`bo6B6gIuRv8D>n!)3;b6PRiIi^Q^z z%baWII2RVmxF^{`-qi`6;KeL5y}aX0W1P>-HXq+S#iH{rmUm)oi?l_A6On10?rS8p z0P#_Z_ZsmAZ~iHr7^CLI#0{z-C+0HY#C)18e-5oo@5E#wI8|zq>wjr`uwdwI(M30b z(*v1v-iF)9$;3(*a-Z!h`-`3XkbULmD{`n{r*dW&b%jt-{^LZj=1Bz9C91> zPj)+Zh#ZHQ4D8mNa;>_zGT0oR+Ssw*KUYM} z&$fsg-Oke^?r7;(aG+fTSjefeBNWtA!-q zpSR7A!+A%diF>Ju^c;p9SJlgl;q|{DCskg@xQCy?XNwC%NUnb}FNb2d{;|Am=I8qS zo*v)FjA8jtf-H~nOn=rcem|C%H!=MFVcs_L^BZtH#oLSF_z^!12zj)ZI0qkXhm6mJ zh6_teaV^V?yln<~p2g{LSB$IumG+kCG-i#pe-F^ z(9=54pe4^*3Wj_&AQh`ut+4R=Y`9*!erX`b=gen4ddq9^$wzOwM?5S3eK!3YuGhoG ze!fK;>=@%pooCz$SBm!!A>m=LR^L*pVy#Z>jclG>lGo0UPyGH>T^MwmUs_Rp))E}Cm)R=X)La=#pc|#CF!Nq zL$xLI*Onv(9?Z2Rq0SMS*mvW{&G>fU1b#dYQyQ1x$3lz-9EBg(;m0-j@pgRpEoiCS z(|AQAw^IYR(~obbAKp$sx}AP-`#7OFi0V*hRAh=eqcRE98NGQ&ozdG))EOlsVP_5+ zlc}w0iCQ{7Fy5LoVmC`@sV1Ed&4lgwBk<9h2_+7jlXt*EfAwVRh-Rf(wHuQ-+~;Ev z%s`N8vf><+YLKECAsri&nOMoYK-wE!(P`W_d0t+y|x<)uCRVb4g0+; zx!)t!SD{`b{0v=-jyRy6s%^Utmbff@E5by$lQ2 zlwj$BHzdQR;gyCo%uA->q!1dc%k5pI@&ucje>5cJCCQ}BM&+y6b=L1ghW*Y=?)PXo z^r2dtpz6w^Y=GE|i&gNS3<)SD6ENo@s3F~i3N&owpEd0Gxyc>Rf|uuQ?sa^_u-CoG zz0TYK3k@6Uj|@9KDn+Nbw6IQpYuM?n$(_!+vOXA)=f4{Ex-GfaIgq~%;uLUa=lT$MZ;m;q~~7Z7(@P=+Fs{|3Vct*H?Gd>QH`aq*As#4qaXus6!$sBXYGNkxxt}a?$0LA-g)3@1>4l9|C6OoPqDql{Y_kv1Do@@AuY{hS{5KJl~FKaP-1HzwLS}Cp zAHg>}Sik?DVZU3G`(23B0am(f_hUs=zG}?)g_+AYC%OMf2zP;D-)~6n`zS(-w!sV5 zP(y(+{$#_>uTJiK?l$1Ms2j?@g(et;wW_(+p`k;7xpe)B9XQ5?+){!m%nh z1PR<2z08n?TasxIVgXQ2SAT?9++#?@x@02aRO2m%-QSVieX?r2-;jvIl8H#G8lN;I zW7lm+)B^-rJ0jhP450^GLh6hVLlw;KgN)NW0DC_1QEyI=;|LFVoTMjhBSOA znTF%#Iw6>#Q?bI3ioZ*yB2E&XY}oyale>?Xgo_OcxH*}CL`m3YNJA@`h7^*p(~ycv zG8HqmfXIkpr*|fIdNL`20F=7=>vjn$=8xE2P?aJO5!z=+%NfbEJWeX)Fq}355Ixju z0tX5U8*&T%4~E3NCYhM!al~}>L*c-#ekd$u2X^?AhLqi(Oqn9B_+FLEAZ9)9H>Be5 zWGY0h7IO3zD)=QIYw~6N zGlu>DQ*!?&N|}w(GAVOl$+5A<4YM9c{>sb&U7FmnvKJZz5^&97 zBrG;0VNo&(OQckIB*1i(Mt5;aPB)~aH<=RE1tNnUG+nC0eQHX(zCGz=uu zAb3HQGa>Ga(-ESrHyYA$Q8FFEXf^@Xg!l@U^MjQhc(MfZeqjqha zd%j)&Y3B8#_affLu&eysS#Vp5Na^nixG2@Au+E= zCPpzH5douRhD3}f6S0UKpK5Iv%nqEZ1QA`vhI0)mXe3i0;7E#_3He|ItT!Z}JDGsF z#DYfEw#Qi4R~UA^IJs+Ku0$45WZ3X}Lpmms>9B|eLP-hcqAatne)}f7Jg#Li4;vEn z;bekNk07WHhs46G)^wa4o2+p|njT7~>9kOqAc7FirRNw@baXOBXGBpH$)=YY616dz zs0BwgB|6oXvlT1)%i$C+%X3pyil4;6l@fR6V^vq<6vRnL9 z42k+!GEuYLsyl2!KFhG*4Lt?fh6Qd-*2(@*!mbTiE_c8<_{ScM?wIOBykW5*EHT#Pp1*?)N z$Y;&w{Km{deMT~2N7K9QR>Z3q#~Tvx@?-);RLaXGLlm`3yqw4F+EPPGCX*==6GFH8%c7SVl5kft31Zho-UnsN0k8>) zQBYk2Gy9sgW~s^+{c8;=`b08C%A&7xq-@y#N0R$jmOJX7OU0NW0hc5bpk#>wWC-ck z0Qc*h*l$S4lamP%sn19QEGbnk2ro43ek{3rp&gC!fe{Qx=^VJzkc4tF3BpJ)61X@# zU`WH;lW9n4wclk($(xfYNwV4>F(l!*WD*js_U8?0n2}6FlGXl}Aqh7olaSGB|JabC zS0+;wYqfu8*#G|I{^PCo{~8i-W-cZS-gEQRH@^e7Zt1)sD;FL8B(zX91zn3rg-QY>a~M8B*|+WC~mt0+Xz?H$Q%E*!_EwyPr=cBQ$;d zzYTkTB)NCtJ&cbwK<_XO5;EBNi)x4eKQkZh$YdHKgzsp>o}ZnzXKmqrykXBDOzt_w z!rfy?#ja#3k{9kL84__rY9eA5?oEb7ye*lC+zaT!4r}xh+DYdX4w5} zle>>uxIbvv`-RE9CobIoVo1a3$uumvwp6c_2B2Cno|Z!AI$aGf2G;64Q~#@Gl#I9L zR%@fXf@jCzAu!@37d(l@c{P%YXQDWJ@CpwnaZbf6JT1gI4X^O94reo7;dvR(CcMI< zE1b9B6&@eqyce(VEC=Tlyu$MpoV9p`CmuML;T0Z2;GBq8cm#m60I#qRzcUZ7unxZS z61>97^v+DY!V>XL39qnbyYpPU!aC~CUcAEM=FU-gg%!u0Tk#63fIHjp3d?dkAH^#y zlI;xQ6;`Wu-i=pS654qpUSVlw=UsS(#gQEgudq6?^B`VfePHK>c!kw@ohDvkpbwK5u#l+JgI8F@)0u@=SVhx002d}W+qw@y5!s3h0)p&)q5S@RZ#Rq_9Z+k{+%1ah)rITB!(kZ>PD5)ueGNj6*x<79V|ozCpeGBca7 zASlYsa3>%jisFsjhae~l-ir5uKNJ)N6;MP`Jn>)kUhlr{uI}kq@AXX2pU=nLmXPYI zZ+-jw>fQK+hsQa0;uD_X=3I$Sc#@j)UVOsi%$#HJ2~QStZonrz-pknrpYU`o=K_4f zL#~|3_=HDIIkWKz&wFy_;}f2|#_=Km3IJe*vp4#Dj1fTHa3};(> z!ow?^Tk#1`j&N4u6Q1GVJdRIzh=OwvKH&id&WG>`&kk^=;1h1$cc$YL?xlD3#3$U+ z?u^GL+*0ne;}dS|cFx5o+*|G3h)=k|*?AbBaEq~XGCtu(UuPXY;Z|E`5kBEgSLb$o z!VRa+GJL`fpUw(=!flt%srZCDADtpT;r2u4GIQX5ka=m~kfI6Yg1Y2Js0u zi#T7vC)}dp+=EZJHNqK(Pq-h!S%^=#7r% z_=Kyqor(B_>!qCu_=F3U9S5Iqd9ZUCKH;)l=L~$pwXn{Y@d;O_I*;HJt`l``!zWy@ z>9pVzu9|c%!Y5q5=$wR4xQ5WV7oTtepL01r;X*oRBR=8EHRn8h!Zl>hC-Dgvb2Baou}{#C%K(3;uFp`J15{1PWL)T;1kZgI{o;B z6QE8PKH)T^a~D40G@$coe8Sl{XIFf}IWcDhKH=1qb2dKVl#sI(pKx-Jmc-c` zpKzMOc>teq#=toYpK##b*%6;`_}n=fpKvtW*$tm?OxbxmKH(Uz^C^77aaLzve8Ry_ zrx%}a#L-!RPdL8kyc3^rY|S|UpKx5uc^^LEIFs{Xe8RCFXDvSA*o*Tye8Mph=O}!_ z;RxqJe8Qmt=P`W34!ZL;e8LX1^B#P{4y^MiK4B-)*?>>jlXK3*C+to+pT#Hayf~xr z2|EtXSbV~w-RZ$6ETWwbe8NK3`4~Q7Vd>1nCoJ%seeeluE$4&ygmsT|EIwiN;k4ls zw*CXv?JC7C&&6+Nj%{g~eWADrZV>KdQy0HI1phDW4`w+P_>=1Ru3|4-3se#3SZ*j~ z`+MMSxv>AUq3%wOt+W_4y8oGYFyw{IA7q#Yd* z7m*GP{S&-Lfj5?T?<7n_m>fqweZuq4u4#aKk%;%IM;$-OUKJQ zXg`EL3R>-Liqt#dyOt&-Qo%c8HOT$ouov6gdm+CMD=&U)`jsLULzhi9?gNd#xbifB zH3^AZ48)9+xV5G!R1&vZn27%5qFM}xuWd51T=EkrykeD@}lH|F~@ z<(#-XHPbiHyAG}gxy-e!5_~q>vTH&qMW3k&rB{+>R!Xtb#tTr251`UVDFxgn48j=J zV$U*Qx*&AT>t!E>V3JS?3@T0~9ySF|k>~+o!T>!}@OD|!2S;Fu1*_stu?0o{iic$EU)}D0+4Ot;i9M!2G&P|<%c#8Zv+ZyMS+>0_E*YUo_=hQiir9ZMHBt8@?74cN57%n6sw;V0H^V)4 zt?I&JUqWX5wN8psZEJ(J3tfSH3@!d?M_1bW<=x5c`65luRPe{LJFvT{iC}UJ+8xz& zN$oQ*p}e@a_IGOB#PGU{%j?DvlkVb4rpZ+w?+L<016!q9w{-W`4c)PAm7&YQ+j}a# z1^TTy_E>H(HKADEEz^;7YZQGe__cL|d~_QwErbCOF$_WhzseLXMcyk+P1GImaZCET z;WT!bXbiiG{eilHJ{~Hsp%+I1f3GQO3i!KBP1GIukqe7`U4?;i@bciF)(!GeZC&b> zq*MAMQ=}Bw-#0Z81lyqfRZX~TC=5&}FJu#LV8R`z+ElCe8QJ+Xt>9~a!eib@rc}h3 z;yRzB;9Ztw;7+C{RQ9$vHQ{D&kA`M%r)9+r<<^C3PVp7^MhnnK0zWjNn zCREnun3{02Hq$6;#?|SKJ!)P&06{iY^dRXx6; zIjq&?ekq~cVMKAc`;94TDtEs!HKB6%OH&hW?mpAd+)eE4$yKsq1Q}Pb4y_!xcndB~ zk<)VH|CY?>hk?bVa16Z5vJ@RC~1Zu`@-Fpc8tL2O7UWf(|Y%DPR#QYp)tnoub_%hZIMvLlUBX553= zaY3oLF?hH9^$BGSV~NY!HKur}tW|}H=C{Bj#FpdMe+Sbpy?zW~ci zvp!M!9)yrY0gj=>(fd25a4C9!Q<#XRchu~Mu_lZ@zSuR;3)_e3*%N=N7j)GbZN0_r zfkJL*0Yt|-DNG$%nLyG>e#IWy-`7Sq*%dmq*P?~-bo}4BJas`*YtY7k30?sjz6Om@ z9r87_2F;(S4)=p2`5MJ{MRUE`PQr5J2NIn|gI<2^ERK}HcVzqXKE*l8K9h&@;R{{I zPBXb@?M#YbNH!1QyQ7)Sxopd>bE*bAP?$(^n6P%*C%I{dLvqBmf#NE~z=F~q@QK&x zkdHaXMn?BzJ|KnyzQE|*^g6y{nqHeAn!Mwbok zF>LThM(J=3-!n}*RN0nOr^DocHo&R0VT5?no)Ay4!OAo* zaadwchQ(}Pbj4x+7;*5%MH`ESe7`iQa2(rm>Qva<(^&MteU!x#ER-x{vRz$pfqf;j zDO(uG1*oyfo*HE~P`cDODuxCmQzo(W}o8w_IZAq4Gt&I2hlu#i~mB+Jb#^SIrTj2j4S=uKFR-L zBg0AZT$zI;>z@j-Z3V#JHMUm$Og?Ce*ye z_F~u~a^AvZLbvwB#oJcm-DS93&Nt9-tvwH~V&_Dchclx(5Gocoy=tWC3cfd*+`Cj* zj+}dp%w^(JkJE?4?|>2JQts>lIJh&jKA$UemjnI7&)cW>b9_KGXCvpurkBP?#pXf2 zf0_xuk8PQV&E2LZl-NkxB_K8iCX^R){e*!DC3!EJuHsN$$n`N+UVP2Q3s}^&dt($Khd3~25^R56pWiSbZ`o;GldDwV&&WJ55SIVxNaKGE`eOM&YHV;zP|$dbKMd$qpbpdtQUT?XMKLO z&t0FTE!ZDT5mmH*+0;bclQKn?z;JL}4vMPoY-zA{Z5a=7hLf7TyZ9_Q$r2(Xe}WWJ_>gg%7;9 z>IGhPTpKJ*!@)rqpOEh*P1(Qg(fo(03H1&9O(rDiPS0rHNU0C>ng33vq$Z55j`0tW z(&}LbyxOvgo@#2M?vQJYiymJ$=(Wd1=bPfEH0153ChDJp_;JwT9RIST8WEt)#!z4t}(E52u#4T#wnK z{fMav^|d@C6P9$bFmw1e2Qj6m^3l4gkgWhTy}rc!x^9WVm5CvXjGr?_PEq|?QxkOu ze}aS?2i#zZ!0KEdtnl)|z1@G3sn>|8R1xlw<-Q}}g_c#?Td{C&ozpU+1^Ss@I$FlpehpCCWr)E}2YTD&wV2$tP#JXi@c4&qQVsylx&A{VFfoHw}A1rq(K^X;sWPTbO8I`8;ZIzAsyVY06x`AJ?1e zhU?C4>+zj1MTzeuC~mPw@j6ozirH7oL?m4*N8M!h`MRN9`zEu`nIfeq`=F_bAlL>< zq{K{qI0hz^7gEd&Ot_OW*;8oARVSkYU7JJo%1_?Lu;gu%qk#k^*kc}1RA zg^5VLbLwy?x=52a6#cCW;KXrpDEg@Pz>_!>eS~xQj_|xQ{tKN$(MRKdC=Nx(zv3Q> zzLPu@{U>N&9E!fvTZYA*BDh4#fSroqe=yCLOYrwMmf+jZFT-+7AG;3(9C^pnhVK-_ zNaEOifN9PYyJrg%(d>?DU5quM#+m3V>IGeO($JacxWxbksY4tcL0k5v_K2QX8_{H^ zzH6UK5JJzh*%-Ukk2(sykByNg!>be9{Q2pSpBJgWHu62t+?3v9nmmIwsI_yqvxvQ; zJlMOgSnw&#t@bJW03X26QwNAhRi}lfa3~Ct$*p`xG&6ZU+p_DNYK*QCCL+tC#8W;_ zrd&vqIMv3N_HTeUyoQB*xnE^tqWk5-!VRCY$}d-{tPF*u{z<+wnyG(+ZMj)epF5{N zFSpS9QvWym)c=KziDl|Np^((S#&a7jy(_B>&Alv!v!ERHae8LAKy1k zYV6CloH{k8Nooi&sLhHq?OAaK8z0?fVZU%zgoQ;3aVp;}O+s|CEprKBGTl*oeAlfD z1ur_`1Z!Vic!fO)E@fk)OM-~HP(?yoiHrEYXlDLGVL5X8DtfXd@xj|k@(UkEp=06d z(^qw_^riJd`?TK2hf;IoexLAfn*>C%dpF-D&FtREwoJb3PYDx^8^fO%q`~5qs~4T- zW5KV%CCh>Q=h(pLe%yPRvaJDf}`wNa5x*7#I!)hLr8E4-y=;D%w=0n zodmlF8-(R+mvt^#w&(<(8uZxnAjif=mj|=r+Jxbd2o=`xozkR2hHW`@Dv)Mj<*Lpl zD_8i4u+^Rj*Rzq)B|>bo;08o!a1GxjO&V0$mQ$wzX%^OWu3Wg($ATyAS?~lK7+n^` zmWVPQLW0Nn9%+)`QMTm>5*VyqRm)#xU(~>a_KKtAMkN&qk5C6f= zjV=#ohBr&zSO^FI#`i{(gMSg0n`k7$gG0x{`OB911ZMATta~4Of{BLqK1e_$yL<3m z(#-BOwq>F)lZAV;dO%g0&TaF-s zK^vi(87VXdCbXNG#K%T!FKoTio`sjOGo#DGh+C8|=D$#rWbb2JCM0Y0x@G3P=Ogy{ zeuxbcC*L6lo!!rWp=Q4CVOvf;-|pw^S>fwFclky8^uEBxgp=NogVmnrzfd#1zhGNV zJ-u$9V123Bo9WJXRRYTvcG=dtXc!A7>Qg#K%uNo*LT9CS=KG?V`nRzyr=EKE%g&cG zo3e#`cOdh}+GqY~HYU1X_Kfh};7}+u@kj7o(M=(_3>9^3C?yy^#$GC%XsJkM{=t3pKNQE!%SH*^S&z@-_R+KE;NE zli5RPX1~OLp=M^kz_y%vX7!g1{?$I!e`e#uN%f&L)qmu_P&3spvn{8d>ga8Nt#CfH z<-4RwgKx7fN6^4vZcI(D$rFGKOsMI#oH&G{aWlQ6MI%&R zp6%}kCi*xydVA~IaU__iPwg14K*Mnm>g~w)M3Z{ku`Lto$)p?bMo~|m9A;obQE!py z`6tQ?c_N&Z7yHN>%mr4Tm!s2#0=qU*x-^nb^nJmPr%+h%gbUhKVy^cRvHV z^PAvW%D&*N>g(W@O7b*%!A${UK23T z8_T_Idv9H39w+O@eGQ=$L)#mQ8qfdMA)}B5r$);T=+2G zCrvJVkZn12E=&(_pmAPY-n`35YtA;fG7+8$#+PT1%GE-PMrl)1G*qV z%k+~)*az%r-D8*yChF5;@SGPArV1)3%7%UTPHD2Cjcqw~HtZS6hD=vawr@kQggo7z z6sNFJ(v=6#fr7P3;l@U}v4-!PCO1~GEvL>6jb7y?_H=kZ8yHBL+j8m|*BdeZm3{Jm z$;L)E`S@XnY@qx<{tGqJ{4=)Y)YGgnH8grB>jG~in5a*IhdB<}MY$vYg_=3uj%_*h z9LEm&A8DWA!`QHJzT$aQtPkeDP&2~^u`Q>b;b50NbXa$TeU`h~&~UOGvbieDf1zfU z&th9nJxycf<(2ZQLYLyFrijfUMz?sZ?f~E%RA4iUNO)Uh{H{6#bigOPA#I{7=mvEhZ`mW}~7rOA2d`wkO;WC^)HwKc#EBRh%Ch;=1 zW!E_++ZPKHjVl>OiENh#*YyT&4F4iHV!6chF*Y2!U#n-dSf$$yg5>)Vz8jkPeu!;3 z^?dIr^4-1O_i4XkpX=YVq0r6sB-JNTxrP8po?qmsjcm)Qvp}{1 zm3(imT*>wO+JNuaC;yvlKy;HI+6D}VLB9O2@g333`BQAmspou*`10|aDdhWd{+;Rn zv`_lq*@);S-81y7zIYV}$@*XUo@i$M&uq)7XI)nLd06X}$-}WS=lH($eMVVV`E6jL zfmOaI5R&&+zAKt}pU$?Ndfvy0uU%Xjjw&CRVq9aN_*HC7tiJc*NNAi9ehtT z^S(dZa_Zmv1X1_lF{?uz{6Oln_NhOM4U4YedrpHv|Hayh4sS3t`|sd8qnZ8F*p^ez z{zQ>|JQYlIkh@@QU$DWy+CKkRvVqafzh^nI%D+Dx%7DxG?r1XLVz%Yf88BWjpsObb zCq5vAfv^8D`|Ll$21Pgfq4T*a6q@;m_^xPX{(iRQ)HAQX{m2sme{Y}t7umq*WeKSY3l_Aju{{jqFFbie-48NH!EXx5MBJEEEOBiNQx&$?{$moHh7>0GjW(VEUh zt9-LNMfU-J==2XxtFc}P~J1k=dW6|WW@=-{D06s z|2MON(apc-TqjlWlW+(JZsa?p$$=Z#mQ&|IOwIpI`}}{64T^65BTj00ivL2*{Cr~>>HHUJ zW_JqPa_ZTgE{0=<>e$S>TxD}E*C*!Vf^#ve>~p=G4Uq1a>^X{4HPhi?(PI51zFV4% zIDu_Bbw;RRn#dvA^X-{%E*ltKCg4{ea(2sR{tGp8Twz;oq8zKSt3YS`GxjgJ~>u@Agzkk5@L^JQ- zWm`@?@A?btwi|0*yo~@8^()>&?ni%%osg<#s{hTloO-Ht)=wQ|pX83ZCOPD0^!@oS z)J*a$w&m25Tzi4kS@!9D2OASz9mi5EF1_j&#sHS_xmw&jTY8XV=NP6LxC6d9OMhugfv^c)T4g*@QO z%8R3Iynr*wE^O?XWZSPS!G-a@xxYE%xP6dta$_WMhmy6!yLg=ymwf6_vi*dK$V15z zJ=;oLHN5Nm?oHXgu3UGkz^=7(us^URc4fT~gd2ym?#tVYn7HRw*xp(<)F+WUwnY{w_Sc&Nr?9_9n23~; z$aB+75UqW_VTde0!iLzTr#j&9AvQ#s$_~0Tdzr!r zT7-#6X-=F9lL-};uU*!;WZ5GB0=gr>Ez4b!hqA%Z<$`C2d;}MUV>qN95oOmOAiARs$u%6tX`rzzsZ-KvRf=`wKe(foKJ_o zV^6|wvNNMg!aYKJ51vQ}|GvieMU#I|3Codv!03KN;+4h(Pve65>{zh&bYD*YZlBY? z@^RGcNqElTAZ^QVG$gNo=KG_W*FUl?6J2>(m}p$7IW2?$na-7&h09j1S>$6v+b-7C zW-FMePtW6kn6Ddot->Odn9g@hlM++dmYbInD^FRp+DD01_LNx8#z$B1wJ9OOB9u6Z z@0cbfPGDP3of14UhKFP*KmkG5xr79dkfsgSW(xkvg*p^eLz?7gSAO$jOPF%U#KVtba zdm{XpjgBr6Jo`t&D@adJgbqL8yQN8o@3JkYPKW8CbO@~^x0_&HNsa&$^{FJ=;~ELU zh~c;fwzjm4Xu*G++hD@kQPbmZv2&=sWSMO_b#{<$#t@36f;h;Y936EdM{G^$3yTQG z{(Q$Y1!ET5as(v|hNIMomK@hGFp=Vj)_AXORkD=<|4gc5Psa`H+~~GmGizy;jD>Kp zo9~S#2eZO*GmL8aN)v%Y$HMt57A{)0=y+d^y2U=Z*YV-h9Nel|ngoI(S-zU@mS&c( zWLqXmbD1!a(ioQ)xn;p4Nxlr8SON;3%b70@(yQE2judywsPJ=xu4OY!x-MM7`vSp`d zLK=ww*i+)4Y?O2EvHTo-<-KDA=j*3uzX2pXP}6jJ<+;9 zu@9K2Pk*B3oOv)RLWnlLUz&tyWm`_25WX2Q3EkQit5&aExM`FDx1+zc}y-hnJcVR+-!#anQbv~v~CRX=K<*N6F7YEFOD8p!fRMDqIp z-zUxd-pjU3^yMyLqH%K{-VUpPZP^kiL42S0OW=~_q{naA!03M7wK}YxcnAr8#rH^) z1ixfkPMrka4yyod`TW(vjinPNS+igqn5a(`TC2nA4T#WSG~Xpn8jNIHPMrqc%^m`^ z;6}pZ>^X1@8x~z9sI}Q+I2uBLBl-Sl65ueljktJpmjxEXffdY!~4MzCW4- z=w@3^odDit+v1y9)49@rDbFqT47iDni!K9dE!$S%5DnPEcSw^0*Rd_9P66-QsA0@9 zv?~0%JrTabMn{(jwbn)jgCcbJGT$vtI((6BIdwXa{z2#J`AhseIo_~m!s~2cbeRy_ zKalYd68wqpktPXVVOx$Mfx!rp8ibNV5e6nw9E5V0;&zs@edTOdC133G^;6q-v+kkn z2PW#%Ly1_5>y3qQa9_SRnjG9qSZ<<$C=U)D{iS@De}M5+`^NIdiN3xqXWY*^kg$ylJcH7;$aoQD3)TacE7##_OLz<=We1|kCFotcpSt!tzE%#*l zbA8?Uz6}8xINqKD^VzuQ%7Evldhha1Z#Yx~-p+SNlK@AtEvHTZcj15T?1B8IYyl1& z&XmQHmH-RRwr4>f8ysC0L`Qr!tBi5ISy_xQOS0zA!57|@T zRyHWQ6o^(|%`?^ZGUT6&h9QcPl2mZzeMwbH-6Xw2nCjnlx z$AwngXMZId7u}CPq9@=DhZ0~J-yKZ?EMZ$todE7?DL||XZ(=Isx&z|>9{c>in+=O@ z{v+n2Jkikf5AwayO#ddf<&Edk$zKv2cNa)!Kc~y=<*<9#v&{%N{CPJ-O?n) z9c;^~6GGJj*d-up@N;_>{FDufE(@Y-0T~NT{g3#*Xr})AY|BlQ`eHvWO9%+S4pXel zz-_@qqsu@U3r&3s-xtl)|M&mr)c0pgv;#QLKJ|0>aBHqyi2mwjEHw4)d|xzEzaQIj z>R-Lv|A(fsoP*h*u&Lp9*{Aa^NR`L1ZD{UWyI)YIgt-Q!9=TPO^MHvzZWbKnDPd~`VwG2j~(7A3@1 zzFV4vxSnk}bwcdyRsv%Emv4{4H|z=URW=^F1eg{f0x}F2Rn_r(lJAIS%Aa6cPCezW z^jC^u3%>qlpY^}6A<@lxg!H?S&@cTpz9*V#f0b=H^|ZTFy#Q8!v78SX;oozbbh6@3v>cAR8iGCPbXe7!etz#U{RI znzSghEvHTkcOSs!Y`&5KC0&=xbQOwaGVA|odqRAI4UR4$BK850m?#zQ;QORWh1=Pd zQ>TJ^ZmS2jQf@=OT*;LP9e!$0haa&4(xpShQNE#ZQA&KD@0TVeo@QH4of7W8;mz4{ zMr^O_%~vXf4BJk(E*e|FM16|Jh<(F>h$s#I%TAW=t(N~{TaKWC!47n_iT$2&h`50X zwTb<+!bH}&4$fFTf6FZA2KasE7H6ycb(8#cv;1|d_~izoytu~Ri^ZlUlo$J%nowBm zYlFqWI%mzca8B)+V_RBgC-rSZR$IZMNjyaY6#k(e6etjFbeHManI)#bGpf-R1@C-OL z;Cwe5PB+Bk;AJwzK{iU78L3WHqh~{70Ug7nAlcf)_d~N$EZ0urti~POGJYuhjxw}$ zmD~pZc`cu?&*mL`6hl|Qk?*VOnGPe_RN;`c-p+SOGp)C=ExXPsNxemwXk7ls4Cg;v zhFJukGX4mBu{^Bj`)ovXKV{Fj7)`#6g=GF|zBihg{}$VF>X{!qocZ!#@48~am-?0& z)~Ww58xq~rdsaZv)Vslu-2aR3j%M!PWLr)>_e%AL*9>~E4rsT}{(fL0iM|a}^@qbD z`QMlCkY@h(Vp~o<|LWT>;x(fFOVQ7;&;F@wND}$>-C#)WJNfQt=Kf^1<R)P~`HR?q=w{wC6+%^CghKLuA>SFzykEe!oO<4O8P0ol6HJ3-*A@K7bUtXG z{QKCb=qBGYphc6f;vo#Uo9~e(1MXy7PMra}c^D9R2->ghY498y8eJNAmOq8jz!wzZ z!n1t0G`a8$+j8n$*i~@>j>i-YXJ9sT%pTTVfKgzgK1E<{Js66J4sh?p_ehfi+p{gF z&VjfV;V63s9L`2XR|>Xk%XiPA2|k4XLd^uvWm`@?!RjL)J{m0Wk@wiAILF3CH^ntS z^5KXm2iEaD(&RvfZ8>!gOdA$@JQ@o3y27cKp@P5Fo(tEr@zLdiXZZ_l`AKAy6W8!P z)8s^zZ8>#L)aU{}X-|SD*nsGg05$(0n%l?uFVxKKqioBm=Qd_&?=}1UzRCuLli#^C zzklGrP&2bUsbfZtG@#+`m|Q-vVAg`s88AMIkbSPxEl}6|0KRYn)#o=ww!wY zCl0sgaDwqbE>nT~e*+X)Vo!m^Y+!W1anEI+lmaRw%7TS_mo!;$9NTgP3k(((sr5K= zO@M(3HF?}`IuoV5kjqP~yg1p$3s@EOrN*ub8r50K;z{tWi*x<~(Jep=-t>3)H-PcP zEeyKOl!9tu(AB~Oe_@cpYO31nf=0T42Jw8Dji>vWsg*$wuwl|nN!2sE0PA3o51IA3 zT!$wV*BP~#>t4Pynu2r}+cFWP&zPD}QXmOsB?VX7cmYz-T}uiQT_q(}w2eEpCtGRF zms^(&^yb$UE64g~$NmPvB%ucwRGc3C#S}QD2d|l$Q0>X9!bFmbkp#>m5#G(YY@yQQ z19-QYbpp5=(Q(`rUdStS-S14HJl@oVHp<4!U8kLpt5mRITT_7@@44>QQ}dOcA!_@8 zKeBGXPj7><8FZo@F4{mR+Bbs}?FIRL(IW3KQ#e&d4i+XN+ri{jW9phpuD|u5BU_jB zL6C()Yo#aGx+>eXF}uNEP@GXWn5VYEhL!&IgWB`bg?4bEz29|#G+d|JgWPFqLec(Y znWv~#-Uelf5SP6~Hs(S$di#r|ib%%dVxdsnjGw~tV)sBH=U?w~e%;ctmrTpt_Pp># zWM%!3FYUdqFC;(bnu4o7g3YET>Ykqtk)L@-wk|B?V7+l`wy$-50jQdVPo_UtY8|S^ z=XZ4#2m1UAQg5$YraEM%=C#935a3mNwy!-ayn?R?ylQuA!uG7|70KCcrhu!Q-C}B@ z?m62-Lk;94rg)LV)z*V~gK=`@?2@AAKZ`-q8yuCEg=Sv99!!lD4RUVd@nh55>U}#5;4#{qofeGbB zorV`C%czWud>`dU>XwU{ZSZF4NPDG-T`+W{9jf_ZM@U=t zAyZUUVs14x5loE1r-ff9jGEqWHfm}-&~&gnT&h}0Og`2(^9vh_B^dDO&36rV?3U%% zm9i!OHq)mQVgW`TH?;aK(*&s;e_fa`7-BMpcx+%S&-V?zS}*jfI3t0?FICJa;Jf9WT#pkD^38}GJ9MR%jf=?gDr_11J>9)@0@N0#0CH%bH zsfwRhiJw=)&!sKSHRAtV3qPIP;cpE%*McWYZ*{Ighek{QJ6DOPy$q{YHOeHhNuUKZ zFrmDV{XGK{>g)JQecIt&mh^S!p(PN#Z9!N6*RemOAc-|gv=cL-EiYdUbEVx-mcf@2 zGSW56lmhDW*xS@Z5PXCDxdSSP)*4WW>=&6U-m?7qT-RV1sNQlYu!`OOoSvFcPBE&u z!IDl>@Kyd!7A6`hZz5kp-kzB>ByVrxlaRMO1OCiLnY00aWFr>d27EloZ{3bSNR+e*c$x2|W)tu`wq?=; z{MOWjY62wbti<;#_FhQwu=3*LHeNsza7AOAfT^C2fY>Yu>n!m89b8B0n_)g`pJbW= zj4!SkI2_((*%vrOm`J}FIHO*$)oun(wMVei5W&Qofyu5w2I(1S3eIOEO`3vp*{Fp# z1%%_(V_4mRV5GD;*v$7-vpJ}+EtBTpY*Q1eIgsSD65^BXy^tbe<;7eZFQ7T7G`2Yy zgUvy{57xY73;A>X>&(6Zp(N1}z>wlvfUlauraA&o3KQwK0KcmjY_(f}-`XSiYeNJR zZvl2zj0}kW$bGq-B%;3~nBWx~;i6AyU7e#R`YJf8^V{*A)71G9Y|BLF-!i3`(s@ZS zD}{Z|-U}%eR$e?|;|1vaI~uF=6H(`jeVOdK(m=nQ{|y%WYuTSx_;-Pk#mW6@Q!*;K zUnxwaFZY#t!B$)D&$dUf&k(`H<$eMoWU8QWNd8`Ic!}iC1QSUV z`h?ikx!RIH93EBs8GQFN)qX15GEw{8O-(4Zmo&4|*?*XlU3nqp!pe)E+js$Le_UhL zeyG&%!czbWIrrKj-`IW;vYUkDV`OoXUod5olKi|dk-p?#T`$;bOa7Ji2wrB0VB(UG zrM{n-0o}ikjWN;vyV-b!m->X=j8fkpBNhKU`95lj|EJiNiTHoq)P#~71|JzZ@V< zLh~`GIL*JrG<{03-Y-n>6)WkjU7xBKY_&E2(~;zMi(PF}MR-}6X`bwPu2^z+Ks^z_6R<1h+yK4 z!Bp88gb*~)AiT)NnluP6uyG4-5WtL|<<(<34MIq)v{87T@2h5`@C&wO(kT4g)P!mj zBmu4D_)&W=q>xy7af^)?&?s!**hWE|`2gRXySposhYms(&zJPI2XppMrai#m;@X3D zc$a18U_W6Z{q|sGyYMJRlj;6WD6E*xSKtEo+_;!UP{d1I?&?Qr~C~ zB?Arher$9}L%lB>sqluHCg>o&KAR^x+CJ~a_fE5Yp2@aM+UFUjCRF<@NoLhDzGW&F z$_ptLR$e@B;{{0lPK}lNQA2kg2KVC)Ku(irq%od2nJ=00N6CCqn1~dq=nKJ(8_8Wf z$h9sg6*mU%$kc1g8`e99?umpPdY?1vq*w0udeu}I6c)!AUuTc^)wS_X z^t|lat-^Ru9zxRaId&RI%kUr@uJD$Ddhh=`o<;#t1$n!I?1ZP|5Bb&P%@Ohl?h;slyS3DlJ>bPW_> z)q)tQ%w@WY5!W(PPr#j&Q&Uf zTt;5zT?W>66#U5<1Q!S(hyZ2=tmg zfnH@}q)Q-+%EucrCCnfAE^89zCAQ_%39~nCs1QADs4|tJyaX!1nrR)@9j(b=qCOq1 zrRHrGiJMYq65nr4>P%o;PMtb?)us;K8W3R45_{$>X5*x*Hzy^-91NQhXCdEhP2wEK zwwyX~_N2tgmxrz#3Zcy=d)k!QDCyGXM048sgQleE=R2)QnqIc$)Jd}kB~2mUo3Dfp z>D*z@nA_P9=`v=KIb%E#Q@Y&7_gIrIx3DdzPM3ozUHVH!xSzM2$(_@mFX5R-{kYI| zcu=PtXso_(&!MN;xao4}408^}!9a=iEq)l9#QHkha_Yp|FPd1;^5Yd5Qjvmm`ma5m z{>4U1mrkqf>EsWdlITso^O_`jgKar=617nhm3xWIon`93n#v)_T%eXf1MM1A^P zOU&65h?>%7FTU5Bw3*4aoH}i0gwUo^><=x0PPJ!DCmSJMy*b{3F~b2CRsx_M_3wO#Lp8o^$JzX0s zxpD;;4ZBQHt4sfEN;b8c_m9FvF;?Xc)LMF|zE}$oXiTV`K z3y0OplfTGhc7#VuQaq0DuclIs7M3G3-@vt|b3(BQuDU#ae&_tmnw4u;FI?m!#c}qe zIED|h=AzTH5+Fq_AP8TMV{<@$|`*vV9wZ zOL}gxC(%u8v~)?Nmh>b+31*1IB`H&lTP@Ryg&eH8~Q5hQzPVqVnZk80pBZY}b zh$HJE6NGE`u|}#E&4>IvHu7$es_dD=#z~X*)dON{Xiup_6WGpoOtT%@uXbJ=*n<+o z8M5!(ar~mi^Vcrx%&a=S^9)~-&$LhS8GI~5J4!^`Jo_`F$`VhK{V@_%JeBXIX2v_& zmR;vmJ9n}$5&6w0-UphhKKWtTI+rY8bjHdR{(kfo;25vnA{uZh8y;N^IEJGEG)_X1 zi};>uQshFm<c_Fi** zPc=!hj%_)0l6bp-u#JCHt|T|Pl`FY^I6tw3o855JTX(Kd$p&V2K48z9t!%_}S))!C z(WzKtL#H&lp6|LQjjmx^PMt=cl?Gxu4EEFpHRh}KYY=VX(QQ=VzY|Mnq80!w=KHEil!a`|sS{<-08u=r!}P-;F}Yw%GicA1O>C5OxuVV# z(&Y*Xm+DHH@2)0Y`q`FKr%SNW5of=2X9oj~&L`|yat9k6U6$}0ouMcxId12BsY#C8 z*p^c#$FzW!2-tdI!(k=3675I!{P;c_A6_%odOiGVV zzMGo#IGJrZb$WPbY_N%uxP_J>m)bMrA~ry}4B<`d1tX;-xsdOvCP^+}TTY!My9YD` zCTa2;NoV&#dw$%<#zvPPhqD#L4U$shZoZS6)VPyvIdy6Tn-`q8gFDcA`vVo~ukFe4 z92*^7a`2m%;V>yZp5?o#NsnjPmQ$xka0Eo+mJ70D%punOmr-D%KGi9I1Y{^mN{*fQ zUTTtKd$#4&$QRt7;iawRBDGu`=3`EEGED79Z8>$qcyJz1`2Bcw}~x3daZ5-O$1HGEe!X;NidPMs#+I_2zvTxl>9 zx@hr9dxkv021l16ygJ1jB_+q>d@nW0@hIDJ>f~tkXb7xLgv*|@0|mKe@!VoxaJJ?( zdyc%y#z>bV$FWo-Bv?w7Kk%K^q{>Td%MnyD*wU_c#moJn1}4;Q!F^5lekd>G?qe%2 zb`)Mj?pZY1r!01Y@31P{*PZompFikOZih~n!L>Jm_X}6BfzMK=c7Rj7E~3jPwF!KG zVWKHEflJg;ntYotI@!p(L8?vQC$n+VOztDEk}we|qRDUk_RxWB zM!I;*g6}IBYFBvu-fcm+cL*Wv)G24y+qnB8Jc+*g`_3G&z9pswPclvn{7i6K^x* z!>&BoyRKLWG(#DCqP&xhk*=)pnxT+jDOFDAJF7{RQ`nYMr^;?&iV~c08b_p>cG9Wg?;Z$4^IjEC9K)Q=c4MyePO@O{)I#=UIIsS{(* zfMSrHNP*_%C3}wihK-UgMz zi~|$(>D@$ZoT$MQ6(=RgXuhAC1R2S;oH{|KMG_=fh8$TU%nF1lwNzrIBd9d8KW*`*BLRv zu1$2@RAV;q{njKDm7MYiSC z2@}*93Sh9FdBdJDud{K|Wei_qLIS3g`4it^P0GB&wwyX;CV4cbP|V_9P;$)P%pIdPN3CUVNZ{x zY=m?*gg47WLZvi0k?*P|O%|~&N6^GzU7%W8DAzt2m{6-?PBfj>R9?uHbyi-~Yk}kT zr)PVLMc*pBYuR6bE`9f{dCAQndLk5?^7JZGHmT)}R|pf$u)OhY0`ud8s~aC+Rj=(Fvt}(XC5HQ7wt*%7#kg3l0$&Rss2{rKbNz=}j@FEPyS&&vP{_5yO*NHVU&X(} zxBVz?uS}P}(`t=?QT5sn9O3otTrR0$uYFBTC?d!d7-UfqLEhnQU_yEEd()f5(F?eK zeRX56Umv*!mIzdG8}d0nw{i(_3&V-Ke0`m1?iGD9!UTWR)bzU?eSEQNpclT#Y$adp z^NmYiR4?S<{_b9(2JMA`-u${^r30D`H+MsigB@-@2kBROp*_qOn3_=E$9bkE)K@B# zZS|GD)5Z(-EL_UL)l=T#m&YLn-ge_~`Nvq|KG8=_@lv1Y!@>mr6E!~+ zLxSeR?Adx@R-F<2IN{sGly%78^mBa19@3vQ5YqYkx3tX0z3#J|!5vy!dK~9m_;uzM zM;<^Dg7sT$tlg?WO%(l`jgcnBAzecv>d#Y$8;I+QnjHEE-xbYD{BO0h*ucr5i8A<( zYnrb$u2@{Q* z51Q;!Azy|&54$#2;9Stmx>9jtuH@6xwcr-74I*?{%?3x84r*cuxa`ql_Z#mBiH&^r zEBW4Ol42R#a_XcQ=aQl{(3i;;g8PZzXU~QAurbl)!agz5;D$t1;oW?fGzl=swwyWv zCiw{f=MW6`bp^(3@3E)BXW7W;(mvZrb&iRuq~%fhVd>L;K-8x z5IOjTJr91)21S<#`^Lz@P)w8pKjr(RNr4}+Ek{tmpl7T)*RmQlFrjLdzpzVXHxT88 z?Acg(@k4trWS7;-iwA7HfPsd-#tt-$8yY@pU7oA-6ubQ+4)c!TR(s*!BL)>W;xGr^ z#p@-wBvK;|?ZQO#h{O6Fhr6_HU)Jr}-UdBeCkKD(TnA6s<-I}nb+^i2H_2Z&%U`$3 zUsu5|nXZ2Pn|oe9qQ$ucpXTAyW$?6gTjz587YF0NxDuW&cdFv&RpRH>@N;R4bB*{v z*TPTd5d06X$0z(N1J1SZilrl+Yw%4ET?T(9-nqmSDfPKYq^yX(pN$tl^ju?!zRUcs zF1UuP(z-m`m)(%Vpt&1fP)L zC;bop5zJm8n7+ahG+qIJF3Gz>aCe2|?IosRE8fbmt$4e^#tY!>la1x=m~yVL9&cV~ z$#iAQJwDFf1)(ItSqv$Tv!5}AO>y>$bOA&*>z5p zkWZPKP}(5rWu*-tv+)A7;lRdf!>&pj`m-fC84#}W@fUDo-kyv?U|?|yF$&&gS-|Zi zOf-Q)j6;P`m!gZM*=rfUD(N_*^%h9-ZP*i(;v=zF5c?TQZxng@K%}swhHONmLaWUYuqWOd(WN zMP8WT<7luFq;^#?QE0{xvJ%*Ua9qcRmI%kyY{bHagJh?wmbbT$8D38fyAbXMxI-o^`1k2@Qy9=mweqnszJpuP{`B%vA@R-9@)Z3>-Ijc*AP zO`sZMq-sb+19I^fHl{=_USmTQE*B&%)wzs1qv#UGbx-w4Ugf)|sS|%-TP8a3lBo%$ z6Ov|DI`MTIFF+@*Y^+X9pgQ62k{onwGD3lI#R)|RyvwpnvcE9V1VS;^D-^*KhSsn_ zB}%c1ja9f(ki1mY6*U@#g;a`=gA$kX{nM0+lh~GtRGeUHLP>=rn!Z$Q9nmtP1^+p7 zsQgl+DYILsLW5BH#EuKENuTOG41e8Q|fq}(|#xr(5Ij(jJx>`YRbl)Y|BJ8K4oe`$%dqwzHEf3 z#pO0$fLg$yX(PumYR!oJ6+%fuCorTqo%pjUY)U8oC`>egPDIU!OgxT@CsBx9zyz-b z3s(q|68jmEv3%DwwP9zrWugslGc}>KLDI`g8(uagIeG!wa6@CYA$~@r6JSk3AuzBw zg*e$Xg-Rh-2op`95VdDSHnCA9I#FhW6|NH`F}jt6f69ke68(G!HPxb*ZJDTrV`@UF zg`}F5S}e8k0@Pxg#;S$xjL1U}RuYz{e+QtjeiOG%CiP#yD%@9u#sCX_ZvdRb{huZhJ?$q6yStXZ(aDo&kOMCmT_s4}WI^6|N5?Db+c8>x)%zR3ZM#cTQ6w z{>-*a6ylGjCX_-*idiYdcWt}?h1jLB3gH<`!}hM+lIdRWTPS$=!em4OJq6tJo47v+Q0nva=oWaJF$i%5^sKRA}q=hr+J`^4micY?JnnH0h+cFV~6{aSX zP)M3t3B`dnUVu=1zOh0vQEfwzO&^ttn<1hk>IsZ2PAYCRMNiceHwY6=AQfUIkP9jm zi^tfg60vxM4OX~Vki_T?rQu2-6(E(1hxiU^%EkR`%S0~jF*Tv&LQ>62F0Qrl0_5VX z#>z#lQHg&+C`sr9h7_k0Z<@lUbm9$Rq6u_jpbb|wRvT)MO1uLgO+pPM55NH#B*#+iA+4phALbpNLrE^m3W5l zo~BUzgl(A!#ScwQD4~!vvl5C2Y`g%Ws5Vw8G)5(+FG@x#FtRwQm;&$OmC-H@lvL~{ zOf-R1)E<>MmW?VAi=)|Kg^LAAOj4r~NAMlgl#4^zmWf=)LQ>62E_Su?0^}m! zSh?8l_-rNXo8Gtp0!X5ez(C^E;XG5YlscRvOhl_g9ai-$`uxzUp5^#dV^z;u`16oe zJzGq}R!o&)TQPOO#tUHTO^s#hR59G%mF?@w6n*dNe~$0 zizDzOrWh&$KO{^<6S!eZd?rb3hoKe71_suC$;Os6a{tGMEWD8;>8T#6H=Q3ACLMtP z8Q)FKrtZgV%cQCMfvE{4Ad+@g0&>5N7a$;eHC8~TsrkB|JY2?7%6DZ!N&4Y;;G)`T zi<40h3@}bXCd0cd3*L4hwPxQ&bS={OQO!e0ONGyHd7E)opFmW(FD3N z33UUp9fB5-4OAOXvau!N@dO*PaPc7N(H%_<3zI6y<9s(Y735L2WuhPto0?DxB57x( zAUD}~0SdCRu?jL))f{IJ6f6GD$%qq^5eKaO3}s! zlqf|jnBWy<;YvYrQaw<=%#c)ZeN!i>Pv`rlDGyWFmWe#`EYXV#*?5KP z1<6hIFnzu7#YoGF3-~^2>c)9&%S1QMF*TudLlVwPH%_K=lPCm%E&L+mWhn~+|-1U5lKBO8Tq`87a$`aYOIXRs3{}< zko3Vw{f5gm>|ZaF-8CM`j2UO`s!_!*wJ$Lb{j@FAwa#R2wfqNv1SbN#q3%a;}+!nB*3UAy;I-?zzaxo=xu^pJ;m1E&@LDIshF~lN8B#i5xT0k&@@1CYmyk*Lf z2X}y*Iu^$HXmMJxkj*fc zq)ID}6DFEKE7Y2132LCa=wZW3s+B$}00e8|QN z(29o}s};Kutq3VEc3PHoW8+E` zV_!C0;fg_0Q$19F^g=2|RDrP<-$hN)n8~(GL}P}j2_+hmZdRi4KTFX#xv`?*8N0x# z5t!2L?f1=(I;l3PB7M+W>5)6moU);f+6aQVMqhLkt^At61BLDja9f>ki2l} zi{bcaeQ`10KTWB4AKNmKiuahBP*Nd@W+fHxvhf1yi*=2a3Rzziig3bI{#-buZfKy} zCl}v>n39kSj4e(szHW-2l8dhh6HOo&6NYddhBY7=ud;z9lJN&NUg45Ka-+NZfy78< z<0Zb2nzHd5wq+t4zcMwUWJ40pN;bZ1;|0hDoN(93>z3tW!%7hZBey;~P{57ZP-&c7 z4BTS7|MFy%1H+3`j#=<7%bv;J!bB4&$HYo;2-#s^1KP2i4K2}*lh}xbYX`}W?qb7` zD5-j!!1q#9J&tEvCh9TY)PzzGNjfX_*we-fP>d#6{i}Pn?k4R zjZ1`yCQyx9%eU@kV@l-WPBv8GazWCMU$Xac#2U%oYV1s7Q&8asmt zUR4$@8YDSMF5h|^-$_mB*nw@CNXNFOCX{qY%2`RrZ%v7hUVwB!5RH@$&k(3QX)ZX$ zx&jGgFoEjr~`4-Zcsb-o& zv4L%w2t~K42_+PgW>!M6$i@p0ic=da6gtbd?tze!&BemB__+*=U8!1<6ce%eTJG_fS(YzQMLk6yvL=CX`}GvRNs{Cv3a`#V9sbG2)kR zjf11dlF$nbEKV;*!@GDblFI_67bAs>kT%jL@i!tV->Cz zBrlx$LQ%%`PtB10iSM7LRJ_8rOr+xXrY4kBNTOLu#W!ud0I9g6u~MP6d~4pSWaI*4 zi<65v@Gi^lNV_o61ac9(d}}QmSRxs#*?5IZ2FXo=%ePkYebkhVWo*ktHkO#0P_iKj zXC)i^*?0l6acyH|LwEVs76>beLIcB#Q;zFQAykFN)xty*D2K-Kt%upr676_^jaayL zTpP?zqRY4L<$I~A9(S=V6ZQCvsR^YXl5|$;aixtHpdSC*rlE7IqnGE)aJP9O+m|a2 z_>ZXl8$^XXg7Ftq)RbVnCQL*NMjZ}}+q%OxEl&TAkg$*7Q;h@T?t(uLIWTS% zZ0<0suoPuw*jAK%)f9a60w{Y(V;ekqT6=bLHV-S6d$XmDIb5*}%a^+f#j^h}sJVb| z5){S=<0yQfX)YCo4-h7zDcrEL<8~A1y5It~657C`$Z zblLI>zMq=y-cq(@((avTYC?&KB%YOs%(n3YL?qK#5s`P%g@{P8KiB8mFm(e2mV}02 zfN>gfttp5~L#`4gnm|J)1-~ssHXtDnv9To*az7iga0wyl(Y=c9q%T@tWwHU{DP*W{Nvn>;~7-?!k zsfDDPm0G-FN_e-^GSFDH7%$F#DHP$dTR6m_oDG~>yB07_LMkw-IH_1|nm;8KD}{+B zkc!cO=n$X*o!HEVl;}i-ja0Z!kgQY>(mU|Q6CD+av-#d>ibNmVG7*W5rY4j~NRnBJ z#4;N%prj}_RwTv=ktpMMh8)-MbwnP9V3N=X3@T0|9xw$?X~ez4L=$Ml&H$*3XFwvJ zVIxW;;wNmN!X<(vr8-AXB2;ixA%4hrPE#Si$F@uq;yb1$ltM^~St-O_HeP^2%xbJc zjFbvd$mRTpK<&0B8EwFD;@d6ZKQezcCt{NKX$G!9| z8BeFuyU6eyh$)HE0b`4khXGUklsuG#i6)ST2@+QitO2RGg$*o`iksMYg-Zp=jqa); z5+f}nw(xz_l#T1ymWga!ZE8Zvh9sPoY!q$00NEI9tZcN3LPE}=t}m8aGR0DN4u0j% z$#o4>@3TB=iG=jMI;wngXfx<43|o6X?ej1ULiuN_Z8z0U7x>8($(L|6s!w zE+ZsG)wkbAfv?O9a6nVu$%dF{%IR$6!Zn3tsXE_C zQ@qhqSviI8t){H3VOu7$vdYwik`+lpD_J?n#tV>@dm1Y%Gec#i995;<3ehD|rC^kC zqVfS#BvqBNRhVc3QJLx&m2za6@&z`)L{dJ_#w}b@NRFzx!%SL5R`F^6_mZA1jW~~ct=kD0|6$XDHv#+ru@?sOrrucjXZdI8F^u(8U*Sd@My;G2Y`V1#j!a)xOxm86_1Of-R{Xe~;A4;x&fCGTcq z7Oo{EKM5~NALRR~DI%NLmWhazO-(2fk;JnSkxm;gKt$FzRz&m{rGF6uOF~01z&H(g z%oIeWA&&?XO`stS{Se$Z9gLm<&a+d{4IVKAeO`sgL7p2ch{%Z&(39-PS;>6-P zQ{Yrx@vJb>1R4>&I(=I>$eM>Jk%$&B!7ISRC4wX+iPh=~ z5Rzh63h|7M7oZT+8mkadtJ4>-nH)|-3@1(-j%8Ec&ArlwqlJkk(1y^}>D_EFi7aH< z7-{Cia&`Jye7`gm;T>$tL=jFiHK7zi63a>vjjnkC9;9ZtIpP9l$ z6KD!&b@~!E#za;Yv!M%@6_TdOU%5sdU38gHOhE~cl!^R6xmM=F} zS$166k6Up4$CF+LF(grtU@URsaj_|0svvovFcB>tbvWO@ecsUd{)ggIjr0AFg+C8D z-~U6VVJouAu&v1Y9vd%!tdBI7tYgI{tqphzURO^x?>~v+s}M^Pq{W!xNc*HIZi=)| z2ouqyZPj&s+)tC7}`+Se!~+WD1_DA}$mrnm{GQCJ2RTKq)@WMwKYVC)i+x zD+NgmXA^`9kgCNUd?ja6gVNwP88sAM# z1$l~XnJCDYOid^Sk+ic?kdN4S0SanyE zG1ZvM_#SI&%*AZWL}T7(YC>s@B%_tablG?T8gpJ_HKyiDjHe-%B%}mmij$IWnc}9T z3e4qe_(GZZ=rqNz|sKrMcs}`PmB4j1TpCOnelmdf_Q;I*D0;iPXWnrQTlp=a1 z#x7@Z5hW@y7EJI8uW*$hN#WEJQ7bWa<~ygU5N~5!CJM2GsR^YJl44d0@jFwZqZgnM zCpK0gJoSWUQr%lmoD8rgp%NHaoJy=PO`%eWrNTrLs6_3R7-cr9L@D~&V1+9MNeri+ z@Q}uJQ1w1~`3`ETg~PT?)MA6F38fa2YF27-qKy}z7IPb`7WykO?uWpVPz?+)PBrc^ z1yQNSXN8F-Pz{}x7(ZrXOSIz$Y{7j!f-G;Wg3MN1QRQ@)JJBjGG;Yac*H`e)bTZ32A(M=pV6<^^G7jFwtH51qC^;D| zOf-RUFKGnY12W?~k6RUn!qsuPSVPEO7?MNY{{pD@t`a#CZ#*NtpQ ziE`Y)Mk-u6NLCVA@O3TUJ57RvPmi8!td(;AoB({?{duu~muLI38*;t5zKU=0=%H}6ToPJ>LB(mwJb0I7w`Pto5sh9Q4vc!MFmzzl z$llrqMoof04>>SunQ7RHwK8lg*0$St0j#~Qv8Ka!m4;d=dW z8YJy`U&D7&v%#yfEt3ZCa#IsZIwa++qysO!HPUVL0;FS0W2IvkzjUBz_?o;QLpVuj z28I=<89y+EPHDz>g^4E6j4?x>6CxT=i@&omC2H|kHdNtiLDEv4%To(M7}q^DmH21A zdzw1&N49066EB;ZP&y%LW~CF~w($aVVrpY`Vgl6(e{pe0HW{J7xZ;FjF1*V~W0g=G zC`>egP>l5oMeyjkQ`w*rrRZd16|NK{FV%T`r6|*q;$*&mno_ZXZJ9{LQd1L3DkRaY zq~ZV@FF-2b4$VgPq1}?Al!LvOZa>6VQrrmPBvDdeSaC{mgDG@MDXtYJnm{SWbO}gh z4_!-g^4DR zjj1@nE&x{eN_YbrGI<>rV4@+Dzyz-_3)c{mBi-v`B4ee3GJ)@_rl5>tTPA`s+SG&+ z6iGlULHU#EXMkRSpgh%BLGkR?7Neg&`8W*_O+r2}ra1XnYnnYJAFG9lCXf%YTU)>x zkc)HKfD*ab%*H8PE=W!|yR{`%T;J3XMuqR2raYX@woK%q&(wsH2T3q1d01)V1<1n} z8!Hc<-BlrzBacEbN$3Lx6{immn*yiw;Q?Wy3G_kiu9A2L1mamXqC_B`VFMK|5F{y_ z-Bm7Gh(i2?@0_MW{E%&#D8%%^ab~4#9=toO zrgSBv6c}8bQtSrr;uX{`6O>ZyDoiwiQcS?&+{HC?5aVbzutYG9VB-}o7$i5!pLqKKfVQA9x`93r5|6$lcpAPHW8<0P3R zQzV%k2d}omwov~XlYH5u5j8{6Mv`Xw1hsOS?ToQ z%}i6L_2I8f(FXKkS4pYkLgE+CIkjoT|2(J4StD%S;`VMxV)N`evD15aE_LEt&&)QR z_&QSxtrIfLveJoHvx$Oqg4|p4uBmLWu;_$!gT;jMmJtfHE1ggrMRjF)+A)?X+JI2> zN<5O1H(2;QC)K7Di#+GbSt)G&;&y|DrG0j(IMI82E~Vl)&&)QdD9)5ZON9)ytfXRe zHc^mN+|jyH;c~n8mDH-1SXrQT=>%g-rWw>Li_J{Y1_UGhcJC)WXV#_~k9kg*vufBn zrzN+0KkPk7m(uZoXJ(spY|oTJONR`(tfXU8Hc^mt+|s(zk#4*9uhg8D&Qp_dX!tHK#VU*pDc@t;d|z!qzQr&qfkAsoIwq`*;t}rB3wo%xu$% zJu{`yIw8X>E1mc*)4`4?NGJNVu1=)g?tKbnwIzfC?Mf#Ui!<#(Efgm)MH>)`l-s?} z@|;wgQmpozD`%y!^^4oHkwm3%*zSG0_xM~&#R|{NHmO*eDTS5_8E9Ea#qrrhK~mAa zb)_QRcJHUCIW3_SXjVFQVKCq%?WCN{CCmZ`yUEY@0 z@gbpQV*pdM0oic9-Fuqn1lu%Zis!sJYly9neuM4a6TQdkQc%WwX0{2+xJ)UupvVBs zN>KV|69oy%rq&gdl-s?}rna=issn9GCm(Av&6}2wRZP(a3m?%r<$rEK>?C4>G{Al82SqL_zYfs&(Zd^>*)nP-9v`AJC|D z`tW|HiPQS<4pX!NeQ18Wcb7`98MO&SN22hy4s#X=Tc@1ZujM#Owk6^qPgwf&w0+LO(dT2oF-?HuyslH+r6Lm9-2#S zc)~NYO&cD~ltOER46m%TVQV%~kT#5MU2RCW-8-kMW%L2fN~aHG&AX`p}*! z+JHW!+U`BXb53m!By)W>bRGU(q?>Se_N@434 zw;L=HmBL|z#W~*Nb14;PdSGC;yP3bze`+25-&_@A zY$R0U=y!*=(Z8E%v-NnDW@j~CpUfr-8n1h`?s(m!xIRp;eym)PJ1wX zIaAK-Fk7!Q9O~{Ner{AeEdAOrpZBm_F25FeX0|QAPRx`-tAdQKtW@EsY@(p)?B>>0 zg*{mnDuUq%J-;8MRTzJh)1na9Q;S++C5D!zQ;2Ia&7M|>E19DC39Z!>qMxY{oZe=# z`>f~e+Qedq=cGA{g{^}cj&LUy$?dc0#*^M7bg3JUd1kih#>1IXXx)%8mz8d8$tDWY zjYC>jH~O${1Z#uxLgUhCIlUXoA{(7m%g6>AmQFT0P+eKBgMa1xw*lGM%ao0Hc6|=X zJ;ZZzZK`pQ=bSmKhOK`ZM!Qpuq~_T~;{fjgx)hE5JTu!wW1mbZv}nkP%StqU%2G6H z{$E5R(#}`vFI!R{h}6?d2rZ&fL1}G?wFVlNPBh9g?LxiQIE5+NmS{wpP3~IH$+d~b zxt??8EE=}{aV;9w=GjE!Ebjrj6phuMnQfwRdZrXwG-SkOB^ryfiGo%d`K>D&LwTi9 z?Z*j9h(7&Dm*2|y-KFN)N;_XUU6HE~)&wkC@_TA$OK1t&n@&r9muXJ5mORB2Z9q$g znhOvlopNrZT%W->C;Vg23AgFXKRxHsSzl~@)-c1}qQpg$ZJP6;_n=*B&U>DjZJP6T zrW9IpWMpQgIge)(1!>Nr*43PSS#xTFwNYB6&}t=65en1Sp3162k>nN2;3X}iGH78s zl^H~JWqF!&AXBsfmD%4^nRuGxS$0hFOwUQSDa$dQbLXrqwti|j+MTjA(@dM1O!FS7 zOEsC|nc1c$6EmgIY9b>rD>d0an!?f-hMot4WMn))H$Lv@o5ToR?`9^_t~u zrfAD*;*{juJSW+vCO3P|owJ(Q`YA&-F`8*plN-DT>QYUv^~`KjldCeN&}t$hFe^1# zlT8$)CTF#-n#g_JTG}&XIotUUwW1}I1FcD?9RJERV_G@>!4z#kIrM#8TS|AS_L@?g zPIMy*Z!0!uov`(a+xxiOD4QyD@g9~-Rp{uM*`^BZGNsU}AfqcQRd_$sF^(um6|QPs zRgn9*b)j&5MW{L$YUf+(uZ~(3Vix7KB@_ZJOQ#SsGVMdH5Cu%p1{6Zy$2HUIklh;3 z*|mv<@|-khv9NWJ+xxi5?X&4drS}M3>PER|W}9yKGo{eFA!9Bp-N?@-3et@Qt*aZd zny6b*ztXarxSd+j5?X=Qq|=I9GR>IQiW`}t4QPd4P1sWUqUV&_1mcgLGvzE0wq9|& zn&3v+RN*=AVYyU=XFN08RN?7NDYPoc=*mhJuFED0QiTUvR~35m_0LnI^u_A<=c_I1 z(35W8wS+pLRq52BJJscF1sxv(S{-tjq7A4+AM=_gr&hjOZOQC#&zZG}#9^Kj<}4Dn z&S@Cw?m}l`+iY4f#Cvouwc=pU%r>nUm??$U3K?rzX+@`Oq9Cmp-?~~6e_ud#AW&z! z1zSr^X$he~lhO&rl1$U4g`$cn+JI2(ZVE-jF|UoD^J~+FaEi}dyp>G;(X7{Hnlh>QwpsXGT^dOi$FF}kXmeSUA5@RD+>t4 z%22KK`ov4rl9mt)v?!fe{3+9{X|Z^oDcXQo^ftx9F|A*DPOD8TKKGn0XRWaHjN5mN zm<@}Erk_ap#CvEi72@BXnQaR3QKl4HA!L+gr4Y|%69p;6Bdx0t^6r3WZG>)*(w46p zl8F_THS&nsmeC2cE1gaZqq?#@`#6*-+JH{Z}SEwP?JYtre& zMVV$yuP4?qMH|qG6xT4fc}}TK9`5#>DQ9`G^-6ZvFz@glmP=K*)ibkA6>iFuLaTy| zuB=pHZ8lMmDy;thPzBq=*c{ zt+Sj}!PYBoRl)gr_g%e*HEjLk`q5Q+S%UF6zfCk=_8y>1(Rjf# zvrRPqkST>04HCy0`^DaacBwh*Ju}-hry)}ctvNC>v(lWJY@#5|>DjuPy(uSy^oTl;IPq#=8^Zf$D1|-*^wyrJ8){nc1c$ zpJhs+)kH>MR%-HMHc^n8^lB4oVmzaqxI`aEA4hHpH9-s0smT#kSC;2LqnM&CtBF&R zPx72(o0=T&Id{%#V(X_2)x>C~O-)L?2kKHyj`hrJQ9by?yx=Y{)p$4+H~SU&zW-830tqYy^rhsy!(CL!*Zz# z_j+cwslr{EQfO6>(Up}dG-eY8sX|`ss)CE>-G8JOwS+>TW$6^+`%JT^72>~4(FPPk z-^WdU9z1d7HX!UZyEd`tPZZu3WX@t?>maxHag*B@k5HeR^z|O0OWoMRGqX)McFUAP z>xPWEtaRh6Oh-PVAl#mo1?cXiYk;I3d%1(^|2BDcXQm=+%VndG}SG zQ)&~4m7X)@ED*L{al4vue%^hV_pn^5LcM2Zn<|`|DTP)A8C_Ya!u)KaAXPZLbyXqF z^X`vQYg$4b(5iIm@KC0i)9P?PQ?vnfNdLV1JDxLZ6N$GxC(KzSY@O30&%3|jJvx_K z@fXj`Hm!IiQwpsWGS;%vif!3ML0WNe>uN=+=iT>>w2V-oN$G@QZ>r1N>N(#3S}68n ziZ&n=>7I9=YKZ9D*5{n76D4j-}mTA_sMl5HFHlPt{9&^9ib6RZ@vDI_7oF&56 zGuc1pe!2J1Tq?w+o|$b5(Ud8LRtOnoSt&#`nFa6Hy4-_v=hG+D=*uLQ*JDifJhq(&CR&$H zHzrVBS)PL&#T3oz#$eTg-)rUj$-B%5Ez2#e&pkdAUSj=nyYIKkTtm-+RiS0Wg7w3e zai#I&LEmRslzkpg%#>m~zj6z3oODIYC48`wjOPbx0~NvgNN%Vi*D_Ym;*6_Z2AFrO z<68m}?))$HhppWdV<$gvB2Wz<(ii0UtzkWgL~WpUV1vO%DrslICMhnJ;xZ|=aN+P- zc|;Q}^&%-QkDP|S154v67#6A+hF4$><7U|g!fFn|@2MT!dOZ=Jo+-s|I1pqU^jHw_ zR|ayAi3ZE9l67yqN8R_H+r;lOFp4^dRdSuSbl;U}u5`L@&y?afPj}yG{(66@KN85D z8mg@bRz@AZ?fsYEEc1H}q>u7(^~1_6)!RDZl}t0JJK?2FDSq=#*xT%cVw$Nj{OK)B z(X#qz(yYDnH|vOfbVp#ZfTJN|hG6TAZ!^uL?u@T9rAY1!FG?J5h+ZGcx*`J#9mUv8 z8-ggJrO}37^`SCfZM4QmZ!!x90}Jb`grssuPOclwbaMHj2S&8H&DY7Ziu6Gf~V` z#VB@HPon6c%2D)G_oC>o#-M1g?m^K}IoEGRV|A4Dj>zv^4oAJMoV#<6zil|BgF(MHcHV! ziZi6>FU1fkrl4rAx{FmU#qLr(EXB!ETqwoqQZz^rMA2SdD%L?#TrR~mQgoDJixfpt zJSxRVDXx@aZz=Xg(Ow-WR&ObWNwHFjOQg78iesfHm7+k3tEHGN#atY$QMo4iYiuP)QSWQywBgJu2Tqea1DIS;N7%7gFqE3o3DejQs7Ag8j(O!yErPw6J zDk%m@u}zAxQshW+G>Z0WFDWLu|SFkq!=&7b}1f_ zqMH<}rFck+N+}jgak~^frRXI^l@xhWTrb7pQXDMB6;e!+Vjzkx(S}_iypcc|X>VzO zP9Ih^$)9Kyl<=qB=wH=`0|8&KwyZi@o}kZ*=@cTIL+2CqfTe)tfR%vL0cQZ#0L}uO zLl96$QT1?rYApR}2jCgN?*Y#f1XzCYFMd6P{?vXoK}SGmKn|cAL4eg3|Lnp&+qYBe z0UH1t0h<7q0xkn=0c<4*usFl(&A#-fw*YSg-UYl5_z>_B;9r1`0iOUq1AGDa3h)i! zTY>a)}?OKTLl*1~3Cq2$%_&1(;0`Q2WOJ?eGuiPa^;$0iyti14aXm0E_{QB?u_! z7HYVp3!OAx3fK&|3~)JM3*ZXCR=|~js{mIM1QcWi{&|PfpN0cQ07e2v0S*U@1{^^U zP*4Im{8~+aYF9(h9?${M5zq1qb=xf+A@P(xfeDl(wKzu&{(|WUmLDLqLO$C;Y(-zcETaZC*K@YVBJ%j~)Y-C~7 z78FujkVfhid%6T3n^Vl-JO{jEf%OP^jJ)Sy59Os-{QNI?+v#F2!PPY>Gdn zb|GCsp4+fXBv@KaA8?*h8d@4?(sq8JI<$=J&UBfxwx0f{M|q&E+8@9AHn$r_8FA~zl`j@$&`)ascA8%FFc}B2x9Hp#C=pRp~AxgzuYJy*F7GtRt z`%7_v6tkq5CdI8%+$Y6;QpmDh6|yy0jTlEQp9pyQNP<(2B6t9>>v)0y;GY2h(FC_l zAm})eV9X?fWs?ckOd+@-pP=tlf)@z_d~JpT-c_pXA;m>fbdmx~6Z$7-b1_)`^GtI7 zFW{%O1UJSAj=F&0N5J*#2;znUA;FA`2tEfaUQdwQNU#;qcLTwCK-Y^2&IJ4j zh-}3F0hTopd2wnzkxS3%7Ed+bqO7I%sh1&>*+(Gcoodhr5 zMR3dA1Q*>yaKbi%ob3di??a8d#A`h0e)`iWz=4kv+zZHmjNlc(^2Z7GdxGG10QDrn zkAOR$BAECzK@;FVfXO=uE&+TB$p0O|X29ow#m^9I19W?qzz298Q1p9(%K<+FZvO+p z@)ro+0)$^A==KspHQ*({%$EtKyh6}G5a0`Pi|K$I_y+xHB;fgX2&TVF@C0Dodj$6Y z#=TE)A0Y1of|~%j9}-*!*!>>_>j0fT!v6uf{*&NLz>k2)zX(1B1pZC%4&eBY30?*i z{)gacK;b6@&jKcWO7I|H}P`YfSO+j9t3p!6}c|%D5qMtlcgR8ENf3EjyW9&E(ILYk>CNq;!Xsg0akS; z=-Gwfh#Z0qfZe(hEb2z^AfQio0v|zuuc)Fs`}Lqd9ZV45tE+U#;{<{VtmLVk0PiBJPXJjPw+M1zzGE1ClZtc#!Mo(8BjTyAPSh6PjEkApJ_W4{{SpHhTt{8>=^{V0~}pQaQ#ezVY3MiolCIdSc1Ff6RavG2p>=I7@+G3 z1Zz$rShSGfu+mSk7VvHa)Qe!;CdTdSVXPD5u?;ZRh>^b$#so1QZGy2;j6s*c=pe=^ zm%=zhjORDQ=r6|KE{8Eh4Br(naEeADc9-JgtMIpKF&eLjvAY;0x4?Klo-z*3S+Gp>M$55i7_b;##3TEC`BWkzxvfyF^(Mzqn#M-j)HNH z7@r*tW2P8~PK9x|7&E5Bh>5Xv28<5 zA;!y#V2l#ub03U3VoWWCalRN+%3+KUV_GE)xd6+zVyK5J=}g$Kn&cn+sTRgQVpP|` zI8KZs!Z0oqW3M$Zc8D?XEEtcAarxOWju9j0To^}+@zi-R>crT-7DkyEU$294hZs{E zVca6d%^P6!5o5+i812RAy$QytVtjKgj7?(vdOeI)Vl2H8#vn01ya~oOF}B_UW2_jB zx53B}{Qufn)pjD@ek=qbjve}U0UjB{RxQ6jcZ$1vW*n9Fzr z;{}ZMj0+h{7$-9>XB@|PC*z@vof*3@&SUJ#cq8L{#wQqS83T+@GY)4Q&3GH*I>t4O z6Bsu#c3?b%u|MMw#wm>58LJt0XMC9PWX1~_PiJgk3^HEIco5^|jMp%BWZc47#P}%V zNX9D}_h#Ie@j%AjjKdgLGG4-XKjX2CrHloPS2NCLoXdDTV~Ftt#xUb`jE#(#Ut>JI z#&}+h@q`-VnKZ^zXpHC17*Copo-JcMO~!bBjPb-6;~6o=Q(=tfz!*<{F`o5eJl(~3 zo{RAW7vq^N##361=du`2VllqaALGd@#hvxQ!$>PVmvd&cuI=#TomI;D8{o- zjHjI#&o?oiXkt9W#CU3n@thLl$t1>eNsK3v7|$Lto;G4UU&MH#i17>&wb&{KgLQQV~LNkw#Qi1W31*emhl+tcZ`KQ#)=(d!H%(B$5^Oitk5x* z<``>ojKw&{DjZ|^jj`^=Sa4&kv@w?07;9^cMK#818eyhm4#rpjW2}5Jmb@5iU5rI87Ue6JRZrq#qe$4`hLP3LnqXzfTdiul@S0qwe4 z(X^2&nNFit&FM<;bAKAS_4GZGhQ3CHrQy&L+9Z(Yudef#`J2>ZOFOn3%vS@|@Nwia zu$SSoud_?u6uajHcy^v@cpi|_GtXZawAB03k>p);l;J%zwRdHp-iI%wM(X`Fbrznb zlZhuZ#o#$CHBT_&tMP}I5F1{vXCYcm9I7ebAj(TkWCVn}$~LMaCJ|Ky1t#4v+&vXu zAsVoR)nOuW4I)C}O4Gh6#l;0BzLFE?75L^%nP(yTXgm?kJK7*RG<8sA{@SuYwJ#Jd z4}>i=rx1hMJi(wjDm4w#R29Ug%wUpbHU2uE zKSK8beDy2ptVGvS5329YZp>{az9KXX8&@rj+mlAK>O0M7+^BTUdAz6K)F_QhUqvub zT^_N}y#Ttd2Aw+NEHdTL!%9MZbS8m5^!m`PlwdtXft!{$1r0R#*x?&EOufD8M*Z&-&D=4iB{JK>#Bo#SaX#*o5}YU0`c9? zvC6t|pez`{{iVcKJ_Of=RJXVu;OLq#T+K1U6<>29d5^uw@OI9T&)(Q$$VI(v`sF#+ zs{7Pe6Qwa)8t~D#hJB$5O9KX@n@%&kc!(nvN05qTUvyf?%)WC5c}$li9J8E*{Ts>k zW4c8n864yofa#hyb^eL-N{TE^xB?8F>F$p(9F&G(deQuX6D$OKlCL_$BuE#+^aUjg z<`-BPE&{{%CPTUq3g=Es3L)oWBB&#fHXM?s4RaREE-9Q{aEv90HQ@NzF7LMqO~+tR z`JWHMKmYG`BN;lCAm)FbhgC_npY*VfmL=xY!ks%${U| zukR#+$B0G7pPp;21T~==YDcuj($br$UbX5T!`CTve`RGjP)TPGbdHder$6B)a=$wa z?}7F_al`9F^|TUO8ltt0wdog9#p;-ChX27S{f)L;yXvKzh++-h;FiYgnZ(+734vCH zWlMY!nu}?RM`DLJ5`mgRcgTe$bwk1ddeF$6khu$v#m)5&bYETkwU9bRA^yHPeJC@> z?&Pj^m>ha~P0c}jTChXK(wtX8bq;logwx+4ue3q6UN1;EfWg#}>H``~;^j0J>SzS; zIPg^m>0B`}g~wAjs_)Fc?B`G?C*I=Jg$^3^FZ0OJ$1=BhZYbZ+E9U96gtw0QPWO@H z4g!f)AIrS+C>|Fsn5lvH1I)8ceJtZ&<|VGj`Ja!(KcDrgL9Cl${&QI?8_i&+10E%( zYY39_t(_t(N^7w9N!G~hbq~BoK4y6BX=Y4&m7B{Z_LxHdSUqKWXthu9z=2BVtYNcv z*z?cutbE+4ORxEoJQK8q{g#o7>iLA>r;kwWM^_fgq108OXgK0f^}gh-wwV-K-F;9JfAYROpoEARRpP zghP2?xyADia#F*dHawlGJpw1r*%QXqwx>io7f7R9j z)%7JJSx6wmP@lx;2A4sEYpr!(hK)3z5{TP@4s|1FA_@2^LSed2ZV7z}YJJ?SwYfIK z-CFO9a6FP4F7-M&(uo=^dJ@i=xntK+p43G17}XP=ZYP!=j(s~BzNeXq)*`2UF;{c{ z@|6QiTbI2+-hUvFkexr?}d^e=6l#?KBdup8h+TBHg(Eq7Hn6Ku;?AItpLC%HvBtMk?811RQ4lYNSJ_GQmOI zrqU2F8^ONMy+gi-yl?pG#f7tPUjF(hNuPsU8RNI7kk8 z&mhr#+6+n2RP&UX{l}84y4r)kKILZryW!v8OoTp9vejRVmmwr}*jVyXD`|(Gv|nqS zqibINf)g$7+u^?N2ZsAlQzDyn_mvd+rp_)ZF0k+nBMNniXP%4U4IyQR~ zfm&&@9G0dr%;K2c3qbUZNtCXa3?f@vI$|ehwK-Vy^#psfX!Cc}dbC~u=W(=^Gks3j znXV_yomw!vV49_abFh1~jzCyaH6@W{c7lv@53K>u$0pCP6uC8cif8!fihfCQL_dJ3 z^j}6qdL`IQQt}Gs&o8o$+Aw*mw@iu@B2+BF6r3=xaDGx|J^@JyZKRdVq)@{+$@Ie6 z$!#eoclCnFp_io1wPkL>@s{p+8wAs753dBFuVOSuU>jq{VFU0JCd0_I9W!sr{E|Yt z^mL-np+PT!ZQOs1cv9(sWVU!g{+z;+lBC?uAO>}hNt5bG6q*Hd=glvgT0pmeti$&y z5FKhB1Sym{@yaZZ*cs%d)_q|#CB-;{tK($%3@Gww54H48itc5K*@ct}OZQI1{_C4e zf)w4$1aqd$Po8fd07LF)MhGe98)itJDMyf}y3Dxo<(Ebd^vRGMqG{dM^8IY*;g{f?XStxqVb7;Z)x~Db&e=<(pgl&o54XZH2CoIn z2PTVi_Wb4L@=TNUwke0v?kggAfgsgU0D}5vGWa$KW_)cBIFBO#(n>xNwO-id08SuR zb-n4YPg)X1vdkZ;^3jcPTtcw4e>=Q$zADxacYRGE@i1|eh*#mc|Bpt+&Rva5H;%nEoE()hy`A$6??5;l zGIwNf$SdLcg6ZmfHVapWK6)Fz{r+bJ?R;dxmmh-+(jEtE-Gj+hoo4#$Q~Jbo!M`@J z%+kZ_;P|ZR=sY^%NL^eX^jBA}a0>sgVCnsn5x%~bVyWJ)MF)_JsxkeX!%n(k#<^Yv z#|KSE=OdCF>p~IQ%Aq$3u=8_p-sfi{TIY_6*3mVUfG_N~=4&XqsWVJp=fz;$m!^A3zyOUA79_{wnt3vcnmiV;E zz6(+FO#~9T9vXIE|56(4cxAAKU~~=m z3!a-i$P6P@J8UZ-j-V0k_|+uPhrPWWSifLW!`&ZyB)#y+<}5R#dRnv-CFvf=u?LL; zHP;*p`W(#e&U^bT`|_CKWH8)gGU$u6bae9_tBQcxg-_ym-Kz&V=;Kw7p9F`z5^Rzeg^50u1HG*bdx6F%$f_< zF8zshx4jKkccEHYvH#Qz6;Bwbdx?*}Ic$&~?Il#cU5P;y&$BV0@z8?WeE<=^M<7Rp zxwAE8VuQ6b7t)=*m1YOy(FZkVKjK=wzri)eRgj@tpT9I5t)pcWZIw+pO~G>%s$(uu z_B_C#bhqJ}C}~r+uPjU_KSpEmJcimpMC#uM8f>luG!}T)!*DVv*A67gKObaJj&|E- zS-M#X@tlY{br2D%!3Lr07Snpn%7*7nRQDmoR(z(JjiQIEWzZ{gQslN zlo7=G2LcIrgsXswvW)Nc>+LLfOh>IBMP#RsHpmV($c#G#O{@*8?^^K8;XMEHL ze##PZK^0Fx2z``9!tJ9F)_`)^4j+)*cYt&SbMNRe%@La=Z zM6Qa)88s}(q6WIyLZ>+O)wCm*&w=SoK12_6&~*e$NBO8S^`=?ll#FY{nFTgySlB-X z`w>TG-ySSL((U!<3>HvjYQ0%w=6!@3`5rypX}7fLD%8;aD5Fg?GtL-lK*n$~WO+7& z8`7IUE1AVQa|@W=tZ?@Epw^T09JL0s!ssI~V5qgh2+*BZYzDh;&O zbpTbPelY8rk#SuS+PhUvSCUBzg0=cF8E#OwiBw53fe7i;%qzjw0n2Fu^Ou2t&?JLD z^FuQdEp;9UM-aKX)U088<}FC5!P*lyp^D+=#AZHAgv~0x2yKj`0hE_un2*~fEGIb| z6~vJ+?dBV?Cipf>#G4t5xw3?5*rHPPp#Nx^k?h6U(m_N0^QuBm- zs`&;28Aj%Dk$J;-YcaXo=a>6XS9i0O=6u;gbUFb5^AWJ-YBW-V z2dS06fSmPdr}b3kybKLqitV+>;RsB}Y|wES}zb6mwjVpluNDm*2`X=59cz6#Ru z^o}D*i21;to4BpV1=GzUCbi9^^OWD_HqbHg4iFD5G~)C`tk=A>^*=x#bc&y;F!6Ze zR2yd+#OBJ{O#*0!SsDl%57q|i=#nw*Xbtg#r#w)tpN-_2uA@rS0D6Cvq}n`nbyE|T zQP>S>3H>nQQvK;&R6=N;Ub`ivt@c5E-GgHsf;U@L(VMM=($g42j8wHnz?gJ7-jsFK ze1p_HdvzP9L26YhroM|2V5hfcdOT69S4{p1UV5)OMDqt-dUe*e55RovDMsX; zvQ3Y@hgbL<<|IGysU0TiBroCO=0l*uPY-GHG_;Z)SGG(VuYx<@Tvj=+?ds@(47zWK z^jn-)kYC!hU4nDoJSLi!%yT|?UaU8==Dg}~=E-wdb-YtbbkpfIi82c~AN9@9rCfC! zN1W<$li0ZxCwxYeJ{3Y-UhGZjD!`EIJObcK&!M4ia|KA1-bjLP6$ZES zq9$F`)}ueCk|^^DQmvCxP&%xW=7Tb@#GrIucch?9z3zw-vD#T}uscuXDcGBt%DdJO zZ3(?4RPx|FmAj&~=C>R#9zCwk;59E6x*5qB4t&GRlvjQjte)TMP8#CGr;`#MEaZdyTrfXrGVkvg>k5BWNS=GM z>gx+b()i|`2%2fhZR?De;9hXL(HqV(qa)BPdCi_m_ghMoYY61e&+pFP*;1@pC6*2?0ZdDwv+ zZ-;qi#xysqA)1^s4I1<4aHgRbY1(vpt|7~VO@ z2*zXiTc%z*hpW+1v;Q zZ=h6cis z?@|i#w9Q74?lxRNeTRDrh1NuRKw*4n|UVTB1G9>YEGhfSEqWDm{jj83_5oi zjPJ6IZ{RS(!&^Vq$wZ~rZ8iAZ^(~GeJjQP@;oYF>j@yVS=Wc_^-Nqp>@f}O^?k?Ui zs!E7P{c*d&<-QB}p4luQ*pb31m)jmos#zL`J8XCSL>i3hpPqK@S*w z=4FwTT^fJgUO3>Vx0BKB=ERGomxA?%hl%y4M+{bTLQTnvD4U(5@H$pi_$bkSy~Ch2 z@ArA9#mflfoXZ@Nc-5<#^gF6y)bmCS?$c|Z0IvbxYNApd=ne8oOMtWyYd$l;jvy=| zE;Zq0gV0@nA+xoC<#drEzI!p@O5P~2enzkGR^R#!?J?gbnKn$z)9-jGu6p+s3UJ12 zMu6s8FD;ehXu=zI)h1$7SH5mgnx|4}DebFx<0!{Fd(|gIsp{S|c+D#r8St8&gx3J8 z$B0vHc*`JmC*^Wt=9mS%Ram`4e5&>xgVeo_(3044o8W4&o%uDf-TRHfW?o`V+jfJ^ zdVgRxIDaKNb-{NAr~3$buqTX3y!TkWPDJX}?+rF{^_(_BX0u*ZJ|2X*JBe_>4+f$8 z*~@nI8}DLPL1I!r|7g&eYumK(IbHU~d!5zH{}JOmKN*bf1GHV6#tWj=(4UF!kY5Zs zcSmBg7htagWj(Q}LG28ka5u11TqMQIt5ulz)W8k~sk_O-&rfW`HwYzfcbW>?we(d7 zwJUwiL8RB6QYOp~(_@9$@@nk(y+y;B7Xg@t@A(@q}869PG6Fc z5Zx^^umF;F8)CK|TpNi--8;zOGS3`R1{SFf=ocRi0L`z&psMH-77~)XK@-3JU|-no z3CjD3O?@!fpfs;+q>PNa7n3ya`l0<(fwE}gBT9RKc{qJtLoKJTYDln?T`j?rnB{RF z>#kY_@@I%w4WO@d2)TJ9)kE0W_mvd)T2KdxRed$gpf)dPdZKm;{3NhXq>qWHXNMc? z?k97;;$RG_(?E3ueH%p0p>KkC8K78gSTA1O1g`IhM*TG3;BvpTvcIl(DEMxmual?( z`YMUn*sS+}t_9b{M5E54kD3UV``GO7=bZt*mxxMTO^YhwbEgu>8;yX(JD2B!Y%+aC zMSWLckeT-`QjQj5i!LW`1@=jp6F2_H=;aZpU}_~*&`@Pm;C@*h-_58y$R|&wB-Sto zHRP944d0X*HMm=C#LqGy!AUz9?_f^)Sc^J|KGGsNcDLFvI1^tKehb)cA|m<%qrv8G z?oDJfSAcy$cMN?mM(t=a=v)Rzi$A)8YuV@69&EeO2WQl3`p}Ft)twY!ILTe5I(kDD z?ark4X!5HpjlMq>)L#>;x`#enBh>E2!V={sQ2jzIYA}8DMyTA)W{8rh%>1naSCnYf zrke~dche9bKu*t;4Fcr{#HNbq%R3UDyQ>5I+;ze=q-|ijf=E<8eYQuK+;y(g7Spj{ zTTeu44Sn}V*xZf0L^d;XIiP!inAD%|HR#MM_9@jO@#5BMu+MZFt_kL86xYViil^-E=r?BxyvFLpR<R?di(?_Y)==TgNcQOT*#LXvHfay#kQK!+DtfYnRge6)Vp^-pm7_^neyr(b; zbk7l!n)X4QE~@UKud?8KF;7yd9wBJxF^9j4RbYPQr4WAjWJ{H*QXGYRRpLYX5Yk}& ztTKO9LjO9MUM8&MSNcDBnYRA5PXEd;TEy#l^{@P%Me*hL7vMdM`qwS={9&A#AMnNV z_4?Q6^si5Hz4Sz`{&lDRm3M68`8NIQ$Q33t|B7w+`q#<&SH2mG4cq$HOOt-ZmLL7= z%SpfDW~~18lcZm9qf7t#x&GC>i=}`4O8?5YcyPnY{8c^%)XLs$Cxn$S`ZD~6d? zl~TQ^8pB=nCZk~&8Irk)1YIHlf4Gcp=Ip~!Ie7Ib=6{hp4=3zWtEDQHEA8219)I5` zH>r|nLw9^0UZ+B#{R~y=ye73LtiDV^7NUrULKc|g^yf8kPc(F<&3yFvcKRZGw4qC| zhGL4)7nS0vq?2Mw&~DR%^dcj=C$gY6cpLy5-ki^eZ0lqiKM?+$8_vP0PQ?Wq*8-Xc#T={ljP#5-AG@OV diff --git a/docsrc/_build/html/_sources/deployment.rst.txt b/docsrc/_build/html/_sources/deployment.rst.txt index 9c309f114..001ee9759 100644 --- a/docsrc/_build/html/_sources/deployment.rst.txt +++ b/docsrc/_build/html/_sources/deployment.rst.txt @@ -414,6 +414,9 @@ In addition to broker-specific secrets, the following environment variables are * - **Secret** - **Description** - **Example** + * - LUMIWEALTH_API_KEY + - Your API key from the BotSpot.trade website so that you can track your bot's performance. To get this API key, visit the `BotSpot.trade `_ website and add/create a bot. After creating the bot, you will receive an API key. + - 694rr2c8d9234b43a40fab494a79f5634ghd4f39d44ccf2e * - LIVE_CONFIG - Your live config file, only needed for strategies that have multiple configurations (there will be a folder named "configurations" in the src/ folder) and if you are running the strategy live. - paper_1 diff --git a/docsrc/_build/html/deployment.html b/docsrc/_build/html/deployment.html index 855b56621..f9544cca6 100644 --- a/docsrc/_build/html/deployment.html +++ b/docsrc/_build/html/deployment.html @@ -855,35 +855,39 @@