diff --git a/TODO.md b/TODO.md
index 5678cef..021cd76 100644
--- a/TODO.md
+++ b/TODO.md
@@ -1,6 +1,9 @@
+- [ ] Add disequilibrium chart
+- [ ] Add scatter chart for `mr-rank <--> realized pnl`
+
+# DONE
+
+## 2026-07-29
+
+- [x] Change notebook and panel (stat_pairs_backtest) to use sp_quant's database tables `trading_instructions` and `market`, to have *disequilibrium* and *beta*
-- [ ] Modify spbt_coordinator to run QUANT with --ti-database argument
-- [ ] Modify sim/fgw_simulator.py to rename trading_instructions table to fgw_trading_instructions
-- [ ] Change notebook and panel (stat_pairs_backtest) to merge trading instructions tables - to have disequilibrium and beta
-- [ ] Add disequilibrium chart
-- [ ] Add scatter chart for mr-rank and realized pnl
\ No newline at end of file
diff --git a/__SAV__/CHANGELOG.md b/__SAV__/CHANGELOG.md
deleted file mode 100644
index 9ab2d0e..0000000
--- a/__SAV__/CHANGELOG.md
+++ /dev/null
@@ -1,2 +0,0 @@
-## 2026-02-09 (v0.0.9)
-- related to the changes made in *cvttpy_tools 1.4.7*
diff --git a/__SAV__/PAIRS_TRADING_BACKTEST_USAGE.md b/__SAV__/PAIRS_TRADING_BACKTEST_USAGE.md
deleted file mode 100644
index 4a575d4..0000000
--- a/__SAV__/PAIRS_TRADING_BACKTEST_USAGE.md
+++ /dev/null
@@ -1,185 +0,0 @@
-# Enhanced Pairs Trading Backtest Usage Guide
-
-## Overview
-
-The enhanced `pt_backtest.py` script now supports multi-day and multi-instrument backtesting with SQLite database output. This guide explains how to use the new features.
-
-## New Features
-
-### 1. Multi-Day Data Processing
-- Process multiple data files in a single run
-- Support for wildcard patterns in configuration files
-- CLI override for data file specification
-
-
-### 2. Dynamic Instrument Selection
-- Auto-detection of instruments from database
-- CLI override for instrument specification
-- No need to manually update configuration files
-
-### 3. SQLite Database Output
-- Automated storage of backtest results
-- Structured data format for analysis
-- Optional database output (can be disabled)
-
-## Command Line Arguments
-
-### Required Arguments
-- `--config`: Path to configuration file
-- `--result_db`: Path to SQLite database for results (use "NONE" to disable)
-
-### Optional Arguments
-- `--datafiles`: Comma-separated list of data files (overrides config)
-- `--instruments`: Comma-separated list of instruments (overrides auto-detection)
-
-## Usage Examples
-
-### Basic Usage (Auto-detect instruments, use config datafiles)
-```bash
-python src/pt_backtest.py --config configuration/crypto.cfg --result_db results.db
-```
-
-### Specify Instruments via CLI
-```bash
-python src/pt_backtest.py \
- --config configuration/crypto.cfg \
- --result_db results.db \
- --instruments "BTC-USDT,ETH-USDT,ADA-USDT"
-```
-
-### Override Data Files via CLI
-```bash
-python src/pt_backtest.py \
- --config configuration/crypto.cfg \
- --result_db results.db \
- --datafiles "20250528.mktdata.ohlcv.db,20250529.mktdata.ohlcv.db"
-```
-
-### Complete Override (Custom instruments and data files)
-```bash
-python src/pt_backtest.py \
- --config configuration/crypto.cfg \
- --result_db results.db \
- --instruments "BTC-USDT,ETH-USDT" \
- --datafiles "20250528.mktdata.ohlcv.db,20250529.mktdata.ohlcv.db"
-```
-
-### Disable Database Output
-```bash
-python src/pt_backtest.py \
- --config configuration/crypto.cfg \
- --result_db NONE
-```
-
-## Configuration File Updates
-
-### Wildcard Support in Data Files
-The configuration file now supports wildcards in the `datafiles` array:
-
-```json
-{
- "datafiles": [
- "2025*.mktdata.ohlcv.db",
- "specific_file.db",
- "202405*.mktdata.ohlcv.db"
- ]
-}
-```
-
-### Multiple Patterns
-You can specify multiple wildcard patterns:
-
-```json
-{
- "datafiles": [
- "202405*.mktdata.ohlcv.db",
- "202406*.mktdata.ohlcv.db",
- "special_data.db"
- ]
-}
-```
-
-## Database Schema
-
-The script creates a `pt_bt_results` table with the following schema:
-
-| Column | Type | Description |
-|--------|------|-------------|
-| date | DATE | Trading date extracted from filename |
-| pair | TEXT | Trading pair name (e.g., "BTC-USDT & ETH-USDT") |
-| symbol | TEXT | Individual symbol (e.g., "BTC-USDT") |
-| open_time | DATETIME | Trade opening time |
-| open_side | TEXT | Opening side (BUY/SELL) |
-| open_price | REAL | Opening price |
-| open_quantity | INTEGER | Opening quantity |
-| open_disequilibrium | REAL | Disequilibrium at opening |
-| close_time | DATETIME | Trade closing time |
-| close_side | TEXT | Closing side (BUY/SELL) |
-| close_price | REAL | Closing price |
-| close_quantity | INTEGER | Closing quantity |
-| close_disequilibrium | REAL | Disequilibrium at closing |
-| symbol_return | REAL | Individual symbol return (%) |
-| pair_return | REAL | Combined pair return (%) |
-
-## Auto-Detection Logic
-
-### Instrument Auto-Detection
-When `--instruments` is not specified, the script:
-1. Connects to each data file
-2. Queries distinct `instrument_id` values from the configured table
-3. Removes the configured prefix (`instrument_id_pfx`)
-4. Uses the resulting symbols for pair generation
-
-### Data File Resolution
-The script resolves data files in this order:
-1. If `--datafiles` is specified, use those files
-2. Otherwise, process each pattern in config `datafiles`:
- - Expand wildcards using `glob.glob()`
- - Resolve relative paths using `data_directory`
- - Remove duplicates and sort
-
-## Output
-
-### Console Output
-- Lists all data files to be processed
-- Shows auto-detected or specified instruments
-- Displays trade signals for each file
-- Prints returns by day and pair
-- Shows grand totals and outstanding positions
-
-### Database Output
-- Creates database and table automatically
-- Stores detailed trade information
-- Includes calculated returns
-- One record per symbol per trade
-
-## Error Handling
-
-The script includes comprehensive error handling:
-- Invalid data files are skipped with warnings
-- Database connection errors are reported
-- Auto-detection failures fall back gracefully
-- Processing errors are logged with stack traces
-
-## Performance Considerations
-
-- Wildcard expansion happens once at startup
-- Database connections are opened/closed per operation
-- Large numbers of files are processed sequentially
-- Memory usage scales with the number of instruments and data points
-
-## Troubleshooting
-
-### Common Issues
-
-1. **No instruments found**: Check that the database contains data for the specified exchange_id
-2. **No data files found**: Verify wildcard patterns and data_directory path
-3. **Database errors**: Ensure write permissions for the result database path
-4. **Memory issues**: Consider processing fewer files at once or reducing instrument count
-
-### Debug Tips
-
-- Use `--result_db NONE` to disable database output during testing
-- Start with a small set of instruments using `--instruments`
-- Test with explicit file lists using `--datafiles` before using wildcards
-- Check console output for detailed processing information
\ No newline at end of file
diff --git a/__SAV__/README.md b/__SAV__/README.md
deleted file mode 100644
index e4ac969..0000000
--- a/__SAV__/README.md
+++ /dev/null
@@ -1,132 +0,0 @@
-# Pairs Trading Backtest
-
-This document provides a guide to understanding, configuring, and running the pairs trading backtest system.
-
-## Overview
-
-The system is designed to backtest pairs trading strategies on historical market data.
-It allows users to select different strategies, configure parameters, and analyze the
-performance of these strategies.
-
-## Core Concepts
-
-### Trading Pair
-A trading pair consists of two financial instruments (e.g., stocks or cryptocurrencies)
-whose prices are believed to have a long-term statistical relationship (cointegration).
-The strategy aims to profit from temporary deviations from this relationship.
-
-### Strategy
-The system supports different strategies for identifying and exploiting trading opportunities. Each strategy has its own set of configurable parameters.
-
-### Trading Signals
-Trading signals indicate when to open or close a position based on the configured strategy
-and parameters. These signals are typically generated when the "dis-equilibrium" (the
-deviation from the long-term relationship) crosses certain thresholds.
-
-## Running a Backtest
-
-### 1. Configuration
-
-The primary configuration for the backtest is managed in the `src/pt_backtest.py` file. Here, you will define which dataset to use (cryptocurrencies or equities) and which strategy to employ.
-
-#### Choosing a Dataset:
-You can switch between `CRYPTO_CONFIG` and `EQT_CONFIG` by uncommenting the desired configuration block:
-
-```python
-# CONFIG = CRYPTO_CONFIG # For cryptocurrency data
-CONFIG = EQT_CONFIG # For equity data
-```
-
-Each configuration dictionary specifies:
-- `data_directory`: Path to the data files.
-- `datafiles`: A list of database files to process. You can comment/uncomment specific files to include/exclude them from the backtest.
-- `db_table_name`: The name of the table within the SQLite database.
-- `instruments`: A list of symbols to consider for forming trading pairs.
-- `trading_hours`: Defines the session start and end times, crucial for equity markets.
-- `stat_model_price`: The column in the data to be used as the price (e.g., "close").
-- `dis-equilibrium_open_trshld`: The threshold (in standard deviations) of the dis-equilibrium for opening a trade.
-- `dis-equilibrium_close_trshld`: The threshold (in standard deviations) of the dis-equilibrium for closing an open trade.
-- `training_minutes`: The length of the rolling window (in minutes) used to train the model (e.g., calculate cointegration, mean, and standard deviation of the dis-equilibrium).
-- `funding_per_pair`: The amount of capital allocated to each trading pair.
-
-#### Choosing a Strategy:
-The system currently offers two main strategies: `StaticFitStrategy` and `SlidingFitStrategy`. You select a strategy by instantiating it:
-
-```python
-# STRATEGY = StaticFitStrategy()
-STRATEGY = SlidingFitStrategy()
-```
-
-- **`StaticFitStrategy`**: This strategy fits the cointegration model once at the beginning
- of each trading day (or for the entire dataset if run on a single file without a rolling
- window logic in the strategy itself). The parameters (mean, standard deviation of
- dis-equilibrium) derived from this initial fit are used for generating trading signals
- throughout the day.
- - **Pros**: Simpler, computationally less intensive.
- - **Cons**: May not adapt well to changing market conditions during the day.
-
-- **`SlidingFitStrategy`**: This strategy uses a rolling window approach. The cointegration model and its parameters are re-estimated at regular intervals (defined by `training_minutes` and how the strategy implements the sliding window). This allows the strategy to adapt to evolving market dynamics.
- - **Pros**: More adaptive to changing market conditions.
- - **Cons**: Computationally more intensive. The `training_minutes` parameter is crucial here as it defines the look-back period for each re-estimation.
-
-### 2. Parameters for Trading Signals
-
-The key parameters that determine trading signals are primarily found within the `CONFIG` dictionaries:
-
-- **`dis-equilibrium_open_trshld`**: This is the number of standard deviations the current dis-equilibrium must move away from its mean (calculated during the training period) to trigger an opening signal.
- - A *higher* value means the strategy will wait for a more significant deviation before entering a trade, leading to fewer but potentially more robust signals.
- - A *lower* value means the strategy will enter trades on smaller deviations, leading to more frequent signals but potentially more false positives.
-
-- **`dis-equilibrium_close_trshld`**: This is the number of standard deviations the current dis-equilibrium must revert towards its mean (from its peak deviation) to trigger a closing signal.
- - A *higher* value (closer to the `dis-equilibrium_open_trshld`) means the strategy will close trades more quickly as the dis-equilibrium starts to revert.
- - A *lower* value (closer to zero) means the strategy will hold onto trades longer, waiting for the dis-equilibrium to revert more significantly towards the mean.
-
-- **`training_minutes`**:
- - For `StaticFitStrategy`, this determines the initial period of data used to establish the cointegration relationship and calculate the baseline dis-equilibrium statistics for the entire trading day (or dataset portion being processed).
- - For `SlidingFitStrategy`, this defines the length of the rolling window. The model is refit using data from the most recent `training_minutes` period. A shorter window makes the strategy more responsive to recent price action but might be more prone to noise. A longer window provides a more stable model but might be slower to adapt to new trends.
-
-### 3. Running the Script
-
-Once the configuration is set, you can run the backtest from your terminal:
-
-```bash
-python src/pt_backtest.py
-```
-
-The script will process each datafile specified in the `CONFIG`, create all possible unique pairs from the `instruments` list, and apply the chosen strategy.
-
-### 4. Interpreting Results
-
-The script will output:
-- Progress messages for each datafile being processed.
-- A summary of trades taken.
-- Grand totals of performance metrics (PnL, etc.).
-- A list of any outstanding positions at the end of the backtest.
-
-The core logic for a pair involves:
-1. **Data Preparation**: For each pair, relevant price series are extracted.
-2. **Training Phase** (for `SlidingFitStrategy`, this happens repeatedly; for `StaticFitStrategy`, typically once per day/file):
- * The `get_datasets()` method in `TradingPair` splits data into training and testing sets.
- * `check_cointegration()` uses the Johansen test to see if the pair's price series are cointegrated within the current training window. If not, the pair is often skipped for that window.
- * If cointegrated, `fit_VECM()` estimates a Vector Error Correction Model (VECM). The `beta` coefficients from this model define the cointegrating relationship (the "spread" or "dis-equilibrium series").
- * `training_mu_` (mean) and `training_std_` (standard deviation) of this dis-equilibrium series are calculated. These are crucial for scaling the dis-equilibrium and setting trade thresholds.
-3. **Prediction/Trading Phase**:
- * The strategy iterates through the "testing" data points.
- * For each point, the current dis-equilibrium is calculated using the `beta` from the VECM.
- * This dis-equilibrium is then scaled: `(current_disequilibrium - training_mu_) / training_std_`.
- * This scaled value is compared against `dis-equilibrium_open_trshld` and `dis-equilibrium_close_trshld` to generate buy/sell/close signals.
-
-## Customizing and Extending
-
-- **Adding New Strategies**: Create a new class that inherits from a base strategy class (if one exists) or implements a similar interface to `StaticFitStrategy` or `SlidingFitStrategy`. The core method to implement would be `run_pair()`.
-- **Modifying Data Loading**: The `tools/data_loader.py` can be modified to support different data formats or sources.
-- **Changing Cointegration/Model Parameters**: The `TradingPair` class houses the VECM fitting and cointegration checks. You can adjust parameters like `k_ar_diff` in `coint_johansen` or the `VECM` model itself.
-
-## Important Considerations
-
-- **Data Quality**: Ensure your market data is clean, accurate, and properly formatted. Gaps or errors in data can significantly impact backtest results.
-- **Transaction Costs**: The current backtest might not explicitly model transaction costs (brokerage fees, slippage). These can have a significant impact on the profitability of high-frequency strategies. Consider adding a cost model to `BacktestResult` or within the strategy execution.
-- **Look-ahead Bias**: Be extremely careful to avoid look-ahead bias. Ensure that decisions at any point in time are made using only information that would have been available at that time. The use of `training_df_` and `testing_df_` in `TradingPair` is designed to help prevent this.
-- **Overfitting**: When optimizing parameters (`dis-equilibrium_open_trshld`, `training_minutes`, etc.), be mindful of overfitting to the historical data. A strategy that performs exceptionally well on past data may not perform well in the future. Use out-of-sample testing or walk-forward optimization for more robust validation.
-
-This tutorial should provide a solid foundation for working with the pairs trading backtest system. Experiment with different configurations and strategies to find what works best for your chosen markets and instruments.
\ No newline at end of file
diff --git a/__SAV__/VERSION b/__SAV__/VERSION
deleted file mode 100644
index 429d94a..0000000
--- a/__SAV__/VERSION
+++ /dev/null
@@ -1 +0,0 @@
-0.0.9
\ No newline at end of file
diff --git a/__SAV__/apps/pair_selector/pair_selector.py b/__SAV__/apps/pair_selector/pair_selector.py
deleted file mode 100644
index 6b111e3..0000000
--- a/__SAV__/apps/pair_selector/pair_selector.py
+++ /dev/null
@@ -1,937 +0,0 @@
-from __future__ import annotations
-
-import asyncio
-import os
-import sqlite3
-from dataclasses import dataclass
-from typing import Any, Dict, List, Optional, Sequence, Set, Tuple, Union
-
-from aiohttp import web
-import numpy as np
-import pandas as pd
-from statsmodels.tsa.stattools import adfuller, coint # type: ignore
-from statsmodels.tsa.vector_ar.vecm import coint_johansen # type: ignore
-
-
-from cvttpy_tools.base.app import App
-from cvttpy_tools.base.base import NamedObject
-from cvttpy_tools.base.config import Config, CvttAppConfig
-from cvttpy_tools.base.logger import Log
-from cvttpy_tools.base.timeutils import NanoPerSec, SecPerHour, current_nanoseconds
-from cvttpy_tools.comm.web.rest_service import RestService
-
-from cvttpy_trading.trading.exchange_config import ExchangeAccounts
-from cvttpy_trading.trading.instrument import ExchangeInstrument
-from cvttpy_trading.trading.mkt_data.md_summary import MdTradesAggregate, MdSummary
-
-from pairs_trading.apps.pair_selector.renderer import HtmlRenderer
-from pairs_trading.lib.live.rest import RESTSender
-
-
-@dataclass
-class BacktestAggregate:
- aggr_time_ns_: int
- num_trades_: Optional[int]
-
-
-@dataclass
-class InstrumentQuality(NamedObject):
- instrument_: ExchangeInstrument
- record_count_: int
- latest_tstamp_: Optional[pd.Timestamp]
- status_: str
- reason_: str
-
-
-@dataclass
-class PairStats(NamedObject):
- pair_name_: str
- instrument_a_: ExchangeInstrument
- instrument_b_: ExchangeInstrument
- pvalue_eg_: Optional[float]
- pvalue_adf_: Optional[float]
- pvalue_j_: Optional[float]
- trace_stat_j_: Optional[float]
- rank_eg_: int = 0
- rank_adf_: int = 0
- rank_j_: int = 0
- composite_rank_: int = 0
-
- def as_dict(self) -> Dict[str, Any]:
- return {
- "exchange_a": self.instrument_a_.exchange_id_,
- "exchange_b": self.instrument_b_.exchange_id_,
- "pair_name": self.pair_name_,
- "instrument_a": self.instrument_a_.instrument_id(),
- "instrument_b": self.instrument_b_.instrument_id(),
- "pvalue_eg": self.pvalue_eg_,
- "pvalue_adf": self.pvalue_adf_,
- "pvalue_j": self.pvalue_j_,
- "trace_stat_j": self.trace_stat_j_,
- "rank_eg": self.rank_eg_,
- "rank_adf": self.rank_adf_,
- "rank_j": self.rank_j_,
- "composite_rank": self.composite_rank_,
- }
-
-
-def _extract_price_from_fields(
- price_field: str,
- inst: ExchangeInstrument,
- open: Optional[float],
- high: Optional[float],
- low: Optional[float],
- close: Optional[float],
- vwap: Optional[float],
-) -> float:
- field_map = {
- "open": open,
- "high": high,
- "low": low,
- "close": close,
- "vwap": vwap,
- }
- raw = field_map.get(price_field, close)
- if raw is None:
- raw = 0.0
- return inst.get_price(raw)
-
-
-class DataFetcher(NamedObject):
- sender_: RESTSender
- interval_sec_: int
- history_depth_sec_: int
-
- def __init__(
- self,
- base_url: str,
- interval_sec: int,
- history_depth_sec: int,
- ) -> None:
- self.sender_ = RESTSender(base_url=base_url)
- self.interval_sec_ = interval_sec
- self.history_depth_sec_ = history_depth_sec
-
- def fetch(
- self, exch_acct: str, inst: ExchangeInstrument
- ) -> List[MdTradesAggregate]:
- rqst_data = {
- "exch_acct": exch_acct,
- "instrument_id": inst.instrument_id(),
- "interval_sec": self.interval_sec_,
- "history_depth_sec": self.history_depth_sec_,
- }
- response = self.sender_.send_post(endpoint="md_summary", post_body=rqst_data)
- if response.status_code not in (200, 201):
- Log.error(
- f"{self.fname()}: error {response.status_code} for {inst.details_short()}: {response.text}"
- )
- return []
- mdsums: List[MdSummary] = MdSummary.from_REST_response(response=response)
- return [
- mdsum.create_md_trades_aggregate(
- exch_acct=exch_acct, exch_inst=inst, interval_sec=self.interval_sec_
- )
- for mdsum in mdsums
- ]
-
-
-AggregateLike = Union[MdTradesAggregate, BacktestAggregate]
-
-
-class QualityChecker(NamedObject):
- interval_sec_: int
-
- def __init__(self, interval_sec: int) -> None:
- self.interval_sec_ = interval_sec
-
- def evaluate(
- self,
- inst: ExchangeInstrument,
- aggr: Sequence[AggregateLike],
- now_ts: Optional[pd.Timestamp] = None,
- ) -> InstrumentQuality:
- if len(aggr) == 0:
- return InstrumentQuality(
- instrument_=inst,
- record_count_=0,
- latest_tstamp_=None,
- status_="FAIL",
- reason_="no records",
- )
-
- aggr_sorted = sorted(aggr, key=lambda a: a.aggr_time_ns_)
-
- latest_ts = pd.to_datetime(aggr_sorted[-1].aggr_time_ns_, unit="ns", utc=True)
- now_ts = now_ts or pd.Timestamp.utcnow()
- recency_cutoff = now_ts - pd.Timedelta(seconds=2 * self.interval_sec_)
- if latest_ts <= recency_cutoff:
- return InstrumentQuality(
- instrument_=inst,
- record_count_=len(aggr_sorted),
- latest_tstamp_=latest_ts,
- status_="FAIL",
- reason_=f"stale: latest {latest_ts} <= cutoff {recency_cutoff}",
- )
-
- gaps_ok, reason = self._check_gaps(aggr_sorted)
- status = "PASS" if gaps_ok else "FAIL"
- return InstrumentQuality(
- instrument_=inst,
- record_count_=len(aggr_sorted),
- latest_tstamp_=latest_ts,
- status_=status,
- reason_=reason,
- )
-
- def _check_gaps(self, aggr: Sequence[AggregateLike]) -> Tuple[bool, str]:
- NUM_TRADES_THRESHOLD = 50
- if len(aggr) < 2:
- return True, "ok"
-
- interval_ns = self.interval_sec_ * NanoPerSec
- for idx in range(1, len(aggr)):
- prev = aggr[idx - 1]
- curr = aggr[idx]
- delta = curr.aggr_time_ns_ - prev.aggr_time_ns_
- missing_intervals = int(delta // interval_ns) - 1
- if missing_intervals <= 0:
- continue
-
- prev_nt = prev.num_trades_
- next_nt = curr.num_trades_
- estimate = self._approximate_num_trades(prev_nt, next_nt)
- if estimate > NUM_TRADES_THRESHOLD:
- return False, (
- f"gap of {missing_intervals} interval(s), est num_trades={estimate} > {NUM_TRADES_THRESHOLD}"
- )
- return True, "ok"
-
- @staticmethod
- def _approximate_num_trades(prev_nt: Optional[int], next_nt: Optional[int]) -> float:
- if prev_nt is None and next_nt is None:
- return 0.0
- if prev_nt is None:
- return float(next_nt or 0)
- if next_nt is None:
- return float(prev_nt)
- return (prev_nt + next_nt) / 2.0
-
-
-class PairAnalyzer(NamedObject):
- price_field_: str
- interval_sec_: int
-
- def __init__(self, price_field: str, interval_sec: int) -> None:
- self.price_field_ = price_field
- self.interval_sec_ = interval_sec
-
- def analyze(
- self, series: Dict[ExchangeInstrument, pd.DataFrame]
- ) -> Dict[str, PairStats]:
- instruments = list(series.keys())
- results: Dict[str, PairStats] = {}
- for i in range(len(instruments)):
- for j in range(i + 1, len(instruments)):
- inst_a, inst_b, pair_name = self._normalized_pair(
- instruments[i], instruments[j]
- )
- df_a = series[inst_a][["tstamp", "price"]].rename(
- columns={"price": "price_a"}
- )
- df_b = series[inst_b][["tstamp", "price"]].rename(
- columns={"price": "price_b"}
- )
- merged = pd.merge(df_a, df_b, on="tstamp", how="inner").sort_values(
- "tstamp"
- )
- # Log.info(f"{self.fname()}: analyzing {pair_name}")
- stats = self._compute_stats(inst_a, inst_b, pair_name, merged)
- if stats:
- results[pair_name] = stats
- return self._rank(results)
-
- def _compute_stats(
- self,
- inst_a: ExchangeInstrument,
- inst_b: ExchangeInstrument,
- pair_name: str,
- merged: pd.DataFrame,
- ) -> Optional[PairStats]:
- if len(merged) < 2:
- return None
- px_a = merged["price_a"].astype(float)
- px_b = merged["price_b"].astype(float)
-
- std_a = float(px_a.std())
- std_b = float(px_b.std())
- if std_a == 0 or std_b == 0:
- return None
-
- z_a = (px_a - float(px_a.mean())) / std_a
- z_b = (px_b - float(px_b.mean())) / std_b
-
- p_eg: Optional[float]
- p_adf: Optional[float]
- p_j: Optional[float]
- trace_stat: Optional[float]
-
- try:
- p_eg = float(coint(z_a, z_b)[1])
- except Exception as exc:
- Log.warning(
- f"{self.fname()}: EG failed for {inst_a.details_short()}/{inst_b.details_short()}: {exc}"
- )
- p_eg = None
-
- try:
- spread = z_a - z_b
- p_adf = float(adfuller(spread, maxlag=1, regression="c")[1])
- except Exception as exc:
- Log.warning(
- f"{self.fname()}: ADF failed for {inst_a.details_short()}/{inst_b.details_short()}: {exc}"
- )
- p_adf = None
-
- try:
- data = np.column_stack([z_a, z_b])
- res = coint_johansen(data, det_order=0, k_ar_diff=1)
- trace_stat = float(res.lr1[0])
- cv10, cv5, cv1 = res.cvt[0]
- if trace_stat > cv1:
- p_j = 0.01
- elif trace_stat > cv5:
- p_j = 0.05
- elif trace_stat > cv10:
- p_j = 0.10
- else:
- p_j = 1.0
- except Exception as exc:
- Log.warning(
- f"{self.fname()}: Johansen failed for {inst_a.details_short()}/{inst_b.details_short()}: {exc}"
- )
- p_j = None
- trace_stat = None
-
- return PairStats(
- pair_name_=pair_name,
- instrument_a_=inst_a,
- instrument_b_=inst_b,
- pvalue_eg_=p_eg,
- pvalue_adf_=p_adf,
- pvalue_j_=p_j,
- trace_stat_j_=trace_stat,
- )
-
- def _rank(self, results: Dict[str, PairStats]) -> Dict[str, PairStats]:
- ranked = list(results.values())
- self._assign_ranks(ranked, key=lambda r: r.pvalue_eg_, attr="rank_eg_")
- self._assign_ranks(ranked, key=lambda r: r.pvalue_adf_, attr="rank_adf_")
- self._assign_ranks(ranked, key=lambda r: r.pvalue_j_, attr="rank_j_")
- for res in ranked:
- res.composite_rank_ = res.rank_eg_ + res.rank_adf_ # + res.rank_j_
- ranked.sort(key=lambda r: r.composite_rank_)
- return {res.pair_name_: res for res in ranked}
-
- @staticmethod
- def _normalized_pair(
- inst_a: ExchangeInstrument, inst_b: ExchangeInstrument
- ) -> Tuple[ExchangeInstrument, ExchangeInstrument, str]:
- inst_a_id = PairAnalyzer._pair_label(inst_a.instrument_id())
- inst_b_id = PairAnalyzer._pair_label(inst_b.instrument_id())
- if inst_a_id <= inst_b_id:
- return inst_a, inst_b, f"{inst_a_id}<->{inst_b_id}"
- return inst_b, inst_a, f"{inst_b_id}<->{inst_a_id}"
-
- @staticmethod
- def _pair_label(instrument_id: str) -> str:
- if instrument_id.startswith("PAIR-"):
- return instrument_id[len("PAIR-") :]
- return instrument_id
-
- @staticmethod
- def _assign_ranks(results: List[PairStats], key, attr: str) -> None:
- values = [key(r) for r in results]
- sorted_vals = sorted([v for v in values if v is not None])
- for res in results:
- val = key(res)
- if val is None:
- setattr(res, attr, len(sorted_vals) + 1)
- continue
- rank = 1 + sum(1 for v in sorted_vals if v < val)
- setattr(res, attr, rank)
-
-
-class PairSelectionEngine(NamedObject):
- config_: object
- instruments_: List[ExchangeInstrument]
- price_field_: str
- fetcher_: DataFetcher
- quality_: QualityChecker
- analyzer_: PairAnalyzer
- interval_sec_: int
- history_depth_sec_: int
- data_quality_cache_: List[InstrumentQuality]
- pair_results_cache_: Dict[str, PairStats]
-
- def __init__(
- self,
- config: Config,
- instruments: List[ExchangeInstrument],
- price_field: str,
- ) -> None:
- self.config_ = config
- self.instruments_ = instruments
- self.price_field_ = price_field
-
- interval_sec = int(config.get_value("interval_sec", 0))
- history_depth_sec = int(config.get_value("history_depth_hours", 0)) * SecPerHour
- base_url = config.get_value("cvtt_base_url", None)
- assert interval_sec > 0, "interval_sec must be > 0"
- assert history_depth_sec > 0, "history_depth_sec must be > 0"
- assert base_url, "cvtt_base_url must be set"
-
- self.fetcher_ = DataFetcher(
- base_url=base_url,
- interval_sec=interval_sec,
- history_depth_sec=history_depth_sec,
- )
- self.quality_ = QualityChecker(interval_sec=interval_sec)
- self.analyzer_ = PairAnalyzer(
- price_field=price_field, interval_sec=interval_sec
- )
-
- self.interval_sec_ = interval_sec
- self.history_depth_sec_ = history_depth_sec
-
- self.data_quality_cache_ = []
- self.pair_results_cache_ = {}
-
- async def run_once(self) -> None:
- quality_results: List[InstrumentQuality] = []
- price_series: Dict[ExchangeInstrument, pd.DataFrame] = {}
-
- for inst in self.instruments_:
- exch_acct = inst.user_data_.get("exch_acct") or inst.exchange_id_
- aggr = self.fetcher_.fetch(exch_acct=exch_acct, inst=inst)
- q = self.quality_.evaluate(inst, aggr)
- quality_results.append(q)
- if q.status_ != "PASS":
- continue
- df = self._to_dataframe(aggr, inst)
- if len(df) > 0:
- price_series[inst] = df
- self.data_quality_cache_ = quality_results
- self.pair_results_cache_ = self.analyzer_.analyze(price_series)
-
- def _to_dataframe(
- self, aggr: List[MdTradesAggregate], inst: ExchangeInstrument
- ) -> pd.DataFrame:
- rows: List[Dict[str, Any]] = []
- for item in aggr:
- rows.append(
- {
- "tstamp": pd.to_datetime(item.aggr_time_ns_, unit="ns", utc=True),
- "price": self._extract_price(item, inst),
- "num_trades": item.num_trades_,
- }
- )
- df = pd.DataFrame(rows)
- return df.sort_values("tstamp").reset_index(drop=True)
-
- def _extract_price(
- self, aggr: MdTradesAggregate, inst: ExchangeInstrument
- ) -> float:
- return _extract_price_from_fields(
- price_field=self.price_field_,
- inst=inst,
- open=aggr.open_,
- high=aggr.high_,
- low=aggr.low_,
- close=aggr.close_,
- vwap=aggr.vwap_,
- )
-
- def sleep_seconds_until_next_cycle(self) -> float:
- now_ns = current_nanoseconds()
- interval_ns = self.interval_sec_ * NanoPerSec
- next_boundary = (now_ns // interval_ns + 1) * interval_ns
- return max(0.0, (next_boundary - now_ns) / NanoPerSec)
-
- def quality_dicts(self) -> List[Dict[str, Any]]:
- res: List[Dict[str, Any]] = []
- for q in self.data_quality_cache_:
- res.append(
- {
- "instrument": q.instrument_.instrument_id(),
- "record_count": q.record_count_,
- "latest_tstamp": (
- q.latest_tstamp_.isoformat() if q.latest_tstamp_ else None
- ),
- "status": q.status_,
- "reason": q.reason_,
- }
- )
- return res
-
- def pair_dicts(self) -> Dict[str, Dict[str, Any]]:
- return {
- pair_name: stats.as_dict()
- for pair_name, stats in self.pair_results_cache_.items()
- }
-
-
-class PairSelectionBacktest(NamedObject):
- config_: object
- instruments_: List[ExchangeInstrument]
- price_field_: str
- input_db_: str
- output_db_: str
- interval_sec_: int
- history_depth_hours_: int
- quality_: QualityChecker
- analyzer_: PairAnalyzer
- inst_by_key_: Dict[Tuple[str, str], ExchangeInstrument]
- inst_by_id_: Dict[str, Optional[ExchangeInstrument]]
- ambiguous_ids_: Set[str]
-
- def __init__(
- self,
- config: Config,
- instruments: List[ExchangeInstrument],
- price_field: str,
- input_db: str,
- output_db: str,
- ) -> None:
- self.config_ = config
- self.instruments_ = instruments
- self.price_field_ = price_field
- self.input_db_ = input_db
- self.output_db_ = output_db
-
- interval_sec = int(config.get_value("interval_sec", 0))
- if interval_sec <= 0:
- Log.warning(
- f"{self.fname()}: interval_sec not set; defaulting to 60 seconds"
- )
- interval_sec = 60
- history_depth_hours = int(config.get_value("history_depth_hours", 0))
- assert history_depth_hours > 0, "history_depth_hours must be > 0"
-
- self.interval_sec_ = interval_sec
- self.history_depth_hours_ = history_depth_hours
- self.quality_ = QualityChecker(interval_sec=interval_sec)
- self.analyzer_ = PairAnalyzer(
- price_field=price_field, interval_sec=interval_sec
- )
-
- self.inst_by_key_ = {
- (inst.exchange_id_, inst.instrument_id()): inst for inst in instruments
- }
- self.inst_by_id_ = {}
- self.ambiguous_ids_ = set()
- for inst in instruments:
- inst_id = inst.instrument_id()
- if inst_id in self.inst_by_id_:
- existing = self.inst_by_id_[inst_id]
- if existing is not None and existing.exchange_id_ != inst.exchange_id_:
- self.inst_by_id_[inst_id] = None
- self.ambiguous_ids_.add(inst_id)
- elif inst_id not in self.ambiguous_ids_:
- self.inst_by_id_[inst_id] = inst
-
- if self.ambiguous_ids_:
- Log.warning(
- f"{self.fname()}: ambiguous instrument_id(s) without exchange_id: "
- f"{sorted(self.ambiguous_ids_)}"
- )
-
- def run(self) -> None:
- df = self._load_input_df()
- if df.empty:
- Log.warning(f"{self.fname()}: no rows in md_1min_bars")
- return
-
- df = self._filter_instruments(df)
- if df.empty:
- Log.warning(f"{self.fname()}: no rows after instrument filtering")
- return
-
- conn = self._init_output_db()
- try:
- self._run_backtest(df, conn)
- finally:
- conn.commit()
- conn.close()
-
- def _load_input_df(self) -> pd.DataFrame:
- if not os.path.exists(self.input_db_):
- raise FileNotFoundError(f"input_db not found: {self.input_db_}")
- with sqlite3.connect(self.input_db_) as conn:
- df = pd.read_sql_query(
- """
- SELECT
- tstamp,
- tstamp_ns,
- exchange_id,
- instrument_id,
- open,
- high,
- low,
- close,
- volume,
- vwap,
- num_trades
- FROM md_1min_bars
- """,
- conn,
- )
- if df.empty:
- return df
-
- ts_ns = pd.to_datetime(df["tstamp_ns"], unit="ns", utc=True, errors="coerce")
- ts_txt = pd.to_datetime(df["tstamp"], utc=True, errors="coerce")
- df["tstamp"] = ts_ns.fillna(ts_txt)
- df = df.dropna(subset=["tstamp", "instrument_id"]).copy()
- df["exchange_id"] = df["exchange_id"].fillna("")
- df["instrument_id"] = df["instrument_id"].astype(str)
- df["tstamp_ns"] = df["tstamp"].astype("int64")
- return df.sort_values("tstamp").reset_index(drop=True)
-
- def _filter_instruments(self, df: pd.DataFrame) -> pd.DataFrame:
- instrument_ids = {inst.instrument_id() for inst in self.instruments_}
- df = df[df["instrument_id"].isin(instrument_ids)].copy()
- if "exchange_id" in df.columns:
- exchange_ids = {inst.exchange_id_ for inst in self.instruments_}
- df = df[
- (df["exchange_id"].isin(exchange_ids)) | (df["exchange_id"] == "")
- ].copy()
- return df
-
- def _init_output_db(self) -> sqlite3.Connection:
- if os.path.exists(self.output_db_):
- os.remove(self.output_db_)
- conn = sqlite3.connect(self.output_db_)
- conn.execute(
- """
- CREATE TABLE pair_selection_history (
- tstamp TEXT,
- tstamp_ns INTEGER,
- pair_name TEXT,
- exchange_a TEXT,
- instrument_a TEXT,
- exchange_b TEXT,
- instrument_b TEXT,
- pvalue_eg REAL,
- pvalue_adf REAL,
- pvalue_j REAL,
- trace_stat_j REAL,
- rank_eg INTEGER,
- rank_adf INTEGER,
- rank_j INTEGER,
- composite_rank REAL
- )
- """
- )
- conn.execute(
- """
- CREATE INDEX idx_pair_selection_history_pair_name
- ON pair_selection_history (pair_name)
- """
- )
- conn.execute(
- """
- CREATE UNIQUE INDEX idx_pair_selection_history_tstamp_pair
- ON pair_selection_history (tstamp, pair_name)
- """
- )
- conn.commit()
- return conn
-
- def _resolve_instrument(
- self, exchange_id: str, instrument_id: str
- ) -> Optional[ExchangeInstrument]:
- if exchange_id:
- inst = self.inst_by_key_.get((exchange_id, instrument_id))
- if inst is not None:
- return inst
- inst = self.inst_by_id_.get(instrument_id)
- if inst is None and instrument_id in self.ambiguous_ids_:
- return None
- return inst
-
- def _build_day_series(
- self, df_day: pd.DataFrame
- ) -> Dict[ExchangeInstrument, pd.DataFrame]:
- series: Dict[ExchangeInstrument, pd.DataFrame] = {}
- group_cols = ["exchange_id", "instrument_id"]
- for key, group in df_day.groupby(group_cols, dropna=False):
- exchange_id, instrument_id = key
- inst = self._resolve_instrument(str(exchange_id or ""), str(instrument_id))
- if inst is None:
- continue
- df_inst = group.copy()
- df_inst["price"] = [
- _extract_price_from_fields(
- price_field=self.price_field_,
- inst=inst,
- open=float(row.open), #type: ignore
- high=float(row.high), #type: ignore
- low=float(row.low), #type: ignore
- close=float(row.close), #type: ignore
- vwap=float(row.vwap),#type: ignore
- )
- for row in df_inst.itertuples(index=False)
- ]
- df_inst = df_inst[["tstamp", "tstamp_ns", "price", "num_trades"]]
- if inst in series:
- series[inst] = pd.concat([series[inst], df_inst], ignore_index=True)
- else:
- series[inst] = df_inst
- for inst in list(series.keys()):
- series[inst] = series[inst].sort_values("tstamp").reset_index(drop=True)
- return series
-
- def _run_backtest(self, df: pd.DataFrame, conn: sqlite3.Connection) -> None:
- window_minutes = self.history_depth_hours_ * 60
- window_td = pd.Timedelta(minutes=window_minutes)
- step_td = pd.Timedelta(seconds=self.interval_sec_)
-
- df = df.copy()
- df["day"] = df["tstamp"].dt.normalize()
- days = sorted(df["day"].unique())
- for day in days:
- day_label = pd.Timestamp(day).date()
- df_day = df[df["day"] == day]
- t0 = df_day["tstamp"].min()
- t_last = df_day["tstamp"].max()
- if t_last - t0 < window_td:
- Log.warning(
- f"{self.fname()}: skipping {day_label} (insufficient data)"
- )
- continue
-
- day_series = self._build_day_series(df_day)
- if len(day_series) < 2:
- Log.warning(
- f"{self.fname()}: skipping {day_label} (insufficient instruments)"
- )
- continue
-
- start = t0
- expected_end = start + window_td
- while expected_end <= t_last:
- window_slices: Dict[ExchangeInstrument, pd.DataFrame] = {}
- ts: Optional[pd.Timestamp] = None
- for inst, df_inst in day_series.items():
- df_win = df_inst[
- (df_inst["tstamp"] >= start)
- & (df_inst["tstamp"] < expected_end)
- ]
- if df_win.empty:
- continue
- window_slices[inst] = df_win
- last_ts = df_win["tstamp"].iloc[-1]
- if ts is None or last_ts > ts:
- ts = last_ts
-
- if window_slices and ts is not None:
- price_series: Dict[ExchangeInstrument, pd.DataFrame] = {}
- for inst, df_win in window_slices.items():
- aggr = self._to_backtest_aggregates(df_win)
- q = self.quality_.evaluate(
- inst=inst, aggr=aggr, now_ts=ts
- )
- if q.status_ != "PASS":
- continue
- price_series[inst] = df_win[["tstamp", "price"]]
- pair_results = self.analyzer_.analyze(price_series)
- Log.info(f"{self.fname()}: Saving Results for window ending {ts}")
- self._insert_results(conn, ts, pair_results)
-
- start = start + step_td
- expected_end = start + window_td
-
- @staticmethod
- def _to_backtest_aggregates(df_win: pd.DataFrame) -> List[BacktestAggregate]:
- aggr: List[BacktestAggregate] = []
- for tstamp_ns, num_trades in zip(df_win["tstamp_ns"], df_win["num_trades"]):
- nt = None if pd.isna(num_trades) else int(num_trades)
- aggr.append(
- BacktestAggregate(aggr_time_ns_=int(tstamp_ns), num_trades_=nt)
- )
- return aggr
-
- @staticmethod
- def _insert_results(
- conn: sqlite3.Connection,
- ts: pd.Timestamp,
- pair_results: Dict[str, PairStats],
- ) -> None:
- if not pair_results:
- return
- iso = ts.isoformat()
- ns = int(ts.value)
- rows = []
- for pair_name in sorted(pair_results.keys()):
- stats = pair_results[pair_name]
- rows.append(
- (
- iso,
- ns,
- pair_name,
- stats.instrument_a_.exchange_id_,
- stats.instrument_a_.instrument_id(),
- stats.instrument_b_.exchange_id_,
- stats.instrument_b_.instrument_id(),
- stats.pvalue_eg_,
- stats.pvalue_adf_,
- stats.pvalue_j_,
- stats.trace_stat_j_,
- stats.rank_eg_,
- stats.rank_adf_,
- stats.rank_j_,
- stats.composite_rank_,
- )
- )
- conn.executemany(
- """
- INSERT INTO pair_selection_history (
- tstamp,
- tstamp_ns,
- pair_name,
- exchange_a,
- instrument_a,
- exchange_b,
- instrument_b,
- pvalue_eg,
- pvalue_adf,
- pvalue_j,
- trace_stat_j,
- rank_eg,
- rank_adf,
- rank_j,
- composite_rank
- ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
- """,
- rows,
- )
- conn.commit()
-
-
-
-class PairSelector(NamedObject):
- instruments_: List[ExchangeInstrument]
- engine_: PairSelectionEngine
- rest_service_: Optional[RestService]
- backtest_: Optional[PairSelectionBacktest]
-
- def __init__(self) -> None:
- App.instance().add_cmdline_arg("--oneshot", action="store_true", default=False)
- App.instance().add_cmdline_arg("--backtest", action="store_true", default=False)
- App.instance().add_cmdline_arg("--input_db", default=None)
- App.instance().add_cmdline_arg("--output_db", default=None)
- App.instance().add_call(App.Stage.Config, self._on_config())
- App.instance().add_call(App.Stage.Run, self.run())
-
- async def _on_config(self) -> None:
- cfg = CvttAppConfig.instance()
- self.instruments_ = self._load_instruments(cfg)
- price_field = cfg.get_value("model/stat_model_price", "close")
-
- self.backtest_ = None
- self.rest_service_ = None
- if App.instance().get_argument("backtest", False):
- input_db = App.instance().get_argument("input_db", None)
- output_db = App.instance().get_argument("output_db", None)
- if not input_db or not output_db:
- raise ValueError(
- "--input_db and --output_db are required when --backtest is set"
- )
- self.backtest_ = PairSelectionBacktest(
- config=cfg,
- instruments=self.instruments_,
- price_field=price_field,
- input_db=input_db,
- output_db=output_db,
- )
- return
-
- self.engine_ = PairSelectionEngine(
- config=cfg,
- instruments=self.instruments_,
- price_field=price_field,
- )
-
- self.rest_service_ = RestService(config_key="/api/REST")
- self.rest_service_.add_handler("GET", "/data_quality", self._on_data_quality)
- self.rest_service_.add_handler(
- "GET", "/pair_selection", self._on_pair_selection
- )
-
- def _load_instruments(self, cfg: CvttAppConfig) -> List[ExchangeInstrument]:
- instruments_cfg = cfg.get_value("instruments", [])
- instruments: List[ExchangeInstrument] = []
- assert len(instruments_cfg) >= 2, "at least two instruments required"
- for item in instruments_cfg:
- if isinstance(item, str):
- parts = item.split(":", 1)
- if len(parts) != 2:
- raise ValueError(f"invalid instrument format: {item}")
- exch_acct, instrument_id = parts
- elif isinstance(item, dict):
- exch_acct = item.get("exch_acct", "")
- instrument_id = item.get("instrument_id", "")
- if not exch_acct or not instrument_id:
- raise ValueError(f"invalid instrument config: {item}")
- else:
- raise ValueError(f"unsupported instrument entry: {item}")
-
- exch_inst = ExchangeAccounts.instance().get_exchange_instrument(
- exch_acct=exch_acct, instrument_id=instrument_id
- )
- assert (
- exch_inst is not None
- ), f"no ExchangeInstrument for {exch_acct}:{instrument_id}"
- exch_inst.user_data_["exch_acct"] = exch_acct
- instruments.append(exch_inst)
- return instruments
-
- async def run(self) -> None:
- if App.instance().get_argument("backtest", False):
- if self.backtest_ is None:
- raise RuntimeError("backtest runner not initialized")
- self.backtest_.run()
- return
- oneshot = App.instance().get_argument("oneshot", False)
- while True:
- await self.engine_.run_once()
- if oneshot:
- break
- sleep_for = self.engine_.sleep_seconds_until_next_cycle()
- await asyncio.sleep(sleep_for)
-
- async def _on_data_quality(self, request: web.Request) -> web.Response:
- fmt = request.query.get("format", "html").lower()
- quality = self.engine_.quality_dicts()
- if fmt == "json":
- return web.json_response(quality)
- return web.Response(
- text=HtmlRenderer.render_data_quality(quality), content_type="text/html"
- )
-
- async def _on_pair_selection(self, request: web.Request) -> web.Response:
- fmt = request.query.get("format", "html").lower()
- pairs = self.engine_.pair_dicts()
- if fmt == "json":
- return web.json_response(pairs)
- return web.Response(
- text=HtmlRenderer.render_pairs(pairs), content_type="text/html"
- )
-
-
-if __name__ == "__main__":
- App()
- CvttAppConfig()
- PairSelector()
- App.instance().run()
diff --git a/__SAV__/apps/pair_selector/renderer.py b/__SAV__/apps/pair_selector/renderer.py
deleted file mode 100644
index a3f41b5..0000000
--- a/__SAV__/apps/pair_selector/renderer.py
+++ /dev/null
@@ -1,138 +0,0 @@
-from __future__ import annotations
-
-from typing import Any, Dict, List
-
-
-from cvttpy_tools.base.app import App
-from cvttpy_tools.base.base import NamedObject
-from cvttpy_tools.base.config import CvttAppConfig
-
-
-class HtmlRenderer(NamedObject):
- def __init__(self) -> None:
- pass
-
- @staticmethod
- def render_data_quality(quality: List[Dict[str, Any]]) -> str:
- rows = "".join(
- f"
"
- f"| {q.get('instrument','')} | "
- f"{q.get('record_count','')} | "
- f"{q.get('latest_tstamp','')} | "
- f"{q.get('status','')} | "
- f"{q.get('reason','')} | "
- f"
"
- for q in sorted(quality, key=lambda x: str(x.get("instrument", "")))
- )
- return f"""
-
-
-
-
- Data Quality
-
-
-
- Data Quality
-
-
- | Instrument | Records | Latest | Status | Reason |
-
- {rows}
-
-
-
-"""
-
- @staticmethod
- def render_pairs(pairs: Dict[str, Dict[str, Any]]) -> str:
- if not pairs:
- body = "No pairs available. Check data quality and try again.
"
- else:
- body_rows = []
- for pair_name, p in pairs.items():
- body_rows.append(
- ""
- f"| {pair_name} | "
- f"{p.get('rank_eg','')} | "
- f"{p.get('rank_adf','')} | "
- f"{p.get('rank_j','')} | "
- f"{p.get('pvalue_eg','')} | "
- f"{p.get('pvalue_adf','')} | "
- f"{p.get('pvalue_j','')} | "
- "
"
- )
- body = "\n".join(body_rows)
-
- return f"""
-
-
-
-
- Pair Selection
-
-
-
- Pair Selection
-
-
-
- | Pair |
- Rank-EG |
- Rank-ADF |
- Rank-J |
- EG p-value |
- ADF p-value |
- Johansen pseudo p |
-
-
-
- {body}
-
-
-
-
-
-"""
diff --git a/__SAV__/apps/pair_trader.py b/__SAV__/apps/pair_trader.py
deleted file mode 100644
index 9d29abc..0000000
--- a/__SAV__/apps/pair_trader.py
+++ /dev/null
@@ -1,169 +0,0 @@
-from __future__ import annotations
-
-import asyncio
-from typing import Callable, Coroutine, Dict, List
-import aiohttp.web as web
-
-from cvttpy_tools.base.app import App
-from cvttpy_tools.base.config import Config
-from cvttpy_tools.base.base import NamedObject
-from cvttpy_tools.base.config import CvttAppConfig
-from cvttpy_tools.base.logger import Log
-from cvttpy_tools.settings.cvtt_types import BookIdT
-from cvttpy_tools.comm.web.rest_service import RestService
-
-# ---
-from cvttpy_trading.trading.instrument import ExchangeInstrument
-from cvttpy_trading.trading.mkt_data.md_summary import MdTradesAggregate
-from cvttpy_trading.trading.exchange_config import ExchangeAccounts
-# ---
-from pairs_trading.lib.live.mkt_data_client import CvttRestMktDataClient
-
-'''
-config http://cloud16.cvtt.vpn/apps/pairs_trading
-'''
-
-HistMdCbT = Callable[[List[MdTradesAggregate]], Coroutine]
-UpdateMdCbT = Callable[[MdTradesAggregate], Coroutine]
-
-class PairTrader(NamedObject):
- config_: CvttAppConfig
- instruments_: List[ExchangeInstrument]
- book_id_: BookIdT
-
- live_strategy_: "PtLiveStrategy" #type: ignore
- ti_sender_: "TradingInstructionsSender" #type: ignore
- pricer_client_: CvttRestMktDataClient
- rest_service_: RestService
-
- latest_history_: Dict[ExchangeInstrument, List[MdTradesAggregate]]
-
- def __init__(self) -> None:
- self.instruments_ = []
- self.latest_history_ = {}
-
- App.instance().add_cmdline_arg(
- "--instrument_A",
- type=str,
- required=True,
- help=(
- " Instrument A in pair (e.g., COINBASE_AT:PAIR-BTC-USD)"
- ),
- )
- App.instance().add_cmdline_arg(
- "--instrument_B",
- type=str,
- required=True,
- help=(
- " Instrument B in pair (e.g., COINBASE_AT:PAIR-ETH-USD)"
- ),
- )
-
- App.instance().add_cmdline_arg(
- "--book_id",
- type=str,
- required=True,
- help="Book ID"
- )
- App.instance().add_call(App.Stage.Config, self._on_config())
- App.instance().add_call(App.Stage.Run, self.run())
-
- async def _on_config(self) -> None:
- self.config_ = CvttAppConfig.instance()
- self.book_id_ = App.instance().get_argument(name="book_id")
-
- # ------- PARSE INSTRUMENTS -------
- instr_list: List[str] = []
- instr_str = App.instance().get_argument("instrument_A", "")
- assert instr_str != "", "Missing insrument A"
- instr_list.append(instr_str)
- instr_str = App.instance().get_argument("instrument_B", "")
- assert instr_str != "", "Missing insrument B"
- instr_list.append(instr_str)
-
- for instr in instr_list:
- instr_parts = instr.split(":")
- if len(instr_parts) != 2:
- raise ValueError(f"Invalid pair format: {instr}")
- exch_acct = instr_parts[0]
- instrument_id = instr_parts[1]
- exch_inst = ExchangeAccounts.instance().get_exchange_instrument(exch_acct=exch_acct, instrument_id=instrument_id)
- assert exch_inst is not None, f"No ExchangeInstrument for {instr}"
- exch_inst.user_data_["exch_acct"] = exch_acct
- self.instruments_.append(exch_inst)
-
- Log.info(f"{self.fname()} Instruments: {self.instruments_[0].details_short()} <==> {self.instruments_[1].details_short()}")
-
- # ------- CREATE STRATEGY -------
- from pairs_trading.lib.pt_strategy.live.live_strategy import PtLiveStrategy
- strategy_config = CvttAppConfig.instance() #self.config_.get_subconfig("strategy_config", Config({}))
- self.live_strategy_ = PtLiveStrategy(
- config=strategy_config,
- pairs_trader=self,
- )
- Log.info(f"{self.fname()} Strategy created: {self.live_strategy_}")
- model_name = self.config_.get_value("model/name", "?model/name?")
- self.config_.set_value("strategy_id", f"{self.live_strategy_.__class__.__name__}:{model_name}")
-
- # # ------- CREATE PRICER CLIENT -------
- self.pricer_client_ = CvttRestMktDataClient(config=self.config_)
- Log.info(f"{self.fname()} MD client created: {self.pricer_client_}")
-
- # ------- CREATE TRADER CLIENT -------
- from pairs_trading.lib.live.ti_sender import TradingInstructionsSender
- self.ti_sender_ = TradingInstructionsSender(config=self.config_, pairs_trader=self)
- Log.info(f"{self.fname()} TI sender created: {self.ti_sender_}")
-
- # # ------- CREATE REST SERVER -------
- self.rest_service_ = RestService(
- config_key=f"/api/REST"
- )
-
- # --- Strategy Handlers
- self.rest_service_.add_handler(
- method="POST",
- url="/api/strategy",
- handler=self._on_api_request,
- )
-
- async def subscribe_md(self) -> None:
- from functools import partial
- for exch_inst in self.instruments_:
- exch_acct = exch_inst.user_data_.get("exch_acct", "?exch_acct?")
- instrument_id = exch_inst.instrument_id()
-
- await self.pricer_client_.add_subscription(
- exch_acct=exch_acct,
- instrument_id=instrument_id,
- interval_sec=self.live_strategy_.interval_sec(),
- history_depth_sec=self.live_strategy_.history_depth_sec(),
- callback=partial(self._on_md_summary, exch_inst=exch_inst)
- )
-
- async def _on_md_summary(self, history: List[MdTradesAggregate], exch_inst: ExchangeInstrument) -> None:
- Log.info(f"{self.fname()}: got {exch_inst.details_short()} data")
- self.latest_history_[exch_inst] = history
- if len(self.latest_history_) == 2:
- from itertools import chain
- all_aggrs = sorted(list(chain.from_iterable(self.latest_history_.values())), key=lambda X: X.aggr_time_ns_)
-
- await self.live_strategy_.on_mkt_data_hist_snapshot(hist_aggr=all_aggrs)
- self.latest_history_ = {}
-
- async def _on_api_request(self, request: web.Request) -> web.Response:
- # TODO choose pair
- # TODO confirm chosen pair (after selection is implemented)
- return web.Response() # TODO API request handler implementation
-
-
- async def run(self) -> None:
- Log.info(f"{self.fname()} ...")
- while True:
- await asyncio.sleep(0.1)
- pass
-
-if __name__ == "__main__":
- App()
- CvttAppConfig()
- PairTrader()
- App.instance().run()
diff --git a/__SAV__/build-dist.sh b/__SAV__/build-dist.sh
deleted file mode 100755
index 5da0cbd..0000000
--- a/__SAV__/build-dist.sh
+++ /dev/null
@@ -1,186 +0,0 @@
-#!/usr/bin/env bash
-
-# ---------------- Settings
-
-repo=git@cloud21.cvtt.vpn:/works/git/cvtt2/research/pairs_trading.git
-
-dist_root=/home/cvttdist/software/cvtt2
-dist_user=cvttdist
-dist_host="cloud21.cvtt.vpn"
-dist_ssh_port="22"
-
-dist_locations="cloud21.cvtt.vpn:22 hs01.cvtt.vpn:22"
-version_file="VERSION"
-
-prj=pairs_trading
-brnch=master
-interactive=N
-
-# ---------------- Settings
-
-# ---------------- cmdline
-
-usage() {
- echo "Usage: $0 [-b -i (interactive)"
- exit 1
-}
-
-while getopts "b:i" opt; do
- case ${opt} in
- b )
- brnch=$OPTARG
- ;;
- i )
- interactive=Y
- ;;
- \? )
- echo "Invalid option: -$OPTARG" >&2
- usage
- ;;
- : )
- echo "Option -$OPTARG requires an argument." >&2
- usage
- ;;
- esac
-done
-# ---------------- cmdline
-
-confirm() {
- if [ "${interactive}" == "Y" ]; then
- echo "--------------------------------"
- echo -n "Press to continue" && read
- fi
-}
-
-
-if [ "${interactive}" == "Y" ]; then
- echo -n "Enter project [${prj}]: "
- read project
- if [ "${project}" == "" ]
- then
- project=${prj}
- fi
-else
- project=${prj}
-fi
-
-# repo=${git_repo_arr[${project}]}
-if [ -z ${repo} ]; then
- echo "ERROR: Project repository for ${project} not found"
- exit -1
-fi
-echo "Project repo: ${repo}"
-
-if [ "${interactive}" == "Y" ]; then
- echo -n "Enter branch to build release from [${brnch}]: "
- read branch
- if [ "${branch}" == "" ]
- then
- branch=${brnch}
- fi
-else
- branch=${brnch}
-fi
-
-tmp_dir=$(mktemp -d)
-function cleanup {
- cd ${HOME}
- rm -rf ${tmp_dir}
-}
-trap cleanup EXIT
-
-
-prj_dir="${tmp_dir}/${prj}"
-
-cmd_arr=()
-Cmd="git clone ${repo} ${prj_dir}"
-cmd_arr+=("${Cmd}")
-
-Cmd="cd ${prj_dir}"
-cmd_arr+=("${Cmd}")
-
-if [ "${interactive}" == "Y" ]; then
- echo "------------------------------------"
- echo "The following commands will execute:"
- echo "------------------------------------"
- for cmd in "${cmd_arr[@]}"
- do
- echo ${cmd}
- done
-fi
-
-confirm
-
-for cmd in "${cmd_arr[@]}"
-do
- echo ${cmd} && eval ${cmd}
-done
-
-Cmd="git checkout ${branch}"
-echo ${Cmd} && eval ${Cmd}
-if [ "${?}" != "0" ]; then
- echo "ERROR: Branch ${branch} is not found"
- cd ${HOME} && rm -rf ${tmp_dir}
- exit -1
-fi
-
-
-release_version=$(cat ${version_file} | awk -F',' '{print $1}')
-whats_new=$(cat ${version_file} | awk -F',' '{print $2}')
-
-
-echo "--------------------------------"
-echo "Version file: ${version_file}"
-echo "Release version: ${release_version}"
-
-confirm
-
-version_tag="v${release_version}"
-if [ "$(git tag -l "${version_tag}")" != "" ]; then
- version_tag="${version_tag}.$(date +%Y%m%d_%H%M)"
-fi
-version_comment="'${version_tag} ${project} ${branch} $(date +%Y-%m-%d)\n${whats_new}'"
-
-cmd_arr=()
-Cmd="git tag -a ${version_tag} -m ${version_comment}"
-cmd_arr+=("${Cmd}")
-
-Cmd="git push origin --tags"
-cmd_arr+=("${Cmd}")
-
-Cmd="rm -rf .git"
-cmd_arr+=("${Cmd}")
-
-SourceLoc=../${project}
-
-dist_path="${dist_root}/${project}/${release_version}"
-
-for dist_loc in ${dist_locations}; do
- dhp=(${dist_loc//:/ })
- dist_host=${dhp[0]}
- dist_port=${dhp[1]}
- Cmd="rsync -avzh"
- Cmd="${Cmd} --rsync-path=\"mkdir -p ${dist_path}"
- Cmd="${Cmd} && rsync\" -e \"ssh -p ${dist_ssh_port}\""
- Cmd="${Cmd} $SourceLoc ${dist_user}@${dist_host}:${dist_path}/"
- cmd_arr+=("${Cmd}")
-done
-
-if [ "${interactive}" == "Y" ]; then
- echo "------------------------------------"
- echo "The following commands will execute:"
- echo "------------------------------------"
- for cmd in "${cmd_arr[@]}"
- do
- echo ${cmd}
- done
-fi
-
-confirm
-
-for cmd in "${cmd_arr[@]}"
-do
- pwd && echo ${cmd} && eval ${cmd}
-done
-
-echo "$0 Done ${project} ${release_version}"
diff --git a/__SAV__/configuration/backtest.cfg b/__SAV__/configuration/backtest.cfg
deleted file mode 100644
index 9b53852..0000000
--- a/__SAV__/configuration/backtest.cfg
+++ /dev/null
@@ -1,46 +0,0 @@
-{
- "refdata": {
- "assets": @inc=http://@env{CONFIG_SERVICE}/refdata/assets
- , "instruments": @inc=http://@env{CONFIG_SERVICE}/refdata/instruments
- , "exchange_instruments": @inc=http://@env{CONFIG_SERVICE}/refdata/exchange_instruments
- , "dynamic_instrument_exchanges": ["ALPACA"]
- , "exchanges": @inc=http://@env{CONFIG_SERVICE}/refdata/exchanges
- },
- "market_data_loading": {
- "CRYPTO": {
- "data_directory": "./data/crypto",
- "db_table_name": "md_1min_bars",
- "instrument_id_pfx": "PAIR-",
- },
- "EQUITY": {
- "data_directory": "./data/equity",
- "db_table_name": "md_1min_bars",
- "instrument_id_pfx": "STOCK-",
- }
- },
- # ====== Funding ======
- "funding_per_pair": 2000.0,
-
- # ====== Model =======
- "model": @inc=http://@env{CONFIG_SERVICE}/apps/common/models/@env{MODEL_CONFIG}
-
- # ====== Trading =======
- "execution_price": {
- "column": "vwap",
- "shift": 1,
- },
- # ====== Stop Conditions ======
- "stop_close_conditions": {
- "profit": 2.0,
- "loss": -0.5
- }
-
- # ====== End of Session Closeout ======
- "close_outstanding_positions": true,
- # "close_outstanding_positions": false,
- "trading_hours": {
- "timezone": "America/New_York",
- "begin_session": "7:30:00",
- "end_session": "18:30:00",
- }
-}
\ No newline at end of file
diff --git a/__SAV__/configuration/pair_trader.cfg b/__SAV__/configuration/pair_trader.cfg
deleted file mode 100644
index 09b9bd8..0000000
--- a/__SAV__/configuration/pair_trader.cfg
+++ /dev/null
@@ -1,21 +0,0 @@
-{
- "strategy_config": @inc=file:///home/oleg/develop/pairs_trading/configuration/vecm-opt.cfg
- "pricer_config": {
- "pricer_url": "ws://localhost:12346/ws",
- "history_depth_sec": 86400 #"60*60*24", # use simpleeval
- "interval_sec": 60
- },
- "ti_config": {
- "cvtt_base_url": "http://localhost:23456"
- "book_id": "XXXXXXXXX",
- "strategy_id": "XXXXXXXXX",
- "ti_endpoint": {
- "method": "POST",
- "url": "/trading_instructions"
- },
- "health_check_endpoint": {
- "method": "GET",
- "url": "/ping"
- }
- }
-}
\ No newline at end of file
diff --git a/__SAV__/configuration/vecm-opt.cfg b/__SAV__/configuration/vecm-opt.cfg
deleted file mode 100644
index 5e202c4..0000000
--- a/__SAV__/configuration/vecm-opt.cfg
+++ /dev/null
@@ -1,56 +0,0 @@
-{
- # "refdata": {
- # "assets": @inc=http://@env{CONFIG_SERVICE}/refdata/assets
- # , "instruments": @inc=http://@env{CONFIG_SERVICE}/refdata/instruments
- # , "exchange_instruments": @inc=http://@env{CONFIG_SERVICE}/refdata/exchange_instruments
- # , "dynamic_instrument_exchanges": ["ALPACA"]
- # , "exchanges": @inc=http://@env{CONFIG_SERVICE}/refdata/exchanges
- # },
- # "market_data_loading": {
- # "CRYPTO": {
- # "data_directory": "./data/crypto",
- # "db_table_name": "md_1min_bars",
- # "instrument_id_pfx": "PAIR-",
- # },
- # "EQUITY": {
- # "data_directory": "./data/equity",
- # "db_table_name": "md_1min_bars",
- # "instrument_id_pfx": "STOCK-",
- # }
- # },
-
- # # ====== Funding ======
- # "funding_per_pair": 2000.0,
-
- # ====== Trading Parameters ======
- "stat_model_price": "close", # "vwap"
- "execution_price": {
- "column": "vwap",
- "shift": 1,
- },
- "dis-equilibrium_open_trshld": 1.75,
- "dis-equilibrium_close_trshld": 1.0,
-
- "model_class": "pairs_trading.lib.pt_strategy.models.VECMModel",
-
- # "training_size": 120,
- # "model_data_policy_class": "pairs_trading.lib.pt_strategy.model_data_policy.RollingWindowDataPolicy",
- "model_data_policy_class": "pairs_trading.lib.pt_strategy.model_data_policy.ADFOptimizedWndDataPolicy",
- "min_training_size": 60,
- "max_training_size": 150,
-
- # # ====== Stop Conditions ======
- # "stop_close_conditions": {
- # "profit": 2.0,
- # "loss": -0.5
- # }
-
- # # ====== End of Session Closeout ======
- # "close_outstanding_positions": true,
- # # "close_outstanding_positions": false,
- # "trading_hours": {
- # "timezone": "America/New_York",
- # "begin_session": "7:30:00",
- # "end_session": "18:30:00",
- # }
-}
\ No newline at end of file
diff --git a/__SAV__/lib/live/mkt_data_client.py b/__SAV__/lib/live/mkt_data_client.py
deleted file mode 100644
index d13e1e9..0000000
--- a/__SAV__/lib/live/mkt_data_client.py
+++ /dev/null
@@ -1,277 +0,0 @@
-from __future__ import annotations
-
-import asyncio
-from typing import Dict, Any, List, Optional, Set
-
-import requests
-
-from cvttpy_tools.base.base import NamedObject
-from cvttpy_tools.base.logger import Log
-from cvttpy_tools.base.config import Config
-from cvttpy_tools.base.timer import Timer
-from cvttpy_tools.base.timeutils import NanosT, current_seconds
-from cvttpy_tools.settings.cvtt_types import InstrumentIdT, IntervalSecT
-# ---
-from cvttpy_trading.trading.instrument import ExchangeInstrument
-from cvttpy_trading.trading.accounting.exch_account import ExchangeAccountNameT
-from cvttpy_trading.trading.mkt_data.md_summary import MdTradesAggregate, MdSummary, MdSummaryCallbackT
-from cvttpy_trading.trading.exchange_config import ExchangeAccounts
-# ---
-from pairs_trading.lib.live.rest import RESTSender
-
-
-# class MdSummary(HistMdBar):
-# def __init__(
-# self,
-# ts_ns: int,
-# open: float,
-# high: float,
-# low: float,
-# close: float,
-# volume: float,
-# vwap: float,
-# num_trades: int,
-# ):
-# super().__init__(ts=ts_ns)
-# self.open_ = open
-# self.high_ = high
-# self.low_ = low
-# self.close_ = close
-# self.volume_ = volume
-# self.vwap_ = vwap
-# self.num_trades_ = num_trades
-
-# @classmethod
-# def from_REST_response(cls, response: requests.Response) -> List[MdSummary]:
-# res: List[MdSummary] = []
-# jresp = response.json()
-# hist_data = jresp.get("historical_data", [])
-# for hd in hist_data:
-# res.append(
-# MdSummary(
-# ts_ns=hd["time_ns"],
-# open=hd["open"],
-# high=hd["high"],
-# low=hd["low"],
-# close=hd["close"],
-# volume=hd["volume"],
-# vwap=hd["vwap"],
-# num_trades=hd["num_trades"],
-# )
-# )
-# return res
-
-# def create_md_trades_aggregate(
-# self,
-# exch_acct: ExchangeAccountNameT,
-# exch_inst: ExchangeInstrument,
-# interval_sec: IntervalSecT,
-# ) -> MdTradesAggregate:
-# res = MdTradesAggregate(
-# exch_acct=exch_acct,
-# exch_inst=exch_inst,
-# interval_ns=interval_sec * NanoPerSec,
-# )
-# res.set(mdbar=self)
-# return res
-
-
-# MdSummaryCallbackT = Callable[[List[MdTradesAggregate]], Coroutine]
-
-
-class MdSummaryCollector(NamedObject):
- sender_: RESTSender
- exch_acct_: ExchangeAccountNameT
- exch_inst_: ExchangeInstrument
- interval_sec_: IntervalSecT
- history_depth_sec_: IntervalSecT
-
- history_: List[MdTradesAggregate]
-
- callbacks_: List[MdSummaryCallbackT]
- timer_: Optional[Timer]
-
- def __init__(
- self,
- sender: RESTSender,
- exch_acct: ExchangeAccountNameT,
- instrument_id: InstrumentIdT,
- interval_sec: IntervalSecT,
- history_depth_sec: IntervalSecT,
- ) -> None:
- self.sender_ = sender
- self.exch_acct_ = exch_acct
-
- exch_inst = ExchangeAccounts.instance().get_exchange_instrument(
- exch_acct=exch_acct, instrument_id=instrument_id
- )
- assert exch_inst is not None, f"Unable to find Exchange instrument for {exch_acct}/{instrument_id}"
- self.exch_inst_ = exch_inst
- self.interval_sec_ = interval_sec
- self.history_depth_sec_ = history_depth_sec
-
- self.history_ = []
- self.callbacks_ = []
- self.timer_ = None
-
- def add_callback(self, cb: MdSummaryCallbackT) -> None:
- self.callbacks_.append(cb)
-
- def __hash__(self):
- return hash(
- (
- self.exch_acct_,
- self.exch_inst_.instrument_id(),
- self.interval_sec_,
- self.history_depth_sec_,
- )
- )
-
- def rqst_data(self) -> Dict[str, Any]:
- return {
- "exch_acct": self.exch_acct_,
- "instrument_id": self.exch_inst_.instrument_id(),
- "interval_sec": self.interval_sec_,
- "history_depth_sec": self.history_depth_sec_,
- }
-
- def get_history(self) -> List[MdSummary]:
- response: requests.Response = self.sender_.send_post(
- endpoint="md_summary", post_body=self.rqst_data()
- )
- if response.status_code not in (200, 201):
- Log.error(
- f"{self.fname()}: Received error: {response.status_code} - {response.text}"
- )
- return []
- return MdSummary.from_REST_response(response=response)
-
- def get_last(self) -> Optional[MdSummary]:
- Log.info(f"{self.fname()}: for {self.exch_inst_.details_short()}")
- rqst_data = self.rqst_data()
- rqst_data["history_depth_sec"] = self.interval_sec_ * 2
- response: requests.Response = self.sender_.send_post(
- endpoint="md_summary", post_body=rqst_data
- )
- if response.status_code not in (200, 201):
- Log.error(
- f"{self.fname()}: Received error: {response.status_code} - {response.text}"
- )
- return None
- res = MdSummary.from_REST_response(response=response)
- Log.info(f"DEBUG *** {self.exch_inst_.base_asset_id_}: {res[-1].tstamp_}")
- return None if len(res) == 0 else res[-1]
-
- def is_empty(self) -> bool:
- return len(self.history_) == 0
-
- async def start(self) -> None:
- if self.timer_:
- Log.error(f"{self.fname()}: Timer is already started")
- return
- mdsum_hist = self.get_history()
- self.history_ = [
- mdsum.create_md_trades_aggregate(
- exch_acct=self.exch_acct_,
- exch_inst=self.exch_inst_,
- interval_sec=self.interval_sec_,
- )
- for mdsum in mdsum_hist
- ]
- await self.run_callbacks()
- self.set_timer()
-
- def set_timer(self):
- if self.timer_:
- self.timer_.cancel()
- start_in = self.next_load_time() - current_seconds()
- self.timer_ = Timer(
- start_in_sec=start_in,
- func=self._load_new,
- )
- Log.info(f"{self.fname()} Timer for {self.exch_inst_.details_short()} is set to run in {start_in} sec")
-
- def next_load_time(self) -> NanosT:
- ALLOW_LAG_SEC = 1
- curr_sec = int(current_seconds())
- return (curr_sec - curr_sec % self.interval_sec_) + self.interval_sec_ + ALLOW_LAG_SEC
-
- async def _load_new(self) -> None:
-
- last: Optional[MdSummary] = self.get_last()
- if not last:
- Log.warning(f"{self.fname()}: did not get last update")
- elif not self.is_empty() and last.ts_ns_ <= self.history_[-1].aggr_time_ns_:
- Log.info(
- f"{self.fname()}: Received {last}. Already Have: {self.history_[-1]}"
- )
- else:
- self.history_.append(last.create_md_trades_aggregate(exch_acct=self.exch_acct_, exch_inst=self.exch_inst_, interval_sec=self.interval_sec_))
- await self.run_callbacks()
- self.set_timer()
-
- async def run_callbacks(self) -> None:
- [await cb(self.history_) for cb in self.callbacks_]
-
- def stop(self) -> None:
- if self.timer_:
- self.timer_.cancel()
- self.timer_ = None
-
-
-class CvttRestMktDataClient(NamedObject):
- config_: Config
- sender_: RESTSender
- collectors_: Set[MdSummaryCollector]
-
- def __init__(self, config: Config) -> None:
- self.config_ = config
- base_url = self.config_.get_value("cvtt_base_url", default="")
- assert base_url
- self.sender_ = RESTSender(base_url=base_url)
- self.collectors_ = set()
-
- async def add_subscription(
- self,
- exch_acct: ExchangeAccountNameT,
- instrument_id: InstrumentIdT,
- interval_sec: IntervalSecT,
- history_depth_sec: IntervalSecT,
- callback: MdSummaryCallbackT,
- ) -> None:
- mdsc = MdSummaryCollector(
- sender=self.sender_,
- exch_acct=exch_acct,
- instrument_id=instrument_id,
- interval_sec=interval_sec,
- history_depth_sec=history_depth_sec,
- )
- mdsc.add_callback(callback)
- self.collectors_.add(mdsc)
- await mdsc.start()
-
-
-if __name__ == "__main__":
- config = Config(json_src={"cvtt_base_url": "http://cvtt-tester-01.cvtt.vpn:23456"})
- # config = Config(json_src={"cvtt_base_url": "http://dev-server-02.cvtt.vpn:23456"})
-
- async def _calback(history: List[MdTradesAggregate]) -> None:
- Log.info(
- f"MdSummary Hist Length is {len(history)}. Last summary: {history[-1] if len(history) > 0 else '[]'}"
- )
-
- async def __run() -> None:
- Log.info("Starting...")
- cvtt_client = CvttRestMktDataClient(config)
- await cvtt_client.add_subscription(
- exch_acct="COINBASE_AT",
- instrument_id="PAIR-BTC-USD",
- interval_sec=60,
- history_depth_sec=24 * 3600,
- callback=_calback,
- )
- while True:
- await asyncio.sleep(5)
-
- asyncio.run(__run())
- pass
diff --git a/__SAV__/lib/live/rest.py b/__SAV__/lib/live/rest.py
deleted file mode 100644
index 57dc595..0000000
--- a/__SAV__/lib/live/rest.py
+++ /dev/null
@@ -1,60 +0,0 @@
-from __future__ import annotations
-
-from typing import Dict, Optional
-import time
-
-import requests
-
-from cvttpy_tools.base.base import NamedObject
-
-class RESTSender(NamedObject):
- # Synchronous request sernder
- session_: requests.Session
- base_url_: str
-
- def __init__(self, base_url: str) -> None:
- self.base_url_ = base_url
- self.session_ = requests.Session()
-
- def is_ready(self) -> bool:
- """Checks if the server is up and responding"""
- url = f"{self.base_url_}/ping"
- try:
- response = self.session_.get(url)
- response.raise_for_status()
- return True
- except requests.exceptions.RequestException:
- return False
-
- def send_post(
- self, endpoint: str, post_body: Dict, headers: Optional[Dict[str, str]] = None
- ) -> requests.Response:
-
- if not headers:
- headers = {"Content-Type": "application/json"}
- url = f"{self.base_url_}/{endpoint}"
- try:
- return self.session_.request(
- method="POST",
- url=url,
- json=post_body,
- headers=headers,
- )
- except requests.exceptions.RequestException as excpt:
- raise ConnectionError(
- f"Failed to send status={excpt.response.status_code} {excpt.response.text}" # type: ignore
- ) from excpt
-
- def send_get(
- self, endpoint: str, headers: Optional[Dict[str, str]] = None
- ) -> requests.Response:
- if not headers:
- headers = {}
- url = f"{self.base_url_}/{endpoint}"
- try:
- return self.session_.request(method="GET", url=url, headers=headers)
- except requests.exceptions.RequestException as excpt:
- raise ConnectionError(
- f"Failed to send status={excpt.response.status_code} {excpt.response.text}" # type: ignore
- ) from excpt
-
diff --git a/__SAV__/lib/live/ti_sender.py b/__SAV__/lib/live/ti_sender.py
deleted file mode 100644
index 80319d0..0000000
--- a/__SAV__/lib/live/ti_sender.py
+++ /dev/null
@@ -1,50 +0,0 @@
-from enum import Enum
-
-import requests
-
-# import aiohttp
-from cvttpy_tools.base.base import NamedObject
-from cvttpy_tools.base.config import Config
-from cvttpy_tools.base.logger import Log
-# ---
-from cvttpy_trading.trading.trading_instructions import TradingInstructions
-# ---
-from pairs_trading.apps.pair_trader import PairTrader
-from pairs_trading.lib.live.rest import RESTSender
-
-
-class TradingInstructionsSender(NamedObject):
- config_: Config
- sender_: RESTSender
- pairs_trader_: PairTrader
-
- class TradingInstType(str, Enum):
- TARGET_POSITION = "TARGET_POSITION"
- DIRECT_ORDER = "DIRECT_ORDER"
- MARKET_MAKING = "MARKET_MAKING"
- NONE = "NONE"
-
- def __init__(self, config: Config, pairs_trader: PairTrader) -> None:
- self.config_ = config
- base_url = self.config_.get_value("cvtt_base_url", default="")
- assert base_url
- self.sender_ = RESTSender(base_url=base_url)
- self.pairs_trader_ = pairs_trader
-
- self.book_id_ = self.pairs_trader_.book_id_
- assert self.book_id_, "book_id is required"
-
- self.strategy_id_ = config.get_value("strategy_id", "")
- assert self.strategy_id_, "strategy_id is required"
-
-
- async def send_trading_instructions(self, ti: TradingInstructions) -> None:
- Log.info(f"{self.fname()}: sending {ti=}")
- response: requests.Response = self.sender_.send_post(
- endpoint="trading_instructions", post_body=ti.to_dict()
- )
- if response.status_code not in (200, 201):
- Log.error(
- f"{self.fname()}: Received error: {response.status_code} - {response.text}"
- )
-
diff --git a/__SAV__/lib/pt_strategy/live/live_strategy.py b/__SAV__/lib/pt_strategy/live/live_strategy.py
deleted file mode 100644
index 679f8e0..0000000
--- a/__SAV__/lib/pt_strategy/live/live_strategy.py
+++ /dev/null
@@ -1,351 +0,0 @@
-from __future__ import annotations
-
-from typing import Any, Dict, List, Optional
-
-import pandas as pd
-
-# ---
-from cvttpy_tools.base.base import NamedObject
-from cvttpy_tools.base.app import App
-from cvttpy_tools.base.config import Config
-from cvttpy_tools.settings.cvtt_types import IntervalSecT
-from cvttpy_tools.base.timeutils import NanosT, SecPerHour, current_nanoseconds, NanoPerSec, format_nanos_utc
-from cvttpy_tools.base.logger import Log
-
-# ---
-from cvttpy_trading.trading.instrument import ExchangeInstrument
-from cvttpy_trading.trading.mkt_data.md_summary import MdTradesAggregate
-from cvttpy_trading.trading.trading_instructions import TradingInstructions
-from cvttpy_trading.trading.trading_instructions import TargetPositionSignal
-
-# ---
-from pairs_trading.lib.pt_strategy.model_data_policy import ModelDataPolicy
-from pairs_trading.lib.pt_strategy.pt_model import Prediction
-from pairs_trading.lib.pt_strategy.trading_pair import LiveTradingPair
-from pairs_trading.apps.pair_trader import PairTrader
-from pairs_trading.lib.pt_strategy.pt_market_data import LiveMarketData
-
-
-class PtLiveStrategy(NamedObject):
- config_: Config
- instruments_: List[ExchangeInstrument]
-
- interval_sec_: IntervalSecT
- history_depth_sec_: IntervalSecT
- open_threshold_: float
- close_threshold_: float
-
- trading_pair_: LiveTradingPair
- model_data_policy_: ModelDataPolicy
- pairs_trader_: PairTrader
-
- # for presentation: history of prediction values and trading signals
- predictions_df_: pd.DataFrame
- trading_signals_df_: pd.DataFrame
- allowed_md_lag_sec_: int
-
-
- def __init__(
- self,
- config: Config,
- pairs_trader: PairTrader,
- ):
- self.config_ = config
-
- self.pairs_trader_ = pairs_trader
- self.trading_pair_ = LiveTradingPair(
- config=config,
- instruments=self.pairs_trader_.instruments_,
- )
- self.model_data_policy_ = ModelDataPolicy.create(
- self.config_,
- is_real_time=True,
- pair=self.trading_pair_,
- )
- assert (
- self.model_data_policy_ is not None
- ), f"{self.fname()}: Unable to create ModelDataPolicy"
-
- self.predictions_df_ = pd.DataFrame()
- self.trading_signals_df_ = pd.DataFrame()
-
- self.instruments_ = self.pairs_trader_.instruments_
-
- App.instance().add_call(
- stage=App.Stage.Config, func=self._on_config(), can_run_now=True
- )
-
- async def _on_config(self) -> None:
- self.interval_sec_ = self.config_.get_value("interval_sec", 0)
- assert self.interval_sec_ > 0, "interval_sec cannot be 0"
- self.history_depth_sec_ = (
- self.config_.get_value("history_depth_hours", 0) * SecPerHour
- )
- assert self.history_depth_sec_ > 0, "history_depth_hours cannot be 0"
-
- self.allowed_md_lag_sec_ = self.config_.get_value("allowed_md_lag_sec", 3)
-
- self.open_threshold_ = self.config_.get_value(
- "model/disequilibrium/open_trshld", 0.0
- )
- self.close_threshold_ = self.config_.get_value(
- "model/disequilibrium/close_trshld", 0.0
- )
-
- assert (
- self.open_threshold_ > 0
- ), "disequilibrium/open_trshld must be greater than 0"
- assert (
- self.close_threshold_ > 0
- ), "disequilibrium/close_trshld must be greater than 0"
-
- await self.pairs_trader_.subscribe_md()
-
-
- def __repr__(self) -> str:
- return f"{self.classname()}: trading_pair={self.trading_pair_}, mdp={self.model_data_policy_.__class__.__name__}, "
-
- async def on_mkt_data_hist_snapshot(
- self, hist_aggr: List[MdTradesAggregate]
- ) -> None:
- if not self._is_md_actual(hist_aggr=hist_aggr):
- return
-
- market_data_df: pd.DataFrame = self._create_md_df(hist_aggr=hist_aggr)
- if len(market_data_df) == 0:
- Log.warning(f"{self.fname()} Unable to create market data df")
- return
-
- self.trading_pair_.market_data_ = market_data_df
-
- Log.info(f"{self.fname()}: Running prediction for pair: {self.trading_pair_}")
- prediction = self.trading_pair_.run(
- market_data_df, self.model_data_policy_.advance()
- )
- self.predictions_df_ = pd.concat(
- [self.predictions_df_, prediction.to_df()], ignore_index=True
- )
-
- trading_instructions: List[TradingInstructions] = (
- self._create_trading_instructions(
- prediction=prediction, last_row=market_data_df.iloc[-1]
- )
- )
- if trading_instructions is not None:
- await self._send_trading_instructions(trading_instructions)
-
- def _is_md_actual(self, hist_aggr: List[MdTradesAggregate]) -> bool:
- if len(hist_aggr) == 0:
- Log.warning(f"{self.fname()} list of aggregates IS EMPTY")
- return False
-
- curr_ns = current_nanoseconds()
-
- # MAYBE check market data length
-
- # at 18:05:01 we should see data for 18:04:00
- lag_sec = (curr_ns - hist_aggr[-1].aggr_time_ns_) / NanoPerSec - self.interval_sec()
- if lag_sec > self.allowed_md_lag_sec_:
- Log.warning(
- f"{self.fname()} {hist_aggr[-1].exch_inst_.details_short()}"
- f" Lagging {int(lag_sec)} > {self.allowed_md_lag_sec_} seconds:"
- f"\n{len(hist_aggr)} records"
- f"\n{hist_aggr[-1].exch_inst_.base_asset_id_}: {hist_aggr[-1].tstamp()}"
- f"\n{hist_aggr[-2].exch_inst_.base_asset_id_}: {hist_aggr[-2].tstamp()}"
- )
- return False
- else:
- Log.info(
- f"{self.fname()} {hist_aggr[-1].exch_inst_.details_short()}"
- f" Lag {int(lag_sec)} <= {self.allowed_md_lag_sec_} seconds"
- f"\n{len(hist_aggr)} records"
- f"\n{hist_aggr[-1].exch_inst_.base_asset_id_}: {hist_aggr[-1].tstamp()}"
- f"\n{hist_aggr[-2].exch_inst_.base_asset_id_}: {hist_aggr[-2].tstamp()}"
- )
- return True
-
- def _create_md_df(self, hist_aggr: List[MdTradesAggregate]) -> pd.DataFrame:
- """
- tstamp time_ns symbol open high low close volume num_trades vwap
- 0 2025-09-10 11:30:00 1757503800000000000 ADA-USDT 0.8750 0.8750 0.8743 0.8743 50710.500 0 0.874489
- 1 2025-09-10 11:30:00 1757503800000000000 SOL-USDT 219.9700 219.9800 219.6600 219.7000 2648.582 0 219.787847
- 2 2025-09-10 11:31:00 1757503860000000000 SOL-USDT 219.7000 219.7300 219.6200 219.6200 1134.886 0 219.663460
- 3 2025-09-10 11:31:00 1757503860000000000 ADA-USDT 0.8743 0.8745 0.8741 0.8741 10696.400 0 0.874234
- 4 2025-09-10 11:32:00 1757503920000000000 ADA-USDT 0.8742 0.8742 0.8739 0.8740 18546.900 0 0.874037
- """
-
- rows: List[Dict[str, Any]] = []
-
- for aggr in hist_aggr:
- exch_inst = aggr.exch_inst_
-
- rows.append(
- {
- # convert nanoseconds → tz-aware pandas timestamp
- "tstamp": pd.to_datetime(aggr.aggr_time_ns_, unit="ns", utc=True),
- "time_ns": aggr.aggr_time_ns_,
- "symbol": exch_inst.instrument_id().split("-", 1)[1],
- "exchange_id": exch_inst.exchange_id_,
- "instrument_id": exch_inst.instrument_id(),
- "open": exch_inst.get_price(aggr.open_),
- "high": exch_inst.get_price(aggr.high_),
- "low": exch_inst.get_price(aggr.low_),
- "close": exch_inst.get_price(aggr.close_),
- "volume": exch_inst.get_quantity(aggr.volume_),
- "num_trades": aggr.num_trades_,
- "vwap": exch_inst.get_price(aggr.vwap_),
- }
- )
-
- source_md_df = pd.DataFrame(
- rows,
- columns=[
- "tstamp",
- "time_ns",
- "symbol",
- "exchange_id",
- "instrument_id",
- "open",
- "high",
- "low",
- "close",
- "volume",
- "num_trades",
- "vwap",
- ],
- )
-
- # automatic sorting
- source_md_df.sort_values(
- by=["time_ns", "symbol"],
- ascending=True,
- inplace=True,
- kind="mergesort", # stable sort
- )
-
- source_md_df.reset_index(drop=True, inplace=True)
-
- pt_mkt_data = LiveMarketData(config=self.config_, instruments=self.instruments_)
- pt_mkt_data.origin_mkt_data_df_ = source_md_df
- pt_mkt_data.set_market_data()
-
- return pt_mkt_data.market_data_df_
-
- def interval_sec(self) -> IntervalSecT:
- return self.interval_sec_
-
- def history_depth_sec(self) -> IntervalSecT:
- return self.history_depth_sec_
-
- async def _send_trading_instructions(
- self, trading_instructions: List[TradingInstructions]
- ) -> None:
- for ti in trading_instructions:
- Log.info(f"{self.fname()} Sending trading instructions {ti}")
- await self.pairs_trader_.ti_sender_.send_trading_instructions(ti)
-
- def _create_trading_instructions(
- self, prediction: Prediction, last_row: pd.Series
- ) -> List[TradingInstructions]:
- trd_instructions: List[TradingInstructions] = []
- pair = self.trading_pair_
-
- scaled_disequilibrium = prediction.scaled_disequilibrium_
- abs_scaled_disequilibrium = abs(scaled_disequilibrium)
-
- if abs_scaled_disequilibrium >= self.open_threshold_:
- trd_instructions = self._create_open_trade_instructions(
- pair, row=last_row, prediction=prediction
- )
-
- elif abs_scaled_disequilibrium <= self.close_threshold_ or pair.to_stop_close_conditions(predicted_row=last_row):
- trd_instructions = self._create_close_trade_instructions(
- pair, row=last_row # , prediction=prediction
- )
-
-
- return trd_instructions
-
- def _strength(self, scaled_disequilibrium: float) -> float:
- # TODO PtLiveStrategy._strength()
- return 1.0
-
- def _create_open_trade_instructions(
- self, pair: LiveTradingPair, row: pd.Series, prediction: Prediction
- ) -> List[TradingInstructions]:
- diseqlbrm = prediction.disequilibrium_
- scaled_disequilibrium = prediction.scaled_disequilibrium_
- if diseqlbrm > 0:
- side_a = -1
- side_b = 1
- else:
- side_a = 1
- side_b = -1
-
- ti_a: Optional[TradingInstructions] = TradingInstructions(
- book=self.pairs_trader_.book_id_,
- strategy_id=self.__class__.__name__,
- ti_type=TradingInstructions.Type.TARGET_POSITION,
- issued_ts_ns=current_nanoseconds(),
- data=TargetPositionSignal(
- strength=side_a * self._strength(scaled_disequilibrium),
- exchange_id=pair.get_instrument_a().exchange_id_,
- base_asset=pair.get_instrument_a().base_asset_id_,
- quote_asset=pair.get_instrument_a().quote_asset_id_,
- user_data={}
- ),
- )
- if not ti_a:
- return []
- ti_b: Optional[TradingInstructions] = TradingInstructions(
- book=self.pairs_trader_.book_id_,
- strategy_id=self.__class__.__name__,
- ti_type=TradingInstructions.Type.TARGET_POSITION,
- issued_ts_ns=current_nanoseconds(),
- data=TargetPositionSignal(
- strength=side_b * self._strength(scaled_disequilibrium),
- exchange_id=pair.get_instrument_b().exchange_id_,
- base_asset=pair.get_instrument_b().base_asset_id_,
- quote_asset=pair.get_instrument_b().quote_asset_id_,
- user_data={}
- ),
- )
- if not ti_b:
- return []
- return [ti_a, ti_b]
-
-
- def _create_close_trade_instructions(
- self, pair: LiveTradingPair, row: pd.Series
- ) -> List[TradingInstructions]:
- ti_a: Optional[TradingInstructions] = TradingInstructions(
- book=self.pairs_trader_.book_id_,
- strategy_id=self.__class__.__name__,
- ti_type=TradingInstructions.Type.TARGET_POSITION,
- issued_ts_ns=current_nanoseconds(),
- data=TargetPositionSignal(
- strength=0,
- exchange_id=pair.get_instrument_a().exchange_id_,
- base_asset=pair.get_instrument_a().base_asset_id_,
- quote_asset=pair.get_instrument_a().quote_asset_id_,
- user_data={}
- ),
- )
- if not ti_a:
- return []
- ti_b: Optional[TradingInstructions] = TradingInstructions(
- book=self.pairs_trader_.book_id_,
- strategy_id=self.__class__.__name__,
- ti_type=TradingInstructions.Type.TARGET_POSITION,
- issued_ts_ns=current_nanoseconds(),
- data=TargetPositionSignal(
- strength=0,
- exchange_id=pair.get_instrument_b().exchange_id_,
- base_asset=pair.get_instrument_b().base_asset_id_,
- quote_asset=pair.get_instrument_b().quote_asset_id_,
- user_data={}
- ),
- )
- if not ti_b:
- return []
- return [ti_a, ti_b]
diff --git a/__SAV__/lib/pt_strategy/model_data_policy.py b/__SAV__/lib/pt_strategy/model_data_policy.py
deleted file mode 100644
index e1e51fe..0000000
--- a/__SAV__/lib/pt_strategy/model_data_policy.py
+++ /dev/null
@@ -1,253 +0,0 @@
-from __future__ import annotations
-
-import copy
-from abc import ABC, abstractmethod
-from dataclasses import dataclass
-from typing import Any, Dict, Optional, cast
-
-import numpy as np
-import pandas as pd
-
-from cvttpy_tools.base.config import Config
-
-@dataclass
-class DataWindowParams:
- training_size_: int
- training_start_index_: int
-
-
-class ModelDataPolicy(ABC):
- config_: Config
- current_data_params_: DataWindowParams
- count_: int
- is_real_time_: bool
-
- def __init__(self, config: Config, *args: Any, **kwargs: Any):
- self.config_ = config
- self.current_data_params_ = DataWindowParams(
- training_size_=config.get_value("model/training_size", 120),
- training_start_index_=0,
- )
- self.count_ = 0
- self.is_real_time_ = kwargs.get("is_real_time", False)
-
- @abstractmethod
- def advance(self, mkt_data_df: Optional[pd.DataFrame] = None) -> DataWindowParams:
- self.count_ += 1
- if not self.is_real_time_:
- print(self.count_, end="\r")
- return self.current_data_params_
-
- @staticmethod
- def create(config: Config, *args: Any, **kwargs: Any) -> ModelDataPolicy:
- import importlib
-
- model_data_policy_class_name = config.get_value("model/model_data_policy_class", None)
- assert model_data_policy_class_name is not None
- module_name, class_name = model_data_policy_class_name.rsplit(".", 1)
- module = importlib.import_module(module_name)
- model_training_data_policy_object = getattr(module, class_name)(
- config=config, *args, **kwargs
- )
- return cast(ModelDataPolicy, model_training_data_policy_object)
-
-
-class RollingWindowDataPolicy(ModelDataPolicy):
- def __init__(self, config: Config, *args: Any, **kwargs: Any):
- super().__init__(config, *args, **kwargs)
- self.count_ = 1
-
- def advance(self, mkt_data_df: Optional[pd.DataFrame] = None) -> DataWindowParams:
- super().advance(mkt_data_df)
- if self.is_real_time_:
- self.current_data_params_.training_start_index_ = 0
- if mkt_data_df and len(mkt_data_df) > self.curren_data_params_.training_size_:
- self.current_data_params_.training_start_index_ = -self.curren_data_params_.training_size_
- else:
- self.current_data_params_.training_start_index_ += 1
- return self.current_data_params_
-
-
-class OptimizedWndDataPolicy(ModelDataPolicy, ABC):
- mkt_data_df_: pd.DataFrame
- pair_: TradingPair # type: ignore
- min_training_size_: int
- max_training_size_: int
- end_index_: int
- prices_a_: np.ndarray
- prices_b_: np.ndarray
-
- def __init__(self, config: Config, *args: Any, **kwargs: Any):
- super().__init__(config, *args, **kwargs)
- assert (
- kwargs.get("pair") is not None
- ), "pair must be provided"
- assert (config.key_exists("model/max_training_size") and config.key_exists("model/min_training_size")
- ), "min_training_size and max_training_size must be provided"
- self.min_training_size_ = cast(int, config.get_value("model/min_training_size"))
- self.max_training_size_ = cast(int, config.get_value("model/max_training_size"))
-
- from pairs_trading.lib.pt_strategy.trading_pair import TradingPair
- self.pair_ = cast(TradingPair, kwargs.get("pair"))
-
- if "mkt_data" in kwargs:
- self.mkt_data_df_ = cast(pd.DataFrame, kwargs.get("mkt_data"))
- col_a, col_b = self.pair_.colnames()
- self.prices_a_ = np.array(self.mkt_data_df_[col_a])
- self.prices_b_ = np.array(self.mkt_data_df_[col_b])
- assert self.min_training_size_ < self.max_training_size_
-
-
- def advance(self, mkt_data_df: Optional[pd.DataFrame] = None) -> DataWindowParams:
- super().advance(mkt_data_df)
- if mkt_data_df is not None:
- self.mkt_data_df_ = mkt_data_df
-
- if self.is_real_time_:
- self.end_index_ = len(self.mkt_data_df_) - 1
- else:
- self.end_index_ = self.current_data_params_.training_start_index_ + self.max_training_size_
- if self.end_index_ > len(self.mkt_data_df_) - 1:
- self.end_index_ = len(self.mkt_data_df_) - 1
- self.current_data_params_.training_start_index_ = self.end_index_ - self.max_training_size_
- if self.current_data_params_.training_start_index_ < 0:
- self.current_data_params_.training_start_index_ = 0
-
- col_a, col_b = self.pair_.colnames()
- self.prices_a_ = np.array(self.mkt_data_df_[col_a])
- self.prices_b_ = np.array(self.mkt_data_df_[col_b])
-
- self.current_data_params_ = self.optimize_window_size()
- return self.current_data_params_
-
- @abstractmethod
- def optimize_window_size(self) -> DataWindowParams:
- ...
-
-class EGOptimizedWndDataPolicy(OptimizedWndDataPolicy):
- '''
- # Engle-Granger cointegration test
- *** VERY SLOW ***
- '''
- def __init__(self, config: Config, *args: Any, **kwargs: Any):
- super().__init__(config, *args, **kwargs)
-
- def optimize_window_size(self) -> DataWindowParams:
- # Run Engle-Granger cointegration test
- last_pvalue = 1.0
- result = copy.copy(self.current_data_params_)
- for trn_size in range(self.min_training_size_, self.max_training_size_):
- if self.end_index_ - trn_size < 0:
- break
-
- from statsmodels.tsa.stattools import coint # type: ignore
-
- start_index = self.end_index_ - trn_size
- series_a = self.prices_a_[start_index : self.end_index_]
- series_b = self.prices_b_[start_index : self.end_index_]
- eg_pvalue = float(coint(series_a, series_b)[1])
- if eg_pvalue < last_pvalue:
- last_pvalue = eg_pvalue
- result.training_size_ = trn_size
- result.training_start_index_ = start_index
-
- # print(
- # f"*** DEBUG *** end_index={self.end_index_}, best_trn_size={self.current_data_params_.training_size}, {last_pvalue=}"
- # )
- return result
-
-class ADFOptimizedWndDataPolicy(OptimizedWndDataPolicy):
- # Augmented Dickey-Fuller test
- def __init__(self, config: Config, *args: Any, **kwargs: Any):
- super().__init__(config, *args, **kwargs)
-
- def optimize_window_size(self) -> DataWindowParams:
- from statsmodels.regression.linear_model import OLS
- from statsmodels.tools.tools import add_constant
- from statsmodels.tsa.stattools import adfuller
-
- last_pvalue = 1.0
- result = copy.copy(self.current_data_params_)
- for trn_size in range(self.min_training_size_, self.max_training_size_):
- if self.end_index_ - trn_size < 0:
- break
- start_index = self.end_index_ - trn_size
- y = self.prices_a_[start_index : self.end_index_]
- x = self.prices_b_[start_index : self.end_index_]
-
- # Add constant to x for intercept
- x_with_const = add_constant(x)
-
- # OLS regression: y = a + b*x + e
- model = OLS(y, x_with_const).fit()
- residuals = y - model.predict(x_with_const)
-
- # ADF test on residuals
- try:
- adf_result = adfuller(residuals, maxlag=1, regression="c")
- adf_pvalue = float(adf_result[1])
- except Exception as e:
- # Handle edge cases with exception (e.g., constant series, etc.)
- adf_pvalue = 1.0
-
- if adf_pvalue < last_pvalue:
- last_pvalue = adf_pvalue
- result.training_size_ = trn_size
- result.training_start_index_ = start_index
-
- # print(
- # f"*** DEBUG *** end_index={self.end_index_},"
- # f" best_trn_size={self.current_data_params_.training_size},"
- # f" {last_pvalue=}"
- # )
- return result
-
-class JohansenOptdWndDataPolicy(OptimizedWndDataPolicy):
- # Johansen test
- def __init__(self, config: Config, *args: Any, **kwargs: Any):
- super().__init__(config, *args, **kwargs)
-
- def optimize_window_size(self) -> DataWindowParams:
- from statsmodels.tsa.vector_ar.vecm import coint_johansen
- import numpy as np
-
- best_stat = -np.inf
- best_trn_size = 0
- best_start_index = -1
-
- result = copy.copy(self.current_data_params_)
- for trn_size in range(self.min_training_size_, self.max_training_size_):
- if self.end_index_ - trn_size < 0:
- break
- start_index = self.end_index_ - trn_size
- series_a = self.prices_a_[start_index:self.end_index_]
- series_b = self.prices_b_[start_index:self.end_index_]
-
- # Combine into 2D matrix for Johansen test
- try:
- data = np.column_stack([series_a, series_b])
-
- # Johansen test: det_order=0 (no deterministic trend), k_ar_diff=1 (lag)
- res = coint_johansen(data, det_order=0, k_ar_diff=1)
-
- # Trace statistic for cointegration rank 1
- trace_stat = res.lr1[0] # test stat for rank=0 vs >=1
- critical_value = res.cvt[0, 1] # 5% critical value
-
- if trace_stat > best_stat:
- best_stat = trace_stat
- best_trn_size = trn_size
- best_start_index = start_index
- except Exception:
- continue
-
- if best_trn_size > 0:
- result.training_size_ = best_trn_size
- result.training_start_index_ = best_start_index
- else:
- print("*** WARNING: No valid cointegration window found.")
-
- # print(
- # f"*** DEBUG *** end_index={self.end_index_}, best_trn_size={best_trn_size}, trace_stat={best_stat}"
- # )
- return result
\ No newline at end of file
diff --git a/__SAV__/lib/pt_strategy/models.py b/__SAV__/lib/pt_strategy/models.py
deleted file mode 100644
index ccc9264..0000000
--- a/__SAV__/lib/pt_strategy/models.py
+++ /dev/null
@@ -1,104 +0,0 @@
-from __future__ import annotations
-from typing import Optional
-
-import pandas as pd
-import statsmodels.api as sm
-
-
-
-from pairs_trading.lib.pt_strategy.pt_model import PairsTradingModel, Prediction
-from pairs_trading.lib.pt_strategy.trading_pair import TradingPair
-
-
-class OLSModel(PairsTradingModel):
- model_: Optional[sm.regression.linear_model.RegressionResultsWrapper]
- pair_predict_result_: Optional[pd.DataFrame]
- zscore_df_: Optional[pd.DataFrame]
-
- def predict(self, pair: TradingPair) -> Prediction:
- self.training_df_ = pair.market_data_.copy()
-
- zscore_df = self._fit_zscore(pair=pair)
-
- assert zscore_df is not None
- # zscore is both disequilibrium and scaled_disequilibrium
- self.training_df_["dis-equilibrium"] = zscore_df[0]
- self.training_df_["scaled_dis-equilibrium"] = zscore_df[0]
-
- assert zscore_df is not None
- return Prediction(
- tstamp=pair.market_data_.iloc[-1]["tstamp"],
- disequilibrium=self.training_df_["dis-equilibrium"].iloc[-1],
- scaled_disequilibrium=self.training_df_["scaled_dis-equilibrium"].iloc[-1],
- )
-
- def _fit_zscore(self, pair: TradingPair) -> pd.DataFrame:
- assert self.training_df_ is not None
- symbol_a_px_series = self.training_df_[pair.colnames()].iloc[:, 0]
- symbol_b_px_series = self.training_df_[pair.colnames()].iloc[:, 1]
-
- symbol_a_px_series, symbol_b_px_series = symbol_a_px_series.align(
- symbol_b_px_series, axis=0
- )
-
- X = sm.add_constant(symbol_b_px_series)
- self.model_ = sm.OLS(symbol_a_px_series, X).fit()
- assert self.model_ is not None
-
- # alternate way would be to use models residuals (will give identical results)
- # alpha, beta = self.model_.params
- # spread = symbol_a_px_series - (alpha + beta * symbol_b_px_series)
- spread = self.model_.resid
- return pd.DataFrame((spread - spread.mean()) / spread.std())
-
-
-class VECMModel(PairsTradingModel):
- def predict(self, pair: TradingPair) -> Prediction:
- self.training_df_ = pair.market_data_.copy()
- assert self.training_df_ is not None
- vecm_fit = self._fit_VECM(pair=pair)
-
- assert vecm_fit is not None
- predicted_prices = vecm_fit.predict(steps=1)
-
- # Convert prediction to a DataFrame for readability
- predicted_df = pd.DataFrame(
- predicted_prices, columns=pd.Index(pair.colnames()), dtype=float
- )
-
- disequilibrium = (predicted_df[pair.colnames()] @ vecm_fit.beta)[0][0]
- scaled_disequilibrium = (disequilibrium - self.training_mu_) / self.training_std_
- return Prediction(
- tstamp=pair.market_data_.iloc[-1]["tstamp"],
- disequilibrium=disequilibrium,
- scaled_disequilibrium=scaled_disequilibrium,
- )
-
- def _fit_VECM(self, pair: TradingPair) -> VECMResults: # type: ignore
- from statsmodels.tsa.vector_ar.vecm import VECM, VECMResults
-
- vecm_df = self.training_df_[pair.colnames()].reset_index(drop=True)
- vecm_model = VECM(vecm_df, coint_rank=1)
- vecm_fit = vecm_model.fit()
-
- assert vecm_fit is not None
-
- # Check if the model converged properly
- if not hasattr(vecm_fit, "beta") or vecm_fit.beta is None:
- print(f"{self}: VECM model failed to converge properly")
-
- diseq_series = self.training_df_[pair.colnames()] @ vecm_fit.beta
- # print(diseq_series.shape)
- self.training_mu_ = float(diseq_series[0].mean())
- self.training_std_ = float(diseq_series[0].std())
-
- self.training_df_["dis-equilibrium"] = (
- self.training_df_[pair.colnames()] @ vecm_fit.beta
- )
- # Normalize the dis-equilibrium
- self.training_df_["scaled_dis-equilibrium"] = (
- diseq_series - self.training_mu_
- ) / self.training_std_
-
- return vecm_fit
-
diff --git a/__SAV__/lib/pt_strategy/prediction.py b/__SAV__/lib/pt_strategy/prediction.py
deleted file mode 100644
index 8ae838f..0000000
--- a/__SAV__/lib/pt_strategy/prediction.py
+++ /dev/null
@@ -1,28 +0,0 @@
-from __future__ import annotations
-
-from typing import Any, Dict
-
-import pandas as pd
-
-
-class Prediction:
- tstamp_: pd.Timestamp
- disequilibrium_: float
- scaled_disequilibrium_: float
-
- def __init__(self, tstamp: pd.Timestamp, disequilibrium: float, scaled_disequilibrium: float):
- self.tstamp_ = tstamp
- self.disequilibrium_ = disequilibrium
- self.scaled_disequilibrium_ = scaled_disequilibrium
-
- def to_dict(self) -> Dict[str, Any]:
- return {
- "tstamp": self.tstamp_,
- "disequilibrium": self.disequilibrium_,
- "signed_scaled_disequilibrium": self.scaled_disequilibrium_,
- "scaled_disequilibrium": abs(self.scaled_disequilibrium_),
- # "pair": self.pair_,
- }
- def to_df(self) -> pd.DataFrame:
- return pd.DataFrame([self.to_dict()])
-
\ No newline at end of file
diff --git a/__SAV__/lib/pt_strategy/pt_market_data.py b/__SAV__/lib/pt_strategy/pt_market_data.py
deleted file mode 100644
index aa4c93d..0000000
--- a/__SAV__/lib/pt_strategy/pt_market_data.py
+++ /dev/null
@@ -1,223 +0,0 @@
-from __future__ import annotations
-
-from abc import ABC, abstractmethod
-from typing import Any, Dict, List, Optional
-
-import pandas as pd
-
-# ---
-from cvttpy_tools.base.base import NamedObject
-from cvttpy_tools.base.config import Config
-from cvttpy_tools.settings.cvtt_types import JsonDictT
-
-# ---
-from cvttpy_trading.trading.mkt_data.md_summary import MdTradesAggregate
-from cvttpy_trading.trading.instrument import ExchangeInstrument
-# ---
-from pairs_trading.lib.tools.data_loader import load_market_data
-
-
-class PtMarketData(NamedObject, ABC):
- config_: Config
- origin_mkt_data_df_: pd.DataFrame
- market_data_df_: pd.DataFrame
- stat_model_price_: str
- instruments_: List[ExchangeInstrument]
- symbol_a_: str
- symbol_b_: str
-
- def __init__(self, config: Config, instruments: List[ExchangeInstrument]):
- self.config_ = config
- self.origin_mkt_data_df_ = pd.DataFrame()
- self.market_data_df_ = pd.DataFrame()
- self.stat_model_price_ = self.config_.get_value("model/stat_model_price")
-
- self.instruments_ = instruments
- assert len(self.instruments_) > 0, "No instruments found in config"
- self.symbol_a_ = self.instruments_[0].instrument_id().split("-", 1)[1]
- self.symbol_b_ = self.instruments_[1].instrument_id().split("-", 1)[1]
-
- @abstractmethod
- def md_columns(self) -> List[str]: ...
-
- @abstractmethod
- def rename_columns(self, symbol_df: pd.DataFrame) -> pd.DataFrame: ...
-
- @abstractmethod
- def tranform_df_target_colnames(self) -> List[str]: ...
-
- def set_market_data(self) -> None:
- self.market_data_df_ = pd.DataFrame(
- self._transform_dataframe(self.origin_mkt_data_df_)[
- ["tstamp"] + self.tranform_df_target_colnames()
- ]
- )
-
- self.market_data_df_ = self.market_data_df_.dropna().reset_index(drop=True)
- self.market_data_df_["tstamp"] = pd.to_datetime(self.market_data_df_["tstamp"])
- self.market_data_df_ = self.market_data_df_.sort_values("tstamp")
-
- def colnames(self) -> List[str]:
- return [
- f"{self.stat_model_price_}_{self.symbol_a_}",
- f"{self.stat_model_price_}_{self.symbol_b_}",
- ]
-
- def _transform_dataframe(self, df: pd.DataFrame) -> pd.DataFrame:
- df_selected: pd.DataFrame = pd.DataFrame(df[self.md_columns()])
- result_df = (
- pd.DataFrame(df_selected["tstamp"]).drop_duplicates().reset_index(drop=True)
- )
-
- # For each unique symbol, add a corresponding stat_model_price column
- symbols = df_selected["symbol"].unique()
-
- for symbol in symbols:
- # Filter rows for this symbol
- df_symbol = df_selected[df_selected["symbol"] == symbol].reset_index(
- drop=True
- )
- # Create column name like "close-COIN"
- temp_df: pd.DataFrame = self.rename_columns(df_symbol)
- # Join with our result dataframe
- result_df = pd.merge(result_df, temp_df, on="tstamp", how="left")
- result_df = result_df.reset_index(
- drop=True
- ) # do not dropna() since irrelevant symbol would affect dataset
-
- return result_df.dropna()
-
-class ResearchMarketData(PtMarketData):
- current_index_: int
- is_execution_price_: bool
-
- def __init__(self, config: Config, instruments: List[ExchangeInstrument]):
- super().__init__(config, instruments)
- self.current_index_ = 0
- self.is_execution_price_ = self.config_.key_exists("execution_price")
- if self.is_execution_price_:
- self.execution_price_column_ = self.config_.get_value("execution_price")["column"]
- self.execution_price_shift_ = self.config_.get_value("execution_price")["shift"]
- else:
- self.execution_price_column_ = None
- self.execution_price_shift_ = 0
-
- def has_next(self) -> bool:
- return self.current_index_ < len(self.market_data_df_)
-
- def get_next(self) -> pd.Series:
- result = self.market_data_df_.iloc[self.current_index_]
- self.current_index_ += 1
- return result
-
- def load(self) -> None:
- datafiles: List[str] = self.config_.get_value("datafiles", [])
- assert len(datafiles) > 0, "No datafiles found in config"
-
- extra_minutes: int = self.execution_price_shift_
-
- for datafile in datafiles:
- md_df = load_market_data(
- datafile=datafile,
- instruments=self.instruments_,
- db_table_name=self.config_.get_value("market_data_loading")[
- self.instruments_[0].user_data_.get("instrument_type", "?instrument_type?")
- ]["db_table_name"],
- trading_hours=self.config_.get_value("trading_hours"),
- extra_minutes=extra_minutes,
- )
- self.origin_mkt_data_df_ = pd.concat([self.origin_mkt_data_df_, md_df])
-
- self.origin_mkt_data_df_ = self.origin_mkt_data_df_.sort_values(by="tstamp")
- self.origin_mkt_data_df_ = self.origin_mkt_data_df_.dropna().reset_index(
- drop=True
- )
- self.set_market_data()
- self._set_execution_price_data()
-
- def _set_execution_price_data(self) -> None:
- if not self.is_execution_price_:
- return
- if not self.config_.key_exists("execution_price"):
- self.market_data_df_[f"exec_price_{self.symbol_a_}"] = self.market_data_df_[
- f"{self.stat_model_price_}_{self.symbol_a_}"
- ]
- self.market_data_df_[f"exec_price_{self.symbol_b_}"] = self.market_data_df_[
- f"{self.stat_model_price_}_{self.symbol_b_}"
- ]
- return
- execution_price_column = self.config_.get_value("execution_price")["column"]
- execution_price_shift = self.config_.get_value("execution_price")["shift"]
- self.market_data_df_[f"exec_price_{self.symbol_a_}"] = self.market_data_df_[
- f"{execution_price_column}_{self.symbol_a_}"
- ].shift(-execution_price_shift)
- self.market_data_df_[f"exec_price_{self.symbol_b_}"] = self.market_data_df_[
- f"{execution_price_column}_{self.symbol_b_}"
- ].shift(-execution_price_shift)
- self.market_data_df_ = self.market_data_df_.dropna().reset_index(drop=True)
-
- def md_columns(self) -> List[str]:
- # @abstractmethod
- if self.is_execution_price_:
- return ["tstamp", "symbol", self.stat_model_price_, self.execution_price_column_]
- else:
- return ["tstamp", "symbol", self.stat_model_price_]
-
- def rename_columns(self, selected_symbol_df: pd.DataFrame) -> pd.DataFrame:
- # @abstractmethod
- symbol = selected_symbol_df.iloc[0]["symbol"]
- new_price_column = f"{self.stat_model_price_}_{symbol}"
- if self.is_execution_price_:
- new_execution_price_column = f"{self.execution_price_column_}_{symbol}"
-
- # Create temporary dataframe with timestamp and price
- temp_df = pd.DataFrame(
- {
- "tstamp": selected_symbol_df["tstamp"],
- new_price_column: selected_symbol_df[self.stat_model_price_],
- new_execution_price_column: selected_symbol_df[self.execution_price_column_],
- }
- )
- else:
- temp_df = pd.DataFrame(
- {
- "tstamp": selected_symbol_df["tstamp"],
- new_price_column: selected_symbol_df[self.stat_model_price_],
- }
- )
- return temp_df
-
- def tranform_df_target_colnames(self):
- # @abstractmethod
- return self.colnames() + self.orig_exec_prices_colnames()
-
- def orig_exec_prices_colnames(self) -> List[str]:
- return [
- f"{self.execution_price_column_}_{self.symbol_a_}",
- f"{self.execution_price_column_}_{self.symbol_b_}",
- ] if self.is_execution_price_ else []
-
-class LiveMarketData(PtMarketData):
-
- def __init__(self, config: Config, instruments: List[ExchangeInstrument]):
- super().__init__(config, instruments)
-
- def md_columns(self) -> List[str]:
- # @abstractmethod
- return ["tstamp", "symbol", self.stat_model_price_]
-
- def rename_columns(self, selected_symbol_df: pd.DataFrame) -> pd.DataFrame:
- # @abstractmethod
- symbol = selected_symbol_df.iloc[0]["symbol"]
- new_price_column = f"{self.stat_model_price_}_{symbol}"
- temp_df = pd.DataFrame(
- {
- "tstamp": selected_symbol_df["tstamp"],
- new_price_column: selected_symbol_df[self.stat_model_price_],
- }
- )
- return temp_df
-
- def tranform_df_target_colnames(self):
- # @abstractmethod
- return self.colnames()
diff --git a/__SAV__/lib/pt_strategy/pt_model.py b/__SAV__/lib/pt_strategy/pt_model.py
deleted file mode 100644
index c47a61f..0000000
--- a/__SAV__/lib/pt_strategy/pt_model.py
+++ /dev/null
@@ -1,30 +0,0 @@
-from __future__ import annotations
-
-from abc import ABC, abstractmethod
-from typing import Any, Dict, cast
-
-# ---
-from cvttpy_tools.base.config import Config
-# ---
-from pairs_trading.lib.pt_strategy.prediction import Prediction
-from pairs_trading.lib.pt_strategy.trading_pair import TradingPair
-
-class PairsTradingModel(ABC):
-
- @abstractmethod
- def predict(self, pair: TradingPair) -> Prediction: # type: ignore[assignment]
- ...
-
- @staticmethod
- def create(config: Config) -> PairsTradingModel:
- import importlib
-
- model_class_name = config.get_value("model/model_class", None)
- assert model_class_name is not None
- module_name, class_name = model_class_name.rsplit(".", 1)
- module = importlib.import_module(module_name)
- model_object = getattr(module, class_name)()
- return cast(PairsTradingModel, model_object)
-
-
-
diff --git a/__SAV__/lib/pt_strategy/research_strategy.py b/__SAV__/lib/pt_strategy/research_strategy.py
deleted file mode 100644
index 3de859c..0000000
--- a/__SAV__/lib/pt_strategy/research_strategy.py
+++ /dev/null
@@ -1,305 +0,0 @@
-from __future__ import annotations
-
-from typing import Any, Dict, List, Optional, Tuple
-
-import pandas as pd
-# ---
-from cvttpy_tools.base.config import Config
-# ---
-from cvttpy_trading.trading.instrument import ExchangeInstrument
-# ---
-from pairs_trading.lib.pt_strategy.model_data_policy import ModelDataPolicy
-from pairs_trading.lib.pt_strategy.pt_market_data import ResearchMarketData
-from pairs_trading.lib.pt_strategy.pt_model import Prediction
-from pairs_trading.lib.pt_strategy.trading_pair import PairState, TradingPair, ResearchTradingPair
-
-class PtResearchStrategy:
- config_: Config
- trading_pair_: ResearchTradingPair
- model_data_policy_: ModelDataPolicy
- pt_mkt_data_: ResearchMarketData
-
- trades_: List[pd.DataFrame]
- predictions_df_: pd.DataFrame
-
- def __init__(
- self,
- config: Config,
- instruments: List[ExchangeInstrument]
- ):
- from pairs_trading.lib.pt_strategy.model_data_policy import ModelDataPolicy
- from pairs_trading.lib.pt_strategy.trading_pair import TradingPair
-
- self.config_ = config
- self.trades_ = []
- self.trading_pair_ = ResearchTradingPair(config=config, instruments=instruments)
- self.predictions_df_ = pd.DataFrame()
-
- import copy
-
- # modified config must be passed to PtMarketData
- config_copy = copy.deepcopy(config)
- config_copy.set_value("instruments", instruments)
- self.pt_mkt_data_ = ResearchMarketData(config=config_copy, instruments=instruments)
- self.pt_mkt_data_.load()
- self.model_data_policy_ = ModelDataPolicy.create(
- config_copy, mkt_data=self.pt_mkt_data_.market_data_df_, pair=self.trading_pair_
- )
-
- def outstanding_positions(self) -> List[Dict[str, Any]]:
- return list(self.trading_pair_.user_data_.get("outstanding_positions", []))
-
- def run(self) -> None:
- training_minutes = self.config_.get_value("training_minutes", 120)
- market_data_series: pd.Series
- market_data_df = pd.DataFrame()
-
- idx = 0
- while self.pt_mkt_data_.has_next():
- market_data_series = self.pt_mkt_data_.get_next()
- new_row = pd.DataFrame([market_data_series])
- market_data_df = pd.concat([market_data_df, new_row], ignore_index=True)
- if idx >= training_minutes:
- break
- idx += 1
-
- assert idx >= training_minutes, "Not enough training data"
-
- while self.pt_mkt_data_.has_next():
-
- market_data_series = self.pt_mkt_data_.get_next()
- new_row = pd.DataFrame([market_data_series])
- market_data_df = pd.concat([market_data_df, new_row], ignore_index=True)
-
- prediction = self.trading_pair_.run(
- market_data_df, self.model_data_policy_.advance(mkt_data_df=market_data_df)
- )
- self.predictions_df_ = pd.concat(
- [self.predictions_df_, prediction.to_df()], ignore_index=True
- )
- assert prediction is not None
-
- trades = self._create_trades(
- prediction=prediction, last_row=market_data_df.iloc[-1]
- )
- if trades is not None:
- self.trades_.append(trades)
-
- trades = self._handle_outstanding_positions()
- if trades is not None:
- self.trades_.append(trades)
-
- def _create_trades(
- self, prediction: Prediction, last_row: pd.Series
- ) -> Optional[pd.DataFrame]:
- pair = self.trading_pair_
- trades = None
-
- open_threshold = self.config_.get_value("model/disequilibrium/open_trshld")
- close_threshold = self.config_.get_value("model/disequilibrium/close_trshld")
- scaled_disequilibrium = prediction.scaled_disequilibrium_
- abs_scaled_disequilibrium = abs(scaled_disequilibrium)
-
- if pair.user_data_["state"] in [
- PairState.INITIAL,
- PairState.CLOSE,
- PairState.CLOSE_POSITION,
- PairState.CLOSE_STOP_LOSS,
- PairState.CLOSE_STOP_PROFIT,
- ]:
- if abs_scaled_disequilibrium >= open_threshold:
- trades = self._create_open_trades(
- pair, row=last_row, prediction=prediction
- )
- if trades is not None:
- trades["status"] = PairState.OPEN.name
- print(f"OPEN TRADES:\n{trades}")
- pair.user_data_["state"] = PairState.OPEN
- pair.on_open_trades(trades)
-
- elif pair.user_data_["state"] == PairState.OPEN:
- if abs_scaled_disequilibrium <= close_threshold:
- trades = self._create_close_trades(
- pair, row=last_row, prediction=prediction
- )
- if trades is not None:
- trades["status"] = PairState.CLOSE.name
- print(f"CLOSE TRADES:\n{trades}")
- pair.user_data_["state"] = PairState.CLOSE
- pair.on_close_trades(trades)
- elif pair.to_stop_close_conditions(predicted_row=last_row):
- trades = self._create_close_trades(pair, row=last_row)
- if trades is not None:
- trades["status"] = pair.user_data_["stop_close_state"].name
- print(f"STOP CLOSE TRADES:\n{trades}")
- pair.user_data_["state"] = pair.user_data_["stop_close_state"]
- pair.on_close_trades(trades)
-
- return trades
-
- def _handle_outstanding_positions(self) -> Optional[pd.DataFrame]:
- trades = None
- pair = self.trading_pair_
-
- # Outstanding positions
- if pair.user_data_["state"] == PairState.OPEN:
- print(f"{pair}: *** Position is NOT CLOSED. ***")
- # outstanding positions
- if self.config_.get_value("close_outstanding_positions", False):
- close_position_row = pd.Series(pair.market_data_.iloc[-2])
- # close_position_row["disequilibrium"] = 0.0
- # close_position_row["scaled_disequilibrium"] = 0.0
- # close_position_row["signed_scaled_disequilibrium"] = 0.0
-
- trades = self._create_close_trades(
- pair=pair, row=close_position_row, prediction=None
- )
- if trades is not None:
- trades["status"] = PairState.CLOSE_POSITION.name
- print(f"CLOSE_POSITION TRADES:\n{trades}")
- pair.user_data_["state"] = PairState.CLOSE_POSITION
- pair.on_close_trades(trades)
- else:
- pair.add_outstanding_position(
- symbol=pair.symbol_a(),
- open_side=pair.user_data_["open_side_a"],
- open_px=pair.user_data_["open_px_a"],
- open_tstamp=pair.user_data_["open_tstamp"],
- last_mkt_data_row=pair.market_data_.iloc[-1],
- )
- pair.add_outstanding_position(
- symbol=pair.symbol_b(),
- open_side=pair.user_data_["open_side_b"],
- open_px=pair.user_data_["open_px_b"],
- open_tstamp=pair.user_data_["open_tstamp"],
- last_mkt_data_row=pair.market_data_.iloc[-1],
- )
- return trades
-
- def _trades_df(self) -> pd.DataFrame:
- types = {
- "time": "datetime64[ns]",
- "action": "string",
- "symbol": "string",
- "side": "string",
- "price": "float64",
- "disequilibrium": "float64",
- "scaled_disequilibrium": "float64",
- "signed_scaled_disequilibrium": "float64",
- # "pair": "object",
- }
- columns = list(types.keys())
- return pd.DataFrame(columns=columns).astype(types)
-
- def _create_open_trades(
- self, pair: ResearchTradingPair, row: pd.Series, prediction: Prediction
- ) -> Optional[pd.DataFrame]:
- colname_a, colname_b = pair.exec_prices_colnames()
-
- tstamp = row["tstamp"]
- diseqlbrm = prediction.disequilibrium_
- scaled_disequilibrium = prediction.scaled_disequilibrium_
- px_a = row[f"{colname_a}"]
- px_b = row[f"{colname_b}"]
-
- # creating the trades
- df = self._trades_df()
-
- print(f"OPEN_TRADES: {row["tstamp"]} {scaled_disequilibrium=}")
- if diseqlbrm > 0:
- side_a = "SELL"
- side_b = "BUY"
- else:
- side_a = "BUY"
- side_b = "SELL"
-
- # save closing sides
- pair.user_data_["open_side_a"] = side_a # used in oustanding positions
- pair.user_data_["open_side_b"] = side_b
- pair.user_data_["open_px_a"] = px_a
- pair.user_data_["open_px_b"] = px_b
- pair.user_data_["open_tstamp"] = tstamp
-
- pair.user_data_["close_side_a"] = side_b # used for closing trades
- pair.user_data_["close_side_b"] = side_a
-
- # create opening trades
- df.loc[len(df)] = {
- "time": tstamp,
- "symbol": pair.symbol_a(),
- "side": side_a,
- "action": "OPEN",
- "price": px_a,
- "disequilibrium": diseqlbrm,
- "signed_scaled_disequilibrium": scaled_disequilibrium,
- "scaled_disequilibrium": abs(scaled_disequilibrium),
- # "pair": pair,
- }
- df.loc[len(df)] = {
- "time": tstamp,
- "symbol": pair.symbol_b(),
- "side": side_b,
- "action": "OPEN",
- "price": px_b,
- "disequilibrium": diseqlbrm,
- "scaled_disequilibrium": abs(scaled_disequilibrium),
- "signed_scaled_disequilibrium": scaled_disequilibrium,
- # "pair": pair,
- }
- return df
-
- def _create_close_trades(
- self, pair: ResearchTradingPair, row: pd.Series, prediction: Optional[Prediction] = None
- ) -> Optional[pd.DataFrame]:
- colname_a, colname_b = pair.exec_prices_colnames()
-
- tstamp = row["tstamp"]
- if prediction is not None:
- diseqlbrm = prediction.disequilibrium_
- signed_scaled_disequilibrium = prediction.scaled_disequilibrium_
- scaled_disequilibrium = abs(prediction.scaled_disequilibrium_)
- else:
- diseqlbrm = 0.0
- signed_scaled_disequilibrium = 0.0
- scaled_disequilibrium = 0.0
- px_a = row[f"{colname_a}"]
- px_b = row[f"{colname_b}"]
-
- # creating the trades
- df = self._trades_df()
-
- # create opening trades
- df.loc[len(df)] = {
- "time": tstamp,
- "symbol": pair.symbol_a(),
- "side": pair.user_data_["close_side_a"],
- "action": "CLOSE",
- "price": px_a,
- "disequilibrium": diseqlbrm,
- "scaled_disequilibrium": scaled_disequilibrium,
- "signed_scaled_disequilibrium": signed_scaled_disequilibrium,
- # "pair": pair,
- }
- df.loc[len(df)] = {
- "time": tstamp,
- "symbol": pair.symbol_b(),
- "side": pair.user_data_["close_side_b"],
- "action": "CLOSE",
- "price": px_b,
- "disequilibrium": diseqlbrm,
- "scaled_disequilibrium": scaled_disequilibrium,
- "signed_scaled_disequilibrium": signed_scaled_disequilibrium,
- # "pair": pair,
- }
- del pair.user_data_["close_side_a"]
- del pair.user_data_["close_side_b"]
-
- del pair.user_data_["open_tstamp"]
- del pair.user_data_["open_px_a"]
- del pair.user_data_["open_px_b"]
- del pair.user_data_["open_side_a"]
- del pair.user_data_["open_side_b"]
- return df
-
- def day_trades(self) -> pd.DataFrame:
- return pd.concat(self.trades_, ignore_index=True)
diff --git a/__SAV__/lib/pt_strategy/results.py b/__SAV__/lib/pt_strategy/results.py
deleted file mode 100644
index 2b6340f..0000000
--- a/__SAV__/lib/pt_strategy/results.py
+++ /dev/null
@@ -1,527 +0,0 @@
-import os
-import sqlite3
-from datetime import date, datetime
-from typing import Any, Dict, List, Optional, Tuple
-
-import pandas as pd
-# ---
-from cvttpy_tools.base.config import Config
-# ---
-from cvttpy_trading.trading.instrument import ExchangeInstrument
-# ---
-from pairs_trading.lib.pt_strategy.trading_pair import TradingPair
-
-# Recommended replacement adapters and converters for Python 3.12+
-# From: https://docs.python.org/3/library/sqlite3.html#sqlite3-adapter-converter-recipes
-def adapt_date_iso(val: date) -> str:
- """Adapt datetime.date to ISO 8601 date."""
- return val.isoformat()
-
-
-def adapt_datetime_iso(val: datetime) -> str:
- """Adapt datetime.datetime to timezone-naive ISO 8601 date."""
- return val.isoformat()
-
-def convert_date(val: bytes) -> date:
- """Convert ISO 8601 date to datetime.date object."""
- return datetime.fromisoformat(val.decode()).date()
-
-def convert_datetime(val: bytes) -> datetime:
- """Convert ISO 8601 datetime to datetime.datetime object."""
- return datetime.fromisoformat(val.decode())
-
-
-# Register the adapters and converters
-sqlite3.register_adapter(date, adapt_date_iso)
-sqlite3.register_adapter(datetime, adapt_datetime_iso)
-sqlite3.register_converter("date", convert_date)
-sqlite3.register_converter("datetime", convert_datetime)
-
-
-def create_result_database(db_path: str) -> None:
- """
- Create the SQLite database and required tables if they don't exist.
- """
- try:
- # Create directory if it doesn't exist
- db_dir = os.path.dirname(db_path)
- if db_dir and not os.path.exists(db_dir):
- os.makedirs(db_dir, exist_ok=True)
- print(f"Created directory: {db_dir}")
-
- conn = sqlite3.connect(db_path)
- cursor = conn.cursor()
-
- # Create the pt_bt_results table for completed trades
- cursor.execute(
- """
- CREATE TABLE IF NOT EXISTS pt_bt_results (
- date DATE,
- pair TEXT,
- symbol TEXT,
- open_time DATETIME,
- open_side TEXT,
- open_price REAL,
- open_quantity INTEGER,
- open_disequilibrium REAL,
- close_time DATETIME,
- close_side TEXT,
- close_price REAL,
- close_quantity INTEGER,
- close_disequilibrium REAL,
- symbol_return REAL,
- pair_return REAL,
- close_condition TEXT
- )
- """
- )
- cursor.execute("DELETE FROM pt_bt_results;")
-
- # Create the outstanding_positions table for open positions
- cursor.execute(
- """
- CREATE TABLE IF NOT EXISTS outstanding_positions (
- date DATE,
- pair TEXT,
- symbol TEXT,
- position_quantity REAL,
- last_price REAL,
- unrealized_return REAL,
- open_price REAL,
- open_side TEXT
- )
- """
- )
- cursor.execute("DELETE FROM outstanding_positions;")
-
- # Create the config table for storing configuration JSON for reference
- cursor.execute(
- """
- CREATE TABLE IF NOT EXISTS config (
- id INTEGER PRIMARY KEY AUTOINCREMENT,
- run_timestamp DATETIME,
- config_file_path TEXT,
- config_json TEXT,
- datafiles TEXT,
- instruments TEXT
- )
- """
- )
- cursor.execute("DELETE FROM config;")
-
- conn.commit()
- conn.close()
-
- except Exception as e:
- print(f"Error creating result database: {str(e)}")
- raise
-
-
-def store_config_in_database(
- db_path: str,
- config_file_path: str,
- config: Config,
- datafiles: List[Tuple[str, str]],
- instruments: List[ExchangeInstrument],
-) -> None:
- """
- Store configuration information in the database for reference.
- """
- import json
-
- if db_path.upper() == "NONE":
- return
-
- try:
- conn = sqlite3.connect(db_path)
- cursor = conn.cursor()
-
- # Convert config to JSON string
- config_json = json.dumps(config.data(), indent=2, default=str)
-
- # Convert lists to comma-separated strings for storage
- datafiles_str = ", ".join([f"{datafile}" for _, datafile in datafiles])
- instruments_str = ", ".join(
- [
- inst.details_short()
- for inst in instruments
- ]
- )
-
- # Insert configuration record
- cursor.execute(
- """
- INSERT INTO config (
- run_timestamp, config_file_path, config_json, datafiles, instruments
- ) VALUES (?, ?, ?, ?, ?)
- """,
- (
- datetime.now(),
- config_file_path,
- config_json,
- datafiles_str,
- instruments_str,
- ),
- )
-
- conn.commit()
- conn.close()
-
- print(f"Configuration stored in database")
-
- except Exception as e:
- print(f"Error storing configuration in database: {str(e)}")
- import traceback
-
- traceback.print_exc()
-
-
-def convert_timestamp(timestamp: Any) -> Optional[datetime]:
- """Convert pandas Timestamp to Python datetime object for SQLite compatibility."""
- if timestamp is None:
- return None
- if isinstance(timestamp, pd.Timestamp):
- return timestamp.to_pydatetime()
- elif isinstance(timestamp, datetime):
- return timestamp
- elif isinstance(timestamp, date):
- return datetime.combine(timestamp, datetime.min.time())
- elif isinstance(timestamp, str):
- return datetime.strptime(timestamp, "%Y-%m-%d %H:%M:%S")
- elif isinstance(timestamp, int):
- return datetime.fromtimestamp(timestamp)
- else:
- raise ValueError(f"Unsupported timestamp type: {type(timestamp)}")
-
-
-
-DayT = str
-TradeT = Dict[str, Any]
-OutstandingPositionT = Dict[str, Any]
-class PairResearchResult:
- """
- Class to handle pair research results for a single pair across multiple days.
- Simplified version of BacktestResult focused on single pair analysis.
- """
- trades_: Dict[DayT, pd.DataFrame]
- outstanding_positions_: Dict[DayT, List[OutstandingPositionT]]
- symbol_roundtrip_trades_: Dict[str, List[Dict[str, Any]]]
- config_: Config
-
- def __init__(self, config: Config) -> None:
- self.config_ = config
- self.trades_ = {}
- self.outstanding_positions_ = {}
- self.total_realized_pnl = 0.0
- self.symbol_roundtrip_trades_ = {}
-
- def add_day_results(self, day: DayT, trades: pd.DataFrame, outstanding_positions: List[Dict[str, Any]]) -> None:
- assert isinstance(trades, pd.DataFrame)
- self.trades_[day] = trades
- self.outstanding_positions_[day] = outstanding_positions
-
- def outstanding_positions(self) -> List[OutstandingPositionT]:
- """Get all outstanding positions across all days as a flat list."""
- res: List[Dict[str, Any]] = []
- for day in self.outstanding_positions_.keys():
- res.extend(self.outstanding_positions_[day])
- return res
-
- def calculate_returns(self) -> None:
- """Calculate and store total returns for the single pair across all days."""
- self.extract_roundtrip_trades()
-
- self.total_realized_pnl = 0.0
-
- for day, day_trades in self.symbol_roundtrip_trades_.items():
- for trade in day_trades:
- self.total_realized_pnl += trade['symbol_return']
-
- def extract_roundtrip_trades(self) -> None:
- """
- Extract round-trip trades by day, grouping open/close pairs for each symbol.
- Returns a dictionary with day as key and list of completed round-trip trades.
- """
- def _symbol_return(trade1_side: str, trade1_px: float, trade2_side: str, trade2_px: float) -> float:
- if trade1_side == "BUY" and trade2_side == "SELL":
- return (trade2_px - trade1_px) / trade1_px * 100
- elif trade1_side == "SELL" and trade2_side == "BUY":
- return (trade1_px - trade2_px) / trade1_px * 100
- else:
- return 0
-
- # Process each day separately
- for day, day_trades in self.trades_.items():
-
- # Sort trades by timestamp for the day
- sorted_trades = day_trades #sorted(day_trades, key=lambda x: x["timestamp"] if x["timestamp"] else pd.Timestamp.min)
-
- day_roundtrips = []
-
- # Process trades in groups of 4 (open A, open B, close A, close B)
- for idx in range(0, len(sorted_trades), 4):
- if idx + 3 >= len(sorted_trades):
- break
-
- trade_a_1 = sorted_trades.iloc[idx] # Open A
- trade_b_1 = sorted_trades.iloc[idx + 1] # Open B
- trade_a_2 = sorted_trades.iloc[idx + 2] # Close A
- trade_b_2 = sorted_trades.iloc[idx + 3] # Close B
-
- # Validate trade sequence
- if not (trade_a_1["action"] == "OPEN" and trade_a_2["action"] == "CLOSE"):
- continue
- if not (trade_b_1["action"] == "OPEN" and trade_b_2["action"] == "CLOSE"):
- continue
-
- # Calculate individual symbol returns
- symbol_a_return = _symbol_return(
- trade_a_1["side"], trade_a_1["price"],
- trade_a_2["side"], trade_a_2["price"]
- )
- symbol_b_return = _symbol_return(
- trade_b_1["side"], trade_b_1["price"],
- trade_b_2["side"], trade_b_2["price"]
- )
-
- pair_return = symbol_a_return + symbol_b_return
-
- # Create round-trip records for both symbols
- funding_per_position = self.config_.get_value("funding_per_pair", 10000) / 2
-
- # Symbol A round-trip
- day_roundtrips.append({
- "symbol": trade_a_1["symbol"],
- "open_side": trade_a_1["side"],
- "open_price": trade_a_1["price"],
- "open_time": trade_a_1["time"],
- "close_side": trade_a_2["side"],
- "close_price": trade_a_2["price"],
- "close_time": trade_a_2["time"],
- "symbol_return": symbol_a_return,
- "pair_return": pair_return,
- "shares": funding_per_position / trade_a_1["price"],
- "close_condition": trade_a_2.get("status", "UNKNOWN"),
- "open_disequilibrium": trade_a_1.get("disequilibrium"),
- "close_disequilibrium": trade_a_2.get("disequilibrium"),
- })
-
- # Symbol B round-trip
- day_roundtrips.append({
- "symbol": trade_b_1["symbol"],
- "open_side": trade_b_1["side"],
- "open_price": trade_b_1["price"],
- "open_time": trade_b_1["time"],
- "close_side": trade_b_2["side"],
- "close_price": trade_b_2["price"],
- "close_time": trade_b_2["time"],
- "symbol_return": symbol_b_return,
- "pair_return": pair_return,
- "shares": funding_per_position / trade_b_1["price"],
- "close_condition": trade_b_2.get("status", "UNKNOWN"),
- "open_disequilibrium": trade_b_1.get("disequilibrium"),
- "close_disequilibrium": trade_b_2.get("disequilibrium"),
- })
-
- if day_roundtrips:
- self.symbol_roundtrip_trades_[day] = day_roundtrips
-
-
- def print_returns_by_day(self) -> None:
- """
- Print detailed return information for each day, grouped by day.
- Shows individual symbol round-trips and daily totals.
- """
-
- print("\n====== PAIR RESEARCH RETURNS BY DAY ======")
-
- total_return_all_days = 0.0
-
- for day, day_trades in sorted(self.symbol_roundtrip_trades_.items()):
-
- print(f"\n--- {day} ---")
-
- day_total_return = 0.0
- pair_returns = []
-
- # Group trades by pair (every 2 trades form a pair)
- for idx in range(0, len(day_trades), 2):
- if idx + 1 < len(day_trades):
- trade_a = day_trades[idx]
- trade_b = day_trades[idx + 1]
-
- # Print individual symbol results
- print(f" {trade_a['open_time'].time()}-{trade_a['close_time'].time()}")
- print(f" {trade_a['symbol']}: {trade_a['open_side']} @ ${trade_a['open_price']:.2f} → "
- f"{trade_a['close_side']} @ ${trade_a['close_price']:.2f} | "
- f"Return: {trade_a['symbol_return']:+.2f}% | Shares: {trade_a['shares']:.2f}")
-
- print(f" {trade_b['symbol']}: {trade_b['open_side']} @ ${trade_b['open_price']:.2f} → "
- f"{trade_b['close_side']} @ ${trade_b['close_price']:.2f} | "
- f"Return: {trade_b['symbol_return']:+.2f}% | Shares: {trade_b['shares']:.2f}")
-
- # Show disequilibrium info if available
- if trade_a.get('open_disequilibrium') is not None:
- print(f" Disequilibrium: Open: {trade_a['open_disequilibrium']:.4f}, "
- f"Close: {trade_a['close_disequilibrium']:.4f}")
-
- pair_return = trade_a['pair_return']
- print(f" Pair Return: {pair_return:+.2f}% | Close Condition: {trade_a['close_condition']}")
- print()
-
- pair_returns.append(pair_return)
- day_total_return += pair_return
-
- print(f" Day Total Return: {day_total_return:+.2f}% ({len(pair_returns)} pairs)")
- total_return_all_days += day_total_return
-
- print(f"\n====== TOTAL RETURN ACROSS ALL DAYS ======")
- print(f"Total Return: {total_return_all_days:+.2f}%")
- print(f"Total Days: {len(self.symbol_roundtrip_trades_)}")
- if len(self.symbol_roundtrip_trades_) > 0:
- print(f"Average Daily Return: {total_return_all_days / len(self.symbol_roundtrip_trades_):+.2f}%")
-
- def get_return_summary(self) -> Dict[str, Any]:
- """
- Get a summary of returns across all days.
- Returns a dictionary with key metrics.
- """
- if len(self.symbol_roundtrip_trades_) == 0:
- return {
- "total_return": 0.0,
- "total_days": 0,
- "total_pairs": 0,
- "average_daily_return": 0.0,
- "best_day": None,
- "worst_day": None,
- "daily_returns": {}
- }
-
- daily_returns = {}
- total_return = 0.0
- total_pairs = 0
-
- for day, day_trades in self.symbol_roundtrip_trades_.items():
- day_return = 0.0
- day_pairs = len(day_trades) // 2 # Each pair has 2 symbol trades
-
- for trade in day_trades:
- day_return += trade['symbol_return']
-
- daily_returns[day] = {
- "return": day_return,
- "pairs": day_pairs
- }
- total_return += day_return
- total_pairs += day_pairs
-
- best_day = max(daily_returns.items(), key=lambda x: x[1]["return"]) if daily_returns else None
- worst_day = min(daily_returns.items(), key=lambda x: x[1]["return"]) if daily_returns else None
-
- return {
- "total_return": total_return,
- "total_days": len(self.symbol_roundtrip_trades_),
- "total_pairs": total_pairs,
- "average_daily_return": total_return / len(self.symbol_roundtrip_trades_) if self.symbol_roundtrip_trades_ else 0.0,
- "best_day": best_day,
- "worst_day": worst_day,
- "daily_returns": daily_returns
- }
-
-
- def print_grand_totals(self) -> None:
- """Print grand totals for the single pair analysis."""
- summary = self.get_return_summary()
-
- print(f"\n====== PAIR RESEARCH GRAND TOTALS ======")
- print('---')
- print(f"Total Return: {summary['total_return']:+.2f}%")
- print('---')
- print(f"Total Days Traded: {summary['total_days']}")
- print(f"Total Open-Close Actions: {summary['total_pairs']}")
- print(f"Total Trades: 4 * {summary['total_pairs']} = {4 * summary['total_pairs']}")
-
- if summary['total_days'] > 0:
- print(f"Average Daily Return: {summary['average_daily_return']:+.2f}%")
-
- if summary['best_day']:
- best_day, best_data = summary['best_day']
- print(f"Best Day: {best_day} ({best_data['return']:+.2f}%)")
-
- if summary['worst_day']:
- worst_day, worst_data = summary['worst_day']
- print(f"Worst Day: {worst_day} ({worst_data['return']:+.2f}%)")
-
- # Update the total_realized_pnl for backward compatibility
- self.total_realized_pnl = summary['total_return']
-
- def analyze_pair_performance(self) -> None:
- """
- Main method to perform comprehensive pair research analysis.
- Extracts round-trip trades, calculates returns, groups by day, and prints results.
- """
- print(f"\n{'='*60}")
- print(f"PAIR RESEARCH PERFORMANCE ANALYSIS")
- print(f"{'='*60}")
-
- self.calculate_returns()
- self.print_returns_by_day()
- self.print_outstanding_positions()
- self._print_additional_metrics()
- self.print_grand_totals()
-
- def _print_additional_metrics(self) -> None:
- """Print additional performance metrics."""
- summary = self.get_return_summary()
-
- if summary['total_days'] == 0:
- return
-
- print(f"\n====== ADDITIONAL METRICS ======")
-
- # Calculate win rate
- winning_days = sum(1 for day_data in summary['daily_returns'].values() if day_data['return'] > 0)
- win_rate = (winning_days / summary['total_days']) * 100
- print(f"Winning Days: {winning_days}/{summary['total_days']} ({win_rate:.1f}%)")
-
- # Calculate average trade return
- if summary['total_pairs'] > 0:
- # Each pair has 2 symbol trades, so total symbol trades = total_pairs * 2
- total_symbol_trades = summary['total_pairs'] * 2
- avg_symbol_return = summary['total_return'] / total_symbol_trades
- print(f"Average Symbol Return: {avg_symbol_return:+.2f}%")
-
- avg_pair_return = summary['total_return'] / summary['total_pairs'] / 2 # Divide by 2 since we sum both symbols
- print(f"Average Pair Return: {avg_pair_return:+.2f}%")
-
- # Show daily return distribution
- daily_returns_list = [data['return'] for data in summary['daily_returns'].values()]
- if daily_returns_list:
- print(f"Daily Return Range: {min(daily_returns_list):+.2f}% to {max(daily_returns_list):+.2f}%")
-
-
- def print_outstanding_positions(self) -> None:
- """Print outstanding positions for the single pair."""
- all_positions: List[OutstandingPositionT] = self.outstanding_positions()
- if not all_positions:
- print("\n====== NO OUTSTANDING POSITIONS ======")
- return
-
- print(f"\n====== OUTSTANDING POSITIONS ======")
- print(f"{'Symbol':<10} {'Side':<4} {'Shares':<10} {'Open $':<8} {'Current $':<10} {'Value $':<12}")
- print("-" * 70)
-
- total_value = 0.0
- for pos in all_positions:
- current_value = pos.get("last_value", 0.0)
- print(f"{pos['symbol']:<10} {pos['open_side']:<4} {pos['shares']:<10.2f} "
- f"{pos['open_px']:<8.2f} {pos['last_px']:<10.2f} {current_value:<12.2f}")
- total_value += current_value
-
- print("-" * 70)
- print(f"{'TOTAL VALUE':<60} ${total_value:<12.2f}")
-
- def get_total_realized_pnl(self) -> float:
- """Get total realized PnL."""
- return self.total_realized_pnl
-
\ No newline at end of file
diff --git a/__SAV__/lib/pt_strategy/trading_pair.py b/__SAV__/lib/pt_strategy/trading_pair.py
deleted file mode 100644
index 0fd8a63..0000000
--- a/__SAV__/lib/pt_strategy/trading_pair.py
+++ /dev/null
@@ -1,226 +0,0 @@
-from __future__ import annotations
-
-from abc import ABC, abstractmethod
-from datetime import datetime
-from enum import Enum
-from typing import Any, Dict, List
-
-import pandas as pd
-
-# ---
-from cvttpy_tools.base.base import NamedObject
-from cvttpy_tools.base.config import Config
-# ---
-from cvttpy_trading.trading.instrument import ExchangeInstrument
-# ---
-from pairs_trading.lib.pt_strategy.model_data_policy import DataWindowParams
-from pairs_trading.lib.pt_strategy.prediction import Prediction
-
-
-
-class PairState(Enum):
- INITIAL = 1
- OPEN = 2
- CLOSE = 3
- CLOSE_POSITION = 4
- CLOSE_STOP_LOSS = 5
- CLOSE_STOP_PROFIT = 6
-
-
-class TradingPair(NamedObject, ABC):
- config_: Config
- model_: Any # "PairsTradingModel"
- market_data_: pd.DataFrame
-
- user_data_: Dict[str, Any]
- stat_model_price_: str
-
- instruments_: List[ExchangeInstrument]
-
- def __init__(
- self,
- config: Config,
- instruments: List[ExchangeInstrument],
- ):
- from pairs_trading.lib.pt_strategy.pt_model import PairsTradingModel
-
- self.config_ = config
- self.model_ = PairsTradingModel.create(config)
- self.user_data_ = {}
- self.instruments_ = instruments
- self.instruments_[0].user_data_["symbol"] = instruments[0].instrument_id().split("-", 1)[1]
- self.instruments_[1].user_data_["symbol"] = instruments[1].instrument_id().split("-", 1)[1]
- self.stat_model_price_ = config.get_value("model/stat_model_price")
-
- def run(self, market_data: pd.DataFrame, data_params: DataWindowParams) -> Prediction: # type: ignore[assignment]
- self.market_data_ = market_data[
- data_params.training_start_index_ : data_params.training_start_index_ + data_params.training_size_
- ]
- return self.model_.predict(pair=self)
-
- def colnames(self) -> List[str]:
- return [
- f"{self.stat_model_price_}_{self.symbol_a()}",
- f"{self.stat_model_price_}_{self.symbol_b()}",
- ]
- def symbol_a(self) -> str:
- return self.get_instrument_a().user_data_["symbol"]
-
- def symbol_b(self) -> str:
- return self.get_instrument_b().user_data_["symbol"]
-
- def get_instrument_a(self) -> ExchangeInstrument:
- return self.instruments_[0]
-
- def get_instrument_b(self) -> ExchangeInstrument:
- return self.instruments_[1]
-
- def __repr__(self) -> str:
- return (
- f"{self.__class__.__name__}:"
- f" symbol_a={self.symbol_a()},"
- f" symbol_b={self.symbol_b()},"
- f" model={self.model_.__class__.__name__}"
- )
-
-class ResearchTradingPair(TradingPair):
-
- def __init__(
- self,
- config: Config,
- instruments: List[ExchangeInstrument],
- ):
- assert len(instruments) == 2, "Trading pair must have exactly 2 instruments"
- super().__init__(config=config, instruments=instruments)
-
- self.user_data_ = {
- "state": PairState.INITIAL,
- }
-
- def is_closed(self) -> bool:
- return self.user_data_["state"] in [
- PairState.CLOSE,
- PairState.CLOSE_POSITION,
- PairState.CLOSE_STOP_LOSS,
- PairState.CLOSE_STOP_PROFIT,
- ]
-
- def is_open(self) -> bool:
- return not self.is_closed()
-
- def exec_prices_colnames(self) -> List[str]:
- return [
- f"exec_price_{self.symbol_a()}",
- f"exec_price_{self.symbol_b()}",
- ]
-
- def to_stop_close_conditions(self, predicted_row: pd.Series) -> bool:
- config = self.config_
- if (
- not config.key_exists("stop_close_conditions")
- or config.get_value("stop_close_conditions") is None
- ):
- return False
- if "profit" in config.get_value("stop_close_conditions"):
- current_return = self._current_return(predicted_row)
- #
- # print(f"time={predicted_row['tstamp']} current_return={current_return}")
- #
- if current_return >= config.get_value("stop_close_conditions")["profit"]:
- print(f"STOP PROFIT: {current_return}")
- self.user_data_["stop_close_state"] = PairState.CLOSE_STOP_PROFIT
- return True
- if "loss" in config.get_value("stop_close_conditions"):
- if current_return <= config.get_value("stop_close_conditions")["loss"]:
- print(f"STOP LOSS: {current_return}")
- self.user_data_["stop_close_state"] = PairState.CLOSE_STOP_LOSS
- return True
- return False
-
- def _current_return(self, predicted_row: pd.Series) -> float:
- if "open_trades" in self.user_data_:
- open_trades = self.user_data_["open_trades"]
- if len(open_trades) == 0:
- return 0.0
-
- def _single_instrument_return(symbol: str) -> float:
- instrument_open_trades = open_trades[open_trades["symbol"] == symbol]
- instrument_open_price = instrument_open_trades["price"].iloc[0]
-
- sign = -1 if instrument_open_trades["side"].iloc[0] == "SELL" else 1
- instrument_price = predicted_row[f"{self.stat_model_price_}_{symbol}"]
- instrument_return = (
- sign
- * (instrument_price - instrument_open_price)
- / instrument_open_price
- )
- return float(instrument_return) * 100.0
-
- instrument_a_return = _single_instrument_return(self.symbol_a())
- instrument_b_return = _single_instrument_return(self.symbol_b())
- return instrument_a_return + instrument_b_return
- return 0.0
-
- def on_open_trades(self, trades: pd.DataFrame) -> None:
- if "close_trades" in self.user_data_:
- del self.user_data_["close_trades"]
- self.user_data_["open_trades"] = trades
-
- def on_close_trades(self, trades: pd.DataFrame) -> None:
- del self.user_data_["open_trades"]
- self.user_data_["close_trades"] = trades
-
- def add_outstanding_position(
- self,
- symbol: str,
- open_side: str,
- open_px: float,
- open_tstamp: datetime,
- last_mkt_data_row: pd.Series,
- ) -> None:
- assert symbol in [
- self.symbol_a(),
- self.symbol_b(),
- ], "Symbol must be one of the pair's symbols"
- assert open_side in ["BUY", "SELL"], "Open side must be either BUY or SELL"
- assert open_px > 0, "Open price must be greater than 0"
- assert open_tstamp is not None, "Open timestamp must be provided"
- assert last_mkt_data_row is not None, "Last market data row must be provided"
-
- exec_prices_col_a, exec_prices_col_b = self.exec_prices_colnames()
- if symbol == self.symbol_a():
- last_px = last_mkt_data_row[exec_prices_col_a]
- else:
- last_px = last_mkt_data_row[exec_prices_col_b]
-
- funding_per_position = self.config_.get_value("funding_per_pair") / 2
- shares = funding_per_position / open_px
- if open_side == "SELL":
- shares = -shares
-
- if "outstanding_positions" not in self.user_data_:
- self.user_data_["outstanding_positions"] = []
-
- self.user_data_["outstanding_positions"].append(
- {
- "symbol": symbol,
- "open_side": open_side,
- "open_px": open_px,
- "shares": shares,
- "open_tstamp": open_tstamp,
- "last_px": last_px,
- "last_tstamp": last_mkt_data_row["tstamp"],
- "last_value": last_px * shares,
- }
- )
-
-class LiveTradingPair(TradingPair):
-
- def __init__(self, config: Config, instruments: List[ExchangeInstrument]):
- super().__init__(config, instruments)
-
- def to_stop_close_conditions(self, predicted_row: pd.Series) -> bool:
- # TODO LiveTradingPair.to_stop_close_conditions()
- return False
-
-
diff --git a/__SAV__/lib/tools/config.py b/__SAV__/lib/tools/config.py
deleted file mode 100644
index 99efbce..0000000
--- a/__SAV__/lib/tools/config.py
+++ /dev/null
@@ -1,17 +0,0 @@
-import hjson
-from typing import Dict
-from datetime import datetime
-# ---
-from cvttpy_tools.base.config import Config
-
-
-def load_config(config_path: str) -> Config:
- return Config(json_src=f"file://{config_path}")
-
-
-def expand_filename(filename: str) -> str:
- # expand %T
- res = filename.replace("%T", datetime.now().strftime("%Y%m%d_%H%M%S"))
- # expand %D
- return res.replace("%D", datetime.now().strftime("%Y%m%d"))
-
diff --git a/__SAV__/lib/tools/data_loader.py b/__SAV__/lib/tools/data_loader.py
deleted file mode 100644
index 9203782..0000000
--- a/__SAV__/lib/tools/data_loader.py
+++ /dev/null
@@ -1,150 +0,0 @@
-from __future__ import annotations
-
-import sqlite3
-from typing import Any, Dict, List, Tuple, cast
-import pandas as pd
-
-from cvttpy_trading.trading.instrument import ExchangeInstrument
-
-def load_sqlite_to_dataframe(db_path:str, query:str) -> pd.DataFrame:
- df: pd.DataFrame = pd.DataFrame()
- import os
- if not os.path.exists(db_path):
- print(f"WARNING: database file {db_path} does not exist")
- return df
-
- try:
- conn = sqlite3.connect(db_path)
-
- df = pd.read_sql_query(query, conn)
- return df
- except sqlite3.Error as excpt:
- print(f"SQLite error: {excpt}")
- raise
- except Exception as excpt:
- print(f"Error: {excpt}")
- raise Exception() from excpt
- finally:
- if "conn" in locals():
- conn.close()
-
-
-def convert_time_to_UTC(value: str, timezone: str, extra_minutes: int = 0) -> str:
-
- from zoneinfo import ZoneInfo
- from datetime import datetime, timedelta
-
- # Parse it to naive datetime object
- local_dt = datetime.strptime(value, "%Y-%m-%d %H:%M:%S")
- local_dt = local_dt + timedelta(minutes=extra_minutes)
-
- zinfo = ZoneInfo(timezone)
- result: datetime = local_dt.replace(tzinfo=zinfo).astimezone(ZoneInfo("UTC"))
-
- return result.strftime("%Y-%m-%d %H:%M:%S")
-
-
-def load_market_data(
- datafile: str,
- instruments: List[ExchangeInstrument],
- db_table_name: str,
- trading_hours: Dict = {},
- extra_minutes: int = 0,
-) -> pd.DataFrame:
-
-
- inst_ids = ['"' + exch_inst.instrument_id() + '"' for exch_inst in instruments]
- instrument_ids = list(set(inst_ids))
- exchange_ids = list(
- set(['"' + instrument.exchange_id() + '"' for instrument in instruments])
- )
-
- query = "select"
- query += " tstamp"
- query += ", tstamp_ns as time_ns"
-
- query += f", substr(instrument_id, instr(instrument_id, '-') + 1) as symbol"
- query += ", open"
- query += ", high"
- query += ", low"
- query += ", close"
- query += ", volume"
- query += ", num_trades"
- query += ", vwap"
-
- query += f" from {db_table_name}"
- query += f" where exchange_id in ({','.join(exchange_ids)})"
- query += f" and instrument_id in ({','.join(instrument_ids)})"
-
- df = load_sqlite_to_dataframe(db_path=datafile, query=query)
-
- # Trading Hours
- if len(df) > 0 and len(trading_hours) > 0:
- date_str = df["tstamp"][0][0:10]
-
- start_time = convert_time_to_UTC(
- f"{date_str} {trading_hours['begin_session']}", trading_hours["timezone"]
- )
- end_time = convert_time_to_UTC(
- f"{date_str} {trading_hours['end_session']}", trading_hours["timezone"], extra_minutes=extra_minutes # to get execution price
- )
-
- # Perform boolean selection
- df = df[(df["tstamp"] >= start_time) & (df["tstamp"] <= end_time)]
- df["tstamp"] = pd.to_datetime(df["tstamp"])
-
- return cast(pd.DataFrame, df)
-
-
-# def get_available_instruments_from_db(datafile: str, config: Dict) -> List[str]:
-# """
-# Auto-detect available instruments from the database by querying distinct instrument_id values.
-# Returns instruments without the configured prefix.
-# """
-# try:
-# conn = sqlite3.connect(datafile)
-
-# # Build exclusion list with full instrument_ids
-# exclude_instruments = config.get("exclude_instruments", [])
-# prefix = config.get("instrument_id_pfx", "")
-# exclude_instrument_ids = [f"{prefix}{inst}" for inst in exclude_instruments]
-
-# # Query to get distinct instrument_ids
-# query = f"""
-# SELECT DISTINCT instrument_id
-# FROM {config['db_table_name']}
-# WHERE exchange_id = ?
-# """
-
-# # Add exclusion clause if there are instruments to exclude
-# if exclude_instrument_ids:
-# placeholders = ",".join(["?" for _ in exclude_instrument_ids])
-# query += f" AND instrument_id NOT IN ({placeholders})"
-# cursor = conn.execute(
-# query, (config["exchange_id"],) + tuple(exclude_instrument_ids)
-# )
-# else:
-# cursor = conn.execute(query, (config["exchange_id"],))
-# instrument_ids = [row[0] for row in cursor.fetchall()]
-# conn.close()
-
-# # Remove the configured prefix to get instrument symbols
-# instruments = []
-# for instrument_id in instrument_ids:
-# if instrument_id.startswith(prefix):
-# symbol = instrument_id[len(prefix) :]
-# instruments.append(symbol)
-# else:
-# instruments.append(instrument_id)
-
-# return sorted(instruments)
-
-# except Exception as e:
-# print(f"Error auto-detecting instruments from {datafile}: {str(e)}")
-# return []
-
-
-# if __name__ == "__main__":
-# df1 = load_sqlite_to_dataframe(sys.argv[1], table_name="md_1min_bars")
-
-# print(df1)
diff --git a/__SAV__/lib/tools/filetools.py b/__SAV__/lib/tools/filetools.py
deleted file mode 100644
index fb79b00..0000000
--- a/__SAV__/lib/tools/filetools.py
+++ /dev/null
@@ -1,37 +0,0 @@
-import os
-import glob
-from typing import Dict, List, Tuple
-# ---
-from cvttpy_tools.base.config import Config
-# ---
-from cvttpy_trading.trading.instrument import ExchangeInstrument
-
-DayT = str
-DataFileNameT = str
-
-def resolve_datafiles(
- config: Config, date_pattern: str, instruments: List[ExchangeInstrument]
-) -> List[Tuple[DayT, DataFileNameT]]:
- resolved_files: List[Tuple[DayT, DataFileNameT]] = []
- for exch_inst in instruments:
- pattern = date_pattern
- inst_type = exch_inst.user_data_.get("instrument_type", "?instrument_type?")
- data_dir = config.get_value(f"market_data_loading/{inst_type}/data_directory")
- if "*" in pattern or "?" in pattern:
- # Handle wildcards
- if not os.path.isabs(pattern):
- pattern = os.path.join(data_dir, f"{pattern}.mktdata.ohlcv.db")
- matched_files = glob.glob(pattern)
- for matched_file in matched_files:
- import re
- match = re.search(r"(\d{8})\.mktdata\.ohlcv\.db$", matched_file)
- assert match is not None
- day = match.group(1)
- resolved_files.append((day, matched_file))
- else:
- # Handle explicit file path
- if not os.path.isabs(pattern):
- pattern = os.path.join(data_dir, f"{pattern}.mktdata.ohlcv.db")
- resolved_files.append((date_pattern, pattern))
- return sorted(list(set(resolved_files))) # Remove duplicates and sort
-
diff --git a/__SAV__/lib/tools/viz/viz_prices.py b/__SAV__/lib/tools/viz/viz_prices.py
deleted file mode 100644
index 1d2ab4c..0000000
--- a/__SAV__/lib/tools/viz/viz_prices.py
+++ /dev/null
@@ -1,79 +0,0 @@
-from pairs_trading.lib.pt_strategy.research_strategy import PtResearchStrategy
-
-
-def visualize_prices(strategy: PtResearchStrategy, trading_date: str) -> None:
- # Plot raw price data
- import matplotlib.pyplot as plt
- # Set plotting style
- import seaborn as sns
-
- pair = strategy.trading_pair_
- SYMBOL_A = pair.symbol_a()
- SYMBOL_B = pair.symbol_b()
- TRD_DATE = f"{trading_date[0:4]}-{trading_date[4:6]}-{trading_date[6:8]}"
-
- plt.style.use('seaborn-v0_8')
- sns.set_palette("husl")
- plt.rcParams['figure.figsize'] = (15, 10)
-
- # Get column names for the trading pair
- colname_a, colname_b = pair.colnames()
- price_data = strategy.pt_mkt_data_.market_data_df_.copy()
-
- # Create separate subplots for better visibility
- fig_price, price_axes = plt.subplots(2, 1, figsize=(18, 10))
-
- # Plot SYMBOL_A
- price_axes[0].plot(price_data['tstamp'], price_data[colname_a], alpha=0.7,
- label=f'{SYMBOL_A}', linewidth=1, color='blue')
- price_axes[0].set_title(f'{SYMBOL_A} Price Data ({TRD_DATE})')
- price_axes[0].set_ylabel(f'{SYMBOL_A} Price')
- price_axes[0].legend()
- price_axes[0].grid(True)
-
- # Plot SYMBOL_B
- price_axes[1].plot(price_data['tstamp'], price_data[colname_b], alpha=0.7,
- label=f'{SYMBOL_B}', linewidth=1, color='red')
- price_axes[1].set_title(f'{SYMBOL_B} Price Data ({TRD_DATE})')
- price_axes[1].set_ylabel(f'{SYMBOL_B} Price')
- price_axes[1].set_xlabel('Time')
- price_axes[1].legend()
- price_axes[1].grid(True)
-
- plt.tight_layout()
- plt.show()
-
-
- # Plot individual prices
- fig, axes = plt.subplots(2, 1, figsize=(18, 12))
-
- # Normalized prices for comparison
- norm_a = price_data[colname_a] / price_data[colname_a].iloc[0]
- norm_b = price_data[colname_b] / price_data[colname_b].iloc[0]
-
- axes[0].plot(price_data['tstamp'], norm_a, label=f'{SYMBOL_A} (normalized)', alpha=0.8, linewidth=1)
- axes[0].plot(price_data['tstamp'], norm_b, label=f'{SYMBOL_B} (normalized)', alpha=0.8, linewidth=1)
- axes[0].set_title(f'Normalized Price Comparison (Base = 1.0) ({TRD_DATE})')
- axes[0].set_ylabel('Normalized Price')
- axes[0].legend()
- axes[0].grid(True)
-
- # Price ratio
- price_ratio = price_data[colname_a] / price_data[colname_b]
- axes[1].plot(price_data['tstamp'], price_ratio, label=f'{SYMBOL_A}/{SYMBOL_B} Ratio', color='green', alpha=0.8, linewidth=1)
- axes[1].set_title(f'Price Ratio Px({SYMBOL_A})/Px({SYMBOL_B}) ({TRD_DATE})')
- axes[1].set_ylabel('Ratio')
- axes[1].set_xlabel('Time')
- axes[1].legend()
- axes[1].grid(True)
-
- plt.tight_layout()
- plt.show()
-
- # Print basic statistics
- print(f"\nPrice Statistics:")
- print(f" {SYMBOL_A}: Mean=${price_data[colname_a].mean():.2f}, Std=${price_data[colname_a].std():.2f}")
- print(f" {SYMBOL_B}: Mean=${price_data[colname_b].mean():.2f}, Std=${price_data[colname_b].std():.2f}")
- print(f" Price Ratio: Mean={price_ratio.mean():.2f}, Std={price_ratio.std():.2f}")
- print(f" Correlation: {price_data[colname_a].corr(price_data[colname_b]):.4f}")
-
diff --git a/__SAV__/lib/tools/viz/viz_trades.py b/__SAV__/lib/tools/viz/viz_trades.py
deleted file mode 100644
index 2704800..0000000
--- a/__SAV__/lib/tools/viz/viz_trades.py
+++ /dev/null
@@ -1,502 +0,0 @@
-from __future__ import annotations
-
-
-from pairs_trading.lib.pt_strategy.results import (PairResearchResult)
-from pairs_trading.lib.pt_strategy.research_strategy import PtResearchStrategy
-
-
-def visualize_trades(strategy: PtResearchStrategy, results: PairResearchResult, trading_date: str) -> None:
-
- import pandas as pd
- import plotly.express as px
- import plotly.graph_objects as go
- import plotly.offline as pyo
- from IPython.display import HTML
- from plotly.subplots import make_subplots
-
-
- pair = strategy.trading_pair_
- trades = results.trades_[trading_date].copy()
- origin_mkt_data_df = strategy.pt_mkt_data_.origin_mkt_data_df_
- mkt_data_df = strategy.pt_mkt_data_.market_data_df_
- TRD_DATE = f"{trading_date[0:4]}-{trading_date[4:6]}-{trading_date[6:8]}"
- SYMBOL_A = pair.symbol_a()
- SYMBOL_B = pair.symbol_b()
-
-
- print(f"\nCreated trading pair: {pair}")
- print(f"Market data shape: {pair.market_data_.shape}")
- print(f"Column names: {pair.colnames()}")
-
- # Configure plotly for offline mode
- pyo.init_notebook_mode(connected=True)
-
- # Strategy-specific interactive visualization
- assert strategy.config_ is not None
-
- print("=== SLIDING FIT INTERACTIVE VISUALIZATION ===")
- print("Note: Rolling Fit strategy visualization with interactive plotly charts")
-
-
- # Create consistent timeline - superset of timestamps from both dataframes
- all_timestamps = sorted(set(mkt_data_df['tstamp']))
-
-
- # Create a unified timeline dataframe for consistent plotting
- timeline_df = pd.DataFrame({'tstamp': all_timestamps})
-
- # Merge with predicted data to get dis-equilibrium values
- timeline_df = timeline_df.merge(strategy.predictions_df_[['tstamp', 'disequilibrium', 'scaled_disequilibrium', 'signed_scaled_disequilibrium']],
- on='tstamp', how='left')
-
- # Get Symbol_A and Symbol_B market data
- colname_a, colname_b = pair.colnames()
- symbol_a_data = mkt_data_df[['tstamp', colname_a]].copy()
- symbol_b_data = mkt_data_df[['tstamp', colname_b]].copy()
-
- norm_a = symbol_a_data[colname_a] / symbol_a_data[colname_a].iloc[0]
- norm_b = symbol_b_data[colname_b] / symbol_b_data[colname_b].iloc[0]
-
- print(f"Using consistent timeline with {len(timeline_df)} timestamps")
- print(f"Timeline range: {timeline_df['tstamp'].min()} to {timeline_df['tstamp'].max()}")
-
- # Create subplots with price charts at bottom
- fig = make_subplots(
- rows=4, cols=1,
- row_heights=[0.3, 0.4, 0.15, 0.15],
- subplot_titles=[
- f'Dis-equilibrium with Trading Thresholds ({TRD_DATE})',
- f'Normalized Price Comparison with BUY/SELL Signals - {SYMBOL_A}&{SYMBOL_B} ({TRD_DATE})',
- f'{SYMBOL_A} Market Data with Trading Signals ({TRD_DATE})',
- f'{SYMBOL_B} Market Data with Trading Signals ({TRD_DATE})',
- ],
- vertical_spacing=0.06,
- specs=[[{"secondary_y": False}],
- [{"secondary_y": False}],
- [{"secondary_y": False}],
- [{"secondary_y": False}]]
- )
-
- # 1. Scaled dis-equilibrium with thresholds - using consistent timeline
- fig.add_trace(
- go.Scatter(
- x=timeline_df['tstamp'],
- y=timeline_df['scaled_disequilibrium'],
- name='Absolute Scaled Dis-equilibrium',
- line=dict(color='green', width=2),
- opacity=0.8
- ),
- row=1, col=1
- )
-
- fig.add_trace(
- go.Scatter(
- x=timeline_df['tstamp'],
- y=timeline_df['signed_scaled_disequilibrium'],
- name='Scaled Dis-equilibrium',
- line=dict(color='darkmagenta', width=2),
- opacity=0.8
- ),
- row=1, col=1
- )
-
- # Add threshold lines to first subplot
- fig.add_shape(
- type="line",
- x0=timeline_df['tstamp'].min(),
- x1=timeline_df['tstamp'].max(),
- y0=strategy.config_.get_value('model/disequilibrium/open_trshld'),
- y1=strategy.config_.get_value('model/disequilibrium/open_trshld'),
- line=dict(color="purple", width=2, dash="dot"),
- opacity=0.7,
- row=1, col=1
- )
-
- fig.add_shape(
- type="line",
- x0=timeline_df['tstamp'].min(),
- x1=timeline_df['tstamp'].max(),
- y0=-strategy.config_.get_value('model/disequilibrium/open_trshld'),
- y1=-strategy.config_.get_value('model/disequilibrium/open_trshld'),
- line=dict(color="purple", width=2, dash="dot"),
- opacity=0.7,
- row=1, col=1
- )
-
- fig.add_shape(
- type="line",
- x0=timeline_df['tstamp'].min(),
- x1=timeline_df['tstamp'].max(),
- y0=strategy.config_.get_value('model/disequilibrium/close_trshld'),
- y1=strategy.config_.get_value('model/disequilibrium/close_trshld'),
- line=dict(color="brown", width=2, dash="dot"),
- opacity=0.7,
- row=1, col=1
- )
-
- fig.add_shape(
- type="line",
- x0=timeline_df['tstamp'].min(),
- x1=timeline_df['tstamp'].max(),
- y0=-strategy.config_.get_value('model/disequilibrium/close_trshld'),
- y1=-strategy.config_.get_value('model/disequilibrium/close_trshld'),
- line=dict(color="brown", width=2, dash="dot"),
- opacity=0.7,
- row=1, col=1
- )
-
- fig.add_shape(
- type="line",
- x0=timeline_df['tstamp'].min(),
- x1=timeline_df['tstamp'].max(),
- y0=0,
- y1=0,
- line=dict(color="black", width=1, dash="solid"),
- opacity=0.5,
- row=1, col=1
- )
-
- # Add normalized price lines
- fig.add_trace(
- go.Scatter(
- x=mkt_data_df['tstamp'],
- y=norm_a,
- name=f'{SYMBOL_A} (Normalized)',
- line=dict(color='blue', width=2),
- opacity=0.8
- ),
- row=2, col=1
- )
-
- fig.add_trace(
- go.Scatter(
- x=mkt_data_df['tstamp'],
- y=norm_b,
- name=f'{SYMBOL_B} (Normalized)',
- line=dict(color='orange', width=2),
- opacity=0.8,
- ),
- row=2, col=1
- )
-
- # Add BUY and SELL signals if available
- if trades is not None and len(trades) > 0:
- # Define signal groups to avoid legend repetition
- signal_groups = {}
-
- # Process all trades and group by signal type (ignore OPEN/CLOSE status)
- for _, trade in trades.iterrows():
- symbol = trade['symbol']
- side = trade['side']
- # status = trade['status']
- action = trade['action']
-
- # Create signal group key (without status to combine OPEN/CLOSE)
- signal_key = f"{symbol} {side} {action}"
-
- # Find normalized price for this trade
- trade_time = trade['time']
- if symbol == SYMBOL_A:
- closest_idx = mkt_data_df['tstamp'].searchsorted(trade_time)
- if closest_idx < len(norm_a):
- norm_price = norm_a.iloc[closest_idx]
- else:
- norm_price = norm_a.iloc[-1]
- else: # SYMBOL_B
- closest_idx = mkt_data_df['tstamp'].searchsorted(trade_time)
- if closest_idx < len(norm_b):
- norm_price = norm_b.iloc[closest_idx]
- else:
- norm_price = norm_b.iloc[-1]
-
- # Initialize group if not exists
- if signal_key not in signal_groups:
- signal_groups[signal_key] = {
- 'times': [],
- 'prices': [],
- 'actual_prices': [],
- 'symbol': symbol,
- 'side': side,
- # 'status': status,
- 'action': trade['action']
- }
-
- # Add to group
- signal_groups[signal_key]['times'].append(trade_time)
- signal_groups[signal_key]['prices'].append(norm_price)
- signal_groups[signal_key]['actual_prices'].append(trade['price'])
-
- # Add each signal group as a single trace
- for signal_key, group_data in signal_groups.items():
- symbol = group_data['symbol']
- side = group_data['side']
- # status = group_data['status']
-
- # Determine marker properties (same for all OPEN/CLOSE of same side)
- is_close: bool = (group_data['action'] == "CLOSE")
-
- if 'BUY' in side:
- marker_color = 'green'
- marker_symbol = 'triangle-up'
- marker_size = 14
- else: # SELL
- marker_color = 'red'
- marker_symbol = 'triangle-down'
- marker_size = 14
-
- # Create hover text for each point in the group
- hover_texts = []
- for i, (time, norm_price, actual_price) in enumerate(zip(group_data['times'],
- group_data['prices'],
- group_data['actual_prices'])):
- # Find the corresponding trade to get the status for hover text
- trade_info = trades[(trades['time'] == time) &
- (trades['symbol'] == symbol) &
- (trades['side'] == side)]
- if len(trade_info) > 0:
- action = trade_info.iloc[0]['action']
- hover_texts.append(f'{signal_key} {action}
' +
- f'Time: {time}
' +
- f'Normalized Price: {norm_price:.4f}
' +
- f'Actual Price: ${actual_price:.2f}')
- else:
- hover_texts.append(f'{signal_key}
' +
- f'Time: {time}
' +
- f'Normalized Price: {norm_price:.4f}
' +
- f'Actual Price: ${actual_price:.2f}')
-
- fig.add_trace(
- go.Scatter(
- x=group_data['times'],
- y=group_data['prices'],
- mode='markers',
- name=signal_key,
- marker=dict(
- color=marker_color,
- size=marker_size,
- symbol=marker_symbol,
- line=dict(width=2, color='black') if is_close else None
- ),
- showlegend=True,
- hovertemplate='%{text}',
- text=hover_texts
- ),
- row=2, col=1
- )
-
- # -----------------------------
-
- fig.add_trace(
- go.Scatter(
- x=symbol_a_data['tstamp'],
- y=symbol_a_data[colname_a],
- name=f'{SYMBOL_A} Price',
- line=dict(color='blue', width=2),
- opacity=0.8
- ),
- row=3, col=1
- )
-
- # Filter trades for Symbol_A
- symbol_a_trades = trades[trades['symbol'] == SYMBOL_A]
- print(f"\nSymbol_A trades:\n{symbol_a_trades}")
-
- if len(symbol_a_trades) > 0:
- # Separate trades by action and status for different colors
- buy_open_trades = symbol_a_trades[(symbol_a_trades['side'].str.contains('BUY', na=False)) &
- (symbol_a_trades['action'].str.contains('OPEN', na=False))]
- buy_close_trades = symbol_a_trades[(symbol_a_trades['side'].str.contains('BUY', na=False)) &
- (symbol_a_trades['action'].str.contains('CLOSE', na=False))]
-
- sell_open_trades = symbol_a_trades[(symbol_a_trades['side'].str.contains('SELL', na=False)) &
- (symbol_a_trades['action'].str.contains('OPEN', na=False))]
- sell_close_trades = symbol_a_trades[(symbol_a_trades['side'].str.contains('SELL', na=False)) &
- (symbol_a_trades['action'].str.contains('CLOSE', na=False))]
-
- # Add BUY OPEN signals
- if len(buy_open_trades) > 0:
- fig.add_trace(
- go.Scatter(
- x=buy_open_trades['time'],
- y=buy_open_trades['price'],
- mode='markers',
- name=f'{SYMBOL_A} BUY OPEN',
- marker=dict(color='green', size=12, symbol='triangle-up'),
- showlegend=True
- ),
- row=3, col=1
- )
-
- # Add BUY CLOSE signals
- if len(buy_close_trades) > 0:
- fig.add_trace(
- go.Scatter(
- x=buy_close_trades['time'],
- y=buy_close_trades['price'],
- mode='markers',
- name=f'{SYMBOL_A} BUY CLOSE',
- marker=dict(color='green', size=12, symbol='triangle-up'),
- line=dict(width=2, color='black'),
- showlegend=True
- ),
- row=3, col=1
- )
-
- # Add SELL OPEN signals
- if len(sell_open_trades) > 0:
- fig.add_trace(
- go.Scatter(
- x=sell_open_trades['time'],
- y=sell_open_trades['price'],
- mode='markers',
- name=f'{SYMBOL_A} SELL OPEN',
- marker=dict(color='red', size=12, symbol='triangle-down'),
- showlegend=True
- ),
- row=3, col=1
- )
-
- # Add SELL CLOSE signals
- if len(sell_close_trades) > 0:
- fig.add_trace(
- go.Scatter(
- x=sell_close_trades['time'],
- y=sell_close_trades['price'],
- mode='markers',
- name=f'{SYMBOL_A} SELL CLOSE',
- marker=dict(color='red', size=12, symbol='triangle-down'),
- line=dict(width=2, color='black'),
- showlegend=True
- ),
- row=3, col=1
- )
-
- # 4. Symbol_B Market Data with Trading Signals
- fig.add_trace(
- go.Scatter(
- x=symbol_b_data['tstamp'],
- y=symbol_b_data[colname_b],
- name=f'{SYMBOL_B} Price',
- line=dict(color='orange', width=2),
- opacity=0.8
- ),
- row=4, col=1
- )
-
- # Add trading signals for Symbol_B if available
- symbol_b_trades = trades[trades['symbol'] == SYMBOL_B]
- print(f"\nSymbol_B trades:\n{symbol_b_trades}")
-
- if len(symbol_b_trades) > 0:
- # Separate trades by action and status for different colors
- buy_open_trades = symbol_b_trades[(symbol_b_trades['side'].str.contains('BUY', na=False)) &
- (symbol_b_trades['action'].str.startswith('OPEN', na=False))]
- buy_close_trades = symbol_b_trades[(symbol_b_trades['side'].str.contains('BUY', na=False)) &
- (symbol_b_trades['action'].str.startswith('CLOSE', na=False))]
-
- sell_open_trades = symbol_b_trades[(symbol_b_trades['side'].str.contains('SELL', na=False)) &
- (symbol_b_trades['action'].str.contains('OPEN', na=False))]
- sell_close_trades = symbol_b_trades[(symbol_b_trades['side'].str.contains('SELL', na=False)) &
- (symbol_b_trades['action'].str.contains('CLOSE', na=False))]
-
- # Add BUY OPEN signals
- if len(buy_open_trades) > 0:
- fig.add_trace(
- go.Scatter(
- x=buy_open_trades['time'],
- y=buy_open_trades['price'],
- mode='markers',
- name=f'{SYMBOL_B} BUY OPEN',
- marker=dict(color='darkgreen', size=12, symbol='triangle-up'),
- showlegend=True
- ),
- row=4, col=1
- )
-
- # Add BUY CLOSE signals
- if len(buy_close_trades) > 0:
- fig.add_trace(
- go.Scatter(
- x=buy_close_trades['time'],
- y=buy_close_trades['price'],
- mode='markers',
- name=f'{SYMBOL_B} BUY CLOSE',
- marker=dict(color='green', size=12, symbol='triangle-up'),
- line=dict(width=2, color='black'),
- showlegend=True
- ),
- row=4, col=1
- )
-
- # Add SELL OPEN signals
- if len(sell_open_trades) > 0:
- fig.add_trace(
- go.Scatter(
- x=sell_open_trades['time'],
- y=sell_open_trades['price'],
- mode='markers',
- name=f'{SYMBOL_B} SELL OPEN',
- marker=dict(color='red', size=12, symbol='triangle-down'),
- showlegend=True
- ),
- row=4, col=1
- )
-
- # Add SELL CLOSE signals
- if len(sell_close_trades) > 0:
- fig.add_trace(
- go.Scatter(
- x=sell_close_trades['time'],
- y=sell_close_trades['price'],
- mode='markers',
- name=f'{SYMBOL_B} SELL CLOSE',
- marker=dict(color='red', size=12, symbol='triangle-down'),
- line=dict(width=2, color='black'),
- showlegend=True
- ),
- row=4, col=1
- )
-
- # Update layout
- fig.update_layout(
- height=1600,
- title_text=f"Strategy Analysis - {SYMBOL_A} & {SYMBOL_B} ({TRD_DATE})",
- showlegend=True,
- template="plotly_white",
- plot_bgcolor='lightgray',
- )
-
- # Update y-axis labels
- fig.update_yaxes(title_text="Scaled Dis-equilibrium", row=1, col=1)
- fig.update_yaxes(title_text=f"{SYMBOL_A} Price ($)", row=2, col=1)
- fig.update_yaxes(title_text=f"{SYMBOL_B} Price ($)", row=3, col=1)
- fig.update_yaxes(title_text="Normalized Price (Base = 1.0)", row=4, col=1)
-
- # Update x-axis labels and ensure consistent time range
- time_range = [timeline_df['tstamp'].min(), timeline_df['tstamp'].max()]
- fig.update_xaxes(range=time_range, row=1, col=1)
- fig.update_xaxes(range=time_range, row=2, col=1)
- fig.update_xaxes(range=time_range, row=3, col=1)
- fig.update_xaxes(title_text="Time", range=time_range, row=4, col=1)
-
- # Display using plotly offline mode
- # pyo.iplot(fig)
- fig.show()
-
- else:
- print("No interactive visualization data available - strategy may not have run successfully")
-
- print(f"\nChart shows:")
- print(f"- {SYMBOL_A} and {SYMBOL_B} prices normalized to start at 1.0")
- print(f"- BUY signals shown as green triangles pointing up")
- print(f"- SELL signals shown as orange triangles pointing down")
- print(f"- All BUY signals per symbol grouped together, all SELL signals per symbol grouped together")
- print(f"- Hover over markers to see individual trade details (OPEN/CLOSE status)")
-
- if trades is not None and len(trades) > 0:
- print(f"- Total signals displayed: {len(trades)}")
- print(f"- {SYMBOL_A} signals: {len(trades[trades['symbol'] == SYMBOL_A])}")
- print(f"- {SYMBOL_B} signals: {len(trades[trades['symbol'] == SYMBOL_B])}")
- else:
- print("- No trading signals to display")
-
diff --git a/__SAV__/requirements.txt b/__SAV__/requirements.txt
deleted file mode 100644
index 61e2b68..0000000
--- a/__SAV__/requirements.txt
+++ /dev/null
@@ -1,201 +0,0 @@
-aiohttp>=3.8.4
-aiosignal>=1.3.1
-async-timeout>=4.0.2
-attrs>=21.2.0
-beautifulsoup4>=4.10.0
-black>=23.3.0
-flake8>=6.0.0
-certifi>=2020.6.20
-chardet>=4.0.0
-charset-normalizer>=3.1.0
-click>=8.0.3
-colorama>=0.4.4
-configobj>=5.0.6
-cryptography>=3.4.8
-distro>=1.7.0
-docker>=5.0.3
-dockerpty>=0.4.1
-docopt>=0.6.2
-eyeD3>=0.8.10
-filelock>=3.6.0
-frozenlist>=1.3.3
-grpcio>=1.30.2
-hjson>=3.0.2
-html5lib>=1.1
-httplib2>=0.20.2
-idna>=3.3
-ipython>=8.18.1
-ipywidgets>=8.1.1
-ifaddr>=0.1.7
-IMDbPY>=2021.4.18
-ipykernel>=6.29.5
-jeepney>=0.7.1
-jsonschema>=3.2.0
-jupyter>=1.0.0
-keyring>=23.5.0
-launchpadlib>=1.10.16
-lazr.restfulclient>=0.14.4
-lazr.uri>=1.0.6
-lxml>=4.8.0
-Mako>=1.1.3
-Markdown>=3.3.6
-MarkupSafe>=2.0.1
-matplotlib>=3.10.3
-more-itertools>=8.10.0
-multidict>=6.0.4
-mypy>=0.942
-mypy-extensions>=0.4.3
-nbformat>=5.10.2
-netaddr>=0.8.0
-######### netifaces>=0.11.0
-numpy>=1.26.4,<2.3.0
-oauthlib>=3.2.0
-packaging>=23.1
-pandas>=2.2.3
-pathspec>=0.11.1
-pexpect>=4.8.0
-Pillow>=9.0.1
-platformdirs>=3.2.0
-plotly>=5.19.0
-protobuf>=3.12.4
-psutil>=5.9.0
-ptyprocess>=0.7.0
-pycurl>=7.44.1
-pyelftools>=0.27
-Pygments>=2.11.2
-pyparsing>=2.4.7
-pyrsistent>=0.18.1
-python-debian>=0.1.43 #+ubuntu1.1
-python-dotenv>=0.19.2
-python-magic>=0.4.24
-python-xlib>=0.29
-pyxdg>=0.27
-PyYAML>=6.0
-reportlab>=3.6.8
-requests>=2.25.1
-requests-file>=1.5.1
-scipy<1.13.0
-seaborn>=0.13.2
-SecretStorage>=3.3.1
-setproctitle>=1.2.2
-simpleeval>=1.0.3
-six>=1.16.0
-soupsieve>=2.3.1
-ssh-import-id>=5.11
-statsmodels>=0.14.4
-texttable>=1.6.4
-tldextract>=3.1.2
-tomli>=1.2.2
-######## typed-ast>=1.4.3
-types-aiofiles>=0.1
-types-annoy>=1.17
-types-appdirs>=1.4
-types-atomicwrites>=1.4
-types-aws-xray-sdk>=2.8
-types-babel>=2.9
-types-backports-abc>=0.5
-types-backports.ssl-match-hostname>=3.7
-types-beautifulsoup4>=4.10
-types-bleach>=4.1
-types-boto>=2.49
-types-braintree>=4.11
-types-cachetools>=4.2
-types-caldav>=0.8
-types-certifi>=2020.4
-types-characteristic>=14.3
-types-chardet>=4.0
-types-click>=7.1
-types-click-spinner>=0.1
-types-colorama>=0.4
-types-commonmark>=0.9
-types-contextvars>=0.1
-types-croniter>=1.0
-types-cryptography>=3.3
-types-dataclasses>=0.1
-types-dateparser>=1.0
-types-DateTimeRange>=0.1
-types-decorator>=0.1
-types-Deprecated>=1.2
-types-docopt>=0.6
-types-docutils>=0.17
-types-editdistance>=0.5
-types-emoji>=1.2
-types-entrypoints>=0.3
-types-enum34>=1.1
-types-filelock>=3.2
-types-first>=2.0
-types-Flask>=1.1
-types-freezegun>=1.1
-types-frozendict>=0.1
-types-futures>=3.3
-types-html5lib>=1.1
-types-httplib2>=0.19
-types-humanfriendly>=9.2
-types-ipaddress>=1.0
-types-itsdangerous>=1.1
-types-JACK-Client>=0.1
-types-Jinja2>=2.11
-types-jmespath>=0.10
-types-jsonschema>=3.2
-types-Markdown>=3.3
-types-MarkupSafe>=1.1
-types-mock>=4.0
-types-mypy-extensions>=0.4
-types-mysqlclient>=2.0
-types-oauthlib>=3.1
-types-orjson>=3.6
-types-paramiko>=2.7
-types-Pillow>=8.3
-types-polib>=1.1
-types-prettytable>=2.1
-types-protobuf>=3.17
-types-psutil>=5.8
-types-psycopg2>=2.9
-types-pyaudio>=0.2
-types-pycurl>=0.1
-types-pyfarmhash>=0.2
-types-Pygments>=2.9
-types-PyMySQL>=1.0
-types-pyOpenSSL>=20.0
-types-pyRFC3339>=0.1
-types-pysftp>=0.2
-types-pytest-lazy-fixture>=0.6
-types-python-dateutil>=2.8
-types-python-gflags>=3.1
-types-python-nmap>=0.6
-types-python-slugify>=5.0
-types-pytz>=2021.1
-types-pyvmomi>=7.0
-types-PyYAML>=5.4
-types-redis>=3.5
-types-requests>=2.25
-types-retry>=0.9
-types-seaborn>0.13.2
-types-selenium>=3.141
-types-Send2Trash>=1.8
-types-setuptools>=57.4
-types-simplejson>=3.17
-types-singledispatch>=3.7
-types-six>=1.16
-types-slumber>=0.7
-types-stripe>=2.59
-types-tabulate>=0.8
-types-termcolor>=1.1
-types-toml>=0.10
-types-toposort>=1.6
-types-ttkthemes>=3.2
-types-typed-ast>=1.4
-types-tzlocal>=0.1
-types-ujson>=0.1
-types-vobject>=0.9
-types-waitress>=0.1
-types-Werkzeug>=1.0
-types-xxhash>=2.0
-typing-extensions>=3.10.0.2
-Unidecode>=1.3.3
-urllib3>=1.26.5
-wadllib>=1.3.6
-webencodings>=0.5.1
-websocket-client>=1.2.3
-yarl>=1.9.1
-zipp>=1.0.0
diff --git a/__SAV__/research/backtest.py b/__SAV__/research/backtest.py
deleted file mode 100644
index 81fc214..0000000
--- a/__SAV__/research/backtest.py
+++ /dev/null
@@ -1,139 +0,0 @@
-from __future__ import annotations
-
-import os
-from typing import Any, Dict, List, Tuple
-
-# ---
-from cvttpy_tools.base.app import App
-from cvttpy_tools.base.base import NamedObject
-from cvttpy_tools.base.config import CvttAppConfig
-
-# ---
-from cvttpy_trading.trading.instrument import ExchangeInstrument
-from cvttpy_trading.settings.instruments import Instruments
-
-# ---
-from pairs_trading.lib.pt_strategy.results import (
- PairResearchResult,
- create_result_database,
- store_config_in_database,
-)
-from pairs_trading.lib.pt_strategy.research_strategy import PtResearchStrategy
-from pairs_trading.lib.tools.filetools import resolve_datafiles
-
-InstrumentTypeT = str
-
-
-class Runner(NamedObject):
- def __init__(self):
- App()
- CvttAppConfig()
-
- # App.instance().add_cmdline_arg(
- # "--config", type=str, required=True, help="Path to the configuration file."
- # )
- App.instance().add_cmdline_arg(
- "--date_pattern",
- type=str,
- required=True,
- help="Date YYYYMMDD, allows * and ? wildcards",
- )
- App.instance().add_cmdline_arg(
- "--instruments",
- type=str,
- required=True,
- help="Comma-separated list of instrument symbols (e.g., COIN:EQUITY,GBTC:CRYPTO)",
- )
- App.instance().add_cmdline_arg(
- "--result_db",
- type=str,
- required=True,
- help="Path to SQLite database for storing results. Use 'NONE' to disable database output.",
- )
-
- App.instance().add_call(stage=App.Stage.Config, func=self._on_config())
- App.instance().add_call(stage=App.Stage.Run, func=self.run())
-
- async def _on_config(self) -> None:
- # Resolve data files (CLI takes priority over config)
- instruments: List[ExchangeInstrument] = self._get_instruments()
- datafiles = resolve_datafiles(
- config=CvttAppConfig.instance(),
- date_pattern=App.instance().get_argument("date_pattern"),
- instruments=instruments,
- )
-
- days = list(set([day for day, _ in datafiles]))
- print(f"Found {len(datafiles)} data files to process:")
- for df in datafiles:
- print(f" - {df}")
-
- # Create result database if needed
- if App.instance().get_argument("result_db").upper() != "NONE":
- create_result_database(App.instance().get_argument("result_db"))
-
- # Initialize a dictionary to store all trade results
- all_results: Dict[str, Dict[str, Any]] = {}
- is_config_stored = False
- # Process each data file
-
- results = PairResearchResult(config=CvttAppConfig.instance())
- for day in sorted(days):
- md_datafiles = [datafile for md_day, datafile in datafiles if md_day == day]
- if not all([os.path.exists(datafile) for datafile in md_datafiles]):
- print(f"WARNING: insufficient data files: {md_datafiles}")
- exit(1)
- print(f"\n====== Processing {day} ======")
-
- if not is_config_stored:
- store_config_in_database(
- db_path=App.instance().get_argument("result_db"),
- config_file_path=App.instance().get_argument("config"),
- config=CvttAppConfig.instance(),
- datafiles=datafiles,
- instruments=instruments,
- )
- is_config_stored = True
-
- CvttAppConfig.instance().set_value("datafiles", md_datafiles)
- pt_strategy = PtResearchStrategy(
- config=CvttAppConfig.instance(),
- instruments=instruments,
- )
- pt_strategy.run()
- results.add_day_results(
- day=day,
- trades=pt_strategy.day_trades(),
- outstanding_positions=pt_strategy.outstanding_positions(),
- )
-
- results.analyze_pair_performance()
-
- def _get_instruments(self) -> List[ExchangeInstrument]:
- res: List[ExchangeInstrument] = []
-
- for inst in App.instance().get_argument("instruments").split(","):
- instrument_type = inst.split(":")[0]
- exchange_id = inst.split(":")[1]
- instrument_id = inst.split(":")[2]
- exch_inst: ExchangeInstrument = Instruments.instance().get_exch_inst(
- exch_id=exchange_id, inst_id=instrument_id, src=f"{self.fname()}"
- )
- exch_inst.user_data_["instrument_type"] = instrument_type
- res.append(exch_inst)
-
- return res
-
- async def run(self) -> None:
-
- if App.instance().get_argument("result_db").upper() != "NONE":
- print(
- f'\nResults stored in database: {App.instance().get_argument("result_db")}'
- )
- else:
- print("No results to display.")
-
-
-if __name__ == "__main__":
- Runner()
- App.instance().run()
diff --git a/__SAV__/research/notebooks/pair_select_hist.ipynb b/__SAV__/research/notebooks/pair_select_hist.ipynb
deleted file mode 100644
index 50e80b4..0000000
--- a/__SAV__/research/notebooks/pair_select_hist.ipynb
+++ /dev/null
@@ -1,311 +0,0 @@
-{
- "cells": [
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "# Pair Selection History\n",
- "\n",
- "Interactive notebook for exploring pair selection history from a SQLite database.\n"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "**Usage**\n",
- "- Enter the SQLite `db_path` (file path).\n",
- "- Click `Load pairs` to populate the dropdown.\n",
- "- Select a `pair_name`, then click `Plot`.\n"
- ]
- },
- {
- "cell_type": "markdown",
- "id": "668ebf19",
- "metadata": {},
- "source": [
- "# Settings"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 1,
- "id": "c78db847",
- "metadata": {},
- "outputs": [],
- "source": [
- "import sqlite3\n",
- "from pathlib import Path\n",
- "\n",
- "import pandas as pd\n",
- "import plotly.express as px\n",
- "import ipywidgets as widgets\n",
- "from IPython.display import display\n"
- ]
- },
- {
- "cell_type": "markdown",
- "id": "e7ac6adc",
- "metadata": {},
- "source": [
- "# Data Loading"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "id": "766bcf9f",
- "metadata": {},
- "outputs": [
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "e0b30b1abd1b440b832fdaaa6cce8f76",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "VBox(children=(Text(value='', description='pair_db', layout=Layout(width='80%'), placeholder='/path/to/pairs.d…"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "15679f9015854d5fa7119210094fbbc8",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Output()"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- }
- ],
- "source": [
- "db_path = widgets.Text(\n",
- " value='',\n",
- " placeholder='/path/to/pairs.db',\n",
- " description='pair_db',\n",
- " layout=widgets.Layout(width='80%')\n",
- ")\n",
- "\n",
- "md_db_path = widgets.Text(\n",
- " value='',\n",
- " placeholder='/path/to/market_data.db',\n",
- " description='md_db',\n",
- " layout=widgets.Layout(width='80%')\n",
- ")\n",
- "\n",
- "load_button = widgets.Button(description='Load pairs', button_style='info')\n",
- "plot_button = widgets.Button(description='Plot', button_style='primary')\n",
- "\n",
- "pair_name = widgets.Dropdown(\n",
- " options=[],\n",
- " value=None,\n",
- " description='pair_name',\n",
- " layout=widgets.Layout(width='80%')\n",
- ")\n",
- "\n",
- "status = widgets.HTML(value='')\n",
- "output = widgets.Output()\n",
- "\n",
- "controls = widgets.VBox([\n",
- " db_path,\n",
- " md_db_path,\n",
- " widgets.HBox([load_button, plot_button]),\n",
- " pair_name,\n",
- " status,\n",
- "])\n",
- "\n",
- "display(controls, output)\n"
- ]
- },
- {
- "cell_type": "markdown",
- "id": "a4d47855",
- "metadata": {},
- "source": [
- "# Processing"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "id": "2c710f51",
- "metadata": {},
- "outputs": [],
- "source": [
- "PLOT_WIDTH = 1100\n",
- "PLOT_HEIGHT = 320\n",
- "\n",
- "def _connect(path: str):\n",
- " if not path:\n",
- " raise ValueError('Please provide db_path.')\n",
- " p = Path(path).expanduser().resolve()\n",
- " if not p.exists():\n",
- " raise FileNotFoundError(f'Database not found: {p}')\n",
- " return sqlite3.connect(p)\n",
- "\n",
- "\n",
- "def _parse_tstamp(series: pd.Series) -> pd.Series:\n",
- " return pd.to_datetime(series, utc=True, errors='coerce').dt.tz_convert(None)\n",
- "\n",
- "\n",
- "def _style_fig(fig, tmin, tmax):\n",
- " fig.update_layout(\n",
- " legend=dict(orientation='h', yanchor='bottom', y=1.02, xanchor='left', x=0),\n",
- " margin=dict(l=50, r=20, t=60, b=40),\n",
- " height=PLOT_HEIGHT,\n",
- " width=PLOT_WIDTH,\n",
- " )\n",
- " fig.update_xaxes(range=[tmin, tmax])\n",
- "\n",
- "\n",
- "def _load_pairs(_=None):\n",
- " status.value = ''\n",
- " with output:\n",
- " output.clear_output()\n",
- " try:\n",
- " with _connect(db_path.value) as conn:\n",
- " rows = conn.execute(\n",
- " \"SELECT pair_name \"\n",
- " \"FROM pair_selection_history \"\n",
- " \"GROUP BY pair_name \"\n",
- " \"ORDER BY SUM(composite_rank), pair_name\"\n",
- " ).fetchall()\n",
- " options = [r[0] for r in rows]\n",
- " pair_name.options = options\n",
- " pair_name.value = options[0] if options else None\n",
- " status.value = f'Loaded {len(options)} pairs.'\n",
- " except Exception as exc:\n",
- " status.value = f\"Error: {exc}\"\n",
- "\n",
- "\n",
- "def _plot(_=None):\n",
- " status.value = ''\n",
- " with output:\n",
- " output.clear_output()\n",
- " try:\n",
- " if not pair_name.value:\n",
- " raise ValueError('Please select a pair_name.')\n",
- " if not md_db_path.value:\n",
- " raise ValueError('Please provide md_db path.')\n",
- " query = (\n",
- " 'SELECT tstamp, pvalue_eg, pvalue_adf, rank_eg, rank_adf, '\n",
- " 'exchange_a, instrument_a, exchange_b, instrument_b '\n",
- " 'FROM pair_selection_history '\n",
- " 'WHERE pair_name = ? '\n",
- " 'ORDER BY tstamp'\n",
- " )\n",
- " with _connect(db_path.value) as conn:\n",
- " df = pd.read_sql_query(query, conn, params=(pair_name.value,))\n",
- " if df.empty:\n",
- " raise ValueError('No data for selected pair_name.')\n",
- " df['tstamp'] = _parse_tstamp(df['tstamp'])\n",
- " df = df.dropna(subset=['tstamp'])\n",
- " if df.empty:\n",
- " raise ValueError('No valid timestamps in pair selection data.')\n",
- " tmin = df['tstamp'].min()\n",
- " tmax = df['tstamp'].max()\n",
- "\n",
- " first_row = df.dropna(subset=['exchange_a', 'instrument_a', 'exchange_b', 'instrument_b']).iloc[0]\n",
- " ex_a = first_row['exchange_a']\n",
- " id_a = first_row['instrument_a']\n",
- " ex_b = first_row['exchange_b']\n",
- " id_b = first_row['instrument_b']\n",
- "\n",
- " fig_p = px.line(\n",
- " df,\n",
- " x='tstamp',\n",
- " y=['pvalue_eg', 'pvalue_adf'],\n",
- " title=f'P-Values Over Time: {pair_name.value}',\n",
- " labels={'value': 'p-value', 'variable': 'metric', 'tstamp': 'timestamp'}\n",
- " )\n",
- " fig_p.update_layout(legend_title_text='metric')\n",
- " _style_fig(fig_p, tmin, tmax)\n",
- "\n",
- " md_query = (\n",
- " 'SELECT tstamp, close FROM md_1min_bars '\n",
- " 'WHERE exchange_id = ? AND instrument_id = ? '\n",
- " 'ORDER BY tstamp'\n",
- " )\n",
- " with _connect(md_db_path.value) as md_conn:\n",
- " md_a = pd.read_sql_query(md_query, md_conn, params=(ex_a, id_a))\n",
- " md_b = pd.read_sql_query(md_query, md_conn, params=(ex_b, id_b))\n",
- " if md_a.empty or md_b.empty:\n",
- " raise ValueError('Market data not found for selected instruments.')\n",
- " md_a['tstamp'] = _parse_tstamp(md_a['tstamp'])\n",
- " md_b['tstamp'] = _parse_tstamp(md_b['tstamp'])\n",
- " md_a = md_a.dropna(subset=['tstamp', 'close'])\n",
- " md_b = md_b.dropna(subset=['tstamp', 'close'])\n",
- " md_a = md_a[(md_a['tstamp'] >= tmin) & (md_a['tstamp'] <= tmax)]\n",
- " md_b = md_b[(md_b['tstamp'] >= tmin) & (md_b['tstamp'] <= tmax)]\n",
- " if md_a.empty or md_b.empty:\n",
- " raise ValueError('Market data is outside the pair selection time range.')\n",
- " md_a = md_a.sort_values('tstamp')\n",
- " md_b = md_b.sort_values('tstamp')\n",
- " md_a['scaled_close'] = (md_a['close'] - md_a['close'].iloc[0]) / md_a['close'].iloc[0] * 100\n",
- " md_b['scaled_close'] = (md_b['close'] - md_b['close'].iloc[0]) / md_b['close'].iloc[0] * 100\n",
- "\n",
- " md_plot = pd.DataFrame({\n",
- " 'tstamp': md_a['tstamp'],\n",
- " f'{ex_a}:{id_a}': md_a['scaled_close'],\n",
- " })\n",
- " md_plot = md_plot.merge(\n",
- " pd.DataFrame({\n",
- " 'tstamp': md_b['tstamp'],\n",
- " f'{ex_b}:{id_b}': md_b['scaled_close'],\n",
- " }),\n",
- " on='tstamp',\n",
- " how='outer'\n",
- " ).sort_values('tstamp')\n",
- "\n",
- " fig_m = px.line(\n",
- " md_plot,\n",
- " x='tstamp',\n",
- " y=[f'{ex_a}:{id_a}', f'{ex_b}:{id_b}'],\n",
- " title='Scaled Close Price Change (%)',\n",
- " labels={'value': 'scaled % change', 'variable': 'instrument', 'tstamp': 'timestamp'}\n",
- " )\n",
- " fig_m.update_layout(legend_title_text='instrument')\n",
- " _style_fig(fig_m, tmin, tmax)\n",
- "\n",
- " with output:\n",
- " display(fig_p)\n",
- " display(fig_m)\n",
- " except Exception as exc:\n",
- " status.value = f\"Error: {exc}\"\n",
- "\n",
- "\n",
- "load_button.on_click(_load_pairs)\n",
- "plot_button.on_click(_plot)\n"
- ]
- }
- ],
- "metadata": {
- "kernelspec": {
- "display_name": "python3.12-venv",
- "language": "python",
- "name": "python3"
- },
- "language_info": {
- "codemirror_mode": {
- "name": "ipython",
- "version": 3
- },
- "file_extension": ".py",
- "mimetype": "text/x-python",
- "name": "python",
- "nbconvert_exporter": "python",
- "pygments_lexer": "ipython3",
- "version": "3.12.9"
- }
- },
- "nbformat": 4,
- "nbformat_minor": 5
-}
diff --git a/__SAV__/research/notebooks/pair_trading_test.ipynb b/__SAV__/research/notebooks/pair_trading_test.ipynb
deleted file mode 100644
index d090f4b..0000000
--- a/__SAV__/research/notebooks/pair_trading_test.ipynb
+++ /dev/null
@@ -1,7085 +0,0 @@
-{
- "cells": [
- {
- "cell_type": "markdown",
- "metadata": {
- "vscode": {
- "languageId": "raw"
- }
- },
- "source": [
- "\n",
- "# Settings"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 41,
- "metadata": {},
- "outputs": [],
- "source": [
- "# Trading Parameters Configuration\n",
- "# Specify your configuration file, trading symbols and date here\n",
- "\n",
- "# Configuration file selection\n",
- "global CONFIG_FILE\n",
- "global SYMBOL_A\n",
- "global SYMBOL_B\n",
- "global TRADING_DATE\n",
- "global TRD_DATE\n",
- "global PT_BT_CONFIG\n",
- "global DATA_FILE\n",
- "global FIT_METHOD_TYPE\n",
- "global pair\n",
- "global pair_trades\n",
- "global bt_result\n",
- "global INSTRUMENTS\n",
- "\n",
- "import os\n",
- "import sys\n",
- "from typing import Dict\n",
- "sys.path.append('/home/oleg/develop')\n",
- "\n",
- "from cvttpy_trading.trading.instrument import ExchangeInstrument\n",
- "\n",
- "ROOT_DIR = \"/home/oleg/develop/pairs_trading\"\n",
- "os.chdir(ROOT_DIR)\n",
- "\n",
- "# CONFIG_FILE = f\"{ROOT_DIR}/configuration/vecm-opt.cfg\"\n",
- "\n",
- "os.environ[\"CONFIG_SERVICE\"] = \"cloud16.cvtt.vpn:6789\"\n",
- "os.environ[\"MODEL_CONFIG\"] = \"vecm\"\n",
- "CONFIG_FILE = f\"http://cloud16.cvtt.vpn:6789/apps/pairs_trading/backtest\"\n",
- "\n",
- "# Date for data file selection (format: YYYYMMDD)\n",
- "TRADING_DATE = \"20250910\" # Change this to your desired date\n",
- "sys.path.append('/home/oleg/develop')\n",
- "\n",
- "# ================================ E Q U I T Y ================================\n",
- "# pair_settings = {\n",
- "# \"A\": {\n",
- "# \"instrument_type\": \"EQUITY\",\n",
- "# \"exchange_id\": \"ALPACA\",\n",
- "# \"instrument_id\": \"STOCK-COIN\",\n",
- "# },\n",
- "# \"B\": {\n",
- "# \"instrument_type\": \"EQUITY\",\n",
- "# \"exchange_id\": \"ALPACA\",\n",
- "# \"instrument_id\": \"STOCK-MSTR\",\n",
- "# },\n",
- "# }\n",
- "# ================================ E Q U I T Y ================================\n",
- "\n",
- "# ================================ C R Y P T O ================================\n",
- "pair_settings = {\n",
- " \"A\": {\n",
- " \"instrument_type\": \"CRYPTO\",\n",
- " \"instrument_id\": \"PAIR-ADA-USDT\",\n",
- " \"exchange_id\": \"BNBSPOT\",\n",
- " },\n",
- " \"B\": {\n",
- " \"instrument_type\": \"CRYPTO\",\n",
- " \"instrument_id\": \"PAIR-SOL-USDT\",\n",
- " \"exchange_id\": \"BNBSPOT\",\n",
- " },\n",
- "}\n",
- "# ================================ C R Y P T O ================================\n",
- "\n",
- "# ================================ E Q U I T Y VS. C R Y P T O ================================\n",
- "# pair_settings = {\n",
- "# \"A\": {\n",
- "# \"instrument_type\": \"EQUITY\",\n",
- "# \"exchange_id\": \"ALPACA\",\n",
- "# \"instrument_id\": \"STOCK-MSTR\",\n",
- "# },\n",
- "# \"B\": {\n",
- "# \"instrument_type\": \"CRYPTO\",\n",
- "# \"exchange_id\": \"BNBSPOT\",\n",
- "# \"instrument_id\": \"PAIR-ETH-USDT\",\n",
- "# },\n",
- "# }\n",
- "# ================================ E Q U I T Y VS. C R Y P T O ================================\n",
- "INSTRUMENTS: Dict[str, ExchangeInstrument] = {}\n",
- "for ab, inst_setting in pair_settings.items():\n",
- " exch_inst = ExchangeInstrument(jdict=inst_setting)\n",
- " exch_inst.user_data_[\"instrument_type\"] = inst_setting[\"instrument_type\"]\n",
- " exch_inst.user_data_[\"symbol\"] = exch_inst.instrument_id().split(\"-\", 1)[1]\n",
- " INSTRUMENTS[ab] = exch_inst\n",
- "\n",
- "SYMBOL_A = INSTRUMENTS[\"A\"].user_data_[\"symbol\"]\n",
- "SYMBOL_B = INSTRUMENTS[\"B\"].user_data_[\"symbol\"]\n",
- "TRD_DATE = f\"{TRADING_DATE[0:4]}-{TRADING_DATE[4:6]}-{TRADING_DATE[6:8]}\"\n"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "# Setup and Configuration"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "## Code Setup"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 42,
- "metadata": {},
- "outputs": [],
- "source": [
- "\n",
- "def setup() -> None:\n",
- " import sys\n",
- " import os\n",
- " sys.path.append('/home/oleg/develop') \n",
- "\n",
- " import pandas as pd\n",
- " import numpy as np\n",
- " import importlib\n",
- " from typing import Dict, List, Optional\n",
- " from IPython.display import clear_output\n",
- "\n",
- " # Import our modules\n",
- " # ---\n",
- " from pairs_trading.lib.pt_strategy.trading_pair import TradingPair, PairState\n",
- " from pairs_trading.lib.pt_strategy.results import PairResearchResult\n",
- "\n",
- " pd.set_option('display.width', 400)\n",
- " pd.set_option('display.max_colwidth', None)\n",
- " pd.set_option('display.max_columns', None)\n",
- "\n",
- " print(\"Setup complete!\")\n",
- " os.chdir(os.path.abspath(os.path.join(os.getcwd(), \"..\", \"..\")))\n",
- " print(f\"Current working directory: {os.getcwd()}\")\n",
- "\n",
- "# setup() # DEBUG"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {
- "vscode": {
- "languageId": "raw"
- }
- },
- "source": [
- "## Load Configuration\n"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 43,
- "metadata": {},
- "outputs": [],
- "source": [
- "# Load Configuration from Configuration Files using HJSON\n",
- "from typing import Dict, Optional\n",
- "import hjson\n",
- "import os\n",
- "import importlib\n",
- "\n",
- "from cvttpy_tools.base.config import Config\n",
- "\n",
- "def load_config_from_file() -> Optional[Dict]:\n",
- " global DB_TABLE_NAME\n",
- " global PT_BT_CONFIG\n",
- " PT_BT_CONFIG = Config(json_src=CONFIG_FILE)\n",
- " DB_TABLE_NAME = PT_BT_CONFIG.get_value(\"market_data_loading\")[INSTRUMENTS[\"A\"].user_data_[\"instrument_type\"]][\"db_table_name\"]\n",
- "\n",
- "# -------- DEBUG \n",
- "# setup() \n",
- "# load_config_from_file() "
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "## Prepare Config"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 44,
- "metadata": {},
- "outputs": [],
- "source": [
- "\n",
- "def prepare_config() -> None:\n",
- " from typing import Dict, List, Any\n",
- " import os\n",
- " \n",
- " global PT_BT_CONFIG\n",
- " global CONFIG_FILE\n",
- " global SYMBOL_A\n",
- " global SYMBOL_B\n",
- " global TRD_DATE\n",
- " global DATA_FILES\n",
- " global FIT_MODEL\n",
- " \n",
- "\n",
- " print(f\"Trading Parameters:\")\n",
- " print(f\" Configuration: {CONFIG_FILE}\")\n",
- " print(f\" Symbol A: {SYMBOL_A}\")\n",
- " print(f\" Symbol B: {SYMBOL_B}\")\n",
- " print(f\" Trading Date: {TRD_DATE}\")\n",
- "\n",
- " # Load the specified configuration\n",
- " print(f\"\\nLoading {CONFIG_FILE} configuration using HJSON...\")\n",
- "\n",
- " load_config_from_file()\n",
- "\n",
- " if PT_BT_CONFIG:\n",
- " print(f\"✓ Successfully loaded configuration\")\n",
- " print(f\" Open threshold: {PT_BT_CONFIG.get_value('model/disequilibrium/open_trshld')}\")\n",
- " print(f\" Close threshold: {PT_BT_CONFIG.get_value('model/disequilibrium/close_trshld')}\")\n",
- " \n",
- " # Automatically construct data file name based on date and config type\n",
- " DATA_FILE = f\"{TRADING_DATE}.mktdata.ohlcv.db\"\n",
- " data_directory_a = PT_BT_CONFIG.get_value(\"market_data_loading\")[INSTRUMENTS[\"A\"].user_data_[\"instrument_type\"]][\"data_directory\"]\n",
- " data_directory_b = PT_BT_CONFIG.get_value(\"market_data_loading\")[INSTRUMENTS[\"B\"].user_data_[\"instrument_type\"]][\"data_directory\"]\n",
- " DATA_FILE_A = f\"{data_directory_a}/{TRADING_DATE}.mktdata.ohlcv.db\"\n",
- " DATA_FILE_B = f\"{data_directory_b}/{TRADING_DATE}.mktdata.ohlcv.db\"\n",
- "\n",
- " PT_BT_CONFIG.set_value(\"datafiles\", list(set([DATA_FILE_A, DATA_FILE_B])))\n",
- " \n",
- " print(f\"\\nData Configuration:\")\n",
- " print(f\" Data File: {DATA_FILE}\")\n",
- " \n",
- " # Verify data file exists\n",
- " os.chdir(ROOT_DIR)\n",
- " for data_file_path in PT_BT_CONFIG.get_value(\"datafiles\"):\n",
- " if os.path.exists(data_file_path):\n",
- " print(f\" ✓ Data file found: {data_file_path}\")\n",
- " else:\n",
- " raise FileNotFoundError(\n",
- " f\" ⚠ Data file not found: {data_file_path}\\n\"\n",
- " f\" Please check if the date and file exist in the data directory\"\n",
- " )\n",
- " \n",
- " else:\n",
- " print(\"⚠ Failed to load configuration. Please check the configuration file.\")\n",
- "\n",
- "# -------- DEBUG \n",
- "# setup() \n",
- "# load_config_from_file() \n",
- "# prepare_config()"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {
- "vscode": {
- "languageId": "raw"
- }
- },
- "source": [
- "## Run Strategy"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 45,
- "metadata": {},
- "outputs": [],
- "source": [
- "\n",
- "def run_strategy() -> None: # Load market data\n",
- " from typing import Dict, Any\n",
- " global PT_BT_CONFIG\n",
- " global INSTRUMENTS\n",
- " global PT_RESEARCH_STRATEGY\n",
- " global PT_RESULTS\n",
- "\n",
- " \n",
- " from pairs_trading.lib.pt_strategy.trading_pair import TradingPair\n",
- " from pairs_trading.lib.pt_strategy.research_strategy import PtResearchStrategy\n",
- " from pairs_trading.lib.pt_strategy.results import PairResearchResult\n",
- "\n",
- " # Create trading pair\n",
- " PT_RESULTS = PairResearchResult(config=PT_BT_CONFIG)\n",
- " PT_RESEARCH_STRATEGY = PtResearchStrategy(\n",
- " config=PT_BT_CONFIG, \n",
- " # datafiles=PT_BT_CONFIG[\"datafiles\"], \n",
- " instruments=list(INSTRUMENTS.values())\n",
- " )\n",
- "\n",
- " PT_RESEARCH_STRATEGY.run()\n",
- " PT_RESULTS.add_day_results(\n",
- " day=TRADING_DATE,\n",
- " trades=PT_RESEARCH_STRATEGY.day_trades(),\n",
- " outstanding_positions=PT_RESEARCH_STRATEGY.outstanding_positions(),\n",
- " )\n",
- "\n",
- "\n",
- " pair = PT_RESEARCH_STRATEGY.trading_pair_\n",
- " \n",
- " print(f\"\\nCreated trading pair: {pair}\")\n",
- " print(f\"Market data shape: {pair.market_data_.shape}\")\n",
- " print(f\"Column names: {pair.colnames()}\")\n",
- "\n",
- " # Display sample data\n",
- " print(f\"\\nSample data:\")\n",
- " # with pd.option_context('display.max_rows', None, 'display.max_columns', None):\n",
- " # print(pair.market_data_)\n",
- " display(pair.market_data_.head())\n",
- "\n",
- " display(pair.market_data_.tail())\n",
- "\n",
- "# -------- DEBUG \n",
- "# setup() \n",
- "# load_config_from_file() \n",
- "# prepare_config()\n",
- "# run_strategy()"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "## Visualize"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 46,
- "metadata": {},
- "outputs": [],
- "source": [
- "def visualize() -> None:\n",
- " from pairs_trading.lib.tools.viz.viz_prices import visualize_prices\n",
- " from pairs_trading.lib.tools.viz.viz_trades import visualize_trades\n",
- "\n",
- " visualize_prices(strategy=PT_RESEARCH_STRATEGY, trading_date=TRADING_DATE)\n",
- " visualize_trades(strategy=PT_RESEARCH_STRATEGY, results=PT_RESULTS, trading_date=TRADING_DATE)"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {
- "vscode": {
- "languageId": "raw"
- }
- },
- "source": [
- "## Summary\n"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 47,
- "metadata": {},
- "outputs": [],
- "source": [
- "def summary() -> None:\n",
- " global PT_RESULTS\n",
- " PT_RESULTS.analyze_pair_performance()"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "# Run"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 48,
- "metadata": {},
- "outputs": [
- {
- "name": "stdout",
- "output_type": "stream",
- "text": [
- "Setup complete!\n",
- "Current working directory: /home/oleg\n",
- "Trading Parameters:\n",
- " Configuration: http://cloud16.cvtt.vpn:6789/apps/pairs_trading/backtest\n",
- " Symbol A: ADA-USDT\n",
- " Symbol B: SOL-USDT\n",
- " Trading Date: 2025-09-10\n",
- "\n",
- "Loading http://cloud16.cvtt.vpn:6789/apps/pairs_trading/backtest configuration using HJSON...\n",
- "✓ Successfully loaded configuration\n",
- " Open threshold: 0.75\n",
- " Close threshold: 0.5\n",
- "[2026-01-12 18:27:14.410259] INFO Config.set_value(): NEW Config parameter [datafiles] is set to [['./data/crypto/20250910.mktdata.ohlcv.db']]\n",
- "\n",
- "Data Configuration:\n",
- " Data File: 20250910.mktdata.ohlcv.db\n",
- " ✓ Data file found: ./data/crypto/20250910.mktdata.ohlcv.db\n",
- "[2026-01-12 18:27:14.415723] INFO Config.set_value(): NEW Config parameter [instruments] is set to [[[instrument_id_=PAIR-ADA-USDT][base_asset_id_=][quote_asset_id_=USDT][price_tick_=0.0][quantity_precision_=0.0001][exchange_id_=BNBSPOT][md_symbol_=][trade_symbol_=][contract_code_=][contract_size_=1.0][specifics_={}][no_loss_proc_queue_=EventProcessQueue:BNBSPOT_PAIR-ADA-USDT][book_top_proc_queue_=EventProcessQueue:TOP_BNBSPOT_PAIR-ADA-USDT][book_depth_proc_queue_=EventProcessQueue:DEPTH_BNBSPOT_PAIR-ADA-USDT][mkt_data_=ExchInstMarketData Object][user_data_={'instrument_type': 'CRYPTO', 'symbol': 'ADA-USDT'}][exchange_id_=BNBSPOT][md_symbol_=][trade_symbol_=][contract_code_=][contract_size_=1.0][price_tick_=0.0][user_data_={'instrument_type': 'CRYPTO', 'symbol': 'ADA-USDT'}], [instrument_id_=PAIR-SOL-USDT][base_asset_id_=][quote_asset_id_=USDT][price_tick_=0.0][quantity_precision_=0.0001][exchange_id_=BNBSPOT][md_symbol_=][trade_symbol_=][contract_code_=][contract_size_=1.0][specifics_={}][no_loss_proc_queue_=EventProcessQueue:BNBSPOT_PAIR-SOL-USDT][book_top_proc_queue_=EventProcessQueue:TOP_BNBSPOT_PAIR-SOL-USDT][book_depth_proc_queue_=EventProcessQueue:DEPTH_BNBSPOT_PAIR-SOL-USDT][mkt_data_=ExchInstMarketData Object][user_data_={'instrument_type': 'CRYPTO', 'symbol': 'SOL-USDT'}][exchange_id_=BNBSPOT][md_symbol_=][trade_symbol_=][contract_code_=][contract_size_=1.0][price_tick_=0.0][user_data_={'instrument_type': 'CRYPTO', 'symbol': 'SOL-USDT'}]]]\n",
- "OPEN_TRADES: 2025-09-10 13:34:00 scaled_disequilibrium=np.float64(-0.8244846106700531)\n",
- "OPEN TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 13:34:00 OPEN ADA-USDT BUY 0.885898 -0.00092 0.824485 -0.824485 OPEN\n",
- "1 2025-09-10 13:34:00 OPEN SOL-USDT SELL 223.067938 -0.00092 0.824485 -0.824485 OPEN\n",
- "CLOSE TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 13:35:00 CLOSE ADA-USDT SELL 0.885872 -0.000031 0.299233 -0.299233 CLOSE\n",
- "1 2025-09-10 13:35:00 CLOSE SOL-USDT BUY 222.988969 -0.000031 0.299233 -0.299233 CLOSE\n",
- "OPEN_TRADES: 2025-09-10 13:39:00 scaled_disequilibrium=np.float64(-0.7633615363869128)\n",
- "OPEN TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 13:39:00 OPEN ADA-USDT BUY 0.887357 -0.000568 0.763362 -0.763362 OPEN\n",
- "1 2025-09-10 13:39:00 OPEN SOL-USDT SELL 223.740538 -0.000568 0.763362 -0.763362 OPEN\n",
- "CLOSE TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 13:42:00 CLOSE ADA-USDT SELL 0.890511 -0.000021 0.446956 -0.446956 CLOSE\n",
- "1 2025-09-10 13:42:00 CLOSE SOL-USDT BUY 224.181397 -0.000021 0.446956 -0.446956 CLOSE\n",
- "OPEN_TRADES: 2025-09-10 13:50:00 scaled_disequilibrium=np.float64(1.0412192401772844)\n",
- "OPEN TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 13:50:00 OPEN ADA-USDT SELL 0.892900 0.002494 1.041219 1.041219 OPEN\n",
- "1 2025-09-10 13:50:00 OPEN SOL-USDT BUY 224.156429 0.002494 1.041219 1.041219 OPEN\n",
- "CLOSE TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 13:58:00 CLOSE ADA-USDT BUY 0.891480 0.000305 0.352027 0.352027 CLOSE\n",
- "1 2025-09-10 13:58:00 CLOSE SOL-USDT SELL 224.214504 0.000305 0.352027 0.352027 CLOSE\n",
- "OPEN_TRADES: 2025-09-10 14:03:00 scaled_disequilibrium=np.float64(0.96596660932689)\n",
- "OPEN TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 14:03:00 OPEN ADA-USDT SELL 0.891702 0.00145 0.965967 0.965967 OPEN\n",
- "1 2025-09-10 14:03:00 OPEN SOL-USDT BUY 224.400408 0.00145 0.965967 0.965967 OPEN\n",
- "CLOSE TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 14:04:00 CLOSE ADA-USDT BUY 0.893018 0.000619 0.426978 0.426978 CLOSE\n",
- "1 2025-09-10 14:04:00 CLOSE SOL-USDT SELL 224.700367 0.000619 0.426978 0.426978 CLOSE\n",
- "OPEN_TRADES: 2025-09-10 14:08:00 scaled_disequilibrium=np.float64(1.1383549284664198)\n",
- "OPEN TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 14:08:00 OPEN ADA-USDT SELL 0.894122 0.001932 1.138355 1.138355 OPEN\n",
- "1 2025-09-10 14:08:00 OPEN SOL-USDT BUY 224.398883 0.001932 1.138355 1.138355 OPEN\n",
- "CLOSE TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 14:45:00 CLOSE ADA-USDT BUY 0.888666 0.000285 0.440307 0.440307 CLOSE\n",
- "1 2025-09-10 14:45:00 CLOSE SOL-USDT SELL 223.206538 0.000285 0.440307 0.440307 CLOSE\n",
- "OPEN_TRADES: 2025-09-10 14:48:00 scaled_disequilibrium=np.float64(0.7558232059552493)\n",
- "OPEN TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 14:48:00 OPEN ADA-USDT SELL 0.888845 0.001053 0.755823 0.755823 OPEN\n",
- "1 2025-09-10 14:48:00 OPEN SOL-USDT BUY 223.167033 0.001053 0.755823 0.755823 OPEN\n",
- "CLOSE TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 14:56:00 CLOSE ADA-USDT BUY 0.887105 0.000568 0.499517 0.499517 CLOSE\n",
- "1 2025-09-10 14:56:00 CLOSE SOL-USDT SELL 222.936840 0.000568 0.499517 0.499517 CLOSE\n",
- "OPEN_TRADES: 2025-09-10 15:04:00 scaled_disequilibrium=np.float64(0.7751717608551579)\n",
- "OPEN TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 15:04:00 OPEN ADA-USDT SELL 0.889064 0.001197 0.775172 0.775172 OPEN\n",
- "1 2025-09-10 15:04:00 OPEN SOL-USDT BUY 223.396583 0.001197 0.775172 0.775172 OPEN\n",
- "CLOSE TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 15:05:00 CLOSE ADA-USDT BUY 0.889646 0.000538 0.379905 0.379905 CLOSE\n",
- "1 2025-09-10 15:05:00 CLOSE SOL-USDT SELL 223.749132 0.000538 0.379905 0.379905 CLOSE\n",
- "OPEN_TRADES: 2025-09-10 15:30:00 scaled_disequilibrium=np.float64(-0.828684704417004)\n",
- "OPEN TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 15:30:00 OPEN ADA-USDT BUY 0.88759 -0.001495 0.828685 -0.828685 OPEN\n",
- "1 2025-09-10 15:30:00 OPEN SOL-USDT SELL 223.33506 -0.001495 0.828685 -0.828685 OPEN\n",
- "CLOSE TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 15:47:00 CLOSE ADA-USDT SELL 0.889067 0.00029 0.300166 0.300166 CLOSE\n",
- "1 2025-09-10 15:47:00 CLOSE SOL-USDT BUY 223.034736 0.00029 0.300166 0.300166 CLOSE\n",
- "OPEN_TRADES: 2025-09-10 15:52:00 scaled_disequilibrium=np.float64(0.8452577570204922)\n",
- "OPEN TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 15:52:00 OPEN ADA-USDT SELL 0.88942 0.001042 0.845258 0.845258 OPEN\n",
- "1 2025-09-10 15:52:00 OPEN SOL-USDT BUY 223.19371 0.001042 0.845258 0.845258 OPEN\n",
- "CLOSE TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 15:54:00 CLOSE ADA-USDT BUY 0.889818 0.000072 0.08541 0.08541 CLOSE\n",
- "1 2025-09-10 15:54:00 CLOSE SOL-USDT SELL 223.413141 0.000072 0.08541 0.08541 CLOSE\n",
- "OPEN_TRADES: 2025-09-10 16:04:00 scaled_disequilibrium=np.float64(-0.7826667283223462)\n",
- "OPEN TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 16:04:00 OPEN ADA-USDT BUY 0.887397 -0.000908 0.782667 -0.782667 OPEN\n",
- "1 2025-09-10 16:04:00 OPEN SOL-USDT SELL 222.866369 -0.000908 0.782667 -0.782667 OPEN\n",
- "CLOSE TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 16:05:00 CLOSE ADA-USDT SELL 0.887639 0.000344 0.186446 0.186446 CLOSE\n",
- "1 2025-09-10 16:05:00 CLOSE SOL-USDT BUY 222.874434 0.000344 0.186446 0.186446 CLOSE\n",
- "OPEN_TRADES: 2025-09-10 16:10:00 scaled_disequilibrium=np.float64(-1.1299698765342532)\n",
- "OPEN TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 16:10:00 OPEN ADA-USDT BUY 0.884660 -0.00116 1.12997 -1.12997 OPEN\n",
- "1 2025-09-10 16:10:00 OPEN SOL-USDT SELL 222.844778 -0.00116 1.12997 -1.12997 OPEN\n",
- "CLOSE TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 16:41:00 CLOSE ADA-USDT SELL 0.884926 -0.000134 0.467464 -0.467464 CLOSE\n",
- "1 2025-09-10 16:41:00 CLOSE SOL-USDT BUY 222.892523 -0.000134 0.467464 -0.467464 CLOSE\n",
- "OPEN_TRADES: 2025-09-10 16:43:00 scaled_disequilibrium=np.float64(-0.7692304634456318)\n",
- "OPEN TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 16:43:00 OPEN ADA-USDT BUY 0.884720 -0.000617 0.76923 -0.76923 OPEN\n",
- "1 2025-09-10 16:43:00 OPEN SOL-USDT SELL 222.777794 -0.000617 0.76923 -0.76923 OPEN\n",
- "CLOSE TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 16:46:00 CLOSE ADA-USDT SELL 0.884994 -0.000156 0.399989 -0.399989 CLOSE\n",
- "1 2025-09-10 16:46:00 CLOSE SOL-USDT BUY 223.088812 -0.000156 0.399989 -0.399989 CLOSE\n",
- "OPEN_TRADES: 2025-09-10 16:47:00 scaled_disequilibrium=np.float64(-0.7681939842533855)\n",
- "OPEN TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 16:47:00 OPEN ADA-USDT BUY 0.885569 -0.000679 0.768194 -0.768194 OPEN\n",
- "1 2025-09-10 16:47:00 OPEN SOL-USDT SELL 223.083201 -0.000679 0.768194 -0.768194 OPEN\n",
- "CLOSE TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 16:49:00 CLOSE ADA-USDT SELL 0.886788 0.000077 0.280038 -0.280038 CLOSE\n",
- "1 2025-09-10 16:49:00 CLOSE SOL-USDT BUY 223.091338 0.000077 0.280038 -0.280038 CLOSE\n",
- "OPEN_TRADES: 2025-09-10 17:00:00 scaled_disequilibrium=np.float64(0.9138353726314972)\n",
- "OPEN TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 17:00:00 OPEN ADA-USDT SELL 0.890556 0.001519 0.913835 0.913835 OPEN\n",
- "1 2025-09-10 17:00:00 OPEN SOL-USDT BUY 223.834040 0.001519 0.913835 0.913835 OPEN\n",
- "CLOSE TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 17:02:00 CLOSE ADA-USDT BUY 0.890777 0.000451 0.140338 0.140338 CLOSE\n",
- "1 2025-09-10 17:02:00 CLOSE SOL-USDT SELL 223.794948 0.000451 0.140338 0.140338 CLOSE\n",
- "OPEN_TRADES: 2025-09-10 17:04:00 scaled_disequilibrium=np.float64(0.8694161409926541)\n",
- "OPEN TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 17:04:00 OPEN ADA-USDT SELL 0.890932 0.001273 0.869416 0.869416 OPEN\n",
- "1 2025-09-10 17:04:00 OPEN SOL-USDT BUY 223.807847 0.001273 0.869416 0.869416 OPEN\n",
- "CLOSE TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 17:50:00 CLOSE ADA-USDT BUY 0.887723 0.001537 0.436893 0.436893 CLOSE\n",
- "1 2025-09-10 17:50:00 CLOSE SOL-USDT SELL 222.927983 0.001537 0.436893 0.436893 CLOSE\n",
- "OPEN_TRADES: 2025-09-10 17:57:00 scaled_disequilibrium=np.float64(0.7626447046885739)\n",
- "OPEN TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 17:57:00 OPEN ADA-USDT SELL 0.887653 0.001937 0.762645 0.762645 OPEN\n",
- "1 2025-09-10 17:57:00 OPEN SOL-USDT BUY 222.575944 0.001937 0.762645 0.762645 OPEN\n",
- "CLOSE TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 18:01:00 CLOSE ADA-USDT BUY 0.887665 0.00091 0.454978 0.454978 CLOSE\n",
- "1 2025-09-10 18:01:00 CLOSE SOL-USDT SELL 222.885580 0.00091 0.454978 0.454978 CLOSE\n",
- "OPEN_TRADES: 2025-09-10 18:05:00 scaled_disequilibrium=np.float64(0.8262829519717096)\n",
- "OPEN TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 18:05:00 OPEN ADA-USDT SELL 0.887922 0.001621 0.826283 0.826283 OPEN\n",
- "1 2025-09-10 18:05:00 OPEN SOL-USDT BUY 222.791989 0.001621 0.826283 0.826283 OPEN\n",
- "CLOSE TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 18:08:00 CLOSE ADA-USDT BUY 0.886799 0.000663 0.499959 0.499959 CLOSE\n",
- "1 2025-09-10 18:08:00 CLOSE SOL-USDT SELL 222.676496 0.000663 0.499959 0.499959 CLOSE\n",
- "OPEN_TRADES: 2025-09-10 18:12:00 scaled_disequilibrium=np.float64(0.7664374593863723)\n",
- "OPEN TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 18:12:00 OPEN ADA-USDT SELL 0.886269 0.000673 0.766437 0.766437 OPEN\n",
- "1 2025-09-10 18:12:00 OPEN SOL-USDT BUY 222.344492 0.000673 0.766437 0.766437 OPEN\n",
- "CLOSE TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 18:15:00 CLOSE ADA-USDT BUY 0.885385 -0.000091 0.425496 0.425496 CLOSE\n",
- "1 2025-09-10 18:15:00 CLOSE SOL-USDT SELL 222.283748 -0.000091 0.425496 0.425496 CLOSE\n",
- "OPEN_TRADES: 2025-09-10 18:36:00 scaled_disequilibrium=np.float64(-1.4072429099710522)\n",
- "OPEN TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 18:36:00 OPEN ADA-USDT BUY 0.883996 -0.002189 1.407243 -1.407243 OPEN\n",
- "1 2025-09-10 18:36:00 OPEN SOL-USDT SELL 222.436718 -0.002189 1.407243 -1.407243 OPEN\n",
- "STOP LOSS: -0.5002537965329967\n",
- "STOP CLOSE TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 19:10:00 CLOSE ADA-USDT SELL 0.880598 0.0 0.0 0.0 CLOSE_STOP_LOSS\n",
- "1 2025-09-10 19:10:00 CLOSE SOL-USDT BUY 222.611141 0.0 0.0 0.0 CLOSE_STOP_LOSS\n",
- "OPEN_TRADES: 2025-09-10 19:11:00 scaled_disequilibrium=np.float64(-2.8588493049252)\n",
- "OPEN TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 19:11:00 OPEN ADA-USDT BUY 0.879860 -0.02348 2.858849 -2.858849 OPEN\n",
- "1 2025-09-10 19:11:00 OPEN SOL-USDT SELL 222.413615 -0.02348 2.858849 -2.858849 OPEN\n",
- "CLOSE TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 20:00:00 CLOSE ADA-USDT SELL 0.878445 0.002158 0.205766 -0.205766 CLOSE\n",
- "1 2025-09-10 20:00:00 CLOSE SOL-USDT BUY 221.354650 0.002158 0.205766 -0.205766 CLOSE\n",
- "OPEN_TRADES: 2025-09-10 20:37:00 scaled_disequilibrium=np.float64(1.0058726769192805)\n",
- "OPEN TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 20:37:00 OPEN ADA-USDT SELL 0.879982 0.001724 1.005873 1.005873 OPEN\n",
- "1 2025-09-10 20:37:00 OPEN SOL-USDT BUY 221.760958 0.001724 1.005873 1.005873 OPEN\n",
- "CLOSE TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 20:45:00 CLOSE ADA-USDT BUY 0.880463 0.00055 0.308519 0.308519 CLOSE\n",
- "1 2025-09-10 20:45:00 CLOSE SOL-USDT SELL 222.177482 0.00055 0.308519 0.308519 CLOSE\n",
- "OPEN_TRADES: 2025-09-10 20:54:00 scaled_disequilibrium=np.float64(-0.945619331271326)\n",
- "OPEN TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 20:54:00 OPEN ADA-USDT BUY 0.879453 -0.000924 0.945619 -0.945619 OPEN\n",
- "1 2025-09-10 20:54:00 OPEN SOL-USDT SELL 222.448781 -0.000924 0.945619 -0.945619 OPEN\n",
- "CLOSE TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 21:03:00 CLOSE ADA-USDT SELL 0.882105 0.000423 0.313357 0.313357 CLOSE\n",
- "1 2025-09-10 21:03:00 CLOSE SOL-USDT BUY 222.892964 0.000423 0.313357 0.313357 CLOSE\n",
- "OPEN_TRADES: 2025-09-10 21:12:00 scaled_disequilibrium=np.float64(1.5305708453509306)\n",
- "OPEN TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 21:12:00 OPEN ADA-USDT SELL 0.884020 0.001592 1.530571 1.530571 OPEN\n",
- "1 2025-09-10 21:12:00 OPEN SOL-USDT BUY 222.772128 0.001592 1.530571 1.530571 OPEN\n",
- "CLOSE TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 21:17:00 CLOSE ADA-USDT BUY 0.883344 0.000423 0.422399 0.422399 CLOSE\n",
- "1 2025-09-10 21:17:00 CLOSE SOL-USDT SELL 222.933113 0.000423 0.422399 0.422399 CLOSE\n",
- "OPEN_TRADES: 2025-09-10 22:03:00 scaled_disequilibrium=np.float64(0.8040248233221763)\n",
- "OPEN TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 22:03:00 OPEN ADA-USDT SELL 0.885924 0.000826 0.804025 0.804025 OPEN\n",
- "1 2025-09-10 22:03:00 OPEN SOL-USDT BUY 223.594840 0.000826 0.804025 0.804025 OPEN\n",
- "CLOSE TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 22:05:00 CLOSE ADA-USDT BUY 0.885907 0.000333 0.448001 0.448001 CLOSE\n",
- "1 2025-09-10 22:05:00 CLOSE SOL-USDT SELL 223.662537 0.000333 0.448001 0.448001 CLOSE\n",
- "OPEN_TRADES: 2025-09-10 22:16:00 scaled_disequilibrium=np.float64(0.9959689132983114)\n",
- "OPEN TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 22:16:00 OPEN ADA-USDT SELL 0.887109 0.000233 0.995969 0.995969 OPEN\n",
- "1 2025-09-10 22:16:00 OPEN SOL-USDT BUY 223.720985 0.000233 0.995969 0.995969 OPEN\n",
- "CLOSE TRADES:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 22:26:00 CLOSE ADA-USDT BUY 0.885579 0.000042 0.429289 0.429289 CLOSE\n",
- "1 2025-09-10 22:26:00 CLOSE SOL-USDT SELL 223.676085 0.000042 0.429289 0.429289 CLOSE\n",
- "539\n",
- "Created trading pair: ResearchTradingPair: symbol_a=ADA-USDT, symbol_b=SOL-USDT, model=VECMModel\n",
- "Market data shape: (120, 7)\n",
- "Column names: ['close_ADA-USDT', 'close_SOL-USDT']\n",
- "\n",
- "Sample data:\n"
- ]
- },
- {
- "data": {
- "text/html": [
- "\n",
- "\n",
- "
\n",
- " \n",
- " \n",
- " | \n",
- " tstamp | \n",
- " close_ADA-USDT | \n",
- " close_SOL-USDT | \n",
- " vwap_ADA-USDT | \n",
- " vwap_SOL-USDT | \n",
- " exec_price_ADA-USDT | \n",
- " exec_price_SOL-USDT | \n",
- "
\n",
- " \n",
- " \n",
- " \n",
- " | 538 | \n",
- " 2025-09-10 20:29:00 | \n",
- " 0.8791 | \n",
- " 222.00 | \n",
- " 0.879360 | \n",
- " 222.051406 | \n",
- " 0.879450 | \n",
- " 222.000906 | \n",
- "
\n",
- " \n",
- " | 539 | \n",
- " 2025-09-10 20:30:00 | \n",
- " 0.8799 | \n",
- " 222.09 | \n",
- " 0.879450 | \n",
- " 222.000906 | \n",
- " 0.879955 | \n",
- " 222.121269 | \n",
- "
\n",
- " \n",
- " | 540 | \n",
- " 2025-09-10 20:31:00 | \n",
- " 0.8799 | \n",
- " 222.11 | \n",
- " 0.879955 | \n",
- " 222.121269 | \n",
- " 0.879290 | \n",
- " 221.954027 | \n",
- "
\n",
- " \n",
- " | 541 | \n",
- " 2025-09-10 20:32:00 | \n",
- " 0.8792 | \n",
- " 221.88 | \n",
- " 0.879290 | \n",
- " 221.954027 | \n",
- " 0.879311 | \n",
- " 221.812188 | \n",
- "
\n",
- " \n",
- " | 542 | \n",
- " 2025-09-10 20:33:00 | \n",
- " 0.8791 | \n",
- " 221.81 | \n",
- " 0.879311 | \n",
- " 221.812188 | \n",
- " 0.878827 | \n",
- " 221.666779 | \n",
- "
\n",
- " \n",
- "
\n",
- "
"
- ],
- "text/plain": [
- " tstamp close_ADA-USDT close_SOL-USDT vwap_ADA-USDT vwap_SOL-USDT exec_price_ADA-USDT exec_price_SOL-USDT\n",
- "538 2025-09-10 20:29:00 0.8791 222.00 0.879360 222.051406 0.879450 222.000906\n",
- "539 2025-09-10 20:30:00 0.8799 222.09 0.879450 222.000906 0.879955 222.121269\n",
- "540 2025-09-10 20:31:00 0.8799 222.11 0.879955 222.121269 0.879290 221.954027\n",
- "541 2025-09-10 20:32:00 0.8792 221.88 0.879290 221.954027 0.879311 221.812188\n",
- "542 2025-09-10 20:33:00 0.8791 221.81 0.879311 221.812188 0.878827 221.666779"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "text/html": [
- "\n",
- "\n",
- "
\n",
- " \n",
- " \n",
- " | \n",
- " tstamp | \n",
- " close_ADA-USDT | \n",
- " close_SOL-USDT | \n",
- " vwap_ADA-USDT | \n",
- " vwap_SOL-USDT | \n",
- " exec_price_ADA-USDT | \n",
- " exec_price_SOL-USDT | \n",
- "
\n",
- " \n",
- " \n",
- " \n",
- " | 653 | \n",
- " 2025-09-10 22:24:00 | \n",
- " 0.8848 | \n",
- " 223.27 | \n",
- " 0.884698 | \n",
- " 223.240547 | \n",
- " 0.884810 | \n",
- " 223.331089 | \n",
- "
\n",
- " \n",
- " | 654 | \n",
- " 2025-09-10 22:25:00 | \n",
- " 0.8852 | \n",
- " 223.41 | \n",
- " 0.884810 | \n",
- " 223.331089 | \n",
- " 0.885393 | \n",
- " 223.542908 | \n",
- "
\n",
- " \n",
- " | 655 | \n",
- " 2025-09-10 22:26:00 | \n",
- " 0.8856 | \n",
- " 223.67 | \n",
- " 0.885393 | \n",
- " 223.542908 | \n",
- " 0.885579 | \n",
- " 223.676085 | \n",
- "
\n",
- " \n",
- " | 656 | \n",
- " 2025-09-10 22:27:00 | \n",
- " 0.8857 | \n",
- " 223.69 | \n",
- " 0.885579 | \n",
- " 223.676085 | \n",
- " 0.885577 | \n",
- " 223.739131 | \n",
- "
\n",
- " \n",
- " | 657 | \n",
- " 2025-09-10 22:28:00 | \n",
- " 0.8855 | \n",
- " 223.72 | \n",
- " 0.885577 | \n",
- " 223.739131 | \n",
- " 0.885378 | \n",
- " 223.716529 | \n",
- "
\n",
- " \n",
- "
\n",
- "
"
- ],
- "text/plain": [
- " tstamp close_ADA-USDT close_SOL-USDT vwap_ADA-USDT vwap_SOL-USDT exec_price_ADA-USDT exec_price_SOL-USDT\n",
- "653 2025-09-10 22:24:00 0.8848 223.27 0.884698 223.240547 0.884810 223.331089\n",
- "654 2025-09-10 22:25:00 0.8852 223.41 0.884810 223.331089 0.885393 223.542908\n",
- "655 2025-09-10 22:26:00 0.8856 223.67 0.885393 223.542908 0.885579 223.676085\n",
- "656 2025-09-10 22:27:00 0.8857 223.69 0.885579 223.676085 0.885577 223.739131\n",
- "657 2025-09-10 22:28:00 0.8855 223.72 0.885577 223.739131 0.885378 223.716529"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "image/png": "iVBORw0KGgoAAAANSUhEUgAABv4AAAPeCAYAAADEZ225AAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQABAABJREFUeJzs3Xd8W9X5P/DPuZLlJc94j8R29rCTECAJAdKEsBL2hhYKpWwoUCjrCxTaAm0o/BgByiqrzAIFQsIqq4w4gSQkzrQznNiO95a3dM/vj8OVrVi2JVuyZfvzfr14BUtX9x5dX11dn+c+zyOklBJERERERERERERERERENKxpQz0AIiIiIiIiIiIiIiIiIho4Bv6IiIiIiIiIiIiIiIiIRgAG/oiIiIiIiIiIiIiIiIhGAAb+iIiIiIiIiIiIiIiIiEYABv6IiIiIiIiIiIiIiIiIRgAG/oiIiIiIiIiIiIiIiIhGAAb+iIiIiIiIiIiIiIiIiEYABv6IiIiIiIiIiIiIiIiIRgAG/oiIiIiIiIiIiIiIiIhGAAb+iIiIiIiIRrjbbrsNixcvHuphDBv33HMPLrnkkqEeBv2strYWs2bNwtdffz3UQyEiIiIiCnjmoR4AERERERENX6+++ir+9Kc/IScnB//+97/dLjN58mTn/5tMJlitVqSlpeGQQw7BeeedhwkTJgxo/e7cdttt+OSTT7Bx40a3z8+ePRvHH388/vrXvzofKy4uxhNPPIEffvgB5eXliIyMREZGBubOnYvf/e53zuUuvPBCrFu3DgAghEBYWBji4+ORk5OD0047DQsWLHAu+/jjj2PFihV9jvfwww/HK6+84va5d999F7fffrvzZ4vFgpSUFCxYsABXX3014uLi+lz/UHA37qioKEyePBkLFy7EGWecAavV2q91b9iwAd999x1+/etfIzIy0ldDBgAUFRXh7bffxnPPPed8rLS0FO+88w6++uor7Nu3D5qmYdKkSbjqqqtwxBFHdFtHQ0MDHnzwQXz22WdobW1FdnY2brvtNkyfPt25TG1tLd555x18+eWX2L17N+x2O7KysnDxxRdj6dKlLutbu3YtLrroIrfjffPNNzFr1iyP3tvnn3+OFStWYNeuXRgzZgzOOOMMXH311TCbXacGvvvuO6xYsQLbtm2DxWLB/PnzccsttyAtLc2j7bz22mvIzc3F5s2bUVpaitNPP93ls9aVJ/sqJiYGZ511Fh599FEsXLjQozEQEREREY1WDPwREREREVG/rVy5Eqmpqdi8eTP27duHcePGuV1uwYIFOPXUUyGlhM1mw44dO/Dee+/h9ddfx80339xjdpWn6x+offv24ayzzkJwcDDOPPNMpKWloaKiAtu2bcOzzz7rEvgDgKSkJPz+978HALS0tGDfvn347LPP8MEHH+DEE0/Egw8+iKCgIBx77LEYO3as83XNzc245557cOyxx+LYY491Pu5J8O53v/sd0tLS0N7ejvXr1+P111/H119/jQ8//BChoaG9vvbPf/4zpJTe7BKfMcZtt9tRVVWFdevW4f7778eLL76IJ598ElOmTPF6nRs3bsSKFStw+umn+zzw9/LLLyM1NRXz5s1zPvb555/j2WefxZIlS3D66afDbrfj/fffxyWXXIL7778fZ555pnNZXddx+eWXY+fOnbj00ksRExOD1157DRdeeCHeffddZGRkAAB++uknPPLIIzj66KNx1VVXwWw245NPPsGNN96IXbt2dTvmABV0zs7Odnms6/HVm6+//hrXXHMNDj/8cNx1113Iz8/HU089herqatx7773O5b788ktcffXVmDZtGm666SbYbDa8/PLLuOCCC/Dee+8hNja2z20999xzaGpqQnZ2NiorK3tcztN9BQDnn38+XnnlFaxZswbz58/36D0TEREREY1GDPwREREREVG/FBUVOQMwd999N1auXIlrr73W7bIZGRk49dRTXR676aabcNVVV+Gvf/0rsrKyumXyeLP+gXrxxRfR3NyM9957D6mpqS7PVVdXd1s+IiKi2/u5+eab8Ze//AWvvfYaUlNT8Yc//AFTpkxxCWzV1NTgnnvuweTJk7u9vi9HH320M+hz9tlnIzo6Gi+88AI+//xznHTSSW5f09zcjLCwMAQFBXm1LV/qOm4AuOKKK7BmzRpceeWVuPrqq7F69WqEhIQM2fi66ujowMqVK3Heeee5PD537lx8+eWXLkGv888/H6eeeioee+wxl8Dfxx9/jI0bN+LRRx/FCSecAAA48cQTcfzxx+Pxxx/HQw89BACYMGECPvnkE5fj7YILLsDFF1+MZ599Fr/97W8RFhbmMo5DDz3UuU5vLV++HJMnT8Y///lPZ4ZfeHg4nn76aVx00UUYP348AODv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+eqrr+Lxxx/Hr3/9a1x++eUejdNQXFyM4OBgZxD21ltvdQlcGoGzqVOnAgDy8vJcgnzl5eUoKyvDOeec023dcXFxiIuLA6CO67Vr12LmzJnOrL4HH3zQpRSn0X/PG97uKyMDePz48V5vi4iIiIhotGCPPyIiIiIi8lhrays+/fRT/OIXv8AJJ5zQ7b9f/vKXaGpqwhdffNHnuurq6vD73/8eDocDV155pdfrj4qKwhFHHOHyn1Ea8OijjwYA/Otf/+q23VdffdVlGQD48ccfXUokGr7++msA8Cjw5XA48Je//AW7d+/GhRde6AxkBqLjjjsOUkqsWLGi23NGZt1xxx0Hk8mEFStWdMu2k1IOqM/amjVr8OSTTyItLQ2nnHIKAPRYovWll17q9lhoaCiA7uU/jXV0HW9jYyPeeecdj8Y1a9YsSCmxZcuWbs8999xz+Oc//4krr7wSv/71r3tcxwknnICqqip8+umnzsdqamrw8ccfY9GiRS6ZpqtXr8Zf/vIXnHzyybj99tt7XGdNTU23x3bs2IEvvvgCCxYscAbNZsyY4fJ5mDBhAgDVwzIrKwtvvfWWS3nO119/HUIInHDCCb3sFeD5559HZWUlLrnkEudjc+bMcdlWfwJ/3uwrQPV5jIiIwMSJE73eFhERERHRaMGMPyIiIiIi8tgXX3yBpqYmLF682O3zs2bNQmxsLD744AMsXbrU+XhhYSHef/99SCnR1NSEHTt24OOPP0ZzczNuu+02ZxCuv+s/2NSpU3H22Wfj5Zdfxr59+5xlOr///nt8/fXXOPvss136qD377LPYunUrjj32WEyePBkAsG3bNrz33nuIjo7uFuhpbGx0Zqy1trZi3759+Oyzz7B//34sW7YM119/fV+7ckjNmzcPp556Kl555RXs27cPRx11FHRdx/r16zF37lz86le/wtixY3HDDTfgoYceQklJCZYsWYLw8HAUFxfjv//9L8455xxceumlfW7rf//7H/bs2QOHw4GqqiqsXbsW3333HVJSUvDUU085g7VWqxWHHXYYnnvuOXR0dCAxMRHfffedS59Hw/Tp0wEA/+///T8sXboUQUFBWLRoERYsWICgoCBceeWVOO+889DU1IR///vfGDNmjNuSkgebM2cOoqOjsWbNGpcynp999hkefPBBZGRkICsry/m7NyxYsMCZHXf88cdj1qxZuP3227Fr1y7ExMTg9ddfh8PhcCmFuXnzZtxyyy2Ijo7G/Pnz8cEHH7is85BDDnEG02644QaEhIRg9uzZGDNmDHbt2oW33noLISEhuPnmm/t8XwBwyy234KqrrsJvfvMbLFu2DPn5+Xj11Vdx9tlnu2TQvf/++/j0009x2GGHISwsDN9//z0++ugjnH322Tj++OM92tYXX3yBHTt2AAA6Ojqwc+dOPPnkkwCAxYsXOz97nu4rw/fff49Fixaxxx8RERERUS8Y+CMiIiIiIo998MEHCA4OxoIFC9w+r2kafvGLX2DlypWora119uL67rvv8N1330HTNFitVqSlpeG0007Dueee68xKGsj63fnTn/6ESZMm4Z133sHDDz8MQGXu3XnnnfjlL3/psuwVV1yBDz/8ED/88ANWrlyJ1tZWxMfHY9myZbj66qu7ZTOVlZXhlltuAaB63SUkJGDWrFm45557ehx7oHnggQcwefJkvP3221i+fDkiIiIwY8YMzJ4927nM5ZdfjoyMDLz44ot44oknAKi+cgsWLOgxOHuwxx57DAAQFBSE6OhoTJo0CXfccQfOOOOMblmRDz30EP785z/jtddeg5QSCxYswLPPPoujjjrKZbmcnBxcf/31eOONN/DNN99A13V8/vnnyMrKwmOPPYZHHnkEf/vb3xAXF4fzzz8fsbGxuOOOO/ocq8Viwcknn4yPP/4Yv//9752PG0GswsJC5++9q5dfftkZ+DOZTHjmmWewfPlyvPLKK2hra0N2djYeeOABZGVlOV+za9cudHR0oKamxu3YHnjgAedxt2TJEqxcuRIvvvgibDYbYmJicOyxx+Laa6/1uJfkokWLsGLFCqxYsQJ//vOfERsbiyuuuALXXHONy3KZmZmor6/Hk08+idbWVmRmZuLee+/Fueee69F2AODTTz/Ff/7zH+fP27Ztw7Zt2wCo48cI/Hm6rwBg9+7dyM/P9+j3SEREREQ0mgnpSYd0IiIiIiIiolGgqKgIJ554Ip599lmXrD8aWvfddx9+/PFHvPvuu8z4IyIiIiLqBXv8EREREREREf0sPT0dZ555Jp555pmhHgr9rLa2Fm+//TZuuOEGBv2IiIiIiPrAjD8iIiIiIiIiIiIiIiKiEYAZf0REREREREREREREREQjAAN/RERERERERERERERERCMAA39EREREREREREREREREIwADf0REREREREREREREREQjAAN/RERERERERERERERERCOAeagHMNxVVjYO9RBohNA0gdjYcNTUNEHX5VAPh4hGGJ5jiMifeI4hIn/jeYaI/InnGCLyN55nyBfi4yM8Wo4Zf0QBQtMEhBDQNDHUQyGiEYjnGCLyJ55jiMjfeJ4hIn/iOYaI/I3nGRpMDPwRERERERERERERERERjQAM/BERERERERERERERERGNAAz8EREREREREREREREREY0ADPwRERERERERERERERERjQAM/BERERERERERERERERGNAAz8EREREREREREREREREY0ADPwRERERERERERERERERjQAM/BERERERERERERERERGNAAz8EREREREREREREREREY0ADPwRERERERERERERERERjQAM/BERERERERERERERERGNAAz8EREREREREREREREREY0A5qEeABEREREREREREREREY1MW7ZsxtVX/xZz587Hgw8+6ny8tPQAzj77FOfPoaFhSExMwuzZc3DOOecjPX2sx+vqyX333QObrREPPPCQy+MbNvyI3/3uSnz00ZeIiIiAw+HAa6+9go8+WomysjIEBwcjLS0dp5xyOk4++TTnuj766EMAgMlkQmRkFMaPn4AlS47H0qUnQ9M053p789hj/8Ahhxza59j7i4E/IiIiIiIiIiIiIiIi8osPP3wfZ555Lj788H1UVVUiLi7e5flHHnkSmZlZaG1txZ49u/Dvf7+Biy8+H3/72//DoYce7tW6+uuFF57F+++/ixtvvAVTpkxFU1MTdu7choaGRpfl5s49AnfccTd0XUdNTQ3Wrv0ejz76EL766nP89a8PIzt7Jt5//2Pn8o8++hCamppwxx13Ox+LjIzyyZh7wsAfERERERERERERERER+VxzczM+//wzPP/8y6ipqcLq1Stx0UW/cVkmKioKY8bEAQBSU9OwYMHRuP76q/DXv/4Zb775Hkwmk8fr6q9vv/0fTj/9LCxevMT52MSJk7otZ7EEOccaH5+AyZOnYPr0bFx//VX46KMPcfLJpzmfB4Dg4GB0dLS7POZv7PFHREREREREREREREREPvfFF59h3LgMjB2bgeOOW4pVqz6AlLLX12iahrPPPh9lZaXYuXP7gNblqdjYMdiw4UfU1tZ6/do5cw7DhAmT8PXXX/hkLAMVEBl/r776Kp5//nlUVlZiypQpuOuuu5CTk9Pj8i+++CJef/11lJaWIiYmBscffzxuuukmBAcHAwBsNhseffRR/Pe//0V1dTWmTZuGO+64w2Wdt912G/7zn/+4rPfII4/E888/7583SURENEI0NABWK6Dx9iEiIiIiIiIioiFTXi7Q3Dx42wsLAxITvQu0rVr1Po477kQAwNy589HUZMPGjev77HE3blwGAKC0tBTTps0Y0Lo8cd11N+Kuu27Fqacej8zMLMyYkYMjj1yI+fMXePT6cePGYffuXQMehy8MeeBv9erVeOCBB3Dvvfdi5syZeOmll3DppZfi448/xpgxY7otv3LlSjz00EO4//77MXv2bBQWFuK2226DEAK33347AODOO+9EQUEBli9fjoSEBHzwwQe45JJLsHr1aiQmJjrXddRRR+GBBx5w/myxWPz/homIiIYpXQc++MCMd98149JLO7BwoWOoh0RERERERERENCo1NgI33xwCHyW8eUTTJJ54ohUREZ4tv39/IbZt24r77/87AMBsNmPx4mOxatX7fQbrjEw+IYRH6yorK8OFF57tfP2FF17iVRnQzMwsvPzym9i5czvy8jbhp5824rbbfo8TTzwJt912V5+vV8MVHm/Pn4Y88PfCCy/gnHPOwZlnngkAuPfee/HVV1/hnXfeweWXX95t+Y0bN+KQQw7BySefDABIS0vDSSedhE2bNgEAWltb8emnn+LJJ5/EYYcdBgC47rrr8OWXX+K1117DjTfe6FyXxWJBfLxvGj8SERGNZK2twMMPW7B9uwmaJlFRERgXMkREREREREREo1FEBPD3v7cOesafp0E/APjww/fhcDhw2mknOh+TUiIoKAg33nhrr6/dt28vACAlJcWjdcXFxeGFF15zPhcZGQkACA8PR1lZabf122w2mEwmhIaGOh/TNA1Tp07H1KnTcc45F+CTT1bjz3++Gxdd9BukpKT2OV5jrENtSAN/7e3t2Lp1K6644grnY5qm4YgjjsDGjRvdvmb27Nn44IMPsHnzZuTk5KCoqAhff/01Tj31VACA3W6Hw+Fwlv00BAcHY8OGDS6PrVu3DvPnz0dkZCTmzZuHG264ATExMT5+l0RERMPfTz+ZsG2bCbfe2oY33ghCQwMDf0REREREREREQ8nbspuDyW634+OPV+Pa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++67GjVqlK666ir9/vvvDXx10C7YAIKcffbZ9owZMwJf+3w+e9y4cfazzz5r27Ztf/fdd/bAgQPt4uLiwJiioiJ7wIAB9g8//FCvazz++OP2aaedVu347Nmz7cMOO8yurKwMHHvkkUfsSZMmNWremlx++eX2bbfdVq+xAJpWe15nHn74Yfvmm2+233nnHfuQQw6p15wAmlZ7XGPWr19vDxo0yN6wYUO95gEQWu1xnfnss8/sQYMG2T6fL3Bs3rx59oABA2y3212vuQE0jba8xlS5++677QsvvDDw9cMPP2yffPLJQWNuuOEG+9JLL23QvACaRntcZ2py0kkn2U888USD5kX7QMUfsAe3262VK1dq7NixgWOmaWrs2LFasmRJYIxhGAoLCwuMCQ8Pl2maWrx4caOuv3TpUh166KFBc48bN06bNm1SYWFho+beW3FxsRISEpp0TgB1a8/rzIIFCzRnzhz9/e9/b9Q8APZfe11j5s+fr7S0NH399deaMGGCJkyYoNtvv10FBQWNihdAw7XXdebggw+WYRh655135PP5VFxcrA8++EBjx46Vy+VqVMwA6q+9rDF733NZunSpxowZEzRm3LhxWrp0aaPiBdBw7XWd2ZtlWSotLeX+7wGKxB+wh/z8fPl8PiUnJwcdT05ODvRwHj58uCIjI/XII4+ovLxcZWVleuihh+Tz+ZSdnd2o6+fk5CglJSXoWNXX9ekhXV+ffvqpli9frjPPPLPJ5gRQP+11ncnPz9f06dP14IMPKiYmplExAth/7XWNyczM1LZt2zRnzhw9/PDDmjlzplauXKnrrruuUfECaLj2us5069ZNL7zwgh599FENGTJEhx56qLKysvTYY481JlwADdQe1phff/1Vn332maZMmVLnvCUlJaqoqGhUzAAapr2uM3ubNWuWysrKdOKJJ+5/sGizSPwBDZSUlKR///vf+uqrrzRixAgdeuihKioqCnxCVJIuu+wyjRgxQiNGjNDJJ5/cwhEHW7hwof72t7/pvvvuU79+/Vo6HAA1aIvrzJ133qlTTjlFhx12WEuHAqAObXGNsW1bbrdbDz30kA499FCNGjVK999/v3766Sdt3LixpcMDsJe2uM5kZ2frzjvv1OTJk/X222/rtddek8vl0nXXXSfbtls6PAB7aM1rzNq1a3X11Vfrmmuu0bhx45rtugCaVltfZz766CM99dRTeuyxx6olOHFgcLZ0AEBrkpiYKIfDEdjItUpubm7QJzHGjRunL7/8Unl5eXI6nYqLi9MRRxwR2LT1/vvvD3xiy+ms/49ZSkpKtU92VH299ydB9seiRYt01VVXafr06Zo8eXKj5wPQcO11nVm4cKHmz5+vF154QZL/Jr1lWRo0aJDuuecenX322fs9N4D6a69rTGpqqpxOp3r16hU41qdPH0nS9u3b1bt37/2eG0DDtNd1Zvbs2YqJidEtt9wSOPbII4/oqKOO0m+//abhw4fv99wA6q8trzHr16/XxRdfrKlTp+rqq6+u17wxMTGKiIiod3wAGq+9rjNVPvnkE91xxx3697//HdTOFAcWKv6APYSFhenggw/WggULAscsy9KCBQs0YsSIauOTkpIUFxenBQsWKDc3VxMmTJAkdezYUT169FCPHj3UtWvXel9/+PDh+uWXX+TxeALHfvzxR/Xq1Uvx8fGNeGbSTz/9pCuuuEI333yzpk6d2qi5AOy/9rrOvPnmm3r//fcDv6677jpFR0fr/fff13HHHbff8wJomPa6xowcOVJer1cZGRmBY+np6ZKkLl267Pe8ABquva4zFRUVMs3gWyRVX1uWtd/zAmiYtrrGrFu3ThdddJEmT56sG2+8scZ5Fy5cGHTsxx9/5EMFQAtor+uMJH388ceaPn26/vnPf+roo4+ud0xof0j8AXu55JJL9NZbb+m9997Thg0bdPfdd6u8vDxoP7x33nlHS5cuVUZGhj744APdcMMNuvjii+v8tPnmzZu1atUqZWdnq6KiQqtWrdKqVavkdrslSaeeeqpcLpduv/12rVu3Tp9++qleeeUVXXLJJY2ad+HChbriiit04YUX6vjjj1d2drays7NVUFDQuBcLwH5pj+tMnz591L9//8Cvjh07yjRN9e/fv9EfXADQMO1xjRk7dqwOPvhg/e1vf9Pvv/+uFStW6K677tIRRxwRVAUIoHm0x3XmqKOO0vLly/Xkk08qPT1dK1eu1PTp09W1a1cNGjSoka8YgIZoa2vM2rVrddFFF+mII47QJZdcErjnkpeXFxhz7rnnKjMzUw8//LA2bNig2bNn67PPPtPFF1/cuBcLwH5pj+vMRx99pFtvvVW33nqrhg0bFhhTXFzcyFcLbZFh06weqOa1117TrFmzlJ2drYMOOkh33HGHhg0bFnj8H//4h9577z0VFhaqa9euOvfcc3XxxRcHejzX5sILL9SiRYuqHZ83b57S0tIkSatXr9Y999yj5cuXKzExURdccIH+9Kc/NWre2267Te+99161xw8//HC9+uqr+5wbQGi0t3Vmb++++64eeOAB/fLLL/ucF0BotMc1JisrS/fdd5++//57RUVFafz48br11luVkJBQ18sBIATa4zrzySef6Pnnn1d6eroiIiI0fPhw3XzzzYHWwgCaT1taY5544gk9+eST1Y537dpV8+fPD3z9008/aebMmVq/fr06deqkq6++OijJAKB5tbd1prbrnnHGGXrwwQf3GTPaHxJ/AAAAAAAAAAAAQDtAq08AAAAAAAAAAACgHSDxBwAAAAAAAAAAALQDJP4AAAAAAAAAAACAdoDEHwAAAAAAAAAAANAOkPgDAAAAAAAAAAAA2gESfwAAAAAAAAAAAEA7QOIPAAAAAAAAAAAAaAdI/AEAAAAAAAAAAADtAIk/AAAAAAAAAAAAoB0g8QcAAAAAAAAAAAC0AyT+AAAAAAAAAAAAgHaAxB8AAAAAAAAAAADQDpD4AwAAAAAAAAAAANoBEn8AAAAAAAAAAABAO0DiDwAAAAAAAAAAAGgHSPwBAAAAAAAAAAAA7QCJPwAAAAAAAAAAAKAdIPEHAAAAAO3Uli1bNGDAAL377rstHUqbsH37dg0ZMkSLFy9u6VCwyz/+8Q+dc845LR0GAAAA0GY4WzoAAAAAAG3TmjVr9NRTT2n58uXKyclRQkKC+vbtqwkTJujCCy8MGuvxePTGG2/ogw8+0MaNGyVJvXv31umnn64//OEPcrlcQeMnTJigfv366dlnn21QTFu2bNHEiRN1yy23aNq0adUenzVrlh5++GHNmzdPaWlpkiTLsvThhx9q9uzZ2rx5szwejzp06KBhw4bpvPPO0/DhwyVJP/30ky666KLAXC6XS3FxcerTp4+OOOIITZkyRUlJSYHHBwwYUK+YX3nlFY0aNarGxyZMmKCtW7cGvk5KSlKvXr10ySWX6LjjjqvX/C1hz7gNw1BMTIw6d+6s4cOH6+yzz9awYcP2e+7//Oc/6tu3r4499timCjfgqaee0rBhw3TIIYcEjn3++ef69NNPA9/nnTp10jHHHKOrr75acXFx1eaYN2+ennzySa1fv17Jyck688wzdfXVV8vp3P3f7wULFujDDz/Ur7/+qh07diglJUWjR4/W9ddfrw4dOgTNd+GFF2rRokXVrjNu3DjNmjWrXs+rqKhIjzzyiL744gtVVFRoyJAhuu2223TwwQcHjSstLdVjjz2muXPnKi8vT926ddOFF16o8847r17X2bhxo/73v/9p2bJlWrlypdxud9DP2t7q81r98Y9/1Msvv6x58+Zp4sSJ9YoDAAAAOJCR+AMAAADQYL/++qsuuugidenSReecc45SU1O1fft2/fbbb3rllVeCEn9lZWW64oortGjRIh1zzDE688wzZRiGvvvuO91///364osv9OyzzyoqKqpFnst9992n2bNna+LEiTr11FPlcDi0adMmfffdd+rWrVsg8Vflwgsv1JAhQ2RZlvLy8rRkyRI98cQTevHFF/XYY49pzJgxkqSHH3446LwPPvhAP/zwQ7Xjffr02Wd8Bx10kC655BJJ0s6dO/Xmm2/q2muv1d13360//OEP+zy3a9euWrZsWVAipbnsGXdpaak2btyoOXPm6K233tLFF1+s6dOn79e8zz77rCZNmtTkib+8vDy9//77evDBB4OO33nnnerQoYNOO+00denSRWvWrNFrr72mb775Ru+9954iIiICY7/55htdc801Ovzww3XnnXdq7dq1euaZZ5Sbm6sZM2YExj3yyCMqLCzUCSecoJ49eyozM1Ovvfaavv76a73//vtKTU0NiqFTp0666aabgo7tnSCsjWVZ+tOf/qQ1a9Zo2rRpSkxM1Ouvv64LL7xQ7777rnr27ClJ8vl8mjZtmlasWKHzzz9fPXr00Pfff68ZM2aoqKhIV155ZZ3XWrp0qV599VX17dtXffr00apVq2odW9/XKjU1VRMnTtQLL7xA4g8AAACoBxJ/AAAAABrsP//5j2JjY/X2229Xq3rKzc0N+vrBBx/UokWLdOedd+qCCy4IHD/vvPM0e/Zs3XPPPXrooYeCbvY3l5ycHL3++uuaMmWK7r333qDHbNtWXl5etXMOPfRQnXDCCUHHVq9erUsvvVTXXXedPvnkE3Xo0EGnn3560JjffvtNP/zwQ7XjdenYsWPQOZMnT9bxxx+vl156qdbEn9frlWVZCgsLU3h4eIOu11T2jluSbr75Zv3lL3/RSy+9pB49etS7kqw5fPjhh3I4HDrmmGOCjj/++OPVKjIHDx6sW2+9VR999FFQG8qHH35YAwYM0AsvvBBItkZHR+vZZ5/VRRddFEjyTp8+XYcccohMc/fuG0ceeaQuuOACvfbaa7rxxhuDrhcbG9vg75sqc+bM0ZIlS/Tvf/878H174oknatKkSXriiSf0z3/+U5K/snHJkiW6//77dfbZZ0vy/4xed911evrpp3XOOecoOTl5n9eaMGGCfv75Z8XExGjWrFn7TPzV97Wqivf6669XZmamunXrtl+vAwAAAHCgYI8/AAAAAA2WkZGhvn371tjqcM/kwI4dO/T2229r9OjRQUm/Kueff75GjRqlt99+Wzt27AhpzDXZsmWLbNvWyJEjqz1mGEadiY4qAwcO1N/+9jcVFRVp9uzZTR1mkNTUVPXu3TvQSrNqH79Zs2bppZde0rHHHqshQ4Zow4YNte7xt2HDBl1//fUaPXq0hg4dqkmTJunRRx8NGpOVlaXp06dr7NixGjx4sE4++WS9/fbbjYo9IiJCDz/8sBISEvSf//xHtm0HHps1a5bOPfdcjRo1SkOHDtWZZ56pOXPmBJ0/YMAAlZWV6b333tOAAQM0YMAA3XbbbZKkrVu36u6779akSZM0dOhQjRo1Stddd522bNlSr9i+/PJLDR06VNHR0UHHa2rDWlVtuGHDhsCx9evXa/369ZoyZUpQheV5550n27Y1d+7cwLHDDjssKOlXdSwhISHQCndvXq9XpaWl9Xoue5o7d65SUlJ0/PHHB44lJSXpxBNP1Lx58+R2uyUpsK/hySefHHT+SSedpMrKSs2bN6/OayUkJCgmJqbOcQ15rSRp7NixklSvGAAAAIADHYk/AAAAAA3WtWtXrVy5UmvXrt3nuG+//VY+n0+TJ0+udczkyZPl9Xr13XffNXGUdevSpYskf1VUeXl5o+aaNGmSIiIi9P333zdFaLXyeDzasWOHEhISgo6/++67eu211zRlyhTdeuutio+Pr/H81atXa8qUKVq4cKGmTJmi22+/Xccee6zmz58fGJOTk6MpU6ZowYIFOv/883X77bere/fuuv322/XSSy81Kv7o6Ggde+yxysrK0vr16wPHX3nlFR100EG67rrrdNNNN8nhcOj666/X119/HRjz8MMPKywsTIceeqgefvhhPfzww5o6daokafny5VqyZIlOPvlk3XHHHTr33HO1cOFCXXTRRXX+3Xo8Hi1fvrzanne1ycnJkSQlJiYGjv3++++SpCFDhgSN7dixozp16rTP6jfJ3w61tLQ0aM4q6enpGj58uEaOHKkjjjhCjz32mDweT71iXbVqlQYNGlQt0ThkyBCVl5dr06ZNkiS32y2Hw1Ftv83IyEhJ0ooVK+p1vfpo6GsVGxur7t2769dff22yGAAAAID2ilafAAAAABrs0ksv1eWXX67Jkydr6NChOuSQQzRmzBiNGjUqKHFQldgZOHBgrXNVPbZn9VRz6dChgyZPnqz3339fRx11lA4//HCNHDlSRx11VJ177+3N5XIF9mtrSl6vN9BydOfOnXruueeUk5MTtI+i5K+u/OKLL5SUlBQ4VlO123333SfbtvXee+8FEp+Svw1nlUcffVQ+n08fffRRIBH1hz/8QTfddJOefPJJnXvuuUF72zVUv379JPkrR6v+PHfu3KA5zz//fJ155pl68cUXdfTRR0uSTj/9dN19993q1q1btdaXRx99dLUWrMccc4ymTp2quXPn7jP5vH37dlVUVCgtLa1e8f/3v/+Vw+HQpEmTAseys7Mlqdr+fFXHdu7cuc85X375ZXk8Hp144olBx7t166ZRo0apf//+Kisr09y5c/XMM88oPT1djz32WJ2xZmdn69BDD612vGqPwJ07d2rAgAHq1auXfD6fli5dGjT+l19+CYxrKvvzWnXr1i0oUQwAAACgZlT8AQAAAGiwI444Qv/73/80YcIErV69Ws8//7ymTZum8ePHB7Xjq2pNuHf7xD1VPVZSUhLaoGsxc+ZM3XXXXUpLS9MXX3yhhx56SCeddJL++Mc/Kisrq0FzRUVF7Vc7xn35/vvvNWbMGI0ZM0ann3665syZo9NPPz0oUSdJxx9/fFDSryZ5eXn6+eefddZZZwUl/SR/a1PJv7fh559/rgkTJgT2Oaz6NW7cOBUXF2vlypWNek5Vf+d7vlZ7Jv0KCwtVXFysQw45JFAdVpc9z/d4PMrPz1f37t0VFxdX5xwFBQWSVGPr2r199NFHevvtt3XJJZeoZ8+egeMVFRWSpLCwsGrnhIeHBx6vyc8//6ynnnpKJ554osaMGRP02AMPPKBrr71Wxx9/vCZPnqxnnnlGU6ZM0WeffaalS5fWGW9FRUWNMVUdq6yslCSdcsopio2N1e23364ffvhBW7Zs0ZtvvqnXX3896Pk1hf15reLi4pSfn99kMQAAAADtFRV/AAAAAPbL0KFD9eSTT8rtdmv16tX68ssv9dJLL+n666/X+++/r759+9aY4NlbfZKDeysoKAhqdRgREaHY2Nh6n1+V5JIk0zR1/vnn6/zzz1d+fr5+/fVX/e9//9O3336rG2+8MZD4qI+ysrIGPY/6GDZsmG644QYZhqGIiAj16dOnxgRVfarVqqoR+/fvX+uYvLw8FRUV6c0339Sbb75Z65jGqOnv/KuvvtIzzzyjVatWBfadk4L/rvaloqJCzz77rN59911lZWUF7R9YXFxcrzn2PKcmv/zyi26//XaNGzdON954Y9BjVYnHPWOvUllZWWuF5IYNG3TttdeqX79+uu++++oV5yWXXKK33npLP/74o4YPHy63263CwsKgMUlJSXI4HIqIiKgxpqpj4eHhkvyVds8884xuueUWXXrppZKkmJgY3Xnnnbr11lsVFRUlyf867/161lS5ty/781rZtl3v7wUAAADgQEbiDwAAAECjhIWFaejQoRo6dKh69uyp6dOna86cObr22msD7TLXrFmjgw46qMbz16xZI0nq27dvva/55z//WYsWLQp8fcYZZ+jBBx8MJDFqq06q2uutatzeEhMTNXHiRE2cOFEXXnihFi1apK1bt6pr1651xuTxeJSenh5oXdlUEhMTNXbs2DrHNab15p4sy5IknXbaaTrjjDNqHDNgwIBGXWPdunWSpB49ekjyJ9SuuuoqHXbYYfr73/+u1NRUuVwuvfPOO/r444/rNee9996rd999V3/84x81fPhwxcbGyjAM3XjjjXUm9Kr2SywqKqp1zOrVq3XVVVepX79+evzxx+V0Bv93uir5lZ2drc6dOwc9lp2draFDh1abc/v27Zo2bZpiYmL03HPPKSYmpj5PNTB/VbJvyZIluuiii4LGzJs3T2lpaUpNTQ201txTVTvNqpafknTYYYfpyy+/1Nq1a1VWVqaBAwcGxlVVN3766aeaPn160FxVP8P1tT+vVVFRUY37HwIAAAAIRuIPAAAAQJMZPHiwpN1JhfHjx8vhcOiDDz6odY+1999/X06nU0ceeWS9r3PrrbcGJWmqkhdJSUmKjIzUpk2bajxv06ZNioyMrFcCYfDgwVq0aJGys7PrlfibO3euKioqNG7cuHo+i+bXrVs3SdLatWtrHZOUlKTo6GhZllWvhGNDlZaW6ssvv1Tnzp0DieG5c+cqPDxcs2bNCmr/+M4779R73qp9/G677bbAscrKynpV+3Xu3FkRERE17oko+fcivOyyy5SUlKT//ve/NVZ1ViW2ly9fHpS4ysrK0o4dOzRlypSg8fn5+br00kvldrv1+uuvByXg6lJVuVnV2nXgwIF68cUXg8ZUJdcGDhyoxYsXy7Ismebu3T6WLVumyMhI9erVK+g8h8MRlKT/8ccfJSnwvTBu3Lhq12qohr5Wkn+/yn3tFQoAAADAjz3+AAAAADTYwoULa6yi+uabbyRJvXv3luRPqJx55pn68ccfa2yZ+cYbb2jhwoU666yz1KlTp3pff/DgwRo7dmzgV1W1oMPh0BFHHKGvvvpK27ZtCzpn27Zt+uqrr3TEEUfI4XBI8lcXrV+/vtr8brdbCxYskGma6t69e53xrF69Wg888IDi4+N1/vnn1/t5NLekpCQddthheuedd6q9PlV/nw6HQ5MmTdLcuXNrTBA2ps1nRUWFbrnlFhUUFOjKK68MtG50OBwyDEM+ny8wdsuWLUH7RVaJioqqsTKv6u90T6+++mrQnLVxuVwaPHiwVqxYUe2x7OxsXXrppTIMQ7Nmzap1H8V+/fqpd+/eeuutt4Ku+cYbb8gwDJ1wwgmBY2VlZfrTn/6krKwsPffcc0F7Be6ppKSkWjtM27b1zDPPSFIgyRwfHx/08zB27NhAVesJJ5ygnJwcff7554E58vLyNGfOHB1zzDE17rO357jnn39eAwYMCCT+OnToUO1aDdWQ10ryt2rNyMjQiBEjGnwtAAAA4EBDxR8AAACABrvvvvtUXl6u4447Tr1795bH49Gvv/6qzz77TF27dtWZZ54ZGDt9+nRt3LhRM2bM0HfffReo7Pv+++81b948HX744UFVWlU2b96sp59+utrxQYMG6eijj641tptuuklTpkzRGWecoalTp6pr167aunWr3nzzTRmGoZtuuikwdseOHTrnnHM0evRojRkzRikpKcrNzdUnn3yi1atX649//GO1RM8vv/yiyspKWZalgoIC/frrr5o/f75iYmL05JNPNni/s+Z2xx136A9/+EPg9UlLS9PWrVv19ddf64MPPpAk/eUvf9FPP/2kKVOm6JxzzlHfvn1VWFiolStXasGCBUFtVmuTlZUVmK+srEwbNmzQnDlzAom0c889NzD2qKOO0osvvqjLLrtMp5xyinJzc/X666+re/fu1dpIHnzwwVqwYIFefPFFdejQQWlpaRo2bJiOPvpoffDBB4qJiVHfvn21dOlS/fjjj4E2nnWZOHGiHn30UZWUlAS13LzsssuUmZmpyy67TIsXL9bixYsDj6WkpOiII44IfH3LLbfoqquu0qWXXqqTTz5Za9eu1ezZs3XOOecEqhsl6eabb9ayZct01llnacOGDdqwYUPgsejoaB177LGSpJUrV+ovf/mLTj75ZHXv3l2VlZX64osv9Ouvv2rq1Kk6+OCD63xekyZN0vDhwzV9+nStX79eiYmJeuONN+Tz+fTnP/85aOwFF1yg4cOHq0ePHsrOztZbb72lsrIy/ec//wmqFqxNcXGxXn31VUnSr7/+KkmaPXu2YmNjFRcXpwsuuKDBr5Xkrzq0bVsTJ06sMwYAAADgQGfYdW12AAAAAAB7+fbbbzVnzhwtWbJEO3bskMfjUZcuXTR+/HhdddVVSk5ODhpf1c7www8/1KZNm2Tbtnr37q3TTz9d5513nlwuV9D4CRMmaOvWrTVe++yzz9b999+/z/g2bNigJ598Uj/99JMKCwsVHx+v0aNH65prrglKKpSUlOjdd9/VN998o/Xr1ys3N1dhYWHq37+/zjrrLJ199tmBqrSffvopaB81l8ul2NhY9enTR+PGjdOUKVNqrQaTpHvuuUezZ89u0H5oEyZMUL9+/fTss8/WOmbLli2aOHGibrnlFk2bNq3Gx2bOnBmUjF23bp3+/e9/66efflJlZaW6dOmiE088Uddff31gTG5urp566inNnz9fOTk5SkhIUN++fXXSSSfV2Ipx77ir/v4Mw1B0dLQ6d+6sESNG6JxzzqlxD7e3335b//3vf7Vt2zalpaXp8ssv19atW/Xkk08GvWYbN27UXXfdpeXLl6uioiKwv2NRUZFmzpypr776SpWVlRo5cqRuv/12XXbZZTr88MP14IMP7jPm3NxcjR8/Xg888IBOP/30wPF97Wd4+OGHBxJdVb788ks9+eST2rBhg5KSknTGGWfommuuCfoe39f3d9euXTV//nxJ/pae//jHP7R8+XLl5OTINE317t1bU6ZM0dSpUwPfm3UpLCzUww8/rC+//FKVlZUaMmSIbrnlFg0ZMiRo3MyZMzVv3jxlZWUpJiZGY8eO1Q033BBoEVuXqu+3up5Xlfq8VpJ04403Kisrq8aqYQAAAADBSPwBAAAAACDpb3/7m9LT00kwtSLZ2dmaOHGi/vWvfwUqIQEAAADUjj3+AAAAAACQdO2112r58uVB7TzRsl5++WX179+fpB8AAABQT1T8AQAAAAAAAAAAAO0AFX8AAAAAAAAAAABAO0DiDwAAAAAAAAAAAGgHSPwBAAAAAAAAAAAA7QCJPwAAAAAAAAAAAKAdIPEHAAAAAAAAAAAAtAMk/gAAAAAAAAAAAIB2wNnSAbR12dnFLR0C2gnTNJSUFK28vFJZlt3S4QBoZ1hjAIQSawyAUGOdARBKrDEAQo11Bk0hNTW2XuOo+ANaCdM0ZBiGTNNo6VAAtEOsMQBCiTUGQKixzgAIJdYYAKHGOoPmROIPAAAAAAAAAAAAaAdI/AEAAAAAAAAAAADtAIk/AAAAAAAAAAAAoB0g8QcAAAAAAAAAAAC0AyT+AAAAAAAAAAAAgHaAxB8AAAAAAAAAAADQDpD4AwAAAAAAAAAAANoBEn8AAAAAAAAAAABAO0DiDwAAAAAAAAAAAGgHSPwBAAAAAAAAAAAA7QCJPwAAAAAAAAAAAKAdcLZ0AAAAAAAAAAAAAGi/8vPzNWvWf/Tjj98rPz9PsbFx6tu3ny6++DINHTpckrR8+W96+eVZWrFiudzuSqWlddNJJ52qc875gxwOR2CuceMO1QMP/EPjxx9dr2tfe+2f1K/fAF1//V+Cjn/66Ud6/PF/as6cryVJFRUVeuml5zV//hfKyclWVFSUevbsralTz9ORRx4dmGvp0l8lSS6XS/HxCerff6BOPvlUHXXUhMC8DzwwY58x/d//fajOnbvUK/6GIvEHAAAAAAAAAACAkLnjjlvk8Xh0xx0z1KVLV+Xl5Wrx4p9VVFQoSfrmm69011236aSTTtMTT1yjmJhY/fLLIj399ONasWK57r33QRmGEdIYH3nkAf3++wrdeONf1bNnbxUWFmrFit9UWFgYNO7UU8/QZZddIZ/Pp507d+rbb7/S3//+N5144qm69dbbNXHicRo1akxg/O2336JevfrossuuCBxLSEgM2fMg8QcAAAAAAAAAAICQKC4u1m+/LdETTzyrESMOkSR16tRZgwYNliSVl5fr4Yfv07hx43XrrbcHzjv11MlKTEzSbbfdpPnzv9DEiceHNM4ffvhW119/s8aMGSdJ6ty5iwYOPKjauIiICCUnp0iSOnToqMGDh6hHj56aOfMeTZhwrA47bJTCwyMC451OZ9A5ocYefwAAAAAAAAAAAAiJyMhIRUZG6bvvvpbb7a72+KJFC1VYWKg//OHCao+NGzde3bp115dfzg15nElJyVqw4AeVlZU2+NwTTzxFsbFx+uabr0IQWcNQ8QcAAAAAAAAAANBGGVlZMvYjWbW/7Kho2R071nu80+nU7bf/XQ89dL/ef/9dDRgwQMOHH6KJE49X3779lJm5WZLUo0evGs/v0aOnMjMzmiT2fbnlltt1zz136qSTJqpv3/4aOnSYjj56YmAPwn0xTVPdunXXjh3bQh5nXUj8AQDQ3Gxb0ffPkHvceHmOntDS0QAAAAAAAKCNMoqLFHvzdZJtN99FTVPFTz0nOzau3qccffREjRkzTsuWLdHKlSu0cOGPev31V3TrrXcExtiNfA6//bZEN998XeDrv/71bzr++BPrff7w4SP11lsfaOXK5Vq+/DctXvyz/u///qdp067QxRdfVuf5tm2HfB/C+iDxBwBAM3OuWCbH6t/l6NZdnpYOBgAAAAAAAG2WHRun4n883vwVfw1I+lUJDw/XYYeN1mGHjdbFF1+mBx+8V7NmPavrrvuLJGnz5k0aMmRYtfPS09PVq1fN1YB7GjjwIL344uuBr5OSkiRJ0dHRKi0tqTa+pKRY0dExQcecTqeGDRuhYcNG6IILLtZLLz2vl156Xuef/0e5XK5ar+3z+bRlS6YOOmhQnXGGGok/AACaWdjczyRJRllZC0cCAAAAAACAts7u2FHNWO/XZHr27KXvvvtahx8+WnFx8frf/16rlvj7/vtvtGVLhi6//Mo65wsPj1BaWrdqx7t376lFixZWO75mzWp169Z9n3P26tVbPp9PbnflPhN/n332sYqLi3T00RPrjDPUSPwBANCMzKwdcv62RHI4ZdTwSSMAAAAAAACgPSksLNCdd96mk08+TX369FNUVJRWr16l119/VePGHaXIyEj99a/Tdffdt+uhh+7XWWdNUXR0tBYvXqSnnnpcRx89URMmHBc05/btW7Vu3ZqgY2lp3RUZGVnt+pMnn6V33nlLjz32iE45ZbLCwlz68cfv9eWXc/XQQ48Gxl177Z907LGTNHDgIMXHxys9faOeffYpjRx5aFBlYEVFhXJzc+Tz+bRz5059++1Xeuut1zV58tkaOfLQJn71Go7EHwAAzSjsi7myo2PkHTRYZn5eS4cDAAAAAAAAhFRkZJQGDRqsN998Xdu2bZHX61WHDh116qmTddFFl0iSjjnmWCUlJevll1/QNddcJrfbrbS0brrooks1Zcofqu2d98QTj1a7zlNPPa9hw4ZXO961a5qeeuo5Pffc07rhhqvl9XrUvXtP3XvvQxo9emxg3KhRYzRnzid67rmnVVFRoZSUFI0de6QuuSR4f7+PPnpPH330nlwul+Li4jVgwEGaMWOmjjrqmCZ4tRrPsBu7W+IBLju7uKVDQDvhdJpKTIxWfn6pvF6rpcMBEAoVFYr985VyH3u8jMpKOVcuV8lD/2qWS7PGAAgl1hgAocY6AyCUWGMAhBrrDJpCampsvcaZIY4DAADs4kjfJKO8TJ4xR8iOjmaPPwAAAAAAAABNisQfAADNxCgukiTZSUmyo6JllJa2cEQAAAAAAAAA2hMSfwAANBOjuFgyDNlR0bKjoyV3peT1tnRYAAAAAAAAANoJEn8AADQTo6TYn/AzTdlRUf5jZVT9AQAAAAAAAGgaJP4AAGgmZnGx7Jg4SZIdHSNJ7PMHAAAAAAAAoMmQ+AMAoJkYJcWyY2MliYo/AAAAAAAAAE2OxB8AAM3EKN4z8RftP1ZK4g8AAAAAAABA0yDxBwBAMwlO/Pkr/lRKq08AAAAAAAAATYPEHwAAzcQoKZYV69/jT1FRkmHIKCtp2aAAAAAAAAAAtBsk/gAAaCZGcZHsmNhdXxiyo6JkUPEHAAAAAAAAoImQ+AMAoDl4vTLKygKtPiX/Pn9GGXv8AQAAAAAAAGgaJP4AAGgGRqm/pacdExM45q/4I/EHAAAAAAAAoGmQ+AMAoBkYxcWSJLtqjz9JdnSMjDJafQIAAAAAAABoGiT+AABoBrsTf7tbfSoqilafAAAAAAAAAJoMiT8AAJpBTYk/OzqaVp8AAAAAAAAAmgyJPwAAmoFRUiQZhuzoPff4I/EHAAAAAAAAoOk4WzqA/fHss8/q888/18aNGxUREaERI0bo5ptvVu/evSVJBQUFeuKJJ/T9999r+/btSkpK0rHHHqvrr79esXtUWgwYMKDa3P/617908sknN9tzAQAcGMziYn/SzzACx2xafQIAAAAAAABoQm0y8bdo0SKdf/75GjJkiHw+n/71r39p2rRp+uSTTxQVFaWdO3dq586duvXWW9W3b19t3bpVd999t3bu3KnHH388aK6ZM2fqyCOPDHwdFxfX3E8HAHAAMIqLZccG/xtjR0XLKCtroYgAAAAAAAAAtDdtMvE3a9asoK8ffPBBjRkzRitXrtRhhx2m/v3764knngg83r17d91www3661//Kq/XK6dz99OOi4tTampqs8UOADgw+RN/sUHH7OhoyeuR3G4pLKyFIgMAAAAAAADQXrTJxN/eiouLJUnx8fG1jikpKVFMTExQ0k+SZsyYodtvv13dunXTueeeq7POOkvGHm3Y6mKahkyz/uOB2jgcZtDvANoXR2mxFB8np3P3z7gZFyvDMORyl8uOigjt9VljAIQQawyAUGOdARBKrDEAQo11Bs2pzSf+LMvSAw88oJEjR6p///41jsnLy9PTTz+tqVOnBh2/7rrrNHr0aEVGRur777/XjBkzVFZWposuuqje109Kim5QohCoS1xcZEuHACAUPBVS106KTIzefaxziuRyKMxpS3seDyHWGAChxBoDINRYZwCEEmsMgFBjnUFzaPOJvxkzZmjdunV6/fXXa3y8pKREV1xxhfr06aNrr7026LFrrrkm8OdBgwapvLxcs2bNalDiLy+vlIo/NAmHw1RcXKSKisrl81ktHQ6AJhaVky9v34Fy55cGjpleQ5Een8q3ZcuKSQrp9VljAIQSawyAUGOdARBKrDEAQo11Bk0hsZ6FA2068XfPPffo66+/1muvvaZOnTpVe7ykpESXXXaZoqOj9dRTT8nlcu1zvmHDhunpp5+W2+1WWD33WrIsW5Zl71f8QE18PkteL4s/0N7YRUXyRsUE/XwbYZGKsG1ZxSXN9nPPGgMglFhjAIQa6wyAUGKNARBqrDNoDm0y8Wfbtu6991598cUXevXVV9WtW7dqY0pKSjRt2jSFhYXpmWeeUXh4eJ3zrlq1SvHx8fVO+gEAUC9er4zyMtmxsUGH7Wj/p3SMsrKWiAoAAAAAAABAO9MmE38zZszQxx9/rKefflrR0dHKzs6WJMXGxioiIkIlJSW69NJLVV5erkceeUQlJSUqKSmRJCUlJcnhcGj+/PnKzc3VsGHDFB4erh9++EHPPvusLr300pZ8agCAdsgoLpKkaok/hYdLpkNGaUkLRAUAAAAAAACgvWmTib833nhDknThhRcGHZ85c6bOPPNMrVy5Ur/99psk6bjjjgsaM2/ePKWlpcnpdGr27Nl64IEHJEndu3fXbbfdpilTpjTDMwAAHEiM4mJJkh2zV+LPMGRHRckoLa3hLAAAAAAAAABomDaZ+FuzZs0+Hx81alSdY8aPH6/x48c3ZVgAANQokPjbu+JPu9p90uoTAAAAAAAAQBMwWzoAAADaO2NXu2lr74o/SXZUtIwyKv4AAAAAAAAANB6JPwAAQswsKZJMU4qOrvaYHR0lo5SKPwAAAAAAAACNR+IPAIAQM4qLZUfHSIZR7TE7KkZGWUkLRAUAAAAAAACgvSHxBwBAiBnFxTXu7ydR8QcAAAAAAACg6ZD4AwAgxIzCQtlx8TU+1ux7/Lndcqxd03zXAwAAAAAAANBsSPwBABBiRlGhrNoSfzExMkqbr9Wn8+v5ir73Lhklxc12TQAAAAAAAADNg8QfAAAhZhYWyI6vJfEXHSOjtFSyrGaJxbFhg2TbcmxY36DzjJJihc35VLLtEEUGAAAAAAAAoLFI/AEAEGJGUVHtib+YWMm2m63dp7l5kyQ1OPEX/r/ZinjtJZmb00MQFQAAAAAAAICmQOIPAIBQsiwZJcWy4uJqfNiOiZEkGSXN0O7T45G5ZYtkGHKsX1fv08zMDIV985Ukybl6VaiiAwAAAAAAANBIJP4AAAgho7hIsm3Z8Qk1Pt6sib/NmyWfT94hw+TYuL7ebTsj3nhNVoeO8vXpJ8caEn8AAAAAAABAa0XiDwCAEDIKCyVJdlxtrT53Jf6Ki0IfzIYNkmHIffREGSUlMndm1XmKY8VyOZctVcWU8+Q9eLC/4o99/gAAAAAAAIBWicQfAAAhVJX4s2pN/MX6x5U2wx5/GzfK6tJFvkGDJKle7T7DP/tYvl595D18lHwHDZJRXCRz+7ZQRwoAAAAAAABgP5D4AwAghMxdlXx2fM2JP4WFSWHhMoqLQx/Mhg2yevWRHRMrq2MnOTas3/d4t1vO31fKM2qMZBjy9u0vmaYcq38PfawAAAAAAAAAGozEHwAAIWQUFkph4VJERK1j7JgYGSUhTvz5fNKmTbJ69vR/2adfnRV/jrVrJI9b3qHD/AciI+Xr0UvO1atDGysAAAAAAACA/ULiDwCAEDIKC2TVVu23ixUTI6OkJLRxbN8mud3y9eolSfL16SvH5nTJ46n1HOfy32THJ8jq1j1wzDfwIDnWrApprAAAAAAAAAD2D4k/AABCyCwqlF3L/n5V7JjYkCf+HJs2SpKsHrsSf337Sj6vP/lXC9eypfIOGSoZRuCYd+BBMnNzZGRnhzReAAAAAAAAAA1H4g8AgBAyiopq399vFzsmRkZpaFt9mps2SZ06SdHRkiRf956SwynHpg17BGLLyMuVJBn5eTIzM+QdOjxoHt+AgZIkJ1V/AAAAAAAAQKtD4g8AgBAyCgtlxcXtc4wdHfpWn2ZmhrRrfz9Jksslq0sXmRmbA4ecPy1U7PVXy/XdN3KuWC5J8g4eEhxrTKzs2DiZ2TtDGi8AAAAAAACAhnO2dAAAALRnRn1afcaGvtWnUVgg9e8TdMzXvaccm/dI/K1dLdm2Ip97WlbHzvL17FVj7HZCgoyiopDGCwAAAAAAAKDhqPgDACBUbFtmYaHs+IR9D4uOkVkc2lafRmGhlBAch697DzkyMyTLkiQ5Nm6QZ/QR8ow9UuaObfIOGVbjXFZcnH8+AAAAAAAAAK0KFX8AAIRKebnk9dS9x19srFRZIXm9kjME/zR7vTKKi6XExKDDvu49JI9bZtYOWR06yrE5XZ5RY+Q+/gT5eveRZ9TomuONS5CZn9f0cQIAAAAAAABoFBJ/AACEiFnkr4qzYuvY4y8mRpJklBTLTkjc59j9YRQXSbZdreLP6tHDH+fmzZLHI3nc8vXuIzkcck86sfZ44+NlpG9q8jgBAAAAAAAANA6JPwAAQqRqHzx7r4Tb3uyYWP/4kpLQJP6q2nLuFYcdFy87IVGOjHQZFeWSYcjXo2ed81nx8TKKafUJAAAAAAAAtDbs8QcA8CspUdiXc/2VYfvg+uYrGdnZzRRU22YUFEiS7Lj6VvyVhCQOs9Afx96tPqVd+/xtTpdj00ZZXbpKERF1zmfHxvlj9XqbOFIAAAAAAAAAjUHiDwAgSXL9skgRL82SsXNnrWOM4iJF/vcZhc37vBkja7vM4kLJNAMVfbXZs9VnKAQq/mrYa9DXvYccGZvl2LjB3+azHqr2LDSKi5osRgAAAAAAAACNR+IPACBJMnNzJEmOLRm1jnH8/rv/9/SNzRJTW2cUFsqOjZMMY5/j7OjQVvwZhQVSdLTkclV7zOrRU0Z+nhyb0+Xr1bte8wUSf4W0+wQAAAAAAABaExJ/AABJeyT+MmtP/Dl/X+Efs3FDnS1B4U+MWTVU2VXjcMiOigphq89CWbXsM+jr3sP/B8snX+++9ZrPivPPZRaR+AMAAAAAAABaExJ/AABJkrEr8Wdm7CPxt3KFrA4dZZSVydyZ1VyhtVlGUWGd+/tVsWNiQ9fqs6BAdnxCjY9ZnTpLrjDJNHcnAetQ9Zyo+AMAAAAAAABaFxJ/AABJkpmTK6n2Vp9GXq7MHdvkPukU/7hNe7T7dLtDHl9bZBYVyY5PrNdYOzomZIk/s7D2xJ8cDvnSusmX1k0KC6vfhGFhsiOjZBSxxx8AAAAAAADQmpD4AwBIti0zN0dWl64yd2yXPJ5qQ5y/r5QkeQ4fLSsl1d/uU5Lj95WKu+JS/3kIYhQ2pOIvRkZpaYjiKAjsy1eTylMnq/K0Mxs0px0XJ7OwoJGRAQAAAAAAAGhKJP4AADKKiySvR54Rh0iWJXPrlmpjnL+vkNWtu+y4ePl69Q5U/IV9+bnkccv19fzmDrtVMwoLZO7Mkq9z53qNt2NiZRaHqNVnYYHsWvb4kyTv4aPkHT2mQXPacfEy2OMPAAAAAAAAaFVI/AEAZOZkS5K8w0ZIkhxbMquNcfy+Ut5BgyVJvt59ZG7aKKOoUK7FP8uOjVPYd99IPl/zBd3Kub77VjJNeQ6vX0LNjg3RHn8ej4zS0n0m/vaHHR/PHn8AAAAAAABAK0PiDwAgY9f+fla3brJSUmVmBu/zZ+zcKTMnW95BB0uSfL36yKgoV/jbb0mSyq6+TkZhgZxLf23ewFsr21bY1/PlOfRwKSamfqdER8soKWnyUKr24at1j7/9ZFHxBwAAAAAAALQ6JP4AADJzcyRXmOyYWFlp3eTYK/Hn/H2FZBjyDhwkSfL17CVJCvvqS3kOOVS+IUPl69FTYd981eyxt0aOdWtl7tgm99ET6n2OHRPrT/zZdpPGYhbm++dv6oq/uDiZVPwBAAAAAAAArQqJPwCAzNwcWckpkmHI16179cTfmlXyde8hRUf7D8TEyOrYSbJteY46RpLkOXqCnEt/lZGf19zhtzphX8+TldpBvoMH1/scOzZW8nqkysomjaWqHacdH9+k89oJCf5qwiZOVAIAAAAAAADYfyT+AAAycnNkpSRLkqzuPfzJuz3aTjrWrJZvwEFB5/j69JOdlCzvkGGSJPeYcZLpkOvHH5ov8NbG55Nj/Tq5flooz/ijJcOo96n2rqSqUVrapCEZBQWSYciOjWvSea3YeMnyySht+vakAAAAAAAAAPaPs6UDAAC0PDMnR1b37pIkX1o3SZIjM0O+gwbJyM2VuTMr0OazSsUfzpdRUSGZuz5DEhMj7+Ahci1ZLPfJpzZr/K2B67tvFPHqizLKymTHxcu9qxKyvuzYWEmSUVwkOzm5yeIyiwplR8dIzqb9J9+O8ycSjaIi2TGxTTo3AAAAAAAAgP1DxR8AwN/qMyVVkmR17iK5wuRcs0qS5Fy7WpLkGzgw6Bw7Mck/dg+ekYfIsXa1jJLiZoi6dXEuXSI7IVGld92r4sefkZ3UsOSdFZ8oSTILC5o0LqOgoMn395N27xlosM8fAAAAAAAA0GqQ+AOAA53bLaOo0L/HnyQ5nfKMPUJh87/0t65c9buszl1lx9W9R5x3+EjJsuRcvizEQbc+ZlGhfN17ytd/wH5V19kJCZJhyMjNbdK4jMJCWU28v58kWbtah5L4AwAAAAAAAFoPEn8AcIAz8/MkaXfiT1LlcSfIyMuV85ef5Vz9u7wDD6rt9CB2UrJ8PXrK+evikMTamhmFBbIbk2BzOGQnJMrMa9rEn1lYIHtXNWGTio6WHE6ZRQVNPzcAAAAAAACA/ULiDwAOcEZOjiTJTtmd+LN69pJv4CBFvP+2zG1b5atn4k+SvCMOkXPZEsnna/JYWzOjqPGVdVZScpMn/ozCwsYlJGud2JAdFyejqKjp5wYAAAAAAACwX0j8AcABzsz1J/6sxKSg45XHnygzM0OS5B3QkMTfSBmlpXKsW9t0QbZ2Xq+MkpJ6tUPdFyspScYeiT/Xgh8Ufc9djUqiGoUFsuITGhVXbaz4eFp9AgAAAAAAAK0IiT8AOMCZuTmyY+OksLCg495DDpWdlCwrJTWoGrAuvt59ZcfFy7n016YOtdUyivzJr8ZW1tnJKTLz8gJfO1Yul2PtarkW/li/Cdxuyevd/XVlpYzystBU/Emy4+JlFpH4AwAAAAAAAFoLEn8AcIAzc7JlpaRWf8DhUPm0P6ni3AsaNqFhyDtipFwLfpA8nqYJspWrqnprbILNSkySmZsr2bYkyZGVJUkK/+DdwLF9iXr8X4qc9Wzga+fq3yVJvh49GxVXbezERBk52SGZGwAAAAAAAEDDkfgDgAOcmZEhq3OXGh/zDhsh7+gxDZ6z8qRTZeblKuyLuY0Nr02oqnqz4hMbNY+dnCxVVkhlZf55d2yX9+DBMrdtlfPnRXWe78jYLNfCBVJ5uSTJtWihrI6dZHXr3qi4auPtP1COjM0ySopDMj8AAAAAAACAhiHxBwAHspISOdI3yjvo4Cad1uqaJvfRExX+wTtSSUmTzt0aBSr+4uIaNY+VlCxJMvPz/G068/PkOWK8vIMG+1/LfVX9eTwy8vMkj1uuxT9LPp+ci3+R57BRkmE0Kq7aeAcPlWxbzhXLQzI/AAAAAAAAgIYh8QcABzDnmlWSbcs7aHCTz1151jkyvD5FfPhek8/d2hiFBbKjoiSXq1HzBBJ/uTkys3b4j3XqrMpTJ8uxOV2OjetrPdfMzfEnBsMj5PrxeznWrJZRUizv4aMaFdO+2MnJsrqmybn8t5BdAwAAAAAAAED9kfgDgAOYc+UKWSmpsjt0aPK57YREVZ5ymsLmfiZj584mn781MQsLZcclNHoeOyFBMgwZeXkyd1Ql/jrJ16u3JMnIya09hmz/a1x57PFyrlimsPlfyk5Klq9Xn0bHtS/eocPlXPZbvfYgBAAAAAAAABBaJP4A4ADm/H2FfAc3fbVflcoTT5EdG6uIt94I2TVaA6Ow0J+0ayynU3Z8gsy8XJlZ22VHRsmOjZOioyXTIbO4sNZTzZ1ZkmnKfcJJkiTXwh9C2uazinfIUBn5eTK3bgnpdQAAAAAAAADUrU0m/p599lmdddZZGjFihMaMGaOrr75aGzduDDxeUFCge++9V5MmTdLQoUN19NFH67777lNxcXGN8+Xn52v8+PEaMGCAioqKmutpAECLMooKZW7JDEmbz4CICFWcPVWuhT/IsWFd6K7TwoyiAllx8U0yl5WULDMvV44d22V16uRP3BmG7Lg4Gfv4N8rIzpaVnCI7Mcm/954kz6GHN0lM++IdOEhyhcm5fFnIrwUAAAAAAABg39pk4m/RokU6//zz9dZbb+nFF1+U1+vVtGnTVFZWJknauXOndu7cqVtvvVUff/yxZs6cqe+++0633357jfPdfvvtGjBgQHM+BQBocY7ff5ckeQcdHNLreMYfLatbd0W8/lq7bQdpFhbKjm+ixF9ysozcXJlZWbI6dg4ct2Nj95n4M3fulJXqb9nqPuEk+QYOkm/AwCaJaZ/CwuQdMFDOZUtDfy20G64FPyjilRdbOgwAAAAAAIB2p00m/mbNmqUzzzxT/fr108CBA/Xggw9q27ZtWrlypSSpf//+euKJJzRhwgR1795dY8aM0Q033KD58+fL6/UGzfX666+ruLhYl156aUs8FQBoMc6Vy2V17io7MSm0FzJNVZx7vhxrVsn56y+hvVYLMZow8WcnJvlbfe7YLqtjx8BxKz5+34m/7J2yU1Ml+ffdK73jbslsnn/mvUOGybl6leR2N/zkdpoMxr65flog14/ftXQYbZPPp7AP32u36ykAAAAAAGicNpn421tVC8/4fdx0LSkpUUxMjJxOZ+DY+vXr9fTTT+uhhx6S2Uw3RwGgRZWWKuyLOQr77BO5flsS8mq/Kt6hw+UbOEjhH3/YLNdrVj6fjJLipmv1mZwiMztbRkG+rE57VPzFxMks3lfiLytQ8dfcfP0HSB63zB3bG3Sec9lSxV59uRwb14coMrRW5pYtMkpKpF3dGlA/RkG+omfeq4i33lDUY/+Q85dFLR0SAAAAAABoZZx1D2ndLMvSAw88oJEjR6p///41jsnLy9PTTz+tqVOnBo653W7ddNNN+utf/6ouXbooMzNzv65vmoZM09ivc4E9ORxm0O9AKDgX/ajwV16UwsMlh0P22LFyOpupKuykkxXx6D8UlrFJVu8+zXLN5mCUFMqQZCYlNslraaYmy/B6JMOQ0bVLYE4jMUHmls01X6O8XGZpqYxOHWuNIZRrjNGpgwzDkCs/V77evfwHKyv9v+Liaj4ne6einnlCKilR1Ouvqvzv9/j3M0T753bLsXOHZBgKK8iVFRfT0hG1DaWlirpruiSp4q675fric0U/9Zgq/nKrfMNHtHBwvI8BEHqsMwBCiTUGQKixzqA5tfnE34wZM7Ru3Tq9/vrrNT5eUlKiK664Qn369NG1114bOP7Pf/5Tffr00emnn96o6yclRcvgRiWaUFxcZEuH0LrZtvR//yedcooUFdXS0bQ9hblSz+7Sf/4jSQprzmsfe5T01myFfTdfOmSoVFQkffCBNGWKPxHZVhXslFwOhXXvLCVGN36+Xt0kl0OSFDawjxS/a84uHaSfyxRR0zUKs/0x9O1ZZwwhWWMSoqTIcIVVFO++/vNvSL/8Ij3zTPWEnscj3fuEFB8rXXet9Mgjili7Qho9uuljQ+uzaae0K0Ed5i5tmp+bA0HGeqmkSHriCYX37CmNOkS67z6FvTJLOqb17JfI+xgAocY6AyCUWGMAhBrrDJpDm0783XPPPfr666/12muvqVOnTtUeLykp0WWXXabo6Gg99dRTcrlcgccWLlyotWvXau7cuZIke9ceQ6NHj9aVV16p6667rl4x5OWVUvGHJuFwmIqLi1RRUbl8Pqulw2m1jB07FPXCS6pI7CDfoYe1dDhtTsT6TVJyB1Xkl7bI9V1HTVTYW2+o7LiTFfH4ozI3p6u89wBZzdRyNBQcGdsV4fGpzAiT3QSvq+GMVJTHJ0VFqdTnkHbN6TTDFZ5XoNLc4mp79znWpftjCI+pNYZQrzFRcQnybsqUe9f1I1avkyM9Q+W//Carb7+gsa733lHY2nUqv/s+WX36KmLAIJnP/ldlfQ6SnG36rQnqwblyjcI9Psk05d6wWZ6+g1o6pDbBuWaDwi2pNDoxsC64Bg5W2OJfVdpCa/qeeB8DINRYZwCEEmsMgFBjnUFTSKznh6fb5N0127Z177336osvvtCrr76qbt26VRtTUlKiadOmKSwsTM8884zC96omeeKJJ1RRURH4evny5frb3/6m2bNnq3v37vWOxbJsWZa9/08G2IvPZ8nrZfGvjVlcItu2ZZWU8jrtj+3b5T3ksBZ77XxHHi3XW28qcvotsh2mbNuWnZvXpv8ujbx82bYtT3Sc1BTPIzZBtiRfh07y+mxJu/6NiY5RmGXJV1Aoe6/9BM3tO2Q7XfLExNcZQ6jWGG9Siuyd2bvn3rFDtm3L/O47uXsGt3YNW75cniHD5e7RW/JaKjv3AsXccauMr76S55iJTR4bWhfH5gxZCYmyw8JkZ+1s0z//zcm5dZt8KR3klRn4OTdc4XK5PfJWuFtN0pz3MQBCjXUGQCixxgAINdYZNIc22VB2xowZ+vDDD/XPf/5T0dHRys7OVnZ2diCRV1JSoksvvVRlZWW6//77VVJSEhjj8/kkSd27d1f//v0Dv9LS0iRJffr0UXJycos9NwD7ZpSX+3+vKG/hSNogr1fmziz5OnVusRDsmFi5jzpGtsNU6fS7JFeYjIKCFounKRiFhbIjIqWwJmqc6nTKjouX1TG4kr0q2WcUFVU7xczeKSsltUX3yLNTUmTm5vi/8Hpl5mTLjomVa8EPkrXHG1rLkmPjBnn3qAK0evSUldZNjvRNzRw1WoJjS6Z8XdNkpabKyN7Z0uG0Geb2bbI6B6/fdniE/w+VlS0QEQAAAAAAaI1ax0eDG+iNN96QJF144YVBx2fOnKkzzzxTK1eu1G+//SZJOu6444LGzJs3L5DkA9D2GOVl/j+Uk/hrKHNnlmTbsjp3adE4Ki68WBXnnCtFR8tKTJRRWNCi8TSWWVggOz6+7oEN4D5mony9egcds+PiJPkTjUoLrnQ3s3fKSk1t0hgaykpJlfO3pf54crIl21blyacq4s3X5Vi5Qr4hQ/2Pbdsqo6Jcvj7B7T+t2DgZpS3frhChZ27dIu+IQ6SKcjk2p7d0OG2GucNfsR0kwt/RwqiskB3NXolofYy8XBkVFbK6dG3pUAAAAADggNEmE39r1qzZ5+OjRo2qc0xTnAOg+Rll/sSfsUfiz9ycrrBvvlLFRZe0VFhtgrl9myTJqmFP1GblcEi7blDb8Qky8/NbNp5GMgqrt95srMqzp1Y7ZsXuSvwVF1d7zMzeKe+Ag5o0hoayUlL9SVy3W2bWDkmSZ/QRCvt6vsIWfK/yXYk/x/p1kmFUT2xGR8soqf7c0M643f7K47RuMgsLZP6yqKUjahu8XpnZO+Xba/2uqvgzKitF43m0RpEvzZKZtUMlD/1r3wNLSwPvDQAAAAAAjdMmW30COHAFEn977NHpXLFcYZ9/JqOosKXCahPMHTuk8AjZCYktHUqAv+KvrSf+CmQlJIT+QlFRksMps6gg+Lhty8zOltWhY+hj2AcrOUWSZObl+hN/Dqfs5GR5xhwh58+LJLdbkuTYsN5f+REVFXS+HRMro7Sk2eNG8zK3bfVXHqd18yeLS0qo4K4HM3unZFmyOgVXbNsRu1p98hqiNXK75Vyx3P9zv4+KbjN9k+KuukxGVlYzBgcAAAAA7ReJPwBtStXefoGWn5KMMv/NJDMzs0ViaivMHdvk69y5RfeB25sdnyCzLe7x5/XKuWypjKJCGUVNX/FXI8OQHRdXbY8/c+sWqbJCVmqH0MewD3aKP/FnZGfL3LnTH49pyjNuvIzyMrkW/ihJcmxYJ1/fftXPj472J4HQboTN/UyRzzwZdMyxxb9O+7p0DXzPmjnZzR5bWxOo2N5rjz9F7K74A1ob56qVkrtSsm05Nm6ofdya1ZLlkyNzczNGBwAAAADtF4k/AG3Lroo/7VHxV1UF6MjMaImI2gzH9u3VqkVamp2QIKOg7VX8Rbz2sqIefkCxV18uR2ZGk+/xVxtr78RfRYWinnhUVueu8g4d1iwx1MZKTpEMQ2ZujsysHbI6+isQrU6d5R06XGFfzJEqKuTIzJC3T99q5zdpxR9JkFbBtWihXD98KyM3N3DM3JIpOylZioqStStZTOKvbub27TVWbNvhu/b4q6DiD62P89fFslJSZUdFyblxfa3jHJs3Sdr1fQ4AAAAg9Hw+/y+0WyT+ALQpu/f4K6t2jE+K75u5fVvL7++3Fysh0V/l5fW2dCj15vrhO4V9OVcVU89X+VV/lnvi8fIcPrpZrm3Hxsko3pX4s21FznpOZk6Oym74S6Dyp8U4nf4KzpzsXYm/3d9r7kknyrFpoz/5Z9vy9amh4i8mxv+z3Mg3nuamjYq74lI5Vq9q1DxoJMuSI91/M9+14IfAYcfWLfKldZMk2YlJ/va1JP7qZO7Y7t/fb6+K7ao9/lTpboGogH2wbbmWLJZ35KHy9e7j39+1FuautcKxY1tzRQcAAAAcsByrflfsn69U+P/9b/dB21bYF3PkXPzzPtv0o+0g8QegTdmd+Nuj4m9XEpBWn/tQVubfi65z66v4kySjsG3sz2hmZihy1nPyHDFe7lNOk+eII1Vx8TRZuxIZoWbHxcvcVfHn+mmBXAu+V/llV8jqmtYs16+LlZIqs6rV5x6JP+/Q4bI6dlbEu29LYeE1vl52TIwkNa7qz+tV5PP/kbwemTuoHGlJ5vZtUmWF7KRkuRZ87z/o9cqxaePuv3/DkJWSIjObxF9dHDtqqdiuavVJxR9aGTMzQ0ZerrwjRsrXu68/8Wfb1Qd6PHJs2SKZpn8v4r0YxUVyrF1T87kAAAAA6s+2Ffbxh4qeeY+MsjI5ly0NPOTYsF4RL7+gqEcfUdyVl/o/uI02jcQfgDalKslXY8Xf1i2BG0Ou77+V85dFTXLN8Hf/z7+PWhtWlQSptj9UC7PiEyRJZkFeywZST+EfvCcrMUnll17eInsl7rnHn3PxL/L16iPPmCOaPY7aWCmpcqxfK3k9sjrsseegYch9/AmSxy1f7z6Sw1HtXDu6KvG3/58sC/vsYzkyNktOl8zCgv2eB41XtZ9XxdlT5dicLnPrFoV/9L6MoiK5x40PjLNSU2VQ8Vcnc/u2mtdv05RcYezxh1bHtWSxFB4h78BB8vXtJ6O4SEZOTrVxZmaGZPnkHTw0sJelJDnWrVX03/6q2KsuU/Q9d8qxYnlzhg8AAAC0L2Vlinz8X4r432uqPOlUlV90sX/LpKp7qmtWS2HhKnnkMXkPHizX99+1cMBoLBJ/ANoUo9xf1WDsscefykr91UWVFTJ3ZkmWpYjZryjsm68af0GPR+Hv/p9cC39s/FwtyJHl/xS9r2PrSvzZif79qoyCgpYNpJ4cmzbIO2KktGtfreZmxcXJKC6UbFvONavkO2hQi8RRGyslReau7zWrU/D3mvvIo2RHRsnbr3+N59qxsZIko7h4v65t7tiuiHf+T+4TT5HVoUObqSJtrxybNsrq1EWe0WNlR0Up/J3/U/j776rylNNkde8RGFdVJYp9qKiQUZBf7Weqih0RQcUfWh3nkl/lGTpMcrnk6+tv7+zcUL3dp2NzumQY8hw+WkZRYaCtUNhnH8uorFT5FdfISkmVa9HC5gwfAAAAaDfM7dsUc+d0OVcsV9mNf1XluefLN+Agybbl2ODfi9u5+nd5+/WT1bmLvMNG+j9U3Ya25UF1JP4AtClG2a5qoPLyPY6Vydd/gCT/J8cda1b7P1leVlbTFA27Xn6+f96dOxs9V0syt2+THRsnRUe3dChB7Lh4yTRltIXqrNJSmVk75OvRs8VCsOPiZZSUyNyZ5W+hNvCgFoulJnZKiv8PhiErJTX4wagold73oCpPO6Pmc3d9bwZafZaWKvq+u2Xk5dbr2q4fvpMdHqaKs6b4944k8deiHBs3yNertxQWJu9ho+RatEBWagdVTj4raJyd2kFmds3rq1FYoOh77pKRW7/vgfaqroptOzxc2vPDMEALM4oK5diwTt7hIyX5/+3yV4Svk1FSrKhHZga6MjjSN8nq0lW+XR8IcGRt93+4Ze0aeQ4bJc+RR8l7+Gi5Fv8sWVaLPScAAACgrTB3bN/dKt/nU+STj0mSSu97UN5DDpMkWV26yo6OlnP9Wn8CcM0q+Qb6P1zu691H8rhD2/2stFRRDz8gx8b1obvGAY7EH4A2xSgv9yc/KsoD/4gZ5WXydekqOyZGjswMuX7+yX+8rPGb0Zr5/haUbX2/MHP79la3v58kyTD8+9btSrC2Zo6MzZIkX89eLRZDVVWcc5H/e7wq4d1aVCX7rKRkyeWq/njHTlJkZI3n2jG7Kv5K/Ik/R2aGHKt/l3PN6npd29ySKV+PXlJ4+K69EEn8tRifT47N6f7/LEhyHzVBdkSkyi+7QgoLCxpqpaTKKCmW67tvFPHi8/72Iru4Fi6QY+1quZb80qzhtzaOXf/+1FqxHRFBq0+0Ks7flkq2Le/wEYFjvj795Fi1UlEPPSDnb0sU8fqr/rUifZN8PXsHKlrNHTtk5OTIKMgP/BvnOfRwfzJx3dqWeDoAAABAm+Fc/ptibr5eEW+85t/T79OP5MjYrPJr/uy/J1PFMOTrN0COtWv8+3OXlck7wP/hcl+PnpJhyLFpY2iCtG1FPfe0HOvXyoqND801QOIPQBtTXi4rOdmf9KuslGzbX9kXFSWrWw+ZVYk/02zUXmFVdlf8ZTV6rhZT1RayBRNW+2IlJLSJVp+O9E2SK0xWl64tFoO9a09E16KFsrp1DyTLWotA4m/PN5P15XJJ4RGBxF8g6V7PT5g5MjJkdesuSbLj49tGFWk7ZW7d4t/PsVdvSf4EdfF/ZslXQ4Wq1cn/vRL57FMK+/ZrRbz1RuCxqg9xOFauaIaoWx/HiuWKfPoJRbz8gr86OiamxnF2eISMSir+0Ho4l/wqX+++gX+zJMnXt59/v8+s7Sr/09Uyd2bJ9cN3cmRs9r8/iYqSHZ8gc/s2Odet8Z+zqzW0r19/2QmJgTUBAAAAQM3CPvtEdkyMwj79SBEvPKeId9+W+4ST5evdt9pYX7/+cqxfJ+eq3yWHM9CiXxERsrp0lWPjhtDE+MlHci7+WeVXXCM7NbXuE7BfSPwBaDtsW0ZFuezEJEn+Sj9VVEi2LTsqWr5u3eVa8quM/Dx5h49sksRfVfLBKC4KbHjb1piZGTLycuUZcUhLh1IjOyFRZkEbqPjbvEm+bt0lh6PFYqiq+HNs2hD4JFZrsjvx13G/zrejo2WU+Pf4M/J2Jf62ba37xMpKmTt3+P9+JFnx8f69otAiHBs3+D89uOeHDZzOGsf6evdV6fS7VPzEf1T+p6vkWLNK5vZt/uqeNatkdego56qVu9uUNDfbltESexCWlCj6Xw/Lkb5R7qOOUdnNt9Y61I6MkMpJ/KGV8HrlXLbUvx/unoeHj5CvR0+V3Xq7POOPlnf4SEW8/or/QwK7WmhbnbvI3L5djrVrZHXq4m9RLvn3ADzkMDl//qnl1gIAAACEVkv936sNMHJy6nWPw9y+Tc5lS1Vx3kWqOPcChX01T1ZCgirOmlLjeG+/ATLKyxQ273N/x549OvT4eveRY1PTJ/5cP36viLdeV+WpkwNtRxEaJP4AtB1lZZJty0r27yNmVFQE9vGzo6LkS+smedyyY+P8Sa7KCsnna9QlqxJ/Utut+nMtWSyFR9RYbdMatKWKv5bc30+SrLjdLRC8u3qvtyoREbJSO8jaz9fJionZXfG3a28/Rz0q/hxbM/1rQ7duknbvhchG1C3DsXGDv7VwRETdgw1DvoMHy05MkueQw2RHR8v1zVdy/vKzJKli6vn+fS03p4c26Fo4f16k2L9cF/L/gDo2rFPYl3MDX4d985Xk86n09r/7N16v4dOZuweHU/GHVsOxepWMivJqHzayOndR6f0Py9fH/yniyslnBdb7qn9bfZ06ydyxTY51a+Tr3z/ofM9ho2Tm5oTk5gMAAABanmPNasXedK2MnJyWDqVVMbKzFXvrTYq9+nLFTL9ZEa+9LOevv9RYnBD2xVz/PdHRY+U+5TSVX3O9ym78a63/N/f17iOZpsxtW+Xd656hr1dvOTIyJI+naZ6I16uIl19Q5NOPyzNmnCrPnto086JWJP4AtBlGebkkyUraXfFnlO9K/EVGyereQ5LkOeRQ2btaolU9vt/XzMuTleZPJphZbTPx51zyqzxDh9W451prYMcnyGztbRndbpnbtsrXq4XbpUZESE7/36NvQOva369Kycx/yD3huP06146JDdwINgL7a+6oM4FvZmb6E0hddyX+4v0JUqr+WoZj08bA/n4NEhYmz9gjFfbdN3L99KO8Bx0s78hDJFeYnL+vbPpA68GRkS5ZPoV9Mz+k1wn79BNFvDRLjhXLJctS2Bdz5Bk9NqhVYm3siEj2+EOr4Vr6q+yExDo/AOLr20/ewUP8raGjoyVJVqcucmzdKkfGZnn7Bf8b5ztokOyYGDl/XRyq0AEAANCCzJ1Zkm3LsXlTS4fSeti2Il94TnZ0tMr/dLV8PXvJtWihov71sOL+fKXMjM27x5aVKeybr+SecGygcs8z5ojAvdIaRUTI18N/n2vvYgFf776SzytH5uaazmzQc3Au+kkxf/urwuZ/qYqLp6n8ymtatJvWgYLEH4A2I5DkS0r2HyivXvFnde4qz1ETZEf5byI1tt2nWZAvX1p32VFRMnfuaNRcLcEoKpRjwzp5W2mbT0myExP9FX+tuH2XI3OzZFmyWnqfRMOQHRcnq2PnQMvbViciQjL37+2FHRMjo9Tf6tPMzfVX9/q8dVbbOjIzZHXoGPgUWyDxV0jir9n5fLv27Oq9X6e7jzpGRmGBnCtXyHvoYZLLJe+AAXL+3vT7/IV99onCPv9sn2PMbdv8Y7/9WrKsJo+hinPdGskwFDnrWbkW/igzJ1vuSSfU61w7PNxf4Q60NNuWc8lif7WfYdQ5vPzKa1V2w82Br63OnSWPW7Jt+frv9eEWh0O+nr3lyGjkjYeGKC/3t5QHAABAyFX9/92RmdHCkbQerh++k3P5byq/5DJ5xh+t8iuuUfG/n1bJPx+XlZikiDdeC4wNm/e55PHIPbFhH8T29esvGUb1D9517yGZphybNu7/E7BtRc28V1GP/1NWUpJK7r5P7mMn1ev/Cmg8En8A2ozdFX/+xJ9RUR5U8aeICJU88qh8/frL3vXpcTUy8Wfk58lOSpLVsZPMrLaX+HMuXSJJ8g4b3rKB7IMVnyBZvsDebq2RI32TZJrypXVv6VBkdewk75ChLR1GSNjRe7T6zM+Tb/AQ/5/raPdpbskIVOZKkhWf6D9OxV+zM3dsl3zewH6LDWX17BXYG9Bz6OGSJO+gwf7Nxpu4dWvY3E8V/s5bkttd6xjH9q3y9eotIy9XzhXLmvT6VYzcXBl5uaqYer7MggJFPvu0fH3777u9554iI2Wwxx9aAXPHdplZO/yVuvVgJyTK2mOtsDp19h+PipLVpWu18VbXtEAyvjlEPfVvRT73TLNdDwAA4EBW9f93M4PEn5GTI9e3XyvitZfkGX1E8If5DUNWx06qmPoHOZf/Jufy3+RYv04Rb78l9/En7C6WqCf3pBNVPu0KKSoq+IGwMPnSusmxcf9b7Rt5eXL+vkLll16ustvulNVr/z4gjP1D4g9Am2GU+ZN4gcRfefnuir+qRN8udvSuVp+NSfzZtsy8PFmJSbJSO8rcuXP/52ohzqW/yte7b73axbWUqso1Iz+/hSOpnZmeLqtrWtBGxy2l9KZbVHHehS0dRkjYVXv8WZaMgnz5evX2V9tu27rP8xwZGUGJJjsuThIVfy2h6tOZVvf9T5JXnnmO3CecHPgPi2/QYKmywp+AbyJGUaHMnGwZpaVyLf655kG2LXPHDnnGHimra5pcX3+1X9eKvvfvci34odbHnevWSJI8R45XxZnnSD6v3JNOrPf8djh7/KF1cKxaKZmmvAcdvF/nWx07+ds29+1f46eAfV27+rsvNMf+rZWVcq5YTqspAACAZhKo+NtyYCf+wj56X7E3XK3I/z4jq3NXVVx0cY3jvIceLl//gYp47WVFPf4v+Xr3UcW55zf4elbHTvIcPaHGx3y9+8hsRMWfuWO7f55Bg/d7Duw/En8A2oyqij87Pl5yOP17/JWV+tsKhocHjbV3fVLFqGGz23pfr7RE8rj9ib+OHdtexZ/XK+ey3+QdMbKlI9kna1dSsjH7/DnWrFbEi883TUA1zZ++KVCF1OIiI1tFAjIU7JhYGaWlMgoL/K1Vk5Jlde4qx9baE39GUaGMosLgakyXS3ZUlH+eNsC5/Dd/5Vk7YGZslh2fIDs2br/n8I48VBUX/DHwta9Xb9kRkXKuXN4UIUqSHBvWS/L/J8dVy/59Rk6O/9+ALl3kPnqiXIt/llFc1LALlZTIsWaVnL/UklyU5Fi7RlbHTrLjE+Q++VSVTr9LntFj630JOzyCVp9oFZzr1/k/hLGr7XLDJ3DKO+hgeQ49rMaHrc5dJcsK3EAIJefq3yWvx99qeh9VwQAAAGgaRlGBZBj+93oeT0uH02LCfvxe3kMOU/Ezz6v07/fKjouveaBhqOK8C/0dkjwelf35BsnpbNJYfH36yZGZsd8duhw7tkmmQ1ZKapPGhfoh8QegzTDKSv2fAA8Plx0Z4d93paxMdmRk9U+GR0VJhhGoEtyv6+2qQAu0+szLbVNvPszsnTIqyqv16W5tAvuxFRTs3wQ+nyJnPevvZx6KKgCvV47MjMCGxwgdOzpaRnmZzJwcSf7qXistbZ8Vf2Zmpn/sXhVmdlyCzDZS8ef69huFfTGnpcNoEo4tmfJ161b3wAZN6pDVo6fMLftu+dqgKdevkx0bp8rTz5RzxXIZ2dnVx2zzX8/XJU2ecUdKlk/Oxb807Dq72tQ6Nqyrfcy6tf4KJ8nfUvjgwQ3b8yAiXEZFZaveJxXth1FcpLBPP67x31vH+nX1b1Fbi7Lpd8kzoeZ9Say0NElq0rWgNs7ly/w/h7bdLIlGAACAA51ZWOj/wLVl1bndR3tllBTLzMyQ55DDZMfE1jne17efyqddobK/3tbgFp/14R063L+P9/L92/bC3L5dVoeOTZ6QRP2Q+APQdpSVB5J8dkSkjLIyGWVl/v399mYYsiMjG1zxF/7e24p45UVJ/j3GJO2q+Ovkv/mT3XbafZo7syTtap3VmoWF+RM+BfvX6tP1zfxAYqjB1Tj1YG7JlLwe+Xr3afK5EcyO9b+xNTM3+79OSpKvS5oc27bWmtRwZGZITle173M7IaHNtPp0bMnwtzitrGzpUBrNzMyQ1a1Hk89rpaY26frr2LBOvr795Dl8tOyISIXVUPVnbtsmucJkp6TIjo2TlZLa4ASAudWfmDZzsmXUtOdkRYUcmzfJ17//fj0PSbIjIiXL1zztD3HAcy7+RRGvv6LIpx+XfL7dD5SVydy+Tb6+/UJ2bTs2TnZMrBzb99H+ubJS5ub0Gh9yzf9SsX+6WHHTLlLsFZfsMyHvXLY0sM+o4wC98QQAANCcjIICeXe1hHRsyWzhaBov/H+zA/cX68ux1r8NhHfgoHqf4zlmYqM/fFcbOzlZvh495fx18X6db+7YLqtTK78n2Y6R+APQZhjlZbKjdu3lFxkpo6LCn/jba3+/KnZUtL9dZwM4l/0m1w/fSrYtI8+f+LMTE/2fUJGavt2nbYeshZSZtUNyOGUnJYVk/qZkJyUHqrwapLxcEW+/5d9/T5JRvH/tB/bFsWmjf8+h7k2fzECwqr05HRkZ/u/d2DhZXbpIlRUycnNrPMeRuVm+rl0lhyPouBUX728V0tp5vf4Ek+SvKm7LKipkZu8M2m+xqVipHZou8Wfbcmzc4E9QRETI8//s3Xd4HNXVwOHflC3qktWrey9ggxuY3kkICYQQQholgRDSExISQigBUklIoSTwpZMQCL33Xmzce7clWb3Z6rszc78/RlpL1qrvaiX7vM/DYzQ7e+eutDu7O+eec5Yeh/fF54i//Rbif3YrekefQr28zP2S0pF952RlDbrXq1FaGio9bezoGWQwdu0ExxlWZrbqKHUtff7ESNDrasHjxfPhCuLuuxscB+h4LisV1cAfgJNfgN5H+Wff4/8j8Ybv43nnrW7bje3biPvrA1hzj6btok+DbuD54P2wY2i1tehl+wguPg6VnHLErjgXQgghhBgxjoPW1IiTneMuuCwZ433+HAfv66/gff3VQS3wNbdsRo1LR2WOntKY1tELMNet7r7ob4D08nKc3LwozEoMhAT+hBBjhtbS4vY3w81wcHv8tUC4jD86ygY2D67Up15ZgdbcjF5SjN5Q7/apMjuCZx4vemXlsB9HJ62uloRbbiTxJz+M2Jhd6ZWVOJlZbg/EUc7OzXezugbJ98yTaC0ttH7hCoCoZHgZu3a6gcWh9iwSA6YSOwJ/JcU4aWluwDXPDep2ll3sSquuxly7BidM/0WVkjImSn3q5WVgu5lanYsNxqrOVZl2QYRLfeIG/rT9DRFZKKGXl6G1tGB1rIoMfPR8rPnHopJTMPbswfuiW3bVKC/Dzs0/OIesbPTqwb0H6KUlWLPnopKSwwb+zO1bUXHxOMP5nXWem1ol8CeiT6+twS4opOWar+N57228L70AgLlzu/tczsvvZ4ThsfPy0cO8H3Qy160Br4+4e/+A2RHY0w7sJ/53d2JPnkLrV64lcPa5WEfPx1y/tvcxNA17zhw30NixOEMIIYQQQkSH1ngAlEKlpOAUFGIU7431lIbF2L7NreoTaHc/Ww70fls2Y02fObjWD1FmLTgGrbkZY/u2Qd7RQq+uxM7Njc7ERL9G/9VgIYTooLW2hjL+VGfGX2tLKJuih/iEwZX6bG0NlWIzt25Gq6tzgw8AmuaWmquKTODP2LyJxB99H2PXTnclU9PgMhMHQq+sGDMp9U5hoVtScxC0+jp8zz5N+9nnhspw6kNsONwXY88u7ImTIj6u6Kkz8KeX7A3Vp1eZmW7Q/ZAMD62uloQ7bkF5PLRd8KmeY6WkjIlSn11LmIz1jD+9pNg9V0Yp8AdEJOvP2LHdvajfcd5wsnNo/cq1tF77DQInn4pnxfvul5TyMjfjtHMOWdmDfg8wSktw8guwp0zF2LWj5+3bt2FPnjKsBRrK5wb+tMDYLxUrRj+tthaVno61ZCnBxW62LEph7NyBPWlS1C9SOPkFGGVloUzDbnPb34Cxdw+tX7yC4JLjif/Db0i6+nKSvvU1sCxavvbNUH8Ra97R6CXFaPU9F1yY69dhT5qCSkzCzssPu/BECCGEEEJETud3d5WSil003m3pMYaZq1eiEpNw8gvwfLhiYHdqa3OvP82YEd3JDZI9aQoqKRlzzapB3U+vrgLHwcmWwF+sSOBPCDFmaK0tbo8/OnoatfbR4w9Q8fFoLQPP+Atd0PX5MTZvRq+vQ6UdLJPpZOcMur9Tb+Luvw8nO4fm7/8IICofavTKylCJ0tHOzi9EazwQtgeW9+UXwq7K9z/yEMrrof28j4PPBx5v5AM9wSBGcbH09xshnaU+tZYWnM7Xnq5jT5iI983XQtle2v4GEm6/Fc2yaP7hT1DpPZtYO8kpaE2NQypHMZL04r2otHGoxMQxH/gzSordD/Veb8THDpVbjkTgb+cOt9xImDLRweOWoTU14Vn+PlpDfbfsJScz280iH+BCDa2pEe3AfuyCIjfwt3PnwV6VSuF77BHMtaux5h41rMejOjL+tLbWYY0jxEDodbU4HQszAmefi15ZgblmFcaO7diTo1vmE8DJzwcrGPZcYK5fB4B11NG0Xv1VWi+7kvaPfIy2j19A8w03hRaUAFhz5oKmhe4TYtuYG9dhzZ0XOp5eXj7q30uEEEIIIcayzms5TnIKTmERWkO9+31+NLDtsIvO+uJZvRJr/gKCi5Zgrv7wYD/2PvqyG9u3uW0gBtHfb0RoGtb8BXhWfej+HAwO6LNx5/VTRzL+YkYCf0KIMaNrkE/Fx6G1tqG1NPfR4y9+UKU+O8t4BpcsdTP+6utwuvTHc3Lz0IdQjrLnxBR6TTXBpcdjT58BpifyZQyUQq+uwskeIxl/BW45R72kZ9af738Ph0rvddKL9+J583XaP3GRe/Fe03CSk8MGDofDKNkLtoU9UQJ/I8LjgY7spa7BvNbLrkSvqCDuL39GazxAwh23orW10vyjn/Ra+16lpLi9OkfLl4VeGCXF2IVFOOkZvfYxHCv00hLswshn+4HbaxXDjFDgb7ubZReGUzQep6AQ36OPAGDnHPySorLc59pAs/46z2dOQQHWpClorS3ue0hrK/G//jm+Rx+m/eMXEjjnI8N5OKGMP9ok409EmVLotbU46RkA2JOnYE+cjP+hB90gdy+vq0jqLP8c7vOYuX4d9vgJqOQUMAyCp55B4LyPEzjv46FewKGHkpSMPWEi5rruC4uMTRvRmpuxFhxz8Hi2FbGKD0IIIYQQoid9fwPgfo/v7Bkf7vrQiAoE8D73DEnXXuX2th4graoKfV8pwaOPIbhwMVpLC+bG9Rg7tpNw1RXw/PNh72du3exmCUa5dP5QBI8+Br1sHwk3/5jkK79A3B9/1+999PJy8Pq6JVSIkSWBPyHE2NG1rKc/Dq21tSMYGBd2d5WQOLiMv8oKlD/OfWPe34BRXNztDcouLEKvqYbW4WVVaM1NYFtuRpNhYBcUYOzdPawxexyjrg6sIE722Mj4c7JzwDAx9nX/YKcd2I/WeABj755u2/3/+RdOVjaB084IbVPJKW5d+Agydu8C3cAuGh/RcUXvnI5yn07XbNui8bRe8WU8b71B4g+vQ9u/n+brf9xnYFulpALR6fsYSW6wrAiVNm5sZ/wphVG8F6fjS1rE6TpORgZ6dfXwxmlrc7N4p/SemRRcejx6hdvTq1vGX2fWYdXAgo/GvhLQDZycXDdrWNMwN28k4dc/x9i6hZbv/oD2Cz81/D6scZLxJ0ZIczO0tx1cmKFpBM46J1Squ6/XVaSocePA50cvPaT8plKY69YMKoPWmnsU5oZ1BzNxAe+7b+Fk54YW/Dj57jkgIgu/hBBCCCFEWNr+/e4iYJ8PJyfXvT4UrT5/gQBaP9/pjC2bSfruN/D/+x84mVl43nt7wAt1PWtWgm5gzZ2HU1iEk52D7+knif/FbRBoh3//282aO4S5ZTP2jNHV36+TNe+ojpKfSQSPX4Zn+Xvo/fx99PIyt7/fKHw8RwoJ/AkhxoyuQT63x18rdOn7dyiVMLgef3pVJU52NtbU6e4bk2PjpKaFbu9cdWQMshfdobT6end+qamAG9To7w2zT10uWHUKpdSPkYw/DAMnL6/HhTy92C2BqtXVhrL59LJ9mOvW0H7Rp0O9egBUUhL6gQgH/nbtdDOYolC6UISnwgT+AILLTiRwxtkQDND8gxt6ZG8cyhkLgb+WFvSaavfLwLj0sL2mxgptfwNaUyN2QZQCf4CTmYnWNeNvkOVWADe7x7Gx5szrdZ/A0mUA7sKPjjKa4C4mUfHx6NUDzPgrLXX7rJomJCTg5Obh/8ffMHbvouV712MdNX/Q8w9HeX0AaO2S8Seiq3NxQmfGH0Bw8VJUcgpORmZowUVUaVrYvnv63j1ojQcGHfjTmhrRd+9yNwQCmCuWEzzu+NAFCpWahoqLl8CfEEIIIUQUaQf243RcI8M0sabPwFy9MirH8j3zJIk3/iD890ml8D77NAm334yTlU3TL39L8/U/Rnl9eF95cUDjm6tXYc2cCfHxoGkEFy7G2LwRJzef1pt+CvX1mG+83u0+xvZtGNu2uuXoRyO/n+Zbbqfl29fRevmXcdIz8D35eJ93MSrKpb9fjEngTwgxZmhdMv5UXDxaSwtaW2vvGX/xCYMr9VlV4QbKEhKwx09wx+ha6jMvH3QdvWR4q460hgZ3vI6gol00AaO0dPD9Y5TC8+pLJF/5Bcy1q7vdpFdVuuUvM8KXQRyN7PxCjH3dL+R17X3YmfVnbNkEuk7w6AXd9lUpKWgRDvzpu3dJf78R1tnnr+trr1Pb5y+j8ff34XS8PvscJyUFcEuGaAf2YxzaxykMc/XKES0N2rmIwC4oRKWno4/hUp+hspZF0Qz8ZYfK7Wm1tSRf8XkSv/tN/P/3Z/RDzh298az4ILTqsjcqKwt76nTsgkPKlmoaTmbWIDL+SrsFQq3pM0DXaf7O97GnTR/QGAPi87lBira2yIzX3Iz5/nthF5WII5teWwMQ6vEHgMdD6+cvp/38C0ZsHk5+PnpZWbdt5vq14PO7JdQHyJ46DXx+POvWuGOsWY3W1krwuGUHd9I0nLx893OaEEIIIYSICn1/g1uuvYN17ELMTRsH3F99MIzt29CamtAPqSyFUvj/+gD+B/9O+zkfPVhlKC6O4Emn4H31JQgE+hzb8947mJs2Ys0/NrQtcNqZBE47k+brfogzeQocfzzeJx4L9fvTDuwn/nd3Yk+eQuDk0yL9cCPPNAmcdz6eD95FLy/rdTe9vEz6+8WYBP6EEGODUmgtre6KGUD5/dDeBkr1nvEXHw/BQNgU+nD0yspQKTe7o5lut6wjrxcnOxdjmHXG9Y6sns6MP7toPFjBPt8wD6Ud2E/cn+4m7v/+jPKY+B75b7eLtHplhbsi3+MZ1lxHklNQgL6vpNvjMEqL3X49/jj0PW45VHPzZuwJk7pl4oDbryeigb/2dozSEuyJkyI3puiXSkwCDrmw3EnTBv6c9nrd501pCQm33kTCL26DPjKAjW1bif/1z4m/687BB+GHSC8tdktY5he4GX9Njf1+kRitjMpyt6xlZlbUjuFkZbnllukon2JbWDNn4Xn/HXxPP9H/AMEg5ppVBBct6XfXlq9/i9Yrr+45h+ycQWT8lYT6lwK0ffqzNP78TuxZswd0/wHTNPD6Ipbx5337TeL/8JsBr2gVRw69rhZ03e252YW1ZCnBU0buIoU1bTrGrh0Yu3a4GxwHz/IPsGbO6lYJoF+mSXDhInxPPYGxbSue997GnjgJJzev225uoFEy/oQQQgghokXbvz+0eBcgeOwicGw8kc76U8pt6YJbWrPrdv+//o73lRdpvfzLtF/yWTCM0M2BM89Ga27G89473cdrbsbYvAlj8yb8f/8LcX+8i+DipQROPf3g0JmZtF12JSR0XLu8+GK0mmp8zzyJsXkTcX+4CyyLlq9/a3CfZWMocOIpqJRUfE89Hn6Htja0hvoen6vFyJLAnxBibAgEwLFRcR09/jp7/QEkxIe9S2d24ID6/FkWem1NKPBnHXU0eH09MubswqJuWWhDoe1vQCUkhMpHdvaPG0j9cs+br5N4/XdJuuZLeN5/j9arr6Xlq9/E2L3T7VPTQa86GMQcK+z8ArSmJrSOps7glvp0isbjjJ+AsXu328Nna0fd80M4ySlojZEr62gU7wXHCfX5ESNDJSSApoUC48MaKyUF39NPuCU0lerztet74lFU2jiMrZvxPfyfYR97IIziYrd/gccTCnTqY7Tcp15R4Z5zunw5ijSVmeVmcTc3Y65fhz1lGm1XfBlr9twBlUk1N65Ha20huHBx/8dKG3ewj1kXTlb2gDL+OvuT2vldsgYTElBZ0QmMKr8/Yj3+jD3uF2H/P/6GsWN7RMYUhwetthaVmjb8vpTDFDzpVOyi8cT9+V6wLHyPPYKxZxft53x00GO1XvYl7ImTiP/lHXhWrSS4dFmPfey8AoyyfZIFK4QQQggRJdqB/ThdMv7UuHTsyVPxrPggsseprUVrPACmB3PrwcCf74lH8T7/DG1fuJxgl6BdJyc7B+uo+XhfePbgZ0LbJvHWG0m47SYSbrsJ7ysv0fbFK2j9yrV9t4uZMAF74SJ8D/+HhNtuwty6hZZrv+m2mhgrvF7azzoHzztvh128HGo/lCMZf7EkgT8hxJjQGbxTXTP+OoSCgYfoLBk4kD5/enUVKBUq/2bNPYoDd//54IqcDk5hoZulM4yLP3p9vXvhrFNiIk56Rv99/pqaiPvL/TgpqbRefS2Nv/k9wWUnYs+Ziz1pCr7HHz14jMoKnOyxFfhzOsrqhfr8KRUqlWdPmIixdw9aTQ1aXS1WmMCfSk52/9Yd5RKGq3N1f3+95ERkqdRU9wNvBFa6qbRxqKRkmm+8paM5+J6w++m7d2GuXU3bJZ+l7eJL8T39BObKFcM+fn+M0pJQKcjO0qYDbRg+2ugV5VE/5ziZ7kIMo7IcY+MGrLlunz6VmobeUUK5L54VH+Dk5A3rNR3KOuwnK9TYtMndv7Cwz/0ixc2C7yfjTymMzZtCX8J6o+/dQ/CEk9xgyO/udL8YCwHotbXd+vvFjGHQ+qWvoO8rJf53d+J7/H+0f/Ji7NlzBj+Wz0fzd77vnhccm+CSpT12cXJzod1dtSyEEEIIISJPPyTjDyC4aAnm+nWRa2kAGLt2umMfvwxjy2b32l5LC74nH6f9Ix8jcMbZvd63/aPnYxTvdUt+Ap43XkMvLaHle9fT9Ku7aPzDvQROPyvUK7ovbV/7Jk2/usu93+/vGdrn2BizZ84G2wrbdqOzjY8tgb+YksCfEGJM0Dre6JXf7efXNdin4vvJ+BtAnz+9sgKge9+nQ0pJgpvxpzU1uRd/lCLuvj9ibNo4sAfRQWuoxzmkTJZTND7Uw6433nfeAtum9eqvElx24sHgoabRfv4nMLZuxti8CZTqVrZ0rHCyc8D0hD4g6FWVEGjHKSrCHj8BvbIcz+oPAcL2x1LJyYC7UiwS9Ooq93fc10otEXHtZ51L83U/jMhYrVd8maZb7nCzRvPyeg2u+558DCc7xy3Jce5HsWbNwffs0xGZQ2/04r0Y27aG+lGFMv7qxmrgryLqq/k6y4h63n8PrbUFa95RgBss1voL/Nk25soVBBcuGtAXsd7nkA2O0z1Aa1nE/eEuty8eQEsLcQ/+HWve0SNW2kT5fGitvWf8GVu3kHDrT0i47Sb8f72/94GCQYzSUuzJU2j52rfQDhxwV3EKgXt+CluGOQacCRNpP/c8zFUfYh01n/aPfWLog8XF0fyDG2i69WeoMI+v89yjV1cP/RhCCCGEECI8pdAOhAn8HbsIggHMNasjdihj1w5U2jgCS45Ha2pEL9uH5/13IRggcOY5fd7XnjGT4Emn4Pv3v9DLy/D/778Ely7DOmo+Tk4uKil54BPxeHByct37Jaf0v/8oZHcsqA1XWcnctAEnLx8SE0d6WqILCfwJIcaEPjP+egv8dWb8NTeBUnifeapbGcmu9MpKMMxQ1k1vnEI3O8coKcbYtBHPW29grh3chxC9vh6V0j3wZxeN77vUp1J4X3mR4LGLumcLdrAWHOuWvXrgT+j7StHaWnGyx9jKGl3HzstDL3V7KHYGaeyCQuwJEwHwvvgCTmFRqA9cVwcDf5HJTtFrqqPar0z0IjExlP05XE5uHqojS8wePwFjb8/XmL6vFM+KD2g/7+NumUpNw545K7r9nByHuD/fi5ObS+C0M9xtPh8qMRFtLAb+HAe9ugonJ6f/fYdBJSWDz4/nzddQiYmhMrxOSqrbH7GPbF9j00a0piashYuGN4eOUp2di0UAfE89juf9d4i/+y7M5R/gf+hBtOZmWi/70rCCjIPi86MFwmf8aU2NJNx+C7S3EVy6DHPr1l573+olxeDY2BMmodLT3fLWe3dHc+bRoRTeJx+DASz8EQOn1dWGLYEbK+0XXETbpV+g5eprh/9a8/txOj5rHOpg4K//Mr9CCCGEEGJwtKZGcByc5NRu21V2Nvb4CXg+XB6xYxl7dmFPnIQ9dRroOsbWzXjfeA1r7lED+pzbesnnwOcj4aYfoTU30/apSyI2tzEnLg4nMwuj4xpeiFKY69ZizTs6JtMSB0ngTwgxNrS4mQwq3i292T3jLyHsXQ72+GtBr6rE/+9/9LpSKNQTr5++NU5WNvj86CUl+F541r1vTc2gHoq2v6FHxp9dNAFtf0Ov2WrGls3oZfsOBgl6DKrR+vVvo7W1knDbzR1zHXtBKye/MPShwSgtQSUmolLT3JVCpge9ogxres8ynwBOkrtKSo9QWTq9pqZHj0cxdtlFE9yVaI7Tbbu5aiX4/ASXnRja5uTmoTUecL+ARIH3+Wcx9uyi9Utf6VbSVKWNQx+DpT61mhqwre4Z01E5kIaTmekG8GbPC52vVcf5VNvfS7avbeP/74M4hUXD7tnppGeApqFXVwJu4Nj3+KO0f/R8gouWEv+H3+J95UXaPnVJKOg8EpTf32sJnM6/T9sVX6b9I+dBMNBr7z5jz243+N2xyMWeMNHdNsboFeX4//vviPcEOaIpNXpKfXbyegmc85HorySOi0MlJkrgTwghhBAiCjq/x6nU1B63WccuwrN6Zdg+coOmFMaundiTJoPfjz1hEt5XX8bYuZ3AyacNbIzERFq/cAVaczPtZ50zot/5RiOnsKhHZSW9bB9afV2oQo+IHQn8CSHGhM4+fSrOLfVJXEfGn2GCxxP+Tn4/6DpaS3PoImdv/f4G3BNP07DzC/CsXom5eiXKH4deO4jAn1I9e/wBTpF7kVUvKQl3L7yvvISTk4c9a3avQzs5uTRf/+ODP0f7InwU2NOmYezc7vahKinGKRzvruI3zdCFaGvGrLD3jXTGn1ZdFeopJsY+u2g8BAPdMrUAjL173Nu6BODsjvKMennfvdCGwti6Bf/D/yFw5jnYU6Z2u80Zl45eXxfxY0abUen+nuwRyDLuzLzp7O8HbsYfgN4Q/nfnBlp303rFVcPPCjJNtydrVZVb4vPP9+JkZtF+wUVuGeYlx2HNPYrAGWcN7ziDpPz+UEnsQ+kdme5OShrO+AmohATMTRvC7mvs3eOWJ/X53PtMmOD2bIjEF+0R1Pk+YOzcMXLH7FipfLjSGg+AFcTppzLC4crJzJbAnxBCCCFEFIQCfyk9S14GFy2B9jbMjeuHfRy9qhKtpQV74iTALd1p7NmNSkrGWnDMgMexFi2m+Uc30f7Ji4c9p7HOLijskfFnrlsLpqfXRfti5EjgTwgxJmitHQG7jsDfwV5/cb1fyNU0N+uvpSV08a+zZOihBtMTzyksxNiyCRUfT/CU0wYX+GtpgWAA59DAX2aWm0VySFAC3J51nhUfuNl+/Vy0dvILaL7hJlov/3LodzWWBE49A2vGLOL/8FvMHdtDwT4gVO7Tnt6zvx/gXqj2+SMT+LMst5eRZPwdNpzx4wF69NI09uwOffAP7dvRq04vL4vcBJTC+9wzJNx2E/bkKbRd9OmecxyXjjaY88kooVdWuKWSM6KfCXQw8Hdw9WDnytBwff70ygr8jzxE4KxzewRahzyHrGy8r79C8lWXY+zcTuuVV7m9QE2T1mu+Rsv3f9Rv9njE+Xy9Bv60+nr3/TAlBTQNa9YczF5607qvh4NZkfaEieA4GKU9+zaMZp0XD4yd4TMbI368ykqSvvFVPK+/MiLHiwW9xu1vN6oy/kaQk5mFJj3+hBBCCCEiTu+ofOWE6XXn5OXj5OThWf7+sI9j7N4FEPr+b81wA1PBZSd2Wwg8EPbMWb0nIRxBnKLxaA313aolmevWYM2YEVpMKmJHAn9CiDFBLy9zg32G4W7weNwLzQnhy3x2UgmJaM39ZPwp5fanGmCGnF3oBhACp5yOnZuH1lDfZ2+pbo+jod495CGlPg9mkVT2uI/njddB0wiecGKP28Jx8gsInnr6gPYddQyD1q9+HTQNra4Wu0uvt+CS4wicchoqrfdsAycpqddyqYOh1dWBUkd82YbDiUpKRqWmoXcN/LW1oVeWY4+f0H1nnw8nIzOiff68zz+L/19/I3D2R2j+wQ1uRvKhc0xPR68bexl/ekWFG5DrPD9HUXDBsQROPaNb/wWV7Aa0wvVw9T30IE5KCm0RXI0ZXHo89qQptH38Appu/yX2jNivZFQ+P/TS40/f3+D2Re34MmvPmu2+Jx4aKLRtjOK93V4PduF40HX0MVbuU2/sCPyVFPdaAnUojB3be/ZHVIq4v/zJXYm8fVvEjjXaaB1liEciwD8aOVlZYT+jCSGEEEKI/mm1tWiV4T9LaQ0N4PGG/Y6MphFctBhz9coBX3frjbFrJ05Gpvv9EbBmzsY6egHtp49stZbDSedifb24Y6FoIIC5ZTPW3KNjNykRIoE/IcSoZ2zaiO/Zp3qUTlNxcaE+fr1R8fHo+xtCWT7hMv60mhq3fFXOwAJ/1oyZqKRkAqef5V4AU8rNqBiAzv3C1S53srN7Zvwphfe1lwkuWepeuD0CqJRUWr72LVRiIvb0GaHt9uw5tF1xVd/3TU4JrRYbjs5yXpLxd3ixi8ZjdKk/bxTvBaVC2aRdOTm5GBHM+DO2b8OeOZu2z3yu19WEzrh0t5zeGCurqFeUD/j8OVz2nLm0Xf6lQyago1JS0cOch409uwkuXhr+S+QQBU85jZbrfkjgvI/jdMlKjiUVF9dnxl/X9xxr1hywLcztW7vtp5eXQTDQ/fXg9eLk5WPsHluBP+3AATdDXqnQyt7h8j7/LAk3/QjfY4902+5583XMDetxCgrHZD/EgdLr6sD0oJKSYz2VmFCZmeh1tWDbsZ6KEEIIIcSYE/fnu4m/+3dhb9P2N+B0VCcJJ3jsIrSmJozNm3o/QHv4RZBdGTt3dK/2ExdHy3d/gBpI2x8RlpOdA4bpLrjEbW1CMCD9/UYJCfwJIUY1rb6O+D/8Fmvm7B71s1VcHCqu/8CfsXkT2BYqKTlsxp9R4V7ct3PyBjQnZ8JEGu+5H5WRESp51VkCqz+dGX+HlvoEcLJyeqwmN9evRa+qJHDamQMa/3BhT59B4z0P4OQXDOp+KjkZrbGx/x37caSXNDtc9Qj87d4Fhhn2eebk5aOXRS7wp9fW4PSTKeOMc7PYBrqQYLTQKypC5VFjxUlJ6Vnq07bRa6pRWVkxmdOI6qvU5/6GUB9EcJ/bKiUVY2P3Pn+dQatDM2Dt8RN7lMgd7bT9+3Hy8sHnj0ifP+8rL+L/519xMjLxvvpyKDivNdTj/9ffCB5/IoEzzhqT/RAHSq+twUlPH36fzDHKycwCxwllPgohhBBCiAFqacHctMn9vhGmeoa5cwdqXHr4+wLOxEk4GZl4Plwe9nZjx3aSv3wZ3pdf6HUMvXgvxtbNWPMH3stPDIBpYufno3e0hvCsX4tKTcPpUr1LxI4E/oQQo5r/738BXaf12m/0KCOn4uKgv4y/hEQ3iGN6sGbOChv408vL3LKhQyjrGAr8DbAvl1Zf72Yphql17WTnYFRUgFKhbd5XXsIpLIpYb6oxZQgXF1Vycqi303Do1VWo1DS3b5c4bDgTJqLV14Xqzxt7d2MXFYXNwHPy8twM3GGWE+nkXjTvJ/DXUW7Y2FfS536jim13lEqO7SpJlZqGfkipT622FhwHO2tkshFjSfn8vQb+9IaG7uWlO/v8hQn8OVnZcEgJbXvCRHcF5xjKdNIOHMBJS8OeOGnYff6M9evw/+V+AmeeQ8sPbkBrbsLz/rtAx2cUw6Ttc18Ys/0QB0qrqenzgszhrrO/aGdFACGEEEIIMTDm+nXg2GBbPRYUet55C2PzRtrPO7/3ATQN69hFbuCvy/WyTt5XXgSl8P/1ATyvvxp2CN+Tj+NkZBI8btlwHooIwykcj1FcjFZbi+fVlwkuWnLELhYcbSTwJ4QY1fTKCoLHLAzV4O7KySvAzsvv8/6dpUDt8RPc8lRhSn3qFRXuRWt9CKdEvx+VmDjgwJ++vwGV0jPbD3AvuLa3uaX+cC9am6tXEjjtDHnTHCAnOaVbU+Gh0muqpcznYcgucvtzdpb+0/fs7tnfr3Pf3Hxw7Mhc5LUsN+uqn+eUyshApaZhjKE+YVptLdhWzDP+VGpqj0zJzgzqIyHjT/l9bo+/MF+EtYb6bhl/ANbceRh7dqFXlLsbHAdzzWrsSVN63N+eMBGCgYj2vIw2/cB+VFIK1pSpmMPM+PM98wT2xMm0fe6LODm5WEfNx/vCs5gfLsez/H3aPn8ZKjEpfD/EwyX7TynM7VuxJk2O9UxixsnIBE2TwJ8QQgghxCB51qzEyckD09OtGod2YD/+f/6V4JLj+83ECy5agra/oed35ZYWPB+8T/snLiRw2pnEPXCf2w+wC728DM8H7xL46Md6bbshhs4uKMQoLSHuL38Gv5+2Cz8V6ymJDiMe+CsvL2fVqlW0hMm6EUKIQ2m23esbc+u136D9U5f0PUC8m7lgT5mKio/vNeNvOBetnfQMt0/gAGh1dThpvQT+Onpk6R0Njz3vvgWmh8BxJwx5bkcalRShjL+aGgn8HYacnFycnDy8zzwFwSBGaSlOmP5+4Gb8AREJdmh1daBU/6VjNQ1r6jTMMRT4MyrdwJGdHetSn6k9Mv70qgrQtCOjZK8/zg36HRpoUsrN+DukvHRwyXGolFR8Tz0OgLn8A/SKMgJnn9tj6FDAfAyV+9QO7EelpGBPmoJWV4tWXzekcfR9pZgb1hM465zQApzAWedg7N1D3L1/xDp6AcElx7k7d/ZD3LMHAGPDepKvuhztkOflWKRXlKPV12HPmh3rqcSOx+NmFh9Skl0IIYQQQvShY4Fh8NiF2OMnYOw4WI3D//e/AtD2+S/2O4w9dRoqJRXP8ve7bfe8/y4EAwROPIW2L16BPWkK3tde6baP76nHUSmpBE48ZdgPR/TkFBVBexvmmlW0fuHyHhVkROyMWODvoYce4oQTTuDUU0/l0ksvZfdudzXsV7/6Vf72t7+N1DSEEGON7fQo8TkYKqFr4C8BLWzGXzl27sD6+4U9RnrG4DL+wvT3g46MP9wsRwBz00asGTP7LWcqDlLJyWhtrcPOstCqq3CGUPpVjHK6TtvFl2BuWIf3uafBsbEnTAq7q0pNA58fvbx8+IftOD+ofnr8AdhTp7urICNUYjTa9Ipyt1RyemxLAKq0NDfo3yXjTa+qcoN+R8CqTtVRPlprP6TcZ0sLBAM9+8p6vbSfex6et95Eq67G9+SjWHPmhi8rnZDglqLumsk2ymkH9uMkJ2NPcTMYu15gGAzvi8+jklMILl4a2mbNmYeT61YbaL3sS90y8u3xE0O/J9/LL0AwgLFr51AfxqhhbtoAuoE1bUaspxJTTmYWevXAejoLIYQQQvRGa2oc8sK0scbYtROt8QDWgmOxp0zF2OVm/OmVFXjef4e2T30mbIWvHjSN4LGLMA8p9+l94zWsuUe530c1DWv+Aowtm8Bx3LvV1+F5+y3azz1PWrlEiV1YBEBw4WKshYtjPBvR1YgE/v76179y66238vGPf5wHHngA1eUFumjRIp5//vmRmIYQYixSDmooJTg7794RNLMmTUEldGT8dS2FFgy6ZR2HmfE34B5/DfWo1NTwN/r9qOQUN/Bn25jbtmLNnDXkeR2JVHIyAFrjMMp9WhZ6Xa0E/g5T1rGLsKfNwP/IQ6BpoQ+pPWgadl4+RvnwM/46zw/OAPpj2dOmu8GC4j3DPu5I0Csq3N5Xw1igEQlOShrYVrdSv3pVVWhBxeFO+fzu/7R2D/x1ZkGGe98JnHo6Kj6O+N/8AqN4L+3nX9jr+PbkqW7JnLEQkLZttKYmVHIKalw6Km1ct5JCA9bcjPetN9xy2x7Pwe2aRsvXvknLD27oEfDu7Ieo1dVirnJLDBnFe4fzaEYFY+NG7MlTIC4u1lOJKTfwJ6U+hRBCCDE8/n/+jfg//i7W0xgR5qoPUYmJ2FOmYk+Zil5ZgdZ4AM8br6Hi4wkuO3HAYwWPXYReUx0qra/vK8XYuZ3AyaeF9rFmzUFracHY47b38Cz/ADSNwEmS7Rctalw6rVdfS9sVX471VMQhRiTw989//pNrrrmG73znOyxe3D3yO3HixFD2nxBC9GDbw7qgbM07mvaPno/KykLFJ7pBv7aDF0b1qkq3BN9wA381NWF7K3WjFHp9PU7auN7Hys5Br6rC2Lsb2tuwp88c8ryORE5SR+DvwNDLfWr19aAUKvPw7wt2RNI02j7zOXAcnNw86MiUCsfJzUMvKxv2IfXaGlRiUp/H6mSPn+D2Ptg2Nsp96iXFOAUFsZ4GqqOEctc+f3p1Jc4R0N8PAL8b+Ds046/z9xF2wYnfT+Ccj2IU78WeOh17Ru/vN+0f/Rh6VSXeV17qcZteUjzkjLpo6OyT27kQxJo5G8/a1YMex/vGa2DbBE49vcdtTtH4sNmRnf0Q/Q//B3Qdp7AIfe8YD/wphblpA9aRXOazg5OZKYE/IYQQQgybXlKMXloc62mMCHPNKqyjFoCuY3f0iza2b8P75usEly4bVBaePXMWKjERz4oPQCl8j/0PlZiEteBgf0B70mTw+TE2bgTAs+IDrNlzpPxklAWXnehe8xCjyogE/iorK5k/f37Y2zwej/T7E0L0Shtm4M/JzqH905e6pbji3ZXqXfv86eXuRX0nd+iBP5WRAe1tbkm1vrS2QqC994w/wMnORq8ox9i6FTxe7InhyxCK8FRKKgD6MMpmdF7Ukx5/hy97ylQCZ55zsDdXL5y8PPQIZPxpNTU4AyjzCYDHgz1pMsa2rb2PV1uLsXEDxsYNoXNYTCiFsWcXVscXuFhyOl/7Xfqp6VWVR07GX2fgry18xl+PUp8d2k8/C3viJNo+dUm3kpWHcorGEzzxZHyPPQzNXUpmK0X83b8j7v57h/cAIkg70Bn4c0sGBY9d5F5c6SijPSBK4X39FYILF6P6WKxzKHv8BAA8b71B8NhFWDNnj/mMP72kGK2pEWvWnFhPJeacrGy3Z+Mwy4kLIYQQ4gimFEZZGVpTEzQ1xXo20dXcjFG8F2vOXMD9LKUSk/A99j+0hvrBZ+GZJtb8Y/CsWI73lRfdUqFfuLx7awfTxJo+A3PTBrQD+zG2biYo5SfFEWpEAn95eXmsX78+7G1r165lwoQJIzENIcRYNMzAX1cq3l3hozUf/HCll5ej/HGhgNFQOOnuBf3+yn3qDW7mRW8XYKEz468Sc8smN5uga3kx0S81bhxORiaeD5cPeQy9xu3f0/l3FYents9fRvsFF/W5j52TF5EvZHptDWoQzydr2nTMbVvCZxErRcLtN5Nwxy0k3HELidd9C+9TT/SfcRwFemUFWksL9sTYB/46F1RoDQ3uhqYmtOZm1JES+EtOBk3DPCSzTWtoAJ8/lBHYQ0ICzbf+DHsAZaXbLvwUWnsA31OPh7YZWza7QbV9pd2y6WNJ2+9mfDsdgT9r3lHg8WIu/2DAY+jFe9HL9hFcdsLgDh4fj5OdA0DgpFOwi8ajV5aPmt/NUJgbN4DpwZ46LdZTiTmnoxKAZP0JIYQQYqi0mhoIuouIjKpBLEwbg4x9pcDBHnBoGvbkKRi7d2IXjccZwkL34MLF6OX78P/9L+5i3qXH99jHmjUHc+sWPB+85/58zLFDfxBCjGEjEvj71Kc+xT333MPDDz9MU8fFM8uyeP3113nggQe4+OKLR2IaQoixyLGH1eOvK9WR2t8148+oKHOz/frIdOiP09Hjp9/AX5mbOdRXBoqTnYPWeABj4was6TOGPKcjlqYRPOkUPB+872ZYDoFeXeUGgqXx8xGvs3xk1yyyodBrqgcVSLanTkNrqEerre1xm7FzB3plBS3XfovGX/+e9o+ej/+hfxH/21+NeHDB2O32TXAmThzR44bl9aLi49E6FliEMnePkFKfKjmF9gsuwvfkY92Cf3pDfZ+LTQZ1jHHptJ/7UXzPP4vekcXmffE5t5euUuh790TkOMOlH1LqE7+f4NHz3ZJAA+R57x1UYiLWnHmDPr49cTJORib2nLnYRePdVd2lJYMeZ8S0tJD01S9jbN4U9mZz0wasadPlPREJ/AkhhBBi+IyKgxVb9IooBP5sG8/bb2Ls2gGOE/nxB0EvLQFNw8nLD23rLJcfPOnUIV2Hs+bMQ8XFY0+c7LbwCLfPrNkQaMf3+KPYM2aFKoEIcaQZkcDfFVdcwYUXXsiNN97I0qVLAbjkkku45pprOP/887n00ktHYhpCiLHIcUCPUMZfXEepz9YupT4rKnCyh17mE0ClpoFu9Bv4M3btRKWkosb10eOvIyiotbVizeg/A0P0FDjhZAi0h1Z3daXV1vabGaVXV0mZTwGEySIb0iAKvbZ20IE/AHN7z3KfnnffRqWmYS1ajMrOpv3iz9Dyre9hblhP3P33jWjmn7FrZ6hcy2igUtLQO/5WemUl0PdCi8NN+8cvxJp7FHH3/B6t2s1c1hoa+iwvPehjfOwTOLm5xN91J3pJMZ4Pl9N+4cXg8WLs2hmx4wyHtn8/eH3dshytYxdh7NrRI5jue+JRvC8+130ApfC++zbBxcd1Lxs0QG2Xfo6W63/sXuQoKARdRy/eM5SHMiLMndvR9jdgbgxTnSUQwNiyGXu2lPkEt6oAuhGqDCCEEEIIMVh6WRkYJioxaXCl6AfI++xTxN37BxJu/CFJV1+O5713In6MgTL2leJk5XRbQBY8egFOfgHB45cNbVCvl+Zbbqf5+z/q9bO6M2Giuyh0fwPBhYuGdhwhDgMjEvgDuOGGG3jxxRf5yU9+wje/+U1+/OMf8+yzz3LDDTeM1BSEEGOQZjtRKPV5sD+RXrYPJy9veAPrOs64cW7Jhj4Yu3e5Pfv66qOU3XGRWjdCK6HE4KiMDKw58/C+/mr3G9raSPruN8IGBLvS95UO/zkhDgvh+sYNWnMztLcNKvCnklNwsnMwtm/rfoNt43nvHbecSZdMaOuYhbReeRWe99/B+/ILvY5rrlyBuW7NYB9Br4zdu7AnjJ4+pE5aGlp9Z8ZfJSo+HpWQGONZjSBNo/War4HXh/+hB91NDfWh53FE+Hy0fOM7aAf2k3Drjai4uIMlLXftitxxhkFrPIDTme3XIXj0AjDM7mWgm5vxPf4o3mee6hYwN7ZuQaurJXjc0C5GqLRxoXKfeL04ObkYe0dvn7/OfqLGnt09bvO++RpaWyvBRUtGelqjk67jpKf3+3lPCCGEEKI3etk+nNxcnNy8PjP+tPo6t6WDbQ987Ipy/P97mMDZH6H5xltRaeMwVwy9Dcpw6ftKcAoKum1zJk6i6ed3DmvxqJObB/HxfRxYx545G4DgMRL4E0euEQv8ARQWFnLxxRdz9dVXc8kll0hvPyFE/2wbjAidqrxeMD1oLR2Bv+Zm9wJh7vCDPCojE72vC0FKuXXMJ/XdC0slJqHi490AYW89mUS/AiefhrFjm9t3qoNe69bSNzZuCG0zNqwn8Ttfh4BbYx/bxigpwS6aMMIzFqOS3w8+/7Ay/jozgVXG4HpG2hMn98igMjdtQGs8QCBMH4Pg0uMJnHkO/n/+HWPH9rBj+h5/lLh7/3jw+T4cjuMG/vo5p40klZKKfsDt76ZXVbll+YZRxnksUolJBE49Hc/qlRAIoDfUh0rWRoqTk0vr1V9Fa2kheOIp4PdjT5rslhMCsCwSv/9tPG+/GdHjDpR2YH/Pcj4JCViz53Qr9+l9720IBtBra9BLikPbPe++jZOegT1tekTmYxdNwCgexYG/jsxi49BSrZaF9+knCS4+LiKfkw4XKiMTvVoy/kaj+Dt/4QbyhRBCiFFMLy/Dzs3DyclBrygPbTe2bUWrcsuJa/sbSLjtFvwP/Qtjb8/FWWEpRdz99+Gkp9N20aexp03Hmj4To3xfNB7GgBilpdj5Bf3vGAXtp59F+0c+hupozSPEkWhEAn/PPvss999/f9jbHnjgAZ577rmwt/Xmvvvu48ILL2T+/PksXbqUa665hl1dVhk3NDRw6623ctZZZzFv3jxOPvlkfvrTn9LY2Bjap76+niuuuIJly5YxZ84cTjrpJG655ZZQD0IhxCjh2KgIZfyBW+5T6+j9ZlS6H7LszpX5w+CkZ/RZ6lOrqUFranIDen3RNKw5RxFcvHTYczqSWccci0pMwvPm66FtWl0d0L18omf5++iVFaFMB72iHKyg25dJCMBJTUUbRsZf53nBGeQXDnvyFPdCfJcVnp5338bJyeu1CXrbZz6HPWEicff8PmxwT6+uQjuwH+/rrwxqLuHo5WXQ3tb/OW0EqUMy/o6kMp9dBRcuhvY2zA3r0PY34ESw1Gcn65iFNN90G22fugQAe+IktPJyaGnBWLMafV8p3lde6naf4byOBkM/cOBgf78ugsctw9iyKdTLzvP6q24PP58fc80qd6dAAM/y99ys2ggFje3x493A4giW4R0wx8HYsQN7wkS0+jq0jsA5uOcbvaaa9o99PHbzG4WcjAwp9TkaBYOYa9dgblgX65kIIYQQfTLK9uHk5uHk5KJ3XJOitZWE224m6bvfwP9/fybhZz9Fa3avT+tVA+st7HnnLYwtm2i9/Mvg8wEczCocqc+hbW0H+843NbnVRwqLRubYh7DnzqP9ks/G5NhCjBYjEvj705/+hLeXhvB+v58///nPgxpv+fLlXHrppfz3v//lL3/5C5ZlccUVV9DS4vbtqqqqoqqqiu9///s8/fTT3HHHHbz11lv86Ec/Co2h6zqnnXYa99xzDy+88AI/+9nPePfdd/nJT34y9AcqhIgspSLa4w9AJSSGSn12llVwIhH4S0tDa6jv9fbOzJ2BXCRv/fq3CJz70WHP6YhmmlgzZ3VbHafXu4E/fV+pW34RMDdtBMDY6WaqdGZlOOMl8CdcKiU11DduKPTaGreHQ+rgsq7siZPcbKTOrNVAAHPFcoLH9RGQME1ar7oGvaYG36MPd7+trQ2tqRGVmIjv6SfBsobwaA4ydrsLruwJE4c1TiQ5WVno1ZV4X3kRvfLIDfw5+QU4ufl43n0HrbkZFclSn13YU6aG+nXYkya779m7duF57RUwPRjbD65aNld8QNK1V4V6D0aTtn8/KiWlx/bg8SdgT51O3AN/wtixHWPPbgJnnIU1dx6eVSsB8L71OlpzM8GTTonYfJyi8WhtraHfxWiil5agtbUSOP0soEu5T8fB98RjWAuOxZGFMN30t9BLxIZRshdsC6NLpQchhBBi1GltdYNhefnY2bloTU3Q1IS5eSPYFoGzz8Wz/D20hgaab7gJlZg44D6A5vp12JOnduvN7OTlQTBwsEy5beN99ukefa97o9XV4n3uGQgGB7R//B9+S/xdvwYIvSfHKuNPCDFCgb89e/YwdWr4XlWTJ09m9+4Bpi13eOCBB7jggguYOnUqM2bM4Gc/+xllZWVs3OhewJ02bRq///3vOfXUUykqKmLp0qV885vf5NVXX8XquNCVkpLCZz7zGebOnUt+fj5Lly7lM5/5DB9++OHwHqwQInIcx/1Xj9ypSsXHQ0epT726CpWYCAkJwx83JRV9//5eV1IZu3eixqUP+uK/GDq3HNfBi3N6fZ37XFIKc+d2tLpa9Ioy0I1QaUR97x737zSMevPi8OJm/PUe1O+PVlvrZvsNMnvInjARNC20aMDcuN7ttdVPNrCTl0/7BZ/E9+xT6LsPVkPovFDd9qlL0Opq+y/D6DgkXv9dzJUrwt5s7NqJk5MXkfNnpAROPo3AKafj/8v97vk9KyvWU4qZ4MJFobKWkS71GY6Tl+8GAT/4AGP1Ktou+jR4fW45TaXwPfaIW/K6Y5FFNGmNB3CSemb8oWm0XnkVenUV8b/+OSo5Beuo+QTnH4Oxc3uoj0qkS1t2ZpAbxXsiNmakmNu2gG4QXHIcKi4evSPwZ65Yjl5ZTvvHL4jxDEcfJyPTXeg1wAtgYmR0LkbR6mpDi7uEEEKI0aaz7KaTl4eT7S5SNCrLMdetxcnKpu0zn6Pxt3fT9MvfuIv5snIGHPjTS4uxCwu7bbPz3KCbUeYG4YxtW/E/+HcSf3Qdxvr+s+S9r72C/19/I+GWG9GqqzFXriDhhu8Td9eveywk1ZoaMdetdauO1Neh7ytx+yNLyXghYmZEAn8+n4/aXlYTVFdXY5rmsMbvLOGZEmZ1b6empiYSExN7PVZlZSUvvfQSCxcuHNZchBAR1FniLpKlPuPj0VrcUp9aTTVORmZkxk1NhUD7wbIGhzB27xxVJfGOBE5Gphvs6AjGarW12IVFqMREjG1bQ9l+waXHY+x0A39G8V4p8ym6GXbGX00NKn1w/f0A8PtxcvNCFzPN1atwsnPcAEs/2j/yMZz8AuL+72BFBb3azTayjlpAcOFifE893mfJF62+Hr2kGP9DD4bdz9i9a/Sd00yTtsuupPXqa1GpaVhTpsV6RjETXLgYbPfLuBOljL9udN0tQfv002CaBE4+leAxC/G88xbmmlVuNrVhjkjwS9+/v9csRye/gPZPXOj2yjzxZDc7/Oj5bk+U+/4YldKWKjUNJzML7xuvjbpyn8b27djjJ7jnm/ETMPbsAcD72svYU6djT5oS0/mNRk7H+VyvG9hKeTEyjF07wef2xjbKYtfLSAghhOiLXt7RbiYnL1R5Sq+sxFy/1i1BD+D3hxYiO1nZ6JWV/Q/sOBhlZTj53QN/KiMDPN7QcY2dO8Dnx54wkYRf3IbnrTf6HNYo3ouTl4/WeICk73yd+N/8EjxePKtWEvfHu7q1pTBXrQTHBt3A8/57GKWlONm54PEM6HcjhIi84UXcBmjhwoX86U9/4tRTTyU+Pj60vaWlhfvvv59FixYNeWzHcbj99ttZsGAB06aFv8BTV1fH3XffzcUXX9zjtm9/+9u88sortLW1ccopp3DbbbcN6vi6rqHrkekBIo5shqF3+1cAFmiahuE1UWZkfi9aUiJ6UxOmqWPWVEN2NmYExtbHpaFpGp7mRlTSIRkwSuHZs5vARz8WkWOJgdGys9BsC0/zAVRqGub+ekhPR2Vk4Nm5DdVQh5owAXXsMRjvvoXZ0ohZshfr5FMPy7+TnGOGRhuXhn5g/5CfE2Z9LU52zpDur6ZMxbNnF5ah4V27GmvxEkzPABZCmF6sT1yA7/d3YbY2Q1ISZn0tmmliZKbjLDsB72+XY7Y2QXL4RVN6Q617/i0vw7dqBfbiJQBo1VV4H30Ec+d22k88cVS+VtTJJ9N68snojNAKt9FoymTIzEKrqUbPGIc+An8nNWUK7NqOs3QZZkoSzgkn4H3/HeL//hfU9BmouDg8pcXY0ZxLeztaoB09LaXX56b98U8QNA3sU09z90kf577WNm7APnYh+qSJEX/eBL9wGf5f/wL/ivewjlsW4dGHzrNjG9aCYzBNHTVpEp5VH2LV1+DZtIH2L109Kl/fsablZLuf9xrqsPNlBftI6+2zjLl3N/aixZjvvIWnfB/azBmxmJ4QYoyT70si2jyV5TBuHGZyorshJQXvhnUYVZUEP/v5Hp+9tLxcjG2b+/1MplVUoVlBtAnje+yr8nLxVJbhmDre3TtwJk8m8MMb0H7/W+IeeQh14om9LrY3S4qxFi0mcP4n8D75OPZRR2PPmYux8kP8v/kV+p/upv3ar4Om4Vu1wv3Mn5KC7/13UHF+KCqUz5OHkPOMGEkjEvj71re+xac//WnOOOMMzjrrLLKysqiqquKFF14gGAxy5513Dnnsm2++me3bt/Pggw+Gvb2pqYmrrrqKyZMnc+211/a4/frrr+erX/0qe/bs4c477+SOO+7gpptuGvDxx41LQBtk+S4h+pKcHBfrKYwezYDHwJuaCGkRKieXkQYH6olLS4DGBpg5zf3/4Rqf585Vtfeca3k5BNvxHj0nco9D9G9ykfs3CTRDWgE0H4Bp0yA7Gx56CGqr4fjj8R97tLvfto3Q3IhvzgwSDuO/k5xjBqkwF9pa8CX5oLcKBT/+MXzsYxCuakBjAyxcQPxQnlPzZsGH7+OvKYPGBnwnLxv4c3PODPd53VgLRTnQvB/ycvCmJ8H0Se5tbY3uuSucQDN4DJg2De9zT8JZp8ITT8Df/uaW9/zKVXjPPbf334mIvVNOhKefxluUO+hSs0Mybza8+Bz+887Fn5YAJx0HD6TC/jr41tdhwwZ4/fXBvefW1cG3vw2tbqY+X/gCnHtu7/tXuc9bb2Fu3++3l32u+88nHAfFu+GLn4vMZ4JDnXEyrPoA74N/hxOWQnKYUqQjrb4e6mvwHXu0e16ZOxNefh7fW69CYjzec88Avz/Wsxx9EooOnj8P488Ko123zzKBAFSUwSfOh5LdeOur5G8jhBgW+b4koqa+GiZNwNf5PjWhCFZ+AD4P3mWLoUuyDABTJsDTB/DFm+Dz9T7uthr388mc6T3fAydPhLpq9/toyR446STi0pPg85fCN76Bb9sGOO64nmM2N0NDrXt9pCgHrr364G2nnwReDe8vf0n8miXu/TdvgM99DrKy4Gc/c9sAXHBBdD5bHwbkPCNGwohcrZk8eTKPPPIIv/vd73jxxRdpaGggNTWV4447jmuvvZbx44dWVu2WW27h9ddf55///Cc5OTk9bm9qauLKK68kISGBP/7xj3jCpBdnZmaSmZnJ5MmTSUlJ4dJLL+Waa64ha4B9YerqmiXjT0SEYegkJ8dx4EArtu3Eejqjw4EDJARt2poD2PWR6dfhxcSsa6ClromEfWUE4pMJRmJs5XHnWlyOndv9nGauWocvaNOcngsRehxiADwJ7t9kVzF2VgHx5ZUE5y3Azi0irrEZGptpmzAV24wnPi4B9cTT6EGblrRs1GH4d5JzzNAYug9/0KZlbxlqXDrG8g/QmpqwTj3N3aG5mYQVKwmmphOYMqv7nZUioaaWgOkf0nlGz8onrrUd+x8PYhgemvMmDPwcEp9KggPtG7dh5U3At7cULTmVtvpm8CaSELRp37EHKyt8s3XPrmK8Xj9tn/gU/p/ejPO1b6Lv2E7wI+cR+OSn3IBAYzvQPujHJUbIGR/BmDITu6FlRA5nzJlP8vXXc6Bocug927v0BIzt22idOB2zogZfeSXNxRWQNLA+qsbaTfgrqghe8EmMlR+iXn2DtqUn9bq/XlxOXNCmFQ/OYF5zy07FSM/BzsiL2vu0dvFniV/+Tay776P9qmuicozBMJavds9tOYWo+mb0jFzigjY89jjWshNpb7Wh9fB7L4yE+IQkgrtLIvP5UQxKuM8y+ratxLUHac3Mw5uZA1u2u+91QggxSPJ9SURb3K492NNnEOh4n/KlZmC2bMCZPoPWdgXt3d+/9PgU97Pt1l04hUW9juvZuBWvx0cz3h6fZb1pmZhr1tG6q4T48kracgrdz+pp2cRNnoZ6+FHaZh7VY0x98yb32OOyw3+unnsMvoVLMe++l0BVHd6WNlpmHYVKTSPB8EBzK23jsiJ2Le9wIecZEQlpAwyoj9gy7fHjx/PrX/86ImMppbj11lt56aWX+Mc//kHhIc1LwQ36XXHFFXi9Xu655x58fa2M6DIuQCAQGPBcHEfhOKOrX4cY22zbwbLk5A+gBYIopbAVEfudGP44jKZm7JpaVNAiOC4jMmP741G6gaqr6z5eIID35Zexs7Kx4hNB/rYjxxeH4/OjKqqwWtth/36slDSCEybj13RQDu1TpoOtsCZNwVy9EuXzE8zIOqz/TnKOGRwnMRmfUtg1dTjJaXiffw69oZ62E08BQC+vQCmFtmdvz99rezsqEMSKSxja7zy/CL+moS//gMCiJVjog3hu6thZ2VBcjGU5+CoqsYuK3Hl4/TgJiajyil7nZVZWYY1Lp33aTMwp09BLimn+2rexFi12d5Dn0OgXl4A1a+7I/a1MA447Dru+OfS8sj79Wbevna1w8ovwKoXavQd71uwBDalVVaGAlo9dgE838D79JFbQ7jWD0ayrRylFMD4RNZjH7YvDOvqY6P6uEpJpO+1MvK++jHV5748hkrTaWozt27CWLO1xm75vH05cHMGUce7jzsrFb3ogGKDtxFOx5TXeK3tcBlRWyntpDHX9LOPdvgOlGwTyCtFy8/G++br8bYQQwyLfl0Q06GX70Er3YZ10auj5ZWRlYyhFYM68sM85LT0Tv1I4ZeVYueEXbAJ4ikuw8gqwbAV0v0atZeVg1tXB6jUopQhMnBz6nNx6+tnE//5OnB07cSZM7HY/7+7d7vtrVm6vn5HtSz9P4trVeP76f1hF4wmOywQgcOwiPG+9QTAnH0deS2HJeUaMhDFZUPbmm2/mySef5Ne//jUJCQlUV1dTXV1NW1sb4Ab9Lr/8clpaWrjttttoamoK7WN3NB594403+N///se2bdsoLS3l9ddf5yc/+QkLFiygoKD3k6kQYgR1rn7ppd74UKj4eLSWFvTqagCcjMzIDKxpqJQUtP37D26zLOJ//xvM7dtovfzLkTmOGDhNQ2VkoNdUozU0AOCMSwevF3vCROwJk9yShYA9Zar7b0Eh6GPyrVFEiUpLA0Df3wBKYRTvdRusOx2ZBlVV7r+lxW6AowutqckdIzFxaAf3+XDy3c8k1tELBn13u6AQfV+pO7+a6m7nO7dRfEWv99VrqlEZmaBptHznOpp+fdfBoJ8Qg9ER4HJycsH0YBTvHfBd9ZoaVNo4MAysSVPQWlvQy/b1fqgDBwBQSaOglGYY9oSJaI0H0BrqR+R4/n/+lfi773JLIR5Cr6tzf7edDAO7sAgnLz/0nijCc9Iz0GprYz0N0cHYvRO7aDyYJk5hkfv6apbsAiGEEKNIWxvxv/0VTnY2gY4FpAB2di4A1ryeGXcAKjUNvD73+2e3GxT6nt2hH/V9Je61jDDsXLe1g+ftN1Fp41Dj0kO3WccuRI1Lx/fS8z3upxfvxS4o6LO1g0pOoe1zl4FSWIuWhLYHzjgLa85c9/O/ECJmopbxd/XVV/ODH/yACRMmcPXVV/e5r6Zp3HPPPQMe+9///jcAn/tc9/4cd9xxBxdccAEbN25k7dq1AJxxxhnd9nnllVcoKCjA5/Px8MMPc8cddxAIBMjNzeWMM87gy1+Wi/NCjBodF9aVHsnAXwLYVujCYcQCf4CTkoK2vyH0c9wD92GuW0vLt7+HPXtOxI4jBs7JyESvqUavcy/QqXHuRc7WL17RLcBnTZqCD9wLR0J0oZKSQdPQGhrQ9jegNTUCbiaNysxEr3YDf1pLC1pdHSr94Bepzn2HHPgD7EmT0UtLsI6eP+j7OvkFeF9+Edra0BoP4GQeLGPuZGWHgpbh6DXVWHPmAaASB1aWUYg+GQZ2YSFG8R73Z6Xc9/k+FvfoNTWh92l70mTQNIydO0IB8R6HKCl2L5CM0t6TdtEEAIzivVhdg25RoJeW4Fnxgfv/Zft6rOLWGupxDplD2xcvR2n6yPSEHMOczEw8e3bFehqig7FrJ9ZMN4vY7jg3GPtKsadNj+W0hBBCCJdSxN1/H3ptLU233N6th7K14Bhar/k69sTJ4e+raTjZPRdsGps2knDHLbR873qsuUdhlJURPOnUsEM4HYE/c/NGgscu6n6jYdB+xtn4H3mI9nPP6/YZ29i7F2cA10eCxy1z/+2yUNWeNIWWH/y43/sKIaIrat+Km5ubQ9l1zRFecbd169Y+b1+8eHG/+yxZsoT//Oc/kZyWECLCNMc9h0Q64w/ci24qIaFn8+ThjJ2Sit6RWYZSeN5/j/YLPol11OAv2IvIcNIzMLdtQa+vc3/uuMjpTOr+wdqeNBkM0/1XiK5ME5WYhL6/Ab2kJLRZryjHzsxEr6pEJSaiNTVhlOzF6hb468z4G3rgLHDK6djZOajklEHf184vRGs8gLHbvUDdPeMvC3PblvB3VAq9thYnPWNIcxaiN07RePS9ewDwP3AfRkkJzTff1uv+3TJVExJwcvMwdmwneOLJPXe2LDzvvEXw+BMiP/EIUVlZKH8cevFeiPJnA9+Tj6NS09Aa6jFKinsE/vS6Opy8vG7b7ElTojqnw4XKyECvrXWD1xIkja22NvTyMuxzzwM6Lm7qOnppsQT+hBBCjArm8g/wvP8Ordd+s+fiNa83FDjrTbhKLeaGde7dX3gOJysbrGBo8UsPcXGotHFo9XVhP+sFzjoH7xuvEffne2m+8RZ3gbRtY5SW9Ds3ADRtVH/+FuJIFrXA3z/+8Y+w/y+EEANmRyPw55Z2NPbuiWi2H4BKSQkFBrS6OggGsMdPiOgxxOA4GZlo777tluTy+XsP9CYk0HT7L3Cyc0Z2gmJMUKmpaA0NGCXF4PG6X4SqKrCZh15ViT1tBsamjeglxdBlpaPWsfBJJQys8XI49pSpQy6753T0QDbXrnZ/PiTjT6uvg2AQPJ5u99Oam6C9LeLnSCHsogl43n4Lc/VKvK+/CoBWV9ut5FBXek011oyZB+8/eQrGzu1h9zVXrURrPEDgpFPC3j4qaBpOYRHG3oGXOx0KvbICz3tv0/a5L+J99mmMkmKCh+5TX4cl1QiGxMnIBNtCa6jvXi5VuAtHKspD2QXRZuzaCUodXLjl8eBk5WCUlvZ4zgshhBCx4Hv+GeyZswkuOW5I93eyczBXrui2zdy0EZWQgLluDeaHy939+mhbZefmYdbXhf9e6fXSeuVVJPz0J3hfeoHAWeegV5S717OkIpIQY1rUGxm1t7fzsY99jLfffjvahxJCHG46A38R7LnWmfGnF+9FdbkIHglOSmqo1KdeUe5uk5rmMaUyM9FaWzD2lbj9/frg5Pddv14cuTrL+Bole7ELCnEyM9Er3FWXelUlTnYOTkEhRpeMQACt6YDbazJh6KU+h8PJzgHDxLN6JehGqF8huIE/lEKvqe5xP62jB6rKlIw/EVl20XiwLeLu+T325KmgaZgb1off2bLQ6utwMg4+D+0pU90AfHt7j929b7yKPWkKTmFRtKYfEXbR+IPlTgHvi89hbN8W+lk7sB/ff/8Nra1DPICN76F/o5KSCZx8Gk5BobsooSvHcYNW4yRoNRSd2dB6TU2MZzL6mCuWk/i9b6LvHplSqOb2rai4eJwufY3swkL0fSV93EscrrwvPU/c735D3O9+g++JR2M9HSGEQN+1E2P7VtrPPHvIYzjZ2W57CctyNzQ3Y+zaQfsFn0IlJuF//FFUYiIqJbX3MXLzQNOwJ04Ke7s9YyaB087E/99/o+/dE+rJ7YyXwJ8QY1nUA38+n4/Kykr0CF64F0IcIToCfyqigT8380ZrbYlCxl8q+v797sX0ynLQdcmYibHO37+xbRvOuLR+9hYiPJWSht7QgF5aglNUhJOd4wb3HQe9uhonOxu7sAijpHsWj9bc7Gb7xaoUnGni5OSg7yt1gyddzqVOVjbgBi4P1RkMlPOXiLTOVcNa0KL1mq9hT5iEuW5t2H21+npQCtXleWhNngqOg7Fnd/d962ox160hcPIozvbrYI+fgF5eBoEAWm0t/n/8lfhf/8wNuDsOcX+4C9+Tj+F9+41Bj63tbyD+57fhWfE+bZ/5HHi9Heem7oE/7cB+cJwePf7EwBwM/PVcOHGk6ywh7XvysRE5nrF9G/bkKd3f3wqLMDdvIuG2m/E+9fjBhYTi8KYUvof/g1FSjF5Zju+Rh0K9loUQIlZ8Lz2Pk5GJteDYIY9hZ+W43ztr3QVH5rYtoBTW0fMJnHq6W6klv7DP75zBZSfS/olPdusveKi2iz+DnZND4k034H3hOVTaOOn1LsQYNyLRuDPPPJPnnntuJA4lhDiMRLPHH3QvexcJTkoqWEFoacGoqHDHlwyymHI6+q3pFWW9lpIToj9OaipafR1GaSl2QRFOTi56ZYVbQtaxcTKzcAoL0cvKDq7ExO3xF6tsv052vpsFcWgQT40bB4bprh49hF5TAx4vKil5ROYojiAJCVhzj6Lts5/Hyc7BmjsPc8NacJweu4YLQDuFReDxYuzc0W1f71tvgMdLcMnx0Z1/BDjjx4NSGKXFeN5/FwwT5fMT/7s78f/nX5ibN+Lk5ePpKIU6YG1tJP74eozSEpqvv5HgshPd4xWNR2uo73YBXKtz+952zQIWg5CQgIqPR6upxvPeO8T/+udhs1CPRMbOHaj4eDwrPkAvjXLWnVIYO7b16OXXfta5tH3m8yi/H/9DD+JZ/n505yFGBb2qEq2lhbbPf5GWb3/ffX5s2BDraQkhjmDagf143n2HwOlnDeuaVmjBZkefP3PjBpz0DJysbAKnnwm63nt/vw721Gm0X3BR3weKj6f5xlsJLlnqvr9KmU8hxrwRuSK9YMEC7rzzTq666ipOPPFEMjIy0A5ZiXDmmWeOxFSEEGOJo9x/Ixj4w+93V0Ip1a18WCSolBQA9AP73f4m0i8u5lRqGhgm2JZkNoghU6lpoSCEXVgEuo7+yksHS/pmZaO8PrAt97XfUXJMb2qM+SpJp7AQlr+HOvR815GRrFeGyfirrXEzWmKVqSgOay3f/1Ho/625R+F78jGMPbuwJ03ptl8o8Jfe5blrGNgTJ2Hs6N7nz/Pu2wQXLu69j+soYhcUgaahFxfjefctgguOIfDRj5Fw840Yu3fSdvGlOHl5xP/ml+h7duNMmDigcY19JWh1tTTfdFu3/i125/mopAR75iz3/+vdwJ+8Lw6dSs/A9/yzoRLv5upVWEuWxnZSsWZZGHt203bBRfheeh7fk4/Tes3XonY4vbwMrakJa2r3wB8JCQTOPpfA2eeSeN23MDauJ7h09C8KEMNj7NoJgD1xEioxyV1AsX6NvC6FEDHjffVl0HWCw6xIoTIyQDfQ9+2DeUdjbNqAPWu221JiXDot13wDpyhCpe59Plq/fA3B+cfiZEr1FyHGuhEJ/F1//fUAvPHGG7zxRs+yNZqmsXnz5pGYihBiLLEjn/Hn9ttKQGtqinjGn0pNdQ/R0IBeUY41e25ExxdDoGk4GRnolRXSy0gMWedrG8ApKkKzLbAtzC2bOp5jmWhJboDPKCkOBf7cjL+EWEw5JJTxF+Z852RlhS31qdXW4GRIhqyIPnvqNJQ/DnP9up6Bv9oaN+vU5+t+nylT3Uw5pUDT0A7sR99XSvvHPjGSUx86nw8nOxfP++9g7N1D+8cvxJ40hZavfA1z1w4CH/0YOA4qJRXvG6/RNsDAn1ZTC4B9SG9hJzcPDNPtUdoZ+GuoB13vsxeM6Judk4unrIy2L16B543X8b771hEfYNCL90IwgD19Bu1+H/6//4X2Cy+K2kI4Y9tWt1/R5Cm97mPNnou5dnVUji9GF2P3LpzMrNCCK2ve0Xg+eC/0XqHv2olKSkbJhWwhxEiwLLwvv0hg2YnDXwhqGFjzF+B/5CGc7GyM4r0Ezj3v4KEi/flD07AWLY7smEKImBiRwN8rr7wyEocRQhxuOgN/Ee4RquLi3cBfemQz/pzkjoy/hnr0qiqc03L7uYcYCU66G/iTzAYxVJ2vbZWUjEpOwem4sG6uX4dKGwceD8rjcTMDS4qhI7NAa27GiXGJWafALfsS7nznZGWH+jF1pddUY4+fEO2pCQGmiT1rNub6dbSff0G3m7Sa6rCZ+das2XiffcrNrs3Nw9jqPoet6TNHZMqRYBeNx7P8PVR8PNZR8wH3ok3owo1hEDjhJLyvvUzbJZ8Fr7ffMfXaGvD54dDFBqaJk5eHXnKw7KJWV+dmxEsP9iFr++wXaf/UJW5g1bLx//uf0NQEiYkQCLhln8dABmokmbt2gG5gT5iIPWEi/n//C/PDFQQ+cl7/dx7K8bZvdbPw+/g9W7Pn4H3pebTqajfgoxRa4wFUx/u6OHwYu3ZiT5wc+tmadxTe559BL9uHSk4m4We3Yh2zkNarvhrDWQohjhSeFR+gNdQTOPPsiIzX8pWvkfDLO4j/zS8BsGbOjsi4QojDW9S/7TU0NFBfX4/H4yE/P7/X/4QQooeOwJ/SI5jxh9vnTyUk9Lw4Nlzx8WB6MHbvAiuIkyOlPkeDzhKHEvgTQ9WZ8Wd3lFBxMjJBNzB27+yWyWAXFGKUFId+1hoPoBJj2+PPyc2j7dIvEDxmYc/bsrLRq6rc1fBd6NXVqAxZES9GhjXvKDdzp6Wl23a9prpHb0oAa8YsMEzMdWsBMLduwcnI7FnOdhRzxrs9U6yFi3sN6gVPOgWtuRnPyhUDGtMt0ZsetkSvXVDU7dyk19fhpEp/v+FQ6elu0A8ILl4Cjo1nxQcQDJJw609Iuu5boV48Rwpjx3bs8ePd57TXizMuPVRWNirH27YN+9Ayn4ewZswCTcPc5PZ68/3vvyR97St4X3q+x3ufGMOUwti9C3vipNAma8YsMD2Y69bie+x/aC0t6NXVMZykEOJI4n3hOaxZc9z+1JHg99P83R9gT5qCXTQelS7VWYQQ/Yta4K+1tZXvfOc7LF26lIsuuoiTTjqJz3zmM5SVlUXrkEKIw4zmdJb6jHDGX0Ji2IuJw6ZpOKmpoewD6fE3OnT+reXDsRgqp6McnlPY0eDcMNzSmUrhZB0soenkF6BXHLzQqzU3xzzwh6YROOcjYRc6OJlZ0N6G1njg4Ma2NrSmxuicI4UIw5p7FDg25tbuZf/1mlpUuMx8vx9r+gzM9W7gz9i6GXsMZfsB2B3lOwNLeu875uTmYU+YiLlmYGUK9dqaXl+3dlERemlJKNCh1ddL+esIUmnjsGbPwfPeO/j/8VeMkmKUz0f87begHUGBBmPHjm4le51x49Dq66NzsMZG9PJ92FOn9b1fYqL7Otq0EZqb8b7wHE5WNv6//R9x9/wBgsHozE+MKL28DNrbsCcdzPjD68WaMQPvm6/hfflFVFIyWnVV7CYphDhiGLt2YOzYFrFsv5C4OJp/civNN9wc2XGFEIetqAX+7r33Xp5//nkuuOACbrzxRi677DK2bNnCjTfeGK1DCiEON47j/hvJHn+AM2EidpRKI6jkFDfjT9flwvkoYU2djpOXL2WdxNAlJOAUFmHNnhPa5GRnu/9mZR/clpGJXlPtXlxXqqPHX4wDf33oDFrqVQcvhOm1Ne5tES6FLERvnKxsnPQM98J8J6X6DGRZc4/C3LQRrfEAxp7dWDPGVuDPmnsULd+7HntO372A7SnTMHbuGNCYWm1Nr69bp6AQra0VrcZ9fev1dZIFH2HBpcswN23A++pLtH7hcpp/9BMwDBJ+diu0tcV6etHX1IReUYY9ZWpok0pNc/tJRoGxfRvgfsbrjzVrDubG9fheeh4tGKT5hz+m9avfwPPe23jeeSsq8xMjy9i1Ezi4qKKTNfdo9JJiVGoq7R+/EL2u1i3DGym27Zb2FUKILrwvPI+TkYm14NjID67rR1wpcSHE0EUt8PfCCy/w5S9/mdtuu41LLrmE6667jl/84he88847tBxSykcIIcLq7PEX4cBf22c+R9tnvxDRMTup1FRwbDeTxhyRNqqiH/bceTT94jdhy58JMSCaRtMdv8Kaf0xoU2efv26Bv/QMCAbcDLr2drCCqKRhNnOPIicrGzQNvXhPaJte42anyMIFMWI0DXvWbIyOUnwA2oH9EAyE7fEHbnlQAu14n3kKlMIeY4E/dN3t7dfP+5I9ZSp6RZnbO66/IWtqei13ahdNAHAXJgFafR2OZPxFVPDYRSh/HMETTyZ48qmocem0fPcH6JUVeFavjPX0os7c3RF46RL4c9LS0CIc+DNfeRmuvx7/b36Jk5mF6pJ13xt71my0hnp8Tz5O4ORTUWnjCC49HnvyVDxrVkV0fiI2jN27cLJze1Q3sI52z7NtF30aOy/fXZRVF5nys9r+BhJ/8F3i/nRPRMYTQhwetLpaPO+/S+CMs6WXshAi5qJ2FiotLeW4447rtu24445DKcW+ffuidVghxOHEdjP+lDZ2PjA5KW5WmZT5FOLw1vkadzK7lPrsuOiu11SjNTcDuP1ER6v4eKw58/C++UZok7l2DSoxScoAihFlzZ6LsXcPWlMj0H8A2ikaj0pOwffCc6ik5FAg/nBjT3bLJpq7+sn6C7gLDnrL+HP70eXjWbvK3be5GSU9/iIrIYGmO39H65e+EgroOnn52FOmHRFZZcaO7aj4+G6vRZWahl5XF7Feer4nHsV3/30QF0fg0s+7pc4GsKjLmj4TdAMsi/aPnn9w+/wFmOvXSbnPw4Cxa2e3/n6dnPwCGu/8A8ETTgotjNAjUO5Ta2ok4Wc/RS/fh7F967DHE0IcPnzPPo3yeQmcclqspyKEENEL/FmWhc/n67at8+eAlEMQQgzAwR5/kc34iybV2QvsML0IKYRw2VOnopKSsXPzQttUphuk0GpqQwGMmPf460fgpFMxdmxD31cKLS1433iNwKmnj6nzrhj7rI7y28amTQBo1W5Jyt4y2NA0tzdgMIA1c9Zhm9Ht5OSiEhL6Lfc5kBK91vwFmKtXuaXuQEp9RoFKTunxXAwedzzmurWh94TDkb6vFO+Lz2PNntvt8Ttp4yAYgAhU+/E++zS+h/9D4JOfghtvJHj2uQPv3ez3Y807isBpZ3Q7pwTnHwPtbZhbNg17fiKGbBtj757u/f266Pxs1nl+7FxYMlTGtq0k3HYzWkMD7R/7hHv+lYpWQgjcihXeV14icOY5Uo5TCDEqRLUO3dNPP83KlQdLmziOg6ZpPPXUUyxfvjy0XdM0vvjFL0ZzKkKIsShKpT6jSUnGnxBHBHvSFBrvub/bNpWYBF4fek11KNNPJY7eUp8A1jHHohIT8b7xWkep0iCB08+M9bTEEUalp+Pk5GFuXI+1aLF7IdXn77NHpjXvKDzvvIk9fYyV+RwMTcOeNKXfwF9n776+An/B+cfgffYpzJUfAkhW7wgJLl6K/59/w1z+PsFTz4j1dCJOr6wg4Y5bUSkptF3x5W63qTQ3q1RvqMcZRva7vmc3/gf/TvtHz8e+4JNDGqPluz/okXnoFBahxqVjrl7lLiQQY5KxZxcE2nsN/IV4vW4W6hAz/rSmRuLu+QPm2tU4hUU0X/9jUArfk49h7CvFnjptSOMKIQ4f3ueeAV0ncPa5sZ6KEEIAUQ78/f3vfw+7/a9//Wu3nyXwJ4QIy3FLfY6lwJ+T4l7kcHIk8CfEEUfTcDIy0GuqQxfgnT4CF6OCx0Nw2Ul43noDFR9PcNES1LgBZlEIEUHWrNmYmzaiHdiP74VnsaZO6zOTzzrqaOyZswkuOHYEZzny7MlT8L78ohu06OX3odfWgKb1Gcyzp05Dxcfjfe0VABwp9TkiVEoq1uy5eN995/AL/LW1EX/HrSh/HM3X/7jHQpfO55hWVwf5BUM+jOfD5aiEBNov+jTmcLJ7D72vphGcfwzm6pXwuS8etpnDhzvPm2+gUtMGFHhzMjJDGdKDPs47b2NuWE/rtd8kuHip+3wJBEDX0UuKJfAnxBHK959/Ya5fiz1zNp7XX6X99DNH/cJPIcSRI2qBvy1btkRraCHEkaIz428MfRF38vPB58cuGh/rqQghYsDJyHR7/BUUuOeu0dzjr0PgpFPwPv8MWuMBWq++NtbTEUcoa9YcvK++RPyvfwHBoNsrrQ8qMYnmH/1khGYXO/aUqWiP/w+tqgqVnR12H722xi01bvbx1c40sebNx/P+O+DzSwmqERQ8bhlx9/0RrbZ24OUpxwDfs0+h19fT+IvfhErdd9U1488exnHM1Sux5s2PykJAa8ExeF95Eb1sH84wgpMiRgIBPO+9TeD0swb0/HAyMtGrh1bqU6+swMnOJrjkuIMbvV6c7FyM0hKkU6QQRyDLwvvqSzgZmXiWvw+aRuCcj8R6VkIIERK1Hn9CCDFcmmODboyxwF8BB+7/G0p65whxRHLSM9Bqa9Camtxyn2Pg/OUUFmFPnoo9cTL2lKmxno44QtmzZgFg7NpBy1e/cVgFSIbDnjwFAHNX7+U+9dqaPst8drLmLwCkv99ICx6zEEyPe1HwMKHV1+F7+knazz6314A0Xi8qIQGtoX7ox6mtxdi7B2vBMUMeoy/WzNng9WGu+jAq44vo8ix/H62lheBJpwxofyczE22IPf70ivKwPdztggL00pIhjSmEGNuM7dvQWlpou/IqGu+6m8a7/4ySigpCiFFEAn9CiNHLtsdUmc+QMXChXwgRHU6mW0ZKb2pCJYydMi8t3/ouLd+5Ts5fImZUcgrBE0+m7QuXY8+ZG+vpjBoqKRknOwdjx/Ze99EGGvg76mi3JLH09xtZ8fHYU6ZibBvbFXG8Tz1O/J2/wNi1A9+jD6O8Hto/9ok+76NS09Drhx74M9euAl0nGK0efF6v2//y5Rfdso1iTPG+8Rr2zNkD7q3uZGai19UerCozCHplZdjjOAWFGCXFgx5PCDH2eVavRKWkYk+c7H6H8nhiPSUhhOhGAn9CiNHLdkCX05QQYuxQGZloTU1oNTWoxFHe368LlZomK1RFzLV++Rq3ZJvoxp40BXPVh3jefTts9pReU4PK6D/wpxKTsOYehVNQGI1pij5YU6Zibtvq9mocKw6Zq/ftNzHXrCbhxh/iff1V2j/+yX7LWTtpaWj1dUOegmfVSuxpMyCK76ftn/wUen0d3hefj9oxRARZFjQ3o+/dg7F5I4EBZvsBqMwscBy37+Rg2DZ6dRVOmOxWu6AIrfEA2oH9gxtTCDF2WBbGtq34HnsE/4P/AMcBwFy9Cuvo+bJwUggxakWtx58QQgyb46AMCfwJIcaOzqwbY++esBeIhBBisAJnnUNc8R7i7v4dmB6abr0Dp7DIvVEp9NraAWX8AbR8+zpZVBUD9rTpaE8/4S4KycyM9XT6ZS7/gLi/3k/jXXe7GQyBAHp5GW2fvwzlj8PYuoXA6Wf2O45KG4deXj60SbS3Y27cQNsnLx7a/QfIyc0jcMrp+J58lODJp6ASx062/pEo4ZYbMTpKH6v4eIKLlgz4vk6G+9rTq6uwB/E61GpqwLGxs3uW+nQK3YUUekkJ9uyUAY8phBg74n93J+aqD1Fx8WhtrTjj0rHmL0Av30fbxZfEenpCCNEr+dYnhBi9Onv8CSHEGBG6qFRZjkpKjvFshBCHA3vKVJp+fieNf/wTyuPBs3JF6DbtwH6wgjgDyPgDwDQl8BcD9tRpAJhjpNyn963X0Q7sx9i7BwB9Xyk4DvaESQSXnUjbFV92n0v9cNLGDbnHn7lpAwQDod6U0dR+4UXgKHyP/a/vHR2H+F//HH3XzqjPSYQRCGDs3kngjLNp+dq3ab7hZvB6B3z3zgUS+iD7/BlVFe79w5X6zM4Bw8SQPn9CHJb0ygrMVR/SdukXaLz3AQKnnoH/v//G+9ILYJhYc+bFeopCCNGrqH3ru/766ykpkQ8/Qoih08Zqjz8hxBFLpaWFFiyofkqgCSHEYKiUVOzZczDXrQ1t02trAAac8SdiQyUl4+TkYWzbGuup9K+1FXP9OgCMnW5mlbF3D2ga9iDLxKq0jh5/gyxxqu/Zjf8ff8XJzcfJzRvUfYdCJacQ+Mh5/fb600tLMFevxPv+u1Gfk+hJL9sHShE8bhnW4iU4ReMHN4DXi0pJRa+uGtxxKyvAMFHp6T1vNAzs/Hx0CfwJcVjyvPk6Ki6ewKmng2HQdvFnUImJeJ9/Bmv2HPD7Yz1FIYToVdQCf4899hj1w2jkLYQQSOBPCDHW6DrOuHEAY6rHnxBibLDmzsPYsQ2amwHQamoBBtTjT8SWPW2a+7cb5TxrV7tZpOkZGDu2A2AU78XJzh30BU4nNQ1sC63xQNjb9T27Q8cIHf/tN0m8+ceouDiav3f9iPVOCh69AGwLY8/uXvcJ/T42bxqROYnuOrPq7Lz8IY/hZGQOOuNPr6jAyczq9XupU1AkGX9CHI4cB+9bbxBcchz4fO62+HhaL7sSYEQy0oUQYjikzosQYvSybZSUoxJCjDGqo9ynBP6EEJEWnHs0OI5bBhG3rDAeLypBzjejnTV1OkbxXmhtjfVU+mQu/wB7wkSsYxaGeqkZxXuxB5tdhdvjD0A7ZEGwvq+UuLt+TeIN3yfh9lvQqtwMLH3PbuL+dDfBRUto/slPUVlZw3w0A+cUFoHH2yMQ2ZW5syPwt3f3qP87Ho700hLUuHQYRkUFJzMLvaZmcMetrOizb7NdWOhm/A0ys1UIMbqZ69ei1dUSPOXUbtut+cfQfMPNBE4+LUYzE0KIgZEr6kKI0ctxJONPCDHmdPbaUolJMZ6JEOJwo7KycLJz3VKMgQC+l14gOP+YEcuKEkNnT5sOSoXKZ45KgQCetauxFi7GnjIVvbICrfEAevEenPGDD/w5HYE/vUufP62pkYSbb8DYvYvWK67CSUoi7v/uA8si7v57cfILaP3S1YPq3RYRpok9YWKfgT9j5w7saTPc4PsYyN483Bj7SrHzC4Y1hpORgTaEUp/h+vuFxiwoRGttQaurG9bchBCji+f1V3EKi7AnTu5xmz1jJng8MZiVEEIMXP8duYfh5z//OUlJ/V/00jSNe+65J5pTEUKMQZpth3plCSHEWOF0ZvxJjz8hRBRYc+dhrl2N9/ln0Pbvp/3iS2I9JTEATl4+KiEBc/tW7DlzYz2dsMz1a6G9jeDCxaHFd+aKD9BaWoaW8ZeSAnTP+PO++Dxa0KLp5ttQKamoceOI/+UdxP/idoy9e2i++TYwo3qZolf2lKmYKz4If2NrK/q+Ulov/zL+sn0YWzZjzT1qZCd4hNP3lWIds3BYYzh5+W5v1JYWiI8fwB0c9MpKnNN6D/zZBUUAGKXFWOH6AAohRj19XykqLs7NKga02lo8q1bSdslnZXGVEGLMimrGX2trK83Nzf3+19TUFM1pCCHGKtsGQxKThRBjSyjwN4DFT0IIMVjWvKPQq6vwP/Y/Aqef2WcmihhFNA17yjSM7aM3U8zzzls4efnuf1nZqMQkvK+9AoBdNGHwA5omKikZvb4jE6q1Fe8LzxI45TRUSioA1lHzCR5/IuamDQTO/gj2pCmReTBDYE2eil5TjXZgf4/bjF07QSnsKVOxZs7C3LolBjOMAcsi7g93offR+3BEtLejV1cNO+PPnjzFzbzdtXNA+2t1dWBbODm9n2dVRgb4/Ogl0udPiFGnuZm4392JVt9HRm5zMwm33kjC7bdCIACA/+F/o+LjCZx0yghNVAghIi+qS+luuukm5s2bF81DCCEOZ7aNklKfQogxxikoBF0PlTgTQohIsmbNAcNEeUzaP3FhrKcjBsHJzcNcuybW0wjL89YbeJa/T+uVV7sbNA178hTMtatRCQmocUN7T3PGjQtl/HlffhGtrZ32j3ys2z5tn/sCdn4+gTPPGdZjGC57sht0NHZsx1pwbLfbjF07wOfHyS/Anj4Tz3/+5V4gHumSpCPMXLUSz/vvoNfW0HzjLTHLfNH3lYJS7mesYXDy8lFx8Zg7tw8o81avrHDv19cCC03DLijEKC0e1tyEEJHnWb0Sz/L3sadOJ3DOR8Lu43vqcbRAEK26Ct/j/yO4aAmed96i7QuXQ1zcCM9YCCEiR1JphBCjl+NIqU8hxJhjT5lK4113oyTwJ4SIBr+fwFnn0PbZL0ov0TFGJSWhNTXGehqutjbMdWvQmhrRi/cS939/JnjCSQS7ZDfYU6YC4BRNGHLAR6WmYezeheftN/E9+xSBE09CHVIOUSUmEfjYJ8DvH/LDiQSVkYFKTgnb58/cuQNr8hTQdazpM8AKDjhrbCzzvv7P0Z/4AAB3a0lEQVSK+zvZvhVzxfKYzcPYVwow7Iw/NA170qQB99rUKyvcxVwd1Rx64xQUoJdKxp8Qo425epX775qVYW/XqqvxPf8s7R85j/bzP4Hv6SeJ+9PdONm5BE4+bSSnKoQQEReb4vlCCDEAmmODLusThBBjjwT9hBDR1PaZz8V6CmIIVGIiWnMTKBXznkHe11/F/8+/uvPw+rBzc2n94pXd5tWZATeU/n6hMcZPwPfkY8Td+wfw+Ql89PzhTj16NA17ylQ3u+8Qxo7tBJadCIAzfgLKH4e5dTP2jJkjPcuIMzZuwPvKS7R//AKcLn9rrbYWc/1aWi+7Es+HK/A/9C+aFhwTkx6M+r5SnPSMiGTf2JOn4n391QG9DvWqSjfo189jtguK8Lz7TsfCVfn+KsSoYFmY69fgZGRibt4ctren/5GHUAkJbia6aeL54D2M4r20fOt7Mes3K4QQkRK1TyQLFy4kISEhWsMLIY4Etg1S6lMIIYQQQhwGnIQkNzDQ0hLrqaCX7cPJyaP1S18hsOxEWr7xXfD5uu1jTZoChhnK/BuK9os+zYH/+6f7333/N+p7UtqTp2DsdPv5ddJqa9Ea6g/+HnQde/oMzDWrYzTLyNCqq4m//RYS7rgFz+qVxP/2V9DcHLrd+/Yb4PESXHI8bZd8Fr2qEu8rL8VkrkZpCc5ws/062JOnoB3Yj1ZT0+++emUFTlZ2/2MWFEIwgF5VGYkpCiEiwNi6Ba2lhbbPfB4cG3P9um63a7W1eN55k/YLPulmnJsmLV//Nm2f/myPcs9CCDEWRW35wj/+8Y/Q/7e0tLBp0yaqq6vRNI2MjAzmzJmDP8alPIQQo5ztSOBPCCGEEEIcFlSSW5pVb2rEifEiWb2yHLuwkOCJJxM88eTwOyUm0viru1AZGUM/kKaNqT541uSp+Fpb8L76Ek5SCkb5PsxVbom4zgxIgMAJJxP/h9+g792DM35CjGY7PHF/+TNGeRkt3/oedkERiT/+PvH3/oGWb18HgOeN1wguXgLx8TjxRQSXHI/3lRcJnDXyvRj10hKsRUsiMlZnANfYuQMrs0sJz4AbuOvaR9CoKMeaNqPfMZ1C9z56STFOTm5E5imEGB7PmlWo1DSshYtwCgrxrFmJtfjgecTYuxuA4NHHhLY5+QUEIrTIQAghYi2qecstLS387Gc/4/HHHycYDKI6Vs1pmobX6+WCCy7guuuuI06apQohwrFtlCGlUoQQQgghxNinEhMB3D5/Mc580ysrCS45rt/9VGbfvc0ON/akyai4ePx/uR8A5Y/DnjGT1q9+o1sZb+vYhahx6fhefI7WL30lVtMdMmP9Osx1a2j5+newjlkIQOtXvkb8r39Ows0/BtNEr6qk9aqvhu4TXHocnvfedstujuSF8bY29JpqN6suAlRKqlv6b+d2rCVLQ9u9r7+C/9//4sCf/+qW+FMKvbIS58RTeh+sy5gqMRGjtARr4eKIzFMIMTzm6lUE5y8ATSN49AK3xG+XcrxGSTEqPh41Tlo0CCEOT1EL/FmWxWWXXcb69es588wzOf7448nNzUUpRUVFBW+99RYPPfQQW7du5Z///Ce61EEXQhxKOaBLxp8QQgghhBj7VKKb8ac1NcV2IoEAem2NZCaFEx9P4x//hBZoB0DFxYevQGKatJ9+Jv7H/kfbpy9FJSWP8ESHwXHw//sf2FOnYy1cFNpszT+G1iuvxlzrljC1z/4I9rTpB2+fMw98fjwfLqd9BAN/xt497rQLIndMe9IUjB3bex4nGHDLe+YXoDXUQ6AdJ7v/Up9oGk5BEXpJScTmKIQYOr28DL2iDOuSSwGwFhyL7+knMHbuwJ46zd2npASnoCjmPXeFECJaohb4e/zxx9m4cSN/+tOfWLZsWY/bL7roIt58802uueYannjiCT7xiU9EaypCiDFKkx5/QgghhBDiMNFZ6lNrbIzpPPTqKlBq1PfbixmvFzWA8qTBU07D/+gjeF5/lcB5H4/+vCLE8/abGMV7af7JT3tc8A6efCrBk08Nf0evl+DRCzBXfED7+ReE38dx0EtLcIrGR26+K1egkpKxJ0yK2Jj2lKl4Hv4PWJab3QfopaXuv2X7cPIL0Cvdfn0DfZ3YBYWYmzZEbI5CiKEz16wG04M1ey7gvuZVYiLm6pWhwJ9RshdrxqxYTlMIIaIqaml2zz//POeff37YoF+nE088kfPPP59nn302WtMQQoxlEvgTQgghhBCHC68XPN6YZ/zpFeUAODkS+BsOlZRM8Phl+J55kvjf/oq4392JXlIc62n1y/vic1gLjg1d/B6M4MLFGHt2o1VVhb3d9+jDJP7we/gfuA8CgeFOFZTC/HA5wWMXhsrzRYI9Zaqb3df591IKfV9H4K/j9aFXVriZfJlZAxrTKSxEr6iAYDBi8xRCDI25djXWjJng97sbdB1r9jzMjR3BectCLy8P9ecUQojDUdQCf1u3buWEE07od78TTjiBLVu2RGsaQoixzLZRUupTCCGEEEIcJlRSktvjL4b0igrw+VGpaTGdx+Gg/byPY0+bAYEA5sb1eF98PtZT6lt7O0bxXoJHzx/S3a2j54PpwfPh8h636cV78T35ONa8o/G+9SYJt97olsscBr14L3pVZcT75tkTJoJhYu50y31qtbVoba2gaRhl+9xjV1bgjEt3A/YDGbOgCBwbvbwsonMVQgxSIIC5dQvWvKO7bbZmz8bYtQOam9HL9oFjYxdGLjtZCCFGm6gF/hoaGsjK6n9lVGZmJg0NDdGahhBiLOvSeFkIIYQQQoixzklMjH2pz8oK7Oxs6WsUAU5OLi3fvo6W635I8KRT3YCY48R6Wr0ydu8Cx8GeNGVoA/j9WPOOwrPig+7bHYe4++/Dycmh5Vvfo+knt6JXV+F7+slhzdez4gNUfDzWrDnDGqcHrxd7wkSMbdsAMPa5vfns6TPRy9zAnV5RMahyuHZH30OjVPr8CTGStKoq4n95B1ptLQDm1s0QDGDNnddtP3v2XDeLeNsWjI5sX7tAMv6EEIevqF1RDwaDmGb/LQRN08SyrGhNQwgxhmmOI6U+hRBCCCHEYUMlJg261KexaSOeN16L2Bz0ynLp7xcFwUVL0BoPYGzbGuup9MrYuQO8PpzCoiGPEVx6PMb2rfgf/IfbmqGtDf+D/8DYvZPWL30FPB6ciZMIHncCnvffHVYg1LPiA6z5x4b68EWSPXUaxja3+pReWgpeH9bceejl+9zSn1WDC/yRmIhKTUOXwJ8QI8r/n39hrl2N7wW3jZS5bi0qbRzOIUE9JysbNS4dc+MG9JJi1Lh0SEiIxZSFEGJERP7TUxdPP/00K1eu7HOfsjIpgyCE6IVtgyEZf0IIIYQQ4vCgEpPQmgee8WesX0fCr3+OMk2CJ57ca5ae1lBP4o++T+D0M2n/+IV9ZvPpFRUElx4/2KmLftiTp6BS0/Cs+AB7xsxYTycsY+d27ImThrW4MrjkOLT6evz/+SfGls3oNdVoTU20feqSbn0Dg8ctw/vicxibN2HPHnzGnl5ehr6vlLaLPj3kufbFmjod7/PPoNXXYZQWY+cXYOflo7W0oB3Yj15ZSXDJ4F4ndkGBZPwJMYKMHdvxLH8PJy8fz+uv0HbBRZjr17rZfoe+D2oa1uw5GJs2oNLGYQ9jAYQQQowFUQ38/f3vfx/QfpqUGBFChGPbKMn4E0IIIYQQhwmVmIheWT6gfY3Nm0i48xc4KSnotTVodXWo9PTw++7Yjra/Ad///ouxfRut13wNlZjUc8dAAL2uFicndzgPQ4SjaQSPXYRnxQe0ffYLo7KUqrFzB9bipcMbRNMInPtR7ImTiLv/PqyjjqbtExehDmn1Yk+egpOVjffdt2gdQuDP/HC5m4V3SJ+uSLGnuUFKY/t29NJSnIICnLx8d9vWrWitLTjZ2YMa0ykowlzd9+J3IUSEKIX/X3/HKSyi+ZvfI+m7X8f39BPopSW0n39B2LtYs+YQ99YbqLpaAiefNsITFkKIkRW1wN+WLVuiNbQQ4kjh2KBL4E8IIYQQQhweVGLigEt9xt1/L/akybR+4XISf/g99LJ92L0F/or3ohITab3m68T94bf4//1Pt+ziIfTqKlBKAn9REly4GO/LL2Ds3jn0PnpRojXUo9fWYE2eGpHx7JmzaPr1XX0cUCO49Hi8Lz0PX7wSPJ5BjW9u3oQ1YyZ4vcOcaXgqbRxORqbb76tsH8HFS3GyskHX8az+EGDQJXHt/AK8LzwLgUDU5i3EkNk2viceJXDm2eEXhowljoP3hecwtm+l5fs/QmVnYx2zEN8Tj7qZfYf09+vU2S9Ua2oaVsljIYQYC6SGnhBi1NJsW3r8CSGEEEKIw4ZKSkYfSOAvEECvqiRwwklunyLTg7GvtNfdjeK92EUTsOYdTeCU0zHXrgGleuynV7jZhoPNZBIDY8+YiUpMxFz+Qayn0oOxcwcA9pTIBP4GInjcMrSWFsy1qwd3R6Uwdu3Anhzd4Kk9dTqeD96D9jacggK3P2FmNuYad75O1mAz/grd/oBl+6IxXSGGxdi7G9+jD+N9+slYT2VYzLWrSfzBd/D/628ETjkNa+5RALSfeQ4ohT1hUq+BTZWejpPtLnyRUp9CiMPdiAf+2tra+Oc//8nNN9/MH//4R8rLB1bmRAhxBLJt0GV9ghBCCCGEODyoxERob4NgsM/99KrKg5l5uo6Tm4veR+BPL96LUzQeAGvOPDe7q6S4534VFeDzo1LThvdARHiGgTX/GDyDDXSNAGPHdlRqGmrcuBE7ppNfgD1+Ap533xnU/fSqSrSmpqgHKe1p09Dq69z/zy8EwMnNRWs84L5G/P7BjddZKlT6/IlRSK+sBMD30gtoTQPvNTua6KUlxN/5S5zUNJpvuZ22K64K3WbPnIU1aw7B40/ocwxr1uyO99W8aE9XCCFiKmqlPn/zm9/w6quv8tRTT4W2tba28slPfpJdu3ahOlYf/v3vf+eRRx6hsLAwWlMRQoxVjpIef0IIIYQQ4rChEhMB0JoaUWm9B2D0ygrgYGaenVeAUV4WfueWFvSqSuzxE9x9p88Ajxdz/ToCHcHA0LgV5dg5OaOy/9zhwpo5G89bb7h/41FUTs/Y2ZFBN8J/e2vOPDzL3x/UfULZiZMmR2NKIdbU6e7/+PyojAwAt8/fmlWDLvMJQEICalw6ugT+xCikV5Sj4uLRLAvvC8/RfuGnYj2lwXEc4v58L052Ni3fu75n+WBNo+WHN/Y7TODcj7rnlkGWHxZCiLEmaqk077zzDqecckq3bX/729/YuXMnX/nKV1i5ciWPPPIICQkJ3HvvvdGahhBiLHMk408IIYQQQhw+VFIyAFpj39kWh2bmOfn5vWb8dWYX2Z1BPq8Xa+YszPVruu2nVVdjbtoQKnMmosOaMQsAY9vWGM+kC6Uwdu3EinLpzHCcvHz0mmpobx/wfYwd23Gyc0Kvl2hxCovA58fOLwgFRO2OLKChlsO18wv6LMsrRKzoFRU4+QUETj0d74vPQUtLrKc0KN4Xn8fYtYPWK68eVtDOyc0jeMppEZyZEEKMTlG7ol5SUsLcuXO7bXvxxRfJy8vj61//OgkJCcyZM4crr7ySFStWRGsaQoixTHr8CSGEEEKIw4hKcjPA+g/8lWNnZx8MRuQVoDUeQGs80GNfo3gPGCZOfkFomzX3KMwtW0LBFnPdGhJ//H2wbdo/cWGEHo0IR2VmosalY27ZHOupuJTC/+A/0NpasWfPGfHDO/kFbt+73jJWwzB27sCeNAJBSsMguOBYrDkHr105HeU6h5Txh9vnr6+yvELEil5ZgZOTQ/u556G1teN99eXBDxII9FuqOhr0faX4//tvAqefhT1t+ogfXwghxqKoBf7a29tJTj64OqulpYWtW7eydOnSbvtNnTqVyo4600II0ZUmgT8hhBBCCHEYcRI6S3029bmfe4H2YGaek+8GI/R9+3ruu3cvTl4emAc7eVjzjgIriLllE5533yb+l3dgT55K809/5mY5iejRNKzpMzFGQ+BPKXz//Tfe556m7QuXY0+Obs+8cDoz6Iyyns/dsIJBjD27o97fr1PrV79O+6cuCf3s5OeDYWIP8XVi5xegV1cNKsNRiJGgV5S7mbTp6VhHzx9cL9K2NnxPPErStV8m7v/+FL1JhqFXlJNw+y042dm0dXmtCiGE6FvUAn/5+fls3nzwg+7y5cuxbZvFixd326+lpYWEhIRoTUMIMZbZUupTCCGEEEIcRhISQNPQmvvO+DM6LtB2cnJyQdPQy3pmEhnFe7GLJnTb5uTlo8al4/vfw8Td+weCy06k5bs/GFU95w5n1syZGHt2QVtbTOfhef9dfE89TtslnyNwxtmxmURCAio1bcBZcEbxHrAttx9hDKjEJBp/dRfW/GOGdH+noNDNcOzl8Wr1dZjvv4f5/nsY69cNZ6pCDFxzM1pTY2hBiTVthttL07J67KrV1nbPLm9uJum6b+F79BFUUjLG9u0jNWu0qioSbr8FFZ9A8/U/hri4ETu2EEKMdVG7on7OOedw77338uSTT/Lee+9x5513kpiY2KPv38qVKxk/fnwvowghjmjKQemS8SeEEEIIIQ4TmoZKSETvq9RnIIBWV9u91KDHg5OVg1F2SLlEx+kI/B3ynVrTsObOw9i1g+DCJbR+6SuhsqEi+uzpM92/zfZtYW/X6uuI+/M9btm8KDLXrcGeOInAR86L6nH6Y+fnow8w48/YscPNuBs/IbqT6oPKzBzy68XuKLnbW58//7//RfwffkP8H35Dws9/it7Ro1OIaDIqywGwO95X7KnTINDuBtq70JoaSfzxD4j/1c9BKQC8b76Otn8/TT/7Fe0fOQ+9qmJEyn1qtbUk3HELyuOh+Yc/RiWnRP2YQghxOIla4O/KK69k7ty5XHfddVx22WWUlpZy6623kpR0cIVhe3s7jz76KMcff/ygxr7vvvu48MILmT9/PkuXLuWaa65h165dodsbGhq49dZbOeuss5g3bx4nn3wyP/3pT2ns8uVqy5YtfPvb3+akk05i3rx5nHPOOfztb38b/gMXQkSO7UipTyGEEEIIcVhRiUl9lvrUq9xWGF1LfYJbgvDQLCK9sgKCgbBBkvZzz6P9goto/cq1UkVjhDl5+ajEJMyt4ct9+p57Bs8br2Fu2hDVeYxYr7x+OHkF3QJhnvffRauuDruvsXOH+3z2eEZodhEWF4eTkdlrxp+xZxeBU06n8Y9/AsPE3LJphCcojkR6R4ulzgUl9oSJYJg9svf8D/4DrbkZY+d2jI0bwHHwvvQ8wcVLcXLzcAqKwHEG1bNzKLT6OhJuvwWUovn6G1Fp46J6PCGEOByZ/e8yNH6/nz//+c8UFxezf/9+Jk6cSGJiYrd9LMvi3nvvHXTG3/Lly7n00kuZO3cutm1z5513csUVV/DMM88QHx9PVVUVVVVVfP/732fKlCns27ePm266iaqqKn73u98BsGHDBsaNG8cvf/lLcnNzWbVqFTfeeCOGYfDZz342Yr8HIcTQSY8/IYQQQghxuFFJSWhNvWf86RVuZoaTk9Ntu52Xj+e9d7rvu3evu2+Y79ROfgHtF1w03OmKodA07BkzMbdspkent7Y2PK+/AoC5aSPW0QuiM4e2NvTyMuxzY5vtBx1B61deAstCa24i7o93YU+aQvNPbu0RlDZ2bIve72SEOPkFGOEy+QIB929y9kdQKanYEydhbN4Mp5818pMURxS9ohyVlOyWmwbwerEnTcbYthXOOgcAY/06PG++TuvlX8b72sv4n3iU9kA7elUlrV/9OtA9o9U5NNN8iLTGAxg73ACk1tKCsWUzntUrQdNouuFmVEZGRI4jhBBHmqgF/joVFfXeEDkhIYE5c+YMeswHHnig288/+9nPWLp0KRs3bmThwoVMmzaN3//+993m8M1vfpPvfe97WJaFaZp88pOf7DZGYWEha9as4cUXX5TAnxCjhW2DIauThRBCCCHE4UMlJqL1UepTr6gAnx+Vktptu5NfgF5b4/aN8/sBMHdsQ41Ldy/oilHFmj4T/0MPuuU8vd7Qdu87b6K1tmLPnI2xcX1kD+o4oUCasWc3KIU9aXJkjzEEdl4BODZ6VSVGR4absWsH3hefJ3D2uaH99H2l6FWVWHPnxWqqEeHkF2CuXNFju1FaDEqFAvXWjJl4337TLakopXhFFOkVFd3LR+OW+/S8/677QyBA3P/9CXvmbIKnnIZKSiL+rl/jr6nGnjwVe/JUd7/Onp0lxbB0cNXbwtFqa0m49Ub0moMZwE5ePsFjFhI496Oo7OxhH0MIIY5UUQv8Pf74470f1DRJT09n7ty5PbIAh6KzhGdKSu/1npuamkhMTMQ0e3/IjY2NpKamDurYuq6h6/IBTQyf0RHgMiTQFaIpB900MU35nQgxXHKOEUJEk5xjhBg4LTkZvbys18+4nuoKVG4upqd75QttfBGapuEt3o0zazYohXflCqxjjz0iPi+PufPMvLloD1r4du/Ant2x4FkpfC89j7NoMfaCY/Dddw9mazN0aYkyVFp9HfHf+jqtN/wEZ8pUPMW70bxe9PFF6DH+nWnjC9E0DU9FGZ6VK3Bmz8YpKCTu4X+jFi9CZWYB4Fm5HC0uDo46amw/p/PzMZ5/BlPZ3UqWmqUlaLqONmGC+/hmz0Z/5kk8tdWoQzJ8xcgbc+cY3Cw9Jy8Pld53VpxZVYGTl9ftdaVmzEB/7mk8++sw33oTo76OlutvcN97lixBPVqIUVpK+6cv6X6/wkI85fuwh/ka1erriLvjZtA02n55JyopCWV6oOM6sU4U+1MJESNj8Twjxq6oBf5+8IMf9LuP3+/n8ssv5+tf//qQj+M4DrfffjsLFixg2rRpYfepq6vj7rvv5uKLL+51nFWrVvHcc89x3333Der448YloMnKLBFByclxsZ7C6KAUmDre1ARIS4j1bIQ4bMg5RggRTXKOEWIAcjKgeBf+3j7j7q+DSeN73r5gLuTl4F31ARy/CHbsgP11+E4/hYQj6PPymDnPpM6CzHS8OzbDssXutjVroKoCvvUNyM6GB+7DW7oLjjtu+Mcr2QmOhXfFu7DwaCgvgRnT8GaMgmzQ1HhIS8G7bw9s2wxXXgmnnQbrVuN98G9w003ufutWwfFL8WanxXK2wzdzivtdtu0AZHWpglVTDuML8eZ09CtbvAC8Jt59u2Fm7DMzhWvMnGNWr4Zf3QFLl8L11/e9b101LFtKfNf3ikXzwWPg3bIennsKzj8P7+ypB2+/6kvwyCN4zz4duiZRzJgKK1YQN9z3nZt/BJqCX/0cnwS+xRFmzJxnxJgWtcDfihU9yxp0sm2bqqoqXnrpJe6++27S09O59NJLh3Scm2++me3bt/Pggw+Gvb2pqYmrrrqKyZMnc+2114bdZ9u2bVxzzTV89atfZdmyZYM6fl1ds2T8iYgwDJ3k5DgOHGjFtp1YTyf2LIuEoE17SwCrvjnWsxFizJNzjBAimuQcI8TAeTQP3po6mnv5jBu/uxjr/9u78/CoqvuP459778xkJZAQSCAkLGGTHWQH12pt666ttrW4W60/q1atlmpb0SpWq7XiUlutWqlarVp3q0VQNkH2fd/3bCxZZ+be+/tjIBASyDqZmfB+PY8P5J5zz/1ONAeZz5xzTjlV/hravaNOke/D91Xy/R/L9/lUeeMSVJLVVToB/n85FueZuF59Zc6eq7ILQ2ctxv/7XRkdslTWsYtkGEpMS1fw62/kP2lgo5/l2bBFcQFb+mKaSn5whRKXr1RwwKAa/zuKhIR2mTI/+Egq96v0pAFyyx1Zl/9E8U8+rvIvZ8nJyFTi6rUq/855sqOk5gZLTlVSwFb5irWyW7WtvJywco2czCxVHPH6Ejp0kjN3gSpOHhWJSnGEWJpjjPw8JT40UfL4pFmzVbJtz+Hz+45WXKykwr2qaJV61HsrPiWmpst4/m+S16uSc86v+mdJ9z7Sr34rHaiQjjit1JPaXnFbtqlkd1GVbYzrVf/eIiWuWqPy234hO67VCfFnGCDF1jyD6JVaxw9ehC34a1XLVhVt2rRRz549VVJSojfeeKNBwd8DDzygadOmafLkycqs4dMhxcXFuv7665WUlKRnnnlG3iO2WDhk3bp1uvrqq3X55Zfr5ptvrncNjuPKcdx63wcci207CgaZ/OUPynVd2TL5fgBNiDkGQDgxxwC1MxKT5C0uVjBgVz/Xq6JCKshXoF1GjT9L9pjT5H37LRkzZ8r8+mv5B5+soGtIJ9DPXSzNM0a/AUqY/qXsgkJJkjl/vsp/cqWCtivJlf+kfvIsXdokr8fKy5drmNKBAzJmzZJ27FDg/Iuj5nsVzOwg7+pVsnN7KJCSKgUdBYcMk6d7T3lffUX+0WPleryq6Dco9v97TkiWk5gobdum4MkHX4vrSps3Kdjvgir/TgI9e8uzaEHU/HtCDMwxwaCSnnhcti9OpXfeo+R775YxZ44Cp55eY3drxw65rit/eoaco15XoHtPeWd+pfKLf6BgYnKdfvbcDlnyOY6cLVvldOnaoJfg2bBRrusqkN2lWk3AiSDq5xm0CBHfUHbUqFHavHlzve5xXVcPPPCAPv/8c73yyivKzs6u1qe4uFjXXXedvF6vnnvuOcXFxVXrs3btWl155ZW66KKL9Itf/KLBrwFAGNi2JMk1rVo6AgAAALHDTU6RXFeeZUtkrVsrOYff+DF37pAkORk1b3vmtmunYN9+inv33zJ37VBg2IhmqRkNE+w/QJLkWbpE3ulfSaYp/+hTKtvtvv1k7tguo6iw0c8yCgpkZ2fLyeqkuDdfD43fLXq2j7SzQu/bBIaPPHzRMFR+xZUyt25R/H/eCX2/4uMjVGETMgw5HbJk7thx+FJ+vozSUtk5nat0DfbuI3PPbhkFBc1dJaJFSYkSnvqTrJUr6tTdWrVS1oZ1KrvpFjk5nWX37iPvrBnH7G/u2iWp5j9XAsOGy+7eU/5zvlvncu2OWaE6tm+r8z3Vatq8WYqLl9M+o8FjAACOL+LBX0VFhTye+i08nDBhgt5//309/vjjSkpKUl5envLy8lReXi4pFPpde+21Ki0t1UMPPaTi4uLKPvbBMGHNmjW68sorNWbMGF1zzTWV7YWFjf8fbgBN4ODPqsyIT1MAAABAk3HTQ1v/Jf7hISXdf6/iX3qhss035TO5rVKOG9gETv+WzPw8ufEJCvYbEPZ60XBuSmvZnbvIs3SJfNO+UGDocCk5ubI9eFIfSZKnjm/4H49ZkC+3bboCo8fKzM8LvaneoWOjx20qdrdcyfJUC6vt7j0UGD5KqiivGgrGOKdDB5k7tld+bW3ZJEmyc7pU6Wf37i1J8qxe2VylIZqUlSnp0YflnTtb3lnT63SLtXmT5PXJ7hX6b8c/arQ8y5fK2Le35v4b1sttk1rjVqDBocNVcv/v67dlZ1KS3LS2Mrdtrfs9R9e0ZXMoBD961TsAoMmEbavPunrvvffUt2/fet3z+uuhT6+NGzeuyvWJEyfqkksu0fLly7V48WJJ0tlnn12lz5QpU9SpUyf997//VWFhod5//329//77le1ZWVn64osvGvJSADQhwzkY/FkEfwAAAGg57G7ddeBPz8jwV8g792vFvfOW/Od8V25Conxffany719+3DdhAycPU3xysoL9Bko1HGeB6BLsP1Bxn3wk2UGVXXVtlTa3dRs5nbLlWb5UgdFjG/UcsyBfwT795B81VnFvvSG7S9eo+hCl3fsk7X/2bzWGD+U/+okkKTBkaHOXFTZ2xyx55n0T2uLTMGRt2Sw3OVluWlqVfm5KazkZmbI2rG/0fwOIMX6/kh7/g8wd22X36CVrw/o63WZt2Sw7O6fy5zs4fKT0ykvyfj27+sq9YFDemdMVGHNKDSM1nJ3VqVEr/qwtmxTs3acJKwIAHC1swd9nn312zDbbtpWfn68pU6bom2++0QsvvHDMvjVZvXr1cdtHjBhRa5+f//zn+vnPf16v5wJoRodW/Fls9QkAAICWxW3XTq6kivMvknfGV4p/fbKcjEy58XHyn/Xt49/s9ark17+Tm5LSLLWicYIDBinuw/fkpLeT3a9/9fY+/eRZOL/RzzEKC+WktZXbvr0Cw0bI7t6z0WM2uRpCPyn081B2a8s6fsXp0FFGWamMvUVyU9NkbtkcWu1XwwonO6ezzC31OwIHsc/7zRxZq1ao5LcPytq6WfGvvCT5/bWuvrO2bFKwe4/Kr93kVgoOGKi4j96XUVqi4MBBsrt1lyR5Fs6XcWC//Ked0aS1O52y5Vkwr2E3+/0yd+6QXY/tRQEA9Re24O/WW289brtpmurfv7+ef/55jRo1KlxlAIhVjhv6leAPAAAALZXHo/LLfqzESU9IpqWKiy+VEhJqvc056pwwRC+7Zy+5ycnyn3lWjaFPsG8/+T77RMaePXLbt2/YQ0pLZZSVyk1PlySV3XZnY0pGE3AOnoNm7twpOzVN1uZNCh5jRaOT01m+/35cuToQTc8zd47ctDTZRwRmkeZZsUxOp2zZPXtJHktybFlbN8vOPU6NwaDMHTvkfKvq7mbll/9Y8f96Tb6PP1Tc22+q7NobFDjzbPm+nCq7a66c7Jwmrd3O6Szfpx/J3L3rmGfSHou5fZvkOHKO2vYWANC0whb8TZky5dgP9XjUpk0bxcXFhevxAGLdwRV/rknwBwAAgJYrODy0OsvctlUVZ38n0uWgqXk8Kn70T3KTW9XYHOzdRzIMeVYsU6D9mQ16hFlYIEly0to2uEw0Lad9hmRasnZulzwemXt2V57peDQ7p7OM4mIZhYVy2/LvMBzi//VPuYlJKnlwYqRLqWQtX1YZBtvZnSXLI2vjhuMGf+b2bZIdrHZWpNMpW6V33iPZtuJf+bsSXnlJbus28ixeqLJrrm/y2gMjRin+rTcU96/XVHbrHfW619q8STIM2Z2ym7wuAMBhYQv+srKywjU0gBNA5Rl/UXQuBQAAANDkDEOlv7hLRlGRlJwc6WoQBm5K62M3JiXJ7tJNnhXLFTi9gcFfQb4kgr+o4vHIaZ8hc+dOeebPk5PV6Zgr/g6FONaWTQoS/DU915VZUCDt3iVzy+aoWDFt7NkjMz9Pwb79Qhe8Xtk5ObLWr5POOueY91kHt4S1j7WCz7JUPu5qWZs2KvHJP0oerwIjRjd1+ZLPp/If/FAJzz8j/9o1snvUfWtha8tmOe0zpfj4pq8LAFCp2d9RdxxHV155pTZt2tTcjwYQSzjjDwAAACcIt3UbOV26RroMREiwbz95ViwLbfXYAEZBgWQYclNTm7gyNIbTsaM88+bKs2SRKi685JjbeLrp6XITEytDHTQtY/8+KRiQJPm+nBrhakI8K5ZJhhFa8XuQ3aWbrI0bjnuftXlTaDXp8baE9npVeusdcpOSFRg95phnazZWYOypsjt3Ufw//1Gvucvasll258iHrwDQ0jV78Oe6rubOnauSkpLmfjSAWFIZ/LHiDwAAAEDLZffpK2NvkcydOxp0v1lYILd1G8kTtk2d0AB2h44y8/PkZGQqMGLUsTsahpycLjI3E/yFw6EVscE+/eSd+ZUUCES4IsmzfJnsLt2qhHJ2t9zQVp7l5ZLjyFq9qtp9dV2x6Kanq/iPT6rs6qbf5rOSYaj8R+NkrVsjz5JFdbvHdWVu2SSnc5fw1QUAkBSB4A8A6sRxJHHGHwAAAICWLdizt2RaoVVADWAW5Mtpm97EVaGxnA4dJUkV519U6042dk5nVvyFiZEfOgOz4tLLZBQXyzN/XmQLcl15Viw7vM3nQXbXbpLrytqyWXH/ek1JD/5W5uZNVe6ztmySXcetSt3kVpLX24SFV2f36y+3dRtZa1Yft5935nQlPPe0fB9/KKO0tM6vAQDQcAR/AKKSYQdDv2GrTwAAAAAtWXy87O49ZC1vWPBnFBTI4Wy4qBMcPEQV512owNhTa+1r53SWuXtnaLUXGsSzcL7MHdurXTcL8iWvT3bPXrJ79JJv2pQIVHdEPTu2y9i3V3afvlWuO52yJY9Xce+8pbiP3pek0Jl/BxlFhTKKi2VH2Wq5WkNr21b865PlWbxQ8W9Mlgwj6l4DALREzR78WZalf/zjH+raNXR+gd/v1+7du5u7DADRzg6t+CP4AwAAANDSBQcOknfRQqm4uN73mgUFclnxF3Xc1m1U8cMr6rQFq53TObSia9vWZqis5TEO7FfiU3+S7+MPqrVVrog1DPnP+JY8y5bI3LUzAlWGeFYsk0wrtNK3SoNHducu8ixbosCwEXKyc6qc+XcoXLNzujRjtbWzO3eRdeTKxKN4liySsbdIpXeP1/7nXlTxI4/LTeODCgAQbhFZ8Td8+HAlJiZKkqZOnarTTz89EmUAiGaHzvgzWZgMAAAAoGXzn36m5DjyfTm1fje6rszCAjm8kR7TnE7ZkmnK3LIp0qXEJO+0L6SAX9auXdXajIJ8Oemhn4/AyNFyk1vJ9/l/m7vESp4li2X36CnFx1drC/bpK6djlspu+JnsbrmyNq6vbDO3bJabmCg3PbpCfqdzFxmFBTKKD9TY7vtyqpzsHNldc6XkZDlZnZq5QgA4MfGOOoDoxBl/AAAAAE4Qbus2CowcLd/nn1b+XagujOIDUsDPGX+xzueTk9lB1mbO+as321bc5/+VTKvGlXxmfv7hFbE+n/xnniXvl1OlsrJmLlRSWZk8S5cocPKwGpsrLvuRiif+UUpMlN21m6ytWyW/X1JopaCd20MyjOasuFaHzuszt2yp1mbs2yvPgvnyn/6tqKsbAFo6gj8AUclwDq74Y6tPAAAAACcA/znfkZmfJ8/C+XW+xygokCS5bdPCVRaaiZ3T5fhnpaFGnnnfyCgskP/b35Gxt6jaOYlmQb6c9HaVX/u/9W0Z/gr5pk9r3kIleRcvlIIBBYYOr7mDYVS+B2J3y5XsoKxtW6TSUnlWrlRw8JBmrLZunMwOksdb43+73hnTJcNQYMzYCFQGACc2gj8A0enQVp8W0xQAAACAls/u1l12957y/feTOt9jFuRLElt9tgB2126hs9LqseITUtxnn8ju3UeB4SMlSeae3Ycb/X4Z+/dVWRHrtm2rwNAR8n32X8l1m7VWz9w5srt0ldu+fa197ezOkuWRtWG9PEuXSHZQgUEnN0OV9WRZsrOzZR29Ta3ryvflFwoMHS43uVVESgOAExnvqAOITjYr/gAAAACcWPznfFeeFcvk++iDOoUS5s6dkuWR2ya1GapDONldu0n+Cpk7tke6lJhhbtooa/VKVXz7u3IyM0PXjjjnzywqlKRqW+H6v/0dmbt2yFqzuvmK9fvlXbxQwWEj6tbf6w0Fahs3yLtovpysTnUKDCPByeks86gVf9a6tTJ3bA+dXwoAaHaecA1800031alffn5+uEoAEMvsg59yNPl8AgAAAIATQ2DkaJmbNyn+9VdlrVujsp/eLCUkVOtn7tqpuDffkHfubAX79ef8rBbA7tJVkmRtWC+nU3aEq4kNcZ99IjetrYInD5VMU25Coszdh8/5Mw6+5+imVw3+Dn2vzfw82b16N0utnqWLpYpyBeoa/Emyu+bKs2aVjP375T/tjDBW1zh2Thd5Z84IfYD74Ie3fdOmyElvJ7tf/whXBwAnprAFfyUlJXXql5CQoKFDh4arDACx6uD2Jq7Jij8AAAAAJwjDUMUPr5Cd212Jf3lGznvvqOKHV1Tt47pK/MNDMmxbZdffpMApp0WmVjStxEQ5mR1lbdygwKmnR7qaqGfs3yfvrJkqv/QHlWGTk5Eha9fh4K9yK9zUo87AjI+X4uJl7N/fbPV6582V0zFLTsesOt9jd+0m39T/SZKCQ6L3vVM7p7MUDMjcuSMUWpeXy/v1bFWcez4fSgCACAlb8Pfqq6+Ga2gAJwDDYatPAAAAACem4LARCsz/Rp6li6sFf+aWzTLz9qjknvtk9x8QoQoRDnZud1kb1ke6jJjgnfaFZBgKnPGtymtORgeZuw+f8WcW5MtNaS35fNXud1JSZOzbG/5Cy8oU99knoSDse+fV61a7W64kyU1Olt29RziqaxJ2do4kydq8SU6nbHm/niX5K+Q/NXpXKQJAS8ceegCiE2f8AQAAADiBBfv0k7Vls4ziA1WuexctkOLiZfc+KUKVIVzsrt1kbdksBYPhe0hJiVRREb7xm0MwqLj/fSb/mLFyk1tVXnYyM2UeueIvP6/a+X6HuCmtZR4I74o/c8d2tbrj54p759/yn/EtVZx3Yb3udzplSx6vggOHRPcxKMnJctqmy9q8SZLk+3Kqgn37V9tiFQDQfMK24u+Q/Px8vfXWW5o3b552HTxgNzMzU8OGDdP3v/99pfOHAICaEPwBAAAAOIEF+/STXFfWihUKDj98LphnwXwFBgyUvN4IVodwsLvlSgG/zO3b5HTuEpZnJP75cTkdOqr8muvDMn7Yua58//1ERmGB/N/+bpUmJyNTxt4iqbxcio+XUZAv5xjvO7opKTL27Qtrqb5pX0iSDjz+VMNCMI9HZdffKLtrtyaurOnZud3l+/gDeebPk7l7p0pv+UWkSwKAE1pYPy7y6aef6pxzztGf//xnLVu2TD6fTz6fT8uWLdOTTz6pc845R59++mk4SwAQqxw7tBc8+8EDAAAAOAG56elyMjLlWbm88pqxf5+sDesUHHxyBCtDuNg5nSXDkLVxQ9ieYW3dImv92rCNH07W0iVK/vUvFf/6qwqcdoacnM5V2p3MDpIkc3do4YGZXyD3mCv+UsJ7xp/ryjP3awWGjWjUyrfA2FPlZHVqwsLCo+z6m1R6yy8U7NtPgWEjFDw5es8kBIATQdhW/C1evFh33nmnhg0bpltvvVVDhgyp0r5w4UI99dRTuuuuu9SxY0cNGMC+9AAOMxxHMlntBwAAAODEFezTV57lSyu/9ixaGLo+cFCEKkJYxcfLyeoka8N6BU4/s/KyZ8E8WWtWVzvvsd78fhkH9ssqL5ccJ7q3jzyKkZ+vpCceld21m0p++6Dsnr2q9XEyMyVJ5u7dcnI6yyzIP+ZWn05Ka1n7l4WtXnPzJpn5eQoMG1F755YgMVHBkaMUHDkq0pUAABTGFX/PPfechg4dqpdeeqla6CdJgwcP1t///nedfPLJeu6558JVBoBYZcfWX0IAAAAAoKnZffrJ3LE9tH2hJM/C+bK7dZfbuk1kC0PY2F27VVvxF/fJR4r78D0Ze/Y0amyzID/0m4C/clVcrIh/6w258fEq+eX4GkM/SXJbpchNSJS5e6eMfXulgP/4Z/yFccWfd+7XcpOSZJ/UJ2zPAADgWML2rvrChQv1k5/8RMZxtukzDENXXHGFFixYEK4yAMQq25bL+X4AAAAATmDBPn0lSZ6VK6SKCnmWLlFwcPUPV6PlsLvlytqyWQoEQhdKSmStXilJ8n01tVFjm/l5h3+/ZUujxmpO5qaN8s6arorvXyYlJBy7o2HIycyUtWWLEp6dJDc+QXZu9xq7uq1bS/6K0HmAYeCdN1fBIUMlT9g2WwMA4JjCFvyVlZWpTZs2tfZLTU1VeZj+kAUQw2xbsljxBwAAAODE5bZuIyerk3wff6BWd90mIxA4cbYOPEEFe/SS7GDlFq/epYslx1Fw0BD5vpoW2qKzgYz8fMkw5CYny9oWoeCvokLx/3hJ5uZNdevvuop//VU5mR3lP/1btXZ3MjrIO3uGPOvWqvSX4+W2bVtzv1YpkhSWc/7M7dtk7tjOzyoAIGLC9q56dna25s+fX2u/efPmKTs7O1xlAIhRhmNzxh8AAACAE15wwCBZmzYq2OskFT/yRzlZnSJdEsLI6dxFdtdu8n32qSTJs3CB7JzOqrjk+zIKC+RZurjBY5v5eXLbpMrO6SJz29amKrnu/H4l/ukx+T77RN5ZM+p0i2fJInmWL1P5j66Q6rArkN25s+T1qeTOe2T36n3Mfm7r1pIkc/++utVeD955c6W4eAX7DWjysQEAqIuwBX/nnnuu/vrXv+qbb745Zp958+bphRde0HnnnReuMgDEKsep0//UAwAAAEBLVv79y3XgiadVdsttcjp0jHQ5CDfDkP/b35VnySKZ27fJs3iBgoOGyO6aKyc7R95pXzR4aDM/X056OznZObKae6vPYFCJk/4kz+pVcjIyZe3cUfs9tq34116V3buPgoNPrtNj/N89Twf+NEl2337H7eemHFrx1/TBn7VimYJ9+0k+X5OPDQBAXYRto+nrrrtO06ZN05VXXqkxY8bojDPOUIcOHSRJO3fu1LRp0zRjxgwNHDhQ1157bbjKABCrOOMPAAAAAKS4OLnt2kW6CjSjwMjRin/tVSU8/6yM4uLQWXGGIf9pZyr+9ckqP7Bf7sGtKuvDLMiX0zZddnaOfJ99IlVUSHFxYXgF1XmWLpZn4XyV3nmPPMuWyrN4Uc0dg8HQh4ANQ96vpsncvk0lDzwsGUYdH+SR2ya11m5uuLb6dF1ZmzfL/+3vNO24AADUQ9iCv7i4OL3yyit68skn9eabb2rGjBkyDv4h7bquEhISdNVVV+m2226Tj0/AADiabbPiDwAAAABw4vF65f/W2Yr7z9tyW6XI7pYrSQqMGKn4yS/Ls3yZAiNH13tYIz9PTvcecrKzQwHV9q2yu3Vv6uprZObtkSyPgoOGyCwskPn5f0Mhn+eItyZdV8m/ukvyelR+4aWKf/tNBUaNDU+NliU3ObnJV/wZe4tkFB+QndO5SccFAKA+whb8SVJCQoLGjx+vO+64Q0uXLtWePXskSe3bt1f//v0V10yfKgIQgxyHM/4AAAAAACck/7fOVtz7/1Fw0GDJDJ3U46amycnoIGvVyvoHf7Yts7BAbrt2srOyJcOQubX5gj+jsFBOWppkGLI7ZEmOLXPPbjkdsw73yc+XuWuHnIwOSnz6T5LHq/LLfhS2mtyU1jKbeMWftWWzJMnO6dKk4wIAUB9hDf4OiYuL09ChQ5vjUQBaCMO2JbOOW3kAAAAAANCCuKlpKr39Ttmdcqpct3v3lmf1ynqPZxQVSY4jJ72dFB8vp32GrK1bFGiqgmthFhbKTWsrSXIOHgVk7txRJfiz1q+TJJX87gGZW7fKCAbCus2tm9K6abb6dN3KrUjNLZvlJiSyPS8AIKLMcA1cWFioVatWVbu+atUq3XrrrTr33HN11VVX6YsvGn4oMYAWzHHY6hMAAAAAcMIKDhkqt337qtd695G5dYuM4gP1GsvMz5OkUPAnycnOkbltS9MUWpfnFxbISU2TJLltUuUmJMrcsb1KH8/6tXLS28lNaS27bz8FBw4Oa01OSmsZ+/dWvei68nw9O3T+YR1Yy5aq1c+ul0pKQl9v3iwnO6fuZxICABAGYQv+nnjiCY0fP77Kte3bt+uKK67QlClTFBcXp7Vr1+qWW27RN998E64yAMQq25ZL8AcAAAAAQKVg7z6SJGt19Q/bH09l8Nc2XZJkd8qWtaX5gj+jsEBO27YHvzDkZHaQdVTwZ61bKzu3R7PV5KakVFvxZ65fp8Sn/yTvzK/qNIa1aaOM4gPyLloQ+nrzJs73AwBEXNiCvwULFuj888+vcu3ll19WaWmpnn/+eb3zzjv64osvNHDgQP3tb38LVxkAYpVjc8YfAAAAAABHcNPT5aa1lae+wV9BvtzkZCk+XpJkd8qRsX9fvVcONojryiwoqNzqU5Kcjlkyd+483CcYlLVpo+zuzRj8ta5+xp9n5ozQrzXsYlYTsyBfkuT9Zo7k98vctUN25y5NWicAAPUVtuBv9+7d6tGj6h/WU6dO1UknnaSxY8dKkuLj4/WTn/xEq1evDlcZAGKUYdts9QkAAAAAwJEMQ8HefWStXFG/2/LzKlf7SZLTsaMkydyxo0nLq/HZB/ZLdlBOWlqV55s7t4fOx5Nkbt0iBfyyc7uHvZ5DKlf8HaxBjiPP7JmS5ZFn1YrD14/jUPDnWbwodEah68rpzIo/AEBkhS34MwxDxhH7Wefn52vbtm0aNmxYlX4ZGRkqKioKVxkAYpXNGX8AAAAAABwt2Lu3rM0bpbKyOt9j5ufLPXi+nyQ5HTpKhiFz+7ZwlFiFUVAgSXLbHl7xZ3fIklFSEgoFFTrfT6Ylu0vXsNdziNOqteTYMkqKQxeWLJGxb58qzj1fRmGBjPz8WscwCvIV7NdfCvgV98F/JMOQ3SknvIUDAFCLsAV/Xbt21axZsyq/njp1qgzD0JgxY6r0y8vLU9oRn/gBAEmhM/7MsE1RAAAAAADEJLt3n9DqtHVr6nyPmZ8v54jgT16vnPYZspoh+DMLQ8GfU2Wrz6orDq3162R37iz5fGGv5xC3dWtJOnzO35dfys3IkP9750mSPKtX1jqGWZCvYJ9+crJz5FmySE5mx2Z9DQAA1MQTroHHjRune+65R/v371d6erpef/115eTkaPTo0VX6zZgxQz179gxXGQBileNIBH8AAAAAAFThdOgot1WKfB99oGC37lJS0vFvcF2Z+XlVgz8dPGdvx/YwVhpiFhVKpiW3dZvDz87IDK043LlDdu+TZK1bp2CfvmGv5UhuSookydi3T/JnSLNmKfitc+Qmt5LTKVvWqhUKjD312AOUl8soLpbbNl2B4SMVt3WL7By2+QQARF7Y3lW/4IILdMcdd2j69Ol65ZVX1KNHDz399NPyeA5njQUFBZo6darOOOOMcJUBIEYZDmf8AQAAAABQjWGo7Kc/k7V+nZJ/++vQ+XjH675/nxTwVznjT5LsrE5hC/6M4gOVZ+QZBQWh8/2OOBKocsXhzh1ScbHMndub9Xw/SXJSDq/488yZLZWWKjB6rCQp2OskeVatOu79h873c9qmKzB0uCSFVi0CABBhYVvxJ0k33HCDbrjhhmO2t23btsp2oABQySb4AwAAAACgJsHBJ6vkwYlK/PPjSnrofhU/+ie5B4Oso3kWLwqdPXdUsOZ0zJKZnyeVl0vx8U1XnOsq+a7bVH7ZjxU48yyZhYVyU6sf8+N06CjvV1Plm/J56Hy/Xr2broa6SEyULI8869cq7ssvpFGj5GZlSUFHdu+T5JvymYy9RXLbpNZ4+5HBn5uervIrrlJg+MjmfAUAANSIffQARCfblkvwBwAAAABAjZzMDioZ/xtJUvw/Xj5mP++s6bJ795Hbtm2V605WliQ1+ao/Y/8+GcXF8i5eGBq/sKDaakNJCoweK7trrsovvFjFD04Mbf/ZnAxDbkqKfB9/ILdVK+m22yqbggdDSOs4q/6M/PzQGKmpkmHI/91zq32PAQCIBII/ANHJsSWDKQoAAAAAgGNxU1qr/CdXy/v1THkWzq/Wbuwtkmf5MvlHjanWZncIBX9WUwd/hYWhcVculxxHRmGB3LTqK/4Co8eq9J575b/gYjmduzRpDXXlpKRIXp/Kb7+zylmJblpbORmZ8qxaccx7zYL80EpGT1g3VAMAoN54Vx1AdHJctvoEAAAAAKAWgTGnKDhgkBL+/jeprKxKm3fO15JpKTh8RPUbExPlprVt8hV/ZlEo+DNKS2Vt2iCzsFBOWnSuhPOfd6FKb/2FnC5dq7UFBwySd/43lWcVHs0syK9xJSMAAJFG8AcgKhm2LVlMUQAAAAAAHJdhqPyKK2UUFcqzpurWlN5ZMxQcOEhucqsab7U7dpS1fVtomN27ZRwM7RpVzt4iyTQlX5w8c+dIAX/UBn+BUWMUHHxyzW2jx8ooKpS1amWN7WZBzVuYAgAQabyrDiA62TYr/gAAAAAAqAOnQ0fJ8sjcvavymrl7l6z1axUYPfbY93XsJHP7dhkFBUr+3XjFT/5Ho2sxCwvltm6jYK/e8s34SpLktq2+1We0s7v3kJPeTt5ZM2psNwry5aQT/AEAog/BH4DoZNtyTYI/AAAAAABqZZpy2rWXuWdP5SXPvG8kX5wCx1jRJklOVpbMPbuU+OfHZRQXy9y1o/GlFBXKSU1TsE+/0Oo/KWpX/B2XYSgweqy8c2dLwWDVNteVWVAgt20Mvi4AQItH8AcgOjl2aGsQAAAAAABQKycjo8qKP2vrZtnZOVJc3DHvsTt2khxH1uZNCgwfJWvXrmOeaVdXRlGR3NRU2X37hi6YltzWbRo1ZqQERo+VUVIiz5JFVa4be4skO8hWnwCAqMS76gCikuE4bPUJAAAAAEAdORmZVbf63L5dTseOx78nO1uKi1fZVdcoMGq0VFEu48D+RtVxaMWf3aWb3MREOampMfvBXqdTtpzsHHlnzaxy3SwoCLUT/AEAolBs/qkLoOXjjD8AAAAAAOrMaZ8R2urTdSXXlbVje2hF33G4ya20//m/K3Dm2XIyMiVJ5u7djarDKCqUk5YmmabsPv3kts9o1HiR5h89Vt7538jYt7fympGfL4ngDwAQnQj+AEQn25FL8AcAAAAAQJ04GRlSMCCjsFBGYaFUUS6n0/GDP0mSxxO6/2BAd+SqwXrz+2UUF8tNTZMklV17g0pvuqXh40UB/xlnyfV5Fff2W5XXzMICKS5eSkqKYGUAANSM4A9AdOKMPwAAAAAA6uzwir1dsnZsC13rmFX3AeLj5aa0blTwZxQVhZ7bJlWS5Ka0ltu2bYPHiwrJyaq48FL5pk2RuT30fTUL8uW0bSsZRoSLAwCgOk+kC2iI559/Xp999pk2bNig+Ph4DR48WHfddZe6desmSdq7d68mTZqkGTNmaOfOnUpLS9NZZ52l2267Ta1ataoc5/e//70WLFigNWvWKDc3V++9916kXhKAoxg2wR8AAAAAAHXltGsvGYbMPbtllJdLHm/oWn3GyMgMbRfaQGZRoSTJTUtr8BjRyH/2OfJ9/qniX5+swMjR8s6ZLbtL10iXBQBAjWLyXfW5c+fqiiuu0JtvvqmXXnpJwWBQ1113nUpLSyVJe/bs0Z49e3TPPffoww8/1MSJEzV9+nTde++91ca69NJL9b3vfa+5XwKA2jgOZ/wBAAAAAFBXXq+ctLYyd+2UuX2bnA4d6v2BWicjQ+aunQ0u4VDw56S2rOBPXq8qLvuRPIsWKOEvT8vulqvycVdHuioAAGoUkyv+XnzxxSpfP/LIIxo1apSWL1+uYcOGqWfPnpo0aVJle05Ojm6//Xb98pe/VDAYlOfg3uX33XefJKmwsFCrV69uvhcAoHbBIGf8AQAAAABQD4dW7Jn79srOym7Q/Z7Fi0JfuK7i3n9X/tPPlNu6TZ3uNwoLQ2ffJSbW+9nRLjBytIx9+2T36CE7t0ekywEA4JhicsXf0Q4cOCBJat269TH7FBcXKzk5uTL0AxDlHFsyCf4AAAAAAKgrp317mXt2hVb8ZdXjfL9D92dkyjiwXyotlbV2jeLeekOeBfPrfL+5t6jlrfY7xDDk/873CP0AAFEv5lMwx3H08MMPa8iQIerZs2eNfQoLC/Xss8/q8ssvb/Lnm6Yh0+QgXzSeZZlVfj3RmY4jy+eRx8P3A2gKzDEAwok5BkC4Mc8AdWN06CDPzK+koC1ld6r336mNDpkyDEO+wjx5FnwjwzDk3Vsot6Zx9u+XWrWSjMPvi1n7iqT0tJj7uzxzDIBwY55Bc4r54G/ChAlau3atXnvttRrbi4uLdeONNyo3N1e33HJLkz8/LS1JhkHwh6aTkpIQ6RKig8eULyVRSk2KdCVAi8IcAyCcmGMAhBvzDFCLHl0lQ5LXkq9Pz/r/nbp3buje0n3SonkHf79fSUePEwxKN94m3XqrNHbs4eulB6SsDkqI0b/LM8cACDfmGTSHmA7+HnjgAU2bNk2TJ09WZmZmtfbi4mJdf/31SkpK0jPPPCOv19vkNRQWlrDiD03CskylpCRo//4y2bYT6XIiLqncr4qygIJFJZEuBWgRmGMAhBNzDIBwY54B6sZMbK2EgC2ZpkoSWkv1/Tu1ayrJG6fg/6bKs32n3DZt5GzdrvKjxjHy9ihxf7ECy1bJ33dw5fXEnXsU7Jwrf4z9XZ45BkC4Mc+gKaTW8YM1MRn8ua6rBx98UJ9//rleffVVZWdXP6y4uLhY1113nXw+n5577jnFxcWFpRbHceU4bljGxonJth0Fgyf45O+6coNB2a7B9wJoYswxAMKJOQZAuDHPALVIa6d415XTLkNBw5Ia8PMSbNde1uxZchITFRgxWp6F86v93FkFRXJdV+6OnYfbXFcqKFAwpU3M/pwyxwAIN+YZNIeYDP4mTJigDz/8UM8++6ySkpKUl5cnSWrVqpXi4+NVXFysa6+9VmVlZXrsscdUXFys4uJiSVJaWposy5Ikbd68WaWlpcrLy1N5eblWrlwpScrNzZXP54vMiwMQ+suCJB38WQUAAAAAAHWQmCi3VYqcjh0bPITTPlPWpo0KDhkqp317mfn5ob+nH3HUjVFYKEky9+w+fK2kWAoG5KSmNbx+AADQaDEZ/L3++uuSpHHjxlW5PnHiRF1yySVavny5Fi9eLEk6++yzq/SZMmWKOnXqJEm67777NHfu3Mq2iy66qFofABFg26FfCf4AAAAAAKgX/+lnysnp3OD7nYwMSVJg2IhQ4GcHZezbK7dNamUfc19R6Nc9uyqvHQoD3TSCPwAAIikmg7/Vq1cft33EiBG19pGkV199talKAtCUCP4AAAAAAGiQist/3Kj77e495Ka1VbDfAJk7tkuSzIJ82UcEf0ZRKPgzSkpkFB+Qm9xKZlEo+GPFHwAAkRWTwR+AFu5g8OcaZoQLAQAAAADgxBI8eZgODBkqGYbc9HRJkpFfIOX2qOxj7i2SfHGSv0Lmnt2yk1vJ3LZN8sXJbdMmQpUDAABJ4l11AFHHcA8ecGsxRQEAAAAA0OwOnufnJiVLvjiZBflVm/fuVbB7KAg0d4fO+bM2bpDduQu79wAAEGG8qw4g+rDVJwAAAAAAkWcYctqmVwv+zKJCOR06yk1Olrk7dM6ftXG97G65kagSAAAcgeAPQPQh+AMAAAAAICo4bdvWuOLPTU2Vk9EhFPwVF8vcvYvgDwCAKEDwByD62KGtPl2T4A8AAAAAgEhy0tNlHBn8BYMyDuyX0yZVTvsMmbt3y9q0UZII/gAAiAIEfwCijuEcXPFnMkUBAAAAABBJbtt0mfmHgz9j377Q9dRUORkZMvfslrVxvdz4BDmZHSJVJgAAOIh31QFEHXNj6JOCTvuMCFcCAAAAAMCJzWmbLuPAfsnvlySZewtD11u3kdM+Q8beInlWrpDTtZtkGJEsFQAAiOAPQBTyzpsru3MXue3aRboUAAAAAABOaE7bdEmqPOfP2LtX0sEVfwdX+HmWLZXdtVtE6gMAAFUR/AGILn6/vAvnKzhsRKQrAQAAAADghOemh4I/4+B2n2ZRoWSaclNay2nfPtTJsTnfDwCAKEHwByCqeJYvlSrKFSD4AwAAAAAg4py0tpKqrvhzW7eRDCP0a1y8JLHiDwCAKEHwByCqeL+ZI6dDlpysTpEuBQAAAAAAeL1yW7epDP7MokI5bVJDbYYhp317uUlJctpnRLBIAABwiCfSBQBApWBQngXz5D/z7EhXAgAAAAAADnLapldd8ZeaWtlm53SR0a69ZBiRKg8AAByB4A9A1LBWrZRRXMw2nwAAAAAARBG7cxd5liySHEfG3iLZ3bpXtpVde4PkupErDgAAVMFWnwCihmfpYrmpaXK6dI10KQAAAAAA4KDAaWfILMiXZ/lSmUVFctPSDjfGxUnx8ZErDgAAVEHwByBqeDasV7B7D7YHAQAAAAAgiti53eV0zJL3i//JOLBfTus2kS4JAAAcA8EfgOjgujI3bpDdLTfSlQAAAAAAgCMZhvynf0veeXMl161yxh8AAIguBH8AooK5a6eM8jLZXbpFuhQAAAAAAHCUwNhTJNOSJDltCP4AAIhWBH8AooK1Yb0kye5K8AcAAAAAQLRxU1orMOTk0O/btIlsMQAA4Jg8kS4AACTJ2rhBTkamlJwc6VIAAAAAAEAN/OddIKOiQi5n/AEAELUI/gBEBWvDerb5BAAAAAAgitm5PVR6968jXQYAADgOtvoEEHmOI2vTRtndciNdCQAAAAAAAAAAMYvgD0DEmTu2S/4KzvcDAAAAAAAAAKARCP4ARJy1Yb0kye7SNcKVAAAAAAAAAAAQuwj+AESctWG9nMyOUmJipEsBAAAAAAAAACBmEfwBiDhr/TrO9wMAAAAAAAAAoJEI/gCET0WF4t56Q0Z+/jG7GHuLZG3aoGDffs1YGAAAAAAAAAAALQ/BH4Cw8axaobj33lHyfXfLWrqkxj7e+d9IhqHgyUObuToAAAAAAAAAAFoWT6QLANBymbt3SZZHdtdcJT36kAJDh8vu20+BIUPlprWVJHm+maPgSX3kJreKcLUAAAAAAAAAAMQ2VvwBCBtz92457dqr9JfjVf7jK2Xu3av4f7ys5F//Usb+fTKKD8izYoWCw0ZEulQAAAAAAAAAAGIeK/4AhI25e5ecjAzJNOX/7rnyf/dcGXuLlPyrOxX/j5cVHDBQch0FTh4W6VIBAAAAAAAAAIh5rPgDEDbmnt1yMjKrXHPbpKr8J1fL+/VMxb3zluzuPeWmpkWoQgAAAAAAAAAAWg6CPwDh4boy9+ypFvxJUmDMKQoOGCQzP08BtvkEAAAAAAAAAKBJEPwBCAujsFAKBuS0b19Do6Gya3+q4IBBCowa3fzFAQAAAAAAAADQAnHGH4CwMHfvkiQ5mR1qbHfT01V696+bsyQAAAAAAAAAAFo0VvwBCAtz9y7JMOSkt4t0KQAAAAAAAAAAnBAI/gCEhbl7l5y0tpLXG+lSAAAAAAAAAAA4IRD8AQgLc88eORmZkS4DAAAAAAAAAIATBsEfgLAwd++Uk5ER6TIAAAAAAAAAADhhEPwBkVReHjoLL0zMrVskxwnb+MfkuqEVf+0J/gAAAAAAAAAAaC4Ef0AExf3nbSX/+m4Z+/Y2+djGnj1K/vUv5fvogyYfu9ZnFx+QUVYqJ6NDsz8bAAAAAAAAAIATFcEfEEGeFculinLFvf1Wve4z9u2VtXTJcfv4Zs+QXFdxH38g+f2NKbPezN27JUlO+/bN+lwAAAAAAAAAAE5kBH9ApJSXy9q0QXbnLvJNmyJj2zZp3z7F/fkJeWdOP/Z9fr8SH5uopEcfklF8oOY+rivvzOmye50ko6RYvqlTmqxso6iw1u1DD21f6mRkNtlzAQAAAAAAAADA8RH8ARFirV0jOY7KbviZnLbpiv/rc9Ktt8rz9Wx5Z8885n3xr74ka+tWyXVlLVtWYx9z6xaZO7ar4rwLFBg1VnEfvS8FAo2u2SgoUKs7blX8P16quUMgIGvFcnlnz5TbKkVKSGj0MwEAAAAAAAAAQN0Q/AER4lm1Qm5yKzmdu6jish/JXLtGyshQ8NTTZW7dUuM93i+nyjd1isquuV5Oxyx5ly6qud+sGXKTkxXsP1AVF1wko6hQ3unTGl1z/FuvS8GAfF98LnPnjqqNFRVK/tVdSnp4gqx1a+T/1tmNfh4AAAAAAAAAAKg7T6QLAE5UntWrFDypj2QYCowcrbJ26fINGyT7k8/l+3KqVFIiJSVV9jc3bVTCyy8qcNoZCpx+pqxtW+Wd+7XkupJhHB7YdeWdPVOB4aMkj0dOVicF+w+Ud+7XCpzZ8DDO3LRR3pnTVf7jK+X778eKf+OfKv3FLyvb4z79SGZ+nkrumyC7V++qNQEAAAAAAAAAgLBjxR8QCX6/rHVrZfc6KfS1YcjpfVIoqMvpLEmytm873L+kRIlPPSG7Y0eVXXWdJCk4YKCMwgKZO7ZXGdpas1pmQb4Co8dWXrM7d5G146gVevXhuop//VU5mR3lP/scVVz2I3nmfyNr1cpQ+fv3yffBe/Kf9W3ZvU8i9AMAAAAAAAAAIAII/oBGSHrwd/LOnF7v+6wN66VgQMHeJ1VrczpmSaYla+vm0AXXVeLzz8goPqDSW++UfD5JUrDXSZLHK8+SxVXu986aITetbWjV3RFjGoUFUnl5vWuVQucRepYvU/kPfyx5PAqMGiO7azclPvuUvF9NU9y/35RMQxUXX9qg8QEAAAAAAAAAQOMR/AEN5bqy1q2VZ/Giet/qWb1SbkJi5eq+qo0eOR06yNwSOufPWr9OngXzVHbdTXIzMg73i4tTsHdveZYeEfwFg/LOmSX/6LFVVt05HTpKksxdO+tdqyR5Vi6Xm5io4JChoQuGodKf36Fgbncl/PVZ+b74XBUXXCI3uVWDxgcAAAAAAAAAAI3HGX9AQ/n9kh2UtWlDve6x1q6RZ+7Xsnv0lMyas3c7u7OsbVslSZ6F8+UmJys4dFi1fsH+gxT/73+FavH55Fm2REZxsQKjxlQd72DwZ+3cIadL17rXe5C1bq3sbrlVwkS3fXuV3XanKjasl3fxQvm//Z16jwsAAAAAAAAAAJoOK/6ABjJKSyRJ5s4dUkVFrf3N7dvU6pafKmniAzILCuQ/+5xj9nWys2Vu3Sy5rjyLFig4YLBkWdX6BQcMlAJ+eed+LUnyzpopp2NW9ZWESUlyU1pXOw+wTg6ubLS7da+51m65qrj4+5VbkAIAAAAAAAAAgMiIyRV/zz//vD777DNt2LBB8fHxGjx4sO666y5169ZNkrR3715NmjRJM2bM0M6dO5WWlqazzjpLt912m1q1OrwV4Y4dO3T//fdrzpw5SkxM1EUXXaQ777xTHk9MflvQzIzS0tBvXFfW1i2yu/c4bv+4d9+Wm5CokvsmyMnOqbJ67mh2do6M0lJZ69fJ2rxJ/vMurLGf0ylbgeGjFP/yi7I7Zcs7/xtVXHBRjWM7HbNk7thR59d3iJGfL+PA/lpfHwAAAAAAAAAAiKyYXPE3d+5cXXHFFXrzzTf10ksvKRgM6rrrrlPpwSBmz5492rNnj+655x59+OGHmjhxoqZPn6577723cgzbtnXjjTcqEAjojTfe0COPPKJ3331XTz31VKReFmKMUVJS+fvatvs0d+0Mnb13/oWh1XjHCf2k0FafkhT3/ruSaSrQf+AxijBUdsNNctukKun390sV5fKPHFNjV7tDR5k7q6/4s9aslu+Tj2Ru2ii5brV2z/q1ofsJ/gAAAAAAAAAAiGoxubTtxRdfrPL1I488olGjRmn58uUaNmyYevbsqUmTJlW25+Tk6Pbbb9cvf/lLBYNBeTwezZgxQ+vWrdNLL72k9PR0nXTSSbrtttv0xz/+Ubfccot8bFuIWhglxZIkt1VKKDQ7kusq8YlH5aS3U/mPxynug//ITWkt/6ln1GlsNz1dbnyCPAvmye7dR0pOPnbnhASV3n6nkn/7a9m5PeRmZNTYzemYJd+Mr0Lh3hHBY/xrr8patybUJ7Ojih/6gxQXV9lurVsrJ72d3JTWdaodAAAAAAAAAABERkyu+DvagQMHJEmtWx87mCguLlZycnLlNp6LFi1Sz549lZ6eXtln7NixKi4u1rp168JbMFqEQ1t9Bvv0k7V5U5U2c/MmeRbOl+9//1XShPvknf6VKs69oO7n4BmGnE7ZkqTA4JNr7e50ylbxbx9Q2c9uOXafjh2lgF9Gfv7hixUVsjasV/kVV6nslttl7toha8P6KvdZ69fJzmW1HwAAAAAAAAAA0S4mV/wdyXEcPfzwwxoyZIh69uxZY5/CwkI9++yzuvzyyyuv5efnVwn9JFV+nZeXV+fnm6Yh0zz+to1omayKMhlej3RSb3kWzJVHjnQwWPbNmSWlpKj8l79S/FNPSq2S5Xz72/J4jp21W5ZZ5Vd16Sxj/Vq5w4Yd975K3XMlHTvNNzp1kmEY8uXtkt0htCrQWr1ehutIgwbKzeok44W/yLdpvQL9+4VuCgbl2bxR/lGj6lYDgKhVbY4BgCbEHAMg3JhnAIQTcwyAcGOeQXOK+eBvwoQJWrt2rV577bUa24uLi3XjjTcqNzdXt9xy7NVQDZWWliSjlvPa0EIZttSmtXyD+kmvSb7iQqlr19BWmvPnSGeerrjhg6W/PieVliouvW2dhk1JSQj95szTJCcgX5/utZ4JWCetu0iJ8fLtL5BSk0LXtqyX0trI17936Bl9esu3ffPh9nXrJDnyDRlw+BqAmFY5xwBAGDDHAAg35hkA4cQcAyDcmGfQHGI6+HvggQc0bdo0TZ48WZmZmdXai4uLdf311yspKUnPPPOMvF5vZVt6erqWLFlSpX/+wS0Q27VrV+caCgtLWPF3gvLtLpDHG6fSNu2VFHRUsWi5gm3ay1yxXAk7d6ts8HA5RSWhzlaCdOj3x2BZplJSErR/f5ls25G69ZZ+2lvaW9pkNSe0bSd7zXr5D9YSP3+h1LW7yg8+w9epizwzZ6j0YLtnwRLFOVJJWmat9QOIbtXmGABoQswxAMKNeQZAODHHAAg35hk0hdQ6Ls6JyeDPdV09+OCD+vzzz/Xqq68qOzu7Wp/i4mJdd9118vl8eu655xQXF1elfdCgQfrLX/6igoICtW0bWok1a9YsJScnq3v37nWuxXFcOY7buBeEmOQ9cEB2fKKCHp/s9pnShg0Kjj1N8dOny26bLn+3HlKw/pO4bTsKNuC+ughmdpSxbXto/GBQ5uo1Kv/BDw8/r0uuPO//R3ZevtzUNHmXLVcwu7OCpqdBrwVA9AnnHAMAzDEAwo15BkA4MccACDfmGTSHmNxQdsKECXr//ff1+OOPKykpSXl5ecrLy1N5ebmkUOh37bXXqrS0VA899JCKi4sr+9i2LUkaO3asunfvrrvvvlurVq3S9OnT9eSTT+qKK66Qz+eL5MtDrCgtlZuYKEmyu3SVd/ZMxb0+Wd5vvlZg5Oim2Z6ziTmZHWTt2C5JsjZukAJ+2b17V7bbB0Nva91aqbhY3vnfKDB8RERqBQAAAAAAAAAA9ROTK/5ef/11SdK4ceOqXJ84caIuueQSLV++XIsXL5YknX322VX6TJkyRZ06dZJlWfrLX/6i+++/X5dffrkSEhJ08cUX69Zbb22eF4GYZ5SWyE1qJUmqOP9CybLkmzldRmmpAmNPjXB1NbO7dJPx/rvyfjlVxv59Uly87M5dK9vdtLZy26TKWr9O5r69kmMrcMppkSsYAAAAAAAAAADUWUwGf6tXrz5u+4gRI2rtI0lZWVn629/+1lRl4QRjlJbKaR86W9Lp3EVlP7tFcl2ptFRKqtteu80tOGy4/GecpYQX/iI3NU3BHj0ly6rSx+7eQ57166RlSxQcNERum9QIVQsAAAAAAAAAAOojJrf6BKKBUVIi9+iAzzCiNvSTJBmGyq+9QYGxp8ooLJB9Up9qXYK53WWtXiVr00b5TzsjAkUCAAAAAAAAAICGiMkVf0A0CG31GcUh37EYhspu+JmCPXoqOHxktWY7t4fk2HJbt1Fw0JAIFAgAAAAAAAAAABqC4A9oCNeVUVIiJSZGupKGMU0Fzjy7xia7W65kWvKfclq1bUABAAAAAAAAAED0IvhD9AgGZZSXyU1uFelKaldeLrmu3MQYXPFXm/h4lfxmguzsnEhXAgAAAAAAAAAA6oEz/hA1fJ98qORf3SU5TqRLqZVRUiJJsbnVZx3YPXpK8fGRLgMAAAAAAAAAANQDwR+ihmf5Uhl7i2RtWB/pUmpllB4M/lriij8AAAAAAAAAABCTCP4QHRxH1rp1kiTP0sURLqZ2LX3FHwAAAAAAAAAAiD0Ef4gK5ratofP92qTKsyQGgr/KFX+JEa4EAAAAAAAAAAAghOAPUcGzdrVkWqo49wJZ69dKB1fURSujtFQSW30CAAAAAAAAAIDoQfCHqGCtWSO7cxcFTh4mOY48K5ZFuqTjMkpKJK9P8nojXQoAAAAAAAAAAIAkgj9ECWvtatk9e8lt315ORoeo3+7TKC3hfD8AAAAAAAAAABBVCP7QrDwL5yvhz49Lrlt5zdhbJHPPbgV79JIkBQcMlGfp4ip9oo1RWsr5fgAAAAAAAAAAIKoQ/KFZufEJ8n4zR55FCyqvWWvXSJLsHj0lScH+A2Tm51Vej0ZGSTHn+wEAAAAAAAAAgKhC8IdmZfc+SXbP3or7zzuVK/o8a9fIaZsut21bSVKw3wDZXXOV9PAD8k77IpLlHpNRwlafAAAAAAAAAAAguhD8oXkZhiouvFjW+rWyli2VUVQoz/xvZB/c5lOS5POp5DcT5D/lNCW88BfFvfl65Oo9htBWnwR/AAAAAAAAAAAgengiXQBOPMEBg2R37aaE1/4hY98+ybJUcf6FVTv5fCq/7qdy2rdX/L9ek92lm4LDR0Sm4JqUlsjN6hTpKgAAAAAAAAAAACqx4g/NzzBUceElMrdukd0pW8UP/UFO5y41dvWfd6ECw0cq4a/Pyty5o3nrPA6jtJStPgEAAAAAAAAAQFQh+ENEBE8eppIJD6n0nnvlprQ+dkfDUNn1N8ltk6qEp5+sPBcw0ozSErb6BAAAAAAAAAAAUYXgD5FhGLJze0iWVXvfxESV/+gKWZs3ydyzO/y11cZxWPEHAAAAAAAAAACiDsEfYkKwdx/JMGQtXxbpUqTSUklixR8AAAAAAAAAAIgqBH+IDUlJsrvmyrNieaQrkVEZ/CVGuBIAAAAAAAAAAIDDCP4QM4J9+sqzfGnEz/kzSktCv0ki+AMAAAAAAAAAANGD4A8xI9i3v4wD+2Vu3xbROsx9eyVJblJyROsAAAAAAAAAAAA4EsEfYobds5dkeeRZEcZz/mxbqqg4bhfP/Hly2qbLaZ8RvjoAAAAAAAAAAADqieAPsSMuTnaPnuE75891lfTI75X4+B+O3ScYlHfubAVGjZEMIzx1AAAAAAAAAAAANADBH2JKsE9fWSuXS47T5GP7pnwma+VyeVYsk7F7d419PEsXyyguDgV/AAAAAAAAAAAAUYTgDzEl2KefjJISWZs2NOm4RkGB4t54TYExp0q+OPm+nhlqcF3F/+MleZYskiR5Z8+S0zFLTk7nJn0+AAAAAAAAAABAYxH8IabY3XvIbZUi76yZTTpuwssvSPHxKrvyGgVOHibvzOmS68o7c7p8n32ixMcflWfeXHnnf6PAmFPY5hMAAAAAAAAAAEQdgj/EFo9HgbGnyjvjKykYbJIhrQ3r5Fk4X+U/uUpKSlJg9BiZO7bLWr9O8W++ruCQoQr2H6DEJ/8oVZTLP5JtPgEAAAAAAAAAQPQh+EPM8Z9+poziA/LMn9ck4/k++1ROejsFho+UJAX7D5SbnKzEp56QsXevyn88TqW33qHgwMGhtoyMJnkuAAAAAAAAAABAU/JEugCgvpysTrJze8j35RcKjhjZqLGMfXvlnT1L5T/4oWQezME9HgWGj5Lvi8/lP/s7cjI7SJJKfzlect3Glg8AAAAAAAAAABAWrPhDTPKfdoY8SxfLKCho1Di+L/4nmaYCp59RdfxvnS07t4cqLr606g2c7QcAAAAAAAAAAKIUwR9iUmDkaMnrk++rqQ0fJBiUb8rn8o89VW5yqypNTucuKpnwkNyU1o2sFAAAAAAAAAAAoHkQ/CE2JSYqMGSoPAsafs6fZ/FCGXuL5D/7nCYsDAAAAAAAAAAAIDII/hCzggMGytq0Ucb+fQ2631q7Rm5qmpyczk1cGQAAAAAAAAAAQPMj+EPMCvYfILmuPMuXNeh+a+N62V27NXFVAAAAAAAAAAAAkUHwh5jlpqbJyc6RZ8miBtzsytq4QXa33CavCwAAAAAAAAAAIBII/hDTgv0HyrN0ieS69brP3LNbRmkpwR8AAAAAAAAAAGgxCP4Q0wL9B8rYWyRz6xbJ75fv/XdlHNhf633WhvWSxFafAAAAAAAAAACgxfBEugCgMexevSWvT96F82WtXhXa9tMw5D//ouPeZ23cICe9ndxWKc1SJwAAAAAAAAAAQLix4g+xzedT8KQ+ivv3v+RZsVxOZsfQ1p+1sDasZ5tPAAAAAAAAAADQohD8IeYFTx4qmZZKf3GX/GefI8/qVVJ5+bFvcF1ZGzewzScAAAAAAAAAAGhRCP4Q8/xnnq0Dzzyv4MDBCg4YKNlBeVYur9LHyM9X8t2/kO9//5W5c4dUUS67Kyv+AAAAAAAAAABAy0Hwh9hnGHKTW0mSnMwOctLbVd3uMxBQ4lNPyMzLU/zLLyr+tVclSXaXrpGoFgAAAAAAAAAAICwI/tCyGIaC/QfKs2Rx5aX4ya/I2rxJJb+5X/5vfVueRQvkZGRKyckRLBQAAAAAAAAAAKBpeSJdANDUgv0Hyjf1fzJ275Zv5lfyTflMZdfeILtbd9ldc+UmJMht3SbSZQIAAAAAAAAAADQpgj+0OMG+/STTVPJD98soKlTFpZcpcMZZoUbDUMUPr4hsgQAAAAAAAAAAAGFA8IeWJylJdq+TZG7drNK7fqXgwMGRrggAAAAAAAAAACDsCP7QIpX+/HbJMOS2Sol0KQAAAAAAAAAAAM2C4A8tkpvSOtIlAAAAAAAAAAAANCsz0gU0xPPPP69LL71UgwcP1qhRo3TzzTdrw4YNVfr861//0rhx4zRkyBD16tVL+/fvrzbO8uXLdc0112jo0KEaMWKEfvOb36ikpKS5XgYAAAAAAAAAAADQZGIy+Js7d66uuOIKvfnmm3rppZcUDAZ13XXXqbS0tLJPWVmZTjnlFN100001jrF7925dc801ysnJ0Ztvvqm//e1vWrt2rcaPH99cLwMAAAAAAAAAAABoMjG51eeLL75Y5etHHnlEo0aN0vLlyzVs2DBJ0tVXXy1JmjNnTo1jTJs2TR6PR7/73e9kmqH8c8KECbrgggu0efNmde7cOXwvAAAAAAAAAAAAAGhiMRn8He3AgQOSpNat636um9/vl9frrQz9JCk+Pl6SNH/+/DoHf6ZpyDSNelQL1MyyzCq/AkBTYo4BEE7MMQDCjXkGQDgxxwAIN+YZNKeYD/4cx9HDDz+sIUOGqGfPnnW+b+TIkXrkkUf0wgsv6Morr1RZWZkef/xxSVJeXl6dx0lLS5JhEPyh6aSkJES6BAAtGHMMgHBijgEQbswzAMKJOQZAuDHPoDnEfPA3YcIErV27Vq+99lq97uvRo4ceeeQRPfLII3riiSdkmqbGjRun9PT0egV5hYUlrPhDk7AsUykpCdq/v0y27US6HAAtDHMMgHBijgEQbswzAMKJOQZAuDHPoCmkpibVqV9MB38PPPCApk2bpsmTJyszM7Pe959//vk6//zzlZ+fr4SEBBmGoZdfflnZ2dl1HsNxXDmOW+9nA8di246CQSZ/AOHBHAMgnJhjAIQb8wyAcGKOARBuzDNoDjEZ/LmuqwcffFCff/65Xn311XoFdTVJT0+XJP373/9WXFycxowZ0xRlAgAAAAAAAAAAAM0mJoO/CRMm6MMPP9Szzz6rpKSkyjP5WrVqpfj4eEmhc/ry8/O1ZcsWSdKaNWuUlJSkDh06qE2bNpKkyZMna/DgwUpMTNSsWbP06KOP6s4771RKSkpEXhcAAAAAAAAAAADQUDEZ/L3++uuSpHHjxlW5PnHiRF1yySWSpDfeeENPP/10ZdsVV1xRrc+SJUs0adIklZSUqFu3bpowYYIuuuiiZngFAAAAAAAAAAAAQNMyXNflgLpGyMs7EOkS0EJ4PKZSU5NUVFTCPs8AmhxzDIBwYo4BEG7MMwDCiTkGQLgxz6AptGvXqk79zDDXAQAAAAAAAAAAAKAZEPwBAAAAAAAAAAAALQDBHwAAAAAAAAAAANACEPwBAAAAAAAAAAAALQDBHwAAAAAAAAAAANACEPwBAAAAAAAAAAAALYDhuq4b6SIAAAAAAAAAAAAANA4r/gAAAAAAAAAAAIAWgOAPAAAAAAAAAAAAaAEI/gAAAAAAAAAAAIAWgOAPAAAAAAAAAAAAaAEI/gAAAAAAAAAAAIAWgOAPAAAAAAAAAAAAaAEI/gAAAAAAAAAAAIAWgOAPAAAAAAAAAAAAaAEI/gAAAAAAAAAAAIAWgOAPqME///lPnXnmmerfv79+8IMfaMmSJVXat2zZov/7v//TyJEjNWTIEN12223Kz8+vddzf//73uuSSS9SvXz9deOGFNfZZtWqVfvzjH6t///467bTT9Le//a3R486ZM0c/+9nPNHbsWA0aNEgXXnih3n///VrHBRA+LW2eOdLmzZs1ePBgDR06tNZxAYRHS5xjXNfViy++qHPOOUf9+vXTKaecoueee67WsQGER0ucZ6ZPn67LLrtMgwcP1siRI/Xzn/9c27Ztq3VsAE0vluaYVatW6Y477tBpp52mAQMG6Lvf/a5eeeWVav3mzJmjiy++WP369dPZZ5+td955p9Z6AYRPS5tnPvvsM11zzTWV9V5++eWaPn16rfWiZSL4A47y8ccfa+LEifq///s/vfvuu+rdu7euu+46FRQUSJJKS0t17bXXyjAMvfLKK3r99dcVCAR00003yXGcWse/9NJL9b3vfa/GtuLiYl133XXq2LGj3nnnHd199916+umn9a9//atR4y5cuFC9evXSU089pffff1+XXHKJ7rnnHk2dOrXWcQE0vZY4zxwSCAR0xx13EPoBEdRS55iHHnpIb731lu6++2598skneu655zRgwIBaxwXQ9FriPLN161bdfPPNGjlypN577z29+OKLKioq0s9//vNaxwXQtGJtjlm2bJnS0tL02GOP6aOPPtJNN92kJ554QpMnT67ss3XrVt14440aMWKE3nvvPV111VW67777eFMeiJCWOM988803Gj16tP7617/qnXfe0YgRI/Szn/1MK1asqOd3By2CC6CK73//++6ECRMqv7Zt2x07dqz7/PPPu67rutOnT3d79+7tHjhwoLLP/v373V69erkzZ86s0zOeeuop94ILLqh2/Z///Kc7bNgwt6KiovLaY4895p5zzjmNGrcmN9xwg/urX/2qTn0BNK2WPM88+uij7l133eW+/fbb7sknn1ynMQE0rZY4x6xbt87t06ePu379+jqNAyC8WuI888knn7h9+vRxbduuvDZlyhS3V69ert/vr9PYAJpGLM8xh9x///3uuHHjKr9+9NFH3XPPPbdKn9tvv9299tpr6zUugKbREueZmnzve99zJ02aVK9x0TKw4g84gt/v1/LlyzV69OjKa6ZpavTo0Vq4cGFlH8Mw5PP5KvvExcXJNE3Nnz+/Uc9ftGiRhg4dWmXssWPHauPGjdq3b1+jxj7agQMH1KZNmyYdE0DtWvI8M3v2bH366af63e9+16hxADRcS51jvvjiC3Xq1EnTpk3TmWeeqTPPPFP33nuv9u7d26h6AdRfS51n+vbtK8Mw9Pbbb8u2bR04cEDvvfeeRo8eLa/X26iaAdRdS5ljjn7PZdGiRRo1alSVPmPHjtWiRYsaVS+A+mup88zRHMdRSUkJ7/+eoAj+gCMUFRXJtm21bdu2yvW2bdtW7uE8aNAgJSQk6LHHHlNZWZlKS0v1hz/8QbZtKy8vr1HPz8/PV3p6epVrh76uyx7SdfXxxx9r6dKluuSSS5psTAB101LnmaKiIo0fP16PPPKIkpOTG1UjgIZrqXPM1q1btWPHDn366ad69NFHNXHiRC1fvly33npro+oFUH8tdZ7Jzs7W3//+d/3pT39S//79NXToUO3evVtPPvlkY8oFUE8tYY5ZsGCBPvnkE1122WW1jltcXKzy8vJG1QygflrqPHO0F198UaWlpfrud7/b8GIRswj+gHpKS0vTn//8Z02dOlWDBw/W0KFDtX///spPiErS9ddfr8GDB2vw4ME699xzI1xxVV9//bV+/etf6/e//7169OgR6XIA1CAW55nf/OY3Ou+88zRs2LBIlwKgFrE4x7iuK7/frz/84Q8aOnSoRowYoYceekhz5szRhg0bIl0egKPE4jyTl5en3/zmN7rooov073//W5MnT5bX69Wtt94q13UjXR6AI0TzHLNmzRrdfPPN+r//+z+NHTu22Z4LoGnF+jzzwQcf6JlnntGTTz5ZLeDEicET6QKAaJKamirLsioPcj2koKCgyicxxo4dq//9738qLCyUx+NRSkqKxowZU3lo60MPPVT5iS2Pp+4/Zunp6dU+2XHo66M/CdIQc+fO1c9+9jONHz9eF110UaPHA1B/LXWe+frrr/XFF1/o73//u6TQm/SO46hPnz564IEH9P3vf7/BYwOou5Y6x7Rr104ej0ddu3atvJabmytJ2rlzp7p169bgsQHUT0udZ/75z38qOTlZd999d+W1xx57TKeddpoWL16sQYMGNXhsAHUXy3PMunXrdPXVV+vyyy/XzTffXKdxk5OTFR8fX+f6ADReS51nDvnoo49033336c9//nOV7UxxYmHFH3AEn8+nvn37avbs2ZXXHMfR7NmzNXjw4Gr909LSlJKSotmzZ6ugoEBnnnmmJCkjI0OdO3dW586dlZWVVefnDxo0SPPmzVMgEKi8NmvWLHXt2lWtW7duxCuT5syZoxtvvFF33XWXLr/88kaNBaDhWuo8869//Uv/+c9/Kv+59dZblZSUpP/85z86++yzGzwugPppqXPMkCFDFAwGtWXLlsprmzZtkiR17NixweMCqL+WOs+Ul5fLNKu+RXLoa8dxGjwugPqJ1Tlm7dq1uvLKK3XRRRfpF7/4RY3jfv3111WuzZo1iw8VABHQUucZSfrwww81fvx4Pf744zr99NPrXBNaHoI/4CjXXHON3nzzTb377rtav3697r//fpWVlVU5D+/tt9/WokWLtGXLFr333nu6/fbbdfXVV9f6afPNmzdr5cqVysvLU3l5uVauXKmVK1fK7/dLks4//3x5vV7de++9Wrt2rT7++GP94x//0DXXXNOocb/++mvdeOONGjdunL797W8rLy9PeXl52rt3b+O+WQAapCXOM7m5uerZs2flPxkZGTJNUz179mz0BxcA1E9LnGNGjx6tvn376te//rVWrFihZcuW6be//a3GjBlTZRUggObREueZ0047TUuXLtXTTz+tTZs2afny5Ro/fryysrLUp0+fRn7HANRHrM0xa9as0ZVXXqkxY8bommuuqXzPpbCwsLLPD3/4Q23dulWPPvqo1q9fr3/+85/65JNPdPXVVzfumwWgQVriPPPBBx/onnvu0T333KOBAwdW9jlw4EAjv1uIRYbLZvVANZMnT9aLL76ovLw8nXTSSbrvvvs0cODAyvY//vGPevfdd7Vv3z5lZWXphz/8oa6++urKPZ6PZdy4cZo7d26161OmTFGnTp0kSatWrdIDDzygpUuXKjU1VT/5yU/005/+tFHj/upXv9K7775brX348OF69dVXjzs2gPBoafPM0d555x09/PDDmjdv3nHHBRAeLXGO2b17t37/+99rxowZSkxM1Kmnnqp77rlHbdq0qe3bASAMWuI889FHH+mFF17Qpk2bFB8fr0GDBumuu+6q3FoYQPOJpTlm0qRJevrpp6tdz8rK0hdffFH59Zw5czRx4kStW7dOmZmZuvnmm6uEDACaV0ubZ4713IsvvliPPPLIcWtGy0PwBwAAAAAAAAAAALQAbPUJAAAAAAAAAAAAtAAEfwAAAAAAAAAAAEALQPAHAAAAAAAAAAAAtAAEfwAAAAAAAAAAAEALQPAHAAAAAAAAAAAAtAAEfwAAAAAAAAAAAEALQPAHAAAAAAAAAAAAtAAEfwAAAAAAAAAAAEAL4Il0AQAAAACA6NerV69a+0ycOFHvvvuuEhMT9fzzzzdDVQAAAACAIxmu67qRLgIAAAAAEN0WLVpU5evLL79c48aN03nnnVd5LScnR4WFhTJNU926dWvmCgEAAAAArPgDAAAAANRq0KBB1a516NCh2vW0tLTmKQgAAAAAUA1n/AEAAAAAmsy4ceN04403Vn49adIkDR48WCtWrNDll1+uAQMG6OKLL9aKFStUUVGh3/3udxo2bJhOPfVUvfzyy9XGW7hwoa688koNGjRIJ598su68804VFBQ04ysCAAAAgNhB8AcAAAAACKtAIKB77rlHl112mSZNmqRgMKhbbrlF9957r+Lj4/Xkk0/qrLPO0sSJE7VgwYLK+xYuXKhx48apVatW+tOf/qQHH3xQS5cu1c033xzBVwMAAAAA0YutPgEAAAAAYRUIBHTXXXfptNNOkyQ5jqObbrpJAwcO1Pjx4yVJI0eO1KeffqpPP/1UQ4YMkSQ9/vjj6tevn55++mkZhiFJ6tmzp8477zx9+eWXleMBAAAAAEJY8QcAAAAACCvTNDVq1KjKr7t06SJJGj16dOU1y7KUk5OjXbt2SZLKysq0YMECfec735Ft2woGgwoGg+rSpYs6dOigpUuXNutrAAAAAIBYwIo/AAAAAEBYxcfHy+fzVX7t9XolSa1atarSz+v1qqKiQpK0f/9+2batiRMnauLEidXG3LlzZxgrBgAAAIDYRPAHAAAAAIg6rVq1kmEYuvHGG3XWWWdVa09NTY1AVQAAAAAQ3Qj+AAAAAABRJzExUYMGDdKGDRvUv3//SJcDAAAAADGB4A8AAAAAEJXuvvtuXXXVVbr99tt17rnnKiUlRbt27dKsWbN0ySWXaMSIEZEuEQAAAACiCsEfAAAAACAqDRkyRK+99pomTZqk8ePHKxAIKDMzUyNHjlTnzp0jXR4AAAAARB3DdV030kUAAAAAAAAAAAAAaBwz0gUAAAAAAAAAAAAAaDyCPwAAAAAAAAAAAKAFIPgDAAAAAAAAAAAAWgCCPwAAAAAAAAAAAKAFIPgDAAAAAAAAAAAAWgCCPwAAAAAAAAAAAKAFIPgDAAAAAAAAAAAAWgCCPwAAAAAAAAAAAKAFIPgDAAAAAAAAAAAAWgCCPwAAAAAAAAAAAKAFIPgDAAAAAAAAAAAAWgCCPwAAAAAAAAAAAKAF+H/CLSQNAkjGZwAAAABJRU5ErkJggg==",
- "text/plain": [
- ""
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "image/png": "iVBORw0KGgoAAAANSUhEUgAABv4AAASmCAYAAADmsdybAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQABAABJREFUeJzs3Xd4VHXaxvHvOVOTSSEhofciqICgIKJY0cWGil0U+9ob6mt3XdeGde27dldUlF1RdO29YVsVEQvSe0lIn8m0c877xyQDQwoJpAH357q82Dn1NyeTM9m553l+huM4DiIiIiIiIiIiIiIiIiKyVTNbewAiIiIiIiIiIiIiIiIisuUU/ImIiIiIiIiIiIiIiIhsAxT8iYiIiIiIiIiIiIiIiGwDFPyJiIiIiIiIiIiIiIiIbAMU/ImIiIiIiIiIiIiIiIhsAxT8iYiIiIiIiIiIiIiIiGwDFPyJiIiIiIiIiIiIiIiIbAMU/ImIiIiIiIiIiIiIiIhsAxT8iYiIiIiIiIiIiIiIiGwDFPyJiIiIiGwjJk6cyMSJE5OPly9fzoABA5g+fXqLjuOaa67hgAMOaJFzDRgwgIceeqhFziXrTZ8+nQEDBrB8+fLWHkqdZs+ezaBBg1ixYkVrD2W7dM8993Dcccc1ybH++te/csYZZzTJsWTLFRcXM3ToUD799NPWHoqIiIiI1ELBn4iIiIhsN6rDisGDB7NmzZoa6ydOnMjhhx/eCiPbPk2cOJEBAwYk/9t999055phj+M9//oNt2609vE16//33Ofvssxk5ciSDBg1i9OjRXHrppXz11VetPTQB/v73v3PYYYfRtWvX5LKNX3ODBg3igAMO4MYbb2TVqlWtONqW88UXX3Dddddx+OGHs+OOO25WSP/hhx8yfvx4Bg8ezH777ceDDz5IPB5P2ea0007j999/58MPP9yi8S5btoz//Oc/nHvuucllq1at4uGHH+bYY49lxIgRjBw5kokTJzJz5sxaj1FWVsaNN97IHnvswdChQ5k4cSK//PJLyjbFxcU8+eSTnHzyyeyxxx4MHz6c448/nrfeeqvG8b755puU19GG/82aNavBz60h1xHgyy+/5KSTTmKXXXZhxIgRXHLJJY0K3V988UUuueQS9ttvPwYMGMA111xT57YNuVY5OTkce+yxPPDAAw0eg4iIiIi0HHdrD0BEREREpKVFo1Eef/xxbrzxxtYeSrPq2rUrs2fPxu1uu3/2d+rUicsvvxxIfPD+2muvcf3117N48WKuvPLKTe4/e/ZsXC5Xcw8zheM4XHfddUyfPp2ddtqJM844g7y8PAoKCnj//fc5/fTTmTp1KrvuumuLjqslHXnkkRx22GF4vd7WHkqtfvvtN2bOnMlLL71UY92Gr7lYLMaCBQt46aWX+OKLL3jrrbdIS0tr6eG2qP/+97+89dZb7LTTTnTo0KHR+3/66adceOGF7L777tx444388ccf/OMf/2DdunXcfPPNye3y8/MZM2YMTz/9NGPGjNns8T733HN07dqVPfbYI7nsww8/5IknnuDAAw9k/PjxxONxZsyYwRlnnMHtt9/OMccck9zWtm3OOecc5s6dy1lnnUVOTg4vvvgiEydOZPr06fTq1QuAWbNmcf/997PPPvtw/vnn43a7effdd5k0aRLz58/nkksuqTG2iRMnMnjw4JRlPXr0aNDzauh1/Pjjj7ngggvYaaeduOKKK6ioqOC5555jwoQJvPbaa+Tm5m7yXE8++STBYJDBgwdTUFBQ53YNvVYAJ510ElOmTOGrr75i1KhRDXrOIiIiItIy2u4nACIiIiIizWTHHXdk2rRpnHPOOXTs2LFZzuE4DpFIBL/f3yzHbwjDMPD5fK12/obIzMzkyCOPTD4+4YQTOPjgg3nhhRe49NJL8Xg8NfaxbZtYLIbP52uV5/f0008zffp0TjvtNK699loMw0iuO//883nttdfadNi6JUKhEOnp6bhcrhYPXBvjlVdeoUuXLgwdOrTGuo1fcwDdunXjb3/7Gz/88AN77bVXC42ydUyaNIlbbrkFj8fDueeey7x58xq1/1133cWAAQN4+umnk6/zQCDAY489xqmnnkrfvn2T2x5yyCFceumlLFu2jO7duzd6rLFYjDfeeIMTTzwxZfnIkSP5+OOPU0Kvk046iSOPPJIHH3wwJfh75513+PHHH3nggQc4+OCDk+MaO3YsDz30EPfeey8A/fr14913302pEJ0wYQKnn346TzzxBGeffTbp6ekp4xg+fHjymI3V0Ot4zz330L17d6ZOnZoM2g844ADGjx/P448/Xm/1XrUpU6bQpUsXDMNg2LBhdW7X0GsF0LdvX3bYYQdeffVVBX8iIiIibYxafYqIiIjIdufcc8/Ftm2eeOKJTW4bj8d55JFHOPDAA5NtAe+77z6i0WjKdgcccADnnnsun3/+OUcffTRDhgzhpZdeSraEe+utt3j44YfZe++9GTZsGJdccgnl5eVEo1Fuu+02Ro0axbBhw7j22mtrHPuVV17h1FNPZdSoUQwaNIhDDz2UF198cZNj33iOv/ra023c7u/TTz9lwoQJDB06lGHDhnHOOefUGhB88MEHHH744QwePJjDDz+c999/f5Pjqk9aWhq77LILoVCIoqIiIDGP39/+9jdef/11DjvsMAYPHsznn3+eXLfxHH9r1qzhuuuuY/To0cmf2U033ZRyXcvKyrjtttvYd999GTRoEAcddBCPP/74JluMhsNhHn/8cfr06cPVV1+dEvpVO+qooxgyZEjy8bJly7jkkkvYfffd2WWXXTj++OP55JNPUvZpitfJhtdp7NixDB48mKOPPprvvvsuZbsVK1bw17/+lbFjxzJkyBBGjhxZa+vA6ta43377LX/9618ZNWoU++67b8q6Dff5+eefOeussxg5ciRDhgzhgAMO4Nprr005ZigUYvLkycnrPnbsWJ566ikcx6n1uVS/vgYNGsRhhx3GZ599Vu/Pp9qHH37IHnvsUevPpzZ5eXkAKWFmQ69TLBbj4Ycf5k9/+hODBw9m5MiRnHTSSXz55Zcp2y1YsCD5Oqj+2WxpG8zN0bFjx1oD9YaYP38+8+fP5/jjj08JtydMmIDjOLz77rsp2++5554Am/08v//+e4qLi5PHqda/f/8alW5er5d9992X1atXU1FRkVz+7rvvkpeXx5/+9KfkstzcXA455BA+/PDD5O9R9+7dU0I/SHx54sADDyQajbJs2bJax1hRUVFre876NPQ6lpSUMH/+fA488MCU6tqBAwfSt29f3nzzzQadr2vXrg36XWjotaq255578vHHH9f4/RURERGR1rVtfg1VRERERKQe3bp148gjj2TatGn8+c9/rrfq74YbbuDVV19l7NixnHHGGcyePZvHHnuMBQsW8Mgjj6Rsu2jRIq644gpOOOEEjj/+eHr37p1c9/jjj+P3+znnnHNYsmQJzz//PG63G8MwKCsr46KLLuKnn35i+vTpdO3alYsuuii579SpU+nfvz8HHHAAbrebjz/+mJtvvhnHcTj55JMb/Lz79u3LXXfdlbKsvLycyZMnp3yI/tprr3HNNdcwevRorrzySiorK5k6dSoTJkzg1VdfpVu3bkBirrCLL76Yfv36ccUVV1BcXMy1115Lp06dGjym2ixfvhyXy0VWVlZy2ddff83bb7/NySefTE5OTo0P6KutWbOGY489lvLyco4//nj69OnDmjVrePfddwmHw3i9XiorKznllFNYs2YNJ554Ip07d+bHH3/kvvvuo6CggOuvv77OsX3//feUlJRw6qmnNqjirbCwkBNPPJHKykomTpxITk4Or776Kueffz4PPvggBx10UMr2W/I6Afjuu+946623mDhxIl6vl6lTp3L22Wfz73//mx122AFIBHQ//vgjhx12GJ06dWLFihVMnTqVU089lTfffLNGq8ubb76Z3NxcLrzwQkKhUK3Pc926dcnWgOeccw5ZWVksX748JQh2HIfzzz+fb775hmOPPZYdd9yRzz//nLvuuisZ1m58rd977z0mTJhAIBBgypQpXHLJJXz88cfk5OTUec3XrFnDypUr2WmnnWpdb1lWMlSOx+MsWLCAhx56iJ49e6a0Z23odXr44Yd57LHHOO644xgyZAgVFRXMmTOHX375JVk9OG/ePE466SQ6duzIn//8Z9LT03n77be58MILeeihh2q8DjZWWlqKZVn1bgOJ4Lw5W5X++uuvADXaW3bs2JFOnTrx22+/pSzPzMykR48e/PDDD5x++umNPt+PP/6IYRh1/iw3VlBQUOMa/Pbbb+y0006YZur3ngcPHszLL7/MokWLGDBgQJ3HLCwsBKj1NXfttdcSCoVwuVzstttuXHXVVTWuTW0aeh2rg7baKsf9fj/z5s2joKCA/Pz8TZ6zIRp7rXbeeWeeffZZ5s2bl7y/iIiIiEjrU/AnIiIiItul888/nxkzZvDEE09www031LrN77//zquvvspxxx3HrbfeCsDJJ59Mbm4uTz/9NF9//XXKvFNLlizhySefZO+9904u++abb4BE2DBlypRkpU1xcTFvvvkme++9d7Ly8OSTT2bp0qVMnz49JdB5/vnnUz74PeWUUzjrrLN45plnGhX85eXlpbQ4rA5iPB4PkydPBiAYDHLbbbdx3HHHccsttyS3HT9+PAcffDCPPfZYcvk999xD+/btefHFF8nMzARg991358wzz6wzmNvYhiFMcXExU6dO5ZdffmH//fdP+fB+0aJFvPHGG/Tr16/e4913330UFhYybdq0lA/VL7300mRVyjPPPMOyZct49dVXk3NWnXjiiXTo0IGnnnqKM888k86dO9d6/AULFgDUGxRs6PHHH6ewsJAXXniB4cOHA3DcccdxxBFHcMcddzBmzJiUD9m35HUC8Mcff/DKK68waNAgAA477DAOPvhgHnzwQR5++GEA9ttvvxrtCffff39OOOEE3n33XY466qiUddnZ2Tz77LP1Bp0//vgjpaWlPPXUUynXfdKkScn//eGHH/L1119z2WWXcf755yefyyWXXMJzzz3HKaeckjI/2oIFC3jrrbeSy0aOHMmRRx7Jm2++ySmnnFLnWBYuXAiQDKhrW79xa8K+ffvy1FNPpVRVNfQ6ffLJJ+y7774pvy8bu+222+jcuTOvvPJK8hwTJkzgpJNO4p577tlk8Dd+/HhWrFhR7zYAF110ERdffPEmt9tc1fPD1RY05efns3bt2hrLu3fvzvz58zfrfAsXLiQ7O5uMjIxNbrtkyRLef/99Dj744JTXakFBQfJ3b0PV8xuuXbu2zt/nkpIS/v3vfzN8+PCU+RA9Hg9jx45ln332IScnhwULFvDUU09x8skn89JLL20yqGzodczLyyMrK4sffvghZZvi4uLkvWjNmjVNFvw19lpVt2+dP3++gj8RERGRNkStPkVERERku9S9e3eOOOIIpk2bVuuH1ZBodwlwxhlnpCw/88wzU9ZX69atW0rot6Ejjzwypb3ekCFDcBwnZS6q6uWrVq1KaR23YehXXl5OUVERu+++O8uWLaO8vHxTT7VOjzzyCB9//DGTJ09OBmozZ86krKyMww47jKKiouR/pmmyyy67JIPMtWvX8ttvvzF+/Phk6Aew1157bTKc21B1CDNq1CgOPfRQnn/+efbbbz9uv/32lO1GjBixyePats0HH3zA/vvvX2vVTXWru3feeYfddtuNrKyslOe45557YllWjdaYG6puIRgIBBr0/D799FOGDBmS8mF6IBDghBNOYMWKFTUCkS15nQAMGzYsGfoBdOnShTFjxvDFF18kK8Y2fD3FYjGKi4vp0aMHWVlZyUqkDR1//PGbrG6sfg188sknxGKxWrf57LPPcLlcTJw4MWX5mWeeieM4Ndp47rnnnilB4MCBA8nIyKiz5WK14uJigJSK0Q117dqVZ555hmeeeYYnnniC6667jvLycv785z8nQ2ho+HXKyspi3rx5LF68uNbzlZSU8PXXX3PIIYdQUVGRfL0VFxczevRoFi9ezJo1a+p9TnfffXdyzPX9t3Fo29TC4TBASkBazefzJddvKCsrK/kzaaySkhKys7M3uV1lZSWXXnopfr+fK664osaYaxtv9bJIJFLrMW3b5sorr6SsrIwbb7wxZd2uu+7Kgw8+yLHHHsuYMWM455xzmDZtGoZhpMyDV5eGXkfTNDnhhBP46quvuPfee1m8eDFz5szhsssuS/6e1XbNN1djr1X179jm/nxFREREpHmo4k9EREREtlsXXHABr7/+Oo8//nitVX8rVqzANM2U8AESFRlZWVk1KnDqqjCCRACzoeqgZOPKsszMTGzbpry8PNla7vvvv+ehhx5i1qxZVFZWpmxfXl6eErw11GeffcYjjzzCueeey9ixY5PLq8OL0047rdb9qitvVq5cCUDPnj1rbNO7d+9aA6TadO3alVtvvRXDMPB6vfTq1Yv27dvX2K6+a1utqKiIiooK+vfvX+92S5YsYe7cuTWqvjY8Tl2qn38wGNzkeCBxnXbZZZcay/v06ZNcv2GlzJa8TqD2n0evXr2orKykqKiI/Px8wuEwjz32GNOnT2fNmjUp83PVFiQ35NrvvvvujB07locffphnn32W3XffnQMPPJBx48YlQ4MVK1bQoUOHGtVbffv2Ta7fUG1Vl9nZ2ZSVlW1yPECd846lp6enzBm3zz77sNtuu3HMMcfw+OOPc8011wA0+DpdcsklXHDBBYwdO5YddtiB0aNHc+SRRzJw4EAAli5diuM4PPDAAzzwwAO1jmndunX1thzebbfdGvScm1t1GLrxXG+QCIVqa0npOE6D51qszabmj7Msi0mTJjF//nyeeOKJGtfR7/fXOt7qZT6fr9bj3nLLLXz++efceeedyZ9lfXr27MmYMWN47733sCwLl8tFSUlJShDu9/vJzMxs1HW85JJLKC4u5sknn+Txxx8HYPTo0RxzzDG89NJLyS8hFBUVpbSDTU9Pb/AXFDYc3+Zcqy35+YqIiIhI01PwJyIiIiLbrQ2r/s4555w6t2voh5q1fehdbeM5kza1vPrD7qVLl3L66afTp08frrnmGjp37ozH4+HTTz/l2WefxbbtBo1tQ8uWLeP//u//2HPPPbnssstqPe9dd91Va/u4hsxr1xgbhzB1qe/aNpZt2+y1116cffbZta6vbv9Zm+rAbu7cuRx44IFNNqZqm/s6aYxbbrmF6dOnc9pppzF06FAyMzMxDINJkybVery6PuzfkGEYPPjgg8yaNYuPP/6Yzz//nOuuu45nnnmGl19+udEBBNT9WtvUc64OQhsaEAIMGjSIzMzMlGrPhl6nESNG8P777/Phhx/y5Zdf8p///Id//etf3HzzzRx33HHJ39Ezzzyzzorgjb9csLGNQ526bE7Y0xjV94SCgoIawWxBQQFDhgypsU9ZWVm9czLWp127dpv8Od5www188skn3HPPPbWG+fn5+cnWmhuqrvTesIVntYcffpgXX3yRK664olFVlJ06dSIWi1FZWUlGRgYXX3wx3377bXL9+PHjmTx5cqOuo9fr5bbbbmPSpEksXryY9u3b07t3b6644oqUL6Yce+yxKeH55rR9bey1Ki0tBWqf/1BEREREWo+CPxERERHZrp1//vm8/vrryfnTNtS1a1ds22bJkiXJqiSAwsJCysrKGjyP3Zb46KOPiEaj/OMf/0ipBqtuudlY4XCYiy++mMzMTO67774agVL1nE3t27evN5CrHsuSJUtqrFu0aNFmjW1L5ebmkpGRwbx58+rdrkePHoRCoQYFjhvbbbfdyM7O5s033+S8887bZBDapUuXWq9H9Tx0G1f4banafh6LFy8mLS2N3NxcgOT8dNWVbZCoMtqStrHVhg4dytChQ5k0aRJvvPEGV155JW+99RbHHXccXbt25auvvqKioiKl6q/6WjTV71N1OLt8+fJG7WdZFqFQKPm4MdepXbt2HHPMMRxzzDEEg0FOOeUUHnroIY477rjk75TH49ms1xzUDHXq0txz/O24444A/Pzzzynh1Jo1a1i9ejXHH398jX2WL1/eoIq52vTp04c33nijzsrmO++8k+nTp3Pddddx+OGH13qMgQMH8v3332Pbdsr9bvbs2aSlpdG7d++U7V944QUeeughTjvttHq/EFKb5cuX4/P5SE9PB+Dqq69OCS6rg7PNuY55eXnk5eUBidfqN998wy677JIMeu++++6UVpzVr7vGaOy1qv4d2/D9UURERERan+b4ExEREZHtWo8ePTjiiCN4+eWXa1Q67LvvvgD861//Sln+zDPPpKxvTtXB0sZtBl955ZXNOt5NN93E4sWLefjhh2udO2vvvfcmIyODxx57rNa52qrbYHbo0IEdd9yRV199NSUI+fLLL2vMW9dSTNPkwAMP5OOPP+bnn3+usb76Gh5yyCH8+OOPfP755zW2KSsrqzFv3obS0tI4++yzWbBgAffcc0+t1WczZsxg9uzZQOI1Mnv2bH788cfk+lAoxLRp0+jatWuj5kNsiB9//JFffvkl+XjVqlV8+OGH7LXXXsnXUm1h5ZQpUxpUUVaX0tLSGteiOtyobhO4zz77YFkWL7zwQsp2zz77LIZhsM8++2z2+TfUsWNHOnfuzJw5cxq8z9dff00oFEoJqBp6nTae3ywQCNCjR4/k827fvj277747L7/8cq3zidbXWrZaa8zxF4vFWLBgQcqY+/fvT58+fZg2bVrKdZg6dSqGYXDwwQenHKO8vJylS5cybNiwzRrD0KFDcRyn1p/lk08+ydNPP815551XZ2tigIMPPpjCwkLee++95LKioiLeeecd9t9//5Q57d566y1uvfVWxo0bx7XXXlvnMWv7mf3+++989NFH7LXXXsnQbNCgQey5557J/6p/3xt7HTf21FNPUVBQkDL/7G677ZZyrs0J/hpzrQB++eUXMjMzN9leWURERERalir+RERERGS7d9555zFjxgwWLVqU8gHmwIEDGT9+PC+//DJlZWWMGDGCn3/+mVdffZUDDzyQPfbYo9nHttdee+HxeDjvvPM48cQTCQaD/Pvf/6Z9+/a1tmSrzyeffMJrr73G2LFjmTt3LnPnzk2uCwQCHHjggWRkZPDXv/6Vq666iqOPPppDDz2U3NxcVq5cyaeffsquu+7KX/7yFwAuv/xyzj33XCZMmMAxxxxDSUkJzz//PP3790+pnGpJl19+OV9++SUTJ07k+OOPp2/fvhQUFPDOO+/w4osvkpWVxVlnncVHH33Eeeedx/jx49l5552prKzkjz/+4N133+XDDz9MVsfV5uyzz2b+/Pk8/fTTfPPNN4wdO5a8vDwKCwv54IMPmD17Ni+99BIA55xzDm+++SZ//vOfmThxItnZ2bz22mssX76chx56qM4Wnptrhx124KyzzmLixIl4vV6mTp0KkFIFtt9++zFjxgwyMjLo168fs2bNYubMmbRr126zz/vqq68ydepUDjzwQHr06EEwGGTatGlkZGQkA70DDjiAkSNH8ve//50VK1YwYMAAvvzySz788ENOO+20Tba7bIwxY8bw/vvv1zq/XHl5OTNmzAASlVOLFi1i6tSp+P3+lAqvhl6nww47jN13352dd96Zdu3a8fPPP/Puu+9yyimnJLe56aabmDBhAuPGjeP444+ne/fuFBYWMmvWLFavXs3rr79e7/Npyjn+qgMqSFSIlpeX8+ijjwKJe94BBxwAJKrPDj300GR7ympXXXUV559/PmeeeSaHHXYYf/zxBy+88ALHHXdcjcqvmTNn4jgOY8aM2ayx7rbbbrRr146vvvoqpY3n+++/z913302vXr3o06dP8udZba+99kpWx40dO5ahQ4dy7bXXMn/+fHJycpg6dSqWZaX8XsyePZurrrqKdu3aMWrUqBo/k1133TUZpl122WX4/X6GDRtG+/btmT9/PtOmTcPv93PllVc26Lk19DrOmDGD9957jxEjRpCens7MmTN5++23Oe6441LmZ63PRx99xO+//w4kAt25c+cmf+YHHHBAMvBu6LWqNnPmTPbff3/N8SciIiLSxij4ExEREZHtXs+ePTniiCN49dVXa6y79dZb6datG6+++ioffPABeXl5nHvuuVx00UUtMrY+ffrw4IMPcv/993PnnXeSl5fHSSedRG5uLtddd12jjlVdpfLuu+/y7rvvpqzr2rVrcs66cePG0aFDBx5//HGeeuopotEoHTt2ZPjw4Rx99NHJffbZZx8eeOAB7r//fu6991569OjBHXfcwYcffpgyr1VL6tixI9OmTeOBBx7gjTfeoKKigo4dO7LPPvsk5wlMS0tjypQpPPbYY7zzzju89tprZGRk0KtXr2Qb1PqYpsldd93FmDFjmDZtGk8//TQVFRXk5OQwYsQI/u///i9Z4ZSXl8dLL73E3XffzfPPP08kEmHAgAH885//ZL/99mvy5z9ixAiGDh3KI488wsqVK+nXrx933HFHSiXb9ddfj2mavPHGG0QiEXbddVeeeeaZOuc8bIjdd9+dn3/+mbfeeovCwkIyMzMZMmQI99xzTzIsMU2Tf/zjHzz44IO89dZbTJ8+na5du3LVVVdx5plnbvFz39AxxxzD888/z/fff8/w4cNT1q1evZqrrroKSMxNmJ2dzYgRI7jooouSVYrQ8Os0ceJEPvroI7788kui0ShdunThsssu46yzzkpu069fP1555RUefvhhXn31VUpKSsjNzWWnnXbiwgsvbNLnvim//vorDzzwQMqy6sfjx49PBn912X///Xn44Yd5+OGHueWWW8jNzeXcc8+t9Xm888477Lbbbpsd6nq9XsaNG8c777zD5ZdfnlxeHWItXrw4+bPc0HPPPZcM/lwuF48//jh33XUXU6ZMIRKJMHjwYO64445kW1iA+fPnE4vFKCoqqvXeescddyRfywceeCBvvPEGzz77bPJ3/6CDDuKiiy6iZ8+eDXpuDb2OvXv3prS0lEcffZRwOEzv3r25+eabOeGEExp0HoD33nsv5f3t119/5ddffwUS8xJW3x8aeq0AFixYwB9//NHo9yERERERaX6GszmzwYuIiIiIiEibMmDAAE4++eRkReb27rTTTqNDhw7cfffdrT2U7VJBQQFjxozhvvvuS36pYHMsW7aMQw45hCeeeCKl6k9a12233cb//vc/pk+froo/ERERkTZGc/yJiIiIiIjINufyyy/n7bffZsWKFa09lO3Sv/71L3bYYYctCv0AunfvzjHHHMPjjz/eRCOTLVVcXMx//vMfLrvsMoV+IiIiIm2QKv5ERERERES2Aar4ExEREREREVX8iYiIiIiIiIiIiIiIiGwDVPEnIiIiIiIiIiIiIiIisg1QxZ+IiIiIiIiIiIiIiIjINkDBn4iIiIiIiIiIiIiIiMg2QMGfiIiIiIiIiIiIiIiIyDbA3doDECgoKG/tIcg2wDQNcnMDFBUFsW1N3SkiW073FRFpDrq3iEhT031FRJqD7i0i0tR0X5EtlZ+f2aDtVPEnso0wTQPDMDBNo7WHIiLbCN1XRKQ56N4iIk1N9xURaQ66t4hIU9N9RVqKgj8RERERERERERERERGRbYCCPxEREREREREREREREZFtgII/ERERERERERERERERkW2Agj8RERERERERERERERGRbYCCPxEREREREREREREREZFtgII/ERERERERERERERERkW2Agj8RERERERERERERERGRbYCCPxEREREREREREREREZFtgII/ERERERERERERERERkW2Agj8RERERERERERERERGRbYCCPxEREREREREREREREZFtgII/ERERERERERERERERqdV///sakyZd2NrD2CIXXXQODzxwb/LxsceOY9q0F5vtfKtWrWT06OHMmzcXgEWLFjJ+/KFUVlY22zmruZv9DCIiIiIiIiIiIiIiIm3EnDmzueCCsxk5chR33/1AyrpVq1Zy3HFHJB+npaXTsWMnhg3bjeOPP4nu3Xs06ni1ue22v1JRUc4dd9ybsvyHH/7HJZecx9tvf0xmZiaWZfHii1N4++03WL16NT6fj27dunPEEeMZN+6o5LHefvu/ALhcLrKysunbtx8HHjiWQw8dh2mayePW58EH/8muuw6vsTwSifDEE//kllsmb/J5bU2eeOI50tLSWux8vXv3YeedB/Hyyy9w+ulnN+u5FPyJiIiIiIiIiIiIiMh247//ncExx5zAf/87g8LCAvLy8mtsc//9j9K7dx/C4TALF87n3/9+idNPP4k77/w7w4fv3ujjbY5nnnmCGTOmM2nSVQwcuCPBYJC5c3+lrKw8ZbuRI/fkuuv+gm3bFBUV8c03M3nggXv55JMPmTz5PgYP3oUZM95Jbv/AA/cSDAa57rq/JJdlZWXXOoZPPvmQQCDAkCFDm+Q51cWyLAzDwDRbplFlTk5Oi5xnQ4ceegR33nkrp5xyOm5388VzCv5ERERERERERERERGS7EAqF+PDD93nqqecoKirkrbfe4NRTz6yxXXZ2Nu3b5wHQtWs39tprHy699HwmT76Fl19+DZfL1ajjbY4vvviM8eOP5YADDkwu699/hxrbeb2e5Fjz8zswYMBAdt55MJdeej5vv/1fxo07KrkewOfzEYtFU5bV5cMP32OvvfZJWVZdsTh48FBefvl5YrE4Y8b8iUsvvSIZaJWVlfHAA/fw5ZefE4tFGTp0Ny677MpkxeRbb73Bgw/eyw033Mw///kwy5Yt5aWXXuXii8/l8MOPZNmypXz22cdkZWUzadL/sfPOQ7jzzlv4/vvv6NKlK9de+xcGDtwJgNLSEu677y5++ulHysvL6Nq1GxMnnsFBBx1c5/M69thxHH/8SRx//ATeeusNbr/95hrbnHHGnznrrHMBeOON13jppedZtWolnTp15thjT+Too49Lbvvrr3O4++7bWbJkMb179631NTBixEjKy8uYNeuHGuFxU9IcfyIiIiIiIiIiIiIisl346KP36dmzFz169OJPfzqUN998HcdxNrmfaZocd9xJrF69irlzf9vi4zVEbm57fvjhfxQXFzd63912G0G/fjvw6acfbdEYZs+excCBO9ZY/sMP/2PlyuU8+OBjXH/9X3n77Td46603kutvv/2vzJ37G3feeR///OczOI7D//3fpcTj8eQ24XCYF174F1dffQNTprxMTk4uANOmTWXw4F14+ukXGDVqNLfc8hduvfUm/vSnQ3nqqefp0qUbt956U/I6R6NRBgzYkbvvvp/nnnuZI44Yz6233sSvv85p0HMcM+YgZsx4J/nfX/96Gy6XiyFDdgHgvffe5skn/8k551zA88//m3PPvZAnn/xnssVqKBTiqqsm0atXH558cgpnnnkOjzxyf43zeDwe+vXbgZ9++rFhF38zqeJPRERERERERERERES2mFFegRGNtdj5HK8HJzOjUfu8+eYM/vSnQwAYOXIUwWAFP/74fa3z222sZ89eAKxatYqddhq0xcfblIsvnsSNN17NkUeOpXfvPgwaNITRo/dl1Ki9GrR/z549WbBg/mafv7y8nIqKilpbl2ZmZjFp0lW4XC569uzFqFGj+f77bzniiPEsW7aUL774jH/84ykGD06EZzfddAtHH30Yn332SbKCMR6Pc/nl19SoYhw1ak+OOuoYAM4442xee+0/7LjjTsn9Tj75NM477wyKitbRvn0e+fkdmDBhYnL/Y489kW+//ZqPPvog+XOqj8/nx+fzA7BixXLuu+8uzj33QkaM2AOAp556jIsuuox99z0AgC5durJo0UJmzJjOIYcczvvvv4Pj2FxzzY34fD769OlLQcEa7rmn5ryIeXn5rFmzepNj2hIK/kREREREREREREREZMuEI6S98i40UbVbgxgGoRMPB7+vQZsvXbqYX3/9hdtvvwcAt9vNAQccxJtvzmhQUFddYWYYRoOOt3r1aiZOXN8O8rzzzuOEEybWPHAdevfuw3PPvczcub/x888/MWvWj1xzzeUccsjhXHPNjQ0YL4DR4PNtLBKJAOD1emsdW3W7U4D27fNYuDARMi5ZsgiXy5USumVnt6NHj54sWbIouSxRAde/xrH79l2/LDe3PQB9+vTbYFmiMrC4uJj27fOwLIspU57ho4/ep6CggHg8RjQaTYZ5DVVRUcFVV13GqFF7MWHCqQBUVlayYsVyJk++hbvuui25rWVZBAIZyefbt29/fL71r8Oddx5S6zl8Ph/hcLhR42osBX8iIiIiIiIiIiIiIrJl/D4qjxnb4hV/DQ39AP773xlYlsVRRx2y/hiOg8fjYdKkq8nIqL96sDq06tKlS4OOl5eXxzPPvAiAy2XQo0dn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dthhIIcdNo599z0gedzbb7+53jH9+9+v07lzlxrL160r5N//fonnnnupQc9tazFjxjtkZma12Pn22GNPnnzyn7z33tscfPBhLXJOBX8iIiJtmB0PAWC60xL/uvyq+BMRERERERER2Qw33HAVsViMG264mS5dulJUtI7vv/+OsrLS5Daffvoxf/nLNRx66BE89NCFZGRk8r//fcujjz7InDk/c8stkzEMo1nHeffdt/Prr3OYNOn/6NWrD6WlpcyZ8xOlpaUp240bN56zzz4Xy7JYu3Ytn332MTfddB2HHDKOq6++njFjDmLkyFHJ7a+//ip69+7L2Wefm1zWrl1OrWN4443XGDRoCJ06dW6eJ1klFovh8Xia9Rwbat8+r8XOVe2QQw7nP/95WcFfY3333Xc89dRTzJkzh4KCAh555BEOPPDAevf55ptvmDx5MvPmzaNz586cf/75HH300cn1jz32GO+99x4LFy7E7/czbNgwrrzySvr06ZPcZuLEiXz77bcpxz3hhBP429/+1rRPUEREtkvrg7+qij+XH0dz/ImIiIiIiIiINEp5eTk//fQjDz30GMOG7QZAp06d2WmnQcltKisrueuuWxk9eh+uvvr65PJx444iJyeXa665nI8+ep8xY/7UrGP98svPuPTSKxk1ajQAnTt3YeDAHWts5/f7k0FWhw4dGTRoMD179uKOO/7GAQccyIgRI/H5/Mnt3W53yj71+fDD9zjqqGNTll100Tn069cfr9fLG2/MwOPxcOSRR3PWWeuDxNWrV3P//Xfx/fffYRgmI0eOYtKk/yM3tz0ATz31GJ9//inHHHM8zz33NKtXr+Lzz79j9OjhXHnltcyc+Tnff/8dnTp15tpr/0K7djlMnnwLv//+K/367cCNN/6Nrl27AbBixXIeeug+fvllDuFwJT179ubccy9kxIiRdT6vDas0n3rqMZ555oka21x33U0ceug4bNvmhRf+xeuvv8q6devo3r0Hp59+Fvvvvz57+uqrL3jggftYu3YNO+88iEMOObzG8fbaax/+/ve7WLFieXLszWmbmeMvFAoxYMAAbrrppgZtv2zZMs4991xGjhzJjBkzOO2007jhhhv4/PPPk9t8++23nHzyyUybNo1nnnmGeDzOWWedRSgUSjnW8ccfzxdffJH876qrrmrS5yYiItuv9a0+qyv+fKr4ExERERERERFppLS0NNLS0vn880+IRqO1bvPtt19TWlrKSSdNrLFu9Oh96N69Bx988G7zDhTIzW3PV199SSgUbPS+hxxyOJmZWXz66cebff6yslIWL17EwIE71Vj39tv/xe9P4/HHn+X88y/m2Wef5LvvvgbAtm2uvfZyysrKeOihx/n73x9h5coV/OUv16YcY8WKZXzyyUfcdttdPPPM+vn3/vWvpxg79jCeeeZFevToxc0338Ddd9/OxIln8OSTU3Ach/vuuyu5fSgUYo899uKBBx7l6adfYOTIUVx99eWsXr26Qc/zpJMmMmPGO8n/LrzwMvx+fzJknTLlGd55502uvPJapkx5mRNOmMAtt/yFH3/8HoA1a1Zz/fVXsddee/Pssy8wbtxR/POfD9c4T6dOncjNbc9PP/3YoHFtqW2m4m/fffdl3333bfD2L730Et26deOaa64BoG/fvnz//fc8++yz7L333gA89dRTKftMnjyZUaNG8csvvzBixIjkcr/fT35+fhM8CxERkVR2VfCXbPXpVqtPEREREREREWmbYpUFWPHQpjdsIi53Op60hn0273a7uf76m7jzztt47bXpDBgwgKFDd2PMmD/Rr19/AJYtWwJAz569az1Gz569WLZsadMMvh5XXXU9f/vbjRx66Bj69duBIUN2Yb/9xqTMQ1gX0zTp3r0Hq1ev3Ozzr1mzGsdxyMurWRnYt29/zjzzHAC6d+/B9OnT+N//vmPEiD34/vtvWbhwAdOmzaBjx04A3HDDzUyceDy//fYLO+64M0Cy3WpOTmqb0UMPHceYMQcBcPLJp3HeeWdw2mlnJduVHnfcidx++/pui/3770D//jskH//5z+fz2Wcf8+WXn3LMMSds8nmmp6eTnp7osjVnzs888cQ/uP76v9KnTz+i0ShTpjzD/fc/yqBBQwDo2rUbs2fPYsaM6QwbthuvvfYKXbp04+KLJwHQo0cvFiyYzwsv/KvGufLy8li9etUmx9QUtpngr7FmzZrFqFGjUpaNHj2a22+/vc59ysvLAcjOzk5Z/sYbb/D666+Tn5/P/vvvzwUXXEBaWlqDx2KaBqbZvD2BZdvncpkp/4rINsKpxDTdeLx+DMPA7UnDigVxu5v/d133FRFpDrq3iEhT031FRJqD7i0ijRePlrP4mxvBcVrupIZB/33uxe3NbNDmBx54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ceqpZyS323//A8nNbc+//vU0F154NtFolG7dunPqqWdy/PEn1Zi266GH/l7jXI888iS77DK0xvLu3bvzj388yT/+8TCXXXYB8XiMHj16ccstd7LHHnsmtxs5chTvvPMmjz/+KOFwmLy8PPbcc2/OOOPslOO98carvPHGq3g8HrKyshkwYEduvvkO9t13/y28WnD44Udx1123ccEFlyTnPtwUwzC44477uP/+u7jooj9jGCYjR45i0qT/2+Lx1Obiiydxxx1/47zzziQ7ux0nn3wawWDDK+p+/PF7KitDnHfemSnLr7vuJg49dBx//vP5tGuXw5Qpz7By5QoyMjLZYYeByddLp06duPXWu3jooft45ZWX2XHHnTnnnAu5446/pRzvgw/e5U9/OrhG0VlzMRynJWfabD7BYJClS5cCcNRRR3HttdcycuRIsrOz6dKlC/feey9r1qzhrrvuAmDZsmWMGzeOCRMmcMwxx/D1119z22238dhjj7H33nsD8Ne//pX//ve/PProo/Tu3Tt5rszMTPx+P0uXLuWNN95g3333pV27dsydO5c77riDTp068fzzzzd47AUF5U14JWR75Xab5OQEKC4O6ptoItuQ5bPux3Sn0WXQuQCUrPiEtX+8RP/9/tHs88PqviIizUH3FhFparqviEhz0L1FRJra1nZfcRyHc845jeOPn8BBBx3c2sPZapWUlDBhwjE8+eRzdOnSdYuOlZ+f2aDttpmKvzlz5nDqqacmH99xxx0AjB8/nsmTJ1NQUMCqVauS67t3785jjz3GHXfcwXPPPVeVzN6aDP0Apk6dCsDEiRNTznXHHXdw9NFH4/F4+Oqrr3juuecIhUJ07tyZP/3pT1xwwQXN+VRFRGQ7YsdDePy5ycemyw+OjWPHMFzeVhyZiIiIiIiIiIhsqwzD4KqrrmfBgvmtPZSt2urVK7niiqu3OPRrjG2m4m9rpoo/aQpb2zdGRKRhFn99I4G8XcjvdywAFQWzWPnzo/QZfQ9ub1aznlv3FRFpDrq3iEhT031FRJqD7i0i0tR0X5Et1dCKv4Y1ZhUREZFWYcVDmO705GPTlegFbsc1z5+IiIiIiIiIiIikUvAnIiLSRjmOgx2vxOVOSy4z3Yngz7EirTUsERERERERERERaaMU/ImIiLRRjh3DseOYGwZ/Lh8AlqWKPxEREREREREREUml4E9ERKSNsuMhgJRWn4aruuJPwZ+IiIiIiIiIiIikUvAnIiLSRlnxSoBaW31qjj8RERERERERERHZmII/ERGRNqq2ir/qVp+2Kv5ERERERERERERkIwr+RERE2ii7quIvpdWnYWK6fNhWpLWGJSIiIiIiIiIiIm2Ugj8REZE2yq6l1Sck5vlTq08RERERERERERHZmII/ERGRNsqKh8AwMarae1Zzuf1q9SkiIiIiIiIiIiI1KPgTERFpo+x4CJc7DcMwUpYbLp8q/kRERERERERERKQGBX8iIiJtlBWvTJnfr5rp2soq/iwL99yFEI+39khERERERERERES2ae7WHoCIiIjUzo6FMDea3w/AdPuxrUgrjKjxjFAlvg9nYhYW43g8WH26t/aQREREREREREREtlkK/kRERNooO16Jq46Kv3iktBVG1DhGeQX+Nz8BwwDDwIhEW3tIIiIiIiIiIiIi2zS1+hQREWmjbKvuVp/OVtDq07V0FUY0SuW4MTg+L0Zk66hSFBERERERERER2Vop+BMREWmjrDpbffq2ijn+jHAEJ80P6X4cvxeisdYekoiIiIiIiIiIyDZNwZ+IiEgbZcdDuGoL/lx+7PhWEPxVhnH8PoBExV9YFX8iIiIiIiIiIiLNScGfiIhIG2XF6271aVttP0RLVvwBeL2a409ERERERERERKSZKfgTERFpo+x47a0+DVei1afj2K0wqoZLqfjz+xT8iYiIiIiIiIiINDN3aw9AREREarLtGI4dw1Vd8WdZeL+ZhXveEqKuxZj+EigthnbtW3Wc9dmw4s/xekDBn4iIiIiIiIiISLNSxZ+IiEgbZMcrATA96RihSvzvfIZ73hJiQwZi9esHtoNdUtTKo6yH42BURlTxJyIiIiIiIiIi0oJU8SciItIG2fEQAKYrDe9n32KUBwkfui92fnuctQ4sBScSbOVR1iMeB8taP8efz4sRjYHjgGG07thERERERERERES2Uar4ExERaYOsWCLUc3kCmOVB4v17Yecn2nqa/gwAnHB5i43HtmON2t6ojACsr/jzeROhX7RxxxEREREREREREZGGU/AnIiLSBlVX/Lk8AYjGEnPkVTHdaWAa2NGWqfgLFv3Ows+vwIqFGryPEa4K/qrn+PN5E8vV7lNERERERERERKTZKPgTERFpg6or/kxXWqJF5sbB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1q2bJk+erJycHEmSy+XSlVdeKZPJpNdff13vvPOOPB6PrrvuOvn9/lr7HzdunEaNGlXlvuLiYk2ePFmtW7fWhx9+qLvvvlvPPvus3nvvvXr1u3btWqWnp+vpp5/WggULNHbsWE2ZMkVffvllrf0CaBjNcWyp4PF4dMcdd5D0A46y5jqu/POf/9R//vMf3X333Vq8eLGef/559enTp9Z+ATSM5ji27N69WzfccINOOukkzZ8/X6+88ory8vJ0880319ovgIZxrI0t69evV0JCgh599FF99NFHuu666/TEE0/ozTffDLTZvXu3rr32Wg0ePFjz58/Xn//8Z913333cpAeOkuY4rnz33Xc65ZRT9NJLL+nDDz/U4MGDdf311+vnn3+u49XBMc8A0KAuuugi4+9//3vgtc/nM4YMGWK8+OKLhmEYxrJly4xu3boZRUVFgTaFhYVGenq68e2334Z0jqeffto4//zzK21/6623jEGDBhllZWWBbY8++qhx9tln16vfqlx99dXG1KlTQ2oLoP6a89jyyCOPGHfeeacxZ84cY+DAgSH1CaD+muO4smXLFqNHjx7G1q1bQ+oHQMNrjmPL4sWLjR49ehg+ny+w7fPPPzfS09MNt9sdUt8A6udYHlsqPPDAA8aECRMCrx955BFj9OjRQW1uu+0248orr6xTvwCOTHMcV6oyatQo45lnnqlTvzj2UfEHNCC3260NGzbolFNOCWwzm8065ZRTtHbt2kAbk8kkm80WaBMeHi6z2azVq1fX6/zr1q3TCSecENT3kCFDtH37dhUUFNSr78MVFRUpLi6uQfsEULXmPLasWLFCS5Ys0f3331+vfgDUTXMdV7744gu1adNGX331lYYNG6Zhw4bpr3/9q/Lz8+sVL4DQNNexpWfPnjKZTJozZ458Pp+Kioo0f/58nXLKKbJarfWKGUDtmsvYcvh9lHXr1unkk08OajNkyBCtW7euXvECqF1zHVcO5/f75XQ6uYd7HCLxBzSgvLw8+Xw+JSYmBm1PTEwMzP/cr18/RUZG6tFHH1VJSYlcLpf+9a9/yefzKSsrq17nz87OVlJSUtC2itehzD8dqo8//lg//fSTxo4d22B9Aqhecx1b8vLydM8992j69OlyOBz1ihFA3TTXcWX37t3at2+flixZokceeUTTpk3Thg0bdMstt9QrXgChaa5jS9u2bfXqq6/qySefVO/evXXCCScoIyNDTz31VH3CBRCi5jC2rFmzRosXL9b48eNr7be4uFilpaX1ihlAzZrruHK4V155RS6XSyNHjjzyYHFMIvEHHGUJCQmaMWOGvvzyS/Xv318nnHCCCgsLA0+RStJVV12l/v37q3///ho9enQTRxxs5cqVuvfee/XQQw+pa9euTR0OgIOOxbHlb3/7m84991wNGjSoqUMBUIVjcVwxDENut1v/+te/dMIJJ2jw4MH65z//qVWrVmnbtm1NHR4AHZtjS1ZWlv72t79pzJgx+uCDD/Tmm2/KarXqlltukWEYTR0eAP2+x5Zff/1VN9xwg2688UYNGTLkqJ0XQP0c6+PKwoUL9dxzz+mpp56qlOBE8xfW1AEAzUl8fLwsFktgEdgKOTk5QU9xDBkyRJ999plyc3MVFhammJgYnXrqqYEFX//5z38Gnu4KCwv9a5qUlFTpqZCK14c/RXIk/ve//+n666/XPffcozFjxtS7PwChaa5jy8qVK/XFF1/o1VdflVR+w97v96tHjx568MEHddFFFx1x3wBq1lzHleTkZIWFhaljx46BbZ07d5Yk7d+/X506dTrivgHUrrmOLW+99ZYcDofuvvvuwLZHH31Up59+un744Qf169fviPsGULtjeWzZsmWLJk2apEsuuUQ33HBDSP06HA5FRESEHB+Aumuu40qFjz76SPfdd59mzJgRNJ0pjh9U/AENyGazqWfPnlqxYkVgm9/v14oVK9S/f/9K7RMSEhQTE6MVK1YoJydHw4YNkySlpKSoffv2at++vVJTU0M+f79+/fT999/L4/EEti1fvlwdO3ZUbGxsPd6ZtGrVKl177bW68847dckll9SrLwB101zHlvfee0/z5s0L/LnlllsUFRWlefPmacSIEUfcL4DaNddxZcCAAfJ6vdq1a1dg244dOyRJrVu3PuJ+AYSmuY4tpaWlMpuDb59UvPb7/UfcL4DQHKtjy+bNmzVx4kSNGTNGt99+e5X9rly5Mmjb8uXLeZgAOAqa67giSYsWLdI999yjxx9/XGeccUbIMaF5IfEHNLArrrhC77//vubOnautW7fqgQceUElJSdB6eHPmzNG6deu0a9cuzZ8/X7fddpsmTZpU61PoO3fu1MaNG5WVlaXS0lJt3LhRGzdulNvtliSdd955slqt+utf/6rNmzfr448/1uzZs3XFFVfUq9+VK1fq2muv1YQJE3TWWWcpKytLWVlZys/Pr9/FAhCy5ji2dO7cWWlpaYE/KSkpMpvNSktLq/fDCgBq1xzHlVNOOUU9e/bUvffeq59//lnr16/X//3f/+nUU08NqgIE0Hia49hy+umn66efftKzzz6rHTt2aMOGDbrnnnuUmpqqHj161POKAQjFsTa2/Prrr5o4caJOPfVUXXHFFYH7KLm5uYE2l156qXbv3q1HHnlEW7du1VtvvaXFixdr0qRJ9btYAELSHMeVhQsXasqUKZoyZYr69u0baFNUVFTPq4VjjclgQnqgwb355pt65ZVXlJWVpe7du+u+++5T3759A/sfe+wxzZ07VwUFBUpNTdWll16qSZMmBeaHrs6ECRP0v//9r9L2zz//XG3atJEkbdq0SQ8++KB++uknxcfH6/LLL9c111xTr36nTp2quXPnVtp/4okn6o033qixbwANp7mNLYf78MMP9fDDD+v777+vsV8ADac5jisZGRl66KGH9M0338hut+sPf/iDpkyZori4uNouB4AG0hzHlo8++kgzZ87Ujh07FBERoX79+unOO+8MTCcMoPEdS2PLM888o2effbbS9tTUVH3xxReB16tWrdK0adO0ZcsWtWzZUjfccENQ0gFA42pu40p1573wwgs1ffr0GmNG80LiDwAAAAAAAAAAAGgGmOoTAAAAAAAAAAAAaAZI/AEAAAAAAAAAAADNAIk/AAAAAAAAAAAAoBkg8QcAAAAAAAAAAAA0AyT+AAAAAAAAAAAAgGaAxB8AAAAAAAAAAADQDJD4AwAAAAAAAAAAAJoBEn8AAAAAAAAAAABAM0DiDwAAAAAAAAAAAGgGSPwBAAAAAAAAAAAAzQCJPwAAAAAAAAAAAKAZIPEHAAAAAAAAAAAANAMk/gAAAAAAAAAAAIBmgMQfAAAAAAAAAAAA0AyQ+AMAAAAAAAAAAACaARJ/AAAAAAAAAAAAQDNA4g8AAAAAAAAAAABoBkj8AQAAAI1k6tSpGjZsWFOH0aieeeYZpaenN3UYtXrggQd0xRVXNHUYx4V33nlHZ5xxhtxud5PG8fHHH+vEE0+U0+ls0jias9tvv1233nprnY5xOp06+eSTtWDBgkaKCnX1e/nOAgAAoGGENXUAAAAAwO/Rhx9+qHvuuSfw2mazqXXr1jr11FN1ww03KCkpqQmjq97hcVssFiUmJurUU0/V7bffrpSUlDr3WVJSopkzZ+rEE0/U4MGDGzLcSp555hk9++yzgdcRERFKTU3ViBEjdPXVV8vhcNS5z927d+uDDz7QzJkzq9y/detWjRo1SjabTd9++61iYmIqtZkwYYL+97//SZJMJpPsdruSk5PVp08fjRkzRqeeemq15w+l/6pU/Cw/+OAD9e7du9L+a6+9Vps3b9YXX3wR2OZ0OvXKK6/o008/1Z49exQeHq6WLVtq0KBBuvrqqwM//6quc3x8vLp166YRI0bovPPOk81mkyStWrVKEydODCnmX375RWPHjtWzzz6rd999t9rj3njjDT311FNauXKl1qxZE9QuLCxMLVu21MCBA3XzzTerbdu2IZ37UD6fT88884wuv/xyRUVFBba73W698847mjt3rnbt2iWz2ayUlBQNGDBAkyZNUufOnYP62bx5s1588UWtWrVKeXl5iouL0+DBg3Xdddepa9euQW1r+3nVZOrUqfrkk0+0du3aKvf3799fZ599tqZPnx7YtmfPHj333HP67rvvlJGRoZiYGHXo0EGDBw/WLbfcEmhXl8/u4Z+L6px44ol64403dPXVV2vcuHHatGmTunXrFtJ7nT17tqKiojR69OjAthUrVmjBggVas2aNDhw4oKSkJJ100km69dZb1aJFi0p9rFmzRo8++qh+/vlnORwOjRw5UrfffnvQz/rHH3/UvHnztGrVKu3du1dxcXHq27evbrvtNnXs2DGov6lTp2ru3LmVztOxY0ctWbIkpPfldrs1Y8YMzZ8/X4WFhUpPT9dtt91WaWzweDx68cUXNXfuXGVkZCglJUXjxo3TNddco7Cw2m/RZGZmavbs2frhhx+0fv16uVwuzZ49u9qxOZRrFcp3FgAAAMcOEn8AAABADW655Ra1adNGbrdbq1ev1jvvvKOlS5dq0aJFioyMrPHYf/zjHzIM4yhFGuzQuNetW6e5c+dq9erVWrRokcLDw+vUV0lJiZ599lnddNNNlW4uX3/99brmmmsaMnRJ5RV6drtdLpdL3377rV544QWtWrVK77zzjkwmU536mj17tlJTU3XSSSdVuX/BggVKTk5WQUGBPvnkE1188cVVtmvZsqXuuOMOSeXXZOfOnfrvf/+rBQsWaOTIkXr00UdltVqPuP/68ng8uvzyy7Vt2zaNGTNGl19+uVwulzZv3qxFixZpxIgRlRK/FdfZ7XYrIyND33zzje699169/vrrevHFF9WqVSt17txZjzzySNBxTzzxhOx2u6677rpKcYSHh2vMmDF67bXXNGHChCp/Xl999ZVOPfXUoOs1YcIE9e7dW16vVz///LPee+89LV26VAsWLKhzwvrLL7/U9u3bdckllwRtv+WWW/T1119r9OjRuvjii+X1erVt2zZ99dVX6t+/f1Di79NPP9Udd9yhuLg4jRs3Tm3atNHevXv1wQcf6JNPPtGTTz6pESNG1CmuhrJz505ddNFFCg8PD8SWmZmpn3/+WS+//HJQ4k8K/bM7YsQItWvXLnCcy+XSAw88oBEjRgS914oHH3r06KFevXrp1VdfrfQZqYrH49Hs2bM1adIkWSyWwPZHH31UBQUFOuecc9ShQwft3r1bb775pr766ivNmzdPycnJgbYbN24MJGmnTp2qAwcO6NVXX9WOHTuCkvszZ87UmjVrdM455yg9PV1ZWVl66623NHbsWL333ntKS0sLis1ms+mhhx4K2hYdHV3re6pQkbydOHGiOnTooLlz5+qaa67R66+/rhNOOCHQ7q677tKSJUs0btw49erVSz/88INmzJih/fv36x//+Eet59m+fbtefvlldejQQenp6dUmi6XQr1Uo31kAAAAcQwwAAAAAlcyZM8dIS0szfvzxx6Dt06ZNM9LS0oyFCxdWe6zT6Wzs8KpVXdyPPvqokZaWZnz00Ud17jMnJ8dIS0sznn766YYKs1pPP/20kZaWZuTk5ARtv+mmm4y0tDRjzZo1derP7XYbgwcPNp588skq9/v9fmPo0KHGtGnTjBtvvNG4/PLLq2x3+eWXG6NHj6603ev1Gg888ICRlpZmPPLII0fcf1Wq+1lWuOaaa4yhQ4cGXn/88cdGWlqasWDBgkptS0tLjaKiosDr6q6zYRjG/PnzjW7duhkXX3xxtbGNHj26xvfy008/GWlpacby5csr7XO5XEbv3r2NOXPmGIZhGCtXrjTS0tKMxYsXB7WbPXu2kZaWZrzwwgvVnqc61113nXHZZZcFbfvhhx+MtLQ04/nnn6/U3uv1Grm5uYHXO3fuNPr27Wucc845la5RTk6Occ455xj9+vUzdu3aFdhe28+rJlOmTDH69etX7f5+/foZU6ZMCbx+4IEHjB49ehh79uyp1DY7Ozvo9ZF+dg0jtO/+K6+8YvTr188oLi6utk2FTz/91EhLSzN27twZtP1///uf4fP5Km1LS0sznnjiiaDtV111lXHqqacGfZ7ff/99Iy0tzVi2bFlg2+rVq42ysrKgY7dv32706tXL+Mtf/hK0vbbrX5uKz9bMmTMD20pLS43hw4cbl1xySaV2Tz31VNDx06dPN9LT042NGzfWeq6ioiIjLy/PMAzDWLx4sZGWlmasXLmyyrahXivDqPk7CwAAgGMLa/wBAAAAdVBRNbZnzx5J5VUe/fv3165du3T11Verf//+uvPOOwP7Dl/jz+/36/XXX9d5552n3r1766STTtLkyZP1008/BbWbP3++xo4dqz59+ujEE0/U7bffrv379x9x3BUVJ7t37w5sq5iabuzYsRo4cKD69eunP/7xj1q5cmWgzZ49e3TyySdLkp599lmlp6crPT1dzzzzjKSq1/jzer167rnnNHz4cPXq1UvDhg3TE088Ua/1ow697qWlpTrnnHN0zjnnqLS0NNAmPz9fQ4YM0aWXXiqfzydJWr16tfLy8nTKKadU2e/q1au1d+9ejRo1SqNGjdL333+vAwcOhByXxWLRfffdpy5duuitt95SUVFRg/ZfFxU/2wEDBlTaFx4eHvI0qeeff74uvvhi/fDDD/r222+PKJZevXopLi5On3/+eaV9K1askNvt1h/+8Ica+zj8uzZlyhT17t1bW7duDWo3efJkDRo0SBkZGZKksrIyLVu2rNLPvKbrY7FYFB8fH3g9c+ZMlZSU6B//+IcSEhKC2iYkJOjBBx+Uy+XSyy+/XON7aCy7du1SSkqKUlNTK+1LTEwMqY/aPruhOuWUU+RyubR8+fJa23722WdKTU0NqiqUpEGDBslsNlfaFhcXp23btgW2FRcXa/ny5Tr//PODPs8XXHCB7Ha7Fi9eHNg2YMCAwHS1FTp06KCuXbsG9Xkon8+n4uLiWt/H4ZYsWSKLxRJUYRoeHq6LLrpIa9euDYzdq1evlqSgaU4ladSoUTIMIyj+6jgcDsXFxdXari7XSqr5OwsAAIBjC4k/AAAAoA527dolSUE3Xr1eryZPnqzExERNmTJFZ511VrXH//Wvf9XDDz+sli1b6s4779Q111yj8PBw/fDDD4E2zz//vKZMmaL27dtr6tSpmjhxolasWKE//elPKiwsPKK49+7dK0lB68sVFxfrP//5j0488UTdeeeduummm5Sbm6urrrpKGzdulFSe5HjggQckSSNGjNAjjzyiRx55pMYpDu+77z49/fTT6tGjh+655x4NGjRIL774om6//fYjil0Kvu4RERH617/+pV27dunJJ58MtHnwwQdVVFSkadOmBaYRXLt2rUwmk3r06FFlvwsXLlS7du3Up08fDRs2TBEREVq0aFGdYrNYLBo9erRKSkoCN/Ybsv9QtW7dWpI0b968ek8xe/7550uSvvnmmyPuo0ePHlqzZk2l7UuXLlXPnj1rXSfz8O/aX//6VyUkJGjKlCmBxO67776rb775Rvfdd19gOtD169fL4/FU+plXXJ+FCxfK6/XWeO4vv/xSqampQVM0HmrQoEFKTU3V0qVLa+ynsaSmpurAgQNasWJFvfqp6bMbqi5duigiIqLKn/Xh1q5dq549e4bUr9PplNPpDErI/vLLL/J6verVq1dQW5vNpu7duwfGreoYhqHs7OygPiuUlJRo4MCBGjhwoE488UT9/e9/l9PpDCnWjRs3qkOHDpWS63369AnslxR4+OHw6ZYrpo1ev359SOcLxZFcq+q+swAAADi2sMYfAAAAUIPi4mLl5ubK7XZrzZo1eu655xQREaGhQ4cG2rjdbp1zzjn6y1/+UmNfK1eu1IcffqgJEybovvvuC2y/8sorA4mavXv36plnntFtt90WtH7aWWedpQsvvFBvv/12leuq1RT3Dz/8oGeffVY2my0o7tjYWH3xxRdBVTHjx4/XyJEj9cYbb+jhhx+W3W7X2WefrQceeEDp6em64IILajzvpk2bNHfuXF188cWB9bL+9Kc/KSEhQa+++qpWrlxZ7Vp7hyooKJCkwBp/b7/9tpKSkgKJmL59++qqq67Syy+/rBEjRig7O1sfffSR7r33XnXs2DHQz7Zt2xQbG1tltZvH49GSJUt06aWXSpIiIiI0bNgwLVy4UFdddVWtMR6qYr2wimRVQ/cfiuHDh6tjx456+umnNWfOHA0ePFgDBw7U0KFDQ64Cq1Dxfg6tEK2rtm3bVplE+PrrrzV27NhK251Op3Jzc+X1erVx40b985//lMlkCiTSY2Ji9M9//lOTJ0/WSy+9pHPPPVf/+te/NHz48KDPZUU1V5s2bYL679evn0488US9//77+uKLL3TSSSdpwIABGjp0aCApKElFRUXKzMzUmWeeWeP7S09P1xdffKHi4uKQqykbyoQJEzR//nxNmjRJ3bt316BBgzR48GCdeuqpta49eriqPrt1ERYWppYtW2rLli01tvN6vdq1a1et17XC66+/Lo/Ho5EjRwa2ZWVlSZJatGhRqX1ycnKtycsFCxYoIyOj0hqIycnJuuqqq9SjRw8ZhqFly5bp7bff1qZNm/TGG28oLKzmWydZWVlB6xAe2q8kZWZmSlJgbFqzZo3atm0baPf9998HtWsIR3KtqvvOAgAA4NhC4g8AAACowaRJk4Jep6am6rHHHgtUF1W47LLLau3r008/lclk0k033VRpn8lkkiT997//ld/v18iRI5WbmxvYn5SUpPbt22vVqlUhJf6qivvRRx9Vy5YtA9ssFkugMs7v96uwsFB+v1+9evXSzz//XOs5qlJRAXXFFVcEbb/yyiv16quvaunSpSEl/s4555yg1127dtX06dODkho33XSTvvzyS02ZMkUul0snnniiJk6cGHRcfn6+YmNjqzzH119/rfz8fJ177rmBbeeee66uu+46bd68WV27dq01zgp2u12SgiqEGrL/UEREROg///mPnn/+eS1ZskQffvihPvzwQ5nNZv3xj3/UlClTKk19WJf3U1cxMTEqLS1VSUlJ4Of266+/at++fTr99NMrtb/33nuDXickJGj69Onq3bt3YNuQIUN0ySWX6LnnntMnn3yi8PBwPfjgg0HH5efnS1Kln7vJZNIrr7yiV155RQsWLNCiRYu0aNEiPfjggxo5cqQefPBBxcTEBN5zVFRUje+vYr/T6Tzqib+uXbtq3rx5+ve//62vvvpKGzdu1OzZs2W323XPPfdo/PjxIffVED/r2NhY5eXl1dimoKBAhmEEVR1X57vvvtNzzz2nkSNHBqYalhSY2reqz3F4eHjQ1L+H27p1qx588EH1799fF154YdC+wx/aGD16tDp06KAnn3xSn3zySaWpOQ9XWlpabUyHxn366acrNTVVjzzyiCIjI9WzZ0/98MMPevLJJxUWFlZj/HV1JNeqqu8sAAAAjj0k/gAAAIAa/N///Z86duwoi8WipKQkdezYsdJaVBUVL7XZtWuXWrRoUeP6TDt27JBhGNVOF1pb5cnhcRcVFWnOnDn67rvvqrwBPHfuXL366qvavn27PB5PYPvh1VKh2rt3r8xmc6U1vJKTkxUTExOYcrQ2zzzzjBwOR+DaHt6fVH5D++GHH9ZFF12k8PBwPfzww4EE6qGqm/ZywYIFatOmjWw2m3bu3ClJateunSIjI7Vw4ULdcccdIcUqlVcmSsHJolD7r6jMqRAdHa2IiIiQz334sXfffbfuvvtu7d27VytWrNCrr76qN998Uw6HI+TpVqt6P3VVcd0P/Zl89dVXSkpKCkrmVbjxxht1wgknyGw2Kz4+Xp07d67y8z5lyhR98cUX2rhxox5//PFqqxmr+rnbbDZdf/31uv7665WZmanvvvtOs2fP1uLFixUWFqbHHnssKKFXk1AThBXcbnegkrVCQkJCIPlem8M/2x07dtSjjz4qn8+nLVu26KuvvtLMmTP1t7/9TW3atKl2XcvDNdTPuqrvXnVta7J161bddNNN6tq1a6BquELF96Kq9ULLysqq/d5kZWXp2muvVXR0tGbMmBHSNZ80aZJmzJih5cuXa/To0fL5fEEPY0jlCU+bzaaIiIhqYzo07vDwcL344ou67bbbdPPNN0sq/0zeddddeuGFFwJJ2Pp+Vg49Z12uVVXfWQAAABx7SPwBAAAANejTp0+VSYpD2Wy2SsnAI+X3+2UymfTyyy9XeZO34sZwbQ6Ne/jw4frjH/+ov/zlL1qyZEngBv/8+fM1depUDR8+PLBGocVi0YsvvlivKR6l+t84PuGEE5SQkFBru4o16MrKyrRz586g6fOk8vXhqloXsbi4WF9++aXKysqqTLIuWrRIt99+e8jv49dff5UktW/fvs79DxkyJGjftGnTNHbs2EC1UEXy4HAlJSWV1go7VGpqqi666CKNGDFCw4cP18KFC0NO/FW8n6oSrqEqLCxUZGRkUILh66+/1mmnnVbldU1LSwspWbVx40bl5OQExXmoisR6QUFBjQn5Fi1aaPTo0TrrrLN07rnnasmSJZo+fbqio6OVnJysX375pcY4fvnlF6WkpIRc7bd27dpKFamff/55IDnsdrurTKAZhqGysrJqqzUtFovS09OVnp6ufv36aeLEiVq4cGHIib/DP7tHorCwsNbjY2NjZTKZalyndP/+/Zo8ebIcDodeeumlStf28KkzD5WVlVXltJZFRUW6+uqrVVRUpLfeeqtStXZ1IiIiFBcXF0jA7d+/v9I0pbNnz9bgwYOVnJysjIyMKmOSgqfb7Nq1qxYtWqQtW7aooKAgsEbitGnTNGjQIEk1f1ZCdSTXqqrvLAAAAI49JP4AAACAo6Rdu3b65ptvlJ+fX23VX7t27WQYhtq0aRO0Vl19WCwW3XHHHZo4caLeeustXXPNNZKkTz75RG3bttWzzz4blGx4+umng46vSxIvNTVVfr9fO3fuVOfOnQPbs7OzVVhYqNTU1Hq+m99s2rRJzz33nMaOHatNmzbpvvvu08KFCxUdHR1o06lTJy1cuFBFRUVB2z/99FOVlZXpgQceUHx8fFC/27dv11NPPaXVq1cH1hSsic/n06JFixQZGamBAwfWuf9Zs2YF7e/SpYskBdad2759e5Vx7NixI6TpQmNjY9W2bVtt3ry51rYVFixYIEk67bTTQj7mcHv27FGnTp0CrwsLC7V27Vr96U9/OuI+XS6X7rnnHnXp0kX9+/fXzJkzNXz4cPXp0yfQpuKce/bsUXp6eq19Wq1Wpaena8eOHcrLy1NycrKGDh2q999/X99//32V1/7777/X3r17dckll4Qce7du3Sr9rCuSM6mpqYE18A5PoO3cuVM+ny+k706vXr0khb5WXFWf3bryer3av3+/hg0bVmO7sLAwtWvXTnv27Klyf15enq688kq53W69/fbbVSam0tLSFBYWpvXr12vUqFGB7W63Wxs3bgxaD1AqT5pfd9112rFjh2bNmhX4boWiuLhYeXl5gQcQkpOTK/38unXrFvjvqlWrKq33+MMPP0iSunfvHnScyWQK+u4uXbpUfr8/kKyt6bMSqrpeK6nydxYAAADHpoZ5LBkAAABArc466ywZhqFnn3220r6KKdbOOussWSwWPfvss5WmxDMMo9Z1tKozePBg9enTR6+//nqggqyiovDQ8/zwww9at25d0LEVaz3VVKlToWLtttdffz1oe8VN7KrWdjsSHo9H99xzj1q0aKG//vWvmjZtmrKzs/Xwww8HtevXr58Mw9D69euDti9YsEBt27bVZZddpnPOOSfoz+TJk2W327Vw4cJa4/D5fHrooYe0detWTZgwIXDTvy79n3LKKUF/KhIePXv2VGJiov7zn/9Umq7vs88+U0ZGhv7whz8Etm3atKnSVIRS+fSrW7duDTmRvHDhQv3nP/9R//79g9ZXq6uff/5ZAwYMCLyuqM48vMKxLh577DHt379f06dP19SpU5WamqqpU6cGXZ9evXrJarVW+pnv2LFD+/btq9RnRUIyNjY2kOSZPHmyIiIidP/991f6zuXn5+v+++9XZGSkrrrqqpBjj42NrfSzrqjYrPg5vvnmm5WOe+utt4LaSOWJx0On5q1QscZmKD/r6j67dbVlyxaVlZWpf//+tbbt169fpZ+LVJ7Qveaaa5SRkaGXXnpJHTp0qPL46OhonXzyyVqwYIGKi4sD2+fPny+XyxW0NqjP59Ntt92mdevWacaMGdXGV1ZWFtRXhX//+98yDCOQ/A4PD6/086tYR/Kcc86Rz+fTe++9Fzje7Xbrww8/VN++fdWqVatqr0lpaalmzJih5OTkwFqCNX1WQlWXa1Xh8O8sAAAAjk1U/AEAAABHyUknnaQLLrhAb7zxhnbu3KnTTjtNfr9fq1ev1uDBg3X55ZerXbt2uu222/T4449r7969Gj58uKKiorRnzx599tlnGj9+vCZPnnxE5588ebJuvfVWffjhh7rssst0xhln6NNPP9WNN96oM844Q3v27NG7776rLl26BNb9ksqnvOvSpYsWL16sDh06KC4uTl27dlVaWlqlc3Tr1k0XXnih3nvvPRUWFmrQoEH66aefNHfuXA0fPlwnnXTSEV+/Qz3//PPauHGjXnvtNTkcDnXr1k033nijnnrqKZ1zzjmBBOPAgQMVFxenFStWBJJYGRkZWrVqlSZMmFBl3zabTaeddpqWLFmi++67T1arVVL5lIHz58+XVH6zfufOnfrvf/+rXbt2afTo0br11lvr1X9V7e6++25NnTpV48aN06hRoxQXF6eNGzdqzpw5Sk9PD6o4+/bbb/XMM89o2LBh6tu3r+x2u/bs2aM5c+bI7XYH1hQ71CeffCK73S6Px6OMjAx98803WrNmjbp166YZM2aE8qOo0vr165Wfnx80NeLSpUs1YMCAoMrLulixYoXefvtt3XTTTerZs6ek8mlRJ0yYoKeeekp33323pPIEzZAhQ7RixYrAz0QqT4zeeeedOu2003TCCScoNjZWGRkZmjdvnjIzM3XvvfcGkuEdOnTQ9OnTddddd+m8887TRRddpDZt2mjv3r364IMPlJeXpyeeeKLKqVDnzJmjZcuWVdo+ceLEapNr3bt318UXX6zZs2dr586dgcqv5cuXa+nSpbr44osD1WWS9PLLL2vDhg0aMWJEoKrx559/1rx58xQXF6c///nPQf2H+tk9EsuXL1dkZGRIU4ueeeaZmj9/vrZv3x6UnLzzzjv1448/aty4cdq6dau2bt0a2BcVFaXhw4cHXt9+++269NJLNWHCBI0fP14HDhzQrFmzNGTIkKDk6PTp0/XFF19o6NChys/PD7z/ChdccIGk8mkvL7zwQo0ePTpQ7fbNN99o6dKlOu200ypN71mVvn376pxzztETTzyhnJwctW/fXnPnztXevXv1z3/+M6jtrbfeqhYtWqhLly4qLi7WnDlztHv37iqnNq3Ov//9b0nlSVepPJm3evVqSdINN9xQ52slVf2dBQAAwLGJxB8AAABwFE2bNk3p6en64IMP9Mgjjyg6Olq9evUKqka55ppr1KFDB7322mt67rnnJEktW7bUqaeeWut0ejU566yz1K5dO7366qsaP368xo4dq+zsbL333nv65ptv1KVLFz366KNasmSJ/ve//wUd+9BDD+kf//iHpk2bJo/Ho5tuuqnKxF9F2zZt2mju3Ln67LPPlJSUpGuvvVY33XTTEcd+qA0bNujFF1/U5ZdfHpRIvOaaa/T555/rvvvu00cffaSYmBjZbDadd955WrJkie644w5J0scffyy/36+hQ4dWe46hQ4fqk08+0ddffx24EX7gwIFAcslut6tFixbq16+fHnjgAZ166qmBY4+0/6qMGTNGCQkJmjlzpmbOnKmysjKlpKRowoQJuuGGG4LW4jrrrLPkdDr17bffauXKlSooKFBMTIz69OmjK664osqk6wMPPCCpPFkWHx+v7t276+GHH9Z5551X7ZpyoViyZIlat24dOKdhGFq2bJmuvPLKI+qvuLhYf/3rX9WjRw9dd911ge0nnHCCJk6cqFmzZumss85Sv379JEnjxo3TzTffrP379weqrQYNGqRbbrlFy5Yt06xZs5SXl6eoqCh1795dd955p84+++ygc44cOVKdOnXSSy+9pA8++CAwRe/gwYN17bXXVvv5f+edd6rcPnbs2BoTOw8++KDS0tI0Z84cPfHEE5LKK/fuu+++StOjXnvttVq0aJG+++47LVy4UKWlpYGKsRtuuKHSWpehfnaPxJIlSzRixIiQklZDhw5VfHy8Fi9eHJSg2rRpk6TypOmcOXOCjklNTQ1K/PXs2VOzZs3SY489pmnTpikqKkoX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6sYbr9brr7+i008fJr/fp//+9xOtX/+j/vKXKZLKK/b+9repGj36fHXu3FV2u12bNm3U22+/EVivsILL5VJOTra8Xq/279+nTz5ZrEWL5unaa29UmzZtQ75WoYiIiNB5543Rq6++qD/84QylpraV1+vVBx+8p1NPPU0//fSD5s//MOiYVq1aqaTEpe+//5+6dElTREREpUrAE04YrE6dOuvBB/+mW275i3w+rx5//F/q12+AunXr0aDv4XAk/gAAAAAAx5WXf3xB2SVZem74S00dCgAAAA6xaNF8nXDCiVVO53nGGcP09tuztWXLZkVFRUmSbrvtBknlyZuWLVupf/8TdPfdfw0kh0Ltr0uXrpX2R0dH67nnXtYLLzyrqVPvkNNZrNTUtrr55tt17rkXBNqdeOLJ+uyzT/TGG6/J6SxWQkKiBg4cpCuvvCYoSbZy5XINGTJEFkuYoqOj1aVLV912250aOfJcmc2hTc64d+8e7d27RyeeeHJgW3Jyilq2bK1Zs17W/v37ZTKZ1KpVK1155bW65JI/BtqNH/9HtW6dqnfeeVMffPCufD6/OnbspL/8pTwZd7j777+30rYPP/xILVqkVNreu3dfPfbY05o162W9++5bMptN6tSpi2bMeF6dOnWRJEVG2tWjRy+9997b2rdvj7xer1q0SNF5543RxIlXBPU3c+YLmjnzBVmtViUkJKpnz96aMeP5kKYjPRLjxo3Xe++9pS+++ExnnjlCN998u95663W9+OKz6tt3gK699kY99ND9Qe93zJhxuv/+e1RQUKArrrhakydfG9SnyWTStGlP6KmnHtFNN10tk8mswYNP1u2339Uo7yHo3EbFSpdoMllZRU0dApqBsDCz4uOjlJfnlNdbc5kxAITieB5X5m2eo8GtTv7dr3sAHIuO57EFvx+XLRonv+HXe+fNbepQ0AAYVwA0BsYWAA2tIcaVd999U99//z899tjTDRwdjgXJydEhtWONPwAAgEP4Db+e/+EZvf/LO00dCgCgEeSV5iq7JFv5ZXny+X1NHQ4AAAAQsuTkFE2YcEXtDXFcI/EHAABwiBJvifyGoeX7vpHf4MleAGhutuRvliT5DUN5ZXlNHE3jWJPxvXJLc5o6DAAAADSwM88cob59+zd1GPidI/EHAABwiGJPsSQptzRXG3N+buJoAAANbUve5sDfc0qy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I+WNeOBX/KhzTgcArKg4HrPcs7N2fJepSG/1udezBwuKF2bt2OPBKBphl+x6a2MaX3kP/l566SWsX78e1113HZ555hnMnz8fV111FTo7B26T8/777+PrX/86LrroIjz77LM444wzcN1112H37t36Pg8//DAef/xx3HHHHXjqqadgsVhw1VVXIRKJ6PusWrUK9957LzZs2ID7778fjY2NuP766/XbX3vtNdx888249NJL8ec//xnf/e538Zvf/AZPPPFE2nquv/56bNy4Ed///vexYcMG/OQnP8HMmTOz/CwR0ViIogHxYWb8KQkFAPR5eW5zkT4wuCXQgkpr1aBX55sNZgQGC/5SrRNskk3vqR+MBdAeahvxC+aBZ/xFIXHGHxERUV5JBgnl1go0+RuH3K8z3IHS1IcXREQ0OWkVDIU6s0ib8TdYxZ/ZaCngVp/jNOMvdVHxW81vYH7xAhhFI9bWfRxraj6G779zJ14+8CKcshPl1goAwIlVq7CgZCFuf+MmfNC+ZUSPpQUq/Wf8Dd52cSBtoWSxxESc8TcYh+zUA6TJrCvUCYfszNrxREGEVbKlzT9sD7XBKBr0Cjmg92emb0A4Gn1bimpB9LG0i+nLrRVQEope3eeQHShOVfdp27x9WngCydnZneEBgr9wb8VfnXMGAKS1080G7XjTHHVZPa7GJbvQHfEiHAuj0XcIs1PjiSYTV4G3x57I8h78/frXv8bFF1+MCy+8ELNnz8add94Js9mMp59+esD9H3vsMZxyyin48pe/jPr6etxwww1YuHChHsipqorHHnsM11xzDc4880zMnz8fd999N9ra2vD3v/9dP84VV1yBhoYG1NTUYMWKFfjKV76CLVu2QFGSH/4///zzOOOMM/D5z38e06ZNw2mnnYZ169bh4YcfhqqqAIDXX38d7777Ln75y19i9erVqK2txfLly3Hcccfl+FkjopHIpOJPC/76VvwFlSCi8ShaA82otA883w9I9ccf5I2P9gLJITt6XzRF/WgLHkVZ6kV8pqxGa7+r8pREFLKY+zcmRERENLRqew2a/c1D7tMR6sja3A8iIsoPbWaRNhqi0GjB32ABWLLirzCDv2RLxdxX/GlVSHs8u7GwZBGAZBhz28pvod49G283v4m5xfP0i49NBhN+eMpPML94AW57/aYRVf4NFPxZJeuIq7jag22Q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ssdknrW3+/K9BCoARqOIoiIbPJ4AS8WJKCt4XiGiXOC5hYiyjecVoqnpkhc+i7NmnoMvLf4KvGEPLvnzZ/HV5TfgvPrPZOX4PLcQUbbxvEJjVVbmyGg/cfhdiIiIiIiIiIiIiCaOevdsHPDuAwC80fQaAOCUmlPzuSQiIqIJgcEfERERERERERERTSozXbOwz7sXh3sO4c/7nsNxFSfAbS7K97KIiIjyjsEfERERERERERERTSr17tloD7Xjqr9cjs5wFy6d/5/5XhIREdGEYMz3AoiIiIiIiIiIiIhG4viKE3HG9I/jxMqVWFNzKmSDnO8lERERTQgM/oiIiIiIiIiIiGhScZpcuO3Eb+V7GURERBMOW30SERERERERERERERERFQAGf0REREREREREREREREQFgMEfERERERERERERERERUQFg8EdERERERERERERERERUABj8ERERERERERERERERERUABn9EREREREREREREREREBYDBHxEREREREREREREREVEBYPBHREREREREREREREREVAAY/BEREREREREREREREREVAAZ/RERERERERERERERERAWAwR8RERERERERERERERFRAWDwR0RERERERERERERERFQAGPwRERERERERERERERERFQAGf0REREREREREREREREQFgMEfERERERERERERERERUQFg8EdERERERERERERERERUABj8ERERERERERERERERERUABn9EREREREREREREREREBYDBHxEREREREREREREREVEBYPBHREREREREREREREREVAAY/BEREREREREREREREREVAAZ/RERERERERERERERERAVAUFVVzfciiIiIiIiIiIiIiIiIiGhsWPFHREREREREREREREREVAAY/BEREREREREREREREREVAAZ/RERERERERERERERERAWAwR8RERERERERERERERFRAWDwR0RERERERERERERERFQAGPwRERERERERERERERERFQAGf0REREREREREREREREQFgMEfERERERERERERERERUQFg8EdERERERERERERERERUABj8EeXAk08+ibVr12LJkiX43Oc+hw8++CDt9sOHD+O6667DqlWrsGLFClx//fXo6OgY9rh33XUXLrjgAixevBjnn3/+gPvs3LkT//Ef/4ElS5bg1FNPxcMPPzzm477zzju45pprsGbNGjQ0NOD888/H888/P+xxiSi7Cu3c0tehQ4ewfPlyHH/88cMel4iypxDPK6qq4le/+hXOOussLF68GKeccgp+/vOfD3tsIsqeQjy3vPHGG7j44ouxfPlyrFq1Cv/1X/+FI0eODHtsIsqeyXRu2blzJ2688UaceuqpWLp0Kc4++2z89re/7bffO++8g89+9rNYvHgxPv7xj+NPf/rTsOslouwptPPKX//6V1x55ZX6ei+55BK88cYbw66XCg+DP6Ise+mll7B+/Xpcd911eOaZZzB//nxcddVV6OzsBAAEg0F86UtfgiAI+O1vf4vf/e53UBQFV199NRKJxLDHv/DCC3HOOecMeJvf78dVV12F6upq/OlPf8Itt9yCBx98EL///e/HdNzNmzdj3rx5uP/++/H888/jggsuwK233op//OMfwx6XiLKjEM8tGkVRcOONNzL0IxpnhXpe+f73v48//OEPuOWWW/Dyyy/j5z//OZYuXTrscYkoOwrx3NLY2Ihrr70Wq1atwnPPPYdf/epX8Hg8+K//+q9hj0tE2THZzi0ffvghiouLcc899+DFF1/E1VdfjZ/+9Kd44okn9H0aGxuxbt06rFy5Es899xy++MUv4lvf+hY/pCcaJ4V4Xnn33XexevVq/PKXv8Sf/vQnrFy5Etdccw0++uijET47NOmpRJRVF110kXrnnXfqX8fjcXXNmjXqL37xC1VVVfWNN95Q58+fr/p8Pn2fnp4edd68eepbb72V0WPcf//96qc//el+25988kn1hBNOUCORiL7tnnvuUc8666wxHXcgX/nKV9Tbbrsto32JaOwK+dxy9913qzfddJP69NNPq8cdd1xGxySisSvE88revXvVhQsXqvv27cvoOESUfYV4bnn55ZfVhQsXqvF4XN/2yiuvqPPmzVOj0WhGxyaisZnM5xbNHXfcoV522WX613fffbf6qU99Km2fG264Qf3Sl740ouMS0egU4nllIOecc476wAMPjOi4NPmx4o8oi6LRKLZv347Vq1fr20RRxOrVq7F582Z9H0EQIMuyvo/JZIIoinjvvffG9PhbtmzB8ccfn3bsNWvW4MCBA+ju7h7TsY/l8/ngdruzekwiGlghn1s2btyIDRs24Lvf/e6YjkNEI1Oo55VXX30VtbW1+Oc//4m1a9di7dq1+OY3vwmv1zum9RJRZgr13LJo0SIIgoCnn34a8XgcPp8Pzz33HFavXg1Jksa0ZiIaXqGcW479HGXLli046aST0vZZs2YNtmzZMqb1EtHwCvW8cqxEIoFAIMDPcKcgBn9EWeTxeBCPx1FSUpK2vaSkRO//3NDQAIvFgnvuuQehUAjBYBA/+tGPEI/H0d7ePqbH7+joQGlpado27etM+k9n6qWXXsK2bdtwwQUXZO2YRDS4Qj23eDwe3H777fjhD38Iu90+pjUS0cgU6nmlsbERzc3N2LBhA+6++26sX78e27dvx9e+9rUxrZeIMlOo55Zp06bh0Ucfxc9+9jMsWbIExx9/PI4ePYp77713LMslogwVwrnl/fffx8svv4yLL7542OP6/X6Ew+ExrZmIhlao55Vj/epXv0IwGMTZZ589+sXSpMTgj2icFRcX47777sM//vEPLF++HMcffzx6enr0q0gB4Mtf/jKWL1+O5cuX41Of+lSeV5xu06ZN+MY3voG77roLc+bMyfdyiChlMp5bvv3tb+Pcc8/FCSeckO+lENEAJuN5RVVVRKNR/OhHP8Lxxx+PlStX4vvf/z7eeecd7N+/P9/LIyJMznNLe3s7vv3tb+Mzn/kM/vjHP+KJJ56AJEn42te+BlVV8708IsLEPrfs3r0b1157La677jqsWbNm3B6XiMZmsp9XXnjhBTz00EO49957+wWcVPiM+V4AUSEpKiqCwWDQh8BqOjs7067iWLNmDf7+97+jq6sLRqMRTqcTJ598sj7w9fvf/75+dZfRmPmvaWlpab+rQrSvj72KZDT+9a9/4ZprrsHtt9+Oz3zmM2M+HhFlplDPLZs2bcKrr76KRx99FEDyA/tEIoGFCxfie9/7Hi666KJRH5uIhlao55WysjIYjUbMnDlT31ZfXw8AaGlpwaxZs0Z9bCIaXqGeW5588knY7Xbccsst+rZ77rkHp556KrZu3YqGhoZRH5uIhjeZzy179+7FFVdcgUsuuQTXXnttRse12+0wm80Zr4+IRq5QzyuaF198Ed/61rdw3333pbUzpamDFX9EWSTLMhYtWoSNGzfq2xKJBDZu3Ijly5f327+4uBhOpxMbN25EZ2cn1q5dCwCoqKjA9OnTMX36dNTU1GT8+A0NDfj3v/8NRVH0bW+//TZmzpwJl8s1hu8MeOedd7Bu3TrcdNNNuOSSS8Z0LCIamUI9t/z+97/Hs88+q//3ta99DTabDc8++yw+/vGPj/q4RDS8Qj2vrFixArFYDIcPH9a3HTx4EABQXV096uMSUWYK9dwSDochiukfn2hfJxKJUR+XiDIzWc8te/bsweWXX47PfOYz+L//9/8OeNxNmzalbXv77bd5MQHROCjU8woA/PnPf8btt9+On/zkJzjttNMyXhMVFgZ/RFl25ZVX4qmnnsIzzzyDffv24Y477kAoFEqbh/f0009jy5YtOHz4MJ577jnccMMNuOKKK4a9Cv3QoUPYsWMH2tvbEQ6HsWPHDuzYsQPRaBQAcN5550GSJHzzm9/Enj178NJLL+Gxxx7DlVdeOabjbtq0CevWrcNll12GT3ziE2hvb0d7ezu8Xu/Yniwiylghnlvq6+sxd+5c/b+KigqIooi5c+eO+WIFIhpeIZ5XVq9ejUWLFuEb3/gGPvroI3z44Yf4zne+g5NPPjmtCpCIcqcQzy2nnnoqtm3bhgcffBAHDx7E9u3bcfvtt6OmpgYLFy4c4zNGRJmYbOeW3bt34/LLL8fJJ5+MK6+8Uv8cpaurS9/n0ksvRWNjI+6++27s27cPTz75JF5++WVcccUVY3uyiCgjhXheeeGFF3Drrbfi1ltvxbJly/R9fD7fGJ8tmmwElQ3pibLuiSeewK9+9Su0t7djwYIF+Na3voVly5bpt//4xz/GM888g+7ubtTU1ODSSy/FFVdcofeHHsxll12Gf/3rX/22v/LKK6itrQUA7Ny5E9/73vewbds2FBUV4Qtf+AL+z//5P2M67m233YZnnnmm3+0nnngiHn/88SGPTUTZU2jnlmP96U9/wg9+8AP8+9//HvK4RJQ9hXheOXr0KO666y68+eabsFqt+NjHPoZbb70Vbrd7uKeDiLKkEM8tL774Ih555BEcPHgQZrMZDQ0NuOmmm/R2wkSUe5Pp3PLAAw/gwQcf7Le9pqYGr776qv71O++8g/Xr12Pv3r2orKzEtddemxY6EFFuFdp5ZbDH/exnP4sf/vCHQ66ZCguDPyIiIiIiIiIiIiIiIqICwFafRERERERERERERERERAWAwR8RERERERERERERERFRAWDwR0RERERERERERERERFQAGPwRERERERERERERERERFQAGf0REREREREREREREREQFgMEfERERERERERERERERUQFg8EdERERERERERERERERUABj8ERERERERERERERERERUAY74XQERERERERIVh3rx5w+6zfv16PPPMM7BarfjFL34xDqsiIiIiIiKaOgRVVdV8L4KIiIiIiIgmvy1btqR9fckll+Cyyy7Dueeeq2+rq6tDV1cXRFHErFmzxnmFREREREREhY0Vf0RERERERJQVDQ0N/bZVVVX1215cXDw+CyIiIiIiIppiOOOPiIiIiIiIxtVll12GdevW6V8/8MADWL58OT766CNccsklWLp0KT772c/io48+QiQSwXe/+12ccMIJ+NjHPobf/OY3/Y63efNmXH755WhoaMBxxx2Hr3/96+js7BzH74iIiIiIiGhiYPBHREREREREeacoCm699VZcfPHFeOCBBxCLxfDVr34V3/zmN2E2m3HvvffizDPPxPr16/H+++/r99u8eTMuu+wyOBwO/OxnP8N///d/Y9u2bbj22mvz+N0QERERERHlB1t9EhERERERUd4pioKbbroJp556KgAgkUjg6quvxrJly3D77bcDAFatWoUNGzZgw4YNWLFiBQDgJz/5CRYvXowHH3wQgiAAAObOnYtzzz0Xr732mn48IiIiIiKiqYAVf0RERERERJR3oijipJNO0r+eMWMGAGD16tX6NoPBgLq6OrS2tgIAQqEQ3n//fXzyk59EPB5HLBZDLBbDjBkzUFVVhW3bto3r90BERERERJRvrPgjIiIiIiKivDObzZBlWf9akiQAgMPhSNtPkiREIhEAQE9PD+LxONavX4/169f3O2ZLS0sOV0xERERERDTxMPgjIiIiIiKiScnhcEAQBKxbtw5nnnlmv9uLiorysCoiIiIiIqL8YfBHREREREREk5LVakVDQwP279+PJUuW5Hs5REREREREecfgj4iIiIiIiCatW265BV/84hdxww034FOf+hScTidaW1vx9ttv44ILLsDKlSvzvUQiIiIiIqJxw+CPiIiIiIiIJq0VK1bgf//3f/HAAw/g9ttvh6IoqKysxKpVqzB9+vR8L4+IiIiIiGhcCaqqqvleBBERERERERERERERERGNjZjvBRARERERERERERERERHR2DH4IyIiIiIiIiIiIiIiIioADP6IiIiIiIiIiIiIiIiICgCDPyIiIiIiIiIiIiIiIqICwOCPiIiIiIiIiIiIiIiIqAAw+CMiIiIiIiIiIiIiIiIqAAz+iIiIiIiIiIiIiIiIiAoAgz8iIiIiIiIiIiIiIiKiAsDgj4iIiIiIiIiIiIiIiKgAMPgjIiIiIiIiIiIiIiIiKgAM/oiIiIiIiIiIiIiIiIgKAIM/IiIiIiIiIiIiIiIiogLw/wMNSyI1uOWTigAAAABJRU5ErkJggg==",
- "text/plain": [
- ""
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "text": [
- "\n",
- "Price Statistics:\n",
- " ADA-USDT: Mean=$0.88, Std=$0.01\n",
- " SOL-USDT: Mean=$222.64, Std=$1.18\n",
- " Price Ratio: Mean=0.00, Std=0.00\n",
- " Correlation: 0.8707\n",
- "\n",
- "Created trading pair: ResearchTradingPair: symbol_a=ADA-USDT, symbol_b=SOL-USDT, model=VECMModel\n",
- "Market data shape: (120, 7)\n",
- "Column names: ['close_ADA-USDT', 'close_SOL-USDT']\n"
- ]
- },
- {
- "data": {
- "text/html": [
- " \n",
- " \n",
- " "
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "text": [
- "=== SLIDING FIT INTERACTIVE VISUALIZATION ===\n",
- "Note: Rolling Fit strategy visualization with interactive plotly charts\n",
- "Using consistent timeline with 659 timestamps\n",
- "Timeline range: 2025-09-10 11:30:00 to 2025-09-10 22:29:00\n",
- "\n",
- "Symbol_A trades:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "0 2025-09-10 13:34:00 OPEN ADA-USDT BUY 0.885898 -0.000920 0.824485 -0.824485 OPEN\n",
- "2 2025-09-10 13:35:00 CLOSE ADA-USDT SELL 0.885872 -0.000031 0.299233 -0.299233 CLOSE\n",
- "4 2025-09-10 13:39:00 OPEN ADA-USDT BUY 0.887357 -0.000568 0.763362 -0.763362 OPEN\n",
- "6 2025-09-10 13:42:00 CLOSE ADA-USDT SELL 0.890511 -0.000021 0.446956 -0.446956 CLOSE\n",
- "8 2025-09-10 13:50:00 OPEN ADA-USDT SELL 0.892900 0.002494 1.041219 1.041219 OPEN\n",
- "10 2025-09-10 13:58:00 CLOSE ADA-USDT BUY 0.891480 0.000305 0.352027 0.352027 CLOSE\n",
- "12 2025-09-10 14:03:00 OPEN ADA-USDT SELL 0.891702 0.001450 0.965967 0.965967 OPEN\n",
- "14 2025-09-10 14:04:00 CLOSE ADA-USDT BUY 0.893018 0.000619 0.426978 0.426978 CLOSE\n",
- "16 2025-09-10 14:08:00 OPEN ADA-USDT SELL 0.894122 0.001932 1.138355 1.138355 OPEN\n",
- "18 2025-09-10 14:45:00 CLOSE ADA-USDT BUY 0.888666 0.000285 0.440307 0.440307 CLOSE\n",
- "20 2025-09-10 14:48:00 OPEN ADA-USDT SELL 0.888845 0.001053 0.755823 0.755823 OPEN\n",
- "22 2025-09-10 14:56:00 CLOSE ADA-USDT BUY 0.887105 0.000568 0.499517 0.499517 CLOSE\n",
- "24 2025-09-10 15:04:00 OPEN ADA-USDT SELL 0.889064 0.001197 0.775172 0.775172 OPEN\n",
- "26 2025-09-10 15:05:00 CLOSE ADA-USDT BUY 0.889646 0.000538 0.379905 0.379905 CLOSE\n",
- "28 2025-09-10 15:30:00 OPEN ADA-USDT BUY 0.887590 -0.001495 0.828685 -0.828685 OPEN\n",
- "30 2025-09-10 15:47:00 CLOSE ADA-USDT SELL 0.889067 0.000290 0.300166 0.300166 CLOSE\n",
- "32 2025-09-10 15:52:00 OPEN ADA-USDT SELL 0.889420 0.001042 0.845258 0.845258 OPEN\n",
- "34 2025-09-10 15:54:00 CLOSE ADA-USDT BUY 0.889818 0.000072 0.085410 0.085410 CLOSE\n",
- "36 2025-09-10 16:04:00 OPEN ADA-USDT BUY 0.887397 -0.000908 0.782667 -0.782667 OPEN\n",
- "38 2025-09-10 16:05:00 CLOSE ADA-USDT SELL 0.887639 0.000344 0.186446 0.186446 CLOSE\n",
- "40 2025-09-10 16:10:00 OPEN ADA-USDT BUY 0.884660 -0.001160 1.129970 -1.129970 OPEN\n",
- "42 2025-09-10 16:41:00 CLOSE ADA-USDT SELL 0.884926 -0.000134 0.467464 -0.467464 CLOSE\n",
- "44 2025-09-10 16:43:00 OPEN ADA-USDT BUY 0.884720 -0.000617 0.769230 -0.769230 OPEN\n",
- "46 2025-09-10 16:46:00 CLOSE ADA-USDT SELL 0.884994 -0.000156 0.399989 -0.399989 CLOSE\n",
- "48 2025-09-10 16:47:00 OPEN ADA-USDT BUY 0.885569 -0.000679 0.768194 -0.768194 OPEN\n",
- "50 2025-09-10 16:49:00 CLOSE ADA-USDT SELL 0.886788 0.000077 0.280038 -0.280038 CLOSE\n",
- "52 2025-09-10 17:00:00 OPEN ADA-USDT SELL 0.890556 0.001519 0.913835 0.913835 OPEN\n",
- "54 2025-09-10 17:02:00 CLOSE ADA-USDT BUY 0.890777 0.000451 0.140338 0.140338 CLOSE\n",
- "56 2025-09-10 17:04:00 OPEN ADA-USDT SELL 0.890932 0.001273 0.869416 0.869416 OPEN\n",
- "58 2025-09-10 17:50:00 CLOSE ADA-USDT BUY 0.887723 0.001537 0.436893 0.436893 CLOSE\n",
- "60 2025-09-10 17:57:00 OPEN ADA-USDT SELL 0.887653 0.001937 0.762645 0.762645 OPEN\n",
- "62 2025-09-10 18:01:00 CLOSE ADA-USDT BUY 0.887665 0.000910 0.454978 0.454978 CLOSE\n",
- "64 2025-09-10 18:05:00 OPEN ADA-USDT SELL 0.887922 0.001621 0.826283 0.826283 OPEN\n",
- "66 2025-09-10 18:08:00 CLOSE ADA-USDT BUY 0.886799 0.000663 0.499959 0.499959 CLOSE\n",
- "68 2025-09-10 18:12:00 OPEN ADA-USDT SELL 0.886269 0.000673 0.766437 0.766437 OPEN\n",
- "70 2025-09-10 18:15:00 CLOSE ADA-USDT BUY 0.885385 -0.000091 0.425496 0.425496 CLOSE\n",
- "72 2025-09-10 18:36:00 OPEN ADA-USDT BUY 0.883996 -0.002189 1.407243 -1.407243 OPEN\n",
- "74 2025-09-10 19:10:00 CLOSE ADA-USDT SELL 0.880598 0.000000 0.000000 0.000000 CLOSE_STOP_LOSS\n",
- "76 2025-09-10 19:11:00 OPEN ADA-USDT BUY 0.879860 -0.023480 2.858849 -2.858849 OPEN\n",
- "78 2025-09-10 20:00:00 CLOSE ADA-USDT SELL 0.878445 0.002158 0.205766 -0.205766 CLOSE\n",
- "80 2025-09-10 20:37:00 OPEN ADA-USDT SELL 0.879982 0.001724 1.005873 1.005873 OPEN\n",
- "82 2025-09-10 20:45:00 CLOSE ADA-USDT BUY 0.880463 0.000550 0.308519 0.308519 CLOSE\n",
- "84 2025-09-10 20:54:00 OPEN ADA-USDT BUY 0.879453 -0.000924 0.945619 -0.945619 OPEN\n",
- "86 2025-09-10 21:03:00 CLOSE ADA-USDT SELL 0.882105 0.000423 0.313357 0.313357 CLOSE\n",
- "88 2025-09-10 21:12:00 OPEN ADA-USDT SELL 0.884020 0.001592 1.530571 1.530571 OPEN\n",
- "90 2025-09-10 21:17:00 CLOSE ADA-USDT BUY 0.883344 0.000423 0.422399 0.422399 CLOSE\n",
- "92 2025-09-10 22:03:00 OPEN ADA-USDT SELL 0.885924 0.000826 0.804025 0.804025 OPEN\n",
- "94 2025-09-10 22:05:00 CLOSE ADA-USDT BUY 0.885907 0.000333 0.448001 0.448001 CLOSE\n",
- "96 2025-09-10 22:16:00 OPEN ADA-USDT SELL 0.887109 0.000233 0.995969 0.995969 OPEN\n",
- "98 2025-09-10 22:26:00 CLOSE ADA-USDT BUY 0.885579 0.000042 0.429289 0.429289 CLOSE\n",
- "\n",
- "Symbol_B trades:\n",
- " time action symbol side price disequilibrium scaled_disequilibrium signed_scaled_disequilibrium status\n",
- "1 2025-09-10 13:34:00 OPEN SOL-USDT SELL 223.067938 -0.000920 0.824485 -0.824485 OPEN\n",
- "3 2025-09-10 13:35:00 CLOSE SOL-USDT BUY 222.988969 -0.000031 0.299233 -0.299233 CLOSE\n",
- "5 2025-09-10 13:39:00 OPEN SOL-USDT SELL 223.740538 -0.000568 0.763362 -0.763362 OPEN\n",
- "7 2025-09-10 13:42:00 CLOSE SOL-USDT BUY 224.181397 -0.000021 0.446956 -0.446956 CLOSE\n",
- "9 2025-09-10 13:50:00 OPEN SOL-USDT BUY 224.156429 0.002494 1.041219 1.041219 OPEN\n",
- "11 2025-09-10 13:58:00 CLOSE SOL-USDT SELL 224.214504 0.000305 0.352027 0.352027 CLOSE\n",
- "13 2025-09-10 14:03:00 OPEN SOL-USDT BUY 224.400408 0.001450 0.965967 0.965967 OPEN\n",
- "15 2025-09-10 14:04:00 CLOSE SOL-USDT SELL 224.700367 0.000619 0.426978 0.426978 CLOSE\n",
- "17 2025-09-10 14:08:00 OPEN SOL-USDT BUY 224.398883 0.001932 1.138355 1.138355 OPEN\n",
- "19 2025-09-10 14:45:00 CLOSE SOL-USDT SELL 223.206538 0.000285 0.440307 0.440307 CLOSE\n",
- "21 2025-09-10 14:48:00 OPEN SOL-USDT BUY 223.167033 0.001053 0.755823 0.755823 OPEN\n",
- "23 2025-09-10 14:56:00 CLOSE SOL-USDT SELL 222.936840 0.000568 0.499517 0.499517 CLOSE\n",
- "25 2025-09-10 15:04:00 OPEN SOL-USDT BUY 223.396583 0.001197 0.775172 0.775172 OPEN\n",
- "27 2025-09-10 15:05:00 CLOSE SOL-USDT SELL 223.749132 0.000538 0.379905 0.379905 CLOSE\n",
- "29 2025-09-10 15:30:00 OPEN SOL-USDT SELL 223.335060 -0.001495 0.828685 -0.828685 OPEN\n",
- "31 2025-09-10 15:47:00 CLOSE SOL-USDT BUY 223.034736 0.000290 0.300166 0.300166 CLOSE\n",
- "33 2025-09-10 15:52:00 OPEN SOL-USDT BUY 223.193710 0.001042 0.845258 0.845258 OPEN\n",
- "35 2025-09-10 15:54:00 CLOSE SOL-USDT SELL 223.413141 0.000072 0.085410 0.085410 CLOSE\n",
- "37 2025-09-10 16:04:00 OPEN SOL-USDT SELL 222.866369 -0.000908 0.782667 -0.782667 OPEN\n",
- "39 2025-09-10 16:05:00 CLOSE SOL-USDT BUY 222.874434 0.000344 0.186446 0.186446 CLOSE\n",
- "41 2025-09-10 16:10:00 OPEN SOL-USDT SELL 222.844778 -0.001160 1.129970 -1.129970 OPEN\n",
- "43 2025-09-10 16:41:00 CLOSE SOL-USDT BUY 222.892523 -0.000134 0.467464 -0.467464 CLOSE\n",
- "45 2025-09-10 16:43:00 OPEN SOL-USDT SELL 222.777794 -0.000617 0.769230 -0.769230 OPEN\n",
- "47 2025-09-10 16:46:00 CLOSE SOL-USDT BUY 223.088812 -0.000156 0.399989 -0.399989 CLOSE\n",
- "49 2025-09-10 16:47:00 OPEN SOL-USDT SELL 223.083201 -0.000679 0.768194 -0.768194 OPEN\n",
- "51 2025-09-10 16:49:00 CLOSE SOL-USDT BUY 223.091338 0.000077 0.280038 -0.280038 CLOSE\n",
- "53 2025-09-10 17:00:00 OPEN SOL-USDT BUY 223.834040 0.001519 0.913835 0.913835 OPEN\n",
- "55 2025-09-10 17:02:00 CLOSE SOL-USDT SELL 223.794948 0.000451 0.140338 0.140338 CLOSE\n",
- "57 2025-09-10 17:04:00 OPEN SOL-USDT BUY 223.807847 0.001273 0.869416 0.869416 OPEN\n",
- "59 2025-09-10 17:50:00 CLOSE SOL-USDT SELL 222.927983 0.001537 0.436893 0.436893 CLOSE\n",
- "61 2025-09-10 17:57:00 OPEN SOL-USDT BUY 222.575944 0.001937 0.762645 0.762645 OPEN\n",
- "63 2025-09-10 18:01:00 CLOSE SOL-USDT SELL 222.885580 0.000910 0.454978 0.454978 CLOSE\n",
- "65 2025-09-10 18:05:00 OPEN SOL-USDT BUY 222.791989 0.001621 0.826283 0.826283 OPEN\n",
- "67 2025-09-10 18:08:00 CLOSE SOL-USDT SELL 222.676496 0.000663 0.499959 0.499959 CLOSE\n",
- "69 2025-09-10 18:12:00 OPEN SOL-USDT BUY 222.344492 0.000673 0.766437 0.766437 OPEN\n",
- "71 2025-09-10 18:15:00 CLOSE SOL-USDT SELL 222.283748 -0.000091 0.425496 0.425496 CLOSE\n",
- "73 2025-09-10 18:36:00 OPEN SOL-USDT SELL 222.436718 -0.002189 1.407243 -1.407243 OPEN\n",
- "75 2025-09-10 19:10:00 CLOSE SOL-USDT BUY 222.611141 0.000000 0.000000 0.000000 CLOSE_STOP_LOSS\n",
- "77 2025-09-10 19:11:00 OPEN SOL-USDT SELL 222.413615 -0.023480 2.858849 -2.858849 OPEN\n",
- "79 2025-09-10 20:00:00 CLOSE SOL-USDT BUY 221.354650 0.002158 0.205766 -0.205766 CLOSE\n",
- "81 2025-09-10 20:37:00 OPEN SOL-USDT BUY 221.760958 0.001724 1.005873 1.005873 OPEN\n",
- "83 2025-09-10 20:45:00 CLOSE SOL-USDT SELL 222.177482 0.000550 0.308519 0.308519 CLOSE\n",
- "85 2025-09-10 20:54:00 OPEN SOL-USDT SELL 222.448781 -0.000924 0.945619 -0.945619 OPEN\n",
- "87 2025-09-10 21:03:00 CLOSE SOL-USDT BUY 222.892964 0.000423 0.313357 0.313357 CLOSE\n",
- "89 2025-09-10 21:12:00 OPEN SOL-USDT BUY 222.772128 0.001592 1.530571 1.530571 OPEN\n",
- "91 2025-09-10 21:17:00 CLOSE SOL-USDT SELL 222.933113 0.000423 0.422399 0.422399 CLOSE\n",
- "93 2025-09-10 22:03:00 OPEN SOL-USDT BUY 223.594840 0.000826 0.804025 0.804025 OPEN\n",
- "95 2025-09-10 22:05:00 CLOSE SOL-USDT SELL 223.662537 0.000333 0.448001 0.448001 CLOSE\n",
- "97 2025-09-10 22:16:00 OPEN SOL-USDT BUY 223.720985 0.000233 0.995969 0.995969 OPEN\n",
- "99 2025-09-10 22:26:00 CLOSE SOL-USDT SELL 223.676085 0.000042 0.429289 0.429289 CLOSE\n"
- ]
- },
- {
- "data": {
- "application/vnd.plotly.v1+json": {
- "config": {
- "plotlyServerURL": "https://plot.ly"
- },
- "data": [
- {
- "line": {
- "color": "green",
- "width": 2
- },
- "name": "Absolute Scaled Dis-equilibrium",
- "opacity": 0.8,
- "type": "scatter",
- "x": [
- "2025-09-10T11:30:00.000000000",
- "2025-09-10T11:31:00.000000000",
- "2025-09-10T11:32:00.000000000",
- "2025-09-10T11:33:00.000000000",
- "2025-09-10T11:34:00.000000000",
- "2025-09-10T11:35:00.000000000",
- "2025-09-10T11:36:00.000000000",
- "2025-09-10T11:37:00.000000000",
- "2025-09-10T11:38:00.000000000",
- "2025-09-10T11:39:00.000000000",
- "2025-09-10T11:40:00.000000000",
- "2025-09-10T11:41:00.000000000",
- "2025-09-10T11:42:00.000000000",
- "2025-09-10T11:43:00.000000000",
- "2025-09-10T11:44:00.000000000",
- "2025-09-10T11:45:00.000000000",
- "2025-09-10T11:46:00.000000000",
- "2025-09-10T11:47:00.000000000",
- "2025-09-10T11:48:00.000000000",
- "2025-09-10T11:49:00.000000000",
- "2025-09-10T11:50:00.000000000",
- "2025-09-10T11:51:00.000000000",
- "2025-09-10T11:52:00.000000000",
- "2025-09-10T11:53:00.000000000",
- "2025-09-10T11:54:00.000000000",
- "2025-09-10T11:55:00.000000000",
- "2025-09-10T11:56:00.000000000",
- "2025-09-10T11:57:00.000000000",
- "2025-09-10T11:58:00.000000000",
- "2025-09-10T11:59:00.000000000",
- "2025-09-10T12:00:00.000000000",
- "2025-09-10T12:01:00.000000000",
- "2025-09-10T12:02:00.000000000",
- "2025-09-10T12:03:00.000000000",
- "2025-09-10T12:04:00.000000000",
- "2025-09-10T12:05:00.000000000",
- "2025-09-10T12:06:00.000000000",
- "2025-09-10T12:07:00.000000000",
- "2025-09-10T12:08:00.000000000",
- "2025-09-10T12:09:00.000000000",
- "2025-09-10T12:10:00.000000000",
- "2025-09-10T12:11:00.000000000",
- "2025-09-10T12:12:00.000000000",
- "2025-09-10T12:13:00.000000000",
- "2025-09-10T12:14:00.000000000",
- "2025-09-10T12:15:00.000000000",
- "2025-09-10T12:16:00.000000000",
- "2025-09-10T12:17:00.000000000",
- "2025-09-10T12:18:00.000000000",
- "2025-09-10T12:19:00.000000000",
- "2025-09-10T12:20:00.000000000",
- "2025-09-10T12:21:00.000000000",
- "2025-09-10T12:22:00.000000000",
- "2025-09-10T12:23:00.000000000",
- "2025-09-10T12:24:00.000000000",
- "2025-09-10T12:25:00.000000000",
- "2025-09-10T12:26:00.000000000",
- "2025-09-10T12:27:00.000000000",
- "2025-09-10T12:28:00.000000000",
- "2025-09-10T12:29:00.000000000",
- "2025-09-10T12:30:00.000000000",
- "2025-09-10T12:31:00.000000000",
- "2025-09-10T12:32:00.000000000",
- "2025-09-10T12:33:00.000000000",
- "2025-09-10T12:34:00.000000000",
- "2025-09-10T12:35:00.000000000",
- "2025-09-10T12:36:00.000000000",
- "2025-09-10T12:37:00.000000000",
- "2025-09-10T12:38:00.000000000",
- "2025-09-10T12:39:00.000000000",
- "2025-09-10T12:40:00.000000000",
- "2025-09-10T12:41:00.000000000",
- "2025-09-10T12:42:00.000000000",
- "2025-09-10T12:43:00.000000000",
- "2025-09-10T12:44:00.000000000",
- "2025-09-10T12:45:00.000000000",
- "2025-09-10T12:46:00.000000000",
- "2025-09-10T12:47:00.000000000",
- "2025-09-10T12:48:00.000000000",
- "2025-09-10T12:49:00.000000000",
- "2025-09-10T12:50:00.000000000",
- "2025-09-10T12:51:00.000000000",
- "2025-09-10T12:52:00.000000000",
- "2025-09-10T12:53:00.000000000",
- "2025-09-10T12:54:00.000000000",
- "2025-09-10T12:55:00.000000000",
- "2025-09-10T12:56:00.000000000",
- "2025-09-10T12:57:00.000000000",
- "2025-09-10T12:59:00.000000000",
- "2025-09-10T13:00:00.000000000",
- "2025-09-10T13:01:00.000000000",
- "2025-09-10T13:02:00.000000000",
- "2025-09-10T13:03:00.000000000",
- "2025-09-10T13:04:00.000000000",
- "2025-09-10T13:05:00.000000000",
- "2025-09-10T13:06:00.000000000",
- "2025-09-10T13:07:00.000000000",
- "2025-09-10T13:08:00.000000000",
- "2025-09-10T13:09:00.000000000",
- "2025-09-10T13:10:00.000000000",
- "2025-09-10T13:11:00.000000000",
- "2025-09-10T13:12:00.000000000",
- "2025-09-10T13:13:00.000000000",
- "2025-09-10T13:14:00.000000000",
- "2025-09-10T13:15:00.000000000",
- "2025-09-10T13:16:00.000000000",
- "2025-09-10T13:17:00.000000000",
- "2025-09-10T13:18:00.000000000",
- "2025-09-10T13:19:00.000000000",
- "2025-09-10T13:20:00.000000000",
- "2025-09-10T13:21:00.000000000",
- "2025-09-10T13:22:00.000000000",
- "2025-09-10T13:23:00.000000000",
- "2025-09-10T13:24:00.000000000",
- "2025-09-10T13:25:00.000000000",
- "2025-09-10T13:26:00.000000000",
- "2025-09-10T13:27:00.000000000",
- "2025-09-10T13:28:00.000000000",
- "2025-09-10T13:29:00.000000000",
- "2025-09-10T13:30:00.000000000",
- "2025-09-10T13:31:00.000000000",
- "2025-09-10T13:32:00.000000000",
- "2025-09-10T13:33:00.000000000",
- "2025-09-10T13:34:00.000000000",
- "2025-09-10T13:35:00.000000000",
- "2025-09-10T13:36:00.000000000",
- "2025-09-10T13:37:00.000000000",
- "2025-09-10T13:38:00.000000000",
- "2025-09-10T13:39:00.000000000",
- "2025-09-10T13:40:00.000000000",
- "2025-09-10T13:41:00.000000000",
- "2025-09-10T13:42:00.000000000",
- "2025-09-10T13:43:00.000000000",
- "2025-09-10T13:44:00.000000000",
- "2025-09-10T13:45:00.000000000",
- "2025-09-10T13:46:00.000000000",
- "2025-09-10T13:47:00.000000000",
- "2025-09-10T13:48:00.000000000",
- "2025-09-10T13:49:00.000000000",
- "2025-09-10T13:50:00.000000000",
- "2025-09-10T13:51:00.000000000",
- "2025-09-10T13:52:00.000000000",
- "2025-09-10T13:53:00.000000000",
- "2025-09-10T13:54:00.000000000",
- "2025-09-10T13:55:00.000000000",
- "2025-09-10T13:56:00.000000000",
- "2025-09-10T13:57:00.000000000",
- "2025-09-10T13:58:00.000000000",
- "2025-09-10T13:59:00.000000000",
- "2025-09-10T14:00:00.000000000",
- "2025-09-10T14:01:00.000000000",
- "2025-09-10T14:02:00.000000000",
- "2025-09-10T14:03:00.000000000",
- "2025-09-10T14:04:00.000000000",
- "2025-09-10T14:05:00.000000000",
- "2025-09-10T14:06:00.000000000",
- "2025-09-10T14:07:00.000000000",
- "2025-09-10T14:08:00.000000000",
- "2025-09-10T14:09:00.000000000",
- "2025-09-10T14:10:00.000000000",
- "2025-09-10T14:11:00.000000000",
- "2025-09-10T14:12:00.000000000",
- "2025-09-10T14:13:00.000000000",
- "2025-09-10T14:14:00.000000000",
- "2025-09-10T14:15:00.000000000",
- "2025-09-10T14:16:00.000000000",
- "2025-09-10T14:17:00.000000000",
- "2025-09-10T14:18:00.000000000",
- "2025-09-10T14:19:00.000000000",
- "2025-09-10T14:20:00.000000000",
- "2025-09-10T14:21:00.000000000",
- "2025-09-10T14:22:00.000000000",
- "2025-09-10T14:23:00.000000000",
- "2025-09-10T14:24:00.000000000",
- "2025-09-10T14:25:00.000000000",
- "2025-09-10T14:26:00.000000000",
- "2025-09-10T14:27:00.000000000",
- "2025-09-10T14:28:00.000000000",
- "2025-09-10T14:29:00.000000000",
- "2025-09-10T14:30:00.000000000",
- "2025-09-10T14:31:00.000000000",
- "2025-09-10T14:32:00.000000000",
- "2025-09-10T14:33:00.000000000",
- "2025-09-10T14:34:00.000000000",
- "2025-09-10T14:35:00.000000000",
- "2025-09-10T14:36:00.000000000",
- "2025-09-10T14:37:00.000000000",
- "2025-09-10T14:38:00.000000000",
- "2025-09-10T14:39:00.000000000",
- "2025-09-10T14:40:00.000000000",
- "2025-09-10T14:41:00.000000000",
- "2025-09-10T14:42:00.000000000",
- "2025-09-10T14:43:00.000000000",
- "2025-09-10T14:44:00.000000000",
- "2025-09-10T14:45:00.000000000",
- "2025-09-10T14:46:00.000000000",
- "2025-09-10T14:47:00.000000000",
- "2025-09-10T14:48:00.000000000",
- "2025-09-10T14:49:00.000000000",
- "2025-09-10T14:50:00.000000000",
- "2025-09-10T14:51:00.000000000",
- "2025-09-10T14:52:00.000000000",
- "2025-09-10T14:53:00.000000000",
- "2025-09-10T14:54:00.000000000",
- "2025-09-10T14:55:00.000000000",
- "2025-09-10T14:56:00.000000000",
- "2025-09-10T14:57:00.000000000",
- "2025-09-10T14:58:00.000000000",
- "2025-09-10T14:59:00.000000000",
- "2025-09-10T15:00:00.000000000",
- "2025-09-10T15:01:00.000000000",
- "2025-09-10T15:02:00.000000000",
- "2025-09-10T15:03:00.000000000",
- "2025-09-10T15:04:00.000000000",
- "2025-09-10T15:05:00.000000000",
- "2025-09-10T15:06:00.000000000",
- "2025-09-10T15:07:00.000000000",
- "2025-09-10T15:08:00.000000000",
- "2025-09-10T15:09:00.000000000",
- "2025-09-10T15:10:00.000000000",
- "2025-09-10T15:11:00.000000000",
- "2025-09-10T15:12:00.000000000",
- "2025-09-10T15:13:00.000000000",
- "2025-09-10T15:14:00.000000000",
- "2025-09-10T15:15:00.000000000",
- "2025-09-10T15:16:00.000000000",
- "2025-09-10T15:17:00.000000000",
- "2025-09-10T15:18:00.000000000",
- "2025-09-10T15:19:00.000000000",
- "2025-09-10T15:20:00.000000000",
- "2025-09-10T15:21:00.000000000",
- "2025-09-10T15:22:00.000000000",
- "2025-09-10T15:23:00.000000000",
- "2025-09-10T15:24:00.000000000",
- "2025-09-10T15:25:00.000000000",
- "2025-09-10T15:26:00.000000000",
- "2025-09-10T15:27:00.000000000",
- "2025-09-10T15:28:00.000000000",
- "2025-09-10T15:29:00.000000000",
- "2025-09-10T15:30:00.000000000",
- "2025-09-10T15:31:00.000000000",
- "2025-09-10T15:32:00.000000000",
- "2025-09-10T15:33:00.000000000",
- "2025-09-10T15:34:00.000000000",
- "2025-09-10T15:35:00.000000000",
- "2025-09-10T15:36:00.000000000",
- "2025-09-10T15:37:00.000000000",
- "2025-09-10T15:38:00.000000000",
- "2025-09-10T15:39:00.000000000",
- "2025-09-10T15:40:00.000000000",
- "2025-09-10T15:41:00.000000000",
- "2025-09-10T15:42:00.000000000",
- "2025-09-10T15:43:00.000000000",
- "2025-09-10T15:44:00.000000000",
- "2025-09-10T15:45:00.000000000",
- "2025-09-10T15:46:00.000000000",
- "2025-09-10T15:47:00.000000000",
- "2025-09-10T15:48:00.000000000",
- "2025-09-10T15:49:00.000000000",
- "2025-09-10T15:50:00.000000000",
- "2025-09-10T15:51:00.000000000",
- "2025-09-10T15:52:00.000000000",
- "2025-09-10T15:53:00.000000000",
- "2025-09-10T15:54:00.000000000",
- "2025-09-10T15:55:00.000000000",
- "2025-09-10T15:56:00.000000000",
- "2025-09-10T15:57:00.000000000",
- "2025-09-10T15:58:00.000000000",
- "2025-09-10T15:59:00.000000000",
- "2025-09-10T16:00:00.000000000",
- "2025-09-10T16:01:00.000000000",
- "2025-09-10T16:02:00.000000000",
- "2025-09-10T16:03:00.000000000",
- "2025-09-10T16:04:00.000000000",
- "2025-09-10T16:05:00.000000000",
- "2025-09-10T16:06:00.000000000",
- "2025-09-10T16:07:00.000000000",
- "2025-09-10T16:08:00.000000000",
- "2025-09-10T16:09:00.000000000",
- "2025-09-10T16:10:00.000000000",
- "2025-09-10T16:11:00.000000000",
- "2025-09-10T16:12:00.000000000",
- "2025-09-10T16:13:00.000000000",
- "2025-09-10T16:14:00.000000000",
- "2025-09-10T16:15:00.000000000",
- "2025-09-10T16:16:00.000000000",
- "2025-09-10T16:17:00.000000000",
- "2025-09-10T16:18:00.000000000",
- "2025-09-10T16:19:00.000000000",
- "2025-09-10T16:20:00.000000000",
- "2025-09-10T16:21:00.000000000",
- "2025-09-10T16:22:00.000000000",
- "2025-09-10T16:23:00.000000000",
- "2025-09-10T16:24:00.000000000",
- "2025-09-10T16:25:00.000000000",
- "2025-09-10T16:26:00.000000000",
- "2025-09-10T16:27:00.000000000",
- "2025-09-10T16:28:00.000000000",
- "2025-09-10T16:29:00.000000000",
- "2025-09-10T16:30:00.000000000",
- "2025-09-10T16:31:00.000000000",
- "2025-09-10T16:32:00.000000000",
- "2025-09-10T16:33:00.000000000",
- "2025-09-10T16:34:00.000000000",
- "2025-09-10T16:35:00.000000000",
- "2025-09-10T16:36:00.000000000",
- "2025-09-10T16:37:00.000000000",
- "2025-09-10T16:38:00.000000000",
- "2025-09-10T16:39:00.000000000",
- "2025-09-10T16:40:00.000000000",
- "2025-09-10T16:41:00.000000000",
- "2025-09-10T16:42:00.000000000",
- "2025-09-10T16:43:00.000000000",
- "2025-09-10T16:44:00.000000000",
- "2025-09-10T16:45:00.000000000",
- "2025-09-10T16:46:00.000000000",
- "2025-09-10T16:47:00.000000000",
- "2025-09-10T16:48:00.000000000",
- "2025-09-10T16:49:00.000000000",
- "2025-09-10T16:50:00.000000000",
- "2025-09-10T16:51:00.000000000",
- "2025-09-10T16:52:00.000000000",
- "2025-09-10T16:53:00.000000000",
- "2025-09-10T16:54:00.000000000",
- "2025-09-10T16:55:00.000000000",
- "2025-09-10T16:56:00.000000000",
- "2025-09-10T16:57:00.000000000",
- "2025-09-10T16:58:00.000000000",
- "2025-09-10T16:59:00.000000000",
- "2025-09-10T17:00:00.000000000",
- "2025-09-10T17:01:00.000000000",
- "2025-09-10T17:02:00.000000000",
- "2025-09-10T17:03:00.000000000",
- "2025-09-10T17:04:00.000000000",
- "2025-09-10T17:05:00.000000000",
- "2025-09-10T17:06:00.000000000",
- "2025-09-10T17:07:00.000000000",
- "2025-09-10T17:08:00.000000000",
- "2025-09-10T17:09:00.000000000",
- "2025-09-10T17:10:00.000000000",
- "2025-09-10T17:11:00.000000000",
- "2025-09-10T17:12:00.000000000",
- "2025-09-10T17:13:00.000000000",
- "2025-09-10T17:14:00.000000000",
- "2025-09-10T17:15:00.000000000",
- "2025-09-10T17:16:00.000000000",
- "2025-09-10T17:17:00.000000000",
- "2025-09-10T17:18:00.000000000",
- "2025-09-10T17:19:00.000000000",
- "2025-09-10T17:20:00.000000000",
- "2025-09-10T17:21:00.000000000",
- "2025-09-10T17:22:00.000000000",
- "2025-09-10T17:23:00.000000000",
- "2025-09-10T17:24:00.000000000",
- "2025-09-10T17:25:00.000000000",
- "2025-09-10T17:26:00.000000000",
- "2025-09-10T17:27:00.000000000",
- "2025-09-10T17:28:00.000000000",
- "2025-09-10T17:29:00.000000000",
- "2025-09-10T17:30:00.000000000",
- "2025-09-10T17:31:00.000000000",
- "2025-09-10T17:32:00.000000000",
- "2025-09-10T17:33:00.000000000",
- "2025-09-10T17:34:00.000000000",
- "2025-09-10T17:35:00.000000000",
- "2025-09-10T17:36:00.000000000",
- "2025-09-10T17:37:00.000000000",
- "2025-09-10T17:38:00.000000000",
- "2025-09-10T17:39:00.000000000",
- "2025-09-10T17:40:00.000000000",
- "2025-09-10T17:41:00.000000000",
- "2025-09-10T17:42:00.000000000",
- "2025-09-10T17:43:00.000000000",
- "2025-09-10T17:44:00.000000000",
- "2025-09-10T17:45:00.000000000",
- "2025-09-10T17:46:00.000000000",
- "2025-09-10T17:47:00.000000000",
- "2025-09-10T17:48:00.000000000",
- "2025-09-10T17:49:00.000000000",
- "2025-09-10T17:50:00.000000000",
- "2025-09-10T17:51:00.000000000",
- "2025-09-10T17:52:00.000000000",
- "2025-09-10T17:53:00.000000000",
- "2025-09-10T17:54:00.000000000",
- "2025-09-10T17:55:00.000000000",
- "2025-09-10T17:56:00.000000000",
- "2025-09-10T17:57:00.000000000",
- "2025-09-10T17:58:00.000000000",
- "2025-09-10T17:59:00.000000000",
- "2025-09-10T18:00:00.000000000",
- "2025-09-10T18:01:00.000000000",
- "2025-09-10T18:02:00.000000000",
- "2025-09-10T18:03:00.000000000",
- "2025-09-10T18:04:00.000000000",
- "2025-09-10T18:05:00.000000000",
- "2025-09-10T18:06:00.000000000",
- "2025-09-10T18:07:00.000000000",
- "2025-09-10T18:08:00.000000000",
- "2025-09-10T18:09:00.000000000",
- "2025-09-10T18:10:00.000000000",
- "2025-09-10T18:11:00.000000000",
- "2025-09-10T18:12:00.000000000",
- "2025-09-10T18:13:00.000000000",
- "2025-09-10T18:14:00.000000000",
- "2025-09-10T18:15:00.000000000",
- "2025-09-10T18:16:00.000000000",
- "2025-09-10T18:17:00.000000000",
- "2025-09-10T18:18:00.000000000",
- "2025-09-10T18:19:00.000000000",
- "2025-09-10T18:20:00.000000000",
- "2025-09-10T18:21:00.000000000",
- "2025-09-10T18:22:00.000000000",
- "2025-09-10T18:23:00.000000000",
- "2025-09-10T18:24:00.000000000",
- "2025-09-10T18:25:00.000000000",
- "2025-09-10T18:26:00.000000000",
- "2025-09-10T18:27:00.000000000",
- "2025-09-10T18:28:00.000000000",
- "2025-09-10T18:29:00.000000000",
- "2025-09-10T18:30:00.000000000",
- "2025-09-10T18:31:00.000000000",
- "2025-09-10T18:32:00.000000000",
- "2025-09-10T18:33:00.000000000",
- "2025-09-10T18:34:00.000000000",
- "2025-09-10T18:35:00.000000000",
- "2025-09-10T18:36:00.000000000",
- "2025-09-10T18:37:00.000000000",
- "2025-09-10T18:38:00.000000000",
- "2025-09-10T18:39:00.000000000",
- "2025-09-10T18:40:00.000000000",
- "2025-09-10T18:41:00.000000000",
- "2025-09-10T18:42:00.000000000",
- "2025-09-10T18:43:00.000000000",
- "2025-09-10T18:44:00.000000000",
- "2025-09-10T18:45:00.000000000",
- "2025-09-10T18:46:00.000000000",
- "2025-09-10T18:47:00.000000000",
- "2025-09-10T18:48:00.000000000",
- "2025-09-10T18:49:00.000000000",
- "2025-09-10T18:50:00.000000000",
- "2025-09-10T18:51:00.000000000",
- "2025-09-10T18:52:00.000000000",
- "2025-09-10T18:53:00.000000000",
- "2025-09-10T18:54:00.000000000",
- "2025-09-10T18:55:00.000000000",
- "2025-09-10T18:56:00.000000000",
- "2025-09-10T18:57:00.000000000",
- "2025-09-10T18:58:00.000000000",
- "2025-09-10T18:59:00.000000000",
- "2025-09-10T19:00:00.000000000",
- "2025-09-10T19:01:00.000000000",
- "2025-09-10T19:02:00.000000000",
- "2025-09-10T19:03:00.000000000",
- "2025-09-10T19:04:00.000000000",
- "2025-09-10T19:05:00.000000000",
- "2025-09-10T19:06:00.000000000",
- "2025-09-10T19:07:00.000000000",
- "2025-09-10T19:08:00.000000000",
- "2025-09-10T19:09:00.000000000",
- "2025-09-10T19:10:00.000000000",
- "2025-09-10T19:11:00.000000000",
- "2025-09-10T19:12:00.000000000",
- "2025-09-10T19:13:00.000000000",
- "2025-09-10T19:14:00.000000000",
- "2025-09-10T19:15:00.000000000",
- "2025-09-10T19:16:00.000000000",
- "2025-09-10T19:17:00.000000000",
- "2025-09-10T19:18:00.000000000",
- "2025-09-10T19:19:00.000000000",
- "2025-09-10T19:20:00.000000000",
- "2025-09-10T19:21:00.000000000",
- "2025-09-10T19:22:00.000000000",
- "2025-09-10T19:23:00.000000000",
- "2025-09-10T19:24:00.000000000",
- "2025-09-10T19:25:00.000000000",
- "2025-09-10T19:26:00.000000000",
- "2025-09-10T19:27:00.000000000",
- "2025-09-10T19:28:00.000000000",
- "2025-09-10T19:29:00.000000000",
- "2025-09-10T19:30:00.000000000",
- "2025-09-10T19:31:00.000000000",
- "2025-09-10T19:32:00.000000000",
- "2025-09-10T19:33:00.000000000",
- "2025-09-10T19:34:00.000000000",
- "2025-09-10T19:35:00.000000000",
- "2025-09-10T19:36:00.000000000",
- "2025-09-10T19:37:00.000000000",
- "2025-09-10T19:38:00.000000000",
- "2025-09-10T19:39:00.000000000",
- "2025-09-10T19:40:00.000000000",
- "2025-09-10T19:41:00.000000000",
- "2025-09-10T19:42:00.000000000",
- "2025-09-10T19:43:00.000000000",
- "2025-09-10T19:44:00.000000000",
- "2025-09-10T19:45:00.000000000",
- "2025-09-10T19:46:00.000000000",
- "2025-09-10T19:47:00.000000000",
- "2025-09-10T19:48:00.000000000",
- "2025-09-10T19:49:00.000000000",
- "2025-09-10T19:50:00.000000000",
- "2025-09-10T19:51:00.000000000",
- "2025-09-10T19:52:00.000000000",
- "2025-09-10T19:53:00.000000000",
- "2025-09-10T19:54:00.000000000",
- "2025-09-10T19:55:00.000000000",
- "2025-09-10T19:56:00.000000000",
- "2025-09-10T19:57:00.000000000",
- "2025-09-10T19:58:00.000000000",
- "2025-09-10T19:59:00.000000000",
- "2025-09-10T20:00:00.000000000",
- "2025-09-10T20:01:00.000000000",
- "2025-09-10T20:02:00.000000000",
- "2025-09-10T20:03:00.000000000",
- "2025-09-10T20:04:00.000000000",
- "2025-09-10T20:05:00.000000000",
- "2025-09-10T20:06:00.000000000",
- "2025-09-10T20:07:00.000000000",
- "2025-09-10T20:08:00.000000000",
- "2025-09-10T20:09:00.000000000",
- "2025-09-10T20:10:00.000000000",
- "2025-09-10T20:11:00.000000000",
- "2025-09-10T20:12:00.000000000",
- "2025-09-10T20:13:00.000000000",
- "2025-09-10T20:14:00.000000000",
- "2025-09-10T20:15:00.000000000",
- "2025-09-10T20:16:00.000000000",
- "2025-09-10T20:17:00.000000000",
- "2025-09-10T20:18:00.000000000",
- "2025-09-10T20:19:00.000000000",
- "2025-09-10T20:20:00.000000000",
- "2025-09-10T20:21:00.000000000",
- "2025-09-10T20:22:00.000000000",
- "2025-09-10T20:23:00.000000000",
- "2025-09-10T20:24:00.000000000",
- "2025-09-10T20:25:00.000000000",
- "2025-09-10T20:26:00.000000000",
- "2025-09-10T20:27:00.000000000",
- "2025-09-10T20:28:00.000000000",
- "2025-09-10T20:29:00.000000000",
- "2025-09-10T20:30:00.000000000",
- "2025-09-10T20:31:00.000000000",
- "2025-09-10T20:32:00.000000000",
- "2025-09-10T20:33:00.000000000",
- "2025-09-10T20:34:00.000000000",
- "2025-09-10T20:35:00.000000000",
- "2025-09-10T20:36:00.000000000",
- "2025-09-10T20:37:00.000000000",
- "2025-09-10T20:38:00.000000000",
- "2025-09-10T20:39:00.000000000",
- "2025-09-10T20:40:00.000000000",
- "2025-09-10T20:41:00.000000000",
- "2025-09-10T20:42:00.000000000",
- "2025-09-10T20:43:00.000000000",
- "2025-09-10T20:44:00.000000000",
- "2025-09-10T20:45:00.000000000",
- "2025-09-10T20:46:00.000000000",
- "2025-09-10T20:47:00.000000000",
- "2025-09-10T20:48:00.000000000",
- "2025-09-10T20:49:00.000000000",
- "2025-09-10T20:50:00.000000000",
- "2025-09-10T20:51:00.000000000",
- "2025-09-10T20:52:00.000000000",
- "2025-09-10T20:53:00.000000000",
- "2025-09-10T20:54:00.000000000",
- "2025-09-10T20:55:00.000000000",
- "2025-09-10T20:56:00.000000000",
- "2025-09-10T20:57:00.000000000",
- "2025-09-10T20:58:00.000000000",
- "2025-09-10T20:59:00.000000000",
- "2025-09-10T21:00:00.000000000",
- "2025-09-10T21:01:00.000000000",
- "2025-09-10T21:02:00.000000000",
- "2025-09-10T21:03:00.000000000",
- "2025-09-10T21:04:00.000000000",
- "2025-09-10T21:05:00.000000000",
- "2025-09-10T21:06:00.000000000",
- "2025-09-10T21:07:00.000000000",
- "2025-09-10T21:08:00.000000000",
- "2025-09-10T21:09:00.000000000",
- "2025-09-10T21:10:00.000000000",
- "2025-09-10T21:11:00.000000000",
- "2025-09-10T21:12:00.000000000",
- "2025-09-10T21:13:00.000000000",
- "2025-09-10T21:14:00.000000000",
- "2025-09-10T21:15:00.000000000",
- "2025-09-10T21:16:00.000000000",
- "2025-09-10T21:17:00.000000000",
- "2025-09-10T21:18:00.000000000",
- "2025-09-10T21:19:00.000000000",
- "2025-09-10T21:20:00.000000000",
- "2025-09-10T21:21:00.000000000",
- "2025-09-10T21:22:00.000000000",
- "2025-09-10T21:23:00.000000000",
- "2025-09-10T21:24:00.000000000",
- "2025-09-10T21:25:00.000000000",
- "2025-09-10T21:26:00.000000000",
- "2025-09-10T21:27:00.000000000",
- "2025-09-10T21:28:00.000000000",
- "2025-09-10T21:29:00.000000000",
- "2025-09-10T21:30:00.000000000",
- "2025-09-10T21:31:00.000000000",
- "2025-09-10T21:32:00.000000000",
- "2025-09-10T21:33:00.000000000",
- "2025-09-10T21:34:00.000000000",
- "2025-09-10T21:35:00.000000000",
- "2025-09-10T21:36:00.000000000",
- "2025-09-10T21:37:00.000000000",
- "2025-09-10T21:38:00.000000000",
- "2025-09-10T21:39:00.000000000",
- "2025-09-10T21:40:00.000000000",
- "2025-09-10T21:41:00.000000000",
- "2025-09-10T21:42:00.000000000",
- "2025-09-10T21:43:00.000000000",
- "2025-09-10T21:44:00.000000000",
- "2025-09-10T21:45:00.000000000",
- "2025-09-10T21:46:00.000000000",
- "2025-09-10T21:47:00.000000000",
- "2025-09-10T21:48:00.000000000",
- "2025-09-10T21:49:00.000000000",
- "2025-09-10T21:50:00.000000000",
- "2025-09-10T21:51:00.000000000",
- "2025-09-10T21:52:00.000000000",
- "2025-09-10T21:53:00.000000000",
- "2025-09-10T21:54:00.000000000",
- "2025-09-10T21:55:00.000000000",
- "2025-09-10T21:56:00.000000000",
- "2025-09-10T21:57:00.000000000",
- "2025-09-10T21:58:00.000000000",
- "2025-09-10T21:59:00.000000000",
- "2025-09-10T22:00:00.000000000",
- "2025-09-10T22:01:00.000000000",
- "2025-09-10T22:02:00.000000000",
- "2025-09-10T22:03:00.000000000",
- "2025-09-10T22:04:00.000000000",
- "2025-09-10T22:05:00.000000000",
- "2025-09-10T22:06:00.000000000",
- "2025-09-10T22:07:00.000000000",
- "2025-09-10T22:08:00.000000000",
- "2025-09-10T22:09:00.000000000",
- "2025-09-10T22:10:00.000000000",
- "2025-09-10T22:11:00.000000000",
- "2025-09-10T22:12:00.000000000",
- "2025-09-10T22:13:00.000000000",
- "2025-09-10T22:14:00.000000000",
- "2025-09-10T22:15:00.000000000",
- "2025-09-10T22:16:00.000000000",
- "2025-09-10T22:17:00.000000000",
- "2025-09-10T22:18:00.000000000",
- "2025-09-10T22:19:00.000000000",
- "2025-09-10T22:20:00.000000000",
- "2025-09-10T22:21:00.000000000",
- "2025-09-10T22:22:00.000000000",
- "2025-09-10T22:23:00.000000000",
- "2025-09-10T22:24:00.000000000",
- "2025-09-10T22:25:00.000000000",
- "2025-09-10T22:26:00.000000000",
- "2025-09-10T22:27:00.000000000",
- "2025-09-10T22:28:00.000000000",
- "2025-09-10T22:29:00.000000000"
- ],
- "xaxis": "x",
- "y": {
- "bdata": "AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAA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",
- "dtype": "f8"
- },
- "yaxis": "y"
- },
- {
- "line": {
- "color": "darkmagenta",
- "width": 2
- },
- "name": "Scaled Dis-equilibrium",
- "opacity": 0.8,
- "type": "scatter",
- "x": [
- "2025-09-10T11:30:00.000000000",
- "2025-09-10T11:31:00.000000000",
- "2025-09-10T11:32:00.000000000",
- "2025-09-10T11:33:00.000000000",
- "2025-09-10T11:34:00.000000000",
- "2025-09-10T11:35:00.000000000",
- "2025-09-10T11:36:00.000000000",
- "2025-09-10T11:37:00.000000000",
- "2025-09-10T11:38:00.000000000",
- "2025-09-10T11:39:00.000000000",
- "2025-09-10T11:40:00.000000000",
- "2025-09-10T11:41:00.000000000",
- "2025-09-10T11:42:00.000000000",
- "2025-09-10T11:43:00.000000000",
- "2025-09-10T11:44:00.000000000",
- "2025-09-10T11:45:00.000000000",
- "2025-09-10T11:46:00.000000000",
- "2025-09-10T11:47:00.000000000",
- "2025-09-10T11:48:00.000000000",
- "2025-09-10T11:49:00.000000000",
- "2025-09-10T11:50:00.000000000",
- "2025-09-10T11:51:00.000000000",
- "2025-09-10T11:52:00.000000000",
- "2025-09-10T11:53:00.000000000",
- "2025-09-10T11:54:00.000000000",
- "2025-09-10T11:55:00.000000000",
- "2025-09-10T11:56:00.000000000",
- "2025-09-10T11:57:00.000000000",
- "2025-09-10T11:58:00.000000000",
- "2025-09-10T11:59:00.000000000",
- "2025-09-10T12:00:00.000000000",
- "2025-09-10T12:01:00.000000000",
- "2025-09-10T12:02:00.000000000",
- "2025-09-10T12:03:00.000000000",
- "2025-09-10T12:04:00.000000000",
- "2025-09-10T12:05:00.000000000",
- "2025-09-10T12:06:00.000000000",
- "2025-09-10T12:07:00.000000000",
- "2025-09-10T12:08:00.000000000",
- "2025-09-10T12:09:00.000000000",
- "2025-09-10T12:10:00.000000000",
- "2025-09-10T12:11:00.000000000",
- "2025-09-10T12:12:00.000000000",
- "2025-09-10T12:13:00.000000000",
- "2025-09-10T12:14:00.000000000",
- "2025-09-10T12:15:00.000000000",
- "2025-09-10T12:16:00.000000000",
- "2025-09-10T12:17:00.000000000",
- "2025-09-10T12:18:00.000000000",
- "2025-09-10T12:19:00.000000000",
- "2025-09-10T12:20:00.000000000",
- "2025-09-10T12:21:00.000000000",
- "2025-09-10T12:22:00.000000000",
- "2025-09-10T12:23:00.000000000",
- "2025-09-10T12:24:00.000000000",
- "2025-09-10T12:25:00.000000000",
- "2025-09-10T12:26:00.000000000",
- "2025-09-10T12:27:00.000000000",
- "2025-09-10T12:28:00.000000000",
- "2025-09-10T12:29:00.000000000",
- "2025-09-10T12:30:00.000000000",
- "2025-09-10T12:31:00.000000000",
- "2025-09-10T12:32:00.000000000",
- "2025-09-10T12:33:00.000000000",
- "2025-09-10T12:34:00.000000000",
- "2025-09-10T12:35:00.000000000",
- "2025-09-10T12:36:00.000000000",
- "2025-09-10T12:37:00.000000000",
- "2025-09-10T12:38:00.000000000",
- "2025-09-10T12:39:00.000000000",
- "2025-09-10T12:40:00.000000000",
- "2025-09-10T12:41:00.000000000",
- "2025-09-10T12:42:00.000000000",
- "2025-09-10T12:43:00.000000000",
- "2025-09-10T12:44:00.000000000",
- "2025-09-10T12:45:00.000000000",
- "2025-09-10T12:46:00.000000000",
- "2025-09-10T12:47:00.000000000",
- "2025-09-10T12:48:00.000000000",
- "2025-09-10T12:49:00.000000000",
- "2025-09-10T12:50:00.000000000",
- "2025-09-10T12:51:00.000000000",
- "2025-09-10T12:52:00.000000000",
- "2025-09-10T12:53:00.000000000",
- "2025-09-10T12:54:00.000000000",
- "2025-09-10T12:55:00.000000000",
- "2025-09-10T12:56:00.000000000",
- "2025-09-10T12:57:00.000000000",
- "2025-09-10T12:59:00.000000000",
- "2025-09-10T13:00:00.000000000",
- "2025-09-10T13:01:00.000000000",
- "2025-09-10T13:02:00.000000000",
- "2025-09-10T13:03:00.000000000",
- "2025-09-10T13:04:00.000000000",
- "2025-09-10T13:05:00.000000000",
- "2025-09-10T13:06:00.000000000",
- "2025-09-10T13:07:00.000000000",
- "2025-09-10T13:08:00.000000000",
- "2025-09-10T13:09:00.000000000",
- "2025-09-10T13:10:00.000000000",
- "2025-09-10T13:11:00.000000000",
- "2025-09-10T13:12:00.000000000",
- "2025-09-10T13:13:00.000000000",
- "2025-09-10T13:14:00.000000000",
- "2025-09-10T13:15:00.000000000",
- "2025-09-10T13:16:00.000000000",
- "2025-09-10T13:17:00.000000000",
- "2025-09-10T13:18:00.000000000",
- "2025-09-10T13:19:00.000000000",
- "2025-09-10T13:20:00.000000000",
- "2025-09-10T13:21:00.000000000",
- "2025-09-10T13:22:00.000000000",
- "2025-09-10T13:23:00.000000000",
- "2025-09-10T13:24:00.000000000",
- "2025-09-10T13:25:00.000000000",
- "2025-09-10T13:26:00.000000000",
- "2025-09-10T13:27:00.000000000",
- "2025-09-10T13:28:00.000000000",
- "2025-09-10T13:29:00.000000000",
- "2025-09-10T13:30:00.000000000",
- "2025-09-10T13:31:00.000000000",
- "2025-09-10T13:32:00.000000000",
- "2025-09-10T13:33:00.000000000",
- "2025-09-10T13:34:00.000000000",
- "2025-09-10T13:35:00.000000000",
- "2025-09-10T13:36:00.000000000",
- "2025-09-10T13:37:00.000000000",
- "2025-09-10T13:38:00.000000000",
- "2025-09-10T13:39:00.000000000",
- "2025-09-10T13:40:00.000000000",
- "2025-09-10T13:41:00.000000000",
- "2025-09-10T13:42:00.000000000",
- "2025-09-10T13:43:00.000000000",
- "2025-09-10T13:44:00.000000000",
- "2025-09-10T13:45:00.000000000",
- "2025-09-10T13:46:00.000000000",
- "2025-09-10T13:47:00.000000000",
- "2025-09-10T13:48:00.000000000",
- "2025-09-10T13:49:00.000000000",
- "2025-09-10T13:50:00.000000000",
- "2025-09-10T13:51:00.000000000",
- "2025-09-10T13:52:00.000000000",
- "2025-09-10T13:53:00.000000000",
- "2025-09-10T13:54:00.000000000",
- "2025-09-10T13:55:00.000000000",
- "2025-09-10T13:56:00.000000000",
- "2025-09-10T13:57:00.000000000",
- "2025-09-10T13:58:00.000000000",
- "2025-09-10T13:59:00.000000000",
- "2025-09-10T14:00:00.000000000",
- "2025-09-10T14:01:00.000000000",
- "2025-09-10T14:02:00.000000000",
- "2025-09-10T14:03:00.000000000",
- "2025-09-10T14:04:00.000000000",
- "2025-09-10T14:05:00.000000000",
- "2025-09-10T14:06:00.000000000",
- "2025-09-10T14:07:00.000000000",
- "2025-09-10T14:08:00.000000000",
- "2025-09-10T14:09:00.000000000",
- "2025-09-10T14:10:00.000000000",
- "2025-09-10T14:11:00.000000000",
- "2025-09-10T14:12:00.000000000",
- "2025-09-10T14:13:00.000000000",
- "2025-09-10T14:14:00.000000000",
- "2025-09-10T14:15:00.000000000",
- "2025-09-10T14:16:00.000000000",
- "2025-09-10T14:17:00.000000000",
- "2025-09-10T14:18:00.000000000",
- "2025-09-10T14:19:00.000000000",
- "2025-09-10T14:20:00.000000000",
- "2025-09-10T14:21:00.000000000",
- "2025-09-10T14:22:00.000000000",
- "2025-09-10T14:23:00.000000000",
- "2025-09-10T14:24:00.000000000",
- "2025-09-10T14:25:00.000000000",
- "2025-09-10T14:26:00.000000000",
- "2025-09-10T14:27:00.000000000",
- "2025-09-10T14:28:00.000000000",
- "2025-09-10T14:29:00.000000000",
- "2025-09-10T14:30:00.000000000",
- "2025-09-10T14:31:00.000000000",
- "2025-09-10T14:32:00.000000000",
- "2025-09-10T14:33:00.000000000",
- "2025-09-10T14:34:00.000000000",
- "2025-09-10T14:35:00.000000000",
- "2025-09-10T14:36:00.000000000",
- "2025-09-10T14:37:00.000000000",
- "2025-09-10T14:38:00.000000000",
- "2025-09-10T14:39:00.000000000",
- "2025-09-10T14:40:00.000000000",
- "2025-09-10T14:41:00.000000000",
- "2025-09-10T14:42:00.000000000",
- "2025-09-10T14:43:00.000000000",
- "2025-09-10T14:44:00.000000000",
- "2025-09-10T14:45:00.000000000",
- "2025-09-10T14:46:00.000000000",
- "2025-09-10T14:47:00.000000000",
- "2025-09-10T14:48:00.000000000",
- "2025-09-10T14:49:00.000000000",
- "2025-09-10T14:50:00.000000000",
- "2025-09-10T14:51:00.000000000",
- "2025-09-10T14:52:00.000000000",
- "2025-09-10T14:53:00.000000000",
- "2025-09-10T14:54:00.000000000",
- "2025-09-10T14:55:00.000000000",
- "2025-09-10T14:56:00.000000000",
- "2025-09-10T14:57:00.000000000",
- "2025-09-10T14:58:00.000000000",
- "2025-09-10T14:59:00.000000000",
- "2025-09-10T15:00:00.000000000",
- "2025-09-10T15:01:00.000000000",
- "2025-09-10T15:02:00.000000000",
- "2025-09-10T15:03:00.000000000",
- "2025-09-10T15:04:00.000000000",
- "2025-09-10T15:05:00.000000000",
- "2025-09-10T15:06:00.000000000",
- "2025-09-10T15:07:00.000000000",
- "2025-09-10T15:08:00.000000000",
- "2025-09-10T15:09:00.000000000",
- "2025-09-10T15:10:00.000000000",
- "2025-09-10T15:11:00.000000000",
- "2025-09-10T15:12:00.000000000",
- "2025-09-10T15:13:00.000000000",
- "2025-09-10T15:14:00.000000000",
- "2025-09-10T15:15:00.000000000",
- "2025-09-10T15:16:00.000000000",
- "2025-09-10T15:17:00.000000000",
- "2025-09-10T15:18:00.000000000",
- "2025-09-10T15:19:00.000000000",
- "2025-09-10T15:20:00.000000000",
- "2025-09-10T15:21:00.000000000",
- "2025-09-10T15:22:00.000000000",
- "2025-09-10T15:23:00.000000000",
- "2025-09-10T15:24:00.000000000",
- "2025-09-10T15:25:00.000000000",
- "2025-09-10T15:26:00.000000000",
- "2025-09-10T15:27:00.000000000",
- "2025-09-10T15:28:00.000000000",
- "2025-09-10T15:29:00.000000000",
- "2025-09-10T15:30:00.000000000",
- "2025-09-10T15:31:00.000000000",
- "2025-09-10T15:32:00.000000000",
- "2025-09-10T15:33:00.000000000",
- "2025-09-10T15:34:00.000000000",
- "2025-09-10T15:35:00.000000000",
- "2025-09-10T15:36:00.000000000",
- "2025-09-10T15:37:00.000000000",
- "2025-09-10T15:38:00.000000000",
- "2025-09-10T15:39:00.000000000",
- "2025-09-10T15:40:00.000000000",
- "2025-09-10T15:41:00.000000000",
- "2025-09-10T15:42:00.000000000",
- "2025-09-10T15:43:00.000000000",
- "2025-09-10T15:44:00.000000000",
- "2025-09-10T15:45:00.000000000",
- "2025-09-10T15:46:00.000000000",
- "2025-09-10T15:47:00.000000000",
- "2025-09-10T15:48:00.000000000",
- "2025-09-10T15:49:00.000000000",
- "2025-09-10T15:50:00.000000000",
- "2025-09-10T15:51:00.000000000",
- "2025-09-10T15:52:00.000000000",
- "2025-09-10T15:53:00.000000000",
- "2025-09-10T15:54:00.000000000",
- "2025-09-10T15:55:00.000000000",
- "2025-09-10T15:56:00.000000000",
- "2025-09-10T15:57:00.000000000",
- "2025-09-10T15:58:00.000000000",
- "2025-09-10T15:59:00.000000000",
- "2025-09-10T16:00:00.000000000",
- "2025-09-10T16:01:00.000000000",
- "2025-09-10T16:02:00.000000000",
- "2025-09-10T16:03:00.000000000",
- "2025-09-10T16:04:00.000000000",
- "2025-09-10T16:05:00.000000000",
- "2025-09-10T16:06:00.000000000",
- "2025-09-10T16:07:00.000000000",
- "2025-09-10T16:08:00.000000000",
- "2025-09-10T16:09:00.000000000",
- "2025-09-10T16:10:00.000000000",
- "2025-09-10T16:11:00.000000000",
- "2025-09-10T16:12:00.000000000",
- "2025-09-10T16:13:00.000000000",
- "2025-09-10T16:14:00.000000000",
- "2025-09-10T16:15:00.000000000",
- "2025-09-10T16:16:00.000000000",
- "2025-09-10T16:17:00.000000000",
- "2025-09-10T16:18:00.000000000",
- "2025-09-10T16:19:00.000000000",
- "2025-09-10T16:20:00.000000000",
- "2025-09-10T16:21:00.000000000",
- "2025-09-10T16:22:00.000000000",
- "2025-09-10T16:23:00.000000000",
- "2025-09-10T16:24:00.000000000",
- "2025-09-10T16:25:00.000000000",
- "2025-09-10T16:26:00.000000000",
- "2025-09-10T16:27:00.000000000",
- "2025-09-10T16:28:00.000000000",
- "2025-09-10T16:29:00.000000000",
- "2025-09-10T16:30:00.000000000",
- "2025-09-10T16:31:00.000000000",
- "2025-09-10T16:32:00.000000000",
- "2025-09-10T16:33:00.000000000",
- "2025-09-10T16:34:00.000000000",
- "2025-09-10T16:35:00.000000000",
- "2025-09-10T16:36:00.000000000",
- "2025-09-10T16:37:00.000000000",
- "2025-09-10T16:38:00.000000000",
- "2025-09-10T16:39:00.000000000",
- "2025-09-10T16:40:00.000000000",
- "2025-09-10T16:41:00.000000000",
- "2025-09-10T16:42:00.000000000",
- "2025-09-10T16:43:00.000000000",
- "2025-09-10T16:44:00.000000000",
- "2025-09-10T16:45:00.000000000",
- "2025-09-10T16:46:00.000000000",
- "2025-09-10T16:47:00.000000000",
- "2025-09-10T16:48:00.000000000",
- "2025-09-10T16:49:00.000000000",
- "2025-09-10T16:50:00.000000000",
- "2025-09-10T16:51:00.000000000",
- "2025-09-10T16:52:00.000000000",
- "2025-09-10T16:53:00.000000000",
- "2025-09-10T16:54:00.000000000",
- "2025-09-10T16:55:00.000000000",
- "2025-09-10T16:56:00.000000000",
- "2025-09-10T16:57:00.000000000",
- "2025-09-10T16:58:00.000000000",
- "2025-09-10T16:59:00.000000000",
- "2025-09-10T17:00:00.000000000",
- "2025-09-10T17:01:00.000000000",
- "2025-09-10T17:02:00.000000000",
- "2025-09-10T17:03:00.000000000",
- "2025-09-10T17:04:00.000000000",
- "2025-09-10T17:05:00.000000000",
- "2025-09-10T17:06:00.000000000",
- "2025-09-10T17:07:00.000000000",
- "2025-09-10T17:08:00.000000000",
- "2025-09-10T17:09:00.000000000",
- "2025-09-10T17:10:00.000000000",
- "2025-09-10T17:11:00.000000000",
- "2025-09-10T17:12:00.000000000",
- "2025-09-10T17:13:00.000000000",
- "2025-09-10T17:14:00.000000000",
- "2025-09-10T17:15:00.000000000",
- "2025-09-10T17:16:00.000000000",
- "2025-09-10T17:17:00.000000000",
- "2025-09-10T17:18:00.000000000",
- "2025-09-10T17:19:00.000000000",
- "2025-09-10T17:20:00.000000000",
- "2025-09-10T17:21:00.000000000",
- "2025-09-10T17:22:00.000000000",
- "2025-09-10T17:23:00.000000000",
- "2025-09-10T17:24:00.000000000",
- "2025-09-10T17:25:00.000000000",
- "2025-09-10T17:26:00.000000000",
- "2025-09-10T17:27:00.000000000",
- "2025-09-10T17:28:00.000000000",
- "2025-09-10T17:29:00.000000000",
- "2025-09-10T17:30:00.000000000",
- "2025-09-10T17:31:00.000000000",
- "2025-09-10T17:32:00.000000000",
- "2025-09-10T17:33:00.000000000",
- "2025-09-10T17:34:00.000000000",
- "2025-09-10T17:35:00.000000000",
- "2025-09-10T17:36:00.000000000",
- "2025-09-10T17:37:00.000000000",
- "2025-09-10T17:38:00.000000000",
- "2025-09-10T17:39:00.000000000",
- "2025-09-10T17:40:00.000000000",
- "2025-09-10T17:41:00.000000000",
- "2025-09-10T17:42:00.000000000",
- "2025-09-10T17:43:00.000000000",
- "2025-09-10T17:44:00.000000000",
- "2025-09-10T17:45:00.000000000",
- "2025-09-10T17:46:00.000000000",
- "2025-09-10T17:47:00.000000000",
- "2025-09-10T17:48:00.000000000",
- "2025-09-10T17:49:00.000000000",
- "2025-09-10T17:50:00.000000000",
- "2025-09-10T17:51:00.000000000",
- "2025-09-10T17:52:00.000000000",
- "2025-09-10T17:53:00.000000000",
- "2025-09-10T17:54:00.000000000",
- "2025-09-10T17:55:00.000000000",
- "2025-09-10T17:56:00.000000000",
- "2025-09-10T17:57:00.000000000",
- "2025-09-10T17:58:00.000000000",
- "2025-09-10T17:59:00.000000000",
- "2025-09-10T18:00:00.000000000",
- "2025-09-10T18:01:00.000000000",
- "2025-09-10T18:02:00.000000000",
- "2025-09-10T18:03:00.000000000",
- "2025-09-10T18:04:00.000000000",
- "2025-09-10T18:05:00.000000000",
- "2025-09-10T18:06:00.000000000",
- "2025-09-10T18:07:00.000000000",
- "2025-09-10T18:08:00.000000000",
- "2025-09-10T18:09:00.000000000",
- "2025-09-10T18:10:00.000000000",
- "2025-09-10T18:11:00.000000000",
- "2025-09-10T18:12:00.000000000",
- "2025-09-10T18:13:00.000000000",
- "2025-09-10T18:14:00.000000000",
- "2025-09-10T18:15:00.000000000",
- "2025-09-10T18:16:00.000000000",
- "2025-09-10T18:17:00.000000000",
- "2025-09-10T18:18:00.000000000",
- "2025-09-10T18:19:00.000000000",
- "2025-09-10T18:20:00.000000000",
- "2025-09-10T18:21:00.000000000",
- "2025-09-10T18:22:00.000000000",
- "2025-09-10T18:23:00.000000000",
- "2025-09-10T18:24:00.000000000",
- "2025-09-10T18:25:00.000000000",
- "2025-09-10T18:26:00.000000000",
- "2025-09-10T18:27:00.000000000",
- "2025-09-10T18:28:00.000000000",
- "2025-09-10T18:29:00.000000000",
- "2025-09-10T18:30:00.000000000",
- "2025-09-10T18:31:00.000000000",
- "2025-09-10T18:32:00.000000000",
- "2025-09-10T18:33:00.000000000",
- "2025-09-10T18:34:00.000000000",
- "2025-09-10T18:35:00.000000000",
- "2025-09-10T18:36:00.000000000",
- "2025-09-10T18:37:00.000000000",
- "2025-09-10T18:38:00.000000000",
- "2025-09-10T18:39:00.000000000",
- "2025-09-10T18:40:00.000000000",
- "2025-09-10T18:41:00.000000000",
- "2025-09-10T18:42:00.000000000",
- "2025-09-10T18:43:00.000000000",
- "2025-09-10T18:44:00.000000000",
- "2025-09-10T18:45:00.000000000",
- "2025-09-10T18:46:00.000000000",
- "2025-09-10T18:47:00.000000000",
- "2025-09-10T18:48:00.000000000",
- "2025-09-10T18:49:00.000000000",
- "2025-09-10T18:50:00.000000000",
- "2025-09-10T18:51:00.000000000",
- "2025-09-10T18:52:00.000000000",
- "2025-09-10T18:53:00.000000000",
- "2025-09-10T18:54:00.000000000",
- "2025-09-10T18:55:00.000000000",
- "2025-09-10T18:56:00.000000000",
- "2025-09-10T18:57:00.000000000",
- "2025-09-10T18:58:00.000000000",
- "2025-09-10T18:59:00.000000000",
- "2025-09-10T19:00:00.000000000",
- "2025-09-10T19:01:00.000000000",
- "2025-09-10T19:02:00.000000000",
- "2025-09-10T19:03:00.000000000",
- "2025-09-10T19:04:00.000000000",
- "2025-09-10T19:05:00.000000000",
- "2025-09-10T19:06:00.000000000",
- "2025-09-10T19:07:00.000000000",
- "2025-09-10T19:08:00.000000000",
- "2025-09-10T19:09:00.000000000",
- "2025-09-10T19:10:00.000000000",
- "2025-09-10T19:11:00.000000000",
- "2025-09-10T19:12:00.000000000",
- "2025-09-10T19:13:00.000000000",
- "2025-09-10T19:14:00.000000000",
- "2025-09-10T19:15:00.000000000",
- "2025-09-10T19:16:00.000000000",
- "2025-09-10T19:17:00.000000000",
- "2025-09-10T19:18:00.000000000",
- "2025-09-10T19:19:00.000000000",
- "2025-09-10T19:20:00.000000000",
- "2025-09-10T19:21:00.000000000",
- "2025-09-10T19:22:00.000000000",
- "2025-09-10T19:23:00.000000000",
- "2025-09-10T19:24:00.000000000",
- "2025-09-10T19:25:00.000000000",
- "2025-09-10T19:26:00.000000000",
- "2025-09-10T19:27:00.000000000",
- "2025-09-10T19:28:00.000000000",
- "2025-09-10T19:29:00.000000000",
- "2025-09-10T19:30:00.000000000",
- "2025-09-10T19:31:00.000000000",
- "2025-09-10T19:32:00.000000000",
- "2025-09-10T19:33:00.000000000",
- "2025-09-10T19:34:00.000000000",
- "2025-09-10T19:35:00.000000000",
- "2025-09-10T19:36:00.000000000",
- "2025-09-10T19:37:00.000000000",
- "2025-09-10T19:38:00.000000000",
- "2025-09-10T19:39:00.000000000",
- "2025-09-10T19:40:00.000000000",
- "2025-09-10T19:41:00.000000000",
- "2025-09-10T19:42:00.000000000",
- "2025-09-10T19:43:00.000000000",
- "2025-09-10T19:44:00.000000000",
- "2025-09-10T19:45:00.000000000",
- "2025-09-10T19:46:00.000000000",
- "2025-09-10T19:47:00.000000000",
- "2025-09-10T19:48:00.000000000",
- "2025-09-10T19:49:00.000000000",
- "2025-09-10T19:50:00.000000000",
- "2025-09-10T19:51:00.000000000",
- "2025-09-10T19:52:00.000000000",
- "2025-09-10T19:53:00.000000000",
- "2025-09-10T19:54:00.000000000",
- "2025-09-10T19:55:00.000000000",
- "2025-09-10T19:56:00.000000000",
- "2025-09-10T19:57:00.000000000",
- "2025-09-10T19:58:00.000000000",
- "2025-09-10T19:59:00.000000000",
- "2025-09-10T20:00:00.000000000",
- "2025-09-10T20:01:00.000000000",
- "2025-09-10T20:02:00.000000000",
- "2025-09-10T20:03:00.000000000",
- "2025-09-10T20:04:00.000000000",
- "2025-09-10T20:05:00.000000000",
- "2025-09-10T20:06:00.000000000",
- "2025-09-10T20:07:00.000000000",
- "2025-09-10T20:08:00.000000000",
- "2025-09-10T20:09:00.000000000",
- "2025-09-10T20:10:00.000000000",
- "2025-09-10T20:11:00.000000000",
- "2025-09-10T20:12:00.000000000",
- "2025-09-10T20:13:00.000000000",
- "2025-09-10T20:14:00.000000000",
- "2025-09-10T20:15:00.000000000",
- "2025-09-10T20:16:00.000000000",
- "2025-09-10T20:17:00.000000000",
- "2025-09-10T20:18:00.000000000",
- "2025-09-10T20:19:00.000000000",
- "2025-09-10T20:20:00.000000000",
- "2025-09-10T20:21:00.000000000",
- "2025-09-10T20:22:00.000000000",
- "2025-09-10T20:23:00.000000000",
- "2025-09-10T20:24:00.000000000",
- "2025-09-10T20:25:00.000000000",
- "2025-09-10T20:26:00.000000000",
- "2025-09-10T20:27:00.000000000",
- "2025-09-10T20:28:00.000000000",
- "2025-09-10T20:29:00.000000000",
- "2025-09-10T20:30:00.000000000",
- "2025-09-10T20:31:00.000000000",
- "2025-09-10T20:32:00.000000000",
- "2025-09-10T20:33:00.000000000",
- "2025-09-10T20:34:00.000000000",
- "2025-09-10T20:35:00.000000000",
- "2025-09-10T20:36:00.000000000",
- "2025-09-10T20:37:00.000000000",
- "2025-09-10T20:38:00.000000000",
- "2025-09-10T20:39:00.000000000",
- "2025-09-10T20:40:00.000000000",
- "2025-09-10T20:41:00.000000000",
- "2025-09-10T20:42:00.000000000",
- "2025-09-10T20:43:00.000000000",
- "2025-09-10T20:44:00.000000000",
- "2025-09-10T20:45:00.000000000",
- "2025-09-10T20:46:00.000000000",
- "2025-09-10T20:47:00.000000000",
- "2025-09-10T20:48:00.000000000",
- "2025-09-10T20:49:00.000000000",
- "2025-09-10T20:50:00.000000000",
- "2025-09-10T20:51:00.000000000",
- "2025-09-10T20:52:00.000000000",
- "2025-09-10T20:53:00.000000000",
- "2025-09-10T20:54:00.000000000",
- "2025-09-10T20:55:00.000000000",
- "2025-09-10T20:56:00.000000000",
- "2025-09-10T20:57:00.000000000",
- "2025-09-10T20:58:00.000000000",
- "2025-09-10T20:59:00.000000000",
- "2025-09-10T21:00:00.000000000",
- "2025-09-10T21:01:00.000000000",
- "2025-09-10T21:02:00.000000000",
- "2025-09-10T21:03:00.000000000",
- "2025-09-10T21:04:00.000000000",
- "2025-09-10T21:05:00.000000000",
- "2025-09-10T21:06:00.000000000",
- "2025-09-10T21:07:00.000000000",
- "2025-09-10T21:08:00.000000000",
- "2025-09-10T21:09:00.000000000",
- "2025-09-10T21:10:00.000000000",
- "2025-09-10T21:11:00.000000000",
- "2025-09-10T21:12:00.000000000",
- "2025-09-10T21:13:00.000000000",
- "2025-09-10T21:14:00.000000000",
- "2025-09-10T21:15:00.000000000",
- "2025-09-10T21:16:00.000000000",
- "2025-09-10T21:17:00.000000000",
- "2025-09-10T21:18:00.000000000",
- "2025-09-10T21:19:00.000000000",
- "2025-09-10T21:20:00.000000000",
- "2025-09-10T21:21:00.000000000",
- "2025-09-10T21:22:00.000000000",
- "2025-09-10T21:23:00.000000000",
- "2025-09-10T21:24:00.000000000",
- "2025-09-10T21:25:00.000000000",
- "2025-09-10T21:26:00.000000000",
- "2025-09-10T21:27:00.000000000",
- "2025-09-10T21:28:00.000000000",
- "2025-09-10T21:29:00.000000000",
- "2025-09-10T21:30:00.000000000",
- "2025-09-10T21:31:00.000000000",
- "2025-09-10T21:32:00.000000000",
- "2025-09-10T21:33:00.000000000",
- "2025-09-10T21:34:00.000000000",
- "2025-09-10T21:35:00.000000000",
- "2025-09-10T21:36:00.000000000",
- "2025-09-10T21:37:00.000000000",
- "2025-09-10T21:38:00.000000000",
- "2025-09-10T21:39:00.000000000",
- "2025-09-10T21:40:00.000000000",
- "2025-09-10T21:41:00.000000000",
- "2025-09-10T21:42:00.000000000",
- "2025-09-10T21:43:00.000000000",
- "2025-09-10T21:44:00.000000000",
- "2025-09-10T21:45:00.000000000",
- "2025-09-10T21:46:00.000000000",
- "2025-09-10T21:47:00.000000000",
- "2025-09-10T21:48:00.000000000",
- "2025-09-10T21:49:00.000000000",
- "2025-09-10T21:50:00.000000000",
- "2025-09-10T21:51:00.000000000",
- "2025-09-10T21:52:00.000000000",
- "2025-09-10T21:53:00.000000000",
- "2025-09-10T21:54:00.000000000",
- "2025-09-10T21:55:00.000000000",
- "2025-09-10T21:56:00.000000000",
- "2025-09-10T21:57:00.000000000",
- "2025-09-10T21:58:00.000000000",
- "2025-09-10T21:59:00.000000000",
- "2025-09-10T22:00:00.000000000",
- "2025-09-10T22:01:00.000000000",
- "2025-09-10T22:02:00.000000000",
- "2025-09-10T22:03:00.000000000",
- "2025-09-10T22:04:00.000000000",
- "2025-09-10T22:05:00.000000000",
- "2025-09-10T22:06:00.000000000",
- "2025-09-10T22:07:00.000000000",
- "2025-09-10T22:08:00.000000000",
- "2025-09-10T22:09:00.000000000",
- "2025-09-10T22:10:00.000000000",
- "2025-09-10T22:11:00.000000000",
- "2025-09-10T22:12:00.000000000",
- "2025-09-10T22:13:00.000000000",
- "2025-09-10T22:14:00.000000000",
- "2025-09-10T22:15:00.000000000",
- "2025-09-10T22:16:00.000000000",
- "2025-09-10T22:17:00.000000000",
- "2025-09-10T22:18:00.000000000",
- "2025-09-10T22:19:00.000000000",
- "2025-09-10T22:20:00.000000000",
- "2025-09-10T22:21:00.000000000",
- "2025-09-10T22:22:00.000000000",
- "2025-09-10T22:23:00.000000000",
- "2025-09-10T22:24:00.000000000",
- "2025-09-10T22:25:00.000000000",
- "2025-09-10T22:26:00.000000000",
- "2025-09-10T22:27:00.000000000",
- "2025-09-10T22:28:00.000000000",
- "2025-09-10T22:29:00.000000000"
- ],
- "xaxis": "x",
- "y": {
- "bdata": "AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/rsOY7mTI0b9RLiN9b1fPv+9C3IwtYuq/sCKOHqIm079rUivgqh7Qv6tp8M/+Hsi/vovM69LL3b+cyzksdW3ovxjuubdJJOu/sWg6wHcb67+SJeI47prcv04GsPmgCso/wjzXU3fIzL/ZbXg3iArYvxNvMiN9lcu/+jxmOCxS0L9uPoz5PCLQv014JACHstC/QXCIgdWo8D/TnCZS9UXzP5/KKfwVQPY/LyYjw+NO5T/f25u/SgjjP4FMxywnm/I/bf2pGHHs4j+MurG6XNjiP9BP+FKbh9Y/3wMW5cdU4z/OQJ2cVpDgP9G3oiRfreY/9T+pyn9B5j+3yILOMunuP8RwB0eaU9s/xbF14Jd10D8qT6cS7FXbP44vI5+sGuM/IA9QqLM28j/3OTlNagT5P+CREAPEO/o/wmhY1MJb9j9LQhFaN8nyP9XQw8XZYO4/Avbh/dMO+D8LmVxHLqP3P/+iudQ3V/U/0dNtkF2K8z+r5bkn/br6PxSl6PccDwBAPdfTvS6L/D/y+9KvIkH/P3gYY0YDRv8/31C9+w0vAUA1BsN51LcCQPtWFrCT8QBAoItrEz/OAUCWx/IZCoQAQLzTyoTHrQJAkSNzm2X5AUAgJnRUs6X/P6PlDpBht/k/dTN3rkGX9D9HIGhZVBP2PzdbUmDinfI/fCCJsnT//D88zNABb2H+P61FPKWfa/w/+6byzatZ+T8JzehZNJ31P/EetopiU/I/MW+lj8UH7z+HkMNVBYjqP8JrDStuJec/ChJzIczR6D/lokRs/C3cP5cED1eJyOE/Mw9X7F9D4j9lV+QltC/oP+QJxGOAoeg/+AOHSiZi5j+syJbLvPXvP8swWSzYsOs/WstmY4oC5D+ieK01+/DjP42iH8m15eM/XJtSWBX43z9uFXcBQ77QP3GRlWfmcOE/94VUmzsE5j9k0C8HtvbnP3QJWhxSXuM/2mSi3N4l4z/Z5vAHY7HlP/n6NAI1zug/ZtfFpFxQ2D8RR+/jUbqZv0+U60LRntG/5sdPAMEOhT8Yaiz657S3v3RFME3zIoq/zBRaCH7W0r9LIo4zj7PNP1UQ5CTwM9A/QTY53tZ50j8HG5jF+r6xP3w+FdHXVcs/i53fCuAI0L83HvTmYPa6v2qcIRWptcK/ukZsHJoNzL/rP3F+WnjDv1gM20d9GsG/TvkVCv8S4L/U4Ohz/uDlv4sJNP1ql+S/MvWtlOri4r865/M6UW/Qv8etSi4t6tK/zRCjr17k4L+iUwXJlYTqvx7mhvf44+W//4hJwTY07r9LRSiV+Ontv2L5zJztffS/QXlJpykr8L9EypznNEz1v/0WXonnT/a/5qLRARdc9b+sTRKo+Tnuvwk1RXuYaPS/sGd5gaLM9b/THWsgeL/1vxExVIp2wfK/FBniZsxT+b9uZIA2xtH3vyXZ96l0LvO/s6r6nuk10z+L8nUsRQrnP0FKD6mnfuM/YWtVhU7VxD+dD32+WGjbP4z84v5ZDOs/pF71JzJP4T8CFC9Had21P0xiR3S2iKC/POAskFVU0j/F9cwqozrIP9q/IwVLe4c/BFk2wbA5xD87/SZbig3cv+NJw+t4yNm/JGV/V7/5pL/x82ZqQ8fdvzf6ORibC+m/tJ+Zinndxz8TiLCThSfQv8j2L8AI4rg/POG226WKub//UGRMSLnjv1zgEktbFPK/+Kr89gJ4+b9JFxuoH84CwK4D+PeYZQHAZpR8HbJlA8D1YaJ9u4wBwGmHaQ5OoQbAGZLKkrzMBcBhnI56bGIEwBZ+ssROGgTAK8wUpLxUA8CwfSYkF9cAwFrr+Lvj3QDAEjeFwbhHAMB7GDRd6isCwIOYxfkzOQPAXxvdYNBZBMCYCZAQZusCwAzTxAwmewHAXaBQCXV+/b/ePGNLN338vyGm2lkOWu2/x/tsMgiJ9L+aRfe3BXD1vz+0ZKT55fW/VmXTtefw7L/mopVr9vjyvw8f3pV8dvK/73k2el+157+37dHixdHwv22mQ5DmlOe/OLl6Ee3q3b++mxvb7f/kv8u/cjSJnei/gFLTpt2S6r8uG9cPhm/gv453jZ9qmdm/d0XrjAuV6L/Ujxknve7tvya8rIMl7NG/eJ8d7sfPwb/L1WQvMX6UvziCESBCANw/XzDhrD3luT92K+ffldChP9dXLJuiQpw/fl6BmKdPyz+/9A6I2FvRP7dcm3cGO9E/j4iLIus43D8KK+ytIz7tP7DtODuo8O8/KaT6O5v2wT+09VWurMfeP/exhcxB0us/jp46hhMy7D8ucWKRG5vzPzr4Pqa04vg/KFh6nSsH/z/riMP3kH0AQEkHvWJKWwRA54FhbeHtBEDIFAF8l/IBQL6BitWn4f0/jqMZhSMzAEBRXFkbLUX8Pz/iaf1FYPs/VWy8Q5lR9D/CLBg0Wbf1P9GZyRXpzfk/H2/+71ZO/T/cdgmNYJD5Pw+cfKBkrfk/qbgEPveS+T/KWjVYO0/zP9j4bzojtPA/Q7SFRlsF6j9KPL1KMhnqPzdR+J8mwPU/Tz3Hv92r9j9EFXTw69H2P80ugR66tfM/Ec3phcam6j9YxnLV0ObyP/aFeuqLB/k/4x4SDqdA/T8cOEWaHMP5P6urdVpPG/Y/iZrrYbhq+T8TfTEwtK32P+EgNo6huPM/OTBmfKTS9T/ghrXbv1btPxw9YvAjCu8/TUYtqzPy7z+vrBsGXwXkP+dhMnRZ9+g/md/wPPZw4T9euuSITgbgPwVScQjYKeM/i4pJ9w/22z/boE5ruoXTP+CBViCLmtI/l9gzBhE14j9a7NiXk1PlP62a/P/jcec/dVGJ7pkG5T8vXCPelWfoPyJWUI1MHeo/eVFE+b537D8XJBiF0uDoPzpUon9bHt0/y9KpbkiX1z9uRocfvdDcP+KOgVWc8eU/Ir/+8ehw6j8UqPfsMrjlPw1tu0lSbOM/HS+eaFT/3z+SJ5u3ntfYPyAAjsrqIto/wWkdePhk4D8wzc/Zp4boP8n4R4g0QeM/2eHfmx6F4j+e/oBCVDvbPz43d6o0xdk/nnm0aLT20T/sL6i3a7Bgv31MUmNvE6I/2vijQUI1oz+8krij9Nunv9NyuyGEIbu/TDo5zYTVyD/BSrTh9nXKPwhYfb6BhNU/myiNxTfI0j8prAquYyOzP913xFOparA/CeXkYsOk1D9LDY9A4JC6PxH9EcyeeHQ/3vvk8F2m4b9+skG0UfDWv/DkZJeuDt2/GRVxkg1P278bqD0kEYT2v2yTbAv6MfS/itmYSWUX8b+hHZwOV0f1v2kkYkzJLfS/egKcUehP+79RH62/gLj6v3mWuWxwKfO/kRmHKg0c87/OvScGO1z7v4usHGqSwP+/xEo1raoVAcAXBMOzSeYAwAdm4OkSUP6/cw2FGu5yAcDLwJv700b4v97StlxBYvm/bbyH3I4g+r84IHDlYiv/v/NBHShwRgDAhquJOPMEA8C0fTtFEmIDwERsOP7HcwPAL/X80BVXBsA7j6swj7IGwDnJR6Ni1wTApDl1vy/YBMC/W+MPvlMEwFFyHu4AgQLA1zoWLjq7AMAe641ZA7gCwPzp5chUTP+/zjx8DLCzAsC/hfaD3nkEwAOBM8qdNwXAvsRmYuzeBsDBRrNURx0DwAE8KipGJAPAdth4cAAkAsAfb9xPdIoAwFVstJ01DQHAKt0vHtCVA8CA51iztxwDwDUcbKFhWf+/Nx9platj/L8EuaL29uX8v9VhFnFOQf2/6DgkRnxsAcCqW7Lt6fb+v2pgqJrgR/2/b2rnIkQ4AMCMXOYoQN7/v6ptmZacuv2/jZj4kaux/r/X/YDSpLr7v9Mu6M8fsvu/CkuBGlyM9r+1BffAERfrv2DJimN9jee/kyU7Ma9C6b8dtTZAK8n0v1ixv7Fh0vK/mEhkLkJZ9r/Vj8xQPW/4vzopZciQxfa/AGM9/Qdo9L8k9/lnP3v1v2SA6VpHxPa/QkQ61VMZ97/kTykxC+P4vyKyANxjnfO/lrryU1jl9L+SQtG+khL4v3LQ4pFM5Pi/wSfRx8ze+b/16SQbDd/6v7OmbTZT9/m/ndPm1iZl+L8GO87Pc8f3v3LWnHJqqfW/S9LOIhCE9b+nMkO8uj31v2z3+bVjQ/S/WMNJOuyt5L/kefpfiFbKv9Pyf+3UjJO/EVt0dF3DvD9A2A2bjFnQP8RAHJoEX8M/m2Gkt4fE3T8Cc2rpl9rPP3CC/D7cxKu/zQrGvq0StD8XRyj+bGvPv0+Or4d4lta/I8PdqG1m4795tw46GIbZvzCa7AuvK92/itzwE0d73r/QyFyUB4/Wv8zfuO+lT9y/UlIMuGfM3b8ZCbCSpfDlv33QdLjxIue/O1MQ7deQ5r+3HLqPmYnkv4Ark0KMct+/5YWq3iF2kT/PzoTc6BXAv3miJ/8k/eS/hgTCFdK55b+/aRR2XBPfv64rHuZx0Ni/zMS3Wcz2y78Sj+RTC9rQvxeDGa8d0bk/QmsiWc0QoL9Sb7BCXQa9P/L1mA+UWdE/c/D8rPZH5T9GOCgcjyfkP7vutPINGPA//L0qpMu68T8LPj+lXIDtP1IZQ26tzuE/ifhOPLhQ5j8IgYi3kEbgP0pVKHTs5OQ/O3EwHqLK4z/CgLv9xL7TP5PdND+mBtk/oN5K+uHcsb9gKLbmnfnLP0qIxn+BCMo/QpDrNT3E37+x4vzKNybRv3xS4MkFd8q/SOckLOPKzr/T0sh4g0LuvyC5yUCAju2/qaXtN7PY9L/fZv5RCDXzv8+p7y3Bd/m/p663QCUF+L9vXauh/eH4v25d1tiJEem/xNlWcqEg6L8pu8kODA7UPxErAjh20dO/W/7R/dwwpz+z4hSnTULXv3QcXXcx8+O/56Piij81or+bWObY4LzVvya8AIKzbNM/vhe0W8UP2j+k5M/aN334P2cg9Hja2/c/BKhLtzh89z8yBpDlQbn0P1qHW+SgnfY/oas/XZUI2z9bOZRUQuHiP5c7ciufIuc/mzUVnV8ppr8/Ofb2Bl7Fvxz0qmMS4dc/cAltesQV4z8y2mWCXFm4P7TbwneEW+O/L0dMI54ptr89Ha6+eKXQv22c0gVfkri/9tJnOi/L1b/DQw8Elc/kv7Zc5EeLFtG/emnJob/c4j9VphdJrxTjv6GstYEfzbg/6UF22RrO1r/YjZsH4ALkP7kDkiHZ4cm/oAkibLvG4z/o9lW5Yg+0P8az6Wt5NLM/utR2YiV24j+MDKpU0DG1P8lQzHLAm8K/zMAQ47LHs7+fBYOU5z3bP8oL80YrZcE/lslDoJ3BwL8b+9MQsxXmv0z9aqh+jLM/tscMDlu6sL85NggbERXavxUd9KJMU6M/Hd8+djx7hD/01TVhsLfCv23SmrXWA8C/vTs70HyLxj8qkMb8D/6QP0zgt3PGfd0/A6+tQi2Ixj8DaigsfRniP0brMojh5eY/v2/0pmmI2T/c6CpEkrrpP2FjMqWEC+Y/7pIoSA2s3D/iuwZ5GlPGv084u+LoNaI/XnD2MJrBzj/gbG8o82faP6yY3dolhss/0eK7og5K3T/4NSvYFN7VPwBGkiMuItM/5TfCIY7s4D9RQGoTki/eP3JdzjL63u8/yzXbUTo58z/TwUP2UZvyP8htx5WmKO8/0vPS0XMe7T/04Aq59fHwP09JFQBOQuc/agrJKXmA4z/Nq5sLGqHlP5AEJu7/LOM/esa0lHZ52z+9cifdlvrKvyz0dmkS9dC/mM9QrCaf4b8AAAAAAAD4fw==",
- "dtype": "f8"
- },
- "yaxis": "y"
- },
- {
- "line": {
- "color": "blue",
- "width": 2
- },
- "name": "ADA-USDT (Normalized)",
- "opacity": 0.8,
- "type": "scatter",
- "x": [
- "2025-09-10T11:30:00.000000000",
- "2025-09-10T11:31:00.000000000",
- "2025-09-10T11:32:00.000000000",
- "2025-09-10T11:33:00.000000000",
- "2025-09-10T11:34:00.000000000",
- "2025-09-10T11:35:00.000000000",
- "2025-09-10T11:36:00.000000000",
- "2025-09-10T11:37:00.000000000",
- "2025-09-10T11:38:00.000000000",
- "2025-09-10T11:39:00.000000000",
- "2025-09-10T11:40:00.000000000",
- "2025-09-10T11:41:00.000000000",
- "2025-09-10T11:42:00.000000000",
- "2025-09-10T11:43:00.000000000",
- "2025-09-10T11:44:00.000000000",
- "2025-09-10T11:45:00.000000000",
- "2025-09-10T11:46:00.000000000",
- "2025-09-10T11:47:00.000000000",
- "2025-09-10T11:48:00.000000000",
- "2025-09-10T11:49:00.000000000",
- "2025-09-10T11:50:00.000000000",
- "2025-09-10T11:51:00.000000000",
- "2025-09-10T11:52:00.000000000",
- "2025-09-10T11:53:00.000000000",
- "2025-09-10T11:54:00.000000000",
- "2025-09-10T11:55:00.000000000",
- "2025-09-10T11:56:00.000000000",
- "2025-09-10T11:57:00.000000000",
- "2025-09-10T11:58:00.000000000",
- "2025-09-10T11:59:00.000000000",
- "2025-09-10T12:00:00.000000000",
- "2025-09-10T12:01:00.000000000",
- "2025-09-10T12:02:00.000000000",
- "2025-09-10T12:03:00.000000000",
- "2025-09-10T12:04:00.000000000",
- "2025-09-10T12:05:00.000000000",
- "2025-09-10T12:06:00.000000000",
- "2025-09-10T12:07:00.000000000",
- "2025-09-10T12:08:00.000000000",
- "2025-09-10T12:09:00.000000000",
- "2025-09-10T12:10:00.000000000",
- "2025-09-10T12:11:00.000000000",
- "2025-09-10T12:12:00.000000000",
- "2025-09-10T12:13:00.000000000",
- "2025-09-10T12:14:00.000000000",
- "2025-09-10T12:15:00.000000000",
- "2025-09-10T12:16:00.000000000",
- "2025-09-10T12:17:00.000000000",
- "2025-09-10T12:18:00.000000000",
- "2025-09-10T12:19:00.000000000",
- "2025-09-10T12:20:00.000000000",
- "2025-09-10T12:21:00.000000000",
- "2025-09-10T12:22:00.000000000",
- "2025-09-10T12:23:00.000000000",
- "2025-09-10T12:24:00.000000000",
- "2025-09-10T12:25:00.000000000",
- "2025-09-10T12:26:00.000000000",
- "2025-09-10T12:27:00.000000000",
- "2025-09-10T12:28:00.000000000",
- "2025-09-10T12:29:00.000000000",
- "2025-09-10T12:30:00.000000000",
- "2025-09-10T12:31:00.000000000",
- "2025-09-10T12:32:00.000000000",
- "2025-09-10T12:33:00.000000000",
- "2025-09-10T12:34:00.000000000",
- "2025-09-10T12:35:00.000000000",
- "2025-09-10T12:36:00.000000000",
- "2025-09-10T12:37:00.000000000",
- "2025-09-10T12:38:00.000000000",
- "2025-09-10T12:39:00.000000000",
- "2025-09-10T12:40:00.000000000",
- "2025-09-10T12:41:00.000000000",
- "2025-09-10T12:42:00.000000000",
- "2025-09-10T12:43:00.000000000",
- "2025-09-10T12:44:00.000000000",
- "2025-09-10T12:45:00.000000000",
- "2025-09-10T12:46:00.000000000",
- "2025-09-10T12:47:00.000000000",
- "2025-09-10T12:48:00.000000000",
- "2025-09-10T12:49:00.000000000",
- "2025-09-10T12:50:00.000000000",
- "2025-09-10T12:51:00.000000000",
- "2025-09-10T12:52:00.000000000",
- "2025-09-10T12:53:00.000000000",
- "2025-09-10T12:54:00.000000000",
- "2025-09-10T12:55:00.000000000",
- "2025-09-10T12:56:00.000000000",
- "2025-09-10T12:57:00.000000000",
- "2025-09-10T12:59:00.000000000",
- "2025-09-10T13:00:00.000000000",
- "2025-09-10T13:01:00.000000000",
- "2025-09-10T13:02:00.000000000",
- "2025-09-10T13:03:00.000000000",
- "2025-09-10T13:04:00.000000000",
- "2025-09-10T13:05:00.000000000",
- "2025-09-10T13:06:00.000000000",
- "2025-09-10T13:07:00.000000000",
- "2025-09-10T13:08:00.000000000",
- "2025-09-10T13:09:00.000000000",
- "2025-09-10T13:10:00.000000000",
- "2025-09-10T13:11:00.000000000",
- "2025-09-10T13:12:00.000000000",
- "2025-09-10T13:13:00.000000000",
- "2025-09-10T13:14:00.000000000",
- "2025-09-10T13:15:00.000000000",
- "2025-09-10T13:16:00.000000000",
- "2025-09-10T13:17:00.000000000",
- "2025-09-10T13:18:00.000000000",
- "2025-09-10T13:19:00.000000000",
- "2025-09-10T13:20:00.000000000",
- "2025-09-10T13:21:00.000000000",
- "2025-09-10T13:22:00.000000000",
- "2025-09-10T13:23:00.000000000",
- "2025-09-10T13:24:00.000000000",
- "2025-09-10T13:25:00.000000000",
- "2025-09-10T13:26:00.000000000",
- "2025-09-10T13:27:00.000000000",
- "2025-09-10T13:28:00.000000000",
- "2025-09-10T13:29:00.000000000",
- "2025-09-10T13:30:00.000000000",
- "2025-09-10T13:31:00.000000000",
- "2025-09-10T13:32:00.000000000",
- "2025-09-10T13:33:00.000000000",
- "2025-09-10T13:34:00.000000000",
- "2025-09-10T13:35:00.000000000",
- "2025-09-10T13:36:00.000000000",
- "2025-09-10T13:37:00.000000000",
- "2025-09-10T13:38:00.000000000",
- "2025-09-10T13:39:00.000000000",
- "2025-09-10T13:40:00.000000000",
- "2025-09-10T13:41:00.000000000",
- "2025-09-10T13:42:00.000000000",
- "2025-09-10T13:43:00.000000000",
- "2025-09-10T13:44:00.000000000",
- "2025-09-10T13:45:00.000000000",
- "2025-09-10T13:46:00.000000000",
- "2025-09-10T13:47:00.000000000",
- "2025-09-10T13:48:00.000000000",
- "2025-09-10T13:49:00.000000000",
- "2025-09-10T13:50:00.000000000",
- "2025-09-10T13:51:00.000000000",
- "2025-09-10T13:52:00.000000000",
- "2025-09-10T13:53:00.000000000",
- "2025-09-10T13:54:00.000000000",
- "2025-09-10T13:55:00.000000000",
- "2025-09-10T13:56:00.000000000",
- "2025-09-10T13:57:00.000000000",
- "2025-09-10T13:58:00.000000000",
- "2025-09-10T13:59:00.000000000",
- "2025-09-10T14:00:00.000000000",
- "2025-09-10T14:01:00.000000000",
- "2025-09-10T14:02:00.000000000",
- "2025-09-10T14:03:00.000000000",
- "2025-09-10T14:04:00.000000000",
- "2025-09-10T14:05:00.000000000",
- "2025-09-10T14:06:00.000000000",
- "2025-09-10T14:07:00.000000000",
- "2025-09-10T14:08:00.000000000",
- "2025-09-10T14:09:00.000000000",
- "2025-09-10T14:10:00.000000000",
- "2025-09-10T14:11:00.000000000",
- "2025-09-10T14:12:00.000000000",
- "2025-09-10T14:13:00.000000000",
- "2025-09-10T14:14:00.000000000",
- "2025-09-10T14:15:00.000000000",
- "2025-09-10T14:16:00.000000000",
- "2025-09-10T14:17:00.000000000",
- "2025-09-10T14:18:00.000000000",
- "2025-09-10T14:19:00.000000000",
- "2025-09-10T14:20:00.000000000",
- "2025-09-10T14:21:00.000000000",
- "2025-09-10T14:22:00.000000000",
- "2025-09-10T14:23:00.000000000",
- "2025-09-10T14:24:00.000000000",
- "2025-09-10T14:25:00.000000000",
- "2025-09-10T14:26:00.000000000",
- "2025-09-10T14:27:00.000000000",
- "2025-09-10T14:28:00.000000000",
- "2025-09-10T14:29:00.000000000",
- "2025-09-10T14:30:00.000000000",
- "2025-09-10T14:31:00.000000000",
- "2025-09-10T14:32:00.000000000",
- "2025-09-10T14:33:00.000000000",
- "2025-09-10T14:34:00.000000000",
- "2025-09-10T14:35:00.000000000",
- "2025-09-10T14:36:00.000000000",
- "2025-09-10T14:37:00.000000000",
- "2025-09-10T14:38:00.000000000",
- "2025-09-10T14:39:00.000000000",
- "2025-09-10T14:40:00.000000000",
- "2025-09-10T14:41:00.000000000",
- "2025-09-10T14:42:00.000000000",
- "2025-09-10T14:43:00.000000000",
- "2025-09-10T14:44:00.000000000",
- "2025-09-10T14:45:00.000000000",
- "2025-09-10T14:46:00.000000000",
- "2025-09-10T14:47:00.000000000",
- "2025-09-10T14:48:00.000000000",
- "2025-09-10T14:49:00.000000000",
- "2025-09-10T14:50:00.000000000",
- "2025-09-10T14:51:00.000000000",
- "2025-09-10T14:52:00.000000000",
- "2025-09-10T14:53:00.000000000",
- "2025-09-10T14:54:00.000000000",
- "2025-09-10T14:55:00.000000000",
- "2025-09-10T14:56:00.000000000",
- "2025-09-10T14:57:00.000000000",
- "2025-09-10T14:58:00.000000000",
- "2025-09-10T14:59:00.000000000",
- "2025-09-10T15:00:00.000000000",
- "2025-09-10T15:01:00.000000000",
- "2025-09-10T15:02:00.000000000",
- "2025-09-10T15:03:00.000000000",
- "2025-09-10T15:04:00.000000000",
- "2025-09-10T15:05:00.000000000",
- "2025-09-10T15:06:00.000000000",
- "2025-09-10T15:07:00.000000000",
- "2025-09-10T15:08:00.000000000",
- "2025-09-10T15:09:00.000000000",
- "2025-09-10T15:10:00.000000000",
- "2025-09-10T15:11:00.000000000",
- "2025-09-10T15:12:00.000000000",
- "2025-09-10T15:13:00.000000000",
- "2025-09-10T15:14:00.000000000",
- "2025-09-10T15:15:00.000000000",
- "2025-09-10T15:16:00.000000000",
- "2025-09-10T15:17:00.000000000",
- "2025-09-10T15:18:00.000000000",
- "2025-09-10T15:19:00.000000000",
- "2025-09-10T15:20:00.000000000",
- "2025-09-10T15:21:00.000000000",
- "2025-09-10T15:22:00.000000000",
- "2025-09-10T15:23:00.000000000",
- "2025-09-10T15:24:00.000000000",
- "2025-09-10T15:25:00.000000000",
- "2025-09-10T15:26:00.000000000",
- "2025-09-10T15:27:00.000000000",
- "2025-09-10T15:28:00.000000000",
- "2025-09-10T15:29:00.000000000",
- "2025-09-10T15:30:00.000000000",
- "2025-09-10T15:31:00.000000000",
- "2025-09-10T15:32:00.000000000",
- "2025-09-10T15:33:00.000000000",
- "2025-09-10T15:34:00.000000000",
- "2025-09-10T15:35:00.000000000",
- "2025-09-10T15:36:00.000000000",
- "2025-09-10T15:37:00.000000000",
- "2025-09-10T15:38:00.000000000",
- "2025-09-10T15:39:00.000000000",
- "2025-09-10T15:40:00.000000000",
- "2025-09-10T15:41:00.000000000",
- "2025-09-10T15:42:00.000000000",
- "2025-09-10T15:43:00.000000000",
- "2025-09-10T15:44:00.000000000",
- "2025-09-10T15:45:00.000000000",
- "2025-09-10T15:46:00.000000000",
- "2025-09-10T15:47:00.000000000",
- "2025-09-10T15:48:00.000000000",
- "2025-09-10T15:49:00.000000000",
- "2025-09-10T15:50:00.000000000",
- "2025-09-10T15:51:00.000000000",
- "2025-09-10T15:52:00.000000000",
- "2025-09-10T15:53:00.000000000",
- "2025-09-10T15:54:00.000000000",
- "2025-09-10T15:55:00.000000000",
- "2025-09-10T15:56:00.000000000",
- "2025-09-10T15:57:00.000000000",
- "2025-09-10T15:58:00.000000000",
- "2025-09-10T15:59:00.000000000",
- "2025-09-10T16:00:00.000000000",
- "2025-09-10T16:01:00.000000000",
- "2025-09-10T16:02:00.000000000",
- "2025-09-10T16:03:00.000000000",
- "2025-09-10T16:04:00.000000000",
- "2025-09-10T16:05:00.000000000",
- "2025-09-10T16:06:00.000000000",
- "2025-09-10T16:07:00.000000000",
- "2025-09-10T16:08:00.000000000",
- "2025-09-10T16:09:00.000000000",
- "2025-09-10T16:10:00.000000000",
- "2025-09-10T16:11:00.000000000",
- "2025-09-10T16:12:00.000000000",
- "2025-09-10T16:13:00.000000000",
- "2025-09-10T16:14:00.000000000",
- "2025-09-10T16:15:00.000000000",
- "2025-09-10T16:16:00.000000000",
- "2025-09-10T16:17:00.000000000",
- "2025-09-10T16:18:00.000000000",
- "2025-09-10T16:19:00.000000000",
- "2025-09-10T16:20:00.000000000",
- "2025-09-10T16:21:00.000000000",
- "2025-09-10T16:22:00.000000000",
- "2025-09-10T16:23:00.000000000",
- "2025-09-10T16:24:00.000000000",
- "2025-09-10T16:25:00.000000000",
- "2025-09-10T16:26:00.000000000",
- "2025-09-10T16:27:00.000000000",
- "2025-09-10T16:28:00.000000000",
- "2025-09-10T16:29:00.000000000",
- "2025-09-10T16:30:00.000000000",
- "2025-09-10T16:31:00.000000000",
- "2025-09-10T16:32:00.000000000",
- "2025-09-10T16:33:00.000000000",
- "2025-09-10T16:34:00.000000000",
- "2025-09-10T16:35:00.000000000",
- "2025-09-10T16:36:00.000000000",
- "2025-09-10T16:37:00.000000000",
- "2025-09-10T16:38:00.000000000",
- "2025-09-10T16:39:00.000000000",
- "2025-09-10T16:40:00.000000000",
- "2025-09-10T16:41:00.000000000",
- "2025-09-10T16:42:00.000000000",
- "2025-09-10T16:43:00.000000000",
- "2025-09-10T16:44:00.000000000",
- "2025-09-10T16:45:00.000000000",
- "2025-09-10T16:46:00.000000000",
- "2025-09-10T16:47:00.000000000",
- "2025-09-10T16:48:00.000000000",
- "2025-09-10T16:49:00.000000000",
- "2025-09-10T16:50:00.000000000",
- "2025-09-10T16:51:00.000000000",
- "2025-09-10T16:52:00.000000000",
- "2025-09-10T16:53:00.000000000",
- "2025-09-10T16:54:00.000000000",
- "2025-09-10T16:55:00.000000000",
- "2025-09-10T16:56:00.000000000",
- "2025-09-10T16:57:00.000000000",
- "2025-09-10T16:58:00.000000000",
- "2025-09-10T16:59:00.000000000",
- "2025-09-10T17:00:00.000000000",
- "2025-09-10T17:01:00.000000000",
- "2025-09-10T17:02:00.000000000",
- "2025-09-10T17:03:00.000000000",
- "2025-09-10T17:04:00.000000000",
- "2025-09-10T17:05:00.000000000",
- "2025-09-10T17:06:00.000000000",
- "2025-09-10T17:07:00.000000000",
- "2025-09-10T17:08:00.000000000",
- "2025-09-10T17:09:00.000000000",
- "2025-09-10T17:10:00.000000000",
- "2025-09-10T17:11:00.000000000",
- "2025-09-10T17:12:00.000000000",
- "2025-09-10T17:13:00.000000000",
- "2025-09-10T17:14:00.000000000",
- "2025-09-10T17:15:00.000000000",
- "2025-09-10T17:16:00.000000000",
- "2025-09-10T17:17:00.000000000",
- "2025-09-10T17:18:00.000000000",
- "2025-09-10T17:19:00.000000000",
- "2025-09-10T17:20:00.000000000",
- "2025-09-10T17:21:00.000000000",
- "2025-09-10T17:22:00.000000000",
- "2025-09-10T17:23:00.000000000",
- "2025-09-10T17:24:00.000000000",
- "2025-09-10T17:25:00.000000000",
- "2025-09-10T17:26:00.000000000",
- "2025-09-10T17:27:00.000000000",
- "2025-09-10T17:28:00.000000000",
- "2025-09-10T17:29:00.000000000",
- "2025-09-10T17:30:00.000000000",
- "2025-09-10T17:31:00.000000000",
- "2025-09-10T17:32:00.000000000",
- "2025-09-10T17:33:00.000000000",
- "2025-09-10T17:34:00.000000000",
- "2025-09-10T17:35:00.000000000",
- "2025-09-10T17:36:00.000000000",
- "2025-09-10T17:37:00.000000000",
- "2025-09-10T17:38:00.000000000",
- "2025-09-10T17:39:00.000000000",
- "2025-09-10T17:40:00.000000000",
- "2025-09-10T17:41:00.000000000",
- "2025-09-10T17:42:00.000000000",
- "2025-09-10T17:43:00.000000000",
- "2025-09-10T17:44:00.000000000",
- "2025-09-10T17:45:00.000000000",
- "2025-09-10T17:46:00.000000000",
- "2025-09-10T17:47:00.000000000",
- "2025-09-10T17:48:00.000000000",
- "2025-09-10T17:49:00.000000000",
- "2025-09-10T17:50:00.000000000",
- "2025-09-10T17:51:00.000000000",
- "2025-09-10T17:52:00.000000000",
- "2025-09-10T17:53:00.000000000",
- "2025-09-10T17:54:00.000000000",
- "2025-09-10T17:55:00.000000000",
- "2025-09-10T17:56:00.000000000",
- "2025-09-10T17:57:00.000000000",
- "2025-09-10T17:58:00.000000000",
- "2025-09-10T17:59:00.000000000",
- "2025-09-10T18:00:00.000000000",
- "2025-09-10T18:01:00.000000000",
- "2025-09-10T18:02:00.000000000",
- "2025-09-10T18:03:00.000000000",
- "2025-09-10T18:04:00.000000000",
- "2025-09-10T18:05:00.000000000",
- "2025-09-10T18:06:00.000000000",
- "2025-09-10T18:07:00.000000000",
- "2025-09-10T18:08:00.000000000",
- "2025-09-10T18:09:00.000000000",
- "2025-09-10T18:10:00.000000000",
- "2025-09-10T18:11:00.000000000",
- "2025-09-10T18:12:00.000000000",
- "2025-09-10T18:13:00.000000000",
- "2025-09-10T18:14:00.000000000",
- "2025-09-10T18:15:00.000000000",
- "2025-09-10T18:16:00.000000000",
- "2025-09-10T18:17:00.000000000",
- "2025-09-10T18:18:00.000000000",
- "2025-09-10T18:19:00.000000000",
- "2025-09-10T18:20:00.000000000",
- "2025-09-10T18:21:00.000000000",
- "2025-09-10T18:22:00.000000000",
- "2025-09-10T18:23:00.000000000",
- "2025-09-10T18:24:00.000000000",
- "2025-09-10T18:25:00.000000000",
- "2025-09-10T18:26:00.000000000",
- "2025-09-10T18:27:00.000000000",
- "2025-09-10T18:28:00.000000000",
- "2025-09-10T18:29:00.000000000",
- "2025-09-10T18:30:00.000000000",
- "2025-09-10T18:31:00.000000000",
- "2025-09-10T18:32:00.000000000",
- "2025-09-10T18:33:00.000000000",
- "2025-09-10T18:34:00.000000000",
- "2025-09-10T18:35:00.000000000",
- "2025-09-10T18:36:00.000000000",
- "2025-09-10T18:37:00.000000000",
- "2025-09-10T18:38:00.000000000",
- "2025-09-10T18:39:00.000000000",
- "2025-09-10T18:40:00.000000000",
- "2025-09-10T18:41:00.000000000",
- "2025-09-10T18:42:00.000000000",
- "2025-09-10T18:43:00.000000000",
- "2025-09-10T18:44:00.000000000",
- "2025-09-10T18:45:00.000000000",
- "2025-09-10T18:46:00.000000000",
- "2025-09-10T18:47:00.000000000",
- "2025-09-10T18:48:00.000000000",
- "2025-09-10T18:49:00.000000000",
- "2025-09-10T18:50:00.000000000",
- "2025-09-10T18:51:00.000000000",
- "2025-09-10T18:52:00.000000000",
- "2025-09-10T18:53:00.000000000",
- "2025-09-10T18:54:00.000000000",
- "2025-09-10T18:55:00.000000000",
- "2025-09-10T18:56:00.000000000",
- "2025-09-10T18:57:00.000000000",
- "2025-09-10T18:58:00.000000000",
- "2025-09-10T18:59:00.000000000",
- "2025-09-10T19:00:00.000000000",
- "2025-09-10T19:01:00.000000000",
- "2025-09-10T19:02:00.000000000",
- "2025-09-10T19:03:00.000000000",
- "2025-09-10T19:04:00.000000000",
- "2025-09-10T19:05:00.000000000",
- "2025-09-10T19:06:00.000000000",
- "2025-09-10T19:07:00.000000000",
- "2025-09-10T19:08:00.000000000",
- "2025-09-10T19:09:00.000000000",
- "2025-09-10T19:10:00.000000000",
- "2025-09-10T19:11:00.000000000",
- "2025-09-10T19:12:00.000000000",
- "2025-09-10T19:13:00.000000000",
- "2025-09-10T19:14:00.000000000",
- "2025-09-10T19:15:00.000000000",
- "2025-09-10T19:16:00.000000000",
- "2025-09-10T19:17:00.000000000",
- "2025-09-10T19:18:00.000000000",
- "2025-09-10T19:19:00.000000000",
- "2025-09-10T19:20:00.000000000",
- "2025-09-10T19:21:00.000000000",
- "2025-09-10T19:22:00.000000000",
- "2025-09-10T19:23:00.000000000",
- "2025-09-10T19:24:00.000000000",
- "2025-09-10T19:25:00.000000000",
- "2025-09-10T19:26:00.000000000",
- "2025-09-10T19:27:00.000000000",
- "2025-09-10T19:28:00.000000000",
- "2025-09-10T19:29:00.000000000",
- "2025-09-10T19:30:00.000000000",
- "2025-09-10T19:31:00.000000000",
- "2025-09-10T19:32:00.000000000",
- "2025-09-10T19:33:00.000000000",
- "2025-09-10T19:34:00.000000000",
- "2025-09-10T19:35:00.000000000",
- "2025-09-10T19:36:00.000000000",
- "2025-09-10T19:37:00.000000000",
- "2025-09-10T19:38:00.000000000",
- "2025-09-10T19:39:00.000000000",
- "2025-09-10T19:40:00.000000000",
- "2025-09-10T19:41:00.000000000",
- "2025-09-10T19:42:00.000000000",
- "2025-09-10T19:43:00.000000000",
- "2025-09-10T19:44:00.000000000",
- "2025-09-10T19:45:00.000000000",
- "2025-09-10T19:46:00.000000000",
- "2025-09-10T19:47:00.000000000",
- "2025-09-10T19:48:00.000000000",
- "2025-09-10T19:49:00.000000000",
- "2025-09-10T19:50:00.000000000",
- "2025-09-10T19:51:00.000000000",
- "2025-09-10T19:52:00.000000000",
- "2025-09-10T19:53:00.000000000",
- "2025-09-10T19:54:00.000000000",
- "2025-09-10T19:55:00.000000000",
- "2025-09-10T19:56:00.000000000",
- "2025-09-10T19:57:00.000000000",
- "2025-09-10T19:58:00.000000000",
- "2025-09-10T19:59:00.000000000",
- "2025-09-10T20:00:00.000000000",
- "2025-09-10T20:01:00.000000000",
- "2025-09-10T20:02:00.000000000",
- "2025-09-10T20:03:00.000000000",
- "2025-09-10T20:04:00.000000000",
- "2025-09-10T20:05:00.000000000",
- "2025-09-10T20:06:00.000000000",
- "2025-09-10T20:07:00.000000000",
- "2025-09-10T20:08:00.000000000",
- "2025-09-10T20:09:00.000000000",
- "2025-09-10T20:10:00.000000000",
- "2025-09-10T20:11:00.000000000",
- "2025-09-10T20:12:00.000000000",
- "2025-09-10T20:13:00.000000000",
- "2025-09-10T20:14:00.000000000",
- "2025-09-10T20:15:00.000000000",
- "2025-09-10T20:16:00.000000000",
- "2025-09-10T20:17:00.000000000",
- "2025-09-10T20:18:00.000000000",
- "2025-09-10T20:19:00.000000000",
- "2025-09-10T20:20:00.000000000",
- "2025-09-10T20:21:00.000000000",
- "2025-09-10T20:22:00.000000000",
- "2025-09-10T20:23:00.000000000",
- "2025-09-10T20:24:00.000000000",
- "2025-09-10T20:25:00.000000000",
- "2025-09-10T20:26:00.000000000",
- "2025-09-10T20:27:00.000000000",
- "2025-09-10T20:28:00.000000000",
- "2025-09-10T20:29:00.000000000",
- "2025-09-10T20:30:00.000000000",
- "2025-09-10T20:31:00.000000000",
- "2025-09-10T20:32:00.000000000",
- "2025-09-10T20:33:00.000000000",
- "2025-09-10T20:34:00.000000000",
- "2025-09-10T20:35:00.000000000",
- "2025-09-10T20:36:00.000000000",
- "2025-09-10T20:37:00.000000000",
- "2025-09-10T20:38:00.000000000",
- "2025-09-10T20:39:00.000000000",
- "2025-09-10T20:40:00.000000000",
- "2025-09-10T20:41:00.000000000",
- "2025-09-10T20:42:00.000000000",
- "2025-09-10T20:43:00.000000000",
- "2025-09-10T20:44:00.000000000",
- "2025-09-10T20:45:00.000000000",
- "2025-09-10T20:46:00.000000000",
- "2025-09-10T20:47:00.000000000",
- "2025-09-10T20:48:00.000000000",
- "2025-09-10T20:49:00.000000000",
- "2025-09-10T20:50:00.000000000",
- "2025-09-10T20:51:00.000000000",
- "2025-09-10T20:52:00.000000000",
- "2025-09-10T20:53:00.000000000",
- "2025-09-10T20:54:00.000000000",
- "2025-09-10T20:55:00.000000000",
- "2025-09-10T20:56:00.000000000",
- "2025-09-10T20:57:00.000000000",
- "2025-09-10T20:58:00.000000000",
- "2025-09-10T20:59:00.000000000",
- "2025-09-10T21:00:00.000000000",
- "2025-09-10T21:01:00.000000000",
- "2025-09-10T21:02:00.000000000",
- "2025-09-10T21:03:00.000000000",
- "2025-09-10T21:04:00.000000000",
- "2025-09-10T21:05:00.000000000",
- "2025-09-10T21:06:00.000000000",
- "2025-09-10T21:07:00.000000000",
- "2025-09-10T21:08:00.000000000",
- "2025-09-10T21:09:00.000000000",
- "2025-09-10T21:10:00.000000000",
- "2025-09-10T21:11:00.000000000",
- "2025-09-10T21:12:00.000000000",
- "2025-09-10T21:13:00.000000000",
- "2025-09-10T21:14:00.000000000",
- "2025-09-10T21:15:00.000000000",
- "2025-09-10T21:16:00.000000000",
- "2025-09-10T21:17:00.000000000",
- "2025-09-10T21:18:00.000000000",
- "2025-09-10T21:19:00.000000000",
- "2025-09-10T21:20:00.000000000",
- "2025-09-10T21:21:00.000000000",
- "2025-09-10T21:22:00.000000000",
- "2025-09-10T21:23:00.000000000",
- "2025-09-10T21:24:00.000000000",
- "2025-09-10T21:25:00.000000000",
- "2025-09-10T21:26:00.000000000",
- "2025-09-10T21:27:00.000000000",
- "2025-09-10T21:28:00.000000000",
- "2025-09-10T21:29:00.000000000",
- "2025-09-10T21:30:00.000000000",
- "2025-09-10T21:31:00.000000000",
- "2025-09-10T21:32:00.000000000",
- "2025-09-10T21:33:00.000000000",
- "2025-09-10T21:34:00.000000000",
- "2025-09-10T21:35:00.000000000",
- "2025-09-10T21:36:00.000000000",
- "2025-09-10T21:37:00.000000000",
- "2025-09-10T21:38:00.000000000",
- "2025-09-10T21:39:00.000000000",
- "2025-09-10T21:40:00.000000000",
- "2025-09-10T21:41:00.000000000",
- "2025-09-10T21:42:00.000000000",
- "2025-09-10T21:43:00.000000000",
- "2025-09-10T21:44:00.000000000",
- "2025-09-10T21:45:00.000000000",
- "2025-09-10T21:46:00.000000000",
- "2025-09-10T21:47:00.000000000",
- "2025-09-10T21:48:00.000000000",
- "2025-09-10T21:49:00.000000000",
- "2025-09-10T21:50:00.000000000",
- "2025-09-10T21:51:00.000000000",
- "2025-09-10T21:52:00.000000000",
- "2025-09-10T21:53:00.000000000",
- "2025-09-10T21:54:00.000000000",
- "2025-09-10T21:55:00.000000000",
- "2025-09-10T21:56:00.000000000",
- "2025-09-10T21:57:00.000000000",
- "2025-09-10T21:58:00.000000000",
- "2025-09-10T21:59:00.000000000",
- "2025-09-10T22:00:00.000000000",
- "2025-09-10T22:01:00.000000000",
- "2025-09-10T22:02:00.000000000",
- "2025-09-10T22:03:00.000000000",
- "2025-09-10T22:04:00.000000000",
- "2025-09-10T22:05:00.000000000",
- "2025-09-10T22:06:00.000000000",
- "2025-09-10T22:07:00.000000000",
- "2025-09-10T22:08:00.000000000",
- "2025-09-10T22:09:00.000000000",
- "2025-09-10T22:10:00.000000000",
- "2025-09-10T22:11:00.000000000",
- "2025-09-10T22:12:00.000000000",
- "2025-09-10T22:13:00.000000000",
- "2025-09-10T22:14:00.000000000",
- "2025-09-10T22:15:00.000000000",
- "2025-09-10T22:16:00.000000000",
- "2025-09-10T22:17:00.000000000",
- "2025-09-10T22:18:00.000000000",
- "2025-09-10T22:19:00.000000000",
- "2025-09-10T22:20:00.000000000",
- "2025-09-10T22:21:00.000000000",
- "2025-09-10T22:22:00.000000000",
- "2025-09-10T22:23:00.000000000",
- "2025-09-10T22:24:00.000000000",
- "2025-09-10T22:25:00.000000000",
- "2025-09-10T22:26:00.000000000",
- "2025-09-10T22:27:00.000000000",
- "2025-09-10T22:28:00.000000000",
- "2025-09-10T22:29:00.000000000"
- ],
- "xaxis": "x2",
- "y": {
- "bdata": "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",
- "dtype": "f8"
- },
- "yaxis": "y2"
- },
- {
- "line": {
- "color": "orange",
- "width": 2
- },
- "name": "SOL-USDT (Normalized)",
- "opacity": 0.8,
- "type": "scatter",
- "x": [
- "2025-09-10T11:30:00.000000000",
- "2025-09-10T11:31:00.000000000",
- "2025-09-10T11:32:00.000000000",
- "2025-09-10T11:33:00.000000000",
- "2025-09-10T11:34:00.000000000",
- "2025-09-10T11:35:00.000000000",
- "2025-09-10T11:36:00.000000000",
- "2025-09-10T11:37:00.000000000",
- "2025-09-10T11:38:00.000000000",
- "2025-09-10T11:39:00.000000000",
- "2025-09-10T11:40:00.000000000",
- "2025-09-10T11:41:00.000000000",
- "2025-09-10T11:42:00.000000000",
- "2025-09-10T11:43:00.000000000",
- "2025-09-10T11:44:00.000000000",
- "2025-09-10T11:45:00.000000000",
- "2025-09-10T11:46:00.000000000",
- "2025-09-10T11:47:00.000000000",
- "2025-09-10T11:48:00.000000000",
- "2025-09-10T11:49:00.000000000",
- "2025-09-10T11:50:00.000000000",
- "2025-09-10T11:51:00.000000000",
- "2025-09-10T11:52:00.000000000",
- "2025-09-10T11:53:00.000000000",
- "2025-09-10T11:54:00.000000000",
- "2025-09-10T11:55:00.000000000",
- "2025-09-10T11:56:00.000000000",
- "2025-09-10T11:57:00.000000000",
- "2025-09-10T11:58:00.000000000",
- "2025-09-10T11:59:00.000000000",
- "2025-09-10T12:00:00.000000000",
- "2025-09-10T12:01:00.000000000",
- "2025-09-10T12:02:00.000000000",
- "2025-09-10T12:03:00.000000000",
- "2025-09-10T12:04:00.000000000",
- "2025-09-10T12:05:00.000000000",
- "2025-09-10T12:06:00.000000000",
- "2025-09-10T12:07:00.000000000",
- "2025-09-10T12:08:00.000000000",
- "2025-09-10T12:09:00.000000000",
- "2025-09-10T12:10:00.000000000",
- "2025-09-10T12:11:00.000000000",
- "2025-09-10T12:12:00.000000000",
- "2025-09-10T12:13:00.000000000",
- "2025-09-10T12:14:00.000000000",
- "2025-09-10T12:15:00.000000000",
- "2025-09-10T12:16:00.000000000",
- "2025-09-10T12:17:00.000000000",
- "2025-09-10T12:18:00.000000000",
- "2025-09-10T12:19:00.000000000",
- "2025-09-10T12:20:00.000000000",
- "2025-09-10T12:21:00.000000000",
- "2025-09-10T12:22:00.000000000",
- "2025-09-10T12:23:00.000000000",
- "2025-09-10T12:24:00.000000000",
- "2025-09-10T12:25:00.000000000",
- "2025-09-10T12:26:00.000000000",
- "2025-09-10T12:27:00.000000000",
- "2025-09-10T12:28:00.000000000",
- "2025-09-10T12:29:00.000000000",
- "2025-09-10T12:30:00.000000000",
- "2025-09-10T12:31:00.000000000",
- "2025-09-10T12:32:00.000000000",
- "2025-09-10T12:33:00.000000000",
- "2025-09-10T12:34:00.000000000",
- "2025-09-10T12:35:00.000000000",
- "2025-09-10T12:36:00.000000000",
- "2025-09-10T12:37:00.000000000",
- "2025-09-10T12:38:00.000000000",
- "2025-09-10T12:39:00.000000000",
- "2025-09-10T12:40:00.000000000",
- "2025-09-10T12:41:00.000000000",
- "2025-09-10T12:42:00.000000000",
- "2025-09-10T12:43:00.000000000",
- "2025-09-10T12:44:00.000000000",
- "2025-09-10T12:45:00.000000000",
- "2025-09-10T12:46:00.000000000",
- "2025-09-10T12:47:00.000000000",
- "2025-09-10T12:48:00.000000000",
- "2025-09-10T12:49:00.000000000",
- "2025-09-10T12:50:00.000000000",
- "2025-09-10T12:51:00.000000000",
- "2025-09-10T12:52:00.000000000",
- "2025-09-10T12:53:00.000000000",
- "2025-09-10T12:54:00.000000000",
- "2025-09-10T12:55:00.000000000",
- "2025-09-10T12:56:00.000000000",
- "2025-09-10T12:57:00.000000000",
- "2025-09-10T12:59:00.000000000",
- "2025-09-10T13:00:00.000000000",
- "2025-09-10T13:01:00.000000000",
- "2025-09-10T13:02:00.000000000",
- "2025-09-10T13:03:00.000000000",
- "2025-09-10T13:04:00.000000000",
- "2025-09-10T13:05:00.000000000",
- "2025-09-10T13:06:00.000000000",
- "2025-09-10T13:07:00.000000000",
- "2025-09-10T13:08:00.000000000",
- "2025-09-10T13:09:00.000000000",
- "2025-09-10T13:10:00.000000000",
- "2025-09-10T13:11:00.000000000",
- "2025-09-10T13:12:00.000000000",
- "2025-09-10T13:13:00.000000000",
- "2025-09-10T13:14:00.000000000",
- "2025-09-10T13:15:00.000000000",
- "2025-09-10T13:16:00.000000000",
- "2025-09-10T13:17:00.000000000",
- "2025-09-10T13:18:00.000000000",
- "2025-09-10T13:19:00.000000000",
- "2025-09-10T13:20:00.000000000",
- "2025-09-10T13:21:00.000000000",
- "2025-09-10T13:22:00.000000000",
- "2025-09-10T13:23:00.000000000",
- "2025-09-10T13:24:00.000000000",
- "2025-09-10T13:25:00.000000000",
- "2025-09-10T13:26:00.000000000",
- "2025-09-10T13:27:00.000000000",
- "2025-09-10T13:28:00.000000000",
- "2025-09-10T13:29:00.000000000",
- "2025-09-10T13:30:00.000000000",
- "2025-09-10T13:31:00.000000000",
- "2025-09-10T13:32:00.000000000",
- "2025-09-10T13:33:00.000000000",
- "2025-09-10T13:34:00.000000000",
- "2025-09-10T13:35:00.000000000",
- "2025-09-10T13:36:00.000000000",
- "2025-09-10T13:37:00.000000000",
- "2025-09-10T13:38:00.000000000",
- "2025-09-10T13:39:00.000000000",
- "2025-09-10T13:40:00.000000000",
- "2025-09-10T13:41:00.000000000",
- "2025-09-10T13:42:00.000000000",
- "2025-09-10T13:43:00.000000000",
- "2025-09-10T13:44:00.000000000",
- "2025-09-10T13:45:00.000000000",
- "2025-09-10T13:46:00.000000000",
- "2025-09-10T13:47:00.000000000",
- "2025-09-10T13:48:00.000000000",
- "2025-09-10T13:49:00.000000000",
- "2025-09-10T13:50:00.000000000",
- "2025-09-10T13:51:00.000000000",
- "2025-09-10T13:52:00.000000000",
- "2025-09-10T13:53:00.000000000",
- "2025-09-10T13:54:00.000000000",
- "2025-09-10T13:55:00.000000000",
- "2025-09-10T13:56:00.000000000",
- "2025-09-10T13:57:00.000000000",
- "2025-09-10T13:58:00.000000000",
- "2025-09-10T13:59:00.000000000",
- "2025-09-10T14:00:00.000000000",
- "2025-09-10T14:01:00.000000000",
- "2025-09-10T14:02:00.000000000",
- "2025-09-10T14:03:00.000000000",
- "2025-09-10T14:04:00.000000000",
- "2025-09-10T14:05:00.000000000",
- "2025-09-10T14:06:00.000000000",
- "2025-09-10T14:07:00.000000000",
- "2025-09-10T14:08:00.000000000",
- "2025-09-10T14:09:00.000000000",
- "2025-09-10T14:10:00.000000000",
- "2025-09-10T14:11:00.000000000",
- "2025-09-10T14:12:00.000000000",
- "2025-09-10T14:13:00.000000000",
- "2025-09-10T14:14:00.000000000",
- "2025-09-10T14:15:00.000000000",
- "2025-09-10T14:16:00.000000000",
- "2025-09-10T14:17:00.000000000",
- "2025-09-10T14:18:00.000000000",
- "2025-09-10T14:19:00.000000000",
- "2025-09-10T14:20:00.000000000",
- "2025-09-10T14:21:00.000000000",
- "2025-09-10T14:22:00.000000000",
- "2025-09-10T14:23:00.000000000",
- "2025-09-10T14:24:00.000000000",
- "2025-09-10T14:25:00.000000000",
- "2025-09-10T14:26:00.000000000",
- "2025-09-10T14:27:00.000000000",
- "2025-09-10T14:28:00.000000000",
- "2025-09-10T14:29:00.000000000",
- "2025-09-10T14:30:00.000000000",
- "2025-09-10T14:31:00.000000000",
- "2025-09-10T14:32:00.000000000",
- "2025-09-10T14:33:00.000000000",
- "2025-09-10T14:34:00.000000000",
- "2025-09-10T14:35:00.000000000",
- "2025-09-10T14:36:00.000000000",
- "2025-09-10T14:37:00.000000000",
- "2025-09-10T14:38:00.000000000",
- "2025-09-10T14:39:00.000000000",
- "2025-09-10T14:40:00.000000000",
- "2025-09-10T14:41:00.000000000",
- "2025-09-10T14:42:00.000000000",
- "2025-09-10T14:43:00.000000000",
- "2025-09-10T14:44:00.000000000",
- "2025-09-10T14:45:00.000000000",
- "2025-09-10T14:46:00.000000000",
- "2025-09-10T14:47:00.000000000",
- "2025-09-10T14:48:00.000000000",
- "2025-09-10T14:49:00.000000000",
- "2025-09-10T14:50:00.000000000",
- "2025-09-10T14:51:00.000000000",
- "2025-09-10T14:52:00.000000000",
- "2025-09-10T14:53:00.000000000",
- "2025-09-10T14:54:00.000000000",
- "2025-09-10T14:55:00.000000000",
- "2025-09-10T14:56:00.000000000",
- "2025-09-10T14:57:00.000000000",
- "2025-09-10T14:58:00.000000000",
- "2025-09-10T14:59:00.000000000",
- "2025-09-10T15:00:00.000000000",
- "2025-09-10T15:01:00.000000000",
- "2025-09-10T15:02:00.000000000",
- "2025-09-10T15:03:00.000000000",
- "2025-09-10T15:04:00.000000000",
- "2025-09-10T15:05:00.000000000",
- "2025-09-10T15:06:00.000000000",
- "2025-09-10T15:07:00.000000000",
- "2025-09-10T15:08:00.000000000",
- "2025-09-10T15:09:00.000000000",
- "2025-09-10T15:10:00.000000000",
- "2025-09-10T15:11:00.000000000",
- "2025-09-10T15:12:00.000000000",
- "2025-09-10T15:13:00.000000000",
- "2025-09-10T15:14:00.000000000",
- "2025-09-10T15:15:00.000000000",
- "2025-09-10T15:16:00.000000000",
- "2025-09-10T15:17:00.000000000",
- "2025-09-10T15:18:00.000000000",
- "2025-09-10T15:19:00.000000000",
- "2025-09-10T15:20:00.000000000",
- "2025-09-10T15:21:00.000000000",
- "2025-09-10T15:22:00.000000000",
- "2025-09-10T15:23:00.000000000",
- "2025-09-10T15:24:00.000000000",
- "2025-09-10T15:25:00.000000000",
- "2025-09-10T15:26:00.000000000",
- "2025-09-10T15:27:00.000000000",
- "2025-09-10T15:28:00.000000000",
- "2025-09-10T15:29:00.000000000",
- "2025-09-10T15:30:00.000000000",
- "2025-09-10T15:31:00.000000000",
- "2025-09-10T15:32:00.000000000",
- "2025-09-10T15:33:00.000000000",
- "2025-09-10T15:34:00.000000000",
- "2025-09-10T15:35:00.000000000",
- "2025-09-10T15:36:00.000000000",
- "2025-09-10T15:37:00.000000000",
- "2025-09-10T15:38:00.000000000",
- "2025-09-10T15:39:00.000000000",
- "2025-09-10T15:40:00.000000000",
- "2025-09-10T15:41:00.000000000",
- "2025-09-10T15:42:00.000000000",
- "2025-09-10T15:43:00.000000000",
- "2025-09-10T15:44:00.000000000",
- "2025-09-10T15:45:00.000000000",
- "2025-09-10T15:46:00.000000000",
- "2025-09-10T15:47:00.000000000",
- "2025-09-10T15:48:00.000000000",
- "2025-09-10T15:49:00.000000000",
- "2025-09-10T15:50:00.000000000",
- "2025-09-10T15:51:00.000000000",
- "2025-09-10T15:52:00.000000000",
- "2025-09-10T15:53:00.000000000",
- "2025-09-10T15:54:00.000000000",
- "2025-09-10T15:55:00.000000000",
- "2025-09-10T15:56:00.000000000",
- "2025-09-10T15:57:00.000000000",
- "2025-09-10T15:58:00.000000000",
- "2025-09-10T15:59:00.000000000",
- "2025-09-10T16:00:00.000000000",
- "2025-09-10T16:01:00.000000000",
- "2025-09-10T16:02:00.000000000",
- "2025-09-10T16:03:00.000000000",
- "2025-09-10T16:04:00.000000000",
- "2025-09-10T16:05:00.000000000",
- "2025-09-10T16:06:00.000000000",
- "2025-09-10T16:07:00.000000000",
- "2025-09-10T16:08:00.000000000",
- "2025-09-10T16:09:00.000000000",
- "2025-09-10T16:10:00.000000000",
- "2025-09-10T16:11:00.000000000",
- "2025-09-10T16:12:00.000000000",
- "2025-09-10T16:13:00.000000000",
- "2025-09-10T16:14:00.000000000",
- "2025-09-10T16:15:00.000000000",
- "2025-09-10T16:16:00.000000000",
- "2025-09-10T16:17:00.000000000",
- "2025-09-10T16:18:00.000000000",
- "2025-09-10T16:19:00.000000000",
- "2025-09-10T16:20:00.000000000",
- "2025-09-10T16:21:00.000000000",
- "2025-09-10T16:22:00.000000000",
- "2025-09-10T16:23:00.000000000",
- "2025-09-10T16:24:00.000000000",
- "2025-09-10T16:25:00.000000000",
- "2025-09-10T16:26:00.000000000",
- "2025-09-10T16:27:00.000000000",
- "2025-09-10T16:28:00.000000000",
- "2025-09-10T16:29:00.000000000",
- "2025-09-10T16:30:00.000000000",
- "2025-09-10T16:31:00.000000000",
- "2025-09-10T16:32:00.000000000",
- "2025-09-10T16:33:00.000000000",
- "2025-09-10T16:34:00.000000000",
- "2025-09-10T16:35:00.000000000",
- "2025-09-10T16:36:00.000000000",
- "2025-09-10T16:37:00.000000000",
- "2025-09-10T16:38:00.000000000",
- "2025-09-10T16:39:00.000000000",
- "2025-09-10T16:40:00.000000000",
- "2025-09-10T16:41:00.000000000",
- "2025-09-10T16:42:00.000000000",
- "2025-09-10T16:43:00.000000000",
- "2025-09-10T16:44:00.000000000",
- "2025-09-10T16:45:00.000000000",
- "2025-09-10T16:46:00.000000000",
- "2025-09-10T16:47:00.000000000",
- "2025-09-10T16:48:00.000000000",
- "2025-09-10T16:49:00.000000000",
- "2025-09-10T16:50:00.000000000",
- "2025-09-10T16:51:00.000000000",
- "2025-09-10T16:52:00.000000000",
- "2025-09-10T16:53:00.000000000",
- "2025-09-10T16:54:00.000000000",
- "2025-09-10T16:55:00.000000000",
- "2025-09-10T16:56:00.000000000",
- "2025-09-10T16:57:00.000000000",
- "2025-09-10T16:58:00.000000000",
- "2025-09-10T16:59:00.000000000",
- "2025-09-10T17:00:00.000000000",
- "2025-09-10T17:01:00.000000000",
- "2025-09-10T17:02:00.000000000",
- "2025-09-10T17:03:00.000000000",
- "2025-09-10T17:04:00.000000000",
- "2025-09-10T17:05:00.000000000",
- "2025-09-10T17:06:00.000000000",
- "2025-09-10T17:07:00.000000000",
- "2025-09-10T17:08:00.000000000",
- "2025-09-10T17:09:00.000000000",
- "2025-09-10T17:10:00.000000000",
- "2025-09-10T17:11:00.000000000",
- "2025-09-10T17:12:00.000000000",
- "2025-09-10T17:13:00.000000000",
- "2025-09-10T17:14:00.000000000",
- "2025-09-10T17:15:00.000000000",
- "2025-09-10T17:16:00.000000000",
- "2025-09-10T17:17:00.000000000",
- "2025-09-10T17:18:00.000000000",
- "2025-09-10T17:19:00.000000000",
- "2025-09-10T17:20:00.000000000",
- "2025-09-10T17:21:00.000000000",
- "2025-09-10T17:22:00.000000000",
- "2025-09-10T17:23:00.000000000",
- "2025-09-10T17:24:00.000000000",
- "2025-09-10T17:25:00.000000000",
- "2025-09-10T17:26:00.000000000",
- "2025-09-10T17:27:00.000000000",
- "2025-09-10T17:28:00.000000000",
- "2025-09-10T17:29:00.000000000",
- "2025-09-10T17:30:00.000000000",
- "2025-09-10T17:31:00.000000000",
- "2025-09-10T17:32:00.000000000",
- "2025-09-10T17:33:00.000000000",
- "2025-09-10T17:34:00.000000000",
- "2025-09-10T17:35:00.000000000",
- "2025-09-10T17:36:00.000000000",
- "2025-09-10T17:37:00.000000000",
- "2025-09-10T17:38:00.000000000",
- "2025-09-10T17:39:00.000000000",
- "2025-09-10T17:40:00.000000000",
- "2025-09-10T17:41:00.000000000",
- "2025-09-10T17:42:00.000000000",
- "2025-09-10T17:43:00.000000000",
- "2025-09-10T17:44:00.000000000",
- "2025-09-10T17:45:00.000000000",
- "2025-09-10T17:46:00.000000000",
- "2025-09-10T17:47:00.000000000",
- "2025-09-10T17:48:00.000000000",
- "2025-09-10T17:49:00.000000000",
- "2025-09-10T17:50:00.000000000",
- "2025-09-10T17:51:00.000000000",
- "2025-09-10T17:52:00.000000000",
- "2025-09-10T17:53:00.000000000",
- "2025-09-10T17:54:00.000000000",
- "2025-09-10T17:55:00.000000000",
- "2025-09-10T17:56:00.000000000",
- "2025-09-10T17:57:00.000000000",
- "2025-09-10T17:58:00.000000000",
- "2025-09-10T17:59:00.000000000",
- "2025-09-10T18:00:00.000000000",
- "2025-09-10T18:01:00.000000000",
- "2025-09-10T18:02:00.000000000",
- "2025-09-10T18:03:00.000000000",
- "2025-09-10T18:04:00.000000000",
- "2025-09-10T18:05:00.000000000",
- "2025-09-10T18:06:00.000000000",
- "2025-09-10T18:07:00.000000000",
- "2025-09-10T18:08:00.000000000",
- "2025-09-10T18:09:00.000000000",
- "2025-09-10T18:10:00.000000000",
- "2025-09-10T18:11:00.000000000",
- "2025-09-10T18:12:00.000000000",
- "2025-09-10T18:13:00.000000000",
- "2025-09-10T18:14:00.000000000",
- "2025-09-10T18:15:00.000000000",
- "2025-09-10T18:16:00.000000000",
- "2025-09-10T18:17:00.000000000",
- "2025-09-10T18:18:00.000000000",
- "2025-09-10T18:19:00.000000000",
- "2025-09-10T18:20:00.000000000",
- "2025-09-10T18:21:00.000000000",
- "2025-09-10T18:22:00.000000000",
- "2025-09-10T18:23:00.000000000",
- "2025-09-10T18:24:00.000000000",
- "2025-09-10T18:25:00.000000000",
- "2025-09-10T18:26:00.000000000",
- "2025-09-10T18:27:00.000000000",
- "2025-09-10T18:28:00.000000000",
- "2025-09-10T18:29:00.000000000",
- "2025-09-10T18:30:00.000000000",
- "2025-09-10T18:31:00.000000000",
- "2025-09-10T18:32:00.000000000",
- "2025-09-10T18:33:00.000000000",
- "2025-09-10T18:34:00.000000000",
- "2025-09-10T18:35:00.000000000",
- "2025-09-10T18:36:00.000000000",
- "2025-09-10T18:37:00.000000000",
- "2025-09-10T18:38:00.000000000",
- "2025-09-10T18:39:00.000000000",
- "2025-09-10T18:40:00.000000000",
- "2025-09-10T18:41:00.000000000",
- "2025-09-10T18:42:00.000000000",
- "2025-09-10T18:43:00.000000000",
- "2025-09-10T18:44:00.000000000",
- "2025-09-10T18:45:00.000000000",
- "2025-09-10T18:46:00.000000000",
- "2025-09-10T18:47:00.000000000",
- "2025-09-10T18:48:00.000000000",
- "2025-09-10T18:49:00.000000000",
- "2025-09-10T18:50:00.000000000",
- "2025-09-10T18:51:00.000000000",
- "2025-09-10T18:52:00.000000000",
- "2025-09-10T18:53:00.000000000",
- "2025-09-10T18:54:00.000000000",
- "2025-09-10T18:55:00.000000000",
- "2025-09-10T18:56:00.000000000",
- "2025-09-10T18:57:00.000000000",
- "2025-09-10T18:58:00.000000000",
- "2025-09-10T18:59:00.000000000",
- "2025-09-10T19:00:00.000000000",
- "2025-09-10T19:01:00.000000000",
- "2025-09-10T19:02:00.000000000",
- "2025-09-10T19:03:00.000000000",
- "2025-09-10T19:04:00.000000000",
- "2025-09-10T19:05:00.000000000",
- "2025-09-10T19:06:00.000000000",
- "2025-09-10T19:07:00.000000000",
- "2025-09-10T19:08:00.000000000",
- "2025-09-10T19:09:00.000000000",
- "2025-09-10T19:10:00.000000000",
- "2025-09-10T19:11:00.000000000",
- "2025-09-10T19:12:00.000000000",
- "2025-09-10T19:13:00.000000000",
- "2025-09-10T19:14:00.000000000",
- "2025-09-10T19:15:00.000000000",
- "2025-09-10T19:16:00.000000000",
- "2025-09-10T19:17:00.000000000",
- "2025-09-10T19:18:00.000000000",
- "2025-09-10T19:19:00.000000000",
- "2025-09-10T19:20:00.000000000",
- "2025-09-10T19:21:00.000000000",
- "2025-09-10T19:22:00.000000000",
- "2025-09-10T19:23:00.000000000",
- "2025-09-10T19:24:00.000000000",
- "2025-09-10T19:25:00.000000000",
- "2025-09-10T19:26:00.000000000",
- "2025-09-10T19:27:00.000000000",
- "2025-09-10T19:28:00.000000000",
- "2025-09-10T19:29:00.000000000",
- "2025-09-10T19:30:00.000000000",
- "2025-09-10T19:31:00.000000000",
- "2025-09-10T19:32:00.000000000",
- "2025-09-10T19:33:00.000000000",
- "2025-09-10T19:34:00.000000000",
- "2025-09-10T19:35:00.000000000",
- "2025-09-10T19:36:00.000000000",
- "2025-09-10T19:37:00.000000000",
- "2025-09-10T19:38:00.000000000",
- "2025-09-10T19:39:00.000000000",
- "2025-09-10T19:40:00.000000000",
- "2025-09-10T19:41:00.000000000",
- "2025-09-10T19:42:00.000000000",
- "2025-09-10T19:43:00.000000000",
- "2025-09-10T19:44:00.000000000",
- "2025-09-10T19:45:00.000000000",
- "2025-09-10T19:46:00.000000000",
- "2025-09-10T19:47:00.000000000",
- "2025-09-10T19:48:00.000000000",
- "2025-09-10T19:49:00.000000000",
- "2025-09-10T19:50:00.000000000",
- "2025-09-10T19:51:00.000000000",
- "2025-09-10T19:52:00.000000000",
- "2025-09-10T19:53:00.000000000",
- "2025-09-10T19:54:00.000000000",
- "2025-09-10T19:55:00.000000000",
- "2025-09-10T19:56:00.000000000",
- "2025-09-10T19:57:00.000000000",
- "2025-09-10T19:58:00.000000000",
- "2025-09-10T19:59:00.000000000",
- "2025-09-10T20:00:00.000000000",
- "2025-09-10T20:01:00.000000000",
- "2025-09-10T20:02:00.000000000",
- "2025-09-10T20:03:00.000000000",
- "2025-09-10T20:04:00.000000000",
- "2025-09-10T20:05:00.000000000",
- "2025-09-10T20:06:00.000000000",
- "2025-09-10T20:07:00.000000000",
- "2025-09-10T20:08:00.000000000",
- "2025-09-10T20:09:00.000000000",
- "2025-09-10T20:10:00.000000000",
- "2025-09-10T20:11:00.000000000",
- "2025-09-10T20:12:00.000000000",
- "2025-09-10T20:13:00.000000000",
- "2025-09-10T20:14:00.000000000",
- "2025-09-10T20:15:00.000000000",
- "2025-09-10T20:16:00.000000000",
- "2025-09-10T20:17:00.000000000",
- "2025-09-10T20:18:00.000000000",
- "2025-09-10T20:19:00.000000000",
- "2025-09-10T20:20:00.000000000",
- "2025-09-10T20:21:00.000000000",
- "2025-09-10T20:22:00.000000000",
- "2025-09-10T20:23:00.000000000",
- "2025-09-10T20:24:00.000000000",
- "2025-09-10T20:25:00.000000000",
- "2025-09-10T20:26:00.000000000",
- "2025-09-10T20:27:00.000000000",
- "2025-09-10T20:28:00.000000000",
- "2025-09-10T20:29:00.000000000",
- "2025-09-10T20:30:00.000000000",
- "2025-09-10T20:31:00.000000000",
- "2025-09-10T20:32:00.000000000",
- "2025-09-10T20:33:00.000000000",
- "2025-09-10T20:34:00.000000000",
- "2025-09-10T20:35:00.000000000",
- "2025-09-10T20:36:00.000000000",
- "2025-09-10T20:37:00.000000000",
- "2025-09-10T20:38:00.000000000",
- "2025-09-10T20:39:00.000000000",
- "2025-09-10T20:40:00.000000000",
- "2025-09-10T20:41:00.000000000",
- "2025-09-10T20:42:00.000000000",
- "2025-09-10T20:43:00.000000000",
- "2025-09-10T20:44:00.000000000",
- "2025-09-10T20:45:00.000000000",
- "2025-09-10T20:46:00.000000000",
- "2025-09-10T20:47:00.000000000",
- "2025-09-10T20:48:00.000000000",
- "2025-09-10T20:49:00.000000000",
- "2025-09-10T20:50:00.000000000",
- "2025-09-10T20:51:00.000000000",
- "2025-09-10T20:52:00.000000000",
- "2025-09-10T20:53:00.000000000",
- "2025-09-10T20:54:00.000000000",
- "2025-09-10T20:55:00.000000000",
- "2025-09-10T20:56:00.000000000",
- "2025-09-10T20:57:00.000000000",
- "2025-09-10T20:58:00.000000000",
- "2025-09-10T20:59:00.000000000",
- "2025-09-10T21:00:00.000000000",
- "2025-09-10T21:01:00.000000000",
- "2025-09-10T21:02:00.000000000",
- "2025-09-10T21:03:00.000000000",
- "2025-09-10T21:04:00.000000000",
- "2025-09-10T21:05:00.000000000",
- "2025-09-10T21:06:00.000000000",
- "2025-09-10T21:07:00.000000000",
- "2025-09-10T21:08:00.000000000",
- "2025-09-10T21:09:00.000000000",
- "2025-09-10T21:10:00.000000000",
- "2025-09-10T21:11:00.000000000",
- "2025-09-10T21:12:00.000000000",
- "2025-09-10T21:13:00.000000000",
- "2025-09-10T21:14:00.000000000",
- "2025-09-10T21:15:00.000000000",
- "2025-09-10T21:16:00.000000000",
- "2025-09-10T21:17:00.000000000",
- "2025-09-10T21:18:00.000000000",
- "2025-09-10T21:19:00.000000000",
- "2025-09-10T21:20:00.000000000",
- "2025-09-10T21:21:00.000000000",
- "2025-09-10T21:22:00.000000000",
- "2025-09-10T21:23:00.000000000",
- "2025-09-10T21:24:00.000000000",
- "2025-09-10T21:25:00.000000000",
- "2025-09-10T21:26:00.000000000",
- "2025-09-10T21:27:00.000000000",
- "2025-09-10T21:28:00.000000000",
- "2025-09-10T21:29:00.000000000",
- "2025-09-10T21:30:00.000000000",
- "2025-09-10T21:31:00.000000000",
- "2025-09-10T21:32:00.000000000",
- "2025-09-10T21:33:00.000000000",
- "2025-09-10T21:34:00.000000000",
- "2025-09-10T21:35:00.000000000",
- "2025-09-10T21:36:00.000000000",
- "2025-09-10T21:37:00.000000000",
- "2025-09-10T21:38:00.000000000",
- "2025-09-10T21:39:00.000000000",
- "2025-09-10T21:40:00.000000000",
- "2025-09-10T21:41:00.000000000",
- "2025-09-10T21:42:00.000000000",
- "2025-09-10T21:43:00.000000000",
- "2025-09-10T21:44:00.000000000",
- "2025-09-10T21:45:00.000000000",
- "2025-09-10T21:46:00.000000000",
- "2025-09-10T21:47:00.000000000",
- "2025-09-10T21:48:00.000000000",
- "2025-09-10T21:49:00.000000000",
- "2025-09-10T21:50:00.000000000",
- "2025-09-10T21:51:00.000000000",
- "2025-09-10T21:52:00.000000000",
- "2025-09-10T21:53:00.000000000",
- "2025-09-10T21:54:00.000000000",
- "2025-09-10T21:55:00.000000000",
- "2025-09-10T21:56:00.000000000",
- "2025-09-10T21:57:00.000000000",
- "2025-09-10T21:58:00.000000000",
- "2025-09-10T21:59:00.000000000",
- "2025-09-10T22:00:00.000000000",
- "2025-09-10T22:01:00.000000000",
- "2025-09-10T22:02:00.000000000",
- "2025-09-10T22:03:00.000000000",
- "2025-09-10T22:04:00.000000000",
- "2025-09-10T22:05:00.000000000",
- "2025-09-10T22:06:00.000000000",
- "2025-09-10T22:07:00.000000000",
- "2025-09-10T22:08:00.000000000",
- "2025-09-10T22:09:00.000000000",
- "2025-09-10T22:10:00.000000000",
- "2025-09-10T22:11:00.000000000",
- "2025-09-10T22:12:00.000000000",
- "2025-09-10T22:13:00.000000000",
- "2025-09-10T22:14:00.000000000",
- "2025-09-10T22:15:00.000000000",
- "2025-09-10T22:16:00.000000000",
- "2025-09-10T22:17:00.000000000",
- "2025-09-10T22:18:00.000000000",
- "2025-09-10T22:19:00.000000000",
- "2025-09-10T22:20:00.000000000",
- "2025-09-10T22:21:00.000000000",
- "2025-09-10T22:22:00.000000000",
- "2025-09-10T22:23:00.000000000",
- "2025-09-10T22:24:00.000000000",
- "2025-09-10T22:25:00.000000000",
- "2025-09-10T22:26:00.000000000",
- "2025-09-10T22:27:00.000000000",
- "2025-09-10T22:28:00.000000000",
- "2025-09-10T22:29:00.000000000"
- ],
- "xaxis": "x2",
- "y": {
- "bdata": "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",
- "dtype": "f8"
- },
- "yaxis": "y2"
- },
- {
- "hovertemplate": "%{text}",
- "marker": {
- "color": "green",
- "size": 14,
- "symbol": "triangle-up"
- },
- "mode": "markers",
- "name": "ADA-USDT BUY OPEN",
- "showlegend": true,
- "text": [
- "ADA-USDT BUY OPEN OPEN
Time: 2025-09-10 13:34:00
Normalized Price: 1.0124
Actual Price: $0.89",
- "ADA-USDT BUY OPEN OPEN
Time: 2025-09-10 13:39:00
Normalized Price: 1.0141
Actual Price: $0.89",
- "ADA-USDT BUY OPEN OPEN
Time: 2025-09-10 15:30:00
Normalized Price: 1.0154
Actual Price: $0.89",
- "ADA-USDT BUY OPEN OPEN
Time: 2025-09-10 16:04:00
Normalized Price: 1.0151
Actual Price: $0.89",
- "ADA-USDT BUY OPEN OPEN
Time: 2025-09-10 16:10:00
Normalized Price: 1.0129
Actual Price: $0.88",
- "ADA-USDT BUY OPEN OPEN
Time: 2025-09-10 16:43:00
Normalized Price: 1.0120
Actual Price: $0.88",
- "ADA-USDT BUY OPEN OPEN
Time: 2025-09-10 16:47:00
Normalized Price: 1.0126
Actual Price: $0.89",
- "ADA-USDT BUY OPEN OPEN
Time: 2025-09-10 18:36:00
Normalized Price: 1.0109
Actual Price: $0.88",
- "ADA-USDT BUY OPEN OPEN
Time: 2025-09-10 19:11:00
Normalized Price: 1.0071
Actual Price: $0.88",
- "ADA-USDT BUY OPEN OPEN
Time: 2025-09-10 20:54:00
Normalized Price: 1.0062
Actual Price: $0.88"
- ],
- "type": "scatter",
- "x": [
- "2025-09-10T13:34:00",
- "2025-09-10T13:39:00",
- "2025-09-10T15:30:00",
- "2025-09-10T16:04:00",
- "2025-09-10T16:10:00",
- "2025-09-10T16:43:00",
- "2025-09-10T16:47:00",
- "2025-09-10T18:36:00",
- "2025-09-10T19:11:00",
- "2025-09-10T20:54:00"
- ],
- "xaxis": "x2",
- "y": [
- 1.0123527393343246,
- 1.0140683975752032,
- 1.0154409241679059,
- 1.01509779251973,
- 1.0129246254146176,
- 1.012009607686149,
- 1.0125814937664417,
- 1.0108658355255633,
- 1.0070913873956309,
- 1.0061763696671624
- ],
- "yaxis": "y2"
- },
- {
- "hovertemplate": "%{text}",
- "marker": {
- "color": "red",
- "size": 14,
- "symbol": "triangle-down"
- },
- "mode": "markers",
- "name": "SOL-USDT SELL OPEN",
- "showlegend": true,
- "text": [
- "SOL-USDT SELL OPEN OPEN
Time: 2025-09-10 13:34:00
Normalized Price: 1.0147
Actual Price: $223.07",
- "SOL-USDT SELL OPEN OPEN
Time: 2025-09-10 13:39:00
Normalized Price: 1.0178
Actual Price: $223.74",
- "SOL-USDT SELL OPEN OPEN
Time: 2025-09-10 15:30:00
Normalized Price: 1.0165
Actual Price: $223.34",
- "SOL-USDT SELL OPEN OPEN
Time: 2025-09-10 16:04:00
Normalized Price: 1.0143
Actual Price: $222.87",
- "SOL-USDT SELL OPEN OPEN
Time: 2025-09-10 16:10:00
Normalized Price: 1.0149
Actual Price: $222.84",
- "SOL-USDT SELL OPEN OPEN
Time: 2025-09-10 16:43:00
Normalized Price: 1.0147
Actual Price: $222.78",
- "SOL-USDT SELL OPEN OPEN
Time: 2025-09-10 16:47:00
Normalized Price: 1.0156
Actual Price: $223.08",
- "SOL-USDT SELL OPEN OPEN
Time: 2025-09-10 18:36:00
Normalized Price: 1.0122
Actual Price: $222.44",
- "SOL-USDT SELL OPEN OPEN
Time: 2025-09-10 19:11:00
Normalized Price: 1.0127
Actual Price: $222.41",
- "SOL-USDT SELL OPEN OPEN
Time: 2025-09-10 20:54:00
Normalized Price: 1.0126
Actual Price: $222.45"
- ],
- "type": "scatter",
- "x": [
- "2025-09-10T13:34:00",
- "2025-09-10T13:39:00",
- "2025-09-10T15:30:00",
- "2025-09-10T16:04:00",
- "2025-09-10T16:10:00",
- "2025-09-10T16:43:00",
- "2025-09-10T16:47:00",
- "2025-09-10T18:36:00",
- "2025-09-10T19:11:00",
- "2025-09-10T20:54:00"
- ],
- "xaxis": "x2",
- "y": [
- 1.0147018661811562,
- 1.017796995903505,
- 1.0164770141101502,
- 1.0142922166590806,
- 1.014929449248976,
- 1.0147473827947202,
- 1.015612198452435,
- 1.0121984524351388,
- 1.0127446517979062,
- 1.0125625853436506
- ],
- "yaxis": "y2"
- },
- {
- "hovertemplate": "%{text}",
- "marker": {
- "color": "red",
- "line": {
- "color": "black",
- "width": 2
- },
- "size": 14,
- "symbol": "triangle-down"
- },
- "mode": "markers",
- "name": "ADA-USDT SELL CLOSE",
- "showlegend": true,
- "text": [
- "ADA-USDT SELL CLOSE CLOSE
Time: 2025-09-10 13:35:00
Normalized Price: 1.0133
Actual Price: $0.89",
- "ADA-USDT SELL CLOSE CLOSE
Time: 2025-09-10 13:42:00
Normalized Price: 1.0176
Actual Price: $0.89",
- "ADA-USDT SELL CLOSE CLOSE
Time: 2025-09-10 15:47:00
Normalized Price: 1.0172
Actual Price: $0.89",
- "ADA-USDT SELL CLOSE CLOSE
Time: 2025-09-10 16:05:00
Normalized Price: 1.0149
Actual Price: $0.89",
- "ADA-USDT SELL CLOSE CLOSE
Time: 2025-09-10 16:41:00
Normalized Price: 1.0120
Actual Price: $0.88",
- "ADA-USDT SELL CLOSE CLOSE
Time: 2025-09-10 16:46:00
Normalized Price: 1.0122
Actual Price: $0.88",
- "ADA-USDT SELL CLOSE CLOSE
Time: 2025-09-10 16:49:00
Normalized Price: 1.0137
Actual Price: $0.89",
- "ADA-USDT SELL CLOSE CLOSE
Time: 2025-09-10 19:10:00
Normalized Price: 1.0073
Actual Price: $0.88",
- "ADA-USDT SELL CLOSE CLOSE
Time: 2025-09-10 20:00:00
Normalized Price: 1.0039
Actual Price: $0.88",
- "ADA-USDT SELL CLOSE CLOSE
Time: 2025-09-10 21:03:00
Normalized Price: 1.0085
Actual Price: $0.88"
- ],
- "type": "scatter",
- "x": [
- "2025-09-10T13:35:00",
- "2025-09-10T13:42:00",
- "2025-09-10T15:47:00",
- "2025-09-10T16:05:00",
- "2025-09-10T16:41:00",
- "2025-09-10T16:46:00",
- "2025-09-10T16:49:00",
- "2025-09-10T19:10:00",
- "2025-09-10T20:00:00",
- "2025-09-10T21:03:00"
- ],
- "xaxis": "x2",
- "y": [
- 1.0132677570627933,
- 1.0176140912730185,
- 1.0171565824087843,
- 1.0148690380876129,
- 1.012009607686149,
- 1.012238362118266,
- 1.0137252659270273,
- 1.007320141827748,
- 1.0038888253459912,
- 1.0084639139883336
- ],
- "yaxis": "y2"
- },
- {
- "hovertemplate": "%{text}",
- "marker": {
- "color": "green",
- "line": {
- "color": "black",
- "width": 2
- },
- "size": 14,
- "symbol": "triangle-up"
- },
- "mode": "markers",
- "name": "SOL-USDT BUY CLOSE",
- "showlegend": true,
- "text": [
- "SOL-USDT BUY CLOSE CLOSE
Time: 2025-09-10 13:35:00
Normalized Price: 1.0154
Actual Price: $222.99",
- "SOL-USDT BUY CLOSE CLOSE
Time: 2025-09-10 13:42:00
Normalized Price: 1.0189
Actual Price: $224.18",
- "SOL-USDT BUY CLOSE CLOSE
Time: 2025-09-10 15:47:00
Normalized Price: 1.0155
Actual Price: $223.03",
- "SOL-USDT BUY CLOSE CLOSE
Time: 2025-09-10 16:05:00
Normalized Price: 1.0146
Actual Price: $222.87",
- "SOL-USDT BUY CLOSE CLOSE
Time: 2025-09-10 16:41:00
Normalized Price: 1.0142
Actual Price: $222.89",
- "SOL-USDT BUY CLOSE CLOSE
Time: 2025-09-10 16:46:00
Normalized Price: 1.0148
Actual Price: $223.09",
- "SOL-USDT BUY CLOSE CLOSE
Time: 2025-09-10 16:49:00
Normalized Price: 1.0152
Actual Price: $223.09",
- "SOL-USDT BUY CLOSE CLOSE
Time: 2025-09-10 19:10:00
Normalized Price: 1.0137
Actual Price: $222.61",
- "SOL-USDT BUY CLOSE CLOSE
Time: 2025-09-10 20:00:00
Normalized Price: 1.0072
Actual Price: $221.35",
- "SOL-USDT BUY CLOSE CLOSE
Time: 2025-09-10 21:03:00
Normalized Price: 1.0142
Actual Price: $222.89"
- ],
- "type": "scatter",
- "x": [
- "2025-09-10T13:35:00",
- "2025-09-10T13:42:00",
- "2025-09-10T15:47:00",
- "2025-09-10T16:05:00",
- "2025-09-10T16:41:00",
- "2025-09-10T16:46:00",
- "2025-09-10T16:49:00",
- "2025-09-10T19:10:00",
- "2025-09-10T20:00:00",
- "2025-09-10T21:03:00"
- ],
- "xaxis": "x2",
- "y": [
- 1.0153846153846156,
- 1.0188893946290396,
- 1.0154756486117433,
- 1.0145653163404644,
- 1.0142467000455166,
- 1.014838416021848,
- 1.0151570323167958,
- 1.0137460172963133,
- 1.0071916249431043,
- 1.0141556668183889
- ],
- "yaxis": "y2"
- },
- {
- "hovertemplate": "%{text}",
- "marker": {
- "color": "red",
- "size": 14,
- "symbol": "triangle-down"
- },
- "mode": "markers",
- "name": "ADA-USDT SELL OPEN",
- "showlegend": true,
- "text": [
- "ADA-USDT SELL OPEN OPEN
Time: 2025-09-10 13:50:00
Normalized Price: 1.0213
Actual Price: $0.89",
- "ADA-USDT SELL OPEN OPEN
Time: 2025-09-10 14:03:00
Normalized Price: 1.0201
Actual Price: $0.89",
- "ADA-USDT SELL OPEN OPEN
Time: 2025-09-10 14:08:00
Normalized Price: 1.0239
Actual Price: $0.89",
- "ADA-USDT SELL OPEN OPEN
Time: 2025-09-10 14:48:00
Normalized Price: 1.0164
Actual Price: $0.89",
- "ADA-USDT SELL OPEN OPEN
Time: 2025-09-10 15:04:00
Normalized Price: 1.0166
Actual Price: $0.89",
- "ADA-USDT SELL OPEN OPEN
Time: 2025-09-10 15:52:00
Normalized Price: 1.0173
Actual Price: $0.89",
- "ADA-USDT SELL OPEN OPEN
Time: 2025-09-10 17:00:00
Normalized Price: 1.0188
Actual Price: $0.89",
- "ADA-USDT SELL OPEN OPEN
Time: 2025-09-10 17:04:00
Normalized Price: 1.0190
Actual Price: $0.89",
- "ADA-USDT SELL OPEN OPEN
Time: 2025-09-10 17:57:00
Normalized Price: 1.0149
Actual Price: $0.89",
- "ADA-USDT SELL OPEN OPEN
Time: 2025-09-10 18:05:00
Normalized Price: 1.0161
Actual Price: $0.89",
- "ADA-USDT SELL OPEN OPEN
Time: 2025-09-10 18:12:00
Normalized Price: 1.0138
Actual Price: $0.89",
- "ADA-USDT SELL OPEN OPEN
Time: 2025-09-10 20:37:00
Normalized Price: 1.0067
Actual Price: $0.88",
- "ADA-USDT SELL OPEN OPEN
Time: 2025-09-10 21:12:00
Normalized Price: 1.0108
Actual Price: $0.88",
- "ADA-USDT SELL OPEN OPEN
Time: 2025-09-10 22:03:00
Normalized Price: 1.0132
Actual Price: $0.89",
- "ADA-USDT SELL OPEN OPEN
Time: 2025-09-10 22:16:00
Normalized Price: 1.0143
Actual Price: $0.89"
- ],
- "type": "scatter",
- "x": [
- "2025-09-10T13:50:00",
- "2025-09-10T14:03:00",
- "2025-09-10T14:08:00",
- "2025-09-10T14:48:00",
- "2025-09-10T15:04:00",
- "2025-09-10T15:52:00",
- "2025-09-10T17:00:00",
- "2025-09-10T17:04:00",
- "2025-09-10T17:57:00",
- "2025-09-10T18:05:00",
- "2025-09-10T18:12:00",
- "2025-09-10T20:37:00",
- "2025-09-10T21:12:00",
- "2025-09-10T22:03:00",
- "2025-09-10T22:16:00"
- ],
- "xaxis": "x2",
- "y": [
- 1.0212741621868924,
- 1.0201303900263068,
- 1.0239048381562392,
- 1.0163559418963741,
- 1.0165846963284915,
- 1.0172709596248428,
- 1.018757863433604,
- 1.0189866178657212,
- 1.0148690380876129,
- 1.0161271874642572,
- 1.0138396431430858,
- 1.0067482557474552,
- 1.0107514583095047,
- 1.0131533798467347,
- 1.0142971520073203
- ],
- "yaxis": "y2"
- },
- {
- "hovertemplate": "%{text}",
- "marker": {
- "color": "green",
- "size": 14,
- "symbol": "triangle-up"
- },
- "mode": "markers",
- "name": "SOL-USDT BUY OPEN",
- "showlegend": true,
- "text": [
- "SOL-USDT BUY OPEN OPEN
Time: 2025-09-10 13:50:00
Normalized Price: 1.0208
Actual Price: $224.16",
- "SOL-USDT BUY OPEN OPEN
Time: 2025-09-10 14:03:00
Normalized Price: 1.0214
Actual Price: $224.40",
- "SOL-USDT BUY OPEN OPEN
Time: 2025-09-10 14:08:00
Normalized Price: 1.0223
Actual Price: $224.40",
- "SOL-USDT BUY OPEN OPEN
Time: 2025-09-10 14:48:00
Normalized Price: 1.0152
Actual Price: $223.17",
- "SOL-USDT BUY OPEN OPEN
Time: 2025-09-10 15:04:00
Normalized Price: 1.0159
Actual Price: $223.40",
- "SOL-USDT BUY OPEN OPEN
Time: 2025-09-10 15:52:00
Normalized Price: 1.0158
Actual Price: $223.19",
- "SOL-USDT BUY OPEN OPEN
Time: 2025-09-10 17:00:00
Normalized Price: 1.0182
Actual Price: $223.83",
- "SOL-USDT BUY OPEN OPEN
Time: 2025-09-10 17:04:00
Normalized Price: 1.0187
Actual Price: $223.81",
- "SOL-USDT BUY OPEN OPEN
Time: 2025-09-10 17:57:00
Normalized Price: 1.0128
Actual Price: $222.58",
- "SOL-USDT BUY OPEN OPEN
Time: 2025-09-10 18:05:00
Normalized Price: 1.0143
Actual Price: $222.79",
- "SOL-USDT BUY OPEN OPEN
Time: 2025-09-10 18:12:00
Normalized Price: 1.0121
Actual Price: $222.34",
- "SOL-USDT BUY OPEN OPEN
Time: 2025-09-10 20:37:00
Normalized Price: 1.0095
Actual Price: $221.76",
- "SOL-USDT BUY OPEN OPEN
Time: 2025-09-10 21:12:00
Normalized Price: 1.0140
Actual Price: $222.77",
- "SOL-USDT BUY OPEN OPEN
Time: 2025-09-10 22:03:00
Normalized Price: 1.0172
Actual Price: $223.59",
- "SOL-USDT BUY OPEN OPEN
Time: 2025-09-10 22:16:00
Normalized Price: 1.0181
Actual Price: $223.72"
- ],
- "type": "scatter",
- "x": [
- "2025-09-10T13:50:00",
- "2025-09-10T14:03:00",
- "2025-09-10T14:08:00",
- "2025-09-10T14:48:00",
- "2025-09-10T15:04:00",
- "2025-09-10T15:52:00",
- "2025-09-10T17:00:00",
- "2025-09-10T17:04:00",
- "2025-09-10T17:57:00",
- "2025-09-10T18:05:00",
- "2025-09-10T18:12:00",
- "2025-09-10T20:37:00",
- "2025-09-10T21:12:00",
- "2025-09-10T22:03:00",
- "2025-09-10T22:16:00"
- ],
- "xaxis": "x2",
- "y": [
- 1.0208466090122896,
- 1.021438324988621,
- 1.0223486572598999,
- 1.0152025489303595,
- 1.015885298133819,
- 1.015794264906691,
- 1.0181611288120165,
- 1.0187073281747838,
- 1.0127901684114702,
- 1.0142922166590806,
- 1.012107419208011,
- 1.0095129722348657,
- 1.013973600364133,
- 1.0172052799271734,
- 1.0180700955848885
- ],
- "yaxis": "y2"
- },
- {
- "hovertemplate": "%{text}",
- "marker": {
- "color": "green",
- "line": {
- "color": "black",
- "width": 2
- },
- "size": 14,
- "symbol": "triangle-up"
- },
- "mode": "markers",
- "name": "ADA-USDT BUY CLOSE",
- "showlegend": true,
- "text": [
- "ADA-USDT BUY CLOSE CLOSE
Time: 2025-09-10 13:58:00
Normalized Price: 1.0191
Actual Price: $0.89",
- "ADA-USDT BUY CLOSE CLOSE
Time: 2025-09-10 14:04:00
Normalized Price: 1.0209
Actual Price: $0.89",
- "ADA-USDT BUY CLOSE CLOSE
Time: 2025-09-10 14:45:00
Normalized Price: 1.0167
Actual Price: $0.89",
- "ADA-USDT BUY CLOSE CLOSE
Time: 2025-09-10 14:56:00
Normalized Price: 1.0152
Actual Price: $0.89",
- "ADA-USDT BUY CLOSE CLOSE
Time: 2025-09-10 15:05:00
Normalized Price: 1.0169
Actual Price: $0.89",
- "ADA-USDT BUY CLOSE CLOSE
Time: 2025-09-10 15:54:00
Normalized Price: 1.0176
Actual Price: $0.89",
- "ADA-USDT BUY CLOSE CLOSE
Time: 2025-09-10 17:02:00
Normalized Price: 1.0174
Actual Price: $0.89",
- "ADA-USDT BUY CLOSE CLOSE
Time: 2025-09-10 17:50:00
Normalized Price: 1.0151
Actual Price: $0.89",
- "ADA-USDT BUY CLOSE CLOSE
Time: 2025-09-10 18:01:00
Normalized Price: 1.0146
Actual Price: $0.89",
- "ADA-USDT BUY CLOSE CLOSE
Time: 2025-09-10 18:08:00
Normalized Price: 1.0149
Actual Price: $0.89",
- "ADA-USDT BUY CLOSE CLOSE
Time: 2025-09-10 18:15:00
Normalized Price: 1.0135
Actual Price: $0.89",
- "ADA-USDT BUY CLOSE CLOSE
Time: 2025-09-10 20:45:00
Normalized Price: 1.0071
Actual Price: $0.88",
- "ADA-USDT BUY CLOSE CLOSE
Time: 2025-09-10 21:17:00
Normalized Price: 1.0112
Actual Price: $0.88",
- "ADA-USDT BUY CLOSE CLOSE
Time: 2025-09-10 22:05:00
Normalized Price: 1.0128
Actual Price: $0.89",
- "ADA-USDT BUY CLOSE CLOSE
Time: 2025-09-10 22:26:00
Normalized Price: 1.0129
Actual Price: $0.89"
- ],
- "type": "scatter",
- "x": [
- "2025-09-10T13:58:00",
- "2025-09-10T14:04:00",
- "2025-09-10T14:45:00",
- "2025-09-10T14:56:00",
- "2025-09-10T15:05:00",
- "2025-09-10T15:54:00",
- "2025-09-10T17:02:00",
- "2025-09-10T17:50:00",
- "2025-09-10T18:01:00",
- "2025-09-10T18:08:00",
- "2025-09-10T18:15:00",
- "2025-09-10T20:45:00",
- "2025-09-10T21:17:00",
- "2025-09-10T22:05:00",
- "2025-09-10T22:26:00"
- ],
- "xaxis": "x2",
- "y": [
- 1.0191009950817798,
- 1.0209310305387167,
- 1.01669907354455,
- 1.0152121697357885,
- 1.0169278279766671,
- 1.0176140912730185,
- 1.0173853368409014,
- 1.01509779251973,
- 1.014640283655496,
- 1.0148690380876129,
- 1.0134965114949102,
- 1.0070913873956309,
- 1.011208967173739,
- 1.0128102481985588,
- 1.0129246254146176
- ],
- "yaxis": "y2"
- },
- {
- "hovertemplate": "%{text}",
- "marker": {
- "color": "red",
- "line": {
- "color": "black",
- "width": 2
- },
- "size": 14,
- "symbol": "triangle-down"
- },
- "mode": "markers",
- "name": "SOL-USDT SELL CLOSE",
- "showlegend": true,
- "text": [
- "SOL-USDT SELL CLOSE CLOSE
Time: 2025-09-10 13:58:00
Normalized Price: 1.0198
Actual Price: $224.21",
- "SOL-USDT SELL CLOSE CLOSE
Time: 2025-09-10 14:04:00
Normalized Price: 1.0223
Actual Price: $224.70",
- "SOL-USDT SELL CLOSE CLOSE
Time: 2025-09-10 14:45:00
Normalized Price: 1.0162
Actual Price: $223.21",
- "SOL-USDT SELL CLOSE CLOSE
Time: 2025-09-10 14:56:00
Normalized Price: 1.0151
Actual Price: $222.94",
- "SOL-USDT SELL CLOSE CLOSE
Time: 2025-09-10 15:05:00
Normalized Price: 1.0171
Actual Price: $223.75",
- "SOL-USDT SELL CLOSE CLOSE
Time: 2025-09-10 15:54:00
Normalized Price: 1.0171
Actual Price: $223.41",
- "SOL-USDT SELL CLOSE CLOSE
Time: 2025-09-10 17:02:00
Normalized Price: 1.0179
Actual Price: $223.79",
- "SOL-USDT SELL CLOSE CLOSE
Time: 2025-09-10 17:50:00
Normalized Price: 1.0144
Actual Price: $222.93",
- "SOL-USDT SELL CLOSE CLOSE
Time: 2025-09-10 18:01:00
Normalized Price: 1.0137
Actual Price: $222.89",
- "SOL-USDT SELL CLOSE CLOSE
Time: 2025-09-10 18:08:00
Normalized Price: 1.0138
Actual Price: $222.68",
- "SOL-USDT SELL CLOSE CLOSE
Time: 2025-09-10 18:15:00
Normalized Price: 1.0122
Actual Price: $222.28",
- "SOL-USDT SELL CLOSE CLOSE
Time: 2025-09-10 20:45:00
Normalized Price: 1.0113
Actual Price: $222.18",
- "SOL-USDT SELL CLOSE CLOSE
Time: 2025-09-10 21:17:00
Normalized Price: 1.0155
Actual Price: $222.93",
- "SOL-USDT SELL CLOSE CLOSE
Time: 2025-09-10 22:05:00
Normalized Price: 1.0180
Actual Price: $223.66",
- "SOL-USDT SELL CLOSE CLOSE
Time: 2025-09-10 22:26:00
Normalized Price: 1.0181
Actual Price: $223.68"
- ],
- "type": "scatter",
- "x": [
- "2025-09-10T13:58:00",
- "2025-09-10T14:04:00",
- "2025-09-10T14:45:00",
- "2025-09-10T14:56:00",
- "2025-09-10T15:05:00",
- "2025-09-10T15:54:00",
- "2025-09-10T17:02:00",
- "2025-09-10T17:50:00",
- "2025-09-10T18:01:00",
- "2025-09-10T18:08:00",
- "2025-09-10T18:15:00",
- "2025-09-10T20:45:00",
- "2025-09-10T21:17:00",
- "2025-09-10T22:05:00",
- "2025-09-10T22:26:00"
- ],
- "xaxis": "x2",
- "y": [
- 1.0198452435138827,
- 1.0223031406463359,
- 1.0162494310423305,
- 1.0150659990896678,
- 1.0171142467000456,
- 1.0170687300864816,
- 1.0178880291306327,
- 1.0144287664997724,
- 1.0137460172963133,
- 1.013837050523441,
- 1.0122439690487028,
- 1.01128812016386,
- 1.0155211652253073,
- 1.0179790623577607,
- 1.0180700955848885
- ],
- "yaxis": "y2"
- },
- {
- "line": {
- "color": "blue",
- "width": 2
- },
- "name": "ADA-USDT Price",
- "opacity": 0.8,
- "type": "scatter",
- "x": [
- "2025-09-10T11:30:00.000000000",
- "2025-09-10T11:31:00.000000000",
- "2025-09-10T11:32:00.000000000",
- "2025-09-10T11:33:00.000000000",
- "2025-09-10T11:34:00.000000000",
- "2025-09-10T11:35:00.000000000",
- "2025-09-10T11:36:00.000000000",
- "2025-09-10T11:37:00.000000000",
- "2025-09-10T11:38:00.000000000",
- "2025-09-10T11:39:00.000000000",
- "2025-09-10T11:40:00.000000000",
- "2025-09-10T11:41:00.000000000",
- "2025-09-10T11:42:00.000000000",
- "2025-09-10T11:43:00.000000000",
- "2025-09-10T11:44:00.000000000",
- "2025-09-10T11:45:00.000000000",
- "2025-09-10T11:46:00.000000000",
- "2025-09-10T11:47:00.000000000",
- "2025-09-10T11:48:00.000000000",
- "2025-09-10T11:49:00.000000000",
- "2025-09-10T11:50:00.000000000",
- "2025-09-10T11:51:00.000000000",
- "2025-09-10T11:52:00.000000000",
- "2025-09-10T11:53:00.000000000",
- "2025-09-10T11:54:00.000000000",
- "2025-09-10T11:55:00.000000000",
- "2025-09-10T11:56:00.000000000",
- "2025-09-10T11:57:00.000000000",
- "2025-09-10T11:58:00.000000000",
- "2025-09-10T11:59:00.000000000",
- "2025-09-10T12:00:00.000000000",
- "2025-09-10T12:01:00.000000000",
- "2025-09-10T12:02:00.000000000",
- "2025-09-10T12:03:00.000000000",
- "2025-09-10T12:04:00.000000000",
- "2025-09-10T12:05:00.000000000",
- "2025-09-10T12:06:00.000000000",
- "2025-09-10T12:07:00.000000000",
- "2025-09-10T12:08:00.000000000",
- "2025-09-10T12:09:00.000000000",
- "2025-09-10T12:10:00.000000000",
- "2025-09-10T12:11:00.000000000",
- "2025-09-10T12:12:00.000000000",
- "2025-09-10T12:13:00.000000000",
- "2025-09-10T12:14:00.000000000",
- "2025-09-10T12:15:00.000000000",
- "2025-09-10T12:16:00.000000000",
- "2025-09-10T12:17:00.000000000",
- "2025-09-10T12:18:00.000000000",
- "2025-09-10T12:19:00.000000000",
- "2025-09-10T12:20:00.000000000",
- "2025-09-10T12:21:00.000000000",
- "2025-09-10T12:22:00.000000000",
- "2025-09-10T12:23:00.000000000",
- "2025-09-10T12:24:00.000000000",
- "2025-09-10T12:25:00.000000000",
- "2025-09-10T12:26:00.000000000",
- "2025-09-10T12:27:00.000000000",
- "2025-09-10T12:28:00.000000000",
- "2025-09-10T12:29:00.000000000",
- "2025-09-10T12:30:00.000000000",
- "2025-09-10T12:31:00.000000000",
- "2025-09-10T12:32:00.000000000",
- "2025-09-10T12:33:00.000000000",
- "2025-09-10T12:34:00.000000000",
- "2025-09-10T12:35:00.000000000",
- "2025-09-10T12:36:00.000000000",
- "2025-09-10T12:37:00.000000000",
- "2025-09-10T12:38:00.000000000",
- "2025-09-10T12:39:00.000000000",
- "2025-09-10T12:40:00.000000000",
- "2025-09-10T12:41:00.000000000",
- "2025-09-10T12:42:00.000000000",
- "2025-09-10T12:43:00.000000000",
- "2025-09-10T12:44:00.000000000",
- "2025-09-10T12:45:00.000000000",
- "2025-09-10T12:46:00.000000000",
- "2025-09-10T12:47:00.000000000",
- "2025-09-10T12:48:00.000000000",
- "2025-09-10T12:49:00.000000000",
- "2025-09-10T12:50:00.000000000",
- "2025-09-10T12:51:00.000000000",
- "2025-09-10T12:52:00.000000000",
- "2025-09-10T12:53:00.000000000",
- "2025-09-10T12:54:00.000000000",
- "2025-09-10T12:55:00.000000000",
- "2025-09-10T12:56:00.000000000",
- "2025-09-10T12:57:00.000000000",
- "2025-09-10T12:59:00.000000000",
- "2025-09-10T13:00:00.000000000",
- "2025-09-10T13:01:00.000000000",
- "2025-09-10T13:02:00.000000000",
- "2025-09-10T13:03:00.000000000",
- "2025-09-10T13:04:00.000000000",
- "2025-09-10T13:05:00.000000000",
- "2025-09-10T13:06:00.000000000",
- "2025-09-10T13:07:00.000000000",
- "2025-09-10T13:08:00.000000000",
- "2025-09-10T13:09:00.000000000",
- "2025-09-10T13:10:00.000000000",
- "2025-09-10T13:11:00.000000000",
- "2025-09-10T13:12:00.000000000",
- "2025-09-10T13:13:00.000000000",
- "2025-09-10T13:14:00.000000000",
- "2025-09-10T13:15:00.000000000",
- "2025-09-10T13:16:00.000000000",
- "2025-09-10T13:17:00.000000000",
- "2025-09-10T13:18:00.000000000",
- "2025-09-10T13:19:00.000000000",
- "2025-09-10T13:20:00.000000000",
- "2025-09-10T13:21:00.000000000",
- "2025-09-10T13:22:00.000000000",
- "2025-09-10T13:23:00.000000000",
- "2025-09-10T13:24:00.000000000",
- "2025-09-10T13:25:00.000000000",
- "2025-09-10T13:26:00.000000000",
- "2025-09-10T13:27:00.000000000",
- "2025-09-10T13:28:00.000000000",
- "2025-09-10T13:29:00.000000000",
- "2025-09-10T13:30:00.000000000",
- "2025-09-10T13:31:00.000000000",
- "2025-09-10T13:32:00.000000000",
- "2025-09-10T13:33:00.000000000",
- "2025-09-10T13:34:00.000000000",
- "2025-09-10T13:35:00.000000000",
- "2025-09-10T13:36:00.000000000",
- "2025-09-10T13:37:00.000000000",
- "2025-09-10T13:38:00.000000000",
- "2025-09-10T13:39:00.000000000",
- "2025-09-10T13:40:00.000000000",
- "2025-09-10T13:41:00.000000000",
- "2025-09-10T13:42:00.000000000",
- "2025-09-10T13:43:00.000000000",
- "2025-09-10T13:44:00.000000000",
- "2025-09-10T13:45:00.000000000",
- "2025-09-10T13:46:00.000000000",
- "2025-09-10T13:47:00.000000000",
- "2025-09-10T13:48:00.000000000",
- "2025-09-10T13:49:00.000000000",
- "2025-09-10T13:50:00.000000000",
- "2025-09-10T13:51:00.000000000",
- "2025-09-10T13:52:00.000000000",
- "2025-09-10T13:53:00.000000000",
- "2025-09-10T13:54:00.000000000",
- "2025-09-10T13:55:00.000000000",
- "2025-09-10T13:56:00.000000000",
- "2025-09-10T13:57:00.000000000",
- "2025-09-10T13:58:00.000000000",
- "2025-09-10T13:59:00.000000000",
- "2025-09-10T14:00:00.000000000",
- "2025-09-10T14:01:00.000000000",
- "2025-09-10T14:02:00.000000000",
- "2025-09-10T14:03:00.000000000",
- "2025-09-10T14:04:00.000000000",
- "2025-09-10T14:05:00.000000000",
- "2025-09-10T14:06:00.000000000",
- "2025-09-10T14:07:00.000000000",
- "2025-09-10T14:08:00.000000000",
- "2025-09-10T14:09:00.000000000",
- "2025-09-10T14:10:00.000000000",
- "2025-09-10T14:11:00.000000000",
- "2025-09-10T14:12:00.000000000",
- "2025-09-10T14:13:00.000000000",
- "2025-09-10T14:14:00.000000000",
- "2025-09-10T14:15:00.000000000",
- "2025-09-10T14:16:00.000000000",
- "2025-09-10T14:17:00.000000000",
- "2025-09-10T14:18:00.000000000",
- "2025-09-10T14:19:00.000000000",
- "2025-09-10T14:20:00.000000000",
- "2025-09-10T14:21:00.000000000",
- "2025-09-10T14:22:00.000000000",
- "2025-09-10T14:23:00.000000000",
- "2025-09-10T14:24:00.000000000",
- "2025-09-10T14:25:00.000000000",
- "2025-09-10T14:26:00.000000000",
- "2025-09-10T14:27:00.000000000",
- "2025-09-10T14:28:00.000000000",
- "2025-09-10T14:29:00.000000000",
- "2025-09-10T14:30:00.000000000",
- "2025-09-10T14:31:00.000000000",
- "2025-09-10T14:32:00.000000000",
- "2025-09-10T14:33:00.000000000",
- "2025-09-10T14:34:00.000000000",
- "2025-09-10T14:35:00.000000000",
- "2025-09-10T14:36:00.000000000",
- "2025-09-10T14:37:00.000000000",
- "2025-09-10T14:38:00.000000000",
- "2025-09-10T14:39:00.000000000",
- "2025-09-10T14:40:00.000000000",
- "2025-09-10T14:41:00.000000000",
- "2025-09-10T14:42:00.000000000",
- "2025-09-10T14:43:00.000000000",
- "2025-09-10T14:44:00.000000000",
- "2025-09-10T14:45:00.000000000",
- "2025-09-10T14:46:00.000000000",
- "2025-09-10T14:47:00.000000000",
- "2025-09-10T14:48:00.000000000",
- "2025-09-10T14:49:00.000000000",
- "2025-09-10T14:50:00.000000000",
- "2025-09-10T14:51:00.000000000",
- "2025-09-10T14:52:00.000000000",
- "2025-09-10T14:53:00.000000000",
- "2025-09-10T14:54:00.000000000",
- "2025-09-10T14:55:00.000000000",
- "2025-09-10T14:56:00.000000000",
- "2025-09-10T14:57:00.000000000",
- "2025-09-10T14:58:00.000000000",
- "2025-09-10T14:59:00.000000000",
- "2025-09-10T15:00:00.000000000",
- "2025-09-10T15:01:00.000000000",
- "2025-09-10T15:02:00.000000000",
- "2025-09-10T15:03:00.000000000",
- "2025-09-10T15:04:00.000000000",
- "2025-09-10T15:05:00.000000000",
- "2025-09-10T15:06:00.000000000",
- "2025-09-10T15:07:00.000000000",
- "2025-09-10T15:08:00.000000000",
- "2025-09-10T15:09:00.000000000",
- "2025-09-10T15:10:00.000000000",
- "2025-09-10T15:11:00.000000000",
- "2025-09-10T15:12:00.000000000",
- "2025-09-10T15:13:00.000000000",
- "2025-09-10T15:14:00.000000000",
- "2025-09-10T15:15:00.000000000",
- "2025-09-10T15:16:00.000000000",
- "2025-09-10T15:17:00.000000000",
- "2025-09-10T15:18:00.000000000",
- "2025-09-10T15:19:00.000000000",
- "2025-09-10T15:20:00.000000000",
- "2025-09-10T15:21:00.000000000",
- "2025-09-10T15:22:00.000000000",
- "2025-09-10T15:23:00.000000000",
- "2025-09-10T15:24:00.000000000",
- "2025-09-10T15:25:00.000000000",
- "2025-09-10T15:26:00.000000000",
- "2025-09-10T15:27:00.000000000",
- "2025-09-10T15:28:00.000000000",
- "2025-09-10T15:29:00.000000000",
- "2025-09-10T15:30:00.000000000",
- "2025-09-10T15:31:00.000000000",
- "2025-09-10T15:32:00.000000000",
- "2025-09-10T15:33:00.000000000",
- "2025-09-10T15:34:00.000000000",
- "2025-09-10T15:35:00.000000000",
- "2025-09-10T15:36:00.000000000",
- "2025-09-10T15:37:00.000000000",
- "2025-09-10T15:38:00.000000000",
- "2025-09-10T15:39:00.000000000",
- "2025-09-10T15:40:00.000000000",
- "2025-09-10T15:41:00.000000000",
- "2025-09-10T15:42:00.000000000",
- "2025-09-10T15:43:00.000000000",
- "2025-09-10T15:44:00.000000000",
- "2025-09-10T15:45:00.000000000",
- "2025-09-10T15:46:00.000000000",
- "2025-09-10T15:47:00.000000000",
- "2025-09-10T15:48:00.000000000",
- "2025-09-10T15:49:00.000000000",
- "2025-09-10T15:50:00.000000000",
- "2025-09-10T15:51:00.000000000",
- "2025-09-10T15:52:00.000000000",
- "2025-09-10T15:53:00.000000000",
- "2025-09-10T15:54:00.000000000",
- "2025-09-10T15:55:00.000000000",
- "2025-09-10T15:56:00.000000000",
- "2025-09-10T15:57:00.000000000",
- "2025-09-10T15:58:00.000000000",
- "2025-09-10T15:59:00.000000000",
- "2025-09-10T16:00:00.000000000",
- "2025-09-10T16:01:00.000000000",
- "2025-09-10T16:02:00.000000000",
- "2025-09-10T16:03:00.000000000",
- "2025-09-10T16:04:00.000000000",
- "2025-09-10T16:05:00.000000000",
- "2025-09-10T16:06:00.000000000",
- "2025-09-10T16:07:00.000000000",
- "2025-09-10T16:08:00.000000000",
- "2025-09-10T16:09:00.000000000",
- "2025-09-10T16:10:00.000000000",
- "2025-09-10T16:11:00.000000000",
- "2025-09-10T16:12:00.000000000",
- "2025-09-10T16:13:00.000000000",
- "2025-09-10T16:14:00.000000000",
- "2025-09-10T16:15:00.000000000",
- "2025-09-10T16:16:00.000000000",
- "2025-09-10T16:17:00.000000000",
- "2025-09-10T16:18:00.000000000",
- "2025-09-10T16:19:00.000000000",
- "2025-09-10T16:20:00.000000000",
- "2025-09-10T16:21:00.000000000",
- "2025-09-10T16:22:00.000000000",
- "2025-09-10T16:23:00.000000000",
- "2025-09-10T16:24:00.000000000",
- "2025-09-10T16:25:00.000000000",
- "2025-09-10T16:26:00.000000000",
- "2025-09-10T16:27:00.000000000",
- "2025-09-10T16:28:00.000000000",
- "2025-09-10T16:29:00.000000000",
- "2025-09-10T16:30:00.000000000",
- "2025-09-10T16:31:00.000000000",
- "2025-09-10T16:32:00.000000000",
- "2025-09-10T16:33:00.000000000",
- "2025-09-10T16:34:00.000000000",
- "2025-09-10T16:35:00.000000000",
- "2025-09-10T16:36:00.000000000",
- "2025-09-10T16:37:00.000000000",
- "2025-09-10T16:38:00.000000000",
- "2025-09-10T16:39:00.000000000",
- "2025-09-10T16:40:00.000000000",
- "2025-09-10T16:41:00.000000000",
- "2025-09-10T16:42:00.000000000",
- "2025-09-10T16:43:00.000000000",
- "2025-09-10T16:44:00.000000000",
- "2025-09-10T16:45:00.000000000",
- "2025-09-10T16:46:00.000000000",
- "2025-09-10T16:47:00.000000000",
- "2025-09-10T16:48:00.000000000",
- "2025-09-10T16:49:00.000000000",
- "2025-09-10T16:50:00.000000000",
- "2025-09-10T16:51:00.000000000",
- "2025-09-10T16:52:00.000000000",
- "2025-09-10T16:53:00.000000000",
- "2025-09-10T16:54:00.000000000",
- "2025-09-10T16:55:00.000000000",
- "2025-09-10T16:56:00.000000000",
- "2025-09-10T16:57:00.000000000",
- "2025-09-10T16:58:00.000000000",
- "2025-09-10T16:59:00.000000000",
- "2025-09-10T17:00:00.000000000",
- "2025-09-10T17:01:00.000000000",
- "2025-09-10T17:02:00.000000000",
- "2025-09-10T17:03:00.000000000",
- "2025-09-10T17:04:00.000000000",
- "2025-09-10T17:05:00.000000000",
- "2025-09-10T17:06:00.000000000",
- "2025-09-10T17:07:00.000000000",
- "2025-09-10T17:08:00.000000000",
- "2025-09-10T17:09:00.000000000",
- "2025-09-10T17:10:00.000000000",
- "2025-09-10T17:11:00.000000000",
- "2025-09-10T17:12:00.000000000",
- "2025-09-10T17:13:00.000000000",
- "2025-09-10T17:14:00.000000000",
- "2025-09-10T17:15:00.000000000",
- "2025-09-10T17:16:00.000000000",
- "2025-09-10T17:17:00.000000000",
- "2025-09-10T17:18:00.000000000",
- "2025-09-10T17:19:00.000000000",
- "2025-09-10T17:20:00.000000000",
- "2025-09-10T17:21:00.000000000",
- "2025-09-10T17:22:00.000000000",
- "2025-09-10T17:23:00.000000000",
- "2025-09-10T17:24:00.000000000",
- "2025-09-10T17:25:00.000000000",
- "2025-09-10T17:26:00.000000000",
- "2025-09-10T17:27:00.000000000",
- "2025-09-10T17:28:00.000000000",
- "2025-09-10T17:29:00.000000000",
- "2025-09-10T17:30:00.000000000",
- "2025-09-10T17:31:00.000000000",
- "2025-09-10T17:32:00.000000000",
- "2025-09-10T17:33:00.000000000",
- "2025-09-10T17:34:00.000000000",
- "2025-09-10T17:35:00.000000000",
- "2025-09-10T17:36:00.000000000",
- "2025-09-10T17:37:00.000000000",
- "2025-09-10T17:38:00.000000000",
- "2025-09-10T17:39:00.000000000",
- "2025-09-10T17:40:00.000000000",
- "2025-09-10T17:41:00.000000000",
- "2025-09-10T17:42:00.000000000",
- "2025-09-10T17:43:00.000000000",
- "2025-09-10T17:44:00.000000000",
- "2025-09-10T17:45:00.000000000",
- "2025-09-10T17:46:00.000000000",
- "2025-09-10T17:47:00.000000000",
- "2025-09-10T17:48:00.000000000",
- "2025-09-10T17:49:00.000000000",
- "2025-09-10T17:50:00.000000000",
- "2025-09-10T17:51:00.000000000",
- "2025-09-10T17:52:00.000000000",
- "2025-09-10T17:53:00.000000000",
- "2025-09-10T17:54:00.000000000",
- "2025-09-10T17:55:00.000000000",
- "2025-09-10T17:56:00.000000000",
- "2025-09-10T17:57:00.000000000",
- "2025-09-10T17:58:00.000000000",
- "2025-09-10T17:59:00.000000000",
- "2025-09-10T18:00:00.000000000",
- "2025-09-10T18:01:00.000000000",
- "2025-09-10T18:02:00.000000000",
- "2025-09-10T18:03:00.000000000",
- "2025-09-10T18:04:00.000000000",
- "2025-09-10T18:05:00.000000000",
- "2025-09-10T18:06:00.000000000",
- "2025-09-10T18:07:00.000000000",
- "2025-09-10T18:08:00.000000000",
- "2025-09-10T18:09:00.000000000",
- "2025-09-10T18:10:00.000000000",
- "2025-09-10T18:11:00.000000000",
- "2025-09-10T18:12:00.000000000",
- "2025-09-10T18:13:00.000000000",
- "2025-09-10T18:14:00.000000000",
- "2025-09-10T18:15:00.000000000",
- "2025-09-10T18:16:00.000000000",
- "2025-09-10T18:17:00.000000000",
- "2025-09-10T18:18:00.000000000",
- "2025-09-10T18:19:00.000000000",
- "2025-09-10T18:20:00.000000000",
- "2025-09-10T18:21:00.000000000",
- "2025-09-10T18:22:00.000000000",
- "2025-09-10T18:23:00.000000000",
- "2025-09-10T18:24:00.000000000",
- "2025-09-10T18:25:00.000000000",
- "2025-09-10T18:26:00.000000000",
- "2025-09-10T18:27:00.000000000",
- "2025-09-10T18:28:00.000000000",
- "2025-09-10T18:29:00.000000000",
- "2025-09-10T18:30:00.000000000",
- "2025-09-10T18:31:00.000000000",
- "2025-09-10T18:32:00.000000000",
- "2025-09-10T18:33:00.000000000",
- "2025-09-10T18:34:00.000000000",
- "2025-09-10T18:35:00.000000000",
- "2025-09-10T18:36:00.000000000",
- "2025-09-10T18:37:00.000000000",
- "2025-09-10T18:38:00.000000000",
- "2025-09-10T18:39:00.000000000",
- "2025-09-10T18:40:00.000000000",
- "2025-09-10T18:41:00.000000000",
- "2025-09-10T18:42:00.000000000",
- "2025-09-10T18:43:00.000000000",
- "2025-09-10T18:44:00.000000000",
- "2025-09-10T18:45:00.000000000",
- "2025-09-10T18:46:00.000000000",
- "2025-09-10T18:47:00.000000000",
- "2025-09-10T18:48:00.000000000",
- "2025-09-10T18:49:00.000000000",
- "2025-09-10T18:50:00.000000000",
- "2025-09-10T18:51:00.000000000",
- "2025-09-10T18:52:00.000000000",
- "2025-09-10T18:53:00.000000000",
- "2025-09-10T18:54:00.000000000",
- "2025-09-10T18:55:00.000000000",
- "2025-09-10T18:56:00.000000000",
- "2025-09-10T18:57:00.000000000",
- "2025-09-10T18:58:00.000000000",
- "2025-09-10T18:59:00.000000000",
- "2025-09-10T19:00:00.000000000",
- "2025-09-10T19:01:00.000000000",
- "2025-09-10T19:02:00.000000000",
- "2025-09-10T19:03:00.000000000",
- "2025-09-10T19:04:00.000000000",
- "2025-09-10T19:05:00.000000000",
- "2025-09-10T19:06:00.000000000",
- "2025-09-10T19:07:00.000000000",
- "2025-09-10T19:08:00.000000000",
- "2025-09-10T19:09:00.000000000",
- "2025-09-10T19:10:00.000000000",
- "2025-09-10T19:11:00.000000000",
- "2025-09-10T19:12:00.000000000",
- "2025-09-10T19:13:00.000000000",
- "2025-09-10T19:14:00.000000000",
- "2025-09-10T19:15:00.000000000",
- "2025-09-10T19:16:00.000000000",
- "2025-09-10T19:17:00.000000000",
- "2025-09-10T19:18:00.000000000",
- "2025-09-10T19:19:00.000000000",
- "2025-09-10T19:20:00.000000000",
- "2025-09-10T19:21:00.000000000",
- "2025-09-10T19:22:00.000000000",
- "2025-09-10T19:23:00.000000000",
- "2025-09-10T19:24:00.000000000",
- "2025-09-10T19:25:00.000000000",
- "2025-09-10T19:26:00.000000000",
- "2025-09-10T19:27:00.000000000",
- "2025-09-10T19:28:00.000000000",
- "2025-09-10T19:29:00.000000000",
- "2025-09-10T19:30:00.000000000",
- "2025-09-10T19:31:00.000000000",
- "2025-09-10T19:32:00.000000000",
- "2025-09-10T19:33:00.000000000",
- "2025-09-10T19:34:00.000000000",
- "2025-09-10T19:35:00.000000000",
- "2025-09-10T19:36:00.000000000",
- "2025-09-10T19:37:00.000000000",
- "2025-09-10T19:38:00.000000000",
- "2025-09-10T19:39:00.000000000",
- "2025-09-10T19:40:00.000000000",
- "2025-09-10T19:41:00.000000000",
- "2025-09-10T19:42:00.000000000",
- "2025-09-10T19:43:00.000000000",
- "2025-09-10T19:44:00.000000000",
- "2025-09-10T19:45:00.000000000",
- "2025-09-10T19:46:00.000000000",
- "2025-09-10T19:47:00.000000000",
- "2025-09-10T19:48:00.000000000",
- "2025-09-10T19:49:00.000000000",
- "2025-09-10T19:50:00.000000000",
- "2025-09-10T19:51:00.000000000",
- "2025-09-10T19:52:00.000000000",
- "2025-09-10T19:53:00.000000000",
- "2025-09-10T19:54:00.000000000",
- "2025-09-10T19:55:00.000000000",
- "2025-09-10T19:56:00.000000000",
- "2025-09-10T19:57:00.000000000",
- "2025-09-10T19:58:00.000000000",
- "2025-09-10T19:59:00.000000000",
- "2025-09-10T20:00:00.000000000",
- "2025-09-10T20:01:00.000000000",
- "2025-09-10T20:02:00.000000000",
- "2025-09-10T20:03:00.000000000",
- "2025-09-10T20:04:00.000000000",
- "2025-09-10T20:05:00.000000000",
- "2025-09-10T20:06:00.000000000",
- "2025-09-10T20:07:00.000000000",
- "2025-09-10T20:08:00.000000000",
- "2025-09-10T20:09:00.000000000",
- "2025-09-10T20:10:00.000000000",
- "2025-09-10T20:11:00.000000000",
- "2025-09-10T20:12:00.000000000",
- "2025-09-10T20:13:00.000000000",
- "2025-09-10T20:14:00.000000000",
- "2025-09-10T20:15:00.000000000",
- "2025-09-10T20:16:00.000000000",
- "2025-09-10T20:17:00.000000000",
- "2025-09-10T20:18:00.000000000",
- "2025-09-10T20:19:00.000000000",
- "2025-09-10T20:20:00.000000000",
- "2025-09-10T20:21:00.000000000",
- "2025-09-10T20:22:00.000000000",
- "2025-09-10T20:23:00.000000000",
- "2025-09-10T20:24:00.000000000",
- "2025-09-10T20:25:00.000000000",
- "2025-09-10T20:26:00.000000000",
- "2025-09-10T20:27:00.000000000",
- "2025-09-10T20:28:00.000000000",
- "2025-09-10T20:29:00.000000000",
- "2025-09-10T20:30:00.000000000",
- "2025-09-10T20:31:00.000000000",
- "2025-09-10T20:32:00.000000000",
- "2025-09-10T20:33:00.000000000",
- "2025-09-10T20:34:00.000000000",
- "2025-09-10T20:35:00.000000000",
- "2025-09-10T20:36:00.000000000",
- "2025-09-10T20:37:00.000000000",
- "2025-09-10T20:38:00.000000000",
- "2025-09-10T20:39:00.000000000",
- "2025-09-10T20:40:00.000000000",
- "2025-09-10T20:41:00.000000000",
- "2025-09-10T20:42:00.000000000",
- "2025-09-10T20:43:00.000000000",
- "2025-09-10T20:44:00.000000000",
- "2025-09-10T20:45:00.000000000",
- "2025-09-10T20:46:00.000000000",
- "2025-09-10T20:47:00.000000000",
- "2025-09-10T20:48:00.000000000",
- "2025-09-10T20:49:00.000000000",
- "2025-09-10T20:50:00.000000000",
- "2025-09-10T20:51:00.000000000",
- "2025-09-10T20:52:00.000000000",
- "2025-09-10T20:53:00.000000000",
- "2025-09-10T20:54:00.000000000",
- "2025-09-10T20:55:00.000000000",
- "2025-09-10T20:56:00.000000000",
- "2025-09-10T20:57:00.000000000",
- "2025-09-10T20:58:00.000000000",
- "2025-09-10T20:59:00.000000000",
- "2025-09-10T21:00:00.000000000",
- "2025-09-10T21:01:00.000000000",
- "2025-09-10T21:02:00.000000000",
- "2025-09-10T21:03:00.000000000",
- "2025-09-10T21:04:00.000000000",
- "2025-09-10T21:05:00.000000000",
- "2025-09-10T21:06:00.000000000",
- "2025-09-10T21:07:00.000000000",
- "2025-09-10T21:08:00.000000000",
- "2025-09-10T21:09:00.000000000",
- "2025-09-10T21:10:00.000000000",
- "2025-09-10T21:11:00.000000000",
- "2025-09-10T21:12:00.000000000",
- "2025-09-10T21:13:00.000000000",
- "2025-09-10T21:14:00.000000000",
- "2025-09-10T21:15:00.000000000",
- "2025-09-10T21:16:00.000000000",
- "2025-09-10T21:17:00.000000000",
- "2025-09-10T21:18:00.000000000",
- "2025-09-10T21:19:00.000000000",
- "2025-09-10T21:20:00.000000000",
- "2025-09-10T21:21:00.000000000",
- "2025-09-10T21:22:00.000000000",
- "2025-09-10T21:23:00.000000000",
- "2025-09-10T21:24:00.000000000",
- "2025-09-10T21:25:00.000000000",
- "2025-09-10T21:26:00.000000000",
- "2025-09-10T21:27:00.000000000",
- "2025-09-10T21:28:00.000000000",
- "2025-09-10T21:29:00.000000000",
- "2025-09-10T21:30:00.000000000",
- "2025-09-10T21:31:00.000000000",
- "2025-09-10T21:32:00.000000000",
- "2025-09-10T21:33:00.000000000",
- "2025-09-10T21:34:00.000000000",
- "2025-09-10T21:35:00.000000000",
- "2025-09-10T21:36:00.000000000",
- "2025-09-10T21:37:00.000000000",
- "2025-09-10T21:38:00.000000000",
- "2025-09-10T21:39:00.000000000",
- "2025-09-10T21:40:00.000000000",
- "2025-09-10T21:41:00.000000000",
- "2025-09-10T21:42:00.000000000",
- "2025-09-10T21:43:00.000000000",
- "2025-09-10T21:44:00.000000000",
- "2025-09-10T21:45:00.000000000",
- "2025-09-10T21:46:00.000000000",
- "2025-09-10T21:47:00.000000000",
- "2025-09-10T21:48:00.000000000",
- "2025-09-10T21:49:00.000000000",
- "2025-09-10T21:50:00.000000000",
- "2025-09-10T21:51:00.000000000",
- "2025-09-10T21:52:00.000000000",
- "2025-09-10T21:53:00.000000000",
- "2025-09-10T21:54:00.000000000",
- "2025-09-10T21:55:00.000000000",
- "2025-09-10T21:56:00.000000000",
- "2025-09-10T21:57:00.000000000",
- "2025-09-10T21:58:00.000000000",
- "2025-09-10T21:59:00.000000000",
- "2025-09-10T22:00:00.000000000",
- "2025-09-10T22:01:00.000000000",
- "2025-09-10T22:02:00.000000000",
- "2025-09-10T22:03:00.000000000",
- "2025-09-10T22:04:00.000000000",
- "2025-09-10T22:05:00.000000000",
- "2025-09-10T22:06:00.000000000",
- "2025-09-10T22:07:00.000000000",
- "2025-09-10T22:08:00.000000000",
- "2025-09-10T22:09:00.000000000",
- "2025-09-10T22:10:00.000000000",
- "2025-09-10T22:11:00.000000000",
- "2025-09-10T22:12:00.000000000",
- "2025-09-10T22:13:00.000000000",
- "2025-09-10T22:14:00.000000000",
- "2025-09-10T22:15:00.000000000",
- "2025-09-10T22:16:00.000000000",
- "2025-09-10T22:17:00.000000000",
- "2025-09-10T22:18:00.000000000",
- "2025-09-10T22:19:00.000000000",
- "2025-09-10T22:20:00.000000000",
- "2025-09-10T22:21:00.000000000",
- "2025-09-10T22:22:00.000000000",
- "2025-09-10T22:23:00.000000000",
- "2025-09-10T22:24:00.000000000",
- "2025-09-10T22:25:00.000000000",
- "2025-09-10T22:26:00.000000000",
- "2025-09-10T22:27:00.000000000",
- "2025-09-10T22:28:00.000000000",
- "2025-09-10T22:29:00.000000000"
- ],
- "xaxis": "x3",
- "y": {
- "bdata": "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",
- "dtype": "f8"
- },
- "yaxis": "y3"
- },
- {
- "marker": {
- "color": "green",
- "size": 12,
- "symbol": "triangle-up"
- },
- "mode": "markers",
- "name": "ADA-USDT BUY OPEN",
- "showlegend": true,
- "type": "scatter",
- "x": [
- "2025-09-10T13:34:00.000000000",
- "2025-09-10T13:39:00.000000000",
- "2025-09-10T15:30:00.000000000",
- "2025-09-10T16:04:00.000000000",
- "2025-09-10T16:10:00.000000000",
- "2025-09-10T16:43:00.000000000",
- "2025-09-10T16:47:00.000000000",
- "2025-09-10T18:36:00.000000000",
- "2025-09-10T19:11:00.000000000",
- "2025-09-10T20:54:00.000000000"
- ],
- "xaxis": "x3",
- "y": {
- "bdata": "6PrImEdZ7D+aY0vhOWXsP3ctXKUiZ+w/AA1fCo5l7D97Da3tIU/sP4WijfCgT+w/cQlWTJVW7D8i9NzcsknsPyN3CWLQJ+w/bseOtXok7D8=",
- "dtype": "f8"
- },
- "yaxis": "y3"
- },
- {
- "line": {
- "color": "black",
- "width": 2
- },
- "marker": {
- "color": "green",
- "size": 12,
- "symbol": "triangle-up"
- },
- "mode": "markers",
- "name": "ADA-USDT BUY CLOSE",
- "showlegend": true,
- "type": "scatter",
- "x": [
- "2025-09-10T13:58:00.000000000",
- "2025-09-10T14:04:00.000000000",
- "2025-09-10T14:45:00.000000000",
- "2025-09-10T14:56:00.000000000",
- "2025-09-10T15:05:00.000000000",
- "2025-09-10T15:54:00.000000000",
- "2025-09-10T17:02:00.000000000",
- "2025-09-10T17:50:00.000000000",
- "2025-09-10T18:01:00.000000000",
- "2025-09-10T18:08:00.000000000",
- "2025-09-10T18:15:00.000000000",
- "2025-09-10T20:45:00.000000000",
- "2025-09-10T21:17:00.000000000",
- "2025-09-10T22:05:00.000000000",
- "2025-09-10T22:26:00.000000000"
- ],
- "xaxis": "x3",
- "y": {
- "bdata": "9zVPZwCH7D8Mvud+mZPsP+Lvsanzb+w/OU7K5Slj7D+Lxm60+nfsP6U7qk5jeew/t750KD+B7D/AMbogOWjsP+FTiv2/Z+w/ckaw3qhg7D/7qXp0ElXsPwf0F2fBLOw/nTuwV1pE7D+uDuRYWVnsPyoneGOpVuw/",
- "dtype": "f8"
- },
- "yaxis": "y3"
- },
- {
- "marker": {
- "color": "red",
- "size": 12,
- "symbol": "triangle-down"
- },
- "mode": "markers",
- "name": "ADA-USDT SELL OPEN",
- "showlegend": true,
- "type": "scatter",
- "x": [
- "2025-09-10T13:50:00.000000000",
- "2025-09-10T14:03:00.000000000",
- "2025-09-10T14:08:00.000000000",
- "2025-09-10T14:48:00.000000000",
- "2025-09-10T15:04:00.000000000",
- "2025-09-10T15:52:00.000000000",
- "2025-09-10T17:00:00.000000000",
- "2025-09-10T17:04:00.000000000",
- "2025-09-10T17:57:00.000000000",
- "2025-09-10T18:05:00.000000000",
- "2025-09-10T18:12:00.000000000",
- "2025-09-10T20:37:00.000000000",
- "2025-09-10T21:12:00.000000000",
- "2025-09-10T22:03:00.000000000",
- "2025-09-10T22:16:00.000000000"
- ],
- "xaxis": "x3",
- "y": {
- "bdata": "w9+8EKSS7D8jga3F0YjsPydrS2CmnOw/Z/Zht2tx7D9FYne2NnPsP43Wvrkgduw/yLoI129/7D9x2a/RhILsP4katkaoZ+w/8JGQvNtp7D+5137fT1zsP1tKWdDPKOw/DvGQ9uNJ7D9DhlIbfVnsP7aPYJgyY+w/",
- "dtype": "f8"
- },
- "yaxis": "y3"
- },
- {
- "line": {
- "color": "black",
- "width": 2
- },
- "marker": {
- "color": "red",
- "size": 12,
- "symbol": "triangle-down"
- },
- "mode": "markers",
- "name": "ADA-USDT SELL CLOSE",
- "showlegend": true,
- "type": "scatter",
- "x": [
- "2025-09-10T13:35:00.000000000",
- "2025-09-10T13:42:00.000000000",
- "2025-09-10T15:47:00.000000000",
- "2025-09-10T16:05:00.000000000",
- "2025-09-10T16:41:00.000000000",
- "2025-09-10T16:46:00.000000000",
- "2025-09-10T16:49:00.000000000",
- "2025-09-10T19:10:00.000000000",
- "2025-09-10T20:00:00.000000000",
- "2025-09-10T21:03:00.000000000"
- ],
- "xaxis": "x3",
- "y": {
- "bdata": "IaEH/Q9Z7D9pUvS9EH/sP+sHvDI9c+w/piR6nYpn7D8sG/vHT1HsP/2OKw/fUew/fwZ/+JFg7D+H1MiM3C3sP7xV1gg4HOw/4cJD5zQ67D8=",
- "dtype": "f8"
- },
- "yaxis": "y3"
- },
- {
- "line": {
- "color": "orange",
- "width": 2
- },
- "name": "SOL-USDT Price",
- "opacity": 0.8,
- "type": "scatter",
- "x": [
- "2025-09-10T11:30:00.000000000",
- "2025-09-10T11:31:00.000000000",
- "2025-09-10T11:32:00.000000000",
- "2025-09-10T11:33:00.000000000",
- "2025-09-10T11:34:00.000000000",
- "2025-09-10T11:35:00.000000000",
- "2025-09-10T11:36:00.000000000",
- "2025-09-10T11:37:00.000000000",
- "2025-09-10T11:38:00.000000000",
- "2025-09-10T11:39:00.000000000",
- "2025-09-10T11:40:00.000000000",
- "2025-09-10T11:41:00.000000000",
- "2025-09-10T11:42:00.000000000",
- "2025-09-10T11:43:00.000000000",
- "2025-09-10T11:44:00.000000000",
- "2025-09-10T11:45:00.000000000",
- "2025-09-10T11:46:00.000000000",
- "2025-09-10T11:47:00.000000000",
- "2025-09-10T11:48:00.000000000",
- "2025-09-10T11:49:00.000000000",
- "2025-09-10T11:50:00.000000000",
- "2025-09-10T11:51:00.000000000",
- "2025-09-10T11:52:00.000000000",
- "2025-09-10T11:53:00.000000000",
- "2025-09-10T11:54:00.000000000",
- "2025-09-10T11:55:00.000000000",
- "2025-09-10T11:56:00.000000000",
- "2025-09-10T11:57:00.000000000",
- "2025-09-10T11:58:00.000000000",
- "2025-09-10T11:59:00.000000000",
- "2025-09-10T12:00:00.000000000",
- "2025-09-10T12:01:00.000000000",
- "2025-09-10T12:02:00.000000000",
- "2025-09-10T12:03:00.000000000",
- "2025-09-10T12:04:00.000000000",
- "2025-09-10T12:05:00.000000000",
- "2025-09-10T12:06:00.000000000",
- "2025-09-10T12:07:00.000000000",
- "2025-09-10T12:08:00.000000000",
- "2025-09-10T12:09:00.000000000",
- "2025-09-10T12:10:00.000000000",
- "2025-09-10T12:11:00.000000000",
- "2025-09-10T12:12:00.000000000",
- "2025-09-10T12:13:00.000000000",
- "2025-09-10T12:14:00.000000000",
- "2025-09-10T12:15:00.000000000",
- "2025-09-10T12:16:00.000000000",
- "2025-09-10T12:17:00.000000000",
- "2025-09-10T12:18:00.000000000",
- "2025-09-10T12:19:00.000000000",
- "2025-09-10T12:20:00.000000000",
- "2025-09-10T12:21:00.000000000",
- "2025-09-10T12:22:00.000000000",
- "2025-09-10T12:23:00.000000000",
- "2025-09-10T12:24:00.000000000",
- "2025-09-10T12:25:00.000000000",
- "2025-09-10T12:26:00.000000000",
- "2025-09-10T12:27:00.000000000",
- "2025-09-10T12:28:00.000000000",
- "2025-09-10T12:29:00.000000000",
- "2025-09-10T12:30:00.000000000",
- "2025-09-10T12:31:00.000000000",
- "2025-09-10T12:32:00.000000000",
- "2025-09-10T12:33:00.000000000",
- "2025-09-10T12:34:00.000000000",
- "2025-09-10T12:35:00.000000000",
- "2025-09-10T12:36:00.000000000",
- "2025-09-10T12:37:00.000000000",
- "2025-09-10T12:38:00.000000000",
- "2025-09-10T12:39:00.000000000",
- "2025-09-10T12:40:00.000000000",
- "2025-09-10T12:41:00.000000000",
- "2025-09-10T12:42:00.000000000",
- "2025-09-10T12:43:00.000000000",
- "2025-09-10T12:44:00.000000000",
- "2025-09-10T12:45:00.000000000",
- "2025-09-10T12:46:00.000000000",
- "2025-09-10T12:47:00.000000000",
- "2025-09-10T12:48:00.000000000",
- "2025-09-10T12:49:00.000000000",
- "2025-09-10T12:50:00.000000000",
- "2025-09-10T12:51:00.000000000",
- "2025-09-10T12:52:00.000000000",
- "2025-09-10T12:53:00.000000000",
- "2025-09-10T12:54:00.000000000",
- "2025-09-10T12:55:00.000000000",
- "2025-09-10T12:56:00.000000000",
- "2025-09-10T12:57:00.000000000",
- "2025-09-10T12:59:00.000000000",
- "2025-09-10T13:00:00.000000000",
- "2025-09-10T13:01:00.000000000",
- "2025-09-10T13:02:00.000000000",
- "2025-09-10T13:03:00.000000000",
- "2025-09-10T13:04:00.000000000",
- "2025-09-10T13:05:00.000000000",
- "2025-09-10T13:06:00.000000000",
- "2025-09-10T13:07:00.000000000",
- "2025-09-10T13:08:00.000000000",
- "2025-09-10T13:09:00.000000000",
- "2025-09-10T13:10:00.000000000",
- "2025-09-10T13:11:00.000000000",
- "2025-09-10T13:12:00.000000000",
- "2025-09-10T13:13:00.000000000",
- "2025-09-10T13:14:00.000000000",
- "2025-09-10T13:15:00.000000000",
- "2025-09-10T13:16:00.000000000",
- "2025-09-10T13:17:00.000000000",
- "2025-09-10T13:18:00.000000000",
- "2025-09-10T13:19:00.000000000",
- "2025-09-10T13:20:00.000000000",
- "2025-09-10T13:21:00.000000000",
- "2025-09-10T13:22:00.000000000",
- "2025-09-10T13:23:00.000000000",
- "2025-09-10T13:24:00.000000000",
- "2025-09-10T13:25:00.000000000",
- "2025-09-10T13:26:00.000000000",
- "2025-09-10T13:27:00.000000000",
- "2025-09-10T13:28:00.000000000",
- "2025-09-10T13:29:00.000000000",
- "2025-09-10T13:30:00.000000000",
- "2025-09-10T13:31:00.000000000",
- "2025-09-10T13:32:00.000000000",
- "2025-09-10T13:33:00.000000000",
- "2025-09-10T13:34:00.000000000",
- "2025-09-10T13:35:00.000000000",
- "2025-09-10T13:36:00.000000000",
- "2025-09-10T13:37:00.000000000",
- "2025-09-10T13:38:00.000000000",
- "2025-09-10T13:39:00.000000000",
- "2025-09-10T13:40:00.000000000",
- "2025-09-10T13:41:00.000000000",
- "2025-09-10T13:42:00.000000000",
- "2025-09-10T13:43:00.000000000",
- "2025-09-10T13:44:00.000000000",
- "2025-09-10T13:45:00.000000000",
- "2025-09-10T13:46:00.000000000",
- "2025-09-10T13:47:00.000000000",
- "2025-09-10T13:48:00.000000000",
- "2025-09-10T13:49:00.000000000",
- "2025-09-10T13:50:00.000000000",
- "2025-09-10T13:51:00.000000000",
- "2025-09-10T13:52:00.000000000",
- "2025-09-10T13:53:00.000000000",
- "2025-09-10T13:54:00.000000000",
- "2025-09-10T13:55:00.000000000",
- "2025-09-10T13:56:00.000000000",
- "2025-09-10T13:57:00.000000000",
- "2025-09-10T13:58:00.000000000",
- "2025-09-10T13:59:00.000000000",
- "2025-09-10T14:00:00.000000000",
- "2025-09-10T14:01:00.000000000",
- "2025-09-10T14:02:00.000000000",
- "2025-09-10T14:03:00.000000000",
- "2025-09-10T14:04:00.000000000",
- "2025-09-10T14:05:00.000000000",
- "2025-09-10T14:06:00.000000000",
- "2025-09-10T14:07:00.000000000",
- "2025-09-10T14:08:00.000000000",
- "2025-09-10T14:09:00.000000000",
- "2025-09-10T14:10:00.000000000",
- "2025-09-10T14:11:00.000000000",
- "2025-09-10T14:12:00.000000000",
- "2025-09-10T14:13:00.000000000",
- "2025-09-10T14:14:00.000000000",
- "2025-09-10T14:15:00.000000000",
- "2025-09-10T14:16:00.000000000",
- "2025-09-10T14:17:00.000000000",
- "2025-09-10T14:18:00.000000000",
- "2025-09-10T14:19:00.000000000",
- "2025-09-10T14:20:00.000000000",
- "2025-09-10T14:21:00.000000000",
- "2025-09-10T14:22:00.000000000",
- "2025-09-10T14:23:00.000000000",
- "2025-09-10T14:24:00.000000000",
- "2025-09-10T14:25:00.000000000",
- "2025-09-10T14:26:00.000000000",
- "2025-09-10T14:27:00.000000000",
- "2025-09-10T14:28:00.000000000",
- "2025-09-10T14:29:00.000000000",
- "2025-09-10T14:30:00.000000000",
- "2025-09-10T14:31:00.000000000",
- "2025-09-10T14:32:00.000000000",
- "2025-09-10T14:33:00.000000000",
- "2025-09-10T14:34:00.000000000",
- "2025-09-10T14:35:00.000000000",
- "2025-09-10T14:36:00.000000000",
- "2025-09-10T14:37:00.000000000",
- "2025-09-10T14:38:00.000000000",
- "2025-09-10T14:39:00.000000000",
- "2025-09-10T14:40:00.000000000",
- "2025-09-10T14:41:00.000000000",
- "2025-09-10T14:42:00.000000000",
- "2025-09-10T14:43:00.000000000",
- "2025-09-10T14:44:00.000000000",
- "2025-09-10T14:45:00.000000000",
- "2025-09-10T14:46:00.000000000",
- "2025-09-10T14:47:00.000000000",
- "2025-09-10T14:48:00.000000000",
- "2025-09-10T14:49:00.000000000",
- "2025-09-10T14:50:00.000000000",
- "2025-09-10T14:51:00.000000000",
- "2025-09-10T14:52:00.000000000",
- "2025-09-10T14:53:00.000000000",
- "2025-09-10T14:54:00.000000000",
- "2025-09-10T14:55:00.000000000",
- "2025-09-10T14:56:00.000000000",
- "2025-09-10T14:57:00.000000000",
- "2025-09-10T14:58:00.000000000",
- "2025-09-10T14:59:00.000000000",
- "2025-09-10T15:00:00.000000000",
- "2025-09-10T15:01:00.000000000",
- "2025-09-10T15:02:00.000000000",
- "2025-09-10T15:03:00.000000000",
- "2025-09-10T15:04:00.000000000",
- "2025-09-10T15:05:00.000000000",
- "2025-09-10T15:06:00.000000000",
- "2025-09-10T15:07:00.000000000",
- "2025-09-10T15:08:00.000000000",
- "2025-09-10T15:09:00.000000000",
- "2025-09-10T15:10:00.000000000",
- "2025-09-10T15:11:00.000000000",
- "2025-09-10T15:12:00.000000000",
- "2025-09-10T15:13:00.000000000",
- "2025-09-10T15:14:00.000000000",
- "2025-09-10T15:15:00.000000000",
- "2025-09-10T15:16:00.000000000",
- "2025-09-10T15:17:00.000000000",
- "2025-09-10T15:18:00.000000000",
- "2025-09-10T15:19:00.000000000",
- "2025-09-10T15:20:00.000000000",
- "2025-09-10T15:21:00.000000000",
- "2025-09-10T15:22:00.000000000",
- "2025-09-10T15:23:00.000000000",
- "2025-09-10T15:24:00.000000000",
- "2025-09-10T15:25:00.000000000",
- "2025-09-10T15:26:00.000000000",
- "2025-09-10T15:27:00.000000000",
- "2025-09-10T15:28:00.000000000",
- "2025-09-10T15:29:00.000000000",
- "2025-09-10T15:30:00.000000000",
- "2025-09-10T15:31:00.000000000",
- "2025-09-10T15:32:00.000000000",
- "2025-09-10T15:33:00.000000000",
- "2025-09-10T15:34:00.000000000",
- "2025-09-10T15:35:00.000000000",
- "2025-09-10T15:36:00.000000000",
- "2025-09-10T15:37:00.000000000",
- "2025-09-10T15:38:00.000000000",
- "2025-09-10T15:39:00.000000000",
- "2025-09-10T15:40:00.000000000",
- "2025-09-10T15:41:00.000000000",
- "2025-09-10T15:42:00.000000000",
- "2025-09-10T15:43:00.000000000",
- "2025-09-10T15:44:00.000000000",
- "2025-09-10T15:45:00.000000000",
- "2025-09-10T15:46:00.000000000",
- "2025-09-10T15:47:00.000000000",
- "2025-09-10T15:48:00.000000000",
- "2025-09-10T15:49:00.000000000",
- "2025-09-10T15:50:00.000000000",
- "2025-09-10T15:51:00.000000000",
- "2025-09-10T15:52:00.000000000",
- "2025-09-10T15:53:00.000000000",
- "2025-09-10T15:54:00.000000000",
- "2025-09-10T15:55:00.000000000",
- "2025-09-10T15:56:00.000000000",
- "2025-09-10T15:57:00.000000000",
- "2025-09-10T15:58:00.000000000",
- "2025-09-10T15:59:00.000000000",
- "2025-09-10T16:00:00.000000000",
- "2025-09-10T16:01:00.000000000",
- "2025-09-10T16:02:00.000000000",
- "2025-09-10T16:03:00.000000000",
- "2025-09-10T16:04:00.000000000",
- "2025-09-10T16:05:00.000000000",
- "2025-09-10T16:06:00.000000000",
- "2025-09-10T16:07:00.000000000",
- "2025-09-10T16:08:00.000000000",
- "2025-09-10T16:09:00.000000000",
- "2025-09-10T16:10:00.000000000",
- "2025-09-10T16:11:00.000000000",
- "2025-09-10T16:12:00.000000000",
- "2025-09-10T16:13:00.000000000",
- "2025-09-10T16:14:00.000000000",
- "2025-09-10T16:15:00.000000000",
- "2025-09-10T16:16:00.000000000",
- "2025-09-10T16:17:00.000000000",
- "2025-09-10T16:18:00.000000000",
- "2025-09-10T16:19:00.000000000",
- "2025-09-10T16:20:00.000000000",
- "2025-09-10T16:21:00.000000000",
- "2025-09-10T16:22:00.000000000",
- "2025-09-10T16:23:00.000000000",
- "2025-09-10T16:24:00.000000000",
- "2025-09-10T16:25:00.000000000",
- "2025-09-10T16:26:00.000000000",
- "2025-09-10T16:27:00.000000000",
- "2025-09-10T16:28:00.000000000",
- "2025-09-10T16:29:00.000000000",
- "2025-09-10T16:30:00.000000000",
- "2025-09-10T16:31:00.000000000",
- "2025-09-10T16:32:00.000000000",
- "2025-09-10T16:33:00.000000000",
- "2025-09-10T16:34:00.000000000",
- "2025-09-10T16:35:00.000000000",
- "2025-09-10T16:36:00.000000000",
- "2025-09-10T16:37:00.000000000",
- "2025-09-10T16:38:00.000000000",
- "2025-09-10T16:39:00.000000000",
- "2025-09-10T16:40:00.000000000",
- "2025-09-10T16:41:00.000000000",
- "2025-09-10T16:42:00.000000000",
- "2025-09-10T16:43:00.000000000",
- "2025-09-10T16:44:00.000000000",
- "2025-09-10T16:45:00.000000000",
- "2025-09-10T16:46:00.000000000",
- "2025-09-10T16:47:00.000000000",
- "2025-09-10T16:48:00.000000000",
- "2025-09-10T16:49:00.000000000",
- "2025-09-10T16:50:00.000000000",
- "2025-09-10T16:51:00.000000000",
- "2025-09-10T16:52:00.000000000",
- "2025-09-10T16:53:00.000000000",
- "2025-09-10T16:54:00.000000000",
- "2025-09-10T16:55:00.000000000",
- "2025-09-10T16:56:00.000000000",
- "2025-09-10T16:57:00.000000000",
- "2025-09-10T16:58:00.000000000",
- "2025-09-10T16:59:00.000000000",
- "2025-09-10T17:00:00.000000000",
- "2025-09-10T17:01:00.000000000",
- "2025-09-10T17:02:00.000000000",
- "2025-09-10T17:03:00.000000000",
- "2025-09-10T17:04:00.000000000",
- "2025-09-10T17:05:00.000000000",
- "2025-09-10T17:06:00.000000000",
- "2025-09-10T17:07:00.000000000",
- "2025-09-10T17:08:00.000000000",
- "2025-09-10T17:09:00.000000000",
- "2025-09-10T17:10:00.000000000",
- "2025-09-10T17:11:00.000000000",
- "2025-09-10T17:12:00.000000000",
- "2025-09-10T17:13:00.000000000",
- "2025-09-10T17:14:00.000000000",
- "2025-09-10T17:15:00.000000000",
- "2025-09-10T17:16:00.000000000",
- "2025-09-10T17:17:00.000000000",
- "2025-09-10T17:18:00.000000000",
- "2025-09-10T17:19:00.000000000",
- "2025-09-10T17:20:00.000000000",
- "2025-09-10T17:21:00.000000000",
- "2025-09-10T17:22:00.000000000",
- "2025-09-10T17:23:00.000000000",
- "2025-09-10T17:24:00.000000000",
- "2025-09-10T17:25:00.000000000",
- "2025-09-10T17:26:00.000000000",
- "2025-09-10T17:27:00.000000000",
- "2025-09-10T17:28:00.000000000",
- "2025-09-10T17:29:00.000000000",
- "2025-09-10T17:30:00.000000000",
- "2025-09-10T17:31:00.000000000",
- "2025-09-10T17:32:00.000000000",
- "2025-09-10T17:33:00.000000000",
- "2025-09-10T17:34:00.000000000",
- "2025-09-10T17:35:00.000000000",
- "2025-09-10T17:36:00.000000000",
- "2025-09-10T17:37:00.000000000",
- "2025-09-10T17:38:00.000000000",
- "2025-09-10T17:39:00.000000000",
- "2025-09-10T17:40:00.000000000",
- "2025-09-10T17:41:00.000000000",
- "2025-09-10T17:42:00.000000000",
- "2025-09-10T17:43:00.000000000",
- "2025-09-10T17:44:00.000000000",
- "2025-09-10T17:45:00.000000000",
- "2025-09-10T17:46:00.000000000",
- "2025-09-10T17:47:00.000000000",
- "2025-09-10T17:48:00.000000000",
- "2025-09-10T17:49:00.000000000",
- "2025-09-10T17:50:00.000000000",
- "2025-09-10T17:51:00.000000000",
- "2025-09-10T17:52:00.000000000",
- "2025-09-10T17:53:00.000000000",
- "2025-09-10T17:54:00.000000000",
- "2025-09-10T17:55:00.000000000",
- "2025-09-10T17:56:00.000000000",
- "2025-09-10T17:57:00.000000000",
- "2025-09-10T17:58:00.000000000",
- "2025-09-10T17:59:00.000000000",
- "2025-09-10T18:00:00.000000000",
- "2025-09-10T18:01:00.000000000",
- "2025-09-10T18:02:00.000000000",
- "2025-09-10T18:03:00.000000000",
- "2025-09-10T18:04:00.000000000",
- "2025-09-10T18:05:00.000000000",
- "2025-09-10T18:06:00.000000000",
- "2025-09-10T18:07:00.000000000",
- "2025-09-10T18:08:00.000000000",
- "2025-09-10T18:09:00.000000000",
- "2025-09-10T18:10:00.000000000",
- "2025-09-10T18:11:00.000000000",
- "2025-09-10T18:12:00.000000000",
- "2025-09-10T18:13:00.000000000",
- "2025-09-10T18:14:00.000000000",
- "2025-09-10T18:15:00.000000000",
- "2025-09-10T18:16:00.000000000",
- "2025-09-10T18:17:00.000000000",
- "2025-09-10T18:18:00.000000000",
- "2025-09-10T18:19:00.000000000",
- "2025-09-10T18:20:00.000000000",
- "2025-09-10T18:21:00.000000000",
- "2025-09-10T18:22:00.000000000",
- "2025-09-10T18:23:00.000000000",
- "2025-09-10T18:24:00.000000000",
- "2025-09-10T18:25:00.000000000",
- "2025-09-10T18:26:00.000000000",
- "2025-09-10T18:27:00.000000000",
- "2025-09-10T18:28:00.000000000",
- "2025-09-10T18:29:00.000000000",
- "2025-09-10T18:30:00.000000000",
- "2025-09-10T18:31:00.000000000",
- "2025-09-10T18:32:00.000000000",
- "2025-09-10T18:33:00.000000000",
- "2025-09-10T18:34:00.000000000",
- "2025-09-10T18:35:00.000000000",
- "2025-09-10T18:36:00.000000000",
- "2025-09-10T18:37:00.000000000",
- "2025-09-10T18:38:00.000000000",
- "2025-09-10T18:39:00.000000000",
- "2025-09-10T18:40:00.000000000",
- "2025-09-10T18:41:00.000000000",
- "2025-09-10T18:42:00.000000000",
- "2025-09-10T18:43:00.000000000",
- "2025-09-10T18:44:00.000000000",
- "2025-09-10T18:45:00.000000000",
- "2025-09-10T18:46:00.000000000",
- "2025-09-10T18:47:00.000000000",
- "2025-09-10T18:48:00.000000000",
- "2025-09-10T18:49:00.000000000",
- "2025-09-10T18:50:00.000000000",
- "2025-09-10T18:51:00.000000000",
- "2025-09-10T18:52:00.000000000",
- "2025-09-10T18:53:00.000000000",
- "2025-09-10T18:54:00.000000000",
- "2025-09-10T18:55:00.000000000",
- "2025-09-10T18:56:00.000000000",
- "2025-09-10T18:57:00.000000000",
- "2025-09-10T18:58:00.000000000",
- "2025-09-10T18:59:00.000000000",
- "2025-09-10T19:00:00.000000000",
- "2025-09-10T19:01:00.000000000",
- "2025-09-10T19:02:00.000000000",
- "2025-09-10T19:03:00.000000000",
- "2025-09-10T19:04:00.000000000",
- "2025-09-10T19:05:00.000000000",
- "2025-09-10T19:06:00.000000000",
- "2025-09-10T19:07:00.000000000",
- "2025-09-10T19:08:00.000000000",
- "2025-09-10T19:09:00.000000000",
- "2025-09-10T19:10:00.000000000",
- "2025-09-10T19:11:00.000000000",
- "2025-09-10T19:12:00.000000000",
- "2025-09-10T19:13:00.000000000",
- "2025-09-10T19:14:00.000000000",
- "2025-09-10T19:15:00.000000000",
- "2025-09-10T19:16:00.000000000",
- "2025-09-10T19:17:00.000000000",
- "2025-09-10T19:18:00.000000000",
- "2025-09-10T19:19:00.000000000",
- "2025-09-10T19:20:00.000000000",
- "2025-09-10T19:21:00.000000000",
- "2025-09-10T19:22:00.000000000",
- "2025-09-10T19:23:00.000000000",
- "2025-09-10T19:24:00.000000000",
- "2025-09-10T19:25:00.000000000",
- "2025-09-10T19:26:00.000000000",
- "2025-09-10T19:27:00.000000000",
- "2025-09-10T19:28:00.000000000",
- "2025-09-10T19:29:00.000000000",
- "2025-09-10T19:30:00.000000000",
- "2025-09-10T19:31:00.000000000",
- "2025-09-10T19:32:00.000000000",
- "2025-09-10T19:33:00.000000000",
- "2025-09-10T19:34:00.000000000",
- "2025-09-10T19:35:00.000000000",
- "2025-09-10T19:36:00.000000000",
- "2025-09-10T19:37:00.000000000",
- "2025-09-10T19:38:00.000000000",
- "2025-09-10T19:39:00.000000000",
- "2025-09-10T19:40:00.000000000",
- "2025-09-10T19:41:00.000000000",
- "2025-09-10T19:42:00.000000000",
- "2025-09-10T19:43:00.000000000",
- "2025-09-10T19:44:00.000000000",
- "2025-09-10T19:45:00.000000000",
- "2025-09-10T19:46:00.000000000",
- "2025-09-10T19:47:00.000000000",
- "2025-09-10T19:48:00.000000000",
- "2025-09-10T19:49:00.000000000",
- "2025-09-10T19:50:00.000000000",
- "2025-09-10T19:51:00.000000000",
- "2025-09-10T19:52:00.000000000",
- "2025-09-10T19:53:00.000000000",
- "2025-09-10T19:54:00.000000000",
- "2025-09-10T19:55:00.000000000",
- "2025-09-10T19:56:00.000000000",
- "2025-09-10T19:57:00.000000000",
- "2025-09-10T19:58:00.000000000",
- "2025-09-10T19:59:00.000000000",
- "2025-09-10T20:00:00.000000000",
- "2025-09-10T20:01:00.000000000",
- "2025-09-10T20:02:00.000000000",
- "2025-09-10T20:03:00.000000000",
- "2025-09-10T20:04:00.000000000",
- "2025-09-10T20:05:00.000000000",
- "2025-09-10T20:06:00.000000000",
- "2025-09-10T20:07:00.000000000",
- "2025-09-10T20:08:00.000000000",
- "2025-09-10T20:09:00.000000000",
- "2025-09-10T20:10:00.000000000",
- "2025-09-10T20:11:00.000000000",
- "2025-09-10T20:12:00.000000000",
- "2025-09-10T20:13:00.000000000",
- "2025-09-10T20:14:00.000000000",
- "2025-09-10T20:15:00.000000000",
- "2025-09-10T20:16:00.000000000",
- "2025-09-10T20:17:00.000000000",
- "2025-09-10T20:18:00.000000000",
- "2025-09-10T20:19:00.000000000",
- "2025-09-10T20:20:00.000000000",
- "2025-09-10T20:21:00.000000000",
- "2025-09-10T20:22:00.000000000",
- "2025-09-10T20:23:00.000000000",
- "2025-09-10T20:24:00.000000000",
- "2025-09-10T20:25:00.000000000",
- "2025-09-10T20:26:00.000000000",
- "2025-09-10T20:27:00.000000000",
- "2025-09-10T20:28:00.000000000",
- "2025-09-10T20:29:00.000000000",
- "2025-09-10T20:30:00.000000000",
- "2025-09-10T20:31:00.000000000",
- "2025-09-10T20:32:00.000000000",
- "2025-09-10T20:33:00.000000000",
- "2025-09-10T20:34:00.000000000",
- "2025-09-10T20:35:00.000000000",
- "2025-09-10T20:36:00.000000000",
- "2025-09-10T20:37:00.000000000",
- "2025-09-10T20:38:00.000000000",
- "2025-09-10T20:39:00.000000000",
- "2025-09-10T20:40:00.000000000",
- "2025-09-10T20:41:00.000000000",
- "2025-09-10T20:42:00.000000000",
- "2025-09-10T20:43:00.000000000",
- "2025-09-10T20:44:00.000000000",
- "2025-09-10T20:45:00.000000000",
- "2025-09-10T20:46:00.000000000",
- "2025-09-10T20:47:00.000000000",
- "2025-09-10T20:48:00.000000000",
- "2025-09-10T20:49:00.000000000",
- "2025-09-10T20:50:00.000000000",
- "2025-09-10T20:51:00.000000000",
- "2025-09-10T20:52:00.000000000",
- "2025-09-10T20:53:00.000000000",
- "2025-09-10T20:54:00.000000000",
- "2025-09-10T20:55:00.000000000",
- "2025-09-10T20:56:00.000000000",
- "2025-09-10T20:57:00.000000000",
- "2025-09-10T20:58:00.000000000",
- "2025-09-10T20:59:00.000000000",
- "2025-09-10T21:00:00.000000000",
- "2025-09-10T21:01:00.000000000",
- "2025-09-10T21:02:00.000000000",
- "2025-09-10T21:03:00.000000000",
- "2025-09-10T21:04:00.000000000",
- "2025-09-10T21:05:00.000000000",
- "2025-09-10T21:06:00.000000000",
- "2025-09-10T21:07:00.000000000",
- "2025-09-10T21:08:00.000000000",
- "2025-09-10T21:09:00.000000000",
- "2025-09-10T21:10:00.000000000",
- "2025-09-10T21:11:00.000000000",
- "2025-09-10T21:12:00.000000000",
- "2025-09-10T21:13:00.000000000",
- "2025-09-10T21:14:00.000000000",
- "2025-09-10T21:15:00.000000000",
- "2025-09-10T21:16:00.000000000",
- "2025-09-10T21:17:00.000000000",
- "2025-09-10T21:18:00.000000000",
- "2025-09-10T21:19:00.000000000",
- "2025-09-10T21:20:00.000000000",
- "2025-09-10T21:21:00.000000000",
- "2025-09-10T21:22:00.000000000",
- "2025-09-10T21:23:00.000000000",
- "2025-09-10T21:24:00.000000000",
- "2025-09-10T21:25:00.000000000",
- "2025-09-10T21:26:00.000000000",
- "2025-09-10T21:27:00.000000000",
- "2025-09-10T21:28:00.000000000",
- "2025-09-10T21:29:00.000000000",
- "2025-09-10T21:30:00.000000000",
- "2025-09-10T21:31:00.000000000",
- "2025-09-10T21:32:00.000000000",
- "2025-09-10T21:33:00.000000000",
- "2025-09-10T21:34:00.000000000",
- "2025-09-10T21:35:00.000000000",
- "2025-09-10T21:36:00.000000000",
- "2025-09-10T21:37:00.000000000",
- "2025-09-10T21:38:00.000000000",
- "2025-09-10T21:39:00.000000000",
- "2025-09-10T21:40:00.000000000",
- "2025-09-10T21:41:00.000000000",
- "2025-09-10T21:42:00.000000000",
- "2025-09-10T21:43:00.000000000",
- "2025-09-10T21:44:00.000000000",
- "2025-09-10T21:45:00.000000000",
- "2025-09-10T21:46:00.000000000",
- "2025-09-10T21:47:00.000000000",
- "2025-09-10T21:48:00.000000000",
- "2025-09-10T21:49:00.000000000",
- "2025-09-10T21:50:00.000000000",
- "2025-09-10T21:51:00.000000000",
- "2025-09-10T21:52:00.000000000",
- "2025-09-10T21:53:00.000000000",
- "2025-09-10T21:54:00.000000000",
- "2025-09-10T21:55:00.000000000",
- "2025-09-10T21:56:00.000000000",
- "2025-09-10T21:57:00.000000000",
- "2025-09-10T21:58:00.000000000",
- "2025-09-10T21:59:00.000000000",
- "2025-09-10T22:00:00.000000000",
- "2025-09-10T22:01:00.000000000",
- "2025-09-10T22:02:00.000000000",
- "2025-09-10T22:03:00.000000000",
- "2025-09-10T22:04:00.000000000",
- "2025-09-10T22:05:00.000000000",
- "2025-09-10T22:06:00.000000000",
- "2025-09-10T22:07:00.000000000",
- "2025-09-10T22:08:00.000000000",
- "2025-09-10T22:09:00.000000000",
- "2025-09-10T22:10:00.000000000",
- "2025-09-10T22:11:00.000000000",
- "2025-09-10T22:12:00.000000000",
- "2025-09-10T22:13:00.000000000",
- "2025-09-10T22:14:00.000000000",
- "2025-09-10T22:15:00.000000000",
- "2025-09-10T22:16:00.000000000",
- "2025-09-10T22:17:00.000000000",
- "2025-09-10T22:18:00.000000000",
- "2025-09-10T22:19:00.000000000",
- "2025-09-10T22:20:00.000000000",
- "2025-09-10T22:21:00.000000000",
- "2025-09-10T22:22:00.000000000",
- "2025-09-10T22:23:00.000000000",
- "2025-09-10T22:24:00.000000000",
- "2025-09-10T22:25:00.000000000",
- "2025-09-10T22:26:00.000000000",
- "2025-09-10T22:27:00.000000000",
- "2025-09-10T22:28:00.000000000",
- "2025-09-10T22:29:00.000000000"
- ],
- "xaxis": "x4",
- "y": {
- "bdata": "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",
- "dtype": "f8"
- },
- "yaxis": "y4"
- },
- {
- "marker": {
- "color": "darkgreen",
- "size": 12,
- "symbol": "triangle-up"
- },
- "mode": "markers",
- "name": "SOL-USDT BUY OPEN",
- "showlegend": true,
- "type": "scatter",
- "x": [
- "2025-09-10T13:50:00.000000000",
- "2025-09-10T14:03:00.000000000",
- "2025-09-10T14:08:00.000000000",
- "2025-09-10T14:48:00.000000000",
- "2025-09-10T15:04:00.000000000",
- "2025-09-10T15:52:00.000000000",
- "2025-09-10T17:00:00.000000000",
- "2025-09-10T17:04:00.000000000",
- "2025-09-10T17:57:00.000000000",
- "2025-09-10T18:05:00.000000000",
- "2025-09-10T18:12:00.000000000",
- "2025-09-10T20:37:00.000000000",
- "2025-09-10T21:12:00.000000000",
- "2025-09-10T22:03:00.000000000",
- "2025-09-10T22:16:00.000000000"
- ],
- "xaxis": "x4",
- "y": {
- "bdata": "ZpT9dgEFbEDMFsok0AxsQLr42qbDDGxA4xtKVVjla0Cx9/XNsOxrQEVyWd4y5mtAVVnec7D6a0A/bjLi2flrQBf2zyFu0mtA73zB+FfZa0CD134TBstrQNbWSMRZuGtAEvhoRrXYa0Ay2HftCPNrQJZbu04S92tA",
- "dtype": "f8"
- },
- "yaxis": "y4"
- },
- {
- "line": {
- "color": "black",
- "width": 2
- },
- "marker": {
- "color": "green",
- "size": 12,
- "symbol": "triangle-up"
- },
- "mode": "markers",
- "name": "SOL-USDT BUY CLOSE",
- "showlegend": true,
- "type": "scatter",
- "x": [
- "2025-09-10T13:35:00.000000000",
- "2025-09-10T13:42:00.000000000",
- "2025-09-10T15:47:00.000000000",
- "2025-09-10T16:05:00.000000000",
- "2025-09-10T16:41:00.000000000",
- "2025-09-10T16:46:00.000000000",
- "2025-09-10T16:49:00.000000000",
- "2025-09-10T19:10:00.000000000",
- "2025-09-10T20:00:00.000000000",
- "2025-09-10T21:03:00.000000000"
- ],
- "xaxis": "x4",
- "y": {
- "bdata": "ycKeoqXfa0AY2/YAzgVsQEmbP44c4WtAHJp3Xfvba0AVY+2Lj9xrQIpisYzX4mtAVhf0POzia0CAgbB3jtNrQHCm30tZq2tABEsEKpPca0A=",
- "dtype": "f8"
- },
- "yaxis": "y4"
- },
- {
- "marker": {
- "color": "red",
- "size": 12,
- "symbol": "triangle-down"
- },
- "mode": "markers",
- "name": "SOL-USDT SELL OPEN",
- "showlegend": true,
- "type": "scatter",
- "x": [
- "2025-09-10T13:34:00.000000000",
- "2025-09-10T13:39:00.000000000",
- "2025-09-10T15:30:00.000000000",
- "2025-09-10T16:04:00.000000000",
- "2025-09-10T16:10:00.000000000",
- "2025-09-10T16:43:00.000000000",
- "2025-09-10T16:47:00.000000000",
- "2025-09-10T18:36:00.000000000",
- "2025-09-10T19:11:00.000000000",
- "2025-09-10T20:54:00.000000000"
- ],
- "xaxis": "x4",
- "y": {
- "bdata": "Q4ekiyzia0CRSXx9svdrQBU8Ec+46mtAP4RwSrnba0C4eRBrCNtrQMT+9q/j2GtAhodZlKnia0C6hhiY+c1rQDT+VFU8zWtAtBY7alzOa0A=",
- "dtype": "f8"
- },
- "yaxis": "y4"
- },
- {
- "line": {
- "color": "black",
- "width": 2
- },
- "marker": {
- "color": "red",
- "size": 12,
- "symbol": "triangle-down"
- },
- "mode": "markers",
- "name": "SOL-USDT SELL CLOSE",
- "showlegend": true,
- "type": "scatter",
- "x": [
- "2025-09-10T13:58:00.000000000",
- "2025-09-10T14:04:00.000000000",
- "2025-09-10T14:45:00.000000000",
- "2025-09-10T14:56:00.000000000",
- "2025-09-10T15:05:00.000000000",
- "2025-09-10T15:54:00.000000000",
- "2025-09-10T17:02:00.000000000",
- "2025-09-10T17:50:00.000000000",
- "2025-09-10T18:01:00.000000000",
- "2025-09-10T18:08:00.000000000",
- "2025-09-10T18:15:00.000000000",
- "2025-09-10T20:45:00.000000000",
- "2025-09-10T21:17:00.000000000",
- "2025-09-10T22:05:00.000000000",
- "2025-09-10T22:26:00.000000000"
- ],
- "xaxis": "x4",
- "y": {
- "bdata": "XZ20N90GbEDfiwlnaRZsQJcIj/Wb5mtAlY4tl/rda0BJwEjk+PdrQJTBJ3Q47WtAg/kIN3D5a0DbBg4Jst1rQKX1VKtW3GtAoD9426XVa0CSibN2FMlrQPF6hu+txWtAOIbhDtzda0DN6YWAM/VrQAvgM32i9WtA",
- "dtype": "f8"
- },
- "yaxis": "y4"
- }
- ],
- "layout": {
- "annotations": [
- {
- "font": {
- "size": 16
- },
- "showarrow": false,
- "text": "Dis-equilibrium with Trading Thresholds (2025-09-10)",
- "x": 0.5,
- "xanchor": "center",
- "xref": "paper",
- "y": 1,
- "yanchor": "bottom",
- "yref": "paper"
- },
- {
- "font": {
- "size": 16
- },
- "showarrow": false,
- "text": "Normalized Price Comparison with BUY/SELL Signals - ADA-USDT&SOL-USDT (2025-09-10)",
- "x": 0.5,
- "xanchor": "center",
- "xref": "paper",
- "y": 0.6940000000000001,
- "yanchor": "bottom",
- "yref": "paper"
- },
- {
- "font": {
- "size": 16
- },
- "showarrow": false,
- "text": "ADA-USDT Market Data with Trading Signals (2025-09-10)",
- "x": 0.5,
- "xanchor": "center",
- "xref": "paper",
- "y": 0.306,
- "yanchor": "bottom",
- "yref": "paper"
- },
- {
- "font": {
- "size": 16
- },
- "showarrow": false,
- "text": "SOL-USDT Market Data with Trading Signals (2025-09-10)",
- "x": 0.5,
- "xanchor": "center",
- "xref": "paper",
- "y": 0.123,
- "yanchor": "bottom",
- "yref": "paper"
- }
- ],
- "height": 1600,
- "plot_bgcolor": "lightgray",
- "shapes": [
- {
- "line": {
- "color": "purple",
- "dash": "dot",
- "width": 2
- },
- "opacity": 0.7,
- "type": "line",
- "x0": "2025-09-10T11:30:00",
- "x1": "2025-09-10T22:29:00",
- "xref": "x",
- "y0": 0.75,
- "y1": 0.75,
- "yref": "y"
- },
- {
- "line": {
- "color": "purple",
- "dash": "dot",
- "width": 2
- },
- "opacity": 0.7,
- "type": "line",
- "x0": "2025-09-10T11:30:00",
- "x1": "2025-09-10T22:29:00",
- "xref": "x",
- "y0": -0.75,
- "y1": -0.75,
- "yref": "y"
- },
- {
- "line": {
- "color": "brown",
- "dash": "dot",
- "width": 2
- },
- "opacity": 0.7,
- "type": "line",
- "x0": "2025-09-10T11:30:00",
- "x1": "2025-09-10T22:29:00",
- "xref": "x",
- "y0": 0.5,
- "y1": 0.5,
- "yref": "y"
- },
- {
- "line": {
- "color": "brown",
- "dash": "dot",
- "width": 2
- },
- "opacity": 0.7,
- "type": "line",
- "x0": "2025-09-10T11:30:00",
- "x1": "2025-09-10T22:29:00",
- "xref": "x",
- "y0": -0.5,
- "y1": -0.5,
- "yref": "y"
- },
- {
- "line": {
- "color": "black",
- "dash": "solid",
- "width": 1
- },
- "opacity": 0.5,
- "type": "line",
- "x0": "2025-09-10T11:30:00",
- "x1": "2025-09-10T22:29:00",
- "xref": "x",
- "y0": 0,
- "y1": 0,
- "yref": "y"
- }
- ],
- "showlegend": true,
- "template": {
- "data": {
- "bar": [
- {
- "error_x": {
- "color": "#2a3f5f"
- },
- "error_y": {
- "color": "#2a3f5f"
- },
- "marker": {
- "line": {
- "color": "white",
- "width": 0.5
- },
- "pattern": {
- "fillmode": "overlay",
- "size": 10,
- "solidity": 0.2
- }
- },
- "type": "bar"
- }
- ],
- "barpolar": [
- {
- "marker": {
- "line": {
- "color": "white",
- "width": 0.5
- },
- "pattern": {
- "fillmode": "overlay",
- "size": 10,
- "solidity": 0.2
- }
- },
- "type": "barpolar"
- }
- ],
- "carpet": [
- {
- "aaxis": {
- "endlinecolor": "#2a3f5f",
- "gridcolor": "#C8D4E3",
- "linecolor": "#C8D4E3",
- "minorgridcolor": "#C8D4E3",
- "startlinecolor": "#2a3f5f"
- },
- "baxis": {
- "endlinecolor": "#2a3f5f",
- "gridcolor": "#C8D4E3",
- "linecolor": "#C8D4E3",
- "minorgridcolor": "#C8D4E3",
- "startlinecolor": "#2a3f5f"
- },
- "type": "carpet"
- }
- ],
- "choropleth": [
- {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- },
- "type": "choropleth"
- }
- ],
- "contour": [
- {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- },
- "colorscale": [
- [
- 0,
- "#0d0887"
- ],
- [
- 0.1111111111111111,
- "#46039f"
- ],
- [
- 0.2222222222222222,
- "#7201a8"
- ],
- [
- 0.3333333333333333,
- "#9c179e"
- ],
- [
- 0.4444444444444444,
- "#bd3786"
- ],
- [
- 0.5555555555555556,
- "#d8576b"
- ],
- [
- 0.6666666666666666,
- "#ed7953"
- ],
- [
- 0.7777777777777778,
- "#fb9f3a"
- ],
- [
- 0.8888888888888888,
- "#fdca26"
- ],
- [
- 1,
- "#f0f921"
- ]
- ],
- "type": "contour"
- }
- ],
- "contourcarpet": [
- {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- },
- "type": "contourcarpet"
- }
- ],
- "heatmap": [
- {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- },
- "colorscale": [
- [
- 0,
- "#0d0887"
- ],
- [
- 0.1111111111111111,
- "#46039f"
- ],
- [
- 0.2222222222222222,
- "#7201a8"
- ],
- [
- 0.3333333333333333,
- "#9c179e"
- ],
- [
- 0.4444444444444444,
- "#bd3786"
- ],
- [
- 0.5555555555555556,
- "#d8576b"
- ],
- [
- 0.6666666666666666,
- "#ed7953"
- ],
- [
- 0.7777777777777778,
- "#fb9f3a"
- ],
- [
- 0.8888888888888888,
- "#fdca26"
- ],
- [
- 1,
- "#f0f921"
- ]
- ],
- "type": "heatmap"
- }
- ],
- "histogram": [
- {
- "marker": {
- "pattern": {
- "fillmode": "overlay",
- "size": 10,
- "solidity": 0.2
- }
- },
- "type": "histogram"
- }
- ],
- "histogram2d": [
- {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- },
- "colorscale": [
- [
- 0,
- "#0d0887"
- ],
- [
- 0.1111111111111111,
- "#46039f"
- ],
- [
- 0.2222222222222222,
- "#7201a8"
- ],
- [
- 0.3333333333333333,
- "#9c179e"
- ],
- [
- 0.4444444444444444,
- "#bd3786"
- ],
- [
- 0.5555555555555556,
- "#d8576b"
- ],
- [
- 0.6666666666666666,
- "#ed7953"
- ],
- [
- 0.7777777777777778,
- "#fb9f3a"
- ],
- [
- 0.8888888888888888,
- "#fdca26"
- ],
- [
- 1,
- "#f0f921"
- ]
- ],
- "type": "histogram2d"
- }
- ],
- "histogram2dcontour": [
- {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- },
- "colorscale": [
- [
- 0,
- "#0d0887"
- ],
- [
- 0.1111111111111111,
- "#46039f"
- ],
- [
- 0.2222222222222222,
- "#7201a8"
- ],
- [
- 0.3333333333333333,
- "#9c179e"
- ],
- [
- 0.4444444444444444,
- "#bd3786"
- ],
- [
- 0.5555555555555556,
- "#d8576b"
- ],
- [
- 0.6666666666666666,
- "#ed7953"
- ],
- [
- 0.7777777777777778,
- "#fb9f3a"
- ],
- [
- 0.8888888888888888,
- "#fdca26"
- ],
- [
- 1,
- "#f0f921"
- ]
- ],
- "type": "histogram2dcontour"
- }
- ],
- "mesh3d": [
- {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- },
- "type": "mesh3d"
- }
- ],
- "parcoords": [
- {
- "line": {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- }
- },
- "type": "parcoords"
- }
- ],
- "pie": [
- {
- "automargin": true,
- "type": "pie"
- }
- ],
- "scatter": [
- {
- "fillpattern": {
- "fillmode": "overlay",
- "size": 10,
- "solidity": 0.2
- },
- "type": "scatter"
- }
- ],
- "scatter3d": [
- {
- "line": {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- }
- },
- "marker": {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- }
- },
- "type": "scatter3d"
- }
- ],
- "scattercarpet": [
- {
- "marker": {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- }
- },
- "type": "scattercarpet"
- }
- ],
- "scattergeo": [
- {
- "marker": {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- }
- },
- "type": "scattergeo"
- }
- ],
- "scattergl": [
- {
- "marker": {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- }
- },
- "type": "scattergl"
- }
- ],
- "scattermap": [
- {
- "marker": {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- }
- },
- "type": "scattermap"
- }
- ],
- "scattermapbox": [
- {
- "marker": {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- }
- },
- "type": "scattermapbox"
- }
- ],
- "scatterpolar": [
- {
- "marker": {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- }
- },
- "type": "scatterpolar"
- }
- ],
- "scatterpolargl": [
- {
- "marker": {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- }
- },
- "type": "scatterpolargl"
- }
- ],
- "scatterternary": [
- {
- "marker": {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- }
- },
- "type": "scatterternary"
- }
- ],
- "surface": [
- {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- },
- "colorscale": [
- [
- 0,
- "#0d0887"
- ],
- [
- 0.1111111111111111,
- "#46039f"
- ],
- [
- 0.2222222222222222,
- "#7201a8"
- ],
- [
- 0.3333333333333333,
- "#9c179e"
- ],
- [
- 0.4444444444444444,
- "#bd3786"
- ],
- [
- 0.5555555555555556,
- "#d8576b"
- ],
- [
- 0.6666666666666666,
- "#ed7953"
- ],
- [
- 0.7777777777777778,
- "#fb9f3a"
- ],
- [
- 0.8888888888888888,
- "#fdca26"
- ],
- [
- 1,
- "#f0f921"
- ]
- ],
- "type": "surface"
- }
- ],
- "table": [
- {
- "cells": {
- "fill": {
- "color": "#EBF0F8"
- },
- "line": {
- "color": "white"
- }
- },
- "header": {
- "fill": {
- "color": "#C8D4E3"
- },
- "line": {
- "color": "white"
- }
- },
- "type": "table"
- }
- ]
- },
- "layout": {
- "annotationdefaults": {
- "arrowcolor": "#2a3f5f",
- "arrowhead": 0,
- "arrowwidth": 1
- },
- "autotypenumbers": "strict",
- "coloraxis": {
- "colorbar": {
- "outlinewidth": 0,
- "ticks": ""
- }
- },
- "colorscale": {
- "diverging": [
- [
- 0,
- "#8e0152"
- ],
- [
- 0.1,
- "#c51b7d"
- ],
- [
- 0.2,
- "#de77ae"
- ],
- [
- 0.3,
- "#f1b6da"
- ],
- [
- 0.4,
- "#fde0ef"
- ],
- [
- 0.5,
- "#f7f7f7"
- ],
- [
- 0.6,
- "#e6f5d0"
- ],
- [
- 0.7,
- "#b8e186"
- ],
- [
- 0.8,
- "#7fbc41"
- ],
- [
- 0.9,
- "#4d9221"
- ],
- [
- 1,
- "#276419"
- ]
- ],
- "sequential": [
- [
- 0,
- "#0d0887"
- ],
- [
- 0.1111111111111111,
- "#46039f"
- ],
- [
- 0.2222222222222222,
- "#7201a8"
- ],
- [
- 0.3333333333333333,
- "#9c179e"
- ],
- [
- 0.4444444444444444,
- "#bd3786"
- ],
- [
- 0.5555555555555556,
- "#d8576b"
- ],
- [
- 0.6666666666666666,
- "#ed7953"
- ],
- [
- 0.7777777777777778,
- "#fb9f3a"
- ],
- [
- 0.8888888888888888,
- "#fdca26"
- ],
- [
- 1,
- "#f0f921"
- ]
- ],
- "sequentialminus": [
- [
- 0,
- "#0d0887"
- ],
- [
- 0.1111111111111111,
- "#46039f"
- ],
- [
- 0.2222222222222222,
- "#7201a8"
- ],
- [
- 0.3333333333333333,
- "#9c179e"
- ],
- [
- 0.4444444444444444,
- "#bd3786"
- ],
- [
- 0.5555555555555556,
- "#d8576b"
- ],
- [
- 0.6666666666666666,
- "#ed7953"
- ],
- [
- 0.7777777777777778,
- "#fb9f3a"
- ],
- [
- 0.8888888888888888,
- "#fdca26"
- ],
- [
- 1,
- "#f0f921"
- ]
- ]
- },
- "colorway": [
- "#636efa",
- "#EF553B",
- "#00cc96",
- "#ab63fa",
- "#FFA15A",
- "#19d3f3",
- "#FF6692",
- "#B6E880",
- "#FF97FF",
- "#FECB52"
- ],
- "font": {
- "color": "#2a3f5f"
- },
- "geo": {
- "bgcolor": "white",
- "lakecolor": "white",
- "landcolor": "white",
- "showlakes": true,
- "showland": true,
- "subunitcolor": "#C8D4E3"
- },
- "hoverlabel": {
- "align": "left"
- },
- "hovermode": "closest",
- "mapbox": {
- "style": "light"
- },
- "paper_bgcolor": "white",
- "plot_bgcolor": "white",
- "polar": {
- "angularaxis": {
- "gridcolor": "#EBF0F8",
- "linecolor": "#EBF0F8",
- "ticks": ""
- },
- "bgcolor": "white",
- "radialaxis": {
- "gridcolor": "#EBF0F8",
- "linecolor": "#EBF0F8",
- "ticks": ""
- }
- },
- "scene": {
- "xaxis": {
- "backgroundcolor": "white",
- "gridcolor": "#DFE8F3",
- "gridwidth": 2,
- "linecolor": "#EBF0F8",
- "showbackground": true,
- "ticks": "",
- "zerolinecolor": "#EBF0F8"
- },
- "yaxis": {
- "backgroundcolor": "white",
- "gridcolor": "#DFE8F3",
- "gridwidth": 2,
- "linecolor": "#EBF0F8",
- "showbackground": true,
- "ticks": "",
- "zerolinecolor": "#EBF0F8"
- },
- "zaxis": {
- "backgroundcolor": "white",
- "gridcolor": "#DFE8F3",
- "gridwidth": 2,
- "linecolor": "#EBF0F8",
- "showbackground": true,
- "ticks": "",
- "zerolinecolor": "#EBF0F8"
- }
- },
- "shapedefaults": {
- "line": {
- "color": "#2a3f5f"
- }
- },
- "ternary": {
- "aaxis": {
- "gridcolor": "#DFE8F3",
- "linecolor": "#A2B1C6",
- "ticks": ""
- },
- "baxis": {
- "gridcolor": "#DFE8F3",
- "linecolor": "#A2B1C6",
- "ticks": ""
- },
- "bgcolor": "white",
- "caxis": {
- "gridcolor": "#DFE8F3",
- "linecolor": "#A2B1C6",
- "ticks": ""
- }
- },
- "title": {
- "x": 0.05
- },
- "xaxis": {
- "automargin": true,
- "gridcolor": "#EBF0F8",
- "linecolor": "#EBF0F8",
- "ticks": "",
- "title": {
- "standoff": 15
- },
- "zerolinecolor": "#EBF0F8",
- "zerolinewidth": 2
- },
- "yaxis": {
- "automargin": true,
- "gridcolor": "#EBF0F8",
- "linecolor": "#EBF0F8",
- "ticks": "",
- "title": {
- "standoff": 15
- },
- "zerolinecolor": "#EBF0F8",
- "zerolinewidth": 2
- }
- }
- },
- "title": {
- "text": "Strategy Analysis - ADA-USDT & SOL-USDT (2025-09-10)"
- },
- "xaxis": {
- "anchor": "y",
- "domain": [
- 0,
- 1
- ],
- "range": [
- "2025-09-10T11:30:00",
- "2025-09-10T22:29:00"
- ]
- },
- "xaxis2": {
- "anchor": "y2",
- "domain": [
- 0,
- 1
- ],
- "range": [
- "2025-09-10T11:30:00",
- "2025-09-10T22:29:00"
- ]
- },
- "xaxis3": {
- "anchor": "y3",
- "domain": [
- 0,
- 1
- ],
- "range": [
- "2025-09-10T11:30:00",
- "2025-09-10T22:29:00"
- ]
- },
- "xaxis4": {
- "anchor": "y4",
- "domain": [
- 0,
- 1
- ],
- "range": [
- "2025-09-10T11:30:00",
- "2025-09-10T22:29:00"
- ],
- "title": {
- "text": "Time"
- }
- },
- "yaxis": {
- "anchor": "x",
- "domain": [
- 0.754,
- 1
- ],
- "title": {
- "text": "Scaled Dis-equilibrium"
- }
- },
- "yaxis2": {
- "anchor": "x2",
- "domain": [
- 0.366,
- 0.6940000000000001
- ],
- "title": {
- "text": "ADA-USDT Price ($)"
- }
- },
- "yaxis3": {
- "anchor": "x3",
- "domain": [
- 0.183,
- 0.306
- ],
- "title": {
- "text": "SOL-USDT Price ($)"
- }
- },
- "yaxis4": {
- "anchor": "x4",
- "domain": [
- 0,
- 0.123
- ],
- "title": {
- "text": "Normalized Price (Base = 1.0)"
- }
- }
- }
- },
- "text/html": [
- ""
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "name": "stdout",
- "output_type": "stream",
- "text": [
- "\n",
- "Chart shows:\n",
- "- ADA-USDT and SOL-USDT prices normalized to start at 1.0\n",
- "- BUY signals shown as green triangles pointing up\n",
- "- SELL signals shown as orange triangles pointing down\n",
- "- All BUY signals per symbol grouped together, all SELL signals per symbol grouped together\n",
- "- Hover over markers to see individual trade details (OPEN/CLOSE status)\n",
- "- Total signals displayed: 100\n",
- "- ADA-USDT signals: 50\n",
- "- SOL-USDT signals: 50\n",
- "\n",
- "============================================================\n",
- "PAIR RESEARCH PERFORMANCE ANALYSIS\n",
- "============================================================\n",
- "\n",
- "====== PAIR RESEARCH RETURNS BY DAY ======\n",
- "\n",
- "--- 20250910 ---\n",
- " 13:34:00-13:35:00\n",
- " ADA-USDT: BUY @ $0.89 → SELL @ $0.89 | Return: -0.00% | Shares: 1128.80\n",
- " SOL-USDT: SELL @ $223.07 → BUY @ $222.99 | Return: +0.04% | Shares: 4.48\n",
- " Disequilibrium: Open: -0.0009, Close: -0.0000\n",
- " Pair Return: +0.03% | Close Condition: CLOSE\n",
- "\n",
- " 13:39:00-13:42:00\n",
- " ADA-USDT: BUY @ $0.89 → SELL @ $0.89 | Return: +0.36% | Shares: 1126.94\n",
- " SOL-USDT: SELL @ $223.74 → BUY @ $224.18 | Return: -0.20% | Shares: 4.47\n",
- " Disequilibrium: Open: -0.0006, Close: -0.0000\n",
- " Pair Return: +0.16% | Close Condition: CLOSE\n",
- "\n",
- " 13:50:00-13:58:00\n",
- " ADA-USDT: SELL @ $0.89 → BUY @ $0.89 | Return: +0.16% | Shares: 1119.95\n",
- " SOL-USDT: BUY @ $224.16 → SELL @ $224.21 | Return: +0.03% | Shares: 4.46\n",
- " Disequilibrium: Open: 0.0025, Close: 0.0003\n",
- " Pair Return: +0.19% | Close Condition: CLOSE\n",
- "\n",
- " 14:03:00-14:04:00\n",
- " ADA-USDT: SELL @ $0.89 → BUY @ $0.89 | Return: -0.15% | Shares: 1121.45\n",
- " SOL-USDT: BUY @ $224.40 → SELL @ $224.70 | Return: +0.13% | Shares: 4.46\n",
- " Disequilibrium: Open: 0.0014, Close: 0.0006\n",
- " Pair Return: -0.01% | Close Condition: CLOSE\n",
- "\n",
- " 14:08:00-14:45:00\n",
- " ADA-USDT: SELL @ $0.89 → BUY @ $0.89 | Return: +0.61% | Shares: 1118.42\n",
- " SOL-USDT: BUY @ $224.40 → SELL @ $223.21 | Return: -0.53% | Shares: 4.46\n",
- " Disequilibrium: Open: 0.0019, Close: 0.0003\n",
- " Pair Return: +0.08% | Close Condition: CLOSE\n",
- "\n",
- " 14:48:00-14:56:00\n",
- " ADA-USDT: SELL @ $0.89 → BUY @ $0.89 | Return: +0.20% | Shares: 1125.06\n",
- " SOL-USDT: BUY @ $223.17 → SELL @ $222.94 | Return: -0.10% | Shares: 4.48\n",
- " Disequilibrium: Open: 0.0011, Close: 0.0006\n",
- " Pair Return: +0.09% | Close Condition: CLOSE\n",
- "\n",
- " 15:04:00-15:05:00\n",
- " ADA-USDT: SELL @ $0.89 → BUY @ $0.89 | Return: -0.07% | Shares: 1124.78\n",
- " SOL-USDT: BUY @ $223.40 → SELL @ $223.75 | Return: +0.16% | Shares: 4.48\n",
- " Disequilibrium: Open: 0.0012, Close: 0.0005\n",
- " Pair Return: +0.09% | Close Condition: CLOSE\n",
- "\n",
- " 15:30:00-15:47:00\n",
- " ADA-USDT: BUY @ $0.89 → SELL @ $0.89 | Return: +0.17% | Shares: 1126.65\n",
- " SOL-USDT: SELL @ $223.34 → BUY @ $223.03 | Return: +0.13% | Shares: 4.48\n",
- " Disequilibrium: Open: -0.0015, Close: 0.0003\n",
- " Pair Return: +0.30% | Close Condition: CLOSE\n",
- "\n",
- " 15:52:00-15:54:00\n",
- " ADA-USDT: SELL @ $0.89 → BUY @ $0.89 | Return: -0.04% | Shares: 1124.33\n",
- " SOL-USDT: BUY @ $223.19 → SELL @ $223.41 | Return: +0.10% | Shares: 4.48\n",
- " Disequilibrium: Open: 0.0010, Close: 0.0001\n",
- " Pair Return: +0.05% | Close Condition: CLOSE\n",
- "\n",
- " 16:04:00-16:05:00\n",
- " ADA-USDT: BUY @ $0.89 → SELL @ $0.89 | Return: +0.03% | Shares: 1126.89\n",
- " SOL-USDT: SELL @ $222.87 → BUY @ $222.87 | Return: -0.00% | Shares: 4.49\n",
- " Disequilibrium: Open: -0.0009, Close: 0.0003\n",
- " Pair Return: +0.02% | Close Condition: CLOSE\n",
- "\n",
- " 16:10:00-16:41:00\n",
- " ADA-USDT: BUY @ $0.88 → SELL @ $0.88 | Return: +0.03% | Shares: 1130.38\n",
- " SOL-USDT: SELL @ $222.84 → BUY @ $222.89 | Return: -0.02% | Shares: 4.49\n",
- " Disequilibrium: Open: -0.0012, Close: -0.0001\n",
- " Pair Return: +0.01% | Close Condition: CLOSE\n",
- "\n",
- " 16:43:00-16:46:00\n",
- " ADA-USDT: BUY @ $0.88 → SELL @ $0.88 | Return: +0.03% | Shares: 1130.30\n",
- " SOL-USDT: SELL @ $222.78 → BUY @ $223.09 | Return: -0.14% | Shares: 4.49\n",
- " Disequilibrium: Open: -0.0006, Close: -0.0002\n",
- " Pair Return: -0.11% | Close Condition: CLOSE\n",
- "\n",
- " 16:47:00-16:49:00\n",
- " ADA-USDT: BUY @ $0.89 → SELL @ $0.89 | Return: +0.14% | Shares: 1129.22\n",
- " SOL-USDT: SELL @ $223.08 → BUY @ $223.09 | Return: -0.00% | Shares: 4.48\n",
- " Disequilibrium: Open: -0.0007, Close: 0.0001\n",
- " Pair Return: +0.13% | Close Condition: CLOSE\n",
- "\n",
- " 17:00:00-17:02:00\n",
- " ADA-USDT: SELL @ $0.89 → BUY @ $0.89 | Return: -0.02% | Shares: 1122.89\n",
- " SOL-USDT: BUY @ $223.83 → SELL @ $223.79 | Return: -0.02% | Shares: 4.47\n",
- " Disequilibrium: Open: 0.0015, Close: 0.0005\n",
- " Pair Return: -0.04% | Close Condition: CLOSE\n",
- "\n",
- " 17:04:00-17:50:00\n",
- " ADA-USDT: SELL @ $0.89 → BUY @ $0.89 | Return: +0.36% | Shares: 1122.42\n",
- " SOL-USDT: BUY @ $223.81 → SELL @ $222.93 | Return: -0.39% | Shares: 4.47\n",
- " Disequilibrium: Open: 0.0013, Close: 0.0015\n",
- " Pair Return: -0.03% | Close Condition: CLOSE\n",
- "\n",
- " 17:57:00-18:01:00\n",
- " ADA-USDT: SELL @ $0.89 → BUY @ $0.89 | Return: -0.00% | Shares: 1126.57\n",
- " SOL-USDT: BUY @ $222.58 → SELL @ $222.89 | Return: +0.14% | Shares: 4.49\n",
- " Disequilibrium: Open: 0.0019, Close: 0.0009\n",
- " Pair Return: +0.14% | Close Condition: CLOSE\n",
- "\n",
- " 18:05:00-18:08:00\n",
- " ADA-USDT: SELL @ $0.89 → BUY @ $0.89 | Return: +0.13% | Shares: 1126.22\n",
- " SOL-USDT: BUY @ $222.79 → SELL @ $222.68 | Return: -0.05% | Shares: 4.49\n",
- " Disequilibrium: Open: 0.0016, Close: 0.0007\n",
- " Pair Return: +0.07% | Close Condition: CLOSE\n",
- "\n",
- " 18:12:00-18:15:00\n",
- " ADA-USDT: SELL @ $0.89 → BUY @ $0.89 | Return: +0.10% | Shares: 1128.33\n",
- " SOL-USDT: BUY @ $222.34 → SELL @ $222.28 | Return: -0.03% | Shares: 4.50\n",
- " Disequilibrium: Open: 0.0007, Close: -0.0001\n",
- " Pair Return: +0.07% | Close Condition: CLOSE\n",
- "\n",
- " 18:36:00-19:10:00\n",
- " ADA-USDT: BUY @ $0.88 → SELL @ $0.88 | Return: -0.38% | Shares: 1131.23\n",
- " SOL-USDT: SELL @ $222.44 → BUY @ $222.61 | Return: -0.08% | Shares: 4.50\n",
- " Disequilibrium: Open: -0.0022, Close: 0.0000\n",
- " Pair Return: -0.46% | Close Condition: CLOSE_STOP_LOSS\n",
- "\n",
- " 19:11:00-20:00:00\n",
- " ADA-USDT: BUY @ $0.88 → SELL @ $0.88 | Return: -0.16% | Shares: 1136.54\n",
- " SOL-USDT: SELL @ $222.41 → BUY @ $221.35 | Return: +0.48% | Shares: 4.50\n",
- " Disequilibrium: Open: -0.0235, Close: 0.0022\n",
- " Pair Return: +0.32% | Close Condition: CLOSE\n",
- "\n",
- " 20:37:00-20:45:00\n",
- " ADA-USDT: SELL @ $0.88 → BUY @ $0.88 | Return: -0.05% | Shares: 1136.39\n",
- " SOL-USDT: BUY @ $221.76 → SELL @ $222.18 | Return: +0.19% | Shares: 4.51\n",
- " Disequilibrium: Open: 0.0017, Close: 0.0006\n",
- " Pair Return: +0.13% | Close Condition: CLOSE\n",
- "\n",
- " 20:54:00-21:03:00\n",
- " ADA-USDT: BUY @ $0.88 → SELL @ $0.88 | Return: +0.30% | Shares: 1137.07\n",
- " SOL-USDT: SELL @ $222.45 → BUY @ $222.89 | Return: -0.20% | Shares: 4.50\n",
- " Disequilibrium: Open: -0.0009, Close: 0.0004\n",
- " Pair Return: +0.10% | Close Condition: CLOSE\n",
- "\n",
- " 21:12:00-21:17:00\n",
- " ADA-USDT: SELL @ $0.88 → BUY @ $0.88 | Return: +0.08% | Shares: 1131.20\n",
- " SOL-USDT: BUY @ $222.77 → SELL @ $222.93 | Return: +0.07% | Shares: 4.49\n",
- " Disequilibrium: Open: 0.0016, Close: 0.0004\n",
- " Pair Return: +0.15% | Close Condition: CLOSE\n",
- "\n",
- " 22:03:00-22:05:00\n",
- " ADA-USDT: SELL @ $0.89 → BUY @ $0.89 | Return: +0.00% | Shares: 1128.77\n",
- " SOL-USDT: BUY @ $223.59 → SELL @ $223.66 | Return: +0.03% | Shares: 4.47\n",
- " Disequilibrium: Open: 0.0008, Close: 0.0003\n",
- " Pair Return: +0.03% | Close Condition: CLOSE\n",
- "\n",
- " 22:16:00-22:26:00\n",
- " ADA-USDT: SELL @ $0.89 → BUY @ $0.89 | Return: +0.17% | Shares: 1127.26\n",
- " SOL-USDT: BUY @ $223.72 → SELL @ $223.68 | Return: -0.02% | Shares: 4.47\n",
- " Disequilibrium: Open: 0.0002, Close: 0.0000\n",
- " Pair Return: +0.15% | Close Condition: CLOSE\n",
- "\n",
- " Day Total Return: +1.67% (25 pairs)\n",
- "\n",
- "====== TOTAL RETURN ACROSS ALL DAYS ======\n",
- "Total Return: +1.67%\n",
- "Total Days: 1\n",
- "Average Daily Return: +1.67%\n",
- "\n",
- "====== NO OUTSTANDING POSITIONS ======\n",
- "\n",
- "====== ADDITIONAL METRICS ======\n",
- "Winning Days: 1/1 (100.0%)\n",
- "Average Symbol Return: +0.03%\n",
- "Average Pair Return: +0.03%\n",
- "Daily Return Range: +1.67% to +1.67%\n",
- "\n",
- "====== PAIR RESEARCH GRAND TOTALS ======\n",
- "---\n",
- "Total Return: +1.67%\n",
- "---\n",
- "Total Days Traded: 1\n",
- "Total Open-Close Actions: 25\n",
- "Total Trades: 4 * 25 = 100\n",
- "Average Daily Return: +1.67%\n",
- "Best Day: 20250910 (+1.67%)\n",
- "Worst Day: 20250910 (+1.67%)\n"
- ]
- }
- ],
- "source": [
- "setup()\n",
- "load_config_from_file()\n",
- "prepare_config()\n",
- "run_strategy()\n",
- "visualize()\n",
- "summary() \n"
- ]
- }
- ],
- "metadata": {
- "kernelspec": {
- "display_name": "python3.12-venv",
- "language": "python",
- "name": "python3"
- },
- "language_info": {
- "codemirror_mode": {
- "name": "ipython",
- "version": 3
- },
- "file_extension": ".py",
- "mimetype": "text/x-python",
- "name": "python",
- "nbconvert_exporter": "python",
- "pygments_lexer": "ipython3",
- "version": "3.12.9"
- }
- },
- "nbformat": 4,
- "nbformat_minor": 2
-}
diff --git a/__SAV__/scripts/load_crypto_1min.sh b/__SAV__/scripts/load_crypto_1min.sh
deleted file mode 100755
index fd4f058..0000000
--- a/__SAV__/scripts/load_crypto_1min.sh
+++ /dev/null
@@ -1,42 +0,0 @@
-#!/usr/bin/env bash
-
-# -------------------------------------
-# --- Given month, specific dates
-# -------------------------------------
-
-# for dt in 20250528 20250529 20250530 20250531; do
-# rsync -ahvv cvtt@hs01.cvtt.vpn:/works/cvtt/md_archive/crypto/sim/2025/2025-05/${dt}.*.gz ./
-# done
-# -------------------------------------
-
-# -------------------------------------
-# --- Current month - all files
-# -------------------------------------
-cd $(realpath $(dirname $0))/..
-mkdir -p ./data/crypto
-pushd ./data/crypto
-
-Files=$1
-if [ -z "$Files" ]; then
- Files="*.gz"
-fi
-
-Cmd="rsync -ahvv cvtt@hs01.cvtt.vpn:/works/cvtt/md_archive/crypto/sim/${Files} ./"
-echo $Cmd
-eval $Cmd
-# -------------------------------------
-
-for srcfname in $(ls *.db.gz); do
- dt="${srcfname:0:8}"
- tgtfile=${dt}.mktdata.ohlcv.db
- echo "${srcfname} -> ${tgtfile}"
-
- Cmd="gunzip -c $srcfname > temp.db"
- echo $Cmd
- eval $Cmd
- Cmd="rm -f ${tgtfile} && sqlite3 temp.db \".dump md_1min_bars\" | sqlite3 ${tgtfile} && rm ${srcfname}"
- echo $Cmd
- eval $Cmd
-done
-rm temp.db
-popd
diff --git a/__SAV__/scripts/load_equity_1min.sh b/__SAV__/scripts/load_equity_1min.sh
deleted file mode 100755
index 33d315f..0000000
--- a/__SAV__/scripts/load_equity_1min.sh
+++ /dev/null
@@ -1,37 +0,0 @@
-#!/usr/bin/env bash
-
-usage() {
- echo "Usage: $0 [DatePattern]"
- echo "DatePattern: YYYYMM or YYYYM or YYYYMMD"
- exit 1
-}
-
-DatePattern="${1}"
-if [ -z "${DatePattern}" ]; then
- usage
-fi
-FilePattern="${DatePattern}*.alpaca_sim_md.db.gz"
-
-cd $(realpath $(dirname $0))/..
-mkdir -p ./data/equity
-pushd ./data/equity
-
-Cmd="rsync -ahvv cvtt@hs01.cvtt.vpn:/works/cvtt/md_archive/equity/alpaca_md/sim/${FilePattern} ./"
-echo ${Cmd}
-eval ${Cmd}
-# -------------------------------------
-
-for srcfname in $(ls *.db.gz); do
- dt="${srcfname:0:8}"
- tgtfile=${dt}.mktdata.ohlcv.db
- echo "${srcfname} -> ${tgtfile}"
-
- Cmd="gunzip -c $srcfname > temp.db && rm $srcfname"
- echo ${Cmd}
- eval ${Cmd}
- Cmd="rm -f ${tgtfile} && sqlite3 temp.db '.dump md_1min_bars' | sqlite3 ${tgtfile}"
- echo ${Cmd}
- eval ${Cmd}
-done
-rm temp.db
-popd
diff --git a/notebooks/spbt_day.ipynb b/notebooks/spbt_day.ipynb
index e1f16d2..f6aae57 100644
--- a/notebooks/spbt_day.ipynb
+++ b/notebooks/spbt_day.ipynb
@@ -18,16 +18,152 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 21,
"id": "imports-and-paths",
"metadata": {},
- "outputs": [],
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "application/javascript": "(function(root) {\n function now() {\n return new Date();\n }\n\n const force = true;\n const version = '3.9.2'.replace('rc', '-rc.').replace('.dev', '-dev.');\n const reloading = false;\n const Bokeh = root.Bokeh;\n const BK_RE = /^https:\\/\\/cdn\\.bokeh\\.org\\/bokeh\\/(release|dev)\\/bokeh-/;\n const PN_RE = /^https:\\/\\/cdn\\.holoviz\\.org\\/panel\\/[^/]+\\/dist\\/panel/i;\n\n // Set a timeout for this load but only if we are not already initializing\n if (typeof (root._bokeh_timeout) === \"undefined\" || (force || !root._bokeh_is_initializing)) {\n root._bokeh_timeout = Date.now() + 5000;\n root._bokeh_failed_load = false;\n }\n\n function run_callbacks() {\n try {\n root._bokeh_onload_callbacks.forEach(function(callback) {\n if (callback != null)\n callback();\n });\n } finally {\n delete root._bokeh_onload_callbacks;\n }\n console.debug(\"Bokeh: all callbacks have finished\");\n }\n\n function load_libs(css_urls, js_urls, js_modules, js_exports, Bokeh, callback) {\n if (css_urls == null) css_urls = [];\n if (js_urls == null) js_urls = [];\n if (js_modules == null) js_modules = [];\n if (js_exports == null) js_exports = {};\n\n root._bokeh_onload_callbacks.push(callback);\n\n if (root._bokeh_is_loading > 0) {\n // Don't load bokeh if it is still initializing\n console.debug(\"Bokeh: BokehJS is being loaded, scheduling callback at\", now());\n return null;\n } else if (js_urls.length === 0 && js_modules.length === 0 && Object.keys(js_exports).length === 0) {\n // There is nothing to load\n run_callbacks();\n return null;\n }\n\n function on_load() {\n root._bokeh_is_loading--;\n if (root._bokeh_is_loading === 0) {\n console.debug(\"Bokeh: all BokehJS libraries/stylesheets loaded\");\n run_callbacks()\n }\n }\n window._bokeh_on_load = on_load\n\n function on_error(e) {\n const src_el = e.srcElement\n console.error(\"failed to load \" + (src_el.href || src_el.src));\n }\n\n const skip = [];\n if (window.requirejs) {\n window.requirejs.config({'packages': {}, 'paths': {'tabulator': 'https://cdn.jsdelivr.net/npm/tabulator-tables@6.4.0/dist/js/tabulator.min', 'moment': 'https://cdn.jsdelivr.net/npm/luxon/build/global/luxon.min', 'plotly': 'https://cdn.plot.ly/plotly-3.1.0.min'}, 'shim': {}});\n require([\"tabulator\"], function(Tabulator) {\n window.Tabulator = Tabulator\n on_load()\n })\n require([\"moment\"], function(moment) {\n window.moment = moment\n on_load()\n })\n require([\"plotly\"], function(Plotly) {\n window.Plotly = Plotly\n on_load()\n })\n root._bokeh_is_loading = css_urls.length + 3;\n } else {\n root._bokeh_is_loading = css_urls.length + js_urls.length + js_modules.length + Object.keys(js_exports).length;\n }\n\n const existing_stylesheets = []\n const links = document.getElementsByTagName('link')\n for (let i = 0; i < links.length; i++) {\n const link = links[i]\n if (link.href != null) {\n existing_stylesheets.push(link.href)\n }\n }\n for (let i = 0; i < css_urls.length; i++) {\n const url = css_urls[i];\n const escaped = encodeURI(url)\n if (existing_stylesheets.indexOf(escaped) !== -1) {\n on_load()\n continue;\n }\n const element = document.createElement(\"link\");\n element.onload = on_load;\n element.onerror = on_error;\n element.rel = \"stylesheet\";\n element.type = \"text/css\";\n element.href = url;\n console.debug(\"Bokeh: injecting link tag for BokehJS stylesheet: \", url);\n document.body.appendChild(element);\n } if (((window.Tabulator !== undefined) && (!(window.Tabulator instanceof HTMLElement))) || window.requirejs) {\n var urls = ['https://cdn.holoviz.org/panel/1.9.3/dist/bundled/datatabulator/tabulator-tables@6.4.0/dist/js/tabulator.min.js'];\n for (var i = 0; i < urls.length; i++) {\n skip.push(encodeURI(urls[i]))\n }\n } if (((window.moment !== undefined) && (!(window.moment instanceof HTMLElement))) || window.requirejs) {\n var urls = ['https://cdn.holoviz.org/panel/1.9.3/dist/bundled/datatabulator/luxon/build/global/luxon.min.js'];\n for (var i = 0; i < urls.length; i++) {\n skip.push(encodeURI(urls[i]))\n }\n } if (((window.Plotly !== undefined) && (!(window.Plotly instanceof HTMLElement))) || window.requirejs) {\n var urls = [];\n for (var i = 0; i < urls.length; i++) {\n skip.push(encodeURI(urls[i]))\n }\n } var existing_scripts = []\n const scripts = document.getElementsByTagName('script')\n for (let i = 0; i < scripts.length; i++) {\n var script = scripts[i]\n if (script.src != null) {\n existing_scripts.push(script.src)\n }\n }\n for (let i = 0; i < js_urls.length; i++) {\n const url = js_urls[i];\n const escaped = encodeURI(url)\n const shouldSkip = skip.includes(escaped) || existing_scripts.includes(escaped)\n const isBokehOrPanel = BK_RE.test(escaped) || PN_RE.test(escaped)\n const missingOrBroken = Bokeh == null || Bokeh.Panel == null || (Bokeh.version != version && !Bokeh.versions?.has(version)) || Bokeh.versions?.get(version)?.Panel == null;\n if (shouldSkip && !(isBokehOrPanel && missingOrBroken)) {\n if (!window.requirejs) {\n on_load();\n }\n continue;\n }\n const element = document.createElement('script');\n element.onload = on_load;\n element.onerror = on_error;\n element.async = false;\n element.src = url;\n console.debug(\"Bokeh: injecting script tag for BokehJS library: \", url);\n document.head.appendChild(element);\n }\n for (let i = 0; i < js_modules.length; i++) {\n const url = js_modules[i];\n const escaped = encodeURI(url)\n if (skip.indexOf(escaped) !== -1 || existing_scripts.indexOf(escaped) !== -1) {\n if (!window.requirejs) {\n on_load();\n }\n continue;\n }\n var element = document.createElement('script');\n element.onload = on_load;\n element.onerror = on_error;\n element.async = false;\n element.src = url;\n element.type = \"module\";\n console.debug(\"Bokeh: injecting script tag for BokehJS library: \", url);\n document.head.appendChild(element);\n }\n for (const name in js_exports) {\n const url = js_exports[name];\n const escaped = encodeURI(url)\n if (skip.indexOf(escaped) >= 0 || root[name] != null) {\n if (!window.requirejs) {\n on_load();\n }\n continue;\n }\n var element = document.createElement('script');\n element.onerror = on_error;\n element.async = false;\n element.type = \"module\";\n console.debug(\"Bokeh: injecting script tag for BokehJS library: \", url);\n element.textContent = `\n import ${name} from \"${url}\"\n window.${name} = ${name}\n window._bokeh_on_load()\n `\n document.head.appendChild(element);\n }\n if (!js_urls.length && !js_modules.length) {\n on_load()\n }\n };\n\n function inject_raw_css(css) {\n const element = document.createElement(\"style\");\n element.appendChild(document.createTextNode(css));\n document.body.appendChild(element);\n }\n\n const js_urls = [\"https://cdn.holoviz.org/panel/1.9.3/dist/bundled/reactiveesm/es-module-shims@^1.10.0/dist/es-module-shims.min.js\", \"https://cdn.holoviz.org/panel/1.9.3/dist/bundled/plotlyplot/plotly-3.1.0.min.js\", \"https://cdn.holoviz.org/panel/1.9.3/dist/bundled/datatabulator/tabulator-tables@6.4.0/dist/js/tabulator.min.js\", \"https://cdn.holoviz.org/panel/1.9.3/dist/bundled/datatabulator/luxon/build/global/luxon.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-3.9.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-3.9.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-3.9.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-3.9.2.min.js\", \"https://cdn.holoviz.org/panel/1.9.3/dist/panel.min.js\"];\n const js_modules = [];\n const js_exports = {};\n const css_urls = [\"https://cdn.holoviz.org/panel/1.9.3/dist/bundled/plotlyplot/maplibre-gl@4.4.1/dist/maplibre-gl.css\", \"https://cdn.holoviz.org/panel/1.9.3/dist/bundled/datatabulator/tabulator-tables@6.4.0/dist/css/tabulator_simple.min.css\"];\n const inline_js = [ function(Bokeh) {\n Bokeh.set_log_level(\"info\");\n },\nfunction(Bokeh) {} // ensure no trailing comma for IE\n ];\n\n function run_inline_js() {\n if ((root.Bokeh !== undefined) || (force === true)) {\n for (let i = 0; i < inline_js.length; i++) {\n try {\n inline_js[i].call(root, root.Bokeh);\n } catch(e) {\n if (!reloading) {\n throw e;\n }\n }\n }\n } else if (Date.now() < root._bokeh_timeout) {\n setTimeout(run_inline_js, 100);\n } else if (!root._bokeh_failed_load) {\n console.log(\"Bokeh: BokehJS failed to load within specified timeout.\");\n root._bokeh_failed_load = true;\n }\n root._bokeh_is_initializing = false;\n }\n\n function load_or_wait() {\n // Implement a backoff loop that tries to ensure we do not load multiple\n // versions of Bokeh and its dependencies at the same time.\n // In recent versions we use the root._bokeh_is_initializing flag\n // to determine whether there is an ongoing attempt to initialize\n // bokeh, however for backward compatibility we also try to ensure\n // that we do not start loading a newer (Panel>=1.0 and Bokeh>3) version\n // before older versions are fully initialized.\n if (root._bokeh_is_initializing && Date.now() > root._bokeh_timeout) {\n // If the timeout and bokeh was not successfully loaded we reset\n // everything and try loading again\n root._bokeh_timeout = Date.now() + 5000;\n root._bokeh_is_initializing = false;\n root._bokeh_onload_callbacks = undefined;\n root._bokeh_is_loading = 0;\n console.log(\"Bokeh: BokehJS was loaded multiple times but one version failed to initialize.\");\n load_or_wait();\n } else if (root._bokeh_is_initializing || (typeof root._bokeh_is_initializing === \"undefined\" && root._bokeh_onload_callbacks !== undefined)) {\n setTimeout(load_or_wait, 100);\n } else {\n root._bokeh_is_initializing = true;\n root._bokeh_onload_callbacks = [];\n const bokeh_loaded = Bokeh != null && ((Bokeh.version === version && Bokeh.Panel) || (Bokeh.versions?.has(version) && Bokeh.versions.get(version)?.Panel));\n if (!reloading && !bokeh_loaded) {\n if (root.Bokeh) {\n root.Bokeh = undefined;\n }\n console.debug(\"Bokeh: BokehJS not loaded, scheduling load and callback at\", now());\n }\n load_libs(css_urls, js_urls, js_modules, js_exports, Bokeh, function() {\n console.debug(\"Bokeh: BokehJS plotting callback run at\", now());\n run_inline_js();\n if (Bokeh != undefined && !reloading) {\n const NewBokeh = root.Bokeh;\n if (Bokeh.versions === undefined) {\n Bokeh.versions = new Map();\n }\n if (NewBokeh.version !== Bokeh.version) {\n Bokeh[NewBokeh.version] = NewBokeh;\n Bokeh.versions.set(NewBokeh.version, NewBokeh);\n }\n root.Bokeh = Bokeh;\n }\n });\n }\n }\n // Give older versions of the autoload script a head-start to ensure\n // they initialize before we start loading newer version.\n setTimeout(load_or_wait, 100)\n}(window));",
+ "application/vnd.holoviews_load.v0+json": ""
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "application/javascript": "\nif ((window.PyViz === undefined) || (window.PyViz instanceof HTMLElement)) {\n window.PyViz = {comms: {}, comm_status:{}, kernels:{}, receivers: {}, plot_index: []}\n}\n\n\n function JupyterCommManager() {\n }\n\n JupyterCommManager.prototype.register_target = function(plot_id, comm_id, msg_handler) {\n if (window.comm_manager || ((window.Jupyter !== undefined) && (Jupyter.notebook.kernel != null))) {\n var comm_manager = window.comm_manager || Jupyter.notebook.kernel.comm_manager;\n comm_manager.register_target(comm_id, function(comm) {\n comm.on_msg(msg_handler);\n });\n } else if ((plot_id in window.PyViz.kernels) && (window.PyViz.kernels[plot_id])) {\n window.PyViz.kernels[plot_id].registerCommTarget(comm_id, function(comm) {\n comm.onMsg = msg_handler;\n });\n } else if (typeof google != 'undefined' && google.colab.kernel != null) {\n google.colab.kernel.comms.registerTarget(comm_id, (comm) => {\n var messages = comm.messages[Symbol.asyncIterator]();\n function processIteratorResult(result) {\n var message = result.value;\n var content = {data: message.data, comm_id};\n var buffers = []\n for (var buffer of message.buffers || []) {\n buffers.push(new DataView(buffer))\n }\n var metadata = message.metadata || {};\n var msg = {content, buffers, metadata}\n msg_handler(msg);\n return messages.next().then(processIteratorResult);\n }\n return messages.next().then(processIteratorResult);\n })\n }\n }\n\n JupyterCommManager.prototype.get_client_comm = function(plot_id, comm_id, msg_handler) {\n if (comm_id in window.PyViz.comms) {\n return window.PyViz.comms[comm_id];\n } else if (window.comm_manager || ((window.Jupyter !== undefined) && (Jupyter.notebook.kernel != null))) {\n var comm_manager = window.comm_manager || Jupyter.notebook.kernel.comm_manager;\n var comm = comm_manager.new_comm(comm_id, {}, {}, {}, comm_id);\n if (msg_handler) {\n comm.on_msg(msg_handler);\n }\n } else if ((plot_id in window.PyViz.kernels) && (window.PyViz.kernels[plot_id])) {\n var comm = window.PyViz.kernels[plot_id].connectToComm(comm_id);\n let retries = 0;\n const open = () => {\n if (comm.active) {\n comm.open();\n } else if (retries > 3) {\n console.warn('Comm target never activated')\n } else {\n retries += 1\n setTimeout(open, 500)\n }\n }\n if (comm.active) {\n comm.open();\n } else {\n setTimeout(open, 500)\n }\n if (msg_handler) {\n comm.onMsg = msg_handler;\n }\n } else if (typeof google != 'undefined' && google.colab.kernel != null) {\n var comm_promise = google.colab.kernel.comms.open(comm_id)\n comm_promise.then((comm) => {\n window.PyViz.comms[comm_id] = comm;\n if (msg_handler) {\n var messages = comm.messages[Symbol.asyncIterator]();\n function processIteratorResult(result) {\n var message = result.value;\n var content = {data: message.data};\n var metadata = message.metadata || {comm_id};\n var msg = {content, metadata}\n msg_handler(msg);\n return messages.next().then(processIteratorResult);\n }\n return messages.next().then(processIteratorResult);\n }\n })\n var sendClosure = (data, metadata, buffers, disposeOnDone) => {\n return comm_promise.then((comm) => {\n comm.send(data, metadata, buffers, disposeOnDone);\n });\n };\n var comm = {\n send: sendClosure\n };\n }\n window.PyViz.comms[comm_id] = comm;\n return comm;\n }\n window.PyViz.comm_manager = new JupyterCommManager();\n \n\n\nvar JS_MIME_TYPE = 'application/javascript';\nvar HTML_MIME_TYPE = 'text/html';\nvar EXEC_MIME_TYPE = 'application/vnd.holoviews_exec.v0+json';\nvar CLASS_NAME = 'output';\n\n/**\n * Render data to the DOM node\n */\nfunction render(props, node) {\n var div = document.createElement(\"div\");\n var script = document.createElement(\"script\");\n node.appendChild(div);\n node.appendChild(script);\n}\n\n/**\n * Handle when a new output is added\n */\nfunction handle_add_output(event, handle) {\n var output_area = handle.output_area;\n var output = handle.output;\n if ((output.data == undefined) || (!output.data.hasOwnProperty(EXEC_MIME_TYPE))) {\n return\n }\n var id = output.metadata[EXEC_MIME_TYPE][\"id\"];\n var toinsert = output_area.element.find(\".\" + CLASS_NAME.split(' ')[0]);\n if (id !== undefined) {\n var nchildren = toinsert.length;\n var html_node = toinsert[nchildren-1].children[0];\n html_node.innerHTML = output.data[HTML_MIME_TYPE];\n var scripts = [];\n var nodelist = html_node.querySelectorAll(\"script\");\n for (var i in nodelist) {\n if (nodelist.hasOwnProperty(i)) {\n scripts.push(nodelist[i])\n }\n }\n\n scripts.forEach( function (oldScript) {\n var newScript = document.createElement(\"script\");\n var attrs = [];\n var nodemap = oldScript.attributes;\n for (var j in nodemap) {\n if (nodemap.hasOwnProperty(j)) {\n attrs.push(nodemap[j])\n }\n }\n attrs.forEach(function(attr) { newScript.setAttribute(attr.name, attr.value) });\n newScript.appendChild(document.createTextNode(oldScript.innerHTML));\n oldScript.parentNode.replaceChild(newScript, oldScript);\n });\n if (JS_MIME_TYPE in output.data) {\n toinsert[nchildren-1].children[1].textContent = output.data[JS_MIME_TYPE];\n }\n output_area._hv_plot_id = id;\n if ((window.Bokeh !== undefined) && (id in Bokeh.index)) {\n window.PyViz.plot_index[id] = Bokeh.index[id];\n } else {\n window.PyViz.plot_index[id] = null;\n }\n } else if (output.metadata[EXEC_MIME_TYPE][\"server_id\"] !== undefined) {\n var bk_div = document.createElement(\"div\");\n bk_div.innerHTML = output.data[HTML_MIME_TYPE];\n var script_attrs = bk_div.children[0].attributes;\n for (var i = 0; i < script_attrs.length; i++) {\n toinsert[toinsert.length - 1].childNodes[1].setAttribute(script_attrs[i].name, script_attrs[i].value);\n }\n // store reference to server id on output_area\n output_area._bokeh_server_id = output.metadata[EXEC_MIME_TYPE][\"server_id\"];\n }\n}\n\n/**\n * Handle when an output is cleared or removed\n */\nfunction handle_clear_output(event, handle) {\n var id = handle.cell.output_area._hv_plot_id;\n var server_id = handle.cell.output_area._bokeh_server_id;\n if (((id === undefined) || !(id in PyViz.plot_index)) && (server_id !== undefined)) { return; }\n var comm = window.PyViz.comm_manager.get_client_comm(\"hv-extension-comm\", \"hv-extension-comm\", function () {});\n if (server_id !== null) {\n comm.send({event_type: 'server_delete', 'id': server_id});\n return;\n } else if (comm !== null) {\n comm.send({event_type: 'delete', 'id': id});\n }\n delete PyViz.plot_index[id];\n if ((window.Bokeh !== undefined) & (id in window.Bokeh.index)) {\n var doc = window.Bokeh.index[id].model.document\n doc.clear();\n const i = window.Bokeh.documents.indexOf(doc);\n if (i > -1) {\n window.Bokeh.documents.splice(i, 1);\n }\n }\n}\n\n/**\n * Handle kernel restart event\n */\nfunction handle_kernel_cleanup(event, handle) {\n delete PyViz.comms[\"hv-extension-comm\"];\n window.PyViz.plot_index = {}\n}\n\n/**\n * Handle update_display_data messages\n */\nfunction handle_update_output(event, handle) {\n handle_clear_output(event, {cell: {output_area: handle.output_area}})\n handle_add_output(event, handle)\n}\n\nfunction register_renderer(events, OutputArea) {\n function append_mime(data, metadata, element) {\n // create a DOM node to render to\n var toinsert = this.create_output_subarea(\n metadata,\n CLASS_NAME,\n EXEC_MIME_TYPE\n );\n this.keyboard_manager.register_events(toinsert);\n // Render to node\n var props = {data: data, metadata: metadata[EXEC_MIME_TYPE]};\n render(props, toinsert[0]);\n element.append(toinsert);\n return toinsert\n }\n\n events.on('output_added.OutputArea', handle_add_output);\n events.on('output_updated.OutputArea', handle_update_output);\n events.on('clear_output.CodeCell', handle_clear_output);\n events.on('delete.Cell', handle_clear_output);\n events.on('kernel_ready.Kernel', handle_kernel_cleanup);\n\n OutputArea.prototype.register_mime_type(EXEC_MIME_TYPE, append_mime, {\n safe: true,\n index: 0\n });\n}\n\nif (window.Jupyter !== undefined) {\n try {\n var events = require('base/js/events');\n var OutputArea = require('notebook/js/outputarea').OutputArea;\n if (OutputArea.prototype.mime_types().indexOf(EXEC_MIME_TYPE) == -1) {\n register_renderer(events, OutputArea);\n }\n } catch(err) {\n }\n}\n",
+ "application/vnd.holoviews_load.v0+json": ""
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "application/vnd.holoviews_exec.v0+json": "",
+ "text/html": [
+ "\n",
+ ""
+ ]
+ },
+ "metadata": {
+ "application/vnd.holoviews_exec.v0+json": {
+ "id": "2ff053aa-7074-4cc6-b200-e040d358d0a1"
+ }
+ },
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "text/plain": [
+ "(PosixPath('/home/oleg/develop/research/stat_pairs_backtest'),\n",
+ " PosixPath('/home/oleg/develop/research/stat_pairs_backtest/data'))"
+ ]
+ },
+ "execution_count": 21,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
"source": [
+ "from html import escape\n",
"from pathlib import Path\n",
"import importlib\n",
"import sys\n",
"\n",
- "from IPython.display import display\n",
+ "from IPython.display import clear_output, display\n",
"import ipywidgets as widgets\n",
"import pandas as pd\n",
"import panel as pn\n",
@@ -50,6 +186,7 @@
"calculate_pair_theo_executions = spbt_day.calculate_pair_theo_executions\n",
"calculate_ranked_pairs_theo_ret = spbt_day.calculate_ranked_pairs_theo_ret\n",
"create_database_file_selector = spbt_day.create_database_file_selector\n",
+ "create_pair_name_dropdown = spbt_day.create_pair_name_dropdown\n",
"create_pair_theo_ret_analyze_grid = spbt_day.create_pair_theo_ret_analyze_grid\n",
"create_pair_trades_market_plot = spbt_day.create_pair_trades_market_plot\n",
"create_selected_pair_executions_grid = spbt_day.create_selected_pair_executions_grid\n",
@@ -73,10 +210,25 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 22,
"id": "database-file-selector",
"metadata": {},
- "outputs": [],
+ "outputs": [
+ {
+ "data": {
+ "application/vnd.jupyter.widget-view+json": {
+ "model_id": "66eae60bfc7044b9a5fa01eab6b1e6ae",
+ "version_major": 2,
+ "version_minor": 0
+ },
+ "text/plain": [
+ "VBox(children=(HBox(children=(Text(value='/home/oleg/develop/research/stat_pairs_backtest/data', continuous_up…"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
"source": [
"db_selector = create_database_file_selector(\n",
" default_data_dir=DEFAULT_DATA_DIR,\n",
@@ -88,7 +240,7 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 23,
"id": "selected-database-helpers",
"metadata": {},
"outputs": [],
@@ -113,10 +265,84 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 24,
"id": "load-selector-pair-rankings",
"metadata": {},
- "outputs": [],
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " pair_rank | \n",
+ " pair_name | \n",
+ " mr_score_final | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " 1 | \n",
+ " ETH-SOL | \n",
+ " 0.714349 | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " 2 | \n",
+ " BTC-SOL | \n",
+ " 0.630029 | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " 3 | \n",
+ " SOL-XLM | \n",
+ " 0.546467 | \n",
+ "
\n",
+ " \n",
+ " | 3 | \n",
+ " 4 | \n",
+ " BTC-ETH | \n",
+ " 0.457146 | \n",
+ "
\n",
+ " \n",
+ " | 4 | \n",
+ " 5 | \n",
+ " ETH-XLM | \n",
+ " 0.371887 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " pair_rank pair_name mr_score_final\n",
+ "0 1 ETH-SOL 0.714349\n",
+ "1 2 BTC-SOL 0.630029\n",
+ "2 3 SOL-XLM 0.546467\n",
+ "3 4 BTC-ETH 0.457146\n",
+ "4 5 ETH-XLM 0.371887"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
"source": [
"conn = connect_selected_database()\n",
"try:\n",
@@ -138,17 +364,32 @@
"source": [
"## Theoretical Return by Pair\n",
"\n",
- "Load `trading_instructions` and calculate theoretical return for each ranked pair. Each pair starts from a fixed `$10,000` theoretical USD base. `TARGET` trades from the current theoretical position to the new target position, where target size is `10000 * strength / reference_price`; `CLOSE` liquidates the open position at the close row's `reference_price`; `HOLD` is ignored.\n",
+ "Load `trading_instructions` and calculate theoretical return for each ranked pair. SP Quant result databases store `action`, `quote_asset`, `assets`, `scaled_disequilibrium`, and `beta` as explicit columns; legacy databases with packed JSON `data` are still accepted by the loader. Each pair starts from a fixed `$10,000` theoretical USD base. `TARGET` trades from the current theoretical position to the new target position, where target size is `10000 * strength / reference_price`; `CLOSE` liquidates the open position at the close row's `reference_price`; `HOLD` is ignored.\n",
"\n",
"`MIN_TARGET_STRENGTH_CHANGE_PCTG` can be raised above `0.0` to skip `TARGET` updates whose absolute percentage strength change is smaller than the threshold since the position was acquired. `num_trades` counts asset-level theoretical trades caused by effective `TARGET` and `CLOSE` rows. `realized_pnl` and `unrealized_pnl` are percentage returns relative to `$10,000`. The displayed dataframe is sorted by total return (`realized_pnl + unrealized_pnl`) ascending."
]
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 25,
"id": "target-change-threshold-input",
"metadata": {},
- "outputs": [],
+ "outputs": [
+ {
+ "data": {
+ "application/vnd.jupyter.widget-view+json": {
+ "model_id": "21e10329f99e499e8db82c7e1fa1d19d",
+ "version_major": 2,
+ "version_minor": 0
+ },
+ "text/plain": [
+ "FloatText(value=0.0, description='Mininal TARGET change (%)', layout=Layout(width='420px'), step=1.0, style=De…"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
"source": [
"min_target_change_input = widgets.FloatText(\n",
" value=0.0,\n",
@@ -162,10 +403,18 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 26,
"id": "load-trading-instructions",
"metadata": {},
- "outputs": [],
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Loaded 8,244 trading instruction rows.\n"
+ ]
+ }
+ ],
"source": [
"conn = connect_selected_database()\n",
"try:\n",
@@ -178,10 +427,25 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 27,
"id": "calculate-pair-theoretical-returns",
"metadata": {},
- "outputs": [],
+ "outputs": [
+ {
+ "data": {
+ "application/vnd.jupyter.widget-view+json": {
+ "model_id": "2e4b904428d440ff918fc57e88b2ac47",
+ "version_major": 2,
+ "version_minor": 0
+ },
+ "text/plain": [
+ "BokehModel(combine_events=True, render_bundle={'docs_json': {'142c4f6b-90f8-4610-b62f-602c1db7a505': {'version…"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
"source": [
"MIN_TARGET_STRENGTH_CHANGE_PCTG = float(min_target_change_input.value)\n",
"\n",
@@ -217,19 +481,857 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 28,
"id": "plot-total-theoretical-return-histogram",
"metadata": {},
- "outputs": [],
+ "outputs": [
+ {
+ "data": {
+ "application/vnd.plotly.v1+json": {
+ "config": {
+ "plotlyServerURL": "https://plot.ly"
+ },
+ "data": [
+ {
+ "bingroup": "x",
+ "hovertemplate": "Total TheoRet (%)=%{x}
count=%{y}",
+ "legendgroup": "",
+ "marker": {
+ "color": "#636efa",
+ "pattern": {
+ "shape": ""
+ }
+ },
+ "name": "",
+ "orientation": "v",
+ "showlegend": false,
+ "type": "histogram",
+ "x": {
+ "bdata": "zbAal9Kx5r84Zmlw3I/lP5qRRb5K7vA/ZrImcA498T+FL9NEaJ/xPw==",
+ "dtype": "f8"
+ },
+ "xaxis": "x",
+ "yaxis": "y"
+ }
+ ],
+ "layout": {
+ "bargap": 0.05,
+ "barmode": "relative",
+ "height": 360,
+ "legend": {
+ "tracegroupgap": 0
+ },
+ "template": {
+ "data": {
+ "bar": [
+ {
+ "error_x": {
+ "color": "#2a3f5f"
+ },
+ "error_y": {
+ "color": "#2a3f5f"
+ },
+ "marker": {
+ "line": {
+ "color": "#E5ECF6",
+ "width": 0.5
+ },
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "bar"
+ }
+ ],
+ "barpolar": [
+ {
+ "marker": {
+ "line": {
+ "color": "#E5ECF6",
+ "width": 0.5
+ },
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "barpolar"
+ }
+ ],
+ "carpet": [
+ {
+ "aaxis": {
+ "endlinecolor": "#2a3f5f",
+ "gridcolor": "white",
+ "linecolor": "white",
+ "minorgridcolor": "white",
+ "startlinecolor": "#2a3f5f"
+ },
+ "baxis": {
+ "endlinecolor": "#2a3f5f",
+ "gridcolor": "white",
+ "linecolor": "white",
+ "minorgridcolor": "white",
+ "startlinecolor": "#2a3f5f"
+ },
+ "type": "carpet"
+ }
+ ],
+ "choropleth": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "choropleth"
+ }
+ ],
+ "contour": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "contour"
+ }
+ ],
+ "contourcarpet": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "contourcarpet"
+ }
+ ],
+ "heatmap": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "heatmap"
+ }
+ ],
+ "histogram": [
+ {
+ "marker": {
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "histogram"
+ }
+ ],
+ "histogram2d": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "histogram2d"
+ }
+ ],
+ "histogram2dcontour": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "histogram2dcontour"
+ }
+ ],
+ "mesh3d": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "mesh3d"
+ }
+ ],
+ "parcoords": [
+ {
+ "line": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "parcoords"
+ }
+ ],
+ "pie": [
+ {
+ "automargin": true,
+ "type": "pie"
+ }
+ ],
+ "scatter": [
+ {
+ "fillpattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ },
+ "type": "scatter"
+ }
+ ],
+ "scatter3d": [
+ {
+ "line": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatter3d"
+ }
+ ],
+ "scattercarpet": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattercarpet"
+ }
+ ],
+ "scattergeo": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattergeo"
+ }
+ ],
+ "scattergl": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattergl"
+ }
+ ],
+ "scattermap": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattermap"
+ }
+ ],
+ "scattermapbox": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattermapbox"
+ }
+ ],
+ "scatterpolar": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterpolar"
+ }
+ ],
+ "scatterpolargl": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterpolargl"
+ }
+ ],
+ "scatterternary": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterternary"
+ }
+ ],
+ "surface": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "surface"
+ }
+ ],
+ "table": [
+ {
+ "cells": {
+ "fill": {
+ "color": "#EBF0F8"
+ },
+ "line": {
+ "color": "white"
+ }
+ },
+ "header": {
+ "fill": {
+ "color": "#C8D4E3"
+ },
+ "line": {
+ "color": "white"
+ }
+ },
+ "type": "table"
+ }
+ ]
+ },
+ "layout": {
+ "annotationdefaults": {
+ "arrowcolor": "#2a3f5f",
+ "arrowhead": 0,
+ "arrowwidth": 1
+ },
+ "autotypenumbers": "strict",
+ "coloraxis": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "colorscale": {
+ "diverging": [
+ [
+ 0,
+ "#8e0152"
+ ],
+ [
+ 0.1,
+ "#c51b7d"
+ ],
+ [
+ 0.2,
+ "#de77ae"
+ ],
+ [
+ 0.3,
+ "#f1b6da"
+ ],
+ [
+ 0.4,
+ "#fde0ef"
+ ],
+ [
+ 0.5,
+ "#f7f7f7"
+ ],
+ [
+ 0.6,
+ "#e6f5d0"
+ ],
+ [
+ 0.7,
+ "#b8e186"
+ ],
+ [
+ 0.8,
+ "#7fbc41"
+ ],
+ [
+ 0.9,
+ "#4d9221"
+ ],
+ [
+ 1,
+ "#276419"
+ ]
+ ],
+ "sequential": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "sequentialminus": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ]
+ },
+ "colorway": [
+ "#636efa",
+ "#EF553B",
+ "#00cc96",
+ "#ab63fa",
+ "#FFA15A",
+ "#19d3f3",
+ "#FF6692",
+ "#B6E880",
+ "#FF97FF",
+ "#FECB52"
+ ],
+ "font": {
+ "color": "#2a3f5f"
+ },
+ "geo": {
+ "bgcolor": "white",
+ "lakecolor": "white",
+ "landcolor": "#E5ECF6",
+ "showlakes": true,
+ "showland": true,
+ "subunitcolor": "white"
+ },
+ "hoverlabel": {
+ "align": "left"
+ },
+ "hovermode": "closest",
+ "mapbox": {
+ "style": "light"
+ },
+ "paper_bgcolor": "white",
+ "plot_bgcolor": "#E5ECF6",
+ "polar": {
+ "angularaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "bgcolor": "#E5ECF6",
+ "radialaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ }
+ },
+ "scene": {
+ "xaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ },
+ "yaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ },
+ "zaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ }
+ },
+ "shapedefaults": {
+ "line": {
+ "color": "#2a3f5f"
+ }
+ },
+ "ternary": {
+ "aaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "baxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "bgcolor": "#E5ECF6",
+ "caxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ }
+ },
+ "title": {
+ "x": 0.05
+ },
+ "xaxis": {
+ "automargin": true,
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": "",
+ "title": {
+ "standoff": 15
+ },
+ "zerolinecolor": "white",
+ "zerolinewidth": 2
+ },
+ "yaxis": {
+ "automargin": true,
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": "",
+ "title": {
+ "standoff": 15
+ },
+ "zerolinecolor": "white",
+ "zerolinewidth": 2
+ }
+ }
+ },
+ "title": {
+ "text": "Total TheoRet Distribution by Pair"
+ },
+ "xaxis": {
+ "anchor": "y",
+ "domain": [
+ 0,
+ 1
+ ],
+ "title": {
+ "text": "Total TheoRet (%)"
+ }
+ },
+ "yaxis": {
+ "anchor": "x",
+ "domain": [
+ 0,
+ 1
+ ],
+ "title": {
+ "text": "Pair count"
+ }
+ }
+ }
+ }
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
"source": [
"total_pnl_histogram = create_total_pnl_histogram(pair_theo_ret)\n",
- "total_pnl_histogram_pane = pn.pane.Plotly(\n",
- " total_pnl_histogram,\n",
- " height=360,\n",
- " sizing_mode=\"stretch_width\",\n",
- ")\n",
+ "total_pnl_histogram.update_layout(height=360)\n",
"\n",
- "display(total_pnl_histogram_pane)"
+ "display(total_pnl_histogram)"
]
},
{
@@ -239,7 +1341,7 @@
"source": [
"## Individual Pair Analysis\n",
"\n",
- "Click the Analyze button in the Pair TheoRet grid to load detailed follow-up analysis for that row. The selected-pair execution table and market/trade chart are not calculated until an Analyze button is clicked."
+ "Select a pair from the dropdown and click Analyze to load detailed follow-up analysis. The Pair TheoRet grid Analyze buttons use the same callback when the notebook frontend supports Tabulator button events. The selected-pair execution table includes instruction-level `scaled_disequilibrium` and `beta`. The market/trade chart is loaded from `market` and is not calculated until a pair is analyzed."
]
},
{
@@ -247,7 +1349,78 @@
"execution_count": null,
"id": "individual-pair-analysis",
"metadata": {},
- "outputs": [],
+ "outputs": [
+ {
+ "data": {
+ "application/vnd.jupyter.widget-view+json": {
+ "model_id": "24f95b986b944a6385f58d664421b162",
+ "version_major": 2,
+ "version_minor": 0
+ },
+ "text/plain": [
+ "HBox(children=(Dropdown(description='Pair', layout=Layout(width='100%'), options=(('BTC-ETH', 'BTC:USD-ETH:USD…"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "application/vnd.jupyter.widget-view+json": {
+ "model_id": "d83eb774b28349f0b2c62109677180df",
+ "version_major": 2,
+ "version_minor": 0
+ },
+ "text/plain": [
+ "HTML(value='Choose a pair and click Analyze to load individual-pair details.')"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "application/vnd.jupyter.widget-view+json": {
+ "model_id": "7302a32a5b3a48b1af5266015a72e437",
+ "version_major": 2,
+ "version_minor": 0
+ },
+ "text/plain": [
+ "BokehModel(combine_events=True, render_bundle={'docs_json': {'f9952e6f-8966-4cd9-8219-671903c2ac6b': {'version…"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "application/vnd.jupyter.widget-view+json": {
+ "model_id": "87367e2db04347dca25bb486094af372",
+ "version_major": 2,
+ "version_minor": 0
+ },
+ "text/plain": [
+ "HTML(value='Trades on Market Data
')"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "application/vnd.jupyter.widget-view+json": {
+ "model_id": "655d09dda9874f04a6adbbeba1be31ac",
+ "version_major": 2,
+ "version_minor": 0
+ },
+ "text/plain": [
+ "Output(layout=Layout(width='100%'))"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
"source": [
"selected_pair_name = None\n",
"selected_pair_theo_executions = pd.DataFrame()\n",
@@ -257,21 +1430,26 @@
"selected_pair_market_data = pd.DataFrame()\n",
"selected_pair_market_trades_plot = None\n",
"\n",
- "selected_pair_message = pn.pane.Markdown(\n",
- " \"Click Analyze in the Pair TheoRet grid to load individual-pair details.\"\n",
+ "pair_name_dropdown = create_pair_name_dropdown(pair_theo_ret)\n",
+ "analyze_selected_pair_button = widgets.Button(\n",
+ " description=\"Analyze\",\n",
+ " icon=\"search\",\n",
+ " button_style=\"primary\",\n",
+ " tooltip=\"Analyze the selected pair\",\n",
+ ")\n",
+ "selected_pair_message = widgets.HTML(\n",
+ " value=\"Choose a pair and click Analyze to load individual-pair details.\"\n",
")\n",
"selected_pair_theo_executions_grid = create_selected_pair_executions_grid(\n",
" selected_pair_theo_executions_display,\n",
" height=360,\n",
")\n",
- "selected_pair_market_trades_plot_pane = pn.pane.Plotly(\n",
- " None,\n",
- " height=520,\n",
- " sizing_mode=\"stretch_width\",\n",
+ "selected_pair_market_trades_plot_output = widgets.Output(\n",
+ " layout=widgets.Layout(width=\"100%\"),\n",
")\n",
"\n",
"\n",
- "def analyze_pair_click(event):\n",
+ "def update_selected_pair(pair_name):\n",
" global selected_pair_name\n",
" global selected_pair_theo_executions\n",
" global selected_pair_theo_executions_display\n",
@@ -279,9 +1457,9 @@
" global selected_pair_market_trades_plot\n",
"\n",
" try:\n",
- " selected_pair_name = pair_name_from_analyze_event(pair_theo_ret_grid, event)\n",
- " selected_pair_message.object = (\n",
- " f\"Selected pair: **{format_pair_name_for_display(selected_pair_name)}**\"\n",
+ " selected_pair_name = pair_name\n",
+ " selected_pair_message.value = (\n",
+ " f\"Selected pair: {escape(format_pair_name_for_display(selected_pair_name))}\"\n",
" )\n",
"\n",
" selected_pair_theo_executions = calculate_pair_theo_executions(\n",
@@ -310,23 +1488,33 @@
" selected_pair_market_data,\n",
" selected_pair_theo_executions,\n",
" )\n",
- " selected_pair_market_trades_plot_pane.object = selected_pair_market_trades_plot\n",
+ " selected_pair_market_trades_plot.update_layout(height=520)\n",
+ " with selected_pair_market_trades_plot_output:\n",
+ " clear_output(wait=True)\n",
+ " display(selected_pair_market_trades_plot)\n",
" except Exception as exc:\n",
- " selected_pair_message.object = f\"**Error:** {exc}\"\n",
- " selected_pair_market_trades_plot_pane.object = None\n",
+ " selected_pair_message.value = f\"Error: {escape(str(exc))}\"\n",
+ " with selected_pair_market_trades_plot_output:\n",
+ " clear_output(wait=True)\n",
"\n",
"\n",
+ "def analyze_selected_pair_click(_event):\n",
+ " update_selected_pair(pair_name_dropdown.value)\n",
+ "\n",
+ "\n",
+ "def analyze_pair_click(event):\n",
+ " update_selected_pair(pair_name_from_analyze_event(pair_theo_ret_grid, event))\n",
+ "\n",
+ "\n",
+ "analyze_selected_pair_button.on_click(analyze_selected_pair_click)\n",
"pair_theo_ret_grid.on_click(analyze_pair_click, column=ANALYZE_BUTTON_COLUMN)\n",
"\n",
- "display(\n",
- " pn.Column(\n",
- " selected_pair_message,\n",
- " \"### Theoretical Executions\",\n",
- " selected_pair_theo_executions_grid,\n",
- " \"### Trades on Market Data\",\n",
- " selected_pair_market_trades_plot_pane,\n",
- " )\n",
- ")"
+ "display(widgets.HBox([pair_name_dropdown, analyze_selected_pair_button]))\n",
+ "\n",
+ "display(selected_pair_message)\n",
+ "display(pn.Column(\"### Theoretical Executions\", selected_pair_theo_executions_grid))\n",
+ "display(widgets.HTML(value=\"Trades on Market Data
\"))\n",
+ "display(selected_pair_market_trades_plot_output)"
]
}
],
diff --git a/panel/spbt_day_panel.py b/panel/spbt_day_panel.py
index 881de24..220d9cf 100644
--- a/panel/spbt_day_panel.py
+++ b/panel/spbt_day_panel.py
@@ -26,6 +26,8 @@ PAIR_THEO_RET_DISPLAY_DROP_COLUMNS = ["total_pnl"]
APP_TITLE = "SPBT Day Analysis"
APP_ACCENT_COLOR = "#226c67"
APP_HEADER_COLOR = "#184c47"
+APP_SIDEBAR_WIDTH = 215
+APP_SIDEBAR_CONTROL_WIDTH = 200
class SpbtDayPanelApp:
@@ -43,18 +45,22 @@ class SpbtDayPanelApp:
self.directory_input = pn.widgets.TextInput(
label="Directory",
value=str(self.repo_root / "data"),
+ sizing_mode="stretch_width",
+ width=None,
)
self.show_all_files = pn.widgets.Checkbox(label="Show all files", value=False)
self.file_select = pn.widgets.Select(
label="SQLite result file",
options={},
- width=360,
+ sizing_mode="stretch_width",
+ width=None,
)
self.min_pctg_change_input = pn.widgets.FloatInput(
label="Mininal TARGET change (%)",
value=0.0,
step=1.0,
- width=220,
+ sizing_mode="stretch_width",
+ width=None,
)
self.calculate_button = pn.widgets.Button(
label="Calculate",
@@ -267,7 +273,7 @@ class SpbtDayPanelApp:
self.min_pctg_change_input,
self.calculate_button,
self.status,
- width=400,
+ width=APP_SIDEBAR_CONTROL_WIDTH,
)
main = pn.Column(
"## Pair TheoRet",
@@ -284,10 +290,11 @@ class SpbtDayPanelApp:
title=APP_TITLE,
sidebar=[controls],
main=[main],
- sidebar_width=430,
+ sidebar_width=APP_SIDEBAR_WIDTH,
accent_base_color=APP_ACCENT_COLOR,
header_background=APP_HEADER_COLOR,
main_layout=None,
+ theme=pn.template.DarkTheme,
)
diff --git a/requirements.txt b/requirements.txt
index 268635f..d74fb18 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -3,6 +3,7 @@ ipykernel>=6.29,<7
ipywidgets>=8.1,<9
itables>=2.2,<3
jupyter>=1.1,<2
+jupyter_bokeh>=4.0,<5
nbformat>=5.10,<6
pandas>=2.2,<3
panel>=1.5,<2
diff --git a/scripts/spbt_day.py b/scripts/spbt_day.py
index 0de5488..f96dfa7 100644
--- a/scripts/spbt_day.py
+++ b/scripts/spbt_day.py
@@ -15,8 +15,18 @@ import pandas as pd
SELECTOR_PAIRS_COLUMNS = ("pair_name", "mr_score")
SELECTOR_PAIR_INSTRUMENT_COLUMNS = ("pair_name", "instrument_a", "instrument_b")
-TRADING_INSTRUCTIONS_COLUMNS = ("time_ns", "tstamp", "data")
-OHLCV_1MIN_COLUMNS = ("tstamp", "tstamp_ns", "exch_acct", "instrument_id", "close")
+LEGACY_TRADING_INSTRUCTIONS_COLUMNS = ("time_ns", "tstamp", "data")
+SP_QUANT_TRADING_INSTRUCTIONS_COLUMNS = (
+ "tstamp_ns",
+ "tstamp",
+ "action",
+ "quote_asset",
+ "assets",
+ "scaled_disequilibrium",
+ "beta",
+)
+MARKET_COLUMNS = ("tstamp", "tstamp_ns", "exch_acct", "instrument_id", "close")
+OHLCV_1MIN_COLUMNS = MARKET_COLUMNS
INITIAL_THEO_CAPITAL_USD = 10_000.0
SQLITE_EXTENSIONS = {".db", ".sqlite", ".sqlite3"}
PAIR_NAME_DISPLAY_SUFFIX = ":USD"
@@ -32,6 +42,8 @@ SELECTED_PAIR_EXECUTION_DISPLAY_COLUMNS = [
"action",
"side",
"strength",
+ "scaled_disequilibrium",
+ "beta",
"size",
"price",
"usd_value",
@@ -379,24 +391,63 @@ def load_selector_pair_rankings(conn: sqlite3.Connection) -> pd.DataFrame:
return rank_selector_pairs(selector_pairs)
+def table_column_names(conn: sqlite3.Connection, table_name: str) -> set[str]:
+ """Return SQLite column names for an existing table, or an empty set."""
+ return {
+ row[0]
+ for row in conn.execute(
+ "SELECT name FROM pragma_table_info(?)",
+ (table_name,),
+ )
+ }
+
+
def validate_trading_instructions_table(conn: sqlite3.Connection) -> None:
"""Raise an actionable error if trading_instructions lacks required columns."""
- table_info = conn.execute("PRAGMA table_info(trading_instructions)").fetchall()
- if not table_info:
+ existing_columns = table_column_names(conn, "trading_instructions")
+ if not existing_columns:
raise ValueError("SQLite database is missing required table: trading_instructions")
- existing_columns = {row[1] for row in table_info}
- missing_columns = set(TRADING_INSTRUCTIONS_COLUMNS) - existing_columns
- if missing_columns:
- missing = ", ".join(sorted(missing_columns))
- raise ValueError(
- f"trading_instructions is missing required column(s): {missing}"
- )
+ required_schemas = (
+ set(SP_QUANT_TRADING_INSTRUCTIONS_COLUMNS),
+ set(LEGACY_TRADING_INSTRUCTIONS_COLUMNS),
+ )
+ if any(required_schema <= existing_columns for required_schema in required_schemas):
+ return
+
+ missing_by_schema = [
+ ", ".join(sorted(required_schema - existing_columns))
+ for required_schema in required_schemas
+ ]
+ raise ValueError(
+ "trading_instructions does not match a supported schema; missing either "
+ f"SP Quant column(s) [{missing_by_schema[0]}] or legacy column(s) "
+ f"[{missing_by_schema[1]}]"
+ )
def load_trading_instructions(conn: sqlite3.Connection) -> pd.DataFrame:
- """Load the full trading_instructions table ordered by timestamp."""
+ """Load trading_instructions ordered by timestamp.
+
+ SP Quant result databases store instruction fields as explicit columns. The
+ returned dataframe keeps those columns and adds a time_ns alias so existing
+ calculations and notebooks can use one timestamp name.
+ """
validate_trading_instructions_table(conn)
+ columns = table_column_names(conn, "trading_instructions")
+ if "tstamp_ns" in columns:
+ select_expression = "*"
+ if "time_ns" not in columns:
+ select_expression = "*, tstamp_ns AS time_ns"
+ return pd.read_sql_query(
+ f"""
+ SELECT {select_expression}
+ FROM trading_instructions
+ ORDER BY tstamp_ns, rowid
+ """,
+ conn,
+ )
+
return pd.read_sql_query(
"SELECT * FROM trading_instructions ORDER BY time_ns, rowid",
conn,
@@ -429,6 +480,19 @@ def validate_ohlcv_1min_table(conn: sqlite3.Connection) -> None:
raise ValueError(f"ohlcv_1min is missing required column(s): {missing}")
+def validate_market_table(conn: sqlite3.Connection) -> None:
+ """Raise an actionable error if market lacks required columns."""
+ table_info = conn.execute("PRAGMA table_info(market)").fetchall()
+ if not table_info:
+ raise ValueError("SQLite database is missing required table: market")
+
+ existing_columns = {row[1] for row in table_info}
+ missing_columns = set(MARKET_COLUMNS) - existing_columns
+ if missing_columns:
+ missing = ", ".join(sorted(missing_columns))
+ raise ValueError(f"market is missing required column(s): {missing}")
+
+
def pair_assets_and_quote(pair_name: str) -> tuple[tuple[str, ...], str]:
"""Parse a pair name like ADA:USD-BTC:USD into assets and quote asset."""
pair_legs = pair_name.split("-")
@@ -454,6 +518,8 @@ def pair_assets_and_quote(pair_name: str) -> tuple[tuple[str, ...], str]:
def _parse_instruction_data(raw_data: Any) -> dict[str, Any] | None:
if raw_data is None:
return None
+ if isinstance(raw_data, dict):
+ return raw_data
try:
parsed = json.loads(raw_data)
@@ -463,6 +529,26 @@ def _parse_instruction_data(raw_data: Any) -> dict[str, Any] | None:
return parsed if isinstance(parsed, dict) else None
+def _instruction_value(row: Any, column: str) -> Any:
+ return getattr(row, column, None)
+
+
+def _instruction_payload(row: Any) -> dict[str, Any] | None:
+ legacy_payload = _parse_instruction_data(_instruction_value(row, "data"))
+ if legacy_payload is not None:
+ return legacy_payload
+
+ assets = _parse_instruction_data(_instruction_value(row, "assets"))
+ if assets is None:
+ return None
+
+ return {
+ "action": _instruction_value(row, "action"),
+ "quote_asset": _instruction_value(row, "quote_asset"),
+ "assets": assets,
+ }
+
+
def _finite_float(value: Any, field_name: str, pair_name: str) -> float:
if isinstance(value, bool):
raise ValueError(f"{field_name} for {pair_name} must be numeric, got bool")
@@ -527,15 +613,22 @@ def _matching_pair_instruction_rows(
pair_assets, quote_asset = pair_assets_and_quote(pair_name)
pair_asset_set = set(pair_assets)
- if "data" not in trd_inst_df.columns:
- raise ValueError("trading instructions dataframe is missing column: data")
+ legacy_columns = {"data"}
+ sp_quant_columns = set(SP_QUANT_TRADING_INSTRUCTIONS_COLUMNS)
+ dataframe_columns = set(trd_inst_df.columns)
+ if not (
+ legacy_columns <= dataframe_columns
+ or sp_quant_columns <= dataframe_columns
+ ):
+ raise ValueError(
+ "trading instructions dataframe does not match a supported schema"
+ )
selected_instructions: list[dict[str, Any]] = []
for instruction_row in _sort_trading_instructions(trd_inst_df).itertuples(
index=False
):
- raw_data = getattr(instruction_row, "data")
- parsed = _parse_instruction_data(raw_data)
+ parsed = _instruction_payload(instruction_row)
if parsed is None or parsed.get("quote_asset") != quote_asset:
continue
@@ -547,6 +640,12 @@ def _matching_pair_instruction_rows(
{
"time_ns": getattr(instruction_row, "time_ns", None),
"tstamp": getattr(instruction_row, "tstamp", None),
+ "scaled_disequilibrium": getattr(
+ instruction_row,
+ "scaled_disequilibrium",
+ None,
+ ),
+ "beta": getattr(instruction_row, "beta", None),
"data": parsed,
}
)
@@ -641,6 +740,10 @@ def calculate_pair_theo_executions(
"action": action,
"side": _execution_side(trade_size),
"strength": target_strength,
+ "scaled_disequilibrium": instruction[
+ "scaled_disequilibrium"
+ ],
+ "beta": instruction["beta"],
"size": trade_size,
"price": price,
"usd_value": -trade_size * price,
@@ -671,6 +774,10 @@ def calculate_pair_theo_executions(
"action": action,
"side": _execution_side(trade_size),
"strength": None,
+ "scaled_disequilibrium": instruction[
+ "scaled_disequilibrium"
+ ],
+ "beta": instruction["beta"],
"size": trade_size,
"price": price,
"usd_value": -trade_size * price,
@@ -689,6 +796,8 @@ def calculate_pair_theo_executions(
"action",
"side",
"strength",
+ "scaled_disequilibrium",
+ "beta",
"size",
"price",
"usd_value",
@@ -788,9 +897,9 @@ def load_pair_market_data(
*,
trading_day_start_ns: int,
) -> pd.DataFrame:
- """Load 1-minute close data from trading-day start for selected instruments."""
+ """Load market close data from trading-day start for selected instruments."""
validate_selector_pair_instrument_columns(conn)
- validate_ohlcv_1min_table(conn)
+ validate_market_table(conn)
pair_assets, _quote_asset = pair_assets_and_quote(pair_name)
selector_pair = pd.read_sql_query(
@@ -824,7 +933,7 @@ def load_pair_market_data(
exch_acct,
instrument_id,
close
- FROM ohlcv_1min
+ FROM market
WHERE exch_acct = ? AND instrument_id = ? AND tstamp_ns >= ?
ORDER BY tstamp_ns, rowid
""",
@@ -842,7 +951,7 @@ def load_pair_market_data(
if missing_market_assets:
missing_assets = ", ".join(sorted(missing_market_assets))
raise ValueError(
- f"ohlcv_1min does not contain market data for asset(s): {missing_assets}"
+ f"market does not contain data for asset(s): {missing_assets}"
)
market_data = pd.concat(market_frames, ignore_index=True)
@@ -854,7 +963,7 @@ def load_pair_market_data(
if missing_start_price_assets:
missing_assets = ", ".join(missing_start_price_assets)
raise ValueError(
- "ohlcv_1min does not contain trading-day start close for "
+ "market does not contain trading-day start close for "
f"asset(s): {missing_assets}"
)
@@ -872,7 +981,7 @@ def load_pair_market_data(
sorted(market_data.loc[invalid_initial_close, "asset"].unique())
)
raise ValueError(
- f"ohlcv_1min initial close must be positive for asset(s): {missing_assets}"
+ f"market initial close must be positive for asset(s): {missing_assets}"
)
market_data["relative_close"] = (
diff --git a/tests/test_spbt_day.py b/tests/test_spbt_day.py
index 1fe7ae8..8ade03d 100644
--- a/tests/test_spbt_day.py
+++ b/tests/test_spbt_day.py
@@ -148,7 +148,7 @@ def test_load_pair_market_data_maps_selector_instruments_and_relative_close():
)
conn.execute(
"""
- CREATE TABLE ohlcv_1min (
+ CREATE TABLE market (
tstamp TEXT,
tstamp_ns INTEGER,
exch_acct TEXT,
@@ -166,7 +166,7 @@ def test_load_pair_market_data_maps_selector_instruments_and_relative_close():
),
)
conn.executemany(
- "INSERT INTO ohlcv_1min VALUES (?, ?, ?, ?, ?)",
+ "INSERT INTO market VALUES (?, ?, ?, ?, ?)",
[
("pre", 9, "EXCH_A", "PAIR-AAA-USD", 90.0),
("t0", 10, "EXCH_A", "PAIR-AAA-USD", 100.0),
@@ -239,7 +239,7 @@ def test_load_pair_market_data_requires_market_rows_for_both_assets():
)
conn.execute(
"""
- CREATE TABLE ohlcv_1min (
+ CREATE TABLE market (
tstamp TEXT,
tstamp_ns INTEGER,
exch_acct TEXT,
@@ -257,13 +257,13 @@ def test_load_pair_market_data_requires_market_rows_for_both_assets():
),
)
conn.execute(
- "INSERT INTO ohlcv_1min VALUES (?, ?, ?, ?, ?)",
+ "INSERT INTO market VALUES (?, ?, ?, ?, ?)",
("t1", 1, "EXCH_A", "PAIR-AAA-USD", 100.0),
)
with pytest.raises(
ValueError,
- match=r"ohlcv_1min does not contain market data for asset\(s\): BBB",
+ match=r"market does not contain data for asset\(s\): BBB",
):
load_pair_market_data(
conn,
@@ -286,7 +286,7 @@ def test_load_pair_market_data_requires_time_zero_close_for_each_asset():
)
conn.execute(
"""
- CREATE TABLE ohlcv_1min (
+ CREATE TABLE market (
tstamp TEXT,
tstamp_ns INTEGER,
exch_acct TEXT,
@@ -304,7 +304,7 @@ def test_load_pair_market_data_requires_time_zero_close_for_each_asset():
),
)
conn.executemany(
- "INSERT INTO ohlcv_1min VALUES (?, ?, ?, ?, ?)",
+ "INSERT INTO market VALUES (?, ?, ?, ?, ?)",
[
("t1", 1, "EXCH_A", "PAIR-AAA-USD", None),
("t2", 2, "EXCH_A", "PAIR-AAA-USD", 110.0),
@@ -314,7 +314,7 @@ def test_load_pair_market_data_requires_time_zero_close_for_each_asset():
with pytest.raises(
ValueError,
- match=r"ohlcv_1min initial close must be positive for asset\(s\): AAA",
+ match=r"market initial close must be positive for asset\(s\): AAA",
):
load_pair_market_data(
conn,
@@ -337,7 +337,7 @@ def test_load_pair_market_data_requires_exact_trading_day_start_row():
)
conn.execute(
"""
- CREATE TABLE ohlcv_1min (
+ CREATE TABLE market (
tstamp TEXT,
tstamp_ns INTEGER,
exch_acct TEXT,
@@ -355,7 +355,7 @@ def test_load_pair_market_data_requires_exact_trading_day_start_row():
),
)
conn.executemany(
- "INSERT INTO ohlcv_1min VALUES (?, ?, ?, ?, ?)",
+ "INSERT INTO market VALUES (?, ?, ?, ?, ?)",
[
("t1", 11, "EXCH_A", "PAIR-AAA-USD", 110.0),
("t0", 10, "EXCH_B", "PAIR-BBB-USD", 50.0),
@@ -365,7 +365,7 @@ def test_load_pair_market_data_requires_exact_trading_day_start_row():
with pytest.raises(
ValueError,
match=(
- "ohlcv_1min does not contain trading-day start close for "
+ "market does not contain trading-day start close for "
r"asset\(s\): AAA"
),
):
@@ -891,6 +891,143 @@ def test_load_trading_instructions_validates_required_table():
load_trading_instructions(conn)
+def test_load_trading_instructions_requires_sp_quant_metric_columns():
+ conn = sqlite3.connect(":memory:")
+ conn.execute(
+ """
+ CREATE TABLE trading_instructions (
+ tstamp TEXT,
+ tstamp_ns INTEGER,
+ action TEXT,
+ quote_asset TEXT,
+ assets TEXT
+ )
+ """
+ )
+
+ with pytest.raises(
+ ValueError,
+ match=r"SP Quant column\(s\) \[beta, scaled_disequilibrium\]",
+ ):
+ load_trading_instructions(conn)
+
+
+def test_load_trading_instructions_reads_sp_quant_schema_with_time_alias():
+ conn = sqlite3.connect(":memory:")
+ conn.execute(
+ """
+ CREATE TABLE trading_instructions (
+ tstamp TEXT,
+ tstamp_ns INTEGER,
+ type TEXT,
+ book_id TEXT,
+ strategy_id TEXT,
+ action TEXT,
+ quote_asset TEXT,
+ assets TEXT,
+ scaled_disequilibrium REAL,
+ beta REAL
+ )
+ """
+ )
+ conn.executemany(
+ "INSERT INTO trading_instructions VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)",
+ [
+ (
+ "t2",
+ 2,
+ "CLOSE_POSITION",
+ "book",
+ "strategy",
+ "CLOSE",
+ "USD",
+ '{"AAA":{"reference_price":"110"},"BBB":{"reference_price":"45"}}',
+ -0.5,
+ 0.75,
+ ),
+ (
+ "t1",
+ 1,
+ "TARGET_POSITION",
+ "book",
+ "strategy",
+ "TARGET",
+ "USD",
+ (
+ '{"AAA":{"reference_price":"100","strength":"0.5"},'
+ '"BBB":{"reference_price":"50","strength":"-0.5"}}'
+ ),
+ -1.25,
+ 0.75,
+ ),
+ ],
+ )
+
+ trading_instructions = load_trading_instructions(conn)
+
+ assert trading_instructions["tstamp_ns"].tolist() == [1, 2]
+ assert trading_instructions["time_ns"].tolist() == [1, 2]
+ assert trading_instructions["action"].tolist() == ["TARGET", "CLOSE"]
+ assert trading_instructions["scaled_disequilibrium"].tolist() == [-1.25, -0.5]
+ assert trading_instructions["beta"].tolist() == [0.75, 0.75]
+
+
+def test_calculate_pair_theo_executions_reads_sp_quant_instruction_columns():
+ trd_inst_df = pd.DataFrame(
+ {
+ "tstamp_ns": [1, 2],
+ "time_ns": [1, 2],
+ "tstamp": ["t1", "t2"],
+ "action": ["TARGET", "CLOSE"],
+ "quote_asset": ["USD", "USD"],
+ "assets": [
+ (
+ '{"AAA":{"reference_price":"100","strength":"0.5"},'
+ '"BBB":{"reference_price":"50","strength":"-0.5"}}'
+ ),
+ '{"AAA":{"reference_price":"110"},"BBB":{"reference_price":"45"}}',
+ ],
+ "scaled_disequilibrium": [-1.25, -0.5],
+ "beta": [0.75, 0.75],
+ }
+ )
+
+ executions = calculate_pair_theo_executions("AAA:USD-BBB:USD", trd_inst_df)
+
+ assert executions[
+ ["time", "asset", "action", "scaled_disequilibrium", "beta"]
+ ].to_dict("records") == [
+ {
+ "time": "t1",
+ "asset": "AAA",
+ "action": "TARGET",
+ "scaled_disequilibrium": -1.25,
+ "beta": 0.75,
+ },
+ {
+ "time": "t1",
+ "asset": "BBB",
+ "action": "TARGET",
+ "scaled_disequilibrium": -1.25,
+ "beta": 0.75,
+ },
+ {
+ "time": "t2",
+ "asset": "AAA",
+ "action": "CLOSE",
+ "scaled_disequilibrium": -0.5,
+ "beta": 0.75,
+ },
+ {
+ "time": "t2",
+ "asset": "BBB",
+ "action": "CLOSE",
+ "scaled_disequilibrium": -0.5,
+ "beta": 0.75,
+ },
+ ]
+
+
def test_find_repo_root_and_normalize_directory():
repo_root = find_repo_root(Path("notebooks").resolve())
@@ -1030,6 +1167,8 @@ def test_create_panel_grids_use_analyze_button_and_hidden_pair_column():
"action",
"side",
"strength",
+ "scaled_disequilibrium",
+ "beta",
"size",
"price",
"usd_value",
diff --git a/tests/test_spbt_day_panel.py b/tests/test_spbt_day_panel.py
index c58d84c..e60dc75 100644
--- a/tests/test_spbt_day_panel.py
+++ b/tests/test_spbt_day_panel.py
@@ -33,24 +33,26 @@ def create_panel_fixture_db(db_path: Path) -> None:
conn.execute(
"""
CREATE TABLE trading_instructions (
- time_ns INTEGER,
tstamp TEXT,
+ tstamp_ns INTEGER,
+ type TEXT,
book_id TEXT,
strategy_id TEXT,
- type TEXT,
- data TEXT
+ action TEXT,
+ quote_asset TEXT,
+ assets TEXT,
+ scaled_disequilibrium REAL,
+ beta REAL
)
"""
)
conn.execute(
"""
- CREATE TABLE ohlcv_1min (
+ CREATE TABLE market (
tstamp TEXT,
tstamp_ns INTEGER,
exch_acct TEXT,
- exchange_id TEXT,
instrument_id TEXT,
- interval_sec INTEGER,
open REAL,
high REAL,
low REAL,
@@ -73,44 +75,44 @@ def create_panel_fixture_db(db_path: Path) -> None:
),
)
conn.executemany(
- "INSERT INTO trading_instructions VALUES (?, ?, ?, ?, ?, ?)",
+ "INSERT INTO trading_instructions VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)",
[
(
- trading_day_start_ns,
"2026-06-17T00:00:00Z",
+ trading_day_start_ns,
+ "TARGET_POSITION",
"book",
"strategy-AAA:USD-BBB:USD",
- "TARGET_POSITION",
- (
- '{"action":"TARGET","quote_asset":"USD","assets":'
- '{"AAA":{"reference_price":"100","strength":"0.5"},'
- '"BBB":{"reference_price":"50","strength":"-0.5"}}}'
- ),
+ "TARGET",
+ "USD",
+ '{"AAA":{"reference_price":"100","strength":"0.5"},'
+ '"BBB":{"reference_price":"50","strength":"-0.5"}}',
+ -1.25,
+ 0.75,
),
(
- trading_day_start_ns + 60_000_000_000,
"2026-06-17T00:01:00Z",
+ trading_day_start_ns + 60_000_000_000,
+ "CLOSE_POSITION",
"book",
"strategy-AAA:USD-BBB:USD",
- "CLOSE_POSITION",
- (
- '{"action":"CLOSE","quote_asset":"USD","assets":'
- '{"AAA":{"reference_price":"110"},'
- '"BBB":{"reference_price":"45"}}}'
- ),
+ "CLOSE",
+ "USD",
+ '{"AAA":{"reference_price":"110"},'
+ '"BBB":{"reference_price":"45"}}',
+ -0.5,
+ 0.75,
),
],
)
conn.executemany(
- "INSERT INTO ohlcv_1min VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)",
+ "INSERT INTO market VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)",
[
(
"2026-06-17T00:00:00Z",
trading_day_start_ns,
"EXCH",
- "EXCH",
"PAIR-AAA-USD",
- 60,
100.0,
100.0,
100.0,
@@ -123,9 +125,7 @@ def create_panel_fixture_db(db_path: Path) -> None:
"2026-06-17T00:00:00Z",
trading_day_start_ns,
"EXCH",
- "EXCH",
"PAIR-BBB-USD",
- 60,
50.0,
50.0,
50.0,
@@ -169,7 +169,8 @@ def test_panel_app_uses_fast_list_template(tmp_path):
assert not hasattr(app, "refresh_button")
assert isinstance(view, module.pn.template.FastListTemplate)
assert view.title == module.APP_TITLE
- assert view.sidebar_width == 430
+ assert view.theme is module.pn.template.DarkTheme
+ assert view.sidebar_width == module.APP_SIDEBAR_WIDTH
assert view.accent_base_color == module.APP_ACCENT_COLOR
assert view.header_background == module.APP_HEADER_COLOR
assert len(view.sidebar) == 1
@@ -191,8 +192,12 @@ def test_panel_app_calculates_pairs_and_selected_pair_outputs(tmp_path):
app.calculate()
assert app.file_select.value == str(db_path)
- assert app.file_select.width == 360
- assert app.min_pctg_change_input.width == 220
+ assert app.directory_input.sizing_mode == "stretch_width"
+ assert app.directory_input.width is None
+ assert app.file_select.sizing_mode == "stretch_width"
+ assert app.file_select.width is None
+ assert app.min_pctg_change_input.sizing_mode == "stretch_width"
+ assert app.min_pctg_change_input.width is None
assert app.calculate_button.width == 110
assert app.total_pnl_histogram.sizing_mode == "stretch_width"
assert app.selected_pair_market_plot.sizing_mode == "stretch_width"