diff --git a/.gitignore b/.gitignore
index ef1050e6..3f3bbf05 100644
--- a/.gitignore
+++ b/.gitignore
@@ -147,3 +147,4 @@ docs/source/primaite-dependencies.rst
# outputs
src/primaite/outputs/
+/benchmark/output/
diff --git a/benchmark/config/benchmark_training_config.yaml b/benchmark/config/benchmark_training_config.yaml
new file mode 100644
index 00000000..06186e26
--- /dev/null
+++ b/benchmark/config/benchmark_training_config.yaml
@@ -0,0 +1,163 @@
+# Training Config File
+
+# Sets which agent algorithm framework will be used.
+# Options are:
+# "SB3" (Stable Baselines3)
+# "RLLIB" (Ray RLlib)
+# "CUSTOM" (Custom Agent)
+agent_framework: SB3
+
+# Sets which deep learning framework will be used (by RLlib ONLY).
+# Default is TF (Tensorflow).
+# Options are:
+# "TF" (Tensorflow)
+# TF2 (Tensorflow 2.X)
+# TORCH (PyTorch)
+deep_learning_framework: TF2
+
+# Sets which Agent class will be used.
+# Options are:
+# "A2C" (Advantage Actor Critic coupled with either SB3 or RLLIB agent_framework)
+# "PPO" (Proximal Policy Optimization coupled with either SB3 or RLLIB agent_framework)
+# "HARDCODED" (The HardCoded agents coupled with an ACL or NODE action_type)
+# "DO_NOTHING" (The DoNothing agents coupled with an ACL or NODE action_type)
+# "RANDOM" (primaite.agents.simple.RandomAgent)
+# "DUMMY" (primaite.agents.simple.DummyAgent)
+agent_identifier: PPO
+
+# Sets whether Red Agent POL and IER is randomised.
+# Options are:
+# True
+# False
+random_red_agent: False
+
+# The (integer) seed to be used in random number generation
+# Default is None (null)
+seed: null
+
+# Set whether the agent will be deterministic instead of stochastic
+# Options are:
+# True
+# False
+deterministic: False
+
+# Sets what view of the environment the deterministic hardcoded agent has. The default is BASIC.
+# Options are:
+# "BASIC" (The current observation space only)
+# "FULL" (Full environment view with actions taken and reward feedback)
+hard_coded_agent_view: FULL
+
+# Sets How the Action Space is defined:
+# "NODE"
+# "ACL"
+# "ANY" node and acl actions
+action_type: NODE
+
+# observation space
+observation_space:
+ flatten: true
+ components:
+ - name: NODE_LINK_TABLE
+ - name: NODE_STATUSES
+ - name: LINK_TRAFFIC_LEVELS
+
+# Number of episodes for training to run per session
+num_train_episodes: 500
+
+# Number of time_steps for training per episode
+num_train_steps: 256
+
+# Number of episodes for evaluation to run per session
+num_eval_episodes: 1
+
+# Number of time_steps for evaluation per episode
+num_eval_steps: 256
+
+# Sets how often the agent will save a checkpoint (every n time episodes).
+# Set to 0 if no checkpoints are required. Default is 10
+checkpoint_every_n_episodes: 0
+
+# Time delay (milliseconds) between steps for CUSTOM agents.
+time_delay: 5
+
+# Type of session to be run. Options are:
+# "TRAIN" (Trains an agent)
+# "EVAL" (Evaluates an agent)
+# "TRAIN_EVAL" (Trains then evaluates an agent)
+session_type: TRAIN
+
+# Environment config values
+# The high value for the observation space
+observation_space_high_value: 1000000000
+
+# The Stable Baselines3 learn/eval output verbosity level:
+# Options are:
+# "NONE" (No Output)
+# "INFO" (Info Messages (such as devices and wrappers used))
+# "DEBUG" (All Messages)
+sb3_output_verbose_level: NONE
+
+# Reward values
+# Generic
+all_ok: 0
+# Node Hardware State
+off_should_be_on: -0.001
+off_should_be_resetting: -0.0005
+on_should_be_off: -0.0002
+on_should_be_resetting: -0.0005
+resetting_should_be_on: -0.0005
+resetting_should_be_off: -0.0002
+resetting: -0.0003
+# Node Software or Service State
+good_should_be_patching: 0.0002
+good_should_be_compromised: 0.0005
+good_should_be_overwhelmed: 0.0005
+patching_should_be_good: -0.0005
+patching_should_be_compromised: 0.0002
+patching_should_be_overwhelmed: 0.0002
+patching: -0.0003
+compromised_should_be_good: -0.002
+compromised_should_be_patching: -0.002
+compromised_should_be_overwhelmed: -0.002
+compromised: -0.002
+overwhelmed_should_be_good: -0.002
+overwhelmed_should_be_patching: -0.002
+overwhelmed_should_be_compromised: -0.002
+overwhelmed: -0.002
+# Node File System State
+good_should_be_repairing: 0.0002
+good_should_be_restoring: 0.0002
+good_should_be_corrupt: 0.0005
+good_should_be_destroyed: 0.001
+repairing_should_be_good: -0.0005
+repairing_should_be_restoring: 0.0002
+repairing_should_be_corrupt: 0.0002
+repairing_should_be_destroyed: 0.0000
+repairing: -0.0003
+restoring_should_be_good: -0.001
+restoring_should_be_repairing: -0.0002
+restoring_should_be_corrupt: 0.0001
+restoring_should_be_destroyed: 0.0002
+restoring: -0.0006
+corrupt_should_be_good: -0.001
+corrupt_should_be_repairing: -0.001
+corrupt_should_be_restoring: -0.001
+corrupt_should_be_destroyed: 0.0002
+corrupt: -0.001
+destroyed_should_be_good: -0.002
+destroyed_should_be_repairing: -0.002
+destroyed_should_be_restoring: -0.002
+destroyed_should_be_corrupt: -0.002
+destroyed: -0.002
+scanning: -0.0002
+# IER status
+red_ier_running: -0.0005
+green_ier_blocked: -0.001
+
+# Patching / Reset durations
+os_patching_duration: 5 # The time taken to patch the OS
+node_reset_duration: 5 # The time taken to reset a node (hardware)
+service_patching_duration: 5 # The time taken to patch a service
+file_system_repairing_limit: 5 # The time take to repair the file system
+file_system_restoring_limit: 5 # The time take to restore the file system
+file_system_scanning_limit: 5 # The time taken to scan the file system
diff --git a/benchmark/primaite_benchmark.py b/benchmark/primaite_benchmark.py
new file mode 100644
index 00000000..8c947435
--- /dev/null
+++ b/benchmark/primaite_benchmark.py
@@ -0,0 +1,452 @@
+import json
+import platform
+import shutil
+import sys
+from datetime import datetime
+from pathlib import Path
+from typing import Any, Dict, Final, Optional, Tuple, Union
+from unittest.mock import patch
+
+import GPUtil
+import plotly.graph_objects as go
+import polars as pl
+import psutil
+import yaml
+from plotly.graph_objs import Figure
+from pylatex import Command, Document
+from pylatex import Figure as LatexFigure
+from pylatex import Section, Subsection, Tabular
+from pylatex.utils import bold
+
+import primaite
+from primaite.config.lay_down_config import data_manipulation_config_path
+from primaite.data_viz.session_plots import get_plotly_config
+from primaite.environment.primaite_env import Primaite
+from primaite.primaite_session import PrimaiteSession
+
+_LOGGER = primaite.getLogger(__name__)
+
+_BENCHMARK_ROOT = Path(__file__).parent
+_RESULTS_ROOT: Final[Path] = _BENCHMARK_ROOT / "results"
+_RESULTS_ROOT.mkdir(exist_ok=True, parents=True)
+
+_OUTPUT_ROOT: Final[Path] = _BENCHMARK_ROOT / "output"
+# Clear and recreate the output directory
+if _OUTPUT_ROOT.exists():
+ shutil.rmtree(_OUTPUT_ROOT)
+_OUTPUT_ROOT.mkdir()
+
+_TRAINING_CONFIG_PATH = _BENCHMARK_ROOT / "config" / "benchmark_training_config.yaml"
+_LAY_DOWN_CONFIG_PATH = data_manipulation_config_path()
+
+
+def get_size(size_bytes: int):
+ """
+ Scale bytes to its proper format.
+
+ e.g:
+ 1253656 => '1.20MB'
+ 1253656678 => '1.17GB'
+
+ :
+ """
+ factor = 1024
+ for unit in ["", "K", "M", "G", "T", "P"]:
+ if size_bytes < factor:
+ return f"{size_bytes:.2f}{unit}B"
+ size_bytes /= factor
+
+
+def _get_system_info() -> Dict:
+ """Builds and returns a dict containing system info."""
+ uname = platform.uname()
+ cpu_freq = psutil.cpu_freq()
+ virtual_mem = psutil.virtual_memory()
+ swap_mem = psutil.swap_memory()
+ gpus = GPUtil.getGPUs()
+ return {
+ "System": {
+ "OS": uname.system,
+ "OS Version": uname.version,
+ "Machine": uname.machine,
+ "Processor": uname.processor,
+ },
+ "CPU": {
+ "Physical Cores": psutil.cpu_count(logical=False),
+ "Total Cores": psutil.cpu_count(logical=True),
+ "Max Frequency": f"{cpu_freq.max:.2f}Mhz",
+ },
+ "Memory": {"Total": get_size(virtual_mem.total), "Swap Total": get_size(swap_mem.total)},
+ "GPU": [{"Name": gpu.name, "Total Memory": f"{gpu.memoryTotal}MB"} for gpu in gpus],
+ }
+
+
+def _build_benchmark_latex_report(
+ benchmark_metadata_dict: Dict, this_version_plot_path: Path, all_version_plot_path: Path
+):
+ geometry_options = {"tmargin": "2.5cm", "rmargin": "2.5cm", "bmargin": "2.5cm", "lmargin": "2.5cm"}
+ data = benchmark_metadata_dict
+ primaite_version = data["primaite_version"]
+
+ # Create a new document
+ doc = Document("report", geometry_options=geometry_options)
+ # Title
+ doc.preamble.append(Command("title", f"PrimAITE {primaite_version} Learning Benchmark"))
+ doc.preamble.append(Command("author", "PrimAITE Dev Team"))
+ doc.preamble.append(Command("date", datetime.now().date()))
+ doc.append(Command("maketitle"))
+
+ sessions = data["total_sessions"]
+ episodes = data["training_config"]["num_train_episodes"]
+ steps = data["training_config"]["num_train_steps"]
+
+ # Body
+ with doc.create(Section("Introduction")):
+ doc.append(
+ f"PrimAITE v{primaite_version} was benchmarked automatically upon release. Learning rate metrics "
+ f"were captured to be referenced during system-level testing and user acceptance testing (UAT)."
+ )
+ doc.append(
+ f"\nThe benchmarking process consists of running {sessions} training session using the same "
+ f"training and lay down config files. Each session trains an agent for {episodes} episodes, "
+ f"with each episode consisting of {steps} steps."
+ )
+ doc.append(
+ f"\nThe mean reward per episode from each session is captured. This is then used to calculate a "
+ f"combined average reward per episode from the {sessions} individual sessions for smoothing. "
+ f"Finally, a 25-widow rolling average of the combined average reward per session is calculated for "
+ f"further smoothing."
+ )
+
+ with doc.create(Section("System Information")):
+ with doc.create(Subsection("Python")):
+ with doc.create(Tabular("|l|l|")) as table:
+ table.add_hline()
+ table.add_row((bold("Version"), sys.version))
+ table.add_hline()
+ for section, section_data in data["system_info"].items():
+ if section_data:
+ with doc.create(Subsection(section)):
+ if isinstance(section_data, dict):
+ with doc.create(Tabular("|l|l|")) as table:
+ table.add_hline()
+ for key, value in section_data.items():
+ table.add_row((bold(key), value))
+ table.add_hline()
+ elif isinstance(section_data, list):
+ headers = section_data[0].keys()
+ tabs_str = "|".join(["l" for _ in range(len(headers))])
+ tabs_str = f"|{tabs_str}|"
+ with doc.create(Tabular(tabs_str)) as table:
+ table.add_hline()
+ table.add_row([bold(h) for h in headers])
+ table.add_hline()
+ for item in section_data:
+ table.add_row(item.values())
+ table.add_hline()
+
+ headers_map = {
+ "total_sessions": "Total Sessions",
+ "total_episodes": "Total Episodes",
+ "total_time_steps": "Total Steps",
+ "av_s_per_session": "Av Session Duration (s)",
+ "av_s_per_step": "Av Step Duration (s)",
+ "av_s_per_100_steps_10_nodes": "Av Duration per 100 Steps per 10 Nodes (s)",
+ }
+ with doc.create(Section("Stats")):
+ with doc.create(Subsection("Benchmark Results")):
+ with doc.create(Tabular("|l|l|")) as table:
+ table.add_hline()
+ for section, header in headers_map.items():
+ if section.startswith("av_"):
+ table.add_row((bold(header), f"{data[section]:.4f}"))
+ else:
+ table.add_row((bold(header), data[section]))
+ table.add_hline()
+
+ with doc.create(Section("Graphs")):
+ with doc.create(Subsection(f"PrimAITE {primaite_version} Learning Benchmark Plot")):
+ with doc.create(LatexFigure(position="h!")) as pic:
+ pic.add_image(str(this_version_plot_path))
+ pic.add_caption(f"PrimAITE {primaite_version} Learning Benchmark Plot")
+
+ with doc.create(Subsection("PrimAITE All Versions Learning Benchmark Plot")):
+ with doc.create(LatexFigure(position="h!")) as pic:
+ pic.add_image(str(all_version_plot_path))
+ pic.add_caption("PrimAITE All Versions Learning Benchmark Plot")
+
+ doc.generate_pdf(str(this_version_plot_path).replace(".png", ""), clean_tex=True)
+
+
+class BenchmarkPrimaiteSession(PrimaiteSession):
+ """A benchmarking primaite session."""
+
+ def __init__(
+ self,
+ training_config_path: Union[str, Path],
+ lay_down_config_path: Union[str, Path],
+ ):
+ super().__init__(training_config_path, lay_down_config_path)
+ self.setup()
+
+ @property
+ def env(self) -> Primaite:
+ """Direct access to the env for ease of testing."""
+ return self._agent_session._env # noqa
+
+ def __enter__(self):
+ return self
+
+ def __exit__(self, type, value, tb):
+ shutil.rmtree(self.session_path)
+ _LOGGER.debug(f"Deleted benchmark session directory: {self.session_path}")
+
+ def _learn_benchmark_durations(self) -> Tuple[float, float, float]:
+ """
+ Calculate and return the learning benchmark durations.
+
+ Calculates the:
+ - Total learning time in seconds
+ - Total learning time per time step in seconds
+ - Total learning time per 100 time steps per 10 nodes in seconds
+
+ :return: The learning benchmark durations as a Tuple of three floats:
+ Tuple[total_s, s_per_step, s_per_100_steps_10_nodes].
+ """
+ data = self.metadata_file_as_dict()
+ start_dt = datetime.fromisoformat(data["start_datetime"])
+ end_dt = datetime.fromisoformat(data["end_datetime"])
+ delta = end_dt - start_dt
+ total_s = delta.total_seconds()
+
+ total_steps = data["learning"]["total_time_steps"]
+ s_per_step = total_s / total_steps
+
+ num_nodes = self.env.num_nodes
+ num_intervals = total_steps / 100
+ av_interval_time = total_s / num_intervals
+ s_per_100_steps_10_nodes = av_interval_time / (num_nodes / 10)
+
+ return total_s, s_per_step, s_per_100_steps_10_nodes
+
+ def learn_metadata_dict(self) -> Dict[str, Any]:
+ """Metadata specific to the learning session."""
+ total_s, s_per_step, s_per_100_steps_10_nodes = self._learn_benchmark_durations()
+ return {
+ "total_episodes": self.env.actual_episode_count,
+ "total_time_steps": self.env.total_step_count,
+ "total_s": total_s,
+ "s_per_step": s_per_step,
+ "s_per_100_steps_10_nodes": s_per_100_steps_10_nodes,
+ "av_reward_per_episode": self.learn_av_reward_per_episode_dict(),
+ }
+
+
+def _get_benchmark_session_path(session_timestamp: datetime) -> Path:
+ return _OUTPUT_ROOT / session_timestamp.strftime("%Y-%m-%d_%H-%M-%S")
+
+
+def _get_benchmark_primaite_session() -> BenchmarkPrimaiteSession:
+ with patch("primaite.agents.agent_abc.get_session_path", _get_benchmark_session_path) as mck:
+ mck.session_timestamp = datetime.now()
+ return BenchmarkPrimaiteSession(_TRAINING_CONFIG_PATH, _LAY_DOWN_CONFIG_PATH)
+
+
+def _build_benchmark_results_dict(start_datetime: datetime, metadata_dict: Dict) -> dict:
+ n = len(metadata_dict)
+ with open(_TRAINING_CONFIG_PATH, "r") as file:
+ training_config_dict = yaml.safe_load(file)
+ with open(_LAY_DOWN_CONFIG_PATH, "r") as file:
+ lay_down_config_dict = yaml.safe_load(file)
+ averaged_data = {
+ "start_timestamp": start_datetime.isoformat(),
+ "end_datetime": datetime.now().isoformat(),
+ "primaite_version": primaite.__version__,
+ "system_info": _get_system_info(),
+ "total_sessions": n,
+ "total_episodes": sum(d["total_episodes"] for d in metadata_dict.values()),
+ "total_time_steps": sum(d["total_time_steps"] for d in metadata_dict.values()),
+ "av_s_per_session": sum(d["total_s"] for d in metadata_dict.values()) / n,
+ "av_s_per_step": sum(d["s_per_step"] for d in metadata_dict.values()) / n,
+ "av_s_per_100_steps_10_nodes": sum(d["s_per_100_steps_10_nodes"] for d in metadata_dict.values()) / n,
+ "combined_av_reward_per_episode": {},
+ "session_av_reward_per_episode": {k: v["av_reward_per_episode"] for k, v in metadata_dict.items()},
+ "training_config": training_config_dict,
+ "lay_down_config": lay_down_config_dict,
+ }
+
+ episodes = metadata_dict[1]["av_reward_per_episode"].keys()
+
+ for episode in episodes:
+ combined_av_reward = sum(metadata_dict[k]["av_reward_per_episode"][episode] for k in metadata_dict.keys()) / n
+ averaged_data["combined_av_reward_per_episode"][episode] = combined_av_reward
+
+ return averaged_data
+
+
+def _get_df_from_episode_av_reward_dict(data: Dict):
+ data: Dict = {"episode": data.keys(), "av_reward": data.values()}
+
+ return (
+ pl.from_dict(data)
+ .with_columns(rolling_mean=pl.col("av_reward").rolling_mean(window_size=25))
+ .rename({"rolling_mean": "rolling_av_reward"})
+ )
+
+
+def _plot_benchmark_metadata(
+ benchmark_metadata_dict: Dict,
+ title: Optional[str] = None,
+ subtitle: Optional[str] = None,
+) -> Figure:
+ if title:
+ if subtitle:
+ title = f"{title}
{subtitle}"
+ else:
+ if subtitle:
+ title = subtitle
+
+ config = get_plotly_config()
+ layout = go.Layout(
+ autosize=config["size"]["auto_size"],
+ width=config["size"]["width"],
+ height=config["size"]["height"],
+ )
+ # Create the line graph with a colored line
+ fig = go.Figure(layout=layout)
+ fig.update_layout(template=config["template"])
+
+ for session, av_reward_dict in benchmark_metadata_dict["session_av_reward_per_episode"].items():
+ df = _get_df_from_episode_av_reward_dict(av_reward_dict)
+ fig.add_trace(
+ go.Scatter(
+ x=df["episode"],
+ y=df["av_reward"],
+ mode="lines",
+ name=f"Session {session}",
+ opacity=0.25,
+ line={"color": "#a6a6a6"},
+ )
+ )
+
+ df = _get_df_from_episode_av_reward_dict(benchmark_metadata_dict["combined_av_reward_per_episode"])
+ fig.add_trace(
+ go.Scatter(
+ x=df["episode"], y=df["av_reward"], mode="lines", name="Combined Session Av", line={"color": "#FF0000"}
+ )
+ )
+
+ fig.add_trace(
+ go.Scatter(
+ x=df["episode"],
+ y=df["rolling_av_reward"],
+ mode="lines",
+ name="Rolling Av (Combined Session Av)",
+ line={"color": "#4CBB17"},
+ )
+ )
+
+ # Set the layout of the graph
+ fig.update_layout(
+ xaxis={
+ "title": "Episode",
+ "type": "linear",
+ },
+ yaxis={"title": "Average Reward"},
+ title=title,
+ )
+
+ return fig
+
+
+def _plot_all_benchmarks_combined_session_av():
+ """
+ Plot the Benchmark results for each released version of PrimAITE.
+
+ Does this by iterating over the ``benchmark/results`` directory and
+ extracting the benchmark metadata json for each version that has been
+ benchmarked. The combined_av_reward_per_episode is extracted from each,
+ converted into a polars dataframe, and plotted as a scatter line in plotly.
+ """
+ title = "PrimAITE Versions Learning Benchmark"
+ subtitle = "Rolling Av (Combined Session Av)"
+ if title:
+ if subtitle:
+ title = f"{title}
{subtitle}"
+ else:
+ if subtitle:
+ title = subtitle
+ config = get_plotly_config()
+ layout = go.Layout(
+ autosize=config["size"]["auto_size"],
+ width=config["size"]["width"],
+ height=config["size"]["height"],
+ )
+ # Create the line graph with a colored line
+ fig = go.Figure(layout=layout)
+ fig.update_layout(template=config["template"])
+
+ for dir in _RESULTS_ROOT.iterdir():
+ if dir.is_dir():
+ metadata_file = dir / f"{dir.name}_benchmark_metadata.json"
+ with open(metadata_file, "r") as file:
+ metadata_dict = json.load(file)
+ df = _get_df_from_episode_av_reward_dict(metadata_dict["combined_av_reward_per_episode"])
+
+ fig.add_trace(
+ go.Scatter(
+ x=df["episode"], y=df["rolling_av_reward"], mode="lines", name=dir.name, line={"color": "#FF0000"}
+ )
+ )
+
+ # Set the layout of the graph
+ fig.update_layout(
+ xaxis={
+ "title": "Episode",
+ "type": "linear",
+ },
+ yaxis={"title": "Average Reward"},
+ title=title,
+ )
+ fig["data"][0]["showlegend"] = True
+
+ return fig
+
+
+def run():
+ """Run the PrimAITE benchmark."""
+ start_datetime = datetime.now()
+ av_reward_per_episode_dicts = {}
+ for i in range(1, 11):
+ print(f"Starting Benchmark Session: {i}")
+ with _get_benchmark_primaite_session() as session:
+ session.learn()
+ av_reward_per_episode_dicts[i] = session.learn_metadata_dict()
+
+ benchmark_metadata = _build_benchmark_results_dict(
+ start_datetime=start_datetime, metadata_dict=av_reward_per_episode_dicts
+ )
+ v_str = f"v{primaite.__version__}"
+
+ version_result_dir = _RESULTS_ROOT / v_str
+ if version_result_dir.exists():
+ shutil.rmtree(version_result_dir)
+ version_result_dir.mkdir(exist_ok=True, parents=True)
+
+ with open(version_result_dir / f"{v_str}_benchmark_metadata.json", "w") as file:
+ json.dump(benchmark_metadata, file, indent=4)
+ title = f"PrimAITE v{primaite.__version__.strip()} Learning Benchmark"
+ fig = _plot_benchmark_metadata(benchmark_metadata, title=title)
+ this_version_plot_path = version_result_dir / f"{title}.png"
+ fig.write_image(this_version_plot_path)
+
+ fig = _plot_all_benchmarks_combined_session_av()
+
+ all_version_plot_path = _RESULTS_ROOT / "PrimAITE Versions Learning Benchmark.png"
+ fig.write_image(all_version_plot_path)
+
+ _build_benchmark_latex_report(benchmark_metadata, this_version_plot_path, all_version_plot_path)
+
+
+if __name__ == "__main__":
+ run()
diff --git a/benchmark/results/PrimAITE Versions Learning Benchmark.png b/benchmark/results/PrimAITE Versions Learning Benchmark.png
new file mode 100644
index 00000000..b17c8e7c
Binary files /dev/null and b/benchmark/results/PrimAITE Versions Learning Benchmark.png differ
diff --git a/benchmark/results/v2.0.0rc1/PrimAITE v2.0.0rc1 Learning Benchmark.pdf b/benchmark/results/v2.0.0rc1/PrimAITE v2.0.0rc1 Learning Benchmark.pdf
new file mode 100644
index 00000000..1c705b61
Binary files /dev/null and b/benchmark/results/v2.0.0rc1/PrimAITE v2.0.0rc1 Learning Benchmark.pdf differ
diff --git a/benchmark/results/v2.0.0rc1/PrimAITE v2.0.0rc1 Learning Benchmark.png b/benchmark/results/v2.0.0rc1/PrimAITE v2.0.0rc1 Learning Benchmark.png
new file mode 100644
index 00000000..17a49d83
Binary files /dev/null and b/benchmark/results/v2.0.0rc1/PrimAITE v2.0.0rc1 Learning Benchmark.png differ
diff --git a/benchmark/results/v2.0.0rc1/v2.0.0rc1_benchmark_metadata.json b/benchmark/results/v2.0.0rc1/v2.0.0rc1_benchmark_metadata.json
new file mode 100644
index 00000000..2b1e64dd
--- /dev/null
+++ b/benchmark/results/v2.0.0rc1/v2.0.0rc1_benchmark_metadata.json
@@ -0,0 +1,6351 @@
+{
+ "start_timestamp": "2023-07-19T23:19:08.191904",
+ "end_datetime": "2023-07-20T01:44:45.071152",
+ "primaite_version": "2.0.0rc1",
+ "system_info": {
+ "System": {
+ "OS": "Windows",
+ "OS Version": "10.0.19045",
+ "Machine": "AMD64",
+ "Processor": "Intel64 Family 6 Model 142 Stepping 12, GenuineIntel"
+ },
+ "CPU": {
+ "Physical Cores": 4,
+ "Total Cores": 8,
+ "Max Frequency": "2304.00Mhz"
+ },
+ "Memory": {
+ "Total": "15.68GB",
+ "Swap Total": "9.00GB"
+ },
+ "GPU": []
+ },
+ "total_sessions": 10,
+ "total_episodes": 5000,
+ "total_time_steps": 1280000,
+ "av_s_per_session": 872.4458769999999,
+ "av_s_per_step": 0.0068159834140625,
+ "av_s_per_100_steps_10_nodes": 0.7573314904513889,
+ "combined_av_reward_per_episode": {
+ "1": -0.00731367187499999,
+ "2": -0.007703320312499988,
+ "3": -0.007809179687499989,
+ "4": -0.006196874999999989,
+ "5": -0.00660996093749999,
+ "6": -0.006842382812499989,
+ "7": -0.00664453124999999,
+ "8": -0.00653046874999999,
+ "9": -0.0061794921874999895,
+ "10": -0.00666269531249999,
+ "11": -0.005926757812499991,
+ "12": -0.006283203124999989,
+ "13": -0.005799023437499986,
+ "14": -0.0050740234374999915,
+ "15": -0.005567382812499989,
+ "16": -0.005977539062499993,
+ "17": -0.005313476562499991,
+ "18": -0.005460156249999989,
+ "19": -0.005493749999999991,
+ "20": -0.004960742187499994,
+ "21": -0.004317382812499994,
+ "22": -0.00549355468749999,
+ "23": -0.00520195312499999,
+ "24": -0.004462695312499994,
+ "25": -0.004409765624999994,
+ "26": -0.004514648437499991,
+ "27": -0.005153320312499992,
+ "28": -0.004593554687499992,
+ "29": -0.004279296874999993,
+ "30": -0.004057226562499994,
+ "31": -0.004111523437499993,
+ "32": -0.004430468749999993,
+ "33": -0.0038277343749999935,
+ "34": -0.005005468749999992,
+ "35": -0.004016406249999995,
+ "36": -0.004120898437499993,
+ "37": -0.00483261718749999,
+ "38": -0.004414648437499994,
+ "39": -0.004215820312499992,
+ "40": -0.003811328124999993,
+ "41": -0.004370898437499994,
+ "42": -0.004423632812499993,
+ "43": -0.004398242187499995,
+ "44": -0.0034437499999999946,
+ "45": -0.0039667968749999925,
+ "46": -0.003291601562499995,
+ "47": -0.003588281249999996,
+ "48": -0.0036332031249999945,
+ "49": -0.002865624999999997,
+ "50": -0.004549023437499993,
+ "51": -0.0037519531249999944,
+ "52": -0.003723828124999995,
+ "53": -0.003656835937499996,
+ "54": -0.0037980468749999946,
+ "55": -0.0038953124999999943,
+ "56": -0.004249414062499993,
+ "57": -0.003274414062499996,
+ "58": -0.0032546874999999954,
+ "59": -0.003862304687499995,
+ "60": -0.0033722656249999964,
+ "61": -0.0037628906249999963,
+ "62": -0.003999218749999995,
+ "63": -0.003840429687499995,
+ "64": -0.003985742187499993,
+ "65": -0.004181835937499994,
+ "66": -0.003729882812499997,
+ "67": -0.003362109374999996,
+ "68": -0.0039050781249999945,
+ "69": -0.0035892578124999954,
+ "70": -0.0031384765624999965,
+ "71": -0.003613085937499997,
+ "72": -0.0028046874999999973,
+ "73": -0.003990429687499996,
+ "74": -0.0036085937499999955,
+ "75": -0.0033742187499999957,
+ "76": -0.003610742187499995,
+ "77": -0.003320898437499995,
+ "78": -0.003140820312499997,
+ "79": -0.0036044921874999964,
+ "80": -0.003551171874999994,
+ "81": -0.0031990234374999977,
+ "82": -0.004220898437499994,
+ "83": -0.003623632812499996,
+ "84": -0.003313085937499996,
+ "85": -0.0032626953124999967,
+ "86": -0.003272851562499998,
+ "87": -0.003167187499999997,
+ "88": -0.003437695312499997,
+ "89": -0.0033970703124999945,
+ "90": -0.003987304687499993,
+ "91": -0.003318554687499997,
+ "92": -0.003090234374999996,
+ "93": -0.003175585937499997,
+ "94": -0.004084570312499995,
+ "95": -0.0038884765624999937,
+ "96": -0.003930859374999995,
+ "97": -0.003431054687499996,
+ "98": -0.003494335937499997,
+ "99": -0.004100390624999993,
+ "100": -0.003316796874999995,
+ "101": -0.0035406249999999943,
+ "102": -0.002844921874999998,
+ "103": -0.002967382812499998,
+ "104": -0.0035390624999999953,
+ "105": -0.003725781249999996,
+ "106": -0.0035197265624999966,
+ "107": -0.0030394531249999983,
+ "108": -0.004080078124999995,
+ "109": -0.0037187499999999955,
+ "110": -0.004188476562499994,
+ "111": -0.002923828124999997,
+ "112": -0.0032533203124999964,
+ "113": -0.0031791015624999973,
+ "114": -0.0035494140624999955,
+ "115": -0.003403320312499997,
+ "116": -0.0027273437499999967,
+ "117": -0.004059765624999995,
+ "118": -0.0037896484374999955,
+ "119": -0.0028101562499999976,
+ "120": -0.004133203124999995,
+ "121": -0.003345898437499996,
+ "122": -0.0029994140624999975,
+ "123": -0.003576757812499997,
+ "124": -0.0031085937499999968,
+ "125": -0.0030031249999999962,
+ "126": -0.003029882812499997,
+ "127": -0.004016406249999995,
+ "128": -0.003384570312499996,
+ "129": -0.0027457031249999977,
+ "130": -0.003108398437499997,
+ "131": -0.0035763671874999973,
+ "132": -0.003442187499999997,
+ "133": -0.0038707031249999974,
+ "134": -0.002413476562499999,
+ "135": -0.0031832031249999964,
+ "136": -0.003696874999999996,
+ "137": -0.0033119140624999948,
+ "138": -0.002911718749999997,
+ "139": -0.0030986328124999974,
+ "140": -0.003197460937499998,
+ "141": -0.0028570312499999967,
+ "142": -0.0028068359374999957,
+ "143": -0.0031199218749999955,
+ "144": -0.003114843749999995,
+ "145": -0.0031876953124999954,
+ "146": -0.002940234374999997,
+ "147": -0.0028828124999999956,
+ "148": -0.0028925781249999976,
+ "149": -0.0031828124999999973,
+ "150": -0.003233593749999998,
+ "151": -0.0030576171874999968,
+ "152": -0.002492382812499998,
+ "153": -0.0033019531249999976,
+ "154": -0.003407226562499996,
+ "155": -0.0030142578124999963,
+ "156": -0.003196484374999995,
+ "157": -0.003135351562499996,
+ "158": -0.002914062499999998,
+ "159": -0.003631445312499994,
+ "160": -0.003100781249999996,
+ "161": -0.0034939453124999942,
+ "162": -0.003426562499999994,
+ "163": -0.0028900390624999987,
+ "164": -0.003199414062499997,
+ "165": -0.0028158203124999974,
+ "166": -0.0027951171874999988,
+ "167": -0.003132617187499998,
+ "168": -0.002689453124999997,
+ "169": -0.003324414062499996,
+ "170": -0.002684179687499999,
+ "171": -0.0029230468749999955,
+ "172": -0.003155078124999995,
+ "173": -0.0024656249999999986,
+ "174": -0.0030453124999999964,
+ "175": -0.0031201171874999972,
+ "176": -0.0033652343749999954,
+ "177": -0.0036048828124999946,
+ "178": -0.0035039062499999966,
+ "179": -0.002610937499999998,
+ "180": -0.0027863281249999993,
+ "181": -0.002916015624999997,
+ "182": -0.0030490234374999973,
+ "183": -0.0028277343749999974,
+ "184": -0.003479101562499995,
+ "185": -0.0026939453124999965,
+ "186": -0.002608203124999997,
+ "187": -0.0026251953124999984,
+ "188": -0.002975195312499998,
+ "189": -0.0028763671874999968,
+ "190": -0.002971093749999998,
+ "191": -0.003583007812499995,
+ "192": -0.0032052734374999952,
+ "193": -0.0030101562499999963,
+ "194": -0.002767578124999998,
+ "195": -0.003315624999999995,
+ "196": -0.003117187499999998,
+ "197": -0.0031322265624999976,
+ "198": -0.0027468749999999984,
+ "199": -0.0031679687499999954,
+ "200": -0.0030099609374999964,
+ "201": -0.0030769531249999955,
+ "202": -0.003186718749999995,
+ "203": -0.003249414062499994,
+ "204": -0.0032648437499999973,
+ "205": -0.0025720703124999973,
+ "206": -0.0028980468749999965,
+ "207": -0.0031201171874999955,
+ "208": -0.003362109374999996,
+ "209": -0.003047656249999997,
+ "210": -0.003067187499999998,
+ "211": -0.002612890624999997,
+ "212": -0.003190234374999995,
+ "213": -0.0029849609374999987,
+ "214": -0.0028332031249999967,
+ "215": -0.002509570312499997,
+ "216": -0.003209374999999995,
+ "217": -0.0030392578124999966,
+ "218": -0.003599023437499993,
+ "219": -0.002875585937499997,
+ "220": -0.002980664062499998,
+ "221": -0.0030658203124999976,
+ "222": -0.0031587890624999978,
+ "223": -0.0028878906249999977,
+ "224": -0.0036025390624999953,
+ "225": -0.0024824218749999994,
+ "226": -0.002982031249999997,
+ "227": -0.0024265624999999995,
+ "228": -0.003050195312499999,
+ "229": -0.003366601562499999,
+ "230": -0.0032994140624999987,
+ "231": -0.002992773437499998,
+ "232": -0.0027751953124999975,
+ "233": -0.002757421874999998,
+ "234": -0.003118164062499996,
+ "235": -0.0025140624999999994,
+ "236": -0.003068359374999998,
+ "237": -0.0030808593749999972,
+ "238": -0.002699218749999998,
+ "239": -0.002861914062499998,
+ "240": -0.0028845703124999976,
+ "241": -0.002965820312499998,
+ "242": -0.0029455078124999983,
+ "243": -0.0038492187499999967,
+ "244": -0.003172656249999996,
+ "245": -0.0029722656249999975,
+ "246": -0.003380273437499995,
+ "247": -0.0029589843749999937,
+ "248": -0.0031335937499999958,
+ "249": -0.0033490234374999963,
+ "250": -0.003560546874999995,
+ "251": -0.002451562499999998,
+ "252": -0.0031951171874999946,
+ "253": -0.002490820312499998,
+ "254": -0.002458984374999998,
+ "255": -0.003280859374999996,
+ "256": -0.0029056640624999983,
+ "257": -0.0033339843749999954,
+ "258": -0.002749414062499998,
+ "259": -0.003000585937499996,
+ "260": -0.0029904296874999963,
+ "261": -0.003309570312499995,
+ "262": -0.002960156249999997,
+ "263": -0.0033968749999999936,
+ "264": -0.003060937499999995,
+ "265": -0.0029410156249999944,
+ "266": -0.0027203124999999966,
+ "267": -0.002837695312499997,
+ "268": -0.003037109374999995,
+ "269": -0.0033109374999999953,
+ "270": -0.002224023437499999,
+ "271": -0.0034763671874999936,
+ "272": -0.0027638671874999957,
+ "273": -0.0030544921874999962,
+ "274": -0.0026498046874999974,
+ "275": -0.002602734374999998,
+ "276": -0.002705078124999996,
+ "277": -0.0026390624999999964,
+ "278": -0.0030652343749999985,
+ "279": -0.0028072265624999974,
+ "280": -0.0026822265624999965,
+ "281": -0.002579296874999999,
+ "282": -0.0031070312499999965,
+ "283": -0.0033191406249999944,
+ "284": -0.003523046874999993,
+ "285": -0.002520312500000001,
+ "286": -0.003122656249999992,
+ "287": -0.003418749999999994,
+ "288": -0.0022953124999999983,
+ "289": -0.0030916015624999947,
+ "290": -0.002850195312499997,
+ "291": -0.003507226562499994,
+ "292": -0.002615429687499998,
+ "293": -0.002922460937499994,
+ "294": -0.002500390624999999,
+ "295": -0.003147851562499996,
+ "296": -0.002770898437499996,
+ "297": -0.0024437499999999984,
+ "298": -0.0029261718749999956,
+ "299": -0.002617187499999997,
+ "300": -0.002566015624999995,
+ "301": -0.0026927734374999966,
+ "302": -0.002585351562499996,
+ "303": -0.0025236328124999974,
+ "304": -0.002868554687499996,
+ "305": -0.002419726562499998,
+ "306": -0.0030603515624999947,
+ "307": -0.0028099609374999954,
+ "308": -0.002592968749999999,
+ "309": -0.0035082031249999953,
+ "310": -0.0022742187499999985,
+ "311": -0.002787109374999996,
+ "312": -0.0031261718749999957,
+ "313": -0.002639453124999997,
+ "314": -0.002637109374999998,
+ "315": -0.002963867187499996,
+ "316": -0.003323632812499995,
+ "317": -0.002568945312499997,
+ "318": -0.0028683593749999968,
+ "319": -0.002968945312499996,
+ "320": -0.002385156249999999,
+ "321": -0.0021865234375,
+ "322": -0.002808593749999995,
+ "323": -0.002907617187499997,
+ "324": -0.002497070312499997,
+ "325": -0.003294335937499996,
+ "326": -0.0034033203124999916,
+ "327": -0.0031304687499999935,
+ "328": -0.0032939453124999954,
+ "329": -0.0031980468749999943,
+ "330": -0.0030804687499999955,
+ "331": -0.002489843749999999,
+ "332": -0.0026519531249999963,
+ "333": -0.0033183593749999954,
+ "334": -0.0029634765624999963,
+ "335": -0.0034613281249999935,
+ "336": -0.0031253906249999936,
+ "337": -0.0029150390624999964,
+ "338": -0.0027136718749999978,
+ "339": -0.0031681640624999933,
+ "340": -0.0023162109374999986,
+ "341": -0.003062109374999996,
+ "342": -0.003174609374999994,
+ "343": -0.0029662109374999977,
+ "344": -0.002878124999999996,
+ "345": -0.003260742187499994,
+ "346": -0.002816796874999996,
+ "347": -0.002880468749999996,
+ "348": -0.002821484374999998,
+ "349": -0.003236914062499994,
+ "350": -0.0028990234374999964,
+ "351": -0.0029341796874999943,
+ "352": -0.003075781249999996,
+ "353": -0.003633789062499994,
+ "354": -0.0031103515624999957,
+ "355": -0.0027099609374999964,
+ "356": -0.0032396484374999945,
+ "357": -0.003204101562499993,
+ "358": -0.003201757812499995,
+ "359": -0.0027388671874999967,
+ "360": -0.002619335937499995,
+ "361": -0.002926171874999996,
+ "362": -0.002432617187499999,
+ "363": -0.002622265624999998,
+ "364": -0.0026843749999999975,
+ "365": -0.0035904296874999923,
+ "366": -0.003631445312499993,
+ "367": -0.0026861328124999965,
+ "368": -0.0030701171874999945,
+ "369": -0.0029490234374999953,
+ "370": -0.0032763671874999948,
+ "371": -0.002351171874999997,
+ "372": -0.002655664062499998,
+ "373": -0.0031148437499999965,
+ "374": -0.002657031249999998,
+ "375": -0.0034318359374999967,
+ "376": -0.002801171874999997,
+ "377": -0.002672656249999996,
+ "378": -0.0028306640624999957,
+ "379": -0.0029480468749999975,
+ "380": -0.0026675781249999963,
+ "381": -0.0028115234374999974,
+ "382": -0.0028369140624999976,
+ "383": -0.002490820312499998,
+ "384": -0.0039429687499999925,
+ "385": -0.0027357421874999975,
+ "386": -0.0031634765624999955,
+ "387": -0.0028183593749999966,
+ "388": -0.0024134765624999983,
+ "389": -0.003116210937499997,
+ "390": -0.002874218749999998,
+ "391": -0.003482617187499994,
+ "392": -0.002412304687499999,
+ "393": -0.0027490234374999973,
+ "394": -0.0033001953124999943,
+ "395": -0.002920312499999997,
+ "396": -0.0029287109374999992,
+ "397": -0.0030423828124999937,
+ "398": -0.0033251953124999963,
+ "399": -0.0026624999999999973,
+ "400": -0.002556835937499997,
+ "401": -0.0029320312499999967,
+ "402": -0.002966601562499998,
+ "403": -0.0027556640624999957,
+ "404": -0.003262304687499996,
+ "405": -0.0033867187499999965,
+ "406": -0.0034394531249999963,
+ "407": -0.003630078124999994,
+ "408": -0.0031380859374999944,
+ "409": -0.0031214843749999945,
+ "410": -0.0029082031249999963,
+ "411": -0.0028878906249999972,
+ "412": -0.0029855468749999956,
+ "413": -0.0032556640624999953,
+ "414": -0.003231445312499994,
+ "415": -0.002862890624999995,
+ "416": -0.0033507812499999944,
+ "417": -0.002633007812499998,
+ "418": -0.002760546874999996,
+ "419": -0.003067187499999997,
+ "420": -0.002499999999999998,
+ "421": -0.0031494140624999966,
+ "422": -0.0025121093749999974,
+ "423": -0.002466210937499999,
+ "424": -0.0027558593749999966,
+ "425": -0.002774999999999997,
+ "426": -0.0034185546874999926,
+ "427": -0.0029089843749999958,
+ "428": -0.002287890624999999,
+ "429": -0.0024701171874999973,
+ "430": -0.002342382812499999,
+ "431": -0.0028466796874999953,
+ "432": -0.003360937499999995,
+ "433": -0.0026234374999999973,
+ "434": -0.002846289062499997,
+ "435": -0.0022771484374999977,
+ "436": -0.0023251953124999976,
+ "437": -0.002948437499999993,
+ "438": -0.003100390624999994,
+ "439": -0.002559765624999998,
+ "440": -0.0029277343749999946,
+ "441": -0.003355273437499992,
+ "442": -0.0029388671874999955,
+ "443": -0.0029906249999999946,
+ "444": -0.0028152343749999935,
+ "445": -0.0031140624999999953,
+ "446": -0.002737304687499997,
+ "447": -0.0032777343749999946,
+ "448": -0.0026283203124999955,
+ "449": -0.0028249999999999977,
+ "450": -0.0028720703124999946,
+ "451": -0.0018326171875000005,
+ "452": -0.0030429687499999953,
+ "453": -0.0029003906249999967,
+ "454": -0.0027976562499999937,
+ "455": -0.002970898437499994,
+ "456": -0.002544335937499996,
+ "457": -0.003432226562499991,
+ "458": -0.0027179687499999943,
+ "459": -0.0022205078124999987,
+ "460": -0.002218164062499998,
+ "461": -0.002605078124999998,
+ "462": -0.002703320312499997,
+ "463": -0.0031300781249999944,
+ "464": -0.002957421874999995,
+ "465": -0.003134374999999995,
+ "466": -0.0031359374999999955,
+ "467": -0.003071874999999992,
+ "468": -0.0029193359374999972,
+ "469": -0.0027828124999999967,
+ "470": -0.0031539062499999922,
+ "471": -0.0032740234374999946,
+ "472": -0.0028025390624999967,
+ "473": -0.003359374999999995,
+ "474": -0.0021937499999999987,
+ "475": -0.0034035156249999942,
+ "476": -0.0030640624999999965,
+ "477": -0.002631835937499996,
+ "478": -0.002681249999999998,
+ "479": -0.0029380859374999947,
+ "480": -0.0029753906249999937,
+ "481": -0.003447851562499994,
+ "482": -0.003066992187499995,
+ "483": -0.002949609374999994,
+ "484": -0.0028205078124999964,
+ "485": -0.0032107421874999946,
+ "486": -0.0030224609374999946,
+ "487": -0.002905664062499996,
+ "488": -0.0031742187499999956,
+ "489": -0.0027082031249999966,
+ "490": -0.0029193359374999955,
+ "491": -0.0031339843749999935,
+ "492": -0.0030820312499999945,
+ "493": -0.002713281249999996,
+ "494": -0.0031013671874999963,
+ "495": -0.002681835937499995,
+ "496": -0.0032976562499999946,
+ "497": -0.0033455078124999945,
+ "498": -0.002476367187499996,
+ "499": -0.003222656249999993,
+ "500": -0.002926367187499994
+ },
+ "session_av_reward_per_episode": {
+ "1": {
+ "1": -0.008310546874999984,
+ "2": -0.007345703124999987,
+ "3": -0.00806445312499999,
+ "4": -0.0055585937499999915,
+ "5": -0.007162109374999982,
+ "6": -0.006128906249999988,
+ "7": -0.007542968749999982,
+ "8": -0.008712890624999988,
+ "9": -0.00854296874999999,
+ "10": -0.003878906249999991,
+ "11": -0.005763671874999992,
+ "12": -0.0064355468749999895,
+ "13": -0.007712890624999983,
+ "14": -0.0032226562499999938,
+ "15": -0.007478515624999991,
+ "16": -0.004730468749999995,
+ "17": -0.005632812499999991,
+ "18": -0.006013671874999985,
+ "19": -0.002826171874999996,
+ "20": -0.006029296874999989,
+ "21": -0.0039667968749999925,
+ "22": -0.0051972656249999905,
+ "23": -0.00511718749999999,
+ "24": -0.0038535156249999976,
+ "25": -0.0027343749999999985,
+ "26": -0.006591796874999982,
+ "27": -0.003232421874999994,
+ "28": -0.005751953124999994,
+ "29": -0.003943359374999993,
+ "30": -0.002865234374999996,
+ "31": -0.003498046874999989,
+ "32": -0.004357421874999997,
+ "33": -0.006119140624999984,
+ "34": -0.005681640624999993,
+ "35": -0.0028242187499999964,
+ "36": -0.004460937499999996,
+ "37": -0.00464062499999999,
+ "38": -0.0017363281250000013,
+ "39": -0.0029921874999999988,
+ "40": -0.0027910156249999975,
+ "41": -0.004818359374999992,
+ "42": -0.00232421875,
+ "43": -0.0022304687500000002,
+ "44": -0.003882812499999992,
+ "45": -0.004876953124999988,
+ "46": -0.004117187499999988,
+ "47": -0.0018574218750000014,
+ "48": -0.002109375,
+ "49": -0.0017910156250000014,
+ "50": -0.005199218749999997,
+ "51": -0.006312499999999985,
+ "52": -0.004537109374999991,
+ "53": -0.0029902343749999972,
+ "54": -0.005554687499999994,
+ "55": -0.004667968749999993,
+ "56": -0.0030273437499999975,
+ "57": -0.002607421874999999,
+ "58": -0.0032070312499999985,
+ "59": -0.003082031249999998,
+ "60": -0.005076171874999993,
+ "61": -0.001287109375000001,
+ "62": -0.004734374999999994,
+ "63": -0.0035624999999999997,
+ "64": -0.0021738281250000004,
+ "65": -0.005447265624999993,
+ "66": -0.0036933593749999987,
+ "67": -0.0036230468749999956,
+ "68": -0.003404296874999997,
+ "69": -0.003851562499999998,
+ "70": -0.0027753906249999975,
+ "71": -0.0034902343749999972,
+ "72": -0.002294921875,
+ "73": -0.005583984374999995,
+ "74": -0.002263671874999999,
+ "75": -0.004986328124999995,
+ "76": -0.0016503906250000012,
+ "77": -0.002437499999999997,
+ "78": -0.00267578125,
+ "79": -0.0031542968749999987,
+ "80": -0.001351562500000001,
+ "81": -0.004277343749999996,
+ "82": -0.0058945312499999935,
+ "83": -0.0018984375000000015,
+ "84": -0.0023281249999999995,
+ "85": -0.0026699218749999996,
+ "86": -0.002046875000000001,
+ "87": -0.0022656250000000003,
+ "88": -0.0023320312500000016,
+ "89": -0.003679687499999995,
+ "90": -0.004986328124999994,
+ "91": -0.004367187499999997,
+ "92": -0.004691406249999997,
+ "93": -0.0027187499999999985,
+ "94": -0.0018691406250000014,
+ "95": -0.0024687499999999996,
+ "96": -0.003898437499999998,
+ "97": -0.003912109374999997,
+ "98": -0.003220703124999998,
+ "99": -0.0037089843749999987,
+ "100": -0.001460937500000001,
+ "101": -0.005582031249999994,
+ "102": -0.0036171875,
+ "103": -0.002302734374999999,
+ "104": -0.005367187499999994,
+ "105": -0.0017050781250000013,
+ "106": -0.0048749999999999965,
+ "107": -0.00326953125,
+ "108": -0.004812499999999998,
+ "109": -0.0053671874999999935,
+ "110": -0.004564453124999999,
+ "111": -0.0037421874999999964,
+ "112": -0.0031328124999999976,
+ "113": -0.0030390624999999975,
+ "114": -0.00205859375,
+ "115": -0.003855468749999999,
+ "116": -0.0029863281250000003,
+ "117": -0.005373046874999993,
+ "118": -0.0034726562499999966,
+ "119": -0.0039394531249999955,
+ "120": -0.003882812499999999,
+ "121": -0.0018730468750000014,
+ "122": -0.002851562499999998,
+ "123": -0.004005859374999999,
+ "124": -0.0022441406250000005,
+ "125": -0.0028496093749999967,
+ "126": -0.003984374999999995,
+ "127": -0.004357421874999999,
+ "128": -0.0040878906249999965,
+ "129": -0.0018593750000000014,
+ "130": -0.0017031250000000013,
+ "131": -0.003244140624999997,
+ "132": -0.0032617187499999955,
+ "133": -0.005164062499999995,
+ "134": -0.002726562499999998,
+ "135": -0.004374999999999995,
+ "136": -0.0020781250000000005,
+ "137": -0.004162109374999996,
+ "138": -0.0034648437499999953,
+ "139": -0.002585937499999998,
+ "140": -0.004648437499999999,
+ "141": -0.004619140624999992,
+ "142": -0.0015585937500000012,
+ "143": -0.0022421875000000007,
+ "144": -0.0015703125000000012,
+ "145": -0.0016367187500000012,
+ "146": -0.0047265624999999955,
+ "147": -0.0016992187500000013,
+ "148": -0.0017949218750000014,
+ "149": -0.0018652343750000014,
+ "150": -0.005068359374999997,
+ "151": -0.0038769531249999954,
+ "152": -0.001296875000000001,
+ "153": -0.0026054687499999984,
+ "154": -0.003851562499999998,
+ "155": -0.0032382812499999972,
+ "156": -0.0036484374999999976,
+ "157": -0.00255078125,
+ "158": -0.0035117187499999975,
+ "159": -0.0052265625,
+ "160": -0.003062499999999999,
+ "161": -0.002632812499999999,
+ "162": -0.0056113281249999935,
+ "163": -0.0024765625,
+ "164": -0.0033984374999999974,
+ "165": -0.0030253906249999994,
+ "166": -0.002916015625000001,
+ "167": -0.003203125,
+ "168": -0.0015722656250000012,
+ "169": -0.004414062499999999,
+ "170": -0.0037499999999999942,
+ "171": -0.0023125000000000008,
+ "172": -0.0020000000000000013,
+ "173": -0.003531249999999999,
+ "174": -0.0025976562500000006,
+ "175": -0.004414062499999999,
+ "176": -0.003140624999999998,
+ "177": -0.004330078124999998,
+ "178": -0.00509375,
+ "179": -0.0020625000000000014,
+ "180": -0.003859375000000003,
+ "181": -0.004601562500000001,
+ "182": -0.004839843750000001,
+ "183": -0.0016562500000000013,
+ "184": -0.005433593749999992,
+ "185": -0.002414062499999999,
+ "186": -0.002640625000000001,
+ "187": -0.004515624999999999,
+ "188": -0.003898437500000002,
+ "189": -0.0018906250000000015,
+ "190": -0.0033828125,
+ "191": -0.0041484375,
+ "192": -0.002703125000000001,
+ "193": -0.005195312500000002,
+ "194": -0.0022265625000000015,
+ "195": -0.004726562500000001,
+ "196": -0.003484374999999999,
+ "197": -0.0018242187500000014,
+ "198": -0.0033281250000000025,
+ "199": -0.004742187500000002,
+ "200": -0.0031875000000000015,
+ "201": -0.0021054687500000014,
+ "202": -0.002333984375000001,
+ "203": -0.002609375,
+ "204": -0.004695312499999998,
+ "205": -0.0027890624999999994,
+ "206": -0.0010703125000000007,
+ "207": -0.0037890625000000003,
+ "208": -0.0019218750000000015,
+ "209": -0.002937500000000002,
+ "210": -0.003554687500000002,
+ "211": -0.0025078125,
+ "212": -0.002429687499999999,
+ "213": -0.00428125,
+ "214": -0.0016093750000000012,
+ "215": -0.0016406250000000012,
+ "216": -0.0018906250000000015,
+ "217": -0.0023671875000000017,
+ "218": -0.003664062500000002,
+ "219": -0.002437499999999999,
+ "220": -0.0038359375000000012,
+ "221": -0.004031250000000002,
+ "222": -0.002976562500000002,
+ "223": -0.003835937500000003,
+ "224": -0.004125000000000001,
+ "225": -0.0019453125000000015,
+ "226": -0.004859375000000002,
+ "227": -0.002703125000000002,
+ "228": -0.005312500000000004,
+ "229": -0.004359375000000003,
+ "230": -0.0038632812500000013,
+ "231": -0.0019375000000000015,
+ "232": -0.0033437500000000017,
+ "233": -0.002515625000000002,
+ "234": -0.0031796875000000024,
+ "235": -0.0023593750000000017,
+ "236": -0.0033750000000000026,
+ "237": -0.005265625000000002,
+ "238": -0.002453125000000001,
+ "239": -0.0032343750000000024,
+ "240": -0.003781250000000002,
+ "241": -0.004085937500000002,
+ "242": -0.0017343750000000013,
+ "243": -0.005109375000000003,
+ "244": -0.005273437500000001,
+ "245": -0.006601562500000004,
+ "246": -0.0021640625000000015,
+ "247": -0.001335937500000001,
+ "248": -0.003648437500000002,
+ "249": -0.005164062500000003,
+ "250": -0.004117187500000003,
+ "251": -0.0010312500000000007,
+ "252": -0.0017031250000000013,
+ "253": -0.0029296875000000004,
+ "254": -0.0018671875000000014,
+ "255": -0.0029687500000000013,
+ "256": -0.004777343750000002,
+ "257": -0.005031250000000003,
+ "258": -0.002539062500000002,
+ "259": -0.002498046875000002,
+ "260": -0.0033984375000000026,
+ "261": -0.004312500000000003,
+ "262": -0.0019687500000000013,
+ "263": -0.004101562500000001,
+ "264": -0.003507812500000001,
+ "265": -0.0015390625000000012,
+ "266": -0.002679687500000002,
+ "267": -0.002876953125000001,
+ "268": -0.0020000000000000013,
+ "269": -0.004417968750000003,
+ "270": -0.001357421875000001,
+ "271": -0.004273437500000001,
+ "272": -0.002882812500000002,
+ "273": -0.004039062500000002,
+ "274": -0.0043281249999999995,
+ "275": -0.001486328125000001,
+ "276": -0.0018203125000000014,
+ "277": -0.0016953125000000013,
+ "278": -0.004220703125000002,
+ "279": -0.004703125000000002,
+ "280": -0.0022343750000000016,
+ "281": -0.0047265625000000025,
+ "282": -0.004210937500000003,
+ "283": -0.0033046875000000016,
+ "284": -0.004531250000000002,
+ "285": -0.004445312500000003,
+ "286": -0.0018906250000000015,
+ "287": -0.0032187500000000007,
+ "288": -0.0023515625000000017,
+ "289": -0.003976562500000003,
+ "290": -0.003968750000000003,
+ "291": -0.0039003906250000024,
+ "292": -0.005140625000000004,
+ "293": -0.002828125000000001,
+ "294": -0.0052324218750000005,
+ "295": -0.004835937500000002,
+ "296": -0.002484375000000001,
+ "297": -0.0017187500000000013,
+ "298": -0.003734375000000002,
+ "299": -0.003757812500000003,
+ "300": -0.0021484375000000015,
+ "301": -0.0018593750000000014,
+ "302": -0.0032109375000000016,
+ "303": -0.0011875000000000008,
+ "304": -0.0034062500000000017,
+ "305": -0.0021406250000000015,
+ "306": -0.0018593750000000014,
+ "307": -0.0024687500000000013,
+ "308": -0.0023593750000000012,
+ "309": -0.004390625000000003,
+ "310": -0.0038671874999999995,
+ "311": -0.0022265625000000015,
+ "312": -0.004796875000000003,
+ "313": -0.0032050781250000013,
+ "314": -0.004796875000000003,
+ "315": -0.001250000000000001,
+ "316": -0.004992187500000004,
+ "317": -0.0011328125000000008,
+ "318": -0.001986328125000001,
+ "319": -0.003687500000000002,
+ "320": -0.0020859375000000014,
+ "321": -0.0031953125,
+ "322": -0.0018906250000000015,
+ "323": -0.003695312500000002,
+ "324": -0.004146484374999999,
+ "325": -0.0030156250000000014,
+ "326": -0.004328124999999994,
+ "327": -0.0019921875000000013,
+ "328": -0.0031640625000000024,
+ "329": -0.004890625,
+ "330": -0.004953124999999997,
+ "331": -0.003968749999999998,
+ "332": -0.0026230468750000012,
+ "333": -0.002421875000000001,
+ "334": -0.004423828124999996,
+ "335": -0.0041953124999999985,
+ "336": -0.0037441406249999996,
+ "337": -0.0022265625000000015,
+ "338": -0.0043437499999999995,
+ "339": -0.004601562499999999,
+ "340": -0.0036250000000000015,
+ "341": -0.003531249999999997,
+ "342": -0.004523437500000003,
+ "343": -0.004398437500000001,
+ "344": -0.003048828125,
+ "345": -0.0037734374999999994,
+ "346": -0.003123046875,
+ "347": -0.001335937500000001,
+ "348": -0.002382812500000001,
+ "349": -0.0034921875,
+ "350": -0.0035703125,
+ "351": -0.002322265624999999,
+ "352": -0.005310546874999995,
+ "353": -0.005429687500000001,
+ "354": -0.0026562499999999993,
+ "355": -0.0037656249999999986,
+ "356": -0.0017343750000000013,
+ "357": -0.0016328125000000012,
+ "358": -0.003546875000000002,
+ "359": -0.003499999999999999,
+ "360": -0.0022773437500000003,
+ "361": -0.0019140625000000015,
+ "362": -0.0023945312499999995,
+ "363": -0.0031718750000000024,
+ "364": -0.003769531250000002,
+ "365": -0.0027363281250000005,
+ "366": -0.0055117187499999975,
+ "367": -0.0019531250000000013,
+ "368": -0.005124999999999997,
+ "369": -0.0026933593749999987,
+ "370": -0.004539062499999999,
+ "371": -0.002546875000000001,
+ "372": -0.0038730468750000006,
+ "373": -0.005499999999999999,
+ "374": -0.0037851562500000003,
+ "375": -0.005179687499999996,
+ "376": -0.003605468749999998,
+ "377": -0.001320312500000001,
+ "378": -0.004519531249999998,
+ "379": -0.002953125,
+ "380": -0.0017734375000000014,
+ "381": -0.001265625000000001,
+ "382": -0.004546875000000001,
+ "383": -0.0031171874999999993,
+ "384": -0.005148437499999999,
+ "385": -0.003609374999999997,
+ "386": -0.0035410156250000003,
+ "387": -0.0012421875000000009,
+ "388": -0.0020468750000000014,
+ "389": -0.002578125,
+ "390": -0.004046875,
+ "391": -0.0028593750000000004,
+ "392": -0.001312500000000001,
+ "393": -0.0037578125,
+ "394": -0.0020214843750000007,
+ "395": -0.0029531249999999996,
+ "396": -0.003494140625000003,
+ "397": -0.001289062500000001,
+ "398": -0.0037226562500000003,
+ "399": -0.0024140625,
+ "400": -0.0018828125000000015,
+ "401": -0.0017656250000000014,
+ "402": -0.004421875000000002,
+ "403": -0.0012031250000000009,
+ "404": -0.0051171875,
+ "405": -0.0025546875,
+ "406": -0.004765624999999998,
+ "407": -0.0053066406249999976,
+ "408": -0.005619140624999997,
+ "409": -0.004249999999999997,
+ "410": -0.0039199218749999985,
+ "411": -0.002789062500000001,
+ "412": -0.0018906250000000015,
+ "413": -0.0020625000000000014,
+ "414": -0.003421875000000001,
+ "415": -0.0039785156249999955,
+ "416": -0.0037929687499999977,
+ "417": -0.0019921875000000013,
+ "418": -0.0012421875000000009,
+ "419": -0.0021054687500000014,
+ "420": -0.003679687499999998,
+ "421": -0.003421875000000001,
+ "422": -0.0018984375000000015,
+ "423": -0.004857421875000001,
+ "424": -0.0035546874999999993,
+ "425": -0.00466015625,
+ "426": -0.0030644531250000016,
+ "427": -0.004187500000000003,
+ "428": -0.0020156250000000014,
+ "429": -0.004109375,
+ "430": -0.004117187500000001,
+ "431": -0.0024609375,
+ "432": -0.003921875000000003,
+ "433": -0.0018750000000000014,
+ "434": -0.005335937500000003,
+ "435": -0.0033359375000000017,
+ "436": -0.0011953125000000008,
+ "437": -0.0021503906250000017,
+ "438": -0.0010781250000000007,
+ "439": -0.0031562500000000024,
+ "440": -0.0015156250000000011,
+ "441": -0.004281250000000003,
+ "442": -0.004234375,
+ "443": -0.004140625000000002,
+ "444": -0.0016250000000000012,
+ "445": -0.003453125000000001,
+ "446": -0.0031406250000000015,
+ "447": -0.0058125000000000026,
+ "448": -0.0021328125000000015,
+ "449": -0.004000000000000001,
+ "450": -0.0054687500000000005,
+ "451": -0.0031953125000000015,
+ "452": -0.0025234375,
+ "453": -0.004828125000000002,
+ "454": -0.0017109375000000013,
+ "455": -0.004140625000000001,
+ "456": -0.0021406250000000015,
+ "457": -0.0038984375000000013,
+ "458": -0.0022578125000000007,
+ "459": -0.002978515624999999,
+ "460": -0.0019921875000000013,
+ "461": -0.0017968750000000014,
+ "462": -0.0011718750000000008,
+ "463": -0.004710937500000003,
+ "464": -0.0033984375000000026,
+ "465": -0.0041015625,
+ "466": -0.004140625000000002,
+ "467": -0.001335937500000001,
+ "468": -0.003804687500000002,
+ "469": -0.0020000000000000013,
+ "470": -0.002742187500000002,
+ "471": -0.002945312500000002,
+ "472": -0.0011015625000000008,
+ "473": -0.0034140625000000017,
+ "474": -0.002664062500000002,
+ "475": -0.005488281249999992,
+ "476": -0.002648437500000002,
+ "477": -0.0028984375000000004,
+ "478": -0.005351562500000003,
+ "479": -0.0017792968750000014,
+ "480": -0.002828125000000002,
+ "481": -0.0033945312500000026,
+ "482": -0.0033203125000000016,
+ "483": -0.0032031250000000007,
+ "484": -0.005710937500000002,
+ "485": -0.0032578125000000025,
+ "486": -0.004875000000000002,
+ "487": -0.002507812500000002,
+ "488": -0.004474609375000001,
+ "489": -0.0012402343750000009,
+ "490": -0.003789062500000002,
+ "491": -0.0015703125000000012,
+ "492": -0.0022890625000000016,
+ "493": -0.0037500000000000003,
+ "494": -0.0045312500000000006,
+ "495": -0.0031132812500000023,
+ "496": -0.002632812500000002,
+ "497": -0.004898437500000002,
+ "498": -0.0028515625000000004,
+ "499": -0.0034296875000000017,
+ "500": -0.003287109374999998
+ },
+ "2": {
+ "1": -0.00668749999999999,
+ "2": -0.008337890624999995,
+ "3": -0.008603515624999994,
+ "4": -0.006494140624999996,
+ "5": -0.007927734374999988,
+ "6": -0.0075507812499999985,
+ "7": -0.008568359374999982,
+ "8": -0.0046835937499999925,
+ "9": -0.006111328124999986,
+ "10": -0.00833203124999999,
+ "11": -0.006124999999999987,
+ "12": -0.007197265624999987,
+ "13": -0.005449218749999991,
+ "14": -0.006740234374999991,
+ "15": -0.005578124999999988,
+ "16": -0.00730468749999999,
+ "17": -0.006337890624999984,
+ "18": -0.006996093749999991,
+ "19": -0.008062499999999986,
+ "20": -0.005960937499999998,
+ "21": -0.003755859374999996,
+ "22": -0.005884765624999988,
+ "23": -0.003726562499999997,
+ "24": -0.004082031249999994,
+ "25": -0.004121093749999995,
+ "26": -0.004166015624999989,
+ "27": -0.005408203124999989,
+ "28": -0.004623046874999992,
+ "29": -0.006355468749999989,
+ "30": -0.003105468749999997,
+ "31": -0.00336718749999999,
+ "32": -0.003369140624999998,
+ "33": -0.0036035156249999943,
+ "34": -0.002960937499999996,
+ "35": -0.0030800781249999934,
+ "36": -0.003830078124999993,
+ "37": -0.005892578124999987,
+ "38": -0.0025839843749999986,
+ "39": -0.0028808593749999963,
+ "40": -0.004277343749999992,
+ "41": -0.0025644531249999964,
+ "42": -0.0034980468749999907,
+ "43": -0.0035390624999999936,
+ "44": -0.004976562499999986,
+ "45": -0.0052851562499999895,
+ "46": -0.0016191406250000012,
+ "47": -0.002150390625000001,
+ "48": -0.0028281249999999973,
+ "49": -0.004070312499999991,
+ "50": -0.005560546874999996,
+ "51": -0.0021347656250000004,
+ "52": -0.003720703124999993,
+ "53": -0.0038671874999999948,
+ "54": -0.004712890624999985,
+ "55": -0.002726562499999998,
+ "56": -0.004517578124999997,
+ "57": -0.0021249999999999997,
+ "58": -0.002523437499999998,
+ "59": -0.004830078124999992,
+ "60": -0.0031660156249999983,
+ "61": -0.001382812500000001,
+ "62": -0.0039589843749999925,
+ "63": -0.004226562499999995,
+ "64": -0.003976562499999997,
+ "65": -0.004060546874999997,
+ "66": -0.003306640624999999,
+ "67": -0.003691406249999995,
+ "68": -0.004171874999999993,
+ "69": -0.0046015624999999945,
+ "70": -0.00460156249999999,
+ "71": -0.0031816406249999965,
+ "72": -0.0031894531249999965,
+ "73": -0.004068359374999995,
+ "74": -0.0040937499999999976,
+ "75": -0.0028183593749999975,
+ "76": -0.0019570312500000013,
+ "77": -0.005675781249999981,
+ "78": -0.0022539062499999985,
+ "79": -0.004431640624999993,
+ "80": -0.0024804687499999974,
+ "81": -0.0018027343750000014,
+ "82": -0.005943359374999981,
+ "83": -0.0046679687499999924,
+ "84": -0.0038574218749999937,
+ "85": -0.002000000000000001,
+ "86": -0.002208984374999999,
+ "87": -0.0012304687500000009,
+ "88": -0.00211328125,
+ "89": -0.0032890624999999942,
+ "90": -0.004523437499999988,
+ "91": -0.0016855468750000013,
+ "92": -0.001337890625000001,
+ "93": -0.002955078124999995,
+ "94": -0.00366210937499999,
+ "95": -0.003785156249999991,
+ "96": -0.005333984375,
+ "97": -0.0023886718749999967,
+ "98": -0.002035156250000001,
+ "99": -0.004917968749999974,
+ "100": -0.0032382812499999907,
+ "101": -0.004316406249999983,
+ "102": -0.001414062500000001,
+ "103": -0.0015332031250000011,
+ "104": -0.004656249999999984,
+ "105": -0.0016894531250000013,
+ "106": -0.0018027343750000014,
+ "107": -0.002009765625000001,
+ "108": -0.0025488281249999964,
+ "109": -0.0012167968750000009,
+ "110": -0.004083984374999992,
+ "111": -0.002623046874999991,
+ "112": -0.0032382812499999907,
+ "113": -0.0016113281250000012,
+ "114": -0.004892578124999982,
+ "115": -0.0025664062499999958,
+ "116": -0.0016757812500000013,
+ "117": -0.0021953124999999985,
+ "118": -0.003882812499999987,
+ "119": -0.0034414062499999896,
+ "120": -0.003474609374999989,
+ "121": -0.0028242187499999986,
+ "122": -0.003484374999999992,
+ "123": -0.0016054687500000012,
+ "124": -0.003431640624999992,
+ "125": -0.003115234374999992,
+ "126": -0.0016542968750000013,
+ "127": -0.004187499999999987,
+ "128": -0.00400195312499999,
+ "129": -0.0017421875000000013,
+ "130": -0.0024492187499999974,
+ "131": -0.002794921874999998,
+ "132": -0.002269531249999998,
+ "133": -0.003001953124999995,
+ "134": -0.0011835937500000008,
+ "135": -0.003544921874999991,
+ "136": -0.0026328124999999945,
+ "137": -0.0026894531249999974,
+ "138": -0.001298828125000001,
+ "139": -0.004076171874999992,
+ "140": -0.0015898437500000012,
+ "141": -0.004207031249999984,
+ "142": -0.005101562499999982,
+ "143": -0.004562499999999984,
+ "144": -0.003128906249999994,
+ "145": -0.0024257812499999956,
+ "146": -0.0028867187499999943,
+ "147": -0.002341796874999998,
+ "148": -0.001470703125000001,
+ "149": -0.0017578125000000013,
+ "150": -0.001277343750000001,
+ "151": -0.004697265624999988,
+ "152": -0.0039960937499999875,
+ "153": -0.0017500000000000013,
+ "154": -0.003261718749999996,
+ "155": -0.003996093749999988,
+ "156": -0.005363281249999978,
+ "157": -0.001998046875000001,
+ "158": -0.001425781250000001,
+ "159": -0.004755859374999982,
+ "160": -0.004218749999999987,
+ "161": -0.002759765624999993,
+ "162": -0.0036523437499999915,
+ "163": -0.0027812499999999955,
+ "164": -0.0026992187499999937,
+ "165": -0.003552734374999991,
+ "166": -0.001476562500000001,
+ "167": -0.0025507812499999966,
+ "168": -0.002496093749999997,
+ "169": -0.005841796874999974,
+ "170": -0.0017187500000000013,
+ "171": -0.003499999999999989,
+ "172": -0.003636718749999985,
+ "173": -0.0031386718749999887,
+ "174": -0.0035449218749999873,
+ "175": -0.002968749999999991,
+ "176": -0.004212890624999983,
+ "177": -0.0029726562499999914,
+ "178": -0.0018945312500000015,
+ "179": -0.0022929687499999977,
+ "180": -0.0010625000000000007,
+ "181": -0.0030937499999999884,
+ "182": -0.0041035156249999896,
+ "183": -0.0036328124999999824,
+ "184": -0.0023925781249999963,
+ "185": -0.0032929687499999873,
+ "186": -0.003316406249999986,
+ "187": -0.00369921874999999,
+ "188": -0.0025781249999999954,
+ "189": -0.0011464843750000008,
+ "190": -0.0018261718750000014,
+ "191": -0.003458984374999992,
+ "192": -0.0020781249999999992,
+ "193": -0.003148437499999989,
+ "194": -0.002583984374999995,
+ "195": -0.0018496093750000014,
+ "196": -0.0015058593750000011,
+ "197": -0.0021191406249999995,
+ "198": -0.0010195312500000007,
+ "199": -0.003095703124999991,
+ "200": -0.0029999999999999905,
+ "201": -0.004960937499999978,
+ "202": -0.003347656249999988,
+ "203": -0.003140624999999989,
+ "204": -0.003181640624999988,
+ "205": -0.0035039062499999897,
+ "206": -0.001351562500000001,
+ "207": -0.003857421874999988,
+ "208": -0.0031816406249999874,
+ "209": -0.0017480468750000013,
+ "210": -0.002601562499999994,
+ "211": -0.002906249999999992,
+ "212": -0.00313867187499999,
+ "213": -0.002697265624999995,
+ "214": -0.002400390624999997,
+ "215": -0.0026640624999999933,
+ "216": -0.0032851562499999864,
+ "217": -0.0018652343750000014,
+ "218": -0.00394726562499998,
+ "219": -0.0028789062499999917,
+ "220": -0.0020605468749999994,
+ "221": -0.002441406249999996,
+ "222": -0.0033261718749999876,
+ "223": -0.003074218749999993,
+ "224": -0.0029707031249999903,
+ "225": -0.0019101562500000015,
+ "226": -0.0015644531250000012,
+ "227": -0.0017207031250000013,
+ "228": -0.00380664062499999,
+ "229": -0.0015371093750000011,
+ "230": -0.00371874999999999,
+ "231": -0.0023691406249999936,
+ "232": -0.0022343749999999955,
+ "233": -0.002953124999999991,
+ "234": -0.0034492187499999914,
+ "235": -0.001322265625000001,
+ "236": -0.0019550781250000015,
+ "237": -0.002230468749999998,
+ "238": -0.00208984375,
+ "239": -0.0016406250000000012,
+ "240": -0.001460937500000001,
+ "241": -0.0019316406250000015,
+ "242": -0.0017382812500000013,
+ "243": -0.0019082031250000015,
+ "244": -0.004255859374999978,
+ "245": -0.002197265624999999,
+ "246": -0.0019960937500000005,
+ "247": -0.0017343750000000013,
+ "248": -0.0011621093750000008,
+ "249": -0.0016679687500000013,
+ "250": -0.0018750000000000014,
+ "251": -0.0021738281249999982,
+ "252": -0.004574218749999983,
+ "253": -0.0016406250000000012,
+ "254": -0.003111328124999989,
+ "255": -0.001482421875000001,
+ "256": -0.002171874999999999,
+ "257": -0.0037910156249999815,
+ "258": -0.0027226562499999946,
+ "259": -0.004068359374999976,
+ "260": -0.003423828124999987,
+ "261": -0.0025078124999999953,
+ "262": -0.00201171875,
+ "263": -0.0033476562499999856,
+ "264": -0.0031582031249999887,
+ "265": -0.004248046874999985,
+ "266": -0.0028203124999999917,
+ "267": -0.001304687500000001,
+ "268": -0.003972656249999982,
+ "269": -0.003374999999999985,
+ "270": -0.003341796874999988,
+ "271": -0.0023574218749999967,
+ "272": -0.0010976562500000008,
+ "273": -0.0026621093749999943,
+ "274": -0.0035507812499999845,
+ "275": -0.0017773437500000014,
+ "276": -0.002925781249999992,
+ "277": -0.0034511718749999855,
+ "278": -0.0027597656249999927,
+ "279": -0.003136718749999989,
+ "280": -0.0010996093750000008,
+ "281": -0.0017363281250000013,
+ "282": -0.001445312500000001,
+ "283": -0.003951171874999987,
+ "284": -0.0044980468749999825,
+ "285": -0.001320312500000001,
+ "286": -0.004068359374999978,
+ "287": -0.0035937499999999837,
+ "288": -0.0022109374999999985,
+ "289": -0.003632812499999989,
+ "290": -0.0017324218750000013,
+ "291": -0.003207031249999992,
+ "292": -0.0024707031249999955,
+ "293": -0.003617187499999983,
+ "294": -0.0029687499999999935,
+ "295": -0.00201953125,
+ "296": -0.0035644531249999895,
+ "297": -0.0023593749999999973,
+ "298": -0.0015195312500000011,
+ "299": -0.002605468749999994,
+ "300": -0.0012460937500000009,
+ "301": -0.0038007812499999886,
+ "302": -0.0035664062499999845,
+ "303": -0.0010800781250000007,
+ "304": -0.003589843749999989,
+ "305": -0.001339843750000001,
+ "306": -0.0028046874999999916,
+ "307": -0.0025722656249999943,
+ "308": -0.0016015625000000012,
+ "309": -0.0032031249999999894,
+ "310": -0.002826171874999993,
+ "311": -0.0017656250000000014,
+ "312": -0.003753906249999984,
+ "313": -0.0032441406249999897,
+ "314": -0.002259765624999996,
+ "315": -0.0034257812499999857,
+ "316": -0.0033769531249999854,
+ "317": -0.0014941406250000011,
+ "318": -0.0031445312499999906,
+ "319": -0.0028515624999999913,
+ "320": -0.0023984374999999974,
+ "321": -0.0016171875000000012,
+ "322": -0.002306640624999994,
+ "323": -0.0030312499999999945,
+ "324": -0.0011171875000000008,
+ "325": -0.0019335937500000015,
+ "326": -0.00297265624999999,
+ "327": -0.002832031249999992,
+ "328": -0.004162109374999981,
+ "329": -0.003812499999999991,
+ "330": -0.003333984374999989,
+ "331": -0.003210937499999993,
+ "332": -0.0031113281249999887,
+ "333": -0.002283203124999998,
+ "334": -0.0022792968749999953,
+ "335": -0.0031757812499999894,
+ "336": -0.004339843749999989,
+ "337": -0.0025253906249999964,
+ "338": -0.0019335937500000015,
+ "339": -0.003667968749999988,
+ "340": -0.001271484375000001,
+ "341": -0.0031914062499999924,
+ "342": -0.004269531249999978,
+ "343": -0.003292968749999993,
+ "344": -0.002240234374999996,
+ "345": -0.003748046874999984,
+ "346": -0.0036445312499999846,
+ "347": -0.0037968749999999843,
+ "348": -0.005087890624999982,
+ "349": -0.002630859374999994,
+ "350": -0.0021308593749999978,
+ "351": -0.0036621093749999926,
+ "352": -0.002749999999999994,
+ "353": -0.0020644531249999994,
+ "354": -0.003478515624999992,
+ "355": -0.0036835937499999846,
+ "356": -0.0035234374999999858,
+ "357": -0.005513671874999977,
+ "358": -0.002279296874999995,
+ "359": -0.003791015624999983,
+ "360": -0.0033769531249999876,
+ "361": -0.001359375000000001,
+ "362": -0.001433593750000001,
+ "363": -0.0024355468749999946,
+ "364": -0.0011796875000000008,
+ "365": -0.002126953124999998,
+ "366": -0.003691406249999983,
+ "367": -0.0015332031250000011,
+ "368": -0.0011640625000000008,
+ "369": -0.0015566406250000012,
+ "370": -0.0014960937500000011,
+ "371": -0.003886718749999981,
+ "372": -0.003916015624999986,
+ "373": -0.0017773437500000014,
+ "374": -0.002025390625,
+ "375": -0.002509765624999998,
+ "376": -0.0032812499999999908,
+ "377": -0.0032832031249999884,
+ "378": -0.0043066406249999785,
+ "379": -0.0020859374999999997,
+ "380": -0.001474609375000001,
+ "381": -0.0020234375,
+ "382": -0.003171874999999991,
+ "383": -0.002259765624999998,
+ "384": -0.004529296874999985,
+ "385": -0.0017402343750000013,
+ "386": -0.002777343749999993,
+ "387": -0.0027812499999999934,
+ "388": -0.0017226562500000013,
+ "389": -0.003908203124999988,
+ "390": -0.0029335937499999905,
+ "391": -0.0037949218749999854,
+ "392": -0.0021953124999999963,
+ "393": -0.003119140624999989,
+ "394": -0.00460546874999998,
+ "395": -0.0016386718750000012,
+ "396": -0.0027812499999999947,
+ "397": -0.004279296874999984,
+ "398": -0.0032128906249999896,
+ "399": -0.0009980468750000007,
+ "400": -0.0016972656250000013,
+ "401": -0.0044277343749999755,
+ "402": -0.0022246093749999957,
+ "403": -0.006009765624999973,
+ "404": -0.002751953124999993,
+ "405": -0.0020390624999999996,
+ "406": -0.002580078124999997,
+ "407": -0.0031386718749999887,
+ "408": -0.002359374999999997,
+ "409": -0.003910156249999985,
+ "410": -0.0023203124999999977,
+ "411": -0.0033437499999999934,
+ "412": -0.0027050781249999957,
+ "413": -0.0018847656250000015,
+ "414": -0.0038203124999999865,
+ "415": -0.0035214843749999886,
+ "416": -0.003355468749999988,
+ "417": -0.0020898437500000006,
+ "418": -0.0020937499999999993,
+ "419": -0.004249999999999994,
+ "420": -0.0026855468749999952,
+ "421": -0.004164062499999989,
+ "422": -0.0026777343749999957,
+ "423": -0.0032246093749999905,
+ "424": -0.0035019531249999894,
+ "425": -0.0026835937499999967,
+ "426": -0.0036874999999999885,
+ "427": -0.001322265625000001,
+ "428": -0.001984375000000001,
+ "429": -0.001435546875000001,
+ "430": -0.0031191406249999913,
+ "431": -0.001458984375000001,
+ "432": -0.0033925781249999907,
+ "433": -0.0033632812499999895,
+ "434": -0.0028261718749999915,
+ "435": -0.002632812499999994,
+ "436": -0.002240234374999996,
+ "437": -0.0025566406249999947,
+ "438": -0.002880859374999995,
+ "439": -0.0019472656250000015,
+ "440": -0.0015742187500000012,
+ "441": -0.003986328124999981,
+ "442": -0.003984374999999978,
+ "443": -0.002779296874999993,
+ "444": -0.0034121093749999868,
+ "445": -0.0027734374999999925,
+ "446": -0.0020312499999999996,
+ "447": -0.001298828125000001,
+ "448": -0.00295312499999999,
+ "449": -0.0011191406250000008,
+ "450": -0.0016210937500000012,
+ "451": -0.0017246093750000013,
+ "452": -0.004115234374999986,
+ "453": -0.0016386718750000012,
+ "454": -0.0011816406250000008,
+ "455": -0.0034121093749999855,
+ "456": -0.0012050781250000009,
+ "457": -0.003716796874999984,
+ "458": -0.0034374999999999853,
+ "459": -0.0022929687499999986,
+ "460": -0.001421875000000001,
+ "461": -0.004138671874999996,
+ "462": -0.0031953124999999994,
+ "463": -0.002535156249999997,
+ "464": -0.003029296874999994,
+ "465": -0.003824218749999989,
+ "466": -0.003585937499999995,
+ "467": -0.0032187499999999977,
+ "468": -0.0015781250000000012,
+ "469": -0.0016777343750000013,
+ "470": -0.004085937499999991,
+ "471": -0.002726562499999998,
+ "472": -0.003994140624999991,
+ "473": -0.0018886718750000015,
+ "474": -0.0010468750000000007,
+ "475": -0.004585937499999989,
+ "476": -0.0043964843749999885,
+ "477": -0.0035273437499999893,
+ "478": -0.002927734374999994,
+ "479": -0.0031855468749999905,
+ "480": -0.0033242187499999873,
+ "481": -0.004189453124999983,
+ "482": -0.002859374999999993,
+ "483": -0.002187499999999999,
+ "484": -0.0032812499999999908,
+ "485": -0.0022539062499999994,
+ "486": -0.001478515625000001,
+ "487": -0.004275390624999986,
+ "488": -0.002810546874999993,
+ "489": -0.004757812499999983,
+ "490": -0.004394531249999978,
+ "491": -0.0034843749999999905,
+ "492": -0.004269531249999981,
+ "493": -0.0017167968750000013,
+ "494": -0.002601562499999995,
+ "495": -0.00302734374999999,
+ "496": -0.004330078124999985,
+ "497": -0.004146484374999983,
+ "498": -0.001398437500000001,
+ "499": -0.003535156249999989,
+ "500": -0.0010585937500000007
+ },
+ "3": {
+ "1": -0.007740234374999988,
+ "2": -0.006109374999999985,
+ "3": -0.006619140624999987,
+ "4": -0.005044921874999996,
+ "5": -0.007175781249999995,
+ "6": -0.007322265624999987,
+ "7": -0.007414062499999988,
+ "8": -0.0062187499999999925,
+ "9": -0.005988281249999994,
+ "10": -0.005419921874999985,
+ "11": -0.006238281249999988,
+ "12": -0.006699218749999988,
+ "13": -0.005935546874999986,
+ "14": -0.005289062499999995,
+ "15": -0.0038828124999999935,
+ "16": -0.007675781249999992,
+ "17": -0.0043671874999999935,
+ "18": -0.005611328124999988,
+ "19": -0.005253906249999994,
+ "20": -0.0055917968749999904,
+ "21": -0.005437499999999992,
+ "22": -0.00546679687499999,
+ "23": -0.004085937499999992,
+ "24": -0.003935546874999994,
+ "25": -0.004970703124999996,
+ "26": -0.00543554687499999,
+ "27": -0.004876953124999989,
+ "28": -0.00608593749999999,
+ "29": -0.006445312499999993,
+ "30": -0.0022910156249999988,
+ "31": -0.0032792968749999966,
+ "32": -0.005574218749999987,
+ "33": -0.002273437499999999,
+ "34": -0.004681640624999988,
+ "35": -0.0039218749999999965,
+ "36": -0.0019121093750000015,
+ "37": -0.005585937499999984,
+ "38": -0.006316406249999993,
+ "39": -0.004447265624999994,
+ "40": -0.003402343749999994,
+ "41": -0.0050371093749999925,
+ "42": -0.002757812499999998,
+ "43": -0.00615234374999999,
+ "44": -0.004363281249999994,
+ "45": -0.0035703124999999984,
+ "46": -0.0027304687499999972,
+ "47": -0.0031816406249999952,
+ "48": -0.002615234374999999,
+ "49": -0.0037031249999999964,
+ "50": -0.0038437499999999956,
+ "51": -0.003771484374999996,
+ "52": -0.0022558593749999996,
+ "53": -0.0016738281250000013,
+ "54": -0.003990234374999995,
+ "55": -0.0038164062499999973,
+ "56": -0.004515624999999993,
+ "57": -0.0024375,
+ "58": -0.0029863281249999946,
+ "59": -0.004492187499999994,
+ "60": -0.002630859374999995,
+ "61": -0.004515624999999997,
+ "62": -0.005789062499999986,
+ "63": -0.004761718749999988,
+ "64": -0.003335937499999995,
+ "65": -0.0032929687499999943,
+ "66": -0.002986328124999995,
+ "67": -0.003121093749999996,
+ "68": -0.004880859374999987,
+ "69": -0.005933593749999989,
+ "70": -0.0028945312499999974,
+ "71": -0.004574218749999995,
+ "72": -0.004783203124999989,
+ "73": -0.0036796874999999937,
+ "74": -0.005249999999999988,
+ "75": -0.0028710937499999978,
+ "76": -0.0047128906249999936,
+ "77": -0.0034199218749999924,
+ "78": -0.0020019531250000007,
+ "79": -0.0029999999999999983,
+ "80": -0.0023769531249999984,
+ "81": -0.0029570312499999966,
+ "82": -0.00515624999999999,
+ "83": -0.004603515624999991,
+ "84": -0.002480468749999998,
+ "85": -0.004837890624999991,
+ "86": -0.005146484374999998,
+ "87": -0.0029414062499999974,
+ "88": -0.002658203124999998,
+ "89": -0.00558203124999998,
+ "90": -0.004185546874999995,
+ "91": -0.0030624999999999966,
+ "92": -0.0025058593749999994,
+ "93": -0.0020976562500000006,
+ "94": -0.006921874999999993,
+ "95": -0.0059921874999999845,
+ "96": -0.0026386718749999987,
+ "97": -0.0018886718750000015,
+ "98": -0.0030449218749999973,
+ "99": -0.004941406249999991,
+ "100": -0.0015039062500000011,
+ "101": -0.003249999999999995,
+ "102": -0.005304687499999992,
+ "103": -0.003935546874999996,
+ "104": -0.005093749999999987,
+ "105": -0.0030273437499999966,
+ "106": -0.002703124999999999,
+ "107": -0.002595703124999999,
+ "108": -0.005017578124999995,
+ "109": -0.0031367187499999967,
+ "110": -0.005623046874999994,
+ "111": -0.002111328125,
+ "112": -0.0028046874999999986,
+ "113": -0.002726562499999998,
+ "114": -0.0017832031250000014,
+ "115": -0.00489843749999999,
+ "116": -0.003972656249999991,
+ "117": -0.005228515624999997,
+ "118": -0.003974609374999994,
+ "119": -0.005255859374999985,
+ "120": -0.006804687500000001,
+ "121": -0.001283203125000001,
+ "122": -0.0016953125000000013,
+ "123": -0.003874999999999997,
+ "124": -0.0037363281249999914,
+ "125": -0.002267578125000001,
+ "126": -0.005345703124999989,
+ "127": -0.006501953124999993,
+ "128": -0.003361328124999997,
+ "129": -0.003423828124999995,
+ "130": -0.0024296874999999996,
+ "131": -0.0027558593749999996,
+ "132": -0.002451171874999996,
+ "133": -0.003898437499999996,
+ "134": -0.002749999999999996,
+ "135": -0.0034082031249999937,
+ "136": -0.0047812499999999964,
+ "137": -0.002804687499999996,
+ "138": -0.002624999999999997,
+ "139": -0.001410156250000001,
+ "140": -0.0027656249999999986,
+ "141": -0.001425781250000001,
+ "142": -0.0011835937500000008,
+ "143": -0.0024374999999999996,
+ "144": -0.0017167968750000013,
+ "145": -0.004070312499999994,
+ "146": -0.0027285156249999966,
+ "147": -0.0010078125000000007,
+ "148": -0.003638671874999993,
+ "149": -0.003341796874999994,
+ "150": -0.002205078125,
+ "151": -0.0028945312499999943,
+ "152": -0.0016816406250000013,
+ "153": -0.0051621093750000005,
+ "154": -0.004669921874999983,
+ "155": -0.0029238281249999937,
+ "156": -0.0016230468750000012,
+ "157": -0.00522851562499998,
+ "158": -0.003822265624999989,
+ "159": -0.0027949218749999953,
+ "160": -0.004900390624999988,
+ "161": -0.004228515624999986,
+ "162": -0.00395507812499999,
+ "163": -0.002150390625,
+ "164": -0.0027519531249999983,
+ "165": -0.00203515625,
+ "166": -0.0021640624999999993,
+ "167": -0.0025800781249999964,
+ "168": -0.0024824218749999964,
+ "169": -0.0015898437500000012,
+ "170": -0.0019296875000000015,
+ "171": -0.0026445312499999963,
+ "172": -0.0028417968749999936,
+ "173": -0.001458984375000001,
+ "174": -0.0028886718749999932,
+ "175": -0.0029863281249999946,
+ "176": -0.0015332031250000011,
+ "177": -0.005042968749999985,
+ "178": -0.0026484374999999954,
+ "179": -0.0028378906249999945,
+ "180": -0.0035390624999999936,
+ "181": -0.003972656249999988,
+ "182": -0.0020292968750000007,
+ "183": -0.0016250000000000012,
+ "184": -0.004917968749999983,
+ "185": -0.002570312499999996,
+ "186": -0.0028261718749999975,
+ "187": -0.0019707031250000015,
+ "188": -0.0016250000000000012,
+ "189": -0.004179687499999989,
+ "190": -0.003226562500000002,
+ "191": -0.002853515624999991,
+ "192": -0.003427734374999992,
+ "193": -0.004066406249999984,
+ "194": -0.002519531249999996,
+ "195": -0.005859374999999972,
+ "196": -0.0016074218750000012,
+ "197": -0.0011660156250000008,
+ "198": -0.0018613281250000014,
+ "199": -0.0037968749999999886,
+ "200": -0.001472656250000001,
+ "201": -0.0034765624999999896,
+ "202": -0.0031445312499999906,
+ "203": -0.00325585937499999,
+ "204": -0.0017441406250000013,
+ "205": -0.0015625000000000012,
+ "206": -0.002816406249999998,
+ "207": -0.003134765624999996,
+ "208": -0.0018632812500000014,
+ "209": -0.005369140624999978,
+ "210": -0.001320312500000001,
+ "211": -0.003121093749999993,
+ "212": -0.0019199218750000015,
+ "213": -0.0026855468749999957,
+ "214": -0.0032226562499999938,
+ "215": -0.001488281250000001,
+ "216": -0.0027265624999999955,
+ "217": -0.003271484374999994,
+ "218": -0.003945312499999994,
+ "219": -0.00369531249999999,
+ "220": -0.0011660156250000008,
+ "221": -0.002904296874999995,
+ "222": -0.0024101562499999982,
+ "223": -0.0026953124999999955,
+ "224": -0.0051367187499999824,
+ "225": -0.0010468750000000007,
+ "226": -0.002474609374999998,
+ "227": -0.0017402343750000013,
+ "228": -0.0019746093750000015,
+ "229": -0.0026406249999999967,
+ "230": -0.0020761718750000008,
+ "231": -0.002335937499999998,
+ "232": -0.0017675781250000014,
+ "233": -0.002169921875000001,
+ "234": -0.0018789062500000015,
+ "235": -0.0015644531250000012,
+ "236": -0.002541015624999998,
+ "237": -0.003722656249999992,
+ "238": -0.002724609374999995,
+ "239": -0.0038535156249999945,
+ "240": -0.0012402343750000009,
+ "241": -0.0033886718749999933,
+ "242": -0.0019863281250000015,
+ "243": -0.0038164062499999934,
+ "244": -0.0051074218749999995,
+ "245": -0.0012324218750000009,
+ "246": -0.003427734374999992,
+ "247": -0.003505859374999992,
+ "248": -0.002300781249999999,
+ "249": -0.004937499999999989,
+ "250": -0.003966796874999989,
+ "251": -0.0033242187499999925,
+ "252": -0.003423828124999993,
+ "253": -0.0031933593749999944,
+ "254": -0.0026992187499999968,
+ "255": -0.0030703124999999954,
+ "256": -0.003599609374999992,
+ "257": -0.003035156249999994,
+ "258": -0.0017968750000000014,
+ "259": -0.0025390624999999984,
+ "260": -0.0010136718750000007,
+ "261": -0.0008320312500000006,
+ "262": -0.0025703124999999975,
+ "263": -0.003906249999999988,
+ "264": -0.0017382812500000013,
+ "265": -0.002400390624999998,
+ "266": -0.0010644531250000007,
+ "267": -0.002460937499999999,
+ "268": -0.004751953124999986,
+ "269": -0.003847656249999989,
+ "270": -0.0019316406250000015,
+ "271": -0.0031152343749999926,
+ "272": -0.0022695312499999972,
+ "273": -0.002587890624999996,
+ "274": -0.00206640625,
+ "275": -0.0025429687499999945,
+ "276": -0.0031054687499999906,
+ "277": -0.0027089843749999953,
+ "278": -0.0017460937500000013,
+ "279": -0.0038554687499999882,
+ "280": -0.0037304687499999877,
+ "281": -0.0015117187500000011,
+ "282": -0.0020937499999999997,
+ "283": -0.003542968749999995,
+ "284": -0.004529296874999979,
+ "285": -0.0025664062499999958,
+ "286": -0.004410156249999981,
+ "287": -0.003712890624999988,
+ "288": -0.002775390624999993,
+ "289": -0.003468749999999991,
+ "290": -0.0035683593749999865,
+ "291": -0.0031191406249999926,
+ "292": -0.0011523437500000008,
+ "293": -0.0028066406249999923,
+ "294": -0.0026093749999999945,
+ "295": -0.001253906250000001,
+ "296": -0.0020332031250000007,
+ "297": -0.001357421875000001,
+ "298": -0.0032460937499999907,
+ "299": -0.0019746093750000015,
+ "300": -0.003556640624999985,
+ "301": -0.002169921874999998,
+ "302": -0.002324218749999998,
+ "303": -0.0019042968750000015,
+ "304": -0.001398437500000001,
+ "305": -0.0019531250000000013,
+ "306": -0.002863281249999993,
+ "307": -0.0018730468750000014,
+ "308": -0.001316406250000001,
+ "309": -0.005287109375000002,
+ "310": -0.001470703125000001,
+ "311": -0.0037265624999999864,
+ "312": -0.003742187499999986,
+ "313": -0.003490234374999986,
+ "314": -0.0016855468750000013,
+ "315": -0.0021328125000000006,
+ "316": -0.003189453124999991,
+ "317": -0.0028339843749999923,
+ "318": -0.0028066406249999966,
+ "319": -0.003330078124999992,
+ "320": -0.0019804687500000013,
+ "321": -0.002722656249999998,
+ "322": -0.0037988281249999897,
+ "323": -0.003605468749999991,
+ "324": -0.001476562500000001,
+ "325": -0.0033457031249999954,
+ "326": -0.005445312499999977,
+ "327": -0.001292968750000001,
+ "328": -0.0025214843749999933,
+ "329": -0.004945312499999978,
+ "330": -0.0038281249999999874,
+ "331": -0.0017890625000000014,
+ "332": -0.003919921874999992,
+ "333": -0.0015507812500000012,
+ "334": -0.003373046874999987,
+ "335": -0.00208984375,
+ "336": -0.0011074218750000008,
+ "337": -0.0017304687500000013,
+ "338": -0.0033183593749999867,
+ "339": -0.0029980468749999916,
+ "340": -0.0025566406249999947,
+ "341": -0.00357617187499999,
+ "342": -0.0025546874999999945,
+ "343": -0.0024863281249999955,
+ "344": -0.0009316406250000007,
+ "345": -0.0032753906249999923,
+ "346": -0.0021328124999999993,
+ "347": -0.0037089843749999883,
+ "348": -0.0012304687500000009,
+ "349": -0.0027148437499999937,
+ "350": -0.0036210937499999833,
+ "351": -0.003992187499999979,
+ "352": -0.0030683593749999895,
+ "353": -0.004322265624999984,
+ "354": -0.0030976562499999893,
+ "355": -0.0023613281249999984,
+ "356": -0.0027773437499999955,
+ "357": -0.0036542968749999844,
+ "358": -0.002609374999999996,
+ "359": -0.001449218750000001,
+ "360": -0.001486328125000001,
+ "361": -0.002394531249999998,
+ "362": -0.001429687500000001,
+ "363": -0.0016523437500000013,
+ "364": -0.0015878906250000012,
+ "365": -0.0037910156249999862,
+ "366": -0.0032226562499999877,
+ "367": -0.0027382812499999933,
+ "368": -0.0011015625000000008,
+ "369": -0.0011679687500000008,
+ "370": -0.002847656249999993,
+ "371": -0.0015585937500000012,
+ "372": -0.001380859375000001,
+ "373": -0.002410156249999996,
+ "374": -0.002933593749999991,
+ "375": -0.002710937499999995,
+ "376": -0.003722656249999982,
+ "377": -0.0025683593749999956,
+ "378": -0.0019511718750000015,
+ "379": -0.004134765624999986,
+ "380": -0.0026464843749999935,
+ "381": -0.0025507812499999953,
+ "382": -0.001296875000000001,
+ "383": -0.001384765625000001,
+ "384": -0.004767578124999978,
+ "385": -0.0015957031250000012,
+ "386": -0.0038457031249999815,
+ "387": -0.0032285156249999875,
+ "388": -0.0027382812499999925,
+ "389": -0.0009101562500000007,
+ "390": -0.002818359374999994,
+ "391": -0.0017695312500000014,
+ "392": -0.001330078125000001,
+ "393": -0.0018164062500000014,
+ "394": -0.0017519531250000013,
+ "395": -0.0042773437499999895,
+ "396": -0.0011152343750000008,
+ "397": -0.004138671874999981,
+ "398": -0.0036582031249999887,
+ "399": -0.0030078124999999897,
+ "400": -0.002568359374999996,
+ "401": -0.0016425781250000012,
+ "402": -0.003910156249999985,
+ "403": -0.0016718750000000013,
+ "404": -0.004333984374999984,
+ "405": -0.0023984374999999987,
+ "406": -0.003056640624999991,
+ "407": -0.0038769531249999867,
+ "408": -0.004554687499999977,
+ "409": -0.0028144531249999953,
+ "410": -0.0024199218749999967,
+ "411": -0.002160156250000001,
+ "412": -0.002787109374999996,
+ "413": -0.004648437499999986,
+ "414": -0.0030429687499999927,
+ "415": -0.001326171875000001,
+ "416": -0.003478515624999995,
+ "417": -0.003359374999999994,
+ "418": -0.0032050781249999966,
+ "419": -0.0019667968750000015,
+ "420": -0.0038183593749999954,
+ "421": -0.004597656249999988,
+ "422": -0.00394531249999999,
+ "423": -0.0018652343750000014,
+ "424": -0.003197265624999997,
+ "425": -0.003058593749999998,
+ "426": -0.004419921874999995,
+ "427": -0.0035527343749999986,
+ "428": -0.002365234375,
+ "429": -0.0025703124999999992,
+ "430": -0.001486328125000001,
+ "431": -0.00410156249999999,
+ "432": -0.0052363281249999906,
+ "433": -0.00429687499999999,
+ "434": -0.0035351562499999958,
+ "435": -0.0015625000000000012,
+ "436": -0.002761718749999997,
+ "437": -0.004699218749999992,
+ "438": -0.004095703124999994,
+ "439": -0.0038164062499999917,
+ "440": -0.00558984374999998,
+ "441": -0.0037597656249999875,
+ "442": -0.0016523437500000013,
+ "443": -0.0032167968749999905,
+ "444": -0.002699218749999995,
+ "445": -0.0025292968749999942,
+ "446": -0.0018906250000000015,
+ "447": -0.002640624999999994,
+ "448": -0.003648437499999989,
+ "449": -0.002103515624999998,
+ "450": -0.0011464843750000008,
+ "451": -0.002300781249999995,
+ "452": -0.0015117187500000011,
+ "453": -0.002492187499999994,
+ "454": -0.00412109374999998,
+ "455": -0.003634765624999985,
+ "456": -0.002955078124999991,
+ "457": -0.0039082031249999885,
+ "458": -0.0011386718750000008,
+ "459": -0.002072265625,
+ "460": -0.003513671874999992,
+ "461": -0.001445312500000001,
+ "462": -0.0032988281249999893,
+ "463": -0.0024902343749999955,
+ "464": -0.00338476562499999,
+ "465": -0.0034121093749999885,
+ "466": -0.001376953125000001,
+ "467": -0.004074218749999981,
+ "468": -0.0029042968749999946,
+ "469": -0.00395312499999999,
+ "470": -0.004080078124999985,
+ "471": -0.001263671875000001,
+ "472": -0.001357421875000001,
+ "473": -0.0030878906249999947,
+ "474": -0.001445312500000001,
+ "475": -0.0036835937499999894,
+ "476": -0.003941406249999992,
+ "477": -0.003628906249999993,
+ "478": -0.0015625000000000012,
+ "479": -0.0011015625000000008,
+ "480": -0.003818359374999996,
+ "481": -0.006878906249999997,
+ "482": -0.00391406249999999,
+ "483": -0.0028359374999999947,
+ "484": -0.0016621093750000013,
+ "485": -0.0011425781250000008,
+ "486": -0.003449218749999992,
+ "487": -0.001271484375000001,
+ "488": -0.00517578124999999,
+ "489": -0.0020292968750000007,
+ "490": -0.003746093749999995,
+ "491": -0.0036796874999999955,
+ "492": -0.006103515624999979,
+ "493": -0.0036484374999999933,
+ "494": -0.003103515624999992,
+ "495": -0.002306640624999996,
+ "496": -0.0029648437499999927,
+ "497": -0.002072265624999999,
+ "498": -0.0018066406250000014,
+ "499": -0.0035878906249999882,
+ "500": -0.002898437499999991
+ },
+ "4": {
+ "1": -0.009501953124999997,
+ "2": -0.008464843749999987,
+ "3": -0.007808593749999986,
+ "4": -0.006177734374999982,
+ "5": -0.008736328124999988,
+ "6": -0.006458984374999987,
+ "7": -0.006419921874999991,
+ "8": -0.007271484374999983,
+ "9": -0.004566406249999989,
+ "10": -0.0052578124999999925,
+ "11": -0.005617187499999992,
+ "12": -0.0060878906249999904,
+ "13": -0.006894531249999989,
+ "14": -0.004261718749999993,
+ "15": -0.006291015624999986,
+ "16": -0.0033007812499999917,
+ "17": -0.0038281249999999917,
+ "18": -0.004287109374999994,
+ "19": -0.004804687499999992,
+ "20": -0.004542968749999995,
+ "21": -0.003664062499999994,
+ "22": -0.00749023437499999,
+ "23": -0.005835937499999991,
+ "24": -0.0036269531249999917,
+ "25": -0.0023027343749999992,
+ "26": -0.0049042968749999916,
+ "27": -0.0075644531249999935,
+ "28": -0.0027324218749999957,
+ "29": -0.002652343749999999,
+ "30": -0.00624609374999999,
+ "31": -0.004988281249999994,
+ "32": -0.004792968749999993,
+ "33": -0.0036542968749999935,
+ "34": -0.005888671874999991,
+ "35": -0.005312499999999991,
+ "36": -0.0039003906249999924,
+ "37": -0.002109375,
+ "38": -0.006673828124999987,
+ "39": -0.005359374999999995,
+ "40": -0.006033203124999984,
+ "41": -0.004933593749999989,
+ "42": -0.006859375000000001,
+ "43": -0.00392382812499999,
+ "44": -0.0020468750000000005,
+ "45": -0.0036289062499999937,
+ "46": -0.003755859374999994,
+ "47": -0.0032832031249999953,
+ "48": -0.0024179687499999982,
+ "49": -0.002951171874999993,
+ "50": -0.004044921874999997,
+ "51": -0.005244140624999995,
+ "52": -0.00643749999999999,
+ "53": -0.00494335937499999,
+ "54": -0.004677734374999994,
+ "55": -0.0043847656249999915,
+ "56": -0.006689453124999978,
+ "57": -0.005662109374999986,
+ "58": -0.00203125,
+ "59": -0.005566406249999988,
+ "60": -0.0039785156249999955,
+ "61": -0.0056718749999999825,
+ "62": -0.0030605468749999956,
+ "63": -0.002091796875,
+ "64": -0.005751953124999987,
+ "65": -0.00569140624999999,
+ "66": -0.001443359375000001,
+ "67": -0.0026191406249999978,
+ "68": -0.004361328124999995,
+ "69": -0.00376757812499999,
+ "70": -0.0023613281249999984,
+ "71": -0.005749999999999995,
+ "72": -0.0033671874999999934,
+ "73": -0.0025332031250000003,
+ "74": -0.003810546874999992,
+ "75": -0.0033886718749999946,
+ "76": -0.004861328124999988,
+ "77": -0.004660156249999991,
+ "78": -0.004117187499999992,
+ "79": -0.0025859374999999993,
+ "80": -0.004519531249999994,
+ "81": -0.003964843749999994,
+ "82": -0.004945312499999992,
+ "83": -0.004546874999999995,
+ "84": -0.004203124999999997,
+ "85": -0.0029667968749999976,
+ "86": -0.0023457031249999997,
+ "87": -0.0032207031249999953,
+ "88": -0.0028925781249999976,
+ "89": -0.0021894531249999996,
+ "90": -0.005097656249999994,
+ "91": -0.004984374999999997,
+ "92": -0.0024765624999999983,
+ "93": -0.002427734374999999,
+ "94": -0.003958984374999993,
+ "95": -0.0051249999999999915,
+ "96": -0.001335937500000001,
+ "97": -0.0018300781250000014,
+ "98": -0.004484374999999992,
+ "99": -0.005318359374999995,
+ "100": -0.005697265624999988,
+ "101": -0.003654296874999995,
+ "102": -0.0023593749999999978,
+ "103": -0.004011718749999993,
+ "104": -0.0034999999999999953,
+ "105": -0.004753906249999993,
+ "106": -0.004269531249999992,
+ "107": -0.003603515624999999,
+ "108": -0.004677734374999996,
+ "109": -0.0032499999999999972,
+ "110": -0.0032558593749999957,
+ "111": -0.0044218749999999935,
+ "112": -0.0032480468749999957,
+ "113": -0.003416015625,
+ "114": -0.004445312499999996,
+ "115": -0.005123046874999994,
+ "116": -0.005095703124999988,
+ "117": -0.0033496093749999945,
+ "118": -0.0033046874999999986,
+ "119": -0.0024550781249999985,
+ "120": -0.003080078124999996,
+ "121": -0.004466796874999995,
+ "122": -0.00223828125,
+ "123": -0.004783203124999994,
+ "124": -0.0038808593749999967,
+ "125": -0.005257812499999988,
+ "126": -0.003527343749999999,
+ "127": -0.0033222656249999962,
+ "128": -0.004056640624999999,
+ "129": -0.003951171874999996,
+ "130": -0.003742187499999999,
+ "131": -0.006167968749999996,
+ "132": -0.0044999999999999945,
+ "133": -0.004171874999999996,
+ "134": -0.0023789062499999995,
+ "135": -0.0052343749999999925,
+ "136": -0.002060546875000001,
+ "137": -0.004695312499999992,
+ "138": -0.0028652343749999967,
+ "139": -0.005175781249999997,
+ "140": -0.001986328125000001,
+ "141": -0.002291015625,
+ "142": -0.003087890624999998,
+ "143": -0.0021777343750000013,
+ "144": -0.0022031250000000007,
+ "145": -0.0030605468749999995,
+ "146": -0.002109375,
+ "147": -0.002554687499999999,
+ "148": -0.0036269531249999974,
+ "149": -0.005328124999999993,
+ "150": -0.0033847656249999954,
+ "151": -0.003085937499999999,
+ "152": -0.0020195312500000005,
+ "153": -0.0032187500000000007,
+ "154": -0.0034062499999999996,
+ "155": -0.003837890624999999,
+ "156": -0.004056640624999998,
+ "157": -0.0031249999999999993,
+ "158": -0.003960937500000001,
+ "159": -0.0020449218750000007,
+ "160": -0.0037890625,
+ "161": -0.006576171874999989,
+ "162": -0.004070312499999998,
+ "163": -0.0029140624999999987,
+ "164": -0.004236328124999997,
+ "165": -0.0036562499999999985,
+ "166": -0.001367187500000001,
+ "167": -0.004519531249999999,
+ "168": -0.002615234374999998,
+ "169": -0.0019531250000000013,
+ "170": -0.003068359374999997,
+ "171": -0.00229296875,
+ "172": -0.002378906250000001,
+ "173": -0.0019101562500000015,
+ "174": -0.0017480468750000013,
+ "175": -0.003421874999999997,
+ "176": -0.0018222656250000014,
+ "177": -0.00446875,
+ "178": -0.004996093749999998,
+ "179": -0.0020527343750000007,
+ "180": -0.0024414062500000013,
+ "181": -0.002593749999999998,
+ "182": -0.0025273437499999983,
+ "183": -0.0020781250000000014,
+ "184": -0.0020546875000000014,
+ "185": -0.0016972656250000013,
+ "186": -0.0024707031249999976,
+ "187": -0.0038320312499999926,
+ "188": -0.0018906250000000015,
+ "189": -0.0031054687499999932,
+ "190": -0.0031347656249999974,
+ "191": -0.0043925781249999915,
+ "192": -0.0020468750000000005,
+ "193": -0.002986328124999996,
+ "194": -0.0018496093750000014,
+ "195": -0.003587890624999992,
+ "196": -0.00429101562499999,
+ "197": -0.0024921874999999983,
+ "198": -0.003480468749999996,
+ "199": -0.0036445312499999963,
+ "200": -0.004232421874999991,
+ "201": -0.0045253906249999865,
+ "202": -0.004046874999999986,
+ "203": -0.00432421874999999,
+ "204": -0.002173828125,
+ "205": -0.0036796874999999907,
+ "206": -0.00516406249999998,
+ "207": -0.003937499999999992,
+ "208": -0.0029492187499999957,
+ "209": -0.002505859374999996,
+ "210": -0.003785156249999992,
+ "211": -0.002728515624999998,
+ "212": -0.0024589843749999976,
+ "213": -0.0018613281250000014,
+ "214": -0.002548828124999997,
+ "215": -0.0024804687499999983,
+ "216": -0.004011718749999989,
+ "217": -0.0020019531250000007,
+ "218": -0.002330078124999998,
+ "219": -0.0022851562499999994,
+ "220": -0.0018320312500000014,
+ "221": -0.0038203124999999934,
+ "222": -0.0039316406249999955,
+ "223": -0.002912109374999992,
+ "224": -0.003289062499999997,
+ "225": -0.003992187499999991,
+ "226": -0.0047011718749999905,
+ "227": -0.0021777343749999987,
+ "228": -0.002333984375,
+ "229": -0.002138671874999999,
+ "230": -0.0019453125000000015,
+ "231": -0.0018769531250000015,
+ "232": -0.002572265624999997,
+ "233": -0.002119140625000001,
+ "234": -0.0035859374999999928,
+ "235": -0.0027109374999999976,
+ "236": -0.001962890625000001,
+ "237": -0.0035019531249999955,
+ "238": -0.001441406250000001,
+ "239": -0.00391406249999999,
+ "240": -0.0027499999999999977,
+ "241": -0.002091796874999999,
+ "242": -0.0035468749999999936,
+ "243": -0.0042343749999999855,
+ "244": -0.002505859374999998,
+ "245": -0.0033984374999999896,
+ "246": -0.00351953124999999,
+ "247": -0.005523437499999974,
+ "248": -0.002253906249999997,
+ "249": -0.0018007812500000014,
+ "250": -0.003634765624999989,
+ "251": -0.002902343749999997,
+ "252": -0.003353515624999996,
+ "253": -0.001390625000000001,
+ "254": -0.0026347656249999974,
+ "255": -0.0015800781250000012,
+ "256": -0.003080078124999995,
+ "257": -0.0035683593749999912,
+ "258": -0.0027499999999999972,
+ "259": -0.0024042968749999954,
+ "260": -0.002095703125,
+ "261": -0.002404296874999998,
+ "262": -0.0034003906249999967,
+ "263": -0.0033867187499999935,
+ "264": -0.0033925781249999963,
+ "265": -0.0015488281250000012,
+ "266": -0.002388671874999998,
+ "267": -0.0040273437499999945,
+ "268": -0.002316406249999997,
+ "269": -0.003042968749999999,
+ "270": -0.002058593750000001,
+ "271": -0.004785156249999988,
+ "272": -0.0034902343749999964,
+ "273": -0.0034531249999999953,
+ "274": -0.003455078124999992,
+ "275": -0.0028085937499999973,
+ "276": -0.004460937499999985,
+ "277": -0.003374999999999998,
+ "278": -0.003935546874999994,
+ "279": -0.001976562500000001,
+ "280": -0.0018359375000000014,
+ "281": -0.0017558593750000013,
+ "282": -0.004624999999999986,
+ "283": -0.004718749999999987,
+ "284": -0.002816406249999994,
+ "285": -0.0016777343750000013,
+ "286": -0.0027109374999999968,
+ "287": -0.002087890624999999,
+ "288": -0.0016640625000000013,
+ "289": -0.0022890624999999977,
+ "290": -0.0017539062500000013,
+ "291": -0.002566406249999991,
+ "292": -0.0019531250000000013,
+ "293": -0.0029003906249999924,
+ "294": -0.0015664062500000012,
+ "295": -0.0035175781249999903,
+ "296": -0.0016445312500000012,
+ "297": -0.003310546874999988,
+ "298": -0.004636718749999985,
+ "299": -0.0025781249999999954,
+ "300": -0.0029902343749999907,
+ "301": -0.0017031250000000013,
+ "302": -0.0016191406250000012,
+ "303": -0.0031503906249999926,
+ "304": -0.0018359375000000014,
+ "305": -0.0030761718749999917,
+ "306": -0.003560546874999992,
+ "307": -0.004527343749999984,
+ "308": -0.0018828125000000015,
+ "309": -0.003166015624999992,
+ "310": -0.0011992187500000008,
+ "311": -0.002656249999999996,
+ "312": -0.001357421875000001,
+ "313": -0.0030234374999999923,
+ "314": -0.001312500000000001,
+ "315": -0.0025175781249999955,
+ "316": -0.004275390624999987,
+ "317": -0.003220703124999987,
+ "318": -0.0018476562500000014,
+ "319": -0.0031269531249999948,
+ "320": -0.0023886718749999976,
+ "321": -0.0015781250000000012,
+ "322": -0.002166015624999997,
+ "323": -0.003935546874999984,
+ "324": -0.0030449218749999925,
+ "325": -0.002863281249999995,
+ "326": -0.003460937499999991,
+ "327": -0.0033281249999999917,
+ "328": -0.0019804687500000013,
+ "329": -0.001990234375000001,
+ "330": -0.004027343749999991,
+ "331": -0.001345703125000001,
+ "332": -0.0017070312500000013,
+ "333": -0.0033105468749999945,
+ "334": -0.001453125000000001,
+ "335": -0.0030937499999999993,
+ "336": -0.001466796875000001,
+ "337": -0.0038808593749999967,
+ "338": -0.001474609375000001,
+ "339": -0.004050781249999989,
+ "340": -0.0016171875000000012,
+ "341": -0.0024238281249999985,
+ "342": -0.0036015624999999915,
+ "343": -0.0039023437499999913,
+ "344": -0.0025957031249999973,
+ "345": -0.003599609374999989,
+ "346": -0.0015703125000000012,
+ "347": -0.0025761718749999964,
+ "348": -0.002138671875,
+ "349": -0.004779296874999984,
+ "350": -0.003927734374999993,
+ "351": -0.0030058593749999933,
+ "352": -0.001427734375000001,
+ "353": -0.003859374999999989,
+ "354": -0.003699218749999987,
+ "355": -0.003091796874999994,
+ "356": -0.0029531249999999944,
+ "357": -0.002871093749999995,
+ "358": -0.0026425781249999956,
+ "359": -0.003515624999999992,
+ "360": -0.0022187499999999994,
+ "361": -0.001982421875000001,
+ "362": -0.003583984374999991,
+ "363": -0.0037988281249999875,
+ "364": -0.0026425781249999943,
+ "365": -0.004521484374999987,
+ "366": -0.0046679687499999855,
+ "367": -0.0020507812499999997,
+ "368": -0.0015371093750000011,
+ "369": -0.003802734374999987,
+ "370": -0.0038027343749999862,
+ "371": -0.0036093749999999893,
+ "372": -0.0015292968750000011,
+ "373": -0.003451171874999988,
+ "374": -0.0024472656249999976,
+ "375": -0.0021738281250000004,
+ "376": -0.002205078124999999,
+ "377": -0.002318359374999998,
+ "378": -0.0016152343750000012,
+ "379": -0.0017421875000000013,
+ "380": -0.0036210937499999924,
+ "381": -0.003830078124999995,
+ "382": -0.002554687499999998,
+ "383": -0.0015351562500000011,
+ "384": -0.0032832031249999927,
+ "385": -0.002251953125,
+ "386": -0.003083984374999998,
+ "387": -0.004160156249999995,
+ "388": -0.0018125000000000014,
+ "389": -0.0021992187500000007,
+ "390": -0.003501953124999998,
+ "391": -0.002988281249999996,
+ "392": -0.0023203125000000003,
+ "393": -0.0037949218749999997,
+ "394": -0.003228515624999997,
+ "395": -0.003964843749999995,
+ "396": -0.003181640625,
+ "397": -0.003535156249999994,
+ "398": -0.0040234374999999975,
+ "399": -0.0032226562499999964,
+ "400": -0.001392578125000001,
+ "401": -0.0023886718750000015,
+ "402": -0.003916015624999998,
+ "403": -0.0016601562500000013,
+ "404": -0.001416015625000001,
+ "405": -0.0037167968749999987,
+ "406": -0.004369140625,
+ "407": -0.0033085937499999964,
+ "408": -0.002835937499999994,
+ "409": -0.0017343750000000013,
+ "410": -0.004390624999999993,
+ "411": -0.0020058593750000003,
+ "412": -0.0026093749999999962,
+ "413": -0.0028925781249999976,
+ "414": -0.0035078124999999927,
+ "415": -0.0019980468750000007,
+ "416": -0.0022988281249999997,
+ "417": -0.0020097656250000016,
+ "418": -0.004033203124999984,
+ "419": -0.0033749999999999887,
+ "420": -0.0031523437499999924,
+ "421": -0.0017890625000000014,
+ "422": -0.0019003906250000015,
+ "423": -0.0017187500000000013,
+ "424": -0.0020175781250000007,
+ "425": -0.0034921874999999884,
+ "426": -0.004119140624999989,
+ "427": -0.0016777343750000013,
+ "428": -0.002654296874999995,
+ "429": -0.0011406250000000008,
+ "430": -0.002380859374999997,
+ "431": -0.0035859374999999845,
+ "432": -0.0012031250000000009,
+ "433": -0.001357421875000001,
+ "434": -0.0028574218749999928,
+ "435": -0.002759765624999995,
+ "436": -0.0034687499999999927,
+ "437": -0.0035488281249999856,
+ "438": -0.002068359375,
+ "439": -0.0030585937499999923,
+ "440": -0.002912109374999991,
+ "441": -0.0034335937499999866,
+ "442": -0.0016113281250000012,
+ "443": -0.001976562500000001,
+ "444": -0.0022148437499999994,
+ "445": -0.002236328124999996,
+ "446": -0.0025761718749999956,
+ "447": -0.0034394531249999885,
+ "448": -0.002775390624999995,
+ "449": -0.0034980468749999925,
+ "450": -0.0034863281249999938,
+ "451": -0.001417968750000001,
+ "452": -0.0026230468749999904,
+ "453": -0.0021523437499999993,
+ "454": -0.002986328124999993,
+ "455": -0.004285156249999991,
+ "456": -0.003707031249999991,
+ "457": -0.0036816406249999883,
+ "458": -0.0032246093749999896,
+ "459": -0.0027324218749999983,
+ "460": -0.00304296874999999,
+ "461": -0.0011308593750000008,
+ "462": -0.0036406249999999868,
+ "463": -0.002650390624999994,
+ "464": -0.0029003906249999924,
+ "465": -0.0033222656249999915,
+ "466": -0.0034531249999999896,
+ "467": -0.005353515624999985,
+ "468": -0.0028828124999999935,
+ "469": -0.0011464843750000008,
+ "470": -0.002208984374999999,
+ "471": -0.002730468749999996,
+ "472": -0.0016308593750000012,
+ "473": -0.004748046874999983,
+ "474": -0.0034101562499999883,
+ "475": -0.0028261718749999936,
+ "476": -0.0011171875000000008,
+ "477": -0.003984374999999982,
+ "478": -0.001996093750000001,
+ "479": -0.002830078124999994,
+ "480": -0.004214843749999979,
+ "481": -0.0022167968749999974,
+ "482": -0.0037695312499999886,
+ "483": -0.003052734374999991,
+ "484": -0.0030234374999999905,
+ "485": -0.00432031249999998,
+ "486": -0.0018105468750000014,
+ "487": -0.0035312499999999862,
+ "488": -0.0024062499999999974,
+ "489": -0.003085937499999991,
+ "490": -0.003173828124999988,
+ "491": -0.0034882812499999844,
+ "492": -0.0020175781250000003,
+ "493": -0.002835937499999993,
+ "494": -0.002824218749999992,
+ "495": -0.003048828124999993,
+ "496": -0.002708984374999993,
+ "497": -0.001437500000000001,
+ "498": -0.0033007812499999912,
+ "499": -0.002681640624999993,
+ "500": -0.002480468749999996
+ },
+ "5": {
+ "1": -0.008097656249999986,
+ "2": -0.006941406249999988,
+ "3": -0.007580078124999987,
+ "4": -0.007414062499999989,
+ "5": -0.006617187499999987,
+ "6": -0.005679687499999994,
+ "7": -0.006335937499999989,
+ "8": -0.007294921874999993,
+ "9": -0.005624999999999989,
+ "10": -0.007990234374999981,
+ "11": -0.005759765624999988,
+ "12": -0.006156249999999992,
+ "13": -0.005666015624999991,
+ "14": -0.006373046874999994,
+ "15": -0.007789062499999983,
+ "16": -0.007603515624999993,
+ "17": -0.004785156249999991,
+ "18": -0.00415624999999999,
+ "19": -0.008062499999999985,
+ "20": -0.004123046874999993,
+ "21": -0.004029296874999991,
+ "22": -0.00648046874999999,
+ "23": -0.004888671874999991,
+ "24": -0.005310546874999994,
+ "25": -0.004589843749999985,
+ "26": -0.005728515624999993,
+ "27": -0.0028281249999999977,
+ "28": -0.006728515624999988,
+ "29": -0.003201171874999997,
+ "30": -0.004009765624999995,
+ "31": -0.007337890624999988,
+ "32": -0.0025546874999999966,
+ "33": -0.005167968749999984,
+ "34": -0.005798828124999986,
+ "35": -0.005509765624999987,
+ "36": -0.0028124999999999934,
+ "37": -0.006439453124999982,
+ "38": -0.0055117187499999915,
+ "39": -0.0023417968749999967,
+ "40": -0.004574218749999993,
+ "41": -0.004853515624999999,
+ "42": -0.007675781249999989,
+ "43": -0.0058769531249999955,
+ "44": -0.0018535156250000014,
+ "45": -0.004476562499999995,
+ "46": -0.0029667968749999963,
+ "47": -0.003328124999999993,
+ "48": -0.003076171874999997,
+ "49": -0.003169921874999997,
+ "50": -0.005683593749999989,
+ "51": -0.004453124999999989,
+ "52": -0.002115234375,
+ "53": -0.005457031249999995,
+ "54": -0.004074218749999997,
+ "55": -0.003099609374999997,
+ "56": -0.004667968749999989,
+ "57": -0.004779296874999991,
+ "58": -0.004564453124999989,
+ "59": -0.0031171874999999954,
+ "60": -0.0028203124999999956,
+ "61": -0.0065800781249999865,
+ "62": -0.004173828124999994,
+ "63": -0.004720703124999995,
+ "64": -0.003630859374999993,
+ "65": -0.005351562499999989,
+ "66": -0.0027929687499999986,
+ "67": -0.002107421875,
+ "68": -0.0036132812499999967,
+ "69": -0.0025156249999999975,
+ "70": -0.0018535156250000014,
+ "71": -0.0016503906250000012,
+ "72": -0.0017128906250000013,
+ "73": -0.0019550781250000015,
+ "74": -0.003830078124999996,
+ "75": -0.0023457031249999993,
+ "76": -0.0039550781249999955,
+ "77": -0.003175781249999996,
+ "78": -0.004150390624999998,
+ "79": -0.005109374999999989,
+ "80": -0.005542968749999993,
+ "81": -0.002835937499999998,
+ "82": -0.0031308593749999965,
+ "83": -0.0038652343749999984,
+ "84": -0.004261718749999998,
+ "85": -0.005951171874999995,
+ "86": -0.003914062499999994,
+ "87": -0.0036855468749999987,
+ "88": -0.005332031249999997,
+ "89": -0.0020917968750000016,
+ "90": -0.002908203124999999,
+ "91": -0.00298046875,
+ "92": -0.0019726562500000013,
+ "93": -0.004058593749999999,
+ "94": -0.0044824218749999955,
+ "95": -0.003703124999999998,
+ "96": -0.003931640624999997,
+ "97": -0.004882812499999994,
+ "98": -0.0036953125000000002,
+ "99": -0.0017968750000000014,
+ "100": -0.0019238281250000015,
+ "101": -0.002089843750000001,
+ "102": -0.001277343750000001,
+ "103": -0.003863281249999998,
+ "104": -0.0037285156249999953,
+ "105": -0.0038144531249999984,
+ "106": -0.003119140624999998,
+ "107": -0.003916015624999998,
+ "108": -0.003917968749999995,
+ "109": -0.004253906249999993,
+ "110": -0.004630859374999994,
+ "111": -0.005535156249999992,
+ "112": -0.0037812500000000003,
+ "113": -0.00234375,
+ "114": -0.004499999999999993,
+ "115": -0.006056640624999993,
+ "116": -0.002109375,
+ "117": -0.004179687499999998,
+ "118": -0.004654296874999995,
+ "119": -0.002130859375000001,
+ "120": -0.005630859374999993,
+ "121": -0.005236328124999995,
+ "122": -0.0029843749999999996,
+ "123": -0.004355468749999993,
+ "124": -0.001367187500000001,
+ "125": -0.0027499999999999994,
+ "126": -0.001451171875000001,
+ "127": -0.005734374999999998,
+ "128": -0.0015839843750000012,
+ "129": -0.002783203125000001,
+ "130": -0.0015957031250000012,
+ "131": -0.003242187499999999,
+ "132": -0.004640625000000001,
+ "133": -0.004099609374999999,
+ "134": -0.0020781250000000014,
+ "135": -0.0011484375000000008,
+ "136": -0.003921874999999997,
+ "137": -0.0017773437500000014,
+ "138": -0.002410156249999999,
+ "139": -0.0040703124999999975,
+ "140": -0.002994140624999998,
+ "141": -0.0018105468750000014,
+ "142": -0.0030839843749999965,
+ "143": -0.002755859374999996,
+ "144": -0.0027792968750000005,
+ "145": -0.0038906249999999965,
+ "146": -0.0038046874999999986,
+ "147": -0.002000000000000001,
+ "148": -0.0038339843750000023,
+ "149": -0.003781249999999999,
+ "150": -0.0020000000000000013,
+ "151": -0.0017050781250000013,
+ "152": -0.003101562499999999,
+ "153": -0.0021855468750000017,
+ "154": -0.004212890625000001,
+ "155": -0.002492187500000001,
+ "156": -0.0018281250000000014,
+ "157": -0.0019843750000000013,
+ "158": -0.0036953125000000002,
+ "159": -0.0023847656250000015,
+ "160": -0.0022500000000000007,
+ "161": -0.0029335937499999983,
+ "162": -0.0010859375000000007,
+ "163": -0.003966796875000001,
+ "164": -0.005679687500000001,
+ "165": -0.0031542968750000017,
+ "166": -0.0034687500000000005,
+ "167": -0.0035820312500000006,
+ "168": -0.0025898437500000006,
+ "169": -0.0026113281250000012,
+ "170": -0.005273437500000002,
+ "171": -0.0021679687500000006,
+ "172": -0.003523437500000002,
+ "173": -0.0019921875000000013,
+ "174": -0.00426953125,
+ "175": -0.0025898437499999997,
+ "176": -0.004351562500000001,
+ "177": -0.004435546874999996,
+ "178": -0.004015624999999998,
+ "179": -0.002384765625,
+ "180": -0.0038378906249999997,
+ "181": -0.002625,
+ "182": -0.004474609374999998,
+ "183": -0.0046484375000000015,
+ "184": -0.0029335937500000004,
+ "185": -0.0028046875000000003,
+ "186": -0.0011562500000000008,
+ "187": -0.0017070312500000013,
+ "188": -0.002351562500000001,
+ "189": -0.003437500000000001,
+ "190": -0.004957031249999995,
+ "191": -0.0020468750000000005,
+ "192": -0.004816406249999994,
+ "193": -0.0017890625000000014,
+ "194": -0.0016718750000000013,
+ "195": -0.0033808593749999984,
+ "196": -0.004048828124999999,
+ "197": -0.002146484375000001,
+ "198": -0.002974609374999997,
+ "199": -0.0019394531250000015,
+ "200": -0.0018710937500000014,
+ "201": -0.0023359375000000008,
+ "202": -0.003025390624999999,
+ "203": -0.005156249999999988,
+ "204": -0.0028945312499999995,
+ "205": -0.0019472656250000015,
+ "206": -0.004146484374999995,
+ "207": -0.0021972656250000017,
+ "208": -0.005492187499999995,
+ "209": -0.0041874999999999985,
+ "210": -0.0038437500000000012,
+ "211": -0.002406250000000001,
+ "212": -0.002361328125000002,
+ "213": -0.004466796874999998,
+ "214": -0.0031445312499999967,
+ "215": -0.002476562499999999,
+ "216": -0.005251953124999997,
+ "217": -0.0044375000000000005,
+ "218": -0.003859374999999994,
+ "219": -0.0022226562500000015,
+ "220": -0.0033437499999999986,
+ "221": -0.0018222656250000014,
+ "222": -0.0021093750000000006,
+ "223": -0.004779296874999999,
+ "224": -0.004230468750000001,
+ "225": -0.003921875000000001,
+ "226": -0.0016718750000000013,
+ "227": -0.002474609375,
+ "228": -0.004523437500000001,
+ "229": -0.0041953124999999985,
+ "230": -0.003703124999999999,
+ "231": -0.003865234375000003,
+ "232": -0.004564453124999997,
+ "233": -0.0035,
+ "234": -0.0050312499999999975,
+ "235": -0.0022265625000000015,
+ "236": -0.004902343749999994,
+ "237": -0.0025683593749999995,
+ "238": -0.004062499999999999,
+ "239": -0.0020468750000000014,
+ "240": -0.001386718750000001,
+ "241": -0.004242187500000001,
+ "242": -0.0037070312499999972,
+ "243": -0.005621093749999994,
+ "244": -0.0012343750000000009,
+ "245": -0.002146484375000001,
+ "246": -0.0036464843749999935,
+ "247": -0.004357421874999994,
+ "248": -0.003865234374999991,
+ "249": -0.0023789062499999995,
+ "250": -0.005041015624999995,
+ "251": -0.002390625,
+ "252": -0.004156249999999999,
+ "253": -0.002791015624999999,
+ "254": -0.0037773437500000003,
+ "255": -0.004822265624999999,
+ "256": -0.0035058593749999977,
+ "257": -0.0036152343749999987,
+ "258": -0.0018886718750000015,
+ "259": -0.003460937500000001,
+ "260": -0.004818359374999998,
+ "261": -0.004126953124999999,
+ "262": -0.004023437500000002,
+ "263": -0.00218359375,
+ "264": -0.002390625,
+ "265": -0.0017890625000000014,
+ "266": -0.0037910156250000005,
+ "267": -0.0036582031249999987,
+ "268": -0.0049218750000000035,
+ "269": -0.0043203124999999995,
+ "270": -0.0018828125000000015,
+ "271": -0.001376953125000001,
+ "272": -0.0019472656250000015,
+ "273": -0.0022207031250000013,
+ "274": -0.002935546874999999,
+ "275": -0.004843749999999999,
+ "276": -0.005054687499999999,
+ "277": -0.002445312500000001,
+ "278": -0.004484375000000002,
+ "279": -0.003484375000000001,
+ "280": -0.0019824218750000015,
+ "281": -0.0020312500000000014,
+ "282": -0.0046171875,
+ "283": -0.004277343749999998,
+ "284": -0.003597656249999998,
+ "285": -0.005388671875000002,
+ "286": -0.0023867187500000013,
+ "287": -0.0050156249999999975,
+ "288": -0.0030058593749999977,
+ "289": -0.0024765625000000018,
+ "290": -0.0018867187500000015,
+ "291": -0.0015312500000000011,
+ "292": -0.001363281250000001,
+ "293": -0.0034277343750000002,
+ "294": -0.0017343750000000013,
+ "295": -0.0061074218750000004,
+ "296": -0.001316406250000001,
+ "297": -0.002882812500000002,
+ "298": -0.003492187500000001,
+ "299": -0.0024003906250000006,
+ "300": -0.0017109375000000013,
+ "301": -0.003576171874999999,
+ "302": -0.0016484375000000012,
+ "303": -0.002640625000000002,
+ "304": -0.0034101562500000017,
+ "305": -0.003999999999999999,
+ "306": -0.005570312499999998,
+ "307": -0.0019296875000000015,
+ "308": -0.004265625000000001,
+ "309": -0.0021386718750000017,
+ "310": -0.0023515625000000017,
+ "311": -0.0018593750000000014,
+ "312": -0.0036171875,
+ "313": -0.0016992187500000013,
+ "314": -0.0034140625000000017,
+ "315": -0.004843750000000002,
+ "316": -0.004984375000000001,
+ "317": -0.0041875,
+ "318": -0.004671875000000001,
+ "319": -0.002828125000000001,
+ "320": -0.0018750000000000014,
+ "321": -0.0022812500000000016,
+ "322": -0.0034140625,
+ "323": -0.0023203125000000016,
+ "324": -0.0018164062500000014,
+ "325": -0.0047343750000000025,
+ "326": -0.002601562500000001,
+ "327": -0.0037890624999999986,
+ "328": -0.006046875000000001,
+ "329": -0.0017734375000000014,
+ "330": -0.004171875000000002,
+ "331": -0.003773437500000003,
+ "332": -0.0024453125000000017,
+ "333": -0.005648437500000001,
+ "334": -0.005679687500000001,
+ "335": -0.0031718750000000015,
+ "336": -0.0037656250000000003,
+ "337": -0.004750000000000002,
+ "338": -0.004000000000000002,
+ "339": -0.0018125000000000014,
+ "340": -0.0011562500000000008,
+ "341": -0.004740234374999999,
+ "342": -0.0036015625,
+ "343": -0.005015625000000001,
+ "344": -0.0032500000000000007,
+ "345": -0.002531250000000002,
+ "346": -0.002867187500000002,
+ "347": -0.004119140625000002,
+ "348": -0.004968750000000003,
+ "349": -0.0023515625000000017,
+ "350": -0.0033828125000000017,
+ "351": -0.0023281250000000016,
+ "352": -0.003671875000000002,
+ "353": -0.002835937500000002,
+ "354": -0.004671875000000002,
+ "355": -0.001398437500000001,
+ "356": -0.005382812500000003,
+ "357": -0.004515625000000001,
+ "358": -0.003421875,
+ "359": -0.004031250000000003,
+ "360": -0.002507812500000002,
+ "361": -0.003921874999999999,
+ "362": -0.002726562500000001,
+ "363": -0.003929687500000003,
+ "364": -0.0032265625000000016,
+ "365": -0.004304687500000001,
+ "366": -0.0034375000000000018,
+ "367": -0.0015468750000000012,
+ "368": -0.0019765625000000013,
+ "369": -0.003375,
+ "370": -0.003976562500000001,
+ "371": -0.0017402343750000013,
+ "372": -0.0033671875000000017,
+ "373": -0.003656250000000001,
+ "374": -0.004109375,
+ "375": -0.004085937500000002,
+ "376": -0.004859375,
+ "377": -0.0023437500000000008,
+ "378": -0.00409375,
+ "379": -0.004046875000000001,
+ "380": -0.0020781250000000014,
+ "381": -0.003124999999999998,
+ "382": -0.0024062500000000017,
+ "383": -0.0042031249999999985,
+ "384": -0.004800781250000001,
+ "385": -0.001476562500000001,
+ "386": -0.0023437500000000016,
+ "387": -0.003851562500000002,
+ "388": -0.003580078124999999,
+ "389": -0.0034609375000000018,
+ "390": -0.0021171875000000014,
+ "391": -0.004062500000000003,
+ "392": -0.0032187500000000024,
+ "393": -0.0029531250000000013,
+ "394": -0.003773437500000003,
+ "395": -0.003603515625000001,
+ "396": -0.005359375000000003,
+ "397": -0.0037460937500000003,
+ "398": -0.005406250000000001,
+ "399": -0.0038124999999999995,
+ "400": -0.0016757812500000013,
+ "401": -0.003134765625000001,
+ "402": -0.0016738281250000013,
+ "403": -0.002357421875,
+ "404": -0.005218750000000001,
+ "405": -0.005580078125000003,
+ "406": -0.0048203125,
+ "407": -0.0029843750000000005,
+ "408": -0.003718750000000001,
+ "409": -0.003169921875,
+ "410": -0.002390625000000001,
+ "411": -0.002585937500000002,
+ "412": -0.004337890625000001,
+ "413": -0.002500000000000002,
+ "414": -0.0035390625000000027,
+ "415": -0.003492187500000002,
+ "416": -0.005132812500000002,
+ "417": -0.0048906250000000035,
+ "418": -0.003867187500000002,
+ "419": -0.004218750000000002,
+ "420": -0.0033359375000000025,
+ "421": -0.005486328125000002,
+ "422": -0.0033046875000000016,
+ "423": -0.0020390625000000014,
+ "424": -0.0015781250000000012,
+ "425": -0.0033828125000000017,
+ "426": -0.0019316406250000015,
+ "427": -0.002968750000000002,
+ "428": -0.004373046875000001,
+ "429": -0.002828125000000002,
+ "430": -0.003976562500000003,
+ "431": -0.004117187500000002,
+ "432": -0.004519531250000003,
+ "433": -0.0030468750000000023,
+ "434": -0.0025507812500000014,
+ "435": -0.0020078125000000013,
+ "436": -0.004171875000000002,
+ "437": -0.0018125000000000014,
+ "438": -0.002710937500000002,
+ "439": -0.0026093750000000006,
+ "440": -0.0029296875000000013,
+ "441": -0.002632812500000002,
+ "442": -0.0047421875000000025,
+ "443": -0.0019062500000000015,
+ "444": -0.0023984375000000017,
+ "445": -0.005125000000000004,
+ "446": -0.0035546875,
+ "447": -0.005828125000000002,
+ "448": -0.002269531250000001,
+ "449": -0.003742187500000003,
+ "450": -0.0024062500000000017,
+ "451": -0.0018515625000000014,
+ "452": -0.002052734375000001,
+ "453": -0.002554687500000001,
+ "454": -0.003968750000000003,
+ "455": -0.0019921875000000013,
+ "456": -0.0018125000000000014,
+ "457": -0.0022578125000000007,
+ "458": -0.0019453125000000015,
+ "459": -0.002734375000000002,
+ "460": -0.0023671875000000017,
+ "461": -0.0046503906250000004,
+ "462": -0.003968750000000002,
+ "463": -0.0023437500000000016,
+ "464": -0.004062499999999999,
+ "465": -0.004171875000000001,
+ "466": -0.0038046874999999995,
+ "467": -0.001312500000000001,
+ "468": -0.004898437500000001,
+ "469": -0.005023437500000002,
+ "470": -0.0011328125000000008,
+ "471": -0.004218749999999999,
+ "472": -0.004499999999999999,
+ "473": -0.003773437500000002,
+ "474": -0.0036035156250000017,
+ "475": -0.0037480468749999996,
+ "476": -0.004798828124999996,
+ "477": -0.0025273437500000005,
+ "478": -0.0026074218749999995,
+ "479": -0.003765625000000003,
+ "480": -0.0026386718749999995,
+ "481": -0.0022578125000000007,
+ "482": -0.0028671875000000012,
+ "483": -0.004128906249999998,
+ "484": -0.002873046875,
+ "485": -0.003857421875000001,
+ "486": -0.0020976562500000014,
+ "487": -0.003929687499999999,
+ "488": -0.002355468750000001,
+ "489": -0.0043085937499999965,
+ "490": -0.003179687499999998,
+ "491": -0.004771484374999996,
+ "492": -0.002158203125000001,
+ "493": -0.003105468749999997,
+ "494": -0.005824218749999994,
+ "495": -0.0027675781249999988,
+ "496": -0.006097656249999995,
+ "497": -0.005195312499999993,
+ "498": -0.0034687499999999953,
+ "499": -0.003021484374999999,
+ "500": -0.0027011718749999983
+ },
+ "6": {
+ "1": -0.005828124999999989,
+ "2": -0.006929687499999993,
+ "3": -0.009527343749999988,
+ "4": -0.005824218749999987,
+ "5": -0.004150390624999997,
+ "6": -0.008062499999999986,
+ "7": -0.007042968749999989,
+ "8": -0.00715624999999999,
+ "9": -0.00700976562499999,
+ "10": -0.007666015624999991,
+ "11": -0.007484374999999992,
+ "12": -0.0042167968749999875,
+ "13": -0.004488281249999993,
+ "14": -0.003242187499999994,
+ "15": -0.006123046874999985,
+ "16": -0.006248046874999987,
+ "17": -0.005867187499999985,
+ "18": -0.005382812499999991,
+ "19": -0.004234374999999987,
+ "20": -0.0032675781249999953,
+ "21": -0.002781249999999999,
+ "22": -0.006251953124999985,
+ "23": -0.005789062499999986,
+ "24": -0.0034707031249999946,
+ "25": -0.004515624999999994,
+ "26": -0.0031601562499999963,
+ "27": -0.006257812499999994,
+ "28": -0.005328124999999989,
+ "29": -0.0027011718749999926,
+ "30": -0.004369140624999992,
+ "31": -0.0034121093749999954,
+ "32": -0.005494140624999989,
+ "33": -0.0027499999999999985,
+ "34": -0.0038925781249999954,
+ "35": -0.003332031249999993,
+ "36": -0.005521484374999986,
+ "37": -0.005677734374999994,
+ "38": -0.005773437499999996,
+ "39": -0.004177734374999994,
+ "40": -0.002818359374999997,
+ "41": -0.0036582031249999905,
+ "42": -0.0028124999999999925,
+ "43": -0.0038847656249999924,
+ "44": -0.002201171875,
+ "45": -0.00407812499999999,
+ "46": -0.0035019531249999977,
+ "47": -0.006884765624999995,
+ "48": -0.007224609374999977,
+ "49": -0.003730468749999993,
+ "50": -0.00476757812499999,
+ "51": -0.0024902343749999985,
+ "52": -0.0028593749999999973,
+ "53": -0.003699218749999992,
+ "54": -0.0021777343750000004,
+ "55": -0.005009765624999993,
+ "56": -0.0034609374999999927,
+ "57": -0.003310546874999993,
+ "58": -0.0020898437500000006,
+ "59": -0.002662109374999998,
+ "60": -0.0029335937499999957,
+ "61": -0.004556640624999996,
+ "62": -0.004285156249999994,
+ "63": -0.0031601562499999946,
+ "64": -0.0033476562499999943,
+ "65": -0.002220703124999999,
+ "66": -0.0048671874999999904,
+ "67": -0.0041542968749999935,
+ "68": -0.004591796874999987,
+ "69": -0.005201171874999988,
+ "70": -0.006519531249999982,
+ "71": -0.003822265624999994,
+ "72": -0.0017011718750000013,
+ "73": -0.004972656249999986,
+ "74": -0.0026855468749999965,
+ "75": -0.0041171874999999915,
+ "76": -0.005330078124999981,
+ "77": -0.005369140624999994,
+ "78": -0.0024667968749999976,
+ "79": -0.0030175781249999942,
+ "80": -0.0042031249999999855,
+ "81": -0.004126953124999992,
+ "82": -0.005294921874999986,
+ "83": -0.003158203124999994,
+ "84": -0.0030976562499999967,
+ "85": -0.00453710937499999,
+ "86": -0.005011718749999989,
+ "87": -0.004177734374999991,
+ "88": -0.0035429687499999927,
+ "89": -0.005091796874999993,
+ "90": -0.004044921874999992,
+ "91": -0.004632812499999988,
+ "92": -0.0034687499999999953,
+ "93": -0.005529296874999984,
+ "94": -0.004056640624999994,
+ "95": -0.005441406249999984,
+ "96": -0.006124999999999979,
+ "97": -0.004246093749999991,
+ "98": -0.004316406249999996,
+ "99": -0.004810546874999992,
+ "100": -0.004130859374999987,
+ "101": -0.003916015624999993,
+ "102": -0.002429687499999998,
+ "103": -0.0022968749999999994,
+ "104": -0.003386718749999996,
+ "105": -0.005050781249999992,
+ "106": -0.004203124999999994,
+ "107": -0.002589843749999998,
+ "108": -0.00438867187499999,
+ "109": -0.004619140624999985,
+ "110": -0.004691406249999985,
+ "111": -0.002177734375,
+ "112": -0.004464843749999996,
+ "113": -0.00202734375,
+ "114": -0.0035039062499999944,
+ "115": -0.002408203124999996,
+ "116": -0.0017304687500000013,
+ "117": -0.003664062499999994,
+ "118": -0.0016093750000000012,
+ "119": -0.002017578125000001,
+ "120": -0.003392578124999994,
+ "121": -0.00608007812499998,
+ "122": -0.003863281249999991,
+ "123": -0.0024648437499999957,
+ "124": -0.002078125,
+ "125": -0.0037031249999999937,
+ "126": -0.0027363281249999966,
+ "127": -0.003048828124999996,
+ "128": -0.004621093749999984,
+ "129": -0.003210937499999997,
+ "130": -0.004539062499999989,
+ "131": -0.0020800781250000003,
+ "132": -0.0036660156249999935,
+ "133": -0.0015429687500000012,
+ "134": -0.0019570312500000013,
+ "135": -0.00352734374999999,
+ "136": -0.0046367187499999855,
+ "137": -0.0026855468749999965,
+ "138": -0.00426562499999999,
+ "139": -0.001474609375000001,
+ "140": -0.003617187499999993,
+ "141": -0.0016699218750000013,
+ "142": -0.0018828125000000015,
+ "143": -0.002503906249999997,
+ "144": -0.00458789062499998,
+ "145": -0.004097656249999983,
+ "146": -0.0017753906250000014,
+ "147": -0.004513671874999982,
+ "148": -0.0020996093750000003,
+ "149": -0.0029003906249999933,
+ "150": -0.004605468749999988,
+ "151": -0.002496093749999996,
+ "152": -0.002115234374999999,
+ "153": -0.004304687499999992,
+ "154": -0.0024042968749999976,
+ "155": -0.0024414062499999944,
+ "156": -0.0017949218750000014,
+ "157": -0.0027949218749999992,
+ "158": -0.003052734374999993,
+ "159": -0.002464843749999994,
+ "160": -0.0021933593749999965,
+ "161": -0.002738281249999995,
+ "162": -0.002365234374999998,
+ "163": -0.0021640625000000006,
+ "164": -0.0039042968749999863,
+ "165": -0.002675781249999997,
+ "166": -0.003585937499999994,
+ "167": -0.0018144531250000014,
+ "168": -0.0041562499999999915,
+ "169": -0.0023261718749999997,
+ "170": -0.0021269531249999995,
+ "171": -0.005884765624999977,
+ "172": -0.005255859374999982,
+ "173": -0.0034140624999999952,
+ "174": -0.0036191406249999917,
+ "175": -0.0033007812499999964,
+ "176": -0.004019531249999989,
+ "177": -0.004384765624999988,
+ "178": -0.00348828124999999,
+ "179": -0.002458984374999999,
+ "180": -0.001359375000000001,
+ "181": -0.0029199218749999954,
+ "182": -0.003917968749999994,
+ "183": -0.002119140625,
+ "184": -0.0038710937499999887,
+ "185": -0.003898437499999989,
+ "186": -0.0025781249999999945,
+ "187": -0.0015917968750000012,
+ "188": -0.0011582031250000008,
+ "189": -0.0034374999999999905,
+ "190": -0.0031328124999999906,
+ "191": -0.004505859374999988,
+ "192": -0.0037617187499999886,
+ "193": -0.0015078125000000011,
+ "194": -0.003964843749999989,
+ "195": -0.003138671874999992,
+ "196": -0.004005859374999998,
+ "197": -0.0030976562499999967,
+ "198": -0.001449218750000001,
+ "199": -0.003832031249999984,
+ "200": -0.002361328124999994,
+ "201": -0.0015722656250000012,
+ "202": -0.003738281249999988,
+ "203": -0.002580078124999996,
+ "204": -0.002314453125,
+ "205": -0.0022812499999999986,
+ "206": -0.0020488281249999994,
+ "207": -0.004183593749999985,
+ "208": -0.0032792968749999906,
+ "209": -0.0017871093750000014,
+ "210": -0.0039453124999999905,
+ "211": -0.003011718749999991,
+ "212": -0.003408203124999989,
+ "213": -0.003347656249999992,
+ "214": -0.0015683593750000012,
+ "215": -0.0023769531249999945,
+ "216": -0.004701171874999986,
+ "217": -0.0041503906249999835,
+ "218": -0.0043320312499999895,
+ "219": -0.0011835937500000008,
+ "220": -0.004208984374999989,
+ "221": -0.0019355468750000015,
+ "222": -0.004396484374999989,
+ "223": -0.0025019531249999972,
+ "224": -0.0029824218749999938,
+ "225": -0.0016640625000000013,
+ "226": -0.004126953124999991,
+ "227": -0.002332031249999998,
+ "228": -0.0015878906250000012,
+ "229": -0.002824218749999995,
+ "230": -0.0021210937499999997,
+ "231": -0.0032031249999999955,
+ "232": -0.0036874999999999933,
+ "233": -0.0039121093749999915,
+ "234": -0.0016210937500000012,
+ "235": -0.0031289062499999967,
+ "236": -0.0022558593749999966,
+ "237": -0.0018769531250000015,
+ "238": -0.0022988281249999992,
+ "239": -0.003916015624999997,
+ "240": -0.001441406250000001,
+ "241": -0.0019765625000000013,
+ "242": -0.0034902343749999955,
+ "243": -0.004201171874999999,
+ "244": -0.0022910156249999957,
+ "245": -0.0020136718750000003,
+ "246": -0.006404296874999989,
+ "247": -0.0019453125000000015,
+ "248": -0.003718749999999992,
+ "249": -0.003447265624999995,
+ "250": -0.003455078124999998,
+ "251": -0.0026796874999999967,
+ "252": -0.0030546874999999958,
+ "253": -0.0026347656249999987,
+ "254": -0.0016269531250000012,
+ "255": -0.004291015624999995,
+ "256": -0.003306640624999998,
+ "257": -0.002320312499999999,
+ "258": -0.004316406249999996,
+ "259": -0.0017226562500000013,
+ "260": -0.0017988281250000014,
+ "261": -0.003636718749999996,
+ "262": -0.0019687500000000013,
+ "263": -0.002697265624999997,
+ "264": -0.002019531250000001,
+ "265": -0.004556640624999987,
+ "266": -0.002935546874999994,
+ "267": -0.002505859374999999,
+ "268": -0.002833984374999995,
+ "269": -0.0034687499999999944,
+ "270": -0.002804687499999997,
+ "271": -0.004316406249999985,
+ "272": -0.002285156249999999,
+ "273": -0.0036191406249999887,
+ "274": -0.001410156250000001,
+ "275": -0.0017500000000000013,
+ "276": -0.0016093750000000012,
+ "277": -0.0025937499999999984,
+ "278": -0.002724609374999999,
+ "279": -0.00397265624999999,
+ "280": -0.003263671874999991,
+ "281": -0.004177734374999996,
+ "282": -0.004193359374999989,
+ "283": -0.0015917968750000012,
+ "284": -0.00341992187499999,
+ "285": -0.002777343749999996,
+ "286": -0.0034667968749999938,
+ "287": -0.003578124999999995,
+ "288": -0.0015117187500000011,
+ "289": -0.0027343749999999972,
+ "290": -0.004279296874999997,
+ "291": -0.003789062499999993,
+ "292": -0.0020761718749999995,
+ "293": -0.0016933593750000013,
+ "294": -0.003173828124999998,
+ "295": -0.002308593749999998,
+ "296": -0.0030957031249999965,
+ "297": -0.004083984374999992,
+ "298": -0.002292968749999999,
+ "299": -0.001402343750000001,
+ "300": -0.0017285156250000013,
+ "301": -0.0018378906250000014,
+ "302": -0.0023046874999999994,
+ "303": -0.0018261718750000014,
+ "304": -0.0016855468750000013,
+ "305": -0.0020000000000000005,
+ "306": -0.0032265624999999933,
+ "307": -0.004300781249999987,
+ "308": -0.0034609374999999935,
+ "309": -0.003673828124999994,
+ "310": -0.0022207031249999987,
+ "311": -0.004623046874999994,
+ "312": -0.003554687499999995,
+ "313": -0.0019941406250000016,
+ "314": -0.0044003906249999915,
+ "315": -0.004132812499999995,
+ "316": -0.003015624999999998,
+ "317": -0.003251953124999996,
+ "318": -0.003539062499999992,
+ "319": -0.003367187499999994,
+ "320": -0.0031230468749999965,
+ "321": -0.0030820312499999945,
+ "322": -0.0039003906249999915,
+ "323": -0.0030507812499999936,
+ "324": -0.0035898437499999863,
+ "325": -0.00408398437499999,
+ "326": -0.0034023437499999913,
+ "327": -0.0037773437499999877,
+ "328": -0.0033359374999999926,
+ "329": -0.005058593749999982,
+ "330": -0.0021874999999999976,
+ "331": -0.0017304687500000013,
+ "332": -0.002330078124999997,
+ "333": -0.003908203124999991,
+ "334": -0.002796874999999993,
+ "335": -0.0033613281249999893,
+ "336": -0.005326171874999981,
+ "337": -0.002396484374999995,
+ "338": -0.003492187499999993,
+ "339": -0.003378906249999994,
+ "340": -0.0035917968749999934,
+ "341": -0.0033183593749999962,
+ "342": -0.00403515624999999,
+ "343": -0.0018046875000000014,
+ "344": -0.005078124999999991,
+ "345": -0.004990234374999987,
+ "346": -0.0026796874999999967,
+ "347": -0.0020644531250000007,
+ "348": -0.0029082031249999985,
+ "349": -0.001308593750000001,
+ "350": -0.003369140624999993,
+ "351": -0.0019257812500000015,
+ "352": -0.0032910156249999966,
+ "353": -0.00483789062499999,
+ "354": -0.003685546874999993,
+ "355": -0.0028320312499999986,
+ "356": -0.002527343749999997,
+ "357": -0.0035058593749999955,
+ "358": -0.004462890624999995,
+ "359": -0.0028574218749999962,
+ "360": -0.0028906249999999948,
+ "361": -0.0034628906249999946,
+ "362": -0.0018750000000000014,
+ "363": -0.00434570312499999,
+ "364": -0.003029296874999996,
+ "365": -0.003677734374999994,
+ "366": -0.005134765624999993,
+ "367": -0.00299609375,
+ "368": -0.005115234374999989,
+ "369": -0.0047089843749999905,
+ "370": -0.0019355468750000015,
+ "371": -0.0026328124999999963,
+ "372": -0.004117187499999995,
+ "373": -0.0018027343750000014,
+ "374": -0.001460937500000001,
+ "375": -0.0038281249999999934,
+ "376": -0.0029082031249999998,
+ "377": -0.0017500000000000013,
+ "378": -0.0020664062500000014,
+ "379": -0.0038046874999999986,
+ "380": -0.004412109374999995,
+ "381": -0.0037792968749999975,
+ "382": -0.001347656250000001,
+ "383": -0.0024667968749999968,
+ "384": -0.005929687499999991,
+ "385": -0.005144531249999993,
+ "386": -0.003753906249999995,
+ "387": -0.0017753906250000014,
+ "388": -0.001455078125000001,
+ "389": -0.004017578124999997,
+ "390": -0.0033691406249999993,
+ "391": -0.0031874999999999976,
+ "392": -0.0035546874999999993,
+ "393": -0.002025390625000001,
+ "394": -0.0043867187499999965,
+ "395": -0.0017851562500000014,
+ "396": -0.0038476562499999995,
+ "397": -0.002400390624999999,
+ "398": -0.00253125,
+ "399": -0.0026699218750000004,
+ "400": -0.002882812500000001,
+ "401": -0.003912109374999998,
+ "402": -0.003976562500000002,
+ "403": -0.00358203125,
+ "404": -0.0017285156250000013,
+ "405": -0.004453124999999997,
+ "406": -0.0033671874999999965,
+ "407": -0.003570312499999999,
+ "408": -0.0022226562499999985,
+ "409": -0.0017070312500000013,
+ "410": -0.0022246093750000018,
+ "411": -0.003587890624999999,
+ "412": -0.004656249999999993,
+ "413": -0.004964843749999992,
+ "414": -0.004107421874999996,
+ "415": -0.0038515624999999895,
+ "416": -0.001445312500000001,
+ "417": -0.0032578124999999903,
+ "418": -0.0018691406250000014,
+ "419": -0.0034570312499999914,
+ "420": -0.0024687499999999935,
+ "421": -0.002703124999999996,
+ "422": -0.0019570312500000013,
+ "423": -0.001437500000000001,
+ "424": -0.0011191406250000008,
+ "425": -0.0011894531250000008,
+ "426": -0.003718749999999988,
+ "427": -0.004212890624999982,
+ "428": -0.0011835937500000008,
+ "429": -0.0012441406250000009,
+ "430": -0.0016367187500000012,
+ "431": -0.0031621093749999944,
+ "432": -0.0033847656249999932,
+ "433": -0.002335937499999999,
+ "434": -0.0011621093750000008,
+ "435": -0.0027734374999999942,
+ "436": -0.0018632812500000014,
+ "437": -0.0015078125000000011,
+ "438": -0.004630859374999992,
+ "439": -0.002910156249999995,
+ "440": -0.0038046874999999964,
+ "441": -0.0029687499999999957,
+ "442": -0.0037460937499999873,
+ "443": -0.0035527343749999925,
+ "444": -0.0040117187499999875,
+ "445": -0.0018710937500000014,
+ "446": -0.004085937499999991,
+ "447": -0.002197265624999998,
+ "448": -0.0018652343750000014,
+ "449": -0.004800781249999988,
+ "450": -0.0037460937499999877,
+ "451": -0.0022031250000000007,
+ "452": -0.004980468749999988,
+ "453": -0.0031132812499999954,
+ "454": -0.001382812500000001,
+ "455": -0.0037050781249999905,
+ "456": -0.004123046874999989,
+ "457": -0.0037968749999999843,
+ "458": -0.0029765624999999927,
+ "459": -0.002851562499999996,
+ "460": -0.0016542968750000013,
+ "461": -0.002351562499999998,
+ "462": -0.0018574218750000014,
+ "463": -0.003679687499999987,
+ "464": -0.0015253906250000011,
+ "465": -0.0022050781249999987,
+ "466": -0.003228515624999991,
+ "467": -0.0023671874999999973,
+ "468": -0.0021621093749999974,
+ "469": -0.0018496093750000014,
+ "470": -0.003964843749999989,
+ "471": -0.0038164062499999886,
+ "472": -0.003624999999999996,
+ "473": -0.003863281249999987,
+ "474": -0.001412109375000001,
+ "475": -0.003261718749999993,
+ "476": -0.0032363281249999922,
+ "477": -0.0030468749999999953,
+ "478": -0.001480468750000001,
+ "479": -0.002267578124999997,
+ "480": -0.0022675781249999996,
+ "481": -0.004888671874999988,
+ "482": -0.002308593749999998,
+ "483": -0.0017871093750000014,
+ "484": -0.0016894531250000013,
+ "485": -0.0037773437499999916,
+ "486": -0.0020957031249999986,
+ "487": -0.004287109374999989,
+ "488": -0.0036445312499999907,
+ "489": -0.001347656250000001,
+ "490": -0.001339843750000001,
+ "491": -0.003593749999999991,
+ "492": -0.0030449218749999916,
+ "493": -0.00402734374999998,
+ "494": -0.0032343749999999894,
+ "495": -0.0015332031250000011,
+ "496": -0.0018320312500000014,
+ "497": -0.002703124999999993,
+ "498": -0.0024062499999999917,
+ "499": -0.00473828124999998,
+ "500": -0.003218749999999988
+ },
+ "7": {
+ "1": -0.007224609374999987,
+ "2": -0.008511718749999982,
+ "3": -0.008738281249999987,
+ "4": -0.005570312499999992,
+ "5": -0.006449218749999994,
+ "6": -0.006804687499999988,
+ "7": -0.006124999999999992,
+ "8": -0.0067246093749999914,
+ "9": -0.006703124999999993,
+ "10": -0.0059218749999999975,
+ "11": -0.005707031249999998,
+ "12": -0.008539062499999988,
+ "13": -0.0037304687499999955,
+ "14": -0.004714843749999985,
+ "15": -0.004830078124999993,
+ "16": -0.006320312499999992,
+ "17": -0.004449218749999997,
+ "18": -0.0071894531249999906,
+ "19": -0.006337890624999988,
+ "20": -0.005160156249999989,
+ "21": -0.004179687499999998,
+ "22": -0.003705078124999994,
+ "23": -0.00503320312499999,
+ "24": -0.005007812499999989,
+ "25": -0.006177734374999993,
+ "26": -0.003333984374999995,
+ "27": -0.004687499999999992,
+ "28": -0.002880859374999998,
+ "29": -0.004103515624999989,
+ "30": -0.004773437499999996,
+ "31": -0.0036210937499999954,
+ "32": -0.004771484374999993,
+ "33": -0.004361328124999997,
+ "34": -0.004874999999999994,
+ "35": -0.005707031249999995,
+ "36": -0.0027128906249999957,
+ "37": -0.003607421874999998,
+ "38": -0.004482421874999988,
+ "39": -0.004302734374999993,
+ "40": -0.0019960937500000013,
+ "41": -0.004814453124999992,
+ "42": -0.004210937499999992,
+ "43": -0.004416015624999993,
+ "44": -0.004210937499999988,
+ "45": -0.004369140624999987,
+ "46": -0.00380468749999999,
+ "47": -0.0020703125000000005,
+ "48": -0.002525390624999999,
+ "49": -0.002410156249999999,
+ "50": -0.003876953124999995,
+ "51": -0.005115234374999995,
+ "52": -0.0035605468749999947,
+ "53": -0.0030585937499999958,
+ "54": -0.0028671875,
+ "55": -0.0017910156250000014,
+ "56": -0.002001953125000001,
+ "57": -0.004212890624999996,
+ "58": -0.002689453124999992,
+ "59": -0.004908203124999991,
+ "60": -0.004892578124999994,
+ "61": -0.0019687500000000013,
+ "62": -0.002480468749999999,
+ "63": -0.002738281249999997,
+ "64": -0.005830078124999994,
+ "65": -0.0031406249999999967,
+ "66": -0.004710937499999995,
+ "67": -0.003955078124999996,
+ "68": -0.003214843749999997,
+ "69": -0.004060546874999996,
+ "70": -0.0033437500000000004,
+ "71": -0.0026562500000000015,
+ "72": -0.001296875000000001,
+ "73": -0.004757812499999997,
+ "74": -0.005210937499999994,
+ "75": -0.002550781249999998,
+ "76": -0.0050898437499999885,
+ "77": -0.0017050781250000013,
+ "78": -0.004968749999999997,
+ "79": -0.005111328124999997,
+ "80": -0.005005859374999991,
+ "81": -0.0018261718750000014,
+ "82": -0.0019707031250000015,
+ "83": -0.0031855468749999987,
+ "84": -0.0027773437499999994,
+ "85": -0.003124999999999997,
+ "86": -0.0024550781250000002,
+ "87": -0.004169921874999997,
+ "88": -0.006570312499999994,
+ "89": -0.004013671874999997,
+ "90": -0.001283203125000001,
+ "91": -0.004791015624999996,
+ "92": -0.002621093749999998,
+ "93": -0.0032519531249999975,
+ "94": -0.005933593749999983,
+ "95": -0.004021484374999993,
+ "96": -0.0040371093749999925,
+ "97": -0.003935546874999994,
+ "98": -0.005041015624999993,
+ "99": -0.004128906249999992,
+ "100": -0.005031249999999992,
+ "101": -0.0018945312500000015,
+ "102": -0.004095703124999996,
+ "103": -0.00220703125,
+ "104": -0.0024941406249999994,
+ "105": -0.0038417968749999967,
+ "106": -0.004896484374999989,
+ "107": -0.0021992187500000007,
+ "108": -0.004054687499999994,
+ "109": -0.0036015624999999984,
+ "110": -0.0028105468749999984,
+ "111": -0.0017773437500000014,
+ "112": -0.002455078124999998,
+ "113": -0.0043828124999999935,
+ "114": -0.0032148437499999946,
+ "115": -0.001445312500000001,
+ "116": -0.0010761718750000007,
+ "117": -0.0040468749999999915,
+ "118": -0.0029628906249999955,
+ "119": -0.0016250000000000012,
+ "120": -0.003908203124999992,
+ "121": -0.004914062499999988,
+ "122": -0.003324218749999999,
+ "123": -0.003531249999999998,
+ "124": -0.004892578124999993,
+ "125": -0.0020898437500000014,
+ "126": -0.001982421875000001,
+ "127": -0.002900390624999999,
+ "128": -0.0038789062499999926,
+ "129": -0.002054687500000001,
+ "130": -0.004812499999999993,
+ "131": -0.004167968749999999,
+ "132": -0.004533203124999996,
+ "133": -0.004921875000000002,
+ "134": -0.003279296874999995,
+ "135": -0.0015332031250000011,
+ "136": -0.005374999999999994,
+ "137": -0.0034277343749999933,
+ "138": -0.0019921875000000013,
+ "139": -0.004472656249999996,
+ "140": -0.0035859374999999993,
+ "141": -0.004835937499999993,
+ "142": -0.0037382812499999933,
+ "143": -0.003509765624999995,
+ "144": -0.00486328124999999,
+ "145": -0.0023613281249999997,
+ "146": -0.003224609374999996,
+ "147": -0.0033144531249999975,
+ "148": -0.0028281249999999995,
+ "149": -0.0025625,
+ "150": -0.004191406250000001,
+ "151": -0.0016425781250000012,
+ "152": -0.004105468749999994,
+ "153": -0.004716796874999993,
+ "154": -0.004458984374999994,
+ "155": -0.0032226562499999994,
+ "156": -0.004552734374999995,
+ "157": -0.0031582031249999935,
+ "158": -0.003152343749999999,
+ "159": -0.0042792968749999945,
+ "160": -0.0038183593749999936,
+ "161": -0.0038359374999999926,
+ "162": -0.003498046874999994,
+ "163": -0.0037324218749999966,
+ "164": -0.003681640624999996,
+ "165": -0.001333984375000001,
+ "166": -0.004031249999999997,
+ "167": -0.003755859374999996,
+ "168": -0.0019765625000000013,
+ "169": -0.0029843750000000022,
+ "170": -0.002291015625000002,
+ "171": -0.0024394531250000006,
+ "172": -0.0015722656250000012,
+ "173": -0.004144531249999996,
+ "174": -0.0025117187500000005,
+ "175": -0.0033359375000000017,
+ "176": -0.002234375,
+ "177": -0.0018515625000000014,
+ "178": -0.004527343749999999,
+ "179": -0.003154296874999999,
+ "180": -0.005183593749999995,
+ "181": -0.0023476562499999986,
+ "182": -0.001287109375000001,
+ "183": -0.003710937500000002,
+ "184": -0.004249999999999997,
+ "185": -0.002396484375000001,
+ "186": -0.004093749999999991,
+ "187": -0.0019804687500000013,
+ "188": -0.005332031249999985,
+ "189": -0.003957031249999991,
+ "190": -0.003033203124999993,
+ "191": -0.0035605468749999947,
+ "192": -0.002708984374999997,
+ "193": -0.005011718749999996,
+ "194": -0.003744140624999997,
+ "195": -0.003107421874999999,
+ "196": -0.003843749999999996,
+ "197": -0.0048105468749999915,
+ "198": -0.0018808593750000015,
+ "199": -0.0011484375000000008,
+ "200": -0.0032382812499999977,
+ "201": -0.004214843749999998,
+ "202": -0.0025253906249999994,
+ "203": -0.0015761718750000012,
+ "204": -0.004624999999999998,
+ "205": -0.0011464843750000008,
+ "206": -0.003876953124999994,
+ "207": -0.0038749999999999935,
+ "208": -0.003912109374999993,
+ "209": -0.0023496093749999984,
+ "210": -0.0042617187499999955,
+ "211": -0.0017363281250000013,
+ "212": -0.005468749999999988,
+ "213": -0.0026542968749999995,
+ "214": -0.0033359374999999965,
+ "215": -0.0015371093750000011,
+ "216": -0.001425781250000001,
+ "217": -0.003068359374999993,
+ "218": -0.002917968749999997,
+ "219": -0.002265625,
+ "220": -0.0032949218749999927,
+ "221": -0.0018769531250000015,
+ "222": -0.0018359375000000014,
+ "223": -0.0015058593750000011,
+ "224": -0.003650390624999992,
+ "225": -0.002185546875000001,
+ "226": -0.004166015624999984,
+ "227": -0.0015742187500000012,
+ "228": -0.003136718749999995,
+ "229": -0.0018535156250000014,
+ "230": -0.002666015624999994,
+ "231": -0.0039726562499999936,
+ "232": -0.0037304687499999907,
+ "233": -0.0017617187500000013,
+ "234": -0.00396874999999999,
+ "235": -0.002507812499999997,
+ "236": -0.003777343749999991,
+ "237": -0.003662109374999992,
+ "238": -0.003716796874999991,
+ "239": -0.0016953125000000013,
+ "240": -0.0025527343749999973,
+ "241": -0.0017050781250000013,
+ "242": -0.004427734374999993,
+ "243": -0.0058574218749999915,
+ "244": -0.0020058593750000016,
+ "245": -0.0019726562500000013,
+ "246": -0.0029316406249999946,
+ "247": -0.001490234375000001,
+ "248": -0.002144531249999999,
+ "249": -0.003787109374999997,
+ "250": -0.0024570312499999983,
+ "251": -0.0026562499999999985,
+ "252": -0.0031582031249999943,
+ "253": -0.0019101562500000015,
+ "254": -0.003166015624999994,
+ "255": -0.0046171874999999885,
+ "256": -0.0017011718750000013,
+ "257": -0.0022363281249999996,
+ "258": -0.0018457031250000014,
+ "259": -0.0017949218750000014,
+ "260": -0.003958984374999984,
+ "261": -0.004083984374999986,
+ "262": -0.0033496093749999963,
+ "263": -0.0033535156249999924,
+ "264": -0.004232421874999985,
+ "265": -0.002679687499999997,
+ "266": -0.0035488281249999865,
+ "267": -0.003376953124999988,
+ "268": -0.003128906249999991,
+ "269": -0.0028984374999999943,
+ "270": -0.0018007812500000014,
+ "271": -0.0034433593749999946,
+ "272": -0.004562499999999984,
+ "273": -0.0017226562500000013,
+ "274": -0.0017304687500000013,
+ "275": -0.0020429687499999996,
+ "276": -0.0016386718750000012,
+ "277": -0.001386718750000001,
+ "278": -0.0021503906249999995,
+ "279": -0.0019257812500000015,
+ "280": -0.0030429687499999927,
+ "281": -0.002619140624999995,
+ "282": -0.0035234374999999914,
+ "283": -0.002849609374999996,
+ "284": -0.0024726562499999987,
+ "285": -0.0018671875000000014,
+ "286": -0.0024062499999999965,
+ "287": -0.0019023437500000015,
+ "288": -0.0016894531250000013,
+ "289": -0.002904296874999996,
+ "290": -0.002468749999999998,
+ "291": -0.006005859374999983,
+ "292": -0.002083984374999999,
+ "293": -0.005695312499999982,
+ "294": -0.0015175781250000011,
+ "295": -0.002929687499999995,
+ "296": -0.004615234374999987,
+ "297": -0.0033593749999999965,
+ "298": -0.001490234375000001,
+ "299": -0.003572265624999989,
+ "300": -0.003675781249999992,
+ "301": -0.0019101562500000015,
+ "302": -0.0038027343749999906,
+ "303": -0.004712890624999988,
+ "304": -0.0032851562499999947,
+ "305": -0.002953124999999993,
+ "306": -0.0031269531249999935,
+ "307": -0.0036074218749999973,
+ "308": -0.0018808593750000015,
+ "309": -0.0025605468749999947,
+ "310": -0.002505859374999997,
+ "311": -0.0032070312499999985,
+ "312": -0.0017851562500000014,
+ "313": -0.003453124999999994,
+ "314": -0.0017812500000000014,
+ "315": -0.0035449218749999904,
+ "316": -0.0017929687500000014,
+ "317": -0.0016816406250000013,
+ "318": -0.0025683593749999986,
+ "319": -0.00486718749999999,
+ "320": -0.002718749999999998,
+ "321": -0.00230078125,
+ "322": -0.004113281249999988,
+ "323": -0.0015039062500000011,
+ "324": -0.002230468749999998,
+ "325": -0.0033789062499999956,
+ "326": -0.004124999999999989,
+ "327": -0.003179687499999996,
+ "328": -0.004945312499999986,
+ "329": -0.002337890624999994,
+ "330": -0.001375000000000001,
+ "331": -0.002830078124999996,
+ "332": -0.0012265625000000009,
+ "333": -0.0037812499999999864,
+ "334": -0.0019726562500000013,
+ "335": -0.0032343749999999903,
+ "336": -0.0035214843749999886,
+ "337": -0.003951171874999982,
+ "338": -0.0017011718750000013,
+ "339": -0.003009765624999991,
+ "340": -0.0019042968750000015,
+ "341": -0.0017226562500000013,
+ "342": -0.0017050781250000013,
+ "343": -0.003630859374999992,
+ "344": -0.0037480468749999936,
+ "345": -0.004136718749999986,
+ "346": -0.003175781249999997,
+ "347": -0.0030644531249999947,
+ "348": -0.0017714843750000014,
+ "349": -0.004859374999999985,
+ "350": -0.0022851562499999986,
+ "351": -0.0015078125000000011,
+ "352": -0.002818359374999996,
+ "353": -0.0011269531250000008,
+ "354": -0.0027167968749999983,
+ "355": -0.0041679687499999885,
+ "356": -0.0026464843749999948,
+ "357": -0.002771484374999995,
+ "358": -0.0026621093749999995,
+ "359": -0.0015761718750000012,
+ "360": -0.0031406249999999924,
+ "361": -0.0032636718749999957,
+ "362": -0.00378320312499999,
+ "363": -0.002292968749999998,
+ "364": -0.002154296874999999,
+ "365": -0.002269531249999996,
+ "366": -0.0024003906249999945,
+ "367": -0.003408203124999993,
+ "368": -0.004148437499999984,
+ "369": -0.00343554687499999,
+ "370": -0.002771484375000002,
+ "371": -0.0023222656249999992,
+ "372": -0.0016914062500000013,
+ "373": -0.0035976562499999893,
+ "374": -0.001287109375000001,
+ "375": -0.0029003906249999937,
+ "376": -0.001251953125000001,
+ "377": -0.0041054687499999885,
+ "378": -0.0033300781249999906,
+ "379": -0.0023710937499999973,
+ "380": -0.001259765625000001,
+ "381": -0.0016699218750000013,
+ "382": -0.004019531249999993,
+ "383": -0.0025214843749999964,
+ "384": -0.004519531249999987,
+ "385": -0.0025390624999999984,
+ "386": -0.00430078124999999,
+ "387": -0.003080078124999995,
+ "388": -0.0027558593749999953,
+ "389": -0.0029863281250000003,
+ "390": -0.0018789062500000015,
+ "391": -0.00411328124999999,
+ "392": -0.0016054687500000012,
+ "393": -0.004031249999999994,
+ "394": -0.003990234374999989,
+ "395": -0.0033417968749999962,
+ "396": -0.0034687499999999953,
+ "397": -0.004355468749999989,
+ "398": -0.002730468749999997,
+ "399": -0.003802734374999993,
+ "400": -0.0037578124999999916,
+ "401": -0.0028398437499999978,
+ "402": -0.002539062499999997,
+ "403": -0.003613281249999987,
+ "404": -0.002869140624999995,
+ "405": -0.0029472656249999937,
+ "406": -0.004976562499999986,
+ "407": -0.004249999999999992,
+ "408": -0.003050781249999994,
+ "409": -0.004517578124999988,
+ "410": -0.00366406249999999,
+ "411": -0.002037109375,
+ "412": -0.001394531250000001,
+ "413": -0.004046874999999989,
+ "414": -0.003058593749999992,
+ "415": -0.0019199218750000015,
+ "416": -0.003714843749999991,
+ "417": -0.0017031250000000013,
+ "418": -0.00414843749999999,
+ "419": -0.0032734374999999942,
+ "420": -0.001433593750000001,
+ "421": -0.002894531249999997,
+ "422": -0.002269531249999999,
+ "423": -0.003279296874999995,
+ "424": -0.0045898437499999915,
+ "425": -0.004542968749999988,
+ "426": -0.0032832031249999936,
+ "427": -0.0022617187499999977,
+ "428": -0.0016367187500000012,
+ "429": -0.0026152343749999943,
+ "430": -0.001474609375000001,
+ "431": -0.002021484375000001,
+ "432": -0.004667968749999991,
+ "433": -0.0041914062499999955,
+ "434": -0.0033203124999999956,
+ "435": -0.00347656249999999,
+ "436": -0.0020312499999999996,
+ "437": -0.0038554687499999904,
+ "438": -0.0035468749999999953,
+ "439": -0.001486328125000001,
+ "440": -0.0017480468750000013,
+ "441": -0.004345703124999991,
+ "442": -0.0023066406249999997,
+ "443": -0.0036660156249999918,
+ "444": -0.0017890625000000014,
+ "445": -0.004621093749999989,
+ "446": -0.0027714843749999953,
+ "447": -0.0019960937500000013,
+ "448": -0.0019433593750000015,
+ "449": -0.0016914062500000013,
+ "450": -0.0021640625000000015,
+ "451": -0.0016191406250000012,
+ "452": -0.004275390624999996,
+ "453": -0.003605468749999997,
+ "454": -0.002310546875,
+ "455": -0.002587890624999999,
+ "456": -0.0015800781250000012,
+ "457": -0.003509765624999999,
+ "458": -0.0028046875,
+ "459": -0.001281250000000001,
+ "460": -0.002007812500000001,
+ "461": -0.004337890624999995,
+ "462": -0.004291015624999997,
+ "463": -0.003499999999999997,
+ "464": -0.002445312499999999,
+ "465": -0.003550781249999997,
+ "466": -0.002746093749999998,
+ "467": -0.003203124999999999,
+ "468": -0.004544921875,
+ "469": -0.0026562499999999985,
+ "470": -0.0032128906249999957,
+ "471": -0.004775390624999994,
+ "472": -0.0018574218750000014,
+ "473": -0.003955078125,
+ "474": -0.0014980468750000011,
+ "475": -0.0035019531249999916,
+ "476": -0.0036308593749999917,
+ "477": -0.002273437499999998,
+ "478": -0.004013671874999988,
+ "479": -0.0031933593749999913,
+ "480": -0.0023789062499999943,
+ "481": -0.002566406249999995,
+ "482": -0.002072265624999999,
+ "483": -0.0027402343749999953,
+ "484": -0.003134765624999994,
+ "485": -0.0031289062499999954,
+ "486": -0.0032226562499999938,
+ "487": -0.001261718750000001,
+ "488": -0.0029394531249999946,
+ "489": -0.001443359375000001,
+ "490": -0.0020292968750000016,
+ "491": -0.0034570312499999922,
+ "492": -0.0022207031249999983,
+ "493": -0.003140624999999993,
+ "494": -0.0022070312499999968,
+ "495": -0.002560546874999997,
+ "496": -0.00458203124999999,
+ "497": -0.003865234374999992,
+ "498": -0.0015156250000000011,
+ "499": -0.0026933593749999965,
+ "500": -0.004083984374999991
+ },
+ "8": {
+ "1": -0.00856054687499999,
+ "2": -0.008710937499999979,
+ "3": -0.00758398437499999,
+ "4": -0.0063769531249999855,
+ "5": -0.005437499999999987,
+ "6": -0.005570312499999988,
+ "7": -0.005394531249999986,
+ "8": -0.005238281249999991,
+ "9": -0.005316406249999985,
+ "10": -0.006683593749999994,
+ "11": -0.0070175781249999895,
+ "12": -0.006095703124999991,
+ "13": -0.005867187499999985,
+ "14": -0.004874999999999994,
+ "15": -0.0021953124999999967,
+ "16": -0.006001953124999995,
+ "17": -0.005978515625,
+ "18": -0.00545507812499999,
+ "19": -0.006015624999999994,
+ "20": -0.005990234374999991,
+ "21": -0.0036992187499999916,
+ "22": -0.006705078124999983,
+ "23": -0.005744140624999988,
+ "24": -0.006345703124999992,
+ "25": -0.005052734374999987,
+ "26": -0.003912109374999994,
+ "27": -0.0035898437499999936,
+ "28": -0.005591796874999986,
+ "29": -0.005253906249999994,
+ "30": -0.006150390624999994,
+ "31": -0.0024902343749999964,
+ "32": -0.0028496093749999962,
+ "33": -0.002912109374999996,
+ "34": -0.006371093749999987,
+ "35": -0.0023222656249999992,
+ "36": -0.00593945312499999,
+ "37": -0.004160156249999994,
+ "38": -0.004382812499999993,
+ "39": -0.005103515624999984,
+ "40": -0.0047675781249999875,
+ "41": -0.0030156249999999975,
+ "42": -0.0035449218749999934,
+ "43": -0.003767578124999998,
+ "44": -0.003070312499999995,
+ "45": -0.002011718750000001,
+ "46": -0.003982421874999994,
+ "47": -0.006462890624999989,
+ "48": -0.0052050781249999905,
+ "49": -0.0030273437499999966,
+ "50": -0.005003906249999988,
+ "51": -0.002822265624999997,
+ "52": -0.0037773437499999947,
+ "53": -0.003535156249999996,
+ "54": -0.004050781249999995,
+ "55": -0.004523437499999992,
+ "56": -0.005009765624999995,
+ "57": -0.0023769531249999967,
+ "58": -0.00501367187499999,
+ "59": -0.0025605468749999973,
+ "60": -0.0024433593750000007,
+ "61": -0.006089843749999991,
+ "62": -0.005363281249999991,
+ "63": -0.004753906249999999,
+ "64": -0.0058007812499999865,
+ "65": -0.0035078124999999966,
+ "66": -0.0046308593749999965,
+ "67": -0.0030312499999999966,
+ "68": -0.004132812499999995,
+ "69": -0.0022265625000000007,
+ "70": -0.0025742187499999975,
+ "71": -0.0032597656249999983,
+ "72": -0.0029082031249999967,
+ "73": -0.0040742187499999945,
+ "74": -0.0025332031249999986,
+ "75": -0.0029531249999999953,
+ "76": -0.00258984375,
+ "77": -0.0011972656250000008,
+ "78": -0.003177734374999994,
+ "79": -0.002927734374999997,
+ "80": -0.0037753906249999953,
+ "81": -0.004447265624999997,
+ "82": -0.002121093750000001,
+ "83": -0.00494335937499999,
+ "84": -0.0025253906249999994,
+ "85": -0.002273437499999998,
+ "86": -0.0035585937499999984,
+ "87": -0.0022226562499999994,
+ "88": -0.0028535156249999984,
+ "89": -0.0038046874999999912,
+ "90": -0.0071367187499999886,
+ "91": -0.0018281250000000014,
+ "92": -0.004291015624999991,
+ "93": -0.0025371093749999986,
+ "94": -0.002351562499999998,
+ "95": -0.0025546874999999997,
+ "96": -0.005146484374999992,
+ "97": -0.004999999999999992,
+ "98": -0.003187499999999998,
+ "99": -0.0035390624999999975,
+ "100": -0.00244921875,
+ "101": -0.0015234375000000011,
+ "102": -0.0030703124999999997,
+ "103": -0.002460937500000001,
+ "104": -0.0019335937500000015,
+ "105": -0.0048261718749999976,
+ "106": -0.0041289062500000015,
+ "107": -0.0058124999999999835,
+ "108": -0.003853515624999997,
+ "109": -0.004531249999999998,
+ "110": -0.004839843749999993,
+ "111": -0.0016796875000000013,
+ "112": -0.0023593750000000012,
+ "113": -0.004289062499999998,
+ "114": -0.002953124999999998,
+ "115": -0.003271484375000001,
+ "116": -0.0020839843750000016,
+ "117": -0.0043691406249999985,
+ "118": -0.0048828125,
+ "119": -0.002437500000000001,
+ "120": -0.003523437499999998,
+ "121": -0.0024667968750000007,
+ "122": -0.004154296874999998,
+ "123": -0.004343749999999995,
+ "124": -0.0021855468750000017,
+ "125": -0.001408203125000001,
+ "126": -0.0043496093749999945,
+ "127": -0.004234374999999996,
+ "128": -0.00337109375,
+ "129": -0.0030488281249999973,
+ "130": -0.005519531249999985,
+ "131": -0.0032597656249999944,
+ "132": -0.0031074218749999995,
+ "133": -0.0037421874999999973,
+ "134": -0.0019589843750000015,
+ "135": -0.003638671874999997,
+ "136": -0.0032910156249999997,
+ "137": -0.00422656249999999,
+ "138": -0.003865234374999995,
+ "139": -0.0030195312499999944,
+ "140": -0.003945312499999995,
+ "141": -0.003330078124999994,
+ "142": -0.0030058593749999946,
+ "143": -0.003562499999999997,
+ "144": -0.0032753906249999936,
+ "145": -0.0033183593749999923,
+ "146": -0.001462890625000001,
+ "147": -0.003185546874999995,
+ "148": -0.0027539062499999946,
+ "149": -0.00369140624999999,
+ "150": -0.0021445312499999993,
+ "151": -0.002369140624999998,
+ "152": -0.0023789062499999947,
+ "153": -0.002671874999999997,
+ "154": -0.002837890624999994,
+ "155": -0.0021191406250000004,
+ "156": -0.003728515624999984,
+ "157": -0.0028007812499999947,
+ "158": -0.0018632812500000014,
+ "159": -0.004419921874999983,
+ "160": -0.002990234374999993,
+ "161": -0.0030156249999999975,
+ "162": -0.004197265624999981,
+ "163": -0.001285156250000001,
+ "164": -0.002712890624999994,
+ "165": -0.001386718750000001,
+ "166": -0.0027207031249999957,
+ "167": -0.0026835937499999946,
+ "168": -0.0033437499999999887,
+ "169": -0.002191406249999999,
+ "170": -0.002580078124999995,
+ "171": -0.002238281249999998,
+ "172": -0.004210937499999993,
+ "173": -0.0018730468750000014,
+ "174": -0.003302734374999994,
+ "175": -0.003298828124999991,
+ "176": -0.0036640624999999902,
+ "177": -0.0018281250000000014,
+ "178": -0.003947265624999989,
+ "179": -0.003874999999999987,
+ "180": -0.001324218750000001,
+ "181": -0.001994140625000001,
+ "182": -0.0018769531250000015,
+ "183": -0.002908203124999992,
+ "184": -0.001310546875000001,
+ "185": -0.0024003906249999932,
+ "186": -0.002902343749999995,
+ "187": -0.0016132812500000012,
+ "188": -0.0017187500000000013,
+ "189": -0.0010449218750000007,
+ "190": -0.002246093749999998,
+ "191": -0.001253906250000001,
+ "192": -0.0036621093749999883,
+ "193": -0.0032480468749999944,
+ "194": -0.0018046875000000014,
+ "195": -0.0030410156249999934,
+ "196": -0.0033437499999999926,
+ "197": -0.0038730468749999893,
+ "198": -0.003203124999999993,
+ "199": -0.0021445312499999993,
+ "200": -0.002886718749999994,
+ "201": -0.0016562500000000013,
+ "202": -0.0015039062500000011,
+ "203": -0.003025390624999993,
+ "204": -0.004722656249999991,
+ "205": -0.002642578124999995,
+ "206": -0.0020351562500000005,
+ "207": -0.002400390624999998,
+ "208": -0.0011210937500000008,
+ "209": -0.001416015625000001,
+ "210": -0.0020703125,
+ "211": -0.0018125000000000014,
+ "212": -0.0027695312499999964,
+ "213": -0.0018925781250000015,
+ "214": -0.0028124999999999964,
+ "215": -0.005939453124999978,
+ "216": -0.002156249999999997,
+ "217": -0.003982421874999991,
+ "218": -0.003935546874999989,
+ "219": -0.002593749999999995,
+ "220": -0.002119140625,
+ "221": -0.004261718749999988,
+ "222": -0.0015371093750000011,
+ "223": -0.0022031250000000002,
+ "224": -0.005138671874999983,
+ "225": -0.0015410156250000012,
+ "226": -0.001468750000000001,
+ "227": -0.0029160156249999933,
+ "228": -0.0032753906249999892,
+ "229": -0.003759765624999993,
+ "230": -0.005462890624999998,
+ "231": -0.003499999999999994,
+ "232": -0.001455078125000001,
+ "233": -0.001279296875000001,
+ "234": -0.0035976562499999906,
+ "235": -0.0019648437500000013,
+ "236": -0.00209765625,
+ "237": -0.001273437500000001,
+ "238": -0.003687499999999994,
+ "239": -0.0028789062499999913,
+ "240": -0.004523437499999983,
+ "241": -0.003619140624999986,
+ "242": -0.002117187499999999,
+ "243": -0.001429687500000001,
+ "244": -0.004330078124999988,
+ "245": -0.003853515624999985,
+ "246": -0.003302734374999992,
+ "247": -0.0038710937499999865,
+ "248": -0.004138671874999988,
+ "249": -0.0045253906249999865,
+ "250": -0.004666015624999982,
+ "251": -0.0017656250000000014,
+ "252": -0.002861328124999993,
+ "253": -0.0037773437499999877,
+ "254": -0.001427734375000001,
+ "255": -0.0032480468749999884,
+ "256": -0.002060546874999999,
+ "257": -0.0038535156249999863,
+ "258": -0.0022500000000000003,
+ "259": -0.003574218749999993,
+ "260": -0.0024609374999999957,
+ "261": -0.0033749999999999887,
+ "262": -0.0036933593749999875,
+ "263": -0.004345703124999986,
+ "264": -0.0028515624999999965,
+ "265": -0.002841796874999993,
+ "266": -0.0016796875000000013,
+ "267": -0.0017617187500000013,
+ "268": -0.002099609374999999,
+ "269": -0.0024570312499999965,
+ "270": -0.0020546875000000005,
+ "271": -0.002814453124999993,
+ "272": -0.002908203124999992,
+ "273": -0.0023984374999999974,
+ "274": -0.0016640625000000013,
+ "275": -0.004037109374999985,
+ "276": -0.002968749999999991,
+ "277": -0.0032304687499999877,
+ "278": -0.001365234375000001,
+ "279": -0.0010390625000000007,
+ "280": -0.0026113281249999947,
+ "281": -0.0033359374999999887,
+ "282": -0.002429687499999996,
+ "283": -0.003914062499999987,
+ "284": -0.001421875000000001,
+ "285": -0.0011464843750000008,
+ "286": -0.003041015624999991,
+ "287": -0.0051464843749999805,
+ "288": -0.0037128906249999888,
+ "289": -0.0038945312499999896,
+ "290": -0.003935546874999989,
+ "291": -0.00205078125,
+ "292": -0.0023925781249999967,
+ "293": -0.0016835937500000013,
+ "294": -0.001388671875000001,
+ "295": -0.003316406249999986,
+ "296": -0.0029472656249999903,
+ "297": -0.001259765625000001,
+ "298": -0.0032324218749999888,
+ "299": -0.0019687500000000013,
+ "300": -0.002876953124999993,
+ "301": -0.002361328124999998,
+ "302": -0.001376953125000001,
+ "303": -0.0035917968749999917,
+ "304": -0.0035488281249999878,
+ "305": -0.0029863281249999916,
+ "306": -0.0019589843750000015,
+ "307": -0.0010175781250000007,
+ "308": -0.0038789062499999913,
+ "309": -0.0031074218749999895,
+ "310": -0.002769531249999993,
+ "311": -0.0015058593750000011,
+ "312": -0.001429687500000001,
+ "313": -0.002117187499999998,
+ "314": -0.0036601562499999833,
+ "315": -0.0024746093749999963,
+ "316": -0.0029082031249999907,
+ "317": -0.0024023437499999974,
+ "318": -0.004205078124999986,
+ "319": -0.0018242187500000014,
+ "320": -0.002019531250000001,
+ "321": -0.0016445312500000012,
+ "322": -0.0009687500000000008,
+ "323": -0.0018105468750000014,
+ "324": -0.0016835937500000013,
+ "325": -0.00203515625,
+ "326": -0.003142578124999994,
+ "327": -0.00510351562499998,
+ "328": -0.0034199218749999924,
+ "329": -0.001371093750000001,
+ "330": -0.0018984375000000015,
+ "331": -0.0020253906250000007,
+ "332": -0.0035117187499999875,
+ "333": -0.004183593749999992,
+ "334": -0.004234374999999988,
+ "335": -0.004378906249999982,
+ "336": -0.0023652343749999945,
+ "337": -0.0018085937500000014,
+ "338": -0.0032343749999999903,
+ "339": -0.004224609374999981,
+ "340": -0.0021015624999999997,
+ "341": -0.0020292968750000003,
+ "342": -0.004124999999999985,
+ "343": -0.002068359375,
+ "344": -0.0032031249999999907,
+ "345": -0.0020449218750000007,
+ "346": -0.0024003906249999932,
+ "347": -0.0020917968749999986,
+ "348": -0.0021425781249999995,
+ "349": -0.0034667968749999903,
+ "350": -0.002169921874999997,
+ "351": -0.0035312499999999936,
+ "352": -0.001484375000000001,
+ "353": -0.0036699218749999957,
+ "354": -0.002056640625,
+ "355": -0.001966796875000001,
+ "356": -0.004437499999999988,
+ "357": -0.0020214843750000007,
+ "358": -0.003925781249999988,
+ "359": -0.0026425781249999926,
+ "360": -0.002552734374999995,
+ "361": -0.0024746093749999963,
+ "362": -0.0034277343749999963,
+ "363": -0.001261718750000001,
+ "364": -0.0038652343749999867,
+ "365": -0.003914062499999992,
+ "366": -0.0036054687499999915,
+ "367": -0.0044355468749999885,
+ "368": -0.0044257812499999905,
+ "369": -0.0028046874999999956,
+ "370": -0.004445312499999984,
+ "371": -0.0022578124999999985,
+ "372": -0.0015019531250000011,
+ "373": -0.0018593750000000014,
+ "374": -0.002386718749999998,
+ "375": -0.0029179687499999983,
+ "376": -0.0017324218750000013,
+ "377": -0.0027773437499999977,
+ "378": -0.0015136718750000011,
+ "379": -0.004185546874999991,
+ "380": -0.003251953124999989,
+ "381": -0.0037246093749999953,
+ "382": -0.003378906249999999,
+ "383": -0.002179687499999999,
+ "384": -0.0018691406250000014,
+ "385": -0.004417968749999989,
+ "386": -0.0034746093749999946,
+ "387": -0.004019531249999988,
+ "388": -0.0018515625000000014,
+ "389": -0.003757812499999994,
+ "390": -0.003101562499999995,
+ "391": -0.0026835937499999967,
+ "392": -0.0025742187499999966,
+ "393": -0.001328125000000001,
+ "394": -0.00447851562499999,
+ "395": -0.001978515625000001,
+ "396": -0.002291015624999998,
+ "397": -0.002804687499999992,
+ "398": -0.0017363281250000013,
+ "399": -0.002851562499999995,
+ "400": -0.0033027343749999893,
+ "401": -0.00424414062499999,
+ "402": -0.0023300781249999997,
+ "403": -0.0016601562500000013,
+ "404": -0.002287109374999997,
+ "405": -0.00309570312499999,
+ "406": -0.001304687500000001,
+ "407": -0.002169921874999998,
+ "408": -0.002140624999999998,
+ "409": -0.001476562500000001,
+ "410": -0.0017792968750000014,
+ "411": -0.0041796874999999855,
+ "412": -0.0037109374999999864,
+ "413": -0.0029550781249999924,
+ "414": -0.002269531249999996,
+ "415": -0.0020527343749999994,
+ "416": -0.0035859374999999867,
+ "417": -0.0016855468750000013,
+ "418": -0.0026914062499999937,
+ "419": -0.0012441406250000009,
+ "420": -0.0011367187500000008,
+ "421": -0.0031347656249999883,
+ "422": -0.0020644531250000003,
+ "423": -0.0014980468750000011,
+ "424": -0.0037558593749999814,
+ "425": -0.0012109375000000009,
+ "426": -0.003044921874999991,
+ "427": -0.004126953124999978,
+ "428": -0.0010585937500000007,
+ "429": -0.0032597656249999897,
+ "430": -0.001267578125000001,
+ "431": -0.0015722656250000012,
+ "432": -0.0033124999999999904,
+ "433": -0.002828124999999993,
+ "434": -0.0022167968749999987,
+ "435": -0.0021191406249999978,
+ "436": -0.0030371093749999903,
+ "437": -0.0030195312499999892,
+ "438": -0.0032597656249999875,
+ "439": -0.0024238281249999967,
+ "440": -0.0030761718749999917,
+ "441": -0.003095703124999989,
+ "442": -0.0010136718750000007,
+ "443": -0.0032578124999999877,
+ "444": -0.003808593749999988,
+ "445": -0.004146484374999981,
+ "446": -0.0017050781250000013,
+ "447": -0.0028925781249999915,
+ "448": -0.0026191406249999943,
+ "449": -0.0019179687500000015,
+ "450": -0.0012070312500000009,
+ "451": -0.0015429687500000012,
+ "452": -0.004562499999999994,
+ "453": -0.0021269531249999995,
+ "454": -0.0034687499999999896,
+ "455": -0.0016152343750000012,
+ "456": -0.003667968749999991,
+ "457": -0.004705078124999985,
+ "458": -0.0038515624999999887,
+ "459": -0.0011230468750000008,
+ "460": -0.0012421875000000009,
+ "461": -0.0034589843749999872,
+ "462": -0.002677734374999995,
+ "463": -0.003419921874999989,
+ "464": -0.002087890625,
+ "465": -0.002855468749999994,
+ "466": -0.0037949218749999867,
+ "467": -0.004136718749999981,
+ "468": -0.0011386718750000008,
+ "469": -0.004369140624999983,
+ "470": -0.0028066406249999906,
+ "471": -0.0032089843749999922,
+ "472": -0.0035937499999999963,
+ "473": -0.0035898437499999897,
+ "474": -0.0021054687499999993,
+ "475": -0.00230859375,
+ "476": -0.004273437499999998,
+ "477": -0.001277343750000001,
+ "478": -0.0020761718749999995,
+ "479": -0.0032910156249999936,
+ "480": -0.002720703124999996,
+ "481": -0.003769531249999994,
+ "482": -0.004304687499999988,
+ "483": -0.0022011718749999974,
+ "484": -0.0034277343749999924,
+ "485": -0.003703124999999998,
+ "486": -0.0038535156249999915,
+ "487": -0.004681640624999991,
+ "488": -0.002585937499999999,
+ "489": -0.004095703124999995,
+ "490": -0.003712890624999996,
+ "491": -0.002154296875,
+ "492": -0.004472656249999997,
+ "493": -0.0021796875000000006,
+ "494": -0.003417968749999998,
+ "495": -0.0016074218750000012,
+ "496": -0.0018007812500000014,
+ "497": -0.004486328124999996,
+ "498": -0.002123046875,
+ "499": -0.002582031249999999,
+ "500": -0.002814453125
+ },
+ "9": {
+ "1": -0.005498046874999991,
+ "2": -0.008203124999999993,
+ "3": -0.006732421874999985,
+ "4": -0.005914062499999987,
+ "5": -0.00560742187499999,
+ "6": -0.0066992187499999925,
+ "7": -0.003830078124999994,
+ "8": -0.005880859374999995,
+ "9": -0.005998046874999987,
+ "10": -0.007302734374999984,
+ "11": -0.005921874999999989,
+ "12": -0.004732421874999996,
+ "13": -0.0052246093749999875,
+ "14": -0.0038828124999999935,
+ "15": -0.00512304687499999,
+ "16": -0.005332031249999994,
+ "17": -0.007011718749999992,
+ "18": -0.005156249999999989,
+ "19": -0.005277343749999995,
+ "20": -0.0034042968749999894,
+ "21": -0.006341796874999991,
+ "22": -0.004193359374999992,
+ "23": -0.004910156249999985,
+ "24": -0.0058515625,
+ "25": -0.002998046874999997,
+ "26": -0.003058593749999994,
+ "27": -0.005552734374999994,
+ "28": -0.0023964843749999984,
+ "29": -0.003542968749999994,
+ "30": -0.0035859374999999936,
+ "31": -0.004832031249999993,
+ "32": -0.00495703124999999,
+ "33": -0.0037539062499999916,
+ "34": -0.0057050781249999875,
+ "35": -0.002812499999999998,
+ "36": -0.004406249999999993,
+ "37": -0.005300781249999992,
+ "38": -0.0021230468749999995,
+ "39": -0.006275390624999985,
+ "40": -0.005265624999999984,
+ "41": -0.004955078124999991,
+ "42": -0.006666015624999981,
+ "43": -0.006105468749999995,
+ "44": -0.0041367187499999954,
+ "45": -0.0030839843749999965,
+ "46": -0.004050781249999991,
+ "47": -0.0037558593749999953,
+ "48": -0.005041015624999991,
+ "49": -0.0015996093750000012,
+ "50": -0.0036660156249999935,
+ "51": -0.0015156250000000011,
+ "52": -0.004187499999999995,
+ "53": -0.005378906249999996,
+ "54": -0.0024746093750000002,
+ "55": -0.005390624999999988,
+ "56": -0.003999999999999997,
+ "57": -0.002107421875000001,
+ "58": -0.00524999999999999,
+ "59": -0.004564453124999993,
+ "60": -0.0019609375000000013,
+ "61": -0.0033671875,
+ "62": -0.003541015624999998,
+ "63": -0.004808593749999999,
+ "64": -0.0029648437499999987,
+ "65": -0.004191406249999994,
+ "66": -0.004693359374999994,
+ "67": -0.0027187500000000007,
+ "68": -0.002216796875000001,
+ "69": -0.0019199218750000015,
+ "70": -0.002451171875,
+ "71": -0.0049628906249999955,
+ "72": -0.004804687499999991,
+ "73": -0.004472656249999996,
+ "74": -0.004689453124999995,
+ "75": -0.0027480468749999975,
+ "76": -0.0034902343749999972,
+ "77": -0.0030468749999999966,
+ "78": -0.0038164062499999947,
+ "79": -0.0028437499999999986,
+ "80": -0.0021445312499999993,
+ "81": -0.0035371093749999943,
+ "82": -0.003261718749999995,
+ "83": -0.003421874999999994,
+ "84": -0.0026699218749999987,
+ "85": -0.0022910156249999996,
+ "86": -0.0045234375000000005,
+ "87": -0.0037734374999999925,
+ "88": -0.003486328124999997,
+ "89": -0.0018886718750000015,
+ "90": -0.0019687500000000013,
+ "91": -0.0020781249999999997,
+ "92": -0.0034589843749999964,
+ "93": -0.004212890624999997,
+ "94": -0.004867187499999996,
+ "95": -0.004316406249999995,
+ "96": -0.0018964843750000015,
+ "97": -0.0034374999999999983,
+ "98": -0.0027812499999999986,
+ "99": -0.004958984374999996,
+ "100": -0.005880859374999986,
+ "101": -0.004859374999999992,
+ "102": -0.0029843749999999987,
+ "103": -0.0037148437499999977,
+ "104": -0.003306640625,
+ "105": -0.004078124999999991,
+ "106": -0.0018027343750000014,
+ "107": -0.0021640625000000015,
+ "108": -0.004531249999999993,
+ "109": -0.0041328124999999985,
+ "110": -0.005023437499999992,
+ "111": -0.002039062500000001,
+ "112": -0.0028242187499999995,
+ "113": -0.003960937499999994,
+ "114": -0.005791015624999994,
+ "115": -0.0025957031249999995,
+ "116": -0.0018554687500000014,
+ "117": -0.004175781249999999,
+ "118": -0.004554687499999997,
+ "119": -0.0026874999999999994,
+ "120": -0.003257812499999998,
+ "121": -0.0015468750000000012,
+ "122": -0.0020410156250000007,
+ "123": -0.003724609374999999,
+ "124": -0.004873046875,
+ "125": -0.0024492187500000013,
+ "126": -0.002193359375000001,
+ "127": -0.003312499999999999,
+ "128": -0.0032890624999999995,
+ "129": -0.0023437499999999995,
+ "130": -0.0019218750000000015,
+ "131": -0.004406249999999995,
+ "132": -0.0037460937499999973,
+ "133": -0.005730468749999997,
+ "134": -0.0040156249999999975,
+ "135": -0.0032578124999999994,
+ "136": -0.0044628906249999985,
+ "137": -0.0019453125000000015,
+ "138": -0.0049531249999999975,
+ "139": -0.0016347656250000012,
+ "140": -0.003083984374999997,
+ "141": -0.0024394531249999993,
+ "142": -0.0021718750000000015,
+ "143": -0.004107421874999998,
+ "144": -0.003958984374999997,
+ "145": -0.004835937499999995,
+ "146": -0.0036230468749999948,
+ "147": -0.004199218749999995,
+ "148": -0.003109374999999997,
+ "149": -0.005111328124999997,
+ "150": -0.005328124999999994,
+ "151": -0.0038906249999999983,
+ "152": -0.0023984375000000013,
+ "153": -0.0034687499999999966,
+ "154": -0.0021406250000000015,
+ "155": -0.00224609375,
+ "156": -0.0023847656249999997,
+ "157": -0.0032421875000000007,
+ "158": -0.0023398437500000003,
+ "159": -0.0042031249999999985,
+ "160": -0.0019921875000000013,
+ "161": -0.0040234374999999975,
+ "162": -0.0033574218749999984,
+ "163": -0.004695312499999997,
+ "164": -0.001373046875000001,
+ "165": -0.004062499999999995,
+ "166": -0.0039902343749999986,
+ "167": -0.005382812499999997,
+ "168": -0.003693359374999996,
+ "169": -0.004511718749999998,
+ "170": -0.001453125000000001,
+ "171": -0.003009765625,
+ "172": -0.0026796875,
+ "173": -0.001437500000000001,
+ "174": -0.0035,
+ "175": -0.002843750000000002,
+ "176": -0.0048828125,
+ "177": -0.0036484375,
+ "178": -0.0017265625000000013,
+ "179": -0.0020351562500000014,
+ "180": -0.0022187500000000015,
+ "181": -0.0033125000000000008,
+ "182": -0.0017031250000000013,
+ "183": -0.0018984375000000015,
+ "184": -0.00324609375,
+ "185": -0.001367187500000001,
+ "186": -0.0023359375000000016,
+ "187": -0.00240625,
+ "188": -0.005234374999999998,
+ "189": -0.0038359375,
+ "190": -0.001468750000000001,
+ "191": -0.004611328124999999,
+ "192": -0.0015781250000000012,
+ "193": -0.0016562500000000013,
+ "194": -0.0025234375,
+ "195": -0.001371093750000001,
+ "196": -0.003419921875000002,
+ "197": -0.005828125000000001,
+ "198": -0.005171874999999996,
+ "199": -0.0034765625,
+ "200": -0.0042578124999999994,
+ "201": -0.0021093750000000006,
+ "202": -0.004789062500000001,
+ "203": -0.0033125000000000008,
+ "204": -0.003882812499999999,
+ "205": -0.004515624999999996,
+ "206": -0.002072265625000001,
+ "207": -0.0020937500000000006,
+ "208": -0.004183593749999997,
+ "209": -0.0033867187499999987,
+ "210": -0.003222656249999999,
+ "211": -0.0028632812499999995,
+ "212": -0.004812499999999997,
+ "213": -0.004296875,
+ "214": -0.0032207031249999957,
+ "215": -0.002546875,
+ "216": -0.002396484375000001,
+ "217": -0.003818359375000001,
+ "218": -0.002107421875000001,
+ "219": -0.004300781249999994,
+ "220": -0.004792968749999999,
+ "221": -0.004406249999999995,
+ "222": -0.003294921874999997,
+ "223": -0.002054687500000001,
+ "224": -0.0018828125000000015,
+ "225": -0.0032265624999999985,
+ "226": -0.002123046874999999,
+ "227": -0.0019062500000000015,
+ "228": -0.0025019531250000003,
+ "229": -0.0065546875,
+ "230": -0.005564453125,
+ "231": -0.004187499999999997,
+ "232": -0.0016835937500000013,
+ "233": -0.003931640624999997,
+ "234": -0.0017500000000000013,
+ "235": -0.0024921874999999996,
+ "236": -0.005470703124999993,
+ "237": -0.0025859375000000006,
+ "238": -0.0028242187499999995,
+ "239": -0.004166015625000003,
+ "240": -0.005472656249999997,
+ "241": -0.0021640625000000015,
+ "242": -0.0025039062500000005,
+ "243": -0.0021640624999999993,
+ "244": -0.003134765624999997,
+ "245": -0.003708984374999998,
+ "246": -0.0029042968749999985,
+ "247": -0.0023749999999999995,
+ "248": -0.004164062499999996,
+ "249": -0.0035937499999999976,
+ "250": -0.004312499999999997,
+ "251": -0.0041386718749999996,
+ "252": -0.0018652343750000014,
+ "253": -0.0020859374999999997,
+ "254": -0.001441406250000001,
+ "255": -0.003296874999999999,
+ "256": -0.0024746093750000007,
+ "257": -0.003791015624999998,
+ "258": -0.0036660156249999952,
+ "259": -0.004050781249999997,
+ "260": -0.005050781249999991,
+ "261": -0.003439453124999995,
+ "262": -0.00485156249999999,
+ "263": -0.003957031249999994,
+ "264": -0.003447265624999994,
+ "265": -0.0051835937499999886,
+ "266": -0.0047871093749999915,
+ "267": -0.0030371093749999955,
+ "268": -0.0018554687500000014,
+ "269": -0.0023378906249999984,
+ "270": -0.0038007812499999956,
+ "271": -0.005749999999999987,
+ "272": -0.0030253906249999947,
+ "273": -0.0037265624999999964,
+ "274": -0.0035957031249999956,
+ "275": -0.0033906249999999965,
+ "276": -0.0021660156249999987,
+ "277": -0.003234374999999998,
+ "278": -0.0048027343749999975,
+ "279": -0.002150390625000001,
+ "280": -0.003876953124999998,
+ "281": -0.0023945312499999987,
+ "282": -0.0015761718750000012,
+ "283": -0.0015507812500000012,
+ "284": -0.004404296874999999,
+ "285": -0.0019238281250000015,
+ "286": -0.0022949218749999992,
+ "287": -0.0028046874999999964,
+ "288": -0.0016640625000000013,
+ "289": -0.0016757812500000013,
+ "290": -0.002156249999999998,
+ "291": -0.005533203124999992,
+ "292": -0.004048828124999996,
+ "293": -0.0015839843750000012,
+ "294": -0.0030449218749999973,
+ "295": -0.0020546875000000005,
+ "296": -0.003564453124999993,
+ "297": -0.0021035156250000017,
+ "298": -0.0034999999999999936,
+ "299": -0.002683593749999997,
+ "300": -0.0022382812499999977,
+ "301": -0.0029746093749999955,
+ "302": -0.0026699218749999965,
+ "303": -0.0019160156250000015,
+ "304": -0.0027539062499999977,
+ "305": -0.0021249999999999997,
+ "306": -0.0016367187500000012,
+ "307": -0.003210937499999994,
+ "308": -0.0034335937499999935,
+ "309": -0.004238281249999993,
+ "310": -0.00219921875,
+ "311": -0.0037929687499999878,
+ "312": -0.003527343749999991,
+ "313": -0.0019453125000000015,
+ "314": -0.002085937499999999,
+ "315": -0.0035390624999999893,
+ "316": -0.001472656250000001,
+ "317": -0.002285156249999999,
+ "318": -0.0017597656250000013,
+ "319": -0.0017382812500000013,
+ "320": -0.003111328124999996,
+ "321": -0.001478515625000001,
+ "322": -0.0034765624999999927,
+ "323": -0.004624999999999993,
+ "324": -0.0026738281249999983,
+ "325": -0.005230468749999993,
+ "326": -0.0018613281250000014,
+ "327": -0.0022324218749999983,
+ "328": -0.0017480468750000013,
+ "329": -0.0020859375000000014,
+ "330": -0.0016914062500000013,
+ "331": -0.001310546875000001,
+ "332": -0.003583984374999998,
+ "333": -0.0033203124999999964,
+ "334": -0.0021484374999999997,
+ "335": -0.0040292968749999995,
+ "336": -0.0015234375000000011,
+ "337": -0.0030625,
+ "338": -0.0015800781250000012,
+ "339": -0.0017441406250000013,
+ "340": -0.0030820312499999954,
+ "341": -0.002947265624999995,
+ "342": -0.0020624999999999997,
+ "343": -0.0015742187500000012,
+ "344": -0.0020175781250000007,
+ "345": -0.0011347656250000008,
+ "346": -0.003082031249999995,
+ "347": -0.004246093749999992,
+ "348": -0.0026757812499999993,
+ "349": -0.0047539062499999925,
+ "350": -0.0021445312499999997,
+ "351": -0.0032539062499999925,
+ "352": -0.003439453124999996,
+ "353": -0.003931640624999991,
+ "354": -0.0025019531249999964,
+ "355": -0.002130859374999999,
+ "356": -0.003357421874999992,
+ "357": -0.002234374999999998,
+ "358": -0.0023007812499999964,
+ "359": -0.002123046875000001,
+ "360": -0.002162109374999997,
+ "361": -0.0029394531249999933,
+ "362": -0.0016171875000000012,
+ "363": -0.0016250000000000012,
+ "364": -0.003531249999999988,
+ "365": -0.003373046874999993,
+ "366": -0.003171874999999993,
+ "367": -0.0015761718750000012,
+ "368": -0.003234374999999991,
+ "369": -0.0037539062499999903,
+ "370": -0.0033476562499999865,
+ "371": -0.0015351562500000011,
+ "372": -0.0033515624999999917,
+ "373": -0.0029238281249999915,
+ "374": -0.0029492187499999913,
+ "375": -0.002701171874999994,
+ "376": -0.0026113281249999973,
+ "377": -0.002189453124999997,
+ "378": -0.001343750000000001,
+ "379": -0.0016445312500000012,
+ "380": -0.004062499999999989,
+ "381": -0.002773437499999994,
+ "382": -0.0021835937499999976,
+ "383": -0.0038554687499999865,
+ "384": -0.0017363281250000013,
+ "385": -0.001486328125000001,
+ "386": -0.002146484374999999,
+ "387": -0.0020449218750000007,
+ "388": -0.004410156249999989,
+ "389": -0.004324218749999989,
+ "390": -0.0029726562499999922,
+ "391": -0.003996093749999986,
+ "392": -0.0019472656250000015,
+ "393": -0.0032714843749999875,
+ "394": -0.0033828124999999857,
+ "395": -0.003380859374999986,
+ "396": -0.0018593750000000014,
+ "397": -0.0020742187499999997,
+ "398": -0.003023437499999991,
+ "399": -0.002349609374999998,
+ "400": -0.0031933593749999887,
+ "401": -0.0015371093750000011,
+ "402": -0.0018789062500000015,
+ "403": -0.0015097656250000011,
+ "404": -0.003419921874999987,
+ "405": -0.004101562499999987,
+ "406": -0.0010234375000000007,
+ "407": -0.003371093749999991,
+ "408": -0.0031132812499999893,
+ "409": -0.005214843749999979,
+ "410": -0.003992187499999979,
+ "411": -0.0025488281249999964,
+ "412": -0.003628906249999983,
+ "413": -0.002347656249999997,
+ "414": -0.00381445312499998,
+ "415": -0.002853515624999991,
+ "416": -0.0033183593749999876,
+ "417": -0.0030390624999999893,
+ "418": -0.001378906250000001,
+ "419": -0.002113281249999998,
+ "420": -0.0011894531250000008,
+ "421": -0.001326171875000001,
+ "422": -0.0036464843749999826,
+ "423": -0.001330078125000001,
+ "424": -0.002359374999999997,
+ "425": -0.0020429687499999996,
+ "426": -0.0037128906249999814,
+ "427": -0.001347656250000001,
+ "428": -0.002624999999999994,
+ "429": -0.003734374999999981,
+ "430": -0.0025429687499999953,
+ "431": -0.0036835937499999825,
+ "432": -0.0026835937499999933,
+ "433": -0.0017714843750000014,
+ "434": -0.001357421875000001,
+ "435": -0.0010136718750000007,
+ "436": -0.0010214843750000007,
+ "437": -0.003658203124999982,
+ "438": -0.0038085937499999804,
+ "439": -0.0026328124999999937,
+ "440": -0.002916015624999991,
+ "441": -0.003232421874999988,
+ "442": -0.0018964843750000015,
+ "443": -0.002410156249999996,
+ "444": -0.003226562499999987,
+ "445": -0.0031035156249999926,
+ "446": -0.0025546874999999945,
+ "447": -0.0029667968749999903,
+ "448": -0.0028515624999999913,
+ "449": -0.0024492187499999957,
+ "450": -0.0035214843749999834,
+ "451": -0.0015000000000000011,
+ "452": -0.0025624999999999945,
+ "453": -0.004025390624999978,
+ "454": -0.0032949218749999862,
+ "455": -0.0032031249999999872,
+ "456": -0.0019218750000000015,
+ "457": -0.003367187499999985,
+ "458": -0.003496093749999984,
+ "459": -0.0029140624999999904,
+ "460": -0.0018261718750000014,
+ "461": -0.0010781250000000007,
+ "462": -0.0010390625000000007,
+ "463": -0.0027421874999999925,
+ "464": -0.0036953124999999816,
+ "465": -0.0024374999999999913,
+ "466": -0.0019375000000000015,
+ "467": -0.0025703124999999945,
+ "468": -0.002349609374999993,
+ "469": -0.002546874999999995,
+ "470": -0.0042148437499999825,
+ "471": -0.004666015624999981,
+ "472": -0.004138671874999977,
+ "473": -0.002207031249999999,
+ "474": -0.0026328124999999963,
+ "475": -0.0018515625000000014,
+ "476": -0.001271484375000001,
+ "477": -0.0017187500000000013,
+ "478": -0.003232421874999987,
+ "479": -0.002874999999999991,
+ "480": -0.0018281250000000014,
+ "481": -0.0029140624999999904,
+ "482": -0.0019687500000000013,
+ "483": -0.004111328124999977,
+ "484": -0.0024453124999999957,
+ "485": -0.0038281249999999874,
+ "486": -0.004062499999999978,
+ "487": -0.0019042968750000015,
+ "488": -0.0021894531249999987,
+ "489": -0.0022109374999999985,
+ "490": -0.0011171875000000008,
+ "491": -0.002316406249999994,
+ "492": -0.0029062499999999904,
+ "493": -0.0017265625000000013,
+ "494": -0.001250000000000001,
+ "495": -0.003070312499999989,
+ "496": -0.0029062499999999904,
+ "497": -0.0030214843749999895,
+ "498": -0.0022265624999999955,
+ "499": -0.004716796874999981,
+ "500": -0.0026464843749999935
+ },
+ "10": {
+ "1": -0.0056874999999999894,
+ "2": -0.00747851562499999,
+ "3": -0.006833984374999985,
+ "4": -0.007593749999999985,
+ "5": -0.006835937499999993,
+ "6": -0.008146484374999985,
+ "7": -0.007771484374999992,
+ "8": -0.006123046874999984,
+ "9": -0.0059335937499999875,
+ "10": -0.008173828124999989,
+ "11": -0.0036328124999999954,
+ "12": -0.00667187499999999,
+ "13": -0.007021484374999979,
+ "14": -0.00813867187499998,
+ "15": -0.006382812499999992,
+ "16": -0.005257812499999997,
+ "17": -0.004876953124999988,
+ "18": -0.0043535156249999915,
+ "19": -0.004062499999999997,
+ "20": -0.005537109374999995,
+ "21": -0.00531835937499999,
+ "22": -0.0035605468749999973,
+ "23": -0.00688867187499999,
+ "24": -0.003142578124999992,
+ "25": -0.0066347656249999935,
+ "26": -0.00485546874999999,
+ "27": -0.007535156249999982,
+ "28": -0.003816406249999994,
+ "29": -0.00459374999999999,
+ "30": -0.0031757812499999907,
+ "31": -0.004289062499999988,
+ "32": -0.005583984374999991,
+ "33": -0.0036816406249999944,
+ "34": -0.004199218749999997,
+ "35": -0.005341796874999999,
+ "36": -0.005712890624999989,
+ "37": -0.004912109374999996,
+ "38": -0.0045624999999999945,
+ "39": -0.00427734374999999,
+ "40": -0.0021874999999999998,
+ "41": -0.005058593749999996,
+ "42": -0.0038867187499999948,
+ "43": -0.0040859374999999976,
+ "44": -0.0036953124999999968,
+ "45": -0.004287109374999991,
+ "46": -0.0023867187499999978,
+ "47": -0.002908203124999994,
+ "48": -0.0032890624999999955,
+ "49": -0.002203125,
+ "50": -0.0038437499999999934,
+ "51": -0.0036601562499999924,
+ "52": -0.0037871093749999936,
+ "53": -0.0019648437500000013,
+ "54": -0.0034003906249999907,
+ "55": -0.0035429687499999936,
+ "56": -0.004603515624999981,
+ "57": -0.0031249999999999937,
+ "58": -0.00219140625,
+ "59": -0.0028398437499999956,
+ "60": -0.0038203124999999913,
+ "61": -0.0022089843749999987,
+ "62": -0.0026054687499999984,
+ "63": -0.003580078124999993,
+ "64": -0.0030449218749999955,
+ "65": -0.004914062499999998,
+ "66": -0.004173828124999992,
+ "67": -0.004599609374999994,
+ "68": -0.004462890624999991,
+ "69": -0.0018144531250000014,
+ "70": -0.0020097656250000007,
+ "71": -0.0027832031249999966,
+ "72": -0.001988281250000001,
+ "73": -0.003806640624999993,
+ "74": -0.0017187500000000013,
+ "75": -0.004962890624999999,
+ "76": -0.002470703124999999,
+ "77": -0.002521484374999999,
+ "78": -0.0017792968750000014,
+ "79": -0.003863281249999994,
+ "80": -0.0041113281249999896,
+ "81": -0.00221484375,
+ "82": -0.004490234374999996,
+ "83": -0.0019453125000000015,
+ "84": -0.004929687499999982,
+ "85": -0.0019746093750000015,
+ "86": -0.0015175781250000011,
+ "87": -0.003984374999999993,
+ "88": -0.002595703124999997,
+ "89": -0.002339843749999997,
+ "90": -0.0037382812499999894,
+ "91": -0.0027753906249999966,
+ "92": -0.00407812499999999,
+ "93": -0.001966796875000001,
+ "94": -0.0027421874999999977,
+ "95": -0.001476562500000001,
+ "96": -0.004964843749999987,
+ "97": -0.002789062499999996,
+ "98": -0.0031367187499999937,
+ "99": -0.002882812499999995,
+ "100": -0.0018515625000000014,
+ "101": -0.004320312499999989,
+ "102": -0.0018964843750000015,
+ "103": -0.003347656249999993,
+ "104": -0.0019238281250000015,
+ "105": -0.00447070312499999,
+ "106": -0.003396484374999994,
+ "107": -0.002234374999999999,
+ "108": -0.002998046874999997,
+ "109": -0.0030781249999999945,
+ "110": -0.0023613281249999975,
+ "111": -0.0031308593749999943,
+ "112": -0.004224609374999987,
+ "113": -0.003994140624999995,
+ "114": -0.0023515624999999986,
+ "115": -0.0018125000000000014,
+ "116": -0.004687499999999984,
+ "117": -0.004015624999999989,
+ "118": -0.004597656249999991,
+ "119": -0.0021113281249999995,
+ "120": -0.0043769531249999915,
+ "121": -0.002767578124999998,
+ "122": -0.0033574218749999967,
+ "123": -0.0030781249999999954,
+ "124": -0.0023964843749999963,
+ "125": -0.0041406249999999855,
+ "126": -0.003074218749999995,
+ "127": -0.0025644531249999904,
+ "128": -0.0015937500000000012,
+ "129": -0.003039062499999992,
+ "130": -0.0023710937499999978,
+ "131": -0.0036445312499999894,
+ "132": -0.002246093749999998,
+ "133": -0.0024335937499999965,
+ "134": -0.0018066406250000014,
+ "135": -0.0021640624999999998,
+ "136": -0.0037285156249999905,
+ "137": -0.004705078124999984,
+ "138": -0.001376953125000001,
+ "139": -0.003066406249999993,
+ "140": -0.00375781249999999,
+ "141": -0.0019414062500000015,
+ "142": -0.003253906249999991,
+ "143": -0.0033398437499999917,
+ "144": -0.003064453124999995,
+ "145": -0.0021796874999999985,
+ "146": -0.003060546874999993,
+ "147": -0.004011718749999986,
+ "148": -0.0037695312499999908,
+ "149": -0.001488281250000001,
+ "150": -0.002130859375,
+ "151": -0.003917968749999993,
+ "152": -0.0018300781250000014,
+ "153": -0.0029355468749999968,
+ "154": -0.0028281249999999956,
+ "155": -0.0036249999999999893,
+ "156": -0.0029843749999999944,
+ "157": -0.004470703124999989,
+ "158": -0.0023164062499999964,
+ "159": -0.003740234374999985,
+ "160": -0.0017929687500000014,
+ "161": -0.0021953124999999998,
+ "162": -0.002472656249999998,
+ "163": -0.0027343749999999964,
+ "164": -0.0015566406250000012,
+ "165": -0.003275390624999993,
+ "166": -0.0022304687499999994,
+ "167": -0.001253906250000001,
+ "168": -0.0019687500000000013,
+ "169": -0.004820312499999981,
+ "170": -0.0026503906249999965,
+ "171": -0.0027402343749999953,
+ "172": -0.0034511718749999894,
+ "173": -0.0017558593750000013,
+ "174": -0.0024707031249999968,
+ "175": -0.0020410156250000007,
+ "176": -0.0037910156249999893,
+ "177": -0.003085937499999992,
+ "178": -0.002701171874999995,
+ "179": -0.0029550781249999946,
+ "180": -0.0030371093749999934,
+ "181": -0.0016992187500000013,
+ "182": -0.0037304687499999916,
+ "183": -0.003999999999999991,
+ "184": -0.00438085937499999,
+ "185": -0.004097656249999993,
+ "186": -0.0017617187500000013,
+ "187": -0.0029355468749999968,
+ "188": -0.003964843749999994,
+ "189": -0.002728515624999999,
+ "190": -0.0033027343749999997,
+ "191": -0.004998046874999998,
+ "192": -0.005269531249999993,
+ "193": -0.0014921875000000011,
+ "194": -0.004787109374999993,
+ "195": -0.0030937499999999962,
+ "196": -0.0016210937500000012,
+ "197": -0.003964843749999998,
+ "198": -0.003099609374999993,
+ "199": -0.0038593749999999943,
+ "200": -0.0035917968749999947,
+ "201": -0.0038124999999999912,
+ "202": -0.003412109374999993,
+ "203": -0.003513671874999994,
+ "204": -0.0024140624999999987,
+ "205": -0.0016523437500000013,
+ "206": -0.004398437499999996,
+ "207": -0.0017324218750000013,
+ "208": -0.0057167968749999975,
+ "209": -0.004789062499999995,
+ "210": -0.002066406250000001,
+ "211": -0.003035156249999999,
+ "212": -0.0031347656249999948,
+ "213": -0.0016660156250000013,
+ "214": -0.004468749999999996,
+ "215": -0.0019453125000000015,
+ "216": -0.004248046874999998,
+ "217": -0.001429687500000001,
+ "218": -0.004951171874999988,
+ "219": -0.004892578124999994,
+ "220": -0.0031523437499999963,
+ "221": -0.0031582031249999996,
+ "222": -0.005769531249999999,
+ "223": -0.0033164062499999973,
+ "224": -0.0026191406250000004,
+ "225": -0.003390624999999999,
+ "226": -0.002664062499999999,
+ "227": -0.004720703124999996,
+ "228": -0.0020488281250000007,
+ "229": -0.003802734375,
+ "230": -0.0018730468750000014,
+ "231": -0.0026796874999999998,
+ "232": -0.0027128906249999974,
+ "233": -0.0034316406249999976,
+ "234": -0.0031191406249999965,
+ "235": -0.004863281249999995,
+ "236": -0.002345703125000001,
+ "237": -0.004121093749999993,
+ "238": -0.0016933593750000013,
+ "239": -0.001273437500000001,
+ "240": -0.004236328124999997,
+ "241": -0.004453124999999999,
+ "242": -0.0042031249999999985,
+ "243": -0.004150390624999998,
+ "244": -0.0015878906250000012,
+ "245": -0.0025976562499999962,
+ "246": -0.003505859374999997,
+ "247": -0.0034511718749999907,
+ "248": -0.003939453124999994,
+ "249": -0.002187499999999998,
+ "250": -0.002080078125,
+ "251": -0.001453125000000001,
+ "252": -0.003800781249999991,
+ "253": -0.002554687499999998,
+ "254": -0.0028378906249999967,
+ "255": -0.003431640624999993,
+ "256": -0.002378906249999998,
+ "257": -0.0020976562499999984,
+ "258": -0.003718749999999997,
+ "259": -0.0038925781249999963,
+ "260": -0.0018847656250000015,
+ "261": -0.0043769531249999915,
+ "262": -0.0017636718750000013,
+ "263": -0.0026894531249999974,
+ "264": -0.003871093749999986,
+ "265": -0.002623046874999993,
+ "266": -0.0015078125000000011,
+ "267": -0.003367187499999994,
+ "268": -0.0024902343749999977,
+ "269": -0.0029433593749999985,
+ "270": -0.0012070312500000009,
+ "271": -0.002531249999999997,
+ "272": -0.0031699218749999913,
+ "273": -0.004115234374999989,
+ "274": -0.0017617187500000013,
+ "275": -0.001347656250000001,
+ "276": -0.001300781250000001,
+ "277": -0.00226953125,
+ "278": -0.0024628906249999968,
+ "279": -0.0018281250000000014,
+ "280": -0.0031445312499999933,
+ "281": -0.0015039062500000011,
+ "282": -0.0023554687499999956,
+ "283": -0.0034902343749999916,
+ "284": -0.00353906249999999,
+ "285": -0.0020898437499999993,
+ "286": -0.004550781249999988,
+ "287": -0.003126953124999994,
+ "288": -0.0023671874999999986,
+ "289": -0.0038632812499999835,
+ "290": -0.0027519531249999944,
+ "291": -0.0033691406249999893,
+ "292": -0.003472656249999992,
+ "293": -0.0029882812499999935,
+ "294": -0.0017675781250000014,
+ "295": -0.0031347656249999887,
+ "296": -0.0024433593749999976,
+ "297": -0.0020019531250000003,
+ "298": -0.0021171874999999984,
+ "299": -0.00322851562499999,
+ "300": -0.0034882812499999866,
+ "301": -0.004734374999999982,
+ "302": -0.0033300781249999876,
+ "303": -0.0032265624999999916,
+ "304": -0.003771484374999985,
+ "305": -0.0016230468750000012,
+ "306": -0.003996093749999986,
+ "307": -0.002591796874999995,
+ "308": -0.0018496093750000014,
+ "309": -0.003316406249999989,
+ "310": -0.001332031250000001,
+ "311": -0.0025078124999999953,
+ "312": -0.0036972656249999914,
+ "313": -0.0022226562499999985,
+ "314": -0.0009746093750000008,
+ "315": -0.0017773437500000014,
+ "316": -0.0032285156249999896,
+ "317": -0.003199218749999989,
+ "318": -0.0021542968749999987,
+ "319": -0.002068359374999999,
+ "320": -0.0021503906249999987,
+ "321": -0.0019648437500000013,
+ "322": -0.0020507812499999992,
+ "323": -0.0014980468750000011,
+ "324": -0.0031914062499999907,
+ "325": -0.002322265624999996,
+ "326": -0.0026933593749999905,
+ "327": -0.0037773437499999877,
+ "328": -0.0016152343750000012,
+ "329": -0.00371484374999999,
+ "330": -0.003337890624999987,
+ "331": -0.0029140624999999926,
+ "332": -0.0020605468750000003,
+ "333": -0.002775390624999993,
+ "334": -0.001273437500000001,
+ "335": -0.0038828124999999874,
+ "336": -0.004093749999999985,
+ "337": -0.0028183593749999927,
+ "338": -0.002058593750000001,
+ "339": -0.002193359374999998,
+ "340": -0.0022558593749999966,
+ "341": -0.003140624999999991,
+ "342": -0.001267578125000001,
+ "343": -0.001488281250000001,
+ "344": -0.002667968749999995,
+ "345": -0.003373046874999992,
+ "346": -0.00349218749999999,
+ "347": -0.0018007812500000014,
+ "348": -0.002908203124999994,
+ "349": -0.00201171875,
+ "350": -0.0023886718749999984,
+ "351": -0.0038124999999999878,
+ "352": -0.0034960937499999905,
+ "353": -0.004259765624999988,
+ "354": -0.0025390624999999975,
+ "355": -0.0017011718750000013,
+ "356": -0.00305664062499999,
+ "357": -0.003320312499999987,
+ "358": -0.004166015624999986,
+ "359": -0.0019023437500000015,
+ "360": -0.0035800781249999874,
+ "361": -0.005548828124999979,
+ "362": -0.0020546874999999992,
+ "363": -0.0017089843750000013,
+ "364": -0.0018574218750000014,
+ "365": -0.005189453124999979,
+ "366": -0.001470703125000001,
+ "367": -0.004623046874999986,
+ "368": -0.0028730468749999932,
+ "369": -0.0021914062499999976,
+ "370": -0.003601562499999989,
+ "371": -0.001421875000000001,
+ "372": -0.0018281250000000014,
+ "373": -0.004169921874999994,
+ "374": -0.0031855468749999965,
+ "375": -0.005310546874999992,
+ "376": -0.0018339843750000014,
+ "377": -0.004070312499999992,
+ "378": -0.0035664062499999915,
+ "379": -0.0025117187499999988,
+ "380": -0.0020957031250000008,
+ "381": -0.003373046874999997,
+ "382": -0.0034628906249999933,
+ "383": -0.001384765625000001,
+ "384": -0.0028457031249999967,
+ "385": -0.00309570312499999,
+ "386": -0.0023671875,
+ "387": -0.0020000000000000013,
+ "388": -0.0017617187500000013,
+ "389": -0.0030195312499999975,
+ "390": -0.0020019531250000003,
+ "391": -0.005371093749999985,
+ "392": -0.004064453124999989,
+ "393": -0.001392578125000001,
+ "394": -0.001382812500000001,
+ "395": -0.0022792968749999988,
+ "396": -0.0018886718750000015,
+ "397": -0.0018007812500000014,
+ "398": -0.0032070312499999985,
+ "399": -0.0014960937500000011,
+ "400": -0.0032148437499999964,
+ "401": -0.003427734374999999,
+ "402": -0.0027949218749999992,
+ "403": -0.0042890624999999925,
+ "404": -0.0034804687499999944,
+ "405": -0.002980468749999996,
+ "406": -0.004130859374999994,
+ "407": -0.004324218749999995,
+ "408": -0.0017656250000000014,
+ "409": -0.0024199218749999993,
+ "410": -0.001980468750000001,
+ "411": -0.0036406249999999933,
+ "412": -0.0021347656250000004,
+ "413": -0.004253906249999993,
+ "414": -0.0017324218750000013,
+ "415": -0.0036347656249999852,
+ "416": -0.003384765624999995,
+ "417": -0.0023027343749999984,
+ "418": -0.0030761718749999925,
+ "419": -0.004667968749999998,
+ "420": -0.0020996093749999986,
+ "421": -0.0019765625000000013,
+ "422": -0.001457031250000001,
+ "423": -0.003412109374999995,
+ "424": -0.0018847656250000015,
+ "425": -0.001486328125000001,
+ "426": -0.0032031249999999916,
+ "427": -0.003431640624999989,
+ "428": -0.0029824218749999938,
+ "429": -0.0017636718750000013,
+ "430": -0.001421875000000001,
+ "431": -0.0023027343749999958,
+ "432": -0.001287109375000001,
+ "433": -0.0011679687500000008,
+ "434": -0.003300781249999988,
+ "435": -0.0010898437500000008,
+ "436": -0.001460937500000001,
+ "437": -0.0026757812499999933,
+ "438": -0.002923828124999992,
+ "439": -0.0015566406250000012,
+ "440": -0.003210937499999989,
+ "441": -0.0018164062500000014,
+ "442": -0.004201171874999985,
+ "443": -0.002999999999999992,
+ "444": -0.0029667968749999903,
+ "445": -0.001281250000000001,
+ "446": -0.003062499999999993,
+ "447": -0.003705078124999982,
+ "448": -0.003224609374999987,
+ "449": -0.0029277343749999902,
+ "450": -0.003953124999999979,
+ "451": -0.0009707031250000008,
+ "452": -0.0012226562500000009,
+ "453": -0.0024667968749999955,
+ "454": -0.003550781249999984,
+ "455": -0.0011328125000000008,
+ "456": -0.0023300781249999975,
+ "457": -0.001480468750000001,
+ "458": -0.0020468749999999996,
+ "459": -0.0012246093750000009,
+ "460": -0.003113281249999992,
+ "461": -0.0016621093750000013,
+ "462": -0.0018925781250000015,
+ "463": -0.003228515624999991,
+ "464": -0.003044921874999992,
+ "465": -0.001462890625000001,
+ "466": -0.003291015624999988,
+ "467": -0.0031464843749999896,
+ "468": -0.002929687499999994,
+ "469": -0.002605468749999995,
+ "470": -0.003089843749999991,
+ "471": -0.0023886718749999967,
+ "472": -0.0022265624999999994,
+ "473": -0.0030664062499999936,
+ "474": -0.002119140624999999,
+ "475": -0.0027792968749999927,
+ "476": -0.001326171875000001,
+ "477": -0.001435546875000001,
+ "478": -0.0015644531250000012,
+ "479": -0.005091796874999982,
+ "480": -0.003734374999999988,
+ "481": -0.001402343750000001,
+ "482": -0.0032851562499999873,
+ "483": -0.0032480468749999884,
+ "484": -0.0009570312500000007,
+ "485": -0.0028378906249999915,
+ "486": -0.003279296874999986,
+ "487": -0.001406250000000001,
+ "488": -0.00316015624999999,
+ "489": -0.002562499999999995,
+ "490": -0.0027109374999999933,
+ "491": -0.002824218749999994,
+ "492": -0.001337890625000001,
+ "493": -0.0010019531250000007,
+ "494": -0.0020195312500000005,
+ "495": -0.0037832031249999836,
+ "496": -0.003121093749999992,
+ "497": -0.0016289062500000012,
+ "498": -0.003666015624999986,
+ "499": -0.0012402343750000009,
+ "500": -0.00407421874999998
+ }
+ },
+ "training_config": {
+ "agent_framework": "SB3",
+ "deep_learning_framework": "TF2",
+ "agent_identifier": "PPO",
+ "random_red_agent": true,
+ "seed": null,
+ "deterministic": false,
+ "hard_coded_agent_view": "FULL",
+ "action_type": "NODE",
+ "observation_space": {
+ "flatten": true,
+ "components": [
+ {
+ "name": "NODE_LINK_TABLE"
+ },
+ {
+ "name": "NODE_STATUSES"
+ },
+ {
+ "name": "LINK_TRAFFIC_LEVELS"
+ }
+ ]
+ },
+ "num_train_episodes": 500,
+ "num_train_steps": 256,
+ "num_eval_episodes": 1,
+ "num_eval_steps": 256,
+ "checkpoint_every_n_episodes": 0,
+ "time_delay": 5,
+ "session_type": "TRAIN",
+ "observation_space_high_value": 1000000000,
+ "sb3_output_verbose_level": "NONE",
+ "all_ok": 0,
+ "off_should_be_on": -0.001,
+ "off_should_be_resetting": -0.0005,
+ "on_should_be_off": -0.0002,
+ "on_should_be_resetting": -0.0005,
+ "resetting_should_be_on": -0.0005,
+ "resetting_should_be_off": -0.0002,
+ "resetting": -0.0003,
+ "good_should_be_patching": 0.0002,
+ "good_should_be_compromised": 0.0005,
+ "good_should_be_overwhelmed": 0.0005,
+ "patching_should_be_good": -0.0005,
+ "patching_should_be_compromised": 0.0002,
+ "patching_should_be_overwhelmed": 0.0002,
+ "patching": -0.0003,
+ "compromised_should_be_good": -0.002,
+ "compromised_should_be_patching": -0.002,
+ "compromised_should_be_overwhelmed": -0.002,
+ "compromised": -0.002,
+ "overwhelmed_should_be_good": -0.002,
+ "overwhelmed_should_be_patching": -0.002,
+ "overwhelmed_should_be_compromised": -0.002,
+ "overwhelmed": -0.002,
+ "good_should_be_repairing": 0.0002,
+ "good_should_be_restoring": 0.0002,
+ "good_should_be_corrupt": 0.0005,
+ "good_should_be_destroyed": 0.001,
+ "repairing_should_be_good": -0.0005,
+ "repairing_should_be_restoring": 0.0002,
+ "repairing_should_be_corrupt": 0.0002,
+ "repairing_should_be_destroyed": 0.0,
+ "repairing": -0.0003,
+ "restoring_should_be_good": -0.001,
+ "restoring_should_be_repairing": -0.0002,
+ "restoring_should_be_corrupt": 0.0001,
+ "restoring_should_be_destroyed": 0.0002,
+ "restoring": -0.0006,
+ "corrupt_should_be_good": -0.001,
+ "corrupt_should_be_repairing": -0.001,
+ "corrupt_should_be_restoring": -0.001,
+ "corrupt_should_be_destroyed": 0.0002,
+ "corrupt": -0.001,
+ "destroyed_should_be_good": -0.002,
+ "destroyed_should_be_repairing": -0.002,
+ "destroyed_should_be_restoring": -0.002,
+ "destroyed_should_be_corrupt": -0.002,
+ "destroyed": -0.002,
+ "scanning": -0.0002,
+ "red_ier_running": -0.0005,
+ "green_ier_blocked": -0.001,
+ "os_patching_duration": 5,
+ "node_reset_duration": 5,
+ "service_patching_duration": 5,
+ "file_system_repairing_limit": 5,
+ "file_system_restoring_limit": 5,
+ "file_system_scanning_limit": 5
+ },
+ "lay_down_config": [
+ {
+ "item_type": "PORTS",
+ "ports_list": [
+ {
+ "port": "80"
+ },
+ {
+ "port": "1433"
+ },
+ {
+ "port": "53"
+ }
+ ]
+ },
+ {
+ "item_type": "SERVICES",
+ "service_list": [
+ {
+ "name": "TCP"
+ },
+ {
+ "name": "TCP_SQL"
+ },
+ {
+ "name": "UDP"
+ }
+ ]
+ },
+ {
+ "item_type": "NODE",
+ "node_id": "1",
+ "name": "CLIENT_1",
+ "node_class": "SERVICE",
+ "node_type": "COMPUTER",
+ "priority": "P5",
+ "hardware_state": "ON",
+ "ip_address": "192.168.10.11",
+ "software_state": "GOOD",
+ "file_system_state": "GOOD",
+ "services": [
+ {
+ "name": "TCP",
+ "port": "80",
+ "state": "GOOD"
+ },
+ {
+ "name": "UDP",
+ "port": "53",
+ "state": "GOOD"
+ }
+ ]
+ },
+ {
+ "item_type": "NODE",
+ "node_id": "2",
+ "name": "CLIENT_2",
+ "node_class": "SERVICE",
+ "node_type": "COMPUTER",
+ "priority": "P5",
+ "hardware_state": "ON",
+ "ip_address": "192.168.10.12",
+ "software_state": "GOOD",
+ "file_system_state": "GOOD",
+ "services": [
+ {
+ "name": "TCP",
+ "port": "80",
+ "state": "GOOD"
+ }
+ ]
+ },
+ {
+ "item_type": "NODE",
+ "node_id": "3",
+ "name": "SWITCH_1",
+ "node_class": "ACTIVE",
+ "node_type": "SWITCH",
+ "priority": "P2",
+ "hardware_state": "ON",
+ "ip_address": "192.168.10.1",
+ "software_state": "GOOD",
+ "file_system_state": "GOOD"
+ },
+ {
+ "item_type": "NODE",
+ "node_id": "4",
+ "name": "SECURITY_SUITE",
+ "node_class": "SERVICE",
+ "node_type": "SERVER",
+ "priority": "P5",
+ "hardware_state": "ON",
+ "ip_address": "192.168.1.10",
+ "software_state": "GOOD",
+ "file_system_state": "GOOD",
+ "services": [
+ {
+ "name": "TCP",
+ "port": "80",
+ "state": "GOOD"
+ },
+ {
+ "name": "UDP",
+ "port": "53",
+ "state": "GOOD"
+ }
+ ]
+ },
+ {
+ "item_type": "NODE",
+ "node_id": "5",
+ "name": "MANAGEMENT_CONSOLE",
+ "node_class": "SERVICE",
+ "node_type": "SERVER",
+ "priority": "P5",
+ "hardware_state": "ON",
+ "ip_address": "192.168.1.12",
+ "software_state": "GOOD",
+ "file_system_state": "GOOD",
+ "services": [
+ {
+ "name": "TCP",
+ "port": "80",
+ "state": "GOOD"
+ },
+ {
+ "name": "UDP",
+ "port": "53",
+ "state": "GOOD"
+ }
+ ]
+ },
+ {
+ "item_type": "NODE",
+ "node_id": "6",
+ "name": "SWITCH_2",
+ "node_class": "ACTIVE",
+ "node_type": "SWITCH",
+ "priority": "P2",
+ "hardware_state": "ON",
+ "ip_address": "192.168.2.1",
+ "software_state": "GOOD",
+ "file_system_state": "GOOD"
+ },
+ {
+ "item_type": "NODE",
+ "node_id": "7",
+ "name": "WEB_SERVER",
+ "node_class": "SERVICE",
+ "node_type": "SERVER",
+ "priority": "P5",
+ "hardware_state": "ON",
+ "ip_address": "192.168.2.10",
+ "software_state": "GOOD",
+ "file_system_state": "GOOD",
+ "services": [
+ {
+ "name": "TCP",
+ "port": "80",
+ "state": "GOOD"
+ },
+ {
+ "name": "TCP_SQL",
+ "port": "1433",
+ "state": "GOOD"
+ }
+ ]
+ },
+ {
+ "item_type": "NODE",
+ "node_id": "8",
+ "name": "DATABASE_SERVER",
+ "node_class": "SERVICE",
+ "node_type": "SERVER",
+ "priority": "P5",
+ "hardware_state": "ON",
+ "ip_address": "192.168.2.14",
+ "software_state": "GOOD",
+ "file_system_state": "GOOD",
+ "services": [
+ {
+ "name": "TCP",
+ "port": "80",
+ "state": "GOOD"
+ },
+ {
+ "name": "TCP_SQL",
+ "port": "1433",
+ "state": "GOOD"
+ },
+ {
+ "name": "UDP",
+ "port": "53",
+ "state": "GOOD"
+ }
+ ]
+ },
+ {
+ "item_type": "NODE",
+ "node_id": "9",
+ "name": "BACKUP_SERVER",
+ "node_class": "SERVICE",
+ "node_type": "SERVER",
+ "priority": "P5",
+ "hardware_state": "ON",
+ "ip_address": "192.168.2.16",
+ "software_state": "GOOD",
+ "file_system_state": "GOOD",
+ "services": [
+ {
+ "name": "TCP",
+ "port": "80",
+ "state": "GOOD"
+ }
+ ]
+ },
+ {
+ "item_type": "LINK",
+ "id": "10",
+ "name": "LINK_1",
+ "bandwidth": 1000000000,
+ "source": "1",
+ "destination": "3"
+ },
+ {
+ "item_type": "LINK",
+ "id": "11",
+ "name": "LINK_2",
+ "bandwidth": 1000000000,
+ "source": "2",
+ "destination": "3"
+ },
+ {
+ "item_type": "LINK",
+ "id": "12",
+ "name": "LINK_3",
+ "bandwidth": 1000000000,
+ "source": "3",
+ "destination": "4"
+ },
+ {
+ "item_type": "LINK",
+ "id": "13",
+ "name": "LINK_4",
+ "bandwidth": 1000000000,
+ "source": "3",
+ "destination": "5"
+ },
+ {
+ "item_type": "LINK",
+ "id": "14",
+ "name": "LINK_5",
+ "bandwidth": 1000000000,
+ "source": "4",
+ "destination": "6"
+ },
+ {
+ "item_type": "LINK",
+ "id": "15",
+ "name": "LINK_6",
+ "bandwidth": 1000000000,
+ "source": "5",
+ "destination": "6"
+ },
+ {
+ "item_type": "LINK",
+ "id": "16",
+ "name": "LINK_7",
+ "bandwidth": 1000000000,
+ "source": "6",
+ "destination": "7"
+ },
+ {
+ "item_type": "LINK",
+ "id": "17",
+ "name": "LINK_8",
+ "bandwidth": 1000000000,
+ "source": "6",
+ "destination": "8"
+ },
+ {
+ "item_type": "LINK",
+ "id": "18",
+ "name": "LINK_9",
+ "bandwidth": 1000000000,
+ "source": "6",
+ "destination": "9"
+ },
+ {
+ "item_type": "GREEN_IER",
+ "id": "19",
+ "start_step": 1,
+ "end_step": 256,
+ "load": 10000,
+ "protocol": "TCP",
+ "port": "80",
+ "source": "1",
+ "destination": "7",
+ "mission_criticality": 5
+ },
+ {
+ "item_type": "GREEN_IER",
+ "id": "20",
+ "start_step": 1,
+ "end_step": 256,
+ "load": 10000,
+ "protocol": "TCP",
+ "port": "80",
+ "source": "7",
+ "destination": "1",
+ "mission_criticality": 5
+ },
+ {
+ "item_type": "GREEN_IER",
+ "id": "21",
+ "start_step": 1,
+ "end_step": 256,
+ "load": 10000,
+ "protocol": "TCP",
+ "port": "80",
+ "source": "2",
+ "destination": "7",
+ "mission_criticality": 5
+ },
+ {
+ "item_type": "GREEN_IER",
+ "id": "22",
+ "start_step": 1,
+ "end_step": 256,
+ "load": 10000,
+ "protocol": "TCP",
+ "port": "80",
+ "source": "7",
+ "destination": "2",
+ "mission_criticality": 5
+ },
+ {
+ "item_type": "GREEN_IER",
+ "id": "23",
+ "start_step": 1,
+ "end_step": 256,
+ "load": 5000,
+ "protocol": "TCP_SQL",
+ "port": "1433",
+ "source": "7",
+ "destination": "8",
+ "mission_criticality": 5
+ },
+ {
+ "item_type": "GREEN_IER",
+ "id": "24",
+ "start_step": 1,
+ "end_step": 256,
+ "load": 100000,
+ "protocol": "TCP_SQL",
+ "port": "1433",
+ "source": "8",
+ "destination": "7",
+ "mission_criticality": 5
+ },
+ {
+ "item_type": "GREEN_IER",
+ "id": "25",
+ "start_step": 1,
+ "end_step": 256,
+ "load": 50000,
+ "protocol": "TCP",
+ "port": "80",
+ "source": "1",
+ "destination": "9",
+ "mission_criticality": 2
+ },
+ {
+ "item_type": "GREEN_IER",
+ "id": "26",
+ "start_step": 1,
+ "end_step": 256,
+ "load": 50000,
+ "protocol": "TCP",
+ "port": "80",
+ "source": "2",
+ "destination": "9",
+ "mission_criticality": 2
+ },
+ {
+ "item_type": "GREEN_IER",
+ "id": "27",
+ "start_step": 1,
+ "end_step": 256,
+ "load": 5000,
+ "protocol": "TCP",
+ "port": "80",
+ "source": "5",
+ "destination": "7",
+ "mission_criticality": 1
+ },
+ {
+ "item_type": "GREEN_IER",
+ "id": "28",
+ "start_step": 1,
+ "end_step": 256,
+ "load": 5000,
+ "protocol": "TCP",
+ "port": "80",
+ "source": "7",
+ "destination": "5",
+ "mission_criticality": 1
+ },
+ {
+ "item_type": "GREEN_IER",
+ "id": "29",
+ "start_step": 1,
+ "end_step": 256,
+ "load": 5000,
+ "protocol": "TCP",
+ "port": "80",
+ "source": "5",
+ "destination": "8",
+ "mission_criticality": 1
+ },
+ {
+ "item_type": "GREEN_IER",
+ "id": "30",
+ "start_step": 1,
+ "end_step": 256,
+ "load": 5000,
+ "protocol": "TCP",
+ "port": "80",
+ "source": "8",
+ "destination": "5",
+ "mission_criticality": 1
+ },
+ {
+ "item_type": "GREEN_IER",
+ "id": "31",
+ "start_step": 1,
+ "end_step": 256,
+ "load": 5000,
+ "protocol": "TCP",
+ "port": "80",
+ "source": "5",
+ "destination": "9",
+ "mission_criticality": 1
+ },
+ {
+ "item_type": "GREEN_IER",
+ "id": "32",
+ "start_step": 1,
+ "end_step": 256,
+ "load": 5000,
+ "protocol": "TCP",
+ "port": "80",
+ "source": "9",
+ "destination": "5",
+ "mission_criticality": 1
+ },
+ {
+ "item_type": "ACL_RULE",
+ "id": "33",
+ "permission": "ALLOW",
+ "source": "192.168.10.11",
+ "destination": "192.168.2.10",
+ "protocol": "ANY",
+ "port": "ANY",
+ "position": 0
+ },
+ {
+ "item_type": "ACL_RULE",
+ "id": "34",
+ "permission": "ALLOW",
+ "source": "192.168.10.11",
+ "destination": "192.168.2.14",
+ "protocol": "ANY",
+ "port": "ANY",
+ "position": 1
+ },
+ {
+ "item_type": "ACL_RULE",
+ "id": "35",
+ "permission": "ALLOW",
+ "source": "192.168.10.12",
+ "destination": "192.168.2.14",
+ "protocol": "ANY",
+ "port": "ANY",
+ "position": 2
+ },
+ {
+ "item_type": "ACL_RULE",
+ "id": "36",
+ "permission": "ALLOW",
+ "source": "192.168.10.12",
+ "destination": "192.168.2.10",
+ "protocol": "ANY",
+ "port": "ANY",
+ "position": 3
+ },
+ {
+ "item_type": "ACL_RULE",
+ "id": "37",
+ "permission": "ALLOW",
+ "source": "192.168.2.10",
+ "destination": "192.168.10.11",
+ "protocol": "ANY",
+ "port": "ANY",
+ "position": 4
+ },
+ {
+ "item_type": "ACL_RULE",
+ "id": "38",
+ "permission": "ALLOW",
+ "source": "192.168.2.10",
+ "destination": "192.168.10.12",
+ "protocol": "ANY",
+ "port": "ANY",
+ "position": 5
+ },
+ {
+ "item_type": "ACL_RULE",
+ "id": "39",
+ "permission": "ALLOW",
+ "source": "192.168.2.10",
+ "destination": "192.168.2.14",
+ "protocol": "ANY",
+ "port": "ANY",
+ "position": 6
+ },
+ {
+ "item_type": "ACL_RULE",
+ "id": "40",
+ "permission": "ALLOW",
+ "source": "192.168.2.14",
+ "destination": "192.168.2.10",
+ "protocol": "ANY",
+ "port": "ANY",
+ "position": 7
+ },
+ {
+ "item_type": "ACL_RULE",
+ "id": "41",
+ "permission": "ALLOW",
+ "source": "192.168.10.11",
+ "destination": "192.168.2.16",
+ "protocol": "ANY",
+ "port": "ANY",
+ "position": 8
+ },
+ {
+ "item_type": "ACL_RULE",
+ "id": "42",
+ "permission": "ALLOW",
+ "source": "192.168.10.12",
+ "destination": "192.168.2.16",
+ "protocol": "ANY",
+ "port": "ANY",
+ "position": 9
+ },
+ {
+ "item_type": "ACL_RULE",
+ "id": "43",
+ "permission": "ALLOW",
+ "source": "192.168.1.12",
+ "destination": "192.168.2.10",
+ "protocol": "ANY",
+ "port": "ANY",
+ "position": 10
+ },
+ {
+ "item_type": "ACL_RULE",
+ "id": "44",
+ "permission": "ALLOW",
+ "source": "192.168.1.12",
+ "destination": "192.168.2.14",
+ "protocol": "ANY",
+ "port": "ANY",
+ "position": 11
+ },
+ {
+ "item_type": "ACL_RULE",
+ "id": "45",
+ "permission": "ALLOW",
+ "source": "192.168.1.12",
+ "destination": "192.168.2.16",
+ "protocol": "ANY",
+ "port": "ANY",
+ "position": 12
+ },
+ {
+ "item_type": "ACL_RULE",
+ "id": "46",
+ "permission": "ALLOW",
+ "source": "192.168.2.10",
+ "destination": "192.168.1.12",
+ "protocol": "ANY",
+ "port": "ANY",
+ "position": 13
+ },
+ {
+ "item_type": "ACL_RULE",
+ "id": "47",
+ "permission": "ALLOW",
+ "source": "192.168.2.14",
+ "destination": "192.168.1.12",
+ "protocol": "ANY",
+ "port": "ANY",
+ "position": 14
+ },
+ {
+ "item_type": "ACL_RULE",
+ "id": "48",
+ "permission": "ALLOW",
+ "source": "192.168.2.16",
+ "destination": "192.168.1.12",
+ "protocol": "ANY",
+ "port": "ANY",
+ "position": 15
+ },
+ {
+ "item_type": "ACL_RULE",
+ "id": "49",
+ "permission": "DENY",
+ "source": "ANY",
+ "destination": "ANY",
+ "protocol": "ANY",
+ "port": "ANY",
+ "position": 16
+ },
+ {
+ "item_type": "RED_POL",
+ "id": "50",
+ "start_step": 50,
+ "end_step": 50,
+ "targetNodeId": "1",
+ "initiator": "DIRECT",
+ "type": "SERVICE",
+ "protocol": "UDP",
+ "state": "COMPROMISED",
+ "sourceNodeId": "NA",
+ "sourceNodeService": "NA",
+ "sourceNodeServiceState": "NA"
+ },
+ {
+ "item_type": "RED_IER",
+ "id": "51",
+ "start_step": 75,
+ "end_step": 105,
+ "load": 10000,
+ "protocol": "UDP",
+ "port": "53",
+ "source": "1",
+ "destination": "8",
+ "mission_criticality": 0
+ },
+ {
+ "item_type": "RED_POL",
+ "id": "52",
+ "start_step": 100,
+ "end_step": 100,
+ "targetNodeId": "8",
+ "initiator": "IER",
+ "type": "SERVICE",
+ "protocol": "UDP",
+ "state": "COMPROMISED",
+ "sourceNodeId": "NA",
+ "sourceNodeService": "NA",
+ "sourceNodeServiceState": "NA"
+ },
+ {
+ "item_type": "RED_POL",
+ "id": "53",
+ "start_step": 105,
+ "end_step": 105,
+ "targetNodeId": "8",
+ "initiator": "SERVICE",
+ "type": "FILE",
+ "protocol": "NA",
+ "state": "CORRUPT",
+ "sourceNodeId": "8",
+ "sourceNodeService": "UDP",
+ "sourceNodeServiceState": "COMPROMISED"
+ },
+ {
+ "item_type": "RED_POL",
+ "id": "54",
+ "start_step": 105,
+ "end_step": 105,
+ "targetNodeId": "8",
+ "initiator": "SERVICE",
+ "type": "SERVICE",
+ "protocol": "TCP_SQL",
+ "state": "COMPROMISED",
+ "sourceNodeId": "8",
+ "sourceNodeService": "UDP",
+ "sourceNodeServiceState": "COMPROMISED"
+ },
+ {
+ "item_type": "RED_POL",
+ "id": "55",
+ "start_step": 125,
+ "end_step": 125,
+ "targetNodeId": "7",
+ "initiator": "SERVICE",
+ "type": "SERVICE",
+ "protocol": "TCP",
+ "state": "OVERWHELMED",
+ "sourceNodeId": "8",
+ "sourceNodeService": "TCP_SQL",
+ "sourceNodeServiceState": "COMPROMISED"
+ }
+ ]
+}
diff --git a/pyproject.toml b/pyproject.toml
index 0733f285..c5d54185 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -55,8 +55,10 @@ dev = [
"build==0.10.0",
"flake8==6.0.0",
"furo==2023.3.27",
+ "gputil==1.4.0",
"pip-licenses==4.3.0",
"pre-commit==2.20.0",
+ "pylatex==1.4.1",
"pytest==7.2.0",
"pytest-xdist==3.3.1",
"pytest-cov==4.0.0",
diff --git a/src/primaite/__init__.py b/src/primaite/__init__.py
index c348681d..4d185391 100644
--- a/src/primaite/__init__.py
+++ b/src/primaite/__init__.py
@@ -152,4 +152,4 @@ def getLogger(name: str) -> Logger: # noqa
with open(Path(__file__).parent.resolve() / "VERSION", "r") as file:
- __version__ = file.readline()
+ __version__ = file.readline().strip()
diff --git a/src/primaite/config/training_config.py b/src/primaite/config/training_config.py
index 56402bfb..5e24837d 100644
--- a/src/primaite/config/training_config.py
+++ b/src/primaite/config/training_config.py
@@ -246,6 +246,7 @@ class TrainingConfig:
return data
def __str__(self) -> str:
+ obs_str = ",".join([c["name"] for c in self.observation_space["components"]])
tc = f"{self.agent_framework}, "
if self.agent_framework is AgentFramework.RLLIB:
tc += f"{self.deep_learning_framework}, "
@@ -253,7 +254,7 @@ class TrainingConfig:
if self.agent_identifier is AgentIdentifier.HARDCODED:
tc += f"{self.hard_coded_agent_view}, "
tc += f"{self.action_type}, "
- tc += f"observation_space={self.observation_space}, "
+ tc += f"observation_space={obs_str}, "
if self.session_type is SessionType.TRAIN:
tc += f"{self.num_train_episodes} episodes @ "
tc += f"{self.num_train_steps} steps"
diff --git a/src/primaite/data_viz/session_plots.py b/src/primaite/data_viz/session_plots.py
index 39c2b4cc..e82b619f 100644
--- a/src/primaite/data_viz/session_plots.py
+++ b/src/primaite/data_viz/session_plots.py
@@ -10,7 +10,7 @@ from plotly.graph_objs import Figure
from primaite import _PLATFORM_DIRS
-def _get_plotly_config() -> Dict:
+def get_plotly_config() -> Dict:
"""Get the plotly config from primaite_config.yaml."""
user_config_path = _PLATFORM_DIRS.user_config_path / "primaite_config.yaml"
with open(user_config_path, "r") as file:
@@ -41,7 +41,7 @@ def plot_av_reward_per_episode(
if subtitle:
title = subtitle
- config = _get_plotly_config()
+ config = get_plotly_config()
layout = go.Layout(
autosize=config["size"]["auto_size"],
width=config["size"]["width"],
diff --git a/src/primaite/nodes/node_state_instruction_red.py b/src/primaite/nodes/node_state_instruction_red.py
index 786e93ac..fd9a93a5 100644
--- a/src/primaite/nodes/node_state_instruction_red.py
+++ b/src/primaite/nodes/node_state_instruction_red.py
@@ -1,6 +1,5 @@
# Crown Owned Copyright (C) Dstl 2023. DEFCON 703. Shared in confidence.
"""Defines node behaviour for Green PoL."""
-from dataclasses import dataclass
from typing import TYPE_CHECKING, Union
from primaite.common.enums import NodePOLType
@@ -9,8 +8,7 @@ if TYPE_CHECKING:
from primaite.common.enums import FileSystemState, HardwareState, NodePOLInitiator, SoftwareState
-@dataclass()
-class NodeStateInstructionRed(object):
+class NodeStateInstructionRed:
"""The Node State Instruction class."""
def __init__(
diff --git a/src/primaite/pol/red_agent_pol.py b/src/primaite/pol/red_agent_pol.py
index ad55fa24..89aa3303 100644
--- a/src/primaite/pol/red_agent_pol.py
+++ b/src/primaite/pol/red_agent_pol.py
@@ -250,6 +250,11 @@ def apply_red_agent_node_pol(
# continue --------------------------
target_node: NodeUnion = nodes[target_node_id]
+ # check if the initiator type is a str, and if so, cast it as
+ # NodePOLInitiator
+ if isinstance(initiator, str):
+ initiator = NodePOLInitiator[initiator]
+
# Based the action taken on the initiator type
if initiator == NodePOLInitiator.DIRECT:
# No conditions required, just apply the change
diff --git a/src/primaite/primaite_session.py b/src/primaite/primaite_session.py
index ab3c2150..e6c0a85a 100644
--- a/src/primaite/primaite_session.py
+++ b/src/primaite/primaite_session.py
@@ -2,8 +2,9 @@
"""Main entry point to PrimAITE. Configure training/evaluation experiments and input/output."""
from __future__ import annotations
+import json
from pathlib import Path
-from typing import Any, Dict, Final, Optional, Union
+from typing import Any, Dict, Final, Optional, Tuple, Union
from primaite import getLogger
from primaite.agents.agent_abc import AgentSessionABC
@@ -16,6 +17,7 @@ from primaite.common.enums import ActionType, AgentFramework, AgentIdentifier, S
from primaite.config import lay_down_config, training_config
from primaite.config.training_config import TrainingConfig
from primaite.utils.session_metadata_parser import parse_session_metadata
+from primaite.utils.session_output_reader import all_transactions_dict, av_rewards_dict
_LOGGER = getLogger(__name__)
@@ -186,3 +188,28 @@ class PrimaiteSession:
def close(self) -> None:
"""Closes the agent."""
self._agent_session.close()
+
+ def learn_av_reward_per_episode_dict(self) -> Dict[int, float]:
+ """Get the learn av reward per episode from file."""
+ csv_file = f"average_reward_per_episode_{self.timestamp_str}.csv"
+ return av_rewards_dict(self.learning_path / csv_file)
+
+ def eval_av_reward_per_episode_dict(self) -> Dict[int, float]:
+ """Get the eval av reward per episode from file."""
+ csv_file = f"average_reward_per_episode_{self.timestamp_str}.csv"
+ return av_rewards_dict(self.evaluation_path / csv_file)
+
+ def learn_all_transactions_dict(self) -> Dict[Tuple[int, int], Dict[str, Any]]:
+ """Get the learn all transactions from file."""
+ csv_file = f"all_transactions_{self.timestamp_str}.csv"
+ return all_transactions_dict(self.learning_path / csv_file)
+
+ def eval_all_transactions_dict(self) -> Dict[Tuple[int, int], Dict[str, Any]]:
+ """Get the eval all transactions from file."""
+ csv_file = f"all_transactions_{self.timestamp_str}.csv"
+ return all_transactions_dict(self.evaluation_path / csv_file)
+
+ def metadata_file_as_dict(self) -> Dict[str, Any]:
+ """Read the session_metadata.json file and return as a dict."""
+ with open(self.session_path / "session_metadata.json", "r") as file:
+ return json.load(file)
diff --git a/src/primaite/utils/session_output_reader.py b/src/primaite/utils/session_output_reader.py
index 7089c69a..db761a34 100644
--- a/src/primaite/utils/session_output_reader.py
+++ b/src/primaite/utils/session_output_reader.py
@@ -18,7 +18,7 @@ def av_rewards_dict(av_rewards_csv_file: Union[str, Path]) -> Dict[int, float]:
"""
df_dict = pl.read_csv(av_rewards_csv_file).to_dict()
- return {v: df_dict["Average Reward"][i] for i, v in enumerate(df_dict["Episode"])}
+ return {int(v): df_dict["Average Reward"][i] for i, v in enumerate(df_dict["Episode"])}
def all_transactions_dict(all_transactions_csv_file: Union[str, Path]) -> Dict[Tuple[int, int], Dict[str, Any]]:
diff --git a/tests/conftest.py b/tests/conftest.py
index 9b0db139..9e448574 100644
--- a/tests/conftest.py
+++ b/tests/conftest.py
@@ -1,11 +1,10 @@
# Crown Owned Copyright (C) Dstl 2023. DEFCON 703. Shared in confidence.
import datetime
-import json
import shutil
import tempfile
from datetime import datetime
from pathlib import Path
-from typing import Any, Dict, Tuple, Union
+from typing import Union
from unittest.mock import patch
import pytest
@@ -13,7 +12,6 @@ import pytest
from primaite import getLogger
from primaite.environment.primaite_env import Primaite
from primaite.primaite_session import PrimaiteSession
-from primaite.utils.session_output_reader import all_transactions_dict, av_rewards_dict
from tests.mock_and_patch.get_session_path_mock import get_temp_session_path
ACTION_SPACE_NODE_VALUES = 1
@@ -37,31 +35,6 @@ class TempPrimaiteSession(PrimaiteSession):
super().__init__(training_config_path, lay_down_config_path)
self.setup()
- def learn_av_reward_per_episode_dict(self) -> Dict[int, float]:
- """Get the learn av reward per episode from file."""
- csv_file = f"average_reward_per_episode_{self.timestamp_str}.csv"
- return av_rewards_dict(self.learning_path / csv_file)
-
- def eval_av_reward_per_episode_dict(self) -> Dict[int, float]:
- """Get the eval av reward per episode from file."""
- csv_file = f"average_reward_per_episode_{self.timestamp_str}.csv"
- return av_rewards_dict(self.evaluation_path / csv_file)
-
- def learn_all_transactions_dict(self) -> Dict[Tuple[int, int], Dict[str, Any]]:
- """Get the learn all transactions from file."""
- csv_file = f"all_transactions_{self.timestamp_str}.csv"
- return all_transactions_dict(self.learning_path / csv_file)
-
- def eval_all_transactions_dict(self) -> Dict[Tuple[int, int], Dict[str, Any]]:
- """Get the eval all transactions from file."""
- csv_file = f"all_transactions_{self.timestamp_str}.csv"
- return all_transactions_dict(self.evaluation_path / csv_file)
-
- def metadata_file_as_dict(self) -> Dict[str, Any]:
- """Read the session_metadata.json file and return as a dict."""
- with open(self.session_path / "session_metadata.json", "r") as file:
- return json.load(file)
-
@property
def env(self) -> Primaite:
"""Direct access to the env for ease of testing."""